
.fpv2-mounted{--fp-red:#cc0000;--fp-green:#177a3d;--fp-amber:#a15c00;--fp-blue:#2368c4;--fp-risk:#b42318;--fp-border:var(--schedule-border,#d7dee8);--fp-panel:var(--schedule-surface,#fff);--fp-soft:var(--schedule-panel,#f3f6fa);--fp-text:var(--schedule-text,#18202c);--fp-muted:var(--schedule-muted,#5f6d80)}
#fpV2Root{color:var(--fp-text)}
#fpV2Root .fpv2-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:14px}
#fpV2Root .fpv2-head h2{margin:2px 0 5px}
#fpV2Root .fpv2-head-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
#fpV2Root .fpv2-status{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:16px;margin-bottom:12px;border:1px solid var(--fp-border);border-left:6px solid #64748b;border-radius:16px;background:var(--fp-panel)}
#fpV2Root .fpv2-status.fpv2-good{border-left-color:var(--fp-green);background:color-mix(in srgb,var(--fp-green) 5%,var(--fp-panel))}
#fpV2Root .fpv2-status.fpv2-watch{border-left-color:var(--fp-amber);background:color-mix(in srgb,#f59e0b 6%,var(--fp-panel))}
#fpV2Root .fpv2-status.fpv2-risk{border-left-color:var(--fp-risk);background:color-mix(in srgb,var(--fp-risk) 5%,var(--fp-panel))}
#fpV2Root .fpv2-status>div:first-child{display:grid;gap:5px}
#fpV2Root .fpv2-status>div:first-child>strong{font-size:1.04rem;line-height:1.4}
#fpV2Root .fpv2-status>div:first-child>small{color:var(--fp-muted)}
#fpV2Root .fpv2-status-label{font-weight:950;font-size:1.45rem;line-height:1.05}
#fpV2Root .fpv2-deadlines{display:grid;grid-template-columns:1fr 1fr;gap:8px}
#fpV2Root .fpv2-deadlines>div{padding:9px 12px;border-radius:11px;background:rgba(100,116,139,.09);min-width:90px;text-align:center}
#fpV2Root .fpv2-deadlines span,#fpV2Root .fpv2-kpis span,#fpV2Root .fpv2-flex-grid span,#fpV2Root .fpv2-detail-grid span{display:block;color:var(--fp-muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;font-weight:850}
#fpV2Root .fpv2-deadlines strong{display:block;margin-top:3px}
#fpV2Root .fpv2-warnings{display:grid;gap:5px;margin-bottom:12px;padding:10px 12px;border:1px solid color-mix(in srgb,#d97706 32%,var(--fp-border));border-radius:12px;background:color-mix(in srgb,#f59e0b 6%,var(--fp-panel));color:var(--fp-amber);font-weight:750;font-size:.87rem}
#fpV2Root .fpv2-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:12px}
#fpV2Root .fpv2-kpis article{padding:13px;border:1px solid var(--fp-border);border-radius:14px;background:var(--fp-panel)}
#fpV2Root .fpv2-kpis strong{display:block;margin-top:5px;font-size:1.35rem}
#fpV2Root .fpv2-kpis small{display:block;margin-top:4px;color:var(--fp-muted);font-size:.78rem}
#fpV2Root .fpv2-card{padding:16px;margin:0 0 12px;border:1px solid var(--fp-border);border-radius:15px;background:var(--fp-panel);box-shadow:0 3px 12px rgba(15,23,42,.045)}
#fpV2Root .fpv2-card h3{margin:4px 0 8px}
#fpV2Root .fpv2-card p{line-height:1.48}
#fpV2Root .fpv2-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px}
#fpV2Root .fpv2-chip{display:inline-flex;padding:4px 8px;border-radius:999px;background:rgba(35,104,196,.1);color:var(--fp-blue);font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
#fpV2Root .fpv2-chip.red{background:rgba(204,0,0,.1);color:var(--fp-red)}
#fpV2Root .fpv2-chip.amber{background:rgba(217,119,6,.11);color:var(--fp-amber)}
#fpV2Root .fpv2-action-card{border-left:5px solid var(--fp-red)}
#fpV2Root .fpv2-flex-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
#fpV2Root .fpv2-flex-grid>div{padding:12px;border-radius:12px;background:var(--fp-soft)}
#fpV2Root .fpv2-flex-grid strong{display:block;margin-top:5px;font-size:1.15rem}
#fpV2Root .fpv2-flex-grid small{display:block;margin-top:4px;color:var(--fp-muted);line-height:1.35}
#fpV2Root .fpv2-hour-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#fpV2Root .fpv2-hour-grid .fpv2-card{min-height:135px}
#fpV2Root .fpv2-input-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
#fpV2Root .fpv2-input-grid label,#fpV2Root .fpv2-row label{display:grid;gap:5px;color:var(--fp-muted);font-size:.78rem;font-weight:850}
#fpV2Root .fpv2-input-grid input,#fpV2Root .fpv2-input-grid select,#fpV2Root .fpv2-row select{width:100%;min-height:44px;padding:9px 10px;border:1px solid var(--fp-border);border-radius:10px;background:var(--fp-panel);color:var(--fp-text);font:inherit}
#fpV2Root label small{color:var(--fp-muted);font-weight:600;line-height:1.25}
#fpV2Root .fpv2-row{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;margin-top:10px}
#fpV2Root .fpv2-update-box{padding:8px 11px;border-radius:10px;background:var(--fp-soft)}
#fpV2Root .fpv2-update-box span{display:block;font-size:.7rem;color:var(--fp-muted);text-transform:uppercase;font-weight:800}
#fpV2Root .fpv2-update-box strong{display:block;margin-top:3px;font-size:.9rem}
#fpV2Root .fpv2-fresh{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:.74rem;font-weight:900}
#fpV2Root .fpv2-fresh.fpv2-fresh{background:#e8f7ed;color:var(--fp-green)}
#fpV2Root .fpv2-fresh.fpv2-stale{background:#fff4cf;color:var(--fp-amber)}
#fpV2Root .fpv2-fresh.fpv2-old,#fpV2Root .fpv2-fresh.fpv2-missing{background:#fde9e7;color:var(--fp-risk)}
#fpV2Root .fpv2-check{display:flex!important;align-items:flex-start;gap:9px;padding:10px;border:1px solid var(--fp-border);border-radius:11px;background:var(--fp-soft);min-height:68px}
#fpV2Root .fpv2-check input{width:auto!important;min-height:auto!important;margin-top:3px}
#fpV2Root .fpv2-check span{display:grid;gap:3px;color:var(--fp-text);font-size:.85rem}
#fpV2Root .fpv2-check small{color:var(--fp-muted)}
#fpV2Root .fpv2-observed{margin-top:10px}
#fpV2Root .fpv2-roster-details{margin-top:12px;border-top:1px solid var(--fp-border);padding-top:11px}
#fpV2Root .fpv2-roster-details summary,#fpV2Root .fpv2-details summary{cursor:pointer;font-weight:900}
#fpV2Root .fpv2-roster-details summary span{color:var(--fp-muted);font-size:.8rem;margin-left:5px}
#fpV2Root .fpv2-roster-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}
#fpV2Root .fpv2-person{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:10px;align-items:center;padding:9px 0;border-top:1px solid var(--fp-border)}
#fpV2Root .fpv2-person small{display:block;margin-top:2px;color:var(--fp-muted)}
#fpV2Root .fpv2-person select{min-height:40px;border:1px solid var(--fp-border);border-radius:9px;background:var(--fp-panel);color:var(--fp-text);padding:7px}
#fpV2Root .fpv2-empty{padding:14px;border:1px dashed var(--fp-border);border-radius:11px;color:var(--fp-muted);text-align:center}
#fpV2Root .fpv2-details[open] summary{margin-bottom:12px}
#fpV2Root .fpv2-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
#fpV2Root .fpv2-detail-grid>div{padding:10px;border-radius:11px;background:var(--fp-soft)}
#fpV2Root .fpv2-detail-grid strong{display:block;margin-top:4px}
#fpV2Root .fpv2-footer-row{display:flex;justify-content:space-between;align-items:center;gap:12px;color:var(--fp-muted);font-size:.78rem;padding:3px 0 14px}
#fpV2Root .danger{color:var(--fp-risk)!important}
.fpv2-toast{position:fixed;right:16px;bottom:20px;z-index:10000;max-width:min(440px,calc(100vw - 32px));padding:11px 14px;border-radius:12px;background:#111827;color:#fff;font-weight:750;box-shadow:0 10px 35px rgba(0,0,0,.3)}
body.dark-mode #fpV2Root .fpv2-card{box-shadow:none}
@media(max-width:900px){#fpV2Root .fpv2-kpis{grid-template-columns:1fr 1fr}#fpV2Root .fpv2-input-grid{grid-template-columns:1fr 1fr}#fpV2Root .fpv2-flex-grid{grid-template-columns:1fr}}
@media(max-width:650px){#fpV2Root .fpv2-head{display:block}#fpV2Root .fpv2-head-actions{justify-content:flex-start;margin-top:10px}#fpV2Root .fpv2-status{grid-template-columns:1fr}#fpV2Root .fpv2-status-label{font-size:1.3rem}#fpV2Root .fpv2-kpis,#fpV2Root .fpv2-input-grid,#fpV2Root .fpv2-hour-grid,#fpV2Root .fpv2-detail-grid{grid-template-columns:1fr}#fpV2Root .fpv2-row{grid-template-columns:1fr}#fpV2Root .fpv2-person{grid-template-columns:1fr}#fpV2Root .fpv2-footer-row{align-items:flex-start;flex-direction:column}#fpV2Root button{min-height:44px}}
