:root{--ink:#15231b;--muted:#66736a;--paper:#f7f8f4;--card:#fff;--green:#176b43;--line:#dce3db;--red:#a82e2e}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.45 system-ui,-apple-system,Segoe UI,sans-serif}header{min-height:64px;background:#fff;border-bottom:1px solid var(--line);padding:0 5%;display:flex;align-items:center;gap:24px;justify-content:space-between}.brand{font-weight:750;color:var(--ink);text-decoration:none}nav{display:flex;align-items:center;gap:16px;flex-wrap:wrap}nav a,.admin-link{color:var(--green);font-size:.92rem;text-decoration:none}.admin-link{margin-left:auto}nav form{margin:0}.link{border:0;background:transparent;color:var(--green);font:inherit;cursor:pointer;padding:0}main{max-width:1080px;margin:0 auto;padding:42px 20px 64px}.hero{max-width:690px}.eyebrow{font-size:.75rem;letter-spacing:.11em;font-weight:750;color:var(--green);margin:0 0 7px}h1{font-size:clamp(2rem,5vw,3.2rem);line-height:1.08;margin:0 0 14px}h2{font-size:1.25rem;margin:0 0 16px}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:22px;margin:22px 0;box-shadow:0 2px 6px #15231b08}.usage{max-width:760px}.usage>label,.narrow-form label{display:block;margin:15px 0}.line-item{position:relative;display:grid;grid-template-columns:1.5fr 1fr;gap:14px;padding:18px 0;border-top:1px solid var(--line)}.line-item:first-child{border-top:0}.line-item label,.filters label{display:block;font-size:.88rem;font-weight:650}.line-item .balance{grid-column:1/-1;margin:0;color:var(--muted)}input,select,textarea{margin-top:5px;width:100%;border:1px solid #bdc9c0;border-radius:8px;background:#fff;padding:11px;font:inherit;color:var(--ink)}textarea{min-height:88px;resize:vertical}button,.button{display:inline-block;border:0;border-radius:8px;padding:11px 16px;font:inherit;font-weight:700;cursor:pointer;text-decoration:none}.primary{background:var(--green);color:#fff;margin-top:16px}.secondary{color:var(--green);background:#e5f1e9;margin:4px 8px 4px 0}.remove-line,.danger{color:var(--red);background:#fff;border:1px solid #ebc8c8}.remove-line{position:absolute;right:0;bottom:14px;padding:5px 8px;font-size:.8rem}.notice{padding:13px 15px;border-radius:9px;margin-bottom:18px}.notice.success{background:#e4f4e9;color:#135431}.notice.error{background:#fae8e8;color:#8c2525}.narrow{max-width:440px;margin:42px auto}.narrow-form{max-width:560px}.hint{color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.stats div{background:#e6f0e9;border-radius:12px;padding:18px}.stats strong,.stats span{display:block}.stats strong{font-size:2rem}.stats span{font-size:.85rem;color:var(--muted)}.inline,.filters{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.inline input{width:auto;flex:1;min-width:150px}.inline button,.filters button{margin-top:5px}.filters label{min-width:145px;flex:1}.filters .button{margin:5px 0 0}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:.9rem}th,td{padding:10px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;white-space:nowrap}th{color:var(--muted);font-weight:650}td input{min-width:100px;padding:7px;margin:0}.small{padding:7px 9px;font-size:.8rem;margin:0}.toggle{font-size:.8rem}.toggle input{width:auto;margin:0 5px 0 0}@media(max-width:650px){header{padding:14px 20px;align-items:flex-start;flex-direction:column;gap:8px}main{padding:30px 16px}.line-item{grid-template-columns:1fr}.stats{grid-template-columns:1fr}.remove-line{position:static;justify-self:start}.inline{display:block}.inline input,.inline button{width:100%;margin:5px 0}.filters{display:grid;grid-template-columns:1fr 1fr}.filters button,.filters .button{width:100%;text-align:center}.table-wrap{padding:10px}table{font-size:.82rem}}
