:root{--brand-900:#1c1b4e;--brand-700:#036298;--brand-500:#036298;--accent:#9fe870;--accent-dark:#7bcb4e;--accent-strong:#93e15f;--bg:#e9e9ec;--surface:#fff;--surface-soft:#f4f4f4;--border:#e6e6ec;--text:#0e0e0e;--text-soft:#6b6b78;--text-faint:#8a8a96;--danger:#dc2626;--danger-bg:#fdecec;--warn:#d97706;--warn-bg:#fef3e2;--ok-bg:#e4f8d6}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Poppins,system-ui,sans-serif}h1,h2,h3,.display{letter-spacing:-.4px;font-family:Poppins,system-ui,sans-serif}button{cursor:pointer;border:none;font-family:inherit}a{color:var(--brand-700);text-decoration:none}a:hover{color:var(--brand-900)}input,select,textarea{font-family:inherit}input:not([type=checkbox]):not([type=radio]):not([type=file]),select{border:1.5px solid var(--border);background:#fafafb;border-radius:10px;padding:8px 12px;font-size:13.5px;transition:border-color .15s,background .15s}input:not([type=checkbox]):not([type=radio]):not([type=file]):focus,select:focus{border-color:var(--accent);background:var(--surface);outline:none}#root{min-height:100vh}.login-wrap{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:36px;display:flex;position:relative;overflow:hidden}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:24px;width:380px;padding:36px 32px;box-shadow:0 24px 60px #1c1b4e1a}.brand-mark{align-items:center;gap:12px;margin-bottom:28px;display:flex}.brand-badge{background:var(--brand-700);border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.brand-badge-dot{background:var(--accent);border-radius:50% 50% 4px;width:16px;height:16px}.brand-name{color:var(--brand-900);letter-spacing:-.2px;font-size:17px;font-weight:600}.login-card h1{letter-spacing:-.6px;margin:0 0 6px;font-size:26px;font-weight:700}.login-card p{color:var(--text-soft);margin:0 0 24px;font-size:14.5px;line-height:1.6}.field{margin-bottom:16px}.field label{color:var(--brand-900);margin-bottom:8px;font-size:13.5px;font-weight:600;display:block}.field input,.field select,.field textarea{border:1.5px solid var(--border);background:#fafafb;border-radius:14px;width:100%;padding:14px 16px;font-size:15px;transition:border-color .15s,background .15s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);background:var(--surface);outline:none}.btn-primary{background:var(--accent);width:100%;color:var(--text);border-radius:15px;margin-top:6px;padding:16px;font-size:15.5px;font-weight:600;transition:background .15s,transform .18s cubic-bezier(.34,1.56,.64,1),box-shadow .18s;box-shadow:0 10px 24px #9fe87073}.btn-primary:hover{background:var(--accent-strong);transform:translateY(-3px);box-shadow:0 16px 30px #9fe8708c}.btn-primary:active{transform:translateY(-1px);box-shadow:0 8px 18px #9fe87073}.btn-primary:disabled{opacity:.6;cursor:default;box-shadow:none;transform:none}.login-hint{color:var(--text-soft);text-align:center;margin-top:20px;font-size:12px}.login-shell{z-index:1;background:var(--surface);border-radius:28px;grid-template-columns:1.02fr 1fr;width:min(1100px,100%);min-height:620px;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 60px #1c1b4e1f}.login-form-col{flex-direction:column;justify-content:center;gap:28px;padding:56px 64px;display:flex}.login-illustration-col{background:var(--accent);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}@keyframes login-float-a{0%,to{transform:translate(0)}50%{transform:translate(16px,-20px)}}@keyframes login-float-b{0%,to{transform:translate(0)}50%{transform:translate(-14px,18px)}}@keyframes login-sway{0%,to{transform:rotate(10deg)}50%{transform:rotate(20deg)}}.login-deco-a{animation:13s ease-in-out infinite login-float-a}.login-deco-b{animation:16s ease-in-out infinite login-float-b}.login-deco-c{animation:9s ease-in-out infinite login-sway}.login-deco-d{animation:10s ease-in-out 1.5s infinite login-float-a}.app{background:var(--bg);min-height:100vh;display:flex}.sidebar{background:var(--surface);flex-direction:column;flex-shrink:0;gap:22px;width:252px;height:100vh;padding:26px 18px;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar .brand-mark{margin-bottom:0}.sidebar-top{flex-direction:column;gap:4px;display:flex}.sidebar-brand-row{justify-content:space-between;align-items:center;gap:10px;padding:0 8px;display:flex}.sidebar-subtitle{color:var(--text-faint);padding:0 0 0 50px;font-size:12.5px;font-weight:500}.sidebar-nav{flex-direction:column;gap:4px;display:flex}.nav-item{color:var(--text-soft);text-align:left;background:0 0;border-radius:14px;align-items:center;gap:12px;width:100%;margin-bottom:4px;padding:12px 14px;font-size:14.5px;font-weight:500;transition:background .15s,color .15s,transform .15s;display:flex}.nav-item:hover{background:var(--surface-soft);color:var(--text);transform:translate(4px)}.nav-item.active{background:var(--accent);color:var(--text);font-weight:600}.nav-item.active:hover{transform:translate(2px)}.nav-icon{text-align:center;width:16px;font-size:14px;transition:transform .15s}.nav-item:hover .nav-icon{transform:scale(1.15)}.nav-badge{background:var(--brand-700);color:#fff;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:auto;padding:0 5px;font-size:11px;font-weight:700;line-height:1;display:flex}.sidebar-footer{flex-direction:column;gap:14px;margin-top:auto;display:flex}.sidebar-help-card{background:var(--surface-soft);border-radius:18px;flex-direction:column;gap:10px;padding:18px;text-decoration:none;display:flex}.sidebar-help-icon{background:var(--surface);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.sidebar-help-icon-dot{border:3px solid var(--brand-700);border-radius:50%;width:12px;height:12px}.sidebar-help-title{color:var(--brand-900);font-size:13.5px;font-weight:600}.sidebar-help-desc{color:var(--text-soft);font-size:12px;line-height:1.5}.sidebar-legal{padding:0 14px}.logout{color:var(--text-soft);text-align:left;background:0 0;border-radius:14px;width:100%;padding:12px 14px;font-size:13.5px;font-weight:500;transition:background .15s,color .15s,transform .15s}.logout:hover{background:var(--surface-soft);color:var(--text);transform:translate(4px)}.main{flex:1;min-width:0;padding:36px 40px}.main-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:26px;display:flex}.main-header h1{letter-spacing:-.5px;margin:0 0 6px;font-size:26px;font-weight:600}.main-header .sub{color:var(--text-soft);font-size:14.5px}.btn-accent{background:var(--accent);color:var(--text);white-space:nowrap;border-radius:14px;align-items:center;gap:6px;padding:13px 20px;font-size:14px;font-weight:600;transition:background .15s,transform .18s cubic-bezier(.34,1.56,.64,1),box-shadow .18s;display:flex;box-shadow:0 8px 20px #9fe87066}.btn-accent:hover{background:var(--accent-strong);transform:scale(1.05);box-shadow:0 12px 26px #9fe87080}.btn-accent:active{transform:scale(.98);box-shadow:0 6px 14px #9fe87066}.btn-accent:disabled{opacity:.6;cursor:default;box-shadow:none;transform:none}.btn-ghost{background:var(--surface-soft);color:var(--text-soft);border:none;border-radius:14px;padding:11px 18px;font-size:13.5px;font-weight:500;transition:background .15s,color .15s,transform .15s}.btn-ghost:hover{color:var(--text);background:var(--border);transform:scale(1.04)}.btn-ghost:active{transform:scale(.97)}.btn-danger{background:var(--danger-bg);color:var(--danger);border-radius:12px;padding:8px 14px;font-size:12.5px;font-weight:600;transition:background .15s,transform .15s,box-shadow .15s}.btn-danger:hover{background:var(--danger);color:#fff;transform:scale(1.06);box-shadow:0 6px 16px #dc262659}.btn-danger:active{transform:scale(.96)}.cards-row{grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:22px;display:grid}.metric-card{background:var(--surface);border:none;border-radius:22px;padding:24px}.metric-card .label{color:var(--brand-900);margin-bottom:4px;font-size:15px;font-weight:600}.metric-card .value{letter-spacing:-1px;margin-bottom:6px;font-size:34px;font-weight:700;line-height:1}.metric-card.danger{background:var(--danger-bg)}.metric-card.danger .label,.metric-card.danger .value{color:var(--danger)}.panel{background:var(--surface);border:none;border-radius:22px;margin-bottom:22px;padding:26px 28px}.panel-title{color:var(--brand-900);margin:0 0 16px;font-size:14.5px;font-weight:600}table{border-collapse:collapse;width:100%;font-size:13.5px}th{text-align:left;color:var(--text-faint);border-bottom:1px solid var(--border);padding:10px 12px;font-size:12px;font-weight:600}td{border-bottom:1px solid var(--border);padding:13px 12px}tr:last-child td{border-bottom:none}.status-pill{border-radius:999px;padding:5px 12px;font-size:11.5px;font-weight:600;display:inline-block}.status-pill.completed{background:var(--ok-bg);color:#2f6b1f}.status-pill.sending{background:var(--warn-bg);color:var(--warn)}.status-pill.scheduled{background:var(--surface-soft);color:var(--text-soft)}.status-pill.active{background:var(--ok-bg);color:#2f6b1f}.status-pill.optout{background:var(--danger-bg);color:var(--danger)}.status-pill.pending{background:var(--warn-bg);color:var(--warn)}.status-pill.approved{background:var(--ok-bg);color:#2f6b1f}.status-pill.rejected,.status-pill.failed{background:var(--danger-bg);color:var(--danger)}.status-pill.connected{background:var(--ok-bg);color:#2f6b1f}.status-pill.disconnected{background:var(--danger-bg);color:var(--danger)}.status-pill.not_connected{background:var(--surface-soft);color:var(--text-soft)}.status-pill.paused,.status-pill.pending_verification{background:var(--warn-bg);color:var(--warn)}.status-pill.archived{background:var(--surface-soft);color:var(--text-faint)}.error-text{color:var(--danger);margin:10px 0 0;font-size:13px}.empty-hint{color:var(--text-soft);margin:0;font-size:13px}.panel p{color:var(--text);font-size:14.5px;line-height:1.65}.panel h2{color:var(--brand-900);margin:28px 0 10px;font-size:17px;font-weight:600}.panel ul{margin:0 0 16px;padding-left:20px}.panel li{margin-bottom:6px;font-size:14.5px;line-height:1.65}.form-grid-2{grid-template-columns:1fr 1fr;gap:14px;display:grid}.form-grid-3{grid-template-columns:2fr 1fr 1fr;gap:14px;display:grid}.panel{overflow-x:auto}.panel table{min-width:100%}@media (width<=780px){.form-grid-2,.form-grid-3,.cards-row{grid-template-columns:1fr}.panel table{min-width:560px}body{overflow-x:hidden}.main{padding:20px 16px}.panel{border-radius:18px;padding:18px 16px}.main-header h1{font-size:22px}.app{flex-direction:column}.sidebar{z-index:20;border-bottom:1px solid var(--border);-webkit-overflow-scrolling:touch;flex-flow:row;align-items:center;gap:10px;width:100%;height:auto;padding:10px 14px;position:sticky;top:0;overflow:auto visible}.sidebar-top{flex-direction:row;flex-shrink:0;align-items:center}.sidebar-subtitle{display:none}.sidebar-nav{flex-direction:row;flex-shrink:0;gap:4px}.nav-item{white-space:nowrap;margin-bottom:0;padding:8px 12px;font-size:13px}.nav-item:hover{transform:none}.sidebar-footer{flex-direction:row;flex-shrink:0;gap:8px;margin-top:0;margin-left:auto}.sidebar-help-card,.sidebar-legal{display:none}.logout{white-space:nowrap;width:auto;padding:8px 10px}.login-wrap{padding:16px}.login-shell{border-radius:20px;grid-template-columns:1fr;min-height:auto}.login-form-col{padding:32px 24px}.login-illustration-col{display:none}}
