@import"https://fonts.googleapis.com/css2?family=Oswald:wght@400;500;600;700&display=swap";body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--app-font-scale: 1}html{font-size:calc(16px * var(--app-font-scale))}.App{min-height:100vh;display:flex;flex-direction:column}.app-main{flex:1;background-color:#f8f9fa;padding:0;margin-top:0}.app-container{max-width:95vw;margin:0 auto;padding:0 10px;width:100%;box-sizing:border-box}.app-container.full-width{max-width:100%;margin:0;padding:0}.popup-viewed-overlay{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;background:#00000080;padding:16px}.popup-viewed-modal{width:min(560px,100%);background:#fff;border-radius:10px;box-shadow:0 10px 30px #0003;padding:20px;animation:popup-slide-in-from-left .52s cubic-bezier(.22,1,.36,1)}.popup-viewed-modal.is-closing{animation:popup-slide-out-to-left .42s cubic-bezier(.55,.055,.675,.19) forwards}.popup-viewed-message{margin:0 0 16px;color:#1a365d;font-size:1rem;line-height:1.5}.popup-viewed-title{margin:0;color:#1a365d;font-size:1.35rem;font-weight:700}.popup-viewed-divider{border:0;border-top:1px solid #d0d7de;margin:10px 0 14px}.popup-viewed-mobile-divider{margin:12px 0 10px}.popup-viewed-message-mobile{font-weight:700;color:#1a365d}.popup-viewed-actions{display:flex;justify-content:flex-end}.popup-viewed-close-btn{border:none;border-radius:6px;background:#c62828;color:#fff;padding:8px 14px;font-weight:600;cursor:pointer}.popup-viewed-close-btn:hover{background:#b71c1c}.popup-viewed-close-btn:disabled{opacity:.7;cursor:not-allowed}@keyframes popup-slide-in-from-left{0%{transform:translate(-120vw);opacity:0}to{transform:translate(0);opacity:1}}@keyframes popup-slide-out-to-left{0%{transform:translate(0);opacity:1}to{transform:translate(-120vw);opacity:0}}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8f9fa;overflow-x:hidden}html,#root{overflow-x:hidden}@media(max-width:1680px){.app-container{max-width:95vw;padding:0 8px}}@media(max-width:1440px){.app-container{max-width:95vw;padding:0 6px}}@media(max-width:1200px){.app-container{max-width:100%;padding:0 4px}}@media(max-width:768px){.app-container{padding:0 2px}}@media(max-width:480px){.app-container{padding:0 1px}}.filters-sticky-global{position:sticky;top:var(--sticky-header-height, 43px);z-index:1020;background:#f8f9fa;padding-top:0;padding-bottom:8px}.filters-sticky-card{max-width:95vw;margin:0 auto;background:#fff;padding:10px 14px}.filters-sticky-card-body{max-width:95vw;margin:0 auto 12px;background:#fff;border:1px solid #e9ecef;border-top:none;border-bottom-left-radius:12px;border-bottom-right-radius:12px;box-shadow:0 4px 8px #0000000f;padding:12px 14px}.content-max{max-width:95vw;margin:0 auto;padding:0 14px}.bookings-header{white-space:nowrap}@media(max-width:576px){.bookings-header h3{font-size:1.1rem}.bookings-header .filters-label{font-size:.85rem}.bookings-header .btn-group .btn.btn-sm{padding:.1rem .4rem;font-size:.75rem}.bookings-header{gap:8px}}.pie-chart-layout{display:grid;grid-template-columns:220px 1fr;gap:16px;align-items:start}.pie-legend{display:flex;flex-direction:column;gap:8px}.pie-legend-item{width:fit-content}.pie-chart-canvas{min-width:0}@media(max-width:768px){.pie-chart-layout{display:block}.pie-legend{flex-direction:row;flex-wrap:wrap;gap:6px 8px;margin-bottom:6px}}.legend-stack{display:flex;flex-direction:column;gap:8px;align-items:flex-start}@media(max-width:768px){.legend-stack{flex-direction:row;flex-wrap:wrap;gap:6px 8px}}.legend-row{display:flex;align-items:center;gap:6px 8px;flex-wrap:wrap;justify-content:center}.legend-row .pie-legend-item{margin-right:4px}@media(min-width:768px){.legend-row{justify-content:flex-start}}@media(min-width:768px)and (max-width:991.98px){.legend-row .pie-legend-item,.bookings-selected-chip,.legend-row .pie-legend-item span,.bookings-selected-chip span{font-size:14px!important}}@media(min-width:768px)and (max-width:991.98px){.bookings-pie-row{margin-top:0!important}}.bookings-chart-left{margin-left:0!important;margin-right:0!important}@media(min-width:768px){.bookings-split-right.chart-is-pie,.bookings-split-right.chart-is-bar{margin-top:0}}.filters-sticky-card-body .btn.btn-sm{padding:.15rem .5rem;font-size:.8rem}.filters-period-row{row-gap:6px}@media(max-width:576px){.filters-period-row{gap:6px 10px}.filters-period-row .btn-group>.btn{padding:.15rem .5rem;font-size:.8rem}.filters-sticky-card-body .btn.btn-sm{padding:.15rem .5rem;font-size:.8rem}}.filters-label{font-family:inherit;font-weight:600;line-height:1.25}.filters-focus-overlay{position:fixed;inset:0;background:#00000059;backdrop-filter:blur(.5px);-webkit-backdrop-filter:blur(.5px);z-index:1010;pointer-events:none}.filters-card-header{background:#fff;border:1px solid #e9ecef;border-bottom:none;border-top-left-radius:10px;border-top-right-radius:10px;padding:10px 12px}.filters-card-body{background:#fff;border:1px solid #e9ecef;border-top:none;border-bottom-left-radius:10px;border-bottom-right-radius:10px;padding:12px 14px;box-shadow:0 4px 8px #00000008;margin-bottom:12px}.calls-for-service-page{padding:10px 0;background-color:#f8f9fa;min-height:100vh}.calls-for-service-page .container{max-width:95vw}.page-header{background-color:#fff;padding:32px 36px;border-radius:12px;box-shadow:0 4px 6px #0000001a;margin-bottom:50px}.page-header-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;width:100%}.page-header-toggle>.d-flex{margin-left:auto}.cfs-two-col{align-items:flex-start}.cfs-sidebar-col{padding-right:0}.cfs-content-col{padding-left:24px}.cfs-sidebar{position:sticky;top:16px;background:#fff;border:1px solid #e9ecef;border-radius:10px;box-shadow:0 2px 6px #0000000d;padding:16px 0}.cfs-side-list{list-style:none;margin:0;padding:0}.cfs-side-section{margin:6px 0}.cfs-side-section-btn{width:100%;background:transparent;border:none;text-align:left;padding:10px 16px;font-weight:700;color:#0f3a5d}.cfs-side-section-btn.expanded{color:#0f3a5d}.cfs-side-sublist{list-style:none;margin:8px 0 0;padding:0}.cfs-sub-indent{padding-left:14px;border-left:none;margin-left:0}.cfs-side-item{display:block;width:100%;padding:10px 16px;color:#29465b;font-weight:600;cursor:pointer;text-decoration:none;border-left:4px solid transparent;border-radius:0 6px 6px 0}.cfs-side-item:hover,.cfs-side-item:focus,.cfs-side-item:visited{text-decoration:none}.cfs-side-item:hover{background:#f2f6f9;color:#0f3a5d}.cfs-side-item.active{background:#0f516f;color:#fff;border-left-color:#0c8cbf}.page-title{font-family:Oswald,sans-serif;font-size:2rem;font-weight:700;color:#1a365d;margin-bottom:25px;text-transform:uppercase;letter-spacing:1px;line-height:1.2}.main-page-title{font-family:Oswald,sans-serif;font-size:1.6rem;font-weight:700;color:#1a365d;text-transform:uppercase;letter-spacing:1px;line-height:1.2;margin:0}.page-description p{font-size:1.1rem;line-height:1.7;color:#6c757d;margin-bottom:20px;max-width:900px}.year-toggle-row{padding:0 4px 8px;overflow:hidden;max-width:100%}.year-toggle-row .nav{justify-content:center;flex-wrap:wrap;width:100%;overflow:hidden}.year-toggle-row .nav-pills .nav-link{font-weight:600;border-radius:999px}.year-toggle-row .nav-pills .nav-link.active{background-color:transparent!important;color:#2d5c9e!important}.year-toggle-row.with-values .nav{border:1px solid #e2e6ea;border-radius:8px;overflow:hidden;-webkit-overflow-scrolling:touch;display:grid;grid-template-columns:repeat(3,1fr);width:100%;box-sizing:border-box;justify-content:stretch;padding:0}.year-toggle-row.with-values .nav .nav-item{margin:0;padding:4px 6px;border-right:1px solid #e2e6ea;display:flex;flex-direction:column;align-items:stretch;justify-content:center;width:auto;box-sizing:border-box;position:relative}.year-toggle-row.with-values .nav .nav-item:last-child{border-right:none}.year-toggle-row.with-values .nav .nav-link{border:none;margin:0;text-align:center;padding:2px 4px;width:100%;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:600}.year-separator{margin:10px 0 16px;border:0;border-top:1px solid #e9ecef}.year-pill-value{line-height:1;border-top:1px solid #e9ecef;padding-top:3px;width:100%;text-align:center;font-weight:700;color:#1a365d!important;font-size:.95rem}@media(max-width:991.98px){.year-toggle-row.with-values .nav{grid-template-columns:repeat(3,1fr)}.year-toggle-row.with-values .nav .nav-item{padding:4px}.year-toggle-row.with-values .nav .nav-link{padding:2px 4px;font-size:.85rem}.year-pill-value{font-size:.85rem}}@media(max-width:575.98px){.year-toggle-row.with-values .nav{grid-template-columns:repeat(3,1fr)}.year-toggle-row.with-values .nav .nav-item{padding:4px 2px}.year-toggle-row.with-values .nav .nav-link{padding:2px;font-size:.8rem}.year-pill-item .year-pill-check{width:14px;height:14px;font-size:10px;top:4px;right:6px}.year-pill-value{font-size:.8rem}}.year-pill-item{position:relative}.year-pill-item .year-pill-check{position:absolute;top:6px;right:6px;background:#2e7d32;color:#fff;border-radius:50%;width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;line-height:1;box-shadow:0 0 0 2px #fff;z-index:1;pointer-events:none}.chart-controls-card{background:#ffffffe6;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 4px 8px #0000000d}.chart-controls-title{font-weight:700;color:#1a365d;font-size:1.1rem;margin-bottom:8px}.chart-filter-group{border:01px solid #e2e6ea;border-radius:10px;padding:10px 12px;background-color:#fff}.chart-bulk-actions .btn{font-size:.8rem}.chart-bulk-actions .btn-link{color:#0d6efd;text-decoration:none}.chart-bulk-actions .btn-link:hover,.chart-bulk-actions .btn-link:focus{text-decoration:underline}.chart-controls>.order-1{margin-right:8px}.chart-controls .chart-bulk-actions{gap:8px}.chart-controls .btn{white-space:nowrap}.month-toggle{padding:18px 22px;background:#fff}.month-toggle:hover{background:#fafafa}.accordion-caret{--bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%231a365d'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-icon-width: 1rem;display:inline-block;width:var(--bs-accordion-btn-icon-width);height:var(--bs-accordion-btn-icon-width);margin-left:12px;flex-shrink:0;background-image:var(--bs-accordion-btn-icon);background-repeat:no-repeat;background-size:var(--bs-accordion-btn-icon-width);background-position:center;transition:transform .2s ease-in-out;transform:rotate(-90deg)}.accordion-caret.open{transform:rotate(0)}.calendar-title{font-family:Oswald,sans-serif;font-size:1.5rem;font-weight:600;color:#1a365d;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.calendar-container{overflow-x:auto;padding:12px 16px 16px}.calendar-table{width:100%;margin-bottom:0;border-collapse:separate;border-spacing:0}.calendar-header{background-color:#1a365d;color:#fff;text-align:center;padding:15px 8px;font-family:Oswald,sans-serif;font-weight:600;font-size:.9rem;letter-spacing:.5px;border:1px solid #1a365d}.calendar-header.sunday{background-color:#2d5a87}.calendar-header.monday{background-color:#1a365d}.calendar-header.tuesday{background-color:#2d5a87}.calendar-header.wednesday{background-color:#1a365d}.calendar-header.thursday{background-color:#2d5a87}.calendar-header.friday{background-color:#1a365d}.calendar-header.saturday{background-color:#2d5a87}.calendar-table .calendar-header{color:#fff!important}.calendar-day{text-align:center;vertical-align:middle;padding:20px 15px;font-size:1.1rem;font-weight:500;color:#6c757d;border:1px solid #e9ecef;background-color:#fff;position:relative;width:14.28%}.calendar-day.empty{background-color:#f8f9fa;color:transparent}.calendar-day.active{background-color:#fff;border-color:#e9ecef}.calendar-day.active .day-link{color:#1976d2;text-decoration:none;font-weight:600}.calendar-day.active .day-link:hover{color:#0d47a1;text-decoration:underline}.calendar-day:hover:not(.empty){background-color:#f5f5f5}.calendar-day.active:hover{background-color:#f5f5f5}.chart-month-toggle .btn{min-width:44px;min-height:36px;line-height:1.2;padding:6px 10px;font-weight:600;border-radius:20px}@media(max-width:576px){.chart-month-toggle .btn{min-width:48px;min-height:40px;padding:8px 12px;font-size:.95rem}}.calls-for-service-page .form-check-input{width:22px;height:22px;cursor:pointer}.chart-month-checkboxes .form-check-label,.calls-for-service-page .form-check-label{font-size:1rem;line-height:25px;-webkit-user-select:none;user-select:none}.chart-month-checkboxes .form-check-input:focus{box-shadow:0 0 0 .2rem #1976d240}.chart-month-checkboxes .form-check-input,.calls-for-service-page .form-check-input{border-radius:6px}.chart-month-checkboxes{display:flex!important;flex-wrap:wrap;align-items:center}.chart-month-checkboxes .chart-month-checkbox{display:inline-flex;align-items:center}.chart-month-checkboxes .form-check-input{width:26px;height:26px;border-radius:8px;border:2px solid #0d6efd;background:#fff;cursor:pointer;appearance:none;-webkit-appearance:none;outline:none;position:relative}.chart-month-checkboxes .form-check-input:checked{background-color:#0d6efd;border-color:#0d6efd}.chart-month-checkboxes .form-check-input:checked:after{content:"✓";color:#fff;font-weight:900;font-size:16px;line-height:1;position:absolute;left:50%;top:50%;transform:translate(-50%,-55%)}.chart-month-checkboxes .form-check-label{margin-left:8px;font-weight:600}@media(max-width:575.98px){.chart-month-checkboxes{column-gap:14px;row-gap:8px}.chart-month-checkboxes .form-check-input{width:24px;height:24px}}.compare-modal .form-check-input{width:25px;height:25px}.compare-modal .form-check-label{line-height:25px}.chart-month-checkboxes,.chart-year-checkboxes{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start}@media(max-width:991.98px){.main-page-title{font-size:1.5rem;font-weight:700;color:#1a365d;margin:20px 0;text-align:center}.calls-for-service-page .container{max-width:720px}.cfs-content-col{padding-left:16px}.page-title{font-size:2rem}.calendar-title{font-size:1.35rem}}@media(max-width:767.98px){.page-header-toggle{flex-direction:row!important}.main-page-title{font-size:1.5rem;font-weight:700;color:#1a365d;margin:20px 0;text-align:center}.calls-for-service-page .container{max-width:100%;padding-left:20px;padding-right:20px}.cfs-sidebar-col{padding-right:12px;margin-bottom:16px}.cfs-content-col{padding-left:0}.page-title{font-size:2rem;margin-bottom:15px}.calendar-title{font-size:1.25rem}.month-toggle{padding:14px 18px}.calendar-container{padding:10px 12px 12px}.page-header,.calendar-section{padding:30px 20px}.calls-for-service-page{padding:10px 0}.calendar-day{padding:15px 8px;font-size:1rem}.calendar-header{padding:12px 6px;font-size:.8rem}.page-description p{font-size:1rem;line-height:1.6}.page-header .chart-controls,.page-header .chart-controls .d-flex{flex-direction:row!important}}@media(max-width:575.98px){.filters-toggle{width:100%!important;justify-content:flex-start!important;text-align:left!important}#filters-collapse{width:100%!important}.page-header,.calendar-section{width:100%!important;display:block!important;box-sizing:border-box!important;margin-left:0!important;margin-right:0!important}.page-header-toggle{flex-wrap:nowrap!important;align-items:center!important}.page-header-toggle .main-page-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.page-header-toggle>.d-flex{margin-left:auto}.page-header-toggle .accordion-caret{align-self:center;position:relative;top:8px}.main-page-title{font-size:1.3rem;font-weight:700;color:#1a365d;margin:20px 0;text-align:center}.chart-controls{justify-content:flex-start!important}.chart-month-checkboxes,.chart-year-checkboxes{justify-content:flex-start}.chart-month-checkbox,.chart-year-checkbox{display:inline-flex!important;flex-direction:row!important;align-items:center!important;gap:4px;white-space:nowrap;width:auto!important;margin-right:8px!important}.chart-month-checkbox .form-check-input,.chart-year-checkbox .form-check-input{margin-top:0!important;vertical-align:middle!important}.chart-month-checkbox .form-check-label,.chart-year-checkbox .form-check-label{margin:0!important;line-height:1.2!important;display:inline-flex!important;align-items:center!important;white-space:nowrap!important}.year-toggle-row.with-values .nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));width:100%;overflow-x:hidden}.year-toggle-row{padding:0 2px 6px}.year-toggle-row.with-values .nav .nav-item{width:auto;padding:4px 6px}}.stats-accordion .accordion-button{background-color:#16385a;color:#fff}.stats-accordion .accordion-button:focus{box-shadow:none}.stats-accordion .accordion-button:not(.collapsed){background-color:#16385a;color:#fff}.stats-accordion .accordion-button:after{filter:invert(1) brightness(2)}.stats-accordion .accordion-item{border:1px solid rgba(22,56,90,.3)}.dashboard-container{width:100%;height:var(--dashboard-height, 100vh)}.dashboard-content{width:100%;height:100%;position:relative;overflow:hidden}.dashboard-iframe{border:0;width:100%;height:100%;transition:opacity .5s ease;position:relative;z-index:1;display:block}.dashboard-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:1000;background-color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .3s ease;pointer-events:none}.loading-logo-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center;width:var(--logo-size, 96px);height:var(--logo-size, 96px)}.loading-logo{width:var(--logo-size, 96px);height:var(--logo-size, 96px);object-fit:contain;filter:drop-shadow(0 2px 6px rgba(0,0,0,.3))}.loading-ring{position:absolute;width:calc(var(--logo-size, 96px) + 24px);height:calc(var(--logo-size, 96px) + 24px);border-radius:50%;border:3px solid rgba(255,255,255,.35);border-top-color:#0d6efd;animation:loading-rotate 1s linear infinite}.loading-pulse{animation:loading-pulse 1.2s ease-in-out infinite}.loading-spin{animation:loading-rotate 1.2s linear infinite}@keyframes loading-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes loading-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.9}}.loading-fade{animation:loading-fade 1.4s ease-in-out infinite}@keyframes loading-fade{0%,to{opacity:.35}50%{opacity:1}}.notfound-page{background:linear-gradient(180deg,#0d1b2a,#1a365d,#112540);min-height:calc(100vh - 120px);padding:3rem 0;display:flex;align-items:center;justify-content:center}.notfound-wrapper{max-width:640px;background:#fff;border:2px solid #1a365d;border-radius:4px;padding:48px 40px;box-shadow:0 4px 24px #1a365d40;margin:0 auto;position:relative}.notfound-content{text-align:center}.notfound-code{font-family:Oswald,sans-serif;font-size:4rem;font-weight:700;color:#1a365d;letter-spacing:4px;text-transform:uppercase;line-height:1;text-align:center;margin-bottom:1rem}.notfound-wrapper:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#1a365d,#b8860b,#1a365d);border-radius:4px 4px 0 0}.notfound-title{font-family:Oswald,sans-serif;font-weight:600;font-size:1.25rem;color:#1a365d;text-transform:uppercase;letter-spacing:1px;margin-bottom:1rem}.notfound-text{color:#374151;font-size:1rem;line-height:1.6;margin-bottom:2rem}.notfound-buttons{display:flex;justify-content:center}.notfound-button{display:inline-block;padding:.75rem 2rem;border-radius:2px;text-decoration:none;font-weight:600;font-size:.95rem;letter-spacing:.5px;text-transform:uppercase;transition:all .2s ease;border:2px solid #1a365d;cursor:pointer}.notfound-button--primary{background-color:#1a365d;color:#fff;border-color:#1a365d}.notfound-button--primary:hover{background-color:#112540;border-color:#112540;color:#fff;text-decoration:none}@media(max-width:575.98px){.notfound-page{padding:2rem 1rem}.notfound-wrapper{padding:36px 24px}.notfound-code{font-size:2.75rem;letter-spacing:2px}.notfound-title{font-size:1.1rem}.notfound-text{font-size:.95rem;margin-bottom:1.5rem}.notfound-button{width:100%;max-width:220px;text-align:center}}.iframe-page{width:100%;height:100%}.iframe-container{width:100%;height:100%;min-height:92vh}.home-page{min-height:calc(100vh - 60px);background:linear-gradient(180deg,#eef4f8,#f8f9fa 65%);padding:32px 16px 0}.home-hero{max-width:1100px;margin:0 auto 28px}.home-hero-inner{padding:0}.home-hero-image{width:100%;max-width:100%;height:auto;border-radius:14px;display:block;margin:0 0 20px}.home-eyebrow{font-size:.9rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#1a365d;margin-bottom:12px}.home-title{font-size:clamp(2rem,3vw,2.6rem);color:#0f3a5d;margin-bottom:16px;font-weight:700}.home-lead{font-size:1.1rem;line-height:1.7;color:#4a5568;margin-bottom:0}.home-content{max-width:1100px;margin:0 auto}.home-card{background:#fff;border-radius:16px;border:1px solid #e5e7eb;padding:10px 32px;box-shadow:0 8px 24px #0f172a0f}.home-card h2{margin-top:24px;margin-bottom:12px;color:#1a365d;font-size:1.4rem}.home-card p{color:#4a5568;line-height:1.7;margin:0 0 10px}.home-card ul{margin:0 0 14px 20px;padding:0;color:#374151;line-height:1.7}.home-card li{margin-bottom:6px}.home-emphasis{background:#edf6ff;border-left:4px solid #0c8cbf;padding:14px 16px;border-radius:8px;color:#1f2937}@media(max-width:768px){.home-page{padding:24px 12px 22px}.home-hero-image{width:100%;margin:0 0 20px}.home-hero-inner{padding:0 0 22px}.home-card{padding:22px 20px}.home-title{font-size:2rem}}.language-switcher{display:flex;position:relative;margin-left:auto;margin-right:16px}@media(max-width:1024px){.language-switcher{margin-left:12px;margin-right:10px}}.language-switcher-dropdown{position:relative;display:inline-block}.language-switcher-button{background-color:transparent;border:1px solid rgba(255,255,255,.3);color:#fff;padding:8px 12px;border-radius:4px;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:14px;transition:all .3s ease}.language-switcher-button:hover{background-color:#ffffff1a;border-color:#ffffff80}.language-current{display:flex;align-items:center;gap:6px}.language-name{font-size:14px}.language-arrow{font-size:10px;margin-left:4px;transition:transform .3s ease}@media(hover:hover)and (pointer:fine){.language-switcher-dropdown:hover .language-arrow{transform:rotate(180deg)}}.language-switcher-menu{position:absolute;top:100%;right:0;margin-top:8px;background-color:#333;border:1px solid rgba(255,255,255,.2);border-radius:4px;min-width:150px;box-shadow:0 4px 12px #0000004d;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all .3s ease;z-index:1000}@media(hover:hover)and (pointer:fine){.language-switcher-dropdown:hover .language-switcher-menu{opacity:1;visibility:visible;transform:translateY(0)}}.language-switcher-dropdown.is-open .language-switcher-menu,.language-switcher-menu.is-open{opacity:1;visibility:visible;transform:translateY(0)}.language-option{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;background-color:transparent;border:none;color:#fff;cursor:pointer;text-align:left;font-size:14px;transition:background-color .2s ease}.language-option:hover{background-color:#ffffff1a}.language-option.active{background-color:#ffffff26;font-weight:600}.language-flag{font-size:18px}.language-name-option{flex:1}@media(max-width:767.98px){.language-switcher{margin-left:4px!important;margin-right:2px;flex-shrink:0;order:2}.language-switcher-button{padding:5px 6px;gap:3px;font-size:12px}.language-current{gap:4px}.language-name{display:none}.language-switcher-dropdown{z-index:1202}.language-switcher-button{position:relative;z-index:1202}.language-switcher-dropdown.is-open .language-arrow{transform:rotate(180deg)}.language-switcher-menu{z-index:1300}}@media(max-width:575.98px){.language-switcher{margin-left:2px!important;margin-right:0}.language-switcher-button{padding:5px 6px;gap:3px}.language-name{display:none}.language-arrow{margin-left:2px}}.header-menu{display:flex;align-items:center;flex:1;justify-content:center;margin:0 20px}@media(max-width:1024px){.header-menu{flex:0 0 auto;margin:0;order:3}}@media(max-width:1024px){.header-menu--desktop{display:none}}.header-menu-list{display:flex;list-style:none;padding:0;margin:0;gap:4px;align-items:center}.header-menu-item{position:relative;margin:0}.header-menu-button{display:flex;align-items:center;gap:6px;padding:10px 16px;background-color:transparent;border:none;color:#fff;font-size:13px;font-weight:500;cursor:pointer;border-radius:6px;transition:background-color .2s ease,color .2s ease;white-space:nowrap;position:relative;text-decoration:none}.header-menu-button:hover{background-color:#1f6fb2;color:#fff;text-decoration:none}.header-menu-button--active{color:#fff;background-color:#ffffff26}.header-menu-button--has-dropdown{padding-right:12px}.header-menu-chevron{transition:transform .2s ease;flex-shrink:0;opacity:.7}.header-menu-chevron--expanded{transform:rotate(180deg)}.header-menu-button:hover .header-menu-chevron{opacity:1}.header-menu-dropdown{position:fixed;list-style:none;padding:8px 0;margin:0;background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:220px;z-index:1051;animation:dropdownFadeIn .2s ease;max-height:none;overflow:visible}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.header-menu-dropdown-item{margin:0}.header-menu-dropdown-button{width:100%;padding:10px 20px;background-color:transparent;border:none;color:#333;font-size:14px;text-align:left;cursor:pointer;transition:background-color .15s ease,color .15s ease;white-space:nowrap}.header-menu-dropdown-button:hover{background-color:#f5f5f5;color:#007bff}.header-menu-dropdown-button--active{background-color:#007bff;color:#fff}.header-menu-dropdown-button--active:hover{background-color:#0056b3}@media(min-width:1025px)and (max-width:1200px){.header-menu--desktop{margin:0 10px}.header-menu-button{padding:8px 12px;font-size:12px}}.header-menu-toggle{display:none;background:transparent;border:none;padding:8px;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;width:40px;height:40px;margin-left:12px;z-index:4001;position:relative;flex-shrink:0}@media(max-width:1024px){.header-menu-toggle{margin-left:auto}}@media(max-width:1024px){.header-menu-toggle{display:flex!important;visibility:visible!important;opacity:1!important;margin-left:8px!important;margin-right:2px;position:relative;z-index:4001;flex-shrink:0}.header-menu-toggle[aria-expanded=true]{display:none!important}}@media(max-width:575.98px){.header-menu-toggle{width:36px;height:36px;padding:6px}.header-menu-toggle-icon{width:22px;height:16px}}.header-menu-toggle-icon{width:24px;height:18px;position:relative;display:flex;flex-direction:column;justify-content:space-between}.header-menu-toggle-icon span{display:block;height:2px;width:100%;background-color:#fff;border-radius:2px;transition:all .3s ease;transform-origin:center}.header-menu-toggle-icon--open span:nth-child(1){transform:rotate(45deg) translate(6px,6px)}.header-menu-toggle-icon--open span:nth-child(2){opacity:0}.header-menu-toggle-icon--open span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.header-menu-backdrop{display:block;position:fixed;inset:0;background-color:#00000080;z-index:3999;opacity:1;transition:opacity .5s cubic-bezier(.4,0,.2,1)}.header-menu-backdrop--closing{opacity:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@media(max-width:1024px){.header-menu-backdrop{display:block}}.header-menu-mobile{display:none;position:fixed;top:0;right:-100%;width:85%;max-width:320px;height:100vh;background-color:#fff;box-shadow:-2px 0 8px #00000026;z-index:4000;transition:right .5s cubic-bezier(.4,0,.2,1)!important;overflow:hidden;display:flex;flex-direction:column;isolation:isolate}@media(max-width:1024px){.header-menu-mobile{display:flex}}.header-menu-mobile--open{right:0}.header-menu-mobile-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e0e0e0;background-color:#232323;color:#fff;position:sticky;top:0;z-index:2;flex-shrink:0}.header-menu-mobile-title{margin:0;font-size:18px;font-weight:600}.header-menu-mobile-link{background:transparent;border:none;color:#fff;cursor:pointer;font-size:15px;font-weight:500;margin-left:auto;margin-right:10px;padding:4px 6px}.header-menu-mobile-close{background:transparent;border:none;color:#fff;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s ease}.header-menu-mobile-close:hover{background-color:#ffffff1a}.header-menu-mobile-list{list-style:none;padding:0;margin:0;background-color:#fff;position:relative;z-index:1;flex:1 1 auto;overflow-y:auto;-webkit-overflow-scrolling:touch}.header-menu-mobile-item{border-bottom:1px solid #f0f0f0}.header-menu-mobile-button{width:100%;display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background-color:transparent;border:none;color:#333;font-size:16px;font-weight:500;text-align:left;cursor:pointer;transition:background-color .2s ease;text-decoration:none}.header-menu-mobile-button:hover{background-color:#f5f5f5;text-decoration:none}.header-menu-mobile-button--active{background-color:#007bff;color:#fff}.header-menu-mobile-button--active:hover{background-color:#0056b3}.header-menu-mobile-chevron{transition:transform .3s ease;flex-shrink:0;color:#666}.header-menu-mobile-button--active .header-menu-mobile-chevron{color:#fff}.header-menu-mobile-chevron--expanded{transform:rotate(90deg)}.header-menu-mobile-submenu{list-style:none;padding:0;margin:0;background-color:#f8f9fa;border-top:1px solid #e0e0e0;max-height:0;overflow:hidden;transition:max-height .3s ease}.header-menu-mobile-submenu-item{border-bottom:1px solid #e9ecef}.header-menu-mobile-submenu-item:last-child{border-bottom:none}.header-menu-mobile-submenu-button{width:100%;padding:12px 20px 12px 40px;background-color:transparent;border:none;color:#555;font-size:15px;text-align:left;cursor:pointer;transition:background-color .2s ease,color .2s ease}.header-menu-mobile-submenu-button:hover{background-color:#e9ecef;color:#007bff}.header-menu-mobile-submenu-button--active{background-color:#007bff;color:#fff;font-weight:500}.header-menu-mobile-submenu-button--active:hover{background-color:#0056b3}.header-menu-mobile-submenu--expanded{max-height:1000px}@media(max-width:480px){.header-menu-mobile{width:90%;max-width:280px}.header-menu-mobile-button{padding:14px 16px;font-size:15px}.header-menu-mobile-submenu-button{padding:10px 16px 10px 32px;font-size:14px}}.feedback-modal-overlay{position:fixed;inset:0;z-index:1200;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:16px;animation:feedback-overlay-fade-in .3s ease}.feedback-modal-overlay.is-closing{animation:feedback-overlay-fade-out .26s ease forwards}.feedback-modal{width:min(640px,100%);max-height:90vh;overflow-y:auto;background:#fff;border-radius:10px;padding:18px;box-shadow:0 10px 30px #00000040;animation:feedback-slide-in-from-top .52s cubic-bezier(.22,1,.36,1)}.feedback-modal.is-closing{animation:feedback-slide-out-to-top .42s cubic-bezier(.55,.055,.675,.19) forwards}.feedback-modal-title{margin:0 0 12px;color:#1a365d}.feedback-modal-intro{margin:0;color:#4b5563;font-size:.82rem;line-height:1.35}.feedback-modal-divider{border:0;border-top:1px solid #e5e7eb;margin:10px 0 12px}.feedback-form{display:flex;flex-direction:column;gap:12px}.feedback-fields-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.feedback-field{display:flex;flex-direction:column;gap:6px;color:#1f2937;font-size:.95rem}.feedback-field input,.feedback-field textarea{border:1px solid #d1d5db;border-radius:6px;padding:8px 10px;font-size:.95rem}.feedback-field textarea{resize:vertical}.feedback-field-error{color:#b91c1c;font-size:.8rem;line-height:1.25}@media(max-width:640px){.feedback-fields-row{grid-template-columns:1fr}}.feedback-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.feedback-btn{border:none;border-radius:6px;padding:8px 14px;color:#fff;cursor:pointer;font-weight:600}.feedback-btn:disabled{opacity:.6;cursor:not-allowed}.feedback-btn-cancel{background:#6b7280}.feedback-btn-submit{background:#1f6fb2}.feedback-submit-loading{display:inline-flex;align-items:center;gap:8px}.feedback-submit-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:feedback-submit-spin .8s linear infinite}@keyframes feedback-submit-spin{to{transform:rotate(360deg)}}.feedback-success-overlay{position:fixed;inset:0;z-index:1300;background:#00000073;display:flex;align-items:center;justify-content:center;padding:16px}.feedback-success-modal{width:min(420px,100%);background:#fff;border-radius:10px;box-shadow:0 10px 30px #00000040;padding:18px;display:flex;flex-direction:column;gap:14px;align-items:center}.feedback-success-message{margin:0;color:#1a365d;text-align:center;font-size:.98rem}.feedback-error-overlay{position:fixed;inset:0;z-index:1301;background:#00000073;display:flex;align-items:center;justify-content:center;padding:16px}.feedback-error-modal{width:min(460px,100%);background:#fff;border-radius:10px;box-shadow:0 10px 30px #00000040;padding:18px;display:flex;flex-direction:column;gap:14px;align-items:center}.feedback-error-message{margin:0;color:#991b1b;text-align:center;font-size:.98rem}@keyframes feedback-slide-in-from-top{0%{transform:translateY(-120vh);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes feedback-slide-out-to-top{0%{transform:translateY(0);opacity:1}to{transform:translateY(-120vh);opacity:0}}@keyframes feedback-overlay-fade-in{0%{opacity:0}to{opacity:1}}@keyframes feedback-overlay-fade-out{0%{opacity:1}to{opacity:0}}.font-size-controls{display:flex;align-items:center;gap:8px;color:#fff}.font-size-controls-label{font-size:1rem;white-space:nowrap}.font-size-controls-btn{width:24px;height:24px;border:none;border-radius:4px;background:#1f6fb2;color:#fff;font-weight:700;font-size:1rem;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.font-size-controls-btn:hover{background:#12568c}.font-size-controls-btn:disabled{opacity:.6;cursor:not-allowed}.font-size-controls--header{margin-right:12px}@media(max-width:767.98px){.font-size-controls--header{display:none}}@media(max-width:575.98px){.font-size-controls-label{display:none}.font-size-controls{gap:6px}.font-size-controls-btn{width:22px;height:22px}}.site-header{background-color:#232323!important;padding-top:4px;padding-bottom:4px;box-shadow:0 2px 4px #0000001a;width:100%;position:relative;overflow:visible}.site-header--sticky{position:sticky;top:0;z-index:1050}.site-header .header-container{display:flex;align-items:center;padding-left:0;min-height:58px;width:100%;position:relative}.site-header .header-inner{display:flex;align-items:center;justify-content:flex-start;width:100%;padding-left:20px;box-sizing:border-box;min-width:0;flex-wrap:nowrap;gap:4px}.logo-badge{height:50px;width:auto;margin-right:10px}.brand-left{display:flex!important;align-items:center;gap:12px;margin-right:auto;text-decoration:none;color:inherit;min-width:0;max-width:calc(100% - 190px)}.brand-left:hover{text-decoration:none;color:inherit}.brand-title{display:flex;flex-direction:column;color:#fff;font-family:Oswald,sans-serif;font-weight:700;line-height:1.1;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-line:first-child{font-size:14px}.brand-line:last-child{font-size:16px}.brand-line--large{font-size:200%;font-family:Oswald,sans-serif}@media(max-width:1440px){.site-header .header-inner{padding-left:16px}}@media(max-width:1200px){.site-header .header-inner{padding-left:16px}}@media(max-width:768px){.site-header .header-inner{padding-left:12px}}@media(max-width:480px){.site-header .header-inner{padding-left:8px}}@media(max-width:1199.98px){.logo-badge{height:58px}}@media(max-width:991.98px){.logo-badge{height:47px}}@media(max-width:767.98px){.site-header .header-container{min-height:50px}.brand-left{gap:8px;max-width:calc(100% - 170px)}.logo-badge{height:28px;margin-right:6px}.brand-line:first-child{font-size:10px}.brand-line:last-child{font-size:11px}.brand-line--large{font-size:115%}}@media(max-width:575.98px){.site-header{padding-top:2px;padding-bottom:2px}.site-header .header-container{min-height:44px}.site-header .header-inner{padding-left:6px}.brand-left{gap:6px;max-width:calc(100% - 150px)}.logo-badge{height:24px;margin-right:4px}.brand-line:first-child{font-size:9px}.brand-line:last-child{font-size:10px}.brand-line--large{font-size:105%}}.sheriff-logo-nav{flex-shrink:0;display:flex;align-items:center}.logo-image-nav{height:48px;width:auto;max-width:68px;object-fit:contain}.search-form{width:300px;margin-left:auto}.search-input{border-radius:4px 0 0 4px;border:1px solid #ced4da;padding:8px 12px;font-size:14px}.search-input:focus{border-color:#80bdff;box-shadow:0 0 0 .2rem #007bff40}.search-btn{border-radius:0 4px 4px 0;border:1px solid #ced4da;border-left:none;background-color:#f8f9fa;color:#6c757d;padding:8px 12px}.search-btn:hover{background-color:#e9ecef;border-color:#adb5bd;color:#495057}.main-navigation{background-color:#16385a!important;padding:4px 0;min-height:38px;position:sticky;top:0;z-index:1030;box-shadow:0 2px 6px #00000026;margin-top:0!important}.main-navigation .container{max-width:1320px}.navbar-title{color:#fff;margin-right:20px}.department-title-nav,.department-subtitle-nav{font-size:1.8rem;font-weight:700;color:#fff;line-height:1.1;margin:0;font-family:Oswald,sans-serif;text-transform:uppercase;letter-spacing:.5px}.main-navigation .navbar-toggler{border-color:#ffffff4d;border-width:2px;padding:4px 8px}.main-navigation .navbar-toggler:focus{box-shadow:0 0 0 .2rem #ffffff40}.main-navigation .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.primary-menu{display:flex;align-items:center}.main-nav-item{color:#fff!important;font-weight:700;font-size:15px;padding:10px 16px!important;text-decoration:none;border-right:1px solid rgba(255,255,255,.12);transition:background-color .2s ease;display:flex;align-items:center;height:34px}.main-nav-item:first-child{border-left:none}.main-nav-item:hover{background-color:#ffffff1a;color:#fff!important}.main-nav-item.active{background-color:#2777a6;color:#fff!important}@media(max-width:1199.98px){.main-navigation .container{max-width:960px}.logo-badge{height:68px}}@media(max-width:991.98px){.main-navigation .container{max-width:720px}.department-title-nav,.department-subtitle-nav{font-size:1.4rem}.navbar-title{margin-right:10px;margin-left:0}.logo-image-nav{height:42px;max-width:54px}.main-nav-item{font-size:15px}.main-navigation{min-height:auto;padding:6px 0}.main-navigation .navbar-toggler{margin-bottom:8px}.search-form{width:200px;margin-top:15px}.main-nav-item{padding:10px 14px!important;border-right:none;border-bottom:1px solid rgba(255,255,255,.12);width:100%;height:38px}}@media(max-width:767.98px){.department-title-nav,.department-subtitle-nav{font-size:1.2rem}.logo-image-nav{height:34px;max-width:44px}.main-nav-item{font-size:14px}.search-form{width:100%;margin-top:15px}.top-nav-link{padding:0 10px!important;font-size:11px}}@media(max-width:767.98px){.site-header{padding-top:2px!important;padding-bottom:2px!important}.site-header .header-container{min-height:44px!important}.site-header .header-inner{padding-left:6px!important;padding-right:6px!important;justify-content:space-between!important;gap:2px!important}.brand-left{max-width:calc(100% - 84px)!important;gap:6px!important;flex:0 1 auto;overflow:hidden}.logo-badge{height:44px!important;margin-right:4px!important;max-width:100%;object-fit:contain;object-position:left center}}@media(max-width:575.98px){.site-header .header-container{min-height:40px!important}.brand-left{max-width:calc(100% - 82px)!important}.logo-badge{height:40px!important}}.page-footer{background:#1f242b;color:#e6e6e6;margin-top:8px;padding:22px 12px 16px}.footer_column{max-width:1200px;margin:0 auto;text-align:center}.footer_nav{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 18px;margin-bottom:14px}.footer_nav a{color:#d7e7ff;text-decoration:none;font-size:.92rem}.footer_nav a:hover{text-decoration:underline}.social_icons{display:flex;justify-content:center;align-items:center;gap:12px;margin-bottom:12px}.social_icons a{color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:4px 10px;font-size:.85rem}.social_icons a.social-icon-image-link{border:none;padding:0;background:transparent;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center}.social_icons a.social-icon-image-link img{width:100%;height:100%;display:block;object-fit:contain}.social_icons a.social-icon-x{width:22px;height:22px}.footer_contact_line{color:#f0f0f0;font-size:.9rem;line-height:1.6;margin-bottom:10px}.footer_copyright{margin:0;color:#c8c8c8;font-size:.86rem}.footer_copyright a{color:#fff}.census-page{width:100%;min-height:92vh;background-color:#2b2b2b;padding:10px}.census-container{display:grid;grid-template-columns:280px 1fr 500px;gap:20px;height:100%;max-width:100%}.census-filters{display:flex;flex-direction:column;gap:20px}.filter-section{background-color:#333;padding:15px;border-radius:4px}.filter-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;cursor:pointer;-webkit-user-select:none;user-select:none}.filter-header:hover{opacity:.8}.filter-header h3{color:#fff;font-size:16px;font-weight:600;margin:0;text-transform:uppercase}.collapse-icon{color:#fff;font-size:14px;cursor:pointer;transition:transform .3s ease;transform:rotate(-90deg)}.collapse-icon.expanded{transform:rotate(0)}.filter-content{overflow:hidden;transition:max-height .4s ease-out,opacity .3s ease}.filter-content.collapsed{max-height:0;opacity:0;margin-top:0;margin-bottom:0}.filter-content.expanded{max-height:1000px;opacity:1}.filter-info{margin-bottom:10px;font-size:13px;color:#aaa}.no-selection{color:#888}.filter-content.expanded .filter-checkboxes{display:flex;flex-direction:column;gap:8px;margin-bottom:15px}.filter-content.expanded .filter-buttons{display:flex;gap:10px}.filter-checkboxes{display:flex;flex-direction:column;gap:8px;margin-bottom:15px}.checkbox-label{display:flex;align-items:center;gap:8px;color:#fff;font-size:14px;cursor:pointer}.checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer}.checkbox-label span{-webkit-user-select:none;user-select:none}.filter-buttons{display:flex;gap:10px}.filter-btn{background-color:#2777a6;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:13px;font-weight:500;flex:1}.filter-btn:hover{background-color:#1e5f85}.census-metrics{display:flex;flex-direction:column;gap:20px}.metric-card{background-color:#333;padding:20px;border-radius:4px}.metric-title{color:#fff;font-size:16px;font-weight:600;margin:0 0 10px;text-transform:uppercase}.metric-value{font-size:48px;font-weight:700;margin:0}.metric-value-yellow{color:gold}.metric-value-blue{color:#66c3ff}.chart-card{background-color:#333;padding:20px;border-radius:4px}.chart-title{color:#fff;font-size:16px;font-weight:600;margin:0 0 15px;text-transform:uppercase}.chart-placeholder{width:100%;height:250px;background-color:#2b2b2b;border-radius:4px;margin-bottom:10px;display:flex;align-items:center;justify-content:center}.chart-svg{width:100%;height:100%}.chart-tabs{display:flex;gap:0}.chart-tab{background-color:transparent;color:#fff;border:none;padding:8px 20px;cursor:pointer;font-size:14px;font-weight:500;border-bottom:2px solid transparent}.chart-tab.active{border-bottom-color:#2777a6;color:#2777a6}.chart-tab:hover{color:#66c3ff}.census-table-section{display:flex;flex-direction:column;gap:10px}.table-heading{color:#fff;font-size:16px;font-weight:600;margin:0;text-transform:uppercase}.table-container{background-color:#333;padding:20px;border-radius:4px;max-height:calc(92vh - 200px);overflow-y:auto}.agency-table{width:100%;border-collapse:collapse}.agency-table thead th{color:gold;font-size:14px;font-weight:600;text-align:left;padding:10px 0;text-transform:uppercase;border-bottom:1px solid #555}.agency-table tbody tr{border-bottom:1px solid #444}.agency-table tbody tr:hover{background-color:#3a3a3a}.agency-table tbody td{color:#fff;font-size:14px;padding:10px 0}.bookings-cell{color:#66c3ff;font-weight:500}.table-tabs{display:flex;gap:0}.table-tab{background-color:transparent;color:#fff;border:none;padding:8px 20px;cursor:pointer;font-size:14px;font-weight:500;border-bottom:2px solid transparent}.table-tab.active{border-bottom-color:#2777a6;color:#2777a6}.table-tab:hover{color:#66c3ff}@media(max-width:1400px){.census-container{grid-template-columns:260px 1fr 450px}}@media(max-width:1200px){.census-container{grid-template-columns:240px 1fr 400px}.metric-value{font-size:36px}}@media(max-width:992px){.census-container{grid-template-columns:1fr;gap:15px}.census-filters{flex-direction:row;overflow-x:auto}.filter-section{min-width:200px}}.bookings-viewer-container{width:100%;min-height:100vh;background-color:#f5f5f5;padding:20px;display:flex;flex-direction:column;box-sizing:border-box}.bookings-viewer-header{width:100%;max-width:1400px;margin:0 auto 30px;text-align:center}.bookings-viewer-header h1{font-size:2.5rem;color:#333;margin-bottom:10px;font-weight:600}.bookings-viewer-subtitle{font-size:1.1rem;color:#666;margin:0}.bookings-viewer-content{width:100%;max-width:1400px;margin:0 auto;display:flex;flex-direction:column;gap:40px}.bookings-viewer-section{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:18px;width:100%;box-sizing:border-box}.bookings-viewer-section-title{font-size:1.4rem;color:#1976d2;margin:0 0 12px;font-weight:600;border-bottom:2px solid #1976d2;padding-bottom:8px}.bookings-viewer-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;justify-items:stretch}.bookings-viewer-card{background:linear-gradient(135deg,#4a5568,#2d3748);border-radius:5px;padding:10px;color:#fff;box-shadow:0 3px 4px #0000001a;transition:transform .2s ease,box-shadow .2s ease;display:flex;flex-direction:column;justify-content:space-between;min-height:72px;position:relative}.bookings-viewer-card-actions{position:absolute;bottom:8px;right:8px;display:flex;gap:6px}.bookings-viewer-stats-link,.bookings-viewer-info-link{background:#ffffffe6;border:1px solid rgba(255,255,255,.95);color:#2d3748;padding:4px 8px;border-radius:4px;font-size:.7rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-decoration:none}.bookings-viewer-stats-link:hover,.bookings-viewer-info-link:hover{background:#fff;border-color:#fff;transform:scale(1.05);box-shadow:0 2px 4px #0003}.bookings-viewer-card:hover{transform:translateY(-4px);box-shadow:0 6px 12px #00000026}.bookings-viewer-card-label{font-size:.75rem;opacity:.9;margin-bottom:6px;text-transform:uppercase;letter-spacing:.3px;font-weight:500}.bookings-viewer-card-value{font-size:1.5rem;font-weight:700;line-height:1}.bookings-viewer-comparison-card{border:2px solid}.bookings-viewer-comparison-card--increase{border-color:#f44336;background:linear-gradient(135deg,#f4433633,#f443361a)}.bookings-viewer-comparison-card--decrease{border-color:#4caf50;background:linear-gradient(135deg,#4caf5033,#4caf501a)}.bookings-viewer-comparison-card--neutral{border-color:#9e9e9e;background:linear-gradient(135deg,#9e9e9e33,#9e9e9e1a)}.bookings-viewer-comparison-value{font-size:1.8rem;margin:8px 0;display:flex;align-items:center;justify-content:center;gap:8px}.bookings-viewer-arrow{font-size:2.5rem;font-weight:900;line-height:1;display:inline-block;transform:scale(1.4);text-shadow:0 1px 2px rgba(0,0,0,.1)}.bookings-viewer-arrow--up{color:#f44336}.bookings-viewer-arrow--down{color:#4caf50}.bookings-viewer-arrow--neutral{color:#9e9e9e}.bookings-viewer-comparison-card--increase .bookings-viewer-comparison-value{color:#f44336}.bookings-viewer-comparison-card--decrease .bookings-viewer-comparison-value{color:#4caf50}.bookings-viewer-comparison-card--neutral .bookings-viewer-comparison-value{color:#9e9e9e}.bookings-viewer-comparison-details{margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.2);display:flex;flex-direction:column;gap:4px}.bookings-viewer-comparison-detail{display:flex;justify-content:space-between;align-items:center;font-size:.75rem}.bookings-viewer-comparison-year{opacity:.8;font-weight:500}.bookings-viewer-comparison-number{font-weight:600;font-size:.85rem}.bookings-viewer-cards .bookings-viewer-card:nth-child(4n+1){background:linear-gradient(135deg,#667eea,#764ba2)}.bookings-viewer-cards .bookings-viewer-card:nth-child(4n+2){background:linear-gradient(135deg,#f093fb,#f5576c)}.bookings-viewer-cards .bookings-viewer-card:nth-child(4n+3){background:linear-gradient(135deg,#4facfe,#00f2fe)}.bookings-viewer-cards .bookings-viewer-card:nth-child(4n+4){background:linear-gradient(135deg,#43e97b,#38f9d7)}.bookings-viewer-loading,.bookings-viewer-error,.bookings-viewer-no-data{text-align:center;padding:60px 20px;color:#666;max-width:600px;margin:0 auto}.bookings-viewer-error h2{color:#d32f2f;margin-bottom:15px}.bookings-viewer-retry-button,.bookings-viewer-refresh-button{background-color:#1976d2;color:#fff;border:none;padding:12px 24px;border-radius:4px;font-size:1rem;cursor:pointer;transition:background-color .3s ease;margin-top:15px}.bookings-viewer-retry-button:hover,.bookings-viewer-refresh-button:hover{background-color:#1565c0}.bookings-viewer-retry-button:active,.bookings-viewer-refresh-button:active{background-color:#0d47a1}.bookings-viewer-footer{width:100%;max-width:1400px;margin:40px auto 0;display:flex;flex-direction:column;align-items:center;gap:10px}.bookings-viewer-data-info{font-size:.9rem;color:#666;margin:0}@media(max-width:768px){.bookings-viewer-container{padding:15px}.bookings-viewer-header h1{font-size:2rem}.bookings-viewer-section{padding:20px}.bookings-viewer-section-title{font-size:1.5rem}.bookings-viewer-cards{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:15px;justify-items:center}.bookings-viewer-card{padding:15px;min-height:100px}.bookings-viewer-card-value{font-size:1.5rem}}@media(max-width:480px){.bookings-viewer-container{padding:15px}.bookings-viewer-section{padding:20px 15px}.bookings-viewer-cards{grid-template-columns:1fr;max-width:100%;margin:0;justify-items:stretch;padding:0;width:100%;box-sizing:border-box}.bookings-viewer-card{width:100%;max-width:100%;box-sizing:border-box}}.bookings-viewer-modal-overlay{position:fixed;inset:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:1040;padding:20px;pointer-events:auto}.bookings-viewer-modal{background:#fff;border-radius:6px;max-width:900px;width:90%;max-height:98vh;height:auto;overflow:hidden;box-shadow:0 8px 30px #0000004d;display:flex;flex-direction:column}.bookings-viewer-modal-header{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;border-bottom:2px solid #e0e0e0;flex-shrink:0;background:#fff;position:relative;z-index:10}.bookings-viewer-modal-header h2{margin:0;color:#333;font-size:.85rem}.bookings-viewer-modal-close{background:none;border:none;font-size:1.5rem;color:#666;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s ease}.bookings-viewer-modal-close:hover{background-color:#f0f0f0;color:#333}.bookings-viewer-modal-content{padding:12px 16px;overflow-y:auto;flex:1;min-height:0}.bookings-viewer-all-comparisons{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;row-gap:16px;overflow-y:visible;padding-right:6px}.bookings-viewer-comparison-row{padding:10px 12px;background:#f8f9fa;border-radius:4px;border-left:3px solid #1976d2;transition:all .2s ease;height:auto;min-height:auto;display:flex;flex-direction:column}.bookings-viewer-comparison-row:hover{background:#f0f0f0;transform:translate(1px)}.bookings-viewer-comparison-row--increase{border-left-color:#f44336;background:#f443360d}.bookings-viewer-comparison-row--increase:hover{background:#f443361a}.bookings-viewer-comparison-row--decrease{border-left-color:#4caf50;background:#4caf500d}.bookings-viewer-comparison-row--decrease:hover{background:#4caf501a}.bookings-viewer-comparison-row--neutral{border-left-color:#9e9e9e;background:#9e9e9e0d}.bookings-viewer-comparison-row-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;padding-bottom:6px;border-bottom:1px solid rgba(0,0,0,.1)}.bookings-viewer-comparison-years{font-size:.95rem;font-weight:700;color:#333}.bookings-viewer-comparison-percentage{font-size:.95rem;font-weight:700;padding:3px 8px;border-radius:3px;background:#fff}.bookings-viewer-comparison-percentage--increase{color:#f44336}.bookings-viewer-comparison-percentage--decrease{color:#4caf50}.bookings-viewer-comparison-percentage--neutral{color:#9e9e9e}.bookings-viewer-comparison-row-details{display:flex;gap:12px;flex-wrap:wrap}.bookings-viewer-comparison-detail-item{display:flex;gap:6px;align-items:center}.bookings-viewer-detail-label{color:#666;font-size:.75rem;font-weight:500}.bookings-viewer-detail-value{color:#333;font-size:.8rem;font-weight:600}.bookings-viewer-info-section{margin-bottom:20px}.bookings-viewer-info-section:last-child{margin-bottom:0}.bookings-viewer-summary-row{display:flex!important;flex-wrap:wrap;gap:8px;margin-bottom:12px;width:100%;box-sizing:border-box}.bookings-viewer-summary-row .bookings-viewer-info-item{flex:1 1 calc(50% - 4px);min-width:0;max-width:calc(50% - 4px);padding:8px 10px;font-size:.75rem;display:flex;flex-direction:row;justify-content:space-between;align-items:center;box-sizing:border-box;overflow:hidden;flex-shrink:1;flex-grow:0}.bookings-viewer-info-section h3{margin:0 0 10px;color:#333;font-size:.75rem;font-weight:700;padding-bottom:6px;border-bottom:2px solid #e0e0e0}.bookings-viewer-info-list{display:flex;flex-direction:column;gap:6px;padding-right:6px}.bookings-viewer-info-grid{display:grid;gap:8px;padding-right:6px}.bookings-viewer-info-grid--months{grid-template-columns:repeat(4,1fr);row-gap:16px;column-gap:8px}.bookings-viewer-info-grid--race{grid-template-columns:repeat(3,1fr)}.bookings-viewer-info-row{display:flex;justify-content:center;align-items:center;gap:20px;flex-wrap:nowrap}.bookings-viewer-info-item{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:8px 6px;background:linear-gradient(135deg,#f0f4f8,#e8f0f5);border:1px solid rgba(25,118,210,.15);border-radius:4px;transition:all .2s ease;text-align:center;gap:4px;box-shadow:0 1px 3px #0000000d}.bookings-viewer-info-row .bookings-viewer-info-item{min-width:120px;flex:1;flex-direction:row;gap:8px;background:linear-gradient(135deg,#f0f9f5,#e8f5ef);border-color:#4caf5026;justify-content:space-between}.bookings-viewer-info-row .bookings-viewer-info-item:hover{background:linear-gradient(135deg,#e0f5e8,#d6f0e0);border-color:#4caf5040}.bookings-viewer-info-grid--months .bookings-viewer-info-item{background:linear-gradient(135deg,#f0f9f5,#e8f5ef);border-color:#4caf5026;flex-direction:column;align-items:stretch;text-align:left;gap:8px;padding:10px;display:flex;height:auto;min-width:0}.bookings-viewer-month-card{min-height:auto;display:flex;flex-direction:column}.bookings-viewer-month-header{display:flex;justify-content:space-between;align-items:center;width:100%;padding-bottom:6px;border-bottom:1px solid rgba(76,175,80,.2);margin-bottom:6px}.bookings-viewer-month-header .bookings-viewer-info-label{color:#000;font-weight:600}.bookings-viewer-month-details{display:flex;flex-direction:column;gap:6px;width:100%;flex:1}.bookings-viewer-month-row{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;font-size:.75rem;align-items:center}.bookings-viewer-month-row:last-child{grid-template-columns:repeat(2,minmax(0,1fr))}.bookings-viewer-month-detail{display:flex;justify-content:space-between;align-items:center;gap:4px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bookings-viewer-info-grid--months .bookings-viewer-info-item:hover{background:linear-gradient(135deg,#e0f5e8,#d6f0e0);border-color:#4caf5040}.bookings-viewer-info-grid--race .bookings-viewer-info-item{flex-direction:row;justify-content:space-between;text-align:left;gap:8px;background:linear-gradient(135deg,#f5f0ff,#ede8f5);border-color:#9c27b026}.bookings-viewer-info-grid--race .bookings-viewer-info-item:hover{background:linear-gradient(135deg,#ede0ff,#e5d6f0);border-color:#9c27b040}.bookings-viewer-info-item:hover{background:linear-gradient(135deg,#e3ecf3,#d6e5f0);border-color:#1976d240;box-shadow:0 2px 6px #0000001a;transform:translateY(-1px)}.bookings-viewer-info-label{color:#666;font-size:.75rem;font-weight:500}.bookings-viewer-info-value{color:#333;font-size:.75rem;font-weight:600}.bookings-viewer-info-empty{color:#999;font-size:.8rem;font-style:italic;padding:10px;text-align:center}@media(max-width:768px){.bookings-viewer-modal{max-width:95%;width:95%;max-height:90vh;margin:10px}.bookings-viewer-modal-header{padding:10px 12px}.bookings-viewer-modal-header h2{font-size:.75rem}.bookings-viewer-modal-content{padding:10px 12px;overflow-y:auto;flex:1;min-height:0}.bookings-viewer-summary-row{display:flex!important;flex-wrap:wrap;gap:8px;margin-bottom:10px}.bookings-viewer-summary-row .bookings-viewer-info-item{flex:1 1 calc(50% - 4px);min-width:0;max-width:calc(50% - 4px);margin:0;padding:8px 10px;font-size:.75rem;display:flex;flex-direction:row;justify-content:space-between;align-items:center}.bookings-viewer-info-grid--months{grid-template-columns:repeat(2,1fr);gap:8px}.bookings-viewer-info-section h3{font-size:.7rem;margin-bottom:8px;padding-bottom:4px}.bookings-viewer-all-comparisons{max-height:60vh;grid-template-columns:1fr}.bookings-viewer-info-list,.bookings-viewer-info-grid{max-height:150px}.bookings-viewer-info-grid--race{grid-template-columns:repeat(2,1fr)}.bookings-viewer-info-row{flex-direction:column;gap:8px}.bookings-viewer-month-row{grid-template-columns:1fr;gap:6px}.bookings-viewer-month-header{flex-direction:column;align-items:flex-start;gap:4px;padding-bottom:4px}}@media(max-width:480px){.bookings-viewer-modal{max-width:98%;width:98%;margin:5px}.bookings-viewer-info-grid--months{grid-template-columns:1fr}.bookings-viewer-summary-row{display:flex!important;flex-wrap:wrap;gap:6px}.bookings-viewer-summary-row .bookings-viewer-info-item{flex:1 1 calc(50% - 3px);min-width:0;max-width:calc(50% - 3px);padding:8px 10px;font-size:.75rem;display:flex;flex-direction:row;justify-content:space-between;align-items:center}.bookings-viewer-modal-header h2{font-size:.7rem;line-height:1.3}}.install-overlay{position:fixed;inset:0;z-index:2100;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box;background:#0f172a66;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.install-modal{position:relative;width:min(400px,100%);max-height:min(90vh,640px);overflow-y:auto;padding:22px 20px 18px;border-radius:22px;background:#fffffff0;box-shadow:0 20px 50px #0000002e;color:#111827}.install-modal-close{position:absolute;top:12px;right:12px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:#e5e7eb;color:#374151;font-size:1.35rem;line-height:1;cursor:pointer;padding:0}.install-modal-close:hover{background:#d1d5db}.install-modal-header{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:4px 40px 0 12px;margin-bottom:8px}.install-modal-logo{display:block;width:min(204px,56%);height:auto;max-height:min(144px,22vh);object-fit:contain;object-position:center;border-radius:12px;flex-shrink:0;background:#f3f4f6}.install-modal-brand{min-width:0;width:100%}.install-modal-title{margin:0 0 6px;font-weight:700;font-size:1.05rem;line-height:1.25;color:#111827}.install-modal-rule{border:0;border-top:1px solid #e5e7eb;margin:14px 0}.install-modal-intro{margin:0;text-align:center;font-size:.92rem;line-height:1.5;color:#1f2937}.install-modal-steps{list-style:none;margin:0;padding:0}.install-step{display:flex;align-items:center;gap:14px;margin-bottom:16px}.install-step:last-child{margin-bottom:4px}.install-step-icon-wrap{width:44px;height:44px;border-radius:50%;background:#c5e8f0;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#0f172a}.install-step-icon-svg{width:22px;height:22px;display:block;overflow:visible}.install-step-chevron-down-mark{display:block;width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-top:12px solid currentColor;margin-top:2px}.install-step-text{font-weight:700;font-size:.92rem;line-height:1.35;color:#111827}.install-modal-footer{margin-top:18px;display:flex;flex-direction:column;gap:10px}.install-modal-btn{width:100%;border:none;border-radius:999px;padding:14px 18px;font-size:.95rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;font-family:inherit}.install-modal-btn-install{background:#0ea5e9;color:#fff}.install-modal-btn-install:hover{background:#0284c7}.install-modal-btn-back{background:#e5e7eb;color:#111827}.install-modal-btn-back:hover{background:#d1d5db}.install-back-chevron{width:20px;height:20px;flex-shrink:0}@media(min-width:768px){.install-modal{padding:24px 22px 20px}}
