:root{--bg:#f6f7f9;--panel:#fff;--ink:#0f172a;--muted:#64748b;--line:#e2e8f0;--accent:#2563eb;--danger:#b91c1c;--stay:#334155;--hot:#f04e23;--etch:#d8dee8;--radius:8px;--edge:5px;--key:34px;--nub:26px;--tap:44px;--lift:0 1px 2px #0f172a17;--over:0 6px 18px #0f172a24;--quick:.12s;--open:.2s;--ease:cubic-bezier(.2, 0, 0, 1)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}*{box-sizing:border-box}[hidden]{display:none!important}#status,#until-field,#maker-days,#maker-note,#editor-note,.hits{opacity:0;transition:opacity var(--quick) var(--ease), transform var(--quick) var(--ease), display var(--quick) allow-discrete;transform:translateY(-4px)}#status:not([hidden]),#until-field:not([hidden]),#maker-days:not([hidden]),#maker-note:not([hidden]),#editor-note:not([hidden]),.hits:not([hidden]){opacity:1;transform:none}@starting-style{#status:not([hidden]),#until-field:not([hidden]),#maker-days:not([hidden]),#maker-note:not([hidden]),#editor-note:not([hidden]),.hits:not([hidden]){opacity:0;transform:translateY(-4px)}}html,body{overscroll-behavior:none;height:100%;overflow:hidden}body{background:var(--bg);height:100dvh;color:var(--ink);font-variant-numeric:tabular-nums;-webkit-text-size-adjust:100%;grid-template-rows:minmax(0,1fr);margin:0;font:15px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:grid}#root{display:contents}#trips{grid-template-columns:auto minmax(0,1fr) repeat(4,auto);align-items:center;gap:.4rem;display:grid}#trips>svg{color:var(--muted)}#trips>button{width:var(--key);height:var(--key);color:var(--muted);place-items:center;padding:0;display:grid}#summary{color:var(--muted);grid-column:1/-1;margin:0;font-size:.8rem}#summary:empty{display:none}#trips>button.on{color:var(--ink);background:#f1f5f9}.sheet{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--lift);transition:opacity var(--open) var(--ease), transform var(--open) var(--ease);grid-column:1/-1;gap:.6rem;padding:.75rem;display:grid}@starting-style{.sheet{opacity:0;transform:translateY(-6px)}}.sheet h3{margin:0;font-size:.85rem}.sheet section{gap:.4rem;display:grid}.hint{color:var(--muted);margin:0;font-size:.78rem}.hint.bad{color:var(--danger)}#account .who{border-bottom:1px solid var(--line);gap:.1rem;margin:0;padding-bottom:.5rem;display:grid}#account .who span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}#account .row{border-radius:var(--edge);color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:.45rem .5rem;font-size:.9rem;text-decoration:none}#account .row:hover{color:var(--accent);background:#eef4ff}.share-head{justify-content:space-between;align-items:center;display:flex}.share .scope{width:100%;margin-bottom:.4rem;padding:.35rem .45rem;font-size:.85rem;display:block}.share .tick{color:var(--muted);align-items:center;gap:.4rem;margin-bottom:.5rem;font-size:.85rem;display:flex}.share .tick input{flex-shrink:0;width:.95rem;height:.95rem;margin:0}.share .link{width:100%;min-width:0;color:var(--muted);font-size:.78rem}.share .invite{grid-template-columns:minmax(0,1fr) auto auto;gap:.3rem;display:grid}.share .invite input,.share .invite select,.share .invite button{padding:.35rem .45rem;font-size:.85rem}.people{gap:.15rem;margin:0;padding:0;list-style:none;display:grid}.people li{align-items:center;gap:.4rem;font-size:.85rem;display:flex}.people .name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.people em{color:var(--muted);font-size:.75rem;font-style:normal}.people .what{color:var(--muted);font-size:.78rem}.people select{padding:.15rem .3rem;font-size:.78rem}.page{grid-template-rows:none;grid-template-columns:minmax(0,1fr);grid-auto-rows:max-content;align-content:safe center;justify-items:center;gap:1rem;padding:1.25rem;display:grid;overflow-y:auto}.page-card{gap:.75rem;width:min(26rem,100%);padding:1.5rem}.page-card h1{margin:0;font-size:1.15rem}.page-card form{gap:.5rem;display:grid}.page-card label{color:var(--muted);gap:.25rem;font-size:.75rem;display:grid}.page-card input[readonly]{color:var(--muted);background:#f6f7f9}.page-card button[type=submit]{min-height:var(--tap);justify-content:center}.crumb{margin:0;font-size:.8rem}.crumb a{color:var(--muted);text-decoration:none}.crumb a:hover{color:var(--accent)}.locked-out{border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc;gap:.5rem;padding:1rem;display:grid}.locked-out h2{margin:0;font-size:1rem}.locked-out p{color:var(--muted);margin:0;font-size:.85rem}.locked-out label{color:var(--muted);gap:.2rem;font-size:.75rem;display:grid}#shared-head{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.5rem;display:grid}#shared-head strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}#shared-head .hint{grid-column:1/-1}#doorway{z-index:90;background:var(--bg);opacity:1;transition:opacity var(--open) var(--ease), display var(--open) allow-discrete;place-items:center;padding:1.25rem;display:grid;position:fixed;inset:0}#doorway[hidden]{opacity:0;display:none}@starting-style{#doorway:not([hidden]){opacity:0}}.door{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);width:min(22rem,100%);box-shadow:var(--lift);gap:.75rem;padding:1.5rem;display:grid}.door-mark{background:url(/assets/mark-986sfc3o.webp) 0 0/contain no-repeat;width:64px;height:64px;margin-bottom:-.25rem}.door h1{margin:0;font-size:1.15rem}.door-note{color:var(--muted);margin:0;font-size:.85rem}.door form{gap:.5rem;display:grid}.door label{color:var(--muted);gap:.25rem;font-size:.75rem;display:grid}.door button{min-height:var(--tap);justify-content:center}.door .google{background:var(--panel);border:1px solid var(--line);color:var(--ink);align-items:center;gap:.6rem;font-weight:500;display:flex}.door-or{color:var(--muted);grid-template-columns:1fr auto 1fr;align-items:center;gap:.6rem;margin:0;font-size:.75rem;display:grid}.door-or:before,.door-or:after{content:"";background:var(--line);height:1px}#door-said{color:var(--muted);margin:0;font-size:.85rem}#door-said.wrong{color:var(--danger)}#invite{z-index:85;color:var(--ink);text-align:center;transition:opacity var(--open) var(--ease), display var(--open) allow-discrete;background:#fff;border:0;border-radius:0;place-content:center;justify-items:center;gap:1.5rem;padding:1.5rem;display:grid;position:fixed;inset:0}#invite[hidden]{opacity:0;display:none}@starting-style{#invite:not([hidden]){opacity:0}}#invite-art{aspect-ratio:1;background-image:var(--sheet);background-position:0 0;background-repeat:no-repeat;background-size:calc(var(--frames) * 100%) 100%;width:min(20rem,62vmin);animation:flip var(--beat) var(--steps) infinite}@media (prefers-reduced-motion:reduce){#invite-art{background-position-x:0%;animation:none}}#invite-words{gap:.3rem;max-width:18rem;display:grid}#invite-words strong{font-size:1.15rem}#invite-words span{color:var(--muted);font-size:.85rem}#add{order:2}#locate{order:0;justify-self:start}#days{order:3;margin-bottom:-1rem}#timeline{order:4}#menu,#scrim{display:none}form#add{--from:-6px;opacity:0;transform:translateY(var(--from));transition:opacity var(--open) var(--ease), transform var(--open) var(--ease), display var(--open) allow-discrete;display:none}body.adding form#add{opacity:1;display:grid;transform:none}@starting-style{body.adding form#add{opacity:0;transform:translateY(var(--from))}}#add-toggle{width:100%;color:var(--accent);border-color:#c7d7fb;order:1;justify-content:center;align-items:center;gap:.4rem;padding:.55rem;font-weight:600;display:flex}#add-toggle[aria-expanded=true]{background:#eef4ff}#add-head,#add[hidden]~#add-toggle{display:none}main{grid-template-columns:minmax(0,1fr) minmax(340px,30%);min-height:0;display:grid}#map,#map-note,#map-held{height:100%;min-height:0}#map-note{text-align:center;color:var(--muted);background:#e9edf2;place-items:center;padding:2rem;display:grid}#map-held{text-align:center;background:#e9edf2;place-content:center;justify-items:center;gap:.75rem;padding:2rem;display:grid}#map-held p{max-width:24ch;color:var(--muted);margin:0;font-size:.85rem}#map-held button{background:var(--accent);border-color:var(--accent);color:#fff;min-height:var(--tap);padding:.55rem .9rem;font-weight:600}aside{border-left:1px solid var(--line);background:var(--panel);min-height:0;padding:1rem max(1rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) 1rem;flex-direction:column;gap:1rem;display:flex;overflow-y:auto}#search{gap:.4rem;min-width:0;display:grid}#search input{width:100%;min-width:0}.hits{z-index:60;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--over);background:#fff;gap:2px;margin:0;padding:0;list-style:none;display:grid;position:fixed}.hits button{text-align:left;background:0 0;border:0;border-radius:0;gap:.1rem;width:100%;padding:.5rem .6rem;display:grid}.hits button:hover,.hits button:focus-visible{background:#eef4ff}.hits strong{font-size:.9rem;font-weight:600}.hits small{color:var(--muted);font-size:.78rem}#picked{color:var(--muted);transition:color var(--quick) var(--ease);white-space:nowrap;text-overflow:ellipsis;min-height:1.2em;margin:0;font-size:.85rem;overflow:hidden}#picked.on{color:var(--ink);font-weight:600}body.adding form#add{border:1px solid var(--line);border-radius:var(--radius);background:#fbfcfe;grid-template-columns:minmax(0,1fr);gap:.5rem;padding:.9rem}.pair{grid-template-columns:minmax(0,1fr);gap:.5rem;display:grid}.pair label{color:var(--muted);gap:.15rem;font-size:.75rem;display:grid}.mode{border:1px solid var(--line);border-radius:var(--edge);grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.mode button{background:var(--panel);color:var(--muted);border:0;border-radius:0;padding:.4rem;font-size:.85rem;font-weight:600}.mode button+button{border-left:1px solid var(--line)}.mode button:hover{background:var(--bg)}.mode button.on{background:var(--line);color:var(--ink)}.mode.precision{grid-template-columns:repeat(3,1fr)}.mode.precision button{font-size:.78rem}input,select,button{font:inherit;color:inherit;border-radius:var(--edge);border:1px solid var(--line);min-height:var(--key);background:#fff;padding:.5rem .6rem}input:focus-visible,select:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}button{cursor:pointer}button,.chip,.day,.info .go,.info .take{transition:background-color var(--quick) var(--ease), border-color var(--quick) var(--ease), color var(--quick) var(--ease)}button[type=submit]{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}button:disabled{opacity:.45;cursor:not-allowed}button.quiet{color:var(--muted);min-height:var(--nub);background:0 0;border:0;padding:.25rem .4rem;font-size:.8rem}button.quiet:hover{color:var(--accent)}.days{z-index:3;background:var(--panel);flex-wrap:wrap;flex-shrink:0;gap:.35rem;margin-top:-1rem;padding:1.4rem 0 .4rem;display:flex;position:sticky;top:-1rem}.days .break{flex-basis:100%;height:0}.chip{--chip:var(--muted);min-height:var(--nub);border-radius:var(--edge);align-items:center;gap:.35rem;padding:.12rem .55rem;font-size:.78rem;display:inline-flex}.chip:before{content:"";background:var(--chip);border-radius:50%;width:8px;height:8px}.chip.on{border-color:var(--ink);background:var(--ink);color:#fff}.day h2{border-left:4px solid var(--day);justify-content:space-between;align-items:baseline;gap:.5rem;margin:1.1rem 0 .5rem;padding-left:.55rem;font-size:.95rem;display:flex}.day h2>span:first-child{margin-right:auto}.day h2 small{color:var(--muted);font-size:.78rem;font-weight:400}.day h2 .play{min-height:var(--nub);border-radius:var(--edge);color:var(--muted);background:0 0;align-self:center;align-items:center;gap:.3rem;padding:.15rem .5rem;font-size:.75rem;font-weight:600;display:inline-flex}.day h2 .play:hover{border-color:var(--day);color:var(--day)}.day h2 .play.on{border-color:var(--day);background:var(--day);color:#fff}.day ol{margin:0;padding:0;list-style:none}.day.anytime{border-top:1px dashed var(--line);margin-top:1.4rem;padding-top:.4rem}.day.anytime h2{border-left-style:dashed}li.stop{border-radius:var(--radius);cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:.6rem;padding:.55rem;display:grid}li.stop:hover{background:#f1f5f9}li.stop.on{background:var(--line);box-shadow:inset 0 0 0 1px var(--day)}li.stop.editing{cursor:default;background:#f8fafc;display:block}li.stop .number{background:var(--day);color:#fff;border-radius:50%;place-items:center;width:24px;height:24px;font-size:.75rem;font-weight:700;display:grid}li.stop .number.query{color:var(--day);background:0 0;border:1.5px dashed}.title{align-items:baseline;gap:.5rem;margin:0;display:flex}.title time{color:var(--day);font-size:.85rem;font-weight:700}.kind{color:var(--muted);opacity:.8;align-self:center;display:inline-flex}.kind svg{display:block}.sr{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.address,.notes{color:var(--muted);margin:.15rem 0 0;font-size:.82rem}.notes{font-style:italic}.actions{gap:.1rem;display:flex}.lifted{opacity:.35}.ghost{z-index:50;pointer-events:none;border-radius:var(--radius);opacity:.85;background:#fff;margin:0;list-style:none;position:fixed;top:0;left:0;box-shadow:0 10px 24px #0f172a38}li.slot{border:1.5px dashed var(--day);border-radius:var(--radius);background:#f1f5f9;height:2.4rem;margin:.1rem 0}body.dragging{-webkit-user-select:none;user-select:none}body.dragging .day,body.dragging .chip{transition:background-color .12s}.day.over{box-shadow:inset 0 0 0 2px var(--day);border-radius:var(--radius);background:#f1f5f9}.chip.over{background:var(--ink);color:#fff}.editing .actions{justify-content:flex-end;gap:.4rem;margin-top:.5rem}.editing form{gap:.45rem;display:grid}.editing label{color:var(--muted);gap:.15rem;font-size:.75rem;display:grid}.when-field{grid-template-columns:auto minmax(0,1fr);gap:.35rem;display:grid}.when-field select{font:inherit;border:1px solid var(--line);border-radius:var(--edge);color:var(--ink);background:#fff;padding:.3rem;font-size:.8rem}.drawn{--face:46px;width:var(--face);height:var(--face);background-color:#fff;background-image:var(--sheet);background-position:0 0;background-repeat:no-repeat;border-radius:50%}.drawn[data-frames="3"]{--steps:steps(3, jump-none);background-size:300% 100%}.drawn[data-frames="4"]{--steps:steps(4, jump-none);background-size:400% 100%}.drawn[data-frames="5"]{--steps:steps(5, jump-none);background-size:500% 100%}.wanderer{z-index:10;pointer-events:none;opacity:.9;animation:flip var(--beat) var(--steps) infinite, stroll .9s var(--ease) both;border:2px solid #fff;transition-property:transform;transition-timing-function:cubic-bezier(.45,0,.35,1);position:fixed;top:0;left:0;box-shadow:0 1px 4px #0f172a47}.wanderer.walker{translate:calc(var(--face) * var(--away,0)) calc(var(--face) * var(--lift,0) * -1);scale:calc(1 + var(--wet,0) * .08) calc(1 - var(--wet,0) * .12);transition:none;position:relative}.wanderer.walker[data-part=lead]{transform:translate(-12px)}.wanderer.walker[data-part=follow]{transform:translate(15px)}@keyframes flip{0%{background-position-x:0%}to{background-position-x:100%}}@keyframes stroll{0%{opacity:0}to{opacity:.9}}@media (prefers-reduced-motion:reduce){.drawn{background-position-x:0%;animation:none!important}}@media (width<=820px){.wanderer{--face:38px}}.steady{pointer-events:none;position:absolute;inset:0}.doing{pointer-events:none;width:0;height:0;position:absolute;bottom:100%;left:50%}.doing>*{filter:drop-shadow(0 0 2px #fffffff2);width:24px;height:24px;margin-left:-12px;animation:1.2s ease-out infinite backwards rise;position:absolute;bottom:4px;left:0}.doing>* svg{width:100%;height:100%;display:block}.doing .heart{color:#f43f5e;animation:flit .55s var(--ease) both}.doing .bowl{color:#ea580c}.doing .glass{color:#db2777}.doing .spark{color:#f59e0b}.doing .bag{color:#7c3aed}.doing .bubble{color:#0284c7;opacity:1;animation:none;transform:translateZ(0)}.wanderer[data-part=lead] .doing .bubble{margin-left:-22px}.wanderer[data-part=follow] .doing .bubble{margin-left:-2px}.wanderer[data-part=lead] .doing .bubble .shell{transform-box:view-box;transform-origin:50%;transform:scaleX(-1)}.doing .wing{color:#0891b2}.doing .gasp{color:#111827;width:18px;height:18px;animation:startle 1.8s var(--ease) both;margin-left:-9px}@keyframes startle{0%{opacity:0;transform:translateY(4px)scale(.4)}13%{opacity:1;transform:translateY(-10px)scale(1.2)}21%{transform:translateY(-7px)scale(1)}78%{opacity:1}to{opacity:0;transform:translateY(-13px)scale(.95)}}.doing.carried>*{--across:calc(var(--face) * var(--lean,0));--reach:calc(var(--face) * var(--head) * var(--held-reach));width:var(--prop);height:var(--prop);margin-left:calc(var(--prop) / -2 + var(--across));animation:pop .42s var(--ease) backwards}.doing.carried .cap,.doing.carried .topper,.doing.carried .specs{rotate:var(--tilt,0deg)}.doing.carried .cap,.doing.carried .topper{--across:calc(var(--face) * var(--hat,var(--lean,0)))}.doing.carried .cap{--prop:calc(var(--face) * var(--head) * var(--cap-size));bottom:calc(var(--face) * (var(--crown) + var(--head) * var(--cap-drop)) * -1)}.doing.carried .topper{--prop:calc(var(--face) * var(--head) * var(--topper-size));bottom:calc(var(--face) * (var(--crown) + var(--head) * var(--topper-drop)) * -1)}.doing.carried .specs{--prop:calc(var(--face) * var(--head) * var(--specs-size));bottom:calc(var(--face) * (var(--brow) + var(--head) * var(--specs-drop)) * -1)}.doing.carried .specs.aside{--prop:calc(var(--face) * var(--head) * var(--specs-aside-size));bottom:calc(var(--face) * (var(--brow) + var(--head) * var(--specs-aside-drop)) * -1);margin-left:calc(var(--prop) * var(--specs-aside-hang) + var(--across))}.doing.carried .book,.doing.carried .tote{margin-left:calc(var(--reach) + var(--across))}.doing.carried .book{--prop:calc(var(--face) * var(--head) * var(--book-size));bottom:calc(var(--face) * (var(--brow) + var(--head) * var(--book-drop)) * -1)}.doing.carried .tote{--prop:calc(var(--face) * var(--head) * var(--tote-size));bottom:calc(var(--face) * (var(--brow) + var(--head) * var(--tote-drop)) * -1)}.doing.carried .book svg,.doing.carried .tote svg{animation:sway 2.2s var(--ease) infinite;transform-origin:50% 15%}.doing.carried .dizzy{--prop:calc(var(--face) * var(--dizzy-size));bottom:calc(var(--face) * (var(--dizzy-rise) - var(--crown)))}.wanderer[data-part=follow] .doing.carried .book,.wanderer[data-part=follow] .doing.carried .tote{margin-left:calc((var(--reach) + var(--prop)) * -1 + var(--across))}.doing .book{color:#b45309}.doing .tote{color:#15803d}.doing .specs{color:#1f2937}.doing .cap{color:#1e293b}.doing .topper,.doing .dizzy{color:#111827}.doing .dizzy svg{animation:1.4s linear infinite spin}.spray{width:0;height:0;position:absolute;top:100%;left:50%}.spray>*{width:calc(var(--face) * .3);height:calc(var(--face) * .3);margin-left:calc(var(--face) * -.15);transform-origin:50% 100%;filter:drop-shadow(0 0 1.5px #ffffffe6);animation:splash .85s ease-out calc(var(--wait) * .3) 1 forwards;position:absolute;bottom:0;left:0}.spray>* svg{width:100%;height:100%;display:block}.spray.grass{color:#15803d}.spray.grass>*{width:calc(var(--face) * .26);height:calc(var(--face) * .26);margin-left:calc(var(--face) * -.13)}.spray.water{color:#0284c7}.ripple{width:0;height:0;translate:calc(var(--face) * (var(--sank,0) - var(--away,0))) calc(var(--face) * var(--lift,0));position:absolute;top:100%;left:50%}.ripple>*{filter:drop-shadow(0 0 1.5px #ffffffe6);-webkit-mask-image:radial-gradient(ellipse calc(var(--face) * .55) calc(var(--face) * .46) at calc(50% + (var(--away,0) - var(--sank,0)) * var(--face)) calc(50% - (.5 + var(--lift,0)) * var(--face)), #0000 94%, #000 100%);mask-image:radial-gradient(ellipse calc(var(--face) * .55) calc(var(--face) * .46) at calc(50% + (var(--away,0) - var(--sank,0)) * var(--face)) calc(50% - (.5 + var(--lift,0)) * var(--face)), #0000 94%, #000 100%);animation:ripple 1.2s ease-out var(--wait) infinite both;border:1.5px solid #0284c7;border-radius:50%;position:absolute;bottom:0;left:0;transform:translate(-50%,50%)}@keyframes ripple{0%{opacity:0;width:calc(var(--face) * 1.05);height:calc(var(--face) * .34)}20%{opacity:.6}to{opacity:0;width:calc(var(--face) * 2.3);height:calc(var(--face) * .76)}}@keyframes splash{0%{opacity:0;transform:rotate(var(--fly)) translateY(0) scale(.3)}18%{opacity:1}55%{transform:rotate(var(--fly)) translateY(calc(var(--face) * -1.2)) scale(1.15)}to{opacity:0;transform:rotate(var(--fly)) translateY(calc(var(--face) * -.5)) scale(.8)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pop{0%{opacity:0;transform:translateY(5px)scale(.5)rotate(-14deg)}60%{opacity:1;transform:translateY(-1px)scale(1.14)rotate(5deg)}to{opacity:1;transform:none}}@keyframes sway{0%,to{transform:rotate(-7deg)}50%{transform:rotate(7deg)}}.doing .steam{animation:1.5s ease-out infinite waft}.doing .spark svg{animation:twinkle 1.6s var(--ease) infinite}.doing .bubble svg{animation:blurt 1.5s var(--ease) infinite}@keyframes waft{0%{opacity:.15;transform:translateY(2px)}45%{opacity:1;transform:translateY(-1px)}to{opacity:.15;transform:translateY(-3px)}}@keyframes twinkle{0%,to{transform:scale(.78)}45%{transform:scale(1.12)}}@keyframes blurt{0%{transform:scale(.55)}20%{transform:scale(1.15)}40%,to{transform:scale(1)}}.wanderer[data-part=follow] .doing>*{animation-delay:.12s}@keyframes rise{0%{opacity:0;transform:translateY(0)scale(.8)}18%{opacity:1;transform:translateY(-7px)scale(1)}65%{opacity:1}to{opacity:0;transform:translateY(-34px)scale(1)}}.doing .cost{color:#111827;letter-spacing:-.04em;animation:flit .55s var(--ease) both;justify-content:center;align-items:center;font-size:.82rem;font-weight:700;line-height:1;display:flex}@keyframes flit{0%{opacity:0;transform:translateY(2px)scale(.6)}22%{opacity:1;transform:translateY(-8px)scale(1.12)}38%{transform:translateY(-7px)scale(1)}70%{opacity:1}to{opacity:0;transform:translateY(-19px)scale(.95)}}.doing .z{color:#1e293b;letter-spacing:-.02em;justify-content:center;align-items:center;font-size:.82rem;font-style:italic;font-weight:700;line-height:1;display:flex}@media (prefers-reduced-motion:reduce){.doing>*,.doing>* svg,.doing .steam{opacity:1;transform:translateY(-10px);animation:none!important}.doing>* svg,.doing .steam,.doing.carried>*,.doing .bubble{transform:none}.spray,.ripple{display:none}}.houses{filter:drop-shadow(0 1px 2px #0f172a59);pointer-events:none;align-items:flex-end;gap:2px;display:flex}.house{width:30px;height:30px;display:block;position:relative}.house:last-child{width:25px;height:25px}.house svg{width:100%;height:100%;display:block}.halo{width:46px;height:46px;animation:halo 1.8s var(--ease) infinite;pointer-events:none;background:#f04e232e;border-radius:50%;transform:translateY(50%);box-shadow:0 0 0 2px #f04e238c}@keyframes halo{0%{box-shadow:0 0 0 2px #f04e238c}70%{box-shadow:0 0 0 14px #f04e2300}to{box-shadow:0 0 0 2px #f04e2300}}#tour{--pad:.7rem;--lip:.6rem;--dot:10px;--row:1.29rem;padding:var(--lip) var(--pad);border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);gap:.55rem;display:grid;position:relative}.tour-said{min-width:0;padding-left:calc(var(--dot) + .5rem);align-items:baseline;gap:.5rem;display:flex}.tour-clock{font-size:.95rem;font-weight:600;line-height:1.35}.tour-where{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--muted);font-size:.85rem;overflow:hidden}.tour-missed{color:var(--muted);margin:0;font-size:.78rem}.tape{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.55rem;display:grid}.tape-strip{background-image:linear-gradient(var(--etch), var(--etch));background-position:50%;background-repeat:no-repeat;background-size:100% 2px;height:16px;position:relative}.tape-strip.live:after{content:"";position:absolute;inset:-14px 0}.tape-mark{background:#c2cad6;width:1px;height:8px;margin-top:-4px;margin-left:-.5px;position:absolute;top:50%}.tape-run{transform:translateX(calc(var(--through,0) * 100%));position:absolute;inset:0}.tape:not(.held) .tape-run{will-change:transform}.tape-head{background:var(--hot);width:2px;height:14px;margin-top:-7px;position:absolute;top:50%;left:-1px}.tape-strip.live{cursor:pointer;touch-action:none}.tape-strip.live:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.tape-strip.live:hover .tape-head,.tape-strip.live:focus-visible .tape-head,.tape-strip.live:active .tape-head{width:3px;height:18px;margin-top:-9px;left:-1.5px}.reel{width:22px;height:22px;display:block}.reel-flange{fill:none;stroke:var(--etch);stroke-width:1px}.reel-tape{fill:#c2cad6;transition:r var(--quick) linear}.reel-spoke{stroke:var(--panel);stroke-width:2.4px}.reel-hub{fill:var(--panel)}.reel-spin{transform-box:fill-box;transform-origin:50%;animation:wind var(--turn,2.6s) linear infinite}.tape.held .reel-spin{animation-play-state:paused}.tape.winding .reel-spin{animation-direction:reverse;animation-duration:calc(var(--turn,2.6s) / 3)}@keyframes wind{to{transform:rotate(1turn)}}.tour-hatch{top:-1px;left:calc(var(--pad) - 3px);width:calc(var(--dot) + 6px);background:var(--panel);height:1px;position:absolute}.tour-lid{background:var(--line);transform-origin:0;width:100%;height:100%;display:block}.tour-slot{top:-1px;left:var(--pad);box-sizing:content-box;width:var(--dot);height:var(--dot);padding-top:calc(var(--lip) + 1px + (var(--row) - var(--dot)) / 2);position:absolute;overflow:hidden}.tour-dot{width:var(--dot);height:var(--dot);border:1px solid var(--etch);border-radius:50%;display:block;position:absolute;bottom:0;left:0}.tour-dot.in{border:0}.tour-acts{align-items:center;gap:.35rem;display:flex}.tour-acts button{min-width:var(--key);min-height:var(--key);border:1px solid var(--line);border-radius:var(--edge);background:var(--bg);color:var(--ink);place-items:center;padding:.25rem .6rem;font-size:.8rem;display:grid}.tour-acts button:hover{background:var(--line)}.tour-acts button:active{background:var(--etch)}.tour-keys{border:1px solid var(--line);border-radius:var(--edge);display:flex;overflow:hidden}.tour-keys button{border:0;border-radius:0}.tour-keys button+button{border-left:1px solid var(--line)}.tour-out{margin-left:auto}.tour-acts svg{fill:currentColor;width:13px;height:13px;display:block}.tour-acts .rate{font-size:.78rem}@media (width<=820px){#tour{display:none}body.touring #tour{--pad:.6rem;z-index:25;left:max(.6rem, env(safe-area-inset-left));right:max(.6rem, env(safe-area-inset-right));bottom:max(.6rem, env(safe-area-inset-bottom));box-shadow:var(--over);display:grid;position:fixed}.tour-clock{font-size:1.1rem}#tour{--row:1.49rem}}@keyframes arrive{0%{opacity:0;transform:translateY(6px)}}.stop.fresh,.stay.fresh{animation:arrive var(--open) var(--ease)}.stay{border-radius:var(--radius);cursor:pointer;background:#f8fafc;border:1px dashed #cbd5e1;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:.6rem;margin:.35rem 0;padding:.55rem .6rem;display:grid}.stay:hover{border-color:var(--muted)}.stay.on{border-style:solid;border-color:var(--stay);background:#eef2f7}.stay.later{color:var(--muted);background:0 0;border-style:none;padding:.3rem .6rem;font-size:.8rem}.stay.later .title{font-size:.8rem}.stay.later .body{align-items:baseline;gap:.4rem;display:flex}.when{color:var(--muted);margin:.15rem 0 0;font-size:.82rem}.stay.later .when{margin:0;font-size:.8rem}.stay.later .when:before{content:"· "}.stay.editing{cursor:default;display:block}.stay .bed{color:var(--stay);place-items:center;margin-top:.1rem;display:grid}.stay.later .bed svg{width:13px;height:13px}.tools{flex-wrap:wrap;align-items:center;gap:.3rem;margin-top:.35rem;display:flex}.tools .go{min-height:var(--nub);border:1px solid var(--line);border-radius:var(--edge);color:var(--accent);white-space:nowrap;background:#fff;align-items:center;padding:.12rem .5rem;font-size:.75rem;text-decoration:none;display:inline-flex}.tools .go:hover{border-color:var(--accent)}.file{max-width:100%;min-height:var(--nub);border:1px solid var(--line);border-radius:var(--edge);background:#fff;align-items:center;gap:.2rem;padding:.12rem .2rem .12rem .45rem;font-size:.75rem;display:inline-flex}.file a{color:var(--accent);text-overflow:ellipsis;white-space:nowrap;max-width:14rem;text-decoration:none;overflow:hidden}.file a:hover{text-decoration:underline}.file .drop{min-height:0;color:var(--muted);background:0 0;border:0;align-self:stretch;align-items:center;padding:0 .25rem;font-size:.9rem;line-height:1;display:flex}.file .drop:hover{color:var(--danger)}button.attach{min-height:var(--nub);padding:.12rem .4rem;font-size:.75rem}li.leg{border-left:2px dotted var(--line);color:var(--muted);margin:.1rem 0 .1rem 1.7rem;padding-left:.8rem;font-size:.75rem}.empty{color:var(--muted);font-size:.9rem}#status{border-radius:var(--radius);color:var(--danger);background:#fee2e2;margin:0;padding:.6rem .8rem;font-size:.85rem}#status.note{color:var(--muted);background:#f0f2f6}#maker,#editor{border-radius:var(--radius);background:var(--panel);width:min(24rem,100vw - 2rem);color:var(--ink);box-shadow:var(--over);opacity:0;transition:opacity var(--open) var(--ease), transform var(--open) var(--ease), overlay var(--open) allow-discrete, display var(--open) allow-discrete;border:0;padding:0;transform:scale(.96)}#maker[open],#editor[open]{opacity:1;transform:none}#maker.leaving,#editor.leaving,#maker.leaving::backdrop,#editor.leaving::backdrop{opacity:0}#maker.leaving,#editor.leaving{transform:scale(.96)}@starting-style{#maker[open],#editor[open]{opacity:0;transform:scale(.96)}}#maker::backdrop,#editor::backdrop{opacity:0;transition:opacity var(--open) var(--ease), overlay var(--open) allow-discrete, display var(--open) allow-discrete;background:#0f172a59}#maker[open]::backdrop,#editor[open]::backdrop{opacity:1}@starting-style{#maker[open]::backdrop,#editor[open]::backdrop{opacity:0}}#maker form,#editor form{gap:.7rem;padding:1rem;display:grid}#maker h2,#editor h2{letter-spacing:-.01em;margin:0;font-size:1.05rem;font-weight:600}#maker label,#editor label{color:var(--muted);gap:.25rem;font-size:.75rem;display:grid}#cast{flex-wrap:wrap;gap:.4rem;margin:.1rem 0 0;padding:0;list-style:none;display:flex}.mug{--face:54px;cursor:pointer;animation:flip var(--beat) var(--steps) infinite;opacity:.62;transition:opacity var(--quick) var(--ease), border-color var(--quick) var(--ease), transform var(--quick) var(--ease);background-color:#fff;border:2px solid #0000;padding:0;position:relative}.mug:hover,.mug:focus-visible{opacity:1;transform:translateY(-2px)}.mug[aria-pressed=true]{opacity:1;border-color:var(--ink);box-shadow:var(--lift)}.mug .turn{background:var(--ink);color:#fff;border:2px solid #fff;border-radius:50%;place-items:center;width:17px;height:17px;font-size:.6rem;font-weight:700;line-height:1;display:grid;position:absolute;bottom:-3px;right:-3px}#maker-note,#editor-note{color:var(--muted);margin:0;font-size:.78rem}#maker-note.bad,#editor-note.bad{color:var(--danger)}.maker-acts{justify-content:flex-end;align-items:center;gap:.5rem;margin-top:.15rem;display:flex}.maker-acts .quiet{font-size:.9rem}.maker-acts .danger{color:var(--danger);background:0 0;border-color:#0000;margin-right:auto;font-size:.9rem}.maker-acts .danger.armed{border-color:var(--danger);background:var(--danger);color:#fff;font-weight:600}.find,.find input{width:100%;min-width:0}.pin{color:#fff;border:2px solid #fff;border-radius:50%;place-items:center;width:28px;height:28px;font-size:12px;font-weight:700;line-height:1;display:grid;box-shadow:0 1px 4px #0f172a73}.pin.stay{background:var(--stay);border-radius:999px;align-items:center;gap:5px;width:auto;height:auto;padding:5px 10px 5px 6px;font:600 12px/1 -apple-system,BlinkMacSystemFont,sans-serif;display:flex;position:relative;transform:translateY(-7px);box-shadow:0 2px 7px #0f172a73}.pin.stay .who{text-overflow:ellipsis;white-space:nowrap;max-width:152px;overflow:hidden}.pin.stay:after{content:"";border-left:6px solid #0000;border-right:6px solid #0000;border-top:7px solid var(--stay);margin-left:-6px;position:absolute;top:calc(100% - 3px);left:50%}.pin.query{border-style:dashed;border-width:2px;width:26px;height:26px;font-size:14px;box-shadow:0 1px 3px #0f172a59}.me{background:#1d4ed8;border:3px solid #fff;border-radius:50%;width:16px;height:16px;position:relative;box-shadow:0 0 0 6px #1d4ed838}.me-cone{z-index:-1;width:112px;height:112px;transform:translate(-50%, -50%) rotate(var(--facing,0deg));background:conic-gradient(#1d4ed88c 0deg, #1d4ed88c var(--spread,60deg), transparent var(--spread,60deg));pointer-events:none;position:absolute;top:50%;left:50%;-webkit-mask-image:radial-gradient(closest-side,#000 60%,#0006 82%,#0000 100%);mask-image:radial-gradient(closest-side,#000 60%,#0006 82%,#0000 100%)}.pin.dim{opacity:.35}.pin.selected{transform:scale(1.25);box-shadow:0 0 0 4px #0f172a4d}.pin.stay.selected{transform-origin:bottom;transform:translateY(-7px)scale(1.12)}#locate{border-radius:var(--edge);color:#5f6368;background:#fff;border:0;place-items:center;width:40px;height:40px;margin:10px;padding:0;display:grid;box-shadow:0 1px 4px #0000004d}#locate[aria-pressed=true]{color:var(--accent)}#locate[data-state=waiting]{opacity:.6}@keyframes fade{0%{opacity:0}}.info,.info-head{animation:fade var(--quick) var(--ease)}.gm-style .gm-style-iw-c{border-radius:var(--radius);box-shadow:var(--over);padding:12px 14px 14px!important}.gm-style .gm-style-iw-d{overflow:hidden auto!important}.gm-style .gm-style-iw-chr{align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.gm-style .gm-style-iw-ch{padding:0!important}.gm-style .gm-ui-hover-effect{flex:none;width:26px!important;height:26px!important}.gm-style .gm-ui-hover-effect>span{background-color:var(--muted);width:16px!important;height:16px!important;margin:5px!important}.info{color:#0f172a;justify-items:start;gap:.4rem;max-width:15rem;font:13px/1.4 -apple-system,BlinkMacSystemFont,sans-serif;display:grid}.info-head{color:#0f172a;align-items:center;gap:.3rem;max-width:12rem;font:13px/1.4 -apple-system,BlinkMacSystemFont,sans-serif;display:flex}.info .when{border-radius:var(--edge);color:var(--muted);background:#f0f2f6;padding:.1rem .5rem;font-size:.78em;font-weight:600}.info .where{color:var(--muted)}.info .go,.info .take{min-height:var(--nub);border:1px solid var(--line);border-radius:var(--edge);color:var(--accent);font:inherit;white-space:nowrap;background:#fff;align-items:center;gap:.2rem;padding:.2rem .6rem;font-size:.78em;font-weight:600;text-decoration:none;display:inline-flex}.info .take{border-color:var(--accent);background:var(--accent);color:#fff}.info .acts{align-items:center;gap:.4rem;display:flex}@media (width<=820px){.info .when{display:none}.info .where{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}main{grid-template-rows:minmax(200px,38dvh) minmax(0,1fr);grid-template-columns:minmax(0,1fr)}main.no-map{grid-template-rows:auto minmax(0,1fr)}main.no-map #map-note{padding:1rem;font-size:.85rem}body.touring main{grid-template-rows:minmax(0,1fr)}body.touring #menu{display:none}body.touring aside{border:0;padding:0}body.touring aside>:not(#tour){display:none}aside{border-left:0;border-top:1px solid var(--line)}#menu{z-index:30;top:max(.6rem, env(safe-area-inset-top));left:max(.6rem, env(safe-area-inset-left));width:var(--tap);height:var(--tap);border-radius:var(--edge);color:var(--ink);place-items:center;padding:0;display:grid;position:fixed;box-shadow:0 2px 10px #0f172a38}#menu[aria-expanded=true]{background:var(--ink);border-color:var(--ink);color:#fff}#trips{z-index:40;top:calc(max(.6rem, env(safe-area-inset-top)) + 48px);left:max(.6rem, env(safe-area-inset-left));right:max(.6rem, env(safe-area-inset-right));border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--over);transform-origin:0 0;opacity:0;transition:opacity var(--open) var(--ease), transform var(--open) var(--ease), display var(--open) allow-discrete;gap:.5rem;padding:.7rem;display:none;position:fixed;transform:translateY(-8px)scale(.97)}body.menu-open #trips{opacity:1;display:grid;transform:none}@starting-style{body.menu-open #trips{opacity:0;transform:translateY(-8px)scale(.97)}}#trips>button{width:var(--tap);height:var(--tap)}#summary{border-top:1px solid var(--line);text-align:center;padding-top:.15rem}#add-toggle{z-index:30;right:max(1rem, env(safe-area-inset-right));width:var(--tap);height:var(--tap);border-radius:var(--edge);color:#fff;transition:opacity var(--quick) var(--ease), transform var(--quick) var(--ease), display var(--quick) allow-discrete;border:0;place-items:center;padding:0;display:grid;position:fixed}@starting-style{#add-toggle{opacity:0;transform:scale(.8)}}#add-toggle:active{transform:scale(.92)}#add-toggle{bottom:max(1rem, env(safe-area-inset-bottom));background:var(--accent);box-shadow:0 6px 18px #2563eb66}#add-toggle span{display:none}body.adding #add-toggle,body.dragging #add-toggle{opacity:0;display:none;transform:scale(.8)}.days{overscroll-behavior-x:contain;scrollbar-width:none;margin-inline:-1rem calc(-1 * max(1rem, env(safe-area-inset-right)));padding:1.55rem max(1rem, env(safe-area-inset-right)) .55rem 1rem;border-bottom:1px solid var(--line);flex-wrap:nowrap;overflow-x:auto}.days::-webkit-scrollbar{display:none}.days .chip{white-space:nowrap;flex-shrink:0}.days .break{display:none}form#add{--from:12px}body.adding form#add{z-index:45;top:var(--visible-top,0px);height:var(--visible,100dvh);background:var(--panel);padding:0 max(.9rem, env(safe-area-inset-right)) max(.9rem, env(safe-area-inset-bottom)) max(.9rem, env(safe-area-inset-left));border:0;border-radius:0;align-content:start;position:fixed;left:0;right:0;overflow-y:auto}body:before{content:"";z-index:44;background:var(--panel);opacity:0;pointer-events:none;transition:opacity var(--open) var(--ease);position:fixed;inset:0}body.adding:before{opacity:1}#add-head{z-index:1;margin:0 calc(-1 * max(.9rem, env(safe-area-inset-left)));padding:.6rem max(.9rem, env(safe-area-inset-right)) .6rem max(.9rem, env(safe-area-inset-left));background:var(--panel);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}#add-close{color:var(--muted);background:0 0;border:0;place-items:center;padding:.4rem;display:grid}#scrim{z-index:20;opacity:0;pointer-events:none;transition:opacity var(--open) var(--ease);background:#0f172a52;display:block;position:fixed;inset:0}body.menu-open #scrim{opacity:1;pointer-events:auto;z-index:35}}@media (pointer:coarse),(width<=820px){input,select,.when-field select{font-size:16px}input,select,.mode button,button[type=submit]{min-height:var(--tap)}.mode button,.mode.precision button{font-size:.9rem}.info .go,.info .take{min-height:var(--key);padding-inline:.8rem}}
