/* Locally served: no external font, script or analytics dependencies. */
/* One workspace card; tabs share the same space without stacking status below. */
/* Increase reading text by 2pt (2.667px), preserving the heading hierarchy. */
.config-tabs{display:flex;gap:6px;background:#eef3fc;padding:5px;border-radius:12px;margin-bottom:26px}.config-tabs button{flex:1;border:0;border-radius:9px;background:transparent;padding:12px 8px;font-weight:650;color:#536883}.config-tabs button[aria-selected=true]{background:#fff;color:#245ce8;box-shadow:0 2px 8px #1b375b12}#modelPanel .card-heading{margin-bottom:20px}#botMessage{margin-top:24px}#statusUpdate{margin-top:10px;min-height:22px}.swal2-popup{font-family:inherit}
:root{--ink:#172b4d;--muted:#5e708b;--green:#245ce8;--line:#dce5f2;--paper:#f4f7fc;--accent:#dbeafe;font-size:15px}
body{background:radial-gradient(ellipse at 10% 0%,#e8efff,transparent 55%),var(--paper);line-height:1.5}
.masthead{max-width:1200px;height:86px;padding:0 32px;border-bottom:1px solid #dce5f2}
.brand{font-weight:750;letter-spacing:-.6px}.brand-detail{font-size:14px}.mark{width:40px;height:40px;border-radius:13px;background:linear-gradient(140deg,#2563eb,#6048cb);color:#fff;font:750 24px system-ui;box-shadow:0 6px 14px #245ce825}
.private-label{padding:7px 12px;border:1px solid #d5e3f7;border-radius:30px;background:#ffffffb8;color:#3c5373;font-weight:600}.dot{background:#159b74}
main{max-width:1136px;padding:48px 24px 64px;min-height:calc(100vh - 160px)}
.auth-layout{grid-template-columns:minmax(0,1fr) minmax(340px,440px);gap:64px;min-height:560px}
.eyebrow{color:#245ce8;font-size:11px;font-weight:800;letter-spacing:1.6px;margin-bottom:18px}
h1{font-size:clamp(34px,4.3vw,54px);font-weight:750;letter-spacing:-2px;line-height:1.13}h2{font-weight:700;font-size:22px;letter-spacing:-.6px}
.intro-copy{font-size:16px;line-height:1.85;max-width:410px}.intro-footer{color:#60728c;font-size:12px}
.privacy-note{padding:18px;border:1px solid #d9e4f6;border-radius:16px;background:#ffffffaa;max-width:400px;margin:28px 0 32px}.lock-icon,.mini-icon{color:#245ce8;background:#eaf0ff;border-color:#c9dafa}
.auth-card,.config-card,.status-card{background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 8px 32px #18335c08;padding:30px}
.auth-card{padding:34px}.tabs{border:0;background:#f0f4fa;border-radius:11px;padding:5px;gap:4px;margin-bottom:28px}.tabs button{flex:1;padding:10px;border-radius:8px;font-weight:600}.tabs button[aria-selected=true]{background:white;color:#245ce8;box-shadow:0 2px 8px #223c6712}
label{font-size:13px;font-weight:650;color:#263c5a}input,select{background:#fbfcff;border:1px solid #ccd8e9;border-radius:10px;min-height:48px;font-size:14px;padding:12px 14px}input:focus,select:focus{border-color:#3974ee;box-shadow:0 0 0 4px #245ce812}input::placeholder{color:#7b8aa0}
button,a,input,select{touch-action:manipulation}button:focus-visible,a:focus-visible{outline:3px solid #8ab5ff;outline-offset:3px}
.primary{background:#245ce8;border-color:#245ce8;border-radius:11px;font-size:14px;min-height:48px;box-shadow:0 4px 10px #245ce81a}.primary:hover{background:#1b4dce}.secondary{background:#f3f7ff;color:#245ce8;border-color:#ccdafa;border-radius:10px}.secondary:hover{background:#e8efff}.text-button{color:#245ce8;font-weight:650}.danger{color:#bd3245}
.help,.fine-print{font-size:12px;line-height:1.75;color:#667791}.help a{color:#245ce8;text-underline-offset:3px}.fine-print{border-top:1px solid var(--line);padding-top:18px;margin-top:22px}
.page-heading{gap:20px;align-items:center;margin-bottom:28px}.page-heading h1{font-size:34px;letter-spacing:-1px;margin-bottom:10px}.page-heading .eyebrow{margin-bottom:10px}.account{padding:10px 14px;background:#fff;border:1px solid var(--line);border-radius:12px;gap:16px}.account span{overflow-wrap:anywhere;font-weight:650}
.dashboard-grid{grid-template-columns:minmax(0,1.55fr) minmax(280px,1fr);gap:24px;align-items:start}.dashboard-grid>*{min-width:0}.step{background:#eef3ff;color:#245ce8;border:1px solid #dbe5fa;border-radius:11px;font-weight:750}.card-heading{gap:14px}.card-heading h2{font-size:20px}.card-heading .muted{margin:0}.form-divider{margin:28px 0;border-color:var(--line)}
.status-card{border-top:3px solid #245ce8}.status-card h2{overflow-wrap:anywhere}.status-line{margin-bottom:18px}.badge{border-radius:30px;font-size:12px;padding:7px 11px;background:#edf2f8;color:#546882}.badge[data-state=running]{background:#dcf6ea;color:#126649}.badge[data-state=starting]{background:#fff1ce;color:#875d00}.badge[data-state=error],.badge[data-state=memory_limit]{background:#ffeaed;color:#a7263d}
dl>div{padding:13px 0;border-color:var(--line)}dd{overflow-wrap:anywhere;font-weight:650}.privacy-card{padding:24px;border-radius:18px;background:#eaf1fd;border:1px solid #d6e3fa;margin-top:20px}.privacy-card h3{font-size:15px}.privacy-card p{font-size:13px;line-height:1.75;color:#526684}
.notice{border:1px solid #e9d398;border-radius:12px;background:#fff8e8;color:#765815;padding:16px 20px;line-height:1.7;margin-bottom:24px}.message{font-size:13px;color:#b12d41;overflow-wrap:anywhere}.message.success{color:#137052}.endpoint{overflow-wrap:anywhere}
.loading{border:1px solid var(--line);background:white;padding:28px;border-radius:18px;text-align:center;color:var(--muted)}footer{max-width:1136px;padding:22px 24px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}
@media(max-width:900px){.auth-layout{gap:30px;grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.dashboard-grid aside{display:grid;grid-template-columns:1fr 1fr;gap:20px}.privacy-card{margin-top:0}.auth-card{padding:25px}}
@media(max-width:640px){.masthead{height:74px;padding:0 20px}.brand-detail{display:none}.private-label{font-size:10px;padding:6px 9px}main{padding:30px 18px 40px}.auth-layout{display:flex;flex-direction:column;gap:28px;min-height:0;align-items:stretch}.intro h1{font-size:36px;letter-spacing:-1.4px}.intro-copy{font-size:14px;margin-bottom:0}.intro .privacy-note{margin:18px 0;padding:12px}.intro-footer{display:none}.auth-card,.config-card,.status-card{padding:23px;border-radius:18px}.page-heading{flex-direction:column;align-items:flex-start}.page-heading h1{font-size:28px}.account{width:100%;justify-content:space-between}.dashboard-grid aside{display:block}.privacy-card{margin-top:18px}.model-heading{flex-wrap:wrap;gap:4px}input,select{font-size:16px}footer{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between}}
@media(max-width:1200px){main,footer{margin-left:auto;margin-right:auto}}
@media(max-width:700px){.dashboard-grid{display:grid;width:100%}.dashboard-grid aside{display:block}.account{max-width:none;flex-direction:row;align-items:center}.intro .privacy-note{display:flex}.config-card{width:100%}.page-heading .muted{max-width:none}}
@media(max-width:700px){.intro h1 br{display:initial}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
label,.muted,.message,.privacy-card p{font-size:calc(13px + 2pt)}
.help,.fine-print,.private-label,.intro-footer,footer{font-size:calc(12px + 2pt)}
.status-card dt,footer span{font-size:calc(10px + 2pt)}
.status-card dd,.badge{font-size:calc(12px + 2pt)}
input,select,.primary,.secondary,.text-button,.tabs button,.config-tabs button{font-size:calc(14px + 2pt)}
.eyebrow,.step{font-size:calc(11px + 2pt)}
.page-heading .muted{max-width:none}.privacy-card{padding:20px}.intro-footer,.page-heading .eyebrow{display:none}
@media(max-width:700px){input,select{font-size:calc(16px + 2pt)}.intro-copy{font-size:calc(14px + 2pt)}.model-heading .text-button{font-size:calc(11px + 2pt)}.account{font-size:calc(11px + 2pt)}.private-label{font-size:calc(10px + 2pt)}}

body:has(#dashboard:not([hidden])) main{padding-top:20px;padding-bottom:24px;min-height:0}
#dashboard .page-heading{margin-bottom:18px}
#dashboard .page-heading h1{font-size:28px;margin-bottom:4px}
#dashboard .page-heading .muted{margin-bottom:0}
#dashboard .dashboard-grid{display:block;max-width:820px;margin:auto}
#dashboard .config-card{padding:22px}
#dashboard .config-tabs{margin-bottom:18px}
#dashboard [role=tabpanel]{min-height:295px}
#dashboard .card-heading{margin-bottom:12px}
#dashboard label{margin-top:12px;margin-bottom:6px}
#dashboard .help{margin-top:5px;line-height:1.5}
#dashboard input,#dashboard select{min-height:44px;padding:10px 12px}
#dashboard #botMessage{margin:12px 0}
#dashboard #botMessage:empty{display:none}
#dashboard #saveBot{margin-top:16px}
#dashboard .status-card{padding:0;border:0;border-radius:0;box-shadow:none;background:transparent}
#dashboard .status-card .eyebrow,#dashboard #statusDescription{display:none}
#dashboard .status-line{float:right;margin:0 0 8px 12px}
#dashboard .status-card h2{padding-top:5px;margin-bottom:12px}
#dashboard .status-card dl{display:flex;gap:20px;margin:10px 0}
#dashboard .status-card dl>div{width:50%;margin:0;padding:8px 0}
#dashboard .status-card .secondary{min-height:42px;padding:9px 12px;margin-top:8px}
#dashboard .status-card .danger{margin-top:10px}
#dashboard #statusUpdate{min-height:0;margin-top:6px}
@media(max-width:640px){
  #dashboard .config-card{padding:16px}
  #dashboard .config-tabs{gap:2px;padding:4px}
  #dashboard .config-tabs button{padding:10px 4px;font-size:15px}
  #dashboard .page-heading{flex-direction:row;align-items:center;gap:10px}
  #dashboard .page-heading h1{font-size:23px}
  #dashboard .page-heading .muted{display:none}
  #dashboard .account{width:auto;padding:8px;gap:8px}
  #dashboard [role=tabpanel]{min-height:330px}
}
