:root{font-family:Aptos,Segoe UI,sans-serif;color:#1f1f1f;background:#f5f5f5;font-synthesis:none;text-rendering:geometricPrecision;--bg: #f5f5f5;--surface: #ffffff;--surface-2: #fafafa;--surface-3: #f3f2f1;--line: #edebe9;--line-strong: #c8c6c4;--text: #1f1f1f;--muted: #605e5c;--blue: #0078d4;--blue-2: #106ebe;--green: #107c10;--yellow: #ffb900;--red: #d13438;--shadow: 0 2px 8px rgba(0, 0, 0, .08);--sidebar-bg: #ffffff;--page-bg: radial-gradient(circle at top left, rgba(0, 120, 212, .08), transparent 34%), var(--bg);--brand-text: #201f1e;--input-bg: #ffffff;--table-head: #faf9f8;--pre-bg: #fafafa;--accent-soft: #eff6fc;--accent-border: #a7c9ec;--accent-text: #004578;--success-bg: #f1faf1;--success-border: #b7dfb8;--success-text: #0b5f0b;--error-bg: #fff1f1;--error-border: #f0b8ba;--error-text: #8a1f22}.app-shell[data-theme=dark]{--bg: #11100f;--surface: #1b1a19;--surface-2: #242322;--surface-3: #292827;--line: #3b3a39;--line-strong: #605e5c;--text: #f3f2f1;--muted: #c8c6c4;--blue: #60a5fa;--blue-2: #93c5fd;--green: #7ee787;--yellow: #facc15;--red: #f87171;--shadow: 0 2px 10px rgba(0, 0, 0, .28);--sidebar-bg: #1b1a19;--page-bg: radial-gradient(circle at top left, rgba(96, 165, 250, .16), transparent 34%), var(--bg);--brand-text: #f5f9ff;--input-bg: #0b1220;--table-head: #172033;--pre-bg: #0b1220;--accent-soft: #102a43;--accent-border: #315a86;--accent-text: #bfdbfe;--success-bg: #0d2a1a;--success-border: #23683b;--success-text: #a7f3b5;--error-bg: #3a1217;--error-border: #7f2630;--error-text: #fecdd3}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--bg)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible{outline:2px solid var(--blue-2);outline-offset:2px}.app-shell{display:grid;grid-template-columns:300px minmax(0,1fr);min-height:100vh;color:var(--text);background:var(--page-bg);transition:grid-template-columns .18s ease}.app-shell[data-sidebar=collapsed]{grid-template-columns:72px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;overflow:auto;border-right:1px solid var(--line);padding:18px;background:var(--sidebar-bg);transition:padding .18s ease}.app-shell[data-sidebar=collapsed] .sidebar{overflow:hidden;padding:14px 12px}.brand{display:flex;align-items:center;gap:12px;margin-bottom:18px}.app-shell[data-sidebar=collapsed] .brand{flex-direction:column;gap:10px}.brand-mark{display:grid;width:36px;height:36px;place-items:center;border-radius:8px;color:#fff;background:linear-gradient(135deg,#0078d4,#2b88d8);font-weight:800}.logo-button{border:0;padding:0;overflow:hidden;cursor:pointer}.logo-button.has-logo{background:var(--surface-2)}.logo-button img{width:100%;height:100%;object-fit:contain;padding:3px}.logo-file-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.brand strong,.brand span{display:block}.brand-text{min-width:0}.app-shell[data-sidebar=collapsed] .brand-text,.app-shell[data-sidebar=collapsed] .settings-card,.app-shell[data-sidebar=collapsed] .connection-card{display:none}.sidebar-toggle{flex:0 0 auto;margin-left:auto}.app-shell[data-sidebar=collapsed] .sidebar-toggle{margin-left:0}.brand strong{color:var(--brand-text);font-size:19px;line-height:1.1}.brand span,.topbar span,.panel-heading p,.metric-row,label,td span,.mini-card span,.ticket-card span{color:var(--muted)}.panel{border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.compact-panel{padding:13px;margin-bottom:14px}.panel-title,.panel-heading,.metric-row,.action-row,.confirmation-list div{display:flex;align-items:center}.panel-title{gap:8px;margin-bottom:14px;color:var(--brand-text)}h1,h2,h3,p{margin:0}h1{font-size:clamp(22px,2.4vw,30px);letter-spacing:0}h2{font-size:20px}h3{font-size:15px;margin-bottom:10px}label{display:grid;gap:7px;margin-bottom:12px;font-size:13px;font-weight:650}input,select,textarea{width:100%;min-height:38px;border:1px solid var(--line-strong);border-radius:7px;color:var(--text);background:var(--input-bg);outline:none;padding:9px 11px}textarea{resize:vertical;line-height:1.5}input:focus,select:focus,textarea:focus{border-color:var(--blue-2);box-shadow:0 0 0 3px #0078d41f}.checkbox-line{grid-template-columns:auto 1fr;align-items:center}.checkbox-line input{width:16px;height:16px;min-height:0;accent-color:var(--blue)}.two-col,.three-col,.four-col,.five-col{display:grid;gap:10px}.two-col{grid-template-columns:1fr 1fr}.three-col{grid-template-columns:repeat(3,minmax(0,1fr))}.four-col{grid-template-columns:repeat(4,minmax(0,1fr))}.five-col{grid-template-columns:repeat(5,minmax(0,1fr))}.model-grid{display:grid;gap:8px}.model-grid button,.stepper button,.secondary-button,.icon-button,.primary-button{border:1px solid var(--line-strong);border-radius:8px;color:var(--text);background:var(--input-bg)}.model-grid button{min-height:38px;text-align:left;padding:8px 10px;font-weight:750}.model-grid button.selected,.stepper button.active{border-color:var(--blue);color:var(--accent-text);background:var(--accent-soft)}.workspace{padding:22px 24px 28px;min-width:0;background:transparent}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;border:1px solid var(--line);border-radius:8px;padding:16px 18px;background:#ffffffc2;box-shadow:var(--shadow)}.app-shell[data-theme=dark] .topbar{background:#1b1a19d1}.topbar p{color:var(--blue);font-weight:800}.status-pill{display:inline-flex;align-items:center;gap:7px;min-width:82px;justify-content:center;border:1px solid var(--accent-border);border-radius:999px;padding:8px 13px;color:var(--accent-text);background:var(--accent-soft)}.stepper{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin:16px 0;border:1px solid var(--line);border-radius:8px;padding:4px;background:var(--surface);box-shadow:var(--shadow)}.stepper button{min-height:48px;justify-content:flex-start;gap:10px;border-color:transparent;padding:9px 12px;font-weight:800;background:transparent}.step-index{display:grid;width:26px;height:26px;place-items:center;flex:0 0 auto;border:1px solid var(--line-strong);border-radius:999px;color:var(--muted);background:var(--surface-2);font-size:12px}.stepper button.active .step-index{border-color:var(--blue);color:#fff;background:var(--blue)}.step-label{min-width:0}.content-stack{display:grid;gap:16px}.work-panel,.response-panel{min-width:0;overflow:hidden}.work-panel{padding:20px}.response-panel{display:block}.bottom-response-panel{box-shadow:0 1px 3px #0000000f}.response-details{display:grid}.response-summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;cursor:pointer;list-style:none}.response-summary::-webkit-details-marker{display:none}.response-summary:before{content:"+";display:grid;width:24px;height:24px;place-items:center;flex:0 0 auto;border:1px solid var(--line-strong);border-radius:999px;color:var(--accent-text);background:var(--accent-soft);font-weight:900}.response-details[open] .response-summary:before{content:"-"}.response-summary>div:first-of-type{flex:1}.summary-metrics{border-bottom:0;padding:0}.response-body{border-top:1px solid var(--line)}.response-actions{display:flex;justify-content:flex-end;padding:12px 14px 0}.panel-heading{justify-content:space-between;gap:12px;margin-bottom:14px}.panel-heading.slim{padding:14px 14px 0}.primary-button,.secondary-button,.icon-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:39px;padding:9px 14px;font-weight:800}.primary-button{border-color:transparent;color:#fff;background:#0078d4;box-shadow:0 1px 2px #00000029}.primary-button:hover{background:#106ebe}.primary-button:disabled{opacity:.7;cursor:wait}.secondary-button:disabled{opacity:.55;cursor:not-allowed}.secondary-button:hover:not(:disabled),.icon-button:hover,.stepper button:hover,.model-grid button:hover{border-color:var(--blue);color:var(--accent-text)}.icon-button{width:39px;padding:0}.input-layout,.result-stack{display:grid;gap:12px}.summary-band{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--accent-border);border-radius:8px;padding:13px;background:var(--accent-soft)}.ai-revision-panel{display:grid;gap:10px;border:1px solid var(--line);border-radius:8px;padding:13px;background:var(--surface-2)}.inline-title,.inline-title h3,.ai-revision-panel label{margin-bottom:0}.ai-revision-panel .secondary-button{justify-self:start}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:8px}table{width:100%;min-width:860px;border-collapse:collapse}th,td{border-bottom:1px solid var(--line);padding:12px;text-align:left;vertical-align:top;font-size:13px}th{color:var(--brand-text);background:var(--table-head)}td strong,td span{display:block}.list-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mini-card,.ticket-card,.confirmation-list{border:1px solid var(--line);border-radius:8px;background:var(--surface)}.mini-card{padding:12px;margin-bottom:8px}.mini-card strong,.mini-card span,.mini-card p{display:block;margin-bottom:5px}.action-row{flex-wrap:wrap;gap:10px}.ticket-list{display:grid;gap:10px}.ticket-card{display:grid;gap:10px;padding:12px}.ticket-card label{margin-bottom:0}.ticket-card-head,.output-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.output-actions{justify-content:flex-start;flex-wrap:wrap}.output-textarea{font-family:Consolas,Cascadia Mono,monospace;white-space:pre}.confirmation-list{padding:14px}.confirmation-list div{display:grid;grid-template-columns:auto 1fr auto;gap:8px;padding:10px 0;border-top:1px solid var(--line)}.confirmation-list div:first-of-type{border-top:0}.confirmation-list p{grid-column:2 / 4;color:var(--muted)}.metric-row{gap:8px;flex-wrap:wrap;padding:12px 14px;border-bottom:1px solid var(--line)}.metric-row span{border:1px solid var(--line);border-radius:999px;padding:5px 9px;background:var(--surface-2)}.error-box,.success-box{margin:12px 14px 0;border-radius:8px;padding:10px 12px;font-weight:700}.error-box{color:var(--error-text);background:var(--error-bg);border:1px solid var(--error-border)}.success-box{color:var(--success-text);background:var(--success-bg);border:1px solid var(--success-border)}pre{margin:0;padding:14px;overflow:auto;color:var(--text);font-size:12px;line-height:1.5;background:var(--pre-bg)}.connection-card .panel-title h2{font-size:24px}.test-button{margin-top:2px;min-width:82px}.connection-status{margin-top:12px;color:var(--muted);font-size:13px}.connection-help{margin:-3px 0 12px;color:var(--muted);font-size:12px;line-height:1.45}.connection-save-status{margin:-7px 0 12px 26px;color:var(--green);font-size:12px}.connection-status.success{color:#107c10}.connection-status.failed{color:#d13438}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:900px){.app-shell,.app-shell[data-sidebar=collapsed]{grid-template-columns:1fr}.sidebar{position:static;height:auto;border-right:0;border-bottom:1px solid var(--line)}.app-shell[data-sidebar=collapsed] .sidebar{height:auto}.response-panel{max-height:620px}}@media(max-width:760px){.workspace,.sidebar{padding:12px}.topbar,.panel-heading,.ticket-card-head,.output-actions{align-items:stretch;flex-direction:column}.stepper,.three-col,.four-col,.five-col,.list-grid,.two-col{grid-template-columns:1fr}}
