.ctl-btn,.ctl-input{--ctl-touch: 44px;font-family:var(--font-ui)}.ctl-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.ctl-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1);min-height:var(--ctl-touch);min-width:var(--ctl-touch);padding:0 var(--space-2);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-card);color:var(--color-ink);font-size:var(--text-base);font-weight:var(--weight-semibold);cursor:pointer}.ctl-btn--icon{padding:0}.ctl-btn:hover{border-color:var(--color-ink)}.ctl-btn:active{transform:translateY(1px);background:var(--color-soft)}.ctl-btn--primary{background:var(--color-action);border-color:var(--color-action);color:var(--color-on-action)}.ctl-btn--primary:hover{border-color:var(--color-on-action)}.ctl-btn--primary:active{background:var(--color-action);filter:brightness(.92)}.ctl-btn--text{background:transparent;border-color:transparent}.ctl-btn--text:hover{background:var(--color-soft);border-color:transparent}.ctl-btn--danger{background:transparent;border-color:var(--color-err);color:var(--color-err)}.ctl-btn--danger:hover{background:var(--color-err-bg);border-color:var(--color-err)}.ctl-btn:disabled,.ctl-input:disabled{opacity:.5;cursor:not-allowed;transform:none}.ctl-btn[aria-busy=true]{cursor:progress}.ctl-btn:focus-visible,.ctl-input:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.ctl-spinner{width:var(--icon-sm);height:var(--icon-sm)}@media(prefers-reduced-motion:no-preference){.ctl-spinner{animation:ctl-spin .8s linear infinite}}@keyframes ctl-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.ctl-spinner{animation:none}}.ctl-field{display:flex;flex-direction:column;gap:4px;margin:0 0 var(--space-2);color:var(--color-ink);font-family:var(--font-ui)}.ctl-label,.ctl-help{margin:0;font-size:var(--text-sm);color:var(--color-mut)}.ctl-label{font-weight:var(--weight-semibold)}.ctl-error{display:flex;align-items:flex-start;gap:4px;margin:0;font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-err)}.ctl-error svg{flex:none;margin-top:0}.ctl-input{box-sizing:border-box;width:100%;min-height:var(--ctl-touch);padding:var(--space-1) var(--space-2);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-ink);font-size:var(--text-md)}.ctl-input--area{resize:vertical}.ctl-input[aria-invalid=true]{border-color:var(--color-err);border-width:2px}.dd-mas{display:flex;flex-direction:column;gap:var(--space-1);align-items:flex-start;padding-top:var(--space-2)}.dd-table-wrap{--dd-row-h: 52px;font-family:var(--font-ui);color:var(--color-ink);display:flex;flex-direction:column;gap:var(--space-1)}.dd-scroll{overflow-x:auto;border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-card)}.dd-table{width:100%;border-collapse:collapse;font-size:var(--text-base)}.dd-table th,.dd-table td{padding:0 var(--space-2);height:var(--dd-row-h);text-align:start;border-bottom:1px solid var(--color-line);overflow-wrap:anywhere}.dd-table th{height:44px;font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-mut);background:var(--color-soft)}.dd-table tbody tr:last-child td{border-bottom:0}.dd-cell--end{text-align:end!important}.dd-cell--narrow{width:44px;padding:0 var(--space-1)!important}.dd-row[data-selected]{background:var(--color-soft)}.dd-detail td{height:auto;padding:var(--space-2);background:var(--color-bg)}.dd-sort,.dd-detail-toggle{display:inline-flex;align-items:center;gap:4px;min-height:44px;padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer}.dd-detail-toggle{min-width:44px;justify-content:center}.dd-detail-toggle[aria-expanded=true] svg{transform:rotate(90deg)}.dd-sort:focus-visible,.dd-detail-toggle:focus-visible,.dd-check:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.dd-check{width:20px;height:20px;accent-color:var(--color-action)}.dd-selection,.dd-pager__range{margin:0;font-size:var(--text-sm);color:var(--color-mut)}.dd-pager{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-1)}.dd-pager__range{margin-inline-end:auto}.dd-cards{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1)}.dd-card{padding:var(--space-2);border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-card)}.dd-card[data-selected]{background:var(--color-soft)}.dd-card__head{display:flex;align-items:center;gap:var(--space-1)}.dd-card__title{flex:1;font-size:var(--text-md)}.dd-card__fields{margin:var(--space-1) 0 0;display:grid;gap:4px}.dd-card__field{display:flex;justify-content:space-between;gap:var(--space-2);font-size:var(--text-base)}.dd-card__field dt{color:var(--color-mut)}.dd-card__field dd{margin:0}.dd-card__detail{margin-top:var(--space-1);padding-top:var(--space-1);border-top:1px solid var(--color-line)}.dd-state{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);padding:var(--space-5) var(--space-2);text-align:center;border:1px dashed var(--color-line);border-radius:var(--radius-md);background:var(--color-card)}.dd-state__title{margin:0;font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-semibold)}.dd-state__text{margin:0;color:var(--color-mut)}.dd-skeleton{display:flex;flex-direction:column;gap:var(--space-1)}.dd-skeleton__row,.dd-skeleton__bar{display:block;border-radius:var(--radius-sm);background:var(--color-soft);animation:dd-pulse 1.2s ease-in-out infinite}.dd-skeleton__row{height:var(--dd-row-h, 52px)}.dd-skeleton__bar{height:16px;width:60%}@keyframes dd-pulse{50%{opacity:.5}}@media(prefers-reduced-motion:reduce){.dd-skeleton__row,.dd-skeleton__bar{animation:none}}:root{--motion-fast: .16s;--motion-base: .24s;--motion-chart: .4s;--motion-celebrate: .9s;--motion-ease-out: cubic-bezier(.22, 1, .36, 1);--motion-ease-in-out: cubic-bezier(.65, 0, .35, 1)}@media(prefers-reduced-motion:no-preference){.mo-route,.mo-card{animation:mo-fade-up var(--motion-base) var(--motion-ease-out) backwards}.mo-chart{animation:mo-chart-in var(--motion-chart) var(--motion-ease-out) backwards}.mo-celebrate__dot{animation:mo-burst var(--motion-celebrate) var(--motion-ease-out) both}}.mo-celebrate{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;display:grid;place-items:center;z-index:10}.mo-celebrate__dot{grid-area:1 / 1;width:8px;height:8px;border-radius:50%;background:var(--color-action);opacity:0}.mo-celebrate__dot:nth-child(2n){background:var(--color-ok)}@keyframes mo-fade-up{0%{opacity:0;transform:translateY(8px)}}@keyframes mo-chart-in{0%{opacity:0;transform:scale(.96)}}@keyframes mo-burst{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(var(--mo-x),var(--mo-y)) scale(.4)}}.sf-card{display:flex;flex-direction:column;min-width:0;background:var(--color-card);border:1px solid var(--color-line);border-radius:var(--radius-md);color:var(--color-ink);font-family:var(--font-ui);overflow:hidden;overflow-wrap:anywhere}.sf-card__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-1);padding:var(--space-2) var(--space-3) 0}.sf-card__title{margin:0;font-family:var(--font-display);font-size:var(--text-md);font-weight:var(--weight-bold);line-height:var(--leading-tight)}.sf-card__body{padding:var(--space-1) var(--space-3) var(--space-2);font-size:var(--text-base);line-height:var(--leading-body)}.sf-card__foot{padding:var(--space-1) var(--space-3);border-top:1px solid var(--color-line);background:var(--color-soft);color:var(--color-mut);font-size:var(--text-sm)}.sf-tag{display:inline-flex;align-items:center;gap:4px;padding:4px var(--space-1);border-radius:var(--radius-pill);font:var(--weight-semibold) var(--text-sm) / var(--leading-tight) var(--font-ui)}.sf-tag--ok{background:var(--color-ok-bg);color:var(--color-ok)}.sf-tag--aviso{background:var(--color-warn-bg);color:var(--color-warn)}.sf-tag--error{background:var(--color-err-bg);color:var(--color-err)}.sf-tag--info{background:var(--color-soft);color:var(--color-focus)}.sf-avatar{display:inline-grid;place-items:center;width:var(--touch-min);height:var(--touch-min);border-radius:50%;flex:none;color:var(--color-on-action);font:var(--weight-bold) var(--text-base) var(--font-display)}.sf-avatar--user{background:var(--color-action)}.sf-avatar--client{background:var(--color-nico)}.sf-badge{display:inline-grid;place-items:center;min-width:var(--space-3);height:var(--space-3);padding:0 8px;box-sizing:border-box;border-radius:var(--radius-pill);background:var(--color-action);color:var(--color-on-action);font:var(--weight-bold) var(--text-sm) var(--font-ui);font-variant-numeric:tabular-nums}.sf-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;background:#00000073;padding:env(safe-area-inset-top) env(safe-area-inset-right) 0 env(safe-area-inset-left)}.sf-overlay--modal{align-items:center;justify-content:center;padding-bottom:calc(env(safe-area-inset-bottom) + var(--sf-kb, 0px))}.sf-overlay--sheet{align-items:flex-end;justify-content:center;padding-bottom:var(--sf-kb, 0px)}.sf-modal,.sf-sheet{display:flex;flex-direction:column;box-sizing:border-box;width:100%;background:var(--color-card);color:var(--color-ink);font-family:var(--font-ui);box-shadow:var(--shadow-card)}.sf-modal{max-width:480px;max-height:100%;margin:var(--space-2);border-radius:var(--radius-lg)}.sf-sheet{max-width:560px;max-height:90dvh;padding-bottom:env(safe-area-inset-bottom);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.sf-dialog__head{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3) 0}.sf-dialog__title{margin:0;font:var(--weight-bold) var(--text-lg) / var(--leading-tight) var(--font-display)}.sf-dialog__close{display:grid;place-items:center;width:var(--touch-min);height:var(--touch-min);border:0;border-radius:50%;background:transparent;color:inherit;cursor:pointer}.sf-dialog__close:focus-visible,.sf-modal:focus-visible,.sf-sheet:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.sf-dialog__body{overflow-y:auto;overscroll-behavior:contain;padding:var(--space-2) var(--space-3) var(--space-3)}.sf-toasts{position:fixed;z-index:110;left:0;right:0;bottom:calc(env(safe-area-inset-bottom) + var(--space-2));display:flex;flex-direction:column;align-items:center;gap:var(--space-1);pointer-events:none}.sf-toast{padding:var(--space-1);border-radius:var(--radius-pill);background:var(--color-card);border:1px solid var(--color-line);box-shadow:var(--shadow-card)}@media(prefers-reduced-motion:no-preference){.sf-toast{animation:sf-in .16s ease-out}}@keyframes sf-in{0%{opacity:0;transform:translateY(8px)}}.shell{display:grid;grid-template-columns:minmax(var(--space-8),auto) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);grid-template-areas:"cabecera cabecera" "barra contenido";min-height:100vh;min-height:100dvh;background:var(--color-bg);color:var(--color-ink);font-family:var(--font-ui)}.shell-saltar{position:absolute;left:var(--space-1);top:-100px;z-index:10;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--color-card);color:var(--color-ink)}.shell-saltar:focus{top:var(--space-1)}.shell a:focus-visible,.shell button:focus-visible,.shell-contenido:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.shell-cabecera{grid-area:cabecera;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2);padding:var(--space-1) var(--space-2);padding-top:max(var(--space-1),env(safe-area-inset-top));padding-left:max(var(--space-2),env(safe-area-inset-left));padding-right:max(var(--space-2),env(safe-area-inset-right));border-bottom:1px solid var(--color-line);background:var(--color-card)}.shell-cabecera__marca{flex:none}.shell-cabecera__negocio{flex:1 1 var(--space-8);min-width:0;margin:0;overflow-wrap:anywhere;font:var(--weight-bold) var(--text-md) / var(--leading-tight) var(--font-display)}.shell-cabecera__prueba{display:inline-flex;align-items:center;gap:var(--space-1);min-height:var(--space-6);padding:0 var(--space-2);border-radius:var(--radius-pill);color:inherit;text-decoration:none;overflow-wrap:anywhere}.shell-cabecera__acciones{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1);min-width:0}.shell-cuenta{display:grid;place-items:center;min-width:var(--touch-min);min-height:var(--touch-min);padding:0;border:0;border-radius:50%;background:transparent;cursor:pointer}.shell-cuenta__datos{display:flex;align-items:center;gap:var(--space-2)}.shell-cuenta__datos p{margin:0;overflow-wrap:anywhere}.shell-cuenta__nombre{font-weight:var(--weight-bold)}.shell-cuenta__negocio{color:var(--color-mut)}.shell-barra{grid-area:barra;display:flex;flex-direction:column;gap:4px;min-height:0;padding:var(--space-2) var(--space-1);padding-left:max(var(--space-1),env(safe-area-inset-left));border-right:1px solid var(--color-line);background:var(--color-bg);overflow-y:auto}.shell-link{position:relative;display:flex;align-items:center;gap:var(--space-1);min-height:var(--touch-min);padding:0 var(--space-1);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--color-ink);font:var(--weight-semibold) var(--text-base) / var(--leading-tight) var(--font-ui);text-decoration:none;cursor:pointer}.shell-link:hover{background:var(--color-soft)}.shell-link[aria-current=page]{background:var(--color-action);color:var(--color-on-action)}.shell-link__texto{flex:1;min-width:0;overflow-wrap:anywhere}.shell-contenido{grid-area:contenido;min-width:0;padding:var(--space-3);padding-right:max(var(--space-3),env(safe-area-inset-right))}.shell-ejemplo{margin:0 0 var(--space-3);padding:var(--space-1) var(--space-2);border:1px dashed currentColor;border-radius:var(--radius-sm)}.shell-inferior{display:none}.shell-mas{display:flex;flex-direction:column;gap:4px}@media(max-width:1023px){.shell-barra .shell-link{justify-content:center;padding:0}.shell-barra .shell-link__texto{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.shell-barra .sf-badge{position:absolute;top:0;right:0}}@media(max-width:639px){.shell{grid-template-columns:minmax(0,1fr);grid-template-areas:"cabecera" "contenido"}.shell-barra{display:none}.shell-contenido{padding:var(--space-2);padding-left:max(var(--space-2),env(safe-area-inset-left));padding-right:max(var(--space-2),env(safe-area-inset-right));padding-bottom:calc(var(--space-8) + var(--space-2) + env(safe-area-inset-bottom))}.shell-inferior{position:fixed;left:0;right:0;bottom:0;z-index:5;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:4px;padding:var(--space-1);padding-bottom:max(var(--space-1),env(safe-area-inset-bottom));padding-left:max(var(--space-1),env(safe-area-inset-left));padding-right:max(var(--space-1),env(safe-area-inset-right));border-top:1px solid var(--color-line);background:var(--color-card)}.shell-inferior .shell-link{flex-direction:column;justify-content:center;gap:0;padding:4px;font-size:var(--text-xs);text-align:center}.shell-inferior .shell-link__texto{flex:none}.shell-inferior .sf-badge{position:absolute;top:0;right:0}}:root{color-scheme:light;--color-bg: #f3eee3;--color-card: #fbf8f1;--color-ink: #1b1f3b;--color-mut: #5e5949;--color-line: #d9d2c2;--color-soft: #ede7d8;--color-page: #e7e1d2;--color-action: #ffd23f;--color-on-action: #1b1f3b;--color-focus: #2954b8;--color-marca-tinta: #1b1f3b;--color-marca-crema: #f3eee3;--color-ok: #1d7760;--color-ok-bg: #ddf0e8;--color-warn: #866418;--color-warn-bg: #f6e9c4;--color-err: #b3382a;--color-err-bg: #f6dad5;--color-nico: #1fb5a6;--color-cora: #e58a1f;--color-lola: #6c7bff;--color-pill-line: #1b1f3b;--color-pill-detail: #1b1f3b;--color-pill-white: #ffffff;--color-pill-blush: #ff8fa3;--color-pill-blazer: #1f2d5c;--color-pill-tie: #d94f4f;--color-cora-blazer: #3b3f46;--color-cora-tie: #8b1e3f;--color-lola-blazer: #f3e6c8;--color-lola-bow: #e0a82e;--shadow-card: 0 24px 64px rgba(0, 0, 0, .18);--shadow-bubble: 0 2px 0 rgba(27, 31, 59, .2)}:root[data-theme=night]{color-scheme:dark;--color-bg: #080a1e;--color-card: #10143a;--color-ink: #f3eee3;--color-mut: #a3a8ce;--color-line: #252a5c;--color-soft: #171c48;--color-page: #050616;--color-action: #ffd23f;--color-on-action: #1b1f3b;--color-focus: #8fb0ff;--color-marca-tinta: #1b1f3b;--color-marca-crema: #f3eee3;--color-ok: #3dbe9c;--color-ok-bg: #12352f;--color-warn: #d4a94b;--color-warn-bg: #3a2f12;--color-err: #f07a6a;--color-err-bg: #3f1b1b;--color-nico: #35d6c5;--color-cora: #ffa94d;--color-lola: #8f9bff;--color-pill-line: #f3eee3;--color-pill-detail: #1b1f3b;--color-pill-white: #ffffff;--color-pill-blush: #ff8fa3;--color-pill-blazer: #2c3f84;--color-pill-tie: #f07a6a;--color-cora-blazer: #4a4f58;--color-cora-tie: #c2456b;--color-lola-blazer: #e8d7b0;--color-lola-bow: #f2c04d;--shadow-card: 0 24px 64px rgba(0, 0, 0, .28);--shadow-bubble: 0 2px 0 rgba(0, 0, 0, .4)}:root{--font-display: Fraunces, Georgia, serif;--font-ui: Inter, system-ui, -apple-system, "Segoe UI", sans-serif;--text-xs: 12px;--text-sm: 12px;--text-base: 14px;--text-md: 16px;--text-lg: 20px;--text-xl: 28px;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--leading-tight: 1.2;--leading-body: 1.4;--space-1: 8px;--space-2: 16px;--space-3: 24px;--space-4: 32px;--space-5: 40px;--space-6: 48px;--space-7: 56px;--space-8: 64px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-pill: 999px;--touch-min: 40px;--icon-sm: 16px;--icon-md: 20px;--icon-lg: 24px}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:var(--color-bg);color:var(--color-ink);font-family:var(--font-ui);font-size:var(--text-base);font-weight:var(--weight-regular);line-height:var(--leading-body)}h1,h2,h3{font-family:var(--font-display);font-weight:var(--weight-bold);line-height:var(--leading-tight)}.num{font-family:var(--font-display);font-variant-numeric:lining-nums tabular-nums}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.theme-switch{display:inline-flex;border:1px solid var(--color-line);border-radius:var(--radius-sm);overflow:hidden}.theme-switch button{min-height:var(--touch-min);padding:var(--space-1) var(--space-2);border:0;background:transparent;color:var(--color-mut);font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer}.theme-switch button[aria-pressed=true]{background:var(--color-card);color:var(--color-ink)}.marca-logo{display:inline-flex;align-items:center;gap:var(--space-1);vertical-align:middle}.marca-etiqueta{color:var(--color-mut);font-family:var(--font-ui);font-weight:var(--weight-semibold);line-height:1;white-space:nowrap}.np-pr{display:flex;flex-direction:column;gap:var(--space-2);box-sizing:border-box;width:100%;max-width:720px;margin:0 auto;padding:var(--space-3);padding-bottom:calc(var(--space-3) + env(safe-area-inset-bottom));padding-left:calc(var(--space-3) + env(safe-area-inset-left));padding-right:calc(var(--space-3) + env(safe-area-inset-right));color:var(--color-ink);font-family:var(--font-ui);overflow-wrap:anywhere}.np-pr__titulo{margin:0;font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-bold);line-height:var(--leading-tight)}.np-pr__texto,.np-pr__dias,.np-pr__aviso{margin:0;min-width:0;font-size:var(--text-base);line-height:var(--leading-body)}.np-pr__dias{font-weight:var(--weight-bold)}.np-pr__alerta,.np-pr__franja,.np-pr__fin{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-1);min-width:0;padding:var(--space-2);border:1px solid var(--color-line);border-radius:var(--radius-lg, 16px)}.np-pr__barra{height:12px;overflow:hidden;border-radius:6px;background:var(--color-line)}.np-pr__relleno{height:100%;border-radius:6px;background:var(--color-ink)}.np-pr__relleno--aviso{background:var(--color-warn)}.np-pr__aviso{padding:var(--space-1);border-radius:var(--radius-md, 8px);background:var(--color-warn-bg);color:var(--color-warn)}.np-pr__plan{align-self:flex-start;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md, 8px);background:var(--color-action);color:var(--color-on-action);font-weight:var(--weight-bold);text-decoration:none}@media(prefers-reduced-motion:no-preference){.np-pr__relleno{animation:np-pr-llena .6s ease-out both}}@keyframes np-pr-llena{0%{width:0}}@media(max-width:480px){.np-pr__plan{align-self:stretch;text-align:center}}
