#root{min-height:100vh}.boot-screen{min-height:100vh;display:grid;place-content:center;justify-items:center;background:radial-gradient(circle at 50% 35%,#1c3529,transparent 35%),#07110e;color:var(--muted)}.boot-mark,.boot-screen .boot-mark{width:64px;height:64px;display:grid;place-items:center;border:1px solid var(--gold);border-radius:20px 4px;color:var(--gold-bright);font:32px Georgia,serif;box-shadow:0 0 50px #d7b66f2e}.app-header,.battle-header{min-height:78px;display:flex;align-items:center;gap:24px;padding:14px clamp(20px,4vw,64px);border-bottom:1px solid var(--line);background:#07110ee5;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);position:relative;z-index:20}.brand{display:flex;align-items:center;gap:12px;white-space:nowrap}.brand__sigil{width:42px;height:42px;display:grid;place-items:center;border:1px solid rgb(215 182 111 / 65%);border-radius:14px 3px;color:var(--gold-bright);background:linear-gradient(145deg,rgb(215 182 111 / 17%),transparent),#102119;font:22px Georgia,serif}.brand strong,.brand small{display:block}.brand strong{font:18px Georgia,serif;letter-spacing:.02em}.brand small{margin-top:1px;color:#7e9186;font-size:10px;letter-spacing:.15em;text-transform:uppercase}.status-bar{margin-left:auto;display:flex;align-items:center;gap:8px}.status-pill{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid var(--line);border-radius:999px;color:var(--muted);background:#ffffff08;font-size:11px;font-weight:600}.status-dot{width:7px;height:7px;border-radius:50%;background:#71c497;box-shadow:0 0 0 3px #71c4971f}.is-offline .status-dot{background:#e58470;box-shadow:0 0 0 3px #e5847024}.is-checking .status-dot{background:#e7c477;box-shadow:0 0 0 3px #e7c47724;animation:connection-pulse 1.4s ease-in-out infinite}.is-demo .status-dot{background:#d7b66f;box-shadow:0 0 0 3px #d7b66f24}.save-status--error{color:#ffb3a5}.setup-screen{min-height:100vh;background:radial-gradient(circle at 50% 17%,rgb(67 119 91 / 20%),transparent 25%),linear-gradient(110deg,rgb(215 182 111 / 4%) 1px,transparent 1px),#07110e;background-size:auto,90px 100%}.setup-hero{min-height:285px;display:flex;align-items:center;justify-content:center;gap:clamp(60px,14vw,220px);padding:56px 30px 40px}.setup-hero__copy{max-width:650px}.eyebrow{color:var(--gold);font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.setup-hero h1{margin:12px 0 16px;font:clamp(44px,6vw,76px) / .95 Georgia,serif;letter-spacing:-.04em}.setup-hero p{max-width:580px;margin-bottom:0;color:var(--muted);font-size:16px;line-height:1.7}.setup-hero__seal{width:150px;height:150px;flex:0 0 auto;display:grid;place-items:center;transform:rotate(45deg);border:1px solid rgb(215 182 111 / 25%);background:linear-gradient(135deg,rgb(215 182 111 / 12%),transparent),#101d17;box-shadow:0 28px 80px #00000073}.setup-hero__seal:before{content:"";position:absolute;width:112px;height:112px;border:1px solid rgb(215 182 111 / 16%)}.setup-hero__seal span{transform:rotate(-45deg);color:var(--gold-bright);font:28px Georgia,serif}.deck-grid{width:min(1420px,calc(100% - 48px));margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 90px minmax(0,1fr);align-items:stretch}.deck-slot{min-height:315px;padding:clamp(24px,3vw,42px);border:1px solid var(--line);background:linear-gradient(145deg,rgb(255 255 255 / 4%),transparent 45%),#101d17e8;box-shadow:0 28px 70px #00000047}.deck-slot--1{border-radius:28px 6px 6px 28px}.deck-slot--2{border-radius:6px 28px 28px 6px}.deck-slot__heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px;color:var(--gold-bright);font:21px Georgia,serif}.import-state{padding:6px 9px;border-radius:999px;color:var(--muted);background:#ffffff0d;font:600 10px Inter,Segoe UI,sans-serif;letter-spacing:.08em;text-transform:uppercase}.import-state--ready{color:#9de0bc;background:#509e7321}.import-state--error{color:#ffb3a5;background:#ae5d4f24}.deck-slot label{display:block;margin-bottom:9px;color:var(--muted);font-size:12px;font-weight:600}.deck-input-row{display:flex;gap:10px}.deck-input-row input{min-width:0;flex:1;height:48px;padding:0 15px;border:1px solid rgb(255 255 255 / 13%);border-radius:8px;color:var(--ink);background:#00000038}.deck-input-row input::placeholder{color:#65756c}.button{min-height:40px;padding:0 16px;border:1px solid transparent;border-radius:8px;color:var(--ink);background:transparent;font-size:12px;font-weight:700;letter-spacing:.02em}.button:disabled{opacity:.42}.button--secondary{border-color:var(--line);background:#ffffff0d}.button--primary{color:#132018;background:linear-gradient(135deg,#e2c684,#bd9852);box-shadow:0 8px 30px #be99522e}.button--large{min-height:52px;padding:0 28px}.button--ghost{color:var(--muted);border-color:var(--line)}.deck-slot__message{min-height:92px;margin-top:22px;color:#83948a;font-size:12px;line-height:1.55}.deck-preview{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:16px 18px;border-left:2px solid var(--gold);background:#d7b66f0d}.deck-preview h3{margin:5px 0 0;color:var(--ink);font:20px Georgia,serif}.deck-preview dl{margin:0;display:flex;gap:22px}.deck-preview dt{margin-bottom:3px;color:#718178;font-size:9px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.deck-preview dd{max-width:200px;margin:0;color:#cbd2cd}.error-message{color:#ffb3a5}.versus-line{display:grid;place-items:center;color:#6b7b72;text-transform:uppercase}.versus-line:before{content:"";width:1px;height:100%;position:absolute;background:linear-gradient(transparent,var(--line),transparent)}.versus-line span{z-index:1;padding:8px;transform:rotate(-90deg);background:#09130f;font-size:9px;letter-spacing:.18em}.setup-actions{width:min(1420px,calc(100% - 48px));margin:0 auto;padding:28px 0 60px;display:flex;align-items:center;justify-content:flex-end;gap:28px}.setup-actions p{max-width:430px;margin:0;color:#718178;font-size:12px;text-align:right}.battle-screen{min-height:100vh;background:#07110e}.battle-header{position:sticky;top:0}.battle-title{min-width:0;display:grid;border-left:1px solid var(--line);padding-left:22px}.battle-title strong{max-width:290px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:14px Georgia,serif}.battle-actions{display:flex;align-items:center;gap:7px}.icon-button{min-width:38px;height:38px;padding:0 10px;border:1px solid var(--line);border-radius:8px;color:var(--muted);background:#ffffff0a;font-weight:700}.icon-button span{margin-left:3px;font-size:10px}.icon-button:disabled{opacity:.32}.button--offline{color:var(--gold-bright);border-color:#d7b66f52;background:#d7b66f14}.button--offline.is-complete{color:#a8e8c7;border-color:#5bb48561;background:#5bb48514}.button--next-turn{min-width:168px;min-height:42px;display:grid;justify-items:start;padding:6px 13px;color:#142016;border-color:var(--gold-bright);background:linear-gradient(135deg,#f0d38d,#cba657);font-size:12px;font-weight:800;text-align:left}.button--next-turn span{max-width:190px;overflow:hidden;color:#142016ad;font-size:7px;letter-spacing:.05em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.button--phase{min-height:42px;color:var(--gold-bright);border-color:#d7b66f40;background:#d7b66f12}.selection-toolbar{position:sticky;z-index:18;top:78px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;padding:8px 20px;border-bottom:1px solid rgb(215 182 111 / 24%);background:#091510f5;box-shadow:0 12px 30px #0000003d}.selection-toolbar strong,.selection-toolbar small{color:var(--muted);font-size:10px}.selection-toolbar select,.selection-toolbar button{min-height:34px;padding:0 10px;border:1px solid var(--line);border-radius:7px;color:var(--ink);background:#17251e}.battle-table{min-width:1040px;overflow:visible;background:radial-gradient(ellipse at center,rgb(94 146 111 / 8%),transparent 45%),#0b1712}.player-board{min-height:650px;display:grid;grid-template-columns:210px minmax(680px,1fr) 150px;grid-template-areas:"player surface pile";position:relative;isolation:isolate;background:linear-gradient(90deg,rgb(0 0 0 / 24%),transparent 15%,transparent 83%,rgb(0 0 0 / 20%)),linear-gradient(180deg,#153125,#244d38)}.player-board:has(.card:hover),.player-board:has(.card:focus-visible){z-index:12}.player-board:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;opacity:.25;background-image:linear-gradient(rgb(255 255 255 / 2%) 1px,transparent 1px),linear-gradient(90deg,rgb(255 255 255 / 1.5%) 1px,transparent 1px);background-size:58px 58px;transform:perspective(500px) rotateX(2deg)}.player-board--active{box-shadow:inset 0 0 0 1px #eecf8736,inset 0 0 70px #eecf870a}.player-board--active .player-rail{background:linear-gradient(145deg,rgb(215 182 111 / 10%),transparent 45%),#040e0a61}.player-board--disabled{box-shadow:inset 0 0 0 2px #919b953d}.player-board--disabled .player-rail h2{color:#89968e;text-decoration:line-through}.player-board--opponent{grid-template-columns:150px minmax(680px,1fr) 210px;grid-template-areas:"pile surface player";background:linear-gradient(90deg,rgb(0 0 0 / 24%),transparent 15%,transparent 83%,rgb(0 0 0 / 20%)),linear-gradient(0deg,#102b20,#1d4632)}.player-rail{grid-area:player;display:flex;flex-direction:column;justify-content:flex-start;gap:14px;padding:20px;border-right:1px solid rgb(255 255 255 / 7%);background:#040e0a57}.player-board--opponent .player-rail{border-right:0;border-left:1px solid rgb(255 255 255 / 7%);text-align:right}.player-board--opponent .player-controls,.player-board--opponent .commander-tracker,.player-board--opponent .tracker-settings{text-align:left}.player-rail h2{margin:5px 0 0;overflow:hidden;text-overflow:ellipsis;font:18px Georgia,serif}.life-control{display:grid;grid-template-columns:32px 1fr 32px;align-items:center;border:1px solid rgb(215 182 111 / 21%);border-radius:12px 3px;background:#020a076b;box-shadow:0 14px 25px #00000026}.life-control button{height:58px;border:0;color:var(--gold-bright);background:transparent;font-size:20px}.life-control span{display:grid;justify-items:center}.life-control strong{font:38px Georgia,serif}.life-control small{color:#799182;font-size:8px;letter-spacing:.1em;text-transform:uppercase}.player-controls{display:grid;gap:8px;min-width:0}.status-counter{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 25px 42px 25px;align-items:center;gap:3px;color:var(--muted);font-size:9px}.status-counter>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-counter button{width:25px;height:25px;padding:0;border:1px solid var(--line);border-radius:5px;color:var(--gold-bright);background:#ffffff0a}.status-counter strong{text-align:center}.status-counter strong small{color:#829389;font-size:7px;font-weight:600}.status-counter--warning{color:#ffd5c9;border-color:#f5775b85;background:#77251938;box-shadow:0 0 0 1px #f5775b1f}.commander-tracker,.tracker-settings{padding:7px;border:1px solid var(--line);border-radius:7px;background:#0000001f}.commander-tracker summary,.tracker-settings summary{color:#b9c7be;font-size:9px;cursor:pointer}.commander-tracker[open] summary,.tracker-settings[open] summary{margin-bottom:7px}.tracker-settings>div{display:grid;gap:6px}.tracker-settings label{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:9px}.player-status-toggles{display:grid;gap:5px}.player-status-toggles button{min-height:30px;padding:5px 7px;border:1px solid var(--line);border-radius:7px;color:#b9c7be;background:#ffffff08;font-size:9px}.player-status-toggles button.is-active{color:var(--gold-bright);border-color:#d7b66f61;background:#d7b66f1a}.player-status-toggles button.is-disabled{color:#d7ddd9;border-color:#b9c3bd52;background:#7f8c8424}.player-warnings{display:grid;gap:3px;color:#ffb5a1;font-size:8px;font-weight:700}.player-warnings span:before{content:"⚠ "}.button--rail{color:#b8c8bd;border-color:#ffffff17;background:#ffffff0a}.board-surface{grid-area:surface;min-width:0;display:grid;grid-template-columns:118px minmax(0,1fr);grid-template-rows:minmax(340px,1fr) 165px;grid-template-areas:"edges field" "edges hand";gap:8px 16px;padding:8px 22px 12px;transform-origin:bottom}.player-board--opponent .board-surface{grid-template-columns:minmax(0,1fr) 118px;grid-template-rows:165px minmax(340px,1fr);grid-template-areas:"hand edges" "field edges";padding:12px 22px 8px;transform-origin:top}.edge-zones{grid-area:edges;display:flex;flex-direction:column;gap:9px}.zone{position:relative;min-width:0;border:1px solid transparent;border-radius:9px;transition:border-color .12s ease,background .12s ease}.zone--drop-target{border-color:var(--gold);background:#eecf871c!important;box-shadow:inset 0 0 28px #eecf8717}html.card-drag-active .zone{border-color:#eecf873d;background:#eecf8708}html.card-drag-active .zone--drop-target{border-color:var(--gold);background:#eecf8724!important}.zone__label{min-height:22px;display:flex;align-items:center;justify-content:space-between;padding:0 7px;color:#e1ebe47a;font-size:8px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.zone__label strong{margin-left:auto;color:#e1ebe4b3}.zone__menu-trigger{width:25px;height:22px;margin-left:3px;padding:0;color:#e1ebe4bf;border:0;border-radius:5px;background:transparent;font-size:18px;line-height:1}.zone__menu-trigger:hover,.zone__menu-trigger:focus-visible{color:var(--gold-bright);background:#ffffff14}.zone__cards{min-height:72px;display:flex;align-items:flex-start;gap:8px;padding:6px;overflow:auto hidden;scrollbar-width:thin}.zone__empty{width:100%;min-height:62px;display:grid;place-items:center;border:1px dashed rgb(235 241 235 / 10%);border-radius:7px;color:#ebf1eb2e;font-size:9px;letter-spacing:.08em}.zone--battlefield{grid-area:field;min-height:340px;display:grid;grid-template-rows:22px minmax(0,1fr);background:radial-gradient(circle at 50% 65%,rgb(255 255 255 / 4%),transparent 52%),#0000000d}.zone--battlefield .zone__cards{min-height:318px;height:100%;display:block;position:relative;padding:14px;overflow:visible}.zone--battlefield .zone__empty{min-height:0;position:absolute;top:6px;right:6px;bottom:6px;left:6px}.battlefield-card-position{width:clamp(108px,6.5vw,122px);position:absolute;transform:translate(-50%,-50%)}.battlefield-card-position:hover,.battlefield-card-position:focus-within{z-index:1000!important}.battlefield-card-position:has(.card--dragging){z-index:2000!important}.zone--hand{grid-area:hand;align-self:end;z-index:2;overflow:visible;background:#030d0942;box-shadow:0 -12px 35px #00000014}.zone--hand:has(.card:hover),.zone--hand:has(.card:focus-visible){z-index:5000}.zone--hand .zone__cards{height:136px;justify-content:center;overflow:visible}.edge-zones .zone{min-height:135px;flex:0 0 auto;background:#020b072e}.edge-zones .zone__cards{justify-content:center;overflow:visible}.edge-zones:has(.card:hover),.edge-zones:has(.card:focus-visible){z-index:5000}.edge-zones .zone:has(.card:hover),.edge-zones .zone:has(.card:focus-visible){z-index:5001;position:relative}.zone--commander-group .zone__cards{min-height:158px;display:grid;grid-template:1fr / 1fr;place-items:start center;overflow:visible;padding-top:9px}.zone--commander-group .command-card{grid-area:1 / 1}.zone--commander-group .command-card:nth-child(1){z-index:3;margin:20px 18px 0 0}.zone--commander-group .command-card:nth-child(2){z-index:2;margin:0 0 20px 18px}.zone--commander-group .command-card:nth-child(n+3){margin-top:36px}.zone--commander-group .command-card:hover,.zone--commander-group .command-card:focus-within{z-index:9}.command-card{width:86px;display:grid;gap:4px;position:relative}.commander-tax-control{min-height:23px;display:grid;grid-template-columns:1fr 20px 16px 20px;align-items:center;gap:1px;padding:2px;border:1px solid rgb(215 182 111 / 28%);border-radius:6px;color:var(--gold-bright);background:#040e0aeb;box-shadow:0 5px 12px #0000003d;font-size:7px}.commander-tax-control button{width:20px;height:19px;padding:0;border:1px solid var(--line);border-radius:4px;color:var(--gold-bright);background:#ffffff0d}.commander-tax-control strong{text-align:center}.pile-rail{grid-area:pile;display:flex;flex-direction:column;justify-content:center;gap:10px;padding:12px 20px;border-left:1px solid rgb(255 255 255 / 7%);background:#040e0a3b}.player-board--opponent .pile-rail{border-right:1px solid rgb(255 255 255 / 7%);border-left:0}.pile-rail .zone{min-height:138px;background:#0000001f}.pile-rail .zone__cards{justify-content:center}.card-stack{width:76px;height:105px;margin:5px auto;position:relative}.card-stack span,.card-stack img{position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid rgb(215 182 111 / 22%);border-radius:6px;box-shadow:0 7px 18px #0000004d}.card-stack span{background:radial-gradient(circle,rgb(215 182 111 / 25%) 0 2px,transparent 3px),linear-gradient(135deg,#182922,#0b1511);background-size:17px 17px,auto}.card-stack img{width:100%;height:100%;display:block;object-fit:cover}.card-stack span:nth-child(1){transform:translate(-5px,3px) rotate(-2deg)}.card-stack span:nth-child(2){transform:translate(3px,2px) rotate(2deg)}.zone__cards--face-up-stack{min-height:112px;justify-content:center;overflow:visible;padding:3px 6px 6px}.face-up-card-stack{width:86px;height:120px;position:relative;isolation:isolate}.face-up-card-stack>span{position:absolute;z-index:-1;top:0;right:0;bottom:0;left:0;border:1px solid rgb(215 182 111 / 22%);border-radius:6px;background:#101a15;box-shadow:0 7px 18px #0000003d}.face-up-card-stack>span:first-child{transform:translate(-4px,3px) rotate(-1.5deg)}.face-up-card-stack>span:nth-child(2){transform:translate(4px,3px) rotate(1.5deg)}.face-up-card-stack>.card{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0}.zone__browse-menu{position:relative}.zone__browse-menu-items{min-width:190px;position:absolute;z-index:5200;top:calc(100% + 4px);right:0;display:grid;padding:5px;border:1px solid rgb(255 255 255 / 13%);border-radius:9px;background:#232926fa;box-shadow:0 18px 38px #0000007a}.player-board--opponent .pile-rail .zone__browse-menu-items{right:auto;left:0}.zone__browse-menu-items button{min-height:36px;display:flex;align-items:center;gap:9px;padding:7px 9px;color:#edf1ee;border:0;border-radius:6px;background:transparent;font-size:11px;text-align:left;white-space:nowrap}.zone__browse-menu-items button:hover,.zone__browse-menu-items button:focus-visible{color:#fff;background:#ffffff1a}.zone__browse-menu-items button span{width:18px;color:var(--gold-bright);font-size:16px;text-align:center}.table-divider{min-height:92px;display:flex;align-items:center;justify-content:center;padding:8px 28px;background:linear-gradient(180deg,#3a1d19,#562b24 45%,#2d1815),var(--red);box-shadow:inset 0 1px #ffffff14,inset 0 -1px #00000040}.match-status{width:min(1120px,100%);display:grid;grid-template-columns:minmax(190px,1.4fr) repeat(3,minmax(130px,1fr)) auto;align-items:end;gap:9px;padding:8px 10px;border:1px solid rgb(238 207 135 / 19%);border-radius:12px;background:#0b1611e5;box-shadow:0 14px 28px #00000042}.match-status__turn{min-width:0;display:grid}.match-status__turn strong{overflow:hidden;color:var(--gold-bright);font:14px Georgia,serif;text-overflow:ellipsis;white-space:nowrap}.match-status__turn small{color:var(--muted);font-size:8px}.match-status label{min-width:0;display:grid;gap:3px;color:#9aaca1;font-size:7px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.match-status select,.match-status button{min-width:0;min-height:32px;padding:4px 8px;border:1px solid var(--line);border-radius:7px;color:#d7e1da;background:#16241d;font-size:9px}.match-status__actions{display:flex;gap:5px}.match-status__actions button:last-child{color:#172117;border-color:var(--gold-bright);background:linear-gradient(135deg,#f0d38d,#cba657);font-weight:800}.card{--card-width: 108px;width:var(--card-width);flex:0 0 var(--card-width);position:relative;border:1px solid rgb(255 255 255 / 14%);border-radius:7px;background:#0a0c0b;box-shadow:0 11px 18px #00000047;transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease;-webkit-user-select:none;user-select:none;touch-action:none;cursor:grab}.zone--battlefield .card{--card-width: clamp(108px, 6.5vw, 122px)}.card--selected{outline:3px solid #7ed7a4;outline-offset:3px;box-shadow:0 0 0 6px #7ed7a424,0 11px 18px #00000047}.card:hover,.card:focus-visible{z-index:40;transform:translateY(-10px) scale(1.5);box-shadow:0 26px 55px #00000094;outline:2px solid rgb(238 207 135 / 72%);outline-offset:2px}.zone--hand .card{transform-origin:bottom center}.player-board--opponent .zone--hand .card{transform-origin:top center}.zone--hand .card:hover,.zone--hand .card:focus-visible{transform:scale(1.5)}.player-board--self .zone--command .card{transform-origin:top left}.player-board--opponent .zone--command .card{transform-origin:top right}.player-board--self .zone--exile .card{transform-origin:bottom left}.player-board--opponent .zone--exile .card{transform-origin:bottom right}.edge-zones .card:hover,.edge-zones .card:focus-visible{transform:scale(1.5)}.player-board--self .pile-rail .card{transform-origin:center right}.player-board--opponent .pile-rail .card{transform-origin:center left}.card--compact{--card-width: 86px}.card--tapped{z-index:3;transform:rotate(90deg)}.card--tapped:hover,.card--tapped:focus-visible{z-index:40;transform:rotate(90deg) scale(1.5)}.card--dragging{z-index:50;opacity:.58;cursor:grabbing}.card[data-dnd-dragging=true]:not(.card--tapped),.card[data-dnd-dropping]:not(.card--tapped),.card--pointer-held:not(.card--tapped),.card:active:not(.card--tapped),.card--dragging:not(.card--tapped){transform:none!important}.card.card--tapped[data-dnd-dragging=true],.card.card--tapped[data-dnd-dropping],.card.card--tapped.card--pointer-held,.card.card--tapped:active,.card.card--tapped.card--dragging{transform:rotate(90deg)!important}.card[data-dnd-dragging=true],.card[data-dnd-dropping],.card--pointer-held,.card:active,.card--dragging{outline:0;box-shadow:0 14px 24px #0000006b}html.card-pointer-active .card{transition:none!important;scale:1!important;outline:0;box-shadow:0 14px 24px #0000006b}html.card-pointer-active .card[data-dnd-dragging=true],html.card-pointer-active .card[data-dnd-dropping]{width:var(--card-width)!important;min-width:var(--card-width)!important;max-width:var(--card-width)!important;height:auto!important;min-height:0!important;max-height:none!important;scale:1!important}html.card-pointer-active .card:not(.card--tapped){transform:none!important}html.card-pointer-active .card.card--tapped{transform:translate(calc(var(--card-drag-offset-x, 0px) + var(--card-drag-follow-x, 0px)),calc(var(--card-drag-offset-y, 0px) + var(--card-drag-follow-y, 0px))) rotate(90deg)!important}.card__art{aspect-ratio:488 / 680;overflow:hidden;border-radius:6px 6px 3px 3px;background:#14221b}.card__art img{width:100%;height:100%;display:block;object-fit:contain}.card__fallback{width:100%;height:100%;display:flex;flex-direction:column;justify-content:space-between;padding:10px 8px;position:relative;overflow:hidden;color:#e5dcc6;background:radial-gradient(circle at 70% 20%,rgb(215 182 111 / 19%),transparent 28%),linear-gradient(145deg,#24372d,#0d1712)}.card__fallback:before{content:"";width:70px;height:70px;position:absolute;right:-30px;bottom:-25px;transform:rotate(45deg);border:1px solid rgb(215 182 111 / 17%)}.card__fallback span{z-index:1;font:12px/1.2 Georgia,serif}.card__fallback small{z-index:1;color:#8fa196;font-size:8px;line-height:1.3}.card__fallback strong{z-index:1;align-self:end;padding:3px 5px;border-radius:5px;color:var(--ink);background:#00000061;font-size:11px}.card__counters{max-width:calc(100% - 8px);position:absolute;top:5px;right:4px;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:3px}.card__counters span{padding:3px 5px;border:1px solid rgb(255 255 255 / 32%);border-radius:999px;color:#fff8df;background:#080d0ae0;box-shadow:0 2px 8px #0000007a;font-size:6px;font-weight:800;white-space:nowrap}.card-action-layer{position:fixed;z-index:6000;top:0;right:0;bottom:0;left:0}.card-action-menu{max-height:calc(100vh - 24px);position:fixed;overflow:auto;padding:16px;border:1px solid rgb(238 207 135 / 32%);border-radius:12px;color:var(--ink);background:linear-gradient(145deg,rgb(215 182 111 / 8%),transparent 35%),#111b17;box-shadow:0 32px 80px #000000ad,0 0 0 5px #040c085c;animation:card-action-in .11s ease-out}.card-action-menu header{display:flex;align-items:start;justify-content:space-between;gap:12px;margin-bottom:13px}.card-action-menu header div{min-width:0;display:grid;gap:3px}.card-action-menu header strong{overflow:hidden;font:17px Georgia,serif;text-overflow:ellipsis;white-space:nowrap}.card-action-menu header button{width:28px;height:28px;flex:0 0 auto;border:1px solid var(--line);border-radius:6px;color:var(--muted);background:#ffffff0a;font-size:18px}.card-action-menu__primary{width:100%;min-height:42px;display:flex;align-items:center;gap:10px;padding:0 12px;border:1px solid rgb(215 182 111 / 25%);border-radius:8px;color:var(--gold-bright);background:#d7b66f14;font-weight:700;text-align:left}.card-action-menu__primary+.card-action-menu__primary{margin-top:6px}.card-action-menu__selection{margin:-5px 0 10px;color:#9fcab2;font-size:9px;line-height:1.4}.card-action-menu__row{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:7px}.card-action-menu__row button{min-height:34px;border:1px solid var(--line);border-radius:6px;color:var(--muted);background:#ffffff0a;font-size:10px}.card-action-menu__primary span{font-size:18px}.card-action-menu__move{display:grid;gap:7px;margin-top:11px;color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.card-action-menu__move select{width:100%;min-height:40px;padding:0 10px;border:1px solid var(--line);border-radius:7px;color:var(--ink);background:#1a2821;font-size:12px;text-transform:none}.counter-controls{display:grid;gap:6px;margin-top:14px;padding-top:13px;border-top:1px solid var(--line)}.counter-controls__title{margin-bottom:2px;color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.counter-control{min-height:34px;display:grid;grid-template-columns:minmax(0,1fr) 30px 24px 30px;align-items:center;gap:4px;font-size:11px}.counter-control>span{color:#c4cec8}.counter-control button{width:30px;height:30px;padding:0;border:1px solid var(--line);border-radius:6px;color:var(--gold-bright);background:#ffffff0a;font-size:16px}.counter-control button:disabled{opacity:.3}.counter-control strong{text-align:center}.custom-counter{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:6px;margin-top:5px;padding-top:9px;border-top:1px solid var(--line)}.custom-counter label{display:grid;gap:4px;color:var(--muted);font-size:8px}.custom-counter input{min-width:0;height:32px;padding:0 8px;border:1px solid var(--line);border-radius:6px;color:var(--ink);background:#17251e}.custom-counter button{min-height:32px;padding:0 8px;border:1px solid rgb(215 182 111 / 24%);border-radius:6px;color:var(--gold-bright);background:#d7b66f12;font-size:9px}@keyframes card-action-in{0%{opacity:0;transform:translateY(3px) scale(.98)}}.opening-hand-layer{position:fixed;z-index:170;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;overflow:auto;padding:28px;background:radial-gradient(circle at 50% 38%,rgb(55 92 72 / 24%),transparent 38%),#030806e8;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}.opening-hand-dialog{width:min(1160px,calc(100vw - 40px));min-height:570px;padding:28px 34px 26px;border:1px solid rgb(215 182 111 / 28%);border-radius:20px 5px;background:linear-gradient(145deg,rgb(215 182 111 / 7%),transparent 35%),#0e1814;box-shadow:0 36px 110px #0000009e}.opening-hand-dialog>header{display:flex;align-items:start;justify-content:space-between;gap:28px}.opening-hand-dialog h2{margin:7px 0 0;font:28px Georgia,serif}.opening-hand-dialog__count{min-width:82px;display:grid;justify-items:center;padding:9px 12px;border:1px solid rgb(215 182 111 / 22%);border-radius:10px 3px;color:var(--gold-bright);background:#d7b66f12}.opening-hand-dialog__count strong{font:24px Georgia,serif}.opening-hand-dialog__count span{color:var(--muted);font-size:7px;letter-spacing:.08em;text-transform:uppercase}.opening-hand-dialog__rule{margin:12px 0 0;color:var(--muted);font-size:11px}.opening-hand-dialog__cards{min-height:340px;display:flex;align-items:center;justify-content:center;gap:10px;padding:70px 20px 55px;overflow:visible}.opening-hand-dialog__cards>p{color:var(--muted)}.opening-hand-dialog__cards .card{width:122px;flex-basis:122px;transform-origin:bottom center}.opening-hand-dialog__cards .card:hover,.opening-hand-dialog__cards .card:focus-visible{transform:scale(1.5)}.opening-hand-dialog>footer{display:flex;align-items:end;justify-content:flex-end;gap:12px;padding-top:17px;border-top:1px solid var(--line)}.opening-hand-dialog__mulligan{display:grid;gap:5px}.opening-hand-dialog__mulligan span{color:var(--muted);font-size:8px;text-align:center}.offline-panel{width:min(430px,calc(100vw - 24px));max-height:calc(100vh - 100px);overflow:auto;position:fixed;z-index:80;top:90px;right:14px;padding:25px;border:1px solid rgb(215 182 111 / 25%);border-radius:18px 4px;background:linear-gradient(145deg,rgb(215 182 111 / 8%),transparent 35%),#101b16;box-shadow:0 30px 90px #0000008f}.offline-panel__heading{display:flex;align-items:start;justify-content:space-between;gap:20px}.offline-panel h2{margin:6px 0 16px;font:24px Georgia,serif}.offline-panel>p,.offline-empty{color:var(--muted);font-size:12px;line-height:1.6}.offline-progress{margin:20px 0;padding:16px;border:1px solid var(--line);border-radius:10px;background:#00000024}.offline-progress__summary{display:flex;justify-content:space-between;font-size:12px}.offline-progress progress{width:100%;height:7px;margin:13px 0;accent-color:var(--gold)}.offline-progress dl{display:grid;grid-template-columns:repeat(3,1fr);margin:0}.offline-progress dl div{padding:0 8px;border-right:1px solid var(--line)}.offline-progress dl div:last-child{border:0}.offline-progress dt{color:#728379;font-size:8px;text-transform:uppercase}.offline-progress dd{margin:4px 0 0;font-size:12px}.warning-message{margin:16px 0 0;padding:10px;border-left:2px solid #d49b5e;color:#dbbd98;background:#d49b5e12;font-size:10px;line-height:1.5}.offline-progress details{margin-top:14px;color:#d4a194;font-size:10px}.offline-progress ul{padding-left:17px;overflow-wrap:anywhere}.offline-panel__actions{display:flex;justify-content:flex-end;gap:8px}.update-prompt,.storage-alert{position:fixed;z-index:100;left:50%;bottom:18px;transform:translate(-50%);display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:#17231d;box-shadow:0 18px 50px #0006;font-size:11px}.update-prompt button{border:0;color:var(--gold-bright);background:transparent}.storage-alert{color:#ffb3a5}.modal-backdrop{position:fixed;z-index:90;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:#020705bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.confirm-dialog{width:min(470px,100%);padding:32px;border:1px solid rgb(215 182 111 / 22%);border-radius:20px 5px;background:#111d18;box-shadow:0 30px 100px #00000094}.confirm-dialog h2{margin:8px 0 14px;font:27px Georgia,serif}.confirm-dialog p{color:var(--muted);font-size:13px;line-height:1.6}.confirm-dialog>div{display:flex;justify-content:flex-end;gap:8px}@media(max-width:1180px){.battle-header{flex-wrap:wrap}.battle-title{display:none}.battle-actions{width:100%;order:3}.battle-header .status-bar{margin-left:auto}.selection-toolbar{top:0}.battle-table{min-width:960px}.player-board{grid-template-columns:180px minmax(645px,1fr) 135px}.player-board--opponent{grid-template-columns:135px minmax(645px,1fr) 180px}.player-rail,.pile-rail{padding:14px}.board-surface{grid-template-columns:105px minmax(0,1fr);padding-inline:14px}.player-board--opponent .board-surface{grid-template-columns:minmax(0,1fr) 105px;padding-inline:14px}}@media(max-width:900px){.setup-hero__seal{display:none}.deck-grid{grid-template-columns:1fr}.versus-line{height:52px}.versus-line:before{width:100%;height:1px}.versus-line span{transform:none}.deck-slot--1,.deck-slot--2{border-radius:16px}.deck-input-row,.deck-preview,.setup-actions{align-items:stretch;flex-direction:column}.setup-actions p{text-align:left}}.online-game-page{display:grid;gap:1rem;padding:clamp(1rem,2vw,2rem)}.online-game-header,.online-game-controls,.online-player>header,.online-player__hidden-counts,.online-game-header__actions{display:flex;align-items:center}.online-game-header{justify-content:space-between;gap:1rem;padding:1rem 1.2rem;border:1px solid rgb(221 184 103 / 24%);border-radius:.9rem;background:linear-gradient(135deg,#08231bf5,#041511f5)}.online-game-header h1,.online-player h3,.online-zone h4{margin:0}.online-game-header p,.online-zone p{margin:.35rem 0 0;color:var(--muted)}.online-game-header__actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem}.online-game-controls{position:sticky;z-index:20;top:.5rem;flex-wrap:wrap;gap:.45rem;padding:.65rem;border:1px solid rgb(221 184 103 / 30%);border-radius:.75rem;background:#031611f0;box-shadow:0 .7rem 1.6rem #0000003d;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.online-game-controls button{padding:.48rem .7rem;color:var(--ink);border:1px solid rgb(221 184 103 / 36%);border-radius:.45rem;background:#ffffff0d}.online-game-controls button:hover:not(:disabled),.online-game-controls button:focus-visible{border-color:var(--gold);background:#ddb8671f}.online-game-controls button:disabled{cursor:not-allowed;opacity:.45}.online-game-controls>span{margin-left:auto;color:var(--muted);font-size:.78rem}.online-spectator-note{margin:0;padding:.7rem .85rem;border-left:3px solid var(--gold);background:#ddb86714}.online-players{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;align-items:start}.online-players--2{grid-template-columns:repeat(2,minmax(22rem,1fr))}.online-player{min-width:0;overflow:hidden;border:1px solid rgb(255 255 255 / 12%);border-radius:.85rem;background:radial-gradient(circle at 50% 0,rgb(35 93 70 / 24%),transparent 42%),#031812eb;box-shadow:inset 0 1px #ffffff0d}.online-player.is-active{border-color:#ddb867b8;box-shadow:0 0 0 1px #ddb8672e,0 .8rem 2rem #00000047}.online-player>header{justify-content:space-between;gap:.75rem;padding:.8rem;border-bottom:1px solid rgb(255 255 255 / 9%)}.online-player__vitals{display:grid;grid-template-columns:auto auto;gap:0 .35rem;align-items:baseline}.online-player__vitals strong{color:#fff2bd;font-size:1.2rem;text-align:right}.online-player__vitals span,.online-player__hidden-counts{color:var(--muted);font-size:.7rem}.online-player__hidden-counts{gap:1rem;padding:.55rem .8rem;background:#00000024}.online-player__zones{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.online-zone{min-width:0;min-height:7rem;padding:.65rem;border-top:1px solid rgb(255 255 255 / 7%)}.online-zone:nth-child(2n){border-left:1px solid rgb(255 255 255 / 7%)}.online-zone h4{display:flex;justify-content:space-between;margin-bottom:.55rem;color:#f4e6ba;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.online-zone h4 span{color:var(--muted)}.online-zone__cards{display:flex;gap:.45rem;padding-bottom:.2rem;overflow-x:auto}.online-card{display:grid;flex:0 0 6.4rem;gap:.35rem;min-width:0;padding:.35rem;border:1px solid rgb(255 255 255 / 12%);border-radius:.5rem;background:#00000038}.online-card img,.online-card__fallback{width:100%;aspect-ratio:.716;border-radius:.35rem;object-fit:cover}.online-card__fallback{display:grid;place-items:center;color:#fff2bdb8;background:radial-gradient(circle,rgb(221 184 103 / 18%),transparent 55%),#071e18;font-family:Georgia,serif;font-size:2rem}.online-card strong,.online-card small{display:block;overflow:hidden;text-overflow:ellipsis}.online-card strong{font-size:.68rem;white-space:nowrap}.online-card small{min-height:2.3em;color:var(--muted);font-size:.58rem}.online-card select{width:100%;min-width:0;padding:.28rem;font-size:.6rem}.online-battle-screen{min-width:1040px;background:#0b1712}.online-battle-screen .online-game-controls{top:78px;margin:0;border-width:0 0 1px;border-radius:0}.online-game-loading{margin:32px}.online-battle-table>div{position:relative}.online-battle-table .player-board{min-height:650px}.online-battle-table .zone--hand .zone__cards{align-items:flex-start}.online-table-card{width:108px;flex:0 0 108px;display:grid;justify-items:stretch;gap:4px;position:relative}.online-table-card:has(.card:hover),.online-table-card:has(.card:focus-visible){z-index:5000!important}.online-table-card .card[data-online-draggable=true]{cursor:grab;touch-action:none}.online-table-card .card[data-online-draggable=true]:active{cursor:grabbing}.online-card--dragging{z-index:10000!important;opacity:.92;pointer-events:none}.online-game-error{position:sticky;z-index:12000;top:76px;margin:0;border-color:#de7b668c;background:#461914f5;box-shadow:0 12px 30px #00000061}.online-table-card .card{padding:0;overflow:visible}.online-table-card .card__art{display:block;overflow:hidden;border-radius:inherit}.online-table-card .card__art img{width:100%;display:block;aspect-ratio:.716;border-radius:inherit;object-fit:cover}.online-table-card .card__fallback{min-height:150px}.online-battle-table .battlefield-card-position{position:absolute}.online-table-card__actions-trigger{width:26px;height:26px;display:grid;place-items:center;position:absolute;z-index:3;top:4px;right:4px;padding:0;color:#f5df9c;border:1px solid rgb(245 223 156 / 35%);border-radius:50%;background:#041410d1;opacity:0;transition:opacity .12s ease}.online-table-card:hover .online-table-card__actions-trigger,.online-table-card:focus-within .online-table-card__actions-trigger,.online-table-card__actions-trigger[aria-expanded=true]{opacity:1}.online-table-card__actions{width:150px;display:grid;gap:3px;position:absolute;z-index:10020;top:34px;left:50%;padding:7px;border:1px solid var(--line);border-radius:7px;background:#0b1d17;box-shadow:0 10px 28px #00000073;transform:translate(-50%)}.online-table-card__actions strong{overflow:hidden;padding:4px 5px 6px;color:var(--gold-bright);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.online-table-card__actions button{padding:6px;color:var(--ink);border:0;border-radius:4px;background:#ffffff0d;font-size:9px;text-align:left}.online-table-card__actions button:hover,.online-table-card__actions button:focus-visible{background:#ddb86726}.online-action-menu{max-height:calc(100vh - 24px);display:grid;gap:4px;position:fixed;z-index:20000;overflow:auto;padding:8px;border:1px solid rgb(238 207 135 / 32%);border-radius:8px;color:var(--ink);background:#0b1d17;box-shadow:0 22px 54px #0000009e,0 0 0 3px #040c0847}.online-action-menu strong{overflow:hidden;padding:5px 6px 7px;color:var(--gold-bright);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.online-action-menu button{padding:8px;color:var(--ink);border:0;border-radius:5px;background:#ffffff0f;font-size:10px;text-align:left}.online-action-menu button:hover,.online-action-menu button:focus-visible{background:#ddb86729}.online-action-menu button:disabled{cursor:not-allowed;opacity:.4}.online-card-action-menu,.online-zone-action-menu{z-index:20000}.online-table-card--menu-open .card:not(.card--tapped){transform:none!important}.online-table-card--menu-open .card.card--tapped{transform:rotate(90deg)!important}.online-battle-table .face-up-card-stack .online-table-card{width:86px;height:120px;display:block}.online-battle-table .face-up-card-stack .online-table-card>.card{position:absolute;top:0;right:0;bottom:0;left:0}.online-battle-table .player-rail{overflow:auto;scrollbar-width:thin}.online-zone-browser{grid-template-rows:auto auto minmax(0,1fr)}.online-zone-browser-card{width:min(100%,150px);aspect-ratio:488 / 680;display:grid;place-items:center;margin-inline:auto;overflow:hidden;border:1px solid rgb(255 255 255 / 14%);border-radius:.5rem;color:var(--ink);background:#14221b;box-shadow:0 .8rem 1.6rem #00000047}.online-zone-browser-card img{width:100%;height:100%;display:block;object-fit:contain}.online-zone-browser .zone-browser__item select{width:100%;margin-top:.35rem}.online-hidden-hand{min-width:min(100%,620px);height:126px;display:flex;align-items:flex-start;justify-content:center;position:relative}.online-hidden-hand img{width:86px;position:relative;margin-left:-44px;border:1px solid rgb(255 255 255 / 14%);border-radius:6px;box-shadow:0 8px 16px #00000047}.online-hidden-hand img:first-child{margin-left:0}.online-hidden-hand strong{align-self:center;margin-left:8px;color:var(--gold-bright)}.online-player-counts{color:var(--muted);font-size:9px;text-align:center}.online-battle-table .life-control button:disabled,.online-battle-table .status-counter button:disabled{opacity:.3;cursor:not-allowed}.online-match-status select:disabled,.online-match-status button:disabled{cursor:not-allowed;opacity:.42}.online-library-actions{width:132px;display:grid;gap:4px;position:absolute;z-index:90;top:24px;right:4px;padding:6px;border:1px solid var(--line);border-radius:7px;background:#0b1d17;box-shadow:0 12px 26px #0000007a}.online-library-actions button{padding:7px 8px;color:var(--ink);border:0;border-radius:5px;background:#ffffff0d;font-size:9px;text-align:left}.online-library-actions button:hover,.online-library-actions button:focus-visible{background:#ddb86726}.online-library-actions button:disabled{cursor:not-allowed;opacity:.4}.online-opening-wait{min-height:250px;align-content:center;text-align:center}.opening-hand-dialog__cards .online-table-card{flex:0 0 108px}.opening-hand-dialog__cards .online-table-card .card{cursor:default}.opening-hand-dialog__cards .online-table-card .card:hover,.opening-hand-dialog__cards .online-table-card .card:focus-visible{transform:translateY(-8px) scale(1.12)}@media(max-width:1100px){.online-players,.online-players--2{grid-template-columns:1fr}}@media(max-width:700px){.online-game-header{align-items:flex-start;flex-direction:column}.online-game-header__actions{justify-content:flex-start}.online-player__zones{grid-template-columns:1fr}.online-zone:nth-child(2n){border-left:0}.online-game-controls>span{width:100%;margin-left:0}}.menu-shell{min-height:100vh;background:radial-gradient(circle at 20% 0%,rgb(92 197 184 / 18%),transparent 30%),linear-gradient(180deg,#0c5360,#07333f 34%,#071f29)}.brand-link{color:inherit;text-decoration:none}.menu-header{position:sticky;top:0;border-bottom-color:#95ebe138;background:linear-gradient(90deg,#042a34eb,#04202ecc),#05242ceb;box-shadow:0 12px 38px #02161d33}.main-nav{display:flex;align-items:center;gap:.4rem}.main-nav__link{padding:.65rem .85rem;border-radius:999px;color:#c1deda;font-size:.78rem;font-weight:700;text-decoration:none}.main-nav__link:hover,.main-nav__link.is-active{color:#fff;background:#79e0d01f}.content-page{width:min(1180px,calc(100% - 2rem));margin:0 auto}.menu-hero{position:relative;min-height:min(760px,calc(100svh - 78px));display:flex;align-items:center;overflow:hidden;isolation:isolate;padding:5rem max(clamp(1.5rem,6vw,6rem),calc((100% - 1180px)/2)) 8rem;background-image:linear-gradient(90deg,#031f27eb,#03272ec2 34%,#03232b40,#03172033),linear-gradient(0deg,rgb(4 32 40 / 75%) 0%,transparent 38%),url(/fantasy-arena-hero.jpg);background-position:center;background-size:cover}.menu-hero:before,.menu-hero:after{position:absolute;z-index:-1;content:"";pointer-events:none}.menu-hero:before{width:34rem;height:34rem;left:-14rem;bottom:-23rem;border-radius:50%;background:#46e4d1;filter:blur(110px);opacity:.2}.menu-hero:after{inset:auto 0 0;height:2px;background:linear-gradient(90deg,transparent,#75e4d2 20%,#f5d575 50%,#75e4d2 80%,transparent);box-shadow:0 0 25px #75e4d28c}.menu-hero__copy{position:relative;z-index:2;width:min(670px,58%)}.menu-hero__kicker{display:inline-flex;align-items:center;gap:.6rem;padding:.55rem .85rem;border:1px solid rgb(191 238 225 / 35%);border-radius:999px;color:#e9faf5;background:#0431377a;box-shadow:inset 0 1px #ffffff24;font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.menu-hero__kicker span{color:#ffe199;text-shadow:0 0 14px #ffd46b}.menu-hero h1{max-width:690px;margin:1.3rem 0 1.2rem;color:#fff;font:clamp(3.5rem,6.3vw,6.5rem) / .88 Georgia,"Times New Roman",serif;letter-spacing:-.055em;text-wrap:balance;text-shadow:0 5px 35px rgb(0 20 28 / 48%)}.menu-hero h1 span{display:block;color:#ffe092;font-style:italic;font-weight:400}.content-page>h1,.online-heading h1{margin:.7rem 0 1rem;font:clamp(2.8rem,6vw,5.5rem) / .95 Georgia,serif;letter-spacing:-.045em}.menu-hero__copy>p{max-width:590px;margin-bottom:0;color:#d7e9e5;font-size:clamp(1rem,1.5vw,1.18rem);line-height:1.75;text-shadow:0 2px 18px rgb(0 20 28 / 52%)}.content-page>p,.online-heading p{max-width:44rem;color:var(--muted);line-height:1.7}.menu-hero__actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}.menu-hero__action{min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:.65rem;padding:.9rem 1.25rem;border:1px solid transparent;border-radius:999px;font-size:.82rem;font-weight:850;letter-spacing:.03em;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.menu-hero__action:hover{transform:translateY(-2px)}.menu-hero__action--primary{color:#11333a;background:linear-gradient(135deg,#fff0aa,#f6bd4f);box-shadow:0 14px 32px #df9f2947,inset 0 1px #fff8d7}.menu-hero__action--primary:hover{box-shadow:0 18px 40px #df9f296b,inset 0 1px #fff8d7}.menu-hero__action--secondary{border-color:#cdf3ed6b;color:#fff;background:#05303873;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.menu-hero__action--secondary:hover{background:#0e555b9e}.menu-hero__showcase{position:absolute;z-index:1;top:18%;right:max(5vw,calc((100% - 1320px)/2));width:min(35vw,470px);height:430px;filter:drop-shadow(0 30px 35px rgb(0 21 31 / 45%))}.menu-hero__card{position:absolute;top:50%;left:50%;width:clamp(132px,12vw,185px);aspect-ratio:.714;overflow:hidden;border:2px solid rgb(255 224 145 / 72%);border-radius:5.8%/4.2%;background:#102c34;box-shadow:0 24px 40px #000e198f,0 0 22px #ffd36333}.menu-hero__card img{width:100%;height:100%;display:block;object-fit:cover}.menu-hero__card--left{transform:translate(-118%,-42%) rotate(-18deg)}.menu-hero__card--center{z-index:2;transform:translate(-50%,-54%) rotate(-1deg)}.menu-hero__card--right{transform:translate(18%,-42%) rotate(17deg)}.menu-hero__magic-orb{position:absolute;z-index:3;left:50%;bottom:2rem;width:76px;height:76px;display:grid;place-items:center;transform:translate(-50%);border:2px solid #ffe49d;border-radius:50%;color:#fff3c6;background:radial-gradient(circle at 45% 38%,#d9ffff 0,#d9ffff 5%,#55dbc8 18%,#087b88 48%,#07384d 70%),#087b88;box-shadow:0 0 18px #5ee8d8,0 0 60px #47d9d09e;font:34px Georgia,serif}.menu-hero__status{position:absolute;right:max(2rem,calc((100% - 1180px)/2));bottom:2rem;z-index:4;display:flex;align-items:center;gap:.75rem;padding:.75rem .85rem;border:1px solid rgb(215 240 233 / 28%);border-radius:.8rem;color:#effbf8;background:#03252cad;box-shadow:0 1.2rem 3rem #00121b3d;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.menu-hero__status>span:nth-child(2){display:grid;gap:.1rem}.menu-hero__status small{color:#9bc9c1;font-size:.62rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.menu-hero__status strong{font-size:.78rem}.menu-hero__status-light{width:10px;height:10px;flex:0 0 auto;border-radius:50%;background:#67e2c2;box-shadow:0 0 0 4px #67e2c226,0 0 16px #67e2c2}.menu-hero__status-light.is-ready{background:#ffd774;box-shadow:0 0 0 4px #ffd77426,0 0 16px #ffd774}.menu-hall{position:relative;overflow:hidden;padding:clamp(2.75rem,5vw,4rem) 1rem 4.5rem;color:#123b3d;background:radial-gradient(circle at 8% 16%,rgb(53 189 171 / 16%),transparent 23%),radial-gradient(circle at 92% 86%,rgb(239 180 76 / 18%),transparent 25%),linear-gradient(180deg,#ccebe4,#eef8f3 9rem,#d8eee9)}.menu-hall:before{position:absolute;top:0;right:0;bottom:0;left:0;content:"";pointer-events:none;opacity:.28;background-image:linear-gradient(30deg,rgb(19 95 97 / 9%) 1px,transparent 1px),linear-gradient(150deg,rgb(19 95 97 / 7%) 1px,transparent 1px);background-size:70px 120px;-webkit-mask-image:linear-gradient(90deg,#000,transparent 22%,transparent 78%,#000);mask-image:linear-gradient(90deg,#000,transparent 22%,transparent 78%,#000)}.menu-hall__heading,.menu-grid,.menu-hall__promise{position:relative;z-index:1}.menu-hall__heading{width:min(760px,100%);margin:0 auto 2.6rem;text-align:center}.menu-hall .eyebrow{color:#a67519}.menu-hall__heading h2{margin:.65rem 0 .8rem;color:#123b3d;font:clamp(2.3rem,4vw,4rem) / 1 Georgia,serif;letter-spacing:-.035em}.menu-hall__heading p{margin-bottom:0;color:#527273;line-height:1.65}.menu-grid{width:min(1180px,calc(100% - 2rem));display:grid;grid-template-columns:repeat(6,1fr);gap:1.1rem;margin:0 auto}.menu-card{position:relative;min-height:210px;display:flex;flex-direction:column;overflow:hidden;padding:1.6rem;border:1px solid rgb(17 89 88 / 14%);border-radius:1.15rem;color:#173e3f;background:#ffffffc7;box-shadow:0 18px 45px #10504f1a,inset 0 1px #fff;text-decoration:none;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.menu-card--featured{grid-column:span 3;min-height:260px;padding:2rem;color:#fff}.menu-card--featured:nth-child(1){border-color:#ffe18f7a;background:radial-gradient(circle at 85% 15%,rgb(255 230 148 / 32%),transparent 32%),linear-gradient(135deg,#147b73,#09545f)}.menu-card--featured:nth-child(2){border-color:#7edaff5c;background:radial-gradient(circle at 85% 15%,rgb(137 216 255 / 28%),transparent 33%),linear-gradient(135deg,#245c91,#193c72)}.menu-card--utility{grid-column:span 2}.menu-card:hover{transform:translateY(-6px);border-color:#1c91896b;box-shadow:0 25px 55px #10504f2e,inset 0 1px #fff}.menu-card--featured:hover{border-color:#ffe49bb8;box-shadow:0 28px 60px #0a3e4647}.menu-card__glyph{width:2.75rem;height:2.75rem;display:grid;place-items:center;margin-bottom:1.1rem;border:1px solid rgb(20 104 103 / 16%);border-radius:50%;color:#9b6d17;background:#ffffffb3;box-shadow:0 8px 24px #0f51501a;font:1.2rem Georgia,serif}.menu-card--featured .menu-card__glyph{border-color:#ffffff52;color:#ffe393;background:#ffffff1a;box-shadow:0 0 28px #ffda7929}.menu-card--featured .eyebrow{color:#ffe39b}.menu-card h3{margin:.6rem 0;font:1.65rem Georgia,serif}.menu-card--featured h3{font-size:2rem}.menu-card p{max-width:33rem;margin-bottom:1.5rem;color:#5b7776;font-size:.9rem;line-height:1.55}.menu-card--featured p{color:#d5ece8}.menu-card__action{margin-top:auto;display:inline-flex;align-items:center;gap:.35rem;color:#14796f;font-size:.78rem;font-weight:850}.menu-card--featured .menu-card__action{color:#ffe49c}.menu-hero__action:focus-visible,.menu-card:focus-visible{outline:3px solid #ffe49c;outline-offset:4px}.menu-hall__promise{width:min(860px,calc(100% - 2rem));display:flex;align-items:center;justify-content:center;gap:.8rem;margin:2.5rem auto 0;padding:1rem 1.3rem;border-top:1px solid rgb(20 103 102 / 14%);color:#547372;text-align:center}.menu-hall__promise>span{color:#b28225;font-size:1.3rem}.menu-hall__promise p{margin:0;font-size:.82rem;line-height:1.55}.menu-hall__promise strong{color:#174d4b}.content-page{padding:4rem 0}.content-page>h1,.online-heading h1{font-size:clamp(2.8rem,5vw,4.8rem)}.content-card,.auth-panel,.lobby-card,.empty-state{border:1px solid var(--line);border-radius:.8rem;background:#0d1e17e5}.content-card{padding:1.5rem}.content-card p,.content-card small,.content-card li{color:var(--muted);line-height:1.6}.content-card .button{display:inline-flex;margin-top:.5rem;text-decoration:none}.managed-deck-list{display:grid;gap:.75rem;padding:0;list-style:none}.managed-deck-list li{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;border:1px solid var(--line);border-radius:.9rem;background:#0418148c}.managed-deck-list li>div:first-child{display:grid;gap:.3rem}.managed-deck-list li span{color:var(--muted)}.managed-deck-list .button,.managed-deck-list__actions{flex:0 0 auto;margin-top:0}.managed-deck-list__actions{display:flex;gap:.5rem}.legacy-deck-section{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--line)}.resume-grid,.settings-list,.online-actions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:2rem}.settings-list{grid-template-columns:repeat(3,minmax(0,1fr))}.mode-badge{display:inline-flex;width:fit-content;padding:.3rem .55rem;border:1px solid rgb(215 182 111 / 25%);border-radius:999px;color:var(--gold-bright);background:#d7b66f12;font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.mode-badge--host{border-color:#70dec059;color:#9de0c8;background:#50ac911f}.online-heading{display:flex;align-items:center;justify-content:space-between;gap:2rem}.online-page{padding-top:clamp(1.25rem,4vw,3rem)}.online-hero{position:relative;min-height:270px;overflow:hidden;isolation:isolate;padding:clamp(1.5rem,4vw,3.25rem);border:1px solid rgb(127 226 212 / 22%);border-radius:1.6rem;background:radial-gradient(circle at 86% 20%,rgb(104 226 205 / 24%),transparent 28%),radial-gradient(circle at 72% 120%,rgb(231 181 81 / 22%),transparent 35%),linear-gradient(135deg,#0a5c64f5,#052937fa);box-shadow:0 28px 80px #00151e42,inset 0 1px #ffffff1a}.online-hero:after{position:absolute;z-index:-1;right:-4rem;bottom:-9rem;width:25rem;height:25rem;border:1px solid rgb(255 225 142 / 24%);border-radius:50%;box-shadow:0 0 0 3rem #ffffff05,0 0 0 7rem #ffffff05;content:""}.online-hero__copy{max-width:700px}.online-hero h1{margin:.65rem 0 1rem;color:#fff;font:clamp(3rem,6vw,5.6rem) / .92 Georgia,"Times New Roman",serif;letter-spacing:-.055em;text-shadow:0 8px 34px rgb(0 25 34 / 32%)}.online-hero p{max-width:620px;margin:0;color:#cde7e3;font-size:clamp(.98rem,1.8vw,1.12rem);line-height:1.65}@keyframes connection-pulse{50%{opacity:.45}}.auth-panel{display:grid;min-width:0;grid-template-columns:minmax(230px,.75fr) minmax(0,1.5fr);align-items:stretch;gap:0;overflow:hidden;margin-top:clamp(1rem,3vw,2rem);padding:0;border-color:#85dccb33;border-radius:1.35rem;background:linear-gradient(135deg,#0d3837f5,#071f23fa);box-shadow:0 24px 65px #00161d33,inset 0 1px #ffffff12}.auth-panel__intro{position:relative;min-width:0;display:flex;flex-direction:column;justify-content:center;padding:clamp(1.5rem,4vw,2.5rem);border-right:1px solid rgb(143 222 207 / 15%)}.auth-panel__rune{width:2.8rem;height:2.8rem;display:grid;place-items:center;margin-bottom:1.5rem;border:1px solid rgb(255 221 132 / 38%);border-radius:50%;color:#ffe29b;background:#edbd551a;box-shadow:0 0 30px #ecbe5724;font-size:1.2rem}.auth-panel h2{margin:.5rem 0 .75rem;color:#fff;font:clamp(1.65rem,3vw,2.25rem) / 1.05 Georgia,serif}.auth-panel__intro p{max-width:30rem;margin:0;color:#9fc2bc;font-size:.86rem;line-height:1.65}.auth-login-form{display:grid;width:100%;min-width:0;align-content:center;gap:1.1rem;padding:clamp(1.5rem,4vw,2.5rem);background:#04181d52}.auth-login-form__fields{min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.auth-login-form label{min-width:0;display:grid;gap:.5rem;color:#bdd4cf;font-size:.75rem;font-weight:700}.auth-login-form input{width:100%;min-width:0;min-height:52px;padding:.85rem 1rem;border:1px solid rgb(159 217 205 / 20%);border-radius:.75rem;color:#fff;background:#01121794;box-shadow:inset 0 1px 2px #0003;font-size:16px;transition:border-color .16s ease,box-shadow .16s ease}.auth-login-form input::placeholder{color:#668780}.auth-login-form input:focus{border-color:#75d9c8;box-shadow:0 0 0 3px #57cbb924,inset 0 1px 2px #0003}.auth-login-form__actions{min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.auth-login-form__actions .button{width:100%;min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:.65rem;margin:0;border-radius:.75rem}.auth-login-form__divider{grid-column:1 / -1;display:flex;align-items:center;gap:.75rem;color:#718f89;font-size:.7rem;text-transform:uppercase}.auth-login-form__divider:before,.auth-login-form__divider:after{height:1px;flex:1;background:#a0d5ca21;content:""}.button--google{grid-column:1 / -1;border:1px solid rgb(184 225 216 / 24%);color:#eff9f6;background:linear-gradient(135deg,#1f4c4bd1,#0f3037eb);box-shadow:0 10px 25px #000c1024,inset 0 1px #ffffff12}.button--google>span{width:1.6rem;height:1.6rem;display:grid;place-items:center;border-radius:50%;color:#4285f4;background:conic-gradient(from -45deg,#4285f4 0,#4285f4 25%,#34a853 0,#34a853 50%,#fbbc05 0,#fbbc05 75%,#ea4335 0);box-shadow:0 2px 8px #0000001f;font-size:0;font-weight:850}.button--google>span:after{width:1rem;height:1rem;display:grid;place-items:center;border-radius:50%;color:#2d5cb8;background:#fff;content:"G";font-size:.68rem}.auth-panel__signed-in{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;padding:clamp(1.5rem,4vw,2.5rem);background:#04181d52}.auth-panel__avatar{width:3.25rem;height:3.25rem;display:grid;place-items:center;border:1px solid rgb(255 221 132 / 45%);border-radius:50%;color:#ffe5a0;background:linear-gradient(135deg,#167c77,#0a4858);font:1.35rem Georgia,serif;box-shadow:0 0 30px #47d2be29}.auth-panel__signed-in strong,.auth-panel__signed-in small{display:block}.auth-panel__signed-in small{margin-top:.2rem;color:#89aaa4;font-size:.72rem}.auth-panel__error{grid-column:1 / -1;margin:0;padding:.85rem 1.25rem;border-top:1px solid rgb(255 159 132 / 16%);color:#ffc4b5;background:#862f2229;font-size:.82rem}.online-form{position:relative;min-width:0;display:grid;align-content:start;gap:1rem;overflow:hidden;padding:clamp(1.4rem,3vw,2rem);border-color:#85dccb33;border-radius:1.25rem;background:radial-gradient(circle at 100% 0%,rgb(79 197 177 / 12%),transparent 34%),linear-gradient(145deg,#0c3535f5,#061d22fa);box-shadow:0 22px 55px #00161d2e,inset 0 1px #ffffff12}.online-form h2{margin:.25rem 0 .5rem;color:#fff;font:clamp(1.65rem,3vw,2.1rem) / 1.05 Georgia,serif}.online-form label{min-width:0;display:grid;gap:.5rem;color:#bdd4cf;font-size:.75rem;font-weight:700}.online-form input,.online-form select{width:100%;min-width:0;min-height:52px;padding:.85rem 1rem;border:1px solid rgb(159 217 205 / 20%);border-radius:.75rem;color:#fff;background:#01121794;font-size:16px}.online-form .button{width:100%;min-height:50px;justify-content:center;border-radius:.75rem}.online-message{margin:1rem 0 0;padding:1rem 1.15rem;border:1px solid rgb(231 192 111 / 22%);border-radius:.85rem;color:#d8e5df;background:#69501f29}.arena-unavailable{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1.25rem;margin-top:1.25rem;padding:clamp(1.25rem,3vw,2rem);border:1px solid rgb(229 132 112 / 30%);border-radius:1.2rem;color:#f1f8f5;background:radial-gradient(circle at 10% 0%,rgb(229 132 112 / 14%),transparent 34%),linear-gradient(135deg,#371f1ef5,#112322fa)}.arena-unavailable--checking{border-color:#e7c47747;background:radial-gradient(circle at 10% 0%,rgb(231 196 119 / 12%),transparent 34%),linear-gradient(135deg,#322b1bf5,#112322fa)}.arena-unavailable__icon{width:3rem;height:3rem;display:grid;place-items:center;border:1px solid rgb(255 255 255 / 18%);border-radius:50%;color:#ffd9d0;background:#ffffff0f;font-size:1.25rem;font-weight:800}.arena-unavailable--checking .arena-unavailable__icon{color:#ffe3a0;animation:connection-pulse 1.4s ease-in-out infinite}.arena-unavailable h2{margin:.35rem 0;font-size:clamp(1.3rem,3vw,1.8rem)}.arena-unavailable p{margin:0;color:#bfd0ca;line-height:1.6}.arena-unavailable__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.65rem}.lobby-waiting-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.75fr);gap:2rem;margin-top:1rem;padding:1.5rem;border:1px solid rgb(112 222 192 / 28%);border-radius:.9rem;background:radial-gradient(circle at 92% 0%,rgb(78 196 164 / 13%),transparent 36%),#0d231df0;box-shadow:0 1.5rem 4rem #00000029}.lobby-waiting-card h2{margin:.45rem 0 .65rem;font:1.8rem Georgia,serif}.lobby-waiting-card p{margin:0;color:var(--muted)}.lobby-waiting-card p strong{color:var(--gold-bright);letter-spacing:.12em}.lobby-waiting-card__status{display:grid;align-content:center;gap:.4rem;padding-left:1.5rem;border-left:1px solid rgb(112 222 192 / 18%)}.lobby-waiting-card__status span{color:var(--muted);font-size:.82rem;line-height:1.55}.lobby-section{margin-top:clamp(2.5rem,6vw,4.5rem)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem}.section-heading h2{margin:.4rem 0 1rem;font:2rem Georgia,serif}.lobby-list{display:grid;gap:.75rem}.lobby-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:1.5rem;padding:1.25rem 1.4rem;border-color:#85dccb2e;border-radius:1rem;background:linear-gradient(90deg,#0c3030f5,#061f25f5);box-shadow:0 15px 38px #00141b24,inset 0 1px #ffffff0f;transition:transform .16s ease,border-color .16s ease}.lobby-card:hover{transform:translateY(-2px);border-color:#73dac759}.lobby-card__badges{display:flex;flex-wrap:wrap;gap:.4rem}.lobby-card h3,.lobby-card p{margin:.4rem 0 0}.lobby-card p{color:var(--muted);font-size:.8rem}.lobby-card__capacity{display:grid;justify-items:center}.lobby-card__capacity strong{font-size:1.25rem}.lobby-card__capacity span{color:var(--muted);font-size:.65rem;text-transform:uppercase}.empty-state{display:grid;gap:.35rem;padding:1.5rem;border-radius:1rem;background:linear-gradient(135deg,#0c302df2,#071f20f5)}.empty-state span{color:var(--muted)}.lobby-room-page{width:min(1180px,calc(100% - 2rem));min-height:calc(100vh - 78px);margin:0 auto;padding:clamp(1rem,3vw,2.5rem) 0 4rem}.lobby-room-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:2rem;overflow:hidden;padding:clamp(1.5rem,4vw,3rem);border:1px solid rgb(126 226 207 / 24%);border-radius:1.5rem;background:radial-gradient(circle at 92% 10%,rgb(239 195 105 / 20%),transparent 32%),linear-gradient(135deg,#0c6b6d,#073642 70%);box-shadow:0 28px 75px #00141c3d,inset 0 1px #ffffff1a}.lobby-room-back{position:absolute;top:1.25rem;left:1.5rem;padding:.5rem 0;border:0;color:#badbd5;background:transparent;font-size:.76rem;font-weight:700}.lobby-room-back:hover{color:#fff}.lobby-room-hero__title{padding-top:2.25rem}.lobby-room-hero h1{margin:.6rem 0 .75rem;color:#fff;font:clamp(2.5rem,5vw,4.5rem) / .95 Georgia,serif;letter-spacing:-.045em}.lobby-room-hero p{max-width:650px;margin:0;color:#c4ded9;line-height:1.6}.lobby-code{min-width:190px;display:grid;gap:.15rem;padding:1rem 1.2rem;border:1px solid rgb(255 225 147 / 34%);border-radius:1rem;color:#fff;background:#03252c7a;box-shadow:inset 0 1px #ffffff17;text-align:left;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.lobby-code span,.lobby-code small{color:#9ebeb8;font-size:.65rem}.lobby-code strong{color:#ffe198;font-size:1.45rem;letter-spacing:.18em}.lobby-room-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.65fr);gap:1.25rem;margin-top:1.25rem}.lobby-seats,.lobby-control-panel,.lobby-room-loading,.lobby-room-error{border:1px solid rgb(126 219 202 / 19%);border-radius:1.25rem;background:linear-gradient(145deg,#0c3433f5,#051c22f7);box-shadow:0 22px 55px #00141c2b,inset 0 1px #ffffff0f}.lobby-seats{padding:clamp(1.25rem,3vw,2rem)}.lobby-room-section-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.lobby-room-section-heading h2,.lobby-control-panel h2{margin:.45rem 0 0;color:#fff;font:clamp(1.55rem,3vw,2rem) / 1.1 Georgia,serif}.lobby-live-status{display:inline-flex;align-items:center;gap:.45rem;color:#95bbb3;font-size:.68rem}.lobby-live-status>span{width:.45rem;height:.45rem;border-radius:50%;background:#69dfbc;box-shadow:0 0 12px #69dfbc}.lobby-seat-list{display:grid;gap:.7rem}.lobby-seat{min-width:0;display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:.85rem;min-height:72px;padding:.75rem 1rem;border:1px solid rgb(153 216 204 / 14%);border-radius:.9rem;background:#02171c6b}.lobby-seat.is-empty{border-style:dashed;background:#02171c2e}.lobby-seat__number{color:#638982;font-size:.7rem;font-weight:800}.lobby-seat__avatar{width:2.65rem;height:2.65rem;display:grid;place-items:center;border:1px solid rgb(255 224 143 / 32%);border-radius:50%;color:#ffe09a;background:linear-gradient(145deg,#176f6c,#0a4652);font:1.05rem Georgia,serif}.lobby-seat.is-empty .lobby-seat__avatar{border-color:#8ccabe2e;color:#5f8880;background:transparent}.lobby-seat strong,.lobby-seat small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lobby-seat small{margin-top:.15rem;color:#799d96;font-size:.68rem}.lobby-seat__badges{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.35rem}.mode-badge--ready{color:#bff3df;background:#48c39b26}.lobby-deck-setup{display:grid;gap:1rem;margin-top:1.25rem;padding:1.2rem;border:1px solid rgb(123 220 202 / 18%);border-radius:1rem;background:#031d217a}.lobby-deck-setup h3{margin:.35rem 0;color:#fff;font:1.35rem Georgia,serif}.lobby-deck-setup p{margin:0;color:#89aaa4;font-size:.75rem;line-height:1.55}.lobby-deck-picker,.lobby-deck-import{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.75rem}.lobby-deck-picker__actions{display:flex;flex-wrap:wrap;align-items:stretch;gap:.5rem}.lobby-deck-picker__actions .button{margin:0}.lobby-deck-picker label,.lobby-deck-import label{display:grid;gap:.4rem;color:#bdd5d0;font-size:.7rem;font-weight:700}.lobby-deck-picker select,.lobby-deck-import input{min-height:44px;border:1px solid rgb(142 214 201 / 20%);border-radius:.7rem;color:#eff8f5;background:#0113189e}.lobby-deck-picker .button,.lobby-deck-import .button{min-height:44px;justify-content:center}.lobby-deck-empty{padding:.8rem;border-radius:.7rem;background:#e8be6314}.lobby-spectators{margin:1rem 0 0;color:#83a69f;font-size:.75rem}.lobby-control-panel{display:flex;flex-direction:column;align-items:center;padding:clamp(1.5rem,3vw,2rem);text-align:center}.lobby-control-panel__orb,.lobby-room-loading__orb{width:4.5rem;height:4.5rem;display:grid;place-items:center;margin:1.5rem 0 1rem;border:1px solid #f4d27d;border-radius:50%;color:#ffe6a3;background:radial-gradient(circle at 40% 35%,#73e6d3,#08757c 48%,#073a4b);box-shadow:0 0 25px #5de3cf7a,0 0 65px #47d2c233;font:1.8rem Georgia,serif}.lobby-control-panel p{color:#9cbab4;font-size:.82rem;line-height:1.6}.lobby-progress{width:100%;height:.45rem;overflow:hidden;margin-top:.75rem;border-radius:999px;background:#9fd8cd1f}.lobby-progress>span{height:100%;display:block;border-radius:inherit;background:linear-gradient(90deg,#50cdb8,#f0c66a);transition:width .3s ease}.lobby-progress-label{margin-top:.55rem;color:#bed7d2;font-size:.72rem}.lobby-host-actions{width:100%;display:grid;gap:.75rem;margin-top:1.5rem}.lobby-host-actions>.button{width:100%;justify-content:center}.lobby-host-actions>small{color:#789b94;font-size:.66rem;line-height:1.5}.lobby-delete-button{width:fit-content;margin:.75rem auto 0;padding:.5rem;border:0;color:#d69a8d;background:transparent;font-size:.7rem;text-decoration:underline;text-underline-offset:3px}.lobby-delete-confirm{display:grid;gap:.75rem;margin-top:.5rem;padding:1rem;border:1px solid rgb(224 116 94 / 24%);border-radius:.8rem;background:#6f231c2e}.lobby-delete-confirm>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.button--danger{border-color:#eb806a5c;color:#fff4f1;background:linear-gradient(135deg,#a54839,#7e332b)}.lobby-player-note{margin-top:auto;padding-top:1.5rem}.lobby-room-loading,.lobby-room-error{width:min(620px,100%);display:grid;justify-items:center;gap:.6rem;margin:8vh auto 0;padding:3rem;text-align:center}.lobby-room-loading>span:last-child,.lobby-room-error p{color:#91b0aa}.lobby-room-error h1{margin:.4rem 0;font:2.3rem Georgia,serif}@media(max-width:1050px){.menu-hero{background-position:58% center}.menu-hero__copy{width:min(720px,78%)}.menu-hero__showcase{display:none}}@media(max-width:950px){.main-nav{display:none}.menu-hero,.online-heading{align-items:stretch;flex-direction:column}.menu-card{grid-column:span 3}.settings-list{grid-template-columns:1fr}}@media(max-width:820px){.online-page{width:min(100% - 1.5rem,720px)}.online-hero{min-height:240px;align-items:flex-start;padding:2rem}.auth-panel{grid-template-columns:minmax(0,1fr)}.auth-panel__intro{padding-bottom:1.5rem;border-right:0;border-bottom:1px solid rgb(143 222 207 / 15%)}.auth-panel__rune{margin-bottom:1rem}.lobby-room-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:650px){.app-header.menu-header{min-height:68px;gap:12px;padding-block:10px}.menu-header .brand{gap:9px}.menu-header .brand__sigil{width:38px;height:38px}.menu-header .brand strong{font-size:16px}.menu-header .brand small{font-size:8px}.menu-header .status-pill{padding:6px 8px}.online-page{width:calc(100% - 1rem);padding:.5rem 0 2.5rem}.online-hero{min-height:0;gap:1.5rem;padding:1.5rem;border-radius:1.15rem}.online-hero h1{margin-top:.45rem;font-size:clamp(2.75rem,14vw,4rem)}.online-hero p{font-size:.94rem;line-height:1.55}.auth-panel{border-radius:1.15rem}.auth-panel__intro,.auth-login-form,.auth-panel__signed-in{padding:1.25rem}.auth-panel__rune{display:none}.auth-panel__intro p{font-size:.8rem}.auth-login-form__fields,.auth-login-form__actions{grid-template-columns:minmax(0,1fr)}.auth-login-form__divider,.button--google{grid-column:1}.auth-panel__signed-in{grid-template-columns:auto minmax(0,1fr)}.auth-panel__signed-in .button{grid-column:1 / -1}.lobby-room-page{width:calc(100% - 1rem);padding-top:.5rem}.lobby-room-hero{grid-template-columns:minmax(0,1fr);gap:1.25rem;padding:1.5rem;border-radius:1.15rem}.lobby-room-back{top:.8rem;left:1.25rem}.lobby-room-hero__title{padding-top:2rem}.lobby-room-hero h1{font-size:clamp(2.35rem,12vw,3.5rem)}.lobby-code{width:100%}.lobby-room-section-heading{align-items:start;flex-direction:column}.lobby-seat{grid-template-columns:auto auto minmax(0,1fr)}.lobby-seat .mode-badge{display:none}.lobby-deck-picker,.lobby-deck-import{grid-template-columns:minmax(0,1fr)}.menu-hero{min-height:650px;justify-content:flex-start;padding:4rem 1.25rem 8.5rem;background-image:linear-gradient(90deg,#031f27eb,#03272eb3),linear-gradient(0deg,rgb(4 32 40 / 76%) 0%,transparent 45%),url(/fantasy-arena-hero.jpg);background-position:46% center}.menu-hero__copy{width:100%}.menu-hero h1{font-size:clamp(3rem,15vw,4.2rem)}.menu-hero__action{width:100%}.menu-hero__status{right:1.25rem;bottom:1.5rem;left:1.25rem}.menu-hall{padding-inline:.75rem}.menu-header .save-status{display:none}.menu-grid,.resume-grid,.online-actions-grid{grid-template-columns:1fr}.menu-card{grid-column:1}.auth-panel,.lobby-card,.lobby-waiting-card{align-items:stretch;grid-template-columns:1fr}.lobby-waiting-card__status{padding:1rem 0 0;border-top:1px solid rgb(112 222 192 / 18%);border-left:0}.lobby-card__capacity{justify-items:start}}@media(max-width:620px){.app-header,.battle-header{padding-inline:14px}.save-status{display:none}.setup-hero{min-height:240px;padding-inline:20px}.deck-grid,.setup-actions{width:calc(100% - 24px)}.deck-slot{padding:22px 18px}.battle-actions{overflow-x:auto}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media(hover:none){.card:hover{transform:none;box-shadow:0 11px 18px #00000047;outline:0}.card--tapped:hover{transform:rotate(90deg)}}.zone-browser-layer{position:fixed;z-index:4000;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:clamp(.5rem,2vw,2rem);background:#010a08c7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.zone-action-layer{position:fixed;z-index:6100;top:0;right:0;bottom:0;left:0}.zone-action-menu{position:fixed;overflow:auto;display:grid;align-content:start;padding:.45rem;color:#edf1ee;border:1px solid rgb(255 255 255 / 12%);border-radius:.75rem;background:#232926fa;box-shadow:0 1.1rem 3rem #00000094}.zone-action-menu>header{display:flex;align-items:center;justify-content:space-between;padding:.45rem .55rem .65rem;color:var(--gold-bright)}.zone-action-menu>header button{width:2rem;height:2rem;padding:0;border:0;border-radius:50%;color:inherit;background:transparent;font-size:1.35rem}.zone-action-menu>button,.zone-action-menu__amount>button{min-height:2.75rem;display:flex;align-items:center;gap:.75rem;padding:.6rem .75rem;color:inherit;border:0;border-radius:.45rem;background:transparent;font:inherit;text-align:left}.zone-action-menu>button>span:first-child{width:1.35rem;color:#d5ded8;font-size:1.3rem;text-align:center}.zone-action-menu>button>span:last-child:not(:first-child){margin-left:auto}.zone-action-menu>button:hover,.zone-action-menu>button:focus-visible,.zone-action-menu__amount>button:hover,.zone-action-menu__amount>button:focus-visible{color:#fff;background:#ffffff1c}.zone-action-menu__separator{height:1px;margin:.4rem -.45rem;background:#ffffff24}.zone-action-menu__amount{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:.35rem;padding:.25rem .5rem .55rem 2.7rem}.zone-action-menu__amount label{min-width:0;display:flex;align-items:center;gap:.4rem;color:#bdc8c1;font-size:.75rem}.zone-action-menu__amount input{width:3.5rem;min-height:2.25rem;padding:.3rem;color:#fff;border:1px solid rgb(255 255 255 / 18%);border-radius:.4rem;background:#00000038;text-align:center}.zone-action-menu__amount>button{min-height:2.25rem;padding:.35rem .55rem;border:1px solid rgb(255 255 255 / 10%);font-size:.75rem}.zone-action-menu__tokens{max-height:min(52vh,430px);overflow:auto;display:grid;gap:.35rem;padding:.4rem .2rem .2rem 2rem}.zone-action-menu__tokens>button{min-height:4.25rem;display:grid;grid-template-columns:3.1rem minmax(0,1fr);align-items:center;gap:.75rem;padding:.35rem;color:inherit;border:1px solid transparent;border-radius:.5rem;background:#00000021;text-align:left}.zone-action-menu__tokens>button:hover,.zone-action-menu__tokens>button:focus-visible{border-color:#ddb8678c;background:#ddb8671a}.zone-action-menu__tokens img,.zone-action-menu__token-fallback{width:3.1rem;height:3.8rem;display:grid;place-items:center;object-fit:cover;object-position:top;border-radius:.3rem;background:#17251e}.zone-action-menu__tokens>button>span:last-child{min-width:0;display:flex;justify-content:space-between;gap:.5rem}.zone-action-menu__tokens strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.zone-action-menu__tokens small{color:var(--gold-bright)}.zone-action-menu__tokens p{margin:0;padding:.85rem;color:var(--muted);font-size:.8rem;line-height:1.4}.zone-browser{width:min(1180px,96vw);height:min(850px,92vh);overflow:hidden;display:grid;grid-template-rows:auto auto auto auto minmax(0,1fr);color:var(--paper);border:1px solid rgb(221 184 103 / 55%);border-radius:1rem;background:linear-gradient(#08241bf5,#03140ffa);box-shadow:0 2rem 6rem #00000094}.zone-browser>header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.2rem;border-bottom:1px solid rgb(255 255 255 / 10%)}.zone-browser h2{margin:.15rem 0 0}.zone-browser>header button{width:2.5rem;height:2.5rem;border-radius:50%;font-size:1.6rem}.zone-browser__tools,.zone-browser__library-tools,.zone-browser__selection{display:flex;align-items:end;gap:.7rem;padding:.75rem 1rem;border-bottom:1px solid rgb(255 255 255 / 9%)}.zone-browser__tools label{display:grid;gap:.25rem;min-width:min(220px,30vw)}.zone-browser__tools input,.zone-browser__tools select,.zone-browser__selection select,.card-group-overlay input,.selection-toolbar__group input,.card-action-menu__attachment select{min-height:2.3rem;padding:.4rem .55rem;color:var(--paper);border:1px solid rgb(255 255 255 / 20%);border-radius:.45rem;background:#0000004d}.segmented-control,.card-group-overlay form,.card-group-overlay__actions,.card-group-overlay__actions div,.selection-toolbar__group{display:flex;gap:.25rem}.segmented-control button[aria-pressed=true]{color:#16251d;background:var(--gold)}.zone-browser__library-tools,.zone-browser__selection{align-items:center}.zone-browser__library-tools input[type=number]{width:4.5rem}.zone-browser__library-tools span{margin-left:auto;color:var(--muted)}.zone-browser__selection{background:#ddb8671a}.zone-browser__cards{overflow:auto;padding:1.2rem}.zone-browser__cards--grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));align-content:start;gap:1rem}.zone-browser__item{position:relative;min-width:0;padding:.45rem;border:1px solid transparent;border-radius:.65rem}.zone-browser__item.is-selected{border-color:var(--gold);background:#ddb8671a}.zone-browser__item>label{position:absolute;z-index:3;top:.65rem;left:.65rem;padding:.25rem;border-radius:.25rem;background:#000000bf}.zone-browser__cards--grid .zone-browser__item>.card{width:min(100%,150px);margin-inline:auto}.zone-browser__item>div:last-child{display:grid;gap:.15rem;margin-top:.45rem}.zone-browser__item span,.zone-browser__item small{overflow:hidden;color:var(--muted);font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.zone-browser__cards--list{display:grid;align-content:start;gap:.4rem}.zone-browser__cards--list .zone-browser__item{display:grid;grid-template-columns:2rem 3.6rem minmax(0,1fr);align-items:center;gap:.7rem}.zone-browser__cards--list .zone-browser__item>label{position:static}.zone-browser__cards--list .card{width:3.6rem}.zone-browser__empty{grid-column:1 / -1;place-self:center;color:var(--muted)}.card__attachment,.card__attachment-count{position:absolute;z-index:4;left:.25rem;max-width:calc(100% - .5rem);padding:.18rem .3rem;overflow:hidden;color:#fff6d7;border:1px solid rgb(221 184 103 / 45%);border-radius:.3rem;background:#041812e5;font-size:.52rem;text-overflow:ellipsis;white-space:nowrap}.card__attachment{bottom:.25rem}.card__attachment-count{top:.25rem;right:.25rem;left:auto}.card-action-menu__attachment{display:grid;gap:.45rem;padding:.7rem 0;border-bottom:1px solid rgb(255 255 255 / 10%)}.card-action-menu__attachment label{display:grid;gap:.25rem}.battlefield-card-position--grouped:before{position:absolute;z-index:-1;top:-.45rem;right:-.45rem;bottom:-.45rem;left:-.45rem;content:"";border:1px dashed rgb(221 184 103 / 68%);border-radius:.7rem}.battlefield-card-position--pile{filter:drop-shadow(7px 7px 0 rgb(6 24 18 / 90%)) drop-shadow(13px 13px 0 rgb(221 184 103 / 24%))}.card-group-overlay{position:absolute;z-index:150;width:min(15rem,32vw);padding:.5rem;transform:translate(-50%,calc(-100% - 5.5rem));border:1px solid rgb(221 184 103 / 48%);border-radius:.55rem;background:#03150feb;box-shadow:0 .7rem 1.5rem #00000047}.card-group-overlay input{min-width:0;width:100%}.card-group-overlay>span{display:block;margin:.3rem 0;color:var(--muted);font-size:.7rem}.card-group-overlay button{padding:.3rem .4rem;font-size:.65rem}.card-group-overlay__actions{flex-wrap:wrap}@media(max-width:900px){.zone-browser__tools{overflow-x:auto}.zone-browser__library-tools{flex-wrap:wrap}.zone-browser__library-tools span{width:100%;margin-left:0}}:root{font-family:Inter,Segoe UI,system-ui,sans-serif;color:#f5f2e9;background:#07110e;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #f5f2e9;--muted: #aab8af;--gold: #d7b66f;--gold-bright: #f1d99e;--panel: #111d18;--panel-light: #192720;--line: rgb(225 230 217 / 14%);--green: #3d8060;--red: #ae5d4f}*{box-sizing:border-box}html{min-width:320px;min-height:100%;background:#07110e}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden}button,input,select{font:inherit}button,select{cursor:pointer}button:disabled{cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,[role=button]:focus-visible{outline:3px solid #f1d99e;outline-offset:3px}h1,h2,h3,p{margin-top:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
