:root{--space-1: 8px;--space-2: 16px;--space-3: 24px;--space-4: 32px;--space-5: 40px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--color-bg: #eef3f9;--color-bg-tint: #f7faff;--color-surface: #ffffff;--color-border: #d9e2ee;--color-border-soft: #e4ebf4;--color-shadow-soft: rgba(15, 23, 42, .05);--color-shadow-card: rgba(15, 23, 42, .08);--color-shadow-strong: rgba(15, 23, 42, .14);--color-text: #18212f;--color-muted: #5a6a7f;--color-accent: #2563eb;--color-accent-strong: #1d4ed8;--color-accent-soft: #eaf2ff;--color-accent-ring: rgba(37, 99, 235, .25);--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.25rem;--font-size-xl: 1.75rem;--font-size-2xl: 2rem}*{box-sizing:border-box}body{margin:0;background:linear-gradient(180deg,var(--color-bg) 0%,var(--color-bg-tint) 100%);color:var(--color-text);font-family:Avenir Next,Segoe UI,Helvetica Neue,sans-serif;font-size:var(--font-size-md);line-height:1.5}.page{max-width:1120px;margin:0 auto;padding:var(--space-4) var(--space-3)}.auth-page{max-width:420px}.app-title{margin:0;font-size:var(--font-size-2xl);font-weight:750;letter-spacing:-.02em}.card{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);box-shadow:0 4px 14px var(--color-shadow-soft);padding:var(--space-3)}.section-title{margin:0;font-size:var(--font-size-lg);font-weight:700;letter-spacing:-.01em}.field-label{font-size:var(--font-size-sm);color:var(--color-muted);font-weight:700;letter-spacing:.01em}.meta-text,.muted-text{color:var(--color-muted);font-size:var(--font-size-sm)}.error-message{margin:0;color:#b42318;font-size:var(--font-size-sm)}input,textarea,select,button{font:inherit}input,textarea,select{width:100%;border:1px solid #c8d4e4;border-radius:var(--radius-sm);background:#fff;color:var(--color-text);padding:10px 12px;transition:border-color .12s ease,box-shadow .12s ease,background-color .12s ease}textarea{resize:vertical;min-height:104px}input:focus-visible,textarea:focus-visible,select:focus-visible,button:focus-visible{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-ring)}.btn,button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #cad6e5;border-radius:var(--radius-sm);background:#fff;color:var(--color-text);padding:9px 14px;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,color .12s ease,box-shadow .12s ease}.btn:hover,button:hover{background:#f7fafe;border-color:#b8c8dc}.btn:disabled,button:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--color-accent);border-color:var(--color-accent);color:#fff;font-weight:700;min-width:112px}.btn-primary:hover{background:var(--color-accent-strong);border-color:var(--color-accent-strong);box-shadow:0 6px 14px #2563eb40}.btn-primary:disabled{background:#93b4ef;border-color:#93b4ef;box-shadow:none}.btn-ghost{background:transparent;border-color:#cfd9e7;color:var(--color-text)}.workspace-page{display:flex;flex-direction:column;gap:var(--space-3)}.workspace-header{display:grid;grid-template-columns:1fr auto;grid-template-areas:"brand logout" "subtitle user" "tabs tabs";align-items:center;column-gap:var(--space-2);row-gap:var(--space-2);padding-bottom:var(--space-2)}.app-subtitle{grid-area:subtitle;margin:0;color:var(--color-muted);font-size:.95rem}.brand-title{grid-area:brand;margin:0;font-size:var(--font-size-xl);font-weight:700}.header-logout{grid-area:logout;justify-self:end}.header-user{grid-area:user;margin:0;justify-self:end}.tab-pills{grid-area:tabs;display:flex;gap:var(--space-1);border-bottom:1px solid var(--color-border);padding:4px 0}.tab-btn{border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--color-muted);padding:9px 14px;font-weight:600}.tab-btn:hover{background:#eef3fb;color:var(--color-text)}.tab-btn.active{border-color:var(--color-border);color:var(--color-text);background:#fff;font-weight:700;box-shadow:0 2px 6px var(--color-shadow-soft)}.workspace-section{display:flex;flex-direction:column;gap:var(--space-3)}.selector-grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:var(--space-2);padding:var(--space-2);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);background:#f8fbff}.selector-card{display:flex;flex-direction:column;gap:var(--space-1);border-color:var(--color-border);box-shadow:0 2px 8px var(--color-shadow-soft);padding:var(--space-2)}.chat-panel{display:flex;flex-direction:column;gap:var(--space-3);min-height:420px;border-color:#cfdbec;box-shadow:0 10px 24px var(--color-shadow-strong);padding:var(--space-3)}.transcript-panel{flex:1;border:1px solid #dde7f3;border-radius:var(--radius-sm);background:#f7fbff;padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.transcript-item{border:1px solid #e2eaf5;border-radius:var(--radius-sm);background:#fff;padding:var(--space-2)}.message-text{white-space:pre-wrap}.chat-input-area{display:flex;flex-direction:column;gap:var(--space-2);border-top:1px solid var(--color-border-soft);padding-top:var(--space-3)}.chat-input-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.history-card{display:flex;flex-direction:column;gap:var(--space-2)}.history-item{border:1px solid #e0e8f2;border-radius:var(--radius-sm);background:#fcfdff;padding:var(--space-2);display:flex;flex-direction:column;gap:var(--space-1)}.history-meta-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);border-bottom:1px solid #e9eff6;padding-bottom:var(--space-1)}.history-body{display:flex;flex-direction:column;gap:6px}.history-subhead{margin:0;font-size:var(--font-size-sm);color:#334155;font-weight:700}.pager-row{margin-top:var(--space-1);display:flex;align-items:center;gap:var(--space-1)}.help-section{max-width:72ch}.help-card p{margin:0}.form-card{display:flex;flex-direction:column;gap:var(--space-2)}@media(max-width:900px){.page{padding:var(--space-3) var(--space-2)}.workspace-header{grid-template-columns:1fr;grid-template-areas:"brand" "subtitle" "user" "logout" "tabs"}.header-user,.header-logout{justify-self:start}.selector-grid{grid-template-columns:1fr;padding:var(--space-2)}.history-meta-row{flex-direction:column;align-items:flex-start;gap:var(--space-1)}.chat-input-footer{flex-direction:column;align-items:flex-start}.chat-panel,.transcript-panel{padding:var(--space-2)}}
