:root{--bg:#f3f4f6;--surface:#fff;--surface-2:#eceef1;--line:#e1e4e8;--text:#1e293b;--muted:#5f6b7d;--primary:#2563eb;--primary-strong:#1d4ed8;--primary-tint:#e9effd;--on-primary:#fff;--good:#15803d;--good-bg:#dcfce7;--wait:#b45309;--wait-bg:#fef3c7;--bad:#b91c1c;--bad-bg:#fee2e2;--fs-xs:.75rem;--fs-sm:.875rem;--fs-md:1rem;--fs-lg:1.25rem;--fs-xl:1.75rem;--fs-2xl:2.5rem;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-6:24px;--sp-8:32px;--radius-card:12px;--radius-nested:8px;--radius-pill:999px;--focus:0 0 0 3px color-mix(in srgb, var(--primary) 45%, transparent);--inset-top:env(safe-area-inset-top,0px);--inset-bottom:env(safe-area-inset-bottom,0px);--scrim-soft:#0f172a4d;--scrim:#0f172a8c;--scrim-strong:#0f172ab3;--scrim-ink:#fff;--viewer-bg:#090b10f0;--viewer-fill:#ffffff1f;--viewer-fill-hover:#ffffff38;--viewer-line:#ffffff47;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--dur-micro:.12s;--dur-short:.22s;--z-raised:10;--z-sticky:20;--z-overlay:30;--appbar-h:calc(56px + var(--inset-top));--tabbar-h:calc(64px + var(--inset-bottom));--dial-h:116px;--map-days-h:64px;--poi-search-h:calc(40px + var(--sp-2) * 2);--poi-chips-h:calc(44px + var(--sp-2) * 2);--shadow-soft:0 -2px 12px -6px #1e293b2e;--shadow-side:-2px 0 14px -8px #1e293b38;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#0f172a;--surface:#1e293b;--surface-2:#273449;--line:#334155;--text:#e2e8f0;--muted:#a3afc2;--primary:#60a5fa;--on-primary:#0f172a;--good:#4ade80;--good-bg:#14301f;--wait:#fbbf24;--wait-bg:#3a2a0c;--bad:#f87171;--bad-bg:#3b1515;--shadow-side:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{overflow-x:clip}body{background:var(--bg);color:var(--text);font:var(--fs-md) / 1.5 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;-webkit-font-smoothing:antialiased;margin:0}h1{font-size:var(--fs-xl);margin:0 0 var(--sp-1);line-height:1.2}h2{font-size:var(--fs-lg);margin:0}h3,h4{font-size:var(--fs-md);margin:0}a{color:var(--primary)}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.muted{color:var(--muted)}.small{font-size:var(--fs-sm)}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.error{color:var(--bad);background:var(--bad-bg);padding:var(--sp-2) var(--sp-3);border-radius:var(--radius-nested);margin:0}.label{font-size:var(--fs-sm);color:var(--muted);display:block}.stack{gap:var(--sp-4);grid-template-columns:minmax(0,1fr);display:grid}.row{align-items:center;gap:var(--sp-2);display:flex}.wrap{flex-wrap:wrap}.grow{flex:1;min-width:12rem}.spacer{flex:1}.narrow{width:5rem}.column{flex-direction:column;align-items:stretch}.center{text-align:center;place-content:center;gap:var(--sp-4);min-height:60vh;padding:var(--sp-4);display:grid}.hero h1{font-size:var(--fs-2xl)}.hero p{max-width:28rem;color:var(--muted);margin:0 auto}input,button,select,textarea{font:inherit;color:inherit}input[type=text],input[type=search],input:not([type]),input[type=datetime-local],input[type=date],input[type=file],textarea,select{width:100%;padding:var(--sp-2) var(--sp-3);border:1px solid var(--line);border-radius:var(--radius-nested);background:var(--surface-2);min-height:44px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--primary);outline-offset:0;background:var(--surface)}.button{min-height:44px;padding:0 var(--sp-4);border-radius:var(--radius-nested);border:1px solid var(--line);background:var(--surface);color:var(--text);cursor:pointer;justify-content:center;align-items:center;gap:var(--sp-2);white-space:nowrap;font-weight:500;text-decoration:none;display:inline-flex}.button:hover{border-color:color-mix(in srgb, var(--primary) 40%, var(--line))}.button.primary{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}.button.primary:hover{background:color-mix(in srgb, var(--primary) 88%, black)}.button.danger{background:var(--bad);color:#fff;border-color:var(--bad)}.button.small{min-height:36px;padding:0 var(--sp-3);font-size:var(--fs-sm)}.button:disabled{opacity:.5;cursor:not-allowed}.icon-button{border-radius:var(--radius-nested);cursor:pointer;min-width:44px;min-height:44px;color:var(--muted);background:0 0;border:0;place-items:center;display:inline-grid}.linklike{color:inherit;text-align:left;cursor:pointer;padding:var(--sp-1) 0;background:0 0;border:0;width:100%;min-height:44px}progress{width:12rem;accent-color:var(--primary)}.card,.panel,.item{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card)}.card{align-content:start;gap:var(--sp-3);padding:var(--sp-4);color:var(--text);min-width:0;text-decoration:none;display:grid}a.card:hover{border-color:var(--primary)}.card-head{align-items:center;gap:var(--sp-2);display:flex}.card-head h2{font-size:var(--fs-md);flex:1;font-weight:600}.card-actions{gap:var(--sp-2);display:flex}.nested{background:var(--surface-2);border-radius:var(--radius-nested);padding:var(--sp-3)}.panel{padding:var(--sp-4)}.panelbody{width:100%}details.panel summary{cursor:pointer;min-height:32px;font-weight:600}.cards,.list,.plain{margin:0;padding:0;list-style:none}.cards{gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));display:grid}.list{gap:var(--sp-2);grid-template-columns:minmax(0,1fr);display:grid}.item>*{min-width:0;max-width:100%}.item{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);flex-wrap:wrap;display:flex}.token{word-break:break-all;padding:var(--sp-2);background:var(--surface-2);border-radius:var(--radius-nested);-webkit-user-select:all;user-select:all;display:block}.daylabel{margin:var(--sp-6) 0 var(--sp-1);font-size:var(--fs-sm);color:var(--muted);font-weight:600}.reply{margin-left:var(--sp-6)}.metric{gap:2px;display:grid}.metric-value{font-size:var(--fs-xl);font-variant-numeric:tabular-nums;font-weight:650;line-height:1.1}.metric-value.\32 xl{font-size:var(--fs-2xl)}.metric-caption{font-size:var(--fs-sm);color:var(--muted)}.pill{align-items:center;gap:var(--sp-1);padding:2px var(--sp-2);border-radius:var(--radius-pill);font-size:var(--fs-xs);white-space:nowrap;background:var(--surface-2);width:fit-content;color:var(--muted);justify-self:start;font-weight:600;line-height:1.6;display:inline-flex}.pill.good,.pill.active{background:var(--good-bg);color:var(--good)}.pill.wait{background:var(--wait-bg);color:var(--wait)}.pill.bad{background:var(--bad-bg);color:var(--bad)}.pill[data-colored=true]{color:var(--tag);background:color-mix(in srgb, var(--tag) 14%, var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--tag) 32%, transparent)}:root[data-theme=dark] .pill[data-colored=true]{color:var(--tag-dark);background:color-mix(in srgb, var(--tag-dark) 18%, var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--tag-dark) 38%, transparent)}.progress{border-radius:var(--radius-pill);background:var(--surface-2);width:100%;height:6px;overflow:hidden}.progress>span{border-radius:inherit;background:var(--primary);height:100%;transition:width .3s;display:block}.progress.good>span{background:var(--good)}.progress.wait>span{background:var(--wait)}.progress.bad>span{background:var(--bad)}.progress.indeterminate>span{opacity:.5;width:30%;animation:1.4s ease-in-out infinite indeterminate}@keyframes indeterminate{0%{transform:translate(-100%)}to{transform:translate(340%)}}.row-item{align-items:center;gap:var(--sp-3);min-height:44px;padding:var(--sp-2) 0;display:flex}.row-icon,.avatar{border-radius:var(--radius-nested);background:var(--surface-2);width:36px;height:36px;color:var(--muted);flex:none;place-items:center;display:grid}.avatar{border-radius:var(--radius-pill);color:var(--text);font-weight:600}.avatar[data-colored=true]{color:var(--who);background:color-mix(in srgb, var(--who) 16%, var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--who) 35%, transparent)}.avatar.sm{width:28px;height:28px;font-size:var(--fs-xs)}:root[data-theme=dark] .avatar[data-colored=true]{color:var(--who-dark);background:color-mix(in srgb, var(--who-dark) 20%, var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--who-dark) 40%, transparent)}.row-icon[data-colored=true]{color:var(--tag);background:color-mix(in srgb, var(--tag) 14%, var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--tag) 32%, transparent)}:root[data-theme=dark] .row-icon[data-colored=true]{color:var(--tag-dark);background:color-mix(in srgb, var(--tag-dark) 18%, var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--tag-dark) 38%, transparent)}.row-main{flex:1;gap:2px;min-width:0;display:grid}.row-title{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.row-detail{font-size:var(--fs-sm);color:var(--muted)}.thumb{border-radius:var(--radius-nested);background:var(--surface-2);width:100%;position:relative;overflow:hidden}.thumb img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.empty{justify-items:center;gap:var(--sp-2);padding:var(--sp-8) var(--sp-4);text-align:center;border:1px dashed var(--line);border-radius:var(--radius-card);background:var(--surface);display:grid}.empty p{margin:0}.empty-icon{color:var(--muted)}.empty-title{font-weight:600}.empty-actions{justify-content:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.skeleton-list{gap:var(--sp-2);display:grid}.skeleton{border-radius:var(--radius-card);background:var(--surface-2);height:56px;animation:1.4s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.55}}.grid-2,.grid-3{gap:var(--sp-4);grid-template-columns:minmax(0,1fr);display:grid}@media (width>=640px){.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.metrics{gap:var(--sp-4);grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));display:grid}.field{gap:var(--sp-1);display:grid}.field>span{font-size:var(--fs-sm);font-weight:600}.field .hint{color:var(--muted);font-weight:400}.steps{gap:var(--sp-2);margin:0 0 var(--sp-4);font-size:var(--fs-sm);color:var(--muted);padding:0;list-style:none;display:flex}.steps li[aria-current=step]{color:var(--primary);font-weight:600}.check{gap:var(--sp-3);cursor:pointer;align-items:flex-start;min-height:44px;display:flex}.check input{width:20px;height:20px;accent-color:var(--primary);margin-top:2px}.strip{gap:var(--sp-2);grid-template-columns:repeat(auto-fill,minmax(7rem,1fr));display:grid}.map-layout{gap:var(--sp-4);grid-template-columns:minmax(0,1fr);display:grid}@media (width>=1024px){.map-layout{grid-template-columns:minmax(0,2fr) minmax(18rem,1fr)}}.map-layout.solo{grid-template-columns:minmax(0,1fr)}.map-holder{width:100%;height:100%;position:relative}.map-deadzone{top:var(--dead-zone-y,50%);width:var(--dead-zone,80px);height:var(--dead-zone,80px);border-radius:var(--radius-pill);pointer-events:none;z-index:var(--z-raised);border:2px solid #ef4444;position:absolute;left:50%;transform:translate(-50%,-50%)}.map-box{position:relative}.map{border-radius:var(--radius-card);border:1px solid var(--line);background:var(--surface-2);height:min(70vh,640px);min-height:320px;overflow:hidden}.legend{left:var(--sp-2);bottom:var(--sp-2);gap:var(--sp-2) var(--sp-3);padding:var(--sp-1) var(--sp-2);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-nested);font-size:var(--fs-xs);flex-wrap:wrap;max-width:calc(100% - 16px);display:flex;position:absolute}.legend li{align-items:center;gap:var(--sp-1);display:inline-flex}.swatch{border-radius:2px;width:14px;height:4px}.dot{border:2px solid var(--primary);border-radius:50%;width:10px;height:10px}.dot.solid{background:var(--primary)}.map-full{inset:var(--appbar-h) 0 var(--tabbar-h) 0;z-index:var(--z-raised);background:var(--surface-2);position:fixed}@media (width>=40rem){.map-full{z-index:var(--z-overlay);inset:0}}.map-full .map-box{position:absolute;inset:0}.map-full .map{border:0;border-radius:0;height:100%;min-height:0}.map-full-top{top:var(--sp-2);right:var(--sp-2);z-index:2;align-items:center;gap:var(--sp-2);display:flex;position:absolute}.map-credit{z-index:2;align-items:flex-start;max-width:min(320px,100% - 56px);display:flex;position:absolute;top:0;left:0}.map-credit[data-below=days]{top:var(--map-days-h)}.map-credit[data-below=chips]{top:calc(var(--poi-search-h) + 44px + var(--sp-2) * 2)}.map-credit[data-below=search]{top:var(--poi-search-h)}.map-credit-button{width:44px;height:44px;min-height:44px;color:var(--text);background:0 0;border:0;flex:none;place-items:center;margin:0;padding:0;display:grid}.map-credit-button>span{background:var(--surface);border:1px solid var(--line);border-radius:50%;place-items:center;width:28px;height:28px;display:grid;box-shadow:0 1px 3px #0f172a2e}.map-credit-text{min-width:0;margin-top:var(--sp-1);padding:var(--sp-1) var(--sp-2);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-nested);color:var(--text);font-size:var(--fs-xs);line-height:1.6;box-shadow:0 1px 3px #0f172a2e}.map-credit-text p{margin:0}.map-chip{align-items:center;gap:var(--sp-2);min-height:40px;padding:0 var(--sp-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-pill);color:var(--text);font-size:var(--fs-sm);white-space:nowrap;text-overflow:ellipsis;margin:0;font-weight:600;text-decoration:none;display:inline-flex;overflow:hidden;box-shadow:0 1px 3px #0f172a2e}.map-chip.icon{flex:none;justify-content:center;width:40px;padding:0}.dial{z-index:2;height:var(--dial-h);padding-bottom:var(--inset-bottom);background:var(--surface);border-top:1px solid var(--line);border-radius:var(--radius-card) var(--radius-card) 0 0;position:absolute;bottom:0;left:0;right:0;overflow:hidden;box-shadow:0 -8px 24px #0f172a24}.dial-readout{padding:var(--sp-2) var(--sp-4) 0;text-align:center;font-size:var(--fs-sm);color:var(--text);white-space:nowrap;text-overflow:ellipsis;margin:0;font-weight:600;overflow:hidden}.dial-stage{touch-action:none;cursor:grab;position:absolute;inset:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 9% 91%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 9% 91%,#0000 100%)}.dial-stage:active{cursor:grabbing}.dial-disk{aspect-ratio:1;background:radial-gradient(circle at 50% 50%, var(--surface-2) 68%, var(--surface) 72%);border:1px solid var(--line);pointer-events:none;border-radius:50%;width:300vw;margin-left:-150vw;position:absolute;top:34px;left:50%}.dial-rim{will-change:transform;position:absolute;inset:0}.dial-mark{transform-origin:50% 100%;width:0;height:50%;position:absolute;top:0;left:50%}.dial-tick{background:var(--line);border-radius:1px;width:2px;height:7px;position:absolute;top:6px;left:-1px}.dial-mark.hour .dial-tick{background:var(--muted);width:2px;height:12px;top:4px}.dial-mark.day .dial-tick{background:var(--text);width:3px;height:18px;top:2px;left:-1.5px}.dial-label{color:var(--muted);white-space:nowrap;font-size:11px;font-weight:600;position:absolute;top:19px;left:0;translate:-50%}.dial-mark.day .dial-label{color:var(--text);top:23px}.dial-mark.detent .dial-dot{background:var(--primary);border-radius:50%;width:6px;height:6px;position:absolute;top:30px;left:-3px}.dial-needle{background:var(--primary);border-radius:1px;width:2px;height:22px;margin-left:-1px;position:absolute;top:30px;left:50%}@media (prefers-reduced-motion:reduce){.dial-rim{transition:none}}.sheet-scrim{z-index:var(--z-overlay);background:#0f172a73;align-items:flex-end;display:flex;position:fixed;inset:0}.filter-panel{gap:var(--sp-3);width:100%;max-height:80vh;padding:var(--sp-4);padding-bottom:calc(var(--sp-4) + var(--inset-bottom));background:var(--surface);border-radius:var(--radius-card) var(--radius-card) 0 0;display:grid;overflow:auto}.filter-panel h2{font-size:var(--fs-md);margin:0}.map-full .map-side{gap:var(--sp-3)}.histogram{align-items:flex-end;gap:1px;height:48px;display:flex}.histogram span{background:var(--line);border-radius:2px 2px 0 0;flex:1;min-height:2px}.histogram span.in{background:var(--primary)}.timeline input[type=range]{width:100%;accent-color:var(--primary);min-height:44px}.clip-list{gap:2px;max-height:50vh;display:grid;overflow-y:auto}.clip-row{align-items:center;gap:var(--sp-2);width:100%;min-height:44px;padding:0 var(--sp-2);border-radius:var(--radius-nested);text-align:left;cursor:pointer;font-size:var(--fs-sm);background:0 0;border:0;display:flex}.clip-row .grow{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.clip-row:hover{background:var(--surface-2)}.clip-row[aria-pressed=true]{background:var(--primary-tint);color:var(--primary-strong)}.viewer{border-radius:var(--radius-nested);background:#000;width:100%}.radio-card{gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);cursor:pointer;align-items:flex-start;min-height:44px;display:flex}.radio-card.checked{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}.radio-card.disabled{cursor:not-allowed;opacity:.6}.radio-card input{accent-color:var(--primary);width:18px;height:18px;margin-top:4px}.radio-text{gap:2px;display:grid}.banner{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--radius-card);border:1px solid #0000;display:flex}.banner-text{flex:1}.banner.info{background:var(--surface);border-color:var(--line)}.banner.good{background:var(--good-bg);color:var(--good)}.banner.wait{background:var(--wait-bg);color:var(--wait)}.banner.bad{background:var(--bad-bg);color:var(--bad)}.backdrop{padding:var(--sp-4);z-index:50;background:#0f172a73;place-items:center;display:grid;position:fixed;inset:0}.dialog{gap:var(--sp-4);width:min(28rem,100%);padding:var(--sp-6);background:var(--surface);border-radius:var(--radius-card);border:1px solid var(--line);display:grid}.dialog-actions{justify-content:flex-end;gap:var(--sp-2);flex-wrap:wrap;display:flex}.toasts{right:var(--sp-4);bottom:calc(var(--sp-4) + var(--inset-bottom));gap:var(--sp-2);z-index:60;display:grid;position:fixed}.toast{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-2) var(--sp-2) var(--sp-4);background:var(--text);color:var(--surface);border-radius:var(--radius-nested);font-size:var(--fs-sm);display:flex}.toast .icon-button{color:inherit}.shell{grid-template-rows:auto 1fr;grid-template-columns:15rem minmax(0,1fr);min-height:100vh;display:grid}.appbar{align-items:center;gap:var(--sp-3);height:56px;padding:var(--inset-top) var(--sp-4) 0;background:var(--surface);border-bottom:1px solid var(--line);z-index:20;grid-column:1/-1;display:flex;position:sticky;top:0}.brand{align-items:center;gap:var(--sp-2);color:var(--text);font-weight:700;text-decoration:none;display:inline-flex}.appbar .who{color:var(--muted);font-size:var(--fs-sm)}.sidebar{border-right:1px solid var(--line);background:var(--surface);padding:var(--sp-4) var(--sp-2);height:calc(100vh - 56px);position:sticky;top:56px;overflow-y:auto}.nav-group+.nav-group{margin-top:var(--sp-4)}.nav-heading{margin:0 var(--sp-3) var(--sp-1);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.nav-link{align-items:center;gap:var(--sp-3);min-height:40px;padding:0 var(--sp-3);border-radius:var(--radius-nested);color:var(--text);font-size:var(--fs-sm);font-weight:500;text-decoration:none;display:flex}.nav-link svg{color:var(--muted);flex:none}.nav-link:hover{background:var(--surface-2)}.nav-link[aria-current=page]{background:var(--primary-tint);color:var(--primary-strong)}.nav-link[aria-current=page] svg{color:var(--primary-strong)}.pull{top:var(--appbar-h);z-index:30;pointer-events:none;place-items:center;display:grid;position:fixed;left:0;right:0}.pull-mark{border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--line);width:36px;height:36px;color:var(--muted);transform:translateY(calc(var(--pull,0px) - 44px)) rotate(calc(var(--pull-n,0) * 180deg));opacity:min(1, var(--pull-n,0));place-items:center;display:grid;box-shadow:0 2px 8px #0f172a29}.pull-mark[data-armed=true]{color:var(--primary);border-color:var(--primary)}.pull-mark[data-busy=true]{color:var(--primary);border-color:var(--primary);animation:.9s linear infinite spin}.pull:not([data-dragging=true]) .pull-mark{transition:transform .22s,opacity .22s}@media (prefers-reduced-motion:reduce){.pull-mark{transform:translateY(calc(var(--pull,0px) - 44px))}.pull-mark[data-busy=true]{animation:none}.pull:not([data-dragging=true]) .pull-mark{transition:none}}.content{padding:var(--sp-6);min-width:0}.content>.page{max-width:72rem;margin:0 auto}.page-head{align-items:flex-start;gap:var(--sp-3);margin-bottom:var(--sp-4);flex-wrap:wrap;display:flex}.page-head .grow{min-width:14rem}@media (width<=1023px){.shell{grid-template-columns:12.5rem minmax(0,1fr)}.content{padding:var(--sp-4)}}@media (width<=639px){.shell{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr)}.sidebar,.appbar .who,.appbar-signout{display:none}.content{padding:var(--sp-3)}.item{align-items:flex-start}.row{flex-wrap:wrap}}.tabbar{z-index:var(--z-sticky);background:var(--surface);border-top:1px solid var(--line);box-shadow:var(--shadow-soft);padding:var(--sp-1) var(--sp-1) calc(var(--sp-1) + var(--inset-bottom));grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:grid;position:fixed;inset:auto 0 0}.tab{align-content:center;justify-items:center;gap:var(--sp-1);min-height:56px;padding:var(--sp-1);color:var(--muted);font-size:var(--fs-xs);white-space:nowrap;font-weight:500;text-decoration:none;display:grid}.tab-mark{border-radius:var(--radius-pill);width:100%;max-width:4rem;height:28px;transition:background-color var(--dur-micro) var(--ease-out), transform var(--dur-micro) var(--ease-out);background:0 0;place-items:center;display:grid}.tab-label{text-overflow:ellipsis;max-width:100%;overflow:hidden}.tab[aria-current=page]{color:var(--primary-strong)}.tab[aria-current=page] .tab-mark{background:var(--primary-tint)}.tab:active .tab-mark{transform:translateY(1px)}.tab:focus-visible{outline:2px solid var(--primary);outline-offset:-2px;border-radius:var(--radius-nested)}@media (hover:hover) and (pointer:fine){.tab:hover .tab-mark{background:var(--surface-2)}.tab[aria-current=page]:hover .tab-mark{background:var(--primary-tint)}}.has-tabbar .content{padding-bottom:calc(var(--tabbar-h) + var(--sp-4))}@media (width>=40rem){.tabbar{display:none}.has-tabbar .content{padding-bottom:var(--sp-4)}}.me-marker{place-items:center;width:34px;height:34px;display:grid;position:relative}.me-initial{border-radius:var(--radius-pill);background:var(--primary);width:28px;height:28px;color:var(--on-primary);font-size:var(--fs-xs);border:2px solid var(--surface);place-items:center;font-weight:700;display:grid;position:relative;box-shadow:0 1px 4px #1e293b59}.me-dot{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--primary) 30%, transparent);animation:me-pulse 2.4s var(--ease-out) infinite;position:absolute;inset:0}@keyframes me-pulse{0%{opacity:.9;transform:scale(.6)}70%,to{opacity:0;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.me-dot{opacity:.35;animation:none;transform:scale(1)}}.map-chip.icon.on{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}.tile-list{margin:0;padding:0;list-style:none;display:grid}.tile-list li+li{border-top:1px solid var(--line)}.tile-list .tile{align-items:center;gap:var(--sp-3);min-height:56px;padding:var(--sp-2) var(--sp-1);color:var(--text);border-radius:var(--radius-nested);transition:background-color var(--dur-micro) var(--ease-out);grid-template-columns:auto minmax(0,1fr) auto;text-decoration:none;display:grid}.tile-mark{border-radius:var(--radius-nested);background:var(--surface-2);width:36px;height:36px;color:var(--muted);place-items:center;display:grid}.tile-text{min-width:0;display:grid}.tile-label{font-weight:600}.tile-hint{font-size:var(--fs-sm);color:var(--muted);overflow-wrap:anywhere}.tile-go{color:var(--muted);flex:none}@media (hover:hover) and (pointer:fine){.tile-list .tile:hover{background:var(--surface-2)}.tile-list .tile:hover .tile-mark{background:var(--surface);color:var(--primary-strong)}}.tile-list .tile:active{background:var(--surface-2)}.trip-switch select{font-weight:600}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.marker-track{border-radius:var(--radius-nested);background:var(--surface-2);height:28px;position:relative}.marker-track .band{background:color-mix(in srgb, var(--good) 35%, transparent);cursor:pointer;border:0;border-radius:4px;min-width:6px;height:16px;position:absolute;top:6px}.marker-track .marker{cursor:pointer;background:0 0;border:0;width:24px;height:24px;margin-left:-12px;position:absolute;top:2px}.marker-track .marker:before{content:"";background:var(--primary);border-radius:3px;width:6px;height:18px;position:absolute;top:3px;left:9px}.marker-track .marker.selected:before{background:var(--text)}.annotations{gap:var(--sp-2);display:grid}.sync-action{gap:var(--sp-3);padding:var(--sp-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);display:grid}.button.big{min-height:64px;font-size:var(--fs-lg);border-radius:var(--radius-card);width:100%}.tile-grid{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:4px;display:grid}.tile{position:relative}.tile label{aspect-ratio:1;border-radius:var(--radius-nested);background:var(--surface-2);cursor:pointer;display:block;position:relative;overflow:hidden}.tile img{object-fit:cover;width:100%;height:100%;display:block}.tile-grid:not(.media-grid) .tile:not(.checked) img{opacity:.45}.tile input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.tile input:focus-visible+.tile-check{outline:2px solid var(--primary);outline-offset:2px}.tile-check{border-radius:var(--radius-pill);color:#fff;pointer-events:none;background:#0f172a40;border:2px solid #fff;place-items:center;width:26px;height:26px;display:grid;position:absolute;top:6px;right:6px}.tile.checked .tile-check{background:var(--primary);border-color:var(--primary)}.tile-kind{border-radius:var(--radius-pill);color:#fff;font-size:var(--fs-xs);pointer-events:none;background:#0f172a99;padding:0 6px;position:absolute;bottom:6px;left:6px}.tile-status{justify-content:center;display:flex;position:absolute;bottom:4px;left:4px;right:4px}.sync-home .sync-action{text-align:center;background:0 0;border:0;padding:0}.sync-fine{margin:0}.sync-conn{gap:var(--sp-2)}.conn-row{align-items:center;gap:var(--sp-2);font-size:var(--fs-sm);margin:0;display:flex}.conn-row>svg{color:var(--good)}.conn-row.off>svg,.conn-row.off{color:var(--muted)}.source-group+.source-group{border-top:1px solid var(--line)}.source-group{gap:var(--sp-2);padding-bottom:var(--sp-2);display:grid}.source-head{align-items:center;gap:var(--sp-3);width:100%;min-height:52px;padding:var(--sp-2) 0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.source-head:disabled{cursor:default}.source-head>svg{color:var(--muted);flex:none}.source-size{white-space:nowrap;font-weight:600}.sync-home .tile-grid{grid-template-columns:repeat(4,1fr)}.tile-play{border-radius:var(--radius-pill);color:#fff;pointer-events:none;background:#0f172a8c;place-items:center;width:28px;height:28px;margin:auto;display:grid;position:absolute;inset:0}.tile.more button{aspect-ratio:1;border:1px solid var(--line);border-radius:var(--radius-nested);background:var(--surface-2);width:100%;color:var(--muted);font:inherit;cursor:pointer;font-weight:600}.sync-total{padding:var(--sp-3);border-radius:var(--radius-nested);background:var(--surface-2);font-size:var(--fs-lg);margin:0;font-weight:600}.text-link{align-items:center;gap:var(--sp-1);min-height:44px;color:var(--primary);font-weight:600;text-decoration:none;display:inline-flex}.storage-line{justify-content:space-between;align-items:baseline;gap:var(--sp-2);margin:0;display:flex}.back-link{align-items:center;gap:var(--sp-1);min-height:32px;color:var(--muted);text-decoration:none;display:inline-flex}.shield-note p{margin:0}.shield-title{align-items:center;gap:var(--sp-2);font-weight:600;display:flex}.shield-title>svg{color:var(--primary)}.sources-page .row-item+.row-item{border-top:1px solid var(--line)}.add-folder{width:100%;color:var(--primary);justify-content:center}.switch{appearance:none;border-radius:var(--radius-pill);background:var(--line);cursor:pointer;flex:none;width:44px;height:26px;margin:0;transition:background .15s;position:relative}.switch:after{content:"";border-radius:var(--radius-pill);background:#fff;width:20px;height:20px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #0f172a4d}.switch:checked{background:var(--primary)}.switch:checked:after{transform:translate(18px)}.switch:focus-visible{box-shadow:var(--focus);outline:none}.version-cards{gap:var(--sp-2);grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr));display:grid}.version-card{gap:var(--sp-1);padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);text-align:left;cursor:pointer;justify-items:start;min-height:44px;display:grid}.version-card:hover{background:var(--surface-2)}.version-card:active{transform:translateY(1px)}.version-card[aria-selected=true]{border-color:var(--primary);background:var(--primary-tint)}.review-player{border-radius:var(--radius-card);background:var(--viewer-bg);width:100%;max-height:60vh}.pill.seek{cursor:pointer;border:1px solid var(--line);background:var(--surface);min-width:44px;min-height:44px;font:inherit}.pill.seek:hover{border-color:var(--primary)}.pill.seek:focus-visible{box-shadow:var(--focus);outline:none}.location-on{display:inline-flex;position:relative}.location-on>.pill{cursor:pointer;border:0;min-height:32px}.location-menu{gap:var(--sp-2);width:15rem;padding:var(--sp-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-nested);z-index:30;display:grid;position:absolute;top:calc(100% + 6px);right:0}.tile{content-visibility:auto;contain-intrinsic-size:auto 110px}.list>.item,.clip-list>li{content-visibility:auto;contain-intrinsic-size:auto 72px}.media-tab{gap:var(--sp-3)}.day-tabs{gap:var(--sp-2);scrollbar-width:thin;padding-bottom:2px;display:flex;overflow-x:auto}.day-tab{min-width:56px;min-height:44px;padding:var(--sp-2);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-nested);color:var(--text);font:inherit;cursor:pointer;flex:none;justify-items:center;gap:1px;display:grid}.day-tab.on{background:var(--primary-tint);border-color:var(--primary);color:var(--primary-strong)}.day-tab-label{font-size:var(--fs-sm);white-space:nowrap;font-weight:600}.day-tab-count{font-size:var(--fs-xs);color:var(--muted)}.day-tab.on .day-tab-count{color:var(--primary-strong)}.bubbles{gap:var(--sp-2);flex-wrap:wrap;display:flex}.bubble{border-radius:var(--radius-pill);cursor:pointer;background:0 0;border:0;padding:0;line-height:0}.bubble .avatar{outline:2px solid var(--primary);outline-offset:1px}.bubble.off .avatar{opacity:.4;outline-color:#0000}.media-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.tile-face{aspect-ratio:1;background:var(--surface-2);border-radius:var(--radius-nested);cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;touch-action:manipulation;border:0;width:100%;padding:0;display:block;position:relative;overflow:hidden}.tile-face img{object-fit:cover;pointer-events:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.tile-blank{color:var(--muted);place-items:center;display:grid;position:absolute;inset:0}.media-grid .tile-toggle{opacity:0;cursor:pointer;z-index:1;width:26px;height:26px;margin:0;position:absolute;inset:6px 6px auto auto}.media-grid .tile-toggle:focus-visible+.tile-check,.media-grid .tile.checked .tile-check{opacity:1}.media-grid .tile-check{opacity:0;transition:opacity .12s}@media (hover:hover){.tile:hover .tile-check{opacity:1}}.media-grid .tile-toggle:focus-visible+.tile-check{outline:2px solid var(--primary);outline-offset:2px}.select-head{align-items:center;gap:var(--sp-2);padding-bottom:var(--sp-3);border-bottom:1px solid var(--line);display:flex}.select-x{align-items:center;gap:var(--sp-1);min-height:44px;margin-left:calc(var(--sp-2) * -1);padding:0 var(--sp-2);border-radius:var(--radius-sm);cursor:pointer;color:var(--muted);font-size:var(--fs-md);background:0 0;border:0;display:inline-flex}@media (hover:hover){.select-x:hover{color:var(--text);background:var(--surface-2)}}.selection-bar{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);flex-wrap:wrap;display:flex;position:sticky;bottom:0;box-shadow:0 -8px 24px #0f172a24}.media-track{--card-h:min(92vh, 880px);align-items:center;gap:var(--sp-3);scroll-snap-type:x mandatory;overscroll-behavior:contain;scrollbar-width:none;width:100%;height:100%;padding:0 calc(50vw - min(520px,92vw)/2);display:flex;overflow:auto hidden}body.viewing .media-track{overflow-x:hidden}.media-track::-webkit-scrollbar{display:none}.media-card{width:min(520px,92vw);height:var(--card-h);scroll-snap-align:center;scroll-snap-stop:always;align-content:start;gap:var(--sp-3);padding:var(--sp-3);background:var(--surface);border-radius:var(--radius-card);overscroll-behavior-y:contain;scrollbar-width:none;border:0;flex:none;grid-template-columns:minmax(0,1fr);display:grid;overflow-y:auto}.media-card::-webkit-scrollbar{display:none}.media-card-body{align-content:start;gap:var(--sp-3);grid-template-columns:minmax(0,1fr);display:grid}.pager-step{z-index:var(--z-overlay);background:var(--viewer-fill);border:1px solid var(--viewer-line);border-radius:var(--radius-pill);width:44px;height:44px;color:var(--scrim-ink);cursor:pointer;place-items:center;padding:0;display:none;position:fixed;top:50%;transform:translateY(-50%)}@media (width>=40rem){.pager-step{display:grid}}.pager-step.back{left:var(--sp-2)}.pager-step.on{right:var(--sp-2)}@media (hover:hover){.pager-step:hover{background:var(--viewer-fill-hover)}}.pager-step:active{transform:translateY(-50%)scale(.94)}.pager-step:focus-visible{outline:2px solid var(--scrim-ink);outline-offset:2px}.backdrop.pager{place-items:stretch stretch;padding:0}.media-frame{width:auto;height:calc(var(--card-h) * .62);margin:calc(var(--sp-3) * -2) calc(var(--sp-3) * -1) 0;background:var(--surface-2);border-radius:var(--radius-card) var(--radius-card) 0 0;position:relative;overflow:hidden}.media-frame-face{cursor:zoom-in;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;touch-action:manipulation;background:0 0;border:0;width:100%;height:100%;padding:0;display:block;position:relative}.media-frame-face img{object-fit:contain;pointer-events:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.media-frame[data-portrait=true] .media-frame-face img{object-fit:cover}.media-frame-blank{min-height:34vh;padding:var(--sp-4);color:var(--muted);text-align:center;place-items:center;display:grid}.media-frame-play{border-radius:var(--radius-pill);background:var(--scrim);width:44px;height:44px;color:var(--scrim-ink);pointer-events:none;place-items:center;margin:auto;display:grid;position:absolute;inset:0}@media (hover:hover){.media-frame-face:hover .media-frame-play{background:var(--scrim-strong)}}.media-frame-face:active .media-frame-play{transform:scale(.96)}.chip{align-items:center;gap:var(--sp-1);min-width:0;max-width:100%;padding:3px var(--sp-2);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-pill);font-size:var(--fs-sm);color:var(--text);white-space:nowrap;text-overflow:ellipsis;margin:0;font-weight:600;display:inline-flex;overflow:hidden;box-shadow:0 1px 3px #0f172a2e}.chip>svg{color:var(--muted);flex:none}.media-when{min-width:0}.card-top{z-index:var(--z-raised);height:0;margin-bottom:calc(var(--sp-3) * -1);position:sticky;top:0}.card-top-row{top:var(--sp-2);left:var(--sp-2);right:var(--sp-2);justify-content:space-between;align-items:center;gap:var(--sp-2);display:flex;position:absolute}.media-frame-over{gap:var(--sp-2);flex:none;display:flex}.media-over-btn{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-pill);width:36px;height:36px;color:var(--text);cursor:pointer;place-items:center;padding:0;display:grid;position:relative;box-shadow:0 1px 3px #0f172a2e}.media-over-btn:before{content:"";inset:calc(var(--sp-1) * -1);position:absolute}@media (hover:hover){.media-over-btn:hover:not(:disabled){background:var(--surface-2)}}.media-over-btn:active:not(:disabled){transform:translateY(1px)}.media-over-btn:disabled{color:var(--muted);cursor:not-allowed;opacity:.6}.media-over-btn[data-phase=done]{background:var(--good);border-color:var(--good);color:#fff}.media-frame-foot{left:var(--sp-2);right:var(--sp-2);bottom:var(--sp-2);align-items:center;gap:var(--sp-1);flex-wrap:wrap;margin:0;display:flex;position:absolute}.media-frame[data-reel=true] .media-frame-foot{right:calc(var(--sp-2) * 2 + 40px)}.media-by{gap:var(--sp-2);padding-left:3px}.media-by .avatar{width:24px;height:24px;font-size:var(--fs-xs);background:var(--surface-2)}.media-by-name{text-overflow:ellipsis;min-width:0;max-width:9rem;overflow:hidden}.tag-link,.tag-more{max-width:10rem;min-height:32px;padding:4px var(--sp-2);font:inherit;font-size:var(--fs-xs);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;align-items:center;font-weight:600;text-decoration:none;display:inline-flex;overflow:hidden}.tag-more{background:var(--surface);border:1px solid var(--line);color:var(--text)}@media (hover:hover){.tag-link:hover,.tag-more:hover{filter:brightness(.97)}}.tag-link:active,.tag-more:active{transform:translateY(1px)}.tag-add{align-items:center;gap:var(--sp-1);min-height:32px;padding:4px var(--sp-2);background:var(--scrim-soft);border:2px dotted var(--scrim-ink);border-radius:var(--radius-pill);color:var(--scrim-ink);font:inherit;font-size:var(--fs-xs);cursor:pointer;font-weight:600;display:inline-flex}@media (hover:hover){.tag-add:hover{background:var(--scrim)}}.tag-add:active{transform:translateY(1px)}.tag-add:focus-visible{outline:2px solid var(--scrim-ink);outline-offset:2px}.viewer{z-index:60;touch-action:pinch-zoom;padding:var(--sp-4);padding-top:calc(var(--sp-4) + 52px + var(--inset-top));padding-bottom:calc(var(--sp-4) + var(--inset-bottom));background:var(--viewer-bg);animation:viewer-in var(--dur-short) var(--ease-out);grid-template:minmax(0,1fr)/minmax(0,1fr);place-items:center;display:grid;position:fixed;inset:0}@keyframes viewer-in{0%{opacity:0}}.viewer-media{touch-action:pinch-zoom;object-fit:contain;border-radius:var(--radius-nested);max-width:100%;max-height:100%;display:block}.reel{touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;position:absolute;inset:0}.reel-media{object-fit:contain;pointer-events:none;background:#000;width:100%;height:100%;display:block}.media-frame[data-portrait=true] .reel-media{object-fit:cover}.reel-rate{top:var(--sp-2);align-items:center;gap:var(--sp-1);padding:3px var(--sp-2);background:var(--scrim);border-radius:var(--radius-pill);color:var(--scrim-ink);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;pointer-events:none;display:inline-flex;position:absolute;left:50%;transform:translate(-50%)}.reel-stopped{background:var(--scrim);border-radius:var(--radius-pill);width:56px;height:56px;color:var(--scrim-ink);pointer-events:none;place-items:center;margin:auto;padding-left:3px;display:grid;position:absolute;inset:0}.reel-through{pointer-events:none;background:#ffffff40;height:3px;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.reel-through>span{transform-origin:0;background:#fff;height:100%;display:block;transform:scaleX(0)}.reel-btn{right:var(--sp-2);background:var(--scrim);border-radius:var(--radius-pill);width:40px;height:40px;color:var(--scrim-ink);cursor:pointer;border:0;place-items:center;padding:0;display:grid;position:absolute}.reel-btn.mute{bottom:var(--sp-2)}.reel-btn.full{bottom:calc(var(--sp-2) * 2 + 40px)}.viewer-close{top:calc(var(--sp-3) + var(--inset-top));right:var(--sp-3);background:var(--viewer-fill);border:1px solid var(--viewer-line);border-radius:var(--radius-pill);width:44px;height:44px;color:var(--scrim-ink);cursor:pointer;place-items:center;padding:0;display:grid;position:absolute}@media (hover:hover){.viewer-close:hover{background:var(--viewer-fill-hover)}}.viewer-close:active{transform:translateY(1px)}.viewer-close:focus-visible{outline:2px solid var(--scrim-ink);outline-offset:2px}.highlights>summary{font-size:var(--fs-sm)}.place-map{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-nested);height:180px;overflow:hidden}.media-meta{align-items:center;gap:var(--sp-1) var(--sp-3);padding-bottom:var(--sp-1);border-bottom:1px solid var(--line);flex-wrap:wrap;display:flex}.meta-item{align-items:center;gap:var(--sp-1);min-width:0;min-height:36px;padding:0 var(--sp-1);margin-left:calc(var(--sp-1) * -1);border-radius:var(--radius-nested);color:var(--muted);font:inherit;font-size:var(--fs-sm);font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:0;display:inline-flex}.meta-item>svg{flex:none}.meta-item[data-on=true]{color:var(--bad)}.meta-item.place{flex:1 1 0;min-width:0}.meta-place{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}@media (hover:hover){.meta-item:hover{color:var(--text);background:var(--surface-2)}.meta-item[data-on=true]:hover{color:var(--bad)}}.meta-item:active{transform:translateY(1px)}.media-comment-list{gap:var(--sp-3);margin:0;display:grid}.media-comment-list>li{align-items:flex-start;gap:var(--sp-2);display:flex}.media-comment-list .avatar{width:28px;height:28px;font-size:var(--fs-xs)}.media-comment-list .reply{padding-left:var(--sp-4)}.media-comment-body{min-width:0;font-size:var(--fs-sm);overflow-wrap:anywhere;gap:2px;display:grid}.media-comment-who{align-items:center;gap:var(--sp-2);color:var(--muted);font-weight:600;display:flex}.media-composer{bottom:calc(var(--sp-3) * -1);z-index:var(--z-raised);gap:var(--sp-2);margin-bottom:calc(var(--sp-3) * -1);padding:var(--sp-2) 0 var(--sp-3);background:var(--surface);border-top:1px solid var(--line);display:grid;position:sticky}.media-composer-row{align-items:center;gap:var(--sp-2);display:flex}input.composer-text,input.composer-at{min-height:44px;padding:var(--sp-2) 0;border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0}input.composer-text{flex:1;width:0;min-width:0}input.composer-at{text-align:center;font-variant-numeric:tabular-nums;flex:none;width:4.5rem}input.composer-text:focus-visible,input.composer-at:focus-visible{border-bottom-color:var(--primary);padding-bottom:calc(var(--sp-2) - 1px);border-bottom-width:2px;outline:0}.composer-send{background:var(--primary);border-radius:var(--radius-pill);width:44px;height:44px;color:var(--on-primary);cursor:pointer;border:0;flex:none;place-items:center;padding:0;display:grid}@media (hover:hover){.composer-send:hover:not(:disabled){background:var(--primary-strong)}}.composer-send:active:not(:disabled){transform:translateY(1px)}.composer-send:disabled{background:var(--surface-2);color:var(--muted);cursor:not-allowed}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spin{animation:none}}.media-comment-list,.tag-panel,.label-list,.sidebar,.clip-list{overscroll-behavior:contain}.you-head{align-items:center;gap:var(--sp-2);display:flex}.you-name{overflow-wrap:anywhere;font-weight:600}.color-pool{gap:var(--sp-2);border:0;flex-wrap:wrap;margin:0;padding:0;display:flex}.color-pool>legend{padding:0 0 var(--sp-1)}.pool-swatch{border-radius:var(--radius-pill);background:var(--swatch);color:#fff;cursor:pointer;border:0;place-items:center;width:28px;height:28px;padding:0;display:grid;position:relative}.pool-swatch:before{content:"";position:absolute;inset:-8px}.pool-swatch[data-on=true]{box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--swatch)}.pool-swatch:disabled{cursor:not-allowed;background:color-mix(in srgb, var(--swatch) 22%, var(--surface));box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--swatch) 55%, transparent)}@media (hover:hover){.pool-swatch:not(:disabled):hover{transform:scale(1.08)}}.pool-swatch:not(:disabled):active{transform:translateY(1px)}@media (prefers-reduced-motion:reduce){.pool-swatch{transition:none}.pool-swatch:not(:disabled):hover{transform:none}}:root[data-theme=dark] .pool-swatch{background:var(--swatch-dark);color:#0f172a}:root[data-theme=dark] .pool-swatch[data-on=true]{box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--swatch-dark)}:root[data-theme=dark] .pool-swatch:disabled{background:color-mix(in srgb, var(--swatch-dark) 22%, var(--surface));box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--swatch-dark) 55%, transparent)}.lib-tabs{justify-content:center;gap:var(--sp-6);border-bottom:1px solid var(--line);display:flex}.lib-tab{padding:var(--sp-2) 0 var(--sp-3);cursor:pointer;min-height:44px;font-size:var(--fs-md);color:var(--muted);background:0 0;border:0;font-weight:600;position:relative}.lib-tab.on{color:var(--text)}.lib-tab.on:after{content:"";background:var(--primary);border-radius:2px;height:2px;position:absolute;bottom:-1px;left:0;right:0}@media (hover:hover){.lib-tab:not(.on):hover{color:var(--text)}}.tag-wall{gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(min(8rem,100%),1fr));display:grid}.tag-folder{gap:var(--sp-2);padding:var(--sp-2);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);color:inherit;text-decoration:none;display:grid}.tag-folder[data-colored=true]{border-color:color-mix(in srgb, var(--tag) 42%, var(--line))}@media (hover:hover){.tag-folder:hover{border-color:var(--primary)}}.tag-dot{width:8px;height:8px;margin-right:var(--sp-1);border-radius:var(--radius-pill);background:var(--tag);vertical-align:.05em;display:inline-block}:root[data-theme=dark] .tag-folder[data-colored=true]{border-color:color-mix(in srgb, var(--tag-dark) 42%, var(--line))}:root[data-theme=dark] .tag-dot{background:var(--tag-dark)}.tag-folder-note{-webkit-line-clamp:3;line-clamp:3;gap:var(--sp-1);font-size:var(--fs-sm);color:var(--text);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.tag-folder-note>svg{float:left;margin:2px var(--sp-1) 0 0;color:var(--muted)}.tag-folder[data-colored=true] .tag-folder-note>svg{color:var(--tag)}:root[data-theme=dark] .tag-folder[data-colored=true] .tag-folder-note>svg{color:var(--tag-dark)}.tag-folder-previews{border-radius:var(--radius-nested);aspect-ratio:1;background:var(--surface-2);grid-template-columns:1fr 1fr;gap:2px;display:grid;overflow:hidden}.tag-folder-previews:empty{display:block}.tag-folder-previews img,.tag-folder-blank{object-fit:cover;background:var(--surface-2);width:100%;height:100%}.tag-folder-previews>:only-child{grid-area:1/1/-1/-1}.tag-folder-foot{justify-content:space-between;align-items:baseline;gap:var(--sp-2);display:flex}.tag-folder-name{overflow-wrap:anywhere;min-width:0;font-weight:600}.tag-folder-count{font-size:var(--fs-xs);color:var(--muted);font-variant-numeric:tabular-nums;flex:none}.tag-folder-who{align-items:center;gap:var(--sp-1);min-width:0;font-size:var(--fs-xs);color:var(--muted);display:flex}.tag-folder-who>svg{flex:none}.tag-folder[data-private=true]{border-style:dashed}.action-menu{position:relative}.tag-head>.action-menu{margin:calc(var(--sp-1) * -1) calc(var(--sp-2) * -1) 0 0;position:absolute;top:0;right:0}.action-menu-open{border-radius:var(--radius-nested);width:44px;height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}@media (hover:hover){.action-menu-open:hover{background:var(--surface-2);color:var(--text)}}.action-menu-open[aria-expanded=true]{background:var(--surface-2);color:var(--text)}.action-menu-list{top:calc(100% + var(--sp-1));z-index:30;min-width:14rem;max-width:min(18rem, calc(100vw - 2 * var(--sp-3)));padding:var(--sp-1);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-pop,0 8px 24px #0000002e);text-align:left;display:grid;position:absolute;right:0}.action-menu-item{align-items:start;gap:var(--sp-2);width:100%;padding:var(--sp-2);border-radius:var(--radius-nested);color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.action-menu-item>svg{color:var(--muted);flex:none;margin-top:2px}@media (hover:hover){.action-menu-item:hover{background:var(--surface-2)}}.action-menu-item:focus-visible{background:var(--surface-2)}.action-menu-text{gap:2px;min-width:0;display:grid}.action-menu-detail{font-size:var(--fs-xs);color:var(--muted)}.action-menu-item[data-destructive=true]{margin-top:var(--sp-1);border-top:1px solid var(--line);border-radius:0 0 var(--radius-nested) var(--radius-nested);padding-top:var(--sp-2)}.action-menu-item[data-destructive=true]>svg,.action-menu-item[data-destructive=true]{color:var(--danger,#b4232a)}.tag-head{justify-items:center;gap:var(--sp-1);padding-bottom:var(--sp-3);border-bottom:1px solid var(--line);text-align:center;display:grid;position:relative}.tag-head-back{width:44px;height:44px;margin:calc(var(--sp-1) * -1) 0 0 calc(var(--sp-2) * -1);border-radius:var(--radius-sm);color:var(--muted);justify-content:center;align-items:center;display:flex;position:absolute;top:0;left:0}@media (hover:hover){.tag-head-back:hover{color:var(--text);background:var(--surface-2)}}.tag-head-name{overflow-wrap:anywhere;min-width:0;max-width:100%;margin:0;padding:0 44px;position:relative}.tag-head-name>svg{vertical-align:-.15em;margin-right:var(--sp-1)}.tag-head[data-colored=true] .tag-head-name>svg{color:var(--tag)}:root[data-theme=dark] .tag-head[data-colored=true] .tag-head-name>svg{color:var(--tag-dark)}.tag-head-count{color:var(--muted);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;margin:0;position:relative}.tag-head-count:after{content:"";left:50%;bottom:calc(var(--sp-3) * -1 - 1px);background:var(--primary);border-radius:2px;width:2.5rem;height:2px;position:absolute;transform:translate(-50%)}.tag-head[data-colored=true] .tag-head-count:after{background:var(--tag)}:root[data-theme=dark] .tag-head[data-colored=true] .tag-head-count:after{background:var(--tag-dark)}.tag-head-note{max-width:48rem;color:var(--text);overflow-wrap:anywhere;margin:0}.tag-day{font-size:var(--fs-sm);color:var(--muted);margin:0;font-weight:600}.tag-panel{gap:var(--sp-3);max-height:85vh;padding:var(--sp-3);padding-bottom:calc(var(--sp-3) + var(--inset-bottom));background:var(--surface);border-top:1px solid var(--line);border-radius:var(--radius-card) var(--radius-card) 0 0;display:grid;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:0 -8px 24px #0f172a24}.tag-panel h2{font-size:var(--fs-md);margin:0}@media (width>=640px){.tag-panel{left:50%;right:auto;bottom:var(--sp-4);border-radius:var(--radius-card);border:1px solid var(--line);width:min(520px,94vw);transform:translate(-50%)}}.label-list{gap:var(--sp-2);max-height:40vh;display:grid;overflow-y:auto}.label-row{align-items:center;gap:var(--sp-2);width:100%;min-height:44px;padding:var(--sp-2);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-nested);color:var(--text);font:inherit;text-align:left;cursor:pointer;display:flex}.label-row:hover:not(:disabled){border-color:var(--primary)}.label-row.on{border-color:var(--primary);background:var(--primary-tint)}.row-on{color:var(--primary);flex:none;place-items:center;display:grid}.row-mixed{color:var(--muted);font-size:var(--fs-sm);flex:none}.tag-panel>.button.wide{justify-content:center;width:100%}.dial-thumb{width:22px;height:22px;margin-right:var(--sp-2);border-radius:var(--radius-sm,4px);object-fit:cover;vertical-align:-6px}.map-days{z-index:2;gap:var(--sp-2);padding:var(--sp-2);overscroll-behavior-x:contain;scrollbar-width:none;background:linear-gradient(var(--surface) 55%, transparent);display:flex;position:absolute;top:0;left:0;right:0;overflow-x:auto}.map-days::-webkit-scrollbar{display:none}.map-days .day-tab{min-height:44px;box-shadow:0 1px 3px #0f172a1f}.map-full-top.below-days{top:calc(var(--map-days-h) + var(--sp-2))}.map-notice{inset:var(--map-days-h) var(--sp-4) var(--sp-4);z-index:1;pointer-events:none;place-items:center;display:grid;position:absolute}.map-full .map-notice{bottom:calc(var(--dial-h) + var(--inset-bottom) + var(--sp-1) + 46px + var(--sp-2))}.map-notice>*{pointer-events:auto;max-height:100%;overflow-y:auto}.map-card[data-off=true]{opacity:0;pointer-events:none}.map-card{background:var(--surface);cursor:pointer;width:56px;height:56px;transition:opacity var(--dur-micro) var(--ease-out);border:0;border-radius:12px;padding:3px;display:block;position:relative;transform:translateY(-8px);box-shadow:0 2px 8px #0f172a47}.map-card:after{content:"";background:var(--surface);border-radius:2px;width:10px;height:10px;margin-left:-5px;position:absolute;bottom:-5px;left:50%;transform:rotate(45deg);box-shadow:2px 2px 4px #0f172a2e}.map-card[data-on=true]{outline:3px solid var(--primary);outline-offset:1px;z-index:1}.map-card-frame{background:var(--surface-2);border-radius:9px;place-items:center;width:100%;height:100%;display:grid;overflow:hidden}.map-card-frame img{object-fit:cover;width:100%;height:100%;display:block}.map-card-frame.blank{color:var(--muted);font-size:18px}.map-card-estimated{background:var(--surface);border:2.5px solid var(--primary);border-radius:50%;width:12px;height:12px;position:absolute;top:-3px;right:-3px}.setup-row{column-gap:var(--sp-3);row-gap:var(--sp-2);padding:var(--sp-3) 0;border-top:1px solid var(--line);grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid}.setup-row:first-of-type{border-top:0}.setup-row>.setup-mark{width:1.5rem;height:1.5rem;color:var(--muted);grid-area:1/1;place-items:center;display:grid}.setup-row>.setup-text{grid-area:1/2;gap:2px;min-width:0;display:grid}.setup-row>.button{grid-area:2/2;justify-self:start}.setup-done{gap:var(--sp-2);justify-items:start;display:grid}.editor-map{gap:var(--sp-4);grid-template-columns:minmax(0,1fr);display:grid}.editor-days{scrollbar-width:none;grid-column:1/-1}.editor-days::-webkit-scrollbar{display:none}@media (width>=1024px){.shell:has(.editor-map){grid-template-rows:auto minmax(0,1fr);height:100dvh}.content:has(.editor-map){flex-direction:column;min-height:0;display:flex}.content:has(.editor-map)>.page{flex-direction:column;min-height:0;display:flex}.content:has(.editor-map)>.page>.stack{flex-direction:column;min-height:0;display:flex}.content:has(.editor-map)>.page{flex:1}.content:has(.editor-map)>.page>.stack{flex:1}.content:has(.editor-map)>.page{width:100%}.editor-map{flex:1;grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:18rem}@supports not selector(:has(*)){.editor-map{max-height:calc(100dvh - 11rem)}}.editor-canvas .map{min-height:4rem}.editor-canvas,.editor-media{min-height:0;overflow:hidden}.editor-canvas{grid-template-rows:minmax(0,1fr) auto auto;display:grid}.editor-canvas .map-box,.editor-canvas .map{height:100%;min-height:0}.editor-media{flex-direction:column;display:flex;position:relative}.media-browse{flex:auto}}@media (width<=1023.98px){.editor-canvas .map{height:min(46vh,420px)}.editor-media{gap:var(--sp-3);display:grid}}.editor-timeline{align-content:start;gap:var(--sp-2);margin-top:var(--sp-3);display:grid}.editor-readout{align-items:center;gap:var(--sp-2);margin:0;display:flex}.editor-timeline .knob{width:100%;accent-color:var(--primary);min-height:44px}.editor-timeline .histogram{height:36px;margin-bottom:calc(var(--sp-2) * -1)}.editor-timeline .histogram .bar{cursor:pointer;background:0 0;border:0;border-radius:2px;flex:1;align-items:flex-end;height:100%;padding:0;display:flex}@media (hover:hover){.editor-timeline .histogram .bar:hover{background:var(--surface-2)}}.hour-strip{padding-top:var(--sp-2);border-top:1px solid var(--line);grid-template-areas:"hour";align-content:start;display:grid}.hour-strip>*{grid-area:hour}.hour-empty{align-self:center;margin:0}.filmstrip{gap:var(--sp-2);overscroll-behavior-x:contain;scrollbar-width:none;height:72px;margin:0;display:flex;overflow-x:auto}.filmstrip::-webkit-scrollbar{display:none}.filmstrip .tile{flex:none;width:72px;height:72px}.filmstrip .tile.checked .tile-face{outline:2px solid var(--primary);outline-offset:1px}.media-browse{gap:var(--sp-3);align-content:start;min-height:0;display:grid;overflow:auto}.media-drawer{gap:var(--sp-3);overscroll-behavior:contain;background:var(--surface);border-left:1px solid var(--line);min-height:0;box-shadow:var(--shadow-side);animation:drawer-in var(--dur-short) var(--ease-out);align-content:start;display:grid;overflow:auto}@keyframes drawer-in{0%{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.media-drawer{animation:none}}@media (width>=1024px){.media-drawer{z-index:var(--z-raised);padding-left:var(--sp-3);position:absolute;inset:0}}@media (width<=1023.98px){.media-drawer{width:min(100%,30rem);z-index:var(--z-overlay);padding:var(--sp-4);padding-top:calc(var(--sp-4) + var(--inset-top));padding-bottom:calc(var(--sp-4) + var(--inset-bottom));position:fixed;inset:0 0 0 auto}}.editor-media .tile-grid{gap:var(--sp-3);grid-template-columns:repeat(4,minmax(0,1fr))}.editor-media .tile.checked .tile-face{outline:2px solid var(--primary);outline-offset:1px}.media-drawer .media-card{background:0 0;border-radius:0;width:100%;height:auto;padding:0;overflow:visible}.media-drawer .media-frame{aspect-ratio:4/3;border-radius:0;height:auto;margin:0}.media-drawer .media-frame[data-portrait=true] .media-frame-face img,.media-drawer .media-frame[data-portrait=true] .reel-media{object-fit:contain}.board-panes.two{gap:var(--sp-4);grid-template-columns:minmax(16rem,22rem) minmax(0,1fr);align-items:start;display:grid}.board-heading{font-size:var(--fs-sm);font-weight:600}.board-group>summary{cursor:pointer;align-items:center;min-height:44px;display:flex}.board-row{align-items:center;gap:var(--sp-2);width:100%;min-height:44px;padding:var(--sp-2) var(--sp-3);border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);text-align:left;cursor:pointer;display:flex}.board-row:hover{background:var(--surface-2)}.board-row:active{transform:translateY(1px)}.board-row[aria-current=true]{border-color:var(--primary);background:var(--primary-tint)}.drop-wash{z-index:var(--z-overlay);pointer-events:none;background:color-mix(in srgb, var(--primary) 16%, transparent);outline:3px dashed var(--primary);outline-offset:-12px;place-items:center;display:grid;position:fixed;inset:0}.drop-wash-label{padding:var(--sp-3) var(--sp-4);border-radius:var(--radius-pill);background:var(--primary);color:var(--on-primary);font-weight:600}.dropzone{border-style:dotted;border-width:2px;border-color:var(--primary);min-height:12rem;padding-block:var(--sp-6);justify-content:center}.board-start{align-items:center;gap:var(--sp-3);flex-wrap:wrap}.comment-by{display:block}.danger-legend{top:var(--sp-2);left:var(--sp-2);z-index:2;max-width:min(260px,100% - 16px);padding:var(--sp-1) var(--sp-2);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-nested);font-size:var(--fs-xs);position:absolute}.danger-legend h3{margin:0 0 var(--sp-1);font-size:var(--fs-xs)}.danger-legend ol{margin:0;padding:0}.danger-legend li{align-items:center;gap:var(--sp-1);display:flex}.danger-legend p{margin:var(--sp-1) 0 0}.danger-legend [role=group]{gap:var(--sp-1);margin-top:var(--sp-1);display:flex}.danger-legend button[aria-pressed=true]{font-weight:700}.danger-top{top:var(--sp-2);left:var(--sp-2);right:calc(var(--sp-2) * 2 + 48px);z-index:2;align-items:flex-start;gap:var(--sp-1);pointer-events:none;flex-direction:column;display:flex;position:absolute}.danger-top>*{pointer-events:auto;max-width:min(300px,100%);position:static}.danger-top>.map-credit{max-width:min(320px,100% + 8px);margin-left:-8px}.danger-top>.map-credit:first-child{margin-top:-8px}.danger-compass{color:#111827;width:100%;min-width:0;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;gap:2px;margin:0;padding:8px 0 0;display:grid}.danger-compass[aria-disabled=true]{cursor:default}.danger-compass-scale{display:block;position:relative}.danger-compass-strip{border-radius:4px;grid-template-columns:repeat(6,1fr);display:grid;overflow:hidden;box-shadow:0 1px 4px #0000004d}.danger-compass-step{background:var(--step);color:#fff;height:20px;font-size:var(--fs-xs);text-shadow:0 0 2px #0009;place-items:center;font-weight:700;transition:background-color .3s,color .3s;display:grid}.danger-compass-step[data-dim=true]{background:color-mix(in srgb, var(--step) 40%, #fff);color:#4b5563;text-shadow:none}.danger-compass[data-none] .danger-compass-step{background:#9ca3af}.danger-compass-pointer{border:6px solid #0000;border-top-color:#111827;border-bottom:0;width:0;height:0;margin-left:-6px;transition:left .4s;position:absolute;top:-8px}.danger-compass-text{white-space:nowrap;text-overflow:ellipsis;font-size:var(--fs-xs);text-shadow:0 0 2px #fff,0 0 3px #fff,0 0 4px #fff;font-weight:600;overflow:hidden}@media (prefers-reduced-motion:reduce){.danger-compass-pointer,.danger-compass-step{transition:none}}.zone-total{align-items:center;gap:var(--sp-1) var(--sp-2);flex-wrap:wrap;display:flex}.zone-crimes{gap:var(--sp-2);margin:0;display:grid}.zone-crime{gap:2px;display:grid}.zone-crime-bar{background:var(--line);border-radius:3px;height:6px;display:block;overflow:hidden}.zone-crime-bar>span{background:var(--text);height:100%;display:block}.danger-swatch{border-radius:2px;flex:none;width:14px;height:10px}.danger-swatch.none{border:1px dashed var(--line)}.map-layers{bottom:calc(var(--sp-2) + var(--inset-bottom));z-index:3;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-pill);padding:2px;display:flex;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 1px 3px #0f172a2e}.map-layers.above-dial{bottom:calc(var(--dial-h) + var(--inset-bottom) + var(--sp-1))}.map-layers button{min-height:40px;padding:0 var(--sp-3);border-radius:var(--radius-pill);color:var(--text);font-size:var(--fs-sm);background:0 0;border:0;margin:0;font-weight:600}.map-layers button[aria-pressed=true]{background:var(--text);color:var(--surface)}.map-layer-empty{z-index:2;padding:var(--sp-2) var(--sp-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-nested);font-size:var(--fs-sm);margin:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.poi-search{padding:var(--sp-2);background:linear-gradient(var(--surface) 70%, transparent);position:absolute;top:0;left:0;right:0}.poi-search[data-chips=true]{background:var(--surface)}.poi-search-row{align-items:stretch;gap:var(--sp-2);display:flex}.poi-search[data-searching=true]{background:var(--surface)}.poi-search-form{flex:auto;min-width:0;display:flex}.poi-search-row .field{flex:auto;min-width:0;margin:0}.poi-search-close{white-space:nowrap;flex:none;min-height:40px;margin:0}.poi-search input{box-sizing:border-box;width:100%;min-height:40px;padding:0 var(--sp-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-pill);color:var(--text);font-size:var(--fs-sm);margin:0}.poi-search input:disabled{color:var(--muted)}.poi-search-results{top:calc(var(--poi-search-h) + var(--poi-chips-h) + 44px);left:var(--sp-2);right:var(--sp-2);max-width:30rem;max-height:calc(100% - var(--poi-search-h) - var(--poi-chips-h) - 44px - 60px - var(--inset-bottom));padding:var(--sp-2);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-soft);position:absolute;overflow-y:auto}.poi-search-results[data-chips=false]{top:calc(var(--poi-search-h) + 44px);max-height:calc(100% - var(--poi-search-h) - 44px - 60px - var(--inset-bottom))}.poi-search-results[data-full=true]{top:var(--poi-search-h);border:0;border-top:1px solid var(--line);max-width:none;max-height:none;box-shadow:none;border-radius:0;bottom:0;left:0;right:0}.poi-search-results p{margin:0}.poi-search-group+.poi-search-group{margin-top:var(--sp-3);padding-top:var(--sp-2);border-top:1px solid var(--line)}.poi-search-head{margin:0 0 var(--sp-1)}.poi-found .poi-row-foot{gap:var(--sp-2)}.poi-chips{top:var(--poi-search-h);z-index:2;gap:var(--sp-2);padding:var(--sp-2);overscroll-behavior-x:contain;scrollbar-width:none;background:linear-gradient(var(--surface) 55%, transparent);display:flex;position:absolute;left:0;right:0;overflow-x:auto}.poi-chips::-webkit-scrollbar{display:none}:is(.map-box:has(.maplibregl-ctrl-zoom-in) .poi-search,.map-box:has(.maplibregl-ctrl-zoom-in) .poi-chips){right:calc(40px + var(--sp-2) * 2)}.map-full:has(.map-full-top) .poi-search-row{padding-right:calc(40px + var(--sp-2) * 2)}.map-full:has(.poi-chips) .map-full-top{top:calc(var(--sp-2) + 2px)}.poi-chips button{min-height:44px;padding:0 var(--sp-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-pill);color:var(--text);font-size:var(--fs-sm);text-transform:capitalize;white-space:nowrap;flex:none;margin:0;font-weight:600;box-shadow:0 1px 3px #0f172a1f}.poi-chips button[aria-pressed=true]{background:var(--text);color:var(--surface);border-color:var(--text)}.poi-chips .poi-chip-emoji,.poi-chips .poi-chip-edit{place-items:center;min-width:44px;padding:0;font-size:1.25rem;line-height:1;display:inline-grid}.poi-chips .poi-chip-emoji[aria-pressed=true]{background:var(--surface);color:var(--text);border-color:var(--chip-color,var(--text));outline:2px solid var(--chip-color,var(--text));outline-offset:-2px}.poi-chips .poi-chip-edit{color:var(--muted)}.poi-sheet{--poi-switcher-h:calc(44px + var(--sp-2) * 2);left:var(--sp-2);right:var(--sp-2);bottom:calc(var(--poi-switcher-h) + var(--inset-bottom));z-index:3;max-width:30rem;max-height:calc(100% - var(--poi-switcher-h) - var(--poi-search-h) - var(--poi-chips-h) - var(--inset-bottom));background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);flex-direction:column;margin:0 auto;display:flex;position:absolute;overflow:hidden;box-shadow:0 -4px 18px #0f172a29}.poi-sheet.open{height:60%}.poi-sheet-handle{width:100%;min-height:44px;padding:6px var(--sp-3) var(--sp-1);color:var(--muted);font-size:var(--fs-sm);touch-action:none;cursor:grab;background:0 0;border:0;flex-direction:column;align-items:center;gap:4px;margin:0;font-weight:600;display:flex}.poi-sheet-grip{background:var(--line);border-radius:2px;width:36px;height:4px}.poi-sheet-body{overscroll-behavior:contain;min-height:0;padding:0 var(--sp-2) var(--sp-2);flex:1;overflow-y:auto}.poi-rows{gap:var(--sp-1);grid-template-columns:minmax(0,1fr);margin:0;display:grid}.poi-row{gap:var(--sp-1);min-width:0;padding:var(--sp-1) var(--sp-2);border-radius:var(--radius-nested);flex-direction:column;display:flex}.poi-row[aria-current=true]{background:var(--surface-2)}.poi-row-text{flex-direction:column;flex:1;min-width:0;display:flex}.poi-row-text strong,.poi-row-text s,.poi-row-text .poi-row-note{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.poi-row-foot{align-items:center;gap:var(--sp-2);min-width:0;display:flex}.poi-row-why{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.poi-row.closing .poi-row-why{color:var(--wait);font-weight:600}.poi-row.passed{opacity:.6}.poi-controls{align-items:center;gap:var(--sp-1);flex:none;display:flex}.poi-vote,.poi-tick{border:1px solid var(--line);width:44px;height:44px;color:var(--text);background:0 0;place-items:center;margin:0;padding:0;display:inline-grid}.poi-vote{border-radius:var(--radius-pill)}.poi-vote[aria-pressed=true]{background:var(--bad-bg);border-color:var(--bad);color:var(--bad)}.poi-vote[aria-pressed=true] svg{fill:currentColor}.poi-tick{border-radius:var(--radius-nested)}.poi-tick[aria-pressed=true]{background:var(--good-bg);border-color:var(--good);color:var(--good)}.poi-tick:disabled,.poi-vote:disabled{opacity:.5}.poi-faces{flex:none;align-items:center;display:inline-flex}.poi-faces .avatar{outline:2px solid var(--surface)}.poi-faces>*+*{margin-inline-start:calc(var(--sp-2) * -1)}.poi-faces-more{min-width:28px;height:28px;padding:0 var(--sp-1);border-radius:var(--radius-pill);outline:2px solid var(--surface);background:var(--surface-2);color:var(--muted);font-size:var(--fs-xs);place-items:center;font-weight:600;display:grid}.poi-row[aria-current=true] .poi-faces .avatar,.poi-row[aria-current=true] .poi-faces-more{outline-color:var(--surface-2)}.poi-row[aria-current=true] .poi-faces-more{background:var(--surface);box-shadow:inset 0 0 0 1px var(--line)}.poi-vote.poi-vote-text{gap:var(--sp-1);width:auto;padding:0 var(--sp-3);font-size:var(--fs-sm);font-weight:600;display:inline-flex}.poi-done-title{margin:var(--sp-2) var(--sp-2) var(--sp-1)}.poi-notice{top:calc(44px + var(--sp-2) * 3);left:var(--sp-3);right:var(--sp-3);z-index:2;padding:var(--sp-2) var(--sp-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-nested);font-size:var(--fs-sm);margin:0;position:absolute}.poi-row-open{min-width:0;max-width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;margin:0;padding:0;display:block}.poi-add{top:calc(44px + var(--sp-2) * 3);right:var(--sp-2);z-index:2;min-height:44px;padding:0 var(--sp-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-pill);color:var(--text);font-size:var(--fs-sm);align-items:center;gap:4px;margin:0;font-weight:600;display:inline-flex;position:absolute;box-shadow:0 1px 3px #0f172a2e}.poi-notice:has(~.poi-add){right:calc(var(--sp-2) * 2 + 8.5rem)}.poi-sync{align-items:flex-start;gap:var(--sp-2);flex-direction:column;display:flex}.poi-sync form{gap:var(--sp-2);flex-direction:column;width:100%;display:flex}.poi-sync input{min-height:44px;font-size:16px}.poi-sync-actions{justify-content:flex-end;gap:var(--sp-2);display:flex}.poi-sync p{font-size:var(--fs-sm);margin:0}.poi-dock{top:0;left:0;right:0;bottom:var(--inset-bottom);z-index:3;padding:0 var(--sp-2);pointer-events:none;flex-direction:column;justify-content:flex-end;display:flex;position:absolute}.poi-dock>*{pointer-events:auto}.poi-dock-bar{padding:var(--sp-2) 0;pointer-events:none;grid-template-columns:1fr auto 1fr;align-items:center;display:grid}.poi-dock-bar>*{pointer-events:auto}.poi-dock .map-layers{grid-column:2;position:static;transform:none}.poi-dock .poi-add.round{border-radius:50%;grid-column:3;justify-content:center;justify-self:end;width:52px;height:52px;padding:0;position:static}.map-full .poi-dock .poi-sheet{flex:none;width:100%;max-height:50%;position:relative;bottom:auto;left:auto;right:auto}.poi-dock.full{padding:0}.map-full .poi-dock.full .poi-sheet{max-width:none;height:auto;max-height:none;box-shadow:none;border:0;border-radius:0;flex:auto}.poi-crosshair{z-index:2;pointer-events:none;background:linear-gradient(var(--text), var(--text)) center / 2px 100% no-repeat, linear-gradient(var(--text), var(--text)) center / 100% 2px no-repeat;width:28px;height:28px;filter:drop-shadow(0 0 2px var(--surface));position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.poi-editor{left:var(--sp-2);right:var(--sp-2);bottom:calc(44px + var(--sp-2) * 2 + var(--inset-bottom));z-index:3;max-width:30rem;max-height:calc(50% - 44px - var(--sp-2) * 2 - var(--inset-bottom) - 20px);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);flex-direction:column;margin:0 auto;display:flex;position:absolute;overflow:hidden;box-shadow:0 -4px 18px #0f172a29}.poi-editor-head,.poi-editor-foot{justify-content:space-between;align-items:center;gap:var(--sp-2);padding:var(--sp-1) var(--sp-2) var(--sp-1) var(--sp-3);display:flex}.poi-editor-foot{border-top:1px solid var(--line);justify-content:flex-end}.poi-editor-title{font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.poi-editor-body{gap:var(--sp-3);min-height:0;padding:0 var(--sp-3) var(--sp-2);overscroll-behavior:contain;flex:1;align-content:start;display:grid;overflow-y:auto}.poi-editor-note{white-space:pre-line;margin:0}.poi-editor-field{gap:var(--sp-1);border:0;min-width:0;margin:0;padding:0;display:grid}.poi-editor-field input:not([type=radio]),.poi-editor-field select{min-height:44px}.poi-editor-votes{justify-content:space-between;align-items:center;gap:var(--sp-2);display:flex}.poi-editor-votes p{margin:0}.poi-editor-categories{gap:var(--sp-2);flex-wrap:wrap;display:flex}.poi-editor-category{align-items:center;gap:var(--sp-2);min-height:44px;padding:0 var(--sp-3) 0 var(--sp-1);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-pill);color:var(--text);font-size:var(--fs-sm);text-transform:capitalize;cursor:pointer;margin:0;font-weight:600;display:inline-flex}.poi-editor-category[aria-pressed=true]{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 18%, var(--surface))}.poi-editor-category:focus-visible{box-shadow:var(--focus);outline:none}.poi-editor-category-face{width:32px;height:32px;font-size:var(--fs-md);border-radius:50%;place-items:center;line-height:1;display:grid}.poi-view[data-snap=full]{max-height:calc(100% - 44px - var(--sp-2) * 2 - var(--inset-bottom) - 44px - var(--sp-2) * 3)}.poi-view>.poi-sheet-handle{flex:none;min-height:40px;padding-bottom:0}.map-full .zone-panel{max-height:calc(50% - 44px - var(--sp-2) * 2 - var(--inset-bottom))}.poi-view-head{padding:var(--sp-1) var(--sp-2);grid-template-columns:44px minmax(0,1fr) 44px;display:grid}.poi-view-name{text-align:center}.poi-view-meta{align-items:center;gap:var(--sp-1) var(--sp-2);flex-wrap:wrap;display:flex}.poi-view-actions{gap:var(--sp-2);display:flex}.poi-found-view{bottom:calc(var(--sp-2) + var(--inset-bottom))}.poi-found-add{gap:var(--sp-1);flex:1;justify-content:center;margin:0}.poi-vote.poi-action,.poi-tick.poi-action{gap:var(--sp-1);border-radius:var(--radius-nested);width:auto;font:inherit;font-size:var(--fs-sm);cursor:pointer;flex:1;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.poi-badge{padding:2px var(--sp-2);border:1px solid var(--badge);border-radius:var(--radius-pill);background:color-mix(in srgb, var(--badge) 14%, transparent);color:var(--badge);font-size:var(--fs-sm);white-space:nowrap;font-weight:600}.poi-view-body{gap:var(--sp-2)}.poi-view-body p{margin:0}.poi-view-note{white-space:pre-line}.poi-view-likes{align-items:center;gap:var(--sp-2);display:flex}.poi-view-comments{justify-content:space-between;align-items:center;gap:var(--sp-2);width:100%;min-height:44px;padding:0 var(--sp-3);border:1px solid var(--line);border-radius:var(--radius-nested);color:var(--text);font:inherit;cursor:pointer;background:0 0;font-weight:600;display:flex}.poi-view-comments:focus-visible{box-shadow:var(--focus);outline:none}.poi-view-thread{gap:var(--sp-2);display:grid}.poi-view-thread[hidden]{display:none}.poi-comments{gap:var(--sp-2);margin:0;display:grid}.poi-view-compose{align-items:flex-end;gap:var(--sp-2);display:flex}.poi-view-compose .poi-editor-field{flex:1}.poi-view-compose textarea{resize:vertical;width:100%;min-height:44px}.poi-view-compose .button{flex:none;min-height:44px}.poi-view .poi-view-body{padding-bottom:var(--sp-3)}.poi-view-error{padding:var(--sp-1) var(--sp-3) 0;margin:0}.poi-editor-new-category{gap:var(--sp-2);display:flex}.poi-editor-new-category input{flex:1;min-width:0}.poi-window{gap:var(--sp-1);padding:var(--sp-2);border:1px solid var(--line);border-radius:var(--radius-nested);display:grid}.poi-window p{margin:0}.poi-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.poi-days button{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-nested);min-height:44px;color:var(--text);font-size:var(--fs-sm);margin:0;padding:0;font-weight:600}.poi-days button[aria-pressed=true]{background:var(--text);border-color:var(--text);color:var(--surface)}.poi-hours{align-items:flex-end;gap:var(--sp-2);display:flex}.poi-hours label{flex:1;gap:2px;display:grid}.category-list{gap:var(--sp-1);margin:0;padding:0;list-style:none;display:grid}.category-row{align-items:stretch;gap:var(--sp-1);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-nested);min-width:0;min-height:64px;display:flex;position:relative}.category-row[data-dragging]{z-index:var(--z-raised);box-shadow:var(--shadow-soft);border-color:var(--primary)}.category-grip{min-width:44px;min-height:44px;color:var(--muted);cursor:grab;touch-action:none;background:0 0;border:0;flex:none;place-items:center;margin:0;padding:0;display:grid}.category-open{align-items:center;gap:var(--sp-3);min-width:0;min-height:44px;padding:0 var(--sp-2);color:var(--text);text-align:left;background:0 0;border:0;flex:1;margin:0;display:flex}.category-face{border-radius:var(--radius-pill);border:2px solid var(--chip-color,var(--line));background:var(--surface);flex:none;place-items:center;width:40px;height:40px;font-size:1.25rem;line-height:1;display:grid}.category-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.category-count{color:var(--muted);flex:none}.category-row-none .category-open{padding-left:var(--sp-4)}.category-grip:focus-visible,.category-open:focus-visible{box-shadow:var(--focus);border-radius:var(--radius-nested);outline:none}.places-poi-panel .poi-editor{border-radius:var(--radius-card) var(--radius-card) 0 0;width:100%;max-height:90vh;box-shadow:none;margin:0 auto;position:static}.cat-panel{overscroll-behavior:contain;gap:var(--sp-4);width:100%;max-width:30rem;max-height:90vh;padding:var(--sp-4);padding-bottom:calc(var(--sp-4) + var(--inset-bottom));background:var(--surface);border-radius:var(--radius-card) var(--radius-card) 0 0;align-content:start;margin:0 auto;display:grid;overflow:auto}.cat-panel:focus{outline:none}.cat-panel-head{justify-content:space-between;align-items:center;gap:var(--sp-2);display:flex}.cat-panel-head h2{font-size:var(--fs-md);margin:0}.cat-preview{width:56px;height:56px;box-shadow:0 0 0 1px var(--line);font-size:var(--fs-xl);border:3px solid #fff;border-radius:50%;justify-self:center;place-items:center;line-height:1;display:grid}.cat-field{gap:var(--sp-1);min-width:0;display:grid}.cat-field input{min-height:44px}.cat-faces{gap:var(--sp-1);grid-template-columns:repeat(auto-fill,44px);display:grid}.cat-face-option{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-nested);width:44px;height:44px;font-size:var(--fs-lg);cursor:pointer;place-items:center;margin:0;padding:0;line-height:1;display:grid}.cat-face-option[aria-pressed=true]{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 18%, var(--surface))}.cat-colours{gap:var(--sp-1);flex-wrap:wrap;display:flex}.cat-colour{cursor:pointer;background:0 0;border:0;place-items:center;width:44px;height:44px;margin:0;padding:0;display:grid}.cat-colour>span{border-radius:50%;width:36px;height:36px}.cat-colour[aria-pressed=true]>span{outline:3px solid var(--text);outline-offset:2px}.cat-face-option:focus-visible,.cat-colour:focus-visible{box-shadow:var(--focus);border-radius:var(--radius-nested);outline:none}.cat-actions{justify-content:flex-end;gap:var(--sp-2);display:flex}.cat-remove{gap:var(--sp-2);padding-top:var(--sp-4);border-top:1px solid var(--line);justify-items:start;display:grid}.cat-remove p{margin:0}.button.danger-outline{color:var(--bad);border-color:var(--bad)}
