:root{color-scheme:light;--ink:#17343d;--muted:#5a747d;--line:#dce6e6;--teal:#126a66;--paper:#fff;--bg:#f3f6f5;--warn:#835c16}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}aside{width:236px;position:fixed;inset:0 auto 0 0;overflow:auto;background:#153b42;color:#fff;padding:30px 20px}.brand{font-weight:750;font-size:24px;text-decoration:none;color:#fff;letter-spacing:-.5px}.brand span{display:block;font-weight:450}aside .subtle{color:#b2cecf}aside label{display:block;margin-top:22px;font-size:12px;letter-spacing:.4px}aside select{margin-top:7px;width:100%;background:#244b51;color:#fff;border-color:#42646a}nav{margin-top:26px;display:grid;gap:6px}nav button{background:transparent;color:#d8e8e8;text-align:left;border:0;padding:11px 12px;font-size:14px;line-height:1.4}nav button[aria-current=true]{background:#f3f6f5;color:#173b41;font-weight:650}nav small{display:block;opacity:.65;font-weight:400}.aside-note{border-top:1px solid #44646a;margin-top:28px;padding-top:20px;font-size:12px;color:#b2cecf}main{margin-left:236px;max-width:1580px;padding:32px 36px 60px}header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}h1{font-size:32px;letter-spacing:-.8px;line-height:1.15;margin:8px 0 10px}h2{font-size:21px;letter-spacing:-.35px;margin:0 0 8px}p{margin:6px 0 15px}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:1.5px;color:var(--teal);font-weight:700}.subtle{color:var(--muted);font-size:13px}.block{display:block}.badge{white-space:nowrap;padding:6px 12px;border:1px solid #c7ddda;background:#e7f1ee;color:#2b6961;border-radius:24px;font-size:12px}.actions{position:sticky;top:0;z-index:3;background:#f3f6f5f5;backdrop-filter:blur(8px);padding:18px 0;display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid var(--line)}button,input,select{font:inherit;border-radius:7px;border:1px solid #bfd1d2;padding:9px 11px;background:#fff;color:var(--ink)}button{cursor:pointer;font-weight:600}button:hover{border-color:var(--teal)}button.primary{background:var(--teal);color:#fff;border-color:var(--teal)}button:disabled{opacity:.45;cursor:default}input:focus,select:focus,button:focus-visible{outline:3px solid #80c2b9;outline-offset:2px}input.numeric{width:100%;font-variant-numeric:tabular-nums}input.invalid{border-color:#b83838}.button-group{display:flex;gap:8px}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:24px 0}.card{background:#fff;border:1px solid var(--line);padding:19px;border-radius:12px}.card span{display:block;font-size:12px;color:var(--muted);margin-bottom:8px}.card strong{font-size:25px;font-weight:650;letter-spacing:-.7px}.card small{display:block;color:var(--muted);font-size:12px;margin-top:6px}section{margin:18px 0;background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px}.section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.input-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.input-grid label{font-size:13px;font-weight:600}.input-grid label input{display:block;margin:7px 0 4px}.input-grid small{display:block;font-size:11px;color:var(--muted);font-weight:400}.tablebox{overflow:auto}table{width:100%;border-collapse:collapse;font-size:14px}th,td{padding:12px 10px;text-align:left;border-bottom:1px solid var(--line);vertical-align:middle}th{font-weight:600;color:var(--muted);font-size:12px;background:#f7faf9;white-space:nowrap}td input{max-width:155px}tfoot td{font-weight:650;border:0}.num{text-align:right;font-variant-numeric:tabular-nums}.bad{color:#ae3932}.good{color:#167666}.warn{color:var(--warn)}.notice{border:1px solid #e5d2ad;background:#fff5e1;color:#674b24;padding:15px 18px;border-radius:9px;margin:12px 0}.message{padding:12px 16px;border-radius:8px;margin:12px 0;border:1px solid #bed8cf;background:#edf7f1}.message.error{background:#fff0ef;color:#993b31;border-color:#e2c0ba}.reference{margin-top:18px;border-top:1px solid var(--line);padding-top:15px}summary{cursor:pointer;font-weight:600}.reference summary{font-size:14px}.reference p{margin-top:12px}.person{border:1px solid var(--line);border-radius:9px;margin-top:12px;padding:16px}.person-top{display:flex;gap:15px;align-items:flex-start;justify-content:space-between}.person-name{font-size:16px;font-weight:650}.person-total{font-size:19px;font-weight:650;text-align:right}.person-total small{display:block;font-size:12px;font-weight:400;color:var(--muted)}.person-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:13px 0}.person-inputs label{font-size:12px;color:var(--muted)}.person-inputs input{width:100%;margin-top:5px}.person-inputs .reason{grid-column:span 2}.person details{font-size:13px}.person summary{color:var(--teal);font-weight:500}#note{width:100%;max-width:780px}#search{min-width:200px}footer{color:var(--muted);font-size:12px;padding:10px 0}.history-item{border-bottom:1px solid var(--line);padding:12px 0}.history-item p{margin:4px 0}.history-item ul{font-size:13px;color:var(--muted);padding-left:20px}.history-item small{color:var(--muted)}.targets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.target{background:#f4f8f7;border-radius:7px;padding:12px;font-size:13px}.target span{display:block;color:var(--muted);font-size:12px}@media(max-width:1150px){.input-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}main{padding:26px 22px}.actions{align-items:flex-start;flex-direction:column}.person-inputs{grid-template-columns:repeat(2,minmax(0,1fr))}.person-inputs .reason{grid-column:span 1}}@media(max-width:760px){aside{position:static;width:auto;padding:20px}.brand span{display:inline}aside label{display:inline-block;width:47%;margin-right:2%}nav{display:flex;overflow:auto}nav button{min-width:150px}.aside-note{display:none}main{margin-left:0;padding:20px 14px}h1{font-size:27px}.input-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-heading{display:block}#search{width:100%;margin-bottom:10px}.person-inputs{grid-template-columns:1fr}.targets{grid-template-columns:1fr}section{padding:17px}.badge{display:none}}@media print{aside,.actions,#message{display:none}main{margin:0;padding:0}section{break-inside:avoid}body{background:#fff}}
