:root{--ink:#16352b;--green:#2f6b51;--line:#d7dfda;--muted:#6d7974;--red:#a72c25}*{box-sizing:border-box}body{margin:0;background:#f7f9f7;color:#18221e;font:15px/1.45 system-ui,-apple-system,Segoe UI,sans-serif}header{background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:17px max(24px,calc((100vw - 1180px)/2));gap:25px}.brand{font-weight:800;color:var(--ink);text-decoration:none;font-size:19px}nav{display:flex;gap:22px}nav a{color:#34453e;text-decoration:none;font-weight:650}small{display:block;color:var(--muted);font-size:.76em;font-weight:450}main{max-width:1180px;margin:auto;padding:42px 24px 80px}h1{font-size:36px;line-height:1.1;margin:6px 0 10px;color:var(--ink)}h1 small,h2 small{display:inline;font-size:.42em;margin-left:7px}h2{margin-top:38px;color:var(--ink)}a{color:var(--green)}.hero{max-width:650px;margin:20px 0 34px}.hero p{font-size:18px}.eyebrow{text-transform:uppercase;letter-spacing:.09em;color:var(--green);font-weight:800;font-size:12px!important}.actions{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{padding:25px;border:1px solid var(--line);border-radius:15px;background:#fff;text-decoration:none;color:var(--ink);font-size:18px}.card.primary{background:var(--green);color:white}.card.primary small{color:#d8ede2}.stats{display:flex;gap:32px;margin:35px 0;padding:22px 0;border-bottom:1px solid var(--line)}.stats span{display:grid;grid-template-columns:auto auto;column-gap:8px}.stats b{font-size:25px;grid-row:1/3}.pagehead{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.panel{background:white;border:1px solid var(--line);border-radius:14px;padding:24px;margin:20px 0}.panel summary{font-size:18px;font-weight:750;color:var(--ink);cursor:pointer;margin-bottom:20px}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.entryform{grid-template-columns:repeat(3,minmax(0,1fr))}.full{grid-column:1/-1}label,fieldset{display:flex;flex-direction:column;gap:6px;font-weight:700;border:0;padding:0;margin:0}input,select{width:100%;border:1px solid #aebbb5;border-radius:8px;padding:11px 12px;background:white;font:inherit}input:focus,select:focus{outline:3px solid #b9dccc;border-color:var(--green)}em{font-size:12px;color:var(--muted);font-weight:400}.segments{display:flex;gap:6px}.segments label{flex:1}.segments input{position:absolute;opacity:0}.segments span{border:1px solid #aebbb5;border-radius:8px;padding:11px 5px;text-align:center}.segments input:checked+span{background:var(--green);color:white}button,.button{display:inline-block;border:0;border-radius:9px;padding:11px 17px;background:var(--green);color:white;text-decoration:none;font:700 14px/1.2 inherit;cursor:pointer}.secondary{background:white;color:var(--green);border:1px solid var(--green)}button small,.button small{color:#d5e7df}.secondary small{color:var(--muted)}.inline,.invoice-actions{display:flex;align-items:end;gap:15px}.inline label{flex:1}.tablewrap{overflow:auto;background:white;border:1px solid var(--line);border-radius:12px}table{width:100%;border-collapse:collapse;background:white}th,td{text-align:left;padding:13px 14px;border-bottom:1px solid var(--line);white-space:nowrap}th{font-size:12px;text-transform:uppercase;color:var(--muted);background:#f3f7f4}.rowactions{display:flex;gap:10px}.rowactions form{display:inline}.link{padding:0;background:none;color:var(--green)}.danger{color:var(--red)}.muted{opacity:.58}.badge{background:#e9f0ec;border-radius:99px;padding:4px 9px;font-size:12px}.flash{padding:13px 16px;border-radius:9px;margin-bottom:18px;background:#e4f4e8;color:#1c5d34}.flash.error{background:#fde8e7;color:#8b201b}.steps{display:flex;gap:20px;color:var(--muted);margin:20px 0}.finalize{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:20px}.invoicecard{display:grid;grid-template-columns:1fr 1fr;gap:20px;background:white;border:1px solid var(--line);padding:25px;margin:20px 0}.total td{border-top:2px solid var(--ink)}.grand td{font-size:18px;font-weight:800;border-bottom:double 4px var(--ink)}.invoice-actions{margin-top:20px}@media(max-width:800px){header{align-items:flex-start}nav{display:grid;grid-template-columns:1fr 1fr;gap:8px 14px}.actions,.formgrid,.entryform{grid-template-columns:1fr}.stats,.pagehead,.finalize{align-items:stretch;flex-direction:column}.invoicecard{grid-template-columns:1fr}}@media(max-width:540px){header{display:block}.brand{display:block;margin-bottom:15px}.actions{grid-template-columns:1fr}h1{font-size:30px}}
