:root{color:#2a2420;font-synthesis:none;--ink:#2a2420;--cabecera:#2f2722;--acento:#e0561a;--acento-oscuro:#c24510;--acento-suave:#fde8da;--neutro:#cbb99f;--neutro-oscuro:#7a5c3e;--neutro-suave:#efe6d8;--forest:#2f2722;--forest-soft:#efe6d8;--cream:#f6f2ea;--paper:#fffdf9;--line:#ded3c2;--orange:#e0561a;--orange-dark:#c24510;--gold:#f2c14e;--muted:#75685b;--danger:#a3261a;--font-caption:12px;font-variant-numeric:tabular-nums;background:#f6f2ea;font-family:Inter,Aptos,Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}body{background:var(--cream);min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{color:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}h1,h2{margin:0 0 8px}.muted{color:var(--muted)}.eyebrow{color:var(--neutro-oscuro);font-size:var(--font-caption);letter-spacing:.16em;text-transform:uppercase;margin:0 0 6px;font-weight:700}.empty-state{border:1px dashed var(--line);color:var(--muted);text-align:center;border-radius:12px;padding:18px}.form-error{color:var(--danger);overflow-wrap:anywhere;margin:0;font-weight:600}.primary-button{background:var(--orange);min-height:44px;color:var(--ink);border:0;border-radius:12px;padding:0 18px;font-weight:800;box-shadow:0 9px 20px #d9480f47}.primary-button:hover:not(:disabled){background:var(--orange-dark)}.quiet-button{border:1px solid var(--line);min-height:40px;color:var(--ink);background:#fff;border-radius:10px;padding:0 14px;font-weight:600}.icon-button{border:1px solid var(--line);background:#fff;border-radius:10px;width:44px;height:44px;min-height:44px;font-size:20px}.app-shell{min-height:100vh}.topbar{background:var(--cabecera);color:var(--paper);align-items:center;gap:12px;padding:10px 16px;display:flex}.topbar strong{margin-right:auto}.topbar .muted{color:#e6d9c8;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.topbar .quiet-button{color:var(--cabecera)}.inicio{width:min(720px,100%);margin:0 auto;padding:24px 16px}.login-screen{place-items:center;min-height:100vh;padding:18px;display:grid}.login-card{background:var(--paper);width:min(380px,100%);box-shadow:var(--shadow,0 12px 36px #2a24201a);border-radius:20px;gap:14px;padding:26px;display:grid}.login-card label{color:var(--muted);gap:6px;font-size:14px;font-weight:700;display:grid}.login-card input{border:1px solid var(--line);min-height:44px;color:var(--ink);background:#fff;border-radius:10px;padding:0 12px;font-size:16px}.update-banner{z-index:90;background:var(--ink);color:var(--paper);flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding:10px 16px;font-weight:600;display:flex;position:sticky;top:0}.update-banner button{background:var(--gold);min-height:40px;color:var(--ink);border:0;border-radius:8px;padding:8px 16px;font-weight:700}.update-banner button:focus-visible{outline:3px solid var(--paper);outline-offset:2px}body:has(.modal-backdrop){overflow:hidden}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#2a24208c;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.line-dialog{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:var(--paper);border-radius:20px;width:min(520px,100%);max-height:calc(100dvh - 36px);padding:24px;overflow-y:auto;box-shadow:0 24px 80px #00000047}.dialog-heading{justify-content:space-between;gap:18px;margin-bottom:24px;display:flex}.dialog-heading h2{margin-bottom:0;font-size:25px}.admin-menu-dialog{width:min(580px,100%)}.admin-menu-grid{gap:9px;display:grid}.admin-menu-grid>button{border:1px solid var(--line);width:100%;min-height:44px;color:var(--ink);text-align:left;background:#fff;border-radius:12px;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;padding:13px;display:grid}.admin-menu-grid>button:hover{border-color:var(--acento);background:#fbf4ea}.admin-menu-icon{color:#fff;background:var(--forest);border-radius:10px;place-items:center;width:40px;height:40px;font-size:12px;font-weight:900;display:grid}.admin-menu-grid>button>div{gap:4px;display:grid}.admin-menu-grid small{color:var(--muted);font-size:var(--font-caption)}.admin-menu-grid b{color:var(--forest);font-size:18px}.option-buttons{border:0;gap:6px;min-width:0;margin:0 0 12px;padding:0;display:grid}.option-buttons legend{color:var(--muted);font-size:var(--font-caption);margin-bottom:6px;padding:0;font-weight:700}.option-buttons>div{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px;display:grid}.option-buttons button{border:1px solid var(--line);min-width:0;min-height:44px;color:var(--ink);text-align:left;background:#fff;border-radius:10px;align-content:center;gap:2px;padding:8px 10px;display:grid}.option-buttons button b{overflow-wrap:anywhere}.option-buttons button small{color:var(--muted);font-size:var(--font-caption)}.option-buttons button.active{border-color:var(--neutro-oscuro);background:var(--neutro-suave);color:#3a2a1a;box-shadow:inset 0 0 0 1px var(--neutro-oscuro)}.option-buttons.compact{gap:4px;margin:0;display:inline-flex}.option-buttons.compact button{min-height:40px;font-size:var(--font-caption);padding:0 10px}.picker-field{min-width:0;color:var(--muted);font-size:var(--font-caption);gap:4px;font-weight:700;display:grid}.picker-button{border:1px solid var(--line);width:100%;min-width:0;min-height:44px;color:var(--ink);text-align:left;background:#fff;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:0 12px;font-size:16px;display:flex}.picker-button b{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;overflow:hidden}.picker-button b.placeholder{color:var(--muted);font-weight:500}.picker-button>span{color:var(--muted);font-size:1.3rem}.picker-dialog{width:min(640px,100%)}.picker-dialog .picker-search{border:1px solid var(--line);border-radius:10px;width:100%;min-height:44px;margin-bottom:10px;padding:0 12px;font-size:16px}.picker-backdrop{z-index:200}.picker-dialog .option-buttons legend{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}@media (pointer:coarse){input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px!important}button:not(.icon-button),[role=button],input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),select{min-height:40px!important}.primary-button{min-height:44px!important}.icon-button{width:44px;height:44px;min-height:44px!important}}@media (width<=520px){.modal-backdrop{padding:0}.line-dialog{width:100%;min-height:100dvh;max-height:100dvh;padding-bottom:calc(24px + env(safe-area-inset-bottom));border-radius:0}}.ayuda{color:#5a4d42;overflow-wrap:break-word;margin:0;font-size:15px;line-height:1.45}button:focus-visible,input:focus-visible,a:focus-visible,[role=button]:focus-visible{outline-offset:2px;outline:3px solid #b33a0a}.topbar :focus-visible,.update-banner :focus-visible{outline-color:var(--gold)}.option-buttons.compact{flex-wrap:wrap}.option-buttons.compact button{white-space:nowrap;overflow-wrap:normal;word-break:normal;-webkit-hyphens:none;hyphens:none}.option-buttons button b{overflow-wrap:break-word;-webkit-hyphens:none;hyphens:none}.topbar{flex-wrap:wrap}.topbar .muted{min-width:0;max-width:40vw}.topbar .quiet-button{white-space:nowrap}.ancho-total{width:100%;margin-top:8px}.cifra{white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:600}.negativo{color:#b42318}.inicio-combinacion{max-width:960px;margin:0 auto;padding:12px 16px 32px}.inicio-combinacion .secciones{margin-bottom:12px}.inicio-combinacion .secciones .option-buttons.compact button{min-height:44px;padding:0 16px;font-size:16px}.inicio-combinacion .acciones input{border:1px solid var(--line);background:#fff;border-radius:10px;flex:160px;min-width:0;min-height:44px;padding:0 12px;font-size:16px}.admin-bloque,.panel{background:var(--paper);border:1px solid var(--line);border-radius:12px;gap:12px;min-width:0;margin:0 0 16px;padding:14px;display:grid}.admin-bloque>h3,.panel>h3{margin:0}.acciones{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.boton-secundario{border:1px solid var(--ink);min-height:44px;color:var(--ink);cursor:pointer;background:#fff;border-radius:10px;justify-content:center;align-items:center;padding:0 14px;font-weight:700;display:inline-flex}label.quiet-button{cursor:pointer;align-items:center;display:inline-flex}.formulario{gap:12px;display:grid}.campo{color:var(--muted);gap:4px;min-width:0;font-size:14px;font-weight:600;display:grid}.campo input,.campo textarea,.campo select{border:1px solid var(--line);width:100%;min-height:44px;color:var(--ink);font:inherit;background:#fff;border-radius:10px;padding:8px 12px;font-size:16px;font-weight:400}.dato{overflow-wrap:anywhere;margin:0}.exito{color:#3f6b2f;margin:0;font-weight:600}.tablero-cifras{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}@media (width>=720px){.tablero-cifras{grid-template-columns:repeat(4,minmax(0,1fr))}}.tarjeta-cifra{border:1px solid var(--line);overflow-wrap:anywhere;background:#fff;border-radius:8px;gap:2px;min-width:0;padding:10px 12px;display:grid}.tarjeta-cifra>strong{white-space:nowrap;font-size:clamp(15px,4.6vw,18px)}.tarjeta-cifra>.muted{font-size:var(--font-caption)}.menu-tree-back{border:1px solid var(--line);max-width:100%;min-height:44px;color:var(--ink);text-align:left;overflow-wrap:anywhere;background:#fff;border-radius:10px;justify-self:start;padding:0 14px;font-weight:700}.marca-inicio{min-height:44px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;margin-right:auto;padding:0 4px}.admin-menu-grid>button:nth-child(odd) .admin-menu-icon{background:var(--acento);color:#fff}.admin-menu-grid>button:nth-child(2n) .admin-menu-icon{background:var(--neutro);color:#3a2a1a}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.trabajo,.combinar,.historial,.tintes{gap:14px;min-width:0;display:grid}.lista-simple{margin:0;padding-left:18px}.casilla{min-height:44px;color:var(--ink);align-items:center;gap:10px;display:flex}.casilla input{width:22px;height:22px}fieldset.campo{border:1px solid var(--line);border-radius:8px;min-width:0;padding:10px}.campo input,.campo-num{min-height:40px;color:var(--ink);font-size:16px}.campo-num{text-align:right;border:1px solid var(--line);background:#fff;border-radius:8px;width:90px;padding:0 8px}.campo-num.ancho{width:100%}.formulario.cuatro{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.tabla-scroll{border:1px solid var(--line);background:#fff;border-radius:8px;max-width:100%;overflow-x:auto}.tabla-datos,.tabla-muestras{border-collapse:collapse;width:100%;font-size:14px}.tabla-datos th,.tabla-datos td,.tabla-muestras th,.tabla-muestras td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:6px 8px}.tabla-datos td.cifra,.tabla-muestras td{text-align:right}.tabla-datos small{color:var(--muted);font-size:var(--font-caption);display:block}.tabla-datos tr.inactivo{color:var(--muted)}.tabla-datos tr.problema,.problema{background:#fbe9e6}.texto-problema{color:var(--danger);font-weight:700}.marca-manual{color:var(--neutro-oscuro);font-size:var(--font-caption)}.alerta{border:1px solid var(--gold);color:var(--ink);background:#fff3cf;border-radius:8px;padding:8px 12px}.aviso-calculo{color:var(--muted);font-size:14px}.desglose{gap:4px;margin:0;padding:0;list-style:none;display:grid}.total-grande{color:var(--ink);font-size:24px;font-weight:800}.plegable>summary{cursor:pointer;align-items:center;min-height:44px;font-weight:700;display:flex}.buscador-tintes,.cab-muestra,.sub{min-width:0}.cab-muestra,.sub{color:var(--muted);font-size:var(--font-caption)}.lista-trabajos,.sugerencias{gap:8px;margin:0;padding:0;list-style:none;display:grid}.sugerencias{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.fila-trabajo{text-align:left;width:100%;min-height:48px;color:var(--ink);grid-template-columns:1.4fr 1.4fr 1fr auto;align-items:center;gap:8px;padding:8px 12px;display:grid}.fila-trabajo small{color:var(--muted)}.cabecera-trabajo{gap:8px;display:grid}.cabecera-fila{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pestanas-capa{flex-wrap:wrap;gap:8px;display:flex}.estado{background:var(--neutro-suave);color:var(--ink);border-radius:999px;padding:2px 10px;font-size:13px;font-weight:700}.estado-en_curso{background:var(--acento-suave);color:var(--acento-oscuro)}.estado-terminado{color:#2f5222;background:#e2efd9}.estado-anulado{color:var(--danger);background:#f0dcd8}.indicador{color:var(--muted);font-size:14px;font-weight:700}.indicador.guardado{color:#3f6b2f}.indicador.sucio,.indicador.error{color:var(--danger)}.pie-trabajo{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.primary-button,.quiet-button.quitar,.tabla-muestras button{min-width:44px;min-height:44px}.quiet-button,.boton-secundario{min-height:40px;color:var(--ink)}@media (width<=480px){.fila-trabajo{grid-template-columns:1fr}.total-grande{font-size:20px}}
