.login-content{--background:transparent}.login-page{box-sizing:border-box;justify-content:center;gap:var(--s6);min-height:100%;padding:var(--s6) var(--page-x) calc(var(--s6) + env(safe-area-inset-bottom));text-align:left;flex-direction:column;max-width:440px;margin:0 auto;display:flex}.login-brand{flex-direction:column;align-items:flex-start;display:flex}.login-mark{width:76px;height:76px;font-size:2rem;font-weight:var(--w-bold);letter-spacing:-.03em;color:var(--ink);margin-bottom:var(--s5);border-radius:24px;place-items:center;display:grid}.login-title{font-size:var(--t-display);font-weight:var(--w-bold);line-height:var(--lh-display);letter-spacing:var(--tr-display);color:var(--ink);margin:0}.login-tagline{margin:var(--s2) 0 0;font-size:var(--t-callout);line-height:var(--lh-body);color:var(--ink-2);max-width:30ch}.auth-card{gap:var(--s4);padding:var(--s6) var(--s5) var(--s5);background:var(--glass-sheen), var(--glass-fill-thick);border-radius:32px;flex-direction:column;display:flex}.auth-heading h2{font-size:var(--t-title2);font-weight:var(--w-bold);letter-spacing:var(--tr-title);color:var(--ink);margin:0}.auth-heading p{margin:var(--s1) 0 0;font-size:var(--t-subhead);line-height:var(--lh-body);color:var(--ink-2)}.auth-field{flex-direction:column;gap:6px;display:flex}.auth-field span{font-size:var(--t-footnote);font-weight:var(--w-emph);color:var(--ink-2);padding-left:var(--s1)}.auth-field input{box-sizing:border-box;width:100%;min-height:var(--tap);padding:var(--s3) var(--s4);border:var(--hairline);border-radius:var(--r-control);background:var(--plane-sunk);color:var(--ink);font:inherit;font-size:var(--t-body);transition:border-color var(--d-fast) var(--ease), box-shadow var(--d-fast) var(--ease);outline:none}.auth-field input::placeholder{color:var(--ink-3)}.auth-field input:focus-visible{border-color:var(--app-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--app-accent) 22%, transparent)}.login-page button{cursor:pointer;-webkit-tap-highlight-color:transparent;font-family:inherit}.login-page button:disabled{opacity:.45;cursor:default}.auth-submit{min-height:50px;margin-top:var(--s1);border-radius:var(--r-pill);background:var(--app-accent);color:var(--on-accent);font-size:var(--t-headline);font-weight:var(--w-emph);box-shadow:0 8px 24px -10px color-mix(in srgb, var(--app-accent) 70%, transparent), inset 0 1px 0 #ffffff59;transition:transform var(--d-fast) var(--ease);border:none}.auth-submit:active:not(:disabled){transform:scale(.98)}.device-login-block{display:flex}.device-login-button{border-radius:var(--r-pill);background:var(--fill);min-height:50px;color:var(--ink);font-size:var(--t-headline);font-weight:var(--w-emph);transition:transform var(--d-fast) var(--ease), background var(--d-fast) var(--ease);border:none;flex:1}.device-login-button:active:not(:disabled){background:var(--fill-strong);transform:scale(.98)}.auth-links{justify-content:center;gap:var(--s1) var(--s4);flex-wrap:wrap;display:flex}.link-button{min-height:var(--tap);padding:0 var(--s2);color:var(--accent-on-glass);font-size:var(--t-subhead);font-weight:var(--w-medium);background:0 0;border:none}.wicon{flex-shrink:0;display:block}.widget-art{object-fit:cover;border-radius:inherit;z-index:0;pointer-events:none;filter:saturate(.8)contrast(.92)brightness(.88);width:100%;height:100%;position:absolute;inset:0}.widget-art--in{animation:widget-art-in 1.2s var(--ease) both}@keyframes widget-art-in{0%{opacity:0}to{opacity:1}}.widget-scrim{--scrim-top:.64;--scrim-floor:.9;--scrim-body:.76;--scrim-solid:46%;--scrim-fade:84%;z-index:0;border-radius:inherit;pointer-events:none;background: linear-gradient(180deg, rgba(var(--scrim-rgb), var(--scrim-top)) 0, rgba(var(--scrim-rgb), calc(var(--scrim-top) - .02)) 40px, rgba(var(--scrim-rgb), 0) 84px),  linear-gradient(0deg, rgba(var(--scrim-rgb), var(--scrim-floor)) 0%, rgba(var(--scrim-rgb), var(--scrim-body)) var(--scrim-solid), rgba(var(--scrim-rgb), 0) var(--scrim-fade));position:absolute;inset:0}:root[data-mode=light] .widget-art{filter:saturate(.95)contrast(.96)}:root[data-mode=light] .widget-scrim{background:linear-gradient(0deg, #ffffffe0 0%, #fffc var(--scrim-solid), #fff0 var(--scrim-fade))}.widget-card>.widget-head,.widget-card>.widget-body{z-index:1;position:relative}@media (prefers-contrast:more){:root[data-mode=light] .widget-scrim{background:#ffffffeb}.widget-scrim{--scrim-top:.9;--scrim-body:.9;--scrim-solid:100%;--scrim-fade:100%}}.widgets-modal::part(content){background:var(--glass-sheen), var(--glass-fill-thick);box-shadow:var(--glass-shadow), inset 0 1px 0 rgba(255, 255, 255, var(--edge-hi));-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));border-top-left-radius:var(--r-sheet);border-top-right-radius:var(--r-sheet)}.widgets-modal{--backdrop-opacity:.28}.widgets-sheet{--background:transparent;--padding-bottom:var(--nav-space)}@media (prefers-reduced-transparency:reduce){.widgets-modal::part(content){background:var(--app-surface);-webkit-backdrop-filter:none;backdrop-filter:none}}.sheet-head{justify-content:space-between;align-items:center;gap:var(--s3);padding:var(--s5) var(--s5) var(--s3);display:flex}.sheet-title{font-size:var(--t-title2);font-weight:var(--w-bold);letter-spacing:var(--tr-title);color:var(--ink);margin:0}.sheet-sub{margin:calc(var(--s2) * -1) var(--s5) var(--s3);font-size:var(--t-subhead);color:var(--ink-2)}.sheet-empty{color:var(--ink-2);font-size:var(--t-subhead);padding:var(--s6) var(--s5);text-align:center}.sheet-body{padding:0 var(--s5) var(--s6)}.sheet-glyph{width:28px;color:var(--ink-2);flex-shrink:0;justify-content:center;align-items:center;display:flex}.hub-count{font-size:var(--t-footnote);color:var(--ink-2);margin:2px 0 0}.hub-grid{gap:var(--s3);padding:var(--s1) var(--s5) var(--s6);perspective:900px;grid-template-columns:1fr 1fr;display:grid}.hub-tile{--rx:0deg;--ry:0deg;--gx:50%;--gy:0%;appearance:none;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;width:100%;transform-style:preserve-3d;transform:rotateX(var(--rx)) rotateY(var(--ry));animation:.52s cubic-bezier(.2,.8,.2,1) both hub-rise;animation-delay:calc(min(var(--i,0), 9) * 35ms);background:0 0;border:0;margin:0;padding:0;font-family:inherit;transition:transform .42s cubic-bezier(.2,.8,.2,1);display:block}.hub-tile.is-tilting{transition-duration:90ms}@keyframes hub-rise{0%{opacity:0;transform:translateY(14px)rotateX(10deg)}}.hub-tile-body{isolation:isolate;height:124px;transform-style:preserve-3d;background:rgb(var(--scrim-rgb));box-shadow:inset 0 1px 0 #ffffff24, 0 14px 28px -14px rgba(var(--shadow-tint), .7), 0 3px 8px -3px rgba(var(--shadow-tint), .35);color:#fff;transition:transform .16s var(--ease), box-shadow .24s var(--ease);border:1px solid #ffffff1a;border-radius:22px;flex-direction:column;justify-content:flex-end;padding:12px 14px;display:flex;position:relative;overflow:hidden}.hub-tile:active .hub-tile-body{transform:scale(.97)}.hub-tile .widget-art{transform:scale(1.08) translate(calc(var(--ry) * -.5), calc(var(--rx) * .5));transition:transform .42s cubic-bezier(.2,.8,.2,1)}.hub-tile .widget-scrim{--scrim-solid:40%;--scrim-fade:78%}.hub-tile-sheen{z-index:1;pointer-events:none;opacity:0;background:radial-gradient(140px circle at var(--gx) var(--gy), #ffffff38, transparent 70%);transition:opacity .24s var(--ease);position:absolute;inset:0}.hub-tile.is-tilting .hub-tile-sheen{opacity:1}.hub-puck{z-index:2;color:#fff;-webkit-backdrop-filter:blur(10px)saturate(1.6);backdrop-filter:blur(10px)saturate(1.6);filter:drop-shadow(0 1px #00000040);background:radial-gradient(120% 90% at 28% 12%,#ffffff80,#fff0 52%),linear-gradient(160deg,#ffffff52,#ffffff14 60%,#ffffff29);border-radius:15px;place-items:center;width:44px;height:44px;display:grid;position:absolute;top:12px;left:12px;transform:translateZ(26px);box-shadow:inset 0 1px #ffffffbf,inset 0 -2px 5px #00000038,inset 0 0 0 1px #ffffff2e,0 10px 18px -8px #000000a6,0 2px 4px #0000004d}.hub-puck .wicon{color:#fff;filter:drop-shadow(0 1px 1px #00000059)}.hub-tile-label{z-index:2;font-size:var(--t-subhead);font-weight:var(--w-emph);letter-spacing:-.01em;color:#fff;text-shadow:0 1px 2px #0006;line-height:1.2;position:relative;transform:translateZ(14px)}.hub-tile:focus-visible{outline:none}.hub-tile:focus-visible .hub-tile-body{outline:2px solid var(--accent-on-bg);outline-offset:3px}@media (prefers-reduced-motion:reduce){.hub-tile,.hub-tile .widget-art{transition:none;animation:none;transform:none}}@media (prefers-reduced-transparency:reduce){.hub-puck{-webkit-backdrop-filter:none;backdrop-filter:none;background:rgba(var(--scrim-rgb), .85)}}:root[data-mode=light] .hub-tile-body{background:var(--app-surface);color:var(--app-text);box-shadow:inset 0 1px 0 #ffffffe6, 0 14px 26px -16px rgba(var(--shadow-tint), .45), 0 2px 6px -3px rgba(var(--shadow-tint), .2);border-color:#00000014}:root[data-mode=light] .hub-tile-label{color:var(--app-text);text-shadow:none}:root[data-mode=light] .hub-puck{color:var(--app-text);box-shadow:inset 0 1px 0 #fff, inset 0 -2px 5px #00000014, 0 0 0 1px #0000000f, 0 10px 18px -10px rgba(var(--shadow-tint), .45);filter:none;background:radial-gradient(120% 90% at 28% 12%,#fffffff2,#fff0 55%),linear-gradient(160deg,#ffffffd1,#ffffff8c)}:root[data-mode=light] .hub-puck .wicon{color:var(--app-text);filter:none}:root[data-mode=light] .hub-tile-sheen{background:radial-gradient(140px circle at var(--gx) var(--gy), #ffffff80, transparent 70%)}.wx{--wx-sun:var(--app-accent,#ffc174);--wx-cloud:var(--ink-2,#dae2fd);--wx-cloud-back:var(--ink-3,#9aa3b8);--wx-rain:var(--ink-2,#7fb3ff);--wx-snow:var(--ink,#e3ecff);--wx-bolt:var(--app-accent,#ffd54a);--wx-moon:var(--ink,#e7eeff);--wx-star:var(--ink-3,#9aa3b8);display:block;overflow:visible}.wx-sun{fill:var(--wx-sun);transform-box:fill-box;transform-origin:50%;animation:3.5s ease-in-out infinite wx-pulse}.wx-ray{stroke:var(--wx-sun);stroke-width:3px;stroke-linecap:round}.wx-rays{transform-box:fill-box;transform-origin:50%;animation:14s linear infinite wx-spin}@keyframes wx-spin{to{transform:rotate(360deg)}}@keyframes wx-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.88;transform:scale(1.12)}}.wx-moon{fill:var(--wx-moon)}.wx-star{fill:var(--wx-star);animation:2.4s ease-in-out infinite wx-twinkle}.wx-star-2{animation-delay:.6s}.wx-star-3{animation-delay:1.2s}@keyframes wx-twinkle{0%,to{opacity:.25}50%{opacity:1}}.wx-cloud circle,.wx-cloud rect{fill:var(--wx-cloud)}.wx-cloud-back circle,.wx-cloud-back rect{fill:var(--wx-cloud-back)}.wx-cloud-drift{transform-box:fill-box;transform-origin:50%;animation:6s ease-in-out infinite wx-drift}.wx-cloud-back{transform-box:fill-box;transform-origin:50%;animation:8s ease-in-out infinite reverse wx-drift}@keyframes wx-drift{0%,to{transform:translate(-2px)}50%{transform:translate(3px)}}.wx-drop{stroke:var(--wx-rain);stroke-width:3px;stroke-linecap:round;animation:1.1s linear infinite wx-fall}@keyframes wx-fall{0%{opacity:0;transform:translateY(-4px)}30%{opacity:1}to{opacity:0;transform:translateY(8px)}}.wx-flake{fill:var(--wx-snow);transform-box:fill-box;transform-origin:50%;animation:2.4s linear infinite wx-snowfall}@keyframes wx-snowfall{0%{opacity:0;transform:translateY(-3px)}30%{opacity:1}to{opacity:0;transform:translateY(9px)}}.wx-precip-2{animation-delay:.37s}.wx-precip-3{animation-delay:.74s}.wx-bolt{fill:var(--wx-bolt);animation:2s step-end infinite wx-flash}@keyframes wx-flash{0%,92%,to{opacity:0}93%{opacity:1}95%{opacity:.2}96%{opacity:.8}}.wx-fog-line{stroke:var(--wx-cloud);stroke-width:3px;stroke-linecap:round;transform-box:fill-box;transform-origin:50%;animation:3.2s ease-in-out infinite wx-fogslide}.wx-fog-2{animation-delay:.8s}@keyframes wx-fogslide{0%,to{opacity:.5;transform:translate(-3px)}50%{opacity:1;transform:translate(3px)}}.wx-gust{fill:none;stroke:var(--wx-cloud);stroke-width:3px;stroke-linecap:round;transform-box:fill-box;transform-origin:50%;animation:3s ease-in-out infinite wx-gust}.wx-gust-2{animation-delay:.4s}.wx-gust-3{animation-delay:.8s}@keyframes wx-gust{0%,to{opacity:.6;transform:translate(-3px)}50%{opacity:1;transform:translate(3px)}}@media (prefers-reduced-motion:reduce){.wx *{animation:none!important}}.wdemo{flex-direction:column;gap:12px;display:flex}.wdemo-list{flex-direction:column;gap:11px;margin:0;padding:0;list-style:none;display:flex}.wdemo-caption{text-align:center;color:color-mix(in srgb, var(--app-text) 55%, transparent);margin:2px 0 0;font-size:12px}.wdemo-row{--d:calc(var(--i) * .7s);align-items:center;gap:10px;display:flex}.wdemo-box{border:2px solid color-mix(in srgb, var(--app-text) 35%, transparent);width:22px;height:22px;animation:4s infinite wdemo-box;animation-delay:var(--d);background:0 0;border-radius:7px;flex:none;justify-content:center;align-items:center;display:flex;position:relative}.wdemo-box:before{content:"";border:2px solid var(--app-accent);opacity:0;animation:4s infinite wdemo-ripple;animation-delay:var(--d);border-radius:11px;position:absolute;inset:-4px}.wdemo-tick{color:#fff;opacity:0;animation:4s infinite wdemo-tick;animation-delay:var(--d);font-size:13px;font-weight:800;line-height:1;transform:scale(.4)}.wdemo-text{color:var(--app-text);animation:4s infinite wdemo-text;animation-delay:var(--d);font-size:13.5px;position:relative}.wdemo-strike{background:color-mix(in srgb, var(--app-text) 55%, transparent);width:0;height:1.5px;animation:4s infinite wdemo-strike;animation-delay:var(--d);position:absolute;top:50%;left:0}@keyframes wdemo-box{0%,9%{border-color:color-mix(in srgb, var(--app-text) 35%, transparent);background:0 0;transform:scale(1)}11%{transform:scale(.88)}15%,82%{border-color:var(--app-accent);background:var(--app-accent);transform:scale(1)}92%,to{border-color:color-mix(in srgb, var(--app-text) 35%, transparent);background:0 0}}@keyframes wdemo-tick{0%,11%{opacity:0;transform:scale(.4)}16%,82%{opacity:1;transform:scale(1)}92%,to{opacity:0;transform:scale(.4)}}@keyframes wdemo-strike{0%,11%{width:0}20%,82%{width:100%}92%,to{width:0}}@keyframes wdemo-text{0%,11%{color:var(--app-text)}20%,82%{color:color-mix(in srgb, var(--app-text) 45%, transparent)}92%,to{color:var(--app-text)}}@keyframes wdemo-ripple{0%,9%{opacity:0;transform:scale(.6)}11%{opacity:.7;transform:scale(.6)}22%{opacity:0;transform:scale(1.4)}to{opacity:0;transform:scale(1.4)}}.wdemo-shop-tabs{align-items:center;gap:6px;margin-bottom:2px;display:flex}.wdemo-shop-tab{white-space:nowrap;color:color-mix(in srgb, var(--app-text) 65%, transparent);background:color-mix(in srgb, var(--app-text) 8%, transparent);border-radius:999px;flex:none;padding:4px 10px;font-size:11px;font-weight:700}.wdemo-shop-tab.is-active{color:#fff;background:var(--app-accent)}.wdemo-shop-tab--new{opacity:0;max-width:0;padding-left:0;padding-right:0;animation:4s infinite wdemo-shop-newtab;overflow:hidden;transform:scale(.8)}.wdemo-shop-addtab{width:24px;height:24px;color:var(--app-accent);background:color-mix(in srgb, var(--app-accent) 16%, transparent);border-radius:999px;flex:none;justify-content:center;align-items:center;font-size:15px;font-weight:700;line-height:1;animation:4s infinite wdemo-shop-addpress;display:flex;position:relative}.wdemo-shop-addtab:before{content:"";border:2px solid var(--app-accent);opacity:0;border-radius:999px;animation:4s infinite wdemo-ripple;position:absolute;inset:-3px}@keyframes wdemo-shop-addpress{0%,9%{transform:scale(1)}11%{transform:scale(.85)}15%,to{transform:scale(1)}}@keyframes wdemo-shop-newtab{0%,11%{opacity:0;max-width:0;padding-left:0;padding-right:0;transform:scale(.8)}18%{opacity:1}22%,82%{opacity:1;max-width:90px;padding-left:10px;padding-right:10px;transform:scale(1)}92%,to{opacity:0;max-width:0;padding-left:0;padding-right:0;transform:scale(.8)}}.wdemo-shop-chip{letter-spacing:.02em;white-space:nowrap;color:var(--app-accent);background:color-mix(in srgb, var(--app-accent) 16%, transparent);border-radius:999px;flex:none;align-items:center;gap:4px;margin-left:auto;padding:2px 8px;font-size:9.5px;font-weight:700;display:inline-flex}.wdemo-shop .wdemo-row.private .wdemo-box,.wdemo-shop .wdemo-row.private .wdemo-box:before,.wdemo-shop .wdemo-row.private .wdemo-tick,.wdemo-shop .wdemo-row.private .wdemo-text,.wdemo-shop .wdemo-row.private .wdemo-strike{animation:none}.wdemo-shop .wdemo-row.private .wdemo-box{border-color:color-mix(in srgb, var(--app-text) 35%, transparent);background:0 0}.wdemo-shop .wdemo-row.private .wdemo-tick{opacity:0}.wdemo-shop .wdemo-row.private .wdemo-strike{width:0}.wdemo-cal-grid{grid-template-columns:repeat(7,1fr);row-gap:1px;display:grid}.wdemo-cal-wd{text-align:center;color:color-mix(in srgb, var(--app-text) 45%, transparent);padding-bottom:3px;font-size:9px;font-weight:700}.wdemo-cal-day{aspect-ratio:1;justify-content:center;align-items:center;font-size:10.5px;display:flex;position:relative}.wdemo-cal-num{z-index:1;color:var(--app-text);position:relative}.wdemo-cal-evdot{background:var(--app-accent);opacity:0;border-radius:50%;width:3px;height:3px;margin-left:-1.5px;position:absolute;bottom:1px;left:50%}.wdemo-cal-day.has-event .wdemo-cal-evdot{opacity:.7}.wdemo-cal-day.selected .wdemo-cal-evdot{display:none}.wdemo-cal-pick{background:var(--app-accent);opacity:0;border-radius:50%;animation:6s infinite wdemo-cal-pick;position:absolute;inset:1px;transform:scale(.2)}.wdemo-cal-pick:before{content:"";border:2px solid var(--app-accent);opacity:0;border-radius:50%;animation:6s infinite wdemo-ripple;position:absolute;inset:-3px}.wdemo-cal-day.selected .wdemo-cal-num{animation:6s infinite wdemo-cal-num}.wdemo-cal-agenda-head{color:var(--app-text);opacity:0;margin:6px 0 0;font-size:11px;font-weight:700;animation:6s .5s infinite wdemo-cal-event}.wdemo-cal-events{flex-direction:column;gap:6px;margin:3px 0 0;padding:0;list-style:none;display:flex}.wdemo-cal-event{opacity:0;animation:6s infinite wdemo-cal-event;animation-delay:calc(.8s + var(--i) * .5s);align-items:center;gap:7px;display:flex}.wdemo-cal-event-bar{background:var(--app-accent);border-radius:2px;flex:none;width:3px;height:14px}.wdemo-cal-event-cake{flex:none;font-size:13px;line-height:1}.wdemo-cal-event-time{font-variant-numeric:tabular-nums;width:34px;color:color-mix(in srgb, var(--app-text) 55%, transparent);flex:none;font-size:10.5px}.wdemo-cal-event-text{color:var(--app-text);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.wdemo-cal-badge{letter-spacing:.02em;color:var(--app-accent);background:color-mix(in srgb, var(--app-accent) 16%, transparent);border-radius:999px;flex:none;margin-left:auto;padding:2px 7px;font-size:9.5px;font-weight:700}@keyframes wdemo-cal-pick{0%,9%{opacity:0;transform:scale(.2)}11%{opacity:1;transform:scale(.85)}15%,82%{opacity:1;transform:scale(1)}92%,to{opacity:0;transform:scale(.2)}}@keyframes wdemo-cal-num{0%,11%{color:var(--app-text)}16%,82%{color:#fff}92%,to{color:var(--app-text)}}@keyframes wdemo-cal-event{0%{opacity:0;transform:translateY(6px)}9%{opacity:1;transform:translateY(0)}74%,82%{opacity:1;transform:translateY(0)}92%,to{opacity:0;transform:translateY(6px)}}.wdemo-car{background:color-mix(in srgb, var(--app-text) 5%, transparent);border:1px solid color-mix(in srgb, var(--app-text) 10%, transparent);border-radius:14px;padding:12px}.wdemo-car-head{align-items:baseline;gap:6px;margin-bottom:10px;display:flex}.wdemo-car-name{color:var(--app-text);font-size:15px;font-weight:800}.wdemo-car-year{color:color-mix(in srgb, var(--app-text) 55%, transparent);font-size:13px;font-weight:600}.wdemo-garage-docs{flex-direction:column;gap:7px;margin:0;padding:0;list-style:none;display:flex}.wdemo-garage-doc{background:color-mix(in srgb, var(--app-text) 5%, transparent);border-left:3px solid var(--ok);border-radius:10px;align-items:center;gap:8px;padding:8px 10px;display:flex}.wdemo-garage-doc.tone-soon{border-left-color:var(--warn)}.wdemo-garage-doc-label{color:var(--app-text);flex:1;font-size:13px;font-weight:700}.wdemo-garage-doc-status{color:var(--ok);font-size:12px;font-weight:700;position:relative}.wdemo-garage-doc.tone-ok .wdemo-garage-doc-status{color:var(--ok)}.wdemo-garage-status-soon,.wdemo-garage-status-ok{display:inline-block}.wdemo-garage-status-ok{opacity:0;position:absolute;right:0}.wdemo-garage-doc--fix .wdemo-garage-status-soon{color:var(--warn);animation:4.4s ease-in-out infinite wdemo-garage-soon-out}.wdemo-garage-doc--fix .wdemo-garage-status-ok{animation:4.4s ease-in-out infinite wdemo-garage-ok-in}.wdemo-garage-doc--fix{animation:4.4s ease-in-out infinite wdemo-garage-tone}.wdemo-garage-prolong{color:var(--app-accent);border:1px solid color-mix(in srgb, var(--app-accent) 32%, transparent);background:0 0;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:800;animation:4.4s ease-in-out infinite wdemo-garage-tap}@keyframes wdemo-garage-tap{0%,38%{background:0 0;transform:scale(1)}44%{background:color-mix(in srgb, var(--app-accent) 22%, transparent);transform:scale(.86)}50%,to{background:0 0;transform:scale(1)}}@keyframes wdemo-garage-soon-out{0%,46%{opacity:1}54%,to{opacity:0}}@keyframes wdemo-garage-ok-in{0%,48%{opacity:0}56%,to{opacity:1}}@keyframes wdemo-garage-tone{0%,48%{border-left-color:var(--warn)}56%,to{border-left-color:var(--ok)}}.wdemo-chore-chip{letter-spacing:.02em;white-space:nowrap;color:var(--warn);background:color-mix(in srgb, var(--warn) 18%, transparent);border-radius:999px;flex:none;margin-left:auto;padding:2px 8px;font-size:9.5px;font-weight:700}.wdemo-chores .wdemo-row.urgent .wdemo-box,.wdemo-chores .wdemo-row.urgent .wdemo-box:before,.wdemo-chores .wdemo-row.urgent .wdemo-tick,.wdemo-chores .wdemo-row.urgent .wdemo-text,.wdemo-chores .wdemo-row.urgent .wdemo-strike{animation:none}.wdemo-chores .wdemo-row.urgent .wdemo-box{border-color:var(--warn);background:0 0}.wdemo-chores .wdemo-row.urgent .wdemo-tick{opacity:0}.wdemo-chores .wdemo-row.urgent .wdemo-strike{width:0}.wdemo-wish{gap:14px}.wdemo-wish-paste{background:color-mix(in srgb, var(--app-text) 6%, transparent);border:1px solid color-mix(in srgb, var(--app-text) 10%, transparent);border-radius:12px;align-items:center;gap:8px;padding:8px 10px;display:flex}.wdemo-wish-link{font-variant-numeric:tabular-nums;min-width:0;color:color-mix(in srgb, var(--app-text) 60%, transparent);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:12px;overflow:hidden}.wdemo-wish-go{color:#fff;background:var(--app-accent);border-radius:999px;flex:none;padding:5px 12px;font-size:11px;font-weight:800;animation:4s infinite wdemo-wish-press;position:relative}.wdemo-wish-go:before{content:"";border:2px solid var(--app-accent);opacity:0;border-radius:999px;animation:4s infinite wdemo-ripple;position:absolute;inset:-3px}.wdemo-wish-card{background:color-mix(in srgb, var(--app-text) 5%, transparent);border:1px solid color-mix(in srgb, var(--app-text) 10%, transparent);border-radius:14px;gap:12px;padding:12px;display:flex}.wdemo-wish-img{background:color-mix(in srgb, var(--app-text) 12%, transparent);border-radius:10px;flex:none;width:52px;height:52px;animation:4s infinite wdemo-wish-img}.wdemo-wish-info{flex-direction:column;flex:1;justify-content:center;gap:7px;min-width:0;display:flex}.wdemo-wish-line{background:color-mix(in srgb, var(--app-text) 14%, transparent);border-radius:5px;height:9px;animation:4s infinite wdemo-wish-line}.wdemo-wish-line.wide{width:90%}.wdemo-wish-line.narrow{width:55%}.wdemo-wish-price{color:var(--app-accent);background:color-mix(in srgb, var(--app-accent) 16%, transparent);opacity:0;border-radius:999px;align-self:flex-start;margin-top:1px;padding:2px 9px;font-size:11px;font-weight:800;animation:4s infinite wdemo-wish-price;transform:translateY(3px)}@keyframes wdemo-wish-press{0%,24%{transform:scale(1)}28%{transform:scale(.86)}34%,to{transform:scale(1)}}@keyframes wdemo-wish-img{0%,30%{background:color-mix(in srgb, var(--app-text) 12%, transparent)}44%,86%{background:linear-gradient(135deg, color-mix(in srgb, var(--app-accent) 70%, transparent), color-mix(in srgb, var(--app-accent) 28%, transparent))}96%,to{background:color-mix(in srgb, var(--app-text) 12%, transparent)}}@keyframes wdemo-wish-line{0%,30%{background:color-mix(in srgb, var(--app-text) 14%, transparent)}44%,86%{background:color-mix(in srgb, var(--app-text) 38%, transparent)}96%,to{background:color-mix(in srgb, var(--app-text) 14%, transparent)}}@keyframes wdemo-wish-price{0%,34%{opacity:0;transform:translateY(3px)}46%,84%{opacity:1;transform:translateY(0)}96%,to{opacity:0;transform:translateY(3px)}}.wdemo-recipe{gap:14px}.wdemo-recipe-paste{background:color-mix(in srgb, var(--app-text) 6%, transparent);border:1px solid color-mix(in srgb, var(--app-text) 10%, transparent);border-radius:12px;align-items:center;gap:8px;padding:8px 10px;display:flex}.wdemo-recipe-link{min-width:0;color:color-mix(in srgb, var(--app-text) 60%, transparent);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:12px;overflow:hidden}.wdemo-recipe-go{color:#fff;background:var(--app-accent);border-radius:999px;flex:none;padding:5px 12px;font-size:11px;font-weight:800;animation:4s infinite wdemo-wish-press;position:relative}.wdemo-recipe-go:before{content:"";border:2px solid var(--app-accent);opacity:0;border-radius:999px;animation:4s infinite wdemo-ripple;position:absolute;inset:-3px}.wdemo-recipe-card{background:color-mix(in srgb, var(--app-text) 5%, transparent);border:1px solid color-mix(in srgb, var(--app-text) 10%, transparent);border-radius:14px;gap:12px;padding:12px;display:flex}.wdemo-recipe-img{background:color-mix(in srgb, var(--app-text) 12%, transparent);border-radius:10px;flex:none;justify-content:center;align-items:center;width:58px;height:58px;animation:4s infinite wdemo-wish-img;display:flex;position:relative}.wdemo-recipe-play{color:#fff;opacity:0;filter:drop-shadow(0 1px 2px #00000080);font-size:13px;animation:4s infinite wdemo-recipe-play;transform:scale(.6)}.wdemo-recipe-info{flex-direction:column;flex:1;justify-content:center;gap:7px;min-width:0;display:flex}.wdemo-recipe-title{background:color-mix(in srgb, var(--app-text) 14%, transparent);border-radius:5px;width:80%;height:10px;animation:4s infinite wdemo-wish-line}.wdemo-recipe-ing{background:color-mix(in srgb, var(--app-text) 12%, transparent);border-radius:4px;width:100%;height:7px;animation:4s infinite wdemo-wish-line}.wdemo-recipe-ing.short{width:60%}@keyframes wdemo-recipe-play{0%,40%{opacity:0;transform:scale(.6)}52%,86%{opacity:1;transform:scale(1)}96%,to{opacity:0;transform:scale(.6)}}.wdemo-weather{align-items:center}.wdemo-wx-loc{color:color-mix(in srgb, var(--app-text) 75%, transparent);font-size:13px;font-weight:700}.wdemo-wx-pin{font-size:12px}.wdemo-wx-stage{width:100%;height:72px;position:relative}.wdemo-wx-layer{opacity:0;justify-content:center;align-items:center;gap:12px;animation:8s ease-in-out infinite wdemo-wx;display:flex;position:absolute;inset:0}.wdemo-wx-1{animation-delay:0s}.wdemo-wx-2{animation-delay:-6s}.wdemo-wx-3{animation-delay:-4s}.wdemo-wx-4{animation-delay:-2s}.wdemo-wx-readout{flex-direction:column;align-items:flex-start;min-width:76px;display:flex}.wdemo-wx-temp{color:var(--app-text);font-size:30px;font-weight:800;line-height:1}.wdemo-wx-cond{color:color-mix(in srgb, var(--app-text) 65%, transparent);font-size:13px}@keyframes wdemo-wx{0%{opacity:0;transform:scale(.92)}3%{opacity:1;transform:scale(1)}22%{opacity:1;transform:scale(1)}25%,to{opacity:0;transform:scale(.92)}}@media (prefers-reduced-motion:reduce){.wdemo-wx-layer{animation:none}.wdemo-wx-1{opacity:1;transform:none}.wdemo-garage-doc--fix,.wdemo-garage-status-soon,.wdemo-garage-status-ok,.wdemo-garage-prolong{animation:none}.wdemo-garage-doc--fix{border-left-color:var(--ok)}.wdemo-garage-status-soon{opacity:0}.wdemo-garage-status-ok{opacity:1}.wdemo-box,.wdemo-box:before,.wdemo-tick,.wdemo-text,.wdemo-strike{animation:none}.wdemo-box{border-color:var(--app-accent);background:var(--app-accent)}.wdemo-tick{opacity:1;transform:scale(1)}.wdemo-strike{width:100%}.wdemo-text{color:color-mix(in srgb, var(--app-text) 45%, transparent)}.wdemo-box:before{opacity:0}.wdemo-shop-tab--new,.wdemo-shop-addtab,.wdemo-shop-addtab:before{animation:none}.wdemo-shop-tab--new{opacity:1;max-width:90px;padding-left:10px;padding-right:10px;transform:none}.wdemo-shop-addtab:before{opacity:0}.wdemo-cal-pick,.wdemo-cal-pick:before,.wdemo-cal-day.selected .wdemo-cal-num,.wdemo-cal-agenda-head,.wdemo-cal-event{animation:none}.wdemo-cal-pick{opacity:1;transform:scale(1)}.wdemo-cal-pick:before{opacity:0}.wdemo-cal-day.selected .wdemo-cal-num{color:#fff}.wdemo-cal-agenda-head{opacity:1}.wdemo-cal-event{opacity:1;transform:none}.wdemo-chores .wdemo-row.urgent .wdemo-box{border-color:var(--warn);background:0 0}.wdemo-wish-go,.wdemo-wish-go:before,.wdemo-wish-img,.wdemo-wish-line,.wdemo-wish-price{animation:none}.wdemo-wish-go:before{opacity:0}.wdemo-wish-img{background:linear-gradient(135deg, color-mix(in srgb, var(--app-accent) 70%, transparent), color-mix(in srgb, var(--app-accent) 28%, transparent))}.wdemo-wish-line{background:color-mix(in srgb, var(--app-text) 38%, transparent)}.wdemo-wish-price{opacity:1;transform:none}.wdemo-recipe-go,.wdemo-recipe-go:before,.wdemo-recipe-img,.wdemo-recipe-title,.wdemo-recipe-ing,.wdemo-recipe-play{animation:none}.wdemo-recipe-go:before{opacity:0}.wdemo-recipe-img{background:linear-gradient(135deg, color-mix(in srgb, var(--app-accent) 70%, transparent), color-mix(in srgb, var(--app-accent) 28%, transparent))}.wdemo-recipe-play{opacity:1;transform:none}.wdemo-recipe-title,.wdemo-recipe-ing{background:color-mix(in srgb, var(--app-text) 34%, transparent)}}.wdemo-photos{align-items:center}.wdemo-photo-frame{background:color-mix(in srgb, var(--app-text) 10%, transparent);border-radius:12px;width:100%;height:96px;position:relative;overflow:hidden}.wdemo-photo-layer{opacity:0;animation:8s ease-in-out infinite wdemo-photo;position:absolute;inset:0}.wdemo-photo-1{animation-delay:0s}.wdemo-photo-2{animation-delay:-6s}.wdemo-photo-3{animation-delay:-4s}.wdemo-photo-4{animation-delay:-2s}.wdemo-scene-beach{background:linear-gradient(#8fd3ff 0%,#cdeafe 55%,#ffe9b8 55%,#ffd98a 100%)}.wdemo-scene-forest{background:linear-gradient(#bfe3ff 0%,#7ec98a 45%,#2f8f57 100%)}.wdemo-scene-city{background:linear-gradient(#c6a8ff 0%,#7b4aff 60%,#3a2a66 100%)}.wdemo-scene-dusk{background:linear-gradient(#ffb37a 0%,#ff6f91 55%,#6a3d7a 100%)}.wdemo-photo-shuffle{filter:drop-shadow(0 1px 2px #00000073);font-size:15px;position:absolute;bottom:6px;right:8px}@keyframes wdemo-photo{0%{opacity:0;transform:scale(1.05)}4%{opacity:1;transform:scale(1)}22%{opacity:1;transform:scale(1)}26%,to{opacity:0;transform:scale(1.05)}}@media (prefers-reduced-motion:reduce){.wdemo-photo-layer{animation:none}.wdemo-photo-1{opacity:1;transform:none}}.wdemo-loyalty-stage{width:100%;height:110px;position:relative}.wdemo-loyalty-card{color:#fff;opacity:0;border-radius:14px;flex-direction:column;gap:6px;padding:12px;animation:9s ease-in-out infinite wdemo-loyalty;display:flex;position:absolute;inset:0 20%;box-shadow:0 6px 16px #00000047}.wdemo-loyalty-1{animation-delay:0s}.wdemo-loyalty-2{animation-delay:-6s}.wdemo-loyalty-3{animation-delay:-3s}.wdemo-loyalty-badge{background:#fff;border-radius:7px;justify-content:center;align-self:flex-start;align-items:center;min-width:26px;height:26px;padding:0 6px;font-size:12px;font-weight:800;display:inline-flex}.wdemo-loyalty-store{font-size:15px;font-weight:700}.wdemo-loyalty-bars{background:#fff;border-radius:6px;align-items:flex-end;gap:3px;height:22px;margin-top:auto;padding:4px 6px;display:flex}.wdemo-loyalty-bars span{background:#111;flex:1;height:100%}.wdemo-loyalty-bars span:nth-child(2n){transform:scaleX(.5)}.wdemo-loyalty-bars span:nth-child(3n){transform:scaleX(1.6)}.wdemo-loyalty-bars span:nth-child(5n){transform:scaleX(.7)}.wdemo-loyalty-scan{background:linear-gradient(90deg,#0000,#fff,#0000);border-radius:3px;height:3px;animation:3s ease-in-out infinite wdemo-loyalty-scan;position:absolute;left:20%;right:20%;box-shadow:0 0 10px 2px #ffffffb3}@keyframes wdemo-loyalty{0%{opacity:0;transform:translateY(8px)scale(.94)}5%{opacity:1;transform:translateY(0)scale(1)}28%{opacity:1;transform:translateY(0)scale(1)}33%,to{opacity:0;transform:translateY(-8px)scale(.94)}}@keyframes wdemo-loyalty-scan{0%,to{opacity:0;top:14%}20%{opacity:1}80%{opacity:1}50%{top:78%}}@media (prefers-reduced-motion:reduce){.wdemo-loyalty-card{animation:none}.wdemo-loyalty-1{opacity:1;transform:none}.wdemo-loyalty-2,.wdemo-loyalty-3{display:none}.wdemo-loyalty-scan{opacity:0;animation:none}}.wdemo-chat-thread{flex-direction:column;justify-content:center;gap:8px;min-height:120px;padding:10px 6px;display:flex}.wdemo-chat-bubble{opacity:0;max-width:78%;animation:.5s forwards wdemo-chat-pop;animation-delay:calc(.35s + var(--i) * .7s);border-radius:14px;padding:8px 12px;font-size:.85rem;line-height:1.3}.wdemo-chat-bubble.in{background:color-mix(in srgb, var(--app-text,#fff) 12%, var(--app-surface,#151b28));color:var(--app-text,#fff);border-bottom-left-radius:4px;align-self:flex-start}.wdemo-chat-bubble.out{background:var(--app-accent,#f59e0b);color:color-mix(in srgb, var(--app-accent,#f59e0b) 30%, #000);border-bottom-right-radius:4px;align-self:flex-end}@keyframes wdemo-chat-pop{0%{opacity:0;transform:translateY(6px)scale(.96)}to{opacity:1;transform:none}}.add-widget-modal::part(content){background:var(--glass-sheen), var(--glass-fill-thick);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));border-top-left-radius:var(--r-sheet);border-top-right-radius:var(--r-sheet);box-shadow:var(--glass-shadow), inset 0 1px 0 rgba(255, 255, 255, var(--edge-hi))}.add-widget-modal{--backdrop-opacity:.28}.add-widget-sheet{--background:transparent;--padding-bottom:0}@media (prefers-reduced-transparency:reduce){.add-widget-modal::part(content){background:var(--app-surface);-webkit-backdrop-filter:none;backdrop-filter:none}}.add-widget-body{gap:var(--s3);padding:0 var(--s4);grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:start;display:grid}.add-widget-list-label{margin:0 0 var(--s2) var(--s2)}.add-widget-rows{flex-direction:column;gap:8px;display:flex}.add-widget-row{isolation:isolate;background:rgb(var(--scrim-rgb));color:#fff;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;min-height:56px;box-shadow:inset 0 1px 0 #ffffff1f, 0 8px 16px -10px rgba(var(--shadow-tint), .6);transition:transform .22s var(--ease), box-shadow .22s var(--ease);animation:.48s cubic-bezier(.2,.8,.2,1) both hub-rise;animation-delay:calc(min(var(--i,0), 10) * 30ms);border:1px solid #ffffff1a;border-radius:16px;align-items:center;gap:10px;padding:6px 10px 6px 8px;font-family:inherit;display:flex;position:relative;overflow:hidden}.add-widget-row .widget-scrim{--scrim-top:.66;--scrim-floor:.66;--scrim-body:.66;--scrim-solid:100%;--scrim-fade:100%;background:rgba(var(--scrim-rgb), .66)}.add-widget-row:active{transform:scale(.97)}.add-widget-row:focus-visible{outline:2px solid var(--accent-on-bg);outline-offset:2px}.add-widget-puck.hub-puck{border-radius:11px;flex-shrink:0;width:34px;height:34px;position:relative;top:auto;left:auto;transform:none}.add-widget-row-label{z-index:2;min-width:0;font-size:var(--t-subhead);font-weight:var(--w-medium);text-shadow:0 1px 2px #0006;overflow-wrap:anywhere;flex:1;line-height:1.2;position:relative}.add-widget-row.is-selected{border-color:var(--app-accent);box-shadow:inset 0 1px 0 #ffffff29, 0 0 0 1px var(--app-accent), 0 12px 22px -10px color-mix(in srgb, var(--app-accent) 55%, transparent);transform:translateY(-1px)}.add-widget-row.is-selected .add-widget-row-label{font-weight:var(--w-bold)}.add-widget-tick{z-index:2;background:var(--app-accent);width:20px;height:20px;color:var(--on-accent);border-radius:50%;flex-shrink:0;place-items:center;font-size:13px;display:grid;position:relative;box-shadow:0 2px 6px #0006}.add-widget-preview{top:var(--s2);padding-top:calc(var(--t-micro) * 1.4 + var(--s2));position:sticky}.add-widget-stage{perspective:800px;padding:4px 0 14px}.add-widget-float{transform-origin:30%;filter:drop-shadow(0 22px 22px rgba(var(--shadow-tint), .45));animation:.52s cubic-bezier(.2,.8,.2,1) both add-widget-settle;transform:rotateY(-9deg)rotateX(5deg)}@keyframes add-widget-settle{0%{opacity:0;transform:rotateY(-22deg)rotateX(8deg)translateY(10px)}}@media (prefers-reduced-motion:reduce){.add-widget-float,.add-widget-row{animation:none;transform:none}}.add-widget-frame{width:100%;position:relative}.add-widget-card{transform-origin:0 0;border-radius:var(--r-card);padding:var(--s3) 14px var(--s4);background:var(--plane);border:var(--hairline);min-height:140px;box-shadow:var(--e2);flex-direction:column;display:flex;position:absolute;top:0;left:0}.add-widget-card-head{margin-bottom:var(--s2);color:var(--ink-2);align-items:center;gap:5px;display:flex}.add-widget-card-title{font-size:var(--t-micro);font-weight:var(--w-emph);color:var(--ink-2)}.add-widget-card-body{flex-direction:column;flex:1;justify-content:flex-end;gap:6px;margin:0;padding:0;list-style:none;display:flex}.add-widget-card-body li{align-items:center;gap:var(--s2);font-size:var(--t-footnote);color:var(--ink);display:flex}.add-widget-dot{background:var(--ink-3);border-radius:50%;flex:none;width:6px;height:6px}.add-widget-desc{margin:var(--s3) 0 0;font-size:var(--t-footnote);line-height:var(--lh-body);color:var(--ink-2)}.add-widget-footer{margin-top:var(--s5);padding:var(--s3) var(--s5) calc(var(--s5) + env(safe-area-inset-bottom));background:linear-gradient(to top, var(--app-surface) 55%, transparent);position:sticky;bottom:0}.add-widget-add-btn{width:100%}:root[data-mode=light] .add-widget-row{background:var(--app-surface);color:var(--app-text);box-shadow:inset 0 1px 0 #ffffffe6, 0 8px 16px -12px rgba(var(--shadow-tint), .4);border-color:#00000014}:root[data-mode=light] .add-widget-row .widget-scrim{background:#ffffffc7}:root[data-mode=light] .add-widget-row-label{color:var(--app-text);text-shadow:none}:root[data-mode=light] .add-widget-row.is-selected{border-color:var(--app-accent)}.page-header,.page-hero,.page-sub-header{margin-bottom:var(--s5)}.page-header-row{justify-content:space-between;align-items:center;gap:var(--s3);min-height:var(--tap);display:flex}.page-actions{align-items:center;gap:var(--s1);flex-shrink:0;margin-left:auto;display:flex}.page-title{font-family:var(--font-display);font-size:var(--t-display);font-weight:var(--w-regular);line-height:var(--lh-display);letter-spacing:0;color:var(--ink);min-width:0;margin:0}.page-date{font-size:var(--t-subhead);font-weight:var(--w-regular);color:var(--ink-2);margin:2px 0 0}.page-greeting{font-family:var(--font-display);font-size:var(--t-display);font-weight:var(--w-regular);letter-spacing:0;color:var(--ink);margin:var(--s2) 0 0;line-height:1.04}.page-greeting-name{color:var(--accent-on-bg);font-style:italic}.page-status{margin:var(--s2) 0 0;font-size:var(--t-callout);color:var(--ink-2);max-width:34ch;line-height:1.45}.page-status b{font-weight:var(--w-emph);color:var(--ink)}.page-status .status-sep{color:var(--ink-3);padding:0 2px}.page-sub-header{margin-bottom:var(--s4)}.page-back{width:var(--tap);height:var(--tap);margin:0 0 var(--s3);border-radius:var(--r-pill);color:var(--ink);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform var(--d-fast) var(--ease);border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.page-back:active{transform:scale(.92)}.page-back ion-icon{margin-left:-2px;font-size:22px}.page-actions{gap:var(--s2)}.page-actions .icon-btn{color:var(--ink);background:var(--glass-sheen), var(--glass-fill);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));box-shadow:0 6px 18px -8px rgba(var(--shadow-tint), .5);transition:transform var(--d-fast) var(--ease);position:relative}.page-actions .icon-btn:before{content:"";border-radius:inherit;background:var(--glass-edge);-webkit-mask-composite:xor;pointer-events:none;padding:1px;position:absolute;inset:0;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}.page-actions .icon-btn:active{background:var(--glass-sheen), var(--glass-fill-thick);transform:scale(.92)}.page-actions .icon-btn ion-icon{font-size:19px}.page-subtitle{font-family:var(--font-display);font-size:var(--t-title);font-weight:var(--w-regular);line-height:var(--lh-title);letter-spacing:0;color:var(--ink);min-width:0;margin:0}.page-actions .icon-btn--accent{color:var(--on-accent);background:var(--glass-sheen), color-mix(in srgb, var(--app-accent) 88%, transparent)}.home-content{--background:transparent}.home-inner{padding:var(--s3) var(--page-x) var(--s8);text-align:left;max-width:640px;margin:0 auto}.widget-grid{gap:var(--gutter);grid-template-columns:1fr 1fr;grid-auto-rows:minmax(140px,auto);display:grid}.widget-cell{--card-r:20px;min-width:0;display:flex}.widget-cell--wide{--card-r:24px;grid-column:span 2;min-height:180px}.widget-cell--large{--card-r:28px;grid-area:span 2/span 2}.widget-card{min-width:0;min-height:0;padding:var(--s3) 14px var(--s4);border-radius:var(--card-r,var(--r-card));background:var(--plane);border:var(--hairline);box-shadow:var(--e2);transition:transform var(--d-fast) var(--ease), box-shadow var(--d-base) var(--ease), border-color var(--d-base) var(--ease);flex-direction:column;flex:1;display:flex;position:relative}.widget-card--clickable{cursor:pointer;-webkit-tap-highlight-color:transparent}.widget-card--clickable:active{transform:scale(.975)}.widget-card--lit{border-color:color-mix(in srgb, var(--app-accent) 32%, transparent);box-shadow:var(--e2), var(--lit-edge), 0 0 26px -10px color-mix(in srgb, var(--app-accent) 55%, transparent)}.widget-card--lit .wicon{color:var(--accent-ink)}.widget-flag{border-radius:var(--r-pill);background:var(--app-accent);min-width:17px;height:17px;color:var(--on-accent);font-size:var(--t-micro);font-weight:var(--w-bold);text-align:center;flex-shrink:0;margin-left:auto;padding:0 4px;line-height:17px}.widget-card--glowup{animation:card-arrive var(--d-slow) var(--ease) backwards}@keyframes card-arrive{0%{opacity:0}to{opacity:1}}.widget-cell:first-child .widget-card--glowup{animation-delay:0s}.widget-cell:nth-child(2) .widget-card--glowup{animation-delay:45ms}.widget-cell:nth-child(3) .widget-card--glowup{animation-delay:90ms}.widget-cell:nth-child(4) .widget-card--glowup{animation-delay:.135s}.widget-cell:nth-child(n+5) .widget-card--glowup{animation-delay:.18s}@media (prefers-reduced-motion:reduce){.widget-card--glowup{animation:none}}.widget-head{margin-bottom:var(--s2);align-items:center;gap:5px;min-height:20px;display:flex}.widget-icon{color:var(--ink-2);transition:color var(--d-base) var(--ease);flex-shrink:0;display:flex}.widget-open{appearance:none;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;margin:-4px 0;padding:4px 0;font-family:inherit}.widget-open:focus-visible{outline:none}.widget-card:has(.widget-open:focus-visible){outline:2px solid var(--accent-on-bg);outline-offset:3px}.widget-title{font-size:var(--t-micro);font-weight:var(--w-emph);letter-spacing:.01em;color:var(--ink-2);white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.widget-body{flex-direction:column;flex:1;justify-content:flex-end;min-height:0;display:flex;overflow:hidden}.widget-msg{font-size:var(--t-callout);font-weight:var(--w-regular);color:var(--ink);line-height:var(--lh-body);margin:0}.widget-msg--head{font-weight:var(--w-emph);margin-bottom:var(--s1)}.widget-bignum,.widget-value{font-size:var(--t-display);font-weight:var(--w-bold);letter-spacing:var(--tr-display);color:var(--ink);font-variant-numeric:tabular-nums;line-height:1}.widget-value{font-size:var(--t-title)}.widget-subtitle{font-size:var(--t-subhead);font-weight:var(--w-regular);color:var(--ink-2);line-height:var(--lh-body);margin-top:3px}.widget-tasklist{margin:0;padding:0;list-style:none}.widget-tasklist li{align-items:flex-start;gap:var(--s2);font-size:var(--t-footnote);color:var(--ink);padding:2px 0;line-height:1.4;display:flex}.widget-tasklist .widget-dot{background:var(--ink-3);border-radius:50%;flex-shrink:0;width:6px;height:6px;margin-top:6px}.widget-tasklist .widget-dot.tone-soon{background:var(--warn)}.widget-tasklist .widget-dot.tone-expired{background:var(--alert)}.widget-task-text{overflow-wrap:anywhere;flex:1;min-width:0}.widget-task-more{color:var(--ink-2);font-size:var(--t-caption);padding-top:2px}.autoscroll{flex:1;min-height:0;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(#0000,#000 10px calc(100% - 12px),#0000);mask-image:linear-gradient(#0000,#000 10px calc(100% - 12px),#0000)}.autoscroll-inner{will-change:transform}@keyframes autoscroll-loop{0%{transform:translateY(0)}to{transform:translateY(calc(-1 * var(--loop-dist,0px)))}}@media (prefers-reduced-motion:reduce){.autoscroll-inner{animation:none!important}.autoscroll{-webkit-mask-image:none;mask-image:none}}.widget-split{gap:var(--s4);flex:1;align-items:stretch;min-height:0;display:flex}.widget-split-left{flex-direction:column;flex:0 0 32%;justify-content:flex-end;display:flex}.widget-split-right{border-left:var(--hairline);min-width:0;min-height:0;padding-left:var(--s4);flex:1}.shop-pager{flex-direction:column;flex:1;min-height:0;display:flex}.shop-pager-track{scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;flex:1;min-height:0;display:flex;overflow:auto hidden}.shop-pager-track::-webkit-scrollbar{display:none}.shop-page{scroll-snap-align:start;flex-direction:column;flex:0 0 100%;width:100%;min-width:0;min-height:0;display:flex}.shop-pager-dots{padding-top:var(--s2);justify-content:center;gap:6px;display:flex}.shop-pager-dot{background:var(--ink-3);width:6px;height:6px;transition:background var(--d-fast), transform var(--d-fast);border-radius:50%}.shop-pager-dot.is-active{background:var(--accent-ink);transform:scale(1.3)}.widget-weather{align-items:center;gap:var(--s3);min-width:0;display:flex}.widget-weather--lg{margin-bottom:var(--s2)}.widget-weather-main{flex-direction:column;min-width:0;display:flex}.widget-weather-temp{font-size:var(--t-display);font-weight:var(--w-bold);letter-spacing:var(--tr-display);color:var(--ink);font-variant-numeric:tabular-nums;line-height:1}.widget-weather--lg .widget-weather-temp{font-size:2.5rem}.widget-weather-cond{font-size:var(--t-footnote);color:var(--ink-2);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;overflow:hidden}.widget-weather-loc{font-size:var(--t-caption);font-weight:var(--w-medium);color:var(--ink-2);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.widget-weather-live-dot{border-radius:var(--r-pill);background:var(--accent-ink);vertical-align:middle;width:6px;height:6px;margin-left:5px;display:inline-block}.widget-weather-left{text-align:center;align-items:center}.widget-weather-aside{justify-content:center;gap:var(--s1);flex-direction:column;min-width:0;display:flex}.widget-weather-strip{justify-content:space-between;gap:var(--s1);display:flex}.widget-weather-day{flex-direction:column;flex:1 1 0;align-items:center;gap:2px;min-width:0;display:flex}.widget-weather-day-name{font-size:var(--t-micro);font-weight:var(--w-emph);color:var(--ink-2)}.widget-weather-day-temp{font-size:var(--t-caption);font-weight:var(--w-emph);color:var(--ink);font-variant-numeric:tabular-nums}.widget-list{flex:1;margin:0;padding:0;list-style:none}.widget-list li{align-items:center;gap:var(--s2);font-size:var(--t-footnote);color:var(--ink);padding:3px 0;display:flex}.widget-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.widget-arrows{gap:var(--s2);margin-top:var(--s2);justify-content:flex-end;display:flex}.widget-arrow{width:var(--tap-min);height:var(--tap-min);background:var(--fill);color:var(--ink);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:15px;display:flex}.widget-remove,.widget-resize{width:var(--tap-min);height:var(--tap-min);cursor:pointer;z-index:4;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:16px;display:none;position:absolute}.widget-remove{background:var(--alert);color:var(--on-alert);box-shadow:var(--e2);top:-7px;left:-7px}.widget-resize{bottom:var(--s2);right:var(--s2);background:var(--fill-strong);color:var(--ink);-webkit-backdrop-filter:none;backdrop-filter:none}.widget-grid.editing .widget-remove,.widget-grid.editing .widget-resize{display:flex}.widget-grid.editing .widget-card{animation:.32s ease-in-out infinite jiggle}.widget-grid.editing .widget-cell:nth-child(2n) .widget-card{animation-delay:-.16s}@keyframes jiggle{0%,to{transform:rotate(-.6deg)}50%{transform:rotate(.6deg)}}@media (prefers-reduced-motion:reduce){.widget-grid.editing .widget-card{border-color:var(--app-accent);animation:none}}.add-widget-tile{border:1.5px dashed var(--ink-line-strong);border-radius:var(--r-card);justify-content:center;align-items:center;gap:var(--s2);width:100%;min-height:52px;color:var(--accent-on-bg);font-family:inherit;font-weight:var(--w-emph);font-size:var(--t-subhead);cursor:pointer;margin-bottom:var(--gutter);background:0 0;display:flex}.add-widget-tile ion-icon{font-size:20px}.home-fab{right:var(--s5);bottom:calc(var(--nav-space) + var(--s2));z-index:29500;border-radius:var(--r-pill);cursor:pointer;-webkit-tap-highlight-color:transparent;width:58px;height:58px;transition:transform var(--d-fast) var(--ease);border:none;justify-content:center;align-items:center;font-size:26px;display:flex;position:fixed}.home-fab:active{transform:scale(.92)}.home-empty{padding:var(--s8) var(--s2);text-align:center}.home-empty-title{font-size:var(--t-title2);font-weight:var(--w-bold);letter-spacing:var(--tr-title);color:var(--ink);margin:0 0 var(--s2)}.home-empty-body{font-size:var(--t-subhead);color:var(--ink-2);line-height:var(--lh-body);margin:0 auto var(--s5);max-width:30ch}.widget-card--type-photos{isolation:isolate;padding:0}:is(.widget-card--type-photos:has(.widget-photos-img:not([style*=hidden]))>.widget-art,.widget-card--type-photos:has(.widget-photos-img:not([style*=hidden]))>.widget-scrim){display:none}.widget-card--type-photos .widget-photos{z-index:1}.widget-card.widget-card--type-photos>.widget-body{position:static}.widget-card--type-photos .widget-head{z-index:2;padding:var(--s3) var(--s4);background:linear-gradient(180deg, var(--glass-dim), transparent);margin:0;position:relative}.widget-card--type-photos .widget-title,.widget-card--type-photos .widget-icon{color:#fff;text-shadow:0 1px 3px #0000008c}:is(.widget-card--type-photos:has(.widget-photos--empty) .widget-title,.widget-card--type-photos:has(.widget-photos--empty) .widget-icon){color:var(--ink-2);text-shadow:none}.widget-card--type-photos .widget-body{padding:0 var(--s4) var(--s4)}.widget-card--type-photos .widget-remove,.widget-card--type-photos .widget-resize{z-index:4}.widget-photos{border-radius:var(--card-r,var(--r-card));z-index:0;background:var(--fill);position:absolute;inset:0;overflow:hidden}.widget-card:has(>.widget-art) .widget-photos{background:0 0}.widget-photos-img{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.widget-photos-img--front{animation:.8s both photo-fade-in}.widget-photos--empty{justify-content:center;align-items:center;display:flex}.widget-photos-empty{color:var(--ink-2);font-size:var(--t-footnote);padding:0 var(--s3);text-align:center}@keyframes photo-fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.widget-photos-img--front{animation:none}}.widget-go{top:var(--s3);right:var(--s3);z-index:3;border-radius:var(--r-pill);width:22px;height:22px;color:var(--ink-3);transition:transform var(--d-base) var(--ease), color var(--d-base) var(--ease);pointer-events:none;justify-content:center;align-items:center;font-size:13px;display:flex;position:absolute;transform:rotate(-45deg)}.widget-card--lit .widget-go{color:var(--accent-ink)}.widget-card--clickable:active .widget-go{transform:rotate(-45deg)translate(2px,-2px)}.widget-card--lit .widget-flag+.widget-go{display:none}@media (prefers-reduced-motion:reduce){.widget-go{transition:none}}.widget-card:has(>.widget-art){background:rgb(var(--scrim-rgb));box-shadow:inset 0 1px 0 #ffffff1a, 0 6px 22px rgba(var(--shadow-tint), var(--card-shadow-a,.32));text-shadow:0 1px 2px #00000059;color:#fff;--ink:#fff;--ink-2:#fffc;--ink-3:#fff9;--ink-line:#ffffff29;--accent-ink:var(--accent-on-photo);--alert:#ff8a7a;--warn:#ffc14d;--fill:#ffffff1f;--fill-strong:#ffffff38;--plate-bg:#00000038;--plate-border:#ffffff14;--plate-hi:inset 0 1px 0 #ffffff14;border:1px solid #ffffff14}:root[data-mode=light] .widget-card:has(>.widget-art){--card-shadow-a:.2}.widget-card--lit:has(>.widget-art){border-color:color-mix(in srgb, var(--app-accent) 55%, transparent);box-shadow:inset 0 1px 0 #ffffff1a, 0 6px 22px rgba(var(--shadow-tint), var(--card-shadow-a,.32)), 0 0 26px -10px color-mix(in srgb, var(--app-accent) 55%, transparent)}:is(.widget-card:has(>.widget-art) .widget-title,.widget-card:has(>.widget-art) .wicon){color:#fff}.widget-card--lit:has(>.widget-art) .wicon{color:var(--accent-on-photo)}:root[data-mode=light] .widget-card:has(>.widget-art){background:var(--app-surface);text-shadow:none;color:var(--app-text);--card-shadow-a:.16;--ink:var(--app-text);--ink-2:color-mix(in srgb, var(--app-text) 72%, #fff);--ink-3:color-mix(in srgb, var(--app-text) 55%, #fff);--ink-line:#0000001a;--accent-ink:var(--accent-on-chip);--alert:#c0392b;--warn:#a1660a;--fill:#0000000d;--fill-strong:#0000001a;--plate-bg:#ffffffb8;--plate-border:#0000000f;--plate-hi:inset 0 1px 0 #ffffffe6;border-color:#0000000f}:root[data-mode=light] .widget-card:has(>.widget-art) .widget-head{-webkit-backdrop-filter:blur(12px)saturate(1.4);backdrop-filter:blur(12px)saturate(1.4);background:#ffffffd1;border-radius:999px;align-self:flex-start;max-width:calc(100% - 36px);margin-left:-4px;padding:5px 11px 5px 8px;box-shadow:0 0 0 1px #0000000d,0 4px 12px -6px #00000040}:is(:root[data-mode=light] .widget-card:has(>.widget-art) .widget-title,:root[data-mode=light] .widget-card:has(>.widget-art) .wicon){color:var(--app-text)}:root[data-mode=light] .widget-card--lit:has(>.widget-art) .wicon{color:var(--accent-on-chip)}:root[data-mode=light] .widget-card:has(>.widget-art) .widget-go{color:var(--app-text);background:#ffffffd1;border-color:#0000000f}:root[data-mode=light] .widget-card--type-photos .widget-title,:root[data-mode=light] .widget-card--type-photos .wicon{text-shadow:none}:root[data-mode=light] .widget-cell--small .widget-card:has(>.widget-art) .widget-go{display:none}:root[data-mode=light] .widget-cell--small .widget-card:has(>.widget-art) .widget-head{max-width:calc(100% + 4px)}:is(.widget-cell--wide .widget-scrim,.widget-cell--large .widget-scrim,.widget-card:has(.widget-checks) .widget-scrim){--scrim-solid:78%;--scrim-fade:100%}.widget-card:has(>.widget-art) .widget-photos--empty{background:0 0}.widget-cell--large .widget-card:has(>.widget-art) .autoscroll{flex:0 auto}.widget-card:has(>.widget-art) .widget-go{color:#fff;width:26px;height:26px;-webkit-backdrop-filter:blur(var(--glass-clear-blur));backdrop-filter:blur(var(--glass-clear-blur));background:#ffffff24;border:1px solid #ffffff3d}.widget-checks{flex-direction:column;gap:4px;min-width:0;margin:0;padding:0;list-style:none;display:flex}.widget-check{width:100%;min-height:36px;font-family:inherit;font-size:var(--t-footnote);text-align:left;color:var(--ink);text-shadow:inherit;background:var(--plate-bg,var(--fill));border:1px solid var(--plate-border,transparent);box-shadow:var(--plate-hi,none);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);-webkit-tap-highlight-color:transparent;transition:transform var(--d-fast) var(--ease), background var(--d-fast) var(--ease);border-radius:12px;align-items:center;gap:10px;padding:6px 10px;line-height:1.3;display:flex}button.widget-check{cursor:pointer}button.widget-check:active{background:var(--fill-strong);transform:scale(.98)}button.widget-check:focus-visible{outline:2px solid var(--ink);outline-offset:1px}.widget-check-box{border:1.5px solid var(--ink-2);width:18px;height:18px;transition:background var(--d-fast) var(--ease), border-color var(--d-fast) var(--ease);border-radius:50%;flex-shrink:0;place-items:center;font-size:12px;display:grid}.widget-check.is-done .widget-check-box{background:var(--accent-ink);border-color:var(--accent-ink);color:rgb(var(--scrim-rgb))}.widget-check-text{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.widget-check.is-done .widget-check-text{color:var(--ink-2);text-decoration:line-through}.widget-check-urgent{background:var(--alert);border-radius:50%;flex-shrink:0;width:7px;height:7px}.widget-more{font-size:var(--t-caption);color:var(--ink-2);margin:6px 0 0}.widget-split-right--checks{border-left:0;flex-direction:column;justify-content:flex-end;padding-left:0;display:flex}@media (prefers-reduced-transparency:reduce){.widget-check{-webkit-backdrop-filter:none;backdrop-filter:none}.widget-card:has(>.widget-art){--plate-bg:rgba(var(--scrim-rgb), .82)}}@media (prefers-reduced-motion:reduce){.widget-check,.widget-check-box{transition:none}}.settings-content{--background:transparent}.settings-inner{padding:40px var(--page-x) var(--s8);text-align:left;max-width:640px;margin:0 auto}.set-group+.set-group{margin-top:var(--s6)}.set-row-icon{width:28px;height:28px;color:var(--ink-2);flex:none;place-items:center;display:grid}.set-row-icon ion-icon{font-size:20px}.set-row-icon--ok{color:var(--ok)}.set-panel{background:var(--plane);border:var(--hairline);border-radius:var(--r-card);box-shadow:var(--e1);padding:var(--s4);margin-bottom:var(--s4)}.set-card-title{font-size:var(--t-headline);font-weight:var(--w-emph);color:var(--ink);margin-bottom:var(--s3)}.set-section-label{align-items:center;gap:var(--s2);font-size:var(--t-caption);letter-spacing:var(--tr-eyebrow);text-transform:uppercase;color:var(--ink-3);font-weight:var(--w-emph);margin:var(--s6) var(--s2) var(--s2);display:flex}.set-section-label ion-icon{font-size:15px}.settings-inner>.set-section-label:first-of-type{margin-top:var(--s4)}.set-sublabel{font-size:var(--t-footnote);font-weight:var(--w-emph);color:var(--ink-2);margin:var(--s4) var(--s2) var(--s2)}.set-card{gap:var(--s2);flex-direction:column;display:flex}.set-row{align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);background:var(--plane);border:var(--hairline);border-radius:var(--r-card);min-height:56px;box-shadow:var(--e1);display:flex}.set-row-head{align-items:center;gap:var(--s3);width:100%;display:flex}.set-row-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.set-row-label{font-size:var(--t-body);font-weight:var(--w-regular);color:var(--ink)}.set-row-sub{font-size:var(--t-footnote);color:var(--ink-2);line-height:var(--lh-body)}.set-row--tap{cursor:pointer;-webkit-tap-highlight-color:transparent}.set-row--tap:active{background:var(--fill)}.set-select{--padding-start:var(--s2);--padding-end:4px;color:var(--accent-ink);font-weight:var(--w-emph);font-size:var(--t-subhead);flex:none;max-width:55%}.set-select::part(icon){color:var(--accent-ink);opacity:1}.set-card--colors .set-row{min-height:52px}.set-swatch{border:2px solid var(--ink-line-strong);width:32px;height:32px;box-shadow:var(--e1);border-radius:50%;flex:none;position:relative;overflow:hidden}.set-swatch input[type=color]{cursor:pointer;opacity:0;background:0 0;border:none;width:calc(100% + 12px);height:calc(100% + 12px);padding:0;position:absolute;inset:-6px}.set-seg{gap:var(--s1);background:var(--plane-sunk);border:var(--hairline);border-radius:var(--r-control);grid-template-columns:1fr 1fr;padding:4px;display:grid}.set-seg-btn{justify-content:center;align-items:center;gap:var(--s2);border-radius:calc(var(--r-control) - 4px);min-height:38px;color:var(--ink-2);font-family:inherit;font-size:var(--t-subhead);font-weight:var(--w-emph);cursor:pointer;transition:background var(--d-base) var(--ease), color var(--d-base) var(--ease);-webkit-tap-highlight-color:transparent;background:0 0;border:none;display:inline-flex}.set-seg-btn ion-icon{font-size:17px}.set-seg-btn.on{background:var(--app-surface);color:var(--ink);box-shadow:var(--e1)}.set-presets{gap:var(--s2);grid-template-columns:repeat(auto-fill,minmax(92px,1fr));display:grid}.set-preset{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;align-items:stretch;gap:6px;padding:0;display:flex}.set-preset-prev{border-radius:var(--r-control);border:2px solid var(--ink-line);height:56px;transition:border-color var(--d-base) var(--ease), transform var(--d-fast) var(--ease);box-shadow:var(--e1);position:relative;overflow:hidden}.set-preset:active .set-preset-prev{transform:scale(.96)}.set-preset--active .set-preset-prev{border-color:var(--app-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--app-accent) 30%, transparent)}.set-preset-chip{border-radius:6px;position:absolute;inset:11px 26px 11px 10px}.set-preset-acc{border-radius:50%;width:12px;height:12px;position:absolute;bottom:11px;right:10px}.set-preset-check{background:var(--app-accent);width:18px;height:18px;color:var(--on-accent);border-radius:50%;place-items:center;display:grid;position:absolute;top:6px;right:6px}.set-preset-check ion-icon{font-size:12px}.set-preset-name{font-size:var(--t-caption);font-weight:var(--w-medium);color:var(--ink);text-align:center}.set-disclosure{width:100%;min-height:var(--tap);margin:var(--s4) 0 0;padding:var(--s2) var(--s1);color:var(--ink-2);font-family:inherit;font-size:var(--t-subhead);font-weight:var(--w-emph);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;justify-content:space-between;align-items:center;display:flex}.set-disclosure-caret{transition:transform var(--d-base) var(--ease);font-size:18px;line-height:1}.set-disclosure-caret.open{transform:rotate(180deg)}.set-card--colors{margin-top:var(--s2)}.set-actions{align-items:center;gap:var(--s2);margin:var(--s5) 0 var(--s1);display:flex}.set-btn-primary{--background:var(--app-accent);--background-activated:var(--app-accent);--background-hover:var(--app-accent);--color:var(--on-accent);--border-radius:var(--r-pill);--box-shadow:var(--e2);font-weight:var(--w-emph);text-transform:none}.set-btn-ghost{--color:var(--ink-2);text-transform:none;font-weight:var(--w-emph)}.set-btn-danger{--border-radius:var(--r-pill);--background:var(--alert);--color:var(--on-alert);text-transform:none;font-weight:var(--w-emph);flex:none}.set-saved{color:var(--accent-ink);font-weight:var(--w-emph);font-size:var(--t-subhead);margin-left:auto}.set-row--form{align-items:stretch;gap:var(--s3);flex-direction:column}.set-input{box-sizing:border-box;width:100%;min-height:var(--tap);background:var(--plane-sunk);border:var(--hairline);border-radius:var(--r-control);padding:var(--s3) var(--s4);color:var(--ink);font:inherit;font-size:var(--t-body);transition:border-color var(--d-fast) var(--ease), box-shadow var(--d-fast) var(--ease);outline:none}.set-input::placeholder{color:var(--ink-3)}.set-input:focus{border-color:var(--app-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--app-accent) 22%, transparent)}.set-badge{font-size:var(--t-micro);font-weight:var(--w-bold);letter-spacing:.04em;text-transform:uppercase;border-radius:var(--r-pill);background:var(--fill);color:var(--ink-2);flex:none;align-items:center;gap:4px;padding:5px 10px;display:inline-flex}.set-badge--ok{color:var(--ok);background:color-mix(in srgb, var(--ok) 15%, transparent)}.set-badge ion-icon{font-size:13px}.set-note{margin:var(--s2) var(--s2) 0;font-size:var(--t-footnote);color:var(--ink-2);line-height:var(--lh-body);display:block}@media (prefers-reduced-motion:reduce){.set-preset-prev,.set-disclosure-caret,.set-seg-btn{transition:none}}.set-macro{align-items:center;gap:var(--s3);color:var(--ink);font-size:var(--t-body);grid-template-columns:7.5rem 1fr;display:grid}.wxloc{--wxloc-card:color-mix(in srgb, var(--app-surface) 70%, transparent);--wxloc-hairline:color-mix(in srgb, var(--app-text) 10%, transparent);--wxloc-muted:color-mix(in srgb, var(--app-text) 55%, transparent);--wxloc-faint:color-mix(in srgb, var(--app-text) 38%, transparent);flex-direction:column;gap:14px;display:flex}.wxloc-current{color:var(--app-text);align-items:center;gap:6px;font-size:16px;font-weight:700;display:flex}.wxloc-current ion-icon{color:var(--app-accent);font-size:18px}.wxloc-error{color:var(--alert);margin:0;font-size:14px}.wxloc-live-row{background:var(--wxloc-card);border:1px solid var(--wxloc-hairline);border-radius:12px;align-items:center;gap:12px;padding:12px 14px;display:flex}.wxloc-live-text{flex-direction:column;flex:1;gap:2px;display:flex}.wxloc-live-label{color:var(--app-text);font-size:15px;font-weight:600}.wxloc-live-sub{color:var(--wxloc-muted);font-size:12px}.wxloc-search{align-items:center;display:flex;position:relative}.wxloc-search-icon{color:var(--wxloc-muted);pointer-events:none;font-size:20px;position:absolute;left:12px}.wxloc-search-input{background:var(--app-bg);border:1px solid var(--wxloc-hairline);width:100%;color:var(--app-text);border-radius:12px;outline:none;padding:12px 40px;font-size:16px;transition:border-color .15s}.wxloc-search-input::placeholder{color:var(--wxloc-faint)}.wxloc-search-input:focus{border-color:var(--app-accent)}.wxloc-search-spinner{width:20px;height:20px;color:var(--wxloc-muted);position:absolute;right:12px}.wxloc-results{background:var(--app-bg);border:1px solid var(--wxloc-hairline);border-radius:12px;flex-direction:column;gap:2px;margin:0;padding:4px;list-style:none;display:flex}.wxloc-result{width:100%;color:var(--app-text);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:9px;align-items:center;gap:8px;padding:10px 12px;font-size:15px;display:flex}.wxloc-result ion-icon{color:var(--wxloc-muted);font-size:18px}.wxloc-result:hover{background:color-mix(in srgb, var(--app-text) 7%, transparent)}.wxloc-result:disabled{opacity:.5}.wxloc-recents-label{letter-spacing:.08em;text-transform:uppercase;color:var(--wxloc-muted);margin-bottom:8px;font-size:12px;font-weight:700}.wxloc-chips{flex-wrap:wrap;gap:8px;display:flex}.wxloc-chip{background:color-mix(in srgb, var(--app-text) 8%, transparent);border-radius:999px;align-items:center;gap:4px;padding:4px 6px 4px 12px;display:inline-flex}.wxloc-chip--active{background:color-mix(in srgb, var(--app-accent) 22%, transparent)}.wxloc-chip-set{color:var(--app-text);cursor:pointer;background:0 0;border:none;padding:0;font-size:14px}.wxloc-chip-remove{width:20px;height:20px;color:var(--wxloc-muted);cursor:pointer;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.wxloc-chip-remove ion-icon{font-size:15px}.wxloc-gps{background:var(--app-accent);width:100%;color:var(--app-bg);cursor:pointer;border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:13px;font-size:15px;font-weight:700;transition:opacity .15s,transform .1s;display:flex}.wxloc-gps ion-icon{font-size:18px}.wxloc-gps:active{transform:scale(.98)}.wxloc-gps:disabled{opacity:.6}.todos-content{--background:transparent}.todos-inner{padding:40px var(--page-x) 120px;text-align:left;max-width:640px;margin:0 auto}:root{--todo-urgent:var(--alert);--todo-muted:color-mix(in srgb, var(--app-text) 50%, transparent);--todo-hairline:color-mix(in srgb, var(--app-text) 8%, transparent)}.todos-head-text h1{font-size:var(--t-display);font-weight:var(--w-bold);letter-spacing:var(--tr-display);color:var(--app-text);margin:0;line-height:1}.todos-head-text p{color:var(--todo-muted);margin:8px 0 0;font-size:14px}.todos-head-text b{color:var(--app-text);font-variant-numeric:tabular-nums}.todos-ring svg{display:block;transform:rotate(-90deg)}.todos-section-label.urgent{color:var(--todo-urgent)}.todos-section-label.urgent .todos-count{background:color-mix(in srgb, var(--todo-urgent) 16%, transparent);color:var(--todo-urgent)}.todo-sliding.item-sliding-active-slide .todo-card{--border-radius:18px 0 0 18px;border-right:none;border-radius:18px 0 0 18px}.todo-sliding ion-item-options{border:none}.todo-sliding ion-item-option{--button-color:#fff;border-radius:0 18px 18px 0;width:72px}.todo-card.urgent{border-color:color-mix(in srgb, var(--todo-urgent) 35%, transparent);position:relative}.todo-card.urgent::part(native){border-left:3px solid var(--todo-urgent)}.todo-check{border:2px solid var(--todo-muted);border-radius:50%;place-items:center;width:24px;height:24px;margin-right:14px;transition:background .2s,border-color .2s;display:grid}.todo-check ion-icon{color:var(--on-accent);opacity:0;font-size:14px;transition:opacity .2s,transform .2s;transform:scale(.4)}.todo-card.done .todo-check{background:var(--app-accent);border-color:var(--app-accent)}.todo-card.done .todo-check ion-icon{opacity:1;transform:scale(1)}.todo-body{flex-direction:column;flex:1;gap:3px;min-width:0;padding:12px 0;display:flex}.todo-card.done .todo-text{color:var(--todo-muted);text-decoration:line-through}.todo-chip{font-size:var(--t-micro);letter-spacing:1px;text-transform:uppercase;color:var(--todo-urgent);background:color-mix(in srgb, var(--todo-urgent) 12%, transparent);border-radius:999px;flex:none;padding:4px 9px;font-weight:700}.todos-list.completed .todo-card{--background:transparent}.todos-list.completed{box-shadow:none;opacity:.75;background:0 0}.todos-loading{justify-content:center;padding:48px 0;display:flex}.todos-empty{text-align:center;padding:64px 24px}.todos-empty-title{color:var(--app-text);margin:0 0 6px;font-size:20px;font-weight:700}.todos-empty-sub{color:var(--todo-muted);margin:0;font-size:14px}.todos-fab{margin-bottom:calc(var(--nav-h) + var(--nav-gap) * 2 + env(safe-area-inset-bottom));margin-right:6px}.todo-add-modal{--height:auto;--width:100%;--backdrop-opacity:1;align-items:flex-end}.todo-add-modal::part(backdrop){background:#00000061}@media (prefers-reduced-transparency:reduce){.todo-add-modal::part(backdrop){-webkit-backdrop-filter:none;backdrop-filter:none}}.todo-add-modal::part(content){background:var(--glass-sheen), var(--glass-fill-thick);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));box-shadow:var(--glass-shadow), inset 0 1px 0 rgba(255, 255, 255, var(--edge-hi));width:calc(100% - 16px);margin:0 8px 8px;margin-bottom:calc(8px + var(--kb-offset,0px));border-radius:32px;transition:margin-bottom .25s}.todo-add-body{padding:20px 20px calc(16px + env(safe-area-inset-bottom));flex-direction:column;gap:14px;display:flex}.todo-add-title{color:var(--app-text);margin:0 0 2px;font-size:30px;font-weight:700}.todo-add-input{--background:var(--plane-sunk);--color:var(--app-text);--placeholder-color:var(--todo-muted);--padding-start:16px;--padding-end:16px;--padding-top:14px;--padding-bottom:14px;border:1px solid var(--todo-hairline);border-radius:14px;margin:0}.todo-add-toggle{width:100%;font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;justify-content:space-between;align-items:center;margin:0;padding:0;display:flex}.todo-add-toggle:focus-visible{outline:2px solid var(--app-accent);outline-offset:4px;border-radius:10px}.todo-add-row-label{color:var(--app-text);align-items:center;gap:10px;font-size:15px;font-weight:500;display:inline-flex}.todo-add-dot{background:var(--app-accent);width:9px;height:9px;box-shadow:0 0 8px var(--app-accent);border-radius:50%}.todo-add-switch{background:color-mix(in srgb, var(--app-text) 12%, transparent);border:1px solid var(--todo-hairline);border-radius:999px;flex:none;width:50px;height:30px;transition:background .2s;position:relative}.todo-add-switch:after{content:"";background:var(--todo-muted);border-radius:50%;width:22px;height:22px;transition:transform .2s,background .2s;position:absolute;top:3px;left:3px}.todo-add-toggle.on .todo-add-switch{background:color-mix(in srgb, var(--app-accent) 25%, transparent)}.todo-add-toggle.on .todo-add-switch:after{background:var(--app-accent);transform:translate(20px)}@media (prefers-reduced-motion:reduce){.todo-add-switch,.todo-add-switch:after{transition:none}}.todo-add-btn{--background:var(--app-accent);--background-activated:var(--app-accent);--color:var(--on-accent);--border-radius:14px;text-transform:none;margin:4px 0 0;font-weight:800}@keyframes trash-toss{0%{transform:scale(1)rotate(0)}25%{transform:scale(1.4)rotate(-18deg)}50%{transform:scale(1.4)rotate(16deg)}75%{transform:scale(1.4)rotate(-12deg)}to{opacity:0;transform:scale(.6)rotate(0)}}.trash-tossing{animation:.45s ease-in-out forwards trash-toss}@media (prefers-reduced-motion:reduce){.ring-fill,.todo-check,.todo-check ion-icon,.todo-card{transition:none}}.calendar-content{--background:transparent}.calendar-inner{padding:40px var(--page-x) 120px;text-align:left;max-width:640px;margin:0 auto}:root{--cal-muted:color-mix(in srgb, var(--app-text) 50%, transparent);--cal-hairline:color-mix(in srgb, var(--app-text) 10%, transparent)}.calendar-header{justify-content:space-between;align-items:center;gap:12px;margin:0 0 18px;display:flex}.calendar-title{font-family:var(--font-display);font-size:var(--t-display);font-weight:var(--w-regular);color:var(--app-text);margin:0;line-height:1}.calendar-today-btn{font:inherit;color:var(--accent-on-chip);background:color-mix(in srgb, var(--app-accent) 14%, transparent);border:1px solid color-mix(in srgb, var(--app-accent) 30%, transparent);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:999px;flex:none;padding:7px 16px;font-size:14px;font-weight:700;transition:opacity .15s}.calendar-today-btn:disabled{color:var(--ink-3);border-color:var(--ink-line);cursor:default;background:0 0}.cal-card{background:radial-gradient(120% 55% at 50% 0%, color-mix(in srgb, var(--app-accent) 7%, transparent), transparent 60%), var(--plane);border:1px solid color-mix(in srgb, var(--ink) 10%, transparent);margin:0 0 var(--s5);box-shadow:inset 0 1px 0 rgba(255, 255, 255, var(--edge-lo,.06)), 0 24px 48px -28px rgba(var(--shadow-tint), .8), 0 2px 6px -2px rgba(var(--shadow-tint), .3);border-radius:28px;padding:14px 12px 12px;position:relative;overflow:hidden}.cal-toolbar{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.cal-nav{width:var(--tap);height:var(--tap);border:1px solid color-mix(in srgb, var(--ink) 12%, transparent);background:linear-gradient(180deg, color-mix(in srgb, var(--ink) 10%, transparent), transparent), color-mix(in srgb, var(--ink) 4%, transparent);box-shadow:inset 0 1px 0 rgba(255, 255, 255, var(--edge-mid,.2)), 0 6px 14px -8px rgba(var(--shadow-tint), .6);color:var(--app-text);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform var(--d-fast) var(--ease);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:18px;display:flex}.cal-nav:active{transform:scale(.92)}.cal-period-selectors{align-items:center;gap:8px;display:flex}.cal-period-field{position:relative}.cal-period-trigger{font:inherit;color:var(--app-text);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:10px;align-items:center;gap:4px;padding:6px 8px;font-size:17px;font-weight:700;display:inline-flex}.cal-period-trigger.open{color:var(--app-accent)}.cal-period-caret{opacity:.7;font-size:14px;transition:transform .2s}.cal-period-trigger.open .cal-period-caret{transform:rotate(180deg)}.cal-period-menu{z-index:20;background:var(--app-surface);border:1px solid var(--cal-hairline);border-radius:14px;flex-direction:column;gap:2px;min-width:120px;max-height:240px;padding:6px;animation:.18s cubic-bezier(.22,1,.36,1) both cal-menu-in;display:flex;position:absolute;top:calc(100% + 6px);left:50%;overflow-y:auto;transform:translate(-50%);box-shadow:0 18px 40px #00000059}@keyframes cal-menu-in{0%{opacity:0;transform:translate(-50%,-8px)scale(.97)}}.cal-period-option{font:inherit;text-align:center;color:var(--app-text);white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:9px;padding:9px 14px;font-size:15px;font-weight:500}.cal-period-option:active{background:color-mix(in srgb, var(--app-text) 8%, transparent)}.cal-period-option.active{color:var(--app-accent);background:color-mix(in srgb, var(--app-accent) 14%, transparent);font-weight:700}.cal-weekdays{grid-template-columns:repeat(7,1fr);margin-bottom:4px;display:grid}.cal-weekdays span{text-align:center;letter-spacing:.4px;text-transform:uppercase;color:var(--cal-muted);padding:4px 0;font-size:11px;font-weight:700}.cal-weekdays span.weekend{color:var(--ink-3)}.cal-grid{touch-action:pan-y;grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.cal-grid.slide-next{animation:.34s cubic-bezier(.2,.8,.2,1) cal-slide-next}.cal-grid.slide-prev{animation:.34s cubic-bezier(.2,.8,.2,1) cal-slide-prev}@keyframes cal-slide-next{0%{opacity:0;transform:translate(22px)}}@keyframes cal-slide-prev{0%{opacity:0;transform:translate(-22px)}}.cal-day{aspect-ratio:1/1.02;color:var(--ink);font:inherit;font-size:var(--t-callout);font-weight:var(--w-medium);font-variant-numeric:tabular-nums;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--d-fast) var(--ease), transform var(--d-fast) var(--ease);background:0 0;border:none;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:3px;display:flex;position:relative}.cal-day:active{transform:scale(.94)}.cal-day.weekend{color:var(--ink-2)}.cal-day.outside{color:var(--ink-3);font-weight:var(--w-regular)}.cal-day:focus-visible{outline:2px solid var(--accent-ink);outline-offset:-2px}.cal-day.today:before{content:"";border:1.5px solid color-mix(in srgb, var(--app-accent) 70%, transparent);border-radius:13px;position:absolute;inset:3px}.cal-day.today .cal-day-num{color:var(--accent-ink);font-weight:var(--w-bold)}.cal-day.selected:before{content:"";background:linear-gradient(180deg, color-mix(in srgb, #fff 22%, var(--app-accent)) 0%, var(--app-accent) 55%, color-mix(in srgb, #000 14%, var(--app-accent)) 100%);box-shadow:inset 0 1px 0 #ffffff73, inset 0 -2px 4px #0000002e, 0 10px 18px -8px color-mix(in srgb, var(--app-accent) 70%, transparent);border:none;border-radius:13px;position:absolute;inset:3px}.cal-day.selected .cal-day-num{color:var(--on-accent);font-weight:var(--w-bold)}.cal-day-num{z-index:1;line-height:1;position:relative}.cal-day-dots{z-index:1;align-items:center;gap:2px;height:5px;display:flex;position:relative}.cal-dot{background:var(--tone,var(--app-accent));border-radius:50%;width:5px;height:5px}.cal-dot-more{font-size:9px;line-height:5px;font-weight:var(--w-bold);color:var(--ink-2)}.cal-day.selected .cal-dot{background:var(--on-accent)}.cal-day.selected .cal-dot-more{color:var(--on-accent)}.cal-day.outside .cal-day-dots{opacity:.5}@media (prefers-reduced-motion:reduce){.cal-period-menu{animation:none}.cal-period-caret{transition:none}}.cal-day-section{margin-top:var(--s2)}.cal-day-head{align-items:center;gap:var(--s4);margin:0 var(--s1) var(--s4);perspective:600px;display:flex}.cal-tearoff{background:linear-gradient(180deg, color-mix(in srgb, #fff 6%, var(--app-surface)), var(--app-surface));width:74px;height:84px;box-shadow:inset 0 1px 0 rgba(255, 255, 255, var(--edge-lo,.06)), 0 0 0 1px color-mix(in srgb, var(--ink) 10%, transparent), 0 3px 0 -1px color-mix(in srgb, var(--ink) 14%, var(--app-surface)), 0 6px 0 -2px color-mix(in srgb, var(--ink) 9%, var(--app-surface)), 0 18px 26px -14px rgba(var(--shadow-tint), .8);border-radius:16px;flex-direction:column;flex:none;align-items:center;display:flex;position:relative;overflow:hidden}.cal-tearoff-face{flex-direction:column;align-self:stretch;align-items:center;display:flex}.cal-tearoff-wrap{flex:none;width:74px;height:84px;position:relative}.cal-sheet{z-index:2;pointer-events:none;background:linear-gradient(180deg, color-mix(in srgb, #fff 16%, var(--app-accent)) 0, var(--app-accent) 21px, transparent 21px), linear-gradient(180deg, color-mix(in srgb, #fff 6%, var(--app-surface)), var(--app-surface));box-shadow:inset 0 1px 0 rgba(255, 255, 255, var(--edge-lo,.06)), 0 0 0 1px color-mix(in srgb, var(--ink) 12%, transparent), 0 12px 20px -10px rgba(var(--shadow-tint), .85);transform-origin:50% 90%;animation:.56s cubic-bezier(.45,0,.2,1) both cal-riffle;animation-delay:calc(var(--i) * 80ms);border-radius:16px;position:absolute;inset:0}@keyframes cal-riffle{0%{opacity:1;transform:translate(0)rotate(0)}45%{opacity:1;transform:translate(calc(var(--dir) * 52px), -8px) rotate(calc(var(--dir) * 14deg))}82%{opacity:1;transform:translate(calc(var(--dir) * -3px), -2px) rotate(calc(var(--dir) * -2deg))}to{opacity:0;transform:translate(0)rotate(0)}}.cal-tearoff.is-shuffled{animation:cal-deck .56s var(--ease) both}@keyframes cal-deck{30%{transform:translate(-3px)rotate(-2deg)}65%{transform:translate(2px)rotate(1deg)}}.cal-tearoff-face.is-shuffled{animation:cal-print .2s var(--ease) .18s both}@keyframes cal-print{0%{opacity:0}}.cal-events--dealt>li{animation:.42s cubic-bezier(.2,.8,.2,1) both cal-deal;animation-delay:calc(.36s + var(--i) * 70ms)}@keyframes cal-deal{0%{opacity:0;transform:translateY(-12px)scale(.97)}}.cal-tearoff-month{text-align:center;font-size:var(--t-micro);font-weight:var(--w-bold);letter-spacing:.1em;text-transform:uppercase;color:var(--on-accent);background:linear-gradient(180deg, color-mix(in srgb, #fff 16%, var(--app-accent)), var(--app-accent));align-self:stretch;padding:5px 0 4px;box-shadow:inset 0 -1px #00000026}.cal-tearoff-day{font-family:var(--font-display);color:var(--ink);font-variant-numeric:tabular-nums;margin-top:6px;font-size:2.15rem;line-height:1}.cal-tearoff-weekday{font-size:var(--t-micro);font-weight:var(--w-emph);color:var(--ink-2);text-transform:uppercase;letter-spacing:.06em;margin-top:1px}.cal-day-titles{min-width:0}.cal-day-heading{font-family:var(--font-display);font-size:var(--t-title);font-weight:var(--w-regular);color:var(--ink);text-transform:capitalize;margin:0;line-height:1.05}.cal-day-date{font-size:var(--t-subhead);color:var(--ink-2);margin:3px 0 0}.cal-day-summary{font-size:var(--t-footnote);font-weight:var(--w-emph);color:var(--accent-on-bg);min-height:1.2em;margin:6px 0 0}.calendar-loading{justify-content:center;padding:32px 0;display:flex}.calendar-empty{color:var(--cal-muted);margin:8px 6px;font-size:14px}.cal-empty{justify-content:space-between;align-items:center;gap:var(--s3);padding:var(--s4);border:1px dashed var(--ink-line-strong);color:var(--ink-2);font-size:var(--t-subhead);border-radius:20px;display:flex}.cal-empty p{margin:0}.cal-empty-add{min-height:var(--tap);border:1px solid color-mix(in srgb, var(--app-accent) 35%, transparent);background:color-mix(in srgb, var(--app-accent) 14%, transparent);color:var(--accent-on-chip);font-family:inherit;font-size:var(--t-footnote);font-weight:var(--w-emph);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:999px;flex:none;align-items:center;gap:5px;padding:0 14px;display:inline-flex}.cal-events{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.cal-event{border:1px solid color-mix(in srgb, var(--ink) 9%, transparent);background:linear-gradient(90deg, color-mix(in srgb, var(--tone,var(--app-accent)) 9%, transparent), transparent 45%), var(--plane);width:100%;min-height:60px;box-shadow:inset 0 1px 0 rgba(255, 255, 255, var(--edge-lo,.06)), 0 10px 20px -16px rgba(var(--shadow-tint), .8);color:var(--ink);text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform var(--d-fast) var(--ease);border-radius:18px;grid-template-columns:62px 3px minmax(0,1fr);align-items:stretch;gap:12px;padding:12px 14px 12px 12px;font-family:inherit;display:grid}.cal-event:active{transform:scale(.98)}.cal-event-when{flex-direction:column;justify-content:center;gap:3px;min-width:0;display:flex}.cal-event-day{font-size:var(--t-micro);font-weight:var(--w-bold);letter-spacing:.04em;text-transform:uppercase;color:var(--accent-on-bg)}.cal-event-time{font-size:var(--t-caption);font-weight:var(--w-emph);color:var(--ink-2);font-variant-numeric:tabular-nums;line-height:1.25}.cal-event-bar{background:var(--tone,var(--app-accent));box-shadow:0 0 10px -1px color-mix(in srgb, var(--tone,var(--app-accent)) 60%, transparent);border-radius:3px}.cal-event-main{flex-direction:column;justify-content:center;align-items:flex-start;gap:3px;min-width:0;display:flex}.cal-event-title{font-size:var(--t-callout);font-weight:var(--w-emph);overflow-wrap:anywhere;line-height:1.25}.cal-event-notes{font-size:var(--t-footnote);color:var(--ink-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.3;display:-webkit-box;overflow:hidden}.cal-event-chip{font-size:var(--t-micro);font-weight:var(--w-emph);color:var(--ink-2);border:1px solid var(--ink-line-strong);border-radius:999px;margin-top:2px;padding:2px 8px}.cal-upcoming{margin-top:var(--s6)}.cal-section-title{margin:0 var(--s1) var(--s3);font-size:var(--t-caption);font-weight:var(--w-bold);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}@media (prefers-reduced-motion:reduce){.cal-grid.slide-next,.cal-grid.slide-prev,.cal-tearoff,.cal-tearoff-face.is-shuffled,.cal-tearoff.is-shuffled,.cal-events--dealt>li{animation:none}.cal-sheet{display:none}}.calendar-fab{margin-bottom:calc(var(--nav-h) + var(--nav-gap) * 2 + env(safe-area-inset-bottom));margin-right:6px}.event-modal{--height:auto;--width:100%;--backdrop-opacity:1;align-items:flex-end}.event-modal::part(backdrop){background:#00000061}@media (prefers-reduced-transparency:reduce){.event-modal::part(backdrop){-webkit-backdrop-filter:none;backdrop-filter:none}}.event-modal::part(content){background:var(--glass-sheen), var(--glass-fill-thick);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));box-shadow:var(--glass-shadow), inset 0 1px 0 rgba(255, 255, 255, var(--edge-hi));width:calc(100% - 16px);margin:0 8px 8px;margin-bottom:calc(8px + var(--kb-offset,0px));border-radius:32px;max-height:80vh;transition:margin-bottom .25s;overflow-y:auto}.event-form{padding:22px 20px calc(18px + env(safe-area-inset-bottom));--event-cell:color-mix(in srgb, var(--app-text) 6%, transparent);--event-cell-line:color-mix(in srgb, var(--app-text) 8%, transparent);flex-direction:column;gap:16px;display:flex}.event-head{flex-direction:column;gap:6px;display:flex}.event-eyebrow{font-size:var(--t-footnote);letter-spacing:.2px;color:var(--cal-muted);margin:0;font-weight:600}.event-form-title{font-size:var(--t-title);letter-spacing:-.4px;color:var(--app-text);margin:0 0 6px;font-weight:700;line-height:1.15}.event-steps-bar{gap:6px;display:flex}.event-step{background:color-mix(in srgb, var(--app-text) 12%, transparent);cursor:pointer;-webkit-tap-highlight-color:transparent;box-sizing:content-box;background-clip:content-box;border:none;border-radius:999px;flex:1;height:4px;margin:-11px 0;padding:11px 0;transition:background-color .25s}.event-step.done{background-color:var(--app-accent)}.event-step:disabled{cursor:default}.event-step:focus-visible{outline:2px solid var(--app-accent);outline-offset:2px}.event-recap{background:var(--event-cell);width:100%;min-height:44px;font:inherit;text-align:left;color:var(--app-text);cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;border-radius:14px;align-items:center;gap:10px;margin:-4px 0 0;padding:0 14px;display:flex}.event-recap-dot{background:var(--app-accent);border-radius:50%;flex:none;width:8px;height:8px}.event-recap-dot.birthday{background:var(--birthday)}.event-recap-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--t-subhead);flex:1;font-weight:600;overflow:hidden}.event-recap-when{color:var(--cal-muted);font-weight:500}.event-recap-edit{font-size:var(--t-subhead);color:var(--app-accent);flex:none;font-weight:600}.event-step-body{flex-direction:column;gap:14px;animation:.22s cubic-bezier(.2,.8,.2,1) event-step-in;display:flex}@keyframes event-step-in{0%{opacity:0;transform:translateY(6px)}}.event-type{background:var(--event-cell);border-radius:999px;grid-template-columns:1fr 1fr;padding:3px;display:grid;position:relative}.event-type-thumb{background:color-mix(in srgb, var(--app-text) 14%, var(--app-surface));background:var(--lightningcss-light,#fff)var(--lightningcss-dark,color-mix(in srgb, var(--app-text) 14%, var(--app-surface)));border-radius:999px;width:calc(50% - 3px);transition:transform .28s cubic-bezier(.3,.9,.3,1);position:absolute;top:3px;bottom:3px;left:3px;box-shadow:0 2px 8px #00000029,inset 0 1px #ffffff14}.event-type[data-value=birthday] .event-type-thumb{transform:translate(100%)}.event-type button{min-height:40px;font:inherit;font-size:var(--t-subhead);color:var(--cal-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;font-weight:600;transition:color .2s;position:relative}.event-type button.on{color:var(--app-text)}.event-type button:focus-visible{outline:2px solid var(--app-accent);outline-offset:-2px;border-radius:999px}.event-hero{--background:transparent;--color:var(--app-text);--placeholder-color:var(--app-text);--placeholder-opacity:.32;--padding-start:2px;--padding-end:2px;--highlight-color-focused:var(--app-accent);min-height:56px;font-size:var(--t-title2);letter-spacing:-.3px;border-bottom:1.5px solid var(--event-cell-line);font-weight:600;transition:border-color .2s}.event-hero.has-focus{border-bottom-color:var(--app-accent)}.event-group{background:var(--event-cell);border-radius:16px;flex-direction:column;display:flex;overflow:hidden}.event-cell{width:100%;min-height:50px;font:inherit;font-size:var(--t-body);color:var(--app-text);text-align:left;-webkit-tap-highlight-color:transparent;background:0 0;border:none;justify-content:space-between;align-items:center;gap:12px;margin:0;padding:0 16px;display:flex}.event-cell+.event-cell{background:linear-gradient(var(--event-cell-line), var(--event-cell-line)) 16px 0 / calc(100% - 16px) 1px no-repeat}.event-cell-label{flex:none;font-weight:500}.event-cell-muted{font-size:var(--t-subhead);color:var(--cal-muted)}.event-cell-input{background:color-mix(in srgb, var(--app-text) 8%, transparent);min-width:0;font:inherit;font-size:var(--t-subhead);font-variant-numeric:tabular-nums;color:var(--app-text);text-align:right;border:none;border-radius:9px;padding:6px 10px;font-weight:500}.event-cell-input:focus-visible{outline:2px solid var(--app-accent);outline-offset:1px}.event-cell-select{--padding-start:16px;--padding-end:16px;--placeholder-color:var(--app-accent);--placeholder-opacity:1;padding:0;font-weight:500}.event-cell-select::part(text),.event-cell-select::part(placeholder){color:var(--cal-muted);font-weight:500}.event-cell-select::part(placeholder){color:var(--app-accent)}.event-cell-select::part(icon){color:var(--cal-muted);opacity:.8}.event-notes{--background:transparent;--color:var(--app-text);--placeholder-color:var(--cal-muted);--placeholder-opacity:1;--padding-start:16px;--padding-end:16px;--padding-top:14px;--padding-bottom:14px;font-size:var(--t-body);min-height:50px}.event-reminder-hint{font-size:var(--t-footnote);color:var(--cal-muted);margin:-6px 16px 0;line-height:1.35;display:block}.event-toggle{cursor:pointer}.event-toggle:focus-visible{outline:2px solid var(--app-accent);outline-offset:-2px;border-radius:16px}.event-switch{background:color-mix(in srgb, var(--app-text) 16%, transparent);border-radius:999px;flex:none;width:51px;height:31px;transition:background .2s;position:relative}.event-switch:after{content:"";background:#fff;border-radius:50%;width:27px;height:27px;transition:transform .25s cubic-bezier(.3,.9,.3,1);position:absolute;top:2px;left:2px;box-shadow:0 2px 6px #00000040}.event-toggle.on .event-switch{background:var(--app-accent)}.event-toggle.on .event-switch:after{transform:translate(20px)}.event-head{position:relative}.event-trash{background:color-mix(in srgb, var(--alert) 14%, transparent);width:44px;height:44px;color:var(--alert);cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;border-radius:50%;place-items:center;padding:0;font-size:1.25rem;transition:background-color .2s,transform .15s;display:grid;position:absolute;top:-6px;right:-6px}.event-trash:hover{background:color-mix(in srgb, var(--alert) 22%, transparent)}.event-trash:active{transform:scale(.94)}.event-trash:focus-visible{outline:2px solid var(--alert);outline-offset:2px}.event-trash:disabled{opacity:.5}:is(.event-head:has(.event-trash) .event-eyebrow,.event-head:has(.event-trash) .event-form-title){padding-right:48px}.event-error{font-size:var(--t-subhead);color:var(--alert);margin:-4px 4px 0;font-weight:500}.event-nav{gap:10px;margin-top:2px;display:flex}.event-nav ion-button{--border-radius:16px;--box-shadow:none;text-transform:none;letter-spacing:0;height:52px;font-size:var(--t-headline);margin:0}.event-back{--background:var(--event-cell);--background-activated:color-mix(in srgb, var(--app-text) 12%, transparent);--background-hover:color-mix(in srgb, var(--app-text) 10%, transparent);--color:var(--app-text);flex:0 0 34%;font-weight:600}.event-save{--background:var(--app-accent);--background-activated:color-mix(in srgb, var(--app-accent) 85%, #000);--background-hover:color-mix(in srgb, var(--app-accent) 92%, #fff);--color:var(--on-accent);--border-radius:16px;text-transform:none;flex:1;margin:0;font-weight:700}.event-nav .event-save{--box-shadow:0 8px 22px -8px color-mix(in srgb, var(--app-accent) 70%, transparent), inset 0 1px 0 #ffffff40}.event-nav ion-button:active{transform:scale(.98)}.event-readonly{flex-direction:column;gap:8px;display:flex}.event-readonly-when{color:var(--app-text);margin:0;font-size:16px;font-weight:600}.event-readonly-notes{color:var(--cal-muted);margin:0;font-size:14px}.event-readonly-tag{letter-spacing:.5px;text-transform:uppercase;color:var(--app-accent);margin:0;font-size:12px;font-weight:700}@media (prefers-reduced-motion:reduce){.event-switch,.event-switch:after,.event-step,.event-type-thumb,.event-type button,.event-hero{transition:none}.event-step-body{animation:none}.event-nav ion-button:active,.event-trash:active{transform:none}}.tone-private{--tone:var(--app-accent)}.tone-all{--tone:#38bdf8}.tone-admins{--tone:#a78bfa}.tone-shared{--tone:#fb923c}.tone-birthday{--tone:#f0a6d0}.tone-holiday{--tone:var(--ok)}.calx{box-sizing:border-box;text-align:left;flex-direction:column;gap:24px;max-width:1440px;min-height:100%;margin:0 auto;padding:40px 40px 120px;display:flex}.calx-header{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.calx-greeting{letter-spacing:-.5px;color:var(--app-text);margin:0;font-size:30px;font-weight:800}.calx-sub{color:var(--cal-muted);margin:4px 0 0;font-size:14px}.calx-header-actions{align-items:center;gap:10px;display:flex}.calx-add{font:inherit;color:var(--on-accent);background:var(--app-accent);cursor:pointer;box-shadow:0 10px 24px color-mix(in srgb, var(--app-accent) 35%, transparent);border:none;border-radius:999px;align-items:center;gap:6px;padding:8px 16px 8px 12px;font-size:14px;font-weight:700;display:inline-flex}.calx-add ion-icon{font-size:18px}.calx-board{background:color-mix(in srgb, var(--app-surface) 70%, transparent);border:1px solid var(--cal-hairline);border-radius:28px;grid-template-columns:minmax(0,1fr) 340px;display:grid;overflow:hidden;box-shadow:0 30px 60px #00000040}.calx-month{min-width:0;padding:22px 22px 24px}.calx-toolbar{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.calx-toolbar .cal-period-trigger{font-size:22px;font-weight:600}.calx-toolbar .cal-period-menu{animation-name:calx-menu-in;left:0;transform:none}@keyframes calx-menu-in{0%{opacity:0;transform:translateY(-8px)scale(.97)}}.calx-arrows{gap:8px;display:flex}.calx-arrow{border:1px solid var(--cal-hairline);background:color-mix(in srgb, var(--app-text) 5%, transparent);width:32px;height:32px;color:var(--app-text);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:15px;transition:background .15s;display:flex}.calx-arrow:hover{background:color-mix(in srgb, var(--app-text) 12%, transparent)}.calx-weekdays{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-bottom:6px;display:grid}.calx-weekdays span{color:var(--cal-muted);text-transform:capitalize;text-overflow:ellipsis;white-space:nowrap;padding-left:4px;font-size:12px;overflow:hidden}.calx-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.calx-cell{background:color-mix(in srgb, var(--app-text) 5%, transparent);border:1px solid color-mix(in srgb, var(--app-text) 8%, transparent);min-height:88px;color:var(--app-text);cursor:pointer;border-radius:16px;outline:none;flex-direction:column;justify-content:space-between;gap:6px;padding:10px 10px 8px;transition:background .15s,border-color .15s,transform .15s;display:flex;position:relative}.calx-cell:hover{background:color-mix(in srgb, var(--app-text) 9%, transparent)}.calx-cell:focus-visible{border-color:var(--app-accent)}.calx-cell.outside{opacity:.45}.calx-cell.today{background:radial-gradient(120% 90% at 50% 0%, color-mix(in srgb, var(--app-accent) 55%, transparent), transparent 75%), color-mix(in srgb, var(--app-accent) 16%, transparent);border-color:color-mix(in srgb, var(--app-accent) 45%, transparent)}.calx-cell.selected{border:1.5px dashed var(--app-accent)}.calx-cell.selected:not(.today){background:color-mix(in srgb, var(--app-accent) 10%, transparent)}.calx-cell-num{font-size:22px;font-weight:500;line-height:1}.calx-cell-events{flex-direction:column;gap:2px;min-width:0;display:flex}.calx-cell-event{border:none;border-left:2px solid var(--tone);width:100%;min-width:0;color:var(--app-text);font:inherit;text-align:left;text-overflow:ellipsis;white-space:nowrap;opacity:.85;cursor:pointer;background:0 0;padding:1px 0 1px 7px;font-size:11px;line-height:1.35;display:block;overflow:hidden}.calx-cell-event:hover{opacity:1;text-decoration:underline}.calx-cell-more{color:var(--cal-muted);padding-left:9px;font-size:11px}.calx-scheduled{border-left:1px solid var(--cal-hairline);background:color-mix(in srgb, var(--app-bg) 35%, transparent);flex-direction:column;min-width:0;padding:22px 20px;display:flex}.calx-scheduled-head{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:16px;display:flex}.calx-scheduled-title{color:var(--app-text);margin:0;font-size:18px;font-weight:700}.calx-scheduled-date{color:var(--cal-muted);margin:2px 0 0;font-size:12px}.calx-timeline{flex-direction:column;gap:18px;max-height:72vh;padding-right:2px;display:flex;overflow-y:auto}.calx-slot{flex-direction:column;gap:10px;display:flex}.calx-slot-label{color:var(--cal-muted);font-variant-numeric:tabular-nums;border-bottom:1px solid var(--cal-hairline);padding-bottom:6px;font-size:12px;font-weight:600}.calx-card{border:1px solid var(--cal-hairline);background:color-mix(in srgb, var(--app-text) 6%, transparent);width:100%;color:var(--app-text);font:inherit;text-align:left;cursor:pointer;border-radius:14px;flex-direction:column;gap:6px;padding:12px 14px 14px;transition:background .15s;display:flex}.calx-card:hover{background:color-mix(in srgb, var(--app-text) 10%, transparent)}.calx-card-bar{background:var(--tone);border-radius:999px;height:6px;margin-bottom:4px}.calx-card-title{font-size:15px;font-weight:700}.calx-card-notes{color:var(--cal-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.calx-card-time{color:color-mix(in srgb, var(--app-text) 80%, transparent);font-variant-numeric:tabular-nums;align-items:center;gap:6px;margin-top:4px;font-size:12px;display:flex}.calx-card-duration{color:var(--cal-muted);margin-left:auto}.calx-card-people{border-top:1px solid var(--cal-hairline);align-items:center;gap:8px;margin-top:6px;padding-top:10px;display:flex}.calx-avatars{display:flex}.calx-avatar{width:24px;height:24px;color:var(--on-accent);background:var(--tone);border:2px solid var(--app-surface);border-radius:50%;justify-content:center;align-items:center;margin-left:-6px;font-size:11px;font-weight:800;display:flex}.calx-avatar:first-child{margin-left:0}.calx-avatar:nth-child(2){background:color-mix(in srgb, var(--tone) 55%, var(--app-text))}.calx-card-audience{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;overflow:hidden}@media (prefers-reduced-motion:reduce){.calx-cell,.calx-card,.calx-arrow{transition:none}.calx-toolbar .cal-period-menu{animation:none}}.event-share-loading{align-self:center}@media (width>=1024px){.event-modal{--width:440px;align-items:center}.event-modal::part(content){border:1px solid var(--cal-hairline);border-radius:22px;margin-bottom:0;box-shadow:0 30px 70px #00000073}.event-modal::part(backdrop){-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0000004d}.event-form{padding:22px 24px 20px}.event-form-title{font-size:var(--t-title2)}}.lcover{isolation:isolate;min-height:210px;margin:0 0 var(--s5);padding:var(--s4) var(--s5) var(--s5);color:#fff;background:rgb(var(--scrim-rgb));box-shadow:inset 0 1px 0 #ffffff24, 0 28px 56px -30px rgba(var(--shadow-tint), .9), 0 2px 8px -2px rgba(var(--shadow-tint), .35);--ink:#fff;--ink-2:#ffffffd1;border:1px solid #ffffff1a;border-radius:30px;flex-direction:column;justify-content:flex-end;display:flex;position:relative}.lcover>.widget-art{z-index:-2;animation:.9s cubic-bezier(.2,.8,.2,1) both lcover-arrive}.lcover>.widget-scrim{z-index:-1;--scrim-solid:58%;--scrim-fade:92%}@keyframes lcover-arrive{0%{opacity:0;transform:scale(1.06)}}.lcover-actions{top:var(--s4);right:var(--s4);gap:var(--s2);display:flex;position:absolute}.lcover-actions button{min-width:var(--tap);min-height:var(--tap);-webkit-backdrop-filter:blur(12px)saturate(1.4);backdrop-filter:blur(12px)saturate(1.4);color:#fff;font-family:inherit;font-size:var(--t-footnote);font-weight:var(--w-emph);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform var(--d-fast) var(--ease);background:linear-gradient(#ffffff3d,#ffffff0f),#00000047;border:1px solid #ffffff47;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 14px;display:inline-flex;box-shadow:inset 0 1px #ffffff73,0 8px 18px -10px #000000b3}.lcover-actions button:active{transform:scale(.94)}.lcover-actions button ion-icon{font-size:18px}.lcover-actions button.is-danger{color:#ffb4a8;padding:0}.lcover-foot{justify-content:space-between;align-items:flex-end;gap:var(--s3);display:flex}.lcover-text{text-shadow:0 1px 3px #0006;flex-direction:column;align-items:flex-start;gap:6px;min-width:0;display:flex}.lcover-title{font-family:var(--font-display);font-size:var(--t-display);font-weight:var(--w-regular);color:#fff;text-transform:capitalize;overflow-wrap:anywhere;margin:0;line-height:1}.lcover-summary{font-size:var(--t-subhead);color:#ffffffdb;margin:0}.lcover-summary b{color:#fff}.lcover .shared-badge{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff29;border:1px solid #ffffff42}.lcover-ring{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:radial-gradient(circle at 50% 30%,#ffffff38,#0000 60%),#00000052;border-radius:50%;flex:none;place-items:center;width:76px;height:76px;display:grid;position:relative;box-shadow:inset 0 1px #fff6,inset 0 -2px 6px #0000004d,0 12px 22px -10px #000000b3}.lcover-ring svg{position:absolute;inset:0;transform:rotate(-90deg)}.lcover-ring-track,.lcover-ring-fill{fill:none;stroke-width:5px}.lcover-ring-track{stroke:#fff3}.lcover-ring-fill{stroke:var(--app-accent);stroke-linecap:round;filter:drop-shadow(0 0 4px color-mix(in srgb, var(--app-accent) 70%, transparent));transition:stroke-dashoffset .7s cubic-bezier(.2,.8,.2,1)}.lcover-ring.is-complete .lcover-ring-fill{stroke:#6fe3b4}.lcover-ring-text{font-size:var(--t-footnote);color:#ffffffd9;font-variant-numeric:tabular-nums;position:relative}.lcover-ring-text b{color:#fff;font-size:1.25rem}.lempty{text-align:center;padding:var(--s6) var(--s4);border:1px dashed var(--ink-line-strong);border-radius:26px;flex-direction:column;align-items:center;display:flex}.lempty-puck{width:68px;height:68px;color:var(--accent-ink);background:radial-gradient(120% 90% at 28% 12%, #fff6, #fff0 52%), linear-gradient(160deg, color-mix(in srgb, var(--app-accent) 26%, var(--app-surface)), var(--app-surface));box-shadow:inset 0 1px 0 #ffffff80, inset 0 -3px 6px #0003, 0 0 0 1px color-mix(in srgb, var(--ink) 10%, transparent), 0 16px 26px -12px rgba(var(--shadow-tint), .8);border-radius:22px;place-items:center;animation:.7s cubic-bezier(.2,.8,.2,1.3) both lempty-float;display:grid}@keyframes lempty-float{0%{opacity:0;transform:translateY(14px)rotate(-8deg)scale(.9)}}.lempty-title{margin:var(--s4) 0 var(--s1);font-family:var(--font-display);font-size:var(--t-title);color:var(--ink)}.lempty-body{margin:0 0 var(--s4);font-size:var(--t-subhead);color:var(--ink-2);max-width:30ch}.lempty-btn{min-height:var(--tap);background:linear-gradient(180deg, color-mix(in srgb, #fff 18%, var(--app-accent)), var(--app-accent));box-shadow:inset 0 1px 0 #ffffff73, 0 10px 20px -10px color-mix(in srgb, var(--app-accent) 70%, transparent);color:var(--on-accent);font-family:inherit;font-size:var(--t-subhead);font-weight:var(--w-bold);cursor:pointer;border:none;border-radius:999px;align-items:center;gap:6px;padding:0 18px;display:inline-flex}.lempty-btn:active{transform:scale(.96)}.lcheck-rows>*{animation:.38s cubic-bezier(.2,.8,.2,1) both lrow-in;animation-delay:calc(min(var(--i,0), 8) * 35ms)}@keyframes lrow-in{0%{opacity:0;transform:translateY(8px)}}@media (prefers-reduced-motion:reduce){.lcover>.widget-art,.lempty-puck,.lcheck-rows>*{animation:none}.lcover-ring-fill{transition:none}}@media (prefers-reduced-transparency:reduce){.lcover-actions button,.lcover-ring,.lcover .shared-badge{-webkit-backdrop-filter:none;backdrop-filter:none;background:rgba(var(--scrim-rgb), .9)}}:root[data-mode=light] .lcover{color:var(--app-text);background:var(--app-surface);box-shadow:inset 0 1px 0 #ffffffe6, 0 24px 44px -30px rgba(var(--shadow-tint), .55);--ink:var(--app-text);--ink-2:color-mix(in srgb, var(--app-text) 72%, #fff);border-color:#00000014}:root[data-mode=light] .lcover-text{text-shadow:none}:root[data-mode=light] .lcover-title{color:var(--app-text)}:root[data-mode=light] .lcover-summary{color:color-mix(in srgb, var(--app-text) 72%, #fff)}:root[data-mode=light] .lcover-summary b{color:var(--app-text)}:root[data-mode=light] .lcover .shared-badge{color:var(--accent-on-chip);background:#ffffffd1;border-color:#0000000f}:root[data-mode=light] .lcover-actions button{color:var(--app-text);box-shadow:inset 0 1px 0 #fff, 0 6px 14px -8px rgba(var(--shadow-tint), .4);background:#ffffffd1;border-color:#0000000f}:root[data-mode=light] .lcover-actions button.is-danger{color:var(--alert)}:root[data-mode=light] .lcover-ring{box-shadow:inset 0 1px 0 #fff, inset 0 -2px 6px #0000000f, 0 0 0 1px #0000000f, 0 10px 20px -10px rgba(var(--shadow-tint), .45);background:radial-gradient(circle at 50% 30%,#fff,#0000 70%),#ffffffb3}:root[data-mode=light] .lcover-ring-track{stroke:#0000001a}:root[data-mode=light] .lcover-ring-text{color:color-mix(in srgb, var(--app-text) 72%, #fff)}:root[data-mode=light] .lcover-ring-text b{color:var(--app-text)}.shopping-content{--background:transparent}.shopping-inner{padding:40px var(--page-x) 120px;text-align:left;max-width:640px;margin:0 auto}.shopping-shell{flex-direction:column;height:100%;display:flex}.shopping-tabs-wrap{flex:none;padding:56px 12px 0}.shopping-title{font-family:var(--font-display);font-size:var(--t-display);font-weight:var(--w-regular);letter-spacing:0;color:var(--app-text);text-align:left;margin:0 4px 12px;line-height:1}.shopping-tabs{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:8px;padding:2px 4px 4px;display:flex;overflow-x:auto}.shopping-tabs::-webkit-scrollbar{display:none}.shop-tab{border:1px solid var(--shop-hairline);background:var(--app-surface);color:var(--shop-muted);cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent;border-radius:999px;flex:none;align-items:center;gap:7px;padding:8px 15px;font-size:14px;font-weight:600;transition:color .2s,background .2s,border-color .2s;display:inline-flex}.shop-tab.active{color:var(--on-accent);background:var(--app-accent);border-color:var(--app-accent)}.shop-tab-count{font-variant-numeric:tabular-nums;background:color-mix(in srgb, var(--app-text) 10%, transparent);border-radius:999px;padding:1px 7px;font-size:12px}.shop-tab.active .shop-tab-count{background:color-mix(in srgb, var(--on-accent) 16%, transparent)}.shop-tab-add{justify-content:center;width:40px;padding:8px 0}.shop-tab-add ion-icon{font-size:18px}.shopping-pager{scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;flex:1;min-height:0;display:flex;overflow:auto hidden}.shopping-pager::-webkit-scrollbar{display:none}.shopping-panel{scroll-snap-align:start;-webkit-overflow-scrolling:touch;flex:0 0 100%;width:100%;height:100%;overflow-y:auto}.shopping-panel-inner{text-align:left;max-width:640px;margin:0 auto;padding:14px 16px 140px}.shop-head-actions{align-items:center;gap:8px;display:flex}.shop-list-del{border:1px solid color-mix(in srgb, var(--shop-urgent) 35%, transparent);background:color-mix(in srgb, var(--shop-urgent) 10%, transparent);width:34px;height:34px;color:var(--shop-urgent);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.shop-list-del ion-icon{font-size:16px}:root{--shop-urgent:var(--alert);--shop-muted:color-mix(in srgb, var(--app-text) 50%, transparent);--shop-hairline:color-mix(in srgb, var(--app-text) 8%, transparent)}.shopping-head-text h1{font-size:var(--t-display);font-weight:var(--w-bold);letter-spacing:var(--tr-display);color:var(--app-text);margin:0;line-height:1}.shopping-head-text p{color:var(--shop-muted);margin:8px 0 0;font-size:14px}.shopping-head-text .shared-badge{margin-top:0;margin-bottom:4px}.shopping-head-text b{color:var(--app-text);font-variant-numeric:tabular-nums}.shopping-head-right{flex-direction:column;flex:none;align-items:flex-end;gap:10px;display:flex}.shop-share-btn{border:1px solid var(--shop-hairline);background:var(--app-surface);color:var(--app-text);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:999px;align-items:center;gap:6px;padding:7px 13px;font-size:13px;font-weight:600;display:inline-flex}.shop-share-btn ion-icon{font-size:15px}.shopping-ring svg{display:block;transform:rotate(-90deg)}.shopping-ring .ring-fill{stroke:var(--app-accent);stroke-linecap:round;filter:drop-shadow(0 0 6px color-mix(in srgb, var(--app-accent) 45%, transparent));transition:stroke-dashoffset .5s cubic-bezier(.4,0,.2,1)}.shopping-ring .ring-pct{font-variant-numeric:tabular-nums;color:var(--app-text);justify-content:center;align-items:center;font-size:17px;font-weight:800;display:flex;position:absolute;inset:0}.shopping-section-label.urgent{color:var(--shop-urgent)}.shopping-section-label.urgent .shopping-count{background:color-mix(in srgb, var(--shop-urgent) 16%, transparent);color:var(--shop-urgent)}.shop-sliding.item-sliding-active-slide .shop-card{--border-radius:18px 0 0 18px;border-right:none;border-radius:18px 0 0 18px}.shop-sliding ion-item-options{border:none}.shop-sliding ion-item-option{--button-color:#fff;border-radius:0 18px 18px 0;width:72px}.shop-card.urgent{border-color:color-mix(in srgb, var(--shop-urgent) 35%, transparent);position:relative}.shop-card.urgent::part(native){border-left:3px solid var(--shop-urgent)}.shop-check{border:2px solid var(--shop-muted);border-radius:50%;place-items:center;width:24px;height:24px;margin-right:14px;transition:background .2s,border-color .2s;display:grid}.shop-check ion-icon{color:var(--on-accent);opacity:0;font-size:14px;transition:opacity .2s,transform .2s;transform:scale(.4)}.shop-card.done .shop-check{background:var(--app-accent);border-color:var(--app-accent)}.shop-card.done .shop-check ion-icon{opacity:1;transform:scale(1)}.shop-body{flex-direction:column;flex:1;gap:3px;min-width:0;padding:12px 0;display:flex}.shop-card.done .shop-text{color:var(--shop-muted);text-decoration:line-through}.shop-chip{font-size:var(--t-micro);letter-spacing:1px;text-transform:uppercase;color:var(--shop-urgent);background:color-mix(in srgb, var(--shop-urgent) 12%, transparent);border-radius:999px;flex:none;align-items:center;gap:4px;padding:4px 9px;font-weight:700;display:inline-flex}.shop-chip.private{color:var(--app-accent);background:color-mix(in srgb, var(--app-accent) 14%, transparent);margin-left:6px}.shop-chip ion-icon{font-size:11px}.shopping-list.completed .shop-card{--background:transparent}.shopping-list.completed{box-shadow:none;opacity:.75;background:0 0}.shopping-loading{justify-content:center;padding:48px 0;display:flex}.shopping-empty{text-align:center;padding:64px 24px}.shopping-empty-title{color:var(--app-text);margin:0 0 6px;font-size:20px;font-weight:700}.shopping-empty-sub{color:var(--shop-muted);margin:0;font-size:14px}.shopping-fab{margin-bottom:calc(var(--nav-h) + var(--nav-gap) * 2 + env(safe-area-inset-bottom));margin-right:6px}.shop-add-modal{--height:auto;--width:100%;--backdrop-opacity:1;align-items:flex-end}.shop-add-modal::part(backdrop){background:#00000061}@media (prefers-reduced-transparency:reduce){.shop-add-modal::part(backdrop){-webkit-backdrop-filter:none;backdrop-filter:none}}.shop-add-modal::part(content){background:var(--glass-sheen), var(--glass-fill-thick);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));box-shadow:var(--glass-shadow), inset 0 1px 0 rgba(255, 255, 255, var(--edge-hi));width:calc(100% - 16px);margin:0 8px 8px;margin-bottom:calc(8px + var(--kb-offset,0px));border-radius:32px;transition:margin-bottom .25s}.shop-add-body{padding:20px 20px calc(16px + env(safe-area-inset-bottom));flex-direction:column;gap:14px;display:flex}.shop-add-title{color:var(--app-text);margin:0 0 2px;font-size:30px;font-weight:700}.shop-add-input{--background:var(--plane-sunk);--color:var(--app-text);--placeholder-color:var(--shop-muted);--padding-start:16px;--padding-end:16px;--padding-top:14px;--padding-bottom:14px;border:1px solid var(--shop-hairline);border-radius:14px;margin:0}.shop-add-toggle{width:100%;font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;justify-content:space-between;align-items:center;margin:0;padding:0;display:flex}.shop-add-toggle:focus-visible{outline:2px solid var(--app-accent);outline-offset:4px;border-radius:10px}.shop-add-row-label{color:var(--app-text);align-items:center;gap:10px;font-size:15px;font-weight:500;display:inline-flex}.shop-add-dot{background:var(--app-accent);width:9px;height:9px;box-shadow:0 0 8px var(--app-accent);border-radius:50%}.shop-add-lock{color:var(--app-accent);font-size:16px}.shop-add-hint{color:var(--shop-muted);margin:-6px 2px 0;font-size:12px}.shop-add-switch{background:color-mix(in srgb, var(--app-text) 12%, transparent);border:1px solid var(--shop-hairline);border-radius:999px;flex:none;width:50px;height:30px;transition:background .2s;position:relative}.shop-add-switch:after{content:"";background:var(--shop-muted);border-radius:50%;width:22px;height:22px;transition:transform .2s,background .2s;position:absolute;top:3px;left:3px}.shop-add-toggle.on .shop-add-switch{background:color-mix(in srgb, var(--app-accent) 25%, transparent)}.shop-add-toggle.on .shop-add-switch:after{background:var(--app-accent);transform:translate(20px)}.shop-add-btn{--background:var(--app-accent);--background-activated:var(--app-accent);--color:var(--on-accent);--border-radius:14px;text-transform:none;margin:4px 0 0;font-weight:800}.shop-share-list{flex-direction:column;gap:8px;margin:4px 0 2px;display:flex}.shop-share-row{background:var(--app-bg);border:1px solid var(--shop-hairline);width:100%;font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:14px;justify-content:space-between;align-items:center;margin:0;padding:12px 14px;display:flex}.shop-share-name{color:var(--app-text);font-size:15px;font-weight:500}.shop-share-empty{color:var(--shop-muted);margin:4px 2px;font-size:14px}.shop-share-row .shop-add-switch{pointer-events:none}.shop-share-row.on .shop-add-switch{background:color-mix(in srgb, var(--app-accent) 25%, transparent)}.shop-share-row.on .shop-add-switch:after{background:var(--app-accent);transform:translate(20px)}@keyframes shop-trash-toss{0%{transform:scale(1)rotate(0)}25%{transform:scale(1.4)rotate(-18deg)}50%{transform:scale(1.4)rotate(16deg)}75%{transform:scale(1.4)rotate(-12deg)}to{opacity:0;transform:scale(.6)rotate(0)}}.shop-trash-tossing{animation:.45s ease-in-out forwards shop-trash-toss}@media (prefers-reduced-motion:reduce){.shopping-ring .ring-fill,.shop-check,.shop-check ion-icon,.shop-card,.shop-add-switch,.shop-add-switch:after{transition:none}}.garage-content{--background:transparent}.garage-inner{padding:40px var(--page-x) 120px;text-align:left;max-width:640px;margin:0 auto}:root{--garage-hairline:color-mix(in srgb, var(--app-text) 10%, transparent);--garage-muted:color-mix(in srgb, var(--app-text) 55%, transparent);--garage-ok:var(--ok);--garage-soon:var(--warn);--garage-expired:var(--alert)}.garage-error{color:var(--garage-expired);margin:0 0 14px;font-size:14px}.garage-loading{justify-content:center;padding:40px 0;display:flex}.garage-empty{text-align:center;padding:60px 16px}.garage-empty-title{color:var(--app-text);margin:0 0 6px;font-size:20px;font-weight:700}.garage-empty-sub{color:var(--garage-muted);margin:0;font-size:14px}.garage-list{flex-direction:column;gap:14px;display:flex}.garage-sliding{border-radius:20px;overflow:hidden}.garage-item{--background:transparent;--padding-start:0;--inner-padding-end:0;--min-height:0}.garage-item::part(native){padding:0}.garage-car-year{color:var(--garage-muted);font-weight:600}.garage-edit-btn{width:var(--tap);height:var(--tap);border:1px solid color-mix(in srgb, var(--ink) 12%, transparent);background:linear-gradient(180deg, color-mix(in srgb, var(--ink) 10%, transparent), transparent), color-mix(in srgb, var(--ink) 4%, transparent);box-shadow:inset 0 1px 0 rgba(255, 255, 255, var(--edge-mid,.2)), 0 6px 14px -8px rgba(var(--shadow-tint), .6);color:var(--ink);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform var(--d-fast) var(--ease);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:19px;display:inline-flex}.garage-edit-btn:active{transform:scale(.92)}.garage-edit-btn:disabled{opacity:.4}.garage-editor-modal{--width:100%;--height:auto;--max-height:88vh;--border-radius:32px;align-items:flex-end}.garage-editor-modal::part(content){width:calc(100% - 16px);margin-bottom:calc(8px + var(--kb-offset,0px));position:absolute;bottom:0;left:8px}.garage-editor{padding:20px 18px calc(20px + env(safe-area-inset-bottom));flex-direction:column;gap:12px;display:flex;overflow-y:auto}.garage-editor-title{color:var(--app-text);margin:0 0 4px;font-size:20px;font-weight:800}.garage-input{--background:color-mix(in srgb, var(--app-text) 6%, transparent);--color:var(--app-text);--placeholder-color:var(--garage-muted);--padding-start:14px;--padding-end:14px;border-radius:12px}.garage-date-field{color:var(--app-text);justify-content:space-between;align-items:center;gap:12px;font-size:14px;font-weight:600;display:flex}.garage-date-input{font:inherit;color:var(--app-text);background:color-mix(in srgb, var(--app-text) 6%, transparent);border:1px solid var(--garage-hairline);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-radius:10px;padding:8px 10px}.garage-model{flex-direction:column;gap:10px;display:flex}.garage-model-actions{flex-wrap:wrap;gap:8px;display:flex}.garage-model-search,.garage-model-clear{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:700;display:inline-flex}.garage-model-search{color:var(--app-accent);background:color-mix(in srgb, var(--app-accent) 12%, transparent);border:1px solid color-mix(in srgb, var(--app-accent) 28%, transparent)}.garage-model-search:disabled{opacity:.5}.garage-model-clear{color:var(--garage-muted);border:1px solid var(--garage-hairline);background:0 0}.garage-model-hint{color:var(--garage-muted);margin:0;font-size:13px}.garage-model-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.garage-model-option{background:color-mix(in srgb, var(--app-text) 6%, transparent);cursor:pointer;-webkit-tap-highlight-color:transparent;text-align:center;border:2px solid #0000;border-radius:12px;flex-direction:column;gap:4px;padding:6px;display:flex}.garage-model-option.selected{border-color:var(--app-accent)}.garage-model-option img{aspect-ratio:4/3;object-fit:cover;border-radius:8px;width:100%;display:block}.garage-model-noimg{aspect-ratio:4/3;background:color-mix(in srgb, var(--app-text) 10%, transparent);width:100%;color:var(--garage-muted);border-radius:8px;justify-content:center;align-items:center;font-weight:800;display:flex}.garage-model-option small{color:var(--garage-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.garage-fab{margin-bottom:calc(var(--nav-h) + var(--nav-gap) * 2 + env(safe-area-inset-bottom));margin-right:6px}.garage-editor-actions{justify-content:flex-end;gap:6px;margin-top:4px;display:flex}.garage-save-btn{--background:var(--app-accent);--background-activated:var(--app-accent);--background-hover:var(--app-accent);--background-focused:var(--app-accent);--color:var(--on-accent);--border-radius:14px;text-transform:none;font-weight:800}.garage-cancel-btn{--color:var(--app-accent);text-transform:none}.garage-card{background:radial-gradient(120% 60% at 50% 0%, color-mix(in srgb, var(--app-accent) 7%, transparent), transparent 60%), var(--plane);border:1px solid color-mix(in srgb, var(--ink) 10%, transparent);width:100%;box-shadow:inset 0 1px 0 rgba(255, 255, 255, var(--edge-lo,.06)), 0 24px 48px -28px rgba(var(--shadow-tint), .8), 0 2px 6px -2px rgba(var(--shadow-tint), .3);border-radius:28px;position:relative;overflow:hidden}.garage-card-head{align-items:flex-start;gap:var(--s3);padding:var(--s5) var(--s5) var(--s4);display:flex}.garage-card-title{flex:1;min-width:0}.garage-car-name{font-family:var(--font-display);font-size:var(--t-title);font-weight:var(--w-regular);color:var(--ink);text-transform:capitalize;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:0;line-height:1.05;display:flex}.garage-car-year{font-family:var(--font-body,inherit);font-size:var(--t-caption);font-weight:var(--w-emph);letter-spacing:.06em;color:var(--ink-2);border:1px solid var(--ink-line-strong);text-transform:none;border-radius:999px;padding:2px 8px;transform:translateY(-3px)}.garage-status{font-size:var(--t-subhead);font-weight:var(--w-medium);color:var(--ink-2);align-items:center;gap:7px;margin:8px 0 0;display:flex}.garage-status-dot{background:var(--ok);width:8px;height:8px;box-shadow:0 0 0 3px color-mix(in srgb, var(--ok) 22%, transparent);border-radius:50%;flex-shrink:0}.garage-status.tone-soon{color:var(--warn)}.garage-status.tone-soon .garage-status-dot{background:var(--warn);box-shadow:0 0 0 3px color-mix(in srgb, var(--warn) 22%, transparent)}.garage-status.tone-expired{color:var(--alert)}.garage-status.tone-expired .garage-status-dot{background:var(--alert);box-shadow:0 0 0 3px color-mix(in srgb, var(--alert) 22%, transparent)}.garage-status.tone-none .garage-status-dot{background:var(--ink-3);box-shadow:none}.car-hero{height:200px;padding:0 var(--s4) 22px;isolation:isolate;justify-content:center;align-items:flex-end;margin:-4px 0 0;display:flex;position:relative}.car-hero-light{z-index:-1;background:radial-gradient(closest-side, color-mix(in srgb, var(--app-accent) 16%, transparent), transparent);filter:blur(6px);position:absolute;inset:0 8% 10%}.car-hero-floor{z-index:-1;background:radial-gradient(closest-side,#0000008c,#0000002e 60%,#0000);border-radius:50%;height:28px;position:absolute;bottom:14px;left:14%;right:14%}:root[data-mode=light] .car-hero-floor{background:radial-gradient(closest-side,#00000038,#0000000f 60%,#0000)}.car-hero-img{object-fit:contain;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;max-width:100%;max-height:168px;animation:.7s cubic-bezier(.2,.8,.2,1) both car-arrive;display:block}.car-hero.is-cut .car-hero-img{-webkit-box-reflect:below -2px linear-gradient(transparent 72%, #ffffff29);filter:drop-shadow(0 10px 12px #00000059)}.car-hero.is-feathered{padding:0}.car-hero.is-feathered .car-hero-img{object-fit:cover;width:100%;height:100%;max-height:none;-webkit-mask-image:radial-gradient(62% 58% at 50% 52%,#000 45%,#0000 100%);mask-image:radial-gradient(62% 58% at 50% 52%,#000 45%,#0000 100%)}@keyframes car-arrive{0%{opacity:0;transform:translateY(10px)scale(.98)}}.car-hero--empty{align-items:center;height:150px;padding-bottom:0}.car-hero-add{align-items:center;gap:var(--s2);min-height:var(--tap);padding:var(--s3) var(--s4);border:1px dashed var(--ink-line-strong);color:var(--ink-2);font-family:inherit;font-size:var(--t-footnote);font-weight:var(--w-emph);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border-radius:20px;flex-direction:column;display:inline-flex}.car-hero-add ion-icon{color:var(--accent-ink);font-size:34px}.car-hero-add:active{transform:scale(.97)}@media (prefers-reduced-motion:reduce){.car-hero-img{animation:none}}.gauge-cluster{padding:var(--s4) var(--s3) var(--s5);gap:var(--s2);perspective:900px;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;list-style:none;display:grid}.gauge{--tone:var(--ok);text-align:center;min-width:0;transform-style:preserve-3d;opacity:0;transition:opacity .52s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--i) * .11s);flex-direction:column;align-items:center;display:flex;transform:translateY(12px)rotateX(18deg)}.gauge-cluster.is-on .gauge{opacity:1;transform:rotateX(8deg)}.gauge.tone-soon{--tone:var(--warn)}.gauge.tone-expired{--tone:var(--alert)}.gauge.tone-none{--tone:var(--ink-3)}.gauge-face{aspect-ratio:1;background:radial-gradient(circle at 50% 38%, color-mix(in srgb, var(--ink) 9%, transparent), transparent 62%), #00000038;width:100%;max-width:112px;box-shadow:inset 0 2px 6px #00000073, inset 0 -1px 0 #ffffff0f, 0 0 0 1px color-mix(in srgb, var(--ink) 9%, transparent), 0 14px 24px -14px rgba(var(--shadow-tint), .9), 0 0 26px -12px color-mix(in srgb, var(--tone) 55%, transparent);border-radius:50%;position:relative}:root[data-mode=light] .gauge-face{background:radial-gradient(circle at 50% 30%, #fff, transparent 70%), color-mix(in srgb, var(--ink) 5%, var(--app-surface));box-shadow:inset 0 2px 5px #0000001f, inset 0 -1px 0 #ffffffe6, 0 0 0 1px color-mix(in srgb, var(--ink) 10%, transparent), 0 14px 22px -14px rgba(var(--shadow-tint), .5), 0 0 26px -12px color-mix(in srgb, var(--tone) 45%, transparent)}:root[data-mode=light] .gauge-glass{background:linear-gradient(165deg,#ffffffb3 0%,#ffffff26 34%,#0000 48%)}.gauge-face svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.gauge-tick{stroke:var(--ink-3);stroke-width:1px;stroke-linecap:round;opacity:.55}.gauge-tick.is-major{stroke-width:1.6px;opacity:.9}.gauge-track,.gauge-fill{fill:none;stroke-width:7px;stroke-linecap:round}.gauge-track{stroke:color-mix(in srgb, var(--ink) 10%, transparent)}.gauge-fill{stroke:var(--tone);stroke-dasharray:100;filter:drop-shadow(0 0 3px color-mix(in srgb, var(--tone) 70%, transparent));transition:stroke-dashoffset 1.1s cubic-bezier(.22,1,.36,1);transition-delay:calc(.12s + var(--i) * .11s)}.gauge-glass{pointer-events:none;background:linear-gradient(165deg,#ffffff29 0%,#ffffff0a 34%,#0000 48%);border-radius:50%;position:absolute;inset:4%}.gauge-readout{flex-direction:column;justify-content:center;align-items:center;padding-top:6%;display:flex;position:absolute;inset:0}.gauge-value{font-size:1.6rem;font-weight:var(--w-bold);letter-spacing:-.03em;color:var(--ink);font-variant-numeric:tabular-nums;line-height:1}.gauge-unit{font-size:var(--t-micro);font-weight:var(--w-emph);color:var(--ink-2);max-width:9ch;margin-top:3px;line-height:1.15}.gauge.tone-expired .gauge-unit,.gauge.tone-soon .gauge-unit{color:var(--tone)}.gauge-label{margin:var(--s3) 0 0;font-size:var(--t-footnote);font-weight:var(--w-emph);color:var(--ink);line-height:1.2}.gauge-date{font-size:var(--t-caption);color:var(--ink-2);font-variant-numeric:tabular-nums;margin:2px 0 0}.gauge-renew{min-height:var(--tap);margin-top:var(--s2);border:1px solid color-mix(in srgb, var(--ink) 12%, transparent);background:linear-gradient(180deg, color-mix(in srgb, var(--ink) 8%, transparent), transparent), color-mix(in srgb, var(--ink) 3%, transparent);box-shadow:inset 0 1px 0 rgba(255, 255, 255, var(--edge-lo,.06));color:var(--accent-ink);font-family:inherit;font-size:var(--t-caption);font-weight:var(--w-emph);white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform var(--d-fast) var(--ease);border-radius:999px;justify-content:center;align-items:center;gap:5px;padding:0 12px;display:inline-flex}.gauge-renew:active{transform:scale(.94)}.gauge-renew:disabled{opacity:.45}.gauge-renew ion-icon{font-size:14px}@media (prefers-reduced-motion:reduce){.gauge,.gauge-cluster.is-on .gauge{opacity:1;transition:none;transform:none}.gauge-fill{transition:none}}@media (prefers-contrast:more){.gauge-glass{display:none}.gauge-tick{opacity:1}}.chores-content{--background:transparent}.chores-inner{padding:40px var(--page-x) 120px;text-align:left;max-width:640px;margin:0 auto}:root{--chore-urgent:var(--alert);--chore-muted:color-mix(in srgb, var(--app-text) 50%, transparent);--chore-hairline:color-mix(in srgb, var(--app-text) 8%, transparent)}.chores-head-text h1{font-size:var(--t-display);font-weight:var(--w-bold);letter-spacing:var(--tr-display);color:var(--app-text);margin:0;line-height:1}.chores-head-text p{color:var(--chore-muted);margin:8px 0 0;font-size:14px}.chores-head-text .shared-badge{margin-top:10px}.chores-head-text b{color:var(--app-text);font-variant-numeric:tabular-nums}.chores-head-right{flex-direction:column;flex:none;align-items:flex-end;gap:10px;display:flex}.chore-head-actions{align-items:center;gap:8px;display:flex}.chore-share-btn{border:1px solid var(--chore-hairline);background:var(--app-surface);color:var(--app-text);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:999px;align-items:center;gap:6px;padding:7px 13px;font-size:13px;font-weight:600;display:inline-flex}.chore-share-btn ion-icon{font-size:15px}.chore-list-del{border:1px solid color-mix(in srgb, var(--chore-urgent) 35%, transparent);background:color-mix(in srgb, var(--chore-urgent) 10%, transparent);width:34px;height:34px;color:var(--chore-urgent);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.chore-list-del ion-icon{font-size:16px}.chores-ring svg{display:block;transform:rotate(-90deg)}.chores-ring .ring-fill{stroke:var(--app-accent);stroke-linecap:round;filter:drop-shadow(0 0 6px color-mix(in srgb, var(--app-accent) 45%, transparent));transition:stroke-dashoffset .5s cubic-bezier(.4,0,.2,1)}.chores-ring .ring-pct{font-variant-numeric:tabular-nums;color:var(--app-text);justify-content:center;align-items:center;font-size:17px;font-weight:800;display:flex;position:absolute;inset:0}.chores-section-label.urgent{color:var(--chore-urgent)}.chores-section-label.urgent .chores-count{background:color-mix(in srgb, var(--chore-urgent) 16%, transparent);color:var(--chore-urgent)}.chore-sliding.item-sliding-active-slide .chore-card{--border-radius:18px 0 0 18px;border-right:none;border-radius:18px 0 0 18px}.chore-sliding ion-item-options{border:none}.chore-sliding ion-item-option{--button-color:#fff;border-radius:0 18px 18px 0;width:72px}.chore-card.urgent{border-color:color-mix(in srgb, var(--chore-urgent) 35%, transparent);position:relative}.chore-card.urgent::part(native){border-left:3px solid var(--chore-urgent)}.chore-check{border:2px solid var(--chore-muted);border-radius:50%;place-items:center;width:24px;height:24px;margin-right:14px;transition:background .2s,border-color .2s;display:grid}.chore-check ion-icon{color:var(--on-accent);opacity:0;font-size:14px;transition:opacity .2s,transform .2s;transform:scale(.4)}.chore-card.done .chore-check{background:var(--app-accent);border-color:var(--app-accent)}.chore-card.done .chore-check ion-icon{opacity:1;transform:scale(1)}.chore-body{flex-direction:column;flex:1;gap:3px;min-width:0;padding:12px 0;display:flex}.chore-card.done .chore-text{color:var(--chore-muted);text-decoration:line-through}.chore-chip{font-size:var(--t-micro);letter-spacing:1px;text-transform:uppercase;color:var(--chore-urgent);background:color-mix(in srgb, var(--chore-urgent) 12%, transparent);border-radius:999px;flex:none;padding:4px 9px;font-weight:700}.chores-list.completed .chore-card{--background:transparent}.chores-list.completed{box-shadow:none;opacity:.75;background:0 0}.chores-loading{justify-content:center;padding:48px 0;display:flex}.chores-empty{text-align:center;padding:64px 24px}.chores-empty-title{color:var(--app-text);margin:0 0 6px;font-size:20px;font-weight:700}.chores-empty-sub{color:var(--chore-muted);margin:0;font-size:14px}.chores-fab{margin-bottom:calc(var(--nav-h) + var(--nav-gap) * 2 + env(safe-area-inset-bottom));margin-right:6px}.chore-add-modal{--height:auto;--width:100%;--backdrop-opacity:1;align-items:flex-end}.chore-add-modal::part(backdrop){background:#00000061}@media (prefers-reduced-transparency:reduce){.chore-add-modal::part(backdrop){-webkit-backdrop-filter:none;backdrop-filter:none}}.chore-add-modal::part(content){background:var(--glass-sheen), var(--glass-fill-thick);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));box-shadow:var(--glass-shadow), inset 0 1px 0 rgba(255, 255, 255, var(--edge-hi));width:calc(100% - 16px);margin:0 8px 8px;margin-bottom:calc(8px + var(--kb-offset,0px));border-radius:32px;transition:margin-bottom .25s}.chore-add-body{padding:20px 20px calc(16px + env(safe-area-inset-bottom));flex-direction:column;gap:14px;display:flex}.chore-add-title{color:var(--app-text);margin:0 0 2px;font-size:30px;font-weight:700}.chore-add-input{--background:var(--plane-sunk);--color:var(--app-text);--placeholder-color:var(--chore-muted);--padding-start:16px;--padding-end:16px;--padding-top:14px;--padding-bottom:14px;border:1px solid var(--chore-hairline);border-radius:14px;margin:0}.chore-add-toggle{width:100%;font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;justify-content:space-between;align-items:center;margin:0;padding:0;display:flex}.chore-add-toggle:focus-visible{outline:2px solid var(--app-accent);outline-offset:4px;border-radius:10px}.chore-add-row-label{color:var(--app-text);align-items:center;gap:10px;font-size:15px;font-weight:500;display:inline-flex}.chore-add-dot{background:var(--app-accent);width:9px;height:9px;box-shadow:0 0 8px var(--app-accent);border-radius:50%}.chore-add-switch{background:color-mix(in srgb, var(--app-text) 12%, transparent);border:1px solid var(--chore-hairline);border-radius:999px;flex:none;width:50px;height:30px;transition:background .2s;position:relative}.chore-add-switch:after{content:"";background:var(--chore-muted);border-radius:50%;width:22px;height:22px;transition:transform .2s,background .2s;position:absolute;top:3px;left:3px}.chore-add-toggle.on .chore-add-switch{background:color-mix(in srgb, var(--app-accent) 25%, transparent)}.chore-add-toggle.on .chore-add-switch:after{background:var(--app-accent);transform:translate(20px)}.chore-add-btn{--background:var(--app-accent);--background-activated:var(--app-accent);--color:var(--on-accent);--border-radius:14px;text-transform:none;margin:4px 0 0;font-weight:800}.chore-share-list{flex-direction:column;gap:8px;margin:4px 0 2px;display:flex}.chore-share-row{background:var(--app-bg);border:1px solid var(--chore-hairline);width:100%;font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:14px;justify-content:space-between;align-items:center;margin:0;padding:12px 14px;display:flex}.chore-share-name{color:var(--app-text);font-size:15px;font-weight:500}.chore-share-empty{color:var(--chore-muted);margin:4px 2px;font-size:14px}.chore-share-row .chore-add-switch{pointer-events:none}.chore-share-row.on .chore-add-switch{background:color-mix(in srgb, var(--app-accent) 25%, transparent)}.chore-share-row.on .chore-add-switch:after{background:var(--app-accent);transform:translate(20px)}.chore-sliding .trash-tossing{animation:.45s ease-in-out forwards trash-toss}@media (prefers-reduced-motion:reduce){.chores-ring .ring-fill,.chore-check,.chore-check ion-icon,.chore-card,.chore-add-switch,.chore-add-switch:after{transition:none}}button.chore-check{appearance:none;font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;flex:none;padding:0;position:relative}button.chore-check:after{content:"";position:absolute;inset:-10px}button.chore-check:focus-visible{outline:2px solid var(--accent-ink);outline-offset:3px}button.chore-body{appearance:none;font:inherit;color:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;align-items:flex-start;margin:0;padding:12px 0}.chore-when{font-size:var(--t-caption);font-weight:var(--w-emph);color:var(--accent-ink);font-variant-numeric:tabular-nums;align-items:center;gap:5px;display:inline-flex}.chore-when ion-icon{font-size:13px}.chore-when.overdue{color:var(--alert)}.chore-card.done .chore-when{color:var(--chore-muted)}.chore-fields{border:1px solid var(--chore-hairline);background:var(--plane-sunk);border-radius:16px;overflow:hidden}.chore-field{min-height:var(--tap);color:var(--app-text);justify-content:space-between;align-items:center;gap:12px;padding:4px 14px;font-size:15px;display:flex}.chore-field+.chore-field{border-top:1px solid var(--chore-hairline)}.chore-field input,.chore-field select{appearance:none;font:inherit;color:var(--accent-ink);text-align:right;background:0 0;border:0;max-width:60%;min-height:36px;font-weight:600}.chore-field select{padding-right:4px}.chore-field input:disabled,.chore-field select:disabled{color:var(--chore-muted)}.chore-field-hint{min-height:1.2em;font-size:var(--t-caption);color:var(--chore-muted);margin:-4px 4px 0}.chore-field-clear{font:inherit;font-size:var(--t-footnote);color:var(--alert);cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:6px 4px;font-weight:600}.chores-error{text-align:center;padding:var(--s6) var(--s4);border:1px solid color-mix(in srgb, var(--alert) 40%, transparent);background:color-mix(in srgb, var(--alert) 7%, transparent);border-radius:26px;flex-direction:column;align-items:center;gap:6px;display:flex}.chores-error-title{font-size:var(--t-callout);color:var(--ink);margin:0;font-weight:700}.chores-error-body{margin:0 0 var(--s3);font-size:var(--t-footnote);color:var(--ink-2);overflow-wrap:anywhere;max-width:34ch}.wl-content{--background:transparent}.wl-inner{padding:40px var(--page-x) 96px;max-width:680px;margin:0 auto}.wl-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.wl-head-text h1{font-size:var(--t-display);line-height:var(--lh-display);letter-spacing:var(--tr-display);font-weight:var(--w-bold);color:var(--app-text);margin:0}.wl-head-text p{color:color-mix(in srgb, var(--app-text) 60%, transparent);margin:4px 0 0;font-size:13.5px}.wl-head-text p b{color:var(--app-text)}.wl-head-text .shared-badge{margin-top:8px}.wl-head-actions{flex:none;align-items:center;gap:8px;display:flex}.wl-share-btn{color:var(--accent-on-chip);background:color-mix(in srgb, var(--app-accent) 14%, transparent);border:none;border-radius:999px;align-items:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:700;display:inline-flex}.wl-share-btn ion-icon{font-size:16px}.wl-list-del{width:38px;height:38px;color:var(--alert);background:color-mix(in srgb, var(--alert) 12%, transparent);border:none;border-radius:12px;justify-content:center;align-items:center;display:inline-flex}.wl-list-del ion-icon{font-size:18px}.wl-loading{justify-content:center;padding:48px 0;display:flex}.wl-empty{text-align:center;padding:56px 24px}.wl-empty-icon{color:var(--app-accent);opacity:.85;font-size:40px}.wl-empty-title{color:var(--app-text);margin:12px 0 4px;font-size:17px;font-weight:700}.wl-empty-sub{color:color-mix(in srgb, var(--app-text) 55%, transparent);margin:0;font-size:13.5px}.wl-list{background:0 0;flex-direction:column;gap:10px;padding:0;display:flex}.wl-sliding{border-radius:16px;overflow:hidden}.wl-card{--background:var(--plane);box-shadow:var(--e1), var(--card-rim);--inner-padding-end:12px;--padding-start:12px;--min-height:76px;border:1px solid color-mix(in srgb, var(--app-text) 9%, transparent);border-radius:16px}.wl-card.archived{opacity:.55}.wl-thumb{object-fit:cover;background:color-mix(in srgb, var(--app-text) 8%, transparent);border-radius:12px;flex:none;align-self:center;width:52px;height:52px;margin-right:12px}.wl-thumb--placeholder{letter-spacing:.02em;color:var(--accent-on-chip);background:color-mix(in srgb, var(--app-accent) 14%, transparent);justify-content:center;align-items:center;font-size:15px;font-weight:800;display:flex}.wl-body{flex-direction:column;gap:2px;min-width:0;padding:10px 0;display:flex}.wl-title{color:var(--app-text);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:15px;font-weight:700;line-height:1.25;display:-webkit-box;overflow:hidden}.wl-meta{color:color-mix(in srgb, var(--app-text) 58%, transparent);font-size:12.5px}.wl-notes{color:color-mix(in srgb, var(--app-text) 48%, transparent);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.wl-owner{color:color-mix(in srgb, var(--app-text) 50%, transparent);font-size:11.5px;font-weight:600}.wl-reserved{border-radius:999px;width:fit-content;margin-top:2px;padding:2px 8px;font-size:11.5px;font-weight:700}.wl-reserved.reserved{color:var(--warn);background:color-mix(in srgb, var(--warn) 16%, transparent)}.wl-reserved.bought{color:var(--ok);background:color-mix(in srgb, var(--ok) 16%, transparent)}.wl-actions{align-self:center;align-items:center;gap:6px;display:flex}.wl-open,.wl-edit,.wl-gift{width:38px;height:38px;color:var(--app-text);background:color-mix(in srgb, var(--app-text) 8%, transparent);border:none;border-radius:12px;flex:none;justify-content:center;align-items:center;display:inline-flex}.wl-open ion-icon,.wl-edit ion-icon,.wl-gift ion-icon{font-size:18px}.wl-gift:disabled{opacity:.4}@keyframes wl-trash-toss{0%{transform:scale(1)rotate(0)}25%{transform:scale(1.4)rotate(-18deg)}50%{transform:scale(1.4)rotate(16deg)}75%{transform:scale(1.4)rotate(-12deg)}to{opacity:0;transform:scale(.6)rotate(0)}}.wl-sliding .trash-tossing{animation:.45s ease-in-out forwards wl-trash-toss}.wl-fab{margin-bottom:calc(var(--nav-h) + var(--nav-gap) * 2 + env(safe-area-inset-bottom));margin-right:6px}.wl-share-modal{--height:auto;--width:100%;--backdrop-opacity:1;align-items:flex-end}.wl-share-modal::part(backdrop){background:#00000061}@media (prefers-reduced-transparency:reduce){.wl-share-modal::part(backdrop){-webkit-backdrop-filter:none;backdrop-filter:none}}.wl-share-modal::part(content){background:var(--app-surface,var(--app-bg));border-radius:22px 22px 0 0}.wl-editor{--background:transparent;padding:20px 18px calc(28px + env(safe-area-inset-bottom) + var(--kb-offset,0px))}.wl-editor-title{color:var(--app-text);margin:0 0 14px;font-size:20px;font-weight:800}.wl-field-label{color:color-mix(in srgb, var(--app-text) 62%, transparent);margin:12px 2px 5px;font-size:12.5px;font-weight:700;display:block}.wl-input{--background:color-mix(in srgb, var(--app-text) 5%, transparent);--color:var(--app-text);--placeholder-color:color-mix(in srgb, var(--app-text) 40%, transparent);--padding-start:12px;--padding-end:12px;--border-radius:12px;border:1px solid color-mix(in srgb, var(--app-text) 10%, transparent);border-radius:12px}.wl-row{gap:12px;display:flex}.wl-col{flex:1;min-width:0}.wl-col--narrow{flex:0 0 90px}.wl-preview-row{flex-wrap:wrap;align-items:center;gap:10px;margin-top:8px;display:flex}.wl-fill-btn{--color:var(--app-accent);--border-color:color-mix(in srgb, var(--app-accent) 40%, transparent);margin:0}.wl-preview-msg{color:color-mix(in srgb, var(--app-text) 60%, transparent);font-size:12px}.wl-preview-msg.done{color:var(--ok)}.wl-preview-msg.error{color:var(--alert)}.wl-preview-msg.loading{color:var(--app-accent)}.wl-vis-toggle{border:1px solid color-mix(in srgb, var(--app-text) 10%, transparent);background:color-mix(in srgb, var(--app-text) 4%, transparent);border-radius:14px;justify-content:space-between;align-items:center;width:100%;margin:18px 0 4px;padding:12px 14px;display:flex}.wl-vis-label{color:var(--app-text);flex-direction:column;align-items:flex-start;gap:2px;font-size:14px;font-weight:700;display:flex}.wl-vis-label ion-icon{display:none}.wl-vis-hint{color:color-mix(in srgb, var(--app-text) 52%, transparent);font-size:11.5px;font-weight:500}.wl-switch{background:color-mix(in srgb, var(--app-text) 12%, transparent);border:1px solid color-mix(in srgb, var(--app-text) 14%, transparent);pointer-events:none;border-radius:999px;flex:none;width:50px;height:30px;transition:background .2s;position:relative}.wl-switch:after{content:"";background:color-mix(in srgb, var(--app-text) 45%, transparent);border-radius:50%;width:22px;height:22px;transition:transform .2s,background .2s;position:absolute;top:3px;left:3px}.wl-vis-toggle.on .wl-switch,.wl-share-row.on .wl-switch{background:color-mix(in srgb, var(--app-accent) 25%, transparent)}.wl-vis-toggle.on .wl-switch:after,.wl-share-row.on .wl-switch:after{background:var(--app-accent);transform:translate(20px)}.wl-save-btn{--background:var(--app-accent);--background-activated:var(--app-accent);margin-top:20px}.wl-share-list{flex-direction:column;gap:10px;display:flex}.wl-share-row{border:1px solid color-mix(in srgb, var(--app-text) 10%, transparent);background:color-mix(in srgb, var(--app-text) 4%, transparent);border-radius:14px;justify-content:space-between;align-items:center;width:100%;padding:12px 14px;display:flex}.wl-share-name{color:var(--app-text);font-size:14.5px;font-weight:600}.wl-share-empty{color:color-mix(in srgb, var(--app-text) 55%, transparent);text-align:center;padding:24px 0;font-size:13.5px}@media (prefers-reduced-motion:reduce){.wl-sliding .trash-tossing,.wl-switch,.wl-switch:after{transition:none;animation:none}}.wl-end{flex-direction:column;flex:none;align-items:flex-end;gap:2px;display:flex}.wl-actions{align-items:center;gap:0;display:flex}.wl-body{flex:1;min-width:0}.wl-price{font-size:var(--t-callout);font-weight:var(--w-emph);color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;flex:none}.wl-title{font-size:var(--t-body);font-weight:var(--w-emph);color:var(--ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.25;display:-webkit-box;overflow:hidden}.wl-meta{font-size:var(--t-footnote);color:var(--ink-2);margin-top:2px}.wl-owner{color:var(--ink-3)}.wl-open,.wl-edit,.wl-gift{width:var(--tap);height:var(--tap);border-radius:var(--r-pill);color:var(--ink-3);cursor:pointer;background:0 0;border:none;place-items:center;font-size:19px;display:grid}.wl-open:active,.wl-edit:active,.wl-gift:active{background:var(--fill);color:var(--ink)}.wl-gift.on{color:var(--accent-on-chip);background:color-mix(in srgb, var(--app-accent) 14%, transparent)}.wl-thumb--placeholder{font-family:var(--font-display);font-size:22px;font-weight:var(--w-regular);color:var(--ink-3);background:var(--plane-sunk);place-items:center;display:grid}.weather-content{--background:transparent}.weather-inner{padding:40px var(--page-x) 120px;text-align:left;max-width:640px;margin:0 auto}:root{--weather-card:color-mix(in srgb, var(--app-surface) 70%, transparent);--weather-hairline:color-mix(in srgb, var(--app-text) 10%, transparent);--weather-muted:color-mix(in srgb, var(--app-text) 55%, transparent);--weather-faint:color-mix(in srgb, var(--app-text) 38%, transparent)}.weather-error{color:var(--alert);margin:0 0 14px;font-size:14px}.weather-loading{justify-content:center;padding:48px 0;display:flex}.weather-empty{text-align:center;background:var(--weather-card);border:1px solid var(--weather-hairline);border-radius:20px;flex-direction:column;align-items:center;gap:6px;padding:36px 16px;display:flex}.weather-empty-title{color:var(--app-text);margin:8px 0 0;font-size:20px;font-weight:700}.weather-empty-sub{color:var(--weather-muted);margin:0;font-size:14px}.weather-section{margin-top:24px}.weather-section-title{color:var(--app-text);margin:0 0 12px;font-size:22px;font-weight:700}.weather-empty-btn,.weather-manage{cursor:pointer;justify-content:center;align-items:center;gap:8px;transition:opacity .15s,transform .1s;display:inline-flex}.weather-empty-btn:active,.weather-manage:active{transform:scale(.98)}.weather-empty-btn{background:var(--app-accent);color:var(--app-bg);border:none;border-radius:14px;margin-top:14px;padding:12px 18px;font-size:15px;font-weight:700}.weather-empty-btn ion-icon{font-size:18px}.weather-manage{border:1px solid var(--weather-hairline);width:100%;color:var(--weather-muted);background:0 0;border-radius:14px;margin-top:20px;padding:12px;font-size:14px;font-weight:600}.weather-manage ion-icon{font-size:17px}.wx-window{isolation:isolate;min-height:300px;padding:var(--s5);color:#fff;background:rgb(var(--scrim-rgb));box-shadow:inset 0 1px 0 #ffffff24, 0 30px 60px -32px rgba(var(--shadow-tint), .9), 0 2px 8px -2px rgba(var(--shadow-tint), .35);border:1px solid #ffffff1a;border-radius:32px;grid-template-rows:auto 1fr auto;display:grid;position:relative;overflow:hidden}.wx-window-photo{z-index:-3;object-fit:cover;filter:saturate(.9)contrast(.95);width:100%;height:100%;animation:.9s cubic-bezier(.2,.8,.2,1) both wx-arrive;position:absolute;inset:0}@keyframes wx-arrive{0%{opacity:0;transform:scale(1.06)}}.wx-window-scrim{z-index:-1;pointer-events:none;background:linear-gradient(180deg, rgba(var(--scrim-rgb), .62) 0, rgba(var(--scrim-rgb), .5) 56px, transparent 110px), linear-gradient(0deg, rgba(var(--scrim-rgb), .9) 0%, rgba(var(--scrim-rgb), .78) 38%, transparent 70%);position:absolute;inset:0}.wx-window-top{justify-content:space-between;align-items:center;gap:var(--s2);min-width:0;display:flex}.wx-place{min-width:0;font-size:var(--t-subhead);font-weight:var(--w-emph);text-shadow:0 1px 3px #0006;text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;display:inline-flex;overflow:hidden}.wx-place ion-icon{flex:none;font-size:17px}.wx-live{font-size:var(--t-caption);font-weight:var(--w-bold);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff29;border:1px solid #ffffff47;border-radius:999px;flex:none;align-items:center;gap:4px;padding:4px 10px;display:inline-flex}.wx-live.is-locating{opacity:.75}.wx-window-glyph{margin-top:var(--s3);filter:drop-shadow(0 14px 18px #00000073);place-self:start end}.wx-readout{text-shadow:0 1px 3px #00000059;flex-direction:column;gap:2px;display:flex}.wx-temp{font-family:var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:5.5rem;line-height:.9}.wx-cond{font-size:var(--t-title3,1.25rem);font-weight:var(--w-emph);margin-top:6px}.wx-hilo{font-size:var(--t-subhead);color:#ffffffd1;font-variant-numeric:tabular-nums}.wx-fx{z-index:-2;pointer-events:none;position:absolute;inset:0;overflow:hidden}.wx-fx-layer{position:absolute;inset:-20% -10%}.fx-rain .wx-fx-layer,.fx-storm .wx-fx-layer{background-image:repeating-linear-gradient(102deg,#0000 0 14px,#ffffff38 14px 15px,#0000 15px 31px);background-size:100% 90px;animation:.55s linear infinite wx-rain}.fx-rain .wx-fx-b,.fx-storm .wx-fx-b{opacity:.55;background-size:100% 130px;animation-duration:.8s;transform:translate(9px)}@keyframes wx-rain{to{background-position:-18px 90px}}.fx-snow .wx-fx-layer{background-image:radial-gradient(2.4px 2.4px at 20px 30px,#ffffffe6,#0000),radial-gradient(1.8px 1.8px at 70px 90px,#fffc,#0000),radial-gradient(2.8px 2.8px at 120px 50px,#ffffffd9,#0000),radial-gradient(1.6px 1.6px at 160px 120px,#ffffffb3,#0000);background-size:180px 160px;animation:7s linear infinite wx-snow}.fx-snow .wx-fx-b{opacity:.6;background-size:240px 220px;animation-duration:11s}@keyframes wx-snow{to{background-position:40px 160px}}.fx-fog .wx-fx-layer{filter:blur(8px);background:radial-gradient(60% 30% at 30% 60%,#ffffff38,#0000 70%),radial-gradient(50% 25% at 75% 45%,#ffffff2e,#0000 70%);animation:18s ease-in-out infinite alternate wx-fog}.fx-fog .wx-fx-b{animation-duration:26s;animation-direction:alternate-reverse}@keyframes wx-fog{to{transform:translate(12%)}}.wx-fx-flash{opacity:0;background:radial-gradient(70% 50% at 70% 20%,#dce6ff59,#0000 70%);animation:9s ease-out 2s infinite wx-flash;position:absolute;inset:0}.wx-stats{gap:var(--s2);margin:var(--s3) 0 var(--s2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.wx-stat{isolation:isolate;background:linear-gradient(180deg, color-mix(in srgb, var(--ink) 6%, transparent), transparent), var(--plane);border:1px solid color-mix(in srgb, var(--ink) 10%, transparent);box-shadow:inset 0 1px 0 rgba(255, 255, 255, var(--edge-lo,.06)), 0 12px 22px -16px rgba(var(--shadow-tint), .8);border-radius:20px;flex-direction:column;gap:2px;padding:12px 12px 10px;display:flex;position:relative;overflow:hidden}.wx-stat ion-icon{color:var(--accent-ink);margin-bottom:4px;font-size:18px}.wx-stat-value{font-size:var(--t-title3,1.25rem);font-weight:var(--w-bold);letter-spacing:-.01em;color:var(--ink);font-variant-numeric:tabular-nums}.wx-stat-value small{font-size:var(--t-caption);font-weight:var(--w-emph);color:var(--ink-2)}.wx-stat-label{font-size:var(--t-caption);color:var(--ink-2)}.wx-stat-fill{height:var(--level);z-index:-1;background:linear-gradient(#5aa9ff42,#5aa9ff1a);border-top:1px solid #8cc4ff73;animation:1.1s cubic-bezier(.2,.8,.2,1) .2s both wx-fill;position:absolute;inset:auto 0 0}@keyframes wx-fill{0%{height:0}}.wx-section-title{margin:0 var(--s1) var(--s3);font-size:var(--t-caption);font-weight:var(--w-bold);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}.wx-hours{scrollbar-width:none;background:var(--plane);border:1px solid color-mix(in srgb, var(--ink) 10%, transparent);box-shadow:inset 0 1px 0 rgba(255, 255, 255, var(--edge-lo,.06));border-radius:24px;padding:10px 0 12px;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000,#000 16px calc(100% - 16px),#0000);mask-image:linear-gradient(90deg,#0000,#000 16px calc(100% - 16px),#0000)}.wx-hours::-webkit-scrollbar{display:none}.wx-hours-track{display:flex;position:relative}.wx-curve{pointer-events:none;position:absolute;top:26px;left:0}.wx-curve-line{fill:none;stroke:var(--app-accent);stroke-width:2px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1px;filter:drop-shadow(0 0 4px color-mix(in srgb, var(--app-accent) 60%, transparent));animation:1.4s cubic-bezier(.4,0,.2,1) .2s forwards wx-draw}.wx-curve-area{opacity:0;animation:.8s 1s forwards wx-fade}@keyframes wx-draw{to{stroke-dashoffset:0}}@keyframes wx-fade{to{opacity:1}}.wx-hour{flex-direction:column;flex:none;align-items:center;gap:38px;padding:0 4px;display:flex;position:relative}.wx-hour-temp{font-size:var(--t-footnote);font-weight:var(--w-bold);color:var(--ink);font-variant-numeric:tabular-nums}.wx-hour-time{font-size:var(--t-caption);color:var(--ink-2);font-variant-numeric:tabular-nums;margin-top:-32px}.wx-hour.is-now .wx-hour-temp,.wx-hour.is-now .wx-hour-time{color:var(--accent-ink)}.wx-hour.is-now:before{content:"";z-index:-1;background:color-mix(in srgb, var(--app-accent) 12%, transparent);border:1px solid color-mix(in srgb, var(--app-accent) 30%, transparent);border-radius:16px;position:absolute;inset:-4px 6px -6px}.wx-days{background:var(--plane);border:1px solid color-mix(in srgb, var(--ink) 10%, transparent);box-shadow:inset 0 1px 0 rgba(255, 255, 255, var(--edge-lo,.06)), 0 18px 34px -24px rgba(var(--shadow-tint), .8);border-radius:24px;margin:0;padding:6px 14px;list-style:none}.wx-day{grid-template-columns:58px 34px 34px minmax(0,1fr) 34px;align-items:center;gap:8px;min-height:52px;display:grid}.wx-day+.wx-day{border-top:1px solid var(--ink-line)}.wx-day-name{font-size:var(--t-callout);font-weight:var(--w-emph);color:var(--ink)}.wx-day.is-today .wx-day-name{color:var(--accent-ink)}.wx-day-glyph{justify-content:center;display:flex}.wx-day-low,.wx-day-high{font-size:var(--t-callout);font-variant-numeric:tabular-nums;text-align:right}.wx-day-low{color:var(--ink-2)}.wx-day-high{font-weight:var(--w-bold);color:var(--ink)}.wx-range{background:color-mix(in srgb, var(--ink) 10%, transparent);border-radius:999px;height:6px;position:relative;box-shadow:inset 0 1px 2px #00000059}.wx-range-fill{transform-origin:0;animation:.7s cubic-bezier(.2,.8,.2,1) both wx-grow;animation-delay:calc(.2s + var(--i) * 80ms);border-radius:999px;position:absolute;top:0;bottom:0;box-shadow:0 0 10px -2px #ffffff40}@keyframes wx-grow{0%{transform:scaleX(0)}}.wx-range-now{width:10px;height:10px;box-shadow:0 0 0 2px rgb(var(--scrim-rgb)), 0 0 8px #fff9;background:#fff;border-radius:50%;margin:-5px 0 0 -5px;position:absolute;top:50%}@media (prefers-reduced-motion:reduce){.wx-window-photo,.wx-stat-fill,.wx-range-fill,.wx-curve-area{animation:none}.wx-curve-area{opacity:1}.wx-curve-line{stroke-dashoffset:0;animation:none}.wx-fx{display:none}}.photos-content{--background:transparent}.photos-inner{max-width:900px;margin:0 auto;padding:18px 16px 40px}.photos-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.photos-head-text h1{color:var(--app-text);margin:0 0 4px;font-size:26px;font-weight:800}.photos-head-text p{color:color-mix(in srgb, var(--app-text) 65%, transparent);margin:2px 0 0;font-size:14px}.photos-head-text .shared-badge{margin-top:2px}.photos-head-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.photos-btn{background:color-mix(in srgb, var(--app-accent) 16%, transparent);color:var(--accent-on-chip);cursor:pointer;border:none;border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font-size:14px;font-weight:600;display:inline-flex}.photos-btn--danger{color:var(--alert);background:#ff3b3029;padding:8px 12px}.photos-btn ion-icon{font-size:17px}.photos-import{background:color-mix(in srgb, var(--app-surface) 88%, #fff);border-radius:16px;margin-bottom:18px;padding:14px;box-shadow:0 6px 18px #0000001f}.photos-import-btn{--border-radius:12px;margin:0}.photos-import-hint{color:color-mix(in srgb, var(--app-text) 60%, transparent);margin:10px 2px 0;font-size:13px}.photos-import-meta{justify-content:space-between;align-items:center;margin-top:10px;display:flex}.photos-import-account{color:color-mix(in srgb, var(--app-text) 70%, transparent);align-items:center;gap:6px;font-size:13px;display:inline-flex}.photos-import-disc{color:var(--app-accent);cursor:pointer;background:0 0;border:none;font-size:13px;font-weight:600}.photos-import-busy{align-items:center;gap:12px;display:flex}.photos-import-msg{color:var(--app-text);flex:1;font-size:14px}.photos-import-cancel{background:color-mix(in srgb, var(--app-text) 10%, transparent);color:var(--app-text);cursor:pointer;border:none;border-radius:999px;padding:6px 14px;font-weight:600}.photos-progress-head{color:var(--app-text);justify-content:space-between;align-items:center;margin-bottom:8px;font-size:14px;font-weight:600;display:flex}.photos-progress-track{background:color-mix(in srgb, var(--app-text) 12%, transparent);border-radius:999px;height:8px;overflow:hidden}.photos-progress-fill{border-radius:inherit;background:var(--app-accent);height:100%;transition:width .4s}.photos-people{margin-bottom:16px}.photos-people-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.photos-people-title{color:var(--app-text);font-size:16px;font-weight:700}.photos-people-scan{background:color-mix(in srgb, var(--app-accent) 14%, transparent);color:var(--app-accent);cursor:pointer;border:none;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;font-size:13px;font-weight:600;display:inline-flex}.photos-people-scanning{color:color-mix(in srgb, var(--app-text) 65%, transparent);align-items:center;gap:6px;font-size:13px;display:inline-flex}.photos-people-scanning ion-spinner{width:18px;height:18px}.photos-people-empty{color:color-mix(in srgb, var(--app-text) 55%, transparent);margin:0;font-size:13px}.photos-people-row{scrollbar-width:none;gap:14px;padding-bottom:4px;display:flex;overflow-x:auto}.photos-people-row::-webkit-scrollbar{display:none}.photos-person{flex-direction:column;flex-shrink:0;align-items:center;gap:5px;width:66px;display:flex}.photos-person-avatar-wrap{width:62px;height:62px;position:relative}.photos-person-avatar{cursor:pointer;background-color:color-mix(in srgb, var(--app-text) 10%, transparent);border:2px solid #0000;border-radius:50%;width:62px;height:62px;padding:0}.photos-person-edit{border:2px solid var(--app-surface);background:var(--app-accent);color:#fff;cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;padding:0;font-size:13px;display:flex;position:absolute;bottom:-2px;right:-2px}.photos-person-avatar.on{border-color:var(--app-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--app-accent) 35%, transparent)}.photos-person-name{text-overflow:ellipsis;white-space:nowrap;max-width:66px;color:var(--app-text);cursor:pointer;background:0 0;border:none;font-size:12px;font-weight:600;overflow:hidden}.photos-person-name.unnamed{color:var(--app-accent);font-weight:500}.photos-person-name:disabled{cursor:default}.photos-person-field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.photos-person-field span{color:color-mix(in srgb, var(--app-text) 70%, transparent);font-size:13px;font-weight:600}.photos-person-input{border:1px solid color-mix(in srgb, var(--app-text) 18%, transparent);background:color-mix(in srgb, var(--app-text) 5%, transparent);color:var(--app-text);border-radius:12px;padding:12px 14px;font-size:16px}.photos-sheet-sub{color:color-mix(in srgb, var(--app-text) 70%, transparent);align-items:center;gap:6px;margin:16px 0 8px;font-size:13px;font-weight:600;display:flex}.photos-merge-list{flex-direction:column;gap:6px;max-height:220px;margin-bottom:12px;display:flex;overflow-y:auto}.photos-merge-row{background:color-mix(in srgb, var(--app-text) 6%, transparent);cursor:pointer;border:none;border-radius:12px;align-items:center;gap:10px;padding:8px 12px;display:flex}.photos-merge-avatar{background-color:color-mix(in srgb, var(--app-text) 10%, transparent);border-radius:50%;flex-shrink:0;width:34px;height:34px}.photos-merge-name{text-align:left;color:var(--app-text);flex:1;font-size:15px;font-weight:600}.photos-merge-count{color:color-mix(in srgb, var(--app-text) 55%, transparent);font-size:13px}.photos-person-remove{width:100%;color:var(--alert);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;gap:6px;margin-top:6px;padding:12px;font-size:14px;font-weight:600;display:flex}.photos-filters{flex-direction:column;align-items:stretch;gap:8px;margin-bottom:12px;display:flex}.photos-filter-group{background:color-mix(in srgb, var(--app-text) 8%, transparent);border-radius:999px;gap:2px;padding:3px;display:flex}.photos-filter{color:color-mix(in srgb, var(--app-text) 65%, transparent);cursor:pointer;background:0 0;border:none;border-radius:999px;flex:1;padding:7px 14px;font-size:13px;font-weight:600}.photos-filter.on{background:var(--app-surface);color:var(--app-text);box-shadow:0 1px 4px #00000026}.photos-sort{background:color-mix(in srgb, var(--app-text) 8%, transparent);color:var(--app-text);cursor:pointer;border:none;border-radius:999px;align-items:center;gap:5px;padding:7px 14px;font-size:13px;font-weight:600;display:inline-flex}.photos-sort ion-icon{font-size:16px}.photos-nomatch{text-align:center;color:color-mix(in srgb, var(--app-text) 60%, transparent);padding:28px 4px;font-size:14px}.photos-grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}@media (width>=640px){.photos-grid{grid-template-columns:repeat(4,1fr)}}.photos-cell{aspect-ratio:1;background:color-mix(in srgb, var(--app-text) 8%, transparent);cursor:pointer;border:none;border-radius:12px;padding:0;position:relative;overflow:hidden}.photos-thumb{object-fit:cover;width:100%;height:100%;display:block}.photos-cell:active .photos-thumb{transform:scale(.97)}.photos-play{color:#fff;filter:drop-shadow(0 2px 6px #00000080);pointer-events:none;background:linear-gradient(#0000000d,#00000047);justify-content:center;align-items:center;font-size:40px;display:flex;position:absolute;inset:0}.photos-loading{justify-content:center;padding:48px 0;display:flex}.photos-empty{text-align:center;color:color-mix(in srgb, var(--app-text) 70%, transparent);padding:44px 20px}.photos-empty-icon{color:color-mix(in srgb, var(--app-accent) 70%, transparent);font-size:46px}.photos-empty-title{color:var(--app-text);margin:12px 0 4px;font-size:18px;font-weight:700}.photos-empty-sub{margin:0;font-size:14px}.photos-viewer-modal{--background:#000000f5;--width:100%;--height:100%}.photos-viewer{background:#000;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.photos-viewer-media{object-fit:contain;max-width:100%;max-height:100%}.photos-viewer-close,.photos-viewer-act{color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);cursor:pointer;background:#00000080;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:flex}.photos-viewer-close{top:max(14px, env(safe-area-inset-top));z-index:2;position:absolute;left:14px}.photos-viewer-actions{top:max(14px, env(safe-area-inset-top));z-index:2;gap:10px;display:flex;position:absolute;right:14px}.photos-viewer-act.on{color:var(--warn)}.photos-viewer-act--del{color:var(--alert)}.photos-viewer-nav{color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);cursor:pointer;z-index:2;background:#00000073;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:24px;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.photos-viewer-nav.prev{left:12px}.photos-viewer-nav.next{right:12px}.photos-viewer-nav:active{background:#000000a6}.photos-sheet-modal{--height:auto;--border-radius:20px 20px 0 0;align-items:flex-end}.photos-sheet-body{padding:20px 18px calc(20px + env(safe-area-inset-bottom));background:var(--app-surface)}.photos-sheet-title{color:var(--app-text);margin:0 0 14px;font-size:19px;font-weight:800}.photos-sheet-empty{color:color-mix(in srgb, var(--app-text) 60%, transparent);padding:16px 4px;font-size:14px}.photos-share-list{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.photos-share-row{background:color-mix(in srgb, var(--app-text) 6%, transparent);cursor:pointer;border:none;border-radius:12px;justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.photos-share-name{color:var(--app-text);font-size:15px;font-weight:600}.photos-share-switch{background:color-mix(in srgb, var(--app-text) 20%, transparent);border-radius:999px;flex-shrink:0;width:42px;height:26px;transition:background .2s;position:relative}.photos-share-switch:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;top:3px;left:3px}.photos-share-row.on .photos-share-switch{background:var(--app-accent)}.photos-share-row.on .photos-share-switch:after{transform:translate(16px)}.photos-sheet-btn{--border-radius:12px;margin:0}.photos-sheet-note{text-align:center;color:color-mix(in srgb, var(--app-text) 55%, transparent);margin:12px 2px 0;font-size:12px}.photos-storage{margin-bottom:14px}.photos-storage-head{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:6px;display:flex}.photos-storage-label{color:var(--app-text);font-size:13px;font-weight:700}.photos-storage-free{color:color-mix(in srgb, var(--app-text) 65%, transparent);font-size:13px}.photos-storage-fill{border-radius:inherit;background:var(--app-accent);height:100%;transition:width .4s}.photos-storage-fill.low{background:var(--alert)}.photos-storage-sub{color:color-mix(in srgb, var(--app-text) 55%, transparent);margin:6px 2px 0;font-size:12px}.photos-add-actions{gap:8px;display:flex}.photos-add-actions .photos-import-btn{flex:1}.photos-target{align-items:center;gap:8px;margin-bottom:10px;display:flex}.photos-target-label{color:color-mix(in srgb, var(--app-text) 70%, transparent);flex-shrink:0;font-size:13px;font-weight:700}.photos-target-chips{scrollbar-width:none;gap:6px;display:flex;overflow-x:auto}.photos-target-chips::-webkit-scrollbar{display:none}.photos-target-chip{background:color-mix(in srgb, var(--app-text) 8%, transparent);color:var(--app-text);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;border:1.5px solid #0000;border-radius:999px;flex-shrink:0;max-width:160px;padding:6px 12px;font-size:13px;font-weight:600;overflow:hidden}.photos-target-chip.on{border-color:var(--app-accent);background:color-mix(in srgb, var(--app-accent) 16%, transparent);color:var(--app-accent)}.photos-folders{margin-bottom:16px}.photos-folders-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.photos-folders-title{color:var(--app-text);align-items:center;gap:6px;font-size:16px;font-weight:700;display:inline-flex}.photos-folder-new{background:color-mix(in srgb, var(--app-accent) 14%, transparent);color:var(--accent-on-chip);cursor:pointer;border:none;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;font-size:13px;font-weight:600;display:inline-flex}.photos-folders-empty{color:color-mix(in srgb, var(--app-text) 55%, transparent);margin:0;font-size:13px}.photos-folder-row{scrollbar-width:none;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.photos-folder-row::-webkit-scrollbar{display:none}.photos-folder-chip{background:color-mix(in srgb, var(--app-text) 8%, transparent);border:1.5px solid #0000;border-radius:999px;flex-shrink:0;align-items:center;display:inline-flex}.photos-folder-chip.on{border-color:var(--app-accent);background:color-mix(in srgb, var(--app-accent) 14%, transparent)}.photos-folder-select{color:var(--app-text);cursor:pointer;background:0 0;border:none;border-radius:999px;align-items:center;gap:6px;padding:7px 12px;font-size:13px;font-weight:600;display:inline-flex}.photos-folder-select ion-icon{color:color-mix(in srgb, var(--app-text) 60%, transparent);font-size:15px}.photos-folder-chip.on .photos-folder-select,.photos-folder-chip.on .photos-folder-select ion-icon{color:var(--app-accent)}.photos-folder-name{text-overflow:ellipsis;white-space:nowrap;max-width:160px;overflow:hidden}.photos-folder-count{color:color-mix(in srgb, var(--app-text) 50%, transparent);font-size:11px;font-weight:700}.photos-folder-manage{color:color-mix(in srgb, var(--app-text) 55%, transparent);cursor:pointer;background:0 0;border:none;align-items:center;padding:7px 10px 7px 2px;font-size:16px;display:inline-flex}.photos-merge-avatar--folder{color:var(--app-accent);justify-content:center;align-items:center;font-size:18px;display:inline-flex}.photos-browse{margin-bottom:8px}.photos-browse-section{margin-top:22px}.photos-tiles{grid-template-columns:repeat(3,1fr);gap:14px 10px;display:grid}@media (width>=640px){.photos-tiles{grid-template-columns:repeat(4,1fr)}}.photos-tile-wrap{position:relative}.photos-tile{cursor:pointer;text-align:left;background:0 0;border:none;flex-direction:column;gap:6px;width:100%;padding:0;display:flex}.photos-tile-cover{aspect-ratio:1;background-color:color-mix(in srgb, var(--app-text) 10%, transparent);border-radius:16px;width:100%;display:block;position:relative;overflow:hidden}.photos-tile-cover img{object-fit:cover;width:100%;height:100%;display:block}.photos-tile-cover--icon{color:color-mix(in srgb, var(--app-accent) 80%, transparent);justify-content:center;align-items:center;font-size:40px;display:flex}.photos-tile-cover--fav{color:var(--warn)}.photos-tile-cover--round{border-radius:50%}.photos-tile-name{color:var(--app-text);text-overflow:ellipsis;white-space:nowrap;padding:0 2px;font-size:13px;font-weight:700;overflow:hidden}.photos-tile-name.unnamed{color:var(--app-accent);font-weight:600}.photos-tile-count{color:color-mix(in srgb, var(--app-text) 55%, transparent);margin-top:-4px;padding:0 2px;font-size:12px}.photos-tiles--people .photos-tile-count{display:none}.photos-tile-manage{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;border:none;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:15px;display:flex;position:absolute;top:6px;right:6px}.photos-drill-head{align-items:center;gap:10px;margin-bottom:12px;display:flex}.photos-drill-back{background:color-mix(in srgb, var(--app-text) 8%, transparent);color:var(--app-text);cursor:pointer;border:none;border-radius:999px;flex-shrink:0;align-items:center;gap:4px;padding:7px 14px 7px 10px;font-size:13px;font-weight:600;display:inline-flex}.photos-drill-title{color:var(--app-text);text-overflow:ellipsis;white-space:nowrap;font-size:18px;font-weight:800;overflow:hidden}.photos-filter-tools{gap:6px;display:flex}.photos-filter-tools .photos-sort{flex:1;justify-content:center;min-width:0;padding-left:8px;padding-right:8px}.photos-sort--on{background:color-mix(in srgb, var(--app-accent) 16%, transparent);color:var(--app-accent)}.photos-sort--fav{background:color-mix(in srgb, var(--warn) 26%, transparent);color:var(--warn)}.photos-selbar{background:color-mix(in srgb, var(--app-accent) 12%, transparent);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 10px;margin-bottom:12px;padding:8px;display:flex}.photos-selbar-left{align-items:center;gap:10px;display:inline-flex}.photos-selbar-count{color:var(--app-text);font-size:14px;font-weight:700}.photos-selbar-actions{gap:6px;display:inline-flex}.photos-selbar-btn{background:color-mix(in srgb, var(--app-text) 10%, transparent);color:var(--app-text);cursor:pointer;border:none;border-radius:999px;align-items:center;gap:5px;padding:8px 14px;font-size:13px;font-weight:600;display:inline-flex}.photos-selbar-btn--primary{background:var(--app-accent);color:#fff}.photos-selbar-btn:disabled{opacity:.5;cursor:default}.photos-cell.selecting.selected{outline:3px solid var(--app-accent);outline-offset:-3px}.photos-cell.selected .photos-thumb{transform:scale(.92)}.photos-check{color:#fff;z-index:2;background:#00000059;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:22px;display:flex;position:absolute;top:6px;right:6px}.photos-check.on{background:var(--app-accent);border-color:#fff}.photos-thumb--placeholder{color:color-mix(in srgb, var(--app-text) 45%, transparent);background:color-mix(in srgb, var(--app-text) 12%, transparent);justify-content:center;align-items:center;font-size:34px;display:flex}.photos-fav-badge{color:var(--warn);filter:drop-shadow(0 1px 3px #0009);pointer-events:none;z-index:1;font-size:18px;position:absolute;top:6px;left:6px}.photos-tile-badge{border-radius:var(--r-pill);color:#fff;width:26px;height:26px;-webkit-backdrop-filter:blur(var(--glass-clear-blur));backdrop-filter:blur(var(--glass-clear-blur));background:#0000006b;border:1px solid #ffffff3d;place-items:center;font-size:14px;display:grid;position:absolute;bottom:8px;left:8px}.photos-recent{border-radius:var(--r-card);grid-template-columns:repeat(3,1fr);gap:3px;display:grid;overflow:hidden}.photos-recent-cell{aspect-ratio:1;background:var(--plane-sunk);cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;padding:0;position:relative;overflow:hidden}.photos-recent-cell img{object-fit:cover;width:100%;height:100%;transition:transform var(--d-base) var(--ease);display:block}.photos-recent-cell:active img{transform:scale(.97)}.photos-storage{margin:0 0 var(--s3);background:var(--plane);border:1px solid color-mix(in srgb, var(--ink) 10%, transparent);box-shadow:inset 0 1px 0 rgba(255, 255, 255, var(--edge-lo,.06));border-radius:20px;padding:12px 14px}.photos-storage .photos-progress-track{background:color-mix(in srgb, var(--ink) 10%, transparent);border-radius:999px;height:8px;box-shadow:inset 0 1px 2px #00000059}.photos-storage-fill{background:linear-gradient(90deg, color-mix(in srgb, #fff 18%, var(--app-accent)), var(--app-accent));box-shadow:0 0 10px -2px color-mix(in srgb, var(--app-accent) 70%, transparent);transform-origin:0;animation:1s cubic-bezier(.2,.8,.2,1) .2s both photos-meter}@keyframes photos-meter{0%{transform:scaleX(0)}}.photos-import{margin-bottom:var(--s5);background:radial-gradient(120% 60% at 50% 0%, color-mix(in srgb, var(--app-accent) 7%, transparent), transparent 60%), var(--plane);border:1px solid color-mix(in srgb, var(--ink) 10%, transparent);box-shadow:inset 0 1px 0 rgba(255, 255, 255, var(--edge-lo,.06)), 0 18px 34px -24px rgba(var(--shadow-tint), .8);border-radius:24px;padding:14px}.photos-add-actions .photos-import-btn:not([fill=outline]){--background:linear-gradient(180deg, color-mix(in srgb, #fff 18%, var(--app-accent)), var(--app-accent));--box-shadow:inset 0 1px 0 #ffffff73, 0 10px 20px -10px color-mix(in srgb, var(--app-accent) 70%, transparent);--border-radius:16px}.photos-add-actions .photos-import-btn[fill=outline]{--border-radius:16px;--border-color:color-mix(in srgb, var(--ink) 16%, transparent);--background:color-mix(in srgb, var(--ink) 4%, transparent)}.photos-tiles{gap:18px 12px;padding-top:6px}.photos-tile-cover{background:radial-gradient(120% 90% at 30% 15%, color-mix(in srgb, var(--app-accent) 30%, transparent), transparent 65%), linear-gradient(160deg, color-mix(in srgb, var(--ink) 12%, var(--app-surface)), var(--app-surface));box-shadow:inset 0 1px 0 rgba(255, 255, 255, var(--edge-mid,.2)), 0 0 0 1px color-mix(in srgb, var(--ink) 10%, transparent), 0 14px 22px -14px rgba(var(--shadow-tint), .9);transition:transform var(--d-base) var(--ease);border-radius:18px;overflow:visible}.photos-tile-cover:before,.photos-tile-cover:after{content:"";z-index:-1;border-radius:inherit;background:color-mix(in srgb, var(--ink) 20%, var(--app-surface));box-shadow:inset 0 1px 0 rgba(255, 255, 255, var(--edge-lo,.06)), 0 0 0 1px color-mix(in srgb, var(--ink) 16%, transparent), 0 8px 14px -10px rgba(var(--shadow-tint), .8);transition:transform var(--d-base) var(--ease);position:absolute;inset:0}.photos-tile-cover:before{transform:rotate(-5deg)translate(-3px,2px)scale(.96)}.photos-tile-cover:after{background:color-mix(in srgb, var(--ink) 30%, var(--app-surface));transform:rotate(4deg)translate(3px,3px)scale(.94)}.photos-tile-cover--round:before,.photos-tile-cover--round:after{display:none}.photos-tile-cover img{border-radius:inherit;position:relative}.photos-tile-cover--icon{height:100%}.photos-tile:active .photos-tile-cover{transform:scale(.96)}.photos-tile:active .photos-tile-cover:before{transform:rotate(-8deg)translate(-5px,2px)scale(.96)}.photos-tile:active .photos-tile-cover:after{transform:rotate(7deg)translate(5px,3px)scale(.94)}.photos-tile-name{font-size:var(--t-footnote);margin-top:4px}.photos-tiles>*{animation:.46s cubic-bezier(.2,.8,.2,1) both photos-tile-in}.photos-tiles>:nth-child(2){animation-delay:40ms}.photos-tiles>:nth-child(3){animation-delay:80ms}.photos-tiles>:nth-child(4){animation-delay:.12s}.photos-tiles>:nth-child(5){animation-delay:.16s}.photos-tiles>:nth-child(n+6){animation-delay:.2s}@keyframes photos-tile-in{0%{opacity:0;transform:translateY(12px)scale(.96)}}@media (prefers-reduced-motion:reduce){.photos-tiles>*,.photos-storage-fill{animation:none}}.photos-recent-cell,.photos-thumb{background:linear-gradient(160deg, color-mix(in srgb, var(--ink) 10%, var(--app-surface)), var(--app-surface))}.lc-content{--background:transparent}.lc-inner{padding:40px var(--page-x) 96px;max-width:720px;margin:0 auto}.lc-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.lc-head-text h1{font-size:var(--t-display);line-height:var(--lh-display);letter-spacing:var(--tr-display);font-weight:var(--w-bold);color:var(--app-text);margin:0}.lc-head-text p{color:var(--app-text);opacity:.6;margin:4px 0 0;font-size:14px}.lc-head-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.lc-btn{border:1px solid color-mix(in srgb, var(--app-text) 14%, transparent);background:var(--app-surface);color:var(--app-text);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:12px;align-items:center;gap:6px;padding:8px 12px;font-size:14px;font-weight:600;display:inline-flex}.lc-btn--icon{padding:8px}.lc-btn--danger{color:var(--alert);border-color:color-mix(in srgb, var(--alert) 40%, transparent)}.lc-btn ion-icon{font-size:16px}.lc-loading{justify-content:center;padding:48px 0;display:flex}.lc-empty{text-align:center;color:var(--app-text);padding:56px 16px}.lc-empty-icon{opacity:.35;font-size:46px}.lc-empty-title{margin:12px 0 4px;font-size:19px;font-weight:700}.lc-empty-sub{opacity:.6;margin:0;font-size:14px}.lc-card:after{content:"";pointer-events:none;background:linear-gradient(135deg,#ffffff47,#fff0 55%);position:absolute;inset:0}.lc-card-edit ion-icon{font-size:15px}.lc-fab{margin-bottom:calc(var(--nav-h) + var(--nav-gap) * 2 + env(safe-area-inset-bottom));margin-right:6px}.lc-modal{--height:auto;--width:100%;--backdrop-opacity:1;align-items:flex-end}.lc-modal::part(backdrop){background:#00000061}@media (prefers-reduced-transparency:reduce){.lc-modal::part(backdrop){-webkit-backdrop-filter:none;backdrop-filter:none}}.lc-modal::part(content){background:var(--glass-sheen), var(--glass-fill-thick);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));box-shadow:var(--glass-shadow), inset 0 1px 0 rgba(255, 255, 255, var(--edge-hi));border-radius:32px;width:calc(100% - 16px);margin:0 8px 8px}.lc-modal-body{padding:18px 18px calc(16px + env(safe-area-inset-bottom));flex-direction:column;gap:14px;max-height:88vh;display:flex;overflow-y:auto}.lc-modal-head{justify-content:space-between;align-items:center;display:flex}.lc-modal-head h2{color:var(--app-text);margin:0;font-size:24px;font-weight:700}.lc-modal-close{color:var(--app-text);opacity:.6;cursor:pointer;background:0 0;border:none;padding:6px;display:inline-flex}.lc-modal-close ion-icon{font-size:24px}.lc-methods{gap:8px;display:flex}.lc-method{border:1px solid color-mix(in srgb, var(--app-text) 14%, transparent);background:var(--app-bg);color:var(--app-text);cursor:pointer;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px 6px;font-size:14px;font-weight:600;display:inline-flex}.lc-method.on{border-color:var(--app-accent);background:color-mix(in srgb, var(--app-accent) 16%, transparent)}.lc-method:disabled{opacity:.4}.lc-method ion-icon{font-size:18px}.lc-scan{background:#000;border-radius:16px;position:relative;overflow:hidden}.lc-scan-video{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.lc-scan-frame{border:3px solid #ffffffd9;border-radius:14px;position:absolute;inset:18% 12%;box-shadow:0 0 0 100vmax #00000040}.lc-scan .lc-hint{text-align:center;color:#fff;text-shadow:0 1px 3px #000c;margin:0;font-size:13px;position:absolute;bottom:10px;left:0;right:0}.lc-hint{color:var(--app-text);opacity:.6;text-align:center;margin:4px 0 0;font-size:13px}.lc-upload{flex-direction:column;gap:6px;display:flex}.lc-upload-btn{border:2px dashed color-mix(in srgb, var(--app-text) 26%, transparent);background:var(--app-bg);color:var(--app-text);cursor:pointer;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:26px 12px;font-size:15px;font-weight:600;display:inline-flex}.lc-upload-btn ion-icon{font-size:20px}.lc-detected{background:#fff;border-radius:14px;justify-content:center;padding:12px;display:flex}.lc-barcode-wrap{justify-content:center;width:100%;display:flex}.lc-barcode-canvas{max-width:100%;height:auto}.lc-barcode-fallback{color:#111;word-break:break-all;text-align:center;font-family:monospace;font-size:18px}.lc-field{flex-direction:column;gap:6px;display:flex}.lc-field>span{color:var(--app-text);opacity:.8;font-size:13px;font-weight:600}.lc-field>span em{opacity:.6;font-style:normal;font-weight:400}.lc-field-row{gap:10px;display:flex}.lc-field--grow{flex:1}.lc-input{--background:var(--plane-sunk);--color:var(--app-text);--padding-start:14px;--padding-end:14px;--padding-top:12px;--padding-bottom:12px;border:1px solid color-mix(in srgb, var(--app-text) 14%, transparent);border-radius:12px}.lc-save{--background:var(--app-accent);--border-radius:14px;margin-top:4px}.lc-share-empty{color:var(--app-text);opacity:.6;text-align:center;padding:20px 0}.lc-share-list{flex-direction:column;gap:8px;display:flex}.lc-share-row{border:1px solid color-mix(in srgb, var(--app-text) 12%, transparent);background:var(--app-bg);color:var(--app-text);cursor:pointer;border-radius:12px;justify-content:space-between;align-items:center;padding:12px 14px;font-size:15px;font-weight:500;display:flex}.lc-switch{background:color-mix(in srgb, var(--app-text) 22%, transparent);border-radius:13px;flex-shrink:0;width:42px;height:26px;transition:background .2s;position:relative}.lc-switch:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;top:3px;left:3px}.lc-share-row.on .lc-switch{background:var(--app-accent)}.lc-share-row.on .lc-switch:after{transform:translate(16px)}.lc-view-modal{--width:100%;--height:100%;--background:#fff}.lc-view{height:100%;padding:24px calc(20px + env(safe-area-inset-left)) calc(24px + env(safe-area-inset-bottom));color:#111;background:#fff;flex-direction:column;justify-content:center;align-items:center;gap:18px;display:flex}.lc-view-close{top:calc(14px + env(safe-area-inset-top));color:#111;cursor:pointer;background:#0000000f;border:none;border-radius:50%;padding:8px;display:inline-flex;position:absolute;right:16px}.lc-view-close ion-icon{font-size:24px}.lc-view-store{text-align:center;margin:0;font-size:28px;font-weight:700}.lc-view-barcode{justify-content:center;width:100%;max-width:460px;display:flex}.lc-view-notes{color:#555;text-align:center;margin:0}.lc-view-hint{color:#888;align-items:center;gap:6px;margin:0;font-size:13px;display:inline-flex}.lc-view-actions{gap:10px;margin-top:8px;display:flex}.lc-view-actions .lc-btn{color:#111;background:#f2f2f4;border-color:#0000001f}.lc-view-actions .lc-btn--danger{color:var(--alert);border-color:#d700154d}.lc-wallet{gap:var(--s2);flex-direction:column;display:flex}.lc-card{align-items:center;gap:var(--s3);width:100%;min-height:68px;padding:var(--s3) var(--s3) var(--s3) var(--s4);border:var(--hairline);border-radius:var(--r-card);background:var(--plane);box-shadow:var(--e1);color:var(--ink);font:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform var(--d-fast) var(--ease), box-shadow var(--d-base) var(--ease);display:flex;position:relative;overflow:hidden}.lc-card:active{box-shadow:var(--e2);transform:scale(.985)}.lc-card:before{content:"";background:var(--brand,var(--ink-3));width:4px;position:absolute;top:0;bottom:0;left:0}.lc-card-badge{border-radius:var(--r-control);background:var(--brand,var(--fill-strong));width:46px;height:46px;color:var(--on-brand,var(--ink));font-size:var(--t-subhead);font-weight:var(--w-bold);letter-spacing:.02em;flex:none;place-items:center;display:grid;box-shadow:inset 0 1px #ffffff38}.lc-card-logo{max-width:32px;display:block}.lc-card-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.lc-card-store{font-size:var(--t-body);font-weight:var(--w-emph);color:var(--ink);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.lc-card-code{font-size:var(--t-footnote);color:var(--ink-2);font-variant-numeric:tabular-nums}.lc-card-edit{width:var(--tap);height:var(--tap);border-radius:var(--r-pill);color:var(--ink-3);transition:color var(--d-fast) var(--ease), background var(--d-fast) var(--ease);flex:none;place-items:center;font-size:17px;display:grid}.lc-card-edit:active{background:var(--fill);color:var(--ink)}.kc-content{--background:transparent}.kc-inner{max-width:640px;margin:0 auto;padding:16px 16px 120px}.kc-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.kc-head-text h1{font-size:var(--t-display);line-height:var(--lh-display);letter-spacing:var(--tr-display);font-weight:var(--w-bold);color:var(--app-text);margin:0}.kc-btn{background:var(--app-surface);color:var(--app-text);cursor:pointer;border:none;border-radius:12px;align-items:center;gap:6px;padding:8px 12px;font-size:.85rem;font-weight:600;display:inline-flex}.kc-btn--icon{padding:8px}.kc-daynav{justify-content:space-between;align-items:center;gap:8px;margin-bottom:14px;display:flex}.kc-daynav-btn,.kc-daynav-label{background:var(--app-surface);color:var(--app-text);cursor:pointer;border:none;border-radius:12px}.kc-daynav-btn{justify-content:center;align-items:center;width:44px;height:44px;font-size:1.2rem;display:flex}.kc-daynav-btn:disabled{opacity:.35;cursor:default}.kc-daynav-label{text-transform:capitalize;flex:1;height:44px;font-size:.95rem;font-weight:700}.kc-daynav-label:disabled{cursor:default}.kc-loading{justify-content:center;padding:48px 0;display:flex}.kc-empty{text-align:center;color:var(--app-text);padding:40px 16px}.kc-empty-title{margin:0 0 4px;font-size:1.05rem;font-weight:700}.kc-empty-sub{opacity:.6;margin:0 0 12px;font-size:.9rem}.kc-summary{border-radius:var(--r-card);background:var(--plane);color:var(--ink);box-shadow:var(--e2), var(--card-rim);align-items:center;gap:18px;margin-bottom:18px;padding:18px;display:flex}.kc-ring{width:128px;height:128px;color:inherit;cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0;position:relative}.kc-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.kc-ring-track,.kc-ring-fill{fill:none;stroke-width:10px}.kc-ring-track{stroke:color-mix(in srgb, var(--ink) 12%, transparent)}.kc-ring-fill{stroke:var(--app-accent);stroke-linecap:round;transition:stroke-dashoffset .5s}.kc-ring-fill--over{stroke:var(--alert)}.kc-ring-center{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.kc-ring-num{font-variant-numeric:tabular-nums;font-size:1.7rem;font-weight:800;line-height:1}.kc-ring-label{color:var(--ink-2);margin-top:4px;font-size:.72rem}.kc-summary-side{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.kc-summary-line{color:var(--ink-2);justify-content:space-between;align-items:baseline;font-size:.85rem;display:flex}.kc-summary-line strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:1rem}.kc-summary-goal{cursor:pointer;text-align:left;background:0 0;border:none;width:100%;padding:0;font-family:inherit}.kc-macro{margin-top:2px}.kc-macro-head{color:var(--ink-2);font-variant-numeric:tabular-nums;justify-content:space-between;font-size:.78rem;display:flex}.kc-macro-bar{background:color-mix(in srgb, var(--ink) 12%, transparent);border-radius:999px;height:5px;margin-top:3px;overflow:hidden}.kc-macro-bar span{border-radius:inherit;background:var(--app-accent);height:100%;transition:width .4s;display:block}.kc-macro--carbs .kc-macro-bar span{background:color-mix(in srgb, var(--app-accent) 60%, var(--ink))}.kc-macro--fat .kc-macro-bar span{background:var(--warn)}.kc-meal{border-radius:var(--r-card);background:var(--plane);color:var(--ink);box-shadow:var(--e1), var(--card-rim);margin-bottom:12px;padding:10px 12px}.kc-meal-head{align-items:center;gap:8px;display:flex}.kc-meal-head h2{flex:1;margin:0;font-size:1rem;font-weight:700}.kc-meal-kcal{color:var(--ink-2);font-variant-numeric:tabular-nums;font-size:.85rem}.kc-meal-add{background:color-mix(in srgb, var(--app-accent) 16%, transparent);width:36px;height:36px;color:var(--app-accent);cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;font-size:1.2rem;display:flex}.kc-entries{margin:6px 0 0;padding:0;list-style:none}.kc-entries li+li{border-top:1px solid var(--hairline)}.kc-entry,.kc-result{width:100%;min-height:44px;color:inherit;text-align:left;font:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:10px;padding:8px 0;display:flex}.kc-entry-text{flex-direction:column;flex:1;min-width:0;display:flex}.kc-entry-name{text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;font-weight:600;overflow:hidden}.kc-entry-sub{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.kc-entry-kcal{font-variant-numeric:tabular-nums;font-weight:700}.kc-hint{color:var(--app-text);opacity:.6;margin:8px 0;font-size:.85rem}.kc-hint--center{text-align:center;margin-top:16px}.kc-fab{margin-bottom:calc(var(--nav-h) + var(--nav-gap) * 2 + env(safe-area-inset-bottom));margin-right:6px}.kc-modal{--width:100%;--height:100%;--border-radius:0;--background:transparent}.kc-modal-body{padding:calc(16px + env(safe-area-inset-top)) 16px calc(40px + env(safe-area-inset-bottom));width:100%;max-width:640px;height:100%;color:var(--app-text);margin:0 auto;overflow-y:auto}.kc-modal-head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.kc-modal-head h2{margin:0;font-size:1.25rem;font-weight:700}.kc-modal-close{background:var(--app-surface);color:var(--app-text);cursor:pointer;border:none;border-radius:10px;padding:6px;font-size:1.2rem;display:flex}.kc-tabs{margin-bottom:14px}.kc-segment{--background:var(--app-surface)}.kc-segment ion-segment-button{--indicator-color:var(--app-accent);--color-checked:var(--on-accent);--padding-start:2px;--padding-end:2px;letter-spacing:0;text-transform:none;min-width:0;min-height:40px;font-size:.78rem}.kc-tab{flex-direction:column;gap:12px;display:flex}.kc-field{margin-bottom:12px;display:block}.kc-field>span{margin-bottom:6px;font-size:.82rem;font-weight:600;display:block}.kc-field>span em{opacity:.55;font-style:normal;font-weight:400}.kc-field-note{opacity:.6;margin:0 0 8px;font-size:.8rem}.kc-input{--background:var(--app-surface);--color:var(--app-text);--padding-start:12px;--padding-end:12px;--padding-top:10px;--padding-bottom:10px;--placeholder-color:var(--app-text);--placeholder-opacity:.4;background:var(--app-surface);border-radius:12px}.kc-input--big{font-size:1.4rem;font-weight:700}.kc-field-row{gap:10px;display:flex}.kc-field--sm{flex:1;min-width:0}.kc-row{align-items:center;gap:8px;display:flex}.kc-row .kc-input{flex:1}.kc-save{margin-top:8px}.kc-notice{background:color-mix(in srgb, var(--warn) 18%, transparent);border-radius:12px;margin:0;padding:10px 12px;font-size:.85rem}.kc-scan{background:#000;border-radius:16px;position:relative;overflow:hidden}.kc-scan-video{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.kc-scan-frame{border:3px solid #ffffffd9;border-radius:14px;position:absolute;inset:28% 10%;box-shadow:0 0 0 100vmax #00000040}.kc-scan-hint,.kc-scan-busy{text-align:center;color:#fff;text-shadow:0 1px 3px #000c;margin:0;font-size:13px;position:absolute;bottom:10px;left:0;right:0}.kc-scan-busy{--color:#fff;background:#00000073;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex;inset:0}.kc-upload{background:var(--app-surface);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:44px;font-size:.9rem;font-weight:600;display:flex}.kc-upload input{display:none}.kc-list-title{text-transform:uppercase;letter-spacing:.04em;opacity:.6;margin:6px 0 0;font-size:.8rem;font-weight:700}.kc-results{background:var(--app-surface);border-radius:14px;margin:0;padding:0 12px;list-style:none}.kc-results li+li{border-top:1px solid var(--hairline)}.kc-result img{object-fit:cover;background:#fff;border-radius:8px;flex-shrink:0;width:40px;height:40px}.kc-result-row{align-items:center;display:flex}.kc-result-remove{width:36px;height:36px;color:var(--app-text);opacity:.45;cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;display:flex}.kc-portion{flex-direction:column;display:flex}.kc-food-card{background:var(--app-surface);border-radius:14px;align-items:center;gap:12px;margin-bottom:14px;padding:12px;display:flex}.kc-food-card img,.kc-food-card-icon{object-fit:cover;background:#fff;border-radius:10px;flex-shrink:0;width:52px;height:52px}.kc-food-card-icon{background:color-mix(in srgb, var(--app-accent) 16%, transparent);color:var(--app-accent);justify-content:center;align-items:center;font-size:1.6rem;display:flex}.kc-food-card-text{flex-direction:column;min-width:0;display:flex}.kc-food-card-text span{opacity:.65;font-size:.8rem}.kc-chips{flex-wrap:wrap;gap:8px;margin:-4px 0 14px;display:flex}.kc-chip{background:var(--app-surface);min-height:36px;color:var(--app-text);cursor:pointer;border:none;border-radius:999px;align-items:center;gap:4px;padding:0 12px;font-size:.85rem;font-weight:600;display:inline-flex}.kc-chip--on{background:var(--app-accent);color:var(--on-accent)}.kc-preview{background:color-mix(in srgb, var(--app-accent) 12%, transparent);border-radius:14px;flex-direction:column;align-items:center;gap:4px;margin:4px 0 8px;padding:12px;display:flex}.kc-preview-kcal strong{font-variant-numeric:tabular-nums;font-size:1.8rem}.kc-preview-macros{opacity:.75;flex-wrap:wrap;justify-content:center;gap:4px 14px;font-size:.82rem;display:flex}@media (width<=360px){.kc-summary{flex-direction:column}.kc-summary-side{width:100%}}.kc-set-goal{background:var(--app-accent);min-height:36px;color:var(--on-accent);cursor:pointer;border:none;border-radius:999px;align-self:flex-start;padding:0 14px;font-size:.85rem;font-weight:700}.kc-result:disabled{opacity:.55;cursor:default}.kc-result-icon{background:color-mix(in srgb, var(--app-accent) 16%, transparent);width:40px;height:40px;color:var(--app-accent);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.2rem;display:flex}.rc-content{--background:transparent}.rc-inner{max-width:900px;margin:0 auto;padding:16px 16px 96px}.rc-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.rc-head-text h1{font-size:var(--t-display);line-height:var(--lh-display);letter-spacing:var(--tr-display);font-weight:var(--w-bold);color:var(--app-text);margin:0}.rc-head-text p{color:var(--app-text);opacity:.6;margin:4px 0 0;font-size:.9rem}.shared-badge{background:color-mix(in srgb, var(--app-accent) 18%, transparent);color:var(--app-accent);border-radius:999px;align-items:center;gap:4px;margin-top:6px;padding:2px 8px;font-size:.72rem;font-weight:600;display:inline-flex}.rc-head-actions{flex-shrink:0;gap:8px;display:flex}.rc-btn{background:var(--app-surface);color:var(--app-text);cursor:pointer;border:none;border-radius:12px;align-items:center;gap:6px;padding:8px 12px;font-size:.85rem;font-weight:600;display:inline-flex}.rc-btn--icon{padding:8px}.rc-btn--danger{color:var(--alert)}.rc-loading{justify-content:center;padding:48px 0;display:flex}.rc-empty{text-align:center;color:var(--app-text);padding:56px 24px}.rc-empty-icon{opacity:.4;font-size:3rem}.rc-empty-title{margin:12px 0 4px;font-size:1.1rem;font-weight:700}.rc-empty-sub{opacity:.6;margin:0;font-size:.9rem}.rc-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;display:grid}.rc-card{text-align:left;border-radius:var(--r-card);background:var(--plane);color:var(--ink);cursor:pointer;box-shadow:var(--e2), var(--card-rim);border:none;flex-direction:column;padding:0;transition:transform .15s;display:flex;overflow:hidden}.rc-card:active{transform:scale(.97)}.rc-card-media{aspect-ratio:4/3;background:color-mix(in srgb, var(--app-accent) 12%, var(--app-surface));justify-content:center;align-items:center;display:flex;position:relative}.rc-card-media img{object-fit:cover;width:100%;height:100%}.rc-card-media-fallback{width:100%;height:100%;font-family:var(--font-display);color:var(--ink-3);background:var(--plane-sunk);-webkit-user-select:none;user-select:none;place-items:center;font-size:44px;line-height:1;display:grid}.rc-card-video{color:#fff;filter:drop-shadow(0 1px 3px #0009);font-size:1.5rem;display:flex;position:absolute;top:8px;right:8px}.rc-card-body{flex-direction:column;gap:6px;padding:10px 12px 12px;display:flex}.rc-card-title{font-size:var(--t-subhead);font-weight:var(--w-emph);color:var(--ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.6em;line-height:1.3;display:-webkit-box;overflow:hidden}.rc-card-meta{opacity:.65;flex-wrap:wrap;gap:8px;font-size:.75rem;display:flex}.rc-card-meta span{align-items:center;gap:3px;display:inline-flex}.rc-fab{margin-bottom:calc(var(--nav-h) + var(--nav-gap) * 2 + env(safe-area-inset-bottom));margin-right:6px}.rc-modal{--width:100%;--height:100%;--border-radius:0;--background:transparent}.rc-modal-body{width:100%;max-width:640px;height:100%;margin:0 auto;padding:16px 16px 40px;overflow-y:auto}.rc-modal-head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.rc-modal-head h2{color:var(--app-text);margin:0;font-size:1.25rem;font-weight:700}.rc-modal-close{background:var(--app-surface);color:var(--app-text);cursor:pointer;border:none;border-radius:10px;padding:6px;font-size:1.2rem;display:flex}.rc-field{margin-bottom:14px;display:block}.rc-field>span{color:var(--app-text);margin-bottom:6px;font-size:.82rem;font-weight:600;display:block}.rc-field>span em{opacity:.55;font-style:normal;font-weight:400}.rc-input{--background:var(--app-surface);--color:var(--app-text);--padding-start:12px;--padding-end:12px;--padding-top:10px;--padding-bottom:10px;--placeholder-color:var(--app-text);--placeholder-opacity:.4;background:var(--app-surface);border-radius:12px}.rc-textarea{min-height:88px}.rc-field-row{gap:10px;display:flex}.rc-field--sm{flex:1}.rc-import-row{align-items:stretch;gap:8px;display:flex}.rc-import-row .rc-input{flex:1}.rc-import-btn{--border-radius:12px;flex-shrink:0;margin:0}.rc-hint{opacity:.55;color:var(--app-text);margin:6px 2px 0;font-size:.76rem}.rc-save{--border-radius:14px;margin-top:8px}.rc-share-empty{text-align:center;opacity:.6;color:var(--app-text);padding:24px 0}.rc-share-list{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.rc-share-row{background:var(--app-surface);color:var(--app-text);cursor:pointer;border:none;border-radius:12px;justify-content:space-between;align-items:center;padding:12px 14px;font-size:.95rem;display:flex}.rc-switch{background:color-mix(in srgb, var(--app-text) 20%, transparent);border-radius:999px;width:40px;height:24px;transition:background .2s;position:relative}.rc-switch:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;top:2px;left:2px}.rc-share-row.on .rc-switch{background:var(--app-accent)}.rc-share-row.on .rc-switch:after{transform:translate(16px)}.rc-view-modal{--width:100%;--height:100%;--border-radius:0;--background:transparent}.rc-view{--background:transparent}.rc-view-close{z-index:10;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000073;border:none;border-radius:999px;padding:8px;font-size:1.3rem;display:flex;position:fixed;top:14px;right:14px}.rc-view-hero{aspect-ratio:16/9;background:var(--app-surface);width:100%;overflow:hidden}.rc-view-hero img{object-fit:cover;width:100%;height:100%}.rc-view-body{max-width:680px;color:var(--app-text);margin:0 auto;padding:18px 18px 60px}.rc-view-title{margin:0 0 12px;font-size:1.5rem;font-weight:700}.rc-view-meta{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.rc-chip{background:var(--app-surface);border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.rc-view-desc{opacity:.75;margin:0 0 18px;line-height:1.5}.rc-view-section{margin-bottom:22px}.rc-view-section h3{margin:0 0 10px;font-size:1.1rem;font-weight:700}.rc-section-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.rc-section-head h3{margin:0}.rc-btn--sm{background:color-mix(in srgb, var(--app-accent) 14%, transparent);color:var(--app-accent);border-radius:999px;padding:6px 10px;font-size:.78rem}.rc-field-label{color:var(--app-text);margin-bottom:6px;font-size:.82rem;font-weight:600;display:block}.rc-list-picker{flex-wrap:wrap;gap:8px;display:flex}.rc-list-pill{border:1px solid color-mix(in srgb, var(--app-text) 12%, transparent);background:var(--app-surface);color:var(--app-text);cursor:pointer;border-radius:999px;padding:8px 14px;font-size:.85rem;font-weight:600}.rc-list-pill.on{background:var(--app-accent);color:#fff;border-color:var(--app-accent)}.rc-ingredients{margin:0;padding:0;list-style:none}.rc-ingredients li{border-bottom:1px solid color-mix(in srgb, var(--app-text) 8%, transparent);align-items:flex-start;gap:10px;padding:7px 0;line-height:1.4;display:flex}.rc-ing-dot{background:var(--app-accent);border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:7px}.rc-swipe-hint{opacity:.55;color:var(--app-text);margin:0 0 8px;font-size:.76rem}.rc-ingredients--slide{background:0 0;margin:0;padding:0}.rc-ing-sliding{--background:transparent}.rc-ing-item{--background:transparent;--background-hover:transparent;--padding-start:2px;--inner-padding-end:2px;--min-height:44px;--border-color:color-mix(in srgb, var(--app-text) 8%, transparent)}.rc-ing-item .rc-ing-dot{margin:0 10px 0 0}.rc-ing-text{color:var(--app-text);padding:7px 0;line-height:1.4}.rc-ingredients--slide ion-item-option{--button-color:#fff;border-radius:0 12px 12px 0;width:88px;font-size:1.2rem}.rc-steps{counter-reset:step;margin:0;padding:0;list-style:none}.rc-steps li{align-items:flex-start;gap:12px;padding:10px 0;line-height:1.5;display:flex}.rc-step-num{background:var(--app-accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:.85rem;font-weight:700;display:flex}.rc-view-notes{opacity:.8;white-space:pre-wrap;margin:0;line-height:1.5}.rc-video{background:#000;border-radius:14px;margin:4px 0 20px;overflow:hidden}.rc-video video{width:100%;display:block}.rc-video--frame{aspect-ratio:16/9;position:relative}.rc-video--frame iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.rc-video-link{background:var(--app-surface);color:var(--app-accent);border-radius:12px;align-items:center;gap:8px;margin:4px 0 20px;padding:12px 16px;font-weight:600;text-decoration:none;display:inline-flex}.rc-source{background:var(--app-surface);color:var(--app-text);border-radius:12px;align-items:center;gap:8px;margin-bottom:18px;padding:12px 14px;font-size:.9rem;font-weight:600;text-decoration:none;display:flex}.rc-source-host{opacity:.5;margin-left:auto;font-size:.8rem;font-weight:400}.rc-view-actions{gap:10px;display:flex}.rc-view-actions .rc-btn{flex:1;justify-content:center;padding:12px}.rc-calories-btn{--background:var(--app-accent);--background-activated:var(--app-accent);--color:var(--on-accent);--border-radius:12px;text-transform:none;margin:0 0 12px;font-weight:700}.rc-kcal-details{background:var(--app-surface);color:var(--app-text);border-radius:12px;margin:0 0 12px;padding:10px 12px;font-size:.85rem}.rc-kcal-details summary{cursor:pointer;align-items:center;gap:6px;font-weight:600;list-style:none;display:flex}.rc-kcal-details summary::-webkit-details-marker{display:none}.rc-kcal-total{margin:10px 0 6px;font-weight:700}.rc-kcal-lines{margin:0;padding:0;list-style:none}.rc-kcal-lines li{border-top:1px solid var(--hairline);justify-content:space-between;gap:12px;padding:5px 0;display:flex}.rc-kcal-lines li span:last-child{font-variant-numeric:tabular-nums;opacity:.75;flex-shrink:0}.rc-kcal-skipped{opacity:.6;margin:8px 0 0}.jarvis-content{--background:var(--app-bg,#0d111b);--jarvis-nav-clear:calc(env(safe-area-inset-bottom) + 84px);--padding-bottom:calc(var(--jarvis-nav-clear) + 66px);--padding-top:0}.jarvis-thread-content{--padding-bottom:calc(var(--jarvis-nav-clear) + var(--jarvis-composer-h,66px) + 14px)}.jarvis-inbox-inner{padding:40px var(--page-x) 120px;text-align:left;box-sizing:border-box;width:100%;min-width:0;max-width:640px;margin:0 auto}.jarvis-content::part(scroll){flex-direction:column;display:flex}.jarvis-topbars{z-index:5;background:color-mix(in srgb, var(--app-bg,#0d111b) 82%, transparent);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid color-mix(in srgb, var(--app-text,#fff) 8%, transparent);position:sticky;top:0}.jarvis-header{padding:calc(env(safe-area-inset-top) + 10px) 16px 10px;align-items:center;gap:12px;display:flex}.jarvis-pinbar{background:color-mix(in srgb, var(--app-accent,#f59e0b) 12%, transparent);border:none;border-top:1px solid color-mix(in srgb, var(--app-text,#fff) 6%, transparent);cursor:pointer;text-align:left;align-items:center;gap:8px;width:100%;padding:8px 14px;display:flex}.jarvis-pinbar-pin{color:var(--app-accent,#f59e0b);flex:none;font-size:1rem}.jarvis-pinbar-text{min-width:0;color:var(--app-text,#fff);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.85rem;overflow:hidden}.jarvis-pinbar-count{color:color-mix(in srgb, var(--app-text,#fff) 55%, transparent);flex:none;font-size:.72rem}.jarvis-pinbar-x{color:color-mix(in srgb, var(--app-text,#fff) 55%, transparent);flex:none;font-size:1rem}.jarvis-actionnote{border:1px solid color-mix(in srgb, var(--ok) 40%, transparent);background:color-mix(in srgb, var(--ok) 14%, var(--app-surface,#151b28));width:calc(100% - 24px);color:var(--app-text,#fff);border-radius:12px;align-items:center;gap:9px;margin:0 12px 8px;padding:10px 12px;font-size:.85rem;line-height:1.3;animation:.22s ease-out both jarvis-note-in;display:flex}.jarvis-actionnote>ion-icon{color:var(--ok);flex:none;font-size:1.15rem}.jarvis-actionnote>span{flex:1;min-width:0}.jarvis-actionnote-x{color:color-mix(in srgb, var(--app-text,#fff) 55%, transparent);cursor:pointer;background:0 0;border:none;flex:none;padding:0;display:inline-flex}@keyframes jarvis-note-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.jarvis-actionnote{animation:none}}.jarvis-suggestion-push{border:1px solid color-mix(in srgb, var(--app-accent,#f59e0b) 35%, transparent);background:color-mix(in srgb, var(--app-accent,#f59e0b) 12%, var(--app-surface,#151b28));border-radius:12px;flex-direction:column;gap:10px;width:calc(100% - 24px);margin:0 12px 8px;padding:11px 12px 10px;display:flex}.jarvis-suggestion-push-head{width:100%;color:var(--app-text,#fff);text-align:left;align-items:flex-start;gap:9px;display:flex}.jarvis-suggestion-push-head>ion-icon{color:var(--app-accent,#f59e0b);flex:none;font-size:1rem}.jarvis-suggestion-push-head>div{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.jarvis-suggestion-push-head strong{color:var(--app-accent,#f59e0b);font-size:.78rem}.jarvis-suggestion-push-head span{font-size:.82rem;line-height:1.3}.jarvis-suggestion-push-head>b,.jarvis-inbox-suggestions b{background:var(--app-accent,#f59e0b);min-width:20px;height:20px;color:color-mix(in srgb, var(--app-accent,#f59e0b) 30%, #000);border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:.72rem;font-weight:800;display:inline-flex}.jarvis-suggestion-push .jarvis-suggestion-actions{width:100%;margin-top:0}.jarvis-avatar{width:40px;height:40px;color:var(--app-accent,#f59e0b);background:color-mix(in srgb, var(--app-accent,#f59e0b) 18%, transparent);border:1px solid color-mix(in srgb, var(--app-accent,#f59e0b) 30%, transparent);border-radius:50%;justify-content:center;align-items:center;font-size:1rem;font-weight:700;display:flex}.jarvis-headtitle{min-width:0;color:var(--app-text,#fff);white-space:nowrap;text-overflow:ellipsis;flex:1;margin:0;font-size:1.25rem;font-weight:600;line-height:1.2;overflow:hidden}.jarvis-headbtn{width:38px;height:38px;color:var(--app-accent,#f59e0b);cursor:pointer;background:0 0;border:none;flex:none;justify-content:center;align-items:center;display:inline-flex}.jarvis-headbtn ion-icon{font-size:1.3rem}.jarvis-appear{background:var(--app-bg,#0d111b);height:100%;padding:calc(env(safe-area-inset-top) + 10px) 16px calc(20px + env(safe-area-inset-bottom));flex-direction:column;display:flex;overflow-y:auto}.jarvis-appear-head{align-items:center;gap:12px;margin-bottom:14px;display:flex}.jarvis-appear-title{color:var(--app-text,#fff);flex:1;font-size:1.15rem;font-weight:600}.jarvis-appear-save{background:var(--app-accent,#f59e0b);color:color-mix(in srgb, var(--app-accent,#f59e0b) 30%, #000);cursor:pointer;border:none;border-radius:999px;padding:8px 18px;font-weight:600}.jarvis-appear-preview{border:1px solid color-mix(in srgb, var(--app-text,#fff) 10%, transparent);border-radius:20px;flex-direction:column;justify-content:flex-end;gap:8px;min-height:170px;margin-bottom:18px;padding:16px;display:flex}.pv-row{display:flex}.pv-row.pv-right{justify-content:flex-end}.pv-b{max-width:78%;padding:8px 12px;font-size:.9rem;line-height:1.35}.pv-b.pv-in{background:var(--app-surface,#151b28);color:var(--app-text,#fff);border-radius:14px 14px 14px 4px}.jarvis-appear-section{text-transform:uppercase;letter-spacing:.05em;color:color-mix(in srgb, var(--app-text,#fff) 55%, transparent);margin:8px 2px 10px;font-size:.72rem;font-weight:600}.jarvis-appear-swatches{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.jarvis-sw{cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:4px;display:flex}.jarvis-sw-bg{aspect-ratio:1;border:1px solid color-mix(in srgb, var(--app-text,#fff) 12%, transparent);border-radius:12px;justify-content:center;align-items:center;width:100%;display:flex}.jarvis-sw-bg.sel{box-shadow:0 0 0 2px var(--app-accent,#f59e0b)}.jarvis-sw-bg ion-icon{color:var(--app-accent,#f59e0b);font-size:1.4rem}.jarvis-sw-label{color:color-mix(in srgb, var(--app-text,#fff) 60%, transparent);font-size:.7rem}.jarvis-appear-colors{flex-wrap:wrap;gap:12px;display:flex}.jarvis-clr{cursor:pointer;border:2px solid #0000;border-radius:50%;width:34px;height:34px}.jarvis-clr.sel{border-color:var(--app-text,#fff);box-shadow:0 0 0 2px var(--app-bg,#0d111b) inset}.jarvis-appear-styles{gap:8px;display:flex}.jarvis-chip{border:1px solid color-mix(in srgb, var(--app-text,#fff) 15%, transparent);color:var(--app-text,#fff);cursor:pointer;background:0 0;border-radius:999px;padding:8px 16px;font-size:.85rem}.jarvis-chip.sel{background:color-mix(in srgb, var(--app-accent,#f59e0b) 18%, transparent);border-color:var(--app-accent,#f59e0b);color:var(--app-accent,#f59e0b)}.jarvis-back{width:34px;height:34px;color:var(--app-accent,#f59e0b);cursor:pointer;background:0 0;border:none;flex:none;justify-content:center;align-items:center;margin-left:-6px;display:inline-flex}.jarvis-back ion-icon{font-size:1.5rem}.jarvis-review-banner{border:1px solid color-mix(in srgb, var(--app-accent,#f59e0b) 35%, transparent);background:color-mix(in srgb, var(--app-accent,#f59e0b) 14%, transparent);width:calc(100% - 24px);color:var(--app-text,#fff);cursor:pointer;border-radius:16px;align-items:center;gap:10px;margin:4px 12px 12px;padding:12px 14px;font-size:.95rem;font-weight:500;display:flex}.jarvis-review-banner ion-icon{color:var(--app-accent,#f59e0b);flex:none;font-size:1.2rem}.jarvis-review-banner>span:first-of-type{text-align:left;flex:1}.jarvis-review-badge{background:var(--app-accent,#f59e0b);min-width:22px;height:22px;color:color-mix(in srgb, var(--app-accent,#f59e0b) 30%, #000);border-radius:999px;flex:none;justify-content:center;align-items:center;padding:0 6px;font-size:.78rem;font-weight:700;display:inline-flex}.jarvis-review-list{flex-direction:column;gap:12px;padding:4px 2px;display:flex}.jarvis-review-item{background:var(--app-surface,#151b28);border:1px solid color-mix(in srgb, var(--app-text,#fff) 8%, transparent);border-radius:16px;flex-direction:column;gap:8px;padding:14px;display:flex}.jarvis-review-msg{color:var(--app-text,#fff);border-left:3px solid color-mix(in srgb, var(--app-text,#fff) 20%, transparent);padding-left:10px;font-size:.95rem}.jarvis-review-suggest{color:color-mix(in srgb, var(--app-text,#fff) 80%, transparent);align-items:center;gap:6px;font-size:.9rem;display:flex}.jarvis-review-suggest ion-icon{color:var(--app-accent,#f59e0b);flex:none}.jarvis-review-actions{gap:8px;margin-top:2px;display:flex}.jarvis-search{background:color-mix(in srgb, var(--app-text,#fff) 6%, transparent);border:1px solid color-mix(in srgb, var(--app-text,#fff) 8%, transparent);border-radius:999px;align-items:center;gap:10px;height:44px;margin:4px 0 12px;padding:0 14px;display:flex}.jarvis-search ion-icon{color:color-mix(in srgb, var(--app-text,#fff) 50%, transparent);flex:none;font-size:1.1rem}.jarvis-search input{min-width:0;color:var(--app-text,#fff);background:0 0;border:none;outline:none;flex:1;font-size:.95rem}.jarvis-search input::placeholder{color:color-mix(in srgb, var(--app-text,#fff) 45%, transparent)}.jarvis-inbox{background:0 0;padding:0}.jarvis-inbox-section{letter-spacing:.06em;text-transform:uppercase;color:color-mix(in srgb, var(--app-text,#fff) 55%, transparent);padding:4px 4px 8px;font-size:.72rem;font-weight:600}.jarvis-inbox-item{--background:color-mix(in srgb, var(--app-text,#fff) 5%, transparent);--background-hover:color-mix(in srgb, var(--app-text,#fff) 8%, transparent);--border-radius:16px;--padding-start:10px;--inner-padding-end:10px;--min-height:0;margin:0 0 8px}.jarvis-inbox-row-inner{align-items:center;gap:12px;width:100%;padding:10px 0;display:flex}.jarvis-inbox-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.jarvis-inbox-toprow{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.jarvis-inbox-name{color:var(--app-text,#fff);white-space:nowrap;text-overflow:ellipsis;font-size:1rem;font-weight:500;overflow:hidden}.jarvis-inbox-name.unread{font-weight:700}.jarvis-inbox-time{color:color-mix(in srgb, var(--app-text,#fff) 45%, transparent);flex:none;font-size:.72rem}.jarvis-inbox-bottomrow{align-items:center;gap:8px;display:flex}.jarvis-inbox-preview{min-width:0;color:color-mix(in srgb, var(--app-text,#fff) 55%, transparent);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.85rem;overflow:hidden}.jarvis-inbox-dot{background:var(--app-accent,#f59e0b);border-radius:50%;flex:none;width:10px;height:10px}.jarvis-inbox-suggestions{color:var(--app-accent,#f59e0b);flex:none;align-items:center;gap:3px;font-size:.78rem;display:inline-flex}.jarvis-inbox-suggestions ion-icon{font-size:.95rem}.jarvis-fab{right:var(--s5);bottom:calc(var(--nav-space) + var(--s2));z-index:100;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:58px;height:58px;display:inline-flex;position:fixed}.jarvis-fab ion-icon{font-size:1.7rem}.jarvis-thread{flex-direction:column;flex:1 0 auto;justify-content:flex-end;gap:10px;padding:12px 12px 16px;display:flex}.jarvis-center{justify-content:center;padding:40px 16px;display:flex}.jarvis-muted{color:color-mix(in srgb, var(--app-text,#fff) 55%, transparent);text-align:center;font-size:.9rem}.jarvis-daygroup{flex-direction:column;gap:10px;display:flex}.jarvis-day{top:calc(var(--jarvis-topbar-h,64px) + 6px);z-index:3;pointer-events:none;justify-content:center;margin:8px 0 2px;display:flex;position:sticky}.jarvis-day span{letter-spacing:.03em;text-transform:uppercase;color:color-mix(in srgb, var(--app-text,#fff) 65%, transparent);background:color-mix(in srgb, var(--app-bg,#0d111b) 78%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid color-mix(in srgb, var(--app-text,#fff) 8%, transparent);border-radius:999px;padding:4px 12px;font-size:.72rem;font-weight:500}.jarvis-msg{flex-direction:column;align-items:flex-start;max-width:85%;display:flex}.jarvis-msg.mine{align-self:flex-end;align-items:flex-end;margin-left:auto}.jarvis-bubble{background:color-mix(in srgb, var(--app-text,#fff) 12%, var(--app-surface,#151b28));color:var(--app-text,#fff);word-break:break-word;white-space:pre-wrap;border-radius:18px 18px 18px 4px;padding:10px 14px;font-size:1rem;line-height:1.4}.jarvis-msg.mine .jarvis-bubble{background:var(--chat-mybubble,var(--app-accent,#f59e0b));color:var(--chat-mybubble-text,var(--on-accent));border-radius:18px 18px 4px}.jarvis-emoji{flex-wrap:wrap;align-items:center;gap:4px;padding:4px 8px;line-height:1;animation:.42s cubic-bezier(.18,.89,.32,1.28) both jarvis-emoji-pop;display:flex}.jarvis-emoji-lg{--jarvis-emoji-size:clamp(3rem, 12vw, 4.5rem)}.jarvis-emoji-md{--jarvis-emoji-size:clamp(2.2rem, 9vw, 3rem)}.jarvis-emoji-sm{--jarvis-emoji-size:clamp(1.6rem, 6vw, 2.2rem)}.jarvis-emoji-one{width:var(--jarvis-emoji-size,3rem);height:var(--jarvis-emoji-size,3rem);display:inline-block;position:relative}.jarvis-emoji-anim,.jarvis-emoji-glyph{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.jarvis-emoji-anim svg{display:block;width:100%!important;height:100%!important}.jarvis-emoji-glyph{font-size:calc(var(--jarvis-emoji-size,3rem) * .88);line-height:1}@keyframes jarvis-emoji-pop{0%{opacity:0;transform:scale(.35)rotate(-12deg)}65%{opacity:1;transform:scale(1.2)rotate(4deg)}to{transform:scale(1)rotate(0)}}@media (prefers-reduced-motion:reduce){.jarvis-emoji{animation:none}}.jarvis-bs-rounded .jarvis-bubble{border-radius:18px}.jarvis-bs-tail .jarvis-msg.mine .jarvis-bubble{position:relative;overflow:visible}.jarvis-bs-tail .jarvis-msg.mine .jarvis-bubble:after{content:"";border-left:8px solid var(--chat-mybubble,var(--app-accent,#f59e0b));border-bottom:8px solid #0000;width:0;height:0;position:absolute;bottom:0;right:-5px}.jarvis-time{color:color-mix(in srgb, var(--app-text,#fff) 45%, transparent);margin:3px 6px 0;font-size:.72rem}.jarvis-system{max-width:85%;color:var(--app-text,#fff);background:color-mix(in srgb, var(--app-accent,#f59e0b) 15%, var(--app-surface,#151b28));border-radius:16px 16px 16px 5px;align-self:flex-start;align-items:center;gap:7px;padding:10px 14px;font-size:.92rem;line-height:1.35;display:inline-flex}.jarvis-system ion-icon{color:var(--app-accent,#f59e0b);flex:none;font-size:1rem}.jarvis-suggestion{background:var(--app-surface,#151b28);border:1px solid color-mix(in srgb, var(--app-text,#fff) 8%, transparent);border-left:4px solid var(--app-accent,#f59e0b);border-radius:4px 16px 16px 4px;flex-direction:column;align-self:flex-start;gap:8px;width:100%;max-width:92%;padding:14px;display:flex;box-shadow:0 8px 24px -8px #00000080}.jarvis-suggestion.is-resolved{opacity:.5}.jarvis-suggestion-head{justify-content:space-between;align-items:center;display:flex}.jarvis-suggestion-label{letter-spacing:.06em;text-transform:uppercase;color:var(--app-accent,#f59e0b);font-size:.72rem;font-weight:600}.jarvis-suggestion-head ion-icon{color:var(--app-accent,#f59e0b);font-size:1.15rem}.jarvis-suggestion-body{color:var(--app-text,#fff);font-size:.95rem;line-height:1.4}.jarvis-suggestion-actions{gap:8px;margin-top:4px;display:flex}.sg-btn{cursor:pointer;border:none;border-radius:999px;flex:1;height:34px;font-size:.82rem;font-weight:600}.sg-confirm{background:var(--app-accent,#f59e0b);color:color-mix(in srgb, var(--app-accent,#f59e0b) 30%, #000)}.sg-fix{background:color-mix(in srgb, var(--app-text,#fff) 12%, transparent);color:var(--app-text,#fff)}.sg-dismiss{color:color-mix(in srgb, var(--app-text,#fff) 55%, transparent);background:0 0}.jarvis-empty{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:64px 24px;display:flex}.jarvis-empty-icon{background:color-mix(in srgb, var(--app-text,#fff) 6%, transparent);border:1px solid color-mix(in srgb, var(--app-text,#fff) 10%, transparent);border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;display:flex}.jarvis-empty-icon ion-icon{color:color-mix(in srgb, var(--app-text,#fff) 40%, transparent);font-size:2rem}.jarvis-empty p{color:color-mix(in srgb, var(--app-text,#fff) 55%, transparent);margin:0;font-size:1rem}.jarvis-composer-wrap{left:14px;right:14px;bottom:var(--jarvis-nav-clear,calc(env(safe-area-inset-bottom) + 84px));z-index:100;flex-direction:column;gap:6px;display:flex;position:fixed}.jarvis-composer{background:color-mix(in srgb, var(--app-surface,#151b28) 92%, transparent);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid color-mix(in srgb, var(--app-text,#fff) 10%, transparent);border-radius:26px;align-items:center;gap:8px;padding:6px 6px 6px 8px;display:flex;box-shadow:0 10px 30px #00000042}.jarvis-reply-compose{background:color-mix(in srgb, var(--app-surface,#151b28) 92%, transparent);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid color-mix(in srgb, var(--app-text,#fff) 10%, transparent);border-radius:16px;align-items:center;gap:8px;padding:8px 10px;display:flex}.jarvis-reply-bar{background:var(--app-accent,#f59e0b);border-radius:2px;flex:none;align-self:stretch;width:3px}.jarvis-reply-compose-text{flex-direction:column;flex:1;min-width:0;display:flex}.jarvis-reply-compose-text strong{color:var(--app-accent,#f59e0b);font-size:.8rem}.jarvis-reply-compose-text span{color:color-mix(in srgb, var(--app-text,#fff) 60%, transparent);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;overflow:hidden}.jarvis-swipe{touch-action:pan-y;width:100%;display:flex}.jarvis-swipe-inner{will-change:transform;flex-direction:column;width:100%;display:flex}.jarvis-reply-quote{border-left:3px solid var(--app-accent,#f59e0b);background:color-mix(in srgb, var(--app-text,#fff) 8%, transparent);border-radius:6px;flex-direction:column;gap:1px;max-width:240px;margin-bottom:3px;padding:3px 8px;display:flex}.jarvis-reply-quote strong{color:var(--app-accent,#f59e0b);font-size:.72rem}.jarvis-reply-quote span{color:color-mix(in srgb, var(--app-text,#fff) 60%, transparent);white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;overflow:hidden}.jarvis-meta{align-items:center;gap:4px;margin:3px 6px 0;display:inline-flex}.jarvis-pinned-mark{color:color-mix(in srgb, var(--app-accent,#f59e0b) 80%, transparent);font-size:.75rem}.jarvis-meta .jarvis-time{margin:0}.jarvis-tick{color:color-mix(in srgb, var(--app-text,#fff) 45%, transparent);font-size:.85rem}.jarvis-tick.seen{color:var(--app-accent,#f59e0b)}.jarvis-input{color:var(--app-text,#fff);background:0 0;border:none;border-radius:999px;outline:none;flex:1;padding:9px 8px;font-size:1rem}.jarvis-input::placeholder{color:color-mix(in srgb, var(--app-text,#fff) 45%, transparent)}.jarvis-send{background:var(--app-accent,#f59e0b);width:42px;height:42px;color:color-mix(in srgb, var(--app-accent,#f59e0b) 30%, #000);cursor:pointer;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.jarvis-send ion-icon{font-size:1.25rem}.jarvis-send:disabled{opacity:.4}.jarvis-iconbtn{cursor:pointer;width:42px;height:42px;color:color-mix(in srgb, var(--app-text,#fff) 70%, transparent);background:0 0;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.jarvis-iconbtn ion-icon{font-size:1.35rem}.jarvis-recinfo{color:var(--app-text,#fff);font-variant-numeric:tabular-nums;flex:1;align-items:center;gap:8px;padding:0 6px;display:flex}.jarvis-recdot{background:var(--alert);border-radius:50%;width:10px;height:10px;animation:1.2s ease-in-out infinite jarvis-recpulse}@keyframes jarvis-recpulse{0%,to{opacity:1}50%{opacity:.25}}.jarvis-bubble.jarvis-voice{background:color-mix(in srgb, var(--app-text,#fff) 12%, var(--app-surface,#151b28));padding:6px 8px}.jarvis-msg.mine .jarvis-bubble.jarvis-voice{background:color-mix(in srgb, var(--app-accent,#f59e0b) 22%, var(--app-surface,#151b28))}.jarvis-voice audio{max-width:240px;height:40px;display:block}.jarvis-bubble.jarvis-media{padding:3px;line-height:0;overflow:hidden}.jarvis-media img,.jarvis-media video{object-fit:cover;border-radius:13px;width:auto;max-width:240px;height:auto;max-height:300px;display:block}.jarvis-media img[width][height]{width:min(240px,100%);height:auto}.jarvis-sticker{width:auto;max-width:130px;height:auto;max-height:130px;display:block}.jarvis-stickers{height:100%;padding:12px 14px calc(12px + env(safe-area-inset-bottom));background:var(--app-bg,#0d111b);flex-direction:column;display:flex}.jarvis-stickers-head{color:var(--app-text,#fff);justify-content:space-between;align-items:center;margin-bottom:12px;font-size:1rem;font-weight:600;display:flex}.jarvis-stickers-add{background:color-mix(in srgb, var(--app-accent,#f59e0b) 18%, transparent);color:var(--app-accent,#f59e0b);cursor:pointer;border:none;border-radius:999px;align-items:center;gap:4px;padding:6px 12px;font-size:.85rem;font-weight:600;display:inline-flex}.jarvis-stickers-grid{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:10px;display:grid;overflow-y:auto}.jarvis-sticker-cell{background:color-mix(in srgb, var(--app-text,#fff) 5%, transparent);aspect-ratio:1;cursor:pointer;border:none;border-radius:14px;justify-content:center;align-items:center;padding:8px;display:flex}.jarvis-sticker-cell img{max-width:100%;max-height:100%}.jarvis-stickers-empty{color:color-mix(in srgb, var(--app-text,#fff) 55%, transparent);text-align:center;padding:40px 16px;font-size:.9rem}.jarvis-bubble.jarvis-location{align-items:center;gap:12px;min-width:180px;text-decoration:none;display:flex}.jarvis-location-pin{background:color-mix(in srgb, var(--app-accent,#f59e0b) 22%, transparent);width:40px;height:40px;color:var(--app-accent,#f59e0b);border-radius:12px;flex:none;justify-content:center;align-items:center;display:flex}.jarvis-location-pin ion-icon{font-size:1.4rem}.jarvis-location-text{color:var(--app-text,#fff);flex-direction:column;gap:2px;display:flex}.jarvis-location-coords{opacity:.6;font-variant-numeric:tabular-nums;font-size:.75rem}.jarvis-msg.mine .jarvis-location .jarvis-location-text{color:color-mix(in srgb, var(--app-accent,#f59e0b) 30%, #000)}.jarvis-msg.mine .jarvis-location .jarvis-location-pin{background:color-mix(in srgb, var(--app-accent,#f59e0b) 35%, #000);color:var(--app-accent,#f59e0b)}.jarvis-typing-row{align-self:flex-start}.jarvis-bubble.jarvis-typing{align-items:center;gap:5px;padding:14px;display:inline-flex}.jarvis-bubble.jarvis-typing span{background:color-mix(in srgb, var(--app-text,#fff) 55%, transparent);border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite jarvis-typing-dot}@keyframes jarvis-typing-dot{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.jarvis-bubble.jarvis-streaming:after{content:"";vertical-align:text-bottom;background:currentColor;width:2px;height:1em;margin-left:3px;animation:1s steps(2,start) infinite jarvis-caret;display:inline-block}@keyframes jarvis-caret{to{visibility:hidden}}@media (prefers-reduced-motion:reduce){.jarvis-bubble.jarvis-typing span,.jarvis-bubble.jarvis-streaming:after{animation:none}}.jarvis-inbox{background:var(--plane);border:var(--hairline);border-radius:var(--r-card);box-shadow:var(--e1);padding:0;overflow:hidden}.jarvis-inbox-section{display:none}.jarvis-inbox-item{--background:transparent;--background-hover:var(--fill);--background-activated:var(--fill);--border-radius:0;--padding-start:var(--s4);--inner-padding-end:var(--s4);--min-height:72px;margin:0}.jarvis-inbox-sliding+.jarvis-inbox-sliding{position:relative}.jarvis-inbox-sliding+.jarvis-inbox-sliding:before{content:"";top:0;left:calc(var(--s4) + 44px + var(--s3));background:var(--ink-line);z-index:2;height:1px;position:absolute;right:0}.jarvis-inbox-name{text-transform:capitalize;font-size:var(--t-body);font-weight:var(--w-emph);color:var(--ink)}.jarvis-inbox-preview{font-size:var(--t-subhead);color:var(--ink-2)}.jarvis-inbox-preview.unread{color:var(--ink)}.jarvis-inbox-time{font-size:var(--t-footnote);color:var(--ink-3);font-variant-numeric:tabular-nums}.jarvis-avatar{border-radius:var(--r-pill);background:var(--fill-strong);width:44px;height:44px;color:var(--ink);font-size:var(--t-headline);font-weight:var(--w-emph);flex:none;place-items:center;display:grid;position:relative}.jarvis-avatar--assistant{background:color-mix(in srgb, var(--app-accent) 18%, var(--app-surface));color:var(--accent-on-chip);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--app-accent) 35%, transparent);font-size:20px}.jarvis-avatar--group{box-shadow:6px -4px 0 -2px var(--app-surface), 6px -4px 0 0 var(--fill-strong)}.jarvis-input{width:0;min-width:0}.jarvis-composer{min-width:0}.jarvis-send{width:var(--tap);height:var(--tap);color:var(--on-accent)}.jarvis-headtitle{text-transform:capitalize}.jarvis-meta:empty{display:none}.chat-ambient{z-index:0;pointer-events:none;background:var(--app-bg);position:absolute;inset:0;overflow:hidden}.chat-ambient-pool{filter:blur(60px);opacity:1;will-change:transform;border-radius:50%;width:70vmax;height:70vmax;position:absolute}.chat-ambient-a{background:radial-gradient(closest-side, var(--glow-1), transparent);animation:38s ease-in-out infinite alternate chat-drift-a;top:-20vmax;left:-25vmax}.chat-ambient-b{background:radial-gradient(closest-side, var(--glow-2), transparent);animation:46s ease-in-out infinite alternate chat-drift-b;top:20vh;right:-30vmax}.chat-ambient-c{background:radial-gradient(closest-side, var(--glow-3), transparent);animation:54s ease-in-out infinite alternate chat-drift-c;bottom:-35vmax;left:-10vmax}@keyframes chat-drift-a{to{transform:translate(18vmax,12vmax)scale(1.15)}}@keyframes chat-drift-b{to{transform:translate(-16vmax,18vmax)scale(.9)}}@keyframes chat-drift-c{to{transform:translate(14vmax,-14vmax)scale(1.1)}}:root[data-mode=light] .chat-ambient-pool{opacity:.85}.jarvis-content{--background:transparent;z-index:1;position:relative}.jarvis-topbars,.jarvis-composer,.jarvis-search,.chat-hero{translate:calc(var(--chat-px,0) * -3px) calc(var(--chat-py,0) * -2px);transition:translate .7s cubic-bezier(.2,.8,.2,1)}.chat-hero{justify-content:space-between;align-items:center;gap:var(--s3);margin:0 0 var(--s4);padding:var(--s4) var(--s4) var(--s4) var(--s5);background:radial-gradient(120% 80% at 100% 0%, color-mix(in srgb, var(--app-accent) 16%, transparent), transparent 60%), color-mix(in srgb, var(--app-surface) 70%, transparent);-webkit-backdrop-filter:blur(22px)saturate(1.4);backdrop-filter:blur(22px)saturate(1.4);border:1px solid color-mix(in srgb, var(--ink) 10%, transparent);box-shadow:inset 0 1px 0 rgba(255, 255, 255, var(--edge-mid,.2)), 0 24px 44px -28px rgba(var(--shadow-tint), .8);border-radius:26px;display:flex;position:relative}.chat-hero-title{font-family:var(--font-display);font-size:var(--t-title);color:var(--ink);margin:0;line-height:1.05}.chat-hero-sub{font-size:var(--t-subhead);color:var(--ink-2);margin:6px 0 0}.chat-hero-sub b{color:var(--accent-ink)}.chat-orbs{perspective:500px;flex:none;width:104px;height:84px;position:relative}.chat-orbs--lg{width:150px;height:120px;margin:0 auto var(--s3)}.chat-orb{background:radial-gradient(120% 90% at 28% 18%, #ffffffbf, #fff0 45%), linear-gradient(155deg, color-mix(in srgb, #fff 22%, var(--app-accent)), var(--app-accent) 55%, color-mix(in srgb, #000 28%, var(--app-accent)));box-shadow:inset 0 1px 0 #ffffffb3, inset 0 -6px 12px #00000038, 0 16px 26px -12px color-mix(in srgb, var(--app-accent) 60%, #0009);place-items:center;transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s;display:grid;position:absolute}.chat-orb--main{border-radius:22px 22px 22px 8px;width:64px;height:52px;animation:7s ease-in-out infinite chat-float-a;top:6px;right:6px}.chat-orbs--lg .chat-orb--main{border-radius:30px 30px 30px 10px;width:92px;height:74px}.chat-orb--small{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:36px;height:30px;box-shadow:inset 0 1px 0 #ffffffe6, inset 0 -4px 8px #0000001f, 0 12px 20px -10px rgba(var(--shadow-tint), .6);background:radial-gradient(120% 90% at 28% 18%,#fffc,#fff0 45%),linear-gradient(155deg,#ffffff8c,#ffffff29);border-radius:14px 14px 5px;animation:8.5s ease-in-out infinite chat-float-b;bottom:8px;left:4px}.chat-orbs--lg .chat-orb--small{width:52px;height:42px}.chat-orb--tiny{border-radius:50%;width:14px;height:14px;animation:6s ease-in-out infinite chat-float-c;top:0;left:40%}.chat-orb-dots{gap:5px;display:flex}.chat-orb-dots i{background:#ffffffeb;border-radius:50%;width:7px;height:7px;box-shadow:0 1px 2px #0003}@keyframes chat-float-a{0%,to{transform:translateY(0)rotateY(-12deg)rotate(-3deg)}50%{transform:translateY(-7px)rotateY(10deg)rotate(2deg)}}@keyframes chat-float-b{0%,to{transform:translateY(0)rotateY(14deg)rotate(4deg)}50%{transform:translateY(-5px)rotateY(-8deg)rotate(-2deg)}}@keyframes chat-float-c{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-4px)scale(1.12)}}.chat-orbs:hover .chat-orb{box-shadow:inset 0 1px 0 #fffc, inset 0 -6px 12px #0003, 0 28px 36px -14px color-mix(in srgb, var(--app-accent) 55%, #000000b3);animation-play-state:paused;transform:translateZ(28px)translateY(-6px)scale(1.08)}.jarvis-avatar--assistant{background:radial-gradient(120% 90% at 28% 18%, #ffffffb3, #fff0 45%), linear-gradient(155deg, color-mix(in srgb, #fff 20%, var(--app-accent)), color-mix(in srgb, #000 25%, var(--app-accent)));box-shadow:inset 0 1px 0 #fff9, inset 0 -3px 6px #00000040, 0 8px 14px -8px color-mix(in srgb, var(--app-accent) 70%, transparent);color:#fff;animation:6s ease-in-out infinite chat-float-c}.jarvis-inbox-item:hover .jarvis-avatar{box-shadow:0 12px 18px -10px rgba(var(--shadow-tint), .8);transform:translateY(-2px)scale(1.05)}.jarvis-avatar{transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s}.jarvis-msg{animation:.32s cubic-bezier(.2,.8,.2,1) both chat-msg-in}.jarvis-msg.mine{animation-name:chat-msg-in-mine}@keyframes chat-msg-in{0%{opacity:0;transform:translate(-10px,8px)scale(.98)}}@keyframes chat-msg-in-mine{0%{opacity:0;transform:translate(10px,8px)scale(.98)}}.jarvis-composer{transition:box-shadow .32s,border-color .32s,translate .7s cubic-bezier(.2,.8,.2,1)}.jarvis-composer:focus-within{border-color:color-mix(in srgb, var(--app-accent) 45%, transparent);box-shadow:0 0 0 1px color-mix(in srgb, var(--app-accent) 35%, transparent), 0 0 30px -6px color-mix(in srgb, var(--app-accent) 55%, transparent), 0 14px 30px -18px rgba(var(--shadow-tint), .9)}.jarvis-composer:focus-within .jarvis-input{box-shadow:none;border-color:#0000;outline:none}.jarvis-iconbtn,.jarvis-send,.jarvis-headbtn,.jarvis-back,.jarvis-fab,.sg-btn,.jarvis-review-banner{transition:transform .16s cubic-bezier(.2,.8,.2,1),box-shadow .22s,background .22s}.jarvis-send{background:radial-gradient(120% 90% at 30% 15%, #ffffff73, #fff0 50%), linear-gradient(160deg, color-mix(in srgb, #fff 16%, var(--app-accent)), var(--app-accent));box-shadow:inset 0 1px 0 #ffffff80, inset 0 -2px 4px #0000002e, 0 8px 16px -8px color-mix(in srgb, var(--app-accent) 70%, transparent)}@media (hover:hover){.jarvis-iconbtn:hover,.jarvis-send:hover,.jarvis-headbtn:hover,.jarvis-back:hover,.jarvis-fab:hover,.sg-btn:hover{transform:translateY(-1px)}.jarvis-send:hover{box-shadow:inset 0 1px 0 #ffffff80, inset 0 -2px 4px #0000002e, 0 12px 22px -8px color-mix(in srgb, var(--app-accent) 80%, transparent)}}.jarvis-iconbtn:active,.jarvis-send:active,.jarvis-headbtn:active,.jarvis-back:active,.jarvis-fab:active,.sg-btn:active,.jarvis-review-banner:active{transform:scale(.92)}.jarvis-bubble.jarvis-typing span{background:radial-gradient(circle at 35% 30%, #ffffffe6, #fff0 55%), color-mix(in srgb, var(--app-accent) 55%, #ffffff59);width:9px;height:9px;box-shadow:inset 0 -1px 2px #0003, 0 2px 6px -1px color-mix(in srgb, var(--app-accent) 60%, transparent);border-radius:50%;animation:1.3s ease-in-out infinite chat-dot}.jarvis-bubble.jarvis-typing span:nth-child(2){animation-delay:.16s}.jarvis-bubble.jarvis-typing span:nth-child(3){animation-delay:.32s}@keyframes chat-dot{0%,60%,to{opacity:.55;transform:translateY(0)scale(.9)}30%{opacity:1;transform:translateY(-5px)scale(1.05)}}@media (prefers-reduced-motion:reduce){.chat-ambient-pool,.chat-orb,.jarvis-avatar--assistant,.jarvis-msg,.jarvis-bubble.jarvis-typing span{animation:none!important}.jarvis-topbars,.jarvis-composer,.jarvis-search,.chat-hero{translate:none}.jarvis-bubble.jarvis-typing span{opacity:.8}}@media (prefers-reduced-transparency:reduce){.chat-hero,.chat-orb--small{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--app-surface)}}.lock-screen{z-index:40000;background:var(--app-backdrop);justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.lock-card{text-align:center;border-radius:32px;width:100%;max-width:360px;padding:28px 22px}.lock-icon{background:color-mix(in srgb, var(--app-accent) 20%, var(--app-surface));width:60px;height:60px;color:var(--app-accent);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 14px;font-size:28px;display:flex}.lock-title{color:var(--app-text);margin:0 0 6px;font-size:24px;font-weight:800}.lock-sub{color:color-mix(in srgb, var(--app-text) 60%, transparent);margin:0 0 18px;font-size:14px}.lock-input{box-sizing:border-box;background:var(--plane-sunk);border:1px solid color-mix(in srgb, var(--app-text) 14%, transparent);border-radius:var(--r-control);width:100%;min-height:var(--tap);color:var(--app-text);font-size:var(--t-body);outline:none;margin-bottom:12px;padding:13px 15px}.lock-input:focus{border-color:var(--app-accent)}.lock-btn{border-radius:var(--r-pill);width:100%;min-height:50px;padding:0 var(--s4);font-family:inherit;font-size:var(--t-headline);font-weight:var(--w-emph);cursor:pointer;margin-bottom:var(--s2);-webkit-tap-highlight-color:transparent;transition:transform var(--d-fast) var(--ease);border:none}.lock-btn:active:not(:disabled){transform:scale(.98)}.lock-btn--primary{background:var(--app-accent);color:var(--on-accent)}.lock-btn--secondary{background:var(--fill);color:var(--ink)}.lock-btn:disabled{opacity:.45;cursor:default}.lock-error{color:var(--alert);margin:6px 0 0;font-size:14px}.lock-logout{color:var(--ink-2);font-size:var(--t-subhead);min-height:var(--tap);cursor:pointer;margin-top:var(--s1);background:0 0;border:none;text-decoration:underline}.app-backdrop{z-index:-1;pointer-events:none;background:var(--app-backdrop);background-attachment:fixed;position:fixed;inset:0}.app-backdrop--photo{overflow:hidden}.app-backdrop-img{object-fit:cover;filter:blur(48px)saturate(.75)brightness(.55);opacity:0;width:124%;height:124%;transition:opacity 2.4s var(--ease);will-change:opacity;position:absolute;inset:-12%}.app-backdrop-img--front{opacity:1}:root[data-mode=light] .app-backdrop-img{filter:blur(48px)saturate(.7)brightness(1.5)}.app-backdrop-veil{background:var(--app-backdrop);opacity:.82;position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.app-backdrop-img{transition:none}}@media (prefers-reduced-transparency:reduce){.app-backdrop-img{display:none}.app-backdrop-veil{opacity:1}}@media (prefers-contrast:more){.app-backdrop-img{display:none}.app-backdrop-veil{opacity:1}}.app-nav{left:var(--s4);right:var(--s4);bottom:calc(var(--nav-gap) + env(safe-area-inset-bottom));z-index:30000;border-radius:var(--r-pill);align-items:stretch;padding:5px;display:flex;position:fixed}@media (prefers-reduced-transparency:reduce){.app-nav{background:var(--app-surface);-webkit-backdrop-filter:none;backdrop-filter:none}}.app-nav button{min-width:0;min-height:var(--tap);padding:var(--s1) var(--s1) 5px;border-radius:var(--r-pill);cursor:pointer;z-index:1;color:var(--ink-2-glass);font-family:inherit;font-size:var(--t-micro);font-weight:var(--w-emph);letter-spacing:0;-webkit-tap-highlight-color:transparent;transition:color var(--d-base) var(--ease);background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;display:flex;position:relative}.app-nav button ion-icon{transition:transform var(--d-base) var(--ease-spring);font-size:23px}.app-nav button:active ion-icon{transform:scale(1.14)}.app-nav button.active{color:var(--accent-on-glass)}.app-nav .nav-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.app-nav .nav-drop{z-index:0;pointer-events:none;transition:transform var(--d-slow) var(--ease-spring), width var(--d-slow) var(--ease-spring), opacity var(--d-fast) var(--ease);will-change:transform, width;position:absolute;top:0;left:0}.app-nav .nav-drop-blob{border-radius:var(--r-pill);background:linear-gradient(to bottom, rgba(255, 255, 255, var(--sheen-a)), transparent 70%), color-mix(in srgb, var(--ink) 11%, transparent);box-shadow:inset 0 1px 0 rgba(255, 255, 255, var(--edge-mid)), inset 0 -1px 0 rgba(255, 255, 255, var(--edge-lo)), 0 2px 10px -2px rgba(var(--shadow-tint), .3);position:absolute;inset:0}.app-nav .nav-drop-blob.drop-a{animation:nav-drop var(--d-slow) var(--ease-spring)}.app-nav .nav-drop-blob.drop-b{animation:nav-drop-b var(--d-slow) var(--ease-spring)}@keyframes nav-drop{0%{transform:scale(1)}35%{transform:scale(1.1,.86)}70%{transform:scale(.97,1.03)}to{transform:scale(1)}}@keyframes nav-drop-b{0%{transform:scale(1)}35%{transform:scale(1.1,.86)}70%{transform:scale(.97,1.03)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.app-nav .nav-drop{transition:opacity var(--d-fast) linear}.app-nav .nav-drop-blob.drop-a,.app-nav .nav-drop-blob.drop-b{animation:none}}:root{--ion-color-primary:#0054e9;--ion-color-primary-rgb:0, 84, 233;--ion-color-primary-contrast:#fff;--ion-color-primary-contrast-rgb:255, 255, 255;--ion-color-primary-shade:#004acd;--ion-color-primary-tint:#1a65eb;--ion-color-secondary:#0163aa;--ion-color-secondary-rgb:1, 99, 170;--ion-color-secondary-contrast:#fff;--ion-color-secondary-contrast-rgb:255, 255, 255;--ion-color-secondary-shade:#015796;--ion-color-secondary-tint:#1a73b3;--ion-color-tertiary:#6030ff;--ion-color-tertiary-rgb:96, 48, 255;--ion-color-tertiary-contrast:#fff;--ion-color-tertiary-contrast-rgb:255, 255, 255;--ion-color-tertiary-shade:#542ae0;--ion-color-tertiary-tint:#7045ff;--ion-color-success:#2dd55b;--ion-color-success-rgb:45, 213, 91;--ion-color-success-contrast:#000;--ion-color-success-contrast-rgb:0, 0, 0;--ion-color-success-shade:#28bb50;--ion-color-success-tint:#42d96b;--ion-color-warning:#ffc409;--ion-color-warning-rgb:255, 196, 9;--ion-color-warning-contrast:#000;--ion-color-warning-contrast-rgb:0, 0, 0;--ion-color-warning-shade:#e0ac08;--ion-color-warning-tint:#ffca22;--ion-color-danger:#c5000f;--ion-color-danger-rgb:197, 0, 15;--ion-color-danger-contrast:#fff;--ion-color-danger-contrast-rgb:255, 255, 255;--ion-color-danger-shade:#ad000d;--ion-color-danger-tint:#cb1a27;--ion-color-light:#f4f5f8;--ion-color-light-rgb:244, 245, 248;--ion-color-light-contrast:#000;--ion-color-light-contrast-rgb:0, 0, 0;--ion-color-light-shade:#d7d8da;--ion-color-light-tint:#f5f6f9;--ion-color-medium:#636469;--ion-color-medium-rgb:99, 100, 105;--ion-color-medium-contrast:#fff;--ion-color-medium-contrast-rgb:255, 255, 255;--ion-color-medium-shade:#57585c;--ion-color-medium-tint:#737478;--ion-color-dark:#222428;--ion-color-dark-rgb:34, 36, 40;--ion-color-dark-contrast:#fff;--ion-color-dark-contrast-rgb:255, 255, 255;--ion-color-dark-shade:#1e2023;--ion-color-dark-tint:#383a3e}html.ios{--ion-default-font:-apple-system, BlinkMacSystemFont, "Helvetica Neue", "Roboto", sans-serif}html.md{--ion-default-font:"Roboto", "Helvetica Neue", sans-serif}html{--ion-dynamic-font:-apple-system-body;--ion-font-family:var(--ion-default-font)}body{background:var(--ion-background-color);color:var(--ion-text-color)}body.backdrop-no-scroll{overflow:hidden}html.ios ion-modal.modal-card ion-header ion-toolbar:first-of-type,html.ios ion-modal.modal-sheet ion-header ion-toolbar:first-of-type,html.ios ion-modal ion-footer ion-toolbar:first-of-type,html.ios ion-footer.modal-footer-moving ion-toolbar:first-of-type{padding-top:6px}html.ios ion-modal.modal-card ion-header ion-toolbar:last-of-type,html.ios ion-modal.modal-sheet ion-header ion-toolbar:last-of-type{padding-bottom:6px}html.ios ion-modal ion-toolbar,html.ios .modal-footer-moving ion-toolbar{padding-right:calc(var(--ion-safe-area-right) + 8px);padding-left:calc(var(--ion-safe-area-left) + 8px)}@media screen and (width>=768px){html.ios ion-modal.modal-card:first-of-type{--backdrop-opacity:.18}}ion-modal.modal-default.show-modal~ion-modal.modal-default{--backdrop-opacity:0;--box-shadow:none}html.ios ion-modal.modal-card .ion-page{border-top-left-radius:var(--border-radius)}.ion-color-primary{--ion-color-base:var(--ion-color-primary,#0054e9)!important;--ion-color-base-rgb:var(--ion-color-primary-rgb,0, 84, 233)!important;--ion-color-contrast:var(--ion-color-primary-contrast,#fff)!important;--ion-color-contrast-rgb:var(--ion-color-primary-contrast-rgb,255, 255, 255)!important;--ion-color-shade:var(--ion-color-primary-shade,#004acd)!important;--ion-color-tint:var(--ion-color-primary-tint,#1a65eb)!important}.ion-color-secondary{--ion-color-base:var(--ion-color-secondary,#0163aa)!important;--ion-color-base-rgb:var(--ion-color-secondary-rgb,1, 99, 170)!important;--ion-color-contrast:var(--ion-color-secondary-contrast,#fff)!important;--ion-color-contrast-rgb:var(--ion-color-secondary-contrast-rgb,255, 255, 255)!important;--ion-color-shade:var(--ion-color-secondary-shade,#015796)!important;--ion-color-tint:var(--ion-color-secondary-tint,#1a73b3)!important}.ion-color-tertiary{--ion-color-base:var(--ion-color-tertiary,#6030ff)!important;--ion-color-base-rgb:var(--ion-color-tertiary-rgb,96, 48, 255)!important;--ion-color-contrast:var(--ion-color-tertiary-contrast,#fff)!important;--ion-color-contrast-rgb:var(--ion-color-tertiary-contrast-rgb,255, 255, 255)!important;--ion-color-shade:var(--ion-color-tertiary-shade,#542ae0)!important;--ion-color-tint:var(--ion-color-tertiary-tint,#7045ff)!important}.ion-color-success{--ion-color-base:var(--ion-color-success,#2dd55b)!important;--ion-color-base-rgb:var(--ion-color-success-rgb,45, 213, 91)!important;--ion-color-contrast:var(--ion-color-success-contrast,#000)!important;--ion-color-contrast-rgb:var(--ion-color-success-contrast-rgb,0, 0, 0)!important;--ion-color-shade:var(--ion-color-success-shade,#28bb50)!important;--ion-color-tint:var(--ion-color-success-tint,#42d96b)!important}.ion-color-warning{--ion-color-base:var(--ion-color-warning,#ffc409)!important;--ion-color-base-rgb:var(--ion-color-warning-rgb,255, 196, 9)!important;--ion-color-contrast:var(--ion-color-warning-contrast,#000)!important;--ion-color-contrast-rgb:var(--ion-color-warning-contrast-rgb,0, 0, 0)!important;--ion-color-shade:var(--ion-color-warning-shade,#e0ac08)!important;--ion-color-tint:var(--ion-color-warning-tint,#ffca22)!important}.ion-color-danger{--ion-color-base:var(--ion-color-danger,#c5000f)!important;--ion-color-base-rgb:var(--ion-color-danger-rgb,197, 0, 15)!important;--ion-color-contrast:var(--ion-color-danger-contrast,#fff)!important;--ion-color-contrast-rgb:var(--ion-color-danger-contrast-rgb,255, 255, 255)!important;--ion-color-shade:var(--ion-color-danger-shade,#ad000d)!important;--ion-color-tint:var(--ion-color-danger-tint,#cb1a27)!important}.ion-color-light{--ion-color-base:var(--ion-color-light,#f4f5f8)!important;--ion-color-base-rgb:var(--ion-color-light-rgb,244, 245, 248)!important;--ion-color-contrast:var(--ion-color-light-contrast,#000)!important;--ion-color-contrast-rgb:var(--ion-color-light-contrast-rgb,0, 0, 0)!important;--ion-color-shade:var(--ion-color-light-shade,#d7d8da)!important;--ion-color-tint:var(--ion-color-light-tint,#f5f6f9)!important}.ion-color-medium{--ion-color-base:var(--ion-color-medium,#636469)!important;--ion-color-base-rgb:var(--ion-color-medium-rgb,99, 100, 105)!important;--ion-color-contrast:var(--ion-color-medium-contrast,#fff)!important;--ion-color-contrast-rgb:var(--ion-color-medium-contrast-rgb,255, 255, 255)!important;--ion-color-shade:var(--ion-color-medium-shade,#57585c)!important;--ion-color-tint:var(--ion-color-medium-tint,#737478)!important}.ion-color-dark{--ion-color-base:var(--ion-color-dark,#222428)!important;--ion-color-base-rgb:var(--ion-color-dark-rgb,34, 36, 40)!important;--ion-color-contrast:var(--ion-color-dark-contrast,#fff)!important;--ion-color-contrast-rgb:var(--ion-color-dark-contrast-rgb,255, 255, 255)!important;--ion-color-shade:var(--ion-color-dark-shade,#1e2023)!important;--ion-color-tint:var(--ion-color-dark-tint,#383a3e)!important}.ion-page{contain:layout size style;z-index:0;flex-direction:column;justify-content:space-between;display:flex;position:absolute;inset:0}.ion-page.ion-page-overlay-passthrough{pointer-events:none}ion-modal>.ion-page{contain:layout style;height:100%;position:relative}.split-pane-visible>.ion-page.split-pane-main{position:relative}ion-route,ion-route-redirect,ion-router,ion-select-option,ion-nav-controller,ion-menu-controller,ion-action-sheet-controller,ion-alert-controller,ion-loading-controller,ion-modal-controller,ion-picker-controller,ion-popover-controller,ion-toast-controller,.ion-page-hidden{display:none!important}.ion-page-invisible{opacity:0}.can-go-back>ion-header ion-back-button{display:block}html.plt-ios.plt-hybrid,html.plt-ios.plt-pwa{--ion-statusbar-padding:20px}@supports (padding-top:20px){html{--ion-safe-area-top:var(--ion-statusbar-padding)}}@supports (padding-top:env(safe-area-inset-top)){html{--ion-safe-area-top:var(--safe-area-inset-top,env(safe-area-inset-top));--ion-safe-area-bottom:var(--safe-area-inset-bottom,env(safe-area-inset-bottom));--ion-safe-area-left:var(--safe-area-inset-left,env(safe-area-inset-left));--ion-safe-area-right:var(--safe-area-inset-right,env(safe-area-inset-right))}}ion-card.ion-color .ion-inherit-color,ion-card-header.ion-color .ion-inherit-color{color:inherit}.menu-content{transform:translate(0,0)}.menu-content-open{cursor:pointer;touch-action:manipulation;pointer-events:none;overflow-y:hidden}.menu-content-open ion-content{--overflow:hidden}.menu-content-open .ion-content-scroll-host{overflow:hidden}.ios .menu-content-reveal{box-shadow:-8px 0 42px #00000014}[dir=rtl].ios .menu-content-reveal{box-shadow:8px 0 42px #00000014}.md .menu-content-reveal,.md .menu-content-push{box-shadow:4px 0 16px #0000002e}ion-accordion-group.accordion-group-expand-inset>ion-accordion:first-of-type{border-top-left-radius:8px;border-top-right-radius:8px}ion-accordion-group.accordion-group-expand-inset>ion-accordion:last-of-type{border-bottom-right-radius:8px;border-bottom-left-radius:8px}ion-accordion-group>ion-accordion:last-of-type ion-item[slot=header]{--border-width:0px}ion-accordion.accordion-animated>[slot=header] .ion-accordion-toggle-icon{transition:transform .3s cubic-bezier(.25,.8,.5,1)}@media (prefers-reduced-motion:reduce){ion-accordion .ion-accordion-toggle-icon{transition:none!important}}ion-accordion.accordion-expanding>[slot=header] .ion-accordion-toggle-icon,ion-accordion.accordion-expanded>[slot=header] .ion-accordion-toggle-icon{transform:rotate(180deg)}ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-previous ion-item[slot=header]{--border-width:0px;--inner-border-width:0px}ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-expanding:first-of-type,ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-expanded:first-of-type{margin-top:0}ion-input input::-webkit-date-and-time-value{text-align:start}.ion-datetime-button-overlay{--width:fit-content;--height:fit-content}.ion-datetime-button-overlay ion-datetime.datetime-grid{width:320px;min-height:320px}[ion-last-focus],header[tabindex="-1"]:focus,[role=banner][tabindex="-1"]:focus,main[tabindex="-1"]:focus,[role=main][tabindex="-1"]:focus,h1[tabindex="-1"]:focus,[role=heading][aria-level="1"][tabindex="-1"]:focus{outline:none}.popover-viewport:has(>ion-content){overflow:hidden}@supports not selector(:has(> ion-content)){.popover-viewport{overflow:hidden}}audio,canvas,progress,video{vertical-align:baseline}audio:not([controls]){height:0;display:none}b,strong{font-weight:700}img{max-width:100%}hr{box-sizing:content-box;border-width:0;height:1px}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace;font-size:1em}label,input,select,textarea{font-family:inherit;line-height:normal}textarea{height:auto;font:inherit;color:inherit;overflow:auto}textarea::placeholder{padding-left:2px}form,input,optgroup,select{font:inherit;color:inherit;margin:0}html input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button}a,a div,a span,a ion-icon,a ion-label,button,button div,button span,button ion-icon,button ion-label,.ion-tappable,[tappable],[tappable] div,[tappable] span,[tappable] ion-icon,[tappable] ion-label,input,textarea{touch-action:manipulation}a ion-label,button ion-label{pointer-events:none}button{font-family:inherit;font-style:inherit;font-variant:inherit;text-transform:none;cursor:pointer;-webkit-appearance:button;border:0;border-radius:0;padding:0;line-height:1}[tappable]{cursor:pointer}a[disabled],button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner{border:0;padding:0}input::-moz-focus-inner{border:0;padding:0}input[type=number]::-webkit-inner-spin-button{height:auto}input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}input[type=search]::-webkit-search-decoration{-webkit-appearance:none}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}*{box-sizing:border-box;-webkit-tap-highlight-color:#0000;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;width:100%;height:100%}html.ion-ce body{display:block}html.plt-pwa{height:100vh}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;touch-action:manipulation;-webkit-user-drag:none;-ms-content-zooming:none;word-wrap:break-word;overscroll-behavior-y:none;-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;width:100%;max-width:100%;height:100%;max-height:100%;margin:0;padding:0;position:fixed;overflow:hidden;transform:translateZ(0)}html{font-family:var(--ion-font-family)}@supports (-webkit-touch-callout:none){html{font:var(--ion-dynamic-font,16px var(--ion-font-family))}}a{color:var(--ion-color-primary,#0054e9);background-color:#0000}h1,h2,h3,h4,h5,h6{margin-top:16px;margin-bottom:10px;font-weight:500;line-height:1.2}h1{margin-top:20px;font-size:1.625rem}h2{margin-top:18px;font-size:1.5rem}h3{font-size:1.375rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}small{font-size:75%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sup{top:-.5em}sub{bottom:-.25em}@font-face{font-family:Instrument Serif;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-ext-400-normal-C2je3j2s.woff2)format("woff2"),url(/assets/instrument-serif-latin-ext-400-normal-CFCUzsTy.woff)format("woff");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:Instrument Serif;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-400-normal-DnYpCC2O.woff2)format("woff2"),url(/assets/instrument-serif-latin-400-normal-BVbkICAY.woff)format("woff");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:Instrument Serif;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-ext-400-italic-C9HzH3YL.woff2)format("woff2"),url(/assets/instrument-serif-latin-ext-400-italic-D7-lnxEk.woff)format("woff");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:Instrument Serif;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-400-italic-DKMiL14s.woff2)format("woff2"),url(/assets/instrument-serif-latin-400-italic-u__WvvIK.woff)format("woff");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}:root{--glow-1:#f59e0b38;--glow-2:#0b14f51c;--glow-3:#f59e0b17;--app-backdrop:radial-gradient(95% 40% at 6% 2%, var(--glow-1), transparent 70%), radial-gradient(75% 38% at 104% 48%, var(--glow-2), transparent 72%), radial-gradient(100% 34% at 22% 104%, var(--glow-3), transparent 70%), var(--app-bg);--glass-blur:26px;--glass-saturate:190%;--glass-fill:color-mix(in srgb, var(--app-surface) 58%, transparent);--glass-fill-thick:color-mix(in srgb, var(--app-surface) 80%, transparent);--glass-sheen:linear-gradient(to bottom, rgba(255, 255, 255, var(--sheen-a)) 0%, #fff0 58%);--glass-edge:linear-gradient(150deg, rgba(255, 255, 255, var(--edge-hi)) 0%, rgba(255, 255, 255, var(--edge-lo)) 26%, #fff0 48%, rgba(255, 255, 255, var(--edge-lo)) 74%, rgba(255, 255, 255, var(--edge-mid)) 100%);--glass-shadow:0 14px 40px -12px rgba(var(--shadow-tint), .55), 0 2px 8px rgba(var(--shadow-tint), .16);--glass-clear-blur:12px;--glass-clear-saturate:150%;--glass-clear-fill:color-mix(in srgb, var(--app-surface) 28%, transparent);--glass-dim:#00000059;--glass-rim:inset 0 1px 0 var(--rim);--glass-border:1px solid color-mix(in srgb, var(--ink) 8%, transparent);--card-fill:color-mix(in srgb, var(--app-surface) 72%, transparent);--plane:linear-gradient(to bottom, color-mix(in srgb, var(--ink) 5%, transparent), color-mix(in srgb, var(--ink) 1.5%, transparent) 60%), var(--card-fill);--plane-flat:var(--card-fill);--plane-sunk:color-mix(in srgb, var(--app-bg) 55%, transparent);--card-rim:inset 0 1px 0 color-mix(in srgb, var(--ink) 9%, transparent);--fill:color-mix(in srgb, var(--ink) 7%, transparent);--fill-strong:color-mix(in srgb, var(--ink) 12%, transparent);--accent-fill:color-mix(in srgb, var(--app-accent) 15%, var(--app-surface));--accent-fill-soft:color-mix(in srgb, var(--app-accent) 9%, var(--app-surface));--hairline:1px solid var(--ink-line);--lit-edge:inset 0 1px 0 color-mix(in srgb, var(--app-accent) 55%, transparent);--lit-glow:0 0 0 1px color-mix(in srgb, var(--app-accent) 26%, transparent), 0 6px 26px -8px color-mix(in srgb, var(--app-accent) 45%, transparent);--e1:0 1px 2px rgba(var(--shadow-tint), .16);--e2:0 4px 16px -6px rgba(var(--shadow-tint), .3), 0 1px 2px rgba(var(--shadow-tint), .14);--e3:0 18px 44px -12px rgba(var(--shadow-tint), .44), 0 2px 8px rgba(var(--shadow-tint), .18);--t-display:2.125rem;--t-title:1.75rem;--t-title2:1.375rem;--t-title3:1.25rem;--t-headline:1.0625rem;--t-body:1.0625rem;--t-callout:1rem;--t-subhead:.9375rem;--t-footnote:.8125rem;--t-caption:.75rem;--t-micro:.6875rem;--lh-display:1.08;--lh-title:1.15;--lh-body:1.35;--lh-tight:1.2;--w-regular:400;--w-medium:500;--w-emph:600;--w-bold:700;--tr-display:-.022em;--tr-title:-.014em;--tr-normal:0;--tr-eyebrow:.08em;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:20px;--s6:24px;--s7:32px;--s8:40px;--page-x:var(--s5);--gutter:var(--s3);--r-control:12px;--r-card:22px;--r-sheet:28px;--r-pill:999px;--nav-h:58px;--nav-gap:10px;--nav-space:calc(var(--nav-h) + var(--nav-gap) * 2 + env(safe-area-inset-bottom));--fab-size:58px;--fab-space:calc(var(--nav-space) + var(--fab-size) + var(--s4));--tap:44px;--tap-min:28px;--ease:cubic-bezier(.32, .72, 0, 1);--ease-spring:cubic-bezier(.34, 1.35, .5, 1);--d-fast:.16s;--d-base:.28s;--d-slow:.42s}@media (prefers-reduced-transparency:reduce){:root{--glass-fill:var(--app-surface);--glass-fill-thick:var(--app-surface);--glass-clear-fill:var(--app-surface);--card-fill:var(--app-surface);--sheen-a:0;--glass-blur:0px;--glass-clear-blur:0px;--glass-saturate:100%;--glass-clear-saturate:100%}}@media (prefers-contrast:more){:root{--glass-fill:color-mix(in srgb, var(--app-surface) 96%, transparent);--glass-fill-thick:var(--app-surface);--card-fill:var(--app-surface);--edge-hi:.7;--edge-mid:.5;--edge-lo:.35;--glass-border:1px solid color-mix(in srgb, var(--ink) 34%, transparent);--hairline:1px solid color-mix(in srgb, var(--ink) 38%, transparent);--ink-2:var(--ink);--fill:color-mix(in srgb, var(--ink) 14%, transparent);--fill-strong:color-mix(in srgb, var(--ink) 22%, transparent);--ink-line:color-mix(in srgb, var(--ink) 34%, transparent)}}@media (prefers-reduced-motion:reduce){:root{--d-fast:10ms;--d-base:10ms;--d-slow:10ms}}:where(.glass){position:relative}.glass{background:var(--glass-sheen), var(--glass-fill);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));box-shadow:var(--glass-shadow);isolation:isolate}.glass:before,.glass-edge:before{content:"";border-radius:inherit;background:var(--glass-edge);-webkit-mask-composite:xor;pointer-events:none;z-index:2;padding:1px;position:absolute;inset:0;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}.glass--tint{background:var(--glass-sheen), color-mix(in srgb, var(--app-accent) 86%, transparent);color:var(--on-accent);box-shadow:var(--glass-shadow), 0 8px 28px -8px color-mix(in srgb, var(--app-accent) 60%, transparent)}.glass-clear{background:var(--glass-sheen), var(--glass-clear-fill);-webkit-backdrop-filter:blur(var(--glass-clear-blur)) saturate(var(--glass-clear-saturate));backdrop-filter:blur(var(--glass-clear-blur)) saturate(var(--glass-clear-saturate));box-shadow:var(--e2), inset 0 1px 0 #ffffff38;border:1px solid #ffffff2e}@media (prefers-contrast:more){.glass:before,.glass-edge:before{background:color-mix(in srgb, var(--ink) 45%, transparent)}}.plane{background:var(--plane);border:var(--hairline);border-radius:var(--r-card);box-shadow:var(--e2), var(--card-rim)}.t-display{font-family:var(--font-display);font-size:var(--t-display);font-weight:var(--w-regular);line-height:var(--lh-display);letter-spacing:var(--tr-display);color:var(--ink);margin:0}.t-title{font-family:var(--font-display);font-size:var(--t-title);font-weight:var(--w-regular);line-height:var(--lh-title);letter-spacing:var(--tr-title);color:var(--ink);margin:0}.t-title2{font-family:var(--font-display);font-size:var(--t-title2);font-weight:var(--w-regular);line-height:var(--lh-title);letter-spacing:var(--tr-title);color:var(--ink);margin:0}.t-headline{font-size:var(--t-headline);font-weight:var(--w-emph);line-height:var(--lh-tight);color:var(--ink)}.t-body{font-size:var(--t-body);font-weight:var(--w-regular);line-height:var(--lh-body);color:var(--ink)}.t-subhead{font-size:var(--t-subhead);font-weight:var(--w-regular);line-height:var(--lh-body);color:var(--ink-2)}.t-footnote{font-size:var(--t-footnote);font-weight:var(--w-regular);line-height:var(--lh-body);color:var(--ink-2)}.t-eyebrow{font-size:var(--t-caption);font-weight:var(--w-emph);letter-spacing:var(--tr-eyebrow);text-transform:uppercase;color:var(--ink-3);line-height:1.2}.group{background:var(--plane);border:var(--hairline);border-radius:var(--r-card);box-shadow:var(--e1), var(--card-rim);overflow:hidden}.group+.group{margin-top:var(--s5)}.group-row{align-items:center;gap:var(--s3);width:100%;min-height:var(--tap);padding:var(--s3) var(--s4);color:var(--ink);font:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:0;display:flex}.group-row+.group-row{box-shadow:inset 0 1px 0 var(--ink-line)}.group-row--inset+.group-row--inset{box-shadow:none;position:relative}.group-row--inset+.group-row--inset:before{content:"";top:0;left:calc(var(--s4) + 28px + var(--s3));background:var(--ink-line);height:1px;position:absolute;right:0}.group-row:active{background:var(--fill)}.group-title{font-size:var(--t-body);font-weight:var(--w-regular);color:var(--ink)}.group-sub{font-size:var(--t-footnote);color:var(--ink-2);margin-top:1px}.group-value{font-size:var(--t-subhead);color:var(--ink-2);white-space:nowrap;margin-left:auto}.group-chevron{color:var(--ink-3);flex-shrink:0;margin-left:auto;font-size:18px}.group-value+.group-chevron{margin-left:0}.group-header{padding:0 var(--s4) var(--s2)}.btn{justify-content:center;align-items:center;gap:var(--s2);min-height:var(--tap);padding:0 var(--s5);border-radius:var(--r-pill);font-size:var(--t-headline);font-weight:var(--w-emph);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform var(--d-fast) var(--ease), background var(--d-fast) var(--ease);border:none;font-family:inherit;display:inline-flex}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.45;cursor:default}.btn:disabled:active{transform:none}.btn--primary{background:var(--app-accent);color:var(--on-accent)}.btn--quiet{background:var(--fill);color:var(--ink)}.btn--ghost{color:var(--accent-ink);padding:0 var(--s3);background:0 0}.btn--danger{background:var(--alert);color:var(--on-alert)}.icon-btn{width:var(--tap);height:var(--tap);border-radius:var(--r-pill);color:var(--ink-2);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--d-fast) var(--ease), color var(--d-fast) var(--ease);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;font-size:20px;display:inline-flex}.icon-btn:active{background:var(--fill);color:var(--ink)}.icon-btn--filled{background:var(--fill)}.icon-btn--accent{color:var(--accent-ink)}.chip{border-radius:var(--r-pill);font-size:var(--t-caption);font-weight:var(--w-emph);background:var(--fill);color:var(--ink-2);white-space:nowrap;align-items:center;gap:5px;padding:4px 10px;line-height:1.35;display:inline-flex}.chip--accent{background:color-mix(in srgb, var(--app-accent) 14%, transparent);color:var(--accent-ink)}.chip--alert{background:color-mix(in srgb, var(--alert) 15%, transparent);color:var(--alert)}.chip--warn{background:color-mix(in srgb, var(--warn) 15%, transparent);color:var(--warn)}.field{width:100%;min-height:var(--tap);padding:var(--s3) var(--s4);border:var(--hairline);border-radius:var(--r-control);background:var(--plane-sunk);color:var(--ink);font:inherit;font-size:var(--t-body);box-sizing:border-box;transition:border-color var(--d-fast) var(--ease), box-shadow var(--d-fast) var(--ease);outline:none}.field::placeholder{color:var(--ink-3)}.field:focus-visible{border-color:var(--app-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--app-accent) 22%, transparent)}:where(button,a,input,textarea,select,[tabindex]):focus-visible{outline:2px solid var(--app-accent);outline-offset:2px;border-radius:var(--r-control)}.page{padding:40px var(--page-x) var(--s6);text-align:left;max-width:640px;margin:0 auto}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.display{font-family:var(--font-display);font-weight:var(--w-regular);letter-spacing:0;color:var(--ink);line-height:1.02}.numeral{font-family:var(--font-display);font-weight:var(--w-regular);font-variant-numeric:tabular-nums lining-nums;letter-spacing:-.01em;color:var(--ink);line-height:1}.numeral-tail{color:var(--ink-3)}.todos-head,.shopping-head,.chores-head{justify-content:space-between;align-items:center;gap:var(--s4);margin-bottom:var(--s5);display:flex}.todos-head-text p,.shopping-head-text p,.chores-head-text p{margin:var(--s1) 0 0;font-size:var(--t-subhead);color:var(--ink-2)}.todos-head-text b,.shopping-head-text b,.chores-head-text b{color:var(--ink);font-weight:var(--w-emph);font-variant-numeric:tabular-nums}.todos-ring,.shopping-ring,.chores-ring{flex:none;width:56px;height:56px;position:relative}.todos-ring svg,.shopping-ring svg,.chores-ring svg{width:56px;height:56px}.ring-track{stroke:var(--ink-line)}.ring-fill{stroke:var(--app-accent);stroke-linecap:round;transition:stroke-dashoffset var(--d-slow) var(--ease)}.ring-pct{font-size:var(--t-caption);font-weight:var(--w-emph);color:var(--ink);font-variant-numeric:tabular-nums;place-items:center;display:grid;position:absolute;inset:0}.todos-section-label,.shopping-section-label,.chores-section-label{align-items:center;gap:var(--s2);margin:var(--s5) var(--s1) var(--s2);font-size:var(--t-caption);font-weight:var(--w-emph);letter-spacing:var(--tr-eyebrow);text-transform:uppercase;color:var(--ink-3);display:flex}.todos-count,.shopping-count,.chores-count{font-size:var(--t-micro);font-weight:var(--w-emph);color:var(--ink-2);background:var(--fill);border-radius:var(--r-pill);padding:2px 7px;line-height:1.4}.todos-list,.shopping-list,.chores-list{background:var(--plane);border:var(--hairline);border-radius:var(--r-card);box-shadow:var(--e1);padding:0;display:block;overflow:hidden}.todo-sliding,.shop-sliding,.chore-sliding{--border-radius:0}.todo-sliding+.todo-sliding,.shop-sliding+.shop-sliding,.chore-sliding+.chore-sliding{box-shadow:inset 0 1px 0 var(--ink-line)}.todo-card,.shop-card,.chore-card{--background:transparent;--background-hover:var(--fill);--background-activated:var(--fill);--border-radius:0;--padding-start:var(--s4);--inner-padding-end:var(--s3);--min-height:56px;--border-width:0;box-shadow:none;transition:opacity var(--d-base) var(--ease);border:none;border-radius:0}.todo-card.urgent,.shop-card.urgent,.chore-card.urgent{--background:color-mix(in srgb, var(--alert) 7%, transparent);box-shadow:inset 3px 0 0 var(--alert)}.todo-text,.shop-text,.chore-text{font-size:var(--t-body);color:var(--ink);line-height:1.3}.todo-meta,.shop-meta,.chore-meta{font-size:var(--t-footnote);color:var(--ink-2);margin-top:1px}.todos-section-empty,.shopping-section-empty,.chores-section-empty{padding:var(--s4);font-size:var(--t-subhead);color:var(--ink-2);margin:0}:root{--app-bg:#0d111b;--app-surface:#151b28;--app-text:#fff7ed;--app-accent:#f59e0b;--ink:#fff7ed;--ink-2:#cabfb1;--ink-3:#a69a89;--ink-line:#fff7ed24;--ink-line-strong:#fff7ed42;--accent-ink:#f59e0b;--accent-on-bg:#f59e0b;--on-accent:#000;--alert:#ff6b5a;--warn:#ffb020;--ok:#4ec9a0;--on-alert:#000;--glass-tint:255, 255, 255;--rim:#ffffff24;--shadow-tint:0, 0, 0;--sheen-a:.09;--edge-hi:.5;--edge-mid:.2;--edge-lo:.06;--ion-background-color:var(--app-bg);--ion-text-color:var(--app-text);--ion-color-primary:var(--app-accent);--ion-color-primary-contrast:var(--on-accent);--ion-font-family:-apple-system, BlinkMacSystemFont, "SF Pro Text", system-ui, "Segoe UI", Roboto, sans-serif;--font-display:"Instrument Serif", ui-serif, Georgia, "Times New Roman", serif}html{-webkit-text-size-adjust:100%;font-size:100%}body{font-family:var(--ion-font-family);color:var(--ink);background:var(--app-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-synthesis:none}html,body{touch-action:pan-x pan-y}*{scrollbar-width:none;-ms-overflow-style:none}::-webkit-scrollbar{display:none}ion-content::part(scroll){scrollbar-width:none}ion-content{--background:transparent;--padding-top:env(safe-area-inset-top);--padding-bottom:var(--fab-space)}.app-statusbar{height:calc(env(safe-area-inset-top) + 22px);z-index:30000;pointer-events:none;-webkit-backdrop-filter:blur(14px)saturate(1.4);backdrop-filter:blur(14px)saturate(1.4);background:linear-gradient(#00000047 0%,#0000001a 55%,#0000 100%);position:fixed;top:0;left:0;right:0;-webkit-mask-image:linear-gradient(#000 55%,#0000);mask-image:linear-gradient(#000 55%,#0000)}:root[data-mode=light] .app-statusbar{background:linear-gradient(#00000057 0%,#0000001f 55%,#0000 100%)}@media (prefers-reduced-transparency:reduce){.app-statusbar{background:var(--app-bg);-webkit-backdrop-filter:none;backdrop-filter:none}}ion-toolbar{--color:var(--ink);--border-color:var(--ink-line);--background:var(--glass-fill);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate))}@media (prefers-reduced-transparency:reduce){ion-toolbar{--background:var(--app-surface);-webkit-backdrop-filter:none;backdrop-filter:none}}ion-action-sheet,ion-popover,ion-alert{--background:var(--app-surface);--color:var(--ink)}.alert-wrapper,.action-sheet-group,.action-sheet-group-cancel{background:var(--glass-sheen), var(--glass-fill-thick)!important;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate))!important;backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate))!important;border-radius:var(--r-sheet)!important;box-shadow:var(--glass-shadow), inset 0 1px 0 rgba(255, 255, 255, var(--edge-mid))!important}.action-sheet-group-cancel{border-radius:var(--r-pill)!important}ion-popover::part(content){background:var(--glass-sheen), var(--glass-fill-thick);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));border-radius:var(--r-card);box-shadow:var(--glass-shadow), inset 0 1px 0 rgba(255, 255, 255, var(--edge-mid))}ion-alert,ion-action-sheet{--backdrop-opacity:.32}.alert-title,.alert-sub-title,.alert-message,.alert-radio-label,.alert-checkbox-label,.alert-input,.select-interface-option,.action-sheet-button,.action-sheet-title,.action-sheet-sub-title{color:var(--ink)!important}.alert-button,.action-sheet-button{color:var(--accent-ink)!important}.alert-button.alert-button-role-destructive,.action-sheet-button.action-sheet-destructive{color:var(--alert)!important}.alert-radio-label.alert-radio-label-checked,[aria-checked=true] .alert-radio-label{color:var(--accent-ink)!important}ion-toast{--background:var(--glass-fill-thick);--color:var(--ink);--border-radius:var(--r-pill);--box-shadow:var(--glass-shadow), inset 0 1px 0 rgba(255, 255, 255, var(--edge-mid))}ion-toast::part(container){-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));border-radius:var(--r-pill)}ion-spinner{color:var(--accent-ink)}ion-button{--border-radius:var(--r-pill);text-transform:none;font-weight:var(--w-emph);letter-spacing:0}ion-modal{--background:var(--glass-sheen), var(--glass-fill-thick);--border-radius:var(--r-sheet);--box-shadow:var(--glass-shadow);--backdrop-opacity:.3}ion-modal::part(content){-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));box-shadow:var(--glass-shadow), inset 0 1px 0 rgba(255, 255, 255, var(--edge-hi))}ion-modal ion-content{--background:transparent}@media (prefers-reduced-transparency:reduce){ion-modal{--background:var(--app-surface)}.alert-wrapper,.action-sheet-group,.action-sheet-group-cancel,ion-popover::part(content),ion-toast::part(container){-webkit-backdrop-filter:none!important;backdrop-filter:none!important}ion-modal::part(content){-webkit-backdrop-filter:none;backdrop-filter:none}}.sheet-grabber{border-radius:var(--r-pill);background:var(--ink-line-strong);width:36px;height:5px;margin:var(--s2) auto var(--s3);flex-shrink:0}.shared-badge{border-radius:var(--r-pill);background:color-mix(in srgb, var(--app-accent) 14%, transparent);color:var(--accent-on-chip);font-size:var(--t-caption);font-weight:var(--w-emph);align-items:center;gap:5px;padding:4px 10px;line-height:1.35;display:inline-flex}.shared-badge ion-icon{font-size:14px}.scroll-edge-bottom{height:calc(var(--nav-space) + 24px);z-index:29000;pointer-events:none;background:linear-gradient(to top, color-mix(in srgb, var(--app-bg) 82%, transparent) 20%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);position:fixed;bottom:0;left:0;right:0;-webkit-mask-image:linear-gradient(#0000,#000 60%);mask-image:linear-gradient(#0000,#000 60%)}ion-fab ion-fab-button{--background:var(--glass-sheen), color-mix(in srgb, var(--app-accent) 86%, transparent);--background-activated:var(--app-accent);--background-hover:var(--app-accent);--background-focused:var(--app-accent);--color:var(--on-accent);--border-radius:50%;--box-shadow:var(--glass-shadow), 0 8px 28px -8px color-mix(in srgb, var(--app-accent) 60%, transparent), inset 0 1px 0 #ffffff73, inset 0 -1px 0 #ffffff1f;--transition:transform var(--d-fast) var(--ease);width:58px;height:58px;font-size:26px}ion-fab ion-fab-button::part(native){-webkit-backdrop-filter:blur(14px) saturate(var(--glass-saturate));backdrop-filter:blur(14px) saturate(var(--glass-saturate))}ion-fab ion-fab-button:active{transform:scale(.92)}
