.dir-shell{background:var(--pc-space);width:100%;height:calc(100dvh - 52px);position:relative;overflow:hidden}.dir-map{position:absolute;inset:0}.dir-stars{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.dir-shell .mapboxgl-canvas{background:0 0}.dir-panel{background:var(--card);width:360px;color:var(--card-foreground);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-panel);z-index:2;flex-direction:column;display:flex;position:absolute;top:12px;bottom:12px;left:12px;overflow:hidden}.dir-panel--closed{display:none}.dir-search{border-bottom:1px solid var(--border);flex-direction:column;gap:8px;padding:14px;display:flex}.dir-title{font-family:var(--font-heading);margin:0 0 2px;font-size:18px;font-weight:700}.dir-q{background:var(--field-bg);border:var(--field-border);border-radius:var(--field-radius);color:var(--muted-foreground);align-items:center;gap:8px;padding:0 10px;display:flex}.dir-q:focus-within{border-color:var(--field-focus);box-shadow:var(--field-focus-ring)}.dir-q input{min-width:0;height:38px;color:var(--foreground);background:0 0;border:0;outline:0;flex:1;font-size:14px}.dir-filters{grid-template-columns:1fr 1fr;gap:8px;display:grid}.dir-filters select{background:var(--field-bg);border:var(--field-border);border-radius:var(--field-radius);min-width:0;height:36px;color:var(--foreground);padding:0 8px;font-size:13px}.dir-actions{gap:8px;display:flex}.dir-btn{background:var(--secondary);height:34px;color:var(--secondary-foreground);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;justify-content:center;align-items:center;gap:4px;padding:0 14px;font-size:13px;font-weight:600;display:inline-flex}.dir-btn:disabled{opacity:.4;cursor:default}.dir-btn--primary{background:var(--primary);color:var(--primary-foreground);border-color:#0000}.dir-results{flex-direction:column;flex:1;min-height:0;display:flex}.dir-count{color:var(--muted-foreground);border-bottom:1px solid var(--border);padding:10px 14px;font-size:12px;font-weight:600}.dir-err{color:var(--destructive)}.dir-list{flex:1;min-height:0;margin:0;padding:4px 0;list-style:none;overflow-y:auto}.dir-results[aria-busy=true] .dir-list{opacity:.6}.dir-list button{text-align:left;width:100%;color:inherit;cursor:pointer;background:0 0;border:0;flex-direction:column;gap:2px;padding:9px 14px;display:flex}.dir-list button:hover,.dir-list button:focus-visible{background:var(--accent);color:var(--accent-foreground);outline:0}.dir-name{font-size:14px;font-weight:600}.dir-meta{color:var(--muted-foreground);font-size:12px}.dir-pager{border-top:1px solid var(--border);color:var(--muted-foreground);justify-content:space-between;align-items:center;gap:8px;padding:8px 14px;font-size:12px;display:flex}.dir-card{flex:1;min-height:0;padding:14px;overflow-y:auto}.dir-back{color:var(--muted-foreground);cursor:pointer;background:0 0;border:0;align-items:center;gap:2px;margin-bottom:10px;padding:0;font-size:13px;display:inline-flex}.dir-card h2{font-family:var(--font-heading);margin:0 0 4px;font-size:20px;font-weight:700}.dir-kind{color:var(--muted-foreground);margin:0 0 14px;font-size:13px}.dir-card dl{flex-direction:column;gap:10px;margin:0;display:flex}.dir-card dl>div{grid-template-columns:20px 1fr;gap:8px;font-size:14px;display:grid}.dir-card dt{color:var(--muted-foreground);padding-top:2px}.dir-card dd{overflow-wrap:anywhere;flex-direction:column;min-width:0;margin:0;display:flex}.dir-card a{color:var(--primary);text-decoration:none}.dir-card a:hover{text-decoration:underline}.dir-desc{color:var(--muted-foreground);white-space:pre-line;margin:14px 0 0;font-size:13px;line-height:1.55}.dir-toggle{z-index:3;background:var(--primary);height:36px;color:var(--primary-foreground);box-shadow:var(--shadow-pop);cursor:pointer;border:0;border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:600;display:none;position:absolute;bottom:28px;left:12px}.dir-shell .mapboxgl-ctrl-group{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-pop)}.dir-shell .mapboxgl-ctrl-group button+button{border-top-color:var(--border)}.dir-shell .mapboxgl-ctrl-group button .mapboxgl-ctrl-icon{filter:invert()}@media (max-width:760px){.dir-toggle{display:inline-flex}.dir-panel{border-radius:var(--radius-lg) var(--radius-lg) 0 0;border-bottom:0;width:auto;max-height:58%;inset:auto 0 0}.dir-panel:not(.dir-panel--closed)~.dir-toggle{bottom:calc(58% + 10px)}.dir-shell:has(.dir-panel:not(.dir-panel--closed)) .dir-toggle{bottom:calc(58% + 10px)}.dir-search{padding:12px}.dir-title{display:none}}.dir-sub{font-family:var(--font-heading);color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.06em;margin:0;padding:12px 14px 4px;font-size:13px;font-weight:700}.dir-discover{border-top:1px solid var(--border);padding:12px 14px 14px}.dir-discover h2{font-family:var(--font-heading);color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.06em;margin:0 0 8px;font-size:13px;font-weight:700}.dir-cats{grid-template-columns:1fr 1fr;gap:6px;display:grid}.dir-chip{--tone:var(--primary);text-align:left;background:var(--secondary);min-width:0;color:var(--foreground);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;grid-template-rows:auto auto;grid-template-columns:28px 1fr;align-items:center;column-gap:8px;padding:7px 8px;transition:border-color .15s,background .15s;display:grid}.dir-chip-icon{width:28px;height:28px;color:var(--tone);background:color-mix(in oklab, var(--tone) 16%, transparent);border-radius:8px;grid-row:1/3;place-items:center;display:grid}.dir-chip-label{overflow-wrap:anywhere;font-size:12px;font-weight:600;line-height:1.25}.dir-chip-n{color:var(--muted-foreground);font-variant-numeric:tabular-nums;font-size:11px}.dir-chip:hover{border-color:color-mix(in oklab, var(--tone) 50%, var(--border))}.dir-chip[aria-pressed=true]{border-color:var(--tone);background:color-mix(in oklab, var(--tone) 14%, var(--secondary))}.dir-chip[aria-pressed=true] .dir-chip-icon{background:var(--tone);color:var(--pc-on-accent)}@media (max-width:760px){.dir-cats{scrollbar-width:none;display:flex;overflow-x:auto}.dir-chip{flex:none;width:168px}}.dir-hero{min-height:56px;margin:0 -14px 14px;position:relative}.dir-hero-img{aspect-ratio:12/5;object-fit:cover;background:var(--pc-map-surface);width:100%;display:block}.dir-hero-logo{object-fit:contain;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);width:56px;height:56px;box-shadow:var(--shadow-pop);padding:6px;position:absolute;bottom:-18px;left:14px}.dir-hero:has(.dir-hero-logo)+h2{margin-top:26px}.dir-hero:not(:has(.dir-hero-img)) .dir-hero-logo{margin-left:14px;position:static}.dir-hero:not(:has(.dir-hero-img))+h2{margin-top:0}.dir-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.dir-head .dir-title{margin:0}.dir-collapse,.dir-open{cursor:pointer;color:var(--muted-foreground);border-radius:var(--radius-sm);background:0 0;border:0;align-items:center;gap:6px;padding:4px;display:inline-flex}.dir-collapse:hover{color:var(--foreground);background:var(--secondary)}.dir-open{z-index:3;height:36px;color:var(--foreground);background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-pop);padding:0 12px;font-size:13px;font-weight:600;position:absolute;top:12px;left:12px}.dir-looks{z-index:2;background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-pop);border-radius:999px;gap:2px;padding:3px;display:flex;position:absolute;top:10px;right:54px}.dir-looks button{cursor:pointer;height:28px;color:var(--muted-foreground);background:0 0;border:0;border-radius:999px;padding:0 12px;font-size:12px;font-weight:600}.dir-looks button[aria-pressed=true]{background:var(--primary);color:var(--primary-foreground)}@media (max-width:760px){.dir-collapse,.dir-open{display:none}.dir-looks{inset:10px auto auto 10px}}.dir-qrow{gap:6px;display:flex}.dir-qrow .dir-q{flex:1;min-width:0}.dir-ftoggle{cursor:pointer;color:var(--foreground);background:var(--secondary);border:1px solid var(--border);border-radius:var(--field-radius);flex:none;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.dir-ftoggle[aria-expanded=true]{border-color:var(--primary)}.dir-fcount{text-align:center;background:var(--primary);min-width:18px;height:18px;color:var(--primary-foreground);border-radius:999px;padding:0 5px;font-size:11px;line-height:18px}.dir-fbox{flex-direction:column;gap:8px;max-height:38vh;display:flex;overflow-y:auto}.dir-pills{flex-wrap:wrap;gap:5px;display:flex}.dir-pill{--tone:var(--primary);cursor:pointer;height:26px;color:var(--muted-foreground);border:1px solid var(--border);background:0 0;border-radius:999px;align-items:center;gap:5px;padding:0 9px;font-size:12px;font-weight:600;display:inline-flex}.dir-pill svg{color:var(--tone)}.dir-pill-n{opacity:.7;font-variant-numeric:tabular-nums;font-weight:500}.dir-pill:hover{color:var(--foreground)}.dir-pill[aria-pressed=true]{color:var(--foreground);border-color:var(--tone);background:color-mix(in oklab, var(--tone) 16%, transparent)}.dir-count{justify-content:space-between;align-items:center;gap:8px;display:flex}.dir-sort{height:26px;color:var(--foreground);background:var(--field-bg);border:var(--field-border);border-radius:var(--field-radius);padding:0 6px;font-size:12px}.dir-card{border-top:1px solid var(--border);background:var(--card);flex:none;max-height:52%;position:relative;overflow-y:auto}.dir-card-x{z-index:2;width:28px;height:28px;color:var(--foreground);background:color-mix(in oklab, var(--card) 80%, transparent);border:1px solid var(--border);cursor:pointer;border-radius:999px;place-items:center;display:grid;position:absolute;top:8px;right:8px}.dir-card .dir-hero{margin-top:-14px}.dir-tip .mapboxgl-popup-content{background:var(--popover);color:var(--popover-foreground);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-pop);pointer-events:none;flex-direction:column;gap:1px;padding:6px 10px;font-size:12px;display:flex}.dir-tip .mapboxgl-popup-content span{color:var(--muted-foreground)}.dir-tip .mapboxgl-popup-tip{display:none}
