:root{--ink:#203333;--muted:#71817e;--green:#22745e;--line:#e2e9e5;--paper:#f5f7f4}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans','Segoe UI',sans-serif;font-size:14px}button,input,select,textarea{font:inherit}button,a,select{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #87b6a6;outline-offset:2px}aside{width:246px;background:#fff;border-right:1px solid var(--line);position:fixed;inset:0 auto 0 0;padding:32px 22px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none;font-size:21px;font-weight:700}.brandmark{background:#246e59;color:white;width:45px;height:45px;border-radius:13px;display:grid;place-items:center;font-size:25px}.brand small{display:block;font-size:9px;letter-spacing:1.8px;margin-top:5px;color:var(--muted)}.workspace{font-size:10px;color:#86928c;letter-spacing:1.4px;margin:47px 8px 17px}.workspace span{float:right;letter-spacing:0}nav{display:grid;gap:8px}nav button{display:flex;gap:13px;align-items:center;border:0;background:none;text-align:left;padding:14px;border-radius:8px;color:#71817e;font-size:18px}nav button span{font-size:13px}nav button.active{background:#eaf3ed;color:#22634f;font-weight:600}.aside-bottom{margin-top:auto;font-size:12px;color:#637870;padding:15px 8px 0}.aside-bottom small{display:block;font-size:10px;margin:10px 0 27px}.aside-bottom p{border-top:1px solid var(--line);padding-top:18px;color:#95a29c;font-size:10px}.dot{display:inline-block;width:7px;height:7px;border-radius:100%;background:#4c9679;margin-right:5px}main{margin-left:246px}header{height:83px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 38px;background:#fcfdfa;color:#87928a;font-size:12px}.header-right{display:flex;align-items:center;gap:15px}#saveStatus{color:#507a67}.avatar{background:#e6eadd;border-radius:50%;width:34px;height:34px;display:grid;place-items:center;font-size:11px;color:#53705b}.page{padding:37px 38px 50px;max-width:1800px;margin:auto}.heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:30px}.eyebrow{font-size:10px;letter-spacing:2px;color:#7d9187;font-weight:700}h1{font-size:32px;letter-spacing:-1.2px;font-weight:600;margin:10px 0}p{line-height:1.6}.heading p{font-size:13px;color:var(--muted);margin:0}.filters{display:flex;gap:8px;align-items:center}select,input,textarea{border:1px solid #dce4de;border-radius:7px;padding:10px 12px;background:#fff;color:var(--ink)}.year-pill{padding:11px 14px;background:#e8eee6;border-radius:7px;font-weight:600;font-size:12px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:24px}.metric{background:white;border:1px solid var(--line);border-radius:11px;padding:21px}.metric .label{font-size:11px;color:var(--muted)}.metric strong{display:block;font-size:30px;letter-spacing:-1px;font-weight:600;margin:14px 0 9px}.metric small{font-size:11px;color:#8a9890}.metric.green{background:#246e59;color:white;border-color:#246e59}.metric.green .label,.metric.green small{color:#d0e2d6}.panel{background:white;border:1px solid var(--line);border-radius:11px;margin-bottom:22px;overflow:hidden}.panel-head{display:flex;justify-content:space-between;align-items:center;padding:22px 24px;border-bottom:1px solid var(--line);gap:12px}.panel-head h2{margin:0;font-size:16px;font-weight:600}.panel-head small{font-size:11px;color:var(--muted)}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}th{font-size:10px;letter-spacing:.4px;font-weight:500;color:#819087;background:#fafbf8}th,td{padding:17px 18px;border-bottom:1px solid #edf0eb;white-space:nowrap}tbody tr:last-child td{border-bottom:0}.person-cell{display:flex;gap:10px;align-items:center;font-weight:600}.initial{width:31px;height:31px;display:grid;place-items:center;border-radius:50%;background:#eaf0e5;color:#617c5f;font-size:11px}.positive{color:#27785e}.negative{color:#b56954}.badge{font-size:10px;border-radius:5px;padding:5px 8px;display:inline-block;background:#edf4ec;color:#548263}.badge.open{background:#f6f0e3;color:#9c8456}.progress{height:5px;background:#edf1eb;border-radius:5px;width:85px;display:inline-block;margin-right:7px;vertical-align:middle}.progress i{display:block;height:5px;background:#66a38a;border-radius:5px}.lower{display:grid;grid-template-columns:1.5fr 1fr;gap:22px}.chart{height:190px;display:flex;align-items:end;gap:13px;padding:25px 24px 35px}.bar{flex:1;text-align:center;height:100%;display:flex;flex-direction:column;justify-content:end;gap:9px;color:#89978e;font-size:10px}.bar i{display:block;background:#a9c9b7;border-radius:4px 4px 0 0;min-height:2px}.bar.selected i{background:#2e7b60}.info-body{padding:17px 24px;color:#7c8c81;font-size:12px}.info-line{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid #edf0eb}.info-line:last-child{border:0}.legend{display:flex;gap:18px;flex-wrap:wrap;color:#7b8a82;font-size:11px;padding:16px 22px;background:#fcfdfb}.day-grid th,.day-grid td{padding:9px 5px;text-align:center}.day-grid .sticky{position:sticky;left:0;text-align:left;background:white;min-width:150px;z-index:1;padding-left:18px}.day-grid th.sticky{background:#fafbf8}.day-cell{border:0;border-radius:5px;background:#f2f6f0;min-width:32px;height:35px;font-size:12px;color:#345745}.day-cell.empty{background:#fafbf8;color:#9aa69e}.day-cell.U{background:#f7edda;color:#a17a2e}.day-cell.K{background:#f7e5e1;color:#b87562}.day-cell.F,.day-cell.FB{background:#e5edf5;color:#6e8ba3}.weekend{background:#f5f5f1;color:#b0b4ac}.day-cell:disabled{cursor:default;opacity:.75}.plain,.secondary{background:white;border:1px solid var(--line);color:#516d5e;border-radius:7px;padding:9px 12px;font-size:12px}.primary{background:#26755b;color:white;border:0;padding:11px 17px;border-radius:7px}.actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.person-form{padding:24px;border-bottom:1px solid var(--line)}.person-form h3{margin:0 0 20px;font-size:16px}label{display:grid;gap:8px;color:#6b8073;font-size:12px}.muted{color:#829187;font-size:12px}.settings-block{padding:24px;max-width:820px}.settings-block label{margin:16px 0}.settings-block input{width:100%}#notice{margin:15px 38px 0;padding:13px 18px;border-radius:7px;background:#fff1dc;color:#89632e;line-height:1.5}dialog{border:1px solid var(--line);border-radius:14px;padding:28px;width:min(480px,95vw);color:var(--ink)}dialog::backdrop{background:#183b2c60}dialog h2{margin:10px 0 22px;font-size:22px}dialog label{margin:15px 0}dialog input,dialog select,dialog textarea{width:100%}.small-link{border:0;background:transparent;color:#26755b;text-decoration:underline;font-size:12px}#content .error{padding:25px;color:#a04d36}a{color:#26755b}.empty-state{padding:35px;color:#798d7e}.data-status{padding:15px 22px;background:#eef4ec;color:#64806b;font-size:12px}.person-form input{width:100%}@media(max-width:1100px){aside{width:205px;padding:28px 15px}main{margin-left:205px}.page{padding:28px 22px}.metrics{gap:10px}.metric{padding:16px}.heading{align-items:start;flex-direction:column}.lower{grid-template-columns:1fr}header{padding:0 22px}}@media(max-width:700px){aside{position:static;width:100%;padding:15px;border-right:0;border-bottom:1px solid var(--line)}.brand{font-size:17px}.brandmark{width:35px;height:35px}.workspace,.aside-bottom{display:none}nav{display:flex;overflow:auto;margin-top:15px;gap:5px}nav button{padding:9px;font-size:14px}nav button span{font-size:11px;white-space:nowrap}main{margin:0}header{height:60px;padding:0 15px}#breadcrumb,.avatar{display:none}.page{padding:24px 15px}.metrics{grid-template-columns:repeat(2,1fr)}.metric strong{font-size:25px}.form-grid{grid-template-columns:1fr}.filters{flex-wrap:wrap}.panel-head{padding:18px}h1{font-size:28px}#notice{margin:12px 15px}.header-right{width:100%;justify-content:space-between}.chart{gap:7px}}
.productivity{display:inline-block;border-radius:7px;padding:7px 12px;font-weight:600;font-variant-numeric:tabular-nums}.good{background:#dfefe2;color:#346446}.medium{background:#fff0c9;color:#795d17}.low{background:#f8dfdf;color:#914b4b}.neutral{background:#edf0ec;color:#6c7d72}.productivity-summary{margin:22px 24px 8px;padding:20px 24px;border-radius:10px;display:flex;align-items:center;gap:22px;flex-wrap:wrap}.productivity-summary strong{font-size:32px;letter-spacing:-1px}.productivity-summary small{font-size:12px}
.year-context{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-bottom:20px;color:#6d8374;font-size:12px}.year-context>span:first-child{letter-spacing:1.5px;font-size:10px;font-weight:700}.annual-metrics .metric.good{background:#dfefe2}.annual-metrics .metric.medium{background:#fff0c9}.annual-metrics .metric.low{background:#f8dfdf}.annual-metrics .metric.neutral{background:#edf0ec}.annual-metrics .metric .label,.annual-metrics .metric small{color:inherit;opacity:.8}.annual-metrics strong{font-size:28px}.annual-explainer{font-size:12px;color:#718478;line-height:1.7;margin:0 0 24px}.annual-explainer .legend{background:transparent;padding:12px 0 0}.annual-charts{grid-template-columns:1fr 1fr}.annual-bars{height:218px;display:flex;gap:7px;padding:10px 20px 24px}.month-column{flex:1;min-width:0;display:flex;flex-direction:column;align-items:stretch;justify-content:end;background:transparent;border:0;padding:0;color:#7b8d80;font-size:10px}.bar-pair{height:170px;display:flex;align-items:end;justify-content:center;gap:3px;margin-bottom:10px}.bar-pair i{width:40%;border-radius:3px 3px 0 0}.actual-bar,.actual-key{background:#57977a}.expected-bar,.expected-key{background:#dbe6d9}.incomplete .actual-bar{background:#c5d7c9;border:1px dashed #6b9c7c}.chart-key{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:4px}.productivity-months{display:grid;grid-template-columns:repeat(12,minmax(75px,1fr));gap:8px;padding:22px;overflow:auto}.productivity-month{display:flex;flex-direction:column;gap:10px;text-align:left;border:0;border-radius:9px;padding:14px 10px}.productivity-month span{font-size:11px}.productivity-month strong{font-size:17px;white-space:nowrap}.productivity-month small{font-size:9px;white-space:nowrap}.balance-chart{padding:17px 20px 8px}.balance-chart svg{width:100%;height:auto;min-height:200px}.balance-chart text{font-size:10px;fill:#7b8d80}.balance-chart p{font-size:10px}.person-dashboard-link{border:0;background:transparent;padding:0;color:inherit}.todo-list{padding:10px 22px;max-height:350px;overflow:auto}.todo-item{border:0;border-bottom:1px solid #e8eee6;background:transparent;padding:14px 0;width:100%;display:flex;justify-content:space-between;gap:12px;text-align:left;font-size:12px;color:#67806c}.todo-item b{font-size:11px;white-space:nowrap;font-weight:500}.todo-item small{display:block;font-size:10px;margin-top:5px}.todo-list details{margin:15px 0;color:#718474;font-size:12px}.todo-list summary{cursor:pointer}tfoot td{background:#f2f6ef;font-weight:600}@media(max-width:1100px){.annual-charts{grid-template-columns:1fr}.productivity-months{grid-template-columns:repeat(6,minmax(80px,1fr))}}@media(max-width:700px){.productivity-months{grid-template-columns:repeat(3,1fr)}.annual-metrics strong{font-size:23px}.year-context{gap:10px}.annual-bars{gap:4px;padding:10px 10px 24px}}
