.hero{max-width:760px;margin:0 auto var(--space-8);text-align:center}.hero-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 16px;border:1px solid rgba(255,92,0,.2);background:#ff5c0014;border-radius:999px;font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.06em;color:var(--color-primary);margin-bottom:var(--space-4)}.hero-dot{width:6px;height:6px;background:var(--color-primary);border-radius:999px;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.hero h1{font-size:clamp(1.7rem,1.2rem + 2.6vw,2.9rem);font-weight:800;letter-spacing:-.03em;line-height:1.05;margin-bottom:var(--space-3)}.hero h1 .accent-serif{font-family:var(--font-serif);font-style:italic;font-weight:400}.hero h1 .accent-serif.accent,.hero h1 .accent{color:var(--color-primary)}.year-badge{vertical-align:super;font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.08em;color:var(--color-primary);border:1px solid rgba(255,92,0,.22);background:#ff5c0014;border-radius:999px;padding:2px 8px;margin-left:4px}.hero p{color:var(--color-text-muted);font-size:var(--fs-md);line-height:1.6;max-width:740px;margin:0 auto}.hero p strong{color:var(--color-text)}.hero-pills{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;margin-top:var(--space-4)}.pill{font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;padding:6px 12px;border-radius:999px;border:1px solid var(--color-border)}.pill.muted{background:#ffffff0a;border-color:#ffffff0f;color:#fff6}:root[data-theme=light] .pill.muted{background:#f4f4f5;color:#71717a;border-color:#e4e4e7}.pill.primary{background:#ff5c0014;border-color:#ff5c0026;color:var(--color-primary)}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px;margin-top:var(--space-4)}.hero-note{font-family:var(--font-mono);font-size:var(--fs-2xs);color:var(--color-text-muted)}.tool-card{max-width:1280px;margin:0 auto var(--space-8);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden;box-shadow:0 12px 50px #00000073}.tool-grid{display:grid;grid-template-columns:1.06fr .94fr;gap:0}.tool-form{background:#0f0f0f;padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-6);border-right:1px solid rgba(255,255,255,.05)}:root[data-theme=light] .tool-form{background:#fafafa;border-right-color:#e4e4e7}.form-section{border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-4);background:var(--color-bg)}.form-section h3{font-size:var(--fs-sm);font-weight:700;color:var(--color-primary);margin-bottom:var(--space-4);display:flex;align-items:center;gap:var(--space-2)}.step-num{width:24px;height:24px;border-radius:999px;background:#ff5c001a;border:1px solid rgba(255,92,0,.18);color:var(--color-primary);display:inline-flex;align-items:center;justify-content:center;font-size:var(--fs-xs);font-weight:800;flex-shrink:0}.field-label{display:block;font-size:var(--fs-sm);font-weight:600;color:var(--color-text);margin-bottom:var(--space-2)}.field-label.small{font-size:11px;letter-spacing:.02em;color:var(--color-text-muted);font-weight:600}.field-hint{font-size:11px;color:var(--color-text-muted);line-height:1.4}.field-row{display:grid;gap:var(--space-3)}.field-row.two{grid-template-columns:1fr 1fr}.text-input{width:100%;font-family:inherit;font-size:var(--fs-base);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:calc(var(--radius) - 6px);padding:var(--space-3) var(--space-4);min-height:44px;transition:border-color .15s,box-shadow .15s}.text-input.mono{font-family:var(--font-mono)}textarea.text-input{resize:vertical;min-height:76px}.text-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #ff5c001f}select.text-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23888890' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}.items-list{display:flex;flex-direction:column;gap:var(--space-2)}.item-row{display:grid;grid-template-columns:1.6fr .55fr .7fr .85fr .85fr 40px;gap:8px;align-items:center}.item-row .text-input{min-height:42px;padding:var(--space-2) var(--space-3);font-size:var(--fs-sm)}.item-total{font-size:var(--fs-sm);font-weight:700;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.remove-btn{width:40px;height:40px;border:1px solid var(--color-border);border-radius:calc(var(--radius) - 6px);background:var(--color-bg);color:var(--color-text-muted);font-size:18px;line-height:1;cursor:pointer;display:grid;place-items:center}.remove-btn:hover{color:var(--color-danger);border-color:var(--color-danger)}.add-btn{font-family:inherit;font-size:var(--fs-sm);font-weight:600;color:var(--color-primary);background:#ff5c001a;border:1px solid rgba(255,92,0,.2);border-radius:999px;min-height:44px;padding:0 var(--space-4);cursor:pointer;align-self:flex-start}.add-btn:hover{background:#ff5c0026}.vat-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border-radius:12px;background:var(--color-surface);border:1px solid rgba(255,255,255,.05);margin-top:var(--space-3)}.switch{position:relative;display:inline-flex;cursor:pointer}.switch input{position:absolute;opacity:0;width:0;height:0}.slider{width:44px;height:24px;background:#ffffff1a;border-radius:999px;position:relative;transition:.2s;display:block}.slider:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:999px;transition:.2s}.switch input:checked+.slider{background:var(--color-primary)}.switch input:checked+.slider:after{transform:translate(20px)}.hint{font-size:11px;margin-top:8px;line-height:1.5}.hint.primary{color:#ff5c00b3}.hint.muted{color:var(--color-text-muted)}.toggle-row{display:grid;grid-template-columns:1fr 1fr;gap:6px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:999px;padding:4px}.toggle-row button{font-family:inherit;font-size:13px;font-weight:700;color:var(--color-text-muted);background:transparent;border:none;border-radius:999px;min-height:40px;cursor:pointer}.toggle-row button.active{background:var(--color-surface);color:var(--color-text);box-shadow:0 1px 2px #0000001a;border:1px solid var(--color-border)}:root[data-theme=light] .toggle-row button.active{background:#fff}.wht-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.chip{font-family:inherit;font-size:12px;font-weight:600;padding:6px 12px;border-radius:999px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);min-height:36px;cursor:pointer}.chip.active{background:#ff5c001a;border-color:#ff5c0033;color:var(--color-primary)}.mini-totals{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;text-align:center;background:#ff5c000f;border:1px solid rgba(255,92,0,.14);border-radius:12px;padding:12px;margin-top:12px}.mini-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;color:var(--color-text-muted)}.mini-value{font-family:var(--font-mono);font-size:13px;font-weight:700;margin-top:2px}.mini-value.accent{color:var(--color-primary)}.mini-value.danger{color:var(--color-danger)}.mini-value.large{font-size:17px;font-weight:800}.mini-grand{grid-column:1 / -1;padding-top:8px;border-top:1px solid rgba(255,92,0,.14);margin-top:4px}.actions{display:flex;flex-wrap:wrap;gap:8px}.btn{font-family:inherit;font-size:var(--fs-base);font-weight:700;border-radius:999px;min-height:48px;padding:0 var(--space-6);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;text-decoration:none}.btn-primary{background:var(--color-primary);color:#fff;flex:1}.btn-primary:hover{background:var(--color-primary-light)}.btn-secondary{background:var(--color-surface);color:var(--color-text-muted);border:1px solid var(--color-border)}.btn-secondary:hover{color:var(--color-text)}.copy-note{text-align:center;font-size:var(--fs-xs);color:var(--color-text-muted);min-height:1.2em;margin-top:4px}.preview-panel{background:#08080a;padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4);position:relative;overflow:hidden}:root[data-theme=light] .preview-panel{background:#f9fafb}.preview-header{display:flex;align-items:center;justify-content:space-between}.mono-hint{font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;color:var(--color-text-muted)}.inv-preview{border-radius:12px;overflow:hidden;border:1px solid #e4e4e7;background:#fff;color:#18181b}.inv-doc{padding:24px}.inv-top{display:flex;justify-content:space-between;gap:16px;padding-bottom:16px;border-bottom:2px solid #18181b;margin-bottom:16px}.inv-brand{font-size:18px;font-weight:800;color:#ff5c00;line-height:1.2}.inv-title{text-align:right;flex-shrink:0;font-size:18px;font-weight:800;letter-spacing:.02em}.inv-title-en{display:block;font-size:11px;font-family:var(--font-mono);letter-spacing:.08em;color:#6b7280;font-weight:400}.inv-badge{display:inline-flex;margin-top:6px;font-size:10px;font-weight:700;letter-spacing:.06em;padding:4px 8px;border-radius:999px;border:1px solid #e4e4e7;background:#f4f4f5;font-family:var(--font-mono)}.inv-meta{display:flex;justify-content:space-between;gap:24px;margin-bottom:16px;flex-wrap:wrap}.inv-meta .col{display:flex;flex-direction:column}.inv-meta .label{font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:#6b7280}.inv-meta .value{font-size:13px;font-weight:600;margin-top:2px;word-break:break-word}.inv-meta .value.muted{color:#6b7280;font-weight:400;font-size:12px}.inv-meta .value.mono{font-family:var(--font-mono);font-size:11px}.inv-refbox{background:#f4f4f5;border:1px solid #e4e4e7;border-radius:10px;padding:10px;display:grid;grid-template-columns:1fr 1fr;gap:6px;font-size:11px;margin-bottom:16px}.inv-refbox .muted{color:#6b7280}.inv-table{width:100%;border-collapse:collapse;font-size:13px;border:1px solid #18181b}.inv-table th{background:#18181b;color:#fff;font-size:10px;letter-spacing:.06em;text-transform:uppercase;padding:6px 8px;text-align:left;font-weight:700}.inv-table th:nth-child(n+2){text-align:right}.inv-totals{display:flex;justify-content:flex-end;margin-top:16px}.totals-box{border:1px solid #18181b;border-radius:10px;overflow:hidden;font-size:13px;min-width:300px;width:100%;max-width:360px}.totals-row{display:flex;justify-content:space-between;gap:16px;padding:8px 12px;border-bottom:1px solid #e4e4e7}.totals-row .label{color:#6b7280}.totals-row .value.mono{font-family:var(--font-mono);font-weight:700}.totals-row .value.accent{color:#ff5c00}.totals-row .value.danger{color:#c2410c}.totals-row.grand{background:#fff4ec;border-top:2px solid #18181b;border-bottom:none;align-items:center}.totals-row.grand .value.large{font-size:18px;font-weight:800}.baht-box{margin-top:16px;border:1px dashed #e4e4e7;border-radius:10px;padding:12px;display:flex;justify-content:space-between;gap:16px;background:#fafafa}.baht-text{font-size:14px;font-weight:600;margin-top:4px;word-break:break-word}.baht-line{font-size:11px;font-family:var(--font-mono);color:#6b7280;margin-top:4px}.baht-meta{text-align:right;font-size:10px;line-height:1.6;color:#6b7280;max-width:190px}.inv-notes{margin-top:16px;padding-top:12px;border-top:1px dashed #e4e4e7;font-size:11px;color:#6b7280;line-height:1.5}.inv-notes strong{color:#18181b}.inv-signs{margin-top:24px;display:grid;grid-template-columns:1fr 1fr;gap:32px}.sign{text-align:center;font-size:11px;color:#6b7280}.sig-line{margin-top:44px;border-top:1px solid #18181b;padding-top:6px;font-weight:600;color:#18181b}.sig-pos{font-size:10px;margin-top:4px}.inv-foot{margin-top:16px;font-size:10px;font-family:var(--font-mono);color:#6b7280;text-align:center}.preview-hint{font-size:11px;color:var(--color-text-muted);text-align:center;line-height:1.5;opacity:.6}.features{max-width:980px;margin:0 auto var(--space-8);display:grid;gap:var(--space-6);grid-template-columns:repeat(3,1fr)}.feature{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-6)}.feature .icon{width:44px;height:44px;border-radius:10px;background:#ff5c001a;color:var(--color-primary);display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:var(--space-3)}.feature h3{font-size:var(--fs-md);font-weight:700;margin-bottom:var(--space-2)}.feature p{font-size:var(--fs-sm);color:var(--color-text-muted);line-height:1.6}.feature p strong{color:var(--color-text)}.faq{max-width:720px;margin:0 auto var(--space-8)}.faq h2{font-size:var(--fs-xl);font-weight:800;text-align:center;margin-bottom:var(--space-6)}.faq details{background:var(--color-surface);border:1px solid var(--color-border);border-radius:calc(var(--radius) - 2px);margin-bottom:var(--space-2);overflow:hidden}.faq summary{cursor:pointer;list-style:none;padding:var(--space-4) var(--space-6);font-weight:600;font-size:var(--fs-base);display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);min-height:44px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font-size:var(--fs-lg);color:var(--color-text-muted);flex-shrink:0}.faq details[open] summary:after{content:"−"}.faq .answer{padding:0 var(--space-6) var(--space-6);font-size:var(--fs-sm);color:var(--color-text-muted);line-height:1.6}@media (max-width: 1024px){.tool-grid{grid-template-columns:1fr}.tool-form{border-right:none;border-bottom:1px solid rgba(255,255,255,.05)}.features{grid-template-columns:1fr}.item-row{grid-template-columns:1fr .5fr .6fr .7fr .7fr 40px}}@media (max-width: 640px){.item-row{grid-template-columns:1fr 1fr;gap:8px}.item-row .text-input:nth-child(1){grid-column:1/-1}.field-row.two{grid-template-columns:1fr}.hero h1{font-size:1.6rem}}@media print{body{background:#fff!important}.hero,.features,.faq,#themeToggle,.actions,.copy-note,.preview-hint{display:none!important}.tool-card{border:none!important;box-shadow:none!important}.tool-grid{display:block!important}.tool-form{display:none!important}.preview-panel{padding:0!important;background:#fff!important}.inv-preview{border:none!important}}
