@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+Thai:wght@400;500;600;700&display=swap');
*{box-sizing:border-box}body{margin:0;font:14px 'Noto Sans Thai',sans-serif;color:#193640;background:#f4f8f7}header{display:flex;justify-content:space-between;align-items:center;padding:22px 6%;background:#fff;border-bottom:1px solid #dfe9e6}.brand{display:flex;gap:10px;align-items:center;font-size:23px;font-weight:700}.brand b{display:grid;place-items:center;width:40px;height:40px;background:#137d71;color:#fff;border-radius:12px}.brand small{font-size:10px;color:#8b9b9b;letter-spacing:2px}a{color:#137d71;text-decoration:none}nav{display:flex;gap:22px;align-items:center}nav form{margin:0}main{max-width:1200px;margin:45px auto;padding:0 24px;min-height:65vh}h1{font-size:34px;letter-spacing:-1px}h2{font-size:19px}.hero{max-width:820px;padding:45px 0}.hero h1{font-size:54px;line-height:1.4}.hero p{font-size:18px;color:#708780;line-height:1.9}.eyebrow{font-size:11px;letter-spacing:2px;color:#52877d}.panel{padding:28px;background:#fff;border:1px solid #e0eae6;border-radius:14px}.auth{max-width:490px;margin:0 auto}.auth h1{font-size:27px}label{display:block;margin:15px 0;color:#45615d}input{display:block;width:100%;margin-top:7px;padding:12px;border:1px solid #d6e2dd;border-radius:8px;font:inherit}button,.button{display:inline-block;border:0;border-radius:8px;background:#137d71;color:#fff;padding:11px 18px;font:inherit;cursor:pointer}.secondary{background:#eef5f2;color:#306e62}.danger{background:#fcebec;color:#a74444}.muted{color:#7d918b;font-size:12px;line-height:1.8}.grid{display:grid;grid-template-columns:1fr 1.6fr;gap:24px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}details{padding:14px 0;border-bottom:1px solid #e5eeea}summary{cursor:pointer}.error{padding:15px;background:#fff0ee;border:1px solid #f1c8c1;border-radius:8px;margin-bottom:20px}footer{text-align:center;color:#90a09a;font-size:11px;padding:35px}input:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid #8ac5b8;outline-offset:3px}@media(max-width:700px){header{padding:18px}nav{gap:12px}.brand small{display:none}.hero h1{font-size:38px}.grid,.cards{grid-template-columns:1fr}main{margin-top:25px}h1{font-size:28px}.panel{padding:20px}}

table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;padding:13px;border-bottom:1px solid #e1ebe7;white-space:nowrap}th{color:#789288;font-weight:500}.module-nav{flex-wrap:wrap;padding:12px 0}
