@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Dancing Script Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/assets/dancing-script-vietnamese-wght-normal-BsUJvdxu.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Dancing Script Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/assets/dancing-script-latin-ext-wght-normal-DJGK6qJa.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Dancing Script Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/assets/dancing-script-latin-wght-normal-CyISZbeS.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.scenery{z-index:0;pointer-events:none;--scene-w:max(100vw, 120vh);background:#0c0b0a;position:fixed;inset:0;overflow:hidden}.scenery[data-phase=day]{background:#2b3a42}.scenery-painting{left:50%;top:calc(var(--scene-w) * -.17);width:var(--scene-w);height:calc(var(--scene-w) * .5667);object-fit:cover;display:block;position:absolute;transform:translate(-50%);-webkit-mask-image:linear-gradient(#000 82%,#0000);mask-image:linear-gradient(#000 82%,#0000)}.scenery-painting.fade-in{animation:2.4s both scene-in}@keyframes scene-in{0%{opacity:0}}.scenery-shade{background:#05070b;position:absolute;inset:0}.scenery-scrim{background:radial-gradient(56% 75% at 22% 18%,#06080c75,#0000 72%),radial-gradient(24% 60% at 94% 18%,#06080c57,#0000 72%),linear-gradient(#06080c2e,#0000);position:absolute;inset:0 0 60%}.scenery-wash{background:linear-gradient(180deg, var(--wash) 0%, color-mix(in srgb, var(--wash) 70%, transparent) 55%, transparent);position:absolute;inset:0 0 50%}.scenery-fog{background:linear-gradient(180deg, transparent, color-mix(in srgb, var(--fog) 60%, transparent) 45%, transparent);height:26vh;position:absolute;top:8vh;left:0;right:0}.scenery-moon{width:clamp(64px,5vw,100px);height:auto;position:absolute;top:.5vh;left:63%}.scenery:after{content:"";background:var(--scenery-dim);position:absolute;inset:0}.clouds{height:24vh;position:absolute;top:0;left:0;right:0;overflow:hidden}.clouds-track{width:200%;height:100%;display:flex}.cloud-strip{filter:blur(6px);flex:none;width:50%;height:100%}:root.reduce-effects .cloud-strip{filter:none}.scenery.animate .clouds-track{will-change:transform;animation:260s linear infinite cloud-drift}@keyframes cloud-drift{to{transform:translate(-50%)}}.precip{position:absolute;inset:0;overflow:hidden}.precip i{height:200%;position:absolute;top:-100%;left:-10%;right:-10%}.precip.rain i{opacity:.85;background-image:repeating-linear-gradient(105deg,#0000 0 14px,#bed2eb38 14px 15px,#0000 15px 31px,#bed2eb1f 31px 32px,#0000 32px 47px);background-size:100% 46px}.scenery.animate .precip.rain i{will-change:transform;animation:.7s linear infinite fall}.precip.snow i{background-image:radial-gradient(2.5px 2.5px at 20px 30px,#ffffffd9,#0000 60%),radial-gradient(2px 2px at 90px 80px,#ffffffb3,#0000 60%),radial-gradient(3px 3px at 150px 20px,#fffc,#0000 60%),radial-gradient(2px 2px at 60px 140px,#fff9,#0000 60%);background-size:180px 170px}.precip.snow i.far{opacity:.55;background-size:110px 120px}.scenery.animate .precip.snow i{will-change:transform;animation:14s linear infinite fall}.scenery.animate .precip.snow i.far{animation-duration:22s}@keyframes fall{to{transform:translateY(50%)}}.lightning{opacity:0;background:radial-gradient(at 70% 10%,#e6ecff8c,#0000 60%);position:absolute;inset:0 0 60%}.scenery.animate .lightning{animation:11s linear infinite flash}@keyframes flash{0%,62%,64.5%,66%,to{opacity:0}63%,65.5%{opacity:1}}@media (prefers-reduced-motion:reduce){.scenery.animate *{animation:none!important}}.react-grid-layout{transition:height .2s;position:relative}.react-grid-item{transition:left .2s,top .2s,width .2s,height .2s}.react-grid-item img{pointer-events:none;-webkit-user-select:none;user-select:none}.react-grid-item.cssTransforms{transition-property:transform,width,height}.react-grid-item.resizing{z-index:1;will-change:width, height;transition:none}.react-grid-item.react-draggable-dragging{z-index:3;will-change:transform;transition:none}.react-grid-item.dropping{visibility:hidden}.react-grid-item.react-grid-placeholder{opacity:.2;z-index:2;-webkit-user-select:none;user-select:none;background:red;transition-duration:.1s}.react-grid-item.react-grid-placeholder.placeholder-resizing{transition:none}.react-grid-item>.react-resizable-handle{opacity:0;width:20px;height:20px;position:absolute}.react-grid-item:hover>.react-resizable-handle{opacity:1}.react-grid-item>.react-resizable-handle:after{content:"";border-bottom:2px solid #0006;border-right:2px solid #0006;width:5px;height:5px;position:absolute;bottom:3px;right:3px}.react-resizable-hide>.react-resizable-handle{display:none}.react-grid-item>.react-resizable-handle.react-resizable-handle-sw{cursor:sw-resize;bottom:0;left:0;transform:rotate(90deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-se{cursor:se-resize;bottom:0;right:0}.react-grid-item>.react-resizable-handle.react-resizable-handle-nw{cursor:nw-resize;top:0;left:0;transform:rotate(180deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-ne{cursor:ne-resize;top:0;right:0;transform:rotate(270deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-w,.react-grid-item>.react-resizable-handle.react-resizable-handle-e{cursor:ew-resize;margin-top:-10px;top:50%}.react-grid-item>.react-resizable-handle.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-n,.react-grid-item>.react-resizable-handle.react-resizable-handle-s{cursor:ns-resize;margin-left:-10px;left:50%}.react-grid-item>.react-resizable-handle.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}.react-resizable{position:relative}.react-resizable-handle{box-sizing:border-box;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2IDYiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmYwMCIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI2cHgiIGhlaWdodD0iNnB4Ij48ZyBvcGFjaXR5PSIwLjMwMiI+PHBhdGggZD0iTSA2IDYgTCAwIDYgTCAwIDQuMiBMIDQgNC4yIEwgNC4yIDQuMiBMIDQuMiAwIEwgNiAwIEwgNiA2IEwgNiA2IFoiIGZpbGw9IiMwMDAwMDAiLz48L2c+PC9zdmc+);background-position:100% 100%;background-repeat:no-repeat;background-origin:content-box;width:20px;height:20px;padding:0 3px 3px 0;position:absolute}.react-resizable-handle-sw{cursor:sw-resize;bottom:0;left:0;transform:rotate(90deg)}.react-resizable-handle-se{cursor:se-resize;bottom:0;right:0}.react-resizable-handle-nw{cursor:nw-resize;top:0;left:0;transform:rotate(180deg)}.react-resizable-handle-ne{cursor:ne-resize;top:0;right:0;transform:rotate(270deg)}.react-resizable-handle-w,.react-resizable-handle-e{cursor:ew-resize;margin-top:-10px;top:50%}.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-resizable-handle-n,.react-resizable-handle-s{cursor:ns-resize;margin-left:-10px;left:50%}.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}.chores,.routines{flex-direction:column;gap:.5rem;height:100%;padding:.6rem 1.1rem 1rem;display:flex;position:relative}.chore-cols{flex:1;gap:.75rem;min-height:0;display:grid}.chore-col{border-radius:var(--radius);background:linear-gradient(180deg, color-mix(in srgb, var(--member,var(--accent)) 16%, transparent), var(--raised) 40%);border:1px solid color-mix(in srgb, var(--member,var(--accent)) 30%, transparent);flex-direction:column;gap:.5rem;min-height:0;padding:.75rem;display:flex}.chore-col.anyone{--member:var(--text-3)}.chore-who{align-items:center;gap:.6rem;min-width:0;display:flex}.chore-name{flex-direction:column;flex:1;min-width:0;display:flex}.chore-name strong{font-size:1.1rem;font-weight:600}.chore-anyone-icon{background:var(--raised-2);border-radius:50%;flex:none;place-items:center;width:2.6rem;height:2.6rem;display:grid}.chore-balance{background:color-mix(in srgb, var(--sun) 22%, transparent);color:var(--text);white-space:nowrap;border-radius:999px;flex:none;padding:.3rem .7rem;font-size:1.05rem;font-weight:700}.chore-list{scrollbar-width:none;flex-direction:column;flex:1;gap:.4rem;min-height:0;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.chore{width:100%;min-height:var(--tap-lg);border:1px solid var(--line);background:var(--card-solid);text-align:left;cursor:pointer;transition:transform var(--dur-fast) var(--ease), background var(--dur) var(--ease);border-radius:.9rem;align-items:center;gap:.6rem;padding:.4rem .7rem;display:flex;position:relative}.chore:active{transform:scale(.98)}.chore-check{border:2.5px solid color-mix(in srgb, var(--member,var(--accent)) 70%, var(--line-strong));color:#fff;border-radius:50%;flex:none;place-items:center;width:1.7rem;height:1.7rem;display:grid}.chore.done .chore-check{background:var(--ok);border-color:var(--ok)}.chore-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:1rem;font-weight:500;overflow:hidden}.chore.done .chore-title{color:var(--text-3);text-decoration:line-through}.chore-reward{color:var(--sun);flex:none;font-size:.85rem;font-weight:700}.chore.done .chore-reward{color:var(--ok)}.chore.burst{animation:chore-pop .6s var(--ease)}@keyframes chore-pop{40%{transform:scale(1.04)}}.chore-burst{pointer-events:none;width:.6rem;height:.6rem;box-shadow:0 -1.6rem 0 -.1rem var(--sun), 1.4rem -.8rem 0 -.15rem var(--accent), 1.4rem .8rem 0 -.1rem var(--ok), 0 1.6rem 0 -.15rem var(--sun), -1.4rem .8rem 0 -.1rem var(--rain), -1.4rem -.8rem 0 -.15rem var(--accent);animation:burst .9s var(--ease) forwards;border-radius:50%;position:absolute;top:50%;right:1rem}@keyframes burst{0%{opacity:1;transform:translateY(-50%)scale(.3)}to{opacity:0;transform:translateY(-50%)scale(1.6)}}@media (prefers-reduced-motion:reduce){.chore.burst,.chore-burst{animation:none}}.chore-add{border:1.5px dashed var(--line-strong);min-height:44px;color:var(--text-2);cursor:pointer;background:0 0;border-radius:.9rem;flex:none;justify-content:center;align-items:center;gap:.35rem;font-size:.85rem;display:flex}@container (height<=360px){.chore-add{display:none}}.who-picker{flex-wrap:wrap;gap:.5rem;display:flex}.who-picker .who{border-radius:var(--radius);background:var(--raised);cursor:pointer;border:2px solid #0000;flex-direction:column;align-items:center;gap:.3rem;min-width:5rem;padding:.6rem .5rem;font-weight:500;display:flex}.who-picker .who.on{border-color:var(--member);background:color-mix(in srgb, var(--member) 18%, transparent)}.who-picker .who:not(.on) .avatar{opacity:.55}.who-picker.big{justify-content:center}.who-picker.big .who{min-width:7rem;padding:1rem;font-size:1.1rem}.who-picker.big .who .avatar{opacity:1}.stepper{align-items:center;gap:.5rem;display:flex}.stepper-value{text-align:center;width:8rem;font-size:1.2rem;font-weight:700}.routine-cards{scrollbar-width:none;flex:1;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:.75rem;min-height:0;display:grid;overflow-y:auto}.routine-card{border-radius:var(--radius);background:linear-gradient(180deg, color-mix(in srgb, var(--member) 16%, transparent), var(--raised) 45%);border:1px solid color-mix(in srgb, var(--member) 30%, transparent);flex-direction:column;gap:.6rem;min-height:0;padding:.75rem;display:flex}.routine-card header{align-items:center;gap:.6rem;display:flex}.routine-name{flex-direction:column;flex:1;min-width:0;display:flex}.routine-name strong{font-size:1.1rem;font-weight:600}.routine-ring{background:radial-gradient(closest-side, var(--card-solid) 76%, transparent 78%), conic-gradient(var(--member) var(--pct), var(--raised-2) 0);border-radius:50%;flex:none;place-items:center;width:2.8rem;height:2.8rem;font-size:.8rem;font-weight:700;display:grid}.routine-card.complete .routine-ring{background:radial-gradient(closest-side, var(--ok) 76%, transparent 78%), conic-gradient(var(--ok) 360deg, var(--ok) 0);color:#fff}.routine-steps{grid-template-columns:repeat(auto-fill,minmax(5.6rem,1fr));gap:.45rem;display:grid}.routine-step{border:2px solid var(--line);background:var(--card-solid);cursor:pointer;min-height:5.2rem;transition:transform var(--dur-fast) var(--ease), border-color var(--dur) var(--ease);border-radius:.9rem;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;padding:.5rem .3rem;display:flex}.routine-step:active{transform:scale(.96)}.routine-step.on{border-color:var(--ok);background:color-mix(in srgb, var(--ok) 18%, var(--card-solid))}.routine-icon{font-size:1.9rem;line-height:1}.routine-step.on .routine-icon{filter:saturate(.6)}.routine-label{text-align:center;font-size:.82rem;font-weight:600;line-height:1.2}.routine-step.on .routine-label{color:var(--text-2);text-decoration:line-through}.routine-done{text-align:center;color:var(--ok);font-weight:700}.routine-card.celebrate{animation:chore-pop .7s var(--ease) 2}.routine-cards.compact .routine-step{min-height:3.6rem}.routine-cards.compact .routine-icon{font-size:1.4rem}.sky{--aurora:#63d9a0;flex-direction:column;gap:.6rem;height:100%;min-height:0;padding:.6rem 1.25rem .9rem;display:flex;position:relative;overflow:hidden}:root[data-theme=light] .sky{--aurora:#1d8f5c}.sky.is-compact{justify-content:center;padding:.6rem 1rem}.sky-foot{color:var(--text-3);border-top:1px solid var(--line);flex-wrap:wrap;flex:none;align-items:center;gap:.2rem .75rem;min-height:1.6rem;margin-top:auto;padding-top:.45rem;padding-right:7rem;font-size:.75rem;display:flex}.sky-foot .status-badge{bottom:.7rem}.sky-source{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.sky-note{color:var(--text-2);margin:0;font-size:.88rem;line-height:1.35}.sky-lede{margin:0;font-size:1.1rem}.sky-section-title{letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);margin:0 0 .25rem;font-size:.75rem;font-weight:650}.sky-stat{flex-direction:column;gap:.1rem;min-width:0;display:flex}.sky-stat-label{color:var(--text-2);align-items:center;gap:.35rem;font-size:.8rem;display:inline-flex}.sky-stat-value{letter-spacing:-.02em;white-space:nowrap;font-size:1.9rem;font-weight:300;line-height:1.05}.sky-stat-sub{color:var(--text-2);font-size:.8rem}.sky-stat.is-next .sky-stat-value{color:var(--sun)}.sky-stat.is-next .sky-stat-sub{color:var(--text)}.sky-big{letter-spacing:-.02em;white-space:nowrap;align-items:center;gap:.5rem;font-size:2.4rem;font-weight:250;line-height:1;display:inline-flex}.muted-num{color:var(--text-2)}.sky-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.sky-row{grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;min-height:3rem;padding:.3rem 0;display:grid}.sky-row+.sky-row{border-top:1px solid var(--line)}.sky-row-main{flex-direction:column;min-width:0;display:flex}.sky-row-main strong{white-space:nowrap;text-overflow:ellipsis;font-weight:550;overflow:hidden}.sky-row-main .muted{white-space:nowrap;text-overflow:ellipsis;font-size:.82rem;overflow:hidden}.sky-row-side{color:var(--text-2);text-align:right;white-space:nowrap;font-size:.8rem}.sky-compact-line{flex-direction:column;gap:.15rem;margin:0;font-size:1rem;display:flex}.sky-compact-line strong{font-size:1.15rem;font-weight:550}.sun-arc{flex:5rem;min-height:4.5rem;position:relative}.sun-arc svg{display:block;position:absolute;inset:0}.sun-curve-night{fill:none;stroke:var(--line-strong);stroke-width:2px;stroke-dasharray:3 5;stroke-linecap:round}.sun-curve-day{fill:none;stroke:var(--sun);stroke-width:2.5px;stroke-linecap:round}.sun-horizon{stroke:var(--line-strong);stroke-width:1.5px}.sun-tick{stroke:var(--text-2);stroke-width:2px;stroke-linecap:round}.sun-dot{fill:var(--sun);stroke:color-mix(in srgb, var(--sun) 40%, white);stroke-width:2px}.sun-dot.below{fill:var(--card-solid);stroke:var(--text-3)}.sun-stats{flex:none;grid-template-columns:repeat(auto-fit,minmax(7.5rem,1fr));gap:.5rem 1rem;display:grid}.sky-delta{color:var(--text);flex:none;margin:0;font-size:.92rem}.sky-delta .up{color:var(--ok)}.sky-delta .down{color:var(--accent)}.sky-golden{color:var(--text-2);flex:none;align-items:center;gap:.5rem;margin:0;font-size:.88rem;display:inline-flex}.sky-golden i{background:linear-gradient(135deg, var(--sun), var(--accent));border-radius:50%;width:.65rem;height:.65rem}.sky-golden.on{color:var(--sun);font-weight:600}.sky-sun.is-compact .sun-stats{grid-template-columns:1fr 1fr}.sky-sun.is-compact .sky-stat-value{font-size:1.6rem}.sky-sun.is-compact .sky-delta{color:var(--text-2);font-size:.8rem}.sky-moon{--moon-lit:#e9e2d2;--moon-lit-hi:#fffaf0;--moon-shadow:#1f1c19;--moon-maria:#8b8272}:root[data-theme=light] .sky-moon{--moon-shadow:#3d3832;--moon-lit:#efe7d6}.moon-main{flex:auto;align-items:center;gap:1.1rem;min-height:0;display:flex}.moon-disc{aspect-ratio:1;flex:none;height:100%;min-height:4rem;max-height:9rem}.moon-dark{fill:var(--moon-shadow)}.moon-rim{fill:none;stroke:color-mix(in srgb, var(--moon-lit) 22%, transparent);stroke-width:1px}.moon-maria{fill:var(--moon-maria);opacity:.16}.moon-text{flex-direction:column;gap:.2rem;min-width:0;display:flex}.moon-name{letter-spacing:-.01em;font-size:1.45rem;font-weight:500}.moon-pct{color:var(--text-2);font-size:1rem}.moon-pct b{color:var(--text);letter-spacing:-.02em;font-size:2.2rem;font-weight:250}.moon-text .muted{font-size:.85rem}.moon-events{flex:none;grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.55rem 1rem;margin:0;display:grid}.moon-event dt{color:var(--text-2);font-size:.78rem}.moon-event dd{flex-direction:column;margin:0;display:flex}.moon-event dd strong{white-space:nowrap;font-size:1.02rem;font-weight:500}.moon-event dd .muted{font-size:.78rem}.sky-moon.is-compact .moon-disc{max-height:5rem}.sky-moon.is-compact .moon-name{font-size:1.1rem}.sky-moon.is-compact .moon-pct b{font-size:1.5rem}@container (width<=330px) and (height>=300px){.moon-main{flex-direction:column;align-items:flex-start;gap:.5rem}.moon-disc{max-height:6rem}}.night-sections{flex-direction:column;flex:1;gap:.75rem;min-height:0;display:flex;overflow:hidden}.sky-night.is-expanded .night-sections{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));align-content:start;gap:1rem 2rem;display:grid}.planet-dot{background:radial-gradient(circle at 35% 35%, #fff, var(--planet) 55%);width:.9rem;height:.9rem;box-shadow:0 0 .6rem color-mix(in srgb, var(--planet) 60%, transparent);border-radius:50%}.meteor-mark{background:linear-gradient(225deg, var(--text) 0 18%, transparent 70%);clip-path:polygon(100% 0,30% 100%,0 70%);width:.9rem;height:.9rem}.iss-mark{background:linear-gradient(90deg, var(--rain) 0 30%, var(--text) 30% 70%, var(--rain) 70%);border-radius:2px;width:.9rem;height:.9rem;transform:rotate(-30deg)scaleY(.45)}@container (width<=400px){.sky-night .sky-row{grid-template-columns:auto 1fr}.sky-night .sky-row-side{display:none}}.aurora-outlook{flex-direction:column;flex:none;gap:.35rem;display:flex}.aurora-chip{background:var(--raised);border:1px solid var(--line);min-height:2.3rem;color:var(--text-2);border-radius:999px;align-self:flex-start;align-items:center;padding:.25rem .95rem;font-size:1.05rem;font-weight:600;display:inline-flex}.level-slight .aurora-chip{color:var(--text)}.level-possible .aurora-chip{color:var(--warn);border-color:color-mix(in srgb, var(--warn) 45%, transparent);background:color-mix(in srgb, var(--warn) 12%, transparent)}.level-likely .aurora-chip,.level-overhead .aurora-chip{color:var(--aurora);border-color:color-mix(in srgb, var(--aurora) 50%, transparent);background:color-mix(in srgb, var(--aurora) 14%, transparent)}.aurora-figures{flex-wrap:wrap;flex:none;gap:1.5rem;display:flex}.g-badge{background:var(--danger-soft);color:var(--danger);letter-spacing:0;border-radius:.4rem;padding:.15rem .5rem;font-size:.85rem;font-weight:700}.kp-chart{flex:4rem;min-height:4rem;position:relative}.kp-chart svg{display:block;position:absolute;inset:0}.kp-grid{stroke:var(--line);stroke-width:1px}.kp-threshold{stroke:var(--aurora);stroke-width:1.5px;stroke-dasharray:5 4}.kp-now{stroke:var(--text);stroke-width:1.5px;opacity:.7}.kp-bar.kp-quiet{fill:color-mix(in srgb, var(--ok) 75%, transparent);color:var(--ok)}.kp-bar.kp-active{fill:var(--warn);color:var(--warn)}.kp-bar.kp-storm{fill:var(--danger);color:var(--danger)}.kp-bar.is-forecast{fill-opacity:.35;stroke:currentColor;stroke-width:1px;stroke-dasharray:2 2}.kp-label{fill:var(--text-2);font-size:.72rem}.uv-main{flex:none;align-items:center;gap:1.1rem;display:flex}.uv-badge{background:radial-gradient(circle, color-mix(in srgb, var(--uv) 30%, transparent) 0 58%, transparent 60%);border:.42rem solid var(--uv);border-radius:50%;flex:none;place-items:center;width:5.2rem;height:5.2rem;display:grid}.uv-num{letter-spacing:-.03em;font-size:2.5rem;font-weight:300}.uv-text{flex-direction:column;gap:.2rem;min-width:0;display:flex}.uv-text strong{font-size:1.3rem;font-weight:550}.uv-text .muted{font-size:.88rem}.uv-advice{color:var(--text-2);font-size:.85rem}.uv-bars{flex:4rem;align-items:stretch;gap:.25rem;min-height:4rem;max-height:9rem;margin:auto 0 0;padding:0;list-style:none;display:flex}.uv-bars li{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:.15rem;min-width:0;display:flex}.uv-bar{background:var(--uv);border-radius:.35rem .35rem .15rem .15rem;width:70%;max-width:1.6rem}.uv-bar-val{color:var(--text-2);font-size:.72rem}.uv-bar-hour{color:var(--text-3);font-size:.7rem}.uv-bars li.past{opacity:.45}.uv-bars li.now .uv-bar-hour,.uv-bars li.now .uv-bar-val{color:var(--text);font-weight:700}.uv-bars li.now .uv-bar{box-shadow:0 0 0 2px var(--card-solid), 0 0 0 3.5px var(--text)}.sky-uv.is-compact .uv-badge{border-width:.32rem;width:3.8rem;height:3.8rem}.sky-uv.is-compact .uv-num{font-size:1.8rem}@container (width<=300px){.uv-bar-val{display:none}}.quake-list{flex:1;min-height:0;margin:0;padding:0;list-style:none;overflow:hidden}.quake-row{grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem;min-height:3.2rem;padding:.25rem 0;display:grid}.quake-row+.quake-row{border-top:1px solid var(--line)}.quake-mag{background:var(--raised-2);width:2.9rem;height:2.3rem;color:var(--text);border-radius:.6rem;place-items:center;font-size:1.05rem;font-weight:700;display:grid}.quake-mag.mag-3{background:color-mix(in srgb, var(--sun) 24%, transparent);color:var(--sun)}.quake-mag.mag-4{background:color-mix(in srgb, var(--accent) 26%, transparent);color:var(--accent)}.quake-mag.mag-5,.quake-mag.mag-6{background:var(--danger);color:#fff}.sky-quakes.is-compact .quake-row .sky-row-main .muted{display:none}.hourly-graph{flex:1;min-height:6rem;position:relative}.hourly-graph svg{display:block;position:absolute;inset:0;overflow:visible}.hg-line{fill:none;stroke:var(--accent);stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.hg-dot{fill:var(--card-solid);stroke:var(--accent);stroke-width:2px}.hg-dot.hg-extreme{fill:var(--accent)}.hg-temp{fill:var(--text);text-anchor:middle;font-size:.9rem;font-weight:550}.hg-hour{fill:var(--text-2);text-anchor:middle;font-size:.75rem}.hg-pop{fill:var(--rain)}.hg-pop-label{fill:var(--rain);text-anchor:middle;font-size:.7rem;font-weight:650}.hg-base{stroke:var(--line);stroke-width:1px}.kp-threshold-label{fill:var(--aurora);text-anchor:end}.sky-night.is-expanded .sky-row-main .muted{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}@container (width>=600px){.sky-night .night-sections{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:.75rem 1.75rem;display:grid}.sky-night .night-sections>.night-section:first-child:not(:last-child){grid-row:span 2}}@container (width>=960px){.sky-night .night-sections{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr))}.sky-night .night-sections>.night-section:first-child:not(:last-child){grid-row:auto}}@container (height<=400px){.moon-events{grid-template-columns:repeat(2,minmax(0,1fr));gap:.3rem .75rem}.moon-event dd .muted,.moon-text .muted{display:none}.moon-disc{min-height:3rem}.moon-pct b{font-size:1.7rem}}@container (height<=400px) and (width>=520px){.moon-events{grid-template-columns:repeat(4,minmax(0,1fr))}}.km,.kl,.kt,.kc{flex-direction:column;gap:.45rem;height:100%;min-height:0;padding:.6rem 1.1rem 1rem 1.25rem;display:flex;position:relative}.is-fullscreen .km,.is-fullscreen .kl,.is-fullscreen .kt,.is-fullscreen .kc{padding:.5rem .25rem 1rem}.kk-key{min-height:var(--tap);border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--raised);color:var(--text);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;transition:background var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);place-items:center;font-size:1.35rem;font-weight:450;display:grid}.kk-key:active:not(:disabled){background:var(--raised-2);transform:scale(.96)}.kk-key:disabled{opacity:.4;cursor:default}.kk-alt{border-color:var(--line-strong);color:var(--text-2);background:0 0}.kk-key.on{background:var(--accent);color:var(--accent-text);border-color:#0000}.kk-step{width:var(--tap);height:var(--tap);background:var(--raised-2);color:var(--text);cursor:pointer;touch-action:manipulation;border:none;border-radius:999px;flex:none;place-items:center;display:grid}.kk-step:active:not(:disabled){transform:scale(.94)}.km-today{min-height:40px}.km-week{flex:1;grid-template-columns:repeat(7,minmax(0,1fr));gap:.45rem;min-height:0;margin:0;padding:0;list-style:none;display:grid}.km-day{border-radius:var(--radius);background:var(--raised);border:1px solid #0000;flex-direction:column;gap:.4rem;min-width:0;min-height:0;padding:.5rem .45rem .45rem;display:flex}.km-day.is-today{background:var(--accent-soft);border-color:color-mix(in srgb, var(--accent) 45%, transparent)}.km-day.is-past{opacity:.62}.km-dayhead{flex:none;justify-content:space-between;align-items:baseline;gap:.3rem;padding:0 .2rem;display:flex}.km-dow{letter-spacing:.08em;text-transform:uppercase;color:var(--text-2);font-size:.74rem;font-weight:650}.km-day.is-today .km-dow{color:var(--accent)}.km-date{font-variant-numeric:tabular-nums;color:var(--text-2);font-size:1.25rem;font-weight:300}.km-slots{flex-direction:column;flex:1;gap:.35rem;min-height:0;display:flex}.km-slot{min-height:var(--tap);border-radius:var(--radius-sm);flex-direction:column;flex:1;display:flex;overflow:hidden}.km-slot.has-meal{background:color-mix(in srgb, var(--text) 7%, transparent)}.km-slot.is-empty{border:1.5px dashed var(--line-strong)}.km-slot-btn{width:100%;min-height:var(--tap);color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:flex-start;gap:.15rem;min-width:0;padding:.4rem .55rem;display:flex}.km-slot-btn:active:not(:disabled){background:var(--raised-2)}.km-slot-name{letter-spacing:.07em;text-transform:uppercase;color:var(--text-3);font-size:.68rem;font-weight:650}.km-meal-title{overflow-wrap:anywhere;-webkit-line-clamp:4;line-clamp:4;-webkit-box-orient:vertical;font-size:1rem;font-weight:550;line-height:1.25;display:-webkit-box;overflow:hidden}.slots-3 .km-meal-title{-webkit-line-clamp:2;line-clamp:2;font-size:.9rem}.km-add{color:var(--text-3);align-items:center;gap:.25rem;font-size:.85rem;font-weight:550;display:inline-flex}.km-slot-meta{flex:none;align-items:center;gap:.35rem;min-width:0;padding:0 .4rem .25rem .55rem;display:flex}.km-recipe{min-height:var(--tap);margin:calc((var(--tap) - 1.6rem) / -2) 0;color:var(--accent);white-space:nowrap;align-items:center;gap:.25rem;padding:0 .35rem;font-size:.82rem;font-weight:600;text-decoration:none;display:inline-flex}@container (width<=640px){.km-week{scrollbar-width:none;grid-template-columns:1fr;grid-auto-rows:min-content;gap:.35rem;overflow-y:auto}.km-day{grid-template-columns:3.6rem minmax(0,1fr);align-items:stretch;padding:.3rem .35rem .3rem .5rem;display:grid}.km-dayhead{flex-direction:column;justify-content:center;align-items:flex-start;gap:0}.km-slots{flex-direction:row}.km-slot{flex:1 1 0;min-width:0}.km-slot.has-meal{flex-direction:row;align-items:center}.km-meal-title{-webkit-line-clamp:2;line-clamp:2}.km-slot-meta{padding:0 .4rem 0 0}.slots-3 .km-slot.has-meal{flex-direction:column;align-items:stretch}.slots-3 .km-slot-meta{display:none}}@container (height<=300px) and (width>=641px){.km-meal-title{-webkit-line-clamp:2;line-clamp:2;font-size:.9rem}.km-slot-meta{display:none}}.km-tonight{flex-direction:column;justify-content:center;gap:.25rem;height:100%;min-height:0;padding:.75rem 1.1rem .75rem 1rem;display:flex;position:relative}.km-tonight-main{min-height:0;color:inherit;text-align:left;cursor:pointer;border-radius:var(--radius);background:0 0;border:none;flex:1;align-items:center;gap:1rem;padding:0;display:flex}.km-tonight .plate-art{aspect-ratio:1;flex:none;width:min(8.5rem,64cqh);height:auto}.km-tonight-text{flex-direction:column;gap:.2rem;min-width:0;display:flex}.km-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-size:.76rem;font-weight:700}.km-tonight-title{letter-spacing:-.015em;overflow-wrap:anywhere;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:clamp(1.25rem,15cqh,2.4rem);font-weight:500;line-height:1.12;display:-webkit-box;overflow:hidden}.km-tonight.is-empty .km-tonight-title{color:var(--text-2);font-size:clamp(1.1rem,12cqh,1.8rem);font-weight:400}.km-tonight-cta{color:var(--accent);font-size:.9rem;font-weight:600}.km-tonight-sub{color:var(--text-2);align-items:center;gap:.4rem;font-size:.9rem;display:inline-flex}.km-tonight-foot{color:var(--text-2);flex-wrap:wrap;flex:none;align-items:center;gap:1rem;font-size:.88rem;display:flex}.km-tomorrow b{color:var(--text);font-weight:600}@container (height<=150px){.km-tonight-sub,.km-tonight-foot{display:none}}.plate-art{--plate:color-mix(in srgb, var(--text) 14%, var(--card-solid));--plate-hi:color-mix(in srgb, var(--text) 5%, var(--card-solid));overflow:visible}.plate-rim{stroke:var(--line-strong);stroke-width:1.5px}.plate-well{stroke:color-mix(in srgb, var(--text) 10%, transparent);stroke-width:1.5px}.plate-cutlery{fill:none;stroke:var(--text-3);stroke-width:4.5px;stroke-linecap:round;stroke-linejoin:round}.plate-art.is-empty .plate-cutlery{opacity:.6}.plate-herb{fill:color-mix(in srgb, var(--ok) 80%, var(--card-solid))}.plate-steam path{fill:none;stroke:var(--text-3);stroke-width:3px;stroke-linecap:round;opacity:.55;animation:3.6s ease-in-out infinite km-steam}.plate-steam path:nth-child(2){animation-delay:.6s}.plate-steam path:nth-child(3){animation-delay:1.2s}@keyframes km-steam{0%,to{opacity:.15;transform:translateY(2px)}50%{opacity:.65;transform:translateY(-2px)}}:root.reduce-effects .plate-steam path{animation:none}.km-when{color:var(--accent);margin:0;font-size:.92rem;font-weight:600}.km-title-row{align-items:center;gap:.4rem;display:flex}.km-fav-btn{color:var(--sun)}.km-picks{max-height:9.5rem;overflow-y:auto}.km-star{color:var(--sun)}.km-notes{resize:vertical;min-height:4.5rem;padding:.7rem .9rem;line-height:1.4}.kl-tabs{flex:none}.kl-count{background:var(--accent);min-width:1.3rem;height:1.3rem;color:var(--accent-text);border-radius:999px;place-items:center;padding:0 .35rem;font-size:.72rem;font-weight:700;display:inline-grid}.kl-clear{white-space:nowrap}.kl-add{flex:none;align-items:center;gap:.35rem;display:flex}.kl-input{flex:1;min-width:0}.kl-qty{flex:none;width:6.5rem}.kl-qty-toggle{font-size:1.05rem;font-weight:700}.kl-qty-toggle.on{background:var(--raised-2);color:var(--text)}.kl-add-btn{width:var(--tap-lg);height:var(--tap-lg)}.kl-suggest{flex:none}.kl-suggest.wrap{max-height:calc(72px + .45rem);overflow:hidden}.kl-suggest .chip{color:var(--text-2)}.kl-items{scrollbar-width:none;flex:1;min-height:0;margin:0;padding:0;list-style:none;overflow-y:auto}.kl-item{border-bottom:1px solid var(--line);align-items:center;gap:.35rem;display:flex}.kl-item:last-child{border-bottom:none}.kl-item.pending{opacity:.6}.kl-body{min-width:0;min-height:var(--tap);color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex:1;align-items:center;gap:.5rem;padding:0;display:flex}.kl-text{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:1.05rem;overflow:hidden}.kl-qty-pill{background:var(--raised-2);color:var(--text-2);border-radius:999px;flex:none;padding:.12rem .55rem;font-size:.78rem;font-weight:600}.kl-item.done .kl-text{text-decoration:line-through;-webkit-text-decoration-color:var(--text-3);text-decoration-color:var(--text-3);color:var(--text-3)}.kl-item.done .kl-qty-pill{opacity:.6}.kl-del{color:var(--text-3)}.kl-divider{margin:.2rem 0;border-top:1px dashed var(--line-strong)!important;border-bottom:none!important}@container (height<=300px){.kl-suggest{display:none}}.kt-hint{color:var(--warn);flex:none;margin:0;font-size:.82rem;font-weight:600}.kt-presets{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(var(--tap-lg), 1fr);flex:1;align-content:stretch;gap:.5rem;min-height:0;display:grid;overflow:hidden}@container (width>=700px){.kt-presets{grid-template-columns:repeat(7,minmax(0,1fr))}}.kt-presets-sheet{grid-template-columns:repeat(auto-fill,minmax(4.25rem,1fr));grid-auto-rows:var(--tap-lg);flex:none}.kt-preset{min-height:var(--tap);border-radius:var(--radius);border:1px solid var(--line);background:var(--raised);color:var(--text);cursor:pointer;touch-action:manipulation;flex-direction:column;justify-content:center;align-items:center;gap:.1rem;display:flex}.kt-preset:active:not(:disabled){background:var(--raised-2);transform:scale(.97)}.kt-preset strong{font-variant-numeric:tabular-nums;font-size:clamp(1.4rem,9cqh,2.2rem);font-weight:300;line-height:1}.kt-presets-sheet .kt-preset strong{font-size:1.5rem}.kt-preset span{letter-spacing:.08em;text-transform:uppercase;color:var(--text-2);font-size:.72rem;font-weight:650}.kt-preset-custom{border-style:dashed;border-color:var(--line-strong);color:var(--text-2);background:0 0}.kt-list{scrollbar-width:none;flex:1;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));align-content:start;gap:.6rem;min-height:0;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.kt-list:has(>:only-child){align-content:stretch}.kt-card{border-radius:var(--radius);background:var(--raised);border:1px solid var(--line);flex-direction:column;gap:.4rem;min-width:0;padding:.5rem .8rem .75rem;display:flex}.kt-list:has(>:only-child) .kt-card{justify-content:center}.kt-top{align-items:center;gap:.5rem;min-width:0;display:flex}.kt-label{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:1rem;font-weight:600;overflow:hidden}.kt-total{color:var(--text-2);white-space:nowrap;font-size:.8rem}.kt-cancel{color:var(--text-3);margin:-.35rem -.55rem -.35rem auto}.kt-digits{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:clamp(2.2rem,8cqw,3.6rem);font-weight:250;line-height:1}.kt-list:has(>:only-child) .kt-digits{font-size:clamp(2.6rem,min(24cqh,16cqw),7.5rem)}.kt-card.is-paused .kt-digits{color:var(--text-2)}.kt-bar{background:var(--line-strong);border-radius:999px;height:6px;overflow:hidden}.kt-bar i{height:100%;width:calc(var(--progress,0) * 100%);background:var(--accent);border-radius:inherit;transition:width 1s linear;display:block}.kt-card.is-paused .kt-bar i{background:var(--text-3)}.kt-actions{gap:.5rem;margin-top:.15rem;display:flex}.kt-btn{flex:1;padding:0 .6rem}.kt-card.is-done{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 22%, var(--card-solid));animation:1.1s ease-in-out infinite alternate kt-flash}@keyframes kt-flash{0%{background:color-mix(in srgb, var(--accent) 12%, var(--card-solid));box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 0%, transparent)}to{background:color-mix(in srgb, var(--accent) 40%, var(--card-solid));box-shadow:0 0 0 5px color-mix(in srgb, var(--accent) 35%, transparent)}}.kt-done-head{align-items:center;gap:.5rem;min-width:0;display:flex}.kt-bell{color:var(--accent);transform-origin:50% 15%;flex:none;animation:1.1s ease-in-out infinite kt-swing}@keyframes kt-swing{0%,to{transform:rotate(0)}20%{transform:rotate(14deg)}40%{transform:rotate(-12deg)}60%{transform:rotate(6deg)}}.kt-card.is-done .kt-digits{letter-spacing:-.02em;font-weight:500}.kt-dismiss{flex:1}.kt-snooze{flex:none}@media (prefers-reduced-motion:reduce){.kt-card.is-done,.kt-bell,.plate-steam path{animation:none}.kt-card.is-done{background:color-mix(in srgb, var(--accent) 34%, var(--card-solid));box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 35%, transparent)}}.kt.is-compact .kt-list{grid-template-columns:none;grid-auto-columns:minmax(13rem,1fr);grid-auto-flow:column;overflow:auto hidden}.kt.is-compact .kt-presets{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(var(--tap), 1fr)}.kt.is-compact .kt-preset span{display:none}@container (height<=300px){.kt-list{grid-template-columns:none;grid-auto-columns:minmax(18rem,1fr);grid-auto-flow:column;align-content:stretch;overflow:auto hidden}.kt-card{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.2rem .5rem;padding:.35rem .7rem .5rem;display:grid}.kt-top,.kt-done-head{grid-column:1/-1}.kt-bar,.kt-total{display:none}.kt-actions{gap:.3rem;margin:0}.kt-btn,.kt-snooze,.kt-dismiss{min-height:44px;padding:0 .75rem;font-size:.88rem}.kt-btn svg{display:none}.kt-digits{font-size:clamp(1.8rem,24cqh,3rem)}.kt-list:has(>:only-child) .kt-digits{font-size:clamp(1.8rem,24cqh,3rem)}.kt-card.is-done .kt-digits{font-size:clamp(1.3rem,16cqh,2rem)}.kt-presets{grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:minmax(var(--tap), 1fr)}}.kt-entry{flex-direction:column;align-items:center;gap:.6rem;display:flex}.kt-entry-digits{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:3.2rem;font-weight:250;line-height:1.1}.kt-entry-digits.is-empty{color:var(--text-3)}.kt-pad{grid-template-columns:repeat(3,1fr);gap:.5rem;width:min(100%,20rem);display:grid}.kt-pad .kk-key{min-height:var(--tap-lg)}.kc-modes{scrollbar-width:none;flex:none;align-self:flex-start;max-width:100%;overflow-x:auto}.kc-modes button{white-space:nowrap;min-height:40px}.kc-mode-short{display:none}.kc-body{flex:1;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:1.1rem;min-height:0;padding-top:.35rem;display:grid}.kc-in,.kc-out{flex-direction:column;gap:.5rem;min-width:0;min-height:0;display:flex}.kc-out{scrollbar-width:none;overflow-y:auto}.kc-display{border-radius:var(--radius);background:var(--raised);border:1px solid var(--line);flex:none;align-items:center;gap:.4rem;padding:.35rem;display:flex}.kc-value{flex:1;justify-content:center;align-items:baseline;gap:.4rem;min-width:0;display:flex;overflow:hidden}.kc-num{font-variant-numeric:tabular-nums;letter-spacing:-.02em;white-space:nowrap;font-size:clamp(1.6rem,6cqw,2.4rem);font-weight:300}.kc-unit{color:var(--text-2);white-space:nowrap;font-size:1rem}.kc-units{flex-wrap:wrap;flex:none;overflow:visible}.kc-fracs{flex:none;grid-template-columns:repeat(5,1fr);gap:.4rem;display:grid}.kc-fracs .kk-key{font-size:1.25rem}.kc-pad{grid-template-columns:repeat(4,1fr);grid-auto-rows:minmax(var(--tap), 1fr);flex:1;gap:.4rem;min-height:0;display:grid}.kc-to{flex:none;align-items:flex-start;gap:.3rem;min-width:0;display:flex}.kc-swap{border:1.5px solid var(--line-strong);color:var(--text)}.kc-result{flex-wrap:wrap;flex:none;align-items:baseline;gap:.2rem .5rem;min-width:0;padding:.4rem 0 .2rem;display:flex}.kc-approx{color:var(--text-3);font-size:1.6rem;font-weight:300}.kc-big{letter-spacing:-.035em;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:clamp(2.4rem,9cqw,4.6rem);font-weight:250;line-height:1}.kc-big-unit{color:var(--text-2);font-size:1.25rem;font-weight:500}.kc-also{grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.kc-also button{width:100%;min-height:var(--tap);border-radius:var(--radius-sm);background:var(--raised);color:var(--text);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;border:none;justify-content:space-between;align-items:baseline;gap:.5rem;padding:.75rem .85rem;font-size:1.02rem;display:flex}.kc-also-unit{color:var(--text-2);font-size:.85rem}.kc-note{color:var(--text-3);margin:0;font-size:.8rem;line-height:1.4}.kc-mark{align-items:center;gap:.6rem;margin:0;display:flex}@container (width<=560px){.kc-body{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);gap:.5rem}.kc-out{order:-1;gap:.35rem;overflow:visible}.kc-also,.kc-marks{display:none}.kc-result{padding:0}.kc-big{font-size:clamp(2rem,12cqw,3.4rem)}}@container (width<=400px){.kc-mode-long{display:none}.kc-mode-short{display:inline}}@container (height<=520px) and (width<=560px){.kc-note{display:none}}.kc.is-compact .kc-note{display:none}.ks{gap:1.5rem;max-width:56rem}.ks h3,.ks h4{margin:0}.ks-block{border-radius:var(--radius);background:var(--raised);border:1px solid var(--line);flex-direction:column;gap:.75rem;padding:1.1rem 1.25rem 1.25rem;display:flex}.ks-block .muted.small{margin:-.35rem 0 0}.ks-table td{vertical-align:middle}.ks-strong{font-weight:600}.ks-url{text-overflow:ellipsis;white-space:nowrap;max-width:18rem;overflow:hidden}.ks-url a{color:var(--accent);text-decoration:none}.ks-actions{white-space:nowrap;text-align:right!important}.ks-actions .btn+.btn{margin-left:.35rem}.ks-add{flex-wrap:wrap;gap:.5rem}.ks-add .input{min-width:12rem}.ks .segmented{align-self:flex-start}@container (height<=520px){.kc-pad{grid-auto-rows:minmax(40px,1fr)}.kc .kk-key{min-height:40px;font-size:1.15rem}}@container (height<=450px){.kc-fracs{display:none}}.widget-photo-frame.chrome-card,.widget-photo-day.chrome-card{-webkit-backdrop-filter:none;background:var(--card-solid)}.pf{background:var(--card-solid);border-radius:inherit;touch-action:pan-y;-webkit-user-select:none;user-select:none;outline-offset:-3px;flex:1;width:100%;height:100%;position:relative;overflow:hidden}.is-fullscreen .pf{border-radius:var(--radius-lg)}.pf-layer{opacity:0;transition:opacity var(--fade,1.4s) ease-in-out;position:absolute;inset:0}.pf-layer.on,.pf-layer.out{opacity:1}.pf-layer.on{z-index:1}.pf-img{-webkit-user-drag:none;width:100%;height:100%;display:block;position:absolute;inset:0}.pf-img.fit-cover{object-fit:cover}.pf-img.fit-contain{object-fit:contain}.pf-backdrop{object-fit:cover;filter:blur(28px)saturate(1.1)brightness(.55);width:116%;height:116%;position:absolute;inset:-8%;transform:translateZ(0)}.pf-backdrop.plain{filter:none;background:var(--card-solid);width:100%;height:100%;inset:0}.pf-kb{transform-origin:var(--kb-origin,50% 50%);animation:pf-kb var(--kb-dur,32s) linear both;will-change:transform}@keyframes pf-kb{0%{transform:scale(var(--kb-s0,1)) translate3d(var(--kb-x0,0%), var(--kb-y0,0%), 0)}to{transform:scale(var(--kb-s1,1.08)) translate3d(var(--kb-x1,0%), var(--kb-y1,0%), 0)}}.pf.is-paused .pf-kb{animation-play-state:paused}.pf.is-still .pf-kb{will-change:auto;animation:none}@media (prefers-reduced-motion:reduce){.pf-kb{will-change:auto;animation:none}.pf-layer{transition-duration:.3s}}.pf-caption{z-index:3;color:#f7f2ea;pointer-events:none;text-shadow:0 1px 2px #00000059;background:linear-gradient(#08070600 0%,#0807066b 45%,#080706b3 100%);flex-direction:column;gap:.15rem;padding:2.6rem 4.5rem .95rem 1.2rem;display:flex;position:absolute;bottom:0;left:0;right:0}.pf-caption strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:1.15rem;font-weight:550;line-height:1.25;display:-webkit-box;overflow:hidden}.pf-caption span{color:#f7f2eac7;font-size:.85rem}.is-compact .pf-caption{padding:1.8rem .9rem .6rem .8rem}.is-compact .pf-caption strong{-webkit-line-clamp:1;font-size:.95rem}.is-fullscreen .pf-caption strong{font-size:1.5rem}.pf-nav,.pf-round,.pf-chip{cursor:pointer;color:#fff;transition:opacity var(--dur) var(--ease), background var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);background:#0a090861;border:none;box-shadow:0 2px 10px #0000002e}:root:not(.reduce-effects) .pf-nav,:root:not(.reduce-effects) .pf-round,:root:not(.reduce-effects) .pf-chip{-webkit-backdrop-filter:blur(8px)}.pf-nav:active,.pf-round:active,.pf-chip:active{background:#0a090899;transform:scale(.94)}.pf-nav{z-index:4;width:var(--tap);height:var(--tap);margin-top:calc(var(--tap) / -2);opacity:.55;border-radius:50%;place-items:center;display:grid;position:absolute;top:50%}.pf-nav.prev{left:.6rem}.pf-nav.next{right:.6rem}.pf.is-paused .pf-nav,.pf-nav:focus-visible{opacity:1}.pf-tools{z-index:4;align-items:center;gap:.5rem;display:flex;position:absolute;top:.6rem;right:.6rem}.pf-round{width:var(--tap);height:var(--tap);opacity:.55;border-radius:50%;place-items:center;display:grid}.pf.is-paused .pf-round,.pf-round:focus-visible{opacity:1}.pf-chip{min-height:var(--tap);border-radius:999px;align-items:center;gap:.4rem;padding:0 1rem;font-size:.9rem;font-weight:600;display:inline-flex}.pf-count{z-index:4;color:#fffc;text-shadow:0 1px 3px #00000080;opacity:0;transition:opacity var(--dur) var(--ease);font-size:.75rem;font-weight:600;position:absolute;top:.95rem;left:1rem}.pf.is-paused .pf-count{opacity:1}.is-compact .pf-nav{opacity:0;pointer-events:none}.is-compact.is-paused .pf-nav{opacity:1;pointer-events:auto}.pf .status-badge{z-index:5}.pf-notice{z-index:3;border-radius:var(--radius-sm);background:var(--card-solid);max-width:calc(100% - 2rem);color:var(--text-2);box-shadow:var(--shadow);align-items:center;gap:.5rem;padding:.6rem 1rem;font-size:.9rem;display:inline-flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.pf-empty{text-align:center;height:100%;color:var(--text-2);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.55rem;padding:1.25rem;display:flex}.pf-empty strong{color:var(--text);font-size:1.1rem;font-weight:550}.pf-empty>span:not(.pf-empty-glyph){max-width:22rem;font-size:.9rem}.pf-empty-glyph{background:var(--accent-soft);width:3.6rem;height:3.6rem;color:var(--accent);border-radius:50%;place-items:center;display:grid}@container (height<=180px){.pf-empty>span:not(.pf-empty-glyph),.pf-empty-glyph{display:none}}.pf-day-hit{cursor:pointer;border-radius:inherit;background:0 0;border:none;margin:0;padding:0;position:absolute;inset:0}.pf-day-hit:disabled,.is-fullscreen .pf-day-hit{cursor:default}.pf-day-label{z-index:3;color:#fff;pointer-events:none;text-shadow:0 1px 2px #0000004d;background:#0a090873;border-radius:999px;align-items:center;gap:.4rem;padding:.35rem .8rem;font-size:.82rem;font-weight:600;display:inline-flex;position:absolute;top:.75rem;left:.75rem}.pf-day-label.memory{background:color-mix(in srgb, var(--accent) 82%, transparent);color:var(--accent-text);text-shadow:none}.pf-day .pf-caption{padding-right:1.2rem}.ticker{border:1px solid var(--card-border);background:var(--card);width:100%;height:100%;-webkit-backdrop-filter:blur(var(--card-blur));text-align:left;cursor:pointer;border-radius:999px;align-items:center;gap:.8rem;padding:0 1.1rem 0 .7rem;display:flex;overflow:hidden}.ticker-empty{background:0 0;border:none}.ticker-icon{background:var(--accent-soft);width:2.2rem;height:2.2rem;color:var(--accent);border-radius:50%;flex:none;place-items:center;display:grid}.ticker-body{min-width:0;animation:ticker-in .5s var(--ease);flex:1;align-items:baseline;gap:.75rem;display:flex}@keyframes ticker-in{0%{opacity:0;transform:translateY(.4rem)}}.ticker-label{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);white-space:nowrap;flex:none;font-size:.75rem;font-weight:700}.ticker-source{color:var(--text-3);text-transform:none;letter-spacing:0;font-weight:600}.ticker-text{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:1rem;overflow:hidden}.ticker-detail{color:var(--text-2)}.ticker-dots{flex:none;gap:4px;display:flex}.ticker-dots i{background:var(--line-strong);border-radius:50%;width:5px;height:5px}.ticker-dots i.on{background:var(--text)}@container (width<=640px){.ticker-label,.ticker-dots{display:none}}@media (prefers-reduced-motion:reduce){.ticker-body{animation:none}}.ticker-list{flex-direction:column;gap:.9rem;margin:0;padding:0;list-style:none;display:flex}.ticker-list li{border-bottom:1px solid var(--line);flex-direction:column;gap:.2rem;padding-bottom:.8rem;display:flex}.ticker-list .ticker-label{align-items:center;gap:.35rem;display:inline-flex}.ticker-list .ticker-text{white-space:normal;font-size:1.05rem}.admin{z-index:1;flex-direction:column;height:100%;font-size:15px;display:flex;position:relative}.admin-top{border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--card-solid) 88%, transparent);-webkit-backdrop-filter:blur(var(--card-blur));backdrop-filter:blur(var(--card-blur));align-items:center;gap:1rem;padding:.9rem 1.5rem;display:flex}.admin-top .brand-mark{width:2.2rem;height:2.2rem}.admin-title{flex-direction:column;margin-right:auto;display:flex}.admin-title strong{font-size:1.1rem;font-weight:600}.admin-body{flex:1;grid-template-columns:16rem 1fr;min-height:0;display:grid}.admin-nav{border-right:1px solid var(--line);background:color-mix(in srgb, var(--card-solid) 70%, transparent);flex-direction:column;gap:1rem;padding:1rem .75rem 2rem;display:flex;overflow-y:auto}.admin-group{flex-direction:column;gap:.15rem;display:flex}.admin-group-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);padding:0 .85rem .3rem;font-size:.72rem;font-weight:700}.admin-nav a{min-height:44px;color:var(--text-2);border-radius:.7rem;align-items:center;gap:.7rem;padding:0 .85rem;font-weight:500;text-decoration:none;display:flex}.admin-nav a:hover{background:var(--raised);color:var(--text)}.admin-nav a.on{background:var(--raised-2);color:var(--text)}.admin-nav a.on svg{color:var(--accent)}.admin-main{padding:1.5rem 2rem 4rem;overflow-y:auto}.admin-card{border-radius:var(--radius-lg);background:var(--card);border:1px solid var(--card-border);max-width:56rem;-webkit-backdrop-filter:blur(var(--card-blur));backdrop-filter:blur(var(--card-blur));box-shadow:var(--shadow);margin:0 auto;padding:1.5rem 1.75rem 2rem}.admin-card h3{font-size:1.5rem;font-weight:600}.admin-card h4{margin-top:.75rem;font-size:1.05rem}.admin .banner{max-width:56rem;margin:0 auto 1rem}.admin-link{border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--text);align-items:center;gap:.5rem;margin-bottom:1rem;padding:.6rem .9rem;font-weight:600;text-decoration:none;display:inline-flex}.schedule-table td{vertical-align:middle}.schedule-table .input{min-width:9rem}.routine-admin-icons{min-width:6rem;font-size:1.3rem}.step-editor{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.step-editor li{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.step-editor .input{flex:1;min-width:10rem}.emoji-btn{width:var(--tap);height:var(--tap);border:1px solid var(--line-strong);background:var(--raised);cursor:pointer;border-radius:.7rem;font-size:1.4rem}.emoji-grid{border-radius:var(--radius-sm);background:var(--raised);flex-basis:100%;grid-template-columns:repeat(auto-fill,minmax(2.8rem,1fr));gap:.3rem;padding:.5rem;display:grid}.emoji-grid button{cursor:pointer;background:0 0;border:none;border-radius:.5rem;height:2.8rem;font-size:1.4rem}.emoji-grid button:hover{background:var(--raised-2)}.flip{transform:rotate(180deg)}.ticker-preview{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.ticker-preview strong{color:var(--accent);margin-right:.4rem}@media (width<=760px){.admin-body{grid-template-rows:auto 1fr;grid-template-columns:1fr}.admin-nav{border-right:none;border-bottom:1px solid var(--line);flex-direction:row;gap:.25rem;padding:.5rem;overflow-x:auto}.admin-group{flex-direction:row}.admin-group-label{display:none}.admin-nav a{white-space:nowrap}.admin-main{padding:1rem .75rem 3rem}.admin-card{padding:1rem}.admin-top{padding:.6rem .75rem}}:root{--font-ui:"Inter Variable", "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-script:"Dancing Script Variable", "Dancing Script", cursive;--radius-sm:.7rem;--radius:1.15rem;--radius-lg:1.5rem;--gap:.9rem;--tap:max(48px, 2.75rem);--tap-lg:max(56px, 3.2rem);--dur-fast:.12s;--dur:.22s;--ease:cubic-bezier(.2, .7, .2, 1);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0c0b0a;--text:#f4eee6;--text-2:#b9b0a4;--text-3:#857c71;--line:#fff4e417;--line-strong:#fff4e42b;--card:#161412a8;--card-solid:#191714;--card-hi:#fff4e40e;--card-border:#fff4e41a;--card-blur:22px;--raised:#fff4e414;--raised-2:#fff4e421;--sheet:#1a1714f0;--accent:#e8955a;--accent-2:#f2b679;--accent-soft:#e8955a2e;--accent-text:#1b120b;--sun:#f7c548;--ok:#4fb38a;--warn:#f0b44d;--danger:#ef7462;--danger-soft:#ef746229;--rain:#5aa7e0;--shadow:0 1px 1px #00000040, 0 10px 30px #00000047;--shadow-lg:0 24px 70px #0000008c;--scrim:#05040399;--scenery-dim:linear-gradient(180deg, #0a09081a 0%, #0a090800 10%, #0a090840 17%, #0a0908cc 30%, #0a0908f0 100%);--map-filter:invert(1) hue-rotate(180deg) brightness(.82) contrast(.92) saturate(.35);font-size:clamp(14px,.42vw + .62vh + 3px,20px)}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#e9e4dc;--text:#241e18;--text-2:#5d5348;--text-3:#8b8073;--line:#3c28141a;--line-strong:#3c281433;--card:#fffcf7bd;--card-solid:#fbf8f3;--card-hi:#fff9;--card-border:#ffffffb3;--raised:#3c28140f;--raised-2:#3c28141c;--sheet:#fcf9f4f7;--accent:#bd5a24;--accent-2:#d9783d;--accent-soft:#bd5a2421;--accent-text:#fff;--sun:#e2a60f;--ok:#2f8f68;--warn:#a8690a;--danger:#c0392b;--danger-soft:#c0392b1f;--rain:#2f7fc0;--shadow:0 1px 1px #3c28140f, 0 10px 30px #3c28141f;--shadow-lg:0 24px 70px #28190a40;--scrim:#1e160e59;--scenery-dim:linear-gradient(180deg, #f0ece600 0%, #f0ece600 12%, #ece7e066 20%, #e9e4dcdb 32%, #e9e4dcf0 100%);--map-filter:saturate(.75) brightness(1.02)}:root.reduce-effects{--card-blur:0px;--card:var(--card-solid)}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--font-ui);font-feature-settings:"tnum" 1, "cv11" 1, "ss01" 1;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;font-size:1rem;line-height:1.4;overflow:hidden}button{font:inherit;color:inherit}h1,h2,h3,h4{letter-spacing:-.01em;margin:0;font-weight:600}p{margin:0}hr{border:none;border-top:1px solid var(--line);width:100%;margin:.4rem 0}.muted{color:var(--text-2)}.small{font-size:.82rem}.pre{white-space:pre-wrap}.warn-text{color:var(--warn)}.error-text{color:var(--danger)}.spacer{flex:1}.row{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 65%, transparent);outline-offset:2px}.btn{min-height:var(--tap);border:1px solid var(--line-strong);background:var(--raised);color:var(--text);cursor:pointer;transition:background var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:0 1.15rem;font-weight:550;text-decoration:none;display:inline-flex}.btn:hover:not(:disabled){background:var(--raised-2)}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.45;cursor:default}.btn-sm{min-height:40px;padding:0 .9rem;font-size:.88rem}.btn-lg{min-height:var(--tap-lg);padding:0 1.75rem;font-size:1.05rem}.btn-block{justify-content:flex-start;width:100%}.btn-primary{background:var(--accent);color:var(--accent-text);border-color:#0000}.btn-primary:hover:not(:disabled){background:var(--accent-2)}.btn-ghost{background:0 0;border-color:#0000}.btn-danger{background:var(--danger);color:#fff;border-color:#0000}.btn-danger-ghost{color:var(--danger);background:0 0;border-color:#0000}.link-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;min-height:40px;padding:.4rem .3rem;font-weight:600}.icon-btn{width:var(--tap);height:var(--tap);color:var(--text-2);cursor:pointer;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);background:0 0;border:none;border-radius:999px;flex:none;place-items:center;display:inline-grid}.icon-btn:hover:not(:disabled),.icon-btn:active:not(:disabled){background:var(--raised);color:var(--text)}.icon-btn:disabled{opacity:.35}.icon-btn-solid{background:var(--card-solid);color:var(--text);box-shadow:var(--shadow)}.icon-btn-solid.danger{color:var(--danger)}.icon-btn-accent{border:1.5px solid var(--line-strong);color:var(--text)}.minus{font-size:1.5rem;font-weight:300;line-height:1}.chip-row{scrollbar-width:none;align-items:center;gap:.45rem;display:flex;overflow-x:auto}.chip-row.wrap{flex-wrap:wrap;overflow:visible}.chip{border:1px solid var(--line-strong);cursor:pointer;white-space:nowrap;background:0 0;border-radius:999px;align-items:center;gap:.4rem;min-height:44px;padding:0 1rem;font-weight:500;display:inline-flex}.chip-sm{min-height:36px;padding:0 .75rem;font-size:.85rem}.chip.on{background:var(--text);color:var(--bg);border-color:var(--text)}.chip.round{justify-content:center;width:44px;padding:0}.chip:disabled{opacity:.6;cursor:default}.dot{background:var(--member,var(--accent));border-radius:50%;flex:none;width:.6rem;height:.6rem;display:inline-block}.dot-lg{width:1.1rem;height:1.1rem}.pill{border:1px solid var(--line);background:var(--raised);min-height:2.3rem;color:var(--text-2);cursor:pointer;white-space:nowrap;border-radius:999px;align-items:center;gap:.45rem;padding:0 .85rem;font-size:.82rem;display:inline-flex}.pill b{color:var(--text);font-weight:600}.pill.static{cursor:default}.segmented{background:var(--raised);border:1px solid var(--line);border-radius:999px;gap:2px;padding:3px;display:inline-flex}.segmented button{min-width:44px;min-height:2.3rem;color:var(--text-2);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:0 .8rem;font-size:.85rem;font-weight:550}.segmented button.on{background:var(--raised-2);color:var(--text)}.swatch{cursor:pointer;border:3px solid #0000;border-radius:50%;width:44px;height:44px}.swatch.on{border-color:var(--text)}.avatar{background:var(--member);color:#fff;border-radius:50%;flex:none;place-items:center;font-size:.85rem;font-weight:650;display:inline-grid;box-shadow:inset 0 0 0 1.5px #ffffff40}.form{flex-direction:column;gap:1rem;display:flex}.field{flex-direction:column;gap:.5rem;display:flex}.field>span:first-child{color:var(--text-2);font-size:.85rem;font-weight:600}.field-toggle{flex-direction:row;justify-content:space-between;align-items:center;gap:1rem}.field-toggle>span{flex-direction:column;gap:2px;display:flex;color:var(--text)!important;font-size:1rem!important;font-weight:500!important}.input{min-height:var(--tap);border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--raised);color:var(--text);font:inherit;width:100%;padding:0 .9rem}.input-lg{min-height:var(--tap-lg);font-size:1.1rem}.input-date{width:auto;min-height:44px}.row .input{flex:1;width:auto}select.input option{background:var(--card-solid)}input[type=range]{width:100%;height:40px;accent-color:var(--accent)}.switch{appearance:none;background:var(--raised-2);cursor:pointer;width:56px;height:32px;transition:background var(--dur) var(--ease);border-radius:999px;flex:none;position:relative}.switch:after{content:"";width:26px;height:26px;transition:transform var(--dur) var(--ease);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0000004d}.switch:checked{background:var(--accent)}.switch:checked:after{transform:translate(24px)}.switch:disabled{opacity:.5;cursor:default}.kv{grid-template-columns:max-content 1fr;gap:.5rem 1.25rem;margin:0;display:grid}.kv dt{color:var(--text-2)}.kv dd{margin:0}.table{border-collapse:collapse;width:100%;font-size:.88rem}.table th,.table td{text-align:left;border-bottom:1px solid var(--line);padding:.5rem .4rem}.table th{color:var(--text-2);font-weight:600}.banner{border-radius:var(--radius-sm);background:var(--raised);color:var(--text-2);padding:.75rem 1rem}.banner-error{background:var(--danger-soft);color:var(--danger);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.brand-mark{color:var(--text);flex:none}.wordmark{text-align:center;justify-items:center;gap:.35rem;display:grid}.wordmark-name{letter-spacing:.36em;text-transform:uppercase;margin-right:-.36em;font-size:1.15rem;font-weight:350}.wordmark-by{letter-spacing:.26em;text-transform:uppercase;color:var(--text-2);margin-right:-.26em;font-size:.58rem;font-weight:550}.app{z-index:1;grid-template-columns:auto 1fr;height:100%;display:grid;position:relative}.main-col{flex-direction:column;min-width:0;display:flex}.main{flex:1;min-height:0;position:relative}.splash,.signin{z-index:1;text-align:center;align-content:center;place-items:center;gap:1rem;height:100%;padding:1.5rem;display:grid;position:relative}.rail{border-right:1px solid var(--line);width:14.5rem;-webkit-backdrop-filter:blur(var(--card-blur));background:linear-gradient(#0a090873,#0a0908b3);flex-direction:column;gap:1.25rem;padding:1.75rem 1rem 1.25rem;display:flex}:root[data-theme=light] .rail{background:linear-gradient(#fffcf780,#fffcf7c7)}.rail-brand{padding:.25rem 0 1.25rem}.rail-brand .brand-mark{width:2.6rem;height:2.6rem}.rail-items,.rail-foot{flex-direction:column;gap:.3rem;display:flex}.rail-foot{margin-top:auto}.rail-item{min-height:var(--tap-lg);color:var(--text-2);text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);background:0 0;border:none;border-radius:999px;align-items:center;gap:.9rem;padding:0 1.1rem;font-size:1rem;font-weight:500;display:flex}.rail-item:hover:not(:disabled){background:var(--raised);color:var(--text)}.rail-item.on{background:var(--raised-2);color:var(--text);box-shadow:inset 0 0 0 1px var(--line)}.rail-item.on svg{color:var(--accent)}.rail-item:disabled{opacity:.4;cursor:default}.rail-status{border-radius:var(--radius-sm);background:color-mix(in srgb, var(--warn) 16%, transparent);color:var(--warn);align-items:center;gap:.5rem;margin:0 0 .5rem;padding:.5rem .9rem;font-size:.85rem;font-weight:600;display:flex}.rail-item.pinned{color:var(--accent);background:var(--accent-soft)}.night-dim{z-index:900;pointer-events:none;background:#00000052;position:fixed;inset:0}@media (width<=1279px){.rail{align-items:center;width:5.6rem;padding:1.25rem .6rem}.rail .wordmark-name,.rail .wordmark-by,.rail-item span,.rail-status span{display:none}.rail-brand{padding-bottom:.5rem}.rail-item{width:var(--tap-lg);justify-content:center;padding:0}.rail-status{padding:.5rem}}.edit-bar{background:var(--card);border:1px solid var(--card-border);-webkit-backdrop-filter:blur(var(--card-blur));box-shadow:var(--shadow);border-radius:999px;flex-wrap:wrap;align-items:center;gap:.5rem;margin:.75rem .9rem 0;padding:.45rem .55rem .45rem .9rem;display:flex}.edit-pill{background:var(--accent-soft);color:var(--accent);text-transform:uppercase;letter-spacing:.08em;border-radius:999px;padding:.4rem .7rem;font-size:.75rem;font-weight:700}.dashboard{position:absolute;inset:0}.dashboard-wall{overflow:hidden}.dashboard-stack{flex-direction:column;gap:.75rem;padding:.25rem .75rem 6rem;display:flex;overflow-y:auto}.stack-item{flex:none}.stack-note{border-radius:var(--radius-sm);background:var(--accent-soft);padding:.75rem}.grid-guides{pointer-events:none;display:grid;position:absolute;inset:0}.grid-guides i{border:1px dashed var(--line-strong);border-radius:.6rem}.grid-cell{touch-action:none}.react-grid-item.react-grid-placeholder{border-radius:var(--radius);background:var(--accent)!important;opacity:.2!important}.react-grid-item>.react-resizable-handle{z-index:3;opacity:1;background:0 0;width:48px;height:48px;bottom:0;right:0}.react-grid-item>.react-resizable-handle:after{border-right:4px solid var(--accent);border-bottom:4px solid var(--accent);border-radius:0 0 5px;width:18px;height:18px;bottom:12px;right:12px}.widget{border-radius:var(--radius-lg);contain:strict;flex-direction:column;width:100%;height:100%;display:flex;position:relative;overflow:hidden;container-type:size}.chrome-card{background:linear-gradient(180deg, var(--card-hi), transparent 40%), var(--card);border:1px solid var(--card-border);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(var(--card-blur)) saturate(1.15)}.chrome-bare{background:0 0;overflow:visible}.widget.is-fullscreen{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;contain:none;background:0 0;border:none;border-radius:0}.widget-loading{border-radius:var(--radius);background:linear-gradient(100deg, transparent 30%, var(--raised) 50%, transparent 70%) 0 0 / 300% 100%;flex:1;height:100%;min-height:3rem;animation:1.6s linear infinite shimmer}@keyframes shimmer{to{background-position:-300% 0}}@media (prefers-reduced-motion:reduce){.widget-loading{animation:none}}.empty-state{text-align:center;height:100%;color:var(--text-2);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:1rem;display:flex}.empty-state strong{color:var(--text)}.status-badge{z-index:2;background:var(--card-solid);color:var(--text-2);white-space:nowrap;box-shadow:var(--shadow);border-radius:999px;align-items:center;gap:.3rem;padding:.2rem .6rem;font-size:.75rem;font-weight:600;display:inline-flex;position:absolute;bottom:.6rem;right:.75rem}.status-stale,.status-offline{color:var(--warn)}.status-unavailable,.status-permissionRequired{color:var(--danger)}.w-head{min-height:var(--tap);flex:none;align-items:center;gap:.75rem;display:flex}.w-title{letter-spacing:-.01em;white-space:nowrap;min-height:var(--tap);cursor:default;background:0 0;border:none;align-items:center;gap:.6rem;margin:0;padding:0;font-size:1.35rem;font-weight:550;display:inline-flex}button.w-title{cursor:pointer}.w-chev{border:1px solid var(--line-strong);width:1.7rem;height:1.7rem;color:var(--text-2);border-radius:50%;place-items:center;display:inline-grid}.title-icon{color:var(--text-2)}.w-meta{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:.35rem;min-width:0;font-size:.85rem;display:inline-flex;overflow:hidden}.w-actions{flex:none;align-items:center;gap:.25rem;margin-left:auto;display:flex}.edit-overlay{z-index:5;background:color-mix(in srgb, var(--card-solid) 55%, transparent);border:2px dashed var(--accent);border-radius:var(--radius-lg);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.edit-grip{min-height:var(--tap-lg);background:var(--card-solid);box-shadow:var(--shadow-lg);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:999px;align-items:center;gap:.6rem;padding:.8rem 1.4rem;font-weight:600;display:flex}.edit-grip:active{cursor:grabbing}.edit-actions{gap:.5rem;display:flex;position:absolute;top:.6rem;right:.6rem}@container (height<=150px){.edit-overlay{justify-content:space-between;gap:.5rem;padding:0 .6rem}.edit-actions{position:static}.edit-grip{min-height:var(--tap);padding:.4rem 1rem}}.sheet-scrim{z-index:1000;background:var(--scrim);animation:fade var(--dur) var(--ease);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);place-items:center;padding:1.5rem;display:grid;position:fixed;inset:0}:root.reduce-effects .sheet-scrim{-webkit-backdrop-filter:none;backdrop-filter:none}@keyframes fade{0%{opacity:0}}.sheet{background:var(--sheet);border:1px solid var(--card-border);border-radius:var(--radius-lg);width:min(36rem,100%);max-height:calc(100vh - 3rem);box-shadow:var(--shadow-lg);animation:pop var(--dur) var(--ease);outline:none;flex-direction:column;display:flex;overflow:hidden}@keyframes pop{0%{opacity:0;transform:translateY(8px)scale(.98)}}.sheet-sm{width:min(30rem,100%)}.sheet-lg{width:min(60rem,100%);height:min(46rem,100vh - 3rem)}.sheet-full{width:100%;max-width:none;height:calc(100vh - 3rem)}.sheet-head{flex:none;justify-content:space-between;align-items:center;padding:.75rem .75rem .4rem 1.5rem;display:flex}.sheet-head h2{font-size:1.3rem;font-weight:550}.sheet-body{flex-direction:column;flex:1;gap:.75rem;padding:.5rem 1.5rem 1.5rem;display:flex;overflow-y:auto}.sheet-full .sheet-body{padding:0 1rem 1rem}.sheet-foot{border-top:1px solid var(--line);flex:none;justify-content:flex-end;align-items:center;gap:.6rem;padding:.75rem 1.25rem 1rem;display:flex}.toasts{z-index:1100;pointer-events:none;flex-direction:column;gap:.5rem;width:max-content;max-width:calc(100vw - 32px);display:flex;position:fixed;bottom:1.25rem;left:50%;transform:translate(-50%)}.toast{pointer-events:auto;background:var(--text);min-height:52px;color:var(--bg);box-shadow:var(--shadow-lg);animation:rise var(--dur) var(--ease);border-radius:999px;align-items:center;gap:1rem;padding:.5rem .6rem .5rem 1.25rem;display:flex}@keyframes rise{0%{opacity:0;transform:translateY(12px)}}.catalog-group{flex-direction:column;gap:.5rem;margin-bottom:.75rem;display:flex}.catalog-group h3{letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);font-size:.8rem;font-weight:700}.widget-catalog{grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:.6rem;display:grid}.catalog-item{text-align:left;border-radius:var(--radius);border:1px solid var(--line);background:var(--raised);cursor:pointer;align-items:flex-start;gap:.9rem;padding:1rem;display:flex}.catalog-item:active{background:var(--raised-2)}.catalog-icon{background:var(--accent-soft);width:3.2rem;height:3.2rem;color:var(--accent);border-radius:.9rem;flex:none;place-items:center;display:grid}.catalog-text{flex-direction:column;gap:.25rem;display:flex}.clock{align-items:center;gap:3rem;height:100%;padding:0 .6rem;display:flex}.clock-card{padding:0 1.4rem}.clock-main{flex-direction:column;justify-content:center;min-width:0;display:flex}.clock-time{letter-spacing:-.035em;white-space:nowrap;font-feature-settings:"tnum" 1, "ss01" 1;align-items:baseline;gap:.12em;font-weight:250;line-height:.95;display:flex}.clock-hero,.greeting{--text:#fbf8f3;color:var(--text);text-shadow:0 1px 2px #0006,0 2px 18px #0006}.clock-period{letter-spacing:.02em;color:var(--text);font-size:.36em;font-weight:350}.clock-date{color:var(--text);opacity:.92;white-space:nowrap;margin-top:.3em;font-weight:300}.clock-tagline{font-family:var(--font-script);color:var(--text);opacity:.9;flex-direction:column;padding-bottom:.4em;font-weight:500;line-height:1.05;display:flex;position:relative;transform:rotate(-6deg)}.clock-hero .clock-tagline{opacity:1;text-shadow:0 1px 3px #0000008c,0 0 22px #00000073}.clock-tagline .indent{padding-left:1.1em}.clock-tagline .brush{width:calc(100% - .9em);height:.35em;color:var(--accent);position:absolute;bottom:0;left:1.2em;right:-.3em}.wx-icon .wx-sun{fill:var(--sun);stroke:var(--sun);stroke-width:2.4px;stroke-linecap:round}.wx-icon circle.wx-sun{fill:var(--sun);filter:drop-shadow(0 0 4px color-mix(in srgb, var(--sun) 60%, transparent))}.wx-icon path.wx-sun{fill:color-mix(in srgb, var(--sun) 75%, #fff);stroke:none}.wx-icon .wx-cloud{fill:color-mix(in srgb, var(--text) 82%, transparent);stroke:none}.wx-icon .wx-rain{stroke:var(--rain);stroke-width:2.8px;stroke-linecap:round}.wx-icon .wx-snow{fill:#b9dcf5}.wx-icon .wx-fog line{stroke:var(--text-2);stroke-width:2.4px;stroke-linecap:round}.wx-icon .wx-bolt{fill:var(--sun)}.wx-icon g.wx-cloud[fill=none] path{stroke:var(--text);stroke-width:2.6px;stroke-linecap:round}.greeting{text-align:left;cursor:pointer;background:0 0;border:none;justify-content:flex-end;align-items:center;gap:1rem;width:100%;height:100%;padding:0 .6rem;display:flex}.greeting-text{flex-direction:column;gap:.15rem;display:flex}.greeting-hello{font-size:1.55rem;font-weight:400}.greeting-sub{color:var(--text);opacity:.82;font-size:.95rem}.greeting-alert{color:var(--warn);align-items:center;gap:.35rem;margin-top:.25rem;font-size:.85rem;font-weight:600;display:inline-flex}.wx{flex-direction:column;gap:.6rem;height:100%;padding:.6rem 1.25rem .9rem;display:flex;position:relative;overflow:hidden}.wx-strip{text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:.9rem;width:100%;height:100%;padding:.5rem 1.1rem;display:flex;position:relative}.wx-strip-temp{font-size:2.6rem;font-weight:250;line-height:1}.wx-strip-meta{flex-direction:column;min-width:0;font-size:.92rem;display:flex}.wx-strip-meta span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.wx-alert-dot{color:var(--warn);margin-left:auto}.wx-now{flex:none;grid-template-columns:auto auto 1fr auto;align-items:center;gap:.2rem 1rem;display:grid}.wx-now-temp{letter-spacing:-.03em;font-size:3.6rem;font-weight:250;line-height:.9}.wx-now.big .wx-now-temp{font-size:4.6rem}.wx-now-desc{min-width:0;color:var(--text-2);flex-direction:column;gap:.15rem;font-size:.92rem;display:flex}.forecast-tag{color:var(--warn);font-size:.75rem}.wx-now-temp.is-forecast{opacity:.85}.wx-now-desc strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:1.05rem;font-weight:500;overflow:hidden}.wx-facts{flex-direction:column;gap:.2rem;margin:0;font-size:.88rem;display:flex}.wx-fact{align-items:center;gap:.45rem;display:flex}.wx-fact dt{color:var(--text-2);display:inline-flex}.wx-fact dd{white-space:nowrap;margin:0}@container (width<=600px){.wx-now{grid-template-columns:auto auto 1fr}.wx-facts{flex-flow:wrap;grid-column:1/-1;gap:.25rem 1rem}}.wx-hourly{scrollbar-width:none;border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex:none;gap:.2rem;padding:.5rem 0;display:flex;overflow-x:auto}.wx-hour{flex-direction:column;flex:1 0 3.4rem;align-items:center;gap:.15rem;font-size:.85rem;display:flex}.wx-hour strong{font-weight:500}.wx-pop{color:var(--rain);font-size:.78rem;font-weight:600}.wx-week{flex-direction:column;flex:1;justify-content:space-evenly;min-height:0;margin:0;padding:0;list-style:none;display:flex}.wx-week li{grid-template-columns:4.2rem 2.2rem 2.6rem 2.4rem 1fr 2.4rem;align-items:center;gap:.5rem;min-height:2.6rem;font-size:.98rem;display:grid}.wx-day{font-weight:500}.wx-lo{color:var(--text-2);text-align:right}.wx-hi{font-weight:600}.wx-range{background:var(--raised-2);border-radius:999px;height:.38rem;position:relative}.wx-range i{background:linear-gradient(90deg,#6fb6e8,#f2c14e 60%,#ef8a4a);border-radius:999px;position:absolute;top:0;bottom:0}.wx-foot{color:var(--text-2);border-top:1px solid var(--line);flex-wrap:wrap;flex:none;align-items:center;gap:.25rem .75rem;padding-top:.5rem;padding-right:6rem;font-size:.78rem;display:flex}.wx-foot .status-badge{bottom:.7rem}.wx-alert{border-radius:var(--radius-sm);background:color-mix(in srgb, var(--warn) 18%, transparent);min-height:44px;color:var(--text);text-align:left;cursor:pointer;border:none;flex:none;align-items:center;gap:.6rem;width:100%;padding:.5rem .85rem;display:flex}.wx-alert svg{color:var(--warn);flex:none}.wx-alert.severe{background:color-mix(in srgb, var(--danger) 24%, transparent)}.wx-alert.severe svg{color:var(--danger)}.alert-detail{border-bottom:1px solid var(--line);flex-direction:column;gap:.5rem;padding-bottom:1rem;display:flex}.radar{isolation:isolate;z-index:0;flex-direction:column;gap:.55rem;width:100%;height:100%;padding:.6rem 1.1rem .75rem;display:flex;position:relative}.radar-frame-box{border-radius:var(--radius);border:1px solid var(--line);flex:1;min-height:6rem;position:relative;overflow:hidden}.radar-map-wrap,.radar-map{position:absolute;inset:0}.radar-map,.location-map{background:var(--card-solid);font-family:var(--font-ui)}.location-map{border-radius:var(--radius);z-index:0;height:20rem;position:relative;overflow:hidden}.basemap-tiles{filter:var(--map-filter)}.leaflet-container{background:var(--card-solid)}.leaflet-control-attribution{background:color-mix(in srgb, var(--card-solid) 75%, transparent)!important;color:var(--text-3)!important;font-size:9px!important}.leaflet-control-attribution a{color:var(--text-3)!important}.home-dot{filter:drop-shadow(0 0 6px #3d8bfde6)}.radar-zoom{z-index:500;flex-direction:column;gap:.4rem;display:flex;position:absolute;top:.6rem;right:.6rem}.map-btn{border:1px solid var(--line);background:color-mix(in srgb, var(--card-solid) 80%, transparent);width:max(44px,2.4rem);height:max(44px,2.4rem);color:var(--text);cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:.8rem;place-items:center;display:grid}.radar-expand{z-index:500;position:absolute;top:.6rem;left:.6rem}.radar-bar{min-height:var(--tap);flex:none;align-items:center;gap:.6rem;display:flex}.scrub{flex:1;min-width:0;position:relative}.scrub-track{background:var(--raised-2);border-radius:2px;height:3px;position:absolute;top:.95rem;left:.6rem;right:.6rem}.scrub-fill{background:var(--text);border-radius:2px;transition:width .3s linear;position:absolute;top:0;bottom:0;left:0}.scrub-ticks{justify-content:space-between;display:flex;position:relative}.scrub-tick{min-width:1.2rem;min-height:44px;color:var(--text-3);cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:.35rem;padding:.65rem 0 0;font-size:.72rem;display:flex}.scrub-tick i{background:var(--card-solid);border:2px solid var(--line-strong);border-radius:50%;width:.65rem;height:.65rem}.scrub-tick.on{color:var(--text);font-weight:600}.scrub-tick.on i{background:var(--text);border-color:var(--text);box-shadow:0 0 0 4px color-mix(in srgb, var(--text) 18%, transparent)}.radar-legend{color:var(--text-2);flex:none;align-items:center;gap:.35rem;font-size:.72rem;display:flex}.radar-legend i{background:linear-gradient(90deg,#04e9e7,#019ff4,#02fd02,#01c501,#fdf802,#fd9500,#fd0000,#bc0000,#f800fd);border-radius:999px;width:4.5rem;height:.45rem}.radar-stamp{z-index:3;background:color-mix(in srgb, var(--card-solid) 82%, transparent);color:var(--text-2);pointer-events:none;border-radius:999px;padding:.25rem .6rem;font-size:.75rem;position:absolute;bottom:4.2rem;left:1.7rem}.radar-unavailable{z-index:500;border-radius:var(--radius-sm);background:var(--card-solid);box-shadow:var(--shadow);text-align:center;padding:.75rem 1rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.radar .wx-alert{margin:0}@container (width<=420px){.radar-legend span,.scrub-tick span{display:none}.radar-stamp{bottom:3.6rem}}.cal{flex-direction:column;gap:.6rem;height:100%;padding:.6rem 1.25rem 1rem;display:flex;position:relative}.cal .segmented{margin-left:.4rem}.person-filter{scrollbar-width:none;flex:none;align-items:center;gap:.4rem;display:flex;overflow-x:auto}.person-chip{border:1px solid var(--line);cursor:pointer;white-space:nowrap;background:0 0;border-radius:999px;align-items:center;gap:.4rem;min-height:40px;padding:0 .75rem 0 .25rem;font-size:.85rem;display:inline-flex}.person-chip.on{border-color:var(--text);background:var(--raised-2);font-weight:600}.sample-banner{border-radius:var(--radius-sm);background:var(--accent-soft);flex:none;align-items:center;gap:.5rem;padding:.2rem .4rem .2rem .8rem;font-size:.85rem;display:flex}.sample-banner .link-btn{margin-left:auto}.sample-tag{color:var(--accent);font-size:.78rem;font-weight:600}.cal-day{flex:1;grid-template-columns:1fr;gap:1.5rem;min-height:0;display:grid}.cal-day.wide{grid-template-columns:minmax(0,1.25fr) minmax(15rem,1fr)}.schedule{scrollbar-width:none;min-height:0;margin:0;padding:0;list-style:none;overflow-y:auto}.schedule li+li{border-top:1px solid var(--line)}.schedule button{width:100%;min-height:var(--tap);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:.5rem;grid-template-columns:5.6rem 1rem 1fr auto;grid-template-areas:"time dot title people"". .sub people";align-items:center;column-gap:.6rem;padding:.55rem .25rem;display:grid}.schedule button:hover{background:var(--raised)}.sch-time{color:var(--text-2);white-space:nowrap;grid-area:time;font-size:.92rem}.sch-dot{background:var(--ev);width:.7rem;height:.7rem;box-shadow:0 0 0 3px color-mix(in srgb, var(--ev) 22%, transparent);border-radius:50%;grid-area:dot}.sch-title{white-space:nowrap;text-overflow:ellipsis;grid-area:title;font-size:1.02rem;font-weight:500;overflow:hidden}.sch-people{grid-area:people;justify-self:end;display:flex}.sch-sub{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;grid-area:sub;font-size:.82rem;overflow:hidden}.schedule li.past{opacity:.45}.schedule li.next .sch-time{color:var(--accent);font-weight:600}.schedule-empty{color:var(--text-2);padding:1rem .25rem}.mini-cal{border-left:1px solid var(--line);flex-direction:column;gap:.75rem;min-height:0;padding-left:1.5rem;display:flex}.mini-month{flex-direction:column;flex:1;gap:.4rem;min-height:0;display:flex}.mini-title{font-size:1.05rem;font-weight:500}.mini-grid{flex:1;grid-template-columns:repeat(7,1fr);grid-auto-rows:1fr;place-items:center;min-height:0;display:grid}.mini-dow{color:var(--text-3);font-size:.72rem;font-weight:600}.mini-day{cursor:pointer;background:0 0;border:none;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:2px;width:min(2.3rem,100%);min-width:0;height:min(2.3rem,100%);min-height:0;font-size:.88rem;display:flex;position:relative}.mini-day.other{color:var(--text-3)}.mini-day.today{box-shadow:inset 0 0 0 1.5px var(--accent)}.mini-day.sel{background:color-mix(in srgb, var(--accent) 30%, transparent);color:var(--text);font-weight:650}.mini-dots{gap:2px;height:4px;display:flex}.mini-dots i{border-radius:50%;width:4px;height:4px}.mini-counts{flex-wrap:wrap;gap:.4rem;display:flex}@container (height<=440px){.mini-counts{display:none}}.cal-month{flex:1;grid-template-columns:repeat(7,minmax(0,1fr));gap:.3rem;min-height:0;display:grid}.cal-dow{text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);padding:0 .4rem .15rem;font-size:.78rem;font-weight:600}.cal-cell{background:var(--raised);cursor:pointer;border-radius:.7rem;flex-direction:column;gap:.15rem;min-height:0;padding:.25rem .3rem;display:flex;overflow:hidden}.cal-cell.other-month{opacity:.5;background:0 0}.cal-cell.past:not(.today) .cal-chip{opacity:.55}.cal-cell.today{background:var(--accent-soft);box-shadow:inset 0 0 0 1.5px var(--accent)}.cal-daynum{padding:0 .25rem;font-size:.92rem;font-weight:600;line-height:1.5}.cal-cell.today .cal-daynum{color:var(--accent)}.cal-cell .mini-dots{padding-left:.3rem}.cal-chip{background:color-mix(in srgb, var(--ev) 20%, transparent);border:none;border-left:3px solid var(--ev);text-align:left;cursor:pointer;border-radius:.4rem;flex:none;align-items:baseline;gap:.3rem;width:100%;min-height:1.45rem;padding:.1rem .4rem;font-size:.8rem;line-height:1.3;display:flex;overflow:hidden}.cal-chip.all-day{background:var(--ev);color:#fff;border-left-color:#0000;font-weight:600}.cal-chip-time{color:var(--text-2);flex:none;font-weight:600}.cal-chip-title{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cal-more{color:var(--text-2);padding:0 .4rem;font-size:.75rem;font-weight:600}.cal-week{flex:1;grid-template-columns:repeat(7,minmax(0,1fr));gap:.4rem;min-height:0;display:grid}.cal-week-col{background:var(--raised);border-radius:.8rem;flex-direction:column;min-height:0;display:flex;overflow:hidden}.cal-week-col.today{background:var(--accent-soft);box-shadow:inset 0 0 0 1.5px var(--accent)}.cal-week-col.past .cal-chip{opacity:.55}.cal-week-head{cursor:pointer;min-height:var(--tap);background:0 0;border:none;align-items:baseline;gap:.5rem;padding:.5rem .65rem;display:flex}.cal-week-head span{text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);font-size:.78rem;font-weight:600}.cal-week-head strong{font-size:1.35rem;font-weight:400}.cal-week-col.today .cal-week-head strong{color:var(--accent);font-weight:600}.cal-week-events{scrollbar-width:none;flex-direction:column;gap:.25rem;padding:0 .35rem .4rem;display:flex;overflow-y:auto}.cal-week-events .cal-chip{flex-direction:column;gap:0;min-height:2.6rem;padding:.3rem .5rem;font-size:.88rem}.cal-week-events .cal-chip-title{white-space:normal}.cal-agenda{scrollbar-width:none;flex-direction:column;flex:1;gap:.75rem;min-height:0;display:flex;overflow-y:auto}.cal-agenda h4{text-transform:uppercase;letter-spacing:.06em;color:var(--text-2);font-size:.85rem;font-weight:600}.cal-agenda h4.today{color:var(--accent)}.event-detail{border-left:5px solid var(--ev);flex-direction:column;gap:.75rem;padding-left:.9rem;display:flex}.event-when{font-size:1.05rem;font-weight:600}.upcoming{flex-direction:column;gap:.4rem;height:100%;padding:.6rem 1.25rem 1rem;display:flex;position:relative;overflow:hidden}.up-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.up-list li{border-bottom:1px solid var(--line);grid-template-columns:.7rem 1fr auto auto;align-items:center;gap:.75rem;min-height:2.35rem;font-size:.98rem;display:grid}.up-list li:last-child{border-bottom:none}.up-dot{background:var(--ev);border-radius:50%;width:.6rem;height:.6rem}.up-title{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.up-when{color:var(--text-2);white-space:nowrap;font-size:.85rem}.up-people{display:flex}.up-people .avatar+.avatar,.sch-people .avatar+.avatar{margin-left:-.45rem}.up-people .avatar,.sch-people .avatar{box-shadow:0 0 0 2px var(--card-solid);font-size:.72rem}.upcoming-tasks{color:var(--accent);align-items:center;gap:.4rem;padding:.25rem 0 .4rem;font-size:.88rem;font-weight:600;display:flex}.tasks{flex-direction:column;gap:.25rem;height:100%;padding:.6rem 1.1rem 1rem 1.25rem;display:flex;position:relative}.tasks-filter{flex:none;padding-bottom:.25rem}.task-list{scrollbar-width:none;flex:1;min-height:0;margin:0;padding:0;list-style:none;overflow-y:auto}.task{border-bottom:1px solid var(--line);align-items:center;gap:.5rem;display:flex}.task:last-child{border-bottom:none}.task-check{width:var(--tap);height:var(--tap);cursor:pointer;background:0 0;border:none;flex:none;place-items:center;margin-left:-.6rem;display:grid}.task-check .box{border:2px solid var(--line-strong);width:1.45rem;height:1.45rem;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);border-radius:.4rem;place-items:center;display:grid}.task-check:active .box{background:color-mix(in srgb, var(--ok) 30%, transparent)}.task-check.checked .box{background:var(--ok);border-color:var(--ok);color:#fff}.task-body{min-width:0;min-height:var(--tap);text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:flex-start;gap:.1rem;padding:.35rem 0;display:flex}.task-title{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:1rem;overflow:hidden}.task.done .task-title{text-decoration:line-through;-webkit-text-decoration-color:var(--text-3);text-decoration-color:var(--text-3);color:var(--text-3)}.task-meta{color:var(--text-2);flex-wrap:wrap;gap:.6rem;font-size:.78rem;display:flex}.task-meta:empty{display:none}.task-meta>span{align-items:center;gap:.25rem;display:inline-flex}.due-overdue{color:var(--danger);font-weight:650}.due-today{color:var(--accent);font-weight:650}.weekdays{margin-top:.4rem}.settings{grid-template-columns:13rem 1fr;gap:1.5rem;min-height:100%;display:grid}.settings-nav{flex-direction:column;gap:.25rem;display:flex}.settings-nav button{min-height:var(--tap);text-align:left;cursor:pointer;color:var(--text-2);background:0 0;border:none;border-radius:999px;align-items:center;gap:.75rem;padding:0 .9rem;font-weight:550;display:flex}.settings-nav button.on{background:var(--raised-2);color:var(--text)}.settings-body h3{font-size:1.4rem;font-weight:550}.settings-body h4{font-size:1rem}.station-list,.member-list{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.station-list li,.member-list li{background:var(--raised);min-height:var(--tap);border-radius:.8rem;align-items:center;gap:.75rem;padding:.5rem .75rem;display:flex}.station-list li>span:first-child,.member-list li>span:not(.avatar):not(.routine-admin-icons){flex-direction:column;flex:1;min-width:0;display:flex}.station-list li.selected{box-shadow:inset 0 0 0 2px var(--ok)}.signin-card{border-radius:var(--radius-lg);background:var(--card);border:1px solid var(--card-border);max-width:26rem;-webkit-backdrop-filter:blur(var(--card-blur));backdrop-filter:blur(var(--card-blur));box-shadow:var(--shadow-lg);flex-direction:column;align-items:center;gap:.75rem;padding:2.5rem 2rem;display:flex}@media (width<=720px){.app{grid-template-rows:1fr auto;grid-template-columns:1fr}.main-col{grid-row:1}.rail{width:auto;padding:.35rem .5rem calc(.35rem + env(safe-area-inset-bottom));border-right:none;border-top:1px solid var(--line);flex-direction:row;grid-row:2;align-items:center;gap:.25rem}.rail-brand{display:none}.rail-items,.rail-foot{flex-direction:row;gap:.15rem;margin:0}.rail-items{flex:1;overflow-x:auto}.rail-item{border-radius:.9rem;flex-direction:column;gap:.15rem;width:auto;min-height:56px;padding:.25rem .7rem;font-size:.7rem}.rail-item span{display:block!important}.rail-status{margin:0}.edit-bar{border-radius:var(--radius);margin:.5rem}.settings{grid-template-columns:1fr}.settings-nav{flex-direction:row;overflow-x:auto}.settings-nav button{white-space:nowrap}.sheet-scrim{place-items:end stretch;padding:0}.sheet,.sheet-lg,.sheet-full{border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;height:auto;max-height:92vh}.sheet-full{height:92vh}.clock{gap:1rem}}@container (width<=640px){.cal .segmented{display:none}}.calendar-choices{border:1px solid var(--line);border-radius:var(--radius-sm);flex-direction:column;display:flex}.calendar-choice{min-height:var(--tap);cursor:pointer;padding:.6rem .9rem}.calendar-choice+.calendar-choice{border-top:1px solid var(--line)}.calendar-choice-name{align-items:center;gap:.6rem;display:flex}.calendar-swatch{border-radius:50%;flex:none;width:.9rem;height:.9rem}.signin-links a{color:inherit}.input.textarea{resize:vertical;padding:.6rem .9rem;line-height:1.4}.event-form-times>.field{flex:1}.event-actions{flex-wrap:wrap;gap:.6rem;display:flex}.phone-nav{display:none}@media (width<=720px){.app{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr)}.rail{display:none}.main-col{grid-row:1;min-width:0}.phone-nav{padding:.25rem .25rem calc(.25rem + env(safe-area-inset-bottom));background:color-mix(in srgb, var(--card-solid) 92%, transparent);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(var(--card-blur));z-index:950;grid-row:2;grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:relative}.phone-tab{min-width:0;min-height:56px;color:var(--text-2);cursor:pointer;background:0 0;border:none;border-radius:.9rem;flex-direction:column;justify-content:center;align-items:center;gap:.15rem;font-size:.7rem;font-weight:600;display:flex}.phone-tab span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.phone-tab.on{color:var(--text);background:var(--raised-2)}.phone-tab.on svg{color:var(--accent)}.edit-bar{border-radius:var(--radius);gap:.35rem;margin:.5rem}.edit-bar .btn{min-height:44px;padding:0 .8rem}.edit-bar .spacer{flex-basis:100%;height:0}.toasts{bottom:calc(76px + env(safe-area-inset-bottom))}.greeting{justify-content:flex-start}}.phone-screens{grid-template-columns:repeat(auto-fill,minmax(6.5rem,1fr));gap:.5rem;display:grid}.phone-screen{border-radius:var(--radius);border:1px solid var(--line);background:var(--raised);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;min-height:5.2rem;padding:.5rem;font-size:.85rem;font-weight:600;display:flex}.phone-screen.on{border-color:var(--accent);background:var(--accent-soft)}.phone-screen.on svg{color:var(--accent)}.phone-actions{flex-direction:column;gap:.5rem;margin-top:.75rem;display:flex}.edit-move{gap:.5rem;display:flex;position:absolute;top:.6rem;left:.6rem}@container (height<=150px){.edit-move{position:static}.edit-overlay:has(.edit-move) .edit-grip{flex:1;justify-content:center;min-width:0;padding:.4rem .6rem}.edit-overlay:has(.edit-move) .edit-grip span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}}
