.parking-page{min-width:0}.parking-hero{padding:54px 0 30px;background:linear-gradient(180deg,#edf7f3 0%,#f7faf9 100%)}.parking-hero h1{max-width:900px}.parking-source-pill{display:inline-flex;margin-top:18px;padding:8px 12px;border:1px solid #c9e0d7;border-radius:999px;background:#fff;color:#31594a;font-size:.9rem;font-weight:800}.parking-layout{display:grid;grid-template-columns:minmax(300px,370px) minmax(0,1fr);gap:22px;align-items:start}.parking-controls{padding:22px;position:sticky;top:78px;box-shadow:0 16px 42px rgba(22,52,65,.08)}.parking-controls h2,.parking-results h2{margin:0 0 14px;font-size:1.5rem}.parking-label{display:block;margin-bottom:7px;font-size:.9rem;font-weight:850}.parking-search-wrap{position:relative}.parking-search-wrap .search{width:100%;min-height:50px;border:1px solid #cddde3;border-radius:13px;padding:12px 14px;background:#fff;font:inherit;color:var(--navy);box-shadow:0 1px 0 rgba(16,44,58,.03)}.parking-search-wrap .search:focus{border-color:#3b8f73;box-shadow:0 0 0 4px rgba(15,154,105,.09);outline:0}.parking-search-help{margin:8px 0 0;color:#536975;font-size:.84rem;line-height:1.5}.parking-suggestions{position:absolute;z-index:20;top:calc(100% + 6px);left:0;right:0;padding:6px;border:1px solid #ccdde3;border-radius:14px;background:#fff;box-shadow:0 18px 40px rgba(17,42,54,.16)}.parking-suggestions[hidden]{display:none}.parking-suggestion{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:44px;padding:9px 10px;border:0;border-radius:10px;background:transparent;color:var(--navy);font:inherit;font-weight:750;text-align:left;cursor:pointer}.parking-suggestion:hover,.parking-suggestion:focus-visible{background:#edf7f3}.parking-suggestion small{padding:3px 6px;border-radius:999px;background:#e8f2ee;color:#3f6557;font-size:.72rem}.parking-location{width:100%;margin-top:14px;min-height:46px}.parking-helper,.parking-status,.parking-count,.parking-id,.parking-fresh,.parking-selected-hint{font-size:.9rem;color:#526872}.parking-helper{line-height:1.5}.parking-quick{padding-top:15px;border-top:1px solid var(--line)}.parking-quick-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}.parking-quick-head strong{font-size:.96rem}.parking-quick-head span{padding:4px 8px;border-radius:999px;background:#f1f5f4;color:#5a6f77;font-size:.72rem;font-weight:800}.parking-quick .chips{gap:6px}.parking-place{min-height:42px}.parking-place[aria-pressed=true]{background:#0d3646;border-color:#0d3646;color:#fff}.parking-status{margin-top:16px;padding:12px 13px;border-radius:12px;background:#edf7f3;border:1px solid #d0e5dc;line-height:1.5}.parking-status[data-state=pending]{background:#fff8e8;border-color:#efd7a6;color:#70551f}.parking-status[data-state=unavailable]{background:#fff4f0;border-color:#f0c8bb;color:#704434}.parking-results-head,.parking-card-top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.parking-selected-summary{min-width:0;padding:2px 0 12px}.parking-results-kicker{display:block;margin-bottom:4px;color:#4a6e60;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.parking-results h2{margin-bottom:7px}.parking-results h2 span{color:#0d7454}.parking-selected-hint{margin:0 0 5px;line-height:1.45}.live-badge[data-state=pending]{background:#fff0c8;color:#7b5c13}.live-badge[data-state=unavailable]{background:#fbe2d8;color:#814937}.parking-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.parking-card{padding:18px;display:flex;flex-direction:column;min-width:0}.parking-card h3{font-size:1.06rem;margin:0 0 4px;overflow-wrap:anywhere}.parking-id{margin:0;font-size:.78rem}.parking-distance{padding:5px 8px;border-radius:999px;background:#e7f2ee;color:#156548;font-size:.78rem;white-space:nowrap}.parking-facts{display:flex;flex-wrap:wrap;gap:7px 13px;margin:15px 0;color:#4a606b;font-size:.9rem}.parking-directions{margin-top:auto;align-self:flex-start;min-height:42px}.parking-empty{grid-column:1/-1;padding:34px;text-align:center;border:1px dashed var(--line);border-radius:16px;background:#fff;font-size:.95rem}.parking-state-card{display:flex;align-items:flex-start;justify-content:center;gap:13px;text-align:left}.parking-state-card>div{max-width:620px}.parking-state-card strong{display:block;margin-bottom:5px;font-size:1.02rem}.parking-state-card p{margin:0;line-height:1.55}.parking-state-icon{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:50%;font-weight:950}.parking-pending{background:#fff8e8;border-color:#efd7a6;color:#684f1e}.parking-pending .parking-state-icon{background:#ffe9ae}.parking-error{background:#fff4f0;border-color:#efc7bb;color:#704434}.parking-error .parking-state-icon{background:#f7d7cd}.parking-info{padding-top:20px}.parking-info .info-card p{font-size:.95rem;line-height:1.6}.parking-page :focus-visible{outline:3px solid rgba(15,154,105,.28);outline-offset:3px}@media(max-width:900px){.parking-layout{grid-template-columns:1fr}.parking-controls{position:static}.parking-results-head{padding-top:2px}}@media(max-width:620px){.parking-hero{padding:38px 0 22px}.parking-controls{padding:17px}.parking-results-head{align-items:flex-start}.parking-results h2{font-size:1.3rem}.parking-grid{grid-template-columns:1fr}.parking-place{min-height:44px}.parking-directions{width:100%;min-height:44px;text-align:center}.parking-search-wrap .search{font-size:16px}.parking-source-pill{font-size:.82rem}.parking-state-card{justify-content:flex-start}.parking-quick-head{align-items:flex-start;flex-direction:column;gap:5px}}