:root{color:#13231d;background:#eef8f3;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--background: oklch(97% .012 165);--foreground: oklch(24% .025 170);--surface: oklch(99% .006 165);--card: oklch(99.5% .004 165);--muted: oklch(94% .012 165);--muted-foreground: oklch(46% .025 170);--border: oklch(88% .018 165);--primary: oklch(27% .035 170);--primary-foreground: oklch(98% .01 165);--accent: oklch(76% .115 155);--accent-soft: oklch(92% .045 155);--accent-foreground: oklch(22% .035 170);--danger: oklch(55% .18 25);--radius: 8px;--shadow: 0 18px 45px rgb(20 45 38 / .09)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--background)}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid oklch(76% .115 155 / .35);outline-offset:2px}h1,h2,h3,p{margin:0}.ui-input{width:100%;border:1px solid var(--border);border-radius:var(--radius);background:var(--card);color:var(--foreground);padding:10px 12px;outline:none;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.ui-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #71c7912e}.ui-button{border:0;border-radius:var(--radius);font-weight:800;min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform .15s ease,opacity .15s ease,background .15s ease}.ui-button:hover:not(:disabled){transform:translateY(-1px)}.ui-button:disabled{opacity:.58;cursor:not-allowed}.ui-button-primary{background:var(--primary);color:var(--primary-foreground);padding:0 18px}.ui-button-soft{width:100%;background:var(--accent-soft);color:var(--accent-foreground);padding:0 14px}.ui-button-outline{border:1px solid var(--border);background:var(--card);color:var(--foreground);min-height:34px;padding:0 12px;font-size:13px}.eyebrow{color:var(--muted-foreground);font-size:12px;font-weight:900;text-transform:uppercase}.alert{border-radius:var(--radius);padding:10px 12px;font-size:13px;line-height:1.4}.alert-danger{border:1px solid oklch(55% .18 25 / .24);background:#ffedea;background:oklch(96% .025 25);color:var(--danger)}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(180deg,var(--surface),var(--background))}.auth-card{width:min(100%,408px);border:1px solid var(--border);border-radius:10px;background:var(--surface);padding:28px;box-shadow:var(--shadow)}.auth-card__header{display:flex;align-items:center;gap:14px;margin-bottom:24px}.auth-card h1{margin-top:2px;font-size:24px;line-height:1.15}.auth-mark,.brand-mark,.message-avatar,.starter-mark{border-radius:var(--radius);display:grid;place-items:center}.auth-mark{width:44px;height:44px;background:var(--primary);color:var(--primary-foreground)}.auth-form{display:grid;gap:9px}.auth-form label{color:var(--foreground);font-size:13px;font-weight:800}.auth-form .ui-button{margin-top:6px;width:100%}.app-shell{min-height:100vh;display:grid;grid-template-columns:284px minmax(0,1fr);background:var(--background)}.sidebar{background:#0e271f;color:var(--primary-foreground);padding:18px;display:flex;flex-direction:column;gap:12px;min-width:0;overflow-y:auto}.brand-block{display:flex;align-items:center;gap:11px;margin-bottom:4px}.brand-mark{width:38px;height:38px;background:var(--accent-soft);color:var(--accent-foreground)}.brand-block h1{font-size:17px;letter-spacing:0}.brand-block p{color:#a8b9b2;font-size:12px}.panel{border:1px solid oklch(92% .02 165 / .14);border-radius:var(--radius);padding:12px;background:#f3fbf70c}.panel-title{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:900;margin-bottom:10px}.logged-box{display:grid;gap:9px}.logged-box p{color:var(--primary-foreground);font-size:14px;overflow-wrap:anywhere}.role-badge{width:fit-content;border-radius:999px;background:#ceeed81f;color:#b9e4c6;padding:5px 9px;font-size:12px;font-weight:900}.safe-list{display:grid;gap:8px;margin:0;padding:0;list-style:none;color:#c5d5cf;font-size:13px}.safe-list li{display:flex;align-items:center;gap:8px}.usage-panel p{color:#bfcfc8;font-size:13px;line-height:1.45}.chat-area{display:grid;grid-template-rows:auto 1fr auto auto;min-width:0;height:100vh;background:var(--surface)}.chat-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 32px;border-bottom:1px solid var(--border);background:var(--card)}.chat-header h2{font-size:19px;line-height:1.2;letter-spacing:0}.status-pill{border:1px solid var(--border);background:var(--muted);color:var(--foreground);border-radius:999px;padding:7px 11px;font-size:12px;font-weight:900;display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.messages{overflow-y:auto;padding:28px 32px 22px;display:flex;flex-direction:column;align-items:center;gap:18px;background:linear-gradient(180deg,var(--surface),var(--background))}.starter-panel{width:min(100%,860px);margin:auto 0 4px;display:grid;gap:18px}.starter-intro{display:flex;align-items:flex-start;gap:13px}.starter-mark{width:44px;height:44px;flex:0 0 auto;background:var(--primary);color:var(--primary-foreground)}.starter-intro h3{font-size:22px;line-height:1.2;color:var(--foreground)}.starter-intro p{margin-top:6px;color:var(--muted-foreground);line-height:1.45}.starter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.starter-grid button{text-align:left;border:1px solid var(--border);background:var(--card);border-radius:var(--radius);padding:12px;display:grid;gap:5px;color:var(--foreground);transition:transform .15s ease,border-color .15s ease,background .15s ease}.starter-grid button:hover{transform:translateY(-1px);border-color:var(--accent);background:var(--accent-soft)}.starter-grid strong{font-size:13px}.starter-grid span{color:var(--muted-foreground);font-size:13px;line-height:1.35}.starter-hints,.filter-hints{display:flex;flex-wrap:wrap;gap:7px}.starter-hints button,.filter-hints button{min-width:0;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--foreground);padding:7px 10px;font-size:12px;font-weight:800;transition:background .15s ease,transform .15s ease,border-color .15s ease}.starter-hints button:hover,.filter-hints button:hover{transform:translateY(-1px);border-color:var(--accent);background:var(--accent-soft)}.message{width:min(100%,920px);display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px}.message.user{justify-content:end;grid-template-columns:minmax(0,680px) 48px}.message.user .message-avatar{order:2}.message.user .message-body{order:1;background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}.message-avatar{width:40px;height:40px;background:var(--accent-soft);color:var(--accent-foreground);font-size:12px;font-weight:900}.message-body{border:1px solid var(--border);background:var(--card);border-radius:var(--radius);padding:15px 16px;line-height:1.55;box-shadow:0 8px 24px #142d260b;overflow-wrap:anywhere}.message.is-error .message-body{border-color:#c5363747;background:#ffedea;background:oklch(96% .025 25)}.chips,.sources{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.chips span,.sources span{display:inline-flex;align-items:center;gap:5px;border-radius:999px;background:var(--muted);color:var(--foreground);padding:5px 9px;font-size:12px;font-weight:800}.warning-chips span{background:#ffe7c8;background:oklch(94% .055 75);color:#613700;color:oklch(38% .09 65)}.sources strong{width:100%;font-size:12px;color:var(--muted-foreground);display:inline-flex;align-items:center;gap:5px}.message-body small{display:block;margin-top:11px;color:var(--muted-foreground)}.message.user .message-body small,.message.user .chips span,.message.user .sources strong{color:#d4e2db}.report-panel{margin-top:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--background);overflow:hidden}.report-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px;background:var(--card);border-bottom:1px solid var(--border)}.report-kicker{color:var(--muted-foreground);display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:900;text-transform:uppercase}.report-head h3{margin:3px 0 0;color:var(--foreground);font-size:16px}.report-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.sample-badge{border-radius:999px;background:#ffe7c8;background:oklch(94% .055 75);color:#613700;color:oklch(38% .09 65);padding:5px 9px;font-size:12px;font-weight:900}.report-table-wrap{overflow-x:auto}.report-table{width:100%;min-width:620px;border-collapse:collapse;font-size:13px}.report-table th,.report-table td{padding:10px 12px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.report-table th{background:var(--muted);color:var(--foreground);font-size:12px;font-weight:900;white-space:nowrap}.report-table td{color:var(--foreground)}.report-footer{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:10px 14px;color:var(--muted-foreground);font-size:12px;font-weight:800}.report-disclaimer{padding:0 14px 12px;color:var(--muted-foreground);font-size:12px}.loading-line{display:flex;align-items:center;gap:8px;color:var(--muted-foreground)}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-bar{margin:0 32px 12px;border-radius:var(--radius);padding:11px 13px;background:#ffedea;background:oklch(96% .025 25);color:var(--danger);border:1px solid oklch(55% .18 25 / .24);font-weight:800}.composer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:7px 14px;padding:12px 32px 18px;background:var(--card);border-top:1px solid var(--border);box-shadow:0 -10px 24px #142d260a}.filter-drawer{grid-column:1 / -1;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.filter-drawer summary{list-style:none;display:inline-flex;align-items:center;gap:7px;padding:8px 10px;color:var(--muted-foreground);font-size:12px;font-weight:900;text-transform:uppercase;cursor:pointer}.filter-drawer summary::-webkit-details-marker{display:none}.filters-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 10px 10px}.filters-row label{display:grid;gap:7px;color:var(--muted-foreground);font-size:12px;font-weight:900}.filter-hints{padding:0 10px 10px}.composer textarea{resize:none;min-height:84px;font-size:15px}.composer-actions .ui-button{min-width:130px;min-height:46px}.composer-field{display:contents}.composer-field label{display:inline-flex;align-items:center;gap:6px;color:var(--muted-foreground);font-size:12px;font-weight:900;text-transform:uppercase}.composer-help{color:var(--muted-foreground);font-size:12px}.composer-field label{grid-column:1;grid-row:2}.composer-field textarea{grid-column:1;grid-row:3}.composer-help{grid-column:1;grid-row:4}.composer-actions{grid-column:2;grid-row:3;display:flex;align-items:flex-end;align-self:end}@media(max-width:900px){.app-shell{display:flex;flex-direction:column}.chat-area{order:1;height:auto;min-height:100vh}.sidebar{order:2;min-height:auto;max-height:none}.chat-header{padding:14px 18px}.messages{padding:20px 18px}.starter-panel{margin:0}.starter-grid,.filters-row{grid-template-columns:1fr}.composer{grid-template-columns:1fr;gap:10px;padding:12px 18px 16px}.composer-field{display:grid;gap:7px;min-width:0}.composer-field label,.composer-field textarea,.composer-help,.composer-actions{grid-column:auto;grid-row:auto}.composer-actions,.composer-actions .ui-button{width:100%}.message,.message.user{grid-template-columns:40px minmax(0,1fr);justify-content:start}.message.user .message-avatar,.message.user .message-body{order:0}.report-head{flex-direction:column}.report-actions{justify-content:flex-start}}@media(max-width:560px){.chat-header h2{font-size:18px}.status-pill,.eyebrow{display:none}.starter-intro{gap:10px}.starter-intro h3{font-size:19px}.starter-mark{width:38px;height:38px}.message,.message.user{grid-template-columns:1fr}.message-avatar{display:none}.report-table{min-width:560px}}
