:root{--c-bg:var(--tg-bg,#fff);--c-card:var(--tg-secondary-bg,#f1f3f5);--c-text:var(--tg-text,#14181c);--c-hint:var(--tg-hint,#6b7580);--c-accent:var(--tg-button,#2481cc);--c-accent-text:var(--tg-button-text,#fff);--c-danger:#d93a3a;--radius:12px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--c-bg:var(--tg-bg,#17212b);--c-card:var(--tg-secondary-bg,#232e3c);--c-text:var(--tg-text,#f5f7fa);--c-hint:var(--tg-hint,#8d9aa8);--c-danger:#ff6b6b}}*{box-sizing:border-box}body{background:var(--c-bg);color:var(--c-text);margin:0;font:16px/1.4 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.app{gap:12px;max-width:560px;margin:0 auto;padding:16px;display:grid}h1{margin:4px 0;font-size:1.35rem}h2{margin:0 0 8px;font-size:1rem}.card{border-radius:var(--radius);background:var(--c-card);gap:12px;margin:0;padding:14px;display:grid}.field{color:var(--c-hint);gap:6px;font-size:.9rem;display:grid}textarea,select,input[type=number]{background:var(--c-bg);width:100%;color:var(--c-text);font:inherit;border:1px solid #0000;border-radius:10px;padding:10px 12px}textarea{resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.95rem}textarea:focus,select:focus,input:focus{outline:2px solid var(--c-accent);outline-offset:0}button{background:var(--c-accent);min-height:44px;color:var(--c-accent-text);font:inherit;cursor:pointer;border:0;border-radius:10px;padding:0 16px;font-weight:600}button.secondary{background:var(--c-bg);color:var(--c-text)}button.primary{width:100%}button:disabled{opacity:.45;cursor:not-allowed}.segmented{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.segmented button{background:var(--c-bg);color:var(--c-text);white-space:nowrap;padding:0 8px}.segmented button[aria-pressed=true]{background:var(--c-accent);color:var(--c-accent-text)}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.row .field{flex:120px}.hint{color:var(--c-hint);font-size:.85rem}.alert{color:var(--c-danger);margin:0;font-size:.9rem}.errors ul{margin:0;padding-left:18px;font-size:.9rem}.preview{justify-items:center}.preview-canvas canvas{border:1px solid var(--c-hint);background:#fff;max-width:100%;height:auto}.preview figcaption{color:var(--c-hint);word-break:break-all;font-size:.85rem}.progress{align-items:center;gap:10px;display:flex}.progress progress{flex:1}.result{gap:10px;display:grid}.result p{margin:0}.pdf-frame{background:#fff;border:0;border-radius:10px;width:100%;height:420px}
