:root{color:#182026;background:#f4f5f2;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button{color:#fff;cursor:pointer;background:#1f2a32;border:1px solid #28343d;min-height:38px;padding:0 14px}button:disabled{cursor:not-allowed;opacity:.55}.login-shell{place-items:center;min-height:100vh;padding:20px;display:grid}.login-panel{background:#fff;border:1px solid #d8ddd7;border-radius:8px;width:min(420px,100%);padding:24px}.login-panel h1{letter-spacing:0;margin:0 0 8px;font-size:22px}.login-panel p{color:#667277;margin:0 0 18px}.auth-mode-tabs{background:#f4f5f2;border:1px solid #d8ddd7;border-radius:8px;grid-template-columns:1fr 1fr;gap:4px;margin:16px 0 14px;padding:4px;display:grid}.auth-mode-tabs button{color:#28343d;background:0 0;border:0;border-radius:6px;min-height:34px}.auth-mode-tabs button.active{color:#fff;background:#1f2a32}.login-form{gap:10px;display:grid}.login-form label{color:#667277;font-size:12px}.login-form input{border:1px solid #cfd6d1;border-radius:6px;width:100%;padding:10px}.dev-code{color:#65480d;background:#fbf4df;border:1px solid #dfd3af;border-radius:6px;padding:9px 10px;font-weight:700}.app-shell{grid-template-columns:280px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#f9faf7;background:#253038;flex-direction:column;justify-content:space-between;padding:24px;display:flex}.sidebar h1{letter-spacing:0;margin:0 0 12px;font-size:22px}.sidebar p{color:#cad4d8;overflow-wrap:anywhere}.sidebar-actions{gap:10px;display:grid}.secondary-button{color:#253038;background:#fff;border-color:#cad4d8}.workspace{grid-template-columns:minmax(0,1fr) 360px;gap:16px;min-width:0;padding:16px;display:grid}.panel{background:#fff;border:1px solid #d8ddd7;border-radius:8px;min-width:0}.panel-header{border-bottom:1px solid #e4e7e2;justify-content:space-between;align-items:center;gap:12px;min-height:56px;padding:14px 16px;display:flex}.panel-header h2{margin:0;font-size:16px}.chat-panel{grid-template-rows:auto minmax(320px,1fr) auto auto;max-height:calc(100vh - 32px);display:grid}.message-list{padding:16px;overflow:auto}.empty-state{color:#6d767b;margin:0}.message{border-bottom:1px solid #ecefeb;padding:12px 0}.message span{color:#667277;text-transform:uppercase;font-size:12px;display:block}.message p{white-space:pre-wrap;margin:6px 0 0}.message-assistant p{color:#163b36}.artifact-card{background:#fbfcfa;border:1px solid #d8ddd7;border-radius:8px;margin:12px 0;padding:12px}.artifact-card-header{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px;display:flex}.artifact-card-header h3{margin:0;font-size:15px}.artifact-card-header span,.artifact-path{color:#667277;overflow-wrap:anywhere;font-size:12px}.artifact-chart{width:100%;min-height:260px;overflow:auto}.artifact-card p{color:#28343d;margin:10px 0 6px}.composer{border-top:1px solid #e4e7e2;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:12px;display:grid}.composer textarea,.field-row input{resize:vertical;border:1px solid #cfd6d1;border-radius:6px;width:100%;padding:10px}.field-row{gap:6px;padding:14px 16px;display:grid}.field-row label{color:#667277;font-size:12px}.run-status{color:#28343d;background:#ecefeb;border-radius:6px;margin:0 16px 12px;padding:8px 10px;font-weight:600}.run-status.compact{align-items:center;min-height:28px;margin:0;padding:4px 8px;font-size:12px;display:inline-flex}.status-succeeded,.status-ready{color:#14502c;background:#d7eadf}.status-processing,.status-uploaded{color:#16466b;background:#e2edf8}.status-upload_pending{color:#65480d;background:#f3ead5}.status-failed,.error{color:#7a2020;background:#f8dddd}.error{border-radius:6px;margin:12px;padding:10px}.event-list{margin:0;padding:0 16px 16px;list-style:none}.event-list li{border-top:1px solid #ecefeb;grid-template-columns:42px 70px minmax(0,1fr);gap:8px;padding:10px 0;display:grid}.event-list p{overflow-wrap:anywhere;margin:0}.modal-backdrop{z-index:20;background:#18202694;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border:1px solid #d8ddd7;border-radius:8px;width:min(760px,100%);max-height:min(760px,100vh - 40px);overflow:auto;box-shadow:0 24px 80px #18202647}.upload-form{border-bottom:1px solid #e4e7e2;grid-template-columns:minmax(0,1fr) auto;gap:10px 12px;padding:16px;display:grid}.upload-form label{color:#667277;grid-column:1/-1;font-size:12px}.upload-form input{border:1px solid #cfd6d1;border-radius:6px;width:100%;min-height:38px;padding:7px 10px}.dataset-list-header{justify-content:space-between;align-items:center;gap:12px;min-height:52px;padding:12px 16px;display:flex}.dataset-list-header h3{margin:0;font-size:15px}.dataset-list{padding:0 16px 16px}.dataset-row{border-top:1px solid #ecefeb;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:58px;padding:10px 0;display:grid}.dataset-row div{gap:4px;min-width:0;display:grid}.dataset-row div:last-child{justify-items:end}.dataset-row strong,.dataset-row span{overflow-wrap:anywhere}.dataset-row span{color:#667277;font-size:12px}@media (width<=900px){.app-shell{grid-template-columns:1fr}.sidebar{gap:16px;min-height:auto}.workspace{grid-template-columns:1fr}.chat-panel{max-height:none}.upload-form,.dataset-row{grid-template-columns:1fr}.dataset-row div:last-child{justify-items:start}}
