@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-condensed-vietnamese-500-normal-DjeaNLFD.woff2) format("woff2"),url(/assets/barlow-condensed-vietnamese-500-normal-CsrJDWc5.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-condensed-latin-ext-500-normal-yA5ONLQ9.woff2) format("woff2"),url(/assets/barlow-condensed-latin-ext-500-normal-B1RE8WP7.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-condensed-latin-500-normal-BgYH2mbd.woff2) format("woff2"),url(/assets/barlow-condensed-latin-500-normal-HIEiP5Ov.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-condensed-vietnamese-700-normal-DYeBwlKR.woff2) format("woff2"),url(/assets/barlow-condensed-vietnamese-700-normal-DhIzd8Tb.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-condensed-latin-ext-700-normal-CwuXbfVR.woff2) format("woff2"),url(/assets/barlow-condensed-latin-ext-700-normal-BIHFfxf0.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-condensed-latin-700-normal-v1xN8_Wq.woff2) format("woff2"),url(/assets/barlow-condensed-latin-700-normal-Dmwat-ge.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/barlow-condensed-vietnamese-800-normal-CpjukuLw.woff2) format("woff2"),url(/assets/barlow-condensed-vietnamese-800-normal-BZxKbt5V.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/barlow-condensed-latin-ext-800-normal-DGNyg4u8.woff2) format("woff2"),url(/assets/barlow-condensed-latin-ext-800-normal-gY_0Gifi.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/barlow-condensed-latin-800-normal-BKzMuPgK.woff2) format("woff2"),url(/assets/barlow-condensed-latin-800-normal-e9GbPXiK.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root,[data-theme=dark]{--bg: #0e1526;--bg-2: #121b30;--surface: rgba(29, 42, 73, .72);--surface-2: rgba(23, 34, 60, .72);--surface-solid: #17223c;--surface-hover: rgba(37, 53, 91, .85);--input: rgba(8, 12, 24, .55);--overlay: rgba(6, 10, 22, .66);--line: rgba(160, 180, 220, .14);--line-2: rgba(160, 180, 220, .28);--text: #eef1f7;--text-2: #c5cde0;--mist: #8a96b2;--gold: #e8c77a;--gold-2: #b8914a;--gold-ink: #1d1406;--gold-soft: rgba(232, 199, 122, .12);--gold-glow: rgba(232, 199, 122, .45);--badge: rgba(8, 12, 24, .92);--up: #9ff0c3;--down: #ffb3b5;--danger: #e5484d;--mat-a: #1a2748;--mat-b: #0f1830;--mat-line: rgba(232, 199, 122, .16);--mat-zone: rgba(255, 255, 255, .025);--mat-label: rgba(232, 199, 122, .55);--art-op: .2;--shadow: 0 18px 50px -12px rgba(0, 0, 0, .75);--slot-bg: rgba(8, 12, 26, .45);--slot-line: rgba(232, 199, 122, .32);--slot-inner: rgba(255, 255, 255, .04);--noise-op: .05;--hero-1: #eef1f7;color-scheme:dark}[data-theme=light]{--bg: #eef1f6;--bg-2: #e3e8f1;--surface: rgba(255, 255, 255, .82);--surface-2: rgba(248, 250, 253, .86);--surface-solid: #ffffff;--surface-hover: rgba(255, 255, 255, .98);--input: #ffffff;--overlay: rgba(220, 226, 238, .6);--line: rgba(30, 45, 80, .12);--line-2: rgba(30, 45, 80, .24);--text: #121a2e;--text-2: #2f3a55;--mist: #5d6a88;--gold: #a87b2a;--gold-2: #7f5a17;--gold-ink: #fffaf0;--gold-soft: rgba(168, 123, 42, .12);--gold-glow: rgba(168, 123, 42, .35);--badge: rgba(255, 255, 255, .95);--up: #11834b;--down: #c42a30;--danger: #c42a30;--mat-a: #dfe6f2;--mat-b: #c9d3e5;--mat-line: rgba(127, 90, 23, .25);--mat-zone: rgba(255, 255, 255, .35);--mat-label: rgba(127, 90, 23, .7);--art-op: .16;--shadow: 0 18px 44px -14px rgba(30, 45, 80, .35);--slot-bg: rgba(255, 255, 255, .72);--slot-line: rgba(127, 90, 23, .45);--slot-inner: rgba(255, 255, 255, .6);--noise-op: .035;--hero-1: #121a2e;color-scheme:light}:root{--e-blue: #3b8cff;--e-green: #2fb872;--e-purple: #9b5cf6;--e-red: #e5484d;--e-yellow: #f5c400;--num: "Barlow Condensed", "Arial Narrow", sans-serif;--cjk: "PingFang SC", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans CJK SC", "Noto Sans CJK JP", "Microsoft YaHei", "Yu Gothic", sans-serif;--r-s: 6px;--r-m: 10px;--r-l: 16px;--card-r: 4.2%;--shadow-card: 0 1px 0 rgba(255, 255, 255, .06) inset, 0 10px 24px -8px rgba(0, 0, 0, .55), 0 2px 6px rgba(0, 0, 0, .3)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--cjk);color:var(--text);background-color:var(--bg);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased;background-image:radial-gradient(1200px 700px at 50% -10%,var(--gold-soft),transparent 60%),radial-gradient(900px 600px at 110% 110%,rgba(155,92,246,.07),transparent 60%);background-attachment:fixed;transition:background-color .25s,color .25s}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:var(--noise-op);z-index:0;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}#root{position:relative;z-index:1}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--gold);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.num{font-family:var(--num);font-variant-numeric:tabular-nums;letter-spacing:.01em}.muted{color:var(--mist)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;padding:9px 16px;border-radius:var(--r-s);border:1px solid var(--line-2);background:var(--surface);color:var(--text);transition:border-color .15s,background .15s,transform .08s}.btn:hover{border-color:var(--gold)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.gold{color:#1d1406;font-weight:700;border-color:#f3dca3;background:linear-gradient(115deg,#b8914a,#f1d79a 38%,#fff4d1,#e3bd6c 62%,#a8803c);background-size:220% 100%;box-shadow:0 0 0 1px #00000040,0 8px 22px -8px var(--gold-glow);transition:background-position .6s ease,transform .08s}.btn.gold:hover{background-position:100% 0}.btn.ghost{background:transparent;border-color:transparent;color:var(--mist)}.btn.ghost:hover{color:var(--text);border-color:var(--line-2)}.btn.danger:hover{border-color:var(--danger);color:var(--danger)}.btn.small{padding:5px 10px;font-size:12.5px}.btn.big{padding:12px 24px;font-size:16px;min-width:180px}.input{width:100%;padding:9px 12px;border-radius:var(--r-s);border:1px solid var(--line-2);background:var(--input);color:var(--text);font:inherit}.input:focus{outline:none;border-color:var(--gold)}.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;cursor:pointer;border:1px solid var(--line-2);background:var(--surface-2);color:var(--mist);font-size:12.5px}.chip.on{color:var(--text);border-color:var(--gold);background:var(--gold-soft)}.pip{width:10px;height:10px;border-radius:50%;display:inline-block;box-shadow:0 0 0 1px #00000059,0 0 8px currentColor;background:currentColor}.c-blue{color:var(--e-blue)}.c-green{color:var(--e-green)}.c-purple{color:var(--e-purple)}.c-red{color:var(--e-red)}.c-yellow{color:var(--e-yellow)}.panel{background:linear-gradient(180deg,var(--surface),var(--surface-2));border:1px solid var(--line);border-radius:var(--r-m);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.topbar{display:flex;align-items:center;gap:10px;padding:12px 22px;position:relative;z-index:5;height:56px}.brand{font-family:var(--num);font-weight:800;font-size:22px;letter-spacing:.06em;cursor:pointer;display:flex;align-items:baseline;gap:10px}.brand .mark{background:linear-gradient(100deg,#d8ae5c,#f7e5b2 45%,#b8914a 55%,#c89a4a);-webkit-background-clip:text;background-clip:text;color:transparent}.brand small{font-family:var(--cjk);font-weight:400;font-size:12px;color:var(--mist);letter-spacing:0}.grow{flex:1}.themebtn{width:34px;height:34px;padding:0;border-radius:50%}.home{min-height:calc(100% - 56px);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:40px;align-items:center;padding:10px 64px 40px;max-width:1400px;margin:0 auto}.hero-title{font-family:var(--num);font-weight:800;font-size:clamp(64px,9vw,132px);line-height:.86;letter-spacing:.01em;margin:0}.hero-title .l1{display:block;color:var(--hero-1)}.hero-title .l2{display:block;background:linear-gradient(100deg,#b8914a,#f6e1a8 30%,#fffaf0,#e3bd6c 58%,#9d7535);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:foil 9s ease-in-out infinite alternate}[data-theme=light] .hero-title .l2{background-image:linear-gradient(100deg,#7f5a17,#c89a4a 30%,#e9cf8f,#a87b2a 58%,#6b4a10)}@keyframes foil{0%{background-position:0% 0}to{background-position:100% 0}}.hero-sub{margin:18px 0 30px;color:var(--mist);font-size:16px;max-width:34em}.entries{display:grid;gap:12px;max-width:520px}.entry{display:grid;grid-template-columns:1fr auto;align-items:center;gap:16px;padding:16px 18px;cursor:pointer;text-align:left;border-radius:var(--r-m);border:1px solid var(--line);background:var(--surface-2);transition:border-color .2s,background .2s}.entry:hover{border-color:var(--gold);background:var(--surface-hover)}.entry b{font-size:17px;display:block}.entry span{color:var(--mist);font-size:13px}.entry .go{font-family:var(--num);font-weight:700;font-size:26px;color:var(--gold)}.entry.primary{border-color:var(--gold);background:linear-gradient(100deg,var(--gold-soft),var(--surface-2) 60%)}.fan{position:relative;height:min(560px,62vh)}.fan .fcard{position:absolute;width:min(250px,17vw);left:50%;top:50%;transform-origin:50% 110%}.titles{margin-top:28px;display:flex;gap:10px;flex-wrap:wrap;align-items:center}.titles .t{font-size:13px;padding:6px 12px;border-radius:999px;border:1px solid var(--line-2)}.titles .t small{color:var(--mist);margin-left:6px}.notice{position:fixed;left:22px;bottom:14px;max-width:520px;font-size:11px;color:var(--mist);opacity:.8;line-height:1.5}.card{position:relative;aspect-ratio:600 / 837;border-radius:var(--card-r);box-shadow:var(--shadow-card);background:#0b1020;transition:transform .18s ease,box-shadow .2s;transform:perspective(700px) rotateY(var(--ry, 0deg)) rotateX(var(--rx, 0deg))}.card img{width:100%;height:100%;display:block;border-radius:var(--card-r);object-fit:cover;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;pointer-events:none}.card.holo:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--card-r);pointer-events:none;opacity:0;transition:opacity .25s;background:radial-gradient(circle at var(--mx, 50%) var(--my, 50%),rgba(255,255,255,.35),transparent 42%),linear-gradient(115deg,transparent 20%,rgba(255,219,150,.22) 38%,rgba(150,210,255,.2) 50%,rgba(220,160,255,.18) 62%,transparent 80%);background-size:100% 100%,250% 250%;background-position:center,var(--mx, 50%) var(--my, 50%);mix-blend-mode:color-dodge}.card.holo:hover:after{opacity:1}.card.back{background:#111a31 url(/backs/card-back.svg) center / cover no-repeat;border:0}.card.back.apback{background-image:url(/backs/ap-back.svg)}.card.rested{transform:rotate(90deg) scale(.86)}.card.pick{cursor:pointer}.card.target{box-shadow:0 0 0 2px var(--gold),0 0 22px 2px var(--gold-glow),var(--shadow-card);animation:pulse 1.6s ease-in-out infinite}.card.chosen{box-shadow:0 0 0 3px #fff4d1,0 0 30px 4px var(--gold-glow)}.card.src{box-shadow:0 0 0 2px #fff4d1,0 0 26px 6px var(--gold-glow),var(--shadow-card)}@keyframes pulse{0%,to{box-shadow:0 0 0 2px var(--gold),0 0 12px 0 var(--gold-glow),var(--shadow-card)}50%{box-shadow:0 0 0 2px var(--gold),0 0 28px 4px var(--gold-glow),var(--shadow-card)}}.works{max-width:1200px;margin:0 auto;padding:8px 22px 40px}.works h2,.center h2{font-family:var(--num);font-weight:800;font-size:38px;margin:6px 0 16px;letter-spacing:.02em}.workgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:18px}.work{position:relative;height:220px;border-radius:var(--r-l);overflow:hidden;cursor:pointer;border:1px solid var(--line-2);text-align:left;padding:0;background:#0b1020;box-shadow:var(--shadow)}.work .bg{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center 22%;transform:scale(1.08);transition:transform .5s ease;filter:saturate(1.05)}.work:hover .bg{transform:scale(1.14)}.work .shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#080c18eb,#080c18b8 42%,#080c181a)}.work .info{position:absolute;left:22px;bottom:18px;right:22px;color:#eef1f7;display:grid;gap:2px}.work .prod{font-family:var(--num);font-weight:700;font-size:16px;color:#e8c77a;letter-spacing:.08em}.work .abbr{font-family:var(--num);font-weight:800;font-size:64px;line-height:.9;letter-spacing:.02em}.work .nm{font-size:17px;font-weight:600}.work .nm small{display:block;font-weight:400;font-size:12.5px;color:#b9c2d8}.work .cnt{position:absolute;right:16px;top:14px;font-size:12px;color:#eef1f7;background:#080c1899;padding:3px 10px;border-radius:999px;border:1px solid rgba(232,199,122,.4)}.work:hover{border-color:#e8c77a}.decks{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:18px;padding:4px 22px 22px;height:calc(100% - 56px)}.gallery{display:flex;flex-direction:column;min-height:0}.filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:12px;border-bottom:1px solid var(--line)}.filters .input{max-width:260px}.worktag{font-family:var(--num);font-weight:800;font-size:22px;letter-spacing:.04em;margin-right:6px}.grid{flex:1;overflow:auto;padding:16px;display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:16px 14px;align-content:start}.gcard{position:relative;cursor:pointer;display:grid;gap:5px}.gcard .count{position:absolute;right:-6px;top:-6px;min-width:26px;height:26px;border-radius:13px;background:var(--gold);color:var(--gold-ink);font-family:var(--num);font-weight:800;font-size:16px;display:grid;place-items:center;box-shadow:0 2px 8px #0006;z-index:2}.gcard .ver{font-size:11px;color:var(--mist);display:flex;gap:5px;align-items:center;justify-content:center}.gcard .tag{font-size:10.5px;padding:1px 6px;border-radius:4px;border:1px solid var(--gold);color:var(--gold)}.gcard.sel .card{box-shadow:0 0 0 2px var(--gold),var(--shadow-card)}.deckpane{display:flex;flex-direction:column;min-height:0}.deckpane header{padding:14px;display:grid;gap:10px;border-bottom:1px solid var(--line)}.deckpane .total{font-family:var(--num);font-size:38px;font-weight:800;line-height:1}.deckpane .total.ok{color:var(--gold)}.curve{display:flex;align-items:flex-end;gap:4px;height:44px}.curve div{flex:1;background:linear-gradient(180deg,var(--gold),var(--gold-2));border-radius:2px 2px 0 0;min-height:2px;opacity:.85;position:relative}.curve span{position:absolute;bottom:-16px;left:0;right:0;text-align:center;font-family:var(--num);font-size:11px;color:var(--mist)}.dlist{flex:1;overflow:auto;padding:8px 10px 10px}.drow{display:grid;grid-template-columns:34px 1fr auto auto auto;align-items:center;gap:8px;padding:4px 6px;border-radius:var(--r-s);cursor:pointer}.drow:hover{background:var(--gold-soft)}.drow .card{width:34px}.drow .k{font-family:var(--num);font-weight:700;color:var(--gold);font-size:17px;min-width:26px;text-align:right}.problems{padding:10px 14px;font-size:12.5px;color:var(--danger);border-top:1px solid var(--line)}.problems.ok{color:var(--gold)}.decksel{display:flex;gap:8px;flex-wrap:wrap;padding:10px 14px;border-top:1px solid var(--line);max-height:120px;overflow:auto}.peek{position:fixed;bottom:22px;width:420px;padding:12px;z-index:30;pointer-events:none;box-shadow:var(--shadow)}.peek .zoom{grid-template-columns:150px 1fr;height:auto}.peek .text{max-height:220px}.center{max-width:1000px;margin:0 auto;padding:8px 22px 40px;display:grid;gap:16px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.box{padding:18px}.seat{display:grid;grid-template-columns:1fr auto;padding:14px;border-radius:var(--r-m);border:1px solid var(--line-2);background:var(--surface-2)}.code{font-family:var(--num);font-weight:800;font-size:44px;letter-spacing:.16em;color:var(--gold)}.roomlist{display:grid;gap:8px}.chat{max-height:180px;overflow:auto;font-size:13px;display:grid;gap:4px}.versus{display:grid;grid-template-columns:1fr auto 1fr;align-items:stretch;gap:16px}.vs{align-self:center;font-family:var(--num);font-weight:800;font-size:40px;color:var(--gold);letter-spacing:.04em;text-shadow:0 0 24px var(--gold-glow)}.vseat{min-height:120px;display:grid;align-content:center;justify-items:center;gap:4px;padding:18px;border-radius:var(--r-m);border:1px dashed var(--line-2);text-align:center}.vseat b{font-size:20px}.vseat.filled{border-style:solid;background:var(--surface-2)}.vseat.me{border-color:var(--gold)}.vseat.ready{box-shadow:0 0 0 1px var(--gold),0 0 30px -8px var(--gold-glow)}.vseat .ready{color:var(--gold);font-weight:600;font-size:13px}.modes{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modecard{padding:18px;text-align:left;cursor:pointer;border-radius:var(--r-m);border:1px solid var(--line-2);background:var(--surface-2)}.modecard.on{border-color:var(--gold);background:var(--gold-soft)}.modecard b{display:block;font-size:16px}.modecard span{color:var(--mist);font-size:13px}.deckgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px;margin-top:10px}.deckbtn{display:grid;grid-template-columns:42px 1fr;gap:10px;align-items:center;text-align:left;padding:8px;border-radius:var(--r-s);border:1px solid var(--line);background:var(--surface-2);cursor:pointer}.deckbtn .card{width:42px}.deckbtn.on{border-color:var(--gold);background:var(--gold-soft)}.deckbtn small{display:block;color:var(--mist);font-size:11.5px}.game{height:100vh;display:grid;grid-template-columns:minmax(0,1fr) 330px;--cardh: clamp(52px, calc((100vh - 210px) / 6.1), 124px)}.table{position:relative;display:grid;grid-template-rows:auto auto auto auto;align-content:center;gap:8px;padding:30px 18px 0;min-height:0;overflow:hidden;overflow:clip;isolation:isolate;background:radial-gradient(120% 70% at 50% 50%,var(--mat-a),var(--mat-b))}.table .art{position:absolute;left:0;right:0;height:50%;background-size:cover;background-position:center 25%;opacity:var(--art-op);filter:blur(18px) saturate(1.2);z-index:-2;transform:scale(1.1)}.table .art.top{top:0;mask-image:linear-gradient(180deg,#000 30%,transparent);-webkit-mask-image:linear-gradient(180deg,#000 30%,transparent)}.table .art.bottom{bottom:0;mask-image:linear-gradient(0deg,#000 30%,transparent);-webkit-mask-image:linear-gradient(0deg,#000 30%,transparent)}.table .glow{position:absolute;left:-10%;right:-10%;height:40%;z-index:-1;pointer-events:none;filter:blur(40px);opacity:.28}.table .glow.top{top:-22%}.table .glow.bottom{bottom:-22%}.table .emblem{position:absolute;left:50%;top:50%;width:min(46vh,420px);aspect-ratio:1;transform:translate(-50%,-52%);z-index:-1;pointer-events:none;border-radius:50%;border:1px solid var(--mat-line);box-shadow:0 0 0 26px #e8c77a05,0 0 0 27px var(--mat-line),inset 0 0 90px var(--gold-soft)}.table .emblem:before{content:"";position:absolute;top:22%;right:22%;bottom:22%;left:22%;border-radius:50%;border:1px dashed var(--mat-line)}.table .emblem:after{content:"FINAL ARENA";position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);text-align:center;font-family:var(--num);font-weight:800;font-size:clamp(18px,3.2vh,30px);letter-spacing:.5em;color:var(--mat-line)}.side{display:grid;grid-template-columns:150px minmax(0,1fr) 104px;gap:12px;align-items:center;min-height:0}.side.opp .lines{flex-direction:column-reverse}.lines{display:flex;flex-direction:column;gap:10px;min-width:0}.zone{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:center;height:calc(var(--cardh) + 14px);padding:7px 10px;border-radius:12px;border:1px solid var(--mat-line);background:var(--mat-zone);transition:box-shadow .15s,border-color .15s,background .15s}.zone .lab{position:absolute;left:12px;top:-9px;font-size:10.5px;letter-spacing:.08em;color:var(--mat-label);background:var(--mat-a);padding:0 6px;border-radius:4px}.zone.drop{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold),0 0 24px -4px var(--gold-glow);background:var(--gold-soft)}.zone.drop.over{box-shadow:0 0 0 2px var(--gold),0 0 34px 0 var(--gold-glow)}.slot{position:relative;width:var(--cardh);height:var(--cardh);justify-self:center;display:grid;place-items:center}.slot.empty{width:calc(var(--cardh) * .717);border-radius:6px;border:1.5px solid var(--slot-line);background:var(--slot-bg);box-shadow:inset 0 0 0 1px var(--slot-inner),inset 0 8px 18px -10px #00000059}.slot .card{height:var(--cardh);width:calc(var(--cardh) * .717)}.slot.dropunit .card{box-shadow:0 0 0 2px var(--gold),0 0 20px var(--gold-glow)}.badges{position:absolute;left:50%;bottom:-9px;transform:translate(-50%);display:flex;gap:4px;z-index:3;white-space:nowrap}.bp{font-family:var(--num);font-weight:800;font-size:17px;line-height:1;padding:3px 8px 2px;border-radius:4px;background:var(--badge);border:1px solid var(--line-2);color:var(--text)}.bp.up{color:var(--up);border-color:var(--up)}.bp.down{color:var(--down);border-color:var(--down)}.kwb{font-size:10.5px;padding:3px 6px 2px;border-radius:4px;background:var(--badge);border:1px solid var(--gold);color:var(--gold)}.stackn{position:absolute;top:-6px;right:-4px;font-family:var(--num);font-weight:800;font-size:13px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--surface-solid);border:1px solid var(--gold);color:var(--gold);z-index:3}.pile{display:grid;gap:6px;justify-items:center}.pilec{position:relative;width:calc(var(--cardh) * .62)}.pilec .n{position:absolute;left:50%;bottom:-7px;transform:translate(-50%);font-family:var(--num);font-weight:800;font-size:17px;background:var(--badge);border:1px solid var(--line-2);border-radius:4px;padding:0 7px;color:var(--text)}.pilel{font-size:11px;color:var(--mist);text-align:center}.stats{display:flex;flex-direction:column;align-items:center;gap:6px}.pname{font-size:12.5px;font-weight:600;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lifen{font-family:var(--num);font-weight:800;font-size:46px;line-height:.9}.aps{display:flex;gap:5px}.ap{width:18px;height:26px;border-radius:3px;border:1px solid rgba(232,199,122,.6);background:linear-gradient(160deg,#f1d79a,#b8914a);box-shadow:0 0 10px -2px var(--gold-glow);transition:transform .25s}.ap.rested{transform:rotate(90deg) scale(.85);background:var(--surface-solid);border-color:var(--line-2);box-shadow:none}.midbar{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 16px;font-size:12.5px;color:var(--mist);min-height:38px}.midbar .hint{color:var(--text-2);font-size:12.5px}.controls{display:flex;align-items:center;gap:10px;padding:4px 6px 4px 14px;border-radius:999px;background:var(--surface-solid);border:1px solid var(--gold);box-shadow:0 0 22px -10px var(--gold-glow)}.phases{display:flex;gap:2px;padding:3px;border-radius:8px;background:var(--surface-2);border:1px solid var(--line)}.phases span{padding:3px 10px;border-radius:5px;font-size:12px;color:var(--mist)}.phases span.on{background:var(--gold-soft);color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}.turnflag{font-family:var(--num);font-weight:800;font-size:20px;color:var(--text);letter-spacing:.03em}.turnflag.mine{color:var(--gold)}.energy{display:flex;gap:10px;align-items:center;font-family:var(--num);font-weight:700;font-size:16px}.hand{position:relative;height:calc(var(--cardh) * 1.22);display:flex;justify-content:center;align-items:flex-start;padding-top:4px}.hand .hc{width:calc(var(--cardh) * .95);margin:0 calc(var(--cardh) * -.1);transition:transform .18s ease;transform-origin:50% 120%;touch-action:none}.hand .hc:hover{transform:translateY(-22%) scale(1.12)!important;z-index:5}.hand .hc.dragging{opacity:.25}.opphand{position:absolute;top:4px;left:0;right:0;display:flex;justify-content:center;height:28px}.opphand .card{width:20px;margin:0 -3px}.dragghost{position:fixed;z-index:90;pointer-events:none;width:calc(var(--cardh, 110px) * 1.05);transform:translate(-50%,-60%) rotate(-4deg);filter:drop-shadow(0 18px 30px rgba(0,0,0,.55))}.banner{position:absolute;left:50%;bottom:calc(var(--cardh) * 1.5);transform:translate(-50%);z-index:12;display:flex;gap:10px;align-items:center;padding:8px 10px 8px 16px;border-radius:999px;background:var(--surface-solid);border:1px solid var(--gold);box-shadow:var(--shadow),0 0 30px -10px var(--gold-glow);white-space:nowrap;font-size:13.5px}.banner .hint{color:var(--mist);font-size:12px}.waitpill{position:absolute;left:50%;bottom:calc(var(--cardh) * 1.5);transform:translate(-50%);z-index:12;padding:6px 16px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line-2);color:var(--mist);font-size:12.5px}.rail{display:grid;grid-template-rows:318px 1fr auto;gap:10px;padding:12px;border-left:1px solid var(--line);background:var(--surface-2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-height:0}.zoom{display:grid;grid-template-columns:118px 1fr;grid-template-rows:auto 1fr;gap:10px 12px;height:318px;overflow:hidden}.zoom .meta{font-size:12px;display:grid;gap:3px;align-content:start}.zoom .meta b{font-size:14px}.zoom .text{font-size:12px;line-height:1.55;white-space:pre-wrap;color:var(--text-2);overflow:auto;grid-column:1 / -1;min-height:0}.zoom.empty{grid-template-columns:1fr;grid-template-rows:1fr;text-align:center;padding:20px;display:grid;place-items:center;color:var(--mist);font-size:12px;border:1px dashed var(--line-2);border-radius:var(--r-m)}.log{overflow:auto;font-size:12px;display:grid;gap:3px;align-content:start;padding:8px 4px 0 0;min-height:0;border-top:1px solid var(--line)}.log .turn{margin-top:6px;color:var(--gold);font-weight:600}.log div{color:var(--text-2)}.railfoot{display:flex;gap:8px;justify-content:space-between;align-items:center}.modal-wrap{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;background:#060a1647;padding:16px}[data-theme=light] .modal-wrap{background:#1e2d5024}.backbtn{position:absolute;left:50%;top:40px;transform:translate(-50%);z-index:41;box-shadow:var(--shadow)}@keyframes fade{0%{opacity:0}to{opacity:1}}.modal{width:fit-content;min-width:min(420px,100%);max-width:min(980px,100%);max-height:86%;display:grid;grid-template-rows:auto 1fr auto;gap:10px;padding:14px 16px;border-radius:var(--r-l);background:var(--surface-solid);border:1px solid var(--gold);box-shadow:var(--shadow),0 0 60px -20px var(--gold-glow);pointer-events:auto;transition:opacity .15s}.modal h3{margin:0;font-size:15.5px;font-weight:700;display:flex;gap:10px;align-items:center}.modal .srcline{display:flex;gap:10px;align-items:center;font-size:12.5px;color:var(--mist)}.modal .srcline .card{width:40px}.modal .body{overflow:auto;min-height:0;display:grid;gap:10px;align-content:start;padding:2px}.modal .foot{display:flex;gap:10px;justify-content:space-between;align-items:center}.group h5{margin:0 0 6px;font-size:12.5px;font-weight:600;display:flex;gap:8px;align-items:center}.group h5 .who{padding:1px 8px;border-radius:4px;font-size:11.5px}.who.mine{background:#3b8cff26;color:var(--e-blue);border:1px solid rgba(59,140,255,.5)}.who.theirs{background:#e5484d21;color:var(--e-red);border:1px solid rgba(229,72,77,.45)}.who.neutral{background:var(--gold-soft);color:var(--gold);border:1px solid var(--gold)}.tiles{display:flex;flex-wrap:wrap;gap:8px}.tile{position:relative;width:104px;display:grid;gap:3px;justify-items:center;padding:5px 4px 4px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--surface-2);cursor:pointer;transition:border-color .15s,transform .12s}.tile:hover{border-color:var(--gold);transform:translateY(-2px)}.tile.on{border-color:var(--gold);background:var(--gold-soft);box-shadow:0 0 0 1px var(--gold),0 0 22px -6px var(--gold-glow)}.tile .card{width:94px}.tile .card.rested{transform:none;filter:grayscale(.25) brightness(.8)}.tile .cap{font-size:11px;color:var(--text-2);text-align:center;line-height:1.35}.tile .cap b{font-family:var(--num);font-size:15px;color:var(--text)}.tile .seq{position:absolute;top:-8px;right:-8px;width:24px;height:24px;border-radius:50%;background:var(--gold);color:var(--gold-ink);font-family:var(--num);font-weight:800;display:grid;place-items:center}.choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.choice{padding:9px 12px;border-radius:var(--r-m);border:1px solid var(--line-2);background:var(--surface-2);cursor:pointer;text-align:left;font-size:14px;line-height:1.5}.choice:hover{border-color:var(--gold)}.choice.on{border-color:var(--gold);background:var(--gold-soft)}.choice.primary{border-color:var(--gold)}.timer{height:3px;background:var(--line);border-radius:2px;overflow:hidden}.timer i{display:block;height:100%;background:linear-gradient(90deg,var(--gold-2),var(--gold));transition:width 1s linear}.announce{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:45;display:grid;gap:12px;justify-items:center;padding:18px 22px;border-radius:var(--r-l);background:var(--surface-solid);border:1px solid var(--line-2);box-shadow:var(--shadow);animation:pop .22s cubic-bezier(.2,.9,.3,1.3);max-width:92%}@keyframes pop{0%{transform:translate(-50%,-46%) scale(.92);opacity:0}to{transform:translate(-50%,-50%) scale(1);opacity:1}}.announce .who{padding:2px 10px;border-radius:999px;font-size:12px}.announce .cards{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.announce .cards .card{width:clamp(120px,16vh,190px)}.announce .what{font-size:15px;font-weight:600;text-align:center}.announce .more{font-size:12px;color:var(--mist)}.result{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:var(--overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:60}.result h1{font-family:var(--num);font-weight:800;font-size:clamp(80px,12vw,160px);margin:0;line-height:1;text-align:center;color:var(--text)}.result h1.win{background:linear-gradient(100deg,#b8914a,#fff4d1 45%,#e3bd6c 60%,#9d7535);-webkit-background-clip:text;background-clip:text;color:transparent}.result .row{justify-content:center;margin-top:18px}.viewer{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay);z-index:70;display:grid;place-items:center;padding:30px}.viewer .inner{max-width:1000px;width:100%;max-height:86vh;overflow:auto;padding:18px;background:var(--surface-solid)}.viewer .grid{overflow:visible}.hotseat{position:absolute;top:34px;left:50%;transform:translate(-50%);z-index:11;padding:4px 14px;border-radius:999px;background:var(--gold-soft);border:1px solid var(--gold);color:var(--gold);font-size:12.5px;font-weight:600}@media(max-width:1100px){.home{grid-template-columns:1fr;padding:10px 22px 90px}.fan{display:none}.decks{grid-template-columns:1fr;height:auto}.game{grid-template-columns:1fr;grid-template-rows:1fr 200px}.rail{border-left:0;border-top:1px solid var(--line);grid-template-rows:1fr;grid-template-columns:1fr 1fr}.rail .zoom{height:180px}.railfoot{display:none}.side{grid-template-columns:64px minmax(0,1fr) 56px;gap:6px}.zone{gap:4px;padding:6px 4px}.notice{position:static;padding:0 22px 20px}.modes{grid-template-columns:1fr}}.lifestack{position:relative;width:calc(var(--cardh) * .42);height:calc(var(--cardh) * .42 / .717 + 18px)}.lifestack .card{position:absolute;left:0;width:100%}.lifecount{font-family:var(--num);font-weight:800;font-size:30px;line-height:1}.apzone{display:flex;gap:calc(var(--cardh) * .12);padding:0 calc(var(--cardh) * .08)}.apcard{width:calc(var(--cardh) * .3);transition:transform .25s}.apcard.rested{transform:rotate(90deg) scale(.8);filter:brightness(.7)}.apcard.locked{opacity:.35}.slot .card.chosen{box-shadow:0 0 0 3px #fff4d1,0 0 26px 4px var(--gold-glow)}.vswitch{display:flex;align-items:center;justify-content:center;gap:4px;font-size:11px;color:var(--mist)}.vswitch button{border:1px solid var(--line-2);background:var(--surface-2);color:var(--text);border-radius:4px;width:20px;height:20px;padding:0;cursor:pointer;line-height:1}.vswitch button:hover{border-color:var(--gold)}.apslots{display:flex;gap:8px;align-items:center}.apslots .card{width:46px;cursor:pointer}.apslots .empty{width:46px;aspect-ratio:600/837;border:1px dashed var(--line-2);border-radius:4px}.genpips{position:absolute;left:50%;top:-8px;transform:translate(-50%);display:flex;gap:3px;padding:2px 5px;border-radius:999px;background:var(--badge);border:1px solid var(--line-2);z-index:3}.genpips .pip{width:8px;height:8px}.piles2{display:flex;gap:6px}.pilec.small{width:calc(var(--cardh) * .44)}.pilec.small .n{font-size:14px;padding:0 5px}.tile.off{cursor:default;opacity:.45;filter:grayscale(.6)}.tile.off:hover{transform:none;border-color:var(--line)}.logcard{color:var(--gold);cursor:pointer;border-bottom:1px dotted currentColor}.logcard:hover{color:var(--text)}
