:root{--bg: #ffffff;--surface-2: #fafafb;--card: #ffffff;--border: #ececee;--border-soft: #f1f1f4;--text: #17181c;--text-2: #40434c;--muted: #868b96;--accent: #2f63f6;--accent-strong: #2454e6;--accent-weak: #eef3ff;--green: #16a34a;--green-weak: #e8f7ee;--amber: #b7791f;--amber-weak: #fdf4e3;--red: #e5484d;--red-weak: #fdecec;--shadow-sm: 0 1px 2px rgba(17, 24, 39, .04);--shadow: 0 4px 24px rgba(17, 24, 39, .05);--shadow-hover: 0 10px 30px rgba(17, 24, 39, .08);--radius: 18px;--radius-sm: 12px;--ease: .2s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--accent);text-decoration:none}button{font:inherit;cursor:pointer}::selection{background:var(--accent-weak)}.shell{display:flex;min-height:100vh;background:linear-gradient(180deg,#fbfbfd,#f6f7f9)}.sidebar{width:250px;flex-shrink:0;margin:16px;padding:20px 14px;position:sticky;top:16px;height:calc(100vh - 32px);display:flex;flex-direction:column;gap:8px;background:#ffffffb8;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.6);border-radius:22px;box-shadow:var(--shadow)}.brand{font-size:22px;font-weight:800;letter-spacing:-.02em;padding:6px 12px 16px;color:var(--text)}.brand span{color:var(--accent)}.sidebar nav{display:flex;flex-direction:column;gap:2px;flex:1;overflow-y:auto}.sidebar nav a{display:flex;align-items:center;gap:11px;color:var(--text-2);padding:9px 12px;border-radius:11px;font-size:14px;font-weight:500;transition:background var(--ease),color var(--ease)}.sidebar nav a svg{width:20px;height:20px;flex-shrink:0;stroke:currentColor;opacity:.85}.sidebar nav a:hover{background:#1118270a;color:var(--text)}.sidebar nav a.active{background:var(--accent);color:#fff;box-shadow:0 6px 16px #2f63f647}.sidebar nav a.active svg{opacity:1}.sidebar-foot{border-top:1px solid var(--border-soft);padding-top:14px;margin-top:4px;display:flex;flex-direction:column;gap:10px}.who-email{font-size:13px;font-weight:500;color:var(--text)}.who-role{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-top:2px}.content{flex:1;padding:40px;max-width:1500px;min-width:0}h1{font-size:32px;font-weight:700;letter-spacing:-.025em;margin:0;color:var(--text)}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:28px;flex-wrap:wrap}.sub{color:var(--muted);font-size:15px;margin-top:6px}.section-title{font-size:20px;font-weight:600;letter-spacing:-.01em;margin:0 0 16px}.panel{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:28px;margin-bottom:24px;box-shadow:var(--shadow)}.row{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-end}label{display:block;font-size:13px;font-weight:500;color:var(--muted);margin-bottom:8px}input,select,textarea{width:100%;height:48px;padding:0 14px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font:inherit;font-size:15px;transition:border-color var(--ease),box-shadow var(--ease)}textarea{height:auto;min-height:110px;padding:12px 14px;resize:vertical;line-height:1.55}input::placeholder,textarea::placeholder{color:#b3b7c0}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px #2f63f61f}input[type=checkbox]{width:auto;height:auto;accent-color:var(--accent)}.field{min-width:170px;flex:1}.btn{height:48px;padding:0 22px;border:none;border-radius:var(--radius-sm);background:linear-gradient(180deg,#4c7dff,#2f63f6);color:#fff;font-size:15px;font-weight:600;transition:transform var(--ease),box-shadow var(--ease),filter var(--ease)}.btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #2f63f64d}.btn:active{transform:translateY(0)}.btn:disabled{opacity:.55;transform:none;box-shadow:none;cursor:default}.btn-ghost{height:48px;padding:0 18px;background:var(--card);border:1px solid var(--border);color:var(--text-2);border-radius:var(--radius-sm);font-weight:500;transition:background var(--ease),border-color var(--ease),transform var(--ease)}.btn-ghost:hover{background:var(--surface-2);border-color:#e0e0e4}.btn-sm{height:36px;padding:0 14px;font-size:13px;border-radius:9px}.btn-danger{background:var(--card);border:1px solid var(--red-weak);color:var(--red)}.btn-danger:hover{background:var(--red-weak)}.doc-btn{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border-radius:10px;background:var(--card);border:1px solid var(--border);color:var(--text-2);font-size:14px;font-weight:500;transition:background var(--ease),border-color var(--ease),transform var(--ease)}.doc-btn:hover{background:var(--surface-2);transform:translateY(-1px)}.doc-btn svg{width:16px;height:16px;stroke:currentColor}.head-art{display:flex;align-items:center;gap:18px}.head-art .analytics-svg{width:112px;height:74px;flex-shrink:0}.tabs{display:inline-flex;gap:4px;padding:4px;margin-bottom:20px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:12px}.tabs button{background:transparent;border:none;color:var(--muted);padding:8px 18px;border-radius:8px;font-size:14px;font-weight:500;transition:background var(--ease),color var(--ease),box-shadow var(--ease)}.tabs button:hover{color:var(--text)}.tabs button.active{background:var(--card);color:var(--accent);font-weight:600;box-shadow:var(--shadow-sm)}.table-wrap{overflow-x:auto;padding:8px}table{width:100%;border-collapse:collapse}thead th{position:sticky;top:0;background:var(--card);z-index:1}th,td{text-align:left;padding:0 18px;height:56px;vertical-align:middle;white-space:nowrap}th{color:var(--muted);font-weight:500;font-size:12px;text-transform:uppercase;letter-spacing:.05em;height:44px;border-bottom:1px solid var(--border)}tbody td{border-bottom:1px solid var(--border-soft);color:var(--text-2);font-size:14px}tbody tr{transition:background var(--ease)}tbody tr:hover td{background:#fafbfc}tr.total td{font-weight:700;color:var(--text);background:var(--surface-2);border-bottom:none}tr.total td:first-child{border-bottom-left-radius:12px}tr.total td:last-child{border-bottom-right-radius:12px}.report-table th:not(:first-child),.report-table td:not(:first-child){text-align:right}.currency{font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}.pct{color:var(--muted);font-size:12px;margin-left:6px}.pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:500;background:var(--surface-2);border:1px solid var(--border-soft);color:var(--text-2)}.pill.NEW,.pill.CONTACTED,.pill.PURCHASED{border:none}.pill.NEW:before,.pill.CONTACTED:before,.pill.PURCHASED:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.pill.NEW{background:#f2f3f5;color:#6b7280}.pill.CONTACTED{background:var(--accent-weak);color:var(--accent)}.pill.PURCHASED{background:var(--green-weak);color:var(--green)}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:20px;margin-bottom:24px}.kpi{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:22px 24px;box-shadow:var(--shadow);transition:transform var(--ease),box-shadow var(--ease)}.kpi:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover)}.kpi .l{color:var(--muted);font-size:13px;font-weight:500;margin-bottom:10px}.kpi .n{font-size:28px;font-weight:700;letter-spacing:-.02em;color:var(--text);font-variant-numeric:tabular-nums}.err{color:var(--red);background:var(--red-weak);font-size:14px;padding:12px 16px;border-radius:var(--radius-sm);margin-bottom:16px}.ok{color:var(--green);background:var(--green-weak);font-size:14px;padding:12px 16px;border-radius:var(--radius-sm);margin-bottom:16px}.muted{color:var(--muted)}.stack{display:flex;flex-direction:column;gap:16px}code{background:var(--surface-2);border:1px solid var(--border-soft);padding:2px 7px;border-radius:6px;font-size:13px;font-family:ui-monospace,SF Mono,Menlo,monospace;color:var(--accent-strong);word-break:break-all}.snippet{background:#fbfbfd;border:1px solid var(--border);border-radius:var(--radius-sm);padding:16px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:13px;line-height:1.6;white-space:pre-wrap;word-break:break-all;color:var(--text-2);margin:8px 0 12px}.empty{text-align:center;padding:48px 24px;color:var(--muted)}.empty svg{width:76px;height:76px;stroke:#cfd2d9;margin-bottom:16px}.empty-title{color:var(--text-2);font-weight:600;font-size:15px;margin-bottom:4px}.login-wrap{min-height:100vh;display:grid;place-items:center;background:linear-gradient(180deg,#fbfbfd,#f3f5f8);padding:24px}.login-card{width:380px;max-width:100%;background:var(--card);border:1px solid var(--border);border-radius:22px;padding:36px 32px;box-shadow:var(--shadow-hover)}.login-card .brand{text-align:center;font-size:28px;padding-bottom:24px}
