@import url('https://fonts.googleapis.com/css2?family=Sarabun:wght@300;400;500;600;700&family=Prompt:wght@400;500;600;700&display=swap');
:root{--gold:#C4960C;--gold-light:#F5E6B8;--gold-dark:#8B6914;--maroon:#6B1D1D;--maroon-light:#8B2E2E;--cream:#FDF8ED;--text:#2D1810;--text-light:#6B5B50;--border:#E2D5C3;--white:#FFF;--shadow:0 2px 8px rgba(45,24,16,.08);--shadow-lg:0 8px 24px rgba(45,24,16,.12);--radius:8px}
*{box-sizing:border-box;margin:0;padding:0}body{font-family:'Sarabun',sans-serif;background:var(--cream);color:var(--text);min-height:100vh}a{color:var(--maroon);text-decoration:none}a:hover{text-decoration:underline}
.header{background:linear-gradient(135deg,var(--maroon),var(--maroon-light));color:var(--gold-light);box-shadow:0 4px 20px rgba(107,29,29,.3);position:sticky;top:0;z-index:100}
.header-inner{max-width:1200px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.header-left{display:flex;align-items:center;gap:14px}
.header-icon{width:48px;height:48px;background:var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;box-shadow:0 2px 8px rgba(196,150,12,.4)}
.header h1{font-family:'Prompt',sans-serif;font-size:17px;font-weight:600;line-height:1.4}
.header-sub{font-size:12px;color:rgba(245,230,184,.7)}
.header-nav{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.header-nav a,.header-nav span{background:rgba(245,230,184,.15);border:1px solid rgba(245,230,184,.25);color:var(--gold-light);padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s}
.header-nav a:hover{background:rgba(245,230,184,.25);text-decoration:none}
.header-nav a.active,.header-nav span.active{background:var(--gold);color:var(--maroon);font-weight:600;border-color:var(--gold)}
.container{max-width:1200px;margin:0 auto;padding:24px}
.card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;margin-bottom:20px}
.card-header{background:linear-gradient(135deg,#F9F3E8,var(--cream));padding:14px 20px;border-bottom:1px solid var(--border);font-family:'Prompt',sans-serif;font-weight:600;font-size:15px;color:var(--maroon);display:flex;align-items:center;gap:10px}
.card-body{padding:20px}
.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:24px}
.stat-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:18px;text-align:center;box-shadow:var(--shadow);transition:transform .2s}
.stat-card:hover{transform:translateY(-2px)}
.stat-number{font-family:'Prompt',sans-serif;font-size:34px;font-weight:700;line-height:1;margin-bottom:4px}
.stat-label{font-size:12px;color:var(--text-light);font-weight:500}
.form-section{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:18px;box-shadow:var(--shadow)}
.form-section-header{background:linear-gradient(135deg,var(--maroon),var(--maroon-light));color:var(--gold-light);padding:11px 20px;font-family:'Prompt',sans-serif;font-weight:600;font-size:14px}
.form-section-body{padding:18px}
.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.form-group{margin-bottom:0}.form-group.full{grid-column:1/-1}
.form-label{display:block;font-weight:500;font-size:13px;margin-bottom:5px;color:var(--text)}
.form-label .req{color:#DC2626;margin-left:3px}
.form-input,.form-select,.form-textarea{width:100%;padding:9px 12px;border:1px solid var(--border);border-radius:6px;font-family:'Sarabun',sans-serif;font-size:14px;color:var(--text);background:var(--white);transition:border-color .2s,box-shadow .2s}
.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(196,150,12,.15)}
.form-input[readonly],.form-input:disabled,.form-select:disabled{background:#F5F5F5;color:#999;cursor:not-allowed}
.form-hint{font-size:11px;color:var(--text-light);margin-top:3px}
.form-error{font-size:12px;color:#DC2626;margin-top:3px;font-weight:500}
.file-upload-area{border:2px dashed var(--border);border-radius:6px;padding:14px;text-align:center;background:#FAFAF7;margin-top:6px}
.file-list{margin-top:6px}.file-item{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;background:#F9F6F0;border-radius:4px;margin-bottom:3px;font-size:13px}
.btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border:none;border-radius:6px;font-family:'Sarabun',sans-serif;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;text-decoration:none;line-height:1.4;color:var(--text)}
.btn:hover{text-decoration:none}
.btn-primary{background:linear-gradient(135deg,var(--maroon),var(--maroon-light));color:var(--gold-light)}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(107,29,29,.4)}
.btn-gold{background:linear-gradient(135deg,var(--gold),var(--gold-dark));color:#fff}.btn-gold:hover{transform:translateY(-1px)}
.btn-outline{background:transparent;border:1px solid var(--border)}.btn-outline:hover{background:var(--cream)}
.btn-danger{background:#DC2626;color:#fff}.btn-danger:hover{background:#B91C1C}
.btn-success{background:#059669;color:#fff}.btn-success:hover{background:#047857}
.btn-sm{padding:5px 10px;font-size:12px}
.btn-lg{padding:13px 32px;font-size:16px}
.btn-group{display:flex;gap:6px;flex-wrap:wrap}
.table-wrap{overflow-x:auto}
table{width:100%;border-collapse:collapse;font-size:13px}
th{background:linear-gradient(135deg,#F9F3E8,var(--cream));padding:10px 12px;text-align:left;font-weight:600;color:var(--maroon);border-bottom:2px solid var(--border);white-space:nowrap}
td{padding:9px 12px;border-bottom:1px solid #F0E8DA;vertical-align:middle}
tr:hover td{background:#FDF8ED}
.alert{padding:12px 16px;border-radius:6px;margin-bottom:14px;font-size:14px}
.alert-success{background:#D1FAE5;color:#065F46;border:1px solid #10B981}
.alert-error{background:#FEE2E2;color:#991B1B;border:1px solid #EF4444}
.alert-warning{background:#FEF3C7;color:#92400E;border:1px solid #F59E0B}
.alert-info{background:#DBEAFE;color:#1E40AF;border:1px solid #3B82F6}
.login-box{max-width:420px;margin:40px auto;background:var(--white);border-radius:12px;box-shadow:var(--shadow-lg);overflow:hidden}
.login-header{background:linear-gradient(135deg,var(--maroon),var(--maroon-light));color:var(--gold-light);padding:24px;text-align:center}
.login-header h2{font-family:'Prompt',sans-serif;font-size:20px;margin-top:8px}
.login-body{padding:24px}
.profile-grid{display:grid;grid-template-columns:160px 1fr;gap:6px 16px;font-size:13px}
.profile-label{font-weight:600;color:var(--text-light)}.profile-value{color:var(--text)}
.profile-divider{grid-column:1/-1;border-top:1px solid var(--border);margin:8px 0}
.log-item{padding:8px 0;border-bottom:1px solid #F0E8DA;font-size:13px;display:flex;gap:10px}
.log-time{color:var(--text-light);white-space:nowrap;min-width:130px}
.toolbar{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap;align-items:center}
.search-input{flex:1;min-width:200px;padding:9px 12px;border:1px solid var(--border);border-radius:6px;font-family:'Sarabun',sans-serif;font-size:14px;background:var(--white)}
.search-input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(196,150,12,.15)}
.filter-select{padding:9px 12px;border:1px solid var(--border);border-radius:6px;font-family:'Sarabun',sans-serif;font-size:13px;background:var(--white);min-width:150px}
.pagination{display:flex;gap:4px;justify-content:center;margin-top:16px}
.pagination a,.pagination span{padding:6px 12px;border:1px solid var(--border);background:var(--white);border-radius:4px;font-size:13px;text-decoration:none;color:var(--text)}
.pagination .active{background:var(--maroon);color:var(--gold-light);border-color:var(--maroon)}
.text-center{text-align:center}.mt-2{margin-top:16px}.mb-2{margin-bottom:16px}.mt-3{margin-top:24px}
@media(max-width:768px){.header-inner{flex-direction:column;text-align:center}.stats-grid{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr}.toolbar{flex-direction:column}.profile-grid{grid-template-columns:1fr}}
