/* TDC Workspaces v1 - visual shell for the operating-cycle views (tdc_workspaces_v1.js). Uses the Wave 1 theme tokens,
   so Dark / Light / System follow automatically; fallbacks keep the dark tactical palette if tokens are absent. */
.tdc-ws{max-width:1400px;margin:0 auto;padding:clamp(16px,3vw,34px);color:var(--tcc-text,#eef4f7)}
.tdc-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:.78rem;letter-spacing:.06em;color:var(--tcc-text-muted,#98a9b4);margin-bottom:14px}
.tdc-crumbs a{color:var(--tcc-plan,#8ff0d0);text-decoration:none}
.tdc-crumbs a:hover,.tdc-crumbs a:focus-visible{text-decoration:underline}
.tdc-crumbs b{color:var(--tcc-text,#eef4f7);font-weight:750}
.tdc-ws-head{position:relative;overflow:hidden;border:1px solid var(--tcc-border,#243744);border-radius:16px;padding:clamp(20px,3.5vw,38px);background:linear-gradient(135deg,var(--tcc-success-bg,rgba(49,212,106,.12)),var(--tcc-surface,#0d1822) 58%);margin-bottom:16px}
.tdc-ws-head::after{content:'';position:absolute;right:-40px;top:-40px;width:220px;height:220px;background:url(/tdc-shield-logo.svg) center/contain no-repeat;opacity:.06;pointer-events:none}
.tdc-ws-head small{color:var(--tcc-success,#31d46a);font-weight:900;letter-spacing:.16em;font-size:.74rem}
.tdc-ws-head h1{font-size:clamp(1.8rem,4.4vw,3.2rem);margin:.22em 0 .12em;letter-spacing:.01em}
.tdc-ws-head p{color:var(--tcc-text-muted,#98a9b4);max-width:760px;margin:0;line-height:1.55}

.tdc-cycle-strip{list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr)) auto;gap:8px;margin:0 0 16px;padding:0;counter-reset:none}
.tdc-cycle-strip li a{display:block;height:100%;border:1px solid var(--tcc-border,#243744);border-radius:12px;padding:12px 14px;background:var(--tcc-surface,#0d1822);color:var(--tcc-text,#eef4f7);text-decoration:none;transition:border-color .15s,transform .15s}
.tdc-cycle-strip li a:hover,.tdc-cycle-strip li a:focus-visible{border-color:var(--tcc-success,#31d46a);transform:translateY(-1px);outline:none}
.tdc-cycle-strip li[aria-current="step"] a{border-color:var(--tcc-success,#31d46a);background:var(--tcc-success-bg,rgba(49,212,106,.12));box-shadow:inset 0 0 0 1px var(--tcc-success,#31d46a)}
.tdc-cycle-strip em{font-style:normal;display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;border:1px solid var(--tcc-success,#31d46a);color:var(--tcc-success,#31d46a);font-size:.72rem;font-weight:900;margin-right:6px}
.tdc-cycle-strip b{letter-spacing:.13em;font-size:.82rem}
.tdc-cycle-strip span{display:block;color:var(--tcc-text-muted,#98a9b4);font-size:.78rem;margin-top:6px;line-height:1.4}
.tdc-cycle-loop{display:grid;place-items:center;color:var(--tcc-success,#31d46a);font-size:1.5rem;font-weight:900;padding:0 6px}

.tdc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin-bottom:16px}
.tdc-card{display:flex;flex-direction:column;gap:8px;text-align:left;font:inherit;border:1px solid var(--tcc-border,#243744);border-radius:14px;padding:18px;background:var(--tcc-surface,#0d1822);color:var(--tcc-text,#eef4f7);text-decoration:none;cursor:pointer;transition:border-color .15s,transform .15s}
.tdc-card:hover,.tdc-card:focus-visible{border-color:var(--tcc-success,#31d46a);transform:translateY(-2px);outline:none}
.tdc-card-static{cursor:default;border-style:dashed;opacity:.86}
.tdc-card-static:hover{transform:none;border-color:var(--tcc-border-strong,#304654)}
.tdc-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.tdc-card-top b{font-size:1.02rem;line-height:1.3}
.tdc-card-text{color:var(--tcc-text-muted,#98a9b4);line-height:1.5;font-size:.9rem}
.tdc-card-meta{color:var(--tcc-plan,#8ff0d0);font-size:.8rem;font-weight:700}
.tdc-card-meta:empty{display:none}

.tdc-badge{flex:0 0 auto;border-radius:999px;padding:3px 9px;font-size:.66rem;font-weight:900;letter-spacing:.12em;border:1px solid}
.tdc-badge-live{color:var(--tcc-success,#31d46a);border-color:var(--tcc-success,#31d46a);background:var(--tcc-success-bg,rgba(49,212,106,.12))}
.tdc-badge-preview{color:var(--tcc-plan,#8ff0d0);border-color:var(--tcc-plan,#8ff0d0);background:var(--tcc-plan-bg,rgba(143,240,208,.1))}
.tdc-badge-planned{color:var(--tcc-caution,#ffb21e);border-color:var(--tcc-caution,#ffb21e);background:var(--tcc-caution-bg,rgba(255,178,30,.12))}

.tdc-panel{border:1px solid var(--tcc-border,#243744);border-radius:14px;padding:18px;background:var(--tcc-surface,#0d1822);margin-bottom:16px}
.tdc-panel h2{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;margin:0 0 12px;color:var(--tcc-text,#eef4f7)}
.tdc-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}
.tdc-stat{border:1px solid var(--tcc-border,#243744);border-radius:10px;padding:12px;background:var(--tcc-bg-2,#08131d)}
.tdc-stat small{display:block;color:var(--tcc-text-muted,#98a9b4);font-size:.68rem;letter-spacing:.12em;font-weight:800}
.tdc-stat strong{display:block;font-size:1.15rem;margin-top:6px;overflow-wrap:anywhere}
.tdc-stat span{display:block;color:var(--tcc-text-muted,#98a9b4);font-size:.72rem;margin-top:4px}
.tdc-note{color:var(--tcc-text-muted,#98a9b4);font-size:.86rem;line-height:1.5;margin:12px 0 0}

.tdc-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.tdc-mode{border:1px solid var(--tcc-border,#243744);border-radius:12px;padding:14px;background:var(--tcc-bg-2,#08131d);display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.tdc-mode b{letter-spacing:.16em}
.tdc-mode p{margin:0;color:var(--tcc-text-muted,#98a9b4);line-height:1.5;font-size:.88rem}
.tdc-signals{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.tdc-signal{display:flex;flex-direction:column;gap:6px;align-items:flex-start;border:1px solid var(--tcc-border,#243744);border-radius:10px;padding:12px;background:var(--tcc-bg-2,#08131d)}
.tdc-signal span{color:var(--tcc-text-muted,#98a9b4);font-size:.85rem;line-height:1.45}

.tdc-empty{border:1px dashed var(--tcc-border-strong,#304654);border-radius:12px;padding:18px;margin-top:12px;background:transparent}
.tdc-empty b{display:block;margin-bottom:6px}
.tdc-empty p{margin:0 0 12px;color:var(--tcc-text-muted,#98a9b4);line-height:1.5}
.tdc-btn{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border-radius:9px;border:1px solid var(--tcc-success,#31d46a);color:var(--tcc-success,#31d46a);background:var(--tcc-success-bg,rgba(49,212,106,.12));font-weight:850;letter-spacing:.06em;font-size:.78rem;text-decoration:none}
.tdc-btn:hover,.tdc-btn:focus-visible{background:rgba(49,212,106,.22);outline:none}

.tdc-jade{display:flex;gap:18px;align-items:center;background:linear-gradient(135deg,rgba(186,140,255,.12),var(--tcc-surface,#0d1822) 60%)}
.tdc-jade h2{text-transform:none;letter-spacing:.02em;font-size:1.2rem}
.tdc-jade p{margin:0;color:var(--tcc-text-muted,#98a9b4)}
.tdc-jade-mark{flex:0 0 auto;display:grid;place-items:center;width:64px;height:64px;border-radius:50%;border:2px solid #c9a5ff;color:#e5d6ff;font-size:1.8rem;font-weight:900;background:rgba(186,140,255,.12);box-shadow:0 0 24px rgba(186,140,255,.25)}

.tdc-cc-cycle{margin:0 0 18px}
.tdc-cc-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin:0 0 10px}
.tdc-cc-head small{color:var(--tcc-text-muted,#98a9b4);letter-spacing:.16em;font-weight:800;font-size:.72rem}
.tdc-cc-head b{color:var(--tcc-success,#31d46a);letter-spacing:.2em;font-size:.78rem}

@media(max-width:980px){.tdc-cycle-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.tdc-cycle-loop{display:none}.tdc-modes{grid-template-columns:1fr}}
@media(max-width:560px){.tdc-cycle-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.tdc-grid{grid-template-columns:1fr}.tdc-jade{flex-direction:column;text-align:center}}

html[data-tcc-theme-resolved="light"] .tdc-jade-mark{color:#4b2a86;border-color:#8a5fd6;background:rgba(130,80,210,.08)}
html[data-tcc-theme-resolved="light"] .tdc-jade{background:linear-gradient(135deg,rgba(130,80,210,.08),var(--tcc-surface,#fff) 60%)}
