/* Artwork-led presentation layer. Existing engine and printable document styles stay intact. */
@media screen {
  :root { --bg:#111719; --panel:#171e20; --line:#535b5b; --text:#dadbd4; --muted:#a2aaa8; --industrial:Bahnschrift,'Arial Narrow','Franklin Gothic Medium',sans-serif; }
  body { grid-template-columns:240px minmax(0,1fr); background:#111719; }
  #workspace { background:radial-gradient(ellipse at 45% 0,#28313124,transparent 65%),#111719; }
  #sidebar { padding:15px 13px 17px; background:linear-gradient(100deg,#171e20,#111719 85%); border-right-color:#444d4e; box-shadow:inset -1px 0 #a6b1a30d; }
  .brand { padding:0 6px 20px; display:flex; flex-direction:column; gap:4px; text-align:center; font-family:var(--industrial); font-size:17px; font-weight:600; letter-spacing:3.3px; line-height:1.3; }
  .brand-mark { width:77px; height:98px; display:block; object-fit:contain; flex-shrink:0; filter:drop-shadow(0 2px 2px #0006); }
  .brand strong { font:500 10px/1.7 var(--industrial); letter-spacing:4.2px; }.brand small { display:none; }
  .publisher-access { display:flex; align-items:center; gap:10px; padding:12px; min-height:64px; margin:0 0 19px; background:linear-gradient(110deg,#343b3b,#252c2c); border:1px solid #737b76; box-shadow:inset 0 1px #c5c5af19; color:#e0e0d5; }
  .publisher-access:hover { background:#3b4240; border-color:#b2b4a5; }.publisher-access>svg { width:23px; height:23px; color:#cfcec1; }.publisher-access span { flex:1; }
  .publisher-access small { display:block; font:8px var(--mono); color:#bd9189; letter-spacing:.9px; margin-bottom:5px; }.publisher-access strong { display:block; font:600 16px var(--industrial); letter-spacing:.2px; }.publisher-access>b { align-self:flex-start; font-size:16px; font-weight:400; color:#afb7ae; }
  .nav-group-label { font-size:8px; color:#7f8c89; margin:22px 11px 9px; letter-spacing:1.5px; }
  .nav-button { font:500 12px/1.5 var(--industrial); text-transform:uppercase; letter-spacing:.35px; padding:14px 10px; gap:13px; }.nav-button svg { width:21px; height:21px; color:#bbc3be; }
  .nav-button.active { background:linear-gradient(90deg,#52272a,#302025); border-left:3px solid #d84249; color:#e3c7c5; box-shadow:inset 0 1px #d7b59d0a,inset 0 -1px #0003; }.nav-button.active svg { color:#df5153; }
  .terminal-ident { border-top:1px solid #3e4845; margin-top:auto; padding:17px 6px 0; font:7px/1.7 var(--mono); color:#82918a; letter-spacing:.5px; }.terminal-ident strong { display:block; color:#a5aea7; font-size:8px; margin:7px 0; font-weight:400; }.terminal-ident p { font:8px/1.6 var(--mono); color:#8f9d92; margin:0; }.terminal-ident .status-dot { margin-right:5px; }
  .network-bar { height:42px; min-height:42px; padding:0 25px; border-bottom-color:#444f4d; background:linear-gradient(#1a2223,#141b1c); box-shadow:inset 0 1px #b4b19c0b; }.network-symbol { display:none; }
  #main-content { padding:24px 22px 18px; }
  h1 { font-family:var(--industrial); font-size:40px; text-transform:uppercase; letter-spacing:2.1px; font-weight:700; line-height:1.15; margin-bottom:7px; color:#ddded6; background:linear-gradient(#f0f0e4,#c0c5bf); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
  .page-heading { margin-bottom:16px; }.page-heading p:last-child { font-size:14px; letter-spacing:.65px; color:#9da6a3; }.page-heading .eyebrow { display:none; }
  .clearance { border:1px solid #65706a; padding:10px 13px; display:flex; align-items:center; gap:9px; font:10px var(--industrial); letter-spacing:1px; color:#aeb6ad; }.clearance strong { color:#c8424e; font:600 23px var(--industrial); }.clearance span { display:none; }
  .restriction { padding:9px 11px; background:linear-gradient(90deg,#2d1c20,#191e1f); border-color:#8b3941; color:#d57c7b; font-size:9px; margin-bottom:16px; }.restriction>span { border:0; font-size:13px; color:#e4535b; }.restriction small { color:#937c7b; }
  .panel { border-color:#4e5957; background:#151d1f; box-shadow:inset 0 1px #c2c6bb08; }.panel-heading { padding:13px 16px; background:linear-gradient(180deg,#222b2c,#171f21); border-bottom-color:#515b56; box-shadow:inset 0 1px #d4d5bd0a; }
  .panel-heading h2,.launch-panel h2 { font:600 16px/1.25 var(--industrial); letter-spacing:1.5px; color:#d7dad1; }.panel-heading h2 svg,.launch-panel h2 svg { width:23px; height:23px; color:#c6ccc3; }.panel-meta { color:#9da8a0; font-size:8px; }
  .overview-top { grid-template-columns:minmax(0,2.05fr) minmax(300px,1fr); gap:15px; }.field-board { grid-template-columns:minmax(0,1fr) 158px; min-height:300px; }.sector-map { min-height:300px; border-right:1px solid #46524d; border-bottom:0; isolation:isolate; }
  .field-map-art { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; object-position:center; z-index:-2; }.map-screen-overlay { position:absolute; inset:0; z-index:-1; pointer-events:none; background:linear-gradient(0deg,#111b1f99,transparent 24%,#10202312); box-shadow:inset 0 0 25px #0a151633; }.map-drawing { pointer-events:none; opacity:.65; }
  .map-coordinates { position:absolute; inset:14px 14px auto; display:flex; justify-content:space-between; color:#a8b2a6; font:8px var(--mono); letter-spacing:.7px; text-shadow:0 1px 2px #000; }.map-lake-label { position:absolute; right:3%; top:37%; font:7px var(--mono); letter-spacing:.5px; color:#899b93; writing-mode:vertical-rl; }
  .map-pin { background:#111b1dec; border:1px solid #83928474; padding:8px 9px; font-size:8px; color:#c9d0c4; box-shadow:0 2px 5px #0006; }.map-pin:hover { background:#344039; border-color:#b0b5a5; }.map-pin.selected { color:#f0ddd0; background:#40292bdf; border-color:#bd5655; }.map-pin span { border-color:#c08270; }.map-pin.selected span { background:#d44b48; border-color:#ed9180; }
  .pin-town { left:49%; top:51%; }.pin-north { left:19%; top:21%; }.pin-south { left:27%; top:76%; }.map-caption { bottom:11px; left:11px; font-size:6px; color:#8fa49a; text-shadow:0 1px 2px #000; }
  .field-readout { padding:17px 14px; display:flex; flex-direction:column; gap:0; background:linear-gradient(100deg,#1d2829,#162022); align-items:stretch; }.condition-reading { padding:10px 0 15px; border-bottom:1px solid #4e5a53; min-width:0; margin-bottom:5px; }.condition-reading .tiny-label { font-size:7px; color:#a4b2a7; letter-spacing:.7px; margin:0 0 7px; }
  .condition-reading strong,.condition-reading b { display:block; color:#c5cfc4; font:500 14px/1.35 var(--industrial); letter-spacing:.4px; overflow-wrap:anywhere; }.condition-reading strong { color:#d9625c; font-size:18px; }
  .sector-context { padding:12px 0 0; }.sector-context .tiny-label { font-size:7px; margin-bottom:6px; }.sector-context b { font:11px/1.5 var(--industrial); color:#c2cbbf; }.sector-context p { font-size:10px; color:#95a79c; margin:7px 0 0; line-height:1.65; }
  .panel-bottom { padding:12px 15px; background:#172022; border-top-color:#46544c; }.panel-bottom>span { font-size:7px; }.text-action { font:600 11px var(--industrial); color:#d8dacf; letter-spacing:1px; }.text-action:hover { color:#f1b2a5; }
  .bulletin-panel { background:linear-gradient(110deg,#1a2324,#141c1d); }.bulletin-entry { padding:15px 18px; border-bottom-color:#4d5951; }.bulletin-entry h3 { color:#d3d6cb; font:600 13px var(--industrial); letter-spacing:.25px; }.bulletin-entry p { color:#aeb8ac; font-size:12px; line-height:1.7; }.bulletin-entry .tiny-label { color:#8c9c8f; font-size:7px; margin-bottom:6px; }
  .bulletin-archive summary { padding:11px 18px; color:#aab8a9; font-size:10px; }.bulletin-label { color:#81958b; padding:9px 18px; font-size:6px; border-top:1px solid #39493e; }
  .launch-grid { gap:15px; margin-top:15px; grid-template-columns:1fr 1fr 1.05fr; }.launch-panel { padding:0 13px 11px; min-width:0; }.launch-panel h2 { margin:0 -13px 11px; padding:12px 13px; border-bottom:1px solid #525d56; background:linear-gradient(#222b2c,#172022); }
  .launch-visual { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(95px,1fr); min-height:135px; gap:12px; }.launch-visual>img { width:100%; height:145px; object-fit:cover; object-position:center; border:1px solid #46514c; }.logistics-launch .launch-visual>img { object-position:53% 60%; }.personnel-launch .launch-visual>img { object-position:52% 38%; }.combat-panel .launch-visual>img { object-position:36% 40%; }
  .launch-facts { border-left:1px solid #606b60; padding:4px 0 0 10px; display:flex; flex-direction:column; align-items:flex-start; min-width:0; }.launch-facts .tiny-label { font:7px/1.5 var(--industrial); letter-spacing:.5px; color:#8d9f91; margin-bottom:3px; }.launch-facts strong,.launch-facts b { font:500 10px/1.45 var(--industrial); color:#c0cdbf; margin-bottom:10px; overflow-wrap:anywhere; }.launch-facts strong { font-size:13px; }.launch-facts b:last-child { margin-bottom:0; }
  .combat-facts strong { font:600 12px/1.3 var(--industrial); color:#d1d8c9; letter-spacing:.4px; margin-bottom:8px; }.combat-rule { display:block; width:37px; border-top:1px solid #b34347; margin-bottom:10px; }.combat-facts>span:not(.combat-rule) { font:8px/1.7 var(--industrial); text-transform:uppercase; color:#94a797; letter-spacing:.6px; }
  .launch-panel p { font-size:11px; color:#a7b4a8; margin:10px 0 8px; line-height:1.6; }.launch-actions { display:flex; flex-direction:column; gap:7px; margin-top:auto; }.primary-launch { width:100%; min-height:36px; padding:9px 12px; justify-content:space-between; border:1px solid #858f81; background:linear-gradient(#293331,#192322); text-align:center; }.primary-launch:hover { border-color:#bdc5b2; background:#35413a; }.primary-launch span { color:#b4c0af; font-size:17px; font-weight:400; line-height:1; }
  .launch-actions .quiet-action { font:9px var(--industrial); color:#a1b19e; letter-spacing:.4px; min-height:18px; display:flex; justify-content:space-between; align-items:center; }.external-caption { font:7px/18px var(--mono); color:#6e8a78; letter-spacing:.4px; }
  .directive-panel { margin-top:14px; background:#131d1e; border-color:#3e4f46; }.directive-panel>summary { padding:11px 15px; color:#91a596; }.workspace-footer { background:#111b1c; border-top-color:#405147; color:#879e8b; padding:10px 22px; }
  .db-container { background:#1b2829; border-color:#4a5a50; }.registry-list { background:#172325; border-color:#485b4d; }#db-display { background:linear-gradient(130deg,#22302e,#172324); }.photo-frame { border:2px solid #778677; box-shadow:0 2px 8px #0005; }
  #enlist .enlist-panel,#enlist .enlist-dossier { background:linear-gradient(130deg,#202e2d,#172426); border-color:#4c6152; }#enlist .enlist-heading h2 { font:600 34px var(--industrial); text-transform:uppercase; letter-spacing:1.2px; color:#d8dfd0; }#enlist .enlist-document-header,#enlist .enlist-id-card header { border-color:#7a8970; }
  @media(max-width:1200px) {
    body { grid-template-columns:218px minmax(0,1fr); }.brand-mark { width:65px;height:83px; }.brand { font-size:15px; }.publisher-access { padding:11px; }.publisher-access strong { font-size:15px; }h1 { font-size:34px; }.overview-top { grid-template-columns:minmax(0,1.8fr) 285px; }.field-board { grid-template-columns:minmax(0,1fr) 128px; }.field-readout { padding:13px 11px; }.condition-reading strong { font-size:16px; }
    .launch-visual { gap:8px; grid-template-columns:minmax(0,1.4fr) minmax(87px,1fr); }.launch-facts { padding-left:8px; }.launch-panel h2 { font-size:13px; letter-spacing:.8px; }.primary-launch { font-size:10px; }
  }
  @media(max-width:1050px) {
    .overview-top { grid-template-columns:1fr; }.field-board { grid-template-columns:minmax(0,1fr) 170px; }.sector-map { min-height:320px; }.field-readout { padding:17px; }.bulletin-panel #daily-bulletin { display:grid; grid-template-columns:1fr 1fr 1fr; }.bulletin-entry { padding:15px; }
    .launch-grid { grid-template-columns:1fr 1fr; }.combat-panel { grid-column:span 2; }.combat-panel .launch-visual { grid-template-columns:1.7fr 1fr; }.combat-panel .launch-visual>img { height:180px; }.combat-facts strong { font-size:19px; }.combat-facts>span:not(.combat-rule) { font-size:10px; }.terminal-ident { display:none; }.page-heading { gap:15px; }.clearance { font-size:8px; padding:8px; }
  }
  @media(max-width:768px) {
    body { display:flex; }.brand { flex-direction:row; padding:8px 15px; gap:10px; text-align:left; font-size:11px; letter-spacing:1.5px; }.brand-mark { width:34px; height:43px; }.brand strong { font-size:8px; letter-spacing:2.4px; }.brand small { display:none; }
    #sidebar { padding:0; border-right:0; max-height:73dvh; }.publisher-access { margin:0 12px 8px; min-height:38px; padding:7px 10px; gap:8px; }.publisher-access svg { width:16px; height:16px; }.publisher-access span { display:flex; align-items:center; gap:10px; }.publisher-access small { font-size:7px; margin:0; letter-spacing:.4px; }.publisher-access strong { font-size:13px; }.publisher-access>b { font-size:13px; align-self:center; }
    #nav-links { padding:0 10px 10px; }.nav-button { padding:11px 8px; font-size:10px; letter-spacing:.1px; gap:8px; }.nav-button svg { width:17px; height:17px; }.nav-group-label { margin:9px 8px 4px; }.network-bar { height:35px; min-height:35px; padding:0 16px; }.terminal-ident { display:none; }
    #main-content { padding:20px 14px; }h1 { font-size:28px; letter-spacing:1px; }.clearance { padding:7px; gap:4px; font-size:6px; }.clearance strong { font-size:17px; }.page-heading p:last-child { font-size:12px; letter-spacing:0; }.page-heading { margin-bottom:15px; }.restriction { font-size:6.5px; padding:9px; margin-bottom:15px; }
    .overview-top,.launch-grid { grid-template-columns:1fr; gap:15px; }.field-board { grid-template-columns:1fr; }.sector-map { min-height:270px; border-right:0; border-bottom:1px solid #4d5c50; }.field-readout { padding:0; display:grid; grid-template-columns:1fr 1fr 1fr; gap:0; }.condition-reading { padding:12px 8px; border-right:1px solid #455a4b; border-bottom:0; margin:0; }.condition-reading .tiny-label { font-size:6px; letter-spacing:.2px; }.condition-reading strong,.condition-reading b { font-size:11px; }.sector-context { grid-column:1/-1; border-top:1px solid #455a4b; padding:11px; display:grid; grid-template-columns:auto 1fr; gap:4px; }.sector-context b { text-align:right; font-size:10px; }.sector-context p { grid-column:1/-1; margin:0; font-size:10px; }.sector-context .tiny-label { margin:0; align-self:center; font-size:6px; }
    .panel-heading { padding:13px; }.panel-heading h2 { font-size:13px; letter-spacing:1px; }.panel-heading svg { width:20px; height:20px; }.panel-meta { font-size:6px; }.panel-bottom { flex-direction:column; gap:9px; padding:12px; }.panel-bottom .text-action { min-height:26px; }.map-pin { font-size:7px; padding:7px; }.pin-town { left:46%; }.pin-north { left:14%; }.pin-south { left:23%; }.map-caption { font-size:5px; }.map-lake-label { font-size:6px; }
    .bulletin-panel #daily-bulletin { display:block; }.bulletin-entry { padding:17px; }.bulletin-entry p { font-size:12px; }.bulletin-entry h3 { font-size:14px; }.bulletin-label { font-size:6px; }
    .launch-grid { margin-top:15px; }.launch-panel { padding:0 13px 12px; }.launch-panel h2 { font-size:16px; padding:13px; margin:0 -13px 12px; }.launch-visual { grid-template-columns:minmax(0,1.8fr) minmax(94px,1fr); gap:12px; }.launch-visual>img { height:155px; }.launch-facts { padding-left:10px; }.launch-facts .tiny-label { font-size:7px; }.launch-facts strong { font-size:15px; }.launch-facts b { font-size:11px; }.launch-panel p { font-size:12px; }
    .combat-panel { grid-column:auto; }.combat-panel .launch-visual { grid-template-columns:minmax(0,1.8fr) minmax(94px,1fr); }.combat-panel .launch-visual>img { height:155px; }.combat-facts strong { font-size:13px; }.combat-facts>span:not(.combat-rule) { font-size:8px; }.primary-launch { min-height:39px; font-size:11px; }.launch-actions .quiet-action { min-height:28px; font-size:11px; }.external-caption { line-height:28px; }
    .workspace-footer { padding:10px 14px; font-size:6px; }#enlist .enlist-heading h2 { font-size:28px; }
  }
}
