.action-buttons{gap:var(--spacing-md);margin-bottom:var(--spacing-md);flex-wrap:wrap;justify-content:center;display:flex}.action-buttons__scenario{align-items:center;display:flex}.action-buttons__select{padding:var(--button-padding);border-radius:var(--border-radius);border:1px solid var(--border-light);font-family:var(--font-family);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);background:#fff}.action-buttons__button{padding:var(--button-padding);border-radius:var(--border-radius);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;font-family:var(--font-family);border:none;transition:all .2s}.action-buttons__button--primary{background-color:var(--primary-blue);color:#fff}.action-buttons__button--primary:hover{background-color:var(--primary-blue-dark)}.action-buttons__button--secondary{background-color:var(--secondary-gray);color:#fff}.action-buttons__button--secondary:hover:not([disabled]){background-color:var(--secondary-gray-dark)}.action-buttons__button[disabled]{opacity:.5;cursor:not-allowed}@media print{.action-buttons--print-hidden{display:none!important}}.client-info{margin-bottom:var(--spacing-lg)}.client-info__content{gap:var(--spacing-xs);flex-direction:column;display:flex}.client-info__details{font-size:var(--font-size-sm);line-height:var(--line-height-base);color:var(--text-secondary)}.client-info__name{font-weight:var(--font-weight-semibold)}.client-info__address{white-space:pre-line}.document-header{gap:var(--spacing-md);margin-bottom:var(--spacing-lg);justify-content:space-between;align-items:baseline;display:flex}.document-header__provider{gap:var(--spacing-xs);flex-direction:column;flex:1;display:flex}.document-header__provider-name{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-base);color:var(--text-primary);margin:0}.document-header__provider-details{font-size:var(--font-size-sm);line-height:var(--line-height-base);color:var(--text-secondary);gap:var(--spacing-xs);flex-direction:column;display:flex}.document-header__personnel{font-weight:var(--font-weight-semibold)}.document-header__address{white-space:pre-line}.document-header__info{text-align:right;gap:var(--spacing-xs);flex-direction:column;flex-shrink:0;display:flex}.document-header__type{font-size:var(--font-size-xl);line-height:var(--line-height-base);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0}.document-header__details{font-size:var(--font-size-sm);line-height:var(--line-height-base);color:var(--text-secondary);gap:var(--spacing-xs);flex-direction:column;display:flex}.items-section{margin-bottom:var(--spacing-sm)}.items-table{border-collapse:collapse;width:100%;font-size:var(--font-size-base)}.items-table__header{background-color:var(--bg-gray-50);border:1px solid var(--border-default);padding:var(--table-cell-padding);text-align:left;font-weight:var(--font-weight-semibold);color:var(--text-primary);font-size:var(--font-size-base)}.items-table__cell{border:1px solid var(--border-default);padding:var(--table-cell-padding);color:var(--text-primary);vertical-align:top;font-size:var(--font-size-base)}.items-table__header--number,.items-table__cell--number{text-align:center;width:1cm}.items-table__header--description,.items-table__cell--description{width:auto}.items-table__header--quantity,.items-table__cell--quantity{text-align:right;width:1.5cm}.items-table__header--unit-price,.items-table__cell--unit-price,.items-table__header--total,.items-table__cell--total{text-align:right;width:2cm}.items-table__description--markdown>:first-child{margin-top:0!important}.items-table__description--markdown>:last-child{margin-bottom:0!important}.items-table__description--markdown p{margin:0 0 var(--spacing-xs) 0}.items-table__description--markdown ul,.items-table__description--markdown ol{margin:var(--spacing-xs) 0;font-size:var(--font-size-sm);padding-left:3mm}.items-table__description--markdown li{line-height:var(--line-height-tight)}.payment-info__details{gap:var(--spacing-xs);flex-direction:column;display:flex}.payment-info__row{display:flex}.payment-info__label{width:2.5cm;color:var(--text-secondary);font-weight:var(--font-weight-medium)}.payment-info__value{color:var(--text-primary);flex:1}:root{--qr-size:2.5cm}.qr-section{text-align:center;width:5cm}.qr-section__container{align-items:center;gap:var(--spacing-sm);flex-direction:column;display:flex}.qr-section__code{width:var(--qr-size);height:var(--qr-size);border:1px solid var(--border-light)}.qr-section__loading{width:var(--qr-size);height:var(--qr-size);border:1px dashed var(--border-default);color:var(--text-muted);justify-content:center;align-items:center;display:flex}.qr-section__info{font-size:var(--font-size-sm);line-height:var(--line-height-base);color:var(--text-secondary);gap:var(--spacing-xs);flex-direction:column;display:flex}.remarks-section{margin-bottom:var(--spacing-lg)}.remarks-section__content{font-size:var(--font-size-base);line-height:var(--line-height-base);color:var(--text-primary)}.remarks-section__content>:first-child{margin-top:0!important}.remarks-section__content>:last-child{margin-bottom:0!important}.signature{margin-top:var(--spacing-lg);page-break-inside:avoid}.signature__grid{justify-content:space-between;display:flex}.signature__single{justify-content:flex-end;display:flex}.signature__section{text-align:center;width:5cm}.signature__text{font-size:var(--font-size-base);color:var(--text-primary);margin-bottom:var(--spacing-sm);text-align:left}.signature__line{height:var(--spacing-xl);border-bottom:1px solid var(--text-primary);margin-bottom:var(--spacing-sm)}.signature__name{font-size:var(--font-size-sm);color:var(--text-primary)}.signature__blank-line{height:var(--spacing-sm)}.signature__date{font-size:var(--font-size-sm);color:var(--text-secondary);margin-top:var(--spacing-sm)}.tax-summary{margin-bottom:var(--spacing-xl);justify-content:flex-end;display:flex}.tax-summary__table{width:50%}.tax-summary__row{padding:var(--spacing-xs) var(--spacing-sm);border-bottom:1px solid var(--border-light);justify-content:space-between;display:flex}.tax-summary__row--total{border-bottom:2px solid var(--border-dark);font-weight:var(--font-weight-bold)}.tax-summary__label{color:var(--text-primary)}.tax-summary__amount{color:var(--text-primary);font-weight:var(--font-weight-medium);text-align:right}.tax-summary__amount--negative{color:var(--text-error)}.tax-summary__baht-text{color:var(--text-primary);font-size:var(--font-size-xs);line-height:var(--line-height-base);font-weight:400}.document{padding:var(--document-padding-top) var(--document-padding-right) var(--document-padding-bottom) var(--document-padding-left);font-family:var(--font-family);color:var(--text-primary);font-size:var(--font-size-base);line-height:var(--line-height-base);box-sizing:border-box;position:relative}@media print{.document{zoom:1!important;width:100%!important;min-height:auto!important}}@media screen{.document{width:var(--document-width);min-height:var(--document-height);background:var(--bg-white);box-shadow:var(--document-shadow);zoom:var(--document-scale);margin-left:auto;margin-right:auto}}.document__payment-section{gap:var(--spacing-xl);grid-template-columns:1fr auto;align-items:start;display:grid}@media print{.document{box-shadow:none;min-height:auto}}@font-face{font-family:Sarabun;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/sarabun-thai-400-normal-C2DaJlKK.woff2)format("woff2"),url(/assets/sarabun-thai-400-normal-CH-UbWgg.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Sarabun;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/sarabun-vietnamese-400-normal-igdrzAGY.woff2)format("woff2"),url(/assets/sarabun-vietnamese-400-normal-DPfkSCMy.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Sarabun;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/sarabun-latin-ext-400-normal-BbP7GpLL.woff2)format("woff2"),url(/assets/sarabun-latin-ext-400-normal-BsmTn0SS.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sarabun;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/sarabun-latin-400-normal-URPBxl-K.woff2)format("woff2"),url(/assets/sarabun-latin-400-normal-DmguIS-7.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sarabun;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/sarabun-thai-500-normal-BVssjame.woff2)format("woff2"),url(/assets/sarabun-thai-500-normal-C3iDLEzi.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Sarabun;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/sarabun-vietnamese-500-normal-Dpe7Br9m.woff2)format("woff2"),url(/assets/sarabun-vietnamese-500-normal-CpRVvGRU.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Sarabun;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/sarabun-latin-ext-500-normal-DE1LysqI.woff2)format("woff2"),url(/assets/sarabun-latin-ext-500-normal-Cot16Bd2.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sarabun;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/sarabun-latin-500-normal-BjUTcdxu.woff2)format("woff2"),url(/assets/sarabun-latin-500-normal-CJexTAnl.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sarabun;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/sarabun-thai-600-normal-3dIAQ-_s.woff2)format("woff2"),url(/assets/sarabun-thai-600-normal-DWKeTe6a.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Sarabun;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/sarabun-vietnamese-600-normal-DkxrOlLB.woff2)format("woff2"),url(/assets/sarabun-vietnamese-600-normal-BMbOgAW-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Sarabun;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/sarabun-latin-ext-600-normal-BRxjKUQ6.woff2)format("woff2"),url(/assets/sarabun-latin-ext-600-normal-0tXu9x_i.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sarabun;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/sarabun-latin-600-normal-DMD3TROr.woff2)format("woff2"),url(/assets/sarabun-latin-600-normal-9FonlkKx.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sarabun;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/sarabun-thai-700-normal-CbuDipM3.woff2)format("woff2"),url(/assets/sarabun-thai-700-normal-CP2-p8e-.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Sarabun;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/sarabun-vietnamese-700-normal-DrMy3BMX.woff2)format("woff2"),url(/assets/sarabun-vietnamese-700-normal-lN6N8XBT.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Sarabun;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/sarabun-latin-ext-700-normal-CnQtP196.woff2)format("woff2"),url(/assets/sarabun-latin-ext-700-normal-ykw7DJpk.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sarabun;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/sarabun-latin-700-normal-DQKyWxHq.woff2)format("woff2"),url(/assets/sarabun-latin-700-normal-DUuqj4Ju.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Share Tech Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/share-tech-mono-latin-400-normal-CCqdbj5z.woff2)format("woff2"),url(/assets/share-tech-mono-latin-400-normal-15MgdvEM.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}p{margin:0 0 var(--spacing-sm) 0}strong{font-weight:var(--font-weight-semibold)}em{font-style:italic}code:not(pre code){background-color:var(--bg-gray-100);border-radius:1mm;padding:.5mm 1mm}pre,code{font-size:var(--font-size-sm);font-family:var(--font-family-mono)}pre{line-height:var(--line-height-base)}ul,ol{margin:var(--spacing-sm) 0;padding-left:var(--spacing-lg)}li{margin-bottom:var(--spacing-xs);line-height:var(--line-height-base)}a{color:var(--primary-blue);text-decoration:underline}@media print{a{text-decoration:none;color:#000!important}}h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);line-height:var(--line-height-base);margin:0 0 var(--spacing-md) 0;color:var(--text-primary);border-bottom:1pt solid var(--border-default);padding-bottom:var(--spacing-xs);margin-bottom:var(--spacing-sm)}@page{size:A4;margin:0}@media print{body{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;color-adjust:exact!important}#vue-inspector-container,#__vue-devtools-container__{display:none!important}}:root{--font-family-system:-apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--font-family:"Sarabun", "Noto Sans Thai", sans-serif;--font-family-mono:"Share Tech Mono", "Courier New", monospace;--font-size-xs:7pt;--font-size-sm:8pt;--font-size-base:9pt;--font-size-lg:11pt;--font-size-xl:12pt;--font-size-2xl:14pt;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.2em;--line-height-base:1.4em;--line-height-relaxed:1.6em;--text-primary:#1f2937;--text-secondary:#4b5563;--text-muted:#6b7280;--text-error:#dc2626;--bg-white:#fff;--bg-gray-50:#f9fafb;--bg-gray-100:#f3f4f6;--border-light:#e5e7eb;--border-default:#d1d5db;--border-dark:#374151;--primary-blue:#3b82f6;--primary-blue-dark:#2563eb;--secondary-gray:#6b7280;--secondary-gray-dark:#4b5563;--spacing-xs:1mm;--spacing-sm:2mm;--spacing-md:4mm;--spacing-lg:6mm;--spacing-xl:8mm;--spacing-2xl:12mm;--document-width:210mm;--document-height:297mm;--document-padding-top:20mm;--document-padding-right:20mm;--document-padding-bottom:0;--document-padding-left:20mm;--document-shadow:0 2mm 6mm #0000001a;--table-cell-padding:var(--spacing-xs) var(--spacing-sm);--button-padding:3mm 6mm;--border-radius:2mm;--document-scale:min(1, calc((100vw - 20px) / var(--document-width)))}.app{font-family:var(--font-family-system)}.app__loading,.app__error,.app__no-data{text-align:center;min-height:50vh;padding:var(--spacing-xl);flex-direction:column;justify-content:center;align-items:center;display:flex}.app__signed{text-align:center;justify-content:center;align-items:center;gap:var(--spacing-md);min-height:40vh;max-width:var(--document-width);background:#fff;border-radius:8px;flex-direction:column;margin:0 auto;display:flex}.app__signed-text{color:var(--text-primary);font-size:var(--font-size-lg)}.app__signed-link{padding:var(--button-padding);background-color:var(--primary-blue);color:#fff;border-radius:var(--border-radius);font-weight:var(--font-weight-medium);text-decoration:none;display:inline-block}.app__signed-link:hover{background-color:var(--primary-blue-dark)}.app__loading{color:var(--text-secondary);font-size:var(--font-size-lg)}.app__error{color:var(--text-error)}.app__error h2{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-xl)}.app__error p{font-size:var(--font-size-base);max-width:600px;margin:0}.app__no-data{color:var(--text-muted);font-size:var(--font-size-lg)}.app__settings{max-width:var(--document-width);margin:var(--spacing-lg) auto;border-radius:var(--border-radius);background:#fff;border:1px solid #e0e0e0;overflow:hidden}@media print{.app__settings{display:none!important}}.app__settings-header{background:#f8f9fa;border-bottom:1px solid #e0e0e0}.app__settings-toggle{width:100%;padding:var(--spacing-md);text-align:left;font-family:var(--font-family-system);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;color:var(--text-primary);background:0 0;border:none;transition:background-color .2s}.app__settings-toggle:hover{background:#f0f0f0}.app__settings-content{padding:var(--spacing-lg)}.app__settings-field{margin-bottom:var(--spacing-lg)}.app__settings-label{margin-bottom:var(--spacing-sm);font-weight:var(--font-weight-medium);color:var(--text-primary);font-size:var(--font-size-sm);display:block}.app__settings-textarea{width:100%;min-height:200px;padding:var(--spacing-md);border-radius:var(--border-radius);font-family:var(--font-family-mono);resize:vertical;color:var(--text-primary);background:#fafafa;border:1px solid #d0d0d0;font-size:13px;line-height:1.5}.app__settings-textarea:focus{border-color:var(--primary-blue);outline:none;box-shadow:0 0 0 2px #3b82f61a}.app__settings-actions{justify-content:flex-end;gap:var(--spacing-md);display:flex}.app__settings-apply{padding:var(--button-padding);background-color:var(--primary-blue);color:#fff;border-radius:var(--border-radius);font-family:var(--font-family-system);font-weight:var(--font-weight-medium);cursor:pointer;border:none;transition:background-color .2s}.app__settings-apply:hover{background-color:var(--primary-blue-dark)}.app__settings-apply:active{transform:translateY(1px)}.app__settings-apply:disabled{color:#9ca3af;cursor:not-allowed;background-color:#d1d5db;transform:none}.app__settings-apply:disabled:hover{background-color:#d1d5db}
