#pfmi-one-app,
#pfmi-one-app *{box-sizing:border-box}
#pfmi-one-app{
  --one-bg:#f7f8ff;
  --one-card:#fff;
  --one-border:#e6e8f5;
  --one-text:#17144f;
  --one-muted:#6b7280;
  --one-primary:#6c4cf1;
  --one-primary2:#8b5cf6;
  --one-green:#22c55e;
  --one-orange:#f59e0b;
  --one-red:#ef4444;
  --one-shadow:0 18px 48px rgba(70,63,140,.10);
  display:block;
  width:100%;
  min-height:100vh;
  padding:24px;
  background:linear-gradient(135deg,#f8f9fc 0%,#f4f1ff 48%,#eef6ff 100%);
  color:var(--one-text);
  font-family:'Segoe UI',system-ui,-apple-system,BlinkMacSystemFont,sans-serif;
}
#pfmi-one-app .pfmi-one-header{
  display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;
  background:rgba(255,255,255,.94);border:1px solid var(--one-border);border-radius:30px;
  padding:22px;box-shadow:var(--one-shadow);margin-bottom:16px;
}
#pfmi-one-app .pfmi-one-brand{display:flex;align-items:center;gap:16px;min-width:0}
#pfmi-one-app .pfmi-one-logo{width:62px;height:62px;min-width:62px;border-radius:22px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--one-primary),var(--one-primary2));color:#fff;font-size:30px;box-shadow:0 12px 26px rgba(108,76,241,.25)}
#pfmi-one-app h1,#pfmi-one-app h2,#pfmi-one-app h3{margin:0;color:var(--one-text);letter-spacing:-.03em}
#pfmi-one-app .pfmi-one-brand h1{font-size:30px;font-weight:950;line-height:1.05}
#pfmi-one-app .pfmi-one-brand p,#pfmi-one-app .pfmi-one-panel-head p,#pfmi-one-app .pfmi-one-card p{margin:6px 0 0;color:var(--one-muted);font-size:14px;line-height:1.45;font-weight:700}
#pfmi-one-app .pfmi-one-header-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
#pfmi-one-app .pfmi-one-btn{border:none;border-radius:999px;padding:12px 18px;font-size:14px;font-weight:950;cursor:pointer;transition:.18s;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}
#pfmi-one-app .pfmi-one-btn:hover{transform:translateY(-1px)}
#pfmi-one-app .pfmi-one-btn.primary{background:linear-gradient(135deg,var(--one-primary),var(--one-primary2));color:#fff;box-shadow:0 10px 24px rgba(108,76,241,.24)}
#pfmi-one-app .pfmi-one-btn.soft{background:#fff;color:#4f35c8;border:1px solid #d8d1ff}
#pfmi-one-app .pfmi-one-tabs{position:sticky;top:10px;z-index:40;display:flex;gap:8px;overflow-x:auto;background:rgba(255,255,255,.91);backdrop-filter:blur(14px);border:1px solid var(--one-border);border-radius:22px;padding:8px;box-shadow:0 10px 28px rgba(70,63,140,.08);margin-bottom:18px}
#pfmi-one-app .pfmi-one-tabs button{border:none;background:transparent;color:var(--one-muted);border-radius:16px;padding:12px 16px;white-space:nowrap;font-size:14px;font-weight:950;cursor:pointer;transition:.18s}
#pfmi-one-app .pfmi-one-tabs button.active{background:linear-gradient(135deg,var(--one-primary),var(--one-primary2));color:#fff;box-shadow:0 8px 18px rgba(108,76,241,.22)}
#pfmi-one-app .pfmi-one-panel{display:none;animation:pfmiOneFade .18s ease-out}
#pfmi-one-app .pfmi-one-panel.active{display:block}
@keyframes pfmiOneFade{from{opacity:.5;transform:translateY(4px)}to{opacity:1;transform:none}}
#pfmi-one-app .pfmi-one-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;background:rgba(255,255,255,.92);border:1px solid var(--one-border);border-radius:24px;padding:18px 20px;margin-bottom:16px;box-shadow:0 10px 26px rgba(70,63,140,.07)}
#pfmi-one-app .pfmi-one-panel-head h2{font-size:22px;font-weight:950}
#pfmi-one-app .pfmi-one-home-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin-bottom:16px}
#pfmi-one-app .pfmi-one-card{background:rgba(255,255,255,.96);border:1px solid var(--one-border);border-radius:26px;padding:20px;box-shadow:var(--one-shadow);min-width:0}
#pfmi-one-app .pfmi-one-card h3{font-size:13px;text-transform:uppercase;letter-spacing:.9px;color:var(--one-muted);font-weight:950;margin-bottom:10px}
#pfmi-one-app .pfmi-one-card strong.big{display:block;font-size:34px;line-height:1;font-weight:1000;color:var(--one-text)}
#pfmi-one-app .pfmi-one-card .ok{color:var(--one-green)}
#pfmi-one-app .pfmi-one-card .warn{color:var(--one-orange)}
#pfmi-one-app .pfmi-one-card .danger{color:var(--one-red)}
#pfmi-one-app .pfmi-one-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:16px;align-items:start}
#pfmi-one-app .pfmi-one-list{display:flex;flex-direction:column;gap:10px}
#pfmi-one-app .pfmi-one-item{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;background:#fbfcff;border:1px solid #edf0fa;border-radius:18px;padding:12px 14px}
#pfmi-one-app .pfmi-one-item .ico{width:42px;height:42px;border-radius:15px;background:#ede9fe;color:#6d28d9;display:flex;align-items:center;justify-content:center;font-size:20px}
#pfmi-one-app .pfmi-one-item b{display:block;font-size:14px;color:var(--one-text);font-weight:950;line-height:1.2}
#pfmi-one-app .pfmi-one-item span{display:block;font-size:12px;color:var(--one-muted);font-weight:750;margin-top:3px;line-height:1.35}
#pfmi-one-app .pfmi-one-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:5px 10px;font-size:11px;font-weight:950;background:#f3f0ff;color:#4f35c8;white-space:nowrap}
#pfmi-one-app .pfmi-one-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}
#pfmi-one-app .pfmi-one-day{background:#fff;border:1px solid var(--one-border);border-radius:20px;padding:12px;min-height:140px;box-shadow:0 8px 20px rgba(70,63,140,.06)}
#pfmi-one-app .pfmi-one-day.today{background:linear-gradient(180deg,#f3f0ff,#fff);border-color:#cfc8ff;box-shadow:0 12px 28px rgba(108,76,241,.12)}
#pfmi-one-app .pfmi-one-day h4{margin:0 0 8px;font-size:13px;color:#4f35c8;font-weight:950}
#pfmi-one-app .pfmi-one-meal{font-size:12px;line-height:1.3;font-weight:800;color:#1f2937;background:#f8fafc;border-left:3px solid var(--one-green);border-radius:12px;padding:8px;margin-top:6px}
#pfmi-one-app .pfmi-one-actions-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
#pfmi-one-app .pfmi-one-settings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
#pfmi-one-app .pfmi-one-card code{display:block;background:#17144f;color:#fff;border-radius:16px;padding:14px 16px;font-size:15px;font-weight:900;margin:12px 0;overflow-x:auto}
#pfmi-one-app .pfmi-one-muted{font-size:12px!important;color:var(--one-muted)!important}
#pfmi-one-app .pfmi-one-card.warning{border-left:5px solid var(--one-orange)}
#pfmi-one-app .pfmi-one-loading,#pfmi-one-app .pfmi-one-empty{background:#fff;border:1px dashed #cfc8ff;border-radius:24px;padding:30px;text-align:center;color:var(--one-muted);font-weight:850;box-shadow:0 8px 20px rgba(70,63,140,.05)}
#pfmi-one-app .pfmi-one-empty strong{display:block;color:var(--one-text);font-size:16px;margin-bottom:4px}
#pfmi-one-app .pfmi-one-empty span{display:block;font-size:13px;color:var(--one-muted)}
#pfmi-one-app .pfmi-one-login{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;background:#fff7ed;border:1px solid #fed7aa;border-left:5px solid var(--one-orange);border-radius:24px;padding:18px;box-shadow:var(--one-shadow)}
#pfmi-one-app .pfmi-one-login b{display:block;color:#7c2d12;font-size:16px;font-weight:950}
#pfmi-one-app .pfmi-one-login span{display:block;color:#9a3412;font-size:13px;font-weight:750;margin-top:4px}
#pfmi-one-app [data-pfmi-one-panel="calendar"] #pf-wrapper{margin:0!important;width:100%!important}
#pfmi-one-app [data-pfmi-one-panel="calendar"] #pf-app{border-radius:26px;overflow:hidden;border:1px solid var(--one-border);box-shadow:var(--one-shadow)}
#pfmi-one-app [data-pfmi-one-panel="menus"] .pfmi-app,
#pfmi-one-app [data-pfmi-one-panel="courses"] #pf-courses-app{border-radius:26px;overflow:hidden;min-height:auto!important}
@media(max-width:1180px){#pfmi-one-app .pfmi-one-home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#pfmi-one-app .pfmi-one-layout{grid-template-columns:1fr}#pfmi-one-app .pfmi-one-settings{grid-template-columns:1fr}}
@media(max-width:760px){#pfmi-one-app{padding:14px 10px}#pfmi-one-app .pfmi-one-header{border-radius:24px;padding:16px}#pfmi-one-app .pfmi-one-logo{width:52px;height:52px;min-width:52px;font-size:25px}#pfmi-one-app .pfmi-one-brand h1{font-size:23px}#pfmi-one-app .pfmi-one-home-grid{grid-template-columns:1fr}#pfmi-one-app .pfmi-one-days{grid-template-columns:1fr}#pfmi-one-app .pfmi-one-item{grid-template-columns:36px minmax(0,1fr)}#pfmi-one-app .pfmi-one-item .pfmi-one-pill{grid-column:2/3;justify-self:start}#pfmi-one-app .pfmi-one-tabs button{font-size:13px;padding:11px 13px}}

/* V2.14.2 — Accès + Onboarding + app unifiée */
#pfmi-one-app .pfmi-one-family-pill{display:inline-flex;margin-top:8px;padding:6px 12px;border-radius:999px;background:#f3f0ff;color:#4f35c8;border:1px solid #ddd6fe;font-size:12px;font-weight:950}
#pfmi-one-app .pfmi-one-btn.warning{background:linear-gradient(135deg,#f59e0b,#f97316);color:#fff;box-shadow:0 10px 24px rgba(249,115,22,.22)}
#pfmi-one-app .pfmi-one-onboarding-alert{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#fff7ed;border:1px solid #fed7aa;border-left:6px solid #f97316;border-radius:24px;padding:16px 18px;margin-bottom:16px;box-shadow:0 12px 30px rgba(249,115,22,.08)}
#pfmi-one-app .pfmi-one-onboarding-alert strong{color:#7c2d12;font-weight:1000}
#pfmi-one-app .pfmi-one-onboarding-alert span{color:#9a3412;font-size:13px;font-weight:800;line-height:1.35;flex:1;min-width:220px}
#pfmi-one-app .pfmi-one-onboarding-alert.compact{margin-bottom:16px}
#pfmi-one-app .pfmi-one-empty code{display:block;margin:12px auto 0;max-width:max-content;background:#17144f;color:#fff;border-radius:14px;padding:10px 14px;font-weight:950}
#pfmi-one-app.pfmi-one-gate{min-height:auto;padding:30px;background:transparent}

#pfmi-one-app .pfmi-one-bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:9998;display:flex;justify-content:space-around;align-items:center;background:rgba(255,255,255,.95);backdrop-filter:blur(20px);border-top:1px solid #e8eaf6;padding:8px 0 12px;box-shadow:0 -4px 24px rgba(99,102,241,.10)}
#pfmi-one-app .pfmi-one-bottom-nav button{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:56px;border:none;background:transparent;border-radius:14px;padding:6px 12px;cursor:pointer;transition:.15s;color:#6b7280;font-family:'Segoe UI',system-ui,sans-serif;font-weight:800}
#pfmi-one-app .pfmi-one-bottom-nav button:hover{background:#f0f0ff}
#pfmi-one-app .pfmi-one-bottom-nav button.active{background:linear-gradient(135deg,#6366f120,#8b5cf620)}
#pfmi-one-app .pfmi-one-bottom-nav button span:last-child{font-size:.62rem;font-weight:850;color:#6b7280}
#pfmi-one-app .pfmi-one-bottom-nav button.active span:last-child{background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
#pfmi-one-app .pfmi-one-nav-icon{font-size:1.4rem;line-height:1;position:relative;display:inline-flex}
#pfmi-one-app .pfmi-one-nav-icon em{position:absolute;top:-5px;right:-8px;background:#ef4444;color:#fff;font-size:.55rem;font-style:normal;font-weight:950;padding:1px 5px;border-radius:50px;min-width:14px;text-align:center;display:none;line-height:1.25}
#pfmi-one-app .pfmi-one-nav-icon em.visible{display:block}
#pfmi-one-app .pfmi-one-bottom-nav button.active .pfmi-one-nav-icon:after{content:'';position:absolute;bottom:-7px;left:50%;transform:translateX(-50%);width:4px;height:4px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#8b5cf6)}
#pfmi-one-app{padding-bottom:98px}

@media(min-width:1024px){
  #pfmi-one-app .pfmi-one-bottom-nav{top:0;bottom:auto;left:0;right:auto;width:80px;height:100vh;flex-direction:column;justify-content:center;padding:0 8px;border-top:none;border-right:1px solid #e8eaf6;box-shadow:4px 0 24px rgba(99,102,241,.08)}
  #pfmi-one-app .pfmi-one-bottom-nav button{padding:10px 8px;min-width:auto;width:100%}
  #pfmi-one-app{padding-left:96px;padding-bottom:24px}
  #pfmi-one-app .pfmi-one-tabs{top:10px}
}
@media(max-width:760px){
  #pfmi-one-app .pfmi-one-bottom-nav{display:flex}
  #pfmi-one-app .pfmi-one-tabs{padding-bottom:8px;margin-bottom:12px}
  #pfmi-one-app .pfmi-one-header-actions{width:100%}
  #pfmi-one-app .pfmi-one-header-actions .pfmi-one-btn{flex:1}
}

.pfmi-one-empty.danger{border-color:#fecaca!important;background:#fff5f5!important;color:#991b1b!important}
.pfmi-one-diagnostics{margin-top:14px;display:grid;gap:8px}
.pfmi-diag-summary{border-radius:16px;padding:12px 14px;display:flex;justify-content:space-between;gap:10px;align-items:center;font-weight:900;border:1px solid #e5e7eb;background:#f8fafc;color:#334155}
.pfmi-diag-summary.ok{background:#ecfdf5;border-color:#bbf7d0;color:#065f46}
.pfmi-diag-summary.bad{background:#fff7ed;border-color:#fed7aa;color:#9a3412}
.pfmi-diag-summary span{font-size:12px;font-weight:800;opacity:.85}
.pfmi-diag-row{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;border:1px solid #e5e7eb;background:#fff;border-radius:14px;padding:10px 12px;font-size:13px}
.pfmi-diag-row.ok{border-color:#dcfce7;background:#f8fffb}
.pfmi-diag-row.bad{border-color:#fecaca;background:#fff5f5}
.pfmi-diag-row b{font-weight:950;color:#172554}
.pfmi-diag-row span{font-size:12px;color:#64748b;text-align:right;word-break:break-word}

.pfmi-one-empty.danger{border-color:#fecaca;background:#fff5f5;color:#7f1d1d}.pfmi-diag-errors{margin-top:14px;border-top:1px solid #edf0fb;padding-top:12px}.pfmi-diag-errors h3{margin:0 0 10px;font-size:14px;color:#17144f}.pfmi-diag-error{display:grid;grid-template-columns:110px 1fr auto;gap:8px;align-items:center;background:#fff7ed;border:1px solid #fed7aa;border-radius:12px;padding:8px 10px;margin-top:6px}.pfmi-diag-error b{color:#9a3412;font-size:12px}.pfmi-diag-error span{color:#431407;font-size:12px;font-weight:700}.pfmi-diag-error small{color:#9a3412;font-size:11px}.pfmi-one-safe-alert{background:#eef2ff;border-color:#c7d2fe;color:#312e81}.pfmi-one-safe-alert code{background:#fff;border:1px solid #ddd6fe;border-radius:8px;padding:2px 6px}
@media(max-width:720px){.pfmi-diag-error{grid-template-columns:1fr}.pfmi-diag-error small{text-align:left}}


#pfmi-one-app .pfmi-one-check{display:inline-flex;align-items:center;gap:8px;border:1px solid #e8e5ff;background:#fff;border-radius:999px;padding:10px 14px;color:#4b5563;font-size:13px;font-weight:900;cursor:pointer}
#pfmi-one-app .pfmi-one-check input{width:16px;height:16px;accent-color:var(--one-primary)}
#pfmi-one-app .pfmi-one-backup-status{margin-top:14px;border:1px dashed #cfc8ff;background:#fff;border-radius:18px;padding:12px 14px;font-size:13px;font-weight:800;color:#4b5563}
#pfmi-one-app .pfmi-one-backup-status strong{display:block;color:#17144f;font-size:14px;margin-bottom:4px}
#pfmi-one-app .pfmi-one-backup-status span{display:block;color:#64748b;line-height:1.35}
#pfmi-one-app .pfmi-one-backup-status.ok{background:#ecfdf5;border-color:#bbf7d0;color:#065f46}
#pfmi-one-app .pfmi-one-backup-status.bad{background:#fff5f5;border-color:#fecaca;color:#991b1b}
#pfmi-one-app .pfmi-one-backup-card{border-left:5px solid var(--one-green)}


/* V2.15.3 — Partage familial multi-comptes */
#pfmi-one-app .pfmi-one-family-card{border-left:5px solid var(--one-primary)}
#pfmi-one-app .pfmi-family-label{display:block;margin:12px 0 6px;color:#312e81;font-size:13px;font-weight:950}
#pfmi-one-app .pfmi-family-input{width:100%;border:1.5px solid #ddd8ff;background:#fff;border-radius:16px;padding:13px 14px;font-size:15px;font-weight:850;color:#17144f;outline:none;box-sizing:border-box}
#pfmi-one-app .pfmi-family-input:focus{border-color:var(--one-primary);box-shadow:0 0 0 4px rgba(108,76,241,.11)}
#pfmi-one-app .pfmi-family-input.code{text-transform:uppercase;letter-spacing:.08em;font-weight:1000}
#pfmi-one-app .pfmi-family-sep{height:1px;background:#edf0fb;margin:18px 0}
#pfmi-one-app .pfmi-family-owner{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:16px;padding:10px 12px;margin-top:12px}
#pfmi-one-app .pfmi-family-owner span{font-size:12px;color:#64748b;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
#pfmi-one-app .pfmi-family-owner code{margin:0!important;padding:7px 10px!important;border-radius:10px!important;font-size:12px!important}
#pfmi-one-app .pfmi-family-counts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:12px}
#pfmi-one-app .pfmi-family-counts span{background:#fff;border:1px solid #e8e5ff;border-radius:14px;padding:9px 7px;text-align:center;color:#64748b;font-size:11px;font-weight:900}
#pfmi-one-app .pfmi-family-counts b{display:block;color:#17144f;font-size:18px;font-weight:1000;line-height:1;margin-bottom:4px}
#pfmi-one-app .pfmi-family-invite{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:linear-gradient(135deg,#f3f0ff,#fff);border:1px solid #ddd6fe;border-radius:18px;padding:12px;margin-top:14px}
#pfmi-one-app .pfmi-family-invite span{font-size:12px;color:#4f35c8;font-weight:950;text-transform:uppercase;letter-spacing:.07em}
#pfmi-one-app .pfmi-family-invite strong{font-size:20px;letter-spacing:.12em;color:#17144f;font-weight:1000;margin-right:auto}
#pfmi-one-app .pfmi-family-members{margin-top:16px}
#pfmi-one-app .pfmi-family-members h3{font-size:13px!important;margin:0 0 8px!important;color:#64748b!important;text-transform:uppercase!important;letter-spacing:.08em!important}
#pfmi-one-app .pfmi-family-member{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;background:#fff;border:1px solid #edf0fb;border-radius:16px;padding:10px 12px;margin-top:8px}
#pfmi-one-app .pfmi-family-member>span{width:34px;height:34px;border-radius:12px;background:#ede9fe;display:flex;align-items:center;justify-content:center}
#pfmi-one-app .pfmi-family-member b{display:block;color:#17144f;font-size:14px;font-weight:950;line-height:1.2}
#pfmi-one-app .pfmi-family-member small{display:block;color:#64748b;font-size:11px;font-weight:700;margin-top:2px;overflow:hidden;text-overflow:ellipsis}
#pfmi-one-app .pfmi-family-member em{font-style:normal;background:#f3f0ff;color:#4f35c8;border-radius:999px;padding:4px 9px;font-size:11px;font-weight:950}
#pfmi-one-app .pfmi-one-family-status{margin-top:12px;border:1px dashed #cfc8ff;background:#fff;border-radius:16px;padding:10px 12px;font-size:13px;font-weight:850;color:#4b5563}
#pfmi-one-app .pfmi-one-family-status strong{display:block;color:#17144f;margin-bottom:3px}
#pfmi-one-app .pfmi-one-family-status span{display:block;color:#64748b;line-height:1.35}
#pfmi-one-app .pfmi-one-family-status.ok{background:#ecfdf5;border-color:#bbf7d0;color:#065f46}
#pfmi-one-app .pfmi-one-family-status.bad{background:#fff5f5;border-color:#fecaca;color:#991b1b}
@media(max-width:760px){#pfmi-one-app .pfmi-family-counts{grid-template-columns:repeat(2,minmax(0,1fr))}#pfmi-one-app .pfmi-family-invite strong{width:100%;font-size:18px}.pfmi-family-member{grid-template-columns:30px minmax(0,1fr)!important}.pfmi-family-member em{grid-column:2/3;justify-self:start}}

/* V2.15.4 — Partage familial : rôles, invitations et membres */
#pfmi-one-app .pfmi-one-btn.tiny{min-height:30px!important;padding:7px 10px!important;border-radius:999px!important;font-size:11px!important;line-height:1!important;box-shadow:none!important}
#pfmi-one-app .pfmi-one-btn.danger{background:#fff1f2!important;color:#be123c!important;border:1px solid #fecdd3!important}
#pfmi-one-app .pfmi-family-role-help{display:flex;gap:10px;align-items:flex-start;background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;padding:12px 14px;margin:12px 0;color:#334155;font-size:13px;font-weight:750;line-height:1.4}
#pfmi-one-app .pfmi-family-role-help b{color:#17144f;font-weight:1000;white-space:nowrap}
#pfmi-one-app .pfmi-family-link{display:grid;grid-template-columns:120px minmax(0,1fr);gap:8px;align-items:center;background:#fff;border:1px solid #edf0fb;border-radius:16px;padding:10px 12px;margin-top:10px}
#pfmi-one-app .pfmi-family-link span{font-size:12px;color:#64748b;font-weight:950;text-transform:uppercase;letter-spacing:.06em}
#pfmi-one-app .pfmi-family-link code{display:block;margin:0!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px!important}
#pfmi-one-app .pfmi-family-inline{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
#pfmi-one-app .pfmi-family-member{grid-template-columns:34px minmax(0,1fr) auto!important}
#pfmi-one-app .pfmi-family-member .pfmi-family-me{display:inline-flex;margin-left:6px;background:#ecfdf5;color:#15803d;border:1px solid #bbf7d0;border-radius:999px;padding:1px 6px;font-size:10px;font-weight:950;vertical-align:middle}
#pfmi-one-app .pfmi-family-member em.role-owner{background:#fef3c7;color:#92400e}
#pfmi-one-app .pfmi-family-member em.role-admin{background:#ede9fe;color:#5b21b6}
#pfmi-one-app .pfmi-family-member em.role-member{background:#f1f5f9;color:#475569}
#pfmi-one-app .pfmi-family-member-actions{grid-column:2 / -1;display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-start;margin-top:8px}
#pfmi-one-app .pfmi-family-status{margin-top:12px;border-radius:14px;padding:10px 12px;background:#f8fafc;border:1px solid #e2e8f0;color:#334155;font-size:13px;font-weight:750;line-height:1.4}
#pfmi-one-app .pfmi-family-status.ok{background:#ecfdf5;border-color:#bbf7d0;color:#166534}
#pfmi-one-app .pfmi-family-status.bad{background:#fff1f2;border-color:#fecdd3;color:#be123c}
@media(max-width:760px){#pfmi-one-app .pfmi-family-inline,#pfmi-one-app .pfmi-family-link{grid-template-columns:1fr}#pfmi-one-app .pfmi-family-member-actions{grid-column:1 / -1}.pfmi-family-member em{grid-column:auto!important}}


/* V2.15.5 — Refonte design premium kids-friendly + visibilité boutons */
#pfmi-one-app{
  --one-bg:#f6f8ff;
  --one-card:#ffffff;
  --one-border:#dde3f4;
  --one-text:#18203f;
  --one-muted:#667085;
  --one-primary:#5b59f6;
  --one-primary2:#8b5cf6;
  --one-accent:#14b8a6;
  --one-yellow:#fbbf24;
  --one-shadow:0 18px 44px rgba(46,61,114,.10);
  position:relative;
  isolation:isolate;
  background:
    radial-gradient(circle at top left, rgba(91,89,246,.14), transparent 28%),
    radial-gradient(circle at top right, rgba(20,184,166,.12), transparent 24%),
    radial-gradient(circle at bottom right, rgba(251,191,36,.10), transparent 22%),
    linear-gradient(180deg,#f8fbff 0%,#f4f2ff 48%,#edf7ff 100%);
}
#pfmi-one-app::before,#pfmi-one-app::after{content:'';position:fixed;z-index:-1;border-radius:999px;filter:blur(80px);opacity:.45;pointer-events:none}
#pfmi-one-app::before{width:240px;height:240px;left:-60px;top:70px;background:rgba(91,89,246,.20)}
#pfmi-one-app::after{width:260px;height:260px;right:-90px;bottom:80px;background:rgba(20,184,166,.16)}
#pfmi-one-app .pfmi-one-header{
  background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(249,251,255,.95));
  border:1px solid rgba(221,227,244,.95);
  box-shadow:0 22px 55px rgba(46,61,114,.12);
}
#pfmi-one-app .pfmi-one-logo{background:linear-gradient(135deg,var(--one-primary),var(--one-primary2) 62%,#20c7b7);position:relative;overflow:hidden}
#pfmi-one-app .pfmi-one-logo::after{content:'';position:absolute;inset:0;background:linear-gradient(145deg,rgba(255,255,255,.28),transparent 42%);}
#pfmi-one-app .pfmi-one-brand h1{font-size:32px}
#pfmi-one-app .pfmi-one-brand p{max-width:720px;font-size:14px;color:#56627a}
#pfmi-one-app .pfmi-one-family-pill{background:linear-gradient(135deg,#eef2ff,#ffffff);border-color:#d6d8ff;color:#4338ca;box-shadow:0 8px 20px rgba(91,89,246,.08)}
#pfmi-one-app .pfmi-one-btn{min-height:46px;padding:12px 18px;border:1px solid transparent;box-shadow:0 12px 24px rgba(15,23,42,.06)}
#pfmi-one-app .pfmi-one-btn.primary{background:linear-gradient(135deg,#5856eb,#7c5cff 55%,#20c7b7 130%);}
#pfmi-one-app .pfmi-one-btn.soft{background:#fff;color:#4338ca;border-color:#d9dcff;box-shadow:0 10px 22px rgba(91,89,246,.08)}
#pfmi-one-app .pfmi-one-btn.warning{background:linear-gradient(135deg,#f59e0b,#fb7185);color:#fff;}
#pfmi-one-app .pfmi-one-btn.danger{background:linear-gradient(135deg,#fff1f2,#ffe4e6)!important;color:#be123c!important;border-color:#fecdd3!important}
#pfmi-one-app .pfmi-one-tabs{background:rgba(255,255,255,.88);border-color:#e5e9f6;box-shadow:0 14px 32px rgba(46,61,114,.10)}
#pfmi-one-app .pfmi-one-tabs button{position:relative;padding:13px 16px;color:#5f6b85}
#pfmi-one-app .pfmi-one-tabs button.active{box-shadow:0 14px 24px rgba(91,89,246,.24)}
#pfmi-one-app .pfmi-one-tabs button:not(.active):hover{background:#f5f7ff;color:#3f3b8f}
#pfmi-one-app .pfmi-one-panel-head{background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(247,249,255,.95));box-shadow:0 14px 34px rgba(46,61,114,.08)}
#pfmi-one-app .pfmi-one-panel-head h2{font-size:24px}
#pfmi-one-app .pfmi-one-card{box-shadow:0 18px 44px rgba(46,61,114,.10);border-color:#e3e8f5}
#pfmi-one-app .pfmi-one-card h2{font-size:22px;font-weight:950;letter-spacing:-.03em;color:#18203f}
#pfmi-one-app .pfmi-one-card h3{color:#63708a}
#pfmi-one-app .pfmi-one-home-grid .pfmi-one-card{position:relative;overflow:hidden}
#pfmi-one-app .pfmi-one-home-grid .pfmi-one-card::after{content:'';position:absolute;right:-18px;top:-18px;width:82px;height:82px;border-radius:24px;background:linear-gradient(135deg,rgba(91,89,246,.12),rgba(20,184,166,.10));transform:rotate(14deg)}
#pfmi-one-app .pfmi-one-card strong.big{font-size:38px;color:#101828}
#pfmi-one-app .pfmi-one-item{background:linear-gradient(180deg,#ffffff,#fbfcff);border-color:#e8ecf7}
#pfmi-one-app .pfmi-one-item .ico{background:linear-gradient(135deg,#eef2ff,#dcfce7);color:#4f46e5}
#pfmi-one-app .pfmi-one-day{background:linear-gradient(180deg,#ffffff,#fbfcff)}
#pfmi-one-app .pfmi-one-day.today{background:linear-gradient(180deg,#eef2ff,#ffffff);}
#pfmi-one-app .pfmi-one-meal{background:#f8fbff;border-left-color:#14b8a6}
#pfmi-one-app .pfmi-one-bottom-nav{background:rgba(255,255,255,.94);backdrop-filter:blur(18px);border-top:1px solid #e6ebf7;box-shadow:0 -8px 26px rgba(46,61,114,.08)}
#pfmi-one-app .pfmi-one-bottom-nav button{color:#6b7280}
#pfmi-one-app .pfmi-one-bottom-nav button.active{background:linear-gradient(135deg,rgba(91,89,246,.16),rgba(20,184,166,.12));color:#312e81}
#pfmi-one-app .pfmi-one-bottom-nav em{box-shadow:0 4px 10px rgba(239,68,68,.18)}

/* Harmonisation visuelle dans les modules chargés */
#pfmi-one-app [data-pfmi-one-panel] .pfmi-ui-card,
#pfmi-one-app [data-pfmi-one-panel] .pf-card,
#pfmi-one-app [data-pfmi-one-panel] .pfmi-card,
#pfmi-one-app [data-pfmi-one-panel] .pfc-card,
#pfmi-one-app [data-pfmi-one-panel] .pf-budget-card,
#pfmi-one-app [data-pfmi-one-panel] .pf-dash-card,
#pfmi-one-app [data-pfmi-one-panel] .pf-module-card,
#pfmi-one-app [data-pfmi-one-panel] .pf-access-card,
#pfmi-one-app [data-pfmi-one-panel] .mural-card,
#pfmi-one-app [data-pfmi-one-panel] .mural-today-card,
#pfmi-one-app [data-pfmi-one-panel] .mural-week-card,
#pfmi-one-app [data-pfmi-one-panel] .mural-menu-card,
#pfmi-one-app [data-pfmi-one-panel] .pfvoice-status-card,
#pfmi-one-app [data-pfmi-one-panel] .pfvoice-mural-card,
#pfmi-one-app [data-pfmi-one-panel] .reward-card,
#pfmi-one-app [data-pfmi-one-panel] .streak-card,
#pfmi-one-app [data-pfmi-one-panel] .stat-card,
#pfmi-one-app [data-pfmi-one-panel] .pf-child-card,
#pfmi-one-app [data-pfmi-one-panel] .pf-login-card,
#pfmi-one-app [data-pfmi-one-panel] .pf-menu-card,
#pfmi-one-app [data-pfmi-one-panel] .tpl-card{
  background:rgba(255,255,255,.98)!important;
  border:1px solid #e4e9f7!important;
  border-radius:24px!important;
  box-shadow:0 16px 38px rgba(46,61,114,.08)!important;
}
#pfmi-one-app [data-pfmi-one-panel] .pfmi-ui-title,
#pfmi-one-app [data-pfmi-one-panel] h1,
#pfmi-one-app [data-pfmi-one-panel] h2,
#pfmi-one-app [data-pfmi-one-panel] h3,
#pfmi-one-app [data-pfmi-one-panel] .section-title,
#pfmi-one-app [data-pfmi-one-panel] .pf-section-title,
#pfmi-one-app [data-pfmi-one-panel] .pfc-section-title,
#pfmi-one-app [data-pfmi-one-panel] .pfmi-section-title,
#pfmi-one-app [data-pfmi-one-panel] .pf-title,
#pfmi-one-app [data-pfmi-one-panel] .pfb-title,
#pfmi-one-app [data-pfmi-one-panel] .pfc-title,
#pfmi-one-app [data-pfmi-one-panel] .pfmi-title,
#pfmi-one-app [data-pfmi-one-panel] .pwall-title,
#pfmi-one-app [data-pfmi-one-panel] .pfvoice-title{
  color:#17204a!important;
  font-weight:950!important;
  letter-spacing:-.02em!important;
}
#pfmi-one-app [data-pfmi-one-panel] p,
#pfmi-one-app [data-pfmi-one-panel] small,
#pfmi-one-app [data-pfmi-one-panel] .pf-subtitle,
#pfmi-one-app [data-pfmi-one-panel] .pfc-subtitle,
#pfmi-one-app [data-pfmi-one-panel] .pfvoice-subtitle{
  color:#667085!important;
}
#pfmi-one-app [data-pfmi-one-panel] .pfmi-ui-action,
#pfmi-one-app [data-pfmi-one-panel] .pf-btn,
#pfmi-one-app [data-pfmi-one-panel] .pf-access-btn,
#pfmi-one-app [data-pfmi-one-panel] .pfb-btn,
#pfmi-one-app [data-pfmi-one-panel] .pfmi-btn,
#pfmi-one-app [data-pfmi-one-panel] .pfw-btn,
#pfmi-one-app [data-pfmi-one-panel] .pfw-mini-btn,
#pfmi-one-app [data-pfmi-one-panel] .pwall-btn,
#pfmi-one-app [data-pfmi-one-panel] .pfc-btn-add,
#pfmi-one-app [data-pfmi-one-panel] .pfc-btn-confirm,
#pfmi-one-app [data-pfmi-one-panel] .pfc-btn-secondary,
#pfmi-one-app [data-pfmi-one-panel] .pfc-bulk-btn,
#pfmi-one-app [data-pfmi-one-panel] .pfc-export-btn,
#pfmi-one-app [data-pfmi-one-panel] .pfc-share-btn,
#pfmi-one-app [data-pfmi-one-panel] .pfc-vocal-btn,
#pfmi-one-app [data-pfmi-one-panel] .child-big-btn,
#pfmi-one-app [data-pfmi-one-panel] .initiative-btn,
#pfmi-one-app [data-pfmi-one-panel] .validate-btn,
#pfmi-one-app [data-pfmi-one-panel] input[type="button"],
#pfmi-one-app [data-pfmi-one-panel] input[type="submit"]{
  min-height:44px!important;
  padding:11px 16px!important;
  border-radius:16px!important;
  border:1px solid transparent!important;
  font-size:14px!important;
  font-weight:900!important;
  line-height:1.2!important;
  visibility:visible!important;
  opacity:1!important;
  box-shadow:0 10px 24px rgba(15,23,42,.06)!important;
}
#pfmi-one-app [data-pfmi-one-panel] .pf-btn,
#pfmi-one-app [data-pfmi-one-panel] .pf-access-btn,
#pfmi-one-app [data-pfmi-one-panel] .pfb-btn,
#pfmi-one-app [data-pfmi-one-panel] .pfmi-btn,
#pfmi-one-app [data-pfmi-one-panel] .pfw-btn,
#pfmi-one-app [data-pfmi-one-panel] .pwall-btn,
#pfmi-one-app [data-pfmi-one-panel] .pfc-btn-add,
#pfmi-one-app [data-pfmi-one-panel] .pfc-btn-confirm,
#pfmi-one-app [data-pfmi-one-panel] .pfc-export-btn,
#pfmi-one-app [data-pfmi-one-panel] .pfc-share-btn,
#pfmi-one-app [data-pfmi-one-panel] .pfc-vocal-btn,
#pfmi-one-app [data-pfmi-one-panel] .child-big-btn,
#pfmi-one-app [data-pfmi-one-panel] .initiative-btn,
#pfmi-one-app [data-pfmi-one-panel] .validate-btn,
#pfmi-one-app [data-pfmi-one-panel] input[type="submit"]{
  background:linear-gradient(135deg,#5b59f6,#7c5cff 60%,#20c7b7 130%)!important;
  color:#fff!important;
}
#pfmi-one-app [data-pfmi-one-panel] .pf-btn-outline,
#pfmi-one-app [data-pfmi-one-panel] .pfc-btn-secondary,
#pfmi-one-app [data-pfmi-one-panel] .pfc-btn-cancel,
#pfmi-one-app [data-pfmi-one-panel] .icon-btn,
#pfmi-one-app [data-pfmi-one-panel] .pf-btn-sm{
  background:#fff!important;color:#4338ca!important;border-color:#d9dcff!important;
}
#pfmi-one-app [data-pfmi-one-panel] .delete-btn,
#pfmi-one-app [data-pfmi-one-panel] .reject-btn,
#pfmi-one-app [data-pfmi-one-panel] .pf-btn-danger{
  background:linear-gradient(135deg,#fff1f2,#ffe4e6)!important;color:#be123c!important;border-color:#fecdd3!important;
}
#pfmi-one-app [data-pfmi-one-panel] .pf-btn-success{background:linear-gradient(135deg,#16a34a,#22c55e)!important;color:#fff!important;border-color:transparent!important}
#pfmi-one-app [data-pfmi-one-panel] button:hover,
#pfmi-one-app [data-pfmi-one-panel] a[class*="btn"]:hover,
#pfmi-one-app [data-pfmi-one-panel] input[type="button"]:hover,
#pfmi-one-app [data-pfmi-one-panel] input[type="submit"]:hover{transform:translateY(-1px);filter:saturate(1.04)}
#pfmi-one-app [data-pfmi-one-panel] button:focus-visible,
#pfmi-one-app [data-pfmi-one-panel] a[class*="btn"]:focus-visible,
#pfmi-one-app [data-pfmi-one-panel] input[type="button"]:focus-visible,
#pfmi-one-app [data-pfmi-one-panel] input[type="submit"]:focus-visible,
#pfmi-one-app .pfmi-one-btn:focus-visible,
#pfmi-one-app .pfmi-one-tabs button:focus-visible{
  outline:none!important;box-shadow:0 0 0 4px rgba(91,89,246,.14),0 10px 22px rgba(91,89,246,.18)!important;
}
#pfmi-one-app [data-pfmi-one-panel] input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
#pfmi-one-app [data-pfmi-one-panel] select,
#pfmi-one-app [data-pfmi-one-panel] textarea{
  border:1.5px solid #dce3f2!important;
  background:#fff!important;
  border-radius:16px!important;
  color:#17204a!important;
  box-shadow:inset 0 1px 2px rgba(15,23,42,.03);
}
#pfmi-one-app [data-pfmi-one-panel] input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):focus,
#pfmi-one-app [data-pfmi-one-panel] select:focus,
#pfmi-one-app [data-pfmi-one-panel] textarea:focus{
  border-color:#7c5cff!important;
  box-shadow:0 0 0 4px rgba(124,92,255,.10)!important;
  outline:none!important;
}
#pfmi-one-app [data-pfmi-one-panel] .badge,
#pfmi-one-app [data-pfmi-one-panel] .status-badge,
#pfmi-one-app [data-pfmi-one-panel] .pf-event-badge,
#pfmi-one-app [data-pfmi-one-panel] .family-badge,
#pfmi-one-app [data-pfmi-one-panel] .points-badge,
#pfmi-one-app [data-pfmi-one-panel] .pfc-count-badge,
#pfmi-one-app [data-pfmi-one-panel] .pfc-history-badge,
#pfmi-one-app [data-pfmi-one-panel] .pfc-source-badge{
  border-radius:999px!important;
  font-weight:900!important;
  box-shadow:none!important;
}
#pfmi-one-app [data-pfmi-one-panel] .pfmi-ui-icon-only{min-width:44px!important;padding-inline:12px!important}
#pfmi-one-app [data-pfmi-one-panel="missions"] .child-mission-card,
#pfmi-one-app [data-pfmi-one-panel="missions"] .reward-card,
#pfmi-one-app [data-pfmi-one-panel="missions"] .streak-card{position:relative;overflow:hidden}
#pfmi-one-app [data-pfmi-one-panel="missions"] .child-mission-card::after,
#pfmi-one-app [data-pfmi-one-panel="missions"] .reward-card::after,
#pfmi-one-app [data-pfmi-one-panel="missions"] .streak-card::after{content:'✨';position:absolute;right:14px;top:12px;font-size:18px;opacity:.30}
@media(max-width:760px){
  #pfmi-one-app .pfmi-one-brand h1{font-size:27px}
  #pfmi-one-app .pfmi-one-card h2{font-size:20px}
  #pfmi-one-app .pfmi-one-header{padding:16px 14px}
  #pfmi-one-app .pfmi-one-btn{width:100%}
  #pfmi-one-app .pfmi-one-actions-row .pfmi-one-btn{flex:1 1 100%}
}


/* V2.15.6 — Finition ultra premium module par module */
#pfmi-one-app [data-pfmi-one-panel]{
  --pfui-ink:#17204a;
  --pfui-muted:#667085;
  --pfui-line:#e4e9f7;
  --pfui-card:#ffffff;
  --pfui-blue:#5b59f6;
  --pfui-purple:#8b5cf6;
  --pfui-mint:#14b8a6;
  --pfui-gold:#f59e0b;
  --pfui-red:#ef4444;
}
#pfmi-one-app [data-pfmi-one-panel] .pfmi-one-lazy{
  min-height:240px;
}
#pfmi-one-app [data-pfmi-one-panel] .pfmi-ui-card,
#pfmi-one-app [data-pfmi-one-panel] .card,
#pfmi-one-app [data-pfmi-one-panel] .pf-card,
#pfmi-one-app [data-pfmi-one-panel] .pfmi-card,
#pfmi-one-app [data-pfmi-one-panel] .pfc-card{
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
#pfmi-one-app [data-pfmi-one-panel] .pfmi-ui-card:hover,
#pfmi-one-app [data-pfmi-one-panel] .card:hover,
#pfmi-one-app [data-pfmi-one-panel] .pf-card:hover,
#pfmi-one-app [data-pfmi-one-panel] .pfmi-card:hover,
#pfmi-one-app [data-pfmi-one-panel] .pfc-card:hover{
  transform:translateY(-1px);
  box-shadow:0 20px 48px rgba(46,61,114,.12)!important;
  border-color:#d8ddff!important;
}
#pfmi-one-app [data-pfmi-one-panel] button,
#pfmi-one-app [data-pfmi-one-panel] a[class*="btn"],
#pfmi-one-app [data-pfmi-one-panel] input[type="button"],
#pfmi-one-app [data-pfmi-one-panel] input[type="submit"]{
  white-space:normal!important;
  text-align:center!important;
  text-decoration:none!important;
  touch-action:manipulation;
}
#pfmi-one-app [data-pfmi-one-panel] button:disabled,
#pfmi-one-app [data-pfmi-one-panel] a[aria-disabled="true"],
#pfmi-one-app [data-pfmi-one-panel] input:disabled{
  opacity:.55!important;
  cursor:not-allowed!important;
  filter:grayscale(.18);
  transform:none!important;
}
#pfmi-one-app [data-pfmi-one-panel] .pfmi-ui-icon-only,
#pfmi-one-app [data-pfmi-one-panel] .icon-btn{
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:16px!important;
}
#pfmi-one-app [data-pfmi-one-panel] label{
  color:#334155!important;
  font-weight:850!important;
}
#pfmi-one-app [data-pfmi-one-panel] input[type="checkbox"],
#pfmi-one-app [data-pfmi-one-panel] input[type="radio"]{
  accent-color:var(--pfui-blue);
}
#pfmi-one-app [data-pfmi-one-panel] table{
  border-collapse:separate!important;
  border-spacing:0 8px!important;
  width:100%;
}
#pfmi-one-app [data-pfmi-one-panel] th{
  color:#64748b!important;
  font-size:12px!important;
  text-transform:uppercase!important;
  letter-spacing:.06em!important;
}
#pfmi-one-app [data-pfmi-one-panel] td{
  background:#fff!important;
  border-top:1px solid #edf1fb!important;
  border-bottom:1px solid #edf1fb!important;
  padding:10px!important;
}
#pfmi-one-app [data-pfmi-one-panel] td:first-child{
  border-left:1px solid #edf1fb!important;
  border-radius:14px 0 0 14px!important;
}
#pfmi-one-app [data-pfmi-one-panel] td:last-child{
  border-right:1px solid #edf1fb!important;
  border-radius:0 14px 14px 0!important;
}

/* Menus — plus premium, plus gourmand, plus lisible */
#pfmi-one-app [data-pfmi-one-panel="menus"] .pfmi-header,
#pfmi-one-app [data-pfmi-one-panel="menus"] .pfmi-gen-card,
#pfmi-one-app [data-pfmi-one-panel="menus"] .pfmi-search-card,
#pfmi-one-app [data-pfmi-one-panel="menus"] .pfmi-rules-card{
  background:linear-gradient(135deg,#ffffff 0%,#fbfdff 55%,#f4f1ff 100%)!important;
}
#pfmi-one-app [data-pfmi-one-panel="menus"] .pfmi-full-btn,
#pfmi-one-app [data-pfmi-one-panel="menus"] .pfmi-btn{
  border-radius:18px!important;
  min-height:48px!important;
}
#pfmi-one-app [data-pfmi-one-panel="menus"] .pfmi-recipe-card{
  border-radius:24px!important;
  overflow:hidden!important;
}
#pfmi-one-app [data-pfmi-one-panel="menus"] .pfmi-section-title::before{
  content:'🍽️';
  margin-right:8px;
}

/* Courses — lisibilité magasin */
#pfmi-one-app [data-pfmi-one-panel="courses"] #pf-courses-app{
  background:linear-gradient(135deg,#f7faff,#f8f5ff 60%,#f0fdfa)!important;
}
#pfmi-one-app [data-pfmi-one-panel="courses"] .pfc-list-card,
#pfmi-one-app [data-pfmi-one-panel="courses"] .pfc-pantry-card,
#pfmi-one-app [data-pfmi-one-panel="courses"] .pfc-habits-card,
#pfmi-one-app [data-pfmi-one-panel="courses"] .pfc-import-card{
  border-radius:26px!important;
}
#pfmi-one-app [data-pfmi-one-panel="courses"] .pfc-rayon-header{
  border-radius:18px!important;
  background:linear-gradient(135deg,#eef2ff,#ffffff)!important;
}
#pfmi-one-app [data-pfmi-one-panel="courses"] .pfc-source-placard{
  background:#fff7ed!important;
  color:#c2410c!important;
}

/* Missions — effet waouh enfants */
#pfmi-one-app [data-pfmi-one-panel="missions"] #pf-missions-app{
  background:
    radial-gradient(circle at top left,rgba(251,191,36,.14),transparent 28%),
    radial-gradient(circle at top right,rgba(91,89,246,.16),transparent 28%),
    linear-gradient(135deg,#f7faff,#fff7ed 48%,#f5f3ff)!important;
}
#pfmi-one-app [data-pfmi-one-panel="missions"] .child-hero{
  background:linear-gradient(135deg,#5b59f6,#8b5cf6 50%,#f97316)!important;
  border-radius:32px!important;
  box-shadow:0 24px 56px rgba(91,89,246,.24)!important;
}
#pfmi-one-app [data-pfmi-one-panel="missions"] .mission-item{
  border-radius:22px!important;
}
#pfmi-one-app [data-pfmi-one-panel="missions"] .mission-check{
  box-shadow:0 8px 18px rgba(91,89,246,.12)!important;
}
#pfmi-one-app [data-pfmi-one-panel="missions"] .points-badge{
  background:linear-gradient(135deg,#fef3c7,#fde68a)!important;
  color:#92400e!important;
}

/* Budget/Réservations — plus sérieux, plus tableau de bord */
#pfmi-one-app [data-pfmi-one-panel="budget"] #pf-dash,
#pfmi-one-app [data-pfmi-one-panel="budget"] .pf-dash-card,
#pfmi-one-app [data-pfmi-one-panel="budget"] .pf-budget-card{
  border-radius:26px!important;
}
#pfmi-one-app [data-pfmi-one-panel="budget"] .pf-chip{
  border-radius:999px!important;
  font-weight:900!important;
}
#pfmi-one-app [data-pfmi-one-panel="budget"] .pf-header{
  backdrop-filter:blur(16px)!important;
}

/* Planning / mural */
#pfmi-one-app [data-pfmi-one-panel="calendar"] #pf-wrapper,
#pfmi-one-app [data-pfmi-one-panel="calendar"] #pf-app{
  background:linear-gradient(135deg,#f8fbff,#f4f1ff)!important;
}
#pfmi-one-app [data-pfmi-one-panel="calendar"] .pf-event-badge,
#pfmi-one-app [data-pfmi-one-panel="calendar"] .badge{
  border-radius:999px!important;
}

/* À faire */
#pfmi-one-app [data-pfmi-one-panel="weekly"] .pfw-section,
#pfmi-one-app [data-pfmi-one-panel="weekly"] .pfw-score-card{
  border-radius:26px!important;
}
#pfmi-one-app [data-pfmi-one-panel="weekly"] .pfw-btn,
#pfmi-one-app [data-pfmi-one-panel="weekly"] .pfw-mini-btn{
  border-radius:16px!important;
}

/* Réglages */
#pfmi-one-app [data-pfmi-one-panel="settings"] .pfmi-one-card{
  position:relative;
  overflow:hidden;
}
#pfmi-one-app [data-pfmi-one-panel="settings"] .pfmi-one-card::after{
  content:'';
  position:absolute;
  right:-24px;
  bottom:-24px;
  width:92px;
  height:92px;
  border-radius:28px;
  background:linear-gradient(135deg,rgba(91,89,246,.08),rgba(20,184,166,.08));
  transform:rotate(14deg);
  pointer-events:none;
}
@media(max-width:760px){
  #pfmi-one-app [data-pfmi-one-panel] button,
  #pfmi-one-app [data-pfmi-one-panel] a[class*="btn"],
  #pfmi-one-app [data-pfmi-one-panel] input[type="button"],
  #pfmi-one-app [data-pfmi-one-panel] input[type="submit"]{
    min-height:46px!important;
  }
  #pfmi-one-app [data-pfmi-one-panel] .pfmi-ui-icon-only,
  #pfmi-one-app [data-pfmi-one-panel] .icon-btn{
    width:46px!important;
    height:46px!important;
  }
}


/* V2.15.7 — Première semaine guidée */
#pfmi-one-app .pfmi-first-week{
  background:
    radial-gradient(circle at 12% 18%,rgba(251,191,36,.18),transparent 26%),
    radial-gradient(circle at 88% 12%,rgba(91,89,246,.16),transparent 28%),
    linear-gradient(135deg,rgba(255,255,255,.98),rgba(248,250,255,.96));
  border:1px solid #dde5f6;
  border-radius:32px;
  padding:22px;
  box-shadow:0 22px 56px rgba(46,61,114,.12);
  margin-bottom:18px;
  position:relative;
  overflow:hidden;
}
#pfmi-one-app .pfmi-first-week::after{
  content:'✨';
  position:absolute;
  right:22px;
  top:18px;
  font-size:32px;
  opacity:.18;
}
#pfmi-one-app .pfmi-first-hero{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px;
}
#pfmi-one-app .pfmi-first-kicker{
  display:inline-flex;
  align-items:center;
  gap:6px;
  background:#eef2ff;
  color:#4338ca;
  border:1px solid #d9dcff;
  border-radius:999px;
  padding:6px 11px;
  font-size:12px;
  font-weight:950;
  margin-bottom:10px;
}
#pfmi-one-app .pfmi-first-hero h2{
  font-size:clamp(24px,3vw,34px);
  line-height:1.05;
  font-weight:1000;
  margin:0;
  color:#17204a;
}
#pfmi-one-app .pfmi-first-hero p{
  margin:8px 0 0;
  color:#667085;
  font-size:14px;
  font-weight:800;
  line-height:1.45;
}
#pfmi-one-app .pfmi-first-score{
  min-width:112px;
  border-radius:26px;
  padding:14px;
  text-align:center;
  background:linear-gradient(135deg,#5b59f6,#8b5cf6 58%,#14b8a6 130%);
  color:#fff;
  box-shadow:0 16px 34px rgba(91,89,246,.22);
}
#pfmi-one-app .pfmi-first-score strong{
  display:block;
  font-size:32px;
  line-height:1;
  font-weight:1000;
}
#pfmi-one-app .pfmi-first-score span{
  display:block;
  margin-top:4px;
  font-size:12px;
  font-weight:900;
  opacity:.9;
}
#pfmi-one-app .pfmi-first-progress{
  height:12px;
  border-radius:999px;
  background:#eef2ff;
  overflow:hidden;
  margin:6px 0 16px;
}
#pfmi-one-app .pfmi-first-progress i{
  display:block;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,#5b59f6,#14b8a6,#fbbf24);
  transition:width .35s ease;
}
#pfmi-one-app .pfmi-first-steps{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
#pfmi-one-app .pfmi-first-step{
  display:grid;
  grid-template-columns:48px minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  background:#fff;
  border:1px solid #e4e9f7;
  border-radius:22px;
  padding:12px;
  box-shadow:0 12px 26px rgba(46,61,114,.06);
}
#pfmi-one-app .pfmi-first-step.done{
  background:linear-gradient(135deg,#f0fdf4,#ffffff);
  border-color:#bbf7d0;
}
#pfmi-one-app .pfmi-first-icon{
  width:48px;
  height:48px;
  border-radius:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg,#eef2ff,#f5f3ff);
  color:#4338ca;
  font-size:23px;
  font-weight:1000;
}
#pfmi-one-app .pfmi-first-step.done .pfmi-first-icon{
  background:linear-gradient(135deg,#16a34a,#22c55e);
  color:#fff;
}
#pfmi-one-app .pfmi-first-copy b{
  display:block;
  color:#17204a;
  font-size:14px;
  font-weight:1000;
  line-height:1.15;
}
#pfmi-one-app .pfmi-first-copy span{
  display:block;
  color:#667085;
  font-size:12px;
  font-weight:760;
  line-height:1.35;
  margin-top:3px;
}
#pfmi-one-app .pfmi-first-step .pfmi-one-btn{
  min-height:38px;
  padding:9px 12px;
  font-size:12px;
}
#pfmi-one-app .pfmi-first-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:14px;
}
@media(max-width:980px){
  #pfmi-one-app .pfmi-first-steps{grid-template-columns:1fr}
}
@media(max-width:760px){
  #pfmi-one-app .pfmi-first-week{padding:16px;border-radius:26px}
  #pfmi-one-app .pfmi-first-hero{display:block}
  #pfmi-one-app .pfmi-first-score{margin-top:14px;width:100%}
  #pfmi-one-app .pfmi-first-step{grid-template-columns:42px minmax(0,1fr);gap:10px}
  #pfmi-one-app .pfmi-first-icon{width:42px;height:42px;border-radius:16px}
  #pfmi-one-app .pfmi-first-step .pfmi-one-btn{grid-column:1 / -1;width:100%}
  #pfmi-one-app .pfmi-first-actions .pfmi-one-btn{width:100%}
}


/* V2.16.7 — Feedback utilisateur */
#pfmi-one-app .pfmi-feedback-modal[hidden]{display:none!important}
#pfmi-one-app .pfmi-feedback-modal{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:18px}
#pfmi-one-app .pfmi-feedback-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.42);backdrop-filter:blur(10px)}
#pfmi-one-app .pfmi-feedback-box{position:relative;width:min(560px,100%);background:#fff;border:1px solid #e4e9f7;border-radius:28px;padding:24px;box-shadow:0 30px 90px rgba(15,23,42,.26)}
#pfmi-one-app .pfmi-feedback-close{position:absolute;right:16px;top:14px;width:38px;height:38px;border:none;border-radius:14px;background:#f8fafc;color:#334155;font-size:24px;font-weight:900;cursor:pointer}
#pfmi-one-app .pfmi-feedback-box h2{margin:0 0 6px;color:#17204a;font-size:28px;font-weight:1000;letter-spacing:-.04em}
#pfmi-one-app .pfmi-feedback-box p{margin:0 0 16px;color:#667085;font-size:14px;font-weight:760;line-height:1.45}
#pfmi-one-app .pfmi-feedback-box label{display:block;margin:12px 0 6px;color:#334155;font-size:13px;font-weight:950}
#pfmi-one-app .pfmi-feedback-box select,#pfmi-one-app .pfmi-feedback-box textarea{width:100%;border:1.5px solid #dfe5f4;background:#f8fbff;color:#17204a;border-radius:16px;padding:13px 14px;font-size:15px;font-weight:760;outline:none}
#pfmi-one-app .pfmi-feedback-box textarea{resize:vertical;min-height:130px}
#pfmi-one-app .pfmi-feedback-box select:focus,#pfmi-one-app .pfmi-feedback-box textarea:focus{border-color:#7c5cff;box-shadow:0 0 0 4px rgba(124,92,255,.11);background:#fff}
#pfmi-one-app .pfmi-feedback-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;margin-top:16px}
#pfmi-one-app .pfmi-feedback-status{margin-top:12px;color:#166534;font-size:13px;font-weight:850;white-space:pre-wrap}
@media(max-width:760px){#pfmi-one-app .pfmi-feedback-box{border-radius:24px;padding:20px}#pfmi-one-app .pfmi-feedback-actions .pfmi-one-btn{width:100%}}


/* V2.16.8 — Feedback cloud */
#pfmi-one-app .pfmi-feedback-list{margin-top:14px}
#pfmi-one-app .pfmi-feedback-cloud-list{display:grid;gap:10px}
#pfmi-one-app .pfmi-feedback-cloud-item{background:#fff;border:1px solid #e4e9f7;border-radius:20px;padding:14px;box-shadow:0 12px 28px rgba(46,61,114,.06)}
#pfmi-one-app .pfmi-feedback-cloud-item>div:first-child{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:8px}
#pfmi-one-app .pfmi-feedback-cloud-item b{color:#17204a;font-size:13px;font-weight:1000;text-transform:capitalize}
#pfmi-one-app .pfmi-feedback-cloud-item span{color:#94a3b8;font-size:11px;font-weight:850}
#pfmi-one-app .pfmi-feedback-cloud-item p{margin:0;color:#475569;font-size:13px;font-weight:760;line-height:1.45;white-space:pre-wrap}
#pfmi-one-app .pfmi-feedback-cloud-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
#pfmi-one-app .pfmi-one-btn.tiny{min-height:34px;padding:7px 11px;font-size:11px;border-radius:999px}
@media(max-width:760px){#pfmi-one-app .pfmi-feedback-cloud-item>div:first-child{display:block}#pfmi-one-app .pfmi-feedback-cloud-actions .pfmi-one-btn{flex:1}}


/* V2.17.0 — Cockpit familial intelligent */
#pfmi-one-app .pfmi-cockpit{
  background:radial-gradient(circle at top left,rgba(91,89,246,.16),transparent 28%),radial-gradient(circle at top right,rgba(20,184,166,.14),transparent 24%),linear-gradient(135deg,#ffffff,#f8fbff 58%,#f5f3ff);
  border:1px solid #dde5f6;
  border-radius:34px;
  padding:22px;
  box-shadow:0 24px 62px rgba(46,61,114,.13);
  margin-bottom:18px;
  overflow:hidden;
  position:relative;
}
#pfmi-one-app .pfmi-cockpit:after{content:'';position:absolute;right:-28px;top:-28px;width:110px;height:110px;border-radius:32px;background:rgba(91,89,246,.08);transform:rotate(16deg)}
#pfmi-one-app .pfmi-cockpit-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:16px;position:relative;z-index:1}
#pfmi-one-app .pfmi-cockpit-kicker{display:inline-flex;align-items:center;gap:8px;background:#eef2ff;color:#4338ca;border:1px solid #d9dcff;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:1000;margin-bottom:10px}
#pfmi-one-app .pfmi-cockpit h2{margin:0;color:#17204a;font-size:clamp(25px,3vw,36px);line-height:1.02;font-weight:1000;letter-spacing:-.05em}
#pfmi-one-app .pfmi-cockpit p{margin:8px 0 0;color:#667085;font-size:14px;font-weight:780;line-height:1.45}
#pfmi-one-app .pfmi-cockpit-score{min-width:120px;border-radius:28px;padding:15px;text-align:center;color:#fff;background:linear-gradient(135deg,#5b59f6,#8b5cf6 58%,#14b8a6 130%);box-shadow:0 16px 34px rgba(91,89,246,.22)}
#pfmi-one-app .pfmi-cockpit-score strong{display:block;font-size:34px;line-height:1;font-weight:1000}
#pfmi-one-app .pfmi-cockpit-score span{display:block;margin-top:5px;font-size:12px;font-weight:900;opacity:.92}
#pfmi-one-app .pfmi-cockpit-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;position:relative;z-index:1}
#pfmi-one-app .pfmi-cockpit-action{display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:center;text-align:left;border:1px solid #e4e9f7;border-radius:22px;background:#fff;padding:13px;box-shadow:0 12px 28px rgba(46,61,114,.07);cursor:pointer}
#pfmi-one-app .pfmi-cockpit-action i{width:48px;height:48px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:#eef2ff;font-style:normal;font-size:22px}
#pfmi-one-app .pfmi-cockpit-action b{display:block;color:#17204a;font-size:14px;font-weight:1000}
#pfmi-one-app .pfmi-cockpit-action small{display:block;color:#667085;font-size:12px;font-weight:760;line-height:1.35;margin-top:3px}
#pfmi-one-app .pfmi-cockpit-action.warn{border-color:#fed7aa;background:#fff7ed}
#pfmi-one-app .pfmi-cockpit-action.danger{border-color:#fecdd3;background:#fff1f2}
#pfmi-one-app .pfmi-cockpit-action.ok{border-color:#bbf7d0;background:#f0fdf4}
#pfmi-one-app .pfmi-cockpit-modules{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:12px;position:relative;z-index:1}
#pfmi-one-app .pfmi-cockpit-module{display:grid;grid-template-columns:32px minmax(0,1fr);grid-template-rows:auto auto;gap:7px 8px;border:1px solid #edf1fb;background:rgba(255,255,255,.78);border-radius:18px;padding:10px;text-align:left;cursor:pointer}
#pfmi-one-app .pfmi-cockpit-module i{grid-row:1/3;width:32px;height:32px;border-radius:13px;background:#eef2ff;display:flex;align-items:center;justify-content:center;font-style:normal}
#pfmi-one-app .pfmi-cockpit-module b{display:block;color:#17204a;font-size:12px;font-weight:1000;line-height:1}
#pfmi-one-app .pfmi-cockpit-module small{display:block;color:#64748b;font-size:10px;font-weight:760;line-height:1.2}
#pfmi-one-app .pfmi-cockpit-module em{grid-column:2/3;justify-self:start;display:inline-flex;border-radius:999px;background:#eef2ff;color:#4338ca;padding:3px 7px;font-size:10px;font-style:normal;font-weight:1000}
#pfmi-one-app .pfmi-cockpit-action:hover,#pfmi-one-app .pfmi-cockpit-module:hover{transform:translateY(-1px);filter:saturate(1.04)}
#pfmi-one-app .pfmi-quick-modal[hidden]{display:none!important}
#pfmi-one-app .pfmi-quick-modal{position:fixed;inset:0;z-index:100001;display:flex;align-items:center;justify-content:center;padding:18px}
#pfmi-one-app .pfmi-quick-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.42);backdrop-filter:blur(10px)}
#pfmi-one-app .pfmi-quick-box{position:relative;width:min(620px,100%);background:#fff;border:1px solid #e4e9f7;border-radius:30px;padding:24px;box-shadow:0 30px 90px rgba(15,23,42,.26)}
#pfmi-one-app .pfmi-quick-close{position:absolute;right:16px;top:14px;width:38px;height:38px;border:none;border-radius:14px;background:#f8fafc;color:#334155;font-size:24px;font-weight:900;cursor:pointer}
#pfmi-one-app .pfmi-quick-box h2{margin:0 0 6px;color:#17204a;font-size:30px;font-weight:1000;letter-spacing:-.04em}
#pfmi-one-app .pfmi-quick-box p{margin:0 0 16px;color:#667085;font-size:14px;font-weight:760}
#pfmi-one-app .pfmi-quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#pfmi-one-app .pfmi-quick-grid button{min-height:52px;border:1px solid #e4e9f7;border-radius:18px;background:#f8fbff;color:#17204a;font-size:14px;font-weight:1000;text-align:left;padding:12px;cursor:pointer}
#pfmi-one-app .pfmi-quick-grid button:hover{background:#eef2ff;color:#4338ca}
@media(max-width:980px){#pfmi-one-app .pfmi-cockpit-modules{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){#pfmi-one-app .pfmi-cockpit{padding:16px;border-radius:28px}#pfmi-one-app .pfmi-cockpit-head{display:block}#pfmi-one-app .pfmi-cockpit-score{margin-top:14px;width:100%}#pfmi-one-app .pfmi-cockpit-actions{grid-template-columns:1fr}#pfmi-one-app .pfmi-cockpit-modules{grid-template-columns:repeat(2,minmax(0,1fr))}#pfmi-one-app .pfmi-quick-grid{grid-template-columns:1fr}}


/* V2.17.1 — Centre d’alertes familial */
#pfmi-one-app .pfmi-alert-button{position:relative}
#pfmi-one-app .pfmi-alert-button em{position:absolute;right:-5px;top:-6px;min-width:18px;height:18px;border-radius:999px;background:#ef4444;color:#fff;font-size:10px;font-style:normal;font-weight:1000;display:flex;align-items:center;justify-content:center;padding:0 5px;box-shadow:0 6px 12px rgba(239,68,68,.22)}
#pfmi-one-app .pfmi-alert-button.has-alerts{border-color:#fed7aa!important;background:#fff7ed!important;color:#c2410c!important}
#pfmi-one-app .pfmi-alerts-modal[hidden]{display:none!important}
#pfmi-one-app .pfmi-alerts-modal{position:fixed;inset:0;z-index:100002;display:flex;align-items:center;justify-content:center;padding:18px}
#pfmi-one-app .pfmi-alerts-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.42);backdrop-filter:blur(10px)}
#pfmi-one-app .pfmi-alerts-box{position:relative;width:min(720px,100%);max-height:min(86vh,820px);overflow:auto;background:#fff;border:1px solid #e4e9f7;border-radius:30px;padding:24px;box-shadow:0 30px 90px rgba(15,23,42,.26)}
#pfmi-one-app .pfmi-alerts-close{position:absolute;right:16px;top:14px;width:38px;height:38px;border:none;border-radius:14px;background:#f8fafc;color:#334155;font-size:24px;font-weight:900;cursor:pointer}
#pfmi-one-app .pfmi-alerts-box h2{margin:0 0 6px;color:#17204a;font-size:30px;font-weight:1000;letter-spacing:-.04em}
#pfmi-one-app .pfmi-alerts-box p{margin:0 0 16px;color:#667085;font-size:14px;font-weight:760;line-height:1.45}
#pfmi-one-app .pfmi-alerts-list{display:grid;gap:10px}
#pfmi-one-app .pfmi-alert-item{display:grid;grid-template-columns:50px minmax(0,1fr) auto;gap:12px;align-items:center;background:#fff;border:1px solid #e4e9f7;border-radius:22px;padding:13px;box-shadow:0 12px 28px rgba(46,61,114,.06)}
#pfmi-one-app .pfmi-alert-item i{width:50px;height:50px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:#eef2ff;font-size:22px;font-style:normal}
#pfmi-one-app .pfmi-alert-item b{display:block;color:#17204a;font-size:14px;font-weight:1000}
#pfmi-one-app .pfmi-alert-item span{display:block;color:#667085;font-size:12px;font-weight:760;line-height:1.35;margin-top:3px}
#pfmi-one-app .pfmi-alert-item.warn{background:#fff7ed;border-color:#fed7aa}
#pfmi-one-app .pfmi-alert-item.danger{background:#fff1f2;border-color:#fecdd3}
#pfmi-one-app .pfmi-alert-item.ok{background:#f0fdf4;border-color:#bbf7d0}
#pfmi-one-app .pfmi-alert-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:760px){#pfmi-one-app .pfmi-alerts-box{border-radius:24px;padding:20px}#pfmi-one-app .pfmi-alert-item{grid-template-columns:44px minmax(0,1fr)}#pfmi-one-app .pfmi-alert-item i{width:44px;height:44px}#pfmi-one-app .pfmi-alert-actions{grid-column:1 / -1;justify-content:stretch}#pfmi-one-app .pfmi-alert-actions .pfmi-one-btn{flex:1}}


/* V2.17.2 — Briefing familial du jour */
#pfmi-one-app .pfmi-briefing-modal[hidden]{display:none!important}
#pfmi-one-app .pfmi-briefing-modal{position:fixed;inset:0;z-index:100003;display:flex;align-items:center;justify-content:center;padding:18px}
#pfmi-one-app .pfmi-briefing-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.42);backdrop-filter:blur(10px)}
#pfmi-one-app .pfmi-briefing-box{position:relative;width:min(860px,100%);max-height:min(88vh,860px);overflow:auto;background:#fff;border:1px solid #e4e9f7;border-radius:30px;padding:24px;box-shadow:0 30px 90px rgba(15,23,42,.26)}
#pfmi-one-app .pfmi-briefing-close{position:absolute;right:16px;top:14px;width:38px;height:38px;border:none;border-radius:14px;background:#f8fafc;color:#334155;font-size:24px;font-weight:900;cursor:pointer}
#pfmi-one-app .pfmi-briefing-tabs{display:flex;gap:8px;margin-bottom:14px;padding-right:46px}
#pfmi-one-app .pfmi-briefing-tabs button{min-height:38px;border:1px solid #d9dcff;border-radius:999px;background:#fff;color:#4338ca;font-size:12px;font-weight:1000;padding:0 14px;cursor:pointer}
#pfmi-one-app .pfmi-briefing-hero{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;background:radial-gradient(circle at top left,rgba(91,89,246,.14),transparent 30%),linear-gradient(135deg,#f8fbff,#f5f3ff);border:1px solid #e4e9f7;border-radius:26px;padding:18px;margin-bottom:14px}
#pfmi-one-app .pfmi-briefing-hero span{display:inline-flex;border-radius:999px;background:#eef2ff;color:#4338ca;padding:7px 11px;font-size:12px;font-weight:1000;margin-bottom:8px}
#pfmi-one-app .pfmi-briefing-hero h2{margin:0;color:#17204a;font-size:clamp(24px,3vw,34px);font-weight:1000;letter-spacing:-.04em;line-height:1.05}
#pfmi-one-app .pfmi-briefing-hero p{margin:8px 0 0;color:#667085;font-size:13px;font-weight:760;line-height:1.45}
#pfmi-one-app .pfmi-brief-score{min-width:110px;border-radius:24px;background:linear-gradient(135deg,#5b59f6,#8b5cf6 58%,#14b8a6 130%);color:#fff;text-align:center;padding:13px;box-shadow:0 14px 28px rgba(91,89,246,.20)}
#pfmi-one-app .pfmi-brief-score strong{display:block;font-size:30px;font-weight:1000;line-height:1}
#pfmi-one-app .pfmi-brief-score small{display:block;margin-top:4px;font-size:11px;font-weight:900;color:#fff;opacity:.9}
#pfmi-one-app .pfmi-briefing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
#pfmi-one-app .pfmi-briefing-grid section{background:#fff;border:1px solid #e4e9f7;border-radius:22px;padding:15px;box-shadow:0 12px 28px rgba(46,61,114,.06)}
#pfmi-one-app .pfmi-briefing-grid h3{margin:0 0 9px;color:#17204a;font-size:15px;font-weight:1000}
#pfmi-one-app .pfmi-briefing-grid ul{margin:0;padding-left:19px;color:#475569;font-size:13px;font-weight:760;line-height:1.45}
#pfmi-one-app .pfmi-briefing-grid li{margin:5px 0}
#pfmi-one-app .pfmi-brief-empty{color:#94a3b8;font-size:13px;font-weight:760;line-height:1.4}
#pfmi-one-app .pfmi-briefing-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:16px}
#pfmi-one-app .pfmi-briefing-status{margin-top:12px;color:#166534;font-size:13px;font-weight:850;white-space:pre-wrap}
@media(max-width:760px){#pfmi-one-app .pfmi-briefing-box{border-radius:24px;padding:20px}#pfmi-one-app .pfmi-briefing-hero{display:block}#pfmi-one-app .pfmi-brief-score{width:100%;margin-top:12px}#pfmi-one-app .pfmi-briefing-grid{grid-template-columns:1fr}#pfmi-one-app .pfmi-briefing-actions .pfmi-one-btn{width:100%}}


/* V2.17.3 — Routines matin / soir */
#pfmi-one-app .pfmi-routine-button{position:relative}
#pfmi-one-app .pfmi-routine-button em{position:absolute;right:-5px;top:-6px;min-width:18px;height:18px;border-radius:999px;background:#f59e0b;color:#fff;font-size:10px;font-style:normal;font-weight:1000;display:flex;align-items:center;justify-content:center;padding:0 5px;box-shadow:0 6px 12px rgba(245,158,11,.22)}
#pfmi-one-app .pfmi-routine-button.has-routines{border-color:#fed7aa!important;background:#fff7ed!important;color:#c2410c!important}
#pfmi-one-app .pfmi-routines-modal[hidden]{display:none!important}
#pfmi-one-app .pfmi-routines-modal{position:fixed;inset:0;z-index:100004;display:flex;align-items:center;justify-content:center;padding:18px}
#pfmi-one-app .pfmi-routines-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.42);backdrop-filter:blur(10px)}
#pfmi-one-app .pfmi-routines-box{position:relative;width:min(760px,100%);max-height:min(88vh,860px);overflow:auto;background:#fff;border:1px solid #e4e9f7;border-radius:30px;padding:24px;box-shadow:0 30px 90px rgba(15,23,42,.26)}
#pfmi-one-app .pfmi-routines-close{position:absolute;right:16px;top:14px;width:38px;height:38px;border:none;border-radius:14px;background:#f8fafc;color:#334155;font-size:24px;font-weight:900;cursor:pointer}
#pfmi-one-app .pfmi-routine-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px;padding-right:46px}
#pfmi-one-app .pfmi-routine-tabs button{min-height:38px;border:1px solid #d9dcff;border-radius:999px;background:#fff;color:#4338ca;font-size:12px;font-weight:1000;padding:0 14px;cursor:pointer}
#pfmi-one-app .pfmi-routine-hero{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;background:radial-gradient(circle at top left,rgba(251,191,36,.16),transparent 30%),linear-gradient(135deg,#fff7ed,#f8fbff);border:1px solid #fed7aa;border-radius:26px;padding:18px;margin-bottom:14px}
#pfmi-one-app .pfmi-routine-hero span{display:inline-flex;border-radius:999px;background:#fff7ed;color:#c2410c;padding:7px 11px;font-size:12px;font-weight:1000;margin-bottom:8px;border:1px solid #fed7aa}
#pfmi-one-app .pfmi-routine-hero h2{margin:0;color:#17204a;font-size:clamp(24px,3vw,34px);font-weight:1000;letter-spacing:-.04em;line-height:1.05}
#pfmi-one-app .pfmi-routine-hero p{margin:8px 0 0;color:#667085;font-size:13px;font-weight:760;line-height:1.45}
#pfmi-one-app .pfmi-routine-score{min-width:108px;border-radius:24px;background:linear-gradient(135deg,#f59e0b,#f97316 58%,#8b5cf6 130%);color:#fff;text-align:center;padding:13px;box-shadow:0 14px 28px rgba(245,158,11,.20)}
#pfmi-one-app .pfmi-routine-score strong{display:block;font-size:30px;font-weight:1000;line-height:1}
#pfmi-one-app .pfmi-routine-score small{display:block;margin-top:4px;font-size:11px;font-weight:900;color:#fff;opacity:.9}
#pfmi-one-app .pfmi-routine-list{display:grid;gap:10px}
#pfmi-one-app .pfmi-routine-item{display:grid;grid-template-columns:24px 48px minmax(0,1fr);gap:12px;align-items:center;background:#fff;border:1px solid #e4e9f7;border-radius:22px;padding:12px;box-shadow:0 12px 28px rgba(46,61,114,.06);cursor:pointer}
#pfmi-one-app .pfmi-routine-item.done{background:#f0fdf4;border-color:#bbf7d0}
#pfmi-one-app .pfmi-routine-item input{width:20px;height:20px;accent-color:#16a34a}
#pfmi-one-app .pfmi-routine-item i{width:48px;height:48px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:#eef2ff;font-size:22px;font-style:normal}
#pfmi-one-app .pfmi-routine-item span{color:#17204a;font-size:14px;font-weight:1000}
#pfmi-one-app .pfmi-routine-add{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-top:14px}
#pfmi-one-app .pfmi-routine-add input{width:100%;border:1.5px solid #dfe5f4;background:#f8fbff;color:#17204a;border-radius:16px;padding:12px 14px;font-size:14px;font-weight:760;outline:none}
#pfmi-one-app .pfmi-routine-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:16px}
#pfmi-one-app .pfmi-routine-status{margin-top:12px;color:#166534;font-size:13px;font-weight:850;white-space:pre-wrap}
@media(max-width:760px){#pfmi-one-app .pfmi-routines-box{border-radius:24px;padding:20px}#pfmi-one-app .pfmi-routine-hero{display:block}#pfmi-one-app .pfmi-routine-score{width:100%;margin-top:12px}#pfmi-one-app .pfmi-routine-add{grid-template-columns:1fr}#pfmi-one-app .pfmi-routine-actions .pfmi-one-btn{width:100%}}


/* V2.18.7 — Accueil simplifié */
.pfmi-simple-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) 170px;
  gap:18px;
  align-items:stretch;
  padding:22px;
  border-radius:26px;
  border:1px solid #dfe6ff;
  background:
    radial-gradient(circle at 92% 10%,rgba(139,92,246,.18),transparent 32%),
    linear-gradient(135deg,#ffffff,#f7f9ff);
  box-shadow:0 18px 44px rgba(55,48,163,.10);
  margin-bottom:14px;
}
.pfmi-simple-hero.ok{border-color:#bbf7d0}
.pfmi-simple-hero.warn{border-color:#fed7aa}
.pfmi-simple-hero.danger{border-color:#fecaca}
.pfmi-simple-kicker{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:7px 11px;
  border-radius:999px;
  background:#eef2ff;
  color:#4f46e5;
  font-size:11px;
  font-weight:950;
  margin-bottom:10px;
}
.pfmi-simple-hero h1{
  margin:0 0 8px;
  color:#17144f;
  font-size:clamp(1.65rem,3.2vw,2.5rem);
  line-height:1.02;
  letter-spacing:-.04em;
  font-weight:1000;
}
.pfmi-simple-hero p{
  margin:0;
  color:#64748b;
  font-weight:780;
  line-height:1.5;
  max-width:760px;
}
.pfmi-simple-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:16px;
}
.pfmi-simple-score{
  border-radius:24px;
  background:linear-gradient(135deg,#5b59f6,#8b5cf6 65%,#14b8a6 130%);
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  min-height:150px;
  box-shadow:0 14px 34px rgba(79,70,229,.18);
}
.pfmi-simple-score strong{
  font-size:3rem;
  line-height:1;
  font-weight:1000;
  letter-spacing:-.05em;
}
.pfmi-simple-score span{
  margin-top:8px;
  font-size:.82rem;
  font-weight:950;
  opacity:.92;
}
.pfmi-simple-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-bottom:14px;
}
.pfmi-simple-stat{
  border:1px solid #e5e9ff;
  background:#fff;
  border-radius:20px;
  padding:14px;
  text-align:left;
  cursor:pointer;
  box-shadow:0 10px 26px rgba(55,48,163,.06);
  transition:.16s;
}
.pfmi-simple-stat:hover,
.pfmi-simple-module:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 32px rgba(55,48,163,.12);
}
.pfmi-simple-stat span{
  display:block;
  color:#64748b;
  font-size:.72rem;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.055em;
}
.pfmi-simple-stat strong{
  display:block;
  margin:6px 0 3px;
  color:#17144f;
  font-size:1.8rem;
  line-height:1;
  font-weight:1000;
}
.pfmi-simple-stat small{
  color:#64748b;
  font-size:.78rem;
  font-weight:850;
}
.pfmi-simple-stat.ok strong{color:#16a34a}
.pfmi-simple-stat.warn strong{color:#f59e0b}
.pfmi-simple-stat.danger strong{color:#ef4444}
.pfmi-simple-grid-main{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.pfmi-simple-card{
  position:relative;
  padding:18px;
  border-radius:24px;
  background:rgba(255,255,255,.96);
  border:1px solid #e5e9ff;
  box-shadow:0 14px 34px rgba(55,48,163,.07);
}
.pfmi-simple-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  margin-bottom:8px;
}
.pfmi-simple-card h2{
  margin:0;
  color:#17144f;
  font-size:1.2rem;
  font-weight:1000;
  letter-spacing:-.02em;
}
.pfmi-simple-card p{
  margin:0 0 12px;
  color:#64748b;
  font-size:.9rem;
  font-weight:760;
  line-height:1.45;
}
.pfmi-simple-day{
  background:
    radial-gradient(circle at 90% 0%,rgba(99,102,241,.10),transparent 28%),
    #fff;
}
.pfmi-simple-lines{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:7px;
}
.pfmi-simple-lines li{
  border:1px solid #edf1ff;
  background:#fbfcff;
  border-radius:14px;
  padding:9px 10px;
  color:#26304f;
  font-size:.86rem;
  font-weight:850;
  line-height:1.35;
}
.pfmi-simple-empty{
  border:1px dashed #dfe6ff;
  background:#fbfcff;
  color:#94a3b8;
  border-radius:16px;
  padding:16px;
  font-weight:850;
  font-size:.88rem;
}
.pfmi-simple-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:12px;
}
.pfmi-simple-modules{
  margin-top:16px;
  padding:18px;
  border-radius:26px;
  border:1px solid #e5e9ff;
  background:linear-gradient(135deg,#fff,#f8fbff);
  box-shadow:0 14px 34px rgba(55,48,163,.07);
}
.pfmi-simple-section-title{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  margin-bottom:13px;
}
.pfmi-simple-section-title h2{
  margin:0;
  color:#17144f;
  font-size:1.25rem;
  font-weight:1000;
}
.pfmi-simple-section-title p{
  margin:0;
  color:#64748b;
  font-size:.86rem;
  font-weight:800;
}
.pfmi-simple-module-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.pfmi-simple-module{
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  text-align:left;
  border:1px solid #e5e9ff;
  background:#fff;
  border-radius:20px;
  padding:12px;
  cursor:pointer;
  transition:.16s;
}
.pfmi-simple-module i{
  width:42px;
  height:42px;
  border-radius:15px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#eef2ff;
  font-style:normal;
  font-size:1.25rem;
}
.pfmi-simple-module b{
  display:block;
  color:#17144f;
  font-weight:1000;
  font-size:.92rem;
}
.pfmi-simple-module small{
  display:block;
  color:#64748b;
  font-size:.74rem;
  font-weight:800;
  line-height:1.25;
  margin-top:2px;
}
.pfmi-simple-module em{
  border-radius:999px;
  padding:6px 8px;
  background:#f1f5f9;
  color:#334155;
  font-size:.68rem;
  font-weight:1000;
  font-style:normal;
  white-space:nowrap;
}
.pfmi-simple-module.ok em{background:#dcfce7;color:#15803d}
.pfmi-simple-module.warn em{background:#fef3c7;color:#b45309}
.pfmi-simple-module.danger em{background:#fee2e2;color:#b91c1c}
.pfmi-one-btn.tiny{
  min-height:30px;
  padding:6px 10px;
  font-size:.72rem;
  border-radius:12px;
}
@media(max-width:980px){
  .pfmi-simple-hero{grid-template-columns:1fr}
  .pfmi-simple-score{min-height:110px}
  .pfmi-simple-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pfmi-simple-grid-main{grid-template-columns:1fr}
  .pfmi-simple-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
  .pfmi-simple-hero{padding:16px;border-radius:22px}
  .pfmi-simple-stats{grid-template-columns:1fr}
  .pfmi-simple-module-grid{grid-template-columns:1fr}
  .pfmi-simple-section-title{display:block}
  .pfmi-simple-section-title p{margin-top:4px}
}


/* V2.18.9 — Foyer partagé robuste */
.pfmi-family-health{
  display:grid;
  grid-template-columns:170px minmax(0,1fr);
  gap:12px;
  align-items:stretch;
  border:1px solid #dfe6ff;
  border-radius:22px;
  padding:12px;
  margin:14px 0;
  background:linear-gradient(135deg,#fff,#f8fbff);
  box-shadow:0 12px 30px rgba(55,48,163,.07);
}
.pfmi-family-health.ok{border-color:#bbf7d0;background:linear-gradient(135deg,#f0fdf4,#fff)}
.pfmi-family-health.warn{border-color:#fed7aa;background:linear-gradient(135deg,#fff7ed,#fff)}
.pfmi-family-health.danger{border-color:#fecdd3;background:linear-gradient(135deg,#fff1f2,#fff)}
.pfmi-family-health>div{
  border-radius:18px;
  padding:12px;
  color:#fff;
  background:linear-gradient(135deg,#5b59f6,#8b5cf6 65%,#14b8a6 130%);
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.pfmi-family-health span,
.pfmi-family-health small{
  color:#fff;
  opacity:.92;
  font-size:11px;
  font-weight:900;
}
.pfmi-family-health strong{
  display:block;
  color:#fff;
  font-size:30px;
  line-height:1;
  margin:4px 0;
  font-weight:1000;
}
.pfmi-family-health ul{
  margin:0;
  padding-left:18px;
  align-self:center;
  color:#334155;
  font-size:12px;
  font-weight:820;
  line-height:1.45;
}
.pfmi-family-role-matrix{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin:14px 0;
}
.pfmi-family-role-matrix>div{
  border:1px solid #e5e9ff;
  border-radius:18px;
  background:#fff;
  padding:12px;
  box-shadow:0 10px 24px rgba(55,48,163,.045);
}
.pfmi-family-role-matrix b{
  display:block;
  color:#17144f;
  font-size:13px;
  font-weight:1000;
}
.pfmi-family-role-matrix span{
  display:block;
  margin-top:4px;
  color:#64748b;
  font-size:11px;
  font-weight:780;
  line-height:1.35;
}
.pfmi-family-timeline{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin:12px 0;
}
.pfmi-family-timeline>div{
  border:1px solid #edf1ff;
  background:#fbfcff;
  border-radius:16px;
  padding:10px;
}
.pfmi-family-timeline b{
  display:block;
  color:#475569;
  font-size:11px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.pfmi-family-timeline span{
  display:block;
  margin-top:4px;
  color:#17144f;
  font-size:12px;
  font-weight:900;
}
.pfmi-family-member-actions{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
@media(max-width:760px){
  .pfmi-family-health,
  .pfmi-family-role-matrix,
  .pfmi-family-timeline{
    grid-template-columns:1fr;
  }
}


/* V2.19.0 — Sync multi-support propre */
.pfmi-sync-card{
  border:1px solid #dfe6ff;
  border-radius:26px;
  background:linear-gradient(135deg,#ffffff,#f8fbff);
  box-shadow:0 16px 38px rgba(55,48,163,.08);
  padding:16px;
  margin:0 0 14px;
}
.pfmi-sync-card.ok{border-color:#bbf7d0;background:linear-gradient(135deg,#f0fdf4,#ffffff)}
.pfmi-sync-card.warn{border-color:#fed7aa;background:linear-gradient(135deg,#fff7ed,#ffffff)}
.pfmi-sync-card.danger{border-color:#fecdd3;background:linear-gradient(135deg,#fff1f2,#ffffff)}
.pfmi-sync-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) 120px;
  gap:14px;
  align-items:center;
}
.pfmi-sync-kicker{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 10px;
  border-radius:999px;
  background:#eef2ff;
  color:#4f46e5;
  font-size:11px;
  font-weight:950;
  margin-bottom:8px;
}
.pfmi-sync-head h2{
  margin:0 0 6px;
  color:#17144f;
  font-size:1.35rem;
  line-height:1.05;
  font-weight:1000;
  letter-spacing:-.03em;
}
.pfmi-sync-head p{
  margin:0;
  color:#64748b;
  font-size:.88rem;
  line-height:1.4;
  font-weight:780;
}
.pfmi-sync-score{
  border-radius:22px;
  background:linear-gradient(135deg,#5b59f6,#8b5cf6 65%,#14b8a6 130%);
  color:#fff;
  min-height:94px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
}
.pfmi-sync-score strong{
  color:#fff;
  font-size:2rem;
  line-height:1;
  font-weight:1000;
}
.pfmi-sync-score span{
  color:#fff;
  opacity:.9;
  margin-top:5px;
  font-size:.72rem;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.pfmi-sync-meta{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin:12px 0;
}
.pfmi-sync-meta>div{
  background:#fff;
  border:1px solid #edf1ff;
  border-radius:15px;
  padding:10px;
  min-width:0;
}
.pfmi-sync-meta b{
  display:block;
  color:#64748b;
  font-size:10px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.pfmi-sync-meta span,
.pfmi-sync-meta code{
  display:block;
  margin-top:4px;
  color:#17144f;
  font-size:11px;
  font-weight:900;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.pfmi-sync-modules{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:8px;
  margin-bottom:10px;
}
.pfmi-sync-module{
  background:#fff;
  border:1px solid #edf1ff;
  border-radius:16px;
  padding:10px;
  text-align:center;
}
.pfmi-sync-module.ok{border-color:#bbf7d0}
.pfmi-sync-module.empty{border-style:dashed}
.pfmi-sync-module b{
  display:block;
  color:#17144f;
  font-size:20px;
  line-height:1;
  font-weight:1000;
}
.pfmi-sync-module span{
  display:block;
  margin-top:4px;
  color:#334155;
  font-size:11px;
  font-weight:950;
}
.pfmi-sync-module small{
  display:block;
  color:#94a3b8;
  font-size:9px;
  font-weight:800;
  margin-top:2px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.pfmi-sync-local{
  display:grid;
  grid-template-columns:70px minmax(0,1fr);
  gap:10px;
  align-items:center;
  border-radius:16px;
  padding:10px;
  background:#fff;
  border:1px solid #edf1ff;
  margin-bottom:10px;
}
.pfmi-sync-local.warn{border-color:#fed7aa;background:#fff7ed}
.pfmi-sync-local.ok{border-color:#bbf7d0;background:#f0fdf4}
.pfmi-sync-local b{
  color:#17144f;
  font-size:18px;
  font-weight:1000;
  text-align:center;
}
.pfmi-sync-local span{
  display:block;
  color:#334155;
  font-size:12px;
  font-weight:950;
}
.pfmi-sync-local small{
  display:block;
  color:#64748b;
  font-size:10px;
  font-weight:760;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.pfmi-sync-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin:10px 0;
}
.pfmi-sync-tips{
  margin:8px 0 0;
  padding-left:18px;
  color:#64748b;
  font-size:12px;
  font-weight:780;
  line-height:1.4;
}
.pfmi-sync-loading{
  border-radius:18px;
  padding:16px;
  background:#fff;
  border:1px dashed #c7d2fe;
  color:#4f46e5;
  font-weight:950;
}
.pfmi-sync-loading.bad{
  color:#b91c1c;
  border-color:#fecdd3;
  background:#fff1f2;
}
.pfmi-sync-loading span{display:block;margin-top:4px;color:#64748b;font-size:12px}
@media(max-width:980px){
  .pfmi-sync-head{grid-template-columns:1fr}
  .pfmi-sync-score{min-height:80px}
  .pfmi-sync-meta{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pfmi-sync-modules{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:640px){
  .pfmi-sync-meta,.pfmi-sync-modules,.pfmi-sync-local{grid-template-columns:1fr}
  .pfmi-sync-local b{text-align:left}
}


/* V2.19.2 — Testeur multi-support intégré */
.pfmi-sync-probe{
  display:grid;
  grid-template-columns:170px minmax(0,1fr);
  gap:10px;
  align-items:stretch;
  border:1px solid #dfe6ff;
  background:#fff;
  border-radius:20px;
  padding:10px;
  margin:10px 0;
}
.pfmi-sync-probe.ok{border-color:#bbf7d0;background:linear-gradient(135deg,#f0fdf4,#fff)}
.pfmi-sync-probe.empty{border-style:dashed;background:#fbfcff}
.pfmi-sync-probe-main{
  border-radius:16px;
  background:linear-gradient(135deg,#17144f,#5b59f6);
  color:#fff;
  padding:12px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
}
.pfmi-sync-probe-main span,
.pfmi-sync-probe-main small{
  color:#fff;
  opacity:.9;
  font-size:11px;
  font-weight:950;
}
.pfmi-sync-probe-main strong{
  display:block;
  color:#fff;
  font-size:26px;
  line-height:1;
  font-weight:1000;
  letter-spacing:.08em;
  margin:5px 0;
}
.pfmi-sync-probe-details{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
.pfmi-sync-probe-details>div{
  background:#fff;
  border:1px solid #edf1ff;
  border-radius:14px;
  padding:10px;
  min-width:0;
}
.pfmi-sync-probe-details b{
  display:block;
  color:#64748b;
  font-size:10px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.pfmi-sync-probe-details span{
  display:block;
  margin-top:4px;
  color:#17144f;
  font-size:12px;
  font-weight:900;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.pfmi-sync-probe-how{
  border:1px solid #e5e9ff;
  background:#f8fbff;
  border-radius:18px;
  padding:12px;
  margin:10px 0;
  color:#334155;
}
.pfmi-sync-probe-how b{
  display:block;
  color:#17144f;
  font-size:13px;
  font-weight:1000;
  margin-bottom:6px;
}
.pfmi-sync-probe-how ol{
  margin:0;
  padding-left:20px;
  font-size:12px;
  line-height:1.45;
  font-weight:800;
}
.pfmi-sync-inline-loading{
  border-radius:14px;
  background:#eef2ff;
  color:#4338ca;
  padding:8px 10px;
  font-size:12px;
  font-weight:950;
  margin-bottom:8px;
}
@media(max-width:760px){
  .pfmi-sync-probe,
  .pfmi-sync-probe-details{
    grid-template-columns:1fr;
  }
}


/* V2.19.5 — Notifications / rappels intelligents */
#pfmi-one-app .pfmi-reminder-card{
  border:1px solid #dfe6ff;
  border-radius:26px;
  background:linear-gradient(135deg,#ffffff,#f8fbff);
  box-shadow:0 16px 38px rgba(55,48,163,.08);
  padding:16px;
  margin:0 0 14px;
}
#pfmi-one-app .pfmi-reminder-card.warn{border-color:#fed7aa;background:linear-gradient(135deg,#fff7ed,#ffffff)}
#pfmi-one-app .pfmi-reminder-card.ok{border-color:#bbf7d0;background:linear-gradient(135deg,#f0fdf4,#ffffff)}
#pfmi-one-app .pfmi-reminder-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) 110px;
  gap:14px;
  align-items:center;
}
#pfmi-one-app .pfmi-reminder-kicker{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 10px;
  border-radius:999px;
  background:#eef2ff;
  color:#4f46e5;
  font-size:11px;
  font-weight:950;
  margin-bottom:8px;
}
#pfmi-one-app .pfmi-reminder-head h2{
  margin:0 0 6px;
  color:#17144f;
  font-size:1.35rem;
  line-height:1.05;
  font-weight:1000;
  letter-spacing:-.03em;
}
#pfmi-one-app .pfmi-reminder-head p{
  margin:0;
  color:#64748b;
  font-size:.88rem;
  line-height:1.4;
  font-weight:780;
}
#pfmi-one-app .pfmi-reminder-score{
  border-radius:22px;
  background:linear-gradient(135deg,#5b59f6,#8b5cf6 65%,#14b8a6 130%);
  color:#fff;
  min-height:88px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
}
#pfmi-one-app .pfmi-reminder-score strong{
  color:#fff;
  font-size:2rem;
  line-height:1;
  font-weight:1000;
}
#pfmi-one-app .pfmi-reminder-score span{
  color:#fff;
  opacity:.9;
  margin-top:5px;
  font-size:.72rem;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.05em;
}
#pfmi-one-app .pfmi-reminder-list{
  display:grid;
  gap:8px;
  margin:12px 0;
}
#pfmi-one-app .pfmi-reminder-line{
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  text-align:left;
  border:1px solid #e5e9ff;
  background:#fff;
  border-radius:18px;
  padding:11px;
  cursor:pointer;
  transition:.16s;
}
#pfmi-one-app .pfmi-reminder-line:hover{
  transform:translateY(-1px);
  box-shadow:0 12px 26px rgba(55,48,163,.10);
}
#pfmi-one-app .pfmi-reminder-line.danger{border-left:5px solid #ef4444}
#pfmi-one-app .pfmi-reminder-line.warn{border-left:5px solid #f59e0b}
#pfmi-one-app .pfmi-reminder-line.normal{border-left:5px solid #6366f1}
#pfmi-one-app .pfmi-reminder-line i{
  width:42px;
  height:42px;
  border-radius:15px;
  background:#eef2ff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-style:normal;
  font-size:1.25rem;
}
#pfmi-one-app .pfmi-reminder-line b{
  display:block;
  color:#17144f;
  font-size:.92rem;
  font-weight:1000;
}
#pfmi-one-app .pfmi-reminder-line small{
  display:block;
  color:#64748b;
  font-size:.76rem;
  font-weight:780;
  line-height:1.32;
  margin-top:2px;
}
#pfmi-one-app .pfmi-reminder-line em{
  border-radius:999px;
  padding:6px 8px;
  background:#f1f5f9;
  color:#334155;
  font-size:.68rem;
  font-weight:1000;
  font-style:normal;
  white-space:nowrap;
}
#pfmi-one-app .pfmi-reminder-empty{
  border:1px dashed #bbf7d0;
  background:#f0fdf4;
  color:#166534;
  border-radius:18px;
  padding:14px;
  font-weight:850;
  font-size:.88rem;
}
#pfmi-one-app .pfmi-reminder-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:center;
}
#pfmi-one-app .pfmi-reminder-perm{
  color:#64748b;
  font-size:.75rem;
  font-weight:850;
}
#pfmi-one-app .pfmi-alert-item.reminder{
  background:#fbfcff;
}
#pfmi-one-app .pfmi-alert-item.reminder.danger{border-left:5px solid #ef4444}
#pfmi-one-app .pfmi-alert-item.reminder.warn{border-left:5px solid #f59e0b}
#pfmi-one-app .pfmi-alert-item.reminder.normal{border-left:5px solid #6366f1}
#pfmi-one-app .pfmi-alert-section-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  margin:14px 0 8px;
  padding-bottom:7px;
  border-bottom:1px solid #e5e9ff;
}
#pfmi-one-app .pfmi-alert-section-head b{
  color:#17144f;
  font-size:.9rem;
  font-weight:1000;
}
#pfmi-one-app .pfmi-alert-section-head span{
  color:#64748b;
  font-size:.75rem;
  font-weight:900;
}
#pfmi-one-app .pfmi-alert-settings{
  margin-top:14px;
  padding:12px;
  border-radius:18px;
  background:#f8fbff;
  border:1px solid #dfe6ff;
}
#pfmi-one-app .pfmi-alert-settings p{
  margin:8px 0 0;
  color:#64748b;
  font-size:.78rem;
  font-weight:760;
  line-height:1.4;
}
#pfmi-one-app .pfmi-alert-empty{
  border:1px dashed #dfe6ff;
  background:#fbfcff;
  color:#64748b;
  border-radius:18px;
  padding:14px;
  font-size:.84rem;
  font-weight:820;
}
@media(max-width:760px){
  #pfmi-one-app .pfmi-reminder-head,
  #pfmi-one-app .pfmi-reminder-line{
    grid-template-columns:1fr;
  }
  #pfmi-one-app .pfmi-reminder-line i{
    width:100%;
    height:34px;
  }
}
