:root{--bg-dark: #0a0a0f;--panel-bg: rgba(18, 18, 28, .92);--panel-border: rgba(140, 110, 60, .4);--accent-gold: #e5b85c;--accent-gold-glow: rgba(229, 184, 92, .4);--accent-red: #d93838;--accent-green: #34d399;--accent-purple: #9333ea;--text-main: #e2e8f0;--text-muted: #94a3b8;--font-heading: "Cinzel", serif;--font-body: "Inter", sans-serif}*{box-sizing:border-box;margin:0;padding:0;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.hidden{display:none!important}body,html{width:100%;height:100%;overflow:hidden;background-color:#000;font-family:var(--font-body);color:var(--text-main);display:flex;flex-direction:column;align-items:center;justify-content:center}#app{position:relative;width:100%;max-width:500px;height:100%;flex-shrink:0;display:flex;flex-direction:column;background-color:var(--bg-dark);box-shadow:0 0 30px #000}#game-container{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}#ui-layer{position:absolute;top:0;left:0;width:100%;height:100%;z-index:2;pointer-events:none;display:flex;flex-direction:column;justify-content:space-between;padding:12px}.top-bar,.stats-bars,.log-overlay,.main-story-screen,.maps-row-container,.island-map-container,.town-buildings-container,.bottom-nav,.modal{pointer-events:auto}.modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000e0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:4px;opacity:1;transition:opacity .16s ease,backdrop-filter .16s ease}.modal.hidden{display:none!important;opacity:0}@media (max-width: 480px){.modal{padding:2px 3px}}.modal:not(.hidden) .modal-content{animation:bg3ModalPop .18s cubic-bezier(.16,1,.3,1) forwards}@keyframes bg3ModalPop{0%{opacity:0;transform:scale(.96) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-content{width:100%;max-width:480px;max-height:92vh;background:#12111d;border:1px solid var(--panel-border);border-radius:10px;padding:8px 6px 12px;overflow-y:auto;box-shadow:0 12px 36px #000000f2;transform-origin:center center;will-change:transform,opacity}.modal-content.large-modal{max-width:580px;width:100%}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.modal-header h2{font-family:var(--font-heading);font-size:14.5px;color:var(--accent-gold);margin:0}.modal-desc{font-size:10.5px;color:var(--text-muted);margin-bottom:10px;line-height:1.35;font-style:italic}.close-btn{background:transparent;border:none;color:var(--text-muted);font-size:20px;cursor:pointer;padding:0 4px;display:flex;align-items:center;justify-content:center;transition:color .2s}.close-btn:hover{color:var(--text-light)}#dralgar-toast-container,.toast-notification-overlay{position:absolute;top:14px;left:50%;transform:translate(-50%);width:calc(100% - 24px);max-width:476px;z-index:999999;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}.dralgar-toast-banner,.toast-banner{position:relative;width:100%;border-radius:12px;overflow:hidden;pointer-events:auto;cursor:pointer;box-sizing:border-box;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:linear-gradient(135deg,#1a120ef5,#100c14fa);border:1px solid rgba(229,184,92,.65);box-shadow:0 12px 36px #000000e6,0 0 22px #e5b85c40,inset 0 1px 1px #ffffff1f;transform-origin:center top;animation:dralgarToastEnter .35s cubic-bezier(.16,1,.3,1) forwards;transition:opacity .35s cubic-bezier(.4,0,.2,1),transform .35s cubic-bezier(.4,0,.2,1),filter .35s cubic-bezier(.4,0,.2,1)}.dralgar-toast-banner.toast-warning,.toast-banner.toast-warning{border-color:#e5b85cbf;box-shadow:0 12px 36px #000000e6,0 0 24px #e5b85c4d,inset 0 0 12px #e5b85c1f}.dralgar-toast-banner.toast-error,.toast-banner.toast-error{border-color:#ef4444bf;box-shadow:0 12px 36px #000000e6,0 0 24px #ef444459,inset 0 0 12px #ef444426}.dralgar-toast-banner.toast-success,.dralgar-toast-banner.toast-info,.toast-banner.toast-success,.toast-banner.toast-info{border-color:#34d399bf;box-shadow:0 12px 36px #000000e6,0 0 24px #34d3994d,inset 0 0 12px #34d3991f}.dralgar-toast-banner.dralgar-toast-leaving,.toast-banner.toast-hide{opacity:0!important;transform:translateY(-16px) scale(.92)!important;filter:blur(8px)!important;pointer-events:none!important}.toast-glow-edge{position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--accent-gold, #e5b85c),transparent);pointer-events:none}.toast-warning .toast-glow-edge{background:linear-gradient(90deg,transparent,#e5b85c,transparent)}.toast-error .toast-glow-edge{background:linear-gradient(90deg,transparent,#ef4444,transparent)}.toast-success .toast-glow-edge,.toast-info .toast-glow-edge{background:linear-gradient(90deg,transparent,#34d399,transparent)}.toast-content-row{display:flex;align-items:flex-start;padding:12px 14px 14px;gap:12px}.toast-icon-wrap{font-size:22px;line-height:1;flex-shrink:0;margin-top:1px;filter:drop-shadow(0 2px 6px rgba(0,0,0,.6))}.toast-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.toast-title{font-family:var(--font-heading, "Cinzel", serif);font-size:13px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:var(--accent-gold, #e5b85c);display:flex;align-items:center;gap:6px}.toast-warning .toast-title{color:gold}.toast-error .toast-title{color:#f87171}.toast-success .toast-title,.toast-info .toast-title{color:#34d399}.toast-message{font-family:var(--font-body, "Inter", sans-serif);font-size:13px;font-weight:500;line-height:1.42;color:#f1f5f9;word-break:break-word}.toast-close-btn{background:none;border:none;color:#e5b85cb3;font-size:16px;line-height:1;padding:2px 4px;cursor:pointer;flex-shrink:0;transition:color .15s ease,transform .15s ease;margin-top:-2px;margin-right:-4px}.toast-close-btn:hover{color:gold;transform:scale(1.15)}.toast-progress-track{position:absolute;bottom:0;left:0;width:100%;height:3px;background:#ffffff14;overflow:hidden}.toast-progress-bar{height:100%;width:100%;background:linear-gradient(90deg,#e5b85c,#f59e0b);animation:dralgarToastShrink linear forwards}.toast-error .toast-progress-bar{background:linear-gradient(90deg,#ef4444,#dc2626)}.toast-success .toast-progress-bar,.toast-info .toast-progress-bar{background:linear-gradient(90deg,#34d399,#10b981)}@keyframes dralgarToastEnter{0%{opacity:0;transform:translateY(-22px) scale(.93);filter:blur(6px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes dralgarToastShrink{0%{width:100%}to{width:0%}}.init-swap-modal-card{max-width:420px;border-color:#eab308b3;box-shadow:0 10px 30px #000000f2,0 0 25px #eab30859}.btn-swap-decline:hover{background:linear-gradient(135deg,#334155,#1e293b)!important;border-color:#ffffff4d!important;transform:translateY(-1px)}.btn-swap-confirm:hover{transform:translateY(-1px);box-shadow:0 4px 12px #eab3088c!important}.corpse-category-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:4px 2px;margin-top:8px;text-shadow:0 1px 3px rgba(0,0,0,.9)}.corpse-item-row{display:flex;align-items:center;justify-content:space-between;background:#0f172ad9;border:1px solid rgba(234,179,8,.25);border-radius:6px;padding:8px 10px;margin-bottom:6px;transition:all .2s ease}.corpse-item-row.looted{background:#0f172a66;border-color:#ffffff14}.loot-item-info{display:flex;align-items:center;gap:10px;flex:1}.loot-item-icon{font-size:20px;flex-shrink:0}.loot-item-details{display:flex;flex-direction:column;gap:2px}.loot-item-name{font-size:13px;font-weight:600;color:#f8fafc;text-shadow:0 1px 2px rgba(0,0,0,.9)}.loot-item-desc{font-size:11px;color:#cbd5e1}.corpse-armor-warning{color:#fca5a5!important;background:#ef444438;border:1px solid rgba(239,68,68,.4);border-radius:4px;padding:2px 6px;font-size:11px;font-weight:600;display:inline-block;margin-top:2px;text-shadow:0 1px 2px rgba(0,0,0,.9)}.combat-sandbox-toolbar{display:none!important}.sandbox-tool-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:11px;font-weight:700;border-radius:6px;background:#1e293bd9;border:1px solid rgba(229,184,92,.4);color:#f8fafc;cursor:pointer;transition:all .15s ease}.sandbox-tool-btn:hover{background:#e5b85c33;border-color:var(--accent-gold);transform:translateY(-1px)}.sandbox-tool-btn.clear-btn{border-color:#ef444473;color:#fca5a5}.sandbox-tool-btn.clear-btn:hover{background:#ef444438;border-color:#ef4444;color:#fee2e2}.spawner-chip{background:#1e293bb3;border:1px solid rgba(255,255,255,.12);border-radius:6px;color:#cbd5e1;font-size:11px;font-weight:600;padding:6px 8px;cursor:pointer;text-align:center;transition:all .15s ease;display:flex;align-items:center;justify-content:center;gap:4px}.spawner-chip:hover{background:#334155e6;border-color:#ffffff40;color:#f8fafc}.spawner-chip.active{background:#22c55e33;border-color:#22c55e;color:#4ade80;box-shadow:0 0 8px #22c55e4d;font-weight:700}.spawner-chip.dist-chip.active{background:#38bdf833;border-color:#38bdf8;color:#7dd3fc;box-shadow:0 0 8px #38bdf84d}.map-token-vision-cone{position:absolute;top:50%;left:50%;width:760px;height:380px;margin-left:-380px;margin-top:-380px;transform-origin:380px 380px;pointer-events:none;z-index:1;transition:transform .25s ease-out}#combat-screen:not(.exploration-mode) .map-token-vision-cone{display:none!important}.vision-cone-svg{width:100%;height:100%;display:block;overflow:visible}.map-token.facing-n .map-token-vision-cone{transform:rotate(0)}.map-token.facing-ne .map-token-vision-cone{transform:rotate(45deg)}.map-token.facing-e .map-token-vision-cone{transform:rotate(90deg)}.map-token.facing-se .map-token-vision-cone{transform:rotate(135deg)}.map-token.facing-s .map-token-vision-cone{transform:rotate(180deg)}.map-token.facing-sw .map-token-vision-cone{transform:rotate(225deg)}.map-token.facing-w .map-token-vision-cone{transform:rotate(270deg)}.map-token.facing-nw .map-token-vision-cone{transform:rotate(315deg)}.map-token span{position:relative;z-index:2}.map-token-sleeper-badge{position:absolute;top:-6px;right:-4px;font-size:13px;line-height:1;animation:sleeperFloat 2s ease-in-out infinite;filter:drop-shadow(0 1px 3px rgba(0,0,0,.8));pointer-events:none}@keyframes sleeperFloat{0%,to{transform:translateY(0) scale(.95);opacity:.85}50%{transform:translateY(-3px) scale(1.1);opacity:1}}.network-latency-badge{position:absolute;top:8px;right:12px;z-index:1000;display:flex;align-items:center;gap:5px;padding:3px 8px;border-radius:12px;background:#0a0a10bf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.1);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:11px;font-weight:600;color:#a0aec0;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s ease;pointer-events:auto}.network-latency-badge:hover{background:#0f0f19f2;border-color:#d4af3766}.network-latency-badge .latency-dot{width:7px;height:7px;border-radius:50%;background:#10b981;transition:background .2s ease,box-shadow .2s ease}.network-latency-badge.status-good .latency-dot{background:#10b981;box-shadow:0 0 6px #10b98199}.network-latency-badge.status-good{color:#6ee7b7}.network-latency-badge.status-medium .latency-dot{background:#f59e0b;box-shadow:0 0 6px #f59e0b99}.network-latency-badge.status-medium{color:#fcd34d}.network-latency-badge.status-slow .latency-dot{background:#ef4444;box-shadow:0 0 6px #ef4444cc}.network-latency-badge.status-slow{color:#fca5a5}.top-bar{display:flex;justify-content:space-between;align-items:center;background:var(--panel-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--panel-border);border-radius:12px;padding:8px 12px;box-shadow:0 4px 20px #0009;gap:8px}.player-profile{display:flex;align-items:center;gap:10px;flex:1;min-width:0;cursor:pointer}.avatar-frame{width:38px;height:38px;min-width:38px;border-radius:50%;background:radial-gradient(circle,#2d2a45,#110e1b);border:2px solid var(--accent-gold);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.player-info{display:flex;flex-direction:column;min-width:0;justify-content:center}.player-name{font-family:var(--font-heading);font-weight:800;font-size:13.5px;color:var(--accent-gold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.25}.badge{font-size:11px;color:#c4a77d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px;line-height:1.25}.resource-group{display:flex;align-items:center;margin-left:auto;flex-shrink:0}.resource-item{display:flex;align-items:center;gap:5px;background:#00000073;padding:4px 10px;border-radius:20px;font-weight:700;font-size:12.5px;border:1px solid rgba(229,184,92,.25);box-shadow:inset 0 1px 3px #00000080}.resource-item.gold{color:#f59e0b}.resource-item.floor{color:#60a5fa}.stats-bars{display:flex;flex-direction:column;gap:4px;margin-top:6px}.bar-container{position:relative;height:18px;background:#0f0f19d9;border:1px solid rgba(255,255,255,.15);border-radius:10px;overflow:hidden}.bar-fill{height:100%;transition:width .3s ease-out}.hp-bar-fill{background:linear-gradient(90deg,#991b1b,#dc2626);box-shadow:0 0 10px #dc262680}.bar-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:10.5px;font-weight:700;text-shadow:0 1px 3px rgba(0,0,0,.9);white-space:nowrap}.log-overlay{background:#0a0a12d9;border:1px solid rgba(229,184,92,.25);border-radius:10px;padding:8px 12px;margin-top:6px;height:100px;min-height:80px;max-height:120px;overflow-y:auto;font-size:11.5px;line-height:1.45;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;flex-direction:column;gap:4px;box-shadow:inset 0 2px 8px #0009}.maps-row-container{margin-top:4px;margin-bottom:6px;display:flex;justify-content:center;align-items:center;gap:10px;width:100%;max-width:500px;align-self:center;pointer-events:auto;transition:opacity .25s ease,transform .25s ease}.maps-row-container.hidden{display:none!important}.island-map-container{margin-top:auto;margin-bottom:8px;display:flex;justify-content:center;align-items:center;pointer-events:auto}.building-card.city-map,.building-card.island-map,.building-card.gate{flex:1;max-width:175px;height:72px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(180deg,#16121eeb,#0c0a12f5);border:1px solid rgba(212,175,55,.45);border-radius:12px;box-shadow:0 4px 16px #000000a6,0 0 10px #d4af3726;padding:8px 10px;gap:4px;pointer-events:auto;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.building-card.city-map:hover,.building-card.city-map:active,.building-card.island-map:hover,.building-card.island-map:active,.building-card.gate:hover,.building-card.gate:active{transform:translateY(-2px) scale(1.02);border-color:gold;box-shadow:0 6px 20px #000c,0 0 16px #ffd70059}.map-badge{background:var(--accent-gold);color:#000;font-weight:800;font-size:9px;padding:1px 6px;border-radius:6px;text-transform:uppercase;margin-bottom:2px}.building-badge.danger{background:#dc2626;color:#fff;font-weight:800;font-size:9px;padding:1px 6px;border-radius:6px;text-transform:uppercase;margin-bottom:2px}.map-icon{font-size:26px;line-height:1;margin-bottom:2px;filter:drop-shadow(0 0 6px rgba(229,184,92,.6))}.map-title{font-family:var(--font-heading);font-size:12px;font-weight:800;color:var(--accent-gold);text-transform:uppercase;letter-spacing:.6px;line-height:1.1;text-shadow:0 1px 3px rgba(0,0,0,.8)}.map-sub{font-size:8.5px;color:#d4af37;margin-top:1px}.town-buildings-container{margin-top:0;margin-bottom:8px;display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.building-card{position:relative;background:linear-gradient(180deg,#201c30eb,#0f0e1af2);border:1px solid var(--panel-border);border-radius:10px;padding:10px 4px;text-align:center;cursor:pointer;transition:transform .2s,border-color .2s,box-shadow .2s;box-shadow:0 4px 12px #00000080}.building-card:hover,.building-card:active{transform:translateY(-3px);border-color:var(--accent-gold);box-shadow:0 0 15px var(--accent-gold-glow)}.building-card.gate{border-color:#d9383899}.building-card.gate:hover{border-color:var(--accent-red);box-shadow:0 0 15px #d9383880}.building-badge{position:absolute;top:-6px;right:6px;background:#2563eb;font-size:7px;font-weight:700;text-transform:uppercase;padding:1px 4px;border-radius:4px}.building-badge.danger{background:#dc2626}.building-icon{font-size:22px;margin-bottom:2px}.building-title{font-family:var(--font-heading);font-size:10px;font-weight:800;color:var(--accent-gold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.building-sub{font-size:8px;color:var(--text-muted);margin-top:1px}.bottom-nav{display:flex;justify-content:space-around;background:var(--panel-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--panel-border);border-radius:14px;padding:4px}.nav-btn{flex:1;background:transparent;border:none;color:var(--text-muted);display:flex;flex-direction:column;align-items:center;padding:6px 2px;cursor:pointer;border-radius:8px;transition:color .2s,background .2s}.nav-btn.active,.nav-btn:hover{color:var(--accent-gold);background:#e5b85c26}.btn-icon{font-size:18px}.btn-label{font-size:9px;font-weight:700;margin-top:2px}.nav-btn.level-up-ready{position:relative;color:gold!important;background:linear-gradient(180deg,#f59e0b4d,#d9770626)!important;border:1px solid rgba(245,158,11,.7)!important;box-shadow:0 0 14px #f59e0b73,inset 0 0 8px #fef08a40!important;animation:navLevelUpPulse 2s infinite ease-in-out}.nav-btn.level-up-ready:after{content:"▲";position:absolute;top:1px;right:6px;font-size:8px;color:#fff;background:#f59e0b;width:13px;height:13px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:900;box-shadow:0 0 6px #f59e0bcc}@keyframes navLevelUpPulse{0%{box-shadow:0 0 8px #f59e0b66,inset 0 0 4px #fef08a33;border-color:#f59e0b80}50%{box-shadow:0 0 20px #f59e0bcc,inset 0 0 12px #fef08a80;border-color:#fef08af2}to{box-shadow:0 0 8px #f59e0b66,inset 0 0 4px #fef08a33;border-color:#f59e0b80}}body.modal-open{overflow:hidden!important;touch-action:none}.temple-actions{display:flex;flex-direction:column;gap:12px;margin-top:14px}.temple-action-card{display:flex;align-items:center;gap:14px;background:#181626e6;border:1px solid var(--panel-border);border-radius:12px;padding:12px 14px;transition:transform .2s,border-color .2s,background .2s,box-shadow .2s}.temple-action-card:hover{transform:translateY(-2px);border-color:var(--accent-gold);background:#e5b85c1f;box-shadow:0 0 12px var(--accent-gold-glow)}.temple-icon{font-size:28px;width:44px;height:44px;border-radius:10px;background:#0006;display:flex;align-items:center;justify-content:center;border:1px solid rgba(229,184,92,.3);flex-shrink:0}.temple-info{flex:1}.temple-info h4{font-family:var(--font-heading);font-size:13px;font-weight:800;color:var(--accent-gold);margin-bottom:4px}.temple-info p{font-size:10px;color:var(--text-muted);line-height:1.3}.merchant-npc-list{display:flex;flex-direction:column;gap:10px;margin-top:8px}.merchant-npc-card{display:flex;align-items:center;gap:12px;background:#181626e6;border:1px solid var(--panel-border);border-radius:12px;padding:12px 14px;cursor:pointer;transition:transform .2s,border-color .2s,background .2s,box-shadow .2s}.merchant-npc-card:hover,.merchant-npc-card:active{transform:translateY(-2px);border-color:var(--accent-gold);background:#e5b85c1f;box-shadow:0 0 12px var(--accent-gold-glow)}.merchant-npc-icon{font-size:28px;width:42px;height:42px;border-radius:10px;background:#0006;display:flex;align-items:center;justify-content:center;border:1px solid rgba(229,184,92,.3)}.merchant-npc-info{flex:1}.merchant-npc-name{font-family:var(--font-heading);font-size:13px;font-weight:800;color:var(--accent-gold)}.merchant-npc-desc{font-size:10px;color:var(--text-muted);margin-top:2px;line-height:1.3}.merchant-arrow{font-size:14px;color:var(--accent-gold)}.back-btn{background:#e5b85c26;border:1px solid var(--accent-gold);color:var(--accent-gold);font-family:var(--font-heading);font-size:11px;font-weight:700;padding:6px 12px;border-radius:8px;cursor:pointer;margin-bottom:10px;transition:background .2s}.back-btn:hover{background:#e5b85c4d}.shop-filters{margin-bottom:12px;display:flex;justify-content:flex-end}.dungeon-select{background:#181626;color:var(--text-muted);border:1px solid var(--panel-border);border-radius:8px;padding:8px 12px;font-size:12px;font-family:var(--font-main);outline:none;cursor:pointer;transition:border-color .2s,color .2s}.dungeon-select:hover,.dungeon-select:focus{border-color:var(--accent-gold);color:#fff}.map-render-box{position:relative;display:inline-block;-webkit-user-select:none;user-select:none}.map-svg-layer{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:5}.map-region-poly{fill:#2ecc7100;stroke:#e5b85c00;stroke-width:2.5;stroke-linejoin:round;transition:fill .35s ease,stroke .35s ease,filter .35s ease;pointer-events:auto;cursor:pointer}.map-region-poly:hover,.map-region-poly.active,.map-region-poly.hovered{fill:#2ecc713d;stroke:#f1c40fd9;stroke-dasharray:6 3;filter:drop-shadow(0 0 10px rgba(46,204,113,.65));animation:polyBorderPulse 2s linear infinite}@keyframes polyBorderPulse{to{stroke-dashoffset:-24}}.map-marker-pin{display:flex;align-items:center;justify-content:center;pointer-events:auto;cursor:pointer;z-index:10;transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.map-marker-pin:hover,.map-marker-pin:active{transform:translate(-50%,-50%) scale(1.15)!important}.marker-pulse-ring{position:absolute;width:44px;height:44px;border-radius:50%;background:radial-gradient(circle,#2ecc7173,#e5b85c00 70%);border:1.5px solid rgba(46,204,113,.7);animation:markerPulseAnimation 2.2s ease-out infinite;pointer-events:none}@keyframes markerPulseAnimation{0%{transform:scale(.6);opacity:1}to{transform:scale(2.2);opacity:0}}.marker-badge{position:relative;z-index:2;display:flex;align-items:center;gap:5px;background:linear-gradient(135deg,#141e16eb,#0a100cf5);border:1.5px solid #2ecc71;border-radius:20px;padding:4px 10px;box-shadow:0 4px 15px #000000bf,0 0 10px #2ecc7166;white-space:nowrap}.marker-icon{font-size:15px;filter:drop-shadow(0 0 4px rgba(46,204,113,.8))}.marker-label{font-family:var(--font-heading);font-size:11px;font-weight:800;color:#fff;letter-spacing:.5px;text-shadow:0 1px 4px rgba(0,0,0,.8)}.region-detail-card{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:380px;max-height:85vh;max-height:85dvh;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:linear-gradient(180deg,#1a1622fa,#0e0c14fc);border:1.5px solid var(--accent-gold);border-radius:14px;padding:16px;box-shadow:0 10px 30px #000000d9,0 0 25px #e5b85c59;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:180;animation:centerPopCard .25s cubic-bezier(.16,1,.3,1);pointer-events:auto}@keyframes centerPopCard{0%{opacity:0;transform:translate(-50%,calc(-50% + 20px)) scale(.96)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.region-card-header{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:8px;margin-bottom:10px}.region-card-title{font-family:var(--font-heading);font-size:16px;font-weight:800;color:var(--accent-gold);margin:0}.region-card-subtitle{font-size:10px;color:#aaa}.region-card-close{background:#ffffff14;border:1px solid rgba(255,255,255,.2);color:#ddd;border-radius:50%;width:26px;height:26px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px;transition:all .2s}.region-card-close:hover{background:#fff3;color:#fff}.region-threat-badge{display:inline-flex;align-items:center;gap:6px;background:#2ecc711f;border:1px solid rgba(46,204,113,.35);color:#2ecc71;font-size:11px;padding:4px 8px;border-radius:6px;margin-bottom:8px}.region-card-desc{font-size:12px;line-height:1.45;color:#ddd;margin-bottom:10px}.region-activities{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.activity-tag{font-size:10px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:#bbb;padding:3px 6px;border-radius:4px}.travel-btn{width:100%;padding:10px;font-size:14px;font-weight:800;background:linear-gradient(135deg,#27ae60,#1e824c);border:1.5px solid #2ecc71;color:#fff;border-radius:8px;cursor:pointer;box-shadow:0 4px 12px #27ae6066;transition:transform .2s,box-shadow .2s}.travel-btn:hover,.travel-btn:active{transform:translateY(-2px);box-shadow:0 6px 18px #27ae6099}.training-btn{width:100%;padding:11px;font-size:13.5px;font-weight:800;font-family:var(--font-heading);background:linear-gradient(135deg,#d977064d,#b4530973);border:1.5px solid var(--accent-gold);color:var(--accent-gold);border-radius:8px;cursor:pointer;box-shadow:0 4px 14px #e5b85c40;transition:transform .2s,box-shadow .2s,background .2s}.training-btn:hover,.training-btn:active{transform:translateY(-2px);background:linear-gradient(135deg,#f59e0b66,#d977068c);box-shadow:0 6px 20px #e5b85c80}.location-screen-modal{max-width:440px;background:linear-gradient(180deg,#101a14fa,#0a100cfc);border:1.5px solid #2ecc71;box-shadow:0 10px 35px #000000e6,0 0 25px #2ecc7140;border-radius:16px;padding:20px}.location-narrative-box{background:#0006;border:1px solid rgba(46,204,113,.2);border-radius:10px;padding:14px;margin:10px 0;box-shadow:inset 0 2px 8px #0009}.bg3-dialogue-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;background:#040408d1;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;padding:16px;animation:bg3ModalPop .25s cubic-bezier(.16,1,.3,1) forwards}.dialogue-modal-content{width:100%;max-width:460px;max-height:85vh;overflow-y:auto;background:linear-gradient(180deg,#161622fa,#0c0c14fc);border:1.5px solid rgba(212,175,55,.45);border-radius:16px;box-shadow:0 15px 45px #000000e6,0 0 25px #d4af3726;padding:22px 20px 20px;position:relative;display:flex;flex-direction:column}.dialogue-close-btn{position:absolute;top:14px;right:14px;width:34px;height:34px;background:#ffffff14;border:1px solid rgba(255,255,255,.2);border-radius:50%;color:#94a3b8;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:10}.dialogue-close-btn:hover{background:#ef444440;border-color:#ef4444;color:#fff;transform:scale(1.08)}.dialogue-speaker-header{display:flex;align-items:center;gap:14px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid rgba(212,175,55,.2)}.dialogue-avatar-wrapper{width:58px;height:58px;border-radius:50%;border:2px solid #ffd700;display:flex;align-items:center;justify-content:center;font-size:30px;background:radial-gradient(circle,#d4af3740,#0f0f19e6);box-shadow:0 0 14px #d4af374d;flex-shrink:0}.dialogue-speaker-meta{flex:1;min-width:0}.dialogue-speaker-name{font-family:Cinzel,serif,Georgia;font-size:18px;font-weight:700;color:#f59e0b;text-shadow:0 1px 3px rgba(0,0,0,.8);line-height:1.2}.dialogue-speaker-title{font-size:12.5px;color:#cbd5e1;margin-top:3px;line-height:1.3}.dialogue-speaker-faction{display:inline-block;font-size:10.5px;color:#94a3b8;text-transform:uppercase;letter-spacing:.6px;margin-top:4px;background:#ffffff0f;padding:2px 8px;border-radius:6px}.dialogue-quest-banner{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:10px;margin-bottom:14px;font-size:13px;line-height:1.35;transition:all .2s cubic-bezier(.4,0,.2,1)}.dialogue-quest-banner.clickable{cursor:pointer;-webkit-user-select:none;user-select:none}.dialogue-quest-banner.clickable:hover{filter:brightness(1.18);transform:translateY(-1px);box-shadow:0 4px 14px #00000080,0 0 12px #d4af3740}.dialogue-quest-banner.clickable:active{transform:translateY(0)}.dialogue-quest-banner .banner-arrow{margin-left:auto;font-size:15px;color:#d4af37bf;padding-left:8px;flex-shrink:0;transition:transform .2s ease,color .2s ease}.dialogue-quest-banner.clickable:hover .banner-arrow{color:gold;transform:translate(3px)}.dialogue-quest-banner .banner-icon{font-size:22px;flex-shrink:0}.dialogue-quest-banner .banner-info{display:flex;flex-direction:column;gap:2px}.dialogue-quest-banner.available{background:#f59e0b1f;border:1px solid rgba(245,158,11,.4);color:#fbbf24}.dialogue-quest-banner.active{background:#38bdf81f;border:1px solid rgba(56,189,248,.4);color:#38bdf8}.dialogue-quest-banner.ready{background:#10b98126;border:1.5px solid rgba(16,185,129,.6);color:#34d399}.pulse-glow{animation:questPulseGlow 2s infinite ease-in-out}@keyframes questPulseGlow{0%,to{box-shadow:0 0 10px #10b98133}50%{box-shadow:0 0 20px #10b98180}}.dialogue-speech-bubble{background:#0a0a12bf;border:1px solid rgba(255,255,255,.08);border-left:3.5px solid #d4af37;border-radius:10px;padding:14px 16px;margin-bottom:16px;position:relative}.dialogue-speech-quote-mark{position:absolute;top:4px;right:12px;font-size:32px;line-height:1;color:#d4af372e;font-family:Georgia,serif;-webkit-user-select:none;user-select:none}.dialogue-speech-text{font-size:14.5px;line-height:1.55;color:#f1f5f9;font-style:italic}.dialogue-fade-in{animation:dialogueFadeIn .3s ease-out forwards}@keyframes dialogueFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.dialogue-choices-section{display:flex;flex-direction:column;gap:8px}.dialogue-choices-title{font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.8px;color:#94a3b8;margin-bottom:2px}.dialogue-choices-list{display:flex;flex-direction:column;gap:8px}.dialogue-choice-chip{width:100%;display:flex;align-items:center;gap:10px;padding:12px 14px;background:#ffffff0a;border:1px solid rgba(255,255,255,.12);border-radius:10px;color:#e2e8f0;font-size:13.5px;text-align:left;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:0 2px 6px #0000004d}.dialogue-choice-chip .choice-num{font-family:monospace;font-size:12px;font-weight:700;color:gold;opacity:.8;flex-shrink:0}.dialogue-choice-chip .choice-icon{font-size:16px;flex-shrink:0}.dialogue-choice-chip .choice-text{flex:1;line-height:1.35}.dialogue-choice-chip .choice-arrow{color:#64748b;font-size:12px;transition:transform .2s ease,color .2s ease;flex-shrink:0}.dialogue-choice-chip:hover{background:#d4af3726;border-color:#d4af3780;color:#fff;transform:translate(3px);box-shadow:0 4px 12px #0006}.dialogue-choice-chip:hover .choice-arrow{color:gold;transform:translate(2px)}.dialogue-choice-chip.available{background:#f59e0b1a;border-color:#f59e0b66;color:#fde047}.dialogue-choice-chip.ready{background:linear-gradient(90deg,#10b9812e,#0596691f);border-color:#10b98199;color:#6ee7b7;font-weight:600}.dialogue-choice-chip.ready:hover{background:linear-gradient(90deg,#10b98147,#05966938);border-color:#34d399}.city-map-markers-overlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:10}.city-map-marker-plate{position:absolute;pointer-events:auto;display:flex;align-items:center;gap:8px;padding:6px 12px;background:linear-gradient(135deg,#0e0d16d9,#161423e6);border:1.5px solid rgba(212,175,55,.65);border-radius:8px;box-shadow:0 4px 16px #000c,inset 0 1px #ffffff1f;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:pointer;color:#fff;transition:transform .18s cubic-bezier(.2,0,0,1),border-color .18s ease,box-shadow .18s ease,background .18s ease;width:max-content;max-width:calc(100% - 24px);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.city-map-marker-plate:hover,.city-map-marker-plate:focus-visible{transform:scale(1.04);border-color:#f59e0b;box-shadow:0 6px 20px #f59e0b66,inset 0 1px #fff3;background:linear-gradient(135deg,#1a172af5,#26213ef5);outline:none}.city-map-marker-plate:active{transform:scale(.97)}.city-map-marker-plate.marker-left{left:4%;text-align:left}.city-map-marker-plate.marker-right{right:4%;text-align:left}.city-map-marker-plate.pos-1{top:8%}.city-map-marker-plate.pos-2{top:21%}.city-map-marker-plate.pos-3{top:34%}.city-map-marker-plate.pos-4{top:48%}.city-map-marker-plate.pos-5{top:61%}.city-map-marker-plate.pos-6{top:74%}.city-map-marker-plate.pos-7{top:87%}.marker-plate-icon{font-size:18px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#ffffff14;border-radius:6px;border:1px solid rgba(212,175,55,.35);flex-shrink:0}.marker-plate-text{display:flex;flex-direction:column;min-width:0}.marker-plate-title{font-size:12px;font-weight:700;color:#f9fafb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:.2px}.marker-plate-subtitle{font-size:10px;color:#d4af37;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (max-width: 360px){.city-map-marker-plate{padding:5px 8px;gap:6px;max-width:calc(100% - 16px)}.marker-plate-icon{font-size:15px;width:26px;height:26px}.marker-plate-title{font-size:11px}.marker-plate-subtitle{font-size:9px}}@media (max-width: 300px){.marker-plate-title{font-size:10px}}.city-map-quick-bar,.city-quick-chip{display:none}.main-story-screen{flex:1 1 auto;min-height:0;display:flex;align-items:stretch;justify-content:center;pointer-events:auto;margin:2px 0 4px;width:100%;animation:bg3ModalPop .25s cubic-bezier(.16,1,.3,1) forwards}.main-story-content{width:100%;max-width:500px;height:100%;max-height:100%;background:transparent;border:none;box-shadow:none;padding:4px 6px;position:relative;display:flex;flex-direction:column;gap:12px;overflow-x:hidden;overflow-y:hidden}@media (max-height: 700px){.main-story-content{max-height:calc(100vh - 68px);padding:2px 4px;gap:8px}}.city-time-hud-wrapper{display:flex;justify-content:center;align-items:center;width:100%;margin:0 0 6px;z-index:10}.city-time-hud{display:inline-flex;align-items:center;gap:7px;background:#0e0d16e0;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(212,175,55,.35);border-radius:20px;padding:5px 14px;color:#f8fafc;font-family:var(--font-heading, inherit);font-size:12px;font-weight:700;cursor:pointer;box-shadow:0 4px 14px #00000080,inset 0 1px 2px #ffffff14;transition:all .25s ease;-webkit-user-select:none;user-select:none;outline:none}.city-time-hud:hover,.city-time-hud:focus-visible{border-color:#d4af37bf;box-shadow:0 4px 18px #d4af3740,inset 0 1px 3px #ffffff26;transform:translateY(-1px)}.city-time-hud:active{transform:translateY(0)}.city-time-hud .time-hud-icon{font-size:14px;line-height:1;display:inline-block;filter:drop-shadow(0 1px 3px rgba(0,0,0,.8))}.city-time-hud .time-hud-text{letter-spacing:.3px;color:gold;white-space:nowrap}.main-story-screen{transition:background .6s ease,box-shadow .6s ease}.main-story-screen.time-phase-morning{background:radial-gradient(ellipse at top,rgba(245,158,11,.08) 0%,rgba(10,10,18,.4) 60%,transparent 100%)}.main-story-screen.time-phase-day{background:radial-gradient(ellipse at top,rgba(59,130,246,.06) 0%,rgba(10,10,18,.35) 60%,transparent 100%)}.main-story-screen.time-phase-evening{background:radial-gradient(ellipse at top,rgba(234,88,12,.12) 0%,rgba(15,12,22,.5) 60%,transparent 100%);box-shadow:inset 0 0 80px #d9770614}.main-story-screen.time-phase-night{background:radial-gradient(ellipse at top,rgba(76,29,149,.16) 0%,rgba(6,6,12,.65) 60%,transparent 100%);box-shadow:inset 0 0 100px #0f172ab3}.main-story-header{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding-top:10px;padding-bottom:2px;width:100%;text-align:center;flex-shrink:0}.main-story-seal-wrap{display:none}.main-story-seal-icon{font-size:20px;line-height:1}.main-story-title{font-family:Cinzel,serif;font-size:21px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:#fef08a;text-shadow:0 2px 4px rgba(0,0,0,.85),0 0 1px #000000;-webkit-text-stroke:1.2px #000000;paint-order:stroke fill;margin:0;padding:0}.main-story-divider{width:75%;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(212,175,55,.85) 50%,transparent 100%);box-shadow:0 1px 3px #00000080;margin-top:4px}.main-story-content .story-folio-narrative-body{flex:0 1 auto;max-height:calc(100vh - 360px)}.main-story-content .story-folio-choices-section{margin-top:auto;padding-bottom:2px}.bg3-story-folio-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;background:#030207db;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:12px;animation:bg3ModalPop .22s cubic-bezier(.16,1,.3,1) forwards}.story-folio-content{width:100%;max-width:490px;height:90vh;max-height:90vh;background:linear-gradient(180deg,#161322fa,#0d0b16fc);border:1.5px solid rgba(212,175,55,.65);border-radius:16px;box-shadow:0 20px 50px #000000e6,0 0 25px #d4af3726,inset 0 1px #ffffff1f;padding:16px;position:relative;display:flex;flex-direction:column;gap:12px;overflow:hidden}.story-folio-close-btn{position:absolute;top:12px;right:12px;width:32px;height:32px;border-radius:50%;background:#ffffff14;border:1px solid rgba(212,175,55,.45);color:#e5e7eb;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;transition:all .2s ease;z-index:10}.story-folio-close-btn:hover{background:#ef444440;border-color:#ef4444;color:#fff;transform:scale(1.08)}.story-folio-header{display:flex;align-items:center;gap:12px;padding-bottom:10px;border-bottom:1px solid rgba(212,175,55,.25);flex-shrink:0}.story-folio-seal-wrap{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#d4af3733,#b4530940);border:1.5px solid rgba(212,175,55,.7);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 0 12px #d4af3740}.story-folio-seal-icon{font-size:22px}.story-folio-meta{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.story-folio-badge-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.story-folio-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:2px 8px;border-radius:4px;background:#d4af3726;border:1px solid rgba(212,175,55,.4);color:#d4af37;display:inline-block}.story-folio-speaker-badge{font-size:10px;font-weight:700;padding:2px 8px;border-radius:4px;background:#3b82f626;border:1px solid rgba(59,130,246,.4);color:#60a5fa}.story-folio-title{font-size:16px;font-weight:800;color:#f9fafb;margin:0;letter-spacing:.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.story-folio-subtitle{font-size:11px;color:#d4af37;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.story-folio-media-slot{width:100%;max-height:160px;border-radius:10px;overflow:hidden;border:1px solid rgba(212,175,55,.3);flex-shrink:0}.story-folio-media-img{width:100%;height:100%;object-fit:cover;display:block}.story-folio-quest-banner{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;font-size:12px;font-weight:600;flex-shrink:0;animation:bannerFade .25s ease}.story-folio-quest-banner.available{background:linear-gradient(90deg,#f59e0b40,#d9770626);border:1px solid rgba(245,158,11,.6);color:#fbbf24}.story-folio-quest-banner.active{background:linear-gradient(90deg,#3b82f640,#2563eb26);border:1px solid rgba(59,130,246,.6);color:#93c5fd}.story-folio-quest-banner.ready{background:linear-gradient(90deg,#10b98147,#0596692e);border:1px solid #10b981;color:#6ee7b7;box-shadow:0 0 12px #10b9814d}.story-folio-narrative-body{flex:1 1 auto;overflow-y:auto;overflow-x:hidden;padding:12px 10px;background:#0c0e12bf;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(212,175,55,.28);border-radius:10px;box-shadow:0 4px 20px #00000073;display:flex;flex-direction:column;gap:12px;scrollbar-width:thin;scrollbar-color:rgba(212,175,55,.4) transparent}.story-folio-narrative-body::-webkit-scrollbar{width:4px}.story-folio-narrative-body::-webkit-scrollbar-thumb{background:#d4af3766;border-radius:4px}.dm-narration-paragraph{font-family:EB Garamond,Georgia,Palatino Linotype,serif;font-size:15.5px;line-height:1.65;letter-spacing:.2px;color:#f1f5f9;font-style:normal;margin:0 0 12px;text-shadow:0 1px 3px rgba(0,0,0,.95);-webkit-text-stroke:.75px #000000;paint-order:stroke fill;border-left:none;padding-left:0;text-align:left;hyphens:auto;-webkit-hyphens:auto}.dm-narration-paragraph:last-child{margin-bottom:0}.story-drop-cap{display:inline;font-family:Cinzel,serif;font-size:26px;line-height:1;font-weight:700;color:#fef08a;vertical-align:baseline;margin-right:1px;text-shadow:0 0 10px rgba(212,175,55,.6),0 1px 3px rgba(0,0,0,.9);-webkit-text-stroke:1.2px #000000;paint-order:stroke fill}.dm-speech-block{background:#141120d9;border:1px solid rgba(212,175,55,.35);border-radius:8px;padding:10px 12px;display:flex;flex-direction:column;gap:6px}.narrative-block{display:flex;flex-direction:column;margin-bottom:14px}.narrative-block:last-child{margin-bottom:0}.narrative-tag{display:inline-flex;align-items:center;gap:6px;font-family:Cinzel,serif;font-size:11px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;padding:3px 8px;border-radius:4px;margin-bottom:7px;width:fit-content;-webkit-user-select:none;user-select:none}.narrative-tag-icon{font-size:12px;line-height:1}.narrative-tag-environment{color:#e2c077;background:#d4af371f;border:1px solid rgba(212,175,55,.35);box-shadow:0 0 8px #d4af3726;text-shadow:0 1px 2px rgba(0,0,0,.9)}.narrative-tag-speech{color:#fbbf24;background:#fbbf241f;border:1px solid rgba(251,191,36,.4);box-shadow:0 0 10px #fbbf2433;text-shadow:0 1px 2px rgba(0,0,0,.9);margin-top:4px}.dm-speech-speaker{font-size:12px;font-weight:700;color:#f59e0b;display:flex;align-items:center;gap:6px}.dm-speech-quote{font-size:13.5px;line-height:1.55;color:#fff;font-style:normal;font-weight:500}.story-folio-choices-section{flex-shrink:0;display:flex;flex-direction:column;gap:6px;padding-top:4px}.story-folio-choices-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#d4af37}.story-folio-choices-list{display:flex;flex-direction:column;gap:6px;max-height:220px;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgba(212,175,55,.3) transparent}.story-folio-choices-list::-webkit-scrollbar{width:4px}.story-folio-choices-list::-webkit-scrollbar-thumb{background:#d4af374d;border-radius:4px}.story-choice-btn{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;background:#0c0e12bf;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(212,175,55,.22);border-radius:8px;box-shadow:0 2px 10px #00000059;color:#f3f4f6;font-size:13px;font-weight:600;text-align:left;cursor:pointer;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;-webkit-text-stroke:.6px #000000;paint-order:stroke fill}.story-choice-btn:hover,.story-choice-btn:focus-visible{background:#1e222abf;border-color:#f59e0b;color:#fff;box-shadow:0 0 14px #f59e0b40;outline:none}.story-choice-btn:active{transform:scale(.98)}.story-choice-btn .choice-arrow{transition:transform .18s ease,color .18s ease}.story-choice-btn:hover .choice-arrow{transform:translate(3px);color:#f59e0b}.story-choice-btn .choice-prefix{color:#d4af37;font-weight:700;flex-shrink:0}.story-choice-btn .choice-text{flex:1;min-width:0}.story-choice-btn .choice-arrow{color:#d4af3799;font-size:13px;flex-shrink:0}.story-choice-btn.quest-choice{border-color:#f59e0b99;background:linear-gradient(90deg,#f59e0b2e,#191526e6)}.story-choice-btn.ready-choice{border-color:#10b981;background:linear-gradient(90deg,#10b98140,#191526e6);color:#6ee7b7}.story-choice-btn.return-choice{border-color:#94a3b859;color:#94a3b8;background:#120f1ab3}.story-choice-btn.district-building-btn{border-color:#d4af3766;background:linear-gradient(90deg,#1a1626d9,#0e0c16eb);padding:11px 13px}.story-choice-btn.district-building-btn:hover{border-color:#d4af37;background:linear-gradient(90deg,#2d2444e6,#181424f2);box-shadow:0 0 14px #d4af3740}.story-choice-btn.district-building-btn .building-choice-icon{font-size:16px;margin-right:6px;vertical-align:middle}.story-choice-btn.district-building-btn .building-choice-title{font-weight:600;color:#f1f5f9}.story-choice-btn.choice-combat,.story-choice-btn.combat-choice{border-color:#ef444473;background:linear-gradient(90deg,#260e12f0,#140a0ef5);color:#fff;box-shadow:0 2px 12px #00000080,inset 0 0 12px #dc262626}.story-choice-btn.choice-combat:hover,.story-choice-btn.combat-choice:hover{border-color:#ef4444;background:linear-gradient(90deg,#3a1218f5,#1c0c12fa);box-shadow:0 0 16px #ef444466,inset 0 0 16px #dc262640;color:#fff}.story-choice-btn.choice-combat .choice-arrow{color:#f87171}.story-choice-btn.choice-exit,.story-choice-btn.exit-choice{margin-top:10px;border-color:#d4af3740;background:#0e1016e0;color:#f3f4f6;box-shadow:0 2px 10px #0006}.story-choice-btn.choice-exit:hover,.story-choice-btn.exit-choice:hover{border-color:#f59e0b;background:#1c202aeb;color:#fff;box-shadow:0 0 14px #f59e0b38}.story-choice-btn.choice-exit .choice-arrow{color:#d4af37a6}.story-choice-btn.choice-ready-check{border-color:#10b98199;background:linear-gradient(90deg,#062c1ef0,#0c1c16f5);color:#ecfdf5;box-shadow:0 0 14px #10b98159,inset 0 0 14px #05966933;animation:pulseReadyGlow 2.2s infinite ease-in-out;transition:all .25s ease}.story-choice-btn.choice-ready-check:hover{border-color:#34d399;background:linear-gradient(90deg,#083c28f5,#10261efa);box-shadow:0 0 20px #34d39980,inset 0 0 18px #10b9814d;color:#fff}.story-choice-btn.choice-ready-check.choice-ready-active{border-color:#10b981;background:linear-gradient(90deg,#064e3bf5,#042f2efa);box-shadow:0 0 24px #10b981a6,inset 0 0 20px #34d39966;color:#a7f3d0}.story-choice-btn.choice-ready-check .choice-arrow{color:#34d399}@keyframes pulseReadyGlow{0%,to{box-shadow:0 0 10px #10b9814d,inset 0 0 8px #05966926;border-color:#10b98173}50%{box-shadow:0 0 22px #10b98199,inset 0 0 16px #34d39959;border-color:#34d399d9}}.story-choice-btn.choice-exit:hover .choice-arrow{color:#f59e0b;transform:translate(3px)}.story-choice-btn.choice-dialogue .building-choice-icon{filter:drop-shadow(0 0 4px rgba(212,175,55,.45))}.story-choice-btn.choice-question-visited,.story-choice-btn.district-building-btn.choice-question-visited{border-color:#9ca3af47!important;background:linear-gradient(90deg,#16181ef2,#101218fa)!important;color:#9ca3af!important;opacity:1!important;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.story-choice-btn.choice-question-visited .building-choice-title,.story-choice-btn.district-building-btn.choice-question-visited .building-choice-title{color:#9ca3af!important}.story-choice-btn.choice-question-visited .building-choice-icon,.story-choice-btn.district-building-btn.choice-question-visited .building-choice-icon{opacity:.7}.story-choice-btn.choice-question-visited .choice-arrow,.story-choice-btn.district-building-btn.choice-question-visited .choice-arrow{color:#6b7280!important}.story-choice-btn.choice-question-visited:hover,.story-choice-btn.district-building-btn.choice-question-visited:hover{border-color:#9ca3af73!important;background:linear-gradient(90deg,#1c1e26f5,#14161efa)!important;opacity:1!important;box-shadow:0 0 10px #9ca3af2e}.story-choice-btn.choice-skill-checks{border-color:#d4af3759;background:#10121ae6}.story-choice-btn.choice-skill-checks:hover{border-color:#f59e0b;background:#1c202cf0;box-shadow:0 0 14px #f59e0b38}.dialogue-choice-chip.choice-skill-checks{border-color:#d4af3759;background:#10121ae6}.dialogue-choice-chip.choice-skill-checks:hover{border-color:#f59e0b;background:#1c202cf0}.skill-check-outcome-paragraph{margin-top:10px;padding:10px 14px;background:#d4af3714;border-left:3px solid #d4af37;border-radius:6px;color:#fef3c7;font-style:italic;line-height:1.45;box-shadow:0 2px 10px #00000059;animation:bg3ModalPop .2s cubic-bezier(.16,1,.3,1) forwards}.dialogue-check-outcome-box{padding:10px 14px;background:#d4af3714;border-left:3px solid #d4af37;border-radius:6px;color:#fef3c7;font-style:italic;margin-bottom:8px;line-height:1.45;box-shadow:0 2px 10px #00000059;animation:bg3ModalPop .2s cubic-bezier(.16,1,.3,1) forwards}.skill-check-badge{display:inline-block;font-style:normal;font-weight:700;color:gold;margin-right:4px}.story-choice-btn.choice-questions{border-color:#60a5fa59;background:#0e1420e6}.story-choice-btn.choice-questions:hover{border-color:#60a5fa;background:#141e30f0;box-shadow:0 0 14px #60a5fa38}.story-choice-btn.choice-quest-turnin{border-color:#eab30873;background:#1e180ceb}.story-choice-btn.choice-quest-turnin:hover{border-color:#facc15;background:#2d2410f5;box-shadow:0 0 16px #facc1547}.story-choice-btn.choice-quest-accept{border-color:#d4af3766;background:#181610eb}.story-choice-btn.choice-quest-accept:hover{border-color:#d4af37;background:#242016f5;box-shadow:0 0 14px #d4af3740}.quest-mark-yellow{display:inline-flex;align-items:center;justify-content:center;font-family:Cinzel,EB Garamond,serif;font-weight:900;font-size:19px;line-height:1;color:#fbbf24;text-shadow:0 0 8px rgba(245,158,11,.95),0 0 2px #000;filter:drop-shadow(0 0 5px rgba(251,191,36,.85));margin-right:2px;-webkit-text-stroke:.6px #78350f;transform:translateY(-1px)}.dialogue-qa-block{margin-top:12px;padding:10px 14px;background:#121826d9;border-left:3px solid #60a5fa;border-radius:6px;box-shadow:0 2px 10px #00000059;animation:bg3ModalPop .2s cubic-bezier(.16,1,.3,1) forwards}.dialogue-player-question{color:#93c5fd;font-weight:600;font-size:.95rem;margin-bottom:6px;line-height:1.4}.dialogue-npc-answer{color:#f1f5f9;font-size:.95rem;line-height:1.5;margin:0}.dialogue-narration-lead{color:#cbd5e1;font-style:italic;font-size:.92rem;line-height:1.5;margin:0 0 8px}.qa-badge{font-weight:700;margin-right:4px}.main-story-dialogue-meta{font-size:.78rem;color:#d4af37cc;font-family:var(--font-secondary, system-ui);margin-top:4px;letter-spacing:.5px}.npc-faction-pill{color:#94a3b8;font-size:.75rem}@media (max-width: 380px){.story-folio-content{padding:12px;height:94vh;max-height:94vh}.dm-narration-paragraph,.dm-speech-quote{font-size:12.5px}.story-choice-btn{padding:7px 10px;font-size:11.5px}}.story-folio-dice-stage{display:flex;flex-direction:column;gap:10px;background:#0e0b16f0;border:1.5px solid rgba(212,175,55,.55);border-radius:12px;padding:14px;box-shadow:0 8px 30px #000000b3,inset 0 0 20px #d4af3714;margin-top:4px;animation:bg3ModalPop .25s cubic-bezier(.16,1,.3,1) forwards}.dice-stage-header{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.dice-stage-badge{font-size:10px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:#d4af37;background:#d4af3726;padding:2px 8px;border-radius:4px;border:1px solid rgba(212,175,55,.3)}.dice-stage-title{font-family:var(--font-heading, serif);font-size:15px;font-weight:700;color:#f8fafc}.dice-stage-dc-pill{font-size:11px;font-weight:700;color:#cbd5e1;background:#ffffff14;padding:3px 10px;border-radius:10px;border:1px solid rgba(255,255,255,.15)}.dice-stage-dc-pill #dice-stage-dc-val{color:#f59e0b}.dice-d20-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px 0;gap:6px}.d20-dice-wrapper{position:relative;width:88px;height:88px;display:flex;align-items:center;justify-content:center;cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.d20-dice-wrapper:hover{transform:scale(1.06)}.d20-dice-wrapper:active{transform:scale(.95)}.d20-svg{filter:drop-shadow(0 0 10px rgba(212,175,55,.4));transition:filter .3s ease}.d20-outer-hex{fill:#1e162a;stroke:#d4af37;stroke-width:2.5;transition:all .3s ease}.d20-inner-face{fill:#2d2244;stroke:#d4af37;stroke-width:1.5;transition:all .3s ease}.d20-facet-line{stroke:#d4af3773;stroke-width:1.2}.d20-dice-number{position:absolute;font-family:var(--font-heading, serif);font-size:26px;font-weight:900;color:#fff;text-shadow:0 0 8px rgba(0,0,0,.9),0 0 14px rgba(212,175,55,.7);pointer-events:none;transition:all .3s ease}.d20-tap-hint{font-size:11px;color:#94a3b8;font-style:italic;text-align:center}@keyframes d20RollSpin{0%{transform:scale(.92) rotate(0);filter:blur(0px)}25%{transform:scale(1.12) rotate(90deg);filter:blur(1px)}50%{transform:scale(.96) rotate(180deg);filter:blur(1.5px)}75%{transform:scale(1.08) rotate(270deg);filter:blur(1px)}to{transform:scale(1) rotate(360deg);filter:blur(0px)}}.d20-dice-wrapper.rolling{animation:d20RollSpin .65s cubic-bezier(.4,0,.2,1) infinite;pointer-events:none}@keyframes d20CritGlow{0%,to{transform:scale(1);filter:drop-shadow(0 0 8px rgba(245,158,11,.6))}50%{transform:scale(1.1);filter:drop-shadow(0 0 24px rgba(245,158,11,1)) drop-shadow(0 0 35px rgba(255,215,0,.8))}}.d20-dice-wrapper.crit-success{animation:d20CritGlow 1.2s ease-in-out infinite}.d20-dice-wrapper.crit-success .d20-outer-hex{fill:#451a03;stroke:gold}.d20-dice-wrapper.crit-success .d20-inner-face{fill:#78350f;stroke:gold}.d20-dice-wrapper.crit-success .d20-dice-number{color:gold;text-shadow:0 0 16px #ffd700,0 0 28px #f59e0b}@keyframes d20CritFailShake{0%,to{transform:translate(0)}20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}.d20-dice-wrapper.crit-fail{animation:d20CritFailShake .4s ease-in-out}.d20-dice-wrapper.crit-fail .d20-outer-hex{fill:#450a0a;stroke:#ef4444}.d20-dice-wrapper.crit-fail .d20-inner-face{fill:#7f1d1d;stroke:#ef4444}.d20-dice-wrapper.crit-fail .d20-dice-number{color:#ef4444;text-shadow:0 0 16px #ef4444}.d20-formula-breakdown{display:flex;align-items:center;justify-content:center;gap:6px;font-size:12px;font-weight:600;color:#cbd5e1;background:#0f0c18b3;padding:6px 12px;border-radius:8px;border:1px solid rgba(255,255,255,.08)}.d20-math-token{padding:2px 6px;border-radius:4px}.d20-token-roll{background:#d4af3726;color:#d4af37}.d20-token-mod{background:#38bdf826;color:#38bdf8}.d20-token-total{background:#ffffff1f;color:#fff;font-weight:800}.d20-math-operator{color:#64748b;font-weight:700}.d20-verdict-banner{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 14px;border-radius:8px;font-weight:800;font-size:13px;letter-spacing:.5px}.d20-verdict-banner.verdict-success{background:linear-gradient(90deg,#10b98140,#05966940);border:1.5px solid #10b981;color:#6ee7b7;box-shadow:0 0 16px #10b98159}.d20-verdict-banner.verdict-failure{background:linear-gradient(90deg,#ef444438,#b91c1c38);border:1.5px solid #ef4444;color:#fca5a5;box-shadow:0 0 16px #ef444440}.d20-verdict-banner.verdict-crit-success{background:linear-gradient(90deg,#f59e0b4d,#d977064d);border:1.5px solid #ffd700;color:gold;box-shadow:0 0 22px #ffd7008c}.d20-verdict-banner.verdict-crit-failure{background:linear-gradient(90deg,#ef44444d,#991b1b4d);border:1.5px solid #ef4444;color:#fca5a5;box-shadow:0 0 20px #ef444480}.dice-stage-actions{display:flex;flex-direction:column;gap:6px;margin-top:4px}.d20-roll-btn{background:linear-gradient(135deg,#d97706,#b45309,#78350f);border:1.5px solid #ffd700;border-radius:8px;color:#fff;font-size:13px;font-weight:800;padding:10px 18px;cursor:pointer;width:100%;transition:all .2s ease;box-shadow:0 4px 14px #d9770659;display:flex;align-items:center;justify-content:center;gap:8px;-webkit-user-select:none;user-select:none}.d20-roll-btn:hover{background:linear-gradient(135deg,#f59e0b,#d97706,#92400e);transform:translateY(-1px);box-shadow:0 6px 18px #d9770673}.d20-roll-btn:active{transform:scale(.98)}.d20-roll-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.d20-continue-btn{background:linear-gradient(135deg,#059669,#047857);border:1.5px solid #34d399;border-radius:8px;color:#fff;font-size:13px;font-weight:800;padding:10px 18px;cursor:pointer;width:100%;transition:all .2s ease;box-shadow:0 4px 14px #05966959;text-align:center;-webkit-user-select:none;user-select:none}.d20-continue-btn:hover{background:linear-gradient(135deg,#10b981,#059669);transform:translateY(-1px);box-shadow:0 6px 18px #10b98173}.d20-continue-btn:active{transform:scale(.98)}.choice-check-tag{color:gold;font-size:10.5px;font-weight:700;background:#f59e0b26;border:1px solid rgba(245,158,11,.4);padding:1px 6px;border-radius:4px;margin-left:6px;display:inline-block}.bg3-location-hub-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#04030ad9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:12px}.location-hub-content{width:100%;max-width:480px;max-height:90vh;overflow-y:auto;background:linear-gradient(180deg,#1a1625f5,#0d0b14fa);border:1.5px solid rgba(212,175,55,.45);border-radius:16px;box-shadow:0 16px 40px #000000d9,inset 0 1px #ffffff1a;padding:16px;position:relative;display:flex;flex-direction:column;gap:14px}.location-hub-close-btn{position:absolute;top:12px;right:12px;width:32px;height:32px;border-radius:50%;background:#ffffff14;border:1px solid rgba(212,175,55,.4);color:#cbd5e1;font-size:15px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:10}.location-hub-close-btn:hover{background:#d4af3740;border-color:var(--accent-gold);color:#fff;transform:rotate(90deg)}.location-hub-header{display:flex;align-items:center;gap:14px;padding-bottom:12px;border-bottom:1px solid rgba(212,175,55,.2)}.location-hub-icon-wrap{width:52px;height:52px;border-radius:12px;background:radial-gradient(circle,#d4af3740,#0e0d16cc);border:1.5px solid rgba(212,175,55,.6);display:flex;align-items:center;justify-content:center;font-size:28px;box-shadow:0 4px 14px #00000080;flex-shrink:0}.location-hub-meta{flex:1;min-width:0}.location-hub-badge-row{margin-bottom:4px}.location-hub-badge{font-size:10px;font-weight:700;text-transform:uppercase;color:var(--accent-gold);background:#d4af371f;border:1px solid rgba(212,175,55,.3);padding:2px 8px;border-radius:10px;letter-spacing:.5px}.location-hub-title{margin:0;font-size:17px;font-weight:800;color:#f8fafc;font-family:var(--font-heading);text-shadow:0 2px 8px rgba(0,0,0,.6);line-height:1.25}.location-hub-desc-box{background:#00000040;border-left:3px solid rgba(212,175,55,.6);padding:8px 12px;border-radius:0 8px 8px 0}.location-hub-desc{margin:0;font-size:12px;line-height:1.5;color:#cbd5e1;font-style:italic}.location-hub-section{display:flex;flex-direction:column;gap:8px}.location-hub-section-title{display:flex;align-items:center;justify-content:space-between;font-size:11.5px;font-weight:700;text-transform:uppercase;color:#94a3b8;letter-spacing:.6px;padding-left:2px}.location-hub-npcs-list{display:flex;flex-direction:column;gap:8px}.location-npc-card{display:flex;align-items:center;gap:12px;background:#ffffff0a;border:1px solid rgba(255,255,255,.12);padding:10px 12px;border-radius:12px;cursor:pointer;transition:all .2s ease;position:relative}.location-npc-card:hover{background:#d4af371f;border-color:var(--accent-gold);transform:translate(3px);box-shadow:0 4px 14px #0006}.location-npc-card.quest-ready{border-color:#10b98199;background:linear-gradient(90deg,#10b9811f,#0596690d)}.location-npc-card.quest-available{border-color:#f59e0b80;background:linear-gradient(90deg,#f59e0b1a,#d977060a)}.npc-card-avatar{width:40px;height:40px;border-radius:50%;background:#0006;border:1.5px solid rgba(212,175,55,.5);display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0}.npc-card-details{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.npc-card-name-row{display:flex;align-items:center;justify-content:space-between;gap:6px}.npc-card-name{font-size:13px;font-weight:700;color:#f8fafc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.npc-card-badge{font-size:9.5px;font-weight:700;padding:1px 6px;border-radius:6px;white-space:nowrap}.npc-card-badge.quest-ready{background:#10b98133;color:#6ee7b7;border:1px solid rgba(16,185,129,.4)}.npc-card-badge.quest-available{background:#f59e0b26;color:#fde047;border:1px solid rgba(245,158,11,.4)}.npc-card-badge.quest-in-progress{background:#3b82f626;color:#93c5fd;border:1px solid rgba(59,130,246,.4)}.npc-card-badge.chat-only{background:#ffffff14;color:#cbd5e1}.npc-card-title{font-size:10.5px;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.npc-card-arrow{color:#64748b;font-size:12px;transition:transform .2s ease,color .2s ease}.location-npc-card:hover .npc-card-arrow{color:var(--accent-gold);transform:translate(2px)}.location-hub-services-list{display:flex;flex-direction:column;gap:8px}.service-action-btn{display:flex;align-items:center;gap:12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.14);padding:10px 12px;border-radius:12px;cursor:pointer;text-align:left;transition:all .2s ease;color:#f8fafc}.service-action-btn:hover{background:#d4af3724;border-color:var(--accent-gold);transform:translateY(-2px);box-shadow:0 4px 14px #0006}.service-action-btn.gold-btn{background:linear-gradient(90deg,#d4af372e,#b4530926);border-color:#d4af3780}.service-action-btn.gold-btn:hover{background:linear-gradient(90deg,#d4af3747,#b4530940);border-color:gold}.service-btn-icon{font-size:22px;flex-shrink:0}.service-btn-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.service-btn-info strong{font-size:12.5px;font-weight:700;color:#f8fafc}.service-btn-info span{font-size:10px;color:#94a3b8}.service-btn-arrow{color:#64748b;font-size:12px;transition:transform .2s ease,color .2s ease}.service-action-btn:hover .service-btn-arrow{color:var(--accent-gold);transform:translate(2px)}.quest-journal-section{display:flex;flex-direction:column;gap:10px;margin-top:8px}.quest-journal-section-title{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:800;text-transform:uppercase;color:var(--accent-gold);border-bottom:1px solid rgba(212,175,55,.2);padding-bottom:4px}.quest-active-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:8px;transition:border-color .2s ease}.quest-active-card.ready{border-color:#10b98199;background:linear-gradient(135deg,#10b9811a,#064e3b26)}.quest-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.quest-card-title-wrap{display:flex;flex-direction:column;gap:2px}.quest-card-title{font-size:13.5px;font-weight:800;color:#f8fafc}.quest-card-giver{font-size:11px;color:#94a3b8}.quest-card-status-pill{font-size:10px;font-weight:700;padding:2px 8px;border-radius:10px}.quest-card-status-pill.active{background:#3b82f633;color:#93c5fd;border:1px solid rgba(59,130,246,.4)}.quest-card-status-pill.ready{background:#10b98140;color:#6ee7b7;border:1px solid rgba(16,185,129,.5)}.quest-card-desc{font-size:11.5px;color:#cbd5e1;line-height:1.4;margin:0}.quest-progress-wrap{display:flex;flex-direction:column;gap:4px}.quest-progress-label-row{display:flex;justify-content:space-between;font-size:10.5px;color:#94a3b8}.quest-progress-bar-bg{width:100%;height:6px;background:#0006;border-radius:3px;overflow:hidden}.quest-progress-bar-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#60a5fa);border-radius:3px;transition:width .3s ease}.quest-progress-bar-fill.ready{background:linear-gradient(90deg,#10b981,#34d399)}.quest-card-rewards-row{display:flex;align-items:center;justify-content:space-between;padding-top:6px;border-top:1px solid rgba(255,255,255,.08);font-size:11px}.quest-rewards-text{color:var(--accent-gold);font-weight:700}.quest-nav-btn{background:#d4af3726;border:1px solid var(--accent-gold);color:#fff;font-size:11px;font-weight:700;padding:4px 10px;border-radius:8px;cursor:pointer;transition:all .2s ease}.quest-nav-btn:hover{background:var(--accent-gold);color:#000;transform:translateY(-1px)}.quest-empty-notice{background:#ffffff08;border:1px dashed rgba(255,255,255,.15);padding:16px;border-radius:12px;text-align:center;color:#94a3b8;font-size:12px;line-height:1.5}.quest-category-badge{display:inline-flex;align-items:center;gap:3px;font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:1px 6px;border-radius:6px;background:#ffffff14;color:#cbd5e1;width:fit-content}.quest-category-badge.story{background:#d4af372e;color:#fde047;border:1px solid rgba(212,175,55,.4)}.quest-category-badge.faction{background:#3b82f62e;color:#93c5fd;border:1px solid rgba(59,130,246,.4)}.quest-category-badge.bounty{background:#ef44442e;color:#fca5a5;border:1px solid rgba(239,68,68,.4)}.quest-category-badge.side{background:#a855f72e;color:#d8b4fe;border:1px solid rgba(168,85,247,.4)}.quest-stage-indicator{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:700;color:#e2e8f0;background:#0000004d;padding:2px 6px;border-radius:6px;border:1px solid rgba(255,255,255,.08)}.quest-any-of-hint{font-size:10.5px;color:#94a3b8;background:#ffffff08;padding:4px 8px;border-radius:6px;border-left:2px solid var(--accent-gold);line-height:1.35}.quest-tabs-bar{display:flex;gap:8px;margin-top:10px;margin-bottom:6px;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:8px}.quest-tab-btn{flex:1;background:#ffffff0d;border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:8px 12px;font-family:var(--font-heading, "Cinzel", serif);font-size:12px;font-weight:700;color:#94a3b8;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:6px}.quest-tab-btn:hover{background:#ffffff1a;color:#f8fafc}.quest-tab-btn.active{background:linear-gradient(135deg,#d4af3738,#b48c281f);border-color:#d4af3799;color:gold;box-shadow:0 0 12px #d4af3733}.quest-completed-card{background:#10b9810a;border:1px solid rgba(16,185,129,.3);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:8px;position:relative}.quest-card-status-pill.completed{background:#10b98133;color:#6ee7b7;border:1px solid rgba(16,185,129,.4)}.quest-completed-badge{color:#10b981;font-weight:700}.adventures-modal{padding:0!important;background:#08060cf5!important;-webkit-backdrop-filter:blur(14px)!important;backdrop-filter:blur(14px)!important;align-items:stretch!important;justify-content:center!important}.adventures-modal .modal-content{background:radial-gradient(circle at 50% 0%,#1a1614,#0d0c0b)!important;border-left:1px solid rgba(212,175,55,.35)!important;border-right:1px solid rgba(212,175,55,.35)!important;border-top:none!important;border-bottom:none!important;box-shadow:0 0 50px #000000f2,0 0 25px #d4af371f!important;border-radius:0!important;width:100%!important;max-width:500px!important;height:100%!important;max-height:100vh!important;box-sizing:border-box!important;padding:22px 20px 24px!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}.adventures-modal .modal-header{position:relative!important;display:flex!important;justify-content:center!important;align-items:center!important;padding-bottom:14px!important;border-bottom:1px solid rgba(212,175,55,.25)!important;flex-shrink:0!important}.adventures-modal .adventures-title,h2.adventures-title{font-family:var(--font-heading, "Cinzel", serif)!important;font-size:26px!important;font-weight:900!important;letter-spacing:4px!important;text-transform:uppercase!important;text-align:center!important;color:gold!important;background:linear-gradient(180deg,#fff7c2,#d4af37 60%,#aa8010)!important;-webkit-background-clip:text!important;-webkit-text-fill-color:transparent!important;text-shadow:0 2px 10px rgba(0,0,0,.7)!important;margin:0 auto!important}.adventures-modal .close-btn{position:absolute!important;right:0!important;top:50%!important;transform:translateY(-50%)!important}.adventures-tabs-bar{display:flex;gap:12px;margin-top:14px;margin-bottom:14px;border-bottom:1px solid rgba(212,175,55,.2);padding-bottom:12px;flex-shrink:0}.adventures-tab-btn{flex:1;background:#191716cc;border:1px solid rgba(212,175,55,.25);border-radius:8px;padding:12px 18px;font-family:var(--font-heading, "Cinzel", serif);font-size:15px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#a8a29e;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);text-align:center}.adventures-tab-btn:hover{background:#2d261ee6;color:#fef08a;border-color:#d4af3780;transform:translateY(-1px)}.adventures-tab-btn.active{background:linear-gradient(135deg,#d4af3747,#8c691433);border-color:gold;color:#fffbeb;box-shadow:0 0 16px #d4af3759,inset 0 0 10px #d4af3726}.adventures-list{display:flex;flex-direction:column;gap:12px;margin-top:4px;flex:1;overflow-y:auto;padding-right:4px}.adventures-list::-webkit-scrollbar{width:5px}.adventures-list::-webkit-scrollbar-thumb{background:#d4af374d;border-radius:3px}.adventures-list::-webkit-scrollbar-thumb:hover{background:#d4af3780}.adventure-card{background:linear-gradient(180deg,#1a1715f2,#100e0dfa);border:1px solid rgba(212,175,55,.28);border-radius:8px;padding:14px 18px;display:flex;flex-direction:column;box-shadow:0 4px 16px #0000008c;transition:all .22s cubic-bezier(.4,0,.2,1);cursor:pointer;-webkit-user-select:none;user-select:none}.adventure-card:hover{border-color:#d4af37a6;background:linear-gradient(180deg,#201c19fa,#141211fa);box-shadow:0 6px 20px #000000b3,0 0 12px #d4af3733;transform:translateY(-1px)}.adventure-card.expanded{border-color:#d4af37d9;background:radial-gradient(circle at 50% 0%,#261e16fa,#120f0efa);box-shadow:0 8px 26px #000000d9,0 0 18px #d4af3740}.adventure-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.adventure-card-title-group{display:flex;flex-direction:column;gap:4px;flex:1}.adventure-card-title{font-family:var(--font-heading, "Cinzel", serif);font-size:18px;font-weight:800;color:gold;letter-spacing:.6px;line-height:1.3;text-shadow:0 2px 6px rgba(0,0,0,.7)}.adventure-card.expanded .adventure-card-title{color:#fffbeb;text-shadow:0 0 12px rgba(212,175,55,.5),0 2px 6px rgba(0,0,0,.8)}.adventure-card-subtitle{font-family:var(--font-heading, "Cinzel", serif);font-size:12px;font-weight:700;color:#c4a77d;letter-spacing:1.2px;text-transform:uppercase;line-height:1.35;opacity:.9}.adventure-card-chevron-box{width:26px;height:26px;border-radius:50%;border:1px solid rgba(212,175,55,.35);background:#1e1a18bf;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s ease;margin-top:1px}.adventure-card:hover .adventure-card-chevron-box{border-color:#d4af37bf;background:#32281ee6}.adventure-card-chevron{font-size:10px;color:#d4af37;transition:transform .25s ease,color .2s ease}.adventure-card:hover .adventure-card-chevron{color:#fff}.adventure-card.expanded .adventure-card-chevron{color:gold}.adventure-card-body{display:flex;flex-direction:column;gap:10px;padding:12px 0 4px;margin-top:10px;border-top:1px solid rgba(212,175,55,.18);animation:fadeInAccordion .22s ease-out}@keyframes fadeInAccordion{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.adventure-chapter-header{font-family:var(--font-heading, "Cinzel", serif);font-size:13.5px;font-weight:700;color:#fef08a;letter-spacing:1px;text-transform:uppercase;text-shadow:0 1px 4px rgba(0,0,0,.85);margin-bottom:2px}.adventure-lore-text{font-family:EB Garamond,Georgia,serif;font-size:16px;font-style:normal;line-height:1.65;color:#e2e8f0;text-shadow:0 1px 2px rgba(0,0,0,.85);letter-spacing:.15px}.adventure-goal-container{display:flex;align-items:baseline;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid rgba(212,175,55,.18)}.adventure-goal-label{font-family:var(--font-heading, "Cinzel", serif);font-size:12px;font-weight:800;color:gold;letter-spacing:1px;text-transform:uppercase;flex-shrink:0;text-shadow:0 1px 3px rgba(0,0,0,.85)}.adventure-goal-text{font-family:EB Garamond,Georgia,serif;font-size:15.5px;line-height:1.45;color:#f1f5f9;text-shadow:0 1px 2px rgba(0,0,0,.85)}.adventure-card.completed{border-color:#4ade804d;background:linear-gradient(180deg,#101a14d9,#0a120ee6)}.adventure-card.completed .adventure-card-title{color:#86efac}.adventure-card.completed .adventure-card-subtitle{color:#6ee7b7}.adventure-card.completed .adventure-card-chevron-box{border-color:#4ade8066;background:#102016b3}.adventure-card.completed .adventure-card-chevron{color:#86efac}.adventure-card.completed.expanded{border-color:#4ade80a6;background:radial-gradient(circle at 50% 0%,#14241afa,#0c1410fa)}.adventure-card.completed .adventure-goal-label,.adventure-card.completed .adventure-chapter-header{color:#86efac}.adventures-empty-notice{background:#ffffff05;border:1px dashed rgba(212,175,55,.2);border-radius:8px;padding:24px 18px;text-align:center;font-family:EB Garamond,Georgia,serif;font-size:16px;color:#a8a29e;font-style:italic}.adventure-card-actions{display:flex;justify-content:flex-end;margin-top:14px;padding-top:10px;border-top:1px dashed rgba(212,175,55,.15)}.adventure-abandon-btn{font-family:var(--font-heading, "Cinzel", serif);font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#fca5a5;background:#2d0f14a6;border:1px solid rgba(239,68,68,.35);border-radius:4px;padding:5px 12px;cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none;box-shadow:0 2px 6px #0006}.adventure-abandon-btn:hover{color:#fee2e2;background:#46141ae6;border-color:#ef4444b3;box-shadow:0 0 10px #ef444459;transform:translateY(-1px)}.adventure-abandon-btn:active{transform:translateY(1px);background:#230a0fe6}.short-rest-modal-content{background:radial-gradient(circle at 50% 0%,#1a1528,#0c0a14)!important;border:1px solid rgba(212,175,55,.35)!important;box-shadow:0 10px 40px #000c,0 0 20px #d4af3726!important}.short-rest-card{transition:all .2s ease}.short-rest-feature-item{display:flex;align-items:center;gap:6px;padding:4px 8px;background:#ffffff0a;border-radius:6px;border-left:2px solid var(--accent-gold, #ffd700)}.short-rest-arcane-slot-btn{padding:6px 12px;font-size:11px;font-weight:700;border-radius:6px;background:#a855f726;border:1px solid rgba(168,85,247,.4);color:#d8b4fe;cursor:pointer;transition:all .2s ease}.short-rest-arcane-slot-btn.selected{background:#a855f773;border-color:#c084fc;color:#fff;box-shadow:0 0 8px #a855f780}.inventory-header-gold{display:flex;align-items:center;gap:6px;background:linear-gradient(135deg,#e5b85c38,#12111cf2);border:1px solid rgba(229,184,92,.45);border-radius:8px;padding:4px 10px;box-shadow:0 0 12px #e5b85c26}.gold-coin-icon{font-size:15px;filter:drop-shadow(0 0 4px rgba(229,184,92,.5));line-height:1}.gold-amount-val{font-family:var(--font-heading);font-size:14px;font-weight:800;color:var(--accent-gold);letter-spacing:.5px}.inventory-status-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:5px}.inventory-gold-pill{display:flex;align-items:center;gap:5px;background:#e5b85c1f;border:1px solid rgba(229,184,92,.3);border-radius:6px;padding:2px 8px}.inventory-gold-pill .gold-label{font-size:10px;color:#a0aec0;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.inventory-gold-pill .gold-amount-val{font-size:12.5px}.attunement-pill{display:flex;align-items:center;gap:5px;background:#7c3aed26;border:1px solid rgba(139,92,246,.35);border-radius:6px;padding:2px 8px;font-size:11px}.attunement-pill .attunement-label{font-size:10px;color:#c4b5fd;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.attunement-pill .attunement-val{font-size:11.5px;font-weight:700;color:#e9d5ff}.attunement-pill .attunement-dots{font-size:11px;color:#a78bfa;letter-spacing:1px}.badge-attuned{display:inline-block;background:#7c3aed40;border:1px solid rgba(167,139,250,.5);color:#ddd6fe;font-size:10px;font-weight:600;border-radius:4px;padding:1px 5px;margin-top:2px}.badge-needs-attune{display:inline-block;background:#6b728033;border:1px dashed rgba(156,163,175,.4);color:#9ca3af;font-size:10px;font-weight:500;border-radius:4px;padding:1px 5px;margin-top:2px}.badge-charges{display:inline-block;background:#0284c733;border:1px solid rgba(56,189,248,.4);color:#7dd3fc;font-size:10px;font-weight:600;border-radius:4px;padding:1px 5px;margin-top:2px}.weight-container{margin:10px 0 6px;padding:0 2px}.weight-text{font-size:11.5px;color:var(--text-muted);font-weight:500}.weight-bar-bg{width:100%;height:6px;background:#ffffff1a;border-radius:3px;position:relative;overflow:hidden}.weight-bar-fill{height:100%;border-radius:3px;transition:width .3s ease,background .3s ease;width:0%}.weight-bar-fill.green{background:var(--accent-green)}.weight-bar-fill.yellow{background:var(--accent-gold)}.weight-bar-fill.red{background:var(--accent-red)}.weight-bar-marker{position:absolute;top:0;bottom:0;left:66.66%;width:2px;background:#ffffffb3;z-index:2}.inventory-tabs{display:flex;gap:4px;margin-bottom:8px;background:#0000004d;padding:3px;border-radius:6px;border:1px solid var(--panel-border)}.inv-tab{flex:1;background:transparent;border:none;color:var(--text-muted);font-family:var(--font-heading);font-size:11.5px;padding:6px 0;border-radius:5px;cursor:pointer;transition:all var(--transition-fast)}.inv-tab.active{background:var(--accent-gold);color:#000;box-shadow:0 0 10px var(--accent-gold-glow)}.inv-tab:not(.active):hover{background:#ffffff0d;color:var(--text-main)}.inventory-grid{display:flex;flex-direction:column;gap:5px;margin-top:4px}.item-card{display:flex;align-items:center;gap:8px;background:#181626e6;border:1px solid var(--panel-border);border-radius:8px;padding:6px 8px;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s}.item-card:hover{background:#1e1c2de6;border-color:var(--accent-gold);transform:translateY(-1px)}.item-card.equipped{border:1px solid var(--accent-green);background:#34d3991a}.item-card .item-icon-wrapper{position:relative;display:inline-block}.item-quantity-badge{position:absolute;top:-6px;right:-6px;background:var(--accent-gold);color:#000;font-size:10px;font-weight:800;border-radius:10px;min-width:18px;height:18px;display:flex;align-items:center;justify-content:center;border:2px solid #181626;padding:0 4px}.item-card .item-icon{font-size:20px;background:#ffffff0d;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.item-card .item-header{display:flex;justify-content:space-between;align-items:center;width:100%}.item-card .item-name{font-size:13px;font-weight:600;color:var(--text-main)}.item-card .item-price{font-size:13px;font-weight:700;color:var(--accent-gold)}.shop-grid{display:flex;flex-direction:column;gap:10px;margin-top:10px}.shop-item-card{display:flex;align-items:center;justify-content:space-between;background:#181626e6;border:1px solid var(--panel-border);border-radius:12px;padding:10px 14px;gap:12px}.unavailable-item{opacity:.45;filter:grayscale(.85);border-color:#ff4a4a4d}.shop-item-info{flex:1;display:flex;flex-direction:column;gap:4px}.shop-item-name{font-family:var(--font-heading);font-size:13px;font-weight:800;color:var(--accent-gold);display:flex;align-items:center;gap:6px}.shop-item-tags{display:flex;flex-wrap:wrap;gap:3px;margin-top:2px}.stat-badge{background:#e5b85c26;border:1px solid rgba(229,184,92,.3);color:#f3e8ff;font-size:9.5px;font-weight:700;padding:2px 6px;border-radius:5px;display:inline-flex;align-items:center}.stat-badge.cat-light{background:#34d39926;border-color:#34d39966;color:#6ee7b7}.stat-badge.cat-medium{background:#3b82f626;border-color:#3b82f666;color:#93c5fd}.stat-badge.cat-heavy{background:#a855f726;border-color:#a855f766;color:#c084fc}.stat-badge.warn{background:#f59e0b26;border-color:#f59e0b66;color:#fcd34d}.stat-badge.danger{background:#ef444426;border-color:#ef444466;color:#fca5a5}.stat-badge.muted{background:#ffffff0f;border-color:#ffffff1f;color:var(--text-muted)}.paperdoll-container{display:flex;flex-direction:column;gap:8px;margin-top:4px;margin-bottom:8px}.paperdoll-section{background:transparent;border:none;border-radius:0;padding:0}.section-title{font-family:var(--font-heading);font-size:10px;font-weight:800;color:var(--accent-gold);margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px;display:flex;align-items:center;gap:4px;border-bottom:1px solid rgba(229,184,92,.15);padding-bottom:2px}.weapon-header-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.weapon-toggle-btn{background:linear-gradient(135deg,#d97706,#b45309);color:#fff;border:1px solid var(--accent-gold);font-family:var(--font-heading);font-size:10px;font-weight:800;padding:5px 10px;border-radius:6px;cursor:pointer;box-shadow:0 0 10px #d9770666;transition:transform .2s}.weapon-toggle-btn:active{transform:scale(.96)}.weapon-set-block{background:#0e0d16b3;border:1px solid rgba(255,255,255,.08);border-radius:6px;padding:6px;margin-bottom:4px;opacity:.55;transition:opacity .2s,border-color .2s}.weapon-set-block.active-set{opacity:1;border-color:var(--accent-gold);box-shadow:0 0 10px var(--accent-gold-glow)}.set-label{font-size:9px;font-weight:700;color:var(--text-muted);margin-bottom:4px}.weapon-set-block.active-set .set-label{color:var(--accent-gold)}.slots-row.grid-3col{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.slots-row.grid-2col{display:grid;grid-template-columns:repeat(2,1fr);gap:4px}.equip-slot{background:#0e0d18d9;border:1px dashed rgba(229,184,92,.32);border-radius:6px;padding:4px 5px;text-align:center;font-size:9.5px;min-height:44px;display:flex;flex-direction:column;justify-content:center;transition:border-color .2s,background .2s}.equip-slot.has-item{border:1px solid var(--accent-green);background:#34d3991f;box-shadow:0 0 8px #34d39933}.slot-name{color:var(--text-muted);font-size:8px;display:block;margin-bottom:2px}.item-card-inner{font-size:9px;font-weight:600;color:var(--text-main);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.creation-group{margin-bottom:14px}.input-label{display:block;font-size:11px;font-weight:700;color:var(--accent-gold);margin-bottom:6px;text-transform:uppercase}.text-input{width:100%;background:#161523e6;border:1px solid var(--panel-border);border-radius:10px;padding:10px 12px;color:#fff;font-family:var(--font-body);font-size:13px;outline:none}.selector-row{display:flex;gap:10px}.selector-card{flex:1;background:#161523e6;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:10px;text-align:center;cursor:pointer}.selector-card.selected{border-color:var(--accent-gold);background:#e5b85c26;box-shadow:0 0 10px var(--accent-gold-glow)}.selector-icon{font-size:20px;display:block;margin-bottom:2px}.selector-title{font-size:11px;font-weight:700}.races-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.race-card,.class-card,.selector-card{cursor:pointer}.race-card *,.class-card *,.selector-card *{pointer-events:none}.race-card{background:#161523e6;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:10px;cursor:pointer}.race-card.selected{border-color:var(--accent-gold);background:#e5b85c26;box-shadow:0 0 10px var(--accent-gold-glow)}.class-card{background:#161523e6;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:10px;cursor:pointer}.class-card.selected{border-color:var(--accent-gold);background:#e5b85c26;box-shadow:0 0 10px var(--accent-gold-glow)}.ability-allocation-grid{display:flex;flex-direction:column;gap:6px;background:#12111ccc;border:1px solid rgba(229,184,92,.2);border-radius:10px;padding:10px}.ability-row{display:flex;align-items:center;justify-content:space-between;font-size:11px}.ability-label{font-weight:700;color:var(--accent-gold);width:140px}.stat-btn{width:26px;height:26px;border-radius:6px;border:1px solid var(--accent-gold);background:#e5b85c26;color:var(--accent-gold);font-weight:800;font-size:13px;cursor:pointer;display:flex;align-items:center;justify-content:center}.stat-btn:active{transform:scale(.92)}.stat-value{font-family:var(--font-heading);font-weight:800;font-size:14px;width:30px;text-align:center;color:#fff}.roster-list{display:flex;flex-direction:column;gap:10px;margin-top:10px}.roster-card{display:flex;align-items:center;justify-content:space-between;background:#161523e6;border:1px solid rgba(229,184,92,.2);border-radius:12px;padding:10px 14px}.roster-card.active{border-color:var(--accent-gold);background:#e5b85c1f;box-shadow:0 0 10px var(--accent-gold-glow)}.roster-hero-info{display:flex;align-items:center;gap:12px}.roster-icon{font-size:26px;width:38px;height:38px;border-radius:10px;background:#0006;display:flex;align-items:center;justify-content:center;border:1px solid rgba(229,184,92,.3)}.roster-name{font-family:var(--font-heading);font-size:13px;font-weight:800;color:var(--accent-gold)}.roster-sub{font-size:10px;color:var(--text-muted)}.sheet-switch-hero-btn{font-size:11px;font-weight:700;padding:4px 14px;border-radius:8px;white-space:nowrap;letter-spacing:.5px;line-height:1.4;box-shadow:0 2px 8px #0006}.sheet-hero-header{display:flex;align-items:center;gap:12px;background:#141320e6;border:1px solid rgba(229,184,92,.3);border-radius:12px;padding:12px;margin-bottom:12px}.sheet-avatar{font-size:32px;width:48px;height:48px;border-radius:12px;background:#0006;display:flex;align-items:center;justify-content:center;border:1px solid var(--accent-gold)}.sheet-hero-info{flex:1}.sheet-hero-info h3{font-family:var(--font-heading);font-size:15px;color:var(--accent-gold)}.sheet-level-up-container{margin-bottom:12px;width:100%}.sheet-level-up-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;background:linear-gradient(135deg,#f59e0b,#d97706,#b45309);color:#fff;border:1px solid #fde68a;border-radius:10px;padding:11px 16px;font-family:var(--font-heading);font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.8px;cursor:pointer;box-shadow:0 4px 18px #f59e0b66,inset 0 1px 1px #fff6;transition:transform .15s ease,box-shadow .15s ease;animation:sheetBtnGlow 2.5s infinite ease-in-out}.sheet-level-up-btn:hover{transform:translateY(-1px);box-shadow:0 6px 22px #f59e0b99,inset 0 1px 2px #fff9}.sheet-level-up-btn:active{transform:translateY(1px)}.btn-level-up-icon{font-size:18px}.btn-level-up-badge{background:#00000073;border:1px solid rgba(253,230,138,.6);color:#fef08a;padding:3px 8px;border-radius:6px;font-size:11px;font-weight:700;letter-spacing:.5px}@keyframes sheetBtnGlow{0%{box-shadow:0 4px 15px #f59e0b59,inset 0 1px 1px #fff6}50%{box-shadow:0 6px 25px #f59e0bb3,inset 0 2px 4px #ffffffb3}to{box-shadow:0 4px 15px #f59e0b59,inset 0 1px 1px #fff6}}.sheet-combat-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.sheet-combat-summary.grid-4col{grid-template-columns:repeat(4,1fr);gap:6px}.sheet-summary-box{background:#0e0d16d9;border:1px solid rgba(229,184,92,.2);border-radius:10px;padding:8px;text-align:center}.box-label{font-size:9px;color:var(--text-muted);font-weight:700}.box-value{font-family:var(--font-heading);font-size:13px;font-weight:800;color:#fff;margin-top:2px}.ability-cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}.ability-card{background:#12111ce6;border:1px solid rgba(229,184,92,.3);border-radius:10px;padding:8px;text-align:center}.ability-card-title{font-size:9px;font-weight:800;color:var(--accent-gold)}.ability-card-score{font-family:var(--font-heading);font-size:16px;font-weight:800;color:#fff;margin-top:2px}.ability-card-mod{font-size:11px;font-weight:700;color:var(--accent-green);margin-top:1px}.level-up-modal-bg3{position:relative!important;max-width:780px!important;width:95%!important;height:85vh!important;min-height:520px!important;max-height:90vh!important;display:flex!important;flex-direction:column!important;background:linear-gradient(180deg,#0e121d,#07090f)!important;border:1.5px solid rgba(212,175,55,.45)!important;border-radius:16px!important;box-shadow:0 10px 45px #000000f2,0 0 30px #d4af372e!important;padding:0!important;overflow:hidden!important}.level-up-header-bg3{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:#0e121df2;border-bottom:1px solid rgba(212,175,55,.25);flex-shrink:0}.level-up-header-bg3 .modal-close-btn,#close-unified-progression{background:#161c2cd9;border:1.5px solid rgba(212,175,55,.4);color:#cbd5e1;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:15px;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #00000080;flex-shrink:0}.level-up-header-bg3 .modal-close-btn:hover,#close-unified-progression:hover{background:#ef444440;border-color:#ef4444b3;color:#fca5a5;transform:rotate(90deg);box-shadow:0 0 12px #ef444466}.level-up-title-wrap{display:flex;flex-direction:column;gap:2px}.level-up-kicker{font-size:10px;text-transform:uppercase;letter-spacing:1.5px;color:#d97706;font-weight:800}.level-up-header-bg3 h2{margin:0;font-family:var(--font-heading);font-size:18px;color:gold;text-shadow:0 0 10px rgba(255,215,0,.3)}.level-up-body-bg3{padding:16px;overflow-y:auto;flex:1 1 auto}.level-up-layout-bg3{display:grid;grid-template-columns:260px 1fr;gap:16px;align-items:start}@media (max-width: 650px){.level-up-layout-bg3{grid-template-columns:1fr;gap:12px}}.level-up-col-hero,.level-up-col-choices{display:flex;flex-direction:column;gap:14px}.bg3-card{background:#121622d9;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:14px;box-shadow:0 4px 15px #0006}.bg3-card-header{display:flex;align-items:center;gap:8px;margin-bottom:10px}.bg3-card-header h4{margin:0;font-family:var(--font-heading);font-size:14px;color:#f1f5f9;font-weight:700}.bg3-card-header .req-tag{margin-left:auto;font-size:10px;background:#d9770633;color:#fbbf24;border:1px solid rgba(217,119,6,.4);padding:2px 6px;border-radius:6px;font-weight:700}.hero-showcase-card{display:flex;align-items:center;gap:12px;background:linear-gradient(135deg,#181d2df2,#0e121df2);border:1px solid rgba(212,175,55,.3)}.hero-avatar-wrap{position:relative;flex-shrink:0}.hero-avatar-circle{width:54px;height:54px;border-radius:50%;background:radial-gradient(circle,#d4af3740,#0a0e17cc);border:2px solid #ffd700;display:flex;align-items:center;justify-content:center;font-size:26px;box-shadow:0 0 15px #ffd7004d}.level-badge-glow{position:absolute;bottom:-4px;right:-4px;background:#d97706;color:#fff;font-size:10px;font-weight:800;padding:2px 5px;border-radius:8px;border:1px solid #ffd700}.hero-showcase-meta h3{margin:0 0 3px;font-size:15px;color:#fff}.hero-class-race{font-size:12px;color:#94a3b8;margin-bottom:6px}.level-transition-pill{display:inline-flex;align-items:center;gap:6px;background:#0006;padding:2px 8px;border-radius:10px;font-size:11px}.pill-arrow{color:#d97706}.pill-next{color:gold;font-weight:800}.stat-gains-card{border-color:#ef44444d}.hp-gain-display{display:flex;align-items:baseline;gap:8px;margin-bottom:6px}.hp-gain-value{font-family:var(--font-heading);font-size:24px;font-weight:900;color:#ef4444;text-shadow:0 0 10px rgba(239,68,68,.3)}.hp-gain-formula{font-size:11px;color:#cbd5e1}.hp-gain-note{font-size:10px;color:#64748b;line-height:1.3;margin-bottom:10px}.pb-gain-row{display:flex;justify-content:space-between;align-items:center;padding-top:8px;border-top:1px solid rgba(255,255,255,.08);font-size:11px}.pb-label{color:#94a3b8}.pb-highlight{color:#4ade80;font-weight:800}.spell-slots-card{border-color:#93c5fd4d}.spell-slots-grid{display:flex;flex-direction:column;gap:6px}.spell-slot-chip{display:flex;align-items:center;gap:6px;background:#ffffff0a;padding:4px 8px;border-radius:6px;font-size:11px}.slot-circle-name{color:#cbd5e1}.slot-circle-count{margin-left:auto;color:#93c5fd;font-weight:700}.cantrip-scaling-badge{margin-top:8px;font-size:10px;color:#fde047;background:#eab3081f;border:1px solid rgba(234,179,8,.3);padding:4px 8px;border-radius:6px}.features-list-wrap{display:flex;flex-direction:column;gap:8px}.feature-card-bg3{display:flex;align-items:flex-start;gap:10px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:8px 10px}.feature-icon-badge{font-size:18px;flex-shrink:0;margin-top:2px}.feature-details h5{margin:0 0 2px;font-size:12px;color:#f8fafc;font-weight:700}.feature-details p{margin:0;font-size:11px;color:#94a3b8;line-height:1.35}.choice-section.highlight-gold{border-color:#d4af3759;background:linear-gradient(180deg,#161c2cd9,#0e121df2)}.subclasses-grid-wrap{display:flex;flex-direction:column;gap:10px}.subclass-pick-card{background:#ffffff08;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:12px;cursor:pointer;transition:all .2s ease}.subclass-pick-card:hover{border-color:#d4af3780;background:#ffffff0d}.subclass-pick-card.selected{border:2px solid #ffd700;background:#d4af3714;box-shadow:0 0 16px #ffd70040}.subclass-card-head{display:flex;align-items:center;gap:8px;margin-bottom:6px}.subclass-card-icon{font-size:22px}.subclass-card-name h5{margin:0;font-size:14px;color:gold;font-weight:800}.subclass-card-name span{font-size:10px;color:#94a3b8}.selection-indicator{margin-left:auto;font-size:16px;color:gold;font-weight:900}.subclass-card-desc{margin:0 0 8px;font-size:11px;color:#cbd5e1;line-height:1.3}.subclass-feats-box{background:#00000040;border-radius:6px;padding:6px 8px;display:flex;flex-direction:column;gap:4px}.subclass-mini-feat{font-size:10.5px;color:#cbd5e1;line-height:1.3}.subclass-mini-feat strong{color:#fde047}.feat-choice-toggle{display:flex;gap:8px;margin-bottom:12px}.toggle-tab{flex:1;padding:8px 12px;border-radius:8px;border:1px solid rgba(255,255,255,.12);background:#0000004d;color:#94a3b8;font-size:12px;font-weight:700;cursor:pointer;transition:all .2s ease}.toggle-tab.active{background:#d4af3726;border-color:gold;color:gold;box-shadow:0 0 10px #ffd70033}.asi-points-badge{font-size:12px;padding:6px 10px;border-radius:6px;background:#eab3081f;border:1px solid rgba(234,179,8,.3);color:#fde047;margin-bottom:10px;text-align:center}.asi-points-badge.complete{background:#22c55e1f;border-color:#22c55e4d;color:#4ade80}.asi-stats-list{display:flex;flex-direction:column;gap:6px}.asi-stat-row{display:flex;align-items:center;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:6px;padding:6px 10px}.asi-stat-code{font-weight:800;font-size:11px;color:#f59e0b;width:34px}.asi-stat-name{font-size:12px;color:#cbd5e1;flex-grow:1}.asi-stat-value{font-size:14px;font-weight:800;color:#f8fafc;margin-right:12px;width:24px;text-align:right}.asi-stat-value.bonus-active{color:#4ade80}.asi-btn-group{display:flex;align-items:center;gap:6px}.asi-step-btn{width:24px;height:24px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:#ffffff14;color:#fff;font-weight:800;font-size:14px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.asi-step-btn:hover:not(:disabled){border-color:gold;background:#d4af374d;color:gold}.asi-step-btn:disabled{opacity:.3;cursor:not-allowed}.asi-step-added{font-size:11px;color:gold;font-weight:800;width:20px;text-align:center}.feat-select-prompt-box{display:flex;flex-direction:column;align-items:center;gap:10px;padding:16px;background:#00000040;border:1px dashed rgba(212,175,55,.4);border-radius:12px;text-align:center}.feat-picker-trigger-btn{width:100%;max-width:320px;padding:12px 18px;font-size:13.5px;font-weight:800;letter-spacing:.5px;text-transform:uppercase}.feat-select-hint{margin:0;font-size:11px;color:#94a3b8}.feat-selected-card{background:#d4af3714;border:1.5px solid rgba(212,175,55,.6);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:8px;box-shadow:0 4px 20px #0006}.feat-selected-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.feat-selected-title-wrap{display:flex;align-items:center;gap:8px}.feat-selected-icon{font-size:22px}.feat-selected-name{font-size:15px;font-weight:800;color:gold;font-family:var(--font-heading, inherit)}.feat-change-btn{background:#ffffff14;border:1px solid rgba(255,255,255,.2);color:#e2e8f0;padding:6px 12px;font-size:11.5px;font-weight:600;border-radius:6px;cursor:pointer;transition:all .2s ease}.feat-change-btn:hover{background:#d4af3733;border-color:gold;color:gold}.spells-selected-summary-box{display:flex;flex-direction:column;gap:10px;padding:14px;background:#00000040;border:1px dashed rgba(96,165,250,.35);border-radius:12px}.spells-selected-chips-list{display:flex;flex-direction:column;gap:8px;width:100%}.spell-selected-chip{display:flex;align-items:center;justify-content:space-between;width:100%;box-sizing:border-box;padding:8px 12px;background:#0f172aa6;border:1px solid rgba(96,165,250,.35);border-radius:8px;gap:10px}.spell-chip-info{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.spell-chip-icon{font-size:16px;line-height:1;flex-shrink:0}.spell-chip-title{font-size:13px;font-weight:700;color:#f8fafc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.spell-chip-level{font-size:11.5px;font-weight:600;color:#93c5fd;white-space:nowrap;flex-shrink:0}.spell-chip-remove{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;min-width:24px;border-radius:6px;background:#161c2cbf;border:1px solid rgba(212,175,55,.3);color:#94a3b8;font-size:13px;line-height:1;cursor:pointer;padding:0;margin-left:auto;transition:all .2s ease;outline:none;flex-shrink:0}.spell-chip-remove:hover{background:#ef444440;border-color:#ef4444b3;color:#fca5a5;transform:scale(1.08)}.spell-chip-remove:active{transform:scale(.95)}.spells-picker-trigger-btn{width:100%;padding:12px 18px;font-size:13.5px;font-weight:800;letter-spacing:.5px;text-transform:uppercase}.picker-filter-tabs{display:flex;gap:6px;padding:8px 12px;background:#0000004d;border-bottom:1px solid rgba(255,255,255,.08);overflow-x:auto;flex-shrink:0}.picker-filter-tab{background:#ffffff0f;border:1px solid rgba(255,255,255,.15);color:#94a3b8;padding:5px 12px;border-radius:14px;font-size:11px;font-weight:700;cursor:pointer;white-space:nowrap;transition:all .2s ease}.picker-filter-tab.active{background:#d4af3733;border-color:gold;color:gold}.spell-desc{margin:0;font-size:10.5px;color:#94a3b8}.level-up-footer-bg3{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;background:#0e121dfa;border-top:1px solid rgba(212,175,55,.25);flex-shrink:0}#btn-progression-prev,.level-up-footer-bg3 .btn-secondary{background:linear-gradient(180deg,#1c2538,#101624)!important;color:#e2e8f0!important;border:1.5px solid rgba(212,175,55,.4)!important;border-radius:8px!important;font-weight:800!important;font-size:13px!important;letter-spacing:.5px;padding:11px 18px!important;text-transform:uppercase;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 6px #0006;flex-shrink:0}#btn-progression-prev:hover,.level-up-footer-bg3 .btn-secondary:hover{border-color:gold!important;color:gold!important;background:linear-gradient(180deg,#242f47,#141c2e)!important;box-shadow:0 0 14px #ffd70040!important}.level-up-confirm-btn,#btn-progression-next{flex-grow:1;max-width:380px;padding:12px 20px!important;font-size:13.5px!important;font-weight:900!important;letter-spacing:.8px;text-transform:uppercase;border-radius:8px!important;border:1.5px solid #ffe066!important;background:linear-gradient(180deg,gold,#b8860b)!important;color:#080c14!important;box-shadow:0 4px 16px #ffd70059!important;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px;text-align:center}.level-up-confirm-btn:hover:not(.btn-muted),#btn-progression-next:hover:not(.btn-muted){background:linear-gradient(180deg,#ffe066,#c99718)!important;box-shadow:0 6px 22px #ffd7008c!important;transform:translateY(-1px)}.level-up-confirm-btn.btn-muted,#btn-progression-next.btn-muted{background:#121826f2!important;border:1.5px solid rgba(212,175,55,.3)!important;color:#cbd5e1!important;box-shadow:none!important;opacity:1!important;cursor:not-allowed!important;font-weight:700!important;font-size:12.5px!important;transform:none!important}.clean-gains-card{border-color:#ef444466!important;background:linear-gradient(135deg,#ef44441a,#121622f2)!important;padding:12px 14px!important}.hp-gain-hero-badge{display:flex;align-items:center;gap:12px}.hp-badge-icon{font-size:28px;line-height:1;filter:drop-shadow(0 0 8px rgba(239,68,68,.4))}.hp-badge-info{display:flex;flex-direction:column;gap:2px}.hp-badge-gain{font-family:var(--font-heading);font-size:18px;font-weight:900;color:#f87171;text-shadow:0 0 10px rgba(239,68,68,.3);letter-spacing:.5px}.hp-badge-transition{font-size:13px;color:#94a3b8}.hp-badge-transition strong{color:#f1f5f9}.pb-gain-pill-highlight{display:flex;align-items:center;gap:8px;margin-top:10px;padding:6px 10px;background:#22c55e1f;border:1px solid rgba(34,197,94,.3);border-radius:8px;font-size:13px}.pb-pill-icon{font-size:16px}.pb-pill-text{color:#cbd5e1}.pb-pill-text strong{color:#4ade80;font-weight:800}.clean-slots-card{border-color:#93c5fd59!important;background:linear-gradient(135deg,#3b82f61a,#121622f2)!important}.bg3-card-header.compact{margin-bottom:8px}.clean-slots-card .spell-slot-chip.delta-chip{background:#3b82f624;border:1px solid rgba(147,197,253,.3);padding:8px 12px;border-radius:8px;font-size:14px;display:flex;align-items:center;gap:8px}.clean-slots-card .slot-circle-icon{font-size:18px}.clean-slots-card .slot-circle-text{color:#e2e8f0}.clean-slots-card .slot-circle-text strong{color:#93c5fd;font-size:15px}.subclass-pick-card,.level-up-confirm-btn{min-height:48px}.toggle-tab{min-height:44px}.progression-step-wrap{display:flex;flex-direction:column;gap:14px}.name-gender-card{display:flex;flex-direction:column;gap:12px}.input-block,.gender-block{display:flex;flex-direction:column;gap:6px}.field-label{font-size:13px;font-weight:700;color:gold;text-transform:uppercase;letter-spacing:.5px}.bg3-text-input{background:#00000073;border:1px solid rgba(212,175,55,.35);border-radius:8px;color:#fff;font-size:15px;padding:12px 14px;width:100%;box-sizing:border-box;min-height:48px;outline:none;transition:border-color .2s ease}.bg3-text-input:focus{border-color:gold;box-shadow:0 0 10px #ffd70040}.gender-toggle-wrap{display:flex;gap:10px;width:100%}.gender-btn{flex:1;min-height:48px;border-radius:8px;border:1px solid rgba(255,255,255,.15);background:#ffffff0a;color:#cbd5e1;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.gender-btn.active{background:#d4af372e;border-color:gold;color:gold;box-shadow:0 0 12px #ffd70040}.step-section-heading{margin:4px 0 2px}.step-section-heading h4{margin:0 0 2px;font-size:16px;color:gold;font-family:var(--font-heading)}.sub-heading-desc{font-size:12px;color:#94a3b8;display:block}.bg3-tiles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}.bg3-tiles-grid-scroll{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;max-height:280px;overflow-y:auto;padding-right:4px}.bg3-pick-tile{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:12px;cursor:pointer;transition:all .2s ease;min-height:52px;display:flex;flex-direction:column;justify-content:space-between}.bg3-pick-tile:hover{border-color:#d4af3773;background:#ffffff0d}.bg3-pick-tile.selected{border:2px solid #ffd700;background:#d4af3714;box-shadow:0 0 16px #ffd70040}.pick-tile-head{display:flex;align-items:center;gap:8px;margin-bottom:6px}.pick-tile-icon{font-size:22px;flex-shrink:0}.pick-tile-title h5{margin:0;font-size:14px;font-weight:800;color:gold}.pick-tile-title span{font-size:11px;color:#94a3b8;display:block}.pick-indicator{margin-left:auto;font-size:16px;color:gold;font-weight:900}.pick-tile-perks{margin:0;padding-left:0;list-style:none;font-size:11.5px;color:#cbd5e1;display:flex;flex-direction:column;gap:2px}.sub-options-card{border:1px solid rgba(212,175,55,.3);background:#0e121dd9;margin-top:10px}.sub-option-row{display:flex;flex-direction:column;gap:6px;margin-top:8px}.sub-label{font-size:13px;color:#cbd5e1;font-weight:700}.bg3-select{background:#0f1420;border:1px solid rgba(212,175,55,.3);border-radius:8px;color:#fff;font-size:14px;padding:10px 12px;min-height:48px;width:100%;box-sizing:border-box}.bg-bonus-selector-grid{display:flex;flex-direction:column;gap:8px;margin-top:8px}.bg-stat-bonus-row{display:flex;align-items:center;justify-content:space-between;background:#ffffff08;padding:8px 12px;border-radius:8px;border:1px solid rgba(255,255,255,.06);min-height:48px}.stat-name-badge{font-weight:800;font-size:14px;color:gold;width:44px}.bonus-btn-group{display:flex;gap:6px}.bonus-choice-btn{min-width:44px;min-height:44px;border-radius:8px;border:1px solid rgba(255,255,255,.15);background:#ffffff0d;color:#cbd5e1;font-weight:800;font-size:14px;cursor:pointer;transition:all .15s ease}.bonus-choice-btn.active{background:#22c55e33;border-color:#4ade80;color:#4ade80}.stat-mode-toggle{display:flex;gap:8px;margin-bottom:10px}.stat-alloc-list{display:flex;flex-direction:column;gap:8px}.stat-alloc-row{display:flex;align-items:center;justify-content:space-between;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:8px 12px;min-height:48px}.stat-alloc-name{display:flex;flex-direction:column;gap:2px;flex:1}.stat-alloc-name strong{font-size:14px;color:#f8fafc}.stat-formula{font-size:12px;color:#94a3b8}.stat-formula strong{color:gold}.stat-alloc-mod-badge{font-size:15px;font-weight:800;color:#4ade80;width:36px;text-align:center;margin:0 8px}.stat-alloc-controls{display:flex;align-items:center;gap:6px}.pb-btn{min-width:44px;min-height:44px;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:#ffffff14;color:#fff;font-size:18px;font-weight:900;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.pb-btn:hover:not(:disabled){border-color:gold;background:#d4af3740;color:gold}.pb-btn:disabled{opacity:.3;cursor:not-allowed}.pb-val{font-size:16px;font-weight:800;color:gold;min-width:28px;text-align:center}.skills-chips-grid,.cantrips-picker-grid,.mastery-chips-wrap{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}.skill-pick-chip,.mastery-pick-chip,.spell-chip-item{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:10px 12px;min-height:48px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;font-size:14px;color:#cbd5e1;transition:all .15s ease}.skill-pick-chip:hover:not(.disabled),.mastery-pick-chip:hover,.spell-chip-item:hover{border-color:#d4af3766}.skill-pick-chip.selected,.mastery-pick-chip.selected,.spell-chip-item.selected{border:2px solid #ffd700;background:#d4af371f;color:gold;font-weight:700;box-shadow:0 0 10px #ffd70033}.skill-pick-chip.disabled{opacity:.5;border-color:#ffffff0d;cursor:not-allowed;color:#64748b}.chip-tag{font-size:11px;color:#94a3b8;font-weight:700}.mastery-prop-tag{font-size:10px;color:#f59e0b;font-weight:800;margin-left:6px}.hero-ready-summary{background:linear-gradient(135deg,#181d2df2,#0e121df2);border:1px solid rgba(212,175,55,.4);margin-bottom:12px}.ready-hero-row{display:flex;align-items:center;gap:14px}.ready-avatar{font-size:38px;width:56px;height:56px;border-radius:50%;background:radial-gradient(circle,#d4af3740,#0a0e17cc);border:2px solid #ffd700;display:flex;align-items:center;justify-content:center}.ready-hero-info h3{margin:0 0 4px;font-size:17px;color:gold;font-family:var(--font-heading)}.ready-hero-info p{margin:0;font-size:13px;color:#cbd5e1}@media (max-width: 500px){.bg3-tiles-grid,.bg3-tiles-grid-scroll,.skills-chips-grid,.cantrips-picker-grid,.mastery-chips-wrap{grid-template-columns:1fr}}.combat-screen-container{display:flex;flex-direction:column;gap:6px;flex:1;min-height:0;width:100%;margin-top:4px;margin-bottom:4px;pointer-events:auto;position:relative;overflow:hidden;z-index:1;isolation:isolate}.combat-turn-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#12101af2;border:1px solid rgba(229,184,92,.35);border-radius:10px;padding:5px 8px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 4px 12px #0009;flex-shrink:0}.combat-round-badge{font-family:var(--font-heading);font-size:11px;font-weight:800;color:var(--accent-gold);background:#000000b3;border:1px solid rgba(229,184,92,.5);padding:3px 8px;border-radius:6px;white-space:nowrap;cursor:default;-webkit-user-select:none;user-select:none;display:inline-flex;align-items:center;gap:4px}.combat-round-badge.exploration-mode{color:#38bdf8;border-color:#38bdf899;background:#0ea5e92e;box-shadow:0 0 10px #38bdf833}.combat-mode-pill,.exploration-mode-pill{display:inline-flex;align-items:center;gap:5px}.combat-turn-timer{display:inline-flex;align-items:center;gap:4px;background:#0f172ad9;border:1px solid rgba(229,184,92,.5);border-radius:6px;padding:3px 7px;font-family:var(--font-heading);font-size:11px;font-weight:700;color:#fbbf24;white-space:nowrap;-webkit-user-select:none;user-select:none;box-shadow:0 2px 6px #0006;transition:all .25s ease}.combat-turn-timer.turn-timer-warning{border-color:#ef4444;color:#f87171;background:#ef444433;animation:pulseTurnTimerAlert 1s infinite alternate}@keyframes pulseTurnTimerAlert{0%{box-shadow:0 0 6px #ef444466;transform:scale(1)}to{box-shadow:0 0 14px #ef4444d9;transform:scale(1.05)}}.turn-timer-icon{font-size:12px}.turn-timer-val{letter-spacing:.3px}.turn-observer-banner{display:flex;align-items:center;gap:10px;background:linear-gradient(135deg,#0f172af2,#1e293be6);border:1px solid rgba(56,189,248,.4);border-left:4px solid #38bdf8;border-radius:8px;padding:10px 14px;margin-bottom:12px;box-shadow:0 4px 12px #00000080;animation:fadeIn .3s ease-out}.turn-observer-banner .observer-icon{font-size:22px;filter:drop-shadow(0 0 6px rgba(56,189,248,.6))}.turn-observer-banner .observer-info{display:flex;flex-direction:column;gap:2px}.turn-observer-banner .observer-title{font-family:var(--font-heading);font-size:12px;font-weight:700;color:#e2e8f0}.turn-observer-banner .observer-subtitle{font-size:10.5px;color:#94a3b8}.exploration-track-hint{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;height:100%;font-size:11px;font-weight:600;color:#94a3b8;letter-spacing:.3px;-webkit-user-select:none;user-select:none}.exploration-track-hint .track-hint-icon{font-size:13px;filter:drop-shadow(0 0 4px rgba(56,189,248,.5))}.track-light-badge{display:inline-flex;align-items:center;gap:4px;background:#0006;border:1px solid rgba(251,191,36,.3);border-radius:4px;padding:1px 6px;font-size:11px;font-weight:700;color:#fbbf24}.track-hint-divider{color:#fff3}.cover-chip{color:#38bdf8;font-weight:700}.track-stealth-badge{display:inline-flex;align-items:center;gap:4px;background:#9333ea40;border:1px solid rgba(168,85,247,.5);border-radius:4px;padding:1px 6px;font-size:11px;font-weight:700;color:#d8b4fe}.exploration-quick-hide-btn{background:#9333ea33;border:1px solid rgba(168,85,247,.4);color:#e9d5ff;border-radius:4px;font-size:11px;font-weight:600;padding:1px 7px;cursor:pointer;transition:all .2s ease;margin-left:4px}.exploration-quick-hide-btn:hover{background:#9333ea59;border-color:#c084fc;color:#fff}.player-token.token-stealth{opacity:.65;filter:drop-shadow(0 0 8px rgba(168,85,247,.75));transition:opacity .3s ease,filter .3s ease}.combat-initiative-track{display:flex;align-items:center;gap:8px;overflow-x:auto;overflow-y:hidden;flex:1;justify-content:safe center;cursor:grab;-webkit-user-select:none;user-select:none;scrollbar-width:none;-ms-overflow-style:none;scroll-behavior:smooth;padding:2px 4px}.combat-initiative-track::-webkit-scrollbar{display:none}.combat-initiative-track.is-dragging{cursor:grabbing;scroll-behavior:auto}.init-portrait-badge{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#0e0c16f2;border:2px solid rgba(255,255,255,.25);box-sizing:border-box;flex-shrink:0;transition:all .2s ease;cursor:pointer;-webkit-user-select:none;user-select:none;position:relative}.init-surprised-badge{position:absolute;top:-4px;right:-4px;font-size:10px;line-height:1;background:#dc2626e6;border:1px solid #f87171;border-radius:50%;width:14px;height:14px;display:flex;align-items:center;justify-content:center;color:#fff;animation:pulseSurprisedBadge 1.5s infinite ease-in-out;pointer-events:none}@keyframes pulseSurprisedBadge{0%,to{transform:scale(1);box-shadow:0 0 4px #ef444499}50%{transform:scale(1.15);box-shadow:0 0 8px #ef4444f2}}.init-portrait-badge:hover{transform:scale(1.15);box-shadow:0 0 10px #e5b85c99}.init-portrait-badge:active{transform:scale(.95)}.init-portrait-badge .init-avatar{font-size:15px;line-height:1;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none}.init-portrait-badge.init-badge-player{border-color:#22c55e;background:#22c55e26;box-shadow:0 0 6px #22c55e66}.init-portrait-badge.init-badge-ally{border-color:#3b82f6;background:#3b82f626;box-shadow:0 0 6px #3b82f666}.init-portrait-badge.init-badge-enemy{border-color:#ef4444;background:#ef444426;box-shadow:0 0 6px #ef444466}.init-portrait-badge.init-badge-neutral{border-color:#eab308;background:#eab30826;box-shadow:0 0 6px #eab30866}.init-portrait-badge.active-turn{outline:2px solid var(--accent-gold);outline-offset:1px;box-shadow:0 0 10px #e5b85cd9;transform:scale(1.15);z-index:2}.combat-flee-btn{background:#1e182dd9;border:1px solid rgba(229,184,92,.4);color:#e5b85c;border-radius:6px;padding:3px 8px;display:flex;align-items:center;gap:5px;cursor:pointer;font-size:11px;font-weight:700;font-family:var(--font-body);transition:all .2s cubic-bezier(.4,0,.2,1);flex-shrink:0;box-shadow:0 2px 6px #0006}.combat-flee-btn:hover:not(:disabled){background:#e74c3c40;border-color:#e74c3c;color:#fff;transform:translateY(-1px);box-shadow:0 4px 10px #e74c3c4d}.combat-flee-btn.ready-evacuate{background:linear-gradient(135deg,#2ecc7140,#27ae6059);border-color:#2ecc71;color:#2ecc71;box-shadow:0 0 10px #2ecc7166;animation:pulseEvacuateBtn 2s infinite ease-in-out}@keyframes pulseEvacuateBtn{0%,to{box-shadow:0 0 8px #2ecc714d}50%{box-shadow:0 0 14px #2ecc71b3}}.combat-flee-btn.ready-evacuate:hover:not(:disabled){background:linear-gradient(135deg,#2ecc7166,#27ae6080);color:#fff}.combat-flee-btn.threatened-melee{border-color:#e74c3c66;color:#e74c3c;opacity:.65;cursor:not-allowed}.combat-flee-btn:disabled,.combat-flee-btn.disabled{opacity:.45;cursor:not-allowed;filter:grayscale(.5);pointer-events:none}.combat-init-swap-btn{background:#1e182dd9;border:1px solid rgba(234,179,8,.4);color:#eab308;border-radius:6px;padding:3px 8px;display:flex;align-items:center;gap:5px;cursor:pointer;font-size:11px;font-weight:700;font-family:var(--font-body);transition:all .2s cubic-bezier(.4,0,.2,1);flex-shrink:0;box-shadow:0 2px 6px #0006}.combat-init-swap-btn:hover:not(:disabled){background:#eab30840;border-color:#facc15;color:#fff;transform:translateY(-1px);box-shadow:0 4px 10px #eab3084d}.init-swap-ally-card{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;transition:all .2s ease}.init-swap-ally-card:hover{background:#eab3081a;border-color:#eab3084d}.ally-swap-info{display:flex;align-items:center;gap:10px}.ally-swap-info .ally-avatar{font-size:24px}.ally-swap-info .ally-text{display:flex;flex-direction:column;gap:2px}.ally-swap-info .ally-text strong{color:#f8fafc;font-size:13px}.ally-swap-info .ally-text span{color:#94a3b8;font-size:11px}.btn-swap-confirm{background:linear-gradient(135deg,#ca8a04,#a16207);color:#fff;border:1px solid #eab308;border-radius:6px;padding:6px 12px;font-size:12px;font-weight:700;cursor:pointer;transition:all .15s ease}.btn-swap-confirm:hover:not(:disabled){filter:brightness(1.15);transform:scale(1.03)}.combat-tactical-strip{display:flex;justify-content:space-between;align-items:center;gap:6px;background:#0e0c16e6;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:4px 8px;flex-shrink:0}.combat-distance-badge{display:flex;align-items:center;gap:5px;font-size:10px;font-weight:700;color:var(--accent-gold)}.combat-resources-tracker{display:flex;align-items:center;gap:4px}.res-chip{font-size:9px;font-weight:700;padding:2px 6px;border-radius:4px;background:#00000080;border:1px solid rgba(255,255,255,.15);color:#94a3b8;transition:all .2s}.res-chip.active{background:#2ecc7126;border-color:#2ecc71;color:#2ecc71}.res-chip.spent{opacity:.35;text-decoration:line-through}.combat-enemies-list{display:flex;flex-direction:column;gap:5px;flex-shrink:0}.combat-enemy-strip{background:linear-gradient(180deg,#1c1620fa,#100c14fc);border:1.5px solid rgba(231,76,60,.4);border-radius:10px;padding:6px 10px;box-shadow:0 4px 14px #0009;display:flex;flex-direction:column;gap:5px;cursor:pointer;transition:all .2s}.combat-enemy-strip:hover{border-color:var(--accent-gold);box-shadow:0 0 12px #e5b85c66}.combat-enemy-strip.active-enemy{border-color:#e74c3c;box-shadow:0 0 14px #e74c3c80}.enemy-strip-header{display:flex;justify-content:space-between;align-items:center}.enemy-strip-identity{display:flex;align-items:center;gap:8px}.enemy-strip-avatar{font-size:20px;width:28px;height:28px;background:#0006;border:1px solid rgba(231,76,60,.5);border-radius:6px;display:flex;align-items:center;justify-content:center}.enemy-strip-name-wrap{display:flex;flex-direction:column}.enemy-strip-name{font-family:var(--font-heading);font-size:12px;font-weight:800;color:#fff}.enemy-strip-level{font-size:9px;color:var(--text-muted)}.enemy-strip-stats{display:flex;align-items:center;gap:6px}.enemy-info-hint{font-size:9px;color:var(--accent-gold);background:#e5b85c1f;border:1px solid rgba(229,184,92,.4);padding:1px 5px;border-radius:4px}.enemy-strip-ac{background:#0e0c16f2;border:1px solid var(--accent-gold);color:var(--accent-gold);font-size:10px;font-weight:800;padding:2px 6px;border-radius:5px}.enemy-strip-hp-wrap{width:100%;height:14px;background:#000000b3;border:1px solid rgba(255,255,255,.15);border-radius:7px;position:relative;overflow:hidden}.enemy-strip-hp-bar{height:100%;background:linear-gradient(90deg,#c0392b,#e74c3c);border-radius:7px;transition:width .3s cubic-bezier(.34,1.56,.64,1)}.enemy-strip-hp-text{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:800;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.9)}.combat-dice-log{flex:1;min-height:70px;background:#0a0812fa;border:1px solid rgba(229,184,92,.35);border-radius:8px;padding:6px 8px;overflow:hidden;font-family:inherit;font-size:11px;line-height:1.45;display:flex;flex-direction:column;box-shadow:inset 0 2px 10px #000000d9;position:relative;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}.combat-dice-log:hover{border-color:#e5b85cb3;box-shadow:inset 0 2px 10px #000000d9,0 0 10px #e5b85c26}.combat-dice-log-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(229,184,92,.25);padding-bottom:4px;margin-bottom:5px;flex-shrink:0}.combat-dice-log-title{font-family:var(--font-heading);font-size:11px;font-weight:600;color:var(--accent-gold);letter-spacing:.5px;display:flex;align-items:center;gap:5px}.btn-expand-log{background:#000000a6;border:1px solid rgba(229,184,92,.4);color:var(--accent-gold);border-radius:4px;width:22px;height:22px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:11px;z-index:5;transition:all .15s ease}.btn-expand-log:hover{background:#e5b85c40;border-color:var(--accent-gold);transform:scale(1.05)}.dice-log-entries-wrap{display:flex;flex-direction:column;gap:5px;overflow-y:auto;flex:1;scroll-behavior:smooth}.dice-log-entry{color:#e2e8f0;white-space:pre-line;background:#ffffff08;border-left:3px solid rgba(229,184,92,.4);padding:5px 8px;border-radius:0 6px 6px 0;font-size:10.5px;line-height:1.45}.dice-log-entry.hero-hit{border-left-color:#22c55e;color:#f1f5f9;background:#22c55e0a}.dice-log-entry.hero-crit{border-left-color:#fbbf24;background:#fbbf2412;color:#fff}.dice-log-entry.enemy-hit{border-left-color:#ef4444;color:#fca5a5;background:#ef44440a}.dice-log-entry.miss{border-left-color:#64748b;color:#94a3b8}.dice-log-entry.info{border-left-color:#38bdf8;color:#bae6fd;background:#38bdf80a}.combat-chronicle-fullscreen-modal{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1200;background:#06040af0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;flex-direction:column;justify-content:center;align-items:center;padding:8px;animation:fadeInChronicle .2s ease-out}@keyframes fadeInChronicle{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.chronicle-modal-container{width:100%;max-width:480px;height:100%;max-height:96vh;background:radial-gradient(circle at 50% 0%,#1c162afc,#0c0a12fc);border:1.5px solid rgba(229,184,92,.5);border-radius:12px;box-shadow:0 0 35px #000000f2,inset 0 0 25px #e5b85c14;display:flex;flex-direction:column;overflow:hidden}.chronicle-header{padding:10px 14px;background:#14101efa;border-bottom:1px solid rgba(229,184,92,.35);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.chronicle-header-left{display:flex;align-items:center;gap:10px}.chronicle-header-icon{font-size:20px;filter:drop-shadow(0 0 4px rgba(229,184,92,.5))}.chronicle-header-titles{display:flex;flex-direction:column}.chronicle-title{font-family:var(--font-heading);font-size:15px;font-weight:700;color:var(--accent-gold);letter-spacing:.8px;text-shadow:0 0 10px rgba(229,184,92,.4)}.chronicle-subtitle{font-size:10.5px;color:#94a3b8;margin-top:1px}.chronicle-header-actions{display:flex;gap:8px;align-items:center}.btn-chronicle-scroll-bottom{background:#e5b85c26;border:1px solid rgba(229,184,92,.4);color:var(--accent-gold);border-radius:6px;width:30px;height:30px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:13px;transition:all .15s ease}.btn-chronicle-scroll-bottom:hover{background:#e5b85c4d;transform:translateY(1px)}.btn-chronicle-close{background:#ef444426;border:1px solid rgba(239,68,68,.45);color:#fca5a5;border-radius:6px;width:30px;height:30px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all .15s ease}.btn-chronicle-close:hover{background:#ef44444d;color:#fff;transform:scale(1.05)}.chronicle-body{flex:1;overflow-y:auto;padding:12px 10px;display:flex;flex-direction:column;gap:12px;scroll-behavior:smooth}.chronicle-round-section{display:flex;flex-direction:column;gap:10px}.chronicle-round-divider{display:flex;align-items:center;justify-content:center;gap:10px;margin:6px 0 2px}.round-divider-line{flex:1;height:1px;background:linear-gradient(90deg,transparent,rgba(229,184,92,.45),transparent)}.round-ribbon{font-family:var(--font-heading);font-size:11.5px;font-weight:700;color:var(--accent-gold);background:#1e182ef2;padding:3px 14px;border-radius:14px;border:1px solid rgba(229,184,92,.45);box-shadow:0 2px 8px #0009;letter-spacing:.8px}.chronicle-turn-block{background:#100e18e6;border-radius:8px;border:1px solid rgba(255,255,255,.08);overflow:hidden;box-shadow:0 3px 10px #00000080}.chronicle-turn-block.faction-player{border-left:4px solid var(--accent-gold);border-top:1px solid rgba(229,184,92,.3)}.chronicle-turn-block.faction-enemy{border-left:4px solid #ef4444;border-top:1px solid rgba(239,68,68,.3)}.chronicle-turn-block.faction-ally{border-left:4px solid #10b981;border-top:1px solid rgba(16,185,129,.3)}.chronicle-turn-block.faction-system{border-left:4px solid #a855f7;border-top:1px solid rgba(168,85,247,.3)}.chronicle-turn-block.faction-world{border-left:4px solid #6366f1;border-top:1px solid rgba(99,102,241,.35)}.chronicle-turn-block.faction-neutral,.chronicle-turn-block.faction-dummy{border-left:4px solid #64748b;border-top:1px solid rgba(100,116,139,.3)}.chronicle-turn-header{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;background:#ffffff09;border-bottom:1px solid rgba(255,255,255,.06)}.turn-header-left{display:flex;align-items:center;gap:7px}.turn-avatar{font-size:14px}.turn-actor-name{font-family:var(--font-heading);font-size:11.5px;font-weight:600;color:#f1f5f9}.turn-faction-badge{font-size:9px;padding:2px 6px;border-radius:4px;font-weight:600;letter-spacing:.4px;text-transform:uppercase}.faction-player .turn-faction-badge{background:#e5b85c2e;color:var(--accent-gold);border:1px solid rgba(229,184,92,.35)}.faction-enemy .turn-faction-badge{background:#ef44442e;color:#fca5a5;border:1px solid rgba(239,68,68,.35)}.faction-ally .turn-faction-badge{background:#10b9812e;color:#6ee7b7;border:1px solid rgba(16,185,129,.35)}.faction-system .turn-faction-badge{background:#a855f72e;color:#d8b4fe;border:1px solid rgba(168,85,247,.35)}.faction-world .turn-faction-badge{background:#6366f133;color:#a5b4fc;border:1px solid rgba(99,102,241,.4)}.faction-neutral .turn-faction-badge,.faction-dummy .turn-faction-badge{background:#64748b2e;color:#cbd5e1;border:1px solid rgba(100,116,139,.35)}.chronicle-turn-actions{display:flex;flex-direction:column;gap:6px;padding:8px 10px}.chronicle-action-card{background:#0f172aa6;border:1px solid rgba(255,255,255,.18);border-radius:6px;padding:6px 8px;display:flex;flex-direction:column;gap:4px;box-shadow:0 1px 4px #00000059}.chronicle-round-section.mini{gap:5px;margin-bottom:5px}.chronicle-round-divider.mini{margin:3px 0}.chronicle-round-divider.mini .round-ribbon{font-size:8.5px;padding:1px 8px}.chronicle-turn-block.mini{margin-bottom:5px;border-radius:6px}.chronicle-turn-header.mini{padding:3px 6px}.chronicle-turn-header.mini .turn-avatar{font-size:11px}.chronicle-turn-header.mini .turn-actor-name{font-size:10px}.chronicle-turn-header.mini .turn-faction-badge{font-size:8px;padding:1px 4px}.chronicle-turn-actions.mini{padding:4px 6px;gap:4px}.chronicle-turn-actions.mini .chronicle-action-card{padding:4px 6px;gap:3px}.chronicle-turn-actions.mini .action-card-header{font-size:10px}.chronicle-turn-actions.mini .dice-roll-badge,.chronicle-turn-actions.mini .damage-badge{font-size:9px;padding:1px 5px}.chronicle-turn-actions.mini .chronicle-narrative{font-size:9.5px;padding:2px 4px}.chronicle-turn-actions.mini .extra-line{font-size:9.5px}.action-card-header{display:flex;flex-wrap:wrap;align-items:center;gap:4px;font-size:11px;font-weight:600;color:#f8fafc;line-height:1.35}.action-card-header .header-cost-pip{display:inline-flex;align-items:center;justify-content:center;font-size:.95em;line-height:1;margin:0 1px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}.action-card-header .header-slot-pip{display:inline-flex;align-items:center;justify-content:center;font-size:.9em;font-weight:700;color:#93c5fd;line-height:1;margin:0 1px;text-shadow:0 1px 3px rgba(37,99,235,.6)}.action-badge-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.dice-roll-badge{display:inline-flex;align-items:center;font-size:10px;padding:2px 6px;border-radius:4px;width:fit-content;line-height:1.35}.dice-roll-badge.roll-hit{background:#22c55e26;border:1px solid rgba(34,197,94,.4);color:#86efac}.dice-roll-badge.roll-crit{background:#eab30833;border:1px solid rgba(234,179,8,.5);color:#fde047;font-weight:700}.dice-roll-badge.roll-miss{background:#94a3b81f;border:1px solid rgba(148,163,184,.3);color:#cbd5e1}.dice-roll-badge.roll-save-pass{background:#3b82f626;border:1px solid rgba(59,130,246,.4);color:#93c5fd}.dice-roll-badge.roll-save-fail{background:#ef444426;border:1px solid rgba(239,68,68,.4);color:#fca5a5}.damage-badge{display:inline-flex;align-items:center;font-size:10px;padding:2px 6px;border-radius:4px;width:fit-content;line-height:1.35;font-weight:600}.damage-badge.dmg-hit{background:#ef444426;border:1px solid rgba(239,68,68,.35);color:#f87171}.damage-badge.dmg-heal{background:#22c55e2e;border:1px solid rgba(34,197,94,.4);color:#4ade80}.mastery-badge{display:inline-flex;align-items:center;font-size:10px;padding:2px 6px;border-radius:4px;width:fit-content;line-height:1.35;font-weight:600;background:#a855f72e;border:1px solid rgba(168,85,247,.4);color:#c084fc}.condition-badge{display:inline-flex;align-items:center;font-size:10px;padding:2px 6px;border-radius:4px;width:fit-content;line-height:1.35;font-weight:600;background:#f59e0b2e;border:1px solid rgba(245,158,11,.4);color:#fbbf24}.header-arrow{color:#64748b;margin:0 4px;font-size:9.5px}.header-icon{margin-right:3px}.header-action{color:#f1f5f9;font-weight:700}.header-target{color:#cbd5e1}.action-chips-wrap{display:flex;flex-wrap:wrap;gap:5px;align-items:center;margin-top:2px}.action-extra-lines{display:flex;flex-direction:column;gap:2px}.extra-line{font-size:10px;color:#94a3b8;line-height:1.3}.chronicle-narrative{font-style:italic;font-size:10.5px;line-height:1.4;white-space:pre-line;color:#cbd5e1;border-left:2px solid rgba(229,184,92,.4);padding-left:6px;margin-top:2px}.chronicle-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;gap:8px;color:#64748b}.chronicle-empty-state .empty-icon{font-size:32px;opacity:.6}.chronicle-empty-state .empty-title{font-family:var(--font-heading);font-size:14px;color:#94a3b8}.chronicle-empty-state .empty-desc{font-size:11px;color:#64748b;max-width:260px}.chronicle-round-divider.prologue .round-divider-line{background:linear-gradient(90deg,transparent,rgba(148,163,184,.4),transparent)}.chronicle-round-divider .round-ribbon.prologue-ribbon{color:#cbd5e1;background:#1e293bf2;border:1px solid rgba(148,163,184,.45);letter-spacing:.6px}.chronicle-round-divider.mini .round-ribbon.prologue-ribbon{font-size:8px;padding:1px 7px}.chronicle-initiative-banner{background:linear-gradient(135deg,#221a12f5,#14101cfa);border:1px solid rgba(229,184,92,.55);box-shadow:0 4px 18px #000000b3,inset 0 0 16px #e5b85c14;border-radius:8px;padding:10px 12px;margin:6px 0;display:flex;flex-direction:column;gap:8px;position:relative;overflow:hidden}.chronicle-initiative-banner:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,rgba(255,215,0,.8),transparent)}.initiative-banner-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(229,184,92,.22);padding-bottom:6px}.banner-title-wrap{display:flex;align-items:center;gap:8px}.banner-icon{font-size:18px;filter:drop-shadow(0 0 6px rgba(255,215,0,.5))}.banner-titles{display:flex;flex-direction:column;gap:1px}.banner-title{font-family:var(--font-heading);font-size:13px;font-weight:800;color:gold;letter-spacing:.8px;text-transform:uppercase;text-shadow:0 0 8px rgba(255,215,0,.4)}.banner-subtitle{font-size:10px;color:#cbd5e1;opacity:.85;font-style:italic}.initiative-winner-banner{background:linear-gradient(90deg,#e5b85c38,#ffd70014);border:1px solid rgba(229,184,92,.45);border-radius:6px;padding:6px 10px;display:flex;align-items:center;gap:6px;box-shadow:0 2px 6px #00000059}.winner-crown{font-size:14px;filter:drop-shadow(0 0 4px rgba(255,215,0,.6))}.winner-label{font-size:10px;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px}.winner-name{font-family:var(--font-heading);font-size:12.5px;font-weight:700;color:#fef08a;text-shadow:0 0 6px rgba(254,240,138,.5)}.winner-score{font-size:11px;font-weight:700;color:gold;margin-left:auto}.initiative-track-list{display:flex;flex-direction:column;gap:4px}.initiative-combatant-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:5px 8px;background:#ffffff09;border-radius:5px;border:1px solid rgba(255,255,255,.07);font-size:11px;transition:background .15s ease}.initiative-combatant-row.player-row{border-left:3px solid var(--accent-gold)}.initiative-combatant-row.enemy-row{border-left:3px solid #ef4444}.initiative-combatant-row.ally-row{border-left:3px solid #10b981}.initiative-combatant-row.winner-row{background:#e5b85c1a;border-color:#e5b85c4d}.init-combatant-rank{font-family:var(--font-heading);font-size:11px;font-weight:700;width:18px;text-align:center;color:#94a3b8}.winner-row .init-combatant-rank{color:gold}.init-combatant-info{display:flex;align-items:center;gap:6px;flex:1;min-width:0}.init-combatant-avatar{font-size:13px}.init-combatant-name{font-weight:600;color:#f1f5f9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}.init-combatant-formula{font-size:10px;color:#94a3b8;font-family:monospace;white-space:nowrap}.init-combatant-score{font-family:var(--font-heading);font-size:13px;font-weight:800;color:#fef08a;min-width:24px;text-align:right}.init-chip{font-size:9px;padding:1px 5px;border-radius:3px;font-weight:600;white-space:nowrap}.init-chip.adv{background:#10b98133;color:#6ee7b7;border:1px solid rgba(16,185,129,.4)}.init-chip.disadv{background:#ef444433;color:#fca5a5;border:1px solid rgba(239,68,68,.4)}.init-chip.alert{background:#eab30833;color:#fde047;border:1px solid rgba(234,179,8,.4)}.chronicle-initiative-banner.mini{padding:6px 8px;gap:5px;margin:4px 0}.chronicle-initiative-banner.mini .initiative-banner-header{padding-bottom:4px}.chronicle-initiative-banner.mini .banner-icon{font-size:14px}.chronicle-initiative-banner.mini .banner-title{font-size:11px}.chronicle-initiative-banner.mini .banner-subtitle{font-size:8.5px}.chronicle-initiative-banner.mini .initiative-winner-banner{padding:4px 6px;gap:4px}.chronicle-initiative-banner.mini .winner-crown{font-size:12px}.chronicle-initiative-banner.mini .winner-label{font-size:8.5px}.chronicle-initiative-banner.mini .winner-name{font-size:10.5px}.chronicle-initiative-banner.mini .winner-score{font-size:10px}.chronicle-initiative-banner.mini .initiative-combatant-row{padding:3px 6px;font-size:9.5px;gap:5px}.chronicle-initiative-banner.mini .init-combatant-rank{font-size:9.5px;width:14px}.chronicle-initiative-banner.mini .init-combatant-avatar{font-size:11px}.chronicle-initiative-banner.mini .init-combatant-name{font-size:9.5px;max-width:95px}.chronicle-initiative-banner.mini .init-combatant-formula{font-size:8.5px}.chronicle-initiative-banner.mini .init-combatant-score{font-size:11px}.chronicle-initiative-banner.mini .init-chip{font-size:8px;padding:0 4px}.combat-pane-resizer{display:flex;align-items:center;justify-content:center;height:12px;min-height:12px;width:100%;cursor:row-resize;cursor:ns-resize;touch-action:none;user-select:none;-webkit-user-select:none;flex-shrink:0;margin:-2px 0;position:relative;z-index:3}.resizer-handle-pill{width:44px;height:4px;background:#e5b85c73;border:1px solid rgba(229,184,92,.65);border-radius:3px;transition:all .15s ease;box-shadow:0 0 6px #000000b3}.combat-pane-resizer:hover .resizer-handle-pill,.combat-pane-resizer:active .resizer-handle-pill,.combat-pane-resizer.is-dragging .resizer-handle-pill{width:60px;height:5px;background:var(--accent-gold);border-color:#fff;box-shadow:0 0 10px #e5b85cbf}.combat-battlemap-container{position:relative;width:100%;height:270px;min-height:140px;background:#08070e;border:1.5px solid rgba(229,184,92,.45);border-radius:10px;overflow:hidden;box-shadow:inset 0 2px 14px #000000f2,0 4px 15px #000000b3;display:flex;align-items:center;justify-content:center;flex-shrink:0;-webkit-user-select:none;user-select:none}.combat-floating-hud{position:absolute;bottom:12px;right:12px;z-index:35;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:auto}.floating-hud-btn{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#16121eeb,#0c0a12f5);border:1.5px solid rgba(212,175,55,.55);box-shadow:0 4px 16px #000000bf,0 0 10px #d4af372e;display:flex;align-items:center;justify-content:center;font-size:22px;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,opacity .2s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.floating-hud-btn:hover,.floating-hud-btn:active{transform:scale(1.08);border-color:gold;box-shadow:0 6px 20px #000000d9,0 0 16px #ffd70059}.floating-hud-btn.is-stealthed{border-color:#c084fc;box-shadow:0 0 14px #a855f7b3,0 4px 16px #000000d9;animation:pulseStealthGlow 2.5s infinite ease-in-out}@keyframes pulseStealthGlow{0%,to{box-shadow:0 0 12px #a855f799,0 4px 16px #000000d9}50%{box-shadow:0 0 20px #c084fce6,0 4px 16px #000000d9}}.floating-hud-btn.is-combat{border-color:#f59e0b;box-shadow:0 0 14px #f59e0b99,0 4px 16px #000000d9}.floating-hud-icon{line-height:1;display:flex;align-items:center;justify-content:center}.battlemap-viewport{width:100%;height:100%;overflow:hidden;position:relative;touch-action:none;cursor:grab}.battlemap-viewport:active,.battlemap-viewport.is-dragging{cursor:grabbing}.battlemap-grid{display:grid;position:absolute;top:0;left:0;gap:1px;background-color:#00000080;background-image:url(/assets/battlemap_ground.jpg);background-repeat:repeat;background-size:352px 352px;will-change:transform}.map-tile{position:relative;width:44px;height:44px;background:#0f0c1647;box-shadow:inset 0 0 0 .5px #00000073;border:1px solid rgba(255,255,255,.04);display:flex;align-items:center;justify-content:center;transition:background .12s ease,border-color .12s ease;-webkit-user-select:none;user-select:none;font-size:15px;box-sizing:border-box}.map-tile:nth-child(2n){background:#120e1a61}.map-tile.reachable{background:transparent;cursor:pointer;border:1px solid transparent;box-shadow:none}.map-tile.reachable:hover{background:#4ade801f;box-shadow:inset 0 0 8px #4ade8040}.map-tile.reachable:after{content:"";width:6px;height:6px;border-radius:50%;background:#4ade80;box-shadow:0 0 5px #4ade80}.map-tile.reachable.summon-cast-reachable:after{background:#38bdf8!important;box-shadow:0 0 6px #38bdf8!important}.map-tile.reachable.summon-cast-reachable:hover{background:#38bdf826!important;box-shadow:inset 0 0 8px #38bdf84d!important}.map-tile.melee-threat{border:1px dashed rgba(239,68,68,.4)}.map-tile.obstacle{background:#0f0d1a;color:#64748b;cursor:not-allowed}.map-tile.tile-cellar-unrevealed,.map-tile.tile-void{background:#050308!important;position:relative!important;border:none!important;border-color:transparent!important;box-shadow:none!important;color:transparent!important;pointer-events:none!important;cursor:default!important;opacity:1!important;z-index:15!important}.map-tile.tile-cellar-unrevealed:before,.map-tile.tile-void:before{content:""!important;position:absolute!important;top:-1px!important;left:-1px!important;right:-1px!important;bottom:-1px!important;background:#050308!important;z-index:15!important;pointer-events:none!important}.map-tile.tile-cellar-unrevealed *,.map-tile.tile-void *{display:none!important}.map-tile.extraction-zone-tile{border-top:2.5px dashed #2ecc71!important;background:linear-gradient(180deg,#2ecc7138,#141120f2)!important;position:relative}.map-tile.extraction-zone-tile.reachable{border-top:2.5px dashed #2ecc71!important;background:linear-gradient(180deg,#2ecc7173,#2ecc7133)!important}.map-tile.fog-cloud-tile{background:radial-gradient(circle,#dce6f56b,#94a3b852 65%,#64748b33)!important;box-shadow:inset 0 0 10px #ffffff47,0 0 8px #94a3b840!important;border-color:#e2e8f066!important;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fogTilePulse 3.5s ease-in-out infinite alternate}@keyframes fogTilePulse{0%{filter:brightness(.92);opacity:.88}to{filter:brightness(1.15);opacity:1}}.map-tile.minor-illusion-tile{background:radial-gradient(circle,#a855f738,#7e22ce26)!important;border:1.5px dashed #c084fc!important;box-shadow:inset 0 0 8px #c084fc4d!important;animation:minorIllusionShimmer 3s ease-in-out infinite alternate}@keyframes minorIllusionShimmer{0%{opacity:.82;border-color:#a855f7}to{opacity:1;border-color:#e9d5ff}}.map-tile.dancing-lights-tile{background:radial-gradient(circle,rgba(251,191,36,.18) 0%,rgba(245,158,11,.08) 75%,transparent 100%)!important;box-shadow:inset 0 0 8px #fbbf2440!important;border-color:#fbbf2459!important}.map-tile.tile-difficult-terrain{background-image:repeating-linear-gradient(45deg,rgba(180,140,90,.18),rgba(180,140,90,.18) 3px,transparent 3px,transparent 7px);border-color:#b48c5a66!important}.map-tile.hazard-fire,.map-tile.hazard-burning_oil{background:radial-gradient(circle,rgba(239,68,68,.4) 0%,rgba(249,115,22,.22) 70%,transparent 100%)!important;box-shadow:inset 0 0 10px #ef444473,0 0 8px #f9731659!important;border-color:#ef444499!important;animation:fireHazardPulse 1.8s ease-in-out infinite alternate}@keyframes fireHazardPulse{0%{filter:brightness(.95);opacity:.88}to{filter:brightness(1.25);opacity:1}}.map-tile.hazard-spikes,.map-tile.hazard-spike_growth,.map-tile.hazard-caltrops{background:radial-gradient(circle,rgba(34,197,94,.28) 0%,rgba(21,128,61,.18) 75%,transparent 100%)!important;box-shadow:inset 0 0 8px #22c55e59!important;border-color:#22c55e80!important}.map-tile.hazard-acid,.map-tile.hazard-acid_pool{background:radial-gradient(circle,rgba(132,204,22,.38) 0%,rgba(101,163,13,.22) 70%,transparent 100%)!important;box-shadow:inset 0 0 10px #84cc1673!important;border-color:#84cc1699!important}.map-tile.hazard-lava,.map-tile.hazard-lava_pool{background:radial-gradient(circle,rgba(220,38,38,.55) 0%,rgba(185,28,28,.35) 70%,transparent 100%)!important;box-shadow:inset 0 0 12px #ef4444a6!important;border-color:#dc2626b3!important;animation:fireHazardPulse 1.4s ease-in-out infinite alternate}.map-tile.hazard-ice,.map-tile.hazard-ice_surface,.map-tile.hazard-grease,.map-tile.hazard-oil_slick{background:radial-gradient(circle,rgba(56,189,248,.32) 0%,rgba(14,165,233,.16) 75%,transparent 100%)!important;box-shadow:inset 0 0 8px #38bdf866!important;border-color:#38bdf880!important}.map-tile.hazard-web,.map-tile.hazard-web_surface{background:radial-gradient(circle,rgba(241,245,249,.28) 0%,rgba(203,213,225,.15) 75%,transparent 100%)!important;border:1.5px dashed rgba(226,232,240,.55)!important;box-shadow:inset 0 0 8px #ffffff40!important}.map-tile.hazard-quicksand{background:radial-gradient(circle,rgba(180,83,9,.38) 0%,rgba(120,53,15,.22) 75%,transparent 100%)!important;border-color:#b4530980!important}.minor-illusion-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:1.1rem;opacity:.75;filter:drop-shadow(0 0 4px rgba(168,85,247,.8));pointer-events:none}.sub-action-card.illusion-info-card{background:#a855f714!important;border-left:3px solid #a855f7!important;cursor:default!important}.sub-action-card.illusion-info-card:hover{transform:none!important;border-color:#a855f7!important}.extraction-marker-icon{position:absolute;top:1px;right:2px;font-size:9px;line-height:1;opacity:.85;pointer-events:none;filter:drop-shadow(0 0 3px #2ecc71)}.map-token{position:absolute;top:2px;right:2px;bottom:2px;left:2px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;z-index:10;transition:all .2s cubic-bezier(.34,1.56,.64,1);pointer-events:none}.map-token.player-token{background:linear-gradient(135deg,#1e293b,#0f172a);border:2px solid var(--accent-gold);box-shadow:0 0 10px #e5b85ccc;animation:tokenPulse 2s infinite ease-in-out}.map-token.enemy-token{background:linear-gradient(135deg,#450a0a,#1e1b4b);border:2px solid #ef4444;box-shadow:0 0 10px #ef4444cc}.map-token.ally-token{background:linear-gradient(135deg,#0c2d48,#145da0);border:2px solid #3b82f6;box-shadow:0 0 10px #3b82f6cc}.ally-mini-name{position:absolute;bottom:-11px;left:50%;transform:translate(-50%);font-size:7.5px;font-weight:700;color:#93c5fd;white-space:nowrap;pointer-events:none;text-shadow:0 1px 2px #000,0 0 4px #000;letter-spacing:.2px}.map-token.neutral-token{background:linear-gradient(135deg,#2d3748,#4a5568);border:2px solid #eab308;box-shadow:0 0 10px #eab30899}@keyframes tokenPulse{0%,to{box-shadow:0 0 8px #e5b85c99}50%{box-shadow:0 0 14px #e5b85cf2}}.enemy-mini-hp-wrap{position:absolute;top:-5px;left:50%;transform:translate(-50%);width:26px;height:4px;background:#000000d9;border:.5px solid rgba(255,255,255,.4);border-radius:2px;overflow:hidden}.enemy-mini-hp-fill{height:100%;background:#ef4444;transition:width .25s ease-out}.enemy-mini-ac-badge{position:absolute;bottom:-3px;right:-3px;font-size:7.5px;font-weight:800;background:#000;color:gold;border:1px solid #ffd700;border-radius:3px;padding:0 2px;line-height:1}.map-token-statuses{position:absolute;top:-6px;left:-4px;display:flex;flex-direction:row;flex-wrap:wrap;gap:1px;max-width:34px;pointer-events:none;z-index:12}.map-token-status-badge{font-size:8px;line-height:1;background:#0f172aeb;border:.5px solid rgba(255,255,255,.45);border-radius:3px;padding:1px 2px;box-shadow:0 1px 3px #000000d9;display:inline-flex;align-items:center;justify-content:center;color:#fff}.map-token-status-badge.status-concentration{border-color:#f59e0b;box-shadow:0 0 4px #f59e0bb3}.map-token-status-badge.status-mirror{border-color:#a855f7;color:#e9d5ff}.map-token-status-badge.status-dodge{border-color:#3b82f6}.popover-tactical-intel{background:#0f172ad9;border:1px solid rgba(255,255,255,.12);border-radius:6px;padding:6px 8px;margin:4px 0 8px;display:flex;flex-direction:column;gap:4px;font-size:11px}.tactical-intel-row{display:flex;align-items:center;justify-content:space-between;gap:6px;line-height:1.3}.tactical-intel-label{color:#94a3b8;font-weight:500}.tactical-intel-val{color:#f1f5f9;font-weight:600}.tactical-intel-saves{display:grid;grid-template-columns:repeat(6,1fr);gap:2px;margin-top:2px;text-align:center}.tactical-save-cell{background:#1e293bb3;border:.5px solid rgba(255,255,255,.15);border-radius:3px;padding:2px 1px;font-size:9.5px;display:flex;flex-direction:column;align-items:center}.tactical-save-name{color:#94a3b8;font-size:8px;text-transform:uppercase;font-weight:700}.tactical-save-bonus{font-weight:700;color:#e2e8f0}.tactical-chips-row{display:flex;flex-wrap:wrap;gap:3px;margin-top:2px}.tactical-chip{font-size:9.5px;padding:1.5px 5px;border-radius:3px;display:inline-flex;align-items:center;gap:3px;font-weight:600}.tactical-chip.res-resistance{background:#3b82f633;border:.5px solid #60a5fa;color:#93c5fd}.tactical-chip.res-vulnerability{background:#ef444433;border:.5px solid #f87171;color:#fca5a5}.tactical-chip.res-immunity{background:#eab30833;border:.5px solid #facc15;color:#fef08a}.map-token.mage-hand-token{background:radial-gradient(circle,#3b82f666,#1e3a8ab3);border:1.5px solid #60a5fa;box-shadow:0 0 10px #60a5fad9;animation:mageHandFloat 2.5s infinite ease-in-out}@keyframes mageHandFloat{0%,to{transform:translateY(0) scale(1);box-shadow:0 0 8px #60a5fab3}50%{transform:translateY(-3px) scale(1.05);box-shadow:0 0 14px #93c5fdf2}}.map-token.decoy-token{background:radial-gradient(circle,#a855f759,#581c87b3);border:1.5px solid #c084fc;box-shadow:0 0 10px #c084fcd9;animation:decoyPulse 2.8s infinite ease-in-out}@keyframes decoyPulse{0%,to{transform:scale(1);box-shadow:0 0 6px #c084fc99}50%{transform:scale(1.04);box-shadow:0 0 12px #e9d5fff2}}.map-token.dancing-lights-token{background:radial-gradient(circle,#fbbf2480,#b45309b3);border:1.5px solid #fbbf24;box-shadow:0 0 12px #fbbf24f2;animation:dancingLightsFloat 2.2s infinite ease-in-out}@keyframes dancingLightsFloat{0%,to{transform:translateY(-2px) scale(.96);box-shadow:0 0 8px #fbbf24cc}50%{transform:translateY(2px) scale(1.06);box-shadow:0 0 16px #fef08a}}.summon-carry-badge{position:absolute;top:-4px;right:-4px;font-size:9px;background:#1e1b4b;border:1px solid #a78bfa;border-radius:50%;width:13px;height:13px;display:flex;align-items:center;justify-content:center;line-height:1}.map-token.ground-item-token{background:#f59e0b26;border:1px dashed #f59e0b;box-shadow:0 0 6px #f59e0b66;animation:itemGleam 3s infinite ease-in-out}@keyframes itemGleam{0%,to{opacity:.85;transform:scale(.95)}50%{opacity:1;transform:scale(1.05)}}.map-token.prop-token{background:#1e293b80;border:1px solid #94a3b8}.map-token.hazard-token{background:#ef444433;border:1px dotted #f87171}.map-token.corpse-token{background:radial-gradient(circle,#374151b3,#111827e6);border:1px dashed rgba(156,163,175,.7);box-shadow:0 0 6px #000000b3;opacity:.88;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.map-token.corpse-token:hover{transform:scale(1.1);box-shadow:0 0 10px #e5b85cb3;border-color:#e5b85ce6;opacity:1}.battlemap-target-popover{position:absolute;bottom:6px;left:6px;right:6px;background:#0e0c16fa;border:1.5px solid var(--accent-gold);border-radius:12px;padding:8px 10px;z-index:60;box-shadow:0 8px 28px #000000f2,0 0 15px #e5b85c40;animation:slideUpSubActions .15s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;flex-direction:column;max-height:calc(100% - 12px);box-sizing:border-box}.popover-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(229,184,92,.3);padding-bottom:5px;margin-bottom:6px;gap:8px}.popover-entity-switcher{display:flex;align-items:center;gap:6px;overflow-x:auto;padding:0 0 6px;margin-bottom:6px;border-bottom:1px dashed rgba(229,184,92,.25);scrollbar-width:thin}.popover-entity-switcher::-webkit-scrollbar{height:3px}.popover-entity-switcher::-webkit-scrollbar-thumb{background:#e5b85c66;border-radius:3px}.entity-chip-btn{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;background:#ffffff0f;border:1px solid rgba(229,184,92,.3);border-radius:6px;color:#c9c7c5;font-size:11px;font-weight:500;cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;transition:all .15s ease}.entity-chip-btn:hover{background:#e5b85c26;border-color:var(--accent-gold);color:#fff}.entity-chip-btn.active{background:#e5b85c40;border-color:var(--accent-gold);color:gold;font-weight:700;box-shadow:0 0 8px #e5b85c4d}.entity-chip-btn .entity-chip-icon{font-size:13px}.popover-effects-row{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;padding:0 0 6px;margin-bottom:6px;border-bottom:1px dashed rgba(229,184,92,.25)}.effect-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border-radius:6px;font-size:9.5px;font-weight:700;letter-spacing:.2px;line-height:1.2;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .15s ease;white-space:nowrap}.effect-chip:hover{transform:translateY(-1px);filter:brightness(1.15)}.effect-chip:active{transform:translateY(0)}.effect-chip-icon{font-size:11px;line-height:1}.effect-chip-name{font-size:9.5px}.effect-chip.debuff{background:#dc26262e;border:1px solid rgba(248,113,113,.45);color:#fca5a5;box-shadow:0 1px 4px #dc262633}.effect-chip.debuff.control{background:#9333ea38;border-color:#c084fc80;color:#e9d5ff;box-shadow:0 1px 4px #9333ea40}.effect-chip.debuff.warning{background:#d9770633;border-color:#fbbf2473;color:#fde68a}.effect-chip.buff{background:#3b82f62e;border:1px solid rgba(96,165,250,.45);color:#93c5fd;box-shadow:0 1px 4px #3b82f633}.effect-chip.buff.protection{background:#10b9812e;border-color:#34d39973;color:#a7f3d0}.effect-chip.buff.holy{background:#eab30833;border-color:#facc1580;color:#fef08a}.effect-chip.duration,.effect-chip.timer{background:#a855f738;border:1px solid rgba(192,132,252,.55);color:#e9d5ff;box-shadow:0 1px 4px #a855f740;font-weight:700}.popover-effect-detail{width:100%;font-size:9.5px;line-height:1.35;color:#e2e8f0;background:#00000073;border:1px solid rgba(229,184,92,.25);border-radius:6px;padding:4px 8px;margin-top:2px;animation:fadeIn .12s ease-out}.popover-effect-detail strong{color:var(--accent-gold)}.popover-header-left{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.popover-header-right{display:flex;align-items:center;gap:6px;flex-shrink:0}.popover-enemy-hp-wrap{width:76px;height:14px;background:#000000bf;border:1px solid rgba(255,255,255,.2);border-radius:7px;position:relative;overflow:hidden;flex-shrink:0}.popover-enemy-hp-bar{height:100%;background:linear-gradient(90deg,#c0392b,#e74c3c);border-radius:7px;transition:width .3s cubic-bezier(.34,1.56,.64,1)}.popover-enemy-hp-text{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:8.5px;font-weight:800;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.9)}.popover-info-btn{background:#e5b85c1f;border:1px solid rgba(229,184,92,.5);color:var(--accent-gold);border-radius:5px;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;cursor:pointer;transition:all .15s ease}.popover-info-btn:hover{background:#e5b85c4d;color:#fff;border-color:var(--accent-gold)}.popover-back-btn{background:#e5b85c1f;border:1px solid rgba(229,184,92,.4);color:var(--accent-gold);font-size:10px;font-weight:700;padding:2px 7px;border-radius:6px;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all .15s}.popover-back-btn:hover{background:#e5b85c40;color:#fff}.popover-target-icon{font-size:14px;line-height:1;flex-shrink:0}.popover-dist-badge{font-size:10px;font-weight:700;color:#cbd5e1;background:#ffffff14;border:1px solid rgba(255,255,255,.16);padding:1px 6px;border-radius:6px;white-space:nowrap;flex-shrink:0}.popover-sub-nav{display:flex;align-items:center;gap:8px;padding:2px 0 6px;margin-bottom:5px;border-bottom:1px solid rgba(255,255,255,.08)}.popover-sub-title{font-family:var(--font-heading);font-size:11px;font-weight:700;color:var(--accent-gold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.popover-title{font-family:var(--font-heading);font-size:12px;font-weight:800;color:var(--accent-gold);letter-spacing:.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.popover-close{background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:#94a3b8;font-size:11px;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s}.popover-close:hover{background:#e74c3c66;color:#fff}.popover-actions-list{display:flex;flex-direction:column;gap:5px;flex:1 1 auto;min-height:0;overflow-y:auto;padding-right:2px}.popover-actions-list::-webkit-scrollbar{width:4px}.popover-actions-list::-webkit-scrollbar-track{background:#0000004d;border-radius:2px}.popover-actions-list::-webkit-scrollbar-thumb{background:#e5b85c66;border-radius:2px}.sub-action-card{display:grid;grid-template-columns:44px 1fr;grid-column-gap:9px;grid-row-gap:4px;align-items:center;background:linear-gradient(180deg,#1c1828f2,#100d18fa);border:1px solid rgba(229,184,92,.3);border-radius:8px;padding:6px 10px;color:#fff;cursor:pointer;text-align:left;transition:all .15s ease;position:relative;box-shadow:0 2px 6px #0009;min-height:52px;height:auto;flex-shrink:0;width:100%;box-sizing:border-box}.sub-action-card:hover:not(:disabled){border-color:var(--accent-gold);background:linear-gradient(180deg,#2e2644f2,#1a1528fa);transform:translateY(-1px);box-shadow:0 4px 12px #e5b85c4d}.sub-action-card:active:not(:disabled){transform:translateY(0)}.sub-action-card:disabled{opacity:.65;cursor:not-allowed;border-color:#ffffff14;background:#0e0c14d9}.sub-action-card:disabled .card-icon{filter:grayscale(.7);opacity:.7}.sub-action-card .card-icon{grid-column:1;grid-row:1 / span 2;font-size:22px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:#00000080;border:1px solid rgba(255,255,255,.14);border-radius:6px;flex-shrink:0;margin-top:0;align-self:flex-start;box-sizing:border-box;overflow:hidden}.sub-action-card .card-icon img{width:100%;height:100%;object-fit:cover;border-radius:6px}.sub-action-card .card-text{display:contents}.sub-action-card.single-tier{min-height:42px;grid-template-rows:auto}.sub-action-card.single-tier .card-icon{grid-row:1;width:30px;height:30px;font-size:16px;align-self:center}.sub-action-card .card-tier-1,.sub-action-card .card-header-row{grid-column:2;grid-row:1;display:flex;justify-content:space-between;align-items:center;min-height:20px;line-height:20px;gap:8px;width:100%}.sub-action-card .card-title{font-family:var(--font-ui);font-size:12px;font-weight:700;color:#fff;display:flex;align-items:center;gap:6px;flex-wrap:nowrap;min-width:0;flex:1 1 auto;line-height:20px}.sub-action-card .card-title .card-pip,.sub-action-card .card-title .action-pip{flex-shrink:0;margin-top:0;align-self:center}.sub-action-card .card-title-text{color:#fff;white-space:normal;word-break:break-word;line-height:18px;min-width:0;align-self:center}.sub-action-card .card-stack-badge{font-size:9.5px;font-weight:800;color:#fbbf24;background:#fbbf2426;border:1px solid rgba(251,191,36,.35);padding:0 4px;border-radius:3px;line-height:14px}.sub-action-card .card-chance-badge{font-size:10.5px;font-weight:800;color:#f8fafc;background:#ffffff14;border:1px solid rgba(255,255,255,.22);padding:2px 7px;border-radius:4px;white-space:nowrap;flex-shrink:0;letter-spacing:.2px;line-height:16px}.sub-action-card .card-chance-badge.advantage{color:#4ade80;background:#4ade8026;border-color:#4ade8059}.sub-action-card .card-chance-badge.disadvantage{color:#f87171;background:#ef444426;border-color:#ef444459}.sub-action-card .card-chance-badge.blocked{color:#cbd5e1;background:#ffffff1f;border-color:#ffffff40}.sub-action-card .card-chance-badge.save-dc{color:#f8fafc;background:#ffffff14;border-color:#ffffff38}.sub-action-card .card-chance-badge.save-dc.advantage{color:#4ade80;background:#4ade8026;border-color:#4ade8059}.sub-action-card .card-chance-badge.save-dc.disadvantage{color:#f87171;background:#ef444426;border-color:#ef444459}.sub-action-card .card-chance-badge.auto-hit{color:#fbbf24;background:#fbbf2426;border-color:#fbbf2459}.sub-action-card .card-tier-2,.sub-action-card .card-sub-row{grid-column:2;grid-row:2;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 8px;font-size:10.5px;width:100%;min-height:20px;line-height:20px}.sub-action-card .card-tier-2-left,.sub-action-card .card-tier-3-left{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;min-width:0}.sub-action-card .card-tier-2-right,.sub-action-card .card-tier-3-right{display:flex;align-items:center;justify-content:flex-end;margin-left:auto;flex-shrink:0;text-align:right}.sub-action-card .card-tier-3{grid-column:1 / -1;grid-row:3;display:flex;justify-content:space-between;align-items:center;gap:4px 8px;font-size:10.5px;width:100%;min-height:20px;line-height:20px;padding-top:2px}.card-tag,.sub-action-card .card-tag,.sub-action-card .card-effect-tag{display:inline-flex;align-items:center;gap:3px;border-radius:4px;padding:2px 7px;font-size:10.5px;font-weight:700;line-height:16px;white-space:nowrap}.map-token.mage-hand-token{display:flex;align-items:center;justify-content:center;position:relative;width:100%;height:100%;font-size:1.4rem;filter:drop-shadow(0 0 8px rgba(56,189,248,.8)) drop-shadow(0 0 16px rgba(14,165,233,.5));animation:floatHand 2.4s ease-in-out infinite alternate;z-index:5;cursor:pointer}@keyframes floatHand{0%{transform:translateY(-2px) scale(.96)}to{transform:translateY(2px) scale(1.04)}}.summon-carry-badge{position:absolute;top:-4px;right:-4px;font-size:.9rem;background:#0f172ad9;border:1px solid #38bdf8;border-radius:50%;width:18px;height:18px;display:flex;align-items:center;justify-content:center;box-shadow:0 0 6px #38bdf899}.map-token.ground-item-token{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:1.25rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.6));animation:pulseGroundItem 2s ease-in-out infinite;z-index:3}@keyframes pulseGroundItem{0%,to{transform:scale(.95);filter:drop-shadow(0 0 4px rgba(251,191,36,.5))}50%{transform:scale(1.05);filter:drop-shadow(0 0 8px rgba(251,191,36,.85))}}.map-token.prop-token{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:1.3rem;filter:drop-shadow(0 2px 5px rgba(0,0,0,.8));z-index:4}.map-token.hazard-token{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:1.3rem;opacity:.85;z-index:2}.map-tile.has-ground-item{background-color:#eab30814!important;border-color:#eab30866!important}.map-tile.has-prop{background-color:#94a3b814!important}.map-tile.has-summon{background-color:#38bdf81a!important;box-shadow:inset 0 0 10px #38bdf840}.map-tile.hazard-oil_slick{background:radial-gradient(circle,#0f172ae6,#1e293bb3)!important;border-color:#64748b99!important}.map-tile.hazard-caltrops{background:radial-gradient(circle,#78350f66,#451a0333)!important;border-color:#d9770680!important}.map-tile.hazard-fire{background:radial-gradient(circle,#ef444480,#b91c1c33)!important;border-color:#ef4444b3!important}.map-tile.detect-magic-emanation-tile{background-color:#a855f714;box-shadow:inset 0 0 6px #c084fc38}.map-tile.tile-magic-aura{position:relative;border-color:#c084fccc!important;box-shadow:0 0 10px #c084fca6,inset 0 0 8px #a855f766!important;animation:magic-aura-pulse 2s infinite ease-in-out;z-index:4}@keyframes magic-aura-pulse{0%,to{box-shadow:0 0 8px #c084fc80,inset 0 0 6px #a855f74d}50%{box-shadow:0 0 14px #c084fce6,inset 0 0 12px #a855f799}}.magic-radar-overlay{position:absolute;top:-12px;left:-12px;width:calc(100% + 24px);height:calc(100% + 24px);pointer-events:none;overflow:visible;z-index:25}.magic-sensor-arc{fill:none;stroke-width:6.5;stroke-linecap:round;filter:drop-shadow(0 0 6px currentColor);animation:radar-arc-pulse 1.6s infinite ease-in-out}@keyframes radar-arc-pulse{0%,to{opacity:.9;transform-origin:50% 50%}50%{opacity:.35}}.container-magic-sparkle{position:absolute;top:-6px;right:-6px;font-size:13px;pointer-events:none;text-shadow:0 0 8px #c084fc;animation:sparkle-glow 1.4s infinite alternate ease-in-out;z-index:10}@keyframes sparkle-glow{0%{transform:scale(.85);opacity:.7}to{transform:scale(1.15);opacity:1}}.effect-chip.magic-school{background:#a855f726!important;border-radius:6px;padding:2px 8px}.map-tile.tile-bright-light{background-color:#fbbf241f;box-shadow:inset 0 0 10px #f59e0b38}.map-tile.tile-dim-light{background-color:#fbbf240d}.map-tile.tile-darkness{background-color:#0206176b;box-shadow:inset 0 0 8px #00000073}.map-tile.tile-magical-darkness{background-color:#020617bf;box-shadow:inset 0 0 14px #000000f2}.light-bearer-badge{position:absolute;top:-4px;left:-4px;font-size:13px;filter:drop-shadow(0 0 5px #f59e0b);animation:light-flicker 2s infinite ease-in-out;pointer-events:none;z-index:5}.dying-badge{position:absolute;top:-4px;right:-4px;font-size:13px;filter:drop-shadow(0 0 5px rgba(239,68,68,.8));pointer-events:none;z-index:5}.stationary-light-token{font-size:18px;filter:drop-shadow(0 0 8px #f59e0b);animation:light-flicker 2s infinite ease-in-out}@keyframes light-flicker{0%,to{transform:scale(1);filter:drop-shadow(0 0 5px #f59e0b)}50%{transform:scale(1.15);filter:drop-shadow(0 0 9px #fbbf24)}}.card-tag{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-tag.tag-damage,.card-tag.tag-sneak,.sub-action-card .card-tag.tag-damage,.sub-action-card .card-tag.tag-sneak,.sub-action-card .card-dmg-formula,.sub-action-card .card-damage-range{color:#f87171;background:#104123e6;border:1px solid rgba(239,68,68,.45);font-weight:700;font-size:10.5px;line-height:16px;padding:2px 7px;border-radius:4px;display:inline-flex;align-items:center;gap:3px;letter-spacing:.2px;white-space:nowrap}.card-tag.tag-heal,.sub-action-card .card-tag.tag-heal{color:#4ade80;background:#104123e6;border:1px solid rgba(34,197,94,.5);font-weight:700;font-size:10.5px;line-height:16px;padding:2px 7px;border-radius:4px;display:inline-flex;align-items:center;gap:3px;letter-spacing:.2px;white-space:nowrap}.card-tag.tag-self-damage,.sub-action-card .card-tag.tag-self-damage{color:#fca5a5;background:#460f14e6;border:1px solid rgba(239,68,68,.6);font-weight:700;font-size:10.5px;line-height:16px;padding:2px 7px;border-radius:4px;display:inline-flex;align-items:center;gap:3px;letter-spacing:.2px;white-space:nowrap}.card-tag.tag-buff,.card-tag.tag-mastery,.sub-action-card .card-tag.tag-buff,.sub-action-card .card-tag.tag-mastery{color:#6ee7b7;background:#0f321ed9;border:1px solid rgba(52,211,153,.45);font-weight:700;font-size:10.5px;line-height:16px;padding:2px 7px;border-radius:4px;display:inline-flex;align-items:center;gap:3px;letter-spacing:.2px;white-space:nowrap}.card-tag.tag-debuff,.card-tag.tag-effect,.sub-action-card .card-tag.tag-debuff,.sub-action-card .card-tag.tag-effect,.sub-action-card .card-effect-tag{color:#fca5a5;background:#3c1219d9;border:1px solid rgba(248,113,113,.45);font-weight:700;font-size:10.5px;line-height:16px;padding:2px 7px;border-radius:4px;display:inline-flex;align-items:center;gap:3px;letter-spacing:.2px;white-space:nowrap}.card-tag.tag-neutral,.sub-action-card .card-tag.tag-neutral{color:#38bdf8;background:#0f233cd9;border:1px solid rgba(56,189,248,.45);font-weight:700;font-size:10.5px;line-height:16px;padding:2px 7px;border-radius:4px;display:inline-flex;align-items:center;gap:3px;letter-spacing:.2px;white-space:nowrap}.card-tag.tag-check-self,.card-tag.tag-check,.sub-action-card .card-tag.tag-check-self,.sub-action-card .card-tag.tag-check{color:#86efac;background:#123220d9;border:1px solid rgba(74,222,128,.45);font-weight:700;font-size:10.5px;line-height:16px;padding:2px 7px;border-radius:4px;display:inline-flex;align-items:center;gap:3px;letter-spacing:.2px;white-space:nowrap}.card-tag.tag-save.enemy-save,.card-tag.tag-save-enemy,.sub-action-card .card-tag.tag-save.enemy-save,.sub-action-card .card-tag.tag-save-enemy{color:#f87171;background:#3c1219d9;border:1px solid rgba(239,68,68,.45);font-weight:700;font-size:10.5px;line-height:16px;padding:2px 7px;border-radius:4px;display:inline-flex;align-items:center;gap:3px;letter-spacing:.2px;white-space:nowrap}.card-tag.tag-save,.sub-action-card .card-tag.tag-save{color:#c084fc;background:#c084fc1f;border:1px solid rgba(192,132,252,.35);font-weight:700;font-size:10.5px;line-height:16px;padding:2px 7px;border-radius:4px;display:inline-flex;align-items:center;gap:3px;letter-spacing:.2px;white-space:nowrap}.card-tag.tag-concentration,.sub-action-card .card-tag.tag-concentration{color:#93c5fd;background:#14234be6;border:1px solid rgba(96,165,250,.5);font-weight:700;font-size:10.5px;line-height:16px;padding:2px 7px;border-radius:4px;display:inline-flex;align-items:center;gap:3px;letter-spacing:.2px;white-space:nowrap}.card-tag.tag-ritual,.sub-action-card .card-tag.tag-ritual{color:#d8b4fe;background:#2d1446e6;border:1px solid rgba(192,132,252,.5);font-weight:700;font-size:10.5px;line-height:16px;padding:2px 7px;border-radius:4px;display:inline-flex;align-items:center;gap:3px;letter-spacing:.2px;white-space:nowrap}.card-tag.tag-range,.card-tag.tag-aoe,.sub-action-card .card-tag.tag-range,.sub-action-card .card-tag.tag-aoe{color:#e2e8f0;background:#262a36f2;border:1px solid rgba(148,163,184,.4);font-weight:700;font-size:10.5px;line-height:16px;padding:2px 7px;border-radius:4px;display:inline-flex;align-items:center;gap:3px;letter-spacing:.2px;white-space:nowrap}.card-tag.tag-weight,.sub-action-card .card-tag.tag-weight{color:#94a3b8;background:#94a3b81f;border:1px solid rgba(148,163,184,.25)}.card-tag.tag-prop,.sub-action-card .card-tag.tag-prop{color:#cbd5e1;background:#64748b26;border:1px solid rgba(148,163,184,.3)}.card-tag.tag-ac,.sub-action-card .card-tag.tag-ac{color:#e2c08d;background:#e2c08d1f;border:1px solid rgba(226,192,141,.45)}.card-tag.tag-charge,.sub-action-card .card-tag.tag-charge{color:#fbbf24;background:#f59e0b26;border:1px solid rgba(245,158,11,.4)}.card-tag.tag-attuned,.sub-action-card .card-tag.tag-attuned{color:#c084fc;background:#a855f726;border:1px solid rgba(168,85,247,.45)}.card-tag.tag-needs-attune,.sub-action-card .card-tag.tag-needs-attune{color:#fde047;background:#eab30826;border:1px solid rgba(234,179,8,.4)}.card-tag.tag-control,.sub-action-card .card-tag.tag-control{color:#e9d5ff;background:#9333ea38;border:1px solid rgba(192,132,252,.5)}.spell-unified-badges,.weapon-unified-badges,.armor-unified-badges,.feature-unified-badges,.consumable-unified-badges,.condition-unified-badges,.item-unified-badges{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;margin-top:3px}.combat-player-conditions-bar{display:flex;align-items:center;justify-content:center;padding:3px 8px;background:#0f172ad9;border-bottom:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:8}.combat-player-conditions-bar.hidden{display:none!important}.combat-player-conditions-wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px 6px}.sheet-active-conditions-row{margin-top:10px;margin-bottom:6px;display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;padding:6px 10px;background:#0f172a8c;border:1px solid rgba(255,255,255,.08);border-radius:8px}.sheet-active-conditions-row.hidden{display:none!important}.sub-action-card .card-context,.sub-action-card .card-sub{font-size:10.5px;font-weight:600;line-height:16px;display:inline-flex;align-items:center;white-space:normal;word-break:break-word}.sub-action-card .card-context.info,.sub-action-card .card-context.normal,.sub-action-card .card-sub{color:#e2e8f0}.sub-action-card .card-context.disadvantage,.sub-action-card .card-sub.disadvantage,.sub-action-card:disabled .card-context.disadvantage,.sub-action-card:disabled .card-sub.disadvantage{color:#f87171!important}.sub-action-card .card-context.advantage{color:#4ade80!important}.sub-action-card .card-context.warning{color:#f59e0b}.sub-action-card.hub-category-card{min-height:44px;height:auto;flex-shrink:0;padding:8px 12px}.sub-action-card.hub-category-card .card-title{font-size:13px;letter-spacing:.3px}.sub-action-card.hub-category-card .card-chance-badge{font-size:11px;padding:3px 10px}.card-pip{display:inline-block;flex-shrink:0;vertical-align:middle}.card-pip-action,.card-pip.action-pip{width:9px;height:9px;border-radius:50%;background:#22c55e;border:1.5px solid #4ade80;box-shadow:0 0 5px #22c55eb3}.card-pip-bonus,.card-pip.bonus-pip{width:9px;height:9px;border-radius:2.5px;background:#d97706;border:1.5px solid #fbbf24;box-shadow:0 0 5px #d97706b3}.card-pip-reaction,.card-pip.reaction-pip{width:8px;height:8px;transform:rotate(45deg);background:#a855f7;border:1.5px solid #c084fc;box-shadow:0 0 5px #a855f7b3}.card-pip-slot{width:8.5px;height:8.5px;border-radius:2px;background:#3b82f6;border:1.5px solid #93c5fd;box-shadow:0 0 5px #3b82f6b3}.card-pip-free,.card-pip.free-pip{width:9px;height:9px;border-radius:50%;background:#e2e8f0;border:1.5px solid #ffffff;box-shadow:0 0 5px #ffffffb3}.card-pip-spent{opacity:.35;filter:grayscale(.8);box-shadow:none}.action-pip{display:inline-flex;align-items:center;justify-content:center;font-size:13px;line-height:1;vertical-align:middle;margin-right:5px;flex-shrink:0}.action-pip.pip-action{color:#22c55e}.action-pip.pip-bonus{color:#ea580c}.action-pip.pip-reaction{color:#eab308}.action-pip.pip-free{color:#fff}.combat-sub-actions-sheet{position:absolute;bottom:6px;left:6px;right:6px;background:#0e0c16fa;border:1.5px solid var(--accent-gold);border-radius:12px;padding:8px 10px;z-index:60;box-shadow:0 8px 28px #000000f2,0 0 15px #e5b85c40;animation:slideUpSubActions .15s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;flex-direction:column;gap:6px;max-height:calc(100% - 12px);box-sizing:border-box}@keyframes slideUpSubActions{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.sub-actions-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(229,184,92,.25);padding-bottom:4px}.sub-actions-title{font-family:var(--font-heading);font-size:11px;font-weight:800;color:var(--accent-gold)}.sub-actions-close{background:transparent;border:none;color:#94a3b8;font-size:13px;cursor:pointer;padding:0 4px}.sub-actions-grid{display:flex;flex-direction:column;gap:5px;flex:1 1 auto;min-height:0;overflow-y:auto;padding-right:2px}.sub-actions-grid::-webkit-scrollbar{width:4px}.sub-actions-grid::-webkit-scrollbar-track{background:#0000004d;border-radius:2px}.sub-actions-grid::-webkit-scrollbar-thumb{background:#e5b85c66;border-radius:2px}.combat-bottom-bar{display:flex;justify-content:space-between;align-items:center;background:#0e0c16fa;border:1px solid rgba(229,184,92,.35);border-radius:12px;padding:4px 8px;gap:8px;margin-top:auto;flex-shrink:0;box-shadow:0 4px 16px #000000d9;min-height:48px}.combat-control-btn{display:flex;align-items:center;justify-content:center;border-radius:8px;padding:6px 12px;font-family:var(--font-heading);font-size:11px;font-weight:800;cursor:pointer;border:1.5px solid;transition:all .15s ease;white-space:nowrap;min-height:38px;line-height:1.2}.combat-control-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.combat-control-btn:hover:not(:disabled){transform:translateY(-1px)}.combat-control-btn.skills-btn{background:#1c182af2;border-color:var(--accent-gold);color:gold;box-shadow:0 2px 8px #00000080;padding:0 14px}.combat-control-btn.skills-btn:hover:not(:disabled){background:#2d2644f2;box-shadow:0 0 12px #e5b85c66}.combat-control-btn.end-turn-btn{background:linear-gradient(135deg,#7c2d12,#451a03);border-color:#f97316;color:#fff;text-align:center;padding:2px 10px;font-size:10px;box-shadow:0 2px 8px #00000080}.combat-control-btn.end-turn-btn:hover:not(:disabled){background:linear-gradient(135deg,#9a3412,#5c2206);box-shadow:0 0 12px #f9731680}.combat-bg3-resources{display:flex;align-items:center;justify-content:center;gap:8px;flex:1}.bg3-pip{width:14px;height:14px;transition:all .2s cubic-bezier(.34,1.56,.64,1);position:relative;flex-shrink:0}.bg3-pip-action{border-radius:50%;background:#22c55e;border:1.5px solid #4ade80;box-shadow:0 0 8px #22c55eb3}.bg3-pip-action.spent{background:#22c55e1f;border-color:#22c55e4d;box-shadow:none;opacity:.45}.bg3-pip-bonus{border-radius:3px;width:13px;height:13px;background:#d97706;border:1.5px solid #fbbf24;box-shadow:0 0 8px #d97706b3}.bg3-pip-bonus.spent{background:#d977061f;border-color:#d977064d;box-shadow:none;opacity:.45}.bg3-slots-cluster{display:flex;align-items:center;gap:3px;background:#0006;border:1px solid rgba(59,130,246,.3);border-radius:5px;padding:3px 4px}.bg3-pip-slot{width:11px;height:11px;border-radius:2.5px;background:#3b82f6;border:1.5px solid #93c5fd;box-shadow:0 0 6px #3b82f6b3;transition:all .2s ease}.bg3-pip-slot.spent{background:#3b82f61a;border-color:#3b82f64d;box-shadow:none;opacity:.35}.bg3-move-badge{font-size:11px;font-weight:800;color:#e2e8f0;background:#ffffff14;border:1px solid rgba(255,255,255,.14);border-radius:6px;padding:3px 6px;white-space:nowrap;letter-spacing:.3px}.bg3-move-badge.spent{opacity:.35;color:#94a3b8;border-color:transparent}.bg3-move-badge.exploration-mode{color:#38bdf8;border-color:#38bdf866;background:#38bdf81f;text-shadow:0 0 6px rgba(56,189,248,.4)}.combat-cat-btn:disabled .cat-label{color:#94a3b8}.cat-status-dot{width:6px;height:6px;border-radius:50%;position:absolute;top:4px;right:6px;background:#64748b;transition:all .2s}.cat-status-dot.active{background:#2ecc71;box-shadow:0 0 6px #2ecc71}.cat-status-dot.spent{background:#e74c3c;box-shadow:none}.combat-victory-bar{display:flex;gap:8px;flex-shrink:0;margin-top:auto}.combat-victory-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border-radius:10px;cursor:pointer;font-family:var(--font-heading);font-size:12px;font-weight:800;text-shadow:0 1px 2px rgba(0,0,0,.8);transition:all .2s}.combat-victory-btn.loot-btn{background:linear-gradient(180deg,#d4af37,#8a7322);border:1.5px solid #ffe066;color:#1a1628;text-shadow:none;box-shadow:0 0 14px #ffd70066}.combat-victory-btn.loot-btn:hover{transform:translateY(-1px);box-shadow:0 0 18px #ffd70099}.combat-victory-btn.leave-btn{background:linear-gradient(180deg,#27ae60,#1e8449);border:1.5px solid #2ecc71;color:#fff}.combat-victory-btn.leave-btn:hover{transform:translateY(-1px);box-shadow:0 0 14px #2ecc7166}.loot-modal{background:#14121e!important;border:1.5px solid var(--accent-gold)!important;max-width:440px!important;padding:16px!important}.loot-item-card{display:flex;justify-content:space-between;align-items:center;background:#1a1628;border:1px solid rgba(229,184,92,.25);border-radius:8px;padding:8px 10px;transition:all .2s}.loot-item-card.looted{opacity:.35;filter:grayscale(.8);border-color:#ffffff14}.loot-item-info{display:flex;align-items:center;gap:8px}.loot-item-icon{font-size:20px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#0006;border-radius:6px}.loot-item-details{display:flex;flex-direction:column}.loot-item-name{font-family:var(--font-heading);font-size:11px;font-weight:800;color:#fff}.loot-item-desc{font-size:9px;color:#94a3b8}.btn-take-item{padding:4px 10px;font-size:10px;font-weight:800;border-radius:6px;background:#f1c40f26;border:1px solid var(--accent-gold);color:var(--accent-gold);cursor:pointer;transition:all .15s}.btn-take-item:hover:not(:disabled){background:var(--accent-gold);color:#000}.btn-take-item:disabled{opacity:.4;cursor:not-allowed;border-color:#555;color:#777}.corpse-inventory-modal{background:linear-gradient(145deg,#161224,#0f0c18)!important;border:1.5px solid #eab308!important;box-shadow:0 0 25px #eab30840!important}.corpse-category-title{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;margin:6px 0 3px 2px;display:flex;align-items:center;gap:6px}.corpse-item-row{display:flex;justify-content:space-between;align-items:center;background:#1a1628cc;border:1px solid rgba(234,179,8,.2);border-radius:8px;padding:8px 10px;transition:all .2s ease}.corpse-item-row:hover:not(.disabled){border-color:#eab30880;background:#241e38e6}.corpse-item-row.looted{opacity:.4;filter:grayscale(.8);border-color:#ffffff14}.monster-statblock-modal{background:#14121e!important;border:1.5px solid var(--accent-gold)!important;max-width:440px!important;padding:16px!important}.statblock-divider{border:none;border-top:1px solid rgba(229,184,92,.35);margin:8px 0}.monster-vitals{display:flex;flex-direction:column;gap:3px;font-size:11px;color:#e2e8f0}.monster-abilities-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;text-align:center;background:#00000080;border:1px solid rgba(229,184,92,.25);border-radius:8px;padding:6px 4px}.stat-cell{display:flex;flex-direction:column;gap:2px}.stat-cell .stat-label{font-size:9px;font-weight:800;color:var(--accent-gold)}.stat-cell .stat-val{font-size:10px;font-weight:700;color:#fff}.monster-traits-list{display:flex;flex-direction:column;gap:3px;font-size:11px;color:#e2e8f0}.monster-section-title{font-family:var(--font-heading);font-size:12px;font-weight:800;color:var(--accent-gold);letter-spacing:.5px;margin-top:4px}.monster-traits-block,.monster-actions-block{display:flex;flex-direction:column;gap:6px;margin-top:4px}.statblock-action-item{font-size:11px;line-height:1.45;color:#cbd5e1}.statblock-action-name{font-weight:800;color:#fff;font-style:italic}.combat-reaction-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#08060ee0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:100;display:flex;align-items:center;justify-content:center;padding:16px;animation:fadeInReaction .18s ease-out}@keyframes fadeInReaction{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.combat-reaction-card{width:100%;max-width:360px;background:linear-gradient(180deg,#1b162a,#100d1c);border:1.5px solid var(--accent-gold);border-radius:14px;box-shadow:0 10px 30px #000000f2,0 0 20px #e5b85c59;padding:14px;display:flex;flex-direction:column;gap:10px}.reaction-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(229,184,92,.3);padding-bottom:8px}.reaction-header-left{display:flex;align-items:center;gap:8px}.reaction-badge{font-size:8.5px;font-weight:800;background:#38bdf833;color:#38bdf8;border:1px solid rgba(56,189,248,.4);padding:2px 6px;border-radius:4px;letter-spacing:.5px}.reaction-title{font-family:var(--font-heading);font-size:13px;font-weight:800;color:var(--accent-gold)}.reaction-header-right{display:flex;align-items:center}.reaction-timer-val{font-family:var(--font-heading);font-size:11px;font-weight:700;color:#38bdf8;background:#38bdf826;border:1px solid rgba(56,189,248,.35);padding:2px 8px;border-radius:12px;letter-spacing:.5px}.reaction-timer-val.reaction-timer-urgent{color:#ef4444;background:#ef444433;border-color:#ef444480;animation:pulseReactionAlert .8s infinite alternate ease-in-out}@keyframes pulseReactionAlert{0%{transform:scale(1);opacity:.85}to{transform:scale(1.06);opacity:1;box-shadow:0 0 10px #ef444499}}.reaction-waiting-banner{background:linear-gradient(135deg,#1e1b2ef2,#100d1cf2)!important;border:1px solid rgba(168,85,247,.4)!important}.reaction-countdown-badge{font-size:11px;font-weight:700;color:#c084fc;background:#a855f733;border:1px solid rgba(168,85,247,.4);padding:3px 8px;border-radius:10px;margin-left:auto}.reaction-body{display:flex;flex-direction:column;gap:8px}.reaction-trigger-info{font-size:11px;color:#cbd5e1}.reaction-roll-box{background:#00000080;border:1px solid rgba(239,68,68,.4);border-radius:8px;padding:8px 10px;display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#fff}.reaction-roll-box strong{color:gold}.reaction-roll-box .hit-badge{background:#ef444433;color:#f87171;border:1px solid rgba(239,68,68,.4);font-size:9px;font-weight:800;padding:2px 6px;border-radius:4px}.reaction-effect-box{background:#2ecc7114;border:1px solid rgba(46,204,113,.3);border-radius:8px;padding:8px 10px;display:flex;flex-direction:column;gap:3px}.reaction-effect-title{font-size:10px;font-weight:800;color:#4ade80}.reaction-effect-desc{font-size:10.5px;color:#e2e8f0;line-height:1.35}.reaction-cost-row{font-size:10px;color:#94a3b8;border-top:1px dashed rgba(255,255,255,.1);padding-top:6px}.reaction-cost-row strong{color:#b589fa}.reaction-actions{display:flex;flex-direction:column;gap:6px;margin-top:4px}.reaction-action-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:9px 12px;border-radius:8px;font-family:var(--font-heading);font-size:11.5px;font-weight:800;cursor:pointer;transition:all .15s ease}.reaction-action-btn.accept-btn{background:linear-gradient(135deg,#1d4ed8,#1e40af);color:#fff;border:1.5px solid #60a5fa;box-shadow:0 0 10px #3b82f666}.reaction-action-btn.accept-btn:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-1px);box-shadow:0 0 15px #3b82f699}.reaction-action-btn.decline-btn{background:#ffffff0f;color:#94a3b8;border:1px solid rgba(255,255,255,.15)}.reaction-action-btn.decline-btn:hover{background:#ef444426;color:#f87171;border-color:#ef444459}.reaction-options-container{display:flex;flex-direction:column;gap:6px;margin-top:4px}.reaction-option-card{display:flex;flex-direction:column;gap:3px;background:#0f172a99;border:1.5px solid rgba(255,255,255,.12);border-radius:8px;padding:8px 10px;cursor:pointer;transition:all .15s ease}.reaction-option-card:hover{background:#1e293bcc;border-color:#e5b85c66}.reaction-option-card.selected{background:#e5b85c1f;border-color:var(--accent-gold);box-shadow:0 0 10px #e5b85c40}.reaction-option-header{display:flex;justify-content:space-between;align-items:center}.reaction-option-name{font-family:var(--font-heading);font-size:11.5px;font-weight:800;color:#fff}.reaction-option-card.selected .reaction-option-name{color:var(--accent-gold)}.reaction-option-cost{font-size:9px;font-weight:700;color:#94a3b8;background:#ffffff14;padding:1px 5px;border-radius:4px}.reaction-option-desc{font-size:10px;color:#cbd5e1;line-height:1.3}.portent-dice-selector{display:flex;gap:8px;margin-top:8px}.btn-portent-die{flex:1;padding:7px 10px;background:#0f172acc;border:1px solid rgba(168,85,247,.4);border-radius:6px;color:#cbd5e1;font-family:inherit;font-size:11px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px;transition:all .15s ease}.btn-portent-die:hover{background:#a855f72e;border-color:#a855f7b3;color:#f1f5f9}.btn-portent-die.selected{background:#a855f74d;border-color:#c084fc;color:#fff;font-weight:800;box-shadow:0 0 10px #a855f780}.combat-flee-card{max-width:400px}.flee-badge{background:#e67e2233!important;color:#e67e22!important;border-color:#e67e2266!important}.flee-distance-info{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:8px 10px;font-size:11.5px;line-height:1.4;color:#eee}.flee-factors-grid{display:flex;flex-direction:column;gap:6px;background:#0a081099;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:8px 10px}.flee-factor-row{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#ccc}.flee-factor-name{display:flex;align-items:center;gap:5px}.flee-factor-mod{font-weight:700;font-family:monospace;font-size:11.5px}.flee-factor-mod.positive{color:#2ecc71}.flee-factor-mod.negative{color:#e74c3c}.flee-factor-mod.neutral{color:#aaa}.flee-chance-hero-box{display:flex;flex-direction:column;align-items:center;gap:6px;background:radial-gradient(circle at center,#e5b85c26,#100d1ccc);border:1.5px solid rgba(229,184,92,.35);border-radius:10px;padding:10px}.flee-chance-label{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:#bbb}.flee-chance-value{font-family:var(--font-heading);font-size:28px;font-weight:900;color:var(--accent-gold);text-shadow:0 0 12px rgba(229,184,92,.6)}.flee-chance-value.high{color:#2ecc71;text-shadow:0 0 12px rgba(46,204,113,.6)}.flee-chance-value.low{color:#e74c3c;text-shadow:0 0 12px rgba(231,76,60,.6)}.flee-chance-bar-wrap{width:100%;height:8px;background:#0009;border:1px solid rgba(255,255,255,.15);border-radius:4px;overflow:hidden}.flee-chance-bar-fill{height:100%;background:linear-gradient(90deg,#e74c3c,#f1c40f,#2ecc71);transition:width .3s cubic-bezier(.4,0,.2,1)}.flee-warning-cost{font-size:10.5px;color:#f39c12;text-align:center;line-height:1.4;background:#f39c1214;border:1px solid rgba(243,156,18,.25);border-radius:6px;padding:6px}.reaction-action-btn.flee-confirm-btn{background:linear-gradient(135deg,#d35400,#e67e22);color:#fff;border:1.5px solid #f39c12;box-shadow:0 0 10px #e67e2266}.reaction-action-btn.flee-confirm-btn:hover{background:linear-gradient(135deg,#e67e22,#f39c12);box-shadow:0 0 15px #e67e2299;transform:translateY(-1px)}.combat-concentration-banner{position:absolute;top:8px;left:50%;transform:translate(-50%);z-index:45;display:flex;align-items:center;justify-content:space-between;gap:8px;width:max-content;max-width:calc(100% - 24px);background:linear-gradient(135deg,#1c1230eb,#100c1ef5);border:1px solid rgba(192,132,252,.55);border-radius:20px;padding:4px 8px 4px 12px;box-shadow:0 4px 16px #000c,0 0 14px #a855f759;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-sizing:border-box;animation:slideDownConc .25s cubic-bezier(.16,1,.3,1);pointer-events:auto}@keyframes slideDownConc{0%{transform:translate(-50%,-15px);opacity:0}to{transform:translate(-50%);opacity:1}}.concentration-banner-content{display:flex;align-items:center;gap:6px;overflow:hidden;white-space:nowrap}.concentration-banner-icon{font-size:13px;filter:drop-shadow(0 0 5px rgba(168,85,247,.8));flex-shrink:0}.concentration-banner-label{font-family:var(--font-heading);font-size:11px;font-weight:700;color:#d8b4fe;letter-spacing:.3px;flex-shrink:0}.concentration-banner-spell{font-family:var(--font-heading);font-size:11px;font-weight:800;color:#fff;text-shadow:0 0 8px rgba(192,132,252,.6);overflow:hidden;text-overflow:ellipsis}.btn-drop-concentration{background:#ef444426;border:1px solid rgba(239,68,68,.6);color:#ef4444;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:900;cursor:pointer;flex-shrink:0;transition:all .15s ease;margin-left:4px;line-height:1;padding:0}.btn-drop-concentration:hover{background:#ef4444e6;border-color:#ef4444;color:#fff;box-shadow:0 0 10px #ef4444b3;transform:scale(1.12)}.btn-drop-concentration:active{transform:scale(.95)}.combat-aim-banner{position:absolute;top:8px;left:8px;right:8px;z-index:50;background:linear-gradient(135deg,#1a1014f2,#0f0a0efa);border:1.5px solid #ef4444;border-radius:10px;padding:6px 10px;box-shadow:0 4px 20px #000000d9,0 0 15px #ef444466;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:slideDownAim .2s cubic-bezier(.16,1,.3,1)}.combat-aim-banner.banner-aim-summon{border:1.5px solid #38bdf8!important;box-shadow:0 4px 20px #000000d9,0 0 15px #38bdf866!important}@keyframes slideDownAim{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.aim-banner-grid{display:flex;align-items:center;gap:10px;width:100%;padding:2px 4px}.aim-banner-center-col{display:flex;flex-direction:column;justify-content:center;gap:3px;flex:1;min-width:0;overflow:hidden}.aim-row-title{display:flex;align-items:center;gap:6px;white-space:nowrap;overflow:hidden}.aim-title-text{font-family:var(--font-heading);font-size:13px;font-weight:800;color:#fff;letter-spacing:.3px;text-overflow:ellipsis;overflow:hidden}.aim-cost-pip,.aim-slot-pip{font-size:13px;line-height:1;flex-shrink:0}.aim-row-target{display:flex;align-items:center;white-space:nowrap;overflow:hidden}.aim-target-text{font-size:12px;font-weight:600;color:#cbd5e1;letter-spacing:.2px;text-overflow:ellipsis;overflow:hidden}.aim-highlight-ac{font-weight:800;color:#38bdf8;margin-left:3px;font-size:12px}.aim-highlight-save{font-weight:800;color:#f87171;margin-left:3px;font-size:12px}.aim-banner-right-col{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-shrink:0}.btn-confirm-aim{display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#16a34a,#15803d);border:1.5px solid #4ade80;color:#fff;border-radius:6px;cursor:pointer;box-shadow:0 0 10px #4ade8066;animation:aimConfirmPulse 1s infinite alternate ease-in-out;transition:all .15s ease;height:34px;min-width:52px;padding:1px 7px;overflow:hidden;box-sizing:border-box}.btn-confirm-aim:hover{background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:0 0 14px #4ade80b3}.aim-btn-damage{display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:#fff;letter-spacing:.3px;line-height:1.1;text-shadow:0 1px 2px rgba(0,0,0,.5);white-space:nowrap}.aim-btn-chance{display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:#fff;letter-spacing:.4px;line-height:1.1;text-shadow:0 1px 2px rgba(0,0,0,.5);white-space:nowrap}.aim-btn-chance.metric-disadvantage{color:#fca5a5}.aim-btn-chance.metric-advantage{color:#86efac}.aim-btn-label{display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:#fff;letter-spacing:.5px;line-height:1.1;text-shadow:0 1px 2px rgba(0,0,0,.4);white-space:nowrap}.aim-btn-label.aim-btn-label-solo{font-size:11px}.btn-cancel-aim{display:inline-flex;align-items:center;justify-content:center;background:#991b1bd9;border:1px solid rgba(239,68,68,.45);color:#fff;width:28px;height:28px;border-radius:6px;font-size:13px;font-weight:900;cursor:pointer;transition:all .15s ease;flex-shrink:0;padding:0;box-sizing:border-box}.btn-cancel-aim:hover{background:#dc2626;border-color:#ef4444;color:#fff;box-shadow:0 0 10px #ef4444b3}.aim-banner-single-row{align-items:center}.aim-banner-single-row .btn-confirm-aim{min-height:28px;height:28px;flex-direction:row;padding:2px 10px}.aim-banner-single-row .aim-banner-center-col{flex-direction:row;align-items:center;gap:6px}.aim-move-sep{color:#ffffff4d;font-size:10px}.tile-missile-badge{position:absolute;top:-4px;right:-4px;z-index:12;font-size:10.5px;font-weight:900;color:#fff;background:linear-gradient(135deg,#9333ea,#3b82f6);border:1.5px solid #c084fc;border-radius:10px;padding:1px 5px;box-shadow:0 0 10px #a855f7e6;pointer-events:none;animation:missileBadgeBounce .4s ease-out}@keyframes missileBadgeBounce{0%{transform:scale(.4);opacity:0}80%{transform:scale(1.2);opacity:1}to{transform:scale(1)}}.map-tile.tile-aim-summon{background:#38bdf859!important;border:1.5px solid #38bdf8!important;box-shadow:inset 0 0 10px #38bdf899,0 0 8px #38bdf8b3!important;cursor:crosshair!important;animation:aimPulseSummon .8s ease-in-out infinite alternate}@keyframes aimPulseSummon{0%{background:#38bdf840}to{background:#38bdf880}}.map-tile.tile-aim-target{background:#ef444466!important;border:1.5px solid #ef4444!important;box-shadow:inset 0 0 10px #ef4444b3,0 0 8px #ef4444cc!important;cursor:crosshair!important;animation:aimPulseSingle .8s ease-in-out infinite alternate}@keyframes aimPulseSingle{0%{background:#ef44444d}to{background:#ef444499}}.map-tile.tile-aim-aoe{background:#f9731659!important;border:1px solid rgba(249,115,22,.8)!important;box-shadow:inset 0 0 8px #f9731699!important;cursor:crosshair!important}.map-tile.tile-aim-aoe-center{background:#ef44448c!important;border:1.5px solid #ef4444!important;box-shadow:inset 0 0 12px #ef4444e6,0 0 10px #ef4444!important;cursor:crosshair!important}.map-tile.tile-aim-cone{background:linear-gradient(135deg,#ef444473,#f59e0b59)!important;border:1px solid rgba(245,158,11,.8)!important;box-shadow:inset 0 0 10px #ef444480!important;cursor:crosshair!important;animation:aimFlameFlicker .6s infinite alternate ease-in-out}@keyframes aimFlameFlicker{0%{filter:brightness(1)}to{filter:brightness(1.25)}}.map-tile.tile-aim-cube{background:linear-gradient(135deg,#ef444473,#f9731659)!important;border:1px solid rgba(249,115,22,.85)!important;box-shadow:inset 0 0 10px #ef444499,0 0 8px #f9731680!important;cursor:crosshair!important;animation:aimPulseCube .7s infinite alternate ease-in-out}@keyframes aimPulseCube{0%{filter:brightness(1)}to{filter:brightness(1.25)}}.map-tile.tile-aim-emanation{background:#3b82f659!important;border:1px solid rgba(96,165,250,.8)!important;box-shadow:inset 0 0 10px #3b82f699!important;cursor:crosshair!important;animation:aimPulseWave 1s ease-in-out infinite alternate}@keyframes aimPulseWave{0%{box-shadow:inset 0 0 6px #3b82f666}to{box-shadow:inset 0 0 14px #60a5facc}}.map-tile.tile-aim-out{opacity:.35!important;cursor:not-allowed!important}.map-tile.tile-aim-selected{background:#22c55e73!important;border:2px solid #22c55e!important;box-shadow:inset 0 0 12px #22c55ecc,0 0 14px #22c55e!important;animation:aimSelectedPulse .9s infinite alternate ease-in-out!important}@keyframes aimSelectedPulse{0%{filter:brightness(1)}to{filter:brightness(1.3);box-shadow:inset 0 0 14px #22c55e,0 0 18px #4ade80!important}}.map-tile.tile-path-step{background:#22c55e59!important;border:1.5px solid #22c55e!important;box-shadow:inset 0 0 10px #22c55e99,0 0 8px #22c55ecc!important;cursor:pointer!important;animation:pathPulseGreen 1s ease-in-out infinite alternate}@keyframes pathPulseGreen{0%{background:#22c55e40;box-shadow:inset 0 0 8px #22c55e66}to{background:#22c55e73;box-shadow:inset 0 0 12px #22c55eb3,0 0 10px #22c55e}}.map-tile.tile-path-hazard{background:#ef444473!important;border:2px solid #ef4444!important;box-shadow:inset 0 0 12px #ef4444cc,0 0 12px #ef4444!important;cursor:pointer!important;animation:pathPulseRed .65s ease-in-out infinite alternate}@keyframes pathPulseRed{0%{background:#ef444459;filter:brightness(1)}to{background:#ef444499;filter:brightness(1.25);box-shadow:inset 0 0 16px #ef4444e6,0 0 14px #f87171}}.map-tile.tile-path-hand{background:#38bdf859!important;border:1.5px solid #38bdf8!important;box-shadow:inset 0 0 10px #38bdf899,0 0 8px #38bdf8cc!important;cursor:pointer!important;animation:pathPulseCyan 1s ease-in-out infinite alternate}@keyframes pathPulseCyan{0%{background:#38bdf840;box-shadow:inset 0 0 8px #38bdf866}to{background:#38bdf873;box-shadow:inset 0 0 12px #38bdf8b3,0 0 10px #38bdf8}}.mm-distributor-container{display:flex;flex-direction:column;gap:10px;width:100%}.mm-dart-pool-card{background:linear-gradient(135deg,#9333ea2e,#3b82f626);border:1px solid rgba(168,85,247,.35);border-radius:8px;padding:8px 12px;display:flex;flex-direction:column;align-items:center;gap:4px}.mm-dart-pool-card.complete{border-color:#4ade8080;background:linear-gradient(135deg,#10b9812e,#3b82f626)}.mm-dart-pool-title{font-size:11px;font-weight:700;color:#c084fc;text-transform:uppercase;letter-spacing:.5px}.mm-dart-pips{display:flex;gap:8px;font-size:18px}.mm-dart-pip{display:inline-flex;align-items:center;justify-content:center;transition:transform .2s ease,opacity .2s ease}.mm-dart-pip.ready{opacity:1;filter:drop-shadow(0 0 6px #c084fc);transform:scale(1.1)}.mm-dart-pip.spent{opacity:.3;filter:grayscale(1);transform:scale(.9)}.mm-dart-status{font-size:12px;color:#e2e8f0}.mm-presets-row{display:flex;gap:6px;justify-content:center;flex-wrap:wrap}.btn-mm-preset{background:#1e293bd9;border:1px solid rgba(148,163,184,.25);color:#94a3b8;font-size:10.5px;font-weight:600;padding:4px 10px;border-radius:5px;cursor:pointer;transition:all .15s ease}.btn-mm-preset:hover{background:#334155e6;color:#f1f5f9;border-color:#38bdf8}.mm-targets-list{display:flex;flex-direction:column;gap:8px;width:100%}.mm-target-card{display:flex;align-items:center;justify-content:space-between;background:#0f172abf;border:1px solid rgba(71,85,105,.4);border-radius:8px;padding:8px 12px;gap:10px;transition:border-color .2s ease,background .2s ease}.mm-target-card.selected{border-color:#c084fcb3;background:#581c8733;box-shadow:0 0 10px #a855f733}.mm-target-info{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.mm-target-avatar{font-size:24px;flex-shrink:0}.mm-target-details{display:flex;flex-direction:column;gap:2px;min-width:0}.mm-target-name{font-size:13px;font-weight:700;color:#f1f5f9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mm-target-meta{font-size:10px;color:#94a3b8}.mm-target-dmg-preview{font-size:10px;font-weight:600;color:#c084fc}.mm-stepper{display:flex;align-items:center;gap:6px;flex-shrink:0}.mm-step-btn{width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:#1e293be6;border:1px solid rgba(148,163,184,.35);border-radius:6px;color:#f8fafc;font-size:16px;font-weight:700;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .15s ease}.mm-step-btn:hover:not(:disabled){background:#3b82f6;border-color:#60a5fa;transform:scale(1.05)}.mm-step-btn:disabled{opacity:.3;cursor:not-allowed}.mm-step-count{min-width:42px;text-align:center;font-size:12px;font-weight:800;color:#64748b;padding:3px 6px;background:#0000004d;border-radius:4px}.mm-step-count.active{color:#c084fc;background:#9333ea33;border:1px solid rgba(168,85,247,.4)}.mm-action-footer{width:100%;margin-top:4px}.btn-mm-launch{width:100%;padding:10px;font-size:13px;font-weight:800;border-radius:8px;background:linear-gradient(135deg,#9333ea,#3b82f6);border:1px solid #c084fc;color:#fff;cursor:pointer;box-shadow:0 4px 14px #9333ea66;transition:all .2s ease}.btn-mm-launch:hover:not(:disabled){filter:brightness(1.15);transform:translateY(-1px)}.btn-mm-launch:disabled{background:#33415580;border-color:#64748b4d;color:#64748b;box-shadow:none;cursor:not-allowed}.bg3-slot-tier{display:flex;align-items:center;gap:3px;background:#0f172a99;padding:2px 5px;border-radius:4px;border:1px solid rgba(56,189,248,.2)}.bg3-slot-tier-label{font-size:9px;font-weight:800;color:#38bdf8;font-family:var(--font-heading, serif);letter-spacing:.5px}.bg3-slot-pips-group{display:flex;align-items:center;gap:3px}.slot-picker-container{display:flex;flex-direction:column;gap:8px;width:100%}.slot-picker-info-banner{font-size:11px;color:#94a3b8;background:#1e293b99;border:1px solid rgba(148,163,184,.2);border-radius:6px;padding:6px 10px;text-align:center}.slot-picker-cards-list{display:flex;flex-direction:column;gap:8px}.slot-picker-card{border-color:#38bdf866;background:linear-gradient(180deg,#0f172af2,#0a1020fa)}.slot-picker-card:hover:not(:disabled){border-color:#38bdf8;background:linear-gradient(180deg,#1e3a8a66,#0f172afa);transform:translateY(-1px);box-shadow:0 4px 14px #38bdf840}.slot-picker-card .card-icon{font-family:var(--font-heading, serif);font-size:18px;font-weight:900;color:#38bdf8;background:#38bdf81f;border:1.5px solid rgba(56,189,248,.45);box-shadow:0 0 10px #38bdf833 inset}.slot-picker-card .card-title-text{white-space:nowrap}.slot-picker-roman-badge{font-size:16px;font-weight:900;color:#38bdf8;background:#38bdf826;border:1.5px solid rgba(56,189,248,.5);border-radius:6px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-family:var(--font-heading, serif)}.slot-count-pill{background:#38bdf833;color:#38bdf8;font-weight:700;padding:2px 6px;border-radius:4px;border:1px solid rgba(56,189,248,.4)}.equip-btn{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;border:none;font-weight:700;font-size:12px;padding:8px 14px;border-radius:8px;cursor:pointer}.gold-btn{background:linear-gradient(135deg,#d97706,#b45309);color:#fff;border:none;font-weight:700;font-size:12px;padding:8px 14px;border-radius:8px;cursor:pointer}.danger-btn{background:linear-gradient(135deg,#ef4444,#991b1b);color:#fff;border:none;font-weight:700;font-size:12px;padding:8px 10px;border-radius:8px;cursor:pointer}.enter-dungeon-btn{background:linear-gradient(135deg,#dc2626,#991b1b);color:#fff;border:none;font-weight:800;font-family:var(--font-heading);font-size:14px;padding:12px 20px;border-radius:10px;cursor:pointer;margin-top:14px;width:100%;box-shadow:0 4px 15px #dc262680}.item-actions-modal{max-width:300px}.item-actions-list{display:flex;flex-direction:column;gap:10px}.item-actions-list .action-btn{background:#1e1c2de6;color:#fff;border:1px solid var(--panel-border);font-weight:700;font-size:13px;padding:12px 14px;border-radius:10px;cursor:pointer;text-align:center;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background .2s}.item-actions-list .action-btn:hover{background:#282637e6}.item-actions-list .equip-btn{background:linear-gradient(135deg,#3b82f6,#1d4ed8);text-align:center}.item-actions-list .gold-btn{background:linear-gradient(135deg,#d97706,#b45309);text-align:center}.item-actions-list .danger-btn{background:linear-gradient(135deg,#ef4444,#991b1b);text-align:center}.btn-equip-single,.btn-equip-one,.btn-equip-two{display:inline-flex!important;align-items:center;justify-content:center;gap:6px}.action-tab-btn{background:#1e1c2acc;border:1px solid var(--panel-border);color:var(--text-color);padding:8px 16px;border-radius:20px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;outline:none;white-space:nowrap}.action-tab-btn:hover{background:#282634e6}.action-tab-btn.active{background:var(--accent-gold);color:#111;border-color:var(--accent-gold);box-shadow:0 0 10px #ffb84d4d}.spell-level-tabs{display:flex;gap:6px;margin-bottom:12px;overflow-x:auto;padding-bottom:4px}.spell-tab-btn{background:#2d374899;border:1px solid rgba(160,174,192,.3);color:var(--text-color);width:32px;height:32px;border-radius:50%;font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;flex-shrink:0}.spell-tab-btn:hover{background:#4a5568cc}.spell-tab-btn.active{background:linear-gradient(135deg,#8b5cf6,#6d28d9);color:#fff;border-color:#a78bfa;box-shadow:0 0 8px #8b5cf680}.long-rest-card{background:#181626f2;border:1px solid rgba(212,175,55,.25);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:8px}.long-rest-portent-box{background:linear-gradient(135deg,#581c8773,#1e1b2ef2);border:1px solid rgba(192,132,252,.5);border-radius:12px;padding:14px;box-shadow:0 0 16px #a855f740;display:flex;flex-direction:column;gap:8px}.portent-dice-row{display:flex;gap:12px;align-items:center;margin:6px 0;flex-wrap:wrap}.portent-die-badge{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;background:linear-gradient(135deg,#9333ea59,#4f46e573);border:1.5px solid #c084fc;border-radius:10px;color:#fff;font-family:var(--font-heading);font-size:16px;font-weight:800;box-shadow:0 0 12px #c084fc66,inset 0 0 8px #a855f733;text-shadow:0 0 8px rgba(255,255,255,.7);animation:portentGlow 2.5s infinite alternate ease-in-out}@keyframes portentGlow{0%{box-shadow:0 0 6px #c084fc4d;transform:scale(1)}to{box-shadow:0 0 15px #c084fcb3;transform:scale(1.02)}}.long-rest-resource-item{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:8px;font-size:12px;color:#e2e8f0}.feature-resource-display{margin-top:10px;margin-bottom:10px;padding:10px 12px;background:#ffd7000f;border:1px solid rgba(255,215,0,.3);border-radius:8px;display:flex;flex-direction:column;gap:6px}.long-rest-cantrip-card{background:linear-gradient(135deg,#0ea5e91f,#1e1b2ef2);border:1px solid rgba(56,189,248,.4);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:8px}.btn-swap-cantrip{background:linear-gradient(135deg,#0ea5e940,#0284c759);border:1px solid #38bdf8;color:#e0f2fe;padding:8px 14px;border-radius:8px;font-size:12px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:all .2s ease}.btn-swap-cantrip:hover{background:linear-gradient(135deg,#0ea5e973,#0284c78c);border-color:#7dd3fc;box-shadow:0 0 10px #38bdf866}.cantrip-picker-card{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#181626d9;border:1px solid rgba(255,255,255,.1);border-radius:10px;cursor:pointer;transition:all .2s ease}.cantrip-picker-card:hover{background:#38bdf81a;border-color:#38bdf866;transform:translateY(-1px)}.cantrip-picker-card.is-active{border-color:#38bdf8;background:#0ea5e926}.bg3-picker-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:150;background:#04060ce6;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;flex-direction:column;animation:fadeIn .18s ease-out;padding:12px;box-sizing:border-box}.bg3-picker-overlay.hidden{display:none!important}.bg3-picker-sheet{background:linear-gradient(180deg,#131929,#0a0d17);border:1.5px solid rgba(212,175,55,.55);border-radius:14px;box-shadow:0 12px 40px #000000f2,0 0 25px #d4af3733;display:flex;flex-direction:column;height:100%;max-height:100%;overflow:hidden}#modal-global-picker.bg3-picker-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;justify-content:center;align-items:center;padding:12px;background:#04060ceb;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-sizing:border-box}#modal-global-picker .bg3-picker-sheet{width:100%;max-width:500px;height:92vh;max-height:92vh}.picker-sheet-footer{padding:12px;background:#121826f2;border-top:1px solid rgba(212,175,55,.25);flex-shrink:0}.picker-sheet-footer.hidden{display:none!important}.picker-sheet-footer .picker-confirm-btn{width:100%}.picker-sheet-header{display:flex;justify-content:space-between;align-items:flex-start;padding:14px 16px;background:#121826f2;border-bottom:1px solid rgba(212,175,55,.25);flex-shrink:0}.picker-sheet-title-wrap{display:flex;flex-direction:column;gap:2px;min-width:0}.picker-sheet-title{margin:0;font-size:16px;font-weight:800;color:gold;font-family:var(--font-heading, inherit);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.picker-sheet-subtitle{margin:0;font-size:11px;color:#94a3b8;line-height:1.3}.picker-sheet-close{background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:#cbd5e1;border-radius:8px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;font-size:16px;cursor:pointer;transition:all .2s ease;flex-shrink:0}.picker-sheet-close:hover{background:#ef444440;border-color:#ef444480;color:#fca5a5}.picker-sheet-body{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:10px;-webkit-overflow-scrolling:touch}.picker-sheet-body::-webkit-scrollbar{width:6px}.picker-sheet-body::-webkit-scrollbar-track{background:#00000073;border-radius:4px}.picker-sheet-body::-webkit-scrollbar-thumb{background:#d4af3773;border-radius:4px}.picker-sheet-body::-webkit-scrollbar-thumb:hover{background:#ffd700bf}.bg3-picker-option{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:12px 14px;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;gap:6px;min-height:auto;flex-shrink:0;width:100%;box-sizing:border-box}.bg3-picker-option:hover{border-color:#d4af3780;background:#d4af370f}.bg3-picker-option:active{transform:scale(.985)}.bg3-picker-option.selected{border:1.5px solid #ffd700;background:#d4af371f;box-shadow:0 0 16px #ffd70033}.picker-option-head{display:flex;align-items:center;gap:10px}.picker-option-icon{font-size:24px;flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#0006;border-radius:8px;border:1px solid rgba(212,175,55,.3)}.picker-option-title-wrap{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.picker-option-title{margin:0;font-size:14.5px;font-weight:800;color:gold}.picker-option-badge{font-size:11px;color:#38bdf8;font-weight:600}.picker-option-check{font-size:16px;font-weight:900;color:gold;margin-left:6px;flex-shrink:0}.picker-option-desc{font-size:12px;color:#cbd5e1;line-height:1.45;margin:0}.picker-option-perks{list-style:none;padding:0;margin:4px 0 0;display:flex;flex-direction:column;gap:4px}.picker-option-perks li{font-size:11.5px;color:#e2e8f0;line-height:1.4;background:#00000040;padding:4px 8px;border-radius:6px;border-left:2px solid rgba(212,175,55,.6)}.race-block,.class-block,.bg-block,.bonus-block,.skills-block,.mastery-block{display:flex;flex-direction:column;gap:6px}.bg3-selector-card{background:linear-gradient(180deg,#151d2f,#0c111e);border:1.5px solid rgba(212,175,55,.35);border-radius:12px;padding:10px 14px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;box-sizing:border-box}.bg3-selector-card:hover{border-color:gold;background:linear-gradient(180deg,#1b253b,#101728);box-shadow:0 0 16px #ffd70040}.bg3-selector-card:active{transform:scale(.99)}.selector-card-left{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.selector-card-icon{font-size:24px;width:40px;height:40px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#0006;border-radius:10px;border:1px solid rgba(212,175,55,.3)}.selector-card-info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.selector-card-label{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#94a3b8;font-weight:700}.selector-card-title{margin:0;font-size:14.5px;font-weight:800;color:gold;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.selector-card-desc{font-size:11.5px;color:#cbd5e1;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.selector-card-action-btn{background:#d4af3726;border:1px solid rgba(212,175,55,.4);color:gold;font-size:11px;font-weight:700;padding:6px 12px;border-radius:6px;white-space:nowrap;flex-shrink:0;display:flex;align-items:center;gap:4px}.bg3-selector-card:hover .selector-card-action-btn{background:#d4af374d;border-color:gold}.bg3-selector-card.is-empty{border:1.5px solid rgba(212,175,55,.5);background:linear-gradient(180deg,#161e30e6,#0c101af2);justify-content:space-between}.bg3-selector-card.is-empty:hover{border-color:gold;box-shadow:0 0 18px #ffd7004d;background:linear-gradient(180deg,#1e2840f2,#101623)}.bg3-selector-card.is-empty .selector-card-icon{background:#d4af371a;border-color:#d4af3759;color:#fde047}.selector-card-center-action{flex:1;text-align:center;font-size:14.5px;font-weight:800;color:gold;letter-spacing:.8px;text-transform:uppercase;font-family:var(--font-heading, inherit);text-shadow:0 1px 3px rgba(0,0,0,.8)}.selector-card-arrow{color:gold;font-size:15px;font-weight:900;opacity:.85;transition:transform .2s ease;flex-shrink:0;margin-right:4px}.bg3-selector-card.is-empty:hover .selector-card-arrow{transform:translate(3px);opacity:1}.picker-footer-actions{position:sticky;bottom:-12px;margin:10px -12px -12px;padding:12px 14px;background:#0a0e18f5;border-top:1px solid rgba(212,175,55,.35);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;justify-content:center;z-index:10}.picker-confirm-btn{width:100%;max-width:380px;padding:12px 20px!important;font-size:13.5px!important;font-weight:800!important;border-radius:8px!important;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s ease}.picker-confirm-btn:not(.disabled){background:linear-gradient(180deg,gold,#b8860b)!important;color:#080c14!important;border:1px solid #ffd700!important;box-shadow:0 4px 16px #ffd70066!important;cursor:pointer!important}.picker-confirm-btn:not(.disabled):hover{background:linear-gradient(180deg,#ffe066,#c99718)!important;box-shadow:0 6px 22px #ffd70099!important;transform:translateY(-1px)}.picker-confirm-btn.disabled{background:#121826f2!important;border:1.5px solid rgba(212,175,55,.3)!important;color:#64748b!important;box-shadow:none!important;cursor:not-allowed!important;transform:none!important}.picker-option-badges-row{margin:6px 0;display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px}.picker-option-badges-row .spell-unified-badges{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px}.spells-block{display:flex;flex-direction:column;gap:8px}.cantrips-block,.spellbook-block,.prepared-block{display:flex;flex-direction:column;gap:6px}.hero-ready-summary{background:linear-gradient(180deg,#151d2f,#0d121f)!important;border:1.5px solid rgba(212,175,55,.45)!important;border-radius:14px!important;padding:16px!important;box-shadow:0 8px 32px #0009,0 0 20px #d4af3726!important;display:flex!important;flex-direction:column!important;gap:14px!important}.hero-ready-header{display:flex;align-items:center;gap:14px;padding-bottom:12px;border-bottom:1px solid rgba(212,175,55,.25)}.ready-avatar-circle{width:52px;height:52px;border-radius:50%;background:radial-gradient(circle,#d4af3740,#0a0e18f2);border:2px solid #ffd700;display:flex;align-items:center;justify-content:center;font-size:28px;flex-shrink:0;box-shadow:0 0 14px #ffd70059}.ready-header-text{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.ready-hero-title{font-family:var(--font-heading, inherit);font-size:20px;font-weight:900;color:gold;margin:0;text-shadow:0 2px 4px rgba(0,0,0,.8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:.5px}.ready-hero-sub{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.sub-badge{font-size:11px;background:#ffffff12;border:1px solid rgba(212,175,55,.3);color:#e2e8f0;padding:2px 8px;border-radius:6px;font-weight:600}.hero-vitals-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.hero-vital-card{background:#0a0e18bf;border:1.5px solid rgba(212,175,55,.3);border-radius:10px;padding:8px 4px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;text-align:center;box-shadow:inset 0 0 10px #00000080}.hero-vital-card.vital-hp{border-color:#ef444480;background:linear-gradient(180deg,#ef44441f,#0a0e18cc)}.hero-vital-card.vital-ac{border-color:#3b82f680;background:linear-gradient(180deg,#3b82f61f,#0a0e18cc)}.hero-vital-card.vital-speed{border-color:#22c55e80;background:linear-gradient(180deg,#22c55e1f,#0a0e18cc)}.hero-vital-card.vital-init{border-color:#f59e0b80;background:linear-gradient(180deg,#f59e0b1f,#0a0e18cc)}.vital-val{font-family:var(--font-heading, inherit);font-size:15px;font-weight:900;color:#fff;letter-spacing:.5px}.vital-lbl{font-size:9px;font-weight:800;color:#94a3b8;letter-spacing:.6px;text-transform:uppercase}.hero-summary-section{display:flex;flex-direction:column;gap:8px}.summary-section-title{font-size:12px;font-weight:800;color:gold;text-transform:uppercase;letter-spacing:.8px;display:flex;align-items:center;gap:6px;border-bottom:1px solid rgba(212,175,55,.2);padding-bottom:4px}.hero-stats-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.hero-stat-card{background:#0e1420d9;border:1px solid rgba(212,175,55,.3);border-radius:8px;padding:6px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-align:center}.stat-card-label{font-size:10px;font-weight:800;color:#94a3b8;letter-spacing:.5px}.stat-card-mod{font-family:var(--font-heading, inherit);font-size:17px;font-weight:900;color:gold;line-height:1.1}.stat-card-score{font-size:11px;color:#cbd5e1;font-weight:700}.stat-card-calc{font-size:9.5px;color:#64748b;font-weight:500}.hero-features-list{display:flex;flex-direction:column;gap:5px}.feature-item-row{font-size:12px;color:#e2e8f0;background:#00000040;padding:6px 10px;border-radius:6px;border-left:2.5px solid #ffd700;line-height:1.35}.feature-item-row strong{color:gold}.hero-chips-wrap{display:flex;flex-wrap:wrap;gap:6px}.hero-chip{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;padding:4px 10px;border-radius:8px;background:#1e293bcc;border:1px solid rgba(148,163,184,.3);color:#cbd5e1}.skill-chip strong{color:#38bdf8;font-weight:800}.skill-chip.is-expertise{background:linear-gradient(135deg,#d4af3733,#1e293be6);border-color:gold;color:#fef08a}.skill-chip.is-expertise strong{color:gold}.chip-exp-tag{font-size:9.5px;color:gold;font-weight:800;background:#ffd70033;padding:1px 4px;border-radius:4px}.spells-summary-list{display:flex;flex-direction:column;gap:4px}.spell-summary-row{font-size:12px;color:#cbd5e1;background:#00000040;padding:5px 10px;border-radius:6px;border-left:2.5px solid #a855f7;line-height:1.35}.spell-summary-row strong{color:#c084fc}.hero-equip-box{background:#0000004d;border:1px solid rgba(212,175,55,.25);border-radius:8px;padding:10px 12px;display:flex;flex-direction:column;gap:6px}.equip-pkg-title{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:#f1f5f9}.gold-badge{font-family:var(--font-heading, inherit);font-size:13px;font-weight:800;color:gold;background:#d4af3726;border:1px solid rgba(212,175,55,.4);padding:2px 8px;border-radius:6px}.equip-items-summary{font-size:11.5px;color:#94a3b8;line-height:1.4}@media (max-width: 420px){.hero-vitals-grid{grid-template-columns:repeat(2,1fr)}}.stat-top-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;flex-wrap:wrap}.stat-top-bar .asi-points-badge{margin:0!important;flex:1;min-width:220px}.btn-reset-recommended{background:#d4af371f;border:1px solid rgba(212,175,55,.4);border-radius:8px;color:gold;font-family:inherit;font-size:11.5px;font-weight:700;padding:6px 12px;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.btn-reset-recommended:hover{background:#d4af3740;border-color:gold;box-shadow:0 0 12px #ffd7004d}.btn-reset-recommended:active{transform:scale(.98)}.btn-auto-distribute{width:100%;padding:12px 18px;background:linear-gradient(180deg,#d4af3738,#8a5a146b);border:1px solid #ffd700;border-radius:8px;color:gold;font-family:Cinzel,serif,Georgia;font-size:13.5px;font-weight:700;letter-spacing:1px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 14px #00000073;transition:all .2s ease}.btn-auto-distribute:hover{background:linear-gradient(180deg,#ffd70061,#b8860b99);border-color:#fff;color:#fff;box-shadow:0 0 16px #ffd70066;transform:translateY(-1px)}.btn-auto-distribute:active{transform:translateY(0) scale(.99)}.social-tab-btn{-webkit-user-select:none;user-select:none;font-family:Cinzel,serif}.social-tab-btn:hover{background:#d4af3726!important;color:#fef08a!important}.party-slot-occupied{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.party-slot-occupied:hover{transform:translateY(-2px);box-shadow:0 6px 16px #00000073;border-color:#d4af3799!important}.party-slot-empty{transition:all .2s ease}.party-slot-empty:hover{border-color:#d4af3780!important;background:#d4af370d;transform:translateY(-1px)}.party-slot-empty:hover span{opacity:1!important;color:var(--accent-gold)}.friend-card{transition:transform .15s ease,background .15s ease,border-color .15s ease}.friend-card:hover{background:#ffffff12!important;border-color:#d4af3759!important;transform:translate(2px)}
