/* Shared palette for the playmat and catalogue window. Current reproduces the original look. */
:root{
  --ui-font:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  --surface:#101923;--field:#0d1720;--single:#182a35;--corp-field:#231a25;--corp-zone:#20161d;
  --zone-line:#527082;--corp-line:#765160;--card-line:#667584;--icon-line:#b8d3df;
  --header-start:#172535;--header-end:#111923;--tab:#192634;--tab-active:#263d4a;
  --card-a:#2a3c4a;--card-b:#182630;--corp-card-a:#493441;--corp-card-b:#261d29;
  --face-a:#28485b;--face-b:#172e3f;--corp-face-a:#633447;--corp-face-b:#342330;
  --overlay:#101923e8;--drop:#233e48;--corp-drop:#493242;--corp-title:#efbacd;
  --image-bg:#08121b;--icon-hover:#29475a;--trash-hover:#64303e;--catalogue-drop:#2c1d29;--link-hover:#243543;
}
:root[data-theme="verdant"]{
  --bg:#03110b;--panel:#092016;--line:#386b4a;--text:#e2ffe6;--muted:#a7d4b0;--accent:#72f49e;--cyan:#b7ff87;--focus:#f4ffae;
  --ui-font:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;
  --surface:#07180f;--field:#06170f;--single:#0c2819;--corp-field:#092019;--corp-zone:#0b2117;
  --zone-line:#376849;--corp-line:#56966a;--card-line:#5a9070;--icon-line:#a8f8c3;
  --header-start:#103421;--header-end:#05130d;--tab:#102d1e;--tab-active:#1b4930;
  --card-a:#143e2a;--card-b:#0a1b13;--corp-card-a:#183823;--corp-card-b:#0a1b12;
  --face-a:#16412c;--face-b:#092015;--corp-face-a:#265436;--corp-face-b:#102719;
  --overlay:#061a10ee;--drop:#20543a;--corp-drop:#2a6040;--corp-title:#c3f8c8;
  --image-bg:#04130b;--icon-hover:#236a43;--trash-hover:#315d34;--catalogue-drop:#173f2a;--link-hover:#17452b;
}
:root[data-theme="dryfter"]{
  --bg:#080e28;--panel:#121b3c;--line:#52648b;--text:#f2f5ff;--muted:#b3bfda;--accent:#ff54b7;--cyan:#3ce4d5;--focus:#ffe6a7;
  --surface:#101837;--field:#101a39;--single:#20214d;--corp-field:#2b1742;--corp-zone:#261639;
  --zone-line:#6074a0;--corp-line:#a1549d;--card-line:#6689a8;--icon-line:#a2e5e9;
  --header-start:#292052;--header-end:#09162e;--tab:#182550;--tab-active:#393063;
  --card-a:#214270;--card-b:#111d40;--corp-card-a:#5a2966;--corp-card-b:#281839;
  --face-a:#225880;--face-b:#162544;--corp-face-a:#713c77;--corp-face-b:#2f1b47;
  --overlay:#0d1639ed;--drop:#213f62;--corp-drop:#64305e;--corp-title:#ffabd9;
  --image-bg:#0a1230;--icon-hover:#254873;--trash-hover:#743269;--catalogue-drop:#431d53;--link-hover:#213b62;
}
:root[data-theme="redline"]{
  --bg:#050505;--panel:#151515;--line:#6c6c69;--text:#f7f7f4;--muted:#bdbdb8;--accent:#f04447;--cyan:#f7f7f4;--focus:#ff9a9a;
  --ui-font:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;
  --surface:#0c0c0c;--field:#090909;--single:#191919;--corp-field:#101010;--corp-zone:#111111;
  --zone-line:#737370;--corp-line:#888884;--card-line:#a7a7a2;--icon-line:#deded8;
  --header-start:#202020;--header-end:#060606;--tab:#1d1d1d;--tab-active:#353535;
  --card-a:#303030;--card-b:#0d0d0d;--corp-card-a:#393939;--corp-card-b:#101010;
  --face-a:#363636;--face-b:#121212;--corp-face-a:#444444;--corp-face-b:#181818;
  --overlay:#060606ed;--drop:#2a2a2a;--corp-drop:#373737;--corp-title:#fff;
  --image-bg:#080808;--icon-hover:#333;--trash-hover:#531b1b;--catalogue-drop:#2b1717;--link-hover:#303030;
}
body{font-family:var(--ui-font);background-color:var(--bg);color:var(--text)}
.masthead,.window-header{background:linear-gradient(110deg,var(--header-start),var(--header-end) 70%);border-bottom-color:var(--accent)}
.panel,.filter-panel,.gallery-card,dialog{background:var(--panel);border-color:var(--line)}
input,select,.track{background:var(--surface);border-color:var(--line);color:var(--text)}
.tabs button{background:var(--tab);border-color:var(--line);border-bottom-color:var(--line)}
.tabs button[aria-selected="true"]{background:var(--tab-active);border-bottom-color:var(--cyan)}
.zone{background:var(--field);border-color:var(--zone-line)}
.single-slot{background:var(--single)}
.approach-column{background:var(--corp-field);border-color:var(--corp-line)}
.approach-column .zone,.prepared-hq{background:var(--corp-zone);border-color:var(--corp-line)}
.card{background:linear-gradient(var(--card-a),var(--card-b));border-color:var(--card-line)}
.card[data-side="corp"]{background:linear-gradient(var(--corp-card-a),var(--corp-card-b))}
.card-face,.gallery-fallback{background:linear-gradient(140deg,var(--face-a),var(--face-b))}
.card[data-side="corp"] .card-face,.gallery-card[data-side="corp"] .gallery-fallback{background:linear-gradient(140deg,var(--corp-face-a),var(--corp-face-b))}
.card-icon-button{background:var(--overlay);color:#fff;border-color:var(--icon-line)}
.card-icon-button:hover{background:var(--icon-hover);border-color:var(--cyan)}
.card-trash:hover{background:var(--trash-hover);border-color:var(--accent)}
.hover-cue{background:var(--overlay);color:var(--cyan)}
.hover-preview{background:var(--surface);border-color:var(--cyan)}
.hover-fallback{background:linear-gradient(140deg,var(--face-a),var(--face-b))}
.card-image{background:var(--image-bg)}
.card-back{position:absolute;inset:0;z-index:1;display:none;place-content:center;gap:1rem;text-align:center;border:3px double var(--cyan);border-radius:.35rem;color:var(--text);background:repeating-linear-gradient(90deg,transparent 0 22px,#ffffff0a 22px 23px),linear-gradient(140deg,var(--card-a),var(--card-b))}
.card-back[data-side="corp"]{border-color:var(--accent);background:repeating-linear-gradient(90deg,transparent 0 22px,#ffffff0a 22px 23px),linear-gradient(140deg,var(--corp-card-a),var(--corp-card-b))}
.card-back strong{font:900 1.55rem/1 var(--ui-font);letter-spacing:.22em}
.card-back span{font:.8rem/1 var(--ui-font);letter-spacing:.24em}
.card.facedown .card-image,.card.facedown .card-face,.card.facedown .card-type,.card.facedown .card-note{display:none}
.card.facedown .card-visual{height:var(--mat-card-h);min-height:var(--mat-card-h)}
.card.ice-sideways.facedown .card-visual{height:var(--mat-ice-h);min-height:var(--mat-ice-h)}
.card.facedown .card-back,.dialog-back{display:grid}
.dialog-back{position:relative;width:min(300px,100%);height:420px;margin:auto}
#netarch-panel .card-back{gap:.25rem;border-width:1px}
#netarch-panel .card-back strong{font-size:.65rem;letter-spacing:.08em}
#netarch-panel .card-back span{font-size:.5rem;letter-spacing:.08em}
.card .hover-cue{width:calc(100% - 8.8rem)}
.catalogue .card .hover-cue{width:calc(100% - 3.8rem)}
.gallery-visual .hover-cue{width:calc(100% - .8rem)}
.catalogue.drag-over{background:var(--catalogue-drop);border-color:var(--accent)}
.catalogue-link:hover{background:var(--link-hover);border-color:var(--cyan)}
.zone.drag-over,.zone.selected-target{background:var(--drop);border-color:var(--cyan)}
.approach-column .zone.drag-over,.prepared-hq.drag-over{background:var(--corp-drop);border-color:var(--accent)}
#netarch-panel .corp-field>h3{color:var(--corp-title)}
#netarch-panel .zone,#netarch-panel .approach-column .zone,#netarch-panel .approach-column,#netarch-panel .card{background:transparent;border:0}
#netarch-panel .zone.drag-over,#netarch-panel .zone.selected-target{background:var(--drop)}
.header-tools,.window-tools{display:flex;flex-direction:column;align-items:flex-end;gap:.65rem}
.theme-control{display:flex;align-items:center;gap:.55rem}
.theme-control label{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}
.theme-control select{width:190px;min-height:38px;padding:.35rem .5rem}
:root[data-theme="verdant"] body{background-image:radial-gradient(circle at 85% 10%,#173e242d,transparent 45%),repeating-linear-gradient(0deg,transparent 0 3px,#6cff7410 4px)}
:root[data-theme="verdant"] .masthead h1{text-shadow:0 0 18px #72f49e69}
:root[data-theme="dryfter"] body{background-image:radial-gradient(circle at 80% 0%,#f64db01f,transparent 40%),radial-gradient(circle at 10% 80%,#2de9d018,transparent 40%)}
:root[data-theme="dryfter"] .tabs button[aria-selected="true"]{box-shadow:0 3px 13px #ff54b74d}
:root[data-theme="redline"] :is(.panel,.zone,.approach-column,.card,.card-face,.card-image,.card-icon-button,.tabs button,input,select,button,dialog){border-radius:0}
:root[data-theme="redline"] .masthead h1{letter-spacing:.08em;text-transform:uppercase}
:root[data-theme="redline"] .tabs button[aria-selected="true"]{box-shadow:inset 0 -2px 0 var(--accent)}
@media(max-width:720px){.header-tools,.window-tools{align-items:flex-start;margin-top:1rem}.theme-control{flex-wrap:wrap}}
@media(max-width:360px){.card.facedown:not(.ice-sideways) .card-visual{height:auto;aspect-ratio:5/7;min-height:0}}
@media print{body{background:#fff!important;color:#000!important;background-image:none!important}.panel,.zone,.approach-column,.card{background:#fff!important;color:#000!important}.card.facedown .card-visual{height:210px;min-height:210px}.card.ice-sideways.facedown .card-visual{height:200px;min-height:200px}}
