html{scroll-behavior:smooth}body{margin:0}#root{min-height:100vh}@font-face{font-family:Google Sans;src:url(/assets/fonts/GoogleSans/GoogleSans-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Google Sans;src:url(/assets/fonts/GoogleSans/GoogleSans-Italic.ttf)format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Google Sans;src:url(/assets/fonts/GoogleSans/GoogleSans-Medium.ttf)format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Google Sans;src:url(/assets/fonts/GoogleSans/GoogleSans-SemiBold.ttf)format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Google Sans;src:url(/assets/fonts/GoogleSans/GoogleSans-Bold.ttf)format("truetype");font-weight:700;font-style:normal;font-display:swap}:root{color:#1f2937;font-synthesis:none;background:#f3f6fb;font-family:Google Sans,Noto Sans Thai,Tahoma,Arial,sans-serif}*{box-sizing:border-box}body{background:#f3f6fb;min-width:320px;min-height:100vh;margin:0}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.app{min-height:100vh;padding:32px 16px}.container{width:min(1180px,100%);margin:0 auto}.page-header{color:#fff;background:linear-gradient(135deg,#1565c0,#0d47a1);border-radius:24px;align-items:center;gap:18px;margin-bottom:24px;padding:28px;display:flex;box-shadow:0 14px 35px #0d47a12e}.page-header h1{margin:0;font-size:clamp(24px,4vw,36px)}.page-header p{opacity:.9;margin:6px 0 0}.header-icon{color:#1565c0;background:#fff;border-radius:18px;flex:none;place-items:center;width:64px;height:64px;font-size:32px;font-weight:700;display:grid}.card{background:#fff;border:1px solid #e5eaf1;border-radius:22px;margin-bottom:22px;padding:24px;box-shadow:0 8px 28px #0f172a0f}.tab-nav{background:#e8eef7;border:1px solid #dbe3ef;border-radius:14px;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:22px;padding:8px;display:grid}.tab-button{color:#334155;background:0 0;border:0;border-radius:10px;min-height:46px;padding:10px 14px;font-weight:700;transition:color .2s,background .2s,box-shadow .2s}.tab-button:hover{color:#0f172a;background:#ffffff8c}.tab-button.active{color:#fff;background:#1565c0;box-shadow:0 6px 16px #1565c038}.tab-panel-hidden{display:none}.card-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;display:flex}.card-header h2{color:#0f172a;margin:0;font-size:22px}.card-header p{color:#64748b;margin:5px 0 0;font-size:14px}.form-grid{gap:18px;display:grid}.form-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.form-group{flex-direction:column;gap:8px;display:flex}.form-group-span-2{grid-column:span 2}.form-group label{color:#334155;font-size:14px;font-weight:600}.form-group label span{color:#dc2626}input,textarea{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:11px;outline:none;width:100%;padding:12px 14px;transition:border-color .2s,box-shadow .2s}input:focus,textarea:focus{border-color:#1976d2;box-shadow:0 0 0 3px #1976d21f}textarea{resize:vertical}.button{border:0;border-radius:11px;min-height:42px;padding:10px 18px;font-weight:700;transition:transform .15s,box-shadow .15s}.button:hover:not(:disabled){transform:translateY(-1px)}.button-primary{color:#fff;background:#1565c0;box-shadow:0 6px 16px #1565c038}.button-warning{color:#7c2d12;background:#ffedd5}.button-secondary{color:#334155;background:#fff;border:1px solid #cbd5e1}.button-large{min-width:170px;min-height:48px}.button-group{justify-content:flex-end;gap:12px;display:flex}.table-scroll{overflow-x:auto}.option-create-row{grid-template-columns:minmax(0,1fr) auto;gap:12px;margin-bottom:16px;display:grid}.option-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.option-row{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:10px;display:grid}.input-table{border-collapse:collapse;width:100%;min-width:760px}.expense-table{min-width:920px}.input-table th,.input-table td{border-bottom:1px solid #e2e8f0;padding:10px}.input-table th{color:#475569;text-align:left;background:#f8fafc;font-size:13px}.input-table th:nth-child(n+2),.input-table td:nth-child(n+2){text-align:center}.amount-cell{white-space:nowrap;color:#166534;font-weight:700}.action-cell{width:80px}.icon-button{background:0 0;border:0;border-radius:8px;padding:8px 12px}.icon-button.danger{color:#dc2626}.icon-button.danger:hover:not(:disabled){background:#fee2e2}.empty-state{color:#475569;text-align:center;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:14px;padding:24px}.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.summary-card{border-radius:16px;padding:20px}.summary-card span{color:#475569;margin-bottom:9px;font-size:14px;display:block}.summary-card strong{font-size:clamp(19px,2vw,25px);display:block}.summary-blue{color:#1565c0;background:#e3f2fd}.summary-green{color:#15803d;background:#dcfce7}.summary-orange{color:#c2410c;background:#ffedd5}.summary-teal{color:#0f766e;background:#ccfbf1}.summary-red{color:#b91c1c;background:#fee2e2}.pdf-hidden{pointer-events:none;width:794px;position:fixed;top:0;left:-10000px}.pdf-document{color:#172033;background:#fff;width:794px;min-height:1123px;padding:34px 38px;font-family:Google Sans,Noto Sans Thai,Tahoma,Arial,sans-serif;font-size:12.5px;line-height:1.38}.pdf-header{text-align:center;border-bottom:2px solid #172033;margin-bottom:16px;padding:0 0 12px}.pdf-header h1{color:#172033;margin:0;font-size:23px;font-weight:700}.pdf-header p{color:#667085;margin:2px 0 0;font-size:11px;font-weight:500}.pdf-document h2{color:#172033;border-bottom:1px solid #d0d7e2;margin:16px 0 8px;padding-bottom:5px;font-size:14px;font-weight:700}.pdf-info-table,.pdf-table,.pdf-summary-table{border-collapse:collapse;width:100%}.pdf-info-table th,.pdf-info-table td,.pdf-table th,.pdf-table td,.pdf-summary-table th,.pdf-summary-table td{border:1px solid #d0d7e2;padding:6px 8px}.pdf-info-table th{color:#475467;text-align:left;background:#f3f6fa;width:18%;font-weight:600}.pdf-info-table td{color:#172033;font-weight:500}.pdf-table thead th{color:#fff;text-align:center;background:#1e293b;border-color:#1e293b;font-size:11.5px;font-weight:700}.pdf-table tbody tr:nth-child(2n) td{background:#f8fafc}.pdf-table tfoot th{color:#172033;background:#edf2f7;font-weight:700}.pdf-table tfoot th:first-child{text-align:right}.pdf-summary-table{border:1px solid #172033;width:48%;margin:18px 0 0 auto}.pdf-summary-table th{color:#475467;text-align:left;background:#f8fafc;font-weight:600}.pdf-summary-table td{color:#172033;text-align:right;font-weight:700}.pdf-net-row th,.pdf-net-row td{color:#fff;background:#0f766e;border-color:#0f766e;font-size:14px;font-weight:700}.pdf-remark{color:#344054;background:#fbfcfe;border:1px solid #d0d7e2;border-radius:6px;min-height:44px;margin-top:16px;padding:9px 10px}.signature-section{text-align:center;justify-content:space-between;margin-top:48px;display:flex}.signature-section>div{width:35%}.signature-line{border-top:1px solid #172033;margin-bottom:8px}.pdf-footer{color:#667085;text-align:right;margin-top:26px;font-size:10px}.pdf-center{text-align:center}.pdf-right{text-align:right}@media (width<=900px){.form-grid-3,.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-group-span-2{grid-column:span 1}}@media (width<=600px){.app{padding:16px 10px 28px}.page-header{border-radius:18px;align-items:flex-start;padding:20px}.header-icon{width:52px;height:52px}.card{border-radius:17px;padding:18px}.tab-nav{grid-template-columns:1fr}.card-header{flex-direction:column;align-items:stretch}.form-grid-3,.summary-grid{grid-template-columns:1fr}.button-group{flex-direction:column-reverse}.button-group .button{width:100%}.option-create-row,.option-list,.option-row{grid-template-columns:1fr}}
