:root{--ink:#17232d;--muted:#60717d;--line:#dce5e8;--surface:#fff;--surface-soft:#f4f7f7;--brand:#0f635e;--brand-dark:#094b47;--brand-soft:#e4f3f1;--accent:#c98a2d;--danger:#a83838;--danger-soft:#fff0f0;--success:#28724e;--shadow:0 10px 30px #112b3414}*{box-sizing:border-box}html,body{background:var(--surface-soft);min-height:100%;color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}body{min-height:100vh}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,.button{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;min-height:42px;padding:.65rem 1rem;font-weight:700;display:inline-flex}button:hover,.button:hover{background:var(--brand-dark)}button:disabled{cursor:wait;opacity:.65}.button-secondary{border:1px solid var(--line);color:var(--ink);background:#fff}.button-danger{background:var(--danger)}.field{gap:.4rem;display:grid}.field label,.label{color:var(--muted);font-size:.82rem;font-weight:700}input,select,textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #cbd7db;border-radius:8px;min-height:42px;padding:.65rem .75rem}textarea{resize:vertical;min-height:90px}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #0f635e40}.auth-shell{background:radial-gradient(circle at 10% 10%,#c98a2d24,#0000 30%),linear-gradient(145deg,#0b403e,#123842 55%,#152c37);place-items:center;min-height:100vh;padding:2rem 1rem;display:grid}.auth-card{background:#fff;border-radius:16px;width:min(460px,100%);padding:2rem;box-shadow:0 24px 70px #00000040}.brand-mark{color:var(--brand);letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:800}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.03em;font-size:clamp(1.6rem,3vw,2.2rem)}h2{font-size:1.2rem}.muted{color:var(--muted)}.print-document{color:#17201d;background:#fff;max-width:900px;margin:0 auto;padding:32px}.print-document>header{border-bottom:3px solid #18594a;margin-bottom:28px;padding-bottom:18px}.print-document table{border-collapse:collapse;width:100%}.print-document th,.print-document td{text-align:left;border-bottom:1px solid #d8e0dd;padding:10px}@media print{.sidebar,.app-header,.no-print{display:none!important}.app-shell,.app-main,.app-content{margin:0!important;padding:0!important;display:block!important}.print-document{max-width:none;padding:0}@page{margin:15mm}}.statement-address{line-height:1.55}.statement-totals{max-width:460px;margin-top:1.5rem;margin-left:auto}.stack{gap:1rem;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.form-grid .span-2{grid-column:span 2}fieldset.field{border:1px solid var(--line);border-radius:8px;padding:1rem}fieldset.field legend{color:var(--muted);padding:0 .35rem;font-size:.82rem;font-weight:700}.checkbox-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;display:grid}.checkbox-label{align-items:center;gap:.45rem;font-size:.88rem;display:flex}.checkbox-label input{width:auto;min-height:auto}.message{border-radius:8px;padding:.75rem .9rem;font-size:.9rem}.message-error{background:var(--danger-soft);color:var(--danger)}.message-success{color:var(--success);background:#e9f6ef}.app-shell{grid-template-columns:250px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#eaf3f4;background:#132f38;height:100vh;padding:1.35rem 1rem;position:sticky;top:0;overflow-y:auto}.sidebar-brand{border-bottom:1px solid #ffffff1f;margin-bottom:1rem;padding:.25rem .55rem 1.2rem}.sidebar-brand strong{font-size:1.08rem;display:block}.sidebar-brand span{color:#9ec5c5;font-size:.76rem}.nav-heading{color:#83aaa9;letter-spacing:.12em;text-transform:uppercase;margin:1.2rem .6rem .4rem;font-size:.68rem;font-weight:800}.nav-link{color:#dbe9ea;border-radius:8px;margin:.12rem 0;padding:.68rem .75rem;font-size:.9rem;display:block}.nav-link:hover,.nav-link-active{color:#fff;background:#ffffff1c}.sidebar-user{border-top:1px solid #ffffff1f;margin-top:1.25rem;padding:1rem .55rem 0;font-size:.8rem}.sidebar-user strong,.sidebar-user span{display:block}.sidebar-user span{color:#9ec5c5;margin-top:.2rem}.sidebar-user form{margin-top:.8rem}.sidebar-user button{background:#ffffff17;width:100%;min-height:36px;font-size:.8rem}.app-main{min-width:0;padding:2rem clamp(1rem,4vw,3rem)}.page-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;display:flex}.page-header p{margin-bottom:0}.card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:12px;padding:1.25rem}.card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.metric{border-left:4px solid var(--brand)}.metric strong{margin-bottom:.25rem;font-size:1.5rem;display:block}.table-wrap{overflow-x:auto}.filter-card{margin-bottom:1rem}.filter-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:.8rem;display:grid}.record-link{color:var(--brand-dark)}.record-link:hover{text-decoration:underline}.button-row{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.detail-grid{grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:1rem;display:grid}.summary-list{grid-template-columns:minmax(100px,.4fr) minmax(0,1fr);margin:0;display:grid}.summary-list dt,.summary-list dd{border-bottom:1px solid var(--line);margin:0;padding:.7rem 0}.summary-list dt{color:var(--muted);font-weight:700}.timeline{display:grid}.timeline-item{border-left:2px solid var(--line);padding:0 0 1rem .85rem}.timeline-item strong{text-transform:capitalize;display:block}.timeline-item span{color:var(--muted);margin-top:.2rem;font-size:.78rem;display:block}.timeline-item p{margin:.45rem 0 0;font-size:.86rem}.row-approved{background:#edf8f1}.row-warning{color:#6d2f0c;background:#fff1e8}.approved-card{border-color:#72b58e;box-shadow:0 0 0 2px #28724e1a}.metric-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.metric-row span,.document-list span{color:var(--muted);font-size:.78rem;display:block}.metric-row strong{margin-top:.25rem;font-size:1.35rem;display:block}.document-list{gap:.6rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}table{border-collapse:collapse;width:100%;font-size:.88rem}th,td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:.8rem .65rem}th{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem}.status{background:var(--brand-soft);color:var(--brand-dark);border-radius:999px;align-items:center;padding:.28rem .55rem;font-size:.74rem;font-weight:800;display:inline-flex}.status-inactive{color:#65727a;background:#edf0f1}details{margin-top:.5rem}summary{color:var(--brand);cursor:pointer;font-weight:700}details form{border-top:1px solid var(--line);margin-top:.8rem;padding-top:1rem}.empty-state{color:var(--muted);text-align:center;padding:2rem}@media (max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{height:auto;position:static}.sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:.2rem;display:grid}.nav-heading,.sidebar-user{grid-column:1/-1}.card-grid,.detail-grid{grid-template-columns:1fr}.filter-grid,.checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:span 1}.page-header{display:block}.filter-grid,.checkbox-grid{grid-template-columns:1fr}.button-row{margin-top:1rem}}
