.btn-gold{padding:12px 26px;border-radius:11px;background:linear-gradient(180deg,#f3d488,#caa24e 42%,#9a6f2c);box-shadow:inset 0 1px 1px #fffae1cc,inset 0 -2px 4px #462a0e99,0 6px 20px #0000008c,0 0 22px #f7c86e47;font-family:Cinzel,serif;font-weight:900;font-size:13px;letter-spacing:2px;text-transform:uppercase;color:#3a230c;text-shadow:0 1px 0 rgba(255,245,210,.6);border:none;cursor:pointer;transition:box-shadow .15s,filter .15s}.btn-gold:hover:not(:disabled){box-shadow:inset 0 1px 1px #fffae1cc,inset 0 -2px 4px #462a0e99,0 6px 20px #0000008c,0 0 38px #f7c86eb3}.btn-gold:disabled{filter:grayscale(.55) brightness(.68);cursor:not-allowed}.btn-gold.btn-big{padding:15px 26px;font-size:15px}.btn-dark{padding:12px 26px;border-radius:11px;background:#1e160ed9;box-shadow:inset 0 0 0 1px #d6a0508c;font-family:Cinzel,serif;font-weight:700;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:#d8b878;border:none;cursor:pointer;transition:box-shadow .15s,color .15s}.btn-dark:hover:not(:disabled){box-shadow:inset 0 0 0 1px #d6a050e6,0 0 18px #f7c86e40;color:#f0c98a}.btn-dark:disabled{filter:grayscale(.55) brightness(.68);cursor:not-allowed}@keyframes landingEmber{0%{transform:translateY(0) scale(1);opacity:0}12%{opacity:.8}80%{opacity:.5}to{transform:translateY(-220px) scale(.35);opacity:0}}@keyframes landingTitleGlow{0%,to{text-shadow:0 0 26px rgba(247,200,110,.35),0 2px 0 rgba(0,0,0,.6)}50%{text-shadow:0 0 44px rgba(247,200,110,.6),0 2px 0 rgba(0,0,0,.6)}}.landing-root{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;overflow-y:auto;background:radial-gradient(ellipse 70% 55% at 50% 42%,#3a2616,#241509 38%,#140c06 70%,#080503);font-family:Spectral,Georgia,serif}.landing-root:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 16% 26%,rgba(214,150,60,.22),transparent 30%),radial-gradient(circle at 84% 22%,rgba(180,90,50,.16),transparent 32%),radial-gradient(circle at 50% 96%,rgba(230,170,80,.2),transparent 42%);pointer-events:none}.landing-root:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;box-shadow:inset 0 0 220px 70px #000000d9;pointer-events:none}.landing-ember{position:fixed;border-radius:50%;pointer-events:none;z-index:1;background:#ffcf78;box-shadow:0 0 8px 2px #ffbe5ab3;animation-name:landingEmber;animation-timing-function:linear;animation-iteration-count:infinite}.landing-center{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:18px;padding:48px 20px;width:min(420px,92vw)}.landing-title h1{display:flex;flex-direction:column;align-items:center;gap:2px;margin:0;font-family:Cinzel,serif;font-weight:900;color:#f3d68c;text-transform:uppercase;animation:landingTitleGlow 5s ease-in-out infinite}.landing-title h1 span{font-size:clamp(30px,7vw,44px);letter-spacing:6px;line-height:1.1}.landing-title .landing-title-sub{font-size:clamp(18px,4vw,24px);letter-spacing:12px;color:#caa24e;text-indent:12px}.landing-card-count{font-size:13px;letter-spacing:1px;font-style:italic}.landing-card-count .count-loading{color:#9a7a4a}.landing-card-count .count-ok{color:#b9a06a}.landing-card-count .count-warn{color:#c8814e}.landing-loading{color:#9a7a4a;font-family:Cinzel,serif;letter-spacing:3px;font-size:14px}.landing-menu{display:flex;flex-direction:column;align-items:stretch;gap:12px;width:100%}.landing-greeting{margin:0 0 4px;text-align:center;color:#b9a06a;font-size:15px;letter-spacing:1px}.landing-greeting strong{color:#f0c98a;font-family:Cinzel,serif;letter-spacing:2px}.landing-gold{margin-left:12px;font-family:Cinzel,serif;font-weight:700;color:#f3d68c;text-shadow:0 0 12px rgba(247,200,110,.4)}.landing-hint{margin:4px 0 0;text-align:center;color:#7a5a3a;font-size:12px;font-style:italic;letter-spacing:.5px}.auth-panel{display:flex;flex-direction:column;gap:14px;width:100%;padding:22px 22px 18px;border-radius:14px;background:#140d07d1;box-shadow:inset 0 0 0 1px #d6a05059,inset 0 1px #f3d4881f,0 12px 40px #0009}.auth-tabs{display:flex;gap:6px}.auth-tab{flex:1;padding:9px 0;border:none;border-radius:8px;background:transparent;color:#8a6a42;font-family:Cinzel,serif;font-weight:700;font-size:12px;letter-spacing:2px;text-transform:uppercase;cursor:pointer;transition:color .15s,background .15s}.auth-tab:hover{color:#d8b878}.auth-tab.active{background:#d6a05024;color:#f0c98a;box-shadow:inset 0 0 0 1px #d6a05066}.auth-form{display:flex;flex-direction:column;gap:10px}.auth-form input{padding:11px 14px;border-radius:9px;border:1px solid rgba(214,160,80,.35);background:#0a0603b3;color:#ecd9ac;font-family:Spectral,Georgia,serif;font-size:14px;outline:none;transition:border-color .15s,box-shadow .15s}.auth-form input::placeholder{color:#7a5a3a}.auth-form input:focus{border-color:#f3d488bf;box-shadow:0 0 12px #f7c86e40}.auth-error{margin:0;color:#d9825f;font-size:13px;font-style:italic}.auth-notice{margin:0;color:#a8c08a;font-size:13px;font-style:italic}.auth-link{align-self:center;padding:2px 4px;border:none;background:none;color:#9a7a4a;font-family:Spectral,Georgia,serif;font-size:13px;font-style:italic;text-decoration:underline;text-underline-offset:3px;cursor:pointer;transition:color .15s}.auth-link:hover{color:#d8b878}.auth-divider{display:flex;align-items:center;gap:10px;color:#7a5a3a;font-size:11px;letter-spacing:2px;text-transform:uppercase}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,rgba(214,160,80,.4),transparent)}.btn-google{display:flex;align-items:center;justify-content:center;gap:10px;padding:11px 20px;border-radius:9px;border:1px solid rgba(214,160,80,.35);background:#1e160eb3;color:#d8b878;font-family:Spectral,Georgia,serif;font-size:14px;cursor:pointer;transition:border-color .15s,box-shadow .15s}.btn-google:hover{border-color:#d6a050b3;box-shadow:0 0 16px #f7c86e33}.btn-guest{margin-top:2px}@media (max-width: 700px){.landing-center{padding:32px 14px;gap:14px}.landing-title h1 span{letter-spacing:4px}.landing-title .landing-title-sub{letter-spacing:8px;text-indent:8px}}.dev-page{flex:1;min-height:0;overflow-y:auto;padding:0 0 60px;max-width:1180px;width:100%;margin:0 auto}.dev-header{display:flex;align-items:center;gap:16px;padding:20px 24px;border-bottom:1px solid #1a1a3a;position:sticky;top:0;background:#0d0d1a;z-index:10}.dev-header h1{margin:0;font-size:20px;font-weight:700;color:#aad;flex:1}.card-count{font-size:13px;color:#668;background:#1a1a2e;padding:4px 12px;border-radius:12px}.btn-back{background:#ffffff12;color:#aac;padding:8px 14px;border-radius:6px;font-size:14px;border:1px solid rgba(255,255,255,.1);transition:background .15s}.btn-back:hover{background:#ffffff1f}.banner{margin:16px 24px;padding:12px 16px;border-radius:6px;font-size:14px;line-height:1.5}.banner-warn{background:#2a2a00;border:1px solid #665500;color:#ca4}.banner-error{background:#2a0000;border:1px solid #660000;color:#f66}.dev-form-panel,.dev-list-panel,.viewer-panel{margin:24px;background:#ffffff05;border:1px solid #1a1a3a;border-radius:10px;padding:20px 24px}.dev-form-panel h2,.dev-list-panel h2,.viewer-panel h2{margin:0 0 18px;font-size:15px;font-weight:700;color:#88b;text-transform:uppercase;letter-spacing:1px}.builder-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:20px;margin:24px;align-items:start}.builder-layout .dev-form-panel,.builder-layout .viewer-panel{margin:0}.dev-form{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end}.field{display:flex;flex-direction:column;gap:6px;flex:1;min-width:160px}.field-desc{flex:2}.field label{font-size:12px;color:#668;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.optional{font-weight:400;color:#446}.field input{width:100%}.field input[type=file]{padding:8px}.form-error{width:100%;margin:0;font-size:13px;color:#f76}.btn-primary{padding:10px 22px;background:linear-gradient(135deg,#248,#35a);color:#fff;border-radius:6px;font-size:14px;font-weight:700;transition:opacity .15s,transform .1s;white-space:nowrap;align-self:flex-end}.btn-primary:hover:not(:disabled){transform:translateY(-1px);opacity:.9}.btn-secondary{padding:10px 16px;background:#25253d;color:#c6c6e8;border:1px solid #38385a;border-radius:6px;font-size:14px;font-weight:700;transition:opacity .15s,transform .1s;white-space:nowrap;align-self:flex-end}.btn-secondary:hover:not(:disabled){transform:translateY(-1px);opacity:.9}.field-strength{flex:0 0 118px;min-width:100px}.field-image{flex-basis:100%}.crop-controls{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:14px;width:100%}.card-preview{display:flex;justify-content:center}.preview-frame{width:min(100%,280px);aspect-ratio:5 / 7;display:flex;flex-direction:column;padding:12px;border-radius:8px;border:2px solid #252545;background:linear-gradient(180deg,#ffffff17,#ffffff05),#151521;box-shadow:0 18px 40px #00000052}.preview-header{min-height:42px;display:grid;grid-template-columns:minmax(0,1fr) 38px;gap:10px;align-items:center}.preview-header h3{margin:0;color:#f2f0dc;font-size:18px;line-height:1.05;overflow-wrap:anywhere}.strength-gem{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;font-weight:800;border:2px solid rgba(255,255,255,.26);box-shadow:inset 0 0 14px #00000059}.preview-art{position:relative;flex:1 1 auto;min-height:0;margin:10px 0;overflow:hidden;border-radius:5px;border:1px solid rgba(255,255,255,.18);background:#0a0a14}.preview-art img{width:100%;height:100%;display:block;object-fit:cover;transform-origin:center}.preview-art-empty{height:100%;display:grid;place-items:center;color:#557;font-size:13px;text-transform:uppercase;letter-spacing:1px;background:linear-gradient(135deg,rgba(255,255,255,.05) 25%,transparent 25%) 0 0 / 18px 18px,#10101f}.preview-body{min-height:94px;padding:10px;border-radius:5px;background:#f5eccdeb;color:#201d18;border:1px solid rgba(0,0,0,.25)}.preview-body p{margin:0;font-size:13px;line-height:1.35;overflow-wrap:anywhere}.hint{color:#446;font-size:14px;text-align:center;padding:20px 0}.card-table{width:100%;border-collapse:collapse;font-size:14px}.card-table th{text-align:left;padding:8px 12px;font-size:11px;color:#557;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #1a1a3a}.card-table td{padding:10px 12px;border-bottom:1px solid #111130;vertical-align:middle}.card-table tr:hover td{background:#ffffff05}.card-table tr.editing td{background:#5050a014}.strength-badge{display:inline-block;width:28px;height:28px;line-height:28px;text-align:center;border-radius:4px;font-weight:700;font-size:14px}.strength-1{background:#1a3a8a;color:#acf}.strength-2{background:#1a6a2a;color:#afa}.strength-3{background:#8a6a00;color:#feb}.strength-4{background:#9a3434;color:#ffd7d7}.card-name{font-weight:600;color:#cce}.card-desc{color:#668;font-size:13px}.muted{color:#335}.actions{white-space:nowrap}.btn-sm{padding:5px 12px;border-radius:4px;font-size:12px;font-weight:600;margin-left:6px;transition:opacity .15s}.btn-sm:first-child{margin-left:0}.btn-edit{background:#225;color:#aad}.btn-edit:hover{background:#337}.btn-save{background:#242;color:#8c8}.btn-save:hover{background:#363}.btn-cancel{background:#333;color:#aaa}.btn-delete{background:#311;color:#c66}.btn-delete:hover{background:#422}.btn-confirm-delete{background:#a22;color:#fff}.inline-input{width:100%;padding:5px 8px;font-size:13px}.inline-strength{width:60px}.inline-picture-cell{min-width:170px}.inline-file{width:118px;padding:5px;font-size:11px}.inline-crop-controls{display:grid;gap:4px;margin-top:8px}.inline-crop-controls label{display:grid;grid-template-columns:14px minmax(90px,1fr);align-items:center;gap:6px;color:#668;font-size:11px}.inline-crop-controls input{width:100%}.card-thumb{width:42px;aspect-ratio:5 / 7;display:block;object-fit:cover;border-radius:4px;border:1px solid #333366;background:#112}@media (max-width: 860px){.builder-layout,.crop-controls{grid-template-columns:1fr}.card-table{min-width:760px}.dev-list-panel{overflow-x:auto}}.keyword-picker{display:flex;flex-wrap:wrap;gap:6px}.keyword-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:12px;font-size:12px;cursor:pointer;-webkit-user-select:none;user-select:none;background:#111130;border:1px solid #333366;color:#99b;transition:all .12s ease}.keyword-chip input{display:none}.keyword-chip:hover:not(.disabled){border-color:#55a;color:#cce}.keyword-chip.active{background:#2a2a6a;border-color:#77c;color:#e8e8ff}.keyword-chip.disabled{opacity:.35;cursor:not-allowed}.keyword-picker.compact .keyword-chip{padding:3px 7px;font-size:13px}.card-keywords{white-space:nowrap}.keyword-tag{display:inline-block;padding:3px 8px;margin-right:4px;border-radius:10px;font-size:12px;background:#1c1c4a;border:1px solid #3a3a7a;color:#bbe;cursor:help}.preview-keywords{padding:8px 12px 0}.preview-keywords p{margin:0 0 6px;font-size:12px;line-height:1.4;color:#bbe}.dev-tabs{display:flex;gap:8px;margin:0 0 16px}.dev-tab{padding:8px 22px;border:1px solid #333355;border-radius:8px;background:transparent;color:#668;font-size:13px;font-weight:600;letter-spacing:1px;cursor:pointer;transition:all .15s}.dev-tab:hover:not(:disabled){color:#bbe}.dev-tab.active{background:#5050a02e;border-color:#55a;color:#cce}.dev-tab:disabled{opacity:.4;cursor:not-allowed}.pack-status{padding:3px 10px;border-radius:6px;font-size:11px;font-weight:700;letter-spacing:1px}.pack-status.published{background:#1a6a2a;color:#afa}.pack-status.draft{background:#335;color:#99b}.shuttle-toolbar{display:flex;gap:14px;align-items:center;margin:0 0 12px}.shuttle-toolbar input[type=search]{flex:1;max-width:320px;padding:8px 12px;border-radius:7px;border:1px solid #333355;background:#14142a;color:#cce;font-size:13px}.shuttle-default-rarity{font-size:12px;color:#668}.shuttle-toolbar select,.shuttle-tile select{padding:6px 8px;border-radius:7px;border:1px solid #333355;background:#14142a;color:#cce;font-size:12px}.shuttle{display:grid;grid-template-columns:1fr 1fr;gap:14px}.shuttle-panel{display:flex;flex-direction:column;border:1px solid #22223c;border-radius:10px;background:#0a0a1a80;min-height:220px}.shuttle-panel-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid #22223c;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#668}.shuttle-list{flex:1;overflow-y:auto;max-height:420px;padding:8px;display:flex;flex-direction:column;gap:6px}.shuttle-tile{display:flex;align-items:center;gap:10px;width:100%;padding:6px 10px 6px 6px;border:1px solid transparent;border-radius:8px;background:#ffffff08;color:#cce;font-size:13px;text-align:left;cursor:pointer;transition:background .12s,border-color .12s}.shuttle-tile:hover{background:#5050a024;border-color:#44446a}.shuttle-tile.in-pack{cursor:default}.shuttle-tile.rarity-common{border-left:3px solid #8a8a8a}.shuttle-tile.rarity-rare{border-left:3px solid #4a90d9}.shuttle-tile.rarity-epic{border-left:3px solid #a55ad9}.shuttle-tile.rarity-legendary{border-left:3px solid #f3d68c}.shuttle-thumb{width:48px;height:64px;flex:0 0 48px;border-radius:6px;object-fit:cover;background:#14142a}.shuttle-thumb.empty{display:inline-block}.shuttle-tile-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.shuttle-tile-top{display:flex;align-items:center;gap:8px}.shuttle-tile-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.shuttle-tile-abilities{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:11px;color:#88a}.shuttle-tile-arrow{color:#446}.shuttle-tile:hover .shuttle-tile-arrow{color:#aad}.shuttle-remove{width:26px;height:26px;flex:0 0 26px;border:none;border-radius:6px;background:#9632322e;color:#d88;font-size:15px;line-height:1;cursor:pointer}.shuttle-remove:hover{background:#b43c3c66;color:#fbb}@media (max-width: 900px){.shuttle{grid-template-columns:1fr}}@keyframes ribbonGlow{0%,to{filter:drop-shadow(0 0 6px rgba(247,210,120,.4))}50%{filter:drop-shadow(0 0 16px rgba(247,210,120,.85))}}@keyframes rayspin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes resultIn{0%{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}.ghud{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;font-family:Spectral,Georgia,serif;pointer-events:none;overflow:hidden}.ghud-hero{position:absolute;display:flex;align-items:center;gap:clamp(8px,1.4vw,18px)}.ghud-hero--enemy{left:6%;top:3.5%}.ghud-hero--player{left:6%;bottom:5.8%}.ghud-portrait{position:relative;flex-shrink:0}.ghud-portrait-meter{position:absolute;border-radius:50%}.ghud-portrait-face{position:absolute;border-radius:50%;display:flex;align-items:center;justify-content:center}.ghud-portrait-mono{font-family:Cinzel,serif;font-weight:900;color:#f0c98a;text-shadow:0 2px 6px #000}.ghud-hero-info{line-height:1.2}.ghud-hero-name{font-family:Cinzel,serif;font-weight:700;font-size:clamp(9px,.85vw,13px);letter-spacing:3px;text-transform:uppercase}.ghud-hero-score{display:flex;align-items:baseline;gap:5px;margin-top:3px}.ghud-hero-pts{font-family:Cinzel,serif;font-weight:900;font-size:clamp(26px,3.4vw,48px);text-shadow:0 2px 8px #000}.ghud-hero-sep{font-family:Cinzel,serif;font-size:14px;color:#7a5a3a}.ghud-hero-sub{font-size:11px;color:#7a5a3a;font-style:italic;margin-top:1px}.ghud-ribbon{position:absolute;left:50%;top:1.1%;transform:translate(-50%);text-align:center;animation:ribbonGlow 3s ease-in-out infinite;pointer-events:none;white-space:nowrap}.ghud-ribbon-title{font-family:Cinzel,serif;font-weight:900;font-size:15px;letter-spacing:6px;color:#f3d68c;text-shadow:0 2px 6px #000}.ghud-ribbon-sub{margin-top:2px;font-size:10px;letter-spacing:2px;color:#9a7a4a;font-style:italic}.ghud-actions{position:absolute;right:6%;bottom:21%;display:flex;flex-direction:column;align-items:center;gap:10px;pointer-events:auto}.ghud-end-turn{padding:12px 22px;border-radius:12px;background:linear-gradient(180deg,#f3d488,#caa24e 42%,#9a6f2c);box-shadow:inset 0 1px 1px #fffae1cc,inset 0 -2px 4px #462a0e99,0 6px 20px #0000008c,0 0 22px #f7c86e47;font-family:Cinzel,serif;font-weight:900;font-size:13px;letter-spacing:2px;color:#3a230c;text-shadow:0 1px 0 rgba(255,245,210,.6);border:none;cursor:pointer;transition:box-shadow .15s,filter .15s}.ghud-end-turn:hover:not(:disabled){box-shadow:inset 0 1px 1px #fffae1cc,inset 0 -2px 4px #462a0e99,0 6px 20px #0000008c,0 0 38px #f7c86eb3}.ghud-end-turn:disabled{filter:grayscale(.55) brightness(.68);cursor:not-allowed}.ghud-end-turn-hint{font-size:10px;letter-spacing:2px;color:#7a5a3a;font-style:italic}.ghud-speed-btn{padding:7px 18px;border-radius:8px;background:#1e160eb8;border:1px solid rgba(214,160,80,.35);color:#c8a464;font-size:13px;cursor:pointer;transition:all .15s;letter-spacing:1px;font-family:Cinzel,serif;font-size:11px;font-weight:600}.ghud-speed-btn--fast{background:#d6a05038;border-color:#d6a050bf;color:#f3d68c;box-shadow:0 0 12px #f7c86e4d}.ghud-result{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 60% 50% at 50% 45%,#0a0704a6,#050301f0);display:flex;align-items:center;justify-content:center;z-index:50;pointer-events:auto}.ghud-result-rays{position:absolute;left:50%;top:42%;width:700px;height:700px;transform:translate(-50%,-50%);opacity:.14;animation:rayspin 40s linear infinite}.ghud-result-body{position:relative;text-align:center;animation:resultIn .4s ease-out}.ghud-result-kicker{font-family:Cinzel,serif;font-weight:700;font-size:12px;letter-spacing:8px;color:#caa56a;margin-bottom:4px}.ghud-result-title{font-family:Cinzel,serif;font-weight:900;font-size:clamp(44px,12vw,84px);line-height:1;letter-spacing:4px;text-shadow:0 4px 14px #000}.ghud-result-scores{display:flex;align-items:center;justify-content:center;gap:22px;margin-top:18px}.ghud-result-score-col{text-align:center}.ghud-result-score-label{font-family:Cinzel,serif;font-size:10px;letter-spacing:3px;color:#9a7a4a}.ghud-result-score-val{font-family:Cinzel,serif;font-weight:900;font-size:44px;text-shadow:0 2px 8px #000;margin-top:2px}.ghud-result-dash{font-family:Cinzel,serif;font-size:22px;color:#6a4a2a;margin-top:24px}.ghud-result-buttons{display:flex;gap:14px;justify-content:center;margin-top:26px}.ghud-btn-primary{padding:12px 26px;border-radius:11px;background:linear-gradient(180deg,#f3d488,#9a6f2c);box-shadow:inset 0 1px 1px #fffae1cc,0 5px 14px #00000080;font-family:Cinzel,serif;font-weight:900;font-size:12px;letter-spacing:2px;color:#3a230c;border:none;cursor:pointer}.ghud-btn-primary:hover{box-shadow:inset 0 1px 1px #fffae1cc,0 5px 14px #00000080,0 0 24px #f7c86e80}.ghud-btn-secondary{padding:12px 26px;border-radius:11px;background:#1e160ed9;box-shadow:inset 0 0 0 1px #d6a0508c;font-family:Cinzel,serif;font-weight:700;font-size:12px;letter-spacing:2px;color:#d8b878;border:none;cursor:pointer}@media (max-width: 700px){.ghud-hero{gap:7px}.ghud-hero--enemy{left:2.5%;top:1.6%}.ghud-hero--player{left:auto;right:2.5%;bottom:auto;top:1.6%;flex-direction:row-reverse}.ghud-hero--player .ghud-hero-info{text-align:right}.ghud-hero-name{letter-spacing:1.5px}.ghud-hero-pts{font-size:22px}.ghud-hero-sep{font-size:11px}.ghud-hero-sub{display:none}.ghud-ribbon{top:8.5%}.ghud-ribbon-title{font-size:11px;letter-spacing:3px}.ghud-ribbon-sub{display:none}.ghud-actions{right:3%;bottom:25%;gap:7px}.ghud-end-turn{padding:10px 15px;font-size:11px;letter-spacing:1.5px}.ghud-end-turn-hint{display:none}.ghud-speed-btn{padding:6px 12px;font-size:10px}.ghud-result-rays{width:420px;height:420px}.ghud-result-score-val{font-size:34px}.ghud-result-buttons{flex-direction:column;align-items:center;gap:10px}}@keyframes emberFloat{0%{transform:translateY(0) scale(1);opacity:0}12%{opacity:.8}80%{opacity:.5}to{transform:translateY(-200px) scale(.35);opacity:0}}.game-root{flex:1;min-height:0;position:relative;display:flex;align-items:stretch;justify-content:stretch;overflow:hidden;background:radial-gradient(ellipse 70% 55% at 50% 42%,#3a2616,#241509 38%,#140c06 70%,#080503)}.game-root:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 16% 26%,rgba(214,150,60,.22),transparent 30%),radial-gradient(circle at 84% 22%,rgba(180,90,50,.16),transparent 32%),radial-gradient(circle at 50% 96%,rgba(230,170,80,.2),transparent 42%);pointer-events:none}.game-root:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;box-shadow:inset 0 0 220px 70px #000000d9;pointer-events:none;z-index:2}.game-ember{position:absolute;border-radius:50%;pointer-events:none;z-index:1}.game-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:20px;color:#9a7a4a;font-family:Cinzel,serif;font-size:16px;letter-spacing:3px}.game-loading button{background:#d6a0501f;color:#d8b878;padding:10px 24px;border-radius:8px;font-family:Cinzel,serif;font-size:13px;letter-spacing:2px;border:1px solid rgba(214,160,80,.4)}.deck-root{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;background:radial-gradient(ellipse 70% 55% at 50% 42%,#3a2616,#241509 38%,#140c06 70%,#080503);font-family:Spectral,Georgia,serif;color:#d8b878}.deck-header{display:flex;align-items:center;gap:16px;padding:18px 22px 12px}.deck-header h1{flex:1;margin:0;text-align:center;font-family:Cinzel,serif;font-weight:900;font-size:22px;letter-spacing:5px;text-transform:uppercase;color:#f3d68c;text-shadow:0 0 24px rgba(247,200,110,.35)}.deck-back{padding:9px 18px;font-size:11px}.deck-header-spacer{width:86px}.deck-warning{margin:0 22px 8px;padding:10px 14px;border-radius:9px;background:#c8814e1f;border:1px solid rgba(200,129,78,.4);color:#c8814e;font-size:13px;font-style:italic}.deck-grid{flex:1;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;padding:10px 22px 20px;align-content:start}.deck-card{display:flex;flex-direction:column;gap:6px;padding:10px;border-radius:12px;background:#140d07d1;box-shadow:inset 0 0 0 1px #d6a0504d;transition:box-shadow .15s}.deck-card.picked{box-shadow:inset 0 0 0 1px #f3d488d9,0 0 16px #f7c86e40}.deck-card.locked{opacity:.45}.deck-card-art{aspect-ratio:4 / 3;border-radius:8px;overflow:hidden;background:#0a060399}.deck-card-art img{width:100%;height:100%;object-fit:cover;display:block}.deck-card-info{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.deck-card-name{font-family:Cinzel,serif;font-weight:700;font-size:12px;letter-spacing:.5px;color:#f0c98a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deck-card-value{font-family:Cinzel,serif;font-weight:900;font-size:15px;color:#f3d68c;text-shadow:0 0 10px rgba(247,200,110,.5)}.deck-card-keywords{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#9a7a4a}.deck-card-copies{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:2px}.deck-card-copies button{width:30px;height:30px;border-radius:8px;border:1px solid rgba(214,160,80,.45);background:#1e160ed9;color:#f0c98a;font-size:16px;line-height:1;cursor:pointer;transition:box-shadow .15s}.deck-card-copies button:hover:not(:disabled){box-shadow:0 0 12px #f7c86e4d}.deck-card-copies button:disabled{opacity:.35;cursor:not-allowed}.deck-card-copies span{min-width:18px;text-align:center;font-family:Cinzel,serif;font-weight:900;font-size:15px;color:#f3d68c}.deck-card-owned{font-size:11px;letter-spacing:1px;color:#b9a06a}.deck-card-locked-note{margin-top:2px;text-align:center;font-size:11px;font-style:italic;color:#7a5a3a}.deck-footer{display:flex;align-items:center;gap:16px;padding:14px 22px;background:#0a0603e0;box-shadow:0 -6px 24px #00000080,inset 0 1px #d6a05040}.deck-count{font-family:Cinzel,serif;font-weight:700;font-size:15px;letter-spacing:2px;color:#c8814e}.deck-count.ok{color:#a8c08a}.deck-error{flex:1;color:#d9825f;font-size:13px;font-style:italic}.deck-saved{flex:1;color:#a8c08a;font-size:13px;font-style:italic}.deck-footer .btn-gold{margin-left:auto}@media (max-width: 700px){.deck-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;padding:8px 12px 16px}.deck-header{padding:12px 12px 8px}.deck-footer{padding:10px 12px}}.popen-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;background:#040201eb;font-family:Spectral,Georgia,serif}.popen-pack-stage{position:relative;display:flex;align-items:center;justify-content:center}@keyframes popenPackIdle{0%,to{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-10px) rotate(1deg)}}@keyframes popenPackGlow{0%,to{box-shadow:0 0 40px #f7c86e59,inset 0 0 0 2px #f3d488b3}50%{box-shadow:0 0 90px #f7c86ea6,inset 0 0 0 2px #f3d488}}@keyframes popenPackShake{0%,to{transform:translate(0) rotate(0) scale(1.04)}20%{transform:translate(-7px) rotate(-3deg) scale(1.05)}40%{transform:translate(7px) rotate(3deg) scale(1.07)}60%{transform:translate(-9px) rotate(-4deg) scale(1.09)}80%{transform:translate(9px) rotate(4deg) scale(1.12)}}.popen-pack{position:relative;width:min(240px,60vw);aspect-ratio:3 / 4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;border:none;border-radius:18px;cursor:pointer;overflow:hidden;background:radial-gradient(circle at 50% 30%,rgba(247,200,110,.25),transparent 55%),linear-gradient(160deg,#4a3216,#2a1a08 55%,#140b04);animation:popenPackIdle 3.2s ease-in-out infinite,popenPackGlow 2.4s ease-in-out infinite}.popen-pack.bursting{animation:popenPackShake .65s ease-in-out forwards}@keyframes popenShine{0%{transform:translate(-140%) skew(-18deg)}to{transform:translate(240%) skew(-18deg)}}.popen-pack-shine{position:absolute;top:0;bottom:0;width:40%;background:linear-gradient(90deg,transparent,rgba(255,240,200,.28),transparent);animation:popenShine 2.6s ease-in-out infinite;pointer-events:none}.popen-pack-name{font-family:Cinzel,serif;font-weight:900;font-size:20px;letter-spacing:3px;text-transform:uppercase;color:#f3d68c;text-shadow:0 0 18px rgba(247,200,110,.6);padding:0 14px;text-align:center}.popen-pack-hint{font-size:13px;font-style:italic;letter-spacing:1px;color:#b9a06a}@keyframes popenBurst{0%{transform:scale(.2);opacity:1}to{transform:scale(6);opacity:0}}.popen-burst{position:absolute;width:240px;height:240px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(255,235,180,.95) 0%,rgba(247,200,110,.5) 40%,transparent 70%);animation:popenBurst .65s ease-out forwards}.popen-reveal-stage{display:flex;flex-direction:column;align-items:center;gap:28px;padding:20px;max-width:100vw}@keyframes popenLegendaryPulse{0%,to{filter:drop-shadow(0 0 0 rgba(247,200,110,0))}50%{filter:drop-shadow(0 0 30px rgba(247,200,110,.5))}}.popen-reveal-stage.legendary-glow{animation:popenLegendaryPulse 2.2s ease-in-out infinite}.popen-cards{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:16px;max-width:900px}@keyframes popenDealIn{0%{transform:translateY(60px) scale(.6);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.popen-card{width:min(150px,27vw);aspect-ratio:3 / 4.2;padding:0;border:none;background:none;perspective:900px;cursor:pointer;animation:popenDealIn .45s cubic-bezier(.2,.9,.3,1.2) both}.popen-card:disabled{cursor:default}.popen-card-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .55s cubic-bezier(.3,.8,.3,1)}.popen-card.flipped .popen-card-inner{transform:rotateY(180deg)}@keyframes popenNextNudge{0%,to{box-shadow:0 0 14px #f7c86e40,inset 0 0 0 1px #d6a05080}50%{box-shadow:0 0 30px #f7c86e99,inset 0 0 0 1px #f3d488e6}}.popen-card-back,.popen-card-face{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:12px;backface-visibility:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}.popen-card-back{background:radial-gradient(circle at 50% 42%,rgba(214,160,80,.28),transparent 60%),repeating-linear-gradient(45deg,#241509 0,#241509 10px,#2b1a0b 10px,#2b1a0b 20px);box-shadow:inset 0 0 0 1px #d6a05080}.popen-card.next .popen-card-back{animation:popenNextNudge 1.6s ease-in-out infinite}.popen-card-back-emblem{font-size:42px;color:#f3d4888c;text-shadow:0 0 16px rgba(247,200,110,.4)}.popen-card-face{transform:rotateY(180deg);justify-content:flex-start;gap:6px;padding:8px;background:linear-gradient(180deg,#241509,#140c06)}.popen-card-face.rarity-common{box-shadow:inset 0 0 0 2px #8a8a8a}.popen-card-face.rarity-rare{box-shadow:inset 0 0 0 2px #4a90d9,0 0 22px #4a90d98c}.popen-card-face.rarity-epic{box-shadow:inset 0 0 0 2px #a55ad9,0 0 26px #a55ad999}.popen-card-face.rarity-legendary{box-shadow:inset 0 0 0 2px #f3d68c,0 0 34px #f7c86ebf}.popen-card-art{width:100%;flex:1;min-height:0;border-radius:8px;overflow:hidden}.popen-card-art img{width:100%;height:100%;object-fit:cover;display:block}.popen-card-title{display:flex;align-items:baseline;justify-content:space-between;gap:6px;width:100%}.popen-card-name{font-family:Cinzel,serif;font-weight:700;font-size:11px;color:#f0c98a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.popen-card-value{font-family:Cinzel,serif;font-weight:900;font-size:14px;color:#f3d68c}.popen-card-rarity{font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:2px 8px;border-radius:5px}.popen-card-rarity.rarity-common{color:#b8b8b8;background:#8a8a8a26}.popen-card-rarity.rarity-rare{color:#7ab4ef;background:#4a90d92e}.popen-card-rarity.rarity-epic{color:#c88df0;background:#a55ad92e}.popen-card-rarity.rarity-legendary{color:#f3d68c;background:#f7c86e2e}.popen-actions{display:flex;gap:14px;align-items:center;min-height:46px}.popen-reveal-all{padding:8px 18px;border:none;background:none;color:#9a7a4a;font-family:Spectral,Georgia,serif;font-size:14px;font-style:italic;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.popen-reveal-all:hover{color:#d8b878}.shop-root{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;overflow-y:auto;background:radial-gradient(ellipse 70% 55% at 50% 42%,#3a2616,#241509 38%,#140c06 70%,#080503);font-family:Spectral,Georgia,serif;color:#d8b878}.shop-header{display:flex;align-items:center;gap:16px;padding:18px 22px 12px}.shop-header h1{flex:1;margin:0;text-align:center;font-family:Cinzel,serif;font-weight:900;font-size:22px;letter-spacing:5px;text-transform:uppercase;color:#f3d68c;text-shadow:0 0 24px rgba(247,200,110,.35)}.shop-back{padding:9px 18px;font-size:11px}.shop-gold{min-width:86px;text-align:right;font-family:Cinzel,serif;font-weight:700;font-size:16px;letter-spacing:1px;color:#f3d68c;text-shadow:0 0 12px rgba(247,200,110,.4)}.shop-error{margin:0 22px 8px;color:#d9825f;font-size:13px;font-style:italic}.shop-hint{margin:40px 22px;text-align:center;color:#9a7a4a;font-style:italic}.shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px;padding:10px 22px 26px;align-content:start}.shop-pack{position:relative;display:flex;flex-direction:column;gap:8px;padding:20px 18px;border-radius:14px;background:#140d07d1;box-shadow:inset 0 0 0 1px #d6a05059,inset 0 1px #f3d4881f,0 12px 40px #0009}.shop-pack.free{box-shadow:inset 0 0 0 1px #f3d488cc,0 0 26px #f7c86e4d}.shop-pack-ribbon{position:absolute;top:12px;right:-8px;padding:4px 14px;background:linear-gradient(180deg,#f3d488,#9a6f2c);color:#3a230c;font-family:Cinzel,serif;font-weight:900;font-size:11px;letter-spacing:2px;border-radius:4px;box-shadow:0 3px 10px #00000080}.shop-pack h2{margin:0;font-family:Cinzel,serif;font-weight:700;font-size:17px;letter-spacing:1px;color:#f0c98a}.shop-pack-desc{margin:0;font-size:13px;font-style:italic;color:#b9a06a}.shop-pack-count{margin:0;font-size:12px;letter-spacing:1px;color:#9a7a4a}.shop-pack-rarities{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}.shop-rarity{font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:2px 8px;border-radius:5px}.shop-rarity.rarity-common{color:#b8b8b8;background:#8a8a8a26}.shop-rarity.rarity-rare{color:#7ab4ef;background:#4a90d92e}.shop-rarity.rarity-epic{color:#c88df0;background:#a55ad92e}.shop-rarity.rarity-legendary{color:#f3d68c;background:#f7c86e2e}.shop-buy{margin-top:auto}@media (max-width: 700px){.shop-grid{grid-template-columns:1fr 1fr;gap:10px;padding:8px 12px 18px}.shop-header{padding:12px 12px 8px}}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;height:100dvh;overflow:hidden;background:#0d0d1a;color:#e0e0e0;font-family:Segoe UI,system-ui,sans-serif}#root{height:100dvh;display:flex;flex-direction:column}button{cursor:pointer;border:none;outline:none}button:disabled{opacity:.45;cursor:not-allowed}input,textarea{background:#1a1a2e;border:1px solid #333366;color:#e0e0e0;padding:6px 10px;border-radius:4px;font-size:14px;font-family:inherit}input:focus,textarea:focus{outline:none;border-color:#55a}code{background:#224;padding:2px 6px;border-radius:3px;font-size:.88em}
