@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--bg:#f8fafc;--bg-elevated:#fff;--bg-surface:#fff;--bg-surface-2:#f1f5f9;--bg-sidebar:#ffffffd9;--text-main:#0f172a;--text-sub:#475569;--text-muted:#64748b;--text-faint:#94a3b8;--border:#0f172a0f;--border-strong:#0f172a1a;--border-hover:#0f172a26;--gsc:#10b981;--gsc-mid:#a7f3d0;--gsc-dim:#ecfdf5;--gsc-glow:#10b98133;--gads:#3b82f6;--gads-mid:#bfdbfe;--gads-dim:#eff6ff;--gads-glow:#3b82f633;--clarity:#8b5cf6;--clarity-mid:#ddd6fe;--clarity-dim:#f5f3ff;--clarity-glow:#8b5cf633;--ahrefs:#f97316;--ahrefs-mid:#fed7aa;--ahrefs-dim:#fff7ed;--ahrefs-glow:#f9731633;--primary:#6366f1;--primary-light:#e0e7ff;--primary-mid:#c7d2fe;--primary-glow:#6366f140;--primary-hover:#4f46e5;--success:#10b981;--danger:#ef4444;--warning:#f59e0b;--sidebar-text:#475569;--sidebar-active-text:#6366f1;--sidebar-active-bg:#eef2ff;--sidebar-hover-bg:#f8fafc;--sans:"Outfit", system-ui, -apple-system, sans-serif;--mono:"JetBrains Mono", "Fira Code", "Cascadia Code", monospace;--radius:16px;--radius-sm:10px;--radius-lg:20px;--radius-xl:24px;--shadow-xs:0 2px 4px #0f172a08;--shadow-sm:0 4px 12px #0f172a0d, 0 1px 3px #0f172a05;--shadow-md:0 10px 30px #0f172a0f, 0 4px 8px #0f172a08;--shadow-lg:0 20px 40px #0f172a14, 0 8px 16px #0f172a0a}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--sans);background:var(--bg);color:var(--text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;line-height:1.6;overflow-x:hidden}.app{min-height:100vh;display:flex}.sidebar{z-index:30;background:#0f172a;border-right:1px solid #1e293b;flex-direction:column;width:240px;display:flex;position:fixed;top:0;bottom:0;left:0;overflow:hidden auto}.sidebar:before{content:"";background:linear-gradient(90deg,#3b82f6,#8b5cf6,#10b981);height:3px;position:absolute;top:0;left:0;right:0}.logo-area{border-bottom:1px solid #1e293b;align-items:center;gap:12px;padding:24px 20px 20px;display:flex}.logo-icon{background:linear-gradient(135deg,#4f46e5,#7c3aed);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex;box-shadow:0 4px 14px #4f46e573}.logo-text h1{letter-spacing:-.01em;color:#fff;font-size:15px;font-weight:700;line-height:1.2}.logo-text span{color:#94a3b8;letter-spacing:.15em;text-transform:uppercase;font-size:9.5px;font-weight:600}.nav{flex:1;padding:12px 10px}.nav-section{margin-bottom:28px}.nav-label{color:#64748b;text-transform:uppercase;letter-spacing:.15em;margin-bottom:6px;padding:0 12px;font-size:9.5px;font-weight:700}.nav-item{color:#94a3b8;border-radius:var(--radius-sm);cursor:pointer;letter-spacing:-.01em;align-items:center;gap:10px;margin-bottom:2px;padding:9px 12px;font-size:13px;font-weight:500;transition:background .15s,color .15s;display:flex;position:relative}.nav-item:hover{color:#f8fafc;background:#ffffff0d}.nav-item.active{color:#e0e7ff;background:#6366f133;font-weight:600}.nav-item.active:after{content:"";background:#818cf8;border-radius:0 3px 3px 0;width:3px;height:60%;position:absolute;top:50%;left:0;transform:translateY(-50%)}.nav-item svg{stroke-width:2px;flex-shrink:0;width:15px;height:15px}.main{flex:1;width:calc(100vw - 240px);min-width:0;margin-left:240px;padding:30px 36px 64px;overflow-x:hidden}.header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:28px;display:flex}.header-titles h2{letter-spacing:-.045em;color:var(--text-main);margin-bottom:3px;font-size:24px;font-weight:800;line-height:1.15}.header-titles p{color:var(--text-sub);letter-spacing:-.01em;font-size:13.5px;font-weight:400}.glass-panel{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:24px;transition:all .3s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.glass-panel:hover{box-shadow:var(--shadow-md);border-color:var(--border-hover);transform:translateY(-2px)}.glass-panel:before{content:"";background:linear-gradient(90deg, transparent, var(--primary-glow), transparent);height:2px;position:absolute;top:0;left:0;right:0}.panel-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.panel-title{color:var(--text-main);letter-spacing:-.02em;align-items:center;gap:8px;font-size:13.5px;font-weight:700;display:flex}.dashboard-grid{grid-template-columns:repeat(2,1fr);gap:22px;display:grid}.metric-group{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:20px;display:grid}.metric-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-xs);justify-content:space-between;align-items:flex-start;padding:16px;transition:all .25s cubic-bezier(.16,1,.3,1);display:flex;position:relative;overflow:hidden}.metric-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.metric-content{z-index:1;align-items:flex-start;gap:12px;display:flex;position:relative}.metric-text{flex-direction:column;display:flex}.m-label{color:var(--text-muted);text-transform:capitalize;margin-bottom:4px;font-size:11px;font-weight:600;display:block}.m-val{font-family:var(--mono);color:var(--text-main);letter-spacing:-.02em;font-size:20px;font-weight:700;line-height:1}.sparkline-container{z-index:1;align-self:flex-end;width:60px;height:30px;position:relative}.icon-circle{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.icon-circle.gsc{color:#10b981;background:#ecfdf5}.icon-circle.gads{color:#3b82f6;background:#eff6ff}.icon-circle.clarity{color:#8b5cf6;background:#f5f3ff}.icon-circle.ahrefs{color:#f97316;background:#fff7ed}.icon-circle.neutral{color:#64748b;background:#f1f5f9}.url-selector{background:var(--bg-surface);border:1.5px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-xs);align-items:center;gap:16px;margin-bottom:28px;padding:12px 20px;transition:border-color .2s,box-shadow .2s;display:flex}.url-selector:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.url-icon{background:var(--primary-light);width:38px;height:38px;color:var(--primary);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.url-input{flex:1;min-width:0}.url-input label{text-transform:uppercase;letter-spacing:.12em;color:var(--text-faint);margin-bottom:2px;font-size:10px;font-weight:700;display:block}.url-input select{color:var(--text-main);font-family:var(--mono);cursor:pointer;appearance:none;background:0 0;border:none;outline:none;width:100%;font-size:13px;font-weight:600}.url-input select option{color:var(--text-main);background-color:#fff;font-weight:400}.table-responsive{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.modern-table{border-collapse:collapse;width:100%}.modern-table th{text-align:left;text-transform:uppercase;letter-spacing:.08em;color:var(--text-faint);border-bottom:1.5px solid var(--border);white-space:nowrap;background:0 0;padding:8px 14px;font-size:10.5px;font-weight:700}.modern-table th:last-child{text-align:right}.modern-table td{color:var(--text-sub);vertical-align:middle;border-bottom:1px solid var(--border);padding:11px 14px;font-size:13px;transition:background .1s}.modern-table tr td:first-child{color:var(--text-main);letter-spacing:-.01em;font-weight:600}.modern-table tr td:last-child{text-align:right;font-family:var(--mono);color:var(--text-main);font-size:12.5px;font-weight:600}.modern-table tr:hover td{background:var(--bg-surface-2)}.modern-table tr:last-child td{border-bottom:none}.badge{text-transform:uppercase;letter-spacing:.06em;border-radius:6px;align-items:center;gap:5px;padding:3px 9px;font-size:10px;font-weight:700;display:inline-flex}.badge-gsc{background:var(--gsc-dim);color:#047857;border:1px solid var(--gsc-mid)}.badge-clarity{background:var(--clarity-dim);color:#5b21b6;border:1px solid var(--clarity-mid)}.badge-ahrefs{background:var(--ahrefs-dim);color:#c2410c;border:1px solid var(--ahrefs-mid)}.badge-gads{background:var(--gads-dim);color:#1d4ed8;border:1px solid var(--gads-mid)}.badge-meta{color:#7e22ce;background:#faf5ff;border:1px solid #e9d5ff}.badge-active{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0}.badge-inactive{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0}.badge-campaign{background:var(--primary-light);color:var(--primary);border:1px solid var(--primary-mid);white-space:nowrap;text-overflow:ellipsis;border-radius:6px;align-items:center;gap:4px;max-width:200px;padding:3px 9px;font-size:10px;font-weight:700;display:inline-flex;overflow:hidden}.platform-pill{cursor:pointer;-webkit-user-select:none;user-select:none;letter-spacing:.03em;border-radius:5px;align-items:center;gap:4px;padding:2px 8px;font-size:10.5px;font-weight:700;transition:opacity .15s,transform .12s;display:inline-flex}.platform-pill:hover{opacity:.75;transform:translateY(-1px)}.platform-pill-gsc{background:var(--gsc-dim);color:#047857;border:1px solid var(--gsc-mid)}.platform-pill-gads{background:var(--gads-dim);color:#1d4ed8;border:1px solid var(--gads-mid)}.platform-pill-clarity{background:var(--clarity-dim);color:#5b21b6;border:1px solid var(--clarity-mid)}.platform-pill-ahrefs{background:var(--ahrefs-dim);color:#c2410c;border:1px solid var(--ahrefs-mid)}.platform-pill-disabled{color:var(--text-faint);opacity:.55;background:#f8fafc;border:1px dashed #e2e8f0;text-decoration:line-through}.platform-toggle-btn{border-radius:var(--radius-sm);cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid #0000;align-items:center;gap:6px;padding:6px 13px;font-size:12px;font-weight:600;transition:all .15s;display:inline-flex}.platform-toggle-btn.active-gsc{background:var(--gsc-dim);color:#047857;border-color:var(--gsc-mid)}.platform-toggle-btn.active-gads{background:var(--gads-dim);color:#1d4ed8;border-color:var(--gads-mid)}.platform-toggle-btn.active-clarity{background:var(--clarity-dim);color:#5b21b6;border-color:var(--clarity-mid)}.platform-toggle-btn.active-ahrefs{background:var(--ahrefs-dim);color:#c2410c;border-color:var(--ahrefs-mid)}.platform-toggle-btn.inactive{color:var(--text-faint);border-color:var(--border);background:#f8fafc}.platform-toggle-btn:hover{filter:brightness(.94)}.btn-primary{color:#fff;border-radius:var(--radius-sm);cursor:pointer;font-size:13px;font-weight:600;font-family:var(--sans);letter-spacing:.01em;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;align-items:center;gap:8px;padding:10px 22px;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex;box-shadow:0 4px 14px #3b82f640}.btn-primary:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-1px);box-shadow:0 6px 20px #3b82f659}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.4;cursor:not-allowed;box-shadow:none;transform:none}.btn-secondary{color:var(--text-sub);border:1.5px solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;box-shadow:var(--shadow-xs);font-size:13px;font-weight:600;font-family:var(--sans);background:#fff;align-items:center;gap:6px;padding:8px 16px;transition:all .15s;display:inline-flex}.btn-secondary:hover{background:var(--bg-surface-2);border-color:var(--border-hover);color:var(--text-main);box-shadow:var(--shadow-sm)}.btn-danger{background:var(--danger);color:#fff;border-radius:var(--radius-sm);cursor:pointer;font-size:13px;font-weight:600;font-family:var(--sans);border:1px solid #dc262666;align-items:center;gap:6px;padding:8px 16px;transition:all .15s;display:inline-flex;box-shadow:0 2px 8px #dc262633}.btn-danger:hover{transform:translateY(-1px);box-shadow:0 6px 18px #dc26264d}.btn-danger-outline{color:var(--danger);border-radius:var(--radius-sm);cursor:pointer;font-size:13px;font-weight:600;font-family:var(--sans);background:#ef44440d;border:1px solid #fca5a5;align-items:center;gap:6px;padding:9px 16px;transition:all .15s;display:inline-flex}.btn-danger-outline:hover{border-color:var(--danger);background:#ef44441a}.pipeline-info-bar{border:1px solid var(--border-strong);border-radius:var(--radius);color:var(--text-sub);box-shadow:var(--shadow-xs);background:#fff;flex-wrap:wrap;align-items:center;gap:14px;padding:11px 18px;font-size:13px;display:flex}.pipeline-chip{background:var(--bg-surface-2);border:1px solid var(--border);font-size:11px;font-family:var(--mono);color:var(--text-sub);border-radius:5px;align-items:center;gap:5px;padding:3px 10px;font-weight:500;display:inline-flex}.skipped-banner{background:var(--bg-surface-2);border:1px dashed var(--border-strong);border-radius:var(--radius-sm);text-align:center;color:var(--text-faint);margin-top:10px;padding:18px;font-size:13px}.modal-backdrop{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:9999;background:#0c11268c;justify-content:center;align-items:center;padding:20px;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.modal-card{border:1px solid var(--border-strong);border-radius:var(--radius-xl);width:100%;max-width:460px;box-shadow:var(--shadow-lg);background:#fff;padding:28px;animation:.18s cubic-bezier(.22,1,.36,1) scaleUp}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleUp{0%{opacity:0;transform:scale(.93)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}input[type=text],input[type=url],input[type=date],select{border:1.5px solid var(--border-strong);color:var(--text-main);border-radius:var(--radius-sm);font-size:13px;font-family:var(--sans);background:#fff;outline:none;padding:8px 12px;transition:border-color .15s,box-shadow .15s}input[type=text]:focus,input[type=url]:focus,input[type=date]:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}select option{color:var(--text-main);background:#fff}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--primary-mid)}@media (width<=1280px){.dashboard-grid{grid-template-columns:1fr}.metric-group{grid-template-columns:repeat(2,1fr)}.main{padding:24px 24px 48px}}@media (width<=1024px){.sidebar{width:200px}.main{width:calc(100vw - 200px);margin-left:200px}}@media (width<=768px){.metric-group{grid-template-columns:repeat(2,1fr)}.main{width:100%;margin-left:0;padding:16px}.sidebar{transform:translate(-100%)}}
