:root{--s: 1.25;--tile-w: calc(84px * var(--s));--tile-h: calc(92px * var(--s))}:root,:root[data-theme=dark]{color-scheme:dark;--bg: #191e28;--panel: #262d3b;--notch-shade: rgba(255,255,255,.025);--panel-border: #3a4356;--field: #1a2029;--backdrop: rgba(0,0,0,.5);--fg: #e6e9ef;--muted: #8893a8;--fg-dim: #d9dde6;--on-accent: #fff;--bubble-text: #000;--accent: #5b9cff;--danger: #ff6b6b;--brand: #f5b400;--on-brand: #1a1a1a;--note: #2b3446;--note-grip: rgba(255,255,255,.22);--note-grip-on-light: rgba(0,0,0,.25);--note-code: rgba(0,0,0,.2);--note-code-on-light: rgba(0,0,0,.07);--group: #121212;--rss: #121212;--rss-icon: #f78422;--spotify: #121212;--spotify-handle: rgba(255,255,255,.55);--iframe: #121212;--iframe-page: #fff;--iframe-handle: rgba(255,255,255,.7);--iframe-handle-edge: rgba(0,0,0,.35);--iframe-button: rgba(18,18,18,.72);--iframe-button-hover: rgba(18,18,18,.9);--chart-1: #3987e5;--chart-2: #d95926;--chart-3: #199e70;--chart-4: #c98500;--chart-5: #d55181;--chart-6: #008300;--chart-7: #9085e9;--chart-8: #e66767;--chart-other: #5d6678;--chart-grid: rgba(255,255,255,.07);--chart-base: rgba(255,255,255,.24);--chart-band: rgba(255,255,255,.06);--chart-tip: #262d3b;--wx-text: #fff;--wx-muted: rgba(255,255,255,.72);--wx-rule: rgba(255,255,255,.22);--wx-track: rgba(255,255,255,.14);--wx-alert: rgba(0,0,0,.28);--wx-alert-text: #ffd166;--wx-button: rgba(0,0,0,.22);--wx-sun: #f8d45c;--wx-moon: #f3e3a6;--wx-cloud: #eef1f6;--wx-cloud-shade: #b6bfcc;--wx-rain: #6ab4ff;--wx-bolt: #ffc53d;--wx-snow: #ffffff;--wx-halo: rgba(255,255,255,.16);--wx-sky-day-1: #1f8bff;--wx-sky-day-2: #68c1ff;--wx-sky-night-1: #3654d6;--wx-sky-night-2: #9a6fde;--wx-sky-cloudy-1: #56667e;--wx-sky-cloudy-2: #8c9db4;--wx-sky-rain-1: #0fae96;--wx-sky-rain-2: #4fd99a;--wx-sky-storm-1: #33386a;--wx-sky-storm-2: #6a579c;--wx-sky-snow-1: #6f9fd3;--wx-sky-snow-2: #b9d6f2;--clock-dial: rgba(255,255,255,.07);--clock-second: #ff9f0a;--wx-temp-cold: #6ab4ff;--wx-temp-cool: #4fd1c5;--wx-temp-mild: #a3e05f;--wx-temp-warm: #f6d55c;--wx-temp-hot: #f59a45;--glyph-fg: #fff;--glyph-fg-on-light: #1a1a1a;--hover: rgba(255,255,255,.08);--pressed: rgba(255,255,255,.12);--focus: rgba(255,255,255,.16);--selected: rgba(91,156,255,.28);--marquee-border: rgba(91,156,255,.9);--marquee-fill: rgba(91,156,255,.18);--ring: rgba(255,255,255,.6);--swatch-edge: rgba(255,255,255,.15);--switch-knob: #c9d1e0;--switch-track-hover: rgba(0,0,0,.28);--talk: #ff5c5c;--talk-ring: rgba(255,92,92,.35);--badge-shadow: rgba(0,0,0,.6);--text-shadow: rgba(0,0,0,.8)}html,body{margin:0;height:100%;font:calc(14px * var(--s))/1.4 system-ui,sans-serif;color:var(--fg)}html{background:var(--bg)}html,body{touch-action:pan-x pan-y}*{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}input,textarea,[contenteditable]{user-select:text;-webkit-user-select:text;-webkit-touch-callout:default}@media(hover:none){:focus-visible{outline:none}}html{overflow-x:hidden;overscroll-behavior-x:none;scrollbar-width:none}html::-webkit-scrollbar{display:none}#safe-probe{position:fixed;top:0;left:0;width:0;height:0;visibility:hidden;pointer-events:none;padding:env(safe-area-inset-top,calc(0px * var(--s))) env(safe-area-inset-right,calc(0px * var(--s))) env(safe-area-inset-bottom,calc(0px * var(--s))) env(safe-area-inset-left,calc(0px * var(--s)))}#desktop{position:relative;min-height:100%;isolation:isolate;background:var(--bg);touch-action:pan-y}#desktop.viewer .tile{touch-action:pan-y}.scroll-end{position:absolute;width:calc(1px * var(--s));height:calc(1px * var(--s));pointer-events:none}#desktop .bg{position:fixed;inset:0;z-index:0;pointer-events:none;background-position:center;background-size:cover;background-repeat:no-repeat}#desktop .bg.blur{filter:blur(calc(14px * var(--s)));transform:scale(1.06)}#desktop.empty:after{content:"Right-click to add a shortcut";position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);pointer-events:none}.tile{position:absolute;width:var(--tile-w);height:var(--tile-h);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(4px * var(--s));padding:calc(6px * var(--s));box-sizing:border-box;border-radius:calc(8px * var(--s));cursor:pointer;touch-action:none;outline:none}@media(hover:hover){.tile:hover{background:var(--hover)}}@media(hover:hover){.tile:focus-visible{background:var(--focus)}}.tile.selected{background:var(--selected)}.tile.dragging{opacity:.8;background:var(--pressed);z-index:10;cursor:grabbing}.tile .icon{width:calc(48px * var(--s));height:calc(48px * var(--s));display:grid;place-items:center;font-size:calc(36px * var(--s));line-height:1;border-radius:calc(10px * var(--s))}.tile.attention .icon{position:relative}.tile.attention .icon:after{content:"!";position:absolute;right:calc(-4px * var(--s));bottom:calc(-4px * var(--s));width:calc(18px * var(--s));height:calc(18px * var(--s));border-radius:50%;background:var(--brand);color:var(--on-brand);font:700 calc(13px * var(--s))/calc(18px * var(--s)) system-ui,sans-serif;text-align:center;box-shadow:0 calc(1px * var(--s)) calc(3px * var(--s)) var(--badge-shadow)}.tile.attention .title{color:var(--fg-dim)}.tile .icon img{width:calc(48px * var(--s));height:calc(48px * var(--s));object-fit:contain;border-radius:calc(10px * var(--s));pointer-events:none}.tile.size-2x2:not(.widget){gap:calc(10px * var(--s))}.tile.size-2x2:not(.widget) .icon{width:calc(108px * var(--s));height:calc(108px * var(--s));font-size:calc(84px * var(--s));border-radius:calc(20px * var(--s))}.tile.size-2x2:not(.widget) .icon img{width:calc(108px * var(--s));height:calc(108px * var(--s));border-radius:calc(20px * var(--s))}.tile.size-2x2:not(.widget) .title{font-size:calc(15px * var(--s))}.tile .title{font-size:calc(12px * var(--s));text-align:center;line-height:1.2;max-width:100%;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;text-shadow:0 calc(1px * var(--s)) calc(2px * var(--s)) var(--text-shadow);word-break:break-word}dialog label[hidden],dialog .row[hidden]{display:none}dialog .row>label.grow{flex:1;min-width:0}dialog .row>label.grow>:is(input,select){width:100%;min-width:0;box-sizing:border-box}dialog textarea{background:var(--field);color:var(--fg);border:calc(1px * var(--s)) solid var(--panel-border);border-radius:calc(6px * var(--s));padding:calc(7px * var(--s)) calc(9px * var(--s));resize:vertical;font:calc(12px * var(--s))/1.4 ui-monospace,SFMono-Regular,Menlo,monospace}dialog textarea:focus{outline:calc(2px * var(--s)) solid var(--accent);outline-offset:calc(-1px * var(--s))}.menu{position:fixed;z-index:100;min-width:calc(220px * var(--s));margin:0;padding:calc(8px * var(--s));list-style:none;background:var(--panel);border:0;border-radius:calc(16px * var(--s));box-sizing:border-box;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:none}.menu::-webkit-scrollbar{display:none}.menu li{padding:calc(9px * var(--s)) calc(14px * var(--s));border-radius:calc(10px * var(--s));cursor:default;white-space:nowrap}.menu li+li:not(.sep){margin-top:calc(2px * var(--s))}@media(hover:hover){.menu li:focus-visible{background:var(--accent);color:var(--on-accent);outline:none}}@media(hover:hover){.menu li:hover{background:var(--accent);color:var(--on-accent);outline:none}}@media(hover:hover){.menu:hover li:focus-visible:not(:hover){background:none;color:inherit}}.menu li.sep{height:calc(1px * var(--s));padding:0;margin:calc(6px * var(--s)) calc(8px * var(--s));background:var(--panel-border);pointer-events:none}@media(hover:hover){.menu li.danger:hover{background:var(--danger)}}.menu li.head{color:var(--muted);font-size:calc(12px * var(--s));padding-bottom:calc(5px * var(--s));pointer-events:none}.menu li.checked,.menu li.unchecked{display:flex;align-items:center;justify-content:space-between;gap:calc(18px * var(--s));--track: var(--panel-border);--knob: var(--switch-knob)}.menu li.checked{--track: var(--accent);--knob: var(--on-accent)}@media(hover:hover){.menu li.unchecked:focus-visible{--track: var(--switch-track-hover);--knob: var(--on-accent)}}@media(hover:hover){.menu li.unchecked:hover{--track: var(--switch-track-hover);--knob: var(--on-accent)}}@media(hover:hover){.menu li.checked:focus-visible{--track: var(--on-accent);--knob: var(--accent)}}@media(hover:hover){.menu li.checked:hover{--track: var(--on-accent);--knob: var(--accent)}}.menu li.checked:after,.menu li.unchecked:after{content:"";flex:0 0 auto;width:calc(34px * var(--s));height:calc(20px * var(--s));border-radius:calc(999px * var(--s));background:radial-gradient(circle,var(--knob) calc(7px * var(--s)),transparent calc(7.5px * var(--s))) 0 0 / calc(20px * var(--s)) calc(20px * var(--s)) no-repeat,var(--track);transition:background-position .15s,background-color .15s}.menu li.checked:after{background-position:calc(14px * var(--s)) 0}.menu li.has-sub{display:flex;align-items:center;justify-content:space-between;gap:calc(18px * var(--s))}.menu li.has-sub:after{content:"";flex:0 0 auto;width:calc(14px * var(--s));height:calc(14px * var(--s));background:currentColor;opacity:.55;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 5 7 7-7 7'/%3E%3C/svg%3E") center / contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 5 7 7-7 7'/%3E%3C/svg%3E") center / contain no-repeat}@media(hover:hover){.menu li.has-sub:focus-visible:after{opacity:1}}@media(hover:hover){.menu li.has-sub:hover:after{opacity:1}}.menu li.radio:before{content:"";display:inline-block;width:calc(8px * var(--s));height:calc(8px * var(--s));margin:0 calc(10px * var(--s)) calc(1px * var(--s)) calc(-2px * var(--s));border-radius:50%;box-shadow:0 0 0 calc(2px * var(--s)) var(--muted);vertical-align:middle}.menu li.radio.on:before{background:var(--accent);box-shadow:0 0 0 calc(2px * var(--s)) var(--accent)}@media(hover:hover){.menu li.radio:focus-visible:before{box-shadow:0 0 0 calc(2px * var(--s)) var(--on-accent)}}@media(hover:hover){.menu li.radio:hover:before{box-shadow:0 0 0 calc(2px * var(--s)) var(--on-accent)}}@media(hover:hover){.menu li.radio.on:focus-visible:before{background:var(--on-accent)}}@media(hover:hover){.menu li.radio.on:hover:before{background:var(--on-accent)}}.menu li.back{color:var(--muted)}@media(hover:hover){.menu li.back:focus-visible{color:var(--on-accent)}}@media(hover:hover){.menu li.back:hover{color:var(--on-accent)}}.menu li.back:before{content:"\2191";display:inline-block;width:calc(16px * var(--s));margin-left:calc(-4px * var(--s))}.menu li.unchecked:before{visibility:hidden}dialog{background:var(--panel);color:var(--fg);border:calc(1px * var(--s)) solid var(--panel-border);border-radius:calc(12px * var(--s));padding:0;width:min(calc(420px * var(--s)),92vw);box-sizing:border-box;max-height:calc(100vh - calc(32px * var(--s)));max-height:calc(100dvh - calc(32px * var(--s)));overflow:auto}dialog::backdrop{background:var(--backdrop)}dialog h2{margin:0 0 calc(14px * var(--s));font-size:calc(16px * var(--s))}dialog form{display:flex;flex-direction:column;gap:calc(12px * var(--s));padding:calc(20px * var(--s)) calc(22px * var(--s))}dialog label{display:flex;flex-direction:column;gap:calc(4px * var(--s));font-size:calc(13px * var(--s))}dialog .row{display:flex;gap:calc(8px * var(--s));align-items:center}dialog .row>input,dialog .row>select{flex:1;min-width:0}dialog input[type=text],dialog input:not([type]),dialog input[type=url],dialog input[type=search],dialog input[type=password],dialog select{background:var(--field);color:var(--fg);border:calc(1px * var(--s)) solid var(--panel-border);border-radius:calc(6px * var(--s));padding:calc(7px * var(--s)) calc(9px * var(--s));font:inherit}dialog input:focus,dialog select:focus{outline:calc(2px * var(--s)) solid var(--accent);outline-offset:calc(-1px * var(--s))}dialog .muted{color:var(--muted);font-weight:400}dialog code{font-size:calc(12px * var(--s));background:var(--field);padding:calc(1px * var(--s)) calc(4px * var(--s));border-radius:calc(4px * var(--s))}.icon-preview{width:calc(36px * var(--s));height:calc(36px * var(--s));flex:0 0 calc(36px * var(--s));display:grid;place-items:center;font-size:calc(26px * var(--s));line-height:1;overflow:hidden}.icon-preview img{width:calc(32px * var(--s));height:calc(32px * var(--s));object-fit:contain}dialog menu{display:flex;justify-content:flex-end;gap:calc(8px * var(--s));margin:calc(6px * var(--s)) 0 0;padding:0}dialog button{font:inherit;padding:calc(7px * var(--s)) calc(14px * var(--s));border-radius:calc(6px * var(--s));border:calc(1px * var(--s)) solid var(--panel-border);background:var(--field);color:var(--fg);cursor:pointer}dialog button.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.error{color:var(--danger);margin:0;font-size:calc(13px * var(--s))}dialog .hint{margin:calc(-6px * var(--s)) 0 0;font-size:calc(13px * var(--s));line-height:1.4}dialog menu .spacer{flex:1}dialog button.danger{color:var(--danger)}@media(hover:hover){dialog button.danger:hover{background:var(--danger);border-color:var(--danger);color:var(--on-accent)}}dialog button.primary.danger-fill{background:var(--danger);border-color:var(--danger)}#desktop.locked{display:grid;place-items:center}.lock-screen{text-align:center;color:var(--muted)}.lock-screen .lock-icon{font-size:calc(48px * var(--s));line-height:1;margin-bottom:calc(12px * var(--s))}.lock-screen p{margin:0 0 calc(14px * var(--s))}.lock-screen button{font:inherit;padding:calc(8px * var(--s)) calc(18px * var(--s));border-radius:calc(6px * var(--s));border:calc(1px * var(--s)) solid var(--accent);background:var(--accent);color:var(--on-accent);cursor:pointer}.offscreen{position:fixed;left:calc(-9999px * var(--s));top:0;width:calc(1px * var(--s));height:calc(1px * var(--s));opacity:0}.menu li.custom{padding:calc(4px * var(--s)) calc(6px * var(--s)) calc(6px * var(--s));cursor:default}@media(hover:hover){.menu li.custom:hover{background:none;color:inherit}}.color-panel{display:flex;flex-direction:column;gap:calc(10px * var(--s))}.color-panel[hidden]{display:none}.color-panel .swatches{display:grid;grid-template-columns:repeat(6,calc(26px * var(--s)));gap:calc(6px * var(--s))}.color-panel .swatch{width:calc(26px * var(--s));height:calc(26px * var(--s));border-radius:calc(9px * var(--s));border:calc(1px * var(--s)) solid var(--swatch-edge);cursor:pointer;padding:0}@media(hover:hover){.color-panel .swatch:hover{transform:scale(1.1)}}.color-panel .swatch.clear{background:linear-gradient(135deg,transparent 44%,var(--danger) 44%,var(--danger) 56%,transparent 56%),var(--field)}.color-panel .swatch.current{outline:calc(2px * var(--s)) solid var(--accent);outline-offset:calc(1px * var(--s))}.color-panel .row{display:flex;gap:calc(8px * var(--s));align-items:center}.color-panel input[type=color]{width:calc(36px * var(--s));height:calc(30px * var(--s));padding:0;border:calc(1px * var(--s)) solid var(--panel-border);border-radius:calc(9px * var(--s));background:none;cursor:pointer}.color-panel input[type=text]{flex:1;width:calc(100px * var(--s));min-width:0;background:var(--field);color:var(--fg);border:calc(1px * var(--s)) solid var(--panel-border);border-radius:calc(9px * var(--s));padding:calc(6px * var(--s)) calc(10px * var(--s));font:inherit;font-family:ui-monospace,Menlo,monospace}.color-panel input[type=text]:focus{outline:calc(2px * var(--s)) solid var(--accent);outline-offset:calc(-1px * var(--s))}.toasts{position:fixed;left:50%;bottom:calc(calc(78px * var(--s)) + env(safe-area-inset-bottom));transform:translate(-50%);z-index:200;display:flex;flex-direction:column;align-items:center;gap:calc(8px * var(--s));width:max-content;max-width:calc(100vw - calc(32px * var(--s)));pointer-events:none}.toast{display:flex;align-items:center;gap:calc(10px * var(--s));max-width:calc(440px * var(--s));padding:calc(10px * var(--s)) calc(16px * var(--s)) calc(10px * var(--s)) calc(12px * var(--s));background:var(--panel);border:0;border-radius:calc(12px * var(--s));color:var(--fg);font-size:calc(13.5px * var(--s));line-height:1.35;pointer-events:auto;cursor:pointer;animation:toast-in .22s cubic-bezier(.2,.9,.3,1.2) both}.toast.leaving{animation:toast-out .18s ease-in both}.toast.bump{animation:toast-bump .25s ease-out}.toast-icon{flex:0 0 auto;width:calc(18px * var(--s));height:calc(18px * var(--s))}.toast.success .toast-icon{color:var(--accent)}.toast.error .toast-icon{color:var(--danger)}.toast.info .toast-icon{color:var(--muted)}.toast.busy .toast-icon{color:var(--muted);animation:toast-spin .8s linear infinite}@keyframes toast-in{0%{opacity:0;transform:translateY(calc(10px * var(--s))) scale(.96)}}@keyframes toast-out{to{opacity:0;transform:translateY(calc(6px * var(--s))) scale(.97)}}@keyframes toast-bump{40%{transform:scale(1.04)}}@keyframes toast-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.toast,.toast.leaving,.toast.bump{animation-duration:.01s}.toast.busy .toast-icon{animation:none}}dialog input[type=search]{appearance:textfield;-webkit-appearance:textfield}dialog input[type=search]::-webkit-search-decoration,dialog input[type=search]::-webkit-search-cancel-button,dialog input[type=search]::-webkit-search-results-button{display:none;-webkit-appearance:none}.notch{position:fixed;left:50%;transform:translate(-50%);z-index:95;bottom:calc(calc(10px * var(--s)) + env(safe-area-inset-bottom));display:flex;align-items:center;gap:calc(4px * var(--s));padding:calc(4px * var(--s));background:var(--panel);border:0;border-radius:calc(12px * var(--s))}.notch:before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:var(--notch-shade);pointer-events:none}.notch-home{display:flex;align-items:center}.notch button svg{display:block}.notch-recent{display:flex;gap:calc(4px * var(--s))}.notch-recent:empty{display:none}.notch-recent button{padding:calc(6px * var(--s));border:0;border-radius:calc(9px * var(--s));background:none;cursor:pointer}@media(hover:hover){.notch-recent button:focus-visible{background:var(--hover);outline:none}}@media(hover:hover){.notch-recent button:hover{background:var(--hover)}}@media(hover:hover){.notch-recent button:focus-visible{box-shadow:0 0 0 calc(2px * var(--s)) var(--accent)}}.notch-recent .glyph{width:calc(32px * var(--s));height:calc(32px * var(--s));border-radius:calc(8px * var(--s));display:grid;place-items:center;font-size:calc(16px * var(--s));font-weight:600;line-height:1;color:var(--glyph-fg);background:var(--glyph-color)}.notch-recent .glyph.light{color:var(--glyph-fg-on-light)}.notch-recent button.current{background:var(--bg)}.notch button{display:block;padding:calc(6px * var(--s));border:0;border-radius:calc(9px * var(--s));background:none;color:var(--fg);cursor:pointer}.notch button img{display:block}@media(hover:hover){.notch button:focus-visible{background:var(--hover);outline:none}}@media(hover:hover){.notch button:hover{background:var(--hover)}}@media(hover:hover){.notch button:focus-visible{box-shadow:0 0 0 calc(2px * var(--s)) var(--accent)}}.notch button.active{background:var(--bg)}.notch .talk-btn[hidden]{display:none}.notch .talk-btn{touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.notch .talk-btn svg{width:calc(30px * var(--s));height:calc(30px * var(--s))}.notch .talk-btn.talking{background:var(--talk);color:var(--on-accent);box-shadow:0 0 0 calc((2px + var(--level, 0) * 12px) * var(--s)) var(--talk-ring);transition:box-shadow .06s linear}.launcher{position:fixed;inset:0;z-index:90;box-sizing:border-box;padding:calc(24px * var(--s)) calc(24px * var(--s)) calc(74px * var(--s));display:flex;flex-direction:column;align-items:center;gap:calc(28px * var(--s));justify-content:safe center;overflow-y:auto;animation:launcher-in .16s ease-out}body.launcher-open #desktop .tile,body.launcher-open #desktop.empty:after{visibility:hidden}body.launcher-open .notch-home,body.launcher-open .notch-recent{display:none}.notch-trash{display:none;padding:calc(6px * var(--s));border-radius:calc(9px * var(--s));color:var(--fg)}.notch-trash svg{display:block;width:calc(30px * var(--s));height:calc(30px * var(--s))}body.trash-open .notch>:not(.notch-trash){display:none}body.trash-open .notch-trash{display:block}.notch-trash.over{background:var(--danger);color:var(--on-accent)}.launcher[hidden]{display:none}.settings-title{margin:0;font-size:calc(20px * var(--s));font-weight:600}.settings-list{display:flex;flex-direction:column;gap:calc(12px * var(--s));width:100%;max-width:calc(520px * var(--s));animation:launcher-pop .18s ease-out}.settings-row{display:flex;flex-wrap:wrap;align-items:center;gap:calc(16px * var(--s));padding:calc(14px * var(--s)) calc(16px * var(--s));border:calc(1px * var(--s)) solid var(--panel-border);border-radius:calc(12px * var(--s));background:var(--panel)}.settings-row .text{flex:999 1 calc(200px * var(--s));min-width:0}.settings-row h3{margin:0 0 calc(4px * var(--s));font-size:calc(15px * var(--s));font-weight:600}.settings-row p{margin:0;font-size:calc(13px * var(--s));line-height:1.4;color:var(--muted)}.settings-row button{flex:none;padding:calc(8px * var(--s)) calc(16px * var(--s));border:calc(1px * var(--s)) solid var(--panel-border);border-radius:999px;background:var(--field);color:var(--fg);font:inherit;font-weight:600;cursor:pointer}.settings-row .audio{display:flex;flex-direction:column;gap:calc(10px * var(--s));flex:1 1 calc(240px * var(--s));min-width:0}.settings-row .controls{display:flex;align-items:center;gap:calc(8px * var(--s))}.settings-row .controls select{flex:1;min-width:0}.settings-row>button{margin-left:auto}.settings-row .controls button{min-width:calc(72px * var(--s))}.settings-row select{padding:calc(7px * var(--s)) calc(10px * var(--s));border:calc(1px * var(--s)) solid var(--panel-border);border-radius:calc(8px * var(--s));background:var(--field);color:var(--fg);font:inherit;font-size:calc(13px * var(--s));appearance:none;-webkit-appearance:none;cursor:pointer}.settings-row select:focus{outline:calc(2px * var(--s)) solid var(--accent);outline-offset:calc(-1px * var(--s))}.settings-row .settings-note{margin-top:calc(6px * var(--s));color:var(--muted);font-style:italic}.settings-row .transcript{flex:1;min-width:0;color:var(--fg);font-size:calc(13px * var(--s));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;direction:rtl}.settings-row .transcript.empty{color:var(--muted)}.settings-row .switches{display:flex;flex-direction:column;gap:calc(10px * var(--s));flex:1 1 calc(240px * var(--s));min-width:0}.settings-row .setting-switch{display:flex;align-items:center;justify-content:space-between;gap:calc(10px * var(--s));font-size:calc(13px * var(--s));color:var(--fg);cursor:pointer}.settings-row button.switch{flex:none;min-width:0;width:calc(34px * var(--s));height:calc(20px * var(--s));padding:0;border:0;border-radius:999px;--track: var(--panel-border);--knob: var(--switch-knob);background:radial-gradient(circle,var(--knob) calc(7px * var(--s)),transparent calc(7.5px * var(--s))) 0 0 / calc(20px * var(--s)) calc(20px * var(--s)) no-repeat,var(--track);transition:background-position .15s,background-color .15s}.settings-row button.switch[aria-checked=true]{--track: var(--accent);--knob: var(--on-accent);background-position:calc(14px * var(--s)) 0}@media(hover:hover){.settings-row button.switch:focus-visible{outline:calc(2px * var(--s)) solid var(--accent);outline-offset:calc(2px * var(--s))}}.level-meter{height:calc(6px * var(--s));border-radius:999px;background:var(--field);overflow:hidden;transition:opacity .2s ease}.level-meter.idle{opacity:.4}.level-meter span{display:block;height:100%;width:calc(var(--level, 0) * 100%);border-radius:inherit;background:var(--accent)}.settings-row button.danger{border-color:var(--danger);background:var(--danger);color:var(--on-accent)}@media(hover:hover){.settings-row button:hover{filter:brightness(1.1)}}@media(hover:hover){.settings-row button:focus-visible{outline:calc(2px * var(--s)) solid var(--accent);outline-offset:calc(2px * var(--s))}}@keyframes launcher-in{0%{opacity:0}to{opacity:1}}@keyframes launcher-pop{0%{transform:scale(1.06);opacity:0}to{transform:none;opacity:1}}.launcher-grid{--launch-w: min(calc(120px * var(--s)), calc((100% - 2 * 12px * var(--s)) / 3));display:grid;grid-template-columns:repeat(auto-fit,var(--launch-w));justify-content:center;gap:calc(20px * var(--s)) calc(12px * var(--s));width:100%;max-width:calc(820px * var(--s));animation:launcher-pop .18s ease-out}.launcher-grid:empty{display:none}.launch{display:flex;flex-direction:column;align-items:center;gap:calc(8px * var(--s));width:100%;min-width:0;box-sizing:border-box;padding:calc(10px * var(--s)) calc(6px * var(--s));border:0;border-radius:calc(12px * var(--s));background:none;color:var(--fg);font:inherit;cursor:pointer}@media(hover:hover){.launch:focus-visible{outline:none}}@media(hover:hover){.launch:hover{outline:none}}.launch.current .glyph{outline:calc(2px * var(--s)) solid var(--ring);outline-offset:calc(3px * var(--s))}@media(hover:hover){.launch:hover .glyph{outline:calc(2px * var(--s)) solid var(--ring);outline-offset:calc(3px * var(--s))}}@media(hover:hover){.launch:focus-visible .glyph{outline:calc(2px * var(--s)) solid var(--accent);outline-offset:calc(3px * var(--s))}}.launch .glyph{width:min(calc(64px * var(--s)),100%);aspect-ratio:1;border-radius:calc(16px * var(--s));display:grid;place-items:center;font-size:calc(30px * var(--s));font-weight:600;line-height:1;color:var(--glyph-fg);background:var(--glyph-color)}.launch.add .glyph{background:none;color:var(--brand);box-shadow:inset 0 0 0 calc(2px * var(--s)) var(--panel-border)}@media(hover:hover){.launch.add:focus-visible .glyph{box-shadow:inset 0 0 0 calc(2px * var(--s)) var(--muted);outline:none}}@media(hover:hover){.launch.add:hover .glyph{box-shadow:inset 0 0 0 calc(2px * var(--s)) var(--muted);outline:none}}.launch.cmd .glyph{background:none;color:var(--fg);box-shadow:inset 0 0 0 calc(2px * var(--s)) var(--panel-border)}@media(hover:hover){.launch.cmd:focus-visible .glyph{box-shadow:inset 0 0 0 calc(2px * var(--s)) var(--muted);outline:none}}@media(hover:hover){.launch.cmd:hover .glyph{box-shadow:inset 0 0 0 calc(2px * var(--s)) var(--muted);outline:none}}.launch .glyph.light{color:var(--glyph-fg-on-light)}.widgets .glyph svg{width:calc(30px * var(--s));height:calc(30px * var(--s))}.widgets .launcher-grid{display:flex;flex-wrap:wrap;justify-content:center}.widgets .launch{width:var(--launch-w);padding-inline:0}.widgets .launch.pinned .glyph{color:var(--brand)}.widgets-none{margin:0;color:var(--muted);font-size:calc(14px * var(--s))}.widgets-none[hidden],.widgets .launcher-ask[hidden]{display:none}.launch .name{font-size:calc(13px * var(--s));text-align:center;line-height:1.2;max-width:100%;word-break:break-word;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.launcher-ask{display:flex;align-items:center;gap:calc(8px * var(--s));width:100%;max-width:calc(520px * var(--s));animation:launcher-pop .18s ease-out}.launcher-search{flex:1;min-width:0;box-sizing:border-box;padding:calc(10px * var(--s)) calc(16px * var(--s));border:calc(1px * var(--s)) solid var(--panel-border);border-radius:999px;background:var(--panel);color:var(--fg);font:inherit;font-size:calc(16px * var(--s));text-align:center;appearance:textfield;-webkit-appearance:textfield}.launcher-search::-webkit-search-decoration,.launcher-search::-webkit-search-cancel-button{display:none;-webkit-appearance:none}.launcher-search::placeholder{color:var(--muted)}.launcher-search:focus{outline:calc(2px * var(--s)) solid var(--on-accent);outline-offset:calc(-1px * var(--s))}.launcher-ask-btn{flex:none;display:inline-flex;align-items:center;gap:calc(8px * var(--s));padding:calc(10px * var(--s)) calc(22px * var(--s));border:0;border-radius:999px;background:var(--on-accent);color:var(--field);font:inherit;font-size:calc(16px * var(--s));font-weight:600;cursor:pointer;transition:transform .12s ease,filter .12s ease}.launcher-ask-btn[hidden]{display:none}.launcher-ask.with-ask .launcher-search{border-top-right-radius:0;border-bottom-right-radius:0}.launcher-ask.with-ask .launcher-ask-btn{border-top-left-radius:0;border-bottom-left-radius:0}.launcher-search{transition:background-color .15s ease,color .15s ease,border-color .15s ease}.launcher-ask.asking .launcher-search{background:var(--on-accent);border-color:var(--on-accent);color:var(--bubble-text)}.launcher-ask.asking .launcher-search:focus{outline:none}.launcher-ask-icon{display:none;flex:none;width:calc(18px * var(--s));height:calc(18px * var(--s))}.launcher-ask.asking .launcher-ask-icon{display:block}.launcher-hint{display:none;margin:calc(-16px * var(--s)) 0 0;color:var(--on-accent);font-size:calc(14px * var(--s));text-align:center}.launcher-ask.asking+.launcher-hint{display:block}.launcher-ask-btn:active{transform:scale(.94)}@media(hover:hover){.launcher-ask-btn:hover{filter:brightness(1.08)}}@media(hover:hover){.launcher-ask-btn:focus-visible{outline:calc(2px * var(--s)) solid var(--on-accent);outline-offset:calc(2px * var(--s))}}.launch.link .glyph{background:var(--field);overflow:hidden}.launch.link .glyph img{width:calc(40px * var(--s));height:calc(40px * var(--s));object-fit:contain}.tile.group .group-icons{--gap: calc(14px * var(--s));--size: min(calc((100cqw - (var(--cols, 2) - 1) * var(--gap)) / var(--cols, 2)), calc((100cqh - var(--gap)) / 2));container-type:size;flex:1;width:100%;height:auto;min-height:0;display:flex;align-items:center;justify-content:center;padding:calc(6px * var(--s));box-sizing:border-box;background:var(--group);border-radius:calc(14px * var(--s))}.tile.group.size-1x1 .group-icons{--gap: calc(8px * var(--s))}.tile.group.size-2x1 .group-icons{--gap: calc(10px * var(--s))}.tile.group .group-flow{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--gap);width:calc(var(--per-row, 2) * var(--size) + (var(--per-row, 2) - 1) * var(--gap))}.tile.group .group-icon{flex:0 0 auto;width:var(--size);height:var(--size);display:grid;place-items:center;overflow:hidden;font-size:calc(var(--size) * .75);border-radius:50%}.tile.group .group-icon img{width:100%;height:100%;border-radius:50%}.tile.group.untitled .title{display:none}.group-panel{position:fixed;inset:0;z-index:90;box-sizing:border-box;padding:calc(24px * var(--s)) calc(24px * var(--s)) calc(74px * var(--s));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(20px * var(--s));animation:launcher-in .16s ease-out}.group-panel[hidden]{display:none}body.group-open #desktop .tile,body.group-open #desktop.empty:after{visibility:hidden}.group-panel-title{color:var(--fg);font-size:calc(17px * var(--s));font-weight:600;text-shadow:0 1px 3px var(--text-shadow)}.group-panel-grid{display:grid;grid-template-columns:repeat(auto-fit,var(--tile-w));justify-content:center;gap:calc(12px * var(--s));width:100%;max-width:calc(820px * var(--s));max-height:70vh;overflow:auto;animation:launcher-pop .18s ease-out}.group-panel .tile{position:relative}.group-panel .tile.leaving{opacity:.3}.group-ghost{position:fixed;z-index:99;pointer-events:none}.marquee{position:fixed;z-index:50;pointer-events:none;border:calc(1px * var(--s)) solid var(--marquee-border);background:var(--marquee-fill);border-radius:calc(2px * var(--s))}#home-btn svg{width:calc(30px * var(--s));height:calc(30px * var(--s))}#launcher-btn img{width:calc(32px * var(--s));height:calc(32px * var(--s))}.launch.add .glyph svg,.launch.cmd .glyph svg{width:calc(30px * var(--s));height:calc(30px * var(--s))}.tile.widget{align-items:stretch;justify-content:flex-start;gap:0;padding:0;cursor:default}.tile.card{background:var(--card-bg);color:var(--fg);border-radius:calc(12px * var(--s));overflow:hidden}.tile.card.dragging{background:var(--card-bg)}@media(hover:hover){.tile.card:hover,.tile.card:focus-visible{background:var(--card-bg)}}@media(hover:hover){.tile.card:hover{box-shadow:inset 0 0 0 100vmax var(--hover)}}@media(hover:hover){.tile.card:focus-visible{box-shadow:inset 0 0 0 100vmax var(--focus)}}.tile.card.selected{background:var(--card-bg);box-shadow:inset 0 0 0 100vmax var(--selected)}.tile.bare{box-sizing:border-box;border-radius:calc(16px * var(--s));cursor:grab}.viewer .tile.bare{cursor:default}.tile.bare.selected{box-shadow:0 0 0 calc(3px * var(--s)) var(--accent)}.card-head{flex:0 0 auto;box-sizing:border-box;height:calc(36px * var(--s));display:flex;align-items:center;gap:calc(6px * var(--s));padding:calc(6px * var(--s)) calc(6px * var(--s)) calc(4px * var(--s)) calc(12px * var(--s));font-size:calc(13px * var(--s));font-weight:600}.card-head.movable{cursor:grab}.card-icon{flex:0 0 auto;display:grid;color:var(--card-icon, currentColor)}.card-icon svg{width:calc(14px * var(--s));height:calc(14px * var(--s))}.card-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-head.stale .card-title:after{content:" \b7";color:var(--danger)}.card-refresh{flex:0 0 auto;display:grid;place-items:center;width:calc(26px * var(--s));height:calc(26px * var(--s));padding:0;border:0;border-radius:calc(6px * var(--s));background:none;color:var(--muted);cursor:pointer}@media(hover:hover){.card-refresh:hover{background:var(--hover);color:var(--fg)}}@media(hover:hover){.card-refresh:focus-visible{box-shadow:0 0 0 calc(2px * var(--s)) var(--accent);outline:none}}.card-refresh:disabled{opacity:.4;cursor:default}.card-refresh svg{width:calc(16px * var(--s));height:calc(16px * var(--s))}.card-refresh.loading svg{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.widget-note{margin:auto;padding:calc(4px * var(--s)) calc(8px * var(--s));text-align:center;color:var(--muted);font-size:calc(12.5px * var(--s))}.tile.note{--card-bg: var(--note-color)}.tile.note.light{color:var(--glyph-fg-on-light)}.note-grip{flex:0 0 auto;height:calc(16px * var(--s));display:grid;place-items:center}.note-grip.movable{cursor:grab}.note-grip:before{content:"";width:calc(28px * var(--s));height:calc(4px * var(--s));border-radius:calc(2px * var(--s));background:var(--note-grip)}.tile.note.light .note-grip:before{background:var(--note-grip-on-light)}.note-text,.note-view{flex:1;min-height:0;resize:none;border:0;outline:none;background:none;color:inherit;font:inherit;font-size:calc(13.5px * var(--s));line-height:1.45;padding:calc(2px * var(--s)) calc(12px * var(--s)) calc(12px * var(--s));cursor:text;touch-action:pan-y}.tile.note.editing .note-view,.tile.note:not(.editing) .note-text{display:none}.note-view{overflow:auto;overflow-wrap:anywhere}#desktop.viewer .note-view{cursor:default}.note-view:empty:before{content:"Write a note";opacity:.5}.note-view>:first-child{margin-top:0}.note-view>:last-child{margin-bottom:0}.note-view :is(p,ul,ol,pre,blockquote,table,h1,h2,h3,h4,h5,h6){margin:0 0 calc(6px * var(--s))}.note-view :is(h1,h2,h3,h4,h5,h6){font-weight:600;line-height:1.25}.note-view h1{font-size:1.35em}.note-view h2{font-size:1.2em}.note-view h3{font-size:1.05em}.note-view :is(h4,h5,h6){font-size:1em}.note-view :is(ul,ol){padding-left:calc(18px * var(--s))}.note-view li>:is(ul,ol){margin:0}.note-view li.task{list-style:none;margin-left:calc(-16px * var(--s))}.note-view li.task input{margin:0 calc(4px * var(--s)) 0 0;vertical-align:-.1em}.note-view li.task input:not(:disabled){cursor:pointer}.note-view a{color:inherit;text-decoration:underline}.note-view img{max-width:100%;border-radius:calc(4px * var(--s))}.note-view code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em;padding:0 calc(3px * var(--s));border-radius:calc(3px * var(--s));background:var(--note-code)}.note-view pre{padding:calc(6px * var(--s)) calc(8px * var(--s));border-radius:calc(6px * var(--s));overflow:auto;background:var(--note-code)}.note-view pre code{padding:0;background:none}.note-view blockquote{padding-left:calc(8px * var(--s));border-left:calc(3px * var(--s)) solid var(--note-grip);opacity:.85}.note-view hr{border:0;border-top:calc(3px * var(--s)) solid var(--note-grip)}.note-view table{border-collapse:collapse}.note-view :is(th,td){padding:calc(2px * var(--s)) calc(6px * var(--s));border:calc(1px * var(--s)) solid var(--note-grip)}.tile.note.light .note-view :is(blockquote,hr,th,td){border-color:var(--note-grip-on-light)}.tile.note.light .note-view :is(code,pre){background:var(--note-code-on-light)}.tile.note.light .note-view pre code{background:none}.note-text::placeholder{color:inherit;opacity:.5}.note-text[readonly]{cursor:default}.tile.spotify{--card-bg: var(--spotify)}.tile.spotify.selected{box-shadow:0 0 0 calc(3px * var(--s)) var(--accent)}.spotify-body{flex:1;min-height:0;display:flex;align-items:center}.spotify-body iframe{flex:1;display:block;width:100%;min-width:0;border:0;border-radius:calc(12px * var(--s))}.spotify-body iframe.zoomed{transform-origin:0 50%}.tile.dragging .spotify-body iframe{pointer-events:none}.spotify-handle{position:absolute;top:0;left:50%;transform:translate(-50%);z-index:1;width:calc(56px * var(--s));height:calc(14px * var(--s));display:grid;place-items:center;cursor:grab}.spotify-handle:before{content:"";width:calc(28px * var(--s));height:calc(4px * var(--s));border-radius:calc(2px * var(--s));background:var(--spotify-handle)}.tile.rss{--card-bg: var(--rss);--card-icon: var(--rss-icon)}.rss-body{flex:1;min-height:0;overflow:auto;padding:0 calc(6px * var(--s)) calc(8px * var(--s));font-size:calc(12.5px * var(--s));line-height:1.3;touch-action:pan-y}.rss-list{list-style:none;margin:0;padding:0}.rss-item{display:block;padding:calc(5px * var(--s)) calc(6px * var(--s));border-radius:calc(6px * var(--s));color:inherit;text-decoration:none}@media(hover:hover){a.rss-item:hover{background:var(--hover)}}@media(hover:hover){a.rss-item:focus-visible{box-shadow:inset 0 0 0 calc(2px * var(--s)) var(--accent);outline:none}}.rss-item-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.rss-item-meta{margin-top:calc(2px * var(--s));color:var(--muted);font-size:calc(11px * var(--s))}.rss-item-sum{display:none;margin-top:calc(2px * var(--s));color:var(--muted);font-size:calc(11.5px * var(--s))}.tile.rss.size-3x2 .rss-item-sum,.tile.rss.size-3x4 .rss-item-sum{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tile.chart{--card-bg: var(--chart-surface);--card-icon: var(--chart-1)}.chart-ranges{flex:0 0 auto;display:flex;gap:calc(1px * var(--s))}.chart-range{min-width:calc(22px * var(--s));height:calc(20px * var(--s));padding:0 calc(4px * var(--s));border:0;border-radius:calc(5px * var(--s));background:none;color:var(--muted);cursor:pointer;font:600 calc(10px * var(--s))/1 system-ui,sans-serif}.chart-range.on{background:var(--pressed);color:inherit}@media(hover:hover){.chart-range:hover{background:var(--hover);color:inherit}}@media(hover:hover){.chart-range:focus-visible{box-shadow:0 0 0 calc(2px * var(--s)) var(--accent);outline:none}}.tile.chart.light .chart-range.on{background:var(--note-code-on-light)}.chart-body{position:relative;flex:1;min-height:0;display:flex;flex-direction:column;padding:calc(2px * var(--s)) calc(10px * var(--s)) calc(10px * var(--s))}.chart-svg{display:block;flex:0 0 auto;overflow:visible}.chart-axis{fill:var(--muted);font:10px system-ui,sans-serif}.chart-grid{stroke:var(--chart-grid);stroke-width:1}.chart-base{stroke:var(--chart-base);stroke-width:1}.chart-line{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.chart-dot{stroke:var(--chart-surface);stroke-width:1.5}.chart-mark{stroke:var(--chart-surface);stroke-width:2}.chart-guide{stroke:var(--chart-base);stroke-width:1;stroke-dasharray:3 3}.chart-band{fill:var(--chart-band)}.chart-hover{pointer-events:none}.chart-slice{transition:opacity .15s}.chart-slice.dim,.chart-key.dim{opacity:.35}.chart-center{fill:var(--fg);font-family:system-ui,sans-serif;font-weight:650}.chart-center-label{fill:var(--muted);font-family:system-ui,sans-serif}.chart-swatch{flex:0 0 auto;width:calc(8px * var(--s));height:calc(8px * var(--s));border-radius:calc(2px * var(--s))}.chart-key{display:flex;align-items:center;gap:calc(5px * var(--s));min-width:0;transition:opacity .15s}.chart-key-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chart-key-value{margin-left:auto;padding-left:calc(6px * var(--s));color:var(--muted);font-variant-numeric:tabular-nums}.chart-keys{flex:0 0 auto;box-sizing:border-box;height:calc(20px * var(--s));display:flex;align-items:center;gap:calc(10px * var(--s));overflow:hidden;color:var(--muted);font-size:calc(11px * var(--s))}.chart-keys .chart-key{flex:0 1 auto}.chart-pie{display:flex;flex-direction:column;align-items:center;gap:calc(8px * var(--s))}.chart-pie.side{flex-direction:row;gap:calc(12px * var(--s));height:100%}.chart-legend{box-sizing:border-box;display:flex;flex-direction:column;gap:calc(3px * var(--s));overflow:auto;font-size:calc(11.5px * var(--s));scrollbar-width:none}.chart-tip{position:absolute;z-index:2;pointer-events:none;min-width:calc(90px * var(--s));max-width:80%;padding:calc(6px * var(--s)) calc(8px * var(--s));border:calc(1px * var(--s)) solid var(--panel-border);border-radius:calc(8px * var(--s));background:var(--chart-tip);box-shadow:0 calc(4px * var(--s)) calc(14px * var(--s)) var(--badge-shadow);font-size:calc(11.5px * var(--s));line-height:1.35}.chart-tip[hidden],.tile.dragging .chart-tip{display:none}.chart-tip-title{color:var(--muted);margin-bottom:calc(2px * var(--s));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chart-tip-row{display:flex;align-items:center;gap:calc(6px * var(--s));white-space:nowrap}.chart-tip-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.chart-tip-row b{font-weight:600;font-variant-numeric:tabular-nums}.tile.chart.light{color:var(--glyph-fg-on-light)}.tile.chart.light .chart-grid{stroke:var(--note-code-on-light)}.tile.chart.light :is(.chart-base,.chart-guide){stroke:var(--note-grip-on-light)}.tile.chart.light .chart-center{fill:var(--glyph-fg-on-light)}.tile.chart.light .chart-band{fill:var(--note-code-on-light)}.tile.weather{padding:calc(12px * var(--s));overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;gap:0;color:var(--wx-text);background:linear-gradient(135deg,var(--sky-1),var(--sky-2))}.tile.weather[data-face=classic]{background:transparent;color:var(--fg);text-shadow:0 calc(1px * var(--s)) calc(2px * var(--s)) var(--text-shadow)}.tile.weather[data-scene=day]{--sky-1: var(--wx-sky-day-1);--sky-2: var(--wx-sky-day-2)}.tile.weather[data-scene=night]{--sky-1: var(--wx-sky-night-1);--sky-2: var(--wx-sky-night-2)}.tile.weather[data-scene=cloudy]{--sky-1: var(--wx-sky-cloudy-1);--sky-2: var(--wx-sky-cloudy-2)}.tile.weather[data-scene=rain]{--sky-1: var(--wx-sky-rain-1);--sky-2: var(--wx-sky-rain-2)}.tile.weather[data-scene=storm]{--sky-1: var(--wx-sky-storm-1);--sky-2: var(--wx-sky-storm-2)}.tile.weather[data-scene=snow]{--sky-1: var(--wx-sky-snow-1);--sky-2: var(--wx-sky-snow-2)}.tile.weather>.card-refresh{position:absolute;z-index:1;top:calc(6px * var(--s));right:calc(6px * var(--s));color:inherit;opacity:0;pointer-events:none;transition:opacity .15s}.tile.weather:focus-within>.card-refresh,.tile.weather>.card-refresh.loading{opacity:.75;pointer-events:auto}@media(hover:hover){.tile.weather:hover>.card-refresh{opacity:.75;pointer-events:auto}.tile.weather>.card-refresh:hover{opacity:1}}.tile.weather:not([data-face=classic])>.card-refresh{background:var(--wx-button);color:var(--wx-text);border-radius:50%}.tile.weather[data-face=classic] .wx-hero,.tile.weather[data-face=forecast] .wx-hero{padding-right:calc(24px * var(--s))}.wx-icon{display:block;width:100%;height:100%;overflow:visible}.wx-sun{fill:var(--wx-sun)}.wx-moon{fill:var(--wx-moon)}.wx-cloud{fill:var(--wx-cloud)}.wx-cloud-back{fill:var(--wx-cloud-shade)}.wx-rain,.wx-fog,.wx-wind{fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.wx-rain{stroke:var(--wx-rain)}.wx-fog,.wx-wind{stroke:var(--wx-cloud)}.wx-bolt{fill:var(--wx-bolt)}.wx-snow{fill:var(--wx-snow)}.wx-hero{flex:0 0 auto;display:flex;align-items:center;gap:calc(12px * var(--s));min-width:0}.wx-hero-text{flex:1;min-width:0}.wx-place,.wx-condition,.wx-date,.wx-age{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wx-age{font-size:calc(10.5px * var(--s));font-weight:400;opacity:.65;margin-top:calc(3px * var(--s))}.wx-temp{font-variant-numeric:tabular-nums;line-height:1}.tile.weather[data-face=classic] .wx-hero{height:calc(62px * var(--s))}.tile.weather[data-face=classic] .wx-hero-icon{flex:0 0 auto;width:calc(44px * var(--s));height:calc(44px * var(--s))}.tile.weather[data-face=classic] .wx-condition{font-size:calc(19px * var(--s))}.tile.weather[data-face=classic] .wx-place{color:var(--muted);font-size:calc(12px * var(--s));margin-top:calc(2px * var(--s))}.tile.weather[data-face=classic] .wx-hero-temps{text-align:right}.tile.weather[data-face=classic] .wx-temp{font-size:calc(28px * var(--s))}.tile.weather[data-face=classic] .wx-hilo{color:var(--muted);font-size:calc(12px * var(--s));margin-top:calc(3px * var(--s));white-space:nowrap}.tile.weather[data-face=forecast] .wx-hero{height:calc(84px * var(--s));align-items:flex-start}.tile.weather[data-face=forecast] .wx-place{font-weight:650;font-size:calc(14px * var(--s))}.tile.weather[data-face=forecast] .wx-temp{font-size:calc(42px * var(--s));font-weight:300;margin-top:calc(4px * var(--s))}.tile.weather[data-face=forecast] .wx-hero-side{flex:0 1 auto;min-width:0;text-align:right;font-size:calc(12.5px * var(--s));font-weight:600}.tile.weather[data-face=forecast] .wx-hero-icon{width:calc(22px * var(--s));height:calc(22px * var(--s));margin:0 0 calc(14px * var(--s)) auto}.tile.weather[data-face=scenic] .wx-hero{height:calc(112px * var(--s));position:relative}.tile.weather[data-face=scenic] .wx-art{position:absolute;right:calc(-34px * var(--s));top:calc(-38px * var(--s));width:calc(136px * var(--s));height:calc(136px * var(--s));pointer-events:none}.tile.weather[data-face=scenic][data-scene=day] .wx-art{border-radius:50%;box-shadow:0 0 0 calc(18px * var(--s)) var(--wx-halo),0 0 0 calc(36px * var(--s)) var(--wx-halo)}.tile.weather[data-face=scenic] .wx-hero-text{position:relative;padding:0 calc(76px * var(--s)) 0 calc(6px * var(--s))}.tile.weather.size-3x2[data-face=scenic] .wx-hero-row{flex-direction:column;align-items:flex-start;gap:calc(4px * var(--s))}.tile.weather.size-3x2[data-face=scenic] .wx-meta{display:flex;gap:calc(8px * var(--s));max-width:100%;padding-left:0;border-left:0}.tile.weather.size-3x2[data-face=scenic] .wx-condition{margin-bottom:calc(4px * var(--s))}.tile.weather.size-3x2[data-face=scenic] .wx-art{width:calc(100px * var(--s));height:calc(100px * var(--s));right:calc(-28px * var(--s));top:calc(-30px * var(--s))}.tile.weather.size-3x2[data-face=scenic] .wx-hero-text{padding-right:calc(66px * var(--s))}.tile.weather.size-3x2[data-face=scenic] .wx-temp{font-size:calc(46px * var(--s))}.tile.weather[data-face=scenic] .wx-condition{font-size:calc(15px * var(--s));margin-bottom:calc(8px * var(--s))}.tile.weather[data-face=scenic] .wx-hero-row{display:flex;align-items:center;gap:calc(14px * var(--s))}.tile.weather[data-face=scenic] .wx-temp{font-size:calc(58px * var(--s));font-weight:300}.tile.weather[data-face=scenic] .wx-meta{min-width:0;padding-left:calc(14px * var(--s));border-left:calc(1px * var(--s)) solid var(--wx-rule);font-size:calc(13px * var(--s));line-height:1.6}.tile.weather[data-face=scenic] .wx-place:before{content:"\2316  "}.tile.weather.size-3x1 .wx-hero{height:auto;flex:1}.tile.weather.size-3x1[data-face=classic] .wx-hero-icon{width:calc(38px * var(--s));height:calc(38px * var(--s))}.tile.weather.size-3x1[data-face=classic] .wx-condition{font-size:calc(16px * var(--s))}.tile.weather.size-3x1[data-face=classic] .wx-temp{font-size:calc(24px * var(--s))}.tile.weather.size-3x1[data-face=classic] .wx-age-label{display:none}.tile.weather.size-3x1[data-face=forecast] .wx-temp{font-size:calc(34px * var(--s));margin-top:calc(2px * var(--s))}.tile.weather.size-3x1[data-face=forecast] .wx-hero-icon{margin-bottom:calc(4px * var(--s))}.tile.weather.size-3x1[data-face=scenic] .wx-art{width:calc(84px * var(--s));height:calc(84px * var(--s));right:calc(-22px * var(--s));top:calc(-24px * var(--s))}.tile.weather.size-3x1[data-face=scenic] .wx-hero-text{padding-right:calc(52px * var(--s))}.tile.weather.size-3x1[data-face=scenic] .wx-condition{font-size:calc(13px * var(--s));margin-bottom:calc(2px * var(--s))}.tile.weather.size-3x1[data-face=scenic] .wx-temp{font-size:calc(38px * var(--s))}.tile.weather.size-3x1[data-face=scenic] .wx-meta{padding-left:calc(10px * var(--s));font-size:calc(12px * var(--s));line-height:1.45}.tile.weather.size-3x1[data-face=scenic][data-scene=day] .wx-art{box-shadow:0 0 0 calc(10px * var(--s)) var(--wx-halo),0 0 0 calc(20px * var(--s)) var(--wx-halo)}.wx-alert{flex:0 0 auto;box-sizing:border-box;height:calc(24px * var(--s));margin-top:calc(2px * var(--s));padding:0 calc(8px * var(--s));display:flex;align-items:center;border-radius:calc(6px * var(--s));background:var(--wx-alert);color:var(--wx-alert-text);font-size:calc(12px * var(--s));font-weight:600;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.wx-hours{flex:0 0 auto;box-sizing:border-box;height:calc(66px * var(--s));display:flex;justify-content:space-between;align-items:center}.wx-hour{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:calc(4px * var(--s))}.wx-hour-time{font-size:calc(11.5px * var(--s));white-space:nowrap;opacity:.85}.wx-hour-icon{width:calc(24px * var(--s));height:calc(24px * var(--s))}.wx-hour-temp{font-size:calc(14px * var(--s));font-variant-numeric:tabular-nums}.wx-days{flex:0 0 auto;padding-top:calc(2px * var(--s))}.wx-day{height:calc(26px * var(--s));display:grid;align-items:center;gap:calc(8px * var(--s));grid-template-columns:calc(40px * var(--s)) calc(20px * var(--s)) calc(30px * var(--s)) 1fr calc(30px * var(--s));font-size:calc(13px * var(--s));font-variant-numeric:tabular-nums}.wx-day-name{font-weight:600}.wx-day-icon{width:calc(20px * var(--s));height:calc(20px * var(--s))}.wx-day-lo{text-align:right;opacity:.7}.wx-day-hi{text-align:left}.wx-track{position:relative;height:calc(5px * var(--s));border-radius:calc(3px * var(--s));background:var(--wx-track)}.tile.weather[data-face=classic] .wx-track{background:var(--hover)}.wx-bar{position:absolute;top:0;bottom:0;border-radius:calc(3px * var(--s))}.wx-details{flex:0 0 auto;box-sizing:border-box;height:calc(24px * var(--s));margin-top:auto;display:flex;align-items:flex-end;font-size:calc(11.5px * var(--s));opacity:.8;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.tile.weather[data-face=classic] .wx-days,.tile.weather[data-face=classic] .wx-details{color:var(--fg)}.tile.clock{padding:calc(10px * var(--s));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(2px * var(--s));color:var(--fg);text-shadow:0 calc(1px * var(--s)) calc(2px * var(--s)) var(--text-shadow)}.clock-time{font-weight:300;line-height:1;white-space:nowrap;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.clock-sec,.clock-period{font-size:.42em;font-weight:400;opacity:.7;letter-spacing:0}.clock-date,.clock-caption{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:calc(18px * var(--s));font-size:calc(12.5px * var(--s));opacity:.75}.clock-dial{display:block;overflow:visible;filter:drop-shadow(0 calc(1px * var(--s)) calc(2px * var(--s)) var(--text-shadow))}.clock-face{fill:var(--clock-dial)}.tile.clock.filled[data-face=digital]{background:var(--clock-bg);text-shadow:none}.tile.clock.light[data-face=digital]{color:var(--glyph-fg-on-light)}.tile.clock.filled .clock-face{fill:var(--clock-bg)}.tile.clock.light .clock-dial{color:var(--glyph-fg-on-light)}.clock-tick{stroke:currentColor;stroke-width:1.2;stroke-linecap:round;opacity:.55}.clock-tick.major{stroke-width:2.4;opacity:.9}.clock-hand{stroke:currentColor;stroke-linecap:round}.clock-hand.hour{stroke-width:4}.clock-hand.minute{stroke-width:2.6}.clock-hand.second{stroke:var(--clock-second);stroke-width:1.2}.clock-pin{fill:var(--clock-second)}.tile.countdown{position:relative;padding:calc(10px * var(--s));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(2px * var(--s));color:var(--fg);text-shadow:0 calc(1px * var(--s)) calc(2px * var(--s)) var(--text-shadow)}.countdown-time{display:flex;flex-wrap:wrap;justify-content:center;gap:.12em .3em;font-weight:300;line-height:1;white-space:nowrap;font-variant-numeric:tabular-nums}.countdown-group{display:flex;flex-direction:column;align-items:center;width:var(--cell)}.countdown-num{padding-bottom:.12em}.countdown-unit{line-height:1.25;font-size:max(.2em,calc(7px * var(--s)));font-weight:500;letter-spacing:.04em;text-transform:uppercase;opacity:.6}.countdown-caption{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:calc(18px * var(--s));font-size:calc(12.5px * var(--s));opacity:.75}.tile.countdown.done .countdown-time{color:var(--accent);animation:countdown-pulse 1.2s ease-in-out infinite}@keyframes countdown-pulse{50%{opacity:.35}}@media(prefers-reduced-motion:reduce){.tile.countdown.done .countdown-time{animation:none}}.countdown-add{position:absolute;left:calc(8px * var(--s));right:calc(8px * var(--s));bottom:calc(5px * var(--s));display:flex;justify-content:center;gap:calc(4px * var(--s));opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s,visibility 0s .15s}.tile.countdown:focus-within .countdown-add{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .15s}@media(hover:hover){.tile.countdown:hover .countdown-add{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .15s}}.countdown-add button{flex:0 1 calc(46px * var(--s));min-width:0;overflow:hidden;white-space:nowrap;font:inherit;font-size:calc(11px * var(--s));font-weight:600;line-height:1.3;text-shadow:none;padding:calc(2px * var(--s)) 0;border:calc(1px * var(--s)) solid var(--panel-border);border-radius:calc(10px * var(--s));background:var(--panel);color:var(--fg);cursor:pointer}@media(hover:hover){.countdown-add button:hover{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}}@media(hover:hover){.countdown-add button:focus-visible{outline:calc(2px * var(--s)) solid var(--accent);outline-offset:calc(1px * var(--s))}}.tile.countdown.filled{background:var(--countdown-bg);text-shadow:none}.tile.countdown.light{color:var(--glyph-fg-on-light)}.countdown-preview{margin:calc(-6px * var(--s)) 0 0;min-height:1.3em;font-size:calc(12px * var(--s))}.countdown-preview.bad{color:var(--danger)}.tile.iframe{--card-bg: transparent}@media(hover:hover){.tile.iframe:hover,.tile.iframe:focus-visible{box-shadow:none}}.iframe-body:not(:has(iframe:not(.checking))){background:var(--iframe)}.tile.iframe.selected{box-shadow:0 0 0 calc(3px * var(--s)) var(--accent)}.iframe-body{position:relative;flex:1;min-height:0;display:flex}.iframe-body{--bleed: calc(2px * var(--s))}.iframe-body iframe{position:absolute;top:calc(-1 * var(--bleed));left:calc(-1 * var(--bleed));width:calc(100% + 2 * var(--bleed));height:calc(100% + 2 * var(--bleed));display:block;border:0;background:none}.iframe-body:has(iframe:not(.checking)):before{content:"";position:absolute;inset:var(--bleed);border-radius:calc(12px * var(--s));background:var(--iframe-page)}.iframe-body iframe.checking{visibility:hidden}.iframe-refused{margin:auto;display:flex;flex-direction:column;align-items:center;gap:calc(10px * var(--s));padding:calc(16px * var(--s))}.iframe-refused .widget-note{margin:0;line-height:1.4}.iframe-refused strong{color:var(--fg);font-weight:600;word-break:break-all}.iframe-open{padding:calc(6px * var(--s)) calc(12px * var(--s));border:0;border-radius:calc(8px * var(--s));background:var(--field);color:var(--fg);font:inherit;font-size:calc(12.5px * var(--s));cursor:pointer}@media(hover:hover){.iframe-open:hover{background:var(--hover)}}@media(hover:hover){.iframe-open:focus-visible{box-shadow:0 0 0 calc(2px * var(--s)) var(--accent);outline:none}}.tile.dragging .iframe-body iframe{pointer-events:none}.iframe-shield{position:absolute;inset:0}.tile.iframe.interact .iframe-shield,.tile.iframe.refused .iframe-shield{display:none}.tile.iframe:not(.interact) .iframe-handle{display:none}.iframe-handle{position:absolute;top:0;left:50%;transform:translate(-50%);z-index:1;width:calc(56px * var(--s));height:calc(14px * var(--s));display:grid;place-items:center;cursor:grab}.iframe-handle:before{content:"";width:calc(28px * var(--s));height:calc(4px * var(--s));border-radius:calc(2px * var(--s));background:var(--iframe-handle);box-shadow:0 0 0 calc(1px * var(--s)) var(--iframe-handle-edge)}.iframe-refresh{position:absolute;top:calc(6px * var(--s));right:calc(6px * var(--s));z-index:1;background:var(--iframe-button);color:var(--fg);opacity:0;transition:opacity .15s}@media(hover:none){.iframe-refresh{opacity:1}}@media(hover:hover){.tile.iframe:hover .iframe-refresh,.tile.iframe:focus-within .iframe-refresh{opacity:1}}@media(hover:hover){.iframe-refresh:hover{background:var(--iframe-button-hover)}}.iframe-refresh.loading{opacity:1}
/*# sourceMappingURL=app.css.map */
