@font-face{font-family:Public Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/public-sans-v21-latin_latin-ext-regular.woff2)format("woff2")}@font-face{font-family:Public Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/public-sans-v21-latin_latin-ext-500.woff2)format("woff2")}@font-face{font-family:Public Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/public-sans-v21-latin_latin-ext-600.woff2)format("woff2")}@font-face{font-family:Public Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/public-sans-v21-latin_latin-ext-700.woff2)format("woff2")}@font-face{font-family:Archivo;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/archivo-v25-latin_latin-ext-600.woff2)format("woff2")}@font-face{font-family:Archivo;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/archivo-v25-latin_latin-ext-700.woff2)format("woff2")}@font-face{font-family:Archivo;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/archivo-v25-latin_latin-ext-800.woff2)format("woff2")}*,:before,:after{box-sizing:border-box}body,h1,h2,h3,h4,h5,h6,p,ul,ol,figure{margin:0;padding:0}html,body,#root{width:100%;height:100%}html{scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}body{background-color:var(--bg);color:var(--text-body);font-family:var(--font-body);-webkit-font-smoothing:antialiased;padding:var(--space-s);line-height:1.5;overflow:hidden}a{color:var(--text-body);text-decoration:none;transition:color .15s}a:hover,a:focus-visible{color:var(--link-hover)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible,[role=button]:focus-visible,[role=tab]:focus-visible,[role=option]:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--bg:#212121;--bg-alt:#252525;--bg-panel:#2b2b2b;--bg-row-alt:#292929;--text-body:#d6d8d4;--text-heading:#fff;--text-muted:#a0a0a0;--text-faded:#767676;--border-panel:#424242;--status-positive-bg:#3cb44b;--status-positive-text:#fff;--status-negative-bg:#b81d13;--status-negative-text:#fff;--status-warning-bg:#e6b800;--status-warning-text:#1a1a1a;--status-delta-positive:#66bb6a;--status-delta-negative:#ef5350;--bg-score:#272727;--shadow-overlay:#0006;--shadow-modal:#0009;--shadow-controls:#0000004d;--scrollbar-thumb:#4a4a4a;--scrollbar-track:#2b2b2b;--space-xs:.5rem;--space-s:1rem;--space-m:2rem;--space-l:4rem;--font-body:"Public Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-display:"Archivo", var(--font-body);--fs-2xs:.625rem;--fs-xs:.75rem;--fs-sm:.8125rem;--fs-md:.875rem;--fs-lg:1rem;--fs-xl:1.1875rem;--fs-2xl:1.25rem;--fs-3xl:2.75rem;--fs-display:6.5rem;--link-hover:#fff;--link-background-hover:#424242;--link-selected:#fff;--accent-blue:#06c;--focus-ring:#5aa2ff;--highlight-border:#fff3;--highlight-glow:#fff9}.dashboard-container{width:100%;min-width:0;height:100%;min-height:0;overflow:auto}.dashboard{gap:var(--space-xs);grid-template:"sidebar map-column search""sidebar map-column explorer"minmax(0,1fr)"sidebar performance explorer"clamp(200px,20vh,280px)"footer footer footer"/clamp(320px,22vw,400px) minmax(480px,1fr) clamp(360px,25vw,480px);width:100%;min-width:1176px;height:100%;min-height:800px;display:grid}.left-sidebar{gap:var(--space-xs);flex-direction:column;grid-area:sidebar;min-width:0;min-height:0;display:flex;overflow-y:auto}.dashboard-title,.dashboard-guide,.grade-chart,.map-column,.map-top,.map-stats,.map-view,.performance-chart,.search-panel,.explorer{min-width:0;min-height:0}.map-column{gap:var(--space-xs);flex-direction:column;grid-area:map-column;min-width:0;min-height:0;display:flex}.map-top{gap:var(--space-xs);z-index:30;flex-shrink:0;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;display:grid;position:relative}.map-top-single-row{grid-template-rows:minmax(0,1fr);gap:0}.map-view{flex:1;min-width:0;min-height:0}.performance-chart{grid-area:performance}.search-panel{grid-area:search}.explorer{grid-area:explorer}.dashboard-footer{background-color:var(--bg-panel);border:1px solid var(--border-panel);min-width:0;min-height:0;padding:var(--space-s);grid-area:footer;overflow:hidden}.dashboard-footer-bar{justify-content:space-between;align-items:center;gap:var(--space-s);width:100%;min-width:0;height:100%;font-family:var(--font-display);font-size:var(--fs-sm);text-transform:uppercase;color:var(--text-muted);font-weight:600;display:flex}.footer-location{white-space:nowrap;flex-shrink:0;align-items:center;gap:.5rem;display:flex}.footer-location-coords{color:var(--text-muted);text-transform:none}.footer-links{align-items:center;gap:.75rem;min-width:0;display:flex}.footer-links a{color:var(--text-muted);align-items:center;transition:color .15s;display:inline-flex}.footer-links a:hover{color:var(--link-hover)}.footer-divider{color:var(--border-panel)}.footer-copyright{white-space:nowrap;color:var(--text-muted);flex-shrink:0}.panel{background-color:var(--bg-panel);border:1px solid var(--border-panel);width:100%;height:100%;padding:var(--space-s);overflow:hidden}.panel h2{color:var(--text-heading);font-family:var(--font-display)}.dashboard-title .panel{height:100%;padding:var(--space-s)}.search-panel>.panel{height:100%}.panel-header{margin-bottom:var(--space-s);background-color:var(--bg-alt);justify-content:space-between;align-items:center;padding-top:.25rem;padding-bottom:.25rem;display:flex;position:relative}.panel-header .panel-header-title{color:var(--text-muted);font-size:var(--fs-md);text-transform:uppercase;font-weight:700;line-height:1.5;font-family:var(--font-display);margin:0;padding-left:.4rem}.panel-header .panel-header-title-section{font-size:var(--fs-sm);letter-spacing:.05em}.unit-mi{text-transform:none}.panel-header-info-button{color:var(--text-muted);cursor:pointer;padding:.2rem var(--space-s);font-size:var(--fs-lg);background:0 0;border:none}.panel-header-info-button:hover{color:var(--text-heading)}.panel-header-popup{z-index:10;background-color:var(--bg-panel);border:1px solid var(--border-panel);padding:var(--space-s);font-size:var(--fs-md);box-shadow:0 4px 12px var(--shadow-overlay);line-height:1.6;position:absolute;top:calc(100% + 4px);right:0}.panel-header-popup ul,.info-modal-content ul{margin:.5rem 0;padding-left:1.2rem}.info-popup-content{font-size:var(--fs-md);line-height:1.6}.info-popup-content ul{margin:.5rem 0;padding-left:1.2rem}.info-popup-section{margin-bottom:var(--space-s)}.info-popup-section:last-child{margin-bottom:0}.info-modal-overlay{background:var(--shadow-modal);z-index:10001;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.info-modal{background:var(--bg-panel);width:min(700px,100vw - 32px);max-height:calc(100vh - 64px);font-family:var(--font-body);box-sizing:border-box;font-size:var(--fs-md);color:var(--text-body);overflow-y:auto}.info-modal-header{background:inherit;justify-content:space-between;align-items:center;padding:1rem;display:flex;position:sticky;top:0}.info-modal-title{font-weight:700;font-family:var(--font-display)}.info-modal-close-button{cursor:pointer;color:var(--text-muted);background:0 0;border:none}.info-modal-close-button:hover{color:var(--link-hover)}.info-modal-content{padding:0 16px 16px}.info-modal-panel-header{border-radius:4px;margin-bottom:1.5rem}.dashboard-title-panel{padding:var(--space-s);flex-direction:column;justify-content:flex-start;display:flex}.dashboard-title-panel .panel-header{margin-bottom:0}.title-wrapper{flex-direction:column;width:100%;padding-left:.4rem;display:flex}.title-wrapper h1{text-transform:uppercase;flex-direction:column;gap:.15rem;margin:0;display:flex}.h1-large{font-family:var(--font-display);font-size:var(--fs-display);color:var(--text-muted);letter-spacing:-.05em;text-shadow:-3px 4px 0px var(--bg-alt);margin-left:-.06em;font-weight:700;line-height:1}.h1-med{font-family:var(--font-body);font-size:var(--fs-2xl);color:var(--text-muted);font-weight:700}.h1-small{font-family:var(--font-body);font-size:var(--fs-md);color:var(--text-muted);letter-spacing:.05rem;font-weight:700}.dashboard-filters{background-color:var(--bg-panel);border:1px solid var(--border-panel);flex-wrap:wrap;justify-content:center;align-items:stretch;width:100%;min-width:0;display:flex}.dashboard-grade-filters,.dashboard-borough-filters{min-width:0}.dashboard-grade-filters .panel,.dashboard-borough-filters .panel{background:0 0;border:none;justify-content:center;align-items:center;width:auto;height:100%;padding:.4rem 1rem;display:flex}.filter-group{justify-content:center;align-items:center;gap:var(--space-xs);flex-wrap:wrap;width:100%;height:100%;display:flex}.filter-options{display:contents}.filter-label{margin-right:var(--space-xs);font-family:var(--font-display);font-size:var(--fs-md);color:var(--text-muted);text-transform:uppercase;white-space:nowrap;align-items:center;font-weight:600;display:flex}.filter-label svg{font-size:var(--fs-lg);margin-right:.5rem}.filter-button{color:var(--text-muted);border:1px solid var(--border-panel);font-family:var(--font-display);text-transform:uppercase;cursor:pointer;white-space:nowrap;font-weight:700;font-size:var(--fs-sm);background:0 0;justify-content:center;align-items:center;padding:.5rem .6rem;display:flex}.filter-button:hover{color:var(--link-hover);background-color:var(--link-background-hover)}.filter-button.active{background-color:var(--bg-alt);border-color:var(--border-panel);color:var(--link-hover);border-bottom:3px solid var(--border-panel);font-weight:700}.filter-clear{margin-right:var(--space-s)}.desktop-filters-button-wrap{top:50%;right:var(--space-xs);position:absolute;transform:translateY(-50%)}.desktop-filters-button{background-color:var(--bg-panel);border:1px solid var(--border-panel);width:32px;height:32px;box-shadow:0 2px 4px var(--shadow-controls);color:var(--text-muted);font-size:var(--fs-lg);cursor:pointer;box-sizing:border-box;justify-content:center;align-items:center;display:flex;position:relative}.desktop-filters-button[aria-expanded=true]{background-color:var(--link-background-hover);color:var(--link-hover)}.desktop-filters-badge{z-index:30;background-color:var(--accent-blue);color:#fff;min-width:16px;height:16px;font-family:var(--font-body);font-size:var(--fs-2xs);border-radius:8px;justify-content:center;align-items:center;padding:0 3px;font-weight:700;line-height:1;display:flex;position:absolute;bottom:-6px;left:-6px}.desktop-filters-popover{top:calc(100% + var(--space-xs));z-index:20;width:max-content;max-width:720px;padding:var(--space-xs);border:1px solid var(--border-panel);background-color:var(--bg-panel);box-shadow:0 6px 16px var(--shadow-overlay);position:absolute;right:0}.desktop-filters-popover .panel-header{margin-bottom:0}.desktop-filters-popover .dashboard-filters{border:none;flex-direction:column;width:auto}.desktop-filters-popover .dashboard-grade-filters .panel,.desktop-filters-popover .dashboard-borough-filters .panel{justify-content:flex-start;padding-left:0}.desktop-filters-popover .dashboard-grade-filters .panel{border-bottom:1px solid var(--border-panel);padding-bottom:var(--space-xs)}.desktop-filters-popover .dashboard-borough-filters .panel{padding-top:var(--space-xs)}.desktop-filters-popover .filter-group{justify-content:flex-start}.desktop-filters-popover .filter-label{flex-shrink:0;width:5.5rem}.map-stats{align-self:start;min-width:0;min-height:0}.map-stats>.panel{padding:var(--space-xs) var(--space-s)}.stats-panel{width:100%;min-width:0;height:100%;font-family:var(--font-display);flex-direction:column;display:flex;position:relative}.stats-panel-line{justify-content:center;align-items:center;gap:var(--space-xs) var(--space-m);width:100%;min-width:0;height:100%;padding:0 var(--space-s);flex-wrap:wrap;display:flex}.stats-panel[data-has-filters-button]{padding:var(--space-s) var(--space-s);overflow:visible}.stats-panel[data-has-filters-button] .stats-panel-line{padding-right:3rem}.stats-total{white-space:nowrap;align-items:center;gap:.6rem;min-width:0;display:flex}.stats-total-icon{color:var(--text-muted);font-size:var(--fs-xl);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.stats-total-label{color:var(--text-muted);font-size:var(--fs-sm);text-transform:uppercase;font-weight:700}.stats-total-count{color:var(--text-body);font-size:var(--fs-sm);font-weight:700;line-height:1;font-family:var(--font-body)}.stats-breakdown{flex-wrap:wrap;align-items:center;row-gap:.25rem;min-width:0;display:flex}.stats-breakdown-item{border-left:1px solid var(--text-faded);white-space:nowrap;align-items:center;gap:.45rem;height:100%;padding:0 .75rem;display:flex}.stats-breakdown-item:first-child{border-left:none}.stats-breakdown-value{color:var(--text-body);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;font-weight:700;font-family:var(--font-body)}.stats-breakdown-label{font-size:var(--fs-sm);text-transform:uppercase;color:var(--text-muted);font-weight:700}.stats-breakdown-share{font-size:var(--fs-sm);font-variant-numeric:tabular-nums;margin-left:-.2rem;font-weight:700}.search-panel .panel-header{margin-bottom:var(--space-xs)}.search-panel-body{align-items:center;gap:var(--space-xs);display:flex}.search-input{background-color:var(--bg-alt);border:1px solid var(--border-panel);min-width:0;color:var(--text-body);padding:.4rem var(--space-xs);font:inherit;font-size:var(--fs-md);flex:1}.search-input::placeholder{color:var(--text-muted)}:root[data-input-modality=pointer] .search-input:focus{outline:none}.search-filter-toggle{border:1px solid var(--border-panel);width:36px;height:36px;color:var(--text-body);font-size:var(--fs-xl);cursor:pointer;background:0 0;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.search-filter-toggle:hover{background-color:var(--border-panel);color:var(--link-hover)}.search-input-wrapper{flex:1;position:relative}.search-input-wrapper .search-input{width:100%;padding-right:2rem}.search-clear-button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:.25rem;display:flex;position:absolute;top:50%;right:.5rem;transform:translateY(-50%)}.search-clear-button:hover{color:var(--link-hover)}.explorer{flex-direction:column;grid-area:explorer;width:100%;min-width:0;height:100%;min-height:0;display:flex}.explorer-tabs{border:1px solid var(--border-panel);background-color:var(--bg-panel);border-bottom:none;flex-shrink:0;display:flex}.explorer-tab{color:var(--text-muted);padding:var(--space-xs) var(--space-s);font-family:var(--font-display);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;font-weight:700}.explorer-tab:hover{color:var(--text-heading);background-color:var(--link-background-hover)}.explorer-tab.active{color:var(--text-heading);border-bottom-color:var(--border-panel);background-color:var(--bg-alt)}.explorer-tab:first-child,.explorer-tab:nth-child(2){border-right:1px solid var(--border-panel)}.explorer-content{flex:1;width:100%;min-width:0;min-height:0;position:relative;overflow:hidden}.explorer-content>div{width:100%;min-width:0;height:100%;overflow:hidden}.explorer-pane-hidden{display:none}.restaurant-list-panel{flex-direction:column;display:flex}.restaurant-list-container{flex-direction:column;width:100%;min-width:0;height:100%;display:flex;position:relative;overflow:hidden}.restaurant-list-empty{text-align:center;color:var(--text-muted);padding:var(--space-s);font-style:italic}.restaurant-list-pagination{font-size:var(--fs-sm);color:var(--text-muted);font-weight:600;font-family:var(--font-display);text-transform:uppercase;flex-shrink:0;justify-content:space-between;align-items:center;padding:.5rem 0;display:flex}.restaurant-list-pagination button{color:var(--text-muted);border:1px solid var(--border-panel);font-family:var(--font-display);font-size:var(--fs-sm);text-transform:uppercase;cursor:pointer;background:0 0;padding:.25rem .6rem;font-weight:700;transition:color .15s,background-color .15s}.restaurant-list-pagination button:hover:not(:disabled){background-color:var(--link-background-hover);color:var(--link-hover)}.restaurant-list-pagination button:disabled{opacity:.4;cursor:default}.pagination-text{font-family:var(--font-display);color:var(--text-muted);text-transform:uppercase}.pagination-num{font-family:var(--font-body);color:var(--text-body);text-transform:uppercase;font-weight:700}.restaurant-list-sort-bar{font-size:var(--fs-md);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.35rem .4rem;padding:.25rem .5rem .5rem;display:flex}.sort-label,.sort-then-label{color:var(--text-muted);font-weight:600;font-size:var(--fs-md)}.sort-then-label{font-weight:500}.restaurant-list-sort-bar .sort-dropdown-trigger{min-width:118px}.sort-direction-toggle-icon{gap:0;width:2.25rem;padding:0}.sort-select,.sort-direction-toggle{background:var(--bg-panel);color:var(--text-body);border:1px solid var(--border-panel);box-sizing:border-box;cursor:pointer;height:2.25rem;padding:.25rem .5rem;font-weight:600;line-height:1.2}.sort-direction-toggle{justify-content:center;align-items:center;gap:.35rem;display:inline-flex}.sort-direction-toggle:hover,.sort-select:hover{background-color:var(--link-background-hover);color:var(--link-hover)}.sort-dropdown{position:relative}.sort-dropdown-trigger{background:var(--bg-panel);min-width:160px;color:var(--text-body);border:1px solid var(--border-panel);font:inherit;cursor:pointer;box-sizing:border-box;justify-content:space-between;align-items:center;gap:.5rem;height:2.25rem;padding:.4rem .6rem;display:flex}.sort-dropdown-trigger:hover{background-color:var(--link-background-hover)}.sort-dropdown-chevron{font-size:var(--fs-xs);transition:transform .15s}.sort-dropdown-chevron.open{transform:rotate(180deg)}.sort-dropdown-menu{z-index:20;background:var(--bg-panel);border:1px solid var(--border-panel);margin:0;padding:0;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0}.sort-dropdown-menu:focus{outline:none}.sort-dropdown-option{color:var(--text-body);cursor:pointer;padding:.45rem .6rem;font-weight:600}.sort-dropdown-option:hover,.sort-dropdown-option.active,.sort-dropdown-option.selected{background-color:var(--link-background-hover);color:var(--link-hover)}.sort-dropdown-option.selected{background-color:var(--bg-alt)}.sort-dropdown-trigger-label{font-weight:600}.sort-direction-arrow{transition:transform .15s}.sort-direction-arrow.flipped{transform:rotate(180deg)}.restaurant-card-list{flex-direction:column;flex:1;gap:.5rem;width:100%;min-width:0;min-height:0;margin-bottom:.5rem;display:flex;position:relative;overflow:hidden auto}.card-meta-label{text-transform:uppercase;font-weight:600}.restaurant-card{background:var(--bg-alt);border:1px solid var(--border-panel);cursor:pointer;opacity:.85;justify-content:space-between;align-items:center;width:100%;min-width:0;min-height:80px;padding:.5rem .75rem;display:flex}.restaurant-list-container.with-distance .restaurant-card{min-height:100px}.restaurant-card.hovered{background:var(--bg-alt);border-color:var(--card-grade-color);opacity:1}@media (hover:hover){.restaurant-card:hover{background:var(--bg-alt);border-color:var(--card-grade-color);opacity:1}}.restaurant-card.selected{opacity:1;background:var(--bg-alt)}.card-main{flex-direction:column;flex:1;justify-content:center;min-width:0;height:100%;padding-right:.5rem;display:flex;overflow:hidden}.card-title{font-family:var(--font-display);font-weight:700;font-size:var(--fs-lg);-webkit-line-clamp:2;line-clamp:2;text-transform:uppercase;-webkit-box-orient:vertical;width:100%;line-height:1.1;display:-webkit-box;overflow:hidden}.card-subtext,.card-meta{font-size:var(--fs-sm);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;line-height:1.2;overflow:hidden}.card-badges{flex-shrink:0;align-items:center;gap:.35rem;display:flex}.badge-box{background:var(--bg-score);border:.5px solid var(--border-panel);flex-direction:column;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.badge-label{font-size:var(--fs-2xs);letter-spacing:.05em;color:var(--text-muted);margin-bottom:2px;font-weight:700;line-height:1}.badge-val{font-family:var(--font-body);font-weight:700;font-size:var(--fs-lg);font-variant-numeric:tabular-nums;line-height:1}.restaurant-details-panel{flex-direction:column;display:flex}.details-empty{color:var(--text-muted);margin-top:var(--space-s);font-style:italic}.details-hero-header{justify-content:space-between;align-items:center;width:100%;min-width:0;margin-bottom:1rem;padding-left:.4rem;display:flex}.details-hero-main{flex-direction:column;flex:1;justify-content:center;min-width:0;padding-right:.75rem;display:flex;overflow:hidden}.details-hero-title{font-family:var(--font-display);font-weight:700;font-size:var(--fs-lg);-webkit-line-clamp:2;line-clamp:2;text-transform:uppercase;-webkit-box-orient:vertical;width:100%;line-height:1.1;display:-webkit-box;overflow:hidden}.details-hero-badges{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.details-table{border-collapse:collapse;width:100%;font-size:var(--fs-md);margin-bottom:var(--space-xs)}.details-table td{padding:.4rem var(--space-xs)}.details-table td:first-child{color:var(--text-muted);width:40%}.restaurant-details-panel .details-table td:first-child{text-transform:uppercase;font-size:var(--fs-sm);font-weight:600}.details-table td:last-child{color:var(--text-body)}.details-table tr:nth-child(2n){background-color:var(--bg-row-alt)}.details-stale-note{font-size:var(--fs-md);color:var(--status-warning-bg)}.details-pending-note{text-align:left;font-size:var(--fs-sm);color:var(--text-body);margin-top:0;margin-bottom:0;display:block}.details-loading{color:var(--text-muted);font-style:italic;font-size:var(--fs-md);padding:var(--space-xs) .4rem}.section-header{background-color:var(--bg-alt);font-family:var(--font-display);font-weight:700;font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:.4rem;padding:.4rem 0 .4rem .4rem}.status-cell-content{flex-direction:column;align-items:flex-start;gap:.35rem;width:100%;display:flex}.status-notes-block{flex-direction:column;gap:.2rem;display:flex}.restaurant-report-panel{flex-direction:column;display:flex}.report-nav{border:1px solid var(--border-panel);margin:1rem 0;display:flex;overflow:hidden}.report-nav-btn,.report-nav-placeholder{text-align:center;font-size:var(--fs-sm);flex:1;padding:.4rem .6rem}.report-nav-btn{color:var(--text-muted);border:none;border-right:1px solid var(--border-panel);font-size:var(--fs-md);cursor:pointer;background:0 0;font-weight:600}.report-nav-btn:last-child{border-right:none}.report-nav-btn:hover{background-color:var(--link-background-hover);color:var(--link-hover)}.report-nav-placeholder{color:var(--text-muted);opacity:.6;border-right:1px solid var(--border-panel)}.report-nav-placeholder:last-child{border-right:none}.status-flag{margin-left:-.1rem}.status-open{background-color:var(--status-positive-bg);color:var(--status-positive-text)}.status-closed{background-color:var(--status-negative-bg);color:var(--status-negative-text)}.status-unknown{background-color:var(--border-panel);color:var(--text-muted)}.status-location-verified{background-color:var(--status-positive-bg);color:var(--status-positive-text)}.status-location-unverified{background-color:var(--status-warning-bg);color:var(--status-warning-text)}.status-location-pending{background-color:var(--border-panel);color:var(--text-muted)}.violations-list{gap:var(--space-xs);flex-direction:column;list-style:none;display:flex}.violations-list li{background-color:var(--bg-row-alt);border-left:3px solid var(--border-panel);padding:var(--space-xs);font-size:var(--fs-sm)}.violations-list li.violation-item{background-color:var(--bg-row-alt);border-left:3px solid var(--border-panel);flex-direction:column;gap:8px;padding:12px 16px;display:flex}.violation-code{margin-right:.5rem;font-weight:700}.violation-header-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.violation-tag{font-size:var(--fs-xs);text-transform:uppercase;font-weight:700;font-family:var(--font-display);border-radius:3px;align-items:center;padding:2px 6px;line-height:1.2;display:inline-flex}.violation-tag.severity-tag{white-space:nowrap}.violation-tag.violation-code-tag{background-color:var(--bg-alt);color:var(--text-body);letter-spacing:.05em;border:.5px solid var(--border-panel);font-family:var(--font-display)}.violation-tag.category-tag{background-color:var(--bg-alt);color:var(--text-body);border:.5px solid var(--border-panel)}.violation-description{color:var(--text-muted);font-size:var(--fs-md);text-align:justify;line-height:1.45}.inspection-history-list{flex-direction:column;list-style:none;display:flex}.inspection-history-list li{align-items:center;gap:var(--space-xs);padding:.4rem var(--space-xs);font-size:var(--fs-sm);cursor:pointer;display:flex}.inspection-history-list li:nth-child(2n){background-color:var(--bg-row-alt)}.inspection-history-list li:hover{background-color:var(--border-panel)}.inspection-row-selected{outline-offset:-1px;outline:1px solid}.inspection-row-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.inspection-row-date{flex:none;min-width:5.25rem}.inspection-row-grade{font-family:var(--font-body);text-align:center;width:2rem;font-weight:700}.inspection-row-score{font-family:var(--font-body);text-align:right;width:2rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.inspection-violation-counts{grid-template-columns:88px 122px;justify-content:center;align-items:center;gap:.5rem;margin:0 auto;display:grid}.violation-slot{justify-content:flex-end;align-items:center;min-width:0;display:flex}.violation-slot-full{grid-column:1/-1;justify-content:center;align-items:center;display:flex}.violation-count-item{align-items:center;gap:.3rem;display:inline-flex}.violation-count-val{font-family:var(--font-body);font-weight:700;font-size:var(--fs-sm);color:var(--text-body);font-variant-numeric:tabular-nums}.performance-chart-panel{z-index:10;flex-direction:column;display:flex;position:relative;overflow:visible}.performance-chart-panel .panel-header{margin-left:0;margin-right:0}.performance-chart-body{flex:1;min-height:0;overflow:visible}.performance-chart-body:focus,.performance-chart-body:focus-visible{outline:none}.performance-chart-body:focus-visible{box-shadow:inset 0 0 0 2px var(--text-heading)}:root[data-input-modality=pointer] .performance-chart-body:focus-visible{box-shadow:none}.performance-chart-body svg:focus,.performance-chart-body svg :focus{outline:none}.performance-chart-body circle:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px}.performance-tooltip{pointer-events:none;background:var(--bg-panel);border:1px solid var(--border-panel);padding:var(--space-xs);z-index:10;white-space:nowrap;position:absolute}.performance-tooltip-date{color:var(--text-muted);font-size:var(--fs-xs);text-transform:uppercase;margin-bottom:4px;font-weight:700}.performance-tooltip-score{color:var(--text-body);font-size:var(--fs-md)}.performance-tooltip-score span{font-family:var(--font-body);color:var(--text-heading);font-weight:600}.performance-tooltip-compact{background:0 0;border:none;gap:.25rem;padding:0;display:flex}.performance-tooltip-compact-box{background:var(--bg-score);border:.5px solid;border-color:color-mix(in srgb, currentColor 80%, transparent);width:1.7rem;height:1.7rem;font-family:var(--font-body);font-weight:700;font-size:var(--fs-sm);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;line-height:1;display:flex}.chart-dot{transition:all .2s ease-in-out}.chart-dot-hovered{filter:drop-shadow(0 0 6px var(--highlight-glow));z-index:10;transition:all .2s ease-in-out}.grade-chart{gap:var(--space-xs);min-width:0;min-height:160px;padding:var(--space-s);border:1px solid var(--border-panel);background-color:var(--bg-panel);flex-direction:column;flex:1;display:flex;overflow:hidden}.grade-chart>.grade-chart-panel{background:0 0;border:none;flex-direction:column;flex:1;height:auto;min-height:0;padding:0;display:flex}.grade-chart>.mobile-filter-notice-rule{border:none;border-top:1px solid var(--border-panel);flex-shrink:0;margin:0}.grade-chart>.mobile-filter-notice{font-family:var(--font-display);font-size:var(--fs-xs);text-align:center;text-transform:uppercase;letter-spacing:.02em;color:var(--text-muted);flex-shrink:0;margin:0;font-weight:600}.grade-chart .mobile-filter-notice-label{color:var(--text-body)}.grade-chart .mobile-filter-notice-lead,.grade-chart .mobile-filter-notice-borough{color:var(--text-faded)}.grade-chart-body{box-sizing:border-box;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:1rem;display:flex;position:relative}.grade-chart-svg-wrap{flex:1;width:100%;height:100%;min-height:0;position:relative}.grade-chart-svg-wrap svg:focus,.grade-chart-svg-wrap svg :focus{outline:none}.grade-chart-filter-note{border-top:1px solid var(--border-panel);width:100%;min-height:calc(.75rem + 2.6em);color:var(--text-muted);font-size:var(--fs-sm);text-transform:uppercase;text-align:center;text-wrap:balance;flex-shrink:0;margin:.75rem 0 0;padding-top:.75rem;font-weight:600;line-height:1.3}.grade-chart-empty{text-align:center;padding:2rem}.grade-chart-center{text-align:center;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;width:65%;max-width:180px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.grade-chart-legend{font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.02em;flex-wrap:wrap;justify-content:center;gap:0 .25rem;font-weight:700;line-height:1.35;display:flex}.grade-chart-legend-item{color:var(--legend-color);transition:opacity .15s,color .15s}.grade-chart-legend-sep{color:var(--text-muted)}.grade-chart-legend-group[data-dimmed=true] .grade-chart-legend-item{color:var(--text-muted);opacity:.45}.grade-chart-legend-group[data-dimmed=true] .grade-chart-legend-sep{opacity:.45}.grade-chart-percentages{font-family:var(--font-display);font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.02em;color:var(--text-muted);flex-wrap:wrap;flex-shrink:0;justify-content:center;gap:.15rem .5rem;margin:.75rem 0 0;padding:0;font-weight:600;line-height:1.3;list-style:none;display:flex}.grade-chart-percentage:not(:first-child):before{content:"|";color:var(--text-faded);margin-right:.5rem}.grade-chart-percentage-value{font-weight:700}.dashboard-guide-panel{flex-direction:column;min-height:0;display:flex;overflow-y:auto}.dashboard-guide-panel>.panel-header{flex-shrink:0}.dashboard-guide-content{flex:1;min-height:0;overflow-y:auto}.dashboard-guide-section{border:1px solid var(--border-panel);background-color:var(--bg-panel);border-bottom:none}.dashboard-guide-section:last-child{border-bottom:1px solid var(--border-panel)}.dashboard-guide-section summary{align-items:center;gap:var(--space-xs);background-color:var(--bg-alt);color:var(--text-muted);font-family:var(--font-display);font-size:var(--fs-xs);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;-webkit-user-select:none;user-select:none;padding:.55rem .65rem;font-weight:700;list-style:none;display:flex}.dashboard-guide-section summary::-webkit-details-marker{display:none}.dashboard-guide-chevron{color:var(--text-muted);font-size:var(--fs-xs);flex-shrink:0;transition:transform .15s}.dashboard-guide-section[open] .dashboard-guide-chevron{transform:rotate(90deg)}.dashboard-guide-section summary:hover,.dashboard-guide-section summary:focus-visible{color:var(--text-heading);background-color:var(--link-background-hover)}.dashboard-guide-section-content{font-size:var(--fs-sm);padding:.65rem .75rem .75rem;line-height:1.55}.dashboard-guide-section-content ul{margin:0;padding-left:1.15rem}.dashboard-guide-section-content li+li{margin-top:.35rem}.dashboard-guide-note{color:var(--text-muted);margin-top:.65rem;font-weight:600}.panel-scroll-content{flex:1;min-height:0;overflow-y:auto}.dashboard-guide-meta{border-top:1px solid var(--border-panel);flex-direction:column;gap:.75rem;padding:1rem;display:flex}.dashboard-guide-meta-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem 1.25rem;display:grid}.dashboard-guide-meta-item{flex-direction:column;gap:2px;min-width:0;display:flex}.dashboard-guide-meta-divider{border-top:1px solid var(--border-panel);width:100%;margin:.1rem 0}.dashboard-guide-meta-label{font-size:var(--fs-sm);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-weight:600;font-family:var(--font-display)}.dashboard-guide-meta-value{font-size:var(--fs-md);color:var(--text-body);font-weight:700}.dashboard-guide-meta-delta{font-size:var(--fs-sm);font-variant-numeric:tabular-nums;align-items:center;gap:2px;margin-left:.4rem;font-weight:700;display:inline-flex}.dashboard-guide-meta-delta-positive{color:var(--status-delta-positive)}.dashboard-guide-meta-delta-negative{color:var(--status-delta-negative)}.map-view-container{width:100%;min-width:0;height:100%;min-height:0;position:relative;overflow:hidden}.map-view-top-header{z-index:20;pointer-events:auto;position:absolute;top:1rem;right:1rem;width:max-content!important}.map-view-top-header .panel-header-title{display:none!important}.map-view-top-header .panel-header{background-color:var(--bg-panel);border:1px solid var(--border-panel);box-shadow:0 4px 12px var(--shadow-overlay);justify-content:center;align-items:center;margin-bottom:0;width:32px!important;height:32px!important;padding:0!important;display:flex!important}.map-view-top-header .panel-header-info-button{justify-content:center;align-items:center;width:100%;height:100%;display:flex;padding:0!important}.map-view-top-header .panel-header-popup{width:250px;left:auto;right:0}.legend-info-grid{flex-direction:column;gap:.2rem;display:flex}.legend-grade-text{font-family:var(--font-display);font-weight:700;font-size:var(--fs-md);text-transform:uppercase}.legend-scale-visual{justify-content:center;align-items:center;gap:.25rem;display:flex}.dot-sample{box-sizing:border-box;border-radius:50%;flex-shrink:0;display:inline-block}.legend-arrow{font-size:var(--fs-2xs);color:var(--text-muted)}.single-dot-align{justify-content:center;align-items:center;display:flex}.legend-score-text{font-size:var(--fs-md);color:var(--text-body);font-variant-numeric:tabular-nums;line-height:1.35}.legend-table td{vertical-align:middle;padding:.3rem}.legend-table td:first-child{white-space:nowrap;width:1%}.legend-table td:nth-child(2){text-align:center;width:3.25rem}.legend-sizing-list{flex-direction:column;gap:.5rem;margin-top:.5rem;display:flex}.legend-sizing-row{font-size:var(--fs-md);color:var(--text-body);justify-content:space-between;align-items:center;display:flex}.legend-grade-label{font-weight:700;font-family:var(--font-display);text-transform:uppercase;width:55px}.legend-range{font-family:var(--font-body);font-size:var(--fs-xs);color:var(--text-muted);text-align:right;font-variant-numeric:tabular-nums;width:50px}.map-canvas-wrapper{width:100%;min-width:0;height:100%;min-height:0;position:relative}.map-load-error{z-index:15;position:absolute;inset:0}.map-hover-card{background-color:var(--bg-panel);border:1px solid var(--border-panel);box-shadow:0 4px 12px var(--shadow-overlay);z-index:15;align-items:center;gap:.75rem;padding:.4rem .6rem;display:flex}.map-hover-card-name{font-family:var(--font-display);font-size:var(--fs-md);text-transform:uppercase;white-space:nowrap;font-weight:700}.map-hover-card-stats{align-items:center;gap:.35rem;display:flex}.map-hover-card .badge-box{border-radius:0}.map-bottom-controls{z-index:10;font-family:var(--font-display);font-size:var(--fs-sm);color:var(--text-muted);pointer-events:auto;align-items:center;gap:8px;display:flex;position:absolute;bottom:1.5rem;left:1rem}.map-control-label{background-color:var(--bg-panel);border:1px solid var(--border-panel);font-variant-numeric:tabular-nums;height:32px;box-shadow:0 2px 4px var(--shadow-controls);box-sizing:border-box;text-transform:uppercase;align-items:center;gap:6px;padding:0 .5rem;display:flex}.map-control-button{color:var(--text-body);font-family:inherit;font-size:inherit;cursor:pointer;text-underline-offset:3px;box-sizing:border-box;background:0 0;border:none;align-items:center;gap:4px;padding:2px 4px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;transition:color .15s;display:inline-flex}.map-control-button:hover{color:var(--link-hover)}.map-control-input{background:var(--bg-alt);color:var(--text-muted);border:1px solid var(--border-panel);font-family:inherit;font-size:inherit;box-sizing:border-box;font-variant-numeric:tabular-nums;appearance:textfield;padding:2px 4px}.map-control-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.map-control-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.map-control-input.scale-input{width:85px}.map-control-input.zoom-input{width:48px}.map-zoom-buttons-container{z-index:10;pointer-events:auto;position:absolute;top:1rem;left:1rem}.map-zoom-buttons-chip{background-color:var(--bg-panel);border:1px solid var(--border-panel);width:32px;height:64px;box-shadow:0 2px 4px var(--shadow-controls);box-sizing:border-box;flex-direction:column;display:flex}.map-zoom-button{border:none;border-bottom:1px solid var(--border-panel);color:var(--text-muted);font-family:var(--font-display);font-size:var(--fs-lg);cursor:pointer;background:0 0;flex:1;justify-content:center;align-items:center;width:100%;padding:0;font-weight:700;display:flex}.map-zoom-button:last-child{border-bottom:none}.map-zoom-button:hover:not(:disabled){color:var(--link-hover);background-color:var(--link-background-hover)}.map-zoom-button:disabled{color:var(--text-muted);cursor:not-allowed}.map-compass-container{z-index:10;pointer-events:auto;position:absolute;top:calc(1rem + 72px);left:1rem}.map-compass-button{background-color:var(--bg-panel);border:1px solid var(--border-panel);box-shadow:0 2px 4px var(--shadow-controls);color:var(--text-muted);cursor:pointer;box-sizing:border-box;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex}.map-compass-button:hover:not(:disabled){color:var(--link-hover);background-color:var(--link-background-hover)}.map-compass-button:disabled{color:var(--text-muted);cursor:default}.map-compass-button svg{transition:transform .2s}.map-basemap-toggle-container{z-index:10;pointer-events:auto;position:absolute;top:calc(1rem + 40px);right:1rem}.map-basemap-toggle-button{background-color:var(--bg-panel);border:1px solid var(--border-panel);box-shadow:0 2px 4px var(--shadow-controls);color:var(--text-muted);cursor:pointer;box-sizing:border-box;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex}.map-basemap-toggle-button:hover{color:var(--link-hover);background-color:var(--link-background-hover)}.map-search-radius-container{z-index:10;pointer-events:auto;position:absolute;top:calc(1rem + 80px);right:1rem}.map-search-radius-button{background-color:var(--bg-panel);border:1px solid var(--border-panel);box-shadow:0 2px 4px var(--shadow-controls);color:var(--text-muted);cursor:pointer;box-sizing:border-box;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex}.map-search-radius-button.active{color:var(--text-body)}.map-search-radius-button:hover{color:var(--link-hover);background-color:var(--link-background-hover)}.map-search-radius-panel{z-index:30;flex-direction:column;align-items:stretch;gap:.5rem;display:flex;position:absolute;top:0;right:calc(100% + .5rem)}.map-search-radius-header-label{box-sizing:border-box;background-color:var(--bg-panel);border:1px solid var(--border-panel);height:32px;box-shadow:0 2px 4px var(--shadow-controls);color:var(--text-body);font-family:var(--font-display);font-size:var(--fs-xs);letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;justify-content:center;align-items:center;padding:0 8px;display:flex}.search-radius-picker{gap:4px;display:flex}.search-radius-picker .filter-button{background-color:var(--bg-panel);height:32px;color:var(--text-muted);text-transform:none;flex:1;justify-content:center;align-items:center;padding:0 .5rem;display:flex}.search-radius-picker .filter-button.active{color:var(--text-body);box-shadow:inset 0 -2px 0 0 var(--border-panel);border-bottom:none}.map-user-location-container{z-index:10;pointer-events:auto;position:absolute;top:calc(1rem + 120px);right:1rem}.map-user-location-button{background-color:var(--bg-panel);border:1px solid var(--border-panel);box-shadow:0 2px 4px var(--shadow-controls);color:var(--text-muted);cursor:pointer;box-sizing:border-box;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex}.map-user-location-button:hover:not(:disabled){color:var(--link-hover);background-color:var(--link-background-hover)}.map-user-location-button:disabled{cursor:default}.map-user-location-button.active{color:#1a85ff}.map-user-location-button.muted{opacity:.55}.map-user-location-button.is-locating svg{animation:.8s linear infinite mapUserLocationSpin}@keyframes mapUserLocationSpin{to{transform:rotate(360deg)}}.map-user-location-panel{z-index:30;align-items:center;gap:.5rem;display:flex;position:absolute;top:0;right:calc(100% + .5rem)}.map-user-location-label{box-sizing:border-box;background-color:var(--bg-panel);border:1px solid var(--border-panel);height:32px;box-shadow:0 2px 4px var(--shadow-controls);color:var(--text-body);font-family:var(--font-display);font-size:var(--fs-xs);letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;align-items:center;padding:0 10px;display:flex}.map-user-location-clear{box-sizing:border-box;background-color:var(--bg-panel);border:1px solid var(--border-panel);width:32px;height:32px;box-shadow:0 2px 4px var(--shadow-controls);color:var(--text-muted);cursor:pointer;justify-content:center;align-items:center;padding:0;display:flex}.map-user-location-clear:hover{color:var(--link-hover);background-color:var(--link-background-hover)}.map-user-location-notice-anchor{z-index:20;pointer-events:none;position:absolute;top:1rem;left:50%;transform:translate(-50%)}.map-user-location-notice-anchor .filter-notice-overlay{background:var(--bg-panel);border:1px solid var(--border-panel);height:32px;box-shadow:0 2px 4px var(--shadow-controls);padding:0 10px;position:static;inset:auto}.map-user-location-notice-anchor .filter-notice-text{color:var(--text-body);font-family:var(--font-display);font-size:var(--fs-xs);letter-spacing:.03em;white-space:nowrap;text-transform:uppercase;font-weight:400}.map-placement-hint-anchor{z-index:20;pointer-events:none;position:absolute;top:1rem;left:50%;transform:translate(-50%)}.map-placement-hint-anchor .filter-notice-overlay{background:var(--bg-panel);border:1px solid var(--border-panel);height:32px;box-shadow:0 2px 4px var(--shadow-controls);padding:0 10px;animation:.2s forwards placementHintFadeIn;position:static;inset:auto}@keyframes placementHintFadeIn{0%{opacity:0}to{opacity:1}}.map-placement-hint-anchor .filter-notice-text{color:var(--text-body);font-family:var(--font-display);font-size:var(--fs-xs);letter-spacing:.03em;white-space:nowrap;font-weight:400}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);box-sizing:border-box;background-color:var(--bg-panel);border:1px solid var(--border-panel);height:32px;color:var(--text-body);font-family:var(--font-display);font-size:var(--fs-xs);letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;box-shadow:0 2px 4px var(--shadow-controls);opacity:0;pointer-events:none;z-index:30;align-items:center;padding:0 8px;transition:opacity .15s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}[data-tooltip]:focus-visible:after{opacity:1}@media (hover:hover){[data-tooltip]:hover:after{opacity:1}}[data-tooltip].tooltip-right:after{left:calc(100% + .5rem)}.map-control-button.tooltip-right:after{left:calc(100% + 1rem)}[data-tooltip].tooltip-left:after{right:calc(100% + .5rem)}.map-scale-bar-container{z-index:10;pointer-events:none;position:absolute;bottom:1.5rem;right:1rem}.map-scale-bar-chip{background-color:var(--bg-panel);border:1px solid var(--border-panel);box-shadow:0 2px 4px var(--shadow-controls);box-sizing:border-box;font-family:var(--font-display);font-size:var(--fs-sm);color:var(--text-muted);align-items:center;gap:8px;padding:.25rem .5rem;display:flex}.map-scale-bar-graphic{border-left:2px solid var(--text-body);border-right:2px solid var(--text-body);border-bottom:2px solid var(--text-body);box-sizing:border-box;height:6px;transition:width .15s}.map-scale-bar-text{font-variant-numeric:tabular-nums;text-transform:uppercase;white-space:nowrap}.esri-view{--esri-view-outline-color:transparent!important;--esri-view-outline:transparent!important}.esri-attribution{color:var(--text-muted)!important;font-family:var(--font-display)!important;text-transform:uppercase!important;font-size:var(--fs-xs)!important;background-color:#0000!important;padding:4px 0!important}.esri-attribution__sources{color:var(--text-muted)!important;text-transform:uppercase!important;padding-left:var(--space-xs)!important}.esri-attribution__powered-by{padding-right:var(--space-xs)!important}.map-view .esri-view :focus,.map-view .esri-view :focus-visible{outline:none}.map-view-skeleton{background-color:var(--bg-alt);border:1px solid var(--border-panel);justify-content:center;align-items:center;width:100%;height:100%;display:flex}.map-view-skeleton-label{font-family:var(--font-display);font-size:var(--fs-sm);text-transform:uppercase;color:var(--text-muted);font-weight:600;animation:1.6s ease-in-out infinite map-view-skeleton-pulse}@keyframes map-view-skeleton-pulse{0%,to{opacity:.6}50%{opacity:1}}.chart-skeleton{background-color:var(--bg-alt);border:1px solid var(--border-panel);justify-content:center;align-items:center;width:100%;height:100%;min-height:120px;display:flex}.chart-skeleton-label{font-family:var(--font-display);font-size:var(--fs-sm);text-transform:uppercase;color:var(--text-muted);font-weight:600;animation:1.6s ease-in-out infinite map-view-skeleton-pulse}.panel-error,.app-error{justify-content:center;align-items:center;gap:var(--space-xs);width:100%;height:100%;padding:var(--space-s);text-align:center;background-color:var(--bg-alt);border:1px solid var(--border-panel);flex-direction:column;display:flex}.app-error{min-height:100vh}.error-fallback-message{max-width:42ch;font-family:var(--font-display);font-size:var(--fs-sm);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-weight:600}.error-fallback-retry{font-family:var(--font-display);font-size:var(--fs-sm);text-transform:uppercase;color:var(--text-body);background-color:var(--bg-panel);border:1px solid var(--border-panel);cursor:pointer;padding:.4rem .9rem;font-weight:600;transition:color .15s,border-color .15s}.error-fallback-retry:hover{color:var(--link-hover);border-color:var(--accent-blue)}.filter-notice-live-region{display:contents}.filter-notice-overlay{background:var(--bg-alt);z-index:10;pointer-events:none;padding:var(--space-s);text-align:center;justify-content:center;align-items:center;animation:2s forwards filterNoticeFade;display:flex;position:absolute;inset:0}.filter-notice-text{color:var(--text-heading);font-size:var(--fs-sm);text-transform:uppercase;font-weight:700}@keyframes filterNoticeFade{0%{opacity:0}10%{opacity:1}80%{opacity:1}to{opacity:0}}@media (width<=1750px){body{overflow:auto}.dashboard-container{height:auto;overflow:visible}.dashboard{grid-template-rows:repeat(5,auto);grid-template-columns:1fr 1fr;grid-template-areas:"appbar appbar""map-column map-column""explorer explorer""performance performance""footer footer";min-width:0;height:auto;min-height:0}.left-sidebar{display:contents}.map-column{display:block}.map-top{margin-bottom:var(--space-xs);display:block}.map-view{height:min(65vh,560px)}.performance-chart{height:280px}.explorer{height:auto}.explorer-content{flex:none;height:min(70vh,600px)}}@media (width>=1751px) and (width<=2359px){:root{--fs-2xs:.5625rem;--fs-xs:.6875rem;--fs-sm:.75rem;--fs-md:.8125rem;--fs-lg:.9375rem;--fs-xl:1.0625rem;--fs-2xl:1.1875rem;--fs-display:5.5rem}.dashboard{grid-template-columns:clamp(320px,22vw,400px) minmax(480px,1fr) clamp(325px,22.5vw,430px)}.dashboard-grade-filters .panel,.dashboard-borough-filters .panel{padding:.4rem .5rem}.filter-clear{margin-right:var(--space-xs)}}@media (width>=1751px){.panel,.dashboard-title .panel,.grade-chart,.dashboard-footer{padding:var(--space-xs)}.dashboard-guide-meta{padding-bottom:0}.map-bottom-controls,.map-zoom-buttons-container,.map-compass-container{left:var(--space-xs)}.map-compass-container{top:calc(var(--space-xs) + 64px + 8px)}.map-zoom-buttons-container{top:var(--space-xs)}.map-view-top-header,.map-basemap-toggle-container,.map-search-radius-container{right:var(--space-xs)}.map-view-top-header{top:var(--space-xs)}.map-basemap-toggle-container{top:calc(var(--space-xs) + 40px)}.map-search-radius-container{top:calc(var(--space-xs) + 40px + 32px + 8px)}.map-scale-bar-container{right:var(--space-xs)}}@media (width<=1100px){.stats-panel-line{row-gap:var(--space-xs);column-gap:var(--space-s)}.stats-breakdown-item{padding:0 .4rem}}@media (width>=751px) and (width<=1750px){.tablet-appbar-region{z-index:20;grid-area:appbar;position:relative}.tablet-appbar-region .mobile-appbar{justify-content:space-between;align-items:center;gap:var(--space-s);padding:var(--space-xs);background-color:var(--bg-panel);border:1px solid var(--border-panel);display:flex}.tablet-appbar-region .mobile-appbar-brand{grid-template-columns:auto auto;align-items:center;column-gap:.7rem;min-width:0;line-height:1;display:grid}.tablet-appbar-region .mobile-appbar-wordmark{font-family:var(--font-display);font-weight:800;font-size:var(--fs-3xl);letter-spacing:-.02em;color:var(--text-muted);text-shadow:-2px 3px 0 var(--bg-alt);grid-row:1/3;align-self:center;line-height:.75}.tablet-appbar-region .mobile-appbar-subtitle{font-family:var(--font-display);font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;color:var(--text-muted);grid-area:1/2;align-self:end;margin:0;font-weight:700}.tablet-appbar-region .mobile-appbar-tagline{font-family:var(--font-body);font-size:var(--fs-xs);letter-spacing:.05rem;text-transform:uppercase;white-space:nowrap;color:var(--text-muted);grid-area:2/2;align-self:start;margin:3px 0 0;font-weight:700}.tablet-appbar-region .mobile-appbar-actions{flex-shrink:0;gap:6px;display:flex}.tablet-appbar-region .mobile-appbar-button{background-color:var(--bg-panel);border:1px solid var(--border-panel);width:32px;height:32px;box-shadow:0 2px 4px var(--shadow-controls);color:var(--text-muted);font-size:var(--fs-lg);cursor:pointer;box-sizing:border-box;justify-content:center;align-items:center;display:inline-flex;position:relative}.tablet-appbar-region .mobile-appbar-button:hover,.tablet-appbar-region .mobile-appbar-button[data-active]{background-color:var(--link-background-hover);color:var(--link-hover)}.tablet-appbar-region .mobile-appbar-badge{background-color:var(--accent-blue);color:#fff;min-width:16px;height:16px;font-family:var(--font-body);font-size:var(--fs-2xs);border-radius:8px;justify-content:center;align-items:center;padding:0 3px;font-weight:700;line-height:1;display:flex;position:absolute;top:-6px;right:-6px}.tablet-appbar-region .mobile-appbar-badge-dot{width:8px;min-width:8px;height:8px;padding:0;top:-4px;right:-4px}.tablet-appbar-region .mobile-search-drawer,.tablet-appbar-region .mobile-filter-drawer,.tablet-appbar-region .mobile-info-drawer{max-height:0;overflow:hidden}.tablet-appbar-region .mobile-search-drawer[data-open=true],.tablet-appbar-region .mobile-filter-drawer[data-open=true],.tablet-appbar-region .mobile-info-drawer[data-open=true]{margin-top:var(--space-xs);max-height:min(80vh,620px);overflow-y:auto}.tablet-appbar-region .mobile-search-drawer-card,.tablet-appbar-region .mobile-filter-drawer-card,.tablet-appbar-region .mobile-info-drawer-panel-body{padding:var(--space-s);border:1px solid var(--border-panel);background-color:var(--bg-panel)}.tablet-appbar-region .mobile-search-drawer-card .panel{background:0 0;border:none;padding:0}.tablet-appbar-region .mobile-info-drawer-panel+.mobile-info-drawer-panel{margin-top:var(--space-xs)}.tablet-appbar-region .mobile-filter-groups{gap:2rem var(--space-s);flex-flow:wrap;display:flex}.tablet-appbar-region .mobile-filter-groups .panel{background:0 0;border:none;flex:360px;min-width:0;padding:0}.tablet-appbar-region .mobile-filter-groups .filter-group{flex-flow:wrap;justify-content:flex-start;align-items:center;gap:.5rem .6rem;display:flex}.tablet-appbar-region .mobile-filter-groups .filter-label{background-color:var(--bg-alt);width:100%;color:var(--text-muted);font-weight:700;font-size:var(--fs-sm);letter-spacing:.05em;flex-shrink:0;margin:0;padding:.4rem 0 .4rem .4rem}.tablet-appbar-region .mobile-filter-groups .filter-label svg{font-size:var(--fs-sm);margin-right:.4rem}.tablet-appbar-region .mobile-filter-groups .filter-clear{margin:0 .35rem 0 0}.tablet-appbar-region .mobile-filter-groups .filter-button{font-size:var(--fs-sm);flex:none;padding:.5rem .6rem}.tablet-appbar-region .dashboard-guide-meta[data-compact=true]{padding:0 0 var(--space-s);border-top:none;border-bottom:1px solid var(--border-panel);grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem 1.25rem;display:grid}.tablet-appbar-region .dashboard-guide-meta[data-compact=true] .dashboard-guide-meta-item{flex-direction:column;gap:1px;min-width:0}.tablet-appbar-region .dashboard-guide-meta[data-compact=true] .dashboard-guide-meta-label,.tablet-appbar-region .dashboard-guide-meta[data-compact=true] .dashboard-guide-meta-value{font-size:var(--fs-sm)}.dashboard .map-view-top-header{display:none}.dashboard .map-zoom-buttons-container,.dashboard .map-compass-container{left:var(--space-xs)}.dashboard .map-basemap-toggle-container,.dashboard .map-search-radius-container,.dashboard .map-user-location-container{right:var(--space-xs)}.dashboard .map-compass-container{top:calc(1rem + 64px + var(--space-xs))}.dashboard .map-basemap-toggle-container{top:1rem}.dashboard .map-search-radius-container{top:calc(1rem + 32px + var(--space-xs))}.dashboard .map-user-location-container{top:calc(1rem + 80px)}.dashboard .map-bottom-controls{bottom:var(--space-xs);left:var(--space-xs)}.dashboard .map-scale-bar-container{bottom:var(--space-xs);right:var(--space-xs)}.tablet-kpi-bar{position:relative}.tablet-kpi-bar .stats-panel-line{padding-right:calc(32px + var(--space-xs) * 2)}.tablet-kpi-chevron-box{top:50%;right:var(--space-xs);width:32px;height:32px;color:var(--text-muted);font-size:var(--fs-md);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;transform:translateY(-50%)}.tablet-kpi-chevron-box:hover{color:var(--link-hover)}.tablet-kpi-chevron{transition:transform .15s}.tablet-kpi-chevron-box[data-open=true] .tablet-kpi-chevron{transform:rotate(180deg)}.tablet-kpi-drawer{max-height:0;overflow:hidden}.tablet-kpi-drawer[data-open=true]{margin-top:var(--space-xs);max-height:min(80vh,600px);overflow-y:auto}.tablet-kpi-drawer-chart{gap:var(--space-xs);padding:var(--space-s);border:1px solid var(--border-panel);background-color:var(--bg-panel);flex-direction:column;display:flex}.tablet-kpi-drawer-chart .grade-chart-panel{background:0 0;border:none;flex-direction:column;flex-shrink:0;height:min(46dvh,380px);padding:0;display:flex}.tablet-kpi-drawer-chart .grade-chart-panel>.panel-header{flex-shrink:0}.tablet-kpi-drawer-chart .mobile-filter-notice-rule{margin:var(--space-xs) 0 0;border:none;border-top:1px solid var(--border-panel)}.tablet-kpi-drawer-chart .mobile-filter-notice{font-family:var(--font-display);font-size:var(--fs-xs);text-align:center;text-transform:uppercase;letter-spacing:.02em;color:var(--text-muted);margin:0;font-weight:600}.tablet-kpi-drawer-chart .mobile-filter-notice-label{color:var(--text-body)}.tablet-kpi-drawer-chart .mobile-filter-notice-lead,.tablet-kpi-drawer-chart .mobile-filter-notice-borough{color:var(--text-faded)}}@media (width<=750px),(height<=480px) and (orientation:landscape){body{padding:0;overflow:hidden}.mobile-dashboard{--appbar-h:calc(60px + env(safe-area-inset-top));--strip-h:34px;--sheet-handle-h:32px;--explorer-tabs-h:52px;background-color:var(--bg);-webkit-tap-highlight-color:transparent;width:100%;height:100dvh;position:relative;overflow:hidden}.mobile-map{top:calc(var(--appbar-h) + var(--strip-h));position:absolute;bottom:0;left:0;right:0}.mobile-dashboard .map-bottom-controls{display:none}.mobile-dashboard .map-scale-bar-container{bottom:calc(var(--mobile-sheet-h,118px) + .5rem);display:none;right:.5rem}.mobile-dashboard[data-detent=peek] .map-scale-bar-container,.mobile-dashboard[data-detent=half] .map-scale-bar-container{display:block}.mobile-dashboard .map-zoom-buttons-container,.mobile-dashboard .map-compass-container{left:.5rem}.mobile-dashboard .map-basemap-toggle-container,.mobile-dashboard .map-search-radius-container,.mobile-dashboard .map-user-location-container{right:.5rem}.mobile-dashboard .map-view-top-header{display:none}.mobile-dashboard .map-basemap-toggle-container{top:1rem}.mobile-dashboard .map-search-radius-container{top:calc(1rem + 40px)}.mobile-dashboard .map-user-location-container{top:calc(1rem + 80px)}.mobile-dashboard .map-zoom-button:hover:not(:disabled){color:var(--text-muted);background-color:#0000}.mobile-dashboard .map-compass-button:hover:not(:disabled),.mobile-dashboard .map-basemap-toggle-button:hover,.mobile-dashboard .map-search-radius-button:hover,.mobile-dashboard .map-user-location-button:hover:not(:disabled),.mobile-dashboard .map-user-location-clear:hover{color:var(--text-muted);background-color:var(--bg-panel)}.mobile-dashboard .map-user-location-button.active:hover{color:#1a85ff}.mobile-dashboard .map-search-radius-button.active:hover,.mobile-dashboard .map-control-button:hover{color:var(--text-body)}:root[data-input-modality=pointer] .mobile-dashboard .map-zoom-button:focus,:root[data-input-modality=pointer] .mobile-dashboard .map-compass-button:focus,:root[data-input-modality=pointer] .mobile-dashboard .map-basemap-toggle-button:focus,:root[data-input-modality=pointer] .mobile-dashboard .map-search-radius-button:focus,:root[data-input-modality=pointer] .mobile-dashboard .map-user-location-button:focus,:root[data-input-modality=pointer] .mobile-dashboard .map-user-location-clear:focus{outline:none}.mobile-appbar{z-index:30;justify-content:space-between;align-items:center;gap:var(--space-xs);height:var(--appbar-h);padding:env(safe-area-inset-top) .5rem 0;background-color:var(--bg-panel);border-bottom:1px solid var(--border-panel);display:flex;position:absolute;top:0;left:0;right:0}.mobile-appbar-brand{flex-direction:column;gap:2px;min-width:0;line-height:1;display:flex}.mobile-appbar-wordmark{font-family:var(--font-display);font-weight:800;font-size:var(--fs-xl);letter-spacing:-.02em;color:var(--text-muted);text-shadow:-2px 2px 0 var(--bg-alt)}.mobile-appbar-subtitle{max-width:60vw;font-family:var(--font-display);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;text-overflow:ellipsis;color:var(--text-muted);font-weight:700;overflow:hidden}.mobile-appbar-tagline{max-width:80vw;font-family:var(--font-display);font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;text-overflow:ellipsis;color:var(--text-muted);font-weight:700;overflow:hidden}.mobile-appbar-actions{flex-shrink:0;gap:6px;display:flex}.mobile-appbar-button{background-color:var(--bg-panel);border:1px solid var(--border-panel);width:32px;height:32px;box-shadow:0 2px 4px var(--shadow-controls);color:var(--text-muted);font-size:var(--fs-lg);cursor:pointer;box-sizing:border-box;justify-content:center;align-items:center;display:inline-flex;position:relative}.mobile-appbar-button:hover,.mobile-appbar-button[data-active]{background-color:var(--link-background-hover);color:var(--link-hover)}.mobile-appbar-button:not([data-active]):hover{background-color:var(--bg-panel);color:var(--text-muted)}:root[data-input-modality=pointer] .mobile-appbar-button:focus{outline:none}.mobile-appbar-badge{background-color:var(--accent-blue);color:#fff;min-width:16px;height:16px;font-family:var(--font-body);font-size:var(--fs-2xs);border-radius:8px;justify-content:center;align-items:center;padding:0 3px;font-weight:700;line-height:1;display:flex;position:absolute;top:-6px;right:-6px}.mobile-appbar-badge-dot{border:1px solid var(--bg-panel);width:8px;min-width:8px;height:8px;padding:0;top:-4px;right:-4px}.mobile-search-drawer,.mobile-filter-drawer,.mobile-info-drawer{top:calc(var(--appbar-h) + var(--strip-h));z-index:26;max-height:0;position:absolute;left:0;right:0;overflow:hidden}.mobile-dashboard[data-front=drawer] .mobile-search-drawer,.mobile-dashboard[data-front=drawer] .mobile-filter-drawer,.mobile-dashboard[data-front=drawer] .mobile-info-drawer,.mobile-dashboard[data-front=drawer] .mobile-area-drawer{z-index:45}.mobile-search-drawer[data-open=true],.mobile-filter-drawer[data-open=true]{background-color:var(--bg-panel);max-height:min(82dvh,640px);box-shadow:0 6px 16px var(--shadow-overlay);overflow-y:auto}.mobile-info-drawer{pointer-events:none;flex-direction:column;display:flex}.mobile-info-drawer[data-open=true]{max-height:min(82dvh,640px)}.mobile-info-drawer-panel{background-color:var(--bg-panel);box-shadow:0 6px 16px var(--shadow-overlay);pointer-events:auto;flex-direction:column;display:flex}.mobile-info-drawer>.mobile-info-drawer-panel:first-child{flex:1;min-height:0}.mobile-info-drawer>.mobile-info-drawer-footer-panel{flex-shrink:0}.mobile-info-drawer-panel+.mobile-info-drawer-panel{margin-top:var(--space-xs)}.mobile-search-drawer-card,.mobile-filter-drawer-card,.mobile-area-drawer-chart,.mobile-info-drawer-panel-body{margin:var(--space-xs);padding:var(--space-xs);border:1px solid var(--border-panel);background-color:var(--bg-panel)}.mobile-info-drawer-panel:first-child .mobile-info-drawer-panel-body{flex:1;min-height:0;overflow-y:auto}.dashboard-guide-meta[data-compact=true]{padding:0 0 var(--space-s);border-top:none;border-bottom:1px solid var(--border-panel);grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem 1.25rem;display:grid}.dashboard-guide-meta[data-compact=true] .dashboard-guide-meta-item{flex-direction:column;gap:1px;min-width:0}.dashboard-guide-meta[data-compact=true] .dashboard-guide-meta-label{font-size:var(--fs-sm);letter-spacing:.06em;text-transform:uppercase}.dashboard-guide-meta[data-compact=true] .dashboard-guide-meta-value{font-size:var(--fs-sm);font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mobile-info-drawer-panel .info-popup-content{margin-top:var(--space-s)}.mobile-info-drawer-footer-panel .dashboard-footer{background:0 0;border:none;padding:0}.mobile-info-drawer-footer-panel .dashboard-footer-bar{height:auto;font-size:var(--fs-xs);letter-spacing:.04em;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.4rem}.mobile-info-drawer-footer-panel .footer-location,.mobile-info-drawer-footer-panel .footer-links,.mobile-info-drawer-footer-panel .footer-copyright{flex-wrap:wrap;justify-content:center}.mobile-filter-groups{flex-direction:column;gap:1.5rem;display:flex}.mobile-filter-groups .panel{background:0 0;border:none;padding:0}.mobile-filter-groups .filter-group{--filter-clear-w:3.75rem;flex-direction:column;align-items:stretch;display:flex}.mobile-filter-groups .filter-label{background-color:var(--bg-alt);width:100%;color:var(--text-muted);font-weight:700;font-size:var(--fs-sm);letter-spacing:.05em;margin:0 0 .4rem;padding:.4rem 0 .4rem .4rem}.mobile-filter-groups .filter-label svg{font-size:var(--fs-sm);margin-right:.4rem}.mobile-filter-groups .filter-options{padding-left:calc(var(--filter-clear-w) + .6rem);flex-wrap:wrap;justify-content:flex-start;gap:.5rem .6rem;display:flex}.mobile-filter-groups .filter-clear{margin:0 0 0 calc(-1 * (var(--filter-clear-w) + .6rem))}.mobile-filter-groups .filter-clear .filter-button{width:var(--filter-clear-w);min-width:0;padding-left:0;padding-right:0}.mobile-filter-groups .filter-button{font-size:var(--fs-sm);flex:none;padding:.5rem .6rem}.mobile-filter-groups .filter-button:not(.active):hover{color:var(--text-muted);background-color:#0000}.mobile-filter-groups .filter-button:not(.active):active{background-color:var(--bg-alt);color:var(--link-hover)}:root[data-input-modality=pointer] .mobile-filter-groups .filter-button:focus,.mobile-filter-groups .filter-clear .filter-button:focus,.mobile-filter-groups .filter-clear .filter-button:focus-visible{outline:none}.mobile-filter-notice-rule{margin:var(--space-s) 0;border:none;border-top:1px solid var(--border-panel)}.mobile-filter-notice{margin:var(--space-s) 0 0;font-family:var(--font-display);font-size:var(--fs-xs);text-align:center;text-transform:uppercase;letter-spacing:.02em;color:var(--text-muted);font-weight:600}.mobile-filter-notice-label{color:var(--text-body)}.mobile-filter-notice-lead,.mobile-filter-notice-borough{color:var(--text-faded)}.mobile-area-strip{top:var(--appbar-h);z-index:25;width:100%;height:var(--strip-h);background-color:var(--bg-alt);color:var(--text-muted);font-family:var(--font-display);font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.02em;cursor:pointer;border:none;align-items:center;gap:.5rem;padding:0 .5rem 0 .75rem;font-weight:700;display:flex;position:absolute;left:0;right:0}.mobile-area-strip-icon{font-size:var(--fs-md);flex-shrink:0}.mobile-area-strip-count{color:var(--text-body);font-family:var(--font-body);font-size:var(--fs-sm);flex-shrink:0}.mobile-area-strip-scope{flex-shrink:0}.mobile-area-strip-bar{background-color:var(--bg-panel);flex:1;min-width:40px;height:8px;display:flex;overflow:hidden}.mobile-area-strip-bar>span{min-width:0;display:block}.mobile-area-strip-chevron-box{flex-shrink:0;justify-content:center;align-items:center;width:32px;display:flex}.mobile-area-strip-chevron{font-size:var(--fs-md);flex-shrink:0}.mobile-area-strip[data-open=true] .mobile-area-strip-chevron{transform:rotate(180deg)}.mobile-area-drawer{top:calc(var(--appbar-h) + var(--strip-h));z-index:24;max-height:0;position:absolute;left:0;right:0;overflow:hidden}.mobile-area-drawer[data-open=true]{background-color:var(--bg-panel);max-height:min(74dvh,560px);box-shadow:0 6px 16px var(--shadow-overlay);overflow-y:auto}.mobile-area-drawer-chart{gap:var(--space-xs);flex-direction:column;display:flex}.mobile-area-drawer-chart .grade-chart-panel{background:0 0;border:none;flex-direction:column;flex-shrink:0;height:min(46dvh,380px);padding:0;display:flex}.mobile-area-drawer-chart .mobile-filter-notice{margin:0}.mobile-area-drawer-chart .mobile-filter-notice-rule{margin:var(--space-xs) 0 0}.mobile-area-drawer-chart .grade-chart-panel>.panel-header{flex-shrink:0}.mobile-area-drawer .stats-panel.panel{background:0 0;border:none;height:auto;padding:0}.mobile-area-drawer .stats-panel-line{height:auto}.mobile-area-drawer .stats-total{display:none}.mobile-area-drawer .stats-breakdown{justify-content:center}.mobile-sheet{z-index:40;background-color:var(--bg-panel);border-top:1px solid var(--border-panel);box-shadow:0 -4px 16px var(--shadow-overlay);flex-direction:column;display:flex;position:absolute;bottom:0;left:0;right:0}.mobile-dashboard[data-detent=peek] .mobile-sheet{height:auto;min-height:calc(118px + env(safe-area-inset-bottom));max-height:calc(50dvh + env(safe-area-inset-bottom));overflow:hidden auto}.mobile-dashboard[data-detent=peek][data-peek=empty] .mobile-sheet{height:calc(58px + env(safe-area-inset-bottom));min-height:0;overflow:hidden}.mobile-dashboard[data-detent=half] .mobile-sheet{height:calc((100dvh - var(--appbar-h) - var(--strip-h)) * .4)}.mobile-dashboard[data-detent=open] .mobile-sheet{height:calc(100dvh - var(--appbar-h) - var(--strip-h) - 16px)}.mobile-sheet-handle{width:100%;height:var(--sheet-handle-h);flex-shrink:0;justify-content:center;align-items:center;gap:1.5rem;display:flex}.mobile-sheet-handle-arrow{max-width:6rem;font-size:var(--fs-md);color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex:1;justify-content:center;align-items:center;padding:9px 12px 7px;display:flex}:root[data-input-modality=pointer] .mobile-sheet-handle-arrow:focus,:root[data-input-modality=pointer] .mobile-sheet-peek:focus,:root[data-input-modality=pointer] .mobile-area-strip:focus{outline:none}.mobile-sheet-peek-card{flex-shrink:0;padding:0 .625rem 8px}.mobile-sheet-peek{text-align:center;cursor:pointer;background:0 0;border:none;flex-shrink:0;width:100%;padding:0 .5rem 10px}.mobile-sheet-peek-label{max-width:90vw;font-family:var(--font-display);font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.02em;white-space:nowrap;text-overflow:ellipsis;color:var(--text-faded);font-weight:700;display:inline-block;overflow:hidden}.mobile-sheet-scroll{flex-direction:column;flex:1;min-height:0;padding:0 .625rem;display:flex}.mobile-sheet-scroll-body{gap:var(--space-xs);min-height:0;padding-bottom:calc(.75rem + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;display:flex;overflow:hidden auto}.mobile-dashboard[data-detent=half] .mobile-sheet-scroll,.mobile-dashboard[data-detent=open][data-tab=details] .mobile-sheet-scroll,.mobile-dashboard[data-detent=open][data-tab=report] .mobile-sheet-scroll{margin:var(--space-xs);margin-bottom:calc(var(--space-xs) + env(safe-area-inset-bottom));border:1px solid var(--border-panel);background-color:var(--bg-panel);padding:0}.mobile-dashboard[data-detent=open][data-tab=details] .mobile-sheet-scroll,.mobile-dashboard[data-detent=open][data-tab=report] .mobile-sheet-scroll{margin-top:0}.mobile-dashboard[data-detent=half] .mobile-explorer .explorer-content .panel,.mobile-dashboard[data-detent=open][data-tab=details] .mobile-explorer .explorer-content .panel,.mobile-dashboard[data-detent=open][data-tab=report] .mobile-explorer .explorer-content .panel,.mobile-dashboard[data-detent=half] .mobile-explorer .explorer-tabs,.mobile-dashboard[data-detent=open][data-tab=details] .mobile-explorer .explorer-tabs,.mobile-dashboard[data-detent=open][data-tab=report] .mobile-explorer .explorer-tabs{border:none}.mobile-search-drawer-card .panel{background:0 0;border:none;padding:0}.mobile-explorer{flex-direction:column;flex:1;min-height:0;display:flex}.mobile-explorer .explorer-tabs{min-height:var(--explorer-tabs-h)}.mobile-explorer .explorer-tab{font-size:var(--fs-xs);justify-content:center;align-items:center;padding:.5rem .35rem;display:flex}.mobile-explorer .explorer-tab:not(.active){border-bottom:1px solid var(--border-panel)}.mobile-explorer .explorer-content{flex:1;min-height:0;position:relative;overflow:hidden}.mobile-explorer .explorer-content .panel{padding:var(--space-xs)}.mobile-explorer .explorer-content .restaurant-details-panel,.mobile-explorer .explorer-content .restaurant-report-panel{padding-right:0}.mobile-explorer .restaurant-details-panel>.panel-header,.mobile-explorer .restaurant-report-panel>.panel-header{margin-right:.75rem}.mobile-explorer .restaurant-details-panel>.panel-scroll-content,.mobile-explorer .restaurant-report-panel>.panel-scroll-content{padding-right:.75rem}.mobile-dashboard[data-tab=list] .mobile-explorer .explorer-content,.mobile-dashboard[data-tab=list] .mobile-explorer .explorer-content>div,.mobile-dashboard[data-detent=open][data-tab=details] .mobile-explorer .explorer-content,.mobile-dashboard[data-detent=open][data-tab=report] .mobile-explorer .explorer-content,.mobile-dashboard[data-detent=half][data-tab=details] .mobile-explorer .explorer-content,.mobile-dashboard[data-detent=half][data-tab=report] .mobile-explorer .explorer-content,.mobile-dashboard[data-detent=open][data-tab=details] .mobile-explorer .explorer-content>div,.mobile-dashboard[data-detent=open][data-tab=report] .mobile-explorer .explorer-content>div,.mobile-dashboard[data-detent=half][data-tab=details] .mobile-explorer .explorer-content>div,.mobile-dashboard[data-detent=half][data-tab=report] .mobile-explorer .explorer-content>div,.mobile-dashboard[data-detent=open][data-tab=details] .mobile-explorer .panel-scroll-content,.mobile-dashboard[data-detent=open][data-tab=report] .mobile-explorer .panel-scroll-content,.mobile-dashboard[data-detent=half][data-tab=details] .mobile-explorer .panel-scroll-content,.mobile-dashboard[data-detent=half][data-tab=report] .mobile-explorer .panel-scroll-content{flex:none;height:auto;min-height:0;overflow:visible}.mobile-explorer .restaurant-list-container{height:auto}.mobile-explorer .restaurant-card-list{flex:none;min-height:auto;overflow:visible}.mobile-explorer .restaurant-list-pagination .pagination-text{text-align:center;flex:1;min-width:0}.mobile-explorer .restaurant-list-pagination .pagination-count{display:block}.mobile-explorer .restaurant-list-sort-bar{flex-wrap:nowrap;gap:.5rem;padding-bottom:1rem;padding-left:0;padding-right:0}.mobile-explorer .restaurant-list-sort-bar .sort-label,.mobile-explorer .restaurant-list-sort-bar .sort-then-label,.mobile-explorer .restaurant-list-sort-bar .sort-direction-toggle-icon{flex-shrink:0}.mobile-explorer .restaurant-list-sort-bar .sort-dropdown{flex:1 1 0;min-width:0}.mobile-explorer .restaurant-list-sort-bar .sort-dropdown-trigger{gap:.3rem;width:100%;min-width:0;padding:.4rem .45rem}.mobile-explorer .restaurant-list-sort-bar .sort-dropdown-trigger-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mobile-explorer .inspection-history-list li{justify-content:space-between;gap:.3rem;padding:.4rem .2rem}.mobile-explorer .inspection-row-date{width:4.75rem;min-width:0}.mobile-explorer .inspection-row-grade,.mobile-explorer .inspection-row-score{width:1.6rem}.mobile-explorer .inspection-violation-counts{grid-template-columns:72px 116px;gap:.25rem;margin:0}.mobile-explorer .inspection-history-list .violation-tag{font-size:var(--fs-xs);padding:2px 4px}.mobile-explorer .inspection-history-list .violation-count-val{font-size:var(--fs-xs)}.mobile-perf-chart{flex-shrink:0;height:240px}.mobile-perf-chart-info-open{height:auto}.mobile-perf-chart .panel{padding:var(--space-xs);border:none}.mobile-perf-chart-info-open>.panel>.panel-header{margin-right:.75rem}.mobile-perf-chart-info-open>.panel>.panel-scroll-content{padding-right:.75rem}}
