:root{--navy:#0f1f3d;--navy-700:#1b2f52;--blue:#1a6dff;--blue-600:#0b57e0;--blue-050:#eef4ff;--blue-100:#dbe8ff;--gold:#ffc32b;--gold-050:#fff8e6;--bg:#fff;--surface:#f7f9fc;--surface-2:#eff3f9;--border:#e4e9f2;--border-strong:#ccd6e6;--text:var(--navy);--text-muted:#5b6b86;--text-faint:#8696ad;--r-sm:10px;--r-md:14px;--r-lg:20px;--r-xl:26px;--r-pill:999px;--sh-1:0 1px 2px #0f1f3d0a;--sh-2:0 2px 10px #0f1f3d0f;--sh-3:0 10px 30px #0f1f3d1a;--dur:.22s;--dur-fast:.14s;--ease:cubic-bezier(.22, .61, .36, 1);--app-max:520px;--gutter:18px;--tap:44px;--font:"Plus Jakarta Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}@media (width>=768px){:root{--gutter:24px;--app-max:600px}}@media (width>=1100px){:root{--app-max:680px}}*,:before,:after{box-sizing:border-box}html,body{height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.5;overflow-x:hidden}button{font:inherit;color:inherit}input,button,textarea{font-family:inherit}h1,h2,h3,p{margin:0}:focus-visible{outline:3px solid var(--blue);outline-offset:2px;border-radius:6px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app{background:radial-gradient(120% 60% at 50% 0%, var(--blue-050) 0%, #fff0 60%), var(--bg);flex-direction:column;min-height:100dvh;display:flex}.shell{width:100%;max-width:var(--app-max);padding-inline:var(--gutter);flex-direction:column;flex:1;margin-inline:auto;display:flex}.topbar{justify-content:center;padding-block:20px 4px;display:flex}@media (width>=768px){.topbar{justify-content:flex-start;padding-block:32px 8px}}.hero{text-align:center;padding-block:28px 22px}.hero__title{letter-spacing:-.025em;color:var(--navy);font-size:clamp(30px,9vw,40px);font-weight:800;line-height:1.12}.hero__sub{color:var(--text-muted);margin-top:10px;max-width:34ch;margin-inline:auto;font-size:15px}@media (width>=768px){.hero{text-align:left;padding-block:36px 26px}.hero__sub{margin-inline:0}}.stack{flex-direction:column;gap:12px;padding-bottom:8px;display:flex}.card{background:var(--bg);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-1);transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease), opacity var(--dur) var(--ease), transform var(--dur) var(--ease);scroll-margin-top:16px}.card--active{border-color:var(--blue-100);box-shadow:var(--sh-2)}.card--upcoming{opacity:.5;background:var(--surface);box-shadow:none}.card--enter{animation:cardIn var(--dur) var(--ease) both}@keyframes cardIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.card__head{width:100%;min-height:var(--tap);border-radius:var(--r-lg);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;padding:14px 16px;display:flex}.card__head:disabled{cursor:default}.card__index{border-radius:var(--r-pill);background:var(--surface-2);width:26px;height:26px;color:var(--text-faint);font-variant-numeric:tabular-nums;transition:background var(--dur) var(--ease), color var(--dur) var(--ease);flex:none;place-items:center;font-size:12px;font-weight:700;display:grid}.card--active .card__index{background:var(--blue);color:#fff}.card--done .card__index{background:var(--gold-050);color:#8a6200}.card__labels{flex:1;min-width:0}.card__q{letter-spacing:-.01em;color:var(--navy);font-size:16px;font-weight:700;display:block}.card--active .card__q{font-size:19px;line-height:1.25}.card--upcoming .card__q{color:var(--text-muted);font-weight:600}.card__summary{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:14px;display:block;overflow:hidden}.card__summary--skipped{color:var(--text-faint);font-style:italic}.card__edit{color:var(--blue);flex:none;align-items:center;gap:4px;font-size:13px;font-weight:700;display:inline-flex}.card__chev{color:var(--text-faint);transition:transform var(--dur) var(--ease);flex:none}.card--active .card__chev{transform:rotate(180deg)}.card__collapse{transition:grid-template-rows var(--dur) var(--ease);grid-template-rows:0fr;display:grid}.card__collapse[data-open=true]{grid-template-rows:1fr}.card__collapse>div{overflow:hidden}.card__body{padding:2px 16px 16px}.card__hint{color:var(--text-muted);margin-bottom:12px;font-size:13.5px}.card__foot{flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px;display:flex}.choices{grid-template-columns:repeat(auto-fit,minmax(146px,1fr));gap:10px;display:grid}.choices--rows{grid-template-columns:1fr}.choices--flow{flex-wrap:wrap;gap:8px;display:flex}.choices--flow .choice{border-radius:var(--r-pill);gap:8px;min-height:44px;padding:8px 15px}.choices--flow .choice__label{white-space:nowrap}.choices--flow .choice__tick{margin-left:0}.choice{background:var(--bg);border:1.5px solid var(--border);border-radius:var(--r-md);cursor:pointer;text-align:left;min-height:52px;transition:border-color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);align-items:center;gap:10px;padding:10px 14px;display:flex}.choice:hover{border-color:var(--border-strong)}.choice:active{transform:scale(.975)}.choice[aria-checked=true],.choice[aria-pressed=true]{border-color:var(--blue);background:var(--blue-050)}.choice[aria-checked=true] .choice__label,.choice[aria-pressed=true] .choice__label{color:var(--blue-600)}.choice__emoji{flex:none;font-size:20px;line-height:1}.choice__label{color:var(--navy);font-size:15px;font-weight:650}.choice__tick{width:0;color:var(--blue);opacity:0;transition:opacity var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);flex:none;margin-left:auto;transform:scale(.6)}.choice[aria-pressed=true] .choice__tick{opacity:1;width:16px;transform:none}.choice--ack{animation:ack .2s var(--ease)}@keyframes ack{0%{box-shadow:0 0 #1a6dff59}to{box-shadow:0 0 0 10px #1a6dff00}}.btn{min-height:var(--tap);border-radius:var(--r-pill);cursor:pointer;transition:background var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease), opacity var(--dur-fast) var(--ease);background:0 0;border:1.5px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-size:15px;font-weight:700;display:inline-flex}.btn:active{transform:scale(.98)}.btn:disabled{cursor:not-allowed;opacity:.45}.btn--primary{background:var(--blue);color:#fff;box-shadow:var(--sh-2)}.btn--primary:hover:not(:disabled){background:var(--blue-600)}.btn--ghost{color:var(--text-muted);border-color:var(--border)}.btn--ghost:hover{border-color:var(--border-strong);color:var(--navy)}.btn--quiet{color:var(--blue);min-height:40px;padding-inline:6px}.btn--quiet:hover{text-decoration:underline}.btn--block{width:100%}.cta{border-radius:var(--r-lg);background:linear-gradient(180deg, var(--surface) 0%, var(--bg) 100%);border:1px solid var(--border);margin-top:6px;padding:16px}.cta__meta{color:var(--text-muted);margin-bottom:12px;font-size:13.5px}.cta__big{font-size:16.5px}.dock{z-index:20;padding:10px var(--gutter) calc(10px + env(safe-area-inset-bottom));margin-inline:calc(-1 * var(--gutter));background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--border);animation:dockIn var(--dur) var(--ease) both;position:sticky;bottom:0}@keyframes dockIn{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:none}}.loc__row{flex-direction:column;gap:10px;display:flex}.field{min-height:var(--tap);background:var(--surface);border:1.5px solid var(--border);border-radius:var(--r-md);transition:border-color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);align-items:center;gap:8px;padding:0 14px;display:flex}.field:focus-within{border-color:var(--blue);background:var(--bg)}.field__icon{color:var(--text-faint);flex:none}.field input{min-width:0;color:var(--navy);background:0 0;border:0;outline:none;flex:1;font-size:15px}.field input::placeholder{color:var(--text-faint)}.field__clear{cursor:pointer;color:var(--text-faint);border-radius:var(--r-pill);background:0 0;border:0;flex:none;padding:6px}.suggest{border:1px solid var(--border);border-radius:var(--r-md);margin:10px 0 0;padding:0;list-style:none;overflow:hidden}.suggest__item{width:100%;min-height:var(--tap);background:var(--bg);border:0;border-bottom:1px solid var(--border);text-align:left;cursor:pointer;align-items:baseline;gap:8px;padding:10px 14px;display:flex}.suggest li:last-child .suggest__item{border-bottom:0}.suggest__item:hover{background:var(--blue-050)}.suggest__name{color:var(--navy);font-size:15px;font-weight:600}.suggest__area{color:var(--text-faint);font-size:13px}.statebox{border-radius:var(--r-md);align-items:flex-start;gap:10px;margin-top:10px;padding:12px 14px;font-size:13.5px;line-height:1.45;display:flex}.statebox--info{background:var(--blue-050);color:var(--blue-600)}.statebox--warn{background:var(--gold-050);color:#7a5600}.statebox--ok{color:#0a6b3d;background:#ecfdf3}.statebox strong{display:block}.statebox__icon{flex:none;margin-top:1px}.radius{margin-top:16px}.radius__head{justify-content:space-between;align-items:baseline;margin-bottom:8px;display:flex}.radius__label{color:var(--navy);font-size:13.5px;font-weight:700}.radius__value{color:var(--blue-600);font-size:13.5px;font-weight:700}.seg{background:var(--surface-2);border-radius:var(--r-pill);gap:4px;padding:4px;display:flex}.seg__btn{border-radius:var(--r-pill);min-height:36px;color:var(--text-muted);cursor:pointer;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);background:0 0;border:0;flex:1;font-size:13.5px;font-weight:700}.seg__btn[aria-pressed=true]{background:var(--bg);color:var(--blue-600);box-shadow:var(--sh-1)}.pref__tools{margin-bottom:12px}.pref__count{color:var(--text-muted);margin-top:10px;font-size:13px}.pref__empty{text-align:center;color:var(--text-faint);background:var(--surface);border-radius:var(--r-md);padding:14px;font-size:14px}.results{margin-top:26px;scroll-margin-top:16px}.results__head{justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:4px;display:flex}.results__title{letter-spacing:-.02em;color:var(--navy);font-size:22px;font-weight:800}.results__recap{color:var(--text-muted);margin:6px 0 14px;font-size:13.5px}.results__list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.place{background:var(--bg);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--sh-1);animation:cardIn var(--dur) var(--ease) both;gap:12px;padding:14px;display:flex}.place__thumb{background:var(--surface);border-radius:var(--r-sm);flex:none;place-items:center;width:48px;height:48px;font-size:22px;display:grid}.place__name{color:var(--navy);font-size:15.5px;font-weight:700}.place__meta{color:var(--text-muted);margin-top:2px;font-size:13px}.place__tags{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.tag{border-radius:var(--r-pill);background:var(--surface-2);color:var(--text-muted);padding:3px 9px;font-size:11.5px;font-weight:700}.mockbadge{border-radius:var(--r-pill);background:var(--gold-050);color:#7a5600;align-items:center;gap:6px;margin-bottom:12px;padding:5px 11px;font-size:12px;font-weight:700;display:inline-flex}.foot{border-top:1px solid var(--border);color:var(--text-faint);margin-top:32px;padding:18px 0 28px;font-size:12px;line-height:1.6}.foot p+p{margin-top:4px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@supports not (grid-template-rows:1fr){.card__collapse{display:block}.card__collapse[data-open=false]{display:none}}
