@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0bjc5tiuqdqro.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.0m6w47a4e5dy9.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.11u06r12fd6v_.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.0wxq9webf.ew4.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.067x_6k0k23tk.woff2)format("woff2");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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.16ipb6fqu393i.woff2)format("woff2");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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.0q-301v4kxxnr.woff2)format("woff2");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:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_c15e96cb-module__0bjUvq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_c15e96cb-module__0bjUvq__variable{--font-inter:"Inter", "Inter Fallback"}
@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.04o39dzmj.ey..woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e629b5bc06499d58-s.0b_~8bw~gzh90.woff2)format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1a099d89ee94ee96-s.0_qb~~5cn13jl.woff2)format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.0eehd8tgys7nv.woff2)format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.04o39dzmj.ey..woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/e629b5bc06499d58-s.0b_~8bw~gzh90.woff2)format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1a099d89ee94ee96-s.0_qb~~5cn13jl.woff2)format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.0eehd8tgys7nv.woff2)format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.04o39dzmj.ey..woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/e629b5bc06499d58-s.0b_~8bw~gzh90.woff2)format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/1a099d89ee94ee96-s.0_qb~~5cn13jl.woff2)format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.0eehd8tgys7nv.woff2)format("woff2");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:Plus Jakarta Sans Fallback;src:local(Arial);ascent-override:98.88%;descent-override:21.15%;line-gap-override:0.0%;size-adjust:104.98%}.plus_jakarta_sans_75c727a7-module__a69w-q__className{font-family:Plus Jakarta Sans,Plus Jakarta Sans Fallback;font-style:normal}.plus_jakarta_sans_75c727a7-module__a69w-q__variable{--font-jakarta:"Plus Jakarta Sans", "Plus Jakarta Sans Fallback"}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f3f0;--surface:#fff;--surface-2:#faf8f5;--fg:#2d3142;--muted:#7a7682;--border:#2d31421a;--border-strong:#2d314229;--input-bg:#fff;--primary:#4a9b8e;--primary-strong:#357b6e;--primary-fg:#fff;--primary-soft:#4a9b8e1a;--primary-softer:#4a9b8e0d;--accent:#b8956a;--accent-strong:#8a6a42;--danger:#d94f4f;--danger-strong:#a83b3b;--warning:#b8956a;--glass:#ffffffd1;--glass-border:1px solid #2d314212;--brand-glow:#4a9b8e29;--brand-radial:#4a9b8e1a;--shadow-sm:0 1px 2px #2d31420d;--shadow-card:0 1px 2px #2d31420a, 0 14px 34px -22px #2d314247;--radius-sm:10px;--radius-md:14px;--radius-lg:18px;--font-body:var(--font-inter), -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display:var(--font-jakarta), var(--font-inter), sans-serif}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--fg);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;padding:0}body{background-image:radial-gradient(1150px 480px at 50% -180px, var(--brand-radial), transparent 72%);background-repeat:no-repeat;background-attachment:fixed;min-height:100dvh}::selection{background:var(--primary-soft);color:var(--fg)}.app-header{z-index:50;background:var(--glass);-webkit-backdrop-filter:blur(20px);border-bottom:var(--glass-border);justify-content:space-between;align-items:center;gap:1rem;padding:.7rem 1.1rem;display:flex;position:sticky;top:0}.app-header .brand{font-family:var(--font-display);letter-spacing:-.01em;color:var(--fg);align-items:center;gap:.5rem;font-size:1rem;font-weight:800;text-decoration:none;display:inline-flex}.app-header .brand:hover{text-decoration:none}.app-header .brand-dot{background:var(--primary);width:.62rem;height:.62rem;box-shadow:0 0 0 4px var(--brand-glow);border-radius:50%}.app-header .brand-sub{color:var(--muted);font-weight:600}.app-header .back-link{border:1px solid var(--border);min-height:40px;color:var(--muted);border-radius:999px;align-items:center;gap:.4rem;padding:.45rem .85rem;font-size:.85rem;font-weight:600;text-decoration:none;transition:color .15s,border-color .15s,background .15s;display:inline-flex}.app-header .back-link:hover{color:var(--fg);border-color:var(--border-strong);background:var(--surface-2);text-decoration:none}main{max-width:760px;margin:0 auto;padding:1.4rem 1.25rem 4.5rem}.facturador-nav{flex-wrap:wrap;gap:.4rem;max-width:760px;margin:0 auto;padding:1.1rem 1.25rem 0;display:flex}.nav-tab{min-height:38px;color:var(--muted);border:1px solid #0000;border-radius:999px;align-items:center;gap:.4rem;padding:.45rem 1rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:color .15s,background .15s,border-color .15s;display:inline-flex}.nav-tab:hover{color:var(--fg);background:var(--surface-2);text-decoration:none}.nav-tab[data-active=true]{background:var(--primary-soft);color:var(--primary-strong);border-color:#4a9b8e4d}h1{font-family:var(--font-display);letter-spacing:-.025em;color:var(--fg);margin:0 0 .25rem;font-size:1.7rem;font-weight:800}h2{font-family:var(--font-display);letter-spacing:-.015em;color:var(--fg);font-weight:700}.muted{color:var(--muted);font-size:.9rem}.stats-row{grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.1rem;display:grid}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);flex-direction:column;gap:.3rem;padding:1rem 1.25rem;display:flex}.stat-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:.72rem;font-weight:700}.stat-value{font-family:var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--fg);font-size:1.45rem;font-weight:800}.stat-sub{color:var(--muted);font-size:.85rem}@media (max-width:560px){.stats-row{grid-template-columns:1fr}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);margin-top:1.1rem;padding:1.35rem 1.5rem}.banner{border-radius:var(--radius-md);border:1px solid #0000;margin-top:1rem;padding:.9rem 1.1rem;font-size:.92rem;line-height:1.55;display:block;position:relative}.banner strong{font-weight:700}.banner a{color:inherit;text-underline-offset:2px;font-weight:600;text-decoration:underline}.banner-test{color:#7d6136;background:#b8956a1a;border-color:#b8956a52}.banner-ok{color:#2f6d63;background:#4a9b8e1a;border-color:#4a9b8e52}.banner-error{color:#a83b3b;background:#d94f4f17;border-color:#d94f4f4d}label{color:var(--fg);margin:.9rem 0 .35rem;font-size:.82rem;font-weight:600;display:block}input,select{border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--input-bg);width:100%;color:var(--fg);padding:.68rem .85rem;font-family:inherit;font-size:.98rem;transition:border-color .15s,box-shadow .15s}input:hover,select:hover{border-color:var(--primary)}input:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--brand-glow);outline:none}input::placeholder{color:#7a7682b3}input[type=file]{cursor:pointer;padding:.5rem .6rem}input[type=file]::file-selector-button{border:1px solid var(--border-strong);background:var(--primary-soft);color:var(--primary-strong);cursor:pointer;border-radius:999px;margin-right:.75rem;padding:.4rem .8rem;font-family:inherit;font-size:.85rem;font-weight:600;transition:background .15s,border-color .15s}input[type=file]::file-selector-button:hover{background:var(--primary-softer);border-color:var(--primary)}button{border-radius:var(--radius-sm);background:var(--primary);width:100%;min-height:44px;color:var(--primary-fg);cursor:pointer;box-shadow:var(--shadow-sm), 0 10px 22px -14px #4a9b8e99;border:1px solid #0000;margin-top:1.1rem;padding:.75rem 1rem;font-family:inherit;font-size:.98rem;font-weight:700;transition:background .15s,box-shadow .15s,transform 50ms}button:hover{background:var(--primary-strong);box-shadow:var(--shadow-sm), 0 12px 26px -12px #4a9b8eb3}button:active{transform:translateY(1px)}button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}button.secondary{background:var(--surface);color:var(--fg);border:1px solid var(--border-strong);box-shadow:var(--shadow-sm)}button.secondary:hover{background:var(--surface-2);border-color:var(--primary)}a{color:var(--primary-strong);text-decoration:none}a:hover{text-underline-offset:2px;text-decoration:underline}.env-tabs{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;gap:.35rem;margin-bottom:1rem;padding:.3rem;display:flex}.env-tab{color:var(--muted);border:1px solid #0000;border-radius:999px;flex:1;justify-content:center;align-items:center;gap:.4rem;padding:.55rem .75rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:background .15s,color .15s,box-shadow .15s;display:inline-flex}.env-tab:hover{color:var(--fg);text-decoration:none}.env-tab[data-active=true]{background:var(--surface);color:var(--fg);border-color:var(--border);box-shadow:var(--shadow-sm)}table{border-collapse:collapse;width:100%;margin-top:.5rem;font-size:.9rem}th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);border-bottom:1px solid var(--border-strong);padding:.5rem .6rem;font-size:.72rem;font-weight:700}td{text-align:left;border-bottom:1px solid var(--border);padding:.6rem}tbody tr:last-child td{border-bottom:none}tbody tr{transition:background .12s}tbody tr:hover{background:var(--primary-softer)}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}
