@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Baskerville&display=swap');
:root{font-family:'DM Sans',system-ui,sans-serif;color:#182d32;background:#f5f6f2;font-size:15px;--ink:#123e3e;--muted:#657676;--line:#dde4dd}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,summary{outline-offset:4px}button{cursor:pointer;border:0;border-radius:8px;padding:12px 18px;background:var(--ink);color:white;font-weight:600}button:disabled{opacity:.5;cursor:wait}button.ghost{color:var(--ink);background:#edf0e9}a{color:var(--ink)}header{height:84px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 5vw}.brand{display:flex;gap:13px;align-items:center;font-weight:700;letter-spacing:.04em}.mark{background:var(--ink);color:#fff;padding:12px 10px;border-radius:5px;font-family:'Libre Baskerville',serif}.brand small{display:block;font-weight:400;color:var(--muted);font-size:11px;letter-spacing:.08em;margin-top:3px}.top-actions{display:flex;gap:10px;align-items:center}.badge{font-size:12px;background:#e9eee2;color:#425536;padding:6px 10px;border-radius:20px}.demo-banner{background:#fff3d9;text-align:center;padding:10px;font-size:13px}.shell{max-width:1200px;margin:0 auto;padding:44px 28px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.16em;color:#637967;text-transform:uppercase}h1{font:32px/1.3 'Libre Baskerville',Georgia,serif;letter-spacing:-.8px;margin:10px 0}h2{font-size:19px;margin:0 0 8px}h3{font-size:15px}p{line-height:1.6}.muted{color:var(--muted)}.intro{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.card{background:white;border:1px solid var(--line);border-radius:12px;padding:22px}.card .label{font-size:13px;color:var(--muted)}.value{font-size:27px;font-weight:600;letter-spacing:-1px;margin:13px 0 5px}.card small{font-size:12px;color:var(--muted)}.accent{background:var(--ink);color:white}.accent .label,.accent small{color:#c7d9d1}.tabs{display:flex;gap:26px;border-bottom:1px solid var(--line);margin:35px 0 24px;overflow-x:auto}.tabs button{border-radius:0;background:none;color:var(--muted);padding:13px 0;white-space:nowrap;border-bottom:3px solid transparent}.tabs button.active{color:var(--ink);border-color:#9caa77}.panel{background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden}.panel-head{padding:24px;display:flex;justify-content:space-between;gap:16px;align-items:center;border-bottom:1px solid var(--line)}.panel-head p{margin:5px 0 0;font-size:13px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);text-align:left;background:#fafbf8}td,th{padding:17px 24px;border-bottom:1px solid #edf0e9;font-size:13px}td.right,th.right{text-align:right}tr:last-child td{border-bottom:0}.status{background:#edf3e8;color:#496141;border-radius:20px;padding:5px 9px;font-size:11px}.status.pending{background:#fff1d6;color:#80601e}.details{padding:20px 24px;background:#fbfcf8}.breakdown{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.breakdown p{margin:5px 0}.notice{border-left:3px solid #aab68b;background:#edf1e7;padding:16px 20px;border-radius:0 8px 8px 0;font-size:13px;margin-top:22px}.empty{text-align:center;padding:45px 25px;color:var(--muted)}footer{display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted);margin-top:32px}.auth{min-height:calc(100vh - 84px);display:grid;grid-template-columns:1fr 1fr;max-width:1200px;margin:auto;padding:60px 40px;gap:90px;align-items:center}.auth-copy h1{font-size:43px;max-width:480px}.auth-copy p{max-width:420px;color:var(--muted)}.feature{display:flex;gap:16px;padding:18px 0;border-top:1px solid var(--line);max-width:420px}.feature b{font-size:13px;min-width:25px;color:#84925b}.feature span{font-size:14px}.auth-box{background:white;border:1px solid var(--line);border-radius:16px;padding:36px;box-shadow:0 15px 50px #123e3e06}label{display:block;margin:20px 0 8px;font-size:13px;font-weight:600}input,select,textarea{border:1px solid #cdd7cf;background:white;border-radius:7px;padding:12px;width:100%;color:#182d32}textarea{min-height:170px;font-family:monospace;font-size:12px}.wide{width:100%;margin-top:24px}.link-button{background:none;color:var(--ink);font-size:13px;padding:12px 0}.error{color:#9a302e;background:#fff0ed;padding:12px;border-radius:6px;font-size:13px}.success{background:#edf3e8;padding:12px;border-radius:6px;font-size:13px}.loading{padding:40px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:20px}.admin-tools{padding:24px}.admin-tools button{margin:12px 8px 0 0}.review{max-height:300px;overflow:auto;margin-top:16px}progress{width:100%;accent-color:#54734e;height:9px}.small{font-size:12px}.login-note{font-size:12px;color:var(--muted);margin-top:20px}.number{font-variant-numeric:tabular-nums}@media(max-width:850px){.auth{grid-template-columns:1fr;gap:25px;padding:30px 22px}.auth-copy h1{font-size:30px}.auth-copy .feature{display:none}.cards{grid-template-columns:1fr 1fr}.intro{display:block}.breakdown{grid-template-columns:1fr 1fr}.grid2{grid-template-columns:1fr}.shell{padding:28px 16px}header{padding:0 18px}.brand small{font-size:9px}.top-actions .badge{display:none}.auth-box{padding:26px}.value{font-size:23px}footer{display:block}.panel-head{align-items:flex-start;flex-direction:column}td,th{padding:15px}.top-actions button{padding:9px}}
.latest-processed{background:#e9f1e4}.latest-processed td:first-child{border-left:4px solid #54734e}.latest-due:not(.latest-processed){background:#fff8e8}.latest-due td:first-child{border-left:4px solid #c5a449}
[data-check-row]{cursor:pointer}[data-check-row]:hover{background:#edf2e8}[data-check-row]:focus-visible{outline:2px solid #54734e;outline-offset:-2px}.role-breakdown{padding:10px 0 20px}.role-breakdown h3{margin:12px 0}.role-breakdown table{white-space:normal}.role-breakdown .explanation{min-width:200px;max-width:540px;color:var(--muted);line-height:1.5}.breakdown-total{background:#f1f5eb}
