:root{--bg: #eef0f5;--surface: rgba(255, 255, 255, .82);--surface-strong: rgba(255, 255, 255, .95);--surface-soft: rgba(240, 242, 248, .9);--border: rgba(15, 23, 42, .08);--text: #0f172a;--muted: #5b6475;--accent: #f97316;--accent-strong: #ea580c;--accent-soft: rgba(249, 115, 22, .12);--panel-shadow: 0 24px 80px rgba(15, 23, 42, .12);--page-gradient: radial-gradient(circle at top left, rgba(249, 115, 22, .12), transparent 32%), radial-gradient(circle at top right, rgba(59, 130, 246, .12), transparent 28%), linear-gradient(180deg, #f8fafc 0%, #e6ebf2 100%);--calendar-icon-filter: invert(18%) sepia(24%) saturate(1159%) hue-rotate(183deg) brightness(95%) contrast(95%)}:root[data-theme=dark]{--bg: #0b1020;--surface: rgba(18, 26, 44, .82);--surface-strong: rgba(23, 34, 56, .96);--surface-soft: rgba(30, 41, 59, .9);--border: rgba(148, 163, 184, .16);--text: #e5eefc;--muted: #96a2b4;--accent: #fb923c;--accent-strong: #f97316;--accent-soft: rgba(251, 146, 60, .16);--panel-shadow: 0 24px 80px rgba(0, 0, 0, .35);--page-gradient: radial-gradient(circle at top left, rgba(249, 115, 22, .16), transparent 34%), radial-gradient(circle at top right, rgba(59, 130, 246, .14), transparent 28%), linear-gradient(180deg, #0b1020 0%, #111a2d 100%);--calendar-icon-filter: invert(88%) sepia(7%) saturate(321%) hue-rotate(180deg) brightness(102%) contrast(93%)}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;color:var(--text);background:var(--page-gradient);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh}#root{min-height:100vh}.app-shell{max-width:1320px;margin:0 auto;padding:28px 20px 36px}.auth-shell{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top,rgba(249,115,22,.1),transparent 32%),linear-gradient(180deg,#f8fafc,#e8edf5)}:root[data-theme=dark] .auth-shell{background:radial-gradient(circle at top,rgba(59,130,246,.12),transparent 35%),linear-gradient(180deg,#0f172a,#0b1220)}.auth-card{width:min(448px,100%);padding:20px;border-radius:28px;background:#ffffffe6;border:1px solid rgba(15,23,42,.1);box-shadow:0 22px 60px #0f172a24}:root[data-theme=dark] .auth-card{background:#161e2ceb;border:1px solid rgba(255,255,255,.08);box-shadow:0 22px 60px #00000059}.auth-brand{color:var(--accent);font-weight:800;letter-spacing:.18em;font-size:.84rem;margin-bottom:14px}.auth-title{font-size:2.2rem;margin:0 0 6px;color:var(--text)}.auth-copy{margin:0 0 18px;color:#667085;font-size:1rem}.auth-card label{color:#344054}.auth-input{background:#fffffff2;border-color:#0f172a29;color:var(--text)}:root[data-theme=dark] .auth-input{background:#0e141fe6;border-color:#ffffff17;color:#e5eefc}.auth-submit{width:100%;justify-content:center;padding:16px 20px;border-radius:999px;background:#eef2f7;color:#0f172a}:root[data-theme=dark] .auth-submit{background:#e4eaf2;color:#111827}.auth-submit .spinner{border-color:#0f172a29;border-top-color:#0f172a}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:.22em;font-size:.75rem;font-weight:800}h1{margin:8px 0 10px;font-size:clamp(3rem,7vw,5.4rem);line-height:.92;letter-spacing:-.06em}.hero-copy{margin:0;max-width:1050px;color:var(--muted);font-size:1.06rem;line-height:1.6}.topbar-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.menu-wrap{position:relative}.menu-popover{position:absolute;top:52px;right:0;min-width:220px;padding:8px;border-radius:18px;background:var(--surface-strong);border:1px solid var(--border);box-shadow:var(--panel-shadow);display:grid;gap:4px;z-index:20}.menu-popover button{border:0;background:transparent;color:var(--text);text-align:left;padding:10px 12px;border-radius:12px;font:inherit}.menu-popover button:hover{background:#94a3b824;transform:none}.pill,.icon-button{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:999px;padding:12px 18px;font:inherit;cursor:pointer;box-shadow:0 8px 24px #0f172a0d}.pill:hover,.icon-button:hover,button:hover{transform:translateY(-1px)}.icon-pill{min-width:82px}.icon-button{width:44px;height:44px;padding:0;display:grid;place-items:center;font-size:1.05rem}.theme-toggle{font-size:1.15rem}.menu-button{font-size:1.05rem}.dashboard{display:grid;gap:18px;grid-template-columns:1fr 1.25fr;grid-template-areas:"environment endpoint" "feedback feedback"}.panel{background:var(--surface);border:1px solid var(--border);border-radius:30px;box-shadow:var(--panel-shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding:22px}.environment-panel{grid-area:environment}.endpoint-panel{grid-area:endpoint}.feedback-panel{grid-area:feedback}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.panel h2{margin:0;font-size:1.75rem;letter-spacing:-.03em}.stack,.batch-list,.log-list{display:grid;gap:12px}.grid-2,.feedback-grid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.align-center{align-items:end}label{display:grid;gap:8px;color:var(--muted);font-size:.94rem}input,select{width:100%;border:1px solid var(--border);background:var(--surface-strong);color:var(--text);border-radius:16px;padding:13px 14px;font:inherit}.select-wrap{border:1px solid var(--border);background:var(--surface-strong);border-radius:16px;overflow:hidden}.select-wrap select{border:0;border-right:16px solid transparent;border-radius:0;padding-right:42px;background-position:right 16px center}.select-wrap select:focus{outline:none}input[type=date]{color-scheme:inherit}input[type=date]::-webkit-calendar-picker-indicator{filter:var(--calendar-icon-filter);opacity:.9;cursor:pointer}button{transition:transform .15s ease,opacity .15s ease,background .15s ease}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:.85rem}.run-button{display:inline-flex;align-items:center;gap:10px}.spinner{width:14px;height:14px;border-radius:50%;border:2px solid rgba(255,255,255,.45);border-top-color:currentColor;animation:spin .8s linear infinite}.primary,.secondary,.ghost{border:0;border-radius:999px;padding:13px 18px;font:inherit;font-weight:700}.primary{background:var(--accent);color:#fff}.secondary{background:var(--accent-soft);color:var(--accent-strong)}.ghost{background:#94a3b81f;color:var(--text)}.primary:disabled,.secondary:disabled,.ghost:disabled,.pill:disabled,.icon-button:disabled{opacity:.55;cursor:not-allowed;transform:none}.small{font-size:.9rem}.muted{color:var(--muted)}.summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.metric,.batch-item,.client-item,.log-item,.feedback-box{background:var(--surface-strong);border:1px solid var(--border);border-radius:22px}.metric{padding:16px;display:flex;justify-content:space-between;flex-direction:row-reverse;align-items:flex-end;gap:12px}.metric strong,.feedback-grid strong{display:block;font-size:3rem;margin-bottom:0;line-height:1}.metric span{align-self:flex-end;line-height:1.1}.client-item,.batch-item,.log-item{padding:14px 16px}.client-item.active{border-color:#f9731673;box-shadow:inset 0 0 0 1px #f973161f}.split{display:flex;align-items:center;justify-content:space-between;gap:12px}.status-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-size:.8rem;font-weight:700}.status-pill.info{background:#3b82f61f;color:#3b82f6}.status-pill.success{background:#10b9811f;color:#10b981}.status-pill.fail{background:#ef44441f;color:#ef4444}.segmented{display:inline-flex;padding:4px;border-radius:999px;background:var(--surface-soft);border:1px solid var(--border)}.segmented span{padding:10px 20px;border-radius:999px;color:var(--muted)}.segmented-active{background:var(--surface-strong);color:var(--text)!important}.feedback-box{padding:18px;margin-bottom:14px;min-height:100px}.feedback-box p{margin:0;color:var(--muted)}.admin-panel{margin-top:18px;padding-top:18px;border-top:1px solid var(--border)}.client-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.login-error{color:#ef4444;margin:0}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0206179e;display:grid;place-items:center;padding:18px;z-index:50}.dialog-card{width:min(920px,100%);max-height:min(90vh,960px);overflow:auto}.dialog-wide{width:min(1120px,100%)}.dialog-actions{margin-bottom:14px}.dialog-content{max-height:72vh;overflow:auto;white-space:pre-wrap;word-break:break-word}.markdown-view{display:grid;gap:12px;max-height:72vh;overflow:auto;color:#0f172a9e;background:#fff9;border-radius:18px;padding:16px}:root[data-theme=dark] .markdown-view{color:#e5eefcb8;background:#ffffff0a}.markdown-view h1,.markdown-view h2,.markdown-view h3,.markdown-view p,.markdown-view ul{margin:0}.markdown-view h1{font-size:1.8rem}.markdown-view h2{font-size:1.4rem}.markdown-view h3{font-size:1.15rem}.markdown-view ul{padding-left:20px}.markdown-view code{padding:2px 6px;border-radius:8px;background:#94a3b81a}.markdown-view pre{margin:0;padding:14px;border-radius:16px;background:#0f172a0d;overflow:auto}pre{margin:8px 0 0;white-space:pre-wrap;word-break:break-word;font:inherit;color:var(--muted)}@media (max-width: 1024px){.dashboard{grid-template-columns:1fr;grid-template-areas:"environment" "endpoint" "feedback"}.topbar{flex-direction:column}}@media (max-width: 720px){.app-shell{padding:18px 14px 24px}h1{font-size:clamp(2.5rem,13vw,4rem)}.grid-2,.summary,.feedback-grid,.client-admin-grid{grid-template-columns:1fr}.panel{padding:16px;border-radius:22px}}@keyframes spin{to{transform:rotate(360deg)}}
