.glass{position:relative;isolation:isolate;background:var(--glass-tint);box-shadow:var(--glass-rim),var(--glass-lift);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat)) brightness(var(--glass-bright));backdrop-filter:var(--glass-lens, blur(var(--glass-blur))) saturate(var(--glass-sat)) brightness(var(--glass-bright))}:root[data-map-moving] .glass{-webkit-backdrop-filter:var(--glass-frost, blur(var(--glass-blur))) saturate(var(--glass-sat)) brightness(var(--glass-bright));backdrop-filter:var(--glass-frost, blur(var(--glass-blur))) saturate(var(--glass-sat)) brightness(var(--glass-bright))}.glass:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;corner-shape:inherit;pointer-events:none;background:none}:root.no-lens .glass:before{background:var(--glass-sheen)}.glass>*{position:relative;z-index:1}.sheet-card,.more-sheet,.widget,.widget-picker{--glass-tint: var(--glass-tint-dense)}.glass-defs{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}:root{--glass-blur: 20px;--glass-sat: calc(1.9 * var(--glass-sat-k, 1));--glass-bright: calc(1.04 * var(--glass-bright-k, 1));--glass-tint: rgba(255, 255, 255, calc(.62 * var(--glass-tint-k, 1)));--glass-tint-dense: rgba(255, 255, 255, calc(.72 * var(--glass-tint-k, 1)));--glass-sheen: linear-gradient( 135deg, rgba(255, 255, 255, .5) 0%, rgba(255, 255, 255, 0) 38%, rgba(255, 255, 255, 0) 62%, rgba(255, 255, 255, .16) 100% );--glass-rim: inset 0 1px 0 rgba(255, 255, 255, calc(.5 * var(--glass-rim-k, 1))), inset 1px 0 0 rgba(255, 255, 255, calc(.34 * var(--glass-rim-k, 1))), inset -1px 0 0 rgba(255, 255, 255, calc(.22 * var(--glass-rim-k, 1))), inset 0 -1.2px 0 rgba(0, 0, 0, calc(.09 * var(--glass-rim-k, 1))), inset 0 0 0 .5px rgba(0, 0, 0, calc(.09 * var(--glass-rim-k, 1))), inset 0 -12px 20px -14px rgba(0, 0, 0, calc(.16 * var(--glass-rim-k, 1))), inset 0 12px 20px -16px rgba(255, 255, 255, calc(.4 * var(--glass-rim-k, 1)));--glass-lift: 0 1px 2px rgba(0, 0, 0, calc(.06 * var(--glass-lift-k, 1))), 0 8px 28px rgba(0, 0, 0, calc(.11 * var(--glass-lift-k, 1))), 0 20px 48px rgba(0, 0, 0, calc(.07 * var(--glass-lift-k, 1)))}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--glass-blur: 22px;--glass-sat: calc(1.7 * var(--glass-sat-k, 1));--glass-bright: calc(1.12 * var(--glass-bright-k, 1));--glass-tint: rgba(28, 28, 32, calc(.52 * var(--glass-tint-k, 1)));--glass-tint-dense: rgba(24, 24, 28, calc(.64 * var(--glass-tint-k, 1)));--glass-sheen: linear-gradient( 135deg, rgba(255, 255, 255, .16) 0%, rgba(255, 255, 255, 0) 40%, rgba(255, 255, 255, 0) 64%, rgba(255, 255, 255, .05) 100% );--glass-rim: inset 0 1px 0 rgba(255, 255, 255, calc(.26 * var(--glass-rim-k, 1))), inset 1px 0 0 rgba(255, 255, 255, calc(.13 * var(--glass-rim-k, 1))), inset -1px 0 0 rgba(255, 255, 255, calc(.08 * var(--glass-rim-k, 1))), inset 0 -1px 0 rgba(255, 255, 255, calc(.07 * var(--glass-rim-k, 1))), inset 0 0 0 .5px rgba(255, 255, 255, calc(.11 * var(--glass-rim-k, 1))), inset 0 -12px 20px -14px rgba(0, 0, 0, calc(.6 * var(--glass-rim-k, 1))), inset 0 12px 22px -16px rgba(255, 255, 255, calc(.14 * var(--glass-rim-k, 1)));--glass-lift: 0 1px 2px rgba(0, 0, 0, calc(.5 * var(--glass-lift-k, 1))), 0 10px 34px rgba(0, 0, 0, calc(.46 * var(--glass-lift-k, 1))), 0 24px 60px rgba(0, 0, 0, calc(.3 * var(--glass-lift-k, 1)))}}:root[data-theme=dark]{--glass-blur: 22px;--glass-sat: calc(1.7 * var(--glass-sat-k, 1));--glass-bright: calc(1.12 * var(--glass-bright-k, 1));--glass-tint: rgba(28, 28, 32, calc(.52 * var(--glass-tint-k, 1)));--glass-tint-dense: rgba(24, 24, 28, calc(.64 * var(--glass-tint-k, 1)));--glass-sheen: linear-gradient( 135deg, rgba(255, 255, 255, .16) 0%, rgba(255, 255, 255, 0) 40%, rgba(255, 255, 255, 0) 64%, rgba(255, 255, 255, .05) 100% );--glass-rim: inset 0 1px 0 rgba(255, 255, 255, calc(.26 * var(--glass-rim-k, 1))), inset 1px 0 0 rgba(255, 255, 255, calc(.13 * var(--glass-rim-k, 1))), inset -1px 0 0 rgba(255, 255, 255, calc(.08 * var(--glass-rim-k, 1))), inset 0 -1px 0 rgba(255, 255, 255, calc(.07 * var(--glass-rim-k, 1))), inset 0 0 0 .5px rgba(255, 255, 255, calc(.11 * var(--glass-rim-k, 1))), inset 0 -12px 20px -14px rgba(0, 0, 0, calc(.6 * var(--glass-rim-k, 1))), inset 0 12px 22px -16px rgba(255, 255, 255, calc(.14 * var(--glass-rim-k, 1)));--glass-lift: 0 1px 2px rgba(0, 0, 0, calc(.5 * var(--glass-lift-k, 1))), 0 10px 34px rgba(0, 0, 0, calc(.46 * var(--glass-lift-k, 1))), 0 24px 60px rgba(0, 0, 0, calc(.3 * var(--glass-lift-k, 1)))}:root.no-lens{--glass-tint: rgba(255, 255, 255, calc(.74 * var(--glass-tint-k, 1)));--glass-blur: 26px}:root.no-lens[data-theme=dark]{--glass-tint: rgba(28, 28, 32, calc(.68 * var(--glass-tint-k, 1)))}@media(prefers-color-scheme:dark){:root.no-lens:not([data-theme=light]){--glass-tint: rgba(28, 28, 32, calc(.68 * var(--glass-tint-k, 1)))}}@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){.glass{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--surface-raised);box-shadow:var(--glass-lift),inset 0 0 0 1px var(--separator)}.glass:before{background:none}}:root{color-scheme:light dark;--font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", system-ui, "Segoe UI", Roboto, sans-serif;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace;--t-large: 30px;--t-title: 21px;--t-title3: 17px;--t-headline: 15px;--t-body: 15px;--t-callout: 14px;--t-subhead: 13px;--t-foot: 12px;--t-caption: 11px;--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 20px;--s6: 28px;--s7: 40px;--r-group: 20px;--r-inner: calc(var(--r-group) - var(--s3));--r-control: 11px;--r-capsule: 999px;--tap: 44px;--bg: #f2f2f7;--surface: #ffffff;--surface-raised: #ffffff;--fill: rgba(118, 118, 128, .12);--fill-strong: rgba(118, 118, 128, .2);--label: #000000;--label-2: rgba(60, 60, 67, .6);--label-3: rgba(60, 60, 67, .32);--separator: rgba(60, 60, 67, .22);--accent: #007aff;--accent-ink: #ffffff;--green: #34c759;--orange: #ff9500;--red: #ff3b30;--purple: #af52de;--teal: #30b0c7;--indigo: #5856d6;--gray: #8e8e93;--gray-2: #aeaeb2;--kind-person: var(--accent);--kind-project: var(--green);--kind-place: var(--orange);--kind-topic: var(--purple);--kind-fact: var(--gray);--kind-note: var(--gray-2);--kind-reminder: var(--red);--kind-event: var(--teal);--kind-routine: #1f8091}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #000000;--surface: #1c1c1e;--surface-raised: #2c2c2e;--fill: rgba(118, 118, 128, .24);--fill-strong: rgba(118, 118, 128, .36);--label: #ffffff;--label-2: rgba(235, 235, 245, .6);--label-3: rgba(235, 235, 245, .3);--separator: rgba(84, 84, 88, .6);--accent: #0a84ff;--accent-ink: #ffffff;--green: #30d158;--orange: #ff9f0a;--red: #ff453a;--purple: #bf5af2;--teal: #40c8e0;--indigo: #5e5ce6;--gray: #98989d;--gray-2: #636366;--kind-routine: #2a98ae}}:root[data-theme=dark]{color-scheme:dark;--bg: #000000;--surface: #1c1c1e;--surface-raised: #2c2c2e;--fill: rgba(118, 118, 128, .24);--fill-strong: rgba(118, 118, 128, .36);--label: #ffffff;--label-2: rgba(235, 235, 245, .6);--label-3: rgba(235, 235, 245, .3);--separator: rgba(84, 84, 88, .6);--accent: #0a84ff;--accent-ink: #ffffff;--green: #30d158;--orange: #ff9f0a;--red: #ff453a;--purple: #bf5af2;--teal: #40c8e0;--indigo: #5e5ce6;--gray: #98989d;--gray-2: #636366;--kind-routine: #2a98ae}:root[data-theme=light]{color-scheme:light}@supports (corner-shape: squircle){.group,.inspector,.widget,.sheet-card,.more-sheet,.login-card,.seed-graph,.seed-list,.more-sheet a,input,textarea,select{corner-shape:squircle}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--label);font:400 var(--t-body) / 1.47 var(--font);letter-spacing:-.01em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 70%,transparent);outline-offset:1px;border-radius:var(--r-control)}h1,h2,h3,p{margin:0}.app{min-height:100dvh;--title-fade: 0}.screen{max-width:760px;margin:0 auto;padding:calc(var(--s7) + 46px) var(--s4) calc(var(--s7) + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:var(--s5)}.screen.bleed{max-width:none;padding:0;gap:0}.large-title{font-size:var(--t-large);font-weight:700;letter-spacing:-.026em;line-height:1.12;margin:0 0 calc(var(--s2) * -1);transform-origin:left bottom;opacity:calc(1 - var(--title-fade));transform:translateY(calc(var(--title-fade) * -8px))}.lede{color:var(--label-2);font-size:var(--t-subhead);max-width:62ch}.topbar{position:fixed;top:max(var(--s3),env(safe-area-inset-top));left:50%;transform:translate(-50%);z-index:40;display:flex;align-items:center;gap:var(--s1);padding:5px;border-radius:var(--r-capsule);max-width:calc(100vw - var(--s5))}.topbar-title{display:none}.tabs{display:flex;align-items:center;gap:2px}.tabs a{display:flex;align-items:center;gap:7px;height:36px;padding:0 14px;border-radius:var(--r-capsule);color:var(--label-2);font-size:var(--t-subhead);font-weight:500;white-space:nowrap;transition:color .18s ease,background-color .18s ease}.tabs a:hover{color:var(--label);text-decoration:none;background:var(--fill)}.tabs a.active{color:var(--accent-ink);background:var(--accent)}.tabs a svg{width:18px;height:18px}.topbar-actions{display:flex;align-items:center;gap:2px;margin-left:var(--s1);padding-left:5px;border-left:1px solid var(--separator)}.icon-btn{display:grid;place-items:center;width:34px;height:34px;padding:0;border:none;border-radius:var(--r-capsule);background:none;color:var(--label-2);cursor:pointer;transition:color .18s ease,background-color .18s ease}.icon-btn:hover{color:var(--label);background:var(--fill)}.icon-btn svg{width:19px;height:19px}.tabbar,.more-sheet{display:none}.group{background:var(--surface);border-radius:var(--r-group);overflow:clip}.group-head{display:flex;align-items:baseline;gap:var(--s2);margin:0 0 var(--s2) var(--s4)}.group-head h2{font-size:var(--t-headline);font-weight:600;letter-spacing:-.012em}.group-head .aside{margin-left:auto;color:var(--label-2);font-size:var(--t-subhead)}.group-note{margin:var(--s2) var(--s4) 0;color:var(--label-2);font-size:var(--t-foot);line-height:1.42;max-width:68ch}.section{display:flex;flex-direction:column}.item{position:relative;display:flex;align-items:center;gap:var(--s3);min-height:var(--tap);padding:var(--s3) var(--s4)}.item.stack{align-items:flex-start}.item+.item:before{content:"";position:absolute;top:0;left:var(--s4);right:0;height:1px;background:var(--separator)}.item-main{flex:1;min-width:0}.item-title{letter-spacing:-.012em}.item-meta,.muted{color:var(--label-2);font-size:var(--t-subhead)}.dimmer{color:var(--label-3)}.wrap{white-space:pre-wrap;overflow-wrap:anywhere}.num{font-variant-numeric:tabular-nums}.stat{font-size:34px;font-weight:600;letter-spacing:-.03em;font-variant-numeric:tabular-nums;line-height:1.1}.error{color:var(--red);font-size:var(--t-subhead)}.ok{color:var(--green);font-size:var(--t-subhead)}.empty{padding:var(--s5) var(--s4);color:var(--label-2);text-align:center}.grid{display:grid;gap:var(--s5);grid-template-columns:repeat(auto-fit,minmax(290px,1fr));align-items:start}.stack-sm{display:flex;flex-direction:column;gap:var(--s2)}.day{display:flex;flex-direction:column;gap:var(--s5)}.day-line{display:flex;flex-wrap:wrap;gap:0 var(--s4);font-size:var(--t-callout)}.day-line>span:first-child{color:var(--label);font-weight:500}.day-weather{color:var(--label-2)}.spine{--spine-line: 22px;--spine-gutter: 58px;--spine-rail: 22px;--mark-y: calc(var(--s3) + var(--spine-line) / 2);padding:var(--s2) 0}.spine-list,.spine-allday{list-style:none;margin:0;padding:0}.spine-allday{position:relative;padding-bottom:var(--s2);margin-bottom:var(--s2)}.spine-allday:after{content:"";position:absolute;left:var(--s4);right:0;bottom:0;height:1px;background:var(--separator)}.spine-row{display:grid;grid-template-columns:var(--spine-gutter) var(--spine-rail) 1fr;padding:0 var(--s4)}.spine-when{display:flex;flex-direction:column;padding:var(--s3) 0;line-height:var(--spine-line);font-size:var(--t-subhead);font-weight:590;color:var(--label-2);letter-spacing:-.01em}.spine-end{font-size:var(--t-caption);font-weight:400;color:var(--label-2);line-height:1.3}.spine-body{display:flex;flex-direction:column;gap:1px;min-width:0;padding:var(--s3) 0}.spine-title{line-height:var(--spine-line);letter-spacing:-.012em;overflow-wrap:anywhere}.spine-meta{font-size:var(--t-subhead);color:var(--label-2);overflow-wrap:anywhere}.spine-mark{position:relative}.spine-list .spine-mark:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:1px;transform:translate(-50%);background:var(--separator)}.spine-list [data-edge~=first] .spine-mark:before{top:var(--mark-y)}.spine-list [data-edge~=last] .spine-mark:before{bottom:auto;height:var(--mark-y)}.spine-list .spine-mark:after{content:"";position:absolute;left:50%;top:var(--mark-y);width:7px;height:7px;transform:translate(-50%,-50%);border-radius:var(--r-capsule);background:var(--label-3);box-shadow:0 0 0 3px var(--surface)}.spine-list [data-kind=event] .spine-mark:after{background:var(--kind-event)}.spine-list [data-kind=reminder] .spine-mark:after{width:8px;height:8px;background:var(--surface);box-shadow:0 0 0 3px var(--surface),inset 0 0 0 2px var(--kind-reminder)}.spine-list [data-kind=stay] .spine-mark:after{width:5px;height:18px;background:var(--kind-place)}.spine-list [data-kind=travel] .spine-mark:after{display:none}.spine-list [data-kind=travel] .spine-mark:before{background:repeating-linear-gradient(to bottom,var(--label-3) 0 3px,transparent 3px 7px)}.spine-row.past .spine-title{color:var(--label-2)}.spine-row.past .spine-when,.spine-row.past .spine-meta{color:var(--label-3)}.spine-row.past .spine-mark:after{opacity:.55}.spine-now{position:relative;height:1px;margin:11px var(--s4);background:var(--accent)}.spine-now span{position:absolute;right:0;top:50%;transform:translateY(-50%);padding-left:var(--s2);background:var(--surface);color:var(--accent);font-size:var(--t-caption);font-weight:590;letter-spacing:0}.day-band{gap:var(--s5)}input,textarea,select{font:inherit;letter-spacing:inherit;color:var(--label);background:var(--fill);border:none;border-radius:var(--r-control);padding:9px 12px;max-width:100%;min-height:36px}input::placeholder,textarea::placeholder{color:var(--label-3)}textarea{resize:vertical;line-height:1.47}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:30px;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 15px) calc(50% + 1px),calc(100% - 11px) calc(50% + 1px);background-size:4.5px 4.5px,4.5px 4.5px;background-repeat:no-repeat;cursor:pointer}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:0 16px;border:none;border-radius:var(--r-capsule);background:var(--fill);color:var(--label);font:500 var(--t-subhead) / 1 var(--font);letter-spacing:-.01em;cursor:pointer;white-space:nowrap;transition:filter .15s ease,background-color .15s ease,opacity .15s ease}.btn:hover:not(:disabled){filter:brightness(.94)}.btn:active:not(:disabled){filter:brightness(.88)}.btn:disabled{opacity:.4;cursor:default}.btn.filled{background:var(--accent);color:var(--accent-ink);font-weight:600}.btn.tinted{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent);font-weight:600}.btn.plain{background:none;color:var(--accent);padding:0 8px}.btn.plain:hover:not(:disabled){background:var(--fill);filter:none}.btn.danger{background:none;color:var(--red);padding:0 8px}.btn.danger:hover:not(:disabled){background:color-mix(in srgb,var(--red) 12%,transparent);filter:none}.controls{display:flex;gap:var(--s2);flex-wrap:wrap;align-items:center}.field{display:block}.field>span{display:block;font-size:var(--t-foot);color:var(--label-2);margin-bottom:5px}.field input,.field select,.field textarea{width:100%}.item input.inline{background:none;text-align:right;width:150px;min-height:30px;padding:4px 0}.item input.inline:hover{background:var(--fill);padding:4px 8px}.tag{display:inline-flex;align-items:center;height:22px;padding:0 9px;border-radius:var(--r-capsule);background:var(--fill);color:var(--label-2);font-size:var(--t-caption);font-weight:590;letter-spacing:0;white-space:nowrap;border:none;font-family:var(--font)}button.tag{cursor:pointer;height:26px}.tag.on{background:var(--accent);color:var(--accent-ink)}.tag.warn{background:color-mix(in srgb,var(--orange) 18%,transparent);color:var(--orange)}.state{font-size:var(--t-foot);font-weight:590;text-transform:capitalize;color:var(--label-2)}.state-ok{color:var(--green)}.state-off{color:var(--label-3)}.state-error{color:var(--red)}.state-warn{color:var(--orange)}.swatch{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:7px;background:var(--swatch);vertical-align:1px}.meter{height:7px;background:var(--fill-strong);border-radius:var(--r-capsule);overflow:hidden;margin-top:var(--s2)}.meter>div{height:100%;border-radius:var(--r-capsule);background:var(--accent);transition:width .4s cubic-bezier(.32,.72,0,1)}.segmented{display:inline-flex;padding:2px;gap:2px;background:var(--fill);border-radius:var(--r-capsule)}.segmented button{border:none;background:none;color:var(--label-2);font:500 var(--t-foot) / 1 var(--font);padding:0 12px;height:28px;border-radius:var(--r-capsule);cursor:pointer;transition:background-color .18s ease,color .18s ease}.segmented button:hover{color:var(--label)}.segmented button.on{background:var(--surface-raised);color:var(--label);box-shadow:0 1px 3px #00000024}:root[data-theme=dark] .segmented button.on,:root:not([data-theme=light]) .segmented button.on{box-shadow:none}.login{min-height:100dvh;display:grid;place-items:center;padding:var(--s5);background:radial-gradient(70% 55% at 22% 18%,color-mix(in srgb,var(--accent) 46%,transparent),transparent 70%),radial-gradient(60% 50% at 84% 26%,color-mix(in srgb,var(--purple) 40%,transparent),transparent 72%),radial-gradient(75% 60% at 50% 96%,color-mix(in srgb,var(--teal) 34%,transparent),transparent 70%),var(--bg)}.login-card{width:min(360px,100%);padding:var(--s6) var(--s5) var(--s5);border-radius:32px;text-align:center;display:flex;flex-direction:column;gap:var(--s3)}.login-card h1{font-size:25px;font-weight:700;letter-spacing:-.025em}.login-card .btn{min-height:42px;font-size:var(--t-body)}.login-card input{width:100%;text-align:center;letter-spacing:.34em;text-indent:.34em;font-family:var(--font-mono);font-size:19px;min-height:46px;background:color-mix(in srgb,var(--surface) 55%,transparent)}.boot{min-height:100dvh;display:grid;place-items:center;color:var(--label-2)}.dashboard{position:relative;height:100dvh;overflow:hidden;background:var(--bg)}.dashboard canvas{display:block}.map-controls{position:absolute;top:calc(max(var(--s3),env(safe-area-inset-top)) + 58px);left:var(--s3);z-index:20;display:flex;gap:4px;align-items:center;padding:4px;border-radius:var(--r-capsule);max-width:calc(100vw - var(--s6));cursor:grab;touch-action:none}.map-controls:active{cursor:grabbing}.map-search{position:relative;display:flex;align-items:center;gap:2px}.map-controls input{background:none;border:none;width:0;min-width:0;padding:0;min-height:30px;opacity:0;pointer-events:none;transition:width .42s cubic-bezier(.32,.72,0,1),padding .42s cubic-bezier(.32,.72,0,1),opacity .26s ease .06s}.map-controls.open input{width:210px;padding:0 4px 0 6px;opacity:1;pointer-events:auto}.map-controls input:focus{outline:none;box-shadow:none}.map-controls .icon-btn,.map-controls .segmented{flex:0 0 auto}.map-controls .segmented button{padding:0 9px;height:26px}.map-seed svg{width:19px;height:19px}.map-seeding{width:15px;height:15px;border-radius:50%;border:2px solid var(--fill-strong);border-top-color:var(--accent);animation:map-seeding .7s linear infinite}@keyframes map-seeding{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.map-controls input{transition:none}.map-seeding{animation-duration:2.4s}}.map-note{position:absolute;top:calc(max(var(--s3),env(safe-area-inset-top)) + 100px);left:var(--s3);z-index:20;margin:0}.map-search input{padding-left:31px}.map-legend{position:absolute;left:50%;transform:translate(-50%);bottom:calc(var(--s4) + env(safe-area-inset-bottom));z-index:20;display:flex;gap:3px;flex-wrap:wrap;justify-content:center;padding:5px;border-radius:var(--r-capsule);max-width:calc(100vw - var(--s6))}.map-legend button{display:inline-flex;align-items:center;height:26px;padding:0 10px;border:none;border-radius:var(--r-capsule);background:none;color:var(--label-2);font:500 var(--t-foot) / 1 var(--font);cursor:pointer;transition:background-color .16s ease,color .16s ease,opacity .16s ease}.map-legend button:hover{background:var(--fill);color:var(--label)}.map-legend button:before{content:"";width:8px;height:8px;border-radius:50%;margin-right:6px;background:var(--swatch);transition:opacity .16s ease}.map-legend button.off{color:var(--label-3)}.map-legend button.off:before{opacity:.25}.map-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;z-index:10;pointer-events:none;color:var(--label-2)}.inspector{position:absolute;top:calc(var(--s3) + 58px);right:var(--s3);bottom:var(--s3);width:min(380px,calc(100vw - var(--s5)));z-index:30;display:flex;flex-direction:column;gap:var(--s3);padding:var(--s4);border-radius:28px;overflow-y:auto;overscroll-behavior:contain;background:var(--surface-raised);box-shadow:var(--glass-lift),inset 0 0 0 1px var(--separator)}.inspector>*,.sheet-card>*{flex:0 0 auto}.inspector-head{display:flex;align-items:flex-start;gap:var(--s3)}.inspector-who{flex:1;min-width:0}.inspector-who h2{font-size:var(--t-title);font-weight:660;letter-spacing:-.025em;line-height:1.15;overflow-wrap:anywhere}.inspector-who p{margin:3px 0 0;font-size:var(--t-subhead);line-height:1.35;color:var(--label-2)}.face{display:grid;place-items:center;flex:none;border-radius:50%;background:color-mix(in srgb,var(--kind-color) 16%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--kind-color) 40%,transparent);line-height:1}.face-lg{width:46px;height:46px;font-size:23px}.face-sm{width:21px;height:21px;font-size:12px}.inspector-line{margin:0;font-size:var(--t-subhead);line-height:1.4;color:var(--label-2)}.relations{display:flex;flex-direction:column;gap:var(--s3);padding-top:var(--s3);border-top:1px solid var(--separator)}.relation-verb{margin:0 0 5px;font-size:var(--t-caption);font-weight:500;color:var(--label-2)}.relation-names{display:flex;flex-wrap:wrap;gap:6px}.relation-name{display:inline-flex;align-items:center;border-radius:var(--r-capsule);background:var(--fill)}.relation-name>button:first-child{display:inline-flex;align-items:center;gap:7px;min-height:32px;padding:0 12px 0 5px;border:none;background:none;border-radius:var(--r-capsule);color:var(--label);font:500 var(--t-callout) / 1.2 var(--font);text-align:left;cursor:pointer}.relation-name:hover{background:var(--fill-strong)}.relation-cut{display:grid;place-items:center;width:26px;height:26px;margin-right:3px;border:none;border-radius:50%;background:none;color:var(--label-3);cursor:pointer}.relation-cut svg{width:13px;height:13px}.relation-cut:hover{color:var(--red);background:color-mix(in srgb,var(--red) 16%,transparent)}.records{padding-top:var(--s3);border-top:1px solid var(--separator)}.records h3{display:flex;align-items:center;gap:var(--s2);margin:0 0 var(--s1);font-size:var(--t-foot);font-weight:600;color:var(--label-2)}.records-count{min-width:20px;padding:1px 6px;border-radius:var(--r-capsule);background:var(--fill);color:var(--label-2);font-size:var(--t-caption);font-variant-numeric:tabular-nums;text-align:center}.record{display:flex;align-items:baseline;gap:var(--s3);width:100%;padding:7px 0;border:none;background:none;text-align:left;cursor:pointer;border-radius:8px}.record+.record{box-shadow:inset 0 1px 0 var(--separator)}.record:hover .record-text{color:var(--accent)}.record-text{flex:1;min-width:0;color:var(--label);font-size:var(--t-callout);line-height:1.35;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical}.record-when{flex:none;color:var(--label-3);font-size:var(--t-caption);font-variant-numeric:tabular-nums}.more{margin-top:var(--s2);padding:4px 0;border:none;background:none;color:var(--accent);font:500 var(--t-subhead) / 1 var(--font);cursor:pointer}.editor{padding-top:var(--s3);border-top:1px solid var(--separator)}.disclose{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:38px;padding:0;border:none;background:none;color:var(--label-2);font:500 var(--t-subhead) / 1 var(--font);cursor:pointer}.disclose svg{width:18px;height:18px;transition:transform .2s cubic-bezier(.32,.72,0,1)}.disclose.open svg{transform:rotate(180deg)}.disclose:hover{color:var(--label)}.editor h3{margin:var(--s4) 0 var(--s1);font-size:var(--t-foot);font-weight:600;color:var(--label-2)}.editor textarea{min-height:60px}.icon-btn.small{width:26px;height:26px;flex:none;color:var(--label-3)}.icon-btn.small svg{width:14px;height:14px}.icon-btn.small:hover{color:var(--red);background:color-mix(in srgb,var(--red) 14%,transparent)}.icon-btn.small.widget-resize:hover{color:var(--label);background:var(--fill)}:root{--widget-w: 224px;--widget-h: 176px;--widget-gap: 12px;--widget-top: 124px}.widget{position:absolute;z-index:20;left:calc(var(--s3) + var(--col, 0) * (var(--widget-w) + var(--widget-gap)));top:calc(var(--widget-top) + var(--row, 0) * (var(--widget-h) + var(--widget-gap)));width:var(--widget-w);height:var(--widget-h);display:flex;flex-direction:column;padding:var(--s3);border-radius:24px;overflow:hidden;cursor:grab;touch-action:none}.widget:active{cursor:grabbing}.widget.is-wide{width:calc(var(--widget-w) * 2 + var(--widget-gap))}.widget-greeting{--col: 0;--row: 0}.widget-next-up{--col: 1;--row: 0}.widget-tasks{--col: 0;--row: 1}.widget-weather{--col: 1;--row: 1}.widget-reminders{--col: 0;--row: 2}.widget-notes{--col: 1;--row: 2}.widget-api-usage{--col: 0;--row: 3}.widget-pull-requests{--col: 1;--row: 3}.widget-playing{--col: 0;--row: 4}.widget-head{display:flex;align-items:center;gap:var(--s2);min-height:20px;margin-bottom:6px}.widget-title{font:600 var(--t-subhead) / 1 var(--font);letter-spacing:-.01em;color:var(--label-2);margin-right:auto}.widget-title:hover{color:var(--accent);text-decoration:none}.widget-head .icon-btn.small{opacity:0;transition:opacity .16s ease}.widget:hover .icon-btn.small,.widget:focus-within .icon-btn.small,.widget.in-deck .icon-btn.small{opacity:1}.widget-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:7px;scrollbar-width:none;-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 16px),transparent 100%);mask-image:linear-gradient(to bottom,#000 calc(100% - 16px),transparent 100%)}.widget-body::-webkit-scrollbar{display:none}.widget-row{display:flex;align-items:flex-start;gap:var(--s2)}.widget-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.widget-line{font:500 var(--t-callout) / 1.3 var(--font);color:var(--label);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical}.widget-meta{font:400 var(--t-caption) / 1.35 var(--font);color:var(--label-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.widget-when{flex:0 0 auto;padding-top:2px;font:500 var(--t-caption) / 1.3 var(--font);color:var(--label-2)}.widget-stat{font:600 21px / 1.2 var(--font);letter-spacing:-.02em;color:var(--label)}.widget-empty{margin:0;padding:2px 0;font-size:var(--t-caption);color:var(--label-3)}.playing{display:grid;gap:var(--s2);grid-template-areas:"art what" "controls controls";grid-template-columns:auto minmax(0,1fr);align-items:center}.playing.is-wide{grid-template-areas:"art what" "art controls";align-items:start}.playing-art{grid-area:art;width:64px;aspect-ratio:1;border-radius:9px;object-fit:cover;box-shadow:inset 0 0 0 1px var(--separator);background:var(--fill)}.playing.is-wide .playing-art{width:96px}.playing-what{grid-area:what;min-width:0;display:flex;flex-direction:column;gap:1px}.playing .widget-line{-webkit-line-clamp:1;line-clamp:1}.playing-controls{grid-area:controls;display:flex;align-items:center;justify-content:center;gap:var(--s2)}.playing.is-wide .playing-controls{justify-content:flex-start;margin-left:-7px}.playing-controls .icon-btn{opacity:1;width:30px;height:30px;color:var(--label-2)}.playing-controls .icon-btn svg{width:16px;height:16px}.playing-controls .icon-btn:hover:not(:disabled){color:var(--label)}.playing-controls .playing-toggle{width:36px;height:36px;color:var(--label);background:var(--fill)}.playing-controls .playing-toggle svg{width:18px;height:18px}.playing-controls .icon-btn:disabled{opacity:.45}.widget-picker{position:fixed;z-index:35;display:flex;flex-direction:column;gap:1px;min-width:186px;padding:6px;border-radius:22px}.widget-picker button{display:flex;align-items:center;gap:var(--s2);min-height:32px;padding:0 10px;border:none;border-radius:16px;background:none;color:var(--label);font:500 var(--t-subhead) / 1 var(--font);text-align:left;cursor:pointer}.widget-picker button:hover{background:var(--fill)}.widget-picker button svg{width:15px;height:15px;flex:0 0 auto;opacity:0;color:var(--accent)}.widget-picker button.on svg{opacity:1}.widget-picker .widget-picker-reset{margin-top:4px;padding-top:8px;border-top:1px solid var(--separator);border-radius:0;justify-content:center;color:var(--label-2)}.widget-deck{position:fixed;left:0;right:0;bottom:calc(124px + env(safe-area-inset-bottom));z-index:25}.widget-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.widget-track::-webkit-scrollbar{display:none}.widget-slot{flex:0 0 100%;scroll-snap-align:center;padding:0 var(--s3);box-sizing:border-box}.widget.in-deck{position:static;width:auto;height:168px;cursor:default;touch-action:auto;border-radius:26px;padding:var(--s4)}.widget-dots{display:flex;justify-content:center;gap:5px;margin-top:var(--s2)}.widget-dots button{width:6px;height:6px;padding:0;border:none;border-radius:var(--r-capsule);background:var(--label-3);cursor:pointer;transition:width .2s ease,background-color .2s ease}.widget-dots button.on{width:15px;background:var(--label-2)}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000006b;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:grid;place-items:center;padding:var(--s4);z-index:60}.sheet-card{width:min(680px,100%);max-height:min(86dvh,100%);display:flex;flex-direction:column;gap:var(--s3);overflow-y:auto;overscroll-behavior:contain;border-radius:30px;padding:var(--s4) var(--s4) calc(var(--s4) + env(safe-area-inset-bottom))}.sheet-head{display:flex;align-items:center;gap:var(--s3)}.sheet-head h2{flex:1;font-size:var(--t-title3);font-weight:640;letter-spacing:-.015em}.sheet-foot{display:flex;gap:var(--s2);align-items:center;justify-content:flex-end;margin-top:auto;padding-top:var(--s1)}.seed-graph{height:min(42vh,340px);min-height:200px;overflow:hidden;border-radius:var(--r-group);background:var(--surface)}.seed-list{max-height:27vh;overflow-y:auto;background:var(--surface);border-radius:var(--r-group)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.large-title{opacity:1;transform:none}}@media(max-width:767px){:root{--t-large: 33px;--t-title: 22px;--t-title3: 18px;--t-headline: 16px;--t-body: 16px;--t-callout: 15px;--t-subhead: 14px;--t-foot: 13px;--t-caption: 12px}.screen{padding:calc(var(--s7) + 22px) var(--s4) calc(96px + env(safe-area-inset-bottom));gap:var(--s4)}.topbar{left:var(--s3);right:var(--s3);transform:none;max-width:none;height:46px;padding:0 var(--s2) 0 var(--s4)}.topbar-title{display:block;flex:1;font-size:var(--t-headline);font-weight:600;letter-spacing:-.015em;opacity:var(--title-fade);transition:opacity .12s linear}.tabs{display:none}.topbar-actions{margin-left:auto;border-left:none;padding-left:0}.tabbar{display:flex;position:fixed;left:var(--s3);right:var(--s3);bottom:calc(var(--s2) + env(safe-area-inset-bottom));z-index:40;padding:5px;border-radius:var(--r-capsule);justify-content:space-around}.tabbar a,.tabbar button{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:50px;border:none;background:none;border-radius:21px;color:var(--label-2);font:500 10px / 1 var(--font);cursor:pointer;transition:color .16s ease,background-color .16s ease}.tabbar a svg,.tabbar button svg{width:23px;height:23px}.tabbar a:hover,.tabbar button:hover{text-decoration:none}.tabbar a.active{color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent)}.more-sheet{display:flex;position:fixed;left:var(--s3);right:var(--s3);bottom:calc(76px + env(safe-area-inset-bottom));z-index:45;flex-direction:column;padding:6px;border-radius:28px}.more-sheet a{display:flex;align-items:center;gap:var(--s3);min-height:var(--tap);padding:0 var(--s3);border-radius:20px;color:var(--label);font-weight:500}.more-sheet a:hover{text-decoration:none;background:var(--fill)}.more-sheet a.active{color:var(--accent)}.inspector{top:auto;left:var(--s2);right:var(--s2);bottom:calc(76px + env(safe-area-inset-bottom));width:auto;max-height:62dvh;border-radius:30px}.dashboard:has(.inspector) .widget-deck{display:none}.map-legend{left:var(--s3);right:var(--s3);bottom:calc(76px + env(safe-area-inset-bottom));transform:none;max-width:none;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;scrollbar-width:none}.map-legend::-webkit-scrollbar{display:none}.map-legend button{flex:0 0 auto}.grid{grid-template-columns:1fr}.spine{--spine-line: 24px;--spine-gutter: 54px;--spine-rail: 20px}.spine-row{padding:0 var(--s3)}.spine-now{margin:12px var(--s3)}.spine-allday:after{left:var(--s3)}}.tuner{position:fixed;top:84px;right:var(--s3);z-index:60;width:320px;max-width:calc(100vw - var(--s4));max-height:min(78vh,720px);display:flex;flex-direction:column;border-radius:30px;padding:var(--s3);gap:var(--s2);cursor:grab;touch-action:none}.tuner:active{cursor:grabbing}.tuner>*{flex:0 0 auto}.tuner-head{display:flex;align-items:center;gap:var(--s2)}.tuner-title{flex:1;font:700 var(--t-head) / 1.2 var(--font);letter-spacing:-.01em}.tuner-body{flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;margin:0 calc(var(--s2) * -1);padding:0 var(--s2)}.tuner-body h3{margin:var(--s3) 0 var(--s1);font:590 var(--t-foot) / 1 var(--font);color:var(--label-3)}.tuner-body section:first-child h3{margin-top:0}.knob{display:grid;grid-template-columns:74px 1fr 42px;align-items:center;gap:var(--s2);min-height:30px}.knob-name{font:400 var(--t-foot) / 1.2 var(--font);color:var(--label-2)}.knob-value{font:400 var(--t-caption) / 1 var(--font);color:var(--label-3);text-align:right;font-variant-numeric:tabular-nums}.knob input[type=range]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:100%;min-height:0;height:22px;padding:0;margin:0;background:none;border:none;cursor:pointer}.knob input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:var(--r-capsule);background:var(--fill-strong)}.knob input[type=range]::-webkit-slider-thumb{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:16px;height:16px;margin-top:-6px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0000004d,0 0 0 .5px #0000001a}.knob input[type=range]:focus-visible::-webkit-slider-thumb{outline:2px solid var(--accent);outline-offset:2px}.tuner-foot{display:flex;gap:var(--s2);padding-top:var(--s2);border-top:.5px solid var(--separator)}.tuner-foot .btn{flex:1}@media(max-width:767px){.tuner{top:auto;right:var(--s3);left:var(--s3);bottom:calc(var(--s7) + env(safe-area-inset-bottom));width:auto;max-height:56vh}}.rem-section+.rem-section{margin-top:var(--s5)}.rem-row{align-items:flex-start}.rem-when{flex:none;display:flex;flex-direction:column;align-items:flex-end;width:74px;padding-top:1px;text-align:right;color:var(--label-2);font-size:var(--t-subhead)}.rem-when-day{font-size:var(--t-caption);font-weight:590;color:var(--label-3);letter-spacing:0}.rem-when.late,.rem-next-when.late{color:var(--orange)}.rem-next .item{padding:var(--s4)}.rem-next-when{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2);font-size:var(--t-title);font-weight:600;letter-spacing:-.02em;color:var(--label-2)}.rem-next-text{margin-top:2px;font-size:var(--t-title3);letter-spacing:-.014em}.rem-note{margin-top:var(--s2);line-height:1.42}.rem-next .rem-note{color:var(--label);font-size:var(--t-callout);max-width:62ch}.rem-open{width:100%;background:none;border:none;font:inherit;letter-spacing:inherit;color:var(--label-2);text-align:left;cursor:pointer}.rem-open:hover{background:var(--fill)}.rem-label{flex:none;min-width:96px;color:var(--label-2);font-size:var(--t-subhead)}.rem-text{background:none;padding:4px 0}.rem-custom{gap:var(--s4);grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.rem-actions{margin-top:var(--s3)}@media(max-width:767px){.rem-when{width:62px;font-size:var(--t-foot)}.rem-label{min-width:78px}}.wx{display:flex;flex-direction:column;height:100%;min-height:0}.wx-wide{flex-direction:row;gap:var(--s4)}.wx-now{display:flex;flex-direction:column;min-width:0;flex:1}.wx-place{font-size:var(--t-subhead);font-weight:600;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wx-temp{font-size:46px;font-weight:250;line-height:1.04;letter-spacing:-.03em;margin-top:2px}.wx-cond{color:var(--label-2);font-size:var(--t-caption);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wx-warn{margin-top:auto;padding-top:var(--s2);display:flex;align-items:center;gap:5px;font-size:var(--t-caption);font-weight:590;line-height:1.25}.wx-warn-dry{color:var(--label-2);font-weight:400}.wx-icon{flex:none;display:block}.wx-days{flex:1;min-width:0;display:grid;align-content:space-between;gap:2px;margin:0;padding:0;list-style:none}.wx-day{display:grid;grid-template-columns:2.4em 24px 1fr auto auto;align-items:center;gap:6px;font-size:var(--t-caption)}.wx-day-name{color:var(--label-2);font-weight:590}.wx-day-icon{display:flex;justify-content:center}.wx-day-rain{color:#4da3ff;font-weight:620;text-align:right}.wx-day-low{color:var(--label-3);min-width:2.2em;text-align:right}.wx-day-high{font-weight:620;min-width:2.2em;text-align:right}.gr{display:flex;flex-direction:column;height:100%;min-height:0}.gr-wide{flex-direction:row;align-items:stretch;gap:var(--s4)}.gr-main{min-width:0;flex:none}.gr-next{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:1px;padding-left:var(--s4);border-left:1px solid var(--separator)}.gr-next-head{color:var(--label-3);font-size:var(--t-caption);font-weight:590}.gr-next-in{font-size:var(--t-title3);font-weight:600;letter-spacing:-.014em;white-space:nowrap}.gr-next-what{font-size:var(--t-caption);color:var(--label-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gr-next-at{font-size:var(--t-caption);color:var(--label-3)}.gr-next-clear{color:var(--label-2);font-size:var(--t-caption)}.gr-hello{font-size:var(--t-subhead);font-weight:600;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gr-clock{font-size:40px;font-weight:250;line-height:1.06;letter-spacing:-.03em;margin-top:2px;white-space:nowrap}.gr-meridiem{font-size:var(--t-foot);font-weight:590;letter-spacing:0;margin-left:4px;color:var(--label-2)}.gr-date{color:var(--label-2);font-size:var(--t-caption);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gr-wx{display:flex;align-items:center;gap:6px;margin-top:auto;padding-top:var(--s2);font-size:var(--t-caption)}.gr-wide .gr-wx{flex:none;flex-direction:column;justify-content:center;gap:2px;margin-top:0;padding-top:0;text-align:center}.gr-wx-value{font-size:var(--t-title3);font-weight:600;letter-spacing:-.014em}.gr-wx-cond{color:var(--label-2);max-width:9ch;line-height:1.2}
