@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/tools/gst-invoice/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2")}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/tools/gst-invoice/assets/plus-jakarta-sans-latin-wght-normal-eXO_dkmS.woff2)format("woff2")}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--surface-0:#000;--surface-1:#09090b;--surface-2:#141416;--surface-3:#1c1c22;--border:#2a2a32;--accent:#c5b9f9;--accent-light:#dbd5f5;--text:#d4d4d8;--text-muted:#9f9fa9;--link-hover:#da66ff;--danger:#ff8a8a;--heading-font:"Plus Jakarta Sans Variable", "Inter Variable", system-ui, sans-serif;--radius:12px}*{box-sizing:border-box}html{background:var(--surface-0)}body{background:var(--surface-0);color:var(--text);margin:0;font:16px/1.55 Inter Variable,system-ui,-apple-system,Segoe UI,sans-serif}a{color:var(--accent)}a:hover,a:focus-visible{color:var(--link-hover)}h1,h2,h3{font-family:var(--heading-font);color:#fff;line-height:1.25}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip-link{background:var(--accent);color:#000;border-radius:8px;padding:8px 12px;position:absolute;top:-48px;left:16px}.skip-link:focus{top:8px}.wrap{width:100%;max-width:1080px;margin:0 auto;padding:0 16px}.site-header{background:var(--surface-1);border-bottom:1px solid var(--surface-3)}.site-header__inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;padding-top:14px;padding-bottom:10px;display:flex}.brand{color:#fff;font-family:var(--heading-font);align-items:center;gap:10px;font-size:1.25rem;text-decoration:none;display:inline-flex}.brand:hover{color:#fff}.badge{background:var(--surface-3);color:var(--accent-light);border-radius:999px;margin:0;padding:4px 12px;font-size:.875rem}.tabs{scrollbar-width:none;gap:4px;display:flex;overflow-x:auto}.tab{color:var(--text-muted);white-space:nowrap;border-bottom:2px solid #0000;flex:none;padding:10px 14px;font-weight:500;text-decoration:none}.tab:hover{color:#fff}.tab[aria-current=page]{border-bottom-color:var(--accent);color:#fff}main,main.wrap{outline:none;padding-top:32px;padding-bottom:32px}.panel h2{margin:0 0 6px;font-size:clamp(1.5rem,4vw,2rem)}.panel__description{max-width:44rem;color:var(--text-muted);margin:0 0 20px}.panel__body{gap:16px;display:grid}.drop-zone{border:2px dashed var(--border);border-radius:var(--radius);background:var(--surface-1);width:100%;color:var(--text);font:inherit;cursor:pointer;flex-direction:column;align-items:center;gap:4px;padding:32px 16px;transition:border-color .15s,background-color .15s;display:flex}.drop-zone:hover,.drop-zone.dragging{border-color:var(--accent);background:var(--surface-2)}.drop-zone__label{color:#fff;font-family:var(--heading-font);font-size:1.15rem;font-weight:600}.drop-zone__hint{color:var(--text-muted);font-size:.95rem}button,select,textarea,input{font:inherit}button{border:1px solid var(--border);background:var(--surface-3);min-height:40px;color:var(--text);cursor:pointer;border-radius:10px;padding:8px 16px}button:hover:not(:disabled){border-color:var(--accent);color:#fff}button:disabled{cursor:not-allowed;opacity:.55}button.primary{border-color:var(--accent);background:var(--accent);color:#000;font-weight:600}button.primary:hover:not(:disabled){background:var(--accent-light);color:#000}.icon-button{min-width:36px;min-height:36px;padding:4px 8px;line-height:1}.icon-button.danger:hover:not(:disabled){border-color:var(--danger);color:var(--danger)}.actions{flex-wrap:wrap;gap:8px;display:flex}.options{border:1px solid var(--surface-3);border-radius:var(--radius);background:var(--surface-1);gap:16px;padding:16px;display:grid}.options--inline{flex-wrap:wrap;align-items:flex-end;gap:16px;display:flex}.file-info{overflow-wrap:anywhere;margin:0}.field{align-content:start;gap:4px;min-width:0;max-width:40rem;display:grid}.field>span,.field>label{font-weight:500}.field small,.note{color:var(--text-muted);margin:0;font-size:.9rem}select,textarea,input[type=text],input[type=number],input[type=date],input[type=tel],input[type=email],input[type=search]{border:1px solid var(--border);background:var(--surface-2);width:100%;min-width:0;min-height:40px;color:var(--text);border-radius:8px;padding:8px 10px}.choice{border:0;flex-wrap:wrap;gap:8px;margin:0;padding:0;display:flex}.choice legend{margin-bottom:8px;padding:0;font-weight:500}.choice__option{border:1px solid var(--border);background:var(--surface-2);cursor:pointer;border-radius:10px;flex:180px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.choice__option:has(input:checked){border-color:var(--accent);background:var(--surface-3)}.choice__option input{accent-color:var(--accent);margin-top:4px}.choice__label{color:#fff;font-weight:500;display:block}.choice__hint{color:var(--text-muted);font-size:.875rem;display:block}.file-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.file-list:empty{display:none}.file-list__item{border:1px solid var(--surface-3);background:var(--surface-2);border-radius:10px;align-items:center;gap:8px;padding:8px 10px;display:flex}.file-list__number{min-width:1.5em;color:var(--text-muted);text-align:right}.file-list__name{flex:1;min-width:0;display:grid}.file-list__name strong{color:#fff;text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.file-list__name small{color:var(--text-muted)}.page-grid,.image-grid{grid-template-columns:repeat(auto-fill,minmax(min(196px,50% - 6px),1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.page-grid:empty,.image-grid:empty{display:none}.page-card,.image-card{border:1px solid var(--surface-3);border-radius:var(--radius);background:var(--surface-2);gap:8px;padding:10px;display:grid}.page-card{cursor:grab}.page-card.dragging{opacity:.4}.page-card.drop-target{border-color:var(--accent)}.page-card__preview,.image-card img{aspect-ratio:1;background:var(--surface-1);border-radius:8px;place-items:center;width:100%;display:grid;overflow:hidden}.page-card__preview img{object-fit:contain;width:100%;height:100%}.image-card img{object-fit:contain}.page-card__label,.image-card__label{color:#fff;text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;display:grid;overflow:hidden}.page-card__label small,.image-card__label small{color:var(--text-muted);text-overflow:ellipsis;overflow:hidden}.page-card__actions{flex-wrap:wrap;justify-content:center;gap:4px;display:flex}.page-card__actions .icon-button{min-width:32px;min-height:32px;padding:2px 6px}.status:empty{display:none}.status p{margin:0}.status__progress{color:var(--text-muted);align-items:center;gap:10px;display:flex}.spinner{border:2px solid var(--surface-3);border-top-color:var(--accent);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(1turn)}}.status__error{color:var(--danger);background:#1f1012;border:1px solid #5c2a2a;border-radius:10px;padding:12px 14px}.status__result{border:1px solid var(--accent);border-radius:var(--radius);background:var(--surface-2);justify-items:start;gap:8px;padding:16px;display:grid}.status__message{color:#fff;font-weight:500}.status__detail{color:var(--text-muted)}.status__result button{overflow-wrap:anywhere;max-width:100%}textarea{resize:vertical;line-height:1.45}input[type=date]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[aria-invalid=true]{border-color:var(--danger)!important}.field__error{color:var(--danger)!important}.code{font-variant-numeric:tabular-nums;letter-spacing:.02em}.stack{gap:16px;min-width:0;display:grid}fieldset.options{min-width:0;margin:0}fieldset.options>legend,.options>h3{color:#fff;font-family:var(--heading-font);margin:0;padding:0 6px;font-size:1.1rem;font-weight:600}.options>h3{padding:0}.form-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:14px 16px;display:grid}.form-grid--narrow{grid-template-columns:repeat(auto-fill,minmax(min(100%,150px),1fr))}.check{cursor:pointer;align-items:flex-start;gap:10px;display:flex}.check input{width:18px;height:18px;accent-color:var(--accent);flex:none;margin:3px 0 0}.check__hint{color:var(--text-muted);font-size:.9rem;display:block}.check-group{border:0;flex-wrap:wrap;gap:8px 20px;margin:0;padding:0;display:flex}.check-group legend{margin-bottom:8px;padding:0;font-weight:500}.derived,.supply-kind{color:var(--accent-light);margin-top:4px;font-size:.9rem;display:block}.prefixes{gap:10px;display:grid}.prefixes__title{margin:0;font-weight:500}label.button{border:1px solid var(--border);background:var(--surface-3);min-height:40px;color:var(--text);cursor:pointer;border-radius:10px;align-items:center;padding:8px 16px;display:inline-flex}label.button:hover{border-color:var(--accent);color:#fff}input.visually-hidden:focus-visible+label.button,.image-picker:focus-within label.button{outline:2px solid var(--accent);outline-offset:2px}button.danger:hover:not(:disabled){border-color:var(--danger);color:var(--danger)}.image-pickers{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:16px;display:grid}.image-picker{align-content:start;justify-items:start;gap:8px;display:grid}.image-picker__label{font-weight:500}.image-picker__preview{object-fit:contain;background:#fff;border-radius:8px;max-width:220px;max-height:90px;padding:8px}.image-picker small{color:var(--text-muted);font-size:.9rem}.notice{border:1px solid var(--border);border-left:3px solid var(--accent);background:var(--surface-1);color:var(--text);border-radius:10px;margin:0;padding:12px 14px}.notice--warning{border-left-color:#f5c46b}.storage-warning{margin-top:16px}.editor{gap:24px;display:grid}.editor__heading,.preview h3{margin:0;font-size:1.25rem}.lines{gap:8px;display:grid}.line{--line-columns:minmax(150px, 1fr) 84px 68px 76px 92px 62px 74px 62px 100px 36px;grid-template-columns:var(--line-columns);align-items:start;gap:6px;display:grid}.lines--untaxed .line{--line-columns:minmax(150px, 1fr) 84px 68px 76px 92px 62px 100px 36px}.lines--untaxed .tax-only{display:none!important}.line--head{color:var(--text-muted);font-size:.85rem;font-weight:500}.line__cell{min-width:0;display:grid}.line__cell--num{text-align:right}.line__label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.line input{padding:8px 6px}.line input[type=number]{text-align:right}.line__amount{color:#fff;text-align:right;font-variant-numeric:tabular-nums;padding:8px 0}.line__cell--remove{align-self:center}.line__error{grid-column:1/-1}.summary{grid-template-columns:minmax(0,1fr) minmax(0,24rem);align-items:start;gap:16px 32px;display:grid}.summary dl{gap:4px;margin:0;display:grid}.summary__row{justify-content:space-between;gap:16px;display:flex}.summary__row dt{color:var(--text-muted)}.summary__row dd{font-variant-numeric:tabular-nums;margin:0}.summary__total{border-top:1px solid var(--border);margin-top:6px;padding-top:8px;font-size:1.25rem}.summary__total dt,.summary__total dd{color:#fff;font-weight:700}.summary__words{gap:4px;display:grid}.summary__words p{margin:0}.summary__words>p:first-of-type{color:#fff;margin-bottom:8px;font-size:1.1rem;font-weight:500}.summary__label{color:var(--accent-light);letter-spacing:.04em;text-transform:uppercase;font-size:.85rem;font-weight:600}.preview{justify-items:center;gap:12px;display:grid}.preview h3{justify-self:start}.preview__status{justify-self:start;min-height:1.4em}.preview__pages{gap:16px;width:100%;max-width:760px;display:grid}.preview__pages canvas{background:#fff;border-radius:6px;width:100%;height:auto;box-shadow:0 8px 30px #00000080}.panel__body>h3{margin:8px 0 0;font-size:1.15rem}.record-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.record-list:empty{display:none}.record{border:1px solid var(--surface-3);background:var(--surface-2);border-radius:10px;align-items:center;gap:12px;padding:10px 12px;display:flex}.record__main{flex:1;min-width:0;display:grid}.record__main strong{color:#fff;overflow-wrap:anywhere;font-weight:500}.record__main small{color:var(--text-muted)}.record__actions{gap:6px;display:flex}.toolbar{flex-wrap:wrap;gap:12px;display:flex}.toolbar .field{flex:260px}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;width:100%}.table th,.table td{border-bottom:1px solid var(--surface-3);text-align:left;vertical-align:middle;padding:10px 8px}.table thead th{color:var(--text-muted);font-size:.875rem;font-weight:500}.table tbody th{font-weight:500}.table tbody th .code{color:#fff;white-space:nowrap;display:block}.table tbody th small{color:var(--text-muted);font-weight:400}.table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.table__actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.table__actions button{min-height:36px;padding:4px 10px}.status__done{border:1px solid var(--accent);background:var(--surface-2);color:#fff;border-radius:10px;padding:12px 14px}@media (max-width:860px){.summary{grid-template-columns:minmax(0,1fr)}.summary dl{order:-1}.line--head{display:none}.line{border:1px solid var(--surface-3);background:var(--surface-2);border-radius:10px;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;padding:10px}.lines--untaxed .line{grid-template-columns:repeat(6,minmax(0,1fr))}.line__label{clip-path:none;width:auto;height:auto;color:var(--text-muted);font-size:.8rem;position:static;overflow:visible}.line__cell{grid-column:span 2}.line__cell--name{grid-column:1/-1}.line__cell--amount{grid-column:span 2}.line__cell--remove{grid-column:span 2;place-self:end}.lines--untaxed .line__cell--amount{grid-column:span 4}.line__amount{text-align:left}.table thead{display:none}.table,.table tbody,.table tr,.table th,.table td{display:block}.table tr{border-bottom:1px solid var(--surface-3);padding:10px 0}.table th,.table td{border:0;padding:2px 0}.table .num{text-align:left;color:#fff}.table__actions{justify-content:flex-start;margin-top:8px}}.site-footer{border-top:1px solid var(--surface-3);color:var(--text-muted);text-align:center;padding-top:24px;padding-bottom:40px;font-size:.95rem}.site-footer p{margin:4px 0}.site-footer a{color:var(--text)}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
