: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;--control-height: 36px;--page-width: 1140px;--page-top: 1.75rem;--page-x: 1.5rem;--stack: 1.4rem;--t-display: 2rem;--t-title: 1.75rem;--t-tile: 1.3rem;--t-section: 1.15rem;--late-ink: #231300;--danger-ink: #fff;--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:var(--t-display);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)}.danger-text{color:var(--danger)}.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:var(--page-top) var(--page-x) 3rem;max-width:calc(50% + var(--page-width) / 2);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(50% + var(--page-width) / 2 - 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:var(--t-tile)}.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}.drawer-foot .drawer-buttons{display:flex;gap:.6rem;margin-left:auto;flex-shrink:0}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;white-space:nowrap}.segmented.scroll{max-width:100%;overflow-x:auto}.segmented button{border-radius:8px;font-weight:500;background:transparent;padding:0 .9rem;height:calc(var(--control-height) - 4px)}.segmented button,.segmented button:not(.small):not(.ghost){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}.segmented a{display:inline-flex;align-items:center;gap:.35rem;border-radius:8px;font-weight:500;padding:0 .9rem;height:calc(var(--control-height) - 4px);color:var(--ink)}.segmented a:hover{background:var(--sky);text-decoration:none}.segmented a.active,.segmented a.active:hover{background:var(--glass-strong);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:var(--stack)}.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:var(--stack)}:is(.grid-cards,.home-tiles)>.pane{margin-top:0}.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:var(--stack)}.home-tiles.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.home-tiles.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:1100px){.home-tiles.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:800px){.home-tiles:is(.cols-2,.cols-3){grid-template-columns:minmax(0,1fr)}.home-tiles:is(.cols-2,.cols-3)>.home-tile.wide{grid-column:auto}}.home-tile.full{grid-column:1 / -1}.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:var(--t-tile)}.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}:is(.pane,.home-tile) .alerts li{background:var(--sky);border-top-color:transparent;border-right-color:transparent;border-bottom-color:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.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:899px){:root{--page-top: 1rem;--page-x: 1rem;--stack: 1rem;--t-display: 1.7rem;--t-title: 1.45rem}}@media(max-width:800px){.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}:root[data-theme=dark] .tone-brown,:root[data-theme=dark] .tint-brown{--tone-text: #e0b27a}:root[data-theme=dark] .tone-grey,:root[data-theme=dark] .tint-grey{--tone-text: #c3c7ce}.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:var(--stack)}.home-tiles.masonry>.home-tile{break-inside:avoid;margin-bottom:var(--stack)}.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:var(--t-tile);font-weight:700;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:var(--t-display);font-weight:700;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}.pill.small{padding:.15rem .5rem;font-size:.78rem;border-radius:8px}.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)}:is(.pane,.home-tiles,.totals)+:is(.pane,.home-tiles,.totals){margin-top:var(--stack)}.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-back{display:flex;margin:-.5rem -.6rem .6rem}.pane-toolbar{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;margin:1rem 0}.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:var(--t-display);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:var(--t-title)}.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:var(--t-section);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 input:not([type=checkbox]):not([type=radio]):not([type=search]){height:var(--control-height);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)}button.icon-btn.small,a.icon-btn.small{width:32px;height:32px;min-height:0}button.icon-btn.small svg,a.icon-btn.small svg{width:18px;height:18px}input.compact,.compact input:not([type=checkbox]):not([type=radio]){height:var(--control-height);min-height:0;padding:.2rem .55rem;font-size:.93rem}.well{background:var(--sky);border-radius:16px;padding:.8rem 1rem}.notice{display:flex;gap:.5rem;align-items:flex-start;background:var(--earth-bg);color:var(--earth);border-radius:var(--radius-small);padding:.65rem .9rem;font-weight:600}.notice.accent{background:var(--primary-bg);color:var(--primary-text)}:is(.pane,.home-tile,.drawer-body)>.notice:not(:last-child){margin-bottom:.8rem}:is(.pane,.home-tile,.drawer) code{background:var(--sky);border-radius:6px;padding:.05rem .35rem}:is(.pane,.home-tile,.drawer) pre{background:var(--sky);border-radius:var(--radius-small);padding:.7rem .9rem;overflow-x:auto;line-height:1.45}:is(.pane,.home-tile,.drawer) pre code{background:none;padding:0}.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:var(--t-section);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:700;line-height:1.15;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.total-detail{font-size:.8rem;color:var(--ink-2)}.total-value small{font-size:.9rem;font-weight:600;color:var(--ink-2);margin-left:.2rem}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)}button.total{justify-content:flex-start;text-align:left;font-weight:400;min-height:0}.total.on,.total.on:hover:not(:disabled){background:var(--primary-bg);box-shadow:inset 0 0 0 2px var(--primary)}.pane>.totals:last-child,.pane>.pane-toolbar:last-child{margin-bottom:0}.search-field{display:inline-flex;flex-direction:row;align-items:center;gap:.4rem;height:var(--control-height);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:calc(var(--control-height) - 2px);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(.pane,.home-tile) .table-wrap{background:none;border:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:0;padding:0;margin:0 -.6rem}table.drive.dense th,table.drive.dense td{padding:.35rem .5rem}table.drive.dense td.num{white-space:nowrap}.row-actions:not(td){display:flex;gap:.15rem;justify-content:flex-end;align-items:center;white-space:nowrap}td.row-actions{text-align:right;white-space:nowrap}td.row-actions>*+*{margin-left:.15rem}: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.thick{height:10px;border-radius:5px}.meter.thick .meter-fill{border-radius:5px}.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}:is(.pane,.home-tile,.drawer) .inset-group{background:var(--sky);border-color:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.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}.calendar{position:fixed;inset:auto;margin:0;z-index:1000;box-sizing:border-box;width:18.5rem;padding:.6rem;border-radius:14px;border:1px solid var(--glass-edge);background:var(--glass-strong);color:var(--ink);-webkit-backdrop-filter:saturate(180%) blur(30px);backdrop-filter:saturate(180%) blur(30px);box-shadow:0 12px 36px #00000038}.calendar-head{display:flex;align-items:center;justify-content:space-between;gap:.4rem;margin-bottom:.4rem}.calendar-head strong{text-transform:capitalize;font-size:.95rem}.calendar-head button.icon-btn{width:30px;height:30px;min-height:0}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.calendar-weekday{text-align:center;font-size:.72rem;font-weight:600;color:var(--ink-2);text-transform:uppercase;padding:.2rem 0}.calendar-day{min-height:0;height:2.1rem;padding:0;border:0;border-radius:8px;background:none;font-size:.9rem;font-weight:500;color:var(--ink);font-variant-numeric:tabular-nums}.calendar-day.other{color:var(--ink-2);opacity:.55}.calendar-day.today{color:var(--today);font-weight:700}.calendar-day.selected,.calendar-day.selected:hover:not(:disabled){background:var(--primary);color:var(--primary-ink)}.calendar-foot{display:flex;justify-content:flex-end;margin-top:.3rem}.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.error>svg{color:var(--danger)}.toast .toast-text{min-width:0}.toast .toast-text strong{color:var(--ink)}.toast button.ghost{color:var(--ink-2);min-height:32px}.toast button.ghost.icon-btn{width:32px;height:32px;flex:none}.toast button.ghost.icon-btn svg{width:16px;height:16px}@media(max-width:800px){.pane{padding:1.1rem 1rem 1.2rem;border-radius:18px}.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}.home-tile.tall{grid-row:auto}.home-tiles.masonry{columns:1}:is(table.drive,.table-wrap>table) .cell-sub{display:block}.inset-group{padding-left:.9rem}}.select{position:relative;display:inline-flex;min-width:0;max-width:100%}label>.select{display:flex}.select-button,.select-button:not(.small):not(.ghost){width:100%;min-width:0;height:var(--field-height);min-height:0;justify-content:space-between;gap:.5rem;padding:0 .6rem 0 .75rem;border:1px solid var(--rule);border-radius:10px;background:var(--field);color:var(--ink);font-weight:400;text-align:left}.select-button:hover:not(:disabled){background:var(--field);border-color:var(--rule-strong)}.select-button:active:not(:disabled){transform:none}.select-button:focus-visible,.select.open .select-button{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px var(--primary-bg)}.select-value{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-value.placeholder{color:var(--ink-2)}.select-button svg{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;color:var(--ink-2);transition:transform .15s}.select.open .select-button svg{transform:rotate(180deg)}.select-proxy{position:absolute;left:50%;bottom:0;width:1px;height:1px;padding:0;border:0;opacity:0;pointer-events:none}.pane-toolbar .select-button,.pane-toolbar .select-button:not(.small):not(.ghost),.select.compact .select-button,.select.compact .select-button:not(.small):not(.ghost){height:var(--control-height);border-color:transparent;background:var(--sky);font-weight:500;padding:0 .6rem 0 .9rem}.pane-toolbar .select-button:hover:not(:disabled),.select.compact .select-button:hover:not(:disabled){background:var(--sky-strong);border-color:transparent}.pane-toolbar .select{max-width:16rem}.select-list{position:fixed;inset:auto;margin:0;z-index:1000;box-sizing:border-box;max-width:min(28rem,calc(100vw - 16px));overflow:auto;padding:5px;border-radius:12px;border:1px solid var(--glass-edge);background:var(--glass-strong);color:var(--ink);-webkit-backdrop-filter:saturate(180%) blur(30px);backdrop-filter:saturate(180%) blur(30px);box-shadow:0 12px 36px #00000038;font-size:.95rem;font-weight:400}.select-option{position:relative;padding:.42rem .8rem .42rem 1.9rem;border-radius:7px;cursor:default;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.select-option.in-group{padding-left:2.4rem}.select-option.selected:before{content:"";position:absolute;left:.7rem;top:50%;width:.32rem;height:.62rem;margin-top:-.4rem;border:solid currentColor;border-width:0 2px 2px 0;transform:rotate(45deg)}.select-option.in-group.selected:before{left:1.2rem}.select-option.active{background:var(--primary);color:var(--primary-ink)}.select-option[aria-disabled]{opacity:.45}.select-option[aria-disabled].active{background:transparent;color:inherit}.select-group{padding:.5rem .8rem .2rem 1.9rem;font-size:.8rem;font-weight:600;color:var(--ink-2)}.page>*+*{margin-top:var(--stack)}.page>:is(.totals,.figures-row,.tools,.chips,.section){margin-bottom:0}.avatar.ppl-avatar:not(.photo){background:linear-gradient(160deg,var(--icon-a),var(--icon-b));color:#fff}.avatar.ppl-avatar.off:not(.photo){background:var(--sky-strong);color:var(--ink-2)}.ppl-photo{display:flex;align-items:center;gap:1rem}.ppl-photo-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.ppl-photo-actions>:is(.help,h3){flex-basis:100%;margin:0}table.accounts tr.inactive td{color:var(--ink-2)}.ppl-sub{display:block}.ppl-lines{display:flex;flex-direction:column;gap:.05rem;overflow-wrap:anywhere}.pill.level-admin{background:var(--primary);color:var(--primary-ink)}.ppl-grid-wrap{overflow:auto;max-height:70vh;margin:0 -.6rem;border-radius:12px}table.grid-table{border-collapse:separate;border-spacing:0}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)}table.grid-table th.app{text-align:center;white-space:nowrap}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}table.grid-table thead th.person{z-index:3;font-size:.8rem;color:var(--ink-2)}.ppl-who{display:flex;align-items:center;gap:.6rem}.ppl-who small{display:block;color:var(--ink-2);font-weight:500;font-size:.8rem}table.grid-table td.cell{text-align:center}table.drive.grid-table>tbody>tr:not(.group)>td:last-child{border-radius:0}.grid-table .select-button:not(.small):not(.ghost){height:var(--control-height);border-color:transparent;background-color:var(--sky);min-width:6.2rem;font-size:.87rem;font-weight:600}.grid-table .select.level-none .select-button{color:var(--ink-2);font-weight:500;background-color:transparent;border-color:var(--rule)}.grid-table .select.level-write .select-button{background-color:var(--primary-bg);color:var(--primary-text)}.grid-table .select.level-admin .select-button{background-color:var(--primary);color:var(--primary-ink)}.grid-table .select-button:disabled{cursor:default;opacity:1}.grid-table .select.changed .select-button{box-shadow:0 0 0 2px var(--sun)}.grid-table .check-circle{margin:0 auto}.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)}.ppl-savebar.dirty{box-shadow:var(--glass-shadow);border-color:var(--sun)}.ppl-savebar-state{display:inline-flex;align-items:center;gap:.45rem;font-weight:600;color:var(--ink-2)}.ppl-savebar.dirty .ppl-savebar-state{color:var(--ink)}@media(max-width:800px){.ppl-grid-wrap{max-height:none}table.grid-table th.person{padding-left:.4rem}.ppl-who .ppl-avatar{display:none}}.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)}.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:var(--page-top) var(--page-x) 0;margin:0 auto calc(var(--stack) - var(--page-top));max-width:calc(50% + var(--page-width) / 2);width:100%;flex-wrap:wrap}.subbar h1{margin:0;font-size:var(--t-display);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}.subbar .subbar-subtabs{flex-basis:100%;background:none;border-color:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;padding:0;margin-top:-.2rem}.subbar .subbar-subtabs:empty{display:none}.subbar .subbar-subtabs a{height:30px;font-size:.88rem}.subbar .subbar-subtabs a.active,.subbar .subbar-subtabs a.active:hover{color:var(--ink);background:var(--sky-strong)}.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}.avatar.small{width:26px;height:26px;font-size:.68rem}.avatar.xlarge{width:96px;height:96px;font-size:1.8rem}.avatar.photo{background:var(--glass-strong, transparent);overflow:hidden}.avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}.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:899px){.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}.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,.subbar 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,.subbar nav a .count{margin-left:.1rem}.sidebar nav a .count.hot,.topbar nav a .count.hot,.subbar nav a .count.hot{background:var(--sun);color:var(--sun-ink)}.sidebar nav .subtabs{display:flex;flex-direction:column;gap:2px;margin:2px 0 4px 1.35rem;padding-left:.45rem;border-left:1px solid var(--rule)}.sidebar nav .subtabs a{min-height:32px;font-size:.92rem}.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,.subbar.untitled{display:none}}.account-link{display:block;margin:.2rem 0 .4rem;font-size:.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}
