:root{color-scheme:dark;--bg-top: #1f130e;--bg-bottom: #070707;--surface: rgba(14, 14, 14, .92);--surface-alt: rgba(30, 20, 15, .92);--surface-soft: rgba(255, 255, 255, .04);--border: rgba(255, 255, 255, .1);--text-main: #fff7ed;--text-muted: rgba(255, 247, 237, .72);--accent: #f97316;--accent-strong: #ea580c;--safe: #15803d;--risk: #b91c1c;--checking: #475569;--shadow: 0 24px 70px rgba(0, 0, 0, .38);--font-ui: "Avenir Next", "Avenir", "Trebuchet MS", "Segoe UI", sans-serif;--font-display: "Avenir Next Condensed", "Arial Narrow", "Avenir Next", sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:var(--font-ui);color:var(--text-main);background:radial-gradient(circle at top,rgba(249,115,22,.2),transparent 38%),linear-gradient(180deg,var(--bg-top),var(--bg-bottom))}button,input,textarea{font:inherit}button{cursor:pointer}.page-shell{width:min(100%,92rem);margin:0 auto;padding:calc(env(safe-area-inset-top,0px) + 1rem) 1rem calc(env(safe-area-inset-bottom,0px) + 1.25rem)}.network-banner{padding:1rem 1.1rem;border-radius:1.5rem;border:1px solid rgba(255,255,255,.12);box-shadow:var(--shadow)}.network-banner.mode-online{background:linear-gradient(135deg,var(--risk),#7f1d1d)}.network-banner.mode-offline{background:linear-gradient(135deg,var(--safe),#14532d)}.network-banner.mode-checking{background:linear-gradient(135deg,var(--checking),#1e293b)}.banner-label,.banner-value,.banner-copy{margin:0}.banner-label{text-transform:uppercase;font-size:.72rem;letter-spacing:.18em;opacity:.76}.banner-value{margin-top:.28rem;font-family:var(--font-display);font-size:clamp(1.5rem,6vw,2.25rem);font-weight:700}.banner-copy{margin-top:.18rem;max-width:60ch;font-size:.95rem;opacity:.94}.app-frame{margin-top:1rem;display:grid;gap:1rem}.panel{background:linear-gradient(180deg,var(--surface-alt),var(--surface));border:1px solid var(--border);border-radius:1.75rem;box-shadow:var(--shadow);padding:1rem;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.hero-panel h1{margin:.3rem 0 0;font-family:var(--font-display);font-size:clamp(2.2rem,7vw,4rem);line-height:.92}.eyebrow{margin:0;color:#fdba74;text-transform:uppercase;letter-spacing:.2em;font-size:.72rem}.hero-copy,.support-copy{margin:.6rem 0 0;color:var(--text-muted);line-height:1.45}.summary-grid{display:grid;gap:.8rem}.summary-card{padding:.95rem;border-radius:1.25rem;background:var(--surface-soft);border:1px solid var(--border)}.summary-card strong{display:block;margin-top:.25rem;font-size:1.2rem}.summary-card small,.summary-label{color:var(--text-muted)}.panel-head{display:flex;align-items:start;justify-content:space-between;gap:.8rem}.panel-head h2,.settings-block h3{margin:0}.lane-list,.settings-block{margin-top:.9rem;display:grid;gap:.75rem}.lane-card{display:flex;justify-content:space-between;gap:1rem;padding:.95rem;border-radius:1.2rem;border:1px solid var(--border);background:var(--surface-soft)}.lane-card.status-ready{border-color:#15803d73}.lane-card.status-installing{border-color:#f9731673}.lane-card.status-installed,.lane-card.status-checking{border-color:#fbbf2473}.lane-card.status-error{border-color:#b91c1c73}.lane-title,.lane-meta{margin:0}.lane-copy{min-width:0}.lane-title{font-weight:700}.lane-meta,.lane-progress small{color:var(--text-muted)}.lane-error{margin:.45rem 0 0;color:#fca5a5;line-height:1.4}.lane-check{margin:.45rem 0 0;color:var(--text-muted);line-height:1.4}.lane-check strong{color:var(--text-main)}.lane-progress{display:grid;justify-items:end;gap:.45rem;text-align:right}.lane-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.55rem}.action-row{display:flex;flex-wrap:wrap;gap:.65rem}.action-row.compact{justify-content:flex-end}.button-primary,.button-secondary,.thread-pill,.link-button{border-radius:999px;border:1px solid transparent;min-height:2.9rem;padding:.75rem 1rem}.button-primary{background:linear-gradient(180deg,var(--accent),var(--accent-strong));color:#fff7ed}.button-secondary,.thread-pill{background:#ffffff0f;border-color:var(--border);color:var(--text-main)}.link-button{background:transparent;color:#fdba74;border-color:#fdba7440}.conversation-shell,.conversation-panel{display:grid;gap:1rem}.thread-strip{display:flex;gap:.7rem;overflow-x:auto;padding-bottom:.25rem}.thread-pill{min-width:12rem;display:flex;flex-direction:column;align-items:start;gap:.2rem}.thread-pill small{color:var(--text-muted)}.thread-pill.is-active{border-color:#f973168c;background:#f9731626}.transcript-banner{display:flex;justify-content:space-between;gap:.8rem;padding:.95rem;border-radius:1.25rem;background:var(--surface-soft);border:1px solid var(--border)}.transcript-banner strong{display:block;margin-top:.2rem}.message-list{display:grid;gap:.75rem;min-height:18rem}.message-bubble{width:min(100%,40rem);padding:.95rem 1rem;border-radius:1.35rem;border:1px solid var(--border);background:#ffffff0a}.message-bubble.role-user{margin-left:auto;background:#f9731621}.message-bubble.role-assistant{background:#15803d24}.message-bubble.draft{border-style:dashed}.message-role{display:inline-block;text-transform:uppercase;letter-spacing:.14em;color:var(--text-muted);font-size:.72rem}.message-bubble p{margin:.4rem 0 0;line-height:1.55}.composer{display:grid;gap:.8rem}.composer textarea,.stacked-field input{width:100%;border:1px solid var(--border);border-radius:1.1rem;padding:.9rem 1rem;background:#ffffff0d;color:var(--text-main)}.composer textarea{min-height:9rem;resize:vertical}.stacked-field{display:grid;gap:.4rem}.diagnostic-grid{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.diagnostic-grid dt{color:var(--text-muted);font-size:.8rem}.diagnostic-grid dd{margin:.15rem 0 0;font-weight:700;overflow-wrap:anywhere}.app-footer{display:flex;flex-wrap:wrap;gap:.9rem;justify-content:center;padding:1rem 0 .4rem;color:var(--text-muted)}.app-footer a{color:#fdba74}@media (min-width: 70rem){.app-frame{grid-template-columns:minmax(22rem,28rem) minmax(0,1fr);align-items:start}.conversation-shell{grid-template-columns:minmax(0,1fr) 24rem}.summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 39rem){.lane-card{flex-direction:column}.lane-progress{justify-items:start;text-align:left}.lane-actions{justify-content:flex-start}}
