:root{--ink:#18211f;--muted:#60706c;--line:#dce5e1;--paper:#f5f8f6;--card:#fff;--brand:#176b5b;--brand-dark:#0b4e42;--brand-soft:#e3f3ee;--warn:#9a5b0a;--warn-soft:#fff4dc;--bad:#a3342c;--bad-soft:#ffedeb;--shadow:0 10px 30px rgba(23,42,37,.08);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,textarea,select{font:inherit}button{cursor:pointer}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.loading{display:grid;place-items:center;gap:12px;min-height:70vh;color:var(--muted)}.spinner{width:28px;height:28px;border:3px solid var(--line);border-top-color:var(--brand);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.login-layout{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr}.login-story{padding:clamp(36px,7vw,96px);display:flex;flex-direction:column;justify-content:space-between;background:var(--brand-dark);color:white}.login-story h1{font-size:clamp(42px,6vw,76px);line-height:.97;letter-spacing:-.055em;max-width:760px;margin:18px 0}.login-story p{max-width:600px;color:#d5e9e4;font-size:18px;line-height:1.6}.wordmark{font-weight:800;letter-spacing:-.03em}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:800;color:var(--brand);margin:0 0 8px}.login-story .eyebrow{color:#9cd9cc}.login-panel{padding:clamp(28px,6vw,80px);display:grid;align-content:center;background:white}.login-card{max-width:440px;width:100%;margin:auto}.login-card h2{font-size:34px;letter-spacing:-.04em;margin:0 0 8px}.login-card>p{color:var(--muted);line-height:1.5;margin-bottom:30px}
label{display:block;font-size:13px;font-weight:750;margin:18px 0 7px}input,textarea,select{width:100%;border:1px solid #cbd8d4;border-radius:9px;padding:11px 12px;background:#fff;color:var(--ink);outline:none}input:focus,textarea:focus,select:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(23,107,91,.13)}textarea{line-height:1.5;resize:vertical}.primary,.secondary,.danger,.text-button,.icon-button{border:0;border-radius:9px;padding:10px 14px;font-weight:750}.primary{background:var(--brand);color:#fff}.primary:hover{background:var(--brand-dark)}.primary:disabled{opacity:.55;cursor:wait}.secondary{background:#edf2f0;color:var(--ink)}.secondary:hover{background:#dfe8e5}.danger{background:var(--bad-soft);color:var(--bad)}.text-button{background:transparent;color:var(--brand);padding-inline:4px}.icon-button{background:transparent;font-size:27px;padding:0 6px;color:var(--muted)}.full{width:100%;margin-top:22px}.error{background:var(--bad-soft);color:var(--bad);border-radius:9px;padding:12px 14px;margin:14px 0;font-size:14px}.hint{color:var(--muted);font-size:13px;line-height:1.5}
.shell{max-width:1440px;margin:auto;padding:0 28px 60px}.topbar{min-height:76px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:16px}.topbar-left,.topbar-right{display:flex;align-items:center;gap:18px}.topbar-left select{width:auto;min-width:180px;padding:8px 10px}.workspace-pill{font-size:12px;color:var(--muted);border-left:1px solid var(--line);padding-left:18px}.user-block{text-align:right}.user-block strong,.user-block span{display:block}.user-block span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.hero{display:flex;justify-content:space-between;align-items:end;padding:42px 0 24px;gap:24px}.hero h1{font-size:clamp(34px,5vw,58px);letter-spacing:-.055em;margin:0;line-height:1}.hero p{color:var(--muted);max-width:600px;line-height:1.5}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:26px}.stat{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:var(--shadow)}.stat span{font-size:12px;color:var(--muted);font-weight:700}.stat strong{display:block;font-size:28px;letter-spacing:-.04em;margin-top:6px}.tabs{display:flex;gap:5px;border-bottom:1px solid var(--line);margin-bottom:22px;overflow:auto}.tab{border:0;background:transparent;padding:12px 14px;color:var(--muted);font-weight:750;white-space:nowrap;border-bottom:2px solid transparent}.tab[aria-selected=true]{color:var(--brand);border-color:var(--brand)}
.panel{background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);overflow:hidden}.panel-head{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:1px solid var(--line);gap:18px}.panel-head h2{font-size:18px;margin:0}.panel-head p{margin:4px 0 0;color:var(--muted);font-size:13px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:920px}th,td{text-align:left;border-bottom:1px solid #edf1ef;padding:13px 15px;vertical-align:top}th{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);background:#fafcfb}td{font-size:13px}tr:last-child td{border:0}.query{font-weight:750;max-width:280px}.query small{display:block;color:var(--muted);font-weight:500;margin-top:4px}.score{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--brand-soft);color:var(--brand-dark);font-weight:850}.badge{display:inline-block;border-radius:999px;padding:5px 9px;background:#edf2f0;color:#42514d;font-size:11px;font-weight:800;text-transform:capitalize}.badge.approved,.badge.published,.badge.ready,.badge.connected{background:var(--brand-soft);color:var(--brand-dark)}.badge.failed,.badge.error{background:var(--bad-soft);color:var(--bad)}.badge.scheduled,.badge.processing{background:var(--warn-soft);color:var(--warn)}.actions{display:flex;flex-wrap:wrap;gap:6px}.actions button{padding:7px 9px;font-size:11px}.warning{color:var(--warn);font-size:11px;max-width:210px}.empty{padding:50px 24px;text-align:center;color:var(--muted)}.empty h3{color:var(--ink);margin-bottom:5px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:var(--shadow)}.card h3{margin:0 0 6px}.card p{color:var(--muted);font-size:13px;line-height:1.5}.card dl{display:grid;grid-template-columns:1fr auto;gap:8px;font-size:12px}.card dt{color:var(--muted)}.card dd{margin:0;font-weight:750}.audit-list{list-style:none;padding:0;margin:0}.audit-list li{display:grid;grid-template-columns:160px 1fr auto;gap:15px;padding:13px 18px;border-bottom:1px solid var(--line);font-size:13px}.audit-list time{color:var(--muted)}
.onboard{max-width:720px;margin:46px auto}.onboard .panel{padding:clamp(24px,5vw,48px)}.onboard h1{font-size:42px;letter-spacing:-.05em;margin:5px 0 10px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.form-grid .wide{grid-column:1/-1}dialog{width:min(820px,calc(100vw - 30px));border:0;border-radius:16px;padding:0;box-shadow:0 30px 90px rgba(0,0,0,.25)}dialog::backdrop{background:rgba(17,29,26,.55)}dialog form{padding:24px}.dialog-head,.dialog-actions{display:flex;align-items:center;justify-content:space-between;gap:16px}.dialog-head h2{margin:0}.dialog-actions{justify-content:flex-end;margin-top:18px}
@media(max-width:900px){.login-layout{grid-template-columns:1fr}.login-story{min-height:340px}.stats{grid-template-columns:1fr 1fr}.cards{grid-template-columns:1fr}.audit-list li{grid-template-columns:1fr}.audit-list time{font-size:11px}.hero{align-items:start;flex-direction:column}.workspace-pill{display:none}}
@media(max-width:600px){.shell{padding-inline:16px}.topbar{height:66px}.user-block strong{font-size:12px}.topbar-right{gap:8px}.stats{grid-template-columns:1fr 1fr;gap:9px}.stat{padding:14px}.stat strong{font-size:23px}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.login-story{padding:32px 24px;min-height:280px}.login-panel{padding:38px 24px}.hero{padding-top:30px}}
