:root{--rojo:#c1272d;--rojo-suave:#fbeaea;--gris:#666;--gris-claro:gray;--texto:#2b2b2b;--fondo:#f6f6f6;--tarjeta:#fff;--borde:#e2e2e2;--ok:#2e7d32;--aviso:#b26a00;--radio:12px;color:var(--texto);background:var(--fondo);-webkit-text-size-adjust:100%;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{background:var(--fondo);margin:0}h1{color:var(--gris);margin:0 0 12px;font-size:1.35rem;font-weight:600}h2{color:var(--gris);margin:20px 0 8px;font-size:1.05rem}a{color:var(--rojo)}.app{max-width:760px;margin:0 auto;padding:12px 16px 96px}.barra-sup{background:var(--tarjeta);border-bottom:1px solid var(--borde);z-index:5;justify-content:space-between;align-items:center;padding:8px 16px;display:flex;position:sticky;top:0}.barra-sup img{height:40px}.barra-sup .usuario{color:var(--gris-claro);text-align:right;font-size:.8rem}.barra-sup button{margin-top:2px}.nav{z-index:5;background:var(--tarjeta);border-top:1px solid var(--borde);padding-bottom:env(safe-area-inset-bottom);display:flex;position:fixed;bottom:0;left:0;right:0}.nav a{text-align:center;color:var(--gris);flex:1;padding:10px 2px 8px;font-size:.72rem;text-decoration:none}.nav a span{font-size:1.25rem;line-height:1.2;display:block}.nav a.active{color:var(--rojo);font-weight:600}.tarjeta{background:var(--tarjeta);border:1px solid var(--borde);border-radius:var(--radio);margin-bottom:12px;padding:14px}.fila{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.entre{justify-content:space-between}.grid2{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;display:grid}.grid-auto{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;display:grid}.grid4{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.kpis{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:12px;display:grid}.kpi{background:var(--tarjeta);border:1px solid var(--borde);border-radius:var(--radio);padding:12px}.kpi .valor{color:var(--texto);font-size:1.2rem;font-weight:700}.kpi .etiqueta{color:var(--gris-claro);font-size:.78rem}label{color:var(--gris);margin-bottom:8px;font-size:.8rem;display:block}input,select,textarea{width:100%;font:inherit;border:1px solid var(--borde);color:var(--texto);background:#fff;border-radius:8px;margin-top:3px;padding:10px;font-size:16px;display:block}input:focus,select:focus,textarea:focus{outline:2px solid var(--rojo);outline-offset:-1px}label.check{align-items:center;gap:8px;display:flex}label.check input{width:auto;margin:0}button,.boton{font:inherit;cursor:pointer;border:1px solid var(--rojo);background:var(--rojo);color:#fff;border-radius:8px;padding:10px 14px;font-size:.95rem;text-decoration:none;display:inline-block}button.secundario,.boton.secundario{color:var(--rojo);background:#fff}button.texto{color:var(--rojo);background:0 0;border:none;padding:4px}button:disabled{opacity:.5;cursor:default}.ancho{width:100%}.lista{margin:0;padding:0;list-style:none}.lista li{border-bottom:1px solid var(--borde);padding:10px 0}.lista li:last-child{border-bottom:none}.lista a{color:inherit;text-decoration:none;display:block}.sub{color:var(--gris-claro);font-size:.8rem}.der{text-align:right}.chip{color:var(--gris);background:#eee;border-radius:99px;padding:2px 8px;font-size:.72rem;display:inline-block}.chip.rojo{background:var(--rojo-suave);color:var(--rojo)}.chip.verde{color:var(--ok);background:#e7f4e8}.chip.ambar{color:var(--aviso);background:#fff3e0}.aviso{color:#6b4300;background:#fff3e0;border-radius:8px;margin-bottom:12px;padding:10px;font-size:.85rem}.error{background:var(--rojo-suave);color:var(--rojo);border-radius:8px;margin-bottom:12px;padding:10px;font-size:.85rem}table{border-collapse:collapse;width:100%;font-size:.85rem}th,td{text-align:left;border-bottom:1px solid var(--borde);padding:6px 4px}th{color:var(--gris-claro);font-weight:500}.tabla-scroll{overflow-x:auto}.receta td,.receta th{text-align:center}.entrada{place-items:center;min-height:100vh;padding:16px;display:grid}.entrada .tarjeta{width:100%;max-width:380px}.entrada img{width:220px;margin:8px auto 20px;display:block}@media print{.nav,.barra-sup,.no-imprimir{display:none!important}.app{padding:0}.tarjeta{border:none}}
