:root{--bg:#F6F5F2;--bg-2:#FFFFFF;--surface:#FFFFFF;--surface-2:#FAF9F7;--surface-3:#F1EFEB;--line:rgba(24,20,17,.1);--line-2:rgba(24,20,17,.06);--line-strong:rgba(24,20,17,.17);--text:#1B1612;--text-2:#494139;--muted:#7C7166;--faint:#A89D8F;--brand:#F5380D;--brand-strong:#D62D08;--brand-soft:#FFEEE8;--brand-soft-2:#FFE0D5;--brand-ink:#FFFFFF;--good:#0E9F6E;--good-bg:#E6F6EF;--good-line:rgba(14,159,110,.28);--bad:#E02424;--bad-bg:#FDECEC;--bad-line:rgba(224,36,36,.26);--amber:#B45309;--amber-bg:#FDF3E2;--amber-line:rgba(180,83,9,.24);--radius:14px;--radius-sm:10px;--radius-lg:20px;--radius-pill:999px;--shadow-sm:0 1px 2px rgba(20,16,12,.05), 0 1px 3px rgba(20,16,12,.06);--shadow:0 2px 6px rgba(20,16,12,.05), 0 12px 28px -14px rgba(20,16,12,.18);--shadow-lg:0 18px 50px -20px rgba(20,16,12,.22);--ring:0 0 0 3px rgba(245,56,13,.16);--maxw:1200px;--ease:cubic-bezier(.22,1,.36,1);color-scheme:light}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{background:radial-gradient(1000px 520px at 100% -8%,rgba(245,56,13,.055),transparent 60%),radial-gradient(800px 420px at -5% 110%,rgba(245,56,13,.035),transparent 55%),var(--bg);background-attachment:fixed;color:var(--text);font-family:Hanken Grotesk,system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{font-family:Hanken Grotesk,sans-serif;color:var(--text);margin:0 0 .4em;letter-spacing:-.015em;font-weight:700;line-height:1.15}h1{font-size:34px}h2{font-size:26px}h3{font-size:19px}h4{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);margin:22px 0 12px}a{color:var(--brand);text-decoration:none}a:hover{color:var(--brand-strong)}.mono,code{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.9em;letter-spacing:-.01em}.muted{color:var(--muted)}.faint{color:var(--faint)}::selection{background:#f5380d2e}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-thumb{background:#dad5cd;border:3px solid var(--bg);border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#c6c0b6}.brand{display:flex;align-items:center;gap:12px}.brand-logo{height:46px;width:auto;display:block}.auth-logo{height:62px;width:auto;display:block;margin:0 auto 10px}.btn{font:inherit;font-weight:600;cursor:pointer;border-radius:var(--radius-sm);padding:10px 16px;border:1px solid transparent;transition:background .18s,border-color .18s,box-shadow .18s,transform .1s var(--ease)}.btn:disabled{opacity:.5;cursor:default}.btn-primary{background:var(--brand);color:var(--brand-ink);box-shadow:0 1px 2px #f5380d40,0 8px 18px -8px #f5380d80}.btn-primary:hover:not(:disabled){background:var(--brand-strong)}.btn-ghost,.btn-secondary{background:var(--surface);color:var(--text);border-color:var(--line-strong)}.btn-ghost:hover:not(:disabled){background:var(--surface-2);border-color:var(--muted)}input,textarea,select{width:100%;font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:10px 12px;transition:border-color .18s,box-shadow .18s}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--brand);box-shadow:var(--ring)}.panel,.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.header-shell{position:sticky;top:0;z-index:50;background:#ffffffd1;-webkit-backdrop-filter:blur(16px) saturate(140%);backdrop-filter:blur(16px) saturate(140%);border-bottom:1px solid var(--line)}.pill{display:inline-block;padding:3px 10px;border-radius:var(--radius-pill);font-size:12px;font-weight:700}.pill-ok{color:var(--good);background:var(--good-bg)}.pill-bad,.pill-danger{color:var(--bad);background:var(--bad-bg)}.pill-mute{color:var(--muted);background:var(--surface-3)}:focus-visible{outline:2px solid var(--brand);outline-offset:2px}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.layout{min-height:100vh}.header{max-width:var(--maxw);margin:0 auto;padding:14px 28px;display:flex;align-items:center;gap:28px}.brand img{height:42px;width:auto;display:block}.brand-wordmark{display:flex;flex-direction:column;line-height:1}.brand-wordmark strong{font-family:Hanken Grotesk,sans-serif;font-weight:700;font-size:18px;letter-spacing:-.015em;color:var(--text)}.brand-wordmark small{font-size:10px;text-transform:uppercase;letter-spacing:.2em;color:var(--faint);margin-top:3px}.tag{margin-left:4px;padding:3px 10px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--brand);border:1px solid var(--brand-soft-2);border-radius:var(--radius-pill);background:var(--brand-soft)}.tabbar{display:flex;gap:4px;margin-left:auto}.tab-btn{position:relative;background:none;border:none;color:var(--muted);font-family:Hanken Grotesk,sans-serif;font-size:13.5px;font-weight:600;letter-spacing:.01em;padding:9px 15px;cursor:pointer;border-radius:var(--radius-sm);transition:color .18s,background .18s}.tab-btn:hover{color:var(--text);background:var(--surface-2)}.tab-btn.active{color:var(--brand);background:var(--brand-soft)}.logout-btn{margin-left:18px}.main-content{max-width:var(--maxw);margin:0 auto;padding:34px 28px 80px}.tab-content{display:flex;flex-direction:column;gap:22px;animation:rise .5s var(--ease) both}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:24px 26px;box-shadow:var(--shadow-sm)}.card>h3:first-child,.card>.row:first-child{margin-top:0}.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.row.between{justify-content:space-between}.cat{margin-top:6px}.btn{font-family:Hanken Grotesk,sans-serif;font-size:13.5px;font-weight:600;color:var(--text);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:9px 16px;cursor:pointer;transition:background .16s,border-color .16s,transform .08s,box-shadow .16s}.btn:hover{background:var(--surface-2);border-color:var(--muted)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{color:var(--brand-ink);background:var(--brand);border:1px solid transparent;box-shadow:0 1px 2px #f5380d40,0 8px 18px -8px #f5380d80}.btn.primary:hover:not(:disabled){background:var(--brand-strong);border-color:transparent}.btn.danger{color:var(--bad);border-color:var(--bad-line);background:var(--bad-bg)}.btn.danger:hover:not(:disabled){background:#fbdddd;border-color:var(--bad-line)}.copy-btn{margin-left:10px;padding:4px 10px;font-size:12px}input,select,textarea{font-family:Hanken Grotesk,sans-serif;font-size:14px;color:var(--text);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:9px 13px;transition:border-color .18s,box-shadow .18s,background .18s}input::placeholder,textarea::placeholder{color:var(--faint)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand);box-shadow:var(--ring);background:var(--surface)}select option{background:var(--surface)}.row input,.row select{flex:1;min-width:140px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;margin-top:14px}.form-grid label{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.form-grid label:last-child{grid-column:1 / -1}.form-grid textarea{font-family:IBM Plex Mono,monospace;font-size:12.5px;resize:vertical}@media (max-width:680px){.form-grid{grid-template-columns:1fr}}.price-input{width:110px;font-family:IBM Plex Mono,monospace;text-align:right;padding:7px 11px}.date-input{padding:8px 12px}.date-note{font-size:12px;color:var(--muted)}.table,.data-table{width:100%;border-collapse:collapse;font-size:14px}.table thead th,.data-table thead th{text-align:left;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);background:var(--surface-2);padding:10px 14px;border-bottom:1px solid var(--line);white-space:nowrap}.table tbody td,.data-table tbody td{padding:13px 14px;border-bottom:1px solid var(--line-2);color:var(--text-2)}.table tbody tr,.data-table tbody tr{transition:background .14s}.table tbody tr:hover,.data-table tbody tr:hover{background:var(--surface-2)}.table tbody tr:last-child td,.data-table tbody tr:last-child td{border-bottom:none}.table strong,.data-table strong{color:var(--text);font-weight:600}.table .mono,.data-table .mono{color:var(--brand-strong)}.totals-row td{border-top:1px solid var(--line);font-weight:700;color:var(--text)}.good-row{background:var(--good-bg)}.muted-row td{color:var(--muted)}.positive{color:var(--good);font-variant-numeric:tabular-nums}.negative{color:var(--bad);font-variant-numeric:tabular-nums}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px}.kpi{position:relative;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow-sm)}.kpi:after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--brand);opacity:.85}.kpi.good:after{background:var(--good)}.kpi-value{font-family:Hanken Grotesk,sans-serif;font-weight:700;font-size:32px;line-height:1;letter-spacing:-.02em;color:var(--text);font-variant-numeric:tabular-nums}.kpi.good .kpi-value{color:var(--good)}.kpi-label{margin-top:10px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}.env-badge{display:inline-block;padding:3px 10px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;border-radius:var(--radius-pill);border:1px solid transparent}.env-badge.test{color:var(--amber);background:var(--amber-bg);border-color:var(--amber-line)}.env-badge.live{color:var(--good);background:var(--good-bg);border-color:var(--good-line)}.status-badge{display:inline-block;padding:3px 10px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;border-radius:var(--radius-pill)}.status-badge.active{color:var(--good);background:var(--good-bg)}.status-badge.suspended{color:var(--amber);background:var(--amber-bg)}.status-badge.deleted{color:var(--bad);background:var(--bad-bg)}.status-chip{display:inline-block;padding:3px 10px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;border-radius:var(--radius-pill);color:var(--muted);background:var(--surface-3)}.status-chip.verified,.status-chip.completed,.status-chip.success,.status-chip.passed{color:var(--good);background:var(--good-bg)}.status-chip.failed,.status-chip.rejected,.status-chip.error{color:var(--bad);background:var(--bad-bg)}.status-chip.pending,.status-chip.in_progress,.status-chip.processing{color:var(--amber);background:var(--amber-bg)}.chip{display:inline-flex;align-items:center;gap:9px;padding:9px 13px;font-size:13px;font-weight:600;color:var(--text-2);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-pill);cursor:pointer;-webkit-user-select:none;user-select:none;transition:border-color .15s,background .15s,color .15s}.chip input[type=checkbox]{accent-color:var(--brand);width:15px;height:15px;cursor:pointer}.chip.on{color:var(--brand-strong);border-color:var(--brand-soft-2);background:var(--brand-soft);box-shadow:0 0 0 1px var(--brand-soft-2)}.chip:hover{border-color:var(--muted)}.chip.disabled{opacity:.55;cursor:not-allowed;background:var(--surface-2);color:var(--faint);border-color:var(--line)}.chip.disabled:hover{border-color:var(--line)}.chip.disabled input{cursor:not-allowed}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}.keybox{display:flex;flex-direction:column;gap:8px;padding:16px 18px;border:1px dashed var(--brand-soft-2);border-radius:var(--radius-sm);background:var(--brand-soft);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--brand-strong)}.keybox code{font-family:IBM Plex Mono,monospace;font-size:13.5px;font-weight:500;text-transform:none;letter-spacing:0;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:11px 13px;word-break:break-all;-webkit-user-select:all;user-select:all}.subtabs{display:flex;gap:4px;padding:5px;background:var(--surface);border:1px solid var(--line);border-radius:12px;width:fit-content;box-shadow:var(--shadow-sm)}.subtab-btn{background:none;border:none;color:var(--muted);font-family:Hanken Grotesk,sans-serif;font-size:13px;font-weight:600;padding:7px 15px;border-radius:8px;cursor:pointer;transition:background .15s,color .15s}.subtab-btn:hover{color:var(--text);background:var(--surface-2)}.subtab-btn.active{color:var(--brand);background:var(--brand-soft)}.error{color:var(--bad);background:var(--bad-bg);border:1px solid var(--bad-line);border-radius:var(--radius-sm);padding:9px 13px;font-size:13px;font-weight:500}.ok{color:var(--good);font-size:13px;font-weight:600}.warn{color:var(--amber);font-size:13px;font-weight:600}.plan-line{font-size:13px;color:var(--text-2)}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{position:relative;width:100%;max-width:396px;padding:40px 38px 34px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--shadow-lg);overflow:hidden}.login-card:before{content:"";position:absolute;top:-1px;left:0;right:0;height:3px;background:var(--brand)}.login-logo-wrap{display:flex;flex-direction:column;align-items:center;gap:7px;margin-bottom:8px}.login-product{font-family:Hanken Grotesk,sans-serif;font-size:34px;font-weight:800;letter-spacing:-.02em;line-height:1;color:var(--text);margin-top:4px}.login-tagline{font-size:11px;text-transform:uppercase;letter-spacing:.22em;color:var(--brand);font-weight:700}.login-card h2{text-align:center;font-weight:700;margin:4px 0 16px}.login-card label{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.login-card .btn.primary{margin-top:12px;padding:12px;font-size:14.5px}@media (max-width:720px){.header{flex-wrap:wrap;gap:14px;padding:14px 18px}.tabbar{margin-left:0;order:3;width:100%;overflow-x:auto}.logout-btn{margin-left:auto}.main-content{padding:24px 18px 64px}.card{padding:20px 18px}}
