@import"https://fonts.googleapis.com/css2?family=Cinzel:wght@600;800;900&family=Inter:wght@400;500;600;700&display=swap";.avatar{position:relative;flex:none;display:inline-grid;place-items:center;border-radius:50%;font-family:var(--font-title);font-weight:800;color:#fff;background:radial-gradient(circle at 30% 25%,color-mix(in srgb,var(--av) 70%,white),var(--av) 55%,color-mix(in srgb,var(--av) 40%,black));border:2px solid color-mix(in srgb,var(--av) 60%,white);box-shadow:0 4px 14px #00000073}.online-dot{position:absolute;right:-2px;bottom:-2px;width:33%;height:33%;min-width:10px;min-height:10px;border-radius:50%;background:#4b5563;border:2px solid var(--bg-1)}.online-dot.on{background:var(--ok);box-shadow:0 0 8px var(--ok)}.server-chip{display:inline-flex;align-items:center;gap:8px;padding:4px 12px;border-radius:999px;font-size:12.5px;border:1px solid var(--line);color:var(--text-dim)}.server-chip i{width:9px;height:9px;border-radius:50%;background:#f59e0b;animation:chip-pulse 1.2s ease-in-out infinite}.server-chip.ready i{background:var(--ok);animation:none;box-shadow:0 0 8px var(--ok)}.server-chip.failed i{background:var(--danger);animation:none}@keyframes chip-pulse{50%{opacity:.35}}.login-wrap{flex:1;display:grid;place-items:center;padding:24px;overflow:auto}.login-panel{width:min(460px,100%);padding:26px 30px 24px;display:flex;flex-direction:column;gap:16px}.login-title{margin:0;text-align:center;font-family:var(--font-title);font-size:28px;letter-spacing:.06em;color:var(--gold-hi)}.login-sub{text-align:center;margin:-8px 0 4px;font-size:13.5px}.tabs{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:10px;overflow:hidden}.tab{padding:10px;cursor:pointer;background:#00000040;border:none;color:var(--text-dim);font-weight:600;letter-spacing:.03em}.tab.on{background:linear-gradient(180deg,#d9b75f,#9a7428);color:#1b1305}.form{display:flex;flex-direction:column;gap:12px}.field{display:flex;flex-direction:column;gap:5px;font-size:13px;color:var(--text-dim)}.field .input{padding:10px 12px;font-size:15px;color:var(--text);-webkit-user-select:text;user-select:text}.field small{font-size:11.5px;opacity:.8}.form-error{padding:9px 12px;border-radius:8px;border:1px solid rgba(240,82,82,.5);background:#f052521a;color:#fecaca;font-size:13.5px}.form-ok{padding:9px 12px;border-radius:8px;border:1px solid rgba(52,211,153,.5);background:#34d3991a;color:#bbf7d0;font-size:13.5px}.login-actions{display:flex;flex-direction:column;gap:10px;margin-top:4px}.login-actions .btn{padding:11px 18px}.notice-box{text-align:center;line-height:1.55}.notice-box code{background:#00000059;padding:1px 6px;border-radius:5px}.friends-layout{flex:1;min-height:0;display:grid;grid-template-columns:minmax(340px,1.3fr) minmax(300px,1fr);gap:16px;padding:16px 20px}.friends-col{min-height:0;display:flex;flex-direction:column;gap:14px}.friends-panel{min-height:0;display:flex;flex-direction:column;overflow:hidden}.friends-panel.grow{flex:1}.panel-title{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line);font-family:var(--font-title);letter-spacing:.06em;color:var(--gold-hi);font-size:16px}.panel-title .count{margin-left:auto;font-family:var(--font-ui);font-size:12px;color:var(--text-dim);letter-spacing:0}.friend-list{flex:1;overflow:auto;display:flex;flex-direction:column;padding:6px;gap:4px}.friend-row{display:flex;align-items:center;gap:12px;padding:9px 10px;border-radius:10px;border:1px solid transparent}.friend-row:hover{background:#ffffff0a;border-color:var(--line)}.friend-row .who{flex:1;min-width:0;display:flex;flex-direction:column}.friend-row .name{font-weight:700;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.friend-row .meta{font-size:12px;color:var(--text-dim)}.friend-row .meta .w{color:var(--ok)}.friend-row .meta .l{color:#fca5a5}.friend-actions{display:flex;gap:6px;align-items:center}.empty-note{padding:22px 16px;text-align:center;color:var(--text-dim);font-size:13.5px}.add-friend{display:flex;gap:8px;padding:12px 14px}.add-friend .input{flex:1;min-width:0;padding:9px 12px;-webkit-user-select:text;user-select:text}.inline-msg{padding:0 14px 12px;font-size:13px}.history-list{display:flex;flex-direction:column;gap:3px;padding:4px 16px 12px;font-size:12.5px;color:var(--text-dim)}.pill{display:inline-block;min-width:22px;text-align:center;padding:0 7px;border-radius:999px;font-weight:800;font-size:11.5px}.pill.win{background:#34d39933;color:#6ee7b7;border:1px solid rgba(52,211,153,.5)}.pill.loss{background:#f052522e;color:#fca5a5;border:1px solid rgba(240,82,82,.45)}.deck-warning{padding:10px 16px;font-size:13px;border-bottom:1px solid var(--line);background:#f59e0b14;color:#fde68a}.invite-layer{position:fixed;right:22px;bottom:22px;z-index:200;display:flex;flex-direction:column;gap:12px;width:min(380px,calc(100vw - 32px));pointer-events:none}.invite-toast{pointer-events:auto;padding:14px 16px;display:flex;flex-direction:column;gap:10px;border-color:var(--line-strong);box-shadow:0 18px 50px #0009,0 0 30px #d6b25c38}.invite-toast .row{display:flex;align-items:center;gap:12px}.invite-toast .text{flex:1;min-width:0;line-height:1.35}.invite-toast .text b{color:var(--gold-hi)}.invite-toast .bar{height:4px;border-radius:4px;background:#ffffff1a;overflow:hidden}.invite-toast .bar span{display:block;height:100%;background:var(--gold);transition:width .5s linear}.invite-toast .btns{display:flex;gap:8px}.invite-toast .btns .btn{flex:1}.invite-toast.notice{border-color:#f0525280}.waiting-wrap{flex:1;display:grid;place-items:center;padding:24px}.waiting-panel{width:min(520px,100%);padding:30px 34px;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}.waiting-spinner{width:74px;height:74px;border-radius:50%;border:3px solid rgba(214,178,92,.2);border-top-color:var(--gold);animation:sigil-spin2 1s linear infinite}.waiting-title{margin:0;font-family:var(--font-title);font-size:24px;letter-spacing:.05em;color:var(--gold-hi)}.waiting-steps{display:flex;flex-direction:column;gap:6px;align-items:flex-start;font-size:14px}.waiting-steps .step{color:var(--text-dim);display:flex;gap:8px}.waiting-steps .step.done{color:var(--ok)}.waiting-steps .step.now{color:var(--text);font-weight:600}.online-result{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:20px}.online-result .result-body{display:flex;gap:24px;align-items:center;padding:22px 30px;max-width:760px}.online-result .vs{display:flex;flex-direction:column;gap:6px}.online-result .vs .big{font-family:var(--font-title);font-size:22px}.menu-account{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--text-dim);flex-wrap:wrap}.menu-account b{color:var(--text)}.sync-pill{font-size:11.5px;padding:1px 9px;border-radius:999px;border:1px solid var(--line)}.sync-pill.synced{color:var(--ok);border-color:#34d39966}.sync-pill.error{color:#fca5a5;border-color:#f0525273}.pvp-banners{position:fixed;top:10px;left:50%;transform:translate(-50%);z-index:80;display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none}.pvp-banner{padding:8px 18px;border-radius:999px;font-size:13.5px;font-weight:600;background:#0a0c1aeb;border:1px solid var(--line-strong);color:var(--text);box-shadow:0 8px 26px #0009}.pvp-banner.warn{border-color:#f59e0bb3;color:#fde68a}.pvp-banner.danger{border-color:#f05252bf;color:#fecaca}@media (max-width: 1000px){.friends-layout{grid-template-columns:1fr;overflow:auto}}:root{--bg-0: #05060d;--bg-1: #0b0f1f;--bg-2: #141a33;--panel: rgba(16, 22, 44, .78);--panel-solid: #121831;--line: rgba(160, 180, 255, .16);--line-strong: rgba(214, 178, 92, .55);--text: #e9ecf8;--text-dim: #9aa3c4;--gold: #d6b25c;--gold-hi: #ffe7a3;--accent: #8b5cf6;--danger: #f05252;--ok: #34d399;--radius: 12px;--font-title: "Cinzel", "Times New Roman", serif;--font-ui: "Inter", "Segoe UI", system-ui, sans-serif;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg-0);color:var(--text);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;overflow:hidden;-webkit-user-select:none;user-select:none}button{font:inherit;color:inherit}input,select{font:inherit}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#d6b25c59;border-radius:10px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-track{background:transparent}.screen{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;overflow:hidden}.screen-header{display:flex;align-items:center;gap:16px;padding:18px 28px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#0a0e1ef2,#0a0e1e99);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:2}.screen-header h1{margin:0;font-family:var(--font-title);font-size:26px;letter-spacing:.06em;background:linear-gradient(180deg,var(--gold-hi),var(--gold) 60%,#9b7a2c);-webkit-background-clip:text;background-clip:text;color:transparent}.screen-header .spacer{flex:1}.btn{position:relative;border:1px solid var(--line-strong);background:linear-gradient(180deg,#2a2f52,#161a33);color:var(--text);padding:9px 18px;border-radius:10px;font-weight:600;letter-spacing:.02em;cursor:pointer;box-shadow:inset 0 1px #ffffff1f,0 4px 14px #00000059;transition:transform .12s,box-shadow .12s,border-color .12s,filter .12s}.btn:hover:not(:disabled){border-color:var(--gold-hi);filter:brightness(1.15);box-shadow:inset 0 1px #ffffff2e,0 0 18px #d6b25c4d}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:default}.btn.primary{background:linear-gradient(180deg,#d9b75f,#9a7428);color:#1b1305;border-color:#ffe7a3}.btn.danger{border-color:#f0525299;background:linear-gradient(180deg,#4a1b25,#2a0f16)}.btn.ghost{background:transparent;box-shadow:none;border-color:var(--line)}.btn.small{padding:5px 11px;font-size:13px;border-radius:8px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 10px 40px #00000059;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.input{background:#050814b3;border:1px solid var(--line);color:var(--text);border-radius:8px;padding:7px 10px;outline:none}.input:focus{border-color:var(--gold)}.chip{border:1px solid var(--line);background:#ffffff08;border-radius:999px;padding:4px 11px;font-size:12.5px;cursor:pointer;color:var(--text-dim)}.chip.on{color:#1b1305;background:var(--gold);border-color:var(--gold-hi);font-weight:600}.dim{color:var(--text-dim)}.error-text{color:var(--danger)}.ok-text{color:var(--ok)}.card-thumb{position:relative;flex:none;aspect-ratio:421 / 614;border-radius:5px;overflow:hidden;background:#1a1408;box-shadow:0 3px 10px #00000080;cursor:pointer;transition:transform .14s,box-shadow .14s}.card-thumb img{width:100%;height:100%;display:block;object-fit:cover;pointer-events:none}.card-thumb:hover{transform:translateY(-3px) scale(1.03);box-shadow:0 8px 22px #0009,0 0 0 1px var(--gold);z-index:1}.card-thumb.silhouette img{filter:brightness(0) saturate(0);opacity:.55}.card-thumb.silhouette:after{content:"?";position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-family:var(--font-title);font-size:2.4em;color:#d6b25c99}.card-thumb.disabled{opacity:.35}.card-thumb .badge{position:absolute;right:3px;bottom:3px;min-width:20px;padding:1px 6px;border-radius:6px;background:#000000d1;border:1px solid var(--gold);color:var(--gold-hi);font-size:11px;font-weight:700;text-align:center}.card-thumb .badge.new{left:3px;right:auto;top:3px;bottom:auto;background:#b91c1c;border-color:#fca5a5;color:#fff}.card-detail{display:flex;flex-direction:column;gap:10px;padding:14px;min-height:0}.card-detail .big{width:100%;max-width:300px;align-self:center;border-radius:10px;box-shadow:0 14px 40px #0009}.card-detail h3{margin:0;font-family:var(--font-title);font-size:18px;color:var(--gold-hi)}.card-detail .meta{font-size:12.5px;color:var(--text-dim);display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center}.card-detail .desc{font-size:13px;line-height:1.5;white-space:pre-wrap;overflow:auto;padding-right:4px;color:#d4d9ee}.card-detail .stats{font-weight:700;color:var(--gold-hi);font-size:14px}.attr-pill{padding:1px 8px;border-radius:999px;font-weight:700;font-size:11px;color:#0b0f1f}.meta-bg{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 50% 120%,#1b1240 0%,var(--bg-1) 45%,var(--bg-0) 100%)}.meta-bg-glow{position:absolute;top:-20%;right:-20%;bottom:-20%;left:-20%;background:radial-gradient(circle at 20% 30%,color-mix(in srgb,var(--tint) 30%,transparent) 0%,transparent 40%),radial-gradient(circle at 80% 70%,color-mix(in srgb,var(--tint) 22%,transparent) 0%,transparent 45%);animation:bg-drift 24s ease-in-out infinite alternate}.meta-bg-sigil{position:absolute;left:50%;top:50%;width:120vmin;height:120vmin;transform:translate(-50%,-50%);color:color-mix(in srgb,var(--tint) 45%,#d6b25c);opacity:.12;animation:sigil-spin 160s linear infinite}.meta-star{position:absolute;border-radius:50%;background:#fff;opacity:.2;animation:twinkle 5s ease-in-out infinite}@keyframes bg-drift{to{transform:translate(4%,-3%) scale(1.08)}}@keyframes sigil-spin{to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes twinkle{50%{opacity:.9}}.screen{z-index:1}.loading-screen{display:grid;place-items:center}.loading-sigil{width:90px;height:90px;border-radius:50%;border:3px solid rgba(214,178,92,.2);border-top-color:var(--gold);animation:sigil-spin2 1s linear infinite;z-index:1}.loading-text{z-index:1;font-family:var(--font-title);letter-spacing:.12em;color:var(--gold-hi);margin-top:120px;position:absolute}@keyframes sigil-spin2{to{transform:rotate(360deg)}}.title-screen{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;gap:60px}.title-logo{text-align:center;filter:drop-shadow(0 10px 40px rgba(0,0,0,.6))}.title-kicker{font-family:var(--font-title);font-weight:900;font-size:clamp(28px,4vw,56px);letter-spacing:.08em;color:#f8e3a1;text-shadow:0 0 20px rgba(214,178,92,.55),0 3px 0 #6b4b12}.title-main{font-family:var(--font-title);font-weight:900;font-size:clamp(48px,9vw,132px);line-height:.95;letter-spacing:.04em;background:linear-gradient(180deg,#fff6d6,#f0cd70 40%,#a97a22 62%,#f6dc8f 78%,#7a5414);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-stroke:1px rgba(80,50,10,.6);position:relative}.title-main span{font-size:.42em;vertical-align:middle;letter-spacing:.1em}.title-main:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.55) 48%,transparent 66%);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shine 4.5s ease-in-out infinite;pointer-events:none}.title-kicker.small{font-size:18px}.title-main.small{font-size:40px}@keyframes shine{0%{background-position:150% 0}60%,to{background-position:-100% 0}}.title-hd{margin-top:14px;font-family:var(--font-title);font-size:clamp(16px,2vw,26px);letter-spacing:.6em;color:#c4b5fd;text-shadow:0 0 16px rgba(139,92,246,.9)}.title-by{margin-top:12px;text-align:center;font-family:var(--font-title);font-size:clamp(14px,1.5vw,20px);letter-spacing:.3em;color:var(--gold-hi);text-shadow:0 0 12px rgba(242,196,90,.55)}.title-press{font-size:18px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-hi)}.title-foot{position:absolute;bottom:18px;font-size:12px}.menu-screen{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:minmax(360px,1fr) minmax(320px,440px);gap:40px;padding:5vh 6vw;align-items:center}.menu-left{display:flex;flex-direction:column;gap:40px}.menu-logo{cursor:pointer}.menu-items{display:flex;flex-direction:column;gap:14px;max-width:520px}.menu-item{display:flex;align-items:center;gap:18px;text-align:left;cursor:pointer;padding:16px 22px;border-radius:14px;border:1px solid var(--line);background:linear-gradient(90deg,#1e2448d9,#0e122666);transition:all .18s;position:relative;overflow:hidden}.menu-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gold);transform:scaleY(0);transition:transform .18s}.menu-item:hover{border-color:var(--line-strong);transform:translate(8px);background:linear-gradient(90deg,#3c346ee6,#0e122666)}.menu-item:hover:before{transform:scaleY(1)}.menu-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:50%;font-size:22px;background:radial-gradient(circle,#3b2f6b,#151030);border:1px solid var(--line-strong);color:var(--gold-hi)}.menu-label{display:block;font-family:var(--font-title);font-size:22px;font-weight:800;letter-spacing:.04em}.menu-sub{display:block;color:var(--text-dim);font-size:13px;margin-top:2px}.menu-right{overflow:hidden}.menu-showcase{height:240px;background-size:cover;background-position:center 25%;position:relative}.menu-showcase:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 40%,var(--panel-solid))}.menu-profile{padding:4px 22px 22px;display:flex;flex-direction:column;gap:16px}.menu-name{font-family:var(--font-title);font-size:26px;color:var(--gold-hi)}.menu-stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.menu-stat-row div{display:flex;flex-direction:column;align-items:center;padding:10px;border-radius:10px;background:#00000040;border:1px solid var(--line)}.menu-stat-row b{font-size:20px}.menu-stat-row span{font-size:12px;color:var(--text-dim)}.menu-deck{display:flex;flex-direction:column;gap:3px;font-size:14px}.opp-grid{flex:1;display:grid;grid-template-columns:repeat(4,minmax(200px,260px));justify-content:center;align-content:center;gap:26px;padding:20px}.opp-card{cursor:pointer;border-radius:18px;padding:16px 14px 18px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:4px;border:1px solid color-mix(in srgb,var(--opp) 40%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--opp) 22%,#0d1126),#0a0d1d 70%);box-shadow:0 16px 40px #00000073;transition:box-shadow .2s,border-color .2s}.opp-card:hover{box-shadow:0 18px 48px #00000080,0 0 30px color-mix(in srgb,var(--opp) 45%,transparent)}.opp-card.selected{border-color:var(--opp);box-shadow:0 0 0 2px var(--opp),0 0 50px color-mix(in srgb,var(--opp) 55%,transparent)}.opp-card.locked{filter:grayscale(.85) brightness(.6);cursor:not-allowed}.opp-portrait{position:relative;border-radius:14px;overflow:hidden;background:#00000059}.opp-lock{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:46px;background:#00000073}.opp-title{font-family:var(--font-title);font-size:13px;letter-spacing:.14em;color:color-mix(in srgb,var(--opp) 70%,white);margin-top:8px;text-transform:uppercase}.opp-name{font-family:var(--font-title);font-size:22px;font-weight:800}.opp-sub{font-size:12.5px;color:var(--text-dim);min-height:32px}.opp-stats{display:flex;gap:12px;font-size:13px;color:var(--text-dim)}.opp-footer{min-height:120px;display:grid;place-items:center;padding:0 20px 28px}.opp-quote{display:flex;align-items:center;gap:22px;padding:16px 22px;max-width:900px}.opp-quote-text{font-style:italic;font-size:16px;border-left:3px solid;padding-left:14px}.reward-screen,.defeat-screen{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:20px}.victory-title,.defeat-title{margin:0;font-family:var(--font-title);font-weight:900;font-size:clamp(48px,8vw,96px);letter-spacing:.1em}.victory-title{background:linear-gradient(180deg,#fff6d6,#f0cd70 50%,#a97a22);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 24px rgba(240,205,112,.55))}.defeat-title{color:#fca5a5;text-shadow:0 0 30px rgba(240,82,82,.6)}.reward-quote{font-style:italic;max-width:760px;text-align:center}.reward-body{display:flex;gap:30px;align-items:center}.reward-stage{perspective:1200px;cursor:pointer}.reward-card{width:290px;position:relative;border-radius:12px}.reward-card img{width:100%;display:block;border-radius:12px;box-shadow:0 20px 60px #000000b3}.reward-card.new img{box-shadow:0 0 0 2px #ffe7a3,0 0 60px #ffe7a399,0 20px 60px #000000b3}.reward-card.back{display:flex;flex-direction:column;align-items:center;gap:12px}.reward-card.back svg{box-shadow:0 20px 60px #000000b3,0 0 40px #d6b25c59;animation:pulse-glow 1.6s ease-in-out infinite}@keyframes pulse-glow{50%{filter:brightness(1.25)}}.reward-hint{color:var(--gold-hi);letter-spacing:.1em}.reward-new{position:absolute;top:-14px;left:50%;transform:translate(-50%);padding:4px 14px;border-radius:999px;background:linear-gradient(180deg,#ef4444,#991b1b);border:1px solid #fecaca;font-weight:800;letter-spacing:.08em;white-space:nowrap}.reward-side{width:380px;max-height:70vh;display:flex;flex-direction:column;overflow:hidden}.reward-side .card-detail .big{display:none}.reward-actions{display:flex;flex-direction:column;gap:10px;padding:0 14px 16px}.defeat-body{display:flex;gap:24px;align-items:center;padding:20px 28px;max-width:760px}.deck-layout{flex:1;min-height:0;display:grid;grid-template-columns:minmax(380px,1.25fr) minmax(360px,1fr) 320px;gap:14px;padding:14px}.deck-pool,.deck-list,.deck-detail,.collection-main{min-height:0;display:flex;flex-direction:column;overflow:hidden}.deck-detail{overflow:auto}.deck-filters{display:flex;flex-direction:column;gap:8px;padding:12px;border-bottom:1px solid var(--line)}.deck-filters.row{flex-direction:row;align-items:center;flex-wrap:wrap}.deck-filters .input{min-width:0}.chip-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.input.small{padding:4px 8px;font-size:13px}.small-text{font-size:12.5px}.thumb-grid{flex:1;overflow:auto;display:flex;flex-wrap:wrap;align-content:flex-start;gap:8px;padding:12px}.thumb-grid.tight{gap:5px;flex:none;max-height:52vh}.thumb-grid.tight.extra{max-height:22vh;min-height:70px}.deck-head{display:flex;gap:10px;align-items:baseline;padding:10px 12px 0;flex-wrap:wrap;font-size:14px}.deck-validation{margin-top:auto;padding:10px 12px;border-top:1px solid var(--line);font-size:13px;display:flex;flex-direction:column;gap:3px}.flash{color:var(--gold-hi)}.drop-hint{padding:20px}.collection-layout{flex:1;min-height:0;display:grid;grid-template-columns:1fr 320px;gap:14px;padding:14px}.progress-row{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:12px}.progress-card{cursor:pointer;text-align:left;padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:#00000040;display:grid;grid-template-columns:1fr auto;gap:6px}.progress-card.on{border-color:var(--grp);box-shadow:0 0 18px color-mix(in srgb,var(--grp) 40%,transparent)}.progress-label{font-weight:600;font-size:13.5px}.progress-num{font-size:13px;color:var(--text-dim)}.progress-bar{grid-column:1 / -1;height:6px;border-radius:6px;background:#ffffff14;overflow:hidden}.progress-bar span{display:block;height:100%;background:var(--grp);border-radius:6px}.settings-wrap{flex:1;display:grid;place-items:start center;padding:30px;overflow:auto}.settings-panel{width:min(640px,100%);padding:22px 26px;display:flex;flex-direction:column;gap:18px}.setting{display:grid;grid-template-columns:200px 1fr;align-items:center;gap:14px}.sep{border:none;border-top:1px solid var(--line);margin:4px 0;width:100%}@media (max-width: 1100px){.deck-layout{grid-template-columns:1fr 1fr}.deck-layout .deck-detail{display:none}.opp-grid{grid-template-columns:repeat(2,minmax(200px,260px))}.menu-screen{grid-template-columns:1fr}.menu-right{display:none}}html{-webkit-text-size-adjust:100%}body{touch-action:manipulation;-webkit-tap-highlight-color:transparent;overscroll-behavior:none}.screen{padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px);padding-bottom:env(safe-area-inset-bottom,0px)}.screen-header{padding-top:calc(18px + env(safe-area-inset-top,0px))}@media (max-width: 700px){.screen-header{padding:calc(10px + env(safe-area-inset-top,0px)) 12px 10px;gap:10px;flex-wrap:wrap}.screen-header h1{font-size:20px}.btn{padding:10px 14px;min-height:40px}.btn.small{min-height:36px;padding:6px 12px}.input{padding:10px 12px;font-size:16px}.field .input,.add-friend .input{font-size:16px}.menu-screen{grid-template-columns:1fr;padding:calc(3vh + env(safe-area-inset-top,0px)) 16px 24px;gap:20px;align-items:start;overflow-y:auto}.menu-left{gap:22px}.menu-items{gap:10px;max-width:none}.menu-item{padding:12px 16px;gap:14px}.menu-item:hover{transform:none}.menu-icon{width:40px;height:40px;font-size:19px}.menu-label{font-size:19px}.menu-sub{font-size:12.5px}.menu-account{gap:8px}.opp-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:12px;align-content:start;overflow-y:auto;min-height:0}.opp-card{padding:10px 8px 12px;border-radius:14px}.opp-portrait{width:100%}.opp-portrait svg,.opp-portrait img{width:100%;height:auto;display:block}.opp-title{font-size:10px;letter-spacing:.08em;text-align:center;margin-top:6px}.opp-name{font-size:17px;text-align:center}.opp-sub{font-size:11.5px;min-height:0}.opp-footer{min-height:0;padding:0 12px 14px}.opp-quote{flex-direction:column;gap:10px;padding:12px 14px;text-align:center}.opp-quote-text{font-size:14px;border-left:none;padding-left:0}.deck-layout,.collection-layout{display:flex;flex-direction:column;gap:12px;padding:10px;overflow-y:auto}.deck-layout>*,.collection-layout>*{flex:none;height:78vh}.collection-layout .deck-detail{display:none}.deck-filters{padding:10px}.thumb-grid{padding:10px;gap:6px}.progress-row{grid-template-columns:repeat(2,1fr);padding:10px;gap:8px}.thumb-grid.tight,.thumb-grid.tight.extra{max-height:none}.deck-head{font-size:13px}.settings-wrap{padding:12px}.settings-panel{padding:16px;gap:14px}.setting{grid-template-columns:1fr;gap:6px}.login-wrap{padding:14px;align-items:start}.login-panel{padding:20px 18px}.login-title{font-size:23px}.friends-layout{padding:10px;gap:12px}.friend-list{max-height:46vh}.friend-row{gap:10px;padding:8px}.friend-actions .btn{min-height:36px}.invite-layer{left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom,0px));width:auto}.waiting-panel{padding:22px 18px}.online-result .result-body{flex-direction:column;padding:16px;text-align:center}.server-chip{font-size:12px;padding:4px 10px}.reward-screen,.defeat-screen{justify-content:flex-start;overflow-y:auto;padding:18px 14px 28px}.reward-body{flex-direction:column;gap:16px}.reward-card{width:210px}.reward-side{width:100%;max-height:42vh}.defeat-body{flex-direction:column;padding:14px 16px;text-align:center}.reward-quote{font-size:14px}}@media (max-height: 520px) and (orientation: landscape){.screen-header{padding:calc(6px + env(safe-area-inset-top,0px)) 14px 6px;gap:10px}.screen-header h1{font-size:18px}.screen-header{flex-wrap:wrap;row-gap:6px}.screen-header .btn{padding:4px 10px;min-height:32px;font-size:13px}.screen-header .input{padding:5px 8px;font-size:14px}.btn{padding:8px 14px;min-height:36px}.menu-screen{grid-template-columns:1fr;padding:10px 22px;gap:10px;align-items:center;overflow-y:auto}.menu-right{display:none}.menu-left{flex-direction:row;align-items:center;gap:22px}.menu-logo .title-main.small{font-size:28px}.menu-logo .title-kicker.small{font-size:13px}.menu-logo .title-hd,.menu-logo .title-by{display:none}.menu-items{display:grid;grid-template-columns:1fr 1fr;flex:1;max-width:none;gap:8px}.menu-item{padding:8px 12px;gap:10px}.menu-item:hover{transform:none}.menu-icon{width:34px;height:34px;font-size:16px}.menu-label{font-size:16px}.menu-sub{display:none}.opp-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:10px 16px;align-content:start;overflow-y:auto;min-height:0}.opp-card{padding:8px 6px 10px}.opp-portrait{width:100%}.opp-portrait svg,.opp-portrait img{width:100%;height:auto;max-height:36vh;display:block}.opp-name{font-size:16px}.opp-sub{display:none}.opp-footer{min-height:0;padding:0 16px 10px}.deck-layout{grid-template-columns:1fr 1fr;gap:8px;padding:8px}.collection-layout{grid-template-columns:1fr;gap:8px;padding:8px}.collection-layout .deck-detail{display:none}.thumb-grid.tight{max-height:30vh}.login-wrap{align-items:start;padding:10px}.login-panel{padding:14px 20px;gap:10px}.settings-wrap{padding:10px}.reward-screen,.defeat-screen{overflow-y:auto;justify-content:flex-start;padding:10px 16px 16px;gap:8px}.reward-card{width:150px}.reward-side{width:300px;max-height:60vh}.victory-title,.defeat-title{font-size:40px}.online-result .result-body{padding:12px 18px}}
