@font-face{font-family:LocalSerif;src:local('Georgia')}*{box-sizing:border-box} [hidden] { display: none !important; } :root{color-scheme:dark;--gold:#dbc38b;--muted:#8da6b7;--line:#accbd72a;--ink:#edf5f5}html,body{margin:0;width:100%;height:100%;overflow:hidden}body{background:#08131e;color:var(--ink);font-family:Arial,Helvetica,sans-serif}button,input{font:inherit}button{cursor:pointer;color:inherit}button:focus-visible,input:focus-visible{outline:2px solid #bfeaff;outline-offset:4px}button{transition:background .2s,transform .2s}button:hover:not(:disabled){filter:brightness(1.15)}button:disabled{opacity:.38;cursor:default}#app{height:100dvh;min-height:320px;position:relative;isolation:isolate;display:flex;flex-direction:column;padding:0 clamp(20px,5vw,80px);overflow:hidden}#stage{position:absolute;inset:0;z-index:-3}#stage canvas{display:block;width:100%;height:100%}.vignette{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#08121fee 0%,#08121f9c 38%,#08121f15 72%),linear-gradient(0deg,#07131fed,transparent 40%,#07131f96);pointer-events:none}header{height:94px;display:flex;align-items:center;border-bottom:1px solid var(--line);gap:25px;flex-shrink:0}.brand{display:flex;align-items:center;gap:12px;font-family:Georgia,serif;letter-spacing:3px;font-size:21px;line-height:1.1}.brand small{display:block;font-family:Arial,sans-serif;font-size:9px;letter-spacing:4px;margin-top:7px}.brand-mark{font-size:51px;color:var(--gold);line-height:.8}.edition{flex:1;text-align:center;font-size:9px;letter-spacing:2.3px;color:#a9bbc7}.edition span{margin:0 14px;color:var(--gold)}#sound{border:1px solid var(--line);background:#0b1c2a70;border-radius:5px;padding:11px 14px;font-size:16px}#sound span{font-size:11px;margin-left:9px}#topline{display:flex;justify-content:space-between;align-items:center;padding:25px 0}.eyebrow{font-size:10px;letter-spacing:2.7px;color:#9fbbc9;font-weight:600}.gold{color:var(--gold)}.connection{font-size:9px;letter-spacing:1.7px;color:#a0b5c4}.connection i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#a6e4d3;margin-right:8px;box-shadow:0 0 8px #9efddd}.screen{flex:1;min-height:0}.ready{display:grid;grid-template-columns:46% 54%;align-items:center;gap:0}.intro{padding-bottom:28px;z-index:2}h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(35px,4.5vw,69px);line-height:1.1;letter-spacing:-2px;margin:22px 0}h1 em{font-weight:400;color:var(--gold)}.intro>p{font-size:14px;line-height:1.9;color:#aabac8;margin:0 0 30px}.players{display:flex;align-items:center;gap:13px;max-width:410px;margin-bottom:20px}.players label{flex:1;min-width:0}.players label span{font-size:8px;letter-spacing:2px;display:block;color:var(--muted);margin-bottom:10px}.players input{width:100%;border:1px solid #99b2c534;background:#1223339c;color:#eff4f4;padding:13px 12px;border-radius:3px;font-size:12px}.versus{font-family:Georgia,serif;font-style:italic;font-size:12px;color:var(--gold);padding-top:17px}.primary{background:linear-gradient(115deg,#ede0b4,#c7aa6c);border:1px solid #f1dfae;color:#19212b;padding:16px 25px;border-radius:3px;font-size:12px;font-weight:700;letter-spacing:.6px}.intro>.primary{width:100%;max-width:410px;display:flex;justify-content:space-between}.mini-note{font-size:8px;color:#8fa0ae;letter-spacing:1.4px;margin-top:18px}.mini-note b{margin:0 10px;color:var(--gold)}.showcase{height:100%;max-height:600px;position:relative;perspective:1000px;display:flex;align-items:center;justify-content:center;padding-bottom:45px}.hero-card{position:absolute;border-radius:10px;border:1px solid #accbdfb0;overflow:hidden;background:#0d2335;box-shadow:0 25px 60px #000a}.hero-card.main{width:clamp(220px,23vw,338px);transform:rotate(5deg);z-index:2;animation:levitate 7s ease-in-out infinite}.hero-card.main>img{width:100%;aspect-ratio:1;object-fit:cover;display:block}.card-crown{height:27px;display:flex;align-items:center;justify-content:space-between;padding:0 12px;color:#bddae7;font-size:9px}.card-crown span{font-size:7px;letter-spacing:2px}.hero-caption{padding:17px 18px;background:linear-gradient(140deg,#17344a,#0b1c2b)}.hero-caption small{font-size:7px;letter-spacing:2px;color:#a5c5d8}.hero-caption h2{font:21px Georgia,serif;margin:9px 0 18px}.hero-caption>div{border-top:1px solid var(--line);padding-top:13px;display:flex;justify-content:space-between;align-items:center}.hero-caption>div span{font-size:8px;letter-spacing:1px;color:#8eaabf}.hero-caption b{font-size:20px;color:#ebf2f7;font-family:Georgia,serif;margin-left:6px}.hero-caption i{font-style:normal;color:var(--gold)}.side{width:clamp(150px,17vw,230px);filter:brightness(.67);top:26%;}.side img{width:100%;display:block;aspect-ratio:1.12;object-fit:cover}.side span{display:block;text-align:center;padding:18px 6px;font:11px Georgia,serif;letter-spacing:1px}.side.left{left:0%;transform:rotate(-16deg) translateY(5%)}.side.right{right:-1%;transform:rotate(18deg) translateY(2%)}.orbit-label{position:absolute;top:1%;font-size:8px;letter-spacing:4px;color:#7c9bae}.showcase-note{position:absolute;bottom:8%;font-size:8px;letter-spacing:3px;color:#a7c1cf}footer{height:65px;flex-shrink:0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;color:#8199a9;font-size:9px;letter-spacing:1.5px}footer b{font-size:8px;font-weight:400;margin-left:8px}footer>span:first-child{color:var(--gold)}footer button{background:none;border:0;font-size:10px;letter-spacing:.5px}footer button span{border:1px solid var(--line);border-radius:50%;padding:2px 5px;margin-left:8px}.footer-note{font-size:8px}.match{max-width:980px;width:100%;margin:auto;position:relative;overflow:auto;scrollbar-width:thin}.scoreboard{display:flex;justify-content:center;gap:55px;align-items:center;margin:0 0 20px}.scoreboard>div:not(.round){display:flex;align-items:center;gap:12px}.scoreboard span{font-size:12px;color:#b8cddc}.scoreboard strong{font:26px Georgia,serif;color:var(--gold)}.scoreboard small{font-size:8px;letter-spacing:1px;color:var(--muted)}.round{text-align:center}.round>*{display:block}.round b{font:24px Georgia,serif;padding:4px}.round span{font-size:7px}.privacy,.terminal{text-align:center;max-width:600px;margin:3vh auto}.seal{font-size:65px;line-height:1.2;color:var(--gold);text-shadow:0 0 40px #d7c086}.privacy h2,.terminal h2,.reveal>h2{font:clamp(24px,4vw,43px) Georgia,serif;margin:18px 0}.privacy p,.terminal p{line-height:1.8;color:var(--muted);font-size:13px;margin:20px 0 30px}.choice-title{display:flex;justify-content:space-between;align-items:center;margin:0 0 15px}.choice-title h2{font:23px Georgia,serif;margin:6px 0}.secondary{background:#11283b;border:1px solid #a5bdd14d;color:var(--gold);padding:12px;font-size:10px;border-radius:3px}.choice-layout{display:grid;grid-template-columns:210px 1fr;gap:26px}.preview{background:#112839;border:1px solid #aacbdd66;border-radius:8px;overflow:hidden;align-self:start}.preview img{width:100%;aspect-ratio:1;object-fit:contain;display:block}.preview-body{padding:12px}.preview h3{font:18px Georgia,serif;margin:5px 0 12px}.preview small{font-size:8px;color:var(--gold);letter-spacing:1px}.stats{display:flex;justify-content:space-between;color:#a7c2d7;font-size:10px}.stats b{color:#e1eff8;font-size:17px;margin-left:5px}.hand-panel>p{font-size:11px;color:#9ab1c3;margin-top:0}.hand{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.hand-card{position:relative;min-width:0;border:1px solid #7895ad55;border-radius:5px;overflow:hidden;background:#112739;padding:0;text-align:left}.hand-card.selected{border:2px solid var(--gold);box-shadow:0 0 17px #d5c18b38}.hand-card img{width:100%;height:80px;display:block;object-fit:cover;object-position:top}.hand-card .text-art{height:80px;font:11px Georgia,serif}.hand-card .card-label{display:block;font-size:9px;padding:7px 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hand-card .badge{position:absolute;top:4px;left:4px;background:#071524cb;font-size:8px;padding:3px 5px;border-radius:2px}.text-art{min-height:90px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#c3d1dc;padding:12px;background:#102537;gap:8px}.text-art small{font:8px Arial,sans-serif;letter-spacing:.6px;color:#8ca3b4}.preview>.text-art{aspect-ratio:1;font:22px Georgia,serif}.stance{display:flex;gap:10px;margin:13px 0}.stance button{flex:1;border:1px solid #7399b253;background:#102437;padding:11px;font-size:11px;border-radius:3px}.stance button.selected{border-color:var(--gold);color:var(--gold);background:#2c3030}.hand-panel>.primary{width:100%;padding:13px}.reveal{text-align:center}.reveal>h2{margin:10px 0 15px}.duel-cards{display:flex;justify-content:center;gap:35px}.duel-card{width:170px}.duel-card img{width:100%;aspect-ratio:1;object-fit:contain;border-radius:5px;border:1px solid #b6cbdf5a}.duel-card h3{font:15px Georgia,serif;margin:8px}.duel-card p{font-size:10px;color:var(--muted)}.duel-card b{font-size:26px;color:var(--gold);display:block;margin:4px}.reveal>p{font-size:12px;color:#b2c4d1}.modal{position:absolute;inset:0;background:#06101cef;z-index:15;display:grid;place-items:center;padding:20px;backdrop-filter:blur(16px)}.modal-box{max-width:530px;max-height:100%;overflow:auto;background:#102335;border:1px solid #a6bfd441;border-radius:10px;padding:30px}.modal-box h2{font:29px Georgia,serif}.modal-box ol{padding-left:20px;line-height:1.7;font-size:13px;color:#c0d0dc}.modal-box li{padding-bottom:10px}.modal-box .primary{width:100%}.asset-note{font-size:10px;line-height:1.7;color:#a2b2c3}#notice{position:absolute;bottom:75px;left:50%;transform:translateX(-50%);z-index:20;background:#21394a;border:1px solid #a4bbc870;padding:12px 20px;border-radius:4px;font-size:12px;max-width:90%;text-align:center;pointer-events:none}#notice:empty{display:none}@keyframes levitate{50%{transform:translateY(-10px) rotate(3deg)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
@media(max-width:750px){#app{padding:0 22px}header{height:70px}.edition{display:none}.brand{font-size:17px;flex:1}.brand-mark{font-size:41px}.brand small{font-size:7px}#sound span{display:none}#topline{padding:15px 0}.connection{font-size:7px;letter-spacing:.4px}.eyebrow{font-size:8px;letter-spacing:1.8px}.ready{grid-template-columns:1fr;grid-template-rows:45% 55%;gap:0}.showcase{grid-row:1;padding-bottom:5px;min-height:0}.intro{grid-row:2;padding:0;text-align:center}.hero-card.main{width:150px}.card-crown{height:18px;font-size:6px}.card-crown span{font-size:5px}.hero-caption{padding:9px 11px}.hero-caption small{font-size:5px}.hero-caption h2{font-size:13px;margin:5px 0 9px}.hero-caption>div{padding-top:6px}.hero-caption>div span{font-size:5px}.hero-caption b{font-size:13px}.side{width:116px;top:19%}.side.left{left:calc(50% - 154px)}.side.right{right:calc(50% - 154px)}.side span{font-size:7px;padding:10px 3px}.orbit-label,.showcase-note{display:none}h1{font-size:32px;letter-spacing:-1px;line-height:1.08;margin:8px 0 9px}.intro>p{font-size:11px;line-height:1.5;margin:0 0 13px}.players{margin:0 auto 11px;max-width:400px;text-align:left;gap:10px}.players label span{font-size:6px;margin-bottom:5px}.players input{padding:9px;font-size:11px}.intro>.primary{margin:auto;padding:12px 18px}.mini-note{font-size:6px;margin-top:10px;letter-spacing:.8px}.intro>.eyebrow{display:none}footer{height:43px;font-size:7px}footer b{font-size:6px}footer .footer-note{display:none}.scoreboard{gap:15px;margin-bottom:12px}.scoreboard>div:not(.round){gap:5px;flex-wrap:wrap;max-width:35%;justify-content:center}.scoreboard span{font-size:10px}.scoreboard small{font-size:6px}.choice-layout{grid-template-columns:105px 1fr;gap:12px}.preview-body{padding:7px}.preview h3{font-size:13px}.preview small{font-size:6px}.stats{display:block;font-size:8px}.stats span{display:block;padding:4px 0}.stats b{font-size:13px}.hand{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.hand-card img,.hand-card .text-art{height:52px}.hand-card .text-art{font-size:8px;padding:4px;min-height:52px}.hand-card .text-art small{font-size:5px}.hand-card .card-label{font-size:7px;padding:5px 3px}.choice-title h2{font-size:18px}.secondary{font-size:8px;padding:9px}.hand-panel>p{font-size:9px}.stance{gap:5px;margin:8px 0}.stance button{font-size:9px;padding:8px 3px}.hand-panel>.primary{font-size:9px;padding:11px 3px}.preview>.text-art{font-size:14px}.preview>.text-art small{font-size:7px}.duel-cards{gap:18px}.duel-card{width:130px}.duel-card h3{font-size:12px}.duel-card p{font-size:9px}.privacy{margin:7vh auto}.privacy h2{font-size:29px}.privacy .primary{font-size:11px;padding:14px}.round b{font-size:19px}.modal-box{padding:20px}.modal-box h2{font-size:23px}}
@media(max-height:720px) and (max-width:750px){header{height:55px}#topline{padding:9px 0}.hero-card.main{width:120px}.side{width:100px}.hero-caption h2{font-size:11px}.hero-caption small{display:none}.hero-caption{padding:7px}.hero-caption>div{padding-top:4px}.side.left{left:calc(50% - 128px)}.side.right{right:calc(50% - 128px)}h1{font-size:27px;margin:4px 0 7px}.intro>p{font-size:10px;margin-bottom:8px}.mini-note{margin-top:7px}.scoreboard{margin-bottom:5px}.choice-title{margin-bottom:8px}.hand-card img{height:42px}.privacy{margin:1vh auto}.seal{font-size:46px}.privacy p{margin:14px 0}.match{padding-bottom:8px}}
@media(max-height:560px) and (min-width:751px){header{height:54px}#topline{padding:10px 0}footer{height:38px}h1{font-size:35px;margin:10px 0}.intro>p{margin-bottom:14px;font-size:11px}.hero-card.main{width:200px}.side{width:140px}.showcase{padding-bottom:0}.hero-caption{padding:10px}.hero-caption h2{font-size:16px;margin:6px 0}.orbit-label,.showcase-note{display:none}.players{margin-bottom:10px}.players input{padding:8px}.intro{padding-bottom:0}.mini-note{margin-top:8px}.intro>.primary{padding:12px}.scoreboard{margin-bottom:5px}.choice-layout{grid-template-columns:150px 1fr}.hand-card img{height:50px}.privacy{margin:0 auto}.seal{font-size:35px}.privacy p{margin:10px 0}.duel-card{width:110px}.reveal>h2{font-size:24px;margin:5px}.duel-card p{margin:3px}.duel-card b{font-size:18px}}

#treasure{display:flex;align-items:center;gap:8px;padding:5px 10px}.treasure-art{width:42px;height:42px;object-fit:contain;border-radius:4px}.duel-winner{animation:card-triumph 1.15s ease-out both}.duel-winner img{box-shadow:0 0 24px #efcd7080;outline:2px solid #efcd70}.duel-loser{animation:card-defeat 1.15s ease-out both}.terminal{position:relative;isolation:isolate}.victory-sparks{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:-1}.victory-sparks i{display:none}.victory .victory-sparks i{display:block;position:absolute;left:calc(4% + var(--spark)*4.8%);top:-15px;width:7px;height:15px;background:#efcd70;animation:victory-spark 2.8s ease-out both;animation-delay:calc(var(--spark)*.045s)}.victory .victory-sparks i:nth-child(even){background:#8de5ff}.victory .seal{color:#efcd70;animation:victory-seal 1.3s ease-out both}.victory h2{animation:victory-title 1s ease-out both;color:#efcd70}@keyframes card-triumph{0%{transform:scale(.96)}40%{transform:translateY(-12px) scale(1.05)}100%{transform:translateY(-5px)}}@keyframes card-defeat{0%,25%{transform:translateX(0)}40%{transform:translateX(-7px) rotate(-3deg)}55%{transform:translateX(7px) rotate(3deg)}100%{transform:translateY(10px) scale(.94);opacity:.55;filter:saturate(.3)}}@keyframes victory-seal{0%{transform:scale(.5) rotate(-100deg);opacity:0}65%{transform:scale(1.15) rotate(10deg)}100%{transform:scale(1) rotate(0);opacity:1;text-shadow:0 0 30px #efcd7080}}@keyframes victory-title{from{transform:translateY(18px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes victory-spark{0%{transform:translateY(0) rotate(0);opacity:0}12%{opacity:1}100%{transform:translateY(55vh) rotate(540deg);opacity:0}}@media(prefers-reduced-motion:reduce){.victory-sparks{display:none}.duel-loser{opacity:.65}}

:root{--gold:#f3d99e;--muted:#b8cadd;--line:#b4d7ff38;--ink:#f4f8ff}
body{background:#08131e url('../assets/images/arena-background.png') center/cover no-repeat;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
#stage{opacity:.35}
.vignette{background:linear-gradient(90deg,#061326dc,#07172855 62%,#07172835),linear-gradient(0deg,#061124dc,transparent 60%,#07152890)}
header{border-color:#c6e5ff30}.brand{font-family:inherit;font-weight:750}.brand-mark{color:#a4e7ff;text-shadow:0 0 22px #56bdff88}
.primary{border-radius:12px;background:linear-gradient(115deg,#bcefff,#77c8ff);border-color:#c4f1ff;color:#08213b;box-shadow:0 5px 24px #188dff30;letter-spacing:.2px}
.primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 28px #42baff50}
.players input,#sound,.secondary,.stance button{border-radius:10px;background:#102a42c9;border-color:#b9dcff45}
.players input:focus{background:#153651}.hero-card{border-radius:16px;box-shadow:0 24px 60px #0009,0 0 28px #8ad8ff20}
.scoreboard{padding:12px 16px;margin-top:12px;border:1px solid var(--line);border-radius:16px;background:#081b30d9;backdrop-filter:blur(16px)}
.scoreboard strong{font-family:inherit;font-weight:750;color:#aee8ff}.round b{font-family:inherit;font-weight:700}
#choose,.privacy,.reveal,.terminal{background:linear-gradient(140deg,#102840e8,#091a2de3);border:1px solid var(--line);border-radius:20px;padding:clamp(12px,2vw,24px);box-shadow:0 18px 50px #0004;backdrop-filter:blur(14px)}
.choice-title h2,.privacy h2,.terminal h2,.reveal>h2{font-family:inherit;font-weight:650;letter-spacing:-.6px}
.preview{border-radius:14px;background:#102b43}.hand-card{border-radius:10px;background:linear-gradient(145deg,#1c3c55,#102538);transition:transform .18s,border-color .18s,box-shadow .18s}
.hand-card:hover:not(:disabled){transform:translateY(-3px);border-color:#a5ddff}.hand-card.selected{border-color:#a3e5ff;box-shadow:0 0 0 2px #65c7ff40,0 6px 20px #4ebdff25}
.stance button.selected{background:#1b4963;border-color:#a3e5ff;color:#d5f5ff}.hand-panel>p{color:#c2d6e8}
.single-use{position:absolute;right:4px;top:4px;background:#f2d291;color:#2b210f;font-size:8px;font-weight:800;padding:3px 5px;border-radius:5px;letter-spacing:.4px}
.single-use-note{font-size:10px;color:#f3d99e;line-height:1.5;margin:10px 0 0}
.duel-cards{position:relative;isolation:isolate}.duel-card{min-width:0}.duel-card img{border-radius:12px}
.capture-lightning{position:absolute;inset:0;pointer-events:none;z-index:3;overflow:visible;--travel:1}.capture-left{--travel:-1;transform:scaleX(-1)}
.lightning-bolt,.lightning-core{position:absolute;left:18%;top:30%;width:64%;height:26%;background:#8cdeff;clip-path:polygon(0 42%,24% 19%,21% 42%,48% 27%,43% 51%,73% 32%,68% 51%,100% 41%,72% 73%,76% 55%,42% 80%,47% 57%,17% 70%,23% 49%);opacity:0;transform-origin:left center;animation:capture-bolt 1s .12s ease-out both}
.lightning-core{background:#efffff;scale:1 .45;filter:drop-shadow(0 0 8px #fff)}
.capture-orb{position:absolute;left:18%;top:40%;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 0 12px 6px #9eeaff,0 0 32px 14px #4cbaff88;opacity:0;animation:capture-travel 1s .12s ease-in-out both}
@keyframes capture-bolt{0%{opacity:0;transform:scaleX(.05)}20%{opacity:1;transform:scaleX(1)}65%{opacity:.9}100%{opacity:0;transform:scaleX(1)}}
@keyframes capture-travel{0%{opacity:0;left:18%;transform:scale(.3)}15%{opacity:1}75%{opacity:1;left:79%;transform:scale(1.3)}100%{opacity:0;left:79%;transform:scale(2.2)}}
@media(max-width:750px){#app{padding:0 14px}.scoreboard{padding:9px 7px;gap:12px}.choice-layout{grid-template-columns:95px minmax(0,1fr);gap:10px}.choice-title h2{font-size:16px}.single-use{font-size:6px;padding:2px 4px}.single-use-note{font-size:8px}.duel-cards{gap:14px}.duel-card{width:min(130px,44%)}.privacy,.terminal{margin:2vh auto}.scoreboard span{overflow-wrap:anywhere}}
@media(max-height:720px) and (max-width:750px){#choose,.reveal,.privacy,.terminal{padding:10px}.scoreboard{margin-top:5px;padding:5px}.choice-title h2{font-size:14px}.choice-layout{grid-template-columns:85px minmax(0,1fr)}.hand-card img{height:36px}}
@media(prefers-reduced-motion:reduce){.capture-lightning{display:none}}

#handoff,#choose{position:relative;isolation:isolate;border-color:#9edcff50;background:radial-gradient(ellipse at 10% 0%,#23758d45,transparent 60%),linear-gradient(140deg,#10243bf5,#091426f5);box-shadow:inset 0 1px #e1f5ff20,0 20px 60px #0005}
#handoff:not([hidden]),#choose:not([hidden]){animation:panel-arrive .4s ease-out both}
#handoff{width:min(620px,100%);overflow:hidden}
#handoff:before{content:'';position:absolute;width:260px;height:260px;border:1px solid #8bdfff18;border-radius:50%;left:50%;top:35%;transform:translate(-50%,-50%);box-shadow:0 0 0 35px #95ceff06,0 0 0 70px #95ceff04;z-index:-1;pointer-events:none}
#handoff .seal{position:relative;display:grid;place-items:center;width:76px;height:76px;margin:4px auto 20px;border:1px solid #a4eaff66;border-radius:24px;background:linear-gradient(145deg,#539cc04a,#183650);font-size:46px;color:#c1f1ff;box-shadow:0 0 40px #3eaee533;animation:seal-hover 3s ease-in-out infinite}
#handoff-title small{display:block;font-size:11px;letter-spacing:3px;color:#93aec9;font-weight:600;margin-bottom:12px}
#handoff-title span{display:block;font-size:clamp(24px,4vw,40px);overflow-wrap:anywhere;color:#e2f6ff;letter-spacing:-1px}
#handoff>.eyebrow{display:inline-block;padding:7px 12px;border:1px solid #6ee4cb3d;border-radius:30px;color:#9cebd7;background:#1c51472b;font-size:9px}
#handoff p{color:#a9bdd2;line-height:1.7}#open-hand{width:min(360px,100%);min-height:46px}
#choose .choice-title{padding-bottom:12px;border-bottom:1px solid #9bcaff20;margin-bottom:14px;gap:12px}
#choose .eyebrow{color:#81decf;font-size:9px}#choose .choice-title h2{margin-top:6px;overflow-wrap:anywhere}
#choose .hand-panel{min-width:0;padding:12px;border:1px solid #9dccff20;border-radius:16px;background:#030c1c50}
#choose .hand-panel>p{margin-top:0;font-size:11px;line-height:1.5}
#choose .preview{border:1px solid #a6e8ff50;box-shadow:0 10px 26px #0005;align-self:start;overflow:hidden}
#choose .preview>img{animation:preview-arrive .32s ease-out both}
#choose .hand-card{border-color:#a3cbff30;overflow:hidden}
#choose .hand-card.selected{transform:translateY(-3px);border-color:#a8f1ef;background:#1c495d;box-shadow:0 0 0 2px #79e6dd35,0 8px 18px #0006}
#choose .hand-card.selected:after{content:'✓';position:absolute;bottom:25px;right:5px;background:#a6efe3;color:#092938;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;font-weight:800;font-size:12px}
#choose .stance{padding:4px;gap:5px;border-radius:12px;background:#020a16a0;border:1px solid #9dcfff20}
#choose .stance button{border-color:transparent;background:transparent;min-height:40px}
#choose #attack.selected{background:linear-gradient(110deg,#663c35,#442c32);border-color:#ffa98670;color:#ffd8b8}
#choose #guard.selected{background:linear-gradient(110deg,#174857,#203c5e);border-color:#86e7ff70;color:#bceeff}
#confirm{white-space:normal;min-height:44px;line-height:1.35}#confirm:disabled{opacity:.55;background:#243b50;color:#a6b7c8;border-color:#6385a344;box-shadow:none}
.duel-winner{position:relative;animation:capture-champion 1.5s ease-out both}.duel-winner img{box-shadow:0 0 0 2px #f3d99e,0 0 35px #f3d99e50}
.duel-loser{animation:capture-defeat 1.2s ease-out both}
.capture-ring{position:absolute;left:80%;top:43%;width:90px;height:90px;border:2px solid #b5efff;border-radius:50%;box-shadow:0 0 24px #67d6ff,inset 0 0 20px #67d6ff60;animation:capture-ring 1s .58s ease-out both}
.capture-shard{position:absolute;left:80%;top:43%;width:5px;height:12px;background:#fbe5ac;border-radius:3px;box-shadow:0 0 9px #8bdfff;animation:capture-shard .85s .6s ease-out both}
.capture-banner{position:absolute;bottom:4%;left:50%;transform:translateX(-50%);z-index:4;pointer-events:none;white-space:nowrap;font-size:10px;font-weight:800;letter-spacing:2px;padding:10px 16px;border:1px solid #f9df9c90;border-radius:30px;color:#ffe6aa;background:#17253bf5;box-shadow:0 6px 25px #0007;animation:capture-label .5s .65s both}
.lightning-bolt,.lightning-core{animation-duration:1.15s;filter:drop-shadow(0 0 10px #7bdeff)}
.terminal.victory{background:radial-gradient(ellipse at 50% 30%,#78612c55,transparent 70%),linear-gradient(140deg,#102840f5,#091a2df5)}
@keyframes panel-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes seal-hover{50%{transform:translateY(-5px);box-shadow:0 0 45px #3eaee550}}
@keyframes preview-arrive{from{opacity:.4;transform:scale(.96)}to{opacity:1;transform:scale(1)}}
@keyframes capture-champion{0%{transform:scale(.94)}40%{transform:scale(1)}60%{transform:translateY(-10px) scale(1.045)}100%{transform:translateY(-4px) scale(1.02)}}
@keyframes capture-defeat{0%,40%{opacity:1;transform:scale(1)}55%{transform:translateX(5px) rotate(3deg)}100%{opacity:.5;transform:translateY(9px) scale(.93);filter:saturate(.2)}}
@keyframes capture-ring{from{opacity:0;transform:translate(-50%,-50%) scale(.15)}20%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) scale(2.1)}}
@keyframes capture-shard{from{opacity:0;transform:rotate(var(--angle)) translateY(0) scale(.4)}15%{opacity:1}to{opacity:0;transform:rotate(var(--angle)) translateY(var(--distance)) scale(.1)}}
@keyframes capture-label{from{opacity:0;translate:0 10px;scale:.9}to{opacity:1;translate:0 0;scale:1}}
@media(max-width:750px){#choose .hand-panel{padding:8px}#choose .choice-title{padding-bottom:8px;margin-bottom:9px}#handoff .seal{width:58px;height:58px;font-size:34px;margin-bottom:12px}#handoff-title small{font-size:9px;margin-bottom:8px}.capture-banner{font-size:8px;padding:8px 10px;letter-spacing:1px}}
@media(max-height:720px){#handoff .seal{width:46px;height:46px;font-size:28px;margin-bottom:8px}#handoff p{margin:10px 0;font-size:12px}#handoff-title{margin:10px 0}#handoff-title span{font-size:24px}#choose .hand-panel{padding:6px}#choose .choice-title{padding-bottom:6px;margin-bottom:6px}}
@media(prefers-reduced-motion:reduce){#handoff:not([hidden]),#choose:not([hidden]),#handoff .seal,#choose .preview>img,.duel-winner,.duel-loser,.capture-banner{animation:none}.capture-lightning{display:none}.duel-winner{outline:2px solid #f3d99e;border-radius:12px}.hand-card{transition:none!important}}
.battle-ready{position:fixed;inset:0;z-index:15;display:grid;place-items:center;padding:20px;background:radial-gradient(ellipse at 18% 45%,#14799466,transparent 55%),radial-gradient(ellipse at 82% 55%,#92364d66,transparent 55%),#071321f7;text-align:center;overflow:auto}
.battle-ready-inner{width:min(580px,100%);padding:clamp(18px,4vh,42px) 18px;border:1px solid #b9e4ff55;border-radius:28px;background:linear-gradient(135deg,#163448b8,#1b172ec9);box-shadow:0 0 80px #4bc6f329;animation:panel-arrive .4s both}
.battle-emblem{display:grid;place-items:center;margin:22px auto;width:86px;height:86px;border:2px solid #b9f3ff;border-radius:24px;color:#fff0bc;font-size:32px;font-weight:900;box-shadow:-14px 0 36px #48ceff55,14px 0 36px #ff537455;animation:battle-charge 1.5s ease-in-out infinite alternate}
#battle-heading{font-size:clamp(36px,8vw,72px);line-height:1;margin:18px 0;color:#fff0bc;text-shadow:0 3px 0 #88542c,0 0 32px #f9c36a66;letter-spacing:-2px}
.battle-ready p{line-height:1.6;color:#c1d4e5}.battle-ready #battle-names{color:#9aebff;font-weight:800;overflow-wrap:anywhere}.battle-ready .primary{margin-top:14px;min-height:50px;width:100%;white-space:normal}
.clash-card{--clash-direction:1;animation:power-collision .95s ease-in-out both}.clash-1{--clash-direction:-1}
.clash-vs{position:absolute;left:50%;top:44%;transform:translate(-50%,-50%);font-size:clamp(22px,5vw,48px);font-weight:900;color:#fff1b6;text-shadow:0 0 24px #59dcff;pointer-events:none;animation:power-flare .5s .7s both}
.power-track{height:7px;max-width:180px;margin:auto;border-radius:8px;overflow:hidden;background:#020811;border:1px solid #8ae1ff44}.power-track i{display:block;width:100%;height:100%;background:linear-gradient(90deg,#dc6478,#ffcf89)}
.power-loss{display:block;min-height:18px;margin-top:5px;color:#ff9b9b;font-weight:800;letter-spacing:1px;font-size:11px}
.battle-active .duel-card b{font-variant-numeric:tabular-nums;color:#fff0b7;text-shadow:0 0 18px #f8c96599}.board-impact{animation:board-rumble .65s ease-out}
.scoreboard strong{position:relative}.scoreboard .score-before{position:absolute;inset:0;font:inherit;color:inherit;animation:score-away .6s both}.scoreboard .score-after{display:inline-block;font:inherit;color:inherit;animation:score-arrive .6s both}.scoreboard .score-delta{position:absolute;left:100%;top:0;font-size:16px;color:#ff8b91;animation:score-away 1.4s both}
@keyframes battle-charge{to{box-shadow:-18px 0 48px #48ceff88,18px 0 48px #ff537488;transform:scale(1.06)}}
@keyframes power-collision{0%{transform:translateX(calc(var(--clash-direction)*-25px)) scale(.9);opacity:0}35%{opacity:1;transform:translateX(calc(var(--clash-direction)*-10px))}75%{transform:translateX(calc(var(--clash-direction)*20px)) scale(1.04)}100%{transform:translateX(0)}}
@keyframes power-flare{0%{opacity:0;scale:.6}45%{opacity:1;scale:1.45}100%{opacity:1;scale:1}}
@keyframes board-rumble{0%,100%{transform:translate(0)}15%{transform:translate(-7px,3px)}30%{transform:translate(6px,-4px)}45%{transform:translate(-5px,-2px)}60%{transform:translate(4px,3px)}80%{transform:translate(-2px,1px)}}
@keyframes score-away{0%,25%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(22px)}}
@keyframes score-arrive{0%,25%{opacity:0;transform:translateY(-20px)}100%{opacity:1;transform:translateY(0)}}
@media(max-height:540px){.battle-ready{padding:10px}.battle-ready-inner{padding:12px}.battle-emblem{width:45px;height:45px;font-size:20px;margin:8px auto}#battle-heading{font-size:34px;margin:8px}.battle-ready p{margin:6px;font-size:12px}.battle-ready .primary{margin-top:6px;min-height:42px}}
@media(prefers-reduced-motion:reduce){.battle-ready-inner,.battle-emblem,.clash-card,.clash-vs,.board-impact,.scoreboard .score-after{animation:none}.scoreboard .score-before{display:none}.scoreboard .score-delta{animation:none}}
