@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600;700&display=swap";:root{--font-sans:"Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:"JetBrains Mono", "SF Mono", ui-monospace, Menlo, Consolas, monospace;--text-display:1.85rem;--text-h1:1.35rem;--text-h2:1.125rem;--text-h3:.975rem;--text-body:.875rem;--text-sub:.8125rem;--text-label:.75rem;--text-caption:.75rem;--tracking-tight:-.025em;--tracking-snug:-.015em;--tracking-normal:0;--tracking-wide:.04em;--leading-tight:1.22;--leading-snug:1.35;--leading-normal:1.5;--leading-relaxed:1.65;--bg-primary:#f8fafc;--bg-secondary:#fff;--bg-tertiary:#f1f5f9;--bg-glass:#fff;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--accent-blue:#2563eb;--accent-purple:#7c3aed;--accent-cyan:#0891b2;--success:#10b981;--danger:#ef4444;--warning:#f59e0b;--accent-blue-rgb:37, 99, 235;--accent-purple-rgb:124, 58, 237;--accent-cyan-rgb:8, 145, 178;--warning-rgb:245, 158, 11;--success-rgb:16, 185, 129;--danger-rgb:239, 68, 68;--border:#0f172a14;--border-focus:#2563eb66;--shadow:0 4px 20px -2px #0f172a0f, 0 2px 8px -1px #0f172a08;--shadow-glow:0 0 15px #2563eb0d;--radius-sm:6px;--radius-md:12px;--radius-lg:16px;--transition:background-color .2s ease, border-color .2s ease, color .2s ease, opacity .2s ease, transform .2s ease, box-shadow .2s ease}.text-gradient{color:var(--text-primary);font-weight:700}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);font-size:var(--text-body);line-height:var(--leading-normal);background-color:var(--bg-primary);color:var(--text-primary);font-feature-settings:"cv02" 1, "cv03" 1, "cv04" 1, "cv11" 1, "tnum" 1;font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;overflow-x:hidden}.font-mono{font-variant-numeric:tabular-nums;font-family:var(--font-mono)!important}.tabular-nums{font-variant-numeric:tabular-nums}.text-display{font-size:var(--text-display);font-weight:800;line-height:var(--leading-tight);letter-spacing:var(--tracking-tight)}.text-h1{font-size:var(--text-h1);font-weight:700;line-height:var(--leading-tight);letter-spacing:var(--tracking-tight)}.text-h2{font-size:var(--text-h2);font-weight:700;line-height:var(--leading-snug);letter-spacing:var(--tracking-snug)}.text-h3{font-size:var(--text-h3);font-weight:600;line-height:var(--leading-snug)}.text-body{font-size:var(--text-body);line-height:var(--leading-normal)}.text-sub{font-size:var(--text-sub);color:var(--text-secondary);line-height:1.4}.text-label{font-size:var(--text-label);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--text-muted);font-weight:600}.text-caption{font-size:var(--text-caption);color:var(--text-muted);line-height:1.3}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@keyframes fadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.4s ease-out forwards fadeIn}.animate-slide-up{animation:.5s cubic-bezier(.16,1,.3,1) forwards slideUp}.glass-panel{background:var(--bg-secondary);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:var(--radius-md);transition:var(--transition)}.glass-panel:hover{border-color:#0f172a1f;box-shadow:0 10px 25px -5px #0f172a14,0 8px 16px -6px #0f172a0a}.btn{border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);border:1px solid #0000;outline:none;justify-content:center;align-items:center;gap:8px;padding:8px 16px;font-family:inherit;font-size:.85rem;font-weight:500;display:inline-flex}.btn-primary{background:var(--accent-blue);color:#fff;box-shadow:0 4px 12px #2563eb26}.btn-primary:hover{background:#1d4ed8;transform:translateY(-1px);box-shadow:0 6px 16px #2563eb40}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:var(--bg-secondary);color:var(--text-secondary);border-color:var(--border)}.btn-secondary:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--text-muted)}.btn-ghost{color:var(--text-secondary);background:0 0}.btn-ghost:hover{background:var(--bg-tertiary);color:var(--text-primary)}.delta-badge{border-radius:12px;align-items:center;gap:4px;padding:2px 8px;font-size:.75rem;font-weight:600;display:inline-flex}.delta-badge.positive{color:var(--success);background:#10b9811a}.delta-badge.negative{color:var(--danger);background:#ef44441a}.table-responsive{width:100%;margin-top:16px;padding:0;overflow-x:auto}.table-header-title{font-size:var(--text-h2);color:var(--text-primary);letter-spacing:var(--tracking-snug);font-weight:700;line-height:var(--leading-snug);box-sizing:border-box;background:var(--bg-secondary);border-bottom:1px solid var(--border);z-index:2;width:max-content;min-width:100%;max-width:none;margin:0;padding:18px 20px 14px;position:sticky;left:0}.table-header-title.d-flex{flex-wrap:wrap;gap:12px;width:100%;min-width:100%}.data-table{border-collapse:collapse;text-align:left;font-variant-numeric:tabular-nums;width:100%;min-width:1050px;font-family:inherit}.data-table th{font-size:var(--text-label);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--tracking-wide);border-bottom:2px solid var(--border);white-space:nowrap;vertical-align:middle;background-color:#0f172a04;padding:14px 18px;font-weight:600}.data-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:var(--transition)}.data-table th.sortable:hover{color:var(--accent-blue);background-color:#2563eb0a}.data-table td{font-size:var(--text-body);color:var(--text-secondary);border-bottom:1px solid var(--border);transition:var(--transition);vertical-align:middle;padding:14px 18px}.data-table td:first-child{color:var(--text-primary);white-space:normal;word-break:break-word;min-width:250px;max-width:380px;font-weight:500;line-height:1.4}.data-table td:not(:first-child){white-space:nowrap;font-variant-numeric:tabular-nums}.table-row{transition:var(--transition);position:relative}.table-row:hover{background-color:var(--bg-tertiary)!important}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.font-medium{font-weight:500}.font-semibold{font-weight:600}.text-cyan{color:var(--accent-cyan)}.conversion-value{color:var(--success);background:#10b98114;border-radius:4px;padding:2px 6px;font-weight:600}.type-dot{border-radius:50%;width:8px;height:8px;margin-right:8px;display:inline-block}.type-dot.organic{background-color:var(--accent-cyan)}.type-dot.paid{background-color:var(--accent-blue)}.type-dot.referral{background-color:var(--accent-purple)}.type-dot.direct{background-color:var(--success)}.type-dot.offline{background-color:var(--text-muted)}.row-summary{background:#3b82f60a;border-top:2px solid #3b82f61a;border-bottom:2px solid #3b82f61a!important}.row-summary:hover{background:#3b82f614!important}.row-summary td{color:var(--text-primary);font-weight:600}.summary-badge{color:var(--accent-blue);letter-spacing:.5px;align-items:center;gap:6px;font-weight:600;display:inline-flex}.data-table th.sortable{display:table-cell}.data-table th.sortable svg{vertical-align:middle;margin-left:4px;display:inline-block}.row-fd{background:#0f172a05}.row-fd td{color:var(--text-primary);font-weight:600}.row-macro{background:#0f172a01}.row-macro td{color:var(--text-primary);font-weight:500}.row-city td{color:var(--text-secondary);font-size:.8rem}.level-macro{padding-left:28px!important}.level-city{padding-left:48px!important}.leaf-name{color:var(--text-muted);align-items:center;gap:6px;display:inline-flex}.leaf-name svg{flex-shrink:0}.expand-btn{color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;cursor:pointer;transition:var(--transition);background:0 0;border:none;outline:none;align-items:center;gap:8px;display:flex}.expand-btn:hover{color:var(--accent-blue)}.expand-icon{width:10px;color:var(--text-muted);font-size:.7rem;display:inline-block}.node-name{text-align:left}.table-loader-container{color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:40px 20px;font-size:.9rem;display:flex}.table-responsive>.table-loader-container{padding:40px 20px}.table-responsive>.table-empty{margin:16px 20px 20px}@keyframes spin{to{transform:rotate(360deg)}}.table-empty{text-align:center;color:var(--text-muted);border:1px dashed var(--border);border-radius:var(--radius-md);box-sizing:border-box;padding:32px 20px;font-size:.9rem}.roas-badge{letter-spacing:.2px;transition:var(--transition);border-radius:6px;justify-content:center;align-items:center;padding:4px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.roas-high{color:#059669;background:#10b98114;border:1px solid #10b9812e}.roas-good{color:#2563eb;background:#3b82f614;border:1px solid #3b82f62e}.roas-mid{color:#d97706;background:#f59e0b14;border:1px solid #f59e0b2e}.roas-low{color:#dc2626;background:#ef444414;border:1px solid #ef44442e}.roas-null{color:var(--text-muted);background:#94a3b814;border:1px solid #94a3b826}.text-truncate{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.d-flex{display:flex}.justify-between{justify-content:space-between}.align-center{align-items:center}.text-xs{font-size:.75rem}.font-normal{font-weight:400}.text-muted{color:var(--text-muted)}.text-orange{color:var(--warning)}.font-bold{font-weight:700}.sidebar{background-color:var(--bg-secondary);border-right:1px solid var(--border);z-index:1000;flex-direction:column;width:280px;height:100vh;transition:transform .3s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;top:0;left:0;box-shadow:2px 0 12px #0f172a05}.sidebar-logo{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;height:70px;padding:0 24px;display:flex}.sidebar-close-btn{display:none}.logo-text{font-size:var(--text-h1);letter-spacing:var(--tracking-tight);color:var(--text-primary);font-weight:700}.sidebar-nav{flex-direction:column;flex:1;gap:6px;padding:24px 16px;display:flex}.nav-item{border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--text-body);transition:var(--transition);align-items:center;gap:12px;padding:10px 16px;font-weight:500;text-decoration:none;display:flex}.nav-item:hover{background:var(--bg-tertiary);color:var(--text-primary)}.nav-item.active{color:var(--accent-blue);background:#2563eb0d;font-weight:600}.nav-icon{width:20px;height:20px;color:var(--text-muted);justify-content:center;align-items:center;display:flex}.nav-item.active .nav-icon{color:var(--accent-blue)}.logout-btn{text-align:left;cursor:pointer;background:0 0;border:none;width:100%;margin-top:auto;font-family:inherit}.logout-btn:hover{color:var(--danger)!important;background:#ef44440d!important}.logout-btn:hover .nav-icon{color:var(--danger)}.sidebar-sync-panel{border-top:1px solid var(--border);background-color:#0f172a03;flex-direction:column;gap:8px;padding:16px 20px;display:flex}.sidebar-sync-header{align-items:center;gap:8px;display:flex}.status-dot{border-radius:50%;width:7px;height:7px;box-shadow:0 0 6px}.status-dot.success{background-color:var(--success);color:var(--success)}.status-dot.running{background-color:var(--accent-blue);color:var(--accent-blue);animation:1.5s infinite sidebarPulse}.status-dot.error{background-color:var(--danger);color:var(--danger)}.status-dot.warning{background-color:var(--warning);color:var(--warning)}.status-dot.unknown{background-color:var(--text-muted);color:var(--text-muted)}.status-label{color:var(--text-secondary);font-size:.8rem;font-weight:600}.sidebar-sync-details{color:var(--text-muted);font-size:.7rem;line-height:1.35}.sidebar-sync-btn{justify-content:center;align-items:center;gap:8px;width:100%;margin-top:4px;padding:6px 12px;font-size:.78rem;display:flex}.spin-icon{animation:1.5s linear infinite sidebarRotate}@keyframes sidebarPulse{0%{opacity:.6;transform:scale(.95)}50%{opacity:1;transform:scale(1.05)}to{opacity:.6;transform:scale(.95)}}@keyframes sidebarRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (width<=768px){.sidebar{z-index:1000;box-shadow:none;transform:translate(-100%)}.sidebar.open{transform:translate(0);box-shadow:4px 0 24px #0f172a26}.sidebar-close-btn{cursor:pointer;color:var(--text-secondary);border-radius:var(--radius-sm);transition:var(--transition);background:0 0;border:none;justify-content:center;align-items:center;padding:6px;display:flex}.sidebar-close-btn:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}}.layout-container{background-color:var(--bg-primary);min-height:100vh;display:flex}.main-content-wrapper{flex-direction:column;flex:1;min-width:0;margin-left:280px;display:flex}.page-content{flex:1;width:100%;padding:32px}.sidebar-backdrop,.mobile-menu-toggle-fab{display:none}@media (width<=768px){.main-content-wrapper{margin-left:0}.page-content{margin-top:60px;padding:16px}.sidebar-backdrop{-webkit-backdrop-filter:blur(4px);z-index:998;background-color:#0f172a66;display:block;position:fixed;inset:0}.mobile-menu-toggle-fab{background-color:var(--bg-secondary);border:1px solid var(--border);width:40px;height:40px;color:var(--text-secondary);cursor:pointer;z-index:990;transition:var(--transition);border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;top:16px;left:16px;box-shadow:0 4px 12px #0f172a14}.mobile-menu-toggle-fab:hover{background-color:var(--bg-tertiary);color:var(--text-primary);transform:scale(1.05)}}.filter-bar-container{z-index:100;background:var(--bg-primary);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);flex-direction:column;gap:16px;width:100%;margin-bottom:24px;padding:18px 24px;display:flex;position:sticky;top:0;box-shadow:0 4px 20px #0000001f}.filter-bar-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.filter-bar-title-section{align-items:center;gap:8px;display:flex}.filter-bar-icon-svg{justify-content:center;align-items:center;display:flex}.filter-bar-title{color:var(--text-primary);letter-spacing:.5px;font-size:1rem;font-weight:600}.filter-bar-quick-presets{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.preset-chip-btn{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;transition:var(--transition);border-radius:20px;outline:none;padding:4px 10px;font-size:.75rem;font-weight:500}.preset-chip-btn:hover{color:var(--accent-blue);background:#2563eb14;border-color:#2563eb40}.preset-chip-btn:active{transform:scale(.97)}.filter-bar-body{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.filter-divider{background-color:var(--border);width:1px;height:38px}.period-picker{align-items:center;gap:16px;display:flex}.filter-select-group{flex-direction:column;gap:6px;display:flex}.filter-select-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:.72rem;font-weight:600}.filter-select-pair{gap:6px;display:flex}.filter-input-select{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;transition:var(--transition);outline:none;padding:8px 12px;font-family:inherit;font-size:.85rem}.filter-input-select:hover:not(:disabled){background:var(--bg-tertiary);border-color:var(--text-muted)}.filter-input-select:focus{border-color:var(--accent-blue);box-shadow:0 0 0 2px var(--border-focus)}.filter-input-select:disabled{opacity:.4;cursor:not-allowed}.month-select{min-width:110px}.region-cascade{gap:16px;display:flex}.cascade-loading{color:var(--text-muted);font-size:.85rem}.filter-dropdowns-group{gap:16px;display:flex}.custom-select-container{flex-direction:column;gap:6px;min-width:180px;display:flex;position:relative}.custom-select-wrapper{width:100%;position:relative}.custom-select-trigger{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);cursor:pointer;transition:var(--transition);text-align:left;justify-content:space-between;align-items:center;padding:8px 12px;font-family:inherit;font-size:.85rem;display:flex}.custom-select-trigger:hover{background:var(--bg-tertiary);border-color:var(--text-muted)}.custom-select-trigger.has-value{background:#2563eb0a;border-color:#2563eb4d;font-weight:500}.trigger-text{white-space:nowrap;text-overflow:ellipsis;margin-right:8px;overflow:hidden}.trigger-icon-wrapper{color:var(--text-muted);justify-content:center;align-items:center;display:flex}.custom-select-dropdown{z-index:1000;flex-direction:column;width:100%;max-height:280px;padding:6px 0;animation:.2s cubic-bezier(.16,1,.3,1) forwards dropdownSlideUp;display:flex;position:absolute;top:calc(100% + 6px);left:0;overflow-y:auto}@keyframes dropdownSlideUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.dropdown-search-wrapper{border-bottom:1px solid var(--border);padding:6px 8px}.dropdown-search-input{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);transition:var(--transition);outline:none;padding:6px 10px;font-family:inherit;font-size:.8rem}.dropdown-search-input:focus{border-color:var(--accent-blue);background:var(--bg-secondary)}.dropdown-options-list{max-height:200px;margin:0;padding:0;list-style:none;overflow-y:auto}.dropdown-option{cursor:pointer;color:var(--text-secondary);transition:var(--transition);justify-content:space-between;align-items:center;padding:8px 12px;font-size:.85rem;display:flex}.dropdown-option:hover{background:var(--bg-tertiary);color:var(--text-primary)}.dropdown-option.selected{color:var(--accent-blue);background:#2563eb0d;font-weight:500}.option-text{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.option-check-icon{justify-content:center;align-items:center;display:flex}.dropdown-no-results{color:var(--text-muted);text-align:center;padding:12px;font-size:.8rem}.filter-bar-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;margin-top:4px;padding-top:12px;display:flex}.filter-status-info{align-items:center;display:flex}.filter-dirty-badge{color:var(--warning);background:#f59e0b14;border:1px solid #f59e0b26;border-radius:4px;padding:4px 8px;font-size:.75rem;font-weight:600}.filter-bar-buttons{gap:12px;display:flex}.btn-sm{border-radius:var(--radius-sm);padding:6px 12px;font-size:.8rem}.pulse-glow{animation:2s ease-in-out infinite buttonPulse}@keyframes buttonPulse{0%{box-shadow:0 4px 12px #2563eb26}50%{box-shadow:0 4px 20px #2563eb59}to{box-shadow:0 4px 12px #2563eb26}}.export-excel-btn{border-radius:4px;padding:4px 8px;font-size:.8rem}@media (width<=1024px){.filter-bar-body{gap:12px}.filter-divider{display:none}}@media (width<=768px){.filter-bar-container{padding:16px;position:relative;top:0}.filter-bar-body{flex-direction:column;align-items:stretch;gap:16px}.period-picker,.region-cascade,.filter-dropdowns-group{flex-direction:column;align-items:stretch;gap:12px;width:100%}.custom-select-container{width:100%;min-width:0}.filter-select-group,.filter-select-pair{width:100%}.filter-input-select{flex:1;width:100%}}.period-picker-container{flex-direction:column;gap:8px;display:flex}.comparison-toggle-row{align-items:center;margin-top:2px;display:flex}.comparison-checkbox-label{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text-secondary);transition:var(--transition);align-items:center;gap:8px;font-size:.8rem;display:flex}.comparison-checkbox-label:hover{color:var(--text-primary)}.comparison-checkbox{appearance:none;border:1px solid var(--border);border-radius:var(--radius-xs);background:var(--bg-secondary);cursor:pointer;width:14px;height:14px;transition:var(--transition);outline:none;place-content:center;display:grid}.comparison-checkbox:before{content:"";width:8px;height:8px;box-shadow:inset 1em 1em var(--accent-blue);clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0%,43% 62%);background-color:canvastext;transition:transform .12s ease-in-out;transform:scale(0)}.comparison-checkbox:checked:before{transform:scale(1)}.comparison-checkbox:checked{border-color:var(--accent-blue);background:#2563eb0d}.comparison-checkbox:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px}.dashboard-tabs-container{border-radius:var(--radius-md);background-color:var(--bg-secondary);margin-bottom:24px;padding:6px}.dashboard-tabs-list{flex-wrap:wrap;gap:8px;width:100%;display:flex}.dashboard-tab-item{border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:var(--transition);text-align:left;background:0 0;border:1px solid #0000;outline:none;flex-direction:column;flex:1;justify-content:center;align-items:flex-start;padding:14px 20px;display:flex;position:relative}.dashboard-tab-item:hover{background:var(--bg-primary);color:var(--text-primary)}.dashboard-tab-item.active{color:var(--text-primary);background:#2563eb0a;border-color:#2563eb1f}.tab-header-row{align-items:center;gap:8px;margin-bottom:4px;display:flex}.tab-icon-wrapper{color:var(--text-muted);transition:var(--transition);justify-content:center;align-items:center;display:flex}.dashboard-tab-item.active .tab-icon-wrapper{color:var(--accent-blue)}.dashboard-tab-item:hover .tab-icon-wrapper{color:var(--text-primary)}.tab-label{font-size:var(--text-h3);letter-spacing:var(--tracking-snug);font-weight:700}.tab-desc{font-size:var(--text-sub);color:var(--text-muted);padding-left:28px;font-weight:400;line-height:1.35}.dashboard-tab-item.active .tab-desc{color:var(--text-secondary)}.tab-active-indicator{background:var(--accent-blue);border-top-left-radius:4px;border-top-right-radius:4px;height:2px;animation:.25s tabGlow;position:absolute;bottom:0;left:20px;right:20px}@keyframes tabGlow{0%{opacity:0;transform:scaleX(.5)}to{opacity:1;transform:scaleX(1)}}@media (width<=768px){.dashboard-tabs-list{flex-direction:column;gap:4px}.dashboard-tab-item{padding:10px}.tab-desc{margin-top:2px;padding-left:0}}.kpi-card{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-secondary);min-width:220px;min-height:140px;transition:var(--transition);flex-direction:column;flex:1;padding:20px 24px;display:flex;position:relative;overflow:hidden}.kpi-card:hover{border-color:#2563eb33;box-shadow:0 4px 16px -2px #0f172a0d}.kpi-card-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.kpi-card-title-group{align-items:center;gap:6px;display:flex}.kpi-card-title{font-size:var(--text-label);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--tracking-wide);font-weight:600}.kpi-card-info-badge{background:var(--bg-tertiary);width:14px;height:14px;color:var(--text-muted);font-size:var(--text-caption);cursor:help;transition:var(--transition);border-radius:50%;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.kpi-card-info-badge:hover{background:var(--accent-blue);color:#fff}.kpi-card-icon-wrapper{width:34px;height:34px;transition:var(--transition);border-radius:50%;justify-content:center;align-items:center;display:flex}.kpi-card:hover .kpi-card-icon-wrapper{transform:scale(1.05)}.kpi-card-icon{justify-content:center;align-items:center;width:18px;height:18px;display:flex}.kpi-card-body{margin-bottom:8px}.kpi-card-value{font-size:var(--text-display);font-weight:800;line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--text-primary);font-variant-numeric:tabular-nums}.kpi-card-unit{color:var(--text-muted);margin-left:2px;font-size:1.1rem;font-weight:600}.kpi-card-footer{align-items:center;gap:8px;margin-top:auto;display:flex}.kpi-card-footer-text{font-size:var(--text-caption);color:var(--text-muted)}.skeleton-line{background:linear-gradient(90deg, var(--bg-tertiary) 25%, #0f172a08 50%, var(--bg-tertiary) 75%);background-size:200% 100%;border-radius:4px;animation:1.5s infinite loadingSkeleton}.skeleton-title{width:60%;height:14px;margin-bottom:20px}.skeleton-value{width:45%;height:32px;margin-bottom:16px}.skeleton-footer{width:80%;height:12px}@keyframes loadingSkeleton{0%{background-position:200% 0}to{background-position:-200% 0}}.sales-analytics-tab-container{flex-direction:column;gap:24px;width:100%;display:flex}.deals-ratio-card{border-radius:var(--radius-md);flex-direction:column;gap:16px;padding:20px;display:flex}.deals-ratio-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.ratio-title-section{align-items:center;gap:8px;display:flex}.ratio-title-section h4{font-size:1.1rem;font-weight:600}.ratio-subtitle{color:var(--text-muted);font-size:.8rem}.deals-ratio-bar-wrapper{flex-direction:column;gap:12px;display:flex}.deals-ratio-bar{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:12px;height:24px;display:flex;overflow:hidden}.ratio-fill-success{color:#fff;text-shadow:0 1px 2px #0000004d;background:linear-gradient(90deg,#059669,#10b981);justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:flex}.ratio-fill-failed{color:#fff;text-shadow:0 1px 2px #0000004d;background:linear-gradient(90deg,#b91c1c,#ef4444);justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:flex}.ratio-legend-labels{flex-wrap:wrap;gap:24px;display:flex}.legend-label{color:var(--text-secondary);align-items:center;gap:8px;font-size:.85rem;display:flex}.legend-dot{border-radius:50%;width:10px;height:10px}.legend-dot.success{background-color:var(--success)}.legend-dot.danger{background-color:var(--danger)}.drilldown-visual-row{grid-template-columns:2fr 3fr;gap:24px;width:100%;display:grid}.drilldown-pie-card,.drilldown-trend-card{border-radius:var(--radius-md);flex-direction:column;justify-content:space-between;min-height:380px;padding:20px;display:flex}.pie-card-header,.trend-card-header{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.chart-title{color:var(--text-primary);font-size:1.05rem;font-weight:600}.trend-subtitle{color:var(--text-muted);font-size:.8rem}.drilldown-breadcrumbs{background:#ffffff05;border:1px solid #ffffff0a;border-radius:20px;flex-wrap:wrap;align-items:center;gap:6px;width:fit-content;padding:4px 10px;font-size:.8rem;display:flex}.breadcrumb-item{color:var(--text-muted);font-weight:500}.breadcrumb-item.clickable{color:var(--accent-blue);cursor:pointer;transition:var(--transition)}.breadcrumb-item.clickable:hover{color:var(--accent-cyan);text-decoration:underline}.breadcrumb-item.active{color:var(--text-primary);font-weight:600}.breadcrumb-separator{color:var(--text-muted)}.pie-chart-wrapper,.trend-chart-wrapper{flex:1;justify-content:center;align-items:center;display:flex;position:relative}.drilldown-tip{color:var(--text-muted);text-align:center;margin-top:12px;font-size:.75rem;font-style:italic}.spinner-container{justify-content:center;align-items:center;width:100%;height:150px;display:flex}.product-table-card{border-radius:var(--radius-md);flex-direction:column;gap:16px;padding:20px;display:flex}.product-table-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.table-title-group{flex-direction:column;gap:4px;display:flex}.table-title{font-size:1.1rem;font-weight:600}.table-subtitle{color:var(--text-muted);font-size:.8rem}.table-search-box{border:1px solid var(--border);border-radius:var(--radius-sm);width:280px;transition:var(--transition);background:#ffffff0a;align-items:center;padding:6px 12px;display:flex}.table-search-box:focus-within{border-color:var(--accent-blue);box-shadow:0 0 10px #3b82f633}.search-icon{color:var(--text-muted);margin-right:8px;font-size:.85rem}.table-search-input{color:var(--text-primary);background:0 0;border:none;outline:none;width:100%;font-size:.85rem}.product-row-checkbox{width:16px;height:16px;accent-color:var(--accent-blue);cursor:pointer}.table-row.selected-row{background:#10b9810d}.table-row.selected-row:hover{background:#10b98114!important}.clear-selection-btn{border:1px solid var(--border);border-radius:var(--radius-sm);height:fit-content;padding:4px 8px;font-size:.75rem}.table-pagination{color:var(--text-secondary);justify-content:space-between;align-items:center;margin-top:16px;font-size:.8rem;display:flex}.pagination-buttons{gap:8px;display:flex}.btn-xs{padding:4px 10px;font-size:.75rem}@media (width<=1024px){.drilldown-visual-row{grid-template-columns:1fr}.drilldown-pie-card,.drilldown-trend-card{min-height:340px}}.seo-analytics-tab-container{flex-direction:column;gap:24px;width:100%;display:flex}.seo-control-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.site-selector-card,.wordstat-console-card{border-radius:var(--radius-md);flex-direction:column;justify-content:space-between;gap:16px;padding:20px;display:flex}.site-selector-header,.console-header{justify-content:space-between;align-items:center;display:flex}.site-selector-header h4,.console-header h4{font-size:var(--text-h3);letter-spacing:var(--tracking-snug);color:var(--text-primary);font-weight:700}.current-site-badge{font-size:var(--text-label);color:var(--success);background:#10b9811a;border-radius:20px;padding:2px 8px;font-weight:600}.status-indicator-wrapper{align-items:center;gap:8px;display:flex}.status-dot{border-radius:50%;width:8px;height:8px}.status-dot.updated{background-color:var(--success);box-shadow:0 0 6px var(--success)}.status-dot.syncing{background-color:var(--warning);box-shadow:0 0 6px var(--warning);animation:1s infinite alternate pulse}@keyframes pulse{0%{opacity:.4}to{opacity:1}}.status-label{color:var(--text-secondary);font-size:.75rem}.site-selector-buttons{flex-direction:column;gap:8px;display:flex}.site-btn{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-secondary);border-radius:var(--radius-sm);text-align:left;cursor:pointer;transition:var(--transition);padding:10px 14px;font-size:.85rem}.site-btn:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--text-muted)}.site-btn.active{border-color:var(--accent-blue);color:var(--accent-blue);background:#2563eb0d;font-weight:500}.console-metrics{flex-direction:column;gap:8px;display:flex}.c-metric{justify-content:space-between;font-size:.85rem;display:flex}.cm-label{color:var(--text-muted)}.cm-value{color:var(--text-primary);font-weight:600}.console-actions{flex-wrap:wrap;gap:12px;display:flex}.seo-table-card{border-radius:var(--radius-md);flex-direction:column;gap:16px;padding:20px;display:flex}.seo-table-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.add-keyword-form{gap:8px;width:320px;display:flex}.add-kw-input{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);transition:var(--transition);outline:none;flex:1;padding:6px 12px;font-size:.85rem}.add-kw-input:focus{border-color:var(--accent-blue)}.add-kw-btn{background:var(--accent-blue);color:#fff;border-radius:var(--radius-sm);cursor:pointer;width:32px;height:32px;transition:var(--transition);border:none;justify-content:center;align-items:center;display:flex}.add-kw-btn:hover{background:#1d4ed8;transform:translateY(-1px)}.seo-actions-bar{border-bottom:1px solid var(--border);background:#0f172a03;justify-content:space-between;align-items:center;gap:12px;padding:12px 24px;display:flex}.import-file-btn{cursor:pointer;border-radius:var(--radius-sm);color:var(--text-secondary);border:1px dashed var(--border);transition:var(--transition);background:0 0;align-items:center;gap:6px;padding:4px 10px;font-size:.75rem;font-weight:500;display:inline-flex}.import-file-btn:hover{color:var(--accent-blue);border-color:var(--accent-blue);background:var(--bg-tertiary)}.editable-val{cursor:pointer;background:var(--bg-primary);transition:var(--transition);border-radius:4px;align-items:center;gap:4px;padding:2px 6px;display:inline-flex}.editable-val:hover{background:var(--bg-tertiary);color:var(--accent-blue)}.table-inline-input{background:var(--bg-secondary);border:1px solid var(--accent-blue);width:70px;color:var(--text-primary);text-align:right;border-radius:4px;outline:none;padding:2px 4px;font-family:inherit;font-size:.85rem}.save-edit-btn{justify-content:center;align-items:center;padding:2px 6px;display:inline-flex}.delete-kw-btn{opacity:.5;justify-content:center;align-items:center;padding:2px 6px;display:inline-flex}.delete-kw-btn:hover{opacity:1;color:var(--danger)!important}.seo-charts-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.seo-chart-card{border-radius:var(--radius-md);flex-direction:column;gap:16px;padding:20px;display:flex}.chart-header{flex-direction:column;gap:4px;display:flex}.seo-pies-row{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.seo-pie-card{border-radius:var(--radius-md);flex-direction:column;align-items:center;padding:20px;display:flex}.pie-title{color:var(--text-secondary);margin-bottom:12px;font-size:.85rem;font-weight:600}.pie-wrapper{justify-content:center;align-items:center;width:100%;display:flex}.seo-logs-card{border-radius:var(--radius-md);flex-direction:column;gap:16px;padding:20px;display:flex}.logs-header-row{align-items:center;gap:8px;display:flex}.logs-title{color:var(--text-primary);font-size:1.05rem;font-weight:600}.log-history-icon-wrapper{justify-content:center;align-items:center;display:flex}.logs-list{flex-direction:column;gap:10px;max-height:180px;padding-right:8px;display:flex;overflow-y:auto}.log-item{background:var(--bg-primary);border:1px solid var(--border);border-radius:6px;align-items:center;gap:12px;padding:6px 12px;font-size:.8rem;display:flex}.log-date{color:var(--text-muted);font-family:monospace}.log-badge{text-align:center;border-radius:4px;min-width:60px;padding:2px 6px;font-size:.7rem;font-weight:600}.log-badge.add{color:var(--success);background:#10b9811a}.log-badge.delete{color:var(--danger);background:#ef44441a}.log-badge.update{color:var(--accent-blue);background:#2563eb1a}.log-badge.sync{color:var(--warning);background:#f59e0b1a}.log-text{color:var(--text-secondary)}@media (width<=1024px){.seo-control-grid,.seo-charts-grid,.seo-pies-row{grid-template-columns:1fr}}@media (width<=768px){.add-keyword-form{width:100%}.seo-table-header{flex-direction:column;align-items:stretch}}.goals-settings-modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#0f172a66;justify-content:center;align-items:center;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.goals-settings-modal{background:var(--bg-secondary);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:var(--radius-md);flex-direction:column;gap:20px;width:100%;max-width:480px;padding:24px;animation:.2s ease-out scaleIn;display:flex}.modal-header{justify-content:space-between;align-items:center;display:flex}.modal-header h4{margin:0;font-size:1.1rem;font-weight:600}.close-modal-btn{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:var(--transition);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex}.close-modal-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.modal-description{color:var(--text-secondary);margin:0;font-size:.85rem;line-height:1.4}.goals-checkbox-list{flex-direction:column;gap:10px;max-height:200px;padding-right:4px;display:flex;overflow-y:auto}.goal-checkbox-item{border-radius:var(--radius-sm);background:var(--bg-secondary);border:1px solid var(--border);transition:var(--transition);align-items:center;gap:10px;padding:8px 12px;display:flex}.goal-checkbox-item:hover{background:var(--bg-tertiary)}.goal-checkbox-item input[type=checkbox]{cursor:pointer;width:16px;height:16px}.goal-label-text{color:var(--text-primary);cursor:pointer;font-size:.85rem;font-weight:500}.add-goal-form-inline{gap:10px;display:flex}.add-goal-input-inline{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);transition:var(--transition);outline:none;flex:1;padding:8px 12px;font-size:.85rem}.add-goal-input-inline:focus{border-color:var(--primary);box-shadow:0 0 0 2px #3b82f61a}.goals-modal-footer{justify-content:flex-end;gap:12px;display:flex}.goals-header-cell{justify-content:flex-end;align-items:center;gap:6px;display:flex}.btn-inline-gear{color:var(--text-muted);cursor:pointer;transition:var(--transition);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:2px;display:flex}.btn-inline-gear:hover{color:var(--accent-blue);background:var(--bg-tertiary)}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.console-period-select{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;transition:var(--transition);outline:none;padding:4px 8px;font-size:.8rem}.console-period-select:focus{border-color:var(--primary)}.staggered-sync-container{width:100%;margin:8px 0}.staggered-sync-alert{border-radius:var(--radius-sm);border:1px solid #0000;align-items:center;gap:8px;padding:10px 14px;font-size:.75rem;line-height:1.4;display:flex}.staggered-sync-alert.staggered-active{color:var(--warning);background:#f59e0b0f;border-color:#f59e0b26}.staggered-sync-alert.staggered-inactive{color:var(--success);background:#10b9810d;border-color:#10b9811a}.alert-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.staggered-active .alert-dot{background:var(--warning);box-shadow:0 0 8px var(--warning)}.staggered-inactive .alert-dot{background:var(--success)}@keyframes spinGlow{0%{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.3)}to{opacity:1;transform:scale(1)}}.spin-glow{animation:2s ease-in-out infinite spinGlow}.inline-delta-badge{border-radius:4px;margin-top:2px;padding:1px 4px;font-size:.72rem;font-weight:500;display:inline-block}.inline-delta-badge.positive{color:var(--success);background:#10b98114}.inline-delta-badge.negative{color:var(--danger);background:#ef444414}.direct-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0f172a66;justify-content:center;align-items:center;padding:20px;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.direct-modal-card{border:1px solid var(--border,#0f172a14);background:#fff;border-radius:16px;flex-direction:column;width:100%;max-width:680px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 20px 40px #0f172a26}.direct-modal-header{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-header-title{align-items:center;gap:10px;display:flex}.modal-header-title h3{color:var(--text-primary,#0f172a);margin:0;font-size:1.15rem;font-weight:600}.modal-close-btn{color:var(--text-muted,#94a3b8);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 8px;font-size:1.2rem;transition:background-color .2s,border-color .2s,color .2s,box-shadow .2s}.modal-close-btn:hover{color:var(--text-primary,#0f172a);background:#f1f5f9}.modal-tabs-row{background:#f8fafc;border-bottom:1px solid #e2e8f0;gap:12px;padding:12px 24px;display:flex}.modal-tab-btn{color:var(--text-secondary,#475569);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:8px 16px;font-size:.88rem;font-weight:500;transition:background-color .2s,border-color .2s,color .2s,box-shadow .2s}.modal-tab-btn:hover{color:var(--text-primary,#0f172a);background:#e2e8f0}.modal-tab-btn.active{background:var(--accent-blue,#2563eb);color:#fff}.direct-modal-body{flex:1;padding:24px;overflow-y:auto}.section-description{color:var(--text-secondary,#475569);margin-bottom:16px;font-size:.85rem}.accounts-list,.rules-list{flex-direction:column;gap:12px;margin-bottom:20px;display:flex}.account-item-card,.rule-item-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.acc-info,.rule-info{flex-direction:column;gap:4px;display:flex}.acc-name,.rule-name{color:var(--text-primary,#0f172a);font-size:.92rem;font-weight:600}.acc-login,.rule-utm{color:var(--text-secondary,#475569);font-size:.8rem}.form-group-field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.form-group-field label{color:var(--text-secondary,#475569);align-items:center;gap:6px;font-size:.82rem;font-weight:500;display:flex}.form-group-field input{color:var(--text-primary,#0f172a);background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:8px 12px;font-size:.88rem}.form-group-field input:focus{border-color:var(--accent-blue,#2563eb);outline:none;box-shadow:0 0 0 3px #2563eb1a}.tooltip-popover{color:#475569;cursor:help;background:#e2e8f0;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:.72rem;display:inline-flex;position:relative}.direct-modal-footer{background:#fff;border-top:1px solid #f1f5f9;justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.direct-analytics-tab-container{flex-direction:column;gap:20px;display:flex}.direct-tab-header-row{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.direct-module-title{font-size:var(--text-h2);letter-spacing:var(--tracking-snug);color:var(--text-primary);margin:0;font-weight:700}.direct-module-subtitle{font-size:var(--text-sub);color:var(--text-secondary);margin:4px 0 0}.settings-gear-btn{color:var(--text-primary,#0f172a);cursor:pointer;font-size:var(--text-sub);background:#fff;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:8px;padding:8px 16px;font-weight:600;transition:background-color .2s,border-color .2s,color .2s,box-shadow .2s;display:flex;box-shadow:0 1px 3px #0000000d}.settings-gear-btn:hover{border-color:var(--accent-blue,#2563eb);color:var(--accent-blue,#2563eb);background:#f8fafc}.direct-filters-row{border:1px solid var(--border,#0f172a14);box-shadow:var(--shadow,0 4px 20px -2px #0f172a0f);background:#fff;border-radius:12px;padding:16px 20px}.filter-item-group{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.filter-label{font-size:var(--text-label);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--tracking-wide);font-weight:600}.filter-pills{flex-wrap:wrap;gap:8px;display:flex}.filter-pill-btn{color:var(--text-secondary,#475569);font-size:var(--text-sub);cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:20px;padding:6px 12px;font-family:inherit;font-weight:500;transition:background-color .2s,border-color .2s,color .2s,box-shadow .2s}.filter-pill-btn:hover{color:var(--text-primary,#0f172a);background:#f1f5f9;border-color:#cbd5e1}.filter-pill-btn.active{background:var(--accent-blue,#2563eb);border-color:var(--accent-blue,#2563eb);color:#fff;font-weight:600;box-shadow:0 2px 4px #2563eb33}.service-group-badge{color:var(--accent-cyan,#0891b2);font-size:var(--text-label);letter-spacing:.02em;background:#0891b21a;border:1px solid #0891b233;border-radius:6px;padding:3px 8px;font-weight:600}.export-excel-btn{color:#059669;cursor:pointer;background:#10b9811a;border:1px solid #10b98140;border-radius:6px;align-items:center;gap:6px;padding:6px 14px;font-size:.8rem;font-weight:500;transition:background-color .2s,border-color .2s,color .2s,box-shadow .2s;display:flex}.export-excel-btn:hover{background:#10b98133}.roas-badge{border-radius:6px;padding:2px 8px;font-size:.82rem;font-weight:600}.roas-high{color:#059669;background:#10b98126}.roas-good{color:#2563eb;background:#2563eb26}.roas-mid{color:#d97706;background:#f59e0b26}.roas-low{color:#dc2626;background:#ef444426}.direct-charts-row{gap:20px;display:flex}.direct-chart-card,.direct-trend-chart-card,.direct-table-card{border:1px solid var(--border,#0f172a14);box-shadow:var(--shadow,0 4px 20px -2px #0f172a0f);background:#fff;border-radius:14px;padding:20px}.chart-title{color:var(--text-primary,#0f172a);margin-top:0;margin-bottom:12px;font-size:1rem;font-weight:600}.realization-tab{flex-direction:column;gap:24px;width:100%;display:flex}.realization-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;padding:20px;display:flex}.realization-title{font-size:var(--text-h2);letter-spacing:var(--tracking-snug);color:var(--text-primary);margin:0 0 6px;font-weight:700}.realization-subtitle{font-size:var(--text-sub);color:var(--text-muted);max-width:720px;line-height:var(--leading-normal);margin:0}.grain-toggle{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:10px;padding:4px;display:inline-flex}.grain-btn{color:var(--text-secondary);font-size:var(--text-sub);cursor:pointer;transition:var(--transition);background:0 0;border:none;border-radius:8px;padding:8px 14px;font-family:inherit;font-weight:600}.grain-btn.active{background:var(--bg-secondary);color:var(--accent-blue);box-shadow:0 1px 3px #0f172a14}.realization-chart-card{padding:0 0 12px}.realization-chart-wrap{height:300px;padding:8px 16px 16px}.realization-table th,.realization-table td{white-space:nowrap}.realization-table .realiz-name{white-space:normal;min-width:220px}.realiz-name.depth-1{padding-left:12px}.realiz-name.depth-2{padding-left:28px}.row-total td{background:#2563eb0a;font-weight:700}.row-segment td{background:#0f172a05;font-weight:600}.delta-stack{flex-direction:column;align-items:flex-end;gap:2px;line-height:1.2;display:flex}.delta-up{color:#059669;font-weight:600}.delta-down{color:#dc2626;font-weight:600}.delta-neutral{color:var(--text-muted)}.delta-yoy{font-size:.7rem;font-weight:500}@media (width<=768px){.realization-toolbar{flex-direction:column}}.dashboard-page-container{flex-direction:column;gap:24px;width:100%;display:flex}.dashboard-top-navigation{border-radius:var(--radius-md);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 24px;display:flex}.dashboard-breadcrumbs-global{align-items:center;gap:8px;font-size:.9rem;font-weight:500;display:flex}.global-breadcrumb-root{color:var(--text-secondary)}.global-breadcrumb-separator{color:var(--text-muted)}.global-breadcrumb-current{color:var(--text-primary);font-weight:700}.dashboard-top-meta{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.last-updated-badge{color:var(--text-secondary);border:1px solid var(--border);background:#ffffff0a;border-radius:20px;padding:4px 12px;font-size:.8rem;font-weight:500}.reset-all-filters-btn{border:1px solid var(--border);border-radius:var(--radius-sm);height:fit-content;color:var(--text-secondary);padding:4px 10px;font-size:.75rem}.reset-all-filters-btn:hover{border-color:var(--danger);color:var(--danger);background:#ef44440d}.dashboard-demo-banner{color:var(--text-primary);border-radius:var(--radius-md);background:#3b82f60d;border:1px solid #3b82f633;align-items:center;gap:12px;padding:12px 20px;font-size:.85rem;display:flex}.demo-icon{color:var(--accent-blue);font-size:1.1rem}.dashboard-error-banner{border-radius:var(--radius-md);color:var(--text-primary);background:#ef44440d;border:1px solid #ef444433;align-items:center;gap:12px;padding:16px 24px;font-size:.9rem;display:flex}.error-icon{color:var(--danger);font-size:1.2rem}.kpi-cards-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;width:100%;display:grid}.tables-grid{flex-direction:column;gap:24px;width:100%;display:flex}.dashboard-tab-content{width:100%;animation:.4s tabFadeIn}@keyframes tabFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (width<=768px){.kpi-cards-grid{grid-template-columns:1fr}.dashboard-top-navigation{flex-direction:column;align-items:flex-start}}.charts-grid-container{grid-template-columns:repeat(auto-fit,minmax(450px,1fr));gap:24px;margin-top:24px;display:grid}.chart-card{flex-direction:column;min-height:380px;padding:24px;display:flex}.chart-title{color:var(--text-primary);letter-spacing:.5px;margin-bottom:16px;font-size:.95rem;font-weight:600}.chart-wrapper{flex:1;width:100%;height:280px;position:relative}.chart-standalone-card{flex-direction:column;margin-bottom:24px;padding:24px;display:flex}.chart-standalone-header{border-bottom:1px solid var(--border);margin-bottom:20px;padding-bottom:16px}.chart-standalone-title{color:var(--text-primary);letter-spacing:.5px;align-items:center;gap:8px;font-size:1.05rem;font-weight:600;display:flex}.chart-standalone-title svg{color:var(--accent-blue);flex-shrink:0}.tooltip-title{align-items:center;gap:6px;display:flex}.tooltip-title svg{flex-shrink:0}.chart-standalone-subtitle{color:var(--text-muted);margin-top:4px;font-size:.8rem}.chart-standalone-body{width:100%;position:relative}.custom-chart-tooltip{border-radius:var(--radius-sm);background:var(--bg-secondary);border:1px solid var(--border);box-shadow:var(--shadow);pointer-events:none;padding:12px 16px}.tooltip-label{color:var(--text-primary);margin-bottom:4px;font-size:.85rem;font-weight:600}.tooltip-title{color:var(--text-primary);margin-bottom:6px;font-size:.85rem;font-weight:600}.tooltip-value{color:var(--accent-blue);font-size:.9rem;font-weight:700}.tooltip-divider{background-color:var(--border);height:1px;margin:6px 0}.tooltip-item{align-items:center;gap:8px;margin-bottom:4px;font-size:.8rem;display:flex}.tooltip-item:last-child{margin-bottom:0}.tooltip-dot{border-radius:50%;width:6px;height:6px}.tooltip-item-stacked{align-items:center;gap:6px;margin-bottom:4px;font-size:.8rem;display:flex}.tooltip-item-name{color:var(--text-secondary)}.chart-empty,.chart-standalone-empty{height:240px;color:var(--text-muted);border:1px dashed var(--border);border-radius:var(--radius-md);justify-content:center;align-items:center;margin:auto 0;font-size:.9rem;display:flex}.charts-grid-loader,.chart-standalone-loader{height:380px;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:.9rem;display:flex}@media (width<=768px){.charts-grid-container{grid-template-columns:1fr}}.dynamics-page-container{flex-direction:column;gap:24px;width:100%;display:flex}.dynamics-controls{background-color:var(--bg-secondary);justify-content:space-between;align-items:center;width:100%;padding:16px 24px;display:flex}.controls-label{font-size:var(--text-h3);letter-spacing:var(--tracking-snug);color:var(--text-primary);font-weight:700}.comparison-tabs{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);gap:6px;padding:4px;display:flex}.tab-btn{color:var(--text-secondary);font-size:var(--text-sub);cursor:pointer;transition:var(--transition);background:0 0;border:none;border-radius:4px;padding:6px 16px;font-family:inherit;font-weight:600}.tab-btn:hover{color:var(--text-primary);background:var(--bg-tertiary)}.tab-btn.active{background:var(--accent-blue);color:#fff;font-weight:600;box-shadow:0 2px 8px #2563eb33}.dynamics-charts-grid{grid-template-columns:3fr 2fr;gap:24px;width:100%;display:grid}.delta-val{border-radius:4px;padding:2px 6px;font-size:.8rem;font-weight:600}.delta-val.positive{color:var(--success);background:#10b98114}.delta-val.negative{color:var(--danger);background:#ef444414}.delta-val.neutral{color:var(--text-muted)}@media (width<=1024px){.dynamics-charts-grid{grid-template-columns:1fr}}@media (width<=768px){.dynamics-controls{flex-direction:column;align-items:flex-start;gap:12px;padding:16px}.comparison-tabs{width:100%}.tab-btn{text-align:center;flex:1}}.deferred-page-container{flex-direction:column;gap:24px;width:100%;display:flex}.in-progress-badge{color:var(--accent-blue);background:#3b82f614;border-radius:4px;padding:2px 6px;font-size:.75rem;font-weight:500}.text-green{color:var(--success)!important}.text-red{color:var(--danger)!important}.text-blue{color:var(--accent-blue)!important}.costs-page-container{flex-direction:column;gap:24px;width:100%;display:flex}.costs-header-panel{background-color:var(--bg-secondary);justify-content:space-between;align-items:center;width:100%;padding:24px;display:flex}.costs-header-left{align-items:center;gap:16px;display:flex}.costs-header-icon-wrapper{border-radius:var(--radius-md);background:#2563eb14;border:1px solid #2563eb26;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.costs-header-title{font-size:var(--text-h1);color:var(--text-primary);letter-spacing:var(--tracking-tight);font-weight:700}.costs-header-subtitle{font-size:var(--text-sub);color:var(--text-muted);margin-top:4px}.costs-filters-panel{background-color:var(--bg-secondary);flex-wrap:wrap;gap:20px;padding:18px 24px;display:flex}.input-badge{font-size:var(--text-label);border-radius:12px;padding:4px 10px;font-weight:600;display:inline-flex}.input-badge.manual{color:var(--accent-purple);background:#7c3aed14;border:1px solid #7c3aed26}.input-badge.auto_yandex_direct{color:var(--accent-blue);background:#2563eb14;border:1px solid #2563eb26}.table-actions{justify-content:center;gap:8px;display:flex}.btn-action.edit:hover{color:var(--accent-blue)!important}.btn-action.delete:hover{background:#ef44440d;color:var(--danger)!important}.form-select,.form-input{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);transition:var(--transition);outline:none;padding:10px 14px;font-family:inherit;font-size:.85rem}.form-select:focus,.form-input:focus{border-color:var(--accent-blue);background:var(--bg-secondary);box-shadow:0 0 0 2px var(--border-focus)}.form-period-pair{grid-template-columns:1.4fr .9fr;gap:8px;display:grid}.form-select-month,.form-select-year{width:100%;min-width:0}.form-grid-2{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=768px){.costs-header-panel{flex-direction:column;align-items:flex-start;gap:16px;padding:16px}.costs-header-panel .btn{width:100%}.costs-filters-panel{flex-direction:column;align-items:stretch;gap:12px;padding:16px}.filter-select-group,.filter-input-select{width:100%}}@media (width<=500px){.form-grid-2{grid-template-columns:1fr;gap:0}}.users-page-container{flex-direction:column;gap:24px;width:100%;min-width:0;max-width:100%;display:flex}.users-header-panel{background-color:var(--bg-secondary);justify-content:space-between;align-items:center;width:100%;padding:24px;display:flex}.users-header-left{align-items:center;gap:16px;display:flex}.users-header-icon-wrapper{border-radius:var(--radius-md);background:#2563eb14;border:1px solid #2563eb26;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.users-header-title{font-size:var(--text-h1);color:var(--text-primary);letter-spacing:var(--tracking-tight);font-weight:700}.users-header-subtitle{font-size:var(--text-sub);color:var(--text-muted);margin-top:4px}.users-table-wrap.table-responsive{max-width:100%;overflow-x:auto}.users-table-wrap .table-header-title{width:100%;min-width:0;max-width:none}.users-table.data-table{table-layout:fixed;width:100%;min-width:0}.users-table col.col-user{width:auto}.users-table col.col-roles{width:24%}.users-table col.col-status{width:6.5rem}.users-table col.col-seen{width:6.75rem}.users-table col.col-actions{width:7.5rem}.users-table.data-table th,.users-table.data-table td,.users-table.data-table td:first-child,.users-table.data-table td:not(:first-child){white-space:normal;word-break:break-word;overflow-wrap:anywhere;min-width:0;max-width:none}.users-table.data-table th,.users-table.data-table td{padding:12px 10px}.users-login{color:var(--text-primary);overflow-wrap:anywhere;font-weight:600;display:block}.users-display-name{color:var(--text-muted);margin-top:2px;font-size:.75rem;font-weight:400;display:block}.users-seen{color:var(--text-muted);white-space:pre-line;font-size:.78rem;line-height:1.35}.users-actions-cell{width:132px}.users-table .table-actions{flex-wrap:nowrap;justify-content:flex-end;gap:2px}.users-table .btn-action.is-danger:hover{background:#ef444414}.users-table .btn-action.is-success:hover{background:#10b98114}.users-table .btn-action:disabled{opacity:.4;cursor:not-allowed}.users-card-meta{color:var(--text-muted);font-size:.78rem}.users-row{cursor:pointer}.users-row.is-open{background:#2563eb0a}.role-badges{flex-wrap:wrap;gap:6px;display:flex}.role-badge{color:var(--text-secondary);border:1px solid var(--border);background:#0f172a0d;border-radius:12px;padding:3px 8px;font-size:.72rem;font-weight:600;display:inline-flex}.role-badge.viewer{color:var(--text-secondary);background:#94a3b81f}.role-badge.analyst{color:var(--accent-blue);background:#2563eb14;border-color:#2563eb26}.role-badge.marketer{color:var(--accent-purple);background:#7c3aed14;border-color:#7c3aed26}.role-badge.admin{color:#b45309;background:#f59e0b1f;border-color:#f59e0b33}.status-badge{border-radius:12px;padding:4px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.status-badge.active{color:var(--success);background:#10b9811a}.status-badge.disabled{color:var(--danger);background:#ef444414}.table-actions{justify-content:center;align-items:center;gap:8px;display:flex}.btn-action{cursor:pointer;transition:var(--transition);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:6px;display:flex}.btn-action:hover{background:var(--bg-tertiary)}.btn-tiny{padding:4px 10px;font-size:.75rem}.btn-danger-ghost{color:var(--danger);background:0 0;border-color:#ef444440}.btn-danger-ghost:hover{background:#ef44440f}.btn-danger-ghost:disabled{opacity:.45;cursor:not-allowed}.users-card-row td{background:var(--bg-tertiary);white-space:normal!important}.users-card{flex-direction:column;gap:12px;padding:8px 4px 12px;display:flex}.users-card-grid{grid-template-columns:1fr 1.4fr;gap:16px;display:grid}.users-card-actions{flex-wrap:wrap;justify-content:flex-start;gap:8px;display:flex}.role-checks{flex-wrap:wrap;gap:8px 16px;display:flex}.role-check{color:var(--text-secondary);cursor:pointer;align-items:center;gap:8px;font-size:.85rem;display:inline-flex}.generate-check{margin-bottom:16px}.users-audit{border-top:1px solid var(--border);padding-top:12px}.users-audit-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:.75rem;font-weight:600}.users-audit-list{flex-direction:column;gap:6px;list-style:none;display:flex}.users-audit-list li{color:var(--text-secondary);flex-wrap:wrap;gap:10px;font-size:.8rem;display:flex}.users-audit-time{color:var(--text-muted);min-width:170px}.users-audit-action{font-weight:600}.users-audit-target{color:var(--text-muted)}.users-secret-box{flex-direction:column;align-items:flex-start;gap:12px;padding:8px 0 4px;display:flex}.users-secret-title{color:var(--text-primary);font-weight:600}.users-secret-value{background:var(--bg-tertiary);border:1px dashed var(--border);border-radius:var(--radius-sm);letter-spacing:.4px;word-break:break-all;width:100%;padding:12px 14px;font-size:1rem;display:block}.users-secret-hint{color:var(--text-muted);font-size:.8rem}.users-reset-note{color:var(--text-secondary);margin-bottom:16px;font-size:.85rem}.modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:2000;background:#0f172a66;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-content{background-color:var(--bg-secondary);flex-direction:column;width:100%;max-width:540px;padding:24px;display:flex;position:relative}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;display:flex}.modal-title{color:var(--text-primary);letter-spacing:.5px;font-size:1.1rem;font-weight:600}.modal-close{color:var(--text-muted);cursor:pointer;transition:var(--transition);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:6px;display:flex}.modal-close:hover{color:var(--text-primary);background-color:var(--bg-tertiary)}.form-field{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.form-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:.75rem;font-weight:600}.form-input{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);transition:var(--transition);outline:none;padding:10px 14px;font-family:inherit;font-size:.85rem}.form-input:focus{border-color:var(--accent-blue);box-shadow:0 0 0 2px var(--border-focus)}.modal-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:12px;margin-top:20px;padding-top:16px;display:flex}.form-error-alert{color:var(--danger);border-radius:var(--radius-sm);background:#ef444414;border:1px solid #ef444426;margin-bottom:18px;padding:10px 14px;font-size:.8rem;font-weight:600}@media (width<=768px){.users-header-panel{flex-direction:column;align-items:flex-start;gap:16px;padding:16px}.users-header-panel .btn{width:100%}.users-card-grid{grid-template-columns:1fr}}.login-container{background-color:var(--bg-primary);width:100vw;min-height:100vh;transition:var(--transition);justify-content:center;align-items:center;font-family:inherit;display:flex;position:relative;overflow:hidden}.login-card{z-index:10;border-radius:var(--radius-lg);flex-direction:column;align-items:center;width:100%;max-width:440px;margin:20px;padding:40px;display:flex;position:relative}.login-logo{margin-bottom:16px;font-size:2.8rem}.login-title{text-align:center;letter-spacing:-.5px;margin-bottom:8px;font-size:1.6rem;font-weight:700}.login-subtitle{color:var(--text-secondary);text-align:center;margin-bottom:32px;font-size:.88rem}.login-form{flex-direction:column;gap:20px;width:100%;display:flex}.input-group{flex-direction:column;gap:8px;width:100%;display:flex}.input-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:6px;font-size:.82rem;font-weight:600;display:flex}.input-wrapper{align-items:center;width:100%;display:flex;position:relative}.input-field{background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);transition:var(--transition);outline:none;padding:12px 16px 12px 42px;font-family:inherit;font-size:.95rem}.input-field:focus{border-color:var(--accent-blue);box-shadow:0 0 0 2px var(--border-focus)}.input-icon{color:var(--text-muted);pointer-events:none;justify-content:center;align-items:center;font-size:1.1rem;display:flex;position:absolute;left:14px}.password-toggle{color:var(--text-muted);cursor:pointer;transition:var(--transition);background:0 0;border:none;justify-content:center;align-items:center;font-size:1.1rem;display:flex;position:absolute;right:14px}.password-toggle:hover{color:var(--text-primary)}.login-btn{justify-content:center;align-items:center;gap:8px;width:100%;height:46px;margin-top:10px;font-size:.98rem;font-weight:600;display:flex}.login-secondary-btn{width:100%;height:42px;font-size:.9rem;font-weight:500}.error-message-box{border-radius:var(--radius-sm);color:var(--danger);background-color:#ef444414;border:1px solid #ef444433;align-items:center;gap:10px;width:100%;padding:12px 16px;font-size:.85rem;animation:.5s ease-in-out shake;display:flex}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}.boot-screen{background-color:var(--bg-primary);justify-content:center;align-items:center;width:100vw;min-height:100vh;display:flex}.boot-spinner{border:2px solid var(--border);border-top-color:var(--accent-blue);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite boot-spin}@keyframes boot-spin{to{transform:rotate(360deg)}}.page-fade-enter{opacity:0}.page-fade-enter-active{opacity:1;transition:opacity .3s ease-in}
