@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Manrope:wght@300;400;500;600;700;800&display=swap";:root{--ocean-50: #F0F7F8;--ocean-100: #D6E8EC;--ocean-200: #B3D1D7;--ocean-300: #88B1BE;--ocean-400: #5D8A96;--ocean-500: #37646E;--ocean-600: #104C58;--ocean-700: #0D3E47;--ocean-800: #0A3036;--ocean-900: #072225;--neutral-50: #FDFEFE;--neutral-100: #F8FAFB;--neutral-200: #E5E7EB;--neutral-300: #D1D5DB;--neutral-400: #9CA3AF;--neutral-500: #6B7280;--neutral-600: #4B5563;--neutral-700: #374151;--neutral-800: #1F2937;--neutral-900: #111827;--bright-purple: #8A7CA8;--bright-purple-light: #A699BA;--bright-purple-dark: #7A6B96;--success-50: #ECFDF5;--success-100: #D1FAE5;--success-200: #A7F3D0;--success-500: #10B981;--success-600: #059669;--success-700: #047857;--warning-50: #FFFBEB;--warning-100: #FEF3C7;--warning-200: #FDE68A;--warning-500: #F59E0B;--warning-600: #D97706;--warning-700: #B45309;--error-50: #FEF2F2;--error-100: #FEE2E2;--error-200: #FECACA;--error-500: #EF4444;--error-600: #DC2626;--error-700: #B91C1C;--info-50: #EFF6FF;--info-100: #DBEAFE;--info-200: #BFDBFE;--info-500: #3B82F6;--info-600: #2563EB;--info-700: #1D4ED8;--color-primary: var(--ocean-600);--color-primary-hover: var(--ocean-700);--color-secondary: var(--ocean-300);--color-secondary-hover: var(--ocean-400);--color-accent: var(--bright-purple);--color-accent-hover: var(--bright-purple-dark);--color-background: #F3F4F6;--color-surface: var(--neutral-50);--color-card: var(--neutral-50);--color-text-primary: var(--neutral-800);--color-text-secondary: var(--neutral-600);--color-text-muted: var(--neutral-500);--color-border: var(--neutral-200);--color-border-light: var(--neutral-100);--color-success: var(--success-500);--color-success-bg: var(--success-50);--color-warning: var(--warning-500);--color-warning-bg: var(--warning-50);--color-error: var(--error-500);--color-error-bg: var(--error-50);--color-info: var(--info-500);--color-info-bg: var(--info-50);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--font-primary: "Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "SF Mono", Monaco, "Cascadia Code", monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--font-light: 300;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--font-extrabold: 800;--radius-sm: 6px;--radius-base: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-2xl: 24px;--radius-full: 50px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1), 0 1px 2px rgba(0, 0, 0, .06);--shadow-base: 0 4px 6px rgba(0, 0, 0, .07), 0 2px 4px rgba(0, 0, 0, .06);--shadow-md: 0 10px 15px rgba(0, 0, 0, .1), 0 4px 6px rgba(0, 0, 0, .05);--shadow-lg: 0 20px 25px rgba(0, 0, 0, .1), 0 10px 10px rgba(0, 0, 0, .04);--shadow-xl: 0 25px 50px rgba(0, 0, 0, .15), 0 10px 20px rgba(0, 0, 0, .1);--shadow-floating: 0 8px 25px rgba(0, 0, 0, .08), 0 3px 10px rgba(0, 0, 0, .05);--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--sidebar-width: 280px;--container-sm: 640px;--container-md: 768px;--container-lg: 1024px;--container-xl: 1280px;--container-2xl: 1400px}.btn-base{font-family:var(--font-primary);font-weight:var(--font-semibold);border:none;border-radius:var(--radius-full);cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);font-size:var(--text-sm);line-height:1;text-decoration:none;box-shadow:var(--shadow-base)}.btn-primary{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-hover) 100%);color:var(--neutral-50);box-shadow:var(--shadow-base);border-radius:var(--radius-full)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-secondary{background:#88b1be26;color:var(--color-primary);border:1px solid var(--color-secondary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-full)}.btn-secondary:hover{background:#88b1be40;transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-ghost{background:#ffffff26;color:var(--neutral-50);border:1px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-full)}.btn-ghost:hover{background:#ffffff40;border-color:#ffffff80}.btn-accent{background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-hover) 100%);color:var(--neutral-50);box-shadow:var(--shadow-base);border-radius:var(--radius-full)}.btn-accent:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-large{padding:var(--space-4) var(--space-8);font-size:var(--text-base)}.btn-small{padding:var(--space-2) var(--space-4);font-size:var(--text-xs)}.btn-base:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:var(--shadow-sm)}.btn-base:disabled:hover{transform:none;box-shadow:var(--shadow-sm)}.card-base{background:var(--color-background);border-radius:var(--radius-lg);box-shadow:var(--shadow-base);border:none;padding:var(--space-6);transition:all .2s ease}.card-base:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.card-glass{background:#ffffff1a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:var(--radius-2xl);border:none;padding:var(--space-8);transition:all .2s ease;color:var(--neutral-50);margin-bottom:var(--space-6)}.card-glass:hover{background:#ffffff26;transform:translateY(-2px)}.card-glass h4,.card-glass h3,.card-glass h2,.card-glass h1{color:var(--neutral-50)}.card-glass p{color:var(--neutral-200)}.card-layered{background:var(--color-card);border-radius:var(--radius-2xl);box-shadow:var(--shadow-floating);border:none;padding:var(--space-8);transition:all .2s ease;margin-bottom:var(--space-6)}.card-layered.interactive-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.input-base{font-family:var(--font-primary);border:none;border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);background:var(--color-surface);color:var(--color-text-primary);font-size:var(--text-base);transition:all .2s ease;width:100%;box-shadow:var(--shadow-sm);font-weight:var(--font-medium)}.input-base:focus{outline:none;box-shadow:var(--shadow-md),0 0 0 3px #88b1be26;transform:translateY(-1px);background:var(--color-card)}.input-base::placeholder{color:var(--color-text-muted)}.input-base:disabled{background:var(--neutral-200);color:var(--neutral-400);opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}.input-base:disabled::placeholder{color:var(--neutral-400)}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-muted{color:var(--color-text-muted)}.text-xs{font-size:var(--text-xs)}.text-sm{font-size:var(--text-sm)}.text-base{font-size:var(--text-base)}.text-lg{font-size:var(--text-lg)}.text-xl{font-size:var(--text-xl)}.text-2xl{font-size:var(--text-2xl)}.text-3xl{font-size:var(--text-3xl)}.text-4xl{font-size:var(--text-4xl)}.text-5xl{font-size:var(--text-5xl)}.font-light{font-weight:var(--font-light)}.font-normal{font-weight:var(--font-normal)}.font-medium{font-weight:var(--font-medium)}.font-semibold{font-weight:var(--font-semibold)}.font-bold{font-weight:var(--font-bold)}.font-extrabold{font-weight:var(--font-extrabold)}.stat-card-clean,.card-layered,.card-base{transition:none!important;transform:none!important}.stat-card-clean:hover,.card-layered:hover,.card-base:hover{transform:none!important;box-shadow:inherit!important}:root{--sidebar-width: 280px;--ocean-600: #104C58;--color-primary: #104C58;--color-background: #F3F4F6;--neutral-50: #FDFEFE;--space-6: 1.5rem;--radius-xl: 20px;--shadow-md: 0 10px 15px rgba(0, 0, 0, .1), 0 4px 6px rgba(0, 0, 0, .05)}*{backface-visibility:hidden!important;-webkit-backface-visibility:hidden!important}.stat-card-clean,.dashboard-chart,.dashboard-bills{animation:none!important;transition:none!important}@media (max-width: 768px){.dashboard-main{margin-left:0!important}}*{box-sizing:border-box}body{margin:0;font-family:var(--font-primary);background-color:var(--color-background);color:var(--color-text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-weight:var(--font-bold);letter-spacing:-.025em;line-height:1.2;margin:0;color:var(--color-text-primary)}h1{font-size:var(--text-4xl);font-weight:var(--font-extrabold)}h2{font-size:var(--text-3xl);font-weight:var(--font-bold)}h3{font-size:var(--text-2xl);font-weight:var(--font-semibold)}h4{font-size:var(--text-xl);font-weight:var(--font-semibold)}h5{font-size:var(--text-lg);font-weight:var(--font-medium)}h6{font-size:var(--text-base);font-weight:var(--font-medium)}p{margin:0 0 var(--space-4) 0;color:var(--color-text-secondary);line-height:1.6}a{color:var(--color-primary);text-decoration:none;transition:color .2s ease}a:hover{color:var(--color-primary-hover)}*:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}button{background:none;border:none;font-family:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.notification-container{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:12px;pointer-events:none}.notification{background:var(--neutral-50, #FDFEFE);border-radius:var(--radius-xl, 16px);box-shadow:0 10px 25px -5px #104c5826,0 4px 10px -2px #104c580d;border:1px solid rgba(136,177,190,.2);min-width:320px;max-width:420px;padding:16px 20px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;animation:slideInNotification .3s ease-out;pointer-events:all;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.notification:hover{transform:translateY(-2px);box-shadow:0 15px 35px -5px #104c5833,0 6px 15px -2px #104c5814}@keyframes slideInNotification{0%{opacity:0;transform:translate(100%) scale(.95)}to{opacity:1;transform:translate(0) scale(1)}}.notification__content{display:flex;align-items:flex-start;gap:12px;flex:1}.notification__icon{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;margin-top:2px}.notification__message{font-family:Manrope,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;line-height:1.5;color:var(--neutral-800, #1F2937);flex:1}.notification__close{background:none;border:none;color:var(--neutral-400, #9CA3AF);cursor:pointer;font-size:14px;padding:4px;border-radius:4px;transition:all .15s ease;flex-shrink:0;margin-top:-2px}.notification__close:hover{background:var(--neutral-100, #F8FAFB);color:var(--neutral-600, #4B5563)}.notification--success{border-left:4px solid var(--success, #10B981)}.notification--success .notification__icon{background:var(--success, #10B981);color:#fff}.notification--error{border-left:4px solid var(--error, #EF4444)}.notification--error .notification__icon{background:var(--error, #EF4444);color:#fff}.notification--warning{border-left:4px solid var(--warning, #F59E0B)}.notification--warning .notification__icon{background:var(--warning, #F59E0B);color:#fff}.notification--info{border-left:4px solid var(--sky-blue, #88B1BE)}.notification--info .notification__icon{background:var(--sky-blue, #88B1BE);color:#fff}@media (max-width: 480px){.notification-container{top:10px;right:10px;left:10px}.notification{min-width:auto;max-width:none}}.coming-soon-page{min-height:100vh;background:#d4cabc;display:flex;align-items:center;justify-content:center;padding:2rem 1rem;font-family:var(--font-primary, "Manrope", system-ui, sans-serif)}.coming-soon-container{max-width:600px;width:100%;text-align:center}.coming-soon-content{background:#faf9f6;border-radius:16px;padding:3rem 2rem;box-shadow:0 2px 8px #0000000f,0 1px 3px #0000000a;border:none}.coming-soon-logo{margin-bottom:2rem}.coming-soon-title{font-size:3rem;font-weight:700;color:var(--ocean-600, #104C58);margin:0 0 1.5rem;line-height:1.2;letter-spacing:-.02em}.coming-soon-tagline{font-size:1.5rem;font-weight:600;color:var(--ocean-600, #104C58);margin:0 0 1rem;line-height:1.4}.coming-soon-subtext{font-size:1.1rem;color:var(--ocean-500, #37646E);margin:0 0 2.5rem;line-height:1.6}.coming-soon-form{display:flex;gap:.75rem;max-width:400px;margin:0 auto 1.5rem;flex-direction:column}.coming-soon-input{flex:1;border:2px solid var(--neutral-200, #E5E7EB);font-size:1rem;padding:.875rem 1.25rem;background:#fff;color:var(--ocean-600, #104C58);outline:none;border-radius:9999px;font-family:inherit;transition:border-color .3s ease,box-shadow .3s ease;box-shadow:0 1px 3px #0000001a}.coming-soon-input:focus{border-color:var(--ocean-300, #88B1BE);box-shadow:0 1px 3px #0000001a,0 0 0 3px #88b1be26}.coming-soon-input::placeholder{color:var(--neutral-500, #6B7280)}.coming-soon-button{background:linear-gradient(135deg,var(--ocean-600, #104C58) 0%,var(--ocean-700, #0D3E47) 100%);color:#fff;padding:.875rem 2rem;border:none;border-radius:9999px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 6px #00000012,0 2px 4px #0000000f;white-space:nowrap;font-family:inherit;min-height:52px}.coming-soon-button:hover{background:linear-gradient(135deg,var(--ocean-700, #0D3E47) 0%,var(--ocean-800, #0A3036) 100%);transform:translateY(-2px);box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d}.coming-soon-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.coming-soon-success{background:var(--success-50, #ECFDF5);border:1px solid var(--success-200, #A7F3D0);padding:1rem 2rem;border-radius:12px;margin:0 auto 1.5rem;max-width:300px}.coming-soon-success p{color:var(--success-700, #047857);font-weight:600;margin:0;font-size:1rem}.coming-soon-error{background:#dc26261a;border:1px solid rgba(220,38,38,.3);padding:1rem 2rem;border-radius:12px;margin:0 auto 1.5rem;max-width:400px}.coming-soon-error p{color:#dc2626;font-weight:500;margin:0;font-size:.95rem;line-height:1.4}.coming-soon-note{font-size:.875rem;color:var(--neutral-600, #4B5563);margin:0 0 1.5rem}@media (max-width: 768px){.coming-soon-content{padding:2rem 1.5rem}.coming-soon-title{font-size:2.5rem}.coming-soon-tagline{font-size:1.25rem}.coming-soon-subtext{font-size:1rem}.logo-image{height:60px}}@media (max-width: 480px){.coming-soon-form{gap:1rem}.coming-soon-title{font-size:2rem}.coming-soon-content{padding:1.5rem 1rem}}.feedback-button{position:fixed;bottom:2rem;right:2rem;background:#104c5840;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:50px;padding:.75rem 1.25rem;display:flex;align-items:center;gap:.5rem;font-family:Manrope,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.875rem;font-weight:600;cursor:pointer;box-shadow:0 4px 12px #00000026,0 2px 4px #0000001a;transition:all .3s ease;z-index:1000;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.feedback-button:hover{transform:translateY(-2px);box-shadow:0 8px 16px #0003,0 4px 6px #00000026;background:#104c5859;border-color:#ffffff80}.feedback-button:active{transform:translateY(0);box-shadow:0 2px 4px #104c5833}.feedback-button svg{width:20px;height:20px;flex-shrink:0}.feedback-button span{white-space:nowrap}@media (max-width: 768px){.feedback-button{bottom:1rem;right:1rem;padding:.625rem 1rem;font-size:.75rem}.feedback-button svg{width:18px;height:18px}}@media (max-width: 480px){.feedback-button span{display:none}.feedback-button{padding:.75rem;border-radius:50%}}.auth-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#104c5866;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.auth-modal{background:var(--neutral-50, #FDFEFE);border-radius:var(--radius-2xl, 24px);box-shadow:0 25px 50px -12px #104c5840,0 10px 25px -5px #104c581a;max-width:400px;width:90%;max-height:90vh;overflow-y:auto;animation:slideIn .3s ease-out;border:1px solid rgba(136,177,190,.2)}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.auth-modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-6, 24px) var(--space-6, 24px) 0 var(--space-6, 24px);border-bottom:1px solid var(--ocean-200, #B3D1D7);margin-bottom:var(--space-6, 24px)}.auth-modal-header h2{margin:0;font-size:var(--text-xl, 1.25rem);font-weight:var(--font-bold, 700);color:var(--ocean-800, #0A3036);font-family:var(--font-primary, "Manrope", sans-serif)}.auth-modal-close{background:none;border:none;font-size:24px;color:var(--neutral-500, #6B7280);cursor:pointer;padding:var(--space-2, 8px);border-radius:var(--radius-full, 9999px);transition:all .2s ease;width:36px;height:36px;display:flex;align-items:center;justify-content:center}.auth-modal-close:hover{background-color:var(--ocean-50, #F0F7F8);color:var(--ocean-700, #0D3E47)}.auth-modal-body{padding:0 var(--space-6, 24px) var(--space-6, 24px)}.auth-error{background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);color:var(--error, #EF4444);padding:var(--space-3, 12px);border-radius:var(--radius-lg, 12px);margin-bottom:var(--space-4, 16px);font-size:var(--text-sm, .875rem)}.form-group{margin-bottom:var(--space-4, 16px)}.form-group label{display:block;margin-bottom:var(--space-2, 6px);font-weight:var(--font-medium, 500);color:var(--ocean-700, #0D3E47);font-size:var(--text-sm, .875rem);font-family:var(--font-primary, "Manrope", sans-serif)}.form-group input{width:100%;padding:var(--space-3, 12px) var(--space-4, 16px);border:2px solid var(--ocean-200, #B3D1D7);border-radius:var(--radius-full, 9999px);font-size:var(--text-base, 1rem);font-family:var(--font-primary, "Manrope", sans-serif);transition:all .2s ease;box-sizing:border-box;background:var(--neutral-50, #FDFEFE)}.form-group input:focus{outline:none;border-color:var(--ocean-400, #5D8A96);box-shadow:0 0 0 4px #88b1be26}.form-group input::placeholder{color:var(--neutral-400, #9CA3AF)}.auth-submit-btn{width:100%;background:var(--ocean-600, #104C58);color:var(--neutral-50, #FDFEFE);border:none;padding:var(--space-4, 16px);border-radius:var(--radius-full, 9999px);font-size:var(--text-base, 1rem);font-weight:var(--font-semibold, 600);font-family:var(--font-primary, "Manrope", sans-serif);cursor:pointer;transition:all .2s ease;margin-bottom:var(--space-4, 16px);box-shadow:0 4px 6px #104c5833}.auth-submit-btn:hover:not(:disabled){background:var(--ocean-700, #0D3E47);transform:translateY(-1px);box-shadow:0 6px 12px #104c584d}.auth-submit-btn:disabled{background:var(--neutral-400, #9CA3AF);cursor:not-allowed;transform:none;box-shadow:none}.auth-modal-footer{text-align:center;color:var(--neutral-500, #6B7280);font-size:var(--text-sm, .875rem);font-family:var(--font-primary, "Manrope", sans-serif)}.auth-modal-footer p{margin:var(--space-2, 8px) 0}.auth-link-btn{background:none;border:none;color:var(--ocean-400, #5D8A96);cursor:pointer;text-decoration:underline;margin-left:var(--space-1, 4px);font-size:inherit;font-family:var(--font-primary, "Manrope", sans-serif);transition:color .2s ease}.auth-link-btn:hover{color:var(--ocean-600, #104C58)}@media (max-width: 480px){.auth-modal{width:95%;margin:20px}.auth-modal-header,.auth-modal-body{padding-left:16px;padding-right:16px}.auth-modal-header h2{font-size:1.25rem}}.auth-submit-btn:disabled{position:relative}.auth-submit-btn:disabled:after{content:"";position:absolute;width:16px;height:16px;margin:auto;border:2px solid transparent;border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite;top:0;left:0;bottom:0;right:0}.checkbox-group{margin-bottom:var(--space-6, 24px)}.checkbox-label{display:flex;align-items:flex-start;gap:var(--space-2, 8px);cursor:pointer;font-size:var(--text-sm, .875rem);color:var(--neutral-600, #4B5563);line-height:1.5}.checkbox-label input[type=checkbox]{width:18px;height:18px;min-width:18px;margin-top:2px;cursor:pointer;accent-color:var(--ocean-600, #104C58)}.checkbox-label span{flex:1}.checkbox-label a{color:var(--ocean-400, #5D8A96);text-decoration:none;transition:color .2s ease}.checkbox-label a:hover{color:var(--ocean-600, #104C58);text-decoration:underline}.vizta-landing{--primary-dark: var(--ocean-600);--primary-light: var(--ocean-300);--accent-yellow: #FFBF47;--background-cream: #FFFAEE;--surface-white: #ffffff;--primary-medium: #2d6b78;--primary-soft: #a4c5d0;--accent-gold: #e6a830;--accent-warm: #ffd580;--surface-light: #f8f4e6;--text-muted: #5a7a84;--shadow-soft: rgba(16, 76, 88, .1);--shadow-medium: rgba(16, 76, 88, .2);--page-bg: #D4CABC;--card-bg: #FAF9F6;--card-radius: 16px;--card-shadow: 0 2px 8px rgba(0, 0, 0, .06), 0 1px 3px rgba(0, 0, 0, .04);--card-padding: 4rem 3rem;--section-gap: 1.5rem;--section-gap-vertical: 1.5rem;--font-size-xs: .875rem;--font-size-sm: .95rem;--font-size-base: 1rem;--font-size-md: 1.1rem;--font-size-lg: 1.25rem;--font-size-xl: 1.5rem;--font-size-2xl: 1.75rem;--font-size-3xl: 2rem;--font-size-4xl: 2.5rem;--font-size-5xl: 2.75rem;--section-padding: 5rem 1rem;background-color:var(--page-bg)}.container{max-width:960px;margin:0 auto;padding:0 1rem}.vizta-landing>section{background:#f8f8f8;border-radius:16px;padding:3rem;margin:1.5rem}.hero{background:var(--card-bg)!important}@media (max-width: 768px){.vizta-landing>section{padding:2rem 1.5rem;margin:1rem;border-radius:12px}}.hero{text-align:center;position:relative;display:flex;align-items:flex-start;justify-content:center;overflow:hidden;padding:var(--card-padding);background:var(--card-bg);margin:var(--section-gap);border-radius:var(--card-radius);box-shadow:var(--card-shadow);min-height:calc(100vh - 3rem)}.hero-video{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;object-fit:cover;filter:contrast(1.05) saturate(1.1) brightness(.5);background-color:#2d5f6d;opacity:0;transition:opacity .3s ease-in;border-radius:var(--card-radius)}.hero-video[data-loaded=true]{opacity:1}.hero-oval-container{position:relative;z-index:1;width:auto;max-width:900px;margin:0 auto;padding:2rem 4rem;margin-top:12rem}.hero-content{max-width:1100px;margin:0 auto;position:relative;z-index:2}.hero h2{margin-top:0;font-size:3.5rem;font-weight:700;color:#fffaee;margin-bottom:1.5rem;line-height:1.2;letter-spacing:-.02em;text-shadow:0 2px 8px rgba(0,0,0,.3)}.hero p{font-size:var(--font-size-lg);color:#fffaee;margin-bottom:1.5rem;text-align:center;line-height:1.5;font-weight:500;text-shadow:0 2px 6px rgba(0,0,0,.3)}.hero-supporting{margin-bottom:2.5rem;margin-top:2rem}.hero-tagline{font-size:1.5rem;color:#fffaee;margin:0 auto;max-width:800px;text-align:center;line-height:1.5;font-weight:500;text-shadow:0 2px 6px rgba(0,0,0,.3)}.hero-tagline strong{font-weight:800;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.5)}.hero-text-container{transition:opacity .8s cubic-bezier(.4,0,.2,1)}.hero-text-fade-in{opacity:1}.hero-text-fade-out{opacity:0}.hero-supporting{transition:opacity .8s cubic-bezier(.4,0,.2,1)}.hero-supporting.hero-text-fade-in{opacity:1}.hero-supporting.hero-text-fade-out{opacity:0}@media (max-width: 768px){.hero{min-height:70vh;padding:3rem 1rem}.hero-oval-container{border-radius:50px;padding:2rem 2.5rem;max-width:90%}.hero h2{font-size:2.25rem}.hero p{font-size:var(--font-size-md)}.hero-tagline{font-size:1.1rem}}@media (max-width: 480px){.hero-oval-container{border-radius:40px;padding:1.5rem 2rem;max-width:95%}}@media (max-width: 768px){.hero{min-height:70vh;padding:3rem 1rem 30rem}.hero h2{font-size:2.25rem}.hero p{font-size:var(--font-size-md)}.hero-tagline{font-size:1.1rem}}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border:none;border-radius:50px;font-family:inherit;font-size:var(--font-size-base);font-weight:600;text-decoration:none;cursor:pointer;transition:all .3s ease;outline:none;white-space:nowrap;min-height:48px;box-sizing:border-box;line-height:1}.btn-primary{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:50px;min-height:48px;font-size:var(--font-size-base);font-family:inherit;font-weight:700;cursor:pointer;white-space:nowrap;text-decoration:none;box-sizing:border-box;line-height:1;background:#fffffff2;color:var(--primary-dark);box-shadow:0 4px 16px #00000026;border:2px solid rgba(255,255,255,1);transition:all .3s ease;position:relative;overflow:visible}.btn-primary:hover{background:#fff;transform:translateY(-2px);box-shadow:0 8px 24px #00000040}.btn-secondary{background:#fff3;color:#fff;box-shadow:0 2px 8px #0003;border:2px solid rgba(255,255,255,.6);font-weight:600;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.btn-secondary:hover{background:#ffffff4d;transform:translateY(-2px);box-shadow:0 4px 16px #0000004d;border-color:#fffc}.btn-learn-more{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:50px;min-height:48px;font-size:var(--font-size-base);font-family:inherit;font-weight:700;cursor:pointer;white-space:nowrap;text-decoration:none;box-sizing:border-box;line-height:1;border:none;outline:none;position:relative;overflow:hidden;min-width:180px;background:#fffffff2;color:var(--primary-dark);box-shadow:0 4px 16px #00000026;border:2px solid rgba(255,255,255,1);transition:all .3s cubic-bezier(.68,-.55,.265,1.55)}.btn-learn-more:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#88b1be66;transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease}.btn-learn-more:hover:before{width:300px;height:300px}.btn-learn-more span{position:relative;z-index:1}.btn-learn-more:hover{transform:translateY(-4px) scale(1.05);box-shadow:0 12px 32px #0000004d;border-color:#88b1becc}.btn-learn-more:active{transform:translateY(-2px) scale(1.02)}.btn-animated{background:#88b1be4d;color:#fff;box-shadow:0 4px 16px #00000026;border:2px solid rgba(255,255,255,.6);font-weight:700;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);position:relative;overflow:hidden;display:inline-flex;justify-content:center;align-items:center;padding:.75rem 1.5rem;border-radius:50px;min-height:48px;font-size:var(--font-size-base);font-family:inherit;cursor:pointer;transition:background .3s ease,box-shadow .3s ease,border-color .3s ease,transform .3s ease;border:none;outline:none;box-sizing:border-box;line-height:1;white-space:nowrap;text-decoration:none;width:auto;min-width:180px}.btn-animated:hover{background:#88b1be66;box-shadow:0 6px 20px #0003;border-color:#fffc;transform:translateY(-2px)}.btn-animated .span-mother{display:flex;overflow:hidden;position:relative;height:1em}.btn-animated:hover .span-mother{position:absolute;left:50%;transform:translate(-50%)}.btn-animated:hover .span-mother span{transform:translateY(1.2em)}.btn-animated .span-mother span:nth-child(1){transition:.2s}.btn-animated .span-mother span:nth-child(2){transition:.3s}.btn-animated .span-mother span:nth-child(3){transition:.4s}.btn-animated .span-mother span:nth-child(4){transition:.5s}.btn-animated .span-mother span:nth-child(5){transition:.6s}.btn-animated .span-mother span:nth-child(6){transition:.7s}.btn-animated .span-mother span:nth-child(7){transition:.8s}.btn-animated .span-mother2{display:flex;position:absolute;overflow:hidden;left:50%;transform:translate(-50%);height:1em}.btn-animated .span-mother2 span{transform:translateY(-1.2em)}.btn-animated:hover .span-mother2 span{transform:translateY(0)}.btn-animated .span-mother2 span:nth-child(1){transition:.2s}.btn-animated .span-mother2 span:nth-child(2){transition:.3s}.btn-animated .span-mother2 span:nth-child(3){transition:.4s}.btn-animated .span-mother2 span:nth-child(4){transition:.5s}.btn-animated .span-mother2 span:nth-child(5){transition:.6s}.btn-animated .span-mother2 span:nth-child(6){transition:.7s}.btn-animated .span-mother2 span:nth-child(7){transition:.8s}.btn-outline{background:transparent;color:var(--surface-white);border:2px solid var(--surface-white)}.btn-outline:hover{background:var(--surface-white);color:var(--primary-dark);transform:translateY(-2px);box-shadow:0 6px 16px var(--shadow-medium)}.btn-glow{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border:0;position:relative;overflow:visible;border-radius:50px;transition:all .3s;font-weight:700;cursor:pointer;background:#fffffff2;color:var(--primary-dark);min-height:48px;font-family:inherit;font-size:var(--font-size-base);isolation:isolate}.btn-glow:hover{background:#88b1be4d;color:#fff;transform:translateY(-2px)}.btn-glow:active{transform:scale(.97)}.hoverEffect{position:absolute;bottom:0;top:0;left:0;right:0;display:flex;align-items:center;justify-content:center;z-index:-1;pointer-events:none}.hoverEffect div{background:linear-gradient(90deg,#104c58,#88b1be 49%,#58b19f);border-radius:40rem;width:10rem;height:10rem;transition:.4s;filter:blur(20px);animation:glowRotate infinite 3s linear;opacity:.8}.btn-glow:hover .hoverEffect div{width:12rem;height:12rem;opacity:1}@keyframes glowRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.hero-buttons{display:flex;gap:1.25rem;justify-content:center;align-items:center;flex-wrap:nowrap;margin-bottom:1rem;margin-top:10rem}.hero-buttons .btn{min-width:180px}@media (max-width: 768px){.hero-buttons{flex-direction:column;width:100%}.hero-buttons .btn{width:100%;min-width:auto}}.hero-thank-you{color:#2ecc71;font-weight:600;margin:.5rem 0 0;font-size:var(--font-size-sm)}.clarity-mission{padding:7.5rem 5rem;background:#2d6b78b3!important;margin:var(--section-gap);border-radius:var(--card-radius);box-shadow:none;position:relative;overflow:visible}.clarity-mission .section-content h2{color:#fff!important}.clarity-mission .section-content p{color:#ffffffe6!important}.content-section{position:relative;max-width:1200px;margin:0 auto 6rem;padding-top:2.5rem}.content-section:first-child{margin-top:0}.content-section:last-of-type{margin-bottom:3rem}.section-label{position:absolute;top:-.5rem;left:0;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);opacity:.6;font-family:Manrope,system-ui,-apple-system,sans-serif;z-index:2}.section-content{width:100%}.section-content h2{font-size:2.25rem;font-weight:700;line-height:1.3;color:#1a1a1a;margin:0 0 1.5rem;letter-spacing:-.01em;font-family:Manrope,system-ui,-apple-system,sans-serif}.section-content p{font-size:1.125rem;font-weight:400;line-height:1.7;color:#525252;margin-bottom:1.25rem;font-family:Manrope,system-ui,-apple-system,sans-serif}.section-content p:last-child{margin-bottom:0}.content-section:first-child .section-content{display:flex;align-items:stretch;gap:1rem}.clarity-text-content{flex:1;text-align:left;background:#f0f0f0;padding:3rem;border-radius:6px;display:flex;flex-direction:column;justify-content:center}.clarity-image-content{flex:1;display:flex;justify-content:center;align-items:center}.clarity-bird-image{width:100%;max-width:500px;height:100%;object-fit:cover;border-radius:6px;filter:grayscale(100%);box-shadow:0 10px 30px #00000026}@keyframes float-gentle{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes pulse-soft{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}@media (max-width: 1023px){.clarity-mission{padding:5rem 3.75rem}.content-section{padding-top:2rem}.content-section:first-child .section-content{gap:3rem}.section-content h2{font-size:2rem}.section-content p{font-size:1.0625rem}.clarity-text-content{padding:2.5rem}.clarity-bird-image{max-width:400px}}@media (max-width: 768px){.clarity-mission{padding:3.75rem 1.5rem}.content-section{padding-top:1.5rem;margin-bottom:4rem}.content-section:first-child .section-content{flex-direction:column;gap:2rem}.section-content h2{font-size:1.75rem}.section-content p{font-size:1rem}.clarity-text-content{text-align:left;padding:2rem}.clarity-image-content{width:100%}.clarity-bird-image{max-width:350px}}.solution-header{text-align:center;max-width:none;width:100%;margin:0 0 1rem;background:#f0f0f0;padding:2rem 2.5rem;border-radius:6px;box-shadow:none}.solution-cards{display:flex;gap:1rem;flex-wrap:wrap;justify-content:space-between;width:100%}.solution-card{position:relative;flex:1 1 calc(33.333% - .75rem);min-width:280px;padding:2rem 1.5rem 1.5rem;text-align:left;background:#88b1be59;border:1px solid rgba(136,177,190,.45);box-shadow:0 1px 3px #00000014;border-radius:12px;text-decoration:none;color:var(--primary-dark);transition:transform .3s cubic-bezier(.25,.46,.45,.94),box-shadow .3s cubic-bezier(.25,.46,.45,.94);display:flex;flex-direction:column;transform:translateY(0);overflow:hidden}.solution-card:hover{transform:translateY(-4px);box-shadow:0 4px 12px #0000001f}.solution-icon{position:absolute;top:1.5rem;left:1.5rem;width:32px;height:32px;opacity:.7;filter:brightness(0) saturate(100%) invert(21%) sepia(13%) saturate(1874%) hue-rotate(142deg) brightness(93%) contrast(91%)}.solution-card .card-arrow{position:absolute;top:1rem;right:1.25rem;font-size:var(--font-size-xl);color:var(--primary-dark);opacity:.5;transition:all .3s ease}.solution-card:hover .card-arrow{opacity:1;transform:translate(2px,-2px);color:var(--accent-yellow)}.solution-card h3{margin-top:3.5rem;margin-bottom:.75rem;font-size:var(--font-size-md);font-weight:600;color:var(--primary-dark);font-family:Manrope,system-ui,-apple-system,sans-serif}.solution-card p{margin-bottom:1.5rem;font-size:var(--font-size-sm);line-height:1.5;color:var(--text-muted);flex-grow:1;font-family:Manrope,system-ui,-apple-system,sans-serif}.solution-btn{align-self:flex-start;background:linear-gradient(135deg,var(--primary-light) 0%,var(--primary-soft) 100%);color:var(--primary-dark);padding:.5rem 1.25rem;border-radius:25px;font-size:var(--font-size-sm);font-weight:600;text-decoration:none;transition:all .3s ease;border:none;cursor:pointer}.solution-card:hover .solution-btn{background:linear-gradient(135deg,var(--accent-yellow) 0%,var(--accent-warm) 100%);color:var(--primary-dark);transform:translateY(-1px)}.coming-soon-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#e8e8e8f2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;border-radius:12px;opacity:0;transition:opacity .3s ease;pointer-events:none;z-index:10}.coming-soon-text{font-size:1.5rem;font-weight:700;color:var(--primary-dark);text-transform:uppercase;letter-spacing:.05em;font-family:Manrope,system-ui,-apple-system,sans-serif}.solution-card-coming-soon:hover .coming-soon-overlay{opacity:1}.solution-card-coming-soon:hover{transform:translateY(0);box-shadow:0 1px 3px #00000014}@media (max-width: 1023px){.solution-header{margin-bottom:1rem}.solution-cards{gap:1rem}}@media (max-width: 768px){.solution-header{margin-bottom:1rem;padding:1.5rem 2rem}}.help-build-content{display:flex;align-items:stretch;gap:1rem}.help-build-image{flex:1;display:flex;justify-content:center;align-items:center;min-width:300px}.help-build-lighthouse{width:100%;max-width:400px;height:100%;object-fit:cover;filter:drop-shadow(0 10px 30px rgba(0,0,0,.1));border-radius:6px}.help-build-text{flex:1.5;text-align:left;background:#f0f0f0;border-radius:6px;padding:3rem;display:flex;flex-direction:column;justify-content:center}.help-build-actions{display:flex;gap:1rem;justify-content:flex-start;align-items:center;margin-top:2rem;flex-wrap:wrap}.help-build-actions .btn{min-width:160px;background:linear-gradient(135deg,var(--primary-light) 0%,var(--primary-soft) 100%);color:var(--primary-dark);border:none;box-shadow:0 2px 8px #00000026}.help-build-actions .btn:hover{background:linear-gradient(135deg,var(--accent-yellow) 0%,var(--accent-warm) 100%);transform:translateY(-2px);box-shadow:0 4px 16px #0003}.content-section.newsletter-section .section-content{background:transparent;border-radius:6px;padding:3rem 2rem;display:flex;align-items:center;justify-content:space-between;gap:5rem}.newsletter-text-content{flex:2;text-align:left;max-width:none}.newsletter-form-content{flex:1;display:flex;align-items:center;justify-content:flex-end}.content-section.newsletter-section h2{color:#fff;margin-bottom:1rem}.content-section.newsletter-section p{color:#ffffffe6;margin:0}.content-section.newsletter-section p:first-of-type{margin-bottom:1rem}.content-section.newsletter-section strong{font-size:1.125em;font-weight:700}.newsletter-wrapper{display:flex;justify-content:center;align-items:center;width:100%;margin-top:1.5rem}.content-section.newsletter-section .newsletter-wrapper{display:flex;justify-content:center;align-items:center;flex-direction:row}.content-section.newsletter-section .newsletter-input-wrapper{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;width:fit-content}.coffee-footnote{margin-top:4rem;padding-top:2rem;border-top:1px solid #E5E5E5}.coffee-footnote-text{font-size:.875rem;line-height:1.6;color:#ffffffe6;text-align:center;max-width:700px;margin:0 auto;font-family:Manrope,system-ui,-apple-system,sans-serif}.coffee-footnote-link{--stone-50: #fafaf9;--stone-800: #292524;--yellow-400: #facc15;display:inline-flex;font-size:.75rem;cursor:pointer;position:relative;font-family:Manrope,sans-serif;font-weight:600;line-height:1;padding:1px;margin-left:.5rem;transform:translate(-2px,-2px);outline:2px solid transparent;outline-offset:2px;border-radius:9999px;background-color:var(--stone-800);color:var(--stone-800);transition:transform .15s ease,box-shadow .15s ease;text-align:center;text-decoration:none;box-shadow:.5px .5px 0 0 var(--stone-800),1px 1px 0 0 var(--stone-800),1.5px 1.5px 0 0 var(--stone-800),2px 2px 0 0 var(--stone-800),0 0 0 2px var(--stone-50),.5px .5px 0 2px var(--stone-50),1px 1px 0 2px var(--stone-50),1.5px 1.5px 0 2px var(--stone-50),2px 2px 0 2px var(--stone-50)}.coffee-footnote-link:hover{transform:translate(0);box-shadow:0 0 0 2px var(--stone-50)}.coffee-footnote-link:active,.coffee-footnote-link:focus-visible{outline-color:var(--yellow-400)}.coffee-footnote-link:focus-visible{outline-style:dashed}.coffee-footnote-link:before{content:attr(data-text);position:relative;display:flex;align-items:center;justify-content:center;padding:.375rem .625rem;background-color:var(--yellow-400);border:2px solid rgba(255,255,255,.3);border-radius:9999px;filter:drop-shadow(0 -1px 0 rgba(255,255,255,.25))}.coffee-footnote-link:after{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;border-radius:9999px;opacity:.5;background-image:radial-gradient(rgb(255 255 255 / 80%) 20%,transparent 20%),radial-gradient(rgb(255 255 255 / 100%) 20%,transparent 20%);background-position:0 0,4px 4px;background-size:8px 8px;mix-blend-mode:hard-light;animation:dots .5s infinite linear;pointer-events:none}.newsletter-input-wrapper{width:fit-content;height:38px;border-radius:18px;padding:4px;box-sizing:content-box;display:flex;align-items:center;background-color:#fff9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 8px #00000014}.newsletter-icon{width:24px;fill:var(--primary-dark);margin-left:6px;transition:all .3s}.newsletter-input{max-width:150px;height:100%;border:none!important;outline:none!important;box-shadow:none!important;padding-left:12px;background-color:transparent!important;background:transparent!important;color:var(--primary-dark);font-size:.9em;font-family:Manrope,system-ui,-apple-system,sans-serif}.newsletter-input::placeholder{color:#718096}.newsletter-input:-webkit-autofill,.newsletter-input:-webkit-autofill:hover,.newsletter-input:-webkit-autofill:focus,.newsletter-input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px transparent inset!important;-webkit-text-fill-color:var(--primary-dark)!important;background-color:transparent!important}.newsletter-subscribe-btn{height:100%;width:95px;border:none;border-radius:14px;color:#fff;cursor:pointer;background:#104c58cc;font-weight:600;font-size:.9em;display:flex;align-items:center;justify-content:center;transition:all .3s;font-family:Manrope,system-ui,-apple-system,sans-serif}.newsletter-input-wrapper:active .newsletter-icon{transform:scale(1.3)}.newsletter-subscribe-btn:hover{background:linear-gradient(135deg,var(--accent-yellow) 0%,var(--accent-warm) 100%);transform:translateY(-1px)}.newsletter-subscribe-btn:active{transform:scale(.95)}@media (max-width: 1023px){.help-build-content{gap:.75rem}.help-build-text{padding:2.5rem}.help-build-image{min-width:250px}.help-build-lighthouse{max-width:300px}}@media (max-width: 768px){.help-build-content{flex-direction:column;gap:2rem}.help-build-image{min-width:auto;width:100%}.help-build-lighthouse{max-width:250px}.help-build-text{text-align:center;padding:2rem}.help-build-actions{flex-direction:column;width:100%;justify-content:center}.help-build-actions .btn{width:100%;min-width:auto}.content-section.newsletter-section .section-content{padding:2rem 1rem;flex-direction:column;align-items:flex-start;gap:2rem}.newsletter-text-content{text-align:center;width:100%}.newsletter-form-content{width:100%;justify-content:center}.newsletter-wrapper{justify-content:center}.newsletter-input-wrapper{width:100%;max-width:280px;height:36px;border-radius:16px}.newsletter-icon{width:20px;margin-left:5px}.newsletter-input{max-width:120px;font-size:.85em;padding-left:10px}.newsletter-subscribe-btn{width:85px;font-size:.85em;border-radius:12px}}@media (prefers-reduced-motion: reduce){.image-placeholder,.image-placeholder:before{animation:none!important}}.civic-intelligence{padding:var(--card-padding);background:var(--card-bg);margin:var(--section-gap);border-radius:var(--card-radius);box-shadow:var(--card-shadow);position:relative;overflow:hidden}.civic-content{display:flex;align-items:center;gap:4rem;max-width:1000px;margin:0 auto;position:relative;z-index:2}.civic-text{flex:1;text-align:left}.civic-text h2{font-size:var(--font-size-3xl);font-weight:700;color:var(--primary-dark);margin-bottom:1.5rem;line-height:1.2}.civic-text p{font-size:var(--font-size-md);color:var(--text-muted);margin-bottom:2rem;line-height:1.6}.civic-image{flex:1;text-align:center;position:relative}.civic-image:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:110%;height:110%;background:radial-gradient(ellipse,rgba(255,255,255,.1) 0%,transparent 70%);pointer-events:none;z-index:1}.mockup-image{max-width:100%;height:auto;position:relative;z-index:2;filter:drop-shadow(0 8px 25px rgba(0,0,0,.15))}.donut-chart-wrapper{max-width:480px;margin:0 auto;position:relative}.fade-in{opacity:1;transform:translateY(0);transition:all .8s ease-out}.hidden{opacity:0;transform:translateY(40px)}.donut-center-label{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;font-size:var(--font-size-lg);font-weight:600;color:#fff;text-shadow:0 1px 2px rgba(250,245,245,.1);z-index:3}.budget-chart{position:relative}.budget-chart:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(136,177,190,.2) 0%,transparent 70%);filter:blur(20px);z-index:0;pointer-events:none}.donut-wrapper{position:relative;z-index:1}@media (max-width: 768px){.civic-content{flex-direction:column;gap:2rem}.civic-text{text-align:center}.civic-text h2{font-size:var(--font-size-2xl);color:#fffaee}.civic-intelligence:before,.civic-intelligence:after{width:80%;right:10%}.civic-image:before,.civic-image:after{width:120%;height:120%}}.stats-overview{padding:var(--card-padding);background:var(--card-bg);margin:var(--section-gap-vertical) 0;border-radius:0;box-shadow:none;width:100%}.stats-layout{display:flex;justify-content:space-between;align-items:flex-start;gap:4rem;max-width:1000px;margin:0 auto}.stat-item{text-align:center;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-height:150px}.stat-item *,.stats-overview .stat-number,.stats-overview .stat-description{text-align:center!important}.stat-number{font-size:4rem;font-weight:700;color:var(--primary-dark);margin-bottom:.25rem;line-height:.9;font-family:Manrope,system-ui,sans-serif;display:flex;justify-content:center;align-items:center;width:100%;text-align:center!important}.stat-description{font-size:1.2rem!important;color:var(--text-muted)!important;line-height:1.2;font-weight:300!important;margin:0;display:flex;justify-content:center;align-items:center;width:100%;text-align:center!important;opacity:.7!important}@media (max-width: 768px){.stats-overview{padding:4rem 1rem}.stats-layout{flex-direction:column;gap:3rem;align-items:center}.stat-item{max-width:300px}.stat-number{font-size:3rem}.stat-description{font-size:var(--font-size-base)}}.cta-cards{padding:var(--card-padding);background:#f8f8f8;margin:var(--section-gap);border-radius:var(--card-radius);box-shadow:none;position:relative;overflow:visible}.section-header{text-align:center;margin-bottom:3rem;position:relative;z-index:2}.section-header h2{font-size:var(--font-size-3xl);font-weight:700;color:var(--primary-dark);margin-bottom:.5rem}.section-header p{font-size:var(--font-size-md);color:var(--text-muted);margin:0}.card-grid{display:flex;gap:2rem;flex-wrap:wrap;justify-content:center;position:relative;z-index:2}.cta-card{position:relative;flex:1 1 300px;max-width:280px;padding:2rem 1.5rem 1.5rem;text-align:left;background:#fff;border:1px solid #E5E1D8;box-shadow:0 1px 3px #00000014;border-radius:12px;text-decoration:none;color:var(--primary-dark);transition:transform .3s cubic-bezier(.25,.46,.45,.94),box-shadow .3s cubic-bezier(.25,.46,.45,.94);display:flex;flex-direction:column;transform:translateY(0)}.cta-card:hover{transform:translateY(-4px);box-shadow:0 4px 12px #0000001f}.cta-icon{position:absolute;top:1.5rem;left:1.5rem;width:32px;height:32px;opacity:.7;filter:brightness(0) saturate(100%) invert(21%) sepia(13%) saturate(1874%) hue-rotate(142deg) brightness(93%) contrast(91%)}.card-arrow{position:absolute;top:1rem;right:1.25rem;font-size:var(--font-size-xl);color:var(--primary-dark);opacity:.5;transition:all .3s ease}.cta-card:hover .card-arrow{opacity:1;transform:translate(2px,-2px);color:var(--accent-yellow)}.cta-card h3{margin-top:3.5rem;margin-bottom:.75rem;font-size:var(--font-size-md);font-weight:600;color:var(--primary-dark)}.cta-card p{margin-bottom:1.5rem;font-size:var(--font-size-sm);line-height:1.5;color:var(--text-muted);flex-grow:1}.feature-btn{align-self:flex-start;background:var(--primary-dark);color:#fff;padding:.5rem 1.25rem;border-radius:25px;font-size:var(--font-size-sm);font-weight:600;text-decoration:none;transition:all .3s ease;border:none;cursor:pointer}.cta-card:hover .feature-btn{background:var(--accent-yellow);color:var(--primary-dark);border-color:var(--accent-yellow);transform:translateY(-1px)}.launch-banner{position:sticky;top:0;z-index:999;background-color:#ffbf47;border-bottom:1px solid #FFBF47;box-shadow:0 2px 6px #0000000d;text-align:center;padding:1rem 1rem .75rem;animation:slide-down .4s ease}.launch-banner p{margin:0;font-weight:600;color:#104c58;font-size:var(--font-size-base)}.launch-banner .subtext{font-weight:400;font-size:var(--font-size-sm);color:#555;margin-top:.25rem}.close-banner{position:absolute;top:.5rem;right:1rem;background:none;border:none;font-size:var(--font-size-lg);color:#888;cursor:pointer}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#104c58cc;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .3s ease}.modal-content{background:var(--background-cream);padding:2.5rem;border-radius:20px;max-width:520px;width:90%;text-align:center;box-shadow:0 12px 32px var(--shadow-medium);border:1px solid rgba(136,177,190,.2);position:relative}.modal-content h2{font-size:var(--font-size-3xl);font-weight:700;margin-bottom:1.5rem;color:var(--primary-dark)}.modal-content p{font-size:var(--font-size-lg);margin-bottom:2rem;line-height:1.6;color:var(--primary-medium)}.close-button{position:absolute;top:1rem;right:1.25rem;background:#88b1be1a;border:none;border-radius:9999px;padding:.75rem 1rem;font-size:1.25rem;cursor:pointer;color:var(--primary-dark);display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease;line-height:1;font-weight:500;min-height:40px;min-width:40px}.close-button:hover{background:var(--primary-light);color:var(--surface-white);transform:translateY(-2px)}.thank-you{color:var(--primary-dark);background:#88b1be33;padding:.75rem 1.5rem;border-radius:25px;font-weight:600;margin-top:1rem;font-size:var(--font-size-sm);display:inline-block}.modal-error{background:#dc26261a;border:1px solid rgba(220,38,38,.3);padding:.75rem 1.5rem;border-radius:12px;margin-top:1rem}.modal-error p{color:#dc2626!important;font-weight:500!important;margin:0!important;font-size:var(--font-size-sm)!important;line-height:1.4!important}.budget-overview{padding:var(--card-padding);background:var(--card-bg);margin:var(--section-gap);border-radius:var(--card-radius);box-shadow:var(--card-shadow)}.budget-layout{display:flex;flex-wrap:wrap;gap:3rem;align-items:center;justify-content:space-between}.budget-chart{flex:1;min-width:300px;text-align:center}.donut-placeholder{width:250px;height:250px;background:#f2f2f2;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;color:#888;margin:0 auto;font-size:var(--font-size-base)}.budget-text{flex:1;min-width:280px}.budget-text h2{font-size:var(--font-size-2xl);font-weight:700;color:var(--primary-dark);margin-bottom:1.5rem}.budget-bullets{list-style-type:disc;padding-left:1.25rem;color:var(--primary-dark);font-size:var(--font-size-md);line-height:1.6}.budget-bullets li{margin-bottom:1rem}.join-mission{padding:var(--card-padding);background:var(--card-bg);margin:var(--section-gap);border-radius:var(--card-radius);box-shadow:var(--card-shadow);color:var(--primary-dark);position:relative}.join-mission .container{position:relative;z-index:2;display:flex;align-items:center;gap:4rem;max-width:1000px}.join-mission-content{flex:1;text-align:left}.join-mission h2{font-size:var(--font-size-3xl);font-weight:700;margin-bottom:1.5rem;line-height:1.2;color:var(--primary-dark);margin-top:0}.join-mission p{font-size:var(--font-size-md);margin-bottom:0;line-height:1.6;color:var(--primary-medium)}.email-signup-wrapper{flex:1;display:flex;flex-direction:column;align-items:flex-end;padding-top:3rem}.mission-email-form{display:flex;gap:.75rem;width:100%;max-width:400px;margin-bottom:.5rem}.mission-email-form input{flex:1;border:2px solid var(--surface-light);font-size:var(--font-size-base);padding:.875rem 1.25rem;background:var(--surface-white);color:var(--primary-dark);outline:none;border-radius:999px;font-family:inherit;transition:border-color .3s ease,box-shadow .3s ease;box-shadow:0 2px 8px var(--shadow-soft)}.mission-email-form input:focus{border-color:var(--primary-light);box-shadow:0 2px 8px var(--shadow-soft),0 0 0 3px #88b1be1a}.mission-email-form input::placeholder{color:var(--text-muted)}.mission-email-form button{flex-shrink:0;background:linear-gradient(135deg,var(--primary-light) 0%,var(--primary-soft) 100%);color:var(--primary-dark);padding:.875rem 1.5rem;border:none;border-radius:999px;font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px var(--shadow-soft);white-space:nowrap;font-family:inherit;min-width:140px}.mission-email-form button:hover{background:linear-gradient(135deg,var(--accent-yellow) 0%,var(--accent-warm) 100%);transform:translateY(-2px);box-shadow:0 4px 12px #ffbf474d}.mission-email-form button:disabled{opacity:.6;cursor:not-allowed;transform:none}.privacy-note{font-size:.625rem;color:var(--text-muted);margin-top:.25rem;opacity:.5;text-align:center;max-width:400px;width:100%}.email-signup-wrapper .success-message{text-align:center;padding:1.5rem;background:#2ecc711a;border-radius:12px;border:2px solid rgba(46,204,113,.3)}.email-signup-wrapper .error-message{margin-top:1rem;text-align:center}.email-signup-wrapper .error-message p{color:#e74c3c;font-weight:500;margin:0;font-size:var(--font-size-sm);background:#e74c3c1a;padding:.75rem 1rem;border-radius:8px;display:inline-block}@media (max-width: 768px){.join-mission .container{flex-direction:column;gap:2.5rem;text-align:center}.join-mission-content{text-align:center}.join-mission h2{font-size:var(--font-size-2xl)}.join-mission p{font-size:var(--font-size-base)}.email-signup-wrapper{align-items:center;width:100%;padding-top:2rem}.privacy-note{text-align:center}.mission-email-form{flex-direction:column;max-width:100%}.mission-email-form input{width:100%;margin-bottom:0}.mission-email-form button{width:100%;min-width:auto}.thank-you{text-align:center}}.coffee-support{padding:var(--card-padding);background:var(--card-bg);margin:var(--section-gap);border-radius:var(--card-radius);box-shadow:var(--card-shadow);color:var(--primary-dark);position:relative;overflow:hidden}.coffee-support .container{position:relative;z-index:2;display:flex;align-items:center;gap:4rem;max-width:1000px;margin:0 auto}.coffee-content{flex:1;text-align:left}.coffee-support h2{font-size:var(--font-size-3xl);font-weight:700;margin:0 0 1.5rem;color:var(--primary-dark);line-height:1.2}.coffee-support p{font-size:var(--font-size-md);margin:0;line-height:1.6;color:var(--text-muted)}.coffee-action{flex:1;display:flex;align-items:center;justify-content:center;gap:1.5rem}.coffee-emoji-link{text-decoration:none;transition:all .3s ease}.coffee-emoji{font-size:5.5rem;animation:float 1s ease-in-out infinite;display:block;cursor:pointer;transition:all .3s ease}.coffee-emoji-link:hover .coffee-emoji{transform:scale(1.1) translateY(-5px);filter:drop-shadow(0 8px 16px rgba(255,191,71,.3))}.coffee-text{display:flex;flex-direction:column;align-items:flex-start}.coffee-title{font-size:var(--font-size-lg);font-weight:600;color:var(--background-cream);margin-bottom:.25rem}.coffee-subtitle{font-size:var(--font-size-sm);font-weight:400;color:var(--primary-soft);opacity:.8}@media (max-width: 768px){.coffee-support .container{flex-direction:column;gap:2.5rem;text-align:center}.coffee-content{text-align:center}.coffee-support h2{font-size:var(--font-size-2xl)}.coffee-support p{font-size:var(--font-size-base)}.coffee-action{justify-content:center}.coffee-emoji{font-size:3.75rem}.coffee-text{align-items:center}}.pricing-section{background:var(--card-bg)!important;padding:var(--card-padding)!important;margin:var(--section-gap)!important;border-radius:var(--card-radius)!important;box-shadow:var(--card-shadow)!important}.pricing-section h2{color:var(--primary-dark)!important;font-weight:700!important;margin-bottom:1.5rem!important;text-align:center!important}.pricing-section .container>div:first-child p{color:var(--text-muted)!important;text-align:center!important}.pricing-card-container{opacity:1;transform:translateY(0)}.pricing-card-container.animate-slide-down{opacity:0;transform:translateY(-30px);transition:opacity .9s cubic-bezier(.25,.46,.45,.94),transform .9s cubic-bezier(.25,.46,.45,.94)}.pricing-card-container.animate-slide-down.in-view{opacity:1;transform:translateY(0)}.pricing-card-top{background:#fff!important;border-radius:1rem!important;padding:1.25rem!important;border:1px solid #E5E1D8!important;box-shadow:0 1px 3px #0000000f!important}.pricing-card-top h3{color:var(--primary-dark)!important;font-weight:600!important;margin-bottom:1rem!important;text-align:left!important}.pricing-card-top>p{color:var(--text-muted)!important;margin-bottom:1.25rem!important;text-align:left!important;font-size:var(--font-size-sm)!important}.pricing-card-top .price{color:var(--primary-dark)!important;font-weight:700!important;text-align:left!important}.pricing-card-top .price-period{color:var(--text-muted)!important}.pricing-card-enterprise{background:#fff!important;border-radius:1rem!important;padding:1.25rem!important;text-align:center!important;border:1px solid #E5E1D8!important;box-shadow:0 1px 3px #0000000f!important}.pricing-card-enterprise h3{color:var(--primary-dark)!important;font-weight:600!important;margin-bottom:1rem!important}.pricing-card-enterprise>p{color:var(--text-muted)!important;margin-bottom:1.25rem!important}.features-divider{background:#e5e1d8!important;height:1px!important}.features-label{color:var(--text-muted)!important;font-size:var(--font-size-sm)!important}.feature-item{color:var(--primary-dark)!important;font-size:var(--font-size-sm)!important;text-align:left!important}.pricing-card-enterprise .features-divider{background:#e5e1d8!important}.pricing-card-enterprise .features-label{color:var(--text-muted)!important}.pricing-card-enterprise .feature-item{color:var(--primary-dark)!important}.recommended-badge{background:#ffbf47!important;color:var(--primary-dark)!important;font-weight:600!important;border-radius:9999px!important;padding:.5rem 1.5rem!important;font-size:var(--font-size-sm)!important}.pricing-section .btn-outline{border:2px solid var(--primary-dark)!important;color:var(--primary-dark)!important;background:transparent!important;transition:all .3s ease!important;width:100%!important;margin-bottom:1.25rem!important}.pricing-section .btn-outline:hover{background:var(--primary-dark)!important;color:#fff!important;border-color:var(--primary-dark)!important}.pricing-card-enterprise .btn-outline{border-color:var(--primary-dark)!important;color:var(--primary-dark)!important}.pricing-card-enterprise .btn-outline:hover{background:var(--primary-dark)!important;color:#fff!important;border-color:var(--primary-dark)!important}.pricing-section .lucide-check{color:#10b981!important}.price-container{text-align:left!important;margin-bottom:1.25rem!important}@media (max-width: 768px){.pricing-section{padding:4rem 1rem!important}.pricing-card-top,.pricing-card-enterprise{margin-bottom:2rem!important}}.pill-email-form{display:flex;gap:.75rem;max-width:400px;width:100%;align-items:center}.pill-email-form input{flex:1;border:2px solid var(--surface-light);font-size:var(--font-size-base);padding:.875rem 1.25rem;background:var(--surface-white);color:var(--primary-dark);outline:none;border-radius:9999px;font-family:inherit;transition:border-color .3s ease,box-shadow .3s ease;box-shadow:0 4px 12px var(--shadow-soft)}.pill-email-form input:focus{border-color:var(--primary-light);box-shadow:0 4px 12px var(--shadow-soft),0 0 0 3px #88b1be1a}.pill-email-form input::placeholder{color:var(--text-muted)}.pill-email-form button{flex-shrink:0;background:linear-gradient(135deg,var(--primary-light) 0%,var(--primary-soft) 100%);color:var(--primary-dark);padding:.875rem 1.5rem;border:none;border-radius:9999px;font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px var(--shadow-soft);white-space:nowrap;font-family:inherit;min-width:120px}.pill-email-form button:hover{background:linear-gradient(135deg,var(--accent-yellow) 0%,var(--accent-warm) 100%);transform:translateY(-2px);box-shadow:0 6px 16px #ffbf474d}.pill-email-form button:disabled{opacity:.6;cursor:not-allowed;transform:none}.modal-content .pill-email-form button{background:linear-gradient(135deg,var(--accent-yellow) 0%,var(--accent-gold) 100%);color:var(--primary-dark)}.modal-content .pill-email-form button:hover{background:linear-gradient(135deg,var(--accent-gold) 0%,var(--accent-yellow) 100%)}.bmc-button{background:linear-gradient(135deg,var(--primary-light) 0%,var(--primary-soft) 100%);color:var(--primary-dark);padding:.875rem 1.5rem;border-radius:12px;font-weight:600;font-size:var(--font-size-base);border:none;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;transition:all .3s ease;box-shadow:0 4px 12px var(--shadow-soft);min-height:48px;white-space:nowrap;font-family:inherit}.bmc-button:hover{background:linear-gradient(135deg,var(--accent-yellow) 0%,var(--accent-warm) 100%);transform:translateY(-2px);box-shadow:0 8px 20px #ffbf474d}@keyframes slideInUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes staggerFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes pulse{0%,to{box-shadow:0 4px 16px #00000026}50%{box-shadow:0 8px 24px #00000040}}@keyframes slide-down{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-up{opacity:0;transform:translateY(30px);transition:opacity 1.2s cubic-bezier(.25,.46,.45,.94),transform 1.2s cubic-bezier(.25,.46,.45,.94)}.animate-fade-in-left{opacity:0;transform:translate(-30px);transition:opacity 1.2s cubic-bezier(.25,.46,.45,.94),transform 1.2s cubic-bezier(.25,.46,.45,.94)}.animate-fade-in-right{opacity:0;transform:translate(30px);transition:opacity 1.2s cubic-bezier(.25,.46,.45,.94),transform 1.2s cubic-bezier(.25,.46,.45,.94)}.animate-fade-in-scale{opacity:0;transform:scale(.95);transition:opacity 1.2s cubic-bezier(.25,.46,.45,.94),transform 1.2s cubic-bezier(.25,.46,.45,.94)}.animate-slide-in-up{opacity:0;transform:translateY(40px);transition:opacity 1.2s cubic-bezier(.25,.46,.45,.94),transform 1.2s cubic-bezier(.25,.46,.45,.94)}.animate-slide-in-up.in-view{opacity:1;transform:translateY(0)}.animate-stagger-1{opacity:0;transform:translateY(20px);transition:opacity 1s cubic-bezier(.25,.46,.45,.94) .15s,transform 1s cubic-bezier(.25,.46,.45,.94) .15s}.animate-stagger-1.in-view{opacity:1;transform:translateY(0)}.animate-stagger-2{opacity:0;transform:translateY(20px);transition:opacity 1s cubic-bezier(.25,.46,.45,.94) .3s,transform 1s cubic-bezier(.25,.46,.45,.94) .3s}.animate-stagger-2.in-view{opacity:1;transform:translateY(0)}.animate-stagger-3{opacity:0;transform:translateY(20px);transition:opacity 1s cubic-bezier(.25,.46,.45,.94) .45s,transform 1s cubic-bezier(.25,.46,.45,.94) .45s}.animate-stagger-3.in-view{opacity:1;transform:translateY(0)}.animate-hidden{opacity:0;transform:translateY(20px)}.float-animation{animation:float 3s cubic-bezier(.4,0,.6,1) infinite;animation-delay:.5s}.pulse-animation{animation:pulse 2.5s cubic-bezier(.4,0,.6,1) infinite;animation-delay:.8s}.enhanced-hover{transition:transform .3s cubic-bezier(.25,.46,.45,.94),box-shadow .3s cubic-bezier(.25,.46,.45,.94);transform-style:preserve-3d}.enhanced-hover:hover{transform:translateY(-8px);box-shadow:0 20px 40px #00000026}.btn{position:relative;overflow:hidden;transform:translateY(0);transition:transform .3s cubic-bezier(.25,.46,.45,.94),box-shadow .3s cubic-bezier(.25,.46,.45,.94)}.btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .4s cubic-bezier(.25,.46,.45,.94)}.btn:hover:before{left:100%}.stat-number{transition:color .3s cubic-bezier(.25,.46,.45,.94),text-shadow .3s cubic-bezier(.25,.46,.45,.94)}.stat-number.counting{color:var(--background-cream);text-shadow:0 0 20px rgba(255,191,71,.3)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.animate-fade-in-up,.animate-fade-in-left,.animate-fade-in-right,.animate-fade-in-scale,.animate-slide-in-up,.animate-slide-down,.animate-stagger-1,.animate-stagger-2,.animate-stagger-3,.pricing-card-container.animate-slide-down{opacity:1!important;transform:none!important;transition:none!important;animation:none!important}.hero-text-container,.hero-supporting{transition:none!important}.hero-text-fade-in,.hero-text-fade-out,.hero-supporting.hero-text-fade-in,.hero-supporting.hero-text-fade-out{opacity:1!important;transform:none!important}.animate-fade-in-up.in-view,.animate-fade-in-left.in-view,.animate-fade-in-right.in-view,.animate-fade-in-scale.in-view,.animate-slide-in-up.in-view,.animate-stagger-1.in-view,.animate-stagger-2.in-view,.animate-stagger-3.in-view,.pricing-card-container.animate-slide-down.in-view{opacity:1!important;transform:none!important;transition:none!important}.float-animation,.pulse-animation{animation:none!important;transform:none!important}.coffee-emoji{animation:none!important}.enhanced-hover:hover,.cta-card:hover,.btn:hover{transform:none!important}.stat-number.counting{text-shadow:none!important}[class*=animate-]{opacity:1!important;transform:none!important;transition:none!important}}.user-profile{position:relative;display:inline-block;background:transparent!important;padding:0!important;border:none!important;border-radius:0!important}.user-profile-button{display:flex;align-items:center;gap:8px;background:var(--ocean-300, #88B1BE);border:none;border-radius:9999px;padding:8px 16px;cursor:pointer;transition:all .2s ease;font-size:1rem;font-weight:500;color:var(--ocean-800, #0A3036);box-shadow:none;min-height:44px}.user-profile-button:hover{background:var(--ocean-600, #104C58);color:var(--neutral-50, #FDFEFE);transform:translateY(-1px);box-shadow:0 4px 8px #104c584d}.user-avatar{width:28px;height:28px;border-radius:50%;background:var(--ocean-600, #104C58);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem}.user-avatar.large{width:40px;height:40px;font-size:1rem}.user-name{font-weight:500;font-size:1rem;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-arrow{transition:transform .2s;color:#6b7280}.dropdown-arrow.open{transform:rotate(180deg)}.user-dropdown{position:absolute;top:100%;right:0;background:#fffaee;border:none;border-radius:12px;box-shadow:0 10px 25px #104c5826,0 4px 6px #104c581a;min-width:240px;z-index:50;margin-top:8px;animation:dropdownSlide .15s ease-out}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.user-info{padding:16px;display:flex;align-items:center;gap:12px}.user-details{flex:1;min-width:0}.user-display-name{font-weight:600;color:#1f2937;font-size:.875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-email{color:#6b7280;font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px}.dropdown-divider{height:1px;background-color:#88b1be4d;margin:0 16px}.dropdown-item{width:100%;display:flex;align-items:center;gap:8px;padding:12px 16px;background:none;border:none;color:#374151;cursor:pointer;font-size:.875rem;text-align:left;transition:background-color .2s}.dropdown-item:hover{background-color:#f9fafb}.logout-button{color:#dc2626;border-radius:0 0 8px 8px}.logout-button:hover{background-color:#fef2f2}.dropdown-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;z-index:49}@media (max-width: 640px){.user-name{display:none}.user-dropdown{min-width:200px}}.logout-button.loading{opacity:.6;cursor:not-allowed}.logout-button.loading svg{animation:spin 1s linear infinite}.main-header{position:absolute;top:2rem;left:0;right:0;z-index:100;padding:1.5rem 2rem;background:transparent}.header-container{max-width:1200px;margin:0 auto;padding:.75rem 2rem;display:flex;align-items:center;justify-content:space-between;background:#ffffff80;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:100px;border:none;box-shadow:0 8px 32px #0000001a}.header-container.civic-calendar-header{background:#ffffff80;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.logo-title{display:flex;align-items:center;gap:.75rem;order:1;cursor:pointer;text-decoration:none;transition:opacity .2s ease}.logo-title:hover{opacity:.8}.logo-img{height:35px;width:auto}.tagline{margin:0;font-size:.9rem;color:#7f8c8d}.main-nav{display:flex;gap:1.5rem;align-items:center;order:2}.main-nav a{text-decoration:none;color:#fff;font-weight:600;transition:all .2s ease;padding:10px 18px;border-radius:9999px;position:relative;font-size:1rem;text-shadow:0 2px 4px rgba(0,0,0,.3)}.main-nav a:hover{color:#fff;background:#ffffff4d;text-decoration:none;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.auth-section{margin-left:1rem;display:flex;align-items:center}.auth-button{background:#104c58e6!important;color:#fff!important;border:none!important;padding:10px 20px!important;border-radius:var(--radius-full, 9999px)!important;font-weight:600!important;font-size:1rem!important;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #00000026!important;outline:none!important;-webkit-appearance:none!important;-moz-appearance:none!important;appearance:none!important;min-height:44px!important;display:inline-flex!important;align-items:center!important}.auth-button:hover{background:#0a3036!important;color:#fff!important;transform:translateY(-1px);box-shadow:0 6px 16px #0003!important;outline:none!important}.auth-button:focus{outline:none!important;box-shadow:none!important;background:var(--ocean-600, #104C58)!important;color:var(--neutral-50, #FDFEFE)!important}.auth-button:active{outline:none!important;box-shadow:none!important;background:var(--ocean-600, #104C58)!important;color:var(--neutral-50, #FDFEFE)!important}.hamburger{display:none;flex-direction:column;gap:var(--space-1, 4px);background:none;border:none;cursor:pointer;padding:var(--space-2, 8px);border-radius:var(--radius-md, 6px);transition:background-color .2s ease;font-size:1.75rem;color:var(--ocean-700, #0D3E47)}.hamburger:hover{background:#88b1be1a}@media (max-width: 768px){.main-header{padding:1rem 1.5rem}.header-container{padding:.75rem 1.25rem;border-radius:60px;justify-content:space-between;align-items:center}.logo-title{order:1}.hamburger{display:flex;order:2}.main-nav{display:none;position:absolute;top:80px;right:1rem;flex-direction:column;background:#ffffffd9;backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);padding:1rem;border-radius:20px;border:1px solid rgba(255,255,255,.25);box-shadow:0 8px 32px #104c5833;z-index:1000;min-width:200px;order:3}.main-nav.open{display:flex}.main-nav a{color:#104c58;text-shadow:none}.main-nav a:hover{color:#0d3e47;background:#104c581a}.auth-section{margin-left:0;margin-top:1rem;width:100%}.auth-button{width:100%;text-align:center}}.site-footer{background-color:transparent;color:var(--primary-dark);padding:2rem 1.5rem;font-size:var(--font-size-sm);border-top:none}.footer-container{display:flex;flex-wrap:wrap;gap:3rem;justify-content:space-evenly;max-width:1100px;margin:0 auto}.footer-column{flex:1 1 200px;max-width:280px}.footer-column-narrow{flex:0 1 120px}.footer-brand{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.footer-brand a{cursor:pointer;transition:opacity .2s ease}.footer-brand a:hover{opacity:.8}.footer-logo{width:220px;height:auto}.footer-title{font-size:var(--font-size-4xl);font-weight:800;margin:0;color:var(--primary-dark)}.footer-tagline{font-style:italic;font-size:var(--font-size-xs);color:var(--primary-medium);margin-bottom:1rem;white-space:nowrap}.footer-social{display:flex;gap:.75rem;margin-top:.5rem}.footer-social-link{display:inline-flex;align-items:center;justify-content:center;color:var(--primary-dark);transition:color .3s ease;text-decoration:none}.footer-social-link:hover{color:#0077b5}.footer-linkedin-icon{width:24px;height:24px}.footer-links{list-style:none;padding:0;margin:.5rem 0}.footer-links li{margin-bottom:.5rem}.footer-links a{color:var(--primary-dark);text-decoration:none;font-size:var(--font-size-base);transition:color .3s ease}.footer-links a:hover{color:var(--primary-light);text-decoration:underline}.footer-note-text{margin:.5rem 0 1rem;font-size:var(--font-size-xs);color:var(--primary-medium);line-height:1.5}.footer-newsletter-wrapper{display:flex;justify-content:flex-start;align-items:center;margin-bottom:1rem}.footer-newsletter-input-wrapper{width:fit-content;height:38px;border-radius:18px;padding:4px;box-sizing:content-box;display:flex;align-items:center;background-color:#fff9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 8px #00000014}.footer-newsletter-icon{width:24px;fill:var(--primary-dark);margin-left:6px;transition:all .3s}.footer-newsletter-input{max-width:150px;height:100%;border:none;outline:none;padding-left:12px;background-color:transparent;color:var(--primary-dark);font-size:.9em;font-family:Manrope,system-ui,-apple-system,sans-serif}.footer-newsletter-input::placeholder{color:#9ca3af}.footer-newsletter-subscribe-btn{height:100%;width:95px;border:none;border-radius:14px;color:#fff;cursor:pointer;background:#104c58cc;font-weight:600;font-size:.9em;display:flex;align-items:center;justify-content:center;transition:all .3s;font-family:Manrope,system-ui,-apple-system,sans-serif}.footer-newsletter-subscribe-btn:hover{background:linear-gradient(135deg,var(--accent-yellow) 0%,var(--accent-warm) 100%);transform:translateY(-1px)}.footer-newsletter-subscribe-btn:active{transform:scale(.95)}.footer-newsletter-subscribe-btn:disabled{opacity:.6;cursor:not-allowed}.footer-success-message{background:var(--success-50, #ECFDF5);border:1px solid var(--success-200, #A7F3D0);color:var(--success-700, #047857);font-size:var(--font-size-sm);font-weight:600;padding:.75rem 1rem;border-radius:8px;margin-top:1rem;text-align:center}.footer-error-message{background:var(--error-50, #FEF2F2);border:1px solid var(--error-200, #FECACA);color:var(--error-700, #B91C1C);font-size:var(--font-size-sm);font-weight:500;padding:.75rem 1rem;border-radius:8px;margin-top:1rem;text-align:center}.footer-coffee-support{margin-top:1.5rem;display:flex;align-items:center;flex-wrap:wrap;gap:.25rem}.footer-coffee-text{font-size:.875rem;color:var(--primary-medium);font-family:Manrope,system-ui,-apple-system,sans-serif}.footer-coffee-link{--stone-50: #fafaf9;--stone-800: #292524;--yellow-400: #facc15;display:inline-flex;font-size:.85rem;cursor:pointer;position:relative;font-family:Manrope,sans-serif;font-weight:600;line-height:1;padding:1px;margin-left:.25rem;transform:translate(-2px,-2px);outline:2px solid transparent;outline-offset:2px;border-radius:9999px;background-color:var(--stone-800);color:var(--stone-800);transition:transform .15s ease,box-shadow .15s ease;text-align:center;text-decoration:none;box-shadow:.5px .5px 0 0 var(--stone-800),1px 1px 0 0 var(--stone-800),1.5px 1.5px 0 0 var(--stone-800),2px 2px 0 0 var(--stone-800),2.5px 2.5px 0 0 var(--stone-800),0 0 0 2px var(--stone-50),.5px .5px 0 2px var(--stone-50),1px 1px 0 2px var(--stone-50),1.5px 1.5px 0 2px var(--stone-50),2px 2px 0 2px var(--stone-50),2.5px 2.5px 0 2px var(--stone-50)}.footer-coffee-link:before{content:attr(data-text);position:relative;display:flex;align-items:center;justify-content:center;padding:.45rem .75rem;background-color:var(--yellow-400);border:2px solid rgba(255,255,255,.3);border-radius:9999px;filter:drop-shadow(0 -1px 0 rgba(255,255,255,.25))}.footer-coffee-link:after{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;border-radius:9999px;opacity:.5;background-image:radial-gradient(rgb(255 255 255 / 80%) 20%,transparent 20%),radial-gradient(rgb(255 255 255 / 100%) 20%,transparent 20%);background-position:0 0,4px 4px;background-size:8px 8px;mix-blend-mode:hard-light;animation:dots .5s infinite linear;pointer-events:none}@keyframes dots{0%{background-position:0 0,4px 4px}to{background-position:8px 0,12px 4px}}.footer-coffee-link:hover{transform:translate(0);box-shadow:0 0 0 0 var(--stone-800)}.footer-divider{border:none;height:1px;background:transparent;margin:2rem 0 1rem;width:100%}.footer-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:2rem;flex-wrap:wrap;gap:1rem}.footer-bottom-note{font-size:var(--font-size-xs);color:var(--text-muted);line-height:1.5}.footer-legal-links{display:flex;gap:.5rem;align-items:center;font-size:var(--font-size-xs)}.footer-legal-links a{color:var(--primary-medium);text-decoration:none;transition:color .3s ease}.footer-legal-links a:hover{color:var(--primary-light);text-decoration:underline}.footer-separator{color:var(--text-muted);margin:0 .25rem}@media (max-width: 768px){.footer-container{flex-direction:column;gap:1.5rem}.footer-brand{justify-content:center;text-align:center;flex-direction:column;align-items:center}.footer-logo{margin:0 auto}.footer-tagline{text-align:center}.footer-social{justify-content:center}.footer-title{font-size:var(--font-size-3xl)}.footer-column{text-align:center;display:flex;flex-direction:column;align-items:center;max-width:none;width:100%}.footer-column-narrow{max-width:none;width:100%}.footer-links,.footer-note-text{text-align:center}.footer-coffee-support{justify-content:center;width:100%}.footer-newsletter-wrapper{justify-content:center}.footer-newsletter-input-wrapper{width:100%;max-width:320px;height:40px;border-radius:20px}.footer-newsletter-icon{width:20px;margin-left:8px;flex-shrink:0}.footer-newsletter-input{flex:1;min-width:0;max-width:none;font-size:.9em;padding-left:10px}.footer-newsletter-subscribe-btn{width:90px;flex-shrink:0;font-size:.85em;border-radius:16px}}@media (max-width: 480px){.footer-newsletter-input-wrapper{max-width:280px;height:38px}.footer-newsletter-input{font-size:.85em}.footer-newsletter-subscribe-btn{width:80px;font-size:.8em}.footer-bottom{flex-direction:column;text-align:center}.footer-legal-links{justify-content:center}}.sidebar{width:var(--sidebar-width);height:100vh;background:var(--color-background)!important;color:var(--color-text-primary);display:flex;flex-direction:column;font-family:var(--font-primary);position:fixed;left:0;top:0;padding-top:2px;z-index:1000;border:none!important;box-shadow:none!important;border-radius:0;transition:width .3s cubic-bezier(.4,0,.2,1);border-right:none!important;outline:none!important;overflow-x:hidden;box-sizing:border-box}.sidebar.collapsed{width:70px!important}.sidebar,.sidebar *{background-color:transparent!important}.sidebar{background:var(--color-background)!important}.sidebar-header{padding:0 var(--space-6) var(--space-4);background:transparent;color:var(--color-text-primary);border:none;display:flex;flex-direction:column;gap:var(--space-4);align-items:flex-start;transition:all .3s cubic-bezier(.4,0,.2,1);min-height:64px;justify-content:center}.sidebar.collapsed .sidebar-header{align-items:center;padding:0 0 var(--space-4)}.sidebar-toggle{background:none;border:none;color:var(--ocean-600);cursor:pointer;padding:var(--space-2);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;transition:all .2s ease;width:36px;height:36px}.sidebar-toggle:hover{background:#104c580d;color:var(--ocean-700)}.logo-link{display:flex;align-items:center;justify-content:flex-start;text-decoration:none;color:inherit;transition:all .3s cubic-bezier(.4,0,.2,1);gap:var(--space-3);opacity:1;width:100%}.sidebar.collapsed .logo-link{justify-content:center;padding:0}.logo-link:hover{opacity:.7}.sidebar-logo-v{height:40px;width:auto;margin:0;transition:all .3s ease}.sidebar.collapsed .sidebar-logo-v{height:32px}.company-name{font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--ocean-700, #0D3E47);letter-spacing:-.01em}.sidebar-nav{flex:1;padding:var(--space-2) 0 var(--space-4) 0;background:transparent}.nav-section-title{font-size:var(--text-xs);font-weight:var(--font-bold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;padding:var(--space-3) var(--space-6) var(--space-2);margin-top:var(--space-4);white-space:nowrap;opacity:1;transition:opacity .3s cubic-bezier(.4,0,.2,1)}.sidebar.collapsed .nav-section-title{opacity:0;height:0;padding:0;margin:0;overflow:hidden}.sidebar-nav-item{display:flex;align-items:center;padding:var(--space-3) var(--space-6);text-decoration:none;color:var(--color-text-secondary);transition:all .2s ease;margin:var(--space-1) var(--space-4);border-radius:var(--radius-lg);font-weight:var(--font-medium);border:none;gap:var(--space-3);position:relative}.sidebar.collapsed .sidebar-nav-item{justify-content:center;padding:var(--space-3);margin:var(--space-1) var(--space-2)}.nav-icon{width:20px;height:20px;flex-shrink:0;opacity:.7;transition:opacity .2s ease}.sidebar-nav-item:hover{background:#104c580d;color:var(--ocean-600, #104C58);transform:none;box-shadow:none}.sidebar-nav-item:hover .nav-icon{opacity:1}.sidebar-nav-item.active{background:#104c5814;color:var(--ocean-700, #0D3E47);font-weight:var(--font-bold);box-shadow:none;border-radius:var(--radius-lg)}.sidebar-nav-item.active .nav-icon{opacity:1}.nav-label{font-size:var(--text-base);font-weight:var(--font-medium);flex:1;text-align:left;white-space:nowrap;opacity:1;transition:opacity .3s cubic-bezier(.4,0,.2,1)}.sidebar.collapsed .nav-label{opacity:0;width:0;overflow:hidden}.sidebar-footer{padding:var(--space-4) var(--space-6) var(--space-6);background:transparent;border:none;opacity:1;transition:opacity .3s cubic-bezier(.4,0,.2,1)}.sidebar.collapsed .sidebar-footer{opacity:0;pointer-events:none;height:0;padding:0;overflow:hidden}.user-section{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.user-section-vertical{display:flex;flex-direction:column;gap:var(--space-2)}.user-settings-link{display:flex;align-items:center;text-decoration:none;flex:1;padding:var(--space-2) var(--space-3);border-radius:var(--radius-xl);transition:all .2s ease;cursor:pointer}.user-settings-link:hover{background:#104c580d}.user-settings-link.active{background:#104c5814}.user-info{display:flex;align-items:center;gap:var(--space-3);width:100%;justify-content:flex-start}.user-info-top{display:flex;align-items:center;gap:var(--space-3);flex:1}.logout-button{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:var(--space-2);border-radius:var(--radius-md);transition:all .2s ease;display:flex;align-items:center;justify-content:center}.logout-button:hover{color:var(--color-error);background:#ef44441a}.logout-button-full{background:none;border:1px solid var(--ocean-200);color:var(--color-text-secondary);cursor:pointer;padding:var(--space-2) var(--space-4);border-radius:var(--radius-lg);transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;font-size:var(--text-sm);font-weight:var(--font-medium)}.logout-button-full:hover{color:var(--color-error);background:#ef44440d;border-color:#ef44444d}.user-avatar{width:var(--space-8);height:var(--space-8);border-radius:var(--radius-full);background:var(--neutral-200);display:flex;align-items:center;justify-content:center;font-weight:var(--font-semibold);color:var(--color-primary);font-size:var(--text-sm)}.user-name{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:150px}.signin-prompt{font-size:var(--text-xs);color:var(--color-text-muted);text-align:center;font-style:italic}.signin-prompt-clickable{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) 0;background:transparent;border:none;cursor:pointer;transition:all .2s ease;gap:var(--space-2)}.signin-prompt-clickable:hover{opacity:.8}.signin-prompt-clickable:hover .signin-prompt-arrow{transform:translate(3px)}.signin-prompt-clickable span{font-size:var(--text-sm);color:var(--color-text-muted);font-style:italic;flex:1;text-align:left}.signin-prompt-arrow{color:var(--ocean-600);font-size:var(--text-base);transition:transform .2s ease}.sidebar-newsletter{padding:var(--space-6);background:transparent;border-radius:var(--radius-xl);margin:var(--space-4);opacity:1;transition:opacity .3s cubic-bezier(.4,0,.2,1)}.sidebar.collapsed .sidebar-newsletter{opacity:0;pointer-events:none;height:0;padding:0;margin:0;overflow:hidden}.newsletter-title{font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--ocean-700);margin:0 0 var(--space-3) 0}.newsletter-description{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.5;margin:0 0 var(--space-4) 0}.newsletter-input-wrapper{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-3)}.newsletter-input{width:100%;padding:var(--space-3);border:2px solid var(--ocean-200);border-radius:var(--radius-lg);font-size:var(--text-sm);font-family:var(--font-primary);background:#fff;transition:border-color .2s ease}.newsletter-input:focus{outline:none;border-color:var(--ocean-500)}.newsletter-subscribe-btn{padding:var(--space-3) var(--space-4);background:var(--ocean-500);color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:var(--font-semibold);cursor:pointer;transition:all .2s ease;font-family:var(--font-primary)}.newsletter-subscribe-btn:hover:not(:disabled){background:var(--ocean-600);transform:translateY(-1px)}.newsletter-subscribe-btn:disabled{opacity:.6;cursor:not-allowed}.newsletter-success{color:var(--color-success, #10B981);font-size:var(--text-sm);margin:var(--space-2) 0;font-weight:var(--font-medium)}.newsletter-error{color:var(--color-error, #EF4444);font-size:var(--text-sm);margin:var(--space-2) 0;font-weight:var(--font-medium)}.newsletter-coffee{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--ocean-200)}.coffee-link{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--ocean-600);text-decoration:none;font-weight:var(--font-medium);transition:color .2s ease}.coffee-link:hover{color:var(--ocean-700);text-decoration:underline}@media (max-width: 768px){.sidebar{position:fixed;left:-280px;width:280px!important;z-index:2000;box-shadow:2px 0 8px #00000026;transition:left .3s ease;display:flex}.sidebar.open{left:0}.sidebar.collapsed{width:280px!important}.sidebar-toggle{display:none}.sidebar-header{align-items:flex-start!important;padding:0 var(--space-6) var(--space-4)!important}.logo-link{justify-content:flex-start!important}.nav-label{opacity:1!important;width:auto!important;font-size:var(--text-sm)}.nav-section-title{opacity:1!important;height:auto!important;padding:var(--space-3) var(--space-6) var(--space-2)!important}.sidebar-footer{opacity:1!important;height:auto!important;padding:var(--space-4) var(--space-6) var(--space-6)!important}.sidebar-newsletter{opacity:1!important;height:auto!important;padding:var(--space-4);margin:var(--space-3)}.sidebar-nav-item{padding:var(--space-3) var(--space-5);justify-content:flex-start!important}.user-section-vertical{gap:var(--space-3)}.signin-prompt-clickable{padding:var(--space-2) var(--space-3)}.newsletter-title{font-size:var(--text-base)}.newsletter-description{font-size:var(--text-xs)}}.topbar{background:transparent;border-radius:0;box-shadow:none;border:none;border-bottom:1px solid var(--neutral-200);overflow:hidden}.topbar-content{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-8);gap:var(--space-6)}.topbar-left-section{display:flex;align-items:center;gap:var(--space-4);flex:1}.topbar-sidebar-toggle{background:none;border:none;color:var(--ocean-600);cursor:pointer;padding:var(--space-2);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;transition:all .2s ease;width:36px;height:36px}.topbar-sidebar-toggle:hover{background:#104c580d;color:var(--ocean-700)}.topbar-divider{width:1px;height:32px;background:var(--neutral-200)}.topbar-title-section{flex:1}.topbar-title{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--color-text-primary);margin:0 0 var(--space-1) 0;line-height:1.2}.topbar-subtitle{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0;font-weight:var(--font-medium);line-height:1.4}.topbar-actions{display:flex;align-items:center;gap:var(--space-4)}.topbar-user{display:flex;align-items:center}.user-profile{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);background:var(--neutral-100);border-radius:var(--radius-full);border:none}.user-avatar-small{width:var(--space-6);height:var(--space-6);border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover));display:flex;align-items:center;justify-content:center;font-weight:var(--font-semibold);color:var(--neutral-50);font-size:var(--text-xs)}.user-greeting{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-primary)}.topbar-subscribe-btn{position:relative;display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 3rem .625rem 1.25rem;background:#10b981;color:#fff;border:2px solid #10B981;border-radius:6px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:var(--font-primary);overflow:hidden;box-shadow:0 2px 8px #00000026;white-space:nowrap}.topbar-subscribe-btn:hover{background:#0ea375;border-color:#0ea375}.topbar-subscribe-btn .button-text{display:inline-block;transition:transform .3s ease;white-space:nowrap}.topbar-subscribe-btn:hover .button-text{transform:translate(10rem)}.topbar-subscribe-btn .button-icon-wrapper{position:absolute;right:0;top:0;height:100%;width:3rem;background:#10b981;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.topbar-subscribe-btn:hover .button-icon-wrapper{width:100%}.topbar-subscribe-btn .button-icon{width:1.5rem;height:1.5rem;color:#fff}.topbar-transparent{background:transparent;box-shadow:none;border:none;border-radius:0;margin-bottom:var(--space-6);overflow:visible}.topbar-transparent .topbar-content{padding:0;overflow:visible}.topbar-transparent .topbar-title-section{overflow:visible}.topbar-transparent .topbar-title{color:var(--color-text-primary);font-size:var(--text-4xl);font-weight:var(--font-extrabold);overflow:visible;white-space:normal;word-wrap:break-word}.topbar-transparent .topbar-subtitle{color:var(--color-text-secondary);font-size:var(--text-lg);overflow:visible;white-space:normal;word-wrap:break-word}@media (max-width: 768px){.topbar-content{padding:var(--space-4) var(--space-5);gap:var(--space-4)}.topbar-title{font-size:var(--text-2xl)}.topbar-subtitle{font-size:var(--text-sm)}.user-greeting{display:none}.user-profile{padding:var(--space-2)}}@media (max-width: 480px){.topbar-content{flex-direction:column;align-items:flex-start;gap:var(--space-3)}.topbar-actions{align-self:flex-end}}.dashboard-layout{display:flex;min-height:100vh;background:var(--color-background);font-family:var(--font-primary);padding:0;gap:0}.page-header{background:var(--color-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-base);padding:var(--space-4) var(--space-6);margin-bottom:var(--space-3);border:none}.page-header h1{font-size:32px;font-weight:700;color:#2c3e50;margin:0 0 8px;line-height:1.2}.page-subtitle{font-size:16px;color:#7f8c8d;margin:0;font-weight:400;line-height:1.4}.dashboard-main{position:absolute;left:var(--sidebar-width);right:0;top:0;display:flex;flex-direction:column;gap:0;min-height:100vh;padding:var(--space-2);box-sizing:border-box;transition:left .3s cubic-bezier(.4,0,.2,1);background:var(--color-background)}.dashboard-layout:has(.sidebar.collapsed) .dashboard-main{left:70px}.dashboard-card-container{background:#fff;border-radius:var(--radius-base);box-shadow:var(--shadow-sm);overflow:hidden;display:flex;flex-direction:column;min-height:calc(100vh - var(--space-2) * 2);width:100%;flex:1}.dashboard-content{flex:1;width:100%;background:transparent;border-radius:0;box-shadow:none;padding:var(--space-8);box-sizing:border-box;border:none}@media (max-width: 1200px){.dashboard-content{padding:var(--space-6)}}@media (max-width: 900px){.dashboard-content{padding:var(--space-5)}}.sidebar-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:1999;animation:fadeIn .3s ease}@media (max-width: 768px){.dashboard-main{left:0!important;margin-left:0;padding:var(--space-3);width:100%}.dashboard-card-container{border-radius:var(--radius-xl);min-height:calc(100vh - var(--space-3) * 2)}.dashboard-content{padding:var(--space-5)}.page-header{padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg)}}:root{--sky-blue: #88B1BE;--cream: #FFFAEE;--mustard-yellow: #FFBF47;--cinnabar-red: #E24628;--deep-ocean-blue: #104C58;--hover-blue: #b5cdd6}.question-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 4px #104c5814;border:1px solid rgba(136,177,190,.1);flex:1;min-width:300px;max-width:450px;min-height:400px;height:100%;display:flex;flex-direction:column;gap:1.5rem;font-family:Manrope,sans-serif;position:relative}.question-header{display:flex;justify-content:space-between;align-items:center;color:var(--deep-ocean-blue)}.question-header h3{margin:0;font-size:1.25rem;font-weight:700}.tooltip-icon{background:none;border:none;font-size:1.2rem;cursor:pointer;color:var(--sky-blue);transition:color .2s ease}.tooltip-icon:hover{color:var(--deep-ocean-blue)}.tooltip-box{background-color:#88b1be26;color:var(--color-text-secondary);padding:1rem;border-radius:8px;font-size:.95rem;line-height:1.5;font-style:italic}input[type=number]{padding:.75rem;font-size:1rem;width:100%;border:1px solid #ccc;border-radius:0 1rem 1rem 0;font-family:Manrope,sans-serif}.boolean-buttons{display:flex;justify-content:center;gap:1rem}.boolean-buttons button{flex:1;padding:.75rem;font-size:1rem;border-radius:2rem;border:2px solid var(--sky-blue);background-color:transparent;cursor:pointer;transition:all .2s ease;font-family:Manrope,sans-serif;color:var(--deep-ocean-blue)}.boolean-buttons button:hover{background-color:var(--hover-blue);color:var(--deep-ocean-blue)}.boolean-buttons button.selected{background-color:var(--sky-blue);color:#fff;border-color:var(--sky-blue)}.navigation-buttons{display:flex;justify-content:flex-end;margin-top:auto;gap:1rem}.navigation-buttons button{background-color:var(--deep-ocean-blue);color:#fff;border:none;border-radius:2rem;padding:.75rem 1.5rem;cursor:pointer;font-size:1rem;transition:background-color .2s ease;font-family:Manrope,sans-serif}.navigation-buttons button[type=button]{background-color:transparent;color:var(--deep-ocean-blue);border:2px solid var(--deep-ocean-blue)}.navigation-buttons button[type=button]:hover{background-color:var(--deep-ocean-blue);color:#fff}.navigation-buttons button[type=submit]:hover{background-color:var(--sky-blue)}.currency-input{display:flex;align-items:center;width:100%}.currency-input .prefix{font-size:1rem;color:#fff;background:var(--sky-blue);padding:.75rem 1rem;border:1px solid #ccc;border-right:none;border-radius:1rem 0 0 1rem;font-family:Manrope,sans-serif}.currency-input input{flex:1;padding:.75rem;font-size:1rem;border:1px solid #ccc;border-left:none;border-radius:0 1rem 1rem 0}.progress-bar-container{width:100%;height:12px;background-color:#f5f5f5;border-radius:999px;margin:0;position:relative;box-shadow:inset 0 0 6px #0000000d;border:1px solid rgba(136,177,190,.2);cursor:help}.progress-bar{height:100%;background:linear-gradient(90deg,var(--sky-blue),#a1c5d1);border-radius:999px;transition:width .4s ease;box-shadow:inset 0 0 4px #ffffff4d}.tax-footprint{padding-bottom:3rem}.page-title{font-size:var(--text-4xl);font-weight:var(--font-extrabold);color:var(--color-text-primary);margin:0 0 var(--space-2) 0;line-height:1.2}.disclaimer-section{width:100%;margin-bottom:var(--space-6);background-color:#88b1be26;border-radius:8px;padding:var(--space-4) var(--space-6)}.form-disclaimer{font-size:var(--text-base);color:var(--color-text-secondary);line-height:1.5;margin:0;font-style:italic}.tax-footprint h1{text-align:center;margin-bottom:0rem}.main-content{width:100%;padding:0 1rem}form{display:flex;flex-direction:column;gap:1rem;max-width:400px;margin:0 auto}.tax-footprint label{display:flex;flex-direction:column;font-weight:600;color:#2c3e50}input{padding:.5rem;border-radius:6px;border:1px solid #ccc}button{background-color:#f1c40f;color:#2c3e50;padding:.75rem;font-weight:700;border:none;border-radius:6px;cursor:pointer}button:hover{background-color:#ffdb58}.content-row{display:flex;gap:2rem;align-items:stretch;margin-top:1.5rem}.calculator-container{flex:1;min-width:300px;max-width:450px;display:flex;align-items:stretch}.completion-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 4px #104c5814;border:1px solid rgba(136,177,190,.1);flex:1;min-width:300px;max-width:450px;min-height:400px;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:1.5rem;font-family:Manrope,sans-serif}.completion-card h3{color:#104c58;font-size:1.5rem;font-weight:700;margin:0}.completion-card p{color:var(--color-text-secondary);font-size:1rem;margin:0;line-height:1.6}.chart-card{flex:1;background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 4px #104c5814;border:1px solid rgba(136,177,190,.1);min-width:300px;min-height:400px;display:flex;flex-direction:column}.chart-title{color:#104c58;font-weight:700;margin-bottom:1.5rem;font-size:1.5rem;text-align:center}.continue-button-wrapper{display:flex;justify-content:flex-end;border-radius:8px;margin-top:2rem;margin-bottom:3rem}.continue-button{background-color:#104c58;color:#fff;padding:.75rem 1.5rem;font-size:1rem;border:none;border-radius:25px;cursor:pointer;transition:background-color .3s ease}.continue-button:disabled{background-color:#bdc3c7;cursor:not-allowed;opacity:.7}.continue-button.encourage-fill{background-color:#ecf0f1;color:#7f8c8d;border:2px dashed #bdc3c7}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#2c3e5099;display:flex;align-items:center;justify-content:center;z-index:9999}.modal-content{background:#fff;padding:2rem;border-radius:12px;max-width:400px;text-align:center;box-shadow:0 8px 20px #00000040}.modal-buttons{margin-top:1.5rem;display:flex;justify-content:space-around;gap:1rem}.modal-buttons button{padding:.5rem 1rem;border-radius:6px;border:none;font-weight:700;cursor:pointer}.modal-buttons button:first-child{background-color:#bdc3c7;color:#fff}.modal-buttons button:last-child{background-color:#2ecc71;color:#fff}.donut-wrapper{position:relative;width:100%;height:300px}.donut-center-label{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;font-family:inherit;pointer-events:none}.donut-center-label .total-value{font-size:2rem;font-weight:700;color:#2c3e50}.donut-center-label .per-year{font-size:.9rem;color:#7f8c8d}.button-muted{background-color:#fff;color:#104c58;border:2px solid #88B1BE;padding:.6rem 1.2rem;border-radius:19px;font-weight:600;cursor:pointer;transition:background .2s ease}.button-muted:hover{background-color:#88b1be}@media (max-width: 768px){.content-row{flex-direction:column;gap:1.5rem}.chart-card,.question-card{max-width:100%;width:100%}}.dashboard-welcome{margin-bottom:var(--space-8)}.welcome-message{font-size:28px;font-weight:700;color:#2c3e50;margin-bottom:24px;line-height:1.2}.stat-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-6);margin-bottom:var(--space-6)}.stat-card-clean{background:linear-gradient(135deg,var(--neutral-50) 0%,var(--neutral-100) 100%);border-radius:var(--radius-xl);padding:var(--space-6);display:flex;align-items:center;box-shadow:var(--shadow-md);border:none}.stat-label{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-accent);margin:0 0 var(--space-2) 0;text-transform:uppercase;letter-spacing:.5px}.stat-change.positive{background:var(--color-success-bg);color:var(--color-success)}.stat-change.neutral{background:var(--ocean-100);color:var(--ocean-600)}.dashboard-controls{display:flex;flex-wrap:wrap;gap:var(--space-6);align-items:center;background:linear-gradient(135deg,#fffffff2,#f0f7f8e6);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:var(--space-5) var(--space-8);border-radius:24px;margin-bottom:var(--space-4);box-shadow:0 4px 6px -1px #104c580f,0 2px 4px -2px #104c580a,inset 0 1px #fffc;border:1px solid rgba(136,177,190,.15);position:relative;overflow:hidden}.dashboard-controls:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2) 20%,rgba(255,255,255,.2) 80%,transparent)}.control-group{display:flex;flex-direction:column;gap:var(--space-2)}.control-group label,.control-label{font-size:13px;font-weight:600;color:#104c58;margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:.8px;opacity:.9}.view-mode-section{display:flex;flex-direction:column;gap:var(--space-2)}.pill-toggle{display:flex;background:#fff9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:50px;padding:4px;position:relative;box-shadow:inset 0 2px 4px #104c5814,0 1px 2px #104c580a;border:1px solid rgba(136,177,190,.15)}.pill-toggle input[type=radio]{display:none}.pill-option{display:flex;align-items:center;gap:var(--space-2);padding:10px 20px;border-radius:50px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-weight:600;font-size:14px;color:#37646e;min-width:160px;justify-content:center;position:relative;z-index:1}.pill-icon{font-size:16px}.pill-option:hover{color:#104c58}.pill-toggle input:checked+.pill-option{background:#104c58;color:#fff;box-shadow:0 4px 12px #104c5840,inset 0 1px #ffffff1a;transform:scale(1.02)}.control-select{padding:10px 16px;border:1px solid rgba(136,177,190,.3);border-radius:12px;background:#ffffffb3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#104c58;font-weight:500;font-size:14px;transition:all .2s ease;cursor:pointer}.control-select:hover{border-color:#88b1be80;background:#ffffffe6}.control-select:focus{outline:none;border-color:#88b1be;box-shadow:0 0 0 3px #88b1be26}.export-buttons{display:flex;gap:8px;flex-wrap:wrap}.export-btn{padding:var(--space-3) var(--space-4);background:linear-gradient(135deg,var(--color-warning) 0%,var(--warning-600) 100%);color:var(--neutral-50);border:none;border-radius:var(--radius-full);font-weight:var(--font-semibold);font-size:var(--text-sm);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:var(--space-2);box-shadow:var(--shadow-base)}.export-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.dashboard-chart{background:var(--color-card);border-radius:var(--radius-2xl);box-shadow:var(--shadow-floating);margin-bottom:var(--space-6);overflow:hidden;border:none}.chart-header{padding:var(--space-6) var(--space-8) var(--space-4);background:var(--neutral-100);border:none}.chart-header h2{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--color-text-primary);margin:0 0 var(--space-2) 0}.chart-subtitle{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0;font-weight:var(--font-medium)}.sankey-container{padding:var(--space-6);min-height:600px}.empty-chart-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px;color:#7f8c8d;text-align:center}.empty-chart-state p{font-size:18px;margin-bottom:20px}.cta-button{padding:12px 24px;background:linear-gradient(135deg,#3498db,#2980b9);color:#fdfefe;border:none;border-radius:8px;font-weight:600;font-size:16px;cursor:pointer;transition:all .2s ease}.cta-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3498db4d}.dashboard-bills{background:var(--color-card);border-radius:var(--radius-2xl);box-shadow:var(--shadow-floating);border:none;overflow:hidden}.bills-header{padding:var(--space-6) var(--space-8) var(--space-4);background:var(--neutral-100);border:none;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-4)}.bills-header h2{font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--color-text-primary);margin:0}.clear-filter-btn{padding:var(--space-2) var(--space-4);background:var(--color-error);color:var(--neutral-50);border:none;border-radius:var(--radius-full);font-weight:var(--font-medium);font-size:var(--text-sm);cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-base)}.clear-filter-btn:hover{background:var(--error-600);transform:translateY(-2px);box-shadow:var(--shadow-md)}.department-description-section{margin-bottom:var(--space-6);padding:0 var(--space-8)}.department-description-card{background:linear-gradient(135deg,#f0f7f8f2,#ffffffe6);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:var(--radius-xl);padding:var(--space-6);border:1px solid rgba(136,177,190,.2);box-shadow:0 4px 6px -1px #104c580f,0 2px 4px -2px #104c580a,inset 0 1px #fffc}.department-description-card h3{font-size:var(--text-xl);font-weight:var(--font-bold);color:#104c58;margin:0 0 var(--space-4) 0;line-height:1.3}.department-description-card p{font-size:var(--text-base);color:var(--neutral-700);line-height:1.6;margin:0}.contact-info-section{padding:var(--space-4) var(--space-8);background:var(--color-info-bg);border:none}.bills-content{padding:var(--space-6) var(--space-8)}.pagination{display:flex;justify-content:center;align-items:center;gap:var(--space-4);margin-top:var(--space-6);padding-top:var(--space-6);background:var(--neutral-100);padding:var(--space-4) var(--space-8);border:none;border-radius:0 0 var(--radius-2xl) var(--radius-2xl)}.pagination-btn{padding:8px 16px;background:#34495e;color:#fdfefe;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s ease}.pagination-btn:hover:not(:disabled){background:#2c3e50;transform:translateY(-1px)}.pagination-btn:disabled{background:#bdc3c7;cursor:not-allowed;transform:none}.pagination-info{font-size:14px;color:#7f8c8d;font-weight:500}.empty-state{text-align:center;padding:60px 20px;color:#7f8c8d}.empty-state p{font-size:16px;margin:0}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#2c3e50cc;display:flex;align-items:center;justify-content:center;z-index:2000}.modal-content{background:#fdfefe;border-radius:16px;padding:32px;max-width:400px;width:calc(100vw - 40px);box-shadow:0 20px 60px #2c3e504d}.modal-content h3{font-size:20px;font-weight:700;color:#2c3e50;margin:0 0 16px}.modal-content p{color:#7f8c8d;margin:0 0 24px;line-height:1.5}.modal-buttons{display:flex;gap:12px;justify-content:flex-end}.modal-buttons button{padding:10px 20px;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease}.modal-buttons button:first-child{background:#3498db;color:#fdfefe}.modal-buttons button:first-child:hover{background:#2980b9}.modal-buttons button.secondary{background:#bdc3c7;color:#2c3e50}.modal-buttons button.secondary:hover{background:#95a5a6}@media (max-width: 1200px){.stat-cards{grid-template-columns:1fr}}@media (max-width: 768px){.welcome-message{font-size:24px}.stat-card{padding:20px}.stat-icon{font-size:40px;margin-right:16px}.stat-value{font-size:28px}.dashboard-controls{padding:16px 20px;gap:16px}.control-group{min-width:100%}.toggle-buttons{width:100%}.chart-header,.bills-header,.bills-content,.department-description-section,.contact-info-section{padding-left:20px;padding-right:20px}.bills-header{flex-direction:column;align-items:flex-start}}.bt-container{width:100%;max-width:100%;background:transparent;margin:var(--space-6) 0;overflow-x:auto}.bt-table{width:100%;border-collapse:separate;border-spacing:0;background:var(--color-card);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-base);font-size:var(--text-sm)}.bt-table thead th{background:var(--neutral-50);border-bottom:1px solid var(--neutral-200);padding:var(--space-3) var(--space-2);text-align:left;font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.025em;position:sticky;top:0;z-index:1;white-space:nowrap}.bt-sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .15s ease}.bt-sortable:hover{background:var(--neutral-100)}.bt-header-content{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.bt-sort-icon{opacity:.4;transition:opacity .15s ease;flex-shrink:0}.bt-sort-active{opacity:1;color:var(--color-primary)}.bt-sort-neutral{width:14px;height:14px}.bt-header-stacked{line-height:1.2;display:inline-block}.bt-table thead th:first-child{border-top-left-radius:var(--radius-xl)}.bt-table thead th:last-child{border-top-right-radius:var(--radius-xl)}.bt-row{border-bottom:1px solid var(--neutral-100);transition:all .2s ease}.bt-row.bt-even-row{background:#88b1be14}.bt-row.bt-odd-row{background:#fff}.bt-row:hover{background:#88b1be1a!important}.bt-row.bt-expanded{background:var(--ocean-100)!important;border-bottom:2px solid var(--ocean-300)!important;box-shadow:0 2px 4px #104c5814}.bt-row:last-child{border-bottom:none}.bt-row:last-child td:first-child{border-bottom-left-radius:var(--radius-xl)}.bt-row:last-child td:last-child{border-bottom-right-radius:var(--radius-xl)}.bt-table td{padding:var(--space-5) var(--space-2) var(--space-4) var(--space-2);vertical-align:top;border:none;font-size:var(--text-sm)}.bt-col-bill{width:38%;min-width:200px}.bt-bill-info{display:flex;flex-direction:column;gap:var(--space-1)}.bt-bill-title-link{text-decoration:none;color:inherit;display:block;cursor:pointer;transition:color .15s ease}.bt-bill-title-link:hover{color:var(--color-primary)}.bt-bill-title{font-size:var(--text-sm);color:var(--color-text-primary);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .15s ease}.bt-bill-title-link:hover .bt-bill-title{color:var(--color-primary)}.bt-col-status{width:10%;min-width:100px;font-size:var(--text-sm);color:var(--color-text-primary)}.bt-col-updated{width:8%;min-width:80px;font-size:var(--text-sm);color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.bt-col-fiscal{width:6%;min-width:50px;text-align:center}.bt-fiscal-icon{display:flex;align-items:center;justify-content:center;cursor:help}.bt-fiscal-increase svg{color:#16a34a}.bt-fiscal-decrease svg{color:#dc2626}.bt-fiscal-ambiguous svg{color:#eab308}.bt-fiscal-unknown svg{color:var(--color-text-muted);opacity:.7}.bt-col-departments{width:14%;min-width:110px}.bt-departments-none{color:var(--color-text-muted);font-style:italic;font-size:var(--text-sm)}.bt-departments-container{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.bt-department-pill{display:inline-block;padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-medium);background:var(--neutral-100);color:var(--color-text-primary);white-space:nowrap;border:1px solid var(--neutral-200);max-width:120px;overflow:hidden;text-overflow:ellipsis;cursor:help}.bt-department-count{background:var(--neutral-200);color:var(--color-text-secondary);font-weight:var(--font-semibold);cursor:pointer;transition:all .2s ease}.bt-department-count:hover{background:var(--neutral-300);transform:scale(1.05)}.bt-department-expandable{cursor:pointer}.bt-department-expandable:hover{background:var(--sky-blue);color:var(--deep-ocean)}.bt-expanded-row{background:var(--ocean-100);border-bottom:1px solid var(--ocean-200);border-top:2px solid var(--ocean-300);box-shadow:inset 0 2px 8px #104c5814}.bt-expanded-content{padding:var(--space-5) var(--space-6);border:none;animation:expandFadeIn .3s ease;background:var(--ocean-100)}@keyframes expandFadeIn{0%{opacity:0;max-height:0;padding-top:0;padding-bottom:0}to{opacity:1;max-height:200px;padding-top:var(--space-4);padding-bottom:var(--space-4)}}.bt-departments-expanded{display:flex;flex-direction:column;gap:var(--space-3);background:var(--neutral-50);border:1px solid var(--neutral-200);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-4)}.bt-departments-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text-secondary);margin:0;text-transform:uppercase;letter-spacing:.025em}.bt-departments-list{display:flex;flex-wrap:wrap;gap:var(--space-2)}.bt-department-full{display:inline-block;padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-medium);background:var(--neutral-100);color:var(--color-text-primary);white-space:nowrap;border:1px solid var(--neutral-200);max-width:none!important;overflow:visible!important;text-overflow:initial!important}.bt-timeline-expanded{display:flex;flex-direction:column;gap:var(--space-3);background:var(--neutral-50);border:1px solid var(--neutral-200);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-4)}.bt-timeline-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text-secondary);margin:0;text-transform:uppercase;letter-spacing:.025em}.bt-timeline-vertical{display:flex;flex-direction:column;position:relative}.bt-timeline-step{display:flex;align-items:flex-start;gap:var(--space-4);position:relative}.bt-timeline-connector{display:flex;flex-direction:column;align-items:center;position:relative;padding-top:var(--space-1)}.bt-timeline-dot{width:12px;height:12px;border-radius:50%;background:var(--ocean-500);border:3px solid rgba(255,255,255,.9);position:relative;z-index:2;flex-shrink:0;box-shadow:0 2px 4px #104c5826}.bt-timeline-line{width:2px;height:40px;background:var(--ocean-200);margin-top:var(--space-1);flex-shrink:0}.bt-timeline-content{flex:1;padding-bottom:var(--space-4)}.bt-timeline-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-2)}.bt-timeline-stage-title{font-size:var(--text-sm);color:var(--color-text-primary);font-weight:var(--font-semibold);flex:1}.bt-timeline-date-badge{font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--ocean-700);background:var(--ocean-50);padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);border:1px solid var(--ocean-200);font-variant-numeric:tabular-nums;white-space:nowrap}.bt-timeline-actions{margin-top:var(--space-2)}.bt-timeline-link{font-size:var(--text-sm);color:var(--ocean-600);text-decoration:none;font-weight:var(--font-medium);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--ocean-300);transition:all .2s ease;white-space:nowrap}.bt-timeline-link:hover{background:var(--ocean-50);color:var(--ocean-700);border-color:var(--ocean-400)}.bt-timeline-description{font-size:var(--text-sm);color:var(--color-text-secondary);flex:1;line-height:1.4}.bt-col-introduced{width:10%;min-width:100px}.bt-mla-info{display:flex;align-items:center;gap:var(--space-3)}.bt-mla-avatar{width:36px;height:36px;border-radius:var(--radius-full);background:var(--color-primary);border:3px solid;display:flex;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--neutral-50);flex-shrink:0;position:relative;overflow:hidden}.bt-mla-image{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-full)}.bt-mla-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--neutral-50);background:var(--color-primary)}.bt-mla-name{font-size:var(--text-sm);color:var(--color-text-primary);line-height:1.3;word-break:break-word}.bt-col-expand{width:40px;min-width:40px;text-align:center;padding:var(--space-2) var(--space-1)}.bt-expand-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:none;color:var(--ocean-600);cursor:pointer;transition:all .2s ease;padding:0}.bt-expand-btn:hover{color:var(--ocean-700);transform:scale(1.2)}.bt-expand-btn:focus,.bt-expand-btn:active{outline:none;background:transparent;border:none}.bt-expand-btn:focus-visible{outline:2px solid var(--ocean-300);outline-offset:1px}.bt-col-actions{width:65px;min-width:65px;text-align:center;padding:var(--space-2) var(--space-1)}.bt-star-btn{background:#fff;border:1px solid var(--neutral-300);color:var(--neutral-600);padding:.3rem .6rem;border-radius:15px;font-size:.85rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;white-space:nowrap;margin:0 auto}.bt-star-btn:hover{border-color:var(--sky-blue);color:var(--deep-ocean);transform:translateY(-1px)}.bt-star-btn.active{background:var(--ocean-500);color:#fff;border-color:var(--ocean-600)}.bt-ai-summary-section{background:var(--neutral-50);border:1px solid var(--neutral-200);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-4);position:relative}.bt-ai-summary-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.bt-ai-badge{background:var(--color-sky-blue);color:#fff;padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:var(--font-medium);text-transform:uppercase;letter-spacing:.05em}.bt-ai-summary-content{font-size:var(--text-sm);line-height:1.6;color:var(--color-text-primary);margin-bottom:var(--space-3);padding:var(--space-3);background:#fff;border-radius:var(--radius-md);border:1px solid var(--neutral-100)}.bt-ai-disclaimer{font-size:var(--text-xs);color:var(--color-text-tertiary);font-style:italic;padding-top:var(--space-2);border-top:1px solid var(--neutral-100)}.bt-budget-impact-section{background:var(--neutral-50);border:1px solid var(--neutral-200);border-radius:var(--radius-xl);padding:var(--space-4);margin-bottom:var(--space-4);position:relative}.bt-budget-impact-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.bt-budget-impact-badge{padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:var(--font-medium);text-transform:uppercase;letter-spacing:.05em;color:#fff}.bt-budget-increase{background:#f59e0b;border-radius:var(--radius-xl)}.bt-budget-decrease{background:#16a34a;border-radius:var(--radius-xl)}.bt-budget-neutral{background:#6b7280;border-radius:var(--radius-xl)}.bt-budget-impact-content{margin-bottom:var(--space-3)}.bt-budget-explanation{font-size:var(--text-sm);line-height:1.6;color:var(--color-text-primary);margin-bottom:var(--space-2);padding:var(--space-3);background:#fff;border-radius:var(--radius-xl);border:1px solid var(--neutral-100)}.bt-budget-estimate{font-size:var(--text-sm);color:var(--color-text-secondary);font-weight:var(--font-medium);padding:var(--space-2) var(--space-3);background:#104c580d;border-radius:var(--radius-xl);border:1px solid rgba(16,76,88,.1)}.bt-table-empty{text-align:center;padding:var(--space-12) var(--space-6);color:var(--color-text-secondary);background:var(--color-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-base)}@media (max-width: 1200px){.bt-col-departments{width:22%}.bt-col-bill{width:30%}.bt-col-expand{width:40px;min-width:40px}.bt-col-actions{width:80px;min-width:80px}}@media (max-width: 900px){.bt-col-fiscal{display:none}.bt-col-departments{width:26%}.bt-col-bill{width:30%}.bt-col-expand{width:35px;min-width:35px}.bt-col-actions{width:80px;min-width:80px}.bt-table td,.bt-table th{padding:var(--space-3) var(--space-4)}}@media (max-width: 768px){.bt-container{overflow-x:auto}.bt-table{min-width:580px}.bt-col-departments{display:none}.bt-col-bill{width:40%}.bt-col-introduced{width:28%}.bt-col-expand{width:32px;min-width:32px}.bt-col-actions{width:75px;min-width:75px}.bt-mla-info{flex-direction:column;gap:var(--space-1);text-align:center}.bt-mla-name{font-size:var(--text-xs)}}@media (max-width: 480px){.bt-table{min-width:350px}.bt-bill-title{-webkit-line-clamp:1}.bt-table td,.bt-table th{padding:var(--space-2) var(--space-3)}}:root{--sky-blue: #88B1BE;--deep-ocean-blue: #104C58;--cream: #FFFAEE;--white: #FFFFFF;--light-gray: #F8F9FA;--border-light: rgba(136, 177, 190, .15);--border-medium: rgba(136, 177, 190, .25);--text-primary: #104C58;--text-secondary: #88B1BE;--text-muted: rgba(136, 177, 190, .7);--success: #10B981;--warning: #F59E0B;--error: #EF4444}html,body{margin:0;padding:0;font-family:Manrope,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;scroll-behavior:smooth;color:var(--text-primary)}.dev-banner{background:var(--warning);padding:1rem 0;position:relative;z-index:20}.dev-banner-content{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.dev-banner-text{color:var(--text-primary);font-size:.875rem;line-height:1.5;font-weight:500}.dev-banner-close{background:none;border:none;color:var(--text-primary);font-size:1.5rem;cursor:pointer;padding:.5rem;border-radius:50%;transition:all .2s ease;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dev-banner-close:hover{background:#104c581a;transform:scale(1.05)}.dashboard-container{display:grid;grid-template-columns:280px 1fr;min-height:100vh;background:var(--light-gray);gap:0}.sidebar{background:var(--deep-ocean-blue);color:#fff;padding:2rem 1.5rem;overflow-y:auto;box-shadow:0 0 20px #104c581a;position:sticky;top:0;height:100vh;z-index:10}.sidebar-header h1{font-size:1.5rem;margin-bottom:.25rem;color:#fff;font-weight:700}.subtitle{font-size:.875rem;color:var(--sky-blue);margin-bottom:2rem;opacity:.9}.filter-section{margin-bottom:2rem}.filter-section h3{font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--sky-blue);margin-bottom:1rem}.toggle-container{background:#ffffff1a;border-radius:25px;padding:4px;display:flex}.toggle-btn{flex:1;padding:.75rem 1rem;background:none;border:none;color:#fff;border-radius:20px;cursor:pointer;transition:all .3s ease;font-weight:500;font-family:Manrope,sans-serif}.toggle-btn.active{background:var(--sky-blue);color:var(--deep-ocean-blue);font-weight:600;transform:translateY(-1px);box-shadow:0 4px 12px #88b1be4d}.toggle-btn:hover:not(.active){background:#ffffff26;transform:translateY(-1px)}.filter-input{width:100%;padding:.75rem 1rem;border:1px solid rgba(255,255,255,.2);border-radius:25px;background:#ffffff1a;color:#fff;font-size:.875rem;font-family:Manrope,sans-serif;transition:all .3s ease}.filter-input:focus{outline:none;border-color:var(--sky-blue);background:#ffffff26;box-shadow:0 0 0 3px #88b1be33;transform:translateY(-1px)}.filter-input option{background:var(--deep-ocean-blue);color:#fff}.checkbox-container{display:flex;align-items:center;cursor:pointer;margin-bottom:1rem;transition:all .2s ease;padding:.25rem;border-radius:8px}.checkbox-container:hover{background:#ffffff0d}.checkbox-container input{margin-right:.75rem;accent-color:var(--sky-blue)}.export-btn{width:100%;padding:.875rem 1rem;margin-bottom:.75rem;background:var(--sky-blue);color:var(--deep-ocean-blue);border:none;border-radius:25px;cursor:pointer;transition:all .3s ease;font-weight:600;font-family:Manrope,sans-serif;display:flex;align-items:center;justify-content:center;gap:.5rem}.export-btn:hover{background:#7aa1ae;transform:translateY(-2px);box-shadow:0 8px 25px #88b1be4d}.export-btn:active{transform:translateY(0)}.main-content{padding:2rem;overflow-x:hidden;min-height:100vh;display:flex;flex-direction:column;gap:2rem}.dashboard-header{flex-shrink:0}.dashboard-header h1{font-size:2.5rem;color:var(--text-primary);margin-bottom:.5rem;font-weight:700}.breadcrumb{font-size:.875rem;color:var(--text-secondary);font-weight:500}.kpi-grid{display:grid;grid-template-columns:1fr 1fr 2fr;gap:1.5rem;flex-shrink:0}.kpi-card{background:var(--white);border-radius:16px;padding:1.5rem;box-shadow:0 1px 3px #104c581a;border:1px solid var(--border-light);transition:all .3s ease;position:relative;min-height:160px;display:flex;flex-direction:column}.kpi-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #104c5826;border-color:var(--sky-blue)}.department-info{border-left:none}.kpi-header{display:flex;justify-content:flex-start;align-items:center;margin-bottom:1rem;flex-shrink:0}.kpi-title{font-size:.875rem;color:var(--text-secondary);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.kpi-value{font-size:2.25rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem;line-height:1;flex-shrink:0}.kpi-value.empty-state{color:var(--text-muted);font-weight:300}.kpi-change{font-size:.875rem;color:var(--text-secondary);font-weight:500;flex-shrink:0}.kpi-change.positive{color:var(--success)}.kpi-change.negative{color:var(--error)}.department-contact-compact{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-light);width:100%}.dept-basic-info{margin-bottom:.75rem}.dept-name{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem;line-height:1.3}.dept-description{font-size:.9rem;color:var(--text-secondary);margin:0;line-height:1.4;opacity:1}.contact-toggle-section{width:100%}.contact-toggle-btn{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.75rem 1rem;background:var(--light-gray);border:1px solid var(--border-light);border-radius:25px;cursor:pointer;transition:all .3s ease;font-size:.8rem;font-weight:500;font-family:Manrope,sans-serif;color:var(--text-primary)}.contact-toggle-btn:hover{background:var(--sky-blue);color:#fff;border-color:var(--sky-blue);transform:translateY(-1px);box-shadow:0 4px 12px #88b1be33}.contact-toggle-btn:focus{outline:2px solid var(--sky-blue);outline-offset:2px}.toggle-icon{color:var(--text-secondary);transition:all .3s ease}.contact-toggle-btn:hover .toggle-icon{color:#fff}.contact-details{margin-top:.75rem;padding:.75rem;background:#88b1be0d;border:1px solid var(--border-light);border-radius:12px;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;max-height:0;padding-top:0;padding-bottom:0}to{opacity:1;max-height:300px;padding-top:.75rem;padding-bottom:.75rem}}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.contact-person{min-height:0}.person-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;padding-bottom:.25rem;border-bottom:1px solid var(--border-light)}.person-icon{color:var(--sky-blue);flex-shrink:0}.person-title{font-size:.75rem;font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.02em}.person-details{display:flex;flex-direction:column;gap:.25rem}.person-name{font-size:.8rem;font-weight:500;color:var(--text-primary);margin:0;line-height:1.3}.contact-item{display:flex;align-items:flex-start;gap:.4rem;font-size:.7rem;color:var(--text-secondary);line-height:1.3}.contact-item svg{color:var(--sky-blue);margin-top:.1rem;flex-shrink:0}.unavailable{color:var(--text-muted);font-style:italic}.chart-card{background:var(--white);border-radius:16px;padding:2rem;box-shadow:0 1px 3px #104c581a;border:1px solid var(--border-light);transition:all .3s ease;flex-shrink:0;min-height:500px;display:flex;flex-direction:column}.chart-card:hover{box-shadow:0 8px 25px #104c5826;border-color:var(--sky-blue)}.chart-header{margin-bottom:1.5rem;flex-shrink:0}.chart-title{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin-bottom:.25rem}.chart-subtitle{font-size:.875rem;color:var(--text-secondary);font-weight:500}.sankey-container{flex-grow:1;min-height:400px;position:relative}.empty-chart-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--text-secondary);text-align:center}.empty-chart-state p{font-size:1.125rem;margin-bottom:1.5rem}.cta-button{background:var(--sky-blue);color:#fff;border:none;padding:.875rem 2rem;border-radius:25px;font-weight:600;font-family:Manrope,sans-serif;cursor:pointer;transition:all .3s ease}.cta-button:hover{background:var(--deep-ocean-blue);transform:translateY(-2px);box-shadow:0 8px 25px #88b1be4d}.bills-section{background:var(--white);border-radius:16px;padding:2rem;box-shadow:0 1px 3px #104c581a;border:1px solid var(--border-light);transition:all .3s ease;flex-shrink:0;min-height:300px;display:flex;flex-direction:column}.bills-section:hover{box-shadow:0 8px 25px #104c5826;border-color:var(--sky-blue)}.bills-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem;flex-shrink:0}.bills-header h2{color:var(--text-primary);font-size:1.5rem;font-weight:700;margin:0}.clear-filter-btn{padding:.75rem 1.5rem;background:var(--sky-blue);color:#fff;border:none;border-radius:25px;cursor:pointer;transition:all .3s ease;font-weight:600;font-family:Manrope,sans-serif}.clear-filter-btn:hover{background:var(--deep-ocean-blue);transform:translateY(-2px);box-shadow:0 8px 25px #88b1be4d}.bills-content{flex-grow:1;overflow-y:auto;min-height:0}.bills-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.bill-card{background:var(--light-gray);border:1px solid var(--border-light);border-radius:12px;padding:1.5rem;transition:all .3s ease;position:relative}.bill-card:hover{border-color:var(--sky-blue);transform:translateY(-2px);box-shadow:0 8px 20px #104c581a}.bill-status{margin-bottom:1rem}.status-badge{font-size:.75rem;padding:.5rem 1rem;border-radius:25px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.status-badge.in-progress{background:var(--warning);color:#fff}.status-badge.passed{background:var(--success);color:#fff}.status-badge.under-review{background:var(--sky-blue);color:#fff}.bill-title{color:var(--text-primary);margin-bottom:1rem;font-size:1.125rem;font-weight:600;line-height:1.4}.bill-departments{display:flex;flex-wrap:wrap;gap:.5rem}.dept-tag{background:#88b1be26;color:var(--text-primary);padding:.25rem .75rem;border-radius:25px;font-size:.75rem;font-weight:500;border:1px solid var(--border-light)}.empty-state{grid-column:1 / -1;text-align:center;padding:3rem 2rem;color:var(--text-secondary);background:#88b1be0d;border-radius:12px;border:2px dashed var(--border-medium)}.empty-state p{font-size:1.125rem;margin:0}.pagination{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border-light);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.pagination-btn{background:var(--sky-blue);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:25px;cursor:pointer;font-weight:500;font-family:Manrope,sans-serif;transition:all .3s ease}.pagination-btn:hover:not(:disabled){background:var(--deep-ocean-blue);transform:translateY(-1px);box-shadow:0 4px 12px #88b1be4d}.pagination-btn:disabled{background:var(--text-muted);cursor:not-allowed;transform:none}.pagination-info{color:var(--text-secondary);font-size:.875rem;font-weight:500;text-align:center;flex-grow:1}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#104c58cc;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:var(--white);border-radius:16px;padding:2rem;max-width:500px;width:90%;box-shadow:0 20px 40px #104c584d;border:1px solid var(--border-light)}.modal-content h3{color:var(--text-primary);font-size:1.5rem;margin-bottom:1rem;font-weight:700}.modal-content p{color:var(--text-secondary);margin-bottom:2rem;line-height:1.6}.modal-buttons{display:flex;gap:1rem;justify-content:flex-end}.modal-buttons button{padding:.875rem 1.5rem;border:none;border-radius:25px;cursor:pointer;font-weight:600;font-family:Manrope,sans-serif;transition:all .3s ease}.modal-buttons button:first-child{background:var(--sky-blue);color:#fff}.modal-buttons button:first-child:hover{background:var(--deep-ocean-blue);transform:translateY(-1px);box-shadow:0 4px 12px #88b1be4d}.modal-buttons button.secondary{background:var(--light-gray);color:var(--text-secondary);border:1px solid var(--border-light)}.modal-buttons button.secondary:hover{background:var(--border-light);transform:translateY(-1px)}@media (max-width: 1200px){.kpi-grid{grid-template-columns:1fr 1fr}.kpi-card.department-info{grid-column:1 / -1}}@media (max-width: 1024px){.dashboard-container{grid-template-columns:250px 1fr}.sidebar{width:250px}.dashboard-header h1{font-size:2rem}.kpi-grid{grid-template-columns:1fr;gap:1rem}.chart-card{padding:1.5rem;min-height:450px}.chart-title{font-size:1.5rem}.bills-section{padding:1.5rem;min-height:250px}.contact-grid{grid-template-columns:1fr;gap:1rem}}@media (max-width: 768px){.dashboard-container{grid-template-columns:1fr;grid-template-rows:auto 1fr}.sidebar{position:relative;height:auto;width:100%}.main-content{padding:1rem}.dashboard-header h1,.kpi-value{font-size:1.75rem}.chart-card{padding:1rem;min-height:400px}.bills-section{min-height:200px}.bills-grid{grid-template-columns:1fr}.bills-header{flex-direction:column;align-items:flex-start}.pagination{flex-direction:column;text-align:center}.pagination-info{order:-1}.dev-banner-content{flex-direction:column;text-align:center}.dev-banner-close{align-self:flex-end}}@media (max-width: 480px){.dashboard-header h1{font-size:1.5rem}.kpi-card{padding:1rem;min-height:140px}.kpi-value{font-size:1.5rem}.chart-title{font-size:1.25rem}.chart-card{min-height:350px}.bills-section{min-height:180px}.modal-content{padding:1.5rem;margin:1rem}.modal-buttons{flex-direction:column}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.kpi-card,.chart-card,.bills-section{animation:fadeIn .6s ease-out}.kpi-card:nth-child(1){animation-delay:.1s}.kpi-card:nth-child(2){animation-delay:.2s}.kpi-card:nth-child(3){animation-delay:.3s}.toggle-btn:focus,.filter-input:focus,.export-btn:focus,.clear-filter-btn:focus,.cta-button:focus,.contact-toggle-btn:focus,.pagination-btn:focus{outline:2px solid var(--sky-blue);outline-offset:2px}.kpi-card:focus-within{transform:translateY(-2px);box-shadow:0 8px 25px #104c5826;border-color:var(--sky-blue)}@media print{.sidebar{display:none}.dashboard-container{grid-template-columns:1fr}.kpi-card,.chart-card,.bills-section{box-shadow:none;border:1px solid var(--border-medium)}}.rbc-btn{color:inherit;font:inherit;margin:0}button.rbc-btn{overflow:visible;text-transform:none;-webkit-appearance:button;-moz-appearance:button;appearance:button;cursor:pointer}button[disabled].rbc-btn{cursor:not-allowed}button.rbc-input::-moz-focus-inner{border:0;padding:0}.rbc-calendar{-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}.rbc-m-b-negative-3{margin-bottom:-3px}.rbc-h-full{height:100%}.rbc-calendar *,.rbc-calendar *:before,.rbc-calendar *:after{-webkit-box-sizing:inherit;box-sizing:inherit}.rbc-abs-full,.rbc-row-bg{overflow:hidden;position:absolute;top:0;left:0;right:0;bottom:0}.rbc-ellipsis,.rbc-show-more,.rbc-row-segment .rbc-event-content,.rbc-event-label{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rbc-rtl{direction:rtl}.rbc-off-range{color:#999}.rbc-off-range-bg{background:#e6e6e6}.rbc-header{overflow:hidden;-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%;text-overflow:ellipsis;white-space:nowrap;padding:0 3px;text-align:center;vertical-align:middle;font-weight:700;font-size:90%;min-height:0;border-bottom:1px solid #ddd}.rbc-header+.rbc-header{border-left:1px solid #ddd}.rbc-rtl .rbc-header+.rbc-header{border-left-width:0;border-right:1px solid #ddd}.rbc-header>a,.rbc-header>a:active,.rbc-header>a:visited{color:inherit;text-decoration:none}.rbc-button-link{color:inherit;background:none;margin:0;padding:0;border:none;cursor:pointer;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.rbc-row-content{position:relative;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-select:none;z-index:4}.rbc-row-content-scrollable{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;height:100%}.rbc-row-content-scrollable .rbc-row-content-scroll-container{height:100%;overflow-y:scroll;-ms-overflow-style:none;scrollbar-width:none}.rbc-row-content-scrollable .rbc-row-content-scroll-container::-webkit-scrollbar{display:none}.rbc-today{background-color:#eaf6ff}.rbc-toolbar{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;font-size:16px}.rbc-toolbar .rbc-toolbar-label{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;padding:0 10px;text-align:center}.rbc-toolbar button{color:#373a3c;display:inline-block;margin:0;text-align:center;vertical-align:middle;background:none;background-image:none;border:1px solid #ccc;padding:.375rem 1rem;border-radius:4px;line-height:normal;white-space:nowrap}.rbc-toolbar button:active,.rbc-toolbar button.rbc-active{background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px #00000020;background-color:#e6e6e6;border-color:#adadad}.rbc-toolbar button:active:hover,.rbc-toolbar button:active:focus,.rbc-toolbar button.rbc-active:hover,.rbc-toolbar button.rbc-active:focus{color:#373a3c;background-color:#d4d4d4;border-color:#8c8c8c}.rbc-toolbar button:focus{color:#373a3c;background-color:#e6e6e6;border-color:#adadad}.rbc-toolbar button:hover{color:#373a3c;cursor:pointer;background-color:#e6e6e6;border-color:#adadad}.rbc-btn-group{display:inline-block;white-space:nowrap}.rbc-btn-group>button:first-child:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.rbc-btn-group>button:last-child:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.rbc-rtl .rbc-btn-group>button:first-child:not(:last-child){border-radius:0 4px 4px 0}.rbc-rtl .rbc-btn-group>button:last-child:not(:first-child){border-radius:4px 0 0 4px}.rbc-btn-group>button:not(:first-child):not(:last-child){border-radius:0}.rbc-btn-group button+button{margin-left:-1px}.rbc-rtl .rbc-btn-group button+button{margin-left:0;margin-right:-1px}.rbc-btn-group+.rbc-btn-group,.rbc-btn-group+button{margin-left:10px}@media (max-width: 767px){.rbc-toolbar{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.rbc-event,.rbc-day-slot .rbc-background-event{border:none;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:none;box-shadow:none;margin:0;padding:2px 5px;background-color:#3174ad;border-radius:5px;color:#fff;cursor:pointer;width:100%;text-align:left}.rbc-slot-selecting .rbc-event,.rbc-slot-selecting .rbc-day-slot .rbc-background-event,.rbc-day-slot .rbc-slot-selecting .rbc-background-event{cursor:inherit;pointer-events:none}.rbc-event.rbc-selected,.rbc-day-slot .rbc-selected.rbc-background-event{background-color:#265985}.rbc-event:focus,.rbc-day-slot .rbc-background-event:focus{outline:5px auto #3b99fc}.rbc-event-label{font-size:80%}.rbc-event-overlaps{-webkit-box-shadow:-1px 1px 5px 0px rgba(51,51,51,.5);box-shadow:-1px 1px 5px #33333380}.rbc-event-continues-prior{border-top-left-radius:0;border-bottom-left-radius:0}.rbc-event-continues-after{border-top-right-radius:0;border-bottom-right-radius:0}.rbc-event-continues-earlier{border-top-left-radius:0;border-top-right-radius:0}.rbc-event-continues-later{border-bottom-left-radius:0;border-bottom-right-radius:0}.rbc-row{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.rbc-row-segment{padding:0 1px 1px}.rbc-selected-cell{background-color:#0000001a}.rbc-show-more{background-color:#ffffff4d;z-index:4;font-weight:700;font-size:85%;height:auto;line-height:normal;color:#3174ad}.rbc-show-more:hover,.rbc-show-more:focus{color:#265985}.rbc-month-view{position:relative;border:1px solid #ddd;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;width:100%;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-select:none;height:100%}.rbc-month-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.rbc-month-row{display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;-ms-flex-preferred-size:0px;flex-basis:0px;overflow:hidden;height:100%}.rbc-month-row+.rbc-month-row{border-top:1px solid #ddd}.rbc-date-cell{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0;min-width:0;padding-right:5px;text-align:right}.rbc-date-cell.rbc-now{font-weight:700}.rbc-date-cell>a,.rbc-date-cell>a:active,.rbc-date-cell>a:visited{color:inherit;text-decoration:none}.rbc-row-bg{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;overflow:hidden;right:1px}.rbc-day-bg{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%}.rbc-day-bg+.rbc-day-bg{border-left:1px solid #ddd}.rbc-rtl .rbc-day-bg+.rbc-day-bg{border-left-width:0;border-right:1px solid #ddd}.rbc-overlay{position:absolute;z-index:5;border:1px solid #e5e5e5;background-color:#fff;-webkit-box-shadow:0 5px 15px rgba(0,0,0,.25);box-shadow:0 5px 15px #00000040;padding:10px}.rbc-overlay>*+*{margin-top:1px}.rbc-overlay-header{border-bottom:1px solid #e5e5e5;margin:-10px -10px 5px;padding:2px 10px}.rbc-agenda-view{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;overflow:auto}.rbc-agenda-view table.rbc-agenda-table{width:100%;border:1px solid #ddd;border-spacing:0;border-collapse:collapse}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td{padding:5px 10px;vertical-align:top}.rbc-agenda-view table.rbc-agenda-table .rbc-agenda-time-cell{padding-left:15px;padding-right:15px;text-transform:lowercase}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left:1px solid #ddd}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left-width:0;border-right:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table tbody>tr+tr{border-top:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table thead>tr>th{padding:3px 5px;text-align:left;border-bottom:1px solid #ddd}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table thead>tr>th{text-align:right}.rbc-agenda-time-cell{text-transform:lowercase}.rbc-agenda-time-cell .rbc-continues-after:after{content:" »"}.rbc-agenda-time-cell .rbc-continues-prior:before{content:"« "}.rbc-agenda-date-cell,.rbc-agenda-time-cell{white-space:nowrap}.rbc-agenda-event-cell{width:100%}.rbc-time-column{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;min-height:100%}.rbc-time-column .rbc-timeslot-group{-webkit-box-flex:1;-ms-flex:1;flex:1}.rbc-timeslot-group{border-bottom:1px solid #ddd;min-height:40px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column nowrap;flex-flow:column nowrap}.rbc-time-gutter,.rbc-header-gutter{-webkit-box-flex:0;-ms-flex:none;flex:none}.rbc-label{padding:0 5px}.rbc-day-slot{position:relative}.rbc-day-slot .rbc-events-container{bottom:0;left:0;position:absolute;right:0;margin-right:10px;top:0}.rbc-day-slot .rbc-events-container.rbc-rtl{left:10px;right:0}.rbc-day-slot .rbc-event,.rbc-day-slot .rbc-background-event{border:1px solid #265985;display:-webkit-box;display:-ms-flexbox;display:flex;max-height:100%;min-height:20px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column wrap;flex-flow:column wrap;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;overflow:hidden;position:absolute}.rbc-day-slot .rbc-background-event{opacity:.75}.rbc-day-slot .rbc-event-label{-webkit-box-flex:0;-ms-flex:none;flex:none;padding-right:5px;width:auto}.rbc-day-slot .rbc-event-content{width:100%;-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0;word-wrap:break-word;line-height:1;height:100%;min-height:1em}.rbc-day-slot .rbc-time-slot{border-top:1px solid #f7f7f7}.rbc-time-view-resources .rbc-time-gutter,.rbc-time-view-resources .rbc-time-header-gutter{position:sticky;left:0;background-color:#fff;border-right:1px solid #ddd;z-index:10;margin-right:-1px}.rbc-time-view-resources .rbc-time-header{overflow:hidden}.rbc-time-view-resources .rbc-time-header-content{min-width:auto;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;-ms-flex-preferred-size:0px;flex-basis:0px}.rbc-time-view-resources .rbc-time-header-cell-single-day{display:none}.rbc-time-view-resources .rbc-day-slot{min-width:140px}.rbc-time-view-resources .rbc-header,.rbc-time-view-resources .rbc-day-bg{width:140px;-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0;-ms-flex-preferred-size:0 px;flex-basis:0 px}.rbc-time-header-content+.rbc-time-header-content{margin-left:-1px}.rbc-time-slot{-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0}.rbc-time-slot.rbc-now{font-weight:700}.rbc-day-header{text-align:center}.rbc-slot-selection{z-index:10;position:absolute;background-color:#00000080;color:#fff;font-size:75%;width:100%;padding:3px}.rbc-slot-selecting{cursor:move}.rbc-time-view{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:1;-ms-flex:1;flex:1;width:100%;border:1px solid #ddd;min-height:0}.rbc-time-view .rbc-time-gutter{white-space:nowrap;text-align:right}.rbc-time-view .rbc-allday-cell{-webkit-box-sizing:content-box;box-sizing:content-box;width:100%;height:100%;position:relative}.rbc-time-view .rbc-allday-cell+.rbc-allday-cell{border-left:1px solid #ddd}.rbc-time-view .rbc-allday-events{position:relative;z-index:4}.rbc-time-view .rbc-row{-webkit-box-sizing:border-box;box-sizing:border-box;min-height:20px}.rbc-time-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.rbc-time-header.rbc-overflowing{border-right:1px solid #ddd}.rbc-rtl .rbc-time-header.rbc-overflowing{border-right-width:0;border-left:1px solid #ddd}.rbc-time-header>.rbc-row:first-child{border-bottom:1px solid #ddd}.rbc-time-header>.rbc-row.rbc-row-resource{border-bottom:1px solid #ddd}.rbc-time-header-cell-single-day{display:none}.rbc-time-header-content{-webkit-box-flex:1;-ms-flex:1;flex:1;display:-webkit-box;display:-ms-flexbox;display:flex;min-width:0;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;border-left:1px solid #ddd}.rbc-rtl .rbc-time-header-content{border-left-width:0;border-right:1px solid #ddd}.rbc-time-header-content>.rbc-row.rbc-row-resource{border-bottom:1px solid #ddd;-ms-flex-negative:0;flex-shrink:0}.rbc-time-content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;width:100%;border-top:2px solid #ddd;overflow-y:auto;position:relative}.rbc-time-content>.rbc-time-gutter{-webkit-box-flex:0;-ms-flex:none;flex:none}.rbc-time-content>*+*>*{border-left:1px solid #ddd}.rbc-rtl .rbc-time-content>*+*>*{border-left-width:0;border-right:1px solid #ddd}.rbc-time-content>.rbc-day-slot{width:100%;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-select:none}.rbc-current-time-indicator{position:absolute;z-index:3;left:0;right:0;height:1px;background-color:#74ad31;pointer-events:none}.rbc-resource-grouping.rbc-time-header-content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.rbc-resource-grouping .rbc-row .rbc-header{width:141px}.civic-dashboard-page{font-family:Manrope,system-ui,-apple-system,sans-serif}.civic-dashboard-page .calendar-header{margin:0 0 3rem;padding:0}.civic-dashboard-page .calendar-header h1{font-size:2.25rem;font-weight:700;color:#1a1a1a;margin-bottom:2rem;margin-top:0;letter-spacing:-.01em;font-family:Manrope,system-ui,-apple-system,sans-serif;text-align:left}.civic-dashboard-page .description-section{width:100%;margin-bottom:var(--space-6);background-color:#88b1be26;border-radius:8px;padding:var(--space-4) var(--space-6)}.civic-dashboard-page .description-content{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem}.civic-dashboard-page .description-text{flex:1}.civic-dashboard-page .info-description{font-size:var(--text-base);color:var(--color-text-secondary);line-height:1.5;margin:0 0 1rem;font-style:italic;font-family:Manrope,system-ui,-apple-system,sans-serif}.civic-dashboard-page .subscribe-info{margin-top:1rem}.civic-dashboard-page .subscribe-info h3{font-size:1rem;font-weight:600;color:var(--color-text-primary);margin:0 0 .25rem;font-family:Manrope,system-ui,-apple-system,sans-serif;font-style:normal}.civic-dashboard-page .subscribe-info p{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0;font-family:Manrope,system-ui,-apple-system,sans-serif;line-height:1.4;font-style:normal}.civic-dashboard-page .subscribe-button{position:relative;border:2px solid #10B981;background:#10b981;color:#fff;cursor:pointer;flex-shrink:0;display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 3rem .625rem 1.25rem;border-radius:6px;transition:all .3s ease;box-shadow:0 2px 8px #00000026;overflow:hidden;font-family:Manrope,system-ui,-apple-system,sans-serif}.civic-dashboard-page .subscribe-button:hover{background:#0ea375;border-color:#0ea375}.civic-dashboard-page .subscribe-button span{display:inline-block;padding-bottom:0;letter-spacing:.15em;font-size:.8125rem;text-transform:uppercase;font-weight:600;transition:transform .3s ease;white-space:nowrap;color:#fff}.civic-dashboard-page .subscribe-button:hover span{transform:translate(10rem)}.civic-dashboard-page .subscribe-button svg{position:absolute;right:0;top:0;height:100%;width:3rem;transition:all .3s ease;fill:#fff;padding:.75rem}.civic-dashboard-page .subscribe-button:hover svg{width:100%}.civic-dashboard-page .hover-underline-animation{position:relative;color:#1a1a1a}.civic-dashboard-page .controls-card{background:#fff;border-radius:12px;padding:1.25rem;margin-bottom:2rem;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a;overflow:visible;display:flex;align-items:center}.civic-dashboard-page .controls-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:nowrap;width:100%;margin:0;min-height:fit-content}.civic-dashboard-page .view-mode-toggle{background:#e8e8e8;border-radius:10px;padding:.375rem;display:inline-flex;gap:0;flex-shrink:0;z-index:1}.civic-dashboard-page .view-mode-button{padding:.625rem 1.25rem;background:transparent;border:none;border-radius:8px;font-size:.875rem;font-weight:600;color:#666;cursor:pointer;transition:all .25s ease;font-family:Manrope,system-ui,-apple-system,sans-serif;position:relative;z-index:1;white-space:nowrap}.civic-dashboard-page .view-mode-button:hover:not(.active){color:#333}.civic-dashboard-page .view-mode-button.active{background:#2b7a8c;color:#fff;box-shadow:0 2px 6px #104c584d}.civic-dashboard-page .date-range-filter{display:inline-flex;align-items:center;gap:.75rem;background:#f7f9fa;padding:.5rem .75rem;border-radius:10px;border:1px solid #E5E7EB;flex-shrink:0}.civic-dashboard-page .date-filter-label{display:inline-flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;color:#666;font-family:Manrope,system-ui,-apple-system,sans-serif;white-space:nowrap}.civic-dashboard-page .date-filter-input{padding:.375rem .625rem;border:1px solid #D1D5DB;border-radius:6px;font-size:.875rem;font-family:Manrope,system-ui,-apple-system,sans-serif;color:#333;background:#fff;transition:border-color .2s ease}.civic-dashboard-page .date-filter-input:focus{outline:none;border-color:#2b7a8c;box-shadow:0 0 0 3px #2b7a8c1a}.civic-dashboard-page .clear-filter-button{padding:.375rem .75rem;background:#ef4444;color:#fff;border:none;border-radius:6px;font-size:.75rem;font-weight:600;cursor:pointer;transition:background .2s ease;font-family:Manrope,system-ui,-apple-system,sans-serif;white-space:nowrap}.civic-dashboard-page .clear-filter-button:hover{background:#dc2626}.civic-dashboard-page .filter-tabs{display:flex;gap:.75rem;overflow-x:auto;overflow-y:visible;padding:0;flex:1;justify-content:flex-end;align-items:center}.civic-dashboard-page .filter-tab{padding:.625rem 1.25rem;background:#e8f4f8;border:2px solid transparent;border-radius:8px;font-size:.875rem;font-weight:600;color:#2b7a8c;cursor:pointer;transition:all .2s ease;white-space:nowrap;flex-shrink:0;font-family:Manrope,system-ui,-apple-system,sans-serif;margin:0}.civic-dashboard-page .filter-tab:hover{background:#d6e8ec;border-color:#88b1be}.civic-dashboard-page .filter-tab.active{background:#2b7a8c;color:#fff;border-color:#2b7a8c;box-shadow:0 2px 4px #104c5833}.civic-dashboard-page .all-events-button{pointer-events:none;cursor:default}.civic-dashboard-page .my-events-button{background:#e8f4f8;color:#2b7a8c;border:2px solid transparent}.civic-dashboard-page .my-events-button:hover{background:linear-gradient(135deg,#2b7a8c,#1e5f6d);color:#fff;border-color:#2b7a8c;transform:translateY(-1px);box-shadow:0 4px 8px #104c584d}.civic-dashboard-page .events-container{margin:0}.civic-dashboard-page .events-count{font-size:.9375rem;color:#6b7280;margin-bottom:1.5rem;font-weight:600}.civic-dashboard-page .events-list{display:flex;flex-direction:column;gap:1.5rem}.civic-dashboard-page .event-card{display:flex;gap:1.5rem;background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000001a;transition:all .3s ease;border:1px solid #e5e7eb}.civic-dashboard-page .event-card:hover{transform:translateY(-2px);box-shadow:0 8px 16px #104c581a;border-color:#88b1be}.civic-dashboard-page .event-date-container{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:.375rem}.civic-dashboard-page .event-date-badge{width:60px;height:60px;background:#2b7a8c;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;box-shadow:0 1px 3px #0000001a}.civic-dashboard-page .date-month{font-size:.75rem;font-weight:700;letter-spacing:.05em;margin-bottom:.125rem}.civic-dashboard-page .date-day{font-size:1.5rem;font-weight:700;line-height:1}.civic-dashboard-page .date-countdown{font-size:.85rem;font-weight:600;text-align:center;line-height:1.2;color:#6b7280;text-transform:lowercase;white-space:nowrap}.civic-dashboard-page .event-content{flex:1;min-width:0;position:relative}.civic-dashboard-page .event-type-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.375rem .875rem;border-radius:6px;font-size:.875rem;font-weight:600;color:#fff;position:absolute;top:0;right:0;opacity:.7}.civic-dashboard-page .type-label{font-size:.875rem}.civic-dashboard-page .event-title{font-size:1.375rem;font-weight:700;color:#104c58;margin:0 0 1rem;line-height:1.3}.civic-dashboard-page .event-datetime,.civic-dashboard-page .event-location{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.9375rem;color:#4b5563}.civic-dashboard-page .location-icon{flex-shrink:0;color:#6b7280}.civic-dashboard-page .location-icon-virtual{color:#3b82f6}.civic-dashboard-page .location-icon-inperson{color:#d97706}.civic-dashboard-page .event-description-wrapper{margin:1rem 0;display:flex;flex-direction:column;align-items:flex-end}.civic-dashboard-page .event-description{color:#374151;font-size:1rem;line-height:1.6;margin:0;width:100%;text-align:left}.civic-dashboard-page .ai-badge{font-size:.75rem;font-weight:400;color:#9ca3af;font-style:italic;margin-top:.75rem;text-align:right;line-height:1.4;max-width:100%}.civic-dashboard-page .participation-info{background:#fef3c7;padding:.875rem 1rem;border-radius:6px;font-size:.9375rem;color:#92400e;margin:1rem 0;line-height:1.5}.civic-dashboard-page .participation-info strong{font-weight:700}.civic-dashboard-page .event-actions{display:flex;gap:.75rem;margin-top:1.25rem;flex-wrap:wrap}.civic-dashboard-page .action-button{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;border-radius:6px;font-weight:600;font-size:.9375rem;cursor:pointer;transition:all .3s ease;text-decoration:none;white-space:nowrap;font-family:Manrope,system-ui,-apple-system,sans-serif}.civic-dashboard-page .action-button.primary{position:relative;background:#10b981;border:2px solid #10B981;color:#fff;overflow:hidden;box-shadow:0 2px 8px #00000026;padding-right:3rem}.civic-dashboard-page .action-button.primary .button-text{display:inline-block;transition:transform .3s ease;white-space:nowrap}.civic-dashboard-page .action-button.primary:hover .button-text{transform:translate(10rem)}.civic-dashboard-page .action-button.primary .button-icon-wrapper{position:absolute;right:0;top:0;height:100%;width:3rem;background:#10b981;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.civic-dashboard-page .action-button.primary:hover .button-icon-wrapper{width:100%}.civic-dashboard-page .action-button.primary .button-icon{width:1.5rem;height:1.5rem;color:#fff}.civic-dashboard-page .action-button.secondary{background:linear-gradient(135deg,var(--primary-light) 0%,var(--primary-soft) 100%);color:var(--primary-dark);border:none;box-shadow:0 2px 8px #00000026}.civic-dashboard-page .action-button.secondary:hover{background:linear-gradient(135deg,var(--accent-yellow) 0%,var(--accent-warm) 100%);transform:translateY(-2px);box-shadow:0 4px 16px #0003}.civic-dashboard-page .action-button.disabled{background:#e5e7eb;color:#9ca3af;cursor:not-allowed;opacity:.6;box-shadow:none}.civic-dashboard-page .action-button.disabled:hover{background:#e5e7eb;transform:none;box-shadow:none}.civic-dashboard-page .button-icon{font-size:1rem}.civic-dashboard-page .subscribe-modal{max-width:650px}.civic-dashboard-page .subscription-url-box{display:flex;gap:10px;margin-top:8px}.civic-dashboard-page .subscription-url-input{flex:1;padding:12px;border:2px solid #E5E7EB;border-radius:8px;font-size:14px;font-family:monospace;background:#f9fafb;color:#374151}.civic-dashboard-page .subscription-url-input:focus{outline:none;border-color:#2b7a8c;background:#fff}.civic-dashboard-page .copy-button{padding:12px 24px;background:#2b7a8c;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.civic-dashboard-page .copy-button:hover{background:#0d3d47;transform:translateY(-2px);box-shadow:0 4px 6px #104c5833}.civic-dashboard-page .copy-button:active{transform:translateY(0)}.civic-dashboard-page .subscription-instructions{display:flex;flex-direction:column;gap:20px;margin-top:12px}.civic-dashboard-page .instruction-item{padding:15px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000000d}.civic-dashboard-page .instruction-item strong{display:block;color:#2b7a8c;margin-bottom:8px;font-size:15px}.civic-dashboard-page .instruction-item ol{margin:8px 0 0;padding-left:20px}.civic-dashboard-page .instruction-item li{margin:6px 0;color:#555;font-size:14px;line-height:1.5}.civic-dashboard-page .calendar-view-container{background:#fff;border-radius:12px;padding:1.25rem;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a}.civic-dashboard-page .rbc-calendar{font-family:Manrope,system-ui,-apple-system,sans-serif}.civic-dashboard-page .rbc-header{padding:1rem .5rem;font-weight:700;color:#1e5f6d;background:#f0f7f8;border-color:#d6e8ec!important}.civic-dashboard-page .rbc-today{background-color:#f0f7f8!important}.civic-dashboard-page .rbc-month-view{border-color:#d6e8ec}.civic-dashboard-page .rbc-day-bg{border-color:#d6e8ec!important}.civic-dashboard-page .rbc-off-range-bg{background-color:#f8fafb}.civic-dashboard-page .rbc-event{border-radius:4px;font-weight:600;font-size:.875rem}.civic-dashboard-page .rbc-toolbar{margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.civic-dashboard-page .rbc-toolbar button{padding:.625rem 1.25rem;border-radius:8px;border:2px solid transparent;background:#e8f4f8;color:#2b7a8c;font-weight:600;font-size:.9375rem;transition:all .2s ease;font-family:Manrope,system-ui,-apple-system,sans-serif}.civic-dashboard-page .rbc-toolbar button:hover{background:#d6e8ec;border-color:#88b1be}.civic-dashboard-page .rbc-toolbar button.rbc-active{background:#2b7a8c;color:#fff;border-color:#2b7a8c;box-shadow:0 2px 4px #104c5833}.civic-dashboard-page .rbc-toolbar-label{font-size:1.25rem;font-weight:700;color:#1e5f6d}.event-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.event-modal{background:#fff;border-radius:6px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 40px #0000004d;position:relative;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-close{position:absolute;top:1rem;right:1rem;background:#0000001a;border:none;border-radius:50%;width:36px;height:36px;font-size:1.5rem;line-height:1;color:#4b5563;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;z-index:1}.modal-close:hover{background:#0003;transform:scale(1.1)}.modal-header{padding:2rem 2rem 1.5rem;border-bottom:1px solid #E5E7EB}.modal-title{font-size:1.5rem;font-weight:700;color:#1e5f6d;margin-top:1rem;margin-bottom:0;padding-right:2rem}.modal-body{padding:1.5rem 2rem 2rem}.modal-section{margin-bottom:1.5rem}.modal-section:last-child{margin-bottom:0}.modal-label{font-size:.875rem;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.modal-value{font-size:1rem;color:#1f2937;line-height:1.6}.participation-highlight{background:linear-gradient(135deg,#f0f7f8,#e8f4f8);padding:1rem;border-radius:6px;border-left:4px solid #88B1BE}.participation-highlight .modal-label{color:#2b7a8c}.modal-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #E5E7EB}.modal-actions .action-button{flex:1;min-width:140px}.civic-dashboard-page .dashboard-footer-wrapper{margin-top:4rem}@media (max-width: 1400px){.civic-dashboard-page .controls-row{gap:.875rem}.civic-dashboard-page .view-mode-button,.civic-dashboard-page .filter-tab{padding:.5rem 1.125rem;font-size:.8125rem}}@media (max-width: 1023px){.civic-dashboard-page .calendar-header h1{font-size:2rem}.civic-dashboard-page .controls-row{gap:.75rem}.civic-dashboard-page .view-mode-button,.civic-dashboard-page .filter-tab{padding:.5rem 1rem;font-size:.8125rem}}@media (max-width: 768px){.civic-dashboard-page .calendar-header h1{font-size:1.875rem}.civic-dashboard-page .description-section{padding:var(--space-3) var(--space-4)}.civic-dashboard-page .description-content{flex-direction:column;align-items:flex-start;gap:1.5rem}.civic-dashboard-page .info-description{font-size:.9375rem;margin:0 0 .75rem}.civic-dashboard-page .subscribe-info h3{font-size:.9375rem}.civic-dashboard-page .subscribe-info p{font-size:.875rem}.civic-dashboard-page .subscribe-button{align-self:flex-start;width:100%}.civic-dashboard-page .subscribe-button:hover span{transform:translate(8rem)}.civic-dashboard-page .calendar-view-container{padding:.5rem;border-radius:8px}.civic-dashboard-page .rbc-calendar{height:500px!important}.civic-dashboard-page .rbc-header{padding:.5rem .25rem;font-size:.75rem}.civic-dashboard-page .rbc-button-link{font-size:.875rem}.civic-dashboard-page .rbc-event{font-size:.75rem;padding:1px 3px}.civic-dashboard-page .rbc-toolbar{flex-direction:column;gap:.5rem;margin-bottom:.75rem}.civic-dashboard-page .rbc-toolbar-label{font-size:1rem}.civic-dashboard-page .controls-card{padding:1rem}.civic-dashboard-page .controls-row{flex-direction:row;align-items:center;gap:.5rem;flex-wrap:wrap}.civic-dashboard-page .date-range-filter{width:100%;flex-wrap:wrap;gap:.5rem;padding:.75rem}.civic-dashboard-page .date-filter-label{width:100%;margin-bottom:.25rem}.civic-dashboard-page .date-filter-input{flex:1;min-width:120px}.civic-dashboard-page .clear-filter-button{width:100%;margin-top:.5rem}.civic-dashboard-page .view-mode-toggle{padding:.25rem;flex-shrink:0}.civic-dashboard-page .view-mode-button{padding:.5rem .875rem;font-size:.8125rem;flex:0}.civic-dashboard-page .filter-tabs{gap:.5rem;flex-shrink:0}.civic-dashboard-page .filter-tab{padding:.5rem .875rem;font-size:.8125rem}.civic-dashboard-page .event-card{flex-direction:column;padding:1.25rem}.civic-dashboard-page .event-date-container{align-self:flex-start}.civic-dashboard-page .event-date-badge{width:70px;height:70px}.civic-dashboard-page .date-month{font-size:.75rem}.civic-dashboard-page .date-day{font-size:1.75rem}.civic-dashboard-page .event-title{font-size:1.25rem}.civic-dashboard-page .event-actions{flex-direction:column}.civic-dashboard-page .action-button{width:100%;justify-content:center}.civic-dashboard-page .action-button.primary:hover .button-text{transform:translate(8rem)}.event-modal{max-height:95vh;margin:.5rem}.modal-header{padding:1.5rem 1.5rem 1rem}.modal-body{padding:1rem 1.5rem 1.5rem}.modal-title{font-size:1.25rem;padding-right:2.5rem}.modal-actions{flex-direction:column}.modal-actions .action-button{width:100%}.modal-actions .action-button.primary:hover .button-text{transform:translate(8rem)}}@media (max-width: 480px){.civic-dashboard-page .calendar-header h1{font-size:1.75rem}.civic-dashboard-page .description-section{padding:var(--space-3)}.civic-dashboard-page .info-description,.civic-dashboard-page .subscribe-info h3{font-size:.875rem}.civic-dashboard-page .subscribe-info p{font-size:.8125rem}.civic-dashboard-page .controls-card{padding:.875rem}.civic-dashboard-page .view-mode-button,.civic-dashboard-page .filter-tab{padding:.5rem .75rem;font-size:.75rem}.civic-dashboard-page .calendar-view-container{padding:.375rem}.civic-dashboard-page .rbc-calendar{height:450px!important}.civic-dashboard-page .rbc-header{padding:.375rem .125rem;font-size:.6875rem}.civic-dashboard-page .rbc-event{font-size:.6875rem;padding:0 2px}.civic-dashboard-page .rbc-toolbar-label{font-size:.9375rem}.civic-dashboard-page .event-title{font-size:1.125rem}.civic-dashboard-page .event-description{font-size:.9375rem}}.user-page{display:flex;flex-direction:column;gap:var(--space-4);max-width:1400px;margin:0 auto;padding:0 var(--space-6)}.welcome-section-anonymous{text-align:center;padding:var(--space-8) var(--space-6);background:linear-gradient(135deg,var(--ocean-50) 0%,var(--neutral-50) 100%);border-radius:var(--radius-2xl);border:none;box-shadow:var(--shadow-base)}.welcome-title{font-size:var(--text-4xl);font-weight:var(--font-bold);color:var(--color-text-primary);margin:0 0 var(--space-4) 0;line-height:1.2}.welcome-subtitle{font-size:var(--text-lg);color:var(--color-text-secondary);margin:0 0 var(--space-6) 0;line-height:1.5;max-width:600px;margin-left:auto;margin-right:auto}.header-section{margin-bottom:var(--space-4)}.header-greeting{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--color-text-primary);margin:0 0 var(--space-2) 0;line-height:1.3}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);margin-bottom:var(--space-3)}.stat-card{background:var(--color-card);border-radius:var(--radius-base);padding:var(--space-3);border:1px solid var(--neutral-200);position:relative;display:grid;grid-template-columns:36px 1fr;grid-template-rows:36px 40px auto;gap:var(--space-2);transition:all .3s ease;min-height:120px}.stat-card.clickable-card{cursor:pointer}.stat-card.clickable-card:hover{transform:translateY(-2px);border-color:var(--color-primary);box-shadow:var(--shadow-base)}.stat-card.clickable-card:hover .card-arrow{opacity:1;transform:translate(2px,-2px);color:var(--color-primary)}.card-arrow{position:absolute;top:var(--space-3);right:var(--space-3);font-size:1.25rem;color:var(--color-text-secondary);opacity:.6;transition:all .3s ease}.stat-card-icon{grid-row:1;grid-column:1;width:36px;height:36px;display:flex;align-items:center;justify-content:center;flex-shrink:0;align-self:center}.stat-card-icon img{width:20px;height:20px;opacity:.9}.stat-card-header{grid-row:1;grid-column:2;display:flex;align-items:center;height:36px;margin-left:var(--space-2)}.stat-card-main{grid-row:2;grid-column:1 / -1;display:flex;align-items:center;height:40px;margin:0;padding-left:var(--space-2)}.stat-card-value{font-size:1.75rem;font-weight:700;color:var(--color-text-primary);margin:0;line-height:1.2}.stat-card-label{font-size:.875rem;color:var(--color-text-secondary);font-weight:500;margin:0;line-height:1.2;white-space:nowrap}.stat-card-extra{grid-row:3;grid-column:1 / -1;margin-top:var(--space-2)}.countdown-container{display:flex;flex-direction:column;align-items:center;gap:var(--space-1)}.countdown-display{font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-size:1.5rem;font-weight:600;color:var(--color-text-primary);display:flex;align-items:center}.countdown-number{letter-spacing:.05em}.countdown-separator{margin:0 .8rem;color:var(--color-text-secondary);font-weight:400}.countdown-labels{display:flex;gap:1.4rem;font-size:.7rem;color:var(--color-text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.countdown-labels span{min-width:32px;text-align:center}.foi-progress-bar-full{display:flex;width:100%;height:20px;border-radius:10px;overflow:hidden;margin-bottom:6px;box-shadow:inset 0 1px 3px #0000001a;border:1px solid rgba(0,0,0,.6)}.progress-segment.foi-submitted{background:#5a54a5}.progress-segment.foi-voting{background:#3a87b9}.progress-segment.foi-progress{background:#fdad61}.progress-segment.foi-complete{background:#67c0a8}.bills-card{flex-direction:column}.stat-card-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:4px}.bill-progress-bar-full{display:flex;width:100%;height:20px;border-radius:10px;overflow:hidden;margin-bottom:6px;box-shadow:inset 0 1px 3px #0000001a;border:1px solid rgba(0,0,0,.6)}.bill-progress-bar{display:flex;width:100%;height:24px;border-radius:12px;overflow:hidden;margin-top:var(--space-3);box-shadow:inset 0 1px 3px #0000001a}.progress-segment{position:relative;display:flex;align-items:center;justify-content:center;transition:all .3s ease;cursor:pointer}.progress-segment:hover{filter:brightness(1.2);transform:translateY(-1px);box-shadow:0 4px 8px #00000026;z-index:10}.progress-segment[title]:hover:after{content:attr(title);position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:#2c3e50f2;color:#fff;padding:.5rem .75rem;border-radius:6px;font-size:.75rem;font-weight:500;white-space:nowrap;margin-bottom:8px;box-shadow:0 2px 8px #0003;z-index:20}.progress-segment[title]:hover:before{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:4px solid transparent;border-top-color:#2c3e50f2;margin-bottom:4px;z-index:20}.progress-count{color:#fff;font-size:var(--text-xs);font-weight:var(--font-bold);text-shadow:0 1px 2px rgba(0,0,0,.2)}.progress-segment.first-reading{background:#5a54a5}.progress-segment.second-reading{background:#3a87b9}.progress-segment.committee{background:#fedf8d}.progress-segment.third-reading{background:#abdda2}.progress-segment.passed{background:#67c0a8}.progress-labels{display:flex;justify-content:space-between;margin-top:var(--space-1);font-size:10px;color:var(--color-text-secondary)}.bill-stage-pipeline-container{width:100%;margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--neutral-200)}.bill-stage-pipeline{display:flex;align-items:center;justify-content:space-between;width:100%;padding:0 var(--space-2)}.pipeline-stage{display:flex;align-items:center;flex:1;justify-content:center}.stage-node{position:relative;width:32px;height:32px;border-radius:50%;background:var(--neutral-100);border:2px solid var(--neutral-200);display:flex;flex-direction:column;align-items:center;justify-content:center;transition:all .3s ease;cursor:default}.stage-node.active{background:var(--ocean-300);border-color:var(--ocean-400);color:#fff;transform:scale(1.15);box-shadow:0 2px 4px #104c5833}.stage-label{font-size:9px;font-weight:var(--font-bold);line-height:1;margin-top:1px}.stage-count{position:absolute;top:-8px;right:-4px;background:var(--color-highlight);color:var(--color-text-primary);font-size:10px;font-weight:var(--font-bold);padding:2px 4px;border-radius:8px;min-width:14px;text-align:center;box-shadow:0 1px 2px #0000001a}.stage-connector{flex:1;height:2px;background:var(--neutral-200);margin:0 -8px;position:relative;z-index:0}.stage-node.active.first_reading{background:var(--ocean-200);border-color:var(--ocean-300)}.stage-node.active.second_reading{background:var(--ocean-300);border-color:var(--ocean-400)}.stage-node.active.public_committee{background:var(--ocean-400);border-color:var(--ocean-500)}.stage-node.active.committee_whole{background:var(--ocean-500);border-color:var(--ocean-600)}.stage-node.active.third_reading{background:var(--ocean-600);border-color:var(--ocean-700)}.stage-node.active.royal_assent{background:var(--success);border-color:var(--success)}.stage-node.active.proclaimed{background:var(--success);border-color:var(--success);opacity:.9}.stat-card-explore{display:inline-block;margin-top:2px;font-size:11px;color:var(--color-primary);text-decoration:none;font-weight:var(--font-medium);transition:all .2s ease}.stat-card-explore:hover{color:var(--color-primary-dark);transform:translate(2px)}.session-active{color:#34d399;font-size:var(--text-xl);font-weight:var(--font-bold)}.session-countdown-info{display:flex;flex-direction:column;gap:2px;margin-top:var(--space-2)}.session-name{font-size:var(--text-xs);color:var(--color-primary);font-weight:var(--font-semibold)}.session-date{font-size:10px;color:var(--color-text-secondary)}.interests-alerts-section{background:var(--color-card);border-radius:var(--radius-base);padding:var(--space-6);margin-bottom:var(--space-3)}.interests-container{display:flex;flex-direction:column;gap:var(--space-4)}.interest-chips-list{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}.interest-chip-display{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--font-medium);border:2px solid;transition:all .2s ease;position:relative}.interest-chip-display:hover{transform:translateY(-1px)}.interest-chip-remove{background:transparent;border:none;color:inherit;font-size:var(--text-lg);font-weight:var(--font-bold);cursor:pointer;padding:0;width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease;line-height:1}.interest-chip-remove:hover{background:#0000001a}.chip-color-0{border-color:#88b1be;background:#88b1be26;color:#5a8a98}.chip-color-1{border-color:#7ebb89;background:#7ebb8926;color:#4a8054}.chip-color-2{border-color:#e89b67;background:#e89b6726;color:#b86f3c}.chip-color-3{border-color:#b88fcf;background:#b88fcf26;color:#7e5a94}.chip-color-4{border-color:#f0a3a3;background:#f0a3a326;color:#c06464}.add-interest-container{position:relative;display:inline-block}.add-interest-input{background:transparent;color:var(--color-text-primary);padding:var(--space-2) var(--space-4);border:2px dashed var(--neutral-300);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:text;transition:all .2s ease;font-family:var(--font-primary);min-width:200px}.add-interest-input:hover{background:var(--neutral-50);border-color:var(--color-primary)}.add-interest-input:focus{outline:none;background:var(--neutral-50);border-color:var(--color-primary);border-style:solid}.add-interest-input::placeholder{color:var(--color-text-muted)}.interest-dropdown-inline{position:absolute;top:100%;left:0;right:0;background:var(--color-card);border:1px solid var(--neutral-200);border-radius:var(--radius-base);box-shadow:var(--shadow-lg);z-index:10;margin-top:var(--space-1);max-height:200px;overflow-y:auto}.interest-bills-section{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--neutral-200)}.interest-bills-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3)}.interest-bills-header h4{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-text-primary);margin:0}.view-all-bills{color:var(--color-primary);font-size:var(--text-sm);text-decoration:none;font-weight:var(--font-medium);transition:color .2s ease}.view-all-bills:hover{color:var(--color-primary-hover);text-decoration:underline}.loading-state-small{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-4);color:var(--color-text-muted);font-size:var(--text-sm)}.loading-spinner-small{width:16px;height:16px;border:2px solid var(--neutral-200);border-top:2px solid var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}.interest-bills-table{overflow-x:auto}.bills-mini-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.bills-mini-table th{text-align:left;padding:var(--space-2) var(--space-3);background:var(--neutral-100);color:var(--color-text-secondary);font-weight:var(--font-medium);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.03em;border:none}.bills-mini-table th:first-child{border-radius:var(--radius-base) 0 0 0;width:80px}.bills-mini-table th:last-child{border-radius:0 var(--radius-base) 0 0;width:100px}.bills-mini-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--neutral-100);vertical-align:middle}.bills-mini-table tr:last-child td{border-bottom:none}.bill-number-cell{font-weight:var(--font-medium);color:var(--color-text-secondary)}.bill-title-cell{max-width:300px}.bill-link-mini{color:var(--color-text-primary);text-decoration:none;line-height:1.3;display:block;transition:color .2s ease}.bill-link-mini:hover{color:var(--color-primary)}.bill-status-cell{text-align:right}.status-badge-mini{display:inline-block;padding:var(--space-1) var(--space-2);background:var(--neutral-200);color:var(--color-text-secondary);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-medium);text-transform:capitalize;white-space:nowrap}.status-badge-mini.first-reading{background:var(--ocean-100);color:var(--ocean-700)}.status-badge-mini.second-reading{background:var(--warning-100);color:var(--warning-700)}.status-badge-mini.third-reading{background:var(--success-100);color:var(--success-700)}.status-badge-mini.royal-assent{background:var(--color-primary);color:var(--neutral-50)}.no-bills-message{padding:var(--space-4);text-align:center;color:var(--color-text-muted);font-size:var(--text-sm);background:var(--neutral-50);border-radius:var(--radius-base)}.quick-actions-section{margin-bottom:var(--space-3)}.quick-actions-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);margin-top:var(--space-4)}.action-card{background:var(--color-card);border-radius:var(--radius-base);padding:var(--space-5);border:1px solid var(--neutral-200);display:flex;flex-direction:column;transition:all .3s ease}.action-card:hover{transform:translateY(-3px);border-color:var(--color-primary)}.action-card-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.action-card-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.action-card-icon img{width:24px;height:24px;opacity:.9}.action-card-title{font-size:var(--text-base);font-weight:var(--font-bold);color:var(--color-text-primary);margin:0;line-height:1.3}.action-card-description{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0 0 var(--space-4) 0;line-height:1.4;flex:1}.action-card .btn-small{align-self:flex-start;width:100%;text-align:center}.activity-feed-section{background:var(--color-card);border-radius:var(--radius-base);padding:var(--space-6);margin-bottom:var(--space-3)}.activity-feed{display:flex;flex-direction:column;gap:0}.activity-item{display:flex;align-items:flex-start;gap:var(--space-4);padding:var(--space-4) var(--space-6);margin:0 calc(-1 * var(--space-6));transition:background .2s ease;background:transparent}.activity-item:first-child{background:#f8f9fa}.activity-item:nth-child(2){background:transparent}.activity-item:nth-child(3){background:#f8f9fa}.activity-item:hover{background:var(--neutral-300)!important}.activity-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.activity-icon img{width:20px;height:20px;opacity:.8}.activity-content{flex:1}.activity-title{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-primary);margin:0 0 var(--space-1) 0;line-height:1.4}.activity-time{font-size:var(--text-xs);color:var(--color-text-muted);margin:0}.view-all-activity{display:inline-block;margin-top:var(--space-4);margin-left:var(--space-6);margin-right:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--neutral-200);color:var(--color-primary);text-decoration:none;font-size:var(--text-sm);font-weight:var(--font-medium);transition:color .2s ease;text-align:center;width:auto;background:transparent!important}.view-all-activity:hover{color:var(--color-primary-hover);text-decoration:underline}.community-snapshot-section{margin-bottom:var(--space-3)}.community-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4);margin-top:var(--space-4)}.community-card{background:var(--color-card);border-radius:var(--radius-base);padding:var(--space-6);border:1px solid var(--neutral-200);transition:all .3s ease}.community-card:hover{transform:translateY(-2px);border-color:var(--color-primary)}.community-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3)}.community-label{font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary)}.community-badge{display:inline-block;padding:var(--space-1) var(--space-2);background:var(--ocean-100);color:var(--ocean-700);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-semibold)}.community-badge.trending{background:linear-gradient(135deg,var(--warning-100) 0%,var(--warning-200) 100%);color:var(--warning-800)}.community-card-title{font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--color-text-primary);margin:0 0 var(--space-2) 0;line-height:1.3}.community-card-description{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0 0 var(--space-4) 0;line-height:1.5}.community-card .btn-tertiary{background:var(--neutral-100);color:var(--color-text-primary);border:1px solid var(--neutral-300)}.community-card .btn-tertiary:hover{background:var(--neutral-200);border-color:var(--neutral-400)}.interest-search-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4)}.interest-search-content{background:var(--color-card);border-radius:var(--radius-base);padding:var(--space-6);max-width:500px;width:100%;max-height:80vh;overflow-y:auto}.interest-search-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4)}.interest-search-header h3{font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--color-text-primary);margin:0}.close-search-btn{background:none;border:none;font-size:var(--text-2xl);color:var(--color-text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-base);transition:all .2s ease}.close-search-btn:hover{background:var(--neutral-100);color:var(--color-text-primary)}.section-title{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--color-text-primary);margin:0 0 var(--space-2) 0;line-height:1.3}.section-subtitle{font-size:var(--text-base);color:var(--color-text-secondary);margin:0;line-height:1.5}.user-top-section{display:grid;grid-template-columns:2fr 1fr;gap:var(--space-6);margin-bottom:var(--space-8)}.user-main-card{background:var(--color-card);border-radius:var(--radius-2xl);padding:var(--space-8);box-shadow:var(--shadow-floating);border:none}.greeting-section{margin-bottom:var(--space-6)}.greeting-title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--color-text-primary);margin:0 0 var(--space-3) 0;line-height:1.2}.greeting-subtitle{font-size:var(--text-base);color:var(--color-text-secondary);margin:0;line-height:1.5}.interest-management{display:flex;flex-direction:column;gap:var(--space-4)}.search-input-container{position:relative}.interest-search-input{width:100%;padding:var(--space-4);border:2px solid var(--neutral-200);border-radius:var(--radius-lg);font-size:var(--text-base);font-family:var(--font-primary);background:var(--neutral-50);color:var(--color-text-primary);transition:all .2s ease}.interest-search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #88b1be26;background:var(--color-card)}.interest-search-input::placeholder{color:var(--color-text-muted)}.interest-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--color-card);border:1px solid var(--neutral-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:10;margin-top:var(--space-1);max-height:200px;overflow-y:auto}.interest-dropdown-item{width:100%;padding:var(--space-3) var(--space-4);background:none;border:none;text-align:left;font-size:var(--text-sm);color:var(--color-text-primary);cursor:pointer;transition:background-color .2s ease;font-family:var(--font-primary)}.interest-dropdown-item:hover{background:var(--neutral-100)}.interest-dropdown-item:first-child{border-radius:var(--radius-lg) var(--radius-lg) 0 0}.interest-dropdown-item:last-child{border-radius:0 0 var(--radius-lg) var(--radius-lg)}.selected-interests{display:flex;flex-wrap:wrap;gap:var(--space-2)}.interest-chip{display:inline-flex;align-items:center;gap:var(--space-2);background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-hover) 100%);color:var(--neutral-50);padding:var(--space-2) var(--space-3);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--font-medium);box-shadow:var(--shadow-base);transition:all .2s ease}.interest-chip:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.interest-remove{background:#fff3;border:none;color:var(--neutral-50);width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:16px;line-height:1;transition:all .2s ease;font-family:var(--font-primary)}.interest-remove:hover{background:#ffffff4d;transform:scale(1.1)}.user-stats-card{background:var(--color-card);border-radius:var(--radius-2xl);padding:var(--space-6);box-shadow:var(--shadow-floating);border:none;height:fit-content}.stats-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-text-primary);margin:0 0 var(--space-6) 0}.stat-item{display:flex;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-6)}.stat-item:last-child{margin-bottom:0}.stat-icon{width:40px;height:40px;background:linear-gradient(135deg,var(--ocean-100) 0%,var(--ocean-200) 100%);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon img{width:20px;height:20px;opacity:.8}.stat-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary);margin:0 0 var(--space-1) 0}.stat-value{font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--color-text-primary);margin:0 0 var(--space-1) 0;line-height:1.2}.stat-description{font-size:var(--text-xs);color:var(--color-text-muted);margin:0}.bills-of-interest-section{background:var(--color-card);border-radius:var(--radius-2xl);box-shadow:var(--shadow-floating);border:none;overflow:hidden}.bills-header{padding:var(--space-6) var(--space-8) var(--space-4);background:var(--neutral-100);border:none}.bills-table-container{padding:var(--space-6) var(--space-8)}.bills-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.bills-table th{text-align:left;padding:var(--space-3) var(--space-4);background:var(--neutral-100);color:var(--color-text-secondary);font-weight:var(--font-semibold);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;border:none}.bills-table th:first-child{border-radius:var(--radius-base) 0 0 var(--radius-base)}.bills-table th:last-child{border-radius:0 var(--radius-base) var(--radius-base) 0}.bills-table td{padding:var(--space-4);border-bottom:1px solid var(--neutral-200);vertical-align:top}.bills-table tr:last-child td{border-bottom:none}.bill-title{max-width:400px}.bill-link{color:var(--color-text-primary);text-decoration:none;font-weight:var(--font-medium);line-height:1.4;transition:color .2s ease}.bill-link:hover{color:var(--color-primary);text-decoration:underline}.bill-status{text-align:center;white-space:nowrap}.status-badge{display:inline-block;padding:var(--space-1) var(--space-3);background:var(--neutral-200);color:var(--color-text-secondary);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-medium);text-transform:capitalize}.status-badge.first-reading{background:var(--ocean-100);color:var(--ocean-700)}.status-badge.second-reading{background:var(--warning-100);color:var(--warning-700)}.status-badge.third-reading{background:var(--success-100);color:var(--success-700)}.status-badge.royal-assent{background:var(--color-primary);color:var(--neutral-50)}.table-footer{margin-top:var(--space-4);text-align:center;padding-top:var(--space-4);border-top:1px solid var(--neutral-200)}.loading-state{text-align:center;padding:var(--space-8);color:var(--color-text-muted)}.loading-spinner{width:32px;height:32px;border:3px solid var(--neutral-200);border-top:3px solid var(--color-primary);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto var(--space-4)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.empty-state{text-align:center;padding:var(--space-8);color:var(--color-text-muted)}.no-interests-state{margin-top:var(--space-8)}.empty-state-card{background:var(--color-card);border-radius:var(--radius-2xl);padding:var(--space-8);text-align:center;box-shadow:var(--shadow-base);border:2px dashed var(--neutral-300)}.empty-state-icon{width:64px;height:64px;background:var(--neutral-100);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-4)}.quick-access-section{margin-bottom:var(--space-8)}.quick-access-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-6);margin-top:var(--space-6)}.quick-access-card{background:var(--color-card);border-radius:var(--radius-2xl);padding:var(--space-6);box-shadow:var(--shadow-base);border:1px solid var(--neutral-200);text-decoration:none;color:inherit;transition:all .3s ease;display:block}.quick-access-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-floating);border-color:var(--color-primary)}.quick-access-icon{width:48px;height:48px;background:var(--ocean-100);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-4)}.quick-access-icon img{width:24px;height:24px;filter:none}.quick-access-title{font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--color-text-primary);margin:0 0 var(--space-2) 0;line-height:1.3}.quick-access-description{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0;line-height:1.5}.empty-state-icon img{width:32px;height:32px;opacity:.6}.empty-state-card h3{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-text-primary);margin:0 0 var(--space-3) 0}.empty-state-card p{font-size:var(--text-base);color:var(--color-text-secondary);margin:0;line-height:1.5}.activity-link{color:var(--color-text-primary);text-decoration:none;transition:color .2s ease}.activity-link:hover{color:var(--color-primary);text-decoration:underline}.activity-status{font-size:var(--text-xs);color:var(--color-text-muted);margin-top:var(--space-1)}.no-activity-message{text-align:center;padding:var(--space-8) var(--space-4);color:var(--color-text-muted)}.no-activity-message p:first-child{font-weight:500;margin-bottom:var(--space-2)}.view-all-activity{color:var(--color-primary);text-decoration:none;font-size:var(--text-sm);font-weight:500;margin-top:var(--space-2);transition:color .2s ease;text-align:center;padding:var(--space-2);display:block}.view-all-activity:hover{color:var(--color-primary-dark);text-decoration:underline}.tracking-section{background:var(--color-card);border-radius:var(--radius-base);padding:var(--space-6);margin-bottom:var(--space-6)}.tracking-table-container{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--neutral-200);background:#fff}.tracking-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.tracking-table thead{background:var(--neutral-50)}.tracking-table th{padding:var(--space-3) var(--space-4);text-align:left;font-weight:var(--font-semibold);color:var(--color-text-muted);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--neutral-200)}.tracking-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--neutral-100);vertical-align:top}.tracking-table tbody tr:hover{background:var(--neutral-50)}.tracking-table tbody tr:last-child td{border-bottom:none}.action-cell{width:90px;text-align:center;padding:var(--space-2)}.follow-status-btn{background:var(--sky-blue);border:1px solid var(--sky-blue);color:#fff;font-size:var(--text-xs);font-weight:var(--font-medium);cursor:pointer;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);transition:all .2s ease;font-family:var(--font-primary);white-space:nowrap;display:inline-block;line-height:1.4;min-width:75px;position:relative}.follow-status-btn .follow-default{display:inline}.follow-status-btn .follow-hover{display:none}.follow-status-btn:hover{background:#fff;border-color:var(--color-error);color:var(--color-error);transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.follow-status-btn:hover .follow-default{display:none}.follow-status-btn:hover .follow-hover{display:inline}.bill-number-cell{font-family:var(--font-mono);font-weight:var(--font-semibold);min-width:80px}.bill-title-cell,.foi-title-cell{max-width:300px;line-height:1.4}.date-cell{color:var(--color-text-muted);font-size:var(--text-xs);white-space:nowrap;min-width:100px}.departments-cell-mini{color:var(--color-text-muted);font-size:var(--text-xs);max-width:200px}.tracking-reason-cell{min-width:140px;max-width:200px}.tracking-reason-container{display:flex;flex-direction:column;gap:var(--space-1)}.tracking-reason-badge{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-medium);white-space:nowrap;width:fit-content}.tracking-reason-badge.star{background:var(--mustard-yellow);color:var(--deep-ocean)}.tracking-reason-badge.target{background:var(--success-light);color:var(--success-dark)}.tracking-reason-badge.tag{background:var(--sky-blue-light);color:var(--deep-ocean)}.tracking-reason-details{color:var(--color-text-muted);font-size:var(--text-xs);line-height:1.3}.tracking-reason-secondary{color:var(--color-text-muted);font-size:var(--text-xs);font-style:italic;line-height:1.3;margin-top:var(--space-1);opacity:.85}.interest-pills-container{display:flex;flex-wrap:wrap;gap:var(--space-1);align-items:center}.interest-pill{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-2);background:var(--sky-blue-light);color:var(--deep-ocean);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-medium);white-space:nowrap;border:1px solid var(--sky-blue);gap:var(--space-1)}.interest-pill-remove{background:none;border:none;color:var(--deep-ocean);font-size:var(--text-sm);font-weight:700;line-height:1;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;transition:all .2s ease;opacity:.7}.interest-pill-remove:hover{background:#104c5826;color:var(--deep-ocean);opacity:1;transform:scale(1.1)}.no-interest-match{color:var(--color-text-muted);font-size:var(--text-sm);opacity:.6}.bill-link,.foi-link{color:var(--color-text-primary);text-decoration:none;font-weight:var(--font-medium);transition:color .2s ease}.bill-link:hover,.foi-link:hover{color:var(--color-primary);text-decoration:underline}.view-link{color:var(--color-primary);text-decoration:none;font-weight:var(--font-medium);font-size:var(--text-xs);transition:color .2s ease}.view-link:hover{color:var(--color-primary-dark);text-decoration:underline}.action-link{color:var(--color-primary);text-decoration:none;font-weight:var(--font-medium)}.action-link:hover{color:var(--color-primary-dark);text-decoration:underline}.status-badge-mini{display:inline-block;padding:var(--space-1) var(--space-2);border-radius:var(--radius-base);font-size:var(--text-xs);font-weight:var(--font-medium);text-transform:capitalize;white-space:nowrap}.status-badge-mini.first-reading{background:#3b82f61a;color:#1d4ed8}.status-badge-mini.second-reading{background:#f59e0b1a;color:#92400e}.status-badge-mini.third-reading{background:#8b45131a;color:#78350f}.status-badge-mini.royal-assent{background:#10b9811a;color:#059669}.status-badge-mini.foi-pending-review{background:#f59e0b1a;color:#92400e}.status-badge-mini.foi-community-voting{background:#3b82f61a;color:#1d4ed8}.status-badge-mini.foi-in-progress{background:#f59e0b1a;color:#92400e}.status-badge-mini.foi-complete{background:#10b9811a;color:#059669}.activity-type-badge{display:inline-block;padding:var(--space-1) var(--space-2);border-radius:var(--radius-base);font-size:var(--text-xs);font-weight:var(--font-medium);white-space:nowrap}.activity-type-badge.foi_submission{background:#8b45131a;color:#78350f}.activity-type-badge.foi_interaction{background:#3b82f61a;color:#1d4ed8}.fiscal-badge{display:inline-block;padding:var(--space-1) var(--space-2);border-radius:var(--radius-base);font-size:var(--text-xs);font-weight:var(--font-medium);text-transform:capitalize;white-space:nowrap}.fiscal-badge.increase{background:#dc26261a;color:#b91c1c}.fiscal-badge.decrease{background:#10b9811a;color:#059669}.fiscal-badge.ambiguous,.fiscal-badge.unknown{background:#6b72801a;color:#4b5563}.empty-table-state{padding:var(--space-12) var(--space-6);text-align:center;color:var(--color-text-muted)}.empty-table-state p:first-child{font-weight:var(--font-medium);margin-bottom:var(--space-2)}@media (max-width: 1200px){.stats-grid,.quick-actions-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.user-page{padding:0 var(--space-4)}.stats-grid,.quick-actions-grid,.community-grid{grid-template-columns:1fr}.tracking-table{font-size:var(--text-xs)}.tracking-table th,.tracking-table td{padding:var(--space-2) var(--space-3)}.bill-title-cell,.foi-title-cell{max-width:200px}.departments-cell-mini{max-width:120px}.tracking-reason-cell{max-width:140px}.user-top-section{grid-template-columns:1fr;gap:var(--space-4)}.user-main-card,.user-stats-card,.header-section{padding:var(--space-6)}.header-greeting,.greeting-title{font-size:var(--text-2xl)}.stat-item{gap:var(--space-3)}.stat-icon{width:36px;height:36px}.bills-table-container{padding:var(--space-4);overflow-x:auto}.bills-table{min-width:500px}.bills-header{padding:var(--space-4) var(--space-6)}.section-title{font-size:var(--text-xl)}}@media (max-width: 480px){.user-page{gap:var(--space-6);padding:0 var(--space-3)}.header-section,.user-main-card,.user-stats-card{padding:var(--space-4)}.header-greeting,.greeting-title{font-size:var(--text-xl)}.greeting-subtitle{font-size:var(--text-sm)}.stats-title{font-size:var(--text-lg)}.interest-search-input{padding:var(--space-3);font-size:var(--text-sm)}.empty-state-card{padding:var(--space-6)}.empty-state-icon{width:48px;height:48px}.empty-state-icon img{width:24px;height:24px}.stat-card-value{font-size:var(--text-xl)}.community-card{padding:var(--space-4)}}.search-query-builder{position:relative;width:100%;margin-bottom:var(--space-4)}.search-input-container{position:relative;display:flex;align-items:center;background:var(--neutral-50);border:2px solid var(--ocean-200);border-radius:var(--radius-full);padding:0;transition:all .2s ease;box-shadow:var(--shadow-sm)}.search-input-container:focus-within{border-color:var(--ocean-500);box-shadow:0 0 0 3px #88b1be1a}.search-icon{display:flex;align-items:center;justify-content:center;padding:0 var(--space-4);color:var(--ocean-400)}.search-input{flex:1;border:none;background:transparent;padding:var(--space-3) var(--space-2);font-size:var(--text-base);font-family:var(--font-primary);color:var(--neutral-800);outline:none}.search-input::placeholder{color:var(--neutral-400);font-size:var(--text-sm)}.clear-all-btn{margin-right:var(--space-4);padding:var(--space-2) var(--space-3);background:var(--ocean-100);color:var(--ocean-700);border:none;border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:all .2s ease}.clear-all-btn:hover{background:var(--ocean-200);transform:translateY(-1px)}.search-suggestions{position:absolute;top:calc(100% + var(--space-2));left:0;right:0;background:var(--neutral-50);border:1px solid var(--ocean-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-height:300px;overflow-y:auto;z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fdfefef2}.suggestion-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);cursor:pointer;transition:background .2s ease;border-bottom:1px solid var(--ocean-100)}.suggestion-item:last-child{border-bottom:none}.suggestion-item:hover,.suggestion-item.selected{background:var(--ocean-50)}.suggestion-type{font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--ocean-600);text-transform:uppercase;padding:var(--space-1) var(--space-2);background:var(--ocean-100);border-radius:var(--radius-sm)}.suggestion-text{flex:1;font-size:var(--text-sm);color:var(--neutral-700)}.filter-chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3);align-items:center}.filter-chip{display:inline-flex;align-items:center;gap:var(--space-1);background:var(--ocean-50);border:1px solid var(--ocean-300);border-radius:var(--radius-full);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--ocean-800);animation:chipSlideIn .2s ease;box-shadow:var(--shadow-sm);transition:all .2s ease}.filter-chip:hover{transform:translateY(-1px);box-shadow:var(--shadow-base)}@keyframes chipSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.chip-label{font-weight:var(--font-semibold);color:var(--ocean-700)}.chip-operator{color:var(--ocean-500);font-size:var(--text-xs);padding:0 var(--space-1)}.chip-value{color:var(--ocean-900);background:var(--neutral-50);padding:2px var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--ocean-200)}.chip-remove{display:flex;align-items:center;justify-content:center;width:20px;height:20px;margin-left:var(--space-1);background:var(--ocean-300);border:none;border-radius:50%;color:#fff;cursor:pointer;transition:all .2s ease;padding:0}.chip-remove:hover{background:var(--error);transform:scale(1.1)}.chip-remove svg{width:14px;height:14px}.filter-count{font-size:var(--text-sm);color:var(--neutral-500);font-weight:var(--font-medium);padding:var(--space-2) var(--space-3);background:var(--neutral-100);border-radius:var(--radius-full)}@media (max-width: 768px){.search-input{font-size:var(--text-sm)}.search-input::placeholder{font-size:var(--text-xs)}.filter-chips{gap:var(--space-1)}.filter-chip{font-size:var(--text-xs);padding:var(--space-1) var(--space-2)}}.page-title-section{margin-bottom:var(--space-8)}.title-with-info{display:flex;align-items:center;gap:var(--space-3);position:relative}.page-title{font-size:var(--text-4xl);font-weight:var(--font-extrabold);color:var(--color-text-primary);margin:0;line-height:1.2}.info-toggle-button{display:flex;align-items:center;justify-content:center;padding:0;background:transparent;border:none;color:var(--ocean-500);cursor:pointer;transition:all .2s ease;outline:none}.info-toggle-button:hover{color:var(--ocean-700);transform:scale(1.1)}.info-toggle-button:focus,.info-toggle-button:active{outline:none;color:var(--ocean-600)}.info-toggle-button:focus-visible{outline:2px solid var(--ocean-400);outline-offset:2px;border-radius:4px}.info-expanded-section{margin-top:var(--space-4);padding:var(--space-4);background:var(--ocean-50);border:1px solid var(--ocean-200);border-radius:var(--radius-lg);animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;max-height:0;transform:translateY(-10px)}to{opacity:1;max-height:200px;transform:translateY(0)}}.info-expanded-section p{margin:0 0 var(--space-3) 0;font-size:var(--text-base);color:var(--neutral-700);line-height:1.6}.info-link{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--ocean-600);font-size:var(--text-sm);font-weight:var(--font-medium);text-decoration:none;transition:color .2s ease}.info-link:hover{color:var(--ocean-700);text-decoration:underline}.page-subtitle{font-size:var(--text-lg);color:var(--color-text-secondary);margin:0;font-weight:var(--font-medium);line-height:1.4}.legislative-pipeline-section{background:var(--color-card);border-radius:var(--radius-base);padding:var(--space-6);margin-bottom:var(--space-6);border:1px solid var(--neutral-200)}.pipeline-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text-primary);margin:0 0 var(--space-4) 0}.bill-stage-pipeline{display:flex;align-items:flex-start;justify-content:space-between;width:100%;padding:var(--space-4) 0;position:relative}.pipeline-stage{display:flex;flex-direction:column;align-items:center;flex:1;position:relative}.stage-node{position:relative;width:72px;height:72px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:all .3s ease;cursor:default;z-index:2;padding:var(--space-2);color:#fff;border:3px solid;box-sizing:border-box}.stage-node.active{transform:scale(1.1);box-shadow:0 4px 8px #104c5833}.stage-label{font-size:12px;font-weight:var(--font-bold);line-height:1.2;text-align:center;white-space:normal;max-width:60px}.stage-count{position:absolute;top:-10px;right:-8px;background:#ffbf47;color:#1f2937;font-size:12px;font-weight:var(--font-bold);padding:3px 6px;border-radius:10px;min-width:20px;text-align:center;box-shadow:0 2px 4px #00000026;border:2px solid white}.stage-info{display:flex;flex-direction:column;align-items:center;margin-top:var(--space-2);text-align:center}.stage-name{font-size:var(--text-xs);color:var(--color-text-secondary);line-height:1.2;max-width:80px}.stage-percentage{font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--ocean-600);margin-top:2px}.stage-connector{position:absolute;top:36px;left:72px;right:-72px;height:3px;background:var(--neutral-200);z-index:1}.stage-connector.active{background:linear-gradient(90deg,var(--ocean-300) 0%,var(--neutral-200) 100%)}.pipeline-stage:last-child .stage-connector{display:none}.stage-node.first_reading{background:var(--ocean-200);border-color:var(--ocean-300)}.stage-node.second_reading{background:var(--ocean-300);border-color:var(--ocean-400)}.stage-node.public_committee{background:var(--ocean-400);border-color:var(--ocean-500)}.stage-node.committee_whole{background:var(--ocean-500);border-color:var(--ocean-600)}.stage-node.third_reading{background:var(--ocean-600);border-color:var(--ocean-700)}.stage-node.royal_assent{background:var(--success);border-color:var(--success)}.stage-node.proclaimed{background:var(--success);border-color:var(--success);opacity:.9}.bill-filter-bar{display:flex;flex-wrap:wrap;gap:.75rem;padding:1rem;border:1px solid #dfe6e9;border-radius:10px;background:#fdfefe;margin:2rem 0;align-items:center;box-shadow:0 2px 4px #00000008}.bill-filter-bar select,.bill-filter-bar input{padding:.5rem .75rem;border:1px solid #ccc;border-radius:8px;font-size:.9rem;min-width:160px;background:#fff;transition:border .2s ease}.bill-filter-bar select:focus,.bill-filter-bar input:focus{outline:none;border-color:#3498db}.bill-filter-bar input[type=text]{flex:1;min-width:180px}.bill-filter-bar .filter-toggle{background:#e1e4e8;border:none;padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-weight:500;transition:background .2s ease}.bill-filter-bar .filter-toggle:hover{background:#d0d4d8}.about-page{background:#d4cabc;min-height:100vh;font-family:Manrope,system-ui,-apple-system,sans-serif}.about-hero-section{position:relative;height:400px;margin:1.5rem 1.5rem 0;border-radius:16px 16px 0 0;overflow:hidden;box-shadow:0 2px 8px #0000000f,0 1px 3px #0000000a}.hero-background-image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center 30%;filter:brightness(.6)}.hero-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;z-index:2}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-fade-in-up{opacity:0;transform:translateY(30px);transition:opacity 1.2s cubic-bezier(.4,0,.2,1),transform 1.2s cubic-bezier(.4,0,.2,1)}.animate-fade-in-up.in-view{opacity:1;transform:translateY(0)}.animate-fade-in-left{opacity:0;transform:translate(-30px);transition:opacity 1.2s cubic-bezier(.4,0,.2,1),transform 1.2s cubic-bezier(.4,0,.2,1)}.animate-fade-in-left.in-view{opacity:1;transform:translate(0)}.animate-fade-in-right{opacity:0;transform:translate(30px);transition:opacity 1.2s cubic-bezier(.4,0,.2,1),transform 1.2s cubic-bezier(.4,0,.2,1)}.animate-fade-in-right.in-view{opacity:1;transform:translate(0)}.animate-fade-in-scale{opacity:0;transform:scale(.95);transition:opacity 1.2s cubic-bezier(.4,0,.2,1),transform 1.2s cubic-bezier(.4,0,.2,1)}.animate-fade-in-scale.in-view{opacity:1;transform:scale(1)}@media (prefers-reduced-motion: reduce){.animate-fade-in-up,.animate-fade-in-left,.animate-fade-in-right,.animate-fade-in-scale{opacity:1;transform:none;transition:none}}.hero-overlay h1{font-size:3rem;font-weight:700;color:#fff;margin-bottom:1.5rem;margin-top:0;letter-spacing:-.02em;font-family:Manrope,system-ui,-apple-system,sans-serif;text-align:center;text-shadow:0 4px 12px rgba(0,0,0,.5);max-width:800px}.hero-subtitle{font-size:1.375rem;font-weight:500;color:#fff;line-height:1.7;margin:0;text-align:center;font-family:Manrope,system-ui,-apple-system,sans-serif;max-width:700px;text-shadow:0 2px 8px rgba(0,0,0,.5)}.about-content-card{background:#faf9f6;border-radius:0;padding:5rem;margin:0 1.5rem;box-shadow:0 2px 8px #0000000f,0 1px 3px #0000000a}.about-content-card:last-child{border-radius:0 0 16px 16px;margin-bottom:1.5rem}.content-wrapper{margin:0 auto;max-width:700px}.content-wrapper p{font-size:1.0625rem;line-height:1.9;color:#2d2d2d;margin-bottom:1.75rem;font-family:Manrope,system-ui,-apple-system,sans-serif}.content-wrapper p:last-of-type{margin-bottom:0}.content-wrapper .closing{font-weight:600;color:#104c58;font-size:1.0625rem;margin-top:3rem;padding-top:2rem;border-top:2px solid rgba(16,76,88,.15);font-family:Manrope,system-ui,-apple-system,sans-serif;text-align:center}.about-content-card:last-child{background:#2d6b78b3}.contact-section{max-width:700px;margin:0 auto}.contact-section h2{font-size:1.875rem;font-weight:700;color:#fff;margin-bottom:1.5rem;letter-spacing:-.02em;font-family:Manrope,system-ui,-apple-system,sans-serif;text-align:center}.contact-description{font-size:1.0625rem;color:#fffffff2;margin-bottom:2rem;line-height:1.9;font-family:Manrope,system-ui,-apple-system,sans-serif;text-align:center}.contact-info{margin-bottom:2rem;text-align:center}.contact-info p{color:#fffffff2;line-height:1.9;margin-bottom:1rem;font-size:1.0625rem;font-family:Manrope,system-ui,-apple-system,sans-serif}.contact-info p:last-child{margin-bottom:0}.contact-info .email-link{color:#104c58;font-weight:700;font-family:Manrope,system-ui,-apple-system,sans-serif;transition:color .2s ease}.contact-info .email-link:hover{color:#0d3e47}.contact-divider{border:none;border-top:1px solid rgba(255,255,255,.3);margin:3rem 0 2rem;max-width:600px;margin-left:auto;margin-right:auto}.thank-you{font-size:1.0625rem;font-weight:500;color:#ffffffe6;margin:0 auto;font-style:italic;font-family:Manrope,system-ui,-apple-system,sans-serif;text-align:center!important;background:none!important;padding:0!important;border-radius:0!important;width:100%;display:block}@media (max-width: 1023px){.about-hero-section{height:350px}.hero-overlay h1{font-size:2.5rem}.hero-subtitle{font-size:1.25rem}.about-content-card{padding:4rem 3rem;margin:0 1.5rem}.about-content-card:last-child{margin-bottom:1.5rem}}@media (max-width: 768px){.about-hero-section{height:300px;margin:1rem 1rem 0;border-radius:12px 12px 0 0}.hero-overlay{padding:5rem 1.5rem 2rem}.hero-overlay h1{font-size:2rem}.hero-subtitle{font-size:1.125rem}.about-content-card{padding:3rem 1.5rem;margin:0 1rem}.about-content-card:last-child{border-radius:0 0 12px 12px;margin-bottom:1rem}.content-wrapper p{font-size:1rem}.contact-section h2{font-size:1.5rem}}@media (max-width: 480px){.about-hero-section{height:250px}.hero-overlay{padding:4.5rem 1rem 1.5rem}.hero-overlay h1{font-size:1.75rem}.hero-subtitle{font-size:1rem}.about-content-card{padding:2.5rem 1rem}}.style-guide-page{max-width:1200px;margin:0 auto}.style-tabs{display:flex;gap:var(--space-2);margin-bottom:var(--space-8);border-bottom:2px solid var(--color-border-light);padding-bottom:var(--space-4)}.style-tab{padding:var(--space-3) var(--space-6);background:none;border:none;font-family:var(--font-primary);font-size:var(--text-base);font-weight:var(--font-medium);color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-base);transition:all .2s ease}.style-tab:hover{background:var(--ocean-50);color:var(--color-primary)}.style-tab.active{background:var(--color-primary);color:var(--neutral-50);font-weight:var(--font-semibold)}.style-content{padding:var(--space-6) 0}.principles-section h2,.colors-section h2,.typography-section h2,.buttons-section h2,.cards-section h2,.inputs-section h2,.spacing-section h2{margin-bottom:var(--space-6);color:var(--color-text-primary)}.principle-group{margin-bottom:var(--space-8)}.principle-group h3{margin-bottom:var(--space-4);color:var(--color-text-primary)}.principle-list{display:flex;flex-direction:column;gap:var(--space-4)}.principle-item{background:var(--color-surface);padding:var(--space-4);border-radius:var(--radius-base);border-left:4px solid var(--color-accent)}.principle-item strong{display:block;font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-text-primary);margin-bottom:var(--space-2)}.principle-item p{margin:0;color:var(--color-text-secondary);line-height:1.5}.colors-section h2,.typography-section h2,.buttons-section h2,.cards-section h2,.inputs-section h2,.spacing-section h2{margin-bottom:var(--space-6);color:var(--color-text-primary)}.color-group{margin-bottom:var(--space-12)}.color-group h3{margin-bottom:var(--space-2);color:var(--color-text-primary)}.color-description{margin-bottom:var(--space-6);color:var(--color-text-secondary);font-style:italic}.color-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4)}.color-card{background:var(--color-background);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-base);border:1px solid var(--color-border-light)}.color-swatch{height:80px;width:100%}.color-info{padding:var(--space-4)}.color-name{font-weight:var(--font-semibold);color:var(--color-text-primary);font-size:var(--text-sm)}.color-hex{font-family:var(--font-mono);color:var(--color-text-secondary);font-size:var(--text-sm);margin:var(--space-1) 0}.color-usage{font-size:var(--text-xs);color:var(--color-text-muted)}.font-family{margin-bottom:var(--space-8)}.font-sample{font-size:var(--text-lg);margin:var(--space-4) 0;color:var(--color-text-primary)}.type-scale{margin-bottom:var(--space-8)}.type-examples{display:flex;flex-direction:column;gap:var(--space-6)}.type-example{padding:var(--space-4);background:var(--color-surface);border-radius:var(--radius-base);border:1px solid var(--color-border-light)}.sample-h1{font-size:var(--text-4xl);font-weight:var(--font-extrabold);margin-bottom:var(--space-2)}.sample-h2{font-size:var(--text-3xl);font-weight:var(--font-bold);margin-bottom:var(--space-2)}.sample-h3{font-size:var(--text-2xl);font-weight:var(--font-semibold);margin-bottom:var(--space-2)}.sample-h4{font-size:var(--text-xl);font-weight:var(--font-semibold);margin-bottom:var(--space-2)}.sample-body{font-size:var(--text-base);font-weight:var(--font-normal);margin-bottom:var(--space-2)}.sample-small{font-size:var(--text-sm);font-weight:var(--font-normal);margin-bottom:var(--space-2)}.font-weights{margin-bottom:var(--space-8)}.weight-examples{display:flex;flex-direction:column;gap:var(--space-2)}.weight-300{font-weight:var(--font-light)}.weight-400{font-weight:var(--font-normal)}.weight-500{font-weight:var(--font-medium)}.weight-600{font-weight:var(--font-semibold)}.weight-700{font-weight:var(--font-bold)}.weight-800{font-weight:var(--font-extrabold)}.button-group{margin-bottom:var(--space-8)}.button-group h3{margin-bottom:var(--space-2)}.button-group p{margin-bottom:var(--space-4);color:var(--color-text-secondary)}.button-examples{display:flex;gap:var(--space-4);flex-wrap:wrap;align-items:center}.btn-large{padding:var(--space-4) var(--space-8);font-size:var(--text-lg)}.btn-small{padding:var(--space-2) var(--space-4);font-size:var(--text-sm)}.card-group{margin-bottom:var(--space-8)}.card-example{max-width:400px}.card-examples-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-6)}.stat-card-clean{background:linear-gradient(135deg,var(--neutral-50) 0%,var(--neutral-100) 100%);border-radius:var(--radius-xl);padding:var(--space-6);display:flex;align-items:center;box-shadow:var(--shadow-md);border:none;transition:all .3s ease}.stat-card-clean:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.dark-bg-demo{background:linear-gradient(135deg,var(--ocean-700) 0%,var(--ocean-800) 100%);padding:var(--space-8);border-radius:var(--radius-lg);display:flex;gap:var(--space-4);flex-wrap:wrap;align-items:center;margin:var(--space-4) 0}.dark-bg-demo.card-demo{justify-content:center}.stat-content{flex:1}.stat-label{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-primary);margin:0 0 var(--space-2) 0;text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:var(--text-3xl);font-weight:var(--font-extrabold);color:var(--color-text-primary);margin:0 0 var(--space-2) 0;line-height:1}.stat-change{font-size:var(--text-xs);font-weight:var(--font-medium);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);display:inline-block}.stat-change.positive{background:#10b9811a;color:var(--success)}.stat-change.neutral{background:#88b1be1a;color:var(--color-secondary-hover)}.interactive-card{cursor:pointer}.interactive-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.input-group{margin-bottom:var(--space-8)}.input-examples{display:flex;flex-direction:column;gap:var(--space-4)}.input-example{max-width:400px}.input-example label{display:block;font-weight:var(--font-medium);color:var(--color-text-primary);margin-bottom:var(--space-2);font-size:var(--text-sm)}.input-base.focused{border-color:var(--color-primary);box-shadow:0 0 0 3px #88b1be1a}.checkbox-example,.radio-examples{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-4)}.checkbox-label,.radio-label{display:flex;align-items:center;cursor:pointer;font-size:var(--text-base);color:var(--color-text-primary)}.checkbox-label input,.radio-label input{margin-right:var(--space-2)}.spacing-examples{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4);margin-bottom:var(--space-8)}.spacing-example{text-align:center}.spacing-demo{background:var(--color-secondary);color:var(--ocean-800);border-radius:var(--radius-base);margin-bottom:var(--space-2);display:flex;align-items:center;justify-content:center;font-weight:var(--font-semibold);min-height:60px}.shadow-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-6)}.shadow-example{background:var(--color-background);border-radius:var(--radius-lg);padding:var(--space-6);text-align:center}.shadow-example p{margin-bottom:var(--space-2);font-weight:var(--font-medium)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-base{box-shadow:var(--shadow-base)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}code{background:var(--neutral-100);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-secondary);display:block;margin-top:var(--space-2)}@media (max-width: 768px){.style-tabs{flex-wrap:wrap}.color-grid,.card-examples-grid{grid-template-columns:1fr}.button-examples{flex-direction:column;align-items:flex-start}.spacing-examples,.shadow-grid{grid-template-columns:1fr}}:root{--deep-ocean: #104C58;--sky-blue: #88B1BE;--cream: #FFFAEE;--mustard-yellow: #FFBF47;--cinnabar-red: #E24628;--neutral-50: #FDFEFE;--neutral-100: #F8FAFB;--neutral-200: #E5E7EB;--neutral-300: #D1D5DB;--neutral-400: #9CA3AF;--neutral-500: #6B7280;--neutral-600: #4B5563;--neutral-700: #374151;--neutral-800: #1F2937;--neutral-900: #111827;--success: #10B981;--error: #EF4444;--warning: #F59E0B}.engagement-cell{width:140px;padding:.75rem .5rem}.engagement-buttons{display:flex;gap:.5rem;justify-content:center}.engagement-btn{background:#fff;border:1px solid var(--neutral-300);color:var(--neutral-600);padding:.3rem .6rem;border-radius:15px;font-size:.85rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.2rem}.engagement-btn:hover{border-color:var(--sky-blue);color:var(--deep-ocean);transform:translateY(-1px)}.engagement-btn.upvote.active{background:var(--success);color:#fff;border-color:var(--success)}.engagement-btn.star.active{background:var(--mustard-yellow);color:var(--deep-ocean);border-color:var(--mustard-yellow)}.engagement-btn.upvote.disabled{background:var(--neutral-100);color:var(--neutral-400);border-color:var(--neutral-200);cursor:not-allowed;opacity:.6}.engagement-btn.upvote.disabled:hover{transform:none;border-color:var(--neutral-200);color:var(--neutral-400)}.engagement-btn.upvote.disabled.active{background:var(--neutral-200);color:var(--neutral-600);border-color:var(--neutral-300)}.foi-page{font-family:Manrope,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;max-width:1200px;margin:0 auto;padding:0}.foi-page-header{width:100%;margin-bottom:1.5rem;padding-top:.5rem}.foi-page-header h1{color:var(--deep-ocean);font-size:2rem;font-weight:700;margin-bottom:0;line-height:1.1}.foi-cards-row{display:flex;gap:2rem;align-items:stretch;margin-bottom:1.5rem}.foi-info-card{flex:1;background-color:#88b1be26;border-radius:12px;padding:1.5rem;display:flex;align-items:center}.foi-subtitle{color:var(--color-text-secondary);font-size:var(--text-base);font-weight:500;margin:0;line-height:1.6;font-style:italic}.foi-subtitle-link{color:var(--deep-ocean);text-decoration:underline;font-weight:600;transition:color .2s ease}.foi-subtitle-link:hover{color:var(--cinnabar-red)}.status-chart-container{flex-shrink:0;width:400px;display:flex;align-items:stretch}.foi-chart-with-legend{display:flex;gap:1rem;background:#fff;border-radius:12px;padding:1.5rem;height:100%;box-shadow:0 2px 4px #104c5814;border:1px solid rgba(136,177,190,.1)}.foi-donut-chart-wrapper{position:relative;flex:1}.foi-donut-center-label{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;pointer-events:none;z-index:10}.foi-total-value{font-size:2rem;font-weight:700;color:var(--deep-ocean);line-height:1;margin-bottom:.125rem}.foi-center-subtitle{font-size:.6875rem;color:var(--sky-blue);font-weight:500;text-transform:uppercase;letter-spacing:.05em;line-height:1.1}.foi-chart-legend{display:flex;flex-direction:column;justify-content:center;gap:.75rem;min-width:120px}.foi-legend-item{display:flex;align-items:center;gap:.5rem;font-size:.75rem}.foi-legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.foi-legend-text{color:var(--neutral-700);font-weight:500;flex:0 1 auto;line-height:1.2;margin-right:.5rem}.foi-legend-count{color:var(--neutral-600);font-weight:600;font-size:.75rem}.foi-table-section{margin-bottom:2rem}.foi-table-section h2{color:var(--deep-ocean);font-size:1.5rem;font-weight:700;margin-bottom:1rem}.foi-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 4px #104c5814;border:1px solid rgba(136,177,190,.1);overflow:hidden}.foi-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.875rem}.foi-table thead th{background:var(--neutral-50);border-bottom:1px solid var(--neutral-200);padding:.75rem .5rem;text-align:left;font-weight:600;color:var(--sky-blue);text-transform:uppercase;letter-spacing:.025em;font-size:.6875rem}.foi-table thead th:first-child{border-top-left-radius:12px}.foi-table thead th:last-child{border-top-right-radius:12px}.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .15s ease}.sortable:hover{background:var(--neutral-100)!important}.header-content{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.sort-icon{opacity:.4;transition:opacity .15s ease;flex-shrink:0;font-size:.875rem;font-weight:600}.sort-active{opacity:1;color:var(--deep-ocean)}.sort-neutral{opacity:.3}.sortable:hover .sort-icon{opacity:.7}.foi-row{border-bottom:1px solid var(--neutral-100);cursor:pointer;transition:all .2s ease}.foi-row.even-row{background:#88b1be14}.foi-row.odd-row{background:#fff}.foi-row:hover{background:#88b1be1a!important}.foi-row.expanded{background:#88b1be26!important}.foi-row td{padding:.75rem .5rem;vertical-align:top;border:none}.foi-row .title-cell{vertical-align:top;padding:.75rem .5rem}.request-number{font-family:SF Mono,Monaco,Cascadia Code,monospace;font-weight:600;color:var(--deep-ocean);white-space:nowrap;min-width:100px}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:50px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.status-voting{background:var(--sky-blue);color:var(--deep-ocean);font-weight:700}.status-in-progress{background:var(--mustard-yellow);color:var(--deep-ocean)}.status-complete{background:var(--success);color:#fff}.status-rejected{background:var(--error);color:#fff}.title-cell{color:var(--deep-ocean);font-weight:500;min-width:200px;max-width:300px;line-height:1.4;width:25%;word-wrap:break-word;overflow-wrap:break-word;white-space:normal;max-height:3.2em;overflow:hidden;text-overflow:ellipsis}.departments-cell{width:15%;max-width:140px}.departments-container{display:flex;flex-wrap:wrap;gap:.5rem}.dept-tag{background:#88b1be26;color:var(--deep-ocean);padding:.25rem .5rem;border-radius:8px;font-size:.75rem;font-weight:500;border:1px solid rgba(136,177,190,.3);white-space:nowrap;max-width:150px;overflow:hidden;text-overflow:ellipsis}.days-remaining{display:inline-block;padding:.25rem .75rem;border-radius:50px;font-size:.75rem;font-weight:600}.days-normal{background:#88b1be26;color:var(--deep-ocean)}.days-warning{background:var(--warning);color:#fff}.days-urgent{background:var(--error);color:#fff}.days-expired{background:var(--neutral-300);color:var(--neutral-600)}.votes-cell{text-align:center;min-width:120px}.vote-summary{display:flex;flex-direction:column;align-items:center;gap:.5rem}.total-votes{font-size:.6875rem;color:var(--neutral-500);font-weight:500;text-transform:uppercase;letter-spacing:.025em}.vote-buttons{display:flex;gap:.25rem;justify-content:center}.vote-btn{background:var(--neutral-100);border:1px solid var(--neutral-200);border-radius:50px;padding:.25rem .5rem;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s ease;color:var(--neutral-600);min-width:40px}.vote-btn:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.vote-btn.upvote.active{background:var(--success);color:#fff;border-color:var(--success)}.vote-btn.downvote.active{background:var(--error);color:#fff;border-color:var(--error)}.foi-details-row{background:var(--neutral-50)}.foi-details{padding:1rem;border-top:1px solid var(--neutral-200)}.detail-section{margin-bottom:1rem}.detail-section:last-child{margin-bottom:0}.detail-section h4{color:var(--deep-ocean);font-size:1rem;font-weight:600;margin-bottom:.5rem}.detail-section p{color:var(--neutral-700);line-height:1.6;margin-bottom:0}.attachments-list{list-style:none;padding:0;margin:0}.attachments-list li{margin-bottom:.5rem}.attachment-link{color:var(--deep-ocean);text-decoration:none;font-weight:500;transition:color .2s ease}.attachment-link:hover{color:var(--sky-blue);text-decoration:underline}.foi-form-section{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 4px #104c5814;border:1px solid rgba(136,177,190,.1)}.foi-form-section h2{color:var(--deep-ocean);font-size:1.5rem;font-weight:700;margin-bottom:1rem}.form-collapsed{display:flex;align-items:center;justify-content:space-between;gap:2rem}.form-header{flex:1}.form-header h2{margin-bottom:.5rem}.form-description{color:var(--sky-blue);font-size:.875rem;margin:0;line-height:1.4}.show-form-btn{background:var(--deep-ocean);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:50px;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:.875rem;white-space:nowrap}.show-form-btn:hover{background:#0d3e47;transform:translateY(-1px);box-shadow:0 4px 8px #104c584d}.form-expanded{animation:expandForm .3s ease-out}.form-header-expanded{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.form-header-expanded h2{margin:0}.collapse-form-btn{background:var(--neutral-200);color:var(--neutral-600);border:none;padding:.5rem 1rem;border-radius:50px;font-weight:500;cursor:pointer;transition:all .2s ease;font-size:.75rem}.collapse-form-btn:hover{background:var(--neutral-300);color:var(--neutral-700)}@keyframes expandForm{0%{opacity:0;transform:translateY(-10px);max-height:0}to{opacity:1;transform:translateY(0);max-height:1000px}}.auth-required-compact{display:flex;align-items:center;gap:1rem}.auth-required-compact p{margin:0;color:var(--neutral-600);font-size:.875rem}.auth-required{text-align:center;padding:2rem 1rem;color:var(--neutral-600)}.auth-required p{font-size:1rem;margin-bottom:1rem}.auth-cta{background:var(--mustard-yellow);color:var(--deep-ocean);border:none;padding:.75rem 2rem;border-radius:50px;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:1rem}.auth-cta:hover{background:#e6ac3a;transform:translateY(-1px);box-shadow:0 4px 8px #ffbf474d}.foi-form{max-width:800px}.foi-info-section{margin-top:1rem}.foi-info-link{display:flex;align-items:center;gap:.5rem;color:var(--deep-ocean);text-decoration:none;font-weight:500;transition:color .2s ease;font-size:.875rem}.foi-info-link:hover{color:var(--sky-blue)}.foi-info-circle{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:var(--sky-blue);color:#fff;border-radius:50%;transition:all .2s ease;box-shadow:0 2px 4px #88b1be4d;flex-shrink:0}.foi-info-link:hover .foi-info-circle{background:var(--deep-ocean);transform:translateY(-1px);box-shadow:0 4px 8px #88b1be66}.question-mark{font-size:14px;font-weight:700;line-height:1}.foi-disclaimer{background:#88b1be1a;border:1px solid rgba(136,177,190,.2);border-radius:8px;padding:1rem;margin-bottom:1.5rem;font-size:.875rem;line-height:1.5}.disclaimer-warning{background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);border-radius:8px;padding:1rem;margin-bottom:1.5rem;color:var(--deep-ocean);font-size:.875rem;line-height:1.5}.disclaimer-warning strong{color:var(--warning);font-weight:700}.field-help{background:var(--neutral-50);border:1px solid var(--neutral-200);border-radius:6px;padding:.75rem;margin-top:.5rem;font-size:.8125rem;color:var(--neutral-600);line-height:1.4}.field-help strong{color:var(--deep-ocean);font-weight:600}.form-group label{display:block;color:var(--deep-ocean);font-weight:600;margin-bottom:.5rem;font-size:.875rem}.form-group input,.form-group textarea{width:100%;padding:.5rem;border:2px solid var(--neutral-200);border-radius:8px;background:var(--neutral-50);color:var(--neutral-800);font-size:.875rem;font-family:inherit;transition:border-color .2s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--sky-blue);box-shadow:0 0 0 3px #88b1be1a}.form-group textarea{resize:vertical;min-height:100px}.checkbox-group{margin:2rem 0}.checkbox-spaced{margin-top:2.5rem;margin-bottom:2.5rem}.checkbox-label{display:flex;align-items:flex-start;gap:1.5rem;cursor:pointer;font-weight:500;line-height:1.5}.checkbox-label input[type=checkbox]{width:auto;margin:0;margin-right:.5rem;accent-color:var(--deep-ocean)}.checkbox-label .checkmark{margin-right:.5rem}.form-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:2rem}.submit-btn{background:var(--deep-ocean);color:#fff;border:none;padding:.75rem 2rem;border-radius:50px;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:1rem}.submit-btn:hover:not(:disabled){background:#0d3e47;transform:translateY(-1px);box-shadow:0 4px 8px #104c584d}.submit-btn:disabled{background:var(--neutral-300);cursor:not-allowed;transform:none;box-shadow:none}.info-link{display:flex;align-items:center;gap:.5rem;color:var(--sky-blue);text-decoration:none;font-weight:500;transition:color .2s ease;font-size:.875rem}.info-link:hover{color:var(--deep-ocean);text-decoration:underline}.info-icon{font-size:1rem}@media (max-width: 1024px){.foi-page{padding:0 1rem}.foi-table-container{overflow-x:auto}.foi-table{min-width:900px}.title-cell{min-width:180px;max-width:250px;width:22%}.departments-cell{width:15%;max-width:130px}}@media (max-width: 768px){.foi-cards-row{flex-direction:column;gap:1rem}.status-chart-container{width:100%;max-width:400px;align-self:center}.foi-chart-with-legend{flex-direction:column;gap:1rem}.foi-chart-legend{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:1rem;min-width:auto}.foi-page-header h1{font-size:2rem}.foi-subtitle{font-size:1rem}.foi-table-section h2,.foi-form-section h2{font-size:1.5rem}.foi-form-section{padding:1.5rem}.form-collapsed{flex-direction:column;align-items:flex-start;gap:1rem}.auth-required-compact{flex-direction:column;align-items:flex-start;gap:.5rem}.form-actions{flex-direction:column;align-items:stretch}.info-link{justify-content:center}}@media (max-width: 480px){.foi-page{padding:0 .5rem}.foi-header{margin-bottom:1.5rem}.foi-page-header h1{font-size:1.75rem}.foi-subtitle{font-size:.9rem}.foi-form-section{border-radius:8px;padding:1rem}.vote-buttons{flex-direction:column;gap:.125rem}.dept-tag{font-size:.6875rem;max-width:120px}}@media print{.foi-page{background:#fff}.vote-buttons,.foi-form-section{display:none}.foi-table-container{box-shadow:none;border:1px solid var(--neutral-300)}}.privacy-policy-page{min-height:100vh;display:flex;flex-direction:column;background-color:#f5f5f5}.privacy-policy-page .content-container{flex:1;width:100%;max-width:800px;margin:0 auto;padding:2rem 1rem;position:relative}.back-button{position:fixed;top:2rem;left:2rem;background:#fff;border:1px solid #ccc;color:#333;padding:.5rem 1.25rem;border-radius:4px;font-weight:400;cursor:pointer;transition:all .2s ease;font-size:.9rem;display:flex;align-items:center;gap:.5rem;z-index:10;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;box-shadow:0 2px 4px #0000001a}.back-button:hover{background-color:#f5f5f5;transform:translate(-2px);box-shadow:0 2px 6px #00000026}.policy-container{background:#fff;border-radius:0;padding:4rem 5rem;box-shadow:0 2px 4px #0000001a;margin-top:3rem;max-width:8.5in;margin-left:auto;margin-right:auto;font-family:Georgia,serif;line-height:1.8;color:#333}.policy-container h1{color:#000;font-size:2rem;margin-bottom:.5rem;font-family:Georgia,serif;font-weight:400;text-align:center;border-bottom:2px solid #000;padding-bottom:1rem}.policy-container .last-updated{color:#666;margin-bottom:2rem;text-align:center;font-style:italic;font-size:.9rem}.policy-container section{margin-bottom:2rem}.policy-container h2{color:#000;font-size:1.5rem;margin-top:2.5rem;margin-bottom:1rem;font-family:Georgia,serif;font-weight:700}.policy-container h3{color:var(--medium-blue);font-size:1.25rem;margin-top:1.5rem;margin-bottom:.75rem}.policy-container p{color:#333;line-height:1.8;margin-bottom:1.2rem;text-align:justify;font-size:1rem}.policy-container ul{margin-left:2rem;margin-bottom:1rem}.policy-container li{color:#333;line-height:1.8;margin-bottom:.5rem;margin-left:.5rem}.policy-container a{color:#06c;text-decoration:underline;transition:color .3s ease}.policy-container a:hover{color:#0052a3;text-decoration:underline}.policy-container strong{color:#000;font-weight:700}@media (max-width: 768px){.policy-container{padding:2rem 1.5rem}.policy-container h1{font-size:2rem}.policy-container h2{font-size:1.5rem}}.terms-of-service-page{min-height:100vh;display:flex;flex-direction:column;background-color:#f5f5f5}.terms-of-service-page .content-container{flex:1;width:100%;max-width:800px;margin:0 auto;padding:2rem 1rem;position:relative}.terms-of-service-page .back-button{position:fixed;top:2rem;left:2rem;background:#fff;border:1px solid #ccc;color:#333;padding:.5rem 1.25rem;border-radius:4px;font-weight:400;cursor:pointer;transition:all .2s ease;font-size:.9rem;display:flex;align-items:center;gap:.5rem;z-index:10;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;box-shadow:0 2px 4px #0000001a}.terms-of-service-page .back-button:hover{background-color:#f5f5f5;transform:translate(-2px);box-shadow:0 2px 6px #00000026}.terms-of-service-page .policy-container{background:#fff;border-radius:0;padding:4rem 5rem;box-shadow:0 2px 4px #0000001a;margin-top:3rem;max-width:8.5in;margin-left:auto;margin-right:auto;font-family:Georgia,serif;line-height:1.8;color:#333}.terms-of-service-page .policy-container h1{color:#000;font-size:2rem;margin-bottom:.5rem;font-family:Georgia,serif;font-weight:400;text-align:center;border-bottom:2px solid #000;padding-bottom:1rem}.terms-of-service-page .policy-container .last-updated{color:#666;margin-bottom:2rem;text-align:center;font-style:italic;font-size:.9rem}.terms-of-service-page .policy-container section{margin-bottom:2rem}.terms-of-service-page .policy-container h2{color:#000;font-size:1.5rem;margin-top:2.5rem;margin-bottom:1rem;font-family:Georgia,serif;font-weight:700}.terms-of-service-page .policy-container p{color:#333;line-height:1.8;margin-bottom:1.2rem;text-align:justify;font-size:1rem}.terms-of-service-page .policy-container ul{margin-left:2rem;margin-bottom:1rem}.terms-of-service-page .policy-container li{color:#333;line-height:1.8;margin-bottom:.5rem;margin-left:.5rem}.terms-of-service-page .policy-container a{color:#06c;text-decoration:underline;transition:color .3s ease}.terms-of-service-page .policy-container a:hover{color:#0052a3;text-decoration:underline}.terms-of-service-page .policy-container strong{color:#000;font-weight:700}@media (max-width: 768px){.terms-of-service-page .policy-container{padding:2rem}.terms-of-service-page .policy-container h1{font-size:2rem}.terms-of-service-page .policy-container h2{font-size:1.5rem}}.my-account-page{padding:2rem;max-width:800px;margin:0 auto}.account-header{margin-bottom:3rem}.account-header h1{color:var(--deep-ocean);font-size:2.5rem;margin-bottom:.5rem;font-weight:700}.account-subtitle{color:var(--text-secondary);font-size:1.125rem}.account-sections{display:flex;flex-direction:column;gap:2rem}.account-section{background:#fff;border-radius:20px;padding:2rem;box-shadow:0 4px 24px #104c5814;border:1px solid rgba(136,177,190,.1)}.account-section h2{color:var(--deep-ocean);font-size:1.5rem;margin-bottom:1.5rem;font-weight:600}.section-content{color:var(--text-secondary)}.profile-info{display:flex;flex-direction:column;gap:1rem}.info-row{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid var(--ice-blue)}.info-row:last-child{border-bottom:none}.info-label{color:var(--medium-blue);font-weight:500}.info-value{color:var(--deep-ocean);font-weight:600}.preference-list{display:flex;flex-direction:column;gap:1rem}.preference-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem;border-radius:12px;cursor:pointer;transition:background-color .2s ease}.preference-item:hover{background-color:var(--ice-blue)}.preference-item input[type=checkbox]{width:20px;height:20px;margin-top:2px;cursor:pointer;accent-color:var(--sky-blue)}.preference-details{display:flex;flex-direction:column;gap:.25rem;flex:1}.preference-label{color:var(--deep-ocean);font-weight:600;font-size:1rem}.preference-description{color:var(--text-secondary);font-size:.875rem;line-height:1.4}.billing-info{padding:1rem 0}.billing-status{color:var(--text-secondary);margin-bottom:.5rem}.billing-status strong{color:var(--deep-ocean)}.billing-note{color:var(--medium-blue);font-style:italic;font-size:.875rem}.legal-links{display:flex;flex-direction:column;gap:.5rem}.legal-link{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-radius:12px;text-decoration:none;color:var(--deep-ocean);font-weight:500;transition:all .2s ease;border:1px solid transparent}.legal-link:hover{background-color:var(--ice-blue);border-color:var(--sky-blue)}.link-arrow{color:var(--medium-blue);font-size:1.25rem}.danger-section{border:1px solid rgba(239,68,68,.2)}.action-buttons{display:flex;gap:1rem;flex-wrap:wrap}.btn-danger{background-color:#ef4444;color:#fff}.btn-danger:hover{background-color:#dc2626}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#104c5880;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:#fff;border-radius:20px;padding:2rem;max-width:400px;width:90%;box-shadow:0 20px 40px #104c584d}.modal-content h3{color:var(--deep-ocean);margin-bottom:1rem;font-size:1.5rem}.modal-content p{color:var(--text-secondary);margin-bottom:1.5rem;line-height:1.5}.modal-actions{display:flex;gap:1rem;justify-content:flex-end}.btn-base{padding:.75rem 1.5rem;border-radius:9999px;border:none;font-weight:600;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:.5rem;font-size:1rem}.btn-primary{background-color:var(--deep-ocean);color:#fff}.btn-primary:hover{background-color:var(--ocean-700);transform:translateY(-1px);box-shadow:0 4px 12px #104c584d}.btn-secondary{background-color:transparent;color:var(--deep-ocean);border:2px solid var(--sky-blue)}.btn-secondary:hover{background-color:var(--ice-blue);border-color:var(--deep-ocean)}@media (max-width: 768px){.my-account-page{padding:1rem}.account-header h1{font-size:2rem}.account-section{padding:1.5rem}.info-row{flex-direction:column;gap:.25rem;align-items:flex-start}.action-buttons{flex-direction:column}.action-buttons button{width:100%}}.subscribe-page{min-height:100vh;background:#d4cabc;display:flex;align-items:center;justify-content:center;padding:2rem 1rem;font-family:var(--font-primary, "Manrope", system-ui, sans-serif)}.subscribe-container{max-width:600px;width:100%;text-align:center}.subscribe-content{background:#faf9f6;border-radius:16px;padding:3rem 2rem;box-shadow:0 2px 8px #0000000f,0 1px 3px #0000000a;border:none}.subscribe-logo{margin-bottom:2rem}.logo-image{height:80px;width:auto}.subscribe-title{font-size:3rem;font-weight:700;color:var(--ocean-600, #104C58);margin:0 0 1.5rem;line-height:1.2;letter-spacing:-.02em}.subscribe-tagline{font-size:1.5rem;font-weight:600;color:var(--ocean-600, #104C58);margin:0 0 1rem;line-height:1.4}.subscribe-subtext{font-size:1.1rem;color:var(--ocean-500, #37646E);margin:0 0 2.5rem;line-height:1.6}.subscribe-form{display:flex;gap:.75rem;max-width:400px;margin:0 auto 1.5rem;flex-direction:column}.subscribe-input{flex:1;border:2px solid var(--neutral-200, #E5E7EB);font-size:1rem;padding:.875rem 1.25rem;background:#fff;color:var(--ocean-600, #104C58);outline:none;border-radius:9999px;font-family:inherit;transition:border-color .3s ease,box-shadow .3s ease;box-shadow:0 1px 3px #0000001a}.subscribe-input:focus{border-color:var(--ocean-300, #88B1BE);box-shadow:0 1px 3px #0000001a,0 0 0 3px #88b1be26}.subscribe-input::placeholder{color:var(--neutral-500, #6B7280)}.subscribe-button{background:linear-gradient(135deg,var(--ocean-600, #104C58) 0%,var(--ocean-700, #0D3E47) 100%);color:#fff;padding:.875rem 2rem;border:none;border-radius:9999px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 6px #00000012,0 2px 4px #0000000f;white-space:nowrap;font-family:inherit;min-height:52px}.subscribe-button:hover{background:linear-gradient(135deg,var(--ocean-700, #0D3E47) 0%,var(--ocean-800, #0A3036) 100%);transform:translateY(-2px);box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d}.subscribe-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.subscribe-success{background:var(--success-50, #ECFDF5);border:1px solid var(--success-200, #A7F3D0);padding:1rem 2rem;border-radius:12px;margin:0 auto 1.5rem;max-width:300px}.subscribe-success p{color:var(--success-700, #047857);font-weight:600;margin:0;font-size:1rem}.subscribe-error{background:#dc26261a;border:1px solid rgba(220,38,38,.3);padding:1rem 2rem;border-radius:12px;margin:0 auto 1.5rem;max-width:400px}.subscribe-error p{color:#dc2626;font-weight:500;margin:0;font-size:.95rem;line-height:1.4}.subscribe-note{font-size:.875rem;color:var(--neutral-600, #4B5563);margin:0 0 1.5rem}.back-to-home-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--ocean-600, #104C58);text-decoration:none;font-weight:600;font-size:.95rem;transition:all .2s ease;padding:.5rem 1rem;border-radius:9999px;background:#88b1be26}.back-to-home-link:hover{background:#88b1be40;color:var(--ocean-700, #0D3E47);transform:translate(-2px)}@media (max-width: 768px){.subscribe-content{padding:2rem 1.5rem}.subscribe-title{font-size:2.5rem}.subscribe-tagline{font-size:1.25rem}.subscribe-subtext{font-size:1rem}.logo-image{height:60px}}@media (max-width: 480px){.subscribe-form{gap:1rem}.subscribe-title{font-size:2rem}.subscribe-content{padding:1.5rem 1rem}}.qr-hub-page{min-height:100vh;background:#d4cabc;display:flex;align-items:center;justify-content:center;padding:2rem 1rem;font-family:var(--font-primary, "Manrope", system-ui, sans-serif)}.qr-hub-container{max-width:500px;width:100%;text-align:center}.qr-hub-content{background:#faf9f6;border-radius:16px;padding:1rem 2rem 1.5rem;box-shadow:0 2px 8px #0000000f,0 1px 3px #0000000a;border:none}.qr-hub-logo{margin-bottom:.25rem}.qr-hub-logo .logo-image{height:140px;width:auto}.qr-hub-title{font-size:2rem;font-weight:700;color:var(--ocean-600, #104C58);margin:0 0 1rem;line-height:1.2;letter-spacing:-.02em}.qr-hub-subtext{font-size:1.1rem;color:var(--ocean-500, #37646E);margin:0 0 2rem;line-height:1.6}.qr-hub-actions{display:flex;flex-direction:column;gap:1rem;max-width:320px;margin:0 auto}.qr-hub-button{display:block;padding:1rem 1.5rem;border-radius:9999px;font-size:1rem;font-weight:600;text-decoration:none;text-align:center;cursor:pointer;transition:all .3s ease;font-family:inherit;border:none}.qr-hub-button-primary{background:var(--ocean-300, #88B1BE);color:#fff;box-shadow:0 4px 6px #00000012,0 2px 4px #0000000f}.qr-hub-button-primary:hover{background:var(--ocean-400, #6A9BAA);transform:translateY(-2px);box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d}.qr-hub-button-secondary{background:#88b1be33;color:var(--ocean-600, #104C58);border:2px solid var(--ocean-300, #88B1BE)}.qr-hub-button-secondary:hover{background:#88b1be59;transform:translateY(-2px);box-shadow:0 4px 6px #0000000d}.qr-hub-newsletter{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--neutral-200, #E5E7EB)}.qr-hub-newsletter-label{font-size:.95rem;color:var(--ocean-500, #37646E);margin:0 0 1rem;font-weight:500}.qr-hub-newsletter-wrapper{display:flex;justify-content:center;align-items:center}.qr-hub-newsletter-input-wrapper{display:flex;align-items:center;width:fit-content;height:38px;border-radius:18px;padding:4px;box-sizing:content-box;background:#fff;border:2px solid var(--neutral-200, #E5E7EB);box-shadow:0 2px 8px #00000014}.qr-hub-newsletter-icon{width:24px;height:24px;color:var(--ocean-600, #104C58);margin-left:6px;transition:all .3s;flex-shrink:0}.qr-hub-newsletter-input{max-width:150px;height:100%;border:none;outline:none;box-shadow:none;background:transparent;padding-left:12px;color:var(--ocean-600, #104C58);font-size:.9em;font-family:Manrope,system-ui,-apple-system,sans-serif}.qr-hub-newsletter-input::placeholder{color:#718096}.qr-hub-newsletter-subscribe-btn{height:100%;width:95px;border:none;border-radius:14px;color:#fff;background:linear-gradient(135deg,var(--ocean-600, #104C58) 0%,var(--ocean-700, #0D3E47) 100%);font-size:.9em;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s;font-family:Manrope,system-ui,-apple-system,sans-serif}.qr-hub-newsletter-subscribe-btn:hover{background:linear-gradient(135deg,#f5c660,#e5a84b);transform:translateY(-1px)}.qr-hub-newsletter-subscribe-btn:active{transform:scale(.95)}.qr-hub-newsletter-subscribe-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.qr-hub-success-message{color:var(--success-700, #047857);font-weight:600;margin:0;font-size:.95rem}.qr-hub-error-message{color:#dc2626;font-weight:500;margin:.75rem 0 0;font-size:.85rem}@media (max-width: 768px){.qr-hub-content{padding:2rem 1.5rem}.qr-hub-title{font-size:1.75rem}.qr-hub-subtext{font-size:1rem}.qr-hub-logo .logo-image{height:100px}}@media (max-width: 480px){.qr-hub-page{padding:1rem}.qr-hub-content{padding:1.5rem 1rem}.qr-hub-title{font-size:1.5rem}.qr-hub-button{padding:.875rem 1.25rem;font-size:.95rem}.qr-hub-actions{gap:.75rem}.qr-hub-newsletter-input-wrapper{width:100%;max-width:280px;height:36px;border-radius:16px}.qr-hub-newsletter-icon{width:20px;height:20px;margin-left:5px}.qr-hub-newsletter-input{flex:1;min-width:0;max-width:none;font-size:.85em;padding-left:10px}.qr-hub-newsletter-subscribe-btn{width:80px;font-size:.8em;border-radius:12px}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:12px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #00000026}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:2px solid #E5E5E5}.modal-header h2{margin:0;font-size:1.5rem;color:#104c58}.modal-close{background:none;border:none;font-size:2rem;color:#666;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:color .2s}.modal-close:hover{color:#104c58}.manual-event-form{padding:1.5rem}.form-section{margin-bottom:2rem}.form-section h3{font-size:1.1rem;color:#104c58;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:2px solid #E5E5E5}.form-group{margin-bottom:1rem}.form-group label{display:block;font-weight:600;color:#333;margin-bottom:.5rem;font-size:.9rem}.form-group input[type=text],.form-group input[type=url],.form-group input[type=datetime-local],.form-group select,.form-group textarea{width:100%;padding:.75rem;border:2px solid #E5E5E5;border-radius:8px;font-size:1rem;font-family:inherit;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#104c58}.form-group textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.checkbox-group{display:flex;align-items:center}.checkbox-group label{display:flex;align-items:center;gap:.5rem;margin:0;cursor:pointer}.checkbox-group input[type=checkbox]{width:20px;height:20px;cursor:pointer}.add-source-btn{margin-top:.5rem;padding:.5rem 1rem;background:#f0f7f9;border:2px solid #88B1BE;border-radius:8px;color:#104c58;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.add-source-btn:hover{background:#88b1be;color:#fff}.new-source-form{margin-top:1rem;padding:1rem;background:#f0f7f9;border-radius:8px;display:flex;flex-direction:column;gap:.75rem}.new-source-form input{padding:.75rem;border:2px solid #88B1BE;border-radius:8px;font-size:.9rem}.new-source-form button{padding:.75rem;background:#104c58;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:background .2s}.new-source-form button:hover{background:#0d3d47}.error-message{padding:1rem;background:#fee2e2;border:2px solid #DC2626;border-radius:8px;color:#dc2626;margin-bottom:1rem;font-weight:600}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:1.5rem;border-top:2px solid #E5E5E5;margin-top:1.5rem}.modal-actions button{padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;border:2px solid #E5E5E5;background:#fff;color:#666}.modal-actions button:hover{border-color:#104c58;color:#104c58}.modal-actions button.primary-btn{background:#104c58;border-color:#104c58;color:#fff}.modal-actions button.primary-btn:hover{background:#0d3d47;border-color:#0d3d47}.modal-actions button:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 640px){.modal-content{max-height:95vh}.form-row{grid-template-columns:1fr}.modal-actions{flex-direction:column}.modal-actions button{width:100%}}.admin-login{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#104c58,#88b1be);padding:2rem}.login-card{background:#fff;border-radius:16px;padding:3rem;max-width:400px;width:100%;box-shadow:0 8px 32px #0000001a}.login-card h1{color:#104c58;margin-bottom:.5rem}.login-card p{color:#666;margin-bottom:2rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-weight:600;margin-bottom:.5rem;color:#104c58}.form-group input{width:100%;padding:.75rem;border:2px solid #E5E5E5;border-radius:8px;font-size:1rem;transition:border-color .2s}.form-group input:focus{outline:none;border-color:#88b1be}.btn-primary{width:100%;padding:.75rem;background:#104c58;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.btn-primary:hover{background:#0d3d47}.hint{margin-top:1rem;font-size:.875rem;color:#999;text-align:center}.admin-civic-events{max-width:1200px;margin:0 auto;padding:2rem}.admin-header{margin-bottom:2rem}.header-top{display:flex;justify-content:space-between;align-items:start;margin-bottom:1.5rem}.header-content h1{color:#104c58;margin-bottom:.5rem}.header-content p{color:#666}.header-actions{display:flex;gap:1rem;align-items:center}.add-event-button{padding:.75rem 1.5rem;background:#104c58;border:2px solid #104C58;border-radius:24px;color:#fff;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s;white-space:nowrap}.add-event-button:hover{background:#0d3d47;border-color:#0d3d47;transform:translateY(-2px);box-shadow:0 4px 12px #104c5833}.back-button{padding:.75rem 1.5rem;background:#fff;border:2px solid #E5E5E5;border-radius:24px;color:#104c58;text-decoration:none;font-weight:600;font-size:.875rem;transition:all .2s;white-space:nowrap}.back-button:hover{background:#104c58;color:#fff;border-color:#104c58}.stats-bar{display:flex;gap:1rem;margin-top:1.5rem}.stat{flex:1;background:#fff;border:2px solid #E5E5E5;border-radius:12px;padding:1rem;text-align:center}.stat.clickable{cursor:pointer;transition:all .2s}.stat.clickable:hover{transform:translateY(-2px);box-shadow:0 4px 12px #104c5826;border-color:#104c58}.stat.clickable.active{background:#d6eaf0;border-color:#88b1be}.stat.clickable.active .stat-label{color:#104c58}.stat.clickable.active .stat-value{color:#104c58!important}.stat-label{display:block;font-size:.875rem;color:#666;margin-bottom:.5rem}.stat-value{display:block;font-size:2rem;font-weight:700}.stat-value.all{color:#104c58}.stat-value.pending{color:#f59e0b}.stat-value.approved{color:#10b981}.stat-value.rejected{color:#ef4444}.filters-container{display:flex;justify-content:space-between;align-items:center;gap:2rem;margin-bottom:1rem;flex-wrap:wrap}.filters{display:flex;gap:.5rem;flex-wrap:wrap}.sort-controls{display:flex;gap:.5rem;align-items:center}.sort-label{font-weight:600;color:#666;font-size:.9rem}.sort-btn{padding:.5rem 1rem;background:#fff;border:2px solid #E5E5E5;border-radius:8px;font-size:.875rem;font-weight:600;color:#666;cursor:pointer;transition:all .2s}.sort-btn:hover{border-color:#88b1be;background:#f0f7f8}.sort-btn.active{background:#104c58;color:#fff;border-color:#104c58}.filter-btn{padding:.75rem 1.5rem;background:#fff;border:2px solid #E5E5E5;border-radius:24px;font-size:.875rem;font-weight:600;color:#666;cursor:pointer;transition:all .2s}.filter-btn:hover{border-color:#88b1be;color:#104c58}.filter-btn.active{background:#104c58;border-color:#104c58;color:#fff}.date-filters-container{display:flex;align-items:center;gap:1rem;margin-bottom:2rem;padding:1rem;background:#fff;border:2px solid #E5E5E5;border-radius:12px;flex-wrap:wrap}.date-filter-group{display:flex;align-items:center;gap:.5rem}.date-filter-label{font-size:.875rem;font-weight:600;color:#104c58;white-space:nowrap}.date-filter-input{padding:.5rem .75rem;border:2px solid #E5E5E5;border-radius:8px;font-size:.875rem;color:#104c58;transition:border-color .2s;background:#fff;cursor:pointer}.date-filter-input:focus{outline:none;border-color:#88b1be}.date-filter-input:hover{border-color:#88b1be}.upcoming-filter-btn{padding:.5rem 1.25rem;background:#fff;border:2px solid #E5E5E5;border-radius:24px;font-size:.875rem;font-weight:600;color:#666;cursor:pointer;transition:all .2s;white-space:nowrap}.upcoming-filter-btn:hover{border-color:#88b1be;color:#104c58}.upcoming-filter-btn.active{background:#10b981;border-color:#10b981;color:#fff}.clear-filters-btn{padding:.5rem 1rem;background:#fee2e2;border:2px solid #EF4444;border-radius:8px;font-size:.875rem;font-weight:600;color:#dc2626;cursor:pointer;transition:all .2s;white-space:nowrap}.clear-filters-btn:hover{background:#ef4444;color:#fff}.events-list{display:flex;flex-direction:column;gap:1rem}.event-card{background:#fff;border:2px solid #E5E5E5;border-radius:12px;padding:1.5rem;transition:all .2s}.event-card:hover{border-color:#88b1be;box-shadow:0 4px 12px #0000000d}.event-card.status-pending{border-left:4px solid #F59E0B}.event-card.status-approved{border-left:4px solid #10B981}.event-card.status-rejected{border-left:4px solid #EF4444;opacity:.7}.event-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:1rem}.event-header h3{color:#104c58;margin:0 0 .5rem;font-size:1.25rem}.event-meta{display:flex;gap:1rem;flex-wrap:wrap;font-size:.875rem;color:#666}.event-type{text-transform:capitalize;background:#f3f4f6;padding:.25rem .75rem;border-radius:12px;font-weight:600}.status-badge{padding:.5rem 1rem;border-radius:16px;font-size:.75rem;font-weight:700;text-transform:uppercase;white-space:nowrap}.status-badge.pending{background:#fef3c7;color:#92400e}.status-badge.approved{background:#d1fae5;color:#065f46}.status-badge.rejected{background:#fee2e2;color:#991b1b}.event-description{color:#374151;margin-bottom:1rem;line-height:1.6}.ai-summary{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-left:4px solid #3B82F6;border-radius:8px;padding:1rem;margin-bottom:1rem}.ai-summary strong{color:#1e40af;display:block;margin-bottom:.5rem;font-size:.875rem}.ai-summary p{color:#1e3a8a;line-height:1.6;margin:0}.btn-generate-summary{padding:.75rem 1.5rem;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;margin-bottom:1rem;display:inline-flex;align-items:center;gap:.5rem}.btn-generate-summary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #3b82f64d}.btn-generate-summary:active{transform:translateY(0)}.event-details{background:#f9fafb;border-radius:8px;padding:1rem;margin-bottom:1rem}.detail{margin-bottom:.75rem;font-size:.875rem;line-height:1.5}.detail:last-child{margin-bottom:0}.detail strong{color:#104c58;margin-right:.5rem}.detail a{color:#88b1be;text-decoration:none}.detail a:hover{text-decoration:underline}.detail.participation{background:#f0f9ff;border-left:3px solid #3B82F6;margin:.75rem -1rem;padding:.75rem .75rem .75rem 1rem;border-radius:4px}.detail-links{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:.75rem;padding-top:.75rem;border-top:1px solid #E5E7EB}.detail-link{padding:.5rem 1rem;background:#fff;border:1px solid #D1D5DB;border-radius:6px;font-size:.875rem;color:#104c58;text-decoration:none;font-weight:500;transition:all .2s}.detail-link:hover{background:#104c58;color:#fff;border-color:#104c58}.source-info{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #E5E7EB;color:#6b7280;font-size:.8125rem}.auto-approve-badge{background:#d1fae5;color:#065f46;padding:.125rem .5rem;border-radius:8px;font-size:.75rem;margin-left:.5rem;font-weight:600}.detail.cancelled{color:#dc2626;font-weight:700}.review-info{background:#f3f4f6;border-radius:8px;padding:.75rem;font-size:.875rem;color:#666;margin-bottom:1rem}.review-notes{margin-top:.5rem;color:#374151;font-style:italic}.event-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:1.5rem;padding-top:1rem;border-top:1px solid #E5E7EB}.event-actions button{padding:.375rem .75rem;border:none;border-radius:6px;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:.25rem;box-shadow:0 1px 2px #104c5814}.btn-approve{background:#10b981;color:#fff}.btn-approve:hover{background:#059669;transform:translateY(-1px);box-shadow:0 4px 8px #104c581f}.btn-reject{background:#ef4444;color:#fff}.btn-reject:hover{background:#dc2626;transform:translateY(-1px);box-shadow:0 4px 8px #104c581f}.btn-reset{background:#f59e0b;color:#fff}.btn-reset:hover{background:#d97706;transform:translateY(-1px);box-shadow:0 4px 8px #104c581f}.btn-edit{background:#88b1be;color:#fff}.btn-edit:hover{background:#6b96a3;transform:translateY(-1px);box-shadow:0 4px 8px #88b1be4d}.loading,.no-events{text-align:center;padding:3rem;color:#666;font-size:1.125rem}@media (max-width: 768px){.admin-civic-events{padding:1rem}.stats-bar{flex-direction:column}.event-header{flex-direction:column;gap:.5rem}.status-badge{align-self:flex-start}.filters-container,.date-filters-container{flex-direction:column;align-items:stretch}.date-filter-group{width:100%}.date-filter-input{flex:1}.upcoming-filter-btn,.clear-filters-btn{width:100%}}.ai-summary-section{margin:1rem 0;padding:1rem;border-radius:8px;border:2px solid #E5E5E5;background:#fafafa}.ai-summary-section.pending{border-color:#f59e0b;background:#fef3c7}.ai-summary-section.approved{border-color:#10b981;background:#d1fae5}.ai-summary-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.ai-summary-header strong{color:#104c58}.summary-status{font-size:.875rem;padding:.25rem .75rem;border-radius:12px;font-weight:600}.summary-status.pending{background:#f59e0b;color:#fff}.summary-status.approved{background:#10b981;color:#fff}.btn-approve-summary,.btn-reject-summary{padding:.625rem 1rem;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.btn-approve-summary{background:#10b981;color:#fff}.btn-approve-summary:hover{background:#059669;transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.btn-reject-summary{background:#ef4444;color:#fff}.btn-reject-summary:hover{background:#dc2626;transform:translateY(-1px);box-shadow:0 4px 12px #ef44444d}.stat-value.warning{color:#f59e0b}
