:root{--bg: #f6f6f4;--card: #ffffff;--text: #1d1d1b;--muted: #6b6b66;--line: #e3e2dd;--accent: #2557d6;--accent-weak: #e8eefc;--ok: #1f7a3f;--warn: #a05a00;--error: #b42318;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;font-size:14px;color:var(--text)}*{box-sizing:border-box}body{margin:0;background:var(--bg)}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1{font-size:22px;margin:0}h3{font-size:15px;margin:0 0 10px}h4{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:12px 0 4px}ul{margin:0;padding-left:18px}li{margin:2px 0}.shell{min-height:100vh}.topbar{display:flex;align-items:center;gap:24px;padding:10px 24px;background:var(--card);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:2;flex-wrap:wrap}.brand{font-weight:700}.topbar nav{display:flex;gap:4px;flex:1;flex-wrap:wrap}.topbar nav a{padding:6px 10px;border-radius:6px;color:var(--text)}.topbar nav a.active{background:var(--accent-weak);color:var(--accent)}.who{display:flex;gap:10px;align-items:center;color:var(--muted)}.role{text-transform:capitalize;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:1px 8px;font-size:12px}main{padding:24px;max-width:1280px;margin:0 auto}.pagehead{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;flex-wrap:wrap}.pagehead p{margin:4px 0 0}.actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.crumbs{margin:0 0 8px;font-size:13px}.sectionhead{display:flex;justify-content:space-between;align-items:center;gap:8px}.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:16px}.card.narrow{width:360px;max-width:100%;display:flex;flex-direction:column;gap:12px}.card.wide{margin-top:16px}.center{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:16px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.grid .card.wide{grid-column:1 / -1;margin-top:0}.clientgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}dl{display:grid;grid-template-columns:130px 1fr;gap:6px 12px;margin:0}dt{color:var(--muted)}dd{margin:0;overflow-wrap:anywhere}button,.button{font:inherit;background:var(--accent);color:#fff;border:1px solid var(--accent);border-radius:6px;padding:6px 12px;cursor:pointer;display:inline-block}button:disabled{opacity:.6;cursor:default}button.secondary,.button.secondary{background:var(--card);color:var(--text);border-color:var(--line)}button.link{background:none;border:none;color:var(--accent);padding:0}input,select,textarea{font:inherit;padding:6px 8px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--text);width:100%}input.short{width:90px}input[type=checkbox]{width:auto}label{display:flex;flex-direction:column;gap:4px;color:var(--muted);font-size:13px}label.check{flex-direction:row;align-items:center;gap:8px;color:var(--text)}.inline-form{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;margin:12px 0}.inline-form label{min-width:140px}.inline-form .grow{flex:1}.stack-form{display:flex;flex-direction:column;gap:10px;margin:12px 0;max-width:640px}.filters{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}.filters input{max-width:260px}.filters select{width:auto}.tablewrap{overflow-x:auto;background:var(--card);border:1px solid var(--line);border-radius:10px}table{width:100%;border-collapse:collapse}th{text-align:left;font-weight:600;color:var(--muted);font-size:12px;padding:10px 12px;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:9px 12px;border-bottom:1px solid var(--line);vertical-align:top}tr:last-child td{border-bottom:none}.card table td{padding:7px 8px}tr.inactive td{color:var(--muted)}.num{text-align:right;font-variant-numeric:tabular-nums}.nowrap{white-space:nowrap}.mono{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12.5px}.muted{color:var(--muted)}.small{font-size:12px}.error{color:var(--error)}.warn{color:var(--warn)}.ok{color:var(--ok)}.badge{display:inline-block;padding:1px 8px;border-radius:10px;font-size:12px;border:1px solid var(--line)}.s-onboarding{background:#eef4ff;color:#2557d6;border-color:#cddcfb}.s-probation{background:#fff6e5;color:#a05a00;border-color:#f3dcae}.s-regular{background:#eaf6ee;color:#1f7a3f;border-color:#c4e6cf}.s-offboarding{background:#fdeceb;color:#b42318;border-color:#f6cbc7}.s-exited{background:#f1f1ef;color:#6b6b66}.stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;margin-bottom:20px}.stat{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:14px 16px}.statnum{font-size:26px;font-weight:700;font-variant-numeric:tabular-nums}.small-num{font-size:20px}.entry{border-top:1px solid var(--line);padding:10px 0}.entry p{margin:4px 0}.entryhead{font-weight:600;font-size:13px}@media (max-width: 640px){main{padding:16px}.topbar{padding:10px 16px;gap:10px}dl{grid-template-columns:110px 1fr}}.section-title{margin:20px 0 8px}.card.alert{border-color:#f3dcae;background:#fffaf0;margin-bottom:16px}.stat.bad{border-color:#f6cbc7;background:#fdf3f2}.stat.warnbox{border-color:#f3dcae;background:#fffaf0}.badge.run-draft{background:#fff6e5;color:#a05a00;border-color:#f3dcae;text-transform:capitalize;font-size:13px;vertical-align:middle}.badge.run-approved,.badge.run-locked{background:#eaf6ee;color:#1f7a3f;border-color:#c4e6cf;text-transform:capitalize;font-size:13px;vertical-align:middle}table.dense td,table.dense th{padding:6px 8px;font-size:12.5px}td.strong,.strong{font-weight:600}tr.totalrow td{font-weight:600;background:var(--bg)}td.flags{min-width:220px;font-size:12px}input.num{text-align:right}.filebtn{cursor:pointer}.tablewrap.plain{border:none}table.summarytable{max-width:520px;margin-bottom:8px}table.summarytable td{padding:6px 8px}tr.selected td{background:var(--accent-weak)}.invoice h4{margin-top:18px}.flaglist{margin-top:10px}:root{--series-1: #2a78d6;--series-2: #eb6834}table.fingrid td,table.fingrid th{padding:5px 8px;font-size:12.5px;white-space:nowrap}table.fingrid td.label{position:sticky;left:0;background:var(--card);min-width:210px}table.fingrid th.forecast,table.fingrid td.forecast{background:#fafaf8;color:#3a3a37}table.fingrid tr.sub td.label{padding-left:22px;color:var(--muted)}table.fingrid tr.total td{font-weight:600;border-top:1px solid var(--line)}table.fingrid tr.grand td{font-weight:700;border-top:2px solid var(--text)}table.fingrid tr.ghead td{background:var(--bg);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);padding-top:10px}table.fingrid tr.share td{color:var(--accent)}table.fingrid tr.hc td.label{padding-left:22px;color:var(--muted)}.chartcard{margin-top:4px}.chartwrap{position:relative}.chartwrap svg{width:100%;height:auto;display:block}.chartwrap .gridline{stroke:var(--line);stroke-width:1}.chartwrap .axis{fill:var(--muted);font-size:11px}.legend{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.sw{display:inline-block;width:10px;height:10px;border-radius:2px;vertical-align:-1px;margin-right:4px}.sw.s1{background:var(--series-1)}.sw.s2{background:var(--series-2)}.tooltip{position:absolute;top:8px;transform:translate(-50%);background:var(--card);border:1px solid var(--line);border-radius:8px;padding:8px 10px;font-size:12px;box-shadow:0 2px 8px #00000014;pointer-events:none;white-space:nowrap;z-index:3}.tabs{display:flex;gap:6px;margin:4px 0 12px;flex-wrap:wrap}tr.planned td{background:#f6f9ff}.seg{display:inline-flex}.seg button{border-radius:0}.seg button:first-child{border-radius:6px 0 0 6px}.seg button:last-child{border-radius:0 6px 6px 0;border-left:none}.board{display:flex;gap:10px;overflow-x:auto;padding-bottom:8px;align-items:flex-start}.board .col{flex:0 0 220px;background:#efeeea;border:1px solid var(--line);border-radius:10px;padding:8px;min-height:80px}.colhead{display:flex;justify-content:space-between;gap:6px;font-weight:600;font-size:12px;margin:2px 2px 8px}.tile{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:8px;margin-bottom:6px;cursor:pointer;font-size:12.5px;display:flex;flex-direction:column;gap:3px}.tile:hover{border-color:var(--accent)}.tile .t{font-weight:600}.tile .tilestage{font-size:12px;padding:3px 6px;margin-top:4px}.small-badge{font-size:11px;padding:0 6px;margin-left:4px;align-self:flex-start;color:var(--muted)}.card.editor{margin-bottom:16px;border-color:var(--accent)}.formgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;margin-top:8px}.formgrid .span2{grid-column:span 2}.formgrid label.check{align-self:end;padding-bottom:6px}tr.clickrow{cursor:pointer}tr.clickrow:hover td{background:var(--accent-weak)}input.overdue{color:var(--error)}.bars .barrow{display:grid;grid-template-columns:130px 1fr 64px;gap:8px;align-items:center;margin:5px 0}.bartrack{position:relative;height:12px;background:var(--bg);border-radius:3px}.bartrack .bar{position:absolute;left:0;top:0;height:12px;border-radius:3px;background:var(--series-1)}.bartrack .bar.ghost,.sw.ghost{opacity:.3}.sw.s0{background:#c9c8c2}.chartwrap .bar0{fill:#c9c8c2}.chartwrap .bar1{fill:var(--series-1)}.chartwrap .bar2{fill:var(--series-2)}@media (max-width: 640px){.formgrid .span2{grid-column:auto}.bars .barrow{grid-template-columns:100px 1fr 56px}}.login{gap:14px}.login h1{margin-bottom:2px}button.google{display:flex;align-items:center;justify-content:center;gap:10px;background:#fff;color:var(--text);border-color:var(--line);padding:9px 12px;font-weight:600}button.google:hover{border-color:var(--accent)}.center-text{text-align:center;margin:0}.stack{display:flex;flex-direction:column;gap:10px}.divider{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.divider:before,.divider:after{content:"";flex:1;border-top:1px solid var(--line)}.login p,.stack p{margin:0}.who a.me{color:var(--text)}input.plain{border-color:transparent;padding:2px 4px;background:transparent;font-weight:600}input.plain:hover:not(:disabled),input.plain:focus{border-color:var(--line);background:#fff}.checkgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:6px 12px;margin:6px 0}button.link.error{color:var(--error)}fieldset.bare{border:0;padding:0;margin:0;min-width:0}table.matrix th{white-space:normal;vertical-align:bottom;min-width:96px}table.matrix th:first-child,table.matrix td:first-child{min-width:260px}table.matrix tr.ghead td{background:var(--bg);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}table.matrix td.center-text input{width:16px;height:16px}
