/* Category colour carries through the hand, collection and workbench. Text and
   symbols retain the meaning when colour alone is difficult to distinguish. */
[data-type="MILITARY"]{--card-tone:#a13f38;--card-wash:#f6d7d1;--card-edge:#cf8175}
[data-type="ECONOMY"]{--card-tone:#91501f;--card-wash:#fae1bd;--card-edge:#d49a5e}
[data-type="SCIENCE"]{--card-tone:#5058a0;--card-wash:#dfe3ff;--card-edge:#929bd8}
[data-type="CULTURE"]{--card-tone:#874974;--card-wash:#efd7eb;--card-edge:#bd89af}
[data-type="EXPLORATION"]{--card-tone:#236f78;--card-wash:#cdeee9;--card-edge:#74b7b4}
[data-type="IMPROVEMENT"]{--card-tone:#526d3b;--card-wash:#e2ebca;--card-edge:#9cb27a}
[data-type="SETTLEMENT"],[data-type="EXPANSION"]{--card-tone:#3a6b95;--card-wash:#d9eafa;--card-edge:#89b0d1}
/* Override the earlier hand-only palette with these shared category tokens. */
.action-card[data-type="MILITARY"]{--card-tone:#a13f38;--card-wash:#f6d7d1}
.action-card[data-type="ECONOMY"]{--card-tone:#91501f;--card-wash:#fae1bd}
.action-card[data-type="SCIENCE"]{--card-tone:#5058a0;--card-wash:#dfe3ff}
.action-card[data-type="CULTURE"]{--card-tone:#874974;--card-wash:#efd7eb}
.action-card[data-type="IMPROVEMENT"]{--card-tone:#526d3b;--card-wash:#e2ebca}
.action-card[data-type="SETTLEMENT"]{--card-tone:#3a6b95;--card-wash:#d9eafa}
.action-card[data-type]{background:linear-gradient(155deg,#fffdfa 18%,var(--card-wash) 100%);border:2px solid var(--card-edge);border-bottom:5px solid var(--card-tone);box-shadow:0 6px 16px #334d5420,inset 0 1px #fff}
.action-card:before{background:var(--card-wash);opacity:1}
.action-card .card-type{color:var(--card-tone);background:var(--card-wash);padding:3px 6px;border-radius:7px;letter-spacing:1px;display:table;font-weight:800;margin-top:4px}
.action-card .card-cost{background:var(--card-tone);border:2px solid #fff7ed;color:#fffaf5;box-shadow:0 3px 9px #28383b25}
.action-card .card-symbol{background:var(--card-wash);color:var(--card-tone);border-color:var(--card-edge)}
.action-card.chosen{border-color:var(--card-tone);box-shadow:0 0 0 3px var(--card-wash),0 12px 24px #28383b30}
.action-card:disabled{opacity:.73;filter:saturate(.65)}
.action-card .signature-mark{background:#fff9ee;color:#675845;outline:1px solid #d0bda4}
.collection-card[data-type]{background:linear-gradient(155deg,#fffdf7,var(--card-wash));border:2px solid var(--card-edge);border-bottom:6px solid var(--card-tone)}
.collection-card[data-type]>.eyebrow{color:var(--card-tone)}
.collection-card[data-type] .collection-cost{background:var(--card-tone);color:#fffaf4;border:1px solid #fff4e4}
.collection-seal{position:absolute;right:8px;top:10px;background:#fff9ee;color:#6e5b44;border:1px solid #c9b99c;border-radius:12px;padding:5px 7px;font-size:7px;font-weight:700;letter-spacing:.6px;display:flex;gap:3px;align-items:center}
.collection-seal svg{width:12px;height:12px}
.workbench-seal{display:flex;gap:5px;align-items:center;width:fit-content;background:#fff9ee;color:#746044;border:1px solid #d6c4a8;border-radius:12px;padding:5px 8px;font-size:9px;margin:10px 0}
.workbench-seal svg{width:14px;height:14px}
.collection-card[data-type].selected{outline:3px solid var(--card-wash);border-color:var(--card-tone)}
.card-workbench[data-type]{background:linear-gradient(140deg,#fffaf0,var(--card-wash));border:2px solid var(--card-edge)}
.card-workbench[data-type] .card-workbench-stats,.card-workbench[data-type]>.eyebrow{color:var(--card-tone)}
.card-inspector{background:linear-gradient(160deg,#fffaf4 25%,var(--card-wash));border-top:5px solid var(--card-tone);border-radius:22px}
.card-inspector .inspector-title .eyebrow{color:var(--card-tone)}
.preview-cost{font-size:11px;line-height:1.5;color:#4b5961;padding:9px 10px;background:#fffcf3b8;border-radius:10px}
.unit-portrait{background-color:#e8e8df;object-fit:contain;width:100px;height:100px;border-radius:22px}
.range-legend{font-size:11px;line-height:1.6;color:#45606b;margin:3px 0 12px}
.range-legend i{display:inline-block;width:11px;height:11px;background:#d6e7e9;border:1.5px dashed #448090;border-radius:4px;margin-right:6px}
.range-legend strong{font-weight:600}
.unit-orders .info-note{font-size:10px}
.saved-journey{padding:10px;background:#e5ebed;border:1px solid #cad6da;border-radius:13px;display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}
.saved-journey strong{font-size:11px;flex-basis:100%}
.saved-journey .btn{padding:7px 8px;font-size:10px}
#journey-status{position:absolute;top:184px;left:calc(50% + 12px);transform:translateX(-50%);z-index:6;width:max-content;max-width:min(660px,calc(100% - 40px))}
.journey-banner{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#fffaf1f5;border:1px solid #a9bdc5;border-radius:21px;box-shadow:0 7px 24px #334c5520;backdrop-filter:blur(12px);font-size:12px;color:#38535f}
.journey-banner span{min-width:0;line-height:1.5}.journey-banner small{display:block;font-size:10px;color:#66787f;margin-top:3px}
.journey-banner .btn{flex-shrink:0;padding:10px 14px;font-size:11px;min-height:40px}
.journey-banner .icon-btn{flex-shrink:0}
.journey-banner .primary{background:#386b7b;border-color:#386b7b;color:#fffaf1}
.game-screen.is-busy .command-dock,.game-screen.is-busy .game-nav{filter:saturate(.55);pointer-events:none}
.game-screen:has(.journey-banner) #campaign-guidance{display:none}
@media(max-width:1100px){#journey-status{top:165px;left:50%;max-width:calc(100% - 30px)}}
@media(max-width:650px){
  #journey-status{top:175px;width:calc(100% - 24px);max-width:none}
  .journey-banner{padding:9px 10px;gap:7px;border-radius:17px;font-size:11px}
  .journey-banner small{font-size:9px}.journey-banner .btn{padding:8px 10px;font-size:10px}.journey-banner .icon-btn{width:30px;height:34px}
  .unit-portrait{width:55px;height:55px}.unit-orders .info-note{font-size:9px;margin:6px 0}.range-legend{font-size:10px;margin:0 0 8px}
  .inspector:has(.unit-orders),.inspector:has(.card-inspector){width:calc(100% - 68px);max-height:190px}
  .action-card .card-type{font-size:6px;padding:2px 5px;letter-spacing:.65px}
  .action-card[data-type]{border-width:1.5px;border-bottom-width:4px}
  .target-banner{display:none}
}
@media(prefers-reduced-motion:reduce){.action-card:hover:not(:disabled),.action-card.chosen,.collection-card.selected{transform:none}}
:root[data-motion="reduced"] .action-card:hover:not(:disabled),:root[data-motion="reduced"] .action-card.chosen,:root[data-motion="reduced"] .collection-card.selected{transform:none}
