@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap";@import "https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:wght,FILL@100..700,0..1&display=swap";:root{--surface:#fbf8ff;--surface-dim:#d9d9e7;--surface-bright:#fbf8ff;--surface-container-lowest:#fff;--surface-container-low:#f3f2ff;--surface-container:#ededfb;--surface-container-high:#e7e7f5;--surface-container-highest:#e1e1ef;--on-surface:#191b25;--on-surface-variant:#434656;--inverse-surface:#2e303a;--inverse-on-surface:#f0effe;--outline:#737688;--outline-variant:#c3c5d9;--primary:#003ec7;--on-primary:#fff;--primary-container:#0052ff;--on-primary-container:#dfe3ff;--inverse-primary:#b7c4ff;--primary-fixed:#dde1ff;--primary-fixed-dim:#b7c4ff;--on-primary-fixed:#001452;--on-primary-fixed-variant:#0038b6;--secondary:#4648d4;--on-secondary:#fff;--secondary-container:#6063ee;--on-secondary-container:#fffbff;--secondary-fixed:#e1e0ff;--secondary-fixed-dim:#c0c1ff;--on-secondary-fixed:#07006c;--on-secondary-fixed-variant:#2f2ebe;--tertiary:#952200;--on-tertiary:#fff;--tertiary-container:#bf3003;--on-tertiary-container:#ffddd5;--tertiary-fixed:#ffdbd2;--tertiary-fixed-dim:#ffb4a1;--on-tertiary-fixed:#3c0800;--on-tertiary-fixed-variant:#891e00;--error:#ba1a1a;--on-error:#fff;--error-container:#ffdad6;--on-error-container:#93000a;--background:#f8fafc;--on-background:#191b25;--surface-tint:#004ced;--surface-variant:#e1e1ef;--success:#10b981;--success-bg:#10b9811a;--success-dark:#047857;--success-light:#d1fae5;--success-border:#a7f3d0;--warning:#f59e0b;--warning-bg:#f59e0b1a;--info:#3b82f6;--info-bg:#3b82f61a;--font-family:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--container-padding:24px;--element-gap:16px;--card-inner-padding:20px;--row-height-standard:56px;--sidebar-width:240px;--radius-sm:.25rem;--radius:.5rem;--radius-md:.75rem;--radius-lg:1rem;--radius-xl:1.5rem;--radius-full:9999px;--shadow-sm:0 1px 2px 0 #0000000a;--shadow:0 4px 6px -1px #0000000a, 0 2px 4px -2px #0000000a;--shadow-md:0 10px 15px -3px #0000000a, 0 4px 6px -4px #0000000a;--shadow-card:0 10px 25px -5px #00000005, 0 8px 10px -6px #00000003;--transition-fast:.15s ease;--transition:.2s ease;--transition-slow:.3s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}body{font-family:var(--font-family);color:var(--on-surface);background-color:var(--background);min-height:100vh;font-size:14px;font-weight:400;line-height:20px}#root{min-height:100vh}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--outline-variant);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--outline)}.text-display-metrics{font-family:var(--font-family);letter-spacing:-.02em;font-size:32px;font-weight:700;line-height:40px}.text-headline-page{font-family:var(--font-family);font-size:24px;font-weight:700;line-height:32px}.text-headline-card{font-family:var(--font-family);font-size:16px;font-weight:600;line-height:24px}.text-body-main{font-family:var(--font-family);font-size:14px;font-weight:400;line-height:20px}.text-body-data{font-family:var(--font-family);font-size:14px;font-weight:500;line-height:20px}.text-label-caps{font-family:var(--font-family);letter-spacing:.05em;text-transform:uppercase;font-size:12px;font-weight:600;line-height:16px}.text-label-sm{font-family:var(--font-family);font-size:12px;font-weight:400;line-height:16px}.material-symbols-outlined{font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;-webkit-user-select:none;user-select:none}.material-symbols-outlined.filled{font-variation-settings:"FILL" 1, "wght" 400, "GRAD" 0, "opsz" 24}.app-layout{min-height:100vh;display:flex}.app-layout.sidebar-collapsed{--sidebar-width:76px}.main-wrapper{margin-left:var(--sidebar-width);min-height:100vh;transition:margin-left var(--transition-slow);flex-direction:column;flex:1;display:flex}.main-content{padding:var(--container-padding);flex:1;width:100%;max-width:1600px;margin:0 auto}.card{background:var(--surface-container-lowest);border-radius:var(--radius-md);border:1px solid var(--outline-variant);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition)}.card:hover{box-shadow:var(--shadow)}.card-padding{padding:var(--card-inner-padding)}.badge{border-radius:var(--radius-sm);align-items:center;padding:2px 10px;font-size:12px;font-weight:500;line-height:18px;display:inline-flex}.badge-active{background:var(--success-light);color:var(--success-dark);border:1px solid var(--success-border)}.badge-paused{background:var(--surface-variant);color:var(--on-surface-variant)}.badge-draft{background:var(--warning-bg);color:var(--warning)}.btn{border-radius:var(--radius);cursor:pointer;transition:all var(--transition);white-space:nowrap;border:none;justify-content:center;align-items:center;gap:8px;padding:8px 16px;font-size:14px;font-weight:500;line-height:20px;text-decoration:none;display:inline-flex}.btn-primary{background:var(--primary);color:var(--on-primary)}.btn-primary:hover{background:var(--on-primary-fixed-variant)}.btn-success{background:var(--success);color:#fff}.btn-success:hover{background:#059669}.btn-secondary{background:var(--surface-container-lowest);color:var(--on-surface-variant);border:1px solid var(--outline-variant)}.btn-secondary:hover{background:var(--surface-container)}.btn-icon{border-radius:var(--radius-full);color:var(--on-surface-variant);cursor:pointer;transition:all var(--transition);background:0 0;border:none;justify-content:center;align-items:center;padding:8px;display:flex}.btn-icon:hover{background:var(--surface-container-high);color:var(--on-surface)}.input{border:1px solid var(--outline-variant);border-radius:var(--radius);width:100%;font-family:var(--font-family);color:var(--on-surface);background:var(--surface-container-lowest);transition:border-color var(--transition), box-shadow var(--transition);outline:none;padding:8px 12px;font-size:14px;line-height:20px}.input::placeholder{color:var(--outline)}.input:focus{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.data-table{text-align:left;border-collapse:collapse;width:100%}.data-table thead th{letter-spacing:.05em;text-transform:uppercase;color:var(--on-surface-variant);border-bottom:1px solid var(--outline-variant);background:var(--surface-container-lowest);padding:12px 20px;font-size:12px;font-weight:600;line-height:16px}.data-table tbody td{color:var(--on-surface);padding:12px 20px;font-size:14px;line-height:20px}.data-table tbody tr{height:var(--row-height-standard);transition:background-color var(--transition);border-bottom:1px solid #c3c5d94d}.data-table tbody tr:hover{background:var(--surface-container-low)}.growth-indicator{border-radius:var(--radius-full);align-items:center;gap:2px;padding:2px 8px;font-size:14px;font-weight:500;line-height:20px;display:inline-flex}.growth-up{color:var(--success);background:var(--success-bg)}.growth-down{color:var(--error);background:var(--error-container)}.growth-neutral{color:var(--on-surface-variant);background:var(--surface-variant)}.sparkline{align-items:flex-end;gap:4px;height:32px;margin-top:16px;display:flex}.spark-bar{opacity:.9;transition:height var(--transition-slow);border-radius:4px 4px 0 0;flex:1;min-width:0}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-in{animation:.4s forwards fadeIn}.animate-slide-in{animation:.3s forwards slideInLeft}.animate-scale-in{animation:.2s forwards scaleIn}.delay-1{opacity:0;animation-delay:50ms}.delay-2{opacity:0;animation-delay:.1s}.delay-3{opacity:0;animation-delay:.15s}.delay-4{opacity:0;animation-delay:.2s}.delay-5{opacity:0;animation-delay:.25s}.delay-6{opacity:0;animation-delay:.3s}.tooltip-wrapper{position:relative}.tooltip-wrapper:hover .tooltip{opacity:1;visibility:visible;transform:translateY(0)}.tooltip{background:var(--inverse-surface);color:var(--inverse-on-surface);border-radius:var(--radius);white-space:nowrap;opacity:0;visibility:hidden;transition:all var(--transition);pointer-events:none;z-index:50;padding:6px 12px;font-size:12px;font-weight:500;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)translateY(4px)}.page-enter{animation:.3s forwards fadeIn}@media (width<=768px){.main-wrapper{margin-left:0;padding-bottom:72px}:root{--sidebar-width:0px;--container-padding:16px;--card-inner-padding:16px}.main-content{padding:14px}.text-display-metrics{font-size:26px;line-height:32px}.text-headline-page{font-size:20px;line-height:28px}.data-table{min-width:640px}.data-table thead th,.data-table tbody td{padding:10px 12px}}.sidebar{height:100%;width:var(--sidebar-width);background:var(--surface-container-lowest);border-right:1px solid var(--outline-variant);padding:var(--element-gap);z-index:20;transition:width var(--transition-slow), transform var(--transition);flex-direction:column;gap:8px;display:flex;position:fixed;top:0;left:0;overflow:hidden auto}.sidebar-brand{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;padding:6px 8px 12px;display:flex}.sidebar-brand-logo{object-fit:contain;width:172px;max-width:100%;height:auto;display:block}.sidebar-collapse-btn{border:1px solid var(--outline-variant);border-radius:var(--radius-full);background:var(--surface-container-lowest);width:32px;height:32px;color:var(--on-surface-variant);cursor:pointer;transition:background var(--transition), color var(--transition), border-color var(--transition), box-shadow var(--transition);flex:0 0 32px;justify-content:center;align-items:center;display:inline-flex}.sidebar-collapse-btn:hover{border-color:var(--outline);background:var(--surface-container-low);color:var(--on-surface);box-shadow:var(--shadow-sm)}.sidebar-cta{border-radius:var(--radius);width:100%;padding:10px 16px;font-size:14px;font-weight:500}.sidebar-nav{flex-direction:column;flex:1;gap:4px;margin-top:16px;display:flex}.sidebar-nav-item{border-radius:var(--radius);color:var(--on-surface-variant);cursor:pointer;transition:all var(--transition);text-align:left;background:0 0;border:none;align-items:center;gap:12px;width:100%;padding:10px 12px;font-size:14px;font-weight:400;line-height:20px;text-decoration:none;display:flex}.sidebar-nav-item:hover{background:var(--surface-container)}.sidebar-nav-item.active{background:var(--surface-container-low);color:var(--primary);font-weight:500;transform:scale(.98)}.sidebar-item-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;transition:opacity var(--transition), width var(--transition), transform var(--transition);overflow:hidden}.sidebar.sidebar-collapsed{padding:14px 12px}.sidebar.sidebar-collapsed .sidebar-brand{justify-content:center;padding:4px 0 12px}.sidebar.sidebar-collapsed .sidebar-brand-logo{display:none}.sidebar.sidebar-collapsed .sidebar-cta,.sidebar.sidebar-collapsed .sidebar-nav-item{justify-content:center;gap:0;padding:10px}.sidebar.sidebar-collapsed .sidebar-item-label{opacity:0;pointer-events:none;width:0;transform:translate(-4px)}.sidebar.sidebar-collapsed .sidebar-user{justify-content:center;gap:0;padding:10px 0}.sidebar.sidebar-collapsed .sidebar-footer{align-items:stretch}.sidebar-footer{border-top:1px solid var(--outline-variant);flex-direction:column;gap:4px;padding-top:16px;display:flex}.sidebar-user{border-radius:var(--radius);color:var(--on-surface-variant);align-items:center;gap:12px;padding:10px 12px;font-size:14px;line-height:20px;display:flex}.sidebar-user-avatar{border-radius:var(--radius-full);background:var(--surface-container-high);width:32px;height:32px;color:var(--primary);justify-content:center;align-items:center;display:flex}@media (width<=768px){.sidebar{border-right:0;border-top:1px solid var(--outline-variant);grid-template-columns:1fr;width:100%;height:64px;padding:6px 10px;display:grid;top:auto;bottom:0;overflow:visible;transform:none;box-shadow:0 -8px 24px #191b2514}.sidebar.sidebar-collapsed{padding:6px 10px}.sidebar-brand,.sidebar-cta,.sidebar-footer{display:none}.sidebar-nav{flex-direction:row;justify-content:space-around;gap:6px;margin-top:0}.sidebar-nav-item{text-align:center;border-radius:var(--radius);flex-direction:column;flex:1;justify-content:center;gap:3px;min-width:0;padding:7px 6px;font-size:11px;line-height:14px}.sidebar.sidebar-collapsed .sidebar-nav-item{gap:3px;padding:7px 6px}.sidebar.sidebar-collapsed .sidebar-item-label{opacity:1;pointer-events:auto;width:auto;overflow:visible;transform:none}.sidebar-nav-item.active{transform:none}}.topbar{background:var(--surface-container-lowest);border-bottom:1px solid var(--outline-variant);padding:0 var(--container-padding);height:var(--row-height-standard);z-index:10;transition:background-color var(--transition);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.topbar-left{flex:1;align-items:center;gap:24px;min-width:0;display:flex}.topbar-brand{flex:none;align-items:center;text-decoration:none;display:none}.topbar-brand img{object-fit:contain;width:148px;height:auto;display:block}.topbar-search-wrapper{width:256px;position:relative}.topbar-search-icon{color:var(--on-surface-variant);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.topbar-search-input{background:var(--surface-container);border-radius:var(--radius-full);width:100%;font-family:var(--font-family);color:var(--on-surface);transition:all var(--transition);border:none;outline:none;padding:6px 16px 6px 36px;font-size:14px;line-height:20px}.topbar-search-input::placeholder{color:var(--on-surface-variant)}.topbar-search-input:focus{box-shadow:0 0 0 1px var(--primary)}.topbar-center-title{position:absolute;left:50%;transform:translate(-50%)}.topbar-title-group{align-items:baseline;gap:16px;display:flex}.topbar-page-title{color:var(--on-surface);font-size:24px;font-weight:700;line-height:32px}.topbar-page-subtitle{color:var(--on-surface-variant);font-size:14px;font-weight:400;line-height:20px}.topbar-actions{align-items:center;gap:16px;display:flex}.topbar-icon-actions{align-items:center;gap:4px;display:flex}@media (width<=768px){.topbar{gap:10px;height:auto;min-height:58px;padding:10px 14px}.topbar-left{gap:10px;min-width:0}.topbar-brand{display:inline-flex}.topbar-brand img{width:112px}.topbar-search-wrapper{width:100%;max-width:160px}.topbar-center-title{flex:none;position:static;transform:none}.topbar-center-title .text-headline-page{line-height:22px;font-size:16px!important;font-weight:600!important}.topbar-actions{gap:6px}.topbar-icon-actions .btn-icon:first-child{display:none}}@media (width<=480px){.topbar-search-wrapper{max-width:120px}.topbar-brand img{width:96px}.topbar-search-input{font-size:13px}.topbar-page-title{font-size:20px}.topbar-page-subtitle{display:none}}.kpi-card{background:var(--surface-container-lowest);border-radius:var(--radius-md);padding:var(--card-inner-padding);border:1px solid var(--outline-variant);box-shadow:var(--shadow-card);transition:transform var(--transition-slow), box-shadow var(--transition-slow);flex-direction:column;display:flex}.kpi-card-dashboard{justify-content:space-between;min-height:180px}.kpi-card-dashboard:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.kpi-card-report{justify-content:space-between;min-height:132px}.kpi-card-report:hover{box-shadow:var(--shadow-md)}.kpi-card-header{justify-content:space-between;align-items:flex-start;display:flex}.kpi-card-icon{border-radius:var(--radius-md);justify-content:center;align-items:center;width:40px;height:40px;display:flex}.kpi-card-body{margin-top:12px}.kpi-card-label{color:var(--on-surface-variant);margin-bottom:4px;font-size:14px;font-weight:400}.kpi-card-value{color:var(--on-surface)}@media (width<=768px){.kpi-card-dashboard{min-height:140px}.kpi-card-report{min-height:112px}.kpi-card-icon{border-radius:var(--radius);width:36px;height:36px}.kpi-card-body{margin-top:8px}.sparkline{height:24px;margin-top:10px}}.performance-chart{flex-direction:column;display:flex;overflow:hidden}.performance-chart-header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:16px;display:flex}.chart-series-picker{flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:390px;display:flex}.chart-series-toggle{border:1px solid var(--outline-variant);border-radius:var(--radius-full);background:var(--surface-container-lowest);min-height:30px;color:var(--on-surface-variant);cursor:pointer;transition:background var(--transition), color var(--transition), border-color var(--transition), box-shadow var(--transition);align-items:center;gap:6px;padding:5px 9px;font-size:11px;font-weight:800;line-height:14px;display:inline-flex}.chart-series-toggle:hover{color:var(--on-surface);border-color:var(--outline)}.chart-series-toggle.active{color:var(--on-surface);background:var(--surface-container-low);box-shadow:var(--shadow-sm)}.chart-series-toggle input{opacity:0;pointer-events:none;position:absolute}.chart-series-toggle:has(input:focus-visible){outline:2px solid var(--primary);outline-offset:2px}.chart-summary-row{grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:10px;margin-bottom:16px;display:grid}.chart-summary-chip{border-radius:var(--radius);background:linear-gradient(180deg, #ffffffeb, #f3f2ff94), var(--surface-container-lowest);min-width:0;transition:border-color var(--transition), background var(--transition);border:1px solid #003ec729;grid-template-columns:auto 1fr;align-items:center;gap:6px 8px;padding:10px 12px;display:grid}.chart-summary-chip span:not(.chart-legend-dot){min-width:0;color:var(--on-surface-variant);text-transform:uppercase;font-size:12px;font-weight:800;line-height:16px}.chart-summary-chip strong{color:var(--on-surface);text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;font-size:20px;font-weight:800;line-height:26px;overflow:hidden}.chart-legend-dot{border-radius:var(--radius-full);flex:0 0 10px;width:10px;height:10px;box-shadow:0 0 0 4px #191b250a}.chart-container{border-radius:var(--radius);background:linear-gradient(180deg, #fbf8ffc7, #ffffffeb), var(--surface-container-lowest);border:1px solid #c3c5d97a;flex:1;min-height:360px;padding:6px 0 0;overflow:hidden}.chart-empty-state{min-height:360px;color:var(--on-surface-variant);border:1px dashed var(--outline-variant);border-radius:var(--radius);background:var(--surface-container-low);justify-content:center;align-items:center;display:flex}.chart-tooltip{border-radius:var(--radius);min-width:190px;box-shadow:var(--shadow-md);background:#fffffffa;border:1px solid #c3c5d9db;padding:12px 14px}.chart-tooltip-label{color:var(--on-surface);margin-bottom:9px;font-size:12px;font-weight:800}.chart-tooltip-value{grid-template-columns:auto 1fr auto;align-items:center;gap:8px;margin-bottom:6px;font-size:13px;font-weight:700;display:grid}.chart-tooltip-value:last-child{margin-bottom:0}.chart-tooltip-value strong{color:var(--on-surface);font-weight:800}.chart-tooltip-dot{border-radius:var(--radius-full);width:8px;height:8px}@media (width<=768px){.performance-chart-header{flex-direction:column;gap:12px;margin-bottom:12px}.chart-series-picker{justify-content:flex-start;max-width:none}.chart-summary-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px}.chart-summary-chip{grid-template-columns:auto 1fr}.chart-summary-chip strong{grid-column:1/-1;font-size:18px}.chart-container,.chart-empty-state{min-height:280px}}@media (width<=420px){.chart-summary-row{grid-template-columns:1fr}.chart-series-toggle{flex:calc(50% - 6px);justify-content:center}}.top-campaigns{background:linear-gradient(180deg, #fffffffa, #f3f2ffc2), var(--surface-container-lowest);flex-direction:column;gap:14px;padding:16px;display:flex;position:relative;overflow:visible}.top-campaigns-header{border-radius:var(--radius);background:radial-gradient(circle at 100% 0,#10b98129,#0000 34%),linear-gradient(135deg,#003ec71a,#ffffffdb);border:1px solid #003ec724;justify-content:space-between;align-items:center;gap:14px;padding:14px;display:flex}.top-campaigns-title-block{min-width:0}.top-campaigns-kicker{color:var(--primary);text-transform:uppercase;align-items:center;gap:6px;margin-bottom:5px;font-size:11px;font-weight:800;line-height:14px;display:inline-flex}.top-campaigns-kicker:before{content:"";background:var(--success);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #10b9811f}.top-campaigns-title-block p{color:var(--on-surface-variant);margin-top:3px;font-size:12px;font-weight:500;line-height:16px}.top-campaigns-header-icon{border-radius:var(--radius);width:42px;height:42px;color:var(--primary);box-shadow:var(--shadow-sm);background:#ffffffc7;border:1px solid #003ec729;flex:0 0 42px;justify-content:center;align-items:center;display:inline-flex}.top-campaigns-period-card{border-radius:var(--radius);background:#ffffffb8;border:1px solid #c3c5d9c7;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.top-campaigns-period-main{gap:3px;min-width:0;display:grid}.top-campaigns-period-main span{color:var(--on-surface-variant);text-transform:uppercase;font-size:11px;font-weight:800;line-height:14px}.top-campaigns-period-main strong{color:var(--on-surface);font-size:13px;font-weight:800;line-height:18px}.top-campaigns-count-pill{border-radius:var(--radius-full);background:var(--primary-fixed);color:var(--primary);white-space:nowrap;border:1px solid #003ec724;flex:none;padding:6px 9px;font-size:12px;font-weight:800;line-height:16px}.top-campaigns-filter-row{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:8px;display:grid}.top-campaigns-date-filter{border:1px solid var(--outline-variant);border-radius:var(--radius);background:var(--surface-container);grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:4px;display:grid}.top-campaigns-date-filter button,.calendar-filter-trigger,.segment-btn,.calendar-header button,.calendar-actions button,.calendar-grid button{font-family:var(--font-family)}.top-campaigns-date-filter button{min-height:36px;color:var(--on-surface-variant);cursor:pointer;transition:background var(--transition), color var(--transition), box-shadow var(--transition);background:0 0;border:0;border-radius:7px;font-size:12px;font-weight:800}.top-campaigns-date-filter button:hover{color:var(--on-surface)}.top-campaigns-date-filter button.active{background:var(--surface-container-lowest);color:var(--primary);box-shadow:var(--shadow-sm)}.top-campaigns-calendar-filter{min-width:0;position:relative}.calendar-filter-trigger{border:1px solid var(--outline-variant);border-radius:var(--radius);background:var(--surface-container-lowest);min-height:46px;color:var(--on-surface);cursor:pointer;transition:border-color var(--transition), box-shadow var(--transition), background var(--transition), color var(--transition);justify-content:center;align-items:center;gap:7px;padding:0 12px;font-size:12px;font-weight:800;display:inline-flex}.calendar-filter-trigger:hover,.calendar-filter-trigger.active{border-color:var(--primary);background:var(--primary-fixed);color:var(--primary);box-shadow:0 0 0 3px #003ec714}.calendar-filter-trigger:disabled{cursor:not-allowed;opacity:.65;box-shadow:none}.calendar-filter-trigger .material-symbols-outlined{font-size:18px}.top-campaigns-calendar{z-index:20;border:1px solid var(--outline-variant);border-radius:var(--radius-md);background:var(--surface-container-lowest);width:min(304px,100vw - 48px);box-shadow:var(--shadow-md);padding:12px;position:absolute;top:calc(100% + 8px);right:0}.calendar-header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.calendar-header strong{color:var(--on-surface);font-size:14px}.calendar-header button,.calendar-actions button{border:1px solid var(--outline-variant);border-radius:var(--radius);background:var(--surface-container-lowest);color:var(--on-surface);cursor:pointer}.calendar-header button{justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.calendar-header .material-symbols-outlined{font-size:18px}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.calendar-weekdays{margin-bottom:5px}.calendar-weekdays span{color:var(--on-surface-variant);text-align:center;font-size:10px;font-weight:800}.calendar-grid button{aspect-ratio:1;min-width:0;color:var(--on-surface);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;font-size:12px;font-weight:800}.calendar-grid button:hover:not(:disabled){background:var(--surface-container)}.calendar-grid button.muted{color:var(--outline)}.calendar-grid button.in-range{background:var(--primary-fixed);color:var(--primary)}.calendar-grid button.selected{background:var(--primary);border-color:var(--primary);color:#fff}.calendar-grid button:disabled{cursor:not-allowed;color:var(--outline-variant)}.calendar-actions{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.calendar-actions button{min-height:32px;padding:0 12px;font-size:12px;font-weight:800}.calendar-actions button:last-child{background:var(--primary);border-color:var(--primary);color:#fff}.segment-control{border:1px solid var(--outline-variant);border-radius:var(--radius);background:var(--surface-container);grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;display:grid}.segment-btn{min-height:40px;color:var(--on-surface-variant);cursor:pointer;text-align:center;transition:background var(--transition), box-shadow var(--transition), color var(--transition);background:0 0;border:0;border-radius:7px;font-size:13px;font-weight:800}.segment-btn:hover{color:var(--on-surface)}.segment-btn.active{background:var(--surface-container-lowest);color:var(--on-surface);box-shadow:var(--shadow-sm)}.top-campaigns-summary{border-radius:var(--radius-md);background:linear-gradient(135deg, #003ec717, #10b9811a), var(--surface-container-low);border:1px solid #003ec724;justify-content:space-between;align-items:center;gap:16px;min-height:78px;padding:14px 16px;display:flex}.top-campaigns-summary-label{color:var(--on-surface-variant);text-transform:uppercase;margin-bottom:4px;font-size:11px;font-weight:800;line-height:14px;display:block}.top-campaigns-summary strong{color:var(--on-surface);font-size:28px;line-height:1;display:block}.top-campaigns-summary small{color:var(--on-surface-variant);margin-top:5px;font-size:12px;font-weight:600;line-height:16px;display:block}.top-campaigns-summary .material-symbols-outlined{border-radius:var(--radius);background:var(--surface-container-lowest);width:42px;height:42px;color:var(--primary);box-shadow:var(--shadow-sm);flex:0 0 42px;justify-content:center;align-items:center;display:flex}.top-campaigns-ranking{flex-direction:column;gap:10px;min-height:214px;display:flex}.top-campaign-row{border-radius:var(--radius);transition:border-color var(--transition), background var(--transition), transform var(--transition);background:#ffffffb8;border:1px solid #c3c5d9a8;flex-direction:column;gap:8px;padding:10px;display:flex}.top-campaign-row:hover{background:var(--surface-container-lowest);border-color:#003ec73d;transform:translateY(-1px)}.top-campaign-row-leader{background:linear-gradient(135deg, #003ec712, #ffffffeb), var(--surface-container-lowest);border-color:#003ec747}.top-campaign-row-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.top-campaign-name-group{align-items:center;gap:9px;min-width:0;display:flex}.top-campaign-rank{background:var(--surface-container);width:26px;height:26px;color:var(--on-surface-variant);border-radius:50%;flex:0 0 26px;justify-content:center;align-items:center;font-size:12px;font-weight:800;display:inline-flex}.top-campaign-row-leader .top-campaign-rank{background:var(--primary);color:#fff}.top-campaign-name{min-width:0;color:var(--on-surface);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:800;overflow:hidden}.top-campaign-row-top strong{color:var(--on-surface);flex:none;font-size:13px;font-weight:800}.top-campaign-track{background:var(--surface-container);border-radius:999px;height:8px;overflow:hidden}.top-campaign-fill{border-radius:inherit;min-width:10px;height:100%;transition:width var(--transition-slow);display:block}.top-campaigns-empty{min-height:214px;color:var(--on-surface-variant);text-align:center;border:1px dashed var(--outline-variant);border-radius:var(--radius-md);background:#ffffff94;justify-content:center;align-items:center;padding:20px;display:flex}.top-campaigns-link{width:fit-content;color:var(--primary);font-family:var(--font-family);cursor:pointer;transition:color var(--transition);background:0 0;border:0;align-items:center;gap:4px;margin-top:auto;padding:0;font-size:13px;font-weight:800;text-decoration:none;display:flex}.top-campaigns-link:hover{color:var(--primary-container);text-decoration:underline}.top-campaigns-date-filter button:focus-visible,.calendar-filter-trigger:focus-visible,.segment-btn:focus-visible,.calendar-header button:focus-visible,.calendar-actions button:focus-visible,.calendar-grid button:focus-visible,.top-campaigns-link:focus-visible{outline:2px solid var(--primary);outline-offset:2px}@media (width<=768px){.top-campaigns{gap:12px;padding:14px}.top-campaigns-header{padding:12px}.top-campaigns-header-icon{flex-basis:38px;width:38px;height:38px}.top-campaigns-period-card{flex-direction:column;align-items:flex-start;gap:9px}.top-campaigns-period-main strong{font-size:12px}.top-campaigns-filter-row{grid-template-columns:1fr}.calendar-filter-trigger{width:100%;min-height:38px}.top-campaigns-date-filter button{min-height:34px;font-size:11px}.top-campaigns-calendar{width:auto;position:fixed;inset:auto 14px 76px}.segment-btn{min-height:38px;font-size:12px}.top-campaigns-summary{min-height:68px;padding:12px 14px}.top-campaigns-summary strong{font-size:24px}.top-campaigns-ranking,.top-campaigns-empty{min-height:190px}}.dashboard{gap:var(--container-padding);flex-direction:column;display:flex}.dashboard-empty p{color:var(--on-surface-variant);margin-top:6px}.dashboard-report-bar{border:1px solid var(--outline-variant);border-radius:var(--radius-md);background:var(--surface-container-lowest);box-shadow:var(--shadow-card);justify-content:space-between;align-items:center;gap:16px;padding:10px 12px;display:flex}.dashboard-report-main{flex-wrap:wrap;flex:auto;align-items:center;gap:10px;min-width:0;display:flex}.dashboard-date-filter-icon{border-radius:var(--radius);background:var(--primary-fixed);width:36px;height:36px;color:var(--primary);flex:0 0 36px;place-items:center;display:grid}.dashboard-date-filter-icon .material-symbols-outlined{font-size:20px}.dashboard-date-filter{flex-wrap:wrap;align-items:flex-end;gap:6px;min-width:0;display:flex}.dashboard-date-field{color:var(--on-surface-variant);text-transform:uppercase;gap:3px;font-size:11px;font-weight:800;line-height:14px;display:grid}.dashboard-date-field input{border:1px solid var(--outline-variant);border-radius:var(--radius);background:var(--surface-container-lowest);width:140px;min-height:34px;color:var(--on-surface);font:inherit;text-transform:none;transition:border-color var(--transition), box-shadow var(--transition);padding:0 8px;font-size:13px;font-weight:700}.dashboard-date-field input:hover{border-color:var(--outline)}.dashboard-date-field input:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #003ec71a}.dashboard-date-field input:disabled{opacity:.58;cursor:not-allowed}.dashboard-date-separator{color:var(--on-surface-variant);text-transform:uppercase;align-self:center;margin-top:16px;font-size:12px;font-weight:800}.dashboard-date-actions{flex:none;align-items:center;gap:6px;display:flex}.dashboard-date-actions .btn{min-height:34px;padding:7px 14px;font-size:13px;font-weight:700}.dashboard-date-actions .btn:disabled{opacity:.5;cursor:not-allowed}.dashboard-metrics-panel{flex-direction:column;gap:14px;padding:16px;display:flex}.dashboard-metrics-panel-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.dashboard-metrics-panel-header>div:first-child{gap:4px;min-width:0;display:grid}.dashboard-metrics-panel-header strong{color:var(--on-surface);font-size:15px;line-height:20px}.dashboard-metrics-actions{flex:none;gap:8px;display:flex}.dashboard-metrics-actions .btn{min-height:34px;padding:0 11px;font-size:13px}.dashboard-metric-toggles{flex-wrap:wrap;gap:8px;display:flex}.dashboard-metric-toggle{border:1px solid var(--outline-variant);border-radius:var(--radius-full);background:var(--surface-container-lowest);min-height:38px;color:var(--on-surface-variant);cursor:pointer;transition:background var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:700;display:inline-flex}.dashboard-metric-toggle:hover{color:var(--on-surface);border-color:var(--outline)}.dashboard-metric-toggle.active{background:var(--primary-fixed);color:var(--primary);border-color:#003ec759;box-shadow:0 0 0 3px #003ec70f}.dashboard-metric-toggle input{opacity:0;pointer-events:none;position:absolute}.dashboard-metric-toggle .material-symbols-outlined{font-size:18px}.dashboard-metric-toggle:has(input:focus-visible){outline:2px solid var(--primary);outline-offset:2px}.dashboard-metrics-empty p{color:var(--on-surface-variant);margin-top:6px}.dashboard-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}.dashboard-kpi-grid .kpi-card-dashboard{min-height:124px;padding:14px 16px 12px}.dashboard-kpi-grid .kpi-card-icon{width:34px;height:34px}.dashboard-kpi-grid .kpi-card-icon .material-symbols-outlined{font-size:20px!important}.dashboard-kpi-grid .kpi-card-body{margin-top:8px}.dashboard-kpi-grid .kpi-card-label{margin-bottom:2px;font-size:13px;line-height:18px}.dashboard-kpi-grid .kpi-card-value{letter-spacing:0;font-size:26px;line-height:32px}.dashboard-kpi-grid .sparkline{gap:3px;height:18px;margin-top:10px}@media (width<=1200px){.dashboard-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}}@media (width<=640px){.dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dashboard-kpi-grid .kpi-card-dashboard{min-height:112px;padding:12px}.dashboard-kpi-grid .kpi-card-icon{width:32px;height:32px}.dashboard-kpi-grid .kpi-card-value{font-size:23px;line-height:28px}.dashboard-kpi-grid .sparkline{height:16px;margin-top:8px}}.dashboard-charts-row{gap:var(--element-gap);grid-template-columns:2fr 1fr;display:grid}@media (width<=1024px){.dashboard-charts-row{grid-template-columns:1fr}}.dashboard-chart-main,.dashboard-chart-side{min-width:0}.dashboard-secondary-row{gap:var(--element-gap);grid-template-columns:1fr 1fr;display:grid}@media (width<=1024px){.dashboard-secondary-row{grid-template-columns:1fr}}.audience-card{flex-direction:column;display:flex}.audience-header{margin-bottom:20px}.audience-charts{grid-template-columns:1fr 1fr;gap:20px;display:grid}@media (width<=640px){.audience-charts{grid-template-columns:1fr}}.audience-pie-section{flex-direction:column;display:flex}.audience-section-title{color:var(--on-surface-variant);margin-bottom:12px}.audience-pie-container{flex-direction:column;align-items:center;display:flex}.audience-legend{flex-direction:column;gap:8px;width:100%;margin-top:8px;display:flex}.audience-legend-item{color:var(--on-surface-variant);align-items:center;gap:8px;display:flex}.audience-legend-dot{border-radius:var(--radius-full);flex-shrink:0;width:8px;height:8px}.recent-activity{flex-direction:column;display:flex;overflow:hidden}.recent-activity-header{padding:var(--card-inner-padding);border-bottom:1px solid var(--outline-variant);justify-content:space-between;align-items:center;display:flex}.recent-activity-table-wrapper{overflow-x:auto}@media (width<=768px){.dashboard{gap:14px}.dashboard-report-bar{z-index:8;flex-direction:column;align-items:stretch;padding:10px;position:sticky;top:58px}.dashboard-report-main{align-items:stretch;gap:8px}.dashboard-date-filter-icon{align-self:flex-end}.dashboard-date-filter{flex:auto;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:6px;display:grid}.dashboard-date-field input{width:100%;min-width:0}.dashboard-date-actions{align-self:flex-end;margin-left:0}.dashboard-metrics-panel{padding:14px}.dashboard-metrics-panel-header{flex-direction:column;gap:12px}.dashboard-metrics-actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.dashboard-metrics-actions .btn{justify-content:center;width:100%}.dashboard-metric-toggles{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.dashboard-metric-toggle{justify-content:center;padding:8px 10px}.dashboard-charts-row,.dashboard-secondary-row{gap:14px}.audience-header{margin-bottom:14px}.audience-charts{gap:14px}.recent-activity-header{padding:14px 16px}.recent-activity-header .btn{padding:6px 10px!important}}@media (width<=420px){.dashboard-kpi-grid{grid-template-columns:1fr}.dashboard-report-main{grid-template-columns:1fr;display:grid}.dashboard-date-filter-icon{display:none}.dashboard-date-filter{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.dashboard-date-separator{display:none}.dashboard-date-field input{padding:0 5px;font-size:12px}.dashboard-date-actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.dashboard-date-actions .btn{width:100%}.dashboard-metric-toggles{grid-template-columns:1fr}}.campaigns{gap:var(--container-padding);flex-direction:column;display:flex}.campaigns-filters{border-color:#c3c5d980}.campaigns-filter-row{flex-wrap:wrap;align-items:flex-end;gap:16px;display:flex}.campaigns-filter-label{color:var(--on-surface-variant);margin-bottom:6px;display:block}.campaigns-search-group{flex:1;min-width:300px}.campaigns-search-wrapper{border-radius:var(--radius);border:1px solid var(--outline-variant);transition:border-color var(--transition), box-shadow var(--transition);display:flex;overflow:hidden}.campaigns-search-wrapper:focus-within{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.campaigns-search-field-selector{background:var(--surface-container-lowest);border-right:1px solid var(--outline-variant);cursor:pointer;color:var(--on-surface);white-space:nowrap;-webkit-user-select:none;user-select:none;transition:background var(--transition);align-items:center;gap:8px;padding:8px 12px;font-size:14px;font-weight:400;display:flex;position:relative}.campaigns-search-field-selector:hover{background:var(--surface-container)}.campaigns-field-dropdown{background:var(--surface-container-lowest);border:1px solid var(--outline-variant);border-radius:0 0 var(--radius) var(--radius);width:100%;box-shadow:var(--shadow-md);z-index:30;position:absolute;top:100%;left:0;overflow:hidden}.campaigns-field-dropdown button{text-align:left;width:100%;font-family:var(--font-family);color:var(--on-surface);cursor:pointer;transition:background var(--transition);background:0 0;border:none;padding:10px 12px;font-size:14px;display:block}.campaigns-field-dropdown button:hover{background:var(--surface-container)}.campaigns-search-input-wrapper{background:var(--surface-container-lowest);flex:1;position:relative}.campaigns-search-icon{color:var(--outline);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.campaigns-search-input{width:100%;font-family:var(--font-family);color:var(--on-surface);background:0 0;border:none;outline:none;padding:8px 16px 8px 40px;font-size:14px}.campaigns-search-input::placeholder{color:#737688b3}.campaigns-date-group{width:auto}.campaigns-date-btn{background:var(--surface-container-lowest);border:1px solid var(--outline-variant);border-radius:var(--radius);font-family:var(--font-family);color:var(--on-surface);cursor:pointer;min-width:280px;transition:all var(--transition);align-items:center;gap:8px;padding:8px 16px;font-size:14px;display:flex}.campaigns-date-btn:hover{background:var(--surface-container)}.campaigns-date-text{text-align:left;flex:1}.campaigns-date-range{color:var(--outline);margin-left:4px;font-size:12px}.campaigns-columns-group{width:auto}.campaigns-columns-btn{background:var(--surface-container-lowest);border:1px solid var(--outline-variant);border-radius:var(--radius);font-family:var(--font-family);color:var(--on-surface);cursor:pointer;transition:all var(--transition);align-items:center;gap:8px;height:40px;padding:8px 16px;font-size:14px;display:flex}.campaigns-columns-btn:hover{background:var(--surface-container)}.campaigns-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(148px,176px));justify-content:start;align-items:stretch;gap:12px;display:grid}.campaigns-kpi-grid .kpi-card-report{border-radius:var(--radius);min-height:108px;padding:14px}.campaigns-kpi-grid .kpi-card-header{margin-bottom:10px}.campaigns-kpi-grid .kpi-card-icon{border-radius:var(--radius);width:34px;height:34px}.campaigns-kpi-grid .kpi-card-icon .material-symbols-outlined{font-size:19px!important}.campaigns-kpi-grid .kpi-card-body{margin-top:0}.campaigns-kpi-grid .kpi-card-label{margin-bottom:5px;font-size:12px;font-weight:700;line-height:16px}.campaigns-kpi-grid .kpi-card-value{letter-spacing:0;font-size:26px;line-height:32px}@media (width<=640px){.campaigns-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.campaigns-table-card{border-color:#c3c5d980;overflow:hidden}.campaigns-table-wrapper{overflow-x:hidden}.campaigns-table-wrapper .data-table{table-layout:auto}.campaigns-table-wrapper .data-table th,.campaigns-table-wrapper .data-table td{padding-left:10px;padding-right:10px}.campaigns-table-wrapper .data-table th{white-space:nowrap;font-size:11px}.campaigns-sort-header{width:100%;color:inherit;font:inherit;font-weight:inherit;letter-spacing:inherit;text-transform:inherit;white-space:nowrap;cursor:pointer;transition:color var(--transition);background:0 0;border:0;align-items:center;gap:3px;padding:0;display:inline-flex}.campaigns-sort-header:hover,.campaigns-sort-header.active{color:var(--primary)}.campaigns-sort-header:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:2px}.campaigns-sort-header .material-symbols-outlined{opacity:.58;flex:none;font-size:14px}.campaigns-sort-header.active .material-symbols-outlined{opacity:1}.campaigns-numeric-header .campaigns-sort-header{justify-content:flex-end}.campaigns-mobile-sort{display:none}.campaigns-table-wrapper .data-table td{font-size:13px}.campaigns-detail-link{color:var(--on-surface);transition:color var(--transition);align-items:center;gap:5px;text-decoration:none;display:inline-flex}.campaigns-detail-link:hover{color:var(--primary)}.campaigns-detail-link .material-symbols-outlined{opacity:0;transition:opacity var(--transition), transform var(--transition);transform:translateY(1px)}.campaigns-detail-link:hover .material-symbols-outlined{opacity:1;transform:translate(2px,-1px)}.campaigns-table-action{border:1px solid var(--outline-variant);border-radius:var(--radius-full);background:var(--surface-container-lowest);min-height:30px;color:var(--on-surface-variant);cursor:pointer;transition:background var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);justify-content:center;align-items:center;gap:5px;padding:0 10px;font-size:12px;font-weight:800;text-decoration:none;display:inline-flex}.campaigns-table-action:hover{border-color:var(--outline);background:var(--surface-container-low);color:var(--on-surface);box-shadow:var(--shadow-sm)}@media (width<=1400px){.campaigns-table-wrapper .data-table th:nth-child(3),.campaigns-table-wrapper .data-table td:nth-child(3),.campaigns-table-wrapper .data-table th:nth-child(4),.campaigns-table-wrapper .data-table td:nth-child(4),.campaigns-table-wrapper .data-table th:nth-child(10),.campaigns-table-wrapper .data-table td:nth-child(10){display:none}}@media (width<=1100px){.campaigns-table-wrapper .data-table th:nth-child(2),.campaigns-table-wrapper .data-table td:nth-child(2),.campaigns-table-wrapper .data-table th:nth-child(5),.campaigns-table-wrapper .data-table td:nth-child(5),.campaigns-table-wrapper .data-table th:nth-child(8),.campaigns-table-wrapper .data-table td:nth-child(8){display:none}}.campaigns-error{color:var(--on-error-container);border-radius:var(--radius);background:var(--error-container);border:1px solid #ba1a1a29;align-items:center;padding:12px 14px;display:flex}.campaigns-date-range-bar{width:fit-content;max-width:100%;box-shadow:var(--shadow-sm);border-color:#c3c5d994;align-items:center;gap:14px;padding:10px 12px;display:flex}.campaigns-date-range-copy{gap:2px;min-width:88px;display:grid}.campaigns-date-range-fields{align-items:flex-end;gap:7px;display:flex}.campaigns-date-field{color:var(--on-surface-variant);text-transform:uppercase;gap:4px;font-size:10px;font-weight:800;line-height:12px;display:grid}.campaigns-date-field input{border:1px solid var(--outline-variant);border-radius:var(--radius);background:var(--surface-container-lowest);width:136px;min-height:34px;color:var(--on-surface);font:inherit;text-transform:none;transition:border-color var(--transition), box-shadow var(--transition);padding:0 9px;font-size:12px;font-weight:700}.campaigns-date-field input:hover{border-color:var(--outline)}.campaigns-date-field input:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #003ec71a}.campaigns-date-field input:disabled{opacity:.58;cursor:not-allowed}.campaigns-date-range-separator{color:var(--on-surface-variant);text-transform:uppercase;margin-bottom:9px;font-size:11px;font-weight:800}.campaigns-date-reset{border:1px solid var(--outline-variant);border-radius:var(--radius-full);background:var(--surface-container-low);min-height:34px;color:var(--on-surface);cursor:pointer;transition:background var(--transition), border-color var(--transition), box-shadow var(--transition);margin-top:auto;padding:0 12px;font-size:12px;font-weight:800}.campaigns-date-reset:hover:not(:disabled){border-color:var(--outline);background:var(--surface-container-lowest);box-shadow:var(--shadow-sm)}.campaigns-date-reset:disabled{opacity:.5;cursor:not-allowed}.campaigns-date-apply{border:1px solid var(--primary);border-radius:var(--radius-full);background:var(--primary);min-height:34px;color:var(--on-primary);cursor:pointer;transition:background var(--transition), border-color var(--transition), box-shadow var(--transition);margin-top:auto;padding:0 13px;font-size:12px;font-weight:800}.campaigns-date-apply:hover:not(:disabled){border-color:var(--on-primary-fixed-variant);background:var(--on-primary-fixed-variant);box-shadow:var(--shadow-sm)}.campaigns-date-apply:disabled{opacity:.5;cursor:not-allowed}.campaigns-date-export{border:1px solid var(--primary);border-radius:var(--radius-full);background:var(--primary);min-height:34px;color:var(--on-primary);cursor:pointer;transition:background var(--transition), border-color var(--transition), box-shadow var(--transition);justify-content:center;align-items:center;gap:6px;margin-top:auto;padding:0 13px;font-size:12px;font-weight:800;display:inline-flex}.campaigns-date-export .material-symbols-outlined{font-size:18px}.campaigns-date-export:hover:not(:disabled){border-color:var(--on-primary-fixed-variant);background:var(--on-primary-fixed-variant);box-shadow:var(--shadow-sm)}.campaigns-date-export:disabled{opacity:.5;cursor:not-allowed}.campaigns-modal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.campaigns-modal-grid label{color:var(--on-surface-variant);gap:6px;font-size:12px;font-weight:600;display:grid}.campaigns-pagination{border-top:1px solid #c3c5d94d;justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.campaigns-pagination-controls{gap:4px;display:flex}.campaigns-page-btn{border-radius:var(--radius);border:1px solid var(--outline-variant);width:32px;height:32px;color:var(--on-surface);font-family:var(--font-family);cursor:pointer;transition:all var(--transition);background:0 0;justify-content:center;align-items:center;font-size:14px;font-weight:500;display:flex}.campaigns-page-btn:hover:not(:disabled){background:var(--surface-container)}.campaigns-page-btn:disabled{opacity:.5;cursor:default}.campaigns-page-btn.active{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}@media (width<=768px){.campaigns{gap:14px}.campaigns-filter-row{gap:12px}.campaigns-search-group,.campaigns-date-group,.campaigns-columns-group{width:100%;min-width:0}.campaigns-search-wrapper{flex-direction:column}.campaigns-search-field-selector{border-right:0;border-bottom:1px solid var(--outline-variant);justify-content:space-between}.campaigns-date-btn,.campaigns-columns-btn{justify-content:space-between;width:100%;min-width:0}.campaigns-kpi-grid{gap:10px}.campaigns-date-range-bar{flex-direction:column;align-items:stretch;gap:10px;width:100%}.campaigns-date-range-copy{min-width:0}.campaigns-date-range-fields{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;display:grid}.campaigns-date-range-separator{display:none}.campaigns-date-field input,.campaigns-date-apply,.campaigns-date-reset,.campaigns-date-export{width:100%}.campaigns-mobile-sort{background:var(--surface-container-low);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;padding:12px 12px 0;display:grid}.campaigns-mobile-sort label{min-width:0;color:var(--on-surface-variant);letter-spacing:.04em;text-transform:uppercase;gap:4px;font-size:10px;font-weight:800;display:grid}.campaigns-mobile-sort select,.campaigns-mobile-sort button{border:1px solid var(--outline-variant);border-radius:var(--radius);background:var(--surface-container-lowest);min-width:0;min-height:38px;color:var(--on-surface);font:inherit;font-size:12px;font-weight:700}.campaigns-mobile-sort select{width:100%;padding:0 30px 0 10px}.campaigns-mobile-sort button{cursor:pointer;justify-content:center;align-self:end;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.campaigns-mobile-sort button .material-symbols-outlined{font-size:16px}.campaigns-table-wrapper{background:var(--surface-container-low);padding:10px;overflow-x:hidden}.campaigns-table-wrapper .data-table{min-width:0}.campaigns-table-wrapper thead{display:none}.campaigns-table-wrapper tbody{gap:10px;display:grid}.campaigns-table-wrapper tbody tr{border:1px solid var(--outline-variant);border-radius:var(--radius);background:var(--surface-container-lowest);grid-template-columns:repeat(2,minmax(0,1fr));height:auto;display:grid;overflow:hidden}.campaigns-table-wrapper tbody td{border-bottom:1px solid #c3c5d94d;justify-content:space-between;align-items:center;gap:8px;min-width:0;min-height:42px;padding:9px 12px;font-size:13px;display:flex;text-align:right!important}.campaigns-table-wrapper tbody td:nth-child(2),.campaigns-table-wrapper tbody td:nth-child(3),.campaigns-table-wrapper tbody td:nth-child(4),.campaigns-table-wrapper tbody td:nth-child(5),.campaigns-table-wrapper tbody td:nth-child(8),.campaigns-table-wrapper tbody td:nth-child(10){display:flex}.campaigns-table-wrapper tbody td:first-child,.campaigns-table-wrapper tbody td:nth-child(5),.campaigns-table-wrapper tbody td:last-child{grid-column:1/-1}.campaigns-table-wrapper tbody td:before{content:attr(data-label);color:var(--on-surface-variant);letter-spacing:.04em;text-transform:uppercase;flex:none;font-size:10px;font-weight:800}.campaigns-table-wrapper .campaigns-detail-link{text-align:left;overflow-wrap:anywhere;min-width:0}.campaigns-table-wrapper .campaigns-table-action{margin-left:auto}.campaigns-pagination{flex-direction:column;align-items:flex-start;gap:12px;padding:12px 14px}.campaigns-modal-grid{grid-template-columns:1fr}}@media (width<=420px){.campaigns-kpi-grid,.campaigns-mobile-sort{grid-template-columns:1fr}.campaigns-kpi-grid .kpi-card-value{font-size:24px;line-height:30px}.campaigns-date-range-fields{grid-template-columns:1fr}.campaigns-date-range-separator{display:none}.campaigns-date-reset,.campaigns-date-export{width:100%}}@media (width<=520px){.campaigns-table-wrapper tbody tr{grid-template-columns:minmax(0,1fr)}.campaigns-table-wrapper tbody td,.campaigns-table-wrapper tbody td:first-child,.campaigns-table-wrapper tbody td:nth-child(5),.campaigns-table-wrapper tbody td:last-child{grid-column:1}}.campaign-detail{gap:var(--container-padding);flex-direction:column;display:flex}.campaign-detail-header{background:linear-gradient(135deg, #dde1ff99, #ffffffeb 42%), var(--surface-container-lowest);box-shadow:var(--shadow-card);border-color:#c3c5d994;justify-content:space-between;align-items:flex-start;gap:18px;padding:18px;display:flex}.campaign-detail-title-group{gap:14px;min-width:0;display:grid}.campaign-detail-back{width:fit-content;color:var(--on-surface-variant);transition:color var(--transition);align-items:center;gap:6px;font-size:13px;font-weight:800;text-decoration:none;display:inline-flex}.campaign-detail-back:hover{color:var(--primary)}.campaign-detail-title-group h1{color:var(--on-surface);margin-top:5px}.campaign-detail-title-group p{color:var(--on-surface-variant);margin-top:4px;font-size:13px;font-weight:700}.campaign-detail-meta{color:var(--on-surface-variant);flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:8px;font-size:12px;font-weight:800;display:flex}.campaign-detail-meta>span:not(.badge),.campaign-detail-meta strong{border-radius:var(--radius-full);min-height:30px;color:var(--on-surface-variant);background:#ffffffad;border:1px solid #c3c5d9b8;align-items:center;padding:0 10px;display:inline-flex}.campaign-detail-meta strong{color:var(--on-surface)}.campaign-detail-filter{justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;display:flex}.campaign-detail-filter>div:first-child{gap:2px;min-width:160px;display:grid}.campaign-detail-filter strong{color:var(--on-surface);font-size:15px}.campaign-detail-date-fields{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.campaign-detail-date-fields label{color:var(--on-surface-variant);text-transform:uppercase;gap:5px;font-size:11px;font-weight:800;line-height:14px;display:grid}.campaign-detail-date-fields input{border:1px solid var(--outline-variant);border-radius:var(--radius);background:var(--surface-container-lowest);width:148px;min-height:36px;color:var(--on-surface);font:inherit;text-transform:none;transition:border-color var(--transition), box-shadow var(--transition);padding:0 10px;font-size:13px;font-weight:700}.campaign-detail-date-fields input:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #003ec71a}.campaign-detail-date-fields input:disabled{opacity:.58;cursor:not-allowed}.campaign-detail-date-separator{color:var(--on-surface-variant);text-transform:uppercase;margin-bottom:9px;font-size:12px;font-weight:800}.campaign-detail-date-fields button{border:1px solid var(--outline-variant);border-radius:var(--radius-full);background:var(--surface-container-low);min-height:36px;color:var(--on-surface);cursor:pointer;transition:background var(--transition), border-color var(--transition), box-shadow var(--transition);padding:0 13px;font-size:12px;font-weight:800}.campaign-detail-date-fields button:hover:not(:disabled){border-color:var(--outline);background:var(--surface-container-lowest);box-shadow:var(--shadow-sm)}.campaign-detail-date-fields button:disabled{opacity:.5;cursor:not-allowed}.campaign-detail-empty p{color:var(--on-surface-variant);margin-top:6px}.campaign-detail-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px;display:grid}.campaign-detail-kpi-grid .kpi-card-dashboard{min-height:122px;padding:12px 14px 10px}.campaign-detail-kpi-grid .kpi-card-icon{border-radius:var(--radius);width:32px;height:32px}.campaign-detail-kpi-grid .kpi-card-icon .material-symbols-outlined{font-size:18px!important}.campaign-detail-kpi-grid .kpi-card-body{margin-top:6px}.campaign-detail-kpi-grid .kpi-card-label{margin-bottom:2px;font-size:12px;line-height:16px}.campaign-detail-kpi-grid .kpi-card-value{letter-spacing:0;font-size:24px;line-height:29px}.campaign-detail-kpi-grid .sparkline{gap:3px;height:16px;margin-top:8px}.campaign-detail-table{overflow:hidden}.campaign-detail-table-header{padding:var(--card-inner-padding);border-bottom:1px solid var(--outline-variant);justify-content:space-between;align-items:center;gap:16px;display:flex}.campaign-detail-table-header h2{color:var(--on-surface)}.campaign-detail-table-header p{color:var(--on-surface-variant);margin-top:4px;font-size:12px;font-weight:700}.campaign-detail-export .material-symbols-outlined{font-size:18px}.campaign-detail-date-fields .campaign-detail-export{border-color:var(--primary);background:var(--primary);color:var(--on-primary);justify-content:center;align-items:center;gap:6px;display:inline-flex}.campaign-detail-date-fields .campaign-detail-export:hover:not(:disabled){border-color:var(--on-primary-fixed-variant);background:var(--on-primary-fixed-variant)}.campaign-detail-date-fields .campaign-detail-apply{border-color:var(--primary);background:var(--primary);color:var(--on-primary)}.campaign-detail-date-fields .campaign-detail-apply:hover:not(:disabled){border-color:var(--on-primary-fixed-variant);background:var(--on-primary-fixed-variant)}.campaign-detail-export:disabled{opacity:.5;cursor:not-allowed}.campaign-detail-sort-header{width:100%;color:inherit;font:inherit;font-weight:inherit;letter-spacing:inherit;text-transform:inherit;white-space:nowrap;cursor:pointer;transition:color var(--transition);background:0 0;border:0;align-items:center;gap:3px;padding:0;display:inline-flex}.campaign-detail-sort-header:hover,.campaign-detail-sort-header.active{color:var(--primary)}.campaign-detail-sort-header:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:2px}.campaign-detail-sort-header .material-symbols-outlined{opacity:.58;flex:none;font-size:14px}.campaign-detail-sort-header.active .material-symbols-outlined{opacity:1}.campaign-detail-numeric-header .campaign-detail-sort-header{justify-content:flex-end}.campaign-detail-mobile-sort{display:none}.campaign-detail-table-wrapper{overflow-x:hidden}.campaign-detail-table-wrapper .data-table{table-layout:fixed}.campaign-detail-table-wrapper .data-table th,.campaign-detail-table-wrapper .data-table td{padding-left:14px;padding-right:14px}.campaign-detail-table tfoot td{border-top:1px solid var(--outline-variant);background:var(--surface-container-low);color:var(--on-surface);padding:14px 20px;font-size:14px;font-weight:800}.campaign-detail-table tfoot td:first-child{text-transform:uppercase;letter-spacing:.05em}@media (width<=768px){.campaign-detail{gap:14px}.campaign-detail-header,.campaign-detail-filter{flex-direction:column;align-items:stretch}.campaign-detail-meta{justify-content:flex-start}.campaign-detail-date-fields{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;display:grid}.campaign-detail-date-separator{display:none}.campaign-detail-date-fields input,.campaign-detail-date-fields button{width:100%}.campaign-detail-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.campaign-detail-kpi-grid .kpi-card-dashboard{min-height:108px;padding:11px 12px 9px}.campaign-detail-kpi-grid .kpi-card-value{font-size:22px;line-height:27px}.campaign-detail-kpi-grid .sparkline{height:14px;margin-top:7px}.campaign-detail-table-header{flex-direction:column;align-items:stretch}.campaign-detail-mobile-sort{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;display:grid}.campaign-detail-mobile-sort label{min-width:0;color:var(--on-surface-variant);letter-spacing:.04em;text-transform:uppercase;gap:4px;font-size:10px;font-weight:800;display:grid}.campaign-detail-mobile-sort select,.campaign-detail-mobile-sort button{border:1px solid var(--outline-variant);border-radius:var(--radius);background:var(--surface-container-lowest);min-width:0;min-height:38px;color:var(--on-surface);font:inherit;font-size:12px;font-weight:700}.campaign-detail-mobile-sort select{width:100%;padding:0 30px 0 10px}.campaign-detail-mobile-sort button{cursor:pointer;justify-content:center;align-self:end;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.campaign-detail-mobile-sort button .material-symbols-outlined{font-size:16px}.campaign-detail-table-wrapper{background:var(--surface-container-low);padding:10px;overflow-x:hidden}.campaign-detail-table-wrapper .data-table{min-width:0}.campaign-detail-table thead{display:none}.campaign-detail-table tbody,.campaign-detail-table tfoot{gap:10px;display:grid}.campaign-detail-table tbody tr,.campaign-detail-table tfoot tr{border:1px solid var(--outline-variant);border-radius:var(--radius);background:var(--surface-container-lowest);grid-template-columns:repeat(2,minmax(0,1fr));height:auto;display:grid;overflow:hidden}.campaign-detail-table tbody td,.campaign-detail-table tfoot td{border:0;border-bottom:1px solid #c3c5d94d;justify-content:space-between;align-items:center;gap:8px;min-width:0;min-height:42px;padding:9px 12px;font-size:13px;display:flex;text-align:right!important}.campaign-detail-table tbody td:first-child,.campaign-detail-table tfoot td:first-child{grid-column:1/-1}.campaign-detail-table tbody td:before,.campaign-detail-table tfoot td:before{content:attr(data-label);color:var(--on-surface-variant);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:800}.campaign-detail-table tfoot{margin-top:10px}}@media (width<=420px){.campaign-detail-date-fields{grid-template-columns:1fr}.campaign-detail-date-separator{display:none}.campaign-detail-date-fields button{width:100%}.campaign-detail-kpi-grid,.campaign-detail-mobile-sort{grid-template-columns:1fr}.campaign-detail-table tbody tr,.campaign-detail-table tfoot tr{grid-template-columns:minmax(0,1fr)}.campaign-detail-table tbody td,.campaign-detail-table tfoot td,.campaign-detail-table tbody td:first-child,.campaign-detail-table tfoot td:first-child{grid-column:1}}.settings{gap:var(--container-padding);flex-direction:column;display:flex}.settings-header{margin-bottom:8px}.settings-layout{gap:var(--container-padding);grid-template-columns:250px 1fr;display:grid}@media (width<=900px){.settings-layout{grid-template-columns:1fr}}.settings-tabs-column{min-width:0}.settings-tabs{padding:0;overflow:hidden}.settings-tab-btn{width:100%;padding:16px var(--card-inner-padding);border:none;border-bottom:1px solid var(--outline-variant);color:var(--on-surface-variant);font-family:var(--font-family);cursor:pointer;text-align:left;transition:all var(--transition);background:0 0;align-items:center;gap:12px;display:flex}.settings-tab-btn:last-child{border-bottom:none}.settings-tab-btn:hover{background:var(--surface-container)}.settings-tab-btn.active{background:var(--surface-container-low);color:var(--primary);border-left:4px solid var(--primary)}.settings-content-column{min-width:0}.settings-section{flex-direction:column;display:flex}.settings-section-header{border-bottom:1px solid var(--outline-variant);justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:16px;display:flex}.settings-table-wrapper{overflow-x:auto}.settings-advertiser-name{align-items:center;gap:12px;display:flex}.settings-advertiser-icon{border-radius:var(--radius);background:var(--surface-container-highest);width:32px;height:32px;color:var(--on-surface-variant);border:1px solid var(--outline-variant);justify-content:center;align-items:center;display:flex}.settings-api-key{align-items:center;gap:8px;display:flex}.settings-actions{justify-content:flex-end;align-items:center;gap:4px;display:flex}.settings-action-btn{color:var(--on-surface-variant);padding:6px}.settings-action-btn:hover{color:var(--primary)}.settings-action-delete:hover{color:var(--error)!important}.settings-tracking-content{flex-direction:column;gap:20px;display:flex}.settings-tracking-info{flex-direction:column;display:flex}.settings-tracking-status{align-items:center;gap:8px;display:flex}.settings-code-block{background:var(--surface-container-highest);border-radius:var(--radius);border:1px solid var(--outline-variant);overflow:hidden}.settings-code-header{background:var(--surface-container-high);border-bottom:1px solid var(--outline-variant);justify-content:space-between;align-items:center;padding:10px 16px;display:flex}.settings-code{color:var(--on-surface-variant);white-space:pre;margin:0;padding:16px;font-family:Fira Code,Consolas,monospace;font-size:13px;line-height:1.6;overflow-x:auto}.settings-user-row{align-items:center;gap:12px;display:flex}.settings-user-avatar{border-radius:var(--radius-full);background:var(--primary-fixed);width:32px;height:32px;color:var(--on-primary-fixed);justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex}.settings-role-badge{border-radius:var(--radius-full);align-items:center;padding:2px 10px;font-size:12px;font-weight:500;display:inline-flex}.settings-role-badge.admin{background:var(--primary-fixed);color:var(--on-primary-fixed)}.settings-role-badge.editor{background:var(--tertiary-fixed);color:var(--on-tertiary-fixed)}.settings-role-badge.viewer{background:var(--surface-variant);color:var(--on-surface-variant)}.modal-overlay{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--surface-container-lowest);border-radius:var(--radius-lg);border:1px solid var(--outline-variant);box-shadow:var(--shadow-md);width:100%;max-width:480px;margin:16px}.modal-header{border-bottom:1px solid var(--outline-variant);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-body{padding:24px}.modal-field{margin-bottom:16px}.modal-footer{border-top:1px solid var(--outline-variant);justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}@media (width<=768px){.settings{gap:14px}.settings-header{margin-bottom:0}.settings-tabs{border-radius:var(--radius);display:flex;overflow-x:auto}.settings-tab-btn{border-bottom:0;border-right:1px solid var(--outline-variant);text-align:center;flex-direction:column;flex:0 0 180px;justify-content:center;gap:6px;padding:12px 10px}.settings-tab-btn.active{border-left:0;border-bottom:3px solid var(--primary)}.settings-section-header{flex-direction:column;align-items:flex-start;gap:12px;padding-bottom:14px}.settings-section-header .btn{width:100%}.settings-table-wrapper .data-table{min-width:760px}.settings-code-header{flex-direction:column;align-items:flex-start;gap:10px}.settings-code-header .btn{width:100%}.settings-code{font-size:12px}.modal{max-width:calc(100% - 28px);margin:14px}.modal-header,.modal-body,.modal-footer{padding-left:18px;padding-right:18px}.modal-footer{flex-direction:column-reverse}.modal-footer .btn{width:100%}}.settings-config-row{background:var(--surface-container-low);border-radius:var(--radius);border:1px solid var(--outline-variant);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-bottom:20px;padding:16px;display:grid}.settings-config-field{flex-direction:column;gap:6px;display:flex}.settings-config-select{border-radius:var(--radius);border:1px solid var(--outline-variant);background:var(--surface-container-lowest);color:var(--on-surface);font-family:var(--font-family);padding:8px 12px;font-size:14px}.settings-code-highlight-comment{color:#888;font-style:italic}.settings-code-highlight-tag{color:#4f85e5}.settings-code-highlight-attr{color:#e06c75}.settings-code-highlight-string{color:#98c379}.settings-code-highlight-keyword{color:#c678dd}.settings-code-highlight-property{color:#abb2bf}.settings-code-highlight-number{color:#d19a66}.settings-debug-console{border-radius:var(--radius);background:#1e1e1e;border:1px solid #333;margin-top:24px;overflow:hidden;box-shadow:0 4px 12px #00000026}.console-header{background:#2d2d2d;border-bottom:1px solid #3c3c3c;justify-content:space-between;align-items:center;padding:8px 16px;display:flex}.console-dots{gap:6px;display:flex}.console-dot{border-radius:50%;width:10px;height:10px}.console-dot.red{background:#ff5f56}.console-dot.yellow{background:#ffbd2e}.console-dot.green{background:#27c93f}.console-title{color:#ccc;font-family:monospace;font-size:12px;font-weight:500}.console-actions-panel{flex-direction:column;gap:16px;padding:16px;display:flex}.console-controls{background:#252526;border-radius:4px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:flex-end;gap:12px;padding:12px;display:grid}.console-control-field{flex-direction:column;gap:4px;display:flex}.console-control-field label{color:#aaa;text-transform:uppercase;font-size:11px;font-weight:600}.console-control-field select,.console-control-field input{color:#d4d4d4;background:#1e1e1e;border:1px solid #3c3c3c;border-radius:4px;padding:6px 10px;font-size:13px}.console-screen{color:#d4d4d4;background:#1e1e1e;border-top:1px solid #2d2d2d;min-height:180px;max-height:250px;padding:16px;font-family:Fira Code,Consolas,monospace;font-size:13px;line-height:1.5;overflow-y:auto}.console-log-line{gap:10px;margin-bottom:6px;display:flex}.console-log-time{color:#6a9955;-webkit-user-select:none;user-select:none}.console-log-text{word-break:break-all}.console-log-text.info{color:#9cdcfe}.console-log-text.success{color:#4ec9b0;font-weight:600}.console-log-text.error{color:#f44747;font-weight:600}.console-welcome{color:#888;text-align:center;flex-direction:column;justify-content:center;align-items:center;height:120px;display:flex}.auth-page{background:var(--surface-container-lowest);min-height:100vh;display:flex}.auth-left-panel{background:linear-gradient(145deg,#001a6e 0%,#003ec7 40%,#0052ff 70%,#3b7dff 100%);flex:1;justify-content:center;align-items:center;padding:48px;display:flex;position:relative;overflow:hidden}.auth-left-content{z-index:2;width:100%;max-width:520px;position:relative}.auth-bg-shape{opacity:.08;background:#fff;border-radius:50%;animation:20s ease-in-out infinite float;position:absolute}.auth-bg-shape-1{width:400px;height:400px;animation-delay:0s;top:-80px;right:-100px}.auth-bg-shape-2{width:300px;height:300px;animation-delay:-7s;bottom:-60px;left:-80px}.auth-bg-shape-3{opacity:.05;width:180px;height:180px;animation-delay:-14s;top:40%;right:20%}@keyframes float{0%,to{transform:translate(0)scale(1)}25%{transform:translate(20px,-30px)scale(1.05)}50%{transform:translate(-15px,20px)scale(.95)}75%{transform:translate(25px,15px)scale(1.02)}}.auth-brand{align-items:center;margin-bottom:48px;display:flex}.auth-brand-logo{object-fit:contain;background:#ffffffeb;border-radius:12px;width:210px;height:auto;padding:10px 14px;display:block;box-shadow:0 18px 38px #00000024}.auth-hero{margin-bottom:40px}.auth-hero-title{color:#fff;letter-spacing:-.03em;margin-bottom:16px;font-size:38px;font-weight:800;line-height:1.2}.auth-hero-highlight{background:linear-gradient(135deg,#60a5fa,#93c5fd,#bfdbfe);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.auth-hero-desc{color:#ffffffb3;max-width:420px;font-size:15px;font-weight:400;line-height:1.65}.auth-features{flex-wrap:wrap;gap:10px;margin-bottom:40px;display:flex}.auth-feature-pill{color:#ffffffd9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1a;border:1px solid #ffffff1f;border-radius:100px;align-items:center;gap:8px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .3s;display:flex}.auth-feature-pill:hover{background:#ffffff2e;transform:translateY(-2px)}.auth-stats{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff14;border:1px solid #ffffff1a;border-radius:16px;align-items:center;gap:24px;padding:24px 28px;display:flex}.auth-stat{flex-direction:column;gap:4px;display:flex}.auth-stat-value{color:#fff;letter-spacing:-.02em;font-size:24px;font-weight:800}.auth-stat-label{color:#ffffff8c;letter-spacing:.02em;font-size:12px;font-weight:400}.auth-stat-divider{background:#ffffff26;width:1px;height:40px}.auth-right-panel{background:var(--surface-container-lowest);justify-content:center;align-items:center;width:520px;min-width:420px;padding:48px 40px;display:flex;overflow-y:auto}.auth-form-wrapper{width:100%;max-width:400px}.auth-mobile-brand{align-items:center;margin-bottom:32px;display:none}.auth-mobile-brand-logo{object-fit:contain;width:160px;height:auto;display:block}.auth-mode-toggle{background:var(--surface-container);border:1px solid var(--outline-variant);border-radius:12px;margin-bottom:32px;padding:4px;display:flex;position:relative}.auth-mode-btn{font-family:var(--font-family);color:var(--on-surface-variant);cursor:pointer;z-index:2;background:0 0;border:none;border-radius:10px;flex:1;padding:10px 0;font-size:14px;font-weight:600;transition:color .3s;position:relative}.auth-mode-btn.active{color:var(--primary)}.auth-mode-slider{background:var(--surface-container-lowest);z-index:1;border-radius:10px;width:calc(50% - 4px);height:calc(100% - 8px);transition:transform .35s cubic-bezier(.4,0,.2,1);position:absolute;top:4px;left:4px;box-shadow:0 2px 8px #0000000f}.auth-mode-slider.right{transform:translate(100%)}.auth-form-header{margin-bottom:24px;animation:.35s forwards fadeIn}.auth-form-title{color:var(--on-surface);letter-spacing:-.02em;margin-bottom:6px;font-size:26px;font-weight:800}.auth-form-subtitle{color:var(--on-surface-variant);font-size:14px;font-weight:400;line-height:1.5}.auth-error{background:var(--error-container);color:var(--on-error-container);border:1px solid #ba1a1a26;border-radius:10px;align-items:center;gap:8px;margin-bottom:16px;padding:12px 16px;font-size:13px;font-weight:500;display:flex}.auth-form{flex-direction:column;gap:4px;display:flex}.auth-field-wrapper{transition:max-height .4s cubic-bezier(.4,0,.2,1),opacity .3s;overflow:hidden}.auth-field-enter{opacity:1;max-height:100px}.auth-field-exit{opacity:0;max-height:0}.auth-field{margin-bottom:12px}.auth-label-row{justify-content:space-between;align-items:center;display:flex}.auth-label{color:var(--on-surface);letter-spacing:.01em;margin-bottom:8px;font-size:13px;font-weight:600;display:block}.auth-forgot-link{font-family:var(--font-family);color:var(--primary);cursor:pointer;background:0 0;border:none;margin-bottom:8px;padding:0;font-size:12px;font-weight:500;text-decoration:none;transition:opacity .2s}.auth-forgot-link:hover{opacity:.75}.auth-input-wrapper{align-items:center;display:flex;position:relative}.auth-input-icon{color:var(--outline);pointer-events:none;transition:color .2s;position:absolute;left:14px;font-size:20px!important}.auth-input-wrapper:focus-within .auth-input-icon{color:var(--primary)}.auth-input{border:1.5px solid var(--outline-variant);width:100%;font-family:var(--font-family);color:var(--on-surface);background:var(--surface-container-lowest);border-radius:10px;outline:none;padding:12px 14px 12px 44px;font-size:14px;line-height:20px;transition:all .25s}.auth-input::placeholder{color:var(--outline);font-weight:400}.auth-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #003ec714}.auth-input-toggle{color:var(--outline);cursor:pointer;border-radius:var(--radius-full);background:0 0;border:none;align-items:center;padding:4px;transition:color .2s;display:flex;position:absolute;right:12px}.auth-input-toggle:hover{color:var(--on-surface-variant);background:var(--surface-container)}.auth-submit-btn{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-container) 100%);color:#fff;width:100%;font-family:var(--font-family);cursor:pointer;letter-spacing:.01em;border:none;border-radius:12px;justify-content:center;align-items:center;gap:10px;margin-top:8px;padding:14px 24px;font-size:15px;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.auth-submit-btn:before{content:"";background:linear-gradient(90deg,#0000,#ffffff1a,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.auth-submit-btn:hover:before{left:100%}.auth-submit-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #003ec74d}.auth-submit-btn:active{transform:translateY(0);box-shadow:0 4px 12px #003ec733}.auth-submit-btn.loading{pointer-events:none;opacity:.85}.auth-spinner{border:2.5px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:22px;height:22px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.auth-divider{color:var(--outline);letter-spacing:.03em;align-items:center;gap:16px;margin:24px 0;font-size:12px;font-weight:500;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--outline-variant);flex:1;height:1px}.auth-social-row{gap:12px;display:flex}.auth-social-btn{border:1.5px solid var(--outline-variant);background:var(--surface-container-lowest);font-family:var(--font-family);color:var(--on-surface);cursor:pointer;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:10px;padding:11px 16px;font-size:14px;font-weight:500;transition:all .25s;display:flex}.auth-social-btn:hover{background:var(--surface-container);border-color:var(--outline);transform:translateY(-1px);box-shadow:0 4px 12px #0000000f}.auth-footer{text-align:center;color:var(--on-surface-variant);margin-top:28px;font-size:14px}.auth-switch-link{font-family:var(--font-family);color:var(--primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:14px;font-weight:600;transition:opacity .2s}.auth-switch-link:hover{opacity:.75;text-decoration:underline}@media (width<=1024px){.auth-left-panel{display:none}.auth-right-panel{width:100%;min-width:unset}.auth-mobile-brand{display:flex}}@media (width<=480px){.auth-right-panel{padding:32px 24px}.auth-hero-title{font-size:28px}.auth-social-row{flex-direction:column}}.landing-page{color:#10151f;background:radial-gradient(circle at 82% 6%,#10b98129,#0000 30%),radial-gradient(circle at 10% 18%,#0052ff29,#0000 34%),linear-gradient(#f7fbff 0%,#eef4f8 46%,#fff 100%);min-height:100vh;overflow-x:hidden}.landing-nav{justify-content:space-between;align-items:center;gap:24px;width:min(1180px,100% - 40px);min-height:76px;margin:0 auto;display:flex}.landing-brand,.landing-nav-cta,.landing-primary-action,.landing-secondary-action{text-decoration:none}.landing-brand{align-items:center;display:inline-flex}.landing-brand-logo{object-fit:contain;width:168px;height:auto;display:block}.landing-links{align-items:center;gap:28px;display:flex}.landing-links a,.landing-nav-cta{color:#526071;font-size:14px;font-weight:500}.landing-links a:hover,.landing-nav-cta:hover{color:#003ec7}.landing-nav-cta{background:#ffffffb8;border:1px solid #003ec72e;border-radius:8px;padding:10px 16px}.landing-hero{grid-template-columns:minmax(0,.9fr) minmax(480px,1.1fr);align-items:center;gap:48px;width:min(1180px,100% - 40px);min-height:calc(100vh - 76px);margin:0 auto;padding:28px 0 88px;display:grid}.landing-hero-copy{max-width:560px}.landing-kicker{color:#0052ff;letter-spacing:0;text-transform:uppercase;font-size:12px;font-weight:600}.landing-hero h1{letter-spacing:0;color:#10151f;margin-top:14px;font-size:clamp(32px,4.6vw,52px);font-weight:500;line-height:1.12}.landing-hero-subtitle{color:#445365;max-width:520px;margin-top:24px;font-size:20px;line-height:1.55}.landing-actions{flex-wrap:wrap;gap:14px;margin-top:34px;display:flex}.landing-primary-action,.landing-secondary-action{border-radius:8px;justify-content:center;align-items:center;gap:10px;min-height:48px;font-size:15px;font-weight:600;transition:transform .18s,box-shadow .18s,background .18s;display:inline-flex}.landing-primary-action{color:#fff;background:#003ec7;padding:0 20px;box-shadow:0 18px 38px #003ec73d}.landing-secondary-action{color:#203044;background:#ffffffa8;border:1px solid #52607138;padding:0 18px}.landing-primary-action:hover,.landing-secondary-action:hover{transform:translateY(-2px)}.landing-primary-action:hover{background:#002f9e;box-shadow:0 22px 42px #003ec74d}.landing-hero-visual{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffc2;border:1px solid #10151f1f;border-radius:8px;padding:16px;position:relative;box-shadow:0 34px 80px #1d2d432e}.landing-browser-bar{color:#718096;border-bottom:1px solid #10151f14;align-items:center;gap:8px;height:42px;padding:0 12px;display:flex}.landing-browser-bar span{background:#cbd5e1;border-radius:50%;width:10px;height:10px}.landing-browser-bar span:first-child{background:#ef4444}.landing-browser-bar span:nth-child(2){background:#f59e0b}.landing-browser-bar span:nth-child(3){background:#10b981}.landing-browser-bar strong{margin-left:10px;font-size:12px;font-weight:500}.landing-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-top:16px;display:grid}.landing-preview-kpi,.landing-preview-panel,.landing-capability,.landing-campaign-board{background:#fff;border:1px solid #10151f1a;border-radius:8px}.landing-preview-kpi{padding:16px}.landing-preview-kpi-top{color:#003ec7;justify-content:space-between;align-items:center;display:flex}.landing-preview-kpi-top small{color:#047857;background:#d1fae5;border-radius:6px;padding:2px 8px;font-weight:600}.landing-preview-kpi-top small.is-down{color:#b42318;background:#fee4e2}.landing-preview-kpi p{color:#64748b;margin-top:16px;font-size:13px;font-weight:500}.landing-preview-kpi strong{color:#10151f;margin-top:4px;font-size:26px;font-weight:600;line-height:1.2;display:block}.landing-preview-panel{margin-top:12px;padding:18px}.landing-preview-panel p{color:#64748b;font-size:13px;font-weight:500}.landing-preview-panel strong{color:#10151f;margin-top:5px;font-weight:600;display:block}.landing-mini-chart{border-top:1px solid #10151f14;align-items:end;gap:7px;height:150px;margin-top:20px;padding-top:18px;display:flex}.landing-mini-chart span{background:linear-gradient(#0052ff,#9dd8ff);border-radius:5px 5px 0 0;flex:1;min-width:0}.landing-proof-strip{color:#fff;background:#10151f;border:1px solid #10151f1a;border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));width:min(1180px,100% - 40px);margin:-36px auto 0;display:grid;overflow:hidden}.landing-proof-strip div{border-right:1px solid #ffffff1f;padding:24px}.landing-proof-strip div:last-child{border-right:0}.landing-proof-strip strong,.landing-proof-strip span{display:block}.landing-proof-strip strong{font-size:30px;line-height:1.1}.landing-proof-strip span{color:#aeb8c5;margin-top:6px;font-weight:500}.landing-section,.landing-workflow,.landing-final-cta,.landing-split-section,.landing-reporting-section,.landing-operations-section,.landing-faq-section,.landing-footer{width:min(1180px,100% - 40px);margin:0 auto}.landing-section{padding:108px 0 78px}.landing-section-heading{max-width:720px}.landing-section-heading h2,.landing-workflow h2,.landing-final-cta h2,.landing-reporting-section h2,.landing-operations-section h2{color:#10151f;letter-spacing:0;margin-top:10px;font-size:clamp(30px,4vw,48px);font-weight:600;line-height:1.08}.landing-capabilities{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:34px;display:grid}.landing-capability{min-height:230px;padding:24px;transition:transform .18s,box-shadow .18s}.landing-capability:hover{transform:translateY(-4px);box-shadow:0 18px 44px #1d2d431f}.landing-capability .material-symbols-outlined{color:#003ec7;background:#e9f2ff;border-radius:8px;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.landing-capability h3{color:#10151f;margin-top:24px;font-size:20px;font-weight:600}.landing-capability p{color:#526071;margin-top:10px;font-size:15px;line-height:1.65}.landing-workflow{border-top:1px solid #10151f14;border-bottom:1px solid #10151f14;grid-template-columns:minmax(0,.9fr) minmax(400px,.8fr);align-items:center;gap:48px;padding:72px 0;display:grid}.landing-workflow-steps{gap:12px;margin-top:30px;display:grid}.landing-workflow-step{color:#203044;align-items:center;gap:14px;font-weight:500;display:flex}.landing-workflow-step span{color:#fff;background:#003ec7;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.landing-campaign-board{padding:10px;box-shadow:0 24px 60px #1d2d431f}.landing-board-header,.landing-campaign-row{justify-content:space-between;align-items:center;display:flex}.landing-board-header{color:#64748b;text-transform:uppercase;padding:10px 12px 16px;font-size:13px;font-weight:600}.landing-campaign-row{border-top:1px solid #10151f14;gap:14px;padding:14px 12px}.landing-campaign-row strong,.landing-campaign-row span{display:block}.landing-campaign-row strong{color:#10151f;font-size:14px;font-weight:600}.landing-campaign-row span{color:#64748b;margin-top:4px;font-size:12px;font-weight:500}.landing-campaign-row small{color:#047857;background:#d1fae5;border-radius:6px;flex:none;padding:5px 8px;font-weight:600}.landing-final-cta{justify-content:space-between;align-items:center;gap:28px;padding:72px 0 88px;display:flex}.landing-final-cta h2{max-width:760px}.landing-split-section{padding:86px 0 72px}.landing-use-case-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:34px;display:grid}.landing-use-case{color:#10151f;background:linear-gradient(#fff 0%,#f5f9fc 100%);border:1px solid #10151f1a;border-radius:8px;flex-direction:column;gap:28px;min-height:250px;padding:24px;display:flex}.landing-use-case .material-symbols-outlined{color:#047857;background:#d1fae5;border-radius:8px;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.landing-use-case h3{font-size:20px;font-weight:600}.landing-use-case p{color:#526071;margin-top:10px;font-size:15px;line-height:1.65}.landing-reporting-section{border-top:1px solid #10151f14;grid-template-columns:minmax(0,.9fr) minmax(380px,.8fr);align-items:start;gap:54px;padding:78px 0;display:grid}.landing-reporting-copy p:not(.landing-kicker){color:#526071;max-width:600px;margin-top:18px;font-size:17px;line-height:1.65}.landing-reporting-list{gap:12px;display:grid}.landing-reporting-item{color:#203044;background:#fff;border:1px solid #10151f1a;border-radius:8px;align-items:flex-start;gap:12px;padding:18px;display:flex;box-shadow:0 12px 34px #1d2d4312}.landing-reporting-item .material-symbols-outlined{color:#047857;flex:none;font-size:22px}.landing-reporting-item p{font-size:15px;font-weight:500;line-height:1.5}.landing-operations-section{padding:14px 0 78px}.landing-operations-panel{color:#fff;background:linear-gradient(135deg,#0052ff29,#0000 42%),#10151f;border-radius:8px;grid-template-columns:minmax(0,.85fr) minmax(420px,1fr);align-items:center;gap:42px;padding:34px;display:grid;box-shadow:0 28px 70px #10151f33}.landing-operations-panel .landing-kicker{color:#9dd8ff}.landing-operations-panel h2{color:#fff}.landing-operations-grid{gap:12px;display:grid}.landing-operations-grid div{background:#ffffff0f;border:1px solid #ffffff1f;border-radius:8px;grid-template-columns:48px 1fr;align-items:center;gap:16px;padding:16px;display:grid}.landing-operations-grid strong{color:#9dd8ff;font-size:24px}.landing-operations-grid span{color:#d6dee8;font-weight:500;line-height:1.5}.landing-faq-section{padding:26px 0 72px}.landing-faq-list{gap:12px;margin-top:34px;display:grid}.landing-faq-item{background:#fff;border:1px solid #10151f1a;border-radius:8px;overflow:hidden}.landing-faq-item summary{color:#10151f;cursor:pointer;justify-content:space-between;align-items:center;gap:18px;padding:20px 22px;font-size:17px;font-weight:500;list-style:none;display:flex}.landing-faq-item summary::-webkit-details-marker{display:none}.landing-faq-item summary .material-symbols-outlined{color:#003ec7;flex:none;transition:transform .18s}.landing-faq-item[open] summary .material-symbols-outlined{transform:rotate(45deg)}.landing-faq-item p{color:#526071;padding:0 22px 22px;font-size:15px;line-height:1.65}.landing-footer{border-top:1px solid #10151f1a;padding:42px 0 30px}.landing-footer-main{grid-template-columns:minmax(220px,.8fr) minmax(0,1fr);align-items:start;gap:32px;display:grid}.landing-footer-main p{color:#526071;max-width:620px;font-size:15px;line-height:1.65}.landing-footer-links{flex-wrap:wrap;gap:18px 26px;margin-top:32px;display:flex}.landing-footer-links a{color:#526071;font-weight:500;text-decoration:none}.landing-footer-links a:hover{color:#003ec7}.landing-footer-bottom{color:#718096;border-top:1px solid #10151f14;justify-content:space-between;gap:18px;margin-top:34px;padding-top:22px;font-size:13px;font-weight:500;display:flex}@media (width<=960px){.landing-links{display:none}.landing-hero,.landing-workflow,.landing-reporting-section,.landing-operations-panel{grid-template-columns:1fr}.landing-hero{min-height:auto;padding-top:42px}.landing-hero-visual{max-width:680px}.landing-proof-strip,.landing-capabilities,.landing-use-case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-proof-strip div:nth-child(2){border-right:0}.landing-final-cta{flex-direction:column;align-items:flex-start}.landing-footer-main{grid-template-columns:1fr}}@media (width<=640px){.landing-nav,.landing-hero,.landing-proof-strip,.landing-section,.landing-workflow,.landing-final-cta,.landing-split-section,.landing-reporting-section,.landing-operations-section,.landing-faq-section,.landing-footer{width:min(100% - 28px,1180px)}.landing-nav{min-height:66px}.landing-brand{flex:none}.landing-brand-logo{width:138px}.landing-nav-cta{padding:8px 12px}.landing-hero{gap:32px;padding-bottom:58px}.landing-hero-subtitle{font-size:17px}.landing-primary-action,.landing-secondary-action{width:100%}.landing-hero-visual{padding:10px}.landing-preview-grid,.landing-proof-strip,.landing-capabilities,.landing-use-case-grid{grid-template-columns:1fr}.landing-browser-bar strong{display:none}.landing-proof-strip{margin-top:0}.landing-proof-strip div{border-bottom:1px solid #ffffff1f;border-right:0}.landing-proof-strip div:last-child{border-bottom:0}.landing-section{padding:74px 0 48px}.landing-workflow{padding:54px 0}.landing-split-section,.landing-reporting-section{padding:58px 0 44px}.landing-operations-section,.landing-faq-section{padding-bottom:52px}.landing-operations-panel{padding:24px}.landing-operations-grid div{grid-template-columns:1fr}.landing-faq-item summary{padding:18px;font-size:15px}.landing-faq-item p{padding:0 18px 18px}.landing-footer-bottom{flex-direction:column}.landing-mini-chart{gap:4px;height:110px}}.password-page{background:radial-gradient(circle at 20% 12%,#0052ff24,#0000 32%),linear-gradient(#f7fbff 0%,#eef4f8 100%);justify-content:center;align-items:center;min-height:100vh;padding:32px 20px;display:flex}.password-card{background:#fff;border:1px solid #10151f1a;border-radius:8px;width:min(100%,440px);padding:28px;box-shadow:0 24px 60px #1d2d431f}.password-brand{align-items:center;text-decoration:none;display:inline-flex}.password-brand-logo{object-fit:contain;width:160px;height:auto;display:block}.password-header{margin-top:28px}.password-header p{color:#0052ff;text-transform:uppercase;font-size:12px;font-weight:600}.password-header h1{color:#10151f;margin-top:10px;font-size:30px;font-weight:600;line-height:1.15}.password-header span{color:#526071;margin-top:12px;font-size:15px;line-height:1.6;display:block}.password-form{gap:12px;margin-top:24px;display:grid}.password-form label{color:#203044;font-size:13px;font-weight:600}.password-input-wrap{align-items:center;display:flex;position:relative}.password-input-wrap .material-symbols-outlined{color:#8a96a6;font-size:20px;position:absolute;left:13px}.password-input-wrap input{color:#10151f;width:100%;min-height:46px;font-family:var(--font-family);border:1px solid #10151f24;border-radius:8px;outline:none;padding:0 14px 0 44px;font-size:14px}.password-input-wrap input:focus{border-color:#003ec7;box-shadow:0 0 0 3px #003ec717}.password-form button{color:#fff;min-height:48px;font-family:var(--font-family);cursor:pointer;background:#003ec7;border:0;border-radius:8px;margin-top:4px;font-size:15px;font-weight:600}.password-form button:disabled{cursor:wait;opacity:.75}.password-message{color:#203044;background:#e9f2ff;border:1px solid #003ec724;border-radius:8px;margin-top:18px;padding:12px 14px;font-size:13px;line-height:1.5}.password-dev-link,.password-back-link{color:#003ec7;margin-top:16px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.password-dev-link:hover,.password-back-link:hover{text-decoration:underline}.auth-loading{color:#526071;background:#f7fbff;justify-content:center;align-items:center;min-height:100vh;font-size:15px;display:flex}.admin-page{gap:var(--container-padding);flex-direction:column;display:flex}.admin-header{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.admin-header h1{color:var(--on-surface);margin-top:6px}.admin-header span,.admin-table-header p{color:var(--on-surface-variant);margin-top:4px;display:block}.admin-alert{color:var(--on-error-container);border-radius:var(--radius);background:var(--error-container);border:1px solid #ba1a1a29;align-items:center;gap:10px;padding:12px 14px;display:flex}.admin-success{color:var(--success-dark);border:1px solid var(--success-border);border-radius:var(--radius);background:var(--success-light);align-items:center;gap:10px;padding:12px 14px;display:flex}.admin-kpi-grid{gap:var(--element-gap);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.admin-kpi-card{min-height:140px;padding:var(--card-inner-padding)}.admin-kpi-card div{width:40px;height:40px;color:var(--primary);border-radius:var(--radius);background:var(--primary-fixed);justify-content:center;align-items:center;display:flex}.admin-kpi-card p{color:var(--on-surface-variant);margin-top:18px}.admin-kpi-card strong{color:var(--on-surface);margin-top:4px;font-size:28px;line-height:36px;display:block}.admin-table-card{overflow:hidden}.admin-table-header{padding:var(--card-inner-padding);border-bottom:1px solid var(--outline-variant)}.admin-table-wrapper{overflow-x:auto}.admin-assign-card{overflow:hidden}.admin-assign-header{margin:calc(var(--card-inner-padding) * -1) calc(var(--card-inner-padding) * -1) 18px}.admin-assign-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;display:grid}.admin-assign-grid label{color:var(--on-surface-variant);gap:6px;font-size:12px;font-weight:600;display:grid}.admin-assign-grid label:first-child,.admin-assign-grid label:nth-child(3),.admin-daily-grid label:first-child{grid-column:span 2}.admin-daily-grid label:nth-child(3){grid-column:auto}.admin-assign-actions{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.admin-table-action{border:1px solid var(--outline-variant);border-radius:var(--radius-full);background:var(--surface-container-lowest);min-height:30px;color:var(--on-surface-variant);cursor:pointer;transition:background var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);justify-content:center;align-items:center;gap:5px;padding:0 10px;font-size:12px;font-weight:800;display:inline-flex}.admin-table-action:hover{border-color:var(--outline);background:var(--surface-container-low);color:var(--on-surface);box-shadow:var(--shadow-sm)}.admin-role-badge{border-radius:var(--radius-full);text-transform:capitalize;padding:2px 10px;font-size:12px;font-weight:600;display:inline-flex}.admin-role-badge.admin{color:var(--on-primary-fixed);background:var(--primary-fixed)}.admin-role-badge.user{color:var(--on-surface-variant);background:var(--surface-variant)}@media (width<=1200px){.admin-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=768px){.admin-page{gap:14px}.admin-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.admin-kpi-card{min-height:118px}.admin-kpi-card strong{font-size:24px;line-height:30px}.admin-table-wrapper .data-table{min-width:1080px}.admin-assign-grid{grid-template-columns:1fr}.admin-assign-grid label:first-child,.admin-assign-grid label:nth-child(3){grid-column:auto}.admin-assign-actions .btn{width:100%}}@media (width<=420px){.admin-kpi-grid{grid-template-columns:1fr}}.admin-login-page{color:#10151f;background:radial-gradient(circle at 20% 10%,#0052ff2e,#0000 32%),radial-gradient(circle at 84% 8%,#10b9811f,#0000 26%),linear-gradient(#f7fbff 0%,#eef4f8 100%);justify-content:center;align-items:center;min-height:100vh;padding:28px;display:flex}.admin-login-panel{background:#fff;border:1px solid #10151f1a;border-radius:8px;width:min(100%,430px);padding:30px;box-shadow:0 24px 60px #1d2d4324}.admin-login-logo{object-fit:contain;width:168px;height:auto;display:block}.admin-login-kicker{color:#0052ff;text-transform:uppercase;margin-top:22px;font-size:12px;font-weight:600}.admin-login-panel h1{margin-top:10px;font-size:32px;font-weight:600;line-height:1.15}.admin-login-copy{color:#526071;margin-top:10px;font-size:15px;line-height:1.6}.admin-login-error{color:#93000a;background:#ffdad6;border:1px solid #ba1a1a2e;border-radius:8px;gap:10px;margin-top:18px;padding:12px 14px;font-size:13px;display:flex}.admin-login-form{gap:12px;margin-top:24px;display:grid}.admin-login-form label{color:#203044;font-size:13px;font-weight:600}.admin-login-input{align-items:center;display:flex;position:relative}.admin-login-input>.material-symbols-outlined{color:#8a96a6;pointer-events:none;font-size:20px;position:absolute;left:13px}.admin-login-input input{color:#10151f;width:100%;min-height:46px;font-family:var(--font-family);border:1px solid #10151f24;border-radius:8px;outline:none;padding:0 44px;font-size:14px}.admin-login-input input:focus{border-color:#003ec7;box-shadow:0 0 0 3px #003ec717}.admin-login-toggle{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex;position:absolute;right:9px}.admin-login-submit{color:#fff;min-height:48px;font-family:var(--font-family);cursor:pointer;background:#10151f;border:0;border-radius:8px;margin-top:4px;font-size:15px;font-weight:600}.admin-login-submit:disabled{cursor:wait;opacity:.75}
