:root{--bg:oklch(15% .026 50);--surface:oklch(20% .029 50);--surface-2:oklch(25% .032 51);--line:oklch(38.5% .037 50);--line-soft:oklch(30.5% .033 51);--ink:oklch(94.5% .014 82);--muted:oklch(75.5% .022 72);--faint:oklch(62.5% .026 65);--primary:oklch(87.5% .169 92);--primary-ink:oklch(22.5% .03 50);--primary-deep:oklch(85.5% .175 91);--sp-salmon:oklch(72% .145 25);--sp-trout:oklch(75% .14 66);--sp-char:oklch(78% .11 215);--sp-seatrout:oklch(72% .13 320);--sp-searunchar:oklch(76% .13 155);--fs-xs:.75rem;--fs-sm:.8125rem;--fs-md:.875rem;--fs-base:1rem;--fs-lg:1.25rem;--fs-xl:1.5rem;--fs-2xl:2rem;--font-ui:"Inter", system-ui, -apple-system, sans-serif;--font-display:"Fraunces", Georgia, serif;--z-rail:10;--z-planner:15;--z-panel:20;--z-toast:30;--z-tooltip:40;--z-dialog:50;--ease-out:cubic-bezier(.22, 1, .36, 1);--radius:10px;--radius-sm:7px}*,:before,:after{box-sizing:border-box}html,body{height:100%;margin:0}body{font-family:var(--font-ui);font-size:var(--fs-base);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;line-height:1.5}#app{flex-direction:column;height:100dvh;display:flex}button{cursor:pointer;font-family:inherit}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.topbar{background:var(--bg);border-bottom:1px solid var(--line-soft);flex:none;justify-content:space-between;align-items:center;gap:1rem 1.5rem;min-height:58px;padding:.5rem 1.25rem;display:flex}@media (width<=1120px){.topbar{flex-wrap:wrap;gap:.3rem .6rem;padding:.65rem 1rem}.wordmark{order:1;width:100%;margin-bottom:.55rem}.topbar-controls{flex-wrap:wrap;order:2;gap:.45rem;width:100%}.search-wrap{flex:100%;order:-1}.search-wrap #search,.search-wrap #search:focus{width:100%}.topbar-controls>.view-toggle,.topbar-controls>.planner-btn,.topbar-controls>.ghost-btn,.topbar-controls>.lang-btn,.topbar-controls>.about-btn{flex:1 1 0;min-width:0}.planner-btn,.ghost-btn,.lang-btn{justify-content:center;min-height:38px}.about-btn{width:auto;height:auto;min-height:38px}.view-toggle{align-self:stretch}.view-toggle button{flex:1 1 0;justify-content:center}}.wordmark{flex:none;align-items:center;gap:.7rem;display:flex}.wordmark-title{align-items:center;margin:0;display:flex}.wordmark-logo{width:auto;height:30px;display:block}.wordmark-logo path{fill:var(--ink)}.wordmark .tagline{font-size:var(--fs-sm);color:var(--faint);white-space:nowrap}.topbar-controls{align-items:center;gap:.75rem;display:flex}.search-wrap{align-items:center;display:flex;position:relative}.search-icon{color:var(--faint);pointer-events:none;position:absolute;left:10px}#search{font:inherit;font-size:var(--fs-md);color:var(--ink);background:var(--surface);border:1px solid var(--line-soft);border-radius:var(--radius-sm);width:220px;transition:border-color .15s var(--ease-out), width .2s var(--ease-out);padding:.45rem .75rem .45rem 2.1rem}#search::placeholder{color:var(--muted)}#search:hover{border-color:var(--line)}#search:focus{border-color:var(--primary);outline:none;width:260px}#search::-webkit-search-cancel-button{-webkit-appearance:none}.view-toggle{background:var(--surface);border:1px solid var(--line-soft);border-radius:var(--radius-sm);gap:2px;padding:3px;display:flex}.view-toggle button{font-size:var(--fs-md);color:var(--muted);background:0 0;border:0;border-radius:5px;align-items:center;gap:.4rem;padding:.32rem .8rem;font-weight:500;transition:color .15s,background .15s;display:flex}.view-toggle button:hover{color:var(--ink)}.view-toggle button.active{background:var(--primary-deep);color:var(--primary-ink)}.about-btn{width:34px;height:34px;color:var(--muted);border:1px solid var(--line-soft);border-radius:var(--radius-sm);background:0 0;justify-content:center;align-items:center;transition:color .15s,border-color .15s,background .15s;display:flex}.about-btn:hover{color:var(--ink);border-color:var(--line);background:var(--surface)}.filter-rail{background:var(--bg);border-bottom:1px solid var(--line-soft);flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:.5rem 1rem;padding:.6rem 1.25rem;display:flex}.filter-panel{display:contents}.filters-btn{font:inherit;font-size:var(--fs-md);color:var(--ink);background:var(--surface);border:1px solid var(--line-soft);border-radius:var(--radius-sm);align-items:center;gap:.45rem;padding:.44rem .85rem;font-weight:500;transition:border-color .15s,background .15s;display:none}.filters-btn:hover{border-color:var(--line)}.filter-count[hidden]{display:none}.filter-count{min-width:18px;height:18px;font-size:var(--fs-xs);font-variant-numeric:tabular-nums;color:var(--primary-ink);background:var(--primary-deep);border-radius:999px;justify-content:center;align-items:center;padding:0 5px;font-weight:700;display:inline-flex}.species-chips{flex:none;gap:.45rem;display:flex}.chip{font-size:var(--fs-md);color:var(--muted);border:1px solid var(--line-soft);white-space:nowrap;background:0 0;border-radius:999px;align-items:center;gap:.45rem;padding:.34rem .85rem .34rem .6rem;font-weight:500;transition:color .15s,border-color .15s,background .15s;display:flex}.chip .dot{background:var(--chip-color);width:9px;height:9px;box-shadow:0 0 6px color-mix(in oklch, var(--chip-color) 60%, transparent);border-radius:50%;flex:none}.chip:hover{color:var(--ink);border-color:var(--line)}.chip[aria-pressed=true]{background:var(--chip-color);border-color:var(--chip-color);color:oklch(22% .03 50);font-weight:600}.chip[aria-pressed=true] .dot{box-shadow:none;background:oklch(22% .03 50)}.rail-right{flex:none;align-items:center;gap:.6rem;display:flex}.rail-right select{font:inherit;font-size:var(--fs-md);color:var(--ink);background:var(--surface);border:1px solid var(--line-soft);border-radius:var(--radius-sm);cursor:pointer;padding:.38rem .6rem;transition:border-color .15s}.rail-right select:hover{border-color:var(--line)}.clear-btn{font-size:var(--fs-md);color:var(--primary);border-radius:var(--radius-sm);background:0 0;border:0;padding:.38rem .5rem;font-weight:500}.clear-btn:hover{background:var(--surface)}.spot-count{font-size:var(--fs-sm);color:var(--faint);font-variant-numeric:tabular-nums;white-space:nowrap}#main{flex:1;min-height:0;position:relative}#map{background:var(--bg);z-index:0;isolation:isolate;position:absolute;inset:0}#map.hidden{visibility:hidden}.leaflet-container{font-family:var(--font-ui);background:oklch(14% .026 50)}.leaflet-tile-pane{filter:sepia(.6)saturate(1.4)brightness(.82)hue-rotate(-6deg)}#map:after{content:"";z-index:250;pointer-events:none;background:radial-gradient(120% 100% at 50% 42%,#0000 60%,oklch(10% .025 50/.6) 100%);position:absolute;inset:0}.leaflet-control-zoom{overflow:hidden;border:1px solid var(--line-soft)!important;border-radius:var(--radius-sm)!important}.leaflet-control-zoom a{background:var(--surface)!important;color:var(--ink)!important;border-color:var(--line-soft)!important}.leaflet-control-zoom a:hover{background:var(--surface-2)!important}.leaflet-control-attribution{background:color-mix(in oklch, var(--bg) 80%, transparent)!important;color:var(--faint)!important;font-size:10px!important}.leaflet-control-attribution a{color:var(--muted)!important}.spot-marker{background:0 0;border:0}.spot-marker .pulse{background:var(--marker-color);width:100%;height:100%;box-shadow:0 0 0 2.5px color-mix(in oklch, var(--marker-color) 28%, transparent), 0 0 10px 1px color-mix(in oklch, var(--marker-color) 55%, transparent);transition:transform .15s var(--ease-out), box-shadow .15s var(--ease-out);border-radius:50%}.spot-marker:hover .pulse,.spot-marker.selected .pulse{box-shadow:0 0 0 3px color-mix(in oklch, var(--marker-color) 40%, transparent), 0 0 18px 3px color-mix(in oklch, var(--marker-color) 70%, transparent);transform:scale(1.45)}.spot-marker.dimmed .pulse{opacity:.18;box-shadow:none}.leaflet-tooltip.spot-tip{background:var(--surface-2);border:1px solid var(--line);color:var(--ink);font-family:var(--font-ui);font-size:var(--fs-sm);border-radius:var(--radius-sm);padding:.3rem .6rem;font-weight:600;box-shadow:0 4px 8px oklch(0% 0 0/.35)}.leaflet-tooltip.spot-tip:before{display:none}.list-view{padding:1.5rem 1.25rem 4rem;position:absolute;inset:0;overflow-y:auto}.list-inner{max-width:1080px;margin:0 auto}.region-section{margin-bottom:2.25rem}.region-header{border-bottom:1px solid var(--line-soft);align-items:baseline;gap:.75rem;margin:0 0 .9rem;padding-bottom:.5rem;display:flex}.region-header h2{font-family:var(--font-display);font-weight:600;font-size:var(--fs-lg);letter-spacing:-.01em;margin:0}.region-header .count{font-size:var(--fs-sm);color:var(--faint);font-variant-numeric:tabular-nums}.spot-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:.75rem;display:grid}.spot-card{text-align:left;background:var(--surface);border:1px solid var(--line-soft);border-radius:var(--radius);color:inherit;font:inherit;transition:border-color .15s, background .15s, transform .15s var(--ease-out);flex-direction:column;gap:.5rem;padding:.9rem 1rem;display:flex}.spot-card:hover{background:var(--surface-2);border-color:var(--line);transform:translateY(-1px)}.spot-card .card-top{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.spot-card h3{font-size:var(--fs-base);letter-spacing:-.005em;margin:0;font-weight:600}.spot-card .meta{font-size:var(--fs-sm);color:var(--faint);white-space:nowrap}.species-row{flex-wrap:wrap;gap:.35rem;display:flex}.species-badge{font-size:var(--fs-xs);color:var(--muted);border:1px solid var(--line-soft);border-radius:999px;align-items:center;gap:.32rem;padding:.14rem .55rem .14rem .42rem;font-weight:500;display:inline-flex}.species-badge .dot{background:var(--badge-color);border-radius:50%;width:7px;height:7px}.spot-card .card-foot{font-size:var(--fs-sm);color:var(--muted);justify-content:space-between;align-items:center;gap:.75rem;margin-top:auto;display:flex}.spot-card .catch-hint{color:var(--faint);font-variant-numeric:tabular-nums}.empty-state{text-align:center;max-width:420px;color:var(--muted);margin:4rem auto}.empty-state h2{font-family:var(--font-display);font-weight:600;font-size:var(--fs-xl);color:var(--ink);margin:0 0 .5rem}.empty-state p{margin:0 0 1.25rem}.empty-state button{font:inherit;font-weight:600;font-size:var(--fs-md);color:var(--primary-ink);background:var(--primary-deep);border-radius:var(--radius-sm);border:0;padding:.55rem 1.1rem;transition:background .15s}.empty-state button:hover{background:color-mix(in oklch, var(--primary-deep) 80%, var(--primary))}.panel{background:var(--surface);border-left:1px solid var(--line-soft);width:min(420px,100%);z-index:var(--z-panel);transition:transform .22s var(--ease-out);position:absolute;top:0;bottom:0;right:0;overflow-y:auto;transform:translate(100%);box-shadow:-12px 0 32px oklch(0% 0 0/.35)}.panel.open{transform:translate(0)}.panel-scrim{display:none}.panel-head{background:var(--surface);border-bottom:1px solid var(--line-soft);z-index:1;padding:1.1rem 1.25rem .75rem;position:sticky;top:0}.panel-head .kicker-row{justify-content:space-between;align-items:center;margin-bottom:.3rem;display:flex}.panel-head .place-type{font-size:var(--fs-sm);color:var(--faint)}.panel-close{color:var(--muted);border-radius:var(--radius-sm);background:0 0;border:0;padding:.3rem;transition:color .15s,background .15s;display:flex}.panel-close:hover{color:var(--ink);background:var(--surface-2)}.panel-head h2{font-family:var(--font-display);font-weight:600;font-size:var(--fs-2xl);letter-spacing:-.015em;text-wrap:balance;margin:0 0 .6rem;line-height:1.15}.panel-body{flex-direction:column;gap:1.4rem;padding:1.1rem 1.25rem 2rem;display:flex}.panel-body .description{font-size:var(--fs-md);color:var(--muted);max-width:65ch;margin:0;line-height:1.6}.panel-section h3{font-size:var(--fs-sm);color:var(--faint);margin:0 0 .55rem;font-weight:600}.seller-list{flex-direction:column;gap:.45rem;display:flex}.seller-link{font-size:var(--fs-md);color:var(--ink);background:var(--surface-2);border:1px solid var(--line-soft);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;gap:.75rem;padding:.6rem .85rem;font-weight:500;text-decoration:none;transition:border-color .15s,background .15s;display:flex}.seller-link:hover{border-color:var(--primary);background:color-mix(in oklch, var(--surface-2) 85%, var(--primary))}.seller-link .ext{color:var(--faint);transition:color .15s, transform .15s var(--ease-out);flex:none}.seller-link:hover .ext{color:var(--primary);transform:translate(1px,-1px)}.seller-link .price{font-size:var(--fs-sm);color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto}.stats-block{background:var(--surface-2);border:1px solid var(--line-soft);border-radius:var(--radius);padding:.9rem 1rem}.stats-rows{flex-direction:column;gap:.55rem;display:flex}.stat-row{font-size:var(--fs-sm);grid-template-columns:3.4rem 1fr 3.5rem;align-items:center;gap:.7rem;display:grid}.stat-row .year{color:var(--muted);font-variant-numeric:tabular-nums}.stat-row .bar-track{background:oklch(30% .028 51);border-radius:4px;height:8px;overflow:hidden}.stat-row .bar{background:var(--primary);transform-origin:0;height:100%;animation:grow-bar .4s var(--ease-out) both;border-radius:4px}.stat-row.avg .bar{background:var(--faint)}.stat-row .num{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}@keyframes grow-bar{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.stats-source{font-size:var(--fs-xs);color:var(--faint);margin:.7rem 0 0}.stats-source a{color:var(--muted)}.no-stats{font-size:var(--fs-sm);color:var(--faint);margin:0}.jump-map{font-size:var(--fs-md);color:var(--primary);background:0 0;border:0;align-items:center;gap:.4rem;padding:0;font-weight:500;display:inline-flex}.jump-map:hover{text-decoration:underline}@media (width<=720px){.topbar{flex-wrap:wrap;gap:.5rem;height:auto;padding:.5rem .85rem}.wordmark-logo{height:26px}#search{font-size:16px}.view-toggle{left:50%;bottom:max(18px, env(safe-area-inset-bottom,0px));z-index:12;background:color-mix(in oklch, var(--surface) 90%, transparent);border-color:var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:4px;position:fixed;transform:translate(-50%);box-shadow:0 6px 22px oklch(0% 0 0/.45)}.view-toggle button{font-size:var(--fs-md);padding:.5rem 1.15rem}.filters-btn{display:inline-flex}.filter-rail{justify-content:flex-start;padding:.5rem .85rem;position:relative;overflow:visible}.filter-panel{display:none}.filter-rail.open .filter-panel{background:var(--surface);border-bottom:1px solid var(--line);z-index:14;flex-direction:column;gap:.9rem;max-height:72vh;padding:1rem .85rem 1.15rem;display:flex;position:absolute;top:calc(100% + 1px);left:0;right:0;overflow-y:auto;box-shadow:0 14px 28px oklch(0% 0 0/.5)}.filter-rail.open .species-chips{flex-wrap:wrap}.filter-rail.open .rail-right{flex-wrap:wrap;gap:.55rem;width:100%}.filter-rail.open .rail-right select{flex:44%}.filter-rail.open .spot-count{flex-basis:100%}.panel{border-left:0;border-top:1px solid var(--line);border-radius:14px 14px 0 0;width:100%;max-height:78%;top:auto;left:0;transform:translateY(100%)}.panel.open{transform:translateY(0)}.panel-scrim{z-index:calc(var(--z-panel) - 1);opacity:0;pointer-events:none;background:oklch(0% 0 0/.4);transition:opacity .2s;display:block;position:absolute;inset:0}.panel-scrim.open{opacity:1;pointer-events:auto}.list-view{padding:1rem .85rem 5.5rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.planner-btn,.ghost-btn,.lang-btn{font:inherit;font-size:var(--fs-md);color:var(--muted);border:1px solid var(--line-soft);border-radius:var(--radius-sm);white-space:nowrap;background:0 0;align-items:center;gap:.45rem;padding:.38rem .75rem;font-weight:500;transition:color .15s,border-color .15s,background .15s;display:inline-flex}.planner-btn:hover,.ghost-btn:hover,.lang-btn:hover{color:var(--ink);border-color:var(--line);background:var(--surface)}.lang-btn{letter-spacing:.02em;padding-inline:.6rem;font-weight:600}.lbl-short,.trip-count[hidden]{display:none}.trip-count{min-width:18px;height:18px;font-size:var(--fs-xs);font-variant-numeric:tabular-nums;color:var(--primary-ink);background:var(--primary-deep);border-radius:999px;justify-content:center;align-items:center;padding:0 5px;font-weight:700;display:inline-flex}.trip-toggle{font:inherit;font-size:var(--fs-md);color:var(--ink);background:var(--surface-2);border:1px solid var(--line-soft);border-radius:var(--radius-sm);align-items:center;gap:.4rem;margin-top:.85rem;padding:.45rem .85rem;font-weight:500;transition:border-color .15s,background .15s,color .15s;display:inline-flex}.trip-toggle:hover{border-color:var(--primary)}.trip-toggle.in{color:var(--sp-searunchar);border-color:color-mix(in oklch, var(--sp-searunchar) 45%, var(--line-soft));background:color-mix(in oklch, var(--surface-2) 88%, var(--sp-searunchar))}.planner{background:var(--surface);border-right:1px solid var(--line-soft);width:min(380px,100%);z-index:var(--z-planner);transition:transform .22s var(--ease-out);position:absolute;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-100%);box-shadow:12px 0 32px oklch(0% 0 0/.32)}.planner.open{transform:translate(0)}.planner-head{background:var(--surface);border-bottom:1px solid var(--line-soft);z-index:1;justify-content:space-between;align-items:center;padding:1.1rem 1.25rem .75rem;display:flex;position:sticky;top:0}.planner-head h2{font-family:var(--font-display);font-weight:600;font-size:var(--fs-xl);letter-spacing:-.01em;margin:0}.planner-body{flex-direction:column;gap:.9rem;padding:1rem 1.25rem 2rem;display:flex}.planner-intro{font-size:var(--fs-md);color:var(--muted);margin:0;line-height:1.5}.place-wrap{position:relative}#place-input,#radius-input{font:inherit}#place-input{width:100%;font-size:var(--fs-md);color:var(--ink);background:var(--surface-2);border:1px solid var(--line-soft);border-radius:var(--radius-sm);padding:.55rem .75rem;transition:border-color .15s}#place-input::placeholder{color:var(--muted)}#place-input:focus{border-color:var(--primary);outline:none}.place-suggestions{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);z-index:2;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden;box-shadow:0 8px 20px oklch(0% 0 0/.4)}.place-suggestions button{text-align:left;width:100%;font:inherit;font-size:var(--fs-md);color:var(--ink);background:0 0;border:0;padding:.5rem .75rem;display:block}.place-suggestions button:hover{background:var(--primary-deep);color:var(--primary-ink)}.pick-btn{font:inherit;font-size:var(--fs-md);color:var(--muted);border:1px dashed var(--line);border-radius:var(--radius-sm);background:0 0;align-items:center;gap:.45rem;padding:.5rem .75rem;transition:color .15s,border-color .15s,background .15s;display:inline-flex}.pick-btn:hover{color:var(--ink);border-color:var(--primary)}.pick-btn.active{color:var(--primary-ink);background:var(--primary-deep);border-style:solid;border-color:var(--primary-deep)}.radius-row{font-size:var(--fs-md);color:var(--muted);grid-template-columns:auto 1fr auto;align-items:center;gap:.6rem;display:grid}.radius-row output{font-variant-numeric:tabular-nums;color:var(--ink);text-align:right;min-width:4.5ch;font-weight:600}input[type=range]{appearance:none;background:var(--surface-2);outline-offset:4px;border-radius:2px;height:4px}input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--primary);cursor:pointer;width:16px;height:16px;box-shadow:0 0 0 4px color-mix(in oklch, var(--primary) 25%, transparent);border-radius:50%}input[type=range]::-moz-range-thumb{background:var(--primary);cursor:pointer;border:0;border-radius:50%;width:16px;height:16px}.planner-tabs{background:var(--surface-2);border:1px solid var(--line-soft);border-radius:var(--radius-sm);gap:2px;margin-top:.25rem;padding:3px;display:flex}.planner-tabs button{font:inherit;font-size:var(--fs-sm);color:var(--muted);background:0 0;border:0;border-radius:5px;flex:1;padding:.4rem .5rem;font-weight:500;transition:color .15s,background .15s}.planner-tabs button:hover{color:var(--ink)}.planner-tabs button.active{background:var(--primary-deep);color:var(--primary-ink)}.planner-count,.planner-empty{font-size:var(--fs-sm);color:var(--faint);margin:.25rem 0 .5rem;line-height:1.5}.planner-row{border-bottom:1px solid var(--line-soft);align-items:stretch;gap:.4rem;display:flex}.pr-main{text-align:left;font:inherit;background:0 0;border:0;flex-direction:column;flex:1;gap:.1rem;min-width:0;padding:.6rem .2rem;display:flex}.pr-name{font-size:var(--fs-md);color:var(--ink);font-weight:500}.pr-main:hover .pr-name{color:var(--primary)}.pr-sub{font-size:var(--fs-xs);color:var(--faint)}.pr-add{width:34px;color:var(--muted);border:1px solid var(--line-soft);border-radius:var(--radius-sm);background:0 0;flex:none;justify-content:center;align-items:center;margin:.5rem 0;transition:color .15s,border-color .15s,background .15s;display:flex}.pr-add:hover{color:var(--ink);border-color:var(--line)}.pr-add.in{color:var(--sp-searunchar);border-color:color-mix(in oklch, var(--sp-searunchar) 45%, var(--line-soft));background:color-mix(in oklch, var(--surface-2) 85%, var(--sp-searunchar))}.clear-trip-btn{font:inherit;font-size:var(--fs-sm);color:var(--primary);background:0 0;border:0;margin-bottom:.4rem;padding:.2rem 0}.clear-trip-btn:hover{text-decoration:underline}.leaflet-interactive.trip-radius{stroke:var(--primary);stroke-width:1.5px;stroke-dasharray:5 5;fill:var(--primary);fill-opacity:.07}.center-marker .center-dot{background:var(--primary);border:2.5px solid var(--primary-ink);width:100%;height:100%;box-shadow:0 0 12px 2px color-mix(in oklch, var(--primary) 70%, transparent);border-radius:50%}#feedback-dialog{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:min(460px,100vw - 2rem);color:var(--ink);padding:0;box-shadow:0 24px 64px oklch(0% 0 0/.5)}#feedback-dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:oklch(9% .025 50/.6)}#feedback-form{flex-direction:column;gap:.85rem;padding:1.25rem 1.35rem 1.5rem;display:flex}.dialog-head{justify-content:space-between;align-items:center;display:flex}.dialog-head h2{font-family:var(--font-display);font-weight:600;font-size:var(--fs-xl);letter-spacing:-.01em;margin:0}.dialog-intro{font-size:var(--fs-md);color:var(--muted);margin:-.3rem 0 .2rem;line-height:1.5}#feedback-form label{font-size:var(--fs-sm);color:var(--muted);flex-direction:column;gap:.3rem;font-weight:500;display:flex}#feedback-form select,#feedback-form textarea,#feedback-form input{font:inherit;font-size:var(--fs-md);color:var(--ink);background:var(--surface-2);border:1px solid var(--line-soft);border-radius:var(--radius-sm);padding:.5rem .65rem}#feedback-form textarea{resize:vertical;min-height:5rem;line-height:1.5}#feedback-form select:focus,#feedback-form textarea:focus,#feedback-form input:focus{border-color:var(--primary);outline:none}.dialog-actions{justify-content:flex-end;margin-top:.2rem;display:flex}.primary-btn{font:inherit;font-weight:600;font-size:var(--fs-md);color:var(--primary-ink);background:var(--primary-deep);border-radius:var(--radius-sm);border:0;padding:.55rem 1.2rem;transition:background .15s}.primary-btn:hover{background:color-mix(in oklch, var(--primary-deep) 80%, var(--primary))}.primary-btn:disabled{opacity:.6;cursor:default}.fb-status-msg{font-size:var(--fs-sm);min-height:1.1em;margin:0}.fb-status-msg.ok{color:var(--sp-searunchar)}.fb-status-msg.err{color:oklch(75% .13 25)}@media (width<=720px){.planner{border-right:0;border-top:1px solid var(--line);border-radius:14px 14px 0 0;width:100%;max-height:82%;top:auto;right:0;transform:translateY(100%)}.planner.open{transform:translateY(0)}.lbl-full{display:none}.lbl-short{display:inline}.topbar-controls{justify-content:flex-start}.planner-btn,.ghost-btn,.lang-btn{padding:.42rem .66rem}}.aiq-block{background:var(--surface-2);border:1px solid var(--line-soft);border-radius:var(--radius);padding:.9rem 1rem}.aiq-season{font-size:var(--fs-sm);color:var(--muted);margin-bottom:.6rem;font-weight:600}.aiq-rows{flex-direction:column;gap:.5rem;display:flex}.aiq-row{font-size:var(--fs-sm);grid-template-columns:1fr auto auto;align-items:baseline;gap:.75rem;display:grid}.aiq-sp{color:var(--ink);align-items:center;gap:.4rem;font-weight:500;display:inline-flex}.aiq-sp .dot{border-radius:50%;flex:none;width:8px;height:8px}.aiq-n{font-variant-numeric:tabular-nums;color:var(--ink);font-weight:600}.aiq-rel{font-variant-numeric:tabular-nums;color:var(--faint);font-size:var(--fs-xs);white-space:nowrap}
