:root{
  --bg:#070914;--panel:#10152b;--panel2:#151b35;--text:#f6f8ff;--muted:#9aa7c7;
  --cyan:#64f6ff;--pink:#ff59dc;--gold:#ffe56c;--danger:#ff657a;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body{min-height:100svh;background:radial-gradient(circle at 50% 0,rgba(94,93,255,.24),transparent 35%),linear-gradient(#0c1022,#070914 60%)}
button,a{font:inherit}a{text-decoration:none;color:inherit}
.arcade-shell{width:min(1040px,100%);margin:0 auto;padding:calc(18px + env(safe-area-inset-top)) 14px calc(28px + env(safe-area-inset-bottom))}
.header-row{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}
.brand{white-space:nowrap;font-weight:1000;font-size:clamp(38px,9vw,72px);letter-spacing:-.065em;line-height:.9;background:linear-gradient(110deg,#fff 10%,var(--cyan) 52%,var(--pink));-webkit-background-clip:text;color:transparent}
.subtitle{color:var(--muted);margin-top:10px;line-height:1.45;font-size:13px}
.settings{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end;max-width:430px}
.setting-btn{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.055);color:#dbe4ff;border-radius:999px;padding:8px 10px;font-size:11px;font-weight:900;white-space:nowrap}
.setting-btn.off{opacity:.48}.setting-btn:active{transform:scale(.97)}
.games-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin-top:20px}
.game-card{position:relative;overflow:hidden;min-height:158px;padding:16px;border-radius:22px;background:linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.1);box-shadow:0 18px 50px rgba(0,0,0,.22)}
.game-card::after{content:"";position:absolute;width:95px;height:95px;border-radius:50%;right:-35px;bottom:-45px;background:radial-gradient(circle,rgba(100,246,255,.13),transparent 68%)}
.game-card:active{transform:scale(.985)}
.game-card .icon{font-size:38px;line-height:1}.game-card h2{margin:12px 0 0;font-size:21px;letter-spacing:-.045em;line-height:1.05;max-width:80%}
.badge{display:inline-block;margin-top:13px;font-size:10px;font-weight:900;letter-spacing:.06em;padding:6px 8px;border-radius:999px;background:rgba(100,246,255,.11);color:var(--cyan)}
.bestline{position:absolute;right:14px;top:14px;font-size:10px;color:#99a7c8;text-align:right}.bestline b{display:block;color:#fff;font-size:15px;margin-top:2px}
.footer{margin-top:22px;text-align:center;color:#6f7b9d;font-size:11px}
.game-page{overflow:hidden;height:100vh;height:100dvh;min-height:100dvh;touch-action:none;overscroll-behavior:none}.game-page canvas{position:fixed;inset:0;width:100vw;height:100vh;height:100dvh;display:block}
.game-topbar{position:fixed;z-index:20;left:0;right:0;top:0;display:flex;justify-content:space-between;align-items:flex-start;padding:calc(12px + env(safe-area-inset-top)) 12px 0;pointer-events:none}.game-topbar>*{pointer-events:auto}
.home-btn,.mini-btn{border:1px solid rgba(255,255,255,.12);background:rgba(8,11,25,.66);color:#fff;backdrop-filter:blur(10px);height:42px;border-radius:14px;padding:0 13px;font-weight:900;box-shadow:0 8px 22px rgba(0,0,0,.25)}
.scorebox{background:rgba(8,11,25,.54);border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(8px);padding:8px 12px;border-radius:15px;text-align:right;min-width:82px}.scorebox small{display:block;color:#98a6c9;font-size:10px;letter-spacing:.12em}.scorebox b{font-size:24px;letter-spacing:-.05em}
.overlay{position:fixed;z-index:15;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;background:linear-gradient(rgba(5,7,17,.18),rgba(5,7,17,.78));text-align:center}.overlay.hidden{display:none}
.panel{width:min(420px,100%);padding:24px;border-radius:28px;background:rgba(10,14,31,.76);border:1px solid rgba(255,255,255,.11);backdrop-filter:blur(15px);box-shadow:0 24px 70px rgba(0,0,0,.35)}
.panel h1{margin:0;font-size:clamp(38px,12vw,62px);letter-spacing:-.065em;line-height:.9}.panel p{color:#b0bbd8;line-height:1.6;margin:14px 0 18px}.primary{width:100%;height:58px;border:0;border-radius:18px;background:linear-gradient(100deg,var(--cyan),#a5ffe8);font-weight:1000;color:#061117;font-size:17px}.primary:active{transform:scale(.985)}
.secondary{width:100%;height:48px;margin-top:9px;border:1px solid rgba(255,255,255,.13);border-radius:16px;background:rgba(255,255,255,.06);color:#fff;font-weight:900}
.result{font-size:72px;font-weight:1000;letter-spacing:-.075em;line-height:1;margin:12px 0}.record{min-height:20px;color:var(--gold);font-weight:900;letter-spacing:.08em;margin-bottom:14px}.tip{font-size:12px;color:#7f8bab;margin-top:12px}
.hud-pill{position:fixed;z-index:12;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));transform:translateX(-50%);background:rgba(8,11,25,.62);border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(8px);padding:8px 12px;border-radius:999px;color:#cbd5f2;font-size:12px;font-weight:900;pointer-events:none}
@media(max-width:650px){.header-row{display:block}.brand{font-size:clamp(40px,13vw,52px)}.subtitle{margin-top:8px}.settings{width:100%;max-width:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:14px}.setting-btn{width:100%;padding:9px 4px;font-size:10px}.games-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.game-card{min-height:140px;padding:13px;border-radius:19px}.game-card .icon{font-size:31px}.game-card h2{font-size:16px;margin-top:10px;max-width:78%}.badge{font-size:9px;margin-top:10px;padding:5px 7px}.bestline{right:11px;top:11px}.bestline b{font-size:13px}.footer{font-size:10px}}


/* ===== ARCADE v5 UI / progression ===== */
body[data-skin="sunset"]{--cyan:#ff9f68;--pink:#ff5aa8;--gold:#ffe180;--panel:#281126;--panel2:#35162c;background:radial-gradient(circle at 50% 0,rgba(255,96,128,.26),transparent 38%),linear-gradient(#231127,#090812 64%)}
body[data-skin="matrix"]{--cyan:#73ff9c;--pink:#38d86b;--gold:#d8ff70;--panel:#0b2118;--panel2:#103224;background:radial-gradient(circle at 50% 0,rgba(63,255,129,.20),transparent 38%),linear-gradient(#091c15,#030907 64%)}
body[data-skin="gold"]{--cyan:#ffe56c;--pink:#ffbb54;--gold:#fff1a6;--panel:#28200e;--panel2:#3a2d11;background:radial-gradient(circle at 50% 0,rgba(255,220,95,.22),transparent 38%),linear-gradient(#231c0d,#08070a 64%)}
/* Gameplay colors are semantic in games such as COLOR GATE/RHYTHM TAP. Skins theme UI only. */
body[data-skin].game-page canvas{filter:none}
.arcade-meta{display:flex;align-items:center;gap:8px;margin-top:12px;flex-wrap:wrap}
.coin-pill,.skin-open{height:38px;border:1px solid rgba(255,255,255,.11);border-radius:999px;background:rgba(255,255,255,.06);color:#fff;display:inline-flex;align-items:center;gap:7px;padding:0 12px;font-weight:1000;font-size:12px}.coin-pill b{color:var(--gold);font-size:15px}.skin-open{cursor:pointer}.skin-open:active{transform:scale(.97)}
.daily-panel{margin-top:14px;padding:12px;border-radius:18px;border:1px solid rgba(255,255,255,.09);background:rgba(10,14,31,.48)}.daily-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}.daily-head b{font-size:13px}.daily-head span{font-size:10px;color:#8693b5}
.daily-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.mission-card{min-width:0;padding:9px;border-radius:13px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.06)}.mission-card.done{background:rgba(100,246,255,.09);border-color:rgba(100,246,255,.18)}.mission-title{font-size:10px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mission-meta{display:flex;justify-content:space-between;gap:4px;margin-top:6px;color:#8f9cbd;font-size:9px;font-weight:800}.mission-meta strong{color:var(--gold)}.mission-bar{height:3px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden;margin-top:6px}.mission-bar i{display:block;height:100%;background:var(--cyan);border-radius:999px}
.game-card.today-pick{border-color:rgba(255,229,108,.46);box-shadow:0 0 0 1px rgba(255,229,108,.08),0 18px 50px rgba(0,0,0,.22)}.game-card.today-pick::before{content:"TODAY";position:absolute;left:12px;top:12px;font-size:8px;font-weight:1000;letter-spacing:.1em;color:#161000;background:var(--gold);padding:4px 6px;border-radius:999px}.game-card.today-pick .icon{margin-top:22px}
.shop-modal{position:fixed;z-index:100;inset:0;background:rgba(3,5,13,.76);display:flex;align-items:center;justify-content:center;padding:18px;backdrop-filter:blur(12px)}.shop-modal.hidden{display:none}.shop-panel{width:min(460px,100%);max-height:min(680px,88svh);overflow:auto;border-radius:25px;background:#0c1125;border:1px solid rgba(255,255,255,.11);padding:18px;box-shadow:0 25px 80px rgba(0,0,0,.5)}.shop-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.shop-head h2{margin:0;font-size:24px}.close-shop{width:40px;height:40px;border:0;border-radius:12px;background:rgba(255,255,255,.07);color:#fff;font-weight:1000}.skin-list{display:grid;gap:8px;margin-top:14px}.skin-item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;padding:11px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.035)}.skin-item.active{border-color:rgba(100,246,255,.38);background:rgba(100,246,255,.08)}.skin-icon{font-size:25px}.skin-copy b{display:block;font-size:13px}.skin-copy span{display:block;color:#8795b8;font-size:10px;margin-top:2px}.skin-action{border:0;border-radius:12px;min-width:80px;height:38px;padding:0 9px;background:var(--cyan);color:#061117;font-size:10px;font-weight:1000}.skin-action.locked{background:rgba(255,255,255,.09);color:#fff}.skin-action.active{background:var(--gold);color:#161000}
.record{display:grid;gap:5px;justify-items:center}.record>span{display:block}.record small{font-size:9px;color:#8390b1;letter-spacing:.12em}.result-best{color:var(--gold);font-size:17px}.result-recordline{font-size:13px;color:#dbe4ff;letter-spacing:.055em}.result-recordline b{color:var(--gold);font-size:15px}.result-week{color:#aebada}.result-week b{color:var(--cyan)}.result-coins{color:var(--cyan);font-size:12px}.result-mission{color:#8cff86;font-size:11px}
.secondary-link{display:flex;align-items:center;justify-content:center;text-decoration:none}
@keyframes arcadeShake{0%,100%{transform:translate(0,0)}20%{transform:translate(-5px,2px)}40%{transform:translate(5px,-2px)}60%{transform:translate(-3px,-1px)}80%{transform:translate(3px,1px)}}body.game-hit{animation:arcadeShake .28s linear}
.record-burst,.fever-pop{position:fixed;z-index:90;left:50%;top:38%;transform:translate(-50%,-50%);pointer-events:none;text-align:center;text-shadow:0 0 25px currentColor;animation:burstIn .95s ease-out forwards}.record-burst b,.fever-pop b{display:block;font-size:clamp(36px,12vw,70px);font-weight:1000;letter-spacing:-.06em;white-space:nowrap}.record-burst{color:var(--gold)}.fever-pop{color:var(--cyan)}.record-burst span,.fever-pop span{font-size:11px;font-weight:1000;letter-spacing:.22em}@keyframes burstIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.55)}18%{opacity:1;transform:translate(-50%,-50%) scale(1.08)}65%{opacity:1}100%{opacity:0;transform:translate(-50%,-58%) scale(1)}}
.arcade-toast{position:fixed;z-index:120;left:50%;bottom:calc(92px + env(safe-area-inset-bottom));transform:translate(-50%,18px);opacity:0;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:rgba(8,11,25,.92);color:#fff;padding:9px 13px;font-size:11px;font-weight:1000;transition:.22s;pointer-events:none;white-space:nowrap}.arcade-toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:650px){.arcade-meta{margin-top:10px}.daily-panel{padding:9px;margin-top:10px}.daily-grid{display:flex;overflow-x:auto;gap:6px;scrollbar-width:none}.daily-grid::-webkit-scrollbar{display:none}.mission-card{flex:0 0 150px}.shop-panel{padding:15px}.skin-action{min-width:70px}.record-burst,.fever-pop{top:34%}}


/* ===== v5.2 mobile fullscreen ===== */
.fullscreen-btn{position:fixed;z-index:24;left:76px;top:calc(12px + env(safe-area-inset-top));width:42px;height:42px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(8,11,25,.66);color:#fff;backdrop-filter:blur(10px);font-size:19px;font-weight:900;box-shadow:0 8px 22px rgba(0,0,0,.25)}
.fullscreen-btn:active{transform:scale(.94)}
@supports(height:100dvh){.game-page,.game-page canvas{height:100dvh}}
@media(display-mode:standalone),(display-mode:fullscreen){html,body.game-page{height:100%;min-height:100%}.game-page canvas{height:100%}}

/* ===== v5.6.1 profile + NAS ranking ===== */
.coin-pill,.skin-open,.profile-open,.rank-open{height:38px;border:1px solid rgba(255,255,255,.11);border-radius:999px;background:rgba(255,255,255,.06);color:#fff;display:inline-flex;align-items:center;gap:7px;padding:0 12px;font-weight:1000;font-size:12px}
.profile-open,.rank-open,.skin-open{cursor:pointer}.profile-open:active,.rank-open:active,.skin-open:active{transform:scale(.97)}
.profile-open b{max-width:112px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rank-open{border-color:rgba(255,229,108,.24);color:var(--gold)}
.result-rank{color:#d9e3ff;font-size:10px;letter-spacing:.02em;margin-top:1px}
.arcade-modal{position:fixed;z-index:140;inset:0;background:rgba(3,5,13,.82);display:flex;align-items:center;justify-content:center;padding:16px;backdrop-filter:blur(14px)}.arcade-modal.hidden{display:none}
.arcade-dialog{width:min(470px,100%);max-height:min(760px,92svh);overflow:auto;border-radius:26px;background:linear-gradient(160deg,#11172f,#090d1d 70%);border:1px solid rgba(255,255,255,.12);padding:18px;box-shadow:0 28px 90px rgba(0,0,0,.55)}
.dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.dialog-head small{display:block;color:#7f8bad;font-size:9px;font-weight:1000;letter-spacing:.18em}.dialog-head h2{margin:3px 0 0;font-size:27px;letter-spacing:-.045em}.dialog-close{flex:0 0 40px;width:40px;height:40px;border:0;border-radius:13px;background:rgba(255,255,255,.07);color:#fff;font-size:16px;font-weight:1000}.dialog-close.hidden{visibility:hidden;pointer-events:none}
.dialog-help{margin:15px 0;color:#9ca9ca;font-size:12px;line-height:1.55}.nickname-field{display:grid;gap:7px}.nickname-field span{font-size:10px;color:#8d9abb;font-weight:900}.nickname-field input{width:100%;height:52px;border:1px solid rgba(255,255,255,.12);border-radius:15px;background:rgba(255,255,255,.055);color:#fff;padding:0 14px;font-size:16px;font-weight:900;outline:none}.nickname-field input:focus{border-color:rgba(100,246,255,.5);box-shadow:0 0 0 3px rgba(100,246,255,.08)}.field-error{min-height:20px;padding-top:6px;color:#ff7f91;font-size:10px;font-weight:800}
.dialog-primary{width:100%;height:52px;border:0;border-radius:16px;background:linear-gradient(100deg,var(--cyan),#a5ffe8);color:#061117;font-size:14px;font-weight:1000}.dialog-primary:active{transform:scale(.985)}.dialog-secondary{width:100%;height:46px;margin-top:9px;border:1px solid rgba(255,255,255,.11);border-radius:14px;background:rgba(255,255,255,.055);color:#dbe4ff;font-size:11px;font-weight:1000}.dialog-secondary:active{transform:scale(.985)}.dialog-note{display:block;text-align:center;color:#697697;font-size:9px;margin-top:9px}
.ranking-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:15px}.ranking-controls select{min-width:0;height:42px;border:1px solid rgba(255,255,255,.1);border-radius:13px;background:#12182f;color:#fff;padding:0 10px;font-weight:900;font-size:12px;outline:none}.period-tabs{display:flex;padding:3px;border-radius:13px;background:rgba(255,255,255,.055)}.period-tabs button{height:36px;border:0;border-radius:10px;background:transparent;color:#8794b5;padding:0 11px;font-size:10px;font-weight:1000}.period-tabs button.active{background:rgba(100,246,255,.14);color:var(--cyan)}
.ranking-mine{min-height:58px;margin-top:10px;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:11px;padding:11px 13px;border:1px solid rgba(100,246,255,.17);border-radius:15px;background:rgba(100,246,255,.065)}.ranking-mine:empty{display:none}.ranking-mine span{font-size:10px;color:#92a0c1;font-weight:900}.ranking-mine b{font-size:14px;color:var(--cyan)}.ranking-mine strong{font-size:15px}
.ranking-list{display:grid;gap:6px;margin-top:10px;max-height:min(430px,52svh);overflow:auto;padding-right:2px;scrollbar-width:thin}.ranking-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:54px;padding:8px 10px;border:1px solid rgba(255,255,255,.065);border-radius:14px;background:rgba(255,255,255,.035)}.ranking-row.me{border-color:rgba(255,229,108,.38);background:rgba(255,229,108,.075)}.ranking-row.top-1{border-color:rgba(255,229,108,.42);background:linear-gradient(100deg,rgba(255,229,108,.11),rgba(255,255,255,.035))}.ranking-row.top-2{border-color:rgba(207,220,255,.22);background:linear-gradient(100deg,rgba(207,220,255,.07),rgba(255,255,255,.03))}.ranking-row.top-3{border-color:rgba(255,174,112,.20);background:linear-gradient(100deg,rgba(255,174,112,.06),rgba(255,255,255,.03))}.ranking-no{text-align:center;font-size:14px;font-weight:1000;color:#aab6d4}.ranking-player{min-width:0}.ranking-player b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.ranking-player span{display:block;margin-top:3px;color:#6f7c9e;font-size:8px;font-weight:800}.ranking-score{font-size:14px;letter-spacing:-.02em}.ranking-state{min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#7f8cab;font-size:11px;line-height:1.55}.ranking-state b{color:#dbe4ff;font-size:12px}.ranking-state span{margin-top:5px;max-width:280px}.ranking-state.error{color:#8794b4}
.ranking-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:11px;color:#6f7b9d;font-size:9px}.ranking-foot button{border:0;border-radius:10px;background:rgba(255,255,255,.065);color:#cbd5ef;padding:8px 10px;font-size:9px;font-weight:900}
@media(max-width:650px){.arcade-meta{gap:6px}.coin-pill,.skin-open,.profile-open,.rank-open{height:35px;padding:0 9px;font-size:10px}.profile-open b{max-width:86px}.arcade-dialog{padding:15px;border-radius:22px}.ranking-controls{grid-template-columns:1fr}.period-tabs button{flex:1}.ranking-mine{min-height:54px}.ranking-row{min-height:51px}.ranking-dialog{max-height:90svh}}

/* ===== v5.6.1 overall championship ranking ===== */
.ranking-mode-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:15px;padding:4px;border-radius:15px;background:rgba(255,255,255,.055)}
.ranking-mode-tabs button{height:40px;border:0;border-radius:11px;background:transparent;color:#8996b6;font-size:11px;font-weight:1000;letter-spacing:-.02em}
.ranking-mode-tabs button.active{background:linear-gradient(110deg,rgba(255,229,108,.16),rgba(100,246,255,.12));color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}
.ranking-game-controls.hidden{display:none}.ranking-game-controls .ranking-controls{margin-top:9px}
.ranking-mine.overall-mine{grid-template-columns:1fr auto auto;grid-template-rows:auto auto}.ranking-mine.overall-mine em{grid-column:1/-1;color:#7786aa;font-size:9px;font-style:normal;font-weight:850;line-height:1.35}.ranking-mine.overall-mine b{color:var(--gold)}
.overall-row .ranking-player span{color:#7f8fb6;letter-spacing:.04em}.overall-row .ranking-score{color:var(--gold)}
@media(max-width:650px){.ranking-mode-tabs{margin-top:12px}.ranking-mode-tabs button{height:38px}.ranking-mine.overall-mine{grid-template-columns:1fr auto auto;gap:7px}.ranking-mine.overall-mine strong{font-size:14px}}
.ranking-foot{flex-wrap:wrap}.ranking-foot>span{flex:1;min-width:190px;line-height:1.4}
@media(max-width:650px){.ranking-foot>span{min-width:150px}}


/* ===== v5.6.1 overall score detail ===== */
.overall-clickable{cursor:pointer;position:relative;transition:transform .12s ease,border-color .12s ease,background .12s ease}.overall-clickable:after{content:'›';position:absolute;right:9px;top:50%;transform:translateY(-50%);color:rgba(255,255,255,.28);font-size:18px;font-weight:1000}.overall-clickable .ranking-score{padding-right:17px}.overall-clickable:hover{border-color:rgba(100,246,255,.28)}.overall-clickable:active{transform:scale(.992)}.overall-clickable:focus-visible{outline:2px solid rgba(100,246,255,.55);outline-offset:2px}
.ranking-mine.overall-clickable{padding-right:31px}.ranking-mine.overall-clickable:after{right:12px}.overall-detail-modal{z-index:155}.overall-detail-dialog{width:min(510px,100%)}
.overall-detail-summary{display:grid;grid-template-columns:1fr auto;align-items:end;gap:4px 12px;margin-top:15px;padding:14px 15px;border:1px solid rgba(255,229,108,.2);border-radius:16px;background:linear-gradient(110deg,rgba(255,229,108,.09),rgba(100,246,255,.055))}.overall-detail-summary span{color:#8f9bbb;font-size:9px;font-weight:1000;letter-spacing:.14em}.overall-detail-summary strong{grid-row:1/3;grid-column:2;font-size:24px;color:var(--gold);letter-spacing:-.04em}.overall-detail-summary em{color:#7583a6;font-size:9px;font-style:normal;font-weight:900}
.overall-breakdown{display:grid;gap:6px;margin-top:11px;max-height:min(470px,55svh);overflow:auto;padding-right:2px;scrollbar-width:thin}.overall-breakdown-row{min-height:48px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 11px;border-radius:13px;border:1px solid rgba(255,255,255,.065);background:rgba(255,255,255,.035)}.overall-breakdown-row b{display:block;font-size:11px}.overall-breakdown-row span{display:block;margin-top:3px;color:#7280a2;font-size:8px;font-weight:800}.overall-breakdown-row strong{font-size:13px;color:var(--gold)}.overall-breakdown-row.missing{opacity:.58}.overall-breakdown-row.missing strong{color:#77819b}.overall-detail-note{margin-top:10px;text-align:center;color:#697697;font-size:8px;line-height:1.45}
@media(max-width:650px){.overall-detail-dialog{max-height:92svh}.overall-detail-summary strong{font-size:21px}.overall-breakdown{max-height:54svh}.overall-breakdown-row{min-height:45px}.overall-clickable:after{right:7px}}

/* ===== account login ===== */
.account-panel{margin-top:16px;padding:14px;border:1px solid rgba(255,255,255,.09);border-radius:18px;background:rgba(255,255,255,.035)}
.profile-dialog [data-account-create].hidden,.profile-dialog .account-panel.hidden,.profile-dialog .account-action.hidden{display:none}
.account-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.account-head small{display:block;color:#7784a6;font-size:8px;font-weight:1000;letter-spacing:.16em}.account-head b{display:block;margin-top:3px;font-size:13px}.account-badge{flex:0 0 auto;padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.07);color:#aeb9d5;font-size:8px;font-weight:1000}.account-badge.on{background:rgba(111,255,188,.12);color:#86ffc5}.account-badge.warn{background:rgba(255,194,99,.12);color:#ffd083}
.account-panel>p{margin:10px 0 12px;color:#8997b8;font-size:10px;line-height:1.5}.pin-field{display:grid;gap:7px}.pin-field.spaced{margin-top:12px}.pin-field span{font-size:10px;color:#8d9abb;font-weight:900}.pin-field input{width:100%;height:48px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.055);color:#fff;padding:0 14px;font-size:16px;font-weight:1000;letter-spacing:.18em;outline:none}.pin-field input:focus{border-color:rgba(100,246,255,.5);box-shadow:0 0 0 3px rgba(100,246,255,.08)}
.account-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:7px}.account-action{width:100%;min-height:44px;border:1px solid rgba(255,255,255,.09);border-radius:13px;background:rgba(255,255,255,.06);color:#dbe4ff;font-size:10px;font-weight:1000;padding:8px 10px}.account-action.primary{border-color:rgba(100,246,255,.19);background:rgba(100,246,255,.09);color:var(--cyan)}.account-action:disabled{opacity:.38;cursor:not-allowed}.account-action:active:not(:disabled){transform:scale(.985)}.spaced-action{margin-top:7px}.account-note{display:block;margin-top:9px;color:#697697;font-size:8px;line-height:1.5;text-align:center}
.account-submodal{z-index:165}.account-dialog{width:min(460px,100%)}.pair-dialog{width:min(440px,100%)}.pair-qr{position:relative;min-height:260px;margin:11px 0;display:flex;align-items:center;justify-content:center;border-radius:18px;background:#fff;overflow:hidden}.pair-qr canvas{display:block;max-width:100%;height:auto}.pair-qr canvas.hidden{display:none}.pair-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:20px;text-align:center;color:#2d3550;font-size:11px;font-weight:900}.pair-loading.hidden{display:none}.pair-expire{text-align:center;color:#8c99b9;font-size:9px;font-weight:800;margin:-2px 0 10px}
@media(max-width:650px){.account-panel{padding:12px}.account-actions{grid-template-columns:1fr}.pair-qr{min-height:235px}.pair-qr canvas{max-width:220px;max-height:220px}}

