:root{font-family:Aptos,Segoe UI Variable,Trebuchet MS,sans-serif;color:#172033;background:radial-gradient(circle at top left,rgba(20,33,61,.04),transparent 28%),linear-gradient(180deg,#fbfcfe,#f3f5f8);background-color:#f3f5f8}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,select{font:inherit}button{border:none}.shell{max-width:1280px;margin:0 auto;padding:20px}.dashboard-header{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(0,1fr);gap:14px;margin-bottom:14px}.dashboard-title-card{display:grid;align-content:center;gap:4px;min-height:104px}.dashboard-title-card h1{margin:0;font-size:clamp(1.4rem,2.2vw,2rem);line-height:1.08}.dashboard-header-side{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:stretch}.hero{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,.7fr);gap:14px;margin-bottom:14px}.hero-copy{padding:20px 22px;border-radius:20px;background:#fff;border:1px solid rgba(20,33,61,.08);box-shadow:0 10px 24px #14213d0d;color:#172033}.eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;font-weight:700;color:#64748b}.hero h1{margin:0;font-size:clamp(1.8rem,3vw,2.8rem);line-height:1.06;max-width:13ch}.hero-text{max-width:44ch;margin:12px 0 0;line-height:1.5;color:#52627f}.hero-side{display:grid;gap:10px;align-content:start}.hero-panel,.card,.stat-tile{background:#fff;border:1px solid rgba(20,33,61,.08);box-shadow:0 10px 24px #14213d0d}.hero-panel{border-radius:16px;padding:14px 16px}.hero-panel span,.stat-tile span,.story-label,.metric-card span,.history-grid span,.field span,.meta{display:block;font-size:.78rem;letter-spacing:.02em;color:#52627f}.hero-panel strong,.stat-tile strong,.story-card strong,.metric-card strong,.history-grid strong{display:block;margin-top:4px;font-size:1.02rem}.primary-button,.danger-button{width:100%;padding:12px 16px;border-radius:14px;cursor:pointer;font-weight:700;transition:transform .14s ease,box-shadow .14s ease,opacity .14s ease}.primary-button{background:#172033;color:#fff;box-shadow:0 10px 20px #17203324}.danger-button{background:#fff4f2;color:#b42318;border:1px solid #fecaca}.primary-button:hover,.danger-button:hover,.station-card:hover,.connector-tab:hover{transform:translateY(-1px)}.primary-button:disabled,.danger-button:disabled,.station-card:disabled,.connector-tab:disabled{cursor:not-allowed;opacity:.55;transform:none}.stats-bar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.stat-tile{border-radius:16px;padding:14px 16px}.stat-tile small,.story-card p,.metric-card small,.hero-panel small,.empty-panel p,.command-row p,.history-card p,.timeline-item p,.footer-note,.card-header p,.station-card p,.station-card small{color:#5b6882}.feedback{margin:0 0 16px;padding:14px 16px;border-radius:16px;font-weight:600}.feedback-error{background:#fff1f2;color:#b91c1c;border:1px solid #fecdd3}.feedback-success{background:#ecfdf3;color:#166534;border:1px solid #bbf7d0}.experience-grid{display:grid;grid-template-columns:300px minmax(0,1fr);gap:14px}.card{border-radius:18px;padding:16px}.station-rail{position:sticky;top:18px;height:fit-content}.card-header{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:12px}.compact-header{margin-bottom:14px}.card-header h2,.card-header p,.timeline-item strong,.history-card strong,.command-row strong,.station-card strong{margin:0}.card-header h2{font-size:1.15rem}.search-field{margin-bottom:14px}.field{display:flex;flex-direction:column;gap:6px}.field input,.field select{width:100%;padding:11px 12px;border-radius:12px;border:1px solid #d8deea;background:#fff;color:#172033}.control-rail{max-height:calc(100vh - 32px);overflow:auto}.sidebar-stack{display:grid;gap:14px}.control-summary-card{background:#f8fafc}.sidebar-form-grid{grid-template-columns:1fr}.compact-station-list{max-height:460px;overflow:auto;padding-right:4px}.field input:focus,.field select:focus{outline:2px solid rgba(245,158,11,.28);border-color:#f59e0b}.station-list{display:grid;gap:12px}.station-card{width:100%;text-align:left;border-radius:14px;padding:14px;background:#fbfcfd;border:1px solid #dde5f2;cursor:pointer}.station-card-active{border-color:#172033;box-shadow:inset 0 0 0 1px #1720332e;background:#f4f7fb}.station-card-static{cursor:default}.station-card-static:hover{transform:none}.station-card-top,.station-card-meta,.story-meta,.action-panel,.command-row,.history-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.station-card p,.station-card small{margin:8px 0 0}.station-card-meta{margin-top:10px;font-size:.82rem;color:#66748f;flex-wrap:wrap}.pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:5px 10px;font-size:.72rem;font-weight:700}.pill-ready{background:#edfdf4;color:#166534}.pill-live{background:#dcfce7;color:#166534}.pill-busy{background:#fff7ed;color:#c2410c}.pill-alert{background:#fef2f2;color:#b91c1c}.pill-info{background:#eff6ff;color:#1d4ed8}.pill-muted{background:#eef2ff;color:#475569}.journey-column{display:grid;gap:14px}.station-monitor{display:grid;gap:16px}.station-monitor-toolbar{display:grid;gap:12px}.station-command-row{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:end}.station-shared-control-grid{grid-template-columns:repeat(2,minmax(180px,1fr))}.station-monitor-header{align-items:flex-start}.station-monitor-meta{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;font-size:.82rem;color:#66748f}.journey-hero{overflow:hidden}.journey-hero-grid{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(200px,1fr));gap:10px}.story-card{border-radius:14px;padding:14px;background:#fbfcfd;border:1px solid #e1e8f5}.story-card-wide{background:#f8fafc}.story-card p,.metric-card small,.empty-panel p,.command-row p,.timeline-item p,.footer-note{margin:8px 0 0;line-height:1.5}.story-meta{margin-top:14px;flex-wrap:wrap;justify-content:flex-start;font-size:.82rem;color:#66748f}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.connector-tabs-shell{overflow-x:auto;padding-bottom:6px}.connector-tabs{display:flex;flex-wrap:nowrap;gap:10px;min-width:max-content}.connector-tab{flex:0 0 clamp(180px,20vw,220px);padding:12px 14px;text-align:left;border-radius:14px;background:#fff;border:1px solid #d8deea;cursor:pointer;position:relative}.connector-tab:after{content:"";display:block;width:30px;height:4px;margin-top:10px;border-radius:999px;background:var(--connector-accent, #cbd5e1)}.connector-tab-label{display:flex;align-items:center;gap:8px}.connector-tab-dot{width:10px;height:10px;border-radius:999px;background:var(--connector-accent, #cbd5e1);flex:0 0 auto}.connector-tab span,.connector-tab strong{display:block}.connector-tab span{font-size:.76rem;color:#5b6882}.connector-tab strong{margin-top:6px;font-size:1rem}.connector-tab-active{border-color:var(--connector-accent, #0f766e);background:var(--connector-soft, #f3fbf9)}.connector-tone-0{--connector-accent: #2563eb;--connector-soft: #eff6ff}.connector-tone-1{--connector-accent: #dc2626;--connector-soft: #fef2f2}.connector-tone-2{--connector-accent: #16a34a;--connector-soft: #f0fdf4}.connector-tone-3{--connector-accent: #d97706;--connector-soft: #fff7ed}.connector-body{margin-top:14px}.metric-grid,.form-grid,.history-grid{display:grid;gap:12px}.metric-grid,.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-card,.history-card{border-radius:14px;padding:14px;background:#fbfcfd;border:1px solid #e1e8f5}.connector-monitor-list{display:grid;gap:12px}.connector-monitor{border-radius:16px;padding:14px;background:#f8fafc;border:1px solid #e1e8f5}.connector-monitor-focused{background:#fbfcfe}.connector-monitor.connector-tone-0,.connector-monitor.connector-tone-1,.connector-monitor.connector-tone-2,.connector-monitor.connector-tone-3{border-top:4px solid var(--connector-accent);background:linear-gradient(180deg,var(--connector-soft) 0,#fbfcfe 18%,#fbfcfe 100%)}.connector-context-bar{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.connector-context-bar span{min-width:170px;padding:10px 12px;border-radius:12px;background:#f8fafc;border:1px solid #e1e8f5}.connector-overlay-button{min-width:136px;min-height:74px;padding:10px 12px;border-radius:12px;border:1px solid #d8deea;background:#fff;color:#0f766e;text-align:left;cursor:pointer;display:flex;flex-direction:column;justify-content:center;gap:4px}.connector-overlay-button:hover{border-color:#0f766e;background:#f3fbf9}.connector-overlay-button svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;fill:none}.connector-context-bar strong,.connector-context-bar small,.connector-overlay-button strong,.connector-overlay-button small{display:block}.connector-context-bar small,.connector-overlay-button small{margin-top:4px;color:#5b6882}.connector-monitor-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.connector-monitor-top p{margin:6px 0 0;color:#5b6882}.machine-note{margin-top:12px;padding:12px 14px;border-radius:12px;border:1px solid #dbe4f0;background:#f8fafc;color:#475569;line-height:1.5}.connector-monitor-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}.connector-control-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:14px}.connector-target-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.connector-mode-note{grid-column:1 / -1;margin-top:0}.action-panel{margin-top:14px;padding:14px;border-radius:14px;background:#f8fafc;border:1px solid #e2e8f0}.action-panel p{margin:6px 0 0;line-height:1.5;color:#5b6882}.action-panel-stop{background:#fff7f5;border-color:#fecaca}.command-list,.history-list,.timeline{display:grid;gap:10px}.command-list{margin-top:16px}.connector-command-list{margin-top:12px}.command-row{padding:12px 14px;border-radius:14px;background:#f8fafc;border:1px solid #e1e8f5}.command-row p,.timeline-item p{margin-top:4px}.command-row-meta{display:grid;justify-items:end;gap:6px}.connector-action-row{display:flex;gap:10px;margin-top:12px}.connector-action-row-inline{align-items:stretch}.connector-action-row .primary-button,.connector-action-row .danger-button{width:auto;flex:1}.empty-panel{padding:16px;border-radius:14px;background:#fbfcfd;border:1px dashed #cdd7ea}.compact-empty{padding:16px}.empty-panel strong,.empty-inline{color:#334155}.empty-inline{margin:0}.history-card-top{margin-bottom:14px}.history-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.history-grid strong{margin-top:4px;font-size:.95rem}.timeline-item{display:grid;grid-template-columns:14px minmax(0,1fr);gap:10px;align-items:start;padding:8px 0}.timeline-dot{width:14px;height:14px;border-radius:999px;margin-top:4px;box-shadow:0 0 0 4px #14213d0d}.timeline-dot-status{background:#f59e0b}.timeline-dot-protocol{background:#0f766e}.station-log-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.overlay-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:#17203375;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000}.overlay-card{width:min(860px,100%);max-height:min(82vh,920px)}.overlay-header{margin-bottom:14px}.overlay-scroll-area{max-height:calc(82vh - 130px);overflow:auto;padding-right:4px}.footer-note{margin:14px 0 0;text-align:center}@media (max-width: 1180px){.dashboard-header,.experience-grid,.detail-grid,.journey-hero-grid,.station-log-grid,.hero,.stats-bar{grid-template-columns:1fr}.dashboard-header-side{grid-template-columns:repeat(2,minmax(0,1fr))}.station-rail{position:static}.control-rail,.compact-station-list{max-height:none}.connector-monitor-grid,.connector-control-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.station-command-row{grid-template-columns:1fr}}@media (max-width: 760px){.shell{padding:16px}.metric-grid,.form-grid,.history-grid,.connector-monitor-grid,.dashboard-header-side,.connector-control-grid,.station-shared-control-grid{grid-template-columns:1fr}.card,.hero-copy,.hero-panel,.stat-tile{border-radius:16px}.card-header,.action-panel,.station-monitor-toolbar,.station-monitor-meta,.connector-monitor-top,.connector-action-row,.station-card-top,.station-card-meta,.history-card-top,.command-row{flex-direction:column;align-items:flex-start}.primary-button,.danger-button{width:100%}}
