:root{--bg: #efece7;--panel: #fbf9f5;--card: #ffffff;--muted-bg: #e6e1d9;--border: #cfcac2;--border-soft: #e3dfd8;--text: #2b2725;--muted: #7a746d;--accent: #7e1f2c;--accent-soft: #f2e9ea;--accent-bg: #fdf7f7;--radius-sm: 6px;--radius-md: 10px;--font: system-ui, -apple-system, "Segoe UI", sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font);color:var(--text);background:var(--bg);font-size:14px}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;cursor:pointer}.shell{display:flex;flex-direction:column;height:100%}.topbar{height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;background:var(--panel);border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:10px}.brand .dot{width:26px;height:26px;border-radius:50%;background:var(--accent)}.brand .name{font-size:17px;font-weight:700;letter-spacing:.2px}.brand .sub{font-size:12px;color:var(--muted);margin-left:2px}.nav{display:flex;gap:6px;margin-left:24px}.chip{padding:6px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:transparent;color:var(--text);font-size:13px}.chip.active{background:var(--text);color:var(--panel);border-color:var(--text)}.right{display:flex;align-items:center;gap:14px}.toggle{display:flex;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;font-size:12px}.toggle button{padding:5px 10px;border:0;background:transparent;color:var(--muted)}.toggle button.on{background:var(--text);color:var(--panel)}.holds-pill{display:flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;border:1px solid var(--accent);color:var(--accent);font-size:13px;background:transparent}.holds-pill .dot{width:8px;height:8px;border-radius:50%;background:var(--accent)}.avatar{width:32px;height:32px;border-radius:50%;background:var(--border);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;border:0}.body{flex:1;min-height:0;padding:14px 16px 16px}.triptych{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;height:100%}.conversation{display:grid;grid-template-columns:220px minmax(0,1fr) 440px;gap:16px;height:100%}@media(max-width:1100px){.triptych,.conversation{display:flex;flex-direction:column;height:auto}.conversation .rail{order:3}}.pane{display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;min-height:0}.pane-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--border-soft);font-size:14px;font-weight:600}.pane-head .sub{font-weight:400;color:var(--muted);font-size:12px}.pane-body{flex:1;min-height:0;overflow:auto;padding:14px;display:flex;flex-direction:column;gap:12px}.msg-user{align-self:flex-end;max-width:86%;padding:10px 12px;border-radius:var(--radius-md);background:var(--muted-bg);line-height:1.45;white-space:pre-wrap}.msg-ai{max-width:94%;padding:12px 14px;border-radius:var(--radius-md);border:1px solid var(--border-soft);background:var(--card);line-height:1.5;white-space:pre-wrap}.msg-ai .basis{margin-top:8px;font-size:11px;color:var(--muted)}.viewchips{display:flex;gap:6px;flex-wrap:wrap}.viewchip{padding:4px 10px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:11px;border:0}.quick{display:flex;gap:6px;flex-wrap:wrap}.quick button{padding:5px 10px;border-radius:999px;border:1px solid var(--border);background:transparent;font-size:12px}.composer{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card)}.composer input{flex:1;border:0;outline:0;font:inherit;background:transparent}.composer button{width:30px;height:30px;border-radius:var(--radius-sm);border:0;background:var(--accent);color:#fff}.composer button:disabled{opacity:.5;cursor:default}.ticker{font-size:11px;color:var(--muted)}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.kpi{padding:10px;border-radius:var(--radius-sm);border:1px solid var(--border-soft);background:var(--card)}.kpi .l{font-size:11px;color:var(--muted)}.kpi .v{font-size:20px;font-weight:600}.kpi .d{font-size:11px;color:var(--muted)}.kpi .d.up{color:var(--accent)}.section-title{font-size:12px;color:var(--muted)}.bar-row{display:flex;align-items:center;gap:10px;font-size:12px}.bar-row .lbl{width:84px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-row .track{flex:1;height:14px;background:var(--muted-bg);border-radius:3px}.bar-row .fill{height:14px;background:var(--muted);border-radius:3px}.bar-row .fill.top{background:var(--accent)}.bar-row .n{width:40px;text-align:right}.days{display:flex;align-items:flex-end;gap:6px;height:90px;border-bottom:1px solid var(--border);padding:0 2px}.days div{flex:1;background:var(--border);border-radius:3px 3px 0 0}.days div.peak{background:var(--accent)}.funnel{display:flex;gap:6px;font-size:12px}.funnel div{flex:1;padding:6px;background:var(--muted-bg);border-radius:4px;text-align:center}.dashed{padding:10px;border-radius:var(--radius-sm);border:1px dashed var(--border);display:flex;flex-direction:column;gap:6px}.holds{display:flex;flex-direction:column;gap:6px;padding:10px;border-radius:var(--radius-sm);border:1px solid var(--accent);background:var(--accent-bg);font-size:12px}.holds .t{display:flex;justify-content:space-between;font-weight:600;color:var(--accent)}.hold{display:flex;align-items:center;justify-content:space-between;gap:8px}.hold .desc{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hold .actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.hold .when{color:var(--muted)}.hold button{padding:3px 8px;border-radius:4px;border:1px solid var(--accent);color:var(--accent);background:transparent;font-size:12px}.hold button.secondary{border-color:var(--border);color:var(--text)}.stages{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;font-size:11px;text-align:center}.stage{padding:8px 4px;border-radius:var(--radius-sm);background:var(--muted-bg)}.stage .v{font-size:16px;font-weight:600}.table{display:flex;flex-direction:column;border:1px solid var(--border-soft);border-radius:var(--radius-sm);overflow:hidden;font-size:12px}.row{display:grid;grid-template-columns:1.4fr 1.6fr .8fr 1fr;gap:8px;padding:8px 10px;border-top:1px solid var(--border-soft)}.row.head{background:#f1eee8;color:var(--muted);border-top:0}.row div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rail{display:flex;flex-direction:column;gap:6px;padding:16px 12px;background:#f4f1ec;border-right:1px solid var(--border);border-radius:var(--radius-md)}.rail .item{padding:8px 10px;border-radius:var(--radius-sm);font-size:13px;border:0;background:transparent;text-align:left;color:var(--text)}.rail .item.on{background:var(--text);color:var(--panel)}.rail .spacer{flex:1}.rail .ticker{padding:10px;display:flex;flex-direction:column;gap:4px}.tabs{display:flex;gap:6px;font-size:12px}.tabs button{padding:5px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:transparent}.tabs button.on{background:var(--text);color:var(--panel);border-color:var(--text)}.rightcol{display:flex;flex-direction:column;gap:12px;min-height:0}.empty{color:var(--muted);font-size:12px}.error{color:var(--accent);font-size:12px}
