:root{font-family:Inter,"Noto Sans SC",system-ui,sans-serif;color:#18211d;background:#eef3ef;line-height:1.5}
*{box-sizing:border-box}body{margin:0}.shell{width:min(1120px,calc(100% - 32px));margin:48px auto 80px}
header{display:flex;justify-content:space-between;align-items:end;margin-bottom:24px}h1{font-size:clamp(2rem,5vw,4rem);line-height:1;margin:6px 0}.eyebrow{font-weight:800;letter-spacing:.18em;color:#167451}.sub,#itemCount{color:#66736d;margin:0}.rate-box{background:#163b2f;color:white;padding:16px 20px;border-radius:16px;display:grid;gap:5px}.rate-box input{width:150px}
.rate-row{display:flex;gap:7px}.rate-row button{width:44px;padding:0;background:#2b7058;font-size:1.2rem}.rate-box small{max-width:200px;color:#c9dfd5;font-size:.72rem}.rate-row button:disabled{opacity:.55;cursor:wait}
.card{background:#fff;border:1px solid #dce5df;border-radius:22px;padding:28px;margin:18px 0;box-shadow:0 12px 40px #214b3710}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}label{display:grid;gap:7px;font-size:.86rem;font-weight:700;color:#53615b}input,textarea{border:1px solid #cbd7d0;border-radius:10px;padding:12px;font:inherit;color:#18211d;background:#fbfdfb}input:focus,textarea:focus{outline:3px solid #2c9c6b25;border-color:#2c9c6b}textarea{width:100%;resize:vertical;line-height:1.6}.terms-editor{margin-top:24px}.terms-editor label{margin-bottom:7px}
button{border:0;border-radius:10px;padding:12px 18px;background:#14734f;color:#fff;font-weight:800;cursor:pointer}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.secondary{background:#dcebe3;color:#174936}.danger{color:#a33}.ghost{background:transparent}.save{width:100%;margin-top:18px;font-size:1rem;padding:15px}.section-head,.summary{display:flex;justify-content:space-between;align-items:center}.section-head h2{margin:0}.table-wrap{overflow:auto;margin-top:20px}table{width:100%;border-collapse:collapse;white-space:nowrap}th,td{text-align:left;padding:13px 10px;border-bottom:1px solid #e8edea}th{font-size:.76rem;text-transform:uppercase;color:#748079}.remove{background:#f8e8e8;color:#9b2d2d;padding:4px 9px}.empty td{text-align:center;color:#8b9690;padding:35px}.summary{padding:20px 4px 4px;font-size:1.15rem}.preview,.message{margin-top:16px;padding:12px;border-radius:10px;background:#eff8f2;color:#176044}.message:empty{display:none}
@media(max-width:700px){.shell{margin-top:24px}header{align-items:start;gap:20px;flex-direction:column}.grid{grid-template-columns:1fr}.card{padding:19px}.rate-box{width:100%}.actions{flex-direction:column}.actions button{width:100%}}
.program-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}.program-card{display:flex;align-items:center;gap:18px;padding:24px;background:#fff;border:1px solid #dce5df;border-radius:20px;color:#18211d;text-decoration:none;box-shadow:0 12px 40px #214b3710;transition:.18s ease}.program-card:hover{transform:translateY(-3px);border-color:#7fb79e}.program-card strong,.program-card small{display:block}.program-card strong{font-size:1.15rem}.program-card small{margin-top:5px;color:#66736d}.program-card b{margin-left:auto;font-size:1.5rem;color:#14734f}.program-icon{display:grid;place-items:center;width:52px;height:52px;flex:0 0 52px;border-radius:15px;background:#dcebe3;color:#14734f;font-size:1.45rem;font-weight:900}
.pdf-controls{display:flex;align-items:end;gap:12px;margin-top:20px;padding:16px;border-radius:14px;background:#f4f8f5}.pdf-controls label{flex:1}.pdf-controls .secondary{white-space:nowrap;padding:13px 18px}.message a{color:#0d6040;font-weight:800;margin-left:8px}
.form-title{font-size:1rem;margin:0 0 14px;color:#173e31}.product-title{margin-top:28px;padding-top:22px;border-top:1px solid #e3ebe6}
.customer-actions{display:flex;align-items:center;gap:12px;margin-top:14px}.customer-actions small{color:#176044}.customer-actions button{padding:9px 14px}
@media(max-width:700px){.pdf-controls{align-items:stretch;flex-direction:column}}
