@font-face{font-family:DM;src:url('../play-lab/fonts/dm-sans-700.ttf');font-weight:700;font-display:swap}:root{font-family:DM,'Hiragino Kaku Gothic ProN',system-ui,sans-serif;color:#f4f1e5;background:#142e4b;--orange:#ed8936;--teal:#319795;--navy:#1a365d}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent;font:inherit;color:inherit}button{cursor:pointer;border:0}a{text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #ed8936;outline-offset:3px}[hidden]{display:none!important}.app{height:100svh;display:flex;flex-direction:column;background:radial-gradient(ellipse at 45% 60%,#264961,#142e4b 75%)}header{height:56px;padding:0 30px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;border-bottom:1px solid #ffffff18}header>a{display:flex;align-items:center;gap:24px}header img{width:126px}header span{font-size:9px;letter-spacing:2px;color:#95b4be}nav{display:flex;gap:18px;align-items:center;font-size:10px}nav button{min-height:40px;min-width:32px;background:none}nav #sound{font-size:9px;letter-spacing:1px}.layout{display:grid;grid-template-columns:minmax(210px,1fr) minmax(360px,640px) minmax(160px,.75fr);gap:clamp(18px,3vw,45px);padding:28px clamp(22px,4vw,60px);flex:1;min-height:0}.editorial{padding-top:40px;align-self:center}.eyebrow{font-size:9px;letter-spacing:2px;line-height:1.8;color:#8fb9b8}.editorial h1{font-size:clamp(62px,6.8vw,100px);letter-spacing:-6px;line-height:.9;margin:30px 0}.editorial h1 em{font-style:normal;color:#f5a35a}.editorial h1 i{display:block;font-style:normal;font-size:15px;letter-spacing:1px;margin-top:24px}.intro{font-size:12px;color:#b1c5c9;line-height:2}.rule{display:flex;gap:19px;align-items:center;margin-top:25px}.rule>b{color:#6f919e;font-size:13px}.rule p{font-size:11px;line-height:1.8;margin:0;color:#d0dbd9}.signature{font-size:8px;color:#779ca5;letter-spacing:1.6px;margin-top:45px}.machine{min-height:0;display:flex;flex-direction:column;border:1px solid #ffffff3b;border-radius:24px;background:#ede9dc;box-shadow:0 22px 0 #0c2238,0 35px 50px #0b1d3370;overflow:hidden;color:var(--navy)}.machine-top{padding:19px 23px 13px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.machine-top p{font-size:8px;letter-spacing:1.5px;margin:0 0 4px;color:#6b8586}.machine-top h2{font-size:28px;letter-spacing:-1.4px;margin:0}.machine-top h2 span{color:#319795}.score{display:flex;flex-direction:column;text-align:right}.score small{font-size:8px;letter-spacing:2px;color:#728786}.score b{font-size:28px;line-height:1.1}.statusbar{display:flex;justify-content:space-between;align-items:center;padding:10px 23px;background:#dcded3;flex-shrink:0;font-size:8px;letter-spacing:1px}#lives{color:#c57b3e;letter-spacing:4px;font-size:10px}main{position:relative;flex:1;min-height:0;background:radial-gradient(ellipse at 45% 30%,#eceddf,#c4d4cb);overflow:hidden}canvas{display:block;width:100%;height:100%;touch-action:none;outline:0}.cover{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:center;padding:22px 24px 34px;pointer-events:none;background:linear-gradient(0deg,#c4d4cbee,transparent 75%)}.cover-card{width:100%;max-width:370px;padding:24px;border:1px solid #fff9;background:#f8f6ebe8;backdrop-filter:blur(12px);box-shadow:0 12px 40px #244d5733;border-radius:16px;pointer-events:auto}.cover-card .eyebrow{color:#319795;font-size:8px;margin:0 0 9px}.cover-card h3{font-size:30px;letter-spacing:-1px;margin:0 0 12px}.cover-card h3 em{font-style:normal;color:#c97d3e}.cover-card>p:not(.eyebrow){font-size:11px;line-height:1.9;color:#667e7c}.primary{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:49px;padding:14px 17px;border-radius:8px;background:#1a365d;color:#f8f4e7;font-weight:bold;font-size:14px}.primary span{color:#f5b676;font-size:20px}.cover-card>small{display:block;text-align:center;font-size:9px;color:#7c8d84;margin-top:11px}.toast{position:absolute;bottom:11px;left:50%;transform:translateX(-50%);background:#173953ed;color:#f9f4df;padding:9px 14px;border-radius:30px;font-size:10px;white-space:nowrap;pointer-events:none;margin:0}.app:not([data-playing]) .toast{visibility:hidden}.combo{position:absolute;top:43%;left:50%;transform:translateX(-50%);text-align:center;pointer-events:none;color:#1a365d30}.combo b{display:block;font-size:76px;line-height:1;letter-spacing:-3px}.combo span{font-size:9px;letter-spacing:3px}.power{position:absolute;left:50%;top:8px;transform:translateX(-50%);background:#fff3ce;color:#805326;padding:8px 12px;border-radius:6px;font-size:9px;white-space:nowrap;pointer-events:none}footer{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:11px 23px;gap:10px;background:#f0ecdf}footer>div{display:flex;flex-direction:column;gap:4px}footer b{font-size:9px;letter-spacing:1px;color:#319795}footer span{font-size:8px;color:#7b8a81}footer button{min-height:40px;min-width:88px;padding:8px 15px;border-radius:7px;background:#ed8936;font-size:12px;color:#142e4b}footer button:disabled{background:#d9ddcf;color:#87958b;cursor:default}.details{align-self:center}.details>.eyebrow{font-size:8px}.stages{display:flex;flex-direction:column;gap:11px;margin-top:20px}.stages button{display:flex;align-items:center;gap:15px;padding:16px 15px;background:#ffffff07;border:1px solid #ffffff22;border-radius:10px;text-align:left;min-height:73px}.stages button.selected{border-color:#d3bc90;background:#f3dca111}.stages b{font-size:25px;color:#e9d5b2;letter-spacing:-1px}.stages span{font-size:10px;line-height:1.6;letter-spacing:1px}.stages i{font-size:7px;font-style:normal;color:#6e929f;margin-left:auto}.stages .selected i{color:#ed8936}.power-guide{border-top:1px solid #ffffff20;padding-top:24px;margin-top:34px}.power-guide>p:not(.eyebrow){display:flex;align-items:center;gap:12px;font-size:9px;color:#a9c1c3}.power-guide kbd{font-family:inherit;font-size:8px;display:inline-grid;place-items:center;min-width:48px;height:27px;border-radius:5px;background:#e8e4d2;color:#345366;box-shadow:0 3px 0 #91a29b}.note{font-size:10px;line-height:1.9;color:#7f9fa8;margin-top:29px}dialog{width:min(92vw,410px);max-height:90svh;overflow:auto;border:0;border-radius:18px;padding:29px;color:#1a365d;background:#f7f4e8;box-shadow:0 30px 100px #0b243877}dialog::backdrop{background:#112d4cb0;backdrop-filter:blur(6px)}dialog .eyebrow{color:#319795}dialog h2{font-size:32px;line-height:1.2;letter-spacing:-1px;margin:17px 0}dialog p{font-size:12px;line-height:1.9}.big{font-size:63px;color:#c88146;font-weight:bold;letter-spacing:-3px}.big small{font-size:12px;color:#728881;letter-spacing:0}.result-stats{display:flex;justify-content:space-between;border-block:1px solid #d4dbce;padding:13px 0;font-size:11px;margin:15px 0 22px}.secondary{width:100%;background:none;padding:13px;margin-top:6px;font-size:11px}.stage-picker{display:flex;gap:7px;margin:14px 0}.stage-picker button{flex:1;background:#e2e7d9;color:#1a365d;padding:12px;border-radius:6px;font-size:11px}#error{position:absolute;inset:0;background:white;padding:30px;z-index:10}
@media(max-width:1050px){.layout{grid-template-columns:minmax(0,1fr) minmax(330px,590px);padding:20px 25px;gap:25px}.details{display:none}.editorial h1{font-size:70px}.editorial .eyebrow{font-size:8px}}
@media(max-width:700px){header{height:43px;padding:0 15px}header img{width:105px}header span{display:none}nav{gap:12px}nav #sound{font-size:8px}.layout{display:flex;min-height:0;padding:8px 8px 15px}.editorial{display:none}.machine{width:100%;border-radius:16px;box-shadow:0 6px 0 #0c2238}.machine-top{padding:10px 16px 9px}.machine-top h2{font-size:24px}.machine-top p{font-size:7px}.score b{font-size:25px}.statusbar{padding:8px 16px;font-size:7px}.cover{padding:15px 20px 20px}.cover-card{padding:19px}.cover-card h3{font-size:27px}.cover-card>p:not(.eyebrow){font-size:10px}.cover-card .eyebrow{font-size:7px}.cover-card>small{font-size:8px}footer{padding:8px 16px}footer button{min-height:40px}footer b{font-size:8px}footer span{font-size:8px}.combo b{font-size:57px}}
@media(max-height:620px){header{height:36px}.layout{padding-top:5px;padding-bottom:8px}.machine-top{padding:6px 14px}.machine-top p{display:none}.machine-top h2{font-size:20px}.statusbar{padding:6px 14px}.cover{padding:10px 18px}.cover-card{padding:14px}.cover-card h3{font-size:24px;margin-bottom:6px}.cover-card>p:not(.eyebrow){margin:5px 0 9px}.cover-card>small{margin-top:6px}.primary{min-height:43px;padding:9px 14px}footer{padding:5px 14px}.editorial .rule,.editorial .signature{display:none}}
