:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#16313b;background:#eef4f3;line-height:1.5;--ink:#16313b;--navy:#0c2933;--teal:#087f70;--mint:#67e3c8;--line:#d6e2df;--paper:#fff;--amber:#a56500;--red:#a72d38;--shadow:0 16px 38px rgba(15,48,57,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:linear-gradient(150deg,#f8fbfa 0,#edf5f3 55%,#e6f0ef 100%)}
a{color:#087467;text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:#04584f}.topbar{min-height:74px;padding:12px clamp(18px,5vw,72px);display:flex;align-items:center;gap:32px;background:var(--navy);color:#fff;box-shadow:0 8px 30px rgba(2,25,32,.18)}
.brand{font-size:25px;font-weight:850;letter-spacing:-1px;color:#fff;text-decoration:none}.brand span{color:var(--mint)}.topbar nav{display:flex;gap:8px;flex:1}.topbar nav a{color:#d6e8e5;text-decoration:none;padding:10px 13px;border-radius:9px}.topbar nav a:hover{background:#173c47;color:#fff}.account{display:flex;align-items:center;gap:14px;text-align:right}.account small{display:block;color:#9fc0ba}
main{width:min(1180px,calc(100% - 32px));margin:34px auto 80px}.page-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin:10px 0 28px}.page-head h1{margin:.15em 0;font-size:clamp(32px,5vw,52px);line-height:1.04;letter-spacing:-1.8px}.page-head p{margin:.3em 0;max-width:720px}.eyebrow{color:var(--teal);font-size:12px;font-weight:800;letter-spacing:2px}.subtle{color:#668087;font-size:.92em}
section,details{background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:16px;padding:clamp(20px,3vw,30px);margin:20px 0;box-shadow:var(--shadow)}section h2,section h3{margin-top:0}.section-title{display:flex;align-items:center;justify-content:space-between;gap:16px}.summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;padding:1px;background:var(--line);overflow:hidden}.summary-grid div{background:#fff;padding:20px}.summary-grid span{display:block;color:#6a7f84;font-size:13px;margin-bottom:5px}.summary-grid strong{font-weight:650}
form{display:flex;flex-wrap:wrap;align-items:end;gap:16px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.form-grid.small{grid-template-columns:1fr 1fr auto;margin-top:16px}.full,fieldset.full{grid-column:1/-1}label{display:grid;gap:7px;min-width:0;font-weight:650;font-size:14px}input,select,textarea,button,.button{font:inherit}input,select,textarea{width:100%;border:1px solid #9bb2b1;border-radius:9px;background:#fff;color:var(--ink);padding:11px 12px;min-height:46px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--teal);outline:3px solid rgba(8,127,112,.16)}fieldset{border:1px solid var(--line);border-radius:12px;padding:16px}legend{font-weight:750;padding:0 8px}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.check-grid label{display:flex;align-items:flex-start;background:#f5f9f8;border-radius:9px;padding:11px;font-weight:550}.check-grid input{width:auto;min-height:0;margin:4px 8px 0 0}
button,.button{border:0;border-radius:9px;min-height:44px;padding:11px 17px;background:var(--teal);color:#fff;font-weight:750;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}button:hover,.button:hover{background:#05695e;color:#fff}.secondary{background:#dce8e6;color:#21454b}.secondary:hover{background:#c8dbd8;color:#16313b}.danger{background:var(--red)}.ghost{background:transparent;border:1px solid #54717a}.ghost:hover{background:#173c47}.inline{display:inline-flex;margin:2px 8px 2px 0}.inline button{min-height:36px;padding:8px 12px}.danger-zone button{margin-top:12px;background:#fff3f3;color:var(--red);border:1px solid #efc5c9}.actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:16px}
.alert,.notice,.success{border-radius:11px;padding:15px 18px}.alert{background:#fff2db;border-left:4px solid #d88900;color:#6f4900}.notice{background:#eef7ff;border-left:4px solid #3985bd}.success{background:#e7f8f1;border-left:4px solid var(--teal)}.badge{display:inline-flex;align-items:center;border-radius:999px;background:#e7efed;color:#38585f;font-size:12px;font-weight:800;padding:5px 10px;margin-left:8px}.badge.ok,.status-approved{background:#d9f5e9;color:#176145}.badge.muted,.status-draft{background:#e9edee;color:#596b70}.status-submitted{background:#fff0c7;color:#7b5200}.status-rejected{background:#fde3e5;color:#8c2630}.status-closed{background:#dfe9f7;color:#284c78}
.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.cards article{border:1px solid var(--line);border-radius:12px;padding:18px;background:#fbfdfc}.cards.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.cards article p{margin:.45em 0}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px}table{width:100%;border-collapse:collapse;background:#fff;text-align:left}th,td{padding:14px 15px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:12px;text-transform:uppercase;letter-spacing:.7px;color:#60787d;background:#f4f8f7}td details{box-shadow:none;padding:10px;margin:8px 0;min-width:210px}.compact details{box-shadow:none}
.login{width:min(500px,100%);margin:9vh auto;padding:clamp(26px,5vw,44px)}.login h1{font-size:clamp(34px,7vw,56px);line-height:1.02;letter-spacing:-2px}.login form{display:grid}.login button{width:100%}.back{display:inline-block;margin-bottom:18px;font-weight:700}.checklist{display:grid;gap:10px;margin-bottom:22px}.check-item{display:grid;grid-template-columns:minmax(260px,1.4fr) 150px minmax(190px,1fr);gap:12px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:11px;background:#fbfdfc}.answer{justify-self:end;border-radius:999px;padding:5px 10px;font-weight:750}.answer-yes{background:#d9f5e9;color:#176145}.answer-no{background:#fde3e5;color:#8c2630}.answer-pending{background:#fff0c7;color:#7b5200}.answer-na{background:#e8edef;color:#52676c}
.signature-pad{width:100%;height:180px;border:2px dashed #8aa5a3;border-radius:12px;background:#fff;touch-action:none;display:block}.signature-form{display:block}.signature-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:22px}.signature-gallery figure{margin:0;border:1px solid var(--line);border-radius:11px;overflow:hidden;background:#fff}.signature-gallery img{display:block;width:100%;height:110px;object-fit:contain;background:#fff}.signature-gallery figcaption{padding:12px;font-size:13px}.file-list{list-style:none;padding:0;margin:18px 0 0}.file-list li{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--line)}code{background:#eaf1ef;padding:2px 6px;border-radius:5px}footer{background:var(--navy);color:#c6dbd7;padding:30px clamp(18px,5vw,72px);display:flex;gap:24px;align-items:center}footer strong{color:var(--mint);font-size:20px}footer span{max-width:800px;font-size:13px}
@media(max-width:800px){.topbar{align-items:flex-start;flex-wrap:wrap;gap:10px}.topbar nav{order:3;width:100%;overflow:auto}.account{margin-left:auto}.page-head{align-items:flex-start;flex-direction:column}.form-grid,.cards,.cards.compact,.summary-grid,.check-grid,.signature-gallery{grid-template-columns:1fr}.check-item{grid-template-columns:1fr}.check-item .answer{justify-self:start}.form-grid.small{grid-template-columns:1fr}main{width:min(100% - 20px,1180px)}section{border-radius:13px}.file-list li{align-items:flex-start;flex-direction:column;gap:3px}footer{align-items:flex-start;flex-direction:column}}
@media print{.topbar nav,.topbar form,.button,button,.signature-form,footer,.back{display:none!important}body,main{background:#fff;margin:0;width:100%}section{box-shadow:none;break-inside:avoid}}
