:root{--ink:#17211d;--muted:#647069;--forest:#18372c;--green:#28634e;--gold:#b9934a;--paper:#f5f3ed;--line:#dedfd9;--white:#fff;--shadow:0 18px 50px rgba(20,42,33,.09)}*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper)}body{margin:0}.topbar{height:76px;padding:0 max(24px,calc((100% - 1280px)/2));display:flex;align-items:center;justify-content:space-between;background:var(--forest);color:white}.brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none}.brand-mark{width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.08);color:#e5c886;font-family:Georgia,serif;font-weight:700;letter-spacing:.05em}.brand strong,.brand small{display:block}.brand small{opacity:.65;margin-top:3px;font-size:12px}.header-actions{display:flex;gap:20px;align-items:center}.status{font-size:12px;opacity:.8}.status i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#7cd7a5;margin-right:7px}.text-link{color:white;font-size:13px}.shell{max-width:1280px;margin:auto;padding:52px 24px}.hero{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:32px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.18em;color:var(--gold);margin:0 0 10px}.hero h1{font-family:Georgia,serif;font-size:44px;font-weight:500;letter-spacing:-.025em;margin:0}.lede{color:var(--muted);margin:12px 0 0}.year-switcher{display:flex;background:#e9e7df;border-radius:9px;padding:4px}.year-switcher a{padding:10px 18px;border-radius:6px;text-decoration:none;color:var(--muted);font-weight:700}.year-switcher a.active{background:white;color:var(--forest);box-shadow:0 3px 12px rgba(0,0,0,.08)}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}.summary-card{background:white;border:1px solid #e5e4df;border-radius:12px;padding:22px;box-shadow:0 6px 24px rgba(25,45,36,.04)}.summary-card span,.summary-card small{display:block;color:var(--muted);font-size:12px}.summary-card strong{display:block;font-family:Georgia,serif;font-size:25px;margin:10px 0 8px}.summary-card.accent{background:var(--forest);color:white;border-color:var(--forest)}.summary-card.accent span,.summary-card.accent small{color:rgba(255,255,255,.67)}.panel{background:white;border-radius:14px;box-shadow:var(--shadow);overflow:hidden}.panel-head{display:flex;align-items:center;justify-content:space-between;padding:26px 28px;border-bottom:1px solid var(--line)}.panel-head h2{font-family:Georgia,serif;font-size:27px;font-weight:500;margin:0}.panel-head p:not(.eyebrow){color:var(--muted);font-size:13px;margin:7px 0 0}.buttons{display:flex;gap:9px}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;padding:11px 16px;border-radius:7px;font:inherit;font-size:13px;font-weight:750;text-decoration:none;cursor:pointer}.primary{border:1px solid var(--green);background:var(--green);color:white}.secondary{border:1px solid var(--line);background:white;color:var(--ink)}.toolbar{padding:17px 28px;background:#fbfbf9;display:flex;gap:12px;justify-content:space-between}.search{position:relative;max-width:400px;flex:1}.search span{position:absolute;left:13px;top:7px;font-size:21px;color:var(--muted)}input,select{width:100%;border:1px solid var(--line);background:white;border-radius:7px;padding:11px 12px;font:inherit;color:var(--ink)}.search input{padding-left:40px}.month-filter{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--muted)}.month-filter select{width:150px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px;white-space:nowrap}th{text-align:right;color:var(--muted);font-size:10px;letter-spacing:.09em;text-transform:uppercase;padding:15px 18px;background:#fbfbf9;border-bottom:1px solid var(--line)}th:first-child,td:first-child{text-align:left;padding-left:28px}td{text-align:right;padding:16px 18px;border-bottom:1px solid #ecece8;font-variant-numeric:tabular-nums}tbody tr:hover{background:#f7faf8}.rate{background:#eef4f1;color:var(--green);padding:5px 8px;border-radius:20px;font-weight:700}tfoot td{background:var(--forest);color:white;font-weight:750;border:0}.empty{text-align:center;padding:40px;color:var(--muted)}.note{color:var(--muted);font-size:12px;text-align:center;margin:22px}.note+*{}footer{border-top:1px solid var(--line);color:var(--muted);font-size:12px;text-align:center;padding:24px}dialog{border:0;padding:0;width:min(1040px,92vw);height:90vh;border-radius:12px;box-shadow:0 30px 90px rgba(0,0,0,.35)}dialog::backdrop{background:rgba(8,18,14,.75)}.dialog-head{height:62px;padding:0 18px 0 22px;display:flex;align-items:center;justify-content:space-between;background:var(--forest);color:white}.dialog-head strong,.dialog-head small{display:block}.dialog-head small{font-size:11px;opacity:.6;margin-top:3px}.dialog-head button{border:0;background:transparent;color:white;font-size:30px;cursor:pointer}dialog iframe{border:0;width:100%;height:calc(100% - 62px)}.login-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(145deg,#10271f,#28513f)}.login-card{width:min(420px,calc(100% - 36px));background:white;padding:38px;border-radius:14px;box-shadow:0 28px 80px rgba(0,0,0,.25)}.login-card .brand-mark{background:var(--forest);margin-bottom:24px}.login-card h1{font-family:Georgia,serif;font-size:34px;margin:0}.login-card>p:not(.eyebrow){color:var(--muted)}.login-card label{display:block;font-size:12px;font-weight:700;margin:18px 0}.login-card input{margin-top:7px}.login-card button{width:100%}.alert{padding:12px;background:#fff0ee;color:#8c3027;border-radius:7px;font-size:13px}@media(max-width:900px){.summary-grid{grid-template-columns:repeat(2,1fr)}.panel-head{align-items:flex-start}.buttons{flex-direction:column}.hero h1{font-size:38px}}@media(max-width:620px){.topbar{padding:0 16px}.status{display:none}.shell{padding:34px 14px}.hero{align-items:flex-start;flex-direction:column}.hero h1{font-size:34px}.summary-grid{grid-template-columns:1fr 1fr;gap:8px}.summary-card{padding:16px}.summary-card strong{font-size:19px}.panel-head{padding:22px 18px;flex-direction:column;gap:18px}.buttons{width:100%;display:grid;grid-template-columns:1fr 1fr}.toolbar{padding:14px 18px;flex-direction:column}.month-filter select{flex:1}.brand small{display:none}}
