:root{
  --navy:#06153f; --navy2:#0b2872; --blue:#16b9ff; --cyan:#7be9ff; --gold:#ffd54a;
  --pink:#ff4da6; --green:#54d66a; --red:#ff5a5f; --white:#f8fbff; --muted:#b9c8ef;
  --panel:rgba(7,21,63,.88); --panel2:rgba(13,36,94,.88); --border:rgba(255,255,255,.18);
  --think:#45cfff; --act:#58a7ff; --care:#ff5fa8;
}
*{box-sizing:border-box} html{min-height:100%;background:#031030} body{margin:0;min-height:100%;font-family:Inter,ui-rounded,"Trebuchet MS",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--white);background:
radial-gradient(circle at 20% 0%,rgba(75,102,255,.36),transparent 32rem),
radial-gradient(circle at 80% 15%,rgba(255,49,175,.18),transparent 28rem),
radial-gradient(circle at 50% 100%,rgba(17,202,255,.2),transparent 36rem),#031030}
body::before{content:"";position:fixed;inset:0;background:url('assets/ui/playmat.webp') center 25%/cover no-repeat;opacity:.08;filter:saturate(1.2);pointer-events:none}
button,input,select{font:inherit}.hidden{display:none!important}button{cursor:pointer}.app-shell{position:relative;min-height:100%;isolation:isolate}.topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:10px clamp(12px,3vw,28px);background:linear-gradient(180deg,rgba(3,12,43,.98),rgba(6,21,63,.88));backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.12)}
.brand-button{border:0;background:transparent;color:white;display:flex;align-items:center;gap:9px;font-weight:1000;letter-spacing:-.03em;padding:6px 0}.brand-smart{font-size:clamp(18px,3vw,26px);background:linear-gradient(90deg,#5bff7d,#59e9ff,#ff4ab8);-webkit-background-clip:text;color:transparent;text-shadow:0 0 18px rgba(105,224,255,.25)}.brand-guardians{font-size:clamp(14px,2.2vw,21px);color:var(--gold)}.top-actions{display:flex;gap:8px}.icon-btn{width:42px;height:42px;border-radius:13px;border:1px solid var(--border);background:rgba(255,255,255,.08);color:white;font-weight:900}.icon-btn:hover,.icon-btn:focus-visible{background:rgba(255,255,255,.16);outline:2px solid var(--cyan);outline-offset:2px}.screen{width:min(1500px,100%);margin:0 auto;padding:clamp(16px,3vw,34px)}
.hero{display:grid;grid-template-columns:minmax(260px,.82fr) minmax(320px,1.2fr);gap:clamp(22px,5vw,64px);align-items:center;padding:clamp(12px,2vw,20px) 0 30px}.hero-art{display:flex;justify-content:center}.hero-card{width:min(420px,90%);filter:drop-shadow(0 24px 38px rgba(0,0,0,.48));animation:floaty 4s ease-in-out infinite}.hero-copy h1{font-size:clamp(38px,7vw,84px);line-height:.9;margin:0 0 16px;letter-spacing:-.055em}.hero-copy h1 span{display:block;color:var(--gold)}.eyebrow{font-size:13px;text-transform:uppercase;letter-spacing:.16em;color:var(--cyan);font-weight:900}.hero-copy p{font-size:clamp(17px,2.2vw,22px);line-height:1.45;color:#d6e2ff;max-width:720px}.button-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.primary-btn,.secondary-btn,.danger-btn{min-height:48px;border-radius:15px;padding:12px 19px;font-weight:950;border:1px solid transparent;transition:.18s transform,.18s filter,.18s background}.primary-btn{background:linear-gradient(180deg,#ffe663,#ffbd25);color:#07113a;box-shadow:0 9px 24px rgba(255,199,49,.2)}.secondary-btn{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.2);color:white}.danger-btn{background:rgba(255,72,89,.16);border-color:rgba(255,100,120,.38);color:#ffdce2}.primary-btn:hover,.secondary-btn:hover,.danger-btn:hover{transform:translateY(-1px);filter:brightness(1.08)}.primary-btn:focus-visible,.secondary-btn:focus-visible,.danger-btn:focus-visible{outline:3px solid var(--cyan);outline-offset:2px}.primary-btn:disabled,.secondary-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}
.founder-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:26px;max-width:780px}.founder-thumb{border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);aspect-ratio:2/3}.founder-thumb img{width:100%;height:100%;object-fit:cover}
.panel{background:linear-gradient(180deg,rgba(13,39,102,.9),rgba(5,18,58,.92));border:1px solid var(--border);border-radius:22px;padding:clamp(16px,3vw,28px);box-shadow:0 18px 50px rgba(0,0,0,.24)}.panel h2,.section-title{margin:0 0 16px;font-size:clamp(24px,4vw,38px);letter-spacing:-.03em}.setup-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.setting-card{background:rgba(255,255,255,.06);border:1px solid var(--border);border-radius:18px;padding:18px}.setting-card h3{margin:0 0 12px}.segmented{display:flex;gap:7px;flex-wrap:wrap}.segmented button{flex:1;min-width:72px;min-height:44px;border-radius:12px;border:1px solid var(--border);background:rgba(255,255,255,.06);color:white;font-weight:900}.segmented button.active{background:var(--gold);color:#07113a;border-color:#fff0a8}.name-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.field label{display:block;color:var(--muted);font-size:13px;font-weight:800;margin:0 0 6px}.field input{width:100%;min-height:46px;border-radius:12px;border:1px solid var(--border);background:rgba(255,255,255,.08);color:white;padding:10px 12px;font-size:16px}.field input:focus{outline:2px solid var(--cyan);border-color:transparent}.helper{color:var(--muted);font-size:14px;line-height:1.45}.draft-head{display:flex;align-items:end;justify-content:space-between;gap:12px;flex-wrap:wrap}.draft-progress{color:var(--gold);font-weight:900}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:14px;margin-top:18px}.card-tile{position:relative;border-radius:16px;background:rgba(255,255,255,.06);border:1px solid var(--border);padding:7px;transition:.18s transform,.18s border-color,.18s background;min-width:0}.card-tile button.card-open{display:block;width:100%;padding:0;border:0;background:transparent;border-radius:12px}.card-tile img{width:100%;display:block;border-radius:12px;aspect-ratio:2/3;object-fit:contain}.card-tile:hover{transform:translateY(-3px);border-color:rgba(255,255,255,.38)}.card-tile.selected{outline:3px solid var(--gold);background:rgba(255,213,74,.12)}.card-tile.taken{opacity:.28;filter:grayscale(.45)}.tile-select{width:100%;margin-top:7px;min-height:40px;border-radius:10px;border:0;background:rgba(77,221,117,.18);color:#d9ffe5;font-weight:900}.tile-select.selected{background:var(--gold);color:#08143d}.tile-select:disabled{opacity:.5;cursor:not-allowed}.tile-meta{padding:7px 5px 2px;font-size:12px;color:var(--muted);display:flex;gap:6px;justify-content:center;flex-wrap:wrap}.stat-pill{border-radius:999px;padding:3px 7px;background:rgba(255,255,255,.08);font-weight:800}.stat-pill.think{color:#a7edff}.stat-pill.act{color:#a9cfff}.stat-pill.care{color:#ffb3d4}
.game-layout{display:grid;grid-template-columns:220px minmax(0,1fr) 220px;grid-template-areas:"left center right";gap:14px;align-items:start}.seat-rail{display:flex;flex-direction:column;gap:12px}.seat-card{background:rgba(8,25,70,.82);border:1px solid var(--border);border-radius:18px;padding:12px;min-width:0}.seat-card.active{border-color:var(--gold);box-shadow:inset 0 0 0 1px rgba(255,213,74,.32)}.seat-title{display:flex;align-items:center;justify-content:space-between;gap:8px;font-weight:950}.lead-dot{width:10px;height:10px;border-radius:50%;background:var(--gold);box-shadow:0 0 13px var(--gold)}.guardian-row{display:flex;gap:6px;margin-top:9px}.guardian-mini{position:relative;width:calc((100% - 12px)/3);border:0;background:transparent;padding:0;border-radius:8px}.guardian-mini img{width:100%;border-radius:7px;display:block}.guardian-mini.lead img{outline:2px solid var(--gold);outline-offset:1px}.buff-dot{position:absolute;top:-3px;right:-3px;background:#1c2b62;border:1px solid #fff7;border-radius:999px;padding:2px 5px;font-size:9px;font-weight:900}.seat-foot{display:flex;justify-content:space-between;gap:8px;color:var(--muted);font-size:12px;margin-top:8px}.center-board{grid-area:center;min-width:0}.board-top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:10px}.phase-chip{font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:950;color:var(--cyan);background:rgba(56,195,255,.1);border:1px solid rgba(90,217,255,.22);padding:7px 10px;border-radius:999px}.mission-count{font-weight:900;color:var(--gold)}.table-surface{position:relative;overflow:hidden;border-radius:24px;border:1px solid rgba(255,255,255,.18);background:radial-gradient(circle at 50% 42%,rgba(40,112,255,.2),transparent 34%),linear-gradient(180deg,rgba(12,36,93,.93),rgba(3,14,51,.95));padding:clamp(14px,2.5vw,26px);box-shadow:inset 0 0 60px rgba(48,151,255,.08)}.table-surface::before{content:"";position:absolute;inset:0;background:url('assets/ui/playmat.webp') center/cover no-repeat;opacity:.06;pointer-events:none}.table-cards{position:relative;display:grid;grid-template-columns:minmax(210px,.9fr) minmax(250px,1.1fr);gap:clamp(16px,3vw,32px);align-items:center}.mission-zone,.challenge-zone{display:flex;flex-direction:column;align-items:center;min-width:0}.zone-label{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:900;margin-bottom:7px}.featured-card{width:min(100%,330px);aspect-ratio:2/3;object-fit:contain;filter:drop-shadow(0 14px 22px rgba(0,0,0,.34));border-radius:18px}.featured-card.big{filter:drop-shadow(0 0 16px rgba(255,213,74,.22)) drop-shadow(0 16px 24px rgba(0,0,0,.36))}.challenge-stack{width:min(100%,290px);position:relative;display:grid;place-items:center}.challenge-stack img{grid-area:1/1}.challenge-back{transform:rotate(-2deg)}.challenge-front{transform:rotate(2deg)}.challenge-front.revealed{animation:flipIn .6s ease both}.requirement-panel{margin-top:18px;position:relative;background:rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:14px}.meters{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.meter{background:rgba(255,255,255,.06);border-radius:14px;padding:10px;min-width:0}.meter-head{display:flex;justify-content:space-between;gap:6px;font-weight:900;font-size:13px}.meter-track{height:10px;background:rgba(255,255,255,.1);border-radius:999px;margin-top:7px;overflow:hidden}.meter-fill{height:100%;width:0;border-radius:inherit;transition:width .35s ease}.meter.think .meter-fill{background:linear-gradient(90deg,#2dbce9,#89ecff)}.meter.act .meter-fill{background:linear-gradient(90deg,#367cff,#65c5ff)}.meter.care .meter-fill{background:linear-gradient(90deg,#ff3d92,#ff8dc0)}.meter.met{outline:1px solid rgba(102,255,157,.48)}.team-total{font-size:12px;color:var(--muted);margin-top:8px}.contribution-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;min-height:60px;align-items:center}.contrib-card{width:42px;aspect-ratio:2/3;object-fit:cover;border-radius:5px;box-shadow:0 4px 10px rgba(0,0,0,.25)}.ability-token{display:inline-flex;align-items:center;gap:5px;background:rgba(255,213,74,.12);border:1px solid rgba(255,213,74,.32);border-radius:999px;padding:6px 9px;color:#fff2a5;font-size:12px;font-weight:900}.action-panel{margin-top:14px;background:linear-gradient(180deg,rgba(19,58,137,.7),rgba(8,27,76,.82));border:1px solid rgba(255,255,255,.13);border-radius:18px;padding:14px;position:relative}.action-panel h3{margin:0 0 7px;font-size:20px}.action-panel p{color:#cfdbfb;line-height:1.4;margin:0 0 12px}.choice-row{display:flex;gap:9px;flex-wrap:wrap}.stat-choice{min-width:100px;border:1px solid rgba(255,255,255,.18);border-radius:13px;padding:12px;background:rgba(255,255,255,.07);color:white;font-weight:900}.stat-choice:hover{background:rgba(255,255,255,.13)}.hand-zone{margin-top:14px;padding:14px;border-radius:20px;border:1px solid rgba(255,255,255,.13);background:rgba(3,14,49,.9)}.hand-header{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.hand-cards{display:flex;gap:10px;overflow-x:auto;padding:10px 3px 5px}.hand-card{flex:0 0 128px;border:0;background:transparent;padding:0;border-radius:12px;transition:transform .16s}.hand-card img{width:100%;display:block;border-radius:11px;box-shadow:0 8px 18px rgba(0,0,0,.35)}.hand-card:hover{transform:translateY(-6px)}.hand-card:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}.hand-card.disabled{opacity:.35;pointer-events:none}.resolution-box{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0}.resolution-stat{text-align:center;border-radius:14px;padding:12px;background:rgba(255,255,255,.06)}.resolution-stat strong{display:block;font-size:25px}.resolution-stat.met{border:1px solid rgba(77,225,135,.5);background:rgba(62,202,122,.08)}.resolution-stat.miss{border:1px solid rgba(255,97,114,.46);background:rgba(255,78,96,.08)}.result-banner{font-size:clamp(25px,4vw,44px);font-weight:1000;text-align:center;margin:8px 0 12px}.result-banner.success{color:#9cffb8}.result-banner.fail{color:#ffd078}
.collection-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.filter-btn{border:1px solid var(--border);background:rgba(255,255,255,.07);color:white;border-radius:999px;padding:9px 13px;font-weight:900}.filter-btn.active{background:var(--gold);color:#07113a}.collection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(135px,1fr));gap:13px}.collection-card{border:0;background:rgba(255,255,255,.05);padding:7px;border-radius:15px;color:white}.collection-card img{display:block;width:100%;aspect-ratio:2/3;object-fit:contain;border-radius:11px}.collection-card span{display:block;text-align:center;font-size:12px;font-weight:900;padding:7px 2px 3px}.tutorial-layout{display:grid;grid-template-columns:minmax(220px,.62fr) minmax(320px,1.38fr);gap:24px}.guide-card{position:sticky;top:84px;align-self:start}.guide-card img{width:min(100%,320px);display:block;margin:auto;filter:drop-shadow(0 14px 25px rgba(0,0,0,.35))}.speech{background:white;color:#101e49;border-radius:20px;padding:18px;margin-top:14px;position:relative;font-weight:800;line-height:1.45}.speech::before{content:"";position:absolute;top:-12px;left:30%;border:12px solid transparent;border-bottom-color:white;border-top:0}.tutorial-steps{display:grid;gap:12px}.tutorial-step{display:grid;grid-template-columns:48px 1fr;gap:14px;background:rgba(255,255,255,.06);border:1px solid var(--border);border-radius:17px;padding:16px}.step-number{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:var(--gold);color:#06123d;font-weight:1000;font-size:22px}.tutorial-step h3{margin:0 0 5px}.tutorial-step p{margin:0;color:#cedafa;line-height:1.45}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:16px;background:rgba(255,255,255,.06);border-radius:15px;padding:14px}.toggle{width:52px;height:30px;border-radius:999px;border:1px solid rgba(255,255,255,.2);background:#22366f;position:relative}.toggle::after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:white;transition:.2s}.toggle.on{background:#32bb68}.toggle.on::after{left:25px}.validation-list{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;line-height:1.55;background:rgba(0,0,0,.22);border-radius:14px;padding:13px;white-space:pre-wrap}.win-screen{text-align:center;padding:30px 0}.win-screen h1{font-size:clamp(46px,9vw,100px);line-height:.88;margin:10px 0;color:var(--gold);letter-spacing:-.05em}.win-founders{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;max-width:850px;margin:24px auto}.win-founders img{width:100%;border-radius:14px;filter:drop-shadow(0 10px 16px rgba(0,0,0,.3))}
.modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:18px}.modal-backdrop{position:absolute;inset:0;background:rgba(0,5,23,.83);backdrop-filter:blur(10px)}.modal-panel{position:relative;z-index:1;width:min(1000px,96vw);max-height:92vh;overflow:auto;background:linear-gradient(180deg,#0c286c,#06143c);border:1px solid rgba(255,255,255,.2);border-radius:22px;padding:clamp(16px,3vw,26px);box-shadow:0 30px 80px rgba(0,0,0,.55)}.modal-close{position:absolute;right:12px;top:10px;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:rgba(0,0,0,.3);color:white;font-size:28px;z-index:3}.viewer-grid{display:grid;grid-template-columns:minmax(220px,420px) 1fr;gap:25px;align-items:start}.viewer-card{width:100%;max-height:82vh;object-fit:contain;border-radius:16px}.viewer-copy{padding-top:18px}.viewer-copy h2{font-size:clamp(28px,5vw,48px);margin:0 0 12px}.viewer-meta-line{margin:8px 0;color:#d6e2ff;line-height:1.45}.big-stats{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.big-stats .stat-pill{font-size:16px;padding:7px 11px;background:rgba(255,255,255,.1)}.privacy-overlay{position:fixed;inset:0;z-index:120;background:rgba(1,6,24,.95);display:grid;place-items:center;padding:22px}.privacy-card{text-align:center;width:min(470px,100%);background:linear-gradient(180deg,#12368c,#071a52);border:1px solid rgba(255,255,255,.2);border-radius:24px;padding:30px}.privacy-icon{font-size:60px;color:var(--gold)}.privacy-card h2{font-size:35px;margin:5px 0}.privacy-card p{color:#d8e4ff;line-height:1.5}.toast{position:fixed;z-index:130;left:50%;bottom:22px;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:#06133a;border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:10px 16px;color:white;font-weight:850;transition:.2s;box-shadow:0 10px 30px rgba(0,0,0,.3)}.toast.show{opacity:1;transform:translate(-50%,0)}
@keyframes floaty{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-8px) rotate(1deg)}}@keyframes flipIn{0%{transform:rotateY(90deg) rotate(2deg);opacity:.2}100%{transform:rotateY(0) rotate(2deg);opacity:1}}@keyframes pop{0%{transform:scale(.85);opacity:0}100%{transform:scale(1);opacity:1}}
.confetti{position:fixed;inset:0;pointer-events:none;z-index:140;overflow:hidden}.confetti i{position:absolute;top:-20px;width:10px;height:16px;background:var(--gold);animation:fall 1.7s linear forwards}.confetti i:nth-child(3n){background:#ff59ab}.confetti i:nth-child(4n){background:#57dbff}.confetti i:nth-child(5n){background:#5de57b}@keyframes fall{to{transform:translateY(105vh) rotate(650deg);opacity:.1}}
@media(max-width:1080px){.game-layout{grid-template-columns:1fr;grid-template-areas:"center"}.seat-rail{display:grid;grid-template-columns:repeat(2,1fr)}.left-rail,.right-rail{display:none}.mobile-seats{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-bottom:12px}.setup-grid{grid-template-columns:1fr 1fr}.tutorial-layout{grid-template-columns:1fr}.guide-card{position:static;display:grid;grid-template-columns:180px 1fr;gap:14px;align-items:center}.guide-card img{width:100%}.speech{margin:0}.speech::before{display:none}}
.mobile-seats{display:none}@media(max-width:760px){.screen{padding:13px}.hero{grid-template-columns:1fr;text-align:center}.hero-art{order:2}.hero-card{width:min(310px,80%)}.hero-copy p{margin-left:auto;margin-right:auto}.button-row{justify-content:center}.founder-strip{margin-left:auto;margin-right:auto}.setup-grid,.settings-grid,.name-fields{grid-template-columns:1fr}.table-cards{grid-template-columns:1fr}.featured-card{width:min(260px,82vw)}.challenge-stack{width:min(230px,72vw)}.meters{gap:6px}.meter{padding:8px}.hand-card{flex-basis:108px}.viewer-grid{grid-template-columns:1fr}.viewer-card{max-height:58vh}.guide-card{grid-template-columns:120px 1fr}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.win-founders{grid-template-columns:repeat(5,1fr);gap:5px}.brand-guardians{display:none}}
@media(max-width:410px){.founder-strip{grid-template-columns:repeat(5,1fr);gap:4px}.setup-grid{grid-template-columns:1fr}.meters{grid-template-columns:1fr}.resolution-box{grid-template-columns:1fr}.card-grid{gap:9px}.guide-card{grid-template-columns:1fr}.guide-card img{width:160px}.speech{text-align:center}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.hero-card{animation:none!important}}
.reduce-motion *, .reduce-motion *::before, .reduce-motion *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reduce-motion .hero-card{animation:none!important}

/* ===== First Edition v0.3 cinematic digital tabletop ===== */
:root{--violet:#af5cff;--deep:#020b25;--lime:#7cf36f;--orange:#ffab42}
body{background:
radial-gradient(circle at 50% -10%,rgba(28,107,255,.34),transparent 38rem),
radial-gradient(circle at 12% 35%,rgba(255,59,177,.12),transparent 28rem),
radial-gradient(circle at 88% 38%,rgba(80,255,176,.10),transparent 30rem),
linear-gradient(180deg,#030a22 0%,#06163d 48%,#02091e 100%);background-attachment:fixed}
body::before{opacity:.035;filter:saturate(1.5) contrast(1.2)}
body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background-image:radial-gradient(circle at 10% 20%,#fff 0 1px,transparent 1.5px),radial-gradient(circle at 70% 35%,#fff 0 1px,transparent 1.4px),radial-gradient(circle at 38% 78%,#b9d9ff 0 1px,transparent 1.5px);background-size:180px 180px,250px 250px,320px 320px;opacity:.22}
.topbar{background:linear-gradient(180deg,rgba(2,8,28,.98),rgba(3,14,45,.86));border-bottom:1px solid rgba(104,220,255,.18);box-shadow:0 8px 30px rgba(0,0,0,.18)}
.brand-button{gap:9px;flex-wrap:wrap}.brand-edition{font-size:9px;letter-spacing:.16em;border:1px solid rgba(255,213,74,.36);background:rgba(255,213,74,.09);color:#ffe990;padding:4px 7px;border-radius:999px}
.icon-btn{background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.05));box-shadow:inset 0 1px rgba(255,255,255,.12)}
.screen{width:min(1720px,100%);padding-top:18px}

/* Home */
.home-stage{min-height:calc(100vh - 96px);display:grid;grid-template-columns:minmax(340px,.9fr) minmax(480px,1.35fr);align-items:center;gap:clamp(26px,5vw,70px);padding:clamp(18px,4vw,58px) 0}
.home-copy{position:relative;z-index:3}.home-copy h1{font-size:clamp(48px,7vw,104px);line-height:.83;margin:8px 0 18px;letter-spacing:-.072em;text-shadow:0 10px 32px rgba(0,0,0,.38)}.home-copy h1 span{background:linear-gradient(90deg,#ffe66c,#ffb733);-webkit-background-clip:text;color:transparent}.home-copy p{max-width:760px;color:#dce7ff;font-size:clamp(18px,2vw,24px);line-height:1.44}.home-buttons{margin-top:26px}.mega{min-height:58px;padding:15px 24px;font-size:17px}.home-promise{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}.home-promise span{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.055);border-radius:999px;padding:7px 11px;color:#d9e5ff;font-size:12px;font-weight:850}
.home-visual{position:relative;min-height:660px;display:flex;align-items:center;justify-content:center;perspective:1100px}.home-mat{position:absolute;width:95%;max-width:860px;border-radius:28px;transform:rotateX(62deg) rotateZ(-3deg) translateY(128px);filter:saturate(1.24) brightness(.74) drop-shadow(0 44px 44px rgba(0,0,0,.48));opacity:.86}.founder-fan{position:relative;width:min(780px,96%);height:590px;filter:drop-shadow(0 30px 34px rgba(0,0,0,.44))}.fan-card{position:absolute;width:29%;max-width:230px;padding:0;border:0;background:transparent;border-radius:24px;transition:.28s transform,.28s filter;transform-origin:50% 100%}.fan-card img{width:100%;border-radius:18px}.fan-card:hover{filter:brightness(1.08);z-index:9}.fan-1{left:2%;top:25%;transform:rotate(-16deg)}.fan-2{left:19%;top:11%;transform:rotate(-8deg)}.fan-3{left:36%;top:3%;transform:rotate(0)}.fan-4{left:53%;top:11%;transform:rotate(8deg)}.fan-5{left:70%;top:25%;transform:rotate(16deg)}.fan-1:hover{transform:rotate(-16deg) translateY(-18px) scale(1.05)}.fan-2:hover{transform:rotate(-8deg) translateY(-18px) scale(1.05)}.fan-3:hover{transform:translateY(-18px) scale(1.05)}.fan-4:hover{transform:rotate(8deg) translateY(-18px) scale(1.05)}.fan-5:hover{transform:rotate(16deg) translateY(-18px) scale(1.05)}.home-spark{position:absolute;color:#ffe869;font-size:42px;text-shadow:0 0 22px currentColor;animation:twinkle 2.4s ease-in-out infinite}.home-spark.one{top:12%;left:4%}.home-spark.two{right:2%;top:32%;animation-delay:.8s}.home-spark.three{right:15%;bottom:5%;animation-delay:1.3s}@keyframes twinkle{0%,100%{transform:scale(.75) rotate(0);opacity:.45}50%{transform:scale(1.25) rotate(30deg);opacity:1}}

/* Setup / panels */
.panel{border-color:rgba(116,219,255,.18);background:linear-gradient(180deg,rgba(10,33,92,.92),rgba(4,14,47,.95));box-shadow:0 28px 70px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.06)}
.setting-card{background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035));box-shadow:inset 0 1px rgba(255,255,255,.06)}
.segmented button.active{box-shadow:0 0 24px rgba(255,213,74,.18)}

/* Table */
.game-layout.cinematic{grid-template-columns:236px minmax(0,1fr) 236px;gap:14px}.center-board{min-width:0}.cinematic-hud{padding:7px 12px 13px;display:flex;justify-content:space-between;align-items:center;gap:14px}.phase-wrap{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.turn-whisper{font-size:12px;color:var(--muted);font-weight:800}.mission-progress{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}.progress-stars{display:flex;gap:4px}.progress-star{font-size:19px;color:#314a78;text-shadow:0 0 0 transparent}.progress-star.done{color:var(--gold);text-shadow:0 0 14px rgba(255,213,74,.72);animation:popStar .45s ease both}@keyframes popStar{0%{transform:scale(.55) rotate(-15deg)}70%{transform:scale(1.25) rotate(5deg)}100%{transform:scale(1)}}
.table-surface.alive-table{position:relative;overflow:hidden;min-height:840px;border:1px solid rgba(255,255,255,.20);border-radius:32px;padding:24px;background:radial-gradient(circle at 50% 45%,rgba(13,89,176,.54),rgba(3,25,75,.88) 48%,rgba(2,12,38,.96) 80%);box-shadow:0 26px 64px rgba(0,0,0,.35),inset 0 0 0 3px rgba(255,206,74,.10),inset 0 0 70px rgba(58,174,255,.10)}.mat-ghost{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.28;filter:saturate(1.5) contrast(1.08) brightness(.78);pointer-events:none}.alive-table::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 37%,transparent 0 22%,rgba(96,224,255,.08) 35%,transparent 55%),linear-gradient(180deg,rgba(4,18,54,.05),rgba(3,10,33,.34));z-index:0}.alive-table>*:not(.mat-ghost){position:relative;z-index:2}
.deck-corners{position:absolute!important;inset:16px;z-index:1!important;pointer-events:none}.deck-corner{position:absolute;width:78px;text-align:center;color:#dce9ff;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;opacity:.92}.deck-corner img{border-radius:10px;box-shadow:0 8px 17px rgba(0,0,0,.38);transform:rotate(-4deg)}.deck-corner::after,.deck-corner::before{content:"";position:absolute;left:6px;right:6px;height:100%;top:4px;border-radius:10px;border:1px solid rgba(255,255,255,.18);background:#061d55;z-index:-1}.deck-corner::after{top:8px;left:11px;right:1px}.mission-deck{right:4px;bottom:5px}.power-deck{left:4px;bottom:5px}.deck-corner span{display:block;margin-top:6px}
.table-cards.cinematic-cards{display:grid;grid-template-columns:minmax(220px,1fr) 104px minmax(220px,1fr);gap:12px;align-items:center;justify-items:center;min-height:430px;padding:18px 72px 8px}.hero-zone{min-height:408px;width:100%;border-radius:25px;background:linear-gradient(180deg,rgba(6,24,70,.58),rgba(4,14,43,.44));border:1px solid rgba(255,255,255,.15);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:13px 12px 16px;box-shadow:inset 0 1px rgba(255,255,255,.08)}.zone-label{color:#fff5b8;font-size:12px;letter-spacing:.15em;text-shadow:0 0 14px rgba(255,213,74,.35);margin-bottom:8px}.hero-zone .card-open{border:0;background:transparent;padding:0;display:block}.featured-card{width:min(260px,90%);max-height:350px;object-fit:contain;border-radius:17px;filter:drop-shadow(0 17px 18px rgba(0,0,0,.42));transition:.25s transform,.25s filter}.featured-card:hover{transform:translateY(-8px) rotate(.7deg) scale(1.025);filter:drop-shadow(0 24px 24px rgba(0,0,0,.48)) brightness(1.05)}.featured-card.big{box-shadow:0 0 34px rgba(255,213,74,.22)}.deal-new{animation:missionDeal .72s cubic-bezier(.18,.88,.22,1.18) both}.mystery-card{animation:mysteryWiggle 3.5s ease-in-out infinite}.center-energy{display:flex;flex-direction:column;align-items:center;gap:8px}.energy-ring{width:88px;height:88px;border-radius:50%;display:grid;place-items:center;text-align:center;font-weight:1000;line-height:.92;color:#08143e;background:radial-gradient(circle,#fffbe1 0 34%,#ffd452 35% 52%,#ff9c27 70%,rgba(255,198,61,.05) 72%);box-shadow:0 0 30px rgba(255,210,66,.48),0 0 70px rgba(80,222,255,.22);animation:energyPulse 2.4s ease-in-out infinite}.energy-line{width:2px;height:112px;background:linear-gradient(180deg,transparent,#72e4ff,transparent);box-shadow:0 0 18px #72e4ff}.challenge-stack.cinematic-stack{position:relative;min-height:310px;width:100%;display:flex;align-items:center;justify-content:center}.challenge-fan{position:absolute;border:0;background:transparent;padding:0;width:min(230px,72%)}.challenge-fan img{width:100%;border-radius:16px;filter:drop-shadow(0 16px 20px rgba(0,0,0,.42))}.challenge-fan.c1{transform:rotate(-6deg) translateX(-22px);z-index:2}.challenge-fan.c2{transform:rotate(7deg) translateX(26px);z-index:3;animation:challengeSlam .48s cubic-bezier(.2,.9,.2,1.2) both}.challenge-caption{font-size:11px;font-weight:850;color:#d9e7ff;text-align:center;margin-top:8px}
@keyframes missionDeal{0%{opacity:0;transform:translate(240px,-190px) rotate(18deg) scale(.65)}75%{opacity:1;transform:translate(-8px,6px) rotate(-1deg) scale(1.03)}100%{transform:none}}
@keyframes challengeSlam{0%{opacity:0;transform:translate(-160px,-160px) rotate(-24deg) scale(.72)}72%{opacity:1;transform:rotate(9deg) translate(28px,7px) scale(1.04)}100%{transform:rotate(7deg) translateX(26px)}}
@keyframes mysteryWiggle{0%,86%,100%{transform:rotate(0)}89%{transform:rotate(-2deg)}92%{transform:rotate(2deg)}95%{transform:rotate(-1deg)}}
@keyframes energyPulse{0%,100%{transform:scale(.94);filter:saturate(.9)}50%{transform:scale(1.045);filter:saturate(1.25)}}
.lead-meter-row{display:grid;grid-template-columns:230px minmax(0,1fr);gap:14px;align-items:stretch;margin:6px 72px 12px}.lead-showcase,.cinematic-meter-panel{border:1px solid rgba(255,255,255,.15);background:linear-gradient(180deg,rgba(5,22,65,.84),rgba(3,13,40,.82));border-radius:22px;padding:13px;box-shadow:inset 0 1px rgba(255,255,255,.05)}.lead-showcase{display:flex;align-items:center;gap:10px;min-height:142px}.lead-card{position:relative;width:84px;flex:0 0 auto;border:0;background:transparent;padding:0}.lead-card img{width:100%;border-radius:10px;filter:drop-shadow(0 8px 12px rgba(0,0,0,.35));animation:leadFloat 2.8s ease-in-out infinite}.lead-badge{position:absolute;left:50%;bottom:-7px;transform:translateX(-50%);white-space:nowrap;background:linear-gradient(180deg,#ffe66d,#ffbf28);color:#07133b;border-radius:999px;padding:3px 6px;font-size:7px;font-weight:1000}.lead-copy{min-width:0}.lead-copy strong{display:block;font-size:18px;color:#fff5bd}.lead-copy span{display:block;font-size:11px;color:#cce0ff;margin-top:4px;line-height:1.25}.lead-empty{text-align:center;margin:auto;color:#c6d5f8}.lead-question{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;margin:0 auto 8px;background:rgba(255,255,255,.08);font-size:28px;color:#ffe478}.lead-empty strong,.lead-empty small{display:block}.lead-empty small{font-size:10px;line-height:1.35;margin-top:5px;color:#9eb4e0}.meter-title-row{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:9px}.meter-title-row>span:first-child{font-weight:1000;letter-spacing:.14em;color:#fff4b3;font-size:11px}.meters{gap:8px}.meter{padding:9px 10px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.11);box-shadow:inset 0 1px rgba(255,255,255,.04)}.meter.met{box-shadow:0 0 20px rgba(102,245,172,.08),inset 0 0 16px rgba(102,245,172,.06)}.meter-fill{transition:width .42s cubic-bezier(.2,.8,.2,1)}.contribution-row{min-height:42px;display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:9px}.contrib-card{width:40px;border-radius:6px;filter:drop-shadow(0 5px 7px rgba(0,0,0,.28));animation:powerPop .48s cubic-bezier(.2,.9,.25,1.2) both}.ability-token{padding:6px 8px;border-radius:999px;background:rgba(93,226,255,.10);border:1px solid rgba(93,226,255,.20);font-size:9px;font-weight:900;color:#d7f8ff}@keyframes powerPop{0%{opacity:0;transform:translateY(28px) rotate(-9deg) scale(.75)}100%{opacity:1;transform:none}}
.game-instruction-strip{margin:0 72px 10px;display:flex;justify-content:center;align-items:center;gap:10px;text-align:center;border-radius:999px;padding:8px 14px;background:linear-gradient(90deg,rgba(59,213,255,.07),rgba(255,213,74,.09),rgba(255,71,168,.07));border:1px solid rgba(255,255,255,.10);color:#eaf2ff;font-size:12px;font-weight:900}.instruction-icon{color:var(--gold);text-shadow:0 0 10px rgba(255,213,74,.7)}
.action-panel{margin:0 72px 10px;padding:16px 18px;border-radius:22px;background:linear-gradient(180deg,rgba(14,42,103,.93),rgba(5,18,55,.94));border:1px solid rgba(113,225,255,.18);box-shadow:0 14px 30px rgba(0,0,0,.20)}.action-panel h3{font-size:clamp(20px,2vw,27px);letter-spacing:-.025em;margin:0 0 7px}.action-panel p{color:#ccdaf9;line-height:1.4;margin:6px 0 12px}.choice-row{gap:9px}.stat-choice{min-height:46px;border-radius:14px;border:1px solid rgba(255,255,255,.16);background:linear-gradient(180deg,rgba(255,255,255,.11),rgba(255,255,255,.05));color:white;font-weight:1000;padding:10px 14px}.result-banner{font-size:clamp(24px,3vw,36px);font-weight:1000;text-align:center;border-radius:16px;padding:10px;margin-bottom:12px}.result-banner.success{color:#bfffd1;background:rgba(68,219,112,.13);border:1px solid rgba(102,245,144,.26);text-shadow:0 0 18px rgba(84,255,139,.35)}.result-banner.fail{color:#ffe0e5;background:rgba(255,84,104,.11);border:1px solid rgba(255,92,112,.23)}
.hand-zone{margin:0 72px 12px;padding:13px;border-radius:22px;background:rgba(3,14,43,.87);border:1px solid rgba(255,255,255,.13)}.hand-cards{gap:10px}.hand-card{border:1px solid rgba(255,255,255,.11);border-radius:15px;padding:5px;background:rgba(255,255,255,.04);transition:.22s transform,.22s filter,.22s box-shadow}.hand-card img{border-radius:11px}.hand-card:hover{transform:translateY(-12px) rotate(-1deg) scale(1.04);box-shadow:0 20px 30px rgba(0,0,0,.28);filter:brightness(1.05)}
.seat-card{background:linear-gradient(180deg,rgba(9,31,83,.88),rgba(4,15,48,.92));box-shadow:0 14px 24px rgba(0,0,0,.18),inset 0 1px rgba(255,255,255,.06)}.seat-card.active{border-color:rgba(255,214,77,.68);box-shadow:0 0 26px rgba(255,208,73,.11),inset 0 0 20px rgba(255,208,73,.04)}.guardian-mini{transition:.2s transform}.guardian-mini:hover{transform:translateY(-3px)}.guardian-mini img{border-radius:8px}.guardian-mini.lead img{outline:2px solid #ffe36a;box-shadow:0 0 18px rgba(255,218,87,.42)}.guardian-name{display:block;font-size:7px;color:#d9e5ff;margin-top:3px;overflow:hidden;text-overflow:ellipsis}.lead-dot{animation:leadBlink 1.6s ease-in-out infinite}@keyframes leadBlink{50%{transform:scale(1.4);box-shadow:0 0 22px var(--gold)}}

/* Draft / collection polish */
.card-tile,.collection-card{background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.035));box-shadow:0 12px 24px rgba(0,0,0,.16)}.card-tile img,.collection-card img{filter:drop-shadow(0 8px 10px rgba(0,0,0,.22))}.card-tile:hover,.collection-card:hover{box-shadow:0 20px 32px rgba(0,0,0,.28)}
.win-screen{position:relative;overflow:hidden;background:radial-gradient(circle at 50% 30%,rgba(255,222,91,.16),transparent 30rem);border-radius:34px;padding:42px 22px}.win-screen::before{content:"✨  ★  ✨  ★  ✨";position:absolute;left:0;right:0;top:12px;text-align:center;font-size:24px;letter-spacing:18px;color:#ffe06b;text-shadow:0 0 18px currentColor}.win-founders img{filter:drop-shadow(0 14px 16px rgba(0,0,0,.30));transition:.2s transform}.win-founders img:hover{transform:translateY(-8px) scale(1.04)}

@keyframes leadFloat{0%,100%{transform:translateY(0) rotate(-.3deg)}50%{transform:translateY(-6px) rotate(.3deg)}}
@media (prefers-reduced-motion:reduce){.fan-card,.home-spark,.energy-ring,.mystery-card,.lead-card img,.lead-dot,.contrib-card,.deal-new,.challenge-fan.c2{animation:none!important;transition:none!important}}
@media(max-width:1320px){.game-layout.cinematic{grid-template-columns:190px minmax(0,1fr) 190px}.table-cards.cinematic-cards,.lead-meter-row,.action-panel,.hand-zone,.game-instruction-strip{margin-left:34px;margin-right:34px}.table-cards.cinematic-cards{padding-left:34px;padding-right:34px}.lead-meter-row{grid-template-columns:190px minmax(0,1fr)}}
@media(max-width:1040px){.home-stage{grid-template-columns:1fr}.home-visual{min-height:570px}.game-layout.cinematic{display:block}.left-rail,.right-rail{display:none}.mobile-seats{display:grid}.table-cards.cinematic-cards{grid-template-columns:1fr 76px 1fr}.lead-meter-row{grid-template-columns:1fr}.lead-showcase{min-height:100px}.lead-card{width:62px}}
@media(max-width:720px){.home-visual{min-height:390px}.founder-fan{height:360px}.home-mat{transform:rotateX(58deg) rotateZ(-2deg) translateY(80px)}.table-surface.alive-table{padding:12px;border-radius:22px}.table-cards.cinematic-cards{grid-template-columns:1fr;gap:10px;padding:8px 10px}.center-energy{display:none}.hero-zone{min-height:360px}.featured-card{width:min(240px,76%)}.lead-meter-row,.action-panel,.hand-zone,.game-instruction-strip{margin-left:8px;margin-right:8px}.cinematic-hud{align-items:flex-start;flex-direction:column}.mission-progress{justify-content:flex-start}.home-copy h1{font-size:clamp(44px,16vw,78px)}.fan-card{width:30%}}

/* ============================================================
   v0.4 PREMIUM DIGITAL TABLE
   Physical-board-first layout with 1–4 seats around the mat.
   ============================================================ */
.mobile-orientation-tip{display:none;max-width:720px;margin:0 auto 10px;text-align:center;padding:9px 12px;border-radius:999px;background:rgba(255,214,74,.1);border:1px solid rgba(255,214,74,.25);color:#fff3b0;font-size:12px;font-weight:900}
.premium-table-arena{width:min(1880px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(140px,180px) minmax(0,1fr) minmax(140px,180px);grid-template-rows:auto auto auto;grid-template-areas:". top ." "left board right" ". bottom .";gap:12px 14px;align-items:center}.top-area{grid-area:top}.left-area{grid-area:left}.right-area{grid-area:right}.bottom-area{grid-area:bottom}.premium-center-stage{grid-area:board;min-width:0}.seat-area{min-width:0;display:flex;justify-content:center;align-items:center}.seat-area:empty{display:none}
.premium-seat{position:relative;width:100%;padding:10px;border-radius:20px;background:linear-gradient(180deg,rgba(13,39,101,.95),rgba(4,15,48,.96));border:1px solid rgba(255,255,255,.15);box-shadow:0 14px 30px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.06);overflow:hidden;isolation:isolate}.premium-seat::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.04),transparent 40%);pointer-events:none}.premium-seat[data-seat="1"]{--seat:#6ee786}.premium-seat[data-seat="2"]{--seat:#ff62b4}.premium-seat[data-seat="3"]{--seat:#6ce5ff}.premium-seat[data-seat="4"]{--seat:#ffd85b}.premium-seat.active{border-color:color-mix(in srgb,var(--seat) 78%,white 22%);box-shadow:0 0 0 2px color-mix(in srgb,var(--seat) 34%,transparent),0 0 34px color-mix(in srgb,var(--seat) 24%,transparent),0 18px 34px rgba(0,0,0,.34)}.seat-glow{position:absolute;inset:-1px;border-radius:20px;opacity:0;background:radial-gradient(circle at 50% 0%,color-mix(in srgb,var(--seat) 25%,transparent),transparent 60%);transition:.25s opacity}.premium-seat.active .seat-glow{opacity:1;animation:seatBreath 2.2s ease-in-out infinite}.premium-seat-head{position:relative;z-index:1;display:flex;align-items:center;gap:6px;min-width:0}.premium-seat-head strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-chip,.turn-chip,.help-chip{flex:0 0 auto;border-radius:999px;padding:3px 6px;font-size:8px;font-weight:1000;letter-spacing:.04em}.player-chip{background:var(--seat);color:#07133c}.turn-chip{margin-left:auto;background:#ffe26a;color:#08133b;box-shadow:0 0 14px rgba(255,220,84,.35)}.help-chip{margin-left:auto;background:rgba(255,255,255,.08);color:#c8d8f5}.premium-seat-cards{position:relative;z-index:1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin-top:8px}.table-guardian-slot{position:relative;border:0;background:transparent;padding:0;min-width:0}.table-guardian-slot img{width:100%;aspect-ratio:2/3;object-fit:contain;border-radius:7px;filter:drop-shadow(0 5px 7px rgba(0,0,0,.28));transition:.18s transform,.18s filter}.table-guardian-slot:hover img{transform:translateY(-3px) scale(1.035);filter:drop-shadow(0 8px 10px rgba(0,0,0,.34)) brightness(1.04)}.table-guardian-slot.lead img{outline:2px solid #ffe26a;outline-offset:1px;box-shadow:0 0 16px rgba(255,218,74,.38)}.slot-name{display:block;margin-top:2px;font-size:7px;color:#dce8ff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lead-pin,.buff-pin{position:absolute;top:3px;right:2px;border-radius:999px;padding:2px 4px;font-size:6px;font-weight:1000}.lead-pin{background:#ffe26a;color:#07133b}.buff-pin{background:#60e8ff;color:#06123a}.premium-seat-foot{position:relative;z-index:1;display:flex;justify-content:space-between;gap:5px;align-items:center;margin-top:7px;font-size:8px;color:#aec2e7}.hand-count{font-weight:950;color:#eff5ff}.tiny-power-stack{display:inline-grid;place-items:center;width:17px;height:17px;margin-right:3px;border-radius:4px;background:#1466de;color:white}.seat-role{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.top-area .premium-seat,.bottom-area .premium-seat{max-width:680px}.top-area .premium-seat-cards,.bottom-area .premium-seat-cards{grid-template-columns:repeat(5,72px);justify-content:center}.top-area .table-guardian-slot,.bottom-area .table-guardian-slot{max-width:72px}.top-area .premium-seat-head,.bottom-area .premium-seat-head{justify-content:center}.top-area .turn-chip,.bottom-area .turn-chip{margin-left:0}.top-area .help-chip,.bottom-area .help-chip{margin-left:0}.top-area .premium-seat-foot,.bottom-area .premium-seat-foot{justify-content:center;gap:16px}
.premium-hud{margin-bottom:8px;padding:8px 10px;border:1px solid rgba(255,255,255,.11);background:linear-gradient(180deg,rgba(9,29,78,.88),rgba(4,16,49,.88));border-radius:16px;box-shadow:0 12px 28px rgba(0,0,0,.20)}
.premium-board{position:relative;aspect-ratio:4/3;min-height:680px;border-radius:28px;overflow:hidden;background:#061a55;border:2px solid rgba(255,214,74,.76);box-shadow:0 28px 60px rgba(0,0,0,.38),0 0 0 5px rgba(11,31,83,.82),0 0 0 6px rgba(255,214,74,.18),inset 0 1px rgba(255,255,255,.28);transform:translateZ(0)}.physical-mat{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(1.12) brightness(.60) contrast(1.03);opacity:.92}.board-sheen{position:absolute;inset:0;background:radial-gradient(circle at 50% 44%,transparent 0 18%,rgba(4,14,45,.10) 40%,rgba(2,9,30,.32) 100%),linear-gradient(120deg,rgba(255,255,255,.055),transparent 18% 72%,rgba(255,216,82,.05));pointer-events:none}.community-title{position:absolute;z-index:3;top:4%;left:50%;transform:translateX(-50%);padding:6px 14px;border-radius:999px;background:rgba(5,17,54,.72);border:1px solid rgba(255,214,74,.34);font-size:clamp(8px,1vw,12px);font-weight:1000;letter-spacing:.12em;color:#ffe784;white-space:nowrap;backdrop-filter:blur(6px)}.community-title span{color:#ffd54a;margin:0 3px}
.board-deck{position:absolute;z-index:5;width:8.8%;min-width:64px;text-align:center}.board-deck .deck-depth{position:relative}.board-deck .deck-depth::before,.board-deck .deck-depth::after{content:"";position:absolute;inset:0;border-radius:9px;background:#e7efff;border:1px solid rgba(255,255,255,.24);z-index:-1}.board-deck .deck-depth::before{transform:translate(4px,5px);opacity:.52}.board-deck .deck-depth::after{transform:translate(2px,3px);opacity:.72}.board-deck img{width:100%;aspect-ratio:2/3;object-fit:contain;border-radius:9px;filter:drop-shadow(0 8px 10px rgba(0,0,0,.34))}.board-deck>span{display:block;margin-top:4px;font-size:clamp(7px,.78vw,10px);font-weight:1000;color:#fff9d6;text-shadow:0 1px 3px #000}.board-deck>small{display:block;font-size:clamp(6px,.65vw,8px);color:#bfd1ef}.power-deck-slot{left:6%;bottom:6%}.challenge-deck-slot{left:30%;top:41%}.big-deck-slot{left:41%;top:41%}.mission-deck-slot{right:6%;bottom:6%}
.board-zone{position:absolute;z-index:7;border-radius:16px;border:1px solid rgba(255,255,255,.16);background:rgba(5,17,55,.36);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center}.board-zone-label{position:absolute;left:50%;top:-10px;transform:translateX(-50%);padding:4px 8px;border-radius:999px;background:rgba(7,21,63,.90);border:1px solid rgba(255,255,255,.15);font-size:clamp(6px,.68vw,9px);font-weight:1000;letter-spacing:.08em;color:#dbe8ff;white-space:nowrap}.mission-live-zone{width:17%;height:46%;left:54%;top:14%}.challenge-live-zone{width:17%;height:46%;right:10%;top:14%}.lead-live-zone{width:13%;height:35%;left:41%;bottom:5%}.power-live-zone{width:22%;height:28%;left:56%;bottom:5%}.board-live-card{display:block;width:86%;max-height:94%;aspect-ratio:2/3;object-fit:contain;border-radius:10px;filter:drop-shadow(0 10px 14px rgba(0,0,0,.38));transition:.2s transform,.2s filter}.card-open.board-live-card{border:0;background:transparent;padding:0}.card-open.board-live-card:hover .board-live-card,.board-live-card:hover{transform:translateY(-5px) scale(1.025);filter:drop-shadow(0 16px 18px rgba(0,0,0,.42)) brightness(1.04)}.mission-live-zone .card-open{width:86%;border:0;background:transparent;padding:0}.mission-live-zone .card-open img{width:100%;aspect-ratio:2/3;object-fit:contain;border-radius:10px;filter:drop-shadow(0 10px 14px rgba(0,0,0,.38))}.board-challenge-stack{position:relative;width:100%;height:100%;display:grid;place-items:center}.board-challenge-card{position:absolute;width:78%;border:0;background:transparent;padding:0}.board-challenge-card img{width:100%;aspect-ratio:2/3;object-fit:contain;border-radius:10px;filter:drop-shadow(0 10px 14px rgba(0,0,0,.40))}.board-challenge-card.bc1{transform:rotate(-4deg) translateX(-7%)}.board-challenge-card.bc2{transform:rotate(5deg) translateX(8%);animation:challengeSlam .48s cubic-bezier(.2,.9,.2,1.2) both}.board-lead-card{position:relative;width:80%;border:0;background:transparent;padding:0}.board-lead-card img{width:100%;aspect-ratio:2/3;object-fit:contain;border-radius:9px;filter:drop-shadow(0 9px 12px rgba(0,0,0,.38));animation:leadFloat 2.8s ease-in-out infinite}.lead-ribbon{position:absolute;left:50%;bottom:-5px;transform:translateX(-50%);padding:3px 6px;border-radius:999px;background:linear-gradient(180deg,#ffe66f,#ffc129);color:#07133c;font-size:clamp(6px,.62vw,8px);font-weight:1000;white-space:nowrap}.board-power-fan{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.power-fan-card{position:absolute;width:31%;border:0;background:transparent;padding:0;transform-origin:bottom center}.power-fan-card img{width:100%;aspect-ratio:2/3;object-fit:contain;border-radius:7px;filter:drop-shadow(0 7px 9px rgba(0,0,0,.34))}.power-fan-card.pf1{transform:rotate(-8deg) translateX(-54%)}.power-fan-card.pf2{transform:rotate(-2deg) translateX(-18%)}.power-fan-card.pf3{transform:rotate(4deg) translateX(22%)}.power-fan-card.pf4{transform:rotate(9deg) translateX(58%)}.power-fan-card:nth-child(n+5){display:none}.empty-slot{display:grid;place-items:center;width:74%;height:72%;border:2px dashed rgba(255,255,255,.15);border-radius:12px;color:#a8bbdf;text-align:center;font-size:clamp(7px,.78vw,10px);font-weight:900}.lead-empty-slot{height:66%;gap:1px}.lead-empty-slot span{font-size:clamp(22px,3vw,40px);color:#ffe36b}.lead-empty-slot small{font-size:clamp(6px,.65vw,8px)}.power-empty{height:55%}
.turn-marker-premium{position:absolute;z-index:8;right:29%;top:46%;width:7.2%;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 34% 28%,#fff5ad,#ffd242 45%,#e88a16 72%,#74470c);border:3px solid #fff0a6;box-shadow:0 0 20px rgba(255,207,53,.44),0 8px 12px rgba(0,0,0,.30);color:#fff8c5;text-shadow:0 2px 3px rgba(0,0,0,.35);animation:energyPulse 2.4s ease-in-out infinite}.turn-marker-premium>span{font-size:clamp(15px,2.4vw,34px);line-height:.7}.turn-marker-premium>small{position:absolute;top:100%;left:50%;transform:translate(-50%,5px);width:130px;text-align:center;font-size:clamp(6px,.7vw,9px);font-weight:1000;color:#fff5c3;text-shadow:0 1px 3px #000}
.board-meter-console{position:absolute;z-index:9;left:4%;top:9%;width:33%;padding:9px 10px;border-radius:14px;background:linear-gradient(180deg,rgba(5,20,62,.88),rgba(2,11,37,.82));border:1px solid rgba(255,255,255,.15);box-shadow:0 10px 22px rgba(0,0,0,.25);backdrop-filter:blur(5px)}.board-meter-console .meter-title-row{margin-bottom:5px}.board-meter-console .meter-title-row>span:first-child{font-size:8px}.board-meter-console .team-total{font-size:7px}.board-meter-console .meters{display:grid;grid-template-columns:1fr;gap:4px}.board-meter-console .meter{padding:5px 6px;border-radius:8px}.board-meter-console .meter-head{font-size:7px;margin-bottom:3px}.board-meter-console .meter-track{height:6px}.board-meter-console .contribution-row{min-height:20px;margin-top:5px}.board-meter-console .contrib-card{width:22px}.board-meter-console .ability-token{font-size:6px;padding:3px 5px}
.premium-instruction{margin:10px 0 8px}.premium-center-stage>.action-panel,.premium-center-stage>.hand-zone{margin-left:0;margin-right:0}.premium-center-stage>.action-panel{box-shadow:0 16px 34px rgba(0,0,0,.22)}.premium-center-stage>.hand-zone{background:linear-gradient(180deg,rgba(5,20,61,.94),rgba(2,11,37,.96));box-shadow:0 16px 34px rgba(0,0,0,.24)}.premium-center-stage .hand-card img{aspect-ratio:2/3;object-fit:contain}
/* premium card presentation: the art itself is now uniformly trimmed */
.card-tile img,.collection-card img,.viewer-card,.fan-card img,.win-founders img,.guardian-mini img,.hand-card img{object-fit:contain;background:transparent}.collection-card,.card-tile{overflow:hidden}.viewer-card{filter:drop-shadow(0 18px 24px rgba(0,0,0,.42))}.card-tile img,.collection-card img{border-radius:13px}
@keyframes seatBreath{0%,100%{opacity:.55}50%{opacity:1}}
@media(max-width:1300px){.premium-table-arena{grid-template-columns:150px minmax(0,1fr) 150px;gap:10px}.premium-board{min-height:500px}.premium-seat{padding:8px}.slot-name{display:none}.board-deck{min-width:54px}}
@media(max-width:1040px){.premium-table-arena{grid-template-columns:1fr 1fr;grid-template-rows:auto auto auto;grid-template-areas:"top top" "board board" "left right" "bottom bottom"}.seat-area{padding:0}.top-area .premium-seat,.bottom-area .premium-seat{max-width:520px}.left-area .premium-seat,.right-area .premium-seat{max-width:100%}.left-area .premium-seat-cards,.right-area .premium-seat-cards{grid-template-columns:repeat(5,52px);justify-content:center}.left-area .table-guardian-slot,.right-area .table-guardian-slot{max-width:52px}.premium-board{min-height:0}.board-meter-console{width:36%}}
@media(max-width:720px){.mobile-orientation-tip{display:block}.premium-table-arena{display:flex;flex-direction:column;gap:8px}.premium-center-stage{width:100%;order:1}.top-area{order:0}.left-area,.right-area,.bottom-area{order:2;width:100%}.left-area .premium-seat,.right-area .premium-seat,.bottom-area .premium-seat,.top-area .premium-seat{max-width:none}.premium-seat-cards{grid-template-columns:repeat(5,48px)!important;justify-content:center}.table-guardian-slot{max-width:48px!important}.premium-seat{padding:7px;border-radius:14px}.premium-seat-head{justify-content:center}.premium-seat-foot{justify-content:center;gap:12px}.premium-board{border-radius:18px;box-shadow:0 18px 34px rgba(0,0,0,.34),0 0 0 3px rgba(11,31,83,.82),0 0 0 4px rgba(255,214,74,.15)}.community-title{top:2%;padding:3px 8px}.board-deck{min-width:0;width:9.5%}.board-deck>span{font-size:5px}.board-deck>small{display:none}.board-zone-label{font-size:5px;top:-7px;padding:2px 4px}.board-meter-console{left:2%;top:6%;width:36%;padding:5px}.board-meter-console .team-total{display:none}.board-meter-console .meter-title-row{margin:0 0 3px}.board-meter-console .meter-title-row>span:first-child{font-size:6px}.board-meter-console .meter{padding:3px 4px}.board-meter-console .meter-head{font-size:5px}.board-meter-console .meter-track{height:4px}.board-meter-console .contribution-row{display:none}.turn-marker-premium{border-width:1px}.turn-marker-premium>small{display:none}.premium-hud{align-items:flex-start;flex-direction:column}.premium-instruction{border-radius:14px;font-size:10px}.premium-center-stage>.action-panel{padding:13px}.premium-center-stage>.hand-zone{padding:10px}}

/* ===== Premium v0.5: snapped table, points, thinking-first UI ===== */
.premium-board{aspect-ratio:4/3!important;min-height:0!important;overflow:hidden}
.physical-mat{object-fit:fill!important;filter:saturate(1.13) brightness(.74) contrast(1.04)!important}
.premium-table-arena{align-items:center}
.premium-seat{background:linear-gradient(180deg,rgba(12,33,87,.96),rgba(4,16,52,.97));box-shadow:0 16px 32px rgba(0,0,0,.25),inset 0 0 0 1px rgba(255,255,255,.045)}
.premium-seat-cards{gap:7px}
.table-guardian-slot{background:linear-gradient(180deg,rgba(1,8,31,.72),rgba(13,37,91,.72));padding:5px;border:1px solid rgba(255,255,255,.16);box-shadow:inset 0 5px 14px rgba(0,0,0,.42),0 1px rgba(255,255,255,.08);border-radius:11px;overflow:visible}
.table-guardian-slot img{border-radius:8px;filter:drop-shadow(0 5px 7px rgba(0,0,0,.36))}
.table-guardian-slot.lead{border-color:#ffe474;box-shadow:0 0 0 2px rgba(255,218,74,.23),inset 0 5px 14px rgba(0,0,0,.38)}

.board-deck{appearance:none;border:1px solid rgba(255,255,255,.16)!important;background:rgba(4,16,52,.62)!important;padding:5px!important;border-radius:11px!important;box-shadow:inset 0 5px 14px rgba(0,0,0,.44),0 5px 12px rgba(0,0,0,.22);color:white}
.board-deck:hover{border-color:rgba(255,224,107,.65)!important;transform:translateY(-2px)}
.board-deck .deck-depth{width:100%}
.power-deck-slot{left:3.2%!important;bottom:8.2%!important;width:8.3%!important}
.challenge-deck-slot{left:27.1%!important;top:45.7%!important;width:7.4%!important}
.big-deck-slot{left:39.0%!important;top:45.7%!important;width:7.4%!important}
.mission-deck-slot{right:18.7%!important;bottom:8.2%!important;width:8.3%!important}

.board-zone{background:linear-gradient(180deg,rgba(4,15,48,.78),rgba(2,10,32,.72))!important;border:2px solid rgba(255,255,255,.16)!important;box-shadow:inset 0 10px 18px rgba(0,0,0,.46),inset 0 -1px rgba(255,255,255,.08),0 4px 12px rgba(0,0,0,.18)!important;backdrop-filter:blur(2px)!important;overflow:visible}
.board-zone::after{content:"";position:absolute;inset:5px;border:1px dashed rgba(255,255,255,.12);border-radius:10px;pointer-events:none}
.board-zone-label{top:auto!important;bottom:-17px!important;background:rgba(3,12,39,.96)!important;border-color:rgba(255,216,75,.26)!important;color:#fff4bb!important;box-shadow:0 4px 8px rgba(0,0,0,.22)}
.lead-live-zone{left:40.0%!important;bottom:7.6%!important;width:10.8%!important;height:26.5%!important}
.power-live-zone{left:21.2%!important;bottom:7.6%!important;width:18.8%!important;height:26.5%!important}
.challenge-live-zone{left:52.8%!important;right:auto!important;top:auto!important;bottom:7.6%!important;width:9.8%!important;height:26.5%!important}
.mission-live-zone{left:63.4%!important;top:auto!important;bottom:7.6%!important;width:9.8%!important;height:26.5%!important}
.completed-live-zone{right:3.3%;bottom:7.6%;width:14.8%;height:26.5%}
.mission-live-zone .card-open,.board-lead-card{width:88%!important;max-height:92%}
.mission-live-zone .card-open img,.board-lead-card img,.board-challenge-card img,.power-fan-card img,.completed-mini img{object-fit:contain!important;aspect-ratio:auto!important;max-height:100%;border-radius:8px}
.board-challenge-card{width:84%!important}
.power-fan-card{width:27%!important}
.power-fan-card.pf1{transform:rotate(-7deg) translateX(-72%)}
.power-fan-card.pf2{transform:rotate(-2deg) translateX(-25%)}
.power-fan-card.pf3{transform:rotate(3deg) translateX(24%)}
.power-fan-card.pf4{transform:rotate(8deg) translateX(70%)}
.completed-card-well{position:relative;width:100%;height:100%;display:grid;place-items:center}
.completed-mini{position:absolute;width:43%;border:0;background:transparent;padding:0;z-index:2}
.completed-mini.cm1{left:5%;transform:rotate(-2deg)}
.completed-mini.cm2{right:5%;transform:rotate(2deg)}
.completed-empty{height:58%;width:84%}
.team-area-chip{position:absolute;z-index:8;left:49.8%;bottom:31.5%;transform:translateX(-50%);padding:4px 10px;border-radius:999px;background:rgba(4,16,50,.86);border:1px solid rgba(255,217,78,.36);font-size:clamp(6px,.72vw,9px);font-weight:1000;letter-spacing:.10em;color:#ffe98c;white-space:nowrap}

.turn-marker-premium{left:63.8%!important;top:47.9%!important;bottom:auto!important;right:auto!important;transform:none!important;width:7%!important;aspect-ratio:1!important}
.turn-marker-premium>small{max-width:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.premium-table-console{margin:12px 0 8px;padding:13px 16px;border-radius:18px;background:linear-gradient(180deg,rgba(6,23,68,.96),rgba(2,12,39,.97));border:1px solid rgba(255,255,255,.16);box-shadow:0 14px 28px rgba(0,0,0,.22)}
.premium-table-console .meter-title-row{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:8px}
.premium-table-console .meter-title-row>span:first-child{font-weight:1000;letter-spacing:.12em;color:#ffe477}
.premium-table-console .meters{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.premium-table-console .meter{padding:9px 10px}
.premium-table-console .contribution-row{margin-top:8px;min-height:40px;display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.premium-table-console .contrib-card{width:34px;border-radius:5px}

.point-score{display:grid!important;grid-template-columns:auto 1fr;column-gap:9px;align-items:center}
.point-score .mission-count{grid-row:1 / span 2;font-weight:1000;white-space:nowrap}
.point-score .mission-count strong{color:#ffe16a}
.point-score small{font-size:9px;color:#b9c8e8}
.progress-star.big-point{color:#c980ff;border-color:rgba(201,128,255,.4)}
.progress-star.big-point.done{color:#ffe36c}

.think-prompt{margin:12px 0;padding:10px 12px;border-radius:13px;background:rgba(87,214,255,.09);border:1px solid rgba(87,214,255,.23);color:#dcf9ff;font-weight:850}
.lead-name-choices .primary-btn,.lead-name-choices .secondary-btn{min-width:118px}
.smart-solve-badge{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin:13px 0;padding:12px 14px;border-radius:15px;background:linear-gradient(90deg,rgba(87,220,255,.12),rgba(255,215,77,.10));border:1px solid rgba(130,226,255,.28)}
.smart-solve-badge strong{color:#ffea8c;letter-spacing:.04em}
.smart-solve-badge span{color:#e8f3ff;font-weight:700}

.card-open img,.hand-card img,.collection-card img,.viewer-card,.founder-thumb img,.hero-card,.guide-card>img{object-fit:contain}
.card-open,.hand-card,.collection-card{overflow:visible}

@media(max-width:1040px){
  .premium-board{aspect-ratio:4/3!important}
  .premium-table-console .meters{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:720px){
  .premium-table-console{padding:9px}
  .premium-table-console .meters{grid-template-columns:1fr;gap:5px}
  .premium-table-console .contribution-row{display:none}
  .team-area-chip{display:none}
  .board-zone-label{font-size:4.5px!important;bottom:-10px!important;padding:2px 4px!important}
  .completed-live-zone{right:3.3%}
}
.board-discard{position:absolute;z-index:5;width:8.3%;appearance:none;border:1px solid rgba(255,255,255,.14);background:rgba(5,16,49,.64);padding:5px;border-radius:11px;color:white;text-align:center;box-shadow:inset 0 6px 15px rgba(0,0,0,.46),0 4px 10px rgba(0,0,0,.18)}
.board-discard:hover{border-color:rgba(255,224,107,.6);transform:translateY(-2px)}
.discard-well{aspect-ratio:2/3;border:1px dashed rgba(255,255,255,.17);border-radius:8px;display:grid;place-items:center;background:rgba(0,0,0,.18);overflow:hidden}
.discard-well img{width:100%;height:100%;object-fit:contain;opacity:.82}
.discard-icon{font-size:clamp(14px,2vw,25px);color:#94a9d1}
.board-discard>span{display:block;margin-top:4px;font-size:clamp(6px,.72vw,9px);font-weight:1000;color:#e9f0ff;text-shadow:0 1px 3px #000}
.board-discard>small{display:block;font-size:clamp(5px,.62vw,8px);color:#afc2e8}
.power-discard-slot{left:12.3%;bottom:8.2%}
.challenge-discard-slot{left:48.1%;top:45.7%;width:7.4%}
@media(max-width:720px){.board-discard>span{font-size:4.5px}.board-discard>small{display:none}}

/* ===== Premium v0.6: clear turn loop + mission-road progression ===== */
.mission-road{display:grid!important;grid-template-columns:auto auto auto;grid-template-areas:"count steps big" "note note note";column-gap:9px;row-gap:5px;align-items:center;justify-content:end}
.mission-road .mission-count{grid-area:count;font-weight:1000;white-space:nowrap}.mission-road .mission-count strong{color:#ffe16a}
.mission-steps{grid-area:steps;display:flex;gap:5px;align-items:center}.mission-step{width:24px;height:24px;border-radius:8px;display:grid;place-items:center;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.13);color:#4f6796;font-size:13px;font-weight:1000;box-shadow:inset 0 4px 8px rgba(0,0,0,.22)}.mission-step.done{background:linear-gradient(180deg,#ffe978,#ffc936);color:#092050;border-color:#fff0a2;box-shadow:0 0 14px rgba(255,214,74,.38)}
.big-step{grid-area:big;padding:6px 9px;border-radius:10px;font-size:10px;font-weight:1000;letter-spacing:.06em;border:1px solid rgba(255,255,255,.15);background:rgba(88,49,132,.26);color:#9faed0;white-space:nowrap}.big-step.ready{color:#fff4b0;border-color:rgba(255,214,74,.55);background:rgba(255,214,74,.13);box-shadow:0 0 18px rgba(255,214,74,.17)}.big-step.active{color:#fff;background:linear-gradient(180deg,rgba(255,70,174,.3),rgba(129,65,211,.30));border-color:rgba(255,184,234,.58);box-shadow:0 0 22px rgba(255,80,189,.24)}
.mission-road small{grid-area:note;text-align:right;font-size:9px;color:#b9c8e8}.mission-road .recovery-flag{color:#ffd27c;font-weight:900}

.premium-seat.mission-leader{border-color:rgba(255,218,83,.58);box-shadow:0 0 0 2px rgba(255,218,83,.12),0 0 28px rgba(255,208,73,.10),0 18px 34px rgba(0,0,0,.34)}
.premium-seat.action-now{border-color:#64e8ff!important;box-shadow:0 0 0 3px rgba(100,232,255,.16),0 0 38px rgba(70,216,255,.28),0 18px 34px rgba(0,0,0,.36)!important;animation:actionSeatPulse 1.25s ease-in-out infinite}
.premium-seat.action-now .seat-glow{opacity:1;background:radial-gradient(circle at 50% 0%,rgba(85,229,255,.28),transparent 64%)}
.action-turn-chip{padding:4px 8px;border-radius:999px;background:linear-gradient(180deg,#8ff2ff,#43cce8);color:#04203b;font-size:9px;font-weight:1000;letter-spacing:.06em;box-shadow:0 0 14px rgba(83,225,255,.35)}
@keyframes actionSeatPulse{50%{transform:translateY(-2px);box-shadow:0 0 0 4px rgba(100,232,255,.20),0 0 46px rgba(70,216,255,.34),0 18px 34px rgba(0,0,0,.36)}}
.action-turn-panel{border-color:rgba(95,227,255,.32)!important;box-shadow:inset 4px 0 0 rgba(95,227,255,.72)}.action-turn-kicker{font-size:11px;font-weight:1000;letter-spacing:.12em;color:#7eeeff;margin-bottom:7px}.turn-pass-panel{border-color:rgba(255,218,83,.32)!important;box-shadow:inset 4px 0 0 rgba(255,218,83,.72)}

/* Make the physical destination wells read as real card holders. */
.board-zone{outline:1px solid rgba(255,221,111,.08);outline-offset:-6px}.board-zone:has(.card-open),.board-zone:has(.board-challenge-card){border-color:rgba(255,224,116,.30)!important}.board-zone .card-open{z-index:3}.board-zone .empty-slot{background:repeating-linear-gradient(135deg,rgba(255,255,255,.018) 0 7px,rgba(255,255,255,.035) 7px 8px)}
.board-live-card,.board-lead-card img,.power-fan-card img,.completed-mini img{box-shadow:0 1px 0 rgba(255,255,255,.14) inset}

.guardian-draft-name{font-weight:1000;color:#eef4ff;font-size:11px}

@media(max-width:900px){.mission-road{grid-template-columns:auto 1fr;grid-template-areas:"count big" "steps steps" "note note";justify-content:stretch}.mission-road small{text-align:left}.mission-steps{flex-wrap:wrap}.mission-step{width:22px;height:22px}.big-step{justify-self:end}}
@media(max-width:720px){.premium-seat.action-now{animation:none}.mission-road{width:100%}.action-turn-kicker{font-size:10px}}
.completed-count-chip{position:absolute;right:6px;top:6px;z-index:5;min-width:24px;height:24px;padding:0 6px;border-radius:999px;display:grid;place-items:center;background:linear-gradient(180deg,#ffe66d,#ffc42d);color:#092050;border:1px solid #fff0a0;font-size:10px;font-weight:1000;box-shadow:0 4px 9px rgba(0,0,0,.28)}
/* Premium v0.6 physical snap motion */
.mission-live.deal-new img,.mission-live.deal-new{animation:missionSnapIn .52s cubic-bezier(.18,.88,.24,1.12) both}
.board-challenge-card:last-child{animation:challengeDock .48s cubic-bezier(.18,.88,.24,1.12) both}
.board-lead-card{animation:leadDock .42s cubic-bezier(.18,.88,.24,1.10) both}
.power-fan-card:last-child{animation:powerDock .42s cubic-bezier(.18,.88,.24,1.10) both}
.completed-mini:last-child{animation:completedDock .55s cubic-bezier(.16,.9,.22,1.08) both}
@keyframes missionSnapIn{0%{opacity:0;transform:translate(60%,-80%) rotate(10deg) scale(.78)}75%{opacity:1;transform:translate(0,2%) rotate(-1deg) scale(1.02)}100%{opacity:1;transform:none}}
@keyframes challengeDock{0%{opacity:0;transform:translate(-90%,-50%) rotate(-16deg) scale(.78)}72%{opacity:1;transform:translate(3%,2%) rotate(3deg) scale(1.03)}100%{opacity:1}}
@keyframes leadDock{0%{opacity:.25;transform:translateY(24%) scale(.84)}100%{opacity:1;transform:none}}
@keyframes powerDock{0%{opacity:0;translate:0 35%;scale:.78}100%{opacity:1;translate:0 0;scale:1}}
@keyframes completedDock{0%{opacity:0;translate:-60% -20%;scale:.72;rotate:-8deg}100%{opacity:1;translate:0 0;scale:1;rotate:0deg}}
body.reduce-motion .mission-live.deal-new img,body.reduce-motion .mission-live.deal-new,body.reduce-motion .board-challenge-card:last-child,body.reduce-motion .board-lead-card,body.reduce-motion .power-fan-card:last-child,body.reduce-motion .completed-mini:last-child{animation:none!important}
.mission-loop{display:grid;grid-template-columns:repeat(13,auto);align-items:center;justify-content:center;gap:6px;margin:0 0 9px;padding:7px 9px;border-radius:14px;background:rgba(4,15,48,.78);border:1px solid rgba(255,255,255,.11);overflow:hidden}.mission-loop>i{font-style:normal;color:#55709d;font-weight:1000}.loop-step{display:flex;align-items:center;gap:5px;padding:5px 7px;border-radius:10px;color:#8195ba;font-size:8px;font-weight:1000;letter-spacing:.04em;white-space:nowrap}.loop-step span{width:17px;height:17px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.10)}.loop-step.done{color:#a7d9b6}.loop-step.done span{background:rgba(77,215,124,.15);border-color:rgba(77,215,124,.30);color:#81eda5}.loop-step.current{color:#fff6c2;background:rgba(255,213,74,.10);box-shadow:inset 0 0 0 1px rgba(255,213,74,.26)}.loop-step.current span{background:linear-gradient(180deg,#ffe977,#ffc72e);color:#092050;border-color:#fff1a3;box-shadow:0 0 12px rgba(255,213,74,.25)}
@media(max-width:900px){.mission-loop{display:flex;justify-content:flex-start;overflow-x:auto}.mission-loop>i{display:none}.loop-step{flex:0 0 auto}}

/* ===== First Edition v1.0 Team Stack gameplay ===== */
.rules-preview{margin-top:18px;padding:13px 15px;border-radius:15px;background:rgba(90,214,255,.08);border:1px solid rgba(90,214,255,.22);color:#dceaff;line-height:1.45}
.team-live-zone{left:38.5%!important;width:18%!important;height:25%!important}
.team-guardian-fan{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center}
.team-guardian-card{position:absolute;width:36%;border:0;background:transparent;padding:0;transform-origin:bottom center;color:white;font-size:clamp(5px,.52vw,7px);font-weight:1000;text-align:center}
.team-guardian-card img{width:100%;display:block;object-fit:contain;filter:drop-shadow(0 7px 10px rgba(0,0,0,.45));border-radius:7px}
.team-guardian-card span{display:block;margin-top:2px;text-shadow:0 2px 4px #000}
.team-guardian-card.tg1{transform:rotate(-9deg) translateX(-84%)}
.team-guardian-card.tg2{transform:rotate(-3deg) translateX(-28%)}
.team-guardian-card.tg3{transform:rotate(3deg) translateX(28%)}
.team-guardian-card.tg4{transform:rotate(9deg) translateX(84%)}
.power-live-zone{left:20.5%!important;width:17.5%!important}
.table-guardian-slot.pending-team{border-color:#67e8ff!important;box-shadow:0 0 0 2px rgba(95,225,255,.25),0 0 22px rgba(95,225,255,.28),inset 0 5px 14px rgba(0,0,0,.38)}
.target-preview{margin-top:12px}.target-preview .resolution-stat{background:rgba(80,198,255,.08);border:1px solid rgba(80,198,255,.18)}
.digital-balance-callout{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 12px;margin-bottom:12px;border-radius:14px;background:linear-gradient(90deg,rgba(255,214,74,.12),rgba(81,211,255,.09));border:1px solid rgba(255,221,104,.28);font-weight:1000;color:#fff0a8}.digital-balance-callout small{color:#cfe6ff;font-weight:800}.digital-authority{padding:10px 12px;border-radius:12px;background:rgba(93,224,255,.08);border:1px solid rgba(93,224,255,.18)}
.ability-token{border:0;cursor:pointer}
@media(max-width:720px){.team-live-zone{left:37%!important;width:20%!important}.team-guardian-card{width:38%}.power-live-zone{left:18%!important;width:18.5%!important}}

/* FINAL PRODUCTION v1.0 — BOARD IS THE SCREEN */
.premium-table-arena{display:block!important;width:min(1540px,100%)!important;margin:0 auto!important}
.premium-center-stage{width:100%!important}
.premium-board{aspect-ratio:16/10!important;min-height:0!important;overflow:hidden!important;border-radius:30px!important}
.physical-mat{filter:saturate(1.14) brightness(.72) contrast(1.04)!important}
.on-board-seats{position:absolute;inset:0;z-index:14;pointer-events:none}
.board-player-seat{position:absolute;pointer-events:auto;background:linear-gradient(180deg,rgba(4,18,58,.94),rgba(3,12,40,.91));border:1px solid rgba(111,228,255,.42);border-radius:14px;padding:5px 6px;box-shadow:0 8px 20px rgba(0,0,0,.38),inset 0 1px rgba(255,255,255,.08);backdrop-filter:blur(4px)}
.board-player-seat .premium-seat-head{height:20px;gap:4px;justify-content:center}.board-player-seat .premium-seat-head strong{font-size:9px;max-width:85px}.board-player-seat .player-chip,.board-player-seat .turn-chip,.board-player-seat .help-chip,.board-player-seat .action-turn-chip{font-size:6px;padding:2px 4px}.board-player-seat .hand-count{font-size:7px;color:#fff;margin-left:2px}.board-player-seat .premium-seat-cards{display:grid;grid-template-columns:repeat(5,1fr)!important;gap:3px;margin-top:3px}.board-player-seat .table-guardian-slot{max-width:none!important}.board-player-seat .table-guardian-slot img{border-radius:4px;filter:drop-shadow(0 2px 3px rgba(0,0,0,.42))}.board-player-seat .lead-pin{font-size:4px;padding:1px 2px}
.board-seat-top{top:1.5%;left:28%;width:44%}.board-seat-bottom{bottom:1.5%;left:28%;width:44%}.board-seat-left{left:1.2%;top:29%;width:18%}.board-seat-right{right:1.2%;top:29%;width:18%}
.board-seat-left .premium-seat-cards,.board-seat-right .premium-seat-cards{grid-template-columns:repeat(5,1fr)!important}
.board-player-seat.mission-leader{border-color:#ffe16a;box-shadow:0 0 0 2px rgba(255,225,106,.18),0 0 24px rgba(255,211,63,.22),0 8px 20px rgba(0,0,0,.4)}
.board-player-seat.action-now{border-color:#62e9ff!important;box-shadow:0 0 0 2px rgba(98,233,255,.18),0 0 30px rgba(80,220,255,.30),0 8px 20px rgba(0,0,0,.4)!important}
/* create breathing room inside the mat for the on-board player banks */
.community-title{top:18%!important}.board-meter-console{top:21%!important}.power-deck-slot,.power-discard-slot,.challenge-deck-slot,.challenge-discard-slot,.big-deck-slot,.mission-deck-slot{transform:scale(.86);transform-origin:center}.power-live-zone,.lead-live-zone,.challenge-live-zone,.mission-live-zone,.completed-live-zone{bottom:12.5%!important}
@media(max-width:900px){.premium-board{aspect-ratio:4/3!important}.board-seat-top,.board-seat-bottom{left:23%;width:54%}.board-seat-left,.board-seat-right{width:20%;top:31%}.board-player-seat{padding:3px}.board-player-seat .premium-seat-head{height:15px}.board-player-seat .premium-seat-head strong{font-size:7px}.board-player-seat .hand-count{font-size:6px}.community-title{top:17%!important}.power-live-zone,.lead-live-zone,.challenge-live-zone,.mission-live-zone,.completed-live-zone{bottom:13%!important}}
@media(max-width:620px){.premium-board{aspect-ratio:4/3!important}.board-player-seat{border-radius:8px;padding:2px}.board-player-seat .premium-seat-head strong{display:none}.board-player-seat .help-chip{display:none}.board-seat-top,.board-seat-bottom{left:20%;width:60%}.board-seat-left,.board-seat-right{width:22%;top:32%}.board-player-seat .premium-seat-cards{gap:1px}.community-title{display:none}.premium-table-console{margin-top:8px}.on-board-seats .table-guardian-slot img{border-radius:2px}}

/* ===== PLAYTEST RC2: premium motion + feedback layer ===== */
.team-guardian-card:last-child{animation:guardianDock .46s cubic-bezier(.18,.9,.24,1.14) both}
.table-guardian-slot.pending-team img{outline:3px solid #6ff1ff;outline-offset:2px;box-shadow:0 0 0 3px rgba(111,241,255,.15),0 0 26px rgba(74,224,255,.65);animation:pendingGuardianPulse .9s ease-in-out infinite alternate}
.hand-card{transition:transform .18s ease,filter .18s ease,box-shadow .18s ease}
.hand-card:hover,.hand-card:focus-visible{transform:translateY(-10px) rotate(-1deg) scale(1.045);filter:brightness(1.08);box-shadow:0 20px 30px rgba(0,0,0,.3)}
.action-panel{animation:panelRise .34s cubic-bezier(.2,.85,.25,1) both}
.loop-step.current{animation:loopGlow 1.15s ease-in-out infinite alternate}
.result-banner.success{animation:resultPop .55s cubic-bezier(.16,.9,.22,1.15) both}
.result-banner.fail{animation:resultShake .45s ease both}
.game-fx{position:fixed;inset:0;z-index:175;pointer-events:none;display:grid;place-items:center;overflow:hidden}
.game-fx-ring{width:22vmin;height:22vmin;border-radius:50%;border:8px solid rgba(255,255,255,.88);box-shadow:0 0 45px currentColor,inset 0 0 45px currentColor;animation:fxRing .75s ease-out both}
.game-fx-copy{position:absolute;padding:10px 18px;border-radius:999px;background:rgba(3,13,44,.9);border:2px solid currentColor;font-size:clamp(18px,4vw,42px);font-weight:1000;letter-spacing:.04em;text-shadow:0 3px 0 rgba(0,0,0,.4);animation:fxCopy .75s cubic-bezier(.16,.9,.22,1.12) both}
.game-fx-mission{color:#ffe161}.game-fx-guardian{color:#72efff}.game-fx-challenge{color:#ff686e}.game-fx-think{color:#68e6ff}.game-fx-act{color:#69aaff}.game-fx-care{color:#ff70b2}.game-fx-success{color:#83f3a8}
.fx-challenge-hit .premium-board{animation:boardChallengeHit .42s ease both}.fx-power-hit .premium-board{animation:boardPowerHit .38s ease both}.fx-success-hit .premium-board{animation:boardSuccessHit .5s ease both}
@keyframes guardianDock{0%{opacity:0;transform:translateY(55%) scale(.64) rotate(13deg)}75%{opacity:1;transform:translateY(-3%) scale(1.06) rotate(-2deg)}100%{opacity:1}}
@keyframes pendingGuardianPulse{from{transform:translateY(-2px) scale(1.02)}to{transform:translateY(-7px) scale(1.055)}}
@keyframes panelRise{from{opacity:.3;transform:translateY(12px) scale(.99)}to{opacity:1;transform:none}}
@keyframes loopGlow{from{box-shadow:inset 0 0 0 1px rgba(255,213,74,.26),0 0 0 rgba(255,213,74,0)}to{box-shadow:inset 0 0 0 1px rgba(255,213,74,.5),0 0 18px rgba(255,213,74,.18)}}
@keyframes resultPop{0%{transform:scale(.76);opacity:0}65%{transform:scale(1.08);opacity:1}100%{transform:scale(1)}}
@keyframes resultShake{0%,100%{transform:translateX(0)}20%{transform:translateX(-8px)}40%{transform:translateX(7px)}60%{transform:translateX(-4px)}80%{transform:translateX(3px)}}
@keyframes fxRing{0%{transform:scale(.15);opacity:0}30%{opacity:.95}100%{transform:scale(5);opacity:0}}
@keyframes fxCopy{0%{transform:translateY(28px) scale(.65);opacity:0}35%{transform:translateY(0) scale(1.08);opacity:1}100%{transform:translateY(-18px) scale(.96);opacity:0}}
@keyframes boardChallengeHit{0%,100%{transform:none}25%{transform:translateX(-4px) rotate(-.2deg)}50%{transform:translateX(4px) rotate(.2deg)}75%{transform:translateX(-2px)}}
@keyframes boardPowerHit{0%{filter:brightness(1)}45%{filter:brightness(1.24) saturate(1.18);box-shadow:0 0 65px rgba(94,220,255,.32)}100%{filter:brightness(1)}}
@keyframes boardSuccessHit{0%{filter:brightness(1)}45%{filter:brightness(1.28) saturate(1.25);box-shadow:0 0 80px rgba(109,255,159,.35)}100%{filter:brightness(1)}}
body.reduce-motion .team-guardian-card:last-child,body.reduce-motion .table-guardian-slot.pending-team img,body.reduce-motion .action-panel,body.reduce-motion .loop-step.current,body.reduce-motion .result-banner,body.reduce-motion .premium-board{animation:none!important}

/* ===== PLAYTEST RC3 — KID ENERGY / PRODUCTION POLISH ===== */
body{font-family:"Trebuchet MS","Avenir Next",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
button,input,select{font-family:inherit}
.home-copy h1,.party-title,.section-title,.action-panel h3,.result-banner,.big-unlock-screen h2,.win-screen h1{font-family:Impact,Haettenschweiler,"Arial Black","Trebuchet MS",sans-serif;letter-spacing:.012em}
.eyebrow{font-weight:1000;letter-spacing:.13em;text-shadow:0 2px 9px rgba(45,215,255,.22)}

/* Setup should feel like a game lobby, not a form. */
.setup-party-panel{position:relative;overflow:hidden;background:radial-gradient(circle at 50% -10%,rgba(75,224,255,.19),transparent 36%),radial-gradient(circle at 88% 20%,rgba(255,76,179,.13),transparent 27%),linear-gradient(180deg,rgba(15,48,124,.96),rgba(4,16,55,.97));border:2px solid rgba(112,231,255,.26);box-shadow:0 24px 70px rgba(0,0,0,.34),inset 0 0 60px rgba(70,180,255,.06)}
.setup-party-panel::before,.setup-party-panel::after{content:"✦";position:absolute;color:#ffe66d;font-size:42px;opacity:.35;animation:setupSpark 2.5s ease-in-out infinite;pointer-events:none}.setup-party-panel::before{right:5%;top:4%}.setup-party-panel::after{left:4%;bottom:8%;animation-delay:1.1s}
.party-title{margin:4px 0 4px!important;font-size:clamp(38px,6vw,76px)!important;line-height:.95;color:#fff;text-shadow:0 5px 0 #102765,0 0 22px rgba(111,232,255,.28)}
.party-subtitle{margin:4px 0 22px;color:#dce9ff;font-size:clamp(15px,1.9vw,20px);line-height:1.4;font-weight:800}
.party-setting{position:relative;overflow:hidden;padding-top:46px!important;border:1px solid rgba(255,255,255,.18)!important;background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.045))!important;box-shadow:inset 0 1px rgba(255,255,255,.12),0 12px 24px rgba(0,0,0,.18);transition:transform .18s ease,border-color .18s ease}
.party-setting:hover{transform:translateY(-3px);border-color:rgba(117,236,255,.52)!important}
.setting-emoji{position:absolute;left:16px;top:10px;font-size:29px;filter:drop-shadow(0 5px 9px rgba(0,0,0,.24));animation:emojiBob 1.8s ease-in-out infinite}
.party-setting:nth-child(2) .setting-emoji{animation-delay:.25s}.party-setting:nth-child(3) .setting-emoji{animation-delay:.5s}
.party-setting h3{font-family:"Arial Black","Trebuchet MS",sans-serif;font-size:15px;letter-spacing:.045em;color:#fff6b1;text-shadow:0 2px 8px rgba(0,0,0,.3)}
.segmented button{font-weight:1000;letter-spacing:.02em;min-height:49px;box-shadow:inset 0 1px rgba(255,255,255,.08);transition:.16s transform,.16s filter,.16s box-shadow}
.segmented button:hover{transform:translateY(-2px);filter:brightness(1.12)}
.segmented button.active{background:linear-gradient(180deg,#fff07e,#ffc72f);box-shadow:0 0 0 2px rgba(255,244,164,.18),0 8px 18px rgba(255,194,35,.18)}
.party-rules{font-size:15px;font-weight:800;background:linear-gradient(90deg,rgba(63,214,255,.11),rgba(255,213,74,.10),rgba(255,83,178,.08));border-color:rgba(114,226,255,.34)}
.setup-cta-row{position:sticky;bottom:10px;z-index:15;padding:10px;margin:14px -6px -6px;border-radius:18px;background:linear-gradient(180deg,rgba(5,19,60,.2),rgba(5,19,60,.94));backdrop-filter:blur(12px);justify-content:flex-end;box-shadow:0 -12px 30px rgba(0,0,0,.12)}
.setup-launch,.hero-play-btn,.action-hero-btn{position:relative;overflow:hidden;text-transform:uppercase;letter-spacing:.035em;font-family:"Arial Black","Trebuchet MS",sans-serif;font-size:clamp(15px,1.6vw,20px);min-height:58px!important;box-shadow:0 12px 28px rgba(255,197,41,.24),inset 0 1px rgba(255,255,255,.55)!important}
.setup-launch::after,.hero-play-btn::after,.action-hero-btn::after,.challenge-flip-btn::after{content:"";position:absolute;top:-35%;left:-35%;width:24%;height:170%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.75),transparent);transform:rotate(20deg);animation:buttonShine 2.8s ease-in-out infinite;pointer-events:none}

/* Draft cards should snap cleanly and feel collectible. */
.draft-party .card-tile{box-shadow:0 12px 22px rgba(0,0,0,.18)}
.draft-party .card-tile.selected{outline:4px solid #ffe267;box-shadow:0 0 26px rgba(255,217,80,.36),0 14px 24px rgba(0,0,0,.28);transform:translateY(-5px) rotate(-.3deg)}
.draft-party .tile-select{font-family:"Arial Black","Trebuchet MS",sans-serif;letter-spacing:.03em}
.draft-progress{padding:9px 13px;border-radius:999px;background:rgba(255,213,74,.12);border:1px solid rgba(255,222,107,.32);font-size:14px}
.draft-cta{position:sticky;bottom:8px;z-index:10;padding:10px;border-radius:16px;background:rgba(3,13,44,.90);backdrop-filter:blur(12px)}

/* Fun, readable gameplay prompts. */
.game-instruction-strip.premium-instruction{font-family:"Arial Black","Trebuchet MS",sans-serif;font-size:clamp(11px,1.15vw,15px);letter-spacing:.018em;padding:10px 14px;border:1px solid rgba(255,225,105,.28);background:linear-gradient(90deg,rgba(14,51,125,.92),rgba(78,32,112,.88),rgba(14,51,125,.92));box-shadow:0 8px 22px rgba(0,0,0,.22),inset 0 1px rgba(255,255,255,.08)}
.instruction-icon{color:#ffe367;filter:drop-shadow(0 0 7px rgba(255,220,78,.5));animation:tinySpark 1.4s ease-in-out infinite}
.action-panel{border-width:2px!important;padding:clamp(15px,2vw,22px)!important;background:radial-gradient(circle at 12% 0%,rgba(68,215,255,.12),transparent 25%),linear-gradient(180deg,rgba(21,66,154,.91),rgba(5,21,68,.96))!important;box-shadow:0 18px 38px rgba(0,0,0,.26),inset 0 1px rgba(255,255,255,.08)!important}
.action-panel h3{font-size:clamp(24px,3vw,40px)!important;line-height:1;margin-bottom:10px!important;color:#fff;text-shadow:0 3px 0 rgba(8,23,68,.9),0 0 18px rgba(95,223,255,.16)}
.action-panel p{font-size:clamp(15px,1.5vw,18px)!important;font-weight:750;color:#e1ebff!important}
.action-turn-kicker{font-family:"Arial Black","Trebuchet MS",sans-serif;font-size:12px!important;color:#8ff2ff!important}
.think-prompt{padding:10px 12px;margin:10px 0 14px;border-radius:13px;background:linear-gradient(90deg,rgba(46,192,255,.12),rgba(255,213,74,.08));border:1px solid rgba(105,221,255,.22);color:#f0f7ff;font-weight:900;line-height:1.45}
.challenge-ready-panel{border-color:rgba(255,91,103,.48)!important;background:radial-gradient(circle at 15% 0%,rgba(255,78,103,.15),transparent 28%),linear-gradient(180deg,rgba(111,31,80,.94),rgba(43,12,48,.96))!important}
.challenge-hit-panel{border-color:rgba(255,130,85,.48)!important;animation:challengePanelHit .5s cubic-bezier(.22,.9,.27,1.12) both!important}
.challenge-fun-copy{font-size:clamp(17px,1.8vw,21px)!important;color:#fff2c2!important}
.challenge-flip-btn{position:relative;overflow:hidden;background:linear-gradient(180deg,#ff686f,#df244d)!important;border-color:#ffabb3!important;color:#fff!important;min-height:62px;font-family:"Arial Black","Trebuchet MS",sans-serif;font-size:clamp(16px,1.8vw,21px);letter-spacing:.035em;animation:challengeButtonPulse 1.2s ease-in-out infinite}
.power-turn-panel{border-color:rgba(92,211,255,.45)!important}
.pass-btn{min-height:52px;font-weight:1000;border-color:rgba(144,236,255,.28)!important}
.resolve-party-panel .resolution-stat{transition:.2s transform,.2s box-shadow}.resolve-party-panel .resolution-stat.met{transform:translateY(-2px);box-shadow:0 0 18px rgba(80,233,135,.13)}.resolve-party-panel .resolution-stat.miss{animation:missWiggle .7s ease-in-out infinite alternate}
.result-banner{font-family:Impact,"Arial Black","Trebuchet MS",sans-serif;letter-spacing:.04em;text-shadow:0 4px 0 rgba(0,0,0,.30)}
.result-banner.success{color:#a2ffc0!important}.result-banner.fail{color:#ffd477!important}
.smart-solve-badge{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:10px 12px;margin:10px 0;border-radius:13px;background:linear-gradient(90deg,rgba(255,214,74,.12),rgba(74,216,255,.1));border:1px solid rgba(255,223,100,.28)}
.reward-party-panel{border-color:rgba(255,219,93,.42)!important;background:radial-gradient(circle at 12% 0%,rgba(255,223,99,.16),transparent 30%),linear-gradient(180deg,rgba(74,52,133,.95),rgba(27,21,70,.96))!important}

/* Buttons: big targets for children and TV remotes. */
.action-panel .primary-btn,.action-panel .secondary-btn,.action-panel .danger-btn{font-weight:1000;min-height:50px}
.action-panel .choice-row .primary-btn,.action-panel .choice-row .secondary-btn{font-size:14px;padding:12px 15px}
.lead-name-choices .secondary-btn,.lead-name-choices .primary-btn{border-width:2px;box-shadow:0 5px 12px rgba(0,0,0,.15)}
.lead-name-choices .primary-btn{animation:selectedChoice .85s ease-in-out infinite alternate}

/* Card art must read as cards, never white-margin thumbnails. */
.table-guardian-slot,.card-tile button.card-open,.collection-card,.fan-card{overflow:hidden}
.table-guardian-slot img,.card-tile img,.collection-card img,.fan-card img,.viewer-card{object-position:center center}
.table-guardian-slot img{background:rgba(3,12,42,.35)}
.viewer-card{filter:drop-shadow(0 20px 30px rgba(0,0,0,.42));border-radius:20px}
.card-viewer-panel{background:radial-gradient(circle at 20% 0%,rgba(71,209,255,.15),transparent 32%),linear-gradient(180deg,rgba(11,39,103,.98),rgba(3,15,51,.99));border:2px solid rgba(121,232,255,.24)}
.viewer-copy h2{font-family:Impact,"Arial Black","Trebuchet MS",sans-serif;font-size:clamp(28px,4vw,52px);line-height:.95;letter-spacing:.025em;text-transform:uppercase}
.fun-callout{font-size:15px}.power-headline{font-size:20px!important;color:#fff4b1!important}.challenge-callout{background:linear-gradient(90deg,rgba(255,85,92,.16),rgba(255,194,72,.10))!important;border-color:rgba(255,125,116,.38)!important}
.challenge-scale{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:10px 0}.challenge-scale span{display:flex;flex-direction:column;gap:3px;text-align:center;padding:9px 7px;border-radius:12px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);font-size:11px;font-weight:900}.challenge-scale b{font-size:14px;color:#ffe281}.challenge-modal-copy{font-size:16px!important;font-weight:850;color:#f5f8ff!important}

/* Make live cards pop from the mat. */
.board-live-card,.team-guardian-card img,.power-fan-card img,.completed-mini img{filter:drop-shadow(0 8px 12px rgba(0,0,0,.50)) saturate(1.06)}
.board-challenge-card:last-child{animation:challengeDock .48s cubic-bezier(.18,.88,.24,1.12) both,challengeGlow 1.4s .5s ease-in-out 2 alternate}
.team-guardian-card:last-child{animation:guardianDock .46s cubic-bezier(.18,.9,.24,1.14) both,guardianSpark 1.1s .45s ease-in-out 2 alternate}
.power-fan-card:last-child{animation:powerDock .42s cubic-bezier(.18,.88,.24,1.10) both,powerFlash .8s .35s ease-in-out 1}
.meter.met .meter-track{box-shadow:0 0 12px rgba(96,244,151,.26)}
.meter.met .meter-head::after{content:" ✓";color:#86f3a7}

/* FX palette and readable burst lettering. */
.game-fx-copy{font-family:Impact,"Arial Black","Trebuchet MS",sans-serif;text-transform:uppercase;letter-spacing:.055em;padding:14px 22px!important;box-shadow:0 12px 30px rgba(0,0,0,.35)}

@keyframes setupSpark{0%,100%{transform:translateY(0) rotate(-10deg) scale(.9);opacity:.25}50%{transform:translateY(-10px) rotate(12deg) scale(1.15);opacity:.55}}
@keyframes emojiBob{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-5px) rotate(5deg)}}
@keyframes buttonShine{0%,62%{left:-35%;opacity:0}70%{opacity:.8}88%{left:125%;opacity:0}100%{left:125%;opacity:0}}
@keyframes tinySpark{0%,100%{transform:scale(.9) rotate(-8deg);opacity:.6}50%{transform:scale(1.25) rotate(8deg);opacity:1}}
@keyframes challengeButtonPulse{50%{transform:translateY(-2px) scale(1.015);box-shadow:0 0 28px rgba(255,82,99,.30)}}
@keyframes challengePanelHit{0%{opacity:.4;transform:scale(.97) rotate(-.3deg)}55%{opacity:1;transform:scale(1.015) rotate(.2deg)}100%{transform:none}}
@keyframes missWiggle{from{transform:translateX(-1px)}to{transform:translateX(1px)}}
@keyframes selectedChoice{from{box-shadow:0 5px 12px rgba(0,0,0,.16),0 0 0 rgba(255,220,84,0)}to{box-shadow:0 5px 12px rgba(0,0,0,.16),0 0 18px rgba(255,220,84,.35)}}
@keyframes challengeGlow{from{filter:drop-shadow(0 8px 12px rgba(0,0,0,.5)) saturate(1.06)}to{filter:drop-shadow(0 0 18px rgba(255,83,92,.56)) saturate(1.15) brightness(1.08)}}
@keyframes guardianSpark{from{filter:drop-shadow(0 8px 12px rgba(0,0,0,.5))}to{filter:drop-shadow(0 0 18px rgba(87,229,255,.58)) brightness(1.08)}}
@keyframes powerFlash{50%{filter:drop-shadow(0 0 22px rgba(93,217,255,.66)) brightness(1.18)}}

@media(max-width:900px){.setup-grid{grid-template-columns:1fr!important}.party-setting{padding-top:43px!important}.setup-cta-row{justify-content:stretch}.setup-cta-row .primary-btn{flex:1}.challenge-scale{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:620px){.party-title{font-size:42px!important}.party-subtitle{font-size:15px}.name-fields{grid-template-columns:1fr}.setup-cta-row{bottom:4px}.setup-launch{width:100%}.action-panel h3{font-size:26px!important}.action-panel p{font-size:15px!important}.game-instruction-strip.premium-instruction{font-size:10px}.challenge-scale{grid-template-columns:1fr}.viewer-grid{grid-template-columns:1fr!important}.viewer-card{max-height:58vh;object-fit:contain}}
body.reduce-motion .setting-emoji,body.reduce-motion .setup-party-panel::before,body.reduce-motion .setup-party-panel::after,body.reduce-motion .setup-launch::after,body.reduce-motion .hero-play-btn::after,body.reduce-motion .action-hero-btn::after,body.reduce-motion .challenge-flip-btn,body.reduce-motion .instruction-icon,body.reduce-motion .lead-name-choices .primary-btn,body.reduce-motion .board-challenge-card:last-child,body.reduce-motion .team-guardian-card:last-child,body.reduce-motion .power-fan-card:last-child{animation:none!important}

/* RC3 kid-energy pass-the-device overlay */
.privacy-card{position:relative;overflow:hidden;border:2px solid rgba(255,221,82,.72);box-shadow:0 30px 90px rgba(0,0,0,.56),0 0 44px rgba(58,203,255,.18);animation:privacyPop .26s cubic-bezier(.2,.9,.25,1.18)}
.privacy-card::before{content:'✨  ⭐  ✨';position:absolute;inset:10px 0 auto;font-size:18px;letter-spacing:10px;color:var(--gold);opacity:.55;animation:privacySpark 2s ease-in-out infinite}
.privacy-icon{filter:drop-shadow(0 0 16px rgba(255,218,71,.55));animation:emojiBob 1.7s ease-in-out infinite;margin-top:15px}
.privacy-card h2{font-family:Impact,'Arial Black',system-ui,sans-serif;letter-spacing:.02em;text-transform:uppercase;color:#fff;text-shadow:0 3px 0 #07113a,0 0 20px rgba(91,225,255,.4)}
.privacy-card p{font-size:17px;font-weight:800;color:#eef5ff}
.privacy-card .primary-btn{font-family:Impact,'Arial Black',system-ui,sans-serif;letter-spacing:.05em;font-size:20px;min-width:220px}
@keyframes privacyPop{from{transform:scale(.86) rotate(-1deg);opacity:0}to{transform:scale(1);opacity:1}}
@keyframes privacySpark{0%,100%{transform:translateY(0);opacity:.35}50%{transform:translateY(4px);opacity:.8}}
@media(prefers-reduced-motion:reduce){.privacy-card,.privacy-card::before,.privacy-icon{animation:none!important}}

/* ============================================================
   PLAYTEST RC5 — THE MAT IS THE SCREEN
   Native 4:3 mat geometry, smaller cards, all card choices on-board.
   ============================================================ */
.screen.game-screen{width:100%!important;max-width:none!important;padding:8px clamp(6px,1vw,16px) 24px!important}
.game-screen .premium-table-arena{width:min(1880px,calc(100vw - 12px))!important;max-width:none!important;margin:0 auto!important}
.game-screen .premium-center-stage{width:100%!important}
.game-screen .premium-board{width:100%!important;aspect-ratio:4/3!important;min-height:0!important;border-radius:26px!important;overflow:hidden!important}
.game-screen .physical-mat{object-fit:fill!important;filter:saturate(1.12) brightness(.79) contrast(1.035)!important;opacity:1!important}

/* Player banks snap directly into the five printed Guardian wells. */
.on-board-seats{z-index:20!important}
.board-player-seat{overflow:visible!important;backdrop-filter:none!important}
.board-seat-top,.board-seat-bottom{
  width:32.4%!important;left:20.0%!important;height:auto!important;
  padding:0!important;border:0!important;background:transparent!important;
  box-shadow:none!important;border-radius:0!important;
}
.board-seat-top{top:26.2%!important;bottom:auto!important}
.board-seat-bottom{top:auto!important;bottom:15.25%!important}
.board-seat-left,.board-seat-right{
  width:16.2%!important;top:48.0%!important;height:auto!important;
  padding:5px!important;border-radius:12px!important;
  background:linear-gradient(180deg,rgba(3,15,47,.88),rgba(2,10,33,.84))!important;
  border:1px solid rgba(111,228,255,.32)!important;
  box-shadow:0 8px 18px rgba(0,0,0,.34)!important;
}
.board-seat-left{left:2.5%!important;right:auto!important}.board-seat-right{right:2.5%!important;left:auto!important}
.board-player-seat .premium-seat-head{
  position:absolute!important;left:50%!important;top:-23px!important;transform:translateX(-50%)!important;
  width:max-content!important;max-width:100%!important;height:19px!important;padding:2px 6px!important;
  border-radius:999px!important;background:rgba(3,13,43,.92)!important;border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:0 4px 10px rgba(0,0,0,.28)!important;z-index:8!important;white-space:nowrap!important;
}
.board-seat-left .premium-seat-head,.board-seat-right .premium-seat-head{top:-20px!important}
.board-player-seat .premium-seat-head strong{font-size:clamp(6px,.62vw,9px)!important;max-width:90px!important}
.board-player-seat .player-chip,.board-player-seat .turn-chip,.board-player-seat .help-chip,.board-player-seat .action-turn-chip{font-size:clamp(4px,.45vw,6px)!important;padding:1px 4px!important}
.board-player-seat .hand-count{font-size:clamp(5px,.48vw,7px)!important}
.board-player-seat .premium-seat-cards{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:1.5%!important;margin:0!important;width:100%!important;align-items:start!important}
.guardian-slot-wrap{position:relative;min-width:0;overflow:visible}
.board-player-seat .table-guardian-slot{width:100%!important;max-width:none!important;padding:2px!important;border-radius:8px!important;background:rgba(2,11,36,.36)!important;border:1px solid rgba(255,255,255,.11)!important;box-shadow:inset 0 3px 8px rgba(0,0,0,.24)!important}
.board-player-seat .table-guardian-slot img{width:100%!important;aspect-ratio:2/3!important;object-fit:contain!important;border-radius:5px!important;filter:drop-shadow(0 3px 4px rgba(0,0,0,.35))!important;transform:scale(.94)}
.board-player-seat .table-guardian-slot:hover img{transform:translateY(-2px) scale(.98)!important}
.board-player-seat .table-guardian-slot.pending-team{border-color:#6ff1ff!important;box-shadow:0 0 0 2px rgba(111,241,255,.22),0 0 18px rgba(75,224,255,.48)!important}
.board-player-seat .table-guardian-slot.lead{border-color:#ffe26a!important;box-shadow:0 0 0 1px rgba(255,226,106,.34),0 0 13px rgba(255,218,74,.24)!important}
.card-zoom-mini{position:absolute;right:-3px;bottom:-3px;z-index:12;width:17px;height:17px;border-radius:50%;border:1px solid rgba(255,255,255,.72);background:#071a54;color:#fff;font-size:12px;line-height:14px;font-weight:1000;display:grid;place-items:center;padding:0;box-shadow:0 3px 7px rgba(0,0,0,.35)}
.card-zoom-mini:hover{background:#0e3e99;transform:scale(1.08)}
.lead-pin{font-size:4px!important;padding:1px 2px!important;top:1px!important;right:1px!important}

/* Printed mat wells are the authority. Cards are smaller than the wells so nothing collides. */
.power-deck-slot{left:3.15%!important;bottom:14.9%!important;width:7.35%!important;top:auto!important}
.power-discard-slot{left:11.55%!important;bottom:14.9%!important;width:7.35%!important;top:auto!important}
.challenge-deck-slot{left:27.1%!important;top:49.7%!important;width:7.3%!important;bottom:auto!important}
.big-deck-slot{left:38.75%!important;top:49.4%!important;width:8.8%!important;bottom:auto!important}
.mission-deck-slot{left:72.35%!important;right:auto!important;bottom:14.9%!important;width:7.35%!important;top:auto!important}
.challenge-discard-slot{display:none!important}
.board-deck,.board-discard{transform:none!important;padding:2px!important;background:rgba(2,10,34,.26)!important;border-color:rgba(255,255,255,.10)!important;box-shadow:none!important}
.board-deck .deck-depth,.board-discard .discard-well{width:100%!important;border-radius:6px!important}
.board-deck img,.board-discard img{border-radius:5px!important;filter:drop-shadow(0 3px 4px rgba(0,0,0,.34))}
.board-deck>span,.board-discard>span{font-size:clamp(4px,.43vw,6px)!important;margin-top:1px!important;line-height:1.05!important}
.board-deck>small,.board-discard>small{font-size:clamp(4px,.4vw,6px)!important}
.deck-active{z-index:28!important;border-color:#ffe36c!important;background:rgba(255,214,74,.10)!important;box-shadow:0 0 0 2px rgba(255,225,102,.22),0 0 28px rgba(255,213,74,.55)!important;animation:deckTapPulse 1s ease-in-out infinite alternate!important}
.deck-active .deck-depth{transform:translateY(-2px)}
@keyframes deckTapPulse{from{filter:brightness(1)}to{filter:brightness(1.22) saturate(1.12)}}

/* Shared live zones use the printed P1 wells. Guardian choices stay in their own banks. */
.challenge-live-zone{left:54.15%!important;right:auto!important;bottom:15.25%!important;top:auto!important;width:7.35%!important;height:12.2%!important}
.mission-live-zone{left:63.25%!important;right:auto!important;bottom:15.25%!important;top:auto!important;width:7.35%!important;height:12.2%!important}
.completed-live-zone{left:81.55%!important;right:auto!important;bottom:15.25%!important;top:auto!important;width:13.6%!important;height:12.2%!important}
.power-live-zone{left:51.4%!important;bottom:auto!important;top:52.2%!important;width:13.2%!important;height:11.6%!important}
.lead-live-zone,.team-live-zone{display:none!important}
.board-zone{padding:2px!important;border-radius:8px!important;background:rgba(2,10,34,.22)!important;border:1px solid rgba(255,255,255,.10)!important;box-shadow:inset 0 4px 9px rgba(0,0,0,.20)!important;backdrop-filter:none!important}
.board-zone::after{inset:2px!important;border-radius:6px!important;opacity:.55}
.board-zone-label{bottom:-11px!important;font-size:clamp(4px,.42vw,6px)!important;padding:1px 3px!important;letter-spacing:.04em!important}
.mission-live-zone .card-open{width:78%!important;max-height:92%!important}.board-challenge-card{width:76%!important}.completed-mini{width:37%!important}.power-fan-card{width:21%!important}
.power-fan-card.pf1{transform:rotate(-7deg) translateX(-96%)!important}.power-fan-card.pf2{transform:rotate(-2deg) translateX(-32%)!important}.power-fan-card.pf3{transform:rotate(3deg) translateX(34%)!important}.power-fan-card.pf4{transform:rotate(8deg) translateX(98%)!important}
.turn-marker-premium{left:67.0%!important;top:53.0%!important;width:5.8%!important;border-width:2px!important;z-index:10!important}
.turn-marker-premium>small{font-size:clamp(4px,.45vw,6px)!important;width:90px!important}
.community-title{top:43.0%!important;font-size:clamp(6px,.68vw,9px)!important;padding:3px 8px!important}

/* Power cards now live with the active player on the mat, never in a detached bottom hand. */
.hand-zone{display:none!important}
.seat-power-hand{position:absolute;z-index:40;display:flex;flex-direction:column;gap:4px;padding:6px;border-radius:12px;background:linear-gradient(180deg,rgba(3,15,50,.97),rgba(2,9,31,.97));border:1px solid rgba(99,231,255,.42);box-shadow:0 14px 30px rgba(0,0,0,.48),0 0 24px rgba(77,217,255,.18);min-width:210px;max-width:390px}
.power-hand-bottom{left:0;bottom:calc(100% + 8px);width:100%}.power-hand-top{left:0;top:calc(100% + 8px);width:100%}
.power-hand-left{left:calc(100% + 8px);top:-10px;width:220px}.power-hand-right{right:calc(100% + 8px);top:-10px;width:220px}
.seat-power-label{font-size:clamp(7px,.68vw,10px);font-weight:1000;color:#fff2a4;letter-spacing:.06em;text-align:center}
.seat-power-cards{display:flex;align-items:flex-start;justify-content:center;gap:5px;overflow-x:auto;padding:2px 2px 5px;scrollbar-width:thin}
.onboard-power-card{position:relative;flex:0 0 clamp(38px,4.1vw,62px)}
.onboard-power-play{width:100%;border:0;background:transparent;padding:0;border-radius:7px;transition:.15s transform,.15s filter}
.onboard-power-play img{display:block;width:100%;aspect-ratio:2/3;object-fit:contain;border-radius:6px;filter:drop-shadow(0 5px 6px rgba(0,0,0,.42))}
.onboard-power-play:hover,.onboard-power-play:focus-visible{transform:translateY(-4px) scale(1.035);filter:brightness(1.08);outline:none}
.onboard-power-card .card-zoom-mini{width:16px;height:16px;font-size:10px;right:-3px;bottom:-3px}
.onboard-pass{align-self:center;border:1px solid rgba(255,255,255,.17);background:rgba(255,255,255,.07);color:#eaf2ff;border-radius:999px;padding:5px 10px;font-size:9px;font-weight:1000}
.onboard-pass:hover{background:rgba(255,255,255,.14)}
.no-power-note{font-size:9px;color:#c6d5ef;padding:6px}

.board-touch-prompt{margin:10px 0 2px;padding:10px 12px;border-radius:13px;background:rgba(255,215,77,.10);border:1px solid rgba(255,220,91,.28);color:#fff1a6;font-weight:1000;text-align:center;letter-spacing:.02em}
.deck-driven-panel{padding-top:13px!important;padding-bottom:13px!important}

/* Outside-the-mat UI is supporting information only, never card storage. */
.premium-table-console{margin-top:10px!important;padding:10px 13px!important;border-radius:16px!important;background:linear-gradient(180deg,rgba(5,20,61,.88),rgba(2,11,37,.90))!important}
.premium-table-console .contribution-row{min-height:28px!important}
.premium-instruction{margin:8px 0!important}
.premium-center-stage>.action-panel{margin:0!important}

@media(max-width:1000px){
  .screen.game-screen{padding:5px!important}
  .game-screen .premium-board{aspect-ratio:4/3!important}
  .board-seat-top,.board-seat-bottom{left:19.8%!important;width:32.7%!important}
  .board-seat-left,.board-seat-right{width:16.5%!important;top:48.5%!important}
  .board-player-seat .premium-seat-head{top:-18px!important;height:15px!important}
  .card-zoom-mini{width:14px;height:14px;font-size:9px}
  .seat-power-hand{min-width:170px;padding:4px}.power-hand-left,.power-hand-right{width:180px}
  .onboard-power-card{flex-basis:clamp(30px,4.2vw,48px)}
}
@media(max-width:650px){
  .mobile-orientation-tip{display:block!important}
  .board-player-seat .premium-seat-head strong{display:none!important}.board-player-seat .help-chip{display:none!important}
  .board-player-seat .premium-seat-head{top:-14px!important;height:12px!important;padding:1px 3px!important}
  .board-player-seat .premium-seat-cards{gap:1px!important}.board-player-seat .table-guardian-slot{padding:1px!important}.card-zoom-mini{display:none!important}
  .board-seat-left,.board-seat-right{top:49%!important;padding:2px!important}
  .seat-power-hand{min-width:150px;max-width:220px;padding:3px}.power-hand-bottom,.power-hand-top{width:150%;left:-25%}.power-hand-left,.power-hand-right{width:160px}
  .onboard-power-card{flex-basis:29px}.seat-power-label{font-size:6px}.onboard-pass{font-size:6px;padding:3px 6px}
  .board-deck>span,.board-discard>span,.board-zone-label{display:none!important}
  .community-title{display:none!important}.turn-marker-premium>small{display:none!important}
}
/* RC5 hand-tray collision fix: side players keep their Power cards in their own side bay. */
.power-hand-left,.power-hand-right{left:0!important;right:auto!important;top:auto!important;bottom:calc(100% + 7px)!important;width:100%!important;min-width:0!important;max-width:none!important}
.board-seat-right .power-hand-right{left:auto!important;right:0!important}
.board-seat-left .seat-power-cards,.board-seat-right .seat-power-cards{justify-content:flex-start!important}
@media(max-width:650px){.power-hand-left,.power-hand-right{width:145%!important;left:-22.5%!important;right:auto!important}.board-seat-right .power-hand-right{left:-22.5%!important;right:auto!important}}


/* ============================================================
   PLAYTEST RC6 — FAMILY TABLE SIDE SEATS
   3P/4P rotate side-player banks to face the people seated there.
   Dynamic side rails extend the mat visually without changing rules.
   ============================================================ */
.seats-3 .premium-board::before,.seats-4 .premium-board::before,
.seats-3 .premium-board::after,.seats-4 .premium-board::after{
  content:"";position:absolute;top:27.5%;width:10.2%;height:45%;z-index:9;pointer-events:none;
  border:1px solid rgba(112,229,255,.30);border-radius:18px;
  background:
    radial-gradient(circle at 50% 50%,rgba(41,162,255,.12),transparent 66%),
    linear-gradient(180deg,rgba(4,18,58,.36),rgba(2,10,35,.48));
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.025),inset 0 0 24px rgba(43,179,255,.10),0 6px 18px rgba(0,0,0,.12);
}
.seats-3 .premium-board::before,.seats-4 .premium-board::before{left:1.2%}
.seats-3 .premium-board::after,.seats-4 .premium-board::after{right:1.2%}

/* A side player sees a normal horizontal 5-card bank from their seat.
   To the screen viewer that bank is rotated 90° and occupies a clean side rail. */
.seats-3 .board-seat-left,.seats-4 .board-seat-left,
.seats-3 .board-seat-right,.seats-4 .board-seat-right{
  width:31.8%!important;top:43.2%!important;height:auto!important;
  padding:0!important;border:0!important;background:transparent!important;
  box-shadow:none!important;border-radius:0!important;
  transform-origin:50% 50%!important;z-index:24!important;
}
.seats-3 .board-seat-left,.seats-4 .board-seat-left{
  left:-9.3%!important;right:auto!important;transform:rotate(-90deg)!important;
}
.seats-3 .board-seat-right,.seats-4 .board-seat-right{
  right:-9.3%!important;left:auto!important;transform:rotate(90deg)!important;
}
.seats-3 .board-seat-left .premium-seat-cards,.seats-4 .board-seat-left .premium-seat-cards,
.seats-3 .board-seat-right .premium-seat-cards,.seats-4 .board-seat-right .premium-seat-cards{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:1.35%!important;
}
.seats-3 .board-seat-left .table-guardian-slot,.seats-4 .board-seat-left .table-guardian-slot,
.seats-3 .board-seat-right .table-guardian-slot,.seats-4 .board-seat-right .table-guardian-slot{
  background:rgba(2,11,36,.28)!important;border-color:rgba(255,255,255,.10)!important;
}
.seats-3 .board-seat-left .premium-seat-head,.seats-4 .board-seat-left .premium-seat-head,
.seats-3 .board-seat-right .premium-seat-head,.seats-4 .board-seat-right .premium-seat-head{
  top:-20px!important;
}

/* Side-player Power hands open toward the middle of the table rather than offscreen. */
.seats-3 .board-seat-left .power-hand-left,.seats-4 .board-seat-left .power-hand-left,
.seats-3 .board-seat-right .power-hand-right,.seats-4 .board-seat-right .power-hand-right{
  left:0!important;right:auto!important;top:calc(100% + 7px)!important;bottom:auto!important;
  width:100%!important;min-width:0!important;max-width:none!important;
}
.seats-3 .board-seat-right .power-hand-right,.seats-4 .board-seat-right .power-hand-right{left:0!important;right:auto!important}
.seats-3 .board-seat-left .seat-power-cards,.seats-4 .board-seat-left .seat-power-cards,
.seats-3 .board-seat-right .seat-power-cards,.seats-4 .board-seat-right .seat-power-cards{justify-content:center!important}

/* Give top/bottom banks a touch more breathing room in 4P while preserving printed wells. */
.seats-4 .board-seat-top,.seats-4 .board-seat-bottom{width:31.6%!important;left:20.4%!important}
.seats-3 .board-seat-bottom{width:32.0%!important;left:20.2%!important}

/* On narrower landscape tablets the side rails remain rotated but slightly slimmer. */
@media(max-width:1100px) and (orientation:landscape){
  .seats-3 .board-seat-left,.seats-4 .board-seat-left,
  .seats-3 .board-seat-right,.seats-4 .board-seat-right{width:30.2%!important;top:43.5%!important}
  .seats-3 .board-seat-left,.seats-4 .board-seat-left{left:-8.4%!important}
  .seats-3 .board-seat-right,.seats-4 .board-seat-right{right:-8.4%!important}
}

/* Portrait stays usable: keep side banks unrotated when the physical screen is too narrow.
   The game already recommends landscape, so this is a safe fallback rather than a new layout. */
@media(max-width:650px) and (orientation:portrait){
  .seats-3 .premium-board::before,.seats-4 .premium-board::before,
  .seats-3 .premium-board::after,.seats-4 .premium-board::after{display:none!important}
  .seats-3 .board-seat-left,.seats-4 .board-seat-left,
  .seats-3 .board-seat-right,.seats-4 .board-seat-right{
    width:16.5%!important;top:49%!important;padding:2px!important;
    background:linear-gradient(180deg,rgba(3,15,47,.88),rgba(2,10,33,.84))!important;
    border:1px solid rgba(111,228,255,.32)!important;border-radius:8px!important;
    box-shadow:0 6px 12px rgba(0,0,0,.30)!important;transform:none!important;
  }
  .seats-3 .board-seat-left,.seats-4 .board-seat-left{left:2.5%!important}
  .seats-3 .board-seat-right,.seats-4 .board-seat-right{right:2.5%!important;left:auto!important}
  .seats-3 .board-seat-left .power-hand-left,.seats-4 .board-seat-left .power-hand-left,
  .seats-3 .board-seat-right .power-hand-right,.seats-4 .board-seat-right .power-hand-right{
    width:145%!important;left:-22.5%!important;right:auto!important;top:auto!important;bottom:calc(100% + 7px)!important;
  }
}


/* ============================================================
   PLAYTEST RC7 — FINAL FOUR-CORNER ACTION ZONE MAT
   Approved 1536×1024 (3:2) playmat. Four horizontal player bays,
   exact deck wells, active-card row, custom names, seat + color choice.
   ============================================================ */
.game-screen .premium-table-arena{width:min(1920px,calc(100vw - 10px))!important}
.game-screen .premium-board{aspect-ratio:3/2!important;border-radius:26px!important;overflow:hidden!important;background:#031333!important}
.game-screen .physical-mat{object-fit:fill!important;filter:saturate(1.08) brightness(.82) contrast(1.025)!important}
.community-title,.turn-marker-premium,.completed-live-zone{display:none!important}
.on-board-seats{position:absolute!important;inset:0!important;z-index:20!important;pointer-events:none!important}

/* Every player bay is horizontal now — no rotated side seats. */
.board-player-seat,.seats-3 .board-seat-tl,.seats-3 .board-seat-tr,.seats-3 .board-seat-bl,.seats-3 .board-seat-br,
.seats-4 .board-seat-tl,.seats-4 .board-seat-tr,.seats-4 .board-seat-bl,.seats-4 .board-seat-br{
  position:absolute!important;height:13.3%!important;padding:0!important;border:0!important;background:transparent!important;
  box-shadow:none!important;border-radius:0!important;transform:none!important;overflow:visible!important;pointer-events:auto!important;
}
.board-seat-tl{left:8.25%!important;top:9.45%!important;width:15.9%!important}
.board-seat-tr{left:68.72%!important;top:9.45%!important;width:15.9%!important}
.board-seat-bl{left:8.25%!important;top:73.05%!important;width:16.05%!important}
.board-seat-br{left:66.80%!important;top:73.05%!important;width:16.05%!important}

/* Chosen player color becomes the live UI color even if the printed mat is beneath it. */
.board-player-seat .seat-panel-glow{position:absolute;pointer-events:none;z-index:-1;border:2px solid var(--seat-color);border-radius:14px;opacity:.88;
  box-shadow:0 0 18px rgba(var(--seat-rgb),.34),inset 0 0 16px rgba(var(--seat-rgb),.12)}
.board-seat-tl .seat-panel-glow{left:-42%;top:-49%;width:194%;height:187%}
.board-seat-tr .seat-panel-glow{left:-8%;top:-49%;width:194%;height:187%}
.board-seat-bl .seat-panel-glow{left:-42%;top:-47%;width:205%;height:190%}
.board-seat-br .seat-panel-glow{left:-8%;top:-47%;width:207%;height:190%}

/* Custom name covers the printed PLAYER # header. */
.board-player-seat .premium-seat-head{position:absolute!important;z-index:45!important;height:27%!important;min-height:20px!important;top:-45%!important;
  display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;padding:3px 12px!important;
  background:linear-gradient(180deg,rgba(var(--seat-rgb),.94),rgba(var(--seat-rgb),.58))!important;
  border:1px solid rgba(255,255,255,.62)!important;box-shadow:0 0 14px rgba(var(--seat-rgb),.42),inset 0 1px rgba(255,255,255,.22)!important;
  border-radius:8px!important;color:#fff!important;text-shadow:0 2px 4px rgba(0,0,0,.7)!important;white-space:nowrap!important;transform:none!important}
.board-seat-tl .premium-seat-head{left:-13%!important;width:142%!important}
.board-seat-tr .premium-seat-head{left:18%!important;width:141%!important}
.board-seat-bl .premium-seat-head{left:-14%!important;width:142%!important}
.board-seat-br .premium-seat-head{left:20%!important;width:140%!important}
.board-player-seat .premium-seat-head strong{font-size:clamp(8px,.95vw,14px)!important;max-width:none!important;overflow:hidden;text-overflow:ellipsis}
.seat-status{font-size:clamp(5px,.48vw,8px);font-weight:1000;padding:2px 5px;border-radius:999px;background:rgba(3,12,40,.74);border:1px solid rgba(255,255,255,.25)}
.board-player-seat.action-now .premium-seat-head{animation:rc7NamePulse .75s ease-in-out infinite alternate}
@keyframes rc7NamePulse{to{filter:brightness(1.25);box-shadow:0 0 24px rgba(var(--seat-rgb),.75),inset 0 1px rgba(255,255,255,.34)}}

/* Five Guardian cards occupy the five printed Guardian Team wells. */
.board-player-seat .premium-seat-cards{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:1.65%!important;margin:0!important;width:100%!important;height:100%!important;align-items:stretch!important}
.guardian-slot-wrap{height:100%!important;min-width:0!important;position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important}
.board-player-seat .table-guardian-slot{width:100%!important;height:100%!important;padding:1px!important;border-radius:5px!important;background:rgba(2,10,35,.22)!important;
  border:1px solid rgba(var(--seat-rgb),.28)!important;box-shadow:inset 0 3px 8px rgba(0,0,0,.22)!important;display:flex!important;align-items:center!important;justify-content:center!important}
.board-player-seat .table-guardian-slot img{width:92%!important;height:94%!important;aspect-ratio:auto!important;object-fit:contain!important;border-radius:4px!important;transform:none!important;filter:drop-shadow(0 3px 4px rgba(0,0,0,.38))!important}
.board-player-seat .table-guardian-slot:hover img{transform:translateY(-2px) scale(1.02)!important}
.board-player-seat .table-guardian-slot.pending-team{border-color:#fff!important;box-shadow:0 0 0 2px rgba(var(--seat-rgb),.70),0 0 18px rgba(var(--seat-rgb),.80)!important}
.board-player-seat .table-guardian-slot.lead{border-color:#ffe36a!important;box-shadow:0 0 0 1px rgba(255,226,106,.5),0 0 12px rgba(255,218,74,.34)!important}
.card-zoom-mini{width:15px!important;height:15px!important;font-size:9px!important;right:-3px!important;bottom:-3px!important}
.lead-pin{font-size:4px!important}

/* Power cards live in the printed Hand box for each player. */
.seat-power-hand{position:absolute!important;z-index:44!important;top:0!important;bottom:auto!important;min-width:0!important;max-width:none!important;width:41%!important;height:100%!important;
  padding:3px!important;border-radius:7px!important;background:linear-gradient(180deg,rgba(3,15,48,.88),rgba(2,9,30,.82))!important;border:1px solid rgba(var(--seat-rgb),.55)!important;
  box-shadow:0 0 16px rgba(var(--seat-rgb),.26),inset 0 0 12px rgba(0,0,0,.28)!important;display:flex!important;flex-direction:column!important;gap:2px!important}
.board-seat-tl .seat-power-hand{left:104%!important}.board-seat-tr .seat-power-hand{left:105%!important}.board-seat-bl .seat-power-hand{left:109%!important}.board-seat-br .seat-power-hand{left:115%!important}
.seat-power-label{font-size:clamp(4px,.40vw,6px)!important;line-height:1!important;color:#fff!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.seat-power-cards{display:flex!important;flex:1!important;min-height:0!important;align-items:center!important;justify-content:center!important;gap:0!important;overflow:visible!important;padding:0!important}
.onboard-power-card{position:relative!important;flex:0 0 42%!important;margin-left:-18%!important}.onboard-power-card:first-child{margin-left:0!important}
.onboard-power-play img{width:100%!important;aspect-ratio:2/3!important;border-radius:3px!important;filter:drop-shadow(0 2px 3px rgba(0,0,0,.42))!important}
.onboard-power-card .card-zoom-mini{display:none!important}.onboard-pass{font-size:clamp(4px,.36vw,6px)!important;padding:2px 4px!important;line-height:1!important}
.no-power-note{font-size:5px!important;padding:2px!important;text-align:center}

/* Exact Action Zone deck wells on the new mat. */
.board-deck,.board-discard{position:absolute!important;transform:none!important;padding:2px!important;background:rgba(2,10,34,.16)!important;border:1px solid rgba(255,255,255,.10)!important;border-radius:9px!important;box-shadow:none!important}
.challenge-deck-slot{left:31.55%!important;top:35.25%!important;width:8.10%!important;bottom:auto!important}
.mission-deck-slot{left:40.80%!important;top:35.25%!important;width:8.10%!important;bottom:auto!important;right:auto!important}
.power-deck-slot{left:50.05%!important;top:35.25%!important;width:8.10%!important;bottom:auto!important}
.big-deck-slot{left:59.35%!important;top:35.25%!important;width:8.15%!important;bottom:auto!important}
.challenge-discard-slot{display:block!important;left:19.55%!important;top:36.55%!important;width:9.55%!important;bottom:auto!important}
.power-discard-slot{left:69.70%!important;top:36.55%!important;width:9.55%!important;bottom:auto!important}
.board-deck .deck-depth,.board-discard .discard-well{width:100%!important;border-radius:6px!important}
.board-deck>span,.board-discard>span{font-size:clamp(4px,.38vw,6px)!important}.board-deck>small,.board-discard>small{font-size:clamp(4px,.34vw,5px)!important}

/* Active Cards row: Challenge | Mission | Power stack (two wells). */
.board-zone{position:absolute!important;padding:1px!important;border-radius:5px!important;background:rgba(2,10,34,.16)!important;border:1px solid rgba(255,255,255,.08)!important;box-shadow:inset 0 3px 8px rgba(0,0,0,.18)!important}
.challenge-live-zone{left:32.35%!important;top:56.45%!important;bottom:auto!important;width:6.20%!important;height:8.25%!important}
.mission-live-zone{left:39.15%!important;top:56.45%!important;bottom:auto!important;width:6.20%!important;height:8.25%!important}
.power-live-zone{left:46.00%!important;top:56.45%!important;bottom:auto!important;width:13.10%!important;height:8.25%!important}
.board-zone-label{display:none!important}.mission-live-zone .card-open{width:66%!important;height:100%!important}.mission-live-zone .card-open img{height:100%!important;width:100%!important;object-fit:contain!important}
.board-challenge-card{width:64%!important}.board-challenge-card img{max-height:100%!important}.power-fan-card{width:17%!important}
.power-fan-card.pf1{transform:rotate(-7deg) translateX(-120%)!important}.power-fan-card.pf2{transform:rotate(-2deg) translateX(-38%)!important}.power-fan-card.pf3{transform:rotate(3deg) translateX(42%)!important}.power-fan-card.pf4{transform:rotate(8deg) translateX(122%)!important}

/* Outside the board stays informational only. */
.premium-table-console{margin-top:8px!important}.premium-instruction{margin:7px 0!important}.hand-zone{display:none!important}

/* RC7 setup: name + seat + color customization. */
.rc7-setup{max-width:1450px;margin:0 auto}.compact-setup-grid{margin-bottom:16px}.player-identity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}
.player-identity-card{border:1px solid rgba(var(--pick-rgb),.58);border-radius:18px;padding:14px;background:linear-gradient(180deg,rgba(var(--pick-rgb),.10),rgba(5,18,58,.72));box-shadow:0 10px 24px rgba(0,0,0,.2)}
.player-id-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}.player-id-num{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--pick);color:#07133c;font-weight:1000;border:2px solid rgba(255,255,255,.72)}
.player-id-head strong{display:block;font-size:18px}.player-id-head small{display:block;color:#c7d7f8;font-size:11px;margin-top:2px}.player-name-field{margin-bottom:10px}.identity-pick>label{display:block;font-size:10px;font-weight:1000;color:#bcd0f5;letter-spacing:.08em;margin:8px 0 5px}
.seat-choice-grid,.color-choice-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.seat-choice,.color-choice{min-height:38px;border-radius:10px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.06);color:#fff;font-size:10px;font-weight:900;padding:5px}
.seat-choice span{font-size:15px;margin-right:3px}.seat-choice.active{background:linear-gradient(180deg,#ffe66b,#ffc126);color:#08133b;border-color:#fff0a8}.color-choice{display:flex;align-items:center;justify-content:center;gap:5px}.color-choice i{width:13px;height:13px;border-radius:50%;background:var(--pick);box-shadow:0 0 9px var(--pick);border:1px solid #fff}.color-choice.active{border-color:var(--pick);box-shadow:0 0 0 2px color-mix(in srgb,var(--pick) 35%,transparent),0 0 14px color-mix(in srgb,var(--pick) 28%,transparent)}

@media(max-width:900px){
  .game-screen .premium-board{aspect-ratio:3/2!important}.player-identity-grid{grid-template-columns:1fr}.seat-choice-grid,.color-choice-grid{grid-template-columns:repeat(2,1fr)}
  .board-player-seat .premium-seat-head{min-height:15px!important;padding:2px 5px!important}.board-player-seat .premium-seat-head strong{font-size:7px!important}.seat-status{font-size:4px!important}
  .card-zoom-mini{display:none!important}.seat-power-hand{padding:2px!important}.onboard-pass{display:none!important}
}
@media(max-width:650px) and (orientation:portrait){
  .game-screen .premium-board{aspect-ratio:3/2!important}.board-player-seat{transform:none!important}.board-player-seat .premium-seat-head strong{display:block!important}
  .seat-power-hand{width:42%!important}.board-seat-tl .seat-power-hand,.board-seat-tr .seat-power-hand,.board-seat-bl .seat-power-hand,.board-seat-br .seat-power-hand{left:104%!important}
}
/* RC7 final nameplate opacity: completely masks the printed PLAYER # label underneath. */
.board-player-seat .premium-seat-head{
  background:linear-gradient(180deg,rgba(var(--seat-rgb),.99),rgba(var(--seat-rgb),.92))!important;
  box-shadow:0 0 17px rgba(var(--seat-rgb),.55),inset 0 1px rgba(255,255,255,.28)!important;
}
.board-seat-tl .premium-seat-head{left:-16%!important;width:150%!important}
.board-seat-tr .premium-seat-head{left:15%!important;width:148%!important}
.board-seat-bl .premium-seat-head{left:-16%!important;width:150%!important}
.board-seat-br .premium-seat-head{left:17%!important;width:148%!important}

/* ============================================================
   GUARDIANS UNIVERSE RC8 — ONE SCREEN / NO SCROLL TABLETOP
   The board IS the screen. Every active choice is touchable.
   ============================================================ */
html,body{overscroll-behavior:none}
button,[data-action],[data-open-card],[data-open-image]{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
body.in-game{margin:0!important;width:100vw!important;height:100dvh!important;min-height:100dvh!important;overflow:hidden!important;background:#02091e!important}
body.in-game .topbar{display:none!important}
body.in-game .app-shell{width:100vw!important;height:100dvh!important;min-height:0!important;overflow:hidden!important;display:block!important}
body.in-game .screen.game-screen{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;max-width:none!important;margin:0!important;padding:0!important;overflow:hidden!important;display:grid!important;place-items:center!important}
body.in-game .premium-table-arena.universe-table{display:grid!important;place-items:center!important;width:100vw!important;height:100dvh!important;max-width:none!important;margin:0!important;padding:0!important;overflow:hidden!important}
body.in-game .premium-center-stage{display:grid!important;place-items:center!important;width:100%!important;height:100%!important;max-width:none!important;overflow:hidden!important}
body.in-game .premium-board.universe-board{width:min(calc(100vw - 4px),150dvh)!important;height:auto!important;max-width:none!important;max-height:calc(100dvh - 4px)!important;aspect-ratio:3/2!important;margin:auto!important;border-radius:clamp(8px,1.2vw,24px)!important;border:2px solid rgba(255,218,74,.64)!important;box-shadow:0 0 0 2px rgba(25,94,255,.22),0 0 34px rgba(24,121,255,.22)!important}
body.in-game .physical-mat{object-fit:fill!important;filter:saturate(1.09) brightness(.86) contrast(1.025)!important}
body.in-game .mobile-orientation-tip,body.in-game .premium-hud,body.in-game .mission-loop,body.in-game .premium-table-console,body.in-game .premium-instruction,body.in-game>.game-instruction-strip{display:none!important}

/* Live status replaces every below-board panel and lives inside the printed right information rail. */
.universe-live-hud{position:absolute;z-index:62;left:82.05%;top:29.2%;width:15.6%;height:35.9%;padding:.55%;border-radius:1.2%;overflow:hidden;
  display:flex;flex-direction:column;gap:1.2%;background:linear-gradient(180deg,rgba(2,12,45,.94),rgba(4,20,66,.91));border:1px solid rgba(117,221,255,.52);
  box-shadow:0 0 20px rgba(52,191,255,.20),inset 0 0 18px rgba(0,0,0,.34);backdrop-filter:blur(5px)}
.universe-hud-head{display:flex;align-items:center;justify-content:space-between;gap:3%;font-size:clamp(5px,.52vw,9px);color:#fff3a0;line-height:1.05}
.universe-hud-head strong{color:#70eaff;font-size:clamp(6px,.62vw,10px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.universe-hud-head span{white-space:nowrap;color:#e8efff}
.universe-turn-line{font-size:clamp(5px,.47vw,8px);font-weight:1000;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:2.2% 3%;border-radius:999px;background:rgba(255,213,74,.12);border:1px solid rgba(255,213,74,.26)}
.universe-meters{display:grid;grid-template-columns:1fr;gap:2px}
.universe-live-hud .meter{padding:2px 4px!important;border-radius:6px!important;min-height:0!important;background:rgba(255,255,255,.055)!important}
.universe-live-hud .meter-head{font-size:clamp(4px,.40vw,7px)!important;line-height:1!important}
.universe-live-hud .meter-track{height:3px!important;margin-top:2px!important}
.universe-prompt{font-size:clamp(4.5px,.43vw,7px);font-weight:850;line-height:1.12;color:#d9e7ff;padding:2.2% 2%;border-radius:6px;background:rgba(255,255,255,.045);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.universe-action{flex:1;min-height:0;display:flex;overflow:hidden}
.universe-action .action-panel{width:100%!important;height:100%!important;min-height:0!important;margin:0!important;padding:3%!important;border-radius:7px!important;overflow:hidden!important;background:rgba(4,18,58,.76)!important;border:1px solid rgba(255,255,255,.13)!important;box-shadow:none!important;display:flex!important;flex-direction:column!important;gap:2%!important;justify-content:center!important}
.universe-action .action-turn-kicker{font-size:clamp(4px,.38vw,6px)!important;letter-spacing:.08em!important;margin:0!important}
.universe-action .action-panel h3{font-size:clamp(6px,.60vw,10px)!important;line-height:1.02!important;margin:0!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.universe-action .action-panel p{font-size:clamp(4.5px,.43vw,7px)!important;line-height:1.12!important;margin:0!important;color:#d8e4ff!important;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.universe-action .think-prompt,.universe-action .board-touch-prompt{font-size:clamp(4.5px,.42vw,7px)!important;line-height:1.12!important;padding:2.5%!important;margin:0!important;border-radius:5px!important}
.universe-action .resolution-box{grid-template-columns:repeat(3,1fr)!important;gap:2px!important;margin:1px 0!important}
.universe-action .resolution-stat{padding:2px!important;border-radius:5px!important;font-size:clamp(4px,.38vw,6px)!important}
.universe-action .resolution-stat strong{font-size:clamp(6px,.60vw,10px)!important}
.universe-action .result-banner{font-size:clamp(7px,.74vw,12px)!important;margin:0!important;line-height:1!important}
.universe-action .smart-solve-badge{padding:2px!important;margin:0!important;font-size:clamp(4px,.38vw,6px)!important}
.universe-action .primary-btn,.universe-action .secondary-btn,.universe-action .compact-go{min-height:0!important;padding:3.5% 5%!important;border-radius:6px!important;font-size:clamp(5px,.50vw,8px)!important;line-height:1!important;margin:0!important;box-shadow:none!important}
.universe-action .button-row{gap:3px!important;margin:0!important}
.universe-action .target-preview{display:none!important}
.universe-action .challenge-fun-copy{display:-webkit-box!important}

/* Two reward Power cards fit directly in the live HUD. Other reward choices are made by touching the board. */
.reward-power-picks{display:flex;justify-content:center;align-items:center;gap:4%;min-height:0;flex:1}
.reward-power-pick{border:0;background:transparent;padding:0;width:34%;max-height:100%;touch-action:manipulation}
.reward-power-pick img{display:block;width:100%;aspect-ratio:2/3;object-fit:contain;border-radius:5px;filter:drop-shadow(0 4px 6px rgba(0,0,0,.45))}
.reward-pick-ready .table-guardian-slot{animation:rewardPickPulse .85s ease-in-out infinite alternate!important;border-color:#ffe66a!important}
.reward-mate-ready .premium-seat-head{animation:rewardPickPulse .85s ease-in-out infinite alternate!important}
@keyframes rewardPickPulse{to{filter:brightness(1.35);box-shadow:0 0 18px rgba(255,230,90,.9)!important}}
.seat-reward-choice{position:absolute;inset:0;z-index:8;border:0;border-radius:inherit;background:rgba(255,225,80,.12);color:#fff;font-size:0;cursor:pointer}
.seat-reward-choice::after{content:'TAP TO GIVE DRAW';font-size:clamp(4px,.42vw,7px);font-weight:1000;text-shadow:0 1px 3px #000}
.tap-again-pin{position:absolute;left:50%;bottom:2px;transform:translateX(-50%);z-index:5;border-radius:999px;background:#fff;color:#061642;padding:1px 3px;font-size:clamp(3px,.30vw,5px);font-weight:1000;white-space:nowrap;box-shadow:0 0 8px rgba(255,255,255,.7)}

/* Board utility buttons: no header bar, no lost vertical space. */
.universe-board-tools{position:absolute;z-index:80;right:1.05%;top:1.2%;display:grid;grid-template-columns:repeat(5,1fr);gap:3px;width:12.8%;pointer-events:auto}
.universe-board-tools button{aspect-ratio:1;border-radius:28%;border:1px solid rgba(255,255,255,.32);background:rgba(3,15,49,.82);color:#fff;font-weight:1000;font-size:clamp(7px,.72vw,12px);box-shadow:0 3px 8px rgba(0,0,0,.28);padding:0}
.universe-board-tools button:hover,.universe-board-tools button:focus-visible{background:#173e95;outline:1px solid #7be9ff;outline-offset:1px;transform:translateY(-1px)}

/* Touch targets and active affordances. */
.card-zoom-mini{width:22px!important;height:22px!important;display:grid!important;place-items:center!important;font-size:11px!important;right:-6px!important;bottom:-6px!important;z-index:50!important;background:#071d58!important;border:1px solid rgba(255,255,255,.7)!important;box-shadow:0 2px 8px rgba(0,0,0,.42)!important}
@media(max-width:900px){.card-zoom-mini{width:18px!important;height:18px!important;font-size:9px!important;right:-5px!important;bottom:-5px!important}}
.board-deck,.board-discard,.table-guardian-slot,.onboard-power-play,.onboard-pass,.card-open,.completed-mini,.power-fan-card{cursor:pointer!important}
.board-deck.deck-active{animation:universeDeckCall 1s ease-in-out infinite alternate!important;z-index:70!important}
@keyframes universeDeckCall{to{filter:brightness(1.38) drop-shadow(0 0 12px #fff) drop-shadow(0 0 22px #ffd84b);transform:translateY(-2px)!important}}
.board-player-seat.action-now .seat-panel-glow{opacity:1!important;animation:rewardPickPulse .75s ease-in-out infinite alternate!important}

/* Hide now-obsolete external gameplay UI even if a browser restores older DOM. */
body.in-game .premium-table-console,body.in-game .game-instruction-strip,body.in-game .board-top,body.in-game .mission-loop,body.in-game .hand-zone{display:none!important}

/* Landscape is ideal, but portrait still stays perfectly framed with no document scroll. */
@media(orientation:portrait){
  body.in-game .premium-board.universe-board{width:calc(100vw - 4px)!important;max-height:none!important}
  .universe-live-hud{left:81.6%;width:16%;top:28.9%;height:36.5%}
  .universe-board-tools{width:15%;right:.7%;top:.7%}
}

/* Fullscreen/safe-area polish. */
@supports(padding:max(0px)){
  body.in-game .screen.game-screen{padding:max(0px,env(safe-area-inset-top)) max(0px,env(safe-area-inset-right)) max(0px,env(safe-area-inset-bottom)) max(0px,env(safe-area-inset-left))!important}
}
/* RC8 always keeps the board-native PASS control available, including phones/tablets. */
body.in-game .onboard-pass{display:block!important;pointer-events:auto!important;min-height:16px!important}
/* Hard-center the 3:2 tabletop against the actual viewport; legacy grid areas may not offset it. */
body.in-game .premium-center-stage{position:fixed!important;inset:0!important;grid-area:auto!important;width:100vw!important;height:100dvh!important;margin:0!important;padding:0!important}
body.in-game .premium-board.universe-board{position:absolute!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%) translateZ(0)!important;box-sizing:border-box!important}
/* Guardians Universe identity without redrawing the approved playmat. */
.universe-brand-badge{position:absolute;z-index:18;left:50%;top:17.4%;transform:translateX(-50%);padding:.15% 1.2%;border-radius:999px;background:linear-gradient(180deg,#ffe86c,#ffb91e);border:1px solid rgba(255,255,255,.9);color:#06194d;font-size:clamp(5px,.5vw,9px);font-weight:1000;letter-spacing:.18em;box-shadow:0 0 11px rgba(255,215,57,.42);pointer-events:none}
body.in-game .universe-action .primary-btn,body.in-game .universe-action .secondary-btn,body.in-game .universe-action .compact-go{min-height:22px!important;padding:3px 5px!important}
body.in-game .onboard-pass{min-height:16px!important;padding:2px 4px!important}

/* Phones/tablets held upright never create a tiny, frustrating board. We keep one clean screen and ask for landscape. */
.rotate-overlay{display:none}
@media(orientation:portrait) and (max-width:1100px){
  body.in-game .rotate-overlay{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 38%,#123c93,#020a25 72%);color:#fff;text-align:center;overflow:hidden}
  body.in-game .rotate-overlay>div{max-width:420px;padding:28px;border-radius:26px;border:1px solid rgba(255,255,255,.22);background:rgba(4,18,60,.84);box-shadow:0 24px 70px rgba(0,0,0,.45)}
  body.in-game .rotate-overlay strong{display:block;font-size:clamp(32px,10vw,62px);color:#ffd84e;line-height:.95;margin-bottom:16px}
  body.in-game .rotate-overlay span{display:block;font-size:clamp(16px,4.5vw,24px);line-height:1.35;color:#d9e8ff}
}
@media(orientation:portrait) and (max-width:1100px){body.in-game .premium-board.universe-board{visibility:hidden!important}}

/* ============================================================
   GUARDIANS UNIVERSE RC9 — FINAL 4:3 BOARD / LEAD GUARDIANS
   Final user-approved board: four visible Guardian Team slots +
   one larger LEAD Guardian in the printed Hand well.
   ============================================================ */
body.in-game{overflow:hidden!important;background:#010719!important}
body.in-game .screen.game-screen{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;max-width:none!important;padding:0!important;margin:0!important;overflow:hidden!important}
body.in-game .premium-table-arena.universe-table{width:100vw!important;height:100dvh!important;display:grid!important;place-items:center!important;overflow:hidden!important}
body.in-game .premium-center-stage{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;margin:0!important;padding:0!important}
body.in-game .premium-board.universe-board{position:absolute!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%) translateZ(0)!important;width:min(calc(100vw - 4px),calc((100dvh - 4px)*1.3333333))!important;height:min(calc(100dvh - 4px),calc((100vw - 4px)*.75))!important;aspect-ratio:4/3!important;max-width:none!important;max-height:none!important;margin:0!important;border-radius:clamp(8px,1.1vw,22px)!important;border:2px solid rgba(90,225,255,.72)!important;box-shadow:0 0 0 2px rgba(25,94,255,.24),0 0 40px rgba(24,121,255,.24)!important;overflow:hidden!important;background:#020b2d!important}
body.in-game .physical-mat{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:fill!important;opacity:1!important;filter:saturate(1.035) brightness(.97) contrast(1.015)!important}

/* Ambient universe motion stays subtle so the printed mat remains authoritative. */
.universe-ambient{position:absolute;inset:0;z-index:4;pointer-events:none;overflow:hidden;mix-blend-mode:screen}
.universe-ambient i{position:absolute;left:var(--x);top:var(--y);width:calc(2px * var(--s));height:calc(2px * var(--s));border-radius:50%;background:#fff7a6;box-shadow:0 0 5px #fff,0 0 12px #44d8ff;animation:universeTwinkle var(--d) ease-in-out infinite alternate;opacity:.18}
.universe-ambient i:nth-child(3n){background:#65ddff;box-shadow:0 0 6px #65ddff,0 0 14px #237dff}
.universe-ambient i:nth-child(4n){background:#ff7bd2;box-shadow:0 0 6px #ff7bd2,0 0 12px #b84cff}
@keyframes universeTwinkle{0%{opacity:.08;transform:scale(.55) translateY(0)}55%{opacity:.72;transform:scale(1.35) translateY(-2px)}100%{opacity:.2;transform:scale(.8) translateY(2px)}}
.board-sheen{z-index:5!important;opacity:.62!important;background:linear-gradient(112deg,transparent 0 37%,rgba(255,255,255,.08) 45%,rgba(105,234,255,.10) 49%,transparent 58% 100%),radial-gradient(circle at 50% 50%,rgba(60,211,255,.11),transparent 35%)!important;background-size:230% 100%,100% 100%!important;animation:universeSheen 8s linear infinite!important;pointer-events:none!important}
@keyframes universeSheen{0%{background-position:120% 0,0 0}100%{background-position:-120% 0,0 0}}
.universe-board::after{content:"";position:absolute;z-index:3;left:24%;top:22%;width:58%;height:48%;border-radius:50%;pointer-events:none;background:radial-gradient(ellipse at center,rgba(72,209,255,.08),transparent 62%);filter:blur(4px);animation:planetBreath 4.8s ease-in-out infinite alternate}
@keyframes planetBreath{to{opacity:.42;transform:scale(1.025)}}

/* Player wells from the final 1448×1086 board. */
.on-board-seats{position:absolute!important;inset:0!important;z-index:30!important;pointer-events:none!important}
.board-player-seat{position:absolute!important;height:11.35%!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;transform:none!important;overflow:visible!important;pointer-events:auto!important}
.board-seat-tl{left:2.35%!important;top:10.35%!important;width:20.25%!important}
.board-seat-tr{left:67.35%!important;top:10.35%!important;width:20.25%!important}
.board-seat-bl{left:2.35%!important;top:74.35%!important;width:20.45%!important}
.board-seat-br{left:67.70%!important;top:74.35%!important;width:20.25%!important}
.board-player-seat .seat-panel-glow{position:absolute!important;z-index:-1!important;left:-2.5%!important;top:-6%!important;width:141.5%!important;height:112%!important;border:2px solid var(--seat-color)!important;border-radius:10px!important;opacity:.28!important;box-shadow:0 0 18px rgba(var(--seat-rgb),.28),inset 0 0 13px rgba(var(--seat-rgb),.08)!important;transition:.25s opacity,.25s filter!important}
.board-player-seat.action-now .seat-panel-glow{opacity:.95!important;animation:rc9SeatPulse .7s ease-in-out infinite alternate!important}
@keyframes rc9SeatPulse{to{filter:brightness(1.35);box-shadow:0 0 24px rgba(var(--seat-rgb),.72),inset 0 0 18px rgba(var(--seat-rgb),.20)!important}}

/* Player name floats directly over the printed PLAYER # header. */
.board-player-seat .premium-seat-head{position:absolute!important;z-index:55!important;top:-67%!important;left:17%!important;width:82%!important;height:34%!important;min-height:0!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:3%!important;padding:1.5% 4%!important;border-radius:7px!important;background:linear-gradient(180deg,rgba(var(--seat-rgb),.97),rgba(var(--seat-rgb),.62))!important;border:1px solid rgba(255,255,255,.58)!important;box-shadow:0 0 14px rgba(var(--seat-rgb),.42),inset 0 1px rgba(255,255,255,.28)!important;color:#fff!important;text-shadow:0 2px 4px rgba(0,0,0,.74)!important;white-space:nowrap!important}
.board-player-seat .premium-seat-head strong{font-size:clamp(7px,.82vw,13px)!important;max-width:62%!important;overflow:hidden!important;text-overflow:ellipsis!important}
.seat-status{font-size:clamp(4px,.40vw,7px)!important;font-weight:1000!important;padding:2px 4px!important;border-radius:999px!important;background:rgba(2,9,32,.76)!important;border:1px solid rgba(255,255,255,.22)!important}
.seat-power-count{font-size:clamp(5px,.44vw,8px)!important;font-weight:1000!important;color:#fff7ae!important;text-shadow:0 0 8px #ffcf34}

/* Four Guardian Team wells are now bigger and easier to read. */
.board-player-seat .premium-seat-cards{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:2.2%!important;margin:0!important;width:100%!important;height:100%!important;align-items:stretch!important}
.guardian-slot-wrap{position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;height:100%!important;min-width:0!important}
.board-player-seat .table-guardian-slot{width:100%!important;height:100%!important;padding:1px!important;border-radius:5px!important;background:rgba(1,8,29,.14)!important;border:1px solid rgba(var(--seat-rgb),.24)!important;box-shadow:inset 0 2px 6px rgba(0,0,0,.22)!important;display:flex!important;align-items:center!important;justify-content:center!important;touch-action:manipulation!important}
.board-player-seat .table-guardian-slot img{width:96%!important;height:97%!important;aspect-ratio:auto!important;object-fit:contain!important;border-radius:4px!important;filter:drop-shadow(0 3px 4px rgba(0,0,0,.38))!important;transition:.18s transform,.18s filter!important}
.board-player-seat .table-guardian-slot:hover img,.board-player-seat .table-guardian-slot:focus-visible img{transform:translateY(-2px) scale(1.035)!important;filter:drop-shadow(0 6px 7px rgba(0,0,0,.45)) brightness(1.08)!important}
.board-player-seat .table-guardian-slot.pending-team{border-color:#fff!important;box-shadow:0 0 0 2px rgba(var(--seat-rgb),.72),0 0 20px rgba(var(--seat-rgb),.88)!important;animation:guardianReady .65s ease-in-out infinite alternate!important}
@keyframes guardianReady{to{transform:translateY(-2px);filter:brightness(1.18)}}

/* Printed HAND well becomes the fifth, larger Lead Guardian home. */
.seat-lead-guardian{position:absolute!important;z-index:46!important;left:103.7%!important;top:0!important;width:36.8%!important;height:100%!important;padding:2px!important;border-radius:8px!important;background:rgba(2,10,34,.12)!important;border:1px solid rgba(var(--seat-rgb),.34)!important;box-shadow:inset 0 3px 9px rgba(0,0,0,.22),0 0 10px rgba(var(--seat-rgb),.12)!important;display:flex!important;align-items:center!important;justify-content:center!important}
.seat-lead-guardian .guardian-slot-wrap{width:100%!important;height:100%!important}
.seat-lead-guardian .table-guardian-slot{width:100%!important;height:100%!important}
.seat-lead-guardian .table-guardian-slot img{width:94%!important;height:96%!important;object-fit:contain!important;animation:leadGuardianFloat 3.2s ease-in-out infinite!important}
@keyframes leadGuardianFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
.lead-home-label{position:absolute;z-index:60;left:50%;top:-13%;transform:translateX(-50%);padding:1px 5px;border-radius:999px;background:linear-gradient(180deg,#fff18b,#ffc62d);border:1px solid rgba(255,255,255,.9);color:#061644;font-size:clamp(4px,.40vw,7px);font-weight:1000;letter-spacing:.10em;box-shadow:0 0 8px rgba(255,212,59,.55);pointer-events:none}
.seat-lead-guardian .table-guardian-slot.lead{border-color:#ffe36a!important;box-shadow:0 0 0 2px rgba(255,226,106,.38),0 0 20px rgba(255,218,74,.46)!important}
.lead-pin{font-size:clamp(3px,.27vw,5px)!important;padding:1px 2px!important}

/* Make zoom unmistakably touchable. */
.card-zoom-mini{width:30px!important;height:30px!important;right:-9px!important;bottom:-9px!important;border-radius:50%!important;border:2px solid rgba(255,255,255,.90)!important;background:radial-gradient(circle at 35% 30%,#2b8cff,#071a54 68%)!important;color:white!important;font-size:20px!important;line-height:1!important;font-weight:1000!important;box-shadow:0 0 13px rgba(72,190,255,.65),0 4px 9px rgba(0,0,0,.42)!important;display:grid!important;place-items:center!important;z-index:80!important;touch-action:manipulation!important}
.card-zoom-mini:hover,.card-zoom-mini:focus-visible{transform:scale(1.15)!important;filter:brightness(1.2)!important}
@media(max-width:1100px){.card-zoom-mini{width:24px!important;height:24px!important;font-size:16px!important;right:-7px!important;bottom:-7px!important}}
@media(max-width:760px){.card-zoom-mini{width:20px!important;height:20px!important;font-size:13px!important;right:-5px!important;bottom:-5px!important}}

/* Final Action Zone positions from the approved 4:3 mat. */
.board-deck,.board-discard{position:absolute!important;z-index:35!important;transform:none!important;padding:2px!important;background:rgba(1,8,28,.08)!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:8px!important;box-shadow:none!important;touch-action:manipulation!important}
.challenge-deck-slot{left:28.05%!important;top:32.45%!important;width:9.55%!important;bottom:auto!important}
.mission-deck-slot{left:38.25%!important;top:32.45%!important;width:9.55%!important;bottom:auto!important;right:auto!important}
.power-deck-slot{left:48.65%!important;top:32.45%!important;width:9.55%!important;bottom:auto!important}
.big-deck-slot{left:59.20%!important;top:32.45%!important;width:9.55%!important;bottom:auto!important}
.challenge-discard-slot{display:block!important;left:14.82%!important;top:33.55%!important;width:11.75%!important;bottom:auto!important}
.power-discard-slot{left:70.52%!important;top:33.55%!important;width:11.75%!important;bottom:auto!important}
.board-deck .deck-depth,.board-discard .discard-well{width:100%!important;border-radius:6px!important}
.board-deck:not(.deck-active) .deck-depth{animation:deckBreath 3.4s ease-in-out infinite alternate!important}
.board-deck:nth-of-type(2) .deck-depth{animation-delay:.45s!important}.board-deck:nth-of-type(3) .deck-depth{animation-delay:.9s!important}.board-deck:nth-of-type(4) .deck-depth{animation-delay:1.35s!important}
@keyframes deckBreath{to{transform:translateY(-2px);filter:brightness(1.06)}}
.board-deck>span,.board-discard>span{font-size:clamp(4px,.36vw,6px)!important}.board-deck>small,.board-discard>small{font-size:clamp(4px,.30vw,5px)!important}
.board-deck.deck-active{animation:rc9DeckCall .85s ease-in-out infinite alternate!important;z-index:75!important}
@keyframes rc9DeckCall{to{filter:brightness(1.42) drop-shadow(0 0 9px #fff) drop-shadow(0 0 22px #ffd84b);transform:translateY(-3px)!important}}

/* Four printed ACTIVE CARD wells: Challenge | Mission | Power | Big Mission. */
.board-zone{position:absolute!important;z-index:34!important;padding:1px!important;border-radius:5px!important;background:rgba(2,10,34,.08)!important;border:1px solid rgba(255,255,255,.055)!important;box-shadow:inset 0 3px 8px rgba(0,0,0,.12)!important;overflow:visible!important}
.challenge-live-zone{left:30.02%!important;top:52.78%!important;width:8.05%!important;height:12.40%!important;bottom:auto!important}
.mission-live-zone{top:52.78%!important;width:8.55%!important;height:12.40%!important;bottom:auto!important}
.mission-live-zone.regular-active-zone{left:39.08%!important}
.mission-live-zone.big-active-zone{left:57.62%!important}
.power-live-zone{left:48.56%!important;top:52.78%!important;width:8.30%!important;height:12.40%!important;bottom:auto!important}
.board-zone-label{display:none!important}
.mission-live-zone .card-open{width:90%!important;height:100%!important}.mission-live-zone .card-open img{width:100%!important;height:100%!important;object-fit:contain!important}
.board-challenge-card{width:86%!important}.board-challenge-card img{width:100%!important;max-height:100%!important;object-fit:contain!important}.board-challenge-card.bc2{transform:rotate(6deg) translateX(10%)!important}
.board-power-fan{overflow:visible!important}.power-fan-card{width:44%!important}.power-fan-card.pf1{transform:rotate(-8deg) translateX(-55%)!important}.power-fan-card.pf2{transform:rotate(-2deg) translateX(-16%)!important}.power-fan-card.pf3{transform:rotate(5deg) translateX(26%)!important}.power-fan-card.pf4{transform:rotate(10deg) translateX(62%)!important}
.empty-slot{border-color:rgba(255,255,255,.10)!important;background:rgba(2,10,34,.06)!important}

/* Power choices now open from the central Power Deck, inside the Action Zone. */
.board-power-choice-tray{position:absolute;z-index:95;left:27.8%;top:50.7%;width:41.6%;height:17.1%;padding:.55%;border-radius:1.1%;display:grid;grid-template-columns:1fr;grid-template-rows:auto 1fr auto;gap:2%;background:linear-gradient(180deg,rgba(3,14,48,.97),rgba(2,8,28,.95));border:2px solid rgba(var(--tray-rgb),.78);box-shadow:0 0 26px rgba(var(--tray-rgb),.46),0 14px 30px rgba(0,0,0,.48),inset 0 0 20px rgba(var(--tray-rgb),.08);backdrop-filter:blur(5px);animation:trayRise .34s cubic-bezier(.2,.9,.2,1.2) both}
@keyframes trayRise{from{opacity:0;transform:translateY(14px) scale(.94)}to{opacity:1;transform:none}}
.power-tray-head{display:flex;align-items:center;justify-content:space-between;gap:5%;font-size:clamp(5px,.48vw,8px);color:#fff7ba;line-height:1}
.power-tray-head button{width:20px;height:20px;border-radius:50%;border:1px solid rgba(255,255,255,.4);background:rgba(255,255,255,.1);color:#fff;font-weight:1000;padding:0;line-height:1;touch-action:manipulation}
.power-tray-cards{min-height:0;display:flex;align-items:center;justify-content:center;gap:2%;overflow:visible;padding:0 2%}
.power-choice-card{position:relative;height:100%;max-width:18%;display:flex;align-items:center;justify-content:center}
.power-choice-play{height:100%;border:0;background:transparent;padding:0;touch-action:manipulation}.power-choice-play img{height:100%;width:auto;max-width:100%;object-fit:contain;border-radius:5px;filter:drop-shadow(0 6px 8px rgba(0,0,0,.48));transition:.18s transform,.18s filter}.power-choice-play:hover img,.power-choice-play:focus-visible img{transform:translateY(-5px) scale(1.06);filter:drop-shadow(0 10px 12px rgba(0,0,0,.55)) brightness(1.08)}
.power-choice-zoom{width:23px!important;height:23px!important;font-size:15px!important;right:-8px!important;bottom:-5px!important}
.tray-pass{justify-self:center!important;min-height:18px!important;padding:2px 10px!important;font-size:clamp(5px,.45vw,8px)!important;border-radius:999px!important}

/* Right-side instruction panel becomes the live, touch-first HUD. */
.universe-live-hud{left:83.20%!important;top:28.95%!important;width:14.55%!important;height:34.55%!important;padding:.48%!important;border-radius:1%!important;background:linear-gradient(180deg,rgba(3,16,55,.87),rgba(3,10,38,.82))!important;border:1px solid rgba(89,221,255,.42)!important;box-shadow:0 0 17px rgba(52,191,255,.16),inset 0 0 16px rgba(0,0,0,.26)!important}
.universe-prompt{font-size:clamp(4px,.38vw,6px)!important;-webkit-line-clamp:2!important}
.universe-action .action-panel p{font-size:clamp(4px,.38vw,6px)!important;-webkit-line-clamp:3!important}
.universe-action .action-panel h3{font-size:clamp(6px,.56vw,9px)!important}
.universe-action .primary-btn,.universe-action .secondary-btn,.universe-action .compact-go{font-size:clamp(5px,.46vw,7px)!important;min-height:18px!important}

/* Utility buttons live in the printed footer instead of covering a player bay. */
.universe-board-tools{position:absolute!important;z-index:110!important;left:43%!important;right:auto!important;top:auto!important;bottom:.65%!important;width:14%!important;display:grid!important;grid-template-columns:repeat(5,1fr)!important;gap:3px!important;pointer-events:auto!important}
.universe-board-tools button{aspect-ratio:1.75!important;border-radius:7px!important;font-size:clamp(6px,.52vw,9px)!important;background:rgba(3,15,49,.80)!important}
.universe-brand-badge{left:50%!important;top:19.35%!important;font-size:clamp(4px,.38vw,7px)!important;opacity:.88!important}

/* Touch ripple gives every actionable board element physical feedback. */
.board-tap-ripple{position:absolute;z-index:140;width:12px;height:12px;border-radius:50%;pointer-events:none;transform:translate(-50%,-50%);border:2px solid rgba(255,255,255,.88);box-shadow:0 0 14px #63dfff,0 0 28px #3878ff;animation:tapRipple .58s ease-out forwards}
@keyframes tapRipple{from{opacity:1;transform:translate(-50%,-50%) scale(.4)}to{opacity:0;transform:translate(-50%,-50%) scale(4.8)}}

/* Reduced motion remains respected. */
body.reduce-motion .universe-ambient i,body.reduce-motion .board-sheen,body.reduce-motion .universe-board::after,body.reduce-motion .board-deck .deck-depth,body.reduce-motion .seat-lead-guardian img,body.reduce-motion .board-player-seat.action-now .seat-panel-glow,body.reduce-motion .board-deck.deck-active,body.reduce-motion .board-power-choice-tray{animation:none!important}

/* Landscape-only play for phone/tablet. The board itself never scrolls. */
@media(orientation:portrait) and (max-width:1100px){body.in-game .premium-board.universe-board{visibility:hidden!important}}
@media(orientation:landscape) and (max-height:520px){.card-zoom-mini{width:18px!important;height:18px!important;font-size:12px!important;right:-4px!important;bottom:-4px!important}.premium-seat-head{display:flex!important}.lead-home-label{top:-9%!important}.universe-board-tools{bottom:.3%!important}.board-power-choice-tray{height:18%!important}}
