:root{--green:#12634b;--dark:#103e32;--mint:#e8f3ed;--ink:#203e35;--muted:#64786f;--border:#dce7df;--bg:#f5f8f5}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.7 "Leelawadee UI",Tahoma,"Segoe UI",Arial,sans-serif}a{color:var(--green);text-underline-offset:4px}button,input,textarea,select{font:inherit}button,.button{display:inline-block;background:var(--green);color:white;border:1px solid var(--green);border-radius:9px;padding:10px 19px;cursor:pointer;font-weight:600;text-decoration:none}button:hover,.button:hover{background:var(--dark)}button.secondary,.button.secondary{background:white;color:var(--green)}.link{background:none!important;border:0;color:var(--green);padding:0}.topbar{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 4%;background:white;border-bottom:1px solid var(--border)}.brand{display:flex;gap:13px;align-items:center;text-decoration:none;color:var(--dark);line-height:1.4}.brand strong{font-size:17px}.brand small{display:block;font-size:11px;letter-spacing:1px;color:var(--muted)}.mark{display:grid;place-items:center;background:var(--green);color:white;border-radius:13px;width:48px;height:48px;font-size:25px;font-family:Georgia,serif}.topbar nav{display:flex;align-items:center;gap:20px;font-size:14px}.topbar nav a{text-decoration:none}.shell{display:flex;max-width:1480px;margin:auto}.sidebar{flex:0 0 230px;padding:30px 24px;border-inline-end:1px solid var(--border);min-height:70vh}.sidebar>a{display:block;text-decoration:none;padding:12px 8px;border-radius:8px}.sidebar>a:hover{background:var(--mint)}.profile{margin-bottom:24px;overflow-wrap:anywhere}.profile strong,.profile small{display:block}.profile small{font-size:12px;color:var(--muted)}.content{padding:40px 4%;min-width:0;flex:1}.eyebrow{display:block;color:var(--green);font-size:12px;letter-spacing:1.8px;text-transform:uppercase;font-weight:700}h1,h2,h3{line-height:1.35;letter-spacing:-.4px}h1{font-size:34px;margin:12px 0 16px}h2{font-size:23px}h3{font-size:18px}.muted,small{color:var(--muted)}.hero{position:relative;border:1px solid var(--border);border-radius:22px;overflow:hidden;background:linear-gradient(120deg,#e6f3e9 0%,#fff 65%);padding:56px;display:grid;grid-template-columns:1.8fr 1fr;gap:40px;align-items:center}.hero h1{font-size:43px;max-width:780px}.hero p{max-width:650px}.hero-aside{border-inline-start:2px solid #b5d5bf;padding-inline-start:28px}.hero-aside strong{display:block;font-size:60px;font-weight:400;color:var(--green);line-height:1.2}.hero-aside span{display:block;letter-spacing:2px;font-size:12px}.actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:20px 0}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:24px 0}.stat,.card{background:white;border:1px solid var(--border);border-radius:15px;padding:24px;margin-bottom:22px}.stat{margin-bottom:0}.stat strong{display:block;font-size:32px;color:var(--green)}.card h2:first-child{margin-top:0}.prose{white-space:pre-wrap;overflow-wrap:anywhere}.notice{padding:14px 20px;border-radius:10px;background:#fff7dd;border:1px solid #eddfaf;margin-bottom:24px}.success{background:#e6f5eb;border-color:#b3d9bd}.error{background:#fcece7;border-color:#e9bcb0;color:#8a2c21}label{display:block;font-size:14px;font-weight:600;margin:14px 0}input,select,textarea{display:block;width:100%;padding:10px 12px;border:1px solid #b9cec2;border-radius:8px;background:white;color:var(--ink);margin-top:7px}input[type=checkbox]{display:inline-block;width:auto;margin-inline-end:8px}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:3px solid #8dc7a5;outline-offset:2px}textarea{resize:vertical}fieldset{border:1px solid var(--border);border-radius:9px;margin:18px 0;padding:14px}legend{padding:0 8px}.auth{max-width:570px;margin:20px auto}.table-wrap{overflow-x:auto;background:white;border:1px solid var(--border);border-radius:12px;margin:20px 0}table{width:100%;border-collapse:collapse;text-align:start;font-size:14px}th{color:var(--muted);background:#f4f8f5;font-size:12px;text-transform:uppercase;letter-spacing:.6px}th,td{padding:15px 18px;border-bottom:1px solid var(--border);text-align:start;vertical-align:top}td .prose{max-width:700px}td input,td select{min-width:130px}.badge{display:inline-block;font-size:12px;border-radius:30px;padding:4px 11px;white-space:nowrap;background:#edf1ee;color:#4c6257}.accepted,.completed,.sent{background:#dff3e5;color:#23603c}.under_review,.pending{background:#e9effb;color:#3c5787}.revision_requested{background:#fff0ce;color:#7e5817}.rejected,.failed,.revoked{background:#fbe7e4;color:#8a3730}.empty{padding:44px;text-align:center}.heading{display:flex;justify-content:space-between;gap:20px;align-items:center}.inline{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.inline form{margin:0}.inline label{margin:0}.section-label{display:block;font-size:12px;letter-spacing:1px;color:var(--muted);text-transform:uppercase}footer{text-align:center;border-top:1px solid var(--border);padding:26px;font-size:12px;color:var(--muted);background:white}.letter{max-width:820px;margin:auto;background:white;padding:55px;border:1px solid var(--border)}.letter .signature{margin-top:60px}.letter .ref{text-align:end;color:var(--muted)}.pagination{display:flex;gap:16px;margin:20px 0}details>summary{cursor:pointer;font-weight:600}hr{border:0;border-top:1px solid var(--border);margin:25px 0}@media(max-width:1000px){.topbar{flex-wrap:wrap}.sidebar{flex-basis:190px;padding:24px 15px}.hero{grid-template-columns:1fr;padding:32px}.hero-aside{display:none}.hero h1{font-size:34px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.grid{grid-template-columns:1fr}}@media(max-width:700px){.topbar{padding:18px}.topbar nav{gap:14px;flex-wrap:wrap}.shell{display:block}.sidebar{min-height:0;border-inline-end:0;border-bottom:1px solid var(--border);display:flex;gap:12px;overflow-x:auto;align-items:center}.sidebar .profile{display:none}.sidebar>a{white-space:nowrap;font-size:13px}.sidebar form{white-space:nowrap}.content{padding:26px 18px}h1{font-size:27px}.hero{padding:26px}.hero h1{font-size:30px}.heading{align-items:start;flex-direction:column}.card{padding:20px}.letter{padding:24px}}@media print{.topbar,.sidebar,footer,.no-print,.notice{display:none!important}body,.shell,.content{display:block;background:white;margin:0;padding:0}.letter{border:0;padding:20mm;max-width:none}.letter h1{font-size:24pt}.letter p{break-inside:avoid}a{color:inherit;text-decoration:none}@page{size:A4;margin:12mm}}
