@font-face{font-family:inter;src:url(/_next/static/media/393a6363e4c7fd72-s.p.woff2) format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:inter;src:url(/_next/static/media/e5c93bad320f2840-s.p.woff2) format("woff2");font-display:swap;font-weight:500;font-style:normal}@font-face{font-family:inter;src:url(/_next/static/media/9d30aa0529adfa28-s.p.woff2) format("woff2");font-display:swap;font-weight:600;font-style:normal}@font-face{font-family:inter;src:url(/_next/static/media/9839c14a8da5fcb8-s.p.woff2) format("woff2");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:inter Fallback;src:local("Arial");ascent-override:89.79%;descent-override:22.36%;line-gap-override:0.00%;size-adjust:107.89%}.__className_166d16{font-family:inter,inter Fallback}.__variable_166d16{--font-inter:"inter","inter Fallback"}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/3d165c286d94e27c-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/e54d16b9f2c4535b-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/7c21074d9bafed1b-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/916860560b9a2bc2-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/591e43f23f51e5a5-s.woff2) format("woff2");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:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/97ac91773d3121b2-s.p.woff2) format("woff2");unicode-range:u+00??,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}@font-face{font-family:"Source Serif 4 Fallback";src:local("Times New Roman");ascent-override:87.87%;descent-override:28.41%;line-gap-override:0.00%;size-adjust:117.91%}.__className_25ee46{font-family:"Source Serif 4","Source Serif 4 Fallback";font-style:normal}.__variable_25ee46{--font-source-serif:"Source Serif 4","Source Serif 4 Fallback"}:root{--ink:#1f1d1a;--ink-2:#3a3733;--muted:#6f6a62;--bone:#f4f1ea;--paper:#fbfaf7;--line:#e4e0d8;--line-strong:#cfc9bf;--field-line:#8c857a;--accent:#c9a46b;--accent-hover:#b8935a;--accent-ink:var(--ink);--accent-text:#7f6437;--accent-soft:#f3ecdd;--accent-soft-hover:#f8f4eb;--side-bg:var(--ink);--side-ink:#e9e5dc;--side-muted:#b3ac9f;--side-hover:#2a2824;--side-active-bg:#302d28;--side-active-ink:var(--accent);--side-line:#3a3733;--ok:#3f7a4e;--ok-soft:#e6efe8;--warn:#9c7b35;--warn-soft:#f4eddc;--bad:#a24e3b;--bad-soft:#f6e6e1;--ok-ink:#336640;--warn-ink:#7a5c1e;--disabled-bg:var(--line);--disabled-ink:var(--ink-2);--focus:var(--accent-text);--scrim:rgb(31 29 26/0.35);--text-xs:11px;--text-sm:12px;--text-md:13px;--text-base:14px;--text-lg:16px;--text-xl:20px;--text-2xl:26px;--text-3xl:32px;--motion:200ms ease-in-out;--side-wide:236px;--side-narrow:64px;--font-sans:var(--font-inter),ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--font-serif:var(--font-source-serif),"Iowan Old Style",Georgia,"Times New Roman",serif;--forest:var(--accent-text);--forest-2:var(--accent-text);--forest-3:var(--line-strong);--lime:var(--accent-text);--lime-deep:var(--accent-text);--teal:var(--accent-text);--ivory:var(--bone);--card:var(--paper);--sand:var(--line-strong);--gold:var(--warn-ink);--bg:var(--bone)}@media (prefers-reduced-motion:reduce){:root{--motion:0ms linear}}*{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);font-size:var(--text-base);line-height:22px;color:var(--ink);background:var(--bone);min-height:100vh;-webkit-font-smoothing:antialiased}a{color:var(--accent-text);text-underline-offset:2px}button{font:inherit;cursor:pointer}input,select,textarea{font:inherit;font-size:var(--text-base);line-height:20px;text-transform:none;letter-spacing:normal;border:1px solid var(--field-line);border-radius:6px;padding:8px 10px;background:var(--paper);color:var(--ink);width:100%}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}input[type=checkbox],input[type=radio]{width:auto;accent-color:var(--accent)}a:focus-visible,button:focus-visible,input:focus,select:focus,textarea:focus{outline:2px solid var(--focus);outline-offset:2px}textarea{resize:vertical}.h1,.panel h1{font-size:var(--text-2xl);line-height:32px;letter-spacing:-.005em;margin:0 0 4px}.h1,.main h2,.panel h1{font-family:var(--font-serif);font-weight:500;color:var(--ink)}.main h2{font-size:var(--text-xl);line-height:28px}.sub{font-size:var(--text-md);line-height:20px;margin:0 0 24px}.label,.sub{color:var(--muted)}.label{font-size:var(--text-xs);line-height:16px;font-weight:500;letter-spacing:.06em;text-transform:uppercase}.lock{line-height:18px}.empty,.lock{font-size:var(--text-md);color:var(--muted)}.empty{line-height:20px;padding:10px 0}.shell{display:flex;min-height:100vh}.side{width:var(--side-wide);flex-shrink:0;background:var(--side-bg);padding:20px 12px;flex-direction:column;gap:2px}.brand,.side{color:var(--side-ink);display:flex}.brand{align-items:center;gap:10px;padding:2px 6px 22px;font-size:var(--text-base);line-height:20px;font-weight:500}.brand img{width:36px;height:36px;flex-shrink:0}.brand small{display:block;font-size:var(--text-md);line-height:18px;font-weight:400;color:var(--side-muted)}.navb{display:flex;align-items:center;justify-content:flex-start;gap:10px;width:100%;min-height:36px;padding:7px 12px;text-align:left;background:none;border:0;border-radius:6px;font-size:var(--text-base);line-height:22px;font-weight:500;text-decoration:none}.navb,.navb:hover{color:var(--side-ink)}.navb:hover{background:var(--side-hover)}.navb.on{color:var(--side-active-ink);background:var(--side-active-bg);font-weight:500;box-shadow:inset 3px 0 0 var(--side-active-ink)}.side a:focus-visible,.side button:focus-visible{outline-color:var(--side-active-ink)}.navb .chev{color:var(--side-muted);font-size:var(--text-base);line-height:1}.navb.group.open{color:var(--side-ink);font-weight:500}.navb.group.open .chev{transform:rotate(90deg)}.navsub{display:flex;flex-direction:column;gap:1px;margin:2px 0 8px 16px;border-left:1px solid var(--side-line)}.navb.sub{margin:0;padding-left:14px;border-radius:0 6px 6px 0;color:var(--side-ink);font-size:var(--text-base);line-height:22px;font-weight:500}.navb.sub.on{color:var(--side-active-ink)}.roleblock{margin-top:auto;padding:14px 10px 0;border-top:1px solid var(--side-line);font-size:var(--text-md);line-height:18px;color:var(--side-muted)}.roleblock .who{font-size:var(--text-base);line-height:20px;font-weight:500;color:var(--side-ink)}.side .btn.ghost.signout{background:transparent;border-color:var(--side-line);color:var(--side-ink)}.side .btn.ghost.signout:hover{background:var(--side-hover);border-color:var(--side-muted);color:var(--side-ink)}.main{flex:1 1;min-width:0;padding:32px;overflow:auto}.grid{display:grid;grid-gap:16px;gap:16px}.card{background:var(--paper);border:1px solid var(--line);border-radius:6px;padding:20px}.card h3{margin:0 0 12px;font-size:var(--text-xl);line-height:28px;font-weight:500;color:var(--ink-2)}.card h3,.stat{font-family:var(--font-serif)}.stat{display:flex;flex-direction:column-reverse;font-size:var(--text-3xl);line-height:36px;font-weight:400;font-feature-settings:tabular-nums lining-nums;font-variant-numeric:tabular-nums lining-nums;color:var(--ink)}.stat small{display:block;margin:0 0 8px;font-family:var(--font-sans);font-size:var(--text-xs);line-height:16px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.btn,.btn.gold{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:7px 16px;border:1px solid var(--accent);border-radius:6px;background:var(--accent);color:var(--accent-ink);font-size:var(--text-base);line-height:20px;font-weight:500;text-decoration:none;white-space:nowrap}.btn.gold:hover,.btn:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--accent-ink)}.btn.ghost{background:var(--paper);border-color:var(--line-strong);color:var(--ink);font-weight:400}.btn.ghost:hover{background:var(--bone);border-color:var(--field-line);color:var(--ink)}.btn.danger{background:var(--paper);border-color:var(--bad);color:var(--bad)}.btn.danger:hover{background:var(--bad-soft)}.btn.danger:disabled,.btn.ghost:disabled,.btn.gold:disabled,.btn:disabled{background:var(--disabled-bg);border-color:var(--line-strong);color:var(--disabled-ink);cursor:not-allowed}.field{display:block;margin-bottom:12px;font-size:var(--text-xs);line-height:16px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.field input,.field select,.field textarea{margin-top:6px}.field .lock,.field small{display:block;margin-top:4px;font-size:var(--text-md);line-height:18px;font-weight:400;letter-spacing:normal;text-transform:none}.field:has(>input[type=checkbox]),.field:has(>input[type=radio]){font-size:var(--text-base);line-height:22px;font-weight:400;letter-spacing:normal;text-transform:none;color:var(--ink-2)}.row2{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}.row2>.field{flex:1 1;min-width:160px;margin-bottom:0}.alert{margin-bottom:12px;padding:10px 14px;border:1px solid var(--line);border-left:2px solid var(--warn);border-radius:6px;background:var(--warn-soft);color:var(--ink);font-size:var(--text-md);line-height:20px}.alert.bad{border-left-color:var(--bad);background:var(--bad-soft)}.alert.ok{border-left-color:var(--ok);background:var(--ok-soft)}table.t{width:100%;border-collapse:collapse;font-size:var(--text-base);line-height:22px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}table.t th{padding:10px 14px;border-bottom:1px solid var(--line-strong);text-align:left;font-size:var(--text-xs);line-height:16px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}table.t td{padding:10px 14px;border-bottom:1px solid var(--line);vertical-align:top}table.t tbody tr:hover td{background:var(--accent-soft-hover)}table.t .num{text-align:right}tr.row{cursor:pointer}.linkrow{color:inherit;text-decoration:none;display:contents}.chip{display:inline-block;padding:1px 8px;border-radius:4px;background:var(--bone);color:var(--ink-2);font-size:var(--text-sm);line-height:18px;font-weight:500}.chip.ok{background:var(--ok-soft);color:var(--ok-ink)}.chip.warn{background:var(--warn-soft);color:var(--warn-ink)}.chip.bad{background:var(--bad-soft);color:var(--bad)}.chip.gold{background:var(--accent-soft);color:var(--accent-text)}.centre{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.panel{width:100%;max-width:400px;padding:32px;background:var(--paper);border:1px solid var(--line);border-radius:6px}.tabs-label{margin:0 0 6px}.tabs{display:flex;flex-wrap:wrap;gap:4px 24px;margin:0 0 24px;border-bottom:1px solid var(--line)}.tabs a{padding:4px 0 9px;margin-bottom:-1px;border-bottom:2px solid transparent;color:var(--ink-2);font-size:var(--text-base);line-height:22px;text-decoration:none}.tabs a:hover{color:var(--ink);border-bottom-color:var(--line-strong)}.tabs a.on{color:var(--accent-text);font-weight:500;border-bottom-color:var(--accent)}.noteitem{padding:12px 0;border-bottom:1px solid var(--line);font-size:var(--text-base);line-height:22px}.noteitem,.noteitem .note-body{white-space:pre-wrap}.noteitem .meta{margin-bottom:4px;font-size:var(--text-md);line-height:18px;color:var(--muted)}.taskrow{display:flex;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);font-size:var(--text-base);line-height:22px}.taskrow.done{color:var(--muted);text-decoration:line-through}.bar{height:6px;border-radius:999px;overflow:hidden;background:var(--line-strong)}.bar i{display:block;height:100%;background:var(--accent-text)}.bar i.warn{background:var(--warn)}.bar i.bad{background:var(--bad)}@media print{.hintbar,.no-print,.side,.tabs,.tabs-label{display:none!important}body{background:var(--paper)}.shell{display:block}.main{padding:0;max-width:none}.card{border:1px solid var(--line-strong);background:var(--paper);page-break-inside:avoid;break-inside:avoid}.stat{font-size:var(--text-xl);line-height:28px}.t td,.t th{padding:4px 6px}a{color:inherit;text-decoration:none}.page-break{page-break-before:always;break-before:page}}.page-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:8px 16px;margin:0 0 12px}.page-head .sub{margin:0}.page-toc{display:flex;flex-wrap:wrap;gap:4px 18px;font-size:var(--text-md);line-height:20px;margin:0 0 24px}.h2{font-family:var(--font-serif);font-size:var(--text-xl);line-height:26px;font-weight:500;color:var(--ink);margin:0 0 4px}.page-section+.page-section{margin-top:40px;padding-top:24px;border-top:1px solid var(--line)}.record-back{margin:0 0 8px}.record-actions{gap:6px;justify-content:flex-end}.data-table .table-wrap{overflow-x:auto}.filter-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:12px 14px;border-bottom:1px solid var(--line)}.filter-bar input[type=search]{max-width:280px}table.t th .sort{all:unset;cursor:pointer;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit}table.t th .sort:hover,table.t th[aria-sort] .sort{color:var(--ink)}table.t th .sort:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.list{background:var(--paper);border:1px solid var(--line);border-radius:6px}.list>.list-item{padding:16px 20px}.list>.list-item+.list-item{border-top:1px solid var(--line)}.segmented{display:inline-flex;flex-wrap:wrap;gap:4px}.segmented a,.segmented button{padding:2px 10px;border:1px solid var(--line);border-radius:4px;background:var(--paper);color:var(--ink-2);font-size:var(--text-md);line-height:22px;text-decoration:none;cursor:pointer}.segmented a.on,.segmented button.on{border-color:var(--accent-text);background:var(--accent-soft);color:var(--ink);font-weight:500}.sort-by{display:none;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--line);font-size:var(--text-md);color:var(--muted)}.sort-by select{width:auto;max-width:100%;min-height:36px}@media (max-width:760px){.sort-by{display:flex}}.btn,.chip,.kpi-link,.navb,.segmented a,.segmented button,.tabs a,a,table.t th .sort{transition:color var(--motion),background-color var(--motion),border-color var(--motion),box-shadow var(--motion)}button,input,select,textarea{transition:border-color var(--motion),background-color var(--motion),outline-color var(--motion),box-shadow var(--motion)}table.t td{transition:background-color var(--motion)}details[open]>summary~*{animation:reveal var(--motion)}[role=dialog]{animation:dialog-in var(--motion)}:has(>[role=dialog]){animation:scrim-in var(--motion)}@keyframes reveal{0%{transform:translateY(-4px)}to{transform:none}}@keyframes dialog-in{0%{transform:translateY(8px) scale(.99)}to{transform:none}}@keyframes scrim-in{0%{background-color:transparent}}table.t tbody tr:has(>td:first-child input[type=checkbox]:checked) td,table.t tbody tr[aria-selected=true] td{background:var(--accent-soft)}.side{transition:width var(--motion),padding var(--motion);overflow-x:hidden}.navicon{flex-shrink:0}.side-toggle{margin-top:8px;color:var(--side-muted);font-weight:400}.side-toggle:hover{color:var(--side-ink)}.signout{gap:8px}.shell.side-narrow .side{width:var(--side-narrow);padding:20px 10px}.shell.side-narrow .side-label{position:absolute;width:1px;height:1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.shell.side-narrow .navb{justify-content:center;padding:7px 0}.shell.side-narrow .brand{justify-content:center;padding:2px 0 22px}.shell.side-narrow .brand img{width:32px;height:32px}.shell.side-narrow .roleblock{padding:14px 0 0}.shell.side-narrow .signout{padding:7px 0}@media (max-width:1099px){.side{width:var(--side-narrow);padding:20px 10px}.side-label{position:absolute;width:1px;height:1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.navb{padding:7px 0}.brand,.navb{justify-content:center}.brand{padding:2px 0 22px}.brand img{width:32px;height:32px}.roleblock{padding:14px 0 0}.signout{padding:7px 0}.side-toggle{display:none}.main{padding:24px 16px}}.kpi{display:flex;flex-direction:column;gap:6px;padding:16px 20px 18px;background:var(--paper);border-radius:6px;color:var(--ink);text-decoration:none}.kpi-link:hover{background:var(--accent-soft-hover)}.kpi-label{font-size:var(--text-xs);line-height:16px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.kpi-figure{font-family:var(--font-serif);font-size:var(--text-3xl);line-height:36px;font-weight:400;font-feature-settings:tabular-nums lining-nums;font-variant-numeric:tabular-nums lining-nums;color:var(--ink)}.kpi-detail{margin:2px 0 0}.spark{display:block;max-width:100%;margin-top:2px;overflow:visible}.spark-base{stroke:var(--line-strong);stroke-width:1}.spark-area{fill:var(--accent-soft);stroke:none}.spark-line{fill:none;stroke:var(--accent-text);stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round}.spark-end{fill:var(--accent-text);stroke:var(--paper);stroke-width:1.5}.pager{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 14px;border-top:1px solid var(--line)}.pager .lock{margin-right:auto;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pager .btn{min-height:32px;padding:4px 12px}.side-rule{width:100%;margin:10px 0;border:0;border-top:1px solid var(--side-line)}.mail-layout{display:grid;grid-template-columns:minmax(280px,2fr) 3fr;grid-gap:16px;gap:16px;align-items:start}@media (max-width:900px){.mail-layout{grid-template-columns:1fr}}.mail-list{list-style:none;margin:0;padding:0}.mail-list li+li{border-top:1px solid var(--line)}.mail-row{display:grid;grid-template-columns:1fr auto;grid-gap:2px 10px;gap:2px 10px;padding:10px 14px;color:var(--ink);text-decoration:none;transition:background-color var(--motion)}.mail-row:hover{background:var(--accent-soft-hover)}.mail-row.on{background:var(--accent-soft)}.mail-row.unread .mail-subject,.mail-row.unread .mail-who{font-weight:600}.mail-who{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mail-when{font-size:var(--text-sm);color:var(--muted);white-space:nowrap}.mail-preview,.mail-subject,.mail-tags{grid-column:1/-1}.mail-preview{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mail-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}.mail-context{display:grid;grid-gap:8px;gap:8px;margin:0 0 14px;padding:12px 14px;background:var(--bone);border-radius:6px}.mail-body{white-space:pre-wrap;overflow-wrap:anywhere;font-size:var(--text-base);line-height:22px}.cal-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:10px;gap:10px;align-items:start}@media (max-width:1000px){.cal-week{grid-template-columns:1fr}}.cal-day{max-width:720px}.cal-col{display:flex;flex-direction:column;gap:8px;padding:12px;background:var(--paper);border:1px solid var(--line);border-radius:6px;min-width:0}.cal-col.today{border-color:var(--accent)}.cal-date{display:flex;align-items:center;justify-content:space-between;gap:6px;margin:0;font-family:var(--font-sans);font-size:var(--text-md);font-weight:600}.cal-date a{color:var(--ink);text-decoration:none}.cal-event{padding:8px 10px;border:1px solid var(--line);border-left:3px solid var(--line-strong);border-radius:6px;background:var(--paper);font-size:var(--text-md);line-height:19px;overflow-wrap:anywhere}.cal-event.client{border-left-color:var(--accent);background:var(--accent-soft-hover)}.cal-event.cancelled b{text-decoration:line-through}.cal-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.cal-month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:1px;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:6px;overflow:hidden}.cal-month-head{padding:6px 8px;background:var(--bone);font-size:var(--text-xs);font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.cal-month-day{display:flex;flex-direction:column;gap:3px;min-width:0;min-height:108px;padding:6px;background:var(--paper)}.cal-month-day.outside{background:var(--bone)}.cal-month-day.today{box-shadow:inset 0 0 0 2px var(--accent-text)}.cal-month-date{display:flex;align-items:center;justify-content:space-between;gap:4px;color:var(--ink);font-size:var(--text-md);font-weight:600;text-decoration:none}.cal-month-day.outside .cal-month-date{color:var(--muted)}.cal-month-dow{display:none}.cal-month-event{display:block;padding:2px 5px;border-left:2px solid var(--line-strong);border-radius:3px;color:var(--ink);font-size:var(--text-sm);line-height:16px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background-color var(--motion)}.cal-month-event.client,.cal-month-event:hover{background:var(--accent-soft-hover)}.cal-month-event.client{border-left-color:var(--accent)}.cal-month-event.cancelled{text-decoration:line-through}.cal-month-client{display:block;color:var(--accent-text);overflow:hidden;text-overflow:ellipsis}@media (max-width:760px){.cal-month{grid-template-columns:1fr}.cal-month-day.empty,.cal-month-day.outside,.cal-month-head{display:none}.cal-month-day{min-height:0}.cal-month-dow{display:inline}.cal-month-num{display:none}}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.presence{display:inline-flex;align-items:center;gap:5px;font-size:var(--text-sm);color:var(--muted)}.presence-dot{width:8px;height:8px;border-radius:50%;border:1.5px solid var(--field-line);background:transparent}.presence.online .presence-dot{background:var(--ok);border-color:var(--ok)}.presence.away .presence-dot{background:var(--warn);border-color:var(--warn)}.nav-badge{margin-left:auto;min-width:20px;padding:0 6px;border-radius:999px;background:var(--accent);color:var(--accent-ink);font-size:var(--text-xs);font-weight:600;line-height:18px;text-align:center}.shell.side-narrow .nav-badge{position:absolute;margin:0 0 18px 22px}.toasts{position:fixed;right:16px;bottom:16px;z-index:60;flex-direction:column;max-width:min(360px,calc(100vw - 32px))}.toast,.toasts{display:flex;gap:8px}.toast{align-items:center;padding:10px 12px;background:var(--paper);border:1px solid var(--line-strong);border-left:3px solid var(--accent);border-radius:6px;box-shadow:0 6px 18px var(--scrim);font-size:var(--text-md);animation:dialog-in var(--motion)}.toast>span{flex:1 1}.thread{gap:10px}.thread,.thread-head{display:flex;flex-direction:column}.thread-head{gap:4px;padding-bottom:10px;border-bottom:1px solid var(--line)}.thread-list{display:flex;flex-direction:column;gap:8px;max-height:60vh;margin:0;padding:0;overflow-y:auto;list-style:none}.bubble{max-width:85%;padding:8px 12px;background:var(--bone);border-radius:8px}.bubble.mine{align-self:flex-end;background:var(--accent-soft)}.bubble-text{white-space:pre-wrap;overflow-wrap:anywhere}.composer{display:flex;gap:8px;align-items:flex-end}.composer .field{flex:1 1}.texting{display:flex;flex-direction:column;gap:8px;max-width:720px}.thread-list.texts{max-height:58vh;padding:4px}.thread-list.texts .bubble{max-width:88%}.thread-list.texts .bubble.system{align-self:center;max-width:100%;background:transparent;border:1px dashed var(--line-strong);color:var(--ink-2);font-size:var(--text-md)}.thread-list.texts .bubble.failed{border-left:3px solid var(--bad)}.templates{overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}.templates .btn{white-space:nowrap}@media (max-width:520px){.composer{flex-direction:column;align-items:stretch}.composer .btn{width:100%;min-height:44px}.thread-list.texts{max-height:62vh}.thread-list.texts .bubble{max-width:95%}}.chat-composer{display:flex;flex-direction:column;gap:8px;margin-top:10px}.mention{color:var(--accent-text);font-weight:600}.bubble.mentions-me{border-left:3px solid var(--accent)}.attach-row{display:flex;flex-wrap:wrap;list-style:none;margin:6px 0 0;padding:0}.attach-chip,.attach-row{gap:6px;align-items:center}.attach-chip{display:inline-flex;padding:2px 10px;border:1px solid var(--line-strong);border-radius:999px;background:var(--paper);color:var(--accent-text);font:inherit;font-size:var(--text-sm);cursor:pointer;transition:border-color var(--motion),background var(--motion)}button.attach-chip:hover{border-color:var(--accent);background:var(--accent-soft)}.attach-panel{border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:var(--bone);display:flex;flex-direction:column;gap:6px}.mention-menu{position:absolute;z-index:5;bottom:100%;left:0;min-width:180px;margin:0 0 4px;padding:4px;list-style:none;background:var(--paper);border:1px solid var(--line-strong);border-radius:8px;box-shadow:0 2px 8px var(--scrim)}.mention-menu button{display:block;width:100%;padding:4px 8px;text-align:left;background:none;border:0;border-radius:6px;color:var(--ink);font:inherit;font-size:var(--text-base);cursor:pointer;transition:background var(--motion)}.mention-menu button:hover{background:var(--accent-soft)}.chat-actions{display:flex;gap:10px;align-items:center;margin-top:4px}.linkish{background:none;border:0;padding:0;color:var(--accent-text);font:inherit;font-size:var(--text-sm);text-decoration:underline;cursor:pointer}.linkish:disabled{color:var(--disabled-ink);cursor:default}