:root{color-scheme:dark;--bg:#0a1019;--surface:#101824;--raised:#151f2c;--border:#243140;--text:#e6ebe9;--sub:#97a5b2;--dim:#637487;--mint:#9bdcc7;--green:#94b5a0;--sky:#80aec6;--orange:#e0b384;--red:#de8c83;--mono:'DM Mono',monospace;--font:'DM Sans','Noto Sans KR',sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.65 var(--font);-webkit-font-smoothing:antialiased}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.43}button:focus-visible,input:focus-visible{outline:2px solid var(--mint);outline-offset:2px}.hidden{display:none!important}a{color:inherit}.muted{color:var(--dim)}.brand{font-family:var(--mono);font-size:24px;font-weight:500;letter-spacing:.15em;line-height:1}.brand-dot{color:var(--mint)}.micro-label{color:#7d94a2;font:10px/1.4 var(--mono);letter-spacing:1.6px;text-transform:uppercase}.little-divider,.indent-line{display:inline-block;width:25px;height:1px;background:#465866;vertical-align:middle;margin:0 4px}.tiny-signal{font-size:15px;color:var(--mint)}
.topbar{height:72px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 37px;background:#0c131e;position:sticky;top:0;z-index:10}.topbar-left,.topbar-right{display:flex;align-items:center;gap:24px}.top-divider{height:20px;width:1px;background:var(--border)}.top-sub,.server-time{font:10px var(--mono);letter-spacing:1.1px;color:var(--dim)}.connection{display:flex;align-items:center;gap:9px;font:11px var(--mono);color:var(--sub)}.connection i,.pulse{width:7px;height:7px;display:inline-block;background:var(--green);border-radius:50%;box-shadow:0 0 0 3px #91bdad18}.connection.offline i{background:var(--red)}.avatar{height:32px;width:32px;border-radius:8px;background:#293947;color:var(--mint);display:grid;place-items:center;font:14px var(--mono);border:1px solid #3d515d}
.workspace{display:grid;grid-template-columns:238px minmax(0,1fr) 298px;max-width:1780px;margin:auto;min-height:calc(100vh - 72px)}.left-sidebar{border-right:1px solid var(--border);padding:28px 17px 26px 22px;display:flex;flex-direction:column;gap:30px}.right-sidebar{border-left:1px solid var(--border);padding:24px 18px;display:flex;flex-direction:column;gap:16px}.main-column{padding:23px 31px 20px;min-width:0}.side-top-label{font:10px var(--mono);letter-spacing:1px;color:#547181}.sidebar-section{display:flex;flex-direction:column;gap:11px}.side-title{display:flex;align-items:center;justify-content:space-between;color:#d8e1e3;font-weight:700;font-size:12px;padding:0 8px}.quiet-icon{font-size:19px;color:#557485}.region-list,.map-list{display:flex;flex-direction:column;gap:5px}.region-entry{display:flex;align-items:center;justify-content:space-between;padding:12px 11px;border:1px solid transparent;border-radius:6px;text-align:left;background:transparent;color:var(--sub);width:100%;transition:background .2s}.region-entry.active{color:var(--mint);background:#1d312f;border-color:#2d4842}.region-entry:disabled{opacity:.48}.region-left{display:flex;gap:11px;align-items:center}.region-icon{font-family:var(--mono);font-size:16px;color:#7aa39a}.region-number{font:10px var(--mono);color:var(--dim)}.map-entry{position:relative;padding:10px 9px 10px 22px;border-left:1px solid #354552;margin-left:15px;display:flex;flex-direction:column;gap:2px}.map-entry:before{content:'';position:absolute;left:-4px;top:16px;width:7px;height:7px;border-radius:50%;background:#45596b}.map-entry.current:before{background:var(--mint);box-shadow:0 0 0 4px #93c3b324}.map-entry.current .map-label{color:var(--mint)}.map-entry:not(.visited){opacity:.57}.map-entry .map-label{font-size:12px;color:#adbac2}.map-entry .map-sub{font:10px var(--mono);color:var(--dim)}.sidebar-footer{margin-top:auto;border-top:1px solid var(--border);padding:17px 4px 0;display:flex;align-items:start;gap:10px}.ai-square{width:35px;height:35px;border:1px solid #3e5d57;color:var(--mint);border-radius:7px;display:grid;place-items:center;font-size:24px;flex-shrink:0}.sidebar-footer b{font:10px var(--mono);color:#9cc5b7;letter-spacing:.3px}.sidebar-footer p{font-size:11px;color:var(--dim);margin:5px 0 0;line-height:1.5}
.breadcrumbs{font-size:11px;color:var(--dim);display:flex;gap:10px;align-items:center;margin-bottom:15px}.breadcrumbs strong{font-weight:600;color:#b5c5c9}.chevron{color:#475b6c}.world-banner{height:234px;position:relative;overflow:hidden;border:1px solid #344a4c;border-radius:9px;background:radial-gradient(ellipse at 76% 38%,#496b638a,transparent 35%),linear-gradient(140deg,#152c37 10%,#223c40 62%,#152834 100%)}.world-banner.region-surface{border-color:#564e45;background:radial-gradient(ellipse at 77% 35%,#8f7d6281,transparent 34%),linear-gradient(135deg,#343537,#47443b 63%,#242c32)}.world-banner.region-canopy{border-color:#335956;background:radial-gradient(ellipse at 77% 35%,#317d7b82,transparent 39%),linear-gradient(135deg,#102e34,#174b49 60%,#101f2c)}.banner-sky{position:absolute;inset:0;overflow:hidden}.banner-sun{position:absolute;width:155px;height:155px;border-radius:50%;background:#a4c3a44c;filter:blur(1px);right:16%;top:6%;box-shadow:0 0 100px 30px #afdab02e}.region-surface .banner-sun{background:#d9bd8870;box-shadow:0 0 100px 30px #cba97d35}.region-canopy .banner-sun{background:#78d7bd4b}.banner-star{position:absolute;width:2px;height:2px;background:#afc8cc;box-shadow:0 0 5px #a7c4bb}.banner-star.one{left:30%;top:18%}.banner-star.two{left:57%;top:35%}.banner-star.three{right:9%;top:22%}.tower{position:absolute;right:15%;bottom:30px;width:59px;height:230px;background:linear-gradient(90deg,transparent 0%,#0d202a 17%,#152c33 58%,#10252c 100%);clip-path:polygon(36% 0,63% 0,70% 65%,100% 100%,0 100%,28% 66%);opacity:.9}.tower:before{content:'';position:absolute;inset:30px 22px;background:#71b7a95c;box-shadow:0 0 25px #83c3ad}.hill{position:absolute;bottom:-25px;left:-5%;width:110%;height:98px;clip-path:polygon(0 63%,9% 40%,17% 52%,27% 23%,40% 55%,52% 31%,68% 44%,80% 18%,95% 42%,100% 22%,100% 100%,0 100%)}.hill-one{background:#152c31b3}.hill-two{background:#10242b;bottom:-57px;transform:scaleX(1.09)}.banner-content{position:absolute;top:47px;left:39px;max-width:75%}.banner-eyebrow{font:10px var(--mono);letter-spacing:2px;color:#aac3ba}.banner-content h1{font-size:39px;font-weight:600;letter-spacing:-1px;margin:6px 0 1px}.banner-content p{font-size:12px;color:#c0d1cb;margin:0}.banner-corner{position:absolute;right:18px;bottom:12px;color:#a4b4ab99;font:9px var(--mono);letter-spacing:1px}.danger-label{display:inline-block;margin-top:14px;padding:3px 7px;border:1px solid #bc9974;color:#f0c39d;font:10px var(--mono)}
.panel{border:1px solid var(--border);border-radius:9px;background:var(--surface)}.location-section,.actions-section,.console-section{padding:25px 27px;margin-top:17px}.section-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-header.tight{align-items:start}.section-header h2{font-size:20px;letter-spacing:-.6px;font-weight:700;margin:7px 0 0}.section-header h3{font-size:14px;letter-spacing:-.2px;margin:5px 0 0}.tag{color:#8ecab7;background:#203d39;border:1px solid #35574e;padding:4px 10px;border-radius:20px;font-size:11px;white-space:nowrap}.place-description{font-size:13px;line-height:1.95;color:#b7c3c9;margin:19px 0 21px;word-break:keep-all}.environment-strip{border-top:1px solid var(--border);padding-top:15px;display:flex;align-items:center;gap:13px;flex-wrap:wrap;color:#8da0ad;font-size:11px}.environment-strip b{font-weight:500;color:#b1c0c7}.icon-teal{color:var(--mint);margin-right:5px}.env-sep{color:#465566}.action-hint{font:10px var(--mono);color:var(--dim)}.action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:22px}.action-card{border:1px solid #2d3e4d;border-radius:7px;background:#17232e;color:#e1ebe8;display:flex;align-items:center;gap:12px;text-align:left;min-height:70px;padding:13px 14px;transition:background .2s,border-color .2s}.action-card:not(:disabled):hover{background:#223a3b;border-color:#4a8177}.action-symbol{color:var(--mint);font:25px var(--mono);line-height:1}.action-card h4{font-size:12px;margin:0;font-weight:700}.action-card p{font:10px var(--mono);color:#7e9d9a;margin:4px 0 0}.mini-heading{display:flex;align-items:center;gap:12px;margin:23px 0 10px;color:#a6b6bc;font-size:11px}.line-fill{height:1px;background:#293746;flex:1}.exit-list{display:flex;flex-wrap:wrap;gap:8px}.exit-button{padding:9px 12px;font-size:11px;color:#a9cbc1;background:#14292a;border:1px solid #315049;border-radius:6px}.exit-button:hover:not(:disabled){background:#254542}.exit-button span{margin-right:9px;color:#80b9a7}.job-container{margin-top:20px;background:#182e30;border:1px solid #3d665d;border-radius:7px;padding:14px 16px}.job-top{display:flex;justify-content:space-between;gap:8px;color:#c2e4d9;font-size:12px}.job-top strong{font:13px var(--mono)}.progress-bar,.meter-track{background:#263642;border-radius:7px;height:5px;overflow:hidden}.job-container .progress-bar{margin-top:12px}.progress-fill{height:100%;background:var(--mint);width:0;transition:width .5s}.job-footnote{font-size:10px;color:#7eaaa0;margin-top:9px}
.text-button{background:none;border:0;color:#8bb5aa;font-size:11px}.help-text{margin-top:16px;background:#1a2832;border-left:2px solid var(--mint);padding:10px 14px;font-size:11px;color:#afc6c4}.log-list{margin-top:18px;background:#0b121b;border:1px solid #202e3b;border-radius:7px;min-height:215px;max-height:315px;overflow:auto;padding:12px 16px;font-size:12px;scrollbar-color:#36515e transparent}.log-line{padding:8px 0;border-bottom:1px solid #1d2a36;color:#afc3c3;line-height:1.65;display:grid;grid-template-columns:53px minmax(0,1fr);gap:10px}.log-line:last-child{border:0}.log-time{color:#587387;font:10px/1.8 var(--mono)}.log-line.reward .log-body{color:#a4ddc2}.log-line.danger .log-body{color:#edaaa1}.log-line.social .log-body{color:#c5b4d6}.command-form{display:flex;align-items:center;margin-top:10px;background:#17252e;border:1px solid #416059;border-radius:7px;overflow:hidden}.prompt{color:var(--mint);font:14px var(--mono);padding:0 13px}.command-form input{background:transparent;border:0;outline:none;color:#e2f0e9;min-width:0;flex:1;padding:14px 2px;font-size:12px}.command-form input::placeholder{color:#607a7c}.command-form button{border:0;background:#29483f;color:#bce1d2;height:44px;width:45px;font-size:21px}.command-form button:hover{background:#36685b}.console-footer{font-size:10px;color:#607586;margin-top:12px}.console-footer span,.main-footer span{padding:0 7px}.main-footer{font:9px var(--mono);color:#516579;letter-spacing:.35px;text-align:center;margin:26px 0}
.right-sidebar .panel{padding:19px 17px}.profile-row{display:flex;align-items:center;gap:12px;margin:17px 0 22px}.profile-avatar{width:46px;height:46px;display:grid;place-items:center;background:linear-gradient(155deg,#305950,#1e383b);border:1px solid #41695a;border-radius:8px;font:19px var(--mono);color:var(--tone-positive4882)}.profile-row h3{margin:0 0 4px;font-size:14px}.profile-row .muted{font:10px var(--mono)}.meter-block{margin:12px 0}.meter-label{display:flex;justify-content:space-between;gap:5px;font-size:11px;color:#9fadb9;margin-bottom:7px}.meter-label b{font:9px var(--mono);color:#667d87}.meter-label>span:last-child{font:10px var(--mono);color:#bbc9cc}.meter-fill{height:100%;transition:width .5s}.meter-fill.hp{background:#9cc5ac}.meter-fill.oxygen{background:#84b5c4}.meter-fill.xp{background:#caaf88}.clone-note{border-top:1px solid var(--border);padding-top:12px;margin-top:15px;color:#778e98;font-size:10px}.mission-list{display:flex;flex-direction:column;gap:11px;margin-top:17px}.mission-row{display:flex;align-items:start;gap:9px;color:#a5b3bc;font-size:11px}.mission-check{font:14px var(--mono);width:14px;color:#667a85;flex-shrink:0}.mission-row.done .mission-check{color:var(--mint)}.mission-row.done{color:#8fb9a9}.inventory-list{margin-top:15px;display:flex;flex-direction:column;gap:9px}.inventory-item{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#bac8cb}.item-mark{display:inline-block;width:9px;height:9px;border:1px solid #83b3a2;transform:rotate(45deg);margin-right:9px}.item-qty{font:10px var(--mono);color:#95c3b5}.empty-state{color:#687c8c;font-size:11px;line-height:1.7;padding:6px 0}.notes-list,.chat-list{display:flex;flex-direction:column;gap:9px;margin-top:15px;max-height:180px;overflow:auto}.note-item,.chat-item{padding:9px 10px;border:1px solid #273644;background:#141f2b;border-radius:5px}.note-meta,.chat-meta{color:#719b99;font:10px var(--mono);margin-bottom:4px}.note-content,.chat-content{font-size:11px;color:#beccd1;overflow-wrap:anywhere;white-space:pre-wrap}.small-form{display:flex;margin-top:12px;border:1px solid #344d54;border-radius:6px;overflow:hidden}.small-form input{width:100%;min-width:0;background:#111f2a;color:var(--text);border:0;padding:9px;font-size:11px;outline:0}.small-form input::placeholder{color:#66808b}.small-form button{background:#23463f;border:0;color:#b5dbcc;width:34px;flex-shrink:0;font-size:17px}.online-count{font:10px var(--mono);color:#7db3a4;margin-left:4px}.online-names{font:10px var(--mono);color:#728d99;margin:10px 0}.chat-list{max-height:135px}.toast{position:fixed;right:24px;bottom:24px;z-index:50;max-width:min(400px,calc(100% - 48px));padding:13px 17px;border:1px solid #567b70;background:#203b37;border-radius:7px;box-shadow:0 10px 50px #0008;color:#e3f2e9;font-size:12px;line-height:1.6;animation:slidein .25s ease}.toast.error{border-color:#8c5a58;background:#43272e;color:#f2c7c1}@keyframes slidein{from{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}
.login-screen{min-height:100vh;background:#09131c;display:grid;place-items:center;position:relative;overflow:hidden}.login-art{position:absolute;inset:0;background:radial-gradient(ellipse at 52% 45%,#30524c 0%,#1b343b 35%,#0a141f 74%)}.login-art .moon{position:absolute;width:370px;height:370px;border-radius:50%;top:11%;left:50%;transform:translateX(-50%);background:#9ec5b018;box-shadow:0 0 160px 30px #c4ead021;border:1px solid #a6caba17}.login-art .monolith{position:absolute;top:6%;left:53%;height:68%;width:75px;clip-path:polygon(45% 0,55% 0,65% 56%,100% 100%,0 100%,35% 56%);background:linear-gradient(90deg,#06131a,#1c3840 50%,#08151e);opacity:.8}.login-art .horizon{position:absolute;bottom:-70px;width:100%;height:36%;background:#08151b;clip-path:polygon(0 35%,11% 43%,22% 15%,34% 36%,49% 5%,60% 23%,75% 0,89% 32%,100% 19%,100% 100%,0 100%)}.login-card{width:min(510px,calc(100vw - 30px));position:relative;z-index:1;background:#0e1923ec;border:1px solid #365149;padding:48px 43px;border-radius:11px;box-shadow:0 30px 90px #0008;backdrop-filter:blur(9px)}.kicker{font:10px var(--mono);letter-spacing:1.3px;color:#8facab}.kicker .pulse{margin-right:7px}.brand-large{font-size:52px;margin-top:31px}.login-card h1{font-size:22px;letter-spacing:-.5px;margin:28px 0 12px}.login-card p{color:#a5b8bb;font-size:13px;line-height:1.9}.login-card form{margin-top:30px}.login-card label{display:block;font-size:11px;color:#c5d1d0;margin-bottom:9px}.login-card label .muted{font-size:10px;margin-left:6px}.input-line{display:flex;gap:8px}.input-line input{background:#14232d;border:1px solid #406052;border-radius:6px;color:white;padding:12px 13px;min-width:0;flex:1;font-size:12px}.input-line button{background:#aad3bd;color:#102923;border:0;border-radius:6px;font-weight:700;font-size:12px;padding:0 17px;white-space:nowrap}.input-line button span{margin-left:7px}.login-card .login-hint{font-size:10px;color:#708a93;margin-top:22px;line-height:1.6}.error-text{color:#e7aca3;font-size:12px;margin-top:8px}
@media(max-width:1270px){.workspace{grid-template-columns:202px minmax(0,1fr) 266px}.main-column{padding:22px 17px}.right-sidebar{padding:20px 10px}.left-sidebar{padding:23px 12px}.action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1000px){.workspace{grid-template-columns:190px minmax(0,1fr)}.right-sidebar{grid-column:2;border-left:0;border-top:1px solid var(--border);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.right-sidebar .panel{min-width:0}.left-sidebar{grid-row:1 / span 2}}
@media(max-width:700px){.topbar{height:62px;padding:0 15px}.top-sub,.top-divider,.server-time{display:none}.topbar-right{gap:13px}.workspace{display:flex;flex-direction:column}.main-column{order:1;padding:15px 12px}.left-sidebar{order:2;border:0;border-top:1px solid var(--border);padding:17px 15px}.right-sidebar{order:3;display:grid;grid-template-columns:1fr;padding:12px}.left-sidebar .side-top-label,.sidebar-footer{display:none}.region-list{flex-direction:row}.region-entry{padding:10px}.map-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.world-banner{height:210px}.banner-content{left:20px;top:37px}.banner-content h1{font-size:32px}.location-section,.actions-section,.console-section{padding:19px 17px;margin-top:13px}.action-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.action-card{padding:10px;min-height:66px}.action-symbol{font-size:19px}.console-footer{line-height:1.9}.login-card{padding:37px 25px}.login-art .monolith{left:60%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

/* v0.2 - investigation, camp facilities, cooperative jobs and clone legacy */
.evidence-list,.module-list,.cache-list,.lives-list,.nearby-jobs{display:flex;flex-direction:column;gap:8px;margin-top:12px}
.evidence-item,.module-item,.cache-item,.nearby-job{background:#121e29;border:1px solid #273b45;border-radius:7px;padding:11px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.evidence-item strong,.module-item strong,.cache-item b,.nearby-job b{font-size:11px;color:#c3dfd5}
.evidence-item p,.cache-item p{margin:3px 0 0;font-size:11px;color:#94aeba;line-height:1.6;max-width:560px}
.evidence-item>div,.module-item>div{flex:1;min-width:145px}
.evidence-item button,.module-item button,.cache-item button,.nearby-job button,.storage-buttons button{border:1px solid #4b7868;border-radius:5px;background:#24473e;color:#d1eade;font-size:11px;padding:7px 10px;white-space:nowrap}
.evidence-item button:disabled,.module-item button:disabled,.nearby-job button:disabled,.cache-item button:disabled{background:#1c2d35;border-color:#2c4149;color:#647f8c;cursor:not-allowed}
.module-item small{display:block;color:#728f9a;font-size:10px;line-height:1.5;margin-top:3px}
.storage-list{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}.storage-chip{padding:5px 8px;font-size:10px;color:#adcfc1;background:#172d2c;border:1px solid #36564b;border-radius:5px}
.storage-form{display:grid;grid-template-columns:1fr 72px;gap:6px;margin-top:12px}.storage-form label{font-size:10px;color:#8ba5aa}.storage-form select,.storage-form input{width:100%;min-width:0;background:#14232d;border:1px solid #3a5660;border-radius:5px;color:#d3e6e5;padding:8px 6px;font-size:11px}.storage-buttons{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:6px}
.life-row{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid #263644;padding:7px 0;font-size:10px}.life-row b{color:#b4c7c8}.life-row span{color:#78919c}
.nearby-job{font-size:11px}.nearby-job small{color:#7095a2}.nearby-job button{margin-left:auto}
.cache-item{display:block}.cache-item p{margin:6px 0}.cache-item button{margin-top:5px}
.investigation-block{margin-top:15px}.investigation-block .mini-heading{margin-top:7px}

/* v0.3 - cooperative research and outpost logistics */
.research-section{margin-top:16px;padding:24px 27px}.research-intro,.module-caption{font-size:11px;color:#8fa5af;line-height:1.8;margin:9px 0 17px}
.research-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.research-card{border:1px solid #304652;border-radius:9px;background:#13212c;padding:15px;min-width:0}.research-card.complete{border-color:#426b5e;background:#152c2a}.research-title{display:flex;justify-content:space-between;gap:10px;align-items:start}.research-title strong{font-size:12px;color:#d3e7df}.research-title span{font:10px var(--mono);color:#8eb3a6;white-space:nowrap}.research-card p{font-size:11px;color:#92a8af;line-height:1.65;min-height:38px}.research-bar{height:5px;border-radius:5px;background:#2b3d48;overflow:hidden;margin:13px 0 10px}.research-bar span{display:block;height:100%;background:#7dbca8;transition:width .4s}.research-effect{font-size:10px;color:#a6cfbd;line-height:1.5}.research-cost{font-size:10px;color:#869ba5;margin:9px 0}.research-evidence-list{display:flex;flex-direction:column;gap:5px;margin-top:13px}.research-evidence{display:flex;align-items:center;justify-content:space-between;gap:6px;border-top:1px solid #28404a;padding-top:8px;font-size:10px}.research-evidence-name{color:#bbccc9}.research-evidence button,.request-entry button,.wide-button{border:1px solid #4b7868;border-radius:5px;background:#24473e;color:#d1eade;font-size:10px;padding:7px 9px;white-space:nowrap;cursor:pointer}.research-evidence button:disabled,.request-entry button:disabled{background:#1c2d35;border-color:#2c4149;color:#647f8c;cursor:default}
.requests-list,.warehouse-history{display:flex;flex-direction:column;gap:7px;margin:12px 0}.request-entry{display:flex;justify-content:space-between;align-items:center;gap:7px;background:#14232f;border:1px solid #2d4350;border-radius:6px;padding:9px}.request-entry b{display:block;font-size:11px;color:#bedac9}.request-entry small{display:block;color:#76939d;font-size:10px;margin-top:4px}.wide-button{grid-column:1/-1}.warehouse-entry{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px;border-bottom:1px solid #283946;padding:7px 0;font-size:10px;color:#829ca5}.warehouse-entry span:last-child{color:#bad4c7}.supply-panel .mini-heading{margin-top:17px}
@media(max-width:880px){.research-list{grid-template-columns:1fr}}
@media(max-width:700px){.research-section{padding:19px 17px}}
/* v0.7 feature wiring only — overall UI redesign deferred for v0.8. */
.auth-switch{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0 10px}
.auth-switch button{border:1px solid #35475b;background:#172434;color:#b6c8d3;border-radius:8px;padding:9px 14px;cursor:pointer}
.auth-switch button.active{background:#d5e6d2;color:#1a2b31}
.auth-fields{display:flex;flex-direction:column;gap:8px;margin:8px 0}
.auth-fields input{width:100%;padding:12px;background:#121e2e;color:#f2f5f4;border:1px solid #36485c;border-radius:8px;min-height:42px}
.auth-fields label{color:#dde6e5;font-size:13px;margin-top:4px}
.auth-submit,.small-auth button{padding:12px;background:#b9d0bc;color:#14252b;border-radius:8px;border:0;font-weight:700;cursor:pointer}
.auth-fields.hidden{display:none}
.small-auth{padding:12px}
.small-exit{padding:7px 10px;border:1px solid #4e6070;border-radius:7px;color:#dce7e5;background:transparent;cursor:pointer}
.v07-panel{margin-bottom:18px}.v07-tags{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0 18px}
.v07-tags span{border:1px solid #354556;padding:7px 10px;border-radius:6px;font-size:12px}
.v07-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:12px 0 22px}
.v07-card{border:1px solid #334657;background:#111c2b;border-radius:8px;padding:14px;display:flex;flex-direction:column;gap:9px}
.v07-card h4{margin:0;font-size:14px;color:#e3eae9}.v07-card p{font-size:12px;margin:0;color:#aab9c3;line-height:1.5}
.v07-card button,.v07-buttons button{border:1px solid #8caaa8;background:#263b44;color:#e3eee9;border-radius:6px;min-height:32px;padding:6px 10px;cursor:pointer}
.v07-card button:disabled,.v07-buttons button:disabled{opacity:.45;cursor:not-allowed}
.v07-buttons{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.v07-card.active{border-color:#8caaa8}
.recovery-dialog{border:1px solid #667c87;border-radius:12px;padding:24px;background:#152334;color:#e7eeee;width:min(90vw,480px)}
.recovery-dialog::backdrop{background:#060b14b8}.recovery-dialog code{display:block;margin:15px 0;letter-spacing:1.5px;font-size:19px;word-break:break-all}
.recovery-dialog button{background:#d1e5d4;color:#17282d;border:0;border-radius:7px;padding:10px 15px;margin:7px;cursor:pointer}
.account-settings h3{margin:0;padding:10px 12px;color:#e3eae9}
@media(max-width:700px){.v07-grid{grid-template-columns:1fr}.small-exit{font-size:11px}}

/* v0.7.2: compact information hierarchy and consistent panel alignment */
.main-column>.console-section{margin-top:0;margin-bottom:14px;}
.main-column>.world-banner{margin-top:14px;}
.workspace .panel{min-width:0;}
.right-sidebar .panel{width:100%;margin:0;padding:16px;}
.right-sidebar .section-header{align-items:center;}
.right-sidebar .section-header h3{margin:0;}
.right-sidebar .section-header.tight{align-items:center;}
.right-sidebar .panel+.panel{margin-top:12px;}
.right-sidebar .side-view{display:flex;flex-direction:column;gap:12px;min-width:0;}
.right-sidebar .side-view.hidden{display:none;}
.system-tabs,.side-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 12px;}
.system-tabs button,.side-tabs button{background:#142333;color:#aebfc8;border:1px solid #314658;border-radius:7px;padding:10px 13px;line-height:1.25;min-height:38px;}
.system-tabs button:hover,.side-tabs button:hover{border-color:#759e96;color:#e1f1eb;}
.system-tabs button.active,.side-tabs button.active{background:#244239;color:#d7f3e5;border-color:#629686;font-weight:700;}
.side-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:0;}
.side-tabs button{padding:8px 4px;font-size:11px;white-space:nowrap;}
.system-view>.panel{margin:0 0 16px;}
.v07-panel,.research-section{padding:20px;}
.v07-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));}
.v07-card{min-width:0;}
.field-error{color:#f0a7a0;font-size:11px;line-height:1.45;display:block;min-height:0;}
.field-error:empty{display:none;}
.auth-fields input[aria-invalid="true"]{border-color:#d88782;box-shadow:0 0 0 1px #d8878259;}
.auth-fields{gap:7px;}
.auth-fields label{margin:6px 0 0;}
.recovery-link{border:0;background:none;padding:6px 0;margin:7px 0;color:#a0ceb9;font-size:12px;text-decoration:underline;text-underline-offset:4px;}
.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.dialog-header h2{font-size:20px;margin:0;}
.dialog-close{width:34px;height:34px;background:#203143!important;color:#e8f2ef!important;border:1px solid #4b6370!important;padding:0!important;margin:0!important;font-size:20px;}
.dialog-copy{font-size:12px;color:#a7b8be;margin:10px 0;}
.profile-summary{display:flex;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px solid var(--border);font-size:12px;}
.profile-summary span{color:var(--sub);}
#profile-dialog h3{font-size:14px;margin:22px 0 10px;}
#profile-dialog .account-settings .section-header{display:none;}
#profile-dialog .small-auth{padding:0;}
.recovery-dialog{max-height:min(85vh,760px);overflow:auto;}
.recovery-dialog::backdrop{background:#050c17cc;}
.assisting{background:#2b2932;border-color:#72607b;}
.assisting .progress-fill{background:#af9bb9;}
@media(max-width:1150px){.main-column>.console-section{margin-bottom:12px;}}
@media(max-width:700px){.system-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}.main-column>.console-section{padding:17px;}.right-sidebar .side-tabs{grid-template-columns:repeat(3,minmax(0,1fr));}}

/* v0.8: information hierarchy, unified controls, day-separated event journal */
#login-form #login-submit{margin-top:19px;min-height:46px;}
.profile-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;}
.profile-heading .small-exit{font-size:11px;white-space:nowrap;}
.log-day{display:flex;align-items:center;gap:12px;margin:18px 3px 12px;color:#a3cbbd;text-align:center;font-size:11px;white-space:nowrap;}
.log-day::before,.log-day::after{content:'';height:1px;background:#35505a;flex:1;}
.log-day span{background:#1d3540;border-radius:15px;border:1px solid #3a6461;padding:5px 11px;}
.log-line{display:grid;grid-template-columns:53px minmax(0,1fr);gap:12px;align-items:start;}
.log-time{font-variant-numeric:tabular-nums;white-space:nowrap;}
.log-body{min-width:0;overflow-wrap:anywhere;line-height:1.6;}
.codex-list,.social-list{display:flex;flex-direction:column;gap:9px;margin-top:14px;}
.codex-entry,.social-row{border:1px solid #324b55;background:#142632;border-radius:8px;padding:13px;min-width:0;}
.codex-entry p{margin:10px 0;font-size:12px;line-height:1.75;color:#bdcad0;}
.codex-heading,.social-row{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.codex-heading strong,.social-row strong{font-size:12px;color:#d3e8de;}
.codex-heading span,.social-row small{font-size:10px;color:#8ca6ac;}
.social-row small{display:block;margin-top:5px;}
.codex-warning{font-size:11px;border-left:2px solid #b19c7e;padding-left:10px;color:#dbbf9c;line-height:1.55;}
.game-mini-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:13px;align-items:center;}
.game-mini-form input,.game-mini-form select{min-width:0;width:100%;border:1px solid #3a5660;border-radius:7px;padding:10px;background:#14232d;color:#d7e9e8;font-size:12px;}
.game-mini-form button,.social-row button,.living-panel button{border:1px solid #4b7868;border-radius:7px;padding:9px 11px;background:#24473e;color:#e2f4eb;min-height:36px;font-size:11px;cursor:pointer;}
.game-mini-form button:disabled,.living-panel button:disabled{opacity:.42;cursor:not-allowed;}
.row-actions{display:flex;gap:5px;flex-wrap:wrap;}
#trade-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 64px;}
#trade-form input:first-child{grid-column:1/-1;}
#trade-form button{grid-column:1/-1;}
#private-radio-form{grid-template-columns:minmax(0,1fr) auto;}
#private-radio-form select{grid-column:1/-1;}
.camp-efficiency{margin:13px 0 0;padding:10px;background:#20343b;border:1px solid #425b59;color:#c2dcd0;border-radius:8px;font-size:11px;line-height:1.6;}
.right-sidebar .panel,.system-view .panel{border-radius:10px;}
.right-sidebar .panel h3{line-height:1.35;}
@media(max-width:700px){.log-line{grid-template-columns:42px minmax(0,1fr);gap:7px;}.profile-heading{flex-wrap:wrap;}.codex-heading{align-items:flex-start;}.system-tabs{grid-template-columns:repeat(2,minmax(0,1fr));}}

/* v0.9: reduce UI density with collapsible systems; work feedback remains prominent. */
.v9-action-box{padding:16px;margin:12px 0;border:1px solid #334a55;border-radius:9px;background:#12212c}
.v9-action-box summary{list-style:none;cursor:pointer;font-weight:700;display:flex;justify-content:space-between;gap:10px;align-items:center;color:#dbece7}
.v9-action-box summary::-webkit-details-marker{display:none}
.v9-action-box summary:before{content:'▸';color:#93b9ad;margin-right:8px}
.v9-action-box[open] summary:before{content:'▾'}
.v9-tools-grid{display:flex;align-items:end;flex-wrap:wrap;gap:9px;margin-top:17px}
.v9-tools-grid label{display:grid;gap:7px;font-size:12px;color:#a8c4c1}
.v9-tools-grid select{background:#192f3a;color:#e9f3ed;border:1px solid #526f76;border-radius:6px;padding:9px 12px}
.v9-tools-grid button,.v9-option-list button,.v9-puzzle button{background:#275044;color:#e4f8ef;border:1px solid #58897a;border-radius:7px;min-height:36px;padding:8px 12px;cursor:pointer}
.v9-option-list{display:grid;gap:11px;margin-top:13px}.v9-option-row{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;background:#1b303c;border:1px solid #314b55;border-radius:7px;padding:12px}
.v9-option-row strong{font-size:12px}.v9-option-row small{display:block;color:#9eb4b9;font-size:11px;margin-top:5px}
.v9-puzzle{margin-top:10px}.v9-puzzle-grid{display:grid;grid-template-columns:repeat(4,minmax(35px,44px));gap:6px;margin-top:10px}
.v9-puzzle-grid button{width:42px;height:42px;font-size:17px;padding:0}
.v9-option-list button:disabled,.v9-tools-grid button:disabled,.v9-puzzle button:disabled{cursor:not-allowed;opacity:.45}
.job-eta{font-size:11px;margin-top:8px;color:#bbd3c7;font-variant-numeric:tabular-nums}
.sleep-overlay{position:fixed;z-index:9999;inset:0;display:grid;place-items:center;background:rgba(3,9,17,.96);color:#dcebe7;text-align:center;padding:24px}
.sleep-overlay.hidden{display:none}.sleep-overlay>div{max-width:410px;border:1px solid #3b625e;background:#132834;border-radius:13px;padding:38px 25px;width:100%}
.sleep-overlay h2{font-size:32px;letter-spacing:2px}.sleep-overlay p{color:#9db9bd;line-height:1.8}.sleep-overlay strong{font-size:40px;font-variant-numeric:tabular-nums;color:#c1e0cb}
@media(max-width:670px){.v9-action-box summary{font-size:12px}.v9-tools-grid button{flex:1}.v9-option-row{align-items:flex-start}}

/* Arca v0.10 shared research / 6-10 square signal board / raid map */
.v9-puzzle-grid{grid-template-columns:repeat(var(--puzzle-size,6),minmax(28px,36px));gap:3px;max-width:100%;overflow-x:auto;padding-bottom:8px}
.v10-puzzle-cell{position:relative;width:36px;height:36px}
.v10-puzzle-cell>button:first-child{width:36px;height:36px;min-height:36px;padding:0;font-size:13px}
.v10-puzzle-cell .v10-flag{position:absolute;bottom:1px;right:1px;width:15px;height:15px;min-height:0;padding:0;font-size:10px;background:#183744}
.v9-puzzle{overflow-x:auto}.note-age{font-size:10px;color:#cbbf9b;margin:7px 0}
.note-weathered{opacity:.78}.note-faded{opacity:.59;font-style:italic}
.raid-map{display:grid;gap:3px;margin-top:12px;max-width:max-content}.raid-row{display:flex;gap:3px}
.raid-tile{display:grid;place-items:center;width:34px;height:34px;border:1px solid #385361;background:#172b39;color:#678595;border-radius:5px;font-size:18px}
.raid-tile.raid-ally{background:#27534d;color:#c1e9d9}.raid-tile.raid-enemy{background:#643b42;color:#ffcdbe}
.raid-buttons{margin-top:10px}
#v10-projects{margin:10px 0 18px}
#v10-projects .v9-option-row small{line-height:2}
#v10-projects .v9-option-row small button{padding:4px 7px;min-height:27px}

.raid-tile.raid-danger{box-shadow:inset 0 0 0 2px #8c6953;background:#513d36}.raid-tile.raid-ally.raid-danger{background:#56614c}

/* ARCA v0.11 — grid inventory and medical status */
.arca-v11-panel{padding:25px 27px;margin-top:17px}
.bag-grid{--bag-columns:8;display:grid;grid-template-columns:repeat(var(--bag-columns),minmax(0,1fr));gap:3px;max-width:620px;margin:20px auto 12px;padding:8px;border:1px solid #405364;background:#0b141e;border-radius:10px}
.bag-cell{min-width:0;aspect-ratio:1;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:1px;border-radius:4px;border:1px dashed #334450;background:#152330;color:#aebfc5;word-break:keep-all;overflow:hidden}
.bag-cell:hover{border-color:#87bdad;background:#29423f}.bag-cell.occupied{background:#34534f;border:1px solid #60897e;color:#e2f6ec}.bag-cell.occupied:nth-child(4n+1){background:#3a4959;border-color:#6b7c92}.bag-cell.selected{outline:2px solid #ecd294;outline-offset:-2px;background:#705e47}
.bag-cell span{max-width:100%;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bag-cell small{font-size:9px;color:#d1ddd8}
.bag-warning{padding:11px 13px;background:#482c27;border:1px solid #a16d58;color:#f4d8bf;border-radius:7px;margin-top:12px}
.arca-v11-buttons{display:flex;flex-wrap:wrap;gap:9px;margin:10px 0 22px}.arca-v11-buttons button,.arca-medical-form button{background:#223b3a;color:#ccefe4;border:1px solid #47665d;border-radius:6px;padding:8px 13px}
.body-part-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:17px 0}.body-part{padding:13px;border:1px solid #33434d;border-radius:8px;background:#14212b}.body-part.wounded{border-color:#8b7257}.body-part.critical{border-color:#b76360}.body-part-header{display:flex;justify-content:space-between;gap:8px}.body-part small{display:block;min-height:20px;color:#8c9eaa;margin-top:8px;font-size:10px}.body-part .meter-track{margin-top:9px}
.arca-medical-form{display:grid;grid-template-columns:1fr 1fr 1.4fr auto;align-items:end;gap:10px;margin:20px 0}.arca-medical-form label{font-size:11px;color:#9aacb9;display:flex;flex-direction:column;gap:6px}.arca-medical-form select,.arca-medical-form input{width:100%;min-width:0;border:1px solid #3d5361;border-radius:5px;background:#0e1b25;color:#e4eceb;padding:8px}
@media (max-width:850px){.arca-medical-form{grid-template-columns:1fr 1fr}.arca-medical-form button{grid-column:1/-1}.body-part-grid{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.bag-grid{gap:2px;padding:4px}.bag-cell span{font-size:8px}.arca-v11-panel{padding:14px}.body-part-grid{grid-template-columns:1fr}}

/* v0.12 · Achievement and title panel */
.explorer-title{font-size:11px;margin-top:4px;letter-spacing:.03em;color:#cfdeac}
.achievement-profile{border:1px solid #334956;border-radius:9px;background:#13222c;padding:15px;margin:15px 0;}
.achievement-head{display:flex;align-items:start;justify-content:space-between;gap:12px}
.achievement-head h3{margin:0;font-size:15px;color:#deece3}
.achievement-head p{margin:6px 0 12px;color:#9eb5bd;font-size:11px;line-height:1.5}
.achievement-head>strong{flex-shrink:0;color:#cbdeb6;font-size:14px}
.achievement-equipped{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:10px;border:1px solid #3c5b50;background:#1a302d;border-radius:7px;font-size:12px}
.achievement-equipped>span{color:#a4b9bc}.achievement-equipped>strong{color:#d5e9cb;flex:1}
.achievement-equipped button:disabled{opacity:.4}
.achievement-filter{display:flex;gap:6px;margin:13px 0 10px}
.achievement-filter button{border:1px solid #42555d;background:#192934;color:#b9cbce;border-radius:6px;padding:7px 11px;font-size:11px;cursor:pointer}
.achievement-filter button.active{background:#375e52;color:#f1f7ed;border-color:#7da595}
.achievement-list{display:flex;flex-direction:column;gap:8px;max-height:330px;overflow-y:auto;scrollbar-width:thin}
.achievement-entry{padding:12px;border:1px solid #304350;background:#16232e;border-radius:8px;min-width:0}
.achievement-entry.earned{border-color:#4d7867;background:#192c29}
.achievement-row{display:flex;justify-content:space-between;gap:10px;align-items:start;font-size:12px}
.achievement-row strong{color:#d5e2e3}.achievement-row span{color:#9bb7b5;white-space:nowrap;font-size:10px}
.achievement-entry p{font-size:11px;line-height:1.5;color:#9db2b8;margin:7px 0}
.achievement-progress{height:5px;border-radius:5px;background:#31454d;overflow:hidden}
.achievement-progress span{height:100%;display:block;background:#7cbca0}
.achievement-footer{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:9px;font-size:11px;color:#d3deb5;flex-wrap:wrap}
.achievement-footer button{padding:6px 9px;border:1px solid #5f8b76;background:#27483d;color:#e1efdf;border-radius:5px;cursor:pointer}
.achievement-footer button:disabled{opacity:.45;cursor:default}

/* ===== v0.13 · ARCA retro field interface (original styling) ===== */
:root{--bg:#182541;--surface:#1a2944;--raised:#233653;--border:#53647a;--text:#f4eed4;--sub:#c6cecb;--dim:#879cad;--mint:#88dbce;--green:#89bdaf;--sky:#77c9e8;--orange:#e9c49a;--font:'Noto Sans KR','DM Sans',sans-serif}
body{background:linear-gradient(180deg,#1a2744,#111a2f);color:var(--text)}
.workspace{grid-template-columns:minmax(185px,215px) minmax(0,1fr) minmax(295px,335px);gap:6px;max-width:1850px}
.topbar{background:#182441;border-bottom:2px solid #5d7581;height:65px}
.workspace .panel{background:#1b2a46;border-color:#50657b;border-radius:4px}
.left-sidebar,.right-sidebar{background:#192642;border-color:#445b77}
.left-sidebar{padding:22px 10px;gap:17px}
.right-sidebar{padding:15px 11px;align-items:stretch}
.main-column{padding:18px 14px 23px}
.world-banner{border-radius:4px}
.system-tabs button,.action-card,.v9-action-box,.exit-button{border-radius:3px}
.action-card,.v07-card,.research-card{background:#1e304b;border-color:#4b6277}
.sidebar-section{gap:9px}
.side-top-label,.micro-label{color:#b0c9d1}
.sidebar-section .side-title{background:#f0e9ce;color:#1c2940;text-transform:uppercase;font:700 11px/1.4 var(--mono);letter-spacing:.5px;padding:7px}
.region-entry.active{background:#263950;border-color:#87b7bc}
.sidebar-footer{border-color:#4c5b6e}
#login-form #login-submit{margin-top:27px}

/* Radar: visible current observation state; no imitation map assets. */
.radar-canvas{width:100%;background:radial-gradient(circle,#233c52 0%,#101d34 70%);border:1px solid #638096;border-radius:3px;position:relative;overflow:hidden;padding:5px;min-height:180px}
.radar-canvas:before{content:'';position:absolute;inset:4px;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0 19px,#93c9db14 20px),repeating-linear-gradient(90deg,transparent 0 19px,#93c9db14 20px);opacity:.4}
.radar-canvas svg{width:100%;display:block;position:relative;z-index:1;overflow:visible}
.radar-ring{fill:none;stroke:#5ea5b6;stroke-opacity:.52;stroke-dasharray:3 5;stroke-width:1.5}
.radar-axis{fill:none;stroke:#557e91;stroke-opacity:.45;stroke-width:1}
.radar-link{stroke:#7eacb1;stroke-width:1;stroke-dasharray:2 5;opacity:.47}
.radar-point circle{fill:#83d6c4;stroke:#d8efe2;stroke-width:1}
.radar-point.active circle{fill:#f6e6b1;stroke:#eacb7e;stroke-width:2}
.radar-point.unknown circle{fill:#4b657e;stroke:#637c8d;opacity:.6}
.radar-point text{fill:#e9e8cc;font:9px 'Noto Sans KR',sans-serif;paint-order:stroke;stroke:#182841;stroke-width:3;stroke-linejoin:round}
.radar-north{font:9px var(--mono);fill:#b9cfc7;letter-spacing:2px}
.radar-canvas small{font-size:9px;color:#b8cad2;display:block;text-align:center;white-space:nowrap}
.radar-details{font-size:11px;color:#b7c8d5;border:1px solid #425a73;padding:8px}
.radar-details summary{cursor:pointer;font-size:10px}
.radar-details .map-list{max-height:260px;overflow-y:auto}

/* Smartphone-like exploration terminal. Its app screens contain existing real controls. */
.legacy-sidebar{display:none!important}
.field-terminal{width:100%;background:#0a101e;padding:8px;border:2px solid #475e75;border-radius:24px;box-shadow:0 12px 28px #0006,inset 0 0 0 2px #0d1826;position:sticky;top:80px;max-height:calc(100vh - 93px);min-height:590px;display:flex;flex-direction:column}
.terminal-bezel{display:flex;flex-direction:column;flex:1;min-height:0}
.terminal-status{display:flex;justify-content:space-between;align-items:center;color:#88d7d7;font:10px var(--mono);padding:10px 11px 13px;letter-spacing:.4px}
.terminal-status span{color:#eee8cf}
.terminal-display{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;background:linear-gradient(170deg,#153149,#1b2541 66%,#271b36);border-radius:16px;padding:17px 11px}
.terminal-screen{min-width:0}
.terminal-brand{padding:11px;background:#192e45;border:1px solid #345771;border-radius:9px;display:flex;flex-direction:column;gap:4px;margin-bottom:13px}
.terminal-brand span{font-size:10px;color:#87d0cc}.terminal-brand strong{font-size:21px;letter-spacing:1.5px}.terminal-brand small{font:8px var(--mono);color:#9db1bd}
.terminal-quick-stats{font-size:11px;display:flex;justify-content:space-between;gap:7px;margin:12px 0 19px;color:#b4cecd}.terminal-quick-stats b{font-weight:500;color:#91d0b7}
.terminal-apps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px 6px}
.terminal-apps button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:#dcece3;background:transparent;border:none;font-size:10px;min-height:78px;word-break:keep-all}
.terminal-apps button span{display:grid;place-items:center;width:48px;height:48px;border-radius:13px;background:linear-gradient(130deg,#215e74,#254057);border:1px solid #3d859d;font:27px var(--mono);box-shadow:inset 0 0 12px #ffffff12}
.terminal-apps button:nth-child(3n+2) span{background:linear-gradient(135deg,#544a5f,#374960);border-color:#6c6679}
.terminal-apps button:nth-child(3n+3) span{background:linear-gradient(135deg,#30584b,#203b53);border-color:#6a9c91}
.terminal-apps button:hover span,.terminal-apps button:focus-visible span{box-shadow:0 0 0 2px #86d8d0,0 0 12px #5bc1b065}
.terminal-dock{display:flex;justify-content:space-around;align-items:center;gap:8px;padding:10px 10px 7px;margin-top:4px}
.terminal-dock button{background:transparent;color:#99b6cf;border:1px solid transparent;padding:6px 10px;font:23px var(--mono);border-radius:8px}
.terminal-dock button.active,.terminal-dock button:hover{color:#f8f0d8;border-color:#4b6477}
.terminal-screen h3{font-size:15px;color:#e9eedb;padding:0 0 8px;border-bottom:1px solid #486575;margin:3px 0 13px}
.terminal-screen h4{font-size:12px;margin-top:17px;color:#bfd8d8}
.terminal-log{display:grid;grid-template-columns:47px minmax(0,1fr);gap:7px;padding:8px 0;border-bottom:1px dotted #3a566a;font-size:11px;line-height:1.5}
.terminal-log time{font:9px var(--mono);color:#9caebc}
.terminal-date{margin:15px auto 6px;width:fit-content;border:1px solid #597b80;background:#223c50;border-radius:50px;padding:2px 9px;color:#dae9d4;font-size:10px}
.terminal-contact{display:flex;align-items:center;gap:9px;width:100%;background:#22344a;border:1px solid #3a6173;color:#eef2e8;text-align:left;border-radius:8px;margin:7px 0;padding:10px;flex-wrap:wrap}
.terminal-contact>span{color:#7dd5cb;font-size:20px}.terminal-contact strong{font-size:11px}.terminal-contact small{font-size:9px;color:#a2bbc2;margin-left:auto}
.terminal-vitals{margin-top:13px;display:grid;gap:7px}
.terminal-vital{display:grid;grid-template-columns:31px 1fr 28px;gap:5px;align-items:center;font:9px var(--mono);color:#a8c3bf}
.terminal-vital b{text-align:right;color:#f3eecf}
.terminal-meter{background:#12283a;height:6px;border:1px solid #3d5468;overflow:hidden;border-radius:5px}.terminal-meter i{height:100%;background:#7cc0a8;display:block}
.terminal-vital:nth-child(3) .terminal-meter i{background:#dda889}.terminal-vital:nth-child(4) .terminal-meter i{background:#a7b5e0}
.terminal-main-action{width:100%;padding:10px;margin:9px 0 15px;background:#24485a;color:#dff6f0;border:1px solid #5999a2;border-radius:6px}
.terminal-health-stat{display:flex;justify-content:space-between;gap:10px;font-size:10px;border-bottom:1px solid #3a5364;padding:9px 2px}
.terminal-health-stat b{font:10px var(--mono);color:#e4ecd6}
#terminal-clock>strong{font:26px var(--mono);color:#f7eed2;display:block;text-align:center;letter-spacing:1px}
#terminal-clock{text-align:center;margin:22px 0 29px;border:1px solid #567684;padding:18px 4px;border-radius:9px}
#terminal-clock p{font-size:12px;margin:6px}#terminal-clock small{font-size:9px;color:#a7bec4}
#terminal-personal .panel,#terminal-colony .panel,#terminal-comms .panel{padding:12px!important;max-width:100%;font-size:11px;margin-bottom:10px}
.terminal-screen .side-view{display:flex;flex-direction:column;gap:10px;min-width:0}
.terminal-screen .side-view.hidden{display:none}
.terminal-screen .side-view .section-header{flex-wrap:wrap;align-items:center}
.terminal-screen .side-view .social-row{flex-wrap:wrap}
.terminal-screen input,.terminal-screen select{max-width:100%}
.terminal-screen #trade-form{grid-template-columns:1fr 1fr}
.terminal-screen #trade-form input:first-child,.terminal-screen #trade-form button{grid-column:1/-1}
.terminal-screen .chat-panel .small-form{max-width:100%}

/* A truly independent timer remains visible while browsing all other panels. */
.floating-timer{position:fixed;right:354px;bottom:17px;z-index:12;display:flex;align-items:center;gap:11px;background:#111f36f2;border:1px solid #82acae;padding:9px 13px;color:#ecf3df;border-radius:6px;max-width:245px;box-shadow:0 5px 18px #070b1699;cursor:pointer}
.timer-face{--timer-progress:0deg;border-radius:50%;width:48px;height:48px;display:grid;place-items:center;flex-shrink:0;background:conic-gradient(#9be1d4 var(--timer-progress),#294354 var(--timer-progress));font-size:21px;color:#1b2d3d}
.timer-face:before{content:'';grid-area:1/1;background:#1d3045;width:36px;height:36px;border-radius:50%}.timer-face>span{grid-area:1/1;color:#b8e2cf;position:relative}
.floating-timer-copy{min-width:0;display:flex;flex-direction:column;gap:1px}.floating-timer-copy small{font:8px var(--mono);color:#85bcbb;letter-spacing:1px}.floating-timer-copy strong{font:18px var(--mono);font-variant-numeric:tabular-nums;white-space:nowrap}.floating-timer-copy span{font-size:10px;color:#bbcbd1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.floating-timer.idle{opacity:.8}

/* Independent unit blocks with labels rather than truncated 4-character text. */
.bag-grid{max-width:500px;gap:3px;padding:9px;background:#121e32;touch-action:none;user-select:none}
.bag-cell{aspect-ratio:1;border-radius:2px;touch-action:none;user-select:none;overflow:visible;position:relative;min-height:0;cursor:grab}
.bag-cell.occupied{background:#3f655c;border:2px solid #a1cbbc}
.bag-cell:active{cursor:grabbing}
.bag-item-name{font-size:clamp(9px,1vw,13px)!important;line-height:1.15;text-align:center;white-space:normal!important;overflow-wrap:anywhere;overflow:visible!important;word-break:keep-all;display:block;max-height:100%;font-weight:600;text-shadow:0 1px 2px #1a273c}
#bag-drag-ghost{position:fixed;z-index:500;pointer-events:none;background:#e7e3c5;border:1px solid #fff;color:#1c3047;padding:9px 12px;font-size:12px;max-width:150px;box-shadow:0 5px 20px #0008}
.contact-actions{display:flex;gap:6px;flex-wrap:wrap}
@media(max-width:1200px){.workspace{grid-template-columns:minmax(155px,190px) minmax(0,1fr) minmax(260px,295px)}.floating-timer{right:312px}.main-column{padding:12px}}
@media(max-width:940px){.workspace{grid-template-columns:minmax(0,1fr) minmax(250px,310px)}.left-sidebar{display:none}.right-sidebar{grid-column:2}.main-column{grid-column:1;grid-row:1}.floating-timer{right:328px}}
@media(max-width:700px){.workspace{display:flex;flex-direction:column}.right-sidebar{order:0;border:0;padding:8px 12px}.main-column{order:1}.field-terminal{position:relative;top:0;max-height:none;min-height:430px;height:480px}.floating-timer{right:12px;bottom:8px;max-width:190px;z-index:16}.floating-timer-copy strong{font-size:15px}.timer-face{width:37px;height:37px}.timer-face:before{width:28px;height:28px}.terminal-display{min-height:320px}.terminal-apps{grid-template-columns:repeat(4,1fr)}.terminal-apps button span{width:38px;height:38px}.bag-grid{max-width:100%}}
/* v0.14: personal list storage and interruptible recovery */
.private-vault-panel .vault-controls{display:flex;align-items:end;flex-wrap:wrap;gap:12px;margin:18px 0}
.private-vault-panel .vault-controls label{display:grid;gap:7px;color:var(--muted,#98aab5);font-size:12px;min-width:125px}
.private-vault-panel .vault-controls select,.private-vault-panel .vault-controls input{background:#182a3d;color:#f0ebd7;border:1px solid #71808b;padding:10px;border-radius:4px;min-height:38px}
.private-vault-panel .vault-controls input{max-width:100px}
.private-vault-panel .vault-controls button,.vault-entry button,.sleep-overlay button{background:#e9e2c9;border:1px solid #9da9a7;padding:8px 12px;color:#1b3044;cursor:pointer;font-weight:600;border-radius:3px;min-height:35px}
.private-vault-panel button:disabled{opacity:.45;cursor:default}
.vault-meter{font-variant-numeric:tabular-nums;font-weight:700;background:#132c40;color:#e6dcb7;border:1px solid #536d72;padding:13px}
.vault-list{display:grid;gap:5px;margin-top:10px}.vault-entry{display:flex;gap:14px;justify-content:space-between;align-items:center;background:#142739;border:1px solid #354e60;padding:11px 13px}
.vault-entry strong{font-size:14px}.vault-entry small{display:block;color:#9ba7b8;margin-top:3px}.vault-entry b{margin-right:8px;font-variant-numeric:tabular-nums}
.vault-history{margin-top:14px}.vault-history-entry{padding:7px 9px;border-bottom:1px dotted #52657a;font-size:12px;color:#c1cbd0}
.emergency-options{border:1px solid #d78f79;background:#402331;padding:14px;margin-top:15px}.emergency-options h3{color:#f8d5c0}.emergency-options .row-actions{justify-content:center;display:flex;gap:9px;flex-wrap:wrap}
.sleep-overlay button{margin:12px auto 4px}.emergency-options strong{color:#ed9f82}

/* Arca v0.15: field research and physiological condition cues */
.field-status-strip{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:12px 0;color:#c0d9da;font-size:11px}
.field-climate,.field-effect,.field-clear{border:1px solid #3b5560;background:#182731;padding:4px 8px;border-radius:3px}
.field-climate{color:#a2d4e1;border-color:#3d6779}.field-clear{color:#7d9b9e}
.field-effect.positive{color:#b4dfbf;border-color:#426f58;background:#193329}
.field-effect.negative{color:#edba9d;border-color:#866455;background:#332721}
.field-effect small{font:10px var(--mono);opacity:.82;margin-left:4px}
.field-lab{border-top:1px solid var(--border);margin-top:8px;padding-top:9px}
.field-lab>summary{cursor:pointer;color:#cbe5e0;font-weight:700;padding:6px 0;list-style-position:inside}
.field-badge{font:9px var(--mono);letter-spacing:1px;color:#81bac5;float:right}
.field-signs{display:grid;gap:6px;margin:13px 0}
.field-sign{border-left:2px solid #698b90;padding:6px 10px;background:#14232f;color:#a8c2c7;font-size:12px}
.field-hypotheses{display:grid;gap:12px}
.field-hypothesis{border:1px solid #34505e;background:#13212d;padding:13px;border-radius:5px}
.field-hypothesis-top{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;align-items:center}
.field-hypothesis-top span{font:10px var(--mono);color:#92bfb1}
.field-hypothesis>p{color:#acbec5;font-size:12px;margin:6px 0 12px}
.field-test-buttons{display:flex;flex-wrap:wrap;gap:7px}
.field-test-buttons button{background:#243a45;border:1px solid #4a6670;color:#d6e8e9;border-radius:3px;padding:6px 10px;min-height:32px}
.field-test-buttons button:hover:not(:disabled){background:#315660}
.field-hypothesis .field-test-result{font-size:11px;color:#b0d1c6;margin:9px 0 0}
.field-hypothesis .field-verified{background:#203a33;padding:8px;color:#c8e4c9;margin-top:12px}
.terminal-condition{font-size:11px;line-height:1.6;border-bottom:1px solid #364b54;padding-bottom:6px}
@media(max-width:720px){.field-hypothesis-top{align-items:start;flex-direction:column}.field-test-buttons button{flex:1 1 auto}}

/* v0.17 — local rescue & expedition, reusing retro terminal palette */
.v17-panel{padding:18px 20px;margin-bottom:12px;min-width:0}
.v17-controls{display:flex;flex-wrap:wrap;align-items:end;gap:9px;margin:13px 0}
.v17-controls label{display:flex;flex:1 1 210px;flex-direction:column;gap:5px;font-size:11px;color:#a9c6bf}
.v17-controls select,.v17-controls input{background:#111d2a;color:#e3efe7;border:1px solid #49635f;border-radius:4px;min-height:38px;padding:8px;width:100%;font:inherit;box-sizing:border-box}
.v17-controls button,.v17-panel .row-actions button,.v17-rescue button{background:#23423d;color:#e1f4e8;border:1px solid #5c847a;border-radius:5px;padding:9px 13px;cursor:pointer;min-height:35px}
.v17-panel button:disabled{opacity:.45;cursor:default}
.v17-card-list{display:flex;flex-direction:column;gap:7px;margin:10px 0 16px;color:#c4d9d2;font-size:12px;line-height:1.5}
.v17-readiness-head,.v17-check,.v17-rescue{display:flex;gap:9px;align-items:center;justify-content:space-between;padding:9px 12px;border:1px solid #314b4b;background:#142733;border-radius:5px;min-width:0}
.v17-check{justify-content:start}.v17-check.is-ready span{color:#a5d4ba}.v17-check.needs-attention span{color:#e9b68b}
.v17-rescue>div{flex:1;min-width:0;overflow-wrap:anywhere}.v17-rescue p{margin:5px 0}.v17-rescue small,.v17-info small{color:#94b0ae}
.v17-info{padding:12px;border:1px solid #314b4b;background:#142733;border-radius:5px}.v17-info p{margin:8px 0;color:#a2c1ba}
@media(max-width:650px){.v17-panel{padding:13px}.v17-rescue{align-items:start;flex-direction:column}.v17-controls button{width:100%}}
/* v0.18 repeatable, cooperative maintenance: shared established card styles */
.maintenance-v18-card{display:flex;flex-direction:column;gap:8px;margin:10px 0;padding:15px;border:1px solid var(--border);border-radius:9px;background:var(--raised)}
.maintenance-v18-card b{display:flex;justify-content:space-between;gap:9px;flex-wrap:wrap}
.maintenance-v18-card b span{font-size:12px;color:var(--mint)}
.maintenance-v18-track{height:7px;border-radius:20px;background:#263640;overflow:hidden}
.maintenance-v18-track i{display:block;height:100%;background:#85bdae;transition:width .25s}
.maintenance-v18-resource{display:flex;justify-content:space-between;font-size:12px;color:var(--sub)}
.maintenance-v18-resource span{color:var(--text);font-variant-numeric:tabular-nums}
.maintenance-v18-card button{min-height:36px;padding:6px 11px;border-radius:6px;background:#254b44;border:1px solid #517b70;color:#e5f2e9}

/* Arca v0.22 · field-first usability pass */
:root{--v22-border:#36545b;--v22-mint:var(--tone-positive4882)}
.context-actions{margin:17px 0 0;padding:15px;border:1px solid #36565c;border-radius:10px;background:linear-gradient(125deg,#132831,#10212d)}
.context-caption{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:13px}.context-caption strong{color:#e8f4ee;font-size:14px}.context-caption span{color:#90b4b6;font-size:11px}
.context-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.context-btn{border:1px solid #385963;background:#1a343a;color:#dcebe7;min-height:41px;border-radius:6px;text-align:left;padding:10px 11px;display:flex;justify-content:space-between;align-items:center;gap:3px;font-size:12px}.context-btn>span{color:#9acaba}.context-btn:hover:not(:disabled){background:#28504d;border-color:#88baa7}.context-btn:disabled{opacity:.48;cursor:not-allowed}.context-job{margin-top:10px;display:flex;gap:10px;align-items:center;justify-content:space-between;color:#a6d2c2;font-size:11px}.context-job button{font-size:11px;background:none;color:#9ed8be;border:none;text-decoration:underline}
/* Individual timer is shown in the hand terminal only, never as a second floating overlay */
.terminal-clock-card{display:grid;place-items:center;text-align:center;padding:12px;gap:8px}.terminal-clock-dial{--dial:0%;width:min(190px,84%);aspect-ratio:1;border-radius:50%;background:conic-gradient(#b4e5cc var(--dial),#293f50 var(--dial));padding:10px;display:grid;place-items:center;box-shadow:0 0 0 2px #254553}.terminal-clock-dial>div{width:100%;height:100%;background:#10232e;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px}.terminal-clock-dial span{font-size:30px;color:#8ac4bb}.terminal-clock-dial strong{font:23px/1.3 var(--mono);color:#e3f4ef;letter-spacing:1px}.clock-job-label{color:#d5ebe1;font-size:13px}.terminal-clock-card small{font-size:11px;color:#8ba6b1}.clock-progress{width:100%;background:#324653;height:6px;border-radius:8px;overflow:hidden}.clock-progress span{display:block;height:100%;background:#88d5bd}.terminal-dock button.running-job{color:var(--tone-positive4882);text-shadow:0 0 12px #72b89e}
.skills-radar{display:flex;justify-content:center;align-items:center;padding:9px 0;background:radial-gradient(circle at center,#1e3944,#10212d 75%);border:1px solid #304a57;border-radius:9px;margin:10px 0}.skills-radar svg{width:min(270px,100%);max-height:270px}.skill-bars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.skill-row{background:#142734;border:1px solid #324959;border-radius:8px;padding:11px}.skill-row>div:first-child{display:flex;justify-content:space-between;gap:8px;align-items:center}.skill-row strong{font-size:12px}.skill-row span{color:#9faebb;font-size:10px}.skill-track{height:7px;background:#29414a;border-radius:8px;overflow:hidden;margin-top:10px}.skill-track i{display:block;height:100%;background:#91d7bb;border-radius:8px}.bag-help-note{color:#94bdad;font-size:11px;margin:8px 0}.bag-warning{border-left:3px solid #e2b77a;background:#403122;color:#ffdfad;padding:12px;border-radius:6px}.field-effect.expired,.terminal-condition.expired{opacity:.45}.v9-action-box:not([open]){padding-bottom:0}.v9-action-box summary{cursor:pointer}
.combat-stage{margin:14px 0}.combat-display{border:1px solid #7f5559;background:linear-gradient(165deg,#241f2c,#122331 80%);border-radius:10px;padding:18px;display:grid;gap:13px}.combat-display-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.combat-display-head span{font:10px var(--mono);letter-spacing:1px;color:#e8a3a5}.combat-display-head strong{font-size:15px}.combat-creature{margin:auto;color:#d18e91;border:1px solid #74484f;display:grid;place-items:center;width:108px;height:92px;border-radius:7px;font-size:62px;text-shadow:0 0 32px #9c5864;background:#2f2936}.combat-hp,.combat-signal{display:flex;justify-content:space-between;gap:9px;padding:10px 12px;border:1px solid #614752;background:#302b39;color:#eee4e1;border-radius:6px;font-size:12px}.combat-signal{background:#3a282d;color:#f0aaa8}.combat-actions{display:flex;flex-wrap:wrap;gap:7px}.combat-actions button,.combat-empty button{background:#61464a;border:1px solid #c18c89;color:#fff0e8;border-radius:6px;padding:10px 16px}.combat-empty{display:flex;flex-direction:column;gap:8px;background:#1c2c36;border:1px solid #3a5360;border-radius:8px;padding:15px;font-size:12px}.combat-empty span{color:#b1bdc5}
.v9-puzzle-grid.minesweeper{background:#bdbdbd;border:4px ridge #f1f1f1;padding:7px;box-shadow:inset 2px 2px #797979, 0 5px 16px #070e16;gap:0!important;max-width:100%;width:max-content;overflow-x:auto}.minesweeper .v10-puzzle-cell{background:#bdbdbd;position:relative;min-width:29px;min-height:29px}.minesweeper .v10-puzzle-cell>button:first-child{font:700 17px var(--mono);height:30px;min-width:30px;padding:0;border:2px outset #fff;background:#bdbdbd;color:#123bac;border-radius:0}.minesweeper .v10-puzzle-cell>button:first-child:disabled{border:1px solid #9b9b9b;color:#103aa0;background:#c9c9c9;opacity:1}.minesweeper .v10-puzzle-cell>.v10-flag{border-radius:0;background:transparent;color:#db1e18;position:absolute;bottom:0;right:0;border:0;padding:0 2px;font-size:12px;height:16px;min-width:16px}
.qa-medical-guide{background:#162f36;border:1px dashed #678e88;padding:10px;border-radius:8px;margin:12px 0}.qa-medical-guide summary{cursor:pointer;color:#a6dec8;font-size:12px}.qa-medical-guide .row-actions{margin-top:12px;flex-wrap:wrap}
/* Focus the page on one location hub and one currently selected system */
.main-column .world-banner{height:126px}.main-column .world-banner h1{font-size:28px}.main-column .world-banner .banner-content{top:20px}.side-tabs,.system-tabs{scrollbar-color:#436c66 transparent}.right-sidebar .chat-panel{display:none} /* present in dedicated terminal communication screen */
@media(max-width:950px){.context-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.skill-bars{grid-template-columns:1fr}}
@media(max-width:700px){.context-actions{padding:11px}.context-caption{flex-direction:column}.context-btn{font-size:11px}.main-column .world-banner{height:116px}.terminal-clock-dial{width:150px}}

.v22-scars{grid-column:1/-1;background:#29303b;border:1px solid #735d63;border-radius:8px;padding:12px;color:#e5c3b6}.v22-scars h4{color:#e5bbb3;font-size:12px;margin:0 0 6px}.v22-scars p{font-size:11px;margin:3px 0;color:#c4b4b1}

.actions-section{display:none}.context-path-title{font:10px var(--mono);color:#89bdb5;letter-spacing:.7px;margin:14px 0 8px}.context-actions .job-container{margin-top:0}.context-actions .exit-list{margin:0}.context-btn.secondary{background:#142732;color:#a6cbba;border-color:#28434b}

/* v0.23 – field-authored status notes and emergency combat */
.v23-effect-guide { margin-top:1rem; padding-top:1rem; border-top:1px dashed var(--line, #777); }
.v23-effect-list { display:grid; gap:.65rem; margin:.8rem 0; }
.v23-effect-card { padding:.85rem; background:var(--surface, rgba(255,255,255,.06)); border:1px solid var(--line, #708398); border-radius:6px; }
.v23-effect-card header { display:flex; align-items:baseline; justify-content:space-between; gap:.6rem; flex-wrap:wrap; }
.v23-effect-card small { opacity:.75; }
.v23-effect-claim { padding:.45rem .65rem; margin-top:.55rem; border-left:3px solid #789d9b; background:rgba(110,145,143,.07); }
.v23-effect-claim p { margin:.1rem 0; overflow-wrap:anywhere; }
.v23-effect-form {display:grid; gap:.7rem; }
.v23-effect-form label {display:grid; gap:.3rem; }
.v23-effect-form select, .v23-effect-form textarea {width:100%; box-sizing:border-box; min-width:0; }
.v23-effect-form button {justify-self:start; }
.raid-buttons button, #v14-solo button {min-height:34px; }
@media(max-width:640px){.v23-effect-card header{display:grid}.v23-effect-form button{width:100%;}}

/* v0.24: one compact escrow hub, medical action discoverability, inventory audit */
.v24-hub{margin:12px 0;border:1px solid #43635b;border-radius:8px;padding:11px;background:#13252b}
.v24-hub>summary{cursor:pointer;font-size:12px;font-weight:700;color:#c0e5d5}
.v24-hub-list{display:grid;gap:9px;margin-top:12px}
.v24-hub-row{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(65px,.75fr) auto;gap:12px;align-items:center;font-size:11px;border-bottom:1px solid #314d4c;padding-bottom:8px}
.v24-hub-row b,.v24-hub-row small{display:block;overflow-wrap:anywhere}.v24-hub-row small{color:#9ab3b4;margin-top:4px}
.v24-progress{height:7px;border-radius:7px;background:#2e454f;overflow:hidden}.v24-progress span{background:#a8cebc;display:block;height:100%;border-radius:7px}
.v24-hub button,.v24-care button,.v24-inventory-audit button{border:1px solid #5b8576;background:#233e3c;color:#d2ebdc;padding:7px 9px;border-radius:5px;cursor:pointer}
.v24-hub button:disabled,.v24-care button:disabled{opacity:.45;cursor:default}
.v24-care{border:1px solid #425659;border-radius:8px;padding:12px;margin:14px 0}.v24-care strong{color:#cbdfd4;font-size:12px}.v24-care p{font-size:11px;color:#9eb8b6;line-height:1.6}
.v24-inventory-audit{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap;font-size:11px;margin:8px 0;padding:10px;background:#152632;border:1px solid #34504e;border-radius:6px}.v24-inventory-audit .v24-warning{color:#efbbaa}
@media(max-width:700px){.v24-hub-row{grid-template-columns:1fr auto}.v24-progress{grid-column:1/-1;grid-row:2}.v24-hub-row button{grid-column:2;grid-row:1}}

/* v0.25: optional per-unit item register, hidden until opened */
.material-ledger-v25 { margin: 12px 0; padding: 10px 12px; border:1px solid var(--border, #415268); border-radius:8px; }
.material-ledger-v25 summary {cursor:pointer; font-weight:700; }
.material-ledger-v25-list {display:grid;gap:5px;margin-top:10px;max-height:220px;overflow:auto;}
.v25-unit {display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:1px dashed rgba(130,150,170,.25);padding:4px 0;word-break:keep-all;}
.v25-unit button {flex-shrink:0;}

/* v0.26 medical details kept collapsible to avoid duplicating body panels. */
.clinical-v26{margin:12px 0;border:1px solid var(--border,#415268);border-radius:8px;padding:12px;}
.clinical-v26 summary{font-weight:700;cursor:pointer;}
#clinical-v26{margin-top:10px;}

/* v0.27 joint installation controls in the existing action hub */
.v27-install-details{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:7px 0;color:#afcbbc;font-size:11px}.v27-install-details span{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border:1px solid #34514e;border-radius:5px}.v27-install-details button{white-space:nowrap}
/* v0.28 ecological observation stays inside the existing field panel. */
.v28-ecology { display:flex; flex-direction:column; gap:5px; padding:10px 12px; margin:10px 0;
  border:1px solid var(--border-color, #667789); background:rgba(48,78,92,.12); border-radius:5px; }
.v28-ecology-head {display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap;}
.v28-ecology-head span {font-size:.8em; opacity:.8;}
.v28-ecology small {line-height:1.5;}

/* v0.29: unobtrusive additions inside existing panels; no duplicate sidebars. */
.v29-habitat,.v29-unified{margin-top:12px;padding:12px;border:1px solid var(--border,#627a7d);border-radius:6px;background:rgba(86,134,130,.07)}
.v29-habitat p{margin:7px 0}.v29-habitat small{display:block;line-height:1.5;opacity:.85}
.v29-unified{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.v29-unified span{flex:1;min-width:160px;font-size:.85rem}
.v29-unified button{flex-shrink:0}

/* Arca v0.30: integrated ecological observations; no additional sidebar. */
.v30-trophic{display:flex;flex-direction:column;gap:6px;margin-top:11px;padding:12px;border:1px dashed var(--border,#627a7d);border-radius:5px}
.v30-trophic span{line-height:1.55;font-size:.9rem}
.v30-trophic button{align-self:flex-start}
