/* 0.47.3: content contract. Retired controls are not a second hidden app. */
:root{--type-scale:1}
:root[data-type-font="system"]{--pixel:'Malgun Gothic','Apple SD Gothic Neo',sans-serif;--mono:monospace}
:root[data-type-font="mono"]{--pixel:'D2Coding','Consolas','Malgun Gothic',monospace;--mono:var(--pixel)}
:root [data-retired="true"],:root .retired-ui,:root [hidden],:root .reaction-hidden,:root .combat-deck-hidden{display:none!important}
:root .terminal-screen,:root .terminal-screen *{min-width:0;overflow-wrap:anywhere;word-break:normal}
:root .terminal-screen p,:root .terminal-screen li,:root .terminal-screen span{white-space:normal}
:root #game-shell :is(p,label,input,textarea,select,.module-caption,.log-body,.message-bubble,.local-chat-line){font-size:calc(12px * var(--type-scale))}
:root #game-shell :is(button,.tag){font-size:calc(11px * var(--type-scale))}
:root #game-shell :is(h1,h2,h3,h4,button,.terminal-screen,.scene-deck){font-family:var(--pixel)}
:root .terminal-screen h3{font-size:calc(17px * var(--type-scale));line-height:1.3;max-width:100%}
.typography-anchor{position:relative}
:root #typography-toggle{font:700 19px/1 Georgia,serif!important;min-width:31px;width:31px;height:31px;padding:3px!important}
:root .typography-popover{position:absolute;right:0;top:calc(100% + 12px);width:224px;z-index:150;background:var(--shell-panel);border:1px solid var(--shell-accent);box-shadow:3px 6px 0 var(--shell-shadow);padding:13px;color:var(--shell-text)}
.typography-popover header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.typography-popover label{display:grid;gap:5px;margin:8px 0}.typography-popover select{width:100%}
:root .left-module .module-head{display:flex;flex-direction:column;align-items:flex-start;gap:3px;text-align:left}
:root .left-module .module-head strong{font:700 calc(16px * var(--type-scale))/1.35 var(--pixel)!important;text-align:left}
:root .left-module .module-head>span{font:9px/1.3 var(--mono);letter-spacing:.05em}
:root #game-shell .mini-map-controls button,:root #game-shell [data-mini-zoom],:root #game-shell .pda-map-toolbar button{width:23px;min-width:23px;height:23px;min-height:23px;padding:1px!important;display:inline-grid;place-items:center;line-height:1}
:root .field-terminal{border-radius:13px 13px 29px 29px!important;box-shadow:inset 0 1px 1px #dce5d320,inset 0 -4px 1px #0004,0 12px 22px var(--shell-shadow)!important;padding-bottom:18px!important}
.pda-screen-stack{position:relative;display:flex;flex:1;min-height:0;isolation:isolate;overflow:hidden;border-radius:5px 5px 10px 10px;background:var(--shell-screen)}
:root #terminal-display{position:relative;flex:1;min-height:0;max-height:100%;border-radius:5px 5px 10px 10px;overflow-x:hidden;overflow-y:auto;padding:12px 11px}
.pda-crt-glass{position:absolute;inset:0;z-index:20;pointer-events:none;border-radius:inherit;opacity:.48;background:repeating-linear-gradient(0deg,transparent 0px,transparent 2px,#0000001c 2px,#0000001c 3px),repeating-linear-gradient(90deg,#aecc9b06 0,#aecc9b06 1px,transparent 1px,transparent 4px),radial-gradient(ellipse at 50% 45%,transparent 50%,#00000052 100%);box-shadow:inset 0 0 20px #0005,inset 0 1px 4px #d5ebbd25}
:root[data-theme="light"] .pda-crt-glass{opacity:.28}
:root #game-shell .terminal-dock{display:grid!important;grid-template-columns:1fr 1.18fr 1fr;align-items:center;gap:17px;padding:13px 17px 0!important;margin:0!important;border:0!important;background:transparent!important;flex:0 0 64px;min-height:64px;box-shadow:none!important}
:root #game-shell .terminal-dock button{display:grid!important;place-items:center;width:100%;min-width:0;max-width:none;height:43px!important;min-height:43px;padding:0!important;border-radius:50% / 38%!important;background:linear-gradient(160deg,var(--shell-key),var(--shell-metal))!important;border:1px solid var(--shell-metal-edge)!important;box-shadow:0 3px 1px #0007,inset 0 1px 2px #ebf2e02b!important;color:var(--shell-key-text)!important}
:root #game-shell .terminal-dock button:active{transform:translateY(2px);box-shadow:0 1px 1px #0007,inset 0 1px 4px #0006!important}
:root #game-shell .terminal-dock #terminal-nav-home{height:48px!important;border-radius:11px 11px 18px 18px!important}
:root .terminal-dock svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8}.terminal-dock small{display:none!important}
:root #terminal-clock{cursor:pointer}:root #terminal-clock:focus-visible{outline:2px solid var(--shell-accent);outline-offset:2px}
/* Read-only status: one profile, one fold, one radar, one scan. */
:root .pda-identity-grid{grid-template-columns:84px minmax(0,1fr);padding:6px;gap:10px;align-items:center;border:0;background:transparent}
:root .pda-identity-grid .pda-face{width:84px;height:84px;filter:grayscale(1) contrast(2.8) sepia(.7) hue-rotate(50deg);border:0}
:root .identity-name{display:flex;gap:8px;align-items:baseline;justify-content:flex-start;flex-wrap:wrap}
:root .identity-name h3{margin:2px 0 6px!important;font-size:calc(15px * var(--type-scale))!important}
:root .identity-name>b{font:700 10px var(--mono);white-space:nowrap}
:root .pda-lifeline{font-size:9px;margin-bottom:6px;gap:3px}
:root .pda-identity-bar{margin-top:3px;gap:4px}
.life-archive-fold{border-block:1px solid var(--shell-line);margin:12px 0 4px;padding:7px 0}.life-archive-fold summary{display:flex;align-items:center;gap:7px;font:700 11px var(--pixel);cursor:pointer}.life-archive-fold summary:before{content:'▸';font-size:10px}.life-archive-fold[open] summary:before{content:'▾'}.life-archive-fold summary small{margin-left:auto;font-weight:400}
.life-archive-fold article{display:grid;grid-template-columns:56px 43px minmax(0,1fr);gap:5px;align-items:start;padding:7px 0;border-bottom:1px dotted var(--shell-line);font-size:10px}.life-archive-fold p{font-size:10px!important;margin:0}
:root .pda-ability-map{gap:0}:root .pda-ability-map #terminal-skill-radar,:root .pda-ability-map #skills-radar svg{width:100%;max-width:320px}
:root .radar-compact .skill-ring,:root .radar-compact .skill-spoke{fill:none;stroke:var(--shell-line);stroke-width:1}
:root .radar-compact .skill-shape{fill:color-mix(in srgb,var(--shell-accent) 26%,transparent);stroke:var(--shell-accent);stroke-width:1.5}
:root .radar-compact .skill-name{fill:var(--shell-text);font:11px var(--pixel)}
:root .radar-compact .skill-level-box{fill:var(--shell-raised);stroke:var(--shell-line)}
:root .radar-compact .skill-level{fill:var(--shell-text);font:9px var(--mono)}
:root #pda-anatomy-chart{border:0!important;background:transparent!important;padding:0!important;aspect-ratio:1/1;display:grid;place-items:center}
:root #pda-anatomy-chart svg{max-height:340px;width:100%;height:100%;margin:auto}
:root .organ-radar circle,:root .organ-radar path{stroke:var(--shell-accent);fill:none;stroke-width:1;opacity:.8}
:root .organ-radar.organ-hurt circle,:root .organ-radar.organ-hurt path{stroke:var(--shell-danger)}
:root .bio-callout path{fill:none;stroke:var(--shell-danger);stroke-width:.8}
:root .bio-callout text{fill:var(--shell-danger);font:10px var(--pixel)}
:root .bio-callout .callout-note{font:8px var(--pixel)}
:root .bio-caption{fill:var(--shell-sub);font:9px var(--pixel)}
:root .pda-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:5px!important}
:root .pda-metric{display:block!important;padding:6px 5px!important;min-height:0!important;gap:0!important;border:0!important;background:var(--shell-raised)!important}
:root .metric-title{display:flex;gap:4px;align-items:baseline;min-width:0;margin-bottom:4px;font-size:10px}
:root .metric-title small{font-size:8px!important;opacity:.7;line-height:1.3}
:root .metric-title b{margin-left:auto;font:10px var(--mono)}
:root .pda-meter{height:4px!important;border:0!important}
:root .pda-section-heading{font-size:11px;padding:9px 0 4px;margin:4px 0 5px}
/* A journal is text, not a stack of extra widgets. */
:root [data-terminal-screen="journal"] #terminal-journal-controls .console-section{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;min-height:0}
:root [data-terminal-screen="journal"] #log-list{min-height:0!important;max-height:none!important;height:auto!important;overflow:visible!important;padding:0!important;border:0!important;background:transparent!important}
:root [data-terminal-screen="journal"] .log-day{display:table!important;width:auto!important;max-width:100%;margin:13px 0 7px!important;padding:2px 5px!important;text-align:left!important;font:10px/1.4 var(--mono)!important;border:0!important;color:var(--shell-screen)!important;background:var(--shell-screen-text)!important}
:root [data-terminal-screen="journal"] .log-line{display:block!important;border:0!important;margin:0 0 9px!important;padding:0!important;background:transparent!important}
:root [data-terminal-screen="journal"] .log-time{display:none!important}
:root [data-terminal-screen="journal"] .log-body{display:block;line-height:1.75;font-size:calc(11px * var(--type-scale))!important}
:root[data-operator="false"] #command-form,:root[data-operator="false"] #pda-help-v472{display:none!important}
/* Cartography selection is on the pin. */
:root #terminal-map-canvas [data-map-id].route-selected>circle,:root #terminal-map-canvas .route-selected circle{stroke:var(--shell-danger)!important;stroke-width:4;fill:var(--shell-accent)!important}
:root .pda-map-toolbar{padding:4px 0;border:0;font-size:10px}:root .pda-map-toolbar>label{font-size:10px!important}
:root .pda-map-legend{font-size:9px!important;color:var(--shell-sub);line-height:1.6;margin:4px 0}
:root .pda-route-story{padding:5px 0 8px;margin:4px 0;border:0!important;background:none!important}
:root .pda-route-story h4{margin-bottom:5px;font-size:13px}
:root .pda-route-story p{font-size:calc(11px * var(--type-scale))!important}
:root #terminal-map-index .route-list-item{padding:5px 6px!important;min-height:26px!important}
:root .recommended-table{border-collapse:collapse;width:100%;margin:8px 0;font-size:10px;border:1px solid var(--shell-line)}
.recommended-table caption{text-align:left;font:700 10px var(--pixel);padding-bottom:5px}
.recommended-table th,.recommended-table td{padding:5px;text-align:left;font-weight:400;border:1px solid var(--shell-line)}
/* Spatial bag. No error list above the grid; unplaced items belong to the field list. */
:root #bag-grid{position:relative;overflow:hidden!important}:root #bag-grid.has-overflow:after{display:none!important}
:root .bag-cell .bag-item-name,:root .bag-cell .bag-qty{opacity:0}
.bag-slot-label{position:absolute;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:5;padding:2px;overflow:hidden;box-sizing:border-box}
:root .bag-slot-label>span{font-size:9px!important;font-family:var(--pixel);color:#fff!important;text-shadow:0 1px 1px #000,1px 0 1px #000,-1px 0 1px #000;line-height:1.4;text-align:center;white-space:normal;overflow-wrap:anywhere}.bag-slot-label small{display:block;font-size:8px}
:root #game-shell .terminal-screen .arca-v11-buttons.pda-bag-actions{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;justify-content:flex-end!important;gap:6px;grid-template-columns:none!important;min-width:0;width:100%;margin-top:6px}
:root #game-shell .terminal-screen .arca-v11-buttons.pda-bag-actions>button{width:31px!important;min-width:31px!important;max-width:31px!important;flex:0 0 31px!important;height:29px!important;min-height:29px!important;margin:0!important;padding:5px!important}
:root .pda-cargo-row{grid-template-columns:33px minmax(0,1fr) auto auto;gap:5px;padding:6px 0}
:root .pda-bag-error{padding:7px;border-width:1px;font-size:11px}.pda-bag-error .pda-cargo-row{background:transparent}
:root .pda-bag-special{margin-top:12px}.item-memory{font-size:9px;line-height:1.6;max-width:100%}.item-memory p{font-size:9px!important;margin:5px 0}
/* App tabs and compact social actions share one scale. */
:root .pda-app-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:6px;margin:5px 0 10px;min-width:0}
:root .pda-app-heading>h3{margin:0!important;font-size:calc(16px * var(--type-scale))!important;flex:1}
:root .pda-app-heading>.terminal-subtabs{margin:0!important;padding:0!important;border:0!important;display:flex!important;gap:4px!important;flex:none!important;flex-wrap:nowrap!important;background:transparent!important}
:root #game-shell .pda-app-heading .terminal-subtabs button{width:25px!important;height:25px!important;min-width:25px!important;min-height:25px!important;padding:4px!important;flex:none!important}
:root .pda-app-heading .terminal-subtabs svg{width:16px!important;height:16px!important}
:root .pda-contact-row{grid-template-columns:34px minmax(0,1fr);gap:5px;padding:7px 0}
:root .pda-contact-row .pda-contact-actions{grid-column:2;display:flex;flex-wrap:nowrap;gap:4px;justify-content:flex-start;max-width:100%}
:root .pda-contact-row small.friend-online{font:8px/1.3 var(--pixel)!important;white-space:nowrap!important}
:root .pda-contact-row b{font-size:11px;line-height:1.4}
:root #game-shell .pda-contact-actions .pda-icon-action,:root .pda-contact-actions .pda-pin-setting{width:24px!important;min-width:24px!important;height:24px!important;min-height:24px!important;flex:0 0 24px;padding:3px!important;margin:0;border:1px solid var(--shell-line);border-radius:3px;display:grid;place-items:center}
:root .pda-pin-setting input{width:16px!important;height:16px!important;min-height:0!important;padding:0!important;border:0!important;cursor:pointer;background:none!important}.pda-pin-setting input::-webkit-color-swatch-wrapper{padding:0}.pda-pin-setting input::-webkit-color-swatch{border:0;border-radius:2px}
:root .pda-party-card{padding:7px;margin:5px 0}
:root .pda-party-card>.party-card-title{display:flex;justify-content:space-between;align-items:center;gap:5px;margin:0 0 6px}
.party-card-title h4{margin:3px 0}.party-card-title small{font:8px var(--mono)}
:root .pda-party-card>.pda-inline{display:flex;gap:5px;margin:6px 0}
:root #game-shell .party-card-title>button{width:auto;min-height:24px;padding:4px 7px!important}
:root .party-code{font:10px var(--mono);letter-spacing:.08em}
:root .party-roster{gap:4px}.pda-party-member{width:100%}.pda-party-member>.pda-face{flex:0 0 28px}
/* Dedicated room: list and composer stay within PDA, without recipient selection. */
:root [data-terminal-screen="comms"]:not(.hidden),:root [data-terminal-screen="colony"]:not(.hidden){display:flex!important;flex-direction:column;min-height:100%}
:root [data-comms-view="chat"]:not(.hidden),:root [data-colony-view="timeline"]:not(.hidden){display:flex!important;flex-direction:column;flex:1;min-height:300px}
:root .pda-chat-room:not(.hidden){display:flex;flex-direction:column;flex:1;min-height:340px}
.chat-room-header{display:flex;align-items:center;gap:7px;padding:0 0 8px;border-bottom:1px solid var(--shell-line)}
:root #game-shell .chat-room-header button{min-height:26px;width:27px;padding:3px!important}
:root #comms-chat-controls{display:flex;flex-direction:column;flex:1;min-height:0}
:root #private-radio-list{flex:1;min-height:230px;max-height:48dvh;overflow-y:auto;border:0;margin:7px 0}
:root #private-radio-form{display:flex;flex-wrap:nowrap;gap:6px;align-items:stretch;margin-top:auto;position:sticky;bottom:0;background:var(--shell-screen)!important;padding:6px 0 0!important;border-top:1px solid var(--shell-line)}
:root #private-radio-form textarea,:root #private-radio-form input{min-width:0;flex:1;resize:vertical;min-height:36px}
:root #private-radio-form button{flex:0 0 auto;width:auto;max-width:60px}
:root .crew-bubble{display:flex;align-items:flex-start;gap:6px;padding:8px 0;border:0}.crew-bubble>div{flex:1;min-width:0;background:var(--shell-raised);padding:7px;border-radius:4px}.crew-bubble b{font-size:10px}.crew-bubble p{margin:3px 0 0;font-size:11px!important;line-height:1.6}.crew-bubble.mine{flex-direction:row-reverse}.crew-bubble.mine>div{border:1px solid var(--shell-line)}
:root #party-message-list-v45{max-height:40vh;overflow:auto}
:root .message-bubble{white-space:pre-wrap;line-height:1.65;margin:8px 0;max-width:92%;padding:8px!important;border:1px solid var(--shell-line)}.message-bubble.mine{margin-left:auto!important}.message-bubble time{font-size:8px;margin-top:5px;display:block;text-align:right}
:root #colony-timeline .chat-panel{display:flex!important;flex-direction:column;flex:1;padding:0!important;border:0!important;box-shadow:none!important;background:transparent!important;min-height:360px}
:root #colony-timeline .local-channel-title{margin:2px 0 10px;font:700 11px var(--pixel)}
:root #chat-list{display:block!important;flex:1;max-height:none!important;min-height:300px;overflow:auto;padding:0!important;border:0!important;background:transparent!important}
:root .local-chat-line{display:block!important;margin:0 0 10px!important;padding:0!important;border:0!important;line-height:1.7!important;background:none!important;font-size:calc(11px * var(--type-scale))!important}.local-chat-line strong{font-weight:700}
:root #colony-timeline #chat-form{margin-top:auto;padding-top:8px;border-top:1px solid var(--shell-line);position:sticky;bottom:0;background:var(--shell-screen)}
:root #colony-timeline #chat-form input{min-width:0;flex:1}
:root #online-count,:root #online-names,:root #here-presence{display:none!important}
/* Main narrative order: location, routes, environment, reaction, interaction. */
:root .main-column .location-section{display:block!important;padding:18px!important}
:root .main-column .location-section.scene-active>.section-header,:root .main-column .location-section.scene-active>.place-description,:root .main-column .location-section.scene-active>.environment-strip,:root .main-column .location-section.scene-active>#field-status,:root .main-column .location-section.scene-active>#context-actions{display:block!important}
:root .main-column .location-section>.section-header{display:flex!important}
:root .main-column .location-section>.environment-strip{display:flex!important;flex-wrap:wrap;gap:5px;padding:9px 0;margin:13px 0 0;border-block:1px solid var(--shell-line);border-inline:0!important;background:transparent!important;font-size:10px}
:root .location-section #exit-list{display:flex;flex-wrap:wrap;gap:5px;margin:10px 0}
:root #game-shell .location-section .exit-button{padding:4px 7px!important;min-height:25px!important;min-width:0!important;font-size:10px!important;width:auto!important;flex:none!important}
:root .location-section .place-description{font-size:calc(13px * var(--type-scale))!important;line-height:1.9;margin:9px 0}
:root .reaction-window{min-height:80px;padding:18px 0;border:0;background:transparent;margin:0;position:relative}
:root #result-ticker{border:0!important;background:transparent!important;padding:0!important;box-shadow:none!important;margin:0!important}
:root #result-ticker p{font-size:calc(13px * var(--type-scale))!important;line-height:1.8;margin:0 0 7px;white-space:pre-wrap;overflow-wrap:anywhere}
:root .result-muted{color:var(--shell-sub)!important;opacity:.85}.result-error,.overflow-main-warning{color:var(--shell-danger)!important}
:root #context-actions{margin:5px 0 0!important;padding:12px 0 0!important;border-top:1px solid var(--shell-line)}
:root .scene-choice-heading{display:block!important;padding:0;margin:0 0 9px}
:root .scene-choice-heading>span{font:9px var(--mono);letter-spacing:.1em}:root .scene-choice-heading>strong{display:block;margin:5px 0;font:700 16px var(--pixel)}
:root .scene-deck{margin-top:10px!important;border:0!important;background:transparent!important}:root #scene-root{padding:7px 0!important}
:root .scene-heading{font-size:10px}:root .scene-heading #scene-title{font-size:12px}
:root .reaction-window #job-container{margin:0;padding:10px;background:var(--shell-raised);border:1px solid var(--shell-line)}
:root .reaction-window #v9-puzzle{padding:5px 0;border:0;background:none}
:root .reaction-actions{margin:7px 0}.solo-action-list{display:flex;gap:6px;flex-wrap:wrap}
:root #game-shell .enemy-target{position:relative;display:flex;flex-direction:column;align-items:center;margin:auto;gap:7px;background:transparent!important;border:0!important;width:min(100%,230px);padding:8px!important}
:root .enemy-target .target-triangle{font-size:10px;color:var(--shell-danger)!important}:root .enemy-target[aria-pressed="false"] .target-triangle{visibility:hidden}
.enemy-silhouette svg{width:72px;height:72px}.enemy-meter{width:100%;height:6px;background:var(--shell-line);display:block}.enemy-meter i{height:100%;display:block;background:var(--shell-accent)}
:root #reaction-combat-log{font:12px/1.8 var(--pixel);padding:10px 0}:root #reaction-combat-log p{margin:4px 0}
:root[data-operator="true"] #game-shell .main-column button,:root[data-operator="true"] #game-shell .left-sidebar button,:root[data-operator="true"] .terminal-screen button:not([data-terminal-app]){pointer-events:none;opacity:.3}
/* Signup uses existing skill levels, not an additional stat system. */
.origin-stepper{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px;padding:9px;border:1px solid var(--shell-line)}
.origin-stepper>small{grid-column:1/-1;font-size:10px;color:var(--shell-sub)}
.origin-controls{display:flex;align-items:center;gap:5px}.origin-controls input{width:30px;text-align:center;padding:3px;appearance:textfield}.origin-controls input::-webkit-inner-spin-button{display:none}
.origin-controls button{width:27px;height:27px;min-height:27px;padding:2px}
.ability-cards{display:grid;grid-template-columns:1fr;gap:7px}.ability-card{text-align:left;padding:11px;display:grid;gap:5px;border:1px solid var(--shell-line);background:var(--shell-input);color:var(--shell-text);line-height:1.6;cursor:pointer}.ability-card strong{font-size:13px}.ability-card small{font-size:10px}.ability-card[aria-checked="true"]{border-color:var(--shell-accent);box-shadow:inset 3px 0 var(--shell-accent);background:var(--shell-raised)}
@media(max-width:740px){:root #terminal-display{max-height:none;padding:10px 9px}:root .pda-screen-stack{flex:1;min-height:0}:root .field-terminal{height:calc(100dvh - 145px)!important;min-height:490px!important;max-height:850px!important}:root .main-column .location-section{padding:12px!important}:root .terminal-screen .pda-metric-grid{grid-template-columns:1fr 1fr!important}:root .pda-contact-row{grid-template-columns:34px minmax(0,1fr)!important}:root .terminal-dock{gap:15px!important}:root .typography-popover{right:-40px}}
@media(prefers-reduced-motion:reduce){.pda-crt-glass{transition:none;animation:none}.pda-zoom-canvas svg{transition:none}}
/* High-specificity legacy overrides. */
:root #game-shell .left-module .module-head{display:grid!important;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;justify-content:stretch;align-items:center;gap:3px 6px;text-align:left}
:root #game-shell .left-module .module-head>span{grid-row:1;grid-column:1/-1;width:auto}
:root #game-shell .left-module .module-head>strong{grid-row:2;grid-column:1;justify-self:start;text-align:left;margin:0!important;font-weight:700!important;font-size:16px!important}
:root #game-shell .left-module .module-head .map-zoom-tools{grid-row:2;grid-column:2;display:flex;position:static;gap:3px}
:root #game-shell .map-zoom-tools button{height:22px;min-height:22px;width:23px;min-width:23px;max-width:23px;padding:1px!important}
:root #game-shell #result-ticker{background:transparent!important;border:0!important;border-left:0!important;padding:0!important;box-shadow:none!important}
:root #game-shell .pda-identity-grid :is(h3,b,span,em){color:var(--shell-text)!important}
:root #game-shell .pda-identity-bar i>b{background:var(--shell-accent)!important}
:root #game-shell .terminal-dock button>span{display:none!important}
:root .origin-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;border:1px solid var(--shell-line);padding:8px;gap:5px}
:root .origin-row>small{grid-column:1/-1;font-size:10px}
:root .origin-stepper{display:flex!important;gap:4px;padding:0;border:0;align-items:center}
:root .origin-stepper input{width:26px!important;min-width:26px!important;height:27px;padding:2px!important;text-align:center;appearance:textfield}
:root .origin-stepper button{width:25px;min-width:25px;height:27px;min-height:27px;padding:2px!important}
:root .origin-stepper input::-webkit-inner-spin-button{display:none}
:root #game-shell #bag-grid{display:grid!important;grid-template-columns:repeat(var(--bag-columns),minmax(0,1fr))!important;grid-template-rows:repeat(var(--bag-rows,4),minmax(0,1fr))!important;aspect-ratio:var(--bag-columns)/var(--bag-rows,4);width:100%!important;height:auto!important;max-height:none!important;gap:2px;padding:0!important;min-height:180px;background:var(--shell-line)!important;border:1px solid var(--shell-line)!important;border-radius:0!important}
:root #game-shell #bag-grid>.bag-cell{display:flex!important;align-items:center;justify-content:center;width:100%!important;height:100%!important;min-height:0!important;min-width:0!important;aspect-ratio:auto!important;padding:0!important;background:var(--shell-screen)!important;border:0!important;border-radius:0!important;overflow:hidden;position:relative}
:root #game-shell #bag-grid>.bag-cell.occupied{background:hsl(var(--item-hue) 24% 29%)!important;border:1px solid hsl(var(--item-hue) 25% 52%)!important}
:root[data-theme="light"] #game-shell #bag-grid>.bag-cell.occupied{background:hsl(var(--item-hue) 21% 53%)!important}
:root #game-shell #bag-grid>.bag-cell.selected{outline:2px solid var(--shell-accent)!important;outline-offset:-2px!important}
:root[data-operator="true"] #game-shell #command-submit{pointer-events:auto;opacity:1}
/* Keep the local-channel composer at the actual PDA screen bottom. */
:root #colony-timeline{display:flex;flex-direction:column;flex:1;min-height:0}
:root [data-colony-view="timeline"]:not(.hidden){min-height:0}
:root #colony-timeline .chat-panel{min-height:0}
:root #colony-timeline #chat-list{min-height:250px}
