/* Orbital construction. Functional layout remains in style.css. */
:root{color-scheme:dark;color:#edeae5;background:#090b10;font-family:Inter,"Segoe UI",Arial,sans-serif}
body{background:radial-gradient(ellipse at 50% 22%,#28292e 0,transparent 53%),#090b10}
button,input{font-family:inherit}button:focus-visible,input:focus-visible{outline:2px solid #dcad87;outline-offset:3px}
.phone-shell{box-shadow:inset 0 0 0 2px #ffffff20,0 30px 90px #0009,0 3px 8px #0008}
.phone-screen{background:#101217;border-color:#07090c}.phone-status{color:#deddd9;font-weight:600}.home-indicator{background:#d1d1d0}
.game{gap:14px;padding-top:6px}.brand{gap:10px}.brand>svg{width:27px;height:27px;color:#c28e69}.brand h1{font-size:25px;letter-spacing:-1px;font-weight:550;color:#eeece8}.brand h1 span{font-size:9px;font-weight:400;letter-spacing:.15px;color:#96989e;margin-top:6px}
.icon-button{width:38px;height:38px;border:1px solid #30333b;background:#171a20;color:#a5a7ad;box-shadow:none}.icon-button:hover{border-color:#6e6260;color:#e1c1a6}
.player-strip{color:#a0a1a8;font-size:10px;margin-top:-2px}.ranking-link{border:1px solid #30333b;border-radius:6px;background:#191c23;color:#d0ccc6;font-size:10px;font-weight:500;padding:6px 10px}.ranking-link span{color:#c9a284;margin-left:5px;margin-right:0}
.scoreboard{display:grid;grid-template-columns:1.2fr 1fr 1fr;align-items:stretch;gap:8px;padding:0}.score-main,.score-small{min-width:0;display:flex;flex-direction:column;justify-content:center;padding:11px 12px;background:#191c22;border:1px solid #2a2d35;border-radius:9px;box-shadow:none}
.scoreboard .eyebrow{font-size:8px;letter-spacing:1.1px;font-weight:500;color:#a7a8ad;white-space:nowrap}.scoreboard strong{font-size:29px;line-height:1.1;font-weight:500;letter-spacing:-1px;color:#eeeae3;margin-top:6px;font-variant-numeric:tabular-nums}.score-main strong{font-size:29px;letter-spacing:-1px;color:#d9ac8a}
.arena{margin:0;border:1px solid #30343d;border-radius:12px;background:#10151e;box-shadow:none}.arena-top{height:34px;padding:0 13px;color:#a4aab4;background:#151a23;border-bottom:1px solid #292f3a}.arena-top>span{font-size:8px;font-weight:500;letter-spacing:1.4px}.arena-top i{background:#c8a687;box-shadow:0 0 7px #c8a68735}.arena-top button{color:#b1b7c1}.playfield{background:#0b1019}.foundation{height:16px;border-top:1px solid #8c7261;background:linear-gradient(#373942,#242932);background-image:repeating-linear-gradient(90deg,transparent 0,transparent 43px,#131923 43px,#131923 44px),linear-gradient(#373942,#242932)}
.overlay{padding:22px;background:linear-gradient(#0b10191c,#0b1019bd 35%,#0b1019e8);color:#eeeae4}.mission-mark{width:62px;height:62px;margin-bottom:26px;flex-shrink:0;color:#ba9476}.mission-mark svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:.8}.mission-mark path{fill:#b88c6a22;stroke-width:1}.overlay:not(.is-intro) .mission-mark{display:none}
.overlay .eyebrow{font-size:8px;letter-spacing:1.8px;color:#b9a38f;font-weight:400}.overlay h2{font-size:36px;font-weight:450;letter-spacing:-1.5px;line-height:1.09;color:#f2eee7;margin:17px 0 15px;text-shadow:none}.overlay-copy{font-size:12px;font-weight:400;line-height:1.7;color:#afb1b8;margin:0 0 25px;max-width:260px}
.primary{min-height:48px;background:#e5ddd1;color:#282421;border:1px solid #f3ede3;border-radius:7px;font-size:13px;font-weight:550;box-shadow:none;padding:0 22px;gap:22px}.primary:hover{background:#f3ece2}.primary:active{transform:translateY(1px);border-bottom-width:1px}.primary>span[aria-hidden]{font-size:17px}.secondary{border:1px solid #4c4540;color:#d2c1b2;background:#b9947410;border-radius:7px;padding:10px 15px;font-size:11px;font-weight:400}.submit-status{color:#b6ada3}
.tap-hint{font-size:10px;color:#a0a2aa}.tap-hint span{color:#c29c7c;font-size:13px}footer{font-size:6px;font-weight:400;letter-spacing:1.05px;color:#7f838d}.footer-mark{color:#a38b77;font-size:10px}.community-notice{color:#c2a386}
.toast{top:42%;left:50%;right:auto;width:max-content;max-width:94%;background:#171d26e8;border:1px solid #9f8062;border-radius:6px;padding:8px 13px;color:#dfc1a4;font-size:16px;font-weight:500;text-shadow:none;box-shadow:0 8px 25px #0003;transform:translate(-50%,6px);letter-spacing:-.2px}.toast.show{transform:translate(-50%,-7px)}
dialog{background:#171a21;color:#e7e3dd;border:1px solid #42434a;border-radius:17px;box-shadow:0 24px 100px #0009;max-height:calc(100svh - 40px)}dialog::backdrop{background:#080b11b3;backdrop-filter:blur(7px)}
.settings-panel{padding:24px}.settings-heading h2{font-size:26px;font-weight:500;letter-spacing:-.9px}.settings-heading .eyebrow{color:#bba48f}.nickname-setting{border-color:#33363f;color:#e0dbd4;font-weight:500}.nickname-setting button{color:#d0a683;font-size:10px}legend,.setting-row label{font-size:12px;font-weight:500;color:#ddd9d3}.setting-note{font-size:10px;color:#a2a4ad}.setting-row .setting-note{font-size:9px}.swatch[aria-pressed=true]{border-color:#e1c2a3}.switch{background:#42464f}.switch:checked{background:#aa8160}.switch:before{background:#ece7df}.volume-label{color:#b0b0b7;font-size:11px}input[type=range]{accent-color:#c59a76}.music-status{color:#a2a4ad;font-size:9px}.effects-row{border-color:#33363f}.settings-footnote{font-size:9px}
.welcome-panel{padding:28px}.welcome-spark{width:44px;height:44px;display:grid;place-items:center;margin:0 auto 22px;border:1px solid #796451;border-radius:50%;font-size:24px;color:#caa380;text-shadow:none}.welcome-panel>.eyebrow{font-size:7px;font-weight:400;color:#b4a18e;letter-spacing:1.2px}.welcome-panel h2{font-size:29px;font-weight:450;line-height:1.12;letter-spacing:-1px;margin:17px 0}.welcome-copy{color:#aeb0b8;font-size:12px}.welcome-panel label{font-size:11px;color:#cbc7c1;font-weight:400}.welcome-panel input{background:#11151c;color:#eee9e1;border:1px solid #434650;border-radius:7px;padding:13px 12px;font-size:15px}.welcome-panel input::placeholder{color:#898e99;font-size:12px}.nickname-note,.welcome-foot{font-size:9px;color:#9a9da7}.form-error{color:#e4a58c}.text-button{font-size:11px;color:#c9a788}
#leaderboard{background:#14181f;border:1px solid #3a3f49;border-radius:17px}.ranking-screen{padding:25px 22px 18px}.ranking-header h2{font-size:31px;font-weight:450;letter-spacing:-1px;color:#ede9e2}.ranking-header .eyebrow{font-size:8px;font-weight:400;color:#b49c85}.ranking-subtitle{color:#a0a5b0;font-size:11px;margin:12px 0 22px}
.my-rank{background:#1d222b;border:1px solid #51483f;border-radius:9px;padding:16px;margin-bottom:23px;box-shadow:none}.my-rank>span:first-child{font-size:8px;font-weight:400;color:#b4a18f;letter-spacing:1px}.my-rank>strong{font-size:29px;font-weight:450;letter-spacing:-1px;color:#e1c2a5;margin-top:9px}.my-place{font-size:10px;color:#aeb0b7;margin-top:8px}.ranking-labels{font-size:7px;letter-spacing:.6px;color:#999faa;font-weight:400;padding:0 8px}.ranking-labels b{font-size:8px;color:#c6b29f;font-weight:500}.ranking-status{font-size:9px;color:#a1a7b2;margin:12px 8px}
.ranking-list{scrollbar-color:#444b56 transparent}.rank-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:10px;align-items:center;min-height:64px;padding:13px 8px;border:0;border-bottom:1px solid #2c323d;border-radius:0;margin:0;background:transparent;box-shadow:none}.rank-number{width:auto;font-size:12px;font-weight:400;color:#969eac;font-variant-numeric:tabular-nums}.rank-identity strong{font-size:12px;font-weight:500;letter-spacing:0;color:#e0e0e1;line-height:1.35}.rank-identity small{font-size:9px;color:#949ca9}.rank-score{font-size:21px;font-weight:450;letter-spacing:-.6px;color:#d6c4b3;font-variant-numeric:tabular-nums;text-align:right}.medal-1 .rank-number{color:#d6b18d}.medal-2 .rank-number{color:#b6becb}.medal-3 .rank-number{color:#b29782}.rank-row.is-you{background:#ba94740d;border-color:#51473e}.rank-row.is-you .rank-identity strong{color:#e4c5a6}
.ranking-pager{font-size:10px;color:#a8adb7;padding-top:16px}.pager-button{background:#1d232d;border:1px solid #39404b;border-radius:6px;color:#d5c1ae}.ranking-footer{color:#969eab;font-size:8px;letter-spacing:0}.ranking-footer i{background:#ab9680}.pending-send{border:1px solid #6a5644;border-radius:7px;background:#b8957310;color:#d3b393;font-size:10px}
@media(max-width:480px){.phone-shell{box-shadow:inset 0 0 0 1px #ffffff40}.game{padding-left:14px;padding-right:14px}}
@media(max-height:700px){.game{gap:10px}.brand h1{font-size:23px}.brand h1 span{font-size:8px}.score-main,.score-small{padding:8px 10px}.scoreboard strong,.score-main strong{font-size:25px}.arena-top{height:30px}.mission-mark{display:none}.overlay{padding:15px}.overlay h2{font-size:29px;margin:12px 0}.overlay-copy{font-size:11px;margin-bottom:17px;line-height:1.55}.overlay .primary{min-height:42px}.welcome-panel,.settings-panel{padding:21px}.welcome-panel h2{font-size:26px;margin:13px 0}.welcome-spark{width:35px;height:35px;font-size:20px;margin-bottom:16px}.welcome-copy{font-size:11px;margin-bottom:20px}.ranking-screen{padding:20px 17px 15px}.ranking-header h2{font-size:27px}.ranking-subtitle{margin-bottom:18px}.my-rank{padding:13px 14px;margin-bottom:18px}.my-rank>strong{font-size:26px}.rank-row{min-height:58px;padding-top:10px;padding-bottom:10px}.ranking-footer{font-size:7px}.tap-hint{font-size:9px}}
@media(max-width:350px){.game{padding-left:10px;padding-right:10px;gap:9px}.brand h1{font-size:22px}.brand h1 span{font-size:8px}.brand>svg{width:24px;height:24px}.score-main,.score-small{padding:8px}.scoreboard .eyebrow{font-size:8px;letter-spacing:.7px}.scoreboard strong,.score-main strong{font-size:24px}.overlay h2{font-size:27px}.overlay-copy{font-size:10px}.tap-hint{font-size:8px}.rank-row{grid-template-columns:24px minmax(0,1fr) auto;gap:8px}.rank-identity strong{font-size:11px}.rank-score{font-size:19px}.ranking-labels{font-size:7px}.welcome-panel h2{font-size:25px}.color-options{gap:7px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
/* The playfield, rather than the window, decides whether decoration fits. */
.playfield{container-type:size}.mission-mark{display:none}.overlay{padding:18px}.overlay h2{font-size:34px;margin:16px 0 13px}.overlay-copy{margin-bottom:22px}
@container(min-height:440px){.overlay.is-intro .mission-mark{display:block;margin-bottom:22px}}
@container(max-height:310px){.overlay{padding:14px}.overlay h2{font-size:28px;margin:12px 0}.overlay-copy{font-size:11px;line-height:1.5;margin-bottom:16px}.overlay .primary{min-height:42px}}
@container(max-height:230px){.overlay h2{font-size:25px;line-height:1.06;margin:9px 0}.overlay .eyebrow{font-size:7px;letter-spacing:1px}.overlay-copy{font-size:10px;line-height:1.4;margin-bottom:12px}.overlay .primary{min-height:38px}.overlay .secondary{margin-top:7px;padding:7px 12px}.submit-status{font-size:8px;margin-top:5px}}
.feedback-link{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;margin-top:9px;padding:6px 10px;color:#d7bc9f;font-size:11px;line-height:1.3;text-decoration:none;border:1px solid #6b594b;border-radius:7px;background:#b9947410}
.feedback-link:hover{color:#f2e4d3;border-color:#bd9d80}.feedback-link:focus-visible{outline:2px solid #dcad87;outline-offset:3px}
@container(max-height:230px){.feedback-link{min-height:30px;margin-top:5px;padding:4px 8px;font-size:10px}.overlay-copy{margin-bottom:8px}.overlay h2{margin:7px 0}}
/* Shared, understated controls with a generous touch target. */
.header-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.header-actions .icon-button{width:40px;height:40px;border-color:transparent;background:transparent;color:#b7b5b3}.header-actions .icon-button:hover{background:#ffffff0c;border-color:#ffffff1a;color:#eee6dc}
.sound-toggle .sound-off{display:none}.sound-toggle[aria-pressed=true] .sound-waves{display:none}.sound-toggle[aria-pressed=true] .sound-off{display:block}.sound-toggle[aria-pressed=true]{color:#c8a78c}
.primary{min-height:48px;padding:0 20px;border:1px solid #e7ded2;border-radius:8px;background:#e7ded2;color:#242321;font-weight:550;letter-spacing:.05px;gap:18px}.primary:hover{background:#f6efe6;border-color:#f6efe6}.primary:active{transform:scale(.98)}
.feedback-link,.ranking-link,.pager-button{background:transparent;border:1px solid #ffffff26;color:#d7cdc2;border-radius:8px;font-weight:500}.feedback-link:hover,.ranking-link:hover,.pager-button:not(:disabled):hover{border-color:#c1a58b;color:#f4e8dc;background:#ffffff09}.ranking-link{min-height:34px;padding:5px 12px}.feedback-link{padding:7px 12px}.pager-button{min-width:36px;min-height:34px}.text-button,.nickname-setting button{color:#d4b79e;text-decoration:none}.text-button:hover,.nickname-setting button:hover{text-decoration:underline;text-underline-offset:3px}
@media(max-width:350px){.header-actions{gap:0}.header-actions .icon-button{width:38px;height:38px}.brand h1{font-size:21px}}
@container(max-height:230px){.overlay .primary{min-height:38px}.feedback-link{min-height:30px;padding:4px 8px}}
/* Copper-lit controls, following the supplied button reference. */
.primary{position:relative;overflow:hidden;gap:0;justify-content:space-between;min-width:205px;padding:0 0 0 20px;border:1px solid #ffdcaf;border-radius:12px;background:linear-gradient(160deg,#ffe1b1 0%,#efbb86 42%,#ca8e5d 100%);color:#151719;box-shadow:inset 0 1px 0 #fff7e4aa,0 5px 22px #e99b5238;font-weight:650;transition:filter .18s,box-shadow .18s,transform .12s}
.primary>span[aria-hidden]{align-self:stretch;display:grid;place-items:center;min-width:48px;margin-left:18px;border-left:1px solid #f4c693;border-radius:9px;background:linear-gradient(140deg,#34302f,#10151c 70%);color:#ffd09b;font-size:20px;line-height:1}
.primary:hover{background:linear-gradient(160deg,#ffebc9,#f2c395 45%,#d69a68);border-color:#ffe6bd;box-shadow:inset 0 1px 0 #fff9,0 5px 25px #e9a46655}.primary:active{transform:scale(.98);filter:brightness(.92)}
.feedback-link,.ranking-link,.pager-button,.icon-button{border:1px solid #bd8b62;background:linear-gradient(145deg,#22262d,#10151c 75%);color:#f0e6db;box-shadow:inset 0 1px 0 #ffffff18;transition:border-color .18s,box-shadow .18s,background .18s,color .18s}
.feedback-link,.ranking-link{border-radius:11px}.feedback-link{padding:7px 13px;gap:10px}.feedback-link span,.ranking-link span{color:#f2c38f}.feedback-link:hover,.ranking-link:hover,.pager-button:not(:disabled):hover,.icon-button:hover{border-color:#f5c48f;color:#fff3e5;background:linear-gradient(145deg,#302b2b,#15191f);box-shadow:inset 0 1px 0 #ffffff26,0 0 16px #e8a05d25}
.header-actions .icon-button{border:1px solid #5c5149;background:linear-gradient(145deg,#25282d,#11161d);color:#d5c5b7}.header-actions .icon-button:hover{border-color:#e4ae7a;background:linear-gradient(145deg,#302b2b,#15191f);color:#fff0df}.header-actions .sound-toggle[aria-pressed=true]{color:#f4bf8a;border-color:#bd8b62}
.arena-top button{border:1px solid #a67c5d;border-radius:50%;width:29px;height:29px;margin-right:-4px;background:linear-gradient(145deg,#28272a,#10151c);color:#ead4bf}.arena-top button:hover:not(:disabled){border-color:#f2bf8b;box-shadow:0 0 12px #e8a05d33}.arena-top button:disabled{opacity:.4}
.switch:checked{background:linear-gradient(130deg,#e6b17c,#ae7049);box-shadow:0 0 10px #e5a05c33}.switch:checked:before{background:#fff3e3}.pager-button{border-radius:9px}.pager-button:disabled{opacity:.35;box-shadow:none}
@container(max-height:230px){.overlay .primary{min-height:38px;min-width:190px}.overlay .primary>span[aria-hidden]{min-width:40px}.feedback-link{min-height:30px}}
.arena-top .combo-hud{color:#f0bc81;font-size:9px;letter-spacing:.8px;font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap}
