@import url('https://fonts.googleapis.com/css2?family=Bangers&family=Barlow+Condensed:wght@700;800;900&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--ink:#102b32;--mint:#cafa65;--muted:#9cb8bb}*{box-sizing:border-box}body{margin:0;background:#0a1d23;color:#ecf5ec;font-family:'DM Sans',sans-serif;background-image:radial-gradient(ellipse at 75% 0,#1d4547,transparent 55%)}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.4}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:3px solid #fff;outline-offset:3px}main{max-width:1250px;margin:auto;padding:24px 40px}header{display:flex;align-items:center;justify-content:space-between;gap:15px}.back{color:var(--mint);font-weight:800;letter-spacing:2px;text-decoration:none;font-size:12px}.edition,.eyebrow{font-size:10px;font-weight:800;letter-spacing:2px;color:var(--muted)}header button,#restart{background:transparent;border:1px solid #486269;color:#c9dad9;border-radius:6px;padding:8px 12px;font-size:11px}.title-row{display:flex;justify-content:space-between;align-items:center;margin:30px 0 22px}.title-row .eyebrow{margin:0 0 8px;color:var(--mint)}h1{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(52px,8vw,92px);line-height:.9;letter-spacing:-2px;margin:0;font-weight:900}h1 span{color:var(--mint)}.subtitle{font-size:13px;line-height:1.7;color:#b5cdcc}.game{border:1px solid #3a555a;border-radius:14px;overflow:hidden;box-shadow:0 24px 80px #0005;background:var(--ink)}.hud{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;gap:12px}.hud .eyebrow{display:block;font-size:8px;margin-bottom:5px}.hud strong{font-size:13px}#wind{font-size:12px;background:#203e43;padding:8px 12px;border-radius:30px}.record{font-size:9px;color:var(--muted);letter-spacing:1px}.record strong{color:var(--mint);margin-left:8px}.arena{position:relative;background:#9bd9cf}canvas{display:block;width:100%;height:auto;touch-action:none}.overlay{position:absolute;inset:0;display:grid;place-items:center;background:#062b3266;backdrop-filter:blur(3px)}.overlay[hidden]{display:none}.modal{background:#102b32f5;box-shadow:0 16px 60px #001b3266;border:1px solid #75916e;border-radius:14px;padding:28px 32px;text-align:center;width:440px;max-width:92%;max-height:96%;overflow:auto}.modal .eyebrow{color:var(--mint);font-size:9px}h2{font-family:'Barlow Condensed',Impact,sans-serif;font-size:58px;line-height:.95;text-transform:uppercase;margin:16px 0}.modal p{font-size:12px;line-height:1.6;color:#b7cbca}.primary{border:0;background:var(--mint);color:#172d20;border-radius:7px;padding:17px 20px;font-weight:900;font-size:12px;letter-spacing:.7px;box-shadow:0 4px 0 #85a944}.primary:hover:not(:disabled){background:#defb99;transform:translateY(-1px)}.modal .primary{width:100%;margin-top:8px}.modal .modal-tip{font-size:9px;margin-bottom:0}.status{padding:10px 22px;background:#19373d;display:flex;justify-content:space-between;gap:12px;font-size:11px}#turn{color:var(--mint)}#health{white-space:nowrap;font-weight:800}.console{display:grid;grid-template-columns:1.6fr 1fr .9fr;gap:24px;padding:24px 22px}.console .eyebrow{display:block;font-size:8px;margin-bottom:13px}.weapons{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.weapons button{min-width:0;background:#1b383e;border:1px solid #3a5356;border-radius:7px;color:#c2d2d0;padding:9px 3px}.weapons button[aria-pressed=true]{border-color:var(--mint);background:#2d453b;color:var(--mint)}.weapons span{display:block;font-size:25px;margin-bottom:6px}.weapons b{font-size:9px;display:block;line-height:1.3;min-height:24px}.weapons small{font-size:8px;display:block;margin-top:5px;color:var(--muted)}.aim label{display:flex;justify-content:space-between;font-size:9px;color:#b9cecb;font-weight:700}.aim output{color:var(--mint)}input[type=range]{width:100%;accent-color:var(--mint);margin:9px 0 12px;height:15px}.fire-box{display:flex;flex-direction:column;justify-content:center;gap:15px;text-align:center}.fire-box span{font-size:9px;color:var(--muted)}footer{padding:17px 2px;font-size:10px;color:#94aeb0;line-height:1.8}footer b{color:#d1ded9;margin-right:12px;font-size:9px}footer div{display:flex;justify-content:space-between;align-items:center;gap:12px}.credit{opacity:.6;font-size:9px}#upgrades{display:flex;gap:8px}#upgrades button{flex:1;border:1px solid #71896b;background:#24413d;padding:12px 6px;color:#e5f3db;border-radius:6px;font-size:11px}#upgrades button.selected{border-color:var(--mint);background:#48632e}@media(max-width:750px){main{padding:16px 12px}.edition{display:none}.title-row{margin:28px 0 20px}.subtitle{font-size:10px}.console{grid-template-columns:1fr 1fr;gap:16px;padding:16px}.arsenal{grid-column:1/-1}.weapons b{font-size:10px;min-height:0}.weapons small{font-size:9px}.weapons span{font-size:23px}.hud{padding:12px}.hud strong{font-size:11px}.record{display:none}.status{padding:10px 12px;font-size:10px}#wind{font-size:10px}.modal{padding:15px 20px}h2{font-size:34px;margin:8px 0}.modal p{font-size:11px;margin:8px 0}.modal .eyebrow{font-size:8px}.modal .primary{padding:12px}.modal-tip{display:none}.arena{min-height:0}canvas{height:auto}.overlay{position:fixed;z-index:10;padding:20px}.modal{max-height:90dvh}footer div>span{max-width:220px;font-size:9px}.primary{padding:16px 8px;font-size:10px}#upgrades button{padding:8px 4px}}@media(prefers-reduced-motion:reduce){.primary:hover:not(:disabled){transform:none}}

/* Original Flash-era menu composition, redrawn for Captain Tom. */
.classic-menu[hidden],.classic-score-panel[hidden]{display:none}
.on-menu{background:#272a30}
.on-menu main{max-width:1100px;padding-top:20px}
.on-menu .title-row,.on-menu .game,.on-menu footer,.on-menu .edition,.on-menu #menu-home{display:none}
.on-menu header{margin-bottom:18px}
.on-menu .back{color:#fff477}
#menu-home{background:transparent;border:1px solid #486269;color:#c9dad9;border-radius:6px;padding:8px 12px;font-size:11px}
.classic-menu{position:relative;isolation:isolate;aspect-ratio:4/3;width:100%;background:#ffe000;overflow:hidden;border:3px solid #131619;box-shadow:0 12px 40px #0006;container-type:inline-size}
.menu-art{position:absolute;inset:0;width:100%;height:100%}
.classic-logo{position:absolute;top:2%;left:1%;width:98%;margin:0;text-align:center;font-family:'Bangers',Impact,sans-serif;font-size:20cqw;line-height:1;letter-spacing:.2cqw;font-style:italic;color:#ffff88;-webkit-text-stroke:1.4cqw #050505;paint-order:stroke fill;text-shadow:.55cqw 1cqw 0 #9c8e11;transform:rotate(-1deg);white-space:nowrap}
.classic-byline{position:absolute;top:25%;right:7%;font-family:'Bangers',Impact,sans-serif;font-size:2cqw;color:#514614;letter-spacing:.2cqw;transform:rotate(-2deg)}
.classic-actions{position:absolute;right:3%;top:53%;width:49%;display:flex;flex-direction:column;align-items:flex-end;gap:.6cqw}
.comic-button{border:0;border-radius:0;background:none;padding:0 1cqw;color:#030303;font-family:'Bangers',Impact,sans-serif;font-size:8.3cqw;line-height:1.18;letter-spacing:.1cqw;font-style:italic;text-decoration:none;-webkit-text-stroke:1.2cqw #ffff99;paint-order:stroke fill;filter:drop-shadow(.4cqw .6cqw 0 #303223);white-space:nowrap;transition:transform .12s,color .12s;box-shadow:none}
#menu-play{font-size:12.5cqw;margin-right:1cqw}
.classic-actions .comic-button:hover,.classic-actions .comic-button:focus-visible{color:#773c17;transform:rotate(-3deg) scale(1.04)}
.classic-menu .comic-button:focus-visible{outline:3px dashed #402c11;outline-offset:5px}
.classic-credit{position:absolute;bottom:1.2%;left:2%;color:#2a2d15;font-family:Arial,sans-serif;font-size:1.5cqw}
.classic-score-panel{position:absolute;inset:30% 11% 7%;background:#fff291;border:5px solid #1b1c16;box-shadow:8px 9px 0 #0005;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#222615;z-index:2}
.classic-score-panel h3{font-family:'Bangers',Impact,sans-serif;font-size:7cqw;margin:0}.classic-score-panel p{font-size:2cqw;margin:1cqw}.classic-score-panel strong{font-family:'Bangers',Impact,sans-serif;font-size:10cqw}.classic-score-panel .comic-button{font-size:6cqw;margin-top:1cqw}
.menu-captain{animation:captain-bob 3s ease-in-out infinite;transform-origin:25% 85%}
@keyframes captain-bob{50%{transform:translateY(-5px) rotate(-.5deg)}}
@media(max-width:750px){.on-menu main{padding:12px 6px}.on-menu header{padding:0 7px;margin-bottom:14px}.classic-menu{border-width:2px}.classic-score-panel{border-width:3px}.classic-score-panel p{font-size:2.6cqw}.classic-credit{font-size:1.65cqw}}
@media(prefers-reduced-motion:reduce){.menu-captain{animation:none}.comic-button{transition:none}}
/* Battle presentation: a 4:3 scrolling world with controls inside the game. */
body:not(.on-menu){background:#272a30}body:not(.on-menu) main{max-width:1100px}.title-row{display:none}header{margin-bottom:18px}.classic-battle{border:3px solid #171a1d;border-radius:0;background:#315c67}.classic-battle .arena{aspect-ratio:4/3}.classic-battle canvas{width:100%;height:auto}.battle-top{position:absolute;left:3%;right:3%;top:4%;display:flex;align-items:start;justify-content:space-between;pointer-events:none}.battle-top .weapons{display:flex;gap:8px;pointer-events:auto}.battle-top .weapons button{width:65px;height:69px;border:2px solid #f6ffffaa;border-radius:9px;background:#abc3ca99;color:#20313b;padding:3px;position:relative}.battle-top .weapons button[aria-pressed=true]{border-color:#fff9b1;box-shadow:0 0 6px 3px #ffffca;background:#e5eda9b0}.battle-top .weapons span{font-size:31px;margin:0}.battle-top .weapons b{font-size:8px;min-height:0}.battle-top .weapons small{position:absolute;right:3px;bottom:1px;font-size:11px;font-weight:900;color:#142f45}.battle-brand{font-family:'Bangers',Impact,sans-serif;color:#f8ffad;font-size:30px;text-shadow:2px 3px #6d8577}.battle-bottom{position:absolute;left:3%;right:3%;bottom:3%;display:flex;justify-content:space-between;pointer-events:none}.battle-bottom button{pointer-events:auto;background:transparent;border:0;color:#fffce9;font-family:'Bangers',Impact,sans-serif;font-size:24px;text-shadow:2px 3px #45437a}#fire{color:#fff47a;font-size:32px}.classic-battle .status{font-size:11px;padding:10px 15px}.precision{background:#253b46}.precision summary{padding:12px 16px;font-size:11px;cursor:pointer;color:#d2dedc}.precision summary span{float:right}.precision .console{display:grid;grid-template-columns:1fr 1.7fr auto;padding:15px;align-items:center;font-size:11px;line-height:1.6}.classic-battle .overlay{position:absolute;inset:0;backdrop-filter:none;background:#51809188;padding:15px}.classic-battle .modal{max-width:90%;width:680px;background:#fff9d9;color:#263433;border:4px solid #596459;box-shadow:7px 8px #0004;border-radius:14px;padding:20px;max-height:94%;overflow:auto}.classic-battle .modal h2{font-family:'Bangers',Impact,sans-serif;color:#ed8c22;text-shadow:2px 2px #855b36;font-size:52px;margin:10px 0}.classic-battle .modal p{color:#3f4a39;font-size:14px}.classic-battle .modal .eyebrow{color:#746635}.classic-battle .modal .primary{background:#ffe866;box-shadow:0 4px #b29427;color:#27261b;font-family:'Bangers',Impact,sans-serif;font-size:24px;padding:10px}.classic-battle .modal-tip{display:block}.classic-battle #modal-tip{font-size:11px}.classic-battle #skip-story{background:none;border:0;color:#66572a;font-size:12px;margin:14px auto 0}.classic-battle #upgrades{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.classic-battle #upgrades button{color:#364637;background:#e9e6a7;border:2px solid #a1aa73;font-size:12px;padding:12px}.classic-battle #upgrades button:disabled{opacity:.45}.classic-battle .briefing{background:transparent;align-items:start;pointer-events:none}.classic-battle .briefing .modal{pointer-events:auto;background:#ffa146;border:3px solid #ffffda;border-radius:22px;margin-top:2%;width:600px;padding:8px 20px;box-shadow:3px 5px #0004}.classic-battle .briefing h2{display:inline;font-size:42px;color:#ffff66;text-shadow:2px 3px #9d6a19}.classic-battle .briefing .eyebrow{display:block;color:#fff;font-size:11px}.classic-battle .briefing #modal-text{color:#fff;font-weight:900;margin:4px}.classic-battle .briefing #start{background:none;box-shadow:none;padding:0;margin:0;color:#fff969;font-size:24px}.classic-battle .briefing #modal-tip{display:none}.classic-battle .story .modal{align-self:start;margin-top:2%;background:#fffced}.classic-battle .story h2{font-size:36px}.classic-battle .story .modal p{font-size:16px}.classic-battle .story .modal{width:650px}.classic-battle .overlay[hidden]{display:none!important}
@media(max-width:750px){body:not(.on-menu) main{padding:12px 6px}.edition{display:none}.classic-battle{border-width:2px}.battle-top .weapons{gap:5px}.battle-top .weapons button{width:38px;height:42px;border-radius:5px}.battle-top .weapons span{font-size:20px}.battle-top .weapons b{display:none}.battle-top .weapons small{font-size:9px}.battle-brand{font-size:18px}.battle-bottom button{font-size:15px}#fire{font-size:21px}.classic-battle .status{font-size:9px;padding:8px}.classic-battle .overlay{padding:4px}.classic-battle .modal{padding:10px;border-width:2px;max-width:95%;border-radius:8px}.classic-battle .modal h2{font-size:28px;margin:4px 0}.classic-battle .modal p{font-size:10px;margin:6px 0}.classic-battle .modal .eyebrow{font-size:7px;letter-spacing:1px}.classic-battle .modal .primary{font-size:18px;padding:5px;margin-top:4px}.classic-battle #modal-tip{font-size:8px;margin:4px 0}.classic-battle #upgrades{gap:5px}.classic-battle #upgrades button{font-size:9px;padding:7px 4px}.classic-battle .briefing .modal{width:84%;padding:6px}.classic-battle .briefing h2{font-size:25px}.classic-battle .briefing #start{font-size:16px}.classic-battle .story h2{font-size:24px}.classic-battle .story .modal p{font-size:11px}.classic-battle #skip-story{font-size:10px;margin-top:6px}.precision .console{grid-template-columns:1fr;font-size:10px}.precision summary{font-size:10px}.precision summary span{font-size:9px}.battle-bottom{bottom:4%}}

.battle-top[hidden],.battle-bottom[hidden]{display:none!important}
.classic-battle .victory{background:transparent;align-items:start}.classic-battle .victory .modal{position:relative;width:100%;height:100%;max-width:100%;max-height:100%;background:transparent;border:0;box-shadow:none;overflow:hidden}.classic-battle .victory h2{background:#ffa13c;border:3px solid #fffee0;border-radius:25px;padding:10px;width:76%;margin:2% auto;color:#fffb40;font-size:44px}.classic-battle .victory #modal-tag{display:none}.classic-battle .victory #modal-text{position:absolute;bottom:10%;left:16%;width:68%;color:#fff;font-size:16px}.classic-battle .victory #modal-tip{position:absolute;bottom:4%;left:20%;width:60%;color:#fff;font-size:18px}.classic-battle .victory #start{position:absolute;top:20%;left:25%;width:50%;background:none;box-shadow:none;color:#fff437;font-size:26px}.classic-battle .shop{background:transparent;padding:0}.classic-battle .shop .modal{position:relative;width:100%;height:100%;max-width:100%;max-height:100%;background:transparent;border:0;box-shadow:none;overflow:hidden;text-align:left}.classic-battle .shop .eyebrow{position:absolute;top:5%;left:4%;color:#fff}.classic-battle .shop h2{position:absolute;top:8%;left:4%;color:#ffff3f;font-size:44px}.classic-battle .shop #upgrades{position:absolute;right:4%;top:12%;width:37%;display:flex;flex-direction:column;gap:10px}.classic-battle .shop #upgrades button{background:#ffa13c;border:3px solid #fffad9;border-radius:15px;color:#fff72e;text-shadow:1px 2px #895d27;font-family:'Bangers',Impact,sans-serif;font-size:19px;padding:10px 8px;box-shadow:0 3px #c08028}.classic-battle .shop #upgrades button:disabled{background:#8a8f8e;box-shadow:0 3px #5e6c6a;color:#eee;opacity:.85}.classic-battle .shop #modal-text{position:absolute;bottom:18%;right:4%;width:43%;font-family:'Bangers',Impact,sans-serif;font-size:24px;color:#fffb40;text-align:center}.classic-battle .shop #start{position:absolute;bottom:5%;right:4%;width:37%;border:3px solid #fffbdc;border-radius:16px;background:#ffa23c;color:#fffc3e;font-size:36px;text-shadow:2px 2px #a36c25;padding:16px}.classic-battle .shop #modal-tip{position:absolute;bottom:5%;left:4%;width:48%;color:#edf8e0;font-size:12px}@media(max-width:750px){.classic-battle .victory h2{font-size:23px;padding:5px}.classic-battle .victory #start{font-size:18px;top:22%}.classic-battle .victory #modal-text{font-size:10px;bottom:11%}.classic-battle .victory #modal-tip{font-size:11px;bottom:2%}.classic-battle .shop h2{font-size:26px}.classic-battle .shop #upgrades{gap:4px;top:7%;width:40%}.classic-battle .shop #upgrades button{font-size:11px;padding:4px 5px;border-width:2px;border-radius:8px}.classic-battle .shop #start{font-size:23px;padding:6px;border-width:2px;bottom:4%}.classic-battle .shop #modal-text{font-size:13px;bottom:18%}.classic-battle .shop #modal-tip{font-size:8px}.classic-battle .shop .eyebrow{font-size:6px}}

.battle-top .weapons span img{display:block;width:34px;height:34px;object-fit:contain;margin:auto}.battle-top [data-ammo="0"] img,.battle-top [data-ammo="4"] img{border-radius:50%;object-fit:cover}.shop-item-art{display:inline-block;width:28px;height:28px;object-fit:contain;vertical-align:middle;margin-right:7px}.classic-battle .shop #upgrades{top:9%;gap:6px}.classic-battle .shop #upgrades button{padding:7px 6px;font-size:18px}@media(max-width:750px){.battle-top .weapons{gap:3px}.battle-top .weapons button{width:34px;height:40px}.battle-top .weapons span img{width:25px;height:25px}.battle-brand{font-size:16px}.classic-battle .shop #upgrades{top:6%;gap:3px}.classic-battle .shop #upgrades button{font-size:10px;padding:3px}.shop-item-art{width:16px;height:16px;margin-right:3px}.classic-battle .shop #modal-text{bottom:17%;font-size:11px}}

/* Keep the full six-item shop reachable on small screens. */
.shop #upgrades{max-height:66%;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;}
.shop #upgrades button{flex-shrink:0;}
@media(max-width:750px){.shop #upgrades{max-height:61%;}.shop #upgrades button{min-height:32px;}}

/* Stable controls and an explicit scroll cue for the compact shop. */
.classic-battle .status{align-items:center;gap:12px;}.classic-battle #turn{min-width:0;flex:1;}
.precision summary{display:flex;flex-wrap:wrap;justify-content:space-between;gap:5px 12px;}.precision summary span{float:none;}
.shop-scroll-hint{display:none;}.classic-battle .shop #upgrades{scrollbar-width:thin;scrollbar-color:#ffeb76 #526e68;scroll-padding:4px;}
@media(max-width:750px){
 .classic-battle .shop #upgrades{max-height:60%;}
 .classic-battle .shop #upgrades button{min-height:44px;font-size:12px;line-height:1.15;padding:5px;}
 .classic-battle .shop .shop-scroll-hint{display:block;position:absolute;top:67%;right:4%;width:40%;text-align:center;font-size:8px;font-weight:800;color:#fffde4;}
 .classic-battle .shop #modal-text{bottom:17%;font-size:10px;margin:0;}
}

@media(max-width:750px){
 .classic-battle .shop #modal-text{top:25%;bottom:auto;left:4%;right:auto;width:48%;text-align:left;color:#244b4b;font-size:12px;line-height:1.15;}
 .battle-top .weapons button{width:44px;height:46px;}
 .battle-bottom button{min-height:44px;min-width:50px;}
}
@media(max-width:360px){.battle-brand{display:none;}}

/* Local, watermarked finishing-moment replay. */
.replay-tools{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px;padding:12px 16px;background:#19373d;font-size:12px}.replay-tools label{display:flex;align-items:center;gap:8px;min-height:32px;cursor:pointer}.replay-tools input{accent-color:#ffe866}.replay-tools span{color:#c7d7d1;font-size:11px}.replay-panel{padding:14px 16px;background:#132c34}.replay-panel[hidden],#replay-result[hidden]{display:none!important}.replay-panel summary{cursor:pointer;font-weight:800;color:#ffe866;padding:8px 0}.replay-panel video{display:block;width:100%;max-width:640px;aspect-ratio:4/3;margin:12px auto;background:#0a1d23;border-radius:8px}.replay-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px}.replay-actions button,#replay-result{min-height:44px;padding:10px 16px;border:2px solid #fff0a8;border-radius:8px;background:#ffe866;color:#253b34;font-weight:800;font-size:12px}.replay-panel p{font-size:11px;text-align:center;color:#c7d7d1}.classic-battle #replay-result{margin:8px auto}.classic-battle .victory #replay-result{position:absolute;top:34%;left:25%;width:50%}.classic-battle .shop #replay-result{position:absolute;left:4%;bottom:16%;max-width:48%;font-size:11px}
@media(max-width:750px){.replay-tools{font-size:11px;padding:8px 10px}.classic-battle .victory #replay-result{font-size:10px;left:20%;width:60%;top:37%}.classic-battle .shop #replay-result{font-size:9px;padding:6px;bottom:16%}}

.classic-battle .overlay{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.classic-battle .modal{min-width:0}

/* Make the replay action unmistakable without rapid flashing. */
@keyframes replay-beacon{0%,100%{box-shadow:0 0 0 0 #ffe60022,0 4px 0 #8f7900;background:#101010}50%{box-shadow:0 0 0 5px #ffe60066,0 0 24px #ffe60077,0 4px 0 #8f7900;background:#302900}}
.classic-battle #replay-result,.replay-actions #share-replay{background:#101010;color:#ffe600;border:3px solid #ffe600;min-height:56px;font-size:18px;font-weight:900;letter-spacing:.4px;animation:replay-beacon 1.8s ease-in-out infinite;text-shadow:none}
.classic-battle #replay-result{display:block;width:min(100%,380px);margin:12px auto;padding:9px 12px}.classic-battle #replay-result small{display:block;margin-top:3px;font:700 9px/1.3 'DM Sans',sans-serif;letter-spacing:1px;color:#fff5a3}
.replay-actions #share-replay{flex:1 1 230px;max-width:380px}.replay-actions #share-replay:disabled{animation:none}.replay-panel summary{color:#ffe600;font-size:16px}.replay-actions #download-replay{background:transparent;color:#fff1a2;border-color:#728377}
.classic-battle .victory #replay-result{top:35%;left:20%;width:60%;max-width:none;margin:0}.classic-battle .shop #replay-result{left:4%;bottom:15%;width:48%;max-width:48%;font-size:15px}
.replay-link-preview{max-width:640px;margin:20px auto 4px;padding:16px;border:1px dashed #839087;border-radius:10px;background:#1b3439}.replay-link-preview .replay-soon{display:inline-block;padding:4px 7px;border-radius:4px;background:#ffe600;color:#101010;font-size:10px;font-weight:900;letter-spacing:.7px}.replay-link-preview strong{display:block;font-size:19px;color:#fff5b8;margin-top:10px}.replay-link-preview p{text-align:left;line-height:1.6}.replay-link-preview button{width:100%;min-height:44px;padding:10px;border:1px solid #728377;border-radius:6px;background:#253f42;color:#cad2c8;font-size:11px;font-weight:800;opacity:1}.replay-link-preview small{display:block;color:#b3c6bf;font-size:10px;line-height:1.5;margin-top:10px}
@media(max-width:750px){.classic-battle #replay-result,.replay-actions #share-replay{font-size:16px;min-height:52px}.classic-battle .victory #replay-result{top:38%;left:12%;width:76%}.classic-battle .shop #replay-result{font-size:12px;padding:7px 4px;bottom:17%}.classic-battle .shop #replay-result small{font-size:7px;letter-spacing:0}.replay-link-preview{padding:12px}}
@media(prefers-reduced-motion:reduce){.classic-battle #replay-result,.replay-actions #share-replay{animation:none;box-shadow:0 0 0 3px #ffe60055;background:#101010}}

#replay-link-box[hidden]{display:none}#replay-link-box label{display:block;color:#ffe600;font-size:11px;font-weight:900;margin:12px 0 6px}#replay-link{width:100%;min-width:0;box-sizing:border-box;border:1px solid #778a80;border-radius:6px;padding:12px;background:#0a1d23;color:#fff;font-size:13px}.replay-link-actions{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0}.replay-link-actions button,.replay-link-actions a{flex:1;display:block;text-align:center;padding:12px;min-height:44px;border:2px solid #ffe600;border-radius:6px;background:#101010;color:#ffe600;font:800 12px system-ui,sans-serif;text-decoration:none}

.campaign-save-status{margin:0;padding:10px 16px;font-size:11px;line-height:1.5;color:#bed4c8;background:#102b32}
