@font-face{font-family:Jua;src:url(/fonts/Jua-Regular.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Mapo Dacapo;src:url(/fonts/MapoDacapoA.woff)format("woff");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Ok Dandan;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/2508-2@1.0/OkDanDan-Bold.woff2)format("woff2");font-style:normal;font-weight:700;font-display:swap}:root{--ink:#24231f;--muted:#6f7068;--paper:#f7f4ec;--surface:#fffcf4;--surface-raised:#fff;--soft:#efebe2;--orange:#f36c32;--yellow:#f2cf66;--coral:#e88d77;--sky:#9fc8d3;--lime:#b9cf89;--purple:#b8a9d0;--line-color:#d9d5ca;--line:1px solid var(--line-color);--shadow:0 24px 70px #2d2a2017;--amp-font:"Ok Dandan", "Mapo Dacapo", serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-instrument-sans), "Apple SD Gothic Neo", "Noto Sans KR", Arial, sans-serif;word-break:keep-all;overflow-wrap:break-word;margin:0}button,textarea{font:inherit}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}:is(button:focus-visible,a:focus-visible,textarea:focus-visible){outline:3px solid var(--orange);outline-offset:3px}main{width:min(1440px,100%);margin:0 auto;padding:0 40px;overflow:hidden}.site-header{border-bottom:1px solid var(--line-color);justify-content:space-between;align-items:center;gap:28px;min-height:92px;display:flex}.wordmark{letter-spacing:-.05em;white-space:nowrap;align-items:center;gap:4px;font-size:23px;font-weight:650;display:inline-flex}.brand-amp{transform-origin:50%;background:url(/amp-symbol.png) 50%/contain no-repeat;flex:0 0 36px;width:36px;height:36px;margin:0 -4px 0 -2px;display:inline-block;transform:translateY(1px)rotate(-3deg)}.masthead-note{border-left:1px solid var(--line-color);color:var(--muted);letter-spacing:.14em;margin:0 auto 0 clamp(22px,4vw,64px);padding-left:18px;font-size:8px;font-weight:700;line-height:1.4}.site-header nav{color:var(--muted);align-items:center;gap:30px;font-size:14px;display:flex}.site-header nav a{padding:9px 0;transition:color .16s}.site-header nav a:hover{color:var(--orange)}.family-link{color:var(--ink);padding-inline:0!important}.family-link:after{content:"↗";margin-left:6px}.hero{grid-template-columns:minmax(390px,.78fr) minmax(0,1.08fr);grid-template-areas:"visual copy";align-items:center;gap:clamp(72px,8vw,126px);min-height:min(810px,100vh - 92px);padding:clamp(92px,9vw,126px) 0;display:grid;position:relative}.hero:after{z-index:1;aspect-ratio:1;filter:drop-shadow(0 22px 28px #1919151a);pointer-events:none;transform-origin:50%;content:"";background:url(/amp-mascot.png) 50%/contain no-repeat;width:clamp(720px,54vw,820px);position:absolute;top:3%;right:clamp(-430px,-28vw,-380px);transform:rotate(-14deg)scaleX(-1)}.hero-copy{z-index:2;grid-area:copy;position:relative}.eyebrow,.section-number{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;margin:0 0 25px;font-size:11px;font-weight:700}.eyebrow span{color:var(--ink);align-items:center;gap:7px;margin-right:10px;display:inline-flex}.eyebrow span:before{background:var(--orange);content:"";border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 5px #ff6b351f}.hero h1{letter-spacing:-.068em;text-wrap:balance;max-width:720px;margin:0;font-size:clamp(68px,7.8vw,112px);font-weight:570;line-height:.9}.hero h1 em{color:var(--orange);font-style:normal}.hero-intro{max-width:510px;color:var(--muted);margin:34px 0 0;font-size:clamp(16px,1.4vw,19px);line-height:1.75}.primary-link{background:var(--ink);width:fit-content;min-height:52px;color:var(--surface);border-radius:14px;align-items:center;gap:24px;margin-top:30px;padding:0 8px 0 19px;font-size:14px;font-weight:650;transition:transform .18s,background .18s;display:inline-flex}.primary-link b{background:var(--orange);width:36px;height:36px;color:var(--ink);border-radius:10px;place-items:center;font-size:17px;display:grid}.primary-link:hover{background:#302f29;transform:translateY(-2px)}.hero-folio{border-top:1px solid var(--line-color);color:var(--muted);letter-spacing:.14em;grid-template-columns:repeat(3,auto);justify-content:start;gap:0;margin-top:42px;font-size:8px;font-weight:700;display:grid}.hero-folio span{min-width:112px;padding:12px 20px 0 0}.hero-folio span+span{border-left:1px solid var(--line-color);padding-left:20px}.hero-playground{isolation:isolate;grid-area:visual;place-items:center start;min-height:600px;display:grid;position:relative}.play-card{background:var(--ink);width:min(84%,420px);min-height:550px;box-shadow:var(--shadow);color:var(--surface);border-radius:3px;flex-direction:column;justify-content:space-between;margin-left:8px;padding:30px;display:flex;position:relative;overflow:hidden}.play-card:before{z-index:0;pointer-events:none;content:"";border:1px solid #ffffff26;position:absolute;inset:14px}.play-card:after{aspect-ratio:1;opacity:.09;pointer-events:none;content:"";background:url(/amp-symbol.png) 50%/contain no-repeat;width:86%;position:absolute;bottom:-24%;right:-18%;transform:rotate(-7deg)}.play-card-top{z-index:2;color:#ffffffb3;letter-spacing:.15em;border-bottom:1px solid #ffffff38;justify-content:space-between;padding-bottom:19px;font-size:10px;font-weight:700;display:flex;position:relative}.play-orbit{z-index:2;width:100%;color:var(--surface);justify-items:start;display:grid;position:relative}.cover-deck{color:#ffffffc2;letter-spacing:.12em;text-align:left;gap:3px;margin:0 0 40px;font-size:9px;font-weight:700;line-height:1;display:grid}.hero-mascot{z-index:4;aspect-ratio:1;pointer-events:none;transform-origin:bottom;background:url(/amp-mascot.png) 50%/contain no-repeat;width:min(132%,620px);transition:transform .26s cubic-bezier(.2,.8,.2,1);position:absolute;top:2%;right:clamp(-112px,-7vw,-70px);transform:rotate(-4deg)}.hero-playground:hover .hero-mascot{transform:translate(8px,-4px)rotate(-1deg)}.play-card-bottom{z-index:2;justify-content:space-between;align-items:end;gap:22px;display:flex;position:relative}.play-card-bottom strong{letter-spacing:-.055em;font-size:clamp(25px,3vw,38px);font-weight:620}.play-card-bottom small{color:#ffffff8a;text-align:right;max-width:110px;font-size:10px;line-height:1.35}.tool-section{border-block:1px solid var(--line-color);background:color-mix(in srgb, var(--surface) 45%, transparent);margin:34px -40px 0;padding:clamp(88px,10vw,132px) 40px;position:relative}.tool-section:before{aspect-ratio:1;opacity:.96;pointer-events:none;content:"";background:url(/amp-mascot.png) 50%/contain no-repeat;width:128px;position:absolute;top:38px;right:clamp(30px,5vw,72px);transform:rotate(7deg)}.tool-section>*{z-index:1;position:relative}.section-heading{border-top:1px solid var(--ink);grid-template-columns:minmax(180px,.33fr) minmax(0,1fr);align-items:end;gap:32px;margin-bottom:54px;padding-top:18px;display:grid}.section-heading h2,.next-heading h2{letter-spacing:-.055em;margin:0;font-size:clamp(48px,5.8vw,80px);font-weight:570;line-height:.98}.section-heading>div>p{color:var(--muted);margin:21px 0 0;font-size:16px}.roulette-studio{grid-template-columns:minmax(0,1.12fr) minmax(320px,.62fr);gap:clamp(18px,3vw,36px);display:grid}.wheel-panel,.roulette-controls{border:var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:24px}.wheel-panel{align-content:center;justify-items:center;min-height:680px;padding:clamp(56px,5vw,72px) clamp(28px,4vw,50px) clamp(28px,4vw,50px);display:grid;position:relative;overflow:hidden}.panel-caption{border-bottom:1px solid var(--line-color);min-height:48px;color:var(--muted);letter-spacing:.14em;grid-template-columns:48px 1fr auto;align-items:center;padding:0 22px;font-size:8px;font-weight:700;display:grid;position:absolute;inset:0 0 auto}.panel-caption span:first-child{color:var(--orange)}.wheel-stage{aspect-ratio:1;place-items:center;width:min(100%,500px);display:grid;position:relative}.wheel-shadow{background:var(--ink);opacity:.13;border-radius:50%;position:absolute;inset:5.5% 2.5% .5% 7.5%}.wheel{z-index:1;aspect-ratio:1;border:3px solid var(--ink);width:92%;box-shadow:inset 0 0 0 5px var(--surface);border-radius:50%;transition:transform 4.2s cubic-bezier(.12,.7,.08,1);position:relative;overflow:hidden}.wheel-pointer{z-index:4;border-left:20px solid #0000;border-right:20px solid #0000;border-top:43px solid var(--orange);width:0;height:0;filter:drop-shadow(0 2px 0 var(--ink));position:absolute;top:.5%;left:50%;transform:translate(-50%)}.wheel-label{z-index:2;transform-origin:0;pointer-events:none;justify-content:flex-end;align-items:center;width:44%;height:34px;display:flex;position:absolute;top:50%;left:50%}.wheel-label>span{width:76%;color:var(--ink);text-align:center;text-overflow:ellipsis;white-space:nowrap;padding-inline:4%;font-size:clamp(10px,1.15vw,14px);font-weight:700;line-height:1.05;transition:color .18s;overflow:hidden}.wheel-label.is-dark>span{color:var(--surface)}.wheel-label.is-selected>span{color:var(--ink)}.wheel-label.is-narrow>span{opacity:0}.wheel-center{z-index:3;aspect-ratio:1;border:3px solid var(--orange);background:var(--ink);width:23%;box-shadow:0 0 0 3px var(--surface);border-radius:50%;place-items:center;display:grid;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.wheel-symbol{aspect-ratio:1;filter:saturate(1.08)brightness(1.08);background:url(/amp-symbol.png) 50%/contain no-repeat;width:82%;transform:rotate(-4deg)}.winner-board{border:var(--line);background:var(--paper);text-align:center;border-radius:14px;gap:7px;width:min(100%,500px);margin-top:28px;padding:17px 20px;display:grid}.winner-board span{color:var(--muted);letter-spacing:.08em;font-size:10px;font-weight:700}.winner-board strong{text-overflow:ellipsis;white-space:nowrap;font-size:clamp(21px,2.6vw,31px);overflow:hidden}.winner-board.has-winner{border-color:color-mix(in srgb, var(--orange) 62%, var(--line-color));background:color-mix(in srgb, var(--orange) 13%, var(--surface));animation:.48s cubic-bezier(.2,1.4,.5,1) winner-pop}@keyframes winner-pop{50%{transform:translateY(-3px)scale(1.015)}}.roulette-controls{align-self:stretch;padding:clamp(25px,3vw,36px)}.control-title{border-bottom:1px solid var(--line-color);letter-spacing:-.035em;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:18px;font-size:22px;font-weight:650;display:flex}.control-title b{background:color-mix(in srgb, var(--orange) 12%, var(--surface));color:var(--orange);letter-spacing:.05em;border-radius:999px;padding:7px 11px 5px;font-size:11px;font-weight:700}.roulette-mode{border:1px solid var(--line-color);background:var(--paper);border-radius:14px;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:25px;padding:4px;display:grid}.roulette-mode button{min-height:42px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:10px;font-size:12px;font-weight:700;transition:background .16s,color .16s,transform .16s}.roulette-mode button:hover{color:var(--ink)}.roulette-mode button[aria-pressed=true]{background:var(--ink);color:var(--surface);box-shadow:0 4px 12px #24231f24}.roulette-controls label{color:var(--muted);margin-bottom:11px;font-size:12px;font-weight:700;display:block}.input-format{color:var(--orange);margin:-3px 0 11px;font-size:10px;font-weight:650;display:block}.roulette-controls textarea{resize:vertical;border:var(--line);width:100%;min-height:270px;color:var(--ink);background:#f8f4ec;border-radius:15px;outline:0;padding:17px;font-size:15px;font-weight:600;line-height:1.65;transition:border .16s,box-shadow .16s}.roulette-controls textarea.is-compact{min-height:156px}.roulette-controls textarea:focus{border-color:var(--orange);box-shadow:0 0 0 4px #ff6b3521}.roulette-controls textarea.has-error{border-color:var(--orange);box-shadow:0 0 0 3px #ff6b351a}.roulette-controls textarea:disabled{opacity:.65}.roulette-controls>p{color:var(--muted);margin:10px 0 21px;font-size:11px;line-height:1.55}.roulette-controls>.ratio-error{color:var(--orange);margin:8px 2px 0;font-weight:700}.ratio-editor{border:1px solid var(--line-color);background:var(--paper);border-radius:15px;margin-top:14px}.ratio-heading{border-bottom:1px solid var(--line-color);justify-content:space-between;align-items:center;gap:12px;min-height:42px;padding:0 13px;display:flex}.ratio-heading span{font-size:12px;font-weight:750}.ratio-heading small{color:var(--muted);font-size:9px}.ratio-list{scrollbar-width:thin;max-height:318px;padding:5px 9px;overflow-y:auto}.ratio-row{border-bottom:1px solid color-mix(in srgb, var(--line-color) 72%, transparent);grid-template-columns:minmax(0,1fr) auto 48px;align-items:center;gap:9px;min-height:44px;display:grid}.ratio-row:last-child{border-bottom:0}.ratio-row.is-invalid{color:var(--orange)}.ratio-name{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:650;overflow:hidden}.ratio-value{background:var(--surface);min-width:48px;color:var(--ink);text-align:center;border-radius:999px;padding:6px 8px 5px;font-size:10px;font-weight:750}.ratio-row>strong{color:var(--orange);text-align:right;font-size:10px}.spin-button{background:var(--ink);width:100%;min-height:56px;color:var(--surface);cursor:pointer;border:0;border-radius:14px;justify-content:space-between;align-items:center;padding:0 9px 0 19px;font-size:15px;font-weight:700;transition:transform .18s,filter .18s;display:flex}.spin-button b{background:var(--orange);width:38px;height:38px;color:var(--ink);border-radius:10px;place-items:center;font-size:20px;display:grid}.spin-button:hover:not(:disabled){filter:saturate(1.08);transform:translateY(-2px)}.spin-button:disabled{cursor:not-allowed;opacity:.48}.wheel-spin-button{width:min(100%,500px);margin-top:14px;display:none}.tool-notes{flex-wrap:wrap;gap:7px;margin:22px 0 0;padding:0;list-style:none;display:flex}.tool-notes li{border:1px solid var(--line-color);color:var(--muted);border-radius:999px;padding:7px 9px 5px;font-size:10px;font-weight:700}.roulette-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;display:grid}.roulette-actions button{border:1px solid var(--line-color);background:var(--surface);min-height:43px;color:var(--ink);cursor:pointer;border-radius:12px;justify-content:space-between;align-items:center;padding:0 13px;font-size:11px;font-weight:700;display:flex}.roulette-actions button:hover{border-color:var(--orange)}.roulette-actions button span{color:var(--orange)}.roulette-controls>.share-status{min-height:17px;color:var(--orange);margin:7px 2px -7px;font-weight:700}.focus-close-button{z-index:8;border:1px solid var(--line-color);background:var(--surface);min-height:38px;color:var(--ink);cursor:pointer;border-radius:999px;align-items:center;gap:12px;padding:0 7px 0 14px;font-size:11px;font-weight:700;display:flex;position:absolute;top:62px;right:18px;box-shadow:0 8px 24px #24231f1a}.focus-close-button span{background:var(--ink);width:25px;height:25px;color:var(--surface);border-radius:50%;place-items:center;font-size:18px;font-weight:400;display:grid}.wheel-panel.is-focus-mode{z-index:100;background:var(--paper);min-height:100dvh;box-shadow:none;border:0;border-radius:0;padding:66px 24px 22px;position:fixed;inset:0}.wheel-panel.is-focus-mode .wheel-stage,.wheel-panel.is-focus-mode .winner-board,.wheel-panel.is-focus-mode .wheel-spin-button{width:min(66dvh,88vw,720px)}.wheel-panel.is-focus-mode .wheel-spin-button{display:flex}.standalone-tool-page{overflow:hidden}.standalone-roulette{border-block:1px solid var(--line-color);background:color-mix(in srgb, var(--surface) 45%, transparent);margin-inline:-40px;padding:clamp(40px,6vw,82px) 40px}.standalone-tool-notice{border-bottom:1px solid var(--line-color);grid-template-columns:minmax(180px,.33fr) minmax(0,.9fr) minmax(260px,.7fr);align-content:center;gap:32px;min-height:430px;display:grid}.standalone-tool-notice h2{letter-spacing:-.055em;margin:0;font-size:clamp(44px,5vw,70px);font-weight:570;line-height:.98}.standalone-tool-notice>p:last-child{max-width:480px;color:var(--muted);margin:0;font-size:15px;line-height:1.75}.next-section{padding:clamp(100px,12vw,160px) 0 112px}.next-heading{border-top:1px solid var(--ink);grid-template-columns:minmax(180px,.33fr) minmax(0,1fr);gap:32px;margin-bottom:56px;padding-top:18px;display:grid}.next-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,24px);display:grid}.next-card{--card-accent:var(--orange);border:var(--line);background:var(--surface);border-radius:2px;flex-direction:column;justify-content:space-between;min-height:350px;padding:28px;transition:transform .18s,box-shadow .18s;display:flex;position:relative;overflow:hidden}.next-card:before{border:1px solid color-mix(in srgb, var(--card-accent) 35%, transparent);pointer-events:none;content:"";position:absolute;inset:12px}.next-card>*{z-index:1;position:relative}.next-card:hover{box-shadow:var(--shadow);transform:translateY(-4px)}.next-card.ink{background:var(--ink);color:var(--surface)}.next-card.ink p,.next-card.ink .card-number{color:#ffffff9e}.next-card.ink small,.next-card.orange{background:var(--orange);color:var(--ink)}.next-card.orange:before{border-color:#24231f38}.next-card.orange p,.next-card.orange .card-number{color:#24231fad}.next-card.orange small{background:var(--ink);color:var(--surface)}.card-number{border-bottom:2px solid var(--card-accent);width:fit-content;color:var(--muted);letter-spacing:.1em;padding:0 0 8px;font-size:10px;font-weight:800}.card-symbol{color:var(--card-accent);letter-spacing:-.07em;align-self:center;font-size:clamp(39px,4.5vw,60px);font-weight:650}.next-card.ink .card-symbol,.next-card.orange .card-symbol{color:inherit}.next-card h3{letter-spacing:-.04em;margin:0;font-size:27px;font-weight:650}.next-card p{color:var(--muted);margin:12px 0 0;font-size:14px;line-height:1.6}.next-card small{background:var(--soft);width:fit-content;color:var(--muted);border-radius:999px;padding:7px 10px 5px;font-size:10px;font-weight:700}.idea-card{--card-accent:var(--orange);background:var(--ink);color:var(--surface)}.idea-card .card-number{background:var(--orange);color:var(--ink);font-family:var(--amp-font);font-size:25px;font-weight:700;line-height:.75}.idea-card p{color:#ffffff94}.idea-card a{border-bottom:1px solid #ffffffa6;width:fit-content;padding-bottom:4px;font-size:14px;font-weight:700}footer{border-top:1px solid var(--line-color);grid-template-columns:auto 1fr auto auto;align-items:center;gap:32px;min-height:144px;display:grid}.footer-wordmark{font-size:22px}footer p{color:var(--muted);margin:0;font-size:12px}footer>a:not(.wordmark),footer>span{color:var(--muted);font-size:10px}.motion-page{overflow:clip}.dispatch-study{border-top:var(--line);padding:88px 40px;scroll-margin-top:20px}.dispatch-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:32px;display:flex}.dispatch-heading h2{letter-spacing:-.055em;margin:0;font-size:clamp(42px,5vw,70px);font-weight:570;line-height:1.1}.dispatch-heading h2 em{color:var(--orange);font-style:normal}.dispatch-heading>p{color:var(--muted);font-size:16px;line-height:1.7}.dispatch-route-line{border:var(--line);background:var(--surface);scrollbar-width:none;border-radius:14px;align-items:center;gap:10px;margin-bottom:18px;padding:14px 16px;display:flex;overflow-x:auto}.dispatch-route-line::-webkit-scrollbar{display:none}.dispatch-route-line span{background:var(--soft);color:var(--ink);border-radius:999px;flex:none;padding:8px 12px;font-size:14px;font-weight:650}.dispatch-route-line span:nth-of-type(3),.dispatch-route-line span:nth-of-type(4){background:var(--orange)}.dispatch-route-line i{color:var(--muted);font-style:normal}.dispatch-map-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:18px;display:grid}.dispatch-map-tabs button{border:var(--line);text-align:left;min-width:0;color:var(--ink);background:var(--surface);cursor:pointer;border-radius:14px;padding:18px 20px}.dispatch-map-tabs strong,.dispatch-map-tabs span{display:block}.dispatch-map-tabs strong{font-size:16px}.dispatch-map-tabs span{color:var(--muted);margin-top:6px;font-size:14px}.dispatch-map-tabs button[aria-pressed=true]{background:var(--ink);color:var(--surface);border-color:var(--ink);box-shadow:inset 0 -4px var(--orange)}.dispatch-map-tabs button[aria-pressed=true] span{color:#c6c2b8}.dispatch-map-tabs button:disabled{cursor:default}.dispatch-console{border:var(--line);background:var(--surface);border-radius:22px;overflow:hidden}.dispatch-controls-bar{border-bottom:var(--line);flex-wrap:wrap;align-items:center;gap:10px;padding:16px;display:flex}.dispatch-controls-bar button,.dispatch-ready button{border:var(--line);background:var(--surface);min-height:44px;color:var(--ink);cursor:pointer;border-radius:10px;padding:10px 16px;font-size:14px}.dispatch-controls-bar .dispatch-start,.dispatch-ready button{background:var(--orange);color:#24231f;border-color:#0000;font-weight:700}.dispatch-start span,.dispatch-ready button span{margin-left:20px}.dispatch-controls-bar button[aria-pressed=true]{background:var(--ink);color:var(--surface)}.dispatch-controls-bar button:disabled,.dispatch-ready button:disabled{cursor:not-allowed;opacity:.55}:is(.dispatch-settings summary:focus-visible,.dispatch-settings select:focus-visible){outline:3px solid var(--orange);outline-offset:3px}.dispatch-clock{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto;font-size:14px}.dispatch-arena{background:var(--paper);height:clamp(460px,67vh,750px);position:relative;overflow:hidden}.dispatch-arena canvas{width:100%;height:100%;display:block}.dispatch-ready{border:var(--line);text-align:center;background:#fffcf4f2;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:22px;display:flex;position:absolute;inset:auto 20px 22px}.dispatch-ready>span{color:var(--orange);letter-spacing:.15em;font-size:12px;font-weight:700}.dispatch-ready strong{letter-spacing:-.04em;font-size:clamp(23px,3vw,34px)}.dispatch-ready p{color:var(--muted);margin:0 0 8px;font-size:16px}.is-night .dispatch-ready{color:var(--surface);background:#24231feb}.is-night .dispatch-ready p{color:#c6c2b8}.dispatch-paused,.dispatch-floor{background:var(--ink);color:var(--surface);border-radius:8px;padding:10px 14px;font-size:14px;position:absolute;top:20px;left:20px}.dispatch-paused{z-index:2;white-space:nowrap;top:45%;left:50%;transform:translate(-50%)}.dispatch-floor{background:var(--orange);color:#24231f;font-variant-numeric:tabular-nums}.dispatch-result{border-top:var(--line);gap:8px;padding:22px;display:grid}.dispatch-result>span{color:var(--orange);letter-spacing:.1em;font-size:12px;font-weight:700}.dispatch-result>strong{overflow-wrap:anywhere;font-size:clamp(16px,2vw,22px)}.dispatch-result p{color:var(--muted);margin:0;font-size:14px}.dispatch-event-strip{border-top:var(--line);border-bottom:var(--line);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.dispatch-event-strip span{min-width:0;color:var(--muted);text-align:center;padding:13px 16px;font-size:13px}.dispatch-event-strip span+span{border-left:var(--line)}.dispatch-event-strip b{color:var(--orange);font-variant-numeric:tabular-nums;margin-right:5px}.dispatch-live-order{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;padding:0 22px 22px;list-style:none;display:grid}.dispatch-live-order li{border:var(--line);border-radius:8px;align-items:center;gap:8px;min-width:0;padding:10px;font-size:14px;display:flex}.dispatch-live-order b{color:var(--orange)}.dispatch-live-order li>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dispatch-live-order small{white-space:nowrap;color:var(--muted);margin-left:auto;font-size:12px}.dispatch-settings{border:var(--line);background:var(--surface);border-radius:14px;margin-top:20px;padding:20px}.dispatch-settings summary{cursor:pointer;font-size:16px;font-weight:600}.dispatch-settings summary span{color:var(--muted);margin-left:16px;font-size:14px;font-weight:400}.dispatch-settings>div{grid-template-columns:1fr 1fr;gap:24px;padding-top:24px;display:grid}.dispatch-settings label{gap:12px;font-size:14px;display:grid}.dispatch-settings textarea,.dispatch-settings select{border:var(--line);background:var(--paper);width:100%;color:var(--ink);font:inherit;border-radius:10px;padding:12px;font-size:16px;line-height:1.7}.dispatch-settings textarea{resize:vertical}.dispatch-settings p{color:var(--muted);font-size:14px;line-height:1.7}@media (max-width:600px){.dispatch-study{padding:64px 20px}.dispatch-heading{display:block}.dispatch-route-line{padding:10px}.dispatch-map-tabs{gap:6px}.dispatch-map-tabs button{padding:14px 10px}.dispatch-map-tabs strong{font-size:14px}.dispatch-map-tabs span{font-size:12px;line-height:1.5}.dispatch-controls-bar{gap:6px;padding:10px}.dispatch-controls-bar button{padding:10px}.dispatch-start span{margin-left:10px}.dispatch-clock{text-align:right;flex-basis:100%;margin:3px 0}.dispatch-arena{height:min(60svh,600px);min-height:350px}.dispatch-live-order{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 12px 16px}.dispatch-result{padding:18px 12px}.dispatch-event-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.dispatch-event-strip span:nth-child(3){border-left:0;border-top:var(--line)}.dispatch-event-strip span:nth-child(4){border-top:var(--line)}.dispatch-settings>div{grid-template-columns:1fr}.dispatch-settings summary span{margin:10px 0 0;display:block}}.motion-hero{border-bottom:1px solid var(--line-color);align-content:center;min-height:580px;padding:clamp(88px,10vw,140px) 7vw;display:grid}.motion-hero h1{letter-spacing:-.07em;max-width:960px;margin:0;font-size:clamp(64px,8.5vw,122px);font-weight:570;line-height:.91}.motion-hero h1 em{color:var(--orange);font-style:normal}.motion-hero>p:last-child{max-width:680px;color:var(--muted);margin:35px 0 0;font-size:clamp(16px,1.5vw,20px);line-height:1.75}.motion-gallery{margin-inline:-40px}.motion-study{border-bottom:1px solid var(--line-color);grid-template-columns:minmax(300px,.72fr) minmax(520px,1.2fr);align-items:center;gap:clamp(50px,8vw,120px);min-height:760px;padding:clamp(80px,9vw,130px) max(40px,7vw);display:grid}.motion-study.is-reversed .motion-copy{order:2}.motion-study.is-reversed .motion-stage{order:1}.motion-copy>p:first-child{color:var(--muted);letter-spacing:.15em;margin:0 0 24px;font-size:9px;font-weight:750}.motion-copy>p:first-child span{color:var(--orange);margin-right:10px}.motion-copy h2{letter-spacing:-.06em;margin:0;font-size:clamp(49px,5.5vw,78px);font-weight:570;line-height:.96}.motion-description{max-width:520px;color:var(--muted);margin:28px 0 0;font-size:15px;line-height:1.75}.motion-copy ul{flex-wrap:wrap;gap:7px;margin:25px 0 0;padding:0;list-style:none;display:flex}.motion-copy li{border:1px solid var(--line-color);color:var(--muted);border-radius:999px;padding:7px 10px 5px;font-size:9px;font-weight:700}.motion-copy button{background:var(--ink);min-height:48px;color:var(--surface);cursor:pointer;border:0;border-radius:13px;align-items:center;gap:24px;margin-top:28px;padding:0 8px 0 17px;font-size:12px;font-weight:700;display:inline-flex}.motion-copy button span{background:var(--orange);width:33px;height:33px;color:var(--ink);border-radius:9px;place-items:center;font-size:17px;display:grid}.motion-stage{border:1px solid var(--line-color);background:var(--surface);min-height:570px;box-shadow:var(--shadow);border-radius:3px;scroll-margin:90px;position:relative;overflow:hidden}.stage-label{border-bottom:1px solid var(--line-color);min-height:50px;color:var(--muted);letter-spacing:.14em;justify-content:space-between;align-items:center;padding:0 22px;font-size:8px;font-weight:750;display:flex}.stage-label span:first-child{color:var(--orange)}.motion-status{z-index:6;border-top:1px solid var(--line-color);background:var(--surface);min-height:46px;color:var(--muted);text-align:center;place-items:center;margin:0;padding:13px 8px 0;font-size:10px;font-weight:700;display:grid;position:absolute;bottom:16px;left:24px;right:24px}.ticket-stack{perspective:900px;place-items:center;display:grid;position:absolute;inset:50px 0 60px}.ticket{aspect-ratio:1.7;border:2px solid var(--ink);background:var(--paper);width:min(54%,290px);transform-style:preserve-3d;border-radius:3px;position:absolute;box-shadow:0 16px 34px #24231f1f}.ticket:before{z-index:3;opacity:.22;pointer-events:none;content:"";border:1px dashed;position:absolute;inset:12px}.lottery-stage.is-running .ticket-a{animation:1.05s both ticket-a}.lottery-stage.is-running .ticket-b{animation:1.05s both ticket-b}.lottery-stage.is-running .ticket-c{animation:1.05s both ticket-c}.ticket-d{z-index:4;transform-origin:bottom;transform:translateY(10%)rotate(2deg)scale(.95)}.lottery-stage.is-running .ticket-d{animation:2.45s cubic-bezier(.2,.82,.18,1) .1s both ticket-winner}.lottery-stage.is-done .ticket-d{transform:translateY(-16%)rotateY(180deg)scale(1.08)}.ticket-face{-webkit-backface-visibility:hidden;backface-visibility:hidden;align-content:center;justify-items:center;gap:8px;padding:22px;display:grid;position:absolute;inset:0}.ticket-face small{letter-spacing:.16em;font-size:8px;font-style:normal;font-weight:800}.ticket-face b{text-align:center;font-size:clamp(24px,3vw,38px);font-style:normal;line-height:.95}.ticket-back b{color:var(--orange);font-family:var(--amp-font);font-size:clamp(48px,6vw,72px)}.ticket-front{background:var(--orange);transform:rotateY(180deg)}.ticket-front i{font-family:var(--amp-font);font-size:25px;font-style:normal;line-height:.7}@keyframes ticket-a{0%,to{transform:translate(-13%,9%)rotate(-6deg)}35%{transform:translate(9%,-5%)rotate(5deg)}65%{transform:translate(-5%,3%)rotate(-2deg)}}@keyframes ticket-b{0%,to{transform:translate(12%,5%)rotate(5deg)}35%{transform:translate(-9%,2%)rotate(-5deg)}65%{transform:translate(4%,-4%)rotate(2deg)}}@keyframes ticket-c{0%,to{transform:translateY(13%)rotate(1deg)}35%{transform:translate(6%,-8%)rotate(3deg)}65%{transform:translate(-7%)rotate(-4deg)}}@keyframes ticket-winner{0%{transform:translateY(10%)rotate(2deg)scale(.95)}36%{transform:translateY(-50%)rotate(-2deg)scale(1.04)}56%{transform:translateY(-50%)rotate(-2deg)scale(1.04)rotateY(0)}to{transform:translateY(-16%)rotate(0)scale(1.08)rotateY(180deg)}}.ladder-board{width:min(78%,420px);height:380px;position:absolute;top:95px;left:50%;transform:translate(-50%)}.ladder-names,.ladder-results{color:var(--muted);text-align:center;grid-template-columns:repeat(4,1fr);gap:7px;font-size:10px;font-weight:700;display:grid;position:absolute;left:0;right:0}.ladder-names{top:0}.ladder-results{bottom:0}.ladder-results span{background:var(--paper);border-radius:999px;padding:7px 2px 5px}.ladder-stage.is-running .ladder-results span:nth-child(4){animation:.5s 2.35s both ladder-result}.ladder-stage.is-done .ladder-results span:nth-child(4){background:var(--orange);color:var(--ink);transform:scale(1.08)}.ladder-lines{grid-template-columns:repeat(4,1fr);display:grid;position:absolute;inset:48px 10% 49px}.ladder-lines i{background:var(--ink);justify-self:center;width:2px;height:100%}.ladder-rung{background:var(--ink);height:2px;position:absolute}.rung-a{width:20%;top:99px;left:20%}.rung-b{width:20%;top:151px;left:40%}.rung-c{width:20%;top:207px;left:60%}.rung-d{width:20%;top:259px;left:20%}.rung-e{width:20%;top:307px;left:40%}.ladder-trace{z-index:2;background:var(--orange);opacity:0;border-radius:999px;position:absolute}.trace-a{transform-origin:top;width:4px;height:52px;top:48px;left:calc(20% - 1px)}.trace-b{transform-origin:0;width:20%;height:4px;top:98px;left:20%}.trace-c{transform-origin:top;width:4px;height:53px;top:99px;left:calc(40% - 1px)}.trace-d{transform-origin:0;width:20%;height:4px;top:150px;left:40%}.trace-e{transform-origin:top;width:4px;height:57px;top:151px;left:calc(60% - 1px)}.trace-f{transform-origin:0;width:20%;height:4px;top:206px;left:60%}.trace-g{transform-origin:top;width:4px;height:120px;top:207px;left:calc(80% - 1px)}.ladder-stage.is-running .trace-a{animation:.4s linear .1s both trace-y}.ladder-stage.is-running .trace-b{animation:.27s linear .5s both trace-x}.ladder-stage.is-running .trace-c{animation:.35s linear .77s both trace-y}.ladder-stage.is-running .trace-d{animation:.27s linear 1.12s both trace-x}.ladder-stage.is-running .trace-e{animation:.38s linear 1.39s both trace-y}.ladder-stage.is-running .trace-f{animation:.27s linear 1.77s both trace-x}.ladder-stage.is-running .trace-g{animation:.55s linear 2.04s both trace-y}.ladder-stage.is-done .ladder-trace{opacity:1;transform:scale(1)}.ladder-runner{z-index:4;border:2px solid var(--ink);background:var(--orange);width:20px;height:20px;box-shadow:0 0 0 3px var(--surface);border-radius:50%;place-items:center;display:grid;position:absolute;top:38px;left:calc(20% - 10px)}.ladder-runner i{font-family:var(--amp-font);font-size:13px;font-style:normal;line-height:.8}.ladder-stage.is-running .ladder-runner{animation:2.6s linear both ladder-run}.ladder-stage.is-done .ladder-runner{top:317px;left:calc(80% - 10px)}@keyframes trace-y{0%{opacity:1;transform:scaleY(0)}to{opacity:1;transform:scaleY(1)}}@keyframes trace-x{0%{opacity:1;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}@keyframes ladder-run{0%{top:38px;left:calc(20% - 10px)}19%{top:90px;left:calc(20% - 10px)}29%{top:90px;left:calc(40% - 10px)}43%{top:142px;left:calc(40% - 10px)}53%{top:142px;left:calc(60% - 10px)}68%{top:198px;left:calc(60% - 10px)}78%{top:198px;left:calc(80% - 10px)}to{top:317px;left:calc(80% - 10px)}}@keyframes ladder-result{0%{background:var(--paper);transform:scale(.9)}to{background:var(--orange);color:var(--ink);transform:scale(1.08)}}.race-countdown{z-index:5;pointer-events:none;place-items:center;display:grid;position:absolute;inset:50px 0 52px}.race-countdown i,.race-countdown b{color:var(--orange);letter-spacing:-.08em;opacity:0;font-size:clamp(76px,10vw,130px);font-style:normal;font-weight:650;position:absolute}.race-countdown b{color:var(--ink);font-size:clamp(58px,8vw,100px)}.race-stage.is-running .race-countdown i:first-child{animation:.32s 50ms both countdown}.race-stage.is-running .race-countdown i:nth-child(2){animation:.32s .35s both countdown}.race-stage.is-running .race-countdown i:nth-child(3){animation:.32s .65s both countdown}.race-stage.is-running .race-countdown b{animation:.38s .95s both countdown}.race-board{position:absolute;inset:78px 22px 66px;overflow:hidden}.race-track{position:absolute;inset:0}.race-lane{border-bottom:1px dashed var(--line-color);height:29%;position:relative}.race-name{z-index:2;min-width:52px;color:var(--muted);gap:2px;font-size:8px;font-weight:750;display:grid;position:absolute;top:50%;left:0;transform:translateY(-50%)}.race-name b{color:var(--orange);font-size:9px}.race-runner{aspect-ratio:1;width:72px;position:absolute;top:50%;left:12%;transform:translateY(-50%)}.race-character{transform-origin:50% 78%;background:url(/amp-mascot.png) 50%/contain no-repeat;display:block;position:absolute;inset:0;transform:rotate(-4deg)}.race-character b{border:2px solid var(--ink);background:var(--surface);width:22px;height:22px;color:var(--ink);border-radius:50%;place-items:center;font-size:7px;font-style:normal;display:grid;position:absolute;top:17%;left:47%}.race-character.is-stumbler:after{color:var(--orange);opacity:0;content:"!";font-size:20px;font-style:normal;font-weight:900;position:absolute;top:4%;right:2%}.lane-2 .race-character{filter:grayscale()contrast(.9)}.lane-3 .race-character{filter:grayscale()brightness(.4)}.race-stage.is-running .race-runner.place-first{animation:3.25s linear 1.25s both race-first}.race-stage.is-running .race-runner.place-second{animation:3.45s linear 1.25s both race-second}.race-stage.is-running .race-runner.place-third{animation:3.62s linear 1.25s both race-third}.race-stage.is-running .race-character{animation:.24s ease-in-out 1.25s 14 alternate runner-hop}.race-stage.is-running .race-character.is-stumbler{animation:.24s ease-in-out 1.25s 14 alternate runner-hop,.95s cubic-bezier(.34,.02,.22,1) 2.6s both runner-stumble}.race-stage.is-running .race-character.is-stumbler:after{animation:.8s 2.62s both stumble-mark}.race-stage.is-done .race-runner.place-first{left:calc(99% - 72px);transform:translateY(-56%)rotate(4deg)scale(1.12)}.race-stage.is-done .race-runner.place-second{left:calc(90% - 72px)}.race-stage.is-done .race-runner.place-third{left:calc(82% - 72px)}.start-line,.finish-line{z-index:1;border-left:2px solid var(--ink);color:var(--muted);letter-spacing:.12em;writing-mode:vertical-rl;font-size:7px;font-weight:750;position:absolute;top:0;bottom:10%}.start-line{left:12%}.finish-line{border-left-style:dashed;right:1%}.race-winner{background:var(--orange);opacity:0;border-radius:999px;padding:8px 12px 6px;font-size:10px;position:absolute;bottom:0;right:7%}@keyframes countdown{0%{opacity:0;transform:scale(.72)}35%,70%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.12)}}@keyframes race-first{0%{left:12%}18%{left:31%}39%{left:45%}59%{left:70%}73%{left:76%}to{left:calc(99% - 72px);transform:translateY(-56%)rotate(4deg)scale(1.12)}}@keyframes race-second{0%{left:12%}18%{left:27%}39%{left:55%}59%{left:64%}73%{left:81%}to{left:calc(90% - 72px)}}@keyframes race-third{0%{left:12%}18%{left:37%}39%{left:49%}59%{left:60%}73%{left:72%}to{left:calc(82% - 72px)}}@keyframes runner-hop{to{margin-top:-3px}}@keyframes runner-stumble{0%,28%{transform:rotate(-4deg)translate(0)}43%{transform:rotate(18deg)translate(2px,4px)}56%{transform:rotate(76deg)translate(5px,12px)}70%{transform:rotate(38deg)translate(2px,7px)}84%{transform:rotate(-9deg)translateY(-2px)}to{transform:rotate(-4deg)translate(0)}}@keyframes stumble-mark{0%,20%,to{opacity:0;transform:translateY(4px)rotate(8deg)}35%,72%{opacity:1;transform:translateY(0)rotate(-5deg)}}.race-stage.is-running .race-winner{animation:.5s cubic-bezier(.2,1.25,.4,1) 4.5s forwards race-result}.race-stage.is-done .race-winner{opacity:1;transform:translateY(-5px)scale(1.05)}@keyframes race-result{to{opacity:1;transform:translateY(-5px)scale(1.05)}}@media (max-width:900px){.masthead-note,.site-header nav>a:not(.family-link){display:none}.hero{grid-template-columns:1fr;grid-template-areas:"visual""copy";row-gap:clamp(36px,6vw,54px);min-height:0}.hero-playground{justify-items:center;min-height:540px}.play-card{width:min(82%,430px);margin-left:0}.hero-mascot{width:min(78vw,560px);top:4%;right:1%}.section-heading,.next-heading{grid-template-columns:1fr}.tool-section:before{opacity:.9;width:92px;top:30px;right:28px}.roulette-studio{grid-template-columns:1fr}.wheel-panel{min-height:590px}.wheel-spin-button{display:flex}.standalone-tool-notice{grid-template-columns:1fr;gap:20px;padding-block:88px}.next-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.idea-card{grid-column:1/-1;min-height:270px}footer{grid-template-columns:1fr auto;gap:14px 24px;padding:34px 0}footer p{display:none}footer>a:not(.wordmark){grid-column:1}.motion-study,.motion-study.is-reversed{grid-template-columns:1fr;gap:42px}.motion-study.is-reversed .motion-copy,.motion-study.is-reversed .motion-stage{order:initial}.motion-stage{min-height:570px}.ladder-stage{min-height:600px}.race-track{width:230%;inset:0 auto 0 0}.race-stage.is-running .race-track{animation:3.1s cubic-bezier(.45,0,.2,1) 1.35s both race-camera}.race-stage.is-done .race-track{transform:translate(-56.5%)}@keyframes race-camera{0%,8%{transform:translate(0)}43%{transform:translate(-28.25%)}55%{transform:translate(-28.25%)}to{transform:translate(-56.5%)}}}@media (max-width:1180px){.hero:after{display:none}}@media (max-width:560px){main{padding:0 20px}.site-header{min-height:74px}.wordmark{font-size:22px}.brand-amp{flex-basis:34px;width:34px;height:34px}.family-link{text-overflow:ellipsis;white-space:nowrap;max-width:100px;font-size:0;overflow:hidden;padding:9px 0!important}.family-link:after{content:"D&D ↗";font-size:11px}.hero{gap:28px;padding:62px 0 78px}.eyebrow{margin-bottom:20px}.hero h1{font-size:clamp(54px,15.8vw,70px);line-height:.92}.hero-intro{margin-top:27px;font-size:15px;line-height:1.7}.hero-folio{grid-template-columns:repeat(3,1fr);margin-top:34px}.hero-folio span{min-width:0;padding-right:8px;font-size:7px}.hero-folio span+span{padding-left:10px}.hero-playground{min-height:390px}.play-card{border-radius:2px;width:84%;min-height:430px;padding:24px}.play-card:before{inset:10px}.hero-mascot{width:min(116vw,500px);top:5%;right:-10%}.cover-deck{font-size:8px}.play-card-bottom strong{font-size:28px}.tool-section{margin-inline:-20px;padding:96px 20px 78px}.tool-section:before{width:82px;top:13px;right:18px}.section-heading{margin-bottom:37px}.section-heading h2,.next-heading h2{font-size:48px}.section-heading>div>p{font-size:14px;line-height:1.55}.wheel-panel{border-radius:22px;min-height:0;padding:72px 13px 24px}.panel-caption{grid-template-columns:34px 1fr auto;min-height:48px;padding-inline:15px;font-size:7px}.wheel-stage{width:100%}.wheel-label{width:45%;height:28px}.wheel-label>span{width:82%;padding-inline:2%;font-size:clamp(9px,2.8vw,11px)}.wheel-pointer{border-top-width:35px;border-left-width:16px;border-right-width:16px}.winner-board{margin-top:21px}.roulette-controls{border-radius:22px;padding:23px 17px}.roulette-controls textarea{min-height:230px}.roulette-controls textarea.is-compact{min-height:146px}.ratio-list{max-height:none}.ratio-row{grid-template-columns:minmax(0,1fr) auto 43px;gap:7px}.standalone-roulette{margin-inline:-20px;padding:32px 20px 72px}.standalone-tool-notice{min-height:0}.wheel-panel.is-focus-mode{padding-inline:12px}.wheel-panel.is-focus-mode .wheel-stage{width:min(58dvh,96vw)}.next-section{padding:92px 0 84px}.next-grid{grid-template-columns:1fr;gap:17px}.next-card,.idea-card{border-radius:2px;grid-column:auto;min-height:315px;padding:24px}footer{min-height:165px}.motion-hero{min-height:470px;padding:82px 0 68px}.motion-hero h1{font-size:clamp(53px,15vw,68px)}.motion-hero>p:last-child{font-size:14px}.motion-gallery{margin-inline:-20px}.motion-study{gap:35px;min-height:0;padding:76px 20px}.motion-copy h2{font-size:48px}.motion-stage{min-height:470px}.ladder-stage{min-height:590px}.race-stage{min-height:530px}.stage-label{padding-inline:15px;font-size:7px}.ticket{width:68%}.ladder-board{width:92%}.race-board{inset-inline:10px}.race-name{min-width:44px;font-size:7px}.race-runner{width:58px}.race-character b{width:19px;height:19px;font-size:6px}.race-stage.is-done .race-runner.place-first{left:calc(99% - 58px)}.race-stage.is-done .race-runner.place-second{left:calc(90% - 58px)}.race-stage.is-done .race-runner.place-third{left:calc(82% - 58px)}@keyframes race-first{0%{left:12%}18%{left:31%}39%{left:45%}59%{left:70%}73%{left:76%}to{left:calc(99% - 58px);transform:translateY(-56%)rotate(4deg)scale(1.12)}}@keyframes race-second{0%{left:12%}18%{left:27%}39%{left:55%}59%{left:64%}73%{left:81%}to{left:calc(90% - 58px)}}@keyframes race-third{0%{left:12%}18%{left:37%}39%{left:49%}59%{left:60%}73%{left:72%}to{left:calc(82% - 58px)}}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.wheel{transition-duration:.01ms}.winner-board.has-winner{animation:none}.race-track{width:auto;inset:0;animation:none!important;transform:none!important}}.public-game{grid-template-columns:minmax(240px,.6fr) minmax(0,1fr);align-items:start;gap:32px;padding-bottom:70px;display:grid}.game-editor{border:var(--line);background:var(--surface);border-radius:14px;padding:26px}.game-editor>label{margin-bottom:12px;font-size:16px;font-weight:650;display:block}.game-editor textarea{resize:vertical;border:var(--line);background:var(--paper);width:100%;min-height:160px;color:var(--ink);border-radius:8px;padding:14px;font-size:16px;line-height:1.7;display:block}.game-editor>p{color:var(--muted);font-size:14px;line-height:1.6}.game-editor .game-error{color:#a33215}.game-starts{border:0;margin:22px 0 0;padding:0}.game-play-area{min-width:0}.public-stage{min-height:480px;box-shadow:none;border-radius:14px;scroll-margin-top:12px}.public-stage .stage-label{font-size:12px}.public-stage .motion-status{overflow-wrap:anywhere;min-height:60px;font-size:16px;line-height:1.5;position:absolute}.public-stage .ticket-stack{inset-block:65px 115px}.public-stage .ticket-front b{overflow-wrap:anywhere;font-size:clamp(18px,2.5vw,30px);line-height:1.35}.public-stage .ticket-face small{letter-spacing:.06em;font-size:12px}.game-start-button{width:100%;min-height:56px;margin-top:16px}.game-start-button:disabled{cursor:not-allowed;opacity:.5}.play-ladder-scroll{margin:22px 16px 100px;overflow-x:auto}.play-ladder{width:100%}.play-ladder-labels{text-align:center;height:56px;font-size:14px;position:relative}.play-ladder-labels span{text-overflow:ellipsis;overflow-wrap:anywhere;border-radius:4px;width:68px;max-height:52px;padding:4px;position:absolute;overflow:hidden;transform:translate(-50%)}.play-ladder-labels .is-selected{color:var(--ink);background:var(--orange)}.play-ladder svg{width:100%;height:290px;display:block;overflow:visible}.play-ladder line{stroke:var(--ink);stroke-width:2px;vector-effect:non-scaling-stroke}.play-ladder-trace{fill:none;stroke:var(--orange);stroke-width:5px;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.is-running .play-ladder-trace{stroke-dasharray:1;animation:2.7s linear both public-ladder-trace}@keyframes public-ladder-trace{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}.public-ladder .public-stage{min-height:0}.game-all-results{border:var(--line);margin-top:20px;padding:16px;line-height:1.8}.game-all-results summary{cursor:pointer}.game-all-results li{overflow-wrap:anywhere}.public-race .public-stage{min-height:580px}.public-stage .race-name{overflow-wrap:anywhere;max-width:85px;font-size:12px;line-height:1.3}.public-stage .race-name b{font-size:14px}.public-stage .race-board{bottom:115px}.public-stage .race-character b{font-size:12px}.public-stage .race-winner{overflow-wrap:anywhere;max-width:75%;font-size:14px}.public-stage .race-runner{width:58px}.public-stage.is-done .race-runner.place-first{left:calc(99% - 58px)}.public-stage.is-done .race-runner.place-second{left:calc(90% - 58px)}.public-stage.is-done .race-runner.place-third{left:calc(82% - 58px)}.public-stage .race-runner.place-fourth{--race-end:76%}.public-stage .race-runner.place-fifth{--race-end:70%}.public-stage .race-runner.place-sixth{--race-end:65%}.public-stage.is-running .place-fourth,.public-stage.is-running .place-fifth,.public-stage.is-running .place-sixth{animation:3.62s linear 1.25s both public-race-pack}.public-stage.is-done .place-fourth,.public-stage.is-done .place-fifth,.public-stage.is-done .place-sixth{left:calc(var(--race-end) - 58px)}@keyframes public-race-pack{0%{left:12%}24%{left:30%}45%{left:48%}66%{left:53%}to{left:calc(var(--race-end) - 58px)}}.game-race-key{overflow-wrap:anywhere;flex-wrap:wrap;gap:12px 20px;margin:20px 0 0;padding:0;font-size:14px;list-style:none;display:flex}.game-race-key b,.public-game-page .site-header nav [aria-current=page]{color:var(--orange)}@media (max-width:900px){.public-game{grid-template-columns:1fr;gap:24px}.public-game-page .site-header{flex-wrap:wrap;gap:6px;padding-block:16px}.public-game-page .site-header nav{flex-wrap:wrap;gap:10px 20px;display:flex}.public-game-page .site-header nav a{font-size:14px;display:block}.public-stage .race-name{max-width:65px}}@media (max-width:560px){.game-editor{padding:18px}.public-stage{min-height:430px}.public-stage .motion-status{font-size:14px;inset-inline:12px}.public-race .public-stage{min-height:550px}}@media (prefers-reduced-motion:reduce){.public-stage .race-track{width:auto;inset:0;transform:none!important}.public-stage .play-ladder-trace{stroke-dashoffset:0;animation:none}}.play-site-header{z-index:20;flex-wrap:wrap;position:relative}.play-site-header nav{flex-wrap:wrap;gap:20px}.family-site-bar{border-bottom:var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:0 20px;padding:4px 0;font-size:12px;display:flex}.family-site-bar a{min-height:44px;color:var(--ink);align-items:center;gap:10px;display:inline-flex}.family-site-bar a:hover{color:var(--orange)}html:lang(en) .hero h1,html:lang(ja) .hero h1{font-size:clamp(52px,6vw,92px);line-height:1.1}html:lang(ja) body{font-family:var(--font-instrument-sans), "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif}@media (max-width:900px){.site-header.play-site-header{gap:10px;padding-block:14px}.site-header.play-site-header nav{flex-basis:100%;order:3;justify-content:center;gap:6px 18px}.site-header.play-site-header nav a{min-height:40px;font-size:12px;display:block}.family-site-bar>span{display:none}.family-site-bar{justify-content:flex-end}}.analytics-settings{z-index:30;border:var(--line);background:var(--surface);color:var(--muted);cursor:pointer;border-radius:24px;min-height:44px;padding:10px 14px;font-size:12px;position:fixed;bottom:14px;left:14px}.analytics-consent{z-index:100;border:var(--line);background:var(--surface);max-width:660px;box-shadow:var(--shadow);border-radius:16px;gap:14px;max-height:60dvh;margin:auto;padding:20px;display:grid;position:fixed;inset:auto 16px 16px;overflow:auto}.analytics-consent p{color:var(--muted);margin:8px 0 0;font-size:13px;line-height:1.65}.analytics-buttons{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.analytics-buttons button{border:var(--line);background:var(--surface);min-height:44px;color:var(--ink);cursor:pointer;border-radius:10px;padding:10px 16px}.analytics-buttons button:last-child{background:var(--ink);color:var(--surface)}:root{--accent:var(--orange);--accent-text:#a43a11;--text:var(--ink);--border:var(--line-color);--control-radius:14px;--panel-radius:24px}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.dandy-select-field{gap:10px;min-width:0;display:grid}.dandy-select-label{color:var(--text);font-size:1rem;font-weight:650}.dandy-select{min-width:0;position:relative}.dandy-select-trigger{border:1px solid var(--border);background:var(--surface);width:100%;min-height:48px;color:var(--text);text-align:left;cursor:pointer;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:10px 14px;font-size:.875rem;transition:background .16s,border-color .16s;display:flex}.dandy-select-trigger>span:first-child{overflow-wrap:anywhere;min-width:0}.dandy-select-trigger:hover:not(:disabled),.dandy-select.is-open .dandy-select-trigger{border-color:var(--accent-text);background:color-mix(in srgb, var(--accent) 8%, var(--surface))}.dandy-select-trigger:disabled{cursor:not-allowed;opacity:.55}.dandy-select-chevron{border-bottom:1.5px solid;border-right:1.5px solid;flex:0 0 7px;width:7px;height:7px;margin:-4px 2px 0;transition:transform .16s;display:block;transform:rotate(45deg)}.is-open .dandy-select-chevron{transform:translateY(3px)rotate(225deg)}.dandy-select-options{z-index:60;overscroll-behavior:contain;border:1px solid var(--accent-text);background:var(--surface-raised);border-radius:15px;gap:3px;width:100%;max-height:270px;padding:7px;animation:.16s ease-out dandy-unfold;display:grid;position:absolute;top:calc(100% + 8px);left:0;overflow-y:auto;box-shadow:0 16px 46px #24231f29}.dandy-select-options[hidden]{display:none}.dandy-select-options button{width:100%;min-height:44px;color:var(--text);text-align:left;overflow-wrap:anywhere;cursor:pointer;background:0 0;border:0;border-radius:9px;grid-template-columns:13px minmax(0,1fr);align-items:center;gap:9px;padding:10px 11px;font-size:.875rem;line-height:1.45;display:grid}:is(.dandy-select-options button:hover,.dandy-select-options button:focus-visible){background:color-mix(in srgb, var(--accent) 8%, var(--surface-raised))}.dandy-select-options button[aria-selected=true]{background:color-mix(in srgb, var(--accent) 16%, var(--surface-raised));font-weight:650}.dandy-select-option-dot{border:1px solid var(--border);border-radius:50%;width:6px;height:6px}[aria-selected=true]>.dandy-select-option-dot{border-color:var(--accent-text);background:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 16%, transparent)}.dandy-select--pill{flex:none;width:114px}.dandy-select--pill .dandy-select-trigger{border-radius:999px;min-height:44px}.dandy-select--pill .dandy-select-options{border-radius:17px;width:164px;left:auto;right:0}@keyframes dandy-unfold{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.dandy-button{border:1px solid var(--text);border-radius:var(--control-radius);cursor:pointer;justify-content:center;align-items:center;gap:16px;min-height:48px;padding:10px 18px;font-size:.875rem;font-weight:650;line-height:1.45;transition:background .16s,color .16s,transform .16s}.dandy-button:not(.wheel-spin-button){display:inline-flex}.dandy-button--primary{background:var(--text);color:var(--surface)}.dandy-button--secondary{border-color:var(--border);background:var(--surface);color:var(--text);border-radius:12px}.dandy-button--primary:hover:not(:disabled){background:var(--accent);color:var(--text);transform:translateY(-1px)}.dandy-button--secondary:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 8%, var(--surface));border-color:var(--accent-text)}.dandy-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.dandy-button-label{overflow-wrap:anywhere;min-width:0}.dandy-button-icon{flex:0 0 24px;place-items:center;width:24px;height:24px;display:inline-grid}.dandy-button.spin-button{justify-content:space-between;min-height:56px;padding:8px 9px 8px 19px;font-size:1rem}.spin-button .dandy-button-icon{background:var(--accent);width:38px;height:38px;color:var(--ink);border-radius:10px;flex-basis:38px;font-size:1.25rem}.roulette-actions .dandy-button{min-height:48px;font-size:.875rem}.roulette-actions .dandy-button span{color:inherit}.roulette-actions .dandy-button-icon{color:var(--accent-text)}.analytics-buttons .dandy-button{padding:10px 16px;font-size:.875rem}.analytics-buttons .dandy-button--primary:hover{background:var(--accent);color:var(--ink)}.dandy-button:focus-visible{outline:2px solid var(--accent-text);outline-offset:3px}.dandy-select-trigger:focus-visible{outline:2px solid var(--accent-text);outline-offset:3px}.dandy-select-options button:focus-visible{outline:2px solid var(--accent-text);outline-offset:3px}.ui-arrow-up-right{color:currentColor;flex:none;width:.82em;height:.82em;display:inline-block;position:relative}.ui-arrow-up-right:before{content:"";border-top:.105em solid;border-right:.105em solid;border-radius:.03em;width:.48em;height:.48em;position:absolute;top:.03em;right:.03em}.ui-arrow-up-right:after{content:"";background:currentColor;border-radius:999px;width:.8em;height:.105em;position:absolute;top:.34em;right:.02em;transform:rotate(-45deg)}.dandy-local-badge{color:var(--accent-text);align-items:center;gap:9px;font-size:.875rem;font-weight:650;display:inline-flex}.dandy-local-badge>span{background:var(--accent);width:7px;height:7px;box-shadow:0 0 0 5px color-mix(in srgb, var(--accent) 12%, transparent);border-radius:50%;flex:0 0 7px}.game-privacy{border-top:var(--line);gap:12px;margin-top:24px;padding-top:20px;display:grid}.dandy-workbench{border:var(--line);border-radius:var(--panel-radius);background:var(--surface)}.game-editor{padding:28px}.game-editor textarea,.roulette-controls textarea{border:var(--line);border-radius:var(--control-radius);background:var(--surface-raised);padding:16px;font-size:1rem;line-height:1.7}.game-editor textarea:focus,.roulette-controls textarea:focus{border-color:var(--accent-text);outline:2px solid color-mix(in srgb, var(--accent) 25%, transparent);outline-offset:2px}.game-editor textarea[aria-invalid=true],.roulette-controls textarea[aria-invalid=true]{border-color:#a33215}.game-editor textarea:disabled,.roulette-controls textarea:disabled{opacity:.65;cursor:not-allowed}.roulette-controls>label,.roulette-controls>p,.input-format{font-size:.875rem;line-height:1.6}.roulette-mode button{min-height:44px;font-size:.875rem}.tool-notes li{padding:9px 12px;font-size:.75rem;font-weight:500}.tool-notes .dandy-local-badge{font-size:.75rem}.panel-caption{letter-spacing:.06em;min-height:48px;font-size:.75rem}.game-all-results{background:var(--surface);border-radius:14px}.game-all-results summary{align-content:center;min-height:44px}.game-hero{border-bottom:var(--line);grid-template-columns:minmax(0,1.5fr) minmax(220px,1fr);align-items:center;gap:clamp(24px,4vw,64px);margin-bottom:30px;padding:28px 0 36px;display:grid}.game-hero--roulette{grid-template-columns:minmax(0,1fr)}.game-hero-copy{min-width:0}.game-back-link{min-height:44px;color:var(--muted);align-items:center;gap:10px;font-size:.875rem;display:inline-flex}.game-back-link:hover{color:var(--accent-text)}.game-hero-eyebrow{color:var(--ink);flex-wrap:wrap;align-items:center;gap:12px;margin:12px 0 20px;font-size:.875rem;font-weight:650;display:flex}.game-hero-eyebrow>span:first-child{border:var(--line);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.game-hero-free{border-left:var(--line);color:var(--muted);padding-left:12px;font-size:.75rem;font-weight:500}.game-hero h1{letter-spacing:-.055em;overflow-wrap:anywhere;margin:0;font-size:clamp(2.4rem,4.2vw,4rem);font-weight:620;line-height:1.13}.game-hero h1 em{color:var(--orange);font-style:normal}.game-hero-description{max-width:620px;color:var(--muted);margin:20px 0 0;font-size:1rem;line-height:1.7}.game-hero-art{justify-self:center;width:100%;max-width:420px}.game-hero-art img{aspect-ratio:3/2;object-fit:contain;mix-blend-mode:multiply;width:100%;height:auto;display:block}@media (max-width:900px){.game-hero{grid-template-columns:minmax(0,1.4fr) minmax(180px,.8fr);gap:20px}.game-hero--roulette{grid-template-columns:minmax(0,1fr)}.game-hero h1{font-size:clamp(2rem,4.8vw,3rem)}.game-hero-description{font-size:1rem}.site-header.play-site-header nav a{min-height:44px;font-size:.875rem}}@media (max-width:560px){.game-hero{grid-template-columns:minmax(0,1fr) 100px;gap:12px;margin-bottom:24px;padding:14px 0 24px}.game-hero-copy{display:contents}.game-back-link,.game-hero-eyebrow,.game-hero-description{grid-column:1/-1}.game-hero-eyebrow{gap:8px;margin:0 0 4px}.game-hero h1{grid-column:1;font-size:clamp(1.75rem,6vw,2.1rem);line-height:1.2}.game-hero-art{grid-area:3/2}.game-hero-description{margin:4px 0 0}.game-hero--roulette{grid-template-columns:minmax(0,1fr)}.game-hero--roulette h1{font-size:2.4rem}.game-editor{padding:20px}.panel-caption{letter-spacing:0;grid-template-columns:28px 1fr auto;gap:6px;padding-inline:12px;font-size:.75rem}}@media (prefers-reduced-motion:reduce){.dandy-select-options{animation:none}.dandy-select-chevron,.dandy-button{transition:none}.dandy-button:hover:not(:disabled){transform:none}}
