@charset "UTF-8";
:root{--paper:#efeee7;--ink:#1c211e;--muted:#6f7269;--orange:#f45125;--lime:#d5ff6b;--line:#cacbc1;--display:"Barlow Condensed","Impact","DIN Condensed",sans-serif;--body:"DM Sans","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;--card:#faf9f4;--ease:cubic-bezier(.2,.75,.25,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.8;-webkit-font-smoothing:antialiased;overflow-x:clip}body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:9;opacity:.055;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23000' filter='url(%23n)' opacity='.6' d='M0 0h160v160H0z'/%3E%3C/svg%3E")}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button{border:0}button:focus-visible,a:focus-visible,iframe:focus-visible{outline:3px solid var(--orange);outline-offset:6px}button:disabled{cursor:wait}button[hidden],[hidden]{display:none!important}::selection{background:var(--orange);color:#fff}h1,h2,h3,p{margin:0}svg{display:block}.section-shell{max-width:1440px;padding-inline:64px;margin-inline:auto}.skip-link{position:fixed;top:-100px;left:20px;background:var(--ink);color:var(--paper);padding:10px 20px;z-index:100}.skip-link:focus{top:10px}.scroll-progress{position:fixed;top:0;left:0;height:3px;width:100%;transform-origin:left;transform:scaleX(0);background:var(--orange);z-index:60}.site-header{height:98px;margin:0 40px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:11px;font-family:var(--display);font-size:42px;font-weight:800;line-height:1;letter-spacing:-1px}.brand svg{width:33px;height:33px;fill:var(--orange);stroke:var(--ink);stroke-width:1.8}.brand-dot{color:var(--orange)}nav{display:flex;gap:42px}nav a{font-size:13px;font-weight:700;letter-spacing:.08em;position:relative}nav a::after{content:"";position:absolute;bottom:-5px;left:0;width:100%;height:2px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .25s}nav a:hover::after{transform:scaleX(1)}nav a span{font-size:10px;vertical-align:super;margin-left:6px;color:var(--muted)}.header-tools{display:flex;gap:12px;align-items:center}.theme-toggle{font-size:11px;font-weight:700;letter-spacing:.04em;display:flex;gap:8px;align-items:center;background:none;border:1px solid var(--line);padding:8px 12px;border-radius:30px}.theme-icon{font-size:18px;line-height:1}.icon-button{background:none;padding:5px;font-size:15px;width:30px}.hero{padding-top:22px;position:relative}.hero-topline,.hero-bottom,.section-heading,.closing-top{display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.13em;font-weight:600}.hero-topline{color:var(--muted)}.hero-grid{display:grid;grid-template-columns:1.04fr 1fr;align-items:center;min-height:680px;gap:10px;padding:46px 0 35px}.eyebrow{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:700;letter-spacing:.09em}.mini-line{width:25px;height:2px;background:var(--orange)}.hello-jp{font-size:11px;letter-spacing:.03em;color:var(--muted);font-weight:500;margin-left:6px}h1{font-family:var(--display);font-size:clamp(92px,9.7vw,145px);font-weight:800;line-height:.84;letter-spacing:-.018em;margin:27px 0}.title-line{display:block;overflow:hidden;padding-block:4px;margin-block:-4px}.title-line>span{display:block;animation:title-in 1s var(--ease) both}.title-line:nth-child(2)>span{animation-delay:.11s}.title-line:nth-child(3)>span{animation-delay:.22s}.outlined{color:transparent;-webkit-text-stroke:1.8px var(--ink)}.title-dot{color:var(--orange);-webkit-text-stroke:0}.hero-description{font-size:14px;line-height:2.1;margin-top:27px}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:16px 23px;font-size:12px;font-weight:700;line-height:1.6;transition:background .25s,box-shadow .25s,transform .25s;min-height:52px}.button>span:last-child{font-size:20px;line-height:1}.button-dark{background:var(--ink);color:var(--paper)}.button-dark:hover{background:var(--orange);color:#151a17;box-shadow:4px 4px 0 var(--ink)}.button-orange{background:var(--orange);color:#161b17}.button-orange:hover{background:var(--lime);box-shadow:4px 4px 0 var(--orange)}.text-link{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600}.play-triangle{display:inline-block;width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:8px solid currentColor}.hero-art{height:570px;position:relative;isolation:isolate;min-width:0}.hero-orange-disc{position:absolute;width:440px;height:440px;border-radius:50%;background:var(--orange);top:54px;left:50%;transform:translateX(-50%) rotate(-12deg);display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-orange-disc>span{font-family:var(--display);font-weight:800;line-height:.8;font-size:165px;letter-spacing:-5px;color:#e14018;transform:translateY(-3px);text-align:center}.court-orbit{position:absolute;border:1px solid var(--line);border-radius:50%;top:29px;left:50%;width:490px;height:490px;transform:translateX(-50%)}.orbit-two{width:535px;height:535px;top:6px;border-style:dashed;animation:orbit 75s linear infinite}.court-coordinate{position:absolute;font-size:9px;font-weight:600;letter-spacing:.1em}.coordinate-top{left:9px;top:40px}.coordinate-bottom{right:-2px;bottom:50px}.hero-number{position:absolute;font-family:var(--display);font-size:150px;line-height:1;right:10px;top:16px;color:transparent;-webkit-text-stroke:1px var(--ink);transform:rotate(8deg);opacity:.65}.hero-shot{position:absolute;inset:0;background:none;z-index:3}.mascot{display:block;width:260px;aspect-ratio:260/280;background-image:url('./kai-sprites.png');background-repeat:no-repeat;background-size:336.5385% 210%;mix-blend-mode:multiply;pointer-events:none;--sprite-x:4.878%;--sprite-y:5.195%;background-position:var(--sprite-x) var(--sprite-y)}.mascot[data-pose="ready"]{--sprite-x:49.919%;--sprite-y:5.195%}.mascot[data-pose="shoot"]{--sprite-x:96.91%;--sprite-y:5.195%}.mascot[data-pose="cheer"]{--sprite-x:4.878%;--sprite-y:94.805%}.mascot[data-pose="shy"]{--sprite-x:49.919%;--sprite-y:94.805%}.mascot[data-pose="run"]{--sprite-x:96.91%;--sprite-y:94.805%}.hero-mascot{position:absolute;width:400px;top:90px;left:50%;transform:translateX(-50%) rotate(-6deg);filter:drop-shadow(14px 17px 0 #70200a22);animation:hero-bob 4s ease-in-out infinite;transform-origin:center bottom}.basketball{display:block;background:radial-gradient(circle at 34% 26%,#ff9c41 0,#f87824 35%,#bc3b0d 100%);border:2px solid #29251d;border-radius:50%;overflow:hidden;width:62px;height:62px;position:relative;box-shadow:inset -5px -5px 7px #65270930;transform:rotate(-20deg)}.basketball::before,.basketball::after{content:"";position:absolute;background:#29251d;left:50%;top:0;height:100%;width:2px}.basketball::after{transform:rotate(90deg)}.basketball i,.basketball b{position:absolute;top:-3%;height:106%;width:82%;border-radius:50%;border:2px solid #29251d;left:-42%;display:block}.basketball b{left:58%}#hero-ball{position:absolute;top:331px;left:75%;width:72px;height:72px;animation:dribble 1s cubic-bezier(.4,0,.75,.35) infinite;box-shadow:2px 10px 10px #80301422}.backboard{position:absolute;right:24px;top:65px;width:80px;height:58px;border:3px solid var(--ink);transform:rotate(9deg);background:#ffffff40;z-index:4}.backboard>span{position:absolute;width:32px;height:25px;border:2px solid var(--ink);bottom:3px;left:21px}.backboard>i{position:absolute;width:44px;height:12px;border:3px solid #d5ff6b;border-radius:50%;bottom:-4px;left:15px}.backboard>i::after{content:"";display:block;width:31px;height:28px;border:1px solid var(--ink);border-top:0;clip-path:polygon(0 0,100% 0,80% 100%,20% 100%);background:repeating-linear-gradient(60deg,transparent 0 8px,#1c211e80 8px 9px),repeating-linear-gradient(-60deg,transparent 0 8px,#1c211e80 8px 9px);margin:6px auto}.name-sticker{position:absolute;z-index:4;bottom:62px;left:0;width:153px;border:2px solid var(--ink);background:var(--card);transform:rotate(-10deg);text-align:center;box-shadow:4px 4px 0 #1c211e;pointer-events:none}.name-sticker>span{display:block;background:var(--orange);font-size:9px;font-weight:700;letter-spacing:.05em;padding:3px}.name-sticker strong{display:block;font-size:43px;line-height:1.5;letter-spacing:.05em}.name-sticker small{display:block;font-size:7px;letter-spacing:.05em;padding-bottom:6px}.shot-sticker{position:absolute;z-index:4;bottom:19px;left:39%;transform:rotate(-8deg);font-family:var(--display);font-size:19px;font-weight:700;pointer-events:none}.hand-arrow{position:absolute;left:16px;top:-38px;font-size:43px;transform:rotate(100deg)}.shot-count{position:absolute;right:3px;bottom:92px;border:1px solid var(--ink);border-radius:50%;width:90px;height:90px;background:var(--lime);color:#1c211e;display:flex;align-items:center;justify-content:center;flex-direction:column;transform:rotate(12deg);z-index:4;pointer-events:none;line-height:1}.shot-count span{font-size:8px;letter-spacing:.08em;font-weight:700}.shot-count strong{font:700 45px/1 var(--display)}.hero-art-caption{position:absolute;bottom:-15px;right:35px;font-size:9px;letter-spacing:.13em;color:var(--muted)}.hero-bottom{padding:23px 0 27px;border-top:1px solid var(--line);letter-spacing:.09em}.hero-bottom a{display:flex;gap:12px;align-items:center}.scroll-arrow{font-size:23px;animation:nudge 1.8s ease-in-out infinite}.hero-bottom>span:nth-child(2){font-size:12px;display:flex;align-items:center;gap:15px}.small-star{color:var(--orange);font-size:27px}.sound-note{font-size:9px;color:var(--muted)}.marquee{background:var(--orange);color:#18201a;overflow:hidden;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:14px 0;transform:rotate(-1.4deg);width:calc(100% + 10px);margin-left:-5px}.marquee-track{display:flex;width:max-content;animation:marquee 30s linear infinite;font:700 37px/1.15 var(--display);letter-spacing:.02em}.marquee-track>span{white-space:nowrap}.marquee i{font-style:normal;display:inline-block;margin:0 25px;font-size:33px}.about{padding-top:108px;padding-bottom:76px}.section-index{font-size:11px;font-weight:700;letter-spacing:.13em}.section-aside{font-size:12px;font-weight:400;letter-spacing:.04em;color:var(--muted)}.section-heading{border-bottom:1px solid var(--line);padding-bottom:18px}.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px;align-items:center;padding-top:72px}.player-card-wrap{position:relative;padding:0 26px 0 12px;max-width:432px;justify-self:center;width:100%}.card-tape{position:absolute;z-index:2;left:37%;top:-14px;width:95px;height:33px;transform:rotate(-9deg);background:#d5ff6bc9;backdrop-filter:blur(2px);pointer-events:none}.player-card{width:100%;height:493px;background:transparent;padding:0;perspective:1200px;transform:rotate(-5deg);transition:transform .3s var(--ease);text-align:left;display:block}.player-card-inner{position:relative;width:100%;height:100%;display:block;transform-style:preserve-3d;transition:transform .75s var(--ease)}.player-card.is-flipped .player-card-inner{transform:rotateY(180deg)}.card-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:flex;flex-direction:column;border:2px solid #1c211e;background:#f9f8f1;box-shadow:9px 9px 0 #1c211e;color:#1c211e;padding:18px}.card-top{display:flex;justify-content:space-between;font-size:10px;font-weight:700;letter-spacing:.08em;border-bottom:1px solid #1c211e;padding-bottom:10px}.card-top>span:last-child{color:var(--orange);font-size:16px;line-height:1.1}.card-portrait{height:315px;display:block;position:relative;overflow:hidden;background:var(--orange);margin-top:14px;background-image:linear-gradient(#1c211e10 1px,transparent 1px),linear-gradient(90deg,#1c211e10 1px,transparent 1px);background-size:25px 25px}.card-watermark{position:absolute;inset:-4px 0 0;font:800 186px/.98 var(--display);text-align:center;color:#cd3a17;letter-spacing:-4px}.card-portrait .mascot{position:absolute;width:280px;left:50%;bottom:-3px;transform:translateX(-50%)}.card-edition{font:600 10px/1.3 var(--body);position:absolute;left:12px;bottom:12px;letter-spacing:.06em}.card-name{display:flex;justify-content:space-between;align-items:center;margin-top:9px}.card-name strong{font:700 55px/1.1 var(--display)}.card-name strong span{font:500 16px/1 var(--body);margin-left:12px}.card-name>b{font:700 42px/1 var(--display);color:var(--orange)}.card-bottom{display:flex;justify-content:space-between;font-size:8px;font-weight:700;letter-spacing:.06em;border-top:1px solid #1c211e;padding-top:9px;margin-top:auto}.card-back{transform:rotateY(180deg);align-items:center;text-align:center;background:#d5ff6b}.card-back .card-top,.card-back .card-bottom{width:100%}.card-back>.mascot{width:195px;margin-top:4px;flex-shrink:0}.card-back>strong{font-size:20px;line-height:1.7;margin-top:8px}.card-back-copy{font-size:12px;line-height:1.9;margin:10px 0}.card-tip{font-size:11px;color:var(--muted);text-align:center;margin-top:27px;transform:rotate(-4deg)}.card-tip span{font-size:24px;margin-right:8px}.about-copy .eyebrow{color:var(--orange);font-size:11px}.about-copy h2{font-size:clamp(30px,3.1vw,42px);letter-spacing:-.055em;line-height:1.6;margin:13px 0 25px;font-weight:800}.about-copy h2>span{color:var(--orange)}.about-copy p{font-size:14px;line-height:2.15;margin-bottom:19px}.personality-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}.personality-tags>span{border:1px solid var(--line);font-size:10px;padding:5px 9px}.player-stats{display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:10px;border-top:1px solid var(--line);padding-top:25px;margin-top:31px}.player-stats>div{display:flex;flex-direction:column}.player-stats>div>span{font-size:9px;letter-spacing:.08em;font-weight:600}.player-stats strong{font:700 59px/1.25 var(--display)}.player-stats strong span{font-size:26px}.player-stats small{font-size:9px;color:var(--muted)}.playbook{padding-top:50px;padding-bottom:100px}.playbook-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:29px}.playbook-heading h2{font:700 45px/1.2 var(--display);margin-top:10px}.playbook-heading h2 span{color:var(--orange)}.playbook-heading>p{font-size:12px;color:var(--muted);margin-bottom:5px}.playbook-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}.playbook-card{padding:25px 26px 0;overflow:hidden;position:relative;transition:background .3s}.playbook-card:hover{background:var(--card)}.playbook-card+.playbook-card{border-left:1px solid var(--line)}.playbook-no{font-size:9px;letter-spacing:.1em;font-weight:600}.mascot-button{display:block;position:relative;background:none;padding:0}.playbook-card .mascot-button{width:100%;height:212px;margin:5px 0 10px}.playbook-card .mascot{width:196px;position:absolute;left:50%;bottom:0;transform:translateX(-50%);transition:transform .3s}.mascot-button:hover .mascot{transform:translateX(-50%) rotate(-6deg) translateY(-9px)}.touch-hint{position:absolute;right:-9px;top:28px;font:600 12px var(--display);transform:rotate(9deg);color:var(--muted)}.playbook-card h3{font-size:21px;letter-spacing:-.04em;margin-bottom:11px}.playbook-card p{font-size:12px;color:var(--muted);line-height:2}.playbook-word{display:block;font:800 55px/1 var(--display);white-space:nowrap;color:transparent;-webkit-text-stroke:1px var(--line);margin-top:25px;transform:translateY(7px);letter-spacing:-.015em}.running-court{position:relative;overflow:hidden;background:var(--lime);color:#1c211e;height:156px;border-top:1px solid #1c211e;border-bottom:1px solid #1c211e}.running-text{position:absolute;font:800 123px/1 var(--display);letter-spacing:-.02em;white-space:nowrap;top:6px;left:50%;transform:translateX(-50%);opacity:.12}.court-runner{position:absolute;left:0;top:-1px;width:147px;will-change:transform}.court-runner .mascot{width:147px;animation:running .3s ease-in-out infinite alternate}.speed-lines{position:absolute;right:75%;top:36%;width:47px;height:26px;border-top:2px solid #1c211e;border-bottom:2px solid #1c211e;opacity:.5;transform:rotate(-8deg)}.running-line{height:1px;background:#1c211e50;position:absolute;left:0;right:0;bottom:11px}.run-caption{position:absolute;right:30px;bottom:18px;font-size:9px;font-weight:700;letter-spacing:.12em}.game-section{background:#1b2420;color:#efeee7;padding-top:86px;padding-bottom:83px;position:relative;overflow:hidden}.game-section .section-heading{border-color:#ffffff25}.live-label{font-size:9px;letter-spacing:.08em;display:flex;align-items:center;gap:7px}.live-label>span{width:6px;height:6px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 4px #d5ff6b10}.game-heading{display:flex;justify-content:space-between;align-items:center;padding:41px 0 36px}.game-heading>div:first-child{display:flex;align-items:flex-end;gap:46px}.game-heading h2{font:700 76px/.98 var(--display);letter-spacing:-.01em;white-space:nowrap}.game-heading h2 span{color:var(--lime)}.game-heading p{font-size:12px;line-height:2.2;margin-bottom:5px;color:#c0c6bb}.game-heading-sticker{background:var(--orange);color:#171e18;display:flex;flex-direction:column;align-items:center;justify-content:center;width:114px;height:114px;border-radius:50%;transform:rotate(12deg);line-height:1.2;flex-shrink:0}.game-heading-sticker>span{font:700 33px var(--display)}.game-heading-sticker>strong{font:700 20px var(--display)}.game-heading-sticker>small{font-size:8px;margin-top:4px}.game-frame{border:1px solid #657063;background:#15201a;position:relative}.game-toolbar{height:47px;border-bottom:1px solid #657063;display:flex;justify-content:space-between;align-items:center;padding:0 18px;font-size:10px;font-weight:600;letter-spacing:.07em;background:#1b2420}.game-toolbar>span{display:flex;align-items:center;gap:9px}.game-toolbar i{width:7px;height:7px;background:var(--orange);border-radius:50%}.game-toolbar small{font-size:8px;font-weight:400;margin-left:8px;color:#a3ae9f}.game-toolbar>div{display:flex;gap:15px}.game-toolbar button{background:none;color:#efeee7;padding:5px;font-size:11px}.game-stage{height:570px;position:relative}.game-cover{position:absolute;inset:0;overflow:hidden;background:radial-gradient(ellipse at 68% 40%,#314136 0,transparent 60%),#202d24}.court-lines{position:absolute;inset:30px;border:2px solid #afbea720;transform:perspective(900px) rotateX(20deg) rotateZ(-17deg) scale(1.2)}.court-center{position:absolute;border:2px solid #afbea722;left:15%;width:330px;height:330px;border-radius:50%;top:50%;transform:translateY(-50%)}.court-center::after{content:"";position:absolute;height:700px;width:2px;top:-200px;left:50%;background:#afbea722}.court-key{position:absolute;right:0;width:200px;height:220px;top:50%;transform:translateY(-50%);border:2px solid #afbea722}.court-key::after{content:"";width:100px;height:220px;border:2px solid #afbea722;position:absolute;right:200px;top:-2px;border-radius:100% 0 0 100%}.cover-caption{position:absolute;left:30px;top:23px;font-size:9px;letter-spacing:.12em;color:#b4c1ae}.cover-content{position:absolute;left:10%;top:91px;z-index:2}.cover-kicker{font-size:10px;letter-spacing:.15em;color:#d5ff6b}.cover-content h3{font:800 127px/.81 var(--display);letter-spacing:-.01em;margin:20px 0 25px}.cover-content h3>span{color:var(--orange)}.cover-content>p{font-size:9px;margin-top:12px;color:#aebda8}.cover-mascot{position:absolute;width:380px;right:8%;bottom:35px;mix-blend-mode:normal;filter:drop-shadow(14px 22px 10px #0003);animation:float-shooter 4.2s ease-in-out infinite;background-color:#f8f9fa;border-radius:48%;border:10px solid #f8f9fa;transform:rotate(9deg)}.cover-bottom{position:absolute;right:29px;bottom:18px;font-size:9px;letter-spacing:.12em;color:#9faf98}iframe{width:100%;height:100%;border:0;display:block;background:#0b0d12}.game-statusbar{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;font-size:9px;letter-spacing:.05em;border-top:1px solid #657063;background:#1b2420;gap:15px}.game-statusbar>span{color:#a8b69f}.game-statusbar a{text-decoration:underline;text-underline-offset:3px;white-space:nowrap}.game-instructions{display:flex;justify-content:space-between;gap:30px;padding-top:27px}.instruction-label{font-size:10px;font-weight:600;letter-spacing:.09em}.game-instructions p{display:flex;align-items:center;flex-wrap:wrap;gap:4px;font-size:10px;margin-top:10px}.game-instructions p>span{margin:0 10px 0 4px}kbd{font:500 10px var(--body);border:1px solid #657063;min-width:21px;padding:3px 5px;text-align:center;border-radius:3px;line-height:1.3}.game-instructions small{font-size:10px;color:#a8b69f;display:block;margin-top:10px}.game-modes{display:flex;flex-direction:column;justify-content:center;gap:4px;min-width:185px}.game-modes>span{font-size:10px;color:var(--orange);letter-spacing:.05em}.game-modes b{margin-left:15px;font-size:10px;font-weight:400;color:#d3dbce}.game-frame.is-expanded{position:fixed;inset:20px;z-index:80;display:flex;flex-direction:column;max-width:none;box-shadow:0 0 0 40px #071008e8}.game-frame.is-expanded .game-stage{flex:1;min-height:0;height:auto}.game-frame.is-expanded .game-toolbar{flex-shrink:0}.game-frame.is-expanded .game-statusbar{flex-shrink:0}.closing{padding-top:57px;background:var(--orange);color:#181f19;max-width:none;padding-inline:max(64px,calc((100vw - 1312px)/2))}.closing-top{border-bottom:1px solid #181f1940;padding-bottom:20px;font-size:9px}.closing-main{display:grid;grid-template-columns:1.4fr 1fr;align-items:center;padding:57px 0 53px}.closing h2{font:800 clamp(60px,6.6vw,93px)/.94 var(--display);letter-spacing:-.02em}.closing h2 span{color:var(--lime)}.closing p{font-size:13px;line-height:2;margin:24px 0}.closing .button-dark{background:#1b2420;color:#efeee7}.closing .button-dark:hover{background:var(--lime);color:#1b2420;box-shadow:4px 4px 0 #1b2420}.closing-mascot{justify-self:center;align-self:stretch;width:310px;position:relative}.closing-mascot .mascot{width:310px;position:absolute;left:50%;top:0;transform:translateX(-50%) rotate(8deg);animation:high-five 3.4s ease-in-out infinite}.closing-bubble{position:absolute;top:-7px;right:-30px;background:var(--lime);border:1px solid #1b2420;box-shadow:4px 4px 0 #1b2420;padding:13px 20px;font:700 24px/.95 var(--display);transform:rotate(9deg)}footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #181f1940;padding:19px 0;gap:15px}footer>span{font-size:9px;letter-spacing:.08em}.footer-brand{font:800 40px/1 var(--display)}.back-top{font-size:10px;font-weight:700;letter-spacing:.08em}.toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%,30px) rotate(-2deg);background:var(--lime);color:#171e18;border:2px solid #171e18;padding:15px 28px;font-size:14px;font-weight:700;box-shadow:5px 5px 0 #171e18;z-index:100;opacity:0;pointer-events:none;transition:opacity .3s,transform .3s;max-width:calc(100% - 50px);text-align:center}.toast.is-visible{opacity:1;transform:translate(-50%,0) rotate(-2deg)}#confetti-canvas{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:99}.secret-ball{position:fixed;bottom:20px;right:22px;padding:0;background:none;z-index:20;opacity:0;transform:translateY(90px);transition:transform .4s,opacity .4s}.secret-ball.is-visible{opacity:1;transform:none}.secret-ball>.basketball{width:43px;height:43px;transition:transform .3s;box-shadow:0 3px 10px #0003}.secret-ball:hover>.basketball{transform:rotate(45deg) scale(1.15)}.entrance{animation:fade-up .85s .35s var(--ease) both}.hero-art.entrance{animation-delay:.15s}.js-ready .reveal{opacity:0;transform:translateY(30px);transition:opacity .75s var(--ease),transform .75s var(--ease)}.js-ready .reveal.is-visible{opacity:1;transform:translateY(0)}.playbook-card:nth-child(2){transition-delay:.1s}.playbook-card:nth-child(3){transition-delay:.2s}#hero-scene[data-shooting="true"] #hero-ball{animation:shoot-ball 1.5s var(--ease) both}#hero-scene[data-shooting="true"] .hero-mascot{animation:shoot-jump 1.5s var(--ease) both}#hero-scene[data-shooting="true"] .backboard{animation:hoop-shake 1.5s ease-out both}.buzzer-mode .hero-orange-disc{background:var(--lime)}.buzzer-mode .shot-count{background:var(--orange)}
@keyframes title-in{from{transform:translateY(110%) rotate(3deg)}to{transform:translateY(0) rotate(0)}}@keyframes fade-up{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:none}}@keyframes orbit{to{transform:translateX(-50%) rotate(360deg)}}@keyframes hero-bob{0%,100%{transform:translateX(-50%) rotate(-6deg) translateY(0)}50%{transform:translateX(-50%) rotate(-3deg) translateY(-12px)}}@keyframes dribble{0%,100%{transform:translateY(-17px) rotate(-20deg) scaleY(1)}48%{transform:translateY(69px) rotate(30deg) scaleY(1)}54%{transform:translateY(72px) rotate(35deg) scaleY(.86)}}@keyframes nudge{50%{transform:translateY(5px)}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes running{from{transform:translateY(0) rotate(-2deg)}to{transform:translateY(-7px) rotate(3deg)}}@keyframes float-shooter{50%{transform:translateY(-15px) rotate(5deg)}}@keyframes high-five{0%,100%{transform:translateX(-50%) rotate(8deg)}50%{transform:translateX(-50%) rotate(-3deg) translateY(-10px)}}@keyframes shoot-ball{0%{top:331px;left:75%;transform:scale(1)}24%{top:153px;left:51%;transform:scale(.9)}55%{top:-29px;left:72%;transform:scale(.65) rotate(240deg)}78%{top:108px;left:85%;transform:scale(.46) rotate(360deg);opacity:1}89%,100%{top:220px;left:87%;transform:scale(.35) rotate(440deg);opacity:0}}@keyframes shoot-jump{0%,100%{transform:translateX(-50%) rotate(-6deg)}35%,60%{transform:translateX(-50%) translateY(-38px) rotate(4deg)}}@keyframes hoop-shake{0%,78%,100%{transform:rotate(9deg)}82%{transform:rotate(18deg)}86%{transform:rotate(4deg)}90%{transform:rotate(13deg)}}
html[data-theme="night"]{--paper:#18231e;--ink:#eeeee6;--muted:#a7b3a4;--line:#415046;--card:#26392c}html[data-theme="night"] .hero-orange-disc{box-shadow:0 0 100px #f4512520}html[data-theme="night"] .hero-mascot,html[data-theme="night"] .playbook-card .mascot{mix-blend-mode:normal;border-radius:45%;background-color:#f8f9fa}html[data-theme="night"] .name-sticker{color:#1c211e;background:#efeee7}html[data-theme="night"] .closing{--ink:#1c211e;--muted:#35412e}html[data-theme="night"] .hero-orange-disc>span{color:#ca3817}html[data-theme="night"] .brand svg{stroke:#1c211e}html[data-theme="night"] .hero-number{-webkit-text-stroke-color:#efeee7}
html[data-motion="off"]{scroll-behavior:auto}html[data-motion="off"] *,html[data-motion="off"] *::before,html[data-motion="off"] *::after{animation:none!important;transition:none!important}html[data-motion="off"] .js-ready .reveal,html[data-motion="off"] .reveal{opacity:1;transform:none}html[data-motion="off"] .court-runner{transform:translateX(40vw)!important}
@media(min-width:1450px){.site-header{max-width:1360px;margin:auto}.hero-grid{min-height:750px}.hero-art{transform:scale(1.04)}h1{font-size:150px}}
@media(max-width:1100px){.section-shell{padding-inline:38px}.site-header{margin-inline:26px}.hero-grid{min-height:640px;grid-template-columns:1fr 1fr}.hero-art{height:520px;transform:scale(.88);transform-origin:center right}.hero-orange-disc{width:405px;height:405px}.court-orbit{width:450px;height:450px}.orbit-two{width:490px;height:490px}.hero-mascot{width:355px;top:98px}.hero-actions{gap:18px;flex-wrap:wrap}.hero-description{font-size:12px}.about-grid{gap:50px}.player-card{height:456px}.card-portrait{height:278px}.card-portrait .mascot{width:260px}.card-watermark{font-size:158px}.about-copy p{font-size:12px}.about-copy h2{font-size:32px}.player-card-wrap{padding-right:17px}.playbook-card{padding:20px 20px 0}.playbook-word{font-size:44px}.playbook-card p{font-size:11px}.game-heading>div:first-child{gap:25px}.game-heading h2{font-size:67px}.game-heading p{font-size:11px}.game-stage{height:530px}.cover-mascot{width:340px;right:5%}.closing{padding-inline:38px}.closing-mascot{width:270px}.closing-mascot .mascot{width:270px}}
@media(max-width:800px){.section-shell{padding-inline:25px}.site-header{height:77px;margin-inline:20px;gap:15px}.brand{font-size:35px}.brand svg{width:28px;height:28px}nav{gap:18px}nav a{font-size:10px}nav a span{display:none}.theme-toggle{font-size:9px;padding:6px 9px}.header-tools{gap:6px}.hero-topline{font-size:8px}.hero-topline>span:last-child{display:none}.hero-grid{grid-template-columns:1fr;gap:10px;padding-top:40px;min-height:0}.hero-copy{position:relative;z-index:2}h1{font-size:clamp(95px,17vw,137px);line-height:.87;letter-spacing:-.02em;margin:24px 0}.hero-description{font-size:13px}.hero-actions{margin-top:23px}.hero-art{height:545px;width:100%;max-width:545px;justify-self:center;transform:none;margin-top:-10px}.hero-orange-disc{width:405px;height:405px;top:66px}.court-orbit{width:447px;height:447px;top:43px}.orbit-two{width:490px;height:490px;top:21px}.hero-mascot{width:370px;top:93px}.hero-number{right:25px;top:33px}.hero-art-caption{bottom:0}.name-sticker{left:18px;bottom:59px}.shot-count{right:25px;bottom:94px}.coordinate-top{left:20px;top:42px}.coordinate-bottom{right:11px;bottom:40px}.hero-bottom{font-size:8px}.hero-bottom .sound-note{display:none}.hero-bottom>span:nth-child(2){font-size:10px}.marquee-track{font-size:30px}.about{padding-top:74px;padding-bottom:40px}.about-grid{grid-template-columns:1fr;gap:65px;padding-top:57px}.player-card-wrap{max-width:370px}.player-card{height:468px}.card-portrait{height:290px}.card-portrait .mascot{width:274px}.about-copy{max-width:510px;margin:auto;width:100%}.about-copy h2{font-size:35px;line-height:1.6}.about-copy p{font-size:14px}.player-stats small{font-size:10px}.personality-tags>span{font-size:11px}.playbook{padding-bottom:60px}.playbook-heading{display:block}.playbook-heading h2{font-size:39px}.playbook-heading>p{margin-top:10px}.playbook-grid{grid-template-columns:1fr}.playbook-card{padding:25px 25px 17px;min-height:274px}.playbook-card+.playbook-card{border-left:0;border-top:1px solid var(--line)}.playbook-card .mascot-button{position:absolute;width:43%;right:0;top:15px;height:210px}.playbook-card .mascot{width:172px}.touch-hint{right:12px;top:0;font-size:10px}.playbook-card h3{margin-top:52px;font-size:20px;position:relative;width:60%;pointer-events:none}.playbook-card p{font-size:12px;position:relative;width:62%;pointer-events:none}.playbook-word{font-size:42px;margin-top:32px;transform:none}.playbook-no{font-size:10px}.running-court{height:133px}.running-text{font-size:105px;top:7px}.court-runner{width:125px;top:-2px}.court-runner .mascot{width:125px}.game-section{padding-top:57px;padding-bottom:52px}.game-heading{padding-top:30px}.game-heading>div:first-child{display:block}.game-heading h2{font-size:62px}.game-heading p{font-size:12px;margin-top:19px}.game-heading-sticker{width:95px;height:95px;align-self:flex-start;margin-top:10px}.game-heading-sticker>span{font-size:27px}.game-heading-sticker>strong{font-size:17px}.game-toolbar{padding-inline:13px}.game-toolbar small{display:none}.game-stage{height:590px}.cover-content{left:8%;top:70px}.cover-content h3{font-size:110px}.cover-mascot{width:240px;right:-28px;bottom:84px;transform:rotate(9deg)}.cover-content .button{position:relative;margin-top:100px;min-width:205px}.cover-caption{font-size:8px;left:18px}.cover-bottom{right:15px;font-size:8px}.game-instructions{flex-direction:column;gap:23px}.game-modes{flex-direction:row;justify-content:flex-start;flex-wrap:wrap;gap:12px}.game-modes b{margin-left:5px;font-size:9px}.game-statusbar{font-size:8px;padding:9px 12px}.game-statusbar>span{max-width:62%}.closing{padding-inline:25px;padding-top:38px}.closing-top>span:last-child{display:none}.closing-main{grid-template-columns:1fr;padding:35px 0 30px}.closing h2{font-size:70px}.closing-mascot{height:285px;width:260px;margin-top:40px}.closing-mascot .mascot{width:260px}.closing-bubble{right:-15px}.closing p{font-size:13px}.closing .button{font-size:13px}.footer-brand{font-size:32px}footer>span{font-size:8px}.back-top{font-size:9px}.game-frame.is-expanded{inset:8px}.toast{font-size:12px;min-width:245px;padding:13px 18px}}
@media(max-width:430px){.section-shell{padding-inline:20px}.site-header{margin-inline:17px}.brand{gap:6px}.brand svg{width:24px;height:24px}nav{gap:12px}nav a{font-size:9px;letter-spacing:.02em}.theme-toggle{width:29px;height:29px;padding:5px;border-radius:50%;justify-content:center}.theme-toggle #theme-label{display:none}.icon-button{width:23px;font-size:13px}.hero-topline{font-size:7px}.eyebrow{font-size:10px;gap:7px}.hello-jp{font-size:9px;margin-left:0}h1{font-size:28vw}.hero-actions{gap:14px}.button{padding:14px 17px;font-size:11px;gap:13px}.text-link{font-size:10px}.hero-description{font-size:12px}.hero-art{height:463px;width:calc(100% + 10px);margin-left:-5px}.hero-orange-disc{width:315px;height:315px;top:69px}.hero-orange-disc>span{font-size:125px}.court-orbit{width:350px;height:350px;top:51px}.orbit-two{width:386px;height:386px;top:33px}.hero-mascot{width:302px;top:91px}.hero-number{font-size:116px;right:8px;top:47px}.name-sticker{width:128px;left:8px;bottom:37px}.name-sticker strong{font-size:34px}.name-sticker>span{font-size:7px}.name-sticker small{font-size:6px}.shot-count{width:70px;height:70px;right:0;bottom:71px}.shot-count strong{font-size:36px}.shot-count span{font-size:7px}.shot-sticker{bottom:12px;font-size:16px;left:44%}.coordinate-top{left:2px;top:45px;font-size:7px}.coordinate-bottom{bottom:27px;right:0;font-size:7px}.hero-art-caption{font-size:7px;right:18px;bottom:-19px}.backboard{right:0;top:76px;width:61px;height:49px}.backboard>span{left:13px;width:29px;height:23px}.backboard>i{left:6px}#hero-ball{width:57px;height:57px;top:269px;left:73%}.hero-bottom{margin-top:10px}.hero-bottom>span:nth-child(2){font-size:9px}.marquee-track{font-size:27px}.about-copy h2{font-size:31px}.about-copy p{font-size:12px}.player-stats{gap:5px}.player-stats strong{font-size:53px}.player-stats small{font-size:8px}.personality-tags>span{font-size:9px}.playbook-heading h2{font-size:34px}.playbook-card{padding-inline:19px}.playbook-card h3{font-size:18px}.playbook-card p{font-size:10px}.playbook-card .mascot{width:158px}.playbook-card .mascot-button{width:40%;top:22px}.playbook-word{font-size:39px}.game-heading h2{font-size:56px}.game-heading-sticker{width:77px;height:77px}.game-heading-sticker>span{font-size:24px}.game-heading-sticker>strong{font-size:14px}.game-heading-sticker>small{font-size:6px}.game-stage{height:600px}.cover-mascot{width:218px;right:-25px;bottom:89px}.cover-content h3{font-size:100px}.cover-content .button{margin-top:115px}.game-toolbar{font-size:9px}.game-toolbar button{font-size:10px}.closing h2{font-size:61px}.closing{padding-inline:20px}.closing-top{font-size:9px}.closing p{font-size:12px}.secret-ball{right:14px;bottom:15px}.secret-ball>.basketball{width:36px;height:36px}@keyframes shoot-ball{0%{top:269px;left:73%;transform:scale(1)}24%{top:126px;left:49%;transform:scale(.9)}55%{top:1px;left:69%;transform:scale(.65) rotate(240deg)}78%{top:120px;left:87%;transform:scale(.46) rotate(360deg);opacity:1}89%,100%{top:211px;left:87%;transform:scale(.35) rotate(440deg);opacity:0}}}
html{overflow-x:clip}.hero{overflow:clip}.hero-copy{min-width:0}
.mascot{background-image:url('./kai-sprites.png');mix-blend-mode:normal}
.cover-mascot{background-color:transparent;border:0;border-radius:0}
html[data-theme="night"] .hero-mascot,html[data-theme="night"] .playbook-card .mascot{border-radius:0;background-color:transparent}
.js-ready .game-frame.reveal.is-visible{transform:none}
.hero-loop{display:block;position:absolute;left:50%;top:54px;transform:translateX(-50%);width:440px;height:440px;border-radius:50%;object-fit:cover;opacity:0;transition:opacity .3s}
.video-ready .hero-loop{opacity:1}.video-ready .hero-mascot{visibility:hidden}.hero-run.fast-break .hero-loop{box-shadow:0 0 0 4px var(--lime)}
@media(max-width:1100px){.hero-loop{width:405px;height:405px}}
@media(max-width:800px){.hero-loop{top:66px}}
@media(max-width:430px){.hero-loop{top:69px;width:315px;height:315px}}
@media(max-width:1100px){.about-copy p{font-size:14px}.hero-description{font-size:14px}.playbook-card p{font-size:13px}}
@media(max-width:430px){h1{font-size:24vw}.hero-description,.about-copy p{font-size:13px}.playbook-card p{font-size:11px}.hero-art{width:100%;margin-left:0}}
@media(prefers-reduced-motion:reduce){html:not([data-motion="on"]){scroll-behavior:auto}html:not([data-motion="on"]) *,html:not([data-motion="on"]) *::before,html:not([data-motion="on"]) *::after{animation:none!important;transition:none!important}html:not([data-motion="on"]) .reveal{opacity:1;transform:none}}
