@font-face{font-family:Atkinson Hyperlegible Next Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/atkinson-hyperlegible-next-latin-ext-wght-normal-C6vrW8VD.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Atkinson Hyperlegible Next Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/atkinson-hyperlegible-next-latin-wght-normal-BcXVPD7q.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font: "Atkinson Hyperlegible Next Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;--bg: #f1f2ee;--surface: #ffffff;--surface-2: #f7f8f5;--surface-3: #eceee9;--ink: #1d2420;--ink-2: #47514c;--ink-3: #737d77;--line: #d9ddd6;--line-2: #e8ebe5;--basil: #2d6a4f;--basil-strong: #21523c;--basil-soft: #e1eee6;--crust: #94600f;--crust-strong: #7a4e0a;--crust-soft: #f6ecd6;--tomato: #b3382c;--tomato-strong: #922b21;--tomato-soft: #f8e5e2;--sky: #2c5d87;--sky-soft: #e2ebf4;--plum: #6a4c93;--plum-soft: #ede7f5;--focus: 0 0 0 3px rgba(45, 106, 79, .35);--radius-s: 6px;--radius: 9px;--radius-l: 14px;--shadow-pop: 0 12px 32px rgba(29, 36, 32, .16), 0 2px 6px rgba(29, 36, 32, .08);--fs-xs: .78rem;--fs-s: .875rem;--fs-m: .95rem;--fs-l: 1.125rem;--fs-xl: 1.4rem;--fs-xxl: 1.85rem;color-scheme:light}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;font-family:var(--font);font-size:15.5px;line-height:1.5;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{margin:0;line-height:1.2;font-weight:700;letter-spacing:-.01em}h1{font-size:var(--fs-xxl)}h2{font-size:var(--fs-xl)}h3{font-size:var(--fs-l)}p{margin:0}a{color:var(--basil-strong);text-underline-offset:2px}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:none;box-shadow:var(--focus)}.num,.tabular{font-variant-numeric:tabular-nums}.muted{color:var(--ink-3)}.small{font-size:var(--fs-s)}.xsmall{font-size:var(--fs-xs)}.strong{font-weight:700}.nowrap{white-space:nowrap}.right{text-align:right}.center{text-align:center}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.stack{display:flex;flex-direction:column;gap:12px}.stack-s{display:flex;flex-direction:column;gap:6px}.stack-l{display:flex;flex-direction:column;gap:24px}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.row-s{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.spread{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.grow{flex:1;min-width:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:0 14px;border-radius:var(--radius-s);border:1px solid var(--line);background:var(--surface);color:var(--ink);font-weight:600;font-size:var(--fs-s);cursor:pointer;text-decoration:none;white-space:nowrap;transition:background .12s,border-color .12s}.btn:hover{background:var(--surface-2);border-color:#c9cec6}.btn:disabled{opacity:.55;cursor:not-allowed}.btn svg{width:17px;height:17px;flex:none}.btn-primary{background:var(--basil);border-color:var(--basil);color:#fff}.btn-primary:hover{background:var(--basil-strong);border-color:var(--basil-strong)}.btn-danger{background:var(--tomato);border-color:var(--tomato);color:#fff}.btn-danger:hover{background:var(--tomato-strong);border-color:var(--tomato-strong)}.btn-ghost{background:transparent;border-color:transparent}.btn-ghost:hover{background:var(--surface-3);border-color:transparent}.btn-s{min-height:30px;padding:0 10px;font-size:var(--fs-xs)}.btn-l{min-height:46px;padding:0 20px;font-size:var(--fs-m)}.btn-icon{padding:0;width:38px}.btn-icon.btn-s{width:30px}.btn-block{width:100%}.field{display:flex;flex-direction:column;gap:5px;min-width:0}.field-label{font-size:var(--fs-s);font-weight:600;color:var(--ink-2)}.field-hint{font-size:var(--fs-xs);color:var(--ink-3)}.field-error{font-size:var(--fs-xs);color:var(--tomato);font-weight:600}.input,.select,.textarea{width:100%;min-height:40px;padding:8px 11px;border:1px solid var(--line);border-radius:var(--radius-s);background:var(--surface);font-size:16px}.input:focus,.select:focus,.textarea:focus{border-color:var(--basil);box-shadow:var(--focus);outline:none}.input[aria-invalid=true]{border-color:var(--tomato)}.textarea{min-height:84px;resize:vertical}.select{appearance:none;padding-right:32px;background-image:linear-gradient(45deg,transparent 50%,var(--ink-3) 50%),linear-gradient(135deg,var(--ink-3) 50%,transparent 50%);background-position:calc(100% - 17px) 50%,calc(100% - 12px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.check{display:inline-flex;align-items:flex-start;gap:9px;cursor:pointer;font-size:var(--fs-s)}.check input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--basil);flex:none}.form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.form-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.pill{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:999px;font-size:var(--fs-xs);font-weight:700;line-height:1.5;white-space:nowrap;background:var(--surface-3);color:var(--ink-2)}.pill svg{width:13px;height:13px}.pill-ok{background:var(--basil-soft);color:var(--basil-strong)}.pill-warn{background:var(--crust-soft);color:var(--crust-strong)}.pill-error{background:var(--tomato-soft);color:var(--tomato-strong)}.pill-info{background:var(--sky-soft);color:var(--sky)}.pill-plum{background:var(--plum-soft);color:var(--plum)}.dot{width:8px;height:8px;border-radius:50%;display:inline-block;background:currentColor;flex:none}.panel{background:var(--surface);border:1px solid var(--line-2);border-radius:var(--radius)}.panel-pad{padding:18px 20px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line-2)}.panel-head h2,.panel-head h3{font-size:var(--fs-l)}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.table{width:100%;border-collapse:collapse;font-size:var(--fs-s)}.table th{text-align:left;font-weight:600;color:var(--ink-3);font-size:var(--fs-xs);padding:9px 12px;border-bottom:1px solid var(--line);white-space:nowrap;background:var(--surface);position:sticky;top:0;z-index:1}.table td{padding:10px 12px;border-bottom:1px solid var(--line-2);vertical-align:middle}.table tr:last-child td{border-bottom:none}.table tbody tr.clickable{cursor:pointer}.table tbody tr.clickable:hover td{background:var(--surface-2)}.table .num{text-align:right;white-space:nowrap}.callout{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:var(--radius-s);background:var(--surface-2);border-left:3px solid var(--line);font-size:var(--fs-s)}.callout svg{width:18px;height:18px;flex:none;margin-top:1px}.callout-warn{background:var(--crust-soft);border-left-color:var(--crust);color:#4d3307}.callout-error{background:var(--tomato-soft);border-left-color:var(--tomato);color:#5c1a14}.callout-ok{background:var(--basil-soft);border-left-color:var(--basil);color:#173a2a}.callout-info{background:var(--sky-soft);border-left-color:var(--sky);color:#1b3b57}.empty{padding:36px 20px;text-align:center;color:var(--ink-3)}.empty h3{color:var(--ink-2);margin-bottom:6px}.spinner{width:22px;height:22px;border:3px solid var(--line);border-top-color:var(--basil);border-radius:50%;animation:spin .8s linear infinite}.loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:40px;color:var(--ink-3)}@keyframes spin{to{transform:rotate(360deg)}}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);overflow-x:auto}.tab{padding:9px 14px;border:none;background:none;cursor:pointer;font-weight:600;font-size:var(--fs-s);color:var(--ink-3);border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap}.tab:hover{color:var(--ink)}.tab[aria-selected=true]{color:var(--ink);border-bottom-color:var(--basil)}@media(min-width:900px){.tabs{flex-wrap:wrap;overflow-x:visible}}.segmented{display:inline-flex;padding:3px;border-radius:var(--radius-s);background:var(--surface-3);gap:2px}.segmented button{border:none;background:none;padding:5px 12px;border-radius:5px;font-weight:600;font-size:var(--fs-s);color:var(--ink-2);cursor:pointer}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #1d24201f}.overlay{position:fixed;inset:0;background:#1d242061;z-index:50;display:flex;align-items:center;justify-content:center;padding:16px}.modal{background:var(--surface);border-radius:var(--radius-l);box-shadow:var(--shadow-pop);width:min(560px,100%);max-height:calc(100vh - 32px);display:flex;flex-direction:column}.modal-wide{width:min(820px,100%)}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 20px 10px}.modal-body{padding:8px 20px 18px;overflow-y:auto}.modal-foot{padding:14px 20px;border-top:1px solid var(--line-2);display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.drawer-overlay{position:fixed;inset:0;background:#1d24204d;z-index:40}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(640px,100%);background:var(--bg);z-index:41;box-shadow:var(--shadow-pop);display:flex;flex-direction:column}.drawer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 20px;background:var(--surface);border-bottom:1px solid var(--line-2)}.drawer-body{padding:18px 20px 40px;overflow-y:auto;flex:1}.toasts{position:fixed;right:18px;bottom:18px;z-index:60;display:flex;flex-direction:column;gap:8px;max-width:min(420px,calc(100vw - 36px))}.toast{background:var(--ink);color:#fff;padding:11px 14px;border-radius:var(--radius-s);box-shadow:var(--shadow-pop);font-size:var(--fs-s);display:flex;gap:10px;align-items:flex-start}.toast-error{background:var(--tomato-strong)}.toast svg{width:18px;height:18px;flex:none}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}.shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh;background:linear-gradient(to right,var(--surface) 239px,var(--line-2) 239px,var(--line-2) 240px,transparent 240px)}.topbar{display:none}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:14px;padding:16px 12px;background:var(--surface);border-right:1px solid var(--line-2);overflow-y:auto}.sidebar-brand{display:flex;align-items:center;gap:10px;padding:2px 6px}.brand-mark{width:34px;height:34px;border-radius:9px;background:var(--basil);color:#fff;display:grid;place-items:center;font-weight:800;font-size:.85rem;letter-spacing:.02em;flex:none}.brand-logo{width:34px;height:34px;object-fit:contain;border-radius:6px;flex:none}.brand-name{font-weight:800;font-size:1.02rem}.brand-org{font-size:var(--fs-xs);color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-close{display:none}.est-picker .select{font-weight:600;font-size:var(--fs-s);min-height:38px}.nav-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.nav-link{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius-s);color:var(--ink-2);text-decoration:none;font-weight:600;font-size:var(--fs-s)}.nav-link svg{width:18px;height:18px;flex:none}.nav-link:hover{background:var(--surface-2);color:var(--ink)}.nav-link-active{background:var(--basil-soft);color:var(--basil-strong)}.sidebar-foot{margin-top:auto;padding:12px 6px 0;border-top:1px solid var(--line-2);display:flex;flex-direction:column;align-items:flex-start;gap:8px}.main{min-width:0}.demo-banner{background:var(--crust-soft);color:var(--crust-strong);font-weight:700;font-size:var(--fs-s);padding:8px 24px;border-bottom:1px solid #ecdcb9}.page{padding:24px 28px 64px;display:flex;flex-direction:column;gap:20px;max-width:1480px}.page-narrow{max-width:980px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}.page-head h1{font-size:var(--fs-xxl)}.page-sub{color:var(--ink-3);margin-top:4px}.toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.week-nav{display:inline-flex;align-items:center;gap:4px}.week-nav .label{min-width:190px;text-align:center;font-weight:700;font-size:var(--fs-s)}.section-title{font-size:var(--fs-l);margin-bottom:10px}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:18px;align-items:start}.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;align-items:start}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--line-2);border:1px solid var(--line-2);border-radius:var(--radius);overflow:hidden}.stat{background:var(--surface);padding:14px 16px;display:flex;flex-direction:column;gap:2px}.stat-value{font-size:1.55rem;font-weight:800;line-height:1.1}.stat-label{font-size:var(--fs-s);color:var(--ink-2);font-weight:600}.stat-hint{font-size:var(--fs-xs);color:var(--ink-3)}.stat-warn .stat-value{color:var(--crust-strong)}.stat-error .stat-value{color:var(--tomato)}.stat-ok .stat-value{color:var(--basil-strong)}.board{display:flex;flex-direction:column}.board-row{display:grid;grid-template-columns:minmax(130px,1fr) minmax(190px,1.3fr) minmax(96px,.7fr) 72px;gap:12px;align-items:center;padding:10px 18px;border-bottom:1px solid var(--line-2)}.board-row:last-child{border-bottom:none}.board-row>*{min-width:0}.board-name{font-weight:700}.state-dot{display:inline-flex;align-items:center;gap:7px;font-weight:600;font-size:var(--fs-s)}.todo-list{list-style:none;margin:0;padding:0}.todo-list li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 18px;border-bottom:1px solid var(--line-2);font-size:var(--fs-s)}.todo-list li:last-child{border-bottom:none}.todo-count{font-weight:800;font-size:1.05rem;font-variant-numeric:tabular-nums;min-width:2ch;text-align:right}.bar{height:10px;border-radius:99px;background:var(--surface-3);overflow:hidden;position:relative}.bar>span{position:absolute;inset:0 auto 0 0;border-radius:99px;background:var(--basil)}.bar>span.bar-planned{background:#b8c7bd}.plan-wrap{overflow-x:auto;border:1px solid var(--line-2);border-radius:var(--radius);background:var(--surface)}.plan{display:grid;grid-template-columns:200px repeat(7,minmax(118px,1fr)) 92px;min-width:1100px}.plan-head{position:sticky;top:0;z-index:2;background:var(--surface);padding:9px 10px;border-bottom:1px solid var(--line);font-size:var(--fs-xs);font-weight:700;color:var(--ink-3)}.plan-head-today{color:var(--basil-strong)}.plan-emp{padding:10px;border-bottom:1px solid var(--line-2);border-right:1px solid var(--line-2);display:flex;flex-direction:column;gap:2px;min-width:0}.plan-emp-name{font-weight:700;font-size:var(--fs-s);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.plan-cell{border-bottom:1px solid var(--line-2);border-right:1px solid var(--line-2);padding:5px;display:flex;flex-direction:column;gap:4px;min-height:62px;position:relative}.plan-cell-today{background:#f8fbf9}.plan-cell-drop{background:var(--basil-soft);outline:2px dashed var(--basil);outline-offset:-3px}.plan-add{opacity:0;border:1px dashed var(--line);background:transparent;border-radius:var(--radius-s);color:var(--ink-3);font-size:var(--fs-xs);font-weight:700;min-height:26px;cursor:pointer}.plan-cell:hover .plan-add,.plan-add:focus-visible{opacity:1}@media(hover:none){.plan-add{opacity:1}}.plan-total{border-bottom:1px solid var(--line-2);padding:10px 8px;font-size:var(--fs-xs);text-align:right;font-variant-numeric:tabular-nums}.chip{display:block;width:100%;text-align:left;border:1px solid var(--line);border-left:4px solid var(--chip, var(--ink-3));background:var(--surface);border-radius:5px;padding:4px 6px;font-size:var(--fs-xs);line-height:1.3;cursor:grab;font-variant-numeric:tabular-nums}.chip:hover{border-color:#c4cac2;background:var(--surface-2)}.chip-time{font-weight:700;display:flex;align-items:center;gap:4px}.chip-time svg{width:13px;height:13px}.chip-sub{display:block;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chip-error{border-color:#e7b3ad;background:#fdf3f2}.chip-warn{border-color:#e6d1a5}.chip-other{cursor:default;border-style:dashed;background:var(--surface-2);color:var(--ink-3)}.chip-absence{cursor:default;border:none;border-left:4px solid var(--chip);background:repeating-linear-gradient(135deg,var(--surface-2),var(--surface-2) 6px,var(--surface-3) 6px,var(--surface-3) 12px);font-weight:700;color:var(--ink-2)}.plan-open-row .plan-emp-name{color:var(--crust-strong)}.timeline{position:relative;display:flex;flex-direction:column;gap:6px}.timeline-scale{position:relative;height:18px;font-size:.7rem;color:var(--ink-3);font-variant-numeric:tabular-nums}.timeline-scale span{position:absolute;transform:translate(-50%)}.timeline-row{display:grid;grid-template-columns:150px 1fr;align-items:center;gap:10px}.timeline-label{font-size:var(--fs-xs);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.timeline-track{position:relative;height:26px;background:repeating-linear-gradient(90deg,transparent,transparent calc(var(--hour) - 1px),var(--line-2) calc(var(--hour) - 1px),var(--line-2) var(--hour));border-radius:4px}.timeline-bar{position:absolute;top:3px;bottom:3px;border-radius:4px;font-size:.68rem;font-weight:700;color:#fff;padding:0 5px;display:flex;align-items:center;overflow:hidden;white-space:nowrap}.timeline-bar-planned{background:#c9d6cd;color:var(--ink)}.timeline-bar-actual{background:var(--basil);top:7px;bottom:7px}.timeline-bar-open{background:repeating-linear-gradient(135deg,var(--sky),var(--sky) 6px,#3d74a5 6px,#3d74a5 12px)}.timeline-bar-incomplete{background:var(--tomato)}.timeline-bar-break{background:#ffffffd9;top:9px;bottom:9px;border-radius:2px}.timeline-now{position:absolute;top:-2px;bottom:-2px;width:2px;background:var(--tomato)}.recon-cell{display:flex;flex-direction:column;gap:1px;font-variant-numeric:tabular-nums;font-size:var(--fs-xs);min-width:84px;padding:6px 7px;border-radius:6px;border:1px solid transparent;background:transparent;text-align:left;cursor:pointer}.recon-cell:hover{border-color:var(--line);background:var(--surface-2)}.recon-cell-main{font-weight:800;font-size:var(--fs-s)}.recon-empty{color:var(--line);cursor:default}.status-bar{width:100%;height:4px;border-radius:2px;margin-top:3px;background:var(--line-2)}.st-validated{background:var(--basil)}.st-to_validate{background:#9cb8a7}.st-to_fix,.st-stale{background:var(--tomato)}.st-in_progress{background:var(--sky)}.st-upcoming{background:var(--line)}.events-list{list-style:none;margin:0;padding:0}.events-list li{display:grid;grid-template-columns:64px 1fr auto;gap:12px;align-items:center;padding:10px 14px;border-bottom:1px solid var(--line-2)}.events-list li:last-child{border-bottom:none}.event-time{font-weight:800;font-variant-numeric:tabular-nums;font-size:1.05rem}.event-voided .event-time,.event-voided .event-label{text-decoration:line-through;color:var(--ink-3)}.figures{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px}.figure{display:flex;flex-direction:column;gap:1px}.figure-value{font-size:1.25rem;font-weight:800;font-variant-numeric:tabular-nums}.figure-label{font-size:var(--fs-xs);color:var(--ink-3);font-weight:600}.basis-option{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-s);cursor:pointer;background:var(--surface)}.basis-option:has(input:checked){border-color:var(--basil);background:var(--basil-soft)}.basis-option input{margin-top:3px;accent-color:var(--basil)}.steps{list-style:none;margin:0;padding:0;counter-reset:step;display:flex;flex-direction:column}.steps li{counter-increment:step;display:grid;grid-template-columns:30px 1fr auto;gap:12px;align-items:center;padding:10px 18px;border-bottom:1px solid var(--line-2);font-size:var(--fs-s)}.steps li:last-child{border-bottom:none}.steps li:before{content:counter(step);width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:var(--fs-xs);background:var(--surface-3);color:var(--ink-2)}.steps li.step-done:before{background:var(--basil);color:#fff}.steps li.step-todo:before{background:var(--crust-soft);color:var(--crust-strong)}.auth-screen{min-height:100vh;display:grid;place-items:center;padding:24px 16px}.auth-card{width:min(440px,100%);background:var(--surface);border:1px solid var(--line-2);border-radius:var(--radius-l);padding:28px}.auth-card-wide{width:min(720px,100%)}.auth-title{display:flex;align-items:center;gap:12px;margin-bottom:6px}.pin-reveal{font-family:var(--mono);font-size:2.4rem;font-weight:800;letter-spacing:.3em;text-align:center;padding:16px;background:var(--surface-2);border-radius:var(--radius);border:1px dashed var(--line)}.code-reveal{font-family:var(--mono);font-size:1.6rem;font-weight:800;letter-spacing:.12em;text-align:center;padding:14px;background:var(--surface-2);border-radius:var(--radius);border:1px dashed var(--line);word-break:break-all}.copy-box{display:flex;gap:8px;align-items:center}.copy-box input{font-family:var(--mono);font-size:var(--fs-xs)}.kv{display:grid;grid-template-columns:minmax(140px,auto) 1fr;gap:8px 16px;font-size:var(--fs-s)}.kv dt{color:var(--ink-3);font-weight:600}.kv dd{margin:0}.color-swatch{width:14px;height:14px;border-radius:4px;display:inline-block;flex:none;vertical-align:-2px}.cal{display:grid;min-width:920px;font-size:var(--fs-xs)}.cal-head{padding:6px 2px;border-bottom:1px solid var(--line);font-weight:700;color:var(--ink-3);line-height:1.15;font-variant-numeric:tabular-nums}.cal-head:first-child{padding-left:14px;display:flex;align-items:flex-end}.cal-head.cal-today{color:var(--basil-strong)}.cal-name{padding:6px 14px;border-bottom:1px solid var(--line-2);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center}.cal-cell{border-bottom:1px solid var(--line-2);border-left:1px solid var(--line-2);min-height:32px;display:grid;place-items:center;font-variant-numeric:tabular-nums}.cal-cell[style]{background:color-mix(in srgb,var(--cal) 24%,#fff);color:color-mix(in srgb,var(--cal) 72%,#000)}.cal-cell.cal-pending[style]{background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--cal) 24%,#fff) 0 5px,#fff 5px 10px)}.cal-cell.cal-today:not([style]){background:#f4f9f6}.cal-code{font-weight:800;font-size:.66rem;letter-spacing:.02em}button.cal-cell{border-top:none;border-right:none;font:inherit;color:inherit;background:transparent;cursor:pointer}button.cal-cell:hover{background:var(--surface-2)}.cal-total{border-bottom:1px solid var(--line-2);border-left:1px solid var(--line);padding:6px 10px;font-weight:800;text-align:right;font-variant-numeric:tabular-nums;display:flex;align-items:center;justify-content:flex-end}tr.clickable{cursor:pointer}tr.clickable:hover td{background:var(--surface-2)}.row-link{color:inherit;text-decoration:none}.row-link:hover{text-decoration:underline}@media(max-width:900px){.shell{grid-template-columns:1fr;background:none}.topbar{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--surface);border-bottom:1px solid var(--line-2);position:sticky;top:0;z-index:30}.sidebar{position:fixed;inset:0 auto 0 0;width:min(300px,86vw);z-index:45;transform:translate(-102%);transition:transform .2s ease;box-shadow:var(--shadow-pop)}.sidebar-open{transform:none}.sidebar-close{display:inline-flex}.nav-overlay{position:fixed;inset:0;background:#1d242059;z-index:44}.page{padding:18px 16px 56px}.page-head h1{font-size:var(--fs-xl)}.board-row{grid-template-columns:1fr auto}.board-row>:nth-child(3){display:none}.grid-2{grid-template-columns:1fr}.demo-banner{padding:8px 16px}}@media print{.sidebar,.topbar,.toolbar,.demo-banner,.no-print,.plan-add{display:none!important}.shell{display:block}.page{padding:0;max-width:none}.plan-wrap{overflow:visible;border:none}.plan{min-width:0;grid-template-columns:150px repeat(7,1fr) 70px}.chip{break-inside:avoid}body{background:#fff;font-size:11px}}.notif-row{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:8px 18px;padding:10px 0;border-bottom:1px solid var(--line-2)}.notif-row:last-of-type{border-bottom:none}.notif-row .check{flex:1 1 260px}.notif-minutes{flex:none}.mobile-allowed{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:6px 18px}.notes-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.note-unread{box-shadow:inset 4px 0 0 var(--sky)}.nav-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--tomato);color:#fff;font-size:.75rem;font-weight:700;display:inline-grid;place-items:center}.topbar-bell{margin-left:auto;color:var(--tomato-strong);font-weight:700}.loc-warn{color:var(--crust-strong);font-weight:700}.loc-warn a,.events-list a{font-weight:400}
