:root{color-scheme:dark;--bg-deep: #0c0c13;--bg: #111119;--bg-sunken: #101017;--surface: #171720;--surface-raised: #1d1d28;--surface-soft: #22222e;--panel: #15151d;--panel-raised: #1b1b25;--panel-hover: #292937;--line: rgba(255, 255, 255, .075);--line-strong: rgba(255, 255, 255, .12);--text: #f5f5fb;--text-strong: #ffffff;--text-soft: #b8b7c7;--muted: #8d8c9f;--accent: #9b87f5;--accent-bright: #b4a5f8;--accent-strong: #7c6cc4;--accent-focus: #c8bdfa;--on-accent: #15151d;--on-accent-bright: #15151d;--fg-rgb: 255, 255, 255;--text-muted: #b5bac1;--hover-bg: rgba(255, 255, 255, .055);--press-bg: rgba(255, 255, 255, .09);--selected-bg: rgba(255, 255, 255, .1);--cyan: #62d6d0;--coral: #ff8a73;--amber: #f4bc69;--green: #5ed7a4;--green-solid: #1a7f43;--on-green-solid: #ffffff;--on-green: #0e2517;--danger: #ff667f;--danger-solid: #d92d4d;--on-danger: #ffffff;--on-amber: #1a1a22;--danger-text: #ff9aaa;--ok-text: #8fe3b0;--warn-text: #f4bc69;--info-text: #7cc4ff;--speaking: #23a55a;--whisper: #a855f7;--cyan-rgb: 98, 214, 208;--green-rgb: 94, 215, 164;--amber-rgb: 244, 188, 105;--speaking-rgb: 35, 165, 90;--whisper-rgb: 168, 85, 247;--badge-info: #1f7ab8;--badge-offline: #8a4040;--on-badge: #ffffff;--brand-glow: rgba(var(--accent-rgb), .45);--brand-accent-2: color-mix(in oklch, var(--accent) 40%, #ff5c8a);--role-ink-mix: 0%;--scrim: rgba(5, 5, 9, .73);--toast-bg: rgba(30, 30, 41, .97);--scrollbar-thumb: rgba(255, 255, 255, .14);--scrollbar-thumb-hover: rgba(255, 255, 255, .24);--video-btn-bg: rgba(10, 10, 16, .62);--accent-preset-violet: #9b87f5;--accent-preset-blue: #5b8def;--accent-preset-cyan: #2bb3c0;--accent-preset-green: #3dbb7f;--accent-preset-amber: #e8b53a;--accent-preset-orange: #f0813e;--accent-preset-rose: #ee5a7a;--accent-preset-magenta: #c06be0;--view-gutter: 14px;--dialog-padding: 22px;--menu-padding: 6px;--row-padding-x: 9px;--control-padding-x: 16px;--rail-width: 72px;--sidebar-w: 256px;--panel-w: 334px;--header-height: 68px;--control-height: 38px;--icon-button-size: 36px;--rail-item-size: 46px;--row-height: 34px;--radius-row: 7px;--radius-sm: 8px;--radius-control: 10px;--radius-menu: 12px;--radius: 13px;--radius-view: 14px;--radius-rail-active: 15px;--radius-lg: 20px;--radius-pill: 999px;--dur-fast: .12s;--dur: .18s;--dur-slow: .26s;--tooltip-delay: .4s;--loop-pulse: 1.2s;--loop-ring: 1.6s;--loop-spin: .9s;--loop-shimmer: 1.4s;--loop-float: 4s;--blur-scrim: 5px;--ease-out: cubic-bezier(.2, .8, .2, 1);--ease-spring: cubic-bezier(.34, 1.36, .64, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-standard: cubic-bezier(.4, 0, .2, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--font-sans: Inter, "Segoe UI Variable", "Segoe UI", system-ui, sans-serif;--font-mono: ui-monospace, Consolas, monospace;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .28);--shadow-md: 0 8px 24px rgba(0, 0, 0, .34), 0 1px 3px rgba(0, 0, 0, .25);--shadow-lg: 0 24px 64px rgba(0, 0, 0, .5), 0 2px 8px rgba(0, 0, 0, .3);--fs-scale: 1;--fs-2xs: calc(10px * var(--fs-scale));--fs-xs: calc(11px * var(--fs-scale));--fs-small: calc(12px * var(--fs-scale));--fs-body: calc(13px * var(--fs-scale));--fs-md: calc(14px * var(--fs-scale));--fs-lg: calc(15px * var(--fs-scale));--fs-xl: calc(16px * var(--fs-scale));--fs-2xl: calc(20px * var(--fs-scale));--focus: var(--accent-focus);--accent-rgb: 155, 135, 245;--surface-rgb: 23, 23, 32;--panel-rgb: 21, 21, 29;--logo-bg: #f5f5fb;--danger-rgb: 255, 102, 127}:root[data-theme=light]{color-scheme:light;--bg-deep: #dfe2ec;--bg: #f3f4f9;--bg-sunken: #eceef6;--surface: #fbfbfe;--surface-raised: #ffffff;--surface-soft: #e9ebf3;--panel: #ffffff;--panel-raised: #ffffff;--panel-hover: #e3e6f0;--line: rgba(24, 24, 50, .12);--line-strong: rgba(24, 24, 50, .22);--text: #1b1b2d;--text-strong: #0c0c1a;--text-soft: #3e3f58;--muted: #5a5b73;--accent: #6d5fac;--accent-bright: #605497;--accent-strong: #594e8d;--accent-focus: #62569b;--accent-rgb: 109, 95, 172;--on-accent: #ffffff;--on-accent-bright: #ffffff;--fg-rgb: 22, 22, 48;--text-muted: #4f5068;--hover-bg: rgba(22, 22, 48, .05);--press-bg: rgba(22, 22, 48, .085);--selected-bg: rgba(22, 22, 48, .09);--cyan: #0b7a76;--coral: #c2410c;--amber: #8f5600;--green: #12724e;--green-solid: #18773f;--on-green: #ffffff;--on-amber: #ffffff;--cyan-rgb: 11, 122, 118;--green-rgb: 18, 114, 78;--amber-rgb: 143, 86, 0;--brand-glow: rgba(var(--accent-rgb), .28);--brand-accent-2: color-mix(in oklch, var(--accent) 50%, #e8457a);--role-ink-mix: 42%;--danger: #c81e45;--danger-solid: #c81e45;--danger-text: #b3153b;--ok-text: #0f6b49;--warn-text: #8a5200;--info-text: #0a58b0;--scrim: rgba(25, 25, 50, .45);--toast-bg: rgba(255, 255, 255, .98);--scrollbar-thumb: rgba(22, 22, 48, .18);--scrollbar-thumb-hover: rgba(22, 22, 48, .3);--shadow-sm: 0 1px 2px rgba(20, 20, 50, .08);--shadow-md: 0 8px 24px rgba(20, 20, 50, .12), 0 1px 3px rgba(20, 20, 50, .08);--shadow-lg: 0 24px 64px rgba(20, 20, 50, .2), 0 2px 8px rgba(20, 20, 50, .1);--danger-rgb: 200, 30, 69;--surface-rgb: 251, 251, 254;--panel-rgb: 255, 255, 255}@media(max-width:1080px){:root{--header-height: 60px}}:root[data-density=compact]{--view-gutter: 10px;--row-height: 28px;--control-height: 34px;--icon-button-size: 32px;--dialog-padding: 18px;--menu-padding: 4px;--row-padding-x: 7px;--control-padding-x: 13px}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg-deep);color:var(--text);font-family:var(--font-sans);font-size:var(--fs-body);line-height:1.4;-webkit-font-smoothing:antialiased;font-synthesis:none}button{font:inherit;color:inherit;border:0;cursor:pointer;background:transparent}button:disabled{cursor:not-allowed;opacity:.48;transform:none!important}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--focus);outline-offset:2px}a{color:inherit;text-decoration:none}input,select,textarea{font:inherit}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-pill);border:3px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover);background-clip:padding-box;border:3px solid transparent}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}.primary-action{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:var(--control-height);padding:9px var(--control-padding-x);border-radius:var(--radius-control);color:var(--on-accent);background:var(--accent);box-shadow:var(--shadow-sm),inset 0 1px #ffffff1f;font-size:var(--fs-body);font-weight:700;letter-spacing:.01em;transition:background var(--dur-fast) var(--ease-standard),box-shadow var(--dur) var(--ease-standard),transform var(--dur-fast) var(--ease-standard),filter var(--dur-fast) var(--ease-standard)}.primary-action:hover:not(:disabled){background:var(--accent-bright);box-shadow:var(--shadow-md),inset 0 1px #ffffff29}.primary-action:active:not(:disabled){transform:translateY(1px) scale(.99);filter:brightness(.95)}.primary-action.danger{color:var(--on-danger);background:var(--danger-solid)}.primary-action.danger:hover:not(:disabled){background:var(--danger-solid);filter:brightness(1.08)}.dialog-cancel{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:var(--control-height);padding:9px var(--control-padding-x);border:1px solid var(--line-strong);border-radius:var(--radius-control);color:var(--text-soft);background:transparent;font-weight:600;transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.dialog-cancel:hover{color:var(--text-strong);background:var(--hover-bg)}.dialog-cancel:active{background:var(--press-bg)}.icon-button{position:relative;display:grid;place-items:center;width:var(--icon-button-size);height:var(--icon-button-size);border-radius:var(--radius-control);color:var(--text-soft);background:transparent;transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard),transform var(--dur) var(--ease-out)}.icon-button:hover{color:var(--text-strong);background:var(--hover-bg)}.icon-button:active{background:var(--press-bg);transform:scale(.94)}.icon-button.active{color:var(--accent-bright);background:rgba(var(--accent-rgb),.12)}.icon-button.danger{color:var(--danger)}.icon-button svg{width:18px;height:18px}.tooltip{position:fixed;top:0;left:0;z-index:90;width:max-content;max-width:min(260px,calc(100vw - 16px));padding:6px 10px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--text);background:var(--panel-raised);box-shadow:var(--shadow-md);font-size:var(--fs-small);font-weight:600;line-height:1.35;pointer-events:none;opacity:0;transform:translateY(-2px);transition:opacity var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.tooltip.show{opacity:1;transform:none}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:calc(24px + var(--safe-t, 0px)) calc(24px + var(--safe-r, 0px)) calc(24px + var(--safe-b, 0px)) calc(24px + var(--safe-l, 0px));background:var(--scrim);-webkit-backdrop-filter:blur(var(--blur-scrim));backdrop-filter:blur(var(--blur-scrim));animation:fade-in var(--dur) var(--ease-out)}.entry-dialog{width:min(470px,100%);display:grid;gap:14px;padding:var(--dialog-padding);border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--panel-raised);box-shadow:var(--shadow-lg);animation:dialog-in var(--dur-slow) var(--ease-out)}.entry-dialog h2{margin:0;color:var(--text-strong);font-size:var(--fs-2xl);font-weight:700;letter-spacing:-.025em}.entry-dialog p{margin:0;color:var(--text-soft);line-height:1.5}.field{display:grid;gap:6px}.field>span{color:var(--text-soft);font-size:var(--fs-small);font-weight:600}.field input{min-height:var(--control-height);padding:0 12px;border:1px solid var(--line-strong);border-radius:var(--radius-control);color:var(--text);background:var(--surface-raised);font:inherit;outline:0;transition:border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard)}.field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.22)}.dialog-actions{display:flex;gap:8px}.dialog-actions>.primary-action{flex:1}.toast-area{position:fixed;left:50%;bottom:calc(22px + var(--safe-b, 0px));z-index:80;transform:translate(-50%);display:grid;gap:8px;justify-items:center;pointer-events:none}.toast{display:inline-flex;align-items:center;gap:9px;max-width:460px;padding:9px 15px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);color:var(--text-soft);background:var(--toast-bg);box-shadow:var(--shadow-lg);font-size:var(--fs-small);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:toast-in var(--dur-slow) var(--ease-spring)}.toast svg{flex:none;width:16px;height:16px;color:var(--green)}.toast.error svg{color:var(--danger)}.toast.info svg{color:var(--info-text)}@keyframes pop-in{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:none}}@keyframes dialog-in{0%{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:none}}@keyframes toast-in{0%{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:none}}@keyframes toast-out{to{opacity:0;transform:translateY(6px) scale(.98)}}@keyframes dialog-out{to{opacity:0;transform:translateY(6px) scale(.98)}}@keyframes fade-out{to{opacity:0}}.toast.undo-toast{pointer-events:auto}.toast.undo-toast button{margin-left:4px;padding:3px 10px;border-radius:var(--radius-pill);color:var(--accent-bright);font-weight:700}.toast.undo-toast button:hover{background:var(--hover-bg)}.toast.leaving{animation:toast-out var(--dur-fast) var(--ease-standard) forwards}.modal-backdrop.closing{pointer-events:none;animation:fade-out var(--dur-fast) var(--ease-standard) forwards}.modal-backdrop.closing :is(.entry-dialog,.quick){animation:dialog-out var(--dur-fast) var(--ease-standard) forwards}@media(prefers-reduced-transparency:reduce){.modal-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none}.toast{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--panel-raised)}}@keyframes badge-pop{0%{opacity:.5;transform:scale(1.5)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes view-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.hub-main{view-transition-name:hub-main}::view-transition-old(root),::view-transition-new(root){animation:none}::view-transition-old(hub-main){animation:vt-out var(--dur-fast) var(--ease-in) both}::view-transition-new(hub-main){animation:vt-in var(--dur) var(--ease-out) both}@keyframes vt-out{to{opacity:0;transform:translateY(-4px)}}@keyframes vt-in{0%{opacity:0;transform:translateY(6px)}}:root[data-vt] .hub-view{animation:none}:root[data-motion=reduced] *,:root[data-motion=reduced] *:before,:root[data-motion=reduced] *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0s!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0s!important}}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}:root{--nav-w: calc(248px + env(safe-area-inset-left, 0px)) ;--on-tile: #15151d}:root{--safe-t: env(safe-area-inset-top, 0px);--safe-r: env(safe-area-inset-right, 0px);--safe-b: env(safe-area-inset-bottom, 0px);--safe-l: env(safe-area-inset-left, 0px)}.hub-root{display:grid;grid-template-columns:var(--nav-w) minmax(0,1fr);height:100vh;height:100dvh;background:var(--bg-deep)}.hub-nav{display:flex;flex-direction:column;gap:4px;padding:calc(20px + var(--safe-t)) 16px calc(20px + var(--safe-b)) calc(16px + var(--safe-l));background:var(--bg-deep);border-right:1px solid var(--line);min-height:0}.hub-brand{display:flex;align-items:center;gap:12px;padding:4px 8px 20px}.hub-brand-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:var(--radius);background:linear-gradient(145deg,var(--accent-strong),var(--accent));color:var(--on-accent);box-shadow:var(--shadow-sm)}.hub-brand-mark svg{width:24px;height:24px}.hub-brand-text{display:grid;gap:1px;line-height:1.1}.hub-brand-text b{color:var(--text-strong);font-size:var(--fs-md);font-weight:800;letter-spacing:.02em}.hub-brand-text span{color:var(--muted);font-size:var(--fs-2xs);font-weight:700;letter-spacing:.14em;text-transform:uppercase}.hub-nav-item{position:relative;display:flex;align-items:center;gap:12px;min-height:44px;padding:0 14px;border-radius:var(--radius-control);color:var(--text-soft);font-size:var(--fs-md);font-weight:600;transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.hub-nav-item svg{flex:none;width:20px;height:20px}.hub-nav-item:hover{color:var(--text-strong);background:var(--hover-bg)}.hub-nav-item:active{background:var(--press-bg)}.hub-nav-item.active{color:var(--on-accent);background:var(--accent);box-shadow:var(--shadow-sm)}.hub-nav-item .nav-badge{margin-left:auto;min-width:20px;padding:1px 6px;border-radius:var(--radius-pill);background:var(--accent);color:var(--on-accent);font-size:var(--fs-xs);font-weight:700;text-align:center}.hub-nav-item.active .nav-badge{background:#00000038;color:var(--on-accent)}.hub-nav-spacer{flex:1 1 auto}.hub-tagline{padding:10px 10px 2px;color:var(--muted);font-size:var(--fs-md);font-weight:700;line-height:1.5;letter-spacing:-.01em}.hub-main{position:relative;isolation:isolate;min-width:0;min-height:0;overflow-y:auto;padding:var(--safe-t) var(--safe-r) var(--safe-b) 0}.hub-view{max-width:1320px;margin:0 auto;padding:calc(var(--view-gutter) + 12px) clamp(calc(var(--view-gutter) + 4px),3vw,40px) 48px;animation:view-in var(--dur-slow) var(--ease-out)}.hub-top{display:flex;flex-wrap:wrap;align-items:flex-start;gap:16px 20px;margin-bottom:26px}.hub-greeting{flex:1 1 280px;min-width:0}.hub-greeting h1{margin:0;color:var(--text-strong);font-size:clamp(22px,2.4vw,30px);font-weight:800;letter-spacing:-.03em}.hub-greeting .greeting-hand{width:.9em;height:.9em;margin-left:.15em;color:var(--amber);vertical-align:-.08em}.inline-ico{width:1em;height:1em;vertical-align:-.15em}.hub-greeting p{margin:4px 0 0;color:var(--muted);font-size:var(--fs-md)}.hub-top-tools{margin-left:auto;display:flex;align-items:center;gap:12px;flex:0 1 auto;min-width:0}.hub-search{display:flex;align-items:center;gap:9px;width:clamp(180px,26vw,340px);height:44px;padding:0 14px;border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--surface-raised);color:var(--muted);transition:border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard)}.hub-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.22)}.hub-search svg{flex:none;width:18px;height:18px}.hub-search input{flex:1;min-width:0;border:0;background:transparent;color:var(--text);outline:0;font-size:var(--fs-md)}.hub-search input::placeholder{color:var(--muted)}.hub-bell{position:relative}.hub-bell .dot{position:absolute;top:5px;right:5px;min-width:16px;height:16px;padding:0 4px;display:grid;place-items:center;border-radius:var(--radius-pill);border:2px solid var(--bg);background:var(--danger-solid);color:var(--on-danger);font-size:var(--fs-2xs);font-weight:700}.hub-user{display:flex;align-items:center;gap:9px;height:44px;padding:0 12px 0 6px;border-radius:var(--radius-pill);background:var(--surface-raised);border:1px solid var(--line);color:var(--text);font-weight:600;transition:background var(--dur-fast) var(--ease-standard)}.hub-user:hover{background:var(--surface-soft)}.hub-user .avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:linear-gradient(145deg,var(--accent-strong),var(--accent));color:var(--on-accent);font-weight:800;font-size:var(--fs-md)}.hub-user svg{width:16px;height:16px;color:var(--muted)}.hub-hero{display:grid;grid-template-columns:minmax(280px,1.25fr) minmax(220px,.95fr) minmax(220px,1fr);gap:16px;margin-bottom:30px}.clock-card{display:flex;flex-direction:column;justify-content:center;padding:6px 4px}.clock-time{font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:-.04em;line-height:.92;color:var(--text-strong);font-size:clamp(64px,9vw,116px)}.clock-time .sep{color:var(--accent);animation:clock-blink var(--loop-pulse) var(--ease-in-out) infinite alternate}.clock-date{margin-top:10px;color:var(--muted);font-size:var(--fs-xl);font-weight:600}@keyframes clock-blink{0%{opacity:1}to{opacity:.35}}.card{border:1px solid var(--line);border-radius:var(--radius-view);background:var(--surface);box-shadow:var(--shadow-sm)}.weather-card{padding:20px;display:flex;flex-direction:column;gap:14px;justify-content:center}.weather-top{display:flex;align-items:center;gap:16px}.weather-top .ico{display:grid;place-items:center;width:54px;height:54px;color:var(--text-soft)}.weather-top .ico svg{width:46px;height:46px}.weather-temp{display:flex;flex-direction:column}.weather-temp b{color:var(--text-strong);font-size:clamp(30px,3.4vw,42px);font-weight:800;letter-spacing:-.03em;line-height:1}.weather-temp span{color:var(--muted);font-size:var(--fs-md);margin-top:3px}.weather-meta{display:flex;flex-wrap:wrap;gap:14px 18px;color:var(--text-soft);font-size:var(--fs-small);font-weight:600}.weather-meta i{display:inline-flex;align-items:center;gap:6px;font-style:normal}.weather-meta svg{width:15px;height:15px;color:var(--muted)}.quote-card{position:relative;overflow:hidden;overflow:clip;padding:22px;display:flex;flex-direction:column;justify-content:center;color:var(--text);isolation:isolate}.quote-card .quote-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:radial-gradient(130% 120% at 85% 15%,rgba(var(--accent-rgb),.34),transparent 55%),linear-gradient(160deg,var(--surface-raised),var(--surface))}.quote-card .quote-ridge{position:absolute;inset:auto 0 0 0;height:58%;z-index:-1;opacity:.5;background:linear-gradient(180deg,transparent,rgba(var(--accent-rgb),.12));clip-path:polygon(0 62%,12% 40%,24% 56%,38% 28%,52% 52%,66% 24%,80% 48%,100% 30%,100% 100%,0 100%)}.quote-card blockquote{margin:0;font-size:var(--fs-xl);font-weight:700;line-height:1.32;letter-spacing:-.01em;color:var(--text-strong)}.quote-card cite{margin-top:12px;font-style:normal;color:var(--muted);font-size:var(--fs-small);font-weight:600}.quote-card cite:before{content:"";display:block;width:46px;height:2px;margin-bottom:8px;background:var(--line-strong)}.section-head{display:flex;align-items:baseline;gap:12px;margin:0 2px 14px}.section-head h2{margin:0;color:var(--text-strong);font-size:var(--fs-2xl);font-weight:700;letter-spacing:-.025em}.section-head p{margin:0;color:var(--muted);font-size:var(--fs-md)}.section-head .link{margin-left:auto;display:inline-flex;align-items:center;gap:5px;color:var(--accent-bright);font-size:var(--fs-md);font-weight:600}.section-head .link:hover{color:var(--accent)}.section-head .link svg{width:16px;height:16px}.app-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr));gap:16px;margin-bottom:30px}.app-tile{position:relative;overflow:hidden;overflow:clip;display:flex;flex-direction:column;padding:18px;border:1px solid var(--line);border-radius:var(--radius-view);background:var(--surface);box-shadow:var(--shadow-sm);transition:transform var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out),border-color var(--dur-fast) var(--ease-standard),opacity var(--dur-fast) var(--ease-standard)}.app-tile:hover{border-color:var(--line-strong);box-shadow:var(--shadow-md)}.app-tile.dragging{opacity:.45}.app-tile.drag-over{border-color:var(--tile, var(--accent));box-shadow:0 0 0 2px var(--tile, var(--accent))}.app-tile .tile-glow{position:absolute;top:-40px;right:-30px;width:190px;height:150px;z-index:0;pointer-events:none;opacity:.5;background:radial-gradient(60% 60% at 70% 30%,rgba(var(--tile-rgb, var(--accent-rgb)),.4),transparent 70%)}.app-tile>*{position:relative;z-index:1}.tile-head{display:flex;align-items:flex-start;gap:13px}.tile-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:var(--radius);background:rgba(var(--tile-rgb, var(--accent-rgb)),.16);color:var(--tile, var(--accent))}.tile-icon svg{width:26px;height:26px}.tile-setup{display:inline-flex;align-items:center;gap:6px;margin-top:-4px;color:var(--tile, var(--accent));font-size:var(--fs-small);font-weight:600;text-decoration:none}.tile-setup:hover{text-decoration:underline}.tile-setup svg{width:14px;height:14px}.tile-badge{align-self:flex-start;min-width:22px;padding:1px 7px;border-radius:var(--radius-pill);background:var(--tile, var(--accent));color:var(--on-tile, var(--on-accent));font-size:var(--fs-xs);font-weight:700;font-variant-numeric:tabular-nums;text-align:center}.tile-grip{margin-left:auto;display:grid;place-items:center;width:30px;height:30px;border-radius:var(--radius-sm);color:var(--muted);cursor:grab;opacity:0;transition:opacity var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.tile-grip:hover{color:var(--text-soft);background:var(--hover-bg)}.tile-grip:active{cursor:grabbing}.app-tile:hover .tile-grip{opacity:1}.tile-grip svg{width:18px;height:18px}.tile-title{margin:14px 0 0;color:var(--text-strong);font-size:var(--fs-xl);font-weight:700;letter-spacing:-.01em}.tile-tagline{margin:3px 0 0;color:var(--muted);font-size:var(--fs-md)}.tile-status{display:flex;align-items:center;gap:16px;margin-top:13px;color:var(--text-soft);font-size:var(--fs-small);font-weight:600}.tile-status i{display:inline-flex;align-items:center;gap:7px;font-style:normal}.tile-status .dot{width:8px;height:8px;border-radius:50%;background:var(--muted)}.tile-status.online .dot{background:var(--green);box-shadow:0 0 0 3px rgba(var(--green-rgb),.18)}.tile-status.offline .dot{background:var(--danger);box-shadow:0 0 0 3px rgba(var(--danger-rgb),.18)}.tile-status.checking .dot{background:var(--amber);animation:pulse-dot var(--loop-pulse) var(--ease-in-out) infinite}.tile-status.unconfigured .dot{background:transparent;box-shadow:inset 0 0 0 2px var(--muted)}.tile-status svg{width:15px;height:15px;color:var(--muted)}.tile-status .tile-chip{padding:2px 8px 2px 6px;border-radius:var(--radius-pill);background:var(--surface-soft);color:var(--text-soft);font-size:var(--fs-xs);gap:5px}.tile-status .tile-chip svg{width:13px;height:13px}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}.tile-detail{width:100%;text-align:left;display:flex;align-items:center;gap:11px;margin-top:15px;padding:11px 13px;border-radius:var(--radius-control);background:var(--surface-raised);border:1px solid var(--line);color:var(--text-soft)}.tile-detail svg{flex:none;width:18px;height:18px;color:var(--tile, var(--accent))}.tile-detail .txt{display:grid;gap:1px;min-width:0}.tile-detail .txt b{color:var(--text-strong);font-size:var(--fs-md);font-weight:600}.tile-detail .txt span{color:var(--muted);font-size:var(--fs-small)}.tile-detail .chev{margin-left:auto;color:var(--muted)}.tile-actions{display:flex;gap:10px;margin-top:16px}.tile-open{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:var(--control-height);border-radius:var(--radius-control);background:var(--tile, var(--accent));color:var(--on-tile);font-weight:700;box-shadow:var(--shadow-sm),inset 0 1px #ffffff24;transition:filter var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard)}.tile-open:hover{filter:brightness(1.08)}.tile-open:active{transform:translateY(1px) scale(.99)}.tile-open svg{width:16px;height:16px}.tile-more{width:var(--control-height);min-height:var(--control-height);display:grid;place-items:center;border-radius:var(--radius-control);border:1px solid var(--line-strong);color:var(--text-soft);transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.tile-more:hover{background:var(--hover-bg);color:var(--text-strong)}.tile-more svg{width:18px;height:18px}.hub-bottom{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:16px}.panel-card{padding:20px}.panel-card .ph{display:flex;align-items:center;gap:11px;margin-bottom:16px}.panel-card .ph .ph-ico{display:grid;place-items:center;width:38px;height:38px;border-radius:var(--radius-control);background:rgba(var(--accent-rgb),.14);color:var(--accent-bright)}.panel-card .ph .ph-ico svg{width:20px;height:20px}.panel-card .ph h3{margin:0;color:var(--text-strong);font-size:var(--fs-xl);font-weight:700}.panel-card .ph p{margin:1px 0 0;color:var(--muted);font-size:var(--fs-small)}.status-row{display:flex;align-items:center;gap:12px;padding:11px 6px;border-top:1px solid var(--line)}.status-row:first-of-type{border-top:0}.status-row .s-ico{display:grid;place-items:center;width:30px;height:30px;border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--text-soft)}.status-row .s-ico svg{width:17px;height:17px}.status-row .s-name{color:var(--text);font-size:var(--fs-md);font-weight:600}.status-row .s-state{margin-left:auto;display:inline-flex;align-items:center;gap:7px;font-size:var(--fs-small);font-weight:700}.status-row .s-state .dot{width:8px;height:8px;border-radius:50%}.status-row .s-state.online{color:var(--ok-text)}.status-row .s-state.online .dot{background:var(--green)}.status-row .s-state.offline{color:var(--danger-text)}.status-row .s-state.offline .dot{background:var(--danger)}.status-row .s-state.checking{color:var(--warn-text)}.status-row .s-state.checking .dot{background:var(--amber);animation:pulse-dot var(--loop-pulse) var(--ease-in-out) infinite}.status-row .s-state.unconfigured{color:var(--muted)}.status-row .s-state.unconfigured .dot{background:transparent;box-shadow:inset 0 0 0 2px var(--muted)}.overview-list{display:grid;gap:2px}.overview-item{display:flex;align-items:center;gap:12px;padding:11px 6px;border-top:1px solid var(--line);color:var(--text-soft);font-size:var(--fs-md)}.overview-item:first-of-type{border-top:0}.overview-item svg{flex:none;width:18px;height:18px;color:var(--muted)}.overview-item b{color:var(--text-strong);font-weight:700}button.link{display:inline-flex;align-items:center;gap:4px;color:var(--accent-bright);font-weight:600}button.link:hover:not(:disabled){color:var(--accent);text-decoration:underline}button.link svg{width:15px;height:15px}.panel-foot{margin-top:14px;display:flex;align-items:center;justify-content:space-between}.panel-ver{color:var(--muted);font-size:var(--fs-xs);font-weight:600}.inline-skeleton{position:relative;overflow:hidden;display:inline-block;height:1em;min-width:3.2em;border-radius:var(--radius-sm);background:var(--surface-soft);vertical-align:-.1em}.inline-skeleton:after{--shimmer: var(--panel-hover)}.inline-skeleton:after,.state-skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,var(--shimmer),transparent);transform:translate(-100%);animation:shimmer var(--loop-shimmer) linear infinite}@keyframes shimmer{to{transform:translate(100%)}}.apps-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:16px}.notif-list{display:grid;gap:10px;max-width:760px}.notif{display:flex;align-items:flex-start;gap:13px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius-view);background:var(--surface);box-shadow:var(--shadow-sm)}.notif .n-ico{display:grid;place-items:center;width:38px;height:38px;border-radius:var(--radius-control);background:var(--surface-raised);color:var(--text-soft);flex:none}.notif.ok .n-ico{color:var(--green);background:rgba(var(--green-rgb),.14)}.notif.warn .n-ico{color:var(--amber);background:rgba(var(--amber-rgb),.14)}.notif.err .n-ico{color:var(--danger);background:rgba(var(--danger-rgb),.14)}.notif .n-ico svg{width:19px;height:19px}.notif .n-body{min-width:0;flex:1}.notif .n-body b{display:block;color:var(--text-strong);font-size:var(--fs-md);font-weight:600}.notif .n-body p{margin:2px 0 0;color:var(--text-soft);font-size:var(--fs-small);line-height:1.45}.notif .n-time{color:var(--muted);font-size:var(--fs-xs);font-weight:600;white-space:nowrap}.settings{max-width:720px;display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.settings-section{padding:18px 20px;border:1px solid var(--line);border-radius:var(--radius-view);background:var(--surface);box-shadow:var(--shadow-sm)}.settings-section>h3{margin:0 0 4px;color:var(--text-strong);font-size:var(--fs-xl);font-weight:700}.settings-section>.hint{margin:0 0 16px;color:var(--muted);font-size:var(--fs-small)}.set-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;padding:14px 0;border-top:1px solid var(--line)}.set-row:first-of-type{border-top:0;padding-top:4px}.set-row .set-label{display:grid;gap:2px}.set-row .set-label b{color:var(--text);font-size:var(--fs-md);font-weight:600}.set-row .set-label span{color:var(--muted);font-size:var(--fs-small)}.set-row .set-control{margin-left:auto}.seg{display:inline-flex;flex-wrap:wrap;max-width:100%;padding:3px;gap:3px;border-radius:var(--radius-control);background:var(--surface-raised);border:1px solid var(--line)}.seg button{padding:7px 14px;border-radius:var(--radius-sm);color:var(--text-soft);font-size:var(--fs-small);font-weight:600;transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.seg button:hover{color:var(--text-strong)}.seg button.on{background:var(--accent);color:var(--on-accent)}.accent-swatches{display:flex;flex-wrap:wrap;gap:10px}.swatch{position:relative;width:34px;height:34px;border-radius:50%;border:2px solid transparent;transition:transform var(--dur-fast) var(--ease-out)}.swatch:hover{transform:scale(1.1)}.swatch.on{border-color:var(--text-strong);box-shadow:0 0 0 3px var(--bg)}.swatch.on:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;width:10px;height:10px;border-radius:50%;background:#fff;box-shadow:0 0 0 1px #00000040}.range{display:flex;align-items:center;gap:12px}.range input[type=range]{width:180px;accent-color:var(--accent)}.range .val{min-width:48px;text-align:right;color:var(--text);font-size:var(--fs-small);font-weight:700;font-variant-numeric:tabular-nums}.switch{position:relative;width:44px;height:26px;border-radius:var(--radius-pill);background:var(--surface-soft);border:1px solid var(--line-strong);transition:background var(--dur-fast) var(--ease-standard);cursor:pointer}.switch.on{background:var(--accent);border-color:transparent}.switch:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:var(--shadow-sm);transition:transform var(--dur) var(--ease-out)}.switch.on:after{transform:translate(18px)}.ctx-wrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70}.context-menu{position:absolute;display:grid;gap:2px;min-width:210px;max-width:280px;padding:var(--menu-padding);border:1px solid var(--line-strong);border-radius:var(--radius-menu);background:var(--panel-raised);box-shadow:var(--shadow-lg);transform-origin:top left;animation:pop-in var(--dur) var(--ease-out)}.context-menu>button{display:flex;align-items:center;gap:9px;width:100%;padding:8px 9px;border-radius:var(--radius-sm);color:var(--text-soft);font-size:var(--fs-body);font-weight:500;text-align:left;transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.context-menu>button svg{flex:none;width:16px;height:16px;color:var(--muted)}.context-menu>button:hover{color:var(--on-accent);background:var(--accent)}.context-menu>button:hover svg{color:inherit}.context-menu>button:focus-visible{outline-offset:-2px}.context-menu hr{width:100%;height:1px;margin:4px 0;border:0;background:var(--line)}.invite-create{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.invite-fresh{display:grid;gap:12px;margin:4px 0 8px;padding:16px;border:1px solid rgba(var(--accent-rgb),.35);border-radius:var(--radius);background:rgba(var(--accent-rgb),.08);animation:pop-in var(--dur) var(--ease-out)}.invite-fresh-head{display:flex;align-items:center;gap:9px;color:var(--text-soft);font-size:var(--fs-small)}.invite-fresh-head>svg{flex:none;width:18px;height:18px;color:var(--green)}.invite-fresh-head b{color:var(--text-strong)}.invite-fresh-head .icon-button{margin-left:auto;width:30px;height:30px}.invite-code{display:block;padding:12px 14px;border-radius:var(--radius-control);background:var(--surface-raised);border:1px solid var(--line-strong);color:var(--text-strong);font-family:var(--font-mono);font-size:calc(20px * var(--fs-scale));font-weight:700;letter-spacing:.12em;text-align:center;-webkit-user-select:all;user-select:all}.invite-actions{display:flex;flex-wrap:wrap;gap:8px}.invite-actions svg{width:16px;height:16px}.invite-note{margin:0;color:var(--muted);font-size:var(--fs-xs);line-height:1.5}.settings-section .list-category{padding:16px 0 6px}.invite-list,.member-list{list-style:none;margin:0;padding:0;display:grid;gap:2px}.invite-row,.member-row{display:flex;align-items:center;gap:12px;min-height:46px;padding:6px 4px;border-top:1px solid var(--line)}.invite-row:first-child,.member-row:first-child{border-top:0}.invite-row-code{color:var(--text-strong);font-family:var(--font-mono);font-size:var(--fs-md);font-weight:600;letter-spacing:.06em;-webkit-user-select:all;user-select:all}.invite-meta{color:var(--muted);font-size:var(--fs-small);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invite-row-actions{margin-left:auto;display:flex;gap:2px}.role-chip{flex:none;padding:2px 8px;border-radius:var(--radius-pill);background:var(--surface-soft);color:var(--text-soft);font-size:var(--fs-xs);font-weight:700}.role-chip.admin{background:rgba(var(--accent-rgb),.16);color:var(--accent-bright)}.member-row .avatar{flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--surface-soft);color:var(--text-soft);font-weight:800}.member-name{display:grid;gap:1px;min-width:0;flex:1 1 auto}.member-name b{color:var(--text);font-size:var(--fs-md);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-name span{color:var(--muted);font-size:var(--fs-small)}.member-row .invite-meta{flex:none}.list-state{display:flex;align-items:center;gap:10px;min-height:46px;padding:6px 4px;color:var(--muted);font-size:var(--fs-small)}.list-state svg{flex:none;width:17px;height:17px}.list-state.err{color:var(--danger-text)}.list-state .dialog-cancel{margin-left:auto}.confirm-dialog{width:min(400px,100%)}.confirm-head{display:flex;align-items:center;gap:10px}.confirm-ico{display:grid;place-items:center;width:36px;height:36px;border-radius:var(--radius-control);background:rgba(var(--danger-rgb),.14);color:var(--danger)}.confirm-ico svg{width:19px;height:19px}@media(max-width:720px){.invite-row{flex-wrap:wrap}.member-row .invite-meta{display:none}}@media(max-width:1180px){.hub-hero{grid-template-columns:1fr 1fr}.clock-card{grid-column:1 / -1}.hub-bottom{grid-template-columns:1fr}}@media(max-width:900px){:root{--nav-w: calc(76px + env(safe-area-inset-left, 0px)) }.hub-brand-text,.hub-nav-item span.lbl,.hub-tagline{display:none}.hub-nav-item{justify-content:center;padding:0}.hub-nav-item .nav-badge{position:absolute;top:5px;right:8px;margin:0}.hub-brand{justify-content:center;padding:4px 0 20px}}@media(max-width:720px){.hub-top{flex-wrap:wrap}.hub-top-tools{width:100%;margin-left:0}.hub-top>:not(.hub-greeting):not(.hub-top-tools){order:1}.hub-search{width:100%;flex:1;min-width:0}.hub-hero,.app-grid,.apps-grid{grid-template-columns:1fr}}.hub-menu-btn,.hub-nav-close,.hub-nav-backdrop{display:none}@media(max-width:720px){.hub-root{grid-template-columns:minmax(0,1fr)}.hub-main{padding-left:var(--safe-l)}.hub-menu-btn{display:grid;flex:none}.hub-nav{position:fixed;inset:0 auto 0 0;z-index:55;width:min(280px,84vw);overflow-y:auto;overscroll-behavior:contain;box-shadow:var(--shadow-lg);transform:translate(-100%);visibility:hidden;transition:transform var(--dur-fast) var(--ease-in),visibility 0s linear var(--dur-fast)}.hub-nav.open{transform:none;visibility:visible;transition:transform var(--dur) var(--ease-out)}.hub-nav-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:54;background:var(--scrim);opacity:0;pointer-events:none;transition:opacity var(--dur-fast) var(--ease-out)}.hub-nav-backdrop.on{opacity:1;pointer-events:auto;transition-duration:var(--dur)}:root .hub-root .hub-nav :is(.hub-brand-text){display:grid}:root .hub-root .hub-nav .hub-nav-item span.lbl{display:inline}:root .hub-root .hub-nav .hub-tagline{display:block}:root .hub-root .hub-nav .hub-nav-item{justify-content:flex-start;padding:0 14px}:root .hub-root .hub-nav .hub-nav-item .nav-badge{position:static;margin-left:auto}:root .hub-root .hub-nav .hub-brand{justify-content:flex-start;padding:4px 0 20px 8px}.hub-nav-close{display:grid;margin-left:auto}}@media(max-width:480px){.hub-user{padding:0 5px}.hub-user>span:not(.avatar),.hub-user>svg{display:none}}.auth-screen{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:calc(24px + var(--safe-t, 0px)) calc(24px + var(--safe-r, 0px)) calc(24px + var(--safe-b, 0px)) calc(24px + var(--safe-l, 0px));background:radial-gradient(120% 80% at 50% -10%,rgba(var(--accent-rgb),.18),transparent 60%),var(--bg-deep)}.auth-card{width:min(420px,100%);display:grid;gap:16px;padding:30px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-lg);animation:dialog-in var(--dur-slow) var(--ease-out)}.auth-brand{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.auth-brand .mark{display:grid;place-items:center;width:56px;height:56px;border-radius:var(--radius);background:linear-gradient(145deg,var(--accent-strong),var(--accent));color:var(--on-accent);box-shadow:var(--shadow-md)}.auth-brand .mark svg{width:32px;height:32px}.auth-brand h1{margin:0;color:var(--text-strong);font-size:var(--fs-2xl);font-weight:800;letter-spacing:-.02em}.auth-brand p{margin:0;color:var(--muted);font-size:var(--fs-md)}.auth-form{display:grid;gap:13px}.auth-error{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:var(--radius-control);background:rgba(var(--danger-rgb),.12);color:var(--danger-text);font-size:var(--fs-small);font-weight:600}.auth-error svg{flex:none;width:16px;height:16px}.auth-field{display:grid;gap:6px}.auth-field>span{color:var(--text-soft);font-size:var(--fs-small);font-weight:600}.auth-input{position:relative;display:flex;align-items:center}.auth-input input{width:100%;min-height:42px;padding:0 12px;border:1px solid var(--line-strong);border-radius:var(--radius-control);color:var(--text);background:var(--surface-raised);outline:0;font-size:var(--fs-md);transition:border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard)}.auth-input input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.22)}.auth-input .peek{position:absolute;right:4px;width:34px;height:34px}.auth-input input[type=password],.auth-input input.has-peek{padding-right:42px}.auth-submit{margin-top:4px;width:100%;min-height:44px;font-size:var(--fs-md)}.auth-alt{text-align:center;color:var(--muted);font-size:var(--fs-small)}.auth-alt button{color:var(--accent-bright);font-weight:700}.auth-alt button:hover{color:var(--accent);text-decoration:underline}.auth-hint{color:var(--muted);font-size:var(--fs-xs);line-height:1.5}.hub-bg{position:fixed;inset:0 0 0 var(--nav-w);z-index:-1;pointer-events:none;background:var(--bg)}.hub-bg:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,var(--hub-bg-dim, 0));opacity:0}:root[data-bg=solid] .hub-bg{background:var(--hub-bg-color)}:root[data-bg=gradient] .hub-bg{background:linear-gradient(var(--hub-bg-angle),var(--hub-bg-from),var(--hub-bg-to))}:root[data-bg=image] .hub-bg{background:var(--bg) var(--hub-bg-image) center / cover no-repeat}:root:not([data-bg=default]) .hub-bg:after{opacity:1}.bg-preview{position:relative;height:92px;margin-top:14px;overflow:hidden;overflow:clip;border:1px solid var(--line);border-radius:var(--radius)}.bg-preview .hub-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}:root[data-card=glass] :is(.card,.app-tile,.settings-section,.notif,.edit-bar){background:rgba(var(--surface-rgb),.58);border-color:rgba(var(--fg-rgb),.09);-webkit-backdrop-filter:blur(16px) saturate(1.3);backdrop-filter:blur(16px) saturate(1.3)}:root[data-theme=light][data-card=glass] :is(.card,.app-tile,.settings-section,.notif,.edit-bar){background:rgba(var(--surface-rgb),.8);border-color:rgba(var(--fg-rgb),.1)}:root[data-card=contrast]{--line: var(--line-strong)}:root[data-card=contrast] :is(.card,.app-tile,.settings-section,.notif){background:var(--surface-raised);border-width:1.5px;box-shadow:var(--shadow-md)}@media(prefers-reduced-transparency:reduce){:root[data-card=glass] :is(.card,.app-tile,.settings-section,.notif,.edit-bar){background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none}}:root[data-radius=sharp]{--radius-row: 3px;--radius-sm: 4px;--radius-control: 5px;--radius-menu: 6px;--radius: 6px;--radius-view: 7px;--radius-rail-active: 8px;--radius-lg: 10px}:root[data-radius=round]{--radius-row: 10px;--radius-sm: 11px;--radius-control: 14px;--radius-menu: 16px;--radius: 18px;--radius-view: 22px;--radius-rail-active: 20px;--radius-lg: 26px}:root[data-nav=compact]{--nav-w: calc(76px + env(safe-area-inset-left, 0px)) }:root[data-nav=compact] :is(.hub-brand-text,.hub-nav-item span.lbl,.hub-tagline){display:none}:root[data-nav=compact] .hub-nav-item{justify-content:center;padding:0}:root[data-nav=compact] .hub-nav-item .nav-badge{position:absolute;top:5px;right:8px;margin:0}:root[data-nav=compact] .hub-brand{justify-content:center;padding:4px 0 20px}.home-actions{display:flex;justify-content:flex-end;margin:-12px 0 16px}.customize-btn{min-height:34px;padding:6px 12px;gap:7px;font-size:var(--fs-small)}.customize-btn svg{width:16px;height:16px}.widget-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:calc(var(--view-gutter) + 2px);align-items:stretch}.widget-grid.editing{gap:22px 18px}.widget-cell{min-width:0;display:flex}.widget-cell.size-s{grid-column:span 2}.widget-cell.size-m{grid-column:span 3}.widget-cell.size-l{grid-column:span 4}.widget-cell.size-xl{grid-column:span 6}.widget{position:relative;flex:1;min-width:0;display:flex;flex-direction:column;container-type:inline-size;border-radius:var(--radius-view);transition:opacity var(--dur-fast) var(--ease-standard)}.widget-body{flex:1;min-width:0;display:flex;flex-direction:column}.widget-empty{display:flex;align-items:center;gap:10px;padding:18px;border:1px dashed var(--line-strong);border-radius:var(--radius-view);color:var(--muted);font-size:var(--fs-small)}.widget-empty svg{flex:none;width:18px;height:18px}@media(max-width:1180px){.widget-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.widget-cell.size-s,.widget-cell.size-m{grid-column:span 1}.widget-cell.size-l,.widget-cell.size-xl{grid-column:span 2}}@media(max-width:720px){:root:not([data-wallpaper]) .widget-grid{grid-template-columns:minmax(0,1fr)}:root:not([data-wallpaper]) .widget-cell:is(.size-s,.size-m,.size-l,.size-xl){grid-column:span 1}}.widget-grip.touch{touch-action:none;cursor:grab;width:34px}.widget-cell.lifting .widget{outline:2px solid var(--accent);outline-offset:2px;box-shadow:var(--shadow-lg)}.widget-cell.lifting .widget-grip{cursor:grabbing;color:var(--accent-bright)}.phone-list.editing .widget-cell{transition:transform var(--dur-fast) var(--ease-out)}.phone-hidden{padding:14px 16px}.phone-hidden h3{display:flex;align-items:center;gap:8px;margin:0 0 8px;color:var(--text-strong);font-size:var(--fs-md)}.phone-hidden h3 svg{width:16px;height:16px;color:var(--muted)}.phone-hidden ul{display:grid;gap:6px;margin:0;padding:0;list-style:none}.phone-hidden li{display:flex;align-items:center;gap:9px;color:var(--text)}.phone-hidden li>svg{width:16px;height:16px;color:var(--muted)}.phone-hidden li .dialog-cancel{margin-left:auto;min-height:32px;padding:4px 10px;font-size:var(--fs-small)}.phone-hidden li .dialog-cancel svg{width:15px;height:15px}.widget .clock-time{font-size:clamp(44px,24cqi,116px)}.widget .with-seconds .clock-time{font-size:clamp(40px,20cqi,104px)}.clock-sec{margin-left:.06em;color:var(--text-soft);font-size:.42em;vertical-align:.9em;letter-spacing:-.02em}.clock-ampm{margin-left:.25em;color:var(--muted);font-size:.26em;font-weight:700;letter-spacing:.02em;vertical-align:.3em}.apps-widget .app-grid{margin-bottom:0}.apps-widget .section-head{margin-top:4px}.muted-text{margin:0;color:var(--muted);font-size:var(--fs-small)}.note-card .ph{align-items:center}.note-c-none{--note: var(--line-strong)}.note-c-yellow{--note: var(--amber)}.note-c-green{--note: var(--green)}.note-c-blue{--note: var(--accent-preset-blue)}.note-c-violet{--note: var(--accent-preset-violet)}.note-c-pink{--note: var(--accent-preset-rose)}.note-c-orange{--note: var(--accent-preset-orange)}.note-actions{display:flex;gap:2px;margin-left:auto}.note-card .ph>.icon-button:last-child{margin-left:auto}.note-card .note-actions+.icon-button{margin-left:0}.note-text{display:grid;gap:2px;margin:0;color:var(--text);font-size:var(--fs-md);line-height:1.5;overflow-wrap:anywhere}.note-text p,.note-text h4{margin:0;white-space:pre-wrap}.note-text h4{margin-top:4px;color:var(--text-strong);font-size:1.08em;font-weight:700}.note-text h4:first-child{margin-top:0}.note-text b{color:var(--text-strong)}.note-text a{color:var(--accent-bright);text-decoration:underline;text-underline-offset:2px}.note-gap{height:.45em}.note-bullet{position:relative;padding-left:1.1em}.note-bullet:before{content:"";position:absolute;left:.3em;top:.68em;width:5px;height:5px;border-radius:50%;background:var(--muted)}.note-check{display:flex;align-items:flex-start;gap:8px;width:100%;padding:1px 0;border:0;background:none;color:inherit;font:inherit;line-height:inherit;text-align:left}button.note-check{cursor:pointer}.note-check>i{flex:none;display:grid;place-items:center;width:1.05em;height:1.05em;margin-top:.22em;border:1.5px solid var(--muted);border-radius:4px;transition:background var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard)}.note-check>i svg{width:.8em;height:.8em;stroke-width:3}.note-check.done>i{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.note-check.done>span{color:var(--muted);text-decoration:line-through}button.note-check:hover>i{border-color:var(--accent)}.note-more{color:var(--muted);font-size:var(--fs-xs)}.note-legacy{margin:0;white-space:pre-wrap}.note-search{width:100%;min-height:34px;margin-bottom:8px;padding:0 10px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-raised);color:var(--text);font:inherit;outline:0}.note-search:focus{border-color:var(--accent)}.note-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(150px,100%),1fr));gap:8px;max-height:460px;margin:0;padding:0 2px 2px 0;overflow:auto;list-style:none}.note-tile{display:flex;flex-direction:column;gap:6px;width:100%;height:100%;min-height:84px;padding:10px 10px 8px;overflow:hidden;border:1px solid var(--line);border-left:3px solid var(--note);border-radius:var(--radius-control);background:color-mix(in srgb,var(--note) 12%,var(--surface-raised));color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard)}.note-c-none.note-tile{background:var(--surface-raised)}.note-tile:hover{border-color:var(--line-strong)}.note-tile:active{transform:scale(.98)}.note-tile>b{overflow:hidden;color:var(--text-strong);white-space:nowrap;text-overflow:ellipsis}.note-tile .note-text{max-height:7.5em;overflow:hidden;font-size:var(--fs-small);-webkit-mask-image:linear-gradient(#000 75%,transparent);mask-image:linear-gradient(#000 75%,transparent)}.note-thumb{display:block;width:100%;height:70px;border-radius:var(--radius-sm)}.note-single .note-thumb{height:140px;margin-top:6px}.note-tile-foot{display:flex;align-items:center;gap:6px;margin-top:auto;color:var(--muted);font-size:var(--fs-2xs);font-variant-numeric:tabular-nums}.note-tile-foot svg{width:12px;height:12px}.note-tile-foot .ok{color:var(--ok-text)}.note-tile-foot time{margin-left:auto}.note-single{padding:2px;border-radius:var(--radius-sm);cursor:text}.note-single:not(.note-c-none){padding:8px 10px;border-left:3px solid var(--note);background:color-mix(in srgb,var(--note) 10%,transparent)}.note-single[role=button]:hover{background:var(--hover-bg)}.note-trash-link{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;margin-top:8px;padding:2px 0;border:0;background:none;color:var(--muted);font:inherit;font-size:var(--fs-xs);cursor:pointer}.note-trash-link:hover{color:var(--text-strong)}.note-trash-link svg{width:13px;height:13px}.note-trash{display:grid;gap:6px;margin:0;padding:0;list-style:none}.note-trash li{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}.note-trash li>span{display:grid;flex:1;min-width:0}.note-trash b{overflow:hidden;color:var(--text-strong);white-space:nowrap;text-overflow:ellipsis}.note-trash i{color:var(--muted);font-size:var(--fs-xs);font-style:normal}.note-backdrop{padding:0}.note-sheet{display:flex;flex-direction:column;width:min(900px,calc(100vw - 48px));height:min(860px,calc(100dvh - 48px));overflow:hidden;outline:0;border:1px solid var(--line-strong);border-top:3px solid var(--note);border-radius:var(--radius-lg);background:var(--panel-raised);box-shadow:var(--shadow-lg);animation:dialog-in var(--dur-slow) var(--ease-out);transition:width var(--dur) var(--ease-standard),height var(--dur) var(--ease-standard)}.note-c-none.note-sheet{border-top-color:var(--line-strong)}.note-sheet.big{width:100vw;height:100dvh;border-radius:0}.modal-backdrop.closing .note-sheet{animation:dialog-out var(--dur-fast) var(--ease-standard) forwards}.note-bar{display:flex;align-items:center;gap:4px;padding:calc(8px + var(--safe-t, 0px)) 10px 8px;border-bottom:1px solid var(--line)}.note-title{flex:1;min-width:0;height:38px;padding:0 8px;border:0;border-radius:var(--radius-control);background:transparent;color:var(--text-strong);font:inherit;font-size:var(--fs-lg);font-weight:700;outline:0}.note-title:focus{background:var(--surface-raised)}.note-save{display:inline-flex;align-items:center;gap:5px;padding:0 6px;color:var(--muted);font-size:var(--fs-xs);white-space:nowrap}.note-save svg{width:14px;height:14px}.note-save.s-saving svg{animation:spin var(--loop-spin) linear infinite}.note-save.s-error{color:var(--danger-text)}.note-save.s-dirty svg{opacity:.5}.note-retry{min-height:30px;padding:4px 10px;font-size:var(--fs-xs)}.note-bar .icon-button.on,.note-format .icon-button.on,.ink-tools .icon-button.on{color:var(--accent-bright);background:rgba(var(--accent-rgb),.14)}.note-menu{display:grid;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line);background:var(--surface-soft);animation:pop-in var(--dur) var(--ease-out)}.note-menu .hint{display:flex;align-items:center;gap:6px;margin:0}.note-menu .hint svg{width:14px;height:14px}.note-menu .dialog-cancel{justify-self:start}.note-colors{display:flex;flex-wrap:wrap;gap:8px}.note-swatch{width:28px;height:28px;border:2px solid var(--line-strong);border-radius:50%;background:color-mix(in srgb,var(--note) 70%,var(--surface-raised));cursor:pointer}.note-swatch.note-c-none{background:linear-gradient(135deg,transparent 45%,var(--muted) 45% 55%,transparent 55%),var(--surface-raised)}.note-swatch.on{border-color:var(--text-strong);box-shadow:0 0 0 2px var(--panel-raised),0 0 0 4px var(--accent)}.note-conflict{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--amber) 14%,var(--panel-raised));color:var(--text-strong)}.note-conflict>svg{width:18px;height:18px;color:var(--amber)}.note-conflict>span{flex:1;min-width:12em}.note-conflict :is(.dialog-cancel,.primary-action){min-height:32px;padding:4px 12px;font-size:var(--fs-small)}.note-modes{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border-bottom:1px solid var(--line)}.note-format{display:flex;gap:2px}.note-body{position:relative;flex:1;min-height:0;display:flex;flex-direction:column}.note-area{flex:1;width:100%;min-height:0;padding:16px 18px calc(16px + var(--safe-b, 0px));border:0;background:transparent;color:var(--text);font:inherit;font-size:var(--fs-lg);line-height:1.6;resize:none;outline:0}.note-area::placeholder{color:var(--muted)}.note-count{position:absolute;right:14px;bottom:calc(8px + var(--safe-b, 0px))}.note-preview{flex:1;overflow:auto;padding:16px 18px calc(16px + var(--safe-b, 0px))}.note-preview .note-text{font-size:var(--fs-lg)}.note-loading{padding:18px}@media(max-width:720px){.note-sheet,.note-sheet.big{width:100vw;height:100dvh;border:0;border-top:3px solid var(--note);border-radius:0}.note-big{display:none}.note-save>span{display:none}}.ink{flex:1;min-height:0;display:flex;flex-direction:column}.ink-tools{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:8px 10px;border-bottom:1px solid var(--line)}.ink-group{display:flex;align-items:center;gap:2px}.ink-colors{gap:6px}.ink-color{width:24px;height:24px;border:2px solid var(--line-strong);border-radius:50%;background:var(--ink);cursor:pointer}.ink-color.on{box-shadow:0 0 0 2px var(--panel-raised),0 0 0 4px var(--accent)}.ink-size i{display:block;border-radius:50%;background:currentColor}.ink-paper{flex:1;min-height:0;display:grid;place-items:center;padding:12px 12px calc(12px + var(--safe-b, 0px));background:var(--surface-soft)}.ink-board{display:block;max-width:100%;max-height:100%;width:auto;height:100%;aspect-ratio:1000 / 1400;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel-raised);box-shadow:var(--shadow-md);touch-action:none;cursor:crosshair}.ink-board.tool-eraser{cursor:cell}.ink-view{display:block;width:100%}.link-list{list-style:none;margin:0;padding:0;display:grid;gap:2px}.link-list a{display:flex;align-items:center;gap:11px;padding:9px 8px;border-radius:var(--radius-row);color:var(--text-soft);transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.link-list a:hover{background:var(--hover-bg);color:var(--text-strong)}.link-list a>svg{flex:none;width:17px;height:17px;color:var(--muted)}.link-list a span{display:grid;min-width:0;flex:1}.link-list a b{color:var(--text);font-size:var(--fs-md);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-list a i{color:var(--muted);font-size:var(--fs-xs);font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-list a .ext{opacity:0;transition:opacity var(--dur-fast) var(--ease-standard)}.link-list a:hover .ext,.link-list a:focus-visible .ext{opacity:1}.tile-status .tile-chip.custom,.tile-status.custom .tile-chip{background:rgba(var(--tile-rgb, var(--accent-rgb)),.14);color:var(--text-soft)}.edit-bar{position:sticky;top:10px;z-index:20;display:flex;flex-wrap:wrap;align-items:center;gap:8px;width:100%;padding:10px 12px;border:1px solid rgba(var(--accent-rgb),.45);border-radius:var(--radius);background:var(--panel-raised);box-shadow:var(--shadow-lg);animation:pop-in var(--dur) var(--ease-out)}.edit-bar-hint{display:inline-flex;align-items:center;gap:8px;flex:1 1 260px;color:var(--text-soft);font-size:var(--fs-small);font-weight:600}.edit-bar-hint svg{flex:none;width:17px;height:17px;color:var(--accent-bright)}.edit-bar :is(.dialog-cancel,.primary-action){min-height:34px;padding:6px 12px;font-size:var(--fs-small)}.edit-bar svg{width:16px;height:16px}.save-state{color:var(--muted);font-size:var(--fs-xs);font-weight:700}.save-state.error{color:var(--danger-text)}.save-state.saving,.save-state.pending{color:var(--warn-text)}.widget.editing{outline:2px dashed rgba(var(--accent-rgb),.55);outline-offset:5px;cursor:grab}.widget.editing:active{cursor:grabbing}.widget.dragging{opacity:.4}.widget.drag-over{outline:2px solid var(--accent)}.widget.editing .widget-body{opacity:.9}.widget-tools{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:8px;padding:5px 6px;border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--panel-raised);box-shadow:var(--shadow-md);cursor:default;animation:pop-in var(--dur) var(--ease-out)}.widget-tools .icon-button{width:30px;height:30px}.widget-tools .icon-button svg{width:16px;height:16px}.widget-grip{display:grid;place-items:center;width:26px;height:30px;color:var(--muted);cursor:grab}.widget-grip svg{width:17px;height:17px}.widget-name{display:inline-flex;align-items:center;gap:6px;min-width:0;color:var(--text);font-size:var(--fs-small);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.widget-name svg{flex:none;width:15px;height:15px;color:var(--accent-bright)}.widget-tools-spacer{flex:1}.seg.seg-mini{flex-wrap:nowrap;padding:2px;gap:2px}.seg.seg-mini button{padding:4px 8px;font-size:var(--fs-xs);font-weight:700}.home-empty{display:grid;justify-items:center;gap:10px;padding:48px 24px;border:1px dashed var(--line-strong);border-radius:var(--radius-view);text-align:center;color:var(--muted)}.home-empty>svg{width:34px;height:34px;color:var(--accent-bright)}.home-empty h2{margin:0;color:var(--text-strong);font-size:var(--fs-xl)}.home-empty p{margin:0 0 6px;font-size:var(--fs-md)}.entry-dialog{max-height:calc(100dvh - 48px - var(--safe-t, 0px) - var(--safe-b, 0px));overflow:auto;gap:16px;outline:0}.dialog-head{display:flex;align-items:center;gap:10px}.dialog-head h2{flex:1;min-width:0}.dialog-x{width:32px;height:32px;margin:-6px -8px 0 0}.dialog-body{display:grid;gap:14px}.dialog-text{margin:0;color:var(--text-soft);line-height:1.5}.dialog-actions{flex-wrap:wrap;justify-content:flex-end}.dialog-ico{display:grid;place-items:center;width:36px;height:36px;border-radius:var(--radius-control);background:rgba(var(--accent-rgb),.14);color:var(--accent-bright)}.dialog-ico svg{width:19px;height:19px}.dialog-cancel.danger-text{color:var(--danger-text);border-color:rgba(var(--danger-rgb),.4)}.dialog-cancel svg,.set-actions svg{width:16px;height:16px}.widget-options{display:grid;gap:12px}.widget-options .set-row:first-child{border-top:0;padding-top:0}.widget-picker{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.widget-picker button{display:flex;align-items:flex-start;gap:11px;width:100%;height:100%;padding:12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-raised);text-align:left;transition:border-color var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard)}.widget-picker button:hover:not(:disabled){border-color:rgba(var(--accent-rgb),.6);background:rgba(var(--accent-rgb),.07)}.wp-ico{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:var(--radius-control);background:rgba(var(--accent-rgb),.14);color:var(--accent-bright)}.wp-ico svg{width:18px;height:18px}.wp-txt{display:grid;gap:2px;min-width:0;flex:1}.wp-txt b{color:var(--text-strong);font-size:var(--fs-md)}.wp-txt span{color:var(--muted);font-size:var(--fs-small);line-height:1.4}.wp-plus{flex:none;width:16px;height:16px;color:var(--muted);margin-top:2px}.field input,.field textarea{width:100%}.field textarea{min-height:96px;padding:10px 12px;border:1px solid var(--line-strong);border-radius:var(--radius-control);color:var(--text);background:var(--surface-raised);font:inherit;line-height:1.5;resize:vertical;outline:0;transition:border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard)}.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.22)}.field>span{display:flex;justify-content:space-between;gap:8px}.field-count{color:var(--muted);font-style:normal;font-weight:500}.field-error{margin:0;color:var(--danger-text);font-size:var(--fs-small);font-style:normal;font-weight:600}.field.has-error input{border-color:var(--danger)}.two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.set-block{display:grid;gap:10px;padding:14px 0;border-top:1px solid var(--line)}.set-block .hint{margin:0;color:var(--muted);font-size:var(--fs-small)}.set-block-title{display:flex;align-items:center;gap:7px;color:var(--text);font-size:var(--fs-md)}.set-block-title svg{width:16px;height:16px;color:var(--muted)}.set-actions{display:flex;flex-wrap:wrap;gap:8px;padding-top:14px;border-top:1px solid var(--line)}.settings{max-width:780px}.color-picker{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.color-picker .swatch{width:28px;height:28px}.swatch-custom{display:inline-block;cursor:pointer;background:conic-gradient(#ff6b6b,#f4c542,#5ed7a4,#5bc4ef,#9b87f5,#e86bd8,#ff6b6b)}.swatch-custom input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;border:0;padding:0}.icon-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(38px,1fr));gap:6px}.icon-picker button{display:grid;place-items:center;height:38px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-raised);color:var(--text-soft);transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.icon-picker button:hover{color:var(--text-strong);background:var(--hover-bg)}.icon-picker button.on{border-color:var(--accent);background:rgba(var(--accent-rgb),.16);color:var(--accent-bright)}.icon-picker svg{width:18px;height:18px}.app-edit{display:grid;gap:14px}.app-edit-preview{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-raised)}.app-edit-preview .tile-icon{background:color-mix(in srgb,var(--tile) 18%,transparent);color:var(--tile)}.app-edit-preview span:last-child{display:grid;gap:2px;min-width:0}.app-edit-preview b{color:var(--text-strong);font-size:var(--fs-lg)}.app-edit-preview i{color:var(--muted);font-style:normal;font-size:var(--fs-small)}.app-list,.widget-list{list-style:none;margin:4px 0 0;padding:0;display:grid}.app-list-row,.widget-list-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;min-height:54px;padding:8px 2px;border-top:1px solid var(--line)}.app-list-row:first-child,.widget-list-row:first-child{border-top:0}.app-list-row.is-hidden :is(.tile-icon,.al-name){opacity:.5}.tile-icon.small{width:36px;height:36px;border-radius:var(--radius-control)}.tile-icon.small svg{width:19px;height:19px}.al-name,.wl-name{display:grid;gap:1px;min-width:0;flex:1 1 160px}.al-name b,.wl-name b{color:var(--text);font-size:var(--fs-md);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.al-name span,.wl-name span{color:var(--muted);font-size:var(--fs-small);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wl-ico{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:var(--radius-control);background:rgba(var(--accent-rgb),.12);color:var(--accent-bright)}.wl-ico svg{width:18px;height:18px}.wl-actions{display:flex;gap:2px}.wl-actions .icon-button{width:32px;height:32px}.wl-actions .icon-button svg{width:16px;height:16px}.widget-list-row .seg button{padding:5px 9px;font-size:var(--fs-xs);font-weight:700}.location-picker{display:grid;gap:10px}.location-current{display:flex;align-items:center;gap:7px;color:var(--text-soft);font-size:var(--fs-small)}.location-current svg{width:15px;height:15px;color:var(--accent-bright)}.location-current b{color:var(--text-strong)}.location-search{display:flex;gap:8px}.location-search input{flex:1;min-width:0;min-height:var(--control-height);padding:0 12px;border:1px solid var(--line-strong);border-radius:var(--radius-control);color:var(--text);background:var(--surface-raised);outline:0}.location-search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.22)}.location-results{list-style:none;margin:0;padding:4px;display:grid;gap:2px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-raised)}.location-results button{display:grid;width:100%;padding:8px 10px;border-radius:var(--radius-sm);text-align:left}.location-results button:hover{background:var(--accent);color:var(--on-accent)}.location-results button:hover span{color:inherit}.location-results b{font-size:var(--fs-md)}.location-results span{color:var(--muted);font-size:var(--fs-xs)}.links-editor{display:grid;gap:10px}.links-editor-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto;gap:8px;align-items:end}.links-editor-row .icon-button{margin-bottom:1px}@media(max-width:720px){.two-col,.links-editor-row,.widget-picker{grid-template-columns:minmax(0,1fr)}.hub-bg{left:0}}@container (max-width: 430px){.widget-name{font-size:0;gap:0}.widget-tools{gap:2px}.seg.seg-mini button{padding:4px 6px}}.site-logo{display:block;width:100%;height:100%;object-fit:contain;border-radius:calc(var(--radius-sm) / 2)}.tile-icon.has-logo{padding:9px;background:var(--logo-bg);box-shadow:inset 0 0 0 1px #0000000f}.tile-icon.small.has-logo{padding:6px}.apps-widget,.apps-host{container:apps / inline-size}.app-grid,.apps-grid{--app-cols: 1;display:grid;grid-template-columns:repeat(var(--app-cols),minmax(0,1fr));grid-auto-flow:row dense;gap:16px}@container apps (min-width: 330px){.app-grid,.apps-grid{--app-cols: 2}}@container apps (min-width: 500px){.app-grid,.apps-grid{--app-cols: 3}}@container apps (min-width: 660px){.app-grid,.apps-grid{--app-cols: 4}}@container apps (min-width: 830px){.app-grid,.apps-grid{--app-cols: 5}}@container apps (min-width: 990px){.app-grid,.apps-grid{--app-cols: 6}}@container apps (min-width: 1300px){.app-grid,.apps-grid{--app-cols: 8}}.app-tile{grid-column:span 1;min-width:0}.app-tile.size-xl{grid-column:1 / -1}@container apps (min-width: 330px){.app-tile.size-m,.app-tile.size-l{grid-column:span 2}}@container apps (min-width: 500px){.app-tile.size-l{grid-column:span 3}}.app-tile.size-s{padding:14px}.app-tile.size-s .tile-head{align-items:center;gap:10px}.app-tile.size-s .tile-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;min-width:0;margin:0;font-size:var(--fs-md);line-height:1.25;overflow:hidden;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word}.app-tile.size-s .tile-title .status-dot{display:inline-block;margin-left:6px;vertical-align:.1em}.app-tile.size-s .tile-glow{width:120px;height:100px;top:-30px;right:-30px}.app-tile.size-s .tile-bottom .tile-actions{margin-top:12px}.app-tile.size-s .tile-open{min-height:34px;font-size:var(--fs-small)}.app-tile.size-s .tile-more{width:34px;min-height:34px}.status-dot{flex:none;width:8px;height:8px;border-radius:50%;background:var(--muted)}.status-dot.online{background:var(--green)}.status-dot.offline{background:var(--danger)}.status-dot.checking{background:var(--amber)}.status-dot.unconfigured{background:transparent;box-shadow:inset 0 0 0 2px var(--muted)}.app-tile:is(.size-l,.size-xl) .tile-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;margin-top:15px}.app-tile:is(.size-l,.size-xl) .tile-detail{margin-top:0}.app-tile:is(.size-l,.size-xl) .tile-actions{margin-top:0}.app-tile:is(.size-l,.size-xl) .tile-open{flex:0 0 auto;padding:0 22px}@container apps (max-width: 499px){.app-tile:is(.size-l,.size-xl) .tile-bottom{display:block}.app-tile:is(.size-l,.size-xl) .tile-actions{margin-top:12px}.app-tile:is(.size-l,.size-xl) .tile-open{flex:1}}.context-menu .menu-label{padding:4px 9px 2px;color:var(--muted);font-size:var(--fs-2xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.app-list-row .seg button{padding:5px 9px;font-size:var(--fs-xs);font-weight:700}.links-card{container:links / inline-size}.link-grid{--link-cols: 2;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--link-cols),minmax(0,1fr));grid-auto-flow:row dense;gap:8px}@container links (min-width: 380px){.link-grid{--link-cols: 4}}@container links (min-width: 620px){.link-grid{--link-cols: 6}}@container links (min-width: 900px){.link-grid{--link-cols: 8}}.link-item{grid-column:span 1;min-width:0}.link-item.size-m,.link-item.size-l{grid-column:span 2}.link-item a{display:flex;align-items:center;gap:10px;height:100%;min-width:0;border-radius:var(--radius-control);color:var(--text-soft);transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard)}.link-item a:hover{color:var(--text-strong);background:var(--hover-bg)}.link-logo{display:grid;place-items:center;flex:none;width:26px;height:26px;border-radius:var(--radius-sm);color:var(--muted);overflow:hidden}.link-logo:has(img){padding:3px;background:var(--logo-bg)}.link-logo svg{width:17px;height:17px}.link-logo.small{width:32px;height:32px}.link-txt{display:grid;min-width:0;flex:1}.link-txt b{color:var(--text);font-size:var(--fs-md);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-txt i{color:var(--muted);font-size:var(--fs-xs);font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-item .ext{flex:none;width:15px;height:15px;color:var(--muted);opacity:0;transition:opacity var(--dur-fast) var(--ease-standard)}.link-item a:hover .ext,.link-item a:focus-visible .ext{opacity:1}.link-item.size-s a{gap:7px;padding:6px 10px 6px 6px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-raised)}.link-item.size-s .link-logo{width:22px;height:22px;border-radius:50%}.link-item.size-s .link-txt b{font-size:var(--fs-small)}.link-item.size-m a{padding:8px}.link-item.size-l a{flex-direction:column;justify-content:center;gap:8px;padding:16px 10px;border:1px solid var(--line);background:var(--surface-raised);text-align:center}.link-item.size-l .link-logo{width:48px;height:48px;border-radius:var(--radius)}.link-item.size-l .link-logo:has(img){padding:6px}.link-item.size-l .link-logo svg{width:26px;height:26px}.link-item.size-l .link-txt{flex:none;width:100%;justify-items:center}.links-editor-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 10px;padding:10px;border:1px solid var(--line);border-radius:var(--radius)}.links-editor-item>.link-logo{margin-top:24px}.links-editor-item .links-editor-row{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr)}.links-editor-tools{grid-column:2;display:flex;flex-wrap:wrap;align-items:center;gap:4px}.links-editor-tools .seg button{padding:4px 9px;font-size:var(--fs-xs);font-weight:700}.links-editor-tools .icon-button{width:32px;height:32px}.links-editor-tools .icon-button svg{width:16px;height:16px}.app-tile.size-s,.link-item.size-s{align-self:start}.app-tile.size-s .tile-grip{position:absolute;top:6px;right:6px;width:24px;height:24px}.app-tile.size-s .tile-grip svg{width:15px;height:15px}.hub-view.home-free{max-width:none;padding:18px 16px 16px}.hub-top>.customize-btn{align-self:center}.edit-bar .seg button{padding:5px 11px;font-size:var(--fs-small);font-weight:700}.edit-bar-switch{display:inline-flex;align-items:center;gap:8px;color:var(--text-soft);font-size:var(--fs-small);font-weight:600}.free-canvas{position:relative;min-height:calc(100dvh - 200px)}.free-canvas.editing{border-radius:var(--radius);outline:1px dashed var(--line-strong);outline-offset:6px}.free-canvas.snap{background-image:radial-gradient(circle,rgba(var(--accent-rgb),.3) 1px,transparent 1.6px);background-size:16px 16px;background-position:-8px -8px}.free-item{position:absolute;display:flex;min-width:0;min-height:0}.free-item.measuring{height:auto!important}.free-item>.widget{flex:1;min-height:0}.free-item .widget-body{min-height:0;overflow:auto;scrollbar-width:thin}.free-item.measuring .widget-body{overflow:visible}.free-item.editing{touch-action:none;outline:0}.free-item.editing>.widget.editing{outline-offset:2px}.free-item.editing:focus-visible>.widget.editing{outline:2px solid var(--focus)}.free-item.dragging>.widget{box-shadow:var(--shadow-lg);cursor:grabbing}.free-item.dragging>.widget.editing{outline:2px solid var(--accent)}.free-item .widget-tools{position:absolute;top:6px;left:6px;right:6px;z-index:3;margin:0;flex-wrap:nowrap;overflow:hidden}@container (max-width: 300px){.free-item .widget-name{display:none}}.rs-handle{position:absolute;z-index:4;touch-action:none}.rs-handle.n,.rs-handle.s{left:12px;right:12px;height:10px;cursor:ns-resize}.rs-handle.e,.rs-handle.w{top:12px;bottom:12px;width:10px;cursor:ew-resize}.rs-handle.n{top:-5px}.rs-handle.s{bottom:-5px}.rs-handle.e{right:-5px}.rs-handle.w{left:-5px}.rs-handle:is(.ne,.nw,.se,.sw){width:16px;height:16px}.rs-handle:is(.ne,.nw,.se,.sw):after{content:"";position:absolute;top:4px;right:4px;bottom:4px;left:4px;border:2px solid var(--accent);border-radius:50%;background:var(--panel-raised)}.rs-handle.ne{top:-8px;right:-8px;cursor:nesw-resize}.rs-handle.sw{bottom:-8px;left:-8px;cursor:nesw-resize}.rs-handle.nw{top:-8px;left:-8px;cursor:nwse-resize}.rs-handle.se{bottom:-8px;right:-8px;cursor:nwse-resize}.rs-handle:is(.n,.s,.e,.w):after{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:var(--radius-pill);background:var(--accent);opacity:0;transition:opacity var(--dur-fast) var(--ease-standard)}.rs-handle:is(.n,.s,.e,.w):hover:after{opacity:.7}.free-stack{display:grid;gap:16px}.free-stack-item{display:flex;min-width:0}.free-hint{display:flex;align-items:flex-start;gap:8px;margin:0;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);color:var(--text-soft);font-size:var(--fs-small)}.free-hint svg{flex:none;width:16px;height:16px;margin-top:2px;color:var(--accent-bright)}.search-card{display:flex;align-items:center;gap:10px;padding:14px}.search-card input{flex:1;min-width:0;height:46px;padding:0 14px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface-raised);color:var(--text);font-size:var(--fs-md);outline:0;transition:border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard)}.search-card input::placeholder{color:var(--muted)}.search-card input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.22)}.search-card input::-webkit-search-cancel-button{cursor:pointer}.search-logo{display:grid;place-items:center;flex:none;width:40px;height:40px;padding:7px;border-radius:var(--radius-control);background:var(--logo-bg);color:var(--accent-bright)}.search-logo:not(:has(img)){background:rgba(var(--accent-rgb),.14)}.search-logo svg{width:20px;height:20px}.search-go{display:grid;place-items:center;flex:none;width:42px;height:42px;border:0;border-radius:50%;background:var(--accent);color:var(--on-accent);cursor:pointer;transition:opacity var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard)}.search-go:disabled{opacity:.4;cursor:default}.search-go:not(:disabled):hover{transform:scale(1.05)}.search-go svg{width:18px;height:18px}@container (max-width: 260px){.search-logo{display:none}}.link-groups{display:grid;gap:14px}.link-group{display:grid;gap:8px;min-width:0}.link-group-title{display:flex;align-items:center;gap:7px;margin:0;color:var(--muted);font-size:var(--fs-xs);font-weight:700;letter-spacing:.05em;text-transform:uppercase}.link-group-title svg{width:13px;height:13px;color:var(--accent-bright)}.links-editor-item .links-editor-row{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) minmax(0,.9fr)}@media(max-width:720px){.links-editor-item .links-editor-row{grid-template-columns:minmax(0,1fr)}}.widget-fit{display:flex;flex-direction:column;flex:1;min-width:0;container:widget / inline-size}.widget-fit.fixed{flex:none}.widget-fit>:is(.card,.clock-card,.apps-widget){flex:1}.widget-fit.measuring,.free-item.measuring .widget-fit{height:auto!important}.widget-body.measuring{overflow:hidden}.widget-fit .weather-temp b{font-size:clamp(28px,11cqi,46px)}.widget-fit .quote-card blockquote{font-size:clamp(15px,5.4cqi,30px)}.widget-fit .note-text{font-size:clamp(14px,3.8cqi,19px)}@container widget (max-width: 300px){.panel-card{padding:14px}.panel-card .ph{gap:8px;margin-bottom:10px}.panel-card .ph p{display:none}.panel-card .ph .ph-ico{width:30px;height:30px}.panel-card .ph .ph-ico svg{width:16px;height:16px}.panel-card .ph h3{font-size:var(--fs-lg)}.status-row,.overview-item{gap:9px;padding:8px 2px}.status-row .s-state{font-size:var(--fs-xs)}.weather-card{padding:14px;gap:10px}}@container widget (max-width: 260px){.weather-top{gap:10px}.weather-top .ico{width:36px;height:36px}.weather-top .ico svg{width:32px;height:32px}.weather-meta{display:none}}@container widget (max-width: 240px){.quote-card{padding:14px}.quote-card cite:before{display:none}}@container widget (max-width: 220px){.panel-card .ph .ph-ico,.status-row .s-ico{display:none}.status-row .s-state{font-size:0;gap:0}}@container widget (min-width: 520px){.weather-card{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:28px}.weather-meta{display:grid;grid-template-columns:repeat(2,max-content);justify-content:end;gap:10px 24px}.search-card input{height:54px;font-size:var(--fs-lg)}.search-logo{width:48px;height:48px;padding:9px}.search-go{width:50px;height:50px}.search-go svg{width:21px;height:21px}}@container widget (min-width: 620px){.status-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;align-content:start}.status-card>:is(.ph,.panel-foot){grid-column:1 / -1}.status-card>.status-row:is(:nth-of-type(2),:nth-of-type(3)){border-top:0}.overview-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.overview-item{border-top:0;padding:12px;border-radius:var(--radius-control);background:var(--surface-raised)}}:root[data-wallpaper]{--nav-w: 0px}.wall-dim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:45;pointer-events:none;background:#000;opacity:0;transition:opacity var(--dur-night, 60s) linear}.wall-dim.on{opacity:var(--wall-dim, .5)}.hub-wallpaper .hub-view{transform:translate(var(--wall-shift-x, 0px),var(--wall-shift-y, 0px));transition:transform calc(var(--dur-slow) * 8) var(--ease-in-out)}.hub-wallpaper{height:100vh;height:100dvh;background:var(--bg-deep);scrollbar-width:none}.hub-wallpaper::-webkit-scrollbar{display:none}.hub-view.wallpaper{max-width:none;padding:16px}.hub-view.wallpaper .free-canvas{min-height:calc(100dvh - 32px)}.wallpaper-hint{display:grid;gap:8px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.wallpaper-hint h4{display:flex;align-items:center;gap:8px;margin:0;color:var(--text-strong);font-size:var(--fs-md)}.wallpaper-hint h4 svg{width:17px;height:17px;color:var(--accent-bright)}.wallpaper-hint .hint{margin:0}.wallpaper-link{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.wallpaper-link code{flex:1 1 220px;min-width:0;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-raised);color:var(--text);font-size:var(--fs-small);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.wallpaper-link :is(.dialog-cancel){display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:6px 12px;font-size:var(--fs-small);text-decoration:none}.wallpaper-link svg{width:15px;height:15px}.tile-status.limited .dot,.status-dot.limited{background:var(--amber);box-shadow:0 0 0 3px rgba(var(--amber-rgb),.18)}.status-row .s-state.limited{color:var(--warn-text)}.status-row .s-state.limited .dot{background:var(--amber)}.lights-card .ph{position:relative}.lights-card .ph>div:nth-child(2){flex:1;min-width:0}.lights-open{flex:none;width:32px;height:32px;color:var(--muted)}.lights-open svg{width:16px;height:16px}.lights-note{display:flex;align-items:flex-start;gap:9px;margin:0;padding:10px 12px;border-radius:var(--radius-control);background:var(--surface-raised);color:var(--text-soft);font-size:var(--fs-small);line-height:1.45}.lights-note svg{flex:none;width:16px;height:16px;margin-top:1px;color:var(--muted)}.lights-note.small{margin-top:10px;padding:6px 10px;font-size:var(--fs-xs)}.light-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.light-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 12px;padding:9px 10px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-raised);transition:border-color var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard)}.light-row.on{border-color:color-mix(in srgb,var(--lamp) 45%,var(--line));background:color-mix(in srgb,var(--lamp) 9%,var(--surface-raised))}.light-row.unreachable{opacity:.6}.light-ico{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--surface-soft);color:var(--muted);transition:background var(--dur-slow) var(--ease-standard),color var(--dur-slow) var(--ease-standard),box-shadow var(--dur-slow) var(--ease-standard)}.light-ico svg{width:17px;height:17px}.light-row.on .light-ico{background:color-mix(in srgb,var(--lamp) calc(55% + 45% * var(--lamp-level, 1)),var(--surface-soft));color:#1a1a22;box-shadow:0 0 calc(6px + 14px * var(--lamp-level, 1)) color-mix(in srgb,var(--lamp) calc(20% + 45% * var(--lamp-level, 1)),transparent)}.light-name{display:grid;min-width:0}.light-name b{color:var(--text);font-size:var(--fs-md);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.light-name i{color:var(--muted);font-size:var(--fs-xs);font-style:normal}.light-slider{grid-column:1 / -1;width:100%;height:6px;margin:4px 0 2px;-moz-appearance:none;appearance:none;-webkit-appearance:none;border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--lamp) var(--level),var(--surface-soft) var(--level));cursor:pointer}.light-slider::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border:2px solid var(--surface);border-radius:50%;background:var(--lamp);box-shadow:var(--shadow-sm)}.light-slider::-moz-range-thumb{width:16px;height:16px;border:2px solid var(--surface);border-radius:50%;background:var(--lamp)}.light-slider:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.light-scenes{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.light-scene{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-raised);color:var(--text-soft);font-size:var(--fs-small);font-weight:600;cursor:pointer;transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.light-scene:hover:not(:disabled){background:var(--hover-bg);color:var(--text-strong)}.light-scene:disabled{opacity:.55;cursor:default}.light-scene svg{width:14px;height:14px;color:var(--accent-bright)}@container widget (min-width: 560px){.light-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.light-picked{list-style:none;margin:4px 0 0;padding:0;display:grid;gap:4px}.light-picked li{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:8px;padding:6px 8px;border:1px solid var(--line);border-radius:var(--radius-control)}.light-picked li>svg{width:16px;height:16px;color:var(--accent-bright)}.light-picked span{display:grid;min-width:0}.light-picked b{color:var(--text);font-size:var(--fs-small);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.light-picked i{color:var(--muted);font-size:var(--fs-xs);font-style:normal}.light-picked .icon-button{width:30px;height:30px}.light-picked .icon-button svg{width:15px;height:15px}.light-pick-section h4{margin:10px 0 6px;color:var(--muted);font-size:var(--fs-xs);font-weight:700;letter-spacing:.05em;text-transform:uppercase}.light-pick-list{display:flex;flex-wrap:wrap;gap:6px}.light-pick{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface-raised);color:var(--text-soft);font-size:var(--fs-small);cursor:pointer}.light-pick:hover:not(:disabled){border-color:var(--accent);color:var(--text-strong)}.light-pick.added{border-color:rgba(var(--accent-rgb),.5);color:var(--accent-bright);cursor:default}.light-pick:disabled:not(.added){opacity:.5;cursor:default}.light-pick svg{width:14px;height:14px}.light-row.pending .light-name i{color:var(--text-soft)}.light-row.pending .light-ico{animation:pulse-dot var(--loop-pulse) var(--ease-in-out) infinite}.light-open{display:flex;align-items:center;gap:12px;min-width:0;padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left}button.light-open{cursor:pointer;border-radius:var(--radius-sm)}button.light-open:hover .light-name b{color:var(--text-strong);text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:3px}button.light-open:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.light-list.compact{gap:4px}.light-list.compact .light-row{padding:6px 8px}.light-list.compact .light-ico{width:28px;height:28px}.device-row .light-ico svg{width:16px;height:16px}.device-row.on .light-ico{background:rgba(var(--accent-rgb),.2);color:var(--accent-bright)}.light-dialog-ico.on{background:var(--lamp);color:#1a1a22;box-shadow:0 0 16px color-mix(in srgb,var(--lamp) 55%,transparent)}.light-panel{display:grid;gap:16px}.light-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-raised)}.light-panel-head span{display:grid;min-width:0}.light-panel-head b{color:var(--text);font-size:var(--fs-small)}.light-panel-head i{color:var(--muted);font-size:var(--fs-xs);font-style:normal}.light-field{display:grid;gap:8px}.light-field>span{display:flex;align-items:center;gap:8px;color:var(--text-soft);font-size:var(--fs-small);font-weight:700}.light-field>span svg{width:15px;height:15px;color:var(--muted)}.light-field>span em{margin-left:auto;color:var(--muted);font-style:normal;font-weight:600}.light-field .light-slider{margin:2px 0}.light-slider.temp{background:linear-gradient(90deg,#ffb86b,#fff4e0 50%,#cfe3ff)}.light-slider.neutral{--lamp: var(--accent)}.light-colors{display:flex;flex-wrap:wrap;gap:8px}.light-color{position:relative;display:grid;place-items:center;width:32px;height:32px;padding:0;border:2px solid var(--line-strong);border-radius:50%;cursor:pointer;transition:transform var(--dur-fast) var(--ease-standard)}.light-color:hover{transform:scale(1.08)}.light-color.on{border-color:var(--text-strong);box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--text-strong)}.light-color.custom{background:conic-gradient(#ff3b30,#fc0,#34c759,#00c7be,#0a84ff,#af52de,#ff3b30);color:#fff}.light-color.custom svg{width:14px;height:14px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.6))}.light-color.custom input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.light-timer-buttons{display:flex;flex-wrap:wrap;gap:6px}.light-chip{padding:7px 12px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface-raised);color:var(--text-soft);font-size:var(--fs-small);font-weight:600;cursor:pointer}.light-chip:hover:not(:disabled){border-color:var(--accent);color:var(--text-strong)}.light-chip.on{border-color:var(--accent);background:rgba(var(--accent-rgb),.16);color:var(--accent-bright)}.light-chip:disabled{opacity:.55;cursor:default}.light-timers{list-style:none;margin:0;padding:0;display:grid;gap:4px}.light-timers li{display:flex;align-items:center;gap:10px;padding:7px 8px 7px 12px;border:1px solid var(--line);border-radius:var(--radius-control);color:var(--text-soft);font-size:var(--fs-small)}.light-timers li>svg{flex:none;width:15px;height:15px;color:var(--accent-bright)}.light-timers li span{flex:1;min-width:0}.light-timers b{color:var(--text-strong);font-variant-numeric:tabular-nums}.light-timers .icon-button{width:30px;height:30px}.device-stepper{display:flex;align-items:center;gap:14px}.device-stepper b{min-width:76px;color:var(--text-strong);font-size:var(--fs-xl);font-variant-numeric:tabular-nums;text-align:center}.plan-wrap{display:grid;place-items:center;min-height:0}.plan{display:block;width:100%;height:auto;max-height:100%;overflow:visible;user-select:none;-webkit-user-select:none;touch-action:manipulation}.plan-wrap.big .plan{max-height:min(62vh,640px)}.plan-room rect{fill:var(--surface-raised);stroke:var(--line-strong);stroke-width:.08;transition:fill var(--dur) var(--ease-standard)}.plan-room.linked{cursor:pointer}.plan-room.linked:hover rect{stroke:var(--accent)}.plan-room.on rect{fill:color-mix(in srgb,var(--lamp) 16%,var(--surface-raised));stroke:color-mix(in srgb,var(--lamp) 55%,var(--line-strong))}.plan-room.pending rect{animation:pulse-dot var(--loop-pulse) var(--ease-in-out) infinite}.plan-room-label{fill:var(--muted);font-size:.6px;font-weight:700;pointer-events:none}.plan-label{fill:var(--text-soft);font-size:.48px;font-weight:600;text-anchor:middle;pointer-events:none}.plan-lamp{cursor:pointer}.plan-dot{fill:var(--surface-soft);stroke:var(--muted);stroke-width:.12;transition:fill var(--dur-fast) var(--ease-standard)}.plan-lamp.on .plan-dot{fill:currentColor;stroke:#ffffffb3}.plan-lamp.off .plan-dot{stroke-dasharray:.25 .2;opacity:.6}.plan-lamp.pending .plan-dot{animation:pulse-dot var(--loop-pulse) var(--ease-in-out) infinite}.plan-hit{fill:transparent}.plan-glow{pointer-events:none}.plan-lamp:hover .plan-dot,.plan-lamp:focus-visible .plan-dot{stroke:var(--focus);stroke-width:.18}.plan-ring{fill:none;stroke:var(--line-strong);stroke-width:.28;transition:stroke var(--dur) var(--ease-standard)}.plan-wreath-core{cursor:pointer}.plan-core{fill:var(--surface-soft);stroke:var(--line-strong);stroke-width:.1;transition:fill var(--dur) var(--ease-standard)}.plan-wreath-core.on .plan-core{fill:color-mix(in srgb,currentColor 18%,var(--surface-soft));stroke:currentColor}.plan-wreath-core.pending .plan-core{animation:pulse-dot var(--loop-pulse) var(--ease-in-out) infinite}.plan-wreath-core:hover .plan-core,.plan-wreath-core:focus-visible .plan-core{stroke:var(--focus);stroke-width:.16}.plan-core-label{fill:var(--text-strong);font-weight:700;text-anchor:middle;pointer-events:none}.plan-strand>g{cursor:pointer}.plan-strand-line{fill:none;stroke:var(--line-strong);stroke-width:.28;stroke-linecap:round;stroke-linejoin:round;transition:stroke var(--dur) var(--ease-standard)}.plan-strand-hit{fill:none;stroke:transparent;stroke-width:1.4;stroke-linecap:round}.plan-strand-tag rect{fill:var(--surface-soft);stroke:var(--line-strong);stroke-width:.1;transition:fill var(--dur) var(--ease-standard)}.plan-strand.on .plan-strand-tag rect{fill:color-mix(in srgb,currentColor 18%,var(--surface-soft));stroke:currentColor}.plan-strand.pending .plan-strand-tag rect{animation:pulse-dot var(--loop-pulse) var(--ease-in-out) infinite}.plan-strand>g:hover :is(rect,.plan-strand-line),.plan-strand>g:focus-visible :is(rect,.plan-strand-line){stroke:var(--focus)}.plan-device{cursor:pointer;color:var(--text-soft)}.plan-device rect{fill:var(--surface-soft);stroke:var(--line-strong);stroke-width:.08}.plan-device.on{color:var(--accent-bright)}.plan-device.on rect{fill:rgba(var(--accent-rgb),.2);stroke:var(--accent)}.plan-device.off{opacity:.55}.plan :is(.plan-room.linked,.plan-lamp,.plan-device,.plan-wreath-core,.plan-strand>g):focus{outline:none}.plan :is(.plan-room.linked,.plan-device):focus-visible rect{stroke:var(--focus);stroke-width:.18}.plan-floors{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:8px}.plan-floors button{padding:5px 11px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-raised);color:var(--text-soft);font-size:var(--fs-small);font-weight:600;cursor:pointer}.plan-floors button.on{border-color:var(--accent);background:rgba(var(--accent-rgb),.16);color:var(--accent-bright)}.plan-hint{margin:8px 0 0;color:var(--muted);font-size:var(--fs-xs);text-align:center}.plan-card{display:flex;flex-direction:column}.plan-card .plan-wrap{flex:1;min-height:0}.widget-fit.fixed .plan-card .plan{height:100%}@container widget (max-width: 300px){.plan-hint{display:none}}.hub-top>.lights-open{align-self:center}.light-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:16px;align-items:start}.light-section.wide{grid-column:1 / -1}.light-section .light-list.lamps{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr))}.hub-view.light-view{max-width:none}@container widget (max-width: 460px){.plan-card:not(.fit) .plan-wrap{overflow-x:auto;justify-items:start;scrollbar-width:thin}.plan-card:not(.fit) .plan{min-width:520px}}.widget-fit.fixed:has(>.plan-card.fit){container:widget plan / size}.free-item.measuring .widget-fit:has(>.plan-card.fit),.widget-fit.measuring:has(>.plan-card.fit){container-type:inline-size}.plan-card.bare{padding:10px}.plan-card.bare .plan-floors{justify-content:center}@container plan (max-height: 260px){.plan-card.fit{padding:12px}.plan-card.fit .ph{margin-bottom:8px}.plan-card.fit .ph p,.plan-card.fit .plan-hint{display:none}.plan-card.fit .ph .ph-ico{width:28px;height:28px}.plan-card.fit .ph h3{font-size:var(--fs-md)}}@container plan (max-height: 170px){.plan-card.fit{padding:6px}.plan-card.fit .ph{display:none}.plan-card.fit .plan-floors{margin-bottom:4px}.plan-card.fit .plan-floors button{padding:2px 8px;font-size:var(--fs-xs)}}@container plan (max-height: 140px){.plan-card.fit .plan-floors{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.plan-card.fit .plan-floors button{flex:none}}@container plan (max-width: 200px){.plan-card.fit{padding:6px}.plan-card.fit .ph{display:none}}@media(max-width:720px){:root:not([data-wallpaper]) .plan-card .plan-wrap,.plan-wrap.big{overflow-x:visible;justify-items:center}:root:not([data-wallpaper]) .plan-card .plan,.plan-wrap.big .plan{min-width:0;width:100%;max-height:70vh}}.notify-steps{margin:0;padding-left:22px;display:grid;gap:6px;color:var(--text-soft);font-size:var(--fs-small)}.notify-steps svg{width:14px;height:14px;vertical-align:-2px}.notify-app-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.notify-topics,.notify-devices{list-style:none;margin:0;padding:0;display:grid;gap:2px}.notify-topics li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 0 6px 23px;color:var(--text-soft);font-size:var(--fs-small)}.notify-topics li.off{opacity:.55}.notify-devices li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 8px 7px 12px;border:1px solid var(--line);border-radius:var(--radius-control)}.notify-devices li span{display:grid;min-width:0}.notify-devices b{color:var(--text);font-size:var(--fs-small);font-weight:600}.notify-devices i{color:var(--muted);font-size:var(--fs-xs);font-style:normal}.notify-devices .icon-button{width:32px;height:32px}.notify-devices li.paused b{color:var(--muted)}.notify-device-actions{display:flex!important;align-items:center;gap:4px;flex:none}.notify-device-actions .switch{margin-right:6px}.notify-app-head .role-chip{margin-left:2px}.notify-app>.hint{padding-left:23px}.notify-topics li>span{min-width:0}.notify-topics .seg{flex:none}.notify-topics .seg button{padding:5px 10px;font-size:var(--fs-xs)}.notify-quiet{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:var(--fs-small)}.notify-quiet input[type=time]{min-height:34px;padding:0 8px;border:1px solid var(--line-strong);border-radius:var(--radius-control);color:var(--text);background:var(--surface-raised);font:inherit;color-scheme:dark}.notify-quiet input[type=time]:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.22)}.notify-admin-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.notify-admin-list li{display:flex;align-items:center;gap:10px;padding:8px 8px 8px 12px;border:1px solid var(--line);border-radius:var(--radius-control)}.notify-admin-main{display:grid;gap:1px;min-width:0;flex:1}.notify-admin-main b{display:flex;align-items:center;gap:6px;color:var(--text);font-size:var(--fs-small);font-weight:600}.notify-admin-main b code{color:var(--muted);font-family:var(--font-mono);font-size:var(--fs-xs);font-weight:500}.notify-admin-main i{color:var(--muted);font-size:var(--fs-xs);font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notify-admin-list .invite-row-actions{display:flex;align-items:center;gap:4px;flex:none}.notify-admin-list .icon-button{width:32px;height:32px}.notify-watch-add{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr) auto;gap:10px;align-items:end}.notify-recipients{display:grid;gap:8px;justify-items:end}.notify-people{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.notify-person{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border:1px solid var(--line);border-radius:var(--radius-pill);color:var(--text-soft);font-size:var(--fs-small);cursor:pointer}.notify-person:has(input:checked){border-color:rgba(var(--accent-rgb),.55);color:var(--text-strong);background:rgba(var(--accent-rgb),.1)}.notify-person input{accent-color:var(--accent);margin:0}.dialog-form{display:grid;gap:12px}.notify-token{font-size:var(--fs-small);letter-spacing:0;word-break:break-all}.notify-snippet{margin:0;padding:10px 12px;border-radius:var(--radius-control);background:var(--surface-raised);border:1px solid var(--line);color:var(--text-soft);font-family:var(--font-mono);font-size:var(--fs-xs);white-space:pre-wrap;word-break:break-all}@media(max-width:720px){.notify-topics li{flex-wrap:wrap;padding-left:0}.notify-app>.hint{padding-left:0}.notify-watch-add{grid-template-columns:1fr}.notify-recipients,.notify-people{justify-items:start;justify-content:flex-start}}.notif-head{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:760px;margin:18px 0 10px}.notif-head:first-child{margin-top:0}.notif-head h2{margin:0;color:var(--text-strong);font-size:var(--fs-md);font-weight:700}.notif.app .n-ico{color:var(--accent-bright);background:rgba(var(--accent-rgb),.14)}.notif.app.unread{border-color:rgba(var(--accent-rgb),.45)}.notif .n-body a{display:inline-flex;align-items:center;gap:4px;margin-top:6px;color:var(--accent-bright);font-size:var(--fs-small);font-weight:600;text-decoration:none}.notif .n-body a:hover{text-decoration:underline}.notif .n-body a svg{width:13px;height:13px}.notif .n-app{color:var(--muted);font-size:var(--fs-xs);font-weight:600}.field select{min-height:var(--control-height);width:100%;padding:0 10px;border:1px solid var(--line-strong);border-radius:var(--radius-control);color:var(--text);background:var(--surface-raised);font:inherit;outline:0}.field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.22)}.cal-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.cal-nav{display:flex;align-items:center;gap:6px}.cal-nav h2,.cal-list-title{min-width:10ch;margin:0 6px;white-space:nowrap;color:var(--text-strong);font-size:var(--fs-xl);font-weight:750;text-align:center}.cal-list-title{text-align:left;margin:0}.cal-toolbar-end{display:flex;align-items:center;gap:10px;margin-left:auto}.cal-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,320px);gap:16px;align-items:start}.cal-month{display:grid;overflow:hidden}.cal-wds,.cal-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.cal-wd{padding:10px 10px 8px;color:var(--muted);font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--line)}.cal-wd.weekend{color:color-mix(in srgb,var(--accent-bright) 55%,var(--muted))}.cal-week{grid-template-rows:34px repeat(3,22px) minmax(22px,1fr);row-gap:3px;min-height:128px;border-bottom:1px solid var(--line)}.cal-week:last-child{border-bottom:0}.cal-day{grid-row:1 / -1;position:relative;display:flex;flex-direction:column;min-width:0;padding:6px 6px 0;border-right:1px solid var(--line);cursor:pointer;outline:0;transition:background var(--dur-fast) var(--ease-standard)}.cal-day:nth-child(7){border-right:0}.cal-day.weekend{background:color-mix(in srgb,var(--text) 2.5%,transparent)}.cal-day:hover{background:var(--hover-bg)}.cal-day:focus-visible{box-shadow:inset 0 0 0 2px var(--focus)}.cal-day.other .cal-num{color:var(--muted);opacity:.55}.cal-day.today{background:rgba(var(--accent-rgb),.06)}.cal-day.selected{background:rgba(var(--accent-rgb),.11);box-shadow:inset 0 0 0 1px rgba(var(--accent-rgb),.45)}.cal-day.selected:focus-visible{box-shadow:inset 0 0 0 2px var(--focus)}.cal-num{align-self:flex-start;display:grid;place-items:center;min-width:26px;height:26px;padding:0 5px;border-radius:var(--radius-pill);color:var(--text-soft);font-size:var(--fs-small);font-weight:700;font-variant-numeric:tabular-nums}.cal-day.today .cal-num{color:var(--on-accent);background:var(--accent);box-shadow:0 2px 8px rgba(var(--accent-rgb),.45)}.cal-bar-ev{z-index:1;display:flex;align-items:center;gap:5px;min-width:0;height:22px;margin:0 5px;padding:0 7px;border-radius:var(--radius-row);color:var(--text);font-size:var(--fs-xs);font-weight:600;text-align:left;white-space:nowrap;transition:background var(--dur-fast) var(--ease-standard)}.cal-bar-ev span{overflow:hidden;text-overflow:ellipsis}.cal-bar-ev.bar{color:var(--text-strong);background:color-mix(in srgb,var(--c) 30%,var(--surface));box-shadow:inset 3px 0 0 var(--c)}.cal-bar-ev.bar:hover{background:color-mix(in srgb,var(--c) 44%,var(--surface))}.cal-bar-ev.from-before{margin-left:0;border-top-left-radius:0;border-bottom-left-radius:0;box-shadow:none}.cal-bar-ev.goes-on{margin-right:0;border-top-right-radius:0;border-bottom-right-radius:0}.cal-bar-ev.timed:before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:var(--c)}.cal-bar-ev.timed:hover{background:var(--hover-bg)}.cal-bar-ev i{color:var(--muted);font-style:normal;font-variant-numeric:tabular-nums;flex:none}.cal-more{z-index:1;justify-self:start;align-self:start;margin:0 5px;padding:1px 7px;border-radius:var(--radius-row);color:var(--text-soft);font-size:var(--fs-xs);font-weight:700}.cal-more:hover{color:var(--text-strong);background:var(--hover-bg)}.cal-dots{display:none;gap:3px;justify-content:center}.cal-dot{display:inline-block;width:6px;height:6px;border-radius:50%;flex:none}.cal-dot.big{width:14px;height:14px}.cal-empty{display:grid;justify-items:start;gap:10px}.cal-empty button{display:inline-flex;align-items:center;gap:6px}.cal-empty svg{width:15px;height:15px}.cal-daypanel{position:sticky;top:16px;padding:16px}.cal-parcel{position:absolute;top:5px;right:6px;color:var(--amber);line-height:0}.cal-parcel svg{width:13px;height:13px}.mehl-card{display:grid;gap:10px;margin-bottom:14px;padding:14px 16px}.mehl-card-head{display:flex;align-items:center;gap:8px;color:var(--text-strong)}.mehl-card-head>svg{width:18px;height:18px;color:var(--accent)}.mehl-card-head .pi-state{margin-left:auto}.backup-list summary{cursor:pointer;color:var(--text-strong);font-weight:600;font-size:var(--fs-small)}.backup-list ul{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:4px}.backup-list li{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:12px;align-items:center;font-size:var(--fs-small)}.backup-row-actions{display:inline-flex;gap:2px}.backup-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:var(--fs-small)}.backup-bad{color:var(--danger-text, var(--danger))}@media(max-width:560px){.backup-list li{grid-template-columns:minmax(0,1fr) auto}}.backup-ok{display:inline-flex;align-items:center;gap:4px;color:var(--ok-text)}.backup-ok svg{width:14px;height:14px}.mehl-card-facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px 16px}.invite-reply{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0}.invite-reply a{display:inline-flex;align-items:center;gap:6px;text-decoration:none}.cal-parcels{display:grid;gap:6px;margin:0 0 10px;padding:0;list-style:none}.cal-parcels li{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:var(--radius-control);background:rgba(var(--amber-rgb),.1);color:var(--text-soft);font-size:var(--fs-small)}.cal-parcels li>svg{flex:none;width:15px;height:15px;color:var(--amber)}.cal-parcels li>span{flex:1;min-width:0}.cal-parcels .icon-button{width:28px;height:28px}.cal-daypanel-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.cal-daypanel-head h3,.cal-agenda-day h3{margin:0;color:var(--text-strong);font-size:var(--fs-md);font-weight:700}.cal-agenda{display:grid;gap:18px;max-width:760px}.cal-agenda-day h3{margin-bottom:8px}.cal-events{list-style:none;margin:0;padding:0;display:grid;gap:6px}.cal-events button{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-raised);color:var(--text);text-align:left;transition:border-color var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard)}.cal-events button:hover{border-color:color-mix(in srgb,var(--c) 55%,transparent)}.cal-bar{align-self:stretch;width:4px;min-height:22px;border-radius:calc(var(--radius-row) / 3);background:var(--c);flex:none}.cal-time{min-width:6.4em;color:var(--text-soft);font-size:var(--fs-small);font-variant-numeric:tabular-nums;flex:none}.cal-text{display:grid;min-width:0;flex:1}.cal-text b{overflow:hidden;color:var(--text-strong);font-weight:650;white-space:nowrap;text-overflow:ellipsis}.cal-text i{overflow:hidden;color:var(--muted);font-size:var(--fs-xs);font-style:normal;white-space:nowrap;text-overflow:ellipsis}.cal-flags{display:flex;gap:4px;color:var(--muted);flex:none}.cal-flags svg{width:14px;height:14px}.cal-events.compact{gap:2px}.cal-events.compact button{padding:6px 8px;gap:8px;background:transparent;border-color:transparent}.cal-events.compact button:hover{background:var(--hover-bg);border-color:transparent}.cal-events.compact .cal-time{min-width:5.6em;font-size:var(--fs-xs)}.ph-actions{display:flex;gap:2px;margin-left:auto}.cal-widget .ph>div:nth-child(2){min-width:0}.cal-widget .ph p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-widget-days{display:grid;gap:10px}.cal-widget-day h4{margin:0 0 2px;color:var(--muted);font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em}.cal-mini{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:12px;text-align:center}.cal-mini-wd{color:var(--muted);font-size:10px;font-weight:700}.cal-mini-day{position:relative;display:grid;place-items:center;height:24px;border-radius:var(--radius-sm);color:var(--text-soft);font-size:var(--fs-xs);font-variant-numeric:tabular-nums}.cal-mini-day.other{opacity:.35}.cal-mini-day:not(:disabled){cursor:pointer}.cal-mini-day:not(:disabled):not(.today):hover{background:var(--hover-bg);color:var(--text-strong)}.cal-mini-day:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.cal-title-btn{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--radius-control);color:inherit;font:inherit}.cal-title-btn:not(:disabled):hover{background:var(--hover-bg)}.cal-title-btn svg{width:16px;height:16px;color:var(--muted)}.cal-widget-nav{display:flex;align-items:center;gap:2px;margin:-6px 0 8px}.cal-widget-nav .icon-button{width:30px;height:30px}.cal-widget-nav .icon-button svg{width:16px;height:16px}.cal-widget-nav .cal-title-btn{color:var(--text-strong);font-size:var(--fs-md);font-weight:700}.cal-widget-nav .link{margin-left:auto;font-size:var(--fs-small)}.cal-widget{touch-action:pan-y}.cal-day-btn{padding:0;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit}.cal-day-btn:not(:disabled):hover{color:var(--accent-bright)}.cal-month{touch-action:pan-y}.cal-month-list{padding:16px}.cal-month-list>h3{margin:0 0 10px;color:var(--text-strong);font-size:var(--fs-md)}.cal-month-list .cal-agenda-day+.cal-agenda-day{margin-top:10px}.cal-month-list h4,.cal-search-hit h4{margin:0 0 2px;color:var(--muted);font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em}.cal-search-results{display:grid;gap:8px;margin-top:12px;max-height:min(60vh,520px);overflow-y:auto}.cal-search-h{margin:6px 0 0;color:var(--text-strong);font-size:var(--fs-small)}.dp{display:grid;gap:12px}.dp-year{display:flex;align-items:center;justify-content:center;gap:10px}.dp-year b{min-width:5ch;color:var(--text-strong);font-size:var(--fs-lg);text-align:center;font-variant-numeric:tabular-nums}.dp-months{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.dp-months button{padding:6px 0;border:1px solid var(--line);border-radius:var(--radius-control);color:var(--text-soft);font-size:var(--fs-small);font-weight:600}.dp-months button:hover{background:var(--hover-bg);color:var(--text-strong)}.dp-months button.on{border-color:var(--accent);background:rgba(var(--accent-rgb),.16);color:var(--accent-bright)}.dp-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;text-align:center;touch-action:pan-y}.dp-wd{padding:4px 0;color:var(--muted);font-size:var(--fs-2xs);font-weight:700;text-transform:uppercase}.dp-day{height:36px;border-radius:var(--radius-control);color:var(--text);font-size:var(--fs-small);font-variant-numeric:tabular-nums}.dp-day:hover{background:var(--hover-bg)}.dp-day.other{color:var(--muted);opacity:.6}.dp-day.today{box-shadow:inset 0 0 0 1px var(--accent);color:var(--accent-bright);font-weight:700}.dp-day.on{background:var(--accent);color:var(--on-accent);font-weight:700}.cal-mini-day.today{color:var(--on-accent);background:var(--accent);font-weight:700}.cal-mini-day i{position:absolute;bottom:1px;width:4px;height:4px;border-radius:50%}.cal-form .set-row{padding:0;border:0}.cal-when{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cal-repeat{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(130px,100%),1fr));gap:10px}.cal-every-in{display:flex;align-items:center;gap:8px}.field .cal-every-in input{width:72px}.cal-every-in i{color:var(--text-soft);font-style:normal}.cal-chips{display:flex;flex-wrap:wrap;gap:6px}.cal-chip{padding:6px 11px;border:1px solid var(--line);border-radius:var(--radius-pill);color:var(--text-soft);font-size:var(--fs-small);font-weight:600}.cal-chip.on{border-color:rgba(var(--accent-rgb),.55);color:var(--text-strong);background:rgba(var(--accent-rgb),.12)}.cal-people{justify-content:flex-start}.cal-delete{margin-right:auto;color:var(--danger-text)}.cal-details{display:grid;gap:12px;margin-bottom:14px}.cal-details p{display:flex;gap:10px;margin:0;color:var(--text);line-height:1.45}.cal-details p>svg{width:17px;height:17px;margin-top:2px;color:var(--muted);flex:none}.cal-details i{color:var(--muted);font-style:normal;font-size:var(--fs-small)}.cal-notes span{white-space:pre-wrap}.notify-topic-ctl{display:flex;align-items:center;gap:6px;flex:none}.notify-urgent{color:var(--muted)}.notify-urgent.on{color:var(--danger-text);background:rgba(var(--danger-rgb),.12)}.notif.app.urgent .n-ico{color:var(--danger-text);background:rgba(var(--danger-rgb),.14)}@media(max-width:1100px){.cal-layout{grid-template-columns:minmax(0,1fr)}.cal-daypanel{position:static}}@media(max-width:720px){.cal-week{grid-template-rows:1fr;min-height:54px}.cal-day{align-items:center;gap:4px;padding:5px 2px}.cal-bar-ev,.cal-more{display:none}.cal-dots{display:flex}.cal-wd{padding:8px 0;text-align:center}.cal-nav{width:100%;gap:2px}.cal-nav h2{flex:1;min-width:0;margin:0;font-size:var(--fs-lg)}.cal-nav .dialog-cancel{min-height:0;padding:6px 10px}.cal-num{align-self:center}.cal-toolbar-end{width:100%;justify-content:space-between}.cal-time{min-width:5.2em}}.status-card .status-row:has(.s-hist){flex-wrap:wrap;row-gap:6px}.s-hist{display:flex;align-items:center;gap:8px;flex-basis:100%;padding-left:42px}.s-bars{display:grid;grid-template-columns:repeat(30,minmax(0,1fr));gap:2px;flex:1;height:18px}.s-bars i{border-radius:calc(var(--radius-row) / 3);background:var(--surface-raised)}.s-bars i.ok{background:color-mix(in srgb,var(--green) 75%,transparent)}.s-bars i.warn{background:var(--amber, #f5a524)}.s-bars i.bad{background:var(--danger)}.s-hist-note{margin:0;color:var(--text-soft);font-size:var(--fs-xs)}.s-uptime{min-width:4.4em;color:var(--text-soft);font-size:var(--fs-xs);font-weight:700;font-variant-numeric:tabular-nums;text-align:right}@container widget (max-width: 300px){.s-hist{padding-left:0}}.cal-settings{display:grid;gap:18px}.cal-settings section{display:grid;gap:10px}.cal-settings section+section{padding-top:16px;border-top:1px solid var(--line)}.cal-settings h3{display:flex;align-items:center;gap:8px;margin:0;color:var(--text-strong);font-size:var(--fs-md);font-weight:700}.cal-settings h3 svg{width:17px;height:17px;color:var(--accent-bright)}.cal-settings .hint{margin:0;color:var(--muted);font-size:var(--fs-small);line-height:1.45}.cal-settings .set-row{padding:0;border:0}.cal-settings>section>.dialog-cancel{justify-self:start}.cal-settings-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.cal-feed{display:flex;gap:6px}.cal-feed input{flex:1;min-width:0;min-height:var(--control-height);padding:0 10px;border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--surface-raised);color:var(--text-soft);font:inherit;font-size:var(--fs-small)}.cal-feed-actions{display:flex;flex-wrap:wrap;gap:8px}.cal-feed-actions a.primary-action{display:inline-flex;align-items:center;gap:7px;text-decoration:none}.cal-feed-actions svg,.cal-settings .dialog-cancel svg{width:15px;height:15px}.cal-howto summary{color:var(--accent-bright);font-size:var(--fs-small);font-weight:600;cursor:pointer}.cal-howto ul{margin:8px 0;padding-left:18px;display:grid;gap:6px;color:var(--text-soft);font-size:var(--fs-small);line-height:1.45}.cal-subs{list-style:none;margin:0;padding:0;display:grid;gap:6px}.cal-subs li{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-raised)}.cal-sub-text{display:grid;flex:1;min-width:0}.cal-sub-text b{color:var(--text-strong);font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-sub-text i{color:var(--muted);font-size:var(--fs-xs);font-style:normal}.cal-sub-text i.danger-text{color:var(--danger-text)}.cal-sub-actions{display:flex;gap:2px;flex:none}.cal-sub-form{padding:12px;border:1px solid rgba(var(--accent-rgb),.35);border-radius:var(--radius-control);background:rgba(var(--accent-rgb),.04)}.cal-sub-form .set-row{padding:0;border:0}.cal-sub-form-actions{display:flex;justify-content:flex-end;gap:8px}.cal-rsvp{display:grid;gap:10px;margin-bottom:14px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-raised)}.cal-rsvp-ask{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.cal-rsvp-ask b{color:var(--text-strong)}.cal-rsvp .seg button.on.yes{background:color-mix(in srgb,var(--green) 30%,transparent);color:var(--ok-text)}.cal-rsvp .seg button.on.no{background:rgba(var(--danger-rgb),.18);color:var(--danger-text)}.cal-answers{display:flex;flex-wrap:wrap;gap:6px 14px;color:var(--text-soft);font-size:var(--fs-small)}.cal-answer{display:inline-flex;align-items:center;gap:5px}.cal-answer svg{width:14px;height:14px}.cal-answer.yes svg{color:var(--green)}.cal-answer.no svg{color:var(--danger)}.cal-answer b{color:var(--text-strong)}.cal-form>.cal-answers{padding:8px 10px;border-radius:var(--radius-control);background:var(--surface-raised)}.cal-answers-empty{display:flex;align-items:center;gap:6px;margin:0;font-size:var(--fs-small)}.cal-answers-empty svg{width:14px;height:14px}.cal-yes{display:inline-flex;align-items:center;gap:2px;font-size:var(--fs-xs);font-weight:700;color:var(--ok-text)}.list-card{display:flex;flex-direction:column}.list-add{display:flex;align-items:center;gap:4px;margin-bottom:8px}.list-add input{flex:1;min-width:0;min-height:var(--control-height);padding:0 11px;border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--surface-raised);color:var(--text);font:inherit;outline:0}.list-add input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.2)}.list-new{margin:6px 0 0}.list-task{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(140px,100%),1fr));gap:8px 10px;margin-bottom:10px;padding:10px;border:1px dashed rgba(var(--accent-rgb),.45);border-radius:var(--radius-control)}.list-task .list-rotate{grid-column:1 / -1}.list-task select{min-height:var(--control-height);padding:0 8px;border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--surface-raised);color:var(--text);font:inherit}.list-items{list-style:none;margin:0;padding:0;display:grid;gap:2px}.list-item{display:flex;align-items:center;gap:4px;border-radius:var(--radius-control)}.list-item:hover{background:var(--hover-bg)}.list-item label{display:flex;align-items:flex-start;gap:10px;flex:1;min-width:0;padding:7px 6px;cursor:pointer}.list-item input[type=checkbox]{flex:none;width:18px;height:18px;margin:1px 0 0;accent-color:var(--accent);cursor:pointer}.list-text{display:grid;min-width:0}.list-text>b{color:var(--text);font-weight:600;overflow-wrap:anywhere}.list-text i{display:inline-flex;flex-wrap:wrap;align-items:center;gap:3px;color:var(--muted);font-size:var(--fs-xs);font-style:normal}.list-text i svg{width:11px;height:11px}.list-text i b{color:var(--text-soft)}.list-item.overdue .list-text i{color:var(--danger-text)}.list-item.done .list-text>b{color:var(--muted);text-decoration:line-through}.list-del{opacity:0;width:28px;height:28px;flex:none}.list-del svg{width:14px;height:14px}.list-item:hover .list-del,.list-del:focus-visible{opacity:1}@media(hover:none){.list-del{opacity:.6}}.list-clear{align-self:flex-start;margin-top:8px;color:var(--muted);font-size:var(--fs-xs);font-weight:600}.list-clear:hover{color:var(--text-strong)}.list-empty{margin:4px 0;font-size:var(--fs-small)}.list-manage{display:grid;gap:12px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-control)}.list-manage .set-row{padding:0;border:0}.list-manage>.dialog-cancel{justify-self:start;display:inline-flex;align-items:center;gap:6px}.list-manage>.dialog-cancel svg,.list-new svg{width:15px;height:15px}.list-new .dialog-cancel{display:inline-flex;align-items:center;gap:6px}.weather-warn{margin-top:10px;padding:8px 10px;border-radius:var(--radius-control);background:color-mix(in srgb,var(--amber) 18%,transparent);color:var(--text);font-size:var(--fs-small);line-height:1.35}.weather-warn summary{display:flex;align-items:flex-start;gap:8px;cursor:pointer;list-style:none}.weather-warn summary::-webkit-details-marker{display:none}.weather-warn summary>span{flex:1}.weather-warn summary:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--radius-control)}.weather-warn svg{flex:none;width:16px;height:16px;margin-top:1px;color:var(--amber)}.weather-warn summary>svg:last-child{color:var(--text-soft);transition:transform var(--dur-fast) var(--ease-standard)}.weather-warn[open] summary>svg:last-child{transform:rotate(180deg)}.weather-warn-text{display:grid;gap:4px;margin:6px 0 0 24px}.weather-warn-text p{margin:0;color:var(--text-soft)}.weather-warn.level-3,.weather-warn.level-4{background:rgba(var(--danger-rgb),.16)}.weather-warn.level-3 svg,.weather-warn.level-4 svg{color:var(--danger)}.weather-warn i{color:var(--text-soft);font-style:normal}.briefing-days{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding-left:0}.briefing-days .dialog-cancel{display:inline-flex;align-items:center;gap:6px}.briefing-days .dialog-cancel svg{width:15px;height:15px}.set-block.briefing .set-row{padding-top:0;border-top:0}.plan-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.plan-list li{display:flex;align-items:center;gap:10px;padding:9px 10px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-raised)}.plan-list li>svg{flex:none;width:18px;height:18px;color:var(--accent-bright)}.plan-list li.off{opacity:.6}.plan-text{display:grid;flex:1;min-width:0}.plan-text b{color:var(--text-strong);font-weight:650}.plan-text i{color:var(--muted);font-size:var(--fs-xs);font-style:normal}.homenet-hint{display:inline-flex;align-items:center;gap:5px;margin-left:10px;padding:2px 9px;border-radius:var(--radius-pill);background:rgba(var(--accent-rgb),.12);color:var(--accent-bright);font-size:var(--fs-xs);font-weight:600;white-space:nowrap}.homenet-hint svg{width:12px;height:12px}.cal-file input[type=file]{min-height:var(--control-height);padding:7px 10px;border:1px dashed var(--line-strong);border-radius:var(--radius-control);background:var(--surface-raised);color:var(--text-soft);font:inherit;font-size:var(--fs-small);cursor:pointer}.cal-file input[type=file]::file-selector-button{margin-right:10px;padding:5px 11px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font:inherit;font-weight:600;cursor:pointer}.cal-file .field-count{font-style:normal}.cal-own-remind{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin-top:8px;padding:10px;border:1px dashed rgba(var(--accent-rgb),.45);border-radius:var(--radius-control)}.cal-own-remind .cal-every-in{flex-wrap:wrap}.cal-own-remind input[type=time],.cal-own-remind select{min-height:var(--control-height);padding:0 8px;border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--surface-raised);color:var(--text);font:inherit}.cal-own-remind .hint{flex-basis:100%;color:var(--muted);font-size:var(--fs-xs);font-style:normal}.cal-chip svg{width:13px;height:13px;vertical-align:-2px}.qr-code{display:block;border-radius:var(--radius-sm)}.mfa-setup{display:grid;gap:12px}.mfa-steps{margin:0;padding-left:20px;display:grid;gap:4px;color:var(--text-soft);font-size:var(--fs-small)}.mfa-qr{display:flex;flex-wrap:wrap;align-items:center;gap:16px}.mfa-secret{display:grid;gap:6px;min-width:0}.mfa-secret code{padding:8px 10px;border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--text-strong);font-family:var(--font-mono);font-size:var(--fs-small);letter-spacing:.06em;overflow-wrap:anywhere}.mfa-confirm{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px}.mfa-confirm .field{flex:1;min-width:160px}.mfa-codes ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(120px,100%),1fr));gap:6px}.mfa-codes code{display:block;padding:6px 8px;border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--text-strong);font-family:var(--font-mono);text-align:center;letter-spacing:.06em}.session-list{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:4px}.session-list li{display:flex;align-items:center;gap:10px;padding:7px 8px;border-radius:var(--radius-control)}.session-list li.current{background:rgba(var(--accent-rgb),.08)}.session-list li>svg{flex:none;width:18px;height:18px;color:var(--muted)}.session-list li>span{display:grid;flex:1;min-width:0}.session-list b{color:var(--text);font-weight:600;font-size:var(--fs-small)}.session-list i{color:var(--muted);font-size:var(--fs-xs);font-style:normal}.qr-toolbar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.qr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:14px;align-items:start}.qr-card{display:grid;gap:10px}.qr-card .ph{margin-bottom:0}.qr-card .ph>.icon-button{margin-left:auto}.qr-zoom-btn{justify-self:center;padding:0;border:0;border-radius:var(--radius-control);background:none;cursor:zoom-in;transition:transform var(--dur-fast) var(--ease-standard)}.qr-zoom-btn:hover{transform:scale(1.02)}.qr-zoom-btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.qr-card .qr-code{display:block;padding:6px;background:#fff;border-radius:var(--radius-control)}.qr-placeholder{display:block;width:200px;height:200px;border-radius:var(--radius-control);background:var(--surface-raised)}.qr-missing{margin:0;text-align:center}.qr-link{display:flex;align-items:center;gap:4px;min-width:0}.qr-link a{display:inline-flex;align-items:center;gap:6px;color:var(--accent-bright);font-weight:600;overflow-wrap:anywhere}.qr-link a svg{width:14px;height:14px;flex:none}.qr-edit{display:grid;gap:10px;padding-top:10px;border-top:1px solid var(--line)}.qr-edit-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.qr-zoom-backdrop{background:#000000d1}.qr-zoom{display:grid;justify-items:center;gap:10px;width:min(92vw,78vh,640px);padding:18px;border-radius:var(--radius-lg);background:#fff;color:#111;text-align:center;cursor:zoom-out;outline:0;animation:dialog-in var(--dur-slow) var(--ease-out)}.qr-zoom .qr-code{width:100%;height:auto}.qr-zoom b{font-size:var(--fs-lg)}.qr-zoom span{color:#333;font-size:var(--fs-small);overflow-wrap:anywhere}.qr-zoom .qr-zoom-hint{color:#777;font-size:var(--fs-xs)}.wifi-data{display:grid;gap:2px;margin:0;min-width:0}.wifi-data dt{color:var(--muted);font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em}.wifi-data dd{display:flex;align-items:center;gap:2px;margin:0 0 6px;min-width:0}.wifi-data dd b{color:var(--text-strong);font-weight:650;overflow-wrap:anywhere;margin-right:4px}.wifi-pass{font-family:var(--font-mono);letter-spacing:.04em}.wifi-data .icon-button{width:30px;height:30px;flex:none}.wifi-data .icon-button svg{width:15px;height:15px}.cal-bar-ev>svg{flex:none;width:12px;height:12px}.exp-card{display:flex;flex-direction:column;gap:8px}.exp-card .ph{margin-bottom:6px}.exp-balances{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.exp-balances li{display:grid;padding:6px 10px;border-radius:var(--radius-control);background:var(--surface-raised);min-width:86px}.exp-balances span{color:var(--muted);font-size:var(--fs-xs);font-weight:600}.exp-balances b{color:var(--text-strong);font-variant-numeric:tabular-nums}.exp-balances li.plus b{color:var(--ok-text)}.exp-balances li.minus b{color:var(--danger-text)}.exp-settle .link{display:inline-flex;align-items:center;gap:6px;color:var(--accent-bright);font-size:var(--fs-small);font-weight:600}.exp-settle .link svg{width:15px;height:15px}.exp-settle ul{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:4px}.exp-settle li{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:var(--fs-small);color:var(--text-soft)}.exp-settle li b{color:var(--text-strong)}.exp-add{display:flex;align-items:center;gap:4px}.exp-add input{flex:1;min-width:0;min-height:var(--control-height);padding:0 10px;border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--surface-raised);color:var(--text);font:inherit;outline:0}.exp-add input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.2)}.exp-add .exp-amount{flex:0 0 92px;text-align:right;font-variant-numeric:tabular-nums}.exp-more{display:grid;gap:8px;padding:10px;border:1px dashed rgba(var(--accent-rgb),.45);border-radius:var(--radius-control)}.exp-more select{min-height:var(--control-height);padding:0 8px;border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--surface-raised);color:var(--text);font:inherit}.exp-entries{list-style:none;margin:0;padding:0;display:grid;gap:2px}.exp-entries li{display:flex;align-items:center;gap:8px;padding:5px 6px;border-radius:var(--radius-control)}.exp-entries li:hover{background:var(--hover-bg)}.exp-entries li.settle{opacity:.7}.exp-what{display:grid;flex:1;min-width:0}.exp-what b{color:var(--text);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exp-what i{color:var(--muted);font-size:var(--fs-xs);font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exp-sum{color:var(--text-strong);font-variant-numeric:tabular-nums;flex:none}.exp-entries li:hover .list-del,.exp-entries .list-del:focus-visible{opacity:1}.exp-older{margin:0;font-size:var(--fs-xs)}.quick-backdrop{align-items:start;padding-top:min(14vh,120px)}.quick{width:min(620px,100%);overflow:hidden;border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--panel-raised);box-shadow:var(--shadow-lg);animation:dialog-in var(--dur-slow) var(--ease-out)}.quick-input{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line)}.quick-input>svg{flex:none;width:19px;height:19px;color:var(--accent-bright)}.quick-input input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--text-strong);font:inherit;font-size:var(--fs-lg)}.quick-input input::placeholder{color:var(--muted);font-size:var(--fs-small)}.quick kbd,.hub-search-kbd{padding:1px 6px;border:1px solid var(--line-strong);border-radius:calc(var(--radius-sm) * .6);color:var(--muted);font:inherit;font-size:var(--fs-xs);font-weight:600;white-space:nowrap}.quick-results{list-style:none;margin:0;padding:6px;max-height:min(60vh,440px);overflow-y:auto}.quick-results li{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:var(--radius-control);color:var(--text);cursor:pointer}.quick-results li>svg{flex:none;width:17px;height:17px;color:var(--muted)}.quick-results li>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.quick-results li>i{flex:none;color:var(--muted);font-size:var(--fs-xs);font-style:normal}.quick-results li.on{background:rgba(var(--accent-rgb),.14)}.quick-results li.on>svg{color:var(--accent-bright)}.quick-results .quick-empty{color:var(--muted);font-size:var(--fs-small);cursor:default;white-space:normal}.quick-foot{margin:0;padding:8px 14px;border-top:1px solid var(--line);color:var(--muted);font-size:var(--fs-xs)}.quick-foot kbd{margin:0 2px}.hub-search-kbd{margin-left:auto}.found-flash{animation:found-flash var(--loop-pulse) var(--ease-out)}@keyframes found-flash{0%,40%{box-shadow:0 0 0 3px rgba(var(--accent-rgb),.55);border-radius:var(--radius-lg)}to{box-shadow:0 0 0 3px rgba(var(--accent-rgb),0)}}@media(max-width:720px){.hub-search-kbd,.quick-foot{display:none}.quick-backdrop{padding-top:12px}}.presence-card{display:flex;flex-direction:column;gap:10px}.presence-card .ph{margin-bottom:4px}.presence-list{list-style:none;margin:0;padding:0;display:grid;gap:4px}.presence-list li{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:9px;padding:5px 4px}.presence-list i{grid-column:2;color:var(--muted);font-size:var(--fs-xs);font-style:normal}.presence-list b{color:var(--text);font-weight:600}.presence-dot{grid-row:span 2;width:10px;height:10px;border-radius:50%;background:var(--line-strong)}.presence-list li.home .presence-dot{background:var(--green);box-shadow:0 0 0 3px color-mix(in srgb,var(--green) 25%,transparent)}.presence-list li.away .presence-dot{background:var(--muted)}.presence-show{display:flex;align-items:center;gap:8px;color:var(--text-soft);font-size:var(--fs-small);cursor:pointer}.presence-show input{width:17px;height:17px;accent-color:var(--accent)}.presence-note{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;color:var(--text-soft);font-size:var(--fs-small)}.presence-note select{min-height:30px;padding:0 6px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--text);font:inherit}.presence-note .list-add{flex-basis:100%;margin:0}.presence-note .hint{flex-basis:100%;color:var(--muted);font-size:var(--fs-xs);font-style:normal}.presence-notes{list-style:none;margin:0;padding:0;display:grid;gap:2px}.presence-notes li{display:flex;align-items:center;gap:8px;padding:5px 4px;border-radius:var(--radius-control)}.presence-notes li:hover{background:var(--hover-bg)}.presence-notes li>svg{flex:none;width:15px;height:15px;color:var(--accent-bright)}.presence-notes li>span{display:grid;flex:1;min-width:0}.presence-notes b{color:var(--text);font-weight:600;font-size:var(--fs-small)}.presence-notes i{color:var(--muted);font-size:var(--fs-xs);font-style:normal}.presence-notes li:hover .list-del{opacity:1}.offline-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--amber) 22%,transparent);color:var(--text);font-size:var(--fs-xs);font-weight:700;white-space:nowrap}.offline-pill svg{width:14px;height:14px}.desktop-update{position:fixed;right:calc(16px + var(--safe-r, 0px));bottom:calc(16px + var(--safe-b, 0px));z-index:40;cursor:pointer}.list-pending{display:flex;align-items:center;gap:6px;margin:6px 0 0;color:var(--muted);font-size:var(--fs-xs)}.list-pending svg{width:13px;height:13px}.auth-passkey{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%}.auth-passkey svg{width:18px;height:18px}.passkey-list{margin:-4px 0 8px}.dialog-hint{display:block;margin-top:10px;padding:8px 10px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--amber) 14%,transparent);color:var(--text);font-size:var(--fs-small)}.status-dot.unknown{background:transparent;box-shadow:inset 0 0 0 2px var(--muted)}.status-row .s-state.unknown{color:var(--muted)}.status-row .s-state.unknown .dot{background:transparent;box-shadow:inset 0 0 0 2px var(--muted)}.state-loading{display:grid;gap:8px;padding:4px 0}.state-empty{display:grid;justify-items:center;gap:8px;padding:14px 8px;color:var(--muted);font-size:var(--fs-small);line-height:1.45;text-align:center}.state-empty>svg{width:22px;height:22px;opacity:.7}.state-empty>span{max-width:34ch}.state-empty .dialog-cancel{min-height:34px;padding:6px 12px}.state-empty .dialog-cancel svg{width:15px;height:15px}.state-skeleton{position:relative;overflow:hidden;display:block;height:14px;border-radius:var(--radius-sm);background:var(--surface-raised)}.state-skeleton:after{--shimmer: var(--hover-bg)}.state-skeleton:nth-child(2){width:72%}.state-loading-label{color:var(--muted);font-size:var(--fs-xs)}.state-error{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 10px;border-radius:var(--radius-control);background:rgba(var(--danger-rgb),.1);color:var(--danger-text);font-size:var(--fs-small)}.state-error>svg{flex:none;width:15px;height:15px}.state-error>span{flex:1;min-width:0}.state-error button{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border:1px solid currentColor;border-radius:var(--radius-sm);color:inherit;font-size:var(--fs-xs);font-weight:700}.state-error button svg{width:12px;height:12px}.widget-crashed{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;color:var(--text-soft);text-align:center}.widget-crashed>svg{width:20px;height:20px;color:var(--danger)}.widget-crashed .dialog-cancel{display:inline-flex;align-items:center;gap:6px}.widget-crashed .dialog-cancel svg{width:15px;height:15px}@media(prefers-reduced-motion:reduce){.state-skeleton:after{animation:none}}:root[data-wallpaper] :is(.card,.app-tile,.settings-section,.notif,.edit-bar,.modal-backdrop,.toast){-webkit-backdrop-filter:none;backdrop-filter:none}:root[data-wallpaper][data-card=glass] :is(.card,.app-tile){background:rgba(var(--surface-rgb),.86)}:root[data-wallpaper] .clock-time .sep{animation:none}.pi-state{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;border-radius:var(--radius-control);font-size:var(--fs-small);line-height:1.35}.pi-state>svg{flex:none;width:16px;height:16px;margin-top:1px}.pi-state i{color:var(--text-soft);font-style:normal}.pi-state.ok{background:rgba(var(--green-rgb),.12)}.pi-state.ok>svg{color:var(--green)}.pi-state.warn{background:rgba(var(--amber-rgb),.16)}.pi-state.warn>svg{color:var(--amber)}.pi-state.bad{background:rgba(var(--danger-rgb),.14)}.pi-state.bad>svg{color:var(--danger)}.pi-state.big{margin-bottom:16px;padding:12px 14px;font-size:var(--fs-md)}.pi-facts{display:grid;gap:6px;margin:12px 0 0}.pi-facts>div{display:flex;justify-content:space-between;gap:10px}.pi-facts dt{display:inline-flex;align-items:center;gap:7px;color:var(--text-soft)}.pi-facts dt svg{width:15px;height:15px;color:var(--muted)}.pi-facts dd{margin:0;color:var(--text-strong);font-weight:600;font-variant-numeric:tabular-nums}.pi-card .panel-foot .link{display:inline-flex;align-items:center;gap:2px}.pi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:calc(var(--view-gutter) + 2px);margin-bottom:calc(var(--view-gutter) + 2px)}.pi-h{display:flex;align-items:center;gap:8px;margin:0 0 12px;color:var(--text-strong);font-size:var(--fs-xl)}.pi-h svg{width:18px;height:18px;color:var(--accent-bright)}.pi-sub{margin:14px 0 8px;color:var(--muted);font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase}.pi-checks{display:grid;gap:4px;margin:0;padding:0;list-style:none}.pi-checks li{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;padding:6px 0;border-bottom:1px solid var(--line)}.pi-checks li:last-child{border-bottom:0}.pi-checks li>svg{width:16px;height:16px}.pi-checks li.ok>svg{color:var(--green)}.pi-checks li.warn>svg{color:var(--amber)}.pi-checks li.bad>svg{color:var(--danger)}.pi-checks span{display:grid;min-width:0}.pi-checks span i{color:var(--text-soft);font-style:normal;font-size:var(--fs-small)}.pi-checks em{color:var(--muted);font-size:var(--fs-xs);font-style:normal;font-weight:600}.pi-list{display:grid;gap:7px;margin:0}.pi-list>div{display:grid;grid-template-columns:minmax(110px,40%) 1fr;gap:10px}.pi-list dt{color:var(--muted)}.pi-list dd{margin:0;color:var(--text);overflow-wrap:anywhere}.pi-usage{margin-bottom:12px}.pi-usage-top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:2px 10px;margin-bottom:5px;font-size:var(--fs-small)}.pi-usage-top b{overflow-wrap:anywhere}.pi-usage-top span{margin-left:auto;color:var(--text-soft);font-variant-numeric:tabular-nums;white-space:nowrap}.pi-bar{height:8px;border-radius:var(--radius-pill);background:var(--surface-soft);overflow:hidden}.pi-bar i{display:block;height:100%;background:var(--accent)}.pi-usage.warn .pi-bar i{background:var(--amber)}.pi-usage.bad .pi-bar i{background:var(--danger-solid)}.pi-services{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.pi-services li{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--radius-pill);background:var(--surface-soft);font-size:var(--fs-small)}.pi-services li i{color:var(--muted);font-style:normal}.pi-services li.ok .status-dot{background:var(--green)}.pi-services li.bad .status-dot{background:var(--danger)}.pi-charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:18px}.pi-chart{margin:0}.pi-chart figcaption{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 10px;margin-bottom:6px;font-size:var(--fs-small)}.pi-chart figcaption b{color:var(--text-strong)}.pi-chart figcaption span{color:var(--muted);font-variant-numeric:tabular-nums}.pi-plot{position:relative;height:120px}.pi-plot svg{display:block;width:100%;height:100%;overflow:visible;cursor:crosshair;touch-action:pan-y}.pi-plot .grid{stroke:var(--line);stroke-width:1}.pi-plot .warn{stroke:var(--amber);stroke-width:1;stroke-dasharray:4 4;opacity:.7}.pi-plot .line{fill:none;stroke:var(--accent);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.pi-plot .cross{stroke:var(--text-soft);stroke-width:1}.pi-dot{position:absolute;width:9px;height:9px;margin:-4.5px 0 0 -4.5px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 2px var(--surface);pointer-events:none}.pi-tip{position:absolute;top:-6px;transform:translate(8px,-100%);padding:3px 8px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--panel-raised);box-shadow:var(--shadow-md);color:var(--text-soft);font-size:var(--fs-xs);white-space:nowrap;pointer-events:none}.pi-tip.left{transform:translate(calc(-100% - 8px),-100%)}.pi-tip b{color:var(--text-strong)}.pi-axis{position:absolute;left:0;color:var(--muted);font-size:var(--fs-2xs);pointer-events:none}.pi-axis.top{top:0}.pi-axis.bottom{bottom:0}.pi-times{display:flex;justify-content:space-between;margin-top:4px;color:var(--muted);font-size:var(--fs-2xs)}.pi-table{margin-top:14px;overflow-x:auto}.pi-table summary{cursor:pointer;color:var(--text-soft);font-size:var(--fs-small)}.pi-table table{width:100%;margin-top:8px;border-collapse:collapse;font-size:var(--fs-small);font-variant-numeric:tabular-nums}.pi-table th,.pi-table td{padding:4px 8px;border-bottom:1px solid var(--line);text-align:left}.pi-table th{color:var(--muted);font-weight:600}.server-rows{display:grid;gap:10px;margin:0;padding:0;list-style:none}.server-row{display:grid;gap:6px;padding-bottom:10px;border-bottom:1px solid var(--line)}.server-row:last-child{padding-bottom:0;border-bottom:0}.server-row>b{color:var(--text-strong)}.server-vals{display:flex;flex-wrap:wrap;gap:4px 12px;color:var(--text-soft);font-size:var(--fs-small);font-variant-numeric:tabular-nums}.server-vals i{display:inline-flex;align-items:center;gap:5px;font-style:normal}.server-vals svg{width:14px;height:14px;color:var(--muted)}.server-err{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:var(--fs-small)}.server-err svg{width:14px;height:14px;color:var(--amber)}.server-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:calc(var(--view-gutter) + 2px);margin-bottom:16px}.server-tile{display:grid;gap:10px;padding:16px;text-align:left;color:inherit;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard)}.server-tile:hover{background:var(--panel-hover)}.server-tile.on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.server-tile-head{display:flex;align-items:center;gap:8px;color:var(--text-strong);font-size:var(--fs-lg)}.server-tile-head svg{width:18px;height:18px;color:var(--accent-bright)}.server-tabs{margin-bottom:6px}.server-sub{margin:0 0 14px;color:var(--muted);font-size:var(--fs-small)}.weather-open{display:flex;flex-direction:column;gap:14px;width:100%;padding:0;color:inherit;text-align:left;border-radius:var(--radius-control);cursor:pointer}.weather-open:focus-visible{outline:2px solid var(--focus);outline-offset:4px}.weather-card{touch-action:pan-y}.weather-dots{display:flex;justify-content:center;gap:2px;margin-top:-4px}.weather-dots button{width:22px;height:22px;display:grid;place-items:center;border-radius:50%}.weather-dots button:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--line-strong);transition:background var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard)}.weather-dots button.on:before{background:var(--accent);transform:scale(1.2)}.weather-more{display:grid;gap:4px;margin:0 0 8px;padding:0;list-style:none}.weather-more li{display:flex;align-items:center;gap:8px;color:var(--text)}.weather-more li>svg{width:15px;height:15px;color:var(--muted)}.weather-more li span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.weather-more .icon-button{width:30px;height:30px}.wx-now{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:12px;margin-bottom:16px}.wx-now-ico svg{width:36px;height:36px;color:var(--text-soft)}.wx-now>b{color:var(--text-strong);font-size:40px;font-weight:800;letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums}.wx-now-text{display:grid;gap:2px;min-width:0}.wx-now-text strong{color:var(--text-strong)}.wx-now-text span{color:var(--muted);font-size:var(--fs-small)}.wx-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-bottom:12px}.wx-strip button{display:grid;justify-items:center;gap:3px;min-width:0;padding:8px 2px 6px;border:1px solid transparent;border-radius:var(--radius-control);background:var(--surface-raised);color:var(--text-soft);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;transition:background var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard)}.wx-strip button:hover{border-color:var(--line-strong)}.wx-strip button.on{border-color:rgba(var(--accent-rgb),.55);background:rgba(var(--accent-rgb),.14)}.wx-strip span{overflow:hidden;max-width:100%;font-size:var(--fs-xs);font-weight:700;white-space:nowrap;text-overflow:ellipsis}.wx-strip button.on span{color:var(--accent-bright)}.wx-strip svg{width:20px;height:20px}.wx-strip b{color:var(--text-strong);font-size:var(--fs-small);line-height:1}.wx-strip small{color:var(--muted);font-size:var(--fs-xs);line-height:1}.wx-strip i{color:var(--muted);font-size:var(--fs-2xs);font-style:normal;white-space:nowrap}.wx-strip i.wet{color:var(--accent-bright);font-weight:700}.wx-day{padding:12px;border:1px solid var(--line);border-radius:var(--radius-control);animation:wx-day-in var(--dur) var(--ease-out);touch-action:pan-y}@keyframes wx-day-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.wx-day h3{display:grid;gap:2px;margin:0 0 10px;color:var(--text-strong);font-size:var(--fs-md)}.wx-day h3 span{color:var(--muted);font-size:var(--fs-small);font-weight:500}.wx-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px;padding:0;list-style:none}.wx-chips li{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:999px;background:var(--surface-raised);color:var(--text-strong);font-size:var(--fs-small);font-weight:600;font-variant-numeric:tabular-nums}.wx-chips svg{width:14px;height:14px;color:var(--muted)}.wx-section{margin-bottom:16px}.wx-section h3{margin:0 0 8px;color:var(--text-strong);font-size:var(--fs-md)}.wx-hours{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:4px;margin:0;padding:0;list-style:none}.wx-hours li{display:grid;justify-items:center;gap:4px;min-width:0;padding:8px 0;border-radius:var(--radius-control);background:var(--surface-raised);font-variant-numeric:tabular-nums}.wx-hours span{overflow:hidden;max-width:100%;color:var(--muted);font-size:var(--fs-2xs);white-space:nowrap;text-overflow:ellipsis}.wx-hours svg{width:20px;height:20px;color:var(--text-soft)}.wx-hours b{color:var(--text-strong);font-size:var(--fs-small)}.wx-hours i{color:var(--muted);font-size:var(--fs-2xs);font-style:normal}.wx-hours i.wet{color:var(--accent-bright);font-weight:700}.wall-bell{position:fixed;top:12px;right:12px;z-index:40;background:var(--panel-raised);box-shadow:var(--shadow-md);border:1px solid var(--line)}.wall-bell .dot{position:absolute;top:3px;right:3px;min-width:16px;height:16px;padding:0 4px;display:grid;place-items:center;border-radius:var(--radius-pill);background:var(--danger-solid);color:var(--on-danger);font-size:var(--fs-2xs);font-weight:700}.wall-back{position:fixed;top:12px;left:12px;z-index:40;display:inline-flex;align-items:center;gap:6px;box-shadow:var(--shadow-md)}.wall-back svg{width:16px;height:16px}.hub-wallpaper .wall-back~.hub-view{padding-top:64px}.light-row.pending .switch{animation:switch-wait var(--loop-pulse) var(--ease-in-out) infinite alternate}@keyframes switch-wait{to{opacity:.45}}.light-row{-webkit-touch-callout:none}.power-total{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px;margin-bottom:12px}.power-total b{color:var(--text-strong);font-size:1.9em;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.1}.power-total span{color:var(--muted)}.power-card .pi-chart{margin:0 0 12px}.power-list{display:grid;gap:2px;margin:0;padding:0;list-style:none}.power-list li{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid var(--line)}.power-list li:last-child{border-bottom:0}.power-list li>svg{width:17px;height:17px;color:var(--muted)}.power-list li.off{opacity:.6}.power-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.power-val{display:grid;justify-items:end;font-variant-numeric:tabular-nums}.power-val b{color:var(--text-strong);font-weight:600}.power-val i{color:var(--muted);font-style:normal}.power-val small{color:var(--muted);font-size:var(--fs-xs, .78em)}.power-card .hint{margin:10px 0 0}.auto-rules{display:grid;gap:4px;margin:0;padding:0;list-style:none}.auto-rules li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 0;border-bottom:1px solid var(--line)}.auto-rules li:last-child{border-bottom:0}.auto-rules b{color:var(--text-strong)}.auto-add{display:flex;flex-wrap:wrap;gap:8px}.auto-add input{flex:1 1 160px;min-width:0}.auto-add select{flex:1 1 140px;min-width:0}.auto-wake{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:10px 14px}.auto-wake label{display:grid;gap:5px;color:var(--text-soft);font-size:var(--fs-small)}.auto-wake .cal-chips{grid-column:1 / -1}.alarm-test{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.alarm-test .dialog-cancel{display:inline-flex;align-items:center;gap:6px}.alarm-test .dialog-cancel svg{width:15px;height:15px}.hub-main{overscroll-behavior-y:contain}.ptr{position:fixed;top:calc(var(--safe-t, 0px) + 6px);left:50%;z-index:50;display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line-strong);border-radius:50%;background:var(--panel-raised);color:var(--muted);box-shadow:var(--shadow-md);transform:translate(-50%,calc(var(--ptr, 0px) - 30px));pointer-events:none}.ptr svg{width:18px;height:18px;transform:rotate(var(--ptr-turn, 0deg))}.ptr.ready{color:var(--accent-bright);border-color:rgba(var(--accent-rgb),.55)}.ptr.busy{opacity:1;color:var(--accent-bright)}.ptr.busy svg{animation:spin var(--loop-spin) linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.parcel-list{display:grid;gap:2px;margin:0;padding:0;list-style:none}.parcel-list li{display:grid;grid-template-columns:18px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}.parcel-list li:last-child{border-bottom:0}.parcel-list li>svg{width:17px;height:17px;color:var(--muted)}.parcel-list li.today>svg{color:var(--accent-bright)}.parcel-list li.bad>svg{color:var(--danger)}.parcel-list li.done{opacity:.6}.parcel-main,.parcel-status{display:grid;min-width:0}.parcel-main b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-strong);font-weight:600}.parcel-main i,.parcel-status i{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:var(--fs-xs);font-style:normal}.parcel-status{justify-items:end;text-align:right}.parcel-status b{color:var(--text);font-size:var(--fs-small);font-weight:600}.parcel-list li.today .parcel-status b{color:var(--accent-bright)}.parcel-list li.bad .parcel-status b{color:var(--danger)}.parcel-actions{display:flex;gap:2px}.parcel-actions .icon-button{width:30px;height:30px}.parcel-actions .icon-button svg{width:15px;height:15px}:is(.auto-add,.auto-wake,.desktop-night) :is(input:not([type=range]),select){min-height:var(--control-height);padding:0 10px;border:1px solid var(--line-strong);border-radius:var(--radius-control);color:var(--text);background:var(--surface-raised);font:inherit;outline:0}:is(.auto-add,.auto-wake,.desktop-night) :is(input:not([type=range]),select):focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.22)}:is(.auto-wake,.desktop-night) input[type=range]{width:100%;accent-color:var(--accent)}.auto-wake select,.auto-wake input:not([type=range]){width:100%}.count-up{font-variant-numeric:tabular-nums}.wx-anim{position:relative}.wx-anim svg{position:relative;overflow:visible}.wx-sun:before{content:"";position:absolute;top:14%;right:14%;bottom:14%;left:14%;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--amber) 45%,transparent),transparent 70%);animation:wx-glow calc(var(--loop-pulse) * 3) var(--ease-in-out) infinite alternate}@keyframes wx-glow{0%{opacity:.35;transform:scale(.9)}to{opacity:.9;transform:scale(1.12)}}.wx-cloud svg,.wx-cloud-sun svg path:nth-child(n+6){animation:wx-drift calc(var(--loop-pulse) * 5) var(--ease-in-out) infinite alternate}@keyframes wx-drift{0%{transform:translate(-1.5px)}to{transform:translate(1.5px)}}.wx-cloud-rain svg path:nth-child(n+2),.wx-cloud-snow svg path:nth-child(n+2){transform-box:fill-box;animation:wx-fall var(--loop-pulse) linear infinite}.wx-cloud-snow svg path:nth-child(n+2){animation-duration:calc(var(--loop-pulse) * 2.5)}.wx-anim svg path:nth-child(3){animation-delay:calc(var(--loop-pulse) * -.33)}.wx-anim svg path:nth-child(4){animation-delay:calc(var(--loop-pulse) * -.66)}.wx-anim svg path:nth-child(5){animation-delay:calc(var(--loop-pulse) * -.5)}.wx-anim svg path:nth-child(6){animation-delay:calc(var(--loop-pulse) * -.15)}@keyframes wx-fall{0%{transform:translateY(-2px);opacity:0}30%{opacity:1}to{transform:translateY(3px);opacity:0}}:root[data-wallpaper] .wx-anim:before,:root[data-wallpaper] .wx-anim svg,:root[data-wallpaper] .wx-anim svg path{animation:none}:root[data-wallpaper] :is(.clock-time .sep,.tile-status .dot,.status-row .dot,.inline-skeleton,.state-skeleton,.plan-room rect,.plan-lamp .plan-dot,.light-ico,.switch){animation:none}.hh-boxes{margin-bottom:14px}.hh-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:start}.hh-entries{grid-column:1 / -1;display:grid;gap:10px}.hh-summary,.hh-add{display:grid;gap:10px}.hh-summary .ph,.hh-add .ph{margin-bottom:0}.hh-manage{display:grid;gap:14px;margin-top:14px}.hh-me{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:0;padding:10px 12px;border:0;border-radius:var(--radius-control);background:var(--surface-raised);color:var(--text-soft);font:inherit;text-align:left}.hh-me span{font-weight:600}.hh-me b{color:var(--text-strong);font-size:1.35em;font-variant-numeric:tabular-nums}.hh-me.plus b{color:var(--ok-text)}.hh-me.minus b{color:var(--danger-text)}.hh-me i{flex-basis:100%;color:var(--muted);font-size:var(--fs-xs);font-style:normal}button.exp-me{cursor:pointer;width:100%}button.exp-me:hover{background:var(--hover-bg)}.exp-balances i{color:var(--muted);font-size:var(--fs-xs);font-style:normal}.hh-total{margin:0;font-size:var(--fs-xs)}.hh-month h4{display:flex;justify-content:space-between;gap:10px;margin:6px 0 4px;color:var(--muted);font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em}.hh-month h4 i{font-style:normal;font-variant-numeric:tabular-nums}.exp-card .ph>.icon-button{margin-left:auto}.exp-last{display:flex;align-items:center;gap:8px;padding:4px 2px}.exp-last.settle{opacity:.75}@media(max-width:720px){.hh-layout{grid-template-columns:minmax(0,1fr)}}.cal-filter{align-items:center;margin:-4px 0 12px}.cal-filter-label{color:var(--muted);font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-right:2px}.cal-filter .cal-chip{display:inline-flex;align-items:center;gap:6px}.cal-filter .cal-chip svg{width:14px;height:14px}.cal-filter .cal-chip:not(.on){opacity:.65;text-decoration:line-through}.notif-group{max-width:760px;margin-bottom:12px}.notif-group-head{display:flex;align-items:center;gap:9px;width:100%;margin:0 0 8px;padding:6px 4px;border:0;background:none;color:var(--text-strong);font:inherit;cursor:pointer;text-align:left}.notif-group-head svg{width:17px;height:17px;flex:none;color:var(--muted)}.notif-group-head b{font-weight:700}.notif-group-head>svg:last-child{margin-left:auto}.notif-count{color:var(--muted);font-size:var(--fs-xs);font-weight:600}.notif-new{padding:1px 7px;border-radius:var(--radius-pill);background:var(--accent);color:var(--on-accent);font-size:var(--fs-xs);font-weight:700}.notif-more{justify-self:start;color:var(--accent-bright);font-size:var(--fs-small);font-weight:600}.light-tabs{display:flex;gap:4px;margin:0 0 16px;padding:4px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);overflow-x:auto;scrollbar-width:none}.light-tabs::-webkit-scrollbar{display:none}.light-tabs button{display:inline-flex;align-items:center;gap:7px;flex:none;padding:8px 14px;border:0;border-radius:calc(var(--radius-control) - 2px);background:none;color:var(--text-soft);font:inherit;font-size:var(--fs-small);font-weight:650;cursor:pointer;transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.light-tabs button svg{width:16px;height:16px}.light-tabs button:hover{color:var(--text-strong);background:var(--hover-bg)}.light-tabs button.on{color:var(--on-accent);background:var(--accent)}.light-tab-badge{min-width:18px;padding:0 5px;border-radius:var(--radius-pill);background:#00000038;font-size:var(--fs-xs);font-style:normal;text-align:center}.light-scene-bar{margin:0 0 14px}.light-room{display:grid;gap:6px}.light-room .light-room-head .light-row{background:var(--surface-raised)}.light-room .light-list.compact{padding-left:14px;border-left:2px solid var(--line);margin-left:8px}.light-timer-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.light-timer-head>span{display:flex;align-items:center;gap:8px;color:var(--text-soft);font-size:var(--fs-small);font-weight:700}.light-timer-head>span svg{width:15px;height:15px;color:var(--muted)}.light-chip.on{border-color:var(--accent);color:var(--text-strong)}.light-chip svg{width:13px;height:13px;vertical-align:-2px}.light-timer-custom{display:flex;align-items:center;gap:8px}.light-timer-custom input{width:72px;min-height:var(--control-height);padding:0 10px;border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--surface-raised);color:var(--text);font:inherit;text-align:right}.light-timer-custom span{color:var(--muted);font-size:var(--fs-small)}.light-foot{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding-top:10px;border-top:1px solid var(--line)}.light-foot .muted-text{margin:0;font-size:var(--fs-xs);font-family:var(--font-mono)}.light-setup{display:inline-flex;align-items:center;gap:5px;margin-left:auto;color:var(--accent-bright);font-size:var(--fs-small);font-weight:600}.light-setup svg{width:13px;height:13px}.light-all{display:flex;gap:6px}.light-timer-chip{display:inline-flex;align-items:center;gap:6px;padding:2px 4px 2px 11px;border:1px solid rgba(var(--accent-rgb),.45);border-radius:var(--radius-pill);background:rgba(var(--accent-rgb),.1);color:var(--text-soft);font-size:var(--fs-small)}.light-timer-chip>svg{width:14px;height:14px;color:var(--accent-bright)}.light-timer-chip b{color:var(--text-strong);font-weight:650}.light-timer-chip .icon-button{width:28px;height:28px}.light-order{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 0 14px}.light-order>span{color:var(--muted);font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em}.settings-layout{display:grid;grid-template-columns:260px minmax(0,780px);gap:20px;align-items:start}.settings-layout .settings{max-width:none}.settings-menu{position:sticky;top:16px;display:grid;gap:4px;padding:6px;border:1px solid var(--line);border-radius:var(--radius-view);background:var(--surface);box-shadow:var(--shadow-sm)}.settings-menu button{display:flex;align-items:center;gap:11px;width:100%;padding:9px 10px;border:0;border-radius:var(--radius-control);background:none;color:var(--text-soft);font:inherit;text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.settings-menu button:hover{background:var(--hover-bg);color:var(--text-strong)}.settings-menu button.on{background:rgba(var(--accent-rgb),.14);color:var(--text-strong)}.settings-menu-ico{display:grid;place-items:center;flex:none;width:32px;height:32px;border-radius:var(--radius-control);background:var(--surface-raised);color:var(--muted)}.settings-menu button.on .settings-menu-ico{background:var(--accent);color:var(--on-accent)}.settings-menu-ico svg{width:17px;height:17px}.settings-menu-text{display:grid;flex:1;min-width:0}.settings-menu-text b{font-size:var(--fs-small);font-weight:650}.settings-menu-text i{overflow:hidden;color:var(--muted);font-size:var(--fs-xs);font-style:normal;text-overflow:ellipsis;white-space:nowrap}.settings-menu button>svg:last-child{width:16px;height:16px;color:var(--muted)}.settings-group-title{display:flex;align-items:center;gap:9px;margin:2px 0;color:var(--text-strong);font-size:var(--fs-lg);font-weight:700}.settings-group-title svg{width:19px;height:19px;color:var(--accent-bright)}.settings-back{justify-self:start}@media(max-width:900px){.settings-layout{grid-template-columns:220px minmax(0,1fr);gap:14px}.settings-menu-text i{display:none}}@media(max-width:720px){.settings-layout{grid-template-columns:minmax(0,1fr)}.settings-menu{position:static;padding:4px}.settings-menu button{padding:12px 10px}.settings-menu-text i{display:block;white-space:normal}}.tv-vol{display:flex;align-items:flex-end;gap:6px}.tv-vol .light-field{flex:1;min-width:0}.tv-mute{display:inline-flex;align-items:center;gap:5px}.tv-mute svg{width:14px;height:14px}.tv-remote{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:center}.tv-pad{display:grid;grid-template-columns:repeat(3,46px);grid-template-rows:repeat(3,46px);gap:4px}.tv-keys{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.tv-key{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:42px;padding:0 8px;border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--surface-raised);color:var(--text);font:inherit;font-size:var(--fs-small);font-weight:650;cursor:pointer;transition:background var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard)}.tv-key:hover{background:var(--hover-bg)}.tv-key:active{transform:scale(.95)}.tv-key svg{width:17px;height:17px}.tv-key{position:relative}.tv-key:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:rgba(var(--accent-rgb),.35);opacity:0;pointer-events:none}.tv-key.sent:before{animation:tv-sent var(--dur-slow) var(--ease-out)}@keyframes tv-sent{0%{opacity:1}to{opacity:0}}.tv-text.typing input{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.2)}.tv-text .light-timer-custom input{flex:1;width:auto;text-align:left}.tv-text p{margin:0;font-size:var(--fs-xs)}@media(max-width:520px){.tv-remote{grid-template-columns:minmax(0,1fr);justify-items:center}.tv-keys{width:100%}}@media(prefers-reduced-motion:reduce){.tv-key.sent{animation:none}}.widget.collapsible.shut{min-height:0}.widget-bar{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:0 14px;border:1px solid var(--line);border-radius:var(--radius-view);background:var(--surface);box-shadow:var(--shadow-sm);color:var(--text-strong);font:inherit;text-align:left;cursor:pointer}.widget-bar>svg:first-child{width:17px;height:17px;color:var(--accent-bright);flex:none}.widget-bar b{flex:1;min-width:0;overflow:hidden;font-size:var(--fs-small);font-weight:650;text-overflow:ellipsis;white-space:nowrap}.widget-bar>svg:last-child{width:16px;height:16px;color:var(--muted);flex:none}.widget.collapsible.open .widget-bar{margin-bottom:8px}.widget-body[hidden]{display:none}.list-remind{display:grid;gap:8px}.list-remind .hint{margin:0}.notif .n-dismiss{flex:none;width:30px;height:30px;margin:-4px -6px 0 0;opacity:.55}.notif:hover .n-dismiss,.notif .n-dismiss:focus-visible{opacity:1}.notif .n-dismiss svg{width:15px;height:15px}@media(hover:none){.notif .n-dismiss{display:none}}.notif-group-bar{display:flex;align-items:center;gap:4px;margin:0 0 8px}.notif-group-bar .notif-group-head{margin:0;flex:1;min-width:0}.notif-mute{flex:none;width:32px;height:32px;color:var(--muted)}.notif-mute.on{color:var(--accent-bright)}.notif-mute svg{width:16px;height:16px}.notif-muted{padding:1px 7px;border-radius:99px;background:var(--surface-soft);color:var(--muted);font-size:var(--fs-xs);font-weight:600}.notify-only{padding:0;border:0;background:none}.notify-topics li.focus{background:rgba(var(--accent-rgb),.12);border-radius:8px;padding-right:6px}.notify-app-head .seg{flex:none}.notify-app-head .seg button{padding:5px 10px;font-size:var(--fs-xs)}.notif-filter{display:flex;gap:6px;max-width:760px;margin:0 0 14px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.notif-filter::-webkit-scrollbar{display:none}.notif-filter button{position:relative;display:inline-flex;align-items:center;gap:6px;flex:none;padding:6px 12px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-raised);color:var(--text-soft);font:inherit;font-size:var(--fs-small);font-weight:600;cursor:pointer;white-space:nowrap}.notif-filter button svg{width:14px;height:14px;color:var(--muted)}.notif-filter button.on{border-color:var(--accent);background:rgba(var(--accent-rgb),.16);color:var(--accent-bright)}.notif-filter button.on svg,.notif-filter button.on .notif-count{color:var(--accent-bright)}.notif-dot{position:absolute;top:3px;right:3px;width:7px;height:7px;border-radius:50%;background:var(--accent)}.notif-list.joined{gap:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-view);background:var(--surface);box-shadow:var(--shadow-sm)}.notif-list.joined>.notif.slim{border:0;border-radius:0;box-shadow:none;background:transparent;padding:11px 14px;gap:10px}.notif-list.joined>.notif.slim+.notif.slim{border-top:1px solid var(--line)}.notif-list.joined>.notif.slim.unread{box-shadow:inset 3px 0 0 var(--accent)}.notif.slim .n-body b{font-size:var(--fs-md)}.notif.slim .n-ico{width:30px;height:30px}.notif-list.joined>.notif-more{justify-self:stretch;margin:0;padding:9px 14px;border-top:1px solid var(--line);text-align:left}.notif-topic{max-width:760px;margin:0 0 12px}.notif-topic h3{display:flex;align-items:center;gap:6px;margin:0 0 6px 4px;color:var(--text-soft);font-size:var(--fs-small);font-weight:700}@media(hover:none){.notif.slim{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}}.headset-rows{display:grid;gap:2px;margin:0;padding:0;list-style:none}.headset-rows li{display:grid;grid-template-columns:10px minmax(56px,auto) auto minmax(50px,1fr) 46px auto auto;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid var(--line)}.headset-rows li:last-child{border-bottom:0}.headset-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--muted);opacity:.55;flex:none}.headset-dot.on{background:var(--green);opacity:1;box-shadow:0 0 0 3px rgba(var(--green-rgb),.2)}.headset-name{min-width:0;overflow:hidden;color:var(--text-strong);font-weight:600;text-overflow:ellipsis;white-space:nowrap}.headset-meter{position:relative;height:8px;overflow:hidden;border-radius:var(--radius-pill);background:var(--surface-soft)}.headset-meter i{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--accent)}.headset-meter i.low{background:var(--danger)}.headset-pct{color:var(--text-soft);font-size:var(--fs-small);font-variant-numeric:tabular-nums;text-align:right}.headset-warn{display:grid;place-items:center;color:var(--warn-text)}.headset-warn svg{width:16px;height:16px}.headset-rows .icon-button{width:30px;height:30px}.headset-more{display:inline-flex;align-items:center;gap:4px;margin-top:10px;color:var(--accent-bright);font-size:var(--fs-small);font-weight:600}.headset-more svg{width:14px;height:14px}.headset-status{display:flex;flex-wrap:wrap;gap:6px 14px;margin:12px 0 4px;color:var(--muted);font-size:var(--fs-xs)}.headset-status span{display:inline-flex;align-items:center;gap:6px}.headset-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin-top:10px}.headset-col{min-width:0;padding:12px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-raised)}.headset-col h4{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin:0 0 10px;color:var(--text-strong);font-size:var(--fs-md)}.headset-col h4 span{color:var(--text-soft);font-size:var(--fs-small);font-weight:600}.headset-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0}.headset-stand{display:inline-flex;gap:6px}.headset-stand input{width:64px}.headset-log,.headset-rooms{display:grid;gap:2px;margin:0;padding:0;list-style:none}.headset-log li{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:8px;padding:4px 0;font-size:var(--fs-small)}.headset-log i{color:var(--muted);font-style:normal}.headset-log .icon-button,.headset-rooms .icon-button{width:26px;height:26px}.headset-rooms li>.icon-button{grid-column:2;grid-row:1}.headset-rooms li{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 6px;padding:3px 0}.headset-rooms li>:is(button,span):first-child{display:inline-flex;align-items:center;justify-content:space-between;gap:8px;padding:5px 10px;border:1px solid;border-radius:var(--radius-pill);background:transparent;color:var(--text);font:inherit;font-size:var(--fs-small);text-align:left}.headset-rooms li>button:first-child{cursor:pointer}.headset-rooms li>:first-child b{font-size:var(--fs-xs)}.headset-rooms li.gut>:first-child{border-color:rgba(var(--green-rgb),.5)}.headset-rooms li.gut b{color:var(--ok-text)}.headset-rooms li.knackt>:first-child{border-color:color-mix(in srgb,var(--warn-text) 55%,transparent)}.headset-rooms li.knackt b{color:var(--warn-text)}.headset-rooms li.weg>:first-child{border-color:color-mix(in srgb,var(--danger) 55%,transparent)}.headset-rooms li.weg b{color:var(--danger)}.headset-rooms li>i{grid-column:1 / -1;padding-left:10px;color:var(--muted);font-size:var(--fs-xs);font-style:normal}.headset-add{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.headset-add input{flex:1 1 120px;min-width:0}:is(.headset-add,.headset-stand,.headset-form) input:not([type=range]){padding:7px 10px;border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--surface);color:var(--text);font:inherit;font-size:var(--fs-small)}.headset-table-wrap{overflow-x:auto;margin-top:10px}.headset-table{width:100%;border-collapse:collapse;font-size:var(--fs-small)}.headset-table :is(th,td){padding:7px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.headset-table thead th{color:var(--text-strong)}.headset-table tbody th{color:var(--muted);font-weight:600;white-space:nowrap}.headset-table tr.diff td{background:rgba(var(--accent-rgb),.1);color:var(--text-strong);font-weight:600}.headset-table td.old{color:var(--warn-text);font-weight:600}.headset-table td small{display:block;margin-top:2px;color:var(--muted);font-weight:500}.headset-form{display:grid;gap:12px;margin-top:10px}.headset-field{display:grid;grid-template-columns:130px 1fr auto;align-items:center;gap:10px;font-size:var(--fs-small)}.headset-field>span{color:var(--text-soft);font-weight:600}.headset-eq{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:4px;margin:0;padding:0;border:0}.headset-eq legend{margin-bottom:6px;color:var(--text-soft);font-size:var(--fs-small);font-weight:600}.headset-eq input{width:100%;padding:6px 2px!important;text-align:center}@media(max-width:560px){.headset-field{grid-template-columns:1fr auto}.headset-field input[type=range]{grid-column:1 / -1;grid-row:2}.headset-eq{grid-template-columns:repeat(5,minmax(0,1fr))}}bdi{unicode-bidi:isolate}.headset-tabs .seg{display:flex;flex-wrap:nowrap}.headset-tabs .seg button{flex:1;min-width:0;padding:7px 4px}.headset-status>span>span{display:inline}.power-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:16px}.power-stat{display:grid;gap:4px;padding:14px 16px}.power-stat-label{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:var(--fs-xs);font-weight:700}.power-stat-label svg{width:14px;height:14px}.power-stat b{color:var(--text-strong);font-size:1.5em;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.15}.power-stat i{color:var(--text-soft);font-size:var(--fs-small);font-style:normal;font-variant-numeric:tabular-nums}.power-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:16px;align-items:start}.power-days{display:flex;align-items:flex-end;gap:3px;height:150px;padding-top:6px}.power-day{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px;min-width:0;height:100%}.power-day i{flex:1;width:100%;max-width:22px;border-radius:4px 4px 1px 1px;background:var(--accent);opacity:.8;transform:scaleY(var(--p, 0));transform-origin:bottom;animation:bar-grow-y var(--dur-slow) var(--ease-out) both;animation-delay:calc(min(var(--i, 0),30)*8ms);transition:opacity var(--dur-fast) var(--ease-standard),transform var(--dur-slow) var(--ease-out)}.power-day:hover i{opacity:1}.power-day:last-child i{background:var(--accent-bright)}.power-day span{color:var(--muted);font-size:10px;font-variant-numeric:tabular-nums}.power-table{display:grid;gap:0;margin:0;padding:0;list-style:none}.power-table li{display:grid;grid-template-columns:18px minmax(0,1fr) minmax(40px,90px) 64px 78px;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}.power-table li:last-child{border-bottom:0}.power-table li>svg{width:17px;height:17px;color:var(--text-soft)}.power-table li.off{opacity:.6}.power-table :is(.power-dev-name,.power-dev-w,.power-dev-day){display:grid;min-width:0}.power-table :is(.power-dev-w,.power-dev-day){text-align:right;font-variant-numeric:tabular-nums}.power-table b{overflow:hidden;color:var(--text-strong);font-size:var(--fs-small);font-weight:600;text-overflow:ellipsis;white-space:nowrap}.power-table i{color:var(--muted);font-size:var(--fs-xs);font-style:normal}.power-share{height:6px;overflow:hidden;border-radius:var(--radius-pill);background:var(--surface-soft)}.power-share i{display:block;height:100%;background:var(--accent)}.power-dev-none{grid-column:3 / -1;color:var(--muted);font-size:var(--fs-xs);text-align:right}.power-setting{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.power-setting>span:first-child{display:grid;gap:2px}.power-setting b{color:var(--text-strong);font-size:var(--fs-small);font-weight:600}.power-setting i{color:var(--muted);font-size:var(--fs-xs);font-style:normal}.power-price{display:inline-flex;align-items:center;gap:6px;color:var(--text-soft);font-size:var(--fs-small);white-space:nowrap}.power-price input{width:72px;padding:7px 10px;border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--surface);color:var(--text);font:inherit;text-align:right}.power-price input[aria-invalid=true]{border-color:var(--danger)}.power-view .panel-card .hint{margin-top:12px}@media(max-width:560px){.power-table li{grid-template-columns:18px minmax(0,1fr) 60px 70px}.power-share{display:none}}.power-summary{display:flex;align-items:center;flex-wrap:wrap;gap:8px 24px;width:100%;margin:0 0 16px;padding:12px 16px;border:1px solid var(--line);color:inherit;font:inherit;text-align:left;cursor:pointer}.power-summary:hover{border-color:var(--accent)}.power-summary>span{display:grid;gap:1px}.power-summary>span i{color:var(--muted);font-size:var(--fs-xs);font-style:normal}.power-summary>span b{color:var(--text-strong);font-variant-numeric:tabular-nums}.power-summary-head{display:inline-flex!important;grid-auto-flow:column;align-items:center;gap:8px!important}.power-summary-head svg{width:18px;height:18px;color:var(--accent-bright)}.power-summary>svg:last-child{width:16px;height:16px;margin-left:auto;color:var(--muted)}.pihole-state{display:flex;align-items:center;gap:12px;margin:12px 0;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-raised)}.pihole-state>svg{width:26px;height:26px;flex:none}.pihole-state.ok>svg{color:var(--ok-text)}.pihole-state.warn>svg{color:var(--warn-text)}.pihole-state.bad>svg{color:var(--danger)}.pihole-state span{display:grid;gap:2px}.pihole-state b{color:var(--text-strong);font-size:var(--fs-md)}.pihole-state i{color:var(--text-soft);font-size:var(--fs-small);font-style:normal}.pihole-today{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.pihole-today span{display:grid;gap:2px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-control)}.pihole-today i{color:var(--muted);font-size:var(--fs-xs);font-style:normal}.pihole-today b{color:var(--text-strong);font-size:1.2em;font-variant-numeric:tabular-nums}.pihole-domain{min-width:0;overflow:hidden;font-family:var(--font-mono, ui-monospace, monospace);font-size:var(--fs-small);text-overflow:ellipsis;white-space:nowrap}.pihole-top,.pihole-lists{display:grid;gap:0;margin:12px 0 0;padding:0;list-style:none}.pihole-top li{display:grid;grid-template-columns:minmax(0,1fr) 80px 56px 30px;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid var(--line)}.pihole-top b{text-align:right;font-variant-numeric:tabular-nums;font-size:var(--fs-small)}.pihole-top .icon-button{width:28px;height:28px}.pihole-lists li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line);font-size:var(--fs-small)}.pihole-lists li>span:first-child{display:grid;min-width:0;gap:2px}.pihole-lists li i{color:var(--muted);font-style:normal}.pihole-lists li.off{opacity:.55}@media(max-width:560px){.pihole-top li{grid-template-columns:minmax(0,1fr) 50px 30px}.pihole-top .power-share{display:none}}.mailbox-card{display:flex;flex-direction:column;min-height:0}.mailbox-card .ph{position:relative}.mailbox-badge{margin-left:auto;min-width:32px;padding:3px 10px;border-radius:var(--radius-pill);background:var(--accent);color:var(--on-accent);font-weight:700;font-variant-numeric:tabular-nums;text-align:center}.mailbox-body{display:grid;gap:10px;min-height:0;flex:1;overflow-y:auto}.mailbox-body.stale>:not(.mailbox-stale){opacity:.55}.mailbox-stale{display:flex;align-items:center;gap:6px;margin:0;padding:8px 10px;border-radius:var(--radius-control);background:color-mix(in srgb,var(--warn-text) 14%,transparent);color:var(--warn-text);font-size:var(--fs-small)}.mailbox-stale svg{width:14px;height:14px;flex:none}.mailbox-stale a{color:inherit;font-weight:700}.mailbox-chips{display:flex;flex-wrap:wrap;gap:6px}.mailbox-chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:4px 10px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-raised);color:var(--text-soft);font:inherit;font-size:var(--fs-xs);font-weight:600}.mailbox-chip bdi{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}button.mailbox-chip{cursor:pointer;min-height:30px}.mailbox-chip.on{border-color:var(--accent);background:rgba(var(--accent-rgb),.16);color:var(--accent-bright)}.mailbox-chip.cat{border-style:dashed}.mailbox-chip.zero{opacity:.5}.mailbox-chip b{color:var(--text-strong);font-variant-numeric:tabular-nums}.mailbox-list{display:grid;gap:0;margin:0;padding:0;list-style:none}.mailbox-list li{display:flex;align-items:stretch;gap:4px;border-bottom:1px solid var(--line)}.mailbox-list li:last-child{border-bottom:0}.mailbox-row{display:grid;flex:1;min-width:0;min-height:44px;gap:1px;padding:6px 4px;border-radius:var(--radius-sm);color:inherit;text-decoration:none}.mailbox-row:hover{background:var(--surface-soft)}.mailbox-row:focus-visible,.mailbox-reply:focus-visible,.mailbox-foot a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mailbox-line1{display:flex;align-items:center;gap:6px;min-width:0}.mailbox-line1 b{flex:1;min-width:0;overflow:hidden;color:var(--text-strong);font-size:var(--fs-small);text-overflow:ellipsis;white-space:nowrap}.mailbox-line1 i{flex:none;color:var(--muted);font-size:var(--fs-xs);font-style:normal;font-variant-numeric:tabular-nums}.mailbox-mark{flex:none;font-size:var(--fs-xs)}.mailbox-mark.flag{color:var(--warn-text)}.mailbox-line2{overflow:hidden;color:var(--text-soft);font-size:var(--fs-small);text-overflow:ellipsis;white-space:nowrap}.mailbox-reply{flex:none;align-self:center;width:44px;height:44px}.mailbox-empty{margin:8px 0;color:var(--muted);font-size:var(--fs-small);text-align:center}.mailbox-foot{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.mailbox-foot a{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;text-decoration:none}.mailbox-foot .primary-action{flex:1}@media(max-width:560px){.power-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.power-stats .power-stat:first-child{grid-column:1 / -1}.power-stat{padding:12px}.power-stat b{font-size:1.25em}.power-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 12px;position:relative}.power-summary-head{grid-column:1 / -1}.power-summary>svg:last-child{position:absolute;top:14px;right:14px}}.headset-name{display:inline-flex;align-items:center;gap:5px}.headset-mute{display:inline-grid;place-items:center;color:var(--danger)}.headset-mute svg{width:14px;height:14px}.headset-vol{display:inline-flex;align-items:center;gap:3px;color:var(--muted);font-size:var(--fs-xs);font-variant-numeric:tabular-nums;white-space:nowrap}.headset-vol svg{width:13px;height:13px}.headset-rows li .headset-meter,.headset-rows li .headset-pct{transition:opacity var(--dur) var(--ease-standard)}.headset-rows li.off .headset-meter,.headset-rows li.off .headset-pct{opacity:.5}.vacuum-state{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-raised)}.vacuum-ico{display:grid;place-items:center;width:40px;height:40px;flex:none;border-radius:50%;background:var(--surface-soft);color:var(--muted);transition:background var(--dur-slow) var(--ease-standard),color var(--dur-slow) var(--ease-standard)}.vacuum-ico svg{width:22px;height:22px}.s-cleaning .vacuum-ico,.s-moving .vacuum-ico,.s-returning .vacuum-ico{background:rgba(var(--accent-rgb),.14);color:var(--accent)}.s-cleaning .vacuum-ico svg{animation:vacuum-spin calc(var(--loop-spin) * 3) linear infinite}.s-error .vacuum-ico{background:#dc3c3c24;color:var(--danger)}.vacuum-state>span:nth-child(2){display:grid;flex:1;gap:2px;min-width:0}.vacuum-state b{color:var(--text-strong);font-size:var(--fs-md)}.vacuum-state i{color:var(--text-soft);font-size:var(--fs-small);font-style:normal}.vacuum-battery{display:inline-flex;align-items:center;gap:4px;flex:none;color:var(--text);font-size:var(--fs-small);font-variant-numeric:tabular-nums}.vacuum-battery svg{width:18px;height:18px;color:var(--ok-text)}.vacuum-battery.low svg{color:var(--danger)}.vacuum-error{display:flex;align-items:center;gap:6px;margin:10px 0 0}.vacuum-error svg{width:16px;height:16px;flex:none}.vacuum-actions{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 4px}.vacuum-rooms-go{margin-top:8px}.vacuum-last{display:flex;align-items:center;gap:6px}.vacuum-last svg{width:14px;height:14px}.vacuum-worn{color:var(--warn-text);font-style:normal}.vacuum-parts{display:grid;gap:8px;margin:6px 0 0;padding:0;list-style:none}.vacuum-parts li{display:grid;grid-template-columns:minmax(0,1fr) 90px 44px auto;align-items:center;gap:10px}.vacuum-parts li .icon-button{width:32px;height:32px}.vacuum-order{display:inline-grid;place-items:center;min-width:18px;height:18px;margin-right:6px;padding:0 4px;border-radius:var(--radius-pill);background:var(--accent);color:var(--on-accent, #fff);font-size:var(--fs-xs);font-weight:700}.vacuum-reps .seg{margin-top:6px}.vacuum-drive-pad{display:grid;grid-template-columns:repeat(3,56px);grid-template-rows:repeat(3,56px);gap:8px;justify-content:center;margin:16px 0 6px}.vacuum-drive-pad .icon-button{width:56px;height:56px;border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--surface-raised);touch-action:none;-webkit-user-select:none;user-select:none}.vacuum-drive-pad .icon-button svg{width:24px;height:24px}.vacuum-drive-pad .icon-button:active:not(:disabled){border-color:var(--accent);background:rgba(var(--accent-rgb),.16)}.vacuum-drive-forward{grid-column:2;grid-row:1}.vacuum-drive-left{grid-column:1;grid-row:2}.vacuum-drive-right{grid-column:3;grid-row:2}.vacuum-drive-backward{grid-column:2;grid-row:3}.vacuum-settings{display:grid;gap:12px;margin-top:10px}.vacuum-dnd{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:6px;color:var(--text-soft);font-size:var(--fs-small)}.vacuum-dnd label{display:inline-flex;align-items:center;gap:6px}.vacuum-parts li>span:first-child{display:grid;min-width:0}.vacuum-parts b{color:var(--text);font-size:var(--fs-small);font-weight:600}.vacuum-parts i{color:var(--muted);font-size:var(--fs-xs);font-style:normal}.vacuum-part-bar{height:6px;overflow:hidden;border-radius:var(--radius-pill);background:var(--surface-soft)}.vacuum-part-bar i{display:block;height:100%;background:var(--accent)}.vacuum-parts li.worn .vacuum-part-bar i{background:var(--warn-text)}.vacuum-parts li.worn i{color:var(--warn-text)}.vacuum-part-pct{text-align:right;font-variant-numeric:tabular-nums}@keyframes vacuum-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.s-cleaning .vacuum-ico svg{animation:none}}:is(.pi-bar,.headset-meter,.power-share,.vacuum-part-bar)>i{width:100%;transform:scaleX(var(--p, 0));transform-origin:left center;transition:transform var(--dur-slow) var(--ease-out),background var(--dur) var(--ease-standard);animation:bar-grow var(--dur-slow) var(--ease-out)}@keyframes bar-grow{0%{transform:scaleX(0)}}@keyframes bar-grow-y{0%{transform:scaleY(0)}}.tab-panel{animation:tab-in var(--dur) var(--ease-out)}@keyframes tab-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.vacuum-tabs{margin:14px 0 4px}.vacuum-map-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin:10px 0 8px}.vacuum-map-check{display:inline-flex;align-items:center;gap:6px;color:var(--text-soft);font-size:var(--fs-small)}.vmap-wrap{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--bg-sunken)}.vmap{display:block;width:100%;max-height:min(56vh,440px);touch-action:none;-webkit-user-select:none;user-select:none}.vmap.mode-goto,.vmap.mode-area,.vmap.mode-nogo{cursor:crosshair}.vmap.mode-look{touch-action:auto}.vmap-room{opacity:.55}.vmap-room.c0{fill:#5b8def}.vmap-room.c1{fill:#3fb68b}.vmap-room.c2{fill:#e0a43a}.vmap-room.c3{fill:#b57bdc}.vmap-room.c4{fill:#e06d7d}.vmap-room.c5{fill:#4bb8c9}.vmap-wall{fill:var(--text-soft)}.vmap-vwall{stroke:var(--danger);stroke-width:1;stroke-linecap:round}.vmap-nogo{fill:url(#vmap-hatch);stroke:var(--danger);stroke-width:.6}.vmap-hatch-line{stroke:var(--danger);stroke-width:1;opacity:.6}.vmap-nogo.picked{stroke-width:1.4;stroke-dasharray:2 1.2}.vmap-nogo.new{animation:fade-in var(--dur) var(--ease-out)}.vmap-nogo.drawing{animation:none;stroke-dasharray:2 1.5}.vmap-zone{fill:rgba(var(--accent-rgb),.12);stroke:var(--accent);stroke-width:.6;stroke-dasharray:2 1.5}.vmap-area{fill:rgba(var(--accent-rgb),.28);stroke:var(--accent-bright);stroke-width:.8;animation:fade-in var(--dur) var(--ease-out)}.vmap-area.drawing{animation:none;stroke-dasharray:2 1.5}.vmap-path{fill:none;stroke:#ffffff8c;stroke-width:.7;stroke-linejoin:round;stroke-linecap:round}:root[data-theme=light] .vmap-path{stroke:#0006}.vmap-label{fill:var(--text-strong);font-weight:700;text-anchor:middle;dominant-baseline:middle;paint-order:stroke;stroke:var(--bg-sunken);stroke-width:.8;pointer-events:none}.vmap-charger rect{fill:var(--ok-text);stroke:var(--bg-sunken);stroke-width:.6}.vmap-robot{transition:transform var(--dur-slow) var(--ease-out)}.vmap-robot circle{fill:var(--accent);stroke:#fff;stroke-width:.8}.vmap-robot line{stroke:#fff;stroke-width:.9;stroke-linecap:round}.vmap-target circle{fill:none;stroke:var(--accent-bright);stroke-width:.8;animation:pop-in var(--dur) var(--ease-spring)}.vmap-target circle.core{fill:var(--accent-bright);stroke:none}.vmap-spot circle{fill:var(--warn-text);stroke:var(--bg-sunken);stroke-width:.6;opacity:.9}.vacuum-map-hint{margin:8px 0 0}.vacuum-stuck{display:flex;align-items:center;gap:6px;margin:10px 0 0;color:var(--warn-text);font-size:var(--fs-small)}.vacuum-stuck svg{width:15px;height:15px;flex:none}.vacuum-week{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.vacuum-week span{display:grid;gap:2px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-control)}.vacuum-week i{color:var(--muted);font-size:var(--fs-xs);font-style:normal}.vacuum-week b{color:var(--text-strong);font-size:1.15em;font-variant-numeric:tabular-nums}.vacuum-days{height:110px;margin-bottom:12px}.vacuum-days .power-day.empty i{opacity:.25}.vacuum-entries{display:grid;gap:2px;margin:0;padding:0;list-style:none}.vacuum-entries li{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:8px 4px;border-bottom:1px solid var(--line)}.vacuum-entries li:last-child{border-bottom:0}.vacuum-entries li>span:first-child{display:grid;gap:2px;min-width:0}.vacuum-entries b{color:var(--text);font-size:var(--fs-small);font-weight:600}.vacuum-entries i{color:var(--muted);font-size:var(--fs-xs);font-style:normal}.vacuum-entries .vacuum-entry-err{color:var(--danger)}.vacuum-entries li.running b{color:var(--accent-bright)}.vacuum-entry-num{display:grid;flex:none;justify-items:end;color:var(--text);font-size:var(--fs-small);font-variant-numeric:tabular-nums}.vacuum-card .ph{align-items:center}.vacuum-card .ph>.vacuum-battery{margin-left:auto}.vacuum-card.s-cleaning .ph .ph-ico svg{animation:vacuum-spin calc(var(--loop-spin) * 3) linear infinite}.vacuum-card.s-error .ph .ph-ico{background:#dc3c3c24;color:var(--danger)}@media(prefers-reduced-motion:reduce){.vacuum-card.s-cleaning .ph .ph-ico svg{animation:none}}.vacuum-card .vacuum-actions{margin-top:4px}.vacuum-card-zones{margin:8px 0 0}.vacuum-card .vacuum-last{margin:10px 0 0}.headset-link{grid-column:2 / -1;margin-top:-8px;color:var(--muted);font-size:var(--fs-xs);font-style:normal}.headset-link.on{color:var(--ok-text)}.headset-conn{display:flex;align-items:center;gap:6px;margin:2px 0 0;color:var(--text-soft);font-size:var(--fs-small)}.headset-conn.on{color:var(--ok-text)}.headset-fw{margin:2px 0 0;color:var(--muted);font-size:var(--fs-xs);font-variant-numeric:tabular-nums}.headset-col.off h4 span{color:var(--muted)}.headset-table tr.group-start th,.headset-table tr.group-start td{border-top:1px solid var(--line-strong)}.headset-eqbars{display:inline-flex;align-items:center;gap:2px;height:24px}.headset-eqbars>span{position:relative;width:5px;height:100%}.headset-eqbars>span:before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:var(--line-strong)}.headset-eqbars i{position:absolute;left:0;right:0;bottom:50%;height:50%;border-radius:1px;background:var(--accent);transform:scaleY(var(--p, 0));transform-origin:bottom}.headset-eqbars i.neg{top:50%;bottom:auto;transform-origin:top;background:var(--accent-bright);opacity:.7}.together-tabs{margin:-6px 0 18px}.together-actions{display:flex;justify-content:flex-end;margin:0 0 12px}.together-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:16px;align-items:start}.together-card{position:relative;display:grid;gap:6px}.together-gear{position:absolute;top:12px;right:12px}.together-badge{display:inline-flex;align-items:center;gap:6px;justify-self:start;padding:3px 10px;border-radius:var(--radius-pill);background:rgba(var(--accent-rgb),.12);color:var(--accent-bright);font-size:var(--fs-xs);font-weight:600}.together-badge.box{background:rgba(var(--green-rgb),.14);color:var(--ok-text)}.together-badge svg{width:13px;height:13px}.together-notes{max-width:980px}.note-rights{display:grid;gap:6px;margin:4px 0 0;padding:0;list-style:none}.note-rights li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 10px}.note-rights li.off{opacity:.7}.note-rights .seg button{padding:4px 9px;font-size:var(--fs-xs)}.note-rights-name{color:var(--text);font-size:var(--fs-small);font-weight:600}.note-readonly{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:var(--fs-small)}.note-readonly svg{width:15px;height:15px}.list-book{display:grid;gap:12px}.list-book-amount{display:inline-flex;align-items:center;gap:8px;color:var(--text-soft)}.list-book-amount input{max-width:140px;font-size:1.2em;font-variant-numeric:tabular-nums}.backup-spin svg{width:14px;height:14px;vertical-align:-2px;animation:spin var(--loop-spin) linear infinite}.backup-server{display:grid;gap:4px;padding-top:10px;border-top:1px solid var(--line, rgba(127,127,127,.18))}.backup-server-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;font-size:var(--fs-small)}.backup-server-head b{color:var(--text-strong);font-size:var(--fs-body, 1rem)}.backup-service summary{display:grid;grid-template-columns:auto minmax(0,max-content) minmax(0,1fr) auto;align-items:center;gap:10px;padding:6px 4px;cursor:pointer;font-size:var(--fs-small);border-radius:var(--radius-control)}.backup-service summary:hover{background:rgba(var(--accent-rgb),.06)}.backup-service summary b{color:var(--text-strong)}.backup-service-meta{text-align:right}.backup-dot{width:9px;height:9px;border-radius:50%;background:var(--text-soft)}.backup-dot.ok{background:var(--ok-text)}.backup-dot.warn{background:var(--warn-text, #e0a030)}.backup-dot.bad{background:var(--danger-text, var(--danger))}.backup-dot.none{background:transparent;box-shadow:inset 0 0 0 1.5px var(--text-soft)}.backup-keep{margin:2px 0 4px 23px;font-size:var(--fs-small)}.backup-files{list-style:none;margin:0 0 6px 23px;padding:0;display:grid;gap:4px}.backup-files li{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:12px;align-items:center;font-size:var(--fs-small)}@media(max-width:560px){.backup-service summary{grid-template-columns:auto minmax(0,1fr) auto}.backup-service-meta{grid-column:2 / -1;text-align:left}.backup-files{margin-left:0}.backup-files li{grid-template-columns:minmax(0,1fr) auto}}.remote-sub{margin-left:auto;font-size:var(--fs-small)}.remote-list{margin-left:0}.remote-list li.remote-off b{color:var(--text-soft)}.remote-list .backup-dot{display:inline-block;vertical-align:1px}.remote-kill{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:4px 0 10px}.remote-kill.off{padding:8px 10px;border-radius:var(--radius-sm);background:rgba(var(--danger-rgb),.1)}.remote-kill .backup-dot{display:inline-block;vertical-align:1px}.remote-owner{display:flex;align-items:center;gap:10px;margin-top:12px}.remote-owner select{flex:1;min-width:0}.service-output{max-height:60vh;overflow:auto;margin:0;padding:10px 12px;border-radius:var(--radius-control);background:var(--bg-sunken);color:var(--text);font-family:var(--font-mono);font-size:var(--fs-small);line-height:1.45;white-space:pre-wrap;word-break:break-word}.pi-commands .dialog-cancel{font-size:var(--fs-small)}
