*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#f8f4ef;--surface:#fff;--border:#e5d9cc;--border-soft:#f0e8de;--text:#1a1008;--text-soft:#6b5242;--text-muted:#9e8070;--accent:#c44b0a;--accent-light:#f9eae0;--accent-dark:#8f3508;--shadow-sm:0 1px 3px #643c1414;--shadow-md:0 4px 16px #643c141a;--radius:10px;--radius-sm:6px;--controls-w:340px}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:15px;line-height:1.55}.app-header{z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);background:#f8f4efeb;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:1rem;max-width:1400px;margin:0 auto;padding:.85rem 1.5rem;display:flex}.header-brand{align-items:center;gap:.75rem;display:flex}.header-fire{font-size:1.6rem}.header-title{letter-spacing:-.02em;color:var(--text);font-size:1.2rem;font-weight:700}.header-sub{color:var(--text-muted);margin-top:1px;font-size:.78rem}.header-back{color:var(--text-soft);white-space:nowrap;font-size:.82rem;text-decoration:none;transition:color .2s}.header-back:hover{color:var(--accent)}.app-body{grid-template-columns:var(--controls-w) 1fr;gap:0;max-width:1400px;min-height:calc(100vh - 57px);margin:0 auto;display:grid}.controls-panel{border-right:1px solid var(--border);background:var(--surface);scrollbar-width:thin;scrollbar-color:var(--border) transparent;height:calc(100vh - 57px);position:sticky;top:57px;overflow-y:auto}.controls-section{border-bottom:1px solid var(--border-soft);padding:1.5rem 1.25rem}.controls-location{border-bottom:none}.controls-heading{text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);margin-bottom:.3rem;font-size:.72rem;font-weight:700}.controls-sub{color:var(--text-soft);margin-bottom:1.25rem;font-size:.82rem}.metric-list{flex-direction:column;gap:1.1rem;display:flex}.metric-row{flex-direction:column;gap:2px;display:flex}.metric-label-row{align-items:center;gap:.4rem;display:flex}.metric-icon{font-size:.95rem}.metric-name{color:var(--text);flex:1;font-size:.88rem;font-weight:600}.metric-weight-val{color:var(--accent);text-align:right;min-width:18px;font-size:.82rem;font-weight:700}.metric-desc{color:var(--text-muted);margin-bottom:4px;padding-left:1.35rem;font-size:.75rem}.metric-slider{appearance:none;background:linear-gradient(to right, var(--accent) 0%, var(--accent) calc(var(--val,50%)), var(--border) calc(var(--val,50%)), var(--border) 100%);cursor:pointer;border-radius:2px;outline:none;width:100%;height:4px;transition:opacity .2s}.metric-slider::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent);cursor:pointer;border:2px solid #fff;border-radius:50%;width:18px;height:18px;transition:transform .15s;box-shadow:0 1px 4px #c44b0a66}.metric-slider::-webkit-slider-thumb:hover{transform:scale(1.15)}.metric-slider::-moz-range-thumb{background:var(--accent);cursor:pointer;border:2px solid #fff;border-radius:50%;width:18px;height:18px;box-shadow:0 1px 4px #c44b0a66}.slider-ticks{color:var(--text-muted);justify-content:space-between;margin-top:-1px;padding:0 1px;font-size:.67rem;display:flex}.select-label{color:var(--text-soft);margin-bottom:.4rem;font-size:.8rem;font-weight:600;display:block}.landmark-select{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);width:100%;color:var(--text);cursor:pointer;appearance:auto;margin-bottom:1rem;padding:.5rem .75rem;font-size:.88rem}.landmark-select:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px #c44b0a26}.proximity-row{margin-top:.25rem}.results-panel{padding:1.75rem 1.5rem 3rem}.results-header{margin-bottom:1.25rem}.results-title{letter-spacing:-.02em;color:var(--text);font-size:1.15rem;font-weight:700}.results-sub{color:var(--text-muted);margin-top:2px;font-size:.82rem}.chart-container{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-bottom:1.5rem;padding:1.25rem .5rem .5rem}.chart-title{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);text-align:center;margin-bottom:.25rem;font-size:.8rem;font-weight:600}.radar-tooltip{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);padding:.5rem .75rem;font-size:.82rem}.radar-tooltip-label{color:var(--text);margin-bottom:4px;font-weight:700}.radar-tooltip-item{margin:1px 0;font-weight:500}.results-list{flex-direction:column;gap:.85rem;display:flex}.restaurant-card{background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:1rem 1.1rem .85rem;transition:box-shadow .2s,transform .2s}.restaurant-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.restaurant-card--top{border-left-width:4px}.card-header{align-items:flex-start;gap:.65rem;margin-bottom:.6rem;display:flex}.card-rank{min-width:32px;padding-top:1px;font-size:1.15rem;font-weight:800}.card-name-block{flex:1}.card-name{color:var(--text);font-size:1rem;font-weight:700;line-height:1.25}.card-link{color:inherit;text-decoration:none}.card-link:hover{color:var(--accent)}.card-neighborhood{color:var(--text-muted);margin-top:1px;font-size:.78rem}.card-score-block{text-align:right}.card-match-pct{font-size:1.3rem;font-weight:800;line-height:1}.card-match-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.7rem}.card-score-bar{background:var(--border-soft);border-radius:2px;height:4px;margin-bottom:.65rem;overflow:hidden}.card-score-fill{border-radius:2px;height:100%;transition:width .4s}.card-meta{color:var(--text-soft);flex-wrap:wrap;align-items:center;gap:.3rem;margin-bottom:.55rem;font-size:.8rem;display:flex}.card-price{font-weight:600}.card-sep{color:var(--border)}.card-distance{color:var(--text-soft)}.card-accolades{flex-wrap:wrap;gap:.3rem;margin-bottom:.55rem;display:flex}.accolade-badge{background:var(--accent-light);color:var(--accent-dark);border-radius:4px;padding:2px 7px;font-size:.7rem;font-weight:600}.card-order{color:var(--text-soft);font-size:.8rem}.card-order-label{color:var(--text-soft);font-weight:700}.empty-state{background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius);text-align:center;color:var(--text-soft);padding:2rem 1.25rem;font-size:.9rem}.show-more-btn{border:1px solid var(--border);border-radius:var(--radius);width:100%;color:var(--text-soft);cursor:pointer;background:0 0;margin-top:.85rem;padding:.65rem 1rem;font-size:.88rem;font-weight:600;transition:all .2s;display:block}.show-more-btn:hover{background:var(--surface);border-color:var(--accent);color:var(--accent)}.results-note{color:var(--text-muted);border-top:1px solid var(--border-soft);margin-top:2rem;padding-top:1rem;font-size:.75rem;line-height:1.5}@media (width<=900px){.app-body{grid-template-columns:1fr}.controls-panel{border-right:none;border-bottom:1px solid var(--border);height:auto;position:static}.results-panel{padding:1.25rem 1rem 2rem}}@media (width<=540px){.header-inner{padding:.75rem 1rem}.header-title{font-size:1rem}}
