*{box-sizing:border-box}body{margin:0;font:16px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:#f3f5f4;color:#1d2a24}
.top{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.6rem 1rem;background:#1f4d3a;color:#fff;flex-wrap:wrap}
.top a{color:#fff;text-decoration:none;margin-left:.8rem}.brand{font-weight:700;margin-left:0!important}.top nav{display:flex;align-items:center}
main{max-width:960px;margin:0 auto;padding:1rem}h1{font-size:1.35rem}
.btn{display:inline-block;background:#2e7d5b;color:#fff!important;border:0;border-radius:8px;padding:.5rem .9rem;font:inherit;cursor:pointer;text-decoration:none}
.btn.ghost{background:#e2ebe6;color:#1f4d3a!important}.btn.big{padding:.75rem 1.2rem;font-size:1.05rem}.btn.sm{padding:.3rem .6rem}
button.link{background:none;border:0;color:#fff;font:inherit;cursor:pointer;margin-left:.8rem}.inline{display:inline}
.card{background:#fff;border-radius:12px;padding:1rem;box-shadow:0 1px 3px #0002}.narrow{max-width:380px;margin:3rem auto}
label{display:block;margin:.5rem 0;font-weight:600;font-size:.92rem}.label{font-weight:600;margin:.6rem 0 .3rem}
input,select,textarea{display:block;width:100%;padding:.55rem;border:1px solid #c5d0ca;border-radius:8px;font:inherit;font-weight:400;margin-top:.2rem;background:#fff}
fieldset{border:1px solid #dfe6e2;border-radius:10px;margin:0 0 1rem;padding:.6rem .9rem}legend{font-weight:700;color:#1f4d3a}
.two{display:grid;grid-template-columns:1fr 1fr;gap:0 .8rem}.err{background:#fde8e8;color:#8a1c1c;padding:.5rem;border-radius:8px}
.flash{background:#e8f4ee;padding:.6rem;border-radius:8px;margin-bottom:.8rem}
.search{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.search input{flex:2;min-width:180px}.search select{flex:1;min-width:140px}.search *{margin:0}
.list{display:flex;flex-direction:column;gap:.5rem}.row{display:flex;flex-direction:column;background:#fff;border-radius:10px;padding:.7rem .9rem;text-decoration:none;color:inherit;box-shadow:0 1px 2px #0001}
.muted{color:#5d6d65}.small{font-size:.82rem}.tag{font-size:.75rem;font-weight:700;text-transform:uppercase;color:#1f4d3a}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.8rem}.tile{background:#fff;border-radius:12px;padding:1.4rem 1rem;text-decoration:none;color:#1f4d3a;font-weight:700;font-size:1.1rem;box-shadow:0 1px 3px #0002;border-left:6px solid #2e7d5b}
.sched{display:flex;flex-direction:column;gap:.35rem}.srow{display:grid;grid-template-columns:1.5rem 1.3fr 1.5fr 1fr;gap:.35rem;align-items:center}.srow input{margin:0}.n{color:#5d6d65;text-align:right}
.gen{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;font-size:.9rem;margin-bottom:.5rem}.gen input,.gen select{width:auto;display:inline-block;margin:0}.w4{width:4rem!important}.w10{width:10rem!important}
.chk{display:grid;grid-template-columns:2rem 1fr;align-items:start;gap:.3rem;margin:.3rem 0}.chk input{width:1.3rem;height:1.3rem;margin-top:.6rem}
.cb{display:flex;gap:.5rem;align-items:center}.cb input{width:auto;margin:0}
.cres{display:flex;flex-direction:column;gap:.25rem}.cpick{text-align:left;background:#eef4f1;border:1px solid #cfe0d7;border-radius:8px;padding:.45rem;font:inherit;cursor:pointer}
.actions{display:flex;gap:1rem;align-items:center}.toolbar{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;margin-bottom:1rem}
.sheet{background:#fff;max-width:8.5in;margin:0 auto;padding:.6in .7in;box-shadow:0 1px 4px #0003;font-family:Georgia,"Times New Roman",serif;font-size:11pt;line-height:1.4}
.lh{text-align:center;border-bottom:2px solid #1f4d3a;padding-bottom:.4rem}.co{font-size:18pt;font-weight:700;color:#1f4d3a;letter-spacing:.03em}
.doc{text-align:center;font-size:14pt;margin:.8rem 0}.doc .sub{font-size:12pt;font-weight:400}
.sheet table{width:100%;border-collapse:collapse;margin:.5rem 0}.hdr td{vertical-align:top;padding:.3rem;width:50%}
.grid3 th,.grid3 td{border:1px solid #999;padding:.25rem .4rem;text-align:left}.grid3 th{background:#eef3f0}
.kv td{padding:.2rem .4rem;border-bottom:1px solid #ddd}.kv td:first-child{width:45%}.pre{white-space:pre-wrap}
.sheet h3{font-size:11.5pt;margin:.8rem 0 .2rem}.closing{font-size:9.5pt;margin-top:1rem}
.sig td{padding:2rem .4rem .2rem;border-bottom:1px solid #000;font-size:9pt;vertical-align:bottom}.sig td:last-child{width:30%}
@media (max-width:640px){.two{grid-template-columns:1fr}.srow{grid-template-columns:1.2rem 1fr;}.srow input:nth-child(3),.srow input:nth-child(4){grid-column:2}
.sheet{padding:1rem;font-size:10.5pt}.hdr td{display:block;width:100%}}
@media print{body{background:#fff}.noprint,.top,.flash{display:none!important}main{padding:0;max-width:none}.sheet{box-shadow:none;padding:0;max-width:none}@page{size:letter;margin:.6in}}
