:root{--bg: #f6f6f8;--panel: #ffffff;--border: #e3e3e8;--text: #1d1d20;--muted: #6b6b75;--primary: #e5341e;--primary-weak: #fde7e3;--green: #1c8a4b;--red: #c5341e;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}a{color:inherit;text-decoration:none}.shell{display:flex;min-height:100vh}.sidebar{width:220px;background:var(--panel);border-right:1px solid var(--border);padding:20px 12px;position:sticky;top:0;height:100vh}.brand{font-weight:800;font-size:18px;padding:0 12px 16px;color:var(--primary)}.nav a{display:block;padding:10px 12px;border-radius:10px;color:var(--muted);font-weight:600;margin-bottom:2px}.nav a.active{background:var(--primary-weak);color:var(--primary)}.main{flex:1;padding:28px 32px;max-width:1100px}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}h1{font-size:22px;margin:0}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:16px}.card{background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:18px}.card .value{font-size:28px;font-weight:800}.card .label{color:var(--muted);font-size:13px;margin-top:4px}.panel{background:var(--panel);border:1px solid var(--border);border-radius:14px;overflow:hidden}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--border);font-size:14px}th{color:var(--muted);font-weight:600;background:#fafafb}tr:last-child td{border-bottom:none}button{font:inherit;border:1px solid var(--border);background:var(--panel);border-radius:8px;padding:7px 12px;cursor:pointer;font-weight:600}button.primary{background:var(--primary);color:#fff;border-color:var(--primary)}button:disabled{opacity:.5;cursor:default}input,select,textarea{font:inherit;padding:9px 11px;border:1px solid var(--border);border-radius:8px;background:#fff;width:100%}.badge{display:inline-block;padding:2px 9px;border-radius:20px;font-size:12px;font-weight:700}.badge.on{background:#e3f5ea;color:var(--green)}.badge.off{background:#fde7e3;color:var(--red)}.row{display:flex;gap:10px;align-items:center}.muted{color:var(--muted)}.toolbar{display:flex;gap:10px;margin-bottom:16px}.login-wrap{display:grid;place-items:center;min-height:100vh}.login-card{width:360px;background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:28px}.login-card h1{color:var(--primary);margin-bottom:4px}.login-card p{color:var(--muted);margin-top:0}.stack>*+*{margin-top:12px}.error{color:var(--red);font-size:13px}.nav-group{margin-bottom:18px}.nav-group-title{font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:0 12px 6px}.sidebar nav a{display:flex;align-items:center;justify-content:space-between;gap:8px}.nav-badge{background:var(--danger, #F0435C);color:#fff;border-radius:999px;font-size:11px;font-weight:700;padding:1px 7px}.skeleton{height:12px;border-radius:4px;background:linear-gradient(90deg,#e9e9ee 25%,#f4f4f7 37%,#e9e9ee 63%);background-size:400% 100%;animation:skeleton 1.4s ease infinite}@keyframes skeleton{0%{background-position:100% 50%}to{background-position:0 50%}}.chart-tooltip{position:absolute;top:8px;right:8px;background:#fff;border:1px solid var(--border, #e7e7ec);border-radius:8px;padding:8px 10px;font-size:12px;pointer-events:none;box-shadow:0 4px 14px #0000000f}.funnel-track{height:10px;background:#eeeef2;border-radius:999px;overflow:hidden;margin-top:4px}.funnel-bar{height:100%;border-radius:999px}.bulk-bar{background:#fff8e6;border:1px solid #f0d79a;border-radius:8px;padding:8px 12px;margin-bottom:10px}.ad-preview{background:#0a0a0c;border:1px solid #24242b;border-radius:14px;padding:14px;color:#f4f4f6;max-width:330px}.ad-preview-head{display:flex;align-items:center;gap:8px;font-size:11px;color:#9a9aa6;margin-bottom:10px}.ad-preview-tag{border:1px solid #33333c;border-radius:999px;padding:1px 8px;font-size:10px;font-weight:700;letter-spacing:.04em}.ad-preview-image{width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:10px;margin-bottom:10px}.ad-preview-headline{font-size:16px;font-weight:800}.ad-preview-body{font-size:13px;color:#b6b6c0;margin-top:5px}.ad-preview-cta{margin-top:12px;background:#ffc42e;color:#17170c;border-radius:10px;padding:9px;text-align:center;font-weight:700;font-size:13px}.palette-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;display:flex;justify-content:center;padding-top:12vh;z-index:50}.palette{background:#fff;border-radius:12px;width:min(560px,92vw);height:fit-content;box-shadow:0 20px 60px #0000002e;overflow:hidden}.palette input{width:100%;border:0;border-bottom:1px solid var(--border, #e7e7ec);padding:14px 16px;font-size:15px;outline:none;border-radius:0}.palette-results{max-height:340px;overflow-y:auto}.palette-hint{padding:14px 16px;color:var(--muted);font-size:13px}.palette-row{display:flex;justify-content:space-between;gap:12px;width:100%;border:0;background:transparent;padding:10px 16px;text-align:left;cursor:pointer;font-size:13.5px}.palette-row.active{background:#f3f4f8}kbd{border:1px solid var(--border, #e7e7ec);border-bottom-width:2px;border-radius:4px;padding:0 5px;font-size:11px;font-family:inherit}.diff{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:12px 4px}.diff-title{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:4px}.diff-body{background:#fff;border:1px solid var(--border, #e7e7ec);border-radius:8px;padding:10px;font-size:12px;margin:0;white-space:pre-wrap;overflow-x:auto}button.link{background:none;border:0;padding:0;color:var(--accent, #1F6FEB);text-decoration:underline;cursor:pointer;font:inherit}.lang-switch{display:inline-flex;align-items:center;gap:2px;border:1px solid var(--border, #e7e7ec);border-radius:8px;padding:2px;background:#fff}.lang-switch-icon{font-size:13px;padding:0 4px 0 5px;opacity:.65}.lang-switch button{border:0;background:transparent;padding:4px 9px;border-radius:6px;font-size:12px;font-weight:600;letter-spacing:.03em;color:var(--muted);cursor:pointer}.lang-switch button:hover{background:#f3f4f8}.lang-switch button.active{background:#1f6feb;color:#fff}.chip-remove{border:0;background:transparent;color:inherit;cursor:pointer;font-size:13px;line-height:1;padding:0 0 0 6px;opacity:.7}.chip-remove:hover{opacity:1}
