/* v427 · Trabajos y planificador del administrador: una cosa a la vez */
.p427Seg{display:none}
body.admin-role:not(.viewas427) .p427Seg{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:6px 0 12px;position:sticky;top:0;z-index:30;background:#f8fafc;padding:6px 0}
.p427Seg button{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;border:2px solid transparent;background:#fff;color:#334155;border-radius:16px;padding:9px 2px 8px;font-size:11.5px;font-weight:800;box-shadow:0 2px 8px rgba(15,23,42,.07);margin:0;min-height:0}
.p427Seg button .si{font-size:21px;line-height:1}
.p427Seg button.on{border-color:var(--c);background:color-mix(in srgb,var(--c) 12%,#fff);color:#0f172a}
.p427Seg button .dot{position:absolute;top:6px;right:8px;width:10px;height:10px;border-radius:50%;background:#16a34a;box-shadow:0 0 0 2px #fff;display:none}
.p427Seg button.act .dot{display:block}

/* visibilidad por vista */
body.admin-role:not(.viewas427) #trabajos[data-p427]>h2{display:none}
body.admin-role:not(.viewas427) #trabajos[data-p427]>.p425AiCard,
body.admin-role:not(.viewas427) #trabajos[data-p427]>.controlLecturaCard,
body.admin-role:not(.viewas427) #trabajos[data-p427]>.unifiedPlannerCard,
body.admin-role:not(.viewas427) #trabajos[data-p427]>#listaTrabajos,
body.admin-role:not(.viewas427) #trabajos[data-p427]>.hist400Launcher{display:none!important}
body.admin-role:not(.viewas427) #trabajos[data-p427="dia"]>#listaTrabajos{display:block!important}
body.admin-role:not(.viewas427) #trabajos[data-p427="plan"]>.unifiedPlannerCard{display:block!important}
body.admin-role:not(.viewas427) #trabajos[data-p427="ia"]>.p425AiCard{display:block!important}
body.admin-role:not(.viewas427) #trabajos[data-p427="lectura"]>.controlLecturaCard{display:block!important}
body.admin-role:not(.viewas427) #trabajos[data-p427="ia"]>.compactDateCard,
body.admin-role:not(.viewas427) #trabajos[data-p427="lectura"]>.compactDateCard{display:none}
/* los desplegables antiguos se muestran abiertos y sin su título (la vista ya lo dice) */
body.admin-role:not(.viewas427) #trabajos[data-p427] .unifiedPlannerCard>summary,
body.admin-role:not(.viewas427) #trabajos[data-p427] .controlLecturaCard>summary{display:none}

/* navegador de día */
.p427Day{display:flex;align-items:center;gap:8px}
.p427Day button{flex:none;width:44px;height:44px;border-radius:14px;margin:0;padding:0;font-size:20px;font-weight:900;background:#e2e8f0;color:#0f172a}
.p427Day .mid{flex:1;text-align:center;line-height:1.1}
.p427Day .mid b{display:block;font-size:17px;color:#0f172a}
.p427Day .mid small{color:#64748b;font-size:12px}
.p427Day .hoy{width:auto;padding:0 12px;font-size:13px;background:#0ea5e9;color:#fff}
body.admin-role:not(.viewas427) #trabajos[data-p427] .compactDateCard .fieldInline label{display:none}
body.admin-role:not(.viewas427) #trabajos[data-p427] .compactDateCard input[type=date]{position:absolute;opacity:0;pointer-events:none;height:0;width:0}

/* plan IA más corto */
body.admin-role:not(.viewas427) .p425AiCard{margin:0 0 10px;padding:12px}
body.admin-role:not(.viewas427) .p425Hero p{display:none}
body.admin-role:not(.viewas427) .p425Hero h3{font-size:16px}
body.admin-role:not(.viewas427) .p425Msg{font-size:11.5px}

/* planificador: operario con botones */
.p427Chips{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:4px 0 10px}
.p427Chips button{margin:0;border-radius:14px;padding:11px 2px;font-size:13px;font-weight:800;background:#e2e8f0;color:#0f172a;border:2px solid transparent;min-height:0}
.p427Chips button.on{background:#0f172a;color:#fff}
.p427Chips button[data-v="Henry"].on{background:#ea580c}.p427Chips button[data-v="Garikoitz"].on{background:#2563eb}
.p427Chips button[data-v="AMBOS"].on{background:#7c3aed}.p427Chips button[data-v="Administrador"].on{background:#16a34a}
body.admin-role:not(.viewas427) .unifiedPlannerCard label[for=calFecha],body.admin-role:not(.viewas427) .unifiedPlannerCard #calFecha,
body.admin-role:not(.viewas427) .unifiedPlannerCard label[for=calTrabajador],body.admin-role:not(.viewas427) .unifiedPlannerCard #calTrabajador,
body.admin-role:not(.viewas427) .unifiedPlannerCard>.compactAdminBody>.hint{display:none}
body.admin-role:not(.viewas427) .plannerQuickAdmin415{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 10px}
body.admin-role:not(.viewas427) .plannerQuickAdmin415 button{margin:0;min-height:62px;font-weight:800}
body.admin-role:not(.viewas427) .p427Editor{border:1px solid #cbd5e1;border-radius:16px;background:#fff;margin:10px 0;overflow:hidden}
body.admin-role:not(.viewas427) .p427Editor>summary{padding:13px 14px;font-weight:900;cursor:pointer;color:#0f172a}
body.admin-role:not(.viewas427) .p427Editor>div{padding:0 12px 12px}

/* v428 · Calendario completo del mes */
.p428Cal{display:none;background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:10px;margin:0 0 12px;box-shadow:0 2px 10px rgba(15,23,42,.05)}
.p428Head{display:flex;align-items:center;gap:6px;margin-bottom:8px}
.p428Head b{flex:1;text-align:center;font-size:17px;color:#0f172a}
.p428Head button{margin:0;width:42px;height:40px;padding:0;border-radius:12px;background:#e2e8f0;color:#0f172a;font-size:20px;font-weight:900;min-height:0}
.p428Head .hoy{width:auto;padding:0 10px;font-size:12.5px;background:#0ea5e9;color:#fff}
.p428Grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.p428Wd{font-size:10.5px;font-weight:900;color:#64748b;text-align:center;padding:2px 0}
.p428D{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:2px;min-height:62px;padding:4px 3px;border:1.5px solid #e2e8f0;border-radius:12px;background:#fff;margin:0;text-align:left;font:inherit;color:#0f172a;-webkit-tap-highlight-color:transparent}
.p428D .n{font-size:13px;font-weight:900;line-height:1}
.p428D.we{background:#f8fafc}
.p428D.fest{background:#fef2f2;border-color:#fecaca}.p428D.fest .n{color:#dc2626}
.p428D.past{opacity:.55}
.p428D.today{border-color:#0ea5e9}
.p428D.sel{border-color:#0f172a;box-shadow:0 0 0 2px #0f172a inset}
.p428D.empty{visibility:hidden}
.p428P{display:flex;align-items:center;justify-content:space-between;border-radius:6px;padding:1px 3px;font-size:9.5px;font-weight:900;color:#fff;line-height:1.35}
.p428P.g{background:#2563eb}.p428P.h{background:#ea580c}.p428P.a{background:#16a34a}
.p428P i{font-style:normal;opacity:.9}
.p428D .ia{position:absolute;top:3px;right:4px;font-size:8.5px;font-weight:900;color:#7c3aed}
.p428D .ok{position:absolute;top:3px;right:4px;font-size:9px}
.p428Leg{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:8px;font-size:11px;color:#475569;font-weight:700}
.p428Leg span::before{content:'';display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:4px;vertical-align:-1px;background:var(--c)}
.p428Pick{display:block;text-align:center;margin:6px 0 0;font-size:12px;color:#0f172a;font-weight:800}
body.admin-role:not(.viewas427) #trabajos[data-p427="dia"] .p428Cal{display:none}
body.admin-role:not(.viewas427) #trabajos[data-p427="dia"].p428Show .p428Cal{display:block}
.p427Day .mid{cursor:pointer}
.p427Day .mid small::after{content:' · 📅 calendario';color:#0ea5e9;font-weight:800}

/* v429 · el calendario general (todos los operarios) solo lo ve el administrador */
body.admin-role:not(.viewas427) .p428Cal{display:block}
body:not(.admin-role) .p428Cal,body.viewas427 .p428Cal{display:none!important}

/* v432 · sin enlace al calendario general para operarios */
body:not(.admin-role) .p427Day .mid small::after,body.viewas427 .p427Day .mid small::after{content:""}
