:root{--primary: #1B4F72;--primary-light: #2E86C1;--accent: #E67E22;--accent-light: #F0A500;--bg: #F7F9FC;--surface: #FFFFFF;--border: #E3E8F0;--border-strong: #CBD3E1;--text: #1A2233;--text-muted: #7C8AA5;--success: #27AE60;--danger: #E74C3C;--warning: #F39C12;--locked: #8E44AD;--radius: 10px;--radius-sm: 6px;--radius-lg: 16px;--shadow-xs: 0 1px 2px rgba(23, 35, 64, .04);--shadow-sm: 0 1px 3px rgba(23, 35, 64, .06), 0 1px 2px rgba(23, 35, 64, .04);--shadow-md: 0 8px 24px rgba(23, 35, 64, .08), 0 2px 6px rgba(23, 35, 64, .04);--shadow-lg: 0 24px 64px rgba(23, 35, 64, .16);--ring: 0 0 0 3px rgba(46, 134, 193, .16)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.hide-scrollbar::-webkit-scrollbar{display:none}@media(max-width:640px){input,textarea,select{font-size:16px}}body{font-family:Inter,Noto Sans Thai,system-ui,sans-serif;background:var(--bg);color:var(--text);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}input,textarea,select{font-family:inherit}table{font-variant-numeric:tabular-nums}::selection{background:#2e86c138}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalIn{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .75s linear infinite}@media print{@page{size:A4;margin:12mm 14mm}nav,.no-print{display:none!important}body{background:#fff!important;color:#000!important;font-size:9pt!important;font-family:Inter,Arial,sans-serif!important}main{min-height:unset!important;background:#fff!important}.print-page{padding:0!important;background:#fff!important;box-shadow:none!important}table{border-collapse:collapse;width:100%}th,td{border:.5pt solid #000!important;padding:2pt 4pt!important;font-size:8pt!important}}
