:root{--font-body: "Inter", "Lato", "Segoe UI", sans-serif;--font-display: "Cinzel", "Inter", "Lato", "Segoe UI", sans-serif;font-family:var(--font-body);line-height:1.5;font-weight:400;color:#f8fafc;background-color:#0b1120;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--turn-indicator-active: rgba(37, 99, 235, .35);--turn-indicator-active-border: rgba(96, 165, 250, .6);--turn-indicator-active-shadow: rgba(96, 165, 250, .2);--turn-indicator-turn-owner: rgba(65, 105, 225, .72);--turn-indicator-turn-owner-border: rgba(147, 197, 253, .8);--turn-indicator-turn-owner-shadow: rgba(65, 105, 225, .4);--battlefield-active: linear-gradient(180deg, rgba(96, 165, 250, .28) 0%, rgba(59, 130, 246, .18) 100%);--battlefield-active-shadow: inset 0 0 18px rgba(59, 130, 246, .25);--battlefield-turn-owner: linear-gradient(180deg, rgba(65, 105, 225, .42) 0%, rgba(37, 99, 235, .26) 100%);--battlefield-turn-owner-shadow: inset 0 0 20px rgba(65, 105, 225, .32);--gameboard-background: none;--theme-primary: rgba(65, 105, 225, 1);--theme-primary-hover: rgba(96, 165, 250, 1);--theme-primary-light: rgba(96, 165, 250, .2);--theme-accent: rgba(147, 197, 253, 1);--theme-shadow: rgba(65, 105, 225, .4);--theme-bg-from: #1a1a2e;--theme-bg-to: #16213e}body.light-mode{color:#1e293b;background-color:#f1f5f9}body.light-mode .app-shell{background:radial-gradient(circle at top,#f1f5f9e6,#e2e8f0f2 98%),url(../background.png) center top / cover no-repeat fixed;color:#1e293b}body.light-mode .player-panel{background:#fffc;border-color:#94a3b866}body.light-mode .player-panel .battlefield{background:#f1f5f980}html{overflow-x:hidden;width:100%;height:100%}*{box-sizing:border-box}body{margin:0;min-width:320px;max-width:100vw;min-height:100%;background-color:#0b1120;background-attachment:fixed;overflow-x:hidden;overflow-y:auto;font-family:var(--font-body);-webkit-overflow-scrolling:touch;overscroll-behavior-y:auto}#root{width:100%;max-width:100vw;overflow-x:hidden;min-height:100vh}html.no-scroll,body.no-scroll{overflow-y:hidden!important;overflow-x:hidden}button,[type=button],[type=submit],[type=reset]{font-family:var(--font-display)}a{color:inherit}.ambient-particles-page{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;overflow:hidden}.ambient-particles-page .ambient-particle{position:absolute;width:4px;height:4px;background:radial-gradient(circle,var(--theme-primary) 0%,transparent 70%);border-radius:50%;animation:float-particle 8s ease-in-out infinite;opacity:0}.app-shell{font-family:var(--font-body);min-height:100vh;background:radial-gradient(circle at top,var(--theme-bg-from-overlay, rgba(31, 41, 51, .44)),var(--theme-bg-to-overlay, rgba(10, 16, 24, .92)) 98%),url(../background.png) center top / cover no-repeat fixed;color:#f9fafb;padding:0;box-sizing:border-box;position:relative;width:100%;max-width:100vw;overflow-x:hidden}.app-shell.landing-active{background:transparent}.landing-background-layer{position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at top,var(--theme-bg-from-overlay, rgba(15, 23, 42, .3)),var(--theme-bg-to-overlay, rgba(11, 17, 32, .6)) 98%),url(../background.png) center top / cover no-repeat fixed;z-index:0;pointer-events:none}.app-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;font-size:1.25rem;color:#94a3b8cc}@media(max-width:640px){.app-shell{padding:0}}@media(max-width:420px){.app-shell{padding:clamp(.25rem,3.5vw,.5rem)}}.brand-badge{position:absolute;top:.5rem;left:1rem;display:inline-flex;align-items:center;justify-content:center;padding:0rem;border-radius:12px;text-decoration:none;color:inherit;z-index:50}.brand-badge img{display:block;height:clamp(46px,7vw,72px);width:auto}h1,h2,h3,.stat-heading,.hand-panel>h3,.zone-modal-header h3,.prompt-panel .prompt-header>span:first-child,.replay-status-banner,.player-panel .stats h2,.setup-title-block h1{font-family:var(--font-display)}.splash-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - 60px - 3.5rem);padding:2.5rem 1.5rem 3.5rem;text-align:center;gap:2.5rem;width:100%;max-width:100vw;overflow-x:hidden}.splash-card{position:relative;width:clamp(280px,88vw,620px);aspect-ratio:5 / 7;border-radius:clamp(18px,2.6vw,30px);padding:0;background-color:#020409f2;background-image:url(../ornateframe.png);background-position:center;background-size:100% 100%;background-repeat:no-repeat;box-shadow:0 28px 88px #0f172a8c,inset 0 1px #ffffff14,inset 0 -1px #0f172a66;border:none;cursor:pointer;transform-style:preserve-3d;transform:perspective(1600px) rotateY(0);transition:transform .85s cubic-bezier(.22,.61,.36,1),box-shadow .35s ease;will-change:transform;touch-action:manipulation;overflow:visible;z-index:10}.splash-card:focus-visible{outline:none;box-shadow:0 0 0 3px #94a3b873,inset 0 1px #ffffff14,inset 0 -1px #0f172a66,0 28px 88px #0f172a8c}.splash-card[data-flipped=true]{box-shadow:0 24px 72px #0d111d99,inset 0 1px #ffffff0f,inset 0 -1px #0f172a7a}.splash-card:not(.flipped):hover{transform:perspective(1600px) rotateY(-6deg)}.splash-card:not(.flipped):active{transform:perspective(1600px) rotateY(-10deg) scale(.995)}.splash-card.flipped{transform:perspective(1600px) rotateY(180deg)}.splash-card.flipped .splash-card-shimmer,.splash-card.flipped .splash-logo-shimmer{display:none}.splash-card.flipped .splash-button{opacity:0;transition-delay:0s}.splash-card-face{position:absolute;inset:0;border-radius:inherit;padding:clamp(16px,2.4vw,28px);display:block;overflow:hidden;backface-visibility:hidden;z-index:1}.splash-card-face:after{content:"";position:absolute;inset:clamp(10px,1.2vw,16px);border-radius:clamp(16px,2.1vw,26px);border:1px solid rgba(148,163,184,.24);pointer-events:none;z-index:2}.splash-card-face>*{position:relative;z-index:3}.splash-card-front{background:transparent}.splash-card-shimmer{position:absolute;inset:0;background:linear-gradient(120deg,#fff0 25%,#bef2ff66,#fff0 75%);transform:translate(-110%) skew(-15deg);animation:splash-card-shimmer 1.5s cubic-bezier(.25,.85,.45,1) .5s forwards;opacity:0;pointer-events:none;mix-blend-mode:screen;z-index:5}.splash-card-back{background:linear-gradient(135deg,#8b6f47,#d4af37,#8b6f47 30%,#4a3820,#8b6f47 70%,#d4af37,#8b6f47);transform:rotateY(180deg);align-items:stretch;border-radius:clamp(18px,2.6vw,30px);overflow:hidden}.splash-card-back:before{content:"";position:absolute;inset:clamp(8px,1vw,12px);background:radial-gradient(ellipse at center,#2a1f0f,#1a120a);border-radius:clamp(12px,1.8vw,20px);border:2px solid #D4AF37;box-shadow:inset 0 0 30px #d4af374d,0 0 20px #00000080;z-index:0}.splash-card-back:after{content:"";position:absolute;inset:clamp(12px,1.2vw,18px);background:repeating-linear-gradient(45deg,transparent,transparent 10px,rgba(212,175,55,.05) 10px,rgba(212,175,55,.05) 20px),repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(212,175,55,.05) 10px,rgba(212,175,55,.05) 20px),radial-gradient(circle at 50% 50%,rgba(212,175,55,.15) 0%,transparent 70%);border-radius:clamp(10px,1.6vw,18px);pointer-events:none;z-index:1}.card-back-frame{width:100%;height:100%;display:flex;flex-direction:column;padding:0;border-radius:clamp(18px,2.6vw,30px);background:linear-gradient(180deg,#1a120afa,#2a1f0ff2,#1a120afa);border:2px solid rgba(212,175,55,.5);box-shadow:inset 0 2px 4px #d4af3733,inset 0 -2px 4px #0009,0 4px 12px #00000080;color:#f4e4c1;position:relative;z-index:2;gap:0;overflow:hidden}.card-back-title-bar{display:flex;justify-content:space-between;align-items:center;padding:clamp(10px,1.4vw,14px) clamp(14px,2vw,20px);background:linear-gradient(180deg,#d4af3740,#8b6f4726);border:none;border-bottom:2px solid rgba(212,175,55,.3);box-shadow:inset 0 1px 2px #d4af374d}.card-back-title-bar .card-back-title{margin:0;font-size:clamp(1.1rem,2.2vw,1.6rem);font-family:var(--font-display);letter-spacing:.02em;font-weight:700;color:#f4e4c1;text-shadow:0 1px 3px rgba(0,0,0,.8),0 0 8px rgba(212,175,55,.4);line-height:1}.card-back-mana-cost{display:flex;gap:4px}.mana-symbol{width:clamp(18px,2.8vw,24px);height:clamp(18px,2.8vw,24px);border-radius:50%;background:linear-gradient(135deg,#d4af37e6,#8b6f47e6);border:1px solid rgba(212,175,55,.6);display:flex;align-items:center;justify-content:center;font-size:clamp(9px,1.4vw,12px);font-weight:700;color:#1a120a;box-shadow:inset 0 1px 2px #ffffff4d}.card-back-art{position:relative;flex:1;min-height:0;border-radius:0;overflow:hidden;border:none;box-shadow:none}.card-back-art-image{width:100%;height:100%;background-size:cover;background-position:center;background-repeat:no-repeat;filter:brightness(.85) saturate(1.1);border:none;outline:none}.card-back-type-line{padding:clamp(8px,1.2vw,12px) clamp(14px,2vw,20px);background:linear-gradient(180deg,#d4af3733,#8b6f471f);border:none;border-bottom:2px solid rgba(212,175,55,.3);box-shadow:inset 0 1px 2px #d4af3733;text-align:left}.card-back-type{font-size:clamp(.85rem,1.6vw,1.1rem);font-family:var(--font-display);font-weight:700;letter-spacing:.02em;color:#f4e4c1;text-shadow:0 1px 3px rgba(0,0,0,.8),0 0 8px rgba(212,175,55,.4)}.card-back-art-content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(1rem,3vh,2rem);padding:clamp(3rem,8vh,5rem) clamp(1rem,3vw,2rem) clamp(1rem,2vh,1.5rem);position:relative;z-index:2}.card-back-logo{width:min(200px,40%);height:auto;filter:drop-shadow(0 8px 24px rgba(212,175,55,.4)) brightness(1.1);opacity:.9}.card-back-auth-area{width:100%;max-width:380px}.card-back-title-banner{position:absolute;top:0;left:0;right:0;z-index:10;padding:clamp(12px,2vw,20px) clamp(16px,2.5vw,24px);background:linear-gradient(180deg,rgba(26,18,10,.95) 0%,rgba(42,31,15,.85) 70%,transparent 100%);border-bottom:2px solid rgba(212,175,55,.3)}.card-back-title-banner .card-back-title{margin:0;font-size:clamp(1.6rem,3vw,2.4rem);letter-spacing:.04em;font-weight:700;color:#f4e4c1;text-shadow:0 2px 4px rgba(0,0,0,.8),0 0 16px rgba(212,175,55,.5);line-height:1.2}.card-back-title-banner .card-back-type{margin:.25rem 0 0;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:#d4af37d9;text-shadow:0 1px 2px rgba(0,0,0,.6)}.card-back-art img{width:min(340px,70%);height:auto;filter:drop-shadow(0 12px 32px rgba(212,175,55,.4)) brightness(1.1);opacity:.88}.card-back-art-overlay{position:absolute;inset:0;background:linear-gradient(210deg,#2a1f0f4d,#1a120a99);mix-blend-mode:multiply;pointer-events:none}.card-back-textbox{position:relative;flex:1;min-height:0;border-radius:0;background:linear-gradient(185deg,#f4e4c1f2,#e9d5adeb);border:none;border-bottom:2px solid rgba(139,111,71,.3);padding:clamp(14px,2vw,20px);display:flex;flex-direction:column;gap:.65rem;box-shadow:inset 0 1px 2px #fff6;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(139,111,71,.5) transparent}.card-back-line{margin:0;display:flex;align-items:flex-start;gap:.45rem;font-size:.9rem;line-height:1.5;color:#e2e8f0e0}.card-back-glyph{display:inline-flex;align-items:center;justify-content:center;width:1rem;flex-shrink:0;font-weight:700;color:#5eead4cc}.card-back-flavor{margin:.5rem 0 0;font-size:.85rem;color:#bfdbfebf}.card-back-bottom-bar{display:flex;justify-content:space-between;align-items:center;padding:clamp(8px,1.2vw,12px) clamp(14px,2vw,20px);background:#0006;border-radius:0;border:none;font-size:clamp(.6rem,1vw,.75rem);letter-spacing:.05em}.card-back-set-info{display:flex;gap:clamp(6px,1vw,10px);align-items:center;color:#d4af37cc}.card-back-rarity{color:#d4af37e6;font-size:clamp(.5rem,.8vw,.65rem)}.card-back-credits{font-size:clamp(.55rem,.9vw,.7rem);color:#d4af3799}@media(max-width:640px){.card-back-frame{padding:clamp(14px,6vw,20px);gap:clamp(10px,4vw,16px)}.card-back-title{font-size:clamp(1.3rem,5.5vw,1.6rem)}.card-back-line{font-size:.86rem}.card-back-footer{font-size:.7rem}}@media(prefers-reduced-motion:reduce){.splash-card{transition:none}.splash-card:not(.flipped):hover,.splash-card:not(.flipped):active{transform:none}}.splash-card-inner{position:relative;z-index:2;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(2rem,5vh,4rem);padding:clamp(18px,2.8vw,30px)}.splash-button{opacity:1;transition:opacity .2s ease .3s}.splash-logo-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center}.splash-card-glow{position:absolute;inset:-25%;background:radial-gradient(circle at 50% 30%,rgba(56,189,248,.35),transparent 55%);opacity:.65;filter:blur(18px);z-index:0;pointer-events:none}.splash-logo{width:min(520px,78%);max-width:calc(100% - clamp(36px,6vw,88px));height:auto;filter:drop-shadow(0 18px 42px rgba(14,116,144,.45));position:relative;z-index:1}.splash-logo-shimmer{position:absolute;inset:-6% -14%;background:linear-gradient(120deg,#fff0 25%,#bef2ff8c,#fff0 75%);transform:translate(-110%) skew(-10deg);animation:none;opacity:0;pointer-events:none;mix-blend-mode:screen;z-index:2;display:none}.splash-actions{display:flex;justify-content:center;align-items:center;gap:1rem;flex-direction:column;margin-top:0}.action-group{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:250px}.action-description{margin-top:.75rem;margin-bottom:0;font-size:.75rem;color:#f9fafbb3;line-height:1.4;text-align:center}.splash-button{min-width:190px;padding:.7rem 2.2rem;border-radius:999px;border:1px solid rgba(255,221,214,.55);background:linear-gradient(138deg,#d9776c,#b2514c 54%,#913732);color:#fff7f5;font-size:.84rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;transition:transform .22s ease,box-shadow .22s ease,filter .22s ease;position:relative;overflow:hidden;box-shadow:0 12px 34px #b2514c73,0 2px 8px #00000040;cursor:pointer}.splash-button:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(255,255,255,.18),transparent 70%);opacity:0;transition:opacity .22s ease}.splash-button:hover{transform:translateY(-1px);box-shadow:0 20px 46px #b2514c80,0 10px 28px #0000004d;filter:brightness(1.05)}.splash-button:hover:after,.splash-button:focus-visible:after{opacity:.6}.splash-button:active{transform:translateY(1px);box-shadow:0 14px 30px #8c3b3780,0 6px 16px #00000040;filter:brightness(.96)}.splash-button:focus-visible{outline:none;box-shadow:0 0 0 3px #ffcac352,0 0 0 1px #ffe2dea6}.splash-button.multiplayer{background:linear-gradient(138deg,#2196f3,#1976d2 54%,#0d47a1);border:1px solid rgba(33,150,243,.55);box-shadow:0 12px 34px #2196f373,0 2px 8px #00000040}.splash-button.multiplayer:hover{box-shadow:0 20px 46px #2196f380,0 10px 28px #0000004d}.splash-button.multiplayer:active{box-shadow:0 14px 30px #1976d280,0 6px 16px #00000040}.splash-button.multiplayer:focus-visible{box-shadow:0 0 0 3px #64b5f652,0 0 0 1px #90caf9a6}.splash-button-secondary{background:linear-gradient(138deg,#94a3b833,#64748b40 54%,#4755694d);border:1px solid rgba(203,213,225,.3);box-shadow:0 8px 20px #0f172a4d,0 2px 8px #0003;min-width:190px}.splash-button-secondary:hover{background:linear-gradient(138deg,#94a3b84d,#64748b59 54%,#47556966);box-shadow:0 12px 28px #0f172a59,0 4px 12px #00000040}.splash-button-secondary:active{box-shadow:0 6px 16px #0f172a4d,0 2px 8px #0003}.splash-button-secondary:focus-visible{box-shadow:0 0 0 3px #cbd5e133,0 0 0 1px #e2e8f066}.global-music-toggle{position:fixed;top:1.75rem;right:1.75rem;z-index:60;display:flex;align-items:center;justify-content:flex-end;gap:.5rem;min-width:0}.global-music-toggle .music-toggle-control{width:auto;min-width:0}@keyframes splash-card-shimmer{0%{opacity:0;transform:translate(-125%) skew(-12deg)}20%{opacity:.5}to{opacity:0;transform:translate(135%) skew(-12deg)}}@keyframes splash-logo-shimmer{0%{opacity:0;transform:translate(-120%) skew(-10deg)}25%{opacity:.65}to{opacity:0;transform:translate(130%) skew(-10deg)}}@media(max-width:640px){.global-music-toggle{top:1.2rem;right:1.2rem;max-width:calc(100vw - 2.4rem)}.global-music-toggle .music-toggle-control{width:min(100%,260px)}.brand-badge{top:.45rem;left:.85rem}.brand-badge img{height:clamp(42px,10vw,54px)}.splash-logo{width:min(340px,78vw);max-width:calc(100% - clamp(28px,7vw,60px))}}@media(max-width:420px){.global-music-toggle{top:1rem;right:1rem}.brand-badge{top:.35rem;left:.7rem}.brand-badge img{height:clamp(38px,11vw,48px)}.splash-logo{width:min(260px,82vw);max-width:calc(100% - clamp(24px,8vw,48px))}}@media(max-width:640px){.splash-screen{padding:calc(60px + 1rem) 1rem 2.75rem;gap:2rem;min-height:100vh}.splash-actions{margin-top:clamp(1.5rem,6vh,3.5rem)}.splash-button{min-width:160px;font-size:.78rem;padding:.65rem 1.8rem}}.sidebar-toggle{position:absolute;top:4.75rem;right:2.75rem;display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.1rem;border-radius:999px;border:1px solid rgba(148,163,184,.45);background:#0f172abf;color:inherit;cursor:pointer;box-shadow:0 18px 48px #082f4973;transition:all .25s ease;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:40}.sidebar-toggle:hover{border-color:#5eead4b3;color:#e0f2fe;box-shadow:0 22px 56px #0f766e59}.sidebar-toggle.collapsed{padding:.7rem;border-radius:50%;box-shadow:0 24px 60px #0e749066}.sidebar-toggle svg{width:1.3rem;height:1.3rem}.sidebar-toggle-label{font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.layout{--sidebar-width: 320px;--layout-gap: 2rem;display:grid;grid-template-columns:minmax(0,1fr) var(--sidebar-width);gap:var(--layout-gap);position:relative;width:100%;max-width:100%;min-width:0}.layout[data-sidebar-state=collapsed]{--sidebar-width: 0px;--layout-gap: 1.5rem;grid-template-columns:1fr}.main-column{background:#0f172a00;border-radius:24px;padding:1.5rem;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 24px 64px #00000059;width:100%;min-width:0}.side-column{display:flex;flex-direction:column;gap:1.5rem;padding-top:4.5rem}.sidebar-music-toggle{display:flex;justify-content:flex-end}.sidebar-music-toggle .music-toggle-control{width:100%}.sidebar-music-toggle .music-toggle-control .music-toggle-button{width:100%;justify-content:flex-start}.sidebar-music-toggle .music-toggle-control .music-toggle-dropdown{flex:0 0 auto}.sidebar-music-toggle .music-track-menu{left:0;right:auto;width:100%;min-width:unset}.setup-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - rem);padding:1rem 0 2rem;box-sizing:border-box}.setup-card{width:min(960px,100%);margin:0 auto;padding:2.25rem;border-radius:24px;box-shadow:0 24px 64px #0006;display:flex;flex-direction:column;gap:1.75rem}@media(max-width:768px){.setup-wrapper{align-items:stretch;padding:5rem 0 0}.setup-card{margin:0;padding:clamp(1.2rem,5.4vw,1.7rem);border-radius:12px}}@media(max-width:640px){.setup-wrapper{padding:2rem 0 0}.setup-card{width:100%;padding:clamp(.85rem,4.6vw,1.2rem);border-radius:8px;box-shadow:none}.setup-header{padding:clamp(.2rem,5.6vw,1.2rem)}.setup-match-banner{margin-top:.9rem;padding:clamp(.75rem,4.5vw,1rem);border-radius:18px}}@media(max-width:480px){.setup-wrapper{padding:1.5rem 0 0}.setup-card{padding:clamp(.75rem,4.2vw,1rem);border-radius:8px}.setup-header{padding:clamp(.7rem,5vw,.95rem)}.setup-match-banner{margin-top:.75rem;padding:clamp(.6rem,4vw,.85rem);border-radius:16px}}.setup-header{position:relative;display:grid;grid-template-columns:1fr;gap:.5rem;margin-top:1rem;padding:1.6rem 1.75rem;border-radius:20px;background:linear-gradient(140deg,var(--theme-primary-light, rgba(37, 99, 235, .18)),var(--theme-bg-from-overlay, rgba(14, 116, 144, .12)) 55%,var(--theme-bg-to-overlay, rgba(15, 23, 42, .65)));border:1px solid rgba(148,163,184,.28);box-shadow:inset 0 1px #ffffff0f,0 18px 44px #0f172a73;overflow:hidden}.setup-header:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(59,130,246,.25),transparent 55%);opacity:.6;pointer-events:none}@media(min-width:900px){.setup-header{grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:1.75rem 2rem;gap:2rem}}.setup-title-block{position:relative;z-index:1;display:flex;flex-direction:column;gap:.65rem}.setup-eyebrow{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:#bfdbfeb8}.setup-title-block h1{margin:0;font-size:clamp(2rem,3vw,2.4rem);letter-spacing:.02em;line-height:1.05}.setup-subtitle{margin:0;max-width:36rem;color:#e2e8f0b8;font-size:.98rem;line-height:1.45}.setup-game-note{margin:.5rem 0 0;font-size:.875rem;color:#94a3b8cc;font-style:italic;line-height:1.4}.setup-actions{position:relative;z-index:1;display:flex;flex-direction:column;align-items:stretch;gap:.75rem}@media(min-width:600px){.setup-actions{flex-direction:row;align-items:center;justify-content:flex-end}}.setup-secondary-actions{display:flex;align-items:center;justify-content:flex-end;gap:.55rem;flex-wrap:wrap}.start-match-button{min-width:180px;padding:.85rem 1.9rem;border-radius:999px;font-size:.95rem;background:linear-gradient(135deg,#38bdf8,#6366f1);box-shadow:0 18px 36px var(--theme-shadow, rgba(59, 130, 246, .35))}.start-match-button:hover{box-shadow:0 22px 48px var(--theme-shadow, rgba(59, 130, 246, .45))}.setup-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.setup-match-banner{display:flex;align-items:stretch;justify-content:space-between;gap:1.75rem;margin-top:.5rem;margin-bottom:1rem;padding:1.5rem 1.75rem;border-radius:26px;border:1px solid rgba(185,185,185,.2);box-shadow:0 26px 56px var(--theme-shadow, rgba(59, 130, 246, .35));flex-wrap:wrap;grid-column:1 / -1;width:100%}.match-preview-column{display:flex;flex:1 1 0;min-width:0;flex-direction:column;gap:.75rem;justify-content:center;align-items:stretch}.match-preview-label{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:#94a3b8e6}.match-preview-wrapper{width:100%;pointer-events:none;display:flex;flex:1 1 auto;min-height:0}.match-preview-wrapper .deck-card{pointer-events:none;cursor:default;transform:none;width:100%;flex:1 1 auto;box-shadow:0 20px 42px #0f172a73,0 6px 18px #0f172a40}.match-preview-footer{flex:1 0 100%;display:flex;justify-content:center;align-items:center;padding-top:1rem}.match-preview-footer .start-match-button{min-width:clamp(200px,24vw,300px)}.match-preview-card--empty .pill{opacity:.7}.match-preview-divider{display:flex;align-items:center;justify-content:center;font-size:clamp(1.35rem,2.6vw,2.05rem);font-weight:800;letter-spacing:.18em;color:#e2e8f0eb;position:relative;padding:0 .75rem;flex:0 0 auto;align-self:center}.match-preview-divider:before,.match-preview-divider:after{content:"";position:absolute;width:70%;height:1px;background:#94a3b873}.match-preview-divider:before{top:0}.match-preview-divider:after{bottom:0}@media(max-width:900px){.setup-match-banner{padding:1.25rem 1.5rem}}@media(max-width:1024px){.setup-match-banner{gap:.5rem;padding:1rem}.match-preview-column{flex:1 1 0;min-width:0}.match-preview-divider{padding:0 .25rem;margin:0;font-size:1rem;flex:0 0 auto}.match-preview-footer{padding-top:.75rem;width:100%;flex-basis:100%}.match-preview-footer .start-match-button{width:100%;max-width:320px}}@media(max-width:480px){.setup-match-banner{padding:1rem}.match-preview-footer{margin-top:.5rem}}.deck-builder-button,.refresh-decks-button{display:inline-flex;align-items:center;gap:.5rem;padding:.55rem 1rem;border-radius:12px;border:1px solid rgba(148,163,184,.4);background:#1e293ba6;color:inherit;cursor:pointer;transition:all .2s ease;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.09em}.deck-builder-button svg,.refresh-decks-button svg{width:1.05rem;height:1.05rem}.refresh-decks-button svg{width:1.1rem;height:1.1rem}.deck-builder-button span,.refresh-decks-button span{font-size:.7rem}.deck-builder-button{border-color:#818cf873;background:#4f46e52e}.deck-builder-button:hover{border-color:#818cf8b3;box-shadow:0 12px 28px #6366f147}.refresh-decks-button:hover{border-color:#5eead4bf;box-shadow:0 12px 28px #2dd4bf40;transform:translateY(-1px)}.music-toggle-button{-webkit-user-select:none;user-select:none}.music-toggle-control{position:relative;display:inline-flex;align-items:center;min-height:32px;border-radius:999px;border:1px solid rgba(148,163,184,.4);background:#111827c7;box-shadow:0 12px 28px #0f172a5c;padding:.14rem .2rem .14rem .32rem;min-width:0;width:auto}.music-toggle-control.compact{padding-right:1.7rem}.music-toggle-control.open{border-color:#60a5fabf;box-shadow:0 18px 40px #0f172a7a,0 0 0 1px #60a5fa4d}.music-toggle-control .music-toggle-button{position:relative;flex:1 1 auto;width:100%;border:none;background:transparent;color:inherit;display:inline-flex;align-items:center;justify-content:flex-start;gap:.3rem;padding:.16rem 2.15rem .16rem .4rem;font-size:.62rem;text-transform:uppercase;letter-spacing:.11em;cursor:pointer;min-width:0;-webkit-user-select:none;user-select:none}.music-toggle-control .music-toggle-button.icon-only{padding:.12rem 1.65rem .12rem .22rem;justify-content:center}.music-toggle-control.compact .music-toggle-button{padding-right:1.7rem;gap:.22rem}.music-toggle-control .music-toggle-button.icon-only .music-toggle-label{display:none}.music-toggle-control .music-toggle-button svg{width:.82rem;height:.82rem;flex-shrink:0}.music-toggle-label{font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;opacity:.85;max-width:10ch;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.music-toggle-control .music-toggle-button:focus-visible{outline:none;box-shadow:inset 0 0 0 2px #93c5fd73}.music-toggle-control .music-toggle-button.active{color:#bfdbfef2}.music-toggle-control .music-toggle-button.blocked:after{content:"";position:absolute;inset:0;border-radius:inherit;background-image:repeating-linear-gradient(135deg,rgba(148,163,184,.28) 0,rgba(148,163,184,.28) 6px,transparent 6px,transparent 12px);opacity:.55;pointer-events:none;mix-blend-mode:screen}.music-toggle-control .music-toggle-button:disabled{opacity:.55;cursor:not-allowed}.music-toggle-dropdown{position:absolute;top:.12rem;right:.12rem;bottom:.12rem;width:1.6rem;border:none;border-radius:999px;background:transparent;color:inherit;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:background .18s ease,color .18s ease}.music-toggle-dropdown:before{content:"";position:absolute;left:-.42rem;top:24%;bottom:24%;width:1px;background:#94a3b859}.music-toggle-control.compact .music-toggle-dropdown:before{left:-.38rem}.music-toggle-dropdown svg{width:.7rem;height:.7rem}.music-toggle-dropdown:focus-visible{outline:none;box-shadow:0 0 0 2px #93c5fd73}.music-toggle-dropdown:hover,.music-toggle-control.open .music-toggle-dropdown{background:var(--theme-primary-light, rgba(59, 130, 246, .18))}.music-toggle-dropdown:disabled{opacity:.55;cursor:not-allowed}.music-track-menu{position:absolute;top:calc(100% + .5rem);right:0;min-width:min(240px,75vw);background:#0f172af2;border:1px solid rgba(148,163,184,.3);border-radius:14px;box-shadow:0 18px 42px #0f172a73,0 0 0 1px #60a5fa3d;padding:.55rem;display:flex;flex-direction:column;gap:.35rem;z-index:2000;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);max-height:min(280px,55vh);overflow-y:auto}.music-toggle-control.compact .music-track-menu{right:auto;left:0}.music-track-menu-status{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;opacity:.78;padding:.3rem .2rem}.music-track-options{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem}.music-track-option{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;width:100%;border:1px solid rgba(148,163,184,.28);border-radius:12px;padding:.46rem .64rem;background:#1e293b8c;color:inherit;cursor:pointer;text-align:left;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;font-size:.7rem;font-weight:600;letter-spacing:.06em}.music-track-option:hover{border-color:#60a5fab3;box-shadow:0 10px 24px #3b82f638;transform:translateY(-1px)}.music-track-option.active{border-color:#818cf8a6;background:#4f46e533;box-shadow:0 12px 26px #6366f138}.music-track-active-indicator{font-size:.6rem;text-transform:uppercase;letter-spacing:.12em;color:#818cf8d9;opacity:.86}.refresh-decks-button.refreshing{pointer-events:none;opacity:.75}.refresh-decks-button.refreshing span{opacity:.8}.refresh-decks-button .spin{animation:rotate360 .9s linear infinite}@keyframes rotate360{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.setup-card h1{margin:0;font-size:clamp(2rem,3vw,2.4rem);letter-spacing:.02em}.deck-grid{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(230px,260px);gap:1rem;overflow-x:auto;overflow-y:hidden;margin-top:1.25rem;padding:1.25rem 0 2rem;scroll-snap-type:x mandatory;scrollbar-width:thin;touch-action:manipulation;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;cursor:grab;-webkit-user-select:none;user-select:none}.deck-grid.drag-scroll-active{cursor:grabbing}.deck-grid button{cursor:pointer}.deck-grid::-webkit-scrollbar{height:8px}.deck-grid::-webkit-scrollbar-thumb{background:#94a3b859;border-radius:999px}.deck-grid::-webkit-scrollbar-track{background:#0f172a59}.deck-card{position:relative;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:.85rem;width:100%;aspect-ratio:63 / 88;min-height:0;overflow:hidden;background:linear-gradient(160deg,#1e293bd1,#0f172abd);border:1px solid rgba(148,163,184,.18);padding:1.35rem 1.2rem 1.8rem;border-radius:22px;text-align:left;color:inherit;transition:transform .2s ease,border .2s ease,box-shadow .2s ease,filter .3s ease;scroll-snap-align:start;-webkit-user-select:none;user-select:none;transform-style:preserve-3d;perspective:1000px}.deck-card:before,.deck-card:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;transition:opacity .3s ease,transform .3s ease}.deck-card>*{position:relative;z-index:2}.deck-card.with-cover{color:#f8fafc;border-color:#94a3b840;background:#0f172a59}.deck-card.with-cover:before{background-image:var(--deck-cover-image);background-size:cover;background-position:center;filter:saturate(1.05);opacity:.9;z-index:0}.deck-card:after{background:linear-gradient(180deg,#0f172a26 5%,#0f172aeb 85%);z-index:1;opacity:.9}.deck-card.with-cover:after{background:linear-gradient(180deg,#0f172a40 5%,#0f172aeb 85%);z-index:1;opacity:.95}.deck-card.with-cover:hover:before{transform:scale(1.04);opacity:1}.deck-card.with-cover:hover:after{opacity:.98}.deck-card:before{background:radial-gradient(circle at top center,rgba(148,163,184,.18),transparent 70%);z-index:0;opacity:.55}.deck-card:hover:before{opacity:.75;transform:translateY(-2px)}.deck-card:hover{transform:translateY(-6px) scale(1.01);box-shadow:0 18px 38px #0f172a73,0 4px 12px #0f172a33}.deck-card.with-cover h3{color:#f8fafc}.deck-card.with-cover p{color:#e2e8f0d9}.deck-card.with-cover .pill{background:#0f172a8c;border:1px solid rgba(148,163,184,.35)}.deck-card.with-cover .pill.custom-pill{background:#0d948899;border-color:#2dd4bf99}.deck-card h3{margin:0;font-size:1.05rem;font-weight:600}.deck-card p{margin:0;font-size:.86rem;line-height:1.45;color:#e2e8f0bf;flex:1}.deck-card .pill-row{margin-top:auto;gap:.45rem}.deck-card .pill{padding:.2rem .6rem;font-size:.65rem;letter-spacing:.09em}.deck-card .pill.custom-pill{border-width:1px}.deck-card h3,.deck-card p{-webkit-user-select:none;user-select:none}.deck-card-wrapper{position:relative;scroll-snap-align:start}.deck-card-wrapper .deck-card{width:100%;display:block}.deck-card-remove{position:absolute;top:.65rem;right:.65rem;width:28px;height:28px;border-radius:999px;border:1px solid rgba(148,163,184,.55);background:#0f172ad9;color:#f8fafcd9;font-size:1.1rem;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease,background .2s ease,border .2s ease,color .2s ease;z-index:2}.deck-card-remove:hover{background:#ef4444d9;border-color:#f87171bf;color:#fff;transform:rotate(90deg)}.deck-card-remove:focus-visible{outline:2px solid rgba(248,113,113,.85);outline-offset:2px}.deck-card:hover{transform:translateY(-4px);border-color:var(--theme-accent, rgba(96, 165, 250, .65));box-shadow:0 12px 32px var(--theme-shadow, rgba(37, 99, 235, .25))}.deck-card.selected{border-color:#fbbf24e6;box-shadow:0 16px 36px #fbbf2459}.deck-card.custom{border-color:#2dd4bf73}.pill{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .75rem;border-radius:999px;background:#94a3b833;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.pill.custom-pill{background:#10b98138;border:1px solid rgba(16,185,129,.45);color:#ccfbf1}.options-row{display:flex;gap:2rem;flex-wrap:wrap;margin-top:1.5rem}.pill-row{display:flex;gap:.75rem;flex-wrap:wrap}.pill-button{border-radius:999px;border:1px solid rgba(148,163,184,.25);background:#1e293ba6;color:inherit;padding:.6rem 1.5rem;cursor:pointer;transition:all .2s ease}.pill-button.selected{border-color:#5eead4bf;box-shadow:0 10px 24px #2dd4bf40}.pill-button.disabled,.pill-button:disabled{cursor:not-allowed;opacity:.55;border-color:#94a3b826;box-shadow:none}.option-detail{margin-top:.75rem;font-size:.9rem;color:#e2e8f0d9}.option-detail-meta{display:inline-block;margin-left:.25rem;font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;color:#94a3b8d9}.option-highlight-list{margin:.5rem 0 0;padding-left:1.2rem;color:#cbd5e1e6;font-size:.85rem;list-style:disc;display:grid;gap:.25rem}.setup-error{margin:0 0 .75rem;color:#fca5a5;font-size:.9rem;line-height:1.4}.primary-button{background:var(--theme-primary, linear-gradient(135deg, #3b82f6, #6366f1));color:#fff;border:2px solid var(--theme-accent, rgba(96, 165, 250, .4));padding:.75rem 1.75rem;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 4px 12px var(--theme-shadow, rgba(0, 0, 0, .3))}.primary-button:hover{box-shadow:0 12px 30px var(--theme-shadow, rgba(99, 102, 241, .5));filter:brightness(1.1);transform:translateY(-2px)}.primary-button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.ghost-button{border:1px solid rgba(148,163,184,.4);background:transparent;color:inherit;padding:.6rem 1.5rem;border-radius:8px;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:.5rem;font-size:.9375rem;font-weight:500}.ghost-button.compact{padding:.5rem 1rem;font-size:.9375rem;gap:.5rem}.ghost-button svg{width:18px;height:18px}.ghost-button.compact svg{width:16px;height:16px}.ghost-button .button-emoji{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;line-height:1;font-size:16px}.ghost-button:hover:not(.floating-advance-button){border-color:#94a3b8bf;background:#1e293b73}@media(max-width:768px){.ghost-button{width:100%;justify-content:center}}.deck-builder-backdrop{position:fixed;inset:0;background:#080f1eb8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;justify-content:center;align-items:center;padding:1rem;z-index:1500}.deck-builder-backdrop.full-page{position:relative;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;z-index:1;padding:6rem 0 2rem;align-items:center;justify-content:center;min-height:calc(100vh - 8rem)}.deck-builder-panel{width:95vw;max-width:1600px;max-height:95vh;height:90vh;background:linear-gradient(135deg,var(--theme-bg-from, #1a1a2e) 0%,var(--theme-bg-to, #0f0f1b) 100%);border-radius:24px;box-shadow:0 20px 60px #0009;border:1px solid var(--theme-accent, rgba(255, 255, 255, .1));display:flex;flex-direction:column;overflow:hidden;color:#fff}.deck-builder-backdrop.full-page .deck-builder-panel{width:min(960px,95vw);height:auto;min-height:calc(100vh - 6rem);max-height:calc(100vh - 6rem);max-width:960px;border-radius:24px;box-shadow:0 24px 64px #0006,inset 0 1px #ffffff0f;border:1px solid rgba(148,163,184,.28);background:linear-gradient(140deg,var(--theme-primary-light, rgba(37, 99, 235, .18)),var(--theme-bg-from-overlay, rgba(14, 116, 144, .12)) 55%,var(--theme-bg-to-overlay, rgba(15, 23, 42, .65)));position:relative;overflow:hidden}.deck-builder-backdrop.full-page .deck-builder-panel:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(59,130,246,.25),transparent 55%);opacity:.6;pointer-events:none;z-index:0}.deck-builder-backdrop.full-page .deck-builder-panel>*{position:relative;z-index:1}@media(max-width:768px){.deck-builder-backdrop.full-page{padding:5rem 0 0;align-items:stretch}.deck-builder-backdrop.full-page .deck-builder-panel{width:100%;border-radius:12px;min-height:calc(100vh - 5rem);max-height:calc(100vh - 5rem)}}@media(max-width:640px){.deck-builder-backdrop.full-page{padding:2rem 0 0}.deck-builder-backdrop.full-page .deck-builder-panel{border-radius:8px;box-shadow:0 12px 32px #0000004d;min-height:calc(100vh - 2rem);max-height:calc(100vh - 2rem)}}.deck-builder-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1.75rem 2rem 1.25rem;gap:1.5rem;border-bottom:1px solid rgba(148,163,184,.18)}.deck-builder-title-group{display:flex;align-items:flex-start;gap:1rem}.deck-builder-icon{width:2.5rem;height:2.5rem;flex-shrink:0;color:#60a5fa;margin-top:.25rem}.deck-builder-header h2{margin:0;font-size:2rem;letter-spacing:.04em}.deck-builder-header p{margin:.4rem 0 0;color:#e2e8f0c7}.deck-builder-close{border:none;background:#33415573;color:#f8fafcd9;width:2.25rem;height:2.25rem;border-radius:50%;font-size:1.65rem;cursor:pointer;transition:all .2s ease}.deck-builder-close:hover{background:#818cf873;color:#eef2ff}.deck-builder-body{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.deck-builder-column{display:flex;flex-direction:column;overflow:hidden;min-height:0}.deck-builder-catalog{padding:1.5rem 1.75rem;gap:1.5rem;flex:1 1 auto;overflow:hidden}.deck-builder-summary{background:#111827d9;border-left:1px solid rgba(148,163,184,.18);padding:1.5rem 1.75rem 2.5rem;gap:1.25rem;overflow-y:auto}.deck-builder-section{display:flex;flex-direction:column;gap:1rem}.deck-builder-section--cards{flex:1 1 auto;min-height:0;overflow:hidden;display:grid;grid-template-rows:auto auto 1fr auto;row-gap:1rem}.deck-builder-section--cards>.card-grid{grid-row:3}.deck-builder-section--cards>.load-more{grid-row:4;align-self:center}.section-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.section-header-actions{display:inline-flex;align-items:center;gap:.5rem;flex-wrap:wrap}.section-header h3{margin:0;font-size:1.15rem;letter-spacing:.06em;text-transform:uppercase}.loading-indicator{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:#5eead4d9}.set-search input,.card-toolbar input,.card-toolbar select,.field-block input,.field-block textarea,.field-block select,.auto-deck-size select{width:100%;background:#1e293b99;border:1px solid rgba(148,163,184,.25);border-radius:10px;padding:.6rem .75rem;color:inherit;font-size:.9rem;transition:border .2s ease,box-shadow .2s ease;font-family:inherit}.set-search input:focus,.card-toolbar input:focus,.card-toolbar select:focus,.field-block input:focus,.field-block textarea:focus,.field-block select:focus,.auto-deck-size select:focus{outline:none;border-color:#6366f1bf;box-shadow:0 0 0 2px #6366f140}.set-list{display:flex;flex-direction:column;gap:.6rem;max-height:220px;overflow-y:auto;padding-right:.25rem}.set-list-group-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:#94a3b8d1;padding:.15rem 0}.set-list-divider{height:1px;background:#94a3b838;margin:.25rem 0}.set-list-empty{margin:.35rem 0 0;font-size:.78rem;color:#94a3b8bf;text-align:left}.set-list-item{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;border-radius:12px;border:1px solid rgba(148,163,184,.25);background:#1e293b8c;color:inherit;padding:.7rem .85rem;cursor:pointer;transition:all .2s ease}.set-list-item:hover,.set-list-item.active{border-color:#818cf899;box-shadow:0 12px 28px #4f46e542}.set-list-item.saved-deck{background:#0d94882e;border-color:#2dd4bf4d}.set-list-item.saved-deck:hover,.set-list-item.saved-deck.active{border-color:#2dd4bf8c;box-shadow:0 12px 28px #0d948847;background:#0d948847}.set-meta{display:flex;justify-content:space-between;width:100%;gap:1rem;font-weight:600;letter-spacing:.02em}.set-meta span{font-size:.75rem;text-transform:uppercase;color:#a5b4fccc}.set-subtext{display:flex;gap:.75rem;font-size:.75rem;color:#e2e8f0a6}.card-toolbar{display:grid;grid-template-columns:2fr 1fr 1fr;gap:.75rem}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.35rem;flex:1 1 auto;min-height:0;max-height:none;overflow-y:auto;padding-right:.75rem;align-content:start;grid-auto-rows:max-content}.card-grid-item{position:relative;background:#1e293bb3;border:1px solid rgba(148,163,184,.2);border-radius:18px;overflow:hidden;box-shadow:0 16px 36px #0f172a59}.card-grid-preview{position:relative;width:100%;aspect-ratio:63 / 88;background:#0f172a59;display:flex;align-items:center;justify-content:center;padding:0;overflow:hidden}.card-grid-preview img{width:100%;height:100%;object-fit:contain;display:block}.card-grid-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#e2e8f0b3}.card-quantity{display:inline-flex;align-items:center;gap:.35rem;background:#0f172a8c;border-radius:999px;padding:.25rem .5rem;border:1px solid rgba(148,163,184,.35)}.card-quantity--overlay{position:absolute;bottom:.75rem;left:50%;transform:translate(-50%);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f172ac7;padding:.4rem .75rem;border-radius:999px;border:1px solid rgba(148,163,184,.45);box-shadow:0 14px 28px #0f172a80}.card-quantity--overlay input{width:2.5rem}.card-quantity--overlay button{width:1.75rem;height:1.75rem}.card-quantity button{background:transparent;border:none;color:inherit;font-size:1.1rem;cursor:pointer;width:1.6rem;height:1.6rem;line-height:1}.card-quantity input{width:3rem;background:transparent;border:none;color:inherit;text-align:center;font-size:.95rem;font-weight:600}.card-quantity input:focus{outline:none}.load-more{display:flex;justify-content:center;margin-top:1rem}.summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.summary-actions{display:flex;gap:.75rem;margin-bottom:.85rem;align-items:flex-end;flex-wrap:wrap}.auto-deck-size{display:flex;flex-direction:column;gap:.35rem;min-width:0}.auto-deck-size span{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8bf}.auto-generate-button[disabled]{opacity:.6;cursor:wait;pointer-events:none}.summary-label{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8b3}.summary-value{font-size:1.6rem;display:block}.summary-colors{display:flex;gap:.5rem;flex-wrap:wrap}.mana-pill{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:1px solid rgba(148,163,184,.35);font-weight:700;letter-spacing:.08em}.mana-w{background:#f8fafce6;color:#1e293bd9}.mana-u{background:#bfdbfee6;color:#1e40aff2}.mana-b{background:#1e293b99;color:#e2e8f0e6}.mana-r{background:#fca5a5d9;color:#7d1d1df2}.mana-g{background:#a7f3d0d9;color:#047857f2}.mana-c{background:#e2e8f0a6;color:#1e293be6}.summary-empty{font-size:.78rem;color:#94a3b8bf}.summary-selection{display:flex;flex-direction:column;gap:.75rem}.selection-list{display:flex;flex-direction:column;gap:.65rem;max-height:220px;overflow-y:auto;padding-right:.25rem}.selection-item{display:flex;justify-content:space-between;gap:.75rem;align-items:center;padding:.6rem .75rem;border-radius:12px;background:#1e293b99;border:1px solid rgba(148,163,184,.2)}.selection-item span{display:block;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8bf}.selection-actions{display:inline-flex;align-items:center;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}.selection-actions .remove-card{border:none;background:#ef444433;color:#fecacaf2;padding:.35rem .6rem;border-radius:8px;cursor:pointer;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.selection-actions .remove-card:hover{background:#ef444459}.selection-actions .commander-toggle{border:none;background:#3b82f633;color:#bfdbfef2;padding:.35rem .6rem;border-radius:8px;cursor:pointer;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.selection-actions .commander-toggle:hover{background:#3b82f659}.selection-actions .commander-toggle.active{background:#3b82f673;color:#e0f2fef2}.selection-actions .commander-toggle:disabled{opacity:.45;cursor:not-allowed}.selection-placeholder{margin:0;font-size:.78rem;color:#94a3b8b3}.summary-commanders{display:flex;flex-direction:column;gap:.45rem}.summary-commanders h4{margin:0;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8cc}.commander-list{display:flex;flex-wrap:wrap;gap:.5rem}.commander-pill{display:inline-flex;align-items:center;justify-content:center;padding:.35rem .65rem;border-radius:999px;background:#3b82f633;color:#bfdbfef2;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.commander-hint{margin:0;font-size:.75rem;color:#94a3b8bf}.field-block{display:flex;flex-direction:column;gap:.45rem}.field-block span,.field-block legend{font-size:.78rem;text-transform:uppercase;letter-spacing:.09em;color:#94a3b8bf}.field-block textarea{resize:vertical}.apply-options{display:flex;flex-direction:column;gap:.45rem;align-items:flex-start;width:100%}.apply-options label{display:flex;align-items:flex-start;gap:.5rem;font-size:.85rem;text-align:left;width:100%}.apply-options input[type=radio]{width:auto;height:auto;margin:.15rem 0 0;flex-shrink:0}.deck-builder-save{width:100%;justify-content:center;margin-top:.5rem}.deck-builder-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.deck-builder-actions .deck-builder-save{flex:1 1 160px;margin-top:0}.deck-builder-export{flex:1 1 140px;justify-content:center}.save-hint{margin:.5rem 0 0;font-size:.75rem;color:#f87171d9}@media(max-width:1200px){.deck-builder-panel{width:98vw;max-width:none}}@media(max-width:768px){.deck-builder-backdrop{padding:1rem;align-items:flex-start;overflow-y:auto}.deck-builder-panel{border-radius:18px;width:min(100%,100vw);max-height:none;height:auto}.card-toolbar{grid-template-columns:1fr}.deck-builder-header{flex-direction:column;align-items:flex-start;position:relative;padding-right:3.5rem}.deck-builder-close{align-self:flex-end;position:absolute;top:1.25rem;right:1.5rem}.deck-builder-summary{padding-bottom:2.5rem}}@media(max-width:480px){.card-grid{grid-template-columns:minmax(0,1fr)}}.game-board{display:flex;flex-direction:column;gap:1.5rem;position:relative;padding-top:3.5rem;width:100%;max-width:100%}@media(orientation:landscape)and (min-aspect-ratio:16/10){.game-board{min-height:100vh;max-height:none;padding-bottom:0;padding-top:1rem;overflow:visible}}@media(max-width:768px){.game-board{padding-top:4.5rem}}.game-board.empty{align-items:center;justify-content:center;gap:1rem;text-align:center;min-height:60vh;background:#0f172a80;border-radius:18px;border:1px dashed rgba(148,163,184,.35);padding:2rem}.priority-notification{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:100;background:linear-gradient(135deg,#f59e0bf2,#ea580cf2);border:2px solid rgba(251,191,36,.8);border-radius:12px;box-shadow:0 8px 32px #f59e0b66,0 0 0 1px #fbbf244d inset;padding:1rem 1.5rem;min-width:320px;max-width:90vw;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:priority-pulse 2s ease-in-out infinite}@keyframes priority-pulse{0%,to{box-shadow:0 8px 32px #f59e0b66,0 0 0 1px #fbbf244d inset}50%{box-shadow:0 8px 32px #f59e0b99,0 0 0 2px #fbbf2480 inset,0 0 20px #fbbf2466}}.priority-notification-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.priority-icon{font-size:1.5rem;animation:priority-icon-flash 1s ease-in-out infinite}@keyframes priority-icon-flash{0%,to{opacity:1}50%{opacity:.6}}.priority-title{font-size:1.125rem;font-weight:700;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3)}.priority-notification-body{margin-bottom:1rem;display:flex;gap:1rem;align-items:center}.priority-card-preview{flex-shrink:0;display:flex;align-items:center}.priority-text{flex:1;min-width:0}.priority-message{font-size:.95rem;color:#fffffff2;margin:0 0 .5rem;line-height:1.4}.priority-message strong{font-weight:700;color:#fff}.priority-hint{font-size:.85rem;color:#fffc;margin:0;font-style:italic}.priority-notification-actions{display:flex;justify-content:flex-end;gap:.5rem}.priority-btn{padding:.5rem 1rem;border-radius:6px;font-size:.9rem;font-weight:600;border:none;cursor:pointer;transition:all .2s ease}.priority-btn-pass{background:#fffffff2;color:#d97706;box-shadow:0 2px 8px #0003}.priority-btn-pass:hover{background:#fff;transform:translateY(-1px);box-shadow:0 4px 12px #0000004d}.priority-btn-pass:active{transform:translateY(0)}@media(max-width:768px){.priority-notification{padding:.875rem 1.25rem;min-width:280px}.priority-notification-body{flex-direction:column;gap:.75rem}.priority-title{font-size:1rem}.priority-message{font-size:.875rem}.priority-hint{font-size:.8rem}}.replay-status-banner{position:absolute;top:.15rem;left:50%;transform:translate(-50%);padding:.45rem .9rem;color:#e2e8f0e6;box-shadow:0 10px 24px #0f172a40;pointer-events:none;z-index:25;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.replay-status-banner.step{background:var(--theme-primary-light, rgba(20, 83, 255, .2));border-color:var(--theme-accent, rgba(96, 165, 250, .5))}.loading-logo{width:60%;max-width:60%;height:auto;margin-bottom:1.25rem}.player-panels{display:flex;flex-direction:column;gap:1.5rem;width:100%;position:relative;z-index:0}@media(orientation:landscape)and (min-aspect-ratio:16/10){.player-panels{flex:1;justify-content:space-between}}.player-panel{padding:1.25rem;border-radius:18px;background:linear-gradient(135deg,var(--theme-bg-from, rgba(17, 24, 39, .75)),var(--theme-bg-to, rgba(17, 24, 39, .75)));border:1px solid rgba(148,163,184,.25)}.player-panel.active{background:var(--turn-indicator-active, rgba(37, 99, 235, .35));border-color:var(--turn-indicator-active-border, rgba(96, 165, 250, .6));box-shadow:0 0 24px var(--turn-indicator-active-shadow, rgba(96, 165, 250, .2))}.player-panel.turn-owner{background:var(--turn-indicator-turn-owner, rgba(65, 105, 225, .72));border-color:var(--turn-indicator-turn-owner-border, rgba(147, 197, 253, .8));box-shadow:0 0 28px var(--turn-indicator-turn-owner-shadow, rgba(65, 105, 225, .4))}.player-panel.active:not(.turn-owner){background:linear-gradient(135deg,var(--theme-bg-from, rgba(17, 24, 39, .75)),var(--theme-bg-to, rgba(17, 24, 39, .75)));border-color:#94a3b840;box-shadow:none}.player-panel .battlefield{position:relative;border-radius:14px;padding:.75rem;background:var(--theme-card-background, none),var(--gameboard-background, none);background-size:cover,cover;background-position:center,center;background-repeat:no-repeat,no-repeat;background-blend-mode:overlay,normal}.player-panel .battlefield:before{content:"";position:absolute;inset:0;border-radius:14px;background:transparent;transition:background .16s ease,box-shadow .16s ease;pointer-events:none;z-index:0}@media(orientation:landscape)and (min-aspect-ratio:16/10){.player-panel .battlefield{transform-style:preserve-3d}}.player-panel.ai .battlefield,.player-panel.player .battlefield{align-items:flex-start}.player-panel:not(.turn-owner) .battlefield:before{background:var(--battlefield-turn-owner, linear-gradient(180deg, rgba(65, 105, 225, .42) 0%, rgba(37, 99, 235, .26) 100%));box-shadow:var(--battlefield-turn-owner-shadow, inset 0 0 20px rgba(65, 105, 225, .32))}.player-panel.turn-owner .battlefield:before{background:#0f172a1a;box-shadow:none}.player-panel-content{display:flex;align-items:stretch;gap:1.5rem}.player-panel-content.opponent-layout,.player-panel-content.player-layout{flex-direction:row}.player-panel-content.player-layout{flex-direction:row-reverse}.panel-main{flex:1;display:flex;flex-direction:column;gap:1.25rem}@media(min-width:961px){.player-panel-content .panel-main{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"stats stats" "battlefield zones";gap:1.25rem 1.5rem;align-items:start}.panel-main .stats{grid-area:stats;justify-content:center}.panel-main .battlefield{grid-area:battlefield}.panel-main .zone-column{grid-area:zones;align-self:stretch;justify-self:end}}@media(min-width:768px){.gameboard-3d-perspective .player-panel.ai .stats{position:relative;left:-13vw;transform:translate(-50%)}}.zone-column{display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:1rem;min-width:clamp(68px,8vw,96px);align-self:stretch}.zone-column.left{align-items:flex-start}.zone-column.right{align-items:center}.zone-column .zone-stack{--zone-stack-width: clamp( calc(140px * var(--zone-stack-scale, 1)), calc(14vw * var(--zone-stack-scale, 1)), calc(190px * var(--zone-stack-scale, 1)) )}.zone-stack-group{display:flex;flex-direction:column;align-items:center;gap:.65rem}.zone-column.left .zone-stack-group{align-items:flex-start}.zone-column.right .zone-stack-group{align-items:center}.graveyard-preview-card{display:flex;justify-content:center;width:100%;cursor:pointer}.zone-column.left .graveyard-preview-card{justify-content:flex-start}.graveyard-preview-card .card-frame-wrapper{margin:0}@media(max-width:960px){.player-panel-content,.player-panel-content.opponent-layout,.player-panel-content.player-layout{flex-direction:column;align-items:stretch}.graveyard-preview-card{width:auto}}@media(max-width:960px)and (orientation:portrait){.player-panel,.player-panel-content,.player-panel-content.opponent-layout,.player-panel-content.player-layout{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:.5rem!important}.player-panel-content .panel-main,.gameboard-3d-perspective .panel-main,.panel-main.panel-main-3d-wrapper{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;gap:.75rem!important;grid-template-areas:none!important;grid-template-columns:none!important;align-items:flex-start!important;justify-content:center!important}.panel-main .player-name-with-avatar{order:1!important;flex:0 0 100%!important;width:100%!important}.panel-main .stats{order:2!important;flex:0 0 100%!important;width:100%!important;justify-content:center!important}.panel-main .zone-column.left,.panel-main .zone-column.right{order:3!important;display:flex!important;flex-direction:row!important;justify-content:center!important;align-items:center!important;gap:.35rem!important;flex:0 0 100%!important;width:100%!important;max-width:100%!important;padding:.4rem .3rem!important;margin:0 .1rem!important;grid-area:none!important;position:relative!important;background:#0f172a4d!important;border-radius:8px!important}.panel-main .battlefield,.panel-main .battlefield-3d-root{order:4!important;flex:0 0 100%!important;width:100%!important;grid-area:none!important}.zone-column .zone-stack-group,.zone-column.left .zone-stack-group,.zone-column.right .zone-stack-group{flex-direction:row!important;gap:.35rem!important;justify-content:center!important;align-items:center!important}.zone-column .zone-stack,.zone-column.left .zone-stack,.zone-column.right .zone-stack{--zone-stack-width: clamp( calc(55px * var(--zone-stack-scale, 1)), calc(11vw * var(--zone-stack-scale, 1)), calc(70px * var(--zone-stack-scale, 1)) ) !important}}.player-panel .stats{display:flex;flex-direction:column;gap:.75rem;align-items:center;text-align:center}.stat-heading{margin:0;font-size:1.25rem;letter-spacing:.04em}.player-name-with-avatar{display:flex;align-items:center;gap:.75rem;margin-bottom:.25rem}.player-name-with-avatar .stat-heading{margin:0}.stat-row{display:inline-flex;align-items:center;flex-wrap:wrap;gap:.75rem}.stat-row.mana-pool-row{margin-top:.5rem;width:100%}.battlefield-mana-pool{margin-bottom:.75rem;padding:.5rem;background:#0f172ab3;border-radius:8px;border:1px solid var(--theme-primary-light, rgba(96, 165, 250, .3))}.stat-item{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .6rem;border-radius:999px;background:#0f172a8c;border:1px solid var(--theme-primary-light, rgba(96, 165, 250, .25));font-size:.88rem;letter-spacing:.03em}@media(max-width:768px){.stat-row{flex-wrap:nowrap;gap:.5rem;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;touch-action:manipulation;scrollbar-width:none}.stat-row::-webkit-scrollbar{display:none}.stat-item{padding:.3rem .5rem;gap:.25rem;font-size:.8rem;white-space:nowrap;flex-shrink:0}}@media(max-width:640px){.stat-row{gap:.4rem}.stat-item{padding:.3rem .45rem;gap:.25rem;font-size:.7rem}.stat-label{font-size:.65rem}.stat-value{font-size:.75rem}}@media(max-width:480px){.stat-row{gap:.3rem}.stat-item{padding:.2rem .35rem;gap:.15rem;font-size:.65rem}.stat-label{font-size:.6rem}.stat-value{font-size:.7rem}}.stat-label{text-transform:uppercase;font-weight:600;color:#bfdbfec7}.stat-value{font-weight:700;color:#f8fafc}.zone-stacks{display:flex;align-items:flex-end;gap:.85rem;flex-wrap:wrap}.zone-stack{--zone-stack-width: clamp( calc(75px * var(--zone-stack-scale, 1)), calc(8.5vw * var(--zone-stack-scale, 1)), calc(95px * var(--zone-stack-scale, 1)) );width:var(--zone-stack-width);padding:0;margin:0;border:none;background:none;display:inline-flex;flex-direction:column;align-items:center;gap:.5rem;color:inherit;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.zone-stack:focus-visible{outline:2px solid rgba(148,163,184,.9);outline-offset:4px}.zone-stack:disabled{opacity:.72;cursor:default}.zone-stack.interactive:hover:not(:disabled),.zone-stack.interactive:focus-visible{transform:translateY(-2px);filter:brightness(1.05) drop-shadow(0 0 8px var(--theme-primary, rgba(96, 165, 250, .5)))}.zone-stack-card{position:relative;width:var(--zone-stack-width);height:calc(var(--zone-stack-width) * 1.4);border-radius:12px;transform:translateZ(0);transition:border .2s ease,box-shadow .2s ease;pointer-events:none}.zone-stack-card:before,.zone-stack-card:after{content:"";position:absolute;inset:0;border-radius:inherit;border:1px solid var(--theme-primary-light, rgba(148, 163, 184, .25));background:linear-gradient(160deg,#1e293bcc,#0f172a99);transform:translate(4px,-4px);opacity:.65;z-index:-1;box-shadow:0 12px 26px #0f172a59}.zone-stack-card:after{transform:translate(8px,-8px);opacity:.45}.zone-stack-surface{position:absolute;inset:0;border-radius:inherit;overflow:hidden;border:1px solid var(--theme-primary-light, rgba(148, 163, 184, .35));background:linear-gradient(170deg,var(--theme-bg-from, rgba(30, 41, 59, .88)),var(--theme-bg-to, rgba(15, 23, 42, .65)));display:flex;align-items:flex-end;justify-content:center;padding:.35rem;box-shadow:inset 0 1px #ffffff0f,0 18px 32px #0f172a73}.zone-stack-card.has-art .zone-stack-surface{background-size:contain;background-position:center;background-repeat:no-repeat;padding:0}.zone-stack-card.has-art .zone-stack-surface:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0f172a14,#0f172aa6)}.zone-stack.face-down .zone-stack-card:before,.zone-stack.face-down .zone-stack-card:after{background:linear-gradient(170deg,#1e293be6,#0f172a99);border-color:var(--theme-primary-light, rgba(89, 118, 171, .4))}.zone-stack.face-down .zone-stack-surface{background:radial-gradient(circle at 50% 30%,var(--theme-primary-light, rgba(96, 165, 250, .22)),rgba(15,23,42,.85));border-color:var(--theme-accent, rgba(96, 165, 250, .45))}.zone-stack-top-name{position:relative;z-index:1;font-size:calc(.75rem * var(--zone-stack-scale, 1));font-weight:600;text-align:center;letter-spacing:.04em;text-transform:uppercase;color:#f1f5f9eb;text-shadow:0 1px 3px rgba(15,23,42,.7);line-height:1.2;max-height:2.4em;overflow:hidden}.zone-stack-label{font-size:calc(.78rem * var(--zone-stack-scale, 1));letter-spacing:.1em;text-transform:uppercase;color:var(--theme-accent, rgba(191, 219, 254, .78));font-weight:600}.zone-stack-count{display:inline-flex;align-items:center;justify-content:center;min-width:calc(2.25rem * var(--zone-stack-scale, 1));padding:calc(.2rem * var(--zone-stack-scale, 1)) calc(.6rem * var(--zone-stack-scale, 1));border-radius:999px;background:#0f172ab3;border:1px solid rgba(148,163,184,.35);font-size:calc(.85rem * var(--zone-stack-scale, 1));font-weight:700;letter-spacing:.08em}@media(max-width:768px){.zone-stacks{width:100%;justify-content:flex-start}}.zone-modal-backdrop{position:fixed;inset:0;background:#0009;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);display:flex;align-items:center;justify-content:center;padding:2rem;z-index:1400;overscroll-behavior:contain;touch-action:none}.zone-modal{width:min(960px,100%);max-height:min(88vh,840px);background:linear-gradient(145deg,var(--theme-bg-from, rgba(17, 24, 39, .94)),var(--theme-bg-to, rgba(17, 24, 39, .94)));border-radius:20px;border:2px solid var(--theme-accent, rgba(148, 163, 184, .4));box-shadow:0 32px 80px #000c,0 0 0 1px var(--theme-accent, rgba(148, 163, 184, .2)) inset;display:flex;flex-direction:column;gap:1rem;padding:1.5rem 1.75rem;touch-action:auto;overscroll-behavior:contain}.zone-modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.zone-modal-header h3{margin:0;font-size:1.6rem;letter-spacing:.05em}.zone-modal-header .icon-button{font-size:1.8rem;line-height:1;border:none;background:transparent;color:#e2e8f0d9;cursor:pointer;padding:.1rem .35rem;transition:color .2s ease}.zone-modal-header .icon-button:hover{color:#f8fafc}.zone-modal-meta{display:flex;gap:1rem;flex-wrap:wrap;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8c7}.zone-modal-grid{flex:1;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:1rem;padding-right:.5rem}.zone-modal-grid .card-frame-wrapper{width:100%}.zone-modal-empty{margin:2rem 0;text-align:center;font-size:.9rem;color:#94a3b8bf}@media(max-width:640px){.zone-modal{padding:1.25rem;border-radius:16px}.zone-modal-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}}.battlefield{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem;min-height:140px}.player-panel .battlefield{position:relative;padding-right:0}.player-panel .battlefield>*{position:relative;z-index:1}.battlefield-controls{margin-top:.75rem;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.65rem;position:relative;z-index:200}.inline-controls{margin-top:1.25rem;width:100%;display:flex;flex-direction:column;align-items:center;gap:.85rem}.floating-advance-button{border-radius:999px;padding:.75rem 1.75rem;font-weight:600;letter-spacing:.04em;background:#299923!important;border:2px solid var(--turn-owner-border, rgba(148, 163, 184, .6));box-shadow:0 18px 38px #0f172a59,0 0 20px var(--turn-owner-shadow, rgba(59, 130, 246, .3));position:relative;z-index:9000!important;pointer-events:auto}.floating-advance-button:hover:not(:disabled){background:#1de507b8;border-color:var(--turn-owner-border, rgba(191, 219, 254, .65));box-shadow:0 20px 44px #3b82f640,0 0 30px var(--turn-owner-shadow, rgba(59, 130, 246, .5))}.floating-advance-button.inactive{cursor:default;background:var(--theme-primary, rgb(59, 130, 246))!important;border:2px solid var(--theme-accent, rgb(147, 197, 253));box-shadow:0 4px 12px #0006,0 0 20px var(--theme-shadow, rgba(59, 130, 246, .6)),inset 0 1px 2px #fff3;color:#fff;-webkit-backdrop-filter:none;backdrop-filter:none}.floating-advance-button.inactive:hover{background:var(--theme-primary, rgb(59, 130, 246))!important;border-color:var(--theme-accent, rgb(191, 219, 254));box-shadow:0 6px 16px #00000080,0 0 25px var(--theme-shadow, rgba(59, 130, 246, .8)),inset 0 1px 2px #ffffff4d;filter:brightness(1.1)}.floating-advance-button.opponent-turn{cursor:pointer;background:var(--theme-primary, rgb(59, 130, 246))!important;border:2px solid var(--theme-accent, rgb(147, 197, 253));color:#fff;box-shadow:0 8px 16px #0006,0 0 25px var(--theme-shadow, rgba(59, 130, 246, .6)),inset 0 1px 2px #fff3;-webkit-backdrop-filter:none;backdrop-filter:none}.floating-advance-button.opponent-turn:hover{background:var(--theme-primary, rgb(59, 130, 246))!important;border-color:var(--theme-accent, rgb(191, 219, 254));box-shadow:0 10px 20px #00000080,0 0 35px var(--theme-shadow, rgba(59, 130, 246, .8)),inset 0 1px 2px #ffffff4d;filter:brightness(1.1)}.floating-advance-button:disabled{opacity:.4;cursor:not-allowed;background:#47556980;border-color:#94a3b84d;color:#cbd5e1b3;box-shadow:none}.battlefield-action-buttons{display:flex;gap:.75rem;align-items:center;justify-content:center;flex-wrap:wrap}.oracle-trigger-button{border-radius:999px;padding:.75rem 1.5rem;font-weight:600;letter-spacing:.04em;background:linear-gradient(135deg,#8a5cf6cc,#3b82f6cc);border-color:#8a5cf699;box-shadow:0 4px 12px #8a5cf64d;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;gap:.5rem;transition:all .2s}.oracle-trigger-button:hover{background:linear-gradient(135deg,#8a5cf6e6,#3b82f6e6);border-color:#8a5cf6cc;box-shadow:0 6px 16px #8a5cf666;transform:translateY(-1px)}.inline-prompt{background:#1e293b;border:1px solid rgba(96,165,250,.35);border-radius:12px;padding:.85rem 1rem;display:flex;flex-direction:column;gap:.65rem;width:100%;z-index:9000}.inline-prompt .prompt-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.inline-prompt.attackers{align-items:flex-start}.selected-attackers-list{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;background:#0003;border-radius:.5rem;margin-bottom:.5rem}.selected-attackers-list strong{color:#60a5fa;font-size:.9rem}.attacker-chips{display:flex;flex-wrap:wrap;gap:.5rem}.attacker-chip{padding:.4rem .8rem;background:linear-gradient(135deg,#dc2626,#991b1b);border:1px solid #ef4444;border-radius:.375rem;font-size:.875rem;font-weight:600;color:#fff;box-shadow:0 2px 4px #0000004d}.inline-prompt.blockers{gap:.85rem}.inline-prompt.targeting{gap:.75rem;align-items:stretch}.inline-prompt.targeting .prompt-header span{font-weight:600}.inline-prompt.targeting .target-list{flex-wrap:wrap;justify-content:flex-start}.inline-prompt.targeting .ghost-button{justify-content:center}@media(max-width:640px){.floating-advance-button{padding:.65rem 1.4rem}}.targeting-hint{font-size:.8rem;color:#e2e8f0b3;text-transform:uppercase;letter-spacing:.08em}.card-frame-wrapper{position:relative;display:inline-block;overflow:visible}.card-frame-scale{width:250px;height:360px;transform-origin:top left;transition:transform .18s ease-in-out}.card-frame{width:250px;min-height:360px;aspect-ratio:63 / 88;border-radius:14px;padding:0;background:var(--card-background, linear-gradient(160deg, rgba(30, 41, 59, .8), rgba(30, 41, 59, .55)));border:1px solid var(--card-border, rgba(148, 163, 184, .25));box-shadow:var(--card-shadow, none);color:var(--card-text, #f8fafc);transition:transform .2s ease,border .2s ease,box-shadow .2s ease;cursor:pointer;position:relative;overflow:hidden;perspective:1200px;transform-style:preserve-3d;backface-visibility:hidden}.card-frame.highlight{border-width:4px;border-color:#5eead4f2;box-shadow:0 0 12px #2dd4bf80,0 0 24px #2dd4bf4d,inset 0 0 35px #5eead426;animation:hint-pulse 4s ease-in-out infinite}@keyframes hint-pulse{0%,to{border-color:#5eead4b3;box-shadow:0 0 12px #2dd4bf4d,0 0 24px #2dd4bf26,inset 0 0 35px #5eead41a}50%{border-color:#5eead4;box-shadow:0 0 12px #2dd4bf99,0 0 24px #2dd4bf66,inset 0 0 35px #5eead433}}.card-frame.disabled{opacity:.5;cursor:not-allowed}.card-frame.tapped{transform:rotate(90deg)}.card-contents{position:relative;z-index:2;padding:.65rem;display:flex;flex-direction:column;gap:.55rem;height:100%;box-sizing:border-box;transition:transform .55s ease,opacity .55s ease;transform-origin:center;backface-visibility:hidden}.card-frame.full-card .card-contents{transform:rotateY(180deg);opacity:0;pointer-events:none}.card-full-art{position:absolute;inset:0;border-radius:inherit;overflow:hidden;z-index:1;display:flex;align-items:center;justify-content:center;background:#0f172a66;opacity:0;transform:rotateY(-180deg);transition:transform .55s ease,opacity .55s ease;padding:0;box-sizing:border-box;backface-visibility:hidden}.card-full-art img{width:100%;height:100%;object-fit:contain;object-position:center;display:block}.card-illustration img,.card-full-art img,.card-inspect-image img{-webkit-touch-callout:none}.card-full-art .fallback-art{text-transform:uppercase;letter-spacing:.1em;font-size:.7rem;color:#f8fafcd9;padding:1rem;text-align:center}.card-frame.full-card .card-full-art{opacity:1;transform:rotateY(0)}.card-full-art-overlay{position:absolute;bottom:0;left:0;right:0;padding:.5rem;background:linear-gradient(to top,rgba(0,0,0,.8) 0%,transparent 100%);display:flex;flex-direction:column;gap:.25rem;pointer-events:none}.card-full-art-stats{font-size:1.5rem;font-weight:700;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.9),0 0 4px rgba(0,0,0,.8);text-align:right;padding:.25rem .5rem;position:relative;display:inline-flex;align-items:center;gap:.5rem;align-self:flex-end}.card-full-art-stats .has-damage{color:#ef4444;animation:damage-pulse 1.5s ease-in-out infinite}.card-damage-indicator{font-size:1rem;font-weight:600;color:#fef2f2;background:linear-gradient(135deg,#dc2626,#b91c1c);padding:.15rem .4rem;border-radius:.25rem;box-shadow:0 2px 4px #0000004d,0 0 8px #dc262666;animation:damage-appear .3s ease-out}@keyframes damage-pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes damage-appear{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.card-frame.full-card{background:#0f172a40}.card-inspect-backdrop{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:2rem;background:var(--theme-backdrop, rgba(15, 23, 42, .7));-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:15000}.card-inspect-content{position:relative;display:flex;gap:1.5rem;width:min(820px,100%);max-height:min(80vh,720px);background:linear-gradient(135deg,var(--theme-bg-from, rgba(15, 23, 42, .92)),var(--theme-bg-to, rgba(15, 23, 42, .92)));border:1px solid var(--theme-border, rgba(96, 165, 250, .35));border-radius:24px;padding:2rem 2.5rem;box-shadow:0 28px 60px #000000a6;color:var(--theme-text, #e2e8f0);touch-action:pan-y}.card-inspect-image{flex:0 0 360px;display:flex;align-items:center;justify-content:center;border-radius:18px;overflow:hidden;background:var(--theme-card-bg, rgba(30, 41, 59, .6));box-shadow:inset 0 0 0 1px var(--theme-border, rgba(96, 165, 250, .2))}.card-inspect-image img{display:block;width:100%;height:auto}.card-inspect-image.fallback{color:#e2e8f0b3;font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;padding:1.5rem;text-align:center}.card-inspect-details{flex:1;display:flex;flex-direction:column;gap:1.25rem;overflow-y:auto;padding-right:.5rem}.card-inspect-header h2{margin:0;font-size:1.85rem;letter-spacing:.03em}.card-inspect-type{font-size:.95rem;text-transform:uppercase;letter-spacing:.08em;color:var(--theme-text-secondary, rgba(191, 219, 254, .8))}.card-inspect-mana{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.85rem}.card-inspect-mana .mana-symbol{transform:none}.card-inspect-header .card-choice-badge,.card-inspect-header .card-counters-display,.card-inspect-header .card-level-display,.card-inspect-header .card-mutate-display,.card-inspect-header .card-tapped-indicator,.card-inspect-header .card-damage-indicator{margin-top:.75rem}.card-tapped-indicator{background:linear-gradient(135deg,#64748b4d,#47556940);border:1px solid rgba(148,163,184,.4);border-radius:6px;padding:.3rem .6rem;font-size:.85rem;color:#94a3b8;font-weight:600;text-align:center}.card-damage-indicator{background:linear-gradient(135deg,#ef44444d,#dc262640);border:1px solid rgba(248,113,113,.5);border-radius:6px;padding:.3rem .6rem;font-size:.85rem;color:#fca5a5;font-weight:600;text-align:center}.card-inspect-rules{display:flex;flex-direction:column;gap:.75rem;line-height:1.5;font-size:1.02rem;color:var(--theme-text, rgba(226, 232, 240, .92))}.card-inspect-rules p{margin:0}.card-inspect-actions{display:flex;justify-content:flex-end;gap:.75rem}.card-inspect-use{min-width:160px;justify-content:center}.card-inspect-mobile-actions{display:none}.card-inspect-footer{margin-top:auto;display:flex;justify-content:space-between;gap:1rem;font-size:.9rem;text-transform:uppercase;letter-spacing:.08em;color:var(--theme-text-muted, rgba(148, 163, 184, .85))}.card-inspect-close{position:absolute;top:.75rem;right:.75rem;padding:.25rem .5rem;border:none;border-radius:999px;background:transparent;color:var(--theme-text, rgba(226, 232, 240, .9));font-size:1.85rem;line-height:1;cursor:pointer;transition:color .2s ease}.card-inspect-close:hover{color:var(--theme-accent, #f8fafc)}.card-inspect-nav{position:absolute;top:50%;width:2.75rem;height:2.75rem;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid rgba(148,163,184,.45);background:#0f172a7a;color:#e2e8f0d9;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease;z-index:2;font-size:1.45rem;line-height:1}.card-inspect-nav:hover{background:#3b82f659;color:#f8fafc;border-color:#60a5fab3}.card-inspect-nav:disabled{opacity:.35;cursor:default}.card-inspect-nav.nav-prev{left:-.25rem}.card-inspect-nav.nav-next{right:-.25rem}.card-inspect-context{display:flex;justify-content:space-between;align-items:center;gap:.75rem;font-size:.9rem;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8c7}.card-inspect-context span:last-child{font-variant-numeric:tabular-nums}@media(max-width:640px){.card-inspect-backdrop{padding:1.25rem}.card-inspect-content{flex-direction:column;align-items:center;gap:1rem;width:min(440px,94vw);max-height:none;padding:1.5rem}.card-inspect-image{flex:none;width:100%;max-width:360px}.card-inspect-details{display:none}.card-inspect-mobile-actions{display:flex;width:100%;margin-top:1.25rem}.card-inspect-mobile-actions .card-inspect-use{width:100%;min-width:0}.card-inspect-nav{top:calc(50% + .5rem)}.card-inspect-nav.nav-prev{left:.35rem}.card-inspect-nav.nav-next{right:.35rem}}.card-header{display:flex;justify-content:space-between;align-items:center;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;gap:.4rem}.card-frame .card-name{flex:1;font-weight:600;overflow:hidden}.mana-symbol{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid rgba(148,163,184,.45);padding:0 .25rem;min-width:20px;min-height:20px;font-size:.62rem;font-weight:700;text-transform:uppercase;box-shadow:0 2px 4px #0f172a33}.mana-symbol.is-icon{border:none;padding:0;min-width:0;min-height:0;box-shadow:none;background:transparent}.mana-symbol.is-icon[data-size=small]{width:18px;height:18px}.mana-symbol.is-icon[data-size=medium]{width:24px;height:24px}.mana-symbol.is-icon[data-size=large]{width:30px;height:30px}.mana-symbol img{width:100%;height:100%;display:block;object-fit:contain}.mana-symbol[data-inline=true]{margin:0 .12rem;vertical-align:middle}.card-illustration{position:relative;width:100%;height:124px;border-radius:10px;overflow:hidden;background:#0f172a4d;box-shadow:inset 0 0 0 1px #0f172a40;margin-bottom:.45rem}.card-illustration img{width:100%;height:100%;display:block;object-fit:cover}.card-illustration:after{content:"";position:absolute;inset:0;background:var(--card-overlay, linear-gradient(180deg, rgba(15, 23, 42, 0) 35%, rgba(15, 23, 42, .65) 100%));pointer-events:none}.card-illustration.fallback{display:flex;align-items:center;justify-content:center;font-size:.6rem;text-transform:uppercase;letter-spacing:.08em;color:#f8fafccc;background:#0f172a73}.card-rules{flex:1;display:flex;flex-direction:column;gap:.35rem;background:#0f172a47;border-radius:10px;padding:.5rem .55rem;box-shadow:inset 0 0 0 1px #0f172a59}.card-type-line{font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:#0f172aa6;background:#f8fafca6;padding:.15rem .4rem;border-radius:6px;font-weight:600}.card-choice-badge{font-size:.62rem;letter-spacing:.05em;text-transform:uppercase;color:#f8fafce0;background:#1e40af61;border:1px solid rgba(147,197,253,.35);border-radius:6px;padding:.18rem .35rem;align-self:flex-start}.card-counters-display{display:flex;flex-wrap:wrap;gap:.3rem;margin-bottom:.5rem}.card-counter-badge{background:linear-gradient(135deg,#22c55ef2,#16a34ae6);border:2px solid rgba(74,222,128,.8);border-radius:6px;padding:.35rem .65rem;font-size:.85rem;color:#fff;font-weight:700;text-transform:capitalize;white-space:nowrap;box-shadow:0 2px 8px #22c55e80,0 0 20px #4ade804d;text-shadow:0 1px 2px rgba(0,0,0,.8)}.card-level-display{background:linear-gradient(135deg,#fbbf2433,#fbbf241a);border:1px solid rgba(251,191,36,.4);border-radius:6px;padding:.3rem .6rem;margin-bottom:.5rem;font-size:.8rem;color:#fbbf24;font-weight:700;text-align:center;text-transform:uppercase;letter-spacing:.05em}.card-mutate-display{background:linear-gradient(135deg,#8b5cf633,#8b5cf61a);border:1px solid rgba(139,92,246,.4);border-radius:6px;padding:.3rem .6rem;margin-bottom:.5rem;font-size:.8rem;color:#a78bfa;font-weight:600;text-align:center}.card-rules-text{font-size:.74rem;line-height:1.3;color:var(--card-rules-text, rgba(226, 232, 240, .85))}.card-rules-text p{margin:0}.card-rules-text p+p{margin-top:.35rem}.card-footer{margin-top:auto;font-size:.72rem;color:var(--card-footer-text, rgba(226, 232, 240, .7));display:flex;align-items:center;justify-content:space-between;padding-top:.35rem}.card-footer-set{text-transform:uppercase;letter-spacing:.06em;font-weight:600}.card-footer-stat{min-width:46px;text-align:center;padding:.2rem .35rem;border-radius:8px;border:1px solid rgba(15,23,42,.35);background:#f8fafcbf;color:#0f172acc;font-weight:700;box-shadow:inset 0 0 0 1px #0f172a40}.card-footer-stat:before{content:""}.card-action-button{margin-top:.25rem;padding:.35rem .5rem;border-radius:8px;border:1px solid rgba(94,234,212,.6);background:#0f766e99;color:#ecfeff;font-size:.7rem;font-weight:600;cursor:pointer;transition:background .15s ease,transform .15s ease;display:flex;flex-direction:column;gap:.15rem;align-items:center}.card-action-subtitle{font-size:.6rem;font-weight:500;opacity:.85;color:#fbbf24;text-align:center;line-height:1.2}.card-action-button:hover{background:#0d9488bf;transform:translateY(-1px)}.card-frame.disabled .card-action-button{opacity:.45;cursor:not-allowed;pointer-events:none}.hand-panel{padding:1rem;background:#0f172aa6;border-radius:16px;border:1px solid rgba(148,163,184,.25);width:100%;position:relative;z-index:1}.hand-3d-wrapper{transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s ease!important}.hand-3d-wrapper.hand-revealed{transform:translateY(0)!important;opacity:1!important}.hand-3d-wrapper:not(.hand-revealed){transform:translateY(120%)!important;opacity:0!important}@media(orientation:landscape){.hand-3d-wrapper{position:fixed;bottom:10px;left:0;right:0;pointer-events:none;z-index:90000;min-height:calc(200px * var(--hand-card-scale, 1));height:auto;width:100%;max-width:100vw;padding:calc(.5rem * var(--hand-card-scale, 1)) 1rem;display:flex;align-items:flex-end;justify-content:center;overflow:visible}.hand-3d-wrapper.hand-revealed{pointer-events:none!important}.hand-3d-wrapper.hand-revealed .hand-card-3d,.hand-3d-wrapper.hand-revealed .hand-card-3d .card-frame-wrapper,.hand-3d-wrapper.hand-revealed .hand-card-3d .card-frame,.hand-3d-wrapper.hand-revealed .hand-card-3d .card-frame *{pointer-events:auto!important}.hand-3d-wrapper:not(.hand-revealed){pointer-events:none!important}}.section-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.section-header h2{margin:0}.import-controls{display:flex;align-items:center;justify-content:flex-end;gap:.625rem;flex-wrap:wrap}@media(max-width:768px){.import-controls{flex-direction:column;align-items:stretch;gap:.5rem}}.land-color-selector{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.5rem .75rem;border-radius:10px;background:#0f172a59;border:1px solid rgba(148,163,184,.25)}.land-color-label{font-weight:600;letter-spacing:.04em}.land-tap-actions{display:flex;gap:.75rem;align-items:center;justify-content:flex-start;flex-wrap:wrap}.land-color-options{display:flex;gap:.5rem}@media(max-width:640px){.land-color-selector{flex-direction:column;align-items:stretch;gap:.55rem}.land-color-label{width:100%}.land-color-options{width:100%;flex-wrap:wrap;justify-content:flex-start}}.color-option{border-radius:999px;border:1px solid rgba(148,163,184,.35);background:#1e293b99;color:inherit;padding:.35rem .75rem;font-weight:600;letter-spacing:.08em;cursor:pointer;transition:all .15s ease}.color-option.selected{border-color:#5eead4bf;background:#0d94888c}label.import-button{position:relative;overflow:hidden;display:inline-flex!important;align-items:center;gap:.5rem;font-family:var(--font-display)!important;font-size:.9375rem!important;font-weight:500!important;line-height:1;border:1px solid rgba(148,163,184,.4);background:transparent;color:inherit;padding:.6rem 1.5rem;border-radius:8px;cursor:pointer;transition:all .2s ease}label.import-button.compact{padding:.5rem 1rem;font-size:.9375rem!important;gap:.5rem}label.import-button:hover{border-color:#94a3b8bf;background:#1e293b73}@media(max-width:768px){label.import-button{width:100%;justify-content:center}}label.import-button span{font-family:var(--font-display)!important;font-size:inherit!important;font-weight:inherit!important}label.import-button svg{width:18px;height:18px;flex-shrink:0}.import-button input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.import-error{margin-top:.5rem;color:#fca5a5;font-size:.85rem}.targeting-panel,.prompt-panel{background:#0000004d;border:1px solid rgba(255,255,255,.1);padding:1rem;border-radius:6px;display:flex;flex-direction:column;gap:.25rem;text-align:center;box-shadow:none}.prompt-stack-inline{display:flex;flex-direction:column;gap:1rem;margin:1.5rem auto;width:min(700px,92%);position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);transform-origin:center center;z-index:100000!important;align-items:center;pointer-events:auto!important;max-height:80vh;overflow-y:auto}@media(orientation:landscape){.prompt-stack-inline{top:45%;transform:translate(-50%,-50%)}}.prompt-stack-inline .prompt-panel{box-shadow:none;border-width:1px;width:100%;align-items:center;pointer-events:auto!important}.prompt-stack-inline .prompt-panel *{pointer-events:auto!important}.prompt-stack-inline .prompt-header{display:flex;justify-content:center;gap:.75rem;align-items:center;text-align:center}.option-prompt-buttons{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:center;pointer-events:auto!important}.option-prompt-buttons button{pointer-events:auto!important}.option-prompt-buttons .mana-choice-button{min-width:80px;min-height:80px;padding:.75rem;display:flex;align-items:center;justify-content:center;border-radius:12px;transition:all .2s ease;border:3px solid rgba(255,255,255,.3)}.option-prompt-buttons .mana-choice-button .mana-choice-symbol{width:48px;height:48px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.5))}.option-prompt-buttons .mana-choice-button[data-mana-color=W]{background:linear-gradient(135deg,#f0e5d0,#e8dcc0);border-color:#f0e5d080}.option-prompt-buttons .mana-choice-button[data-mana-color=W]:hover:not(:disabled){background:linear-gradient(135deg,#f5ead5,#ede1c5);border-color:#f0e5d0cc;box-shadow:0 4px 16px #f0e5d080}.option-prompt-buttons .mana-choice-button[data-mana-color=U]{background:linear-gradient(135deg,#0e68ab,#0a4d7f);border-color:#0e68ab80}.option-prompt-buttons .mana-choice-button[data-mana-color=U]:hover:not(:disabled){background:linear-gradient(135deg,#1075bf,#0c5691);border-color:#0e68abcc;box-shadow:0 4px 16px #0e68ab80}.option-prompt-buttons .mana-choice-button[data-mana-color=B]{background:linear-gradient(135deg,#150b00,#1a0f05);border-color:#50463c80}.option-prompt-buttons .mana-choice-button[data-mana-color=B]:hover:not(:disabled){background:linear-gradient(135deg,#1f1408,#24180d);border-color:#645546cc;box-shadow:0 4px 16px #32281ecc}.option-prompt-buttons .mana-choice-button[data-mana-color=R]{background:linear-gradient(135deg,#d3202a,#a1161e);border-color:#d3202a80}.option-prompt-buttons .mana-choice-button[data-mana-color=R]:hover:not(:disabled){background:linear-gradient(135deg,#e02731,#b01a22);border-color:#d3202acc;box-shadow:0 4px 16px #d3202a80}.option-prompt-buttons .mana-choice-button[data-mana-color=G]{background:linear-gradient(135deg,#00733e,#005530);border-color:#00733e80}.option-prompt-buttons .mana-choice-button[data-mana-color=G]:hover:not(:disabled){background:linear-gradient(135deg,#008348,#006038);border-color:#00733ecc;box-shadow:0 4px 16px #00733e80}.option-prompt-buttons .mana-choice-button[data-mana-color=C]{background:linear-gradient(135deg,#a5a5a5,#7d7d7d);border-color:#a5a5a580}.option-prompt-buttons .mana-choice-button[data-mana-color=C]:hover:not(:disabled){background:linear-gradient(135deg,#b5b5b5,#8d8d8d);border-color:#a5a5a5cc;box-shadow:0 4px 16px #a5a5a580}.option-prompt-buttons .mana-choice-button:hover:not(:disabled){transform:scale(1.1)}.option-prompt-buttons .mana-choice-button:active:not(:disabled){transform:scale(1.05)}.future-prompts{margin-top:.5rem;font-size:.9rem;color:#e2e8f0bf}.creature-type-panel{gap:1rem}.creature-type-suggestions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.creature-type-suggestions .ghost-button{padding:.35rem .85rem;font-size:.85rem}.creature-type-form{display:flex;flex-direction:column;gap:.5rem}.creature-type-input-row{display:flex;gap:.5rem}@media(max-width:768px){.creature-type-input-row{flex-direction:column;gap:.75rem}.creature-type-input-row input,.creature-type-input-row button{width:100%}}.creature-type-input-row input{flex:1;background:#0f172a8c}.battlefield-controls.inline-controls{position:fixed;bottom:240px;right:1rem;z-index:10001;width:auto;max-width:min(400px,40vw);pointer-events:auto}.land-tap-panel{background:#0f172af2;border:2px solid rgba(148,163,184,.4);border-radius:12px;padding:1rem 1.25rem;box-shadow:0 8px 32px #000000b3;max-width:600px;margin:0 auto}.land-color-panel{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem;padding:1rem;background:#1e293bb3;border-radius:8px;border:1px solid rgba(148,163,184,.25)}.land-color-selector{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;background:#334155cc;border-radius:6px}.land-color-label{font-size:.9rem;font-weight:500;color:#e2e8f0;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.land-color-options{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-start}.land-color-options .color-option{padding:.4rem .75rem;background:#475569b3;border:1px solid rgba(148,163,184,.35);border-radius:4px;color:#cbd5e1;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.land-color-options .color-option:hover{background:#475569e6;border-color:#94a3b899;transform:translateY(-1px)}.land-color-options .color-option.selected{background:#3b82f6cc;border-color:#3b82f6;color:#fff;box-shadow:0 0 12px #3b82f699}.land-tap-actions{display:flex;justify-content:center;margin-top:.75rem;gap:.5rem;padding:.75rem .5rem .5rem;border-top:1px solid rgba(148,163,184,.25)}.creature-type-input-row input::placeholder{color:#e2e8f099}.victory-banner{padding:1rem 1.25rem;background:#1e40af99;border-radius:16px;border:1px solid rgba(147,197,253,.45);display:flex;justify-content:space-between;align-items:center;gap:1rem}.victory-banner h2{margin:0;font-size:1.75rem;letter-spacing:.05em}.victory-actions{display:flex;gap:.75rem}.empty-actions{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}.target-list{display:flex;gap:.75rem}.blocker-selection{display:flex;gap:1rem}.blocker-pool{display:flex;flex-direction:column;gap:.5rem;flex:1}.blocker-selection button{border-radius:10px;background:#0f172a99;border:1px solid rgba(148,163,184,.3);padding:.5rem 1rem;color:#f9fafb;font-weight:600;cursor:pointer;transition:all .2s ease}.blocker-selection button:hover:not(:disabled){background:#1e293bcc;border-color:#94a3b880}.blocker-selection button.pending{border-color:#5eead4bf;background:#0f766e8c}.attacker-targets{display:flex;flex-direction:column;gap:.5rem;flex:1}.attacker-target{display:flex;justify-content:space-between;align-items:center;padding:.65rem 1rem;background:#0f172a99;border:1px solid rgba(148,163,184,.3);border-radius:10px;color:#f9fafb;font-weight:600;transition:all .2s ease;cursor:default;width:100%;text-align:left}.attacker-target.clickable{cursor:pointer;border-color:#fbbf2480}.attacker-target.clickable:hover{background:#78350f66;border-color:#fbbf24cc;transform:translate(-2px)}.attacker-target.assigned{border-color:#22c55e80;background:#1665344d}.attacker-target:disabled{opacity:.6;cursor:default}.attacker-name{font-weight:600;color:#fbbf24}.blocker-assignment{font-size:.875rem;opacity:.8;font-style:italic}.scoreboard{background:linear-gradient(135deg,var(--theme-bg-from, rgba(15, 23, 42, .75)),var(--theme-bg-to, rgba(15, 23, 42, .75)));padding:1.5rem;border-radius:20px;border:1px solid var(--theme-border, rgba(148, 163, 184, .25))}.score-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1rem}.score-item{background:var(--theme-card-bg, rgba(30, 41, 59, .7));border-radius:12px;padding:.75rem;text-align:center}.score-item .label{display:block;font-size:.75rem;text-transform:uppercase;opacity:.7}.score-item strong{font-size:1.5rem;display:block;margin-top:.25rem}.score-metrics{margin-top:1.5rem}.score-metrics h3{margin-bottom:.5rem}.metrics-table{width:100%;border-collapse:collapse;margin-top:.75rem;font-size:.9rem;background:var(--theme-table-bg, rgba(15, 23, 42, .55));border-radius:12px;overflow:hidden}.metrics-table thead th{text-transform:uppercase;letter-spacing:.08em;font-size:.74rem;color:var(--theme-text-secondary, rgba(191, 219, 254, .75));padding:.65rem .75rem;background:var(--theme-header-bg, rgba(30, 41, 59, .7));border-bottom:1px solid var(--theme-border, rgba(148, 163, 184, .35))}.metrics-table tbody td{padding:.55rem .75rem;border-bottom:1px solid var(--theme-border, rgba(148, 163, 184, .12))}.metrics-table tbody tr:last-child td{border-bottom:none}.metrics-table td:nth-of-type(2){font-weight:600;color:var(--theme-text, #f8fafc)}.metrics-table td:nth-of-type(3){font-weight:600;color:var(--theme-accent, rgba(251, 191, 36, .85))}.match-info{margin-top:1.5rem;font-size:.9rem;color:var(--theme-text, rgba(226, 232, 240, .8))}.phase-summary{margin-top:1.75rem;padding:1rem 1.1rem;border-radius:16px;background:var(--theme-card-bg, rgba(30, 41, 59, .6));border:1px solid var(--theme-border, rgba(96, 165, 250, .25));box-shadow:inset 0 0 0 1px #0f172a26}.phase-summary h3{margin:0 0 .75rem;font-size:1.05rem;letter-spacing:.05em}.phase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.phase-grid .label{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;opacity:.7}.phase-grid .value{display:inline-flex;align-items:center;gap:.4rem;margin-top:.2rem;font-size:1rem;font-weight:600;flex-wrap:wrap}.turn-step-badge{display:inline-flex;align-items:center;padding:.22rem .6rem .22rem 0rem;border-radius:999px;border:none;line-height:1;letter-spacing:.015em;font-size:.78rem;font-weight:600;box-shadow:none;transition:color .18s ease}.turn-step-badge:hover{color:#ffffffeb}.turn-step-text{white-space:nowrap;font-size:.85rem}.timeline-controls{margin-top:1rem;display:flex;flex-direction:column;gap:.75rem}.timeline-top-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.timeline-buttons{display:inline-flex;align-items:center;gap:.5rem}.timeline-button{border:1px solid rgba(96,165,250,.35);background:#0f172a99;color:#e2e8f0e6;border-radius:999px;padding:.35rem .75rem;font-size:.75rem;letter-spacing:.05em;text-transform:uppercase;transition:background .2s ease,border-color .2s ease,color .2s ease}.timeline-button:hover:not(:disabled){background:#2563eb59;border-color:#60a5fa8c;color:#f8fafc}.timeline-button.active{background:#3b82f659;border-color:#60a5fab3;color:#f8fafc}.timeline-button:disabled{opacity:.35;cursor:default}.timeline-advice-toggle{padding:.35rem .85rem}.timeline-slider{display:flex;align-items:center;gap:.65rem}.timeline-slider input[type=range]{flex:1;accent-color:#60a5fa}.timeline-step-count{font-size:.75rem;font-weight:600;letter-spacing:.06em;color:#bfdbfed9}.timeline-meta{display:flex;flex-wrap:wrap;gap:.65rem;font-size:.78rem;letter-spacing:.04em;color:#bfdbfebf}.timeline-meta span+span{position:relative;padding-left:.55rem}.timeline-meta span+span:before{content:"•";position:absolute;left:0;color:#94a3b899}.timeline-advice-panel{padding:.75rem .85rem;border-radius:12px;background:#0f172a8c;border:1px solid rgba(96,165,250,.2);display:flex;flex-direction:column;gap:.5rem}.timeline-advice-list{margin:0;width:100%;display:flex;flex-direction:column;gap:.35rem;font-size:.83rem;color:#e2e8f0d9}.timeline-advice-list li[data-severity=info]::marker{color:#60a5fad9}.timeline-advice-list li[data-severity=warning]::marker{color:#fbbf24e6}.timeline-advice-list li[data-severity=critical]::marker{color:#f87171f2}.timeline-advice-empty{margin:0;font-size:.78rem;letter-spacing:.04em;color:#94a3b8cc}.game-summary-backdrop{position:fixed;inset:0;background:radial-gradient(circle at 20% 20%,#2563eb2e,#080f1eeb);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);display:flex;align-items:center;justify-content:center;padding:2.5rem;z-index:1800}.game-summary-modal{width:min(960px,90vw);background:#0f172aeb;border-radius:24px;border:1px solid rgba(148,163,184,.35);box-shadow:0 28px 90px #080b168c;-webkit-backdrop-filter:saturate(120%);backdrop-filter:saturate(120%);display:flex;flex-direction:column;align-items:stretch;gap:2rem;padding:2.25rem}.game-summary-header{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem;width:100%}.game-summary-header>div:first-child{flex:1;min-width:0}.game-summary-header h2{margin:.25rem 0 0;font-size:2rem;letter-spacing:.06em}.game-summary-subtitle{margin:.4rem 0 0;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;color:#bfdbfec2}.result-tag{display:inline-block;padding:.25rem .6rem;border-radius:999px;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:#e2e8f0eb;background:#2563eb59;border:1px solid rgba(96,165,250,.5)}.result-tag.victory{background:#22c55e59;border-color:#86efac99}.result-tag.defeat{background:#f8717147;border-color:#f8717173}.game-summary-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:flex-end;min-width:240px}.game-summary-actions .primary-button.downloading{opacity:.75;pointer-events:none}.game-summary-actions .primary-button.success{background:#22c55ebf;border-color:#86eface6}.share-game-container{display:flex;align-items:center;gap:.5rem}.share-options{display:flex;align-items:center;gap:.5rem;padding:.25rem;background:#0f172a80;border-radius:8px}.share-option-button{padding:.5rem 1rem;background:#1e293bcc;border:1px solid rgba(96,165,250,.3);border-radius:6px;color:#ffffffe6;font-size:.875rem;cursor:pointer;transition:all .2s ease}.share-option-button:hover:not(:disabled){background:#38bdf833;border-color:#60a5fa99}.share-option-button:disabled{opacity:.5;cursor:not-allowed}.share-option-button.active{background:#38bdf84d;border-color:#38bdf8cc;color:#fff}.share-success{color:#86efac;font-size:.875rem;font-weight:500;animation:fadeIn .3s ease}.share-error{color:#f87171;font-size:.875rem;font-weight:500;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.game-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.75rem}.game-overview-card,.game-metrics-card{background:#0f172abf;border:1px solid rgba(96,165,250,.25);border-radius:18px;padding:1.5rem;display:flex;flex-direction:column;gap:1rem;box-shadow:inset 0 0 0 1px #0f172a4d}.game-overview-card h3,.game-metrics-card h3{margin:0;font-size:1.1rem;letter-spacing:.08em;text-transform:uppercase;color:#bfdbfed9}.game-overview-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1.25rem;margin:0}.game-overview-card dt{font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:#94a3b8d1}.game-overview-card dd{margin:.2rem 0 0;font-size:1.05rem;font-weight:600}.download-hint,.download-success-note{margin:0;font-size:.82rem;letter-spacing:.05em;color:#94a3b8bf}.download-success-note{color:#86efacd9}.metric-bars{display:flex;flex-direction:column;gap:1.1rem}.metric-bar-header{display:flex;align-items:center;justify-content:space-between;font-size:.85rem;color:#bfdbfed9}.metric-values{display:inline-flex;align-items:center;gap:.35rem;font-size:.78rem;letter-spacing:.04em;color:#94a3b8c7}.metric-values strong{font-size:.95rem;color:#f8fafc}.metric-bar-track{position:relative;display:flex;height:10px;border-radius:999px;background:#1e293bb3;overflow:hidden;margin-top:.55rem}.metric-bar-fill{display:block;height:100%;transition:width .3s ease}.metric-bar-fill.player{background:linear-gradient(90deg,#60a5facc,#3b82f699)}.metric-bar-fill.ai{background:linear-gradient(90deg,#f87171b3,#ef44448c)}@media(max-width:768px){.game-summary-modal{padding:1.75rem 1.5rem;gap:1.5rem}.game-summary-header{flex-direction:column;align-items:flex-start;gap:1.25rem}.game-summary-actions{width:100%;justify-content:flex-start}.game-overview-card dl{grid-template-columns:repeat(1,minmax(0,1fr))}}.display-controls{margin-top:1.75rem;padding:1rem 1.1rem;border-radius:14px;background:#1e293b99;border:1px solid rgba(148,163,184,.25);display:flex;flex-direction:column;gap:.65rem}.display-controls h3{margin:0;font-size:1.05rem;letter-spacing:.04em}.display-toggle{align-self:flex-start;transition:all .2s ease}.display-toggle.active{border-color:#fbbf24d9;background:#fbbf242e;color:#fef3c7;box-shadow:0 12px 28px #fbbf2433}.display-controls .hint{margin:0;font-size:.78rem;color:#e2e8f0b3}.display-slider{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.display-slider label{font-size:.82rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:#e2e8f0d9}.display-slider input[type=range]{flex:1 1 160px;max-width:220px;accent-color:#60a5fa}.display-slider .slider-value{min-width:3.5rem;text-align:right;font-weight:600;letter-spacing:.04em;color:#ffffffd9}.action-log{background:linear-gradient(135deg,var(--theme-bg-from, rgba(15, 23, 42, .75)),var(--theme-bg-to, rgba(15, 23, 42, .75)));border-radius:20px;padding:1.25rem;border:1px solid var(--theme-border, rgba(148, 163, 184, .25));flex:1}.action-log ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem;max-height:360px;width:100%;overflow-y:auto}.action-log li{background:var(--theme-card-bg, rgba(30, 41, 59, .6));border-radius:10px;padding:.6rem .75rem;font-size:.85rem;display:flex;gap:.75rem;border-left:4px solid transparent;color:var(--theme-text, #e2e8f0)}.action-log .timestamp{opacity:.6;font-size:.75rem;color:var(--theme-text-muted, #94a3b8)}.action-log .message{flex:1}.action-log li.priority-info{border-left-color:var(--theme-info, rgba(148, 163, 184, .4))}.action-log li.priority-warning{border-left-color:var(--theme-warning, rgba(248, 113, 113, .7))}.action-log li.priority-critical{border-left-color:var(--theme-critical, rgba(250, 204, 21, .8))}@media(max-width:1140px){.layout{grid-template-columns:1fr;--layout-gap: 1.5rem;--sidebar-width: 100%}.side-column{flex-direction:row;flex-wrap:wrap;width:100%;gap:1.5rem}.scoreboard,.action-log{flex:1 1 300px}}@media(max-width:900px){.layout{--layout-gap: 1.1rem}.layout[data-sidebar-state=open]{--layout-gap: 0}.layout[data-sidebar-state=open]{display:grid;grid-template-columns:1fr;--sidebar-width: 100%}.layout[data-sidebar-state=open]>.main-column{display:none}.main-column{padding:clamp(.9rem,4vw,1.15rem);border-radius:20px}.player-panels{gap:1.1rem}.player-panel{padding:1rem}.player-panel-content{gap:1rem}.side-column{flex-direction:column;gap:1.1rem;align-items:stretch}.layout[data-sidebar-state=open] .side-column{width:100%;padding-inline:clamp(.4rem,4vw,.9rem);padding-top:4.5rem;display:grid;grid-auto-flow:row;grid-auto-rows:min-content;gap:clamp(.65rem,4vw,1rem);max-height:calc(100vh - (clamp(.4rem,4vw,.9rem)*2));overflow-y:auto}.layout[data-sidebar-state=open] .sidebar-music-toggle{align-items:center;justify-content:center;width:100%}.layout[data-sidebar-state=open] .sidebar-music-toggle .music-toggle-button{width:auto;min-width:0;max-width:100%;justify-content:center}.layout[data-sidebar-state=open] .side-column>*{min-width:0}.scoreboard,.action-log{flex:1 1 100%;width:100%;min-width:0}.hand-panel{padding:.85rem}.sidebar-toggle{top:4rem;right:.5rem;padding:.6rem}.sidebar-toggle-label{display:none}}@media(max-width:640px){.layout{--layout-gap: .6rem}.layout[data-sidebar-state=open]{--layout-gap: 0}.main-column{padding:.6rem;border-radius:18px}.player-panels{gap:.7rem}.player-panel{padding:.65rem}.hand-panel{padding:.6rem}.side-column{gap:.7rem}}@media(max-width:480px){.layout{--layout-gap: .45rem}.layout[data-sidebar-state=open]{--layout-gap: 0}.main-column{padding:.5rem;border-radius:16px}.player-panels{gap:.55rem}.player-panel{padding:.55rem}.hand-panel{padding:.5rem}.side-column{gap:.55rem}}.game-mode-selector{margin-top:1.5rem;padding:1rem 0;border-top:1px solid rgba(148,163,184,.1)}.mode-tabs{display:grid;grid-template-columns:1fr 1fr;gap:1rem;max-width:600px;margin:0 auto}.mode-tab{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:#1e293b66;border:2px solid rgba(148,163,184,.15);border-radius:16px;cursor:pointer;transition:all .2s ease;text-align:left}.mode-tab:hover{border-color:#94a3b84d;background:#1e293b99}.mode-tab.active{border-color:var(--primary-500);background:#3b82f61a;box-shadow:0 0 0 1px #3b82f633}.mode-tab-icon{font-size:2.5rem;line-height:1;display:flex;align-items:center;justify-content:center;color:#f8fafc}.mode-tab-icon svg{width:2.5rem;height:2.5rem;color:inherit}.mode-tab-content h3{margin:0 0 .25rem;font-size:1.1rem;font-weight:600;color:#f8fafc}.mode-tab-content p{margin:0;font-size:.9rem;color:#cbd5e1}.room-setup-wrapper{min-height:100vh;display:flex;align-items:flex-start;justify-content:center;padding:2rem 1rem;background:none;position:relative}.back-button{background:none;border:none;color:var(--theme-primary-light, rgba(148, 163, 184, .8));font-size:.9rem;cursor:pointer;margin-bottom:.5rem;transition:color .2s ease}.back-button:hover{color:var(--theme-text, #f1f5f9)}.room-view-selector{margin-top:1rem;padding:.5rem 0}.view-tabs{display:flex;gap:.5rem;background:var(--theme-bg-from, rgba(15, 23, 42, .6));border-radius:12px;padding:.25rem;max-width:fit-content}.view-tab{padding:.75rem 1.5rem;background:transparent;border:none;border-radius:8px;color:var(--theme-primary-light, rgba(203, 213, 225, .9));font-size:.9rem;cursor:pointer;transition:all .2s ease}.view-tab:hover{background:var(--theme-primary-hover, rgba(148, 163, 184, .1));color:var(--theme-text, #f1f5f9)}.view-tab.active{background:var(--theme-accent, var(--primary-500));color:#fff;box-shadow:0 2px 8px var(--theme-shadow, rgba(59, 130, 246, .3))}.deck-preview{margin-top:1rem}.selected-deck-preview{max-width:200px}.deck-preview-card{padding:1rem;background:var(--theme-bg-from, rgba(30, 41, 59, .6));border:2px solid var(--theme-primary-light, rgba(148, 163, 184, .2));border-radius:12px;color:var(--theme-text, #f8fafc)}.deck-preview-card.with-cover{background-image:var(--deck-cover-image);background-size:cover;background-position:center;background-blend-mode:overlay}.deck-preview-card h4{margin:0 0 .25rem;font-size:.9rem;font-weight:600}.deck-preview-card p{margin:0;font-size:.8rem;opacity:.8}.rooms-list{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.room-card{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;background:var(--theme-bg-from, rgba(30, 41, 59, .5));border:2px solid var(--theme-primary-light, rgba(148, 163, 184, .15));border-radius:12px;transition:all .2s ease}.room-card:hover{border-color:var(--theme-primary, rgba(148, 163, 184, .3));background:var(--theme-primary-light, rgba(30, 41, 59, .7))}.room-info h3{margin:0 0 .5rem;font-size:1.1rem;color:var(--theme-text, #f8fafc)}.room-meta{display:flex;gap:1rem;font-size:.85rem;color:var(--theme-primary-light, rgba(148, 163, 184, .8))}.room-players,.room-type,.room-host{display:flex;align-items:center;gap:.25rem}.connection-status{display:inline-flex;align-items:center;gap:.5rem;margin:.5rem 0;padding:.35rem .85rem;border-radius:999px;background:var(--theme-bg-from, rgba(15, 23, 42, .6));border:1px solid var(--theme-primary-light, rgba(148, 163, 184, .2));font-size:.8rem;color:var(--theme-text, #e2e8f0)}.connection-status:before{content:"";display:inline-block;width:.55rem;height:.55rem;border-radius:999px;background:#64748b;box-shadow:0 0 6px #64748b99}.connection-status.status-connecting:before{background:#facc15;box-shadow:0 0 6px #facc1599}.connection-status.status-connected:before{background:#22c55e;box-shadow:0 0 6px #22c55e99}.connection-status.status-error:before{background:#f87171;box-shadow:0 0 6px #f8717199}.connection-status.status-disconnected:before{background:#64748b;box-shadow:0 0 6px #64748b99}.connection-status .status-error{color:#fca5a5;font-weight:500}.join-button{min-width:100px}.empty-rooms{text-align:center;padding:3rem 2rem;color:var(--theme-primary-light, rgba(148, 163, 184, .8))}.empty-rooms p{margin-bottom:1.5rem;font-size:1rem}.create-room-form{display:flex;flex-direction:column;gap:1.5rem;margin-top:1rem}.form-group label{font-size:.9rem;font-weight:500;color:var(--theme-text, #f1f5f9)}.form-group input[type=text]{padding:.75rem 1rem;background:var(--theme-bg-from, rgba(15, 23, 42, .6));border:2px solid var(--theme-primary-light, rgba(148, 163, 184, .2));border-radius:8px;color:var(--theme-text, #f8fafc);font-size:.9rem;transition:border-color .2s ease}.form-group input[type=text]:focus{outline:none;border-color:var(--theme-primary, var(--primary-500));box-shadow:0 0 0 3px var(--theme-shadow, rgba(59, 130, 246, .3))}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.9rem;color:var(--theme-text, #f1f5f9)}.checkbox-label input[type=checkbox]{margin:0}.form-actions{margin-top:1rem}.create-room-button{width:100%;padding:1rem}.match-preview-multiplayer{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem}.multiplayer-info{text-align:center;padding:2rem;border:2px dashed var(--theme-primary-light, rgba(148, 163, 184, .3));border-radius:16px;background:var(--theme-bg-from-overlay, rgba(30, 41, 59, .3))}.multiplayer-info h3{margin:0 0 .5rem;font-size:1.2rem;color:var(--theme-text, #f8fafc)}.join-room-form{display:flex;flex-direction:column;gap:.75rem;margin:1.5rem 0}.join-room-form label{font-size:.85rem;font-weight:500;color:var(--theme-text, #e2e8f0)}.join-room-input{display:flex;gap:.75rem;align-items:center}.join-room-input input{flex:1;padding:.75rem 1rem;background:var(--theme-bg-from, rgba(15, 23, 42, .6));border:2px solid var(--theme-primary-light, rgba(148, 163, 184, .2));border-radius:8px;color:var(--theme-text, #f8fafc);font-size:.9rem;transition:border-color .2s ease}.join-room-input input:focus{outline:none;border-color:var(--theme-primary, var(--primary-500));box-shadow:0 0 0 3px var(--theme-shadow, rgba(59, 130, 246, .3))}.join-room-form .primary-button{padding:.75rem 1.6rem}.form-error{margin:0;font-size:.8rem;color:var(--theme-accent, #fca5a5)}.multiplayer-info p{margin:0;color:var(--theme-primary-light, rgba(148, 163, 184, .8))}@media(max-width:768px){.mode-tabs{grid-template-columns:1fr;gap:.75rem}.form-row{grid-template-columns:1fr}.join-room-input{flex-direction:column;align-items:stretch}.join-room-form .primary-button{width:100%}.room-card{flex-direction:column;align-items:stretch;gap:1rem}.room-meta{flex-direction:column;gap:.5rem}}.lobby-wrapper{min-height:100vh;display:flex;align-items:flex-start;justify-content:center;padding:2rem 1rem;background:none;position:relative}.lobby-card{width:100%;max-width:1200px;background:linear-gradient(135deg,var(--theme-bg-from, rgba(15, 15, 30, .98)) 0%,var(--theme-bg-to, rgba(10, 15, 35, .98)) 100%);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:3px solid var(--theme-primary, #7c3aed);border-radius:24px;box-shadow:0 0 40px var(--theme-shadow, rgba(124, 58, 237, .4)),0 20px 60px var(--theme-shadow, rgba(0, 0, 0, .8)),inset 0 1px 0 var(--theme-primary-light, rgba(255, 255, 255, .1));padding:2rem;color:var(--theme-text, #f8fafc)}.lobby-header{margin-bottom:2rem;border-bottom:3px solid var(--theme-primary-light, rgba(124, 58, 237, .3));padding-bottom:1.5rem;position:relative}.lobby-header:after{content:"";position:absolute;bottom:-3px;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent 0%,var(--theme-primary, #7c3aed) 50%,transparent 100%)}.lobby-title-block h1{margin:.5rem 0 1rem;font-size:2rem;font-weight:700;color:var(--theme-text, #f8fafc)}.room-info-meta{display:flex;gap:1rem;align-items:center;font-size:.9rem}.room-game-type,.room-player-count{padding:.25rem .75rem;background:var(--theme-primary-light, rgba(124, 58, 237, .2));border:1px solid var(--theme-primary, rgba(124, 58, 237, .3));border-radius:12px;color:var(--theme-primary, #93c5fd);font-weight:500}.host-badge{padding:.25rem .75rem;background:var(--theme-primary-light, rgba(245, 158, 11, .2));border:1px solid var(--theme-primary, rgba(245, 158, 11, .3));border-radius:12px;color:var(--theme-primary, #fbbf24);font-weight:500}.lobby-content{display:grid;grid-template-columns:2fr 1fr;gap:2rem;margin-bottom:2rem}.players-section h2{margin:0 0 1.5rem;font-size:1.3rem;color:var(--theme-text, #f1f5f9)}.players-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.player-card{background:var(--theme-bg-from, rgba(15, 15, 30, .6));border:2px solid var(--theme-primary-light, rgba(124, 58, 237, .3));border-radius:16px;padding:1.5rem;transition:all .2s ease}.player-card:hover{border-color:var(--theme-primary-hover, rgba(124, 58, 237, .6));background:var(--theme-primary-light, rgba(124, 58, 237, .15))}.player-card.empty{border:2px dashed var(--theme-primary-light, rgba(124, 58, 237, .3));background:var(--theme-bg-from, rgba(15, 15, 30, .3))}.player-deck-preview{position:relative;height:120px;border-radius:12px;background:var(--theme-bg-from, rgba(15, 15, 30, .8));border:1px solid var(--theme-primary-light, rgba(124, 58, 237, .2));margin-bottom:1rem;display:flex;align-items:flex-end;padding:1rem;overflow:hidden}.player-deck-preview.with-cover{background-image:var(--deck-cover-image);background-size:cover;background-position:center;background-blend-mode:overlay}.player-deck-preview:before{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.7),transparent);border-radius:inherit}.player-deck-info{position:relative;z-index:2}.player-deck-info h4{margin:0 0 .25rem;font-size:1rem;font-weight:600;color:var(--theme-text, #f8fafc)}.deck-archetype{font-size:.8rem;color:var(--theme-primary-light, rgba(203, 213, 225, .9));text-transform:uppercase;font-weight:500}.player-info{display:flex;justify-content:space-between;align-items:center}.player-name{display:flex;align-items:center;gap:.5rem;font-weight:600;color:var(--theme-text, #f1f5f9)}.host-indicator{font-size:1.1rem}.player-status{font-size:.85rem;font-weight:500;padding:.25rem .75rem;border-radius:8px}.player-status.ready{background:var(--theme-primary-light, rgba(34, 197, 94, .2));border:1px solid var(--theme-primary, rgba(34, 197, 94, .3));color:var(--theme-primary, #4ade80)}.player-status.waiting{background:var(--theme-bg-from, rgba(107, 114, 128, .2));border:1px solid var(--theme-primary-light, rgba(107, 114, 128, .3));color:var(--theme-primary-light, rgba(156, 163, 175, .9))}.empty-slot{text-align:center;padding:2rem 1rem;color:var(--theme-primary-light, rgba(107, 114, 128, .8))}.empty-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.empty-slot p{margin:0;font-style:italic}.chat-section h2{margin:0 0 1rem;font-size:1.3rem;color:var(--theme-text, #f1f5f9)}.chat-container{display:flex;flex-direction:column;height:400px;background:var(--theme-bg-from, rgba(15, 15, 30, .6));border:2px solid var(--theme-primary-light, rgba(124, 58, 237, .3));border-radius:12px;overflow:hidden}.chat-messages{flex:1;padding:1rem;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem}.chat-message{max-width:85%}.chat-message.own{align-self:flex-end}.message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem;font-size:.75rem}.sender-name{font-weight:600;color:var(--theme-primary, #93c5fd)}.chat-message.own .sender-name{color:var(--theme-primary, #4ade80)}.message-time{color:var(--theme-primary-light, rgba(107, 114, 128, .8))}.message-content{background:var(--theme-bg-from, rgba(15, 15, 30, .8));border:1px solid var(--theme-primary-light, rgba(124, 58, 237, .2));padding:.75rem;border-radius:12px;font-size:.9rem;line-height:1.4;word-wrap:break-word}.chat-message.own .message-content{background:var(--theme-primary-light, rgba(124, 58, 237, .2));border:1px solid var(--theme-primary, rgba(124, 58, 237, .3))}.chat-input-form{display:flex;padding:1rem;gap:.75rem;border-top:2px solid var(--theme-primary-light, rgba(124, 58, 237, .3));background:var(--theme-bg-from, rgba(15, 15, 30, .8))}.chat-input{flex:1;padding:.75rem;background:var(--theme-bg-from, rgba(15, 15, 30, .8));border:1px solid var(--theme-primary-light, rgba(124, 58, 237, .3));border-radius:8px;color:#f8fafc;font-size:.9rem}.chat-input:focus{outline:none;border-color:var(--theme-primary, #7c3aed);box-shadow:0 0 0 3px var(--theme-shadow, rgba(124, 58, 237, .2))}.send-button{padding:.75rem 1.5rem;background:var(--theme-accent, linear-gradient(135deg, #7c3aed 0%, #a855f7 100%));color:#fff;border:none;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s ease}.send-button:hover:not(:disabled){box-shadow:0 4px 20px var(--theme-shadow, rgba(124, 58, 237, .4));transform:translateY(-1px)}.send-button:disabled{opacity:.5;cursor:not-allowed}.lobby-footer{border-top:2px solid var(--theme-primary-light, rgba(124, 58, 237, .3));padding-top:1.5rem;text-align:center}.lobby-actions{margin-bottom:1rem}.lobby-secondary-actions{margin-top:1rem}.lobby-hint{margin:0;font-size:.85rem;color:var(--theme-primary-light, rgba(148, 163, 184, .8));font-style:italic}.ready-button{padding:1rem 2rem;border:none;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:150px}.ready-button.not-ready{background:var(--theme-primary-light, rgba(59, 130, 246, .2));border:2px solid var(--theme-primary, var(--primary-500));color:var(--theme-primary, #93c5fd)}.ready-button.not-ready:hover{background:var(--theme-primary-hover, rgba(59, 130, 246, .3))}.ready-button.ready{background:#22c55e33;border:2px solid #22c55e;color:#4ade80}.start-game-button{padding:1rem 2rem;border:none;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:200px}.start-game-button.enabled{background:var(--theme-primary, var(--primary-500));color:#fff;border:2px solid var(--theme-accent, rgba(96, 165, 250, .6));box-shadow:0 4px 16px var(--theme-shadow, rgba(0, 0, 0, .3))}.start-game-button.enabled:hover{background:var(--theme-primary-hover, var(--primary-600));box-shadow:0 6px 20px var(--theme-shadow, rgba(0, 0, 0, .4));transform:translateY(-2px)}.start-game-button.disabled{background:var(--theme-bg-from, rgba(107, 114, 128, .3));border:2px solid var(--theme-primary-light, rgba(107, 114, 128, .5));color:var(--theme-primary-light, #9ca3af);cursor:not-allowed;opacity:.6}.waiting-notice{margin-top:1rem}.waiting-notice p{margin:0;color:var(--theme-primary-light, rgba(148, 163, 184, .8));font-style:italic}@media(max-width:768px){.lobby-content{grid-template-columns:1fr;gap:1.5rem}.players-grid{grid-template-columns:1fr}.chat-container{height:300px}.lobby-card{padding:1.5rem}.room-info-meta{flex-wrap:wrap;gap:.5rem}}.room-info-banner{margin:.5rem 0 1rem;padding:.75rem 1rem;background:var(--theme-bg-from-overlay, rgba(59, 130, 246, .1));border:1px solid var(--theme-primary-light, rgba(59, 130, 246, .2));border-radius:8px;font-size:.9rem}.room-info-banner p{margin:0;color:var(--theme-primary, #93c5fd)}.multiplayer-error,.multiplayer-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;padding:2rem;text-align:center;color:#f1f5f9}.multiplayer-error h2{margin:0 0 1rem;font-size:1.5rem;color:var(--theme-accent, #f87171)}.multiplayer-error p{margin:0 0 2rem;color:var(--theme-primary-light, rgba(148, 163, 184, .8))}.game-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--theme-bg-from, #1a1a2e) 0%,var(--theme-bg-to, #16213e) 100%)}.loading-content{text-align:center;padding:2rem;background:var(--theme-bg-from-overlay, rgba(0, 0, 0, .5));border-radius:10px;border:2px solid var(--theme-primary-light, rgba(255, 255, 255, .1))}.loading-content h2{color:#fff;margin-bottom:1rem;font-size:2rem}.loading-content p{color:#fffc;margin-bottom:2rem}.loading-spinner{width:50px;height:50px;border:4px solid var(--theme-primary-light, rgba(255, 255, 255, .1));border-top-color:var(--theme-accent, #4a9eff);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto}.oracle-modal{max-width:900px;width:90%;max-height:80vh;overflow-y:auto;background:linear-gradient(135deg,var(--theme-bg-from-overlay, rgba(15, 23, 42, .95)),var(--theme-bg-to-overlay, rgba(30, 41, 59, .95)));border-radius:16px;border:3px solid var(--theme-primary, rgba(148, 163, 184, .3));box-shadow:0 20px 60px var(--theme-shadow, rgba(0, 0, 0, .5))}.oracle-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:2px solid var(--theme-primary-light, rgba(148, 163, 184, .2))}.oracle-modal .modal-header h2{margin:0;font-size:1.5rem;color:#f8fafc}.oracle-modal .close-button{background:none;border:none;font-size:2rem;color:var(--theme-primary-light, #94a3b8);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.oracle-modal .close-button:hover{background:var(--theme-primary-hover, rgba(148, 163, 184, .1));color:#f8fafc}.oracle-modal .modal-body{padding:2rem;color:var(--theme-primary-light, rgba(203, 213, 225, .9))}.debug-panel-button{position:fixed;bottom:1.5rem;right:1.5rem;width:3.5rem;height:3.5rem;border-radius:50%;background:linear-gradient(135deg,#ef4444,#dc2626);border:2px solid rgba(255,255,255,.2);box-shadow:0 4px 12px #0006,0 0 #ef444466;font-size:1.5rem;cursor:pointer;z-index:9999;display:flex;align-items:center;justify-content:center;transition:all .3s ease;animation:debug-pulse 2s ease-in-out infinite}@keyframes debug-pulse{0%,to{box-shadow:0 4px 12px #0006,0 0 #ef444466}50%{box-shadow:0 4px 16px #0009,0 0 0 8px #ef444433}}.debug-panel-button:hover{transform:scale(1.1);box-shadow:0 6px 20px #00000080,0 0 0 4px #ef44444d}.debug-panel-backdrop{position:fixed;inset:0;background:#000000bf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000}.debug-panel-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90vw;max-width:800px;max-height:85vh;background:linear-gradient(135deg,#1e293b,#0f172a);border:1px solid rgba(148,163,184,.2);border-radius:16px;box-shadow:0 20px 60px #000c;z-index:10001;display:flex;flex-direction:column;overflow:hidden}.debug-panel-header{padding:1.5rem 2rem;background:linear-gradient(135deg,#ef44441a,#dc26260d);border-bottom:1px solid rgba(148,163,184,.1);display:flex;align-items:center;justify-content:space-between}.debug-panel-header h2{margin:0;font-size:1.5rem;font-weight:700;color:#f8fafc;display:flex;align-items:center;gap:.5rem}.debug-panel-close{background:none;border:none;font-size:1.75rem;color:#94a3b8;cursor:pointer;padding:.25rem;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.debug-panel-close:hover{background:#ef44441a;color:#ef4444}.debug-panel-info{padding:1rem 2rem;background:#0f172a80;border-bottom:1px solid rgba(148,163,184,.1)}.debug-panel-info p{margin:0 0 .5rem;font-size:.875rem;color:#94a3b8}.debug-panel-stats{display:flex;gap:.75rem;font-size:.875rem;color:#cbd5e1;font-family:Fira Code,Courier New,monospace}.debug-panel-stats span{color:#64748b}.debug-panel-content{flex:1;overflow:hidden;padding:1rem;background:#0f172a}.debug-panel-textarea{width:100%;height:100%;background:#020617;border:1px solid rgba(148,163,184,.2);border-radius:8px;padding:1rem;font-family:Fira Code,Courier New,monospace;font-size:.75rem;line-height:1.5;color:#e2e8f0;resize:none;overflow:auto;white-space:pre;tab-size:2}.debug-panel-textarea:focus{outline:none;border-color:#ef444480;box-shadow:0 0 0 3px #ef44441a}.debug-panel-footer{padding:1.5rem 2rem;background:#0f172a80;border-top:1px solid rgba(148,163,184,.1);display:flex;justify-content:flex-end}.debug-panel-copy{padding:.75rem 2rem;background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:8px;color:#fff;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #ef44444d}.debug-panel-copy:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-1px);box-shadow:0 4px 12px #ef444466}.debug-panel-copy.copied{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 2px 8px #10b9814d}.debug-panel-copy.copied:hover{background:linear-gradient(135deg,#059669,#047857)}@media(max-width:768px){.debug-panel-modal{width:95vw;max-height:90vh}.debug-panel-button{width:3rem;height:3rem;bottom:1rem;right:1rem;font-size:1.25rem}.debug-panel-header,.debug-panel-info,.debug-panel-footer{padding:1rem 1.5rem}.debug-panel-textarea{font-size:.7rem}}.modal-backdrop{position:fixed;inset:0;background:#080f1ed9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:2rem;z-index:1500}.stack-situation-modal{width:min(720px,100%);max-height:min(90vh,880px);background:linear-gradient(180deg,#111827fa,#0f172afa);border-radius:20px;border:1px solid rgba(96,165,250,.3);box-shadow:0 32px 80px #0f172aa6;display:flex;flex-direction:column;overflow:hidden}.modal-header{padding:2rem 2rem 1.5rem;border-bottom:1px solid rgba(96,165,250,.15)}.modal-header h2{margin:0 0 .5rem;font-size:1.75rem;font-weight:600;color:#fffffff2;letter-spacing:.02em}.modal-subtitle{margin:0;font-size:.95rem;color:#94a3b8d9;letter-spacing:.01em}.modal-content{flex:1;overflow-y:auto;padding:2rem}.modal-footer{padding:1.5rem 2rem;border-top:1px solid rgba(96,165,250,.15);display:flex;justify-content:flex-end;gap:1rem;background:#0f172a80}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.form-group.full-width{grid-column:1 / -1}.form-group label{font-size:.9rem;font-weight:500;color:#ffffffe6;letter-spacing:.02em}.form-group input[type=text],.form-group textarea,.form-group select{padding:.75rem 1rem;background:#1e293b99;border:1px solid rgba(96,165,250,.25);border-radius:8px;color:#fffffff2;font-size:.95rem;font-family:inherit;transition:all .2s ease}.form-group input[type=text]:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#38bdf899;background:#1e293bcc;box-shadow:0 0 0 3px #38bdf81a}.form-group textarea{resize:vertical;min-height:80px}.dynamic-list{display:flex;flex-direction:column;gap:.75rem}.dynamic-list-item{display:flex;align-items:center;gap:.5rem}.dynamic-list-item input{flex:1;padding:.75rem 1rem;background:#1e293b99;border:1px solid rgba(96,165,250,.25);border-radius:8px;color:#fffffff2;font-size:.95rem;font-family:inherit;transition:all .2s ease}.dynamic-list-item input:focus{outline:none;border-color:#38bdf899;background:#1e293bcc;box-shadow:0 0 0 3px #38bdf81a}.remove-button{width:32px;height:32px;padding:0;background:#f8717126;border:1px solid rgba(248,113,113,.3);border-radius:6px;color:#f87171e6;font-size:1.5rem;line-height:1;cursor:pointer;transition:all .2s ease}.remove-button:hover{background:#f8717140;border-color:#f8717180;color:#f87171}.add-button{padding:.75rem 1.25rem;background:#38bdf826;border:1px solid rgba(56,189,248,.3);border-radius:8px;color:#38bdf8f2;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.add-button:hover{background:#38bdf840;border-color:#38bdf880;color:#38bdf8}.radio-group{display:flex;gap:1.5rem;padding:.75rem 0}.radio-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;color:#ffffffd9;font-size:.95rem}.radio-label input[type=radio]{width:18px;height:18px;accent-color:rgba(56,189,248,1);cursor:pointer}.primary-button.saving{opacity:.7;pointer-events:none}.primary-button.success{background:#22c55ebf;border-color:#86eface6}.save-situation-button{display:block;margin:1.5rem auto 0;padding:.875rem 1.5rem;background:linear-gradient(135deg,#fbbf2440,#f59e0b40);border:2px solid rgba(251,191,36,.6);border-radius:12px;color:#fffffff2;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #fbbf2440;z-index:10}.save-situation-button:hover{transform:translateY(-2px);background:linear-gradient(135deg,#fbbf2459,#f59e0b59);border-color:#fbbf24cc;box-shadow:0 6px 20px #fbbf2459}.save-situation-button:active{transform:translateY(0)}.multiplayer-test{padding:20px;max-width:1200px;margin:0 auto;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.multiplayer-test-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding:20px;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;border:1px solid rgba(255,255,255,.2)}.multiplayer-test-header h1{margin:0;color:#fff;font-size:1.8em;text-shadow:0 2px 4px rgba(0,0,0,.3)}.return-button{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);padding:10px 20px;border-radius:8px;cursor:pointer;font-weight:500;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.return-button:hover{background:#ffffff4d;transform:translateY(-1px);box-shadow:0 4px 12px #0003}.auth-section,.match-section{background:#f5f5f5;padding:20px;margin:20px 0;border-radius:12px;border:1px solid #ddd;box-shadow:0 2px 8px #0000001a}.error-message{background:#fff5f5;color:#c53030;padding:12px;border-radius:8px;border:1px solid #fed7d7;margin-bottom:15px}.auth-buttons{display:flex;flex-direction:column;gap:10px;margin-top:15px}.google-signin-btn{background:#4285f4;color:#fff;border:none;padding:12px 20px;border-radius:8px;cursor:pointer;font-weight:500;font-size:14px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.google-signin-btn:hover:not(:disabled){background:#3367d6;transform:translateY(-1px);box-shadow:0 4px 12px #4285f44d}.anonymous-signin-btn{background:#6c757d;color:#fff;border:none;padding:12px 20px;border-radius:8px;cursor:pointer;font-weight:500;font-size:14px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.anonymous-signin-btn:hover:not(:disabled){background:#545b62;transform:translateY(-1px);box-shadow:0 4px 12px #6c757d4d}.test-mode-btn{background:#28a745;color:#fff;border:none;padding:12px 20px;border-radius:8px;cursor:pointer;font-weight:500;font-size:14px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.test-mode-btn:hover:not(:disabled){background:#1e7e34;transform:translateY(-1px);box-shadow:0 4px 12px #28a7454d}.google-signin-btn:disabled,.anonymous-signin-btn:disabled,.test-mode-btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.auth-help{margin-top:15px;padding:10px;background:#f8f9fa;border-radius:6px;border-left:4px solid #17a2b8}.auth-help small{color:#6c757d;font-size:.85em}.user-details{font-size:.85em;color:#6c757d;margin:5px 0;font-family:Monaco,Menlo,Ubuntu Mono,monospace}.auth-section h2,.match-section h2{margin-top:0;color:#333;font-size:1.5em;margin-bottom:15px}.match-setup-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:20px}.match-option{background:#fff;padding:20px;border-radius:8px;border:2px solid #e9ecef;transition:all .2s ease}.match-option:hover{border-color:#007bff;box-shadow:0 4px 12px #007bff26}.match-option h3{margin-top:0;color:#495057;font-size:1.1em}.match-option p{color:#6c757d;margin-bottom:15px;font-size:.9em}.join-match-form{display:flex;gap:10px;flex-direction:column}.match-id-input{padding:12px;border:2px solid #ced4da;border-radius:6px;font-size:.9em;font-family:Monaco,Menlo,Ubuntu Mono,monospace;transition:border-color .2s ease}.match-id-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.primary-button,.secondary-button,.tertiary-button{padding:12px 20px;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s ease;font-size:.9em}.primary-button{background:#007bff;color:#fff}.primary-button:hover:not(:disabled){background:#0056b3;transform:translateY(-1px)}.secondary-button{background:#6c757d;color:#fff}.secondary-button:hover:not(:disabled){background:#545b62;transform:translateY(-1px)}.tertiary-button{background:#28a745;color:#fff}.tertiary-button:hover:not(:disabled){background:#1e7e34;transform:translateY(-1px)}.primary-button:disabled,.secondary-button:disabled,.tertiary-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.connected-state{margin-top:20px}.match-info-card{background:linear-gradient(135deg,#e3f2fd,#bbdefb);padding:20px;border-radius:12px;border:2px solid #2196f3}.match-info-card h3{margin-top:0;color:#1976d2;display:flex;align-items:center;gap:8px}.match-info-card h3:before{content:"🎮";font-size:1.2em}.match-details{margin:15px 0;display:flex;flex-direction:column;gap:10px}.match-detail{display:flex;align-items:center;gap:10px}.match-detail label{font-weight:500;color:#1976d2;min-width:80px}.match-id-display{background:#fff;padding:6px 10px;border-radius:4px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.85em;border:1px solid #90caf9;color:#1976d2}.disconnect-button{background:#dc3545;color:#fff;border:none;padding:10px 16px;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s ease}.disconnect-button:hover{background:#c82333;transform:translateY(-1px)}.auth-section button,.match-section button{padding:8px 16px;margin:5px;border:none;border-radius:4px;background:#007bff;color:#fff;cursor:pointer;font-size:14px}.auth-section button:hover,.match-section button:hover{background:#0056b3}.auth-section button:disabled,.match-section button:disabled{background:#6c757d;cursor:not-allowed}.match-section input{padding:8px 12px;margin:5px;border:1px solid #ddd;border-radius:4px;font-size:14px}.multiplayer-game-board{border:2px solid #28a745;border-radius:8px;padding:20px;background:#fff;margin-top:20px}.multiplayer-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:15px;border-bottom:1px solid #eee;margin-bottom:20px}.connection-status{display:flex;align-items:center;gap:8px;font-weight:500}.status-indicator{width:10px;height:10px;border-radius:50%;display:inline-block}.connection-connected .status-indicator{background:#28a745;animation:pulse 2s infinite}.connection-connecting .status-indicator,.connection-reconnecting .status-indicator{background:#ffc107;animation:pulse 1s infinite}.connection-error .status-indicator{background:#dc3545}.connection-disconnected .status-indicator{background:#6c757d}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.match-info{font-size:14px;color:#666}.match-info span{margin-right:15px}.resync-button{padding:6px 12px;border:1px solid #007bff;border-radius:4px;background:#fff;color:#007bff;cursor:pointer;font-size:12px}.resync-button:hover{background:#007bff;color:#fff}.resync-button:disabled{opacity:.5;cursor:not-allowed}.multiplayer-debug,.multiplayer-chat,.multiplayer-actions{margin-bottom:20px;padding:15px;border:1px solid #dee2e6;border-radius:6px;background:#f8f9fa}.multiplayer-debug h4,.multiplayer-chat h4,.multiplayer-actions h4{margin-top:0;margin-bottom:10px;color:#495057;font-size:16px}.multiplayer-debug p{margin:5px 0;font-family:Courier New,monospace;font-size:14px;color:#666}.multiplayer-chat form{display:flex;gap:10px}.multiplayer-chat input{flex:1;padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px}.multiplayer-chat button,.multiplayer-actions button{padding:8px 16px;border:none;border-radius:4px;background:#28a745;color:#fff;cursor:pointer;font-size:14px}.multiplayer-chat button:hover,.multiplayer-actions button:hover{background:#218838}.multiplayer-chat button:disabled,.multiplayer-actions button:disabled{background:#6c757d;cursor:not-allowed}.multiplayer-actions{display:flex;flex-direction:column;gap:10px}.multiplayer-actions button{align-self:flex-start}.game-content{padding:20px;border:1px solid #e9ecef;border-radius:6px;background:#fff;color:#495057}.game-content p{margin:10px 0}.action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-top:15px}.action-group{background:#ffffffb3;padding:15px;border-radius:8px;border:1px solid #f0c674}.action-group h5{margin-top:0;margin-bottom:10px;color:#856404;font-size:.9em;text-transform:uppercase;letter-spacing:.5px}.action-button{display:block;width:100%;margin-bottom:8px;padding:10px 12px;border:none;border-radius:6px;cursor:pointer;font-weight:500;font-size:.85em;transition:all .2s ease}.action-button:last-child{margin-bottom:0}.action-button.priority{background:#007bff;color:#fff}.action-button.priority:hover:not(:disabled){background:#0056b3;transform:translateY(-1px)}.action-button.turn{background:#28a745;color:#fff}.action-button.turn:hover:not(:disabled){background:#1e7e34;transform:translateY(-1px)}.action-button.player-action{background:#6f42c1;color:#fff}.action-button.player-action:hover:not(:disabled){background:#5a32a3;transform:translateY(-1px)}.action-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.test-suite{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:2px solid #007bff;border-radius:12px;padding:20px;margin:20px 0}.test-suite-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:10px}.test-suite-header h3{margin:0;color:#007bff;font-size:1.3em}.test-info{display:flex;gap:15px;font-size:.85em;color:#6c757d}.run-tests-button{background:#007bff;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s ease}.run-tests-button:hover:not(:disabled){background:#0056b3;transform:translateY(-1px)}.run-tests-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.test-results{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.test-result{background:#fff;border:1px solid #dee2e6;border-radius:8px;padding:12px;transition:all .2s ease}.test-result.active{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a}.test-result.passed{border-left:4px solid #28a745}.test-result.failed{border-left:4px solid #dc3545}.test-result.running{border-left:4px solid #007bff;background:linear-gradient(90deg,rgba(0,123,255,.05) 0%,transparent 100%)}.test-result-header{display:flex;align-items:center;gap:10px}.test-icon{font-size:1.1em;width:20px;text-align:center}.test-name{flex:1;font-weight:500;color:#495057}.test-duration{font-size:.8em;color:#6c757d;font-family:Monaco,Menlo,Ubuntu Mono,monospace}.test-message{margin-top:8px;margin-left:30px;font-size:.85em;color:#6c757d;background:#f8f9fa;padding:6px 10px;border-radius:4px}.test-summary{display:flex;justify-content:space-around;background:#fff;padding:15px;border-radius:8px;border:1px solid #dee2e6}.summary-stat{text-align:center;font-size:.9em}.summary-stat strong{display:block;color:#495057;margin-bottom:4px}.test-suite-section{text-align:center;margin:20px 0}.test-suite-toggle{background:#17a2b8;color:#fff;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;font-weight:500;font-size:.95em;transition:all .2s ease}.test-suite-toggle:hover{background:#138496;transform:translateY(-1px);box-shadow:0 4px 8px #17a2b84d}.stress-test{background:linear-gradient(135deg,#fff3e0,#ffe0b2);border:2px solid #ff9800;border-radius:12px;padding:20px;margin:20px 0}.stress-test-header{text-align:center;margin-bottom:20px}.stress-test-header h3{margin:0 0 8px;color:#e65100;font-size:1.3em}.stress-test-header p{margin:0;color:#bf360c;font-size:.9em}.stress-test-controls{display:flex;justify-content:center;gap:15px;margin-bottom:20px;flex-wrap:wrap}.stress-button{padding:12px 20px;border:none;border-radius:8px;cursor:pointer;font-weight:500;font-size:.9em;transition:all .2s ease;min-width:160px}.stress-button.quick{background:#4caf50;color:#fff}.stress-button.quick:hover:not(:disabled){background:#388e3c;transform:translateY(-1px)}.stress-button.medium{background:#ff9800;color:#fff}.stress-button.medium:hover:not(:disabled){background:#f57c00;transform:translateY(-1px)}.stress-button.heavy{background:#f44336;color:#fff}.stress-button.heavy:hover:not(:disabled){background:#d32f2f;transform:translateY(-1px)}.stress-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.stress-test-progress{text-align:center;margin:20px 0}.progress-bar{width:100%;height:8px;background:#e0e0e0;border-radius:4px;overflow:hidden;margin-bottom:10px}.progress-fill{height:100%;background:linear-gradient(90deg,#4caf50,#8bc34a);transition:width .3s ease}.stress-test-results{background:#fff;padding:20px;border-radius:8px;margin:20px 0}.stress-test-results h4{margin-top:0;color:#e65100;text-align:center}.results-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.result-item{background:#f5f5f5;padding:15px;border-radius:6px;text-align:center}.result-item label{display:block;font-size:.8em;color:#666;text-transform:uppercase;margin-bottom:5px;font-weight:500}.result-value{font-size:1.4em;font-weight:700;color:#333}.result-value.error{color:#f44336}.stress-test-info{background:#ffffffb3;padding:15px;border-radius:8px;margin-top:20px}.stress-test-info h4{margin-top:0;color:#e65100}.stress-test-info ul{margin:10px 0;padding-left:20px}.stress-test-info li{margin-bottom:5px;font-size:.9em}.stress-test-info strong{color:#bf360c}.debug-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:15px 0}.debug-item{background:#fff;padding:10px;border-radius:6px;display:flex;justify-content:space-between;align-items:center;border:1px solid #e9ecef}.debug-item label{font-weight:500;color:#495057;font-size:.85em}.debug-value{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.8em;color:#007bff;background:#f8f9fa;padding:2px 6px;border-radius:3px}.debug-value.connected{color:#28a745;background:#d4edda}.debug-value.connecting,.debug-value.reconnecting{color:#ffc107;background:#fff3cd}.debug-value.error,.debug-value.disconnected{color:#dc3545;background:#f8d7da}.debug-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}.debug-button{background:#6c757d;color:#fff;border:none;padding:8px 12px;border-radius:4px;cursor:pointer;font-size:.8em;transition:background .2s ease}.debug-button:hover:not(:disabled){background:#5a6268}.debug-button:disabled{opacity:.5;cursor:not-allowed}.particle-background{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:0;animation:fadeInParticles .6s ease-in forwards;animation-delay:.15s}@keyframes fadeInParticles{0%{opacity:0}to{opacity:1}}.modal-backdrop{position:fixed;inset:0;background:#00000080;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:1600;overscroll-behavior:contain;touch-action:none}.ai-deck-generator-modal{position:fixed;top:2vh;left:1vw;right:1vw;background:linear-gradient(135deg,var(--theme-bg-from, rgba(15, 15, 30, .98)) 0%,var(--theme-bg-to, rgba(10, 15, 35, .98)) 100%);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:3px solid var(--theme-primary, #7c3aed);border-radius:20px;box-shadow:0 0 40px var(--theme-shadow, rgba(124, 58, 237, .4)),0 20px 60px #000c,inset 0 1px #ffffff1a;width:98vw;max-width:1400px;height:96vh;margin:0 auto;overflow:hidden;z-index:1601;color:#e2e8f0;display:flex;flex-direction:column;touch-action:auto;overscroll-behavior:contain}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:3px solid var(--theme-primary-light, rgba(124, 58, 237, .3));background:linear-gradient(135deg,var(--theme-bg-from-overlay, rgba(124, 58, 237, .15)) 0%,var(--theme-bg-to-overlay, rgba(168, 85, 247, .15)) 100%);border-radius:18px 18px 0 0;position:relative}.modal-header:after{content:"";position:absolute;bottom:-3px;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent 0%,var(--theme-primary, #7c3aed) 50%,transparent 100%)}.modal-header h2{margin:0;font-size:1.5rem;font-weight:700;color:#fff;text-shadow:0 0 20px var(--theme-shadow, rgba(124, 58, 237, .6)),0 2px 10px rgba(0,0,0,.8)}.close-button{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#cbd5e0;transition:color .2s;padding:.25rem .5rem;line-height:1}.close-button:hover{color:#f7fafc}.modal-content{padding:1.5rem;overflow-y:auto;flex:1}.form-section{margin-bottom:1.5rem}.form-label{display:block}.form-label>span{display:block;margin-bottom:.5rem;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;color:#a0aec0}.form-label small{display:block;margin-top:.25rem;font-size:.75rem;color:#718096;font-style:italic}.format-selector{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.format-option{display:flex;flex-direction:column;align-items:center;padding:1rem;border:2px solid var(--theme-primary-light, rgba(124, 58, 237, .3));border-radius:8px;background:var(--theme-bg-from, rgba(15, 15, 30, .8));cursor:pointer;transition:all .2s;color:#e2e8f0}.format-option:hover{border-color:var(--theme-primary-hover, rgba(124, 58, 237, .6));background:var(--theme-primary-light, rgba(124, 58, 237, .15))}.format-option.active{border-color:var(--theme-primary, #7c3aed);background:linear-gradient(135deg,var(--theme-bg-from-overlay, rgba(124, 58, 237, .3)) 0%,var(--theme-bg-to-overlay, rgba(168, 85, 247, .3)) 100%);box-shadow:0 4px 20px var(--theme-shadow, rgba(124, 58, 237, .4))}.format-option strong{display:block;margin-bottom:.25rem;font-size:1rem}.format-option span{font-size:.75rem;opacity:.8}.theme-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem}.theme-option{display:flex;flex-direction:column;align-items:flex-start;padding:.75rem;border:1px solid var(--theme-primary-light, rgba(124, 58, 237, .3));border-radius:8px;background:var(--theme-bg-from, rgba(15, 15, 30, .8));cursor:pointer;transition:all .2s;color:#e2e8f0;text-align:left}.theme-option:hover{border-color:var(--theme-primary-hover, rgba(124, 58, 237, .6));background:var(--theme-primary-light, rgba(124, 58, 237, .15))}.theme-option.active{border-color:var(--theme-primary, #7c3aed);background:linear-gradient(135deg,var(--theme-bg-from-overlay, rgba(124, 58, 237, .2)) 0%,var(--theme-bg-to-overlay, rgba(168, 85, 247, .2)) 100%);border-width:2px}.theme-label{display:block;font-size:.875rem;font-weight:600;margin-bottom:.25rem}.theme-desc{display:block;font-size:.7rem;opacity:.7;line-height:1.2}.color-selector{display:flex;gap:.5rem;flex-wrap:wrap}.color-option{display:flex;flex-direction:column;align-items:center;padding:.75rem .5rem;border:2px solid transparent;border-radius:8px;background:var(--theme-bg-from, rgba(15, 15, 30, .8));cursor:pointer;transition:all .2s;color:#e2e8f0;min-width:70px}.color-option:hover{background:var(--theme-primary-light, rgba(124, 58, 237, .15))}.color-option.active{border-color:currentColor;box-shadow:0 0 12px currentColor}.color-option.color-w{color:#f9fafb}.color-option.color-u{color:#60a5fa}.color-option.color-b{color:#9ca3af}.color-option.color-r{color:#f87171}.color-option.color-g{color:#4ade80}.color-symbol{display:block;font-size:1.5rem;margin-bottom:.25rem}.color-name{display:block;font-size:.75rem}.text-input,.number-input,.textarea-input{width:100%;padding:.75rem;border:1px solid var(--theme-primary-light, rgba(124, 58, 237, .3));border-radius:8px;background:var(--theme-bg-from, rgba(15, 15, 30, .8));color:#e2e8f0;font-size:.875rem;font-family:inherit;transition:border-color .2s}.text-input:focus,.number-input:focus,.textarea-input:focus{outline:none;border-color:var(--theme-primary, #7c3aed);box-shadow:0 0 0 3px var(--theme-shadow, rgba(124, 58, 237, .2))}.textarea-input{resize:vertical;min-height:80px}.theme-dropdown{width:100%;padding:.75rem;border:1px solid var(--theme-primary-light, rgba(124, 58, 237, .3));border-radius:8px;background:var(--theme-bg-from, rgba(15, 15, 30, .8));color:#e2e8f0;font-size:.875rem;font-family:inherit;cursor:pointer;transition:border-color .2s}.theme-dropdown:hover{border-color:var(--theme-primary-hover, rgba(124, 58, 237, .6))}.theme-dropdown:focus{outline:none;border-color:var(--theme-primary, #7c3aed);box-shadow:0 0 0 3px var(--theme-shadow, rgba(124, 58, 237, .2))}.theme-dropdown option{background:var(--theme-bg-from, rgba(15, 15, 30, .9));color:#e2e8f0;padding:.5rem}.number-input{width:120px}.error-message{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#7f1d1d;border:1px solid #991b1b;border-radius:8px;margin-bottom:1rem;color:#fecaca}.error-message span{font-size:1.25rem}.error-message p{margin:0;font-size:.875rem}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1.5rem;border-top:1px solid var(--theme-primary-light, rgba(124, 58, 237, .3));background:var(--theme-bg-from, rgba(15, 15, 30, .8));border-radius:0 0 18px 18px}.primary-button,.secondary-button{padding:.75rem 1.5rem;border-radius:8px;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s;border:none}.primary-button{background:var(--theme-accent, linear-gradient(135deg, #7c3aed 0%, #a855f7 100%));color:#fff}.primary-button:hover:not(:disabled){box-shadow:0 4px 20px var(--theme-shadow, rgba(124, 58, 237, .4));transform:translateY(-1px)}.secondary-button{background:var(--theme-bg-from, rgba(15, 15, 30, .8));border:2px solid var(--theme-primary-light, rgba(124, 58, 237, .3));color:#e2e8f0}.secondary-button:hover:not(:disabled){background:#5a6578}.secondary-button:disabled{opacity:.6;cursor:not-allowed}.ai-status-backdrop{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10000!important;margin:0!important;padding:0!important}.ai-status-overlay{position:fixed!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important;z-index:10001!important;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);border:2px solid rgba(139,92,246,.5);border-radius:24px;padding:48px 64px;min-width:480px;max-width:600px;box-shadow:0 0 60px #8b5cf666,0 20px 60px #0009,inset 0 1px #ffffff1a;text-align:center;overflow:hidden;margin:0!important}.ai-status-particles{position:absolute;inset:0;pointer-events:none;overflow:hidden}.particle{position:absolute;font-size:24px;filter:drop-shadow(0 0 8px rgba(139,92,246,.6))}.ai-status-icon{position:relative;width:120px;height:120px;margin:0 auto 32px;display:flex;align-items:center;justify-content:center}.icon-emoji{font-size:72px;display:block;filter:drop-shadow(0 4px 12px rgba(139,92,246,.6));position:relative;z-index:2}.icon-ring{position:absolute;inset:0;border:3px solid #8b5cf6;border-radius:50%;z-index:1}.ai-status-title{font-size:32px;font-weight:700;color:#fff;margin:0 0 16px;text-shadow:0 2px 8px rgba(139,92,246,.6);background:linear-gradient(135deg,#8b5cf6,#ec4899,#f59e0b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.ai-status-message{font-size:18px;color:#ffffffd9;margin:0 0 32px;min-height:28px;font-weight:500;letter-spacing:.3px}.ai-status-progress{margin:32px 0}.progress-bar{width:100%;height:8px;background:#ffffff1a;border-radius:8px;overflow:hidden;position:relative;box-shadow:inset 0 2px 4px #0000004d}.progress-fill{height:100%;background:linear-gradient(90deg,#8b5cf6,#ec4899,#f59e0b);border-radius:8px;position:relative;box-shadow:0 0 16px #8b5cf699}.progress-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 1.5s infinite}.progress-text{margin-top:12px;font-size:14px;color:#ffffffb3;font-weight:600;letter-spacing:.5px}.ai-status-spinner{margin:24px auto 0;width:60px;height:60px;filter:drop-shadow(0 0 12px rgba(139,92,246,.4))}.ai-status-tip{margin-top:32px;padding:16px 24px;background:#8b5cf61a;border:1px solid rgba(139,92,246,.3);border-radius:12px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.tip-text{margin:0;font-size:14px;color:#ffffffb3;line-height:1.6;font-style:italic}@media(max-width:640px){.ai-status-overlay{min-width:auto;width:calc(100% - 32px);padding:32px 24px}.ai-status-title{font-size:24px}.ai-status-message{font-size:16px}.icon-emoji{font-size:56px}.ai-status-icon{width:100px;height:100px}}@media(prefers-color-scheme:dark){.ai-status-overlay{box-shadow:0 0 80px #8b5cf680,0 25px 80px #000c,inset 0 1px #ffffff26}}.deck-import-modal{background:linear-gradient(135deg,#14141efa,#1e1928fa);border:2px solid rgba(100,80,150,.3);border-radius:16px;box-shadow:0 20px 60px #00000080;max-width:700px;width:90%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px;border-bottom:1px solid rgba(100,80,150,.2)}.modal-title-group{display:flex;gap:16px;align-items:flex-start}.modal-icon{width:32px;height:32px;color:#9d7ff7;flex-shrink:0}.modal-title-group h2{margin:0 0 4px;font-size:1.5rem;color:#fff}.modal-title-group p{margin:0;font-size:.875rem;color:#fff9}.modal-close{background:none;border:none;color:#fff9;font-size:2rem;line-height:1;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:color .2s}.modal-close:hover{color:#fff}.modal-body{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:24px}.import-section{display:flex;flex-direction:column;gap:16px}.import-section h3{margin:0;font-size:1.125rem;color:#fff;font-weight:600}.field-block{display:flex;flex-direction:column;gap:8px}.field-block>span{font-size:.875rem;color:#fffc;font-weight:500}.field-block input,.field-block select,.field-block textarea{background:#0000004d;border:1px solid rgba(100,80,150,.3);border-radius:8px;padding:10px 12px;color:#fff;font-size:.938rem;font-family:inherit;transition:border-color .2s}.field-block input:focus,.field-block select:focus,.field-block textarea:focus{outline:none;border-color:#9d7ff7}.field-hint{font-size:.813rem;color:#9d7ff7cc;font-style:italic}.import-methods{display:flex;align-items:center;gap:16px;padding:16px;background:#0003;border-radius:8px}.import-file-button{display:flex;align-items:center;gap:8px;padding:10px 16px;background:linear-gradient(135deg,#9d7ff7,#7c5fd4);border:none;border-radius:8px;color:#fff;font-weight:500;cursor:pointer;transition:transform .2s,box-shadow .2s;position:relative}.import-file-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #9d7ff766}.import-file-button svg{width:20px;height:20px}.import-file-button input[type=file]{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer;left:0;top:0}.import-or{font-size:.875rem;color:#fff6;font-weight:500}.import-hint{font-size:.875rem;color:#fff9}.deck-list-input{font-family:Courier New,monospace;font-size:.875rem;resize:vertical;min-height:200px}.import-preview{background:#0003;border:1px solid rgba(100,80,150,.2);border-radius:8px;padding:16px}.preview-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid rgba(100,80,150,.2)}.stat{display:flex;flex-direction:column;gap:4px;text-align:center}.stat-label{font-size:.813rem;color:#fff9}.stat-value{font-size:1.25rem;font-weight:600;color:#9d7ff7}.preview-cards{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto}.preview-card-item{display:flex;align-items:center;gap:12px;padding:8px 12px;background:#0003;border-radius:6px;font-size:.875rem}.card-quantity{font-weight:600;color:#9d7ff7;min-width:30px}.card-name{color:#ffffffe6}.preview-more{text-align:center;padding:8px;color:#ffffff80;font-size:.813rem;font-style:italic}.import-error{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#dc26261a;border:1px solid rgba(220,38,38,.3);border-radius:8px;color:#fca5a5;font-size:.875rem}.import-error svg{width:20px;height:20px;flex-shrink:0}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid rgba(100,80,150,.2)}.ghost-button,.primary-button{padding:10px 20px;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s;font-size:.938rem;border:none}.ghost-button{background:#ffffff0d;color:#fffc}.ghost-button:hover{background:#ffffff1a;color:#fff}.primary-button{background:linear-gradient(135deg,#9d7ff7,#7c5fd4);color:#fff;box-shadow:0 2px 8px #9d7ff74d}.primary-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #9d7ff780}.primary-button:disabled{opacity:.5;cursor:not-allowed}.modal-body::-webkit-scrollbar,.preview-cards::-webkit-scrollbar{width:8px}.modal-body::-webkit-scrollbar-track,.preview-cards::-webkit-scrollbar-track{background:#0003;border-radius:4px}.modal-body::-webkit-scrollbar-thumb,.preview-cards::-webkit-scrollbar-thumb{background:#9d7ff74d;border-radius:4px}.modal-body::-webkit-scrollbar-thumb:hover,.preview-cards::-webkit-scrollbar-thumb:hover{background:#9d7ff780}.deck-lab-tabs{position:sticky;top:0;z-index:100;background:linear-gradient(135deg,var(--theme-bg-from-overlay, rgba(26, 26, 46, .98)) 0%,var(--theme-bg-to-overlay, rgba(36, 36, 62, .98)) 100%);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:2px solid var(--theme-accent, rgba(157, 127, 247, .3));box-shadow:0 4px 20px #00000080}.tabs-navigation{display:flex;position:relative;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:.5rem;gap:.25rem}.tabs-navigation::-webkit-scrollbar{display:none}.tab-button{flex:1;min-width:0;padding:.75rem .5rem;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff9;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;gap:.25rem;position:relative;overflow:hidden}.tab-button:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#9d7ff71a,#7b61ff1a);opacity:0;transition:opacity .2s ease}.tab-button:hover:before{opacity:1}.tab-button.active{background:linear-gradient(135deg,var(--theme-primary-light, rgba(157, 127, 247, .2)) 0%,var(--theme-primary-light, rgba(123, 97, 255, .2)) 100%);border-color:var(--theme-accent, rgba(157, 127, 247, .5));color:var(--theme-primary, #9d7ff7);box-shadow:0 4px 12px var(--theme-shadow, rgba(157, 127, 247, .3))}.tab-button.active:before{opacity:0}.tab-icon{font-size:1.25rem;filter:grayscale(.5);transition:filter .2s ease}.tab-button.active .tab-icon{filter:grayscale(0) drop-shadow(0 0 8px rgba(157,127,247,.8))}.tab-label-full{display:none}.tab-label-mobile{display:block;font-size:.6875rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.deck-counter{display:flex;align-items:center;justify-content:center;gap:.375rem;padding:.625rem;background:#0000004d;border-top:1px solid rgba(255,255,255,.1);font-size:.875rem;font-weight:600}.deck-counter-icon{font-size:1rem}.deck-counter-value{color:var(--theme-primary, #9d7ff7);font-size:1.125rem}.deck-counter-separator{color:#ffffff4d;font-size:.875rem}.deck-counter-min{color:#ffffff80;font-size:1rem}.deck-counter--empty .deck-counter-value{color:#ff6464cc}.deck-counter--warning .deck-counter-value{color:#ffc864e6}.deck-counter--valid .deck-counter-value{color:#64ff96e6}@media(min-width:600px){.tabs-navigation{padding:.75rem;gap:.5rem}.tab-button{padding:1rem 1.5rem;font-size:.875rem;flex-direction:row;gap:.5rem}.tab-icon{font-size:1.5rem}.tab-label-mobile{display:none}.tab-label-full{display:block;font-size:.875rem}.deck-counter{padding:.75rem 1rem;font-size:1rem;gap:.5rem}.deck-counter-icon{font-size:1.25rem}.deck-counter-value{font-size:1.5rem}}@media(min-width:900px){.deck-lab-tabs{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem}.tabs-navigation{flex:1;padding:0;max-width:50rem}.tab-button{padding:1.25rem 2rem;font-size:1rem;border-radius:16px}.tab-icon{font-size:1.75rem}.tab-label-full{font-size:1rem;font-weight:600}.deck-counter{border-top:none;border-left:2px solid rgba(157,127,247,.3);padding:.875rem 1.5rem;font-size:1.125rem;gap:.625rem;border-radius:12px;background:#9d7ff70d}.deck-counter-icon{font-size:1.5rem}.deck-counter-value{font-size:1.75rem}.deck-counter-min{font-size:1.25rem}}@media(min-width:1200px){.deck-lab-tabs{padding:1rem 2rem}.tab-button{padding:1.5rem 2.5rem;font-size:1.0625rem}.tab-icon{font-size:2rem}.tab-label-full{font-size:1.0625rem}.deck-counter{padding:1rem 2rem;font-size:1.25rem}.deck-counter-value{font-size:2rem}}.confirm-dialog-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);overscroll-behavior:contain;touch-action:none}.confirm-dialog{background:linear-gradient(145deg,var(--theme-bg-from, rgba(30, 41, 59, .98)),var(--theme-bg-to, rgba(15, 23, 42, .98)));border:2px solid var(--theme-accent, rgba(148, 163, 184, .4));border-radius:1rem;box-shadow:0 20px 60px #000c,0 0 0 1px var(--theme-accent, rgba(148, 163, 184, .2)) inset;max-width:500px;width:90%;overflow:hidden;touch-action:auto;overscroll-behavior:contain}.confirm-dialog-header{padding:1.5rem 2rem;border-bottom:1px solid rgba(148,163,184,.1)}.confirm-dialog-header h2{margin:0;font-size:1.5rem;font-weight:600;color:#f8fafc}.confirm-dialog-body{padding:2rem}.confirm-dialog-body p{margin:0;font-size:1rem;line-height:1.6;color:#cbd5e1e6}.confirm-dialog-footer{padding:1.5rem 2rem;border-top:1px solid rgba(148,163,184,.1);display:flex;gap:1rem;justify-content:flex-end}.confirm-dialog-button{padding:.75rem 1.5rem;border-radius:.5rem;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.cancel-button{background:#4755694d;color:#cbd5e1;border:1px solid rgba(148,163,184,.2)}.cancel-button:hover{background:#47556980;border-color:#94a3b84d;transform:translateY(-1px)}.confirm-button.primary{background:var(--theme-primary, linear-gradient(135deg, rgba(59, 130, 246, .9), rgba(37, 99, 235, .9)));color:#fff;border:2px solid var(--theme-accent, rgba(96, 165, 250, .4))}.confirm-button.primary:hover{background:var(--theme-primary-hover, linear-gradient(135deg, rgba(96, 165, 250, 1), rgba(59, 130, 246, 1)));box-shadow:0 4px 12px var(--theme-shadow, rgba(59, 130, 246, .5));transform:translateY(-1px)}.confirm-button.danger{background:linear-gradient(135deg,#dc2626e6,#b91c1ce6);color:#fff;border:1px solid rgba(248,113,113,.3)}.confirm-button.danger:hover{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 12px #dc262666;transform:translateY(-1px)}.confirm-dialog-button:active{transform:translateY(0)}.alert-dialog-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);overscroll-behavior:contain;touch-action:none}.alert-dialog{background:linear-gradient(145deg,var(--theme-bg-from, rgba(30, 41, 59, .98)),var(--theme-bg-to, rgba(15, 23, 42, .98)));border:2px solid var(--theme-accent, rgba(148, 163, 184, .4));border-radius:1rem;box-shadow:0 20px 60px #000c,0 0 0 1px var(--theme-accent, rgba(148, 163, 184, .2)) inset;max-width:500px;width:90%;overflow:hidden;display:flex;gap:1.5rem;padding:2rem;touch-action:auto;overscroll-behavior:contain}.alert-icon{flex-shrink:0;width:3rem;height:3rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700}.alert-icon.info{background:#3b82f633;color:#60a5fa;border:2px solid rgba(96,165,250,.3)}.alert-icon.success{background:#22c55e33;color:#4ade80;border:2px solid rgba(74,222,128,.3)}.alert-icon.warning{background:#eab30833;color:#facc15;border:2px solid rgba(250,204,21,.3)}.alert-icon.error{background:#dc262633;color:#f87171;border:2px solid rgba(248,113,113,.3)}.alert-dialog-content{flex:1;display:flex;flex-direction:column;gap:1rem}.alert-dialog-header h2{margin:0;font-size:1.25rem;font-weight:600;color:#f8fafc}.alert-dialog-body p{margin:0;font-size:.95rem;line-height:1.6;color:#cbd5e1e6}.alert-dialog-footer{display:flex;justify-content:flex-end;margin-top:.5rem}.alert-dialog-button{padding:.625rem 1.5rem;border-radius:.5rem;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;color:#fff}.alert-dialog-button.info{background:var(--theme-primary, linear-gradient(135deg, rgba(59, 130, 246, .9), rgba(37, 99, 235, .9)));border:2px solid var(--theme-accent, rgba(96, 165, 250, .4))}.alert-dialog-button.info:hover{background:var(--theme-primary-hover, linear-gradient(135deg, rgba(96, 165, 250, 1), rgba(59, 130, 246, 1)));box-shadow:0 4px 12px var(--theme-shadow, rgba(59, 130, 246, .5));transform:translateY(-1px)}.alert-dialog-button.success{background:linear-gradient(135deg,#22c55ee6,#16a34ae6);border:1px solid rgba(74,222,128,.3)}.alert-dialog-button.success:hover{background:linear-gradient(135deg,#4ade80,#22c55e);box-shadow:0 4px 12px #22c55e66;transform:translateY(-1px)}.alert-dialog-button.warning{background:linear-gradient(135deg,#eab308e6,#ca8a04e6);border:1px solid rgba(250,204,21,.3)}.alert-dialog-button.warning:hover{background:linear-gradient(135deg,#facc15,#eab308);box-shadow:0 4px 12px #eab30866;transform:translateY(-1px)}.alert-dialog-button.error{background:linear-gradient(135deg,#dc2626e6,#b91c1ce6);border:1px solid rgba(248,113,113,.3)}.alert-dialog-button.error:hover{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 12px #dc262666;transform:translateY(-1px)}.alert-dialog-button:active{transform:translateY(0)}.browse-tab{display:flex;flex-direction:column;height:100%;overflow:hidden}.browse-search-section{padding:1rem;background:#0003;border-bottom:1px solid rgba(255,255,255,.1)}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:1rem;width:1.125rem;height:1.125rem;color:#fff6;pointer-events:none;z-index:1}.search-input{width:100%;padding:.875rem 1rem .875rem 3rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-size:.9375rem;transition:all .2s ease}.search-input:focus{outline:none;background:#ffffff14;border-color:#9d7ff780;box-shadow:0 0 0 3px #9d7ff71a}.search-input::placeholder{color:#ffffff4d}.browse-source-section{padding:1rem;display:flex;flex-direction:column;gap:.5rem;background:#00000026;border-bottom:1px solid rgba(255,255,255,.1)}.source-label{font-size:.8125rem;font-weight:600;color:#fff9;text-transform:uppercase;letter-spacing:.05em}.source-selector{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-size:.9375rem;cursor:pointer;transition:all .2s ease;width:100%;text-align:left}.source-selector:hover{background:#ffffff14;border-color:#9d7ff74d}.source-icon{font-size:1.25rem;flex-shrink:0}.source-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.source-chevron{width:1rem;height:1rem;color:#fff6;flex-shrink:0;transition:transform .2s ease}.source-picker-overlay{position:fixed;inset:0;background:#080f1e80;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:1000;display:flex;align-items:flex-end;animation:fadeIn .2s ease}.source-picker{width:100%;max-height:80vh;background:linear-gradient(135deg,var(--theme-bg-from, #1a1a2e) 0%,var(--theme-bg-to, #242436) 100%);border-radius:24px 24px 0 0;border-top:1px solid var(--theme-accent, rgba(255, 255, 255, .1));display:flex;flex-direction:column;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.source-picker-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--theme-accent, rgba(255, 255, 255, .1))}.source-picker-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#fff}.source-picker-header button{background:none;border:none;color:#fff9;font-size:2rem;cursor:pointer;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.source-picker-header button:hover{color:#fff}.source-picker-search{padding:1rem 1.5rem;border-bottom:1px solid var(--theme-accent, rgba(255, 255, 255, .1))}.source-picker-search input{width:100%;padding:.75rem 1rem;background:var(--theme-bg-from, rgba(255, 255, 255, .05));border:1px solid var(--theme-accent, rgba(255, 255, 255, .1));border-radius:10px;color:#fff;font-size:.9375rem}.source-picker-search input:focus{outline:none;border-color:var(--theme-primary, rgba(157, 127, 247, .5));box-shadow:0 0 0 3px var(--theme-shadow, rgba(157, 127, 247, .1))}.source-picker-content{flex:1;overflow-y:auto;padding:1rem 1.5rem}.source-group-label{font-size:.75rem;font-weight:700;color:#ffffff80;text-transform:uppercase;letter-spacing:.1em;margin:1rem 0 .5rem}.source-group-label:first-child{margin-top:0}.source-item-wrapper{display:flex;align-items:stretch;gap:.5rem;margin-bottom:.5rem}.source-item-wrapper.active .source-item{background:var(--theme-primary-light, rgba(157, 127, 247, .15));border-color:var(--theme-primary, rgba(157, 127, 247, .5))}.source-item{display:flex;flex-direction:column;gap:.375rem;padding:.875rem 1rem;background:var(--theme-bg-from-overlay, rgba(255, 255, 255, .03));border:1px solid var(--theme-accent, rgba(255, 255, 255, .1));border-radius:10px;cursor:pointer;transition:all .2s ease;text-align:left;flex:1}.source-item:hover{background:var(--theme-bg-from, rgba(255, 255, 255, .06));border-color:var(--theme-primary, rgba(157, 127, 247, .3))}.source-item-delete{width:3rem;padding:.875rem .5rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:10px;color:#ef4444;font-size:1.25rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.source-item-delete:hover{background:#ef444433;border-color:#ef444480;transform:scale(1.05)}.source-item-delete:active{transform:scale(.95)}.source-item-main{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.source-item-main strong{color:#fff;font-size:.9375rem;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.source-item-main span{color:#ffffff80;font-size:.8125rem;flex-shrink:0}.source-item-meta{display:flex;gap:.75rem;font-size:.75rem;color:#fff6}.source-picker-empty{text-align:center;padding:3rem 1rem;color:#fff6;font-size:.9375rem}.browse-filters{display:flex;gap:.5rem;padding:1rem;background:#00000026;border-bottom:1px solid rgba(255,255,255,.1);overflow-x:auto}.filter-select{flex:1;min-width:120px;padding:.75rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:10px;color:#fff;font-size:.875rem;cursor:pointer;transition:all .2s ease}.filter-select:focus{outline:none;border-color:#9d7ff780;box-shadow:0 0 0 3px #9d7ff71a}.card-grid-container{flex:1;overflow-y:auto;padding:1rem}.browse-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;text-align:center;min-height:300px}.empty-state-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.browse-empty-state h3{margin:0 0 .5rem;font-size:1.25rem;color:#fff}.browse-empty-state p{margin:0 0 1.5rem;color:#ffffff80;font-size:.9375rem}.primary-button{padding:.875rem 2rem;background:linear-gradient(135deg,var(--theme-primary, #9d7ff7) 0%,var(--theme-accent, #7b61ff) 100%);border:none;border-radius:12px;color:#fff;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px color-mix(in srgb,var(--theme-primary, #9d7ff7) 30%,transparent)}.primary-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #9d7ff766}.primary-button:active{transform:translateY(0)}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;margin-bottom:1rem}.card-item{display:flex;flex-direction:column;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:12px;overflow:hidden;transition:all .2s ease}.card-item:hover{border-color:#9d7ff766;box-shadow:0 4px 16px #9d7ff733;transform:translateY(-4px)}.card-image-wrapper{aspect-ratio:5 / 7;overflow:hidden;cursor:pointer;position:relative;background:#0006}.card-image{width:100%;height:100%;object-fit:cover;transition:transform .2s ease}.card-image-wrapper:hover .card-image{transform:scale(1.05)}.card-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#9d7ff71a,#7b61ff1a);color:#ffffff4d;font-size:.75rem}.card-info{padding:.625rem;flex:1}.card-name{font-size:.8125rem;font-weight:600;color:#fff;margin-bottom:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-type{font-size:.6875rem;color:#ffffff80;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-quantity-controls{display:flex;align-items:center;gap:.25rem;padding:.5rem .625rem;background:#0000004d;border-top:1px solid rgba(255,255,255,.1)}.quantity-button{width:2rem;height:2rem;background:color-mix(in srgb,var(--theme-primary, #9d7ff7) 20%,transparent);border:1px solid color-mix(in srgb,var(--theme-primary, #9d7ff7) 30%,transparent);border-radius:8px;color:var(--theme-primary, #9d7ff7);font-size:1.125rem;font-weight:600;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center}.quantity-button:hover:not(:disabled){background:color-mix(in srgb,var(--theme-primary, #9d7ff7) 30%,transparent);border-color:color-mix(in srgb,var(--theme-primary, #9d7ff7) 50%,transparent)}.quantity-button:active:not(:disabled){transform:scale(.95)}.quantity-button:disabled{opacity:.3;cursor:not-allowed}.quantity-input{flex:1;min-width:0;text-align:center;padding:.375rem .25rem;background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#fff;font-size:.875rem;font-weight:600}.quantity-input:focus{outline:none;border-color:#9d7ff780}.loading-indicator{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:2rem;color:#ffffff80;font-size:.875rem}.spinner{width:2.5rem;height:2.5rem;border:3px solid color-mix(in srgb,var(--theme-primary, #9d7ff7) 20%,transparent);border-top-color:var(--theme-primary, #9d7ff7);border-radius:50%;animation:spin .8s linear infinite}.load-more-section{display:flex;justify-content:center;padding:1rem}.ghost-button{padding:.875rem 2rem;background:transparent;border:2px solid color-mix(in srgb,var(--theme-primary, #9d7ff7) 30%,transparent);border-radius:12px;color:var(--theme-primary, #9d7ff7);font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease}.ghost-button:hover{background:color-mix(in srgb,var(--theme-primary, #9d7ff7) 10%,transparent);border-color:color-mix(in srgb,var(--theme-primary, #9d7ff7) 50%,transparent)}@media(min-width:600px){.card-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem}.browse-search-section,.browse-source-section,.browse-filters{padding:1.25rem 1.5rem}.card-grid-container{padding:1.5rem}}@media(min-width:900px){.card-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1.25rem}.browse-search-section,.browse-source-section,.browse-filters{padding:1.5rem 2rem}.card-grid-container{padding:2rem}.source-picker{max-width:600px;max-height:70vh;margin:auto;border-radius:24px;animation:scaleIn .3s ease}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.source-picker-overlay{align-items:center;justify-content:center}}@media(min-width:1200px){.card-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.5rem}.card-name{font-size:.9375rem}.card-type{font-size:.75rem}}.review-tab{flex:1;overflow-y:auto;padding:1rem}.review-stats-section{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1.5rem}.stat-card{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:1rem;text-align:center;transition:all .2s ease}.stat-card:hover{border-color:#9d7ff74d;box-shadow:0 4px 12px #9d7ff726;transform:translateY(-2px)}.stat-card--primary{background:linear-gradient(135deg,#9d7ff726,#7b61ff26);border-color:#9d7ff74d;grid-column:1 / -1}.stat-value{font-size:2rem;font-weight:700;color:var(--theme-primary, #9d7ff7);margin-bottom:.25rem;line-height:1}.stat-card--primary .stat-value{font-size:2.5rem;text-shadow:0 0 20px color-mix(in srgb,var(--theme-primary, #9d7ff7) 50%,transparent)}.stat-label{font-size:.75rem;font-weight:600;color:#ffffff80;text-transform:uppercase;letter-spacing:.05em}.section-title{margin:0 0 1rem;font-size:1rem;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.05em;padding-bottom:.75rem;border-bottom:2px solid rgba(157,127,247,.3)}.mana-curve-section{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:1.25rem;margin-bottom:1.5rem}.mana-curve-chart{display:flex;align-items:flex-end;justify-content:space-between;gap:.375rem;height:150px}.mana-curve-bar-container{flex:1;display:flex;flex-direction:column;align-items:center;gap:.375rem}.mana-curve-count{font-size:.75rem;font-weight:600;color:var(--theme-primary, #9d7ff7);min-height:1rem}.mana-curve-bar-wrapper{flex:1;width:100%;display:flex;align-items:flex-end}.mana-curve-bar{width:100%;min-height:4px;background:linear-gradient(180deg,var(--theme-primary, #9d7ff7) 0%,var(--theme-accent, #7b61ff) 100%);border-radius:6px 6px 0 0;transition:all .3s ease;box-shadow:0 0 12px color-mix(in srgb,var(--theme-primary, #9d7ff7) 40%,transparent)}.mana-curve-bar-container:hover .mana-curve-bar{background:linear-gradient(180deg,color-mix(in srgb,var(--theme-primary, #9d7ff7) 150%,white) 0%,var(--theme-primary, #9d7ff7) 100%);box-shadow:0 0 20px color-mix(in srgb,var(--theme-primary, #9d7ff7) 60%,transparent)}.mana-curve-label{font-size:.75rem;font-weight:600;color:#ffffff80;padding:.25rem 0}.type-breakdown-section{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:1.25rem;margin-bottom:1.5rem}.type-breakdown-list{display:flex;flex-direction:column;gap:.875rem}.type-breakdown-item{display:flex;flex-direction:column;gap:.5rem}.type-breakdown-header{display:flex;justify-content:space-between;align-items:center}.type-name{font-size:.875rem;font-weight:600;color:#fff}.type-count{font-size:.8125rem;font-weight:600;color:var(--theme-primary, #9d7ff7)}.type-breakdown-bar{height:6px;background:#ffffff0d;border-radius:3px;overflow:hidden}.type-breakdown-fill{height:100%;background:linear-gradient(90deg,var(--theme-primary, #9d7ff7) 0%,var(--theme-accent, #7b61ff) 100%);border-radius:3px;transition:width .5s ease;box-shadow:0 0 8px color-mix(in srgb,var(--theme-primary, #9d7ff7) 50%,transparent)}.card-list-section{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:1.25rem;margin-bottom:1rem}.card-list{display:flex;flex-direction:column;gap:.625rem}.card-list-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:10px;transition:all .2s ease}.card-list-item:hover{background:#ffffff0f;border-color:#9d7ff74d;box-shadow:0 2px 8px #9d7ff726}.card-list-image{width:3rem;height:4.2rem;border-radius:6px;overflow:hidden;cursor:pointer;flex-shrink:0;background:#0000004d;transition:transform .2s ease}.card-list-image:hover{transform:scale(1.05)}.card-list-image img{width:100%;height:100%;object-fit:cover}.card-list-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#9d7ff71a,#7b61ff1a);color:#ffffff4d;font-size:1.25rem;font-weight:600}.card-list-info{flex:1;min-width:0}.card-list-name{font-size:.9375rem;font-weight:600;color:#fff;margin-bottom:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-list-meta{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:#ffffff80}.card-mana-cost{padding:.125rem .375rem;background:color-mix(in srgb,var(--theme-primary, #9d7ff7) 20%,transparent);border-radius:4px;font-weight:600;color:var(--theme-primary, #9d7ff7)}.card-type-line{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-list-controls{display:flex;align-items:center;gap:.375rem;flex-shrink:0}.card-list-controls .quantity-button{width:2rem;height:2rem;background:color-mix(in srgb,var(--theme-primary, #9d7ff7) 20%,transparent);border:1px solid color-mix(in srgb,var(--theme-primary, #9d7ff7) 30%,transparent);border-radius:8px;color:var(--theme-primary, #9d7ff7);font-size:1.125rem;font-weight:600;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center}.card-list-controls .quantity-button:hover:not(:disabled){background:color-mix(in srgb,var(--theme-primary, #9d7ff7) 30%,transparent);border-color:color-mix(in srgb,var(--theme-primary, #9d7ff7) 50%,transparent)}.card-list-controls .quantity-button:active:not(:disabled){transform:scale(.95)}.card-list-controls .quantity-button:disabled{opacity:.3;cursor:not-allowed}.card-list-quantity{font-size:.875rem;font-weight:700;color:#9d7ff7;min-width:2rem;text-align:center}.remove-button{width:2rem;height:2rem;background:#ff64641a;border:1px solid rgba(255,100,100,.2);border-radius:8px;font-size:1rem;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center}.remove-button:hover{background:#ff646433;border-color:#ff646466}.remove-button:active{transform:scale(.95)}.review-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;text-align:center}.review-empty-state .empty-state-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.review-empty-state h3{margin:0 0 .5rem;font-size:1.25rem;color:#fff}.review-empty-state p{margin:0;color:#ffffff80;font-size:.9375rem}@media(min-width:600px){.review-tab{padding:1.5rem}.review-stats-section{grid-template-columns:repeat(4,1fr);gap:1rem}.stat-card--primary{grid-column:auto}.mana-curve-chart{height:180px;gap:.5rem}.card-list-image{width:3.5rem;height:4.9rem}.card-list-controls{gap:.5rem}}@media(min-width:900px){.review-tab{padding:2rem;display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}.review-stats-section{grid-column:1 / -1;grid-template-columns:repeat(4,1fr);gap:1.25rem}.stat-card{padding:1.5rem}.stat-value{font-size:2.5rem}.stat-card--primary .stat-value{font-size:3rem}.mana-curve-section{grid-column:1 / -1;padding:1.5rem}.mana-curve-chart{height:200px;gap:.75rem}.type-breakdown-section,.card-list-section{padding:1.5rem}.card-list-item{padding:1rem;gap:1rem}.card-list-image{width:4rem;height:5.6rem}.card-list-name{font-size:1rem}.card-list-meta{font-size:.8125rem}}@media(min-width:1200px){.review-tab{max-width:1400px;margin:0 auto}.stat-card{padding:2rem}.stat-value{font-size:3rem}.stat-card--primary .stat-value{font-size:3.5rem}.mana-curve-section,.type-breakdown-section,.card-list-section{padding:2rem}}.settings-tab{flex:1;overflow-y:auto;padding:1rem}.settings-section{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:1.25rem;margin-bottom:1.5rem}.settings-section:last-child{margin-bottom:1rem}.form-group{margin-bottom:1.25rem}.form-group:last-child{margin-bottom:0}.form-label{display:block;font-size:.8125rem;font-weight:600;color:#ffffffb3;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.05em}.required{color:#ff6464cc;margin-left:.25rem}.form-input,.form-select,.form-textarea{width:100%;padding:.875rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:10px;color:#fff;font-size:.9375rem;font-family:inherit;transition:all .2s ease}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;background:#ffffff14;border-color:#9d7ff780;box-shadow:0 0 0 3px #9d7ff71a}.form-input::placeholder,.form-textarea::placeholder{color:#ffffff4d}.form-textarea{resize:vertical;min-height:100px}.form-select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%239d7ff7' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:3rem}.action-grid{display:grid;grid-template-columns:1fr;gap:.75rem}.action-button{display:flex;align-items:center;gap:1rem;padding:1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;cursor:pointer;transition:all .2s ease;text-align:left;width:100%}.action-button:hover:not(:disabled){background:#ffffff14;border-color:#9d7ff74d;transform:translateY(-2px);box-shadow:0 4px 12px #9d7ff726}.action-button:active:not(:disabled){transform:translateY(0)}.action-button:disabled{opacity:.5;cursor:not-allowed}.action-button--primary{background:linear-gradient(135deg,#9d7ff733,#7b61ff33);border-color:#9d7ff766}.action-button--primary:hover:not(:disabled){background:linear-gradient(135deg,#9d7ff74d,#7b61ff4d);border-color:#9d7ff799;box-shadow:0 4px 16px #9d7ff74d}.action-button--danger{background:#ff64641a;border-color:#ff646433}.action-button--danger:hover:not(:disabled){background:#ff646426;border-color:#ff646466;box-shadow:0 4px 12px #ff646433}.action-icon{font-size:2rem;flex-shrink:0;opacity:.9}.action-content{flex:1;min-width:0}.action-title{font-size:1rem;font-weight:600;color:#fff;margin-bottom:.25rem}.action-description{font-size:.8125rem;color:#ffffff80}.settings-warning{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#ffc8641a;border:1px solid rgba(255,200,100,.3);border-radius:10px;margin-top:1rem;font-size:.875rem;color:#ffc864e6}.warning-icon{font-size:1.25rem;flex-shrink:0}.help-content{display:flex;flex-direction:column;gap:.75rem}.help-item{display:flex;flex-direction:column;gap:.25rem;padding:.875rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:10px;font-size:.875rem;color:#ffffffb3}.help-item strong{color:var(--theme-primary, #9d7ff7);font-weight:600;font-size:.8125rem;text-transform:uppercase;letter-spacing:.05em}@media(min-width:600px){.settings-tab,.settings-section{padding:1.5rem}.action-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.form-input,.form-select,.form-textarea{padding:1rem 1.25rem}.action-button{padding:1.25rem}.help-item{padding:1rem 1.25rem}}@media(min-width:900px){.settings-tab{padding:2rem;max-width:1000px;margin:0 auto}.settings-section{padding:2rem}.form-group{margin-bottom:1.5rem}.form-input,.form-select,.form-textarea{font-size:1rem;padding:1.125rem 1.5rem}.action-button{padding:1.5rem}.action-icon{font-size:2.5rem}.action-title{font-size:1.125rem}.action-description{font-size:.9375rem}.help-item{flex-direction:row;gap:.5rem;padding:1.25rem 1.5rem;font-size:.9375rem}.help-item strong{min-width:120px;flex-shrink:0}}@media(min-width:1200px){.settings-tab{max-width:1200px}.action-grid{gap:1.25rem}.settings-section{padding:2.5rem}}.activated-ability-button{display:flex;flex-direction:column;gap:8px;padding:14px 18px;background:linear-gradient(135deg,#3b82f61a,#6366f11a);border:1.5px solid rgba(99,102,241,.3);border-radius:8px;color:#e2e8f0;font-size:16px;line-height:1.5;cursor:pointer;transition:all .2s ease;text-align:left;width:100%;pointer-events:all!important;position:relative;z-index:10001}.activated-ability-button:hover:not(:disabled){background:linear-gradient(135deg,#3b82f633,#6366f133);border-color:#6366f180;box-shadow:0 2px 8px #6366f133}.activated-ability-button:active:not(:disabled){transform:translateY(1px)}.activated-ability-button.unavailable{opacity:.4;cursor:not-allowed;background:linear-gradient(135deg,#4755691a,#64748b1a);border-color:#64748b33}.activated-ability-button.available{border-color:#22c55e66;background:linear-gradient(135deg,#22c55e1a,#3b82f61a)}.activated-ability-button.available:hover{border-color:#22c55e99;background:linear-gradient(135deg,#22c55e33,#3b82f633);box-shadow:0 2px 12px #22c55e4d}.ability-cost-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ability-mana-cost{display:flex;align-items:center;gap:2px}.ability-tap-cost{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;background:#94a3b833;border:1px solid rgba(148,163,184,.4);border-radius:50%;font-size:14px;font-weight:600}.ability-life-cost{display:inline-flex;align-items:center;gap:2px;padding:2px 6px;background:#ef444433;border:1px solid rgba(239,68,68,.4);border-radius:4px;font-size:12px;font-weight:600;color:#fca5a5}.ability-effect-text{color:#cbd5e1;font-size:14px;line-height:1.6}.ability-restrictions{display:flex;gap:4px;flex-wrap:wrap;margin-top:4px}.restriction-tag{display:inline-block;padding:2px 6px;background:#fbbf2426;border:1px solid rgba(251,191,36,.3);border-radius:3px;font-size:10px;font-weight:500;color:#fcd34d;text-transform:uppercase;letter-spacing:.02em}.activated-ability-compact{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:4px 6px;background:linear-gradient(135deg,#6366f133,#8b5cf633);border:1.5px solid rgba(99,102,241,.4);border-radius:6px;font-size:11px;font-weight:600;color:#e2e8f0;cursor:pointer;transition:all .15s ease}.activated-ability-compact:hover:not(:disabled){background:linear-gradient(135deg,#6366f14d,#8b5cf64d);border-color:#6366f199;transform:scale(1.05);box-shadow:0 2px 8px #6366f14d}.activated-ability-compact.available{border-color:#22c55e80;background:linear-gradient(135deg,#22c55e33,#3b82f633)}.activated-ability-compact.available:hover{border-color:#22c55eb3;background:linear-gradient(135deg,#22c55e4d,#3b82f64d);box-shadow:0 2px 10px #22c55e66}.activated-ability-compact.unavailable{opacity:.3;cursor:not-allowed;background:#64748b1a;border-color:#64748b33}.ability-cost{font-family:Beleren,Mana,monospace;white-space:nowrap}.abilities-panel-backdrop{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999!important;pointer-events:all!important}.card-abilities-panel{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%) scale(1)!important;min-width:500px;max-width:700px;padding:24px;background:#0f172afa;border:1px solid rgba(255,255,255,.1);border-radius:12px;box-shadow:0 8px 32px #000c,0 2px 8px #0006;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:10000!important;pointer-events:all!important}.card-abilities-panel *{pointer-events:all!important}.abilities-panel-close{position:absolute;top:8px;right:8px;width:24px;height:24px;background:#4755694d;border:1px solid rgba(148,163,184,.3);border-radius:4px;color:#cbd5e1;font-size:20px;line-height:1;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;padding:0;pointer-events:all!important;z-index:10}.abilities-panel-close:hover{background:#ef444433;border-color:#ef444466;color:#fca5a5}.abilities-panel-close:active{transform:scale(.95)}.abilities-panel-header{font-size:16px;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px;padding-bottom:10px;padding-right:30px;border-bottom:1px solid var(--turn-indicator-turn-owner-border, rgba(99, 102, 241, .3))}.abilities-list{display:flex;flex-direction:column;gap:10px}.card-has-abilities-indicator{position:absolute;bottom:4px;left:4px;display:flex;gap:4px;padding:6px;pointer-events:auto;z-index:10;cursor:pointer;border-radius:6px;background:#0000004d;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:all .2s ease}.card-has-abilities-indicator:hover{background:#00000080;transform:scale(1.05)}.ability-indicator-dot{width:12px;height:12px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:1.5px solid rgba(255,255,255,.4);border-radius:50%;box-shadow:0 0 8px #6366f199,0 0 12px #8b5cf666;animation:ability-pulse 2s ease-in-out infinite}.ability-indicator-dot.available{background:linear-gradient(135deg,#22c55e,#3b82f6);box-shadow:0 0 10px #22c55eb3,0 0 14px #3b82f680;border-color:#22c55e99}@keyframes ability-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.1)}}.battlefield-organizer{display:flex;flex-direction:column;gap:1rem;width:100%;min-height:140px;position:relative}.battlefield-row{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;border-radius:10px;background:#0f172a40;border:1px solid rgba(148,163,184,.15);transition:background .2s ease,border-color .2s ease;position:relative}.battlefield-3d-plane .battlefield-row{background:#0f172a26;border-color:#94a3b81a;transform-style:preserve-3d}.battlefield-3d-plane .battlefield-row-cards{transform-style:preserve-3d}.battlefield-row.creatures{border-left:3px solid rgba(239,68,68,.5);background:linear-gradient(90deg,#ef444414,#0f172a40)}.battlefield-row.support{border-left:3px solid rgba(96,165,250,.5);background:linear-gradient(90deg,#60a5fa14,#0f172a40)}.battlefield-row.lands{border-left:3px solid rgba(34,197,94,.5);background:linear-gradient(90deg,#22c55e14,#0f172a40)}.battlefield-row-label{font-family:Cinzel,serif;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#cbd5e1b3;padding:0 .25rem;-webkit-user-select:none;user-select:none}.battlefield-row.creatures .battlefield-row-label{color:#f87171d9}.battlefield-row.support .battlefield-row-label{color:#93c5fdd9}.battlefield-row.lands .battlefield-row-label{color:#86efacd9}.battlefield-row-cards{display:flex;flex-wrap:wrap;gap:.75rem;min-height:120px}@media(orientation:landscape){.battlefield-3d-plane .battlefield-row{padding:.2rem .4rem;gap:.2rem;flex:0 1 auto;min-height:60px;height:auto}.battlefield-3d-plane .battlefield-row-cards{gap:.3rem;min-height:0;height:auto;flex-wrap:wrap;align-items:center;justify-content:flex-start}.battlefield-3d-plane .card-frame{width:calc(180px * var(--board-card-scale, 1))!important;min-height:calc(260px * var(--board-card-scale, 1))!important;font-size:calc(.85em * var(--board-card-scale, 1))}.battlefield-organizer[data-total-cards] .card-frame{transform-origin:center center}.battlefield-3d-plane .card-frame.tapped{transform:rotate(90deg);transform-origin:center center}}.player-panel.active .battlefield-row.creatures{border-left-color:#ef4444b3;background:linear-gradient(90deg,#ef44441f,#0f172a4d)}.player-panel.active .battlefield-row.support{border-left-color:#60a5fab3;background:linear-gradient(90deg,#60a5fa1f,#0f172a4d)}.player-panel.active .battlefield-row.lands{border-left-color:#22c55eb3;background:linear-gradient(90deg,#22c55e1f,#0f172a4d)}@media(max-width:768px){.battlefield-organizer{gap:.75rem}.battlefield-row{padding:.5rem}.battlefield-row-label{font-size:.7rem}.battlefield-row-cards{gap:.5rem;min-height:100px}}@media(max-width:480px){.battlefield-organizer{gap:.5rem}.battlefield-row{padding:.4rem}.battlefield-row-cards{gap:.4rem}}:root{--board-angle: 58deg;--board-scale: .7;--perspective-distance: 900px;--perspective-origin-x: 50%;--perspective-origin-y: 20%;--row-depth-opponent-lands: 0px;--row-depth-opponent-creatures: 0px;--row-depth-player-creatures: 0px;--row-depth-player-lands: 0px;--row-scale-opponent-lands: .65;--row-scale-opponent-creatures: .75;--row-scale-player-creatures: .85;--row-scale-player-lands: .95;--hand-fan-radius: 1200px;--hand-fan-max-angle: 70deg;--hand-card-tilt: 8deg;--hand-hover-scale: 1.25;--hand-card-scale: 1;--board-card-scale: 1;--stats-scale: 1}@media(max-width:1200px){:root{--board-angle: 55deg;--perspective-distance: 950px;--row-depth-opponent-lands: -140px;--row-depth-opponent-creatures: -70px;--row-depth-player-creatures: 70px;--row-depth-player-lands: 140px}}@media(max-width:768px){:root{--board-angle: 50deg;--perspective-distance: 850px;--row-depth-opponent-lands: -100px;--row-depth-opponent-creatures: -50px;--row-depth-player-creatures: 50px;--row-depth-player-lands: 100px}}@media(max-width:480px){:root{--board-angle: 45deg;--perspective-distance: 700px;--row-depth-opponent-lands: -70px;--row-depth-opponent-creatures: -35px;--row-depth-player-creatures: 35px;--row-depth-player-lands: 70px}}.gameboard-3d-perspective[data-flat-mode=true]{perspective:none!important;transform:none!important;transform-style:flat!important;max-width:100%!important;width:100%!important;padding:0rem!important;margin-top:0!important;padding-top:0!important}.gameboard-3d-perspective[data-flat-mode=true] *{perspective:none!important;transform-style:flat!important}.gameboard-3d-perspective[data-flat-mode=true] .card-frame.tapped{transform:rotate(90deg)!important}.gameboard-3d-perspective[data-flat-mode=true] .panel-main,.gameboard-3d-perspective[data-flat-mode=true] .player-panel.ai .panel-main,.gameboard-3d-perspective[data-flat-mode=true] .player-panel.player .panel-main{transform:none!important;scale:1!important;min-height:auto!important;max-height:none!important;border:1px solid rgba(255,255,255,.1)!important;padding:1rem!important;width:100%!important}.gameboard-3d-perspective[data-flat-mode=true] .player-panel,.gameboard-3d-perspective[data-flat-mode=true] .player-panel.ai,.gameboard-3d-perspective[data-flat-mode=true] .player-panel.player{background:linear-gradient(135deg,var(--theme-bg-from, rgba(15, 23, 42, .6)),var(--theme-bg-to, rgba(15, 23, 42, .6)))!important;border:0px solid rgba(255,255,255,.1)!important;padding:1rem!important;margin-bottom:1rem!important;transform:none!important}.gameboard-3d-perspective[data-flat-mode=true] .player-name-with-avatar{display:block!important}.gameboard-3d-perspective[data-flat-mode=true] .stats{position:static!important;transform:none!important;scale:1!important}.gameboard-3d-perspective[data-flat-mode=true] .battlefield-controls.inline-controls{position:absolute!important;bottom:auto!important;top:0!important;right:0!important;width:auto!important;max-width:none!important;z-index:100!important;margin:0!important;padding:1rem!important}.gameboard-3d-perspective[data-flat-mode=true] .battlefield-mana-pool{margin-bottom:.5rem!important}.gameboard-3d-perspective[data-flat-mode=true] .battlefield-action-buttons{margin-top:.5rem!important}.gameboard-3d-perspective[data-flat-mode=true] .floating-advance-button{transform:none!important}.gameboard-3d-perspective[data-flat-mode=true] .battlefield-3d-root,.gameboard-3d-perspective[data-flat-mode=true] .battlefield-3d-plane,.gameboard-3d-perspective[data-flat-mode=true] .battlefield-organizer,.gameboard-3d-perspective[data-flat-mode=true] .battlefield-row-3d,.gameboard-3d-perspective[data-flat-mode=true] .battlefield-card-3d{perspective:none!important;transform:none!important;transform-style:flat!important;scale:1!important;height:auto!important;max-height:none!important}.gameboard-3d-perspective[data-flat-mode=true] .battlefield-card-3d{scale:.6!important}@media(orientation:portrait)and (max-width:768px){.gameboard-3d-perspective[data-flat-mode=true] .battlefield-card-3d{scale:.5!important}}.gameboard-3d-perspective[data-flat-mode=true] .panel-main[data-hand-inline=true] .inline-hand-row{margin-top:.5rem!important;position:relative!important;grid-area:hand!important}.gameboard-3d-perspective[data-flat-mode=true] .panel-main[data-hand-inline=true]{display:grid!important;grid-template-columns:1fr auto!important;grid-template-rows:auto auto auto!important;grid-template-areas:"stats stats" "battlefield zones" "hand zones"!important;gap:.5rem 1.5rem!important;width:100%!important;min-width:0!important}.gameboard-3d-perspective[data-flat-mode=true] .panel-main[data-hand-inline=true] .player-name-with-avatar{grid-area:stats!important;order:0!important;display:flex!important;z-index:100!important;position:relative!important}.gameboard-3d-perspective[data-flat-mode=true] .panel-main[data-hand-inline=true] .stats{grid-area:stats!important;order:1!important;width:100%!important}.gameboard-3d-perspective[data-flat-mode=true] .panel-main[data-hand-inline=true] .zone-column{grid-area:zones!important;grid-row:2 / 4!important;order:3!important;min-width:200px!important}.gameboard-3d-perspective[data-flat-mode=true] .panel-main[data-hand-inline=true] .battlefield{grid-area:battlefield!important;order:2!important;width:100%!important;min-width:0!important;min-height:300px!important;max-height:400px!important;overflow:visible!important;position:relative!important}.gameboard-3d-perspective[data-flat-mode=true] .panel-main[data-hand-inline=true] .inline-hand-row{grid-area:hand!important;order:4!important;display:flex!important;width:100%!important;min-width:0!important;margin-top:0!important;padding-top:0!important}.gameboard-3d-perspective .panel-main[data-hand-inline=true]{transform:none!important;transform-style:flat!important;display:grid!important;grid-template-columns:1fr auto!important;grid-template-rows:auto auto auto!important;grid-template-areas:"stats stats" "battlefield zones" "hand zones"!important;gap:.5rem 1.5rem!important;width:100%!important;min-width:0!important}.gameboard-3d-perspective .panel-main[data-hand-inline=true] .player-name-with-avatar{grid-area:stats!important;order:0!important;z-index:60!important;position:block!important}.gameboard-3d-perspective .panel-main[data-hand-inline=true] .stats{grid-area:stats!important;order:1!important;width:100%!important;z-index:100!important;position:relative!important}.gameboard-3d-perspective .panel-main[data-hand-inline=true] .zone-column{grid-area:zones!important;grid-row:2 / 4!important;order:3!important;min-width:200px!important}.gameboard-3d-perspective .panel-main[data-hand-inline=true] .battlefield{grid-area:battlefield!important;order:2!important;width:100%!important;min-width:0!important;min-height:300px!important;max-height:400px!important;overflow:visible!important;position:relative!important;z-index:1!important}.gameboard-3d-perspective .panel-main[data-hand-inline=true] .inline-hand-row{grid-area:hand!important;order:4!important;display:flex!important;width:100%!important;min-width:0!important;margin-top:0!important;padding-top:0!important}.gameboard-3d-perspective .panel-main[data-hand-inline=true] .inline-hand-row{grid-area:hand!important;margin-top:calc(.5rem * var(--hand-card-scale, 1))!important;transform-style:flat!important;position:relative!important}.gameboard-3d-perspective .panel-main[data-hand-inline=true] .inline-hand-row .hand-card-inline{transform:none!important;transform-style:flat!important}.game-board{padding-top:0!important}.game-board[data-flat-mode=true]{padding-top:1rem!important}.prompt-stack-inline{z-index:70!important;pointer-events:auto!important;position:fixed!important}.prompt-panel{z-index:70!important}.prompt-stack-inline *,.prompt-stack-inline button,.prompt-stack-inline input,.prompt-panel,.prompt-panel *{pointer-events:auto!important}.gameboard-3d-perspective{perspective:var(--perspective-distance)!important;perspective-origin:var(--perspective-origin-x) 30%!important;transform-style:preserve-3d!important;display:flex!important;flex-direction:column!important;gap:1rem!important;margin-top:0!important;padding-top:0!important;transform:translateY(var(--board-y-offset, calc(-50vh - 10rem) ));pointer-events:auto;position:relative}.gameboard-3d-perspective .prompt-stack-inline{pointer-events:auto!important}.gameboard-3d-perspective .player-panel{transform-style:preserve-3d!important;background:transparent!important;border:none!important;padding:0!important;margin:0!important;box-shadow:none!important}.gameboard-3d-perspective .player-panel.ai{transform:translateZ(0);margin-bottom:1rem!important;z-index:10!important;pointer-events:auto!important;position:relative}.gameboard-3d-perspective .player-panel.ai .panel-main{transform-style:preserve-3d!important;transform:rotateX(var(--board-angle)) scale(var(--board-scale)) scaleY(calc(var(--board-scale) * .64))!important;transform-origin:center bottom;border-bottom:none!important;min-height:36vh;width:100%;max-width:100%;pointer-events:auto!important;position:relative;z-index:10!important}.gameboard-3d-perspective .player-panel.ai *{pointer-events:auto!important}.gameboard-3d-perspective .player-panel.ai .card-frame{pointer-events:auto!important;cursor:pointer!important}.gameboard-3d-perspective .player-panel.ai .card-frame *{pointer-events:auto!important}.gameboard-3d-perspective .player-panel.ai .battlefield-row-cards>div,.gameboard-3d-perspective .player-panel.ai .battlefield-card-3d,.gameboard-3d-perspective .player-panel.ai .battlefield-card-3d>div{pointer-events:auto!important;cursor:pointer!important}.gameboard-3d-perspective .player-panel.ai .ai-card-interaction-wrapper{pointer-events:auto!important;cursor:pointer!important;position:relative;z-index:20!important}.gameboard-3d-perspective .player-panel.ai .battlefield{position:relative;z-index:10!important;pointer-events:auto!important}.gameboard-3d-perspective .player-panel.ai .card-frame-wrapper,.gameboard-3d-perspective .player-panel.ai .card-frame-scale{pointer-events:auto!important}.gameboard-3d-perspective .player-panel.player{transform:translateZ(0);z-index:1;pointer-events:auto}.gameboard-3d-perspective .player-panel.player .panel-main,.gameboard-3d-perspective .player-panel.player .battlefield{pointer-events:auto;position:relative;z-index:1}.gameboard-3d-perspective .player-panel.player *{pointer-events:auto}.gameboard-3d-perspective .player-panel .player-panel-content{transform-style:preserve-3d!important}.gameboard-3d-perspective .player-panel .panel-main{transform-style:preserve-3d!important;transform:rotateX(var(--board-angle)) scale(var(--board-scale))!important;transform-origin:center top;padding:.5rem .5rem 1rem;border:2px solid rgba(255,255,255,.1);border-top:none!important;border-radius:8px;position:relative;z-index:1;pointer-events:auto;min-height:45vh;overflow:visible!important;width:100%;max-width:100%;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-areas:"stats stats" "battlefield zones"!important;gap:1.25rem 1.5rem!important;align-items:start!important}.gameboard-3d-perspective .player-panel .panel-main[data-hand-inline=true]{transform:rotateX(var(--board-angle)) scale(var(--board-scale))!important;transform-style:flat!important;display:grid!important;grid-template-columns:1fr auto!important;grid-template-rows:auto minmax(200px,auto) auto!important;grid-template-areas:"stats stats" "battlefield zones" "hand zones"!important;gap:calc(.5rem * var(--hand-card-scale, 1)) 1.5rem!important;width:100%!important;min-width:0!important;min-height:auto!important;overflow:visible!important;align-items:start!important}.gameboard-3d-perspective .panel-main[data-hand-inline=true] .stats,.gameboard-3d-perspective .player-panel.player .panel-main[data-hand-inline=true] .stats,.gameboard-3d-perspective .player-panel.ai .panel-main[data-hand-inline=true] .stats{position:relative!important;display:flex!important;flex-direction:row!important;align-items:center!important;gap:1rem!important;flex-wrap:wrap!important;transform:none!important;inset:auto!important;z-index:50!important}.gameboard-3d-perspective .player-panel .panel-main[data-hand-inline=true] .battlefield{grid-area:battlefield!important;width:100%!important;min-width:0!important;min-height:300px!important;max-height:none!important;overflow:visible!important;display:flex!important;flex-direction:column!important}.gameboard-3d-perspective .player-panel .panel-main[data-hand-inline=true] .inline-hand-row{grid-area:hand!important;grid-row:3!important;transform:rotateX(calc(var(--board-angle) * -1.15))!important;transform-origin:center top!important;transform-style:preserve-3d!important;backface-visibility:hidden!important;-webkit-backface-visibility:hidden!important;-webkit-font-smoothing:subpixel-antialiased!important;-moz-osx-font-smoothing:grayscale!important;image-rendering:-webkit-optimize-contrast!important;image-rendering:crisp-edges!important;will-change:transform!important;display:flex!important;column-gap:calc(4px * var(--hand-card-scale, 1))!important;row-gap:calc(2px * var(--hand-card-scale, 1))!important;justify-content:flex-start!important;align-items:flex-start!important;flex-wrap:wrap!important;width:100%!important;min-height:auto!important;height:auto!important;overflow-x:auto!important;overflow-y:visible!important;padding:calc(.5rem * var(--hand-card-scale, 1))!important;background:#0000004d!important;border-radius:8px!important;margin-top:.5rem!important}.gameboard-3d-perspective .panel-main .stats{grid-area:stats!important}.gameboard-3d-perspective .panel-main .battlefield{grid-area:battlefield!important}.gameboard-3d-perspective .panel-main .zone-column{grid-area:zones!important;align-self:stretch!important;justify-self:end!important}.gameboard-3d-perspective .player-panel .player-name-with-avatar{position:relative;z-index:100;display:flex!important;align-items:center!important;gap:.75rem!important;white-space:nowrap!important;flex-wrap:nowrap!important}.gameboard-3d-perspective .player-panel .stat-row{gap:.5rem!important}.gameboard-3d-perspective .player-panel.player .stat-row{justify-content:flex-end!important;padding-right:5rem!important}.gameboard-3d-perspective .player-panel .stat-item{font-size:.85rem;padding:.25rem .5rem}.gameboard-3d-perspective .player-panel.player .stats,.gameboard-3d-perspective .player-panel.ai .stats{position:absolute!important;top:.5rem;right:.5rem;z-index:50;transform:scale(var(--stats-scale, .5))!important;transform-origin:top right}.gameboard-3d-perspective[style*="--board-angle: 0deg"] .stats,.gameboard-3d-perspective[style*="--board-angle:0deg"] .stats{position:absolute!important;transform:none!important}@media(min-width:768px){.gameboard-3d-perspective .player-panel.player .stats{right:0;top:0rem}.gameboard-3d-perspective .player-panel.ai .stats{right:0rem;top:0rem}}.battlefield.battlefield-3d-root{transform-style:preserve-3d!important;position:relative;width:100%;height:100vh;min-height:220px;max-height:380px;overflow:visible!important}.battlefield-3d-plane{transform-style:preserve-3d!important;width:100%;height:100%;position:relative}.player-panel .battlefield{overflow:visible!important}.battlefield-organizer{transform-style:preserve-3d!important;height:100%;display:flex;flex-direction:column;gap:.25rem;justify-content:space-evenly}.battlefield-row-3d{transform-style:preserve-3d!important;position:relative;flex:1 1 0;min-height:0;overflow:visible;display:flex;flex-direction:column}.battlefield-row-3d.opponent-lands,.battlefield-row-3d.opponent-creatures,.battlefield-row-3d.opponent-support,.battlefield-row-3d.player-creatures,.battlefield-row-3d.player-support,.battlefield-row-3d.player-lands{transform:none;transform-origin:center center}.battlefield-card-3d{transform-style:preserve-3d;transition:transform .2s ease,filter .2s ease;pointer-events:auto!important;scale:var(--board-card-scale, 1)}.battlefield-card-3d *,.battlefield-card-3d .card-frame,.battlefield-card-3d .card-frame-wrapper{pointer-events:auto!important}.battlefield-card-3d:hover{transform:translateZ(8px) scale(1.03);filter:brightness(1.1);z-index:600!important;position:relative}.gameboard-3d-perspective .player-panel.ai .battlefield-card-3d{position:relative;z-index:510}.gameboard-3d-perspective .player-panel.ai .battlefield-card-3d:hover{z-index:600!important}.hand-card-3d{transform-style:preserve-3d!important;position:absolute!important;left:50%!important;bottom:0!important;transition:transform .18s cubic-bezier(.25,.1,.25,1),filter .18s ease,z-index 0s .18s;pointer-events:auto!important;will-change:transform;backface-visibility:hidden;transform-origin:center bottom;isolation:isolate}.hand-card-3d:hover,.hand-card-3d:focus-within{transform:translate(calc(var(--card-translate-x) - var(--hand-card-width, 250px) / 2)) translateY(-60px) translateZ(calc(var(--card-depth-lift, 0px) + 40px)) scale(var(--hand-hover-scale)) rotateX(0) rotate(0)!important;z-index:200!important;transition:transform .18s cubic-bezier(.25,.1,.25,1),filter .18s ease,z-index 0s 0s}.hand-card-3d:hover *,.hand-card-3d:focus-within *{pointer-events:auto!important}.hand-card-3d.long-press-active{transform:translate(calc(var(--card-translate-x) - var(--hand-card-width, 250px) / 2)) translateY(-70px) translateZ(calc(var(--card-depth-lift, 0px) + 50px)) scale(1.35) rotateX(0) rotate(0)!important;z-index:200!important;filter:brightness(1.2) drop-shadow(0 0 20px rgba(96,165,250,.6))}@media(max-width:768px)and (orientation:landscape){.gameboard-3d-perspective{transform:translateY(-100vh)!important;min-height:100vh}.hand-3d-container{height:150px!important}.hand-3d-wrapper{height:150px}.hand-card-3d{scale:calc(var(--hand-card-scale, 1) * .8)}}@media(orientation:portrait){:root{--board-scale: .6}}@media(max-width:960px)and (orientation:portrait){.gameboard-3d-perspective .player-panel .panel-main,.gameboard-3d-perspective .player-panel .panel-main[data-hand-inline=true],.gameboard-3d-perspective[data-flat-mode=true] .panel-main[data-hand-inline=true]{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:.75rem!important;grid-template-columns:none!important;grid-template-areas:none!important;padding-bottom:1rem!important}.gameboard-3d-perspective .panel-main .stats,.gameboard-3d-perspective .panel-main .battlefield,.gameboard-3d-perspective .panel-main .zone-column,.gameboard-3d-perspective .panel-main .inline-hand-row,.gameboard-3d-perspective .player-panel .player-name-with-avatar{grid-area:auto!important;width:100%!important;max-width:100%!important;position:relative!important;transform:none!important;inset:auto!important}.gameboard-3d-perspective .player-panel .player-name-with-avatar{order:1!important;margin-bottom:.5rem!important;z-index:100!important}.gameboard-3d-perspective .panel-main .stats{order:2!important;margin-bottom:.5rem!important;margin-left:.25rem!important;margin-right:.25rem!important;display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;justify-content:flex-start!important;gap:.5rem!important;z-index:90!important}.gameboard-3d-perspective .panel-main .zone-column{order:3!important;display:flex!important;flex-direction:row!important;justify-content:center!important;align-items:center!important;gap:.5rem!important;padding:.5rem!important;background:#0f172a66!important;border-radius:8px!important;margin-bottom:.5rem!important;margin-left:.25rem!important;margin-right:.25rem!important;min-width:0!important;z-index:80!important}.gameboard-3d-perspective .panel-main .battlefield{order:4!important;min-height:300px!important;margin-left:.25rem!important;margin-right:.25rem!important;margin-bottom:.5rem!important;z-index:1!important}.gameboard-3d-perspective .panel-main .inline-hand-row{order:5!important;display:flex!important;flex-wrap:wrap!important;column-gap:calc(4px * var(--hand-card-scale, 1))!important;row-gap:calc(2px * var(--hand-card-scale, 1))!important;align-items:flex-start!important;width:calc(100% - .5rem)!important;min-height:auto!important;overflow-x:auto!important;overflow-y:hidden!important;padding:calc(.5rem * var(--hand-card-scale, 1))!important;margin-top:calc(.5rem * var(--hand-card-scale, 1))!important;margin-left:.25rem!important;margin-right:.25rem!important;background:#0003!important;border-radius:8px!important;pointer-events:auto!important;z-index:100!important}.gameboard-3d-perspective .panel-main .zone-column .zone-stack-group{flex-direction:row!important;gap:.5rem!important}.gameboard-3d-perspective .player-panel.player .stats,.gameboard-3d-perspective .player-panel.ai .stats{position:relative!important;transform:none!important;right:auto!important;top:auto!important}.gameboard-3d-perspective .player-panel .panel-main{padding:.25rem!important;gap:.5rem!important}}@media(max-width:960px)and (orientation:portrait){.hand-3d-container{position:fixed!important;bottom:0!important;left:0!important;right:0!important;z-index:1000!important;pointer-events:none!important;height:auto!important;min-height:180px!important;display:flex!important;align-items:flex-end!important;justify-content:center!important;padding-bottom:1rem!important}.hand-3d-wrapper,.hand-card-3d{pointer-events:auto!important}.gameboard-3d-perspective{z-index:1!important;padding-bottom:200px!important}.gameboard-3d-perspective .player-panel{z-index:1!important}}.game-board[data-flat-mode=true] .hand-card-3d{transform-style:preserve-3d!important}.game-board[data-flat-mode=true] .hand-card-3d .card-frame-scale{transform:scale(var(--hand-card-scale, 1))!important;transform-origin:top left!important}.view-settings-button{position:fixed;top:140px;right:30px;width:48px;height:48px;border-radius:50%;background:#0f172ad9;border:1px solid rgba(148,163,184,.25);color:#f8fafc;display:flex;align-items:center;justify-content:center;font-size:1.5rem;cursor:pointer;z-index:2000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 4px 12px #0000004d;transition:all .2s ease}.view-settings-button:hover{transform:scale(1.05);background:#1e293bf2;border-color:#60a5fa80;box-shadow:0 8px 24px #0006}@media(max-width:768px){.view-settings-button{top:120px;right:5px;width:40px;height:40px;font-size:1.25rem}}.hand-toggle-button{position:fixed;bottom:20px;right:20px;width:48px;height:48px;border-radius:50%;background:#0f172ad9;border:1px solid rgba(148,163,184,.25);color:#f8fafc;display:flex;align-items:center;justify-content:center;font-size:1.5rem;cursor:pointer;z-index:2000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 4px 12px #0000004d;transition:all .2s ease}.hand-toggle-button:hover{transform:scale(1.05);background:#1e293bf2;border-color:#60a5fa80;box-shadow:0 8px 24px #0006}@media(max-width:768px){.hand-toggle-button{bottom:80px;right:10px;width:40px;height:40px;font-size:1.25rem}}.leyline-modal-overlay{position:fixed;inset:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fadeIn .2s ease-out;overscroll-behavior:contain;touch-action:none}.leyline-modal{background:linear-gradient(145deg,var(--theme-bg-from, rgba(30, 41, 59, .98)),var(--theme-bg-to, rgba(15, 23, 42, .98)));border:2px solid var(--theme-accent, rgba(148, 163, 184, .4));border-radius:16px;padding:2rem;max-width:900px;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #000c,0 0 0 1px var(--theme-accent, rgba(148, 163, 184, .2)) inset;animation:slideUp .3s ease-out;touch-action:auto;overscroll-behavior:contain}.leyline-modal-header{text-align:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid rgba(255,255,255,.1)}.leyline-modal-header h2{font-size:2rem;font-weight:700;color:#f7fafc;margin:0 0 .75rem;text-shadow:0 2px 8px rgba(0,0,0,.3)}.leyline-modal-description{font-size:1.125rem;color:#cbd5e0;margin:0;line-height:1.6}.leyline-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem;padding:1rem 0}.leyline-card-option{position:relative;border:3px solid transparent;border-radius:12px;padding:1rem;background:linear-gradient(135deg,#2d3748,#1a202c);cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;gap:.75rem}.leyline-card-option:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0006;border-color:var(--theme-accent, rgba(96, 165, 250, .5))}.leyline-card-option.selected{border-color:var(--theme-accent, rgba(96, 165, 250, .8));background:linear-gradient(135deg,var(--theme-primary-light, rgba(59, 130, 246, .4)),var(--theme-bg-to, rgba(37, 99, 235, .3)));box-shadow:0 8px 24px var(--theme-shadow, rgba(59, 130, 246, .4)),0 0 0 1px var(--theme-accent, rgba(96, 165, 250, .5)) inset}.leyline-card-preview{width:100%;display:flex;justify-content:center;pointer-events:none}.leyline-card-name{font-size:.9375rem;font-weight:600;color:#f7fafc;text-align:center;line-height:1.4;min-height:2.8em;display:flex;align-items:center;justify-content:center}.leyline-selection-indicator{position:absolute;top:.75rem;right:.75rem;width:32px;height:32px;border-radius:50%;background:#00000080;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;color:#f7fafc;border:2px solid rgba(255,255,255,.3);transition:all .2s ease}.leyline-card-option.selected .leyline-selection-indicator{background:var(--theme-primary, linear-gradient(135deg, rgba(59, 130, 246, .95), rgba(37, 99, 235, .95)));border-color:var(--theme-accent, rgba(96, 165, 250, .8));color:#f7fafc;transform:scale(1.1)}.leyline-modal-actions{display:flex;gap:1rem;justify-content:center;padding-top:1.5rem;border-top:2px solid rgba(255,255,255,.1)}.leyline-btn{padding:.875rem 2rem;font-size:1rem;font-weight:600;border-radius:8px;border:2px solid transparent;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:.5px}.leyline-btn-primary{background:var(--theme-primary, linear-gradient(135deg, rgba(59, 130, 246, .9), rgba(37, 99, 235, .9)));color:#f7fafc;border-color:var(--theme-accent, rgba(96, 165, 250, .4));box-shadow:0 4px 12px var(--theme-shadow, rgba(59, 130, 246, .3))}.leyline-btn-primary:hover{background:var(--theme-primary-hover, linear-gradient(135deg, rgba(96, 165, 250, 1), rgba(59, 130, 246, 1)));transform:translateY(-2px);box-shadow:0 6px 20px var(--theme-shadow, rgba(59, 130, 246, .5))}.leyline-btn-primary:active{transform:translateY(0)}.leyline-btn-secondary{background:#4a55684d;color:#cbd5e0;border-color:#4a5568}.leyline-btn-secondary:hover{background:#4a556880;border-color:#718096;color:#f7fafc}@media(max-width:768px){.leyline-modal{padding:1.5rem;margin:1rem;max-height:90vh}.leyline-modal-header h2{font-size:1.5rem}.leyline-cards-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.leyline-modal-actions{flex-direction:column}.leyline-btn{width:100%}}.leyline-modal::-webkit-scrollbar{width:8px}.leyline-modal::-webkit-scrollbar-track{background:#0003;border-radius:4px}.leyline-modal::-webkit-scrollbar-thumb{background:var(--theme-accent, rgba(96, 165, 250, .5));border-radius:4px}.leyline-modal::-webkit-scrollbar-thumb:hover{background:var(--theme-accent, rgba(96, 165, 250, .7))}.mulligan-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);animation:fadeIn .3s ease-out;overscroll-behavior:contain;touch-action:none}.mulligan-modal{background:linear-gradient(135deg,var(--theme-bg-from, rgba(26, 31, 46, .95)) 0%,var(--theme-bg-to, rgba(37, 43, 61, .95)) 100%);border:3px solid var(--theme-accent, rgba(96, 165, 250, .6));border-radius:20px;padding:1.5rem;max-width:1400px;width:96vw;max-height:92vh;overflow-y:auto;box-shadow:0 25px 70px #000c,0 0 0 1px var(--theme-accent, rgba(255, 255, 255, .15)) inset;animation:slideUp .4s ease-out;touch-action:auto;overscroll-behavior:contain}.mulligan-modal-header{text-align:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:2px solid rgba(255,255,255,.15);position:relative}.mulligan-modal-header h2{font-size:1.75rem;font-weight:800;color:var(--theme-accent, #f7fafc);margin:0 0 .5rem;text-shadow:0 3px 10px rgba(0,0,0,.4);letter-spacing:-.5px}.mulligan-count-badge{display:inline-block;background:var(--theme-primary, linear-gradient(135deg, #ed8936 0%, #dd6b20 100%));color:#fff;padding:.35rem 1rem;border-radius:20px;font-size:.8rem;font-weight:700;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 4px 12px var(--theme-shadow, rgba(237, 137, 54, .4))}.mulligan-modal-description{font-size:.95rem;color:#cbd5e0;line-height:1.5;max-width:700px;margin:0 auto}.mulligan-hand-preview{margin-bottom:1rem}.mulligan-hand-label{font-size:1rem;font-weight:700;color:#e2e8f0;margin-bottom:.75rem;text-align:center;text-transform:uppercase;letter-spacing:1px}.mulligan-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;padding:1rem;background:#0006;border-radius:12px;border:2px solid rgba(255,255,255,.1)}.mulligan-card{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.75rem;background:#2d374880;border-radius:10px;transition:all .2s ease}.mulligan-card:hover{background:#2d3748cc;transform:translateY(-4px);box-shadow:0 8px 20px #0006}.mulligan-card-name{font-size:.8rem;font-weight:600;color:#f7fafc;text-align:center;line-height:1.2;min-height:2.4em;display:flex;align-items:center;justify-content:center}.mulligan-modal-actions{display:flex;gap:1rem;justify-content:center;padding:1rem 0 .75rem;border-top:2px solid rgba(255,255,255,.1);border-bottom:2px solid rgba(255,255,255,.1);margin-bottom:1rem}.mulligan-btn{flex:1;max-width:280px;padding:1rem 2rem;font-size:1rem;font-weight:700;border-radius:12px;border:3px solid transparent;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:.5px;display:flex;flex-direction:column;align-items:center;gap:.25rem;position:relative;overflow:hidden}.mulligan-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#fff3;transform:translate(-50%,-50%);transition:width .6s,height .6s}.mulligan-btn:hover:before{width:300px;height:300px}.mulligan-btn:disabled{opacity:.5;cursor:not-allowed}.mulligan-btn-mulligan{background:linear-gradient(135deg,#e53e3e,#c53030);color:#fff;border-color:#fc8181;box-shadow:0 6px 20px #e53e3e66}.mulligan-btn-mulligan:hover:not(:disabled){background:linear-gradient(135deg,#fc8181,#e53e3e);transform:translateY(-3px);box-shadow:0 8px 28px #e53e3e80}.mulligan-btn-keep{background:var(--theme-primary, linear-gradient(135deg, #38a169 0%, #2f855a 100%));color:#fff;border-color:var(--theme-accent, #68d391);box-shadow:0 6px 20px var(--theme-shadow, rgba(56, 161, 105, .4))}.mulligan-btn-keep:hover:not(:disabled){background:var(--theme-primary-hover, linear-gradient(135deg, #48bb78 0%, #38a169 100%));transform:translateY(-3px);box-shadow:0 8px 28px var(--theme-shadow, rgba(56, 161, 105, .5))}.mulligan-btn:active:not(:disabled){transform:translateY(0)}.mulligan-btn-subtitle{font-size:.7rem;font-weight:400;opacity:.75;text-transform:none;letter-spacing:0}.mulligan-rules-hint{text-align:center;font-size:.8rem;color:#a0aec0;line-height:1.4;padding:1rem;background:#0003;border-radius:10px;border:1px solid rgba(255,255,255,.05)}.mulligan-rules-hint strong{color:#e2e8f0;font-weight:700}@media(max-width:768px){.mulligan-modal{padding:1rem;margin:.5rem}.mulligan-modal-header h2{font-size:1.5rem}.mulligan-cards-grid{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:.75rem;padding:.75rem}.mulligan-modal-actions{flex-direction:column;gap:.75rem;padding:.75rem 0 .5rem}.mulligan-btn{max-width:100%;width:100%;padding:.875rem 1.5rem;font-size:.95rem}}.mulligan-modal::-webkit-scrollbar{width:10px}.mulligan-modal::-webkit-scrollbar-track{background:#0000004d;border-radius:5px}.mulligan-modal::-webkit-scrollbar-thumb{background:#63b3ed99;border-radius:5px}.mulligan-modal::-webkit-scrollbar-thumb:hover{background:#63b3edcc}.scry-modal-overlay{position:fixed;inset:0;background:#000000d9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease-out;overscroll-behavior:contain;touch-action:none}.scry-modal{background:linear-gradient(135deg,#1a1f2efa,#252b3dfa);border:2px solid rgba(59,130,246,.5);border-radius:16px;box-shadow:0 20px 60px #0009;max-width:1200px;width:90vw;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;animation:slideUp .3s ease-out;touch-action:auto;overscroll-behavior:contain}.scry-modal-header{padding:2rem 2.5rem 1.5rem;border-bottom:2px solid rgba(59,130,246,.3);background:linear-gradient(to bottom,rgba(59,130,246,.1),transparent)}.scry-modal-header h2{margin:0 0 .75rem;font-size:2rem;font-weight:700;color:#60a5fa;text-shadow:0 2px 8px rgba(96,165,250,.3)}.scry-modal-description{margin:0;font-size:1rem;color:#fffc;line-height:1.5}.scry-modal-content{flex:1;padding:2rem;display:grid;grid-template-columns:1fr 1fr;gap:2rem;overflow-y:auto}.scry-section{background:#0000004d;border-radius:12px;padding:1.5rem;display:flex;flex-direction:column}.scry-section-top{border:2px solid rgba(34,197,94,.4)}.scry-section-bottom{border:2px solid rgba(239,68,68,.4)}.scry-section-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.1)}.scry-section-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#fff}.scry-section-count{color:#fff9;font-size:1rem}.scry-order-hint{margin-left:auto;font-size:.875rem;color:#ffffff80;font-style:italic}.scry-cards-list{flex:1;display:flex;flex-direction:column;gap:1rem;overflow-y:auto;max-height:50vh}.scry-empty-zone{padding:2rem;text-align:center;color:#fff6;font-style:italic;background:#0003;border-radius:8px;border:2px dashed rgba(255,255,255,.1)}.scry-card-item{display:flex;align-items:center;gap:1rem;padding:.75rem;background:#0000004d;border-radius:8px;border:1px solid rgba(255,255,255,.1);transition:all .2s ease}.scry-card-item:hover{background:#00000080;border-color:#fff3;transform:translate(4px)}.scry-card-order{font-size:1.125rem;font-weight:700;color:#ffffff80;min-width:2.5rem;text-align:center}.scry-card-preview{flex-shrink:0}.scry-card-actions{flex:1;display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.scry-btn-small{padding:.375rem .75rem;font-size:.875rem;font-weight:600;border:1px solid rgba(255,255,255,.2);border-radius:6px;background:#3b82f633;color:#fff;cursor:pointer;transition:all .2s ease}.scry-btn-small:hover:not(:disabled){background:#3b82f666;border-color:#3b82f699;transform:translateY(-1px)}.scry-btn-small:disabled{opacity:.3;cursor:not-allowed}.scry-btn-success{background:#22c55e33;border-color:#22c55e66}.scry-btn-success:hover:not(:disabled){background:#22c55e66;border-color:#22c55e99}.scry-btn-danger{background:#ef444433;border-color:#ef444466}.scry-btn-danger:hover:not(:disabled){background:#ef444466;border-color:#ef444499}.scry-modal-actions{padding:1.5rem 2.5rem;border-top:2px solid rgba(59,130,246,.3);background:linear-gradient(to top,rgba(59,130,246,.05),transparent);display:flex;justify-content:center}.scry-btn-confirm{padding:1rem 3rem;font-size:1.125rem;font-weight:700;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:2px solid rgba(255,255,255,.2);border-radius:12px;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #3b82f64d;text-transform:uppercase;letter-spacing:.5px}.scry-btn-confirm:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 6px 20px #3b82f680}.scry-btn-confirm:disabled{opacity:.5;cursor:not-allowed;transform:none}.scry-cards-list::-webkit-scrollbar{width:8px}.scry-cards-list::-webkit-scrollbar-track{background:#0003;border-radius:4px}.scry-cards-list::-webkit-scrollbar-thumb{background:#3b82f680;border-radius:4px}.scry-cards-list::-webkit-scrollbar-thumb:hover{background:#3b82f6b3}@media(max-width:1024px){.scry-modal-content{grid-template-columns:1fr}.scry-modal{width:95vw;max-height:90vh}}@media(max-width:640px){.scry-modal-header{padding:1.5rem}.scry-modal-content{padding:1rem;gap:1rem}.scry-card-item{flex-direction:column;align-items:flex-start}.scry-card-order{min-width:auto}}.bottom-cards-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);animation:fadeIn .3s ease-out;overscroll-behavior:contain;touch-action:none}.bottom-cards-modal{background:linear-gradient(135deg,var(--theme-bg-from, #1a1f2e) 0%,var(--theme-bg-to, #252b3d) 100%);border:3px solid var(--theme-accent, rgba(96, 165, 250, .6));border-radius:20px;padding:2.5rem;max-width:1100px;width:95vw;max-height:90vh;overflow-y:auto;box-shadow:0 25px 70px #000c,0 0 0 1px var(--theme-accent, rgba(255, 255, 255, .15)) inset;animation:slideUp .4s ease-out;touch-action:auto;overscroll-behavior:contain}@keyframes slideUp{0%{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.bottom-cards-modal-header{text-align:center;margin-bottom:2rem}.bottom-cards-modal-header h2{color:var(--theme-accent, #f7fafc);font-size:2rem;font-weight:700;margin:0 0 .75rem;text-shadow:0 2px 8px rgba(0,0,0,.4)}.bottom-cards-modal-description{color:#cbd5e0;font-size:1.1rem;margin:0 0 1rem;line-height:1.5}.bottom-cards-counter{display:inline-block;background:var(--theme-primary-light, rgba(66, 153, 225, .2));border:2px solid var(--theme-accent, #4299e1);border-radius:8px;padding:.5rem 1rem;font-size:1.1rem;font-weight:600;color:var(--theme-accent, #63b3ed)}.bottom-cards-hand-preview{margin-bottom:2rem}.bottom-cards-hand-label{color:#e2e8f0;font-size:1rem;font-weight:600;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.05em}.bottom-cards-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem;max-height:50vh;overflow-y:auto;padding:1rem;background:#0003;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.bottom-cards-card{position:relative;cursor:pointer;transition:all .2s ease;border-radius:8px;padding:.5rem;border:2px solid transparent;background:#ffffff0d}.bottom-cards-card:hover{transform:translateY(-4px);background:#ffffff1a;border-color:#4299e180}.bottom-cards-card.selected{border-color:var(--theme-accent, #4299e1);background:var(--theme-primary-light, rgba(66, 153, 225, .2));box-shadow:0 0 20px var(--theme-shadow, rgba(66, 153, 225, .4))}.bottom-cards-card-name{color:#e2e8f0;font-size:.85rem;font-weight:500;margin-top:.5rem;text-align:center;word-wrap:break-word}.bottom-cards-selection-indicator{position:absolute;top:.5rem;right:.5rem;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:700;background:#000000b3;border:2px solid rgba(255,255,255,.3);transition:all .2s ease}.bottom-cards-card.selected .bottom-cards-selection-indicator{background:#4299e1;border-color:#63b3ed;color:#fff}.bottom-cards-modal-actions{display:flex;gap:1rem;justify-content:center;margin-bottom:1.5rem}.bottom-cards-btn{padding:1rem 2.5rem;font-size:1.1rem;font-weight:600;border:none;border-radius:12px;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:.05em;box-shadow:0 4px 12px #0000004d;display:flex;flex-direction:column;align-items:center;gap:.25rem;min-width:200px}.bottom-cards-btn:disabled{opacity:.4;cursor:not-allowed;transform:none!important}.bottom-cards-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #0006}.bottom-cards-btn:active:not(:disabled){transform:translateY(0)}.bottom-cards-btn-confirm{background:var(--theme-primary, linear-gradient(135deg, #48bb78 0%, #38a169 100%));color:#fff;box-shadow:0 4px 12px var(--theme-shadow, rgba(0, 0, 0, .3))}.bottom-cards-btn-confirm:hover:not(:disabled){background:var(--theme-primary-hover, linear-gradient(135deg, #38a169 0%, #2f855a 100%));box-shadow:0 6px 16px var(--theme-shadow, rgba(0, 0, 0, .4))}.bottom-cards-rules-hint{text-align:center;color:#a0aec0;font-size:.9rem;padding:1rem;background:#0000004d;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.bottom-cards-rules-hint strong{color:#cbd5e0}.bottom-cards-modal::-webkit-scrollbar,.bottom-cards-cards-grid::-webkit-scrollbar{width:10px}.bottom-cards-modal::-webkit-scrollbar-track,.bottom-cards-cards-grid::-webkit-scrollbar-track{background:#0003;border-radius:10px}.bottom-cards-modal::-webkit-scrollbar-thumb,.bottom-cards-cards-grid::-webkit-scrollbar-thumb{background:#fff3;border-radius:10px}.bottom-cards-modal::-webkit-scrollbar-thumb:hover,.bottom-cards-cards-grid::-webkit-scrollbar-thumb:hover{background:#ffffff4d}@media(max-width:768px){.bottom-cards-modal{padding:1.5rem}.bottom-cards-modal-header h2{font-size:1.5rem}.bottom-cards-cards-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:.75rem}.bottom-cards-btn{padding:.875rem 1.5rem;font-size:1rem;min-width:160px}}.mdfc-face-modal-overlay{position:fixed;inset:0;background:#000000d9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease-out;overscroll-behavior:contain;touch-action:none}.mdfc-face-modal{background:linear-gradient(135deg,#1a1f2efa,#252b3dfa);border:2px solid rgba(139,92,246,.5);border-radius:16px;box-shadow:0 20px 60px #0009;max-width:900px;width:90vw;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;animation:slideUp .3s ease-out;touch-action:auto;overscroll-behavior:contain}.mdfc-face-header{padding:2rem 2.5rem 1.5rem;border-bottom:2px solid rgba(139,92,246,.3);background:linear-gradient(to bottom,rgba(139,92,246,.1),transparent);text-align:center}.mdfc-face-header h2{margin:0 0 .5rem;font-size:1.75rem;font-weight:700;color:#a78bfa;text-shadow:0 2px 8px rgba(167,139,250,.3)}.mdfc-face-subtitle{margin:0;font-size:1rem;color:#ffffffb3}.mdfc-face-options{padding:3rem 2rem;display:flex;gap:2rem;justify-content:center;align-items:flex-start;flex-wrap:wrap}.mdfc-face-option{background:#0000004d;border:2px solid rgba(139,92,246,.3);border-radius:12px;padding:1rem;width:280px;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;gap:1rem}.mdfc-face-option:hover:not(:disabled){background:#8b5cf61a;border-color:#8b5cf699;transform:translateY(-4px);box-shadow:0 8px 24px #8b5cf64d}.mdfc-face-option:disabled{opacity:.5;cursor:not-allowed;transform:none}.mdfc-face-card-preview{width:100%;aspect-ratio:488 / 680;border-radius:8px;overflow:hidden;background:#00000080;display:flex;align-items:center;justify-content:center}.mdfc-face-card-image{width:100%;height:100%;object-fit:cover;display:block}.mdfc-face-card-placeholder{padding:2rem;text-align:center;color:#ffffff80;font-size:1rem}.mdfc-face-label{text-align:center;font-size:1rem;font-weight:600;color:#fff;line-height:1.4}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.mdfc-face-options{flex-direction:column;align-items:center;padding:2rem 1rem}.mdfc-face-option{width:100%;max-width:280px}.mdfc-face-header{padding:1.5rem}.mdfc-face-header h2{font-size:1.5rem}}.library-search-prompt-overlay{position:fixed;inset:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.library-search-prompt-container{background:linear-gradient(135deg,var(--theme-bg-from, #1a1a2e) 0%,var(--theme-bg-to, #16213e) 100%);border:2px solid var(--theme-border, #4a90e2);border-radius:16px;box-shadow:0 20px 60px #00000080;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.library-search-header{padding:24px;border-bottom:2px solid var(--theme-border, #4a90e2);background:var(--theme-primary-light, rgba(74, 144, 226, .1))}.library-search-header h2{margin:0 0 8px;color:var(--theme-text-primary, #fff);font-size:24px;font-weight:700;text-align:center}.search-criteria{margin:0 0 8px;color:var(--theme-text-secondary, #aaa);font-size:16px;text-align:center}.selection-count{margin:0;color:var(--theme-accent, #4a90e2);font-size:14px;font-weight:700;text-align:center}.library-search-content{flex:1;display:flex;gap:24px;padding:24px;overflow:hidden}.library-search-cards-grid{flex:1;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;overflow-y:auto;padding:8px;max-height:60vh}.library-search-card-wrapper{position:relative;cursor:pointer;border:3px solid transparent;border-radius:12px;transition:all .2s ease;background:#ffffff0d;padding:8px}.library-search-card-wrapper:hover{border-color:var(--theme-accent, #4a90e2);transform:scale(1.05);box-shadow:0 8px 24px var(--theme-shadow-hover, rgba(74, 144, 226, .4));background:var(--theme-primary-light, rgba(74, 144, 226, .1))}.library-search-card-wrapper.selected{border-color:var(--theme-success, #50c878);background:var(--theme-success-light, rgba(80, 200, 120, .15));box-shadow:0 8px 24px var(--theme-success-shadow, rgba(80, 200, 120, .4))}.selection-indicator{position:absolute;top:16px;right:16px;width:32px;height:32px;background:var(--theme-success, #50c878);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px;font-weight:700;box-shadow:0 4px 8px #0000004d}.library-search-preview{flex-shrink:0;width:300px;display:flex;align-items:center;justify-content:center;background:#0000004d;border-radius:12px;padding:16px}.library-search-actions{padding:24px;border-top:2px solid var(--theme-border, #4a90e2);display:flex;gap:16px;justify-content:center;background:var(--theme-primary-light, rgba(74, 144, 226, .05))}.library-search-button{padding:12px 32px;font-size:16px;font-weight:700;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;min-width:160px}.library-search-confirm{background:var(--theme-primary, linear-gradient(135deg, #50c878 0%, #3aa65d 100%));color:#fff;box-shadow:0 4px 12px var(--theme-success-shadow, rgba(80, 200, 120, .3))}.library-search-confirm:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px var(--theme-success-shadow, rgba(80, 200, 120, .4));background:var(--theme-primary-hover, linear-gradient(135deg, #3aa65d 0%, #2f8a4e 100%))}.library-search-confirm:disabled{background:var(--theme-disabled, #555);cursor:not-allowed;opacity:.5}.library-search-cancel{background:var(--theme-danger, linear-gradient(135deg, #e74c3c 0%, #c0392b 100%));color:#fff;box-shadow:0 4px 12px var(--theme-danger-shadow, rgba(231, 76, 60, .3))}.library-search-cancel:hover{transform:translateY(-2px);box-shadow:0 6px 16px var(--theme-danger-shadow, rgba(231, 76, 60, .4));background:var(--theme-danger-hover, linear-gradient(135deg, #c0392b 0%, #a93226 100%))}.library-search-cards-grid::-webkit-scrollbar{width:12px}.library-search-cards-grid::-webkit-scrollbar-track{background:var(--theme-scrollbar-track, rgba(255, 255, 255, .05));border-radius:6px}.library-search-cards-grid::-webkit-scrollbar-thumb{background:var(--theme-accent, #4a90e2);border-radius:6px}.library-search-cards-grid::-webkit-scrollbar-thumb:hover{background:var(--theme-accent-hover, #5fa0f2)}@media(max-width:1024px){.library-search-content{flex-direction:column}.library-search-preview{width:100%;max-height:200px}.library-search-cards-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));max-height:40vh}}.mana-ability-prompt-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.mana-ability-prompt-container{background:linear-gradient(135deg,var(--theme-bg-from),var(--theme-bg-to));border:2px solid var(--theme-border);border-radius:12px;padding:24px;min-width:400px;max-width:600px;box-shadow:0 8px 32px #00000080}.mana-ability-prompt-header{margin-bottom:20px}.mana-ability-prompt-header h3{color:var(--theme-text-primary);margin:0;font-size:1.2rem;font-weight:600}.mana-ability-options{display:flex;flex-direction:column;gap:12px}.mana-ability-option{padding:16px 20px;background:var(--theme-bg-from);border:2px solid var(--theme-border);border-radius:8px;color:var(--theme-text-primary);font-size:1rem;cursor:pointer;transition:all .2s ease;text-align:left}.mana-ability-option:hover{background:var(--theme-accent);border-color:var(--theme-primary);transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.mana-ability-option:active{transform:translateY(0);box-shadow:0 2px 6px #0003}.mana-ability-label{font-family:Courier New,monospace;font-weight:500}.oracle-card-reference{display:inline-block;position:relative}.oracle-card-name{background:none;border:none;color:var(--oracle-accent, #d4af37);font-weight:600;text-decoration:underline;text-decoration-style:dotted;cursor:pointer;padding:0;margin:0 2px;font-size:inherit;font-family:inherit;transition:all .2s ease}.oracle-card-name:hover{color:var(--oracle-accent-bright, #ffd700);text-decoration-style:solid;text-shadow:0 0 8px rgba(212,175,55,.5)}.oracle-card-name:active{transform:scale(.98)}.oracle-card-loading{margin-left:4px;opacity:.6;animation:oracle-pulse 1.5s ease-in-out infinite}@keyframes oracle-pulse{0%,to{opacity:.3}50%{opacity:.8}}.oracle-card-popup{position:fixed;z-index:9999;filter:drop-shadow(0 8px 16px rgba(0,0,0,.4));pointer-events:none;max-width:280px;transform:translate(-50%)}.oracle-scryfall-card-image{display:block;width:100%;max-width:280px;height:auto;border-radius:12px;box-shadow:0 8px 24px #00000080,0 0 40px #8a5cf64d}.oracle-inline-card-container{display:block;margin:12px 0}.oracle-inline-card{margin-top:12px;display:flex;justify-content:center;align-items:center}.oracle-scryfall-card-image--inline{max-width:320px;border-radius:16px;box-shadow:0 8px 24px #0006;transition:transform .2s ease}.oracle-scryfall-card-image--inline:hover{transform:scale(1.02)}.oracle-messages .oracle-card-popup,.oracle-messages .oracle-scryfall-card-image{max-width:240px}.oracle-card-modal-overlay{position:fixed;inset:0;background:#000000d9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px;overscroll-behavior:contain;touch-action:none}.oracle-card-modal{position:relative;max-width:90vw;max-height:90vh;background:linear-gradient(135deg,#1a1a2efa,#16213efa);border-radius:16px;border:2px solid rgba(138,92,246,.6);box-shadow:0 20px 60px #000000b3,0 0 60px #8a5cf666;overflow:hidden;touch-action:auto;overscroll-behavior:contain}.oracle-card-modal-close{position:absolute;top:8px;right:8px;width:40px;height:40px;border:2px solid rgba(138,92,246,.4);background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#e8e8f0;font-size:28px;line-height:1;cursor:pointer;border-radius:50%;z-index:10001;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.oracle-card-modal-close:hover{background:#8a5cf64d;border-color:#8a5cf6cc;color:#fff;transform:scale(1.1);box-shadow:0 0 20px #8a5cf680}.oracle-card-modal-close:active{transform:scale(.95)}.oracle-card-modal-content{padding:16px;display:flex;align-items:center;justify-content:center;min-height:300px;background:radial-gradient(ellipse at center,rgba(138,92,246,.05),transparent 70%)}.oracle-card-modal-content .card{max-width:100%;max-height:80vh;margin:0 auto}@media(max-width:768px){.oracle-card-modal{max-width:95vw;max-height:85vh}.oracle-card-modal-content{padding:12px}.oracle-card-name{padding:2px 4px;margin:0 4px;min-height:24px;display:inline-flex;align-items:center}}@media(hover:none)and (pointer:coarse){.oracle-card-name{padding:4px 6px;min-height:32px}.oracle-card-name:hover{color:var(--oracle-accent, #d4af37);text-shadow:none}.oracle-card-name:active{color:var(--oracle-accent-bright, #ffd700);text-shadow:0 0 12px rgba(212,175,55,.7)}}.orb-of-orin-container{position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;overflow:hidden;z-index:100000}.orb-of-orin-container.orb-static{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:all}.orb-of-orin-canvas{width:100%;height:100%;display:block;pointer-events:none}.oracle-overlay{position:fixed;inset:0;background:#00000080;backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);display:flex;align-items:center;justify-content:center;z-index:2500;padding:1.5rem;animation:overlayFadeIn .3s ease-out;cursor:pointer}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.oracle-container{background:linear-gradient(145deg,var(--theme-bg-from, rgba(30, 41, 59, .98)),var(--theme-bg-to, rgba(15, 23, 42, .98)));border:2px solid var(--theme-accent, rgba(148, 163, 184, .4));border-radius:24px;box-shadow:0 0 60px var(--theme-shadow, rgba(138, 92, 246, .3)),0 30px 60px #000000b3,inset 0 1px #ffffff1a;width:100%;max-width:1200px;max-height:92vh;height:92vh;display:flex;flex-direction:column;overflow:hidden;position:relative;cursor:default}.oracle-container:before{content:"";position:absolute;inset:-2px;border-radius:24px;background:linear-gradient(135deg,var(--theme-shadow, rgba(138, 92, 246, .3)),var(--theme-accent, rgba(148, 163, 184, .4)),var(--theme-shadow, rgba(138, 92, 246, .3)));pointer-events:none;z-index:-1;opacity:.6;filter:blur(8px)}.oracle-header{display:flex;align-items:center;justify-content:space-between;padding:2rem 2.5rem;border-bottom:2px solid var(--theme-accent, rgba(148, 163, 184, .2));background:linear-gradient(to bottom,var(--theme-accent, rgba(148, 163, 184, .1)),transparent),radial-gradient(ellipse at 50% 0%,var(--theme-shadow, rgba(138, 92, 246, .15)),transparent 70%);position:relative;overflow:hidden}.oracle-header:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--theme-primary, rgba(99, 102, 241, .8)) 50%,transparent)}.oracle-title-section{display:flex;align-items:center;gap:1.5rem;position:relative;z-index:1}.oracle-icon{display:flex;align-items:center;justify-content:center;position:relative;width:80px;height:80px;margin-right:16px;overflow:visible}.oracle-icon svg{width:48px;height:48px;color:#fff;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));position:relative;z-index:1}.oracle-header h2{margin:0;font-size:2rem;font-weight:800;background:linear-gradient(135deg,#fff,#dbeafe);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 4px 16px var(--accent-glow);letter-spacing:-.02em}.oracle-subtitle{margin:.5rem 0 0;font-size:1rem;color:#b4b8d4;font-weight:500;letter-spacing:.02em}.oracle-header-actions{display:flex;align-items:center;gap:.75rem;position:relative;z-index:1}.oracle-action-btn,.oracle-close-btn{background:var(--theme-accent, rgba(148, 163, 184, .1));border:2px solid var(--theme-accent, rgba(148, 163, 184, .3));color:#b4b8d4;width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s cubic-bezier(.34,1.56,.64,1);font-size:1.25rem;position:relative;overflow:hidden}.oracle-action-btn:before,.oracle-close-btn:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,var(--theme-shadow, rgba(138, 92, 246, .2)),var(--theme-accent, rgba(148, 163, 184, .3)));opacity:0;transition:opacity .3s}.oracle-action-btn svg{width:20px;height:20px;position:relative;z-index:1}.oracle-action-btn:hover,.oracle-close-btn:hover{background:var(--theme-accent, rgba(148, 163, 184, .2));border-color:var(--theme-primary, rgba(99, 102, 241, .8));color:#fff;transform:translateY(-2px);box-shadow:0 8px 20px var(--theme-shadow, rgba(138, 92, 246, .4))}.oracle-action-btn:hover:before,.oracle-close-btn:hover:before{opacity:1}.oracle-close-btn:hover{border-color:#ef4444cc;background:#ef44441a}.oracle-api-key-section{padding:1.5rem 2.5rem;background:linear-gradient(to bottom,var(--theme-accent, rgba(148, 163, 184, .1)),transparent),#0000004d;border-bottom:2px solid var(--theme-accent, rgba(148, 163, 184, .2))}.oracle-api-key-info{margin:0 0 1rem;font-size:.9375rem;color:#b4b8d4;line-height:1.6}.oracle-api-key-input-group{display:flex;gap:.75rem}.oracle-api-key-input{flex:1;padding:.875rem 1.25rem;background:#0006;border:2px solid var(--theme-accent, rgba(148, 163, 184, .3));border-radius:12px;color:#e8e8f0;font-family:Monaco,Courier New,monospace;font-size:.9375rem;transition:all .3s}.oracle-api-key-input:focus{outline:none;border-color:var(--theme-primary, rgba(99, 102, 241, .8));box-shadow:0 0 0 4px var(--theme-shadow, rgba(138, 92, 246, .15));background:#00000080}.oracle-api-key-save{padding:.875rem 2rem;background:linear-gradient(135deg,var(--theme-primary, rgba(99, 102, 241, .8)) 0%,var(--theme-accent, rgba(148, 163, 184, .6)) 100%);border:none;border-radius:12px;color:#fff;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.34,1.56,.64,1);box-shadow:0 4px 16px var(--theme-shadow, rgba(138, 92, 246, .3));text-transform:uppercase;letter-spacing:.05em;font-size:.875rem}.oracle-api-key-save:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px var(--theme-shadow, rgba(138, 92, 246, .5))}.oracle-api-key-save:disabled{opacity:.5;cursor:not-allowed}.oracle-no-key{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:5rem 2.5rem;text-align:center;min-height:500px}.oracle-no-key-icon{font-size:5rem;margin-bottom:2rem;opacity:.7;filter:drop-shadow(0 4px 16px var(--theme-shadow, rgba(138, 92, 246, .3)))}.oracle-no-key h3{margin:0 0 1.5rem;font-size:1.75rem;background:linear-gradient(135deg,#fff,#dbeafe);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:800}.oracle-no-key p{margin:.75rem 0;color:#b4b8d4;max-width:550px;line-height:1.7;font-size:1.0625rem}.oracle-no-key-hint{margin-top:2rem!important;font-size:.9375rem;padding:1rem 1.5rem;background:var(--theme-accent, rgba(148, 163, 184, .1));border:2px solid var(--theme-accent, rgba(148, 163, 184, .3));border-radius:12px;max-width:600px}.oracle-no-key-hint a{color:var(--theme-primary, rgba(99, 102, 241, .8));text-decoration:none;font-weight:700;transition:all .2s}.oracle-no-key-hint a:hover{color:var(--theme-primary, rgba(99, 102, 241, 1));text-decoration:underline}.oracle-messages{flex:1;overflow-y:auto;padding:2.5rem;display:flex;flex-direction:column;gap:2rem;background:radial-gradient(ellipse at 50% 0%,var(--theme-shadow, rgba(138, 92, 246, .08)),transparent 50%),#0000004d;position:relative}.oracle-message{display:flex;gap:1.25rem;position:relative}.oracle-message--user{flex-direction:row-reverse}.oracle-message-avatar{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,var(--theme-primary, rgba(99, 102, 241, .8)) 0%,var(--theme-accent, rgba(148, 163, 184, .6)) 100%);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 6px 20px var(--theme-shadow, rgba(138, 92, 246, .4)),0 0 30px var(--theme-shadow, rgba(138, 92, 246, .2)),inset 0 1px #ffffff4d;position:relative;transition:transform .3s}.oracle-message-avatar:before{content:"";position:absolute;inset:-2px;background:linear-gradient(135deg,var(--theme-shadow, rgba(138, 92, 246, .3)),var(--theme-shadow, rgba(138, 92, 246, .3)));border-radius:16px;z-index:-1;filter:blur(6px);opacity:.7}.oracle-message:hover .oracle-message-avatar{transform:scale(1.05)}.oracle-message-avatar svg{width:28px;height:28px;color:#fff;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.oracle-message-content{flex:1;max-width:75%}.oracle-message--user .oracle-message-content{display:flex;flex-direction:column;align-items:flex-end}.oracle-message-label{font-size:.8125rem;font-weight:700;background:linear-gradient(135deg,var(--theme-primary, rgba(99, 102, 241, .8)),var(--theme-accent, rgba(148, 163, 184, .8)));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.08em}.oracle-message-text{background:linear-gradient(135deg,var(--theme-accent, rgba(148, 163, 184, .1)),var(--theme-accent, rgba(148, 163, 184, .05))),#14142899;border:2px solid var(--theme-accent, rgba(148, 163, 184, .3));border-radius:16px;padding:1.5rem 1.75rem;color:#e8e8f0;line-height:1.7;font-size:1.0625rem;box-shadow:0 4px 16px #0000004d,inset 0 1px #ffffff1a;position:relative;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s}.oracle-message-text:hover{transform:translateY(-2px);box-shadow:0 8px 24px var(--theme-shadow, rgba(138, 92, 246, .3)),0 4px 16px #0000004d,inset 0 1px #ffffff1a}.oracle-message--user .oracle-message-text{background:linear-gradient(135deg,var(--theme-primary, rgba(99, 102, 241, .25)),var(--theme-accent, rgba(148, 163, 184, .15))),#141e3299;border-color:var(--theme-primary, rgba(99, 102, 241, .5))}.oracle-message-text p{margin:0}.oracle-message-text p+p{margin-top:1rem}.oracle-typing-indicator{display:flex;gap:.5rem;padding:1.25rem 1.5rem;background:linear-gradient(135deg,var(--theme-accent, rgba(148, 163, 184, .1)),var(--theme-accent, rgba(148, 163, 184, .05))),#14142899;border:2px solid var(--theme-accent, rgba(148, 163, 184, .3));border-radius:16px;width:fit-content;box-shadow:0 4px 16px #0000004d,inset 0 1px #ffffff1a}.oracle-typing-indicator span{width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,var(--theme-primary, rgba(99, 102, 241, .8)),var(--theme-accent, rgba(148, 163, 184, .6)));box-shadow:0 0 10px var(--theme-shadow, rgba(138, 92, 246, .5));animation:typingBounce 1.4s infinite}.oracle-typing-indicator span:nth-child(2){animation-delay:.2s}.oracle-typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,60%,to{opacity:.4;transform:translateY(0) scale(1)}30%{opacity:1;transform:translateY(-8px) scale(1.2)}}.oracle-input-form{display:flex;gap:1rem;padding:2rem 2.5rem;border-top:2px solid var(--theme-accent, rgba(148, 163, 184, .2));background:linear-gradient(to top,var(--theme-accent, rgba(148, 163, 184, .1)),transparent),radial-gradient(ellipse at 50% 100%,var(--theme-shadow, rgba(138, 92, 246, .15)),transparent 60%);position:relative}.oracle-input-form:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--theme-primary, rgba(99, 102, 241, .8)) 50%,transparent)}.oracle-input{flex:1;padding:1rem 1.5rem;background:#0006;border:2px solid var(--theme-accent, rgba(148, 163, 184, .3));border-radius:14px;color:#e8e8f0;font-size:1.0625rem;transition:all .3s cubic-bezier(.34,1.56,.64,1);box-shadow:inset 0 2px 8px #0000004d}.oracle-input::placeholder{color:#6b7395;font-weight:500}.oracle-input:focus{outline:none;border-color:var(--theme-primary, rgba(99, 102, 241, .8));box-shadow:0 0 0 4px var(--theme-shadow, rgba(138, 92, 246, .15)),0 0 30px var(--theme-shadow, rgba(138, 92, 246, .3)),inset 0 2px 8px #0000004d;background:#00000080;transform:translateY(-2px)}.oracle-input:disabled{opacity:.5;cursor:not-allowed}.oracle-send-btn{width:56px;height:56px;background:linear-gradient(135deg,var(--theme-primary, rgba(99, 102, 241, .9)) 0%,var(--theme-accent, rgba(148, 163, 184, .8)) 100%);border:none;border-radius:14px;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s cubic-bezier(.34,1.56,.64,1);flex-shrink:0;box-shadow:0 6px 20px var(--theme-shadow, rgba(138, 92, 246, .4)),0 0 30px var(--theme-shadow, rgba(138, 92, 246, .2)),inset 0 1px #ffffff4d;position:relative;overflow:hidden}.oracle-send-btn:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.2),transparent);opacity:0;transition:opacity .3s}.oracle-send-btn svg{width:24px;height:24px;position:relative;z-index:1;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.oracle-send-btn:hover:not(:disabled){transform:translateY(-4px) scale(1.05);box-shadow:0 12px 32px var(--theme-shadow, rgba(138, 92, 246, .6)),0 0 50px var(--theme-shadow, rgba(138, 92, 246, .4)),inset 0 1px #ffffff4d}.oracle-send-btn:hover:not(:disabled):before{opacity:1}.oracle-send-btn:active:not(:disabled){transform:translateY(-2px) scale(1.02)}.oracle-send-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.oracle-messages::-webkit-scrollbar{width:10px}.oracle-messages::-webkit-scrollbar-track{background:#0000004d;border-radius:5px;margin:8px 0}.oracle-messages::-webkit-scrollbar-thumb{background:linear-gradient(135deg,var(--theme-primary, rgba(99, 102, 241, .6)),var(--theme-accent, rgba(148, 163, 184, .6)));border-radius:5px;border:2px solid rgba(0,0,0,.3)}.oracle-messages::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,var(--theme-primary, rgba(99, 102, 241, .8)),var(--theme-accent, rgba(148, 163, 184, .8)))}@media(max-width:768px){.oracle-overlay{padding:0}.oracle-container{max-width:100%;max-height:100vh;height:100vh;max-height:96dvh;height:96dvh;border-radius:0;border:none}.oracle-container:before{border-radius:0}.oracle-header{padding:1.5rem;flex-shrink:0}.oracle-header h2{font-size:1.5rem}.oracle-icon{width:52px;height:52px}.oracle-icon svg{width:28px;height:28px}.oracle-messages{padding:1.5rem;gap:1.5rem;flex:1;min-height:0}.oracle-message-content{max-width:85%}.oracle-message-text{font-size:.9375rem;padding:1.25rem}.oracle-input-form{padding:1.5rem;flex-shrink:0}.oracle-input{font-size:1rem}}@media(max-width:480px){.oracle-overlay{padding:0;align-items:stretch}.oracle-container{max-height:100vh;height:100vh;max-height:100dvh;height:100dvh;border-radius:0;border:none}.oracle-header{padding:1rem;flex-shrink:0}.oracle-header h2{font-size:1.25rem}.oracle-subtitle{font-size:.875rem}.oracle-icon{width:44px;height:44px}.oracle-icon svg{width:24px;height:24px}.oracle-messages{padding:1rem;flex:1;min-height:0}.oracle-message-avatar{width:44px;height:44px}.oracle-message-avatar svg{width:24px;height:24px}.oracle-input-form{padding:1rem;gap:.75rem;flex-shrink:0}.oracle-send-btn{width:48px;height:48px}.oracle-send-btn svg{width:20px;height:20px}}.player-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;overflow:hidden;background:linear-gradient(135deg,#667eea,#764ba2);flex-shrink:0;vertical-align:middle}.player-avatar.small{width:28px;height:28px;font-size:14px}.player-avatar.medium{width:36px;height:36px;font-size:18px}.player-avatar.large{width:48px;height:48px;font-size:24px}.player-avatar.ai{background:linear-gradient(135deg,#1e3a8a,#3b82f6,#60a5fa);color:#fff;border:2px solid rgba(96,165,250,.6);box-shadow:0 0 12px #3b82f666,inset 0 1px #fff3;position:relative}.player-avatar.ai:before{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 30% 30%,rgba(147,197,253,.3),transparent 60%);pointer-events:none}.player-avatar.ai svg{width:70%;height:70%;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3));position:relative;z-index:1}.player-avatar.preset{background:#f0f0f0;border:2px solid #e0e0e0}.player-avatar.preset .avatar-emoji{font-size:1.2em;line-height:1}.player-avatar.custom{background:transparent;border:2px solid rgba(255,255,255,.3)}.player-avatar.custom img{width:100%;height:100%;object-fit:cover}.player-avatar.default{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.player-avatar.default svg{width:70%;height:70%}.player-avatar{transition:transform .2s ease}.player-avatar:hover{transform:scale(1.05)}.battlefield-dice-overlay{position:absolute;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:all;border-radius:8px}.battlefield-dice-container{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1rem;background:#14141ef2;border-radius:12px;box-shadow:0 10px 40px #000c,0 0 0 2px #ffffff1a;max-width:280px}.battlefield-die{position:relative;width:100px;height:100px;display:flex;align-items:center;justify-content:center;perspective:800px;transform-style:preserve-3d;filter:drop-shadow(0 8px 20px rgba(0,0,0,.5))}.battlefield-die.d20 .battlefield-die-face{background:linear-gradient(135deg,#3b82f6,#1e40af);border:3px solid rgba(59,130,246,.8);box-shadow:0 8px 24px #3b82f699,inset 0 -3px 6px #0000004d,inset 0 3px 6px #ffffff4d;transform:rotateX(12deg) rotateY(-12deg)}.battlefield-die.d6 .battlefield-die-face{background:linear-gradient(135deg,#10b981,#047857);border:3px solid rgba(16,185,129,.8);box-shadow:0 8px 24px #10b98199,inset 0 -3px 6px #0000004d,inset 0 3px 6px #ffffff4d;transform:rotateX(12deg) rotateY(-12deg)}.battlefield-die.planar .battlefield-die-face{background:linear-gradient(135deg,#8b5cf6,#6d28d9);border:3px solid rgba(139,92,246,.8);box-shadow:0 8px 24px #8b5cf699,inset 0 -3px 6px #0000004d,inset 0 3px 6px #ffffff4d;transform:rotateX(12deg) rotateY(-12deg)}.battlefield-die-face{width:100%;height:100%;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:2.5rem;font-weight:700;color:#fff;text-shadow:0 2px 6px rgba(0,0,0,.5);transition:all .3s ease}.battlefield-die.rolling .battlefield-die-face{filter:blur(2px)}.battlefield-die.nat20 .battlefield-die-face{background:linear-gradient(135deg,#fbbf24,#f59e0b);border-color:#fbbf24;box-shadow:0 0 24px #fbbf24e6,0 6px 20px #fbbf24b3,inset 0 2px 4px #ffffff4d;animation:battlefield-nat20-glow 1.5s ease-in-out infinite}.battlefield-die.nat1 .battlefield-die-face{background:linear-gradient(135deg,#ef4444,#b91c1c);border-color:#ef4444;box-shadow:0 0 24px #ef4444e6,0 6px 20px #ef4444b3,inset 0 2px 4px #ffffff4d;animation:battlefield-nat1-shake .5s ease-in-out}@keyframes battlefield-nat20-glow{0%,to{box-shadow:0 0 24px #fbbf24e6,0 6px 20px #fbbf24b3}50%{box-shadow:0 0 36px #fbbf24,0 8px 28px #fbbf24e6}}@keyframes battlefield-nat1-shake{0%,to{transform:rotateX(12deg) rotateY(-12deg) translate(0)}25%{transform:rotateX(12deg) rotateY(-12deg) translate(-4px)}75%{transform:rotateX(12deg) rotateY(-12deg) translate(4px)}}.battlefield-roll-description{text-align:center;color:#fff;font-size:.875rem;line-height:1.4}.battlefield-roll-result{margin:0;font-weight:600;font-size:1rem;color:#fffffff2}.battlefield-critical-text{margin-top:.5rem;font-size:.875rem;font-weight:700;padding:.25rem .75rem;border-radius:6px}.battlefield-critical-text.nat20-text{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#1f2937}.battlefield-critical-text.nat1-text{background:linear-gradient(135deg,#ef4444,#b91c1c);color:#fff}@media(max-width:640px){.battlefield-dice-container{padding:.75rem;gap:.5rem;max-width:200px}.battlefield-die{width:80px;height:80px}.battlefield-die-face{font-size:2rem;border-radius:12px}.battlefield-roll-result{font-size:.875rem}.battlefield-critical-text{font-size:.75rem;padding:.25rem .5rem}}.view-settings-backdrop{position:fixed;inset:0;background:#0003;z-index:1100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);cursor:pointer;touch-action:none;overscroll-behavior:contain}.view-settings-sidebar{position:fixed;top:50px;right:0;bottom:0;width:min(400px,90vw);height:100%;max-height:100dvh;background:linear-gradient(135deg,var(--theme-bg-from, rgba(17, 24, 39, .98)),var(--theme-bg-to, rgba(31, 41, 55, .98)));border-left:2px solid var(--theme-border, rgba(148, 163, 184, .3));box-shadow:-4px 0 24px #00000080;z-index:2000;display:flex;flex-direction:column;overflow:hidden;touch-action:pan-y;overscroll-behavior:contain;transform:translateZ(0);backface-visibility:hidden}.view-settings-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--theme-border, rgba(148, 163, 184, .2));background:var(--theme-header-bg, rgba(0, 0, 0, .2));flex-shrink:0}.view-settings-header h2{font-size:1.25rem;font-weight:700;color:var(--theme-text, #f8fafc);margin:0}.view-settings-close{background:transparent;border:none;color:var(--theme-text-muted, #94a3b8);font-size:2rem;line-height:1;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.view-settings-close:hover{background:var(--theme-hover-bg, rgba(255, 255, 255, .1));color:var(--theme-text, #f8fafc)}.view-settings-content{flex:1;padding:1rem 1.5rem 2rem;overflow-y:auto;overflow-x:hidden;min-height:0;max-height:100%;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scroll-behavior:smooth}.view-settings-content::-webkit-scrollbar{width:8px}.view-settings-content::-webkit-scrollbar-track{background:#94a3b81a;border-radius:4px}.view-settings-content::-webkit-scrollbar-thumb{background:#fbbf244d;border-radius:4px}.view-settings-content::-webkit-scrollbar-thumb:hover{background:#fbbf2480}.view-setting-group{margin-bottom:1.25rem}.view-setting-label{display:flex;justify-content:space-between;align-items:center;font-size:.9rem;font-weight:600;color:var(--theme-text, #f8fafc);margin-bottom:.5rem}.view-setting-value{font-family:Monaco,Courier New,monospace;font-size:.85rem;color:var(--theme-accent, #fbbf24);background:var(--theme-accent-bg, rgba(251, 191, 36, .1));padding:.2rem .4rem;border-radius:4px}.view-setting-slider{width:100%;height:8px;border-radius:4px;background:var(--theme-slider-track, rgba(148, 163, 184, .2));outline:none;-webkit-appearance:none;appearance:none;cursor:pointer}.view-setting-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:linear-gradient(135deg,#fbbf24,#f59e0b);cursor:pointer;box-shadow:0 2px 8px #fbbf2466;transition:all .2s}.view-setting-slider::-webkit-slider-thumb:hover{transform:scale(1.1);box-shadow:0 4px 12px #fbbf2499}.view-setting-slider::-webkit-slider-thumb:active{transform:scale(.95)}.view-setting-slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:linear-gradient(135deg,#fbbf24,#f59e0b);cursor:pointer;border:none;box-shadow:0 2px 8px #fbbf2466;transition:all .2s}.view-setting-slider::-moz-range-thumb:hover{transform:scale(1.1);box-shadow:0 4px 12px #fbbf2499}.view-setting-slider::-moz-range-thumb:active{transform:scale(.95)}.view-setting-hint{margin-top:.35rem;font-size:.8rem;color:var(--theme-text-muted, #94a3b8);line-height:1.3}.view-setting-actions{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--theme-border, rgba(148, 163, 184, .2))}.view-setting-reset{width:100%;padding:.6rem 1.25rem;background:var(--theme-button-bg, rgba(148, 163, 184, .1));border:1px solid var(--theme-border, rgba(148, 163, 184, .3));border-radius:8px;color:var(--theme-text, #f8fafc);font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.view-setting-reset:hover{background:var(--theme-button-hover-bg, rgba(148, 163, 184, .2));border-color:var(--theme-border-hover, rgba(148, 163, 184, .5))}.view-setting-reset:active{transform:scale(.98)}.view-setting-saving{margin-top:1rem;text-align:center;font-size:.875rem;color:#fbbf24;font-weight:500}.view-setting-checkbox{width:20px;height:20px;cursor:pointer;accent-color:#fbbf24}.view-settings-footer{padding:1rem 1.5rem;border-top:1px solid rgba(148,163,184,.2);background:#0003;flex-shrink:0}.view-settings-note{margin:0;font-size:.8rem;color:#94a3b8;line-height:1.4}@media(max-width:768px){.view-settings-sidebar{width:100vw;max-height:100dvh}.view-settings-content{padding:.75rem 1rem 3rem}.view-settings-header,.view-settings-footer{padding:.75rem 1rem}}@media(max-width:768px)and (max-height:500px){.view-settings-header,.view-settings-content{padding:.5rem 1rem}.view-setting-group{margin-bottom:.75rem}.view-settings-footer{padding:.5rem 1rem}}.view-settings-sidebar~* .sidebar-toggle,body:has(.view-settings-sidebar) .sidebar-toggle{opacity:0;pointer-events:none;transition:opacity .2s ease}.orb-message{max-width:400px;filter:drop-shadow(0 8px 24px rgba(0,0,0,.4))}.orb-message-content{background:linear-gradient(135deg,var(--accent-glow, rgba(56, 189, 248, .3)) 0%,var(--accent, #38bdf8) 50%,var(--accent-dark, #0ea5e9) 100%);border:2px solid var(--accent, #38bdf8);border-radius:16px;padding:16px 20px;position:relative;box-shadow:0 0 20px var(--accent-glow, rgba(56, 189, 248, .5)),inset 0 1px #fff3}.orb-message-text{color:#fff;font-size:15px;line-height:1.5;text-shadow:0 1px 2px rgba(0,0,0,.3);word-wrap:break-word}.orb-message-dismiss{position:absolute;top:8px;right:8px;width:24px;height:24px;border-radius:50%;background:#0000004d;border:1px solid rgba(255,255,255,.2);color:#fff;font-size:18px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;padding:0}.orb-message-dismiss:hover{background:#00000080;transform:scale(1.1)}.orb-message-arrow{position:absolute;width:0;height:0;border-style:solid}.orb-message-arrow-right{left:-10px;top:50%;transform:translateY(-50%);border-width:10px 10px 10px 0;border-color:transparent var(--accent, #38bdf8) transparent transparent}.orb-message-arrow-left{right:-10px;top:50%;transform:translateY(-50%);border-width:10px 0 10px 10px;border-color:transparent transparent transparent var(--accent, #38bdf8)}.orb-message-arrow-bottom{top:-10px;left:50%;transform:translate(-50%);border-width:0 10px 10px 10px;border-color:transparent transparent var(--accent, #38bdf8) transparent}.orb-message-arrow-top{bottom:-10px;left:50%;transform:translate(-50%);border-width:10px 10px 0 10px;border-color:var(--accent, #38bdf8) transparent transparent transparent}@keyframes orb-message-pulse{0%,to{box-shadow:0 0 20px var(--accent-glow, rgba(56, 189, 248, .5)),inset 0 1px #fff3}50%{box-shadow:0 0 30px var(--accent-glow, rgba(56, 189, 248, .5)),0 0 40px var(--accent-shadow, rgba(56, 189, 248, .3)),inset 0 1px #fff3}}.orb-message-content{animation:orb-message-pulse 2s ease-in-out infinite}@media(max-width:768px){.orb-message{max-width:300px}.orb-message-content{padding:12px 16px}.orb-message-text{font-size:14px}}.orb-chat-backdrop{position:fixed;inset:0;background:#0000004d;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);z-index:100001;cursor:pointer}.orb-chat-bubble{position:fixed;width:320px;max-height:450px;background:linear-gradient(145deg,var(--theme-bg-from, rgba(30, 41, 59, .95)),var(--theme-bg-to, rgba(15, 23, 42, .95)));-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--theme-accent, rgba(148, 163, 184, .3));border-radius:16px;box-shadow:0 20px 60px #0006,0 0 40px var(--theme-shadow, rgba(138, 92, 246, .2));display:flex;flex-direction:column;z-index:100002;overflow:hidden}.orb-chat-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--theme-bg-from, rgba(30, 41, 59, .8));border-bottom:1px solid var(--theme-accent, rgba(148, 163, 184, .2))}.orb-chat-title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--theme-primary, #93C5FD)}.orb-chat-icon{font-size:18px}.orb-chat-actions{display:flex;gap:8px}.orb-chat-icon-btn,.orb-chat-expand-btn,.orb-chat-close-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--theme-accent, rgba(148, 163, 184, .1));border:1px solid var(--theme-accent, rgba(148, 163, 184, .3));border-radius:6px;color:#e2e8f0cc;cursor:pointer;transition:all .2s ease;font-size:20px;line-height:1}.orb-chat-icon-btn:hover,.orb-chat-expand-btn:hover,.orb-chat-close-btn:hover{background:var(--theme-accent, rgba(148, 163, 184, .2));color:#fff;border-color:var(--theme-primary, rgba(99, 102, 241, .6))}.orb-chat-api-key-section{padding:12px 16px;background:var(--theme-bg-from, rgba(30, 41, 59, .6));border-bottom:1px solid var(--theme-accent, rgba(148, 163, 184, .2));display:flex;gap:8px;animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.orb-chat-api-key-input{flex:1;background:var(--theme-bg-to, rgba(15, 23, 42, .8));border:1px solid var(--theme-accent, rgba(148, 163, 184, .3));border-radius:6px;padding:6px 10px;color:#e2e8f0;font-size:12px;outline:none}.orb-chat-api-key-input:focus{border-color:var(--theme-primary, #60A5FA)}.orb-chat-api-key-save{background:var(--theme-primary, #60A5FA);border:none;border-radius:6px;padding:6px 12px;color:#0f172a;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease}.orb-chat-api-key-save:hover:not(:disabled){transform:scale(1.05);box-shadow:0 0 12px var(--theme-shadow, rgba(138, 92, 246, .5))}.orb-chat-api-key-save:disabled{opacity:.5;cursor:not-allowed}.orb-chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}.orb-chat-messages::-webkit-scrollbar{width:6px}.orb-chat-messages::-webkit-scrollbar-track{background:var(--theme-bg-to, rgba(15, 23, 42, .5))}.orb-chat-messages::-webkit-scrollbar-thumb{background:var(--theme-accent, rgba(148, 163, 184, .4));border-radius:3px}.orb-chat-messages::-webkit-scrollbar-thumb:hover{background:var(--theme-primary, rgba(99, 102, 241, .6))}.orb-chat-empty{text-align:center;color:#e2e8f099;font-size:13px;padding:20px}.orb-chat-message{display:flex;animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.orb-chat-message.user{justify-content:flex-end}.orb-chat-message.ai{justify-content:flex-start}.orb-chat-message-bubble{max-width:75%;padding:10px 14px;border-radius:12px;font-size:13px;line-height:1.5;word-wrap:break-word}.orb-chat-message-bubble p{margin:0 0 8px}.orb-chat-message-bubble p:last-child{margin-bottom:0}.orb-chat-message.user .orb-chat-message-bubble{background:var(--theme-primary, #60A5FA);color:#0f172a;border-bottom-right-radius:4px}.orb-chat-message.ai .orb-chat-message-bubble{background:var(--theme-bg-from, rgba(30, 41, 59, .8));border:1px solid var(--theme-accent, rgba(148, 163, 184, .3));color:#e2e8f0e6;border-bottom-left-radius:4px}.orb-chat-message-bubble.typing{padding:14px 18px;display:flex;gap:6px}.orb-chat-message-bubble.typing span{width:6px;height:6px;background:var(--theme-primary, #60A5FA);border-radius:50%;animation:typing 1.4s infinite}.orb-chat-message-bubble.typing span:nth-child(2){animation-delay:.2s}.orb-chat-message-bubble.typing span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.7}30%{transform:translateY(-8px);opacity:1}}.orb-chat-input-container{display:flex;gap:8px;padding:12px;background:var(--theme-bg-from, rgba(30, 41, 59, .6));border-top:1px solid var(--theme-accent, rgba(148, 163, 184, .2))}.orb-chat-input{flex:1;background:var(--theme-bg-to, rgba(15, 23, 42, .8));border:1px solid var(--theme-accent, rgba(148, 163, 184, .3));border-radius:8px;padding:8px 12px;color:#e2e8f0;font-size:13px;outline:none;transition:border-color .2s ease}.orb-chat-input:focus{border-color:var(--theme-primary, #60A5FA)}.orb-chat-input::placeholder{color:#e2e8f066}.orb-chat-voice-btn,.orb-chat-send-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--theme-accent, rgba(148, 163, 184, .1));border:1px solid var(--theme-accent, rgba(148, 163, 184, .3));border-radius:8px;color:#e2e8f0cc;cursor:pointer;transition:all .2s ease}.orb-chat-voice-btn:hover,.orb-chat-send-btn:hover{background:var(--theme-accent, rgba(148, 163, 184, .2));border-color:var(--theme-primary, rgba(99, 102, 241, .5))}.orb-chat-voice-btn.listening{background:var(--theme-primary, #60A5FA);color:#0f172a;animation:pulse 1.5s infinite}.orb-chat-send-btn:disabled{opacity:.4;cursor:not-allowed}.orb-chat-send-btn:not(:disabled):hover{background:var(--theme-primary, #60A5FA);color:#0f172a}.mana-pool-display{display:flex;flex-direction:column;gap:4px;padding:8px 12px;background:#0000004d;border-radius:6px;border:1px solid rgba(255,255,255,.1)}.mana-pool-display.compact{padding:4px 8px;gap:2px}.mana-pool-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#ffffffb3;margin-bottom:2px}.mana-pool-icons{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.mana-pool-display.compact .mana-pool-icons{gap:4px}.mana-group{display:flex;align-items:center;gap:4px;opacity:1;transition:opacity .2s ease}.mana-group.empty{opacity:.3}.mana-group.has-mana{animation:manaAdded .3s ease}@keyframes manaAdded{0%{transform:scale(1)}50%{transform:scale(1.15)}to{transform:scale(1)}}.mana-symbols{display:flex;gap:2px;align-items:center}.mana-symbol{width:18px;height:18px;display:block;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3));transition:opacity .2s ease}.mana-symbol.mana-actual{opacity:1}.mana-symbol.mana-pending{opacity:.5;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3)) brightness(1.3);animation:pendingPulse 2s ease-in-out infinite}@keyframes pendingPulse{0%,to{opacity:.5}50%{opacity:.7}}.mana-pool-display.compact .mana-symbol{width:14px;height:14px}.mana-count{font-size:13px;font-weight:600;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.8);min-width:16px;text-align:center;display:flex;gap:4px;align-items:center}.count-actual{color:#fff}.count-pending{color:gold;font-size:.9em;opacity:.8}.mana-pool-display.compact .mana-count{font-size:11px;min-width:14px}.mana-group[data-color=W] .mana-count{color:#f0f0e0}.mana-group[data-color=U] .mana-count{color:#aae0ff}.mana-group[data-color=B] .mana-count{color:#d0d0d0}.mana-group[data-color=R] .mana-count{color:#ffb0b0}.mana-group[data-color=G] .mana-count{color:#b0ffb0}.mana-group[data-color=C] .mana-count,.mana-group[data-color=generic] .mana-count{color:#e0e0e0}.mana-pool-conditional{margin-top:2px;padding-top:4px;border-top:1px solid rgba(255,255,255,.1)}.conditional-label{font-size:10px;color:#fff9;font-style:italic}.mana-pool-display.empty-pool{opacity:.6}.empty-pool-message{font-size:11px;color:#ffffff80;font-style:italic;padding:2px 0}@media(max-width:768px){.mana-pool-display{padding:6px 10px}.mana-symbol{width:16px;height:16px}.mana-count{font-size:12px}}.exit-confirmation-modal{max-width:500px;min-width:400px}.exit-modal-content{padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.exit-modal-content p{margin:0;font-size:1rem;line-height:1.6;color:var(--text-primary, #e0e0e0)}.exit-modal-warning{padding:.875rem 1rem;background:#ff98001a;border:1px solid rgba(255,152,0,.3);border-radius:.375rem;font-size:.9375rem;font-weight:500;color:#ffb74d;text-align:center}.exit-modal-actions{display:flex;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid rgba(255,255,255,.1);justify-content:flex-end}.exit-modal-actions button{min-width:120px}@media(max-width:600px){.exit-confirmation-modal{min-width:90vw;max-width:90vw}.exit-modal-actions{flex-direction:column-reverse}.exit-modal-actions button{width:100%}}.timeline-dock-toggle{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#8b5cf626;border:2px solid rgba(139,92,246,.4);border-radius:10px;color:#c4b5fd;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.34,1.56,.64,1);width:100%;margin-top:1rem}.timeline-dock-toggle:hover{background:#8b5cf640;border-color:#8b5cf699;transform:translateY(-2px);box-shadow:0 4px 12px #8b5cf64d}.timeline-dock-toggle.active{background:#8b5cf64d;border-color:#8b5cf6b3;box-shadow:0 0 16px #8b5cf666}.timeline-dock-toggle svg{width:20px;height:20px;flex-shrink:0}.timeline-dock-label{flex:1;text-align:left}.timeline-dock-container{position:fixed;bottom:0;left:0;right:0;z-index:2000;background:linear-gradient(to top,#0f172afa,#080f1ef2);border-top:2px solid rgba(139,92,246,.5);box-shadow:0 -10px 40px #0009,0 -2px 20px #8b5cf64d,inset 0 1px #ffffff1a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.timeline-dock-advice{padding:.75rem 1rem;border-bottom:1px solid rgba(139,92,246,.3);background:linear-gradient(to bottom,rgba(139,92,246,.1),transparent);overflow:hidden}.timeline-dock-advice-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.375rem}.timeline-dock-advice-list li{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#8b5cf626;border-left:3px solid rgba(139,92,246,.6);border-radius:6px;font-size:.8125rem;line-height:1.4;color:#e0e7ff}.timeline-dock-advice-list li[data-severity=warning]{background:#fbbf2426;border-left-color:#fbbf2499}.timeline-dock-advice-list li[data-severity=error]{background:#ef444426;border-left-color:#ef444499}.advice-icon{font-size:1rem;flex-shrink:0}.timeline-dock-advice-empty{margin:0;padding:.75rem;text-align:center;color:#94a3b8;font-size:.8125rem;font-style:italic}.timeline-dock-main{padding:.75rem 1rem}.timeline-dock-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.timeline-dock-info{display:flex;align-items:center;gap:.75rem;flex:1;overflow:hidden}.timeline-dock-step{font-size:.8125rem;font-weight:700;color:#8b5cf6;white-space:nowrap;flex-shrink:0}.timeline-dock-description{font-size:.875rem;color:#e0e7ff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.timeline-dock-time{font-size:.75rem;color:#94a3b8;white-space:nowrap;flex-shrink:0}.timeline-dock-actions{display:flex;gap:.5rem;flex-shrink:0}.timeline-dock-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:#8b5cf633;border:2px solid rgba(139,92,246,.4);border-radius:8px;color:#c4b5fd;cursor:pointer;transition:all .2s cubic-bezier(.34,1.56,.64,1)}.timeline-dock-button:hover{background:#8b5cf64d;border-color:#8b5cf699;transform:scale(1.1)}.timeline-dock-button.active{background:#8b5cf666;border-color:#8b5cf6cc;box-shadow:0 0 12px #8b5cf680}.timeline-dock-button svg{width:16px;height:16px}.timeline-dock-oracle{background:linear-gradient(135deg,#8b5cf64d,#a78bfa4d);border-color:#8b5cf680;animation:crystalPulse 3s ease-in-out infinite}.timeline-dock-oracle:hover{background:linear-gradient(135deg,#8b5cf680,#a78bfa80);border-color:#8b5cf6cc;transform:scale(1.15);animation:crystalPulseHover 1.5s ease-in-out infinite}@keyframes crystalPulse{0%,to{box-shadow:0 0 8px #8b5cf64d}50%{box-shadow:0 0 16px #8b5cf699}}@keyframes crystalPulseHover{0%,to{box-shadow:0 0 16px #8b5cf699}50%{box-shadow:0 0 24px #8b5cf6e6}}.timeline-dock-close{background:#ef444433;border-color:#ef444466}.timeline-dock-close:hover{background:#ef44444d;border-color:#ef444499}.timeline-dock-scrubber{display:flex;align-items:center;gap:.5rem}.timeline-dock-control{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:#8b5cf633;border:2px solid rgba(139,92,246,.4);border-radius:50%;color:#c4b5fd;cursor:pointer;transition:all .3s cubic-bezier(.34,1.56,.64,1);flex-shrink:0}.timeline-dock-control:hover:not(:disabled){background:#8b5cf666;border-color:#8b5cf6b3;transform:scale(1.15);box-shadow:0 0 20px #8b5cf680}.timeline-dock-control:disabled{opacity:.3;cursor:not-allowed}.timeline-dock-control svg{width:20px;height:20px}.timeline-dock-play{width:44px;height:44px;background:linear-gradient(135deg,#8b5cf64d,#a78bfa4d);border-width:3px}.timeline-dock-play:hover:not(:disabled){transform:scale(1.2);box-shadow:0 0 30px #8b5cf699}.timeline-dock-play.active{background:linear-gradient(135deg,#8b5cf680,#a78bfa80);border-color:#8b5cf6e6;animation:playPulse 2s ease-in-out infinite}@keyframes playPulse{0%,to{box-shadow:0 0 20px #8b5cf666}50%{box-shadow:0 0 40px #8b5cf6cc}}.timeline-dock-slider{position:relative;flex:1;height:36px;display:flex;align-items:center}.timeline-dock-slider input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:3px;outline:none;cursor:pointer;position:relative;z-index:2;background:transparent}.timeline-dock-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:linear-gradient(135deg,#8b5cf6,#a78bfa);border:2px solid rgba(255,255,255,.9);cursor:pointer;box-shadow:0 2px 8px #0006,0 0 20px #8b5cf699;transition:all .2s cubic-bezier(.34,1.56,.64,1)}.timeline-dock-slider input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.3);box-shadow:0 4px 12px #00000080,0 0 30px #8b5cf6cc}.timeline-dock-slider input[type=range]::-webkit-slider-thumb:active{transform:scale(1.4);box-shadow:0 6px 16px #0009,0 0 40px #8b5cf6}.timeline-dock-slider input[type=range]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:linear-gradient(135deg,#8b5cf6,#a78bfa);border:2px solid rgba(255,255,255,.9);cursor:pointer;box-shadow:0 2px 8px #0006,0 0 20px #8b5cf699;transition:all .2s cubic-bezier(.34,1.56,.64,1)}.timeline-dock-slider input[type=range]::-moz-range-thumb:hover{transform:scale(1.3);box-shadow:0 4px 12px #00000080,0 0 30px #8b5cf6cc}.timeline-dock-slider input[type=range]::-moz-range-thumb:active{transform:scale(1.4)}.timeline-dock-slider input[type=range]:disabled{opacity:.4;cursor:not-allowed}.timeline-dock-markers{position:absolute;top:50%;left:0;right:0;height:6px;transform:translateY(-50%);pointer-events:none;z-index:1}.timeline-marker{position:absolute;width:3px;height:6px;background:#fff3;border-radius:1.5px;transform:translate(-50%);transition:all .3s ease}.timeline-marker.passed{background:#8b5cf666;height:8px}.timeline-marker.active{background:#8b5cf6;height:10px;box-shadow:0 0 8px #8b5cf6cc}@media(max-width:768px){.timeline-dock-main{padding:.5rem .75rem}.timeline-dock-header{flex-direction:row;align-items:center;gap:.5rem;margin-bottom:.5rem}.timeline-dock-info{flex-direction:row;align-items:center;gap:.5rem;width:auto}.timeline-dock-step{font-size:.75rem}.timeline-dock-description{font-size:.8125rem;width:auto}.timeline-dock-time{font-size:.6875rem}.timeline-dock-actions{gap:.375rem}.timeline-dock-button{width:28px;height:28px}.timeline-dock-button svg{width:14px;height:14px}.timeline-dock-scrubber{gap:.5rem}.timeline-dock-control{width:32px;height:32px}.timeline-dock-control svg{width:16px;height:16px}.timeline-dock-play{width:36px;height:36px}.timeline-dock-play svg{width:18px;height:18px}.timeline-dock-advice{padding:.5rem .75rem}.timeline-dock-advice-list li{font-size:.75rem;padding:.375rem .5rem}}@media(max-width:480px){.timeline-dock-main{padding:.375rem .5rem}.timeline-dock-header{gap:.375rem;margin-bottom:.375rem}.timeline-dock-info{gap:.375rem}.timeline-dock-step{font-size:.6875rem}.timeline-dock-description{font-size:.75rem}.timeline-dock-time{font-size:.625rem}.timeline-dock-actions{gap:.25rem}.timeline-dock-button{width:24px;height:24px}.timeline-dock-button svg{width:12px;height:12px}.timeline-dock-scrubber{gap:.375rem}.timeline-dock-control{width:28px;height:28px}.timeline-dock-control svg{width:14px;height:14px}.timeline-dock-play{width:32px;height:32px}.timeline-dock-play svg{width:16px;height:16px}.timeline-dock-slider,.timeline-dock-slider input[type=range]{height:32px}.timeline-dock-slider input[type=range]::-webkit-slider-track{height:5px}.timeline-dock-slider input[type=range]::-moz-range-track{height:5px}.timeline-dock-slider input[type=range]::-webkit-slider-thumb{width:14px;height:14px;border-width:2px}.timeline-dock-slider input[type=range]::-moz-range-thumb{width:14px;height:14px;border-width:2px}.timeline-dock-advice{padding:.375rem .5rem}.timeline-dock-advice-list li{font-size:.6875rem;padding:.25rem .375rem}.advice-icon{font-size:.875rem}}.splash-card-front .splash-logo-wrap{position:absolute;top:40%;left:50%;transform:translate(-50%) translateY(-50%) scale(2);z-index:5}.splash-screen{justify-content:flex-start!important;padding-top:clamp(80px,12vh,120px)!important}@media(max-width:768px){.splash-screen{padding-top:clamp(100px,15vh,140px)!important}}.splash-card-front .splash-actions{position:absolute;bottom:20%;left:0;right:0;margin-top:0;z-index:10}.auth-card.splash-card:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:5;border:2px solid transparent;-webkit-mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.6;filter:drop-shadow(0 0 8px rgba(56,189,248,.4))}.auth-card.splash-card:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:6}.auth-form-container{width:100%;display:flex;flex-direction:column;gap:1rem}.auth-form{display:flex;flex-direction:column;gap:.75rem}.auth-input{padding:clamp(8px,1.2vw,12px) clamp(10px,1.5vw,14px);font-size:clamp(.85rem,1.4vw,1rem);background:#fff9;border:1px solid rgba(139,111,71,.4);border-radius:6px;color:#1a120a;transition:all .2s ease;box-shadow:inset 0 1px 3px #00000026}.auth-input::placeholder{color:#1a120a66}.auth-input:focus{outline:none;border-color:#d4af37b3;background:#fffc;box-shadow:inset 0 1px 3px #00000026,0 0 0 2px #d4af374d}.auth-input:disabled{opacity:.5;cursor:not-allowed}.auth-button{padding:clamp(8px,1.2vw,12px) clamp(12px,1.8vw,16px);font-size:clamp(.85rem,1.4vw,1rem);font-weight:600;border-radius:6px;cursor:pointer;transition:all .2s ease;border:none;display:flex;align-items:center;justify-content:center;gap:.5rem}.auth-button:disabled{opacity:.5;cursor:not-allowed}.auth-button-primary{background:linear-gradient(135deg,#d4af37f2,#8b6f47f2);color:#1a120a;font-weight:700;letter-spacing:.02em;border:1px solid rgba(139,111,71,.5);box-shadow:0 2px 6px #00000040,inset 0 1px 2px #ffffff4d}.auth-button-primary:hover:not(:disabled){background:linear-gradient(135deg,#d4af37,#8b6f47);box-shadow:0 4px 10px #00000059,inset 0 1px 2px #fff6;transform:translateY(-1px)}.auth-button-google{background:#fffffff2;color:#1a120a;border:1px solid rgba(139,111,71,.3);box-shadow:0 2px 6px #0003}.auth-button-google:hover:not(:disabled){background:#fff;box-shadow:0 4px 10px #0000004d;transform:translateY(-1px)}.google-icon{width:20px;height:20px}.auth-link-button{background:none;border:none;color:#8b6f47e6;padding:.4rem;cursor:pointer;font-size:clamp(.75rem,1.2vw,.85rem);text-decoration:none;transition:color .2s ease}.auth-link-button:hover:not(:disabled){color:#d4af37;text-decoration:underline}.auth-link-button:disabled{opacity:.5;cursor:not-allowed}.auth-divider{display:flex;align-items:center;gap:.75rem;margin:.25rem 0;color:#1a120a80;font-size:clamp(.75rem,1.2vw,.85rem)}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:linear-gradient(to right,transparent,rgba(139,111,71,.4),transparent)}.auth-error{padding:clamp(8px,1.2vw,12px) clamp(10px,1.5vw,14px);background:#b4530926;border:1px solid rgba(180,83,9,.4);border-radius:6px;color:#7f1d1d;font-size:clamp(.75rem,1.2vw,.85rem);text-align:center;box-shadow:inset 0 1px 2px #0000001a}.notification-bell-container{position:relative;display:flex;align-items:center;justify-content:center}.notification-bell{position:relative;background:transparent;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:background-color .2s ease;color:var(--text-primary, #e0e0e0)}.notification-bell:hover{background-color:var(--bg-hover, rgba(255, 255, 255, .05))}.notification-bell:disabled{cursor:not-allowed;opacity:.5}.notification-bell.active{background-color:var(--bg-active, rgba(255, 255, 255, .1))}.bell-icon{width:24px;height:24px;color:inherit}.notification-badge{position:absolute;top:2px;right:2px;background:linear-gradient(135deg,#f44,#c00);color:#fff;font-size:10px;font-weight:700;min-width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center;padding:0 4px;box-shadow:0 2px 4px #0000004d,0 0 0 2px var(--bg-primary, #1a1a1a);line-height:1}.notification-pulse{position:absolute;top:2px;right:2px;width:18px;height:18px;border-radius:50%;background:#f44;pointer-events:none}@media(prefers-color-scheme:dark){.notification-bell{color:#e0e0e0}.notification-bell:hover{background-color:#ffffff14}.notification-bell.active{background-color:#ffffff1f}}@media(prefers-color-scheme:light){.notification-bell{color:#333}.notification-bell:hover{background-color:#0000000d}.notification-bell.active{background-color:#0000001a}.notification-badge{box-shadow:0 2px 4px #0000004d,0 0 0 2px #fff}}.notification-bell:focus-visible{outline:2px solid var(--accent-primary, #4a9eff);outline-offset:2px}.notification-bell:active{transform:scale(.95)}.notification-panel-backdrop{position:fixed;inset:0;z-index:9998;background:transparent}.notification-panel{position:absolute;top:calc(100% + 8px);right:0;width:400px;max-width:calc(100vw - 32px);max-height:600px;background:var(--bg-secondary, #242424);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:12px;box-shadow:0 8px 24px #0006,0 0 0 1px #ffffff0d;z-index:9999;display:flex;flex-direction:column;overflow:hidden}@media(max-width:480px){.notification-panel{position:fixed;top:50%;left:50%;right:auto;transform:translate(-50%,-50%);width:calc(100vw - 32px);max-height:calc(100vh - 100px)}.notification-panel-backdrop{background:#00000080}}.notification-panel-header{padding:16px 20px;border-bottom:1px solid var(--border-color, rgba(255, 255, 255, .1));display:flex;align-items:center;justify-content:space-between;background:var(--bg-tertiary, #2a2a2a)}.notification-panel-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text-primary, #e0e0e0)}.mark-all-read-button{padding:6px 12px;background:transparent;border:1px solid var(--accent-primary, #4a9eff);color:var(--accent-primary, #4a9eff);border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.mark-all-read-button:hover{background:var(--accent-primary, #4a9eff);color:#fff}.notification-panel-content{flex:1;overflow-y:auto;min-height:200px}.notification-panel-content::-webkit-scrollbar{width:8px}.notification-panel-content::-webkit-scrollbar-track{background:transparent}.notification-panel-content::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.notification-panel-content::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.notification-panel-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-secondary, #999)}.spinner{width:32px;height:32px;border:3px solid rgba(255,255,255,.1);border-top-color:var(--accent-primary, #4a9eff);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:12px}.notification-panel-error{padding:40px 20px;text-align:center;color:var(--error-color, #ff4444)}.notification-panel-error p{margin:0 0 8px;font-weight:500}.notification-panel-error small{color:var(--text-secondary, #999)}.notification-panel-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:var(--text-secondary, #999)}.notification-panel-empty svg{margin-bottom:16px;opacity:.4}.notification-panel-empty h4{margin:0 0 8px;font-size:16px;font-weight:600;color:var(--text-primary, #e0e0e0)}.notification-panel-empty p{margin:0;font-size:14px}.notification-groups{padding:8px 0}.notification-group{margin-bottom:4px}.notification-group-title{padding:12px 20px 8px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary, #999)}.notification-list{display:flex;flex-direction:column}.notification-item{display:flex;align-items:flex-start;gap:12px;padding:12px 20px;cursor:pointer;transition:background-color .2s ease;border-left:3px solid transparent;position:relative}.notification-item:hover{background-color:#ffffff08}.notification-item.unread{background-color:#4a9eff0d;border-left-color:var(--accent-primary, #4a9eff)}.notification-item.new{animation:slideIn .3s ease}@keyframes slideIn{0%{transform:translate(-20px);opacity:0}to{transform:translate(0);opacity:1}}.notification-icon{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border-radius:8px;font-size:18px}.notification-content{flex:1;min-width:0}.notification-title{font-size:14px;font-weight:600;color:var(--text-primary, #e0e0e0);margin-bottom:4px;line-height:1.4}.notification-message{font-size:13px;color:var(--text-secondary, #999);line-height:1.5;margin-bottom:4px;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notification-time{font-size:12px;color:var(--text-tertiary, #666)}.notification-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.unread-dot{width:8px;height:8px;border-radius:50%;background:var(--accent-primary, #4a9eff)}.dismiss-button{padding:4px;background:transparent;border:none;color:var(--text-tertiary, #666);cursor:pointer;border-radius:4px;transition:all .2s ease;opacity:0}.notification-item:hover .dismiss-button{opacity:1}.dismiss-button:hover{background:#ffffff1a;color:var(--text-secondary, #999)}.notification-panel-footer{padding:12px 20px;border-top:1px solid var(--border-color, rgba(255, 255, 255, .1));background:var(--bg-tertiary, #2a2a2a)}.view-all-button{width:100%;padding:10px;background:transparent;border:none;color:var(--accent-primary, #4a9eff);font-size:14px;font-weight:500;cursor:pointer;border-radius:6px;transition:background-color .2s ease}.view-all-button:hover{background:#4a9eff1a}@media(prefers-color-scheme:light){.notification-panel{background:#fff;border-color:#0000001a;box-shadow:0 8px 24px #00000026,0 0 0 1px #0000000d}.notification-panel-header{background:#f8f8f8;border-bottom-color:#0000001a}.notification-panel-header h3{color:#333}.notification-item:hover{background-color:#00000008}.notification-item.unread{background-color:#4a9eff14}.notification-icon{background:#0000000d}.notification-title{color:#333}.notification-message{color:#666}.notification-time{color:#999}.notification-panel-footer{background:#f8f8f8;border-top-color:#0000001a}.dismiss-button{color:#999}.dismiss-button:hover{background:#0000000d;color:#666}}.app-header{position:fixed;top:0;left:0;right:0;height:60px;background:transparent!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:space-between;padding:0 .75rem;z-index:1000;border-bottom:none!important}.app-header-transparent,.game-active .app-header{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.app-header-left{display:flex;align-items:center;gap:1rem}.app-header-logo-link{display:flex;align-items:center;text-decoration:none;transition:opacity .2s ease}.app-header-logo-link:hover{opacity:.8}.app-header-logo{height:48px;width:auto;filter:drop-shadow(0 2px 8px rgba(56,189,248,.3))}.app-header-right{display:flex;align-items:center;gap:.75rem}.user-avatar{width:36px;height:36px;border-radius:50%;overflow:hidden;border:none;padding:0;box-shadow:0 2px 8px var(--theme-shadow, rgba(0, 0, 0, .3));display:flex;align-items:center;justify-content:center;background:var(--theme-primary-light, linear-gradient(135deg, rgba(56, 189, 248, .2), rgba(14, 165, 233, .2)));cursor:pointer;transition:all .2s ease}.user-avatar:hover:not(:disabled){transform:scale(1.1);box-shadow:0 4px 12px var(--theme-shadow, rgba(56, 189, 248, .5))}.user-avatar:active:not(:disabled){transform:scale(1.05)}.user-avatar:disabled{cursor:not-allowed;opacity:.6}.user-avatar .avatar-emoji{font-size:1.5rem;line-height:1}.user-avatar-img{width:100%;height:100%;object-fit:cover}.user-avatar-initials{font-size:.875rem;font-weight:700;color:#fffffff2;text-transform:uppercase}.user-avatar-anonymous{width:20px;height:20px;color:#ffffffb3}.burger-menu-button{width:40px;height:40px;border:none;background:transparent;border-radius:8px;color:#ffffffe6;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.burger-menu-button:hover{background:#ffffff1a}.burger-menu-button:active{transform:scale(.95)}.burger-menu-button svg{width:20px;height:20px}.menu-backdrop{position:fixed;inset:60px 0 0;background:#0009;z-index:999;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%)}.menu-panel{position:fixed;top:60px;right:0;width:min(320px,90vw);max-height:calc(100vh - 60px);background:linear-gradient(to bottom,var(--theme-bg-from, rgba(15, 23, 42, .98)),var(--theme-bg-to, rgba(30, 41, 59, .98)));backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-left:2px solid var(--theme-accent, rgba(56, 189, 248, .4));border-bottom:2px solid var(--theme-accent, rgba(56, 189, 248, .4));box-shadow:-4px 4px 24px #0009,0 0 0 1px var(--theme-accent, rgba(56, 189, 248, .2)) inset;overflow-y:auto;z-index:1000;padding:1rem 0}.menu-user-info{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem}.menu-user-avatar{width:48px;height:48px;border-radius:50%;overflow:hidden;border:2px solid var(--theme-accent, rgba(56, 189, 248, .4));box-shadow:0 2px 8px var(--theme-shadow, rgba(56, 189, 248, .3));flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--theme-primary-light, linear-gradient(135deg, rgba(56, 189, 248, .2), rgba(14, 165, 233, .2)))}.menu-user-avatar .user-avatar-initials{font-size:1.125rem}.menu-user-avatar .user-avatar-anonymous{width:24px;height:24px;color:#ffffffb3}.menu-user-avatar .avatar-emoji{font-size:2rem;line-height:1}.menu-user-details{flex:1;min-width:0}.menu-user-name{font-size:1rem;font-weight:600;color:#fffffff2;margin-bottom:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-user-email{font-size:.875rem;color:#fff9;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-item{width:100%;display:flex;align-items:center;gap:.875rem;padding:.875rem 1.25rem;background:transparent;border:none;color:#ffffffe6;cursor:pointer;transition:all .2s ease;text-align:left;font-size:1rem}.menu-item-wrapper{width:100%;display:flex;align-items:center;gap:0;position:relative}.menu-item-wrapper .menu-item{flex:1;padding-right:2.5rem}.menu-item-wrapper .menu-item-chevron{position:absolute;right:1.25rem}.menu-item:hover{background:var(--theme-primary-light, rgba(56, 189, 248, .15));color:#fff}.menu-item:active{background:var(--theme-primary-light, rgba(56, 189, 248, .2))}.menu-item-icon{width:20px;height:20px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.menu-item-icon svg{width:100%;height:100%}.menu-item-label{flex:1}.menu-item-chevron{width:20px;height:20px;padding:0;margin:0;background:transparent;border:none;color:#ffffff80;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.menu-item-chevron:hover{color:#ffffffe6}.menu-item-chevron svg{width:16px;height:16px}.menu-item-danger:hover{background:#ef44441a;color:#fca5a5}.menu-item-danger:active{background:#ef444426}.menu-divider{height:1px;background:linear-gradient(to right,transparent,var(--theme-accent, rgba(56, 189, 248, .3)),transparent);margin:.5rem 0}.menu-section{padding:.5rem 0}.menu-section-title{padding:.5rem 1.25rem .25rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#ffffff80}.menu-help-text{padding:.5rem 1.25rem .25rem;font-size:.75rem;color:#fff6;font-style:italic;margin:0}.menu-track-list{padding:.5rem 0 0;overflow:hidden}.menu-track-item{width:100%;display:flex;align-items:center;gap:.75rem;padding:.625rem 1.25rem .625rem 3rem;background:transparent;border:none;color:#ffffffb3;cursor:pointer;transition:all .2s ease;text-align:left;font-size:.875rem}.menu-track-item:hover{background:var(--theme-primary-light, rgba(56, 189, 248, .1));color:#fffffff2}.menu-track-item.active{color:var(--theme-accent, rgba(56, 189, 248, 1));font-weight:500}.menu-track-item.active:hover{background:var(--theme-primary-light, rgba(56, 189, 248, .15))}.menu-track-radio{font-size:.75rem;line-height:1;flex-shrink:0}.menu-track-label{flex:1}@media(max-width:768px){.app-header-logo{height:40px}.user-avatar{width:32px;height:32px}.user-avatar-initials{font-size:.75rem}}.admin-notifications{max-width:800px;margin:0 auto;padding:24px}.admin-notifications-header{margin-bottom:32px}.admin-notifications-header h2{font-size:28px;font-weight:700;color:var(--text-primary, #e0e0e0);margin:0 0 8px}.admin-notifications-header p{font-size:15px;color:var(--text-secondary, #999);margin:0}.success-banner,.error-banner{padding:16px 20px;border-radius:8px;margin-bottom:24px;font-size:14px;font-weight:500}.success-banner{background:#22c55e1a;border:1px solid rgba(34,197,94,.3);color:#22c55e}.error-banner{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444}.notification-form{background:var(--bg-secondary, #242424);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:12px;padding:24px;margin-bottom:24px}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:14px;font-weight:600;color:var(--text-primary, #e0e0e0);margin-bottom:8px}.form-group input,.form-group textarea,.form-group select{width:100%;padding:12px;background:var(--bg-tertiary, #1a1a1a);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:8px;color:var(--text-primary, #e0e0e0);font-size:14px;font-family:inherit;transition:border-color .2s ease}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--accent-primary, #4a9eff)}.form-group small{display:block;margin-top:6px;font-size:12px;color:var(--text-tertiary, #666)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:24px;border-top:1px solid var(--border-color, rgba(255, 255, 255, .1))}.preview-button,.send-button{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.preview-button{background:transparent;border:1px solid var(--accent-primary, #4a9eff);color:var(--accent-primary, #4a9eff)}.preview-button:hover:not(:disabled){background:#4a9eff1a}.send-button{background:linear-gradient(135deg,#4a9eff,#357abd);color:#fff}.send-button:hover:not(:disabled){background:linear-gradient(135deg,#357abd,#2a6aa8);transform:translateY(-1px);box-shadow:0 4px 12px #4a9eff4d}.preview-button:disabled,.send-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.notification-preview{background:var(--bg-secondary, #242424);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:12px;padding:24px;overflow:hidden}.notification-preview h3{font-size:16px;font-weight:600;color:var(--text-primary, #e0e0e0);margin:0 0 16px}.preview-notification{display:flex;align-items:flex-start;gap:16px;padding:16px;background:var(--bg-tertiary, #1a1a1a);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:10px}.preview-icon{flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border-radius:12px;font-size:24px}.preview-content{flex:1;min-width:0}.preview-title{font-size:16px;font-weight:600;color:var(--text-primary, #e0e0e0);margin-bottom:6px;line-height:1.4}.preview-message{font-size:14px;color:var(--text-secondary, #999);line-height:1.6;margin-bottom:12px}.preview-meta{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--text-tertiary, #666)}.preview-meta span{padding:4px 8px;background:#ffffff0d;border-radius:4px}@media(max-width:640px){.admin-notifications{padding:16px}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.preview-button,.send-button{width:100%}}@media(prefers-color-scheme:light){.admin-notifications-header h2{color:#333}.admin-notifications-header p{color:#666}.notification-form,.notification-preview{background:#fff;border-color:#0000001a}.form-group label{color:#333}.form-group input,.form-group textarea,.form-group select{background:#f8f8f8;border-color:#0000001a;color:#333}.form-group small{color:#999}.form-actions{border-top-color:#0000001a}.preview-notification{background:#f8f8f8;border-color:#0000001a}.preview-icon{background:#0000000d}.preview-title{color:#333}.preview-message{color:#666}.preview-meta{color:#999}.preview-meta span{background:#0000000d}}@keyframes explainer-fade-in{0%{opacity:0}to{opacity:1}}@keyframes explainer-fade-out{0%{opacity:1}to{opacity:0}}@keyframes explainer-slide-up{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes explainer-slide-down{0%{transform:translateY(-30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes explainer-slide-left{0%{transform:translate(30px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes explainer-slide-right{0%{transform:translate(-30px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes explainer-zoom-in{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}@keyframes explainer-zoom-out{0%{transform:scale(1.2);opacity:0}to{transform:scale(1);opacity:1}}@keyframes explainer-pulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.9}to{transform:scale(1);opacity:1}}@keyframes explainer-bounce{0%{transform:translateY(-20px);opacity:0}50%{transform:translateY(5px);opacity:1}70%{transform:translateY(-5px)}to{transform:translateY(0);opacity:1}}@keyframes explainer-spotlight{0%{box-shadow:0 0 #ffd70000;opacity:0}to{box-shadow:0 0 20px 10px #ffd70099;opacity:1}}@keyframes explainer-ripple{0%{box-shadow:0 0 #3b82f6b3,0 0 #3b82f6b3}40%{box-shadow:0 0 0 15px #3b82f600,0 0 #3b82f6b3}80%{box-shadow:0 0 0 15px #3b82f600,0 0 0 30px #3b82f600}to{box-shadow:0 0 #3b82f600,0 0 0 30px #3b82f600}}@keyframes explainer-glow{0%{box-shadow:0 0 5px #8b5cf680}50%{box-shadow:0 0 20px #8b5cf6cc,0 0 30px #8b5cf699}to{box-shadow:0 0 5px #8b5cf680}}.explainer-animate-fade{animation:explainer-fade-in var(--animation-duration, .6s) var(--animation-timing, ease-out) var(--animation-delay, 0ms) forwards}.explainer-animate-slide-up{animation:explainer-slide-up var(--animation-duration, .6s) var(--animation-timing, ease-out) var(--animation-delay, 0ms) forwards}.explainer-animate-slide-down{animation:explainer-slide-down var(--animation-duration, .6s) var(--animation-timing, ease-out) var(--animation-delay, 0ms) forwards}.explainer-animate-slide-left{animation:explainer-slide-left var(--animation-duration, .6s) var(--animation-timing, ease-out) var(--animation-delay, 0ms) forwards}.explainer-animate-slide-right{animation:explainer-slide-right var(--animation-duration, .6s) var(--animation-timing, ease-out) var(--animation-delay, 0ms) forwards}.explainer-animate-zoom-in{animation:explainer-zoom-in var(--animation-duration, .6s) var(--animation-timing, ease-out) var(--animation-delay, 0ms) forwards}.explainer-animate-zoom-out{animation:explainer-zoom-out var(--animation-duration, .6s) var(--animation-timing, ease-out) var(--animation-delay, 0ms) forwards}.explainer-animate-pulse{animation:explainer-pulse var(--animation-duration, 1.2s) var(--animation-timing, ease-in-out) var(--animation-delay, 0ms) infinite}.explainer-animate-bounce{animation:explainer-bounce var(--animation-duration, .8s) var(--animation-timing, cubic-bezier(.68, -.55, .265, 1.55)) var(--animation-delay, 0ms) forwards}.explainer-animate-spotlight{animation:explainer-spotlight var(--animation-duration, .8s) var(--animation-timing, ease-out) var(--animation-delay, 0ms) forwards}.explainer-animate-ripple{animation:explainer-ripple var(--animation-duration, 1.5s) var(--animation-timing, ease-out) var(--animation-delay, 0ms) infinite}.explainer-animate-glow{animation:explainer-glow var(--animation-duration, 2s) var(--animation-timing, ease-in-out) var(--animation-delay, 0ms) infinite}.explainer-transition-fade{transition:opacity var(--transition-duration, .4s) ease-in-out}.explainer-transition-slide,.explainer-transition-zoom{transition:transform var(--transition-duration, .4s) ease-in-out,opacity var(--transition-duration, .4s) ease-in-out}.explainer-preview-layout{display:flex;flex-direction:row;flex-wrap:wrap;flex:1;width:100%;min-height:0}.explainer-image-container{position:relative;display:flex;align-items:center;justify-content:center;padding:1rem;overflow:auto;flex:1;min-width:300px}.explainer-sidebar{width:400px;min-width:300px;height:100%;flex-shrink:0;overflow-y:auto;padding:2rem;box-sizing:border-box}@media(max-width:1024px){.explainer-preview-layout{flex-direction:column;overflow-y:auto;height:auto;min-height:100%}.explainer-sidebar{width:100%;min-width:100%;height:auto;max-height:none;padding:1.5rem;overflow-y:visible}.explainer-image-container{min-width:100%;height:auto;min-height:300px;padding:.5rem;overflow:visible}}@media(max-width:768px){.explainer-sidebar{padding:1rem}.explainer-image-container{min-height:250px;padding:.5rem}}@media(max-width:480px){.explainer-sidebar{padding:.75rem}.explainer-image-container{min-height:200px;padding:.25rem}}@media(max-width:640px){.explainer-preview-layout{flex-direction:column!important;height:auto!important;min-height:100%!important;overflow-y:visible!important;overflow-x:hidden!important;flex:none!important}.explainer-image-container{flex:0 0 auto!important;min-height:auto!important;max-height:none!important;padding:.5rem!important;overflow:visible!important}.explainer-sidebar{width:100%!important;min-width:100%!important;height:auto!important;flex:0 0 auto!important;padding:1rem!important;overflow-y:visible!important;display:block!important}}.engine-test-admin{padding:2rem;max-width:1400px;margin:0 auto}.engine-test-header{margin-bottom:2rem;border-bottom:2px solid #333;padding-bottom:1rem}.engine-test-header h2{margin:0 0 .5rem;font-size:2rem;color:#fff}.engine-test-header .subtitle{margin:0 0 .75rem;color:#aaa;font-size:.95rem;line-height:1.5}.testing-info{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:.75rem}.info-badge{display:inline-block;padding:.35rem .75rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px;font-size:.75rem;font-weight:600;letter-spacing:.3px}.test-mode-info{margin-top:1rem;padding:.75rem;background:#667eea1a;border-left:3px solid #667eea;border-radius:4px}.test-mode-info .info-text{margin:0;color:#ccc;font-size:.85rem;line-height:1.5}.engine-test-section{background:#1a1a1a;border:1px solid #333;border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.engine-test-section h3{margin:0 0 1rem;font-size:1.3rem;color:#fff}.engine-test-section h4{margin:1rem 0 .5rem;font-size:1.1rem;color:#ddd}.cache-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.stat-item{display:flex;flex-direction:column;gap:.25rem}.stat-label{color:#888;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px}.stat-value{color:#fff;font-size:1.2rem;font-weight:600}.stat-value.valid{color:#4caf50}.stat-value.stale{color:#ff9800}.stat-value.status-running{color:#2196f3}.stat-value.status-completed{color:#4caf50}.stat-value.status-failed{color:#f44336}.stat-value.status-cancelled{color:#ff9800}.test-options{display:flex;flex-direction:column;gap:.75rem}.checkbox-option{display:flex;align-items:center;gap:.5rem;cursor:pointer;color:#ddd}.checkbox-option input[type=checkbox]{width:18px;height:18px;cursor:pointer}.checkbox-option:hover{color:#fff}.test-controls{display:flex;gap:1rem}.primary-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.primary-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.primary-button:disabled{opacity:.6;cursor:not-allowed}.secondary-button{background:#333;color:#fff;border:1px solid #555;padding:.75rem 1.5rem;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.secondary-button:hover{background:#444;border-color:#666}.progress-display{display:flex;flex-direction:column;gap:1rem}.progress-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.progress-bar{width:100%;height:30px;background:#222;border-radius:15px;overflow:hidden;border:1px solid #333}.progress-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);transition:width .3s ease;display:flex;align-items:center;justify-content:flex-end;padding-right:10px;color:#fff;font-weight:600}.progress-errors{background:#2a1a1a;border:1px solid #4a2a2a;border-radius:6px;padding:1rem}.progress-errors h4{margin:0 0 .5rem;color:#ff9800}.error-list{display:flex;flex-direction:column;gap:.5rem}.error-item{padding:.5rem;background:#1a1a1a;border-radius:4px;font-size:.9rem;color:#ff9800}.summary-display{display:flex;flex-direction:column;gap:1.5rem}.summary-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.stat-card{background:linear-gradient(135deg,#1a1a1a,#2a2a2a);border:2px solid #333;border-radius:8px;padding:1.5rem;text-align:center;transition:transform .2s}.stat-card:hover{transform:translateY(-4px)}.stat-card.fully-supported{border-color:#4caf50}.stat-card.mostly-supported{border-color:#8bc34a}.stat-card.partially-supported{border-color:#ff9800}.stat-card.unsupported{border-color:#f44336}.stat-card .stat-number{font-size:2.5rem;font-weight:700;color:#fff;margin-bottom:.5rem}.stat-card .stat-label{font-size:.9rem;color:#aaa;text-transform:uppercase;letter-spacing:1px;margin-bottom:.5rem}.stat-card .stat-percent{font-size:1.2rem;font-weight:600;color:#ddd}.summary-duration{padding:1rem;background:#222;border-radius:6px;text-align:center;color:#aaa}.report-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.report-header h3{margin:0}.export-actions{display:flex;gap:.75rem}.export-button{padding:.5rem 1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.5rem}.export-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.export-button:active{transform:translateY(0)}.report-section{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #333}.coverage-roadmap{display:flex;flex-direction:column;gap:.75rem}.coverage-item{display:grid;grid-template-columns:150px 1fr 60px;gap:1rem;align-items:center}.coverage-item.current .coverage-label{font-weight:700;color:#fff}.coverage-item.goal .coverage-label{font-weight:700;color:#4caf50}.coverage-label{color:#aaa;font-size:.9rem}.coverage-bar{height:24px;background:#222;border-radius:12px;overflow:hidden;border:1px solid #333}.coverage-fill{height:100%;background:linear-gradient(90deg,#4caf50,#8bc34a);transition:width .5s ease}.coverage-percent{text-align:right;font-weight:600;color:#fff}.gaps-list{display:flex;flex-direction:column;gap:1rem}.gap-item{background:#222;border:1px solid #333;border-radius:6px;padding:1rem}.gap-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.gap-rank{background:#333;color:#fff;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem}.gap-feature{flex:1;font-weight:600;color:#fff;font-size:1.05rem}.gap-priority{padding:.25rem .75rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.gap-priority.priority-critical{background:#f44336;color:#fff}.gap-priority.priority-high{background:#ff9800;color:#fff}.gap-priority.priority-medium{background:#2196f3;color:#fff}.gap-priority.priority-low{background:#4caf50;color:#fff}.gap-stats{color:#aaa;font-size:.9rem;margin-bottom:.5rem}.gap-examples{margin-top:.5rem;font-size:.85rem}.gap-examples summary{color:#888;cursor:pointer;margin-bottom:.25rem}.gap-examples ul{margin:.5rem 0 0 1.5rem;color:#aaa}.recommendations-list{display:flex;flex-direction:column;gap:1rem}.recommendation-item{background:linear-gradient(135deg,#1a1a2a,#2a2a3a);border:2px solid #667eea;border-radius:8px;padding:1.5rem}.recommendation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.recommendation-header h5{margin:0;font-size:1.2rem;color:#fff}.rec-priority{padding:.25rem .75rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.rec-priority.priority-critical{background:#f44336;color:#fff}.rec-priority.priority-high{background:#ff9800;color:#fff}.recommendation-impact{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:1rem;padding:1rem;background:#0000004d;border-radius:6px}.recommendation-impact>div{color:#ddd;font-size:.95rem}.recommendation-features{color:#ddd}.recommendation-features ul{margin:.5rem 0 0 1.5rem;color:#aaa}.info-section{background:linear-gradient(135deg,#1a1a2a,#2a1a2a);border-color:#667eea}.info-content p{color:#ddd;line-height:1.6;margin:0 0 .75rem}.info-content code{background:#222;padding:.2rem .4rem;border-radius:3px;color:#667eea;font-family:Courier New,monospace}.recent-tests-list{display:flex;flex-direction:column;gap:.75rem}.recent-test-item{background:#222;border:1px solid #333;border-radius:6px;padding:1rem;transition:all .2s}.recent-test-item:hover{border-color:#667eea;transform:translate(4px)}.recent-test-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.recent-test-date{color:#aaa;font-size:.9rem}.recent-test-status{padding:.25rem .75rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase}.recent-test-stats{display:flex;gap:.5rem;color:#888;font-size:.85rem}.recent-test-stats span:not(:last-child){margin-right:.25rem}.saving-indicator{background:#2a2a3a;border:1px solid #667eea;border-radius:6px;padding:.75rem;margin-bottom:1rem;color:#667eea;text-align:center;font-weight:600}.flex{display:flex}.inline-flex{display:inline-flex}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.flex-col{flex-direction:column}.flex-1{flex:1 1 0%}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}@media(min-width:768px){.md\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.lg\\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-12{padding:3rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pt-3{padding-top:.75rem}.m-0{margin:0}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.-ml-1{margin-left:-.25rem}.mx-auto{margin-left:auto;margin-right:auto}.w-5{width:1.25rem}.w-full{width:100%}.h-3{height:.75rem}.h-4{height:.4rem}.h-5{height:1.25rem}.h-12{height:3rem}.h-16{height:4rem}.h-40{height:10rem}.h-1{height:.25rem}.min-h-screen{min-height:100vh}.max-w-7xl{max-width:80rem}.bg-white{background-color:#fff}.bg-gray-50{background-color:#f9fafb}.bg-gray-400{background-color:#9ca3af}.bg-gray-500{background-color:#6b7280}.bg-purple-600{background-color:#9333ea}.bg-green-100{background-color:#d1fae5}.bg-yellow-100{background-color:#fef3c7}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.from-purple-500{--tw-gradient-from: #a855f7;--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.to-indigo-600{--tw-gradient-to: #4f46e5}.bg-black{background-color:#000}.bg-opacity-20{background-color:#0003}.bg-opacity-90{background-color:#ffffffe6}.bg-opacity-100{background-color:#fff}.text-xs{font-size:.75rem;line-height:1rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-center{text-align:center}.text-gray-400{color:#9ca3af}.text-gray-500{color:#6b7280}.text-gray-600{color:#4b5563}.text-gray-900{color:#111827}.text-white{color:#fff}.text-green-800{color:#166534}.text-yellow-800{color:#854d0e}.text-red-600{color:#dc2626}.text-red-700{color:#b91c1c}.font-medium{font-weight:500}.font-bold{font-weight:700}.font-mono{font-family:ui-monospace,monospace}.border{border-width:1px}.border-2{border-width:2px}.border-t{border-top-width:1px}.border-transparent{border-color:transparent}.border-gray-100{border-color:#f3f4f6}.border-gray-200{border-color:#e5e7eb}.border-green-200{border-color:#bbf7d0}.border-yellow-200{border-color:#fde68a}.border-white{border-color:#fff}.rounded-md{border-radius:.375rem}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.shadow-sm{box-shadow:0 1px 2px #0000000d}.relative{position:relative}.absolute{position:absolute}.top-3{top:.75rem}.right-3{right:.75rem}.left-3{left:.75rem}.bottom-0{bottom:0}.left-0{left:0}.right-0{right:0}.inset-0{inset:0}.overflow-hidden{overflow:hidden}.cursor-pointer{cursor:pointer}.opacity-90{opacity:.9}.opacity-0{opacity:0}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color}.transition-transform{transition-property:transform}.duration-200{transition-duration:.2s}.transform{transform:translate(0) translateY(0) rotate(0) skew(0) skewY(0) scaleX(1) scaleY(1)}.scale-x-0{transform:scaleX(0)}.hover\\:shadow-lg:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.hover\\:border-purple-300:hover{border-color:#d8b4fe}.hover\\:bg-purple-700:hover{background-color:#7e22ce}.hover\\:bg-opacity-100:hover{background-color:#fff}.hover\\:text-red-700:hover{color:#b91c1c}.hover\\:scale-105:hover{transform:scale(1.05)}.group:hover .group-hover\\:opacity-100{opacity:1}.group:hover .group-hover\\:scale-105{transform:scale(1.05)}.group:hover .group-hover\\:scale-x-100{transform:scaleX(1)}.focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\\:ring-2:focus{box-shadow:0 0 0 3px #9333ea80}.focus\\:ring-offset-2:focus{box-shadow:0 0 0 2px #fff,0 0 0 4px #9333ea80}.focus\\:ring-purple-500:focus{box-shadow:0 0 0 3px #a855f780}.animate-spin{animation:spin 1s linear infinite}.rounded-full{border-radius:9999px}.border-b-2{border-bottom-width:2px}.border-purple-600{border-color:#9333ea}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.group{position:relative}svg.w-full{width:100%}svg.h-full{height:100%}.object-cover{object-fit:cover}@media(min-width:640px){.sm\\:px-6{padding-left:1.5rem;padding-right:1.5rem}}@media(min-width:1024px){.lg\\:px-8{padding-left:2rem;padding-right:2rem}}.pathway-manager{padding:1.5rem 0}.pathway-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid rgba(148,163,184,.2)}.pathway-header-content h1{margin:0 0 .5rem;font-size:1.75rem;color:#f8fafc;font-family:var(--font-display, "Cinzel", serif)}.pathway-header-content p{margin:0;color:#94a3b8;font-size:.875rem}.pathway-create-btn{padding:.75rem 1.5rem;background:#8b5cf6;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:.5rem;box-shadow:0 2px 4px #8b5cf64d}.pathway-create-btn:hover{background:#7c3aed;box-shadow:0 4px 8px #8b5cf666;transform:translateY(-1px)}.pathway-loading{text-align:center;padding:3rem;color:#94a3b8}.pathway-empty{background:#1e293bcc;border:2px dashed rgba(148,163,184,.3);border-radius:12px;padding:3rem;text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.pathway-empty-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.pathway-empty h3{color:#f8fafc;margin:0 0 .5rem;font-size:1.25rem}.pathway-empty p{color:#94a3b8;margin:0 0 1.5rem}.pathway-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.pathway-card{background:#1e293bf2;border:1px solid rgba(148,163,184,.3);border-radius:12px;overflow:hidden;cursor:pointer;transition:all .2s;position:relative;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 8px #0000004d;min-height:300px;display:flex;flex-direction:column}.pathway-card:hover{border-color:#8b5cf6;box-shadow:0 4px 12px #8b5cf633;transform:translateY(-2px)}.pathway-card-image{position:absolute;inset:0;background:linear-gradient(135deg,#8b5cf6,#6366f1);overflow:hidden;z-index:0}.pathway-card-image img{width:100%;height:100%;object-fit:cover}.pathway-card-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0000004d,#000000b3)}.pathway-card-badge{position:absolute;top:.75rem;right:.75rem;padding:.375rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;z-index:1;display:inline-flex;align-items:center;gap:.25rem}.pathway-card-badge.published{background:#22c55ee6;color:#fff;border:1px solid rgba(255,255,255,.3)}.pathway-card-badge.draft{background:#fbbf24e6;color:#fff;border:1px solid rgba(255,255,255,.3)}.pathway-card-delete{position:absolute;top:.75rem;left:.75rem;padding:.5rem;background:#ef4444e6;color:#fff;border:none;border-radius:8px;cursor:pointer;z-index:1;opacity:0;transition:all .2s}.pathway-card:hover .pathway-card-delete{opacity:1}.pathway-card-delete:hover{background:#dc2626;transform:scale(1.1)}.pathway-card-content{position:relative;z-index:1;padding:1.25rem;display:flex;flex-direction:column;justify-content:flex-end;flex:1;background:transparent}.pathway-card-title{margin:0 0 .5rem;font-size:1.125rem;font-weight:700;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 2px 4px rgba(0,0,0,.8)}.pathway-card-description{margin:0 0 1rem;color:#e2e8f0;font-size:.875rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.5rem;text-shadow:0 1px 3px rgba(0,0,0,.8)}.pathway-card-stats{display:flex;align-items:center;gap:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.2);font-size:.875rem;color:#e2e8f0;text-shadow:0 1px 2px rgba(0,0,0,.8)}.pathway-card-stat{display:flex;align-items:center;gap:.375rem}.pathway-card-stat strong{color:#fff}.pathway-card-color{margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(148,163,184,.15);display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:#64748b}.pathway-card-color-swatch{width:1.25rem;height:1.25rem;border-radius:4px;border:2px solid rgba(255,255,255,.2)}.pathway-card-color-value{font-family:monospace;color:#94a3b8}.pathway-modal-overlay{position:fixed;inset:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;overflow-y:auto}.pathway-modal{background:#0f172af2;border:1px solid rgba(148,163,184,.3);border-radius:12px;max-width:900px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #00000080;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.pathway-modal-header{padding:1.5rem;border-bottom:1px solid rgba(148,163,184,.2);background:#8b5cf61a}.pathway-modal-header-content{display:flex;align-items:center;justify-content:space-between}.pathway-modal-header h2{margin:0 0 .25rem;font-size:1.5rem;color:#f8fafc;font-family:var(--font-display, "Cinzel", serif)}.pathway-modal-header p{margin:0;color:#94a3b8;font-size:.875rem}.pathway-modal-close{background:none;border:none;color:#94a3b8;cursor:pointer;padding:.5rem;transition:color .2s;font-size:1.5rem}.pathway-modal-close:hover{color:#f8fafc}.pathway-modal-body{padding:1.5rem;overflow-y:auto;flex:1}.pathway-form{display:flex;flex-direction:column;gap:1.5rem}.pathway-form-group{display:flex;flex-direction:column;gap:.5rem}.pathway-form-label{font-weight:600;color:#f8fafc;font-size:.875rem}.pathway-form-label .required{color:#ef4444}.pathway-form-input,.pathway-form-textarea{padding:.75rem;background:#1e293bcc;border:1px solid rgba(148,163,184,.3);border-radius:8px;color:#f8fafc;font-family:inherit;font-size:.95rem}.pathway-form-input:focus,.pathway-form-textarea:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf633}.pathway-form-textarea{resize:vertical;min-height:100px}.pathway-form-error{color:#fca5a5;font-size:.75rem;margin-top:.25rem}.pathway-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.pathway-color-input-group{display:flex;gap:.75rem;align-items:stretch}.pathway-color-picker{width:60px;height:48px;border:2px solid rgba(148,163,184,.3);border-radius:8px;cursor:pointer;transition:border-color .2s}.pathway-color-picker:hover{border-color:#8b5cf6}.pathway-color-text{flex:1;font-family:monospace}.pathway-form-hint{color:#64748b;font-size:.75rem;margin-top:.25rem}.pathway-file-upload{border:2px dashed rgba(148,163,184,.3);border-radius:8px;padding:2rem;text-align:center;background:#1e293b66;cursor:pointer;transition:all .2s}.pathway-file-upload:hover{border-color:#8b5cf6;background:#1e293b99}.pathway-file-upload-icon{font-size:2.5rem;margin-bottom:.5rem;opacity:.5}.pathway-file-upload-text{color:#94a3b8;font-size:.875rem}.pathway-file-upload-hint{color:#64748b;font-size:.75rem;margin-top:.25rem}.pathway-file-preview{position:relative;border-radius:8px;overflow:hidden;border:2px solid rgba(148,163,184,.2)}.pathway-file-preview img{width:100%;height:180px;object-fit:cover}.pathway-file-preview-remove{position:absolute;top:.5rem;right:.5rem;padding:.5rem;background:#ef4444e6;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:all .2s}.pathway-file-preview-remove:hover{background:#dc2626;transform:scale(1.1)}.pathway-checkbox-group{background:#1e293b80;border:1px solid rgba(148,163,184,.2);border-radius:8px;padding:1rem;display:flex;align-items:flex-start;gap:.75rem}.pathway-checkbox{width:1.25rem;height:1.25rem;cursor:pointer;accent-color:#8b5cf6}.pathway-checkbox-label{flex:1}.pathway-checkbox-label strong{color:#f8fafc;font-weight:600}.pathway-checkbox-label p{margin:.25rem 0 0;color:#94a3b8;font-size:.875rem}.pathway-milestones-section{margin-top:2rem;padding-top:2rem;border-top:2px solid rgba(148,163,184,.2)}.pathway-milestones-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.pathway-milestones-header h3{margin:0 0 .25rem;font-size:1.125rem;color:#f8fafc}.pathway-milestones-header p{margin:0;color:#94a3b8;font-size:.75rem}.pathway-milestones-empty{background:#3b82f61a;border:2px dashed rgba(59,130,246,.3);border-radius:8px;padding:1.5rem;text-align:center}.pathway-milestones-empty-icon{font-size:2rem;margin-bottom:.5rem;opacity:.6}.pathway-milestones-empty p{margin:0;color:#93c5fd;font-size:.875rem}.pathway-milestones-empty strong{color:#bfdbfe}.pathway-milestones-list{display:flex;flex-direction:column;gap:.75rem}.pathway-milestones-tip{background:#3b82f61a;border:1px solid rgba(59,130,246,.3);border-radius:8px;padding:.75rem;margin-bottom:.75rem}.pathway-milestones-tip p{margin:0;color:#93c5fd;font-size:.875rem;display:flex;align-items:center;gap:.5rem}.pathway-milestone-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:#1e293b99;border:2px solid rgba(148,163,184,.2);border-radius:8px;cursor:move;transition:all .2s}.pathway-milestone-item:hover{border-color:#8b5cf6;box-shadow:0 2px 8px #8b5cf633}.pathway-milestone-item.dragging{opacity:.5}.pathway-milestone-drag-handle{color:#64748b;cursor:grab}.pathway-milestone-drag-handle:active{cursor:grabbing}.pathway-milestone-order{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background:#47556980;border-radius:8px;color:#cbd5e1;font-weight:700;font-size:.875rem}.pathway-milestone-icon{font-size:2rem}.pathway-milestone-info{flex:1}.pathway-milestone-title{margin:0 0 .25rem;font-weight:600;color:#f8fafc;font-size:.95rem}.pathway-milestone-meta{display:flex;align-items:center;gap:.75rem;font-size:.75rem;color:#94a3b8;flex-wrap:wrap}.pathway-milestone-meta-item{display:flex;align-items:center;gap:.25rem}.pathway-milestone-meta-separator{color:#475569}.pathway-milestone-color{width:2.5rem;height:2.5rem;border-radius:8px;border:2px solid rgba(255,255,255,.2)}.pathway-info-box{background:#8b5cf61a;border:1px solid rgba(139,92,246,.3);border-radius:8px;padding:1rem;margin-top:1rem}.pathway-info-box p{margin:0;color:#c4b5fd;font-size:.875rem;display:flex;align-items:flex-start;gap:.5rem;line-height:1.5}.pathway-modal-footer{padding:1.5rem;border-top:1px solid rgba(148,163,184,.2);background:#0f172a99;display:flex;align-items:center;justify-content:flex-end;gap:1rem}.pathway-btn{padding:.75rem 1.5rem;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:.5rem}.pathway-btn-secondary{background:#47556980;color:#e2e8f0;border:1px solid rgba(148,163,184,.3)}.pathway-btn-secondary:hover{background:#475569b3;border-color:#94a3b880}.pathway-btn-primary{background:#8b5cf6;color:#fff;box-shadow:0 2px 4px #8b5cf64d}.pathway-btn-primary:hover:not(:disabled){background:#7c3aed;box-shadow:0 4px 8px #8b5cf666;transform:translateY(-1px)}.pathway-btn-primary:disabled{opacity:.5;cursor:not-allowed}.pathway-spinner{display:inline-block;width:1rem;height:1rem;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:pathway-spin .6s linear infinite}@keyframes pathway-spin{to{transform:rotate(360deg)}}@media(max-width:768px){.pathway-grid,.pathway-form-row{grid-template-columns:1fr}.pathway-modal{max-height:95vh}.pathway-header{flex-direction:column;align-items:flex-start;gap:1rem}.pathway-create-btn{width:100%;justify-content:center}}.hierarchy-editor .sortable-node-container{display:block;margin-bottom:1.5rem;width:100%;position:static;transform:none}.hierarchy-editor .milestone-node{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;background:#ffffff1a;border:2px solid rgba(255,255,255,.2);border-radius:8px;cursor:move;min-height:60px;position:static;transform:none}.hierarchy-editor .drop-indicator-line{height:4px;background:linear-gradient(90deg,gold,#ffed4e,gold);border-radius:2px;margin:-.5rem 0 .5rem;box-shadow:0 0 8px #ffd70099;animation:pulse-glow 1s ease-in-out infinite;position:relative}.hierarchy-editor .drop-indicator-text{position:absolute;top:-20px;left:50%;transform:translate(-50%);background:#ffd700e6;color:#1a1a2e;padding:.25rem .75rem;border-radius:4px;font-size:.75rem;font-weight:600;white-space:nowrap;box-shadow:0 2px 8px #0000004d}@keyframes pulse-glow{0%,to{opacity:1;box-shadow:0 0 8px #ffd70099}50%{opacity:.8;box-shadow:0 0 16px #ffd700cc}}.hierarchy-editor .milestone-node:hover{background:#ffffff26;border-color:#ffd70080}.hierarchy-editor .milestone-node.dragging{opacity:.5}.hierarchy-editor .milestone-node.drag-over{background:#ffd70033;border-color:#ffd70099;box-shadow:0 0 0 2px #ffd7004d}.hierarchy-editor .milestone-node.depth-0{margin-left:0}.hierarchy-editor .milestone-node.depth-1{margin-left:2rem;border-left:3px solid rgba(255,215,0,.4)}.hierarchy-editor .milestone-node.depth-2{margin-left:4rem;border-left:3px solid rgba(100,200,255,.4)}.hierarchy-editor .milestone-node.depth-3{margin-left:6rem;border-left:3px solid rgba(200,100,255,.4)}.hierarchy-editor .milestone-node.depth-4{margin-left:8rem;border-left:3px solid rgba(255,100,150,.4)}.hierarchy-editor .node-handle{display:flex;align-items:center;padding:.25rem;cursor:grab;color:#fff6;transition:color .2s}.hierarchy-editor .node-handle:hover{color:#ffd700cc}.hierarchy-editor .node-handle:active{cursor:grabbing}.hierarchy-editor .drag-icon{font-size:1rem;-webkit-user-select:none;user-select:none}.hierarchy-editor .node-content{flex:1;display:flex;align-items:center;gap:.75rem}.hierarchy-editor .expand-button{background:none;border:none;color:#ffffff80;cursor:pointer;font-size:.875rem;padding:.25rem .5rem;transition:all .2s}.hierarchy-editor .expand-button:hover{color:gold;transform:scale(1.1)}.hierarchy-editor .expand-button.expanded{color:#ffffffb3}.hierarchy-editor .milestone-icon{font-size:1.5rem;flex-shrink:0}.hierarchy-editor .milestone-info{display:flex;flex-direction:column;gap:.25rem;flex:1}.hierarchy-editor .milestone-title{font-weight:600;font-size:1rem;color:#fff}.hierarchy-editor .milestone-meta{font-size:.75rem;color:#fff9}.hierarchy-editor .delete-button{background:#ff3b3033;border:1px solid rgba(255,59,48,.3);border-radius:6px;padding:.5rem;cursor:pointer;font-size:1rem;flex-shrink:0}.hierarchy-editor .delete-button:hover{background:#ff3b304d;border-color:#ff3b3080}.hierarchy-editor .children-container{margin-top:.5rem;padding-left:1.5rem;border-left:2px solid rgba(255,215,0,.2)}.hierarchy-editor .milestone-node.dragging{background:#ffd70033;border-color:#ffd70080;box-shadow:0 4px 12px #0000004d}@media(max-width:768px){.hierarchy-editor .milestone-node{padding:.5rem .75rem;gap:.5rem}.hierarchy-editor .milestone-node.depth-1{margin-left:1rem}.hierarchy-editor .milestone-node.depth-2{margin-left:2rem}.hierarchy-editor .milestone-node.depth-3{margin-left:3rem}.hierarchy-editor .milestone-node.depth-4{margin-left:4rem}.hierarchy-editor .milestone-icon{font-size:1.25rem}.hierarchy-editor .milestone-title{font-size:.875rem}.hierarchy-editor .milestone-meta{font-size:.625rem}.hierarchy-editor .children-container{padding-left:1rem}}.hierarchy-editor{display:flex;flex-direction:column;min-height:600px;background:linear-gradient(135deg,#1a1a2e,#16213e);color:#fff;width:100%;overflow:visible}.hierarchy-editor-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;background:#ffffff0d;border-bottom:1px solid rgba(255,255,255,.1);flex-wrap:wrap;gap:1rem}.header-content h2{margin:0;font-size:1.5rem;background:linear-gradient(135deg,gold,#ffed4e);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-content .subtitle{margin:.25rem 0 0;font-size:.875rem;color:#fff9}.header-controls{display:flex;gap:1rem;align-items:center}.pathway-select{padding:.5rem 1rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;font-size:.875rem;cursor:pointer;transition:all .2s}.pathway-select:hover{background:#ffffff26;border-color:#ffd70066}.pathway-select option{background:#1a1a2e;color:#fff}.close-button{padding:.5rem 1rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;font-size:1.25rem;cursor:pointer;transition:all .2s}.close-button:hover{background:#ff3b3033;border-color:#ff3b3066}.hierarchy-editor-content{flex:1;overflow-y:auto;padding:2rem;width:100%;box-sizing:border-box}.hierarchy-instructions{display:flex;gap:1.5rem;padding:1rem;background:#ffd7001a;border:1px solid rgba(255,215,0,.3);border-radius:8px;margin-bottom:1.5rem;flex-wrap:wrap}.instruction-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.instruction-icon{font-size:1.25rem}.hierarchy-tree{padding:2rem;background:#0003;border-radius:8px;border:2px dashed rgba(255,255,255,.1);min-height:400px;width:100%;box-sizing:border-box;overflow:visible}.drop-zone-line{height:8px;margin:8px 0;border-radius:4px;transition:all .2s ease;position:relative}.drop-zone-active{height:6px;background:linear-gradient(90deg,gold,#ffed4e,gold);box-shadow:0 0 12px #ffd700cc;animation:pulse-glow .8s ease-in-out infinite;margin:12px 0}.drop-zone-label{position:absolute;top:-24px;left:50%;transform:translate(-50%);background:#ffd700f2;color:#1a1a2e;padding:.35rem 1rem;border-radius:6px;font-size:.8rem;font-weight:700;white-space:nowrap;box-shadow:0 2px 8px #0006;z-index:100}.empty-state{text-align:center;padding:3rem 1rem;color:#ffffff80}.empty-state p{margin:.5rem 0}.empty-hint{font-size:.875rem;color:#ffffff4d}.hierarchy-editor-footer{padding:1rem 2rem;background:#ffffff0d;border-top:1px solid rgba(255,255,255,.1)}.stats{display:flex;gap:2rem;justify-content:center;flex-wrap:wrap}.stat{font-size:.875rem;color:#ffffffb3}.stat strong{color:gold;font-size:1.125rem;margin-right:.25rem}.hierarchy-editor-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px;color:#ffffffb3}.loading-spinner{width:40px;height:40px;border:4px solid rgba(255,215,0,.2);border-top-color:gold;border-radius:50%;animation:spin 1s linear infinite}@media(max-width:768px){.hierarchy-editor-header{flex-direction:column;align-items:stretch}.header-controls{flex-direction:column}.pathway-select{width:100%}.hierarchy-instructions{flex-direction:column;gap:.75rem}.stats{gap:1rem}}.admin-panel{max-width:1200px;margin:2rem auto;padding:0 1rem;color:#f8fafc}@media(max-width:768px){.admin-panel{margin-top:9rem;padding:0 1rem}}.admin-header{margin-top:4rem;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid rgba(148,163,184,.2)}.admin-header h1{margin:0 0 .5rem;font-size:2rem;color:#f8fafc;font-family:var(--font-display, "Cinzel", serif)}.admin-subtitle{margin:0;color:#94a3b8;font-size:1rem}.admin-unauthorized{text-align:center;padding:3rem;background:#ef44441a;border:2px solid rgba(239,68,68,.3);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.admin-unauthorized h2{color:#fca5a5;margin:0 0 1rem}.admin-unauthorized p{color:#cbd5e1}.admin-loading{text-align:center;padding:2rem;color:#94a3b8}.admin-success-message,.admin-error-message{padding:1rem;border-radius:8px;margin-bottom:1.5rem;font-weight:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.admin-success-message{background:#22c55e26;color:#86efac;border:1px solid rgba(34,197,94,.3)}.admin-error-message{background:#ef444426;color:#fca5a5;border:1px solid rgba(239,68,68,.3)}.admin-content{display:flex;flex-direction:column;gap:2rem}.admin-section{background:#0f172ab3;border:1px solid rgba(148,163,184,.2);border-radius:12px;padding:1.5rem;box-shadow:0 4px 6px #0000004d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.admin-section h2{margin:0 0 1rem;font-size:1.5rem;color:#f8fafc;font-family:var(--font-display, "Cinzel", serif)}.admin-empty{text-align:center;padding:2rem;color:#64748b}.admin-hierarchy-page{display:flex;flex-direction:column;gap:1.5rem}.admin-hierarchy-card{background:#0f172ab3;border:1px solid rgba(148,163,184,.2);border-radius:12px;padding:1rem 0;box-shadow:0 4px 10px #00000059;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overflow:visible}.admin-hierarchy-card .hierarchy-editor-header,.admin-hierarchy-card .hierarchy-editor-content,.admin-hierarchy-card .hierarchy-editor-footer,.admin-hierarchy-card .hierarchy-tree{padding-left:2.5rem;padding-right:2.5rem}.users-table{overflow-x:auto;touch-action:manipulation}.users-table table{width:100%;border-collapse:collapse}.users-table th,.users-table td{padding:.75rem;text-align:left;border-bottom:1px solid rgba(148,163,184,.15)}.users-table th{background:#1e293b80;font-weight:600;color:#cbd5e1;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.users-table td{color:#e2e8f0}.users-table tr:hover{background:#1e293b4d}.users-table tr.selected{background:#3b82f626;border-left:3px solid #3b82f6}.role-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:600;text-transform:capitalize}.role-admin{background:#ef444433;color:#fca5a5;border:1px solid rgba(239,68,68,.3)}.role-super_user{background:#fb923c33;color:#fdba74;border:1px solid rgba(251,146,60,.3)}.role-tester{background:#22c55e33;color:#86efac;border:1px solid rgba(34,197,94,.3)}.role-player{background:#3b82f633;color:#93c5fd;border:1px solid rgba(59,130,246,.3)}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:600;text-transform:capitalize}.status-active{background:#22c55e33;color:#86efac;border:1px solid rgba(34,197,94,.3)}.status-barred{background:#fbbf2433;color:#fcd34d;border:1px solid rgba(251,191,36,.3)}.status-banned{background:#ef444433;color:#fca5a5;border:1px solid rgba(239,68,68,.3)}.status-deleted{background:#64748b33;color:#94a3b8;border:1px solid rgba(100,116,139,.3)}.inactive-user{opacity:.7}.admin-btn,.admin-btn-small{padding:.5rem 1rem;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s;font-family:var(--font-display, "Cinzel", serif)}.admin-btn-small{padding:.375rem .75rem;font-size:.875rem}.admin-btn-primary{background:#3b82f6;color:#fff;box-shadow:0 2px 4px #3b82f64d}.admin-btn-primary:hover:not(:disabled){background:#2563eb;box-shadow:0 4px 8px #3b82f666}.admin-btn-secondary{background:#47556980;color:#e2e8f0;border:1px solid rgba(148,163,184,.3)}.admin-btn-secondary:hover:not(:disabled){background:#475569b3;border-color:#94a3b880}.admin-btn-small{background:#33415599;color:#cbd5e1;border:1px solid rgba(148,163,184,.2)}.admin-btn-small:hover:not(:disabled){background:#334155cc;border-color:#94a3b866}.admin-btn:disabled,.admin-btn-small:disabled{opacity:.5;cursor:not-allowed}.role-assignment-section{background:#1e3a8a26;border:2px solid rgba(59,130,246,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.selected-user-info{background:#0f172a99;padding:1rem;border-radius:8px;margin-bottom:1rem;border:1px solid rgba(148,163,184,.2)}.selected-user-info p{margin:.5rem 0;color:#e2e8f0}.role-selector{margin:1.5rem 0}.role-selector label{display:block;margin-bottom:.5rem;font-weight:600;color:#f8fafc}.role-select{width:100%;padding:.75rem;border:2px solid rgba(148,163,184,.3);border-radius:8px;font-size:1rem;background:#1e293bcc;color:#f8fafc;cursor:pointer}.role-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f633}.role-select option{background:#1e293b;color:#f8fafc}.role-description{margin:.5rem 0 0;color:#94a3b8;font-size:.875rem;font-style:italic}.role-actions{display:flex;gap:1rem}.roles-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.role-info-card{padding:1rem;border:1px solid rgba(148,163,184,.2);border-radius:8px;background:#1e293b80;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.role-info-card .role-badge{margin-bottom:.5rem}.role-info-card p{margin:0;font-size:.875rem;color:#cbd5e1;line-height:1.5}@media(max-width:768px){.admin-panel{margin:1rem auto}.admin-header h1{font-size:1.5rem}.users-table{font-size:.875rem}.users-table th,.users-table td{padding:.5rem}.role-actions{flex-direction:column}.admin-btn,.admin-btn-secondary{width:100%}.status-actions-grid{grid-template-columns:1fr}}.status-management-section{background:#1e293bb3;border:1px solid rgba(251,146,60,.3)}.status-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin-top:1rem}.status-action-card{padding:1rem;background:#0f172a99;border:1px solid rgba(148,163,184,.2);border-radius:8px}.status-action-card h3{margin:0 0 .5rem;color:#f8fafc;font-size:1rem}.status-action-card p{margin:0 0 1rem;color:#94a3b8;font-size:.875rem}.status-reason-input{width:100%;padding:.5rem;margin-bottom:.75rem;background:#1e293bcc;border:1px solid rgba(148,163,184,.3);border-radius:6px;color:#f8fafc;font-family:var(--font-body, "Inter", sans-serif);font-size:.875rem;resize:vertical}.status-reason-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.status-btn{width:100%;margin-top:.5rem}.status-btn-active{background:#22c55e4d;border:1px solid rgba(34,197,94,.5);color:#86efac}.status-btn-active:hover:not(:disabled){background:#22c55e66;box-shadow:0 2px 8px #22c55e4d}.status-btn-barred{background:#fbbf244d;border:1px solid rgba(251,191,36,.5);color:#fcd34d}.status-btn-barred:hover:not(:disabled){background:#fbbf2466;box-shadow:0 2px 8px #fbbf244d}.status-btn-banned{background:#ef44444d;border:1px solid rgba(239,68,68,.5);color:#fca5a5}.status-btn-banned:hover:not(:disabled){background:#ef444466;box-shadow:0 2px 8px #ef44444d}.status-btn-deleted{background:#64748b4d;border:1px solid rgba(100,116,139,.5);color:#cbd5e1}.status-btn-deleted:hover:not(:disabled){background:#64748b66;box-shadow:0 2px 8px #64748b4d}.status-history{margin-top:1.5rem;padding:1rem;background:#1e293b66;border:1px solid rgba(148,163,184,.2);border-radius:8px}.status-history h3{margin:0 0 .75rem;color:#f8fafc;font-size:1rem}.status-history p{margin:.5rem 0;color:#cbd5e1;font-size:.875rem}.warning-text{margin-top:.5rem;color:#fca5a5;font-size:.75rem;font-weight:600}.maintenance-controls{display:flex;flex-direction:column;gap:1.5rem}.maintenance-status{padding:1rem;background:#1e293b66;border:1px solid rgba(148,163,184,.2);border-radius:8px}.status-indicator{font-size:1.125rem;font-weight:600;margin-bottom:.75rem}.status-indicator.enabled{color:#fca5a5}.status-indicator.disabled{color:#86efac}.maintenance-info{margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(148,163,184,.15)}.maintenance-info p{margin:.5rem 0;color:#cbd5e1;font-size:.875rem}.maintenance-form{display:flex;flex-direction:column;gap:1rem}.maintenance-form label{font-weight:500;color:#f8fafc;font-size:.95rem}.maintenance-form textarea{background:#0f172a8c;border:1px solid rgba(148,163,184,.35);border-radius:8px;padding:.75rem;color:#f9fafb;font-family:inherit;font-size:.95rem;resize:vertical}.maintenance-form textarea:focus{outline:none;border-color:#60a5fa99}.maintenance-buttons{display:flex;gap:1rem}.toggle-control{display:flex;align-items:center;gap:1rem;padding:1rem 0}.toggle-switch{position:relative;display:inline-block;width:54px;height:28px;margin:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:#475569cc;transition:.3s;border-radius:28px;border:2px solid rgba(148,163,184,.3)}.toggle-slider:before{position:absolute;content:"";height:20px;width:20px;left:3px;bottom:2px;background-color:#cbd5e1;transition:.3s;border-radius:50%;box-shadow:0 2px 4px #0000004d}.toggle-switch input:checked+.toggle-slider{background:linear-gradient(135deg,#10b981,#059669);border-color:#10b98180}.toggle-switch input:checked+.toggle-slider:before{transform:translate(26px);background-color:#fff}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 0 3px #10b98133}.toggle-label{font-size:.95rem;color:#cbd5e1;font-weight:500}.info-box{background:#3b82f61a;border:1px solid rgba(96,165,250,.3);border-radius:8px;padding:1rem;color:#bfdbfe}.admin-tabs{display:flex;gap:.5rem;margin:1.5rem 0;padding:0;border-bottom:2px solid rgba(255,255,255,.1);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;touch-action:manipulation;scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.3) transparent}.admin-tabs::-webkit-scrollbar{height:6px}.admin-tabs::-webkit-scrollbar-track{background:transparent}.admin-tabs::-webkit-scrollbar-thumb{background:#94a3b84d;border-radius:3px}.admin-tabs::-webkit-scrollbar-thumb:hover{background:#94a3b880}.admin-tab{padding:.75rem 1.5rem;background:transparent;border:none;border-bottom:3px solid transparent;color:#94a3b8;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;position:relative;bottom:-2px;white-space:nowrap;flex-shrink:0}.admin-tab:hover{color:#cbd5e1;background:#ffffff0d}.admin-tab.active{color:#60a5fa;border-bottom-color:#3b82f6;background:#3b82f61a}.admin-tab:focus{outline:2px solid rgba(59,130,246,.5);outline-offset:2px}.games-history{padding:2rem;max-width:1200px;margin:0 auto}.games-history-header{margin-bottom:2rem}.games-history-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;gap:1rem}.games-history-header h2{font-size:2rem;font-weight:700;margin:0;color:var(--text-primary, #fff)}.games-history-actions{display:flex;align-items:center;gap:.75rem}.import-game-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--accent-color, #9c27b0);border:none;border-radius:6px;color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.import-game-button:hover:not(:disabled){background:var(--accent-hover, #7b1fa2);transform:translateY(-2px);box-shadow:0 4px 8px #9c27b04d}.import-game-button:disabled{opacity:.6;cursor:not-allowed}.delete-all-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--danger-color, #d32f2f);border:none;border-radius:6px;color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.delete-all-button:hover:not(:disabled){background:var(--danger-hover, #b71c1c);transform:translateY(-2px);box-shadow:0 4px 8px #d32f2f4d}.delete-all-button:disabled{opacity:.6;cursor:not-allowed}.delete-all-button .button-icon{font-size:1.25rem;line-height:1}.games-history-stats{display:flex;gap:2rem;flex-wrap:wrap}.games-history-stats .stat{font-size:.95rem;color:var(--text-secondary, #aaa)}.games-history-stats .stat strong{color:var(--text-primary, #fff);font-weight:600}.games-history-filters{display:flex;gap:2rem;margin-bottom:2rem;padding:1.5rem;background:var(--surface-2, rgba(255, 255, 255, .05));border-radius:8px;flex-wrap:wrap;align-items:center}.filter-group{display:flex;align-items:center;gap:1rem}.filter-group label{font-size:.9rem;font-weight:500;color:var(--text-secondary, #aaa)}.filter-button{padding:.5rem 1rem;background:var(--surface-3, rgba(255, 255, 255, .08));border:1px solid transparent;border-radius:4px;color:var(--text-secondary, #aaa);cursor:pointer;font-size:.875rem;transition:all .2s}.filter-button:hover{background:var(--surface-4, rgba(255, 255, 255, .12));color:var(--text-primary, #fff)}.filter-button.active{background:var(--primary-color, #4a90e2);color:#fff;border-color:var(--primary-color, #4a90e2)}.sort-select{padding:.5rem 1rem;background:var(--surface-3, rgba(255, 255, 255, .08));border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:4px;color:var(--text-primary, #fff);font-size:.875rem;cursor:pointer}.games-list{display:flex;flex-direction:column;gap:1rem}.game-item{display:flex;align-items:center;gap:1.5rem;padding:1.5rem;background:var(--surface-2, rgba(255, 255, 255, .05));border-radius:8px;border-left:4px solid transparent;transition:all .2s}.game-item:hover{background:var(--surface-3, rgba(255, 255, 255, .08));transform:translate(4px)}.game-item.win{border-left-color:var(--success-color, #4caf50)}.game-item.loss{border-left-color:var(--error-color, #f44336)}.game-item.draw{border-left-color:var(--warning-color, #ff9800)}.game-item.in-progress{border-left-color:var(--info-color, #2196f3);background:linear-gradient(90deg,rgba(33,150,243,.1) 0%,var(--surface-2, rgba(255, 255, 255, .05)) 100%)}.game-result{flex-shrink:0}.result-badge{display:inline-block;padding:.375rem .75rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.result-badge.win{background:var(--success-color, #4caf50);color:#fff}.result-badge.loss{background:var(--error-color, #f44336);color:#fff}.result-badge.draw{background:var(--warning-color, #ff9800);color:#fff}.result-badge.in-progress{background:var(--info-color, #2196f3);color:#fff;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.game-info{flex:1;min-width:0}.game-meta{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.875rem;color:var(--text-secondary, #aaa)}.game-date{font-weight:500}.game-separator{opacity:.5}.game-stats{display:flex;gap:1.5rem;flex-wrap:wrap}.stat-item{display:flex;align-items:center;gap:.375rem;font-size:.875rem}.stat-label{color:var(--text-tertiary, #777)}.stat-value{color:var(--text-primary, #fff);font-weight:500}.game-actions{flex-shrink:0}.view-replay-button{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--primary-color, #4a90e2);border:none;border-radius:4px;color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.view-replay-button:hover{background:var(--primary-hover, #357abd);transform:translateY(-2px)}.resume-game-button{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--success-color, #4caf50);border:none;border-radius:4px;color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.resume-game-button:hover{background:var(--success-hover, #388e3c);transform:translateY(-2px)}.delete-save-button{padding:.5rem .75rem;background:var(--error-color, #f44336);border:none;border-radius:4px;color:#fff;font-size:1rem;font-weight:700;cursor:pointer;transition:all .2s;margin-left:.5rem}.delete-save-button:hover{background:var(--error-hover, #d32f2f);transform:translateY(-2px)}.export-game-button{padding:.5rem .75rem;background:var(--surface-3, rgba(255, 255, 255, .1));border:1px solid var(--border-color, rgba(255, 255, 255, .2));border-radius:4px;color:var(--text-primary, #fff);font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.export-game-button:hover{background:var(--surface-4, rgba(255, 255, 255, .15));transform:translateY(-2px);border-color:var(--accent-color, #9c27b0)}.game-actions{display:flex;align-items:center;gap:.5rem}.button-icon{font-size:.75rem}.games-history-stats .stat.highlight{color:var(--info-color, #2196f3);font-weight:600}.games-history-stats .stat.highlight strong{color:var(--info-color, #2196f3)}.games-pagination{display:flex;align-items:center;justify-content:center;gap:2rem;margin-top:2rem;padding:1rem}.pagination-button{padding:.5rem 1rem;background:var(--surface-3, rgba(255, 255, 255, .08));border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:4px;color:var(--text-primary, #fff);font-size:.875rem;cursor:pointer;transition:all .2s}.pagination-button:hover:not(:disabled){background:var(--surface-4, rgba(255, 255, 255, .12))}.pagination-button:disabled{opacity:.5;cursor:not-allowed}.pagination-info{font-size:.875rem;color:var(--text-secondary, #aaa)}.games-history-loading,.games-history-error,.games-history-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.games-history-loading .spinner{width:48px;height:48px;border:4px solid var(--surface-3, rgba(255, 255, 255, .1));border-top-color:var(--primary-color, #4a90e2);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1rem}.games-history-loading p,.games-history-error p,.games-history-empty p{color:var(--text-secondary, #aaa);font-size:1rem}.retry-button,.clear-filter-button{margin-top:1rem;padding:.75rem 1.5rem;background:var(--primary-color, #4a90e2);border:none;border-radius:4px;color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.retry-button:hover,.clear-filter-button:hover{background:var(--primary-hover, #357abd)}@media(max-width:768px){.games-history{padding:1rem}.games-history-filters{flex-direction:column;align-items:stretch;gap:1rem}.filter-group{flex-direction:column;align-items:stretch}.game-item{flex-direction:column;align-items:stretch;gap:1rem}.game-actions{align-self:stretch}.view-replay-button{width:100%;justify-content:center}}.custom-scheme-creator{padding:24px;max-width:600px;margin:0 auto}.custom-scheme-creator h3{margin:0 0 24px;font-size:1.5rem;font-weight:600;color:var(--theme-accent, #60A5FA);text-align:center}.creator-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:.875rem;font-weight:500;color:#ffffffe6;display:flex;flex-direction:column;gap:4px}.color-hint{font-size:.75rem;font-weight:400;color:#ffffff80}.form-group input[type=text]{padding:10px 12px;border:1px solid rgba(255,255,255,.15);border-radius:8px;background:#0000004d;color:#fff;font-size:.875rem;transition:all .2s ease}.form-group input[type=text]:focus{outline:none;border-color:var(--theme-accent, #60A5FA);box-shadow:0 0 0 3px #60a5fa1a}.form-group input[type=text]::placeholder{color:#ffffff4d}.color-pickers{display:grid;grid-template-columns:1fr 1fr;gap:16px}.color-input-group{display:flex;gap:8px;align-items:center}.color-input-group input[type=color]{width:60px;height:42px;border:2px solid rgba(255,255,255,.15);border-radius:8px;cursor:pointer;background:#0000004d;transition:all .2s ease}.color-input-group input[type=color]:hover{border-color:var(--theme-accent, #60A5FA)}.color-input-group input[type=text]{flex:1;font-family:Monaco,Courier New,monospace;text-transform:uppercase}.error-list{padding:12px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px}.error-message{color:#fca5a5;font-size:.875rem;padding:4px 0}.preview-section{margin-top:8px}.preview-section h4{margin:0 0 12px;font-size:1rem;font-weight:500;color:#ffffffe6}.preview-container{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:20px;background:#0003;border-radius:12px}.preview-card{padding:16px;border-radius:12px;transition:all .3s ease;position:relative;min-height:120px;display:flex;flex-direction:column;justify-content:space-between}.preview-card.inactive{opacity:.7}.preview-label{font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.preview-indicator{width:100%;height:40px;border-radius:8px;margin-top:12px;transition:all .3s ease}.creator-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1)}.creator-actions button{padding:10px 24px;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.btn-cancel{background:#ffffff1a;color:#ffffffe6}.btn-cancel:hover{background:#ffffff26}.btn-save{background:var(--theme-accent, #60A5FA);color:#0f172a}.btn-save:hover{background:var(--theme-primary, #3B82F6);transform:translateY(-1px);box-shadow:0 4px 12px #60a5fa4d}.image-input-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.btn-upload{padding:10px 16px;border:1px solid rgba(255,255,255,.15);border-radius:8px;background:#60a5fa1a;color:var(--theme-accent, #60A5FA);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-upload:hover:not(:disabled){background:#60a5fa33;border-color:var(--theme-accent, #60A5FA)}.btn-upload:disabled{opacity:.5;cursor:not-allowed}.or-divider{color:#fff6;font-size:.75rem;padding:0 4px}.image-input-group input[type=text]{flex:1;min-width:200px}.btn-clear-image{padding:8px 12px;border:1px solid rgba(239,68,68,.3);border-radius:8px;background:#ef44441a;color:#fca5a5;font-size:.875rem;cursor:pointer;transition:all .2s ease}.btn-clear-image:hover{background:#ef444433;border-color:#ef444480}.image-preview{margin-top:12px;border-radius:8px;overflow:hidden;border:2px solid rgba(255,255,255,.15);max-width:100%;max-height:200px}.image-preview img{width:100%;height:auto;display:block;object-fit:cover}@media(max-width:640px){.custom-scheme-creator{padding:16px}.color-pickers,.preview-container{grid-template-columns:1fr}.image-input-group{flex-direction:column;align-items:stretch}.image-input-group input[type=text]{min-width:100%}.or-divider{text-align:center}}.theme-share-overlay{position:fixed;inset:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:100001;padding:20px}.theme-share-dialog{background:linear-gradient(135deg,#0f172af2,#1e293bf2);border:1px solid rgba(255,255,255,.1);border-radius:16px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000080}.dialog-header{display:flex;justify-content:space-between;align-items:center;padding:24px 24px 16px;border-bottom:1px solid rgba(255,255,255,.1)}.dialog-header h3{margin:0;font-size:1.5rem;font-weight:600;color:var(--theme-accent, #60A5FA)}.close-btn{background:none;border:none;color:#fff9;font-size:2rem;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.close-btn:hover{color:#fff;background:#ffffff1a}.tabs{display:flex;padding:0 24px;gap:8px;border-bottom:1px solid rgba(255,255,255,.1)}.tab{padding:12px 20px;background:none;border:none;color:#fff9;font-size:.875rem;font-weight:500;cursor:pointer;position:relative;transition:all .2s ease}.tab:hover{color:#ffffffe6}.tab.active{color:var(--theme-accent, #60A5FA)}.tab.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--theme-accent, #60A5FA)}.export-section,.import-section{padding:24px;display:flex;flex-direction:column;gap:24px}.current-theme-info{padding:16px;background:#0003;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.current-theme-info h4{margin:0 0 12px;font-size:.875rem;font-weight:600;color:#ffffffe6;text-transform:uppercase;letter-spacing:.05em}.theme-details{display:flex;flex-direction:column;gap:8px}.detail-row{display:flex;justify-content:space-between;align-items:center}.detail-row .label{color:#fff9;font-size:.875rem}.detail-row .value{color:#fff;font-weight:500;font-size:.875rem}.btn-export,.btn-import,.btn-download{padding:12px 24px;background:var(--theme-accent, #60A5FA);color:#0f172a;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-export:hover,.btn-import:hover,.btn-download:hover{background:var(--theme-primary, #3B82F6);transform:translateY(-1px);box-shadow:0 4px 12px #60a5fa4d}.btn-import:disabled{opacity:.5;cursor:not-allowed;transform:none}.share-code-section{display:flex;flex-direction:column;gap:8px}.share-code-section label{font-size:.875rem;font-weight:500;color:#ffffffe6}.code-display{display:flex;gap:8px;align-items:stretch}.code-display code{flex:1;padding:12px;background:#0000004d;border:1px solid rgba(255,255,255,.15);border-radius:8px;font-family:Monaco,Courier New,monospace;font-size:.75rem;color:#60a5fa;word-break:break-all;max-height:120px;overflow-y:auto}.btn-copy{padding:8px 16px;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.15);border-radius:8px;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-copy:hover{background:#ffffff26}.hint{font-size:.75rem;color:#ffffff80;margin:0}.download-section{display:flex;flex-direction:column;gap:8px}.import-methods{display:flex;flex-direction:column;gap:16px}.method{display:flex;flex-direction:column;gap:8px}.method h4{margin:0;font-size:.875rem;font-weight:600;color:#ffffffe6}.method textarea{padding:12px;background:#0000004d;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:#fff;font-family:Monaco,Courier New,monospace;font-size:.75rem;resize:vertical;transition:all .2s ease}.method textarea:focus{outline:none;border-color:var(--theme-accent, #60A5FA);box-shadow:0 0 0 3px #60a5fa1a}.method-divider{text-align:center;color:#fff6;font-size:.875rem;font-weight:500;position:relative;margin:8px 0}.method-divider:before,.method-divider:after{content:"";position:absolute;top:50%;width:calc(50% - 30px);height:1px;background:#ffffff1a}.method-divider:before{left:0}.method-divider:after{right:0}.file-upload-btn{display:inline-block;padding:12px 24px;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.15);border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-align:center}.file-upload-btn:hover{background:#ffffff26}.error-message{padding:12px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#fca5a5;font-size:.875rem}@media(max-width:640px){.theme-share-dialog{max-width:100%;max-height:100vh;border-radius:0}.dialog-header,.export-section,.import-section{padding:16px}}.theme-dialog-overlay{position:fixed;inset:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);overscroll-behavior:contain;touch-action:none}.theme-dialog{background:linear-gradient(145deg,var(--theme-bg-from, rgba(30, 41, 59, .98)),var(--theme-bg-to, rgba(15, 23, 42, .98)));border:1px solid var(--theme-primary-light, rgba(148, 163, 184, .2));border-radius:1rem;box-shadow:0 20px 60px #00000080,0 0 0 1px var(--theme-primary-light, rgba(148, 163, 184, .1));max-width:700px;width:90%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;touch-action:auto;overscroll-behavior:contain}.theme-dialog-header{padding:1.5rem 2rem;border-bottom:1px solid var(--theme-primary-light, rgba(148, 163, 184, .1));background:linear-gradient(180deg,var(--theme-primary-light, rgba(59, 130, 246, .05)),transparent);display:flex;align-items:center;justify-content:space-between}.theme-dialog-header h2{margin:0;font-size:1.5rem;font-weight:600;color:var(--theme-accent, rgba(248, 250, 252, 1))}.theme-dialog-close{background:transparent;border:none;color:#cbd5e1b3;font-size:1.5rem;cursor:pointer;padding:.25rem;line-height:1;transition:color .2s ease}.theme-dialog-close:hover{color:#f8fafc}.theme-dialog-body{padding:2rem;overflow-y:auto;flex:1}.theme-section{margin-bottom:2rem}.theme-section:last-child{margin-bottom:0}.theme-section h3{margin:0 0 1rem;font-size:1.1rem;font-weight:600;color:var(--theme-accent, rgba(248, 250, 252, 1))}.theme-section-description{margin:0 0 1.5rem;font-size:.95rem;color:#cbd5e1cc}.mode-toggle-container{display:flex;gap:1rem}.mode-toggle-button{flex:1;padding:1rem 1.5rem;border-radius:.75rem;border:2px solid var(--theme-primary-light, rgba(148, 163, 184, .2));background:#47556933;color:#cbd5e1;display:flex;align-items:center;gap:.75rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.mode-toggle-button:hover{background:#4755694d;border-color:#94a3b84d;transform:translateY(-1px)}.mode-toggle-button.active{background:var(--battlefield-turn-owner, linear-gradient(135deg, rgba(59, 130, 246, .3), rgba(37, 99, 235, .3)));border-color:var(--theme-accent, rgba(96, 165, 250, .5));box-shadow:0 4px 12px var(--theme-shadow, rgba(59, 130, 246, .3))}.mode-icon{font-size:1.5rem}.mode-label{flex:1;text-align:left}.theme-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:2px solid var(--theme-primary-light, rgba(148, 163, 184, .1))}.theme-tab{padding:.75rem 1.5rem;background:transparent;border:none;border-bottom:2px solid transparent;color:#cbd5e1b3;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-bottom:-2px}.theme-tab:hover{color:#f8fafc;background:#47556933}.theme-tab.active{color:var(--theme-accent, rgba(96, 165, 250, 1));border-bottom-color:var(--theme-accent, rgba(96, 165, 250, 1))}.theme-tab-content{min-height:300px}.color-schemes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem}.color-scheme-card{padding:1rem;border-radius:.75rem;border:2px solid var(--theme-primary-light, rgba(148, 163, 184, .2));background:#47556933;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;gap:.75rem;position:relative}.color-scheme-card:hover{border-color:var(--theme-primary-hover, rgba(148, 163, 184, .4));transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.color-scheme-card.selected{border-color:var(--theme-accent, rgba(96, 165, 250, .6));background:var(--theme-primary-light, rgba(59, 130, 246, .2));box-shadow:0 4px 12px var(--theme-shadow, rgba(59, 130, 246, .3))}.color-scheme-preview{display:flex;gap:.5rem;height:60px}.color-preview-box{flex:1;border-radius:.5rem;border:1px solid var(--theme-primary-light, rgba(148, 163, 184, .2))}.color-scheme-name{font-size:.9rem;font-weight:600;color:#f8fafc;text-align:center}.selected-badge{position:absolute;top:.5rem;right:.5rem;width:24px;height:24px;border-radius:50%;background:var(--theme-accent, rgba(96, 165, 250, 1));color:#fff;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700}.background-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.background-card{padding:0;border-radius:.75rem;border:2px solid var(--theme-primary-light, rgba(148, 163, 184, .2));background:#47556933;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;overflow:hidden;position:relative}.background-card:not(.locked):hover{border-color:var(--theme-primary-hover, rgba(148, 163, 184, .4));transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.background-card.selected{border-color:var(--theme-accent, rgba(96, 165, 250, .6));box-shadow:0 4px 12px var(--theme-shadow, rgba(59, 130, 246, .3))}.background-card.locked{opacity:.6;cursor:not-allowed}.background-preview,.background-preview-default{width:100%;height:140px;background-size:cover;background-position:center;position:relative}.background-preview-default{background:#4755694d;display:flex;align-items:center;justify-content:center;color:#cbd5e1b3;font-size:1.5rem;font-weight:600}.locked-overlay{position:absolute;inset:0;background:#000000b3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;color:#f8fafc}.lock-icon{font-size:2rem}.unlock-text{font-size:.75rem;text-align:center;padding:0 1rem}.background-name{padding:.75rem;font-size:.9rem;font-weight:600;color:#f8fafc;text-align:center;background:#1e293b80}.theme-dialog-footer{padding:1.5rem 2rem;border-top:1px solid var(--theme-primary-light, rgba(148, 163, 184, .1));background:linear-gradient(180deg,transparent,var(--theme-primary-light, rgba(59, 130, 246, .03)));display:flex;justify-content:flex-end}.theme-dialog-button{padding:.75rem 1.5rem;border-radius:.5rem;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.close-button{background:var(--battlefield-turn-owner, linear-gradient(135deg, rgba(59, 130, 246, .9), rgba(37, 99, 235, .9)));color:#fff;border:1px solid var(--theme-accent, rgba(96, 165, 250, .3))}.close-button:hover{background:var(--battlefield-active, linear-gradient(135deg, rgba(96, 165, 250, 1), rgba(59, 130, 246, 1)));box-shadow:0 4px 12px var(--theme-shadow, rgba(59, 130, 246, .4));transform:translateY(-1px)}@media(max-width:640px){.theme-dialog{width:95%;max-height:95vh}.color-schemes-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.background-grid{grid-template-columns:1fr}.theme-tabs{flex-direction:column;gap:0;border-bottom:none}.theme-tab{border-bottom:1px solid rgba(148,163,184,.1);border-right:none;margin-bottom:0;text-align:left}.theme-tab.active{border-bottom-color:#94a3b81a;border-left:3px solid rgba(96,165,250,1)}}.custom-section-content{display:flex;flex-direction:column;gap:20px}.custom-schemes-list{display:flex;flex-direction:column;gap:12px}.custom-schemes-list h4{margin:0;font-size:.875rem;font-weight:600;color:#ffffffe6;text-transform:uppercase;letter-spacing:.05em}.empty-state{padding:40px 20px;text-align:center;color:#ffffff80}.empty-state p{margin:0;font-size:.875rem}.btn-create-custom{padding:12px 24px;background:var(--theme-accent, #60A5FA);color:#0f172a;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-create-custom:hover{background:var(--theme-primary, #3B82F6);transform:translateY(-1px);box-shadow:0 4px 12px #60a5fa4d}.share-section-content{display:flex;flex-direction:column;gap:24px}.btn-share-action{padding:16px 24px;background:linear-gradient(135deg,var(--theme-accent, #60A5FA),var(--theme-primary, #3B82F6));color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:8px}.btn-share-action:hover{transform:translateY(-2px);box-shadow:0 8px 20px #60a5fa66}.share-info{padding:20px;background:#0003;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.share-info h4{margin:0 0 12px;font-size:.875rem;font-weight:600;color:#ffffffe6;text-transform:uppercase;letter-spacing:.05em}.share-info ul{margin:0;padding:0 0 0 20px;color:#ffffffb3;font-size:.875rem;line-height:1.6}.share-info li{margin-bottom:6px}.custom-scheme-card{position:relative;display:flex;flex-direction:column}.scheme-preview-button{background:none;border:none;padding:0;cursor:pointer;flex:1;display:flex;flex-direction:column;width:100%}.scheme-actions{display:flex;gap:4px;padding:8px;background:#0000004d;border-top:1px solid rgba(255,255,255,.1)}.btn-scheme-edit,.btn-scheme-delete{flex:1;padding:6px 8px;background:#ffffff1a;border:1px solid rgba(255,255,255,.15);border-radius:6px;font-size:.875rem;cursor:pointer;transition:all .2s ease}.btn-scheme-edit:hover{background:#60a5fa33;border-color:var(--theme-accent, rgba(96, 165, 250, .6))}.btn-scheme-delete:hover{background:#ef444433;border-color:#ef444499}.custom-dialog-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.custom-dialog{background:linear-gradient(135deg,var(--theme-bg-from, #1e293b),var(--theme-bg-to, #0f172a));border:1px solid var(--theme-accent, rgba(96, 165, 250, .3));border-radius:16px;padding:32px;max-width:440px;width:90%;box-shadow:0 20px 60px #00000080}.custom-dialog h3{margin:0 0 16px;font-size:1.5rem;font-weight:600;color:var(--theme-accent, #60A5FA)}.custom-dialog p{margin:0 0 12px;color:#ffffffe6;line-height:1.6}.custom-dialog .warning-text{color:#fca5a5;font-size:.875rem;margin-bottom:24px}.custom-dialog-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.custom-dialog-actions .btn-cancel{padding:10px 24px;background:#ffffff1a;color:#ffffffe6;border:1px solid rgba(255,255,255,.15);border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.custom-dialog-actions .btn-cancel:hover{background:#ffffff26}.custom-dialog-actions .btn-delete{padding:10px 24px;background:#ef4444cc;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.custom-dialog-actions .btn-delete:hover{background:#ef4444;transform:translateY(-1px);box-shadow:0 4px 12px #ef444466}@media(max-width:640px){.theme-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.theme-tab{white-space:nowrap;font-size:.75rem}}.profile-page{min-height:100vh;padding:2rem;color:#e8e8e8}.profile-container{max-width:1200px;margin:0 auto}.profile-loading,.profile-error{text-align:center;padding:3rem;font-size:1.2rem;color:#aaa}.profile-error{color:#ff6b6b}.profile-header{display:flex;align-items:center;justify-content:space-between;margin-top:4rem;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid rgba(255,255,255,.1)}.profile-header h1{font-size:2.5rem;margin:0;background:linear-gradient(135deg,var(--theme-accent, #667eea) 0%,var(--theme-primary, #764ba2) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.profile-header-actions{display:flex;align-items:center;gap:1rem}.theme-indicator-button{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.25rem;border-radius:12px;border:2px solid rgba(148,163,184,.3);background:#4755694d;color:#f8fafc;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease}.theme-indicator-button:hover{background:#47556980;border-color:var(--turn-indicator-active-border, rgba(148, 163, 184, .5));transform:translateY(-1px);box-shadow:0 4px 12px var(--turn-indicator-active-shadow, rgba(0, 0, 0, .3))}.theme-color-preview{width:32px;height:32px;border-radius:8px;border:2px solid rgba(148,163,184,.3)}.theme-button-label{font-weight:600}@media(max-width:768px){.profile-header{flex-direction:column;align-items:flex-start;gap:1rem}.profile-header-actions{width:100%;justify-content:space-between}.theme-indicator-button{flex:1}}.role-badge{padding:.5rem 1rem;border-radius:20px;font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.role-badge-admin{background:linear-gradient(135deg,#ff6b6b,#ff4757);color:#fff}.role-badge-super{background:linear-gradient(135deg,var(--theme-primary, #5f27cd),var(--theme-primary-hover, #341f97));color:#fff}.role-badge-tester,.role-badge-player{background:linear-gradient(135deg,var(--theme-accent, #48dbfb),var(--theme-primary, #0abde3));color:#fff}.profile-section{background:var(--theme-primary-light, rgba(255, 255, 255, .05));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--turn-indicator-active-border, rgba(255, 255, 255, .1));border-radius:12px;padding:2rem;margin-bottom:2rem}.profile-section h2{margin:0 0 1.5rem;font-size:1.5rem;color:#fff}.section-header-with-toggle{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.btn-toggle{background:transparent;border:none;color:#667eea;font-size:1.2rem;cursor:pointer;padding:.5rem;transition:transform .2s}.btn-toggle:hover{transform:scale(1.1)}.profile-basic-content{display:grid;grid-template-columns:auto 1fr;gap:2rem;align-items:start}.profile-avatar-section{display:flex;flex-direction:column;align-items:center;gap:1rem}.profile-avatar-display{width:120px;height:120px;border-radius:50%;background:linear-gradient(135deg,var(--theme-primary, #667eea) 0%,var(--theme-primary-hover, #764ba2) 100%);display:flex;align-items:center;justify-content:center;font-size:4rem;border:3px solid rgba(255,255,255,.2);overflow:hidden}.profile-avatar-display .avatar-image{width:100%;height:100%;object-fit:cover;border-radius:50%}.profile-avatar-display .avatar-fallback{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:4rem}.avatar-emoji{font-size:inherit}.avatar-picker{width:100%}.avatar-picker-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.avatar-picker-label{margin:0;font-size:.9rem;color:#aaa}.avatar-picker-note{margin:.5rem 0;padding:.5rem;background:#4a90e21a;border-left:3px solid rgba(74,144,226,.5);font-size:.85rem;color:#aaa;border-radius:4px}.avatar-picker-buttons{display:flex;gap:.5rem}.btn-reset-avatar{padding:.25rem .75rem;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:6px;color:#ff6b6b;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s;text-transform:uppercase;letter-spacing:.5px}.btn-refresh-photo{padding:.25rem .75rem;background:#4a90e21a;border:1px solid rgba(74,144,226,.3);border-radius:6px;color:#4a90e2;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s;letter-spacing:.5px;white-space:nowrap}.btn-refresh-photo:hover{background:#4a90e233;border-color:#4a90e280;transform:translateY(-1px)}.btn-reset-avatar:hover{background:#ff6b6b33;border-color:#ff6b6b80;transform:translateY(-1px)}.avatar-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}.avatar-option{aspect-ratio:1;background:#ffffff0d;border:2px solid transparent;border-radius:8px;font-size:2rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.avatar-option:hover{background:#ffffff1a;border-color:var(--theme-accent, rgba(102, 126, 234, .5))}.avatar-option.selected{background:var(--theme-primary-light, rgba(102, 126, 234, .2));border-color:var(--theme-primary, #667eea);box-shadow:0 0 10px var(--theme-shadow, rgba(102, 126, 234, .5))}.profile-info{display:flex;flex-direction:column;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.9rem;font-weight:600;color:#aaa;text-transform:uppercase;letter-spacing:.5px}.form-group input{padding:.75rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff;font-size:1rem}.form-group input:focus{outline:none;border-color:var(--theme-accent, #667eea);box-shadow:0 0 0 3px var(--theme-primary-light, rgba(102, 126, 234, .1))}.form-group input.disabled-input{opacity:.5;cursor:not-allowed}.form-group small{font-size:.8rem;color:#888}.info-row{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid rgba(255,255,255,.05)}.info-label{font-weight:600;color:#aaa}.info-value{color:#fff}.btn{padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;text-transform:uppercase;letter-spacing:.5px}.btn-primary{background:linear-gradient(135deg,var(--theme-primary, #667eea) 0%,var(--theme-primary-hover, #764ba2) 100%)!important;color:#fff!important;border:2px solid var(--theme-accent, rgba(102, 126, 234, .4))!important;box-shadow:0 4px 12px var(--theme-shadow, rgba(0, 0, 0, .3))!important}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px var(--theme-shadow, rgba(102, 126, 234, .5))}.btn-secondary{background:#ffffff1a;color:#fff;border:2px solid rgba(255,255,255,.2)}.btn-secondary:hover:not(:disabled){background:#ffffff26;border-color:#ffffff4d;transform:translateY(-1px)}.btn-danger{background:linear-gradient(135deg,var(--theme-accent, #ff6b6b),#ee5a6f);color:#fff}.btn-danger:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #ff6b6b66}.btn:disabled{opacity:.5;cursor:not-allowed}.profile-actions{display:flex;gap:1rem;margin-top:1rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.stat-card{background:linear-gradient(135deg,#667eea1a,#764ba21a);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:1.5rem;text-align:center;transition:transform .2s}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #667eea33}.stat-value{font-size:3rem;font-weight:700;background:linear-gradient(135deg,var(--theme-primary, #667eea) 0%,var(--theme-primary-hover, #764ba2) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem}.stat-label{font-size:.9rem;color:#aaa;text-transform:uppercase;letter-spacing:1px}.api-key-content{margin-top:1rem}.info-banner{padding:1rem;border-radius:8px;margin-bottom:1rem;display:flex;gap:1rem;align-items:start}.info-banner.info-success{background:#2ed5731a;border:1px solid rgba(46,213,115,.3)}.info-banner.info-warning{background:#ff9f431a;border:1px solid rgba(255,159,67,.3)}.info-banner.info-note{background:#3498db1a;border:1px solid rgba(52,152,219,.3)}.banner-icon{font-size:1.5rem}.info-banner strong{display:block;margin-bottom:.5rem;color:#fff}.info-banner p{margin:0;color:#ccc;line-height:1.5}.info-banner a{color:#667eea;text-decoration:underline}.api-key-manager{margin-top:1rem}.api-key-input-group{display:flex;gap:.5rem}.api-key-input{flex:1;font-family:Courier New,monospace}.btn-icon{padding:.75rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;font-size:1.2rem;cursor:pointer;transition:all .2s}.btn-icon:hover{background:#ffffff26}.api-key-actions{display:flex;gap:1rem;margin-top:1rem}.api-key-status{display:flex;flex-direction:column;gap:1rem}.no-matches{text-align:center;padding:2rem;color:#888}.match-list{display:flex;flex-direction:column;gap:1rem}.match-card{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-left:4px solid;border-radius:8px;padding:1rem;transition:transform .2s,box-shadow .2s}.match-card:hover{transform:translate(4px);box-shadow:0 4px 12px #0000004d}.match-card.match-win{border-left-color:#2ecc71}.match-card.match-loss{border-left-color:#e74c3c}.match-card.match-draw{border-left-color:#f39c12}.match-header{display:flex;align-items:center;gap:1rem;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.05)}.match-result-icon{font-size:1.5rem}.match-result-text{font-weight:700;font-size:1.1rem}.match-win .match-result-text{color:#2ecc71}.match-loss .match-result-text{color:#e74c3c}.match-draw .match-result-text{color:#f39c12}.match-mode{margin-left:auto;padding:.25rem .75rem;background:#ffffff1a;border-radius:12px;font-size:.8rem;text-transform:uppercase}.match-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.5rem;margin-bottom:.75rem}.match-detail{display:flex;flex-direction:column;gap:.25rem}.detail-label{font-size:.8rem;color:#888;text-transform:uppercase;letter-spacing:.5px}.detail-value{color:#fff}.match-date{font-size:.8rem;color:#666;text-align:right}@media(max-width:768px){.profile-page{padding:1rem}.profile-header h1{font-size:1.8rem}.profile-basic-content{grid-template-columns:1fr;text-align:center}.profile-avatar-section{align-items:center}.stats-grid{grid-template-columns:repeat(2,1fr)}.match-details{grid-template-columns:1fr}.profile-actions,.api-key-actions{flex-direction:column}.btn{width:100%}}.profile-progress{margin-top:2rem}.progress-content{display:flex;flex-direction:column;gap:1.5rem}.progress-content .btn-danger{align-self:flex-start;min-width:200px}.info-banner.info-warning{background:#ffc1071a;border-left-color:#ffc107}.info-banner.info-warning .banner-icon{color:#ffc107}.leaderboard-container{max-width:1400px;margin:0 auto;padding:2rem;color:#e0e0e0}.leaderboard-header{text-align:center;margin-top:4rem;margin-bottom:3rem}.leaderboard-header h1{font-size:3rem;margin-bottom:.5rem;background:linear-gradient(135deg,gold,#ffed4e);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.leaderboard-subtitle{font-size:1.1rem;color:#b0b0b0}.global-stats-section{margin-bottom:3rem}.global-stats-section h2{font-size:1.5rem;margin-bottom:1rem;color:#fff}.global-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.global-stat-card{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:1.5rem;text-align:center;transition:all .3s ease}.global-stat-card:hover{background:#ffffff14;transform:translateY(-2px);box-shadow:0 8px 16px #0000004d}.stat-icon{font-size:2.5rem;margin-bottom:.5rem}.stat-value{font-size:2rem;font-weight:700;color:gold;margin-bottom:.25rem}.stat-label{font-size:.9rem;color:#b0b0b0;text-transform:uppercase;letter-spacing:.5px}.leaderboard-controls{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:1.5rem;margin-bottom:2rem}.control-group{margin-bottom:1.5rem}.control-group:last-child{margin-bottom:0}.control-group label{display:block;font-size:.9rem;color:#b0b0b0;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.75rem}.button-group{display:flex;gap:.5rem;flex-wrap:wrap}.button-group button{padding:.75rem 1.5rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#e0e0e0;cursor:pointer;font-size:.95rem;transition:all .3s ease}.button-group button:hover{background:#ffffff1a;border-color:#fff3}.button-group button.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:transparent;color:#fff;font-weight:600}.leaderboard-content{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:12px;overflow:hidden}.loading-state,.empty-state{text-align:center;padding:4rem 2rem;color:#b0b0b0}.spinner{width:50px;height:50px;border:4px solid rgba(255,255,255,.1);border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.empty-state p{font-size:1.1rem;margin:.5rem 0}.leaderboard-table-container{overflow-x:auto;touch-action:manipulation}.leaderboard-table{width:100%;border-collapse:collapse}.leaderboard-table thead{background:#ffffff0d;border-bottom:2px solid rgba(255,255,255,.1)}.leaderboard-table th{padding:1rem;text-align:left;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;color:#b0b0b0;font-weight:600}.leaderboard-table tbody tr{border-bottom:1px solid rgba(255,255,255,.05);transition:all .3s ease}.leaderboard-table tbody tr:hover{background:#ffffff0d}.leaderboard-table tbody tr.rank-1{background:linear-gradient(90deg,rgba(255,215,0,.1) 0%,transparent 100%)}.leaderboard-table tbody tr.rank-2{background:linear-gradient(90deg,rgba(192,192,192,.1) 0%,transparent 100%)}.leaderboard-table tbody tr.rank-3{background:linear-gradient(90deg,rgba(205,127,50,.1) 0%,transparent 100%)}.leaderboard-table td{padding:1rem;font-size:.95rem}.rank-column{width:80px;text-align:center}.rank-display{font-size:1.5rem;font-weight:700}.player-column{min-width:200px}.player-info{display:flex;align-items:center;gap:.75rem}.leaderboard-avatar-emoji{width:40px;height:40px;font-size:24px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border-radius:50%;border:2px solid rgba(255,255,255,.1)}.leaderboard-avatar-image{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.1)}.leaderboard-avatar-placeholder{width:40px;height:40px;font-size:20px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border-radius:50%;border:2px solid rgba(255,255,255,.1);color:#666}.player-name{font-weight:500;color:#e0e0e0}.stat-column{min-width:120px;text-align:center}.stat-column strong{font-size:1.1rem;color:gold}.games-column,.winrate-column,.streak-column{text-align:center}.winrate{padding:.25rem .75rem;border-radius:12px;font-weight:600;font-size:.9rem}.winrate.high{background:#4caf5033;color:#81c784}.winrate.medium{background:#ffc10733;color:#ffd54f}.winrate.low{background:#f4433633;color:#e57373}.win-streak{color:#ff6b6b;font-weight:600}.no-streak{color:#666}@media(max-width:768px){.leaderboard-container{padding:1rem}.leaderboard-header h1{font-size:2rem}.global-stats-grid{grid-template-columns:repeat(2,1fr)}.button-group{flex-direction:column}.button-group button{width:100%}.leaderboard-table th,.leaderboard-table td{padding:.75rem .5rem;font-size:.85rem}.player-name{font-size:.9rem}}.replay-viewer-container{width:100%;height:100%;display:flex;flex-direction:column}.replay-viewer-header{position:fixed;top:80px;left:0;right:0;z-index:100;padding:1rem 2rem;background:linear-gradient(to bottom,var(--surface-1, rgba(0, 0, 0, .95)) 0%,var(--surface-1, rgba(0, 0, 0, .9)) 80%,transparent 100%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.replay-info{display:flex;align-items:center;gap:1rem;max-width:1400px;margin:0 auto}.replay-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--primary-color, #4a90e2);color:#fff;border-radius:4px;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.replay-badge:before{content:"▶";font-size:.75rem}.replay-meta{font-size:.875rem;color:var(--text-secondary, #aaa)}.replay-loading,.replay-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;padding:2rem;text-align:center}.replay-loading .spinner{width:48px;height:48px;border:4px solid var(--surface-3, rgba(255, 255, 255, .1));border-top-color:var(--primary-color, #4a90e2);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1rem}.replay-loading p,.replay-error p{color:var(--text-secondary, #aaa);font-size:1rem;margin:.5rem 0}.replay-error h2{color:var(--text-primary, #fff);font-size:1.5rem;margin:0 0 1rem}.back-button{margin-top:1.5rem;padding:.75rem 1.5rem;background:var(--primary-color, #4a90e2);border:none;border-radius:4px;color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.back-button:hover{background:var(--primary-hover, #357abd)}.game-board-setup{padding:0;max-height:70vh;overflow-y:auto}.setup-section{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-color, #334155)}.setup-section:last-child{border-bottom:none}.setup-section h3{margin:0 0 1rem;font-size:1.1rem;color:var(--text-primary, #f8fafc);font-weight:600}.zone-hint{margin:0 0 1rem;font-size:.9rem;color:var(--text-secondary, #94a3b8);font-style:italic}.preset-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem}.preset-card{background:var(--bg-secondary, #1e293b);border:1px solid var(--border-color, #334155);border-radius:8px;padding:1rem;cursor:pointer;transition:all .2s;text-align:center}.preset-card:hover{background:var(--bg-hover, #334155);border-color:var(--color-primary, #60a5fa);transform:translateY(-2px);box-shadow:0 4px 12px #0003}.preset-card.active{background:#60a5fa1a;border-color:var(--color-primary, #60a5fa)}.preset-icon{font-size:2rem;margin-bottom:.5rem}.preset-name{font-size:.9rem;font-weight:600;color:var(--text-primary, #f8fafc);margin-bottom:.25rem}.preset-description{font-size:.75rem;color:var(--text-tertiary, #64748b);line-height:1.3}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.stat-control{display:flex;flex-direction:column;gap:.5rem}.stat-control label{font-size:.9rem;font-weight:500;color:var(--text-secondary, #94a3b8)}.stat-control input[type=number],.stat-control select{padding:.5rem;background:var(--bg-tertiary, #0f172a);border:1px solid var(--border-color, #334155);border-radius:4px;color:var(--text-primary, #f8fafc);font-size:.95rem}.stat-control input[type=number]:focus,.stat-control select:focus{outline:none;border-color:var(--color-primary, #60a5fa);box-shadow:0 0 0 2px #60a5fa1a}.zone-container{margin-bottom:1rem;background:var(--bg-tertiary, #0f172a);border:1px solid var(--border-color, #334155);border-radius:6px;padding:.75rem}.zone-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.zone-label{font-size:.95rem;font-weight:600;color:var(--text-primary, #f8fafc);flex:1}.zone-count{font-size:.85rem;color:var(--text-tertiary, #64748b)}.add-card-btn{padding:.4rem .75rem;background:var(--color-primary, #60a5fa);color:#fff;border:none;border-radius:4px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s}.add-card-btn:hover{background:#3b82f6;transform:scale(1.05)}.zone-cards{display:flex;flex-direction:column;gap:.5rem}.empty-zone{padding:1rem;text-align:center;color:var(--text-tertiary, #64748b);font-style:italic;font-size:.9rem}.zone-card-item{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;background:var(--bg-secondary, #1e293b);border:1px solid var(--border-color, #334155);border-radius:4px;transition:background .2s}.zone-card-item:hover{background:var(--bg-hover, #334155)}.card-thumbnail{width:40px;height:56px;object-fit:cover;border-radius:4px;border:1px solid var(--border-color, #334155);flex-shrink:0}.card-thumbnail-placeholder{width:40px;height:56px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#60a5fa1a,#38bdf81a);border:1px solid var(--border-color, #334155);border-radius:4px;font-size:.75rem;font-weight:700;color:var(--text-tertiary, #64748b);flex-shrink:0}.zone-card-item .card-name{flex:1;font-size:.9rem;color:var(--text-primary, #f8fafc);font-weight:500}.zone-card-item .card-cost{font-size:.85rem;color:var(--text-secondary, #94a3b8);font-family:monospace}.card-info{flex:1;display:flex;flex-direction:column;gap:.25rem;min-width:0}.card-info .card-name{font-size:.9rem;color:var(--text-primary, #f8fafc);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-info .card-cost{font-size:.85rem;color:var(--text-secondary, #94a3b8);font-family:monospace}.card-quantity-controls{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.quantity-btn-small{width:24px;height:24px;padding:0;background:var(--bg-tertiary, #0f172a);border:1px solid var(--border-color, #334155);border-radius:4px;color:var(--color-primary, #60a5fa);font-size:1rem;font-weight:700;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;line-height:1}.quantity-btn-small:hover:not(:disabled){background:var(--color-primary, #60a5fa);color:#fff;transform:scale(1.1)}.quantity-btn-small:disabled{opacity:.3;cursor:not-allowed}.quantity-display{min-width:2rem;text-align:center;font-size:.9rem;font-weight:600;color:var(--text-primary, #f8fafc)}.card-quantity-badge{background:var(--color-primary, #60a5fa);color:#fff;font-size:.75rem;font-weight:700;padding:.15rem .5rem;border-radius:12px;flex-shrink:0}.remove-card-btn{width:24px;height:24px;padding:0;background:var(--bg-tertiary, #0f172a);border:1px solid var(--border-color, #334155);border-radius:4px;color:var(--color-error, #ef4444);font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;line-height:1}.remove-card-btn:hover{background:var(--color-error, #ef4444);color:#fff;transform:scale(1.1)}.modal-overlay{position:fixed;inset:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem;overscroll-behavior:contain;touch-action:none}.card-picker-modal{background:var(--bg-secondary, #1e293b);border:1px solid var(--border-color, #334155);border-radius:12px;width:100%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000080;touch-action:auto;overscroll-behavior:contain}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border-color, #334155)}.modal-header h3{margin:0;font-size:1.1rem;color:var(--text-primary, #f8fafc)}.modal-close{width:32px;height:32px;padding:0;background:var(--bg-tertiary, #0f172a);border:1px solid var(--border-color, #334155);border-radius:4px;color:var(--text-secondary, #94a3b8);font-size:1.5rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;line-height:1}.modal-close:hover{background:var(--color-error, #ef4444);color:#fff}.card-search-box{padding:1rem 1.25rem;border-bottom:1px solid var(--border-color, #334155);display:flex;flex-direction:column;gap:.75rem}.card-search-box input{width:100%;padding:.75rem;background:var(--bg-tertiary, #0f172a);border:1px solid var(--border-color, #334155);border-radius:6px;color:var(--text-primary, #f8fafc);font-size:1rem}.filter-row{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.type-filter{display:flex;align-items:center;gap:.5rem;flex:1;min-width:150px}.type-filter label{font-size:.9rem;font-weight:500;color:var(--text-secondary, #94a3b8);white-space:nowrap}.type-filter-select{flex:1;padding:.5rem;background:var(--bg-tertiary, #0f172a);border:1px solid var(--border-color, #334155);border-radius:4px;color:var(--text-primary, #f8fafc);font-size:.9rem;cursor:pointer}.type-filter-select:focus{outline:none;border-color:var(--color-primary, #60a5fa);box-shadow:0 0 0 2px #60a5fa1a}.quantity-selector{display:flex;align-items:center;gap:.75rem}.quantity-selector label{font-size:.9rem;font-weight:500;color:var(--text-secondary, #94a3b8)}.quantity-btn{width:32px;height:32px;padding:0;background:var(--bg-tertiary, #0f172a);border:1px solid var(--border-color, #334155);border-radius:4px;color:var(--text-primary, #f8fafc);font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;line-height:1}.quantity-btn:hover:not(:disabled){background:var(--color-primary, #60a5fa);color:#fff;transform:scale(1.05)}.quantity-btn:disabled{opacity:.4;cursor:not-allowed}.quantity-input{width:60px;padding:.5rem;background:var(--bg-tertiary, #0f172a);border:1px solid var(--border-color, #334155);border-radius:4px;color:var(--text-primary, #f8fafc);font-size:.95rem;text-align:center}.quantity-input:focus{outline:none;border-color:var(--color-primary, #60a5fa);box-shadow:0 0 0 2px #60a5fa1a}.deck-filter-notice{padding:.5rem .75rem;background:#60a5fa1a;border:1px solid rgba(96,165,250,.3);border-radius:4px;font-size:.85rem;color:var(--text-secondary, #94a3b8);text-align:center}.deck-filter-notice strong{color:var(--color-primary, #60a5fa);font-weight:600}.card-search-box input:focus{outline:none;border-color:var(--color-primary, #60a5fa);box-shadow:0 0 0 3px #60a5fa1a}.card-results-list{flex:1;overflow-y:auto;padding:.5rem}.search-prompt,.no-results,.loading-indicator{padding:3rem 1.5rem;text-align:center;color:var(--text-tertiary, #64748b);font-style:italic}.loading-indicator{display:flex;flex-direction:column;align-items:center;gap:1rem}.loading-indicator p{margin:0;color:var(--text-secondary, #94a3b8)}.loading-hint{font-size:.85rem;color:var(--text-tertiary, #64748b)!important}.spinner{width:40px;height:40px;border:3px solid var(--border-color, #334155);border-top-color:var(--color-primary, #60a5fa);border-radius:50%;animation:spin .8s linear infinite}.card-result-item{display:flex;gap:.75rem;padding:.75rem;margin-bottom:.5rem;background:var(--bg-tertiary, #0f172a);border:1px solid var(--border-color, #334155);border-radius:6px;cursor:pointer;transition:all .2s}.card-result-item:hover{background:var(--bg-hover, #334155);border-color:var(--color-primary, #60a5fa);transform:translate(4px)}.card-result-thumbnail{width:60px;height:84px;object-fit:cover;border-radius:6px;border:1px solid var(--border-color, #334155);flex-shrink:0}.card-result-thumbnail-placeholder{width:60px;height:84px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#60a5fa26,#38bdf826);border:1px solid var(--border-color, #334155);border-radius:6px;font-size:1rem;font-weight:700;color:var(--color-primary, #60a5fa);flex-shrink:0}.card-result-content{flex:1;min-width:0}.card-result-main{display:flex;align-items:center;justify-content:space-between;margin-bottom:.25rem}.card-result-name{font-size:1rem;font-weight:600;color:var(--text-primary, #f8fafc)}.card-result-cost{font-size:.9rem;color:var(--text-secondary, #94a3b8);font-family:monospace}.card-result-stats{font-size:.85rem;color:var(--color-primary, #60a5fa);font-weight:600;margin-top:.25rem}.card-result-text{font-size:.85rem;color:var(--text-tertiary, #64748b);line-height:1.4;margin-top:.5rem}@media(max-width:768px){.game-board-setup{max-height:60vh}.preset-grid{grid-template-columns:repeat(2,1fr)}.stats-grid{grid-template-columns:1fr}.card-picker-modal{max-width:95%;max-height:90vh}.zone-header{flex-wrap:wrap}.zone-label{flex-basis:100%;margin-bottom:.5rem}.filter-row{flex-direction:column;gap:.5rem}.type-filter{width:100%}.quantity-selector{width:100%;justify-content:space-between}}@media(max-width:480px){.preset-grid{grid-template-columns:1fr}.preset-card{padding:.75rem}.preset-icon{font-size:1.5rem}.card-thumbnail{width:32px;height:45px}.card-thumbnail-placeholder{width:32px;height:45px;font-size:.65rem}.card-result-thumbnail{width:48px;height:67px}.card-result-thumbnail-placeholder{width:48px;height:67px;font-size:.85rem}}.situation-builder{position:fixed;inset:0;z-index:1000;background:#00000080;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:1rem;overflow-y:auto}.builder-container{background:var(--bg-secondary, #1e293b);border-radius:16px;width:100%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000080;animation:slideUp .3s ease-out}.builder-error{background:var(--bg-secondary, #1e293b);border-radius:16px;padding:3rem 2rem;text-align:center;max-width:400px}.builder-error h2{margin:0 0 1rem;color:var(--text-primary, #f8fafc);font-size:1.5rem}.builder-error p{margin:0 0 2rem;color:var(--text-secondary, #94a3b8);line-height:1.6}.builder-header{padding:1.5rem 1.5rem 1rem;border-bottom:1px solid var(--border-color, #334155)}.header-content{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.header-content h1{margin:0;font-size:1.5rem;color:var(--text-primary, #f8fafc)}.close-button{background:transparent;border:none;font-size:1.5rem;color:var(--text-secondary, #94a3b8);cursor:pointer;padding:.5rem;border-radius:8px;transition:all .2s;line-height:1}.close-button:hover{background:var(--bg-hover, #334155);color:var(--text-primary, #f8fafc)}.progress-bar{height:4px;background:var(--bg-tertiary, #0f172a);border-radius:4px;overflow:hidden;margin-bottom:1.5rem}.progress-fill{height:100%;background:linear-gradient(90deg,var(--color-primary, #60a5fa),var(--color-secondary, #38bdf8));transition:width .3s ease}.step-indicators{display:flex;gap:.5rem;justify-content:space-between}.step-indicator{flex:1;display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.5rem;border-radius:8px;transition:all .2s}.step-indicator.active{background:var(--bg-hover, #334155)}.step-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary, #0f172a);color:var(--text-secondary, #94a3b8);font-size:1rem;transition:all .2s}.step-indicator.active .step-icon{background:var(--color-primary, #60a5fa);color:#fff;transform:scale(1.1)}.step-indicator.completed .step-icon{background:var(--color-success, #22c55e);color:#fff}.step-label{font-size:.75rem;color:var(--text-secondary, #94a3b8);font-weight:500}.step-indicator.active .step-label{color:var(--text-primary, #f8fafc)}.builder-content{flex:1;overflow-y:auto;padding:2rem 1.5rem}.builder-step h2{margin:0 0 .5rem;color:var(--text-primary, #f8fafc);font-size:1.75rem}.step-description{margin:0 0 2rem;color:var(--text-secondary, #94a3b8);font-size:.95rem;line-height:1.5}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:var(--text-primary, #f8fafc);font-weight:500;font-size:.9rem}.required{color:var(--color-error, #ef4444)}.form-group input[type=text],.form-group textarea{width:100%;padding:.75rem;background:var(--bg-tertiary, #0f172a);border:1px solid var(--border-color, #334155);border-radius:8px;color:var(--text-primary, #f8fafc);font-size:1rem;font-family:inherit;transition:all .2s}.form-group input[type=text]:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary, #60a5fa);background:var(--bg-secondary, #1e293b);box-shadow:0 0 0 3px #60a5fa1a}.form-group textarea{resize:vertical;min-height:100px}.input-hint{margin-top:.25rem;font-size:.85rem;color:var(--text-tertiary, #64748b)}.field-description{margin:-.25rem 0 .75rem;font-size:.85rem;color:var(--text-tertiary, #64748b);font-style:italic}.checkbox-label{display:flex!important;align-items:flex-start;gap:1rem;padding:1.25rem;background:#0f172a80;border:2px solid rgba(100,116,139,.3);border-radius:12px;cursor:pointer;transition:all .2s;margin:0}.checkbox-label:hover{border-color:#60a5fa80;background:#0f172ab3}.checkbox-label input[type=checkbox]{width:20px;height:20px;margin-top:.2rem;cursor:pointer;flex-shrink:0}.checkbox-content{flex:1}.checkbox-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.checkbox-icon{font-size:1.25rem}.checkbox-title{font-size:1.05rem;font-weight:600;color:var(--text-primary, #f8fafc)}.checkbox-description{margin:0;font-size:.9rem;color:var(--text-secondary, #cbd5e1);line-height:1.5}.category-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.category-card{background:var(--bg-tertiary, #0f172a);border:2px solid transparent;border-radius:12px;padding:1rem;cursor:pointer;transition:all .2s;text-align:center}.category-card:hover{background:var(--bg-hover, #334155);transform:translateY(-2px)}.category-card.selected{background:var(--bg-hover, #334155);border-color:var(--color-primary, #60a5fa);box-shadow:0 0 0 3px #60a5fa1a}.category-icon{font-size:2rem;margin-bottom:.5rem}.category-name{font-weight:600;color:var(--text-primary, #f8fafc);margin-bottom:.25rem}.category-description{font-size:.85rem;color:var(--text-secondary, #94a3b8);line-height:1.4}.difficulty-options{display:grid;gap:1rem}.difficulty-card{background:var(--bg-tertiary, #0f172a);border:2px solid transparent;border-radius:12px;padding:1rem 1.5rem;cursor:pointer;transition:all .2s;text-align:left}.difficulty-card:hover{background:var(--bg-hover, #334155);transform:translate(4px)}.difficulty-card.selected{transform:translate(8px)}.difficulty-name{font-weight:600;font-size:1.1rem;margin-bottom:.25rem}.difficulty-description{font-size:.9rem;color:var(--text-secondary, #94a3b8)}.list-item-input{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.list-number{flex-shrink:0;width:24px;color:var(--text-tertiary, #64748b);font-weight:500}.list-item-input input{flex:1;padding:.625rem;background:var(--bg-tertiary, #0f172a);border:1px solid var(--border-color, #334155);border-radius:8px;color:var(--text-primary, #f8fafc);font-size:.95rem;transition:all .2s}.list-item-input input:focus{outline:none;border-color:var(--color-primary, #60a5fa);background:var(--bg-secondary, #1e293b)}.remove-button{flex-shrink:0;background:var(--bg-tertiary, #0f172a);border:1px solid var(--border-color, #334155);color:var(--text-secondary, #94a3b8);font-size:1rem;width:32px;height:32px;border-radius:6px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.remove-button:hover{background:var(--color-error, #ef4444);color:#fff;border-color:var(--color-error, #ef4444)}.add-button{background:var(--bg-tertiary, #0f172a);border:1px dashed var(--border-color, #334155);color:var(--text-secondary, #94a3b8);padding:.625rem 1rem;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s;width:100%}.add-button:hover{background:var(--bg-hover, #334155);border-color:var(--color-primary, #60a5fa);color:var(--color-primary, #60a5fa)}.preview-card{background:var(--bg-tertiary, #0f172a);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.preview-header{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color, #334155)}.preview-header h3{margin:0 0 .75rem;color:var(--text-primary, #f8fafc);font-size:1.5rem}.preview-meta{display:flex;gap:.75rem;flex-wrap:wrap}.category-badge,.difficulty-badge{padding:.375rem .75rem;border-radius:6px;font-size:.85rem;font-weight:500}.category-badge{background:var(--bg-secondary, #1e293b);color:var(--text-primary, #f8fafc)}.difficulty-badge{color:#fff}.preview-description{margin:0 0 1.5rem;color:var(--text-secondary, #94a3b8);line-height:1.6}.preview-section{margin-bottom:1.5rem}.preview-section h4{margin:0 0 .75rem;color:var(--text-primary, #f8fafc);font-size:1rem;font-weight:600}.preview-section p{margin:0;color:var(--text-secondary, #94a3b8);line-height:1.6}.preview-section ul{margin:0;padding-left:1.5rem;color:var(--text-secondary, #94a3b8);line-height:1.8}.preview-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.tag{padding:.25rem .75rem;background:var(--bg-secondary, #1e293b);border:1px solid var(--border-color, #334155);border-radius:12px;font-size:.85rem;color:var(--text-secondary, #94a3b8)}.visibility-section{margin-top:2rem}.visibility-options{display:grid;gap:1rem}.visibility-option{display:flex;align-items:center;gap:1rem;background:var(--bg-tertiary, #0f172a);border:2px solid transparent;border-radius:12px;padding:1rem;cursor:pointer;transition:all .2s;text-align:left}.visibility-option:hover{background:var(--bg-hover, #334155)}.visibility-option.selected{border-color:var(--color-primary, #60a5fa);background:var(--bg-hover, #334155);box-shadow:0 0 0 3px #60a5fa1a}.visibility-icon{font-size:2rem;flex-shrink:0}.visibility-content{flex:1}.visibility-name{font-weight:600;color:var(--text-primary, #f8fafc);margin-bottom:.25rem}.visibility-description{font-size:.9rem;color:var(--text-secondary, #94a3b8)}.publish-step{display:flex;align-items:center;justify-content:center;min-height:400px}.publish-content{text-align:center;max-width:500px}.publish-icon{font-size:4rem;margin-bottom:1rem;animation:bounce 1s ease-in-out}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.publish-content h2{margin:0 0 .5rem;color:var(--text-primary, #f8fafc)}.publish-content>p{margin:0 0 2rem;color:var(--text-secondary, #94a3b8);font-size:1.1rem}.publish-summary{background:var(--bg-tertiary, #0f172a);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.summary-item{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid var(--border-color, #334155)}.summary-item:last-child{border-bottom:none}.summary-label{color:var(--text-secondary, #94a3b8);font-weight:500}.summary-value{color:var(--text-primary, #f8fafc);font-weight:600}.publish-notice{background:linear-gradient(135deg,#60a5fa1a,#38bdf81a);border:1px solid rgba(96,165,250,.2);border-radius:12px;padding:1rem;margin-top:1rem}.publish-notice p{margin:0;color:var(--text-primary, #f8fafc);font-size:.95rem;line-height:1.6}.publish-warning{background:linear-gradient(135deg,#fbbf241a,#f59e0b1a);border:1px solid rgba(251,191,36,.3);border-radius:12px;padding:1rem;margin-top:1rem}.publish-warning p{margin:0;color:var(--text-primary, #f8fafc);font-size:.95rem;line-height:1.6}.publish-toggle-section{margin-top:2rem}.publish-toggle-label{display:flex;align-items:flex-start;gap:1rem;padding:1.5rem;background:#0f172a80;border:2px solid rgba(100,116,139,.3);border-radius:12px;cursor:pointer;transition:all .2s}.publish-toggle-label:hover{border-color:#60a5fa80;background:#0f172ab3}.publish-checkbox{width:20px;height:20px;margin-top:.2rem;cursor:pointer;flex-shrink:0}.toggle-content{flex:1}.toggle-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.toggle-icon{font-size:1.25rem}.toggle-title{font-size:1.1rem;font-weight:600;color:var(--text-primary, #f8fafc)}.toggle-description{margin:0;font-size:.9rem;color:var(--text-secondary, #cbd5e1);line-height:1.5}.builder-footer{padding:1rem 1.5rem;border-top:1px solid var(--border-color, #334155);display:flex;gap:1rem;align-items:center}.footer-spacer{flex:1}.footer-hint{font-size:.85rem;color:var(--color-error, #ef4444);text-align:right;font-style:italic;padding-right:1rem}.primary-button,.secondary-button{padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;border:none}.primary-button{background:var(--color-primary, #60a5fa);color:#fff}.primary-button:hover:not(:disabled){background:var(--color-primary-dark, #3b82f6);transform:translateY(-2px);box-shadow:0 4px 12px #60a5fa4d}.primary-button:disabled{opacity:.5;cursor:not-allowed;background:var(--bg-tertiary, #0f172a);color:var(--text-tertiary, #64748b);border:1px solid var(--border-color, #334155)}.publish-button{min-width:200px}.secondary-button{background:var(--bg-tertiary, #0f172a);color:var(--text-primary, #f8fafc);border:1px solid var(--border-color, #334155)}.secondary-button:hover{background:var(--bg-hover, #334155)}@media(max-width:768px){.situation-builder{padding:0;align-items:stretch}.builder-container{max-width:100%;max-height:100vh;border-radius:0}.builder-header{padding:1rem}.header-content h1{font-size:1.25rem}.step-indicators{gap:.25rem}.step-indicator{padding:.25rem}.step-icon{width:28px;height:28px;font-size:.9rem}.step-label{font-size:.7rem}.builder-content{padding:1.5rem 1rem}.builder-step h2{font-size:1.5rem}.category-grid{grid-template-columns:1fr}.builder-footer{padding:1rem}.primary-button,.secondary-button{padding:.875rem 1.25rem}.publish-button{min-width:auto;flex:1}}@media(max-width:480px){.step-label{display:none}.category-icon{font-size:1.5rem}.category-name{font-size:.9rem}.category-description{font-size:.8rem}.publish-content{padding:0 1rem}}.situation-browser{width:100%;max-width:1400px;margin:0 auto;padding:2rem;display:flex;flex-direction:column;gap:2rem}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1.5rem}.loading-spinner{width:48px;height:48px;border:4px solid rgba(96,165,250,.2);border-top-color:#60a5facc;border-radius:50%;animation:spin .8s linear infinite}.error-message{color:#f87171;font-size:1.1rem;margin:0}.browser-header{display:flex;flex-direction:column;gap:1.5rem;padding:2.5rem;margin-top:4rem;background:linear-gradient(135deg,#111827f2,#1e293bf2);border:1px solid rgba(96,165,250,.3);border-radius:16px;box-shadow:0 8px 24px #0f172a66;position:relative;overflow:hidden}.browser-header:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#60a5fa00,#60a5facc,#60a5fa00)}.header-main{display:flex;justify-content:space-between;align-items:center;gap:2rem}.header-content{flex:1}.title-section{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem}.title-icon{font-size:2.5rem;line-height:1;filter:drop-shadow(0 4px 8px rgba(96,165,250,.3))}.header-content h1{margin:0;font-size:2.5rem;font-weight:700;background:linear-gradient(135deg,#60a5fa,#38bdf8);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:.02em}.header-subtitle{margin:0;font-size:1.1rem;color:#94a3b8e6;letter-spacing:.01em;padding:1rem 0 1.25rem;line-height:1.6}.header-actions{display:flex;gap:1rem;align-items:center}.header-stats{display:flex;gap:1.5rem;align-items:center;padding:1.25rem 1.75rem;background:#0f172a99;border-radius:12px;border:1px solid rgba(96,165,250,.2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.stat-item{display:flex;flex-direction:column;align-items:center;gap:.35rem}.stat-value{font-size:2rem;font-weight:700;background:linear-gradient(135deg,#60a5fa,#38bdf8);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.stat-label{font-size:.8rem;color:#94a3b8cc;text-transform:uppercase;letter-spacing:.08em;font-weight:600}.stat-divider{width:1px;height:40px;background:linear-gradient(to bottom,#60a5fa00,#60a5fa66,#60a5fa00)}.seed-button{padding:.875rem 1.75rem;background:linear-gradient(135deg,#22c55e26,#15803d40);border:1px solid rgba(34,197,94,.5);border-radius:10px;color:#34d399;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap;box-shadow:0 2px 8px #22c55e33}.seed-button:hover:not(:disabled){background:linear-gradient(135deg,#22c55e40,#15803d59);border-color:#22c55ecc;transform:translateY(-2px);box-shadow:0 6px 16px #22c55e59}.seed-button:disabled{opacity:.5;cursor:not-allowed}.create-button{padding:.875rem 1.75rem;background:linear-gradient(135deg,#8b5cf633,#6d28d94d);border:1px solid rgba(139,92,246,.6);border-radius:10px;color:#c4b5fd;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap;box-shadow:0 2px 8px #8b5cf640}.create-button:hover:not(:disabled){background:linear-gradient(135deg,#8b5cf64d,#6d28d966);border-color:#8b5cf6cc;transform:translateY(-2px);box-shadow:0 6px 16px #8b5cf666}.create-button:disabled{opacity:.5;cursor:not-allowed}.browser-controls{display:flex;flex-direction:column;gap:1.5rem;padding:1.5rem;background:#111827cc;border:1px solid rgba(96,165,250,.2);border-radius:12px}.search-box{width:100%}.search-box input{width:100%;padding:.875rem 1.25rem;background:#1e293b99;border:1px solid rgba(96,165,250,.25);border-radius:10px;color:#fffffff2;font-size:1rem;font-family:inherit;transition:all .2s ease}.search-box input:focus{outline:none;border-color:#38bdf899;background:#1e293bcc;box-shadow:0 0 0 3px #38bdf826}.search-box input::placeholder{color:#94a3b899}.filter-row{display:flex;flex-wrap:wrap;gap:1.5rem;align-items:flex-end}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group label{font-size:.875rem;font-weight:500;color:#ffffffd9;letter-spacing:.02em}.filter-buttons{display:flex;gap:.5rem}.filter-button{padding:.625rem 1.125rem;background:#1e293b99;border:1px solid rgba(96,165,250,.25);border-radius:8px;color:#ffffffd9;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.filter-button:hover{background:#38bdf826;border-color:#60a5fa80;color:#fffffff2}.filter-button.active{background:#38bdf840;border-color:#38bdf899;color:#fff}.filter-group select{padding:.625rem 1rem;background:#1e293b99;border:1px solid rgba(96,165,250,.25);border-radius:8px;color:#fffffff2;font-size:.9rem;font-family:inherit;cursor:pointer;transition:all .2s ease}.filter-group select:focus{outline:none;border-color:#38bdf899;background:#1e293bcc}.situations-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.situation-card{background:linear-gradient(180deg,#111827e6,#0f172ae6);border:1px solid rgba(96,165,250,.25);border-radius:14px;padding:1.5rem;display:flex;flex-direction:column;gap:1rem;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:default;position:relative;overflow:hidden;background-size:cover;background-position:center}.situation-card:hover{transform:translateY(-4px);border-color:#60a5fa80;box-shadow:0 12px 32px #0f172a80}.card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.card-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#fffffff2;letter-spacing:.01em;flex:1;line-height:1.3;text-shadow:0 2px 4px rgba(0,0,0,.8),0 1px 2px rgba(0,0,0,.9);position:relative;z-index:1}.header-badges{display:flex;flex-direction:column;gap:.5rem;align-items:flex-end}.difficulty-badge{padding:.375rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#0f172a;white-space:nowrap}.status-badge{padding:.375rem .75rem;border-radius:6px;font-size:.7rem;font-weight:600;white-space:nowrap;border:1px solid}.status-badge.published{background:#22c55e33;border-color:#22c55e66;color:#4ade80}.status-badge.draft{background:#eab30833;border-color:#eab30866;color:#facc15}.card-description{margin:0;font-size:.95rem;line-height:1.5;color:#ffffffe6;text-shadow:0 1px 3px rgba(0,0,0,.8),0 1px 2px rgba(0,0,0,.9);position:relative;z-index:1}.card-meta{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-top:.5rem;border-top:1px solid rgba(96,165,250,.15);position:relative;z-index:1}.category-tag{padding:.375rem .75rem;background:#38bdf826;border:1px solid rgba(56,189,248,.3);border-radius:6px;font-size:.8rem;font-weight:500;color:#38bdf8f2;text-transform:capitalize}.play-count{font-size:.85rem;color:#94a3b8cc;font-weight:500}.card-tags{display:flex;flex-wrap:wrap;gap:.5rem;position:relative;z-index:1}.tag{padding:.25rem .625rem;background:#60a5fa1a;border:1px solid rgba(96,165,250,.2);border-radius:4px;font-size:.75rem;color:#94a3b8e6}.tag.more{background:#94a3b81a;border-color:#94a3b833;font-weight:600}.card-footer{display:flex;gap:.75rem;margin-top:auto}.card-footer .primary-button{flex:1;padding:.75rem 1.25rem;font-size:.9rem}.card-footer .delete-button{padding:.75rem 1rem;background:#dc26261a;border:1px solid rgba(220,38,38,.3);border-radius:.5rem;color:#f87171;cursor:pointer;transition:all .2s ease;font-size:1.1rem}.card-footer .delete-button:hover{background:#dc262633;border-color:#dc262680;transform:translateY(-1px)}.card-footer .delete-button:active{transform:translateY(0)}.card-footer .edit-button{padding:.75rem 1rem;background:#3b82f61a;border:1px solid rgba(59,130,246,.3);border-radius:.5rem;color:#60a5fa;cursor:pointer;transition:all .2s ease;font-size:1.1rem}.card-footer .edit-button:hover{background:#3b82f633;border-color:#3b82f680;transform:translateY(-1px)}.card-footer .edit-button:active{transform:translateY(0)}.card-footer .lock-toggle-button{padding:.75rem 1rem;border-radius:.5rem;cursor:pointer;transition:all .2s ease;font-size:1.1rem;border:1px solid}.card-footer .lock-toggle-button.locked{background:#ef44441a;border-color:#ef44444d;color:#f87171}.card-footer .lock-toggle-button.locked:hover{background:#ef444433;border-color:#ef444480;transform:translateY(-1px)}.card-footer .lock-toggle-button.unlocked{background:#22c55e1a;border-color:#22c55e4d;color:#4ade80}.card-footer .lock-toggle-button.unlocked:hover{background:#22c55e33;border-color:#22c55e80;transform:translateY(-1px)}.card-footer .lock-toggle-button:active{transform:translateY(0)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;gap:.75rem}.empty-state p{margin:0;font-size:1.1rem;color:#94a3b8e6}.empty-hint{font-size:.95rem!important;color:#94a3b899!important}.pagination{display:flex;justify-content:center;align-items:center;gap:1.5rem;padding:2rem 0}.pagination-button{padding:.75rem 1.5rem;background:#1e293b99;border:1px solid rgba(96,165,250,.25);border-radius:8px;color:#ffffffe6;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease}.pagination-button:hover:not(:disabled){background:#38bdf833;border-color:#60a5fa80}.pagination-button:disabled{opacity:.4;cursor:not-allowed}.pagination-info{font-size:.95rem;color:#94a3b8e6;font-weight:500}@media(max-width:768px){.situation-browser{padding:1rem}.browser-header{padding:2rem 1.5rem;gap:1.25rem;margin-top:3rem}.header-main{flex-direction:column;align-items:stretch;gap:1.25rem}.title-section{gap:.75rem}.title-icon{font-size:2rem}.header-content h1{font-size:1.75rem}.header-subtitle{font-size:.95rem;padding:1.5rem 1rem}.header-actions{flex-direction:column;gap:.75rem}.header-actions button{width:100%}.header-stats{padding:1rem 1.25rem;gap:1rem}.stat-value{font-size:1.5rem}.stat-label{font-size:.75rem}.filter-row{flex-direction:column;gap:1rem}.filter-group{width:100%}.filter-buttons{width:100%;justify-content:stretch}.filter-button{flex:1}.situations-grid{grid-template-columns:1fr}}.status-banner{position:fixed;top:60px;left:0;right:0;z-index:1500;padding:1rem 1.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:2px solid;animation:slideDown .3s ease-out}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.status-banner-warning{background:#fbbf2426;border-color:#fbbf2480}.status-banner-error{background:#ef444426;border-color:#ef444480}.status-banner-content{display:flex;align-items:flex-start;gap:1rem;max-width:1200px;margin:0 auto}.status-banner-icon{font-size:2rem;line-height:1;flex-shrink:0}.status-banner-text{flex:1}.status-banner-title{margin:0 0 .5rem;font-size:1.125rem;font-weight:700;color:#f8fafc;font-family:var(--font-display, "Cinzel", serif)}.status-banner-warning .status-banner-title{color:#fcd34d}.status-banner-error .status-banner-title{color:#fca5a5}.status-banner-message{margin:0 0 .25rem;color:#e2e8f0;font-size:.875rem;line-height:1.5}.status-banner-date{margin:0;color:#94a3b8;font-size:.75rem;font-style:italic}.status-banner-close{position:absolute;top:.5rem;right:.5rem;background:#0000004d;border:1px solid rgba(148,163,184,.3);color:#cbd5e1;width:2rem;height:2rem;border-radius:4px;cursor:pointer;font-size:1.25rem;display:flex;align-items:center;justify-content:center;transition:all .2s}.status-banner-close:hover{background:#00000080;border-color:#94a3b880;color:#f8fafc}@media(max-width:768px){.status-banner{padding:.75rem 1rem}.status-banner-icon{font-size:1.5rem}.status-banner-title{font-size:1rem}.status-banner-message{font-size:.8125rem}}.about-page{min-height:100vh;padding:5rem 1rem 4rem;background:linear-gradient(135deg,#0f172a,#1e293b);color:#f8fafc}.about-container{max-width:900px;margin:0 auto}.about-header{text-align:center;margin-top:4rem;margin-bottom:3rem;padding-bottom:2rem;border-bottom:2px solid rgba(148,163,184,.2)}.about-header h1{font-size:2.5rem;margin:0 0 1rem;font-family:var(--font-display, "Cinzel", serif);background:linear-gradient(135deg,#f8fafc,#cbd5e1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.about-subtitle{font-size:1.125rem;color:#94a3b8;margin:0;font-weight:500}.about-section{margin-bottom:3rem}.about-section h2{font-size:1.75rem;margin:0 0 1.5rem;color:#f8fafc;font-family:var(--font-display, "Cinzel", serif)}.about-section h3{font-size:1.25rem;margin:0 0 1rem;color:#e2e8f0}.about-section p{line-height:1.7;color:#cbd5e1;margin:0 0 1rem}.about-section p:last-child{margin-bottom:0}.about-legal{background:#ffffff0d;padding:2rem;border-radius:12px;border:1px solid rgba(148,163,184,.2)}.legal-block{margin-bottom:2rem}.legal-block:last-child{margin-bottom:0}.legal-disclaimer{background:#ef44441a;border-left:4px solid #ef4444;padding:1rem;margin:1rem 0;border-radius:4px}.legal-link{color:#93c5fd;text-decoration:none;transition:color .2s ease}.legal-link:hover{color:#bfdbfe;text-decoration:underline}.legal-list{margin:1rem 0;padding-left:2rem;color:#cbd5e1;line-height:1.8}.legal-list li{margin-bottom:.5rem}.legal-note{font-style:italic;color:#94a3b8;font-size:.95rem;margin-top:1rem}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-top:1.5rem}.feature-card{background:#ffffff0d;padding:1.5rem;border-radius:12px;border:1px solid rgba(148,163,184,.2);transition:transform .2s ease,border-color .2s ease}.feature-card:hover{transform:translateY(-2px);border-color:#94a3b866}.feature-icon{font-size:2rem;margin-bottom:1rem}.feature-card h3{font-size:1.125rem;margin:0 0 .75rem;color:#f8fafc}.feature-card p{color:#94a3b8;margin:0;font-size:.95rem;line-height:1.6}.contact-email{margin:1.5rem 0;font-size:1.125rem}.contact-email a{font-weight:500}.about-attribution{background:linear-gradient(135deg,#6366f11a,#a855f71a);padding:2rem;border-radius:12px;border:1px solid rgba(99,102,241,.2);text-align:center}.attribution-text{color:#e2e8f0;line-height:1.7;margin-bottom:1rem}.version-info{margin-top:2rem;font-size:.875rem;color:#64748b;font-style:italic}@media(max-width:768px){.about-page{padding:1rem 1rem 3rem}.about-header h1{font-size:2rem}.about-subtitle{font-size:1rem}.about-section h2{font-size:1.5rem}.about-legal{padding:1.5rem}.features-grid{grid-template-columns:1fr}}.maintenance-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0f172a,#1e293b);padding:2rem}.maintenance-content{max-width:600px;text-align:center;background:#0f172ad9;padding:3rem 2rem;border-radius:24px;border:1px solid rgba(148,163,184,.25);box-shadow:0 24px 64px #0006}.maintenance-icon{width:120px;height:120px;margin:0 auto 2rem;color:#60a5fa;animation:rotate 3s linear infinite}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.maintenance-icon svg{width:100%;height:100%}.maintenance-title{font-family:var(--font-display);font-size:2.5rem;margin:0 0 1.5rem;background:linear-gradient(135deg,#60a5fa,#a78bfa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.maintenance-message{font-size:1.125rem;color:#e2e8f0e6;line-height:1.7;margin:0 0 2rem}.maintenance-footer{padding-top:2rem;border-top:1px solid rgba(148,163,184,.2);color:#94a3b8b3;font-size:.95rem}.maintenance-footer p{margin:0}@media(max-width:640px){.maintenance-content{padding:2rem 1.5rem}.maintenance-icon{width:80px;height:80px}.maintenance-title{font-size:2rem}.maintenance-message{font-size:1rem}}.pathway-unlock-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:10000;background:radial-gradient(ellipse at center,#1a0a2e,#0a0a0a 70%);overflow:hidden;display:flex;align-items:center;justify-content:center}.pathway-unlock-rifts{position:absolute;top:50%;left:50%;width:100%;height:100%;transform:translate(-50%,-50%);pointer-events:none}.pathway-unlock-rift{position:absolute;top:50%;left:50%;width:4px;height:0;background:linear-gradient(to bottom,transparent,rgba(139,92,246,.8) 20%,rgba(236,72,153,.8) 50%,rgba(139,92,246,.8) 80%,transparent);transform-origin:top center;transform:translate(-50%,-50%) rotate(var(--rift-rotation));box-shadow:0 0 20px #8b5cf699;opacity:0}.pathway-unlock-phase-rift .pathway-unlock-rift{animation:riftOpen 1.5s ease-out forwards;animation-delay:var(--rift-delay)}@keyframes riftOpen{0%{height:0;opacity:0}50%{opacity:1}to{height:150vh;opacity:.7}}.pathway-unlock-spark{position:absolute;top:50%;left:50%;width:200px;height:200px;transform:translate(-50%,-50%);opacity:0}.pathway-unlock-phase-spark .pathway-unlock-spark{animation:sparkIgnite 1s ease-out forwards}@keyframes sparkIgnite{0%{opacity:0;transform:translate(-50%,-50%) scale(0)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.5)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.pathway-unlock-spark-core{position:absolute;top:50%;left:50%;width:60px;height:60px;transform:translate(-50%,-50%);background:radial-gradient(circle,#fff 0%,rgba(236,72,153,.9) 30%,rgba(139,92,246,.5) 70%,transparent 100%);border-radius:50%;box-shadow:0 0 40px #ec4899,0 0 80px #8b5cf6cc,inset 0 0 20px #ffffff80;animation:sparkPulse 2s ease-in-out infinite}@keyframes sparkPulse{0%,to{transform:translate(-50%,-50%) scale(1);box-shadow:0 0 40px #ec4899,0 0 80px #8b5cf6cc,inset 0 0 20px #ffffff80}50%{transform:translate(-50%,-50%) scale(1.2);box-shadow:0 0 60px #ec4899,0 0 120px #8b5cf6e6,inset 0 0 30px #ffffffb3}}.pathway-unlock-spark-ray{position:absolute;top:50%;left:50%;width:4px;height:100px;background:linear-gradient(to top,transparent,rgba(236,72,153,.8),transparent);transform-origin:bottom center;transform:translate(-50%,-100%) rotate(var(--ray-rotation));opacity:0;animation:rayBurst .8s ease-out forwards;animation-delay:var(--ray-delay)}@keyframes rayBurst{0%{height:0;opacity:0}50%{opacity:1}to{height:300px;opacity:0}}.pathway-unlock-waves{position:absolute;top:50%;left:50%;width:100%;height:100%;transform:translate(-50%,-50%);pointer-events:none}.pathway-unlock-wave{position:absolute;top:50%;left:50%;width:0;height:0;border:3px solid rgba(139,92,246,0);border-radius:50%;transform:translate(-50%,-50%);opacity:0}.pathway-unlock-phase-spark .pathway-unlock-wave,.pathway-unlock-phase-reveal .pathway-unlock-wave{animation:waveExpand 2s ease-out forwards;animation-delay:var(--wave-delay)}@keyframes waveExpand{0%{width:0;height:0;border-color:#8b5cf6cc;opacity:0}30%{opacity:1}to{width:200vmax;height:200vmax;border-color:#8b5cf600;opacity:0}}.pathway-unlock-particles{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;opacity:0}.pathway-unlock-phase-rift .pathway-unlock-particles,.pathway-unlock-phase-spark .pathway-unlock-particles{opacity:1}.pathway-unlock-particle{position:absolute;width:3px;height:3px;background:radial-gradient(circle,#fff,#ec489980);border-radius:50%;opacity:0;animation:particleFloat var(--particle-duration) ease-in-out infinite;animation-delay:var(--particle-delay);left:var(--particle-x);top:var(--particle-y);box-shadow:0 0 4px #ec4899cc}@keyframes particleFloat{0%,to{opacity:0;transform:translate(0) scale(0)}50%{opacity:1;transform:translate(calc(50vw - var(--particle-x)),calc(50vh - var(--particle-y))) scale(1.5)}}.pathway-unlock-content{position:relative;z-index:10;text-align:center;color:#fff;opacity:0;transform:scale(.8)}.pathway-unlock-phase-reveal .pathway-unlock-content{animation:contentReveal 1.5s ease-out forwards}@keyframes contentReveal{0%{opacity:0;transform:scale(.8) translateY(30px)}to{opacity:1;transform:scale(1) translateY(0)}}.pathway-unlock-badge{position:relative;width:120px;height:120px;margin:0 auto 2rem;animation:badgeSpin 3s linear infinite}@keyframes badgeSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.pathway-unlock-badge-glow{position:absolute;top:50%;left:50%;width:100%;height:100%;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(236,72,153,.4),transparent 70%);border-radius:50%;animation:glowPulse 2s ease-in-out infinite}@keyframes glowPulse{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.6}50%{transform:translate(-50%,-50%) scale(1.3);opacity:1}}.pathway-unlock-badge-icon{position:relative;width:100%;height:100%;color:#ec4899;filter:drop-shadow(0 0 20px rgba(236,72,153,.8))}.pathway-unlock-title{font-size:3.5rem;font-weight:900;margin:0 0 .5rem;background:linear-gradient(135deg,#ec4899,#8b5cf6,#ec4899);background-size:200% 200%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 0 40px rgba(236,72,153,.5);animation:titleShimmer 3s ease-in-out infinite;letter-spacing:2px;text-transform:uppercase}@keyframes titleShimmer{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.pathway-unlock-subtitle{font-size:1.25rem;font-weight:600;margin:0 0 1.5rem;color:#ec4899e6;text-transform:uppercase;letter-spacing:4px;text-shadow:0 0 20px rgba(236,72,153,.6)}.pathway-unlock-description{font-size:1.125rem;max-width:600px;margin:0 auto;color:#ffffffd9;line-height:1.6;text-shadow:0 2px 8px rgba(0,0,0,.5)}.pathway-unlock-tear{position:absolute;top:0;width:50%;height:100%;background:linear-gradient(to right,#0a0a0a,transparent);opacity:0;pointer-events:none}.pathway-unlock-tear-left{left:0;background:linear-gradient(to right,#0a0a0a 50%,transparent)}.pathway-unlock-tear-right{right:0;background:linear-gradient(to left,#0a0a0a 50%,transparent)}.pathway-unlock-phase-complete .pathway-unlock-tear-left{animation:tearLeft 1s ease-in forwards}.pathway-unlock-phase-complete .pathway-unlock-tear-right{animation:tearRight 1s ease-in forwards}@keyframes tearLeft{0%{opacity:0;transform:translate(0) scaleX(1)}50%{opacity:1}to{opacity:1;transform:translate(-100%) scaleX(1.5)}}@keyframes tearRight{0%{opacity:0;transform:translate(0) scaleX(1)}50%{opacity:1}to{opacity:1;transform:translate(100%) scaleX(1.5)}}.pathway-unlock-phase-complete{animation:overlayFadeOut 1s ease-out forwards}@keyframes overlayFadeOut{to{opacity:0}}@media(max-width:768px){.pathway-unlock-title{font-size:2.5rem}.pathway-unlock-subtitle{font-size:1rem;letter-spacing:2px}.pathway-unlock-description{font-size:1rem;padding:0 1rem}.pathway-unlock-badge{width:100px;height:100px}}.course-selector-overlay{position:fixed;inset:0;background:#00000080;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);display:flex;align-items:center;justify-content:center;z-index:1500;padding:20px;animation:fadeIn .3s ease-out;overscroll-behavior:contain;touch-action:none;overflow:hidden}.course-selector-fullpage{min-height:100vh;padding:2rem;padding-top:100px;display:flex;align-items:flex-start;justify-content:center;position:relative;z-index:1}.course-selector-overlay:before{content:"";position:fixed;inset:0;overscroll-behavior:contain}@media(max-width:640px){.course-selector-overlay{padding:70px 0 0;align-items:flex-start}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.course-selector-modal{background:linear-gradient(135deg,var(--theme-bg-from, rgba(15, 15, 30, .98)) 0%,var(--theme-bg-to, rgba(10, 15, 35, .98)) 100%);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:20px;border:3px solid var(--theme-primary, #7c3aed);max-width:1200px;width:100%;max-height:90vh;overflow-y:auto;overscroll-behavior:contain;box-shadow:0 0 40px var(--theme-shadow, rgba(124, 58, 237, .4)),0 20px 60px #000c,inset 0 1px #ffffff1a;animation:slideUp .3s ease-out;font-family:Cinzel,Trajan Pro,serif;position:relative;touch-action:auto}@media(max-width:640px){.course-selector-modal{max-width:100%;max-height:calc(100vh - 70px);height:calc(100vh - 70px);border-radius:0;border:none;border-left:3px solid var(--theme-primary, #7c3aed);border-right:3px solid var(--theme-primary, #7c3aed)}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.course-selector-header{display:flex;justify-content:space-between;align-items:center;padding:30px;border-bottom:3px solid var(--theme-primary-light, rgba(124, 58, 237, .3));background:linear-gradient(135deg,var(--theme-bg-from-overlay, rgba(124, 58, 237, .15)) 0%,var(--theme-bg-to-overlay, rgba(168, 85, 247, .15)) 100%);position:relative}.course-selector-header:after{content:"";position:absolute;bottom:-3px;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent 0%,var(--theme-primary, #7c3aed) 50%,transparent 100%)}@media(max-width:640px){.course-selector-header{padding:20px;flex-direction:column;gap:16px;align-items:flex-start}}.course-selector-header h2{margin:0;font-size:32px;font-weight:700;color:#fff;text-shadow:0 0 20px var(--theme-shadow, rgba(124, 58, 237, .6)),0 2px 10px rgba(0,0,0,.8);letter-spacing:.5px}@media(max-width:640px){.course-selector-header h2{font-size:24px}}.course-selector-header p{margin:5px 0 0;color:#ffffffb3;font-size:16px;font-family:Lato,sans-serif}@media(max-width:640px){.course-selector-header p{font-size:14px}}.course-selector-close{background:var(--theme-primary-light, rgba(124, 58, 237, .2));border:2px solid var(--theme-primary-light, rgba(124, 58, 237, .4));border-radius:50%;width:44px;height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);color:#fff;flex-shrink:0}@media(max-width:640px){.course-selector-close{position:absolute;top:20px;right:20px;width:36px;height:36px}}.course-selector-close:hover{background:#ef44444d;border-color:#ef4444;transform:rotate(90deg) scale(1.1);box-shadow:0 0 20px #ef444480}.course-selector-view-all{padding:20px 30px;background:#0003;border-bottom:2px solid var(--theme-primary-light, rgba(124, 58, 237, .2));display:flex;justify-content:space-between;align-items:center;gap:20px}@media(max-width:640px){.course-selector-view-all{flex-direction:column;padding:16px 20px;gap:12px}}.course-view-all-btn{flex:1;display:flex;align-items:center;gap:12px;padding:16px 24px;background:var(--theme-bg-from, rgba(15, 15, 30, .8));border:2px solid var(--theme-primary-light, rgba(124, 58, 237, .3));border-radius:12px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-family:Cinzel,Trajan Pro,serif;letter-spacing:.3px}@media(max-width:640px){.course-view-all-btn{width:100%;padding:14px 20px;font-size:14px}}.course-view-all-btn:hover{background:var(--theme-primary-light, rgba(124, 58, 237, .15));border-color:var(--theme-primary-hover, rgba(124, 58, 237, .6));transform:translateY(-2px);box-shadow:0 4px 20px var(--theme-shadow, rgba(124, 58, 237, .3))}.course-view-all-btn.active{background:linear-gradient(135deg,var(--theme-bg-from-overlay, rgba(124, 58, 237, .3)) 0%,var(--theme-bg-to-overlay, rgba(168, 85, 247, .3)) 100%);border-color:var(--theme-primary, #7c3aed);box-shadow:0 4px 20px var(--theme-shadow, rgba(124, 58, 237, .4)),inset 0 1px #ffffff1a}.course-view-all-btn .checkmark{margin-left:auto;color:var(--theme-primary, #a855f7);font-size:20px;text-shadow:0 0 10px var(--theme-shadow, rgba(168, 85, 247, .8))}.show-all-toggle{display:flex;align-items:center;gap:8px;color:#ffffffb3;font-size:14px;cursor:pointer;-webkit-user-select:none;user-select:none;font-family:Lato,sans-serif;transition:color .2s}@media(max-width:640px){.show-all-toggle{width:100%;justify-content:center;font-size:13px}}.show-all-toggle:hover{color:#ffffffe6}.show-all-toggle input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:var(--theme-primary, #7c3aed)}.course-selector-grid{padding:30px;display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px}@media(max-width:640px){.course-selector-grid{grid-template-columns:1fr;padding:20px;gap:20px}}@media(min-width:641px)and (max-width:768px){.course-selector-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}.course-card{position:relative;background:linear-gradient(135deg,var(--theme-bg-from, rgba(20, 20, 40, .9)) 0%,var(--theme-bg-to, rgba(15, 15, 30, .9)) 100%);border:3px solid var(--theme-primary-light, rgba(124, 58, 237, .3));border-radius:16px;overflow:hidden;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);min-height:280px;box-shadow:0 4px 20px #00000080,inset 0 1px #ffffff0d}.course-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,transparent 0%,var(--theme-primary, rgba(124, 58, 237, .5)) 50%,transparent 100%);opacity:0;transition:opacity .3s}.course-card:hover:not(.locked){border-color:var(--theme-primary-hover, rgba(124, 58, 237, .7));transform:translateY(-6px);box-shadow:0 12px 40px var(--theme-shadow, rgba(124, 58, 237, .4)),0 0 40px var(--theme-shadow, rgba(124, 58, 237, .2)),inset 0 1px #ffffff1a}.course-card:hover:not(.locked):before{opacity:1}.course-card.selected{border-color:var(--theme-primary, #7c3aed);box-shadow:0 8px 30px var(--theme-shadow, rgba(124, 58, 237, .5)),0 0 60px var(--theme-shadow, rgba(124, 58, 237, .3)),inset 0 1px #ffffff26;background:linear-gradient(135deg,var(--theme-bg-from-overlay, rgba(124, 58, 237, .2)) 0%,var(--theme-bg-to-overlay, rgba(168, 85, 247, .2)) 100%)}.course-card.selected:before{opacity:1}.course-card.completed{border-color:var(--theme-primary, rgba(168, 85, 247, .5))}.course-card.locked{opacity:.5;cursor:not-allowed;filter:grayscale(.6)}.course-card.locked:hover{transform:none;box-shadow:0 4px 20px #00000080,inset 0 1px #ffffff0d}.course-card.locked:before{opacity:0}.course-card-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.15;transition:opacity .3s;filter:brightness(.7)}.course-card:hover:not(.locked) .course-card-bg{opacity:.25;filter:brightness(.8)}.course-card-lock-overlay{position:absolute;inset:0;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:2;padding:20px;text-align:center;border:2px solid rgba(239,68,68,.3);border-radius:16px}.lock-icon{font-size:56px;margin-bottom:16px;animation:lockFloat 3s ease-in-out infinite;filter:drop-shadow(0 4px 12px rgba(239,68,68,.4))}@keyframes lockFloat{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-8px) rotate(-3deg)}75%{transform:translateY(-8px) rotate(3deg)}}.lock-text{color:#fffffff2;font-size:14px;font-weight:600;margin:0;font-family:Lato,sans-serif;text-shadow:0 2px 8px rgba(0,0,0,.8)}.course-card-content{position:relative;z-index:1;padding:24px;display:flex;flex-direction:column;gap:12px;height:100%}@media(max-width:640px){.course-card-content{padding:20px}}.course-card-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.course-badge{padding:5px 14px;border-radius:20px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;font-family:Lato,sans-serif;box-shadow:0 2px 8px #0000004d}.course-badge.completed{background:var(--theme-accent, linear-gradient(135deg, #a855f7 0%, #7c3aed 100%));color:#fff;box-shadow:0 2px 10px var(--theme-shadow, rgba(168, 85, 247, .5));border:1px solid rgba(255,255,255,.2)}.course-badge.in-progress{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border:1px solid rgba(255,255,255,.2)}.course-badge.selected-badge{background:var(--theme-primary, linear-gradient(135deg, #7c3aed 0%, #6d28d9 100%));color:#fff;border:1px solid rgba(255,255,255,.3);box-shadow:0 0 20px var(--theme-shadow, rgba(124, 58, 237, .6))}.course-card-title{margin:0;font-size:22px;font-weight:700;color:#fff;line-height:1.3;font-family:Cinzel,Trajan Pro,serif;letter-spacing:.3px;text-shadow:0 2px 8px rgba(0,0,0,.8)}@media(max-width:640px){.course-card-title{font-size:20px}}.course-card-description{margin:0;font-size:14px;color:#fffc;line-height:1.6;flex:1;font-family:Lato,sans-serif}@media(max-width:640px){.course-card-description{font-size:13px}}.course-card-stats{display:flex;align-items:center;gap:16px;margin-top:auto;padding-top:12px;border-top:2px solid var(--theme-primary-light, rgba(124, 58, 237, .3))}.course-card-stats .stat{display:flex;align-items:center;gap:6px;color:#ffffffb3;font-size:13px;font-family:Lato,sans-serif;font-weight:600}.course-card-stats .stat svg{opacity:.8;filter:drop-shadow(0 2px 4px rgba(0,0,0,.5))}.color-indicator{width:28px;height:28px;border-radius:50%;border:3px solid rgba(255,255,255,.4);margin-left:auto;box-shadow:0 0 15px currentColor,0 2px 8px #00000080;transition:all .3s}.course-card:hover .color-indicator{transform:scale(1.1);border-color:#fff9}.course-progress{margin-top:8px}.progress-bar{height:10px;background:#0006;border-radius:10px;overflow:hidden;margin-bottom:6px;border:1px solid var(--theme-primary-light, rgba(124, 58, 237, .3));box-shadow:inset 0 2px 4px #00000080}.progress-fill{height:100%;background:var(--theme-accent, linear-gradient(90deg, #7c3aed 0%, #a855f7 50%, #ec4899 100%));border-radius:10px;transition:width .5s cubic-bezier(.4,0,.2,1);box-shadow:0 0 10px currentColor;position:relative;overflow:hidden}.progress-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.3) 50%,transparent 100%);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.progress-text{font-size:12px;color:#ffffffb3;font-weight:700;font-family:Lato,sans-serif;text-shadow:0 1px 4px rgba(0,0,0,.8)}.course-selector-loading{padding:80px 30px;text-align:center;color:#fff}.spinner{width:56px;height:56px;border:4px solid rgba(124,58,237,.2);border-top-color:#7c3aed;border-right-color:#a855f7;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px;box-shadow:0 0 20px #7c3aed66}@keyframes spin{to{transform:rotate(360deg)}}.course-selector-empty{grid-column:1 / -1;text-align:center;padding:60px 20px;color:#ffffffb3;font-family:Lato,sans-serif}.course-selector-empty p{margin:0 0 8px;font-size:18px;font-weight:600}.course-selector-empty .text-sm{font-size:14px;opacity:.7}.course-selector-modal::-webkit-scrollbar{width:12px}.course-selector-modal::-webkit-scrollbar-track{background:#0000004d;border-left:1px solid rgba(124,58,237,.2)}.course-selector-modal::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#7c3aed,#a855f7);border-radius:6px;border:2px solid rgba(0,0,0,.3);box-shadow:0 0 10px #7c3aed80}.course-selector-modal::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#8b5cf6,#c084fc);box-shadow:0 0 15px #7c3aedb3}@media(max-width:640px){.course-selector-modal{touch-action:auto;-webkit-overflow-scrolling:touch}.course-selector-overlay{-webkit-overflow-scrolling:touch}}.course-completion-overlay{position:fixed;inset:0;background:#000000e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:2000;overflow:hidden;overscroll-behavior:contain;touch-action:none}.confetti-particle{position:absolute;width:10px;height:10px;border-radius:50%;pointer-events:none}.course-completion-modal{background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:24px;border:2px solid rgba(16,185,129,.3);max-width:600px;width:90%;padding:48px 40px;box-shadow:0 25px 80px #10b9814d;position:relative;overflow:hidden;text-align:center;touch-action:auto;overscroll-behavior:contain}.trophy-container{position:relative;display:inline-block;margin-bottom:32px}.trophy-glow{position:absolute;inset:-20px;background:radial-gradient(circle,rgba(16,185,129,.4) 0%,transparent 70%);animation:pulse-glow 2s ease-in-out infinite}@keyframes pulse-glow{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}.trophy-icon{font-size:120px;position:relative;z-index:1;filter:drop-shadow(0 10px 30px rgba(255,215,0,.5));animation:trophy-bounce 1s ease-out}@keyframes trophy-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.completion-content{position:relative;z-index:1}.completion-content h2{margin:0 0 12px;font-size:36px;font-weight:800;background:linear-gradient(135deg,#10b981,#06b6d4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 4px 20px rgba(16,185,129,.3)}.course-title{margin:0 0 24px;font-size:24px;font-weight:600;color:#fff}.completion-message{font-size:16px;line-height:1.6;color:#fffc;max-width:480px;margin:0 auto 32px}.completion-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:32px}.stat-item{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:20px;display:flex;align-items:center;gap:16px;transition:all .3s}.stat-item:hover{background:#ffffff14;border-color:#10b9814d;transform:translateY(-2px)}.stat-icon{font-size:32px;filter:drop-shadow(0 2px 8px rgba(16,185,129,.3))}.stat-content{text-align:left}.stat-value{font-size:24px;font-weight:700;color:#10b981;line-height:1;margin-bottom:4px}.stat-label{font-size:12px;color:#fff9;text-transform:uppercase;letter-spacing:.5px}.achievement-badge{position:relative;background:linear-gradient(135deg,#10b981,#059669);border-radius:12px;padding:16px 24px;margin-bottom:32px;overflow:hidden}.badge-shine{position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shine 2s ease-in-out infinite}@keyframes shine{0%{left:-100%}50%,to{left:200%}}.badge-content{position:relative;display:flex;align-items:center;justify-content:center;gap:12px;color:#fff;font-weight:700;font-size:16px;text-transform:uppercase;letter-spacing:1px}.badge-icon{width:24px;height:24px;stroke-width:2.5}.completion-actions{display:flex;flex-direction:column;gap:12px}.btn-primary,.btn-secondary{padding:14px 28px;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;outline:none}.btn-primary{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 4px 20px #10b98166}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 30px #10b98180}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:#ffffff0d;color:#ffffffe6;border:1px solid rgba(255,255,255,.2)}.btn-secondary:hover{background:#ffffff1a;border-color:#ffffff4d}@media(max-width:640px){.course-completion-modal{padding:32px 24px}.trophy-icon{font-size:80px}.completion-content h2{font-size:28px}.course-title{font-size:20px}.completion-message{font-size:14px}.completion-stats{grid-template-columns:1fr}.stat-item{padding:16px}.stat-icon{font-size:24px}.stat-value{font-size:20px}}.milestone-map-container{position:relative;width:100%;height:100vh;height:100dvh;overflow:hidden;background:transparent;font-family:Cinzel,Trajan Pro,serif;transition:background-image 1.5s ease-in-out;-webkit-overflow-scrolling:touch;-webkit-transform:translateZ(0);transform:translateZ(0)}@media(max-width:640px){.milestone-map-container{height:auto;min-height:100vh;min-height:100dvh;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:auto}}.milestone-map-container:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at 30% 40%,rgba(74,158,255,.05) 0%,transparent 25%),radial-gradient(circle at 70% 60%,rgba(255,215,0,.05) 0%,transparent 25%),radial-gradient(circle at 50% 50%,rgba(157,78,221,.05) 0%,transparent 25%);animation:rotateBackground 60s linear infinite;pointer-events:none}@keyframes rotateBackground{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.parchment-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-image:repeating-linear-gradient(0deg,rgba(139,108,66,.01) 0px,transparent 1px,transparent 2px,rgba(139,108,66,.01) 3px),repeating-linear-gradient(90deg,rgba(139,108,66,.01) 0px,transparent 1px,transparent 2px,rgba(139,108,66,.01) 3px);opacity:.3;pointer-events:none;z-index:1;transition:opacity 1.5s ease-in-out}.ambient-particles{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:2}.ambient-particle{position:absolute;width:4px;height:4px;background:radial-gradient(circle,#4a9eff 0%,transparent 70%);border-radius:50%;animation:float-particle 8s ease-in-out infinite;opacity:0}@keyframes float-particle{0%,to{opacity:0;transform:translateY(0) scale(.5)}50%{opacity:.6;transform:translateY(-100px) scale(1)}}.milestone-paths{position:absolute;top:0;left:0;width:100%;height:100%;z-index:3;pointer-events:none}@media(max-width:640px){.milestone-paths{position:absolute;min-height:150vh;height:auto}}.milestone-path{transition:all .5s ease}.milestone-path.active{stroke-dasharray:200;stroke-dashoffset:200;animation:drawPath 3s ease-out forwards}.milestone-path-glow{stroke-dasharray:200;stroke-dashoffset:200;animation:drawPath 3s ease-out forwards,pulseGlow 2s ease-in-out infinite}.milestone-path-particles{stroke-dasharray:2 8;animation:flowParticles 4s linear infinite}@keyframes drawPath{to{stroke-dashoffset:0}}@keyframes pulseGlow{0%,to{opacity:.4}50%{opacity:.8}}@keyframes flowParticles{to{stroke-dashoffset:-100}}.map-title{position:absolute;top:80px;left:50%;transform:translate(-50%);text-align:center;z-index:10;color:#d4af37;text-shadow:0 0 10px rgba(212,175,55,.5),0 0 20px rgba(212,175,55,.3),2px 2px 4px rgba(0,0,0,.8)}.map-title h1{font-size:3rem;font-weight:700;margin:0;letter-spacing:3px;animation:titleGlow 3s ease-in-out infinite}.map-subtitle{font-size:1.2rem;font-style:italic;margin-top:.5rem;color:#b8946e;opacity:.9}.map-mobile-logo{display:none}@media(max-width:640px){.map-title{display:block}.map-title h1{font-size:1.75rem}.map-subtitle{display:none}}@keyframes titleGlow{0%,to{text-shadow:0 0 10px rgba(212,175,55,.5),0 0 20px rgba(212,175,55,.3),2px 2px 4px rgba(0,0,0,.8)}50%{text-shadow:0 0 20px rgba(212,175,55,.8),0 0 40px rgba(212,175,55,.5),2px 2px 4px rgba(0,0,0,.8)}}.milestones-container{position:absolute;top:0;left:0;width:100%;height:100%;z-index:5}@media(max-width:640px){.milestones-container{position:absolute;min-height:150vh;height:auto}}.milestone-map-container .milestone-node{position:absolute!important;transform:translate(-50%,-50%)!important;cursor:pointer;transition:all .3s ease;z-index:20;background:transparent!important;border:none!important;box-shadow:none!important}@media(max-width:640px){.milestone-map-container .milestone-node{position:absolute}}.milestone-map-container .milestone-node.locked{cursor:not-allowed;opacity:.5}.milestone-map-container .milestone-node.hovered{z-index:30;transform:translate(-50%,-50%) scale(1.1)}.milestone-glow{position:absolute;top:50%;left:50%;width:120px;height:120px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,var(--milestone-color, #4a9eff) 0%,transparent 70%);opacity:0;transition:opacity .3s ease}@media(max-width:640px){.milestone-glow{width:100px;height:100px}}.milestone-map-container .milestone-node.unlocked .milestone-glow{opacity:.3;animation:pulseGlowRing 2s ease-in-out infinite}.milestone-map-container .milestone-node.hovered .milestone-glow{opacity:.6;animation:pulseGlowRing 1s ease-in-out infinite}@keyframes pulseGlowRing{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.3}50%{transform:translate(-50%,-50%) scale(1.2);opacity:.6}}.milestone-circle{position:relative;width:80px;height:80px;border-radius:50%;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.1) 0%,transparent 50%),linear-gradient(135deg,#2a2520,#1a1510);border:3px solid var(--milestone-color, #4a9eff);box-shadow:0 0 20px var(--milestone-color, #4a9eff),inset 0 0 20px #00000080;display:flex;align-items:center;justify-content:center;transition:all .3s ease}@media(max-width:640px){.milestone-circle{width:70px;height:70px;border:2.5px solid var(--milestone-color, #4a9eff)}}.milestone-map-container .milestone-node.unlocked .milestone-circle{animation:rotateBorder 10s linear infinite}.milestone-map-container .milestone-node.completed .milestone-circle{background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.2) 0%,transparent 50%),linear-gradient(135deg,#3a3020,#2a2010);box-shadow:0 0 30px var(--milestone-color, #4a9eff),inset 0 0 30px #ffd70033}@keyframes rotateBorder{0%{filter:hue-rotate(0deg)}to{filter:hue-rotate(360deg)}}.milestone-inner-glow{position:absolute;top:50%;left:50%;width:60%;height:60%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,var(--milestone-color, #4a9eff) 0%,transparent 70%);opacity:0;transition:opacity .3s ease}.milestone-map-container .milestone-node.unlocked .milestone-inner-glow{opacity:.4;animation:pulseInnerGlow 2s ease-in-out infinite}@keyframes pulseInnerGlow{0%,to{opacity:.3;transform:translate(-50%,-50%) scale(.8)}50%{opacity:.6;transform:translate(-50%,-50%) scale(1)}}.milestone-map-container .milestone-icon{font-size:2rem;color:var(--milestone-color, #4a9eff);text-shadow:0 0 10px var(--milestone-color, #4a9eff);z-index:1;transition:all .3s ease}@media(max-width:640px){.milestone-map-container .milestone-icon{font-size:1.75rem}}.milestone-map-container .milestone-node.locked .milestone-icon{color:#555;text-shadow:none}.milestone-map-container .milestone-node.hovered .milestone-icon{transform:scale(1.2);filter:brightness(1.5)}.milestone-particles{position:absolute;top:50%;left:50%;width:100%;height:100%;pointer-events:none}.milestone-particle{position:absolute;top:50%;left:50%;width:6px;height:6px;background:var(--milestone-color, #4a9eff);border-radius:50%;transform-origin:center;animation:burstParticle 3s ease-out infinite;opacity:0}@keyframes burstParticle{0%{opacity:0;transform:translate(-50%,-50%) rotate(var(--angle)) translate(0)}20%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) rotate(var(--angle)) translate(60px)}}.milestone-map-container .milestone-label{position:absolute;top:calc(100% + 15px);left:50%;transform:translate(-50%);white-space:nowrap;text-align:center;background:transparent!important;border:none!important}.milestone-map-container .milestone-name{font-size:1.2rem;font-weight:700;color:#d4af37;text-shadow:0 0 5px rgba(212,175,55,.5),1px 1px 2px rgba(0,0,0,.8);letter-spacing:1px;margin-bottom:.3rem;background:transparent!important;border:none!important}.milestone-map-container .milestone-node.locked .milestone-name{color:#666;text-shadow:1px 1px 2px rgba(0,0,0,.8)}.milestone-map-container .milestone-description{font-size:.9rem;color:#b8946e;font-style:italic;max-width:200px;white-space:normal;word-wrap:break-word;overflow-wrap:break-word;background:#1a1410e6;padding:.5rem 1rem;border-radius:8px;border:1px solid rgba(212,175,55,.3);box-shadow:0 4px 12px #0009;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.milestone-lock{position:absolute;top:-5px;right:-5px;font-size:1.5rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.6));z-index:15}.milestone-expand-btn{position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--milestone-color, #4a9eff) 0%,rgba(0,0,0,.3) 100%);border:2px solid var(--milestone-color, #4a9eff);color:#fff;font-size:1.2rem;font-weight:700;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:25;box-shadow:0 0 10px var(--milestone-color, #4a9eff),0 2px 8px #0009;transition:all .3s ease;animation:pulseExpandBtn 2s ease-in-out infinite}.milestone-expand-btn:hover{transform:translate(-50%) scale(1.15);box-shadow:0 0 20px var(--milestone-color, #4a9eff),0 4px 12px #000c;animation:none}.milestone-expand-btn:active{transform:translate(-50%) scale(.95)}@keyframes pulseExpandBtn{0%,to{box-shadow:0 0 10px var(--milestone-color, #4a9eff),0 2px 8px #0009}50%{box-shadow:0 0 20px var(--milestone-color, #4a9eff),0 4px 12px #000c}}@media(max-width:640px){.milestone-expand-btn{width:26px;height:26px;font-size:1rem}}.milestone-completed-badge{position:absolute;top:-10px;right:-10px;width:30px;height:30px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;color:#fff;background-color:#10b981;border:2px solid #064e3b;border-radius:50%;box-shadow:0 0 10px #10b98180;z-index:15}.milestone-child{transform:translate(-50%,-50%) scale(.75)!important}.animate-child-appear{animation:childAppear .5s cubic-bezier(.34,1.56,.64,1) forwards;transform-origin:center}@keyframes childAppear{0%{opacity:0;transform:translate(-50%,-50%) scale(0)}60%{transform:translate(-50%,-50%) scale(.85)}to{opacity:1;transform:translate(-50%,-50%) scale(.75)}}.animate-child-line{animation:lineAppear .6s ease-out forwards;stroke-dasharray:100;stroke-dashoffset:100}@keyframes lineAppear{0%{stroke-dashoffset:100;opacity:0}to{stroke-dashoffset:0;opacity:.9}}.milestone-child .milestone-glow{width:90px;height:90px}.milestone-child .milestone-circle{width:60px;height:60px}.milestone-child .milestone-icon{font-size:1.2rem!important}.milestone-child.completed .milestone-icon{font-size:1.5rem!important}.milestone-child .milestone-lock{width:18px;height:18px;font-size:.7rem;top:-3px;right:-3px}.milestone-child.hovered{transform:translate(-50%,-50%) scale(.85)!important}.milestone-child .milestone-name{font-size:.8rem}@media(max-width:640px){.milestone-child .milestone-name{font-size:.65rem;white-space:nowrap}}.milestone-child .milestone-description{font-size:.7rem}.milestone-child-line{stroke:var(--line-color, #9d4edd);opacity:.9;transition:stroke .3s ease,opacity .3s ease}.milestone-child-line.inactive{stroke:#3a3a3a;opacity:.3}.milestone-child-line.active{animation:rotateLineColor 10s linear infinite}.milestone-child-line-glow{stroke:var(--line-color, #9d4edd);opacity:.3;filter:blur(2px);transition:opacity .3s ease}.milestone-child-line-glow.inactive{opacity:0}.milestone-child-line-glow.active{animation:lineGlowPulse 2s ease-in-out infinite,rotateLineGlowColor 10s linear infinite}@keyframes lineGlowPulse{0%,to{opacity:.3;filter:blur(2px) hue-rotate(0deg)}50%{opacity:.6;filter:blur(2px) hue-rotate(0deg)}}@keyframes rotateLineColor{0%{filter:drop-shadow(0 0 2px var(--line-color, #9d4edd)) hue-rotate(0deg)}to{filter:drop-shadow(0 0 2px var(--line-color, #9d4edd)) hue-rotate(360deg)}}@keyframes rotateLineGlowColor{0%{filter:blur(2px) hue-rotate(0deg)}to{filter:blur(2px) hue-rotate(360deg)}}@keyframes dashAnimation{to{stroke-dashoffset:-4}}.decorative-corners{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:8}.corner{position:absolute;width:120px;height:120px;border:2px solid #d4af37;opacity:.3;transition:opacity .3s ease}.corner:after{content:"✦";position:absolute;font-size:1.5rem;color:#d4af37;opacity:.5;text-shadow:0 0 10px rgba(212,175,55,.5);animation:twinkle 3s ease-in-out infinite}@keyframes twinkle{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.7;transform:scale(1.2)}}.corner-tl{top:70px;left:2%;border-right:none;border-bottom:none;border-top-left-radius:20px}.corner-tl:after{top:-10px;left:-10px}.corner-tr{top:70px;right:2%;border-left:none;border-bottom:none;border-top-right-radius:20px}.corner-tr:after{top:-10px;right:-10px}.corner-bl{bottom:2%;left:2%;border-right:none;border-top:none;border-bottom-left-radius:20px}.corner-bl:after{bottom:-10px;left:-10px}.corner-br{bottom:2%;right:2%;border-left:none;border-top:none;border-bottom-right-radius:20px}.corner-br:after{bottom:-10px;right:-10px}@media(max-width:640px){.map-title h1{font-size:2rem}.map-subtitle{font-size:1rem}.milestone-circle{width:60px;height:60px}.milestone-icon{font-size:1.5rem}.milestone-name{font-size:1rem}.milestone-description{font-size:.8rem;max-width:150px;white-space:normal;word-wrap:break-word;overflow-wrap:break-word}.corner{width:80px;height:80px}}.pathway-nav-tooltip{opacity:0!important;transition:opacity .3s ease!important}div:hover>.pathway-nav-tooltip{opacity:1!important}@keyframes pulse{0%,to{opacity:1;box-shadow:0 4px 6px #0000004d}50%{opacity:.85;box-shadow:0 6px 12px #dc262666}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.landing-page-3d,.landing-page-simple{position:relative;width:100%;min-height:100vh;background:transparent;overflow-x:hidden;color:#fff}.simple-sections-container{position:relative;z-index:1;width:100%;padding:0}.simple-section{width:100%;min-height:100vh;margin-bottom:40px;padding:40px 20px;border-radius:24px;border:2px solid transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background .8s ease,border-color .8s ease}body:has(.landing-page-3d),body:has(.landing-page-simple){height:auto!important;min-height:100vh}html:has(.landing-page-3d),html:has(.landing-page-simple){height:auto!important}.background-gradient{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;transition:background-color .8s ease;opacity:.3}.webgl-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none}.css3d-container{position:fixed;top:0;left:0;width:100%;height:100%;z-index:2;pointer-events:none}.css3d-container>div{pointer-events:none}.plane-content-wrapper{transition:opacity .5s ease;pointer-events:auto;background:transparent!important;border:none!important}.plane-content{color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;pointer-events:auto;background:transparent!important;border:none!important}.content-container{position:fixed;top:0;left:0;width:100%;height:100%;z-index:10;display:flex;align-items:center;justify-content:center;pointer-events:none}.section-wrapper{position:absolute;width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:4rem 2rem}.section-wrapper>*{width:100%;max-width:1200px;pointer-events:auto}.scroll-height-container{height:700vh;pointer-events:none}.scroll-progress{position:fixed;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#7c3aed,#ec4899,#3b82f6,#8b5cf6,#f59e0b 80%,#10b981,gold);transform-origin:0%;z-index:100;box-shadow:0 0 10px #7c3aed80}.hero-section{position:relative;width:100%;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:120px 20px 80px;overflow:visible}@media(max-width:767px){.hero-card-wrapper{max-width:100%;margin:0}.hero-card-border{border-radius:12px}.hero-card-frame{border-radius:12px;padding:40px 20px}}.hero-layer{position:absolute;inset:0;pointer-events:none;will-change:transform}.hero-layer-1{background:radial-gradient(circle at 30% 40%,rgba(124,58,237,.2) 0%,transparent 60%);z-index:1}.hero-layer-2{background:radial-gradient(circle at 70% 60%,rgba(236,72,153,.15) 0%,transparent 60%);z-index:2}.hero-layer-3{background:radial-gradient(circle at 50% 50%,rgba(59,130,246,.12) 0%,transparent 65%);z-index:3}.hero-layer-4{background:radial-gradient(circle at 20% 80%,rgba(168,85,247,.1) 0%,transparent 55%);z-index:4}.hero-card-wrapper{position:relative;z-index:5;max-width:1400px;width:100%;perspective:2000px;transform-style:preserve-3d}.hero-card-border{background:#321e5080;border:3px solid #7c3aed;border-radius:32px;padding:4px;box-shadow:0 0 40px #7c3aed4d,0 25px 70px #0009,inset 0 0 40px #7c3aed1a}.hero-card-frame{background:linear-gradient(135deg,#2d1b4e,#1a0a2e);border-radius:28px;padding:60px 50px 50px;position:relative;overflow:hidden}.hero-card-frame:before{content:"";position:absolute;inset:0;background:transparent;pointer-events:none}.hero-content{position:relative;z-index:1;width:100%;text-align:center;transform-style:preserve-3d;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;backface-visibility:hidden;transform:translateZ(0);will-change:transform;image-rendering:crisp-edges;image-rendering:-webkit-optimize-contrast}.hero-content *{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;backface-visibility:hidden}.hero-badge{display:inline-block;padding:10px 24px;background:#7c3aed33;border:2px solid rgba(124,58,237,.4);border-radius:30px;font-size:14px;font-weight:600;color:#a78bfa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);margin-bottom:32px;text-transform:uppercase;letter-spacing:1px;box-shadow:0 4px 12px #7c3aed33;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;backface-visibility:hidden;transform:translateZ(0)}.hero-title{font-size:clamp(2.5rem,8vw,5rem);font-weight:800;line-height:1.1;margin-bottom:24px;letter-spacing:-.02em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;backface-visibility:hidden;transform:translateZ(0)}.gradient-text{background:linear-gradient(135deg,#7c3aed,#ec4899,#3b82f6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradientShift 8s ease infinite;background-size:200% 200%}@keyframes gradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.hero-type-line{font-size:.95rem;font-weight:700;color:#a78bfacc;text-transform:uppercase;letter-spacing:1px;padding:12px 20px;background:#0000004d;border-left:3px solid #7c3aed;margin:0 auto 28px;max-width:600px}.hero-description{font-size:clamp(1rem,3vw,1.25rem);color:#fffc;margin-bottom:40px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;backface-visibility:hidden;transform:translateZ(0)}.hero-card-showcase{display:flex;gap:24px;justify-content:center;align-items:stretch;margin-bottom:40px;perspective:2000px;flex-wrap:nowrap;transform-style:preserve-3d}.showcase-card{position:relative;flex:1;max-width:280px;min-height:200px;background:#0006;border:2px solid rgba(124,58,237,.3);border-radius:16px;padding:28px;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);overflow:visible;will-change:transform;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;backface-visibility:hidden}.showcase-card:before{content:"";position:absolute;top:8px;right:8px;width:16px;height:16px;background:linear-gradient(135deg,#7c3aed,#a78bfa);border-radius:50%;opacity:.4}.showcase-card:hover{border-color:#7c3aed99;background:#321e5066;box-shadow:0 8px 24px #7c3aed4d}.card-content{position:relative;z-index:1;text-align:center;display:flex;flex-direction:column;height:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;backface-visibility:hidden;transform:translateZ(0)}.card-icon{font-size:2.5rem;margin-bottom:16px;flex-shrink:0;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.card-content h3{font-size:1.15rem;margin-bottom:12px;font-weight:700;color:#a78bfa;flex-shrink:0;text-transform:uppercase;letter-spacing:.5px}.card-content p{font-size:.9rem;color:#ffffffb3;line-height:1.5;flex-grow:1;display:flex;align-items:center;justify-content:center}.hero-cta{display:flex;gap:20px;justify-content:center;align-items:center;margin-bottom:32px;flex-wrap:wrap}.cta-primary,.cta-primary-large{padding:16px 40px;background:linear-gradient(135deg,#7c3aed,#6d28d9);border:2px solid rgba(124,58,237,.5);border-radius:50px;font-size:1.1rem;font-weight:700;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 10px 30px #7c3aed80;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;backface-visibility:hidden;transform:translateZ(0)}.cta-primary-large{padding:24px 60px;font-size:1.4rem}.cta-arrow,.cta-button-arrow{font-size:1.5rem}.hero-flavor-text{font-size:1rem;color:#a78bfab3;font-style:italic;text-align:center;padding:20px;margin-bottom:28px}.hero-bottom-info{display:flex;justify-content:space-between;align-items:center;padding-top:20px;border-top:1px solid rgba(124,58,237,.2);font-size:.85rem;color:#a78bfa99}.hero-set-info{font-weight:600;letter-spacing:1px}.hero-collector-number{font-weight:700}.scroll-indicator{position:absolute;bottom:-80px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;color:#a78bfab3;font-size:.9rem}.scroll-icon{font-size:1.5rem}.cta-primary:hover,.cta-primary-large:hover{transform:translateY(-2px);box-shadow:0 20px 50px #7c3aed99;background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.cta-secondary,.cta-secondary-large{padding:16px 40px;background:#ffffff0d;border:1px solid rgba(255,255,255,.2);border-radius:50px;font-size:1.1rem;font-weight:600;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;backface-visibility:hidden;transform:translateZ(0)}.cta-secondary-large{padding:20px 50px;font-size:1.25rem}.cta-secondary:hover,.cta-secondary-large:hover{background:#ffffff1a;border-color:#ffffff4d}.scroll-indicator{display:flex;flex-direction:column;align-items:center;gap:10px;color:#ffffff80;font-size:.9rem}.scroll-icon{font-size:2rem}.features-section{position:relative;padding:120px 20px;overflow:visible;z-index:2}.features-container{max-width:1400px;margin:0 auto;background:linear-gradient(135deg,#501e3c26,#3c142d1a);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:60px 40px;border-radius:32px}.features-card-wrapper{perspective:2000px;transform-style:preserve-3d}.features-card-border{background:#501e3c80;border:3px solid #ec4899;border-radius:24px;padding:4px;box-shadow:0 0 30px #ec48994d,0 20px 60px #0009,inset 0 0 30px #ec489926;transition:all .3s ease}.features-card-frame{background:linear-gradient(135deg,#3d1e2f,#1a0d13);border-radius:20px;padding:48px;position:relative;overflow:hidden}.features-card-frame:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 30%,rgba(236,72,153,.12) 0%,transparent 50%),radial-gradient(circle at 70% 70%,rgba(236,72,153,.08) 0%,transparent 50%);pointer-events:none}.features-title-box{display:flex;align-items:center;justify-content:space-between;padding:18px 28px;background:linear-gradient(135deg,#ec489933,#ec48991a);border:2px solid rgba(236,72,153,.4);border-radius:12px;margin-bottom:20px;position:relative;z-index:1}.features-card-title{font-size:2.2rem;font-weight:800;margin:0;color:#ec4899;text-shadow:0 2px 10px rgba(236,72,153,.5);letter-spacing:1.5px}.features-mana-symbol{font-size:2.2rem;filter:drop-shadow(0 2px 6px rgba(236,72,153,.5))}.features-type-line{font-size:1rem;font-weight:700;color:#ec4899e6;text-transform:uppercase;letter-spacing:1.5px;padding:14px 24px;background:#0006;border-left:4px solid #ec4899;margin-bottom:36px;position:relative;z-index:1}.features-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;margin-bottom:36px;position:relative;z-index:1}.feature-item{background:#0000004d;border:2px solid rgba(236,72,153,.25);border-radius:16px;padding:32px 24px;transition:all .3s ease;cursor:pointer;position:relative;display:flex;align-items:center;gap:20px}.feature-item:hover{border-color:#ec489980;background:#501e3c66;box-shadow:0 6px 20px #ec489933}.feature-icon-box{flex-shrink:0}.feature-icon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;border:3px solid rgba(236,72,153,.4);box-shadow:0 4px 12px #0006}.feature-content{flex:1;text-align:left}.feature-title{font-size:1.1rem;font-weight:700;margin-bottom:8px;color:#fbbf24;text-transform:uppercase;letter-spacing:1px;text-shadow:0 2px 6px rgba(251,191,36,.4)}.feature-description{font-size:.9rem;color:#ffffffbf;line-height:1.5;margin:0}.features-flavor-text{font-size:1rem;color:#ec4899cc;font-style:italic;text-align:center;padding:24px;margin-bottom:28px;position:relative;z-index:1;border-top:1px solid rgba(236,72,153,.15);border-bottom:1px solid rgba(236,72,153,.15)}.features-bottom-info{display:flex;justify-content:space-between;align-items:center;padding-top:20px;border-top:1px solid rgba(236,72,153,.25);font-size:.9rem;color:#ec4899b3;position:relative;z-index:1}.features-set-info{font-weight:600;letter-spacing:1.5px}.features-collector-number{font-weight:700;font-size:1rem}.game-modes-section{position:relative;padding:120px 20px;z-index:2;overflow:hidden}.section-header{text-align:center;margin-bottom:60px;position:relative;z-index:1}.section-title{font-size:3rem;font-weight:800;margin:0 0 16px;background:linear-gradient(135deg,#a78bfa,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 4px 20px rgba(167,139,250,.3)}.section-subtitle{font-size:1.25rem;color:#ffffffb3;margin:0;line-height:1.6}.game-modes-background{position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(60,30,80,.3) 0%,transparent 70%);pointer-events:none}.game-modes-container{max-width:1400px;margin:0 auto;position:relative;z-index:1;background:linear-gradient(135deg,#2d1b4e,#1a0a2e);padding:60px 40px;border-radius:32px}.game-modes-card-wrapper{max-width:1200px;margin:0 auto;transform-style:preserve-3d;perspective:1500px;transform:perspective(1000px) rotateY(-2deg) rotateX(1deg);transition:transform .3s ease}.game-modes-card-wrapper:hover{transform:perspective(1000px) rotateY(0) rotateX(0) scale(1.01)}.game-modes-card-border{position:relative;background:linear-gradient(135deg,#3c1e50f2,#28143cfa);border:3px solid rgba(167,139,250,.5);border-radius:24px;padding:3px;overflow:hidden;box-shadow:0 0 60px #a78bfa33,0 20px 60px #0006,inset 0 1px #ffffff1a}.game-modes-card-frame{background:linear-gradient(135deg,#2d1b4e,#1a0a2e);border-radius:21px;padding:52px;position:relative}.game-modes-title-box{display:flex;justify-content:space-between;align-items:center;padding:20px 28px;background:linear-gradient(135deg,#a78bfa26,#8b5cf61a);border:2px solid rgba(167,139,250,.4);border-radius:12px;margin-bottom:18px;box-shadow:0 4px 12px #0000004d}.game-modes-card-title{font-size:2.2rem;font-weight:800;color:#a78bfa;margin:0;text-shadow:0 2px 8px rgba(167,139,250,.6);letter-spacing:.5px;text-transform:uppercase}.game-modes-mana-cost{display:flex;gap:6px}.game-modes-type-line{padding:14px 28px;background:#0000004d;border:1px solid rgba(167,139,250,.3);border-radius:8px;margin-bottom:28px}.game-modes-type{font-size:1.1rem;font-weight:600;color:#a78bfaf2;text-transform:uppercase;letter-spacing:1px}.game-modes-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;margin-bottom:28px}.game-mode-option{background:#0000004d;border:2px solid rgba(167,139,250,.3);border-radius:0;padding:24px;transition:all .3s ease;cursor:pointer;position:relative;clip-path:polygon(2% 0%,98% 0%,100% 4%,100% 96%,98% 100%,2% 100%,0% 96%,0% 4%)}.game-mode-option:hover{border-color:#a78bfa80;background:#3c1e5066;box-shadow:0 4px 16px #a78bfa33}.mode-option-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.mode-option-icon{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0;border:2px solid rgba(167,139,250,.4);box-shadow:0 2px 8px #0000004d}.mode-option-title{font-size:1.2rem;font-weight:700;color:#a78bfa;margin:0;text-transform:uppercase;letter-spacing:.5px}.mode-option-description{font-size:1rem;color:#ffffffd9;margin-bottom:16px;line-height:1.6}.mode-option-features{list-style:none;padding:0;margin:0}.mode-option-features li{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:.95rem;color:#fffc}.mode-option-features .feature-check{width:18px;height:18px;background:linear-gradient(135deg,#a78bfa,#8b5cf6);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.65rem;flex-shrink:0;color:#1a0a2e;font-weight:700;box-shadow:0 2px 4px #0000004d}.game-modes-bottom-info{display:flex;justify-content:space-between;align-items:center;padding-top:20px;border-top:1px solid rgba(167,139,250,.25);font-size:.9rem;color:#a78bfab3;position:relative;z-index:1}.game-modes-set-info{font-weight:600;letter-spacing:1.5px}.game-modes-collector-number{font-weight:700;font-size:1rem}.game-modes-flavor-text{font-size:1.05rem;color:#ffffffb3;font-style:italic;line-height:1.6}.mode-glow{position:absolute;inset:-2px;border-radius:24px;opacity:0;filter:blur(20px);transition:opacity .3s ease;z-index:-1}.stats-section{position:relative;padding:120px 20px;z-index:2}.stats-container{max-width:1400px;margin:0 auto;background:linear-gradient(135deg,#1e3a52,#0f1e2e);padding:60px 40px;border-radius:32px}.stats-card-wrapper{max-width:1200px;margin:0 auto;transform-style:preserve-3d;perspective:1500px;transform:perspective(1000px) rotateY(2deg) rotateX(-1deg);transition:transform .3s ease}.stats-card-wrapper:hover{transform:perspective(1000px) rotateY(0) rotateX(0) scale(1.01)}.stats-card-border{position:relative;background:linear-gradient(135deg,#1e3c50f2,#14283cfa);border:3px solid rgba(34,211,238,.5);border-radius:24px;padding:3px;overflow:hidden;box-shadow:0 0 60px #22d3ee33,0 20px 60px #0006,inset 0 1px #ffffff1a}.stats-card-frame{background:linear-gradient(135deg,#1e3a52,#0f1e2e);border-radius:21px;padding:40px;position:relative}.stats-title-box{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:linear-gradient(135deg,#22d3ee26,#14b8a61a);border:2px solid rgba(34,211,238,.4);border-radius:12px;margin-bottom:14px;box-shadow:0 4px 12px #0000004d}.stats-card-title{font-size:1.9rem;font-weight:800;color:#22d3ee;margin:0;text-shadow:0 2px 8px rgba(34,211,238,.6);letter-spacing:.5px;text-transform:uppercase}.stats-mana-cost{display:flex;gap:6px}.stats-type-line{padding:10px 24px;background:#0000004d;border:1px solid rgba(34,211,238,.3);border-radius:8px;margin-bottom:20px}.stats-type{font-size:1.1rem;font-weight:600;color:#22d3eef2;text-transform:uppercase;letter-spacing:1px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:20px}.stat-item{background:#0000004d;border:2px solid rgba(34,211,238,.3);border-radius:12px;padding:24px 20px;text-align:center;cursor:pointer;transition:all .3s ease;position:relative}.stat-item:before{content:"";position:absolute;top:-4px;right:-4px;width:12px;height:12px;background:linear-gradient(135deg,#22d3ee,#14b8a6);transform:rotate(45deg);border-radius:2px;opacity:.6}.stat-item:hover{border-color:#22d3ee80;background:#1e3c5066;box-shadow:0 4px 16px #22d3ee33}.stat-icon{font-size:2.5rem;margin-bottom:12px;filter:drop-shadow(0 2px 8px rgba(34,211,238,.4))}.stat-number{font-size:2.5rem;font-weight:800;color:#22d3ee;text-shadow:0 2px 12px rgba(34,211,238,.6);margin-bottom:6px;display:block}.stat-label{font-size:1.1rem;color:#ffffffd9;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.stats-progress{background:#0000004d;border:2px solid rgba(34,211,238,.3);border-radius:12px;padding:20px;margin-bottom:20px}.progress-item{margin-bottom:16px}.progress-item:last-child{margin-bottom:0}.progress-label{display:flex;justify-content:space-between;margin-bottom:8px;font-size:1rem;font-weight:600;color:#ffffffe6}.progress-bar{height:12px;background:#00000080;border-radius:6px;overflow:hidden;border:1px solid rgba(34,211,238,.3)}.progress-fill{height:100%;background:linear-gradient(90deg,#22d3ee,#14b8a6);border-radius:6px;box-shadow:0 0 12px #22d3ee99}.stats-bottom-info{display:flex;justify-content:space-between;align-items:center;padding-top:20px;border-top:1px solid rgba(34,211,238,.25);font-size:.9rem;color:#22d3eeb3;position:relative;z-index:1}.stats-set-info{font-weight:600;letter-spacing:1.5px}.stats-collector-number{font-weight:700;font-size:1rem}.stats-flavor-text{font-size:1.05rem;color:#ffffffb3;font-style:italic;line-height:1.6}.stat-suffix{font-size:2rem}.stat-label{font-size:1rem;color:#ffffffb3;font-weight:500}.community-section{position:relative;padding:120px 20px;overflow:visible;z-index:2}.community-container{max-width:1400px;margin:0 auto;background:linear-gradient(135deg,#503c1e26,#3c2d141a);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:60px 40px;border-radius:32px}.community-card-wrapper{perspective:2000px;transform-style:preserve-3d}.community-card-border{background:#503c1e66;border:3px solid #ffd700;border-radius:24px;padding:4px;box-shadow:0 0 30px #ffd70033,0 20px 60px #00000080,inset 0 0 30px #ffd7001a;transition:all .3s ease}.community-card-frame{background:linear-gradient(135deg,#3d2f1e,#1a130d);border-radius:20px;padding:40px;position:relative;overflow:hidden}.community-card-frame:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 20%,rgba(255,215,0,.08) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(255,215,0,.05) 0%,transparent 50%);pointer-events:none}.community-title-box{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;background:linear-gradient(135deg,#ffd70026,#ffd70014);border:2px solid rgba(255,215,0,.3);border-radius:12px;margin-bottom:16px;position:relative;z-index:1}.community-card-title{font-size:2rem;font-weight:800;margin:0;color:gold;text-shadow:0 2px 8px rgba(0,0,0,.5);letter-spacing:1px}.community-mana-symbol{font-size:2rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.5))}.community-type-line{font-size:.95rem;font-weight:700;color:#ffd700cc;text-transform:uppercase;letter-spacing:1px;padding:12px 20px;background:#0000004d;border-left:3px solid #ffd700;margin-bottom:32px;position:relative;z-index:1}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin-bottom:32px;position:relative;z-index:1}.testimonial-card{position:relative;background:#0006;border:2px solid rgba(255,215,0,.2);border-radius:16px;padding:24px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);cursor:pointer;transition:all .3s ease}.testimonial-card:before{content:"";position:absolute;top:8px;right:8px;width:20px;height:20px;background:linear-gradient(135deg,gold,#d4af37);clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);opacity:.3}.testimonial-card:hover{border-color:#ffd70066;background:#503c1e4d;box-shadow:0 4px 16px #ffd70026;transform:translateY(-2px)}.testimonial-header{display:flex;align-items:center;gap:16px;margin-bottom:16px}.testimonial-avatar{width:48px;height:48px;background:linear-gradient(135deg,gold,#d4af37);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0;border:2px solid rgba(255,215,0,.3);box-shadow:0 2px 8px #0000004d}.testimonial-info{flex:1}.testimonial-name{font-size:1.1rem;font-weight:700;color:gold;margin-bottom:4px}.testimonial-role{font-size:.9rem;color:#ffd70099}.testimonial-rating{margin-bottom:16px;font-size:1rem}.testimonial-quote{font-size:1rem;color:#ffffffd9;line-height:1.6;font-style:italic;margin:0}.achievements-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:20px;margin-bottom:32px;position:relative;z-index:1}.achievement-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px 16px;background:#0000004d;border:2px solid rgba(255,215,0,.2);border-radius:12px;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.achievement-badge:after{content:"";position:absolute;top:50%;left:50%;width:100%;height:100%;background:radial-gradient(circle,rgba(255,215,0,.1) 0%,transparent 70%);transform:translate(-50%,-50%);opacity:0;transition:opacity .3s ease}.achievement-badge:hover{border-color:#ffd70066;background:#503c1e4d;transform:translateY(-2px)}.achievement-badge:hover:after{opacity:1}.badge-icon{font-size:2.5rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.badge-label{font-size:.85rem;color:#ffd700cc;text-align:center;line-height:1.3;font-weight:600}.social-proof{display:flex;flex-direction:column;align-items:center;gap:20px;padding:32px 20px;background:#0003;border-radius:16px;border:1px solid rgba(255,215,0,.15);margin-bottom:32px;position:relative;z-index:1}.social-avatars{display:flex;align-items:center;justify-content:center;gap:0}.social-avatar{width:48px;height:48px;background:linear-gradient(135deg,gold,#d4af37);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.4rem;border:3px solid #1a130d;margin-left:-12px;transition:transform .2s ease;box-shadow:0 2px 8px #0006}.social-avatar:first-child{margin-left:0}.social-avatar:hover{transform:translateY(-4px) scale(1.1);z-index:100!important}.social-text{font-size:1.1rem;color:#ffffffe6;text-align:center;margin:0}.social-text strong{color:gold;font-weight:700;font-size:1.3rem}.community-flavor-text{font-size:1rem;color:#ffd700b3;font-style:italic;text-align:center;padding:20px;margin-bottom:24px;position:relative;z-index:1}.community-bottom-info{display:flex;justify-content:space-between;align-items:center;padding-top:20px;border-top:1px solid rgba(255,215,0,.2);font-size:.85rem;color:#ffd70099;position:relative;z-index:1}.community-set-info{font-weight:600;letter-spacing:1px}.community-collector-number{font-weight:700}.cta-section{position:relative;padding:120px 20px;z-index:2;overflow:visible}.cta-container{max-width:1400px;margin:0 auto;background:linear-gradient(135deg,#1e503c26,#143c2d1a);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:60px 40px;border-radius:32px}.cta-card-wrapper{perspective:2000px;transform-style:preserve-3d}.cta-card-border{background:#1e503c80;border:3px solid #10b981;border-radius:24px;padding:4px;box-shadow:0 0 30px #10b9814d,0 20px 60px #0009,inset 0 0 30px #10b98126;transition:all .3s ease}.cta-card-frame{background:linear-gradient(135deg,#1e3d2f,#0d1a13);border-radius:20px;padding:48px;position:relative;overflow:hidden}.cta-card-frame:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 30%,rgba(16,185,129,.12) 0%,transparent 50%),radial-gradient(circle at 70% 70%,rgba(16,185,129,.08) 0%,transparent 50%);pointer-events:none}.cta-title-box{display:flex;align-items:center;justify-content:space-between;padding:18px 28px;background:linear-gradient(135deg,#10b98133,#10b9811a);border:2px solid rgba(16,185,129,.4);border-radius:12px;margin-bottom:20px;position:relative;z-index:1}.cta-card-title{font-size:2.2rem;font-weight:800;margin:0;color:#10b981;text-shadow:0 2px 10px rgba(16,185,129,.5);letter-spacing:1.5px}.cta-mana-symbol{font-size:2.2rem;filter:drop-shadow(0 2px 6px rgba(16,185,129,.5))}.cta-type-line{font-size:1rem;font-weight:700;color:#10b981e6;text-transform:uppercase;letter-spacing:1.5px;padding:14px 24px;background:#0006;border-left:4px solid #10b981;margin-bottom:32px;position:relative;z-index:1}.cta-logo-box{display:flex;justify-content:center;align-items:center;margin-bottom:32px;position:relative;z-index:1}.cta-logo-box img{width:100%;max-width:500px;height:auto;filter:drop-shadow(0 4px 16px rgba(16,185,129,.3))}.cta-content{text-align:center;position:relative;z-index:1}.cta-heading{font-size:clamp(1.5rem,4vw,2.2rem);font-weight:700;color:#10b981;margin-bottom:20px;line-height:1.3}.cta-description{font-size:1.05rem;color:#fffc;line-height:1.7;margin-bottom:32px;max-width:800px;margin-left:auto;margin-right:auto}.cta-features{display:flex;justify-content:center;gap:32px;flex-wrap:wrap;margin-bottom:32px}.cta-feature-item{display:flex;align-items:center;gap:10px;font-size:1rem;color:#fffc;font-weight:500}.cta-check{width:24px;height:24px;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;color:#fff;flex-shrink:0;box-shadow:0 2px 8px #10b98166}.cta-buttons{display:flex;gap:20px;justify-content:center;align-items:center;margin-bottom:0;flex-wrap:wrap}.cta-secondary-large{padding:20px 48px;background:#ffffff0d;border:2px solid rgba(16,185,129,.3);border-radius:50px;font-size:1.2rem;font-weight:700;color:#10b981;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 4px 16px #0000004d;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.cta-secondary-large:hover{background:#10b9811a;border-color:#10b98180;box-shadow:0 0 30px #10b9814d}.cta-flavor-text{font-size:1rem;color:#10b981cc;font-style:italic;text-align:center;padding:28px 24px;margin-top:36px;margin-bottom:28px;position:relative;z-index:1;border-top:1px solid rgba(16,185,129,.15);border-bottom:1px solid rgba(16,185,129,.15)}.cta-bottom-info{display:flex;justify-content:space-between;align-items:center;padding-top:20px;border-top:1px solid rgba(16,185,129,.25);font-size:.9rem;color:#10b981b3;position:relative;z-index:1}.cta-set-info{font-weight:600;letter-spacing:1.5px}.cta-collector-number{font-weight:700;font-size:1rem}.cta-particles{position:absolute;inset:0;pointer-events:none;z-index:1}.cta-particle{position:absolute;width:4px;height:4px;background:#7c3aed;border-radius:50%;bottom:0;left:50%}.credits-section{position:relative;padding:80px 20px;z-index:2;display:flex;align-items:center;justify-content:center}.credits-container{width:100%;max-width:1400px;margin:0 auto;background:linear-gradient(135deg,#1e3c5026,#142d3c1a);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:60px 40px;border-radius:32px}.credits-card{background:#1e325066;border:3px solid #3b82f6;border-radius:24px;padding:4px;box-shadow:0 0 30px #3b82f64d,0 20px 60px #00000080,inset 0 0 30px #3b82f626;position:relative;overflow:hidden;transition:all .3s ease}.credits-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 20%,rgba(59,130,246,.12) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(59,130,246,.08) 0%,transparent 50%);pointer-events:none}.credits-card-frame{background:linear-gradient(135deg,#1e3a52,#0f1e2e);border-radius:20px;padding:52px;position:relative}.credits-title-box{display:flex;justify-content:space-between;align-items:center;padding:24px 36px;background:linear-gradient(135deg,#3b82f633,#3b82f61a);border:2px solid rgba(59,130,246,.4);border-radius:12px;margin-bottom:18px;box-shadow:0 4px 12px #0000004d}.credits-card-title{font-size:2.6rem;font-weight:800;color:#3b82f6;margin:0;text-shadow:0 2px 8px rgba(59,130,246,.5);letter-spacing:.5px}.credits-mana-cost{display:flex;gap:6px}.mana-symbol{width:32px;height:32px;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;color:#fff;box-shadow:0 2px 6px #0006,inset 0 1px 2px #ffffff4d}.credits-type-line{padding:16px 36px;background:#0000004d;border:1px solid rgba(59,130,246,.3);border-radius:8px;margin-bottom:18px}.credits-type{font-size:1.3rem;font-weight:600;color:#3b82f6e6;text-transform:uppercase;letter-spacing:1px}.credits-image-box{background:linear-gradient(135deg,#00000080,#000000b3);border:3px solid rgba(59,130,246,.4);border-radius:12px;padding:36px;margin-bottom:18px;display:flex;align-items:center;justify-content:center;min-height:260px;position:relative;overflow:hidden;box-shadow:inset 0 2px 8px #0009,0 4px 12px #3b82f633}.credits-image-box:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 30%,rgba(59,130,246,.08) 0%,transparent 60%),repeating-linear-gradient(45deg,transparent,transparent 10px,rgba(59,130,246,.02) 10px,rgba(59,130,246,.02) 20px);pointer-events:none}.credits-logo-image{max-width:100%;max-height:240px;width:auto;height:auto;object-fit:contain;position:relative;z-index:1;filter:drop-shadow(0 4px 12px rgba(59,130,246,.3))}.credits-text-box{background:linear-gradient(135deg,#ffffff08,#ffffff03);border:1px solid rgba(59,130,246,.2);border-radius:12px;padding:40px;margin-bottom:18px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.credits-section-block{margin-bottom:26px}.credits-section-block:last-child{margin-bottom:0}.credits-section-header{font-size:1.4rem;font-weight:700;color:gold;margin:0 0 14px;text-transform:uppercase;letter-spacing:.5px;font-style:italic}.credits-text{font-size:1.15rem;line-height:1.7;color:#ffffffd9;margin:0 0 12px}.credits-text:last-child{margin-bottom:0}.credits-link{color:gold;text-decoration:none;font-weight:600;transition:all .2s ease;border-bottom:1px solid rgba(255,215,0,.3)}.credits-link:hover{color:#ffed4e;border-bottom-color:#ffed4e}.credits-bottom-info{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:#0000004d;border:1px solid rgba(255,215,0,.2);border-radius:8px}.credits-copyright{font-size:.85rem;color:#fff9;font-weight:500}.credits-set-info{display:flex;align-items:center;gap:12px}.credits-collector{font-size:.85rem;color:#fff9;font-weight:500}.credits-rarity{font-size:1.5rem;color:gold;text-shadow:0 0 8px rgba(255,215,0,.6)}@media(max-width:767px){.hero-section{padding:20px .75rem 60px}.features-section{padding:60px 0}.features-container{padding:0;border-radius:12px;background:transparent}.features-card-border{border-radius:12px;margin:0 .75rem}.features-card-frame{border-radius:12px;padding:40px 20px}.game-modes-section{padding:60px 0}.section-header{margin-bottom:40px;padding:0 20px}.section-title{font-size:2rem;margin-bottom:12px}.section-subtitle{font-size:1rem}.game-modes-container{padding:0;border-radius:12px}.game-modes-card-border{border-radius:12px;margin:0 .75rem}.game-modes-card-frame{border-radius:12px;padding:40px 20px}.stats-section{padding:60px 0}.stats-container{padding:0;border-radius:12px}.stats-card-border{border-radius:12px;margin:0 .75rem}.stats-card-frame{border-radius:12px;padding:40px 20px}.community-section{padding:60px 0}.community-container{padding:0;border-radius:12px;background:transparent}.community-card-border{border-radius:12px;margin:0 .75rem}.community-card-frame{border-radius:12px;padding:40px 20px}.credits-container{padding:0;border-radius:12px;background:transparent}.credits-card{border-radius:12px;margin:0 .75rem}.credits-card-frame{border-radius:12px;padding:40px 20px}.hero-card-showcase{display:grid;grid-auto-flow:column;grid-auto-columns:250px;gap:.75rem;justify-content:flex-start;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:thin;touch-action:manipulation;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;padding:0 12px 1.5rem;margin-left:0;margin-right:0;width:100%;cursor:grab;-webkit-user-select:none;user-select:none}.hero-card-showcase:active{cursor:grabbing}.hero-card-showcase::-webkit-scrollbar{height:8px}.hero-card-showcase::-webkit-scrollbar-thumb{background:#94a3b859;border-radius:999px}.hero-card-showcase::-webkit-scrollbar-track{background:#0f172a59}.showcase-card{flex:0 0 250px;flex-shrink:0;scroll-snap-align:start;width:250px;max-width:250px;min-width:250px;min-height:180px;padding:16px 12px}.showcase-card:first-child{margin-left:0}.showcase-card:last-child{margin-right:0}.card-icon{font-size:2rem;margin-bottom:8px}.card-content h3{font-size:1rem;line-height:1.2;margin-bottom:6px}.card-content p{font-size:.8rem;line-height:1.3}.section-wrapper{padding:2rem .75rem}.features-grid,.game-modes-grid,.stats-grid,.testimonials-grid{grid-template-columns:1fr;padding:0 1rem}.cta-section{padding:60px 0 40px}.cta-container{margin:0;border-radius:12px;min-height:auto;aspect-ratio:auto}.cta-content{padding:40px 20px}.cta-title{font-size:clamp(1.5rem,8vw,2rem);margin-bottom:16px}.cta-description{font-size:clamp(.9rem,4vw,1.1rem);margin-bottom:30px}.cta-buttons{flex-direction:column;width:100%;gap:16px}.cta-primary-large,.cta-secondary-large{width:100%;padding:18px 40px;font-size:1.1rem}.achievements-row{grid-template-columns:repeat(2,1fr);gap:16px;padding:0}.achievement-badge{padding:24px 16px}.badge-icon{font-size:2rem}.badge-label{font-size:.85rem}.social-avatars{max-width:100%;overflow-x:auto;justify-content:flex-start;padding:0;touch-action:manipulation}.social-avatar{width:40px;height:40px;font-size:1.25rem;margin-left:-10px;flex-shrink:0}.credits-section{padding:60px 0}.credits-card-frame{padding:28px 20px}.credits-title-box{padding:16px 18px;flex-direction:column;gap:12px;text-align:center}.credits-card-title{font-size:1.5rem}.credits-image-box{min-height:180px;padding:20px}.credits-logo-image{max-height:160px}.credits-text-box{padding:20px}.credits-section-header{font-size:1rem}.credits-text{font-size:.875rem}.credits-bottom-info{flex-direction:row;justify-content:space-between;gap:8px;font-size:.7rem;padding:12px 16px}.credits-copyright{white-space:nowrap;font-size:.7rem;flex-shrink:0}.credits-set-info{flex-shrink:0}.simple-section{padding:40px 0;margin-bottom:0;border-radius:0;border-left:none;border-right:none}}.toast-container{position:fixed;bottom:24px;right:24px;z-index:10000;display:flex;flex-direction:column;gap:12px;pointer-events:none;max-width:420px}.toast-item{position:relative;background:var(--bg-secondary, #242424);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:12px;box-shadow:0 8px 24px #0006,0 0 0 1px #ffffff0d;padding:16px;display:flex;align-items:flex-start;gap:12px;min-width:320px;max-width:420px;pointer-events:auto;overflow:hidden}.toast-item.clickable{cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.toast-item.clickable:hover{transform:translateY(-2px);box-shadow:0 12px 32px #00000080,0 0 0 1px #ffffff1a}.toast-icon{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border-radius:10px;font-size:20px}.toast-content{flex:1;min-width:0}.toast-title{font-size:15px;font-weight:600;color:var(--text-primary, #e0e0e0);margin-bottom:4px;line-height:1.4}.toast-message{font-size:14px;color:var(--text-secondary, #999);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.toast-dismiss{flex-shrink:0;padding:4px;background:transparent;border:none;color:var(--text-tertiary, #666);cursor:pointer;border-radius:4px;transition:all .2s ease}.toast-dismiss:hover{background:#ffffff1a;color:var(--text-secondary, #999)}.toast-progress{position:absolute;bottom:0;left:0;height:3px;width:100%;transform-origin:left;opacity:.6}@media(max-width:480px){.toast-container{left:16px;right:16px;bottom:16px;max-width:none}.toast-item{min-width:auto;max-width:none}}@media(prefers-color-scheme:light){.toast-item{background:#fff;border-color:#0000001a;box-shadow:0 8px 24px #00000026,0 0 0 1px #0000000d}.toast-item.clickable:hover{box-shadow:0 12px 32px #0003,0 0 0 1px #0000001a}.toast-icon{background:#0000000d}.toast-title{color:#333}.toast-message{color:#666}.toast-dismiss{color:#999}.toast-dismiss:hover{background:#0000000d;color:#666}}.toast-item:focus-within{outline:2px solid var(--accent-primary, #4a9eff);outline-offset:2px}@media(prefers-reduced-motion:reduce){.toast-item{animation:none}}
