/* Серая Зона 1.4. Functional terminal surfaces; no screenshot-based controls. */
body.zone-app,body.zone-admin{--z-bg:#111514;--z-panel:#171c1bdd;--z-line:#6265576b;--z-text:#e7e7da;--z-muted:#acb3a9;--z-accent:#d69f51;--term-glass:linear-gradient(132deg,#313b353b,#0d1212e8 45%,#1b2422e8);--term-border:#a3916560;background:linear-gradient(#090e12a6,#080d10e8),url('../../images/zone/locations/hero.webp') center/cover fixed!important;color:var(--z-text);}
body.zone-app{height:100dvh;overflow:hidden;font-family:"Segoe UI",Arial,sans-serif!important}.zone-app *,.zone-admin *{scrollbar-width:thin;scrollbar-color:#79785b #141a19}.zone-header{position:fixed!important;inset:0 0 auto;height:82px;z-index:80;padding:0 24px;background:linear-gradient(100deg,#131916f5,#182222e0)!important;backdrop-filter:blur(20px);border-bottom:1px solid #9d895e78;box-shadow:0 5px 25px #0008}.zone-brand .city-brand{letter-spacing:.02em}.zone-brand>small{letter-spacing:.1em;font-size:9px}.zone-layout{display:block!important;max-width:none!important;min-height:0!important}.zone-sidebar{display:block;position:fixed;left:0;top:82px;bottom:0;width:232px;overflow:auto;overscroll-behavior:contain;padding:18px 12px;z-index:65;background:linear-gradient(110deg,#111919f2,#161d1be8)!important;backdrop-filter:blur(16px);border-right:1px solid #a491644d}.zone-sidebar nav{padding:5px;border:1px solid #79745b42;background:#0b11117a;margin-bottom:18px;box-shadow:inset 0 1px #ffffff0a,0 6px 20px #0002}.zone-nav-label{margin:0 8px 8px;font-size:9px;color:#b8a57c;letter-spacing:.16em}.zone-sidebar nav a{padding:12px 10px;font-size:13px;gap:12px;min-height:46px;border:1px solid transparent;border-bottom:1px solid #b4b69813;border-radius:2px}.zone-sidebar nav a i{font-size:18px;flex:none}.zone-sidebar nav a.active{border:1px solid #bb914f9e;color:#f3c77f;background:linear-gradient(110deg,#60412588,#322b20a8);box-shadow:inset 0 0 12px #e9a74715,0 0 12px #eea74a15}.zone-sidebar nav a:hover{background:#53523b40}.zone-sidebar-note{padding:15px 8px;border-top-color:#9f8d6155}.zone-main{position:fixed;inset:82px 0 0 232px;overflow:auto;overscroll-behavior:contain;min-width:0;padding:24px 26px 0!important;background:transparent!important;scroll-behavior:smooth}.zone-title{gap:16px;margin-bottom:18px}.zone-title h1{font-size:clamp(25px,2.3vw,37px);text-transform:uppercase;letter-spacing:.035em;margin:6px 0 10px}.zone-title p{font-size:13px}.zone-status{margin-bottom:22px;border-color:var(--term-border);background:var(--term-glass);backdrop-filter:blur(12px)}.zone-status>div{padding:10px 14px}.zone-status strong{font-size:23px}.zone-status>div>span{font-size:9px}.zone-app .zone-panel,.zone-app .zone-result{background:var(--term-glass)!important;border:1px solid var(--term-border);border-top-color:#b8ab7c82;box-shadow:inset 0 1px #e7e2b417,0 9px 24px #0004;backdrop-filter:blur(14px);border-radius:4px}.zone-app .zone-panel{padding:20px}.zone-app .zone-button{border-radius:3px;border-color:#cd9d58;background:linear-gradient(155deg,#855026,#b4813f 48%,#805329);color:#fff1d2!important;box-shadow:inset 0 1px #ffe0a535,0 3px 10px #0004;letter-spacing:.02em}.zone-app .zone-button.secondary{background:linear-gradient(#313b354f,#171d1deb);border-color:#9a9c7b75;color:#dedecd!important}.zone-app .zone-button:disabled{opacity:.5}.zone-app .zone-button:focus-visible,.zone-app button:focus-visible{outline:2px solid #ffd799;outline-offset:3px}.zone-app .zone-button:hover:not(:disabled){transform:none}.zone-app select,.zone-app input[type=search]{min-width:0;width:100%;border:1px solid #89917b60;background:#0f1617e8;color:#dcded2;border-radius:3px;padding:10px;font:inherit;font-size:13px}.zone-app select option{background:#131b19;color:#e9e8da}.zone-app progress{appearance:none;display:block;width:100%;height:5px;border:0;border-radius:2px;background:#51544344;overflow:hidden}.zone-app progress::-webkit-progress-bar{background:#51544344}.zone-app progress::-webkit-progress-value{background:linear-gradient(90deg,#6c895d,#aab87e)}.zone-app progress::-moz-progress-bar{background:#94a67c}.zone-app .zone-live{top:0;background:#1c3029f5;backdrop-filter:blur(15px)}.zone-app .zone-footer{margin-top:30px;padding:18px 0}.terminal-section-label{display:flex;gap:10px;align-items:center;justify-content:space-between;font:12px/1.5 "Segoe UI",Arial,sans-serif;letter-spacing:.12em;color:#d0bb8b;border-bottom:1px solid #a99b665c;padding:0 0 12px;margin-bottom:13px}.terminal-section-label>span{font-size:10px;color:#8e9d93}.terminal-stats,.terminal-mini-stats{margin:12px 0;display:grid;gap:0}.terminal-stats>div,.terminal-mini-stats>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid #ccd6b610;font-size:12px}.terminal-stats dt,.terminal-mini-stats dt{color:#aeb8ad}.terminal-stats dd,.terminal-mini-stats dd{margin:0;color:#d6c9a4;font-variant-numeric:tabular-nums;text-align:right}.terminal-mini-stats>div{font-size:11px;padding:5px 0}.terminal-tabs{display:flex;gap:5px;flex-wrap:wrap;padding:7px;background:#0e1514b8;border:1px solid #8b8d694f;border-radius:3px;margin:12px 0}.terminal-tabs button{flex:1 1 auto;min-height:38px;padding:9px 12px;border:1px solid #777d6752;background:linear-gradient(#343d352d,#17211ce6);color:#bfc7b9;font:12px/1.4 "Segoe UI",sans-serif;border-radius:3px;cursor:pointer}.terminal-tabs button.active{border-color:#d0a15e;color:#f9cf8c;background:linear-gradient(100deg,#6743228a,#45392570);box-shadow:inset 0 0 14px #d7a45514}.terminal-inventory-top{display:grid;grid-template-columns:210px minmax(0,1fr);gap:14px}.zone-app .terminal-stat-panel{padding:18px}.terminal-stat-panel>.zone-button{width:100%;margin-top:16px}.zone-app .terminal-paperdoll{display:grid;grid-template-columns:minmax(112px,.75fr) minmax(140px,1.35fr) minmax(140px,1fr);gap:12px;padding:16px;background:linear-gradient(#10161855,#111818b0),url('../../images/zone/locations/cordon.webp') center/cover!important;position:relative}.terminal-slot-column{display:flex;flex-direction:column;gap:9px;min-width:0;z-index:1}.terminal-gear-slot{min-width:0;display:flex;flex-direction:column;align-items:center;gap:4px;width:100%;border:1px solid #9da88a50;background:linear-gradient(150deg,#16211be6,#0c1212ed);color:#dae0d2;border-radius:4px;padding:9px;min-height:105px;box-shadow:inset 0 1px #e2e8c614;text-align:center}.terminal-gear-slot.filled{border-color:#b1a3788a}.terminal-gear-slot.broken{border-color:#b36b4f}.terminal-gear-slot>span:first-child{align-self:flex-start;font-size:11px;color:#b8c7b7}.terminal-gear-slot>img{height:56px;max-height:56px;width:100%;object-fit:contain!important}.terminal-gear-slot strong{font-size:11px;font-weight:500;line-height:1.4;max-width:100%;overflow-wrap:anywhere}.terminal-gear-slot small{font-size:9px;line-height:1.3}.terminal-gear-slot progress{height:3px}.terminal-short-slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.terminal-short-slots>.terminal-gear-slot:first-child{grid-column:1/-1}.terminal-short-slots .terminal-gear-slot{padding:7px;min-height:120px}.terminal-empty-icon{display:grid;place-items:center;min-height:50px;color:#788875;font-size:27px}.terminal-character{position:relative;min-width:0;align-self:stretch;display:flex;flex-direction:column;justify-content:flex-end;background:radial-gradient(ellipse at 50% 55%,#b0b78720,transparent 65%)}.terminal-character>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain!important;filter:contrast(1.06);mask-image:linear-gradient(#000 80%,transparent)}.terminal-character>div{position:relative;padding:45px 5px 15px;text-align:center;z-index:1;background:linear-gradient(transparent,#0d1514dc);overflow-wrap:anywhere}.terminal-character h2{font-size:22px;line-height:1.25}.terminal-character p{font-size:11px;margin-top:8px}.terminal-belt{grid-column:1/-1;min-width:0;background:#0e1715c9;border:1px solid #a0946755;padding:12px;border-radius:3px;z-index:1}.terminal-belt .terminal-section-label{font-size:10px;margin-bottom:10px;padding-bottom:8px}.terminal-belt>div:last-child{display:flex;flex-wrap:wrap;gap:8px}.terminal-art-cell{position:relative;flex:1 1 88px;max-width:155px;min-width:0;border:1px solid #96875c85;padding:5px;background:#171e18bc;text-align:center;display:flex;flex-direction:column;gap:4px}.terminal-art-cell>span{font-size:9px;color:#b4ae89}.terminal-art-cell img{height:47px;width:100%;object-fit:contain!important}.terminal-art-cell select{padding:4px;font-size:10px}.terminal-art-cell.suspended{opacity:.65}.terminal-art-cell .zone-button{min-height:28px;font-size:10px!important;padding:3px}.terminal-inventory-bottom{margin-top:16px}.terminal-inventory-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(225px,.4fr);gap:20px}.terminal-item-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:5px;align-content:start}.terminal-item-cell{position:relative;min-width:0;min-height:99px;padding:5px;display:flex;flex-direction:column;align-items:center;gap:4px;background:linear-gradient(135deg,#1b27243d,#0b1111df);border:1px solid #81867165;color:#c4cebf;border-radius:3px}.terminal-item-cell img{width:100%;height:57px;object-fit:contain!important}.terminal-item-cell>span{font-size:10px;line-height:1.3;max-width:100%;text-align:center;overflow-wrap:anywhere}.terminal-item-cell>b{position:absolute;right:5px;top:4px;font-size:11px;text-shadow:0 1px 4px #000}.terminal-item-cell.selected{border-color:#e3aa5b;background:#74602d35;box-shadow:inset 0 0 12px #e9ae2922}.terminal-item-cell.is-equipped:before{content:'●';position:absolute;left:6px;top:3px;color:#b6ca80;font-size:9px}.terminal-item-cell.empty{background:#0b13132e;min-height:99px}.terminal-item-cell progress{margin-top:auto;height:3px}.terminal-item-detail{min-width:0;border-left:1px solid #9c976346;padding-left:19px}.terminal-item-detail h2{font-size:21px;line-height:1.3;margin:12px 0;overflow-wrap:anywhere}.terminal-item-detail p{font-size:12px;margin:12px 0}.terminal-detail-image{width:100%;height:170px;object-fit:contain!important;background:radial-gradient(ellipse,#57644829,transparent 68%);margin:10px 0 15px}.terminal-item-detail .zone-actions{margin:14px 0}.terminal-item-detail .rpg-effects{font-size:11px}.terminal-empty-note{margin:15px 0;font-size:12px}.terminal-shop-banner{border:1px solid #a28e605e;border-radius:4px;padding:28px;background:linear-gradient(90deg,#0e1514f7,#151c1cb0,#17222365),url('../../images/zone/locations/depot.webp') center 48%/cover;margin-bottom:18px}.terminal-shop-banner h2{margin:12px 0;font-size:30px}.terminal-shop-banner p{font-size:13px}.terminal-toolbar{display:flex;align-items:center;gap:18px;margin:16px 0;font-size:12px}.terminal-toolbar>.terminal-search{flex:1}.terminal-search{display:flex;align-items:center;gap:10px;padding:0 12px;border:1px solid #9495726a;background:#0e1514b5}.terminal-search input{border:0!important;background:none!important;padding:10px 0!important;min-width:0}.terminal-shop-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.38fr);gap:18px}.terminal-shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.terminal-shop-card{display:flex;flex-direction:column;min-width:0;border:1px solid #8d8e7066;border-radius:4px;padding:11px;background:var(--term-glass);box-shadow:inset 0 1px #f1e3b21a}.terminal-shop-card.selected{border-color:#d3a45b;box-shadow:inset 0 0 22px #ae7a251b}.terminal-card-open{display:flex;flex-direction:column;min-width:0;text-align:left;border:0;background:transparent;color:#dcded0;padding:0;font:inherit;width:100%}.terminal-card-open strong{font-size:12px;font-weight:600;line-height:1.4;overflow-wrap:anywhere}.terminal-card-open span{font-size:10px;color:#b7beae;margin:4px 0}.terminal-card-open img{width:100%;height:95px;object-fit:contain!important}.terminal-shop-card>p{font-size:11px;margin:10px 0}.terminal-buy-row{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:auto;padding-top:12px;border-top:1px solid #98976b30}.terminal-buy-row strong{font-size:12px;color:#dfbe7e;font-variant-numeric:tabular-nums;white-space:nowrap}.terminal-buy-row .zone-button{padding:6px 10px;font-size:11px!important}.terminal-shop-detail{align-self:start;position:sticky;top:0;min-width:0}.terminal-shop-detail h2{font-size:23px;line-height:1.25;overflow-wrap:anywhere}.terminal-shop-detail p{font-size:12px}.terminal-price{display:block;font-size:24px;color:#e7bd79;margin:20px 0 12px}.terminal-shop-detail>.zone-button{width:100%}.terminal-shop-detail>div{display:flex;justify-content:space-between;font-size:12px;gap:10px}.terminal-shop-detail>div dd{margin:0}.terminal-pagination{display:flex;align-items:center;justify-content:center;gap:20px;margin:20px 0;font-size:12px}.terminal-craft-layout{display:grid;grid-template-columns:160px minmax(0,1fr) minmax(220px,.45fr);gap:14px}.zone-app .terminal-craft-categories{align-self:start;display:flex;flex-direction:column;gap:7px;padding:9px;position:sticky;top:0}.terminal-craft-categories>button{display:flex;align-items:center;gap:13px;width:100%;min-height:65px;padding:12px 9px;border:1px solid #9997754f;background:#171f1c77;color:#b9c2b2;text-align:left;font:12px/1.4 "Segoe UI",sans-serif;border-radius:3px}.terminal-craft-categories>button i{font-size:22px}.terminal-craft-categories>button.active{background:#89602c4a;border-color:#bd904d;color:#e9c48c}.terminal-craft-categories>.zone-button{padding:9px;font-size:10px!important;margin:10px 0!important}.terminal-recipes{min-width:0;display:flex;flex-direction:column;gap:12px}.terminal-recipe{padding:14px;background:var(--term-glass);border:1px solid #888d7061;border-radius:4px;box-shadow:inset 0 1px #f6e3a815;display:grid;grid-template-columns:minmax(140px,.8fr) minmax(0,1fr);gap:14px;align-items:start}.terminal-recipe.selected{border-color:#c79b58;background:linear-gradient(110deg,#6c562338,#101817ee)}.terminal-recipe-open{border:0;color:#d6decd;background:none;display:flex;align-items:center;text-align:left;gap:10px;padding:0;width:100%;min-width:0}.terminal-recipe-open>img{width:62px;height:74px;object-fit:contain!important;flex:none}.terminal-recipe-open>div{min-width:0}.terminal-recipe-open strong{font:600 14px/1.35 "Segoe UI",sans-serif;display:block;overflow-wrap:anywhere}.terminal-recipe-open small{font-size:10px;margin-top:6px}.terminal-recipe-open span{display:block;font-size:11px;color:#c7bd99;margin-top:7px}.terminal-ingredients{display:flex;flex-wrap:wrap;gap:7px;align-items:flex-start}.terminal-ingredients>div{width:59px;display:flex;flex-direction:column;align-items:center;gap:4px;color:#b7ca9b;text-align:center;min-width:0}.terminal-ingredients img{width:46px;height:42px;object-fit:contain!important;background:#101819bf;border:1px solid #81866963;padding:3px}.terminal-ingredients span{font-size:9px;line-height:1.25;overflow-wrap:anywhere}.terminal-ingredients b{font-size:12px;color:#afc890}.terminal-ingredients .short b{color:#e1a278}.terminal-ingredients .short img{border-color:#a96a4760}.terminal-recipe-action{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-top:12px}.terminal-recipe-action>span{font-size:10px;color:#bac1ae}.terminal-shortage{display:block;font-size:11px!important;color:#deb08a!important;margin-top:9px!important;line-height:1.5}.terminal-craft-detail{align-self:start;position:sticky;top:0;min-width:0}.terminal-craft-detail h2{font-size:22px;line-height:1.3}.terminal-craft-detail h3{margin-top:23px;font-size:14px;border-bottom:1px solid #99967547;padding-bottom:9px}.terminal-craft-detail p{font-size:12px}.terminal-duel{display:grid;grid-template-columns:minmax(180px,1fr) minmax(300px,1.2fr) minmax(180px,1fr);gap:16px;align-items:stretch;position:relative;padding:16px;border:1px solid #a5916354;border-radius:4px;background:linear-gradient(#11171665,#0a1114a0),url('../../images/zone/locations/cordon.webp') center/cover;margin-bottom:20px}.terminal-fighter{min-width:0;border:1px solid #9a9e786e;background:linear-gradient(#101a19db,#0b1211a1);display:flex;flex-direction:column;border-radius:4px;overflow:hidden;box-shadow:inset 0 1px #f6e6be22}.terminal-fighter header{padding:15px;border-bottom:1px solid #98977366;background:#111917b3}.terminal-fighter header h2{font-size:19px;line-height:1.3;overflow-wrap:anywhere}.terminal-fighter header span{display:block;font-size:10px;letter-spacing:.08em;color:#b0bba7;margin-top:8px}.terminal-fighter-portrait{position:relative;flex:1;min-height:260px;display:flex;align-items:center;background:radial-gradient(ellipse,#68745335,transparent 70%);overflow:hidden}.terminal-fighter-portrait>img{width:100%;height:100%;max-height:430px;object-fit:contain!important;transition:filter .25s,transform .25s}.terminal-fighter.was-hit .terminal-fighter-portrait>img{filter:sepia(.1) saturate(.6)}.terminal-fighter.is-guarding{border-color:#92a890;box-shadow:inset 0 0 25px #83bb8a17}.terminal-fighter.is-guarding .terminal-fighter-portrait:after{content:'◇';position:absolute;inset:0;display:grid;place-items:center;font-size:110px;color:#89a68c27;pointer-events:none}.terminal-action-badge{position:absolute;left:10px;right:10px;bottom:10px;text-align:center;background:#0c1413e8;border:1px solid #9d976973;padding:8px;color:#d8caa4;font-size:10px;letter-spacing:.09em}.terminal-damage{position:absolute;right:16px;top:14px;font-size:30px;color:#edb18f;text-shadow:0 2px 9px #000}.terminal-fighter>footer{padding:14px;border-top:1px solid #9c97635a;background:#0d1413d9}.terminal-health{display:flex;justify-content:space-between;gap:10px;font-size:11px;color:#c4c6b6;margin-bottom:9px}.terminal-health strong{color:#dfb69b}.terminal-fighter progress::-webkit-progress-value{background:linear-gradient(90deg,#955d40,#c89771)}.terminal-fighter>footer small{margin-top:9px;font-size:10px}.terminal-fighter.is-defeated{filter:grayscale(.8);opacity:.75}.zone-app .terminal-battle-controls{padding:17px;background:linear-gradient(#121c18dc,#141b1be8)!important;align-self:stretch}.terminal-targets{display:grid;grid-template-columns:1fr 1fr;gap:12px}.terminal-targets h3{font-size:13px;margin:0 0 9px;color:#d9c9a1}.terminal-targets h3 i{margin-right:5px}.terminal-zone-picker{display:flex;flex-direction:column;gap:6px}.terminal-zone-picker>button{display:flex;align-items:center;gap:10px;padding:9px 10px;min-height:39px;border:1px solid #8b987254;background:linear-gradient(#3e4b3d27,#16211dca);color:#c3ccbd;font:12px/1.4 "Segoe UI",sans-serif;border-radius:3px}.terminal-zone-picker>button.selected{border-color:#d9a251;background:#87602c47;box-shadow:inset 0 0 16px #d7a42d17;color:#ffd591}.terminal-zone-picker>button i{font-size:16px}.terminal-battle-controls label{display:block;margin-top:13px;font-size:11px;color:#afbcae}.terminal-battle-controls select{margin-top:5px}.terminal-odds{display:grid;grid-template-columns:1fr 1fr;border:1px solid #898b6365;background:#0e1716b8;gap:0;margin:15px 0}.terminal-odds>span{display:flex;flex-direction:column;align-items:center;font-size:10px;color:#aebca9;padding:9px 5px;border:1px solid #71735224}.terminal-odds b{font-size:21px;font-weight:500;color:#d4b97e;line-height:1.4}.terminal-battle-actions{display:grid;gap:7px;margin-top:14px}.terminal-battle-actions .zone-button{min-height:39px;padding:8px;font-size:12px!important}.terminal-battle-controls .zone-actions{gap:7px;margin:12px 0 0}.terminal-battle-controls .zone-actions button{flex:1}.terminal-focus{font-size:11px!important;color:#d9bd7c!important}.terminal-battle-controls .zone-fineprint{font-size:10px!important;line-height:1.6;margin:7px 0}.terminal-round{border:1px solid #ac95676b;padding:12px 18px;font:18px monospace;background:#18251c8c;white-space:nowrap}.terminal-log{padding:0;list-style:none;font:12px/1.8 Consolas,monospace;color:#b7c5b7;margin:0;max-height:295px;overflow:auto;scrollbar-gutter:stable}.terminal-log li{border-bottom:1px solid #7c8b611c;padding:7px 10px;overflow-wrap:anywhere}.terminal-log .round{color:#d2c6a0;background:#6b5e2d15;border-top:1px solid #a0986a4d}.terminal-log .critical{color:#e2b875}.terminal-log .miss{color:#929d96}.terminal-battle-result{margin-bottom:22px}.terminal-battle-result h2{margin:10px 0}.terminal-battle-result details{margin:16px 0}.terminal-monster-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.terminal-monster{display:grid;grid-template-columns:minmax(130px,.65fr) minmax(0,1fr);gap:16px;border:1px solid var(--term-border);padding:18px;background:var(--term-glass);border-radius:4px}.terminal-monster>div:first-child{display:flex;align-items:center}.terminal-monster img{width:100%;height:200px;object-fit:contain!important}.terminal-monster h2{font-size:21px;line-height:1.3;margin:10px 0}.terminal-monster p{font-size:12px}.terminal-monster .zone-button{margin-top:14px;width:100%}.terminal-map-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.38fr);gap:18px;margin-top:18px}.terminal-cartography{border:1px solid #a9997075;background:#131b1c;border-radius:4px;min-width:0;overflow:hidden;align-self:start}.terminal-map-top,.terminal-map-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 17px;background:#151d1ceb;color:#c8cbb5;font-size:11px}.terminal-map-top span{font-weight:600;letter-spacing:.09em}.terminal-map-top small{font-size:10px}.terminal-map-scroll{max-height:820px;overflow:auto;background:#4c4a3a}.terminal-terrain{display:block;min-width:540px;max-width:none;color:#222d22;user-select:none}.terminal-compass{fill:none;stroke:#cfc4a0;stroke-width:2;opacity:.7}.terminal-compass text{fill:#ede0b9;stroke:none;font:15px serif}.terminal-terrain-contours{color:#192419;stroke-width:1.6}.terminal-map-road{fill:none;stroke:#d2c9b8;stroke-width:3;stroke-linecap:round;stroke-dasharray:5 7;filter:drop-shadow(1px 1px 2px #141712);opacity:.8}.terminal-map-road.reachable{stroke:#f3c978;stroke-width:4;opacity:1}.terminal-map-road.visited{stroke:#aebd93}.terminal-map-node circle,.terminal-map-node path{fill:#131d17;stroke:#e3ddc6;stroke-width:3}.terminal-map-node.reachable circle{fill:#c5cead;stroke:#1a291d}.terminal-map-node.current circle,.terminal-map-node.current path{fill:#dec280;stroke:#f5e2a7;stroke-width:4;filter:drop-shadow(0 0 7px #eedc7880)}.terminal-map-node.selected circle{stroke:#f7ca78;stroke-width:5}.terminal-map-node text{fill:#efe7d3;font:17px "Segoe UI",sans-serif;paint-order:stroke;stroke:#273025;stroke-width:4;stroke-linejoin:round}.terminal-map-node .terminal-map-name{font-size:12px}.terminal-map-stamp{fill:#ddd2b6;font:12px monospace;letter-spacing:2px;opacity:.8}.terminal-map-bottom>div{display:flex;gap:4px}.terminal-map-bottom button{background:#17221b;border:1px solid #7c88666e;color:#d1d8c2;padding:5px 10px;min-height:32px;font-size:12px}.terminal-location-index{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#82896533}.terminal-location-index button{display:flex;align-items:center;text-align:left;gap:12px;padding:12px;border:0;background:#17201dec;color:#b6c3b3;min-width:0;font:12px/1.4 "Segoe UI",sans-serif;overflow-wrap:anywhere}.terminal-location-index b{color:#cfb883;font:12px monospace;flex:none}.terminal-location-index button.selected{background:#75613644;color:#edd4a2}.terminal-map-details{align-self:start;position:sticky;top:0}.terminal-map-image{width:100%;height:145px;object-fit:contain!important;margin-bottom:16px}.terminal-map-details h2{font-size:23px;line-height:1.3;margin:8px 0}.terminal-map-details>h3{font-size:14px;margin:22px 0 12px;border-bottom:1px solid #958e6659;padding-bottom:9px}.terminal-map-details p{font-size:12px}.terminal-route{padding:12px 0;margin:12px 0;border-bottom:1px solid #a3945d45}.terminal-route h3{font-size:15px;line-height:1.4}.terminal-route .zone-button{margin-top:12px;width:100%}.terminal-route-link{border:1px solid #9d95624c;background:#16231bd8;color:#c9d2bd;padding:10px;text-align:left;display:block;width:100%;font:12px/1.5 "Segoe UI",sans-serif;margin:7px 0}.terminal-route-link small{font-size:10px;margin-top:4px}.terminal-camp-scene{position:relative;display:grid;grid-template-columns:minmax(170px,.75fr) minmax(160px,1.2fr) minmax(170px,.75fr);gap:14px;align-items:stretch;background:linear-gradient(#09121433,#0a11156b),url('../../images/zone/locations/hero.webp') center/cover;border:1px solid #a4936870;box-shadow:0 20px 40px #0004,inset 0 0 100px #0005;padding:18px;border-radius:4px;margin-bottom:20px}.terminal-camp-column{display:flex;flex-direction:column;gap:14px;position:relative;z-index:1}.terminal-camp-card{min-height:145px;padding:17px;display:block;border:1px solid #a89a6b72;border-radius:3px;background:linear-gradient(130deg,#243126ac,#0d1415dd);backdrop-filter:blur(9px);box-shadow:inset 0 1px #e6e0b720}.terminal-camp-card>i{float:left;margin-right:10px;color:#b1c0aa;font-size:24px}.terminal-camp-card h2{font-size:18px;text-transform:uppercase;line-height:1.5;letter-spacing:.04em}.terminal-camp-card p{font-size:12px;margin:12px 0;color:#b5c2b2}.terminal-camp-card span{display:block;padding-top:9px;border-top:1px solid #a79d7052;text-align:right;font-size:11px;color:#d8bd80}.terminal-camp-card:hover{border-color:#d7ac69;background:linear-gradient(130deg,#403b229f,#121d1ae8)}.terminal-camp-center{align-self:end;min-width:0;text-align:center;padding:40px 6px 15px;background:linear-gradient(transparent,#0e191785);border-radius:3px}.terminal-camp-center h2{font-size:clamp(20px,2vw,31px);text-shadow:0 2px 10px #000;line-height:1.3;margin:16px 0;overflow-wrap:anywhere}.terminal-camp-center p{font-size:13px;margin-bottom:16px;color:#c3cbb4}.terminal-camp-quick{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;padding:12px;border:1px solid #a1986863;background:#121d17d9;border-radius:4px}.terminal-camp-quick .zone-button{flex:1 1 120px;min-height:44px;font-size:12px!important;padding:8px}.gz12-warehouse{margin:20px 0!important}.gz12-building-grid{gap:14px!important}.arena-teams{gap:16px}.arena-team{border-radius:4px;background:#13201b9c;border-color:#9990667d}.arena-fighter{background:linear-gradient(#1c282251,#0c1614d1)!important;border-color:#98936570!important}.arena-fighter .arena-portrait img{object-fit:contain!important}.arena-command-pickers{gap:10px}.arena-command-pickers label{font-size:11px}.arena-command-buttons .zone-button{min-height:46px}.arena-log{margin-top:20px}.arena-commands{border-color:#bda576!important}.arena-log p{font-family:Consolas,monospace;font-size:12px!important}.zone-app[data-screen=combat] .zone-status{display:none}.zone-app[data-screen=map] .zone-status{margin-bottom:14px}.zone-app .terminal-zone-picker button:disabled{opacity:.5}.zone-no-fx .terminal-fighter-portrait>img{transition:none}
/* Same independently scrolling shell for administration. */
body.zone-admin{height:100dvh;overflow:hidden}.zone-admin .admin-header{position:fixed;inset:0 0 auto;height:82px;z-index:80;background:#131e1cf0;backdrop-filter:blur(20px);border-bottom:1px solid #a4916475}.zone-admin .admin-layout{display:block!important;max-width:none!important}.zone-admin .admin-sidebar{display:block;position:fixed;inset:82px auto 0 0;width:232px;overflow:auto;background:linear-gradient(#111a19f2,#121c19ed);padding:17px 12px;border-right:1px solid #a99a6760;z-index:65}.zone-admin .admin-main{position:fixed;inset:82px 0 0 232px;overflow:auto;padding:28px!important;max-width:none!important;min-width:0;width:auto}.zone-admin .admin-sidebar nav{border:1px solid #8d8c6449;background:#0c151390;padding:5px;margin-bottom:18px}.zone-admin .admin-sidebar nav a{border-radius:3px;padding:11px;font-size:12px;border:1px solid transparent}.zone-admin .admin-sidebar nav a.active{border:1px solid #be94588c;background:linear-gradient(110deg,#65502966,#38362771);color:#e9c385}.zone-admin .box,.zone-admin .city-edit-section{background:var(--term-glass)!important;border:1px solid var(--term-border);border-top-color:#c9b7756d;border-radius:4px;box-shadow:inset 0 1px #efe3b61a,0 7px 20px #0004;backdrop-filter:blur(12px)}.zone-admin .form-control{background:#101918dc;border-color:#8e9a7161}.zone-admin .box-header{border-bottom-color:#a3956752}.zone-admin .btn{border-radius:3px}.zone-admin .btn-primary{background:linear-gradient(130deg,#7d532c,#b18a49);border-color:#c2a06b}.zone-admin .admin-footer{display:none}.zone-admin .content-header h1{font-size:30px;letter-spacing:.025em;text-transform:uppercase}.zone-admin .admin-group-label{font-size:9px;letter-spacing:.14em;color:#b8a985}.zone-admin .admin-user{padding:9px;margin-bottom:15px}.zone-admin .admin-user img{width:42px;height:42px}.zone-admin .table th{background:#1a241cd6}.zone-admin .table td{border-bottom-color:#7483693d}.zone-admin .world-nested-row{background:#0e1917a6;border-color:#a3916557}.zone-admin .admin-stat-grid .box{border-left:2px solid #bd9455}.zone-admin .world-grid .form-control{max-width:100%}
@media(min-width:1680px){.terminal-shop-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.terminal-gear-slot>img{height:70px;max-height:70px}.terminal-inventory-top{grid-template-columns:245px minmax(0,1fr)}.terminal-fighter-portrait{min-height:350px}.terminal-battle-controls{max-width:600px}.terminal-camp-scene{min-height:660px}.terminal-camp-card{min-height:175px}}
@media(max-width:1250px){.zone-sidebar,.zone-admin .admin-sidebar{width:205px}.zone-main,.zone-admin .admin-main{left:205px;padding:20px!important}.terminal-craft-layout{grid-template-columns:130px minmax(0,1fr)}.terminal-craft-detail{grid-column:1/-1;position:static;display:block}.terminal-craft-detail>.terminal-detail-image{float:right;width:160px}.terminal-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.terminal-inventory-top{grid-template-columns:185px minmax(0,1fr)}.terminal-paperdoll{grid-template-columns:minmax(95px,.7fr) minmax(100px,1fr) minmax(115px,1fr)!important;gap:8px!important;padding:11px!important}.terminal-gear-slot{padding:7px}.terminal-gear-slot strong{font-size:10px}.terminal-gear-slot img{height:49px}.terminal-character h2{font-size:18px}.terminal-monster{grid-template-columns:1fr}.terminal-monster img{height:155px}.terminal-monster>div:first-child{max-height:155px}.terminal-duel{grid-template-columns:minmax(135px,.8fr) minmax(280px,1.4fr) minmax(135px,.8fr);gap:10px;padding:10px}.terminal-fighter header h2{font-size:15px}.terminal-fighter header,.terminal-fighter>footer{padding:11px}.terminal-health{flex-direction:column;gap:4px}.terminal-inventory-body{grid-template-columns:minmax(0,1fr) 220px}.terminal-map-layout{grid-template-columns:minmax(0,1fr) 250px}.terminal-recipe{grid-template-columns:1fr}.terminal-camp-scene{grid-template-columns:minmax(145px,1fr) minmax(120px,1fr) minmax(145px,1fr);padding:12px;gap:10px}.terminal-camp-card{padding:12px;min-height:140px}.terminal-camp-card h2{font-size:15px}.terminal-camp-card i{font-size:19px}.terminal-camp-center .zone-eyebrow{font-size:8px}}
@media(max-width:960px){.zone-sidebar,.zone-admin .admin-sidebar{width:190px}.zone-main,.zone-admin .admin-main{left:190px;padding:18px!important}.zone-header{padding:0 16px}.zone-header-right{gap:14px}.terminal-inventory-top{grid-template-columns:1fr}.terminal-stat-panel{display:none}.terminal-shop-layout{grid-template-columns:minmax(0,1fr) 240px}.terminal-duel{grid-template-columns:1fr 1fr}.terminal-battle-controls{grid-column:1/-1;grid-row:2}.terminal-fighter-portrait{min-height:170px;height:200px}.terminal-fighter header h2{font-size:18px}.terminal-health{flex-direction:row}.terminal-targets{grid-template-columns:1fr 1fr}.terminal-zone-picker{display:grid;grid-template-columns:1fr 1fr}.terminal-battle-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.terminal-odds{grid-template-columns:repeat(4,minmax(0,1fr))}.terminal-map-layout{grid-template-columns:1fr}.terminal-map-details{position:static}.terminal-map-details>.terminal-map-image{float:right;width:180px;margin-left:18px}.terminal-map-scroll{max-height:610px}.terminal-camp-scene{grid-template-columns:1fr 1fr}.terminal-camp-center{grid-column:1/-1;grid-row:1;min-height:200px;background:linear-gradient(transparent,#0d171585)}.terminal-camp-column{grid-row:2}.terminal-shop-detail{padding:15px!important}.terminal-craft-detail h2{font-size:20px}}
@media(max-width:760px){body.zone-app,body.zone-admin{height:auto;min-height:100dvh;overflow:auto}.zone-header,.zone-admin .admin-header{height:70px;padding:0 12px}.zone-brand .city-brand{font-size:16px!important;gap:8px}.zone-brand .city-brand img{height:34px;width:34px}.zone-brand>small{display:none}.zone-header-right .zone-fx-toggle{display:none}.zone-header-right{gap:9px}.zone-user{font-size:11px}.zone-menu-toggle{display:block}.zone-layout,.zone-admin .admin-layout{padding-top:70px}.zone-sidebar{display:none;top:70px;bottom:0;width:260px!important;background:#111a18f7!important;box-shadow:12px 0 45px #000a;backdrop-filter:blur(18px)}.zone-sidebar.is-open{display:block}.zone-main{position:static!important;overflow:visible;padding:18px 12px 0!important}.zone-title{flex-wrap:wrap;margin-bottom:16px}.zone-title h1{font-size:26px}.zone-title>.zone-button{padding:9px 13px;min-height:36px;font-size:11px!important}.zone-status{grid-template-columns:repeat(3,minmax(0,1fr))!important;margin-bottom:18px}.zone-status>div{padding:8px 10px!important}.zone-status strong{font-size:19px}.zone-status>div:nth-child(4),.zone-status>div:nth-child(5){border-top:1px solid #8281643c}.zone-status>div>span{font-size:8px;letter-spacing:.02em}.zone-status>div>small{font-size:9px}.zone-app .zone-panel{padding:15px}.terminal-tabs{gap:4px;padding:5px;margin:10px 0}.terminal-tabs button{padding:7px 9px;font-size:11px;min-height:36px}.terminal-inventory-top{gap:10px}.terminal-inventory-body{grid-template-columns:1fr}.terminal-item-detail{border-left:0;border-top:1px solid #9c976346;padding:15px 0 0}.terminal-item-detail .terminal-detail-image{float:right;max-width:160px;height:120px}.terminal-item-grid{grid-template-columns:repeat(auto-fill,minmax(67px,1fr))}.terminal-item-cell{min-height:88px}.terminal-item-cell img{height:49px}.terminal-item-cell.empty{min-height:88px}.terminal-item-detail:after{content:'';display:block;clear:both}.terminal-shop-layout{grid-template-columns:1fr}.terminal-shop-detail{position:static}.terminal-shop-detail>.terminal-detail-image{float:right;max-width:180px}.terminal-shop-detail:after{content:'';display:block;clear:both}.terminal-toolbar{flex-wrap:wrap;gap:10px}.terminal-toolbar>.terminal-search{flex-basis:100%}.terminal-toolbar>span{font-size:11px}.terminal-shop-banner{padding:20px}.terminal-shop-banner h2{font-size:24px}.terminal-craft-layout{grid-template-columns:1fr;gap:12px}.zone-app .terminal-craft-categories{position:static;flex-direction:row;flex-wrap:wrap;padding:7px;gap:6px}.terminal-craft-categories>button{flex:1 1 85px;width:auto;min-height:45px;padding:8px;font-size:11px;gap:7px}.terminal-craft-categories>button i{font-size:15px}.terminal-craft-categories>.zone-button{margin:0!important}.terminal-recipe{grid-template-columns:minmax(130px,.8fr) minmax(0,1fr);gap:10px;padding:12px}.terminal-recipe-open{display:block}.terminal-recipe-open>img{float:left;margin-right:8px;width:47px;height:56px}.terminal-recipe-open strong{font-size:12px}.terminal-recipe-open small,.terminal-recipe-open span{font-size:9px}.terminal-ingredients>div{width:48px}.terminal-ingredients img{width:39px;height:37px}.terminal-ingredients>div span{font-size:8px}.terminal-ingredients{gap:4px}.terminal-recipe-action{flex-wrap:wrap;gap:7px}.terminal-recipe-action .zone-button{width:100%;padding:7px;min-height:32px;font-size:11px!important}.terminal-shortage{font-size:10px!important}.terminal-craft-detail .terminal-detail-image{width:130px}.terminal-camp-scene{padding:10px}.terminal-camp-column{gap:10px}.terminal-camp-card{min-height:135px;padding:12px}.terminal-camp-center{min-height:180px;padding:24px 10px}.terminal-camp-center h2{font-size:25px}.terminal-camp-card h2{font-size:15px}.terminal-camp-card p{font-size:11px}.terminal-camp-quick{padding:8px}.terminal-camp-quick .zone-button{flex-basis:110px}.terminal-duel{gap:9px;padding:9px}.terminal-fighter-portrait{height:195px;min-height:170px}.terminal-fighter header h2{font-size:15px}.terminal-fighter header span{font-size:8px}.terminal-fighter footer{padding:10px}.terminal-health{font-size:10px;flex-wrap:wrap}.terminal-fighter footer small{font-size:9px}.terminal-battle-controls{padding:13px!important}.terminal-odds b{font-size:19px}.terminal-odds span{font-size:9px}.terminal-zone-picker>button{padding:8px;font-size:11px;gap:7px}.terminal-targets h3{font-size:12px}.terminal-targets{gap:10px}.terminal-log{font-size:11px;max-height:300px}.terminal-section-label{font-size:11px}.terminal-section-label>span{display:none}.terminal-monster-grid{grid-template-columns:1fr}.terminal-monster{grid-template-columns:120px minmax(0,1fr);gap:13px;padding:14px}.terminal-monster h2{font-size:20px}.terminal-map-details>.terminal-map-image{max-width:130px;height:105px}.terminal-location-index button{font-size:10px;padding:10px;gap:8px}.terminal-map-bottom{flex-wrap:wrap;padding:10px}.terminal-map-bottom>span{font-size:10px}.terminal-cartography .terminal-map-top{padding:10px;gap:10px;flex-wrap:wrap}.terminal-terrain{min-width:540px}.terminal-map-scroll{max-height:540px}.terminal-item-grid .terminal-empty-icon{min-height:49px}.zone-admin .admin-sidebar{display:none;top:70px;width:260px;box-shadow:10px 0 40px #000a}.zone-admin.admin-nav-open .admin-sidebar{display:block}.zone-admin .admin-main{position:static;overflow:visible;padding:22px 12px!important}.zone-admin .admin-header .city-brand{font-size:14px}.zone-admin .admin-header>div{gap:12px}.zone-admin .admin-menu-toggle{display:block}.zone-admin .content-header h1{font-size:25px}.zone-admin .world-grid{grid-template-columns:1fr}.zone-app .rpg-pack{flex-wrap:wrap}.zone-app .rpg-pack>.zone-button{margin:0}.terminal-stat-panel{display:none}}
@media(max-width:420px){.terminal-paperdoll{grid-template-columns:minmax(80px,.85fr) minmax(78px,.9fr) minmax(90px,1fr)!important;gap:5px!important;padding:8px!important}.terminal-gear-slot{padding:5px;min-height:98px}.terminal-gear-slot>span:first-child{font-size:9px}.terminal-gear-slot strong{font-size:9px}.terminal-gear-slot>img{height:43px}.terminal-short-slots{grid-template-columns:1fr}.terminal-short-slots .terminal-gear-slot{min-height:91px}.terminal-slot-column{gap:6px}.terminal-character h2{font-size:14px}.terminal-character p{font-size:9px}.terminal-character>img{object-fit:contain!important}.terminal-belt{padding:8px}.terminal-art-cell{max-width:125px;flex-basis:75px}.terminal-camp-card h2{font-size:13px}.terminal-camp-card>i{font-size:16px}.terminal-camp-card p{font-size:10px}.terminal-camp-quick .zone-button{font-size:11px!important}.terminal-duel{padding:7px;gap:7px}.terminal-fighter header h2{font-size:13px}.terminal-fighter-portrait{min-height:160px;height:175px}.terminal-action-badge{font-size:8px;left:5px;right:5px;padding:6px}.terminal-health{font-size:9px}.terminal-damage{font-size:25px}.terminal-battle-actions{grid-template-columns:1fr 1fr}.terminal-battle-actions>button:first-child{grid-column:1/-1}.terminal-odds>span{font-size:8px}.terminal-odds b{font-size:17px}.terminal-shop-card{padding:8px}.terminal-card-open img{height:77px}.terminal-buy-row{flex-wrap:wrap;gap:8px}.terminal-buy-row .zone-button{width:100%}.terminal-shop-grid{gap:8px}.terminal-monster{grid-template-columns:100px minmax(0,1fr)}.terminal-recipe{grid-template-columns:1fr}.terminal-recipe-open{display:flex}.terminal-recipe-open>img{float:none;margin:0;width:55px;height:55px}.terminal-recipe-action .zone-button{width:auto;min-width:90px}.terminal-recipe-action{flex-wrap:nowrap}.terminal-fighter footer{padding:8px}.terminal-inventory-bottom{padding:10px!important}}
@media(prefers-reduced-motion:reduce){.zone-main{scroll-behavior:auto}.terminal-fighter-portrait>img{transition:none}}
.terminal-arena-rosters{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:16px 0}.terminal-arena-roster{min-width:0;padding:11px;border:1px solid #a6956561;background:#0f1a17b5;border-radius:3px}.terminal-arena-roster>span{display:block;font-size:10px;color:#c2ae7f;letter-spacing:.14em;margin-bottom:9px}.terminal-arena-roster>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(115px,1fr));gap:7px}.terminal-arena-roster button{min-width:0;display:flex;align-items:center;gap:8px;border:1px solid #92977656;padding:5px;background:#2731254a;color:#c7d4bd;text-align:left;font:11px "Segoe UI",sans-serif}.terminal-arena-roster button>img{height:38px;width:31px;object-fit:contain!important}.terminal-arena-roster button>div{min-width:0}.terminal-arena-roster strong{display:block;font-size:11px;overflow-wrap:anywhere}.terminal-arena-roster small{font-size:9px;margin-top:4px}.terminal-arena-roster .selected{border-color:#d1a15c;background:#79653240}.terminal-arena-roster .inactive{opacity:.4}.terminal-arena-odds{font:12px/1.8 "Segoe UI",sans-serif!important;color:#d5c695!important;padding:11px;background:#0d1713be;border:1px solid #ada47247}.terminal-arena-mode{padding:15px;display:flex;flex-wrap:wrap;align-items:center;gap:15px;border:1px solid #bba26b64;margin-bottom:18px;background:#14231ad1}.terminal-arena-mode strong{font-size:11px;letter-spacing:.1em;color:#d2bc8b}.terminal-arena-mode span{font-size:12px;color:#b6c5af}.terminal-arena-mode a{margin-left:auto}.terminal-battle-controls>h2{margin:25px 0;line-height:1.4}.terminal-battle-controls>.zone-button{margin:15px 0 5px;width:100%}.terminal-arena-roster .inactive img{filter:grayscale(1)}
@media(max-width:760px){.terminal-arena-rosters{gap:8px}.terminal-arena-roster>div{grid-template-columns:1fr}.terminal-arena-roster{padding:9px}.terminal-arena-mode{gap:10px}.terminal-arena-mode a{margin:0}.terminal-arena-odds{font-size:11px!important}}

/* Finishing layout: keep the inventory grid near the paperdoll, not a screen below it. */
.terminal-map-node .terminal-map-hit{fill:transparent!important;stroke:none!important;pointer-events:all}
.terminal-stat-collapse summary{cursor:pointer;list-style:none}.terminal-stat-collapse summary:after{content:'⌄';float:right}.terminal-stat-collapse[open] summary:after{content:'⌃'}
.terminal-camp-scene{background-image:linear-gradient(#09121429,#0a111568),url('../../images/zone/terminal/camp.webp');background-position:center;background-size:cover}
@media(min-width:961px){
 .zone-main{padding-top:17px!important}.zone-status{margin-bottom:15px;min-height:69px}.zone-status>div{padding:7px 12px!important}.zone-status strong{font-size:21px}.zone-status small{font-size:10px}.zone-status progress{height:3px;margin-top:6px}.zone-title{margin-bottom:14px}.zone-title h1{font-size:29px;margin:4px 0 7px}.zone-title p{margin-bottom:0}
 .terminal-stat-panel{padding:16px!important}.terminal-stats>div{padding:5px 0;font-size:12px}.terminal-stats{margin:9px 0}.terminal-stat-panel .zone-button{padding:8px!important;font-size:11px!important}
 .terminal-gear-slot,.terminal-short-slots .terminal-gear-slot{min-height:95px;padding:6px}.terminal-gear-slot>img{height:42px;max-height:42px}.terminal-gear-slot strong{font-size:10px;line-height:1.2}.terminal-slot-column{gap:7px}.terminal-paperdoll{gap:10px!important;padding:12px!important}.terminal-short-slots{gap:7px}.terminal-character>img{padding:0 5px}.terminal-character>div{padding-top:36px;padding-bottom:8px}.terminal-character h2{font-size:19px}.terminal-character p{margin-top:4px}
 .terminal-shop-banner{padding:16px 22px}.terminal-shop-banner h2{font-size:24px;margin:7px 0}.terminal-shop-banner p{margin:5px 0}.terminal-tabs{margin:12px 0}
}
@media(max-width:960px){.terminal-stat-panel{display:block!important}.terminal-stat-collapse:not([open]){margin:0}.terminal-stat-panel{padding:12px!important}}
@media(min-width:961px){
 .terminal-stats>div,.terminal-mini-stats>div{line-height:1.45}
 .terminal-gear-slot{line-height:1.3}.terminal-gear-slot>span:first-child{line-height:1.3}.terminal-gear-slot progress{margin:3px 0}.terminal-gear-slot small{line-height:1.1}
 .terminal-art-cell{line-height:1.3}.terminal-belt{padding:8px}.terminal-belt .terminal-section-label{line-height:1.4;margin-bottom:6px;padding-bottom:6px}.terminal-art-cell>.terminal-empty-icon{height:30px;min-height:30px}.terminal-art-cell img{height:30px}.terminal-art-cell select{min-height:25px;line-height:1.2;padding:3px}
}

/* Compact tactical board: keep both actors and the first journal rows visible. */
.terminal-battle-controls{min-width:0;line-height:1.45}.terminal-targets{grid-template-columns:repeat(2,minmax(0,1fr))}.terminal-targets>div{min-width:0}.terminal-zone-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.terminal-zone-picker>button{min-width:0;gap:6px;padding:7px;min-height:34px;font-size:11px}.terminal-battle-controls .terminal-section-label{margin-bottom:10px;padding-bottom:9px}.terminal-battle-controls label{margin-top:10px}.terminal-battle-controls select{padding:8px}.terminal-battle-controls .terminal-odds{margin:10px 0}.terminal-battle-controls .terminal-odds>span{padding:5px;font-size:9px}.terminal-battle-controls .terminal-odds b{font-size:19px}.terminal-battle-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:10px}.terminal-battle-actions .zone-button{min-width:0;min-height:35px;padding:6px 3px;font-size:11px!important}.terminal-fighter header{padding:11px;line-height:1.35}.terminal-fighter header span{margin-top:5px}.terminal-fighter>footer{line-height:1.4;padding:12px}.terminal-fighter-portrait>img{max-height:350px}.terminal-battle-controls .zone-actions .zone-button{font-size:11px!important;padding:7px 5px;min-height:34px}.terminal-battle-journal{padding:16px!important}.terminal-log{font-size:11px;line-height:1.6}.terminal-log li{padding:5px 8px}
@media(max-width:760px){.terminal-zone-picker>button{font-size:10px;padding:6px 3px;gap:3px}.terminal-zone-picker>button i{font-size:11px}.terminal-targets{gap:6px}.terminal-battle-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.terminal-battle-actions>button:first-child{grid-column:auto}.terminal-battle-controls .terminal-odds>span{font-size:9px}.terminal-battle-controls .terminal-odds b{font-size:18px}}
