.topbar{position:relative;z-index:20;display:flex;align-items:center;gap:1.25rem;padding:0 .75rem 0 1.25rem;height:var(--bar-height, 52px);background:var(--glass);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid var(--rule)}.topbar .brand{display:inline-flex;align-items:center;gap:.5rem;font-weight:600;font-size:1.3rem;letter-spacing:-.01em;color:var(--primary-text);white-space:nowrap}.topbar .brand svg{color:var(--ink)}.topbar .brand-house{color:var(--ink)}.topbar .brand-app{color:var(--primary-text)}.topbar .brand:hover{text-decoration:none}.topbar .spacer{flex:1}.topbar nav,.subbar nav{display:flex;gap:.2rem;align-items:center}.topbar nav a,.subbar nav a{display:inline-flex;align-items:center;gap:.4rem;padding:0 .85rem;height:34px;border-radius:var(--pill);color:var(--ink-2);font-weight:500;white-space:nowrap}.topbar nav a:hover,.subbar nav a:hover{color:var(--ink);background:var(--sky);text-decoration:none}.topbar nav a.active,.topbar nav a.active:hover{color:var(--ink);background:var(--sky-strong);font-weight:600}.topbar .right{display:flex;align-items:center;gap:.25rem}.quiet-link{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:50%;color:var(--ink-2)}.quiet-link:hover,.quiet-link.active{background:var(--sky);color:var(--ink);text-decoration:none}.subbar{display:flex;align-items:flex-end;gap:.6rem 1.5rem;padding:1.4rem 1.5rem .2rem;max-width:var(--page-width, 1140px);margin:0 auto;width:100%;flex-wrap:wrap}.subbar h1{margin:0;font-size:2.1rem;font-weight:700;color:var(--primary-text);display:flex;align-items:baseline;gap:.6rem}.subbar h1 .sub{font-size:.95rem;font-weight:500;color:var(--ink-2)}.subbar nav{padding:3px;border-radius:var(--pill);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-edge)}.subbar nav a{font-size:.93rem;height:32px;padding:0 .85rem}.subbar nav a.active,.subbar nav a.active:hover{color:var(--primary-ink);background:var(--primary);font-weight:600}.avatar{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--sun);color:var(--sun-ink);font-weight:700;font-size:.82rem;letter-spacing:.02em;flex:none}.avatar.large{width:48px;height:48px;font-size:1.05rem}.account{position:relative}.topbar .account-button{display:grid;place-items:center;width:42px;height:42px;min-height:0;padding:0;border:0;border-radius:50%;background:transparent}.topbar .account-button:hover:not(:disabled),.topbar .account-button[aria-expanded=true]{background:var(--sky)}.account-panel{position:absolute;right:0;top:calc(100% + 8px);z-index:50;width:min(300px,calc(100vw - 2rem));display:flex;flex-direction:column;gap:.15rem;padding:.6rem;background:var(--glass-strong);-webkit-backdrop-filter:saturate(180%) blur(30px);backdrop-filter:saturate(180%) blur(30px);border:1px solid var(--glass-edge);border-radius:18px;box-shadow:0 20px 50px #00000047}.account-head{display:flex;align-items:center;gap:.75rem;padding:.4rem .5rem .7rem;border-bottom:1px solid var(--rule);margin-bottom:.3rem}.account-name{display:flex;flex-direction:column;min-width:0;flex:1}.account-name strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-name .muted{font-size:.85em}.account-rename{display:flex;gap:.3rem;align-items:center;flex:1;min-width:0}.topbar .account-rename input{flex:1;min-width:0;height:34px;padding:.25rem .6rem}.topbar .account-rename button{min-height:0}.account-panel .error{margin:0 .5rem .3rem}.account-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.35rem .5rem;color:var(--ink-2);font-weight:600}.account-languages{display:flex;gap:.2rem}.topbar .account-languages button{min-height:0;padding:.25rem .7rem;font-size:.85em;border-radius:var(--pill)}.topbar .account-languages button.active,.topbar .account-languages button.active:hover:not(:disabled){background:var(--ink);color:var(--on-ink)}.topbar .account-action{display:flex;align-items:center;gap:.6rem;width:100%;min-height:0;padding:.6rem .5rem;border:0;border-radius:var(--radius-small);background:transparent;color:var(--ink);font-weight:500;text-align:left;white-space:nowrap}.topbar .account-action:hover:not(:disabled){background:var(--sky)}.topbar .account-action svg{color:var(--ink-2);flex:none}@media(max-width:800px){.topbar{flex-wrap:wrap;gap:.4rem .8rem;height:auto;padding:.45rem .75rem .45rem 1rem}.topbar .spacer{display:none}.topbar .right{margin-left:auto}.topbar nav{order:3;width:100%;overflow-x:auto}.topbar nav a{padding:0 .75rem}.subbar{gap:.6rem 1rem;padding:1rem 1rem .2rem}.subbar h1{font-size:1.7rem}.subbar nav{overflow-x:auto;max-width:100%}}.sidebar{display:none}.sidebar nav{display:flex;flex-direction:column;gap:2px}.sidebar nav a{display:flex;align-items:center;gap:.65rem;min-height:36px;padding:.35rem .7rem;border-radius:9px;color:var(--ink);font-weight:500;font-size:.95rem;line-height:1.25}.sidebar nav a svg{color:var(--primary);flex:none}.sidebar nav a:hover{background:var(--sky);text-decoration:none}.sidebar nav a.active,.sidebar nav a.active:hover{background:var(--sky-strong);font-weight:600}.sidebar nav a .count,.topbar nav a .count{margin-left:auto;min-width:1.4rem;padding:0 .4rem;border-radius:var(--pill);font-size:.8rem;font-weight:600;color:var(--ink-2);text-align:center;font-variant-numeric:tabular-nums}.topbar nav a .count{margin-left:.1rem}.sidebar nav a .count.hot,.topbar nav a .count.hot{background:var(--sun);color:var(--sun-ink)}.sidebar-group{margin-top:1.2rem}.sidebar-group h2{display:block;margin:0 .7rem .35rem;font-size:.8rem;font-weight:700;color:var(--ink-2);letter-spacing:.01em}.sidebar-group h2 small{font-weight:500;margin-left:.3rem}@media(min-width:900px){.shell:has(>.sidebar){display:grid;grid-template-columns:var(--sidebar-width, 248px) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}.shell>.topbar{grid-column:1 / -1}.topbar .topbar-sections{display:none}.sidebar{display:flex;flex-direction:column;grid-column:1;grid-row:2;min-height:0;overflow:auto;padding:.8rem .6rem 1.5rem;background:var(--sidebar-bg);-webkit-backdrop-filter:saturate(180%) blur(30px);backdrop-filter:saturate(180%) blur(30px);border-right:1px solid var(--rule)}.shell>.content{grid-column:2;grid-row:2}.subbar .subbar-tabs{display:none}.subbar{padding-top:1.6rem}}.health .health-top{display:flex;align-items:flex-end;gap:.8rem 1.5rem;flex-wrap:wrap;max-width:1140px;margin:0 auto;width:100%;padding:1.2rem 1.5rem 0}.health .health-people{display:flex;gap:.3rem;flex-wrap:wrap}.health .health-person{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:.45rem .55rem .35rem;border-radius:16px;color:var(--ink-2);font-size:.86rem;font-weight:600;min-width:4.6rem}.health .health-person:hover{background:var(--sky);color:var(--ink);text-decoration:none}.health .health-person.active{color:var(--ink)}.health .health-person.active .health-avatar{box-shadow:0 0 0 3px var(--wall-base),0 0 0 5px var(--primary)}.health .health-person.untracked .health-avatar{opacity:.55}.health .health-avatar{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;color:#fff;font-weight:700;font-size:1.1rem;letter-spacing:.02em;background:linear-gradient(160deg,var(--icon-a),var(--icon-b));box-shadow:0 4px 10px #0000002e}.health .health-person-name{max-width:6.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.health .health-shared{margin-left:auto;display:flex;gap:.35rem;flex-wrap:wrap;align-items:center;padding-bottom:.6rem}.health .health-shared-link{display:inline-flex;align-items:center;gap:.4rem;height:34px;padding:0 .85rem;border-radius:var(--pill);font-size:.9rem;font-weight:600;color:var(--ink-2);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-edge)}.health .health-shared-link:hover{color:var(--ink);text-decoration:none;background:var(--glass-strong)}.health .health-shared-link.active{color:var(--primary-text);background:var(--primary-bg)}.health .health-shared-link svg{color:var(--primary-text)}.health .subbar{padding-top:.9rem}.health .page-head{display:flex;align-items:center;justify-content:space-between;gap:.8rem;flex-wrap:wrap;margin-bottom:1.1rem}.health .page-head h1{margin:0}.health .warning{margin-top:2rem;color:var(--ink-2);font-size:.85em;font-style:italic}.health .health-pane-actions{margin-top:1rem}.health .icon-btn.danger{color:var(--danger)}.health .pane .segmented,.health .pane-toolbar select{height:34px}.health .pane-toolbar select{padding:.2rem .6rem}.health .toolbar-check{font-weight:500;color:var(--ink)}.health .hero-actions{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1rem;position:relative}.health .hero-actions button,.health .hero-actions .linkbtn{background:#fff3;color:#fff;min-height:36px;padding:.35rem .85rem;font-size:.9rem}.health .hero-actions button:hover:not(:disabled),.health .hero-actions .linkbtn:hover{background:#ffffff52;color:#fff}.health .hero-actions button.hero-primary,.health .hero-actions button.hero-primary:hover:not(:disabled){background:#fff;color:#9a3412}.health .hero-link{position:relative;margin:.8rem 0 0;font-size:.82rem;color:#ffffffe6}.health .hero-link code{word-break:break-all}.health .rrow.done .rrow-title{color:var(--ink-2);text-decoration:line-through;text-decoration-color:var(--rule-strong)}.health .tile-foot.good,.health .health-calm{color:var(--good);font-weight:600}.health .health-calm{margin:.2rem 0 .4rem}.health .health-big-state{display:flex;flex-direction:column;gap:.3rem;margin-top:.4rem;color:var(--ink-2)}.health .health-big-state.good .tile-big{color:var(--good)}.health button.unfold{align-self:flex-start;margin-top:.3rem}.health .health-stat .stat-value small{font-size:.6em;color:var(--ink-2);font-weight:600}.health .health-stat .trace{width:100%;height:26px;margin:.15rem 0}.health .health-week{margin-top:.2rem}.health .mini-weeks{display:flex;gap:6px;height:84px;align-items:stretch;margin-top:auto}.health .mini-week{flex:1;display:flex;align-items:flex-end}.health .mini-week>span{width:100%;border-radius:5px;background:linear-gradient(180deg,var(--icon-a),var(--icon-b))}.health .mini-week>span.none{background:var(--sky-strong)}.health .supp-glyph,.health .set-glyph{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:color-mix(in srgb,var(--icon-a) 24%,transparent);color:var(--tone-text, var(--primary-text))}.health .supp-glyph.planned{background:var(--sky);color:var(--ink-2)}.health .supp-glyph.stopped{background:var(--sky);color:var(--ink-3)}.health .supp-days{min-width:2.8rem;text-align:right}.health .drive .gauge-col{width:24%;min-width:8rem}.health .range-cell{display:flex;align-items:center;gap:.7rem}.health .range-cell small{color:var(--ink-2);white-space:nowrap;font-variant-numeric:tabular-nums}.health .range-bar{position:relative;display:block;width:120px;height:6px;border-radius:3px;background:var(--sky-strong);flex:none}.health .range-bar .range-ok{position:absolute;top:0;bottom:0;border-radius:3px;background:color-mix(in srgb,var(--good) 50%,transparent)}.health .range-bar i{position:absolute;top:-3px;width:12px;height:12px;margin-left:-6px;border-radius:50%;background:var(--good);border:2px solid var(--sheet)}.health .range-bar.low i,.health .range-bar.high i{background:var(--danger)}.health td.state,.health span.state{font-weight:600;white-space:nowrap;display:inline-flex;align-items:center;gap:.35rem}.health td.state{display:table-cell}.health .state.low,.health .state.high{color:var(--danger)}.health .state.ok{color:var(--good)}.health .drive tr.out td.value{color:var(--danger);font-weight:700}.health .drive td.value small,.health .drive td small.muted{color:var(--ink-2);font-weight:500}.health .lab-group{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.health .lab-group-actions{display:inline-flex;gap:.1rem}.health .lab-group-actions .icon-btn svg{width:18px;height:18px}.health .lab-note{display:block;font-size:.85rem;font-weight:400;color:var(--ink-2);margin-top:.15rem}.health .chart-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:.9rem;margin-bottom:.6rem}.health .chart-card{background:var(--sky);border-radius:16px;padding:.8rem 1rem .6rem}.health .chart-card-head{display:flex;justify-content:space-between;align-items:baseline;gap:.6rem;margin-bottom:.3rem}.h-chart{position:relative;touch-action:pan-y}.h-chart svg{width:100%;height:auto;display:block;overflow:visible}.h-chart .band{fill:var(--good);opacity:.14}.h-chart .gridline{stroke:var(--rule);stroke-width:1}.h-chart .tick{fill:var(--ink-2);font-size:11px;font-variant-numeric:tabular-nums}.h-chart .line{fill:none;stroke:var(--tone-text, var(--primary));stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round}.h-chart .dot{fill:var(--tone-text, var(--primary));stroke:var(--sheet);stroke-width:2}.h-chart .guide{stroke:var(--ink-3);stroke-width:1}.h-chart .end{fill:var(--ink);font-size:12px;font-weight:700}.h-chart .bubble{position:absolute;transform:translate(-50%,calc(-100% - 12px));background:var(--ink);color:var(--on-ink);border-radius:10px;padding:.3rem .6rem;font-size:.82em;pointer-events:none;display:flex;flex-direction:column;white-space:nowrap;line-height:1.3;z-index:2}.trace{width:96px;height:26px;flex:none}.trace path{fill:none;stroke:var(--tone-text, var(--primary));stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.trace circle{fill:var(--tone-text, var(--primary))}.health .measure-tile .tile-big{margin-bottom:.2rem}.health dl.profile{display:grid;grid-template-columns:max-content 1fr;margin:0;font-size:.93rem}.health dl.profile dt,.health dl.profile dd{padding:.45rem 0;border-bottom:1px solid var(--rule);margin:0}.health dl.profile dt{color:var(--ink-2);font-weight:600;padding-right:1rem}.health dl.profile dt:last-of-type,.health dl.profile dd:last-of-type{border-bottom:0}.health dl.profile dd.muted{color:var(--ink-3)}.health details.values{margin-top:auto;font-size:.9em}.health details.values summary{cursor:pointer;color:var(--tone-text, var(--primary-text));font-weight:600;padding:.3rem 0}.health .journal-date{font-size:.8rem;font-weight:700;color:var(--tone-text, var(--primary-text));font-variant-numeric:tabular-nums;min-width:2.8rem;text-align:left}.health .rrow.closed{opacity:.6}.health .long-text,pre.notes{white-space:pre-wrap;font-family:inherit;font-size:.93em;line-height:1.55}.health .sport-week-body{display:flex;gap:1.2rem 2rem;flex-wrap:wrap;align-items:flex-end;flex:1}.health .sport-week-now{display:flex;flex-direction:column;gap:1rem;align-items:flex-start}.health .sport-links{display:flex;flex-direction:column;gap:1.4rem}.health .sport-links .home-tile{flex:1;justify-content:center}.health .sport-links .home-tile-head{margin:0}.health .weeks{flex:1;min-width:240px;display:grid;grid-template-columns:repeat(8,1fr);gap:.5rem;height:150px;align-items:end}.health .week{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:.25rem}.health .week .bar-fill{width:min(26px,70%);background:linear-gradient(180deg,var(--icon-a),var(--icon-b));border-radius:6px;min-height:0}.health .week .value{font-weight:700;font-size:.9em}.health .week .label{color:var(--ink-2);font-size:.75em;font-variant-numeric:tabular-nums;border-top:1px solid var(--rule);width:100%;text-align:center;padding-top:.2rem}.health .drive button.linkish{background:none;border:0;padding:0;min-height:0;font-weight:600;color:var(--ink);text-align:left;border-radius:6px}.health .drive button.linkish:hover:not(:disabled){background:none;text-decoration:underline;text-decoration-color:var(--rule-strong)}.health .change{font-weight:700}.health .change.up{color:var(--good)}.health .change.down{color:var(--earth)}.health .workout-note{list-style:none;color:var(--ink-2);font-size:.88rem;padding:.1rem .6rem .3rem}.health .photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(175px,1fr));gap:.9rem;margin:.5rem 0 .4rem}.health .photo-grid button.machine-card,.health .photo-grid button.exercise-card{display:flex;flex-direction:column;align-items:stretch;gap:.45rem;padding:.5rem;min-height:0;border:0;border-radius:16px;background:var(--sky);color:var(--ink);text-align:left;font-weight:inherit;line-height:1.25}.health .photo-grid button.machine-card:hover:not(:disabled),.health .photo-grid button.exercise-card:hover:not(:disabled){background:var(--sky-strong)}.health .photo-grid button.machine-card:disabled{opacity:1;cursor:default}.health .photo-grid .text{display:flex;flex-direction:column;gap:.15rem;padding:0 .3rem .3rem}.health .photo-grid .text small{font-size:.8rem}.health .photo-grid .exercise-card img,.health .photo-grid .exercise-card .no-img{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:12px;background:var(--glass-strong)}.health .photo-grid .no-img{display:grid;place-items:center;color:var(--ink-3)}.health .stack-pill{align-self:flex-start;margin-top:.2rem;font-size:.75rem;font-weight:600;padding:.1rem .5rem;border-radius:var(--pill);background:var(--glass-strong);color:var(--ink-2)}.health .more-row{display:flex;justify-content:center;margin-top:1rem}.thumb{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:12px;background:var(--glass-strong);display:grid;place-items:center;color:var(--ink-3)}.health .cell-sub{display:block;color:var(--ink-2);font-size:.82rem}.health details.rule-group{border-top:1px solid var(--rule);padding:.55rem 0}.health details.rule-group:first-child{border-top:0}.health details.rule-group summary{cursor:pointer;font-weight:600}.health details.rule-group summary .count{color:var(--ink-2);font-weight:500;margin-left:.3rem}.health .rules{margin:.5rem 0 0;padding-left:1.1rem;display:flex;flex-direction:column;gap:.3rem;font-size:.92em}.health .forms-text{max-height:30rem;overflow:auto}.badge.actor-person{background:var(--primary-bg);color:var(--primary-text)}.badge.actor-service{background:var(--sun-bg);color:var(--sun-ink)}.component-line{display:grid;grid-template-columns:1fr auto auto auto;gap:.35rem;align-items:center;border-bottom:1px dashed var(--rule);padding-bottom:.5rem}.component-line select:first-child{min-width:0}.component-line .form{grid-column:1 / -1}.marker-line{display:grid;grid-template-columns:1fr 5rem 4.5rem 4rem 4rem;gap:.3rem;align-items:center;border-bottom:1px dashed var(--rule);padding-bottom:.45rem}.marker-line input{width:100%}.marker-line select{grid-column:1 / 5}dialog.record{width:min(560px,calc(100vw - 2rem))}.composition{padding-left:1.2rem}.set-summary{list-style:none;margin:.4rem 0 0;padding:0;display:flex;flex-direction:column;gap:.15rem}.set-summary li{display:flex;gap:.5rem;align-items:center}.set-summary li>span:first-of-type{font-weight:600}.light-panel{background:var(--primary-bg);border-radius:var(--radius-small);padding:.6rem .8rem}.machine-choices{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.45rem}.machine-choice{flex-direction:column;gap:.3rem;padding:.4rem;border-radius:14px;font-size:.85em;text-align:center;line-height:1.2}img.preview{max-width:100%;border-radius:var(--radius-small)}.exercise-images{display:grid;grid-template-columns:1fr 1fr;gap:.4rem}.exercise-images img{width:100%;border-radius:10px}.exercise-image{position:relative}.exercise-image button{position:absolute;top:4px;right:4px;background:var(--sheet)}textarea.code{font-family:ui-monospace,Menlo,monospace;font-size:.82em}@media(max-width:800px){.health .health-top{padding:.9rem 1rem 0;gap:.5rem}.health .health-people{flex-wrap:nowrap;overflow-x:auto;width:100%}.health .health-avatar{width:44px;height:44px;font-size:.95rem}.health .health-person{min-width:4rem}.health .health-shared{margin-left:0;padding-bottom:0}.health .health-shared-link span{display:none}.health .health-shared-link{width:36px;padding:0;justify-content:center}.health .chart-cards{grid-template-columns:1fr}.health .drive .gauge-col{display:none}.health .weeks{height:120px}.health .photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.marker-line{grid-template-columns:1fr 4.5rem 4rem}.marker-line input:nth-of-type(4),.marker-line input:nth-of-type(5){grid-row:2}.marker-line select{grid-column:1 / -1}}.launcher{position:relative}.launcher-button{width:40px;height:40px;padding:0;justify-content:center;border-radius:50%}.launcher-panel{position:absolute;right:0;top:calc(100% + 8px);z-index:50;width:min(360px,calc(100vw - 2rem));display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem .2rem;padding:1rem .8rem .8rem;background:var(--glass-strong, #fff);-webkit-backdrop-filter:saturate(180%) blur(30px);backdrop-filter:saturate(180%) blur(30px);border:1px solid var(--glass-edge, transparent);border-radius:22px;box-shadow:0 24px 60px #0000004d}.launcher-tile{display:flex;flex-direction:column;align-items:center;gap:.45rem;padding:.6rem .3rem;border-radius:14px;font-size:.87em;font-weight:500;text-align:center;color:var(--ink)}.launcher-tile:hover{background:var(--sky);text-decoration:none}.launcher-tile.here{font-weight:700}.launcher-picto{display:grid;place-items:center;width:58px;height:58px;border-radius:14px;font-size:1.8rem;line-height:1;background:linear-gradient(160deg,var(--tint-a, #8e9aab),var(--tint-b, #5b6676));box-shadow:0 6px 14px #00000038;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif}.launcher-tile.here .launcher-picto{box-shadow:0 0 0 3px var(--glass-strong, #fff),0 0 0 5px var(--ink)}.page .pane+.pane,.page .lib-results>.pane+.pane{margin-top:1.2rem}.page .lib-back{display:inline-flex;align-items:center;gap:.2rem;font-weight:600;color:var(--tone-text, var(--primary-text));padding:.3rem .4rem;border-radius:8px}.page .lib-back:hover{background:var(--sky);text-decoration:none}.lib-block{display:block}.page.lib-search{max-width:960px}.page .lib-spotlight{text-align:center;padding:2.2rem 2rem 1.6rem}.page .lib-spotlight-head{display:flex;flex-direction:column;align-items:center;gap:.5rem}.page .lib-spotlight-head .pane-title{font-size:2.1rem}.page .lib-spotlight-head .pane-sub{max-width:38rem;justify-content:center;margin:0}.page .lib-searchbar{display:flex;gap:.6rem;align-items:center;max-width:680px;margin:1.3rem auto .9rem}.page .lib-searchbar .search-field.wide{flex:1;height:50px;border-radius:14px;background:var(--field);border:1px solid var(--rule);box-shadow:var(--glass-shadow)}.page .lib-searchbar .search-field.wide input{height:46px;font-size:1.12rem}.page .lib-searchbar .search-field.wide svg{width:20px;height:20px}.page .lib-searchbar>button.primary{height:50px;padding:0 1.4rem}.page .lib-filters{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;justify-content:center}.page .lib-filters .segmented{max-width:100%;overflow-x:auto}.page .lib-spotlight .lib-disk,.page .lib-spotlight .lib-reading{text-align:left;max-width:680px;margin:1rem auto 0}.page .lib-ideas{text-align:center;margin:1.3rem 0 1rem}.page .lib-status{margin:1.1rem .3rem .6rem}.page .lib-shelves{margin-top:.4rem}.page .lib-shelf{display:flex;align-items:center;gap:.85rem;padding:1rem 1.1rem;border-radius:18px;color:var(--ink);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-edge);box-shadow:var(--glass-shadow)}.page .lib-shelf:hover{text-decoration:none;background:var(--glass-strong)}.page .lib-shelf-text{display:flex;flex-direction:column;min-width:0;text-align:left}.page .lib-shelf-text strong{font-size:1.05rem}.page .lib-results.waiting{opacity:.6;transition:opacity .2s}.page .lib-group{padding:1.1rem 1.4rem .8rem}.page .lib-group-head{align-items:center;margin-bottom:.3rem}.page .lib-result{align-items:flex-start}.page .lib-result .rrow-lead{padding-top:.85rem;color:var(--tone-text, var(--primary-text))}.page .lib-result .rrow-body{align-items:flex-start}.page .lib-result-title{font-weight:600}.page .lib-result .rrow-body:hover .lib-result-title{color:var(--tone-text, var(--primary-text))}.page .lib-result-meta{display:flex;flex-wrap:wrap;gap:.3rem}.page .lib-excerpt{display:block;margin:.3rem 0 0;color:var(--ink-2);font-size:.9rem;overflow-wrap:anywhere;line-height:1.45}.page .lib-excerpt mark{background:var(--primary-bg);color:var(--ink);border-radius:4px;padding:0 .12rem}.page .lib-result .rrow-trail{padding-top:.2rem}.page .lib-fulltext .chips{margin:.2rem 0 .4rem}.page .lib-fulltext a.pill{text-decoration:none}.page .lib-fulltext a.pill:hover{background:var(--sky-strong)}.lib-disk,.lib-reading{display:flex;gap:.6rem;align-items:flex-start;border-radius:14px;padding:.7rem .9rem;margin:.6rem 0}.lib-disk{background:var(--earth-bg);color:var(--earth)}.lib-reading{background:var(--primary-bg);color:var(--primary-text)}.lib-disk svg,.lib-reading svg{flex:none;margin-top:.15rem}.lib-spin{animation:lib-spin 1.2s linear infinite}@keyframes lib-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.lib-spin{animation:none}}.page .lib-shelf-totals{margin-bottom:.2rem}.page .lib-shelf-totals a.total{color:var(--ink)}.page .lib-shelf-totals a.total:hover{background:var(--sky-strong);text-decoration:none}.page .lib-shelf-pane{scroll-margin-top:1rem}.page .lib-subgroup{margin-top:1.1rem}.page .lib-heads{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.7rem;margin-top:.4rem}.page .lib-head{background:var(--sky);border-radius:16px;padding:.85rem .95rem;display:flex;flex-direction:column;gap:.4rem;color:var(--ink);text-decoration:none;border:1px solid transparent;transition:background .15s}.page .lib-head:hover{background:var(--sky-strong);text-decoration:none}.page .lib-head-title{font-weight:650;display:flex;gap:.6rem;align-items:flex-start;line-height:1.3}.page .lib-head-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;flex:none;color:#fff;background:linear-gradient(160deg,var(--icon-a),var(--icon-b))}.page .lib-head-icon svg{width:19px;height:19px}.page .lib-head-title>span:last-child{padding-top:.3rem}.page .lib-head-desc{color:var(--ink-2);font-size:.86rem;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.page .lib-head-meta{display:flex;gap:.3rem;flex-wrap:wrap;margin-top:auto}.page .lib-head-meta .badge{font-size:.72rem;background:var(--glass-strong)}.lib-state{font-weight:600}.lib-state-indexed{color:var(--good)}.lib-state-titles_excluded{color:var(--ink-2)}.lib-state-error{color:var(--danger)}.page .lib-file{overflow-wrap:anywhere}.page .lib-total-date{font-size:1.05rem}.page .lib-add-channel{gap:.5rem}.page .lib-add-channel .lib-url{flex:1 1 22rem;max-width:34rem}.page .lib-channels tr.stopped td:not(:last-child){opacity:.55}.page .lib-channel-title{font-weight:600;color:var(--ink);overflow-wrap:anywhere}.page a.lib-channel-title:hover{color:var(--tone-text, var(--primary-text))}.page .lib-state-cell{display:inline-flex;align-items:center;gap:.45rem}.page .lib-channel-state-mobile{display:none}.page .lib-progress{min-width:9rem}.page .lib-progress .meter{margin-top:.35rem;max-width:12rem}.lib-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;flex:none;background:var(--primary-bg);display:block}.lib-avatar.empty{display:grid;place-items:center;color:var(--primary-text)}.lib-avatar.large{width:64px;height:64px;box-shadow:0 8px 18px #00000038}.page table.drive td.lead:has(.lib-avatar){width:3rem}.page .lib-channel-description{max-width:860px;white-space:pre-line;display:-webkit-box;-webkit-line-clamp:4;line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;margin:.4rem 0 1rem}.page .lib-video-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}.page .lib-video-card{display:flex;flex-direction:column;gap:.3rem;color:var(--ink);text-decoration:none;min-width:0;padding:.4rem;border-radius:16px}.page .lib-video-card:hover{text-decoration:none;background:var(--sky)}.page .lib-video-card:hover .lib-video-title{color:var(--tone-text, var(--primary-text))}.lib-thumb{position:relative;aspect-ratio:16 / 9;border-radius:12px;overflow:hidden;background:var(--sky-strong);display:grid;place-items:center;color:var(--ink-2)}.lib-thumb img{width:100%;height:100%;object-fit:cover}.lib-duration{position:absolute;right:6px;bottom:6px;background:#000000c7;color:#fff;font-size:.75rem;font-weight:700;padding:.05rem .35rem;border-radius:6px}.lib-video-title{font-weight:600;font-size:.93rem;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.page.lib-watch{max-width:1000px}.page .lib-player{width:100%;aspect-ratio:16 / 9;background:#000;border-radius:14px;display:block}.page .lib-video-heading{margin:1rem 0 .5rem;font-size:1.45rem;display:block}.page .lib-video-meta{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.6rem}.page .lib-texts{margin-top:.4rem}.page .lib-texts .rrow{display:block;padding-top:.2rem;padding-bottom:.2rem;border-bottom:1px solid var(--rule);border-radius:0}.page .lib-texts .rrow:last-child{border-bottom:0}.page .lib-text-block summary{cursor:pointer;font-weight:700;padding:.7rem 0}.lib-free-text{white-space:pre-line;overflow-wrap:anywhere;margin:0 0 .8rem;line-height:1.55}@media(max-width:800px){.page .lib-spotlight{padding:1.4rem 1rem 1.1rem}.page .lib-spotlight-head .pane-title{font-size:1.6rem}.page .lib-searchbar{flex-wrap:wrap}.page .lib-searchbar>button.primary{width:100%;justify-content:center}.page .lib-filters{justify-content:flex-start}.page .lib-group{padding:.9rem .9rem .6rem}.page .lib-channel-state-mobile{display:flex;align-items:center;gap:.35rem;color:var(--ink-2);margin-top:.15rem}.page .lib-progress{min-width:6rem}.page .lib-video-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.6rem}}.sig-dot{display:inline-block;width:.72em;height:.72em;border-radius:50%;flex:none;background:var(--good)}.sig-dot.critical{background:var(--danger)}.sig-dot.notable{background:#e07b24}.sig-dot.minor{background:var(--sun)}.sig-dot.stale{background:var(--rule-strong)}.sig-dot.recall{background:var(--ink-3)}.sig-old{color:var(--earth)}.sig-calm{color:var(--good);font-weight:600;margin:.3rem 0 .6rem}.sig-ok{color:var(--good)}.sig-block{display:block}.sig-highlights{list-style:none;padding:0;margin:0 0 .4rem;display:flex;flex-direction:column;gap:.4rem}.sig-highlights li{display:flex;gap:.6rem;align-items:baseline;border-radius:12px;padding:.55rem .8rem;background:var(--sky);font-weight:600;line-height:1.35}.sig-highlights li.critical{background:var(--danger-bg);color:var(--critical-text)}.sig-highlights li.notable{background:var(--notable-bg);color:var(--notable-text)}.sig-highlights li.minor{background:var(--sun-bg);color:var(--sun-ink)}.sig-highlights.big li{font-size:1.02em;padding:.7rem .95rem}.home-tile.sig-tile .tile-action .sig-dot,.home-tile.sig-source .tile-action .sig-dot{width:12px;height:12px;margin-right:.3rem}.home-tile.sig-tile .rrow-trail{font-weight:500}.home-tile.sig-source{scroll-margin-top:1rem}.sig-tile-h3{font-size:.95rem;margin:.6rem 0 0}.sig-km{font-weight:700;font-variant-numeric:tabular-nums;color:var(--ink);min-width:2.2rem;text-align:right}.page.signals .sig-home{margin-bottom:1.4rem}.page.signals .pane+.pane{margin-top:1.4rem}.page.signals .sig-watch .tile-sub{max-width:44rem}.sig-notice{background:var(--earth-bg);color:var(--earth);border-radius:12px;padding:.6rem .85rem;font-weight:600;margin:0 0 .4rem}.sig-calm-block{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;padding:1rem 0}.sig-calm-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--good-bg);color:var(--good)}.sig-calm-icon svg{width:30px;height:30px}.sig-calm-block .sig-calm{font-size:1.1rem;margin:0}.sig-matched{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:.8rem;margin-top:.6rem}.sig-recall-card{background:var(--sky);border-radius:16px;padding:.9rem 1rem}.sig-recall-card .grow{flex:1;min-width:12rem}.sig-thumb{width:72px;height:72px;object-fit:cover;border-radius:var(--radius-small);flex:none;background:var(--sky)}.page.signals .sig-recent tr.sig-closed td{color:var(--ink-2)}.sig-product{font-weight:600}.badge.sig-recall{text-decoration:none}.badge.sig-recall.critical{background:var(--danger);color:#fff}.badge.sig-recall.notable{background:var(--notable-bg);color:var(--notable-text)}.badge.sig-recall.minor{background:var(--sun-bg);color:var(--sun-ink)}td .badge.sig-recall,td .badge{margin-left:.4rem}.sig-swatch{display:inline-block;width:.8em;height:.8em;border-radius:3px;vertical-align:-.05em;background:var(--rule-strong);flex:none}.sig-swatch.big{width:16px;height:16px;border-radius:5px}.sig-swatch.green{background:#4caf6d}.sig-swatch.yellow{background:#f2d024}.sig-swatch.orange{background:#f08a1c}.sig-swatch.red{background:#d8342a}.sig-days{gap:.55rem}.sig-day{background:var(--sky);border-radius:12px;padding:.6rem .8rem;border-left:5px solid #4caf6d}.sig-day.yellow{border-left-color:#f2d024}.sig-day.orange{border-left-color:#f08a1c}.sig-day.red{border-left-color:#d8342a}.sig-day p{margin:.2rem 0 0}.sig-day-head{display:flex;align-items:center;gap:.45rem}.sig-day-head .muted{margin-left:auto;font-size:.9em}.sig-phen{margin:.35rem 0 0;padding-left:0;list-style:none;font-size:.92em}.sig-phen li{display:flex;align-items:center;gap:.4rem}.sig-risks{margin:0;padding-left:1.1rem;columns:2;column-gap:1.4rem;font-size:.93em}.sig-risks li{break-inside:avoid;padding:.1rem 0}.sig-risks li.sub{color:var(--ink-2);font-size:.92em;margin-left:.8rem}.page.signals .sig-settings .grow{flex:1;min-width:14rem}@media(max-width:640px){.sig-risks{columns:1}.sig-matched{grid-template-columns:1fr}}.page.signals .home-tiles{align-items:start}.page.signals .sig-km{display:inline-block;min-width:3.6rem;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.page.signals .sig-more{align-self:flex-start;margin-top:.3rem}.pantry .alerts li.notable{border-left-color:var(--danger)}.pantry .alerts li.minor{border-left-color:var(--sun)}.pantry .alerts li.notable svg{color:var(--danger)}.pantry .lots td.name{font-weight:600}.pantry .lots td.name small{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:46rem;color:var(--ink-2);font-weight:500}.pantry .lots td.gestures{white-space:nowrap;text-align:right}.pantry .lots td.date,.pantry .lots td.num{white-space:nowrap}.pantry .lots td.parts{display:flex;flex-direction:column;align-items:flex-end;gap:.35rem;min-width:19rem}.pantry .lots td.parts .part{display:flex;align-items:center;gap:.4rem;flex-wrap:nowrap;justify-content:flex-end;white-space:nowrap}.pantry .lots td.parts input.qty{width:5rem;text-align:right}.pantry .lots td.gestures button{margin-left:.25rem}.pantry .lots tr.clickable{cursor:pointer}.pantry .lots .item-name{padding:0;font-weight:600;color:var(--ink)}.pantry .badge.expired{background:var(--danger);color:#fff}.pantry .badge.expiring{background:var(--earth-bg);color:var(--earth)}.pantry .badge.rotate{background:var(--sun);color:var(--sun-ink)}.pantry .badge.undated{background:var(--earth-bg);color:var(--earth)}.pantry .badge.agent{background:var(--primary-bg);color:var(--primary-text)}.pantry .receipt-line{border:2px solid var(--rule);border-radius:var(--radius-small);padding:.7rem .8rem;display:flex;flex-direction:column;gap:.5rem}.pantry .receipt-line .head{display:flex;align-items:center;gap:.5rem}.pantry .receipt-line .head .grow{flex:1}.pantry .receipt-line .found{color:var(--primary-text);font-weight:600;font-size:.9em}.pantry .receipt-line .unknown{color:var(--earth);font-weight:600;font-size:.9em}.pantry .receipt-line input.qty{width:7rem}.pantry .holds{display:inline-grid;place-items:center;width:1.6rem;height:1.6rem;border-radius:50%;font-weight:800}.pantry .holds.yes{background:var(--primary-bg);color:var(--primary-text)}.pantry .holds.no{background:var(--danger-bg);color:var(--danger)}.pantry .hero-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:1.1rem;position:relative}.pantry .hero-actions button.hero-primary,.pantry .hero-actions button.hero-primary:hover:not(:disabled){background:#fff;color:#9a3412}.pantry .hero-actions .linkbtn.hero-secondary{background:#fff3;color:#fff}.pantry .hero-actions .linkbtn.hero-secondary:hover{background:#ffffff4d}.pantry .axes-tile .rrow-trail{gap:.8rem}.pantry .axes-tile .rrow-trail .meter{width:180px}.pantry .axis-days{display:flex;flex-direction:column;align-items:flex-end;min-width:4.2rem;font-size:1.05rem;font-weight:700;color:var(--ink)}.pantry .rrow-trail.warn .axis-days{color:var(--earth)}.pantry .rrow-trail.bad .axis-days{color:var(--danger)}.pantry .axis-days small{font-size:.72rem;font-weight:500;color:var(--ink-2)}.pantry .rrow.comfort .rrow-title{color:var(--ink-2)}.pantry .contributions{list-style:none;margin:0;padding:0 0 .7rem;color:var(--ink-2);font-size:.9em}.pantry .contributions li{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px dashed var(--rule);padding:.2rem 0;font-variant-numeric:tabular-nums}.pantry .contributions li:last-child{border-bottom:0}.pantry .buy-group+.buy-group{margin-top:.9rem}.pantry .buy-group .rgroup-head h3{font-size:1rem}.pantry .buy-group .rgroup-count{color:var(--earth);font-weight:600;font-size:.82rem}.pantry .buy-group .rrow{min-height:42px}.pantry .buy-group .rrow-body{min-height:40px;padding:.35rem 0}.pantry .pane-toolbar select.toolbar-select{height:34px;border:0;border-radius:10px;background:var(--sky);padding:0 .6rem;font-size:.93rem;max-width:14rem}.pantry .pane-toolbar .back-link{background:transparent;color:var(--tone-text, var(--primary-text));padding-left:.4rem}.pantry .pane-toolbar .back-link:hover{background:var(--sky)}.pantry table.drive td.gestures{white-space:nowrap;text-align:right}.pantry table.drive td.gestures button.icon-btn{width:32px;height:32px;margin-left:.1rem;vertical-align:middle}.pantry table.drive td.gestures button.icon-btn svg{width:18px;height:18px}.pantry table.drive td.date,.pantry table.drive td.num{white-space:nowrap}.pantry table.drive td.name{font-weight:600}.pantry table.drive strong.down{color:var(--danger)}.pantry table.drive strong.up{color:var(--good)}.pantry .lots .item-name{padding:0;font-weight:600;color:var(--ink);min-height:0}.pantry .dates-pane .rrow-trail{flex-wrap:wrap;justify-content:flex-end;max-width:60%}.pantry .dates-pane .rrow-trail .when{margin-right:.3rem}.pantry .parts{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem}.pantry .parts .part{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.pantry .parts input.qty{width:5rem;text-align:right}.pantry .pane-section>.help{margin-top:.4rem}.pantry .chart-card{background:var(--sky);border-radius:16px;padding:1rem 1.1rem .8rem}.pantry .kit-page .pane .actions.prepare{margin-top:.8rem}.pantry .kit-line.packed .rrow-title{text-decoration:line-through;text-decoration-color:var(--ink-3);color:var(--ink-2)}.pantry .kit-line button.icon-btn.remove{width:30px;height:30px;color:var(--ink-2)}.pantry .kit-line button.icon-btn.remove svg{width:16px;height:16px}.pantry details.kit-tools{margin-top:1.2rem;border-top:1px solid var(--rule);padding-top:.8rem;display:block}.pantry details.kit-tools>summary{cursor:pointer;font-weight:600;color:var(--tone-text, var(--primary-text));list-style:none}.pantry details.kit-tools>summary::-webkit-details-marker{display:none}.pantry details.kit-tools[open]>summary{margin-bottom:.7rem}.pantry details.kit-tools form+form{margin-top:.7rem}.pantry .kit-tools select{max-width:18rem}.pantry .kit-tools input.qty{width:5rem}.pantry .kit-page .pane+.pane{margin-top:1.2rem}.pantry .household .avatar{width:32px;height:32px;font-size:.8rem}.pantry .needs td input{width:5.5rem;height:34px;text-align:right}@media(max-width:800px){.pantry .axes-tile .rrow-trail .meter{width:70px}.pantry .dates-pane .rrow-trail{max-width:55%}.pantry table.drive td.gestures button.small{padding:.3rem .55rem}}.pantry .home-tiles>.hero-tile{align-self:start}.pantry .home-tiles>.axes-tile{grid-column:1 / -1}.ppl-avatar{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;flex:none;font-size:.8rem;font-weight:700;letter-spacing:.02em;color:#fff;background:linear-gradient(160deg,#8a9bff,#4a4fd6)}.ppl-avatar.admin{background:linear-gradient(160deg,#f08a55,#c2410c)}.ppl-avatar.child{background:linear-gradient(160deg,#6fd08a,#2f8a4e)}.ppl-avatar.off{background:var(--sky-strong);color:var(--ink-2)}.page.ppl table.accounts td{vertical-align:middle}.page.ppl table.accounts td.lead{width:3rem}.page.ppl table.accounts tr.inactive td{color:var(--ink-2)}.page.ppl .ppl-sub{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center;color:var(--ink-2);font-size:.85rem;margin-top:.1rem}.page.ppl .ppl-sub .badge{font-size:.72rem}.page.ppl .ppl-lines{display:flex;flex-direction:column;gap:.05rem;overflow-wrap:anywhere}.page.ppl table.accounts td.actions{white-space:nowrap;text-align:right}.page.ppl table.accounts td.actions .icon-btn{width:32px;height:32px}.page.ppl table.accounts td.actions .icon-btn svg{width:18px;height:18px}.page.ppl table.accounts td.actions button.icon-btn.danger{color:var(--danger)}.page.ppl table.accounts td.actions button.icon-btn.danger:hover:not(:disabled){background:var(--danger-bg)}.page.ppl .pane .banner{margin:.4rem 0 .6rem}.page.ppl .ppl-legend{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap;padding:0 .6rem}.page.ppl .ppl-level{display:inline-flex;align-items:center;padding:.15rem .6rem;border-radius:var(--pill);font-size:.8rem;font-weight:600;background:var(--sky);color:var(--ink-2)}.page.ppl .ppl-level.level-read{background:var(--sky-strong);color:var(--ink)}.page.ppl .ppl-level.level-write{background:var(--primary-bg);color:var(--primary-text)}.page.ppl .ppl-level.level-admin{background:var(--primary);color:var(--primary-ink)}.page.ppl-rights .pane+.pane{margin-top:1.4rem}.page.ppl .ppl-grid-wrap{overflow:auto;max-height:70vh;margin:.8rem -.6rem 0;border-radius:12px}.page.ppl table.grid-table{border-collapse:separate;border-spacing:0}.page.ppl table.grid-table thead th{position:sticky;top:0;z-index:2;background:var(--glass-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.page.ppl table.grid-table th.app{text-align:center;white-space:nowrap}.page.ppl table.grid-table th.person{position:sticky;left:0;z-index:1;text-align:left;background:var(--glass-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);font-weight:600;color:var(--ink);font-size:.95rem;white-space:nowrap;border-bottom:1px solid var(--rule);padding:.5rem .8rem .5rem .6rem}.page.ppl table.grid-table thead th.person{z-index:3;font-size:.8rem;color:var(--ink-2)}.page.ppl .ppl-who{display:flex;align-items:center;gap:.6rem}.page.ppl .ppl-who small{display:block;color:var(--ink-2);font-weight:500;font-size:.8rem}.page.ppl table.grid-table td.cell{text-align:center;vertical-align:middle}.page.ppl table.grid-table tbody tr:hover td{background:var(--sky)}.page.ppl table.grid-table tbody tr td:last-child{border-radius:0}.page.ppl table.grid-table select{height:32px;padding:.1rem 1.6rem .1rem .7rem;font-size:.85rem;font-weight:600;border-radius:var(--pill);border:1px solid transparent;background-color:var(--sky);color:var(--ink);min-width:6.2rem}.page.ppl table.grid-table select.level-none{color:var(--ink-2);font-weight:500;background-color:transparent;border-color:var(--rule)}.page.ppl table.grid-table select.level-write{background-color:var(--primary-bg);color:var(--primary-text)}.page.ppl table.grid-table select.level-admin{background-color:var(--primary);color:var(--primary-ink);opacity:1}.page.ppl table.grid-table select:disabled{cursor:default}.page.ppl table.grid-table select.changed{box-shadow:0 0 0 2px var(--sun)}.page.ppl table.grid-table .check-circle{margin:0 auto}.page.ppl .ppl-savebar{position:sticky;bottom:.6rem;z-index:4;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;margin-top:1rem;padding:.6rem .7rem .6rem 1rem;border-radius:16px;background:var(--glass-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-edge)}.page.ppl .ppl-savebar.dirty{box-shadow:var(--glass-shadow);border-color:var(--sun)}.page.ppl .ppl-savebar .spacer{flex:1}.page.ppl .ppl-savebar-state{display:inline-flex;align-items:center;gap:.45rem;font-weight:600;color:var(--ink-2)}.page.ppl .ppl-savebar.dirty .ppl-savebar-state{color:var(--ink)}@media(max-width:800px){.page.ppl .ppl-legend{padding:0}.page.ppl .ppl-grid-wrap{max-height:none}.page.ppl table.grid-table th.person{padding-left:.4rem}.page.ppl .ppl-who .ppl-avatar{display:none}}.portal code{background:var(--sky);border-radius:6px;padding:.05rem .35rem}.portal pre code{background:none;padding:0}.portal .glyph{background:var(--sky)}.portal .page-foot{margin-top:1.5rem}.badge.ok{background:var(--good-bg);color:var(--good)}.badge.net{background:var(--earth-bg);color:var(--earth)}.portal .alert{background:var(--earth-bg);color:var(--earth);border-radius:14px;padding:.65rem .9rem;font-weight:600;margin:0 0 1rem}.portal .banner-block{display:block;margin:0 0 1rem;border-radius:16px;padding:.75rem 1rem;background:var(--glass)}td.num{font-variant-numeric:tabular-nums}.portal.home .home-tiles{grid-template-columns:repeat(auto-fill,minmax(290px,1fr))}.portal .tiles-heading{margin:2.4rem 0 .9rem;font-size:1.35rem;display:flex;align-items:center;gap:.55rem}.portal .tiles-lead{margin:-.5rem 0 1rem;max-width:46rem}.portal.home .hero-tile{min-height:300px}.portal .hero-actions{margin-top:1.2rem;position:relative}.portal .hero-tile .linkbtn.hero-button{background:#fff;color:#7c2d12}.portal .hero-tile .linkbtn.hero-button:hover{background:#fff;filter:brightness(.95);text-decoration:none}.portal .service-use{color:var(--ink-2);margin:0 0 .2rem;font-size:.93rem;line-height:1.45}.portal .service-state{display:inline-flex;align-items:center;gap:.4rem}.portal .service-state .dot{width:8px;height:8px}.portal .home-tile .open-link{font-weight:600;color:var(--tone-text, var(--primary-text));padding:.3rem .2rem}.portal .addresses .rrow-detail{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.8rem;word-break:break-all}.portal .addresses .rrow.here .rrow-title{font-weight:700}.portal .addresses .dot{width:9px;height:9px}.portal .home-tile .rlist .rrow-lead svg{color:var(--tone-text, var(--primary-text))}.portal .home-tile .rrow-trail .pill{font-size:.75rem;padding:.15rem .5rem}.portal .short-names{display:flex;flex-wrap:wrap;gap:.35rem;margin:.2rem 0}.portal .short-names .pill{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.8rem;font-weight:600;color:var(--tone-text)}.portal .short-names .pill:hover{background:var(--sky-strong);text-decoration:none}.portal .sos-num{display:inline-block;min-width:3.1rem;font-size:1.35rem;font-weight:800;color:var(--danger);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.portal .emergencies .rrow-title{font-size:.93rem}.portal .steps{padding:0}.portal .step-num{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--tone-text);color:var(--sheet);font-weight:700;font-size:.9rem}.portal .steps .rrow{align-items:flex-start}.portal .steps .rrow-lead{padding-top:.7rem}.portal .steps .rrow-title{font-size:.93rem;line-height:1.45}.portal .steps a{color:var(--tone-text);font-weight:600}.portal .rrow-detail code{font-size:.78rem}.portal .pane+.pane{margin-top:1.4rem}.portal .state-filter{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;margin:1.1rem 0 .4rem}.portal button.state-card{display:flex;align-items:center;gap:.8rem;justify-content:flex-start;padding:.85rem 1rem;border-radius:16px;background:var(--sky);color:var(--ink);text-align:left;min-height:0;border:2px solid transparent;font-weight:400}.portal button.state-card:hover:not(:disabled){background:var(--sky-strong)}.portal button.state-card.on,.portal button.state-card.on:hover:not(:disabled){border-color:var(--primary);background:var(--primary-bg)}.portal .state-disc{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;color:#fff;background:var(--good)}.portal .state-disc.warn{background:var(--sun);color:var(--sun-ink)}.portal .state-disc.muted{background:var(--water)}.portal .state-disc.bad{background:var(--danger)}.portal .rrow-title .n{display:block;color:var(--ink-2);font-size:.85rem;margin-top:.1rem}.portal.offline .rrow-trail{font-size:.85rem;max-width:11rem;white-space:normal}.portal.offline .rrow-trail.muted{color:var(--water)}.portal .manuals-table .manual-title{font-weight:600;color:var(--ink);display:block}.portal .manuals-table a.manual-title:hover{color:var(--tone-text)}.portal .manuals-table .manual-use{display:block;color:var(--ink-2);font-size:.87rem;margin-top:.1rem}.portal .manuals-table tr.group .glyph{margin-right:.3rem}.portal .pdf-badge{display:inline-grid;place-items:center;width:30px;height:36px;border-radius:5px;background:linear-gradient(160deg,#ff8a7a,#d6453a);color:#fff;font-size:.6rem;font-weight:800;letter-spacing:.03em}.portal .contents-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:.55rem;margin-top:.4rem}.portal a.contents-tile{display:flex;align-items:center;gap:.7rem;padding:.55rem .7rem;border-radius:14px;background:var(--sky);color:var(--ink);font-weight:600;font-size:.92rem;line-height:1.25}.portal a.contents-tile:hover{background:var(--sky-strong);text-decoration:none}.portal a.contents-tile small{display:block;color:var(--ink-2);font-weight:500;font-size:.75rem}.portal.guide .chapter{scroll-margin-top:1rem}.portal.guide .chapter .to-top{font-size:.85rem;font-weight:600;color:var(--tone-text)}.portal .pane .table-wrap,.portal .pane .card{background:none;border:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding:0;border-radius:0;overflow-x:auto;margin:.4rem 0 .8rem}.portal .pane table th{font-size:.8rem}.portal .pane table td{border-bottom:1px solid var(--rule)}.portal .pane table tr:last-child td{border-bottom:0}.portal .pane .card ol,.portal .pane .card ul{margin:0;padding-left:1.3rem}.portal .pane .card li{padding:.2rem 0}.portal.guide h3{margin:1.4rem 0 .4rem;font-size:1.08rem;display:block}.portal.guide .pane-head+*{margin-top:.8rem}td.e{white-space:nowrap;width:1%;text-align:center}td .n{display:block;color:var(--ink-2);font-size:.9em}td.k{white-space:nowrap;font-weight:600}td.k .n{white-space:normal;font-weight:400;min-width:14rem;max-width:18rem}.portal pre{background:var(--sky);border-radius:var(--radius-small);padding:.7rem .9rem;overflow-x:auto;font-size:.85em;line-height:1.45}.portal .rule-box{border-left:4px solid var(--tone-text, var(--primary));padding:.6rem .9rem;background:var(--sky);border-radius:0 12px 12px 0;margin:1rem 0}@media(max-width:800px){.portal .tiles-heading{margin-top:1.8rem;font-size:1.2rem}.portal .contents-tiles{grid-template-columns:1fr 1fr}.portal a.contents-tile{font-size:.85rem;padding:.5rem;gap:.5rem}.portal .state-filter{grid-template-columns:1fr 1fr}td.k{white-space:normal}.portal.offline .rrow-trail{max-width:6.5rem;font-size:.8rem}}@media(max-width:480px){.portal .contents-tiles{grid-template-columns:1fr}}:root{color-scheme:light dark;--wall-base: #dde7f1;--wall-1: #c9d9ea;--wall-2: #b9cde3;--wall-3: #d3e0ee;--glass: rgba(255, 255, 255, .72);--glass-strong: rgba(255, 255, 255, .9);--glass-edge: rgba(255, 255, 255, .6);--glass-blur: saturate(180%) blur(24px);--glass-shadow: 0 10px 30px rgba(20, 30, 45, .12);--sheet: #ffffff;--sidebar-bg: rgba(255, 255, 255, .42);--panel: var(--glass);--sky: rgba(118, 118, 128, .12);--sky-strong: rgba(118, 118, 128, .2);--field: rgba(255, 255, 255, .85);--ink: #1d1d1f;--ink-2: #5f5f66;--ink-3: #8e8e93;--on-ink: #ffffff;--rule: rgba(60, 60, 67, .14);--rule-strong: rgba(60, 60, 67, .3);--earth: #9a6236;--earth-bg: #f3e3d3;--water: #0a6fd6;--sun: #f5b400;--sun-bg: #ffe9a8;--sun-ink: #4a3900;--sun-text: #8a6400;--danger: #c6432e;--danger-bg: #fbd9d2;--late: #d9580a;--late-bg: #fde2d0;--late-text: #a8420a;--good: #256b43;--good-bg: #dcefe2;--today: #e5342a;--shadow: var(--glass-shadow);--radius: 22px;--radius-small: 12px;--pill: 999px;--bar-height: 52px;--field-height: 40px;--page-width: 1140px;--icon-a: var(--primary);--icon-b: var(--primary-text)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--wall-base: #0c1a2e;--wall-1: #173a6b;--wall-2: #1d4f91;--wall-3: #11294d;--glass: rgba(30, 32, 36, .7);--glass-strong: rgba(44, 46, 50, .92);--glass-edge: rgba(255, 255, 255, .08);--glass-shadow: 0 18px 40px rgba(0, 0, 0, .45);--sheet: #1f2023;--sidebar-bg: rgba(18, 20, 22, .5);--sky: rgba(118, 118, 128, .24);--sky-strong: rgba(118, 118, 128, .36);--field: rgba(118, 118, 128, .2);--ink: #f5f5f7;--ink-2: #a8a8b0;--ink-3: #7c7c84;--on-ink: #1d1d1f;--rule: rgba(255, 255, 255, .1);--rule-strong: rgba(255, 255, 255, .24);--earth: #e0a574;--earth-bg: rgba(224, 165, 116, .18);--water: #4aa3ff;--sun: #f5c33b;--sun-bg: #e8b52e;--sun-text: #f5c33b;--danger: #ff6b5a;--danger-bg: rgba(255, 69, 58, .2);--late: #ff7a2e;--late-bg: rgba(255, 122, 46, .2);--late-text: #ff9a5c;--good: #7fd89a;--good-bg: rgba(76, 175, 109, .2);--today: #ff453a}}:root[data-theme=dark]{--wall-base: #0c1a2e;--wall-1: #173a6b;--wall-2: #1d4f91;--wall-3: #11294d;--glass: rgba(30, 32, 36, .7);--glass-strong: rgba(44, 46, 50, .92);--glass-edge: rgba(255, 255, 255, .08);--glass-shadow: 0 18px 40px rgba(0, 0, 0, .45);--sheet: #1f2023;--sidebar-bg: rgba(18, 20, 22, .5);--sky: rgba(118, 118, 128, .24);--sky-strong: rgba(118, 118, 128, .36);--field: rgba(118, 118, 128, .2);--ink: #f5f5f7;--ink-2: #a8a8b0;--ink-3: #7c7c84;--on-ink: #1d1d1f;--rule: rgba(255, 255, 255, .1);--rule-strong: rgba(255, 255, 255, .24);--earth: #e0a574;--earth-bg: rgba(224, 165, 116, .18);--water: #4aa3ff;--sun: #f5c33b;--sun-bg: #e8b52e;--sun-text: #f5c33b;--danger: #ff6b5a;--danger-bg: rgba(255, 69, 58, .2);--late: #ff7a2e;--late-bg: rgba(255, 122, 46, .2);--late-text: #ff9a5c;--good: #7fd89a;--good-bg: rgba(76, 175, 109, .2);--today: #ff453a}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background-color:var(--wall-base);background-image:radial-gradient(circle at 104% -12%,var(--wall-2) 0 34vmax,transparent calc(34vmax + 1px)),radial-gradient(circle at -12% 112%,var(--wall-1) 0 58vmax,transparent calc(58vmax + 1px)),radial-gradient(circle at 28% -70%,var(--wall-3) 0 72vmax,transparent calc(72vmax + 1px)),radial-gradient(circle at 96% 118%,var(--wall-3) 0 30vmax,transparent calc(30vmax + 1px));background-attachment:fixed;color:var(--ink);font:15px/1.47 system-ui,-apple-system,SF Pro Text,Segoe UI,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased}h1{font-size:2rem;font-weight:700;letter-spacing:-.01em;line-height:1.15;margin:0 0 .6rem}h2{font-size:1.2rem;font-weight:700;margin:0 0 .5rem;display:flex;align-items:center;gap:.5rem}h3{font-size:.95rem;font-weight:600;margin:1rem 0 .4rem;color:var(--ink)}p{margin:0 0 .6rem}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-decoration-color:var(--rule-strong);text-underline-offset:.15em}code,pre{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.85em}svg.lucide{flex:none}.muted{color:var(--ink-2)}.late-text{color:var(--late-text)}.sun-text{color:var(--sun-text)}.good-text{color:var(--good)}.small{font-size:.87em}.error{color:var(--danger);background:var(--danger-bg);padding:.5rem .8rem;border-radius:var(--radius-small)}.center{display:grid;place-items:center;height:100%}.spacer{flex:1}.row{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}.row.between{justify-content:space-between}.row.end{justify-content:flex-end}.stack{display:flex;flex-direction:column;gap:.7rem}.glass,.card,.panel,.figure,.table-wrap,.alerts li,.all-good{background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-edge);box-shadow:var(--glass-shadow)}.card{border-radius:var(--radius);padding:1.1rem 1.25rem}.page{padding:1.75rem 1.5rem 3rem;max-width:var(--page-width);margin:0 auto;width:100%}.glyph{display:inline-grid;place-items:center;width:1.7em;height:1.7em;border-radius:.55em;background:var(--sky);line-height:1;font-size:.95em;vertical-align:-.45em;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif}label{display:flex;flex-direction:column;gap:.25rem;font-size:.9em;color:var(--ink-2);font-weight:600}label.inline{flex-direction:row;align-items:center;gap:.3rem}input,select,textarea{font:inherit;padding:.5rem .75rem;border:1px solid var(--rule);border-radius:10px;background:var(--field);color:var(--ink);min-width:0}input:focus,select:focus,textarea:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px var(--primary-bg)}input[type=date]{width:150px}input[type=number]{width:110px}input:not([type=checkbox]):not([type=radio]),select{height:var(--field-height)}input[type=color]{width:52px;padding:.2rem .3rem}input[type=checkbox],input[type=radio]{accent-color:var(--primary)}.fields{display:flex;gap:.6rem;align-items:flex-end;flex-wrap:wrap}.fields>label.large{flex-basis:100%}.actions{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}.actions .spacer{flex:1}button,.linkbtn{font:inherit;font-weight:600;padding:.5rem 1.05rem;border-radius:var(--pill);border:0;background:var(--sky);color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;gap:.45rem;line-height:1.25}button:hover:not(:disabled),.linkbtn:hover{background:var(--sky-strong);text-decoration:none}button:active:not(:disabled){transform:scale(.98)}button:disabled{opacity:.45;cursor:default}button:not(.small):not(.ghost),.linkbtn:not(.small){min-height:var(--field-height)}:focus-visible{outline:3px solid var(--primary);outline-offset:2px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}fieldset{border:0;padding:0;margin:0}legend{font-size:.9em;color:var(--ink-2);padding:0;margin-right:.3rem}button.primary,.linkbtn.primary{background:var(--primary);color:var(--primary-ink)}button.primary:hover:not(:disabled),.linkbtn.primary:hover{background:var(--primary);filter:brightness(1.08)}button.danger{color:var(--danger)}button.danger:hover:not(:disabled){background:var(--danger-bg)}button.ghost{background:transparent;padding:.35rem .6rem;color:var(--primary-text);font-weight:600}button.ghost:hover:not(:disabled){color:var(--ink);background:var(--sky)}button.small,.linkbtn.small{padding:.3rem .75rem;font-size:.9em}button.active,button.active:hover:not(:disabled){background:var(--ink);color:var(--on-ink)}.shell{display:flex;flex-direction:column;height:100%}.content{flex:1;overflow:auto}.login{display:grid;place-items:center;height:100%;padding:1.5rem}.login-card{text-align:center;max-width:400px;width:100%;padding:2.2rem 2rem 1.6rem;border-radius:28px;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-edge);box-shadow:var(--glass-shadow)}.login-logo{display:flex;justify-content:center;margin:0 auto 1.2rem;width:76px;height:76px;align-items:center;border-radius:18px;color:#fff;background:linear-gradient(160deg,var(--icon-a),var(--icon-b));box-shadow:0 10px 22px #00000038;--primary: #fff}.login-logo svg{width:44px;height:44px}.login-card h1{font-size:2rem}.login-google{display:flex;justify-content:center;margin:1.5rem 0 .6rem}.login-home{margin:1.5rem 0 .6rem;align-items:center}.login-card form{margin-top:1.2rem;text-align:left}.login-card .or{margin:1rem 0 0}.language-picker{margin-top:1.5rem;display:flex;gap:.3rem;justify-content:center}.figures-row{display:flex;gap:.9rem;flex-wrap:wrap;padding:.2rem 0 1.4rem;margin-bottom:.4rem}.figure{display:flex;flex-direction:column;gap:.1rem;min-width:9rem;padding:.9rem 1.2rem;border-radius:20px}.figure .num{font-size:2.4rem;font-weight:700;line-height:1.05;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.figure .label{color:var(--ink-2);font-size:.9em;font-weight:600}.figure.hot{background:var(--sun);border-color:transparent}.figure.hot .num,.figure.hot .label{color:var(--sun-ink)}.page-alert{max-width:calc(var(--page-width) - 3rem);margin:.8rem auto 0}@media(max-width:1190px){.page-alert{margin:.8rem 1.5rem 0}}.badge{white-space:nowrap;font-size:.78em;font-weight:600;padding:.15rem .6rem;border-radius:var(--pill);background:var(--sky);color:var(--ink-2)}.bar{height:6px;border-radius:999px;background:var(--sky);overflow:hidden}.bar>div{height:100%;background:var(--primary);border-radius:999px;transition:width .3s}.chips{display:flex;gap:.4rem;flex-wrap:wrap;margin:.4rem 0 1rem}.chip{display:inline-flex;align-items:center;gap:.35rem;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-edge);border-radius:var(--pill);padding:.25rem .8rem .25rem .4rem;font-weight:600}.table-wrap{overflow-x:auto;border-radius:var(--radius);padding:.4rem 1rem}.table-wrap tr:last-child td{border-bottom:0}table{border-collapse:collapse;width:100%}th,td{text-align:left;padding:.6rem .7rem;border-bottom:1px solid var(--rule);vertical-align:top}th{color:var(--ink-2);font-weight:600;font-size:.85em}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}.log-list{list-style:none;padding:0;margin:0}.log-list li{border-bottom:1px solid var(--rule);padding:.5rem 0}dialog.confirm{border:0;border-radius:var(--radius);padding:1.4rem 1.6rem;background:var(--sheet);color:var(--ink);box-shadow:0 24px 60px #0000004d;width:min(420px,calc(100vw - 2rem))}dialog.confirm::backdrop{background:#00000059;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}dialog.confirm h2{margin:0}dialog.confirm p{margin:0;font-size:1.05em}dialog.confirm button{min-width:6rem;justify-content:center}dialog.drawer{position:fixed;inset:.6rem .6rem .6rem auto;margin:0;width:min(480px,calc(100% - 1.2rem));height:calc(100% - 1.2rem);max-height:none;border:0;border-radius:var(--radius);padding:0;background:var(--sheet);color:var(--ink);box-shadow:0 24px 60px #0000004d}dialog.drawer::backdrop{background:#0000004d;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}dialog.drawer>form{display:flex;flex-direction:column;height:100%}.drawer-head{display:flex;align-items:flex-start;gap:.6rem;padding:1.1rem 1.4rem;border-bottom:1px solid var(--rule)}.drawer-head h2{display:block;flex:1;margin:0;font-size:1.3rem}.drawer-head h2 small{display:block;font-size:.8rem;font-weight:600;color:var(--ink-2);margin-top:.15rem}.drawer-body{flex:1;overflow:auto;padding:1rem 1.4rem;display:flex;flex-direction:column;gap:.8rem}.drawer-body .grow{flex:1;min-width:10rem}.drawer-body h4{margin:.4rem 0 0}.drawer-body details{border-top:1px solid var(--rule);padding:.6rem 0 .2rem}.drawer-body details>summary{cursor:pointer;font-weight:700;font-size:.95rem;list-style:none;display:flex;align-items:center;gap:.45rem}.drawer-body details>summary::-webkit-details-marker{display:none}.drawer-body details>summary:before{content:"";width:6px;height:6px;border-right:2px solid var(--ink-2);border-bottom:2px solid var(--ink-2);transform:rotate(-45deg);transition:transform .15s;margin:0 .2rem 0 .1rem}.drawer-body details[open]>summary:before{transform:rotate(45deg)}.drawer-body details>summary .state{margin-left:auto;font-weight:500;font-size:.85em;color:var(--ink-2)}.drawer-body details>.stack{padding-top:.6rem}.drawer-error{margin:0 1.4rem .6rem}.drawer-foot{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;padding:.8rem 1.4rem;border-top:1px solid var(--rule)}.drawer-foot .spacer{flex:1}dialog.drawer[open]{transform:none;transition:transform .26s cubic-bezier(.2,.7,.2,1)}@starting-style{dialog.drawer[open]{transform:translate(110%)}}@media(max-width:800px){dialog.drawer{inset:auto 0 0 0;width:100%;height:auto;max-height:92%;border-radius:24px 24px 0 0}dialog.drawer>form{max-height:92vh}.drawer-foot{padding-bottom:calc(.8rem + env(safe-area-inset-bottom,0px))}@starting-style{dialog.drawer[open]{transform:translateY(105%)}}}@media(prefers-reduced-motion:reduce){dialog.drawer[open]{transition:none}}.segmented{display:inline-flex;padding:2px;border-radius:10px;background:var(--sky);gap:2px}.segmented button{border-radius:8px;font-weight:500;background:transparent;padding:.3rem .9rem;min-height:0}.segmented button:hover:not(:disabled){background:var(--sky)}.segmented button.active,.segmented button.active:hover:not(:disabled){background:var(--glass-strong);color:var(--ink);font-weight:600;box-shadow:0 1px 4px #00000026}.page h1{display:flex;align-items:baseline;gap:.6rem;flex-wrap:wrap}.page h1 .sub{font-size:.95rem;font-weight:600;color:var(--ink-2)}.section{margin-top:1.8rem}.section>h2{margin-bottom:.7rem}.panel{border-radius:var(--radius);padding:1.1rem 1.25rem}.grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.empty{color:var(--ink-2);padding:.4rem 0}.link{color:var(--primary-text);font-weight:600;display:inline-flex;align-items:center;gap:.25rem}.figure.out{background:var(--danger);border-color:transparent}.figure.out .num,.figure.out .label{color:#fff}.figure.low .num{color:var(--earth)}.figure .detail{color:var(--ink-2);font-size:.82em;font-weight:500}.figure.out .detail{color:#fff;opacity:.9}.back{margin-bottom:.4rem}.home-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:1.4rem}.home-tile{position:relative;display:flex;flex-direction:column;border-radius:var(--radius);padding:1.1rem 1.2rem;overflow:hidden;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-edge);box-shadow:var(--glass-shadow)}.home-tile.wide{grid-column:span 2}.home-tile.square{min-height:300px}.home-tile.auto{align-self:start}.home-tile-head{display:flex;align-items:center;gap:.8rem;margin-bottom:.6rem;color:inherit}.home-tile-head:hover{text-decoration:none}.home-tile-head h2{margin:0;font-size:1.25rem}.home-tile-head .muted{font-size:.87em}.app-icon{display:grid;place-items:center;flex:none;width:46px;height:46px;border-radius:12px;color:#fff;background:linear-gradient(160deg,var(--icon-a),var(--icon-b));--primary: #fff;box-shadow:0 4px 10px #0000002e}.app-icon svg{width:26px;height:26px}@media(max-width:700px){.home-tile.wide{grid-column:auto}.home-tile.square{min-height:0}}.alerts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.alerts li{border-radius:16px;padding:.7rem .95rem;border-left:4px solid var(--rule-strong);display:flex;gap:.7rem;align-items:flex-start}.alerts li .text{display:flex;flex-direction:column;gap:.1rem;flex:1}.alerts li .detail{color:var(--ink-2);font-size:.9em}.alerts li svg{margin-top:.15rem;color:var(--ink-2)}.all-good{background:var(--primary-bg);color:var(--primary-text);border-radius:16px;padding:.7rem .95rem;font-weight:600}.tools{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;margin-bottom:.9rem}.tools input[type=search]{flex:1;min-width:12rem;max-width:22rem}.suggestions{list-style:none;margin:0;padding:.25rem;background:var(--sheet);border:1px solid var(--rule);border-radius:var(--radius-small);max-height:14rem;overflow:auto;box-shadow:var(--glass-shadow)}.suggestions button{width:100%;justify-content:space-between;text-align:left;border:0;border-radius:8px;min-height:0;padding:.35rem .6rem;font-weight:600;background:none}.suggestions button:hover,.suggestions button.current{background:var(--primary-bg)}.suggestions small{color:var(--ink-2);font-weight:500;white-space:nowrap;flex:none}.checks{display:flex;gap:.3rem 1rem;flex-wrap:wrap}.checks label{flex-direction:row;align-items:center;gap:.35rem;font-weight:500;color:var(--ink)}.help{color:var(--ink-2);font-size:.88em;margin:0}.badge.soon{background:var(--danger-bg);color:var(--danger)}.badge.estimate{background:var(--sun-bg);color:var(--sun-ink)}.charts{width:100%;max-width:820px;height:auto;display:block;margin:0 auto}.charts .axis-x text,.charts .axis-y text{fill:var(--ink-2);font-size:11px}.charts .grid-line{stroke:var(--rule)}.charts .target{stroke:var(--ink);stroke-dasharray:4 3}.legend{display:flex;gap:.3rem 1rem;flex-wrap:wrap;font-size:.88em;color:var(--ink-2);margin-top:.5rem}.legend i{display:inline-block;width:12px;height:4px;border-radius:2px;vertical-align:middle;margin-right:.35rem}.banner{display:flex;gap:.5rem;align-items:center;background:var(--primary-bg);color:var(--primary-text);padding:.55rem .9rem;border-radius:var(--radius-small)}.banner strong{color:var(--ink)}@media(max-width:800px){.page{padding:1rem 1rem 3rem}.figures-row{gap:.6rem}.figure{min-width:7rem;padding:.7rem .95rem}.figure .num{font-size:2rem}.hide-mobile{display:none}.table-wrap{padding:.3rem .5rem}th,td{padding:.5rem .45rem}}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){:root{--glass: rgba(255, 255, 255, .94)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--glass: rgba(30, 32, 36, .95)}}:root[data-theme=dark]{--glass: rgba(30, 32, 36, .95)}}@media(prefers-reduced-transparency:reduce){:root{--glass: var(--sheet);--glass-strong: var(--sheet)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}.tone-terracotta,.tint-terracotta{--icon-a: #f08a55;--icon-b: #c2410c;--tone-text: #9a3412}.tone-orange,.tint-orange{--icon-a: #ffb35c;--icon-b: #e0702a;--tone-text: #9a4a0c}.tone-amber,.tint-amber{--icon-a: #ffd35c;--icon-b: #d99a00;--tone-text: #7a5a00}.tone-green,.tint-green{--icon-a: #6fd08a;--icon-b: #2f8a4e;--tone-text: #1f6b3a}.tone-mint,.tint-mint{--icon-a: #7fe0c0;--icon-b: #1f9a78;--tone-text: #11694f}.tone-teal,.tint-teal{--icon-a: #5fd3d0;--icon-b: #1f8f9a;--tone-text: #0f6770}.tone-blue,.tint-blue{--icon-a: #5aa9ff;--icon-b: #2a64d6;--tone-text: #1f55b8}.tone-indigo,.tint-indigo{--icon-a: #8a9bff;--icon-b: #4a4fd6;--tone-text: #3a3fb0}.tone-purple,.tint-purple{--icon-a: #c08bff;--icon-b: #7a46d1;--tone-text: #5e30a8}.tone-pink,.tint-pink{--icon-a: #ff8ac0;--icon-b: #d6457e;--tone-text: #a82d62}.tone-red,.tint-red{--icon-a: #ff8a7a;--icon-b: #d6453a;--tone-text: #a8322a}.tone-brown,.tint-brown{--icon-a: #d6a46a;--icon-b: #8a5a2b;--tone-text: #6e4520}.tone-grey,.tint-grey{--icon-a: #b0b4bc;--icon-b: #6b7079;--tone-text: #4a4f57}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .tone-terracotta,:root:not([data-theme=light]) .tint-terracotta{--tone-text: #ffa77e}:root:not([data-theme=light]) .tone-orange,:root:not([data-theme=light]) .tint-orange{--tone-text: #ffb877}:root:not([data-theme=light]) .tone-amber,:root:not([data-theme=light]) .tint-amber{--tone-text: #f5c33b}:root:not([data-theme=light]) .tone-green,:root:not([data-theme=light]) .tint-green{--tone-text: #7fd89a}:root:not([data-theme=light]) .tone-mint,:root:not([data-theme=light]) .tint-mint{--tone-text: #7fe0c0}:root:not([data-theme=light]) .tone-teal,:root:not([data-theme=light]) .tint-teal{--tone-text: #6fdcdc}:root:not([data-theme=light]) .tone-blue,:root:not([data-theme=light]) .tint-blue{--tone-text: #7ab8ff}:root:not([data-theme=light]) .tone-indigo,:root:not([data-theme=light]) .tint-indigo{--tone-text: #a6b0ff}:root:not([data-theme=light]) .tone-purple,:root:not([data-theme=light]) .tint-purple{--tone-text: #c9a2ff}:root:not([data-theme=light]) .tone-pink,:root:not([data-theme=light]) .tint-pink{--tone-text: #ff9fcb}:root:not([data-theme=light]) .tone-red,:root:not([data-theme=light]) .tint-red{--tone-text: #ff9a8a}:root:not([data-theme=light]) .tone-brown,:root:not([data-theme=light]) .tint-brown{--tone-text: #e0b27a}:root:not([data-theme=light]) .tone-grey,:root:not([data-theme=light]) .tint-grey{--tone-text: #c3c7ce}}:root[data-theme=dark] .tone-terracotta,:root[data-theme=dark] .tint-terracotta{--tone-text: #ffa77e}:root[data-theme=dark] .tone-orange,:root[data-theme=dark] .tint-orange{--tone-text: #ffb877}:root[data-theme=dark] .tone-amber,:root[data-theme=dark] .tint-amber{--tone-text: #f5c33b}:root[data-theme=dark] .tone-green,:root[data-theme=dark] .tint-green{--tone-text: #7fd89a}:root[data-theme=dark] .tone-mint,:root[data-theme=dark] .tint-mint{--tone-text: #7fe0c0}:root[data-theme=dark] .tone-teal,:root[data-theme=dark] .tint-teal{--tone-text: #6fdcdc}:root[data-theme=dark] .tone-blue,:root[data-theme=dark] .tint-blue{--tone-text: #7ab8ff}:root[data-theme=dark] .tone-indigo,:root[data-theme=dark] .tint-indigo{--tone-text: #a6b0ff}:root[data-theme=dark] .tone-purple,:root[data-theme=dark] .tint-purple{--tone-text: #c9a2ff}:root[data-theme=dark] .tone-pink,:root[data-theme=dark] .tint-pink{--tone-text: #ff9fcb}:root[data-theme=dark] .tone-red,:root[data-theme=dark] .tint-red{--tone-text: #ff9a8a}.app-icon.small{width:36px;height:36px;border-radius:10px}.app-icon.small svg{width:20px;height:20px}.app-icon.large{width:60px;height:60px;border-radius:15px;box-shadow:0 8px 18px #00000038}.app-icon.large svg{width:32px;height:32px}.app-icon .emoji{font-size:1.45rem;line-height:1;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif}.app-icon.large .emoji{font-size:1.9rem}.app-icon.small .emoji{font-size:1.1rem}.home-tiles.dense{grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));gap:1.1rem}.home-tiles.masonry{display:block;columns:340px;column-gap:1.4rem}.home-tiles.masonry>.home-tile{break-inside:avoid;margin-bottom:1.4rem}.home-tile.tall{grid-row:span 2}.home-tile-head .tile-link{display:flex;align-items:center;gap:.85rem;flex:1;min-width:0;color:inherit;border-radius:14px}a.tile-link:hover{text-decoration:none}a.tile-link:hover h2{color:var(--tone-text, var(--primary-text))}.tile-titles{display:flex;flex-direction:column;min-width:0;flex:1}.tile-titles h2{margin:0;font-size:1.3rem;font-weight:650;letter-spacing:-.01em;line-height:1.2}.tile-sub{color:var(--ink-2);font-size:.9em}.tile-open{flex:none;display:inline-flex;align-items:center;gap:.1rem;color:var(--tone-text, var(--primary-text));font-weight:600;font-size:.9em;opacity:0;transition:opacity .15s}.home-tile:hover .tile-open,.tile-link:focus-visible .tile-open{opacity:1}@media(hover:none){.tile-open{opacity:1}}.tile-action{flex:none;display:flex;gap:.3rem;align-items:center}.tile-action a,.tile-action .link{color:var(--tone-text, var(--primary-text));font-weight:600}.tile-body{flex:1;display:flex;flex-direction:column;min-height:0;gap:.5rem}.tile-body>.rgroup>.rlist,.tile-body>.rlist{margin:0 -.5rem}.tile-foot{margin-top:auto;padding-top:.5rem;color:var(--ink-2);font-size:.85em}.tile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.tile-big{font-size:2.6rem;font-weight:700;letter-spacing:-.02em;line-height:1;font-variant-numeric:tabular-nums}.tile-big small{font-size:1rem;font-weight:600;color:var(--ink-2);margin-left:.3rem;letter-spacing:0}.tile-big.low{color:var(--earth)}.tile-big.out{color:var(--danger)}.home-tile .all-good{box-shadow:none;border:0}.home-tile.ghost-tile{background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border:1.5px dashed var(--rule-strong);align-items:center;justify-content:center;text-align:center;gap:.6rem}.hero-tile{overflow:hidden;gap:.2rem;padding:1.5rem 1.6rem;min-height:260px}.hero-tile .spacer{flex:1;min-height:1.2rem}.hero-mark{position:absolute;right:-28px;top:-24px;opacity:.13;color:var(--primary);pointer-events:none}.hero-mark svg{width:190px;height:190px;stroke-width:1.2}.hero-kicker{font-size:.95rem;color:var(--ink-2);font-weight:500;position:relative}.hero-kicker:first-letter{text-transform:uppercase}.hero-title{margin:0;font-size:2rem;font-weight:650;line-height:1.15;position:relative;display:block}.hero-sub{font-size:1.02rem;color:var(--ink-2);position:relative}.hero-chips{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:1.1rem;position:relative}.hero-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:1rem;position:relative}.hero-tile.tint{background:radial-gradient(circle at 100% 0%,color-mix(in srgb,var(--tint, var(--primary)) 42%,transparent),transparent 72%),var(--glass)}.hero-tile.solid{color:#fff;border-color:#ffffff1f;background:radial-gradient(circle at 100% 0%,rgba(255,255,255,.16),transparent 55%),linear-gradient(155deg,var(--hero-a, var(--primary)),var(--hero-b, color-mix(in srgb, var(--primary) 55%, black)) 115%)}.hero-tile.solid .hero-mark{color:#fff}.hero-tile.solid .hero-kicker{color:#ffffffd1}.hero-tile.solid .hero-title{color:#fff}.hero-tile.solid .hero-sub{color:#ffffffd9}.hero-tile.solid a{color:#fff}.hero-tile.solid code{background:#ffffff2e;color:#fff}.hero-tile.solid .muted{color:#ffffffd9}.hero-tile.solid button:not(.primary),.hero-tile.solid .linkbtn:not(.primary){background:#fff3;color:#fff}.hero-tile.solid button:not(.primary):hover:not(:disabled),.hero-tile.solid .linkbtn:not(.primary):hover{background:#ffffff4d}.hero-tile.solid button.primary,.hero-tile.solid .linkbtn.primary{background:#fff;color:var(--hero-b, var(--primary-text))}.hero-tile.solid button.primary:hover:not(:disabled),.hero-tile.solid .linkbtn.primary:hover{background:#fff;filter:brightness(.95)}.pill{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .7rem;border-radius:10px;background:var(--sky);color:var(--ink);font-size:.87rem;font-weight:600;white-space:nowrap}.pill.quiet{color:var(--ink-2);font-weight:500}.pill.warn{background:var(--sun-bg);color:var(--sun-ink)}.pill.late{background:var(--late-bg);color:var(--late-text)}.pill.bad{background:var(--danger-bg);color:var(--danger)}.pill.good{background:var(--good-bg);color:var(--good)}.pill.accent{background:var(--primary-bg);color:var(--primary-text)}.hero-tile.solid .pill{background:#fff3;color:#fff}.hero-tile.solid .pill.warn{background:var(--sun);color:var(--sun-ink)}.hero-tile.solid .pill.late,.hero-tile.solid .pill.bad{background:#fff;color:#9b1c1c}.hero-tile.solid .pill.good{background:#ffffff47;color:#fff}.pane{position:relative;overflow:hidden;border-radius:var(--radius);padding:1.5rem 1.75rem 1.6rem;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-edge);box-shadow:var(--glass-shadow)}.pane+.pane,.pane+.home-tiles,.home-tiles+.pane{margin-top:1.4rem}.pane>*:not(.pane-decor){position:relative}.pane-decor{position:absolute;top:0;right:0;width:460px;height:240px;pointer-events:none;background:radial-gradient(circle at 88% -18%,color-mix(in srgb,var(--icon-a) 26%,transparent) 0 150px,transparent 151px),radial-gradient(circle at 62% 62%,color-mix(in srgb,var(--icon-a) 13%,transparent) 0 64px,transparent 65px),radial-gradient(circle at 100% 86%,color-mix(in srgb,var(--icon-b) 15%,transparent) 0 44px,transparent 45px)}.pane-toolbar{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;margin:-.5rem -.6rem 1rem}.pane-toolbar .spacer{flex:1}.pane-head{display:flex;align-items:center;gap:.9rem;margin-bottom:.4rem;flex-wrap:wrap}.pane-titles{flex:1;min-width:12rem}.pane-title{margin:0;font-size:2rem;font-weight:700;line-height:1.1;letter-spacing:-.01em;color:var(--tone-text, var(--primary-text));display:block;overflow-wrap:anywhere}h2.pane-title{font-size:1.75rem}.pane-sub{margin-top:.25rem;color:var(--ink-2);font-size:.97rem;display:flex;gap:.3rem .6rem;flex-wrap:wrap;align-items:center}.pane-actions{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap}.pane-section{margin-top:1.6rem}.pane-section>h3,.pane h3.section-title{font-size:1.15rem;font-weight:700;margin:0 0 .5rem;display:flex;align-items:baseline;gap:.5rem}.pane-section>h3 .count,h3.section-title .count{font-size:.85rem;font-weight:500;color:var(--ink-2)}.pane p.lead{color:var(--ink-2);max-width:48rem}.pane-toolbar select,.pane-toolbar input:not([type=checkbox]):not([type=radio]):not([type=search]){height:34px;padding:.2rem .6rem;border-radius:10px;background:var(--sky);border-color:transparent}.back-link{display:inline-flex;align-items:center;gap:.2rem;font-weight:600;color:var(--tone-text, var(--primary-text));padding:.3rem .5rem;border-radius:8px}a.back-link:hover{background:var(--sky);text-decoration:none}button.icon-btn,a.icon-btn,.linkbtn.icon-btn{display:inline-grid;place-items:center;width:36px;height:36px;min-height:0;padding:0;border:0;border-radius:50%;background:transparent;color:var(--tone-text, var(--primary-text))}button.icon-btn:not(.small):not(.ghost){min-height:0}button.icon-btn:hover:not(:disabled),a.icon-btn:hover{background:var(--sky);text-decoration:none}button.icon-btn svg,a.icon-btn svg{width:22px;height:22px}button.icon-btn.on,button.icon-btn.on:hover:not(:disabled){background:var(--primary);color:var(--primary-ink)}button.icon-btn.danger{color:var(--danger)}button.icon-btn.danger:hover:not(:disabled){background:var(--danger-bg)}.rgroup+.rgroup{margin-top:1.4rem}.rgroup-head{display:flex;align-items:baseline;gap:.55rem;margin:0 0 .15rem}.rgroup-head h3{margin:0;font-size:1.15rem;font-weight:700;display:flex;align-items:center;gap:.45rem}.rgroup-count{color:var(--ink-2);font-size:.88rem;font-weight:500}.rgroup-action{margin-left:auto}details.rgroup>summary{list-style:none;cursor:pointer}details.rgroup>summary::-webkit-details-marker{display:none}details.rgroup>summary h3:after{content:"";width:7px;height:7px;border-right:2px solid var(--ink-2);border-bottom:2px solid var(--ink-2);transform:rotate(-45deg);transition:transform .15s;margin:0 .2rem}details.rgroup[open]>summary h3:after{transform:rotate(45deg)}.rlist{list-style:none;margin:0 -.6rem;padding:0}.rrow{display:flex;align-items:center;gap:.85rem;padding:0 .6rem;border-radius:12px;min-height:52px}.rrow:has(>.rrow-main>.rrow-body.action):hover{background:var(--sky)}.rrow-lead{flex:none;display:grid;place-items:center;min-width:24px;color:var(--ink-2)}.rrow-main{flex:1;min-width:0;align-self:stretch;display:flex;flex-direction:column;justify-content:center;border-bottom:1px solid var(--rule)}.rrow:last-child>.rrow-main{border-bottom:0}.rrow-body{display:flex;align-items:center;gap:.9rem;width:100%;padding:.6rem 0;color:inherit;min-height:50px}.rlist .rrow button.rrow-body,.rlist .rrow a.rrow-body{background:transparent;border:0;border-radius:0;font:inherit;font-weight:inherit;text-align:left;color:inherit;min-height:50px;padding:.6rem 0;justify-content:flex-start;line-height:inherit}.rlist .rrow button.rrow-body:hover:not(:disabled){background:transparent}.rlist .rrow button.rrow-body:active:not(:disabled){transform:none}a.rrow-body:hover{text-decoration:none}.rrow-body:focus-visible{outline-offset:-2px;border-radius:8px}.rrow-text{display:flex;flex-direction:column;flex:1;min-width:0;gap:.05rem}.rrow-title{font-size:1rem;line-height:1.3;overflow-wrap:anywhere}.rrow-detail{font-size:.85rem;color:var(--ink-2);line-height:1.3;overflow-wrap:anywhere}.rrow-trail{flex:none;display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;color:var(--ink-2);text-align:right;font-variant-numeric:tabular-nums}.rrow-trail.warn{color:var(--sun-text)}.rrow-trail.late{color:var(--late-text)}.rrow-trail.bad{color:var(--danger)}.rrow-trail.good{color:var(--good)}.rrow-trail .meter{width:140px}.rrow.top{align-items:flex-start}.rrow.top>.rrow-lead{padding-top:.85rem}.rrow.top .rrow-body{align-items:flex-start}.rlist.compact .rrow{min-height:44px}.rlist.compact .rrow-body,.rlist.compact .rrow button.rrow-body,.rlist.compact .rrow a.rrow-body{min-height:42px;padding:.4rem 0}.rlist.compact .rrow.top>.rrow-lead{padding-top:.6rem}.rrow-more{padding:0 0 .7rem}.check-circle{position:relative;flex:none;display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;border:2px solid var(--rule-strong);background:transparent;color:transparent}button.check-circle.check-circle{min-height:0;min-width:0;padding:0;border-radius:50%;background:transparent;cursor:pointer;line-height:1}button.check-circle:after{content:"";position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px}button.check-circle.check-circle:hover:not(:disabled),button.check-circle.check-circle:focus-visible{border-color:var(--primary);background:var(--primary-bg);color:var(--primary-text)}button.check-circle.check-circle:active:not(:disabled){transform:none}button.check-circle:disabled{opacity:.4;cursor:default}.check-circle.late{border-color:var(--late)}.check-circle.warn{border-color:var(--sun)}.check-circle.bad{border-color:var(--danger)}.check-circle.on,button.check-circle.check-circle.on:hover:not(:disabled){background:var(--primary);border-color:var(--primary);color:var(--primary-ink)}.check-circle.small{width:20px;height:20px;border-width:1.5px}.check-circle svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.check-circle.small svg{width:13px;height:13px}.dot{display:inline-block;width:11px;height:11px;border-radius:50%;background:var(--rule-strong);flex:none}.dot.good{background:var(--good)}.dot.warn{background:var(--sun)}.dot.late{background:var(--late)}.dot.bad{background:var(--danger)}.dot.accent{background:var(--primary)}.dot.square{border-radius:4px}.totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:.85rem;margin:.4rem 0 1.2rem}.total{display:flex;align-items:center;gap:.85rem;padding:.95rem 1rem;border-radius:18px;min-width:0;color:inherit;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-edge);box-shadow:var(--glass-shadow)}:is(.pane,.home-tile,.panel,.card) .total{background:var(--sky);border-color:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:16px}.total-text{display:flex;flex-direction:column;min-width:0}.total-text>span{overflow:hidden;text-overflow:ellipsis}.total-label{font-size:.83rem;color:var(--ink-2);font-weight:600;white-space:nowrap}.total-value{font-size:1.65rem;font-weight:650;line-height:1.15;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.total-detail{font-size:.8rem;color:var(--ink-2)}a.total:hover{background:var(--glass-strong);text-decoration:none}:is(.pane,.home-tile,.panel,.card) a.total:hover{background:var(--sky-strong)}.total.bad .total-value{color:var(--danger)}.total.late .total-value{color:var(--late-text)}.total.warn .total-value{color:var(--sun-text)}.total.good .total-value{color:var(--good)}.search-field{display:inline-flex;flex-direction:row;align-items:center;gap:.4rem;height:34px;padding:0 .7rem;border-radius:10px;background:var(--sky);color:var(--ink-2);font-weight:400;min-width:12rem;flex:0 1 17rem}.search-field svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;flex:none}.search-field input[type=search],.search-field input:not([type=checkbox]):not([type=radio]){flex:1;min-width:0;height:32px;border:0;padding:0;background:transparent;color:var(--ink);box-shadow:none}.search-field:focus-within{box-shadow:0 0 0 3px var(--primary-bg)}.search-field.wide{flex:1 1 22rem;height:42px;font-size:1.05rem;border-radius:12px}.search-field.wide input:not([type=checkbox]){height:40px}:is(table.drive,.table-wrap>table) th{font-size:.8rem;font-weight:600;color:var(--ink-2);white-space:nowrap}:is(table.drive,.table-wrap>table) thead th{border-bottom:1px solid var(--rule-strong)}:is(table.drive,.table-wrap>table) td{vertical-align:middle}:is(table.drive,.table-wrap>table)>tbody>tr:not(.group):hover>td{background:var(--sky)}:is(table.drive,.table-wrap>table)>tbody>tr:not(.group)>td:first-child{border-radius:10px 0 0 10px}:is(table.drive,.table-wrap>table)>tbody>tr:not(.group)>td:last-child{border-radius:0 10px 10px 0}:is(table.drive,.table-wrap>table) tr.group th{font-size:1.05rem;font-weight:700;color:var(--ink);padding:1.2rem .6rem .35rem;border-bottom:1px solid var(--rule);text-align:left;white-space:normal}:is(table.drive,.table-wrap>table) tr.group th .count{font-size:.82rem;font-weight:500;color:var(--ink-2);margin-left:.4rem}:is(table.drive,.table-wrap>table) :is(td,th).lead{width:2rem;padding-right:0}:is(table.drive,.table-wrap>table) td.strong{font-weight:600}:is(table.drive,.table-wrap>table) td.muted{color:var(--ink-2)}:is(table.drive,.table-wrap>table) tr.clickable{cursor:pointer}:is(table.drive,.table-wrap>table) .cell-main{display:block;font-weight:500}:is(table.drive,.table-wrap>table) .cell-sub{display:none;color:var(--ink-2);font-size:.85em}table.drive{width:100%;border-collapse:collapse}table.drive th{padding:.45rem .6rem;border-bottom:1px solid var(--rule)}table.drive td{padding:.62rem .6rem;border-bottom:1px solid var(--rule)}table.drive tr:last-child td{border-bottom:0}.nowrap{white-space:nowrap}.drive-wrap{overflow-x:auto;margin:0 -.6rem}:is(table.drive,.table-wrap>table) button.ghost{color:var(--ink-2)}:is(table.drive,.table-wrap>table) button.ghost.danger:hover:not(:disabled){color:var(--danger);background:var(--danger-bg)}.meter{position:relative;display:block;height:6px;border-radius:3px;background:var(--sky-strong);min-width:3rem}.meter.thin{height:4px}.meter-fill{position:absolute;left:0;top:0;bottom:0;border-radius:3px;background:var(--good)}.meter-fill.accent{background:var(--primary)}.meter-fill.low{background:var(--sun)}.meter-fill.out{background:var(--danger)}.meter i{position:absolute;top:-4px;bottom:-4px;width:2px;margin-left:-1px;border-radius:1px;background:var(--ink);opacity:.7}.stat{display:flex;flex-direction:column;padding:.7rem .85rem;border-radius:12px;background:var(--sky);min-width:0}.stat-label{font-size:.8rem;color:var(--ink-2);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stat-value{font-size:1.5rem;font-weight:650;line-height:1.2;font-variant-numeric:tabular-nums}.stat-detail{font-size:.78rem;color:var(--ink-2)}.stat.bad .stat-value{color:var(--danger)}.stat.late .stat-value{color:var(--late-text)}.stat.warn .stat-value{color:var(--sun-text)}.stat.good .stat-value{color:var(--good)}.glass-empty{color:var(--ink-2);text-align:center;padding:1.2rem .5rem;margin:0}.inset-group{list-style:none;margin:0;padding:0 0 0 1.1rem;border-radius:16px;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-edge);box-shadow:var(--glass-shadow)}.inset-group>div,.inset-group>li{display:flex;align-items:center;gap:.8rem;min-height:50px;padding:.45rem 1rem .45rem 0;border-bottom:1px solid var(--rule)}.inset-group>:last-child{border-bottom:0}.inset-group dt{flex:1;color:var(--ink);font-weight:500}.inset-group dd{margin:0;color:var(--ink-2);font-variant-numeric:tabular-nums;font-weight:600}.toast{position:fixed;left:50%;bottom:calc(1.2rem + env(safe-area-inset-bottom,0px));transform:translate(-50%);z-index:30;display:flex;align-items:center;gap:.6rem;width:max-content;max-width:min(560px,calc(100vw - 2rem));padding:.5rem .5rem .5rem 1rem;border-radius:18px;background:var(--glass-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-edge);box-shadow:var(--glass-shadow);font-weight:600}.toast>svg{color:var(--primary-text);flex:none}.toast button.ghost{color:var(--ink-2);min-height:32px}@media(max-width:800px){.pane{padding:1.1rem 1rem 1.2rem;border-radius:18px}.pane-title{font-size:1.6rem}h2.pane-title{font-size:1.45rem}.app-icon.large{width:48px;height:48px;border-radius:12px}.app-icon.large svg{width:26px;height:26px}.pane-toolbar{margin:-.3rem -.3rem .8rem}.pane-decor{width:260px;height:160px}.totals{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.total{padding:.7rem .8rem;gap:.6rem}.total-value{font-size:1.35rem}.search-field{flex:1 1 100%}.rrow-trail .meter{width:80px}.hero-tile{padding:1.2rem 1.25rem;min-height:220px}.hero-title{font-size:1.7rem}.home-tile.tall{grid-row:auto}.home-tiles.masonry{columns:1}.home-tiles.masonry>.home-tile{margin-bottom:1rem}:is(table.drive,.table-wrap>table) .cell-sub{display:block}.inset-group{padding-left:.9rem}}:root{--primary: #c2410c;--primary-bg: #fde4d5;--primary-ink: #ffffff;--primary-text: #9a3412;--wall-base: #f4e7de;--wall-1: #efd5c4;--wall-2: #e9c5ad;--wall-3: #f2dfd2;--hero-a: #c2410c;--hero-b: #7c2d12;--notable-bg: #fbe3cc;--notable-text: #7a3f0c;--critical-text: #8c2a1a}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--primary: #f08a55;--primary-bg: rgba(240, 138, 85, .22);--primary-ink: #2a1206;--primary-text: #ffa77e;--wall-base: #26140b;--wall-1: #6b3219;--wall-2: #8c4220;--wall-3: #472312;--notable-bg: rgba(240, 138, 28, .22);--notable-text: #ffb26b;--critical-text: #ff8a7a}}:root[data-theme=dark]{--primary: #f08a55;--primary-bg: rgba(240, 138, 85, .22);--primary-ink: #2a1206;--primary-text: #ffa77e;--wall-base: #26140b;--wall-1: #6b3219;--wall-2: #8c4220;--wall-3: #472312;--notable-bg: rgba(240, 138, 28, .22);--notable-text: #ffb26b;--critical-text: #ff8a7a}.accounts tr.inactive td{color:var(--ink-3)}.accounts td.actions{white-space:nowrap;text-align:right}.accounts td.actions button{margin-left:.25rem}.grid-table th.app,.grid-table td.cell{text-align:center}.grid-table select{height:34px;padding:.2rem .4rem;font-size:.9em}.grid-table select.level-none{color:var(--ink-3)}.grid-table select.level-admin{color:var(--primary-text);font-weight:700}.grid-table select.changed{border-color:var(--primary)}.grid-table td.person{font-weight:600;white-space:nowrap}.grid-table td.person small{display:block;color:var(--ink-2);font-weight:500}.grid-table input[type=checkbox]{width:18px;height:18px}.placeholder{max-width:36rem}
