*{box-sizing:border-box}html,body{margin:0;height:100%;background:#040a06;overflow:hidden}body{font-family:Courier New,ui-monospace,monospace;color:#8affab}*{scrollbar-width:thin;scrollbar-color:#1c3d24 #050c07}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#050c07;border-left:1px solid #142a1a}::-webkit-scrollbar-thumb{background:#1c3d24;border-radius:1px;border:1px solid #244b2f}::-webkit-scrollbar-thumb:hover{background:#2e633d;border-color:#8affab;box-shadow:0 0 6px #8affab66}::-webkit-scrollbar-thumb:active{background:#397a48;border-color:#d4ffd9}::-webkit-scrollbar-corner{background:#050c07}#app{position:relative;width:100vw;height:100vh}#scene{position:absolute;inset:0;width:100%;height:100%;display:block}#hud,#overlay{position:absolute;inset:0;pointer-events:none}#hud>*,#overlay>*{pointer-events:auto}.panel{background:#08140ceb;border:1px solid #1c3d24;box-shadow:inset 0 0 0 1px #8affab1f,0 0 10px #000c;color:#8affab}#dungeon-top-bar{position:absolute;top:10px;left:12px;right:12px;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;pointer-events:none;z-index:10}#dungeon-top-bar>*{pointer-events:auto}#dungeon-telemetry-left{display:flex;gap:8px;align-items:center;justify-self:start}#clock{padding:4px 10px;font-size:11px;letter-spacing:1px;opacity:.95;white-space:nowrap;background:#050c07;border:1px solid #1c3d24;color:#d4ffd9;font-weight:700}#compass-wrapper{display:flex;justify-content:center;align-items:center}#compass{padding:4px 14px;font-size:12px;letter-spacing:2px;background:#050c07;border:1px solid #1c3d24;color:#8affab;font-weight:700;white-space:nowrap}#compass span{color:#d4ffd9}#compass.otherworld-compass{border-color:#ffb74d;color:#ffb74d;box-shadow:0 0 10px #ffb74d59}#compass.otherworld-compass span{color:#ffe0b2}#dungeon-telemetry-right{display:flex;justify-self:end;align-items:center}#hotkeys{padding:4px 10px;font-size:10px;letter-spacing:.5px;opacity:.9;white-space:nowrap;background:#050c07;border:1px solid #1c3d24;color:#66b579}#hotkeys span{color:#8affab;font-weight:700}#location-marker,#exit-sign{position:absolute;top:48px;left:50%;transform:translate(-50%);padding:4px 14px;font-size:11.5px;letter-spacing:1px;font-weight:700;white-space:nowrap;background:#050c07f0;border:1px solid #1c3d24;border-radius:2px;box-shadow:0 0 12px #000000e6,inset 0 0 0 1px #8affab26;animation:location-marker-pulse 2s ease-in-out infinite;z-index:9}@keyframes location-marker-pulse{0%,to{box-shadow:0 0 8px #000c,inset 0 0 0 1px #8affab26}50%{box-shadow:0 0 14px #8affab59,inset 0 0 0 1px #8affab4d}}#location-marker.marker-passage,#exit-sign{color:#f1c40f;border-color:#d4ac0d}#location-marker.marker-npc{color:#57e0e0;border-color:#1abc9c}#location-marker.marker-poi{color:#8affab;border-color:#2ecc71}#location-marker.marker-hostile{color:#ff5c4d;border-color:#c0392b}#spectral-log-toast{position:absolute;top:40%;left:50%;transform:translate(-50%,-50%);max-width:720px;width:max-content;max-width:86vw;padding:12px 28px;background:#030a05e0;border:1.5px solid #2ecc71;border-radius:3px;box-shadow:0 0 30px #000000f2,0 0 16px #2ecc7159,inset 0 0 12px #2ecc7126;backdrop-filter:blur(6px);pointer-events:none;z-index:50;overflow:hidden;animation:spectral-toast-sequence 2.6s cubic-bezier(.16,1,.3,1) forwards}.spectral-log-inner{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.spectral-log-badge{font-size:10px;letter-spacing:2.5px;color:#f1c40f;opacity:.9;text-transform:uppercase;font-weight:700}.spectral-log-text{font-size:15.5px;font-weight:700;color:#eafff0;letter-spacing:.8px;line-height:1.4;text-shadow:0 0 6px rgba(138,255,171,.65),0 2px 4px rgba(0,0,0,.95)}.spectral-log-glitch-scanner{position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#8affab,#ffffff,#8affab,transparent);opacity:.45;animation:spectral-scanner-sweep 1.8s infinite ease-in-out}@keyframes spectral-scanner-sweep{0%{top:0%;opacity:0}30%{opacity:.6}70%{opacity:.6}to{top:100%;opacity:0}}@keyframes spectral-toast-sequence{0%{opacity:0;transform:translate(-50%,-46%) scale(.95) skew(-3deg);filter:drop-shadow(0 0 12px rgba(46,204,113,.9)) hue-rotate(-25deg)}4%{opacity:.95;transform:translate(-52%,-50%) scale(1.03) skew(2deg)}8%{opacity:1;transform:translate(-50%,-50%) scale(1) skew(0);filter:none}72%{opacity:1;transform:translate(-50%,-50%) scale(1);filter:none}to{opacity:0;transform:translate(-50%,-56%) scale(.97);filter:blur(2px)}}#dungeon-bottom-left{position:absolute;bottom:12px;left:12px;display:flex;flex-direction:column;gap:6px;pointer-events:none;z-index:10}#dungeon-bottom-left>*{pointer-events:auto}#party-status{display:flex;gap:8px;padding:0;pointer-events:none}.member-chip{padding:4px 8px;font-size:11.5px;width:210px;min-width:210px;max-width:210px;display:flex;gap:8px;align-items:center;background:#08140ce0;border:1px solid #1c3d24;border-radius:2px}.member-chip .actor-portrait{width:32px;height:32px;min-width:32px;background-size:cover;background-position:center;border:1px solid #1c3d24;border-radius:2px}.member-chip .actor-info{flex:1;min-width:0}.member-chip .name{font-weight:700;color:#d4ffd9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-role-tag{font-size:9px;font-weight:700;margin-right:2px}.bar{height:7px;background:#050c07;margin-top:3px;border:1px solid #1c3d24;position:relative;overflow:hidden}#log{position:absolute;bottom:12px;right:12px;width:320px;max-height:120px;overflow-y:auto;padding:6px 10px;font-size:11px;line-height:1.4;background:#050c07eb;border:1px solid #1c3d24;color:#8affab}#log div:last-child{color:#d4ffd9;font-weight:700}#battle{position:absolute;inset:0;background:radial-gradient(circle at 50% 40%,#08140ccc,#040a06f5),#050c07e0;display:flex;flex-direction:column;justify-content:space-between;padding:8px 12px}#battle.hidden{display:none}#battle:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(#12101000 50%,#00000040 50%);background-size:100% 4px;z-index:5}#battle-tactical-header{display:flex;justify-content:space-between;align-items:center;padding:6px 14px;background:#050c07;border:1px solid #1c3d24;box-shadow:inset 0 0 0 1px #8affab1f,0 0 10px #000c;color:#8affab;z-index:6}.battle-header-left{display:flex;align-items:center;gap:8px;font-size:11px}.battle-sys-logo{font-weight:700;color:#8affab;letter-spacing:1.5px;text-shadow:0 0 6px rgba(138,255,171,.45)}.battle-sys-sub{color:#4e8c5d;letter-spacing:1px;font-size:10px}.battle-header-center{padding:3px 12px;font-size:11px;font-weight:700;letter-spacing:1.5px;border-radius:2px}.phase-allied{background:#2ecc7126;border:1px solid #2ecc71;color:#8affab;box-shadow:0 0 8px #2ecc714d}.phase-enemy{background:#e74c3c26;border:1px solid #e74c3c;color:#ff7675;box-shadow:0 0 8px #e74c3c4d}.battle-header-right{display:flex;align-items:center;gap:16px;font-size:11px}.turn-stock-group{display:flex;align-items:center;gap:6px}.stock-label{color:#4e8c5d;font-size:10px;font-weight:700;letter-spacing:.5px}.stock-icons{display:flex;gap:4px;align-items:center}.icon{width:12px;height:12px;border:1px solid #244b2f;background:#08140c}.icon.full{background:#8affab;border-color:#8affab;box-shadow:0 0 6px #8affabb3}.icon.half{background:linear-gradient(90deg,#8affab 50%,#08140c 50%);border-color:#8affab;box-shadow:0 0 4px #8affab80}#enemy-rows{display:flex;flex-direction:column;gap:6px;z-index:6;margin:4px 0}#enemy-row{display:flex;gap:18px;justify-content:center;padding:10px 10px 4px}#enemy-row-rear{display:flex;gap:12px;justify-content:center;padding:4px 10px 0}#enemy-row-rear .enemy-card{width:140px;height:170px;min-width:140px;opacity:.85}.enemy-card{position:relative;width:190px;height:230px;min-width:190px;padding:0;text-align:center;background-color:#050e08;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;border:1px solid #1c3d24;border-radius:2px;box-shadow:0 0 12px #000000e6,inset 0 0 0 1px #8affab1a;transition:border-color .15s,box-shadow .15s}.enemy-card.selectable:hover{border-color:#8affab;box-shadow:0 0 16px #8affab8c,inset 0 0 0 1px #8affab59}.enemy-rank-tag{position:absolute;top:6px;left:6px;font-size:9px;font-weight:700;letter-spacing:.5px;background:#050c07e0;color:#8affab;border:1px solid #1c3d24;padding:1px 4px;z-index:5}.targeting-reticle{display:none;position:absolute;inset:4px;pointer-events:none;z-index:6}.enemy-card.selectable:hover .targeting-reticle{display:block}.reticle-tl{position:absolute;top:0;left:0;width:8px;height:8px;border-top:2px solid #8affab;border-left:2px solid #8affab}.reticle-tr{position:absolute;top:0;right:0;width:8px;height:8px;border-top:2px solid #8affab;border-right:2px solid #8affab}.reticle-bl{position:absolute;bottom:0;left:0;width:8px;height:8px;border-bottom:2px solid #8affab;border-left:2px solid #8affab}.reticle-br{position:absolute;bottom:0;right:0;width:8px;height:8px;border-bottom:2px solid #8affab;border-right:2px solid #8affab}.enemy-card .portrait-info{position:relative;z-index:5;background:linear-gradient(#050c0700,#050c07f2 45%);padding:14px 8px 6px;color:#8affab}.enemy-name-line{font-size:12px;font-weight:700;color:#d4ffd9}.enemy-affinities-line{display:flex;flex-wrap:wrap;gap:2px;justify-content:center;margin:3px 0}.enemy-card.dead{border-color:#142a1a;box-shadow:none}.enemy-card.dead .portrait-info{text-decoration:line-through;color:#4e8c5d;opacity:.6}.enemy-portrait-frame{position:absolute;inset:0;overflow:hidden;display:flex;align-items:center;justify-content:center;pointer-events:none}.enemy-portrait-sprite{position:absolute;inset:-8px;background-size:cover;background-position:center 20%;background-repeat:no-repeat;transition:filter .25s,transform .25s;will-change:transform,filter;transform-origin:center 65%}.sprite-crt-shimmer{position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(0,0,0,.18) 0px,rgba(0,0,0,.18) 1px,transparent 1px,transparent 2px);pointer-events:none;opacity:.85}.sprite-chroma-overlay{position:absolute;inset:0;background:radial-gradient(circle at 50% 40%,#8affab0d,#050c0773);mix-blend-mode:overlay;pointer-events:none}.demon-rhythm-1 .sprite-living{animation:smt-demon-sway-1 3.8s ease-in-out infinite}.demon-rhythm-2 .sprite-living{animation:smt-demon-sway-2 4.4s ease-in-out infinite}.demon-rhythm-3 .sprite-living{animation:smt-demon-sway-3 3.4s ease-in-out infinite}.demon-rhythm-4 .sprite-living{animation:smt-demon-sway-4 4s ease-in-out infinite}@keyframes smt-demon-sway-1{0%,to{transform:scale(1) translateY(0) skew(0) rotate(0);filter:drop-shadow(0 0 4px rgba(0,0,0,.8)) brightness(1)}25%{transform:scale(1.02,.985) translateY(1.5px) skew(.75deg) rotate(.4deg)}50%{transform:scale(.985,1.035) translateY(-3.5px) skew(-.5deg) rotate(-.3deg);filter:drop-shadow(0 4px 8px rgba(0,0,0,.9)) brightness(1.04)}75%{transform:scale(1.015,.99) translateY(-1px) skew(.5deg) rotate(.2deg)}}@keyframes smt-demon-sway-2{0%,to{transform:scale(1) translateY(0) skew(0) rotate(0);filter:drop-shadow(0 0 4px rgba(0,0,0,.8)) brightness(1)}30%{transform:scale(.98,1.04) translateY(-4px) skew(-.8deg) rotate(-.5deg);filter:drop-shadow(0 5px 10px rgba(0,0,0,.95)) brightness(1.05)}70%{transform:scale(1.025,.98) translateY(2px) skew(.6deg) rotate(.3deg)}}@keyframes smt-demon-sway-3{0%,to{transform:scale(1) translateY(0) skew(0) rotate(0)}40%{transform:scale(1.03,.975) translateY(2px) skew(.9deg) rotate(.4deg);filter:brightness(.98)}80%{transform:scale(.985,1.03) translateY(-3px) skew(-.7deg) rotate(-.4deg);filter:brightness(1.03)}}@keyframes smt-demon-sway-4{0%,to{transform:scale(1) translateY(0) skew(0) rotate(0)}35%{transform:scale(.99,1.025) translateY(-2.5px) skew(.6deg) rotate(.3deg)}65%{transform:scale(1.02,.98) translateY(1.5px) skew(-.8deg) rotate(-.3deg)}}.enemy-card.acting-hostile .enemy-portrait-sprite{animation:smt-hostile-surge 1.2s ease-in-out infinite alternate!important}@keyframes smt-hostile-surge{0%{transform:scale(1.02) translateY(-2px);filter:drop-shadow(0 0 6px rgba(255,92,77,.4)) brightness(1.05)}to{transform:scale(1.08) translateY(-7px) skew(1deg);filter:drop-shadow(0 0 16px rgba(255,92,77,.9)) brightness(1.22)}}.enemy-card.fx-hit .enemy-portrait-sprite{animation:smt-hit-distortion .45s ease-out!important}@keyframes smt-hit-distortion{0%{transform:scale(1) translate(0);filter:brightness(1)}15%{transform:scale(1.22,.78) translate(-10px,4px) skew(-8deg);filter:brightness(2.6) drop-shadow(-6px 0 0 rgba(255,82,82,.9)) drop-shadow(6px 0 0 rgba(0,229,255,.9))}35%{transform:scale(.88,1.15) translate(8px,-6px) skew(6deg);filter:brightness(1.8) drop-shadow(4px 0 0 rgba(255,82,82,.8))}55%{transform:scale(1.06,.95) translate(-4px,2px) skew(-3deg);filter:brightness(1.3)}75%{transform:scale(.98,1.02) translate(2px,-1px);filter:brightness(1.1)}to{transform:scale(1) translate(0);filter:brightness(1)}}.enemy-card.fx-heal .enemy-portrait-sprite{animation:smt-heal-glow .6s ease-out!important}@keyframes smt-heal-glow{0%{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.06) translateY(-4px);filter:brightness(1.5) drop-shadow(0 0 16px rgba(105,240,174,.9))}to{transform:scale(1);filter:brightness(1)}}.enemy-card.fx-repel .enemy-portrait-sprite{animation:smt-repel-warp .5s ease-out!important}@keyframes smt-repel-warp{0%{transform:scale(1)}30%{transform:scale(1.12,.9) skew(10deg);filter:brightness(2) drop-shadow(0 0 16px rgba(155,89,182,.95))}70%{transform:scale(.94,1.08) skew(-6deg);filter:brightness(1.4)}to{transform:scale(1);filter:brightness(1)}}.enemy-card.fx-down .enemy-portrait-sprite,.enemy-card.dead .sprite-dissolve{animation:smt-demon-dissolve .75s cubic-bezier(.2,.8,.3,1) forwards!important}@keyframes smt-demon-dissolve{0%{transform:scale(1) translateY(0);filter:brightness(1.8) contrast(1.4);opacity:1}25%{transform:scale(1.15,.85) skew(8deg) translateY(-4px);filter:brightness(3.2) drop-shadow(0 0 20px #8affab) invert(.6);opacity:.9}50%{transform:scale(.9,1.2) skew(-12deg) translateY(-10px);filter:grayscale(.8) brightness(1.6) drop-shadow(0 0 10px #ff5252);opacity:.6}75%{transform:scale(1.1,.3) skew(20deg) translateY(10px);filter:grayscale(1) brightness(.5);opacity:.3}to{transform:scale(.7,.05) translateY(25px);filter:grayscale(1) brightness(.1);opacity:.15}}.enemy-portrait-frame.ailment-poison .enemy-portrait-sprite{animation:smt-poison-warp 2.2s infinite ease-in-out!important;filter:sepia(.4) hue-rotate(65deg) drop-shadow(0 0 8px rgba(46,204,113,.7))!important}@keyframes smt-poison-warp{0%,to{transform:scale(1) translateY(0) skew(0)}50%{transform:scale(.97,1.05) translateY(-3px) skew(2deg);filter:sepia(.6) hue-rotate(85deg) drop-shadow(0 0 14px rgba(46,204,113,.95))}}.enemy-portrait-frame.ailment-shock .enemy-portrait-sprite,.enemy-portrait-frame.ailment-stun .enemy-portrait-sprite{animation:smt-shock-jitter .1s steps(2) infinite!important;filter:brightness(1.3) drop-shadow(0 0 10px #00e5ff)!important}@keyframes smt-shock-jitter{0%{transform:translate(-2px,1px) skew(-2deg)}50%{transform:translate(3px,-2px) skew(2deg);filter:brightness(1.7) drop-shadow(0 0 14px #00e5ff)}to{transform:translate(-1px,2px) skew(0)}}.enemy-portrait-frame.ailment-fear .enemy-portrait-sprite,.enemy-portrait-frame.ailment-panic .enemy-portrait-sprite{animation:smt-fear-tremble .15s infinite!important}@keyframes smt-fear-tremble{0%{transform:translate(0) scale(.96)}25%{transform:translate(-2px,2px) scale(.96)}50%{transform:translate(2px,-1px) scale(.95)}75%{transform:translate(-1px,-2px) scale(.96)}to{transform:translate(1px,1px) scale(.95)}}.enemy-portrait-frame.ailment-sleep .enemy-portrait-sprite,.enemy-portrait-frame.ailment-charm .enemy-portrait-sprite{animation:smt-hypnotic-sway 4.2s ease-in-out infinite!important;filter:hue-rotate(260deg) brightness(.85) drop-shadow(0 0 8px rgba(155,89,182,.6))!important}@keyframes smt-hypnotic-sway{0%,to{transform:scale(.98,1.02) rotate(-2deg)}50%{transform:scale(1.02,.98) rotate(2deg)}}#battle-bottom{display:flex;gap:10px;height:280px;z-index:6}#party-row{display:flex;flex-direction:column;gap:6px;width:280px;overflow-y:auto}.actor-row{padding:6px 8px;font-size:11.5px;cursor:pointer;display:flex;gap:8px;align-items:center;background:#08140cd9;border:1px solid #1c3d24;color:#8affab;transition:border-color .15s,background .15s}.actor-row.selectable:hover{background:#8affab14;border-color:#2e633d}.actor-row.selected{border-color:#8affab;background:#8affab24;box-shadow:inset 0 0 8px #8affab40}.actor-row.active-turn{border-color:#8affab;background:#8affab29;box-shadow:0 0 10px #8affab59,inset 0 0 8px #8affab33;animation:active-actor-pulse 1.8s infinite ease-in-out}@keyframes active-actor-pulse{0%,to{border-color:#8affab;box-shadow:0 0 6px #8affab4d}50%{border-color:#d4ffd9;box-shadow:0 0 14px #8affab99}}.active-turn-tag{font-size:9px;background:#154524;color:#d4ffd9;border:1px solid #8affab;padding:1px 4px;border-radius:2px;margin-left:4px;font-weight:700}.actor-row.spent{opacity:.4;cursor:default}.actor-portrait{width:58px;height:58px;flex:none;background-size:cover;background-position:center 15%;border:1px solid #1c3d24}.actor-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.actor-name-row{display:flex;justify-content:space-between;align-items:center}.actor-name-text{font-size:11.5px;color:#d4ffd9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.actor-role-tag{font-size:9.5px;font-weight:700;margin-right:2px}.protagonist-tag{color:#f1c40f}.companion-tag{color:#5dade2}.down-indicator{color:#e74c3c;font-weight:700}.bar{position:relative;height:11px;background:#050c07;border:1px solid #1c3d24;overflow:hidden;display:flex;align-items:center}.bar>i{display:block;height:100%;background:#7fae5c}.bar.sp>i,.bar.mp>i{background:#2980b9}.bar-num{position:absolute;right:4px;font-size:9px;font-family:monospace;color:#d4ffd9;font-weight:700;text-shadow:0 0 2px #000}.tactic-btn{font-size:9px;font-weight:700;letter-spacing:.5px;padding:1px 4px;border-radius:2px;cursor:pointer;border:1px solid #244b2f;background:#0c2415;color:#8affab}.tactic-btn:hover{border-color:#8affab;color:#d4ffd9}.tactic-manual{border-color:#f1c40f;color:#f1c40f}.tactic-aggressive{border-color:#e74c3c;color:#ff7675}.tactic-support{border-color:#2ecc71;color:#2ecc71}.tactic-conserve{border-color:#3498db;color:#5dade2}.gun-state{font-size:10px;color:#4e8c5d;font-family:monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#command-menu{flex:1;min-width:0;padding:8px 12px;overflow-y:auto;background:#08140c;border:2px solid #244b2f;box-shadow:inset 0 0 0 1px #8affab1f;display:flex;flex-direction:column;gap:6px}.cmd-menu-header{font-size:11px;letter-spacing:1px;color:#8affab;font-weight:700;border-bottom:1px solid #1c3d24;padding-bottom:4px}.cmd-section-title{font-size:10px;letter-spacing:1px;color:#4e8c5d;font-weight:700}.cmd-select-actor-box{display:flex;justify-content:space-between;align-items:center;padding:8px 0}#command-menu .row{display:flex;flex-wrap:wrap;gap:5px}.cmd-btn{background:#0c2415;border:1px solid #1c3d24;color:#8affab;font-family:inherit;font-size:11.5px;font-weight:700;letter-spacing:.5px;padding:6px 10px;cursor:pointer;border-radius:1px;transition:background .15s,border-color .15s,color .15s}.cmd-btn:hover:not(:disabled){background:#154524;border-color:#8affab;color:#d4ffd9;box-shadow:0 0 8px #8affab4d}.cmd-btn:disabled{opacity:.35;cursor:default;border-color:#142a1a}.cmd-skill-btn{border-color:#244b2f}.cmd-gun-btn{border-color:#d35400;color:#f39c12}.synergy-menu-btn{background:#f1c40f1f;border:1px solid #f1c40f;color:#f1c40f;font-family:inherit;font-size:11.5px;font-weight:700;padding:6px 10px;cursor:pointer}.synergy-menu-btn:hover{background:#f1c40f40;box-shadow:0 0 8px #f1c40f66}.auto-round-btn{background:#e67e221f;border:1px solid #e67e22;color:#e67e22;font-family:inherit;font-size:11px;font-weight:700;padding:5px 9px;cursor:pointer}.auto-round-btn:hover{background:#e67e2240;color:#f39c12}.synergy-list{display:flex;flex-direction:column;gap:4px;margin-bottom:6px}.synergy-card-btn{text-align:left;background:#0c2415;border:1px solid #244b2f;color:#8affab;padding:6px 8px;font-family:inherit;cursor:pointer}.synergy-card-btn:hover{border-color:#f1c40f;background:#154524;color:#d4ffd9}.synergy-btn-title{font-weight:700;color:#f1c40f;font-size:12px;margin-bottom:2px}.synergy-btn-title span{font-size:10px;color:#8affab}.synergy-btn-desc{font-size:10.5px;color:#4e8c5d;line-height:1.3}#battle-log{width:290px;padding:6px 10px;font-size:11px;overflow-y:auto;background:#050c07;border:1px solid #1c3d24;color:#8affab;display:flex;flex-direction:column}.battle-log-title{font-size:10px;font-weight:700;letter-spacing:1px;color:#4e8c5d;border-bottom:1px solid #142a1a;padding-bottom:3px;margin-bottom:4px}.battle-log-feed{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:3px;line-height:1.35}.battle-log-feed div:last-child{color:#d4ffd9;font-weight:700}.ailment-tag{font-size:9px;font-weight:700;letter-spacing:.5px;color:#08140c;background:#f39c12;border-radius:2px;padding:1px 4px;vertical-align:middle}.affinity-tag{font-size:8.5px;letter-spacing:.5px;border-radius:2px;padding:1px 3px;vertical-align:middle;background:#142a1a;color:#8affab;border:1px solid #1c3d24}.affinity-tag.affinity-weak{background:#e74c3c33;border-color:#e74c3c;color:#ff7675}.affinity-tag.affinity-resist{background:#3498db33;border-color:#3498db;color:#5dade2}.affinity-tag.affinity-null{background:#7f8c8d33;border-color:#7f8c8d;color:#bdc3c7}.affinity-tag.affinity-drain{background:#2ecc7133;border-color:#2ecc71;color:#2ecc71}.affinity-tag.affinity-repel{background:#9b59b633;border-color:#9b59b6;color:#bb8fce}.floating-damage{position:absolute;top:30%;left:50%;transform:translate(-50%,-50%);font-weight:700;font-family:monospace;font-size:18px;pointer-events:none;animation:float-damage .8s ease-out forwards;z-index:20}@keyframes float-damage{0%{opacity:0;transform:translate(-50%) scale(.6)}25%{opacity:1;transform:translate(-50%,-15px) scale(1.15)}75%{opacity:1;transform:translate(-50%,-30px) scale(1)}to{opacity:0;transform:translate(-50%,-45px) scale(.9)}}.damage-damage{color:#ff7675;text-shadow:0 0 6px rgba(255,118,117,.7)}.damage-crit{color:#e74c3c;font-size:22px;text-shadow:0 0 10px rgba(231,76,60,.9)}.damage-weak{color:#f1c40f;font-size:20px;text-shadow:0 0 8px rgba(241,196,15,.9)}.damage-heal{color:#2ecc71;text-shadow:0 0 8px rgba(46,204,113,.9)}.damage-miss{color:#7f8c8d;font-size:15px}#result-screen{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#040a06e6;backdrop-filter:blur(2px);z-index:30}#result-screen.hidden{display:none}#result-box{padding:24px 32px;text-align:center;min-width:360px;max-width:580px;background:#08140c;border:2px solid #244b2f;box-shadow:0 0 20px #000000e6,inset 0 0 0 1px #8affab26;color:#8affab}.epilogue-art{width:100%;height:160px;margin-bottom:10px;background-size:cover;background-position:center;border:1px solid #244b2f}.victory-banner{font-size:11px;letter-spacing:2px;color:#2ecc71;font-weight:700;margin-bottom:6px;text-shadow:0 0 8px rgba(46,204,113,.5)}.defeat-banner{font-size:11px;letter-spacing:2px;color:#e74c3c;font-weight:700;margin-bottom:6px;text-shadow:0 0 8px rgba(231,76,60,.5)}#result-box h2{margin:0 0 12px;letter-spacing:2px;font-size:18px;color:#d4ffd9;border-bottom:1px solid #1c3d24;padding-bottom:8px}.result-summary{text-align:left;font-size:12px;line-height:1.5;color:#8affab;background:#050c07b3;padding:12px;border:1px solid #1c3d24;margin-bottom:14px}.continue-btn{background:#0c2415;border:1px solid #244b2f;color:#8affab;font-family:inherit;font-size:12px;font-weight:700;letter-spacing:1.5px;padding:10px 24px;cursor:pointer}.continue-btn:hover{background:#154524;border-color:#8affab;color:#d4ffd9;box-shadow:0 0 10px #8affab66}#dialogue{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:center;padding:32px 40px;background:#040a06a6;backdrop-filter:blur(2px);z-index:25}#dialogue.hidden{display:none}#dialogue-box{display:flex;gap:18px;width:min(920px,100%);padding:16px;background:#08140c;border:2px solid #244b2f;box-shadow:0 0 20px #000000e6,inset 0 0 0 1px #8affab26;color:#8affab}#dialogue-portrait{position:relative;width:220px;height:260px;flex:none;background-size:cover;background-position:center 15%;border:1px solid #1c3d24;box-shadow:0 0 14px #000c;background-color:#050c07}.portrait-scanline-overlay{position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(to bottom,rgba(0,0,0,.25) 0px,rgba(0,0,0,.25) 1px,transparent 2px,transparent 4px)}#dialogue-body{flex:1;min-width:0;display:flex;flex-direction:column}#dialogue-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #1c3d24;padding-bottom:6px;margin-bottom:8px}#dialogue-speaker{font-weight:700;color:#d4ffd9;font-size:14px;letter-spacing:1.5px}.dialogue-comm-tag{font-size:10px;color:#4e8c5d;letter-spacing:1px;font-weight:700}#dialogue-text{font-size:13px;line-height:1.6;color:#8affab;margin-bottom:12px;text-shadow:0 0 2px rgba(138,255,171,.25)}#dialogue-options{display:flex;flex-direction:column;gap:5px}.dialogue-choice-btn{display:flex;align-items:center;gap:8px;text-align:left;background:#0c2415;border:1px solid #1c3d24;color:#8affab;font-family:inherit;font-size:12.5px;padding:8px 12px;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.dialogue-choice-btn .choice-arrow{color:#4e8c5d;font-size:10px;transition:color .15s,transform .15s}.dialogue-choice-btn:hover{background:#154524;color:#d4ffd9;border-color:#8affab;box-shadow:0 0 8px #8affab59}.dialogue-choice-btn:hover .choice-arrow{color:#8affab;transform:translate(2px)}.dialogue-choice-btn.denki-skill-btn{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:3px;background:#08160d;border:1px solid #4e8c5d;box-shadow:0 0 10px #4e8c5d33,inset 0 0 6px #8affab14;padding:8px 12px;overflow:hidden;animation:denki-skill-pop .25s steps(4,start) forwards}@keyframes denki-skill-pop{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.denki-skill-header{display:flex;align-items:center;gap:6px;font-size:10px;letter-spacing:1px;font-family:inherit}.denki-cursor-block{color:#8affab;font-size:8px;animation:denki-blink 1s steps(2,start) infinite}@keyframes denki-blink{0%,50%{opacity:1}51%,to{opacity:0}}.denki-skill-tag{color:#8affab;font-weight:700;letter-spacing:1.2px;text-shadow:0 0 3px rgba(138,255,171,.4)}.denki-skill-verified{font-size:9px;font-weight:700;background:#12301c;color:#8affab;border:1px solid #2d6b3e;padding:1px 5px;border-radius:1px;letter-spacing:.8px}.denki-skill-content{display:flex;align-items:center;width:100%}.dialogue-choice-btn.denki-skill-btn .denki-skill-text{color:#d4ffd9;font-size:12.5px;line-height:1.45;text-shadow:0 0 2px rgba(138,255,171,.3)}.dialogue-choice-btn.denki-skill-btn:hover{background:#8affab;color:#08140c;border-color:#d4ffd9;box-shadow:0 0 14px #8affabb3}.dialogue-choice-btn.denki-skill-btn:hover .denki-skill-header{color:#08140c}.dialogue-choice-btn.denki-skill-btn:hover .denki-cursor-block{color:#08140c;animation:none}.dialogue-choice-btn.denki-skill-btn:hover .denki-skill-tag{color:#08140c;font-weight:900;text-shadow:none}.dialogue-choice-btn.denki-skill-btn:hover .denki-skill-verified{background:#08140c;color:#8affab;border-color:#08140c}.dialogue-choice-btn.denki-skill-btn:hover .denki-skill-text{color:#08140c;font-weight:700;text-shadow:none}.denki-raster-line{position:absolute;top:0;left:0;width:100%;height:2px;background:#8affab66;pointer-events:none;animation:denki-raster-sweep .6s linear 1 forwards}@keyframes denki-raster-sweep{0%{transform:translateY(-5px);opacity:.8}to{transform:translateY(50px);opacity:0}}#journal{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#050402bf}#journal.hidden{display:none}#journal-box{width:min(780px,94%);max-height:82vh;display:flex;flex-direction:column}#journal-header{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:1px solid #4a3f2a;letter-spacing:2px;font-size:12px}.journal-title-bar{display:flex;align-items:center;gap:12px}.pipboy-logo{font-weight:700;color:#e8d9ae;letter-spacing:2px}.pipboy-header-time{opacity:.7;font-size:11px;color:#d9c9a3}#journal-close{background:none;border:none;color:#d9c9a3;font-size:18px;cursor:pointer;line-height:1}#journal-close:hover{color:#f0e2b6}.journal-nav{display:flex;gap:4px;padding:8px 14px 0;border-bottom:1px solid #4a3f2a;background:#14100a66}.journal-tab{background:none;border:1px solid transparent;border-bottom:none;color:#a89a78;font-family:inherit;font-size:11px;letter-spacing:1px;padding:6px 12px;cursor:pointer}.journal-tab:hover{color:#e8d9ae;background:#d9c9a30d}.journal-tab.active{color:#f0e2b6;font-weight:700;border-color:#6b5d3f;border-bottom:1px solid #14100a;background:#14100a}#journal-body{overflow-y:auto;padding:12px 14px;min-height:320px}.journal-subnav{display:flex;gap:8px;margin-bottom:10px;border-bottom:1px solid rgba(74,63,42,.5);padding-bottom:8px}.journal-subtab{background:none;border:1px solid #4a3f2a;color:#d9c9a3;font-family:inherit;font-size:11px;padding:3px 8px;cursor:pointer}.journal-subtab:hover{border-color:#e8d9ae;color:#f0e2b6}.journal-subtab.active{background:#d9c9a326;border-color:#e8d9ae;color:#f0e2b6;font-weight:700}#journal-list{display:flex;flex-direction:column;gap:6px}#journal-empty{font-size:13px;opacity:.7;padding:10px 0}.journal-entry{padding:8px 10px;border:1px solid rgba(74,63,42,.5);background:#14100a4d}.journal-entry.complete{border-color:#7fae5c66}.journal-title{display:flex;justify-content:space-between;align-items:center;font-weight:700;color:#e8d9ae;font-size:13px;margin-bottom:4px}.journal-badge{font-size:10px;padding:2px 6px;letter-spacing:1px;border-radius:2px}.badge-active{background:#f2c94c33;color:#f2c94c;border:1px solid rgba(242,201,76,.4)}.badge-complete{background:#7fae5c33;color:#7fae5c;border:1px solid rgba(127,174,92,.4)}.journal-desc{font-size:12px;line-height:1.4;opacity:.9}#journal-reputation-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:10px}.journal-rep-card{padding:10px;border:1px solid rgba(74,63,42,.6);background:#14100a66;display:flex;flex-direction:column;gap:4px}.journal-rep-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;border-bottom:1px solid rgba(74,63,42,.4);padding-bottom:4px}.journal-rep-name{font-weight:700;color:#e8d9ae;font-size:12px}.journal-rep-region{font-size:10px;opacity:.65;letter-spacing:.5px}.journal-rep-standing{font-size:11px;text-align:right}.journal-rep-desc{font-size:11px;opacity:.8;line-height:1.35;margin-top:4px}.journal-rep-status{font-size:11px;color:#d9c9a3;font-style:italic;opacity:.9}#journal-archives-layout{display:flex;gap:12px;min-height:320px}#journal-archives-sidebar{width:240px;flex:none;display:flex;flex-direction:column;gap:4px;overflow-y:auto;max-height:50vh}.journal-archive-item{padding:8px 10px;border:1px solid rgba(74,63,42,.5);cursor:pointer;background:#14100a4d}.journal-archive-item:hover{border-color:#e8d9ae;background:#d9c9a314}.journal-archive-item.selected{border-color:#f0e2b6;background:#d9c9a326}.archive-item-name{font-size:12px;font-weight:700;color:#e8d9ae}.archive-item-sub{font-size:10px;opacity:.7;margin-top:2px}#journal-archives-viewer{flex:1;min-width:0;border:1px solid rgba(74,63,42,.6);padding:12px 14px;background:#0a080599;overflow-y:auto;max-height:50vh;font-family:monospace}.archive-view-header{border-bottom:1px solid #4a3f2a;padding-bottom:8px;margin-bottom:10px}.archive-view-title{font-weight:700;color:#e8d9ae;font-size:13px;letter-spacing:1px}.archive-view-source{font-size:11px;opacity:.7;margin-top:2px}.archive-view-body{font-size:12px;line-height:1.5;white-space:pre-wrap;color:#baffcf;text-shadow:0 0 4px rgba(63,255,138,.3)}#journal-stats-view{display:flex;flex-direction:column;gap:14px}.stats-card{padding:12px 14px;border:1px solid rgba(74,63,42,.6);background:#14100a66}.stats-section-title{font-size:11px;letter-spacing:1px;opacity:.7;margin-bottom:8px;border-bottom:1px solid rgba(74,63,42,.4);padding-bottom:4px}.stats-karma-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.stats-karma-desc{font-size:12px;opacity:.85;line-height:1.4}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 16px;font-size:12px}.stats-item{display:flex;justify-content:space-between;padding:4px 0;border-bottom:1px solid rgba(74,63,42,.3)}.stats-item span{opacity:.75}.inv-stat-badge{font-size:10px;color:#8affab;letter-spacing:.5px;opacity:.9;margin-left:4px}.inv-equipped-name{color:#e8d9ae;font-weight:700}.automap-legend-title{font-weight:700;letter-spacing:1px;color:#baffcf;margin-bottom:4px;font-size:10px;border-bottom:1px solid #1f5c37;padding-bottom:2px}.automap-stat-line{font-size:10px;opacity:.9}#shop{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#040a06d9;backdrop-filter:blur(2px);z-index:25}#shop.hidden{display:none}#shop-box{width:min(640px,92%);max-height:78vh;display:flex;flex-direction:column;background:#08140c;border:2px solid #244b2f;box-shadow:0 0 20px #000000e6,inset 0 0 0 1px #8affab26;color:#8affab}#shop-header{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:#050c07;border-bottom:1px solid #1c3d24;letter-spacing:1.5px;font-size:11.5px;color:#d4ffd9;font-weight:700}#shop-header button{background:#0c2415;border:1px solid #1c3d24;color:#8affab;font-family:inherit;font-size:11px;font-weight:700;padding:5px 12px;cursor:pointer}#shop-header button:hover{color:#d4ffd9;border-color:#8affab;background:#154524}#shop-list{overflow-y:auto;padding:10px 14px;display:flex;flex-direction:column;gap:4px}.shop-section-title{font-size:10.5px;letter-spacing:1px;color:#4e8c5d;font-weight:700;border-bottom:1px solid #142a1a;padding-bottom:3px;margin:10px 0 4px}.shop-section-title:first-child{margin-top:0}.shop-item{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;border:1px solid #142a1a;background:#050c07b3;transition:border-color .15s,background .15s}.shop-item:hover{border-color:#1c3d24;background:#0c241580}.shop-item-name{font-weight:700;color:#d4ffd9;font-size:12.5px}.shop-price{color:#f1c40f;font-weight:700}.shop-item-desc{font-size:11px;line-height:1.4;color:#4e8c5d;margin-top:2px}#inventory{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#040a06d9;backdrop-filter:blur(2px)}#inventory.hidden{display:none}#inventory-box{width:min(880px,95%);height:82vh;max-height:82vh;display:flex;flex-direction:column;background:#08140c;border:2px solid #244b2f;box-shadow:0 0 16px #000000e6,inset 0 0 0 1px #8affab26;color:#8affab}#inventory-header{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:1px solid #1c3d24;letter-spacing:2px;font-size:12px;background:#050c07}.inv-title-bar{display:flex;align-items:center;gap:14px}.inv-capacity-readout{font-size:11px;color:#4e8c5d}#inventory-close{background:none;border:1px solid #244b2f;color:#8affab;font-size:16px;cursor:pointer;padding:2px 8px;line-height:1}#inventory-close:hover{border-color:#8affab;color:#d4ffd9}.inv-actor-bar{display:flex;align-items:center;gap:6px;padding:6px 14px;background:#0e221480;border-bottom:1px solid #1c3d24}.inv-bar-label{font-size:10.5px;letter-spacing:1px;color:#4e8c5d;margin-right:4px;font-weight:700}.inv-actor-tab{background:none;border:1px solid #1c3d24;color:#66b579;font-family:inherit;font-size:11px;padding:4px 10px;cursor:pointer}.inv-actor-tab:hover{border-color:#397a48;color:#8affab}.inv-actor-tab.active{background:#8affab26;border-color:#8affab;color:#d4ffd9;font-weight:700}.inv-category-nav{display:flex;flex-wrap:wrap;gap:4px;padding:6px 14px;background:#060f09;border-bottom:1px solid #1c3d24}.inv-cat-tab{background:none;border:1px solid transparent;color:#5a9c6c;font-family:inherit;font-size:10.5px;letter-spacing:.5px;padding:5px 8px;cursor:pointer}.inv-cat-tab:hover{color:#8affab;background:#8affab0d}.inv-cat-tab.active{color:#d4ffd9;font-weight:700;border-color:#2e633d;border-bottom:1px solid #08140c;background:#08140c}#inventory-body-2col{flex:1;min-height:0;display:flex;overflow:hidden}.inv-list-pane{flex:1;min-width:0;overflow-y:auto;padding:10px 12px;display:flex;flex-direction:column;gap:4px;border-right:1px solid #1c3d24}.inv-inspect-pane{flex:1;min-width:0;overflow-y:auto;padding:12px 14px;background:#050c07bf}.inv-row-item{padding:8px 10px;border:1px solid #142a1a;background:#0a180f66;cursor:pointer;display:flex;flex-direction:column;gap:3px}.inv-row-item:hover{border-color:#2e633d;background:#8affab0f}.inv-row-item.selected{border-color:#8affab;background:#8affab1f;box-shadow:inset 0 0 6px #8affab26}.inv-row-item.equipped-row{border-left:3px solid #8affab}.inv-item-main{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:700}.inv-item-name{color:#d4ffd9}.inv-item-qty{font-size:11px;color:#8affab}.inv-item-sub{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#4e8c5d}.inv-equipped-tag{color:#f1c40f;font-weight:700;letter-spacing:.5px}.inv-empty-msg{font-size:12px;color:#4e8c5d;padding:20px 10px;text-align:center}.inspect-card{display:flex;flex-direction:column;gap:10px;height:100%}.inspect-header{border-bottom:1px solid #1c3d24;padding-bottom:6px}.inspect-title{font-size:14px;font-weight:700;color:#d4ffd9;letter-spacing:1px}.inspect-kind-badge{font-size:10px;color:#f39c12;letter-spacing:1px;margin-top:2px}.inspect-desc{font-size:11.5px;color:#8affab;opacity:.9;line-height:1.45}.inv-inspect-stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px 12px;background:#08140c99;padding:8px 10px;border:1px solid #1c3d24}.inspect-stat-item{display:flex;justify-content:space-between;font-size:11px}.inspect-stat-item span{color:#4e8c5d}.inspect-stat-item strong{color:#d4ffd9}.inspect-mods-block{padding:8px 10px;border:1px dashed #244b2f;background:#0a1a1066;font-size:11px}.inspect-subhead{font-size:10px;letter-spacing:1px;color:#f39c12;margin-bottom:4px;font-weight:700}.inspect-mod-line{font-size:10.5px;color:#8affab;margin-bottom:2px}.inspect-actions{margin-top:auto;padding-top:10px;display:flex;gap:8px}.inv-action-btn{flex:1;background:#0c2415;border:1px solid #244b2f;color:#8affab;font-family:inherit;font-size:11.5px;font-weight:700;letter-spacing:1px;padding:8px 12px;cursor:pointer}.inv-action-btn:hover{background:#133a22;border-color:#8affab;color:#d4ffd9}.inv-action-btn.equip-btn{border-color:#397a48;background:#11331e}.inv-action-btn.use-btn{border-color:#2980b9;color:#85c1e9}.inspect-no-action{font-size:11px;color:#4e8c5d;font-style:italic}.inv-inspect-empty{font-size:12px;color:#4e8c5d;padding:30px 10px;text-align:center}.journal-bounties-container{display:flex;flex-direction:column;gap:8px}.journal-bounties-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:10px}.bounty-journal-card{padding:10px 12px;border:1px solid rgba(138,255,171,.2);background:#08140c99;display:flex;flex-direction:column;gap:4px}.bounty-journal-card.claimed{border-color:#8affab66;opacity:.75}.bounty-journal-card.slain{border-color:#f1c40f;background:#f1c40f14}.bounty-journal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.bounty-status-tag{font-size:9.5px;font-weight:700;letter-spacing:.5px;padding:2px 6px;border-radius:2px}.status-claimed{background:#2ecc7133;color:#2ecc71;border:1px solid #2ecc71}.status-slain{background:#f1c40f40;color:#f1c40f;border:1px solid #f1c40f}.status-accepted{background:#3498db33;color:#3498db;border:1px solid #3498db}.status-available{background:#e67e2233;color:#e67e22;border:1px solid #e67e22}.status-locked{background:#7f8c8d33;color:#7f8c8d;border:1px solid #7f8c8d}.journal-system-container{display:flex;flex-direction:column;gap:12px}.system-card{padding:14px 16px;border:1px solid #244b2f;background:#08140cb3}.system-section-title{font-size:11px;letter-spacing:1.5px;color:#8affab;font-weight:700;border-bottom:1px solid #1c3d24;padding-bottom:6px;margin-bottom:10px}.system-option-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid rgba(28,61,36,.6)}.system-option-info{flex:1;min-width:0;padding-right:16px}.system-option-title{font-size:12px;font-weight:700;color:#d4ffd9;margin-bottom:4px}.system-option-desc{font-size:11px;color:#8affab;opacity:.8;line-height:1.35}.system-toggle-btn{background:#0c2415;border:1px solid #244b2f;color:#66b579;font-family:inherit;font-size:11px;font-weight:700;letter-spacing:1px;padding:8px 14px;cursor:pointer;white-space:nowrap}.system-toggle-btn:hover{border-color:#8affab;color:#d4ffd9}.system-toggle-btn.active{background:#154524;border-color:#8affab;color:#8affab;box-shadow:0 0 10px #8affab66}#compendium{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#040a06d9;backdrop-filter:blur(2px);z-index:25}#compendium.hidden{display:none}#compendium-box{width:min(840px,94%);max-height:86vh;display:flex;flex-direction:column;background:#08140c;border:2px solid #244b2f;box-shadow:0 0 20px #000000e6,inset 0 0 0 1px #8affab26;color:#8affab}#compendium-header{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:#050c07;border-bottom:1px solid #1c3d24;letter-spacing:1.5px;font-size:11.5px;color:#d4ffd9;font-weight:700}#compendium-close{background:none;border:1px solid #244b2f;color:#8affab;font-size:16px;cursor:pointer;line-height:1;padding:2px 8px}#compendium-close:hover{border-color:#8affab;color:#d4ffd9}#compendium-body{overflow-y:auto;padding:10px 14px;display:flex;flex-direction:column;gap:10px}.compendium-section{margin-bottom:4px}.compendium-section-title{font-size:10.5px;letter-spacing:1px;color:#4e8c5d;font-weight:700;border-bottom:1px solid #142a1a;padding-bottom:3px;margin-bottom:6px}.compendium-empty{font-size:11.5px;opacity:.7;padding:4px 0;color:#4e8c5d}.compendium-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:6px 8px;font-size:11.5px;border:1px solid #142a1a;background:#050c07b3;margin-bottom:4px;cursor:pointer;transition:background .15s,border-color .15s}.compendium-row:hover{background:#8affab14;border-color:#244b2f}.compendium-row.selected{border-color:#8affab;background:#8affab26;box-shadow:inset 0 0 6px #8affab33}.compendium-row button{background:#0c2415;border:1px solid #1c3d24;color:#8affab;font-family:inherit;font-size:11px;font-weight:700;padding:4px 10px;cursor:pointer;flex:none}.compendium-row button:hover:not(:disabled){color:#d4ffd9;border-color:#8affab;background:#154524}.compendium-row button:disabled{opacity:.35;cursor:default}.compendium-row>span{flex:1;color:#d4ffd9}#compendium-detail{display:flex;gap:16px;padding-top:8px;border-top:1px solid #1c3d24;margin-top:6px}#compendium-detail-portrait{flex:none;width:180px;height:220px;border:1px solid #1c3d24;background:#050c07}#compendium-detail-portrait .actor-portrait{width:100%;height:100%}#compendium-detail-stats{flex:1;min-width:0}.compendium-detail-name{font-weight:700;color:#d4ffd9;font-size:13px;margin-bottom:8px}.compendium-detail-stat-grid{display:grid;grid-template-columns:repeat(3,auto);gap:4px 16px;margin-bottom:8px}.compendium-detail-stat{display:flex;justify-content:space-between;gap:6px;font-size:11.5px}.compendium-detail-stat span:first-child{color:#4e8c5d;font-weight:700}.compendium-detail-stat span:last-child{color:#d4ffd9}.compendium-detail-affinities{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:8px}.compendium-detail-skills{font-size:11.5px;color:#8affab;opacity:.9;line-height:1.5}#worldmap{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#040a06d9;backdrop-filter:blur(2px);z-index:25}#worldmap.hidden{display:none}#worldmap-box{width:min(780px,94%);max-height:84vh;overflow-y:auto;display:flex;flex-direction:column;background:#08140c;border:2px solid #244b2f;box-shadow:0 0 20px #000000e6,inset 0 0 0 1px #8affab26;color:#8affab}#worldmap-header{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:#050c07;border-bottom:1px solid #1c3d24;letter-spacing:1.5px;font-size:11.5px;color:#d4ffd9;font-weight:700}#worldmap-close{background:none;border:1px solid #244b2f;color:#8affab;font-size:16px;cursor:pointer;line-height:1;padding:2px 8px}#worldmap-close:hover{border-color:#8affab;color:#d4ffd9}#worldmap-atlas{position:relative;height:320px;margin:12px 14px;background:radial-gradient(ellipse at 50% 35%,#0c2415,#050c07 80%);border:1px solid #1c3d24}.worldmap-marker{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:2px;background:none;border:none;color:#8affab;font-family:inherit;font-size:10px;letter-spacing:.5px;white-space:nowrap;cursor:pointer;padding:2px}.worldmap-marker-glyph{font-size:15px;color:#8affab;text-shadow:0 0 6px rgba(138,255,171,.6)}.worldmap-marker:hover:not(:disabled) .worldmap-marker-glyph,.worldmap-marker:hover:not(:disabled) .worldmap-marker-label{color:#d4ffd9;text-shadow:0 0 8px rgba(138,255,171,.9)}.worldmap-marker.selected .worldmap-marker-label{color:#d4ffd9;text-decoration:underline;font-weight:700}.worldmap-marker.here .worldmap-marker-glyph{color:#f1c40f;text-shadow:0 0 8px rgba(241,196,15,.8)}.worldmap-marker.locked{cursor:default;opacity:.35}.worldmap-marker.locked .worldmap-marker-glyph{color:#4e8c5d;text-shadow:none}#worldmap-postcard{margin:0 14px 14px;padding:12px 14px;min-height:220px;display:flex;flex-direction:column;justify-content:flex-end;background:#08140cd9;border:1px solid #1c3d24;background-size:cover;background-position:center}#worldmap-postcard-title{font-weight:700;letter-spacing:1.5px;font-size:13px;color:#d4ffd9}#worldmap-postcard-caption{font-size:11.5px;font-style:italic;opacity:.85;margin-top:4px;line-height:1.4;color:#8affab}.worldmap-chevron-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.worldmap-chevron{background:#0c2415;border:1px solid #1c3d24;color:#8affab;font-family:inherit;font-size:11.5px;font-weight:700;padding:6px 12px;cursor:pointer}.worldmap-chevron:hover:not(:disabled){color:#d4ffd9;border-color:#8affab;background:#154524}.worldmap-chevron .worldmap-chevron-arrow{opacity:.7;color:#4e8c5d}.worldmap-chevron.here{opacity:.6;cursor:default;border-color:#f1c40f;color:#f1c40f}#saveui{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#040a06d9;backdrop-filter:blur(2px);z-index:25}#saveui.hidden{display:none}#saveui-box{width:min(600px,92%);max-height:75vh;display:flex;flex-direction:column;background:#08140c;border:2px solid #244b2f;box-shadow:0 0 20px #000000e6,inset 0 0 0 1px #8affab26;color:#8affab}#saveui-header{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:#050c07;border-bottom:1px solid #1c3d24;letter-spacing:1.5px;font-size:11.5px;color:#d4ffd9;font-weight:700}#saveui-close{background:none;border:1px solid #244b2f;color:#8affab;font-size:16px;cursor:pointer;line-height:1;padding:2px 8px}#saveui-close:hover{border-color:#8affab;color:#d4ffd9}#saveui-list{overflow-y:auto;padding:10px 14px;display:flex;flex-direction:column;gap:6px}.saveui-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;font-size:11.5px;border:1px solid #142a1a;background:#050c07b3}.save-slot-info{color:#8affab}.save-time{color:#4e8c5d;font-size:10.5px}.saveui-actions{display:flex;gap:6px;flex:none}#automap{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#020402e0;z-index:25}#automap.hidden{display:none}#automap-box{width:min(880px,94%);max-height:84vh;display:flex;flex-direction:column;border-color:#1f5c37;box-shadow:inset 0 0 0 1px #3fff8a26,0 0 24px #3fff8a1f;background:#020603f2;color:#8affab}#automap-header{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:1px solid #1f5c37;letter-spacing:1.5px;font-size:11.5px;color:#baffcf;text-shadow:0 0 6px rgba(63,255,138,.6);font-weight:700}#automap-close{background:none;border:1px solid #1f5c37;color:#8affab;font-size:16px;cursor:pointer;line-height:1;padding:2px 8px}#automap-close:hover{color:#eafff0;border-color:#8affab}#automap-body{display:flex;gap:14px;padding:14px;overflow:auto}#automap-screen{position:relative;flex:none;width:620px;height:460px;border:1px solid #1f5c37;max-width:100%}#automap-canvas{display:block;width:100%;height:100%}#automap-scanlines{position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(to bottom,rgba(0,0,0,.25) 0px,rgba(0,0,0,.25) 1px,transparent 2px,transparent 3px);animation:automap-scan 6s linear infinite}@keyframes automap-scan{0%{background-position-y:0}to{background-position-y:60px}}#automap-vignette{position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 70px 20px #000000bf}#automap-legend{width:160px;flex:none;font-size:11px;display:flex;flex-direction:column;gap:6px}.automap-legend-row{display:flex;align-items:center;gap:6px}.automap-legend-row i{width:9px;height:9px;display:inline-block;border-radius:50%;flex:none;box-shadow:0 0 4px #ffffff80}#automap-stats{margin-top:10px;padding-top:10px;border-top:1px solid #1f5c37;display:flex;flex-direction:column;gap:4px}#intro{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#000;z-index:31;overflow:hidden}#intro.hidden{display:none}#intro-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform-origin:center center;animation-name:intro-fade,intro-kenburns-a;animation-timing-function:ease-in-out,linear}#intro-slide.kb-b{animation-name:intro-fade,intro-kenburns-b}@keyframes intro-fade{0%{opacity:0}12%{opacity:1}88%{opacity:1}to{opacity:0}}@keyframes intro-kenburns-a{0%{transform:scale(1) translate(0)}to{transform:scale(1.12) translate(-1.5%,1%)}}@keyframes intro-kenburns-b{0%{transform:scale(1.12) translate(1.5%,-1%)}to{transform:scale(1) translate(0)}}#intro-skip{position:absolute;bottom:24px;right:24px;z-index:1;opacity:.75}#intro-skip:hover{opacity:1}#title{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 40%,#08140cf2,#040a06fa),#040a06f2;z-index:30}#title.hidden{display:none}#title-box{display:flex;flex-direction:column;align-items:center;gap:20px;width:min(460px,92%);background:#08140c;border:2px solid #244b2f;padding:32px 28px;box-shadow:0 0 30px #000000e6,inset 0 0 0 1px #8affab26}.title-corp-header{font-size:10px;letter-spacing:2px;color:#4e8c5d;font-weight:700}#title-heading{font-size:26px;letter-spacing:6px;text-align:center;color:#8affab;font-weight:700;text-shadow:0 0 16px rgba(138,255,171,.6)}.title-subheading{font-size:10.5px;letter-spacing:1px;color:#66b579;text-align:center}#title-menu{display:flex;flex-direction:column;gap:8px;width:100%;margin-top:10px}.title-btn{background:#0c2415;border:1px solid #1c3d24;color:#8affab;font-family:inherit;font-size:13px;font-weight:700;letter-spacing:1.5px;padding:12px 18px;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.title-btn:hover:not(:disabled){color:#d4ffd9;border-color:#8affab;background:#154524;box-shadow:0 0 10px #8affab66}.title-btn:disabled{opacity:.35;cursor:default}.title-slot-list{display:flex;flex-direction:column;gap:6px;width:100%}.title-slot-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;font-size:11.5px;border:1px solid #1c3d24;background:#050c07}.title-slot-row .slot-text{color:#8affab;font-size:11px}#title-volume{flex:1;max-width:160px;accent-color:#8affab}#chargen-box{display:flex;flex-direction:column;gap:14px;width:min(600px,94%);max-height:88vh;overflow-y:auto;padding:24px 28px;background:#08140c;border:2px solid #244b2f;box-shadow:0 0 24px #000000e6,inset 0 0 0 1px #8affab26;color:#8affab}#chargen-heading{font-size:16px;letter-spacing:1.5px;text-align:center;color:#d4ffd9;font-weight:700;text-shadow:0 0 10px rgba(138,255,171,.5)}#chargen-name{background:#050c07;border:1px solid #1c3d24;color:#d4ffd9;font-family:inherit;font-size:14px;letter-spacing:1px;padding:8px 10px;text-align:center}#chargen-name:focus{outline:none;border-color:#8affab;box-shadow:0 0 8px #8affab4d}#chargen-points{text-align:center;font-size:12px;letter-spacing:1px;color:#8affab}#chargen-points .chargen-points-done{color:#2ecc71;font-weight:700}#chargen-stats{display:flex;flex-direction:column;gap:6px}.chargen-stat-row{display:grid;grid-template-columns:40px 28px 24px 28px 1fr;align-items:center;gap:8px;padding:5px 8px;border:1px solid #142a1a;background:#050c0799}.chargen-stat-label{font-weight:700;color:#d4ffd9;font-size:12px}.chargen-stat-value{text-align:center;font-size:13px;font-weight:700;color:#8affab}.chargen-hint{font-size:10.5px;color:#4e8c5d}.chargen-stat-row button{background:#0c2415;border:1px solid #1c3d24;color:#8affab;font-family:inherit;font-size:13px;line-height:1;padding:3px 0;cursor:pointer;width:100%}.chargen-stat-row button:hover:not(:disabled){color:#d4ffd9;border-color:#8affab;background:#154524}.chargen-stat-row button:disabled{opacity:.3;cursor:default}#chargen-presets,#chargen-actions{display:flex;gap:10px}#chargen-presets button,#chargen-actions button{flex:1;background:#0c2415;border:1px solid #1c3d24;color:#8affab;font-family:inherit;font-size:12px;font-weight:700;letter-spacing:1px;padding:9px 12px;cursor:pointer}#chargen-presets button:hover,#chargen-actions button:hover:not(:disabled){color:#d4ffd9;border-color:#8affab;background:#154524}#chargen-actions button:disabled{opacity:.35;cursor:default}#chargen-begin{border-color:#2ecc71;color:#8affab}#chargen-begin:hover:not(:disabled){color:#d4ffd9;border-color:#8affab;background:#154524;box-shadow:0 0 10px #8affab66}#chargen-loadout{display:flex;flex-direction:column;gap:6px}#chargen-loadout-heading{font-size:11px;letter-spacing:1px;color:#4e8c5d;font-weight:700}#chargen-loadout-options{display:flex;gap:8px;flex-wrap:wrap}#chargen-loadout-options button{flex:1;min-width:100px;background:#0c2415;border:1px solid #1c3d24;color:#8affab;font-family:inherit;font-size:11px;font-weight:700;letter-spacing:1px;padding:7px 8px;cursor:pointer}#chargen-loadout-options button:hover{color:#d4ffd9;border-color:#8affab}#chargen-loadout-options button.selected{color:#d4ffd9;border-color:#8affab;background:#154524;box-shadow:0 0 6px #8affab4d}#chargen-loadout-desc{font-size:11px;color:#4e8c5d;min-height:28px}#chargen-tag-section,#chargen-traits-section{display:flex;flex-direction:column;gap:6px;margin:4px 0}.chargen-section-title{font-size:11px;letter-spacing:1px;color:#4e8c5d;font-weight:700;border-bottom:1px solid #142a1a;padding-bottom:3px}#chargen-tag-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.chargen-tag-btn{background:#0c2415;border:1px solid #1c3d24;color:#8affab;font-family:inherit;font-size:11px;padding:6px 8px;cursor:pointer;text-align:center}.chargen-tag-btn:hover{border-color:#8affab;color:#d4ffd9}.chargen-tag-btn.selected{background:#f1c40f33;border-color:#f1c40f;color:#f1c40f;font-weight:700}#chargen-traits-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.chargen-trait-btn{background:#050c07;border:1px solid #1c3d24;color:#8affab;font-family:inherit;padding:6px 8px;cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:2px}.chargen-trait-btn:hover{border-color:#8affab}.chargen-trait-btn.selected{background:#2ecc712e;border-color:#2ecc71;color:#d4ffd9}.trait-name{font-weight:700;font-size:11px;color:#d4ffd9}.trait-pros{font-size:10px;color:#8affab}.trait-cons{font-size:10px;color:#ff8a7a}#levelup{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#040a06d9;backdrop-filter:blur(2px);z-index:25}#levelup.hidden{display:none}#levelup-box{width:min(840px,94%);max-height:86vh;display:flex;flex-direction:column;background:#08140c;border:2px solid #244b2f;box-shadow:0 0 20px #000000e6,inset 0 0 0 1px #8affab26;color:#8affab}#levelup-header{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:#050c07;border-bottom:1px solid #1c3d24}.levelup-title-bar{display:flex;align-items:center;gap:14px}.pipboy-header-level{font-size:11.5px;color:#66b579;font-weight:700}#levelup-close{background:none;border:1px solid #244b2f;color:#8affab;font-size:16px;cursor:pointer;line-height:1;padding:2px 8px}#levelup-close:hover{border-color:#8affab;color:#d4ffd9}#levelup-summary-bar{display:flex;gap:16px;padding:8px 14px;background:#050c07cc;border-bottom:1px solid #1c3d24;font-size:11.5px;color:#66b579}.levelup-stat-badge strong{color:#8affab;font-size:12px}#levelup-scroll-body{overflow-y:auto;padding:14px 16px;display:flex;flex-direction:column;gap:14px}.levelup-section{display:flex;flex-direction:column;gap:6px}.levelup-section-title{font-size:11px;letter-spacing:1px;color:#4e8c5d;font-weight:700;border-bottom:1px solid #142a1a;padding-bottom:3px}.levelup-stat-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.levelup-choice-btn{background:#0c2415;border:1px solid #1c3d24;color:#8affab;font-family:inherit;padding:8px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:4px}.levelup-choice-btn:hover{border-color:#8affab;color:#d4ffd9}.levelup-choice-btn.selected{background:#f1c40f33;border-color:#f1c40f;color:#f1c40f;font-weight:700}.levelup-skill-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px 14px}.levelup-skill-row{display:flex;justify-content:space-between;align-items:center;padding:6px 8px;border:1px solid #142a1a;background:#050c0799}.skill-info{display:flex;flex-direction:column;gap:2px}.skill-name{font-size:11.5px;font-weight:700;color:#d4ffd9}.tag-badge{font-size:9px;padding:1px 4px;background:#f1c40f33;color:#f1c40f;border-radius:2px;margin-left:4px}.skill-val{font-size:11px;color:#8affab}.skill-btns{display:flex;align-items:center;gap:6px}.skill-btns button{background:#0c2415;border:1px solid #1c3d24;color:#8affab;font-family:inherit;font-size:12px;padding:2px 8px;cursor:pointer}.skill-btns button:hover:not(:disabled){border-color:#8affab;color:#d4ffd9}.skill-btns button:disabled{opacity:.3;cursor:default}.skill-spent{font-size:11.5px;font-weight:700;color:#f1c40f;min-width:24px;text-align:center}.levelup-perks-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.levelup-perk-card{background:#050c07;border:1px solid #1c3d24;color:#8affab;font-family:inherit;padding:10px 12px;cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:4px}.levelup-perk-card:hover{border-color:#8affab;background:#8affab0d}.levelup-perk-card.selected{background:#2ecc712e;border-color:#2ecc71}.perk-card-title{font-weight:700;font-size:12.5px;color:#d4ffd9}.perk-card-desc{font-size:11px;opacity:.85;line-height:1.35;color:#8affab}.perk-card-benefit{font-size:11px;color:#8affab;font-weight:700;margin-top:4px}.levelup-combat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.levelup-combat-btn{background:#050c07;border:1px solid #1c3d24;color:#8affab;font-family:inherit;padding:8px 10px;cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:2px}.levelup-combat-btn:hover{border-color:#8affab}.levelup-combat-btn.selected{background:#f1c40f2e;border-color:#f1c40f}.combat-skill-name{font-weight:700;font-size:12px;color:#d4ffd9}.combat-skill-desc{font-size:11px;opacity:.85;color:#8affab}#levelup-footer{display:flex;justify-content:space-between;padding:12px 16px;border-top:1px solid #1c3d24;background:#050c07}#levelup-footer button{background:#0c2415;border:1px solid #1c3d24;color:#8affab;font-family:inherit;font-size:12px;font-weight:700;letter-spacing:1px;padding:8px 16px;cursor:pointer}#levelup-footer button:hover:not(:disabled){border-color:#8affab;color:#d4ffd9;background:#154524}#levelup-footer button:disabled{opacity:.35;cursor:default}.levelup-confirm-btn{border-color:#7fae5c!important;color:#a8d98a!important;font-weight:700}.levelup-confirm-btn:hover{background:#7fae5c26}.levelup-alert-card{border-color:#f2c94c!important;background:#f2c94c1a!important;display:flex;justify-content:space-between;align-items:center;gap:12px}.levelup-alert-content{display:flex;flex-direction:column;gap:2px}.levelup-alert-badge{font-weight:700;color:#f2c94c;letter-spacing:1px;font-size:13px}.levelup-btn-pulse{background:#f2c94c33;border:1px solid #f2c94c;color:#f2c94c;font-family:inherit;font-weight:700;font-size:12px;padding:8px 14px;cursor:pointer;letter-spacing:1px}.levelup-btn-pulse:hover{background:#f2c94c59;color:#fff}.skills-stats-grid{grid-template-columns:repeat(3,1fr)!important}.stats-traits-perks{display:flex;flex-direction:column;gap:8px}.traits-subblock{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.subblock-title{font-size:11px;opacity:.7}.badge-trait{font-size:10px;padding:2px 6px;background:#7fae5c33;border:1px solid rgba(127,174,92,.4);color:#7fae5c}.perk-tag-line{font-size:11px;line-height:1.4;color:#d9c9a3}#journal-companions-list{display:flex;flex-direction:column;gap:12px;padding:12px;overflow-y:auto;max-height:calc(100vh - 220px)}.journal-companion-card{border:1px solid #4a3f2a;background:#14120ebf;padding:12px;display:flex;flex-direction:column;gap:10px}.journal-companion-card.active-member{border-color:#7fae5c;background:#7fae5c14}.journal-companion-card.reserve-member{border-color:#5a4e36;opacity:.95}.companion-card-header{display:flex;gap:12px;align-items:flex-start}.companion-avatar{width:58px;height:58px;border:1px solid #6b5d3f;background-size:cover;background-position:center;flex-shrink:0;background-color:#0a0907}.companion-title-box{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.companion-name-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.companion-name{font-size:14px;font-weight:700;color:#e8d9ae;letter-spacing:.5px}.companion-badge{font-size:10px;font-weight:700;padding:2px 6px;letter-spacing:.5px;border-radius:2px}.badge-active{background:#7fae5c40;border:1px solid #7fae5c;color:#8affab}.badge-reserve{background:#f2c94c26;border:1px solid rgba(242,201,76,.4);color:#f2c94c}.companion-title{font-size:11px;color:#b0a07a;font-weight:500}.companion-quote{font-size:11px;font-style:italic;opacity:.85;color:#d9c9a3;margin-top:2px}.companion-action-box{display:flex;align-items:center;flex-shrink:0}.btn-companion-swap{background:none;border:1px solid #6b5d3f;color:#d9c9a3;font-family:inherit;font-size:12px;padding:6px 12px;cursor:pointer;letter-spacing:.5px;white-space:nowrap}.btn-companion-swap:hover:not(:disabled){border-color:#e8d9ae;color:#fff}.btn-companion-swap.btn-add{border-color:#7fae5c;color:#a8d98a;font-weight:700}.btn-companion-swap.btn-add:hover:not(:disabled){background:#7fae5c33}.btn-companion-swap.btn-remove{border-color:#f28a4c;color:#f2a87c}.btn-companion-swap.btn-remove:hover:not(:disabled){background:#f28a4c33}.btn-companion-swap:disabled{opacity:.4;cursor:not-allowed}.companion-card-body{display:flex;flex-direction:column;gap:8px}.companion-desc{font-size:12px;opacity:.85;line-height:1.4;color:#d9c9a3}.companion-features-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.companion-trait-box,.companion-skill-box{background:#00000059;border:1px solid rgba(74,63,42,.6);padding:6px 8px;display:flex;flex-direction:column;gap:2px}.feature-label{font-size:9px;font-weight:700;letter-spacing:1px;color:#9c8a66}.feature-name{font-size:11px;font-weight:700;color:#e8d9ae}.feature-desc{font-size:11px;opacity:.8;line-height:1.3}.companion-stats-row{display:flex;gap:14px;flex-wrap:wrap;background:#00000040;padding:6px 10px;border-top:1px solid rgba(74,63,42,.4);font-size:11px}.c-stat{display:flex;gap:4px;align-items:center}.c-stat span{opacity:.7;font-size:10px}.c-stat strong{color:#f0e2b6}@keyframes float-up-fade{0%{transform:translate(-50%) scale(.65);opacity:0}18%{transform:translate(-50%,-16px) scale(1.2);opacity:1}65%{transform:translate(-50%,-36px) scale(1);opacity:.95}to{transform:translate(-50%,-52px) scale(.85);opacity:0}}.floating-damage{position:absolute;top:30%;left:50%;transform:translate(-50%);font-family:inherit;font-weight:700;pointer-events:none;z-index:100;text-shadow:0 0 4px #000,0 0 8px #000,0 0 12px #000;animation:float-up-fade .85s cubic-bezier(.15,.85,.35,1.2) forwards;white-space:nowrap}.floating-damage.damage-crit{color:#ffb74d;font-size:18px;letter-spacing:1px;text-shadow:0 0 8px rgba(255,183,77,.8),0 0 18px rgba(255,87,34,.7);z-index:110}.floating-damage.damage-weak{color:#00e5ff;font-size:16px;letter-spacing:.5px;text-shadow:0 0 8px rgba(0,229,255,.8),0 0 16px rgba(41,121,255,.6)}.floating-damage.damage-damage{color:#ff5252;font-size:15px;text-shadow:0 0 6px rgba(255,82,82,.8)}.floating-damage.damage-heal{color:#69f0ae;font-size:16px;text-shadow:0 0 8px rgba(105,240,174,.8)}.floating-damage.damage-miss{color:#b0bec5;font-size:13px;font-style:italic;opacity:.85}@keyframes screen-shake-heavy{0%{transform:translate(0)}15%{transform:translate(-8px,6px)}30%{transform:translate(7px,-6px)}45%{transform:translate(-6px,4px)}60%{transform:translate(4px,-3px)}75%{transform:translate(-2px,2px)}to{transform:translate(0)}}.shake-heavy{animation:screen-shake-heavy .35s ease-out}@keyframes screen-shake-light{0%{transform:translate(0)}20%{transform:translate(-4px,2px)}40%{transform:translate(3px,-2px)}60%{transform:translate(-2px,1px)}to{transform:translate(0)}}.shake-light{animation:screen-shake-light .2s ease-out}#battle-impact-flash{position:absolute;inset:0;pointer-events:none;z-index:50;opacity:0;transition:opacity .3s ease-out}#battle-impact-flash.active.flash-crit{background:radial-gradient(circle,#ff572252,#0000 75%);opacity:1}#battle-impact-flash.active.flash-weak{background:radial-gradient(circle,#00e5ff47,#0000 75%);opacity:1}#battle-impact-flash.active.flash-damage{background:radial-gradient(circle,#f4433638,#0000 75%);opacity:1}#battle-impact-flash.active.flash-heal{background:radial-gradient(circle,#69f0ae3d,#0000 75%);opacity:1}.result-victory-box{border-color:#7fae5c!important;box-shadow:0 0 28px #7fae5c4d,inset 0 0 16px #7fae5c26!important}.result-defeat-box{border-color:#ff5c4d!important;box-shadow:0 0 28px #ff5c4d4d,inset 0 0 16px #ff5c4d26!important}@keyframes victory-pulse{0%,to{opacity:.9;transform:scale(1)}50%{opacity:1;transform:scale(1.03);text-shadow:0 0 12px rgba(138,255,171,.8)}}.victory-banner{color:#8affab;font-size:13px;font-weight:700;letter-spacing:3px;margin-bottom:6px;animation:victory-pulse 2s ease-in-out infinite}.defeat-banner{color:#ff5c4d;font-size:13px;font-weight:700;letter-spacing:3px;margin-bottom:6px}.result-summary-list{margin:12px 0 18px;display:flex;flex-direction:column;gap:4px}.result-summary-item{font-size:12px;opacity:.9;color:#d9c9a3}#terminal-hacking-overlay{position:absolute;inset:0;background:#020603f2;z-index:900;display:flex;align-items:center;justify-content:center;font-family:Courier New,ui-monospace,monospace;color:#8affab;text-shadow:0 0 4px rgba(138,255,171,.4)}#terminal-hacking-overlay.hidden{display:none}#hack-box{width:800px;max-width:95vw;background:#08140c;border:2px solid #244b2f;box-shadow:0 0 28px #000000f2,inset 0 0 16px #8affab1f;padding:20px;border-radius:2px;display:flex;flex-direction:column;gap:14px}.hack-header{border-bottom:1px solid #1c3d24;padding-bottom:8px;display:flex;flex-direction:column;gap:2px}.hack-title{font-size:12.5px;font-weight:700;letter-spacing:1.5px;color:#d4ffd9}.hack-subtitle{font-size:10.5px;color:#4e8c5d;font-weight:700}.hack-attempts{font-size:11.5px;margin-top:4px;font-weight:700;color:#8affab}.attempts-indicator{color:#f1c40f;letter-spacing:3px}.hack-body{display:flex;gap:16px;min-height:310px}.hack-memory-columns{display:flex;gap:18px;flex:1}.hack-column{display:flex;flex-direction:column;gap:1px;font-size:12px;line-height:1.25}.hack-mem-row{display:flex;gap:8px}.hack-address{opacity:.6;color:#4e8c5d}.hack-tokens{display:flex}.hack-token{display:inline-block;cursor:pointer;padding:0 1px}.hack-token:hover{background:#154524;color:#d4ffd9;text-shadow:0 0 6px rgba(138,255,171,.8);border-radius:1px}.hack-word{font-weight:700;color:#d4ffd9}.hack-bracket{color:#f1c40f}.hack-dud{opacity:.25;cursor:default}.hack-sidebar{width:250px;border-left:1px solid #1c3d24;padding-left:14px;display:flex;flex-direction:column;gap:8px;font-size:11px}.hack-terminal-title{font-weight:700;color:#d4ffd9;letter-spacing:1px;font-size:11px}.hack-log-feed{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:4px;max-height:270px}.log-line{line-height:1.3;color:#8affab}.log-entry{color:#d4ffd9}.log-success{color:#2ecc71;font-weight:700;font-size:12px}.log-fail{color:#ff5252;font-weight:700;font-size:12px}.hack-footer{display:flex;justify-content:flex-end;border-top:1px solid #1c3d24;padding-top:10px}.hack-btn{background:#0c2415;border:1px solid #1c3d24;color:#8affab;font-family:inherit;font-size:11.5px;font-weight:700;padding:6px 14px;cursor:pointer}.hack-btn:hover{background:#154524;border-color:#8affab;color:#d4ffd9}#stealth-indicator{position:absolute;top:44px;left:50%;transform:translate(-50%);font-weight:700;font-size:11px;letter-spacing:2px;padding:3px 12px;border-radius:2px;border:1px solid;transition:all .2s;pointer-events:none}#stealth-indicator.hidden{display:none}.stealth-hidden{color:#7fae5c;border-color:#7fae5c;background:#0a140ad9;box-shadow:0 0 10px #7fae5c4d}.stealth-caution{color:#f28a4c;border-color:#f28a4c;background:#190f05d9;animation:caution-pulse 1.2s infinite alternate}.stealth-danger{color:#ff5252;border-color:#ff5252;background:#1e0505e6;animation:danger-pulse .6s infinite alternate}@keyframes caution-pulse{0%{box-shadow:0 0 4px #f28a4c33}to{box-shadow:0 0 14px #f28a4c99}}@keyframes danger-pulse{0%{box-shadow:0 0 6px #ff52524d}to{box-shadow:0 0 18px #ff5252cc}}#rad-meter{display:flex;align-items:center;gap:8px;width:fit-content;font-size:11px;padding:4px 10px;border-radius:2px;background:#0a0805e0;border:1px solid #6b5d3f;pointer-events:none}#rad-meter.hidden{display:none}.rad-count{font-weight:700;color:#f0e2b6}.rad-warning{color:#ff5252;font-weight:700}@keyframes rad-pulse{0%{border-color:#6b5d3f}to{border-color:#ff5252;box-shadow:0 0 12px #ff525299}}#rad-meter.rad-critical{animation:rad-pulse .8s infinite alternate}#hazard-prompt{position:absolute;bottom:125px;left:50%;transform:translate(-50%);padding:6px 16px;font-size:12px;letter-spacing:1px;white-space:nowrap;color:#ffb74d;border:1px solid #ff9800;background:#140c05eb;box-shadow:0 0 14px #ff980066;cursor:pointer;z-index:25;animation:interact-pulse 1.4s ease-in-out infinite}#hazard-prompt.hidden{display:none}#hazard-prompt span{display:inline-block;color:#1a1712;background:#ff9800;font-weight:700;border-radius:2px;padding:1px 6px;margin-right:6px}#interact-prompt{position:absolute;bottom:80px;left:50%;transform:translate(-50%);padding:6px 18px;font-size:12.5px;font-weight:700;letter-spacing:1.2px;white-space:nowrap;color:#d4ffd9;border:1.5px solid #2ecc71;background:#040e07eb;box-shadow:0 0 16px #2ecc7173,inset 0 0 10px #2ecc7126;border-radius:2px;cursor:pointer;z-index:25;animation:interact-pulse 1.4s ease-in-out infinite}#interact-prompt.hidden{display:none}#interact-prompt span{display:inline-block;color:#051408;background:#2ecc71;font-weight:700;border-radius:2px;padding:1px 7px;margin-right:6px;box-shadow:0 0 6px #2ecc7199}#workbench,#cooking,#caravan-ledger,#gambling,#bounty-board{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#040a06d9;backdrop-filter:blur(3px);z-index:25}#workbench.hidden,#cooking.hidden,#caravan-ledger.hidden,#gambling.hidden,#bounty-board.hidden{display:none!important}#bounty-board-modal{width:100%;height:100%;display:flex;align-items:center;justify-content:center}#workbench-modal{width:880px;max-width:95vw;max-height:90vh;background:#08140c;border:2px solid #244b2f;box-shadow:0 0 24px #000000f2,inset 0 0 16px #8affab1f;padding:18px;border-radius:2px;display:flex;flex-direction:column;gap:12px;overflow-y:auto;font-family:inherit;color:#8affab}.workbench-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #1c3d24;padding-bottom:8px}.workbench-title{font-size:12.5px;font-weight:700;letter-spacing:1.5px;color:#d4ffd9}.workbench-tabs{display:flex;gap:8px}.workbench-operator-bar{display:flex;justify-content:space-between;align-items:center;font-size:11.5px;color:#8affab;padding:6px 12px;background:#050c07cc;border:1px solid #1c3d24;border-radius:2px}.workbench-status-toast{color:#d4ffd9;font-weight:700;font-size:11.5px}.workbench-mod-grid{display:flex;gap:16px;min-height:380px}.workbench-gun-specs{width:250px;display:flex;flex-direction:column;gap:8px;padding:12px;background:#050c07e6;border:1px solid #1c3d24;border-radius:2px}.gun-name{font-size:13.5px;font-weight:700;color:#d4ffd9}.silenced-tag{font-size:9.5px;color:#2ecc71;border:1px solid #2ecc71;padding:1px 5px;border-radius:2px;margin-left:4px;font-weight:700}.gun-caliber{font-size:11px;opacity:.85;color:#f1c40f}.specs-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;font-size:11px;margin-top:4px}.spec-item{display:flex;flex-direction:column;background:#00000059;padding:4px 6px;border-radius:2px;border:1px solid #142a1a}.spec-item span{opacity:.7;font-size:10px;color:#4e8c5d}.spec-item strong{color:#d4ffd9;font-size:11.5px}.gun-ranges{display:flex;gap:4px;align-items:center;font-size:11px;margin-top:4px}.range-badge{font-size:10px;background:#0c2415;color:#d4ffd9;padding:1px 6px;border:1px solid #1c3d24;border-radius:2px}.workbench-slots-container{flex:1;display:flex;flex-direction:column;gap:8px;overflow-y:auto;max-height:420px}.workbench-slot-card{padding:10px;background:#050c07bf;border:1px solid #1c3d24;border-radius:2px;display:flex;flex-direction:column;gap:6px}.slot-header{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:700;color:#4e8c5d;letter-spacing:1px}.slot-empty{font-size:10px;opacity:.6}.detach-mod-btn{background:#e74c3c33;border:1px solid #e74c3c;color:#ff8a80;font-size:10px;padding:2px 8px;cursor:pointer;border-radius:2px;font-family:inherit;font-weight:700}.detach-mod-btn:hover{background:#e74c3c;color:#000}.installed-mod-name{font-size:12px;font-weight:700;color:#8affab}.installed-mod-desc{font-size:11px;opacity:.85;color:#66b579}.installed-mod-empty{font-size:11px;opacity:.5;font-style:italic;color:#4e8c5d}.available-mods-list{margin-top:4px;display:flex;flex-direction:column;gap:4px;border-top:1px dashed #1c3d24;padding-top:6px}.avail-title{font-size:10px;opacity:.75;text-transform:uppercase;color:#4e8c5d;font-weight:700}.avail-mod-row{display:flex;justify-content:space-between;align-items:center;font-size:11px;background:#0000004d;padding:5px 8px;border-radius:2px;border:1px solid #142a1a}.avail-mod-info{flex:1}.avail-mod-desc{font-size:10px;opacity:.8;color:#66b579}.attach-mod-btn{background:#0c2415;border:1px solid #1c3d24;color:#8affab;font-size:10px;font-weight:700;padding:3px 10px;cursor:pointer;border-radius:2px;white-space:nowrap;margin-left:8px;font-family:inherit}.attach-mod-btn:hover{background:#154524;border-color:#8affab;color:#d4ffd9}.no-mods-avail{font-size:10px;opacity:.45;font-style:italic;color:#4e8c5d}.reload-bench-layout{display:flex;gap:16px;min-height:380px}.reload-recipe-list{width:320px;display:flex;flex-direction:column;gap:8px;max-height:420px;overflow-y:auto;padding:10px;background:#050c07d9;border:1px solid #1c3d24;border-radius:2px}.reload-subtab-header{display:flex;gap:4px;margin-bottom:6px}.reload-tab-btn{flex:1;padding:5px;font-size:11px;background:#0c2415;border:1px solid #1c3d24;color:#8affab;cursor:pointer;border-radius:2px;font-family:inherit;font-weight:700}.reload-tab-btn.active{background:#154524;border-color:#8affab;color:#d4ffd9}.recipe-items{display:flex;flex-direction:column;gap:6px}.recipe-item-row{padding:8px;background:#050c07cc;border:1px solid #142a1a;cursor:pointer;border-radius:2px;transition:border-color .15s,background .15s}.recipe-item-row:hover{border-color:#244b2f;background:#0c241566}.recipe-item-row.selected{border-color:#8affab;background:#0c2415cc;box-shadow:inset 0 0 6px #8affab33}.recipe-name{font-size:12px;font-weight:700;color:#d4ffd9}.recipe-yield{font-size:10px;opacity:.8;color:#f1c40f}.reload-detail-panel{flex:1;display:flex;flex-direction:column;gap:10px;padding:14px;background:#050c07d9;border:1px solid #1c3d24;border-radius:2px}.detail-title{font-size:13.5px;font-weight:700;color:#d4ffd9}.detail-desc{font-size:11.5px;color:#8affab;line-height:1.35}.detail-skill-req{font-size:11px;font-weight:700}.detail-skill-req.skill-pass{color:#2ecc71}.detail-skill-req.skill-fail{color:#ff5252}.ingredients-list{display:flex;flex-direction:column;gap:4px;margin:8px 0}.ing-title{font-size:10.5px;opacity:.8;text-transform:uppercase;color:#4e8c5d;font-weight:700}.ing-row{display:flex;justify-content:space-between;font-size:11px;padding:4px 8px;border-radius:2px;background:#00000059;border:1px solid #142a1a}.ing-ok{color:#8affab}.ing-missing{color:#ff5252;font-weight:700}.batch-controls{display:flex;gap:8px;align-items:center;font-size:11.5px;margin-top:4px}.batch-btn{padding:4px 12px;font-size:11px;background:#0c2415;border:1px solid #1c3d24;color:#8affab;cursor:pointer;border-radius:2px;font-family:inherit;font-weight:700}.batch-btn.active{background:#154524;border-color:#8affab;color:#d4ffd9}.craft-action-row{margin-top:10px;display:flex;justify-content:flex-end}.craft-btn{padding:8px 20px;font-size:12px;font-weight:700;background:#0c2415;border:1px solid #2ecc71;color:#d4ffd9;cursor:pointer;border-radius:2px;font-family:inherit}.craft-btn:hover:not(:disabled){background:#154524;border-color:#8affab;box-shadow:0 0 10px #8affab66}.craft-btn:disabled{opacity:.4;cursor:not-allowed;border-color:#1c3d24;color:#4e8c5d}.breakdown-card{padding:8px;background:#050c07cc;border:1px solid #1c3d24;border-radius:2px;display:flex;flex-direction:column;gap:4px}.breakdown-yields{font-size:10px;color:#8affab}.breakdown-btn{margin-top:4px;align-self:flex-start;background:#0c2415;border:1px solid #e67e22;color:#f39c12;font-size:10px;font-weight:700;padding:3px 8px;cursor:pointer;border-radius:2px;font-family:inherit}.breakdown-btn:hover:not(:disabled){background:#e67e22;color:#000}.breakdown-btn:disabled{opacity:.4;cursor:not-allowed}#cooking-modal{width:880px;max-width:95vw;max-height:90vh;background:#08140c;border:2px solid #244b2f;box-shadow:0 0 24px #000000f2,inset 0 0 16px #8affab1f;padding:18px;border-radius:2px;display:flex;flex-direction:column;gap:12px;overflow-y:auto;color:#8affab;font-family:inherit}.cooking-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #1c3d24;padding-bottom:8px}.cooking-title{font-size:12.5px;font-weight:700;letter-spacing:1.5px;color:#d4ffd9}.survival-status-banner{display:flex;gap:12px;background:#050c07d9;padding:10px;border:1px solid #1c3d24;border-radius:2px}.survival-meter-box{flex:1;display:flex;flex-direction:column;gap:4px;font-size:11px}.meter-label{font-weight:700;font-size:10px;color:#f1c40f;letter-spacing:1px}.meter-bar-track{height:8px;background:#00000080;border:1px solid #142a1a;border-radius:2px;overflow:hidden}.meter-bar-fill{height:100%;transition:width .3s ease}.meter-satisfied,.meter-hydrated,.meter-rested{background:#27ae60}.meter-peckish,.meter-parched,.meter-tired{background:#f1c40f}.meter-hungry,.meter-thirsty,.meter-fatigued{background:#e67e22}.meter-famished,.meter-dehydrated,.meter-exhausted{background:#d35400}.meter-ravenous,.meter-severe_dehydration,.meter-sleep_deprived{background:#e74c3c}.meter-starvation,.meter-fatal_dehydration,.meter-deprivation{background:#c0392b;animation:danger-pulse .8s infinite alternate}.meter-val{font-size:10px;opacity:.9;color:#d4ffd9}.cooking-chef-bar{display:flex;justify-content:space-between;align-items:center;font-size:11px;padding:5px 10px;background:#050c07b3;border:1px solid #1c3d24;border-radius:2px}.debuff-text{color:#f39c12;font-weight:700}.cooking-toast{color:#d4ffd9;font-weight:700}.active-buffs-strip{display:flex;gap:8px;align-items:center;font-size:11px;padding:4px 8px;background:#050c07b3;border:1px solid #2ecc71;border-radius:2px;flex-wrap:wrap}.buff-title{font-size:10px;color:#8affab;text-transform:uppercase;font-weight:700}.buff-badge{background:#2ecc7133;border:1px solid #2ecc71;color:#8affab;padding:2px 6px;border-radius:2px;font-size:10px;font-weight:700}.cooking-body{display:flex;gap:16px;min-height:380px}.cooking-recipes-column{width:320px;display:flex;flex-direction:column;gap:8px;padding:10px;background:#050c07e6;border:1px solid #1c3d24;border-radius:2px}.cooking-category-tabs{display:flex;gap:4px;margin-bottom:6px;flex-wrap:wrap}.cat-tab{flex:1;min-width:48px;padding:4px;font-size:10px;background:#0c2415;border:1px solid #1c3d24;color:#8affab;cursor:pointer;border-radius:2px;font-family:inherit;font-weight:700}.cat-tab.active{background:#154524;border-color:#8affab;color:#d4ffd9}.recipes-scroll-list{display:flex;flex-direction:column;gap:6px;max-height:340px;overflow-y:auto}.recipe-row{padding:8px;background:#050c07cc;border:1px solid #142a1a;cursor:pointer;border-radius:2px;transition:border-color .15s,background .15s}.recipe-row:hover{border-color:#244b2f;background:#0c241566}.recipe-row.selected{border-color:#8affab;background:#0c2415cc;box-shadow:inset 0 0 6px #8affab33}.recipe-row-header{display:flex;justify-content:space-between;align-items:center}.recipe-row-title{font-size:12px;font-weight:700;color:#d4ffd9}.recipe-category-tag{font-size:9px;padding:1px 4px;background:#0c2415;border:1px solid #1c3d24;color:#f1c40f;border-radius:2px;font-weight:700}.recipe-row-sub{font-size:10px;opacity:.8;color:#4e8c5d;margin-top:2px}.cooking-details-column{flex:1;display:flex;flex-direction:column;gap:10px;padding:14px;background:#050c07d9;border:1px solid #1c3d24;border-radius:2px}.detail-header{display:flex;justify-content:space-between;align-items:center}.detail-name{font-size:13.5px;font-weight:700;color:#d4ffd9}.detail-category{font-size:10px;color:#f1c40f;font-weight:700}.detail-nutrition-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;font-size:11px;margin:4px 0}.nutri-item{display:flex;flex-direction:column;background:#00000059;padding:4px 8px;border-radius:2px;border:1px solid #142a1a}.nutri-item.full-width{grid-column:span 2}.buff-highlight{color:#2ecc71;font-size:11px;font-weight:700}.detail-skill{font-size:11px;font-weight:700}.detail-skill.skill-ok{color:#2ecc71}.detail-skill.skill-bad{color:#ff5252}.ingredients-box{display:flex;flex-direction:column;gap:4px}.ing-item-row{display:flex;justify-content:space-between;font-size:11px;padding:4px 8px;border-radius:2px;background:#00000059;border:1px solid #142a1a}.ing-avail{color:#8affab}.ing-lacking{color:#ff5252;font-weight:700}.batch-selector-row{display:flex;gap:8px;align-items:center;font-size:11.5px}.batch-mult-btn{padding:4px 12px;font-size:11px;background:#0c2415;border:1px solid #1c3d24;color:#8affab;cursor:pointer;border-radius:2px;font-family:inherit;font-weight:700}.batch-mult-btn.active{background:#154524;border-color:#8affab;color:#d4ffd9}.cooking-actions-row{display:flex;gap:10px;justify-content:flex-end;margin-top:10px}.cook-action-btn{padding:8px 16px;font-size:11.5px;font-weight:700;background:#0c2415;border:1px solid #1c3d24;color:#8affab;cursor:pointer;border-radius:2px;font-family:inherit}.cook-action-btn:hover:not(:disabled){background:#154524;border-color:#8affab;color:#d4ffd9}.cook-action-btn.eat-btn{background:#0c2415;border-color:#2ecc71;color:#d4ffd9}.cook-action-btn.eat-btn:hover:not(:disabled){background:#154524;border-color:#8affab;box-shadow:0 0 10px #8affab66}.cook-action-btn:disabled{opacity:.4;cursor:not-allowed;border-color:#1c3d24;color:#4e8c5d}#survival-hud-widget{display:flex;gap:10px;font-size:10.5px;width:fit-content;padding:4px 10px;background:#050c07eb;border:1px solid #1c3d24;border-radius:2px;pointer-events:none}.hud-meter-item{display:flex;gap:4px;align-items:center}.hud-meter-tag{font-weight:700;color:#f1c40f}.hud-meter-val{color:#d4ffd9}#caravan-ledger-modal{width:880px;max-width:95vw;max-height:90vh;background:#08140c;border:2px solid #244b2f;box-shadow:0 0 24px #000000f2,inset 0 0 16px #8affab1f;padding:18px;border-radius:2px;display:flex;flex-direction:column;gap:12px;overflow-y:auto;color:#8affab;font-family:inherit}.ledger-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #1c3d24;padding-bottom:8px}.ledger-title{font-size:12.5px;font-weight:700;letter-spacing:1.5px;color:#d4ffd9}.ledger-top-bar{display:flex;justify-content:space-between;align-items:center;background:#050c07d9;padding:8px 12px;border:1px solid #1c3d24;border-radius:2px;font-size:11.5px}.top-caps-box{font-weight:700;color:#f1c40f}.dividend-btn{background:#0c2415;border:1px solid #2ecc71;color:#d4ffd9;padding:4px 12px;font-size:11px;font-weight:700;cursor:pointer;border-radius:2px;font-family:inherit}.dividend-btn:hover{background:#154524;border-color:#8affab;box-shadow:0 0 8px #8affab66}.ledger-toast{color:#d4ffd9;font-weight:700;font-size:11px}.ledger-tabs{display:flex;gap:6px}.ledger-tab-btn{padding:6px 14px;font-size:11px;background:#0c2415;border:1px solid #1c3d24;color:#8affab;cursor:pointer;border-radius:2px;font-family:inherit;font-weight:700}.ledger-tab-btn.active{background:#154524;border-color:#8affab;color:#d4ffd9}.market-board-panel,.investments-panel,.caravans-panel{display:flex;flex-direction:column;gap:12px;padding:12px;background:#050c07d9;border:1px solid #1c3d24;border-radius:2px;min-height:380px}.market-intro{font-size:11px;opacity:.85;line-height:1.35;color:#66b579}.market-routes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}.market-region-card{padding:8px 10px;background:#0006;border:1px solid #1c3d24;border-radius:2px;display:flex;flex-direction:column;gap:4px}.card-region-name{font-size:12px;font-weight:700;color:#d4ffd9}.card-route-lvl{font-size:10px;opacity:.75;color:#4e8c5d}.card-demand,.card-surplus{display:flex;flex-direction:column;font-size:10px}.demand-tag{color:#ff8a80;font-weight:700}.surplus-tag{color:#2ecc71;font-weight:700}.recommended-routes{padding:10px;background:#050c07e6;border:1px dashed #244b2f;border-radius:2px}.rec-title{font-size:11px;font-weight:700;color:#d4ffd9;margin-bottom:4px}.rec-list{margin:0;padding-left:18px;font-size:11px;line-height:1.5;color:#8affab}.invest-summary{font-size:11.5px;opacity:.9;color:#d4ffd9}.routes-invest-list{display:flex;flex-direction:column;gap:8px}.invest-card{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#00000059;border:1px solid #1c3d24;border-radius:2px}.invest-region{font-size:12.5px;font-weight:700;color:#d4ffd9}.invest-level{font-size:10.5px;opacity:.8;color:#66b579}.invest-actions{display:flex;gap:6px}.invest-btn{padding:4px 10px;font-size:10.5px;background:#0c2415;border:1px solid #1c3d24;color:#8affab;cursor:pointer;border-radius:2px;font-family:inherit;font-weight:700}.invest-btn:hover:not(:disabled){background:#154524;border-color:#8affab;color:#d4ffd9}.invest-btn:disabled{opacity:.4;cursor:not-allowed;border-color:#1c3d24;color:#4e8c5d}.caravans-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.caravan-card{padding:10px;background:#0006;border:1px solid #1c3d24;border-radius:2px;display:flex;flex-direction:column;gap:5px}.caravan-card.rescued{border-color:#2ecc71;box-shadow:0 0 10px #2ecc7140}.caravan-card-header{display:flex;justify-content:space-between;align-items:center}.caravan-name{font-size:12.5px;font-weight:700;color:#d4ffd9}.caravan-discount-badge{font-size:10px;color:#2ecc71;font-weight:700}.caravan-normal-badge{font-size:10px;opacity:.6;color:#4e8c5d}.caravan-leader{font-size:10.5px;color:#8affab}.caravan-desc{font-size:10.5px;opacity:.85;line-height:1.3;color:#66b579}.caravan-routes{font-size:10px;color:#4e8c5d}#gambling-modal{width:920px;max-width:96vw;max-height:92vh;background:#08140c;border:2px solid #244b2f;box-shadow:0 0 24px #000000f2,inset 0 0 16px #8affab1f;padding:18px;border-radius:2px;display:flex;flex-direction:column;gap:12px;overflow-y:auto;color:#8affab;font-family:inherit}.gambling-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #1c3d24;padding-bottom:8px}.gambling-title{font-size:12.5px;font-weight:700;letter-spacing:1.5px;color:#d4ffd9}.gambling-top-bar{display:flex;justify-content:space-between;align-items:center;background:#050c07d9;padding:8px 12px;border:1px solid #1c3d24;border-radius:2px;font-size:11.5px}.caps-counter,.luck-counter{font-weight:700;color:#d4ffd9}.gambling-tabs{display:flex;gap:6px}.gambling-tab-btn{padding:6px 14px;font-size:11px;background:#0c2415;border:1px solid #1c3d24;color:#8affab;cursor:pointer;border-radius:2px;font-family:inherit;font-weight:700}.gambling-tab-btn.active{background:#154524;border-color:#8affab;color:#d4ffd9}.roulette-felt-table{display:flex;flex-direction:column;gap:10px;background:#050c07;border:1px solid #1c3d24;padding:12px;border-radius:2px}.card-red{color:#e74c3c}.card-black{color:#d4ffd9}.cards-hand-row{display:flex;gap:8px;overflow-x:auto;padding:4px 0}.hand-card{width:44px;height:60px;background:#050c07;border:1px solid #1c3d24;border-radius:2px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:700;cursor:pointer;transition:transform .1s,border-color .1s;position:relative}.hand-card:hover{transform:translateY(-4px);border-color:#8affab}.hand-card.selected{border-color:#f1c40f;transform:translateY(-8px);box-shadow:0 0 8px #f1c40f80}.vp-hand-row{justify-content:center;padding:10px 0}.held-tag{position:absolute;bottom:-14px;font-size:8px;font-weight:700;color:#f1c40f;background:#0c2415;padding:1px 4px;border-radius:2px;border:1px solid #f1c40f}.paytable-box{display:grid;grid-template-columns:repeat(3,1fr);gap:2px 12px;font-size:10px;color:#4e8c5d;padding:6px;background:#0000004d;border:1px solid #142a1a}.paytable-row{display:flex;justify-content:space-between;gap:6px}.roulette-wheel-panel{padding:12px;text-align:center;background:#0006;border:1px solid #1c3d24}@keyframes cardDeal{0%{transform:translateY(-24px) scale(.85);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.card-deal{animation:cardDeal .25s ease-out backwards}@keyframes bannerPop{0%{transform:scale(.9);opacity:0}60%{transform:scale(1.03);opacity:1}to{transform:scale(1);opacity:1}}.last-spin-banner{font-size:13px;font-weight:700;animation:bannerPop .3s ease-out}@keyframes chipPop{0%{transform:scale(0)}to{transform:scale(1)}}.num-chip{animation:chipPop .2s ease-out}@keyframes spinIcon{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin-icon{display:inline-block;animation:spinIcon .7s linear infinite}.last-spin-banner.red{color:#ff8a80}.last-spin-banner.black{color:#d4ffd9}.last-spin-banner.green{color:#2ecc71}.roulette-grid-panel{display:flex;flex-direction:column;gap:6px;padding:10px;background:#0000004d;border:1px solid #1c3d24}.numbers-matrix{display:grid;grid-template-columns:repeat(12,1fr);gap:4px}.roulette-num-btn{height:34px;font-weight:700;font-size:11px;cursor:pointer;border:1px solid #142a1a;border-radius:2px;position:relative;font-family:inherit}.roulette-num-btn.red{background:#5c1818;color:#ff8a80;border-color:#962d2d}.roulette-num-btn.black{background:#0c2415;color:#8affab;border-color:#1c3d24}.roulette-num-btn.green{background:#154524;color:#d4ffd9;border-color:#2ecc71}.roulette-num-btn.has-bet{box-shadow:0 0 8px #f1c40f;border-color:#f1c40f}.num-chip{position:absolute;top:-5px;right:-5px;background:#f1c40f;color:#000;font-size:8px;font-weight:700;padding:1px 3px;border-radius:50%}.outside-bets-row{display:flex;gap:6px}.outside-btn{flex:1;padding:6px 0;font-size:11px;font-weight:700;background:#0c2415;border:1px solid #1c3d24;color:#8affab;cursor:pointer;border-radius:2px;font-family:inherit}.outside-btn:hover{background:#154524;border-color:#8affab;color:#d4ffd9}.outside-btn.red-btn{background:#4a1414;border-color:#962d2d;color:#ff8a80}.outside-btn.black-btn{background:#050c07;border-color:#1c3d24;color:#8affab}.roulette-controls{display:flex;justify-content:space-between;align-items:center;padding:10px;background:#00000080;border:1px solid #1c3d24}.chip-selector{display:flex;gap:6px;align-items:center;font-size:11px}.chip-btn{padding:4px 8px;font-size:11px;font-weight:700;background:#0c2415;border:1px solid #1c3d24;color:#8affab;cursor:pointer;border-radius:2px;font-family:inherit}.chip-btn.active{background:#f1c40f;color:#000;border-color:#f39c12}.spin-btn{background:#154524!important;border-color:#2ecc71!important;color:#d4ffd9!important;font-weight:700}#weather-hud-widget{display:flex;align-items:center;gap:6px;white-space:nowrap;font-size:11px;padding:4px 10px;background:#050c07eb;border:1px solid #1c3d24;border-radius:2px;pointer-events:none;color:#8affab}.weather-icon{font-size:13px}.weather-name{font-weight:700}.weather-mods{font-size:10px;opacity:.85;margin-left:4px}.weather-clear{border-color:#f1c40f;color:#f1c40f}.weather-rad_storm{border-color:#2ecc71;color:#8affab;box-shadow:0 0 8px #2ecc714d}.weather-acid_rain{border-color:#1abc9c;color:#a3e4d7}.weather-heatwave{border-color:#e67e22;color:#f39c12;box-shadow:0 0 8px #e67e224d}.weather-ash_fall{border-color:#4e8c5d;color:#66b579}.weather-blizzard{border-color:#2980b9;color:#5dade2;box-shadow:0 0 8px #2980b94d}.bounty-modal-content{max-width:920px;width:92%;background:#08140c;border:2px solid #244b2f;color:#8affab;max-height:88vh;overflow-y:auto;padding:18px;border-radius:2px;box-shadow:0 0 24px #000000f2,inset 0 0 16px #8affab1f}.bounty-modal-header{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid #1c3d24;padding-bottom:8px;margin-bottom:12px}.hunter-stats{font-size:11px;opacity:.85;margin-top:4px;color:#66b579}.bounty-filter-tabs{display:flex;gap:8px;margin-bottom:14px}.filter-tab{background:#0c2415;border:1px solid #1c3d24;color:#8affab;padding:6px 14px;cursor:pointer;font-weight:700;font-size:11px;border-radius:2px;font-family:inherit}.filter-tab.active{background:#154524;color:#d4ffd9;border-color:#8affab}.bounty-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px}.bounty-card{background:#050c07;border:1px solid #1c3d24;border-radius:2px;padding:10px;display:flex;flex-direction:column;justify-content:space-between;position:relative}.bounty-card.locked-card{opacity:.45;border-style:dashed}.bounty-card.state-target_slain{border-color:#f1c40f;box-shadow:0 0 10px #f1c40f4d}.bounty-card.state-claimed{opacity:.6;border-color:#142a1a}.bounty-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.bounty-tier-tag{font-size:9.5px;background:#0c2415;border:1px solid #1c3d24;padding:2px 6px;font-weight:700;border-radius:2px;color:#8affab}.bounty-reward-badge{font-size:11px;color:#f1c40f;font-weight:700}.bounty-poster-top{display:flex;gap:10px;align-items:center;margin-bottom:8px;background:#00000059;padding:6px;border-radius:2px;border:1px solid #142a1a}.bounty-sketch{font-size:24px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:#08140c;border:1px solid #1c3d24;border-radius:2px;flex-shrink:0}.bounty-name{font-size:12.5px;font-weight:700;color:#d4ffd9}.bounty-alias{font-size:10px;opacity:.8;font-style:italic;color:#66b579}.bounty-rec-level{font-size:10px;color:#f1c40f;margin-top:2px}.bounty-dossier{font-size:10.5px;line-height:1.4;display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.dossier-label{font-weight:700;color:#4e8c5d;margin-right:4px}.reward-highlight{color:#f1c40f;font-weight:700}.bounty-footer{display:flex;justify-content:space-between;align-items:center;padding-top:8px;border-top:1px solid #142a1a}.bounty-status-tag{font-size:9.5px;font-weight:700;padding:2px 6px;border-radius:2px}.status-available{background:#0c2415;color:#8affab;border:1px solid #1c3d24}.status-accepted{background:#3498db33;color:#5dade2;border:1px solid #2980b9}.status-slain{background:#f1c40f33;color:#f1c40f;border:1px solid #f1c40f}.status-claimed{background:#2ecc7133;color:#2ecc71;border:1px solid #27ae60}.status-locked{background:#050c07;color:#4e8c5d;border:1px solid #142a1a}.bounty-btn{background:#0c2415;border:1px solid #1c3d24;color:#8affab;padding:5px 10px;font-size:10.5px;font-weight:700;cursor:pointer;border-radius:2px;font-family:inherit}.bounty-btn:hover{background:#154524;border-color:#8affab;color:#d4ffd9}.claim-btn{background:#154524!important;border-color:#2ecc71!important;color:#d4ffd9!important;font-weight:700}.pulse-btn{animation:pulseGlow 1.5s infinite}@keyframes pulseGlow{0%{transform:scale(1)}50%{transform:scale(1.03)}to{transform:scale(1)}}.bounty-hunting-hint{font-size:10px;color:#4e8c5d;font-style:italic}.bounty-closed-text{font-size:10px;color:#4e8c5d}.bounty-locked-text{font-size:10px;color:#4e8c5d;font-style:italic}.actor-name-row{display:flex;justify-content:space-between;align-items:center;gap:4px}.tactic-btn{font-size:9px;font-weight:700;padding:1px 5px;border-radius:2px;cursor:pointer;user-select:none;border:1px solid transparent}.tactic-btn.tactic-manual{background:#3498db33;color:#85c1e9;border-color:#3498db}.tactic-btn.tactic-aggressive{background:#e74c3c33;color:#f1948a;border-color:#e74c3c}.tactic-btn.tactic-support{background:#2ecc7133;color:#82e0aa;border-color:#2ecc71}.tactic-btn.tactic-conserve{background:#f39c1233;color:#f8c471;border-color:#f39c12}.tactic-btn:hover{filter:brightness(1.25)}.synergy-menu-btn{background:#f1c40f33!important;border-color:#f1c40f!important;color:#f9e79f!important;font-weight:700;animation:synergyGlow 2s infinite ease-in-out}@keyframes synergyGlow{0%,to{box-shadow:0 0 4px #f1c40f4d}50%{box-shadow:0 0 12px #f1c40fb3}}.auto-round-btn{background:#3498db33!important;border-color:#3498db!important;color:#aed6f1!important;font-size:11px;font-weight:700;cursor:pointer;padding:3px 8px;border-radius:2px}.auto-round-btn:hover{background:#3498db!important;color:#000!important}.synergy-list{display:flex;flex-direction:column;gap:6px;max-height:200px;overflow-y:auto;padding:4px 0}.synergy-card-btn{text-align:left;background:#08140c;border:1px solid #1c3d24;padding:6px 10px;border-radius:2px;cursor:pointer;color:#8affab;font-family:inherit;transition:background .15s,border-color .15s}.synergy-card-btn:hover{background:#154524;border-color:#8affab}.synergy-btn-title{font-weight:700;color:#d4ffd9;font-size:11.5px}.synergy-btn-title span{font-size:10px;color:#66b579;font-weight:400;margin-left:6px}.synergy-btn-desc{font-size:10.5px;color:#8affab;margin-top:2px;line-height:1.3}
