:root{--bg: #f4f5f7;--card: #ffffff;--line: #dfe1e6;--text: #172b4d;--muted: #6b778c;--primary: #0052cc;--primary-dark: #0747a6;--danger: #de350b;--ok: #00875a;--warn: #ff991f}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans Thai,sans-serif;background:var(--bg);color:var(--text);font-size:14px}.nav{display:flex;align-items:center;gap:20px;background:var(--card);border-bottom:1px solid var(--line);padding:10px 20px;position:sticky;top:0;z-index:10}.nav .brand{font-weight:700;color:var(--primary);font-size:16px}.nav nav{display:flex;gap:4px;flex:1}.nav nav a{text-decoration:none;color:var(--muted);padding:6px 12px;border-radius:4px}.nav nav a.active,.nav nav a:hover{color:var(--primary);background:#e9f2ff}.nav .user{display:flex;align-items:center;gap:12px;color:var(--muted)}.content{max-width:1000px;margin:24px auto;padding:0 20px}.card{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:20px;margin-bottom:16px}h1{font-size:20px;margin:0 0 16px}h2{font-size:15px;margin:20px 0 8px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}label{display:block;font-weight:600;margin-bottom:4px}input[type=text],input[type=password],input[type=number],select,textarea{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:4px;font:inherit;background:#fff}textarea{resize:vertical}.field{margin-bottom:14px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.checks{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:6px}.check{display:flex;align-items:center;gap:8px;font-weight:400}.check input{width:auto}button{font:inherit;cursor:pointer;border:1px solid transparent;border-radius:4px;padding:8px 14px;background:#ebecf0;color:var(--text)}button:hover{background:#dfe1e6}button.primary{background:var(--primary);color:#fff}button.primary:hover{background:var(--primary-dark)}button.danger{background:var(--danger);color:#fff}button:disabled{opacity:.5;cursor:not-allowed}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.spacer{flex:1}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line)}th{color:var(--muted);font-size:12px;text-transform:uppercase}tr:hover td{background:#fafbfc}.badge{display:inline-block;padding:2px 8px;border-radius:10px;font-size:12px;font-weight:600}.badge.review{background:#deebff;color:#0747a6}.badge.pending{background:#fff0b3;color:#974f00}.badge.approved{background:#e3fcef;color:var(--ok)}.badge.rejected{background:#ffebe6;color:var(--danger)}.badge.canceled{background:#ebecf0;color:var(--muted)}.muted{color:var(--muted)}.error{color:var(--danger);margin:8px 0}.success{color:var(--ok);margin:8px 0}a.link{color:var(--primary);cursor:pointer;text-decoration:none}a.link:hover{text-decoration:underline}.pager{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding-top:14px;margin-top:4px;border-top:1px solid var(--line)}.pager-count{flex:1 1 auto}.pager-pages{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.pager-size{display:flex;align-items:center;gap:8px;font-weight:400;margin:0}.pager-size select{width:auto;padding:6px 8px}.pager-num,.pager-step{min-width:34px;padding:6px 8px;background:transparent;border:1px solid var(--line);color:var(--text);line-height:1.2}.pager-num:hover:not(.current),.pager-step:hover:not(:disabled){background:#e9f2ff;border-color:var(--primary);color:var(--primary)}.pager-num.current{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:600;cursor:default}.pager-step{font-size:16px}.pager-gap{color:var(--muted);padding:0 2px}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.table-scroll table{min-width:720px}@media(max-width:640px){.pager{justify-content:center}.pager-count{flex-basis:100%;text-align:center}.pager-size{flex-basis:100%;justify-content:center}}.attach{border-top:1px solid var(--line);padding:14px 0}.attach:first-of-type{border-top:none;padding-top:4px}.attach-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.attach-name{word-break:break-all}.attach-meta{font-size:12px;white-space:nowrap}.attach-img{display:block;margin-top:10px}.attach-img img{display:block;max-width:100%;max-height:420px;border:1px solid var(--line);border-radius:6px;background:#fff}.attach-doc{display:flex;align-items:center;gap:12px;margin-top:10px;padding:12px 14px;border:1px solid var(--line);border-radius:6px;background:#fafbfc;text-decoration:none;color:var(--text)}.attach-doc:hover{border-color:var(--primary);background:#e9f2ff}.attach-doc-icon{flex:none;padding:8px 10px;border-radius:4px;background:var(--danger);color:#fff;font-size:11px;font-weight:700;letter-spacing:.5px}
