.teacher-map{gap:10px;margin-bottom:22px;display:grid}.teacher-map-canvas{border-radius:var(--radius-l,22px);background:#eef1f4;border:1px solid #3261f224;height:clamp(360px,58vh,560px);position:relative;overflow:hidden}.teacher-map-state{margin:0;position:absolute}.teacher-map{position:relative}.teacher-map>.teacher-map-state{border-radius:var(--radius-pill,999px);color:#30333b;font-size:var(--text-caption);background:#ffffffeb;padding:8px 14px;font-weight:700;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 6px 20px #11131914}.teacher-map>.teacher-map-state.is-failed{color:#8a3a12}.teacher-map-note{color:var(--muted);font-size:var(--text-caption);margin:0;line-height:1.55}.teacher-map-note strong{color:var(--ink)}.teacher-map-you{background:#e0752d;border:3px solid #fff;border-radius:50%;width:18px;height:18px;box-shadow:0 0 0 6px #e0752d38}.teacher-map-popup-shell .maplibregl-popup-content{border-radius:14px;padding:12px 30px 12px 12px;font-family:inherit;box-shadow:0 12px 32px #11131929}.teacher-map-popup-shell .maplibregl-popup-close-button{border-radius:50%;width:24px;height:24px;font-size:18px;line-height:1;top:6px;right:6px}.teacher-map-popup{grid-template-columns:52px minmax(0,1fr);align-items:start;gap:10px;display:grid}.teacher-map-popup-photo{object-fit:cover;color:#fff;background:var(--blue);border-radius:12px;place-items:center;width:52px;height:52px;font-size:20px;font-weight:800;display:grid}.teacher-map-popup>div{gap:3px;min-width:0;display:grid}.teacher-map-popup strong{color:var(--ink);font-size:var(--text-ui);line-height:1.3}.teacher-map-popup span{color:var(--muted);font-size:var(--text-caption);line-height:1.4}.teacher-map-popup .teacher-map-popup-price{color:var(--blue-dark);font-weight:800}.teacher-map-popup a{color:var(--blue);font-size:var(--text-caption);text-underline-offset:3px;justify-self:start;margin-top:4px;font-weight:800;text-decoration:underline}.near-section{background:var(--warm);padding-top:40px}.hero-near{z-index:2;border-radius:var(--radius-xl,28px);background:var(--white);border:1px solid #3261f21f;gap:14px;padding:22px;scroll-margin-top:96px;display:grid;position:relative;box-shadow:0 18px 50px #1113190f}.hero-near-head{gap:6px;display:grid}.hero-near-head h2{letter-spacing:-.02em;margin:0 0 6px;font-size:clamp(24px,2.6vw,32px);font-weight:900;line-height:1.2}.hero-near-head p{max-width:60ch;color:var(--muted);margin:0;line-height:1.55}.hero-near-search{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;max-width:720px;display:grid}.hero-near-search label{gap:6px;min-width:0;display:grid}.hero-near-search label>span{color:#2d313bb8;font-size:var(--text-caption);font-weight:700}.hero-near-search select{border-radius:var(--radius-m,14px);width:100%;min-height:52px;color:var(--ink);font:inherit;font-size:var(--text-ui);appearance:none;cursor:pointer;text-overflow:ellipsis;background:#fbfbf8 url(/filter-chevron.svg) right 12px center/26px 26px no-repeat;border:1px solid #d7d9df;padding:0 48px 0 14px;font-weight:650}.hero-near-search select:focus-visible{border-color:var(--blue);outline:none;box-shadow:0 0 0 3px #3261f224}.hero-near-search .button{white-space:nowrap;min-height:52px;padding:0 28px}.hero-near-alert{color:#8a3a12;font-size:var(--text-caption);margin:0;font-weight:700}.hero-near .teacher-map{margin:0}.hero-near .teacher-map-canvas{height:clamp(320px,46vh,460px)}.hero-near-placeholder{border-radius:var(--radius-l,22px);background:linear-gradient(135deg,#eef1f4,#f6f7f9);place-items:center;height:clamp(320px,46vh,460px);display:grid}.hero-near-placeholder span{color:#30333b;font-size:var(--text-caption);background:#ffffffeb;border-radius:999px;padding:7px 13px;font-weight:700}.hero-near-results h3{font-size:var(--text-ui);margin:4px 0 10px;font-weight:850}.hero-near-results ul{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.hero-near-results a{height:100%;color:inherit;border:1px solid #e6e8ee;border-radius:16px;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:10px;padding:10px;text-decoration:none;transition:border-color .2s,transform .2s;display:grid}.hero-near-results a:hover{border-color:var(--blue);transform:translateY(-1px)}.hero-near-results img,.hero-near-initial{object-fit:cover;width:48px;height:48px;color:var(--white);background:var(--blue);border-radius:12px;place-items:center;font-weight:800;display:grid}.hero-near-card{gap:2px;min-width:0;display:grid}.hero-near-card strong{font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hero-near-card span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.hero-near-card .hero-near-distance{color:#8a3a12;font-weight:750}@media (width<=960px){.hero-near-results ul{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.near-section{padding-top:24px}.hero-near{border-radius:var(--radius-l,22px);padding:16px}.hero-near-search{grid-template-columns:minmax(0,1fr)}.hero-near-search select{font-size:16px}.hero-near-search .button{width:100%}.hero-near .teacher-map-canvas,.hero-near-placeholder{height:340px}.hero-near-results ul{grid-template-columns:minmax(0,1fr)}}.location-picker{gap:10px;display:grid}.location-picker-search{grid-template-columns:minmax(0,1fr) auto auto;gap:8px;display:grid}.location-picker-search input{border-radius:var(--radius-m,14px);min-width:0;min-height:44px;font:inherit;font-size:var(--text-ui);background:#fbfbf8;border:1px solid #d7d9df;padding:0 12px}.location-picker-search input:focus-visible{border-color:var(--blue);outline:none;box-shadow:0 0 0 3px #3261f224}.location-picker-search button{border-radius:var(--radius-m,14px);min-height:44px;color:var(--ink);background:var(--white);font:inherit;font-size:var(--text-caption);white-space:nowrap;cursor:pointer;border:1px solid #d7d9df;padding:0 14px;font-weight:750}.location-picker-search button:disabled{cursor:default;opacity:.6}.location-picker-search .location-picker-mine{border-color:var(--blue);color:var(--blue-dark);align-items:center;gap:6px;display:inline-flex}.location-picker-results{gap:4px;margin:0;padding:0;list-style:none;display:grid}.location-picker-results button{width:100%;color:var(--ink);background:var(--white);font:inherit;font-size:var(--text-caption);text-align:left;cursor:pointer;border:1px solid #e3e5ea;border-radius:10px;padding:9px 12px}.location-picker-results button:hover{border-color:var(--blue)}.location-picker-map{cursor:crosshair;background:#eef1f4;border:1px solid #3261f229;border-radius:16px;height:300px;position:relative;overflow:hidden}.location-picker.is-invalid .location-picker-map{border-color:#c4472b;box-shadow:0 0 0 3px #c4472b1f}.location-picker-state{z-index:1;font-size:var(--text-caption);background:#ffffffeb;border-radius:999px;margin:0;padding:7px 13px;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.location-picker-status{color:#30333b;font-size:var(--text-caption);margin:0;font-weight:700}.location-picker-status.is-set{color:#1f6b33}.location-picker-privacy{color:var(--muted);font-size:var(--text-caption);margin:0;line-height:1.5}@media (width<=560px){.location-picker-search{grid-template-columns:minmax(0,1fr) auto}.location-picker-search .location-picker-mine{grid-column:1/-1;justify-content:center}.location-picker-search input{font-size:16px}.location-picker-map{height:280px}}.teacher-location-card{gap:14px;display:grid}.teacher-location-card .dashboard-card-heading{margin-bottom:0}.teacher-location-lead{color:#30333b;max-width:68ch;margin:0;line-height:1.6}.teacher-location-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.teacher-location-remove{color:#a1371b;font:inherit;font-size:var(--text-caption);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:4px;font-weight:700;text-decoration:underline}.teacher-location-message{color:#1f6b33;font-size:var(--text-caption);margin:0;font-weight:700}
