:root{--wfms-green:#006b35;--wfms-green2:#00a651;--wfms-bg:#f4f7f5;--wfms-card:#fff;--wfms-text:#1f2937;--wfms-muted:#6b7280;--wfms-border:#e6ece8}body .wfms-app{display:grid;grid-template-columns:280px 1fr;gap:28px;max-width:1280px;margin:0 auto;padding:28px;background:var(--wfms-bg);font-family:Inter,Arial,sans-serif;color:var(--wfms-text)}.wfms-sidebar{background:linear-gradient(180deg,#006b35,#004923);border-radius:22px;padding:24px;min-height:760px;color:#fff;position:sticky;top:20px}.wfms-logo{margin-bottom:28px;text-align:center}.wfms-logo img{max-width:160px;max-height:120px;object-fit:contain;background:#fff;border-radius:18px;padding:12px}.wfms-logo-fallback{width:64px;height:64px;background:#fff;color:var(--wfms-green);display:flex;align-items:center;justify-content:center;border-radius:16px;font-weight:800}.wfms-sidebar nav a{display:block;color:#fff;text-decoration:none;padding:14px 18px;margin:8px 0;border-radius:14px;font-weight:700;opacity:.94}.wfms-sidebar nav a:hover,.wfms-sidebar nav a.active{background:rgba(255,255,255,.15)}.wfms-logout{margin-top:26px;background:rgba(255,255,255,.13)}.wfms-main{min-width:0}.wfms-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.wfms-user{display:flex;gap:16px;align-items:center;font-weight:700}.wfms-user small{display:block;color:var(--wfms-muted)}.wfms-bell{position:relative}.wfms-bell b{position:absolute;top:-10px;right:-10px;background:#e3342f;color:#fff;border-radius:20px;font-size:11px;padding:2px 5px}.wfms-section{display:none}.wfms-section.active{display:block}.wfms-hero{display:grid;grid-template-columns:100px 1fr 180px;gap:22px;align-items:center;background:linear-gradient(135deg,#00883f,#004923);color:#fff;border-radius:22px;padding:28px;margin-bottom:22px;box-shadow:0 12px 35px rgba(0,0,0,.15)}.wfms-hero span{letter-spacing:3px;font-size:13px;opacity:.85}.wfms-hero h1{margin:6px 0;font-size:30px;color:#fff}.wfms-id{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);border-radius:18px;padding:22px}.wfms-id small{display:block;opacity:.75}.wfms-id strong{font-size:24px}.wfms-avatar{width:90px;height:90px;border-radius:50%;overflow:hidden;background:#eef5ef;display:flex;align-items:center;justify-content:center;border:5px solid rgba(255,255,255,.85)}.wfms-avatar.large{width:130px;height:130px}.wfms-avatar img{width:100%;height:100%;object-fit:cover}.wfms-avatar-icon{font-size:45px}.wfms-grid{display:grid;gap:16px}.wfms-grid-4{grid-template-columns:repeat(4,1fr)}.wfms-card{background:var(--wfms-card);border:1px solid var(--wfms-border);border-radius:20px;padding:26px;margin-bottom:18px;box-shadow:0 8px 28px rgba(0,0,0,.05)}.wfms-card h2{margin-top:0;color:#263238}.wfms-card.mini small{display:block;text-transform:uppercase;color:var(--wfms-muted);font-weight:800;letter-spacing:.5px}.wfms-card.mini strong{display:block;margin-top:10px;font-size:22px;color:#174f2f}.wfms-info{margin-top:18px}.wfms-title-row{display:flex;justify-content:space-between;align-items:center}.wfms-title-row select,.wfms-request-form select,.wfms-request-form input,.wfms-request-form textarea{width:100%;border:1px solid #dde6df;border-radius:12px;padding:13px;background:#fff}.wfms-request-form label{display:block;margin-top:16px;font-weight:800}.wfms-request-form textarea{min-height:120px}.wfms-contrib-layout{display:grid;grid-template-columns:1.5fr .9fr;gap:20px}.wfms-months{display:grid;grid-template-columns:1fr 1fr;gap:10px}.wfms-month{border:1px solid var(--wfms-border);border-radius:14px;padding:14px;background:#fbfdfb}.wfms-month b{display:block}.wfms-month span{font-size:13px}.wfms-month.paid{background:#e8f7ed;color:#006b35}.wfms-month.unpaid{background:#fff1f1;color:#b42318}.wfms-month.future{background:#f3f4f6;color:#6b7280}.wfms-summary{background:#eaf7ee;border-radius:18px;padding:24px;text-align:center;color:#0b6034}.wfms-summary small{display:block;margin-top:14px;font-weight:900}.wfms-summary strong{font-size:32px;display:block;margin:6px 0}.wfms-bar{height:12px;border-radius:20px;background:#cdebd5;overflow:hidden}.wfms-bar i{display:block;background:#0a9346;height:100%}.wfms-btn{display:inline-block;background:var(--wfms-green);color:#fff!important;border:none;border-radius:14px;padding:13px 22px;text-decoration:none;font-weight:800;cursor:pointer}.wfms-btn.outline{background:#fff;color:var(--wfms-green)!important;border:1px solid var(--wfms-green)}.wfms-btn.small{padding:9px 14px;font-size:13px;margin-top:8px}.wfms-tabs{display:flex;gap:12px;margin:18px 0}.wfms-tab{border:1px solid var(--wfms-border);background:#fff;border-radius:14px;padding:13px 20px;font-weight:800;cursor:pointer}.wfms-tab.active{background:var(--wfms-green);color:#fff}.wfms-profile-head{display:flex;gap:24px;align-items:center;margin-bottom:20px}.wfms-list p{border-bottom:1px solid var(--wfms-border);padding:10px 0}.wfms-docs{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.wfms-docs div{border:1px solid var(--wfms-border);border-radius:16px;padding:18px}.wfms-docs button{margin-top:14px;border:0;background:#e6f5ea;color:var(--wfms-green);border-radius:10px;padding:10px 14px}.wfms-notice{background:#eef8f1;border-left:5px solid var(--wfms-green);padding:16px;border-radius:12px;margin:12px 0}.wfms-entry{max-width:760px;margin:40px auto;padding:34px;background:#fff;border:1px solid var(--wfms-border);border-radius:22px;text-align:center}@media(max-width:900px){body .wfms-app{grid-template-columns:1fr;padding:14px}.wfms-sidebar{position:relative;min-height:auto}.wfms-hero{grid-template-columns:1fr;text-align:center}.wfms-grid-4,.wfms-contrib-layout,.wfms-docs{grid-template-columns:1fr}.wfms-months{grid-template-columns:1fr}}

/* WFMS 2.5 - Premium mobile layout */
@media(max-width:900px){
  body .wfms-app{
    display:block;
    max-width:100%;
    padding:10px 12px 24px;
    background:#f5f8f6;
  }
  .wfms-sidebar{
    position:relative;
    top:auto;
    min-height:0;
    border-radius:22px;
    padding:14px;
    margin:0 0 12px;
    background:linear-gradient(180deg,#0b6b38,#064923);
  }
  .wfms-logo{
    margin:0 0 10px;
    display:flex;
    justify-content:center;
  }
  .wfms-logo img{
    max-width:118px;
    max-height:58px;
    padding:7px 12px;
    border-radius:16px;
    background:#fff;
  }
  .wfms-logo-fallback{
    width:54px;
    height:54px;
    border-radius:14px;
    font-size:15px;
  }
  .wfms-sidebar nav{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }
  .wfms-sidebar nav a{
    margin:0;
    padding:11px 8px;
    border-radius:13px;
    text-align:center;
    font-size:13.5px;
    line-height:1.15;
    font-weight:800;
    background:rgba(255,255,255,.08);
  }
  .wfms-sidebar nav a.active{
    background:rgba(255,255,255,.22);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);
  }
  .wfms-sidebar nav .wfms-logout{
    grid-column:1 / -1;
    margin-top:2px;
    background:rgba(255,255,255,.16);
  }
  .wfms-main{
    width:100%;
  }
  .wfms-top{
    margin:0 0 10px;
    padding:0 2px;
  }
  .wfms-user{
    gap:10px;
    font-size:13px;
    justify-content:flex-end;
    width:100%;
  }
  .wfms-user small{font-size:11px;}
  .wfms-hero{
    grid-template-columns:58px 1fr;
    gap:12px;
    text-align:left;
    padding:18px;
    border-radius:20px;
    margin-bottom:12px;
  }
  .wfms-hero .wfms-id{
    grid-column:1 / -1;
    padding:12px 14px;
    border-radius:14px;
  }
  .wfms-hero h1{
    font-size:20px;
    line-height:1.2;
  }
  .wfms-hero span{
    font-size:10px;
    letter-spacing:2px;
  }
  .wfms-hero p{
    margin:4px 0 0;
    font-size:13px;
  }
  .wfms-avatar{
    width:56px;
    height:56px;
    border-width:3px;
  }
  .wfms-avatar-icon{font-size:26px;}
  .wfms-grid{gap:10px;}
  .wfms-grid-4{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .wfms-card{
    padding:16px;
    border-radius:18px;
    margin-bottom:12px;
  }
  .wfms-card h2{font-size:22px;}
  .wfms-card.mini strong{font-size:17px;}
  .wfms-contrib-layout{grid-template-columns:1fr;gap:12px;}
  .wfms-months{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .wfms-month{padding:10px;border-radius:12px;}
  .wfms-month b{font-size:14px;}
  .wfms-month span{font-size:12px;}
  .wfms-summary{padding:16px;border-radius:16px;}
  .wfms-summary strong{font-size:24px;}
  .wfms-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
  .wfms-tab{padding:11px 8px;font-size:13px;}
  .wfms-btn{padding:11px 15px;border-radius:12px;font-size:14px;}
  .wfms-profile-head{display:block;}
  .wfms-avatar.large{width:92px;height:92px;margin-bottom:12px;}
  .wfms-docs{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  .wfms-docs div{padding:12px;font-size:13px;}
  .wfms-entry{margin:20px 12px;padding:22px;border-radius:20px;}
}

@media(min-width:520px) and (max-width:900px){
  .wfms-sidebar nav{grid-template-columns:repeat(3,minmax(0,1fr));}
  .wfms-sidebar nav .wfms-logout{grid-column:auto;}
}

/* WFMS v2.6 real notifications */
.wfms-bell{position:relative;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;margin-right:12px;color:inherit}
.wfms-bell b{position:absolute;top:-10px;right:-10px;background:#e11d48;color:#fff;border-radius:999px;font-size:11px;line-height:1;padding:4px 6px;min-width:18px;text-align:center}
.wfms-notification-list{display:grid;gap:12px;margin-top:16px}
.wfms-notice-item{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;border:1px solid rgba(0,0,0,.08);border-radius:16px;padding:14px 16px;background:#fff}
.wfms-notice-item.unread{border-color:rgba(0,128,64,.25);background:#f0fff6;box-shadow:0 8px 22px rgba(0,80,40,.06)}
.wfms-notice-item p{margin:5px 0 0}
.wfms-notice-item small{white-space:nowrap;color:#667085}
@media(max-width:700px){.wfms-notice-item{display:block}.wfms-notice-item small{display:block;margin-top:8px}}

/* WFMS v2.7 - Premium profile page */
.wfms-profile-premium h2{margin-bottom:18px}
.wfms-profile-hero{display:flex;align-items:center;gap:28px;padding:22px;border-radius:22px;background:linear-gradient(135deg,#f7fbf8,#edf7f0);border:1px solid var(--wfms-border);margin-bottom:22px}
.wfms-photo-wrap{display:flex;flex-direction:column;align-items:center;gap:12px;min-width:160px}
.wfms-photo-form{display:flex;justify-content:center}
.wfms-hidden-file{display:none!important}
.wfms-photo-trigger{white-space:nowrap;box-shadow:0 10px 22px rgba(0,107,53,.18)}
.wfms-profile-title h3{font-size:30px;margin:0 0 8px;color:#173b2a}
.wfms-profile-title p{margin:0;color:var(--wfms-muted);font-weight:800}
.wfms-profile-title span{display:inline-block;background:#e8f7ed;color:#006b35;border-radius:999px;padding:4px 10px;margin-left:6px}
.wfms-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}
.wfms-profile-info{border:1px solid var(--wfms-border);background:#fff;border-radius:18px;padding:16px;min-height:98px;box-shadow:0 6px 18px rgba(0,0,0,.035)}
.wfms-profile-info span{font-size:22px;display:block;margin-bottom:8px}
.wfms-profile-info small{display:block;text-transform:uppercase;color:var(--wfms-muted);font-weight:900;letter-spacing:.5px;font-size:11px;margin-bottom:6px}
.wfms-profile-info strong{font-size:16px;color:#1f2937;line-height:1.35;word-break:break-word}
.wfms-profile-extra{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}
.wfms-profile-extra>div{border:1px solid var(--wfms-border);border-radius:18px;padding:18px;background:#fbfdfb}
.wfms-profile-extra h3{margin:0 0 8px;color:#174f2f}
.wfms-profile-extra p{color:var(--wfms-muted)}
@media(max-width:900px){
  .wfms-profile-hero{display:block;text-align:center;padding:18px}
  .wfms-photo-wrap{min-width:0}
  .wfms-profile-title h3{font-size:22px;margin-top:14px}
  .wfms-profile-grid{grid-template-columns:1fr;gap:10px}
  .wfms-profile-info{min-height:auto;padding:14px}
  .wfms-profile-extra{grid-template-columns:1fr}
}


/* WFMS v2.7.1 - logout premium and dashboard cleanup */
.wfms-sidebar nav a.wfms-logout{
  background:#fff!important;
  color:#111827!important;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  box-shadow:0 10px 24px rgba(0,0,0,.12);
}
.wfms-sidebar nav a.wfms-logout:hover{
  background:#f3f4f6!important;
  color:#111827!important;
}
.wfms-logout-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:22px;
  height:22px;
  border-radius:999px;
  background:#0b6b38;
  color:#fff;
  font-size:13px;
  line-height:1;
}
@media(max-width:900px){
  .wfms-sidebar nav .wfms-logout{
    grid-column:1 / -1!important;
    padding:12px 10px;
  }
}

/* WFMS v2.8 - Request Centre + Admin Dashboard */
.wfms-help{font-size:13px;color:var(--wfms-muted);margin:8px 0 0}.wfms-flash{background:#e8f7ed;color:#065f33;border:1px solid #b7e4c4;border-radius:14px;padding:12px 14px;margin:12px 0;font-weight:800}.wfms-request-history{margin:18px 0;padding:16px;border:1px solid var(--wfms-border);border-radius:18px;background:#fbfdfb}.wfms-request-history h3{margin:0 0 12px;color:#174f2f}.wfms-request-history.empty p{margin-bottom:0;color:var(--wfms-muted)}.wfms-request-list{display:grid;gap:10px}.wfms-request-item{display:grid;grid-template-columns:1.4fr .8fr .9fr .8fr;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--wfms-border);border-radius:14px;background:#fff}.wfms-request-item strong{display:block;color:#1f2937}.wfms-request-item span,.wfms-request-item small{display:block;color:var(--wfms-muted);font-size:12px}.wfms-request-item b{font-size:13px}.wfms-request-item.pending{border-left:5px solid #f59e0b}.wfms-request-item.review,.wfms-request-item.info{border-left:5px solid #2563eb}.wfms-request-item.approved,.wfms-request-item.completed{border-left:5px solid #059669}.wfms-request-item.rejected{border-left:5px solid #dc2626}@media(max-width:700px){.wfms-request-item{grid-template-columns:1fr 1fr}.wfms-request-item>div:first-child{grid-column:1/-1}}
.wfms-admin-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;max-width:1100px;margin:18px 0}.wfms-admin-card{background:#fff;border:1px solid #dcdcde;border-radius:14px;padding:18px;box-shadow:0 8px 20px rgba(0,0,0,.04)}.wfms-admin-card span{display:block;color:#646970;font-weight:700;text-transform:uppercase;font-size:12px}.wfms-admin-card strong{display:block;font-size:32px;margin-top:8px;color:#0b6b38}.wfms-admin-card.pending strong{color:#d97706}.wfms-admin-card.review strong{color:#2563eb}.wfms-admin-card.approved strong{color:#059669}.wfms-admin-detail{background:#fff;border:1px solid #dcdcde;border-radius:14px;padding:20px;max-width:900px}.wfms-admin-message{background:#f6f7f7;border-radius:12px;padding:14px;margin-bottom:16px}.wfms-admin-actions .button{margin:0 6px 8px 0}@media(max-width:900px){.wfms-admin-cards{grid-template-columns:1fr 1fr}}@media(max-width:600px){.wfms-admin-cards{grid-template-columns:1fr}}

/* WFMS v2.8.1 - independent credit/assistance pages */
.wfms-request-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}
.wfms-request-box{margin-top:22px;padding:18px;border:1px solid var(--wfms-border);border-radius:18px;background:#fbfdfb}
.wfms-request-box h3{margin:0 0 12px;color:#174f2f}
.wfms-logout-icon svg{display:block;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;fill:none}
.wfms-sidebar nav a.wfms-logout .wfms-logout-icon{background:#fff;color:#111827;border:1px solid #d1d5db}
@media(max-width:700px){.wfms-request-actions .wfms-btn{width:100%;text-align:center}.wfms-request-box{padding:14px}}

/* WFMS v2.9 - Premium contributions */
.wfms-subtitle{margin:4px 0 0;color:var(--wfms-muted);font-size:13px;font-weight:600}
.wfms-year-select{border:1px solid var(--wfms-border);border-radius:12px;padding:10px 14px;background:#fff;font-weight:800;color:#174f2f}
.wfms-contrib-card .wfms-title-row{align-items:flex-start}
.wfms-contrib-top{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}
.wfms-contrib-top>div{background:#fbfdfb;border:1px solid var(--wfms-border);border-radius:16px;padding:14px}
.wfms-contrib-top small{display:block;text-transform:uppercase;letter-spacing:.45px;font-size:11px;font-weight:900;color:var(--wfms-muted);margin-bottom:6px}
.wfms-contrib-top strong{display:block;color:#173b2a;font-size:20px}
.wfms-status-text.paye{color:#047857!important}.wfms-status-text.non-paye{color:#dc2626!important}.wfms-status-text.a-venir{color:#64748b!important}
.wfms-contrib-progress{margin:4px 0 18px;padding:16px;border:1px solid var(--wfms-border);border-radius:18px;background:linear-gradient(135deg,#f9fffb,#f1f8f3)}
.wfms-contrib-progress>div:first-child{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font-weight:900;color:#174f2f}
.wfms-contrib-history{border:1px solid var(--wfms-border);border-radius:18px;padding:16px;background:#fff;overflow:auto}
.wfms-contrib-history h3{margin:0 0 12px;color:#174f2f}
.wfms-contrib-history table{width:100%;border-collapse:collapse;font-size:14px}
.wfms-contrib-history th,.wfms-contrib-history td{padding:10px 8px;border-bottom:1px solid #edf0ee;text-align:left;white-space:nowrap}
.wfms-contrib-history th{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--wfms-muted)}
.wfms-pill{display:inline-block;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:900}
.wfms-pill.paid{background:#e7f7ed;color:#047857}.wfms-pill.unpaid{background:#fee2e2;color:#b91c1c}.wfms-pill.future{background:#f1f5f9;color:#64748b}
.wfms-receipt{border:0;border-radius:999px;background:#eef6f0;color:#0b6b38;font-weight:900;padding:6px 10px;cursor:not-allowed}
@media(max-width:900px){.wfms-contrib-top{grid-template-columns:1fr 1fr}.wfms-contrib-layout{grid-template-columns:1fr}.wfms-contrib-history{padding:12px}.wfms-contrib-history table{font-size:13px}}
@media(max-width:520px){.wfms-contrib-top{grid-template-columns:1fr}.wfms-title-row{gap:10px}.wfms-year-select{width:100%}}

/* WFMS v2.9.2 - Compact contribution centre */
body .wfms-app{align-items:start}
.wfms-sidebar{min-height:auto}
.wfms-months-compact{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 18px}
.wfms-months-compact .wfms-month{min-height:92px;padding:13px 14px;position:relative}
.wfms-month-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
.wfms-month-head b{font-size:15px}
.wfms-month-amount{display:block;color:inherit;font-weight:800;margin-bottom:6px}
.wfms-month-check,.wfms-month-clock{width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:900}
.wfms-month-check{background:#059669;color:#fff}.wfms-month-clock{border:2px solid #64748b;color:#64748b}
.wfms-payment-alert{display:flex;align-items:center;gap:16px;border:1px solid #fca5a5;background:#fff1f2;color:#991b1b;border-radius:16px;padding:15px 18px;margin:0 0 18px}
.wfms-payment-alert strong,.wfms-payment-alert small{display:block}.wfms-payment-alert small{margin-top:4px;color:#7f1d1d}
.wfms-danger-siren{width:44px;height:44px;flex:0 0 44px;border-radius:50%;background:#dc2626;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:25px;font-weight:900;animation:wfms-danger-flash 2.5s ease-in-out infinite}
.wfms-unpaid-alert{width:22px;height:22px;border-radius:50%;background:#dc2626;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:900;box-shadow:0 0 0 rgba(220,38,38,.65);animation:wfms-unpaid-pulse 2.5s ease-in-out infinite}
.wfms-unpaid-alert.small{width:18px;height:18px;font-size:11px;margin-left:7px;vertical-align:middle}
.wfms-history-below{width:100%;margin-top:0}
@keyframes wfms-danger-flash{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.72;transform:scale(.97)}}
@keyframes wfms-unpaid-pulse{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(220,38,38,.35)}50%{opacity:.72;box-shadow:0 0 0 4px rgba(220,38,38,0)}}
@media (prefers-reduced-motion:reduce){.wfms-danger-siren,.wfms-unpaid-alert{animation:none}}
@media(max-width:1100px){.wfms-months-compact{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.wfms-months-compact{grid-template-columns:repeat(2,minmax(0,1fr))}.wfms-payment-alert{align-items:flex-start}.wfms-contrib-history table{min-width:560px}}

/* WFMS v2.9.3 - Gentler alerts, mobile payment CTA and compact profile */
.wfms-payment-alert-copy{flex:1;min-width:0}
.wfms-pay-now{margin-left:auto;border:0;border-radius:12px;background:#dc2626;color:#fff;padding:12px 18px;font-weight:900;cursor:pointer;white-space:nowrap;box-shadow:0 6px 16px rgba(220,38,38,.18)}
.wfms-pay-now:hover{background:#b91c1c}
.wfms-profile-premium{padding:20px}
.wfms-profile-premium h2{margin-bottom:14px;font-size:25px}
.wfms-profile-hero{gap:20px;padding:16px 18px;border-radius:18px;margin-bottom:16px}
.wfms-profile-premium .wfms-avatar.large{width:105px;height:105px}
.wfms-profile-title h3{font-size:24px;margin-bottom:6px}
.wfms-profile-grid{gap:10px;margin-top:12px}
.wfms-profile-info{border-radius:15px;padding:12px 14px;min-height:78px}
.wfms-profile-info span{font-size:18px;margin-bottom:5px}
.wfms-profile-info small{font-size:10px;margin-bottom:4px}
.wfms-profile-info strong{font-size:14px}
.wfms-profile-extra{gap:10px;margin-top:14px}
.wfms-profile-extra>div{border-radius:15px;padding:14px}
.wfms-profile-extra h3{font-size:17px}
.wfms-profile-extra p{font-size:13px;margin:6px 0 10px}
@media(max-width:760px){.wfms-payment-alert{flex-wrap:wrap}.wfms-pay-now{width:100%;margin-left:0}.wfms-profile-premium{padding:15px}.wfms-profile-premium .wfms-avatar.large{width:92px;height:92px}.wfms-profile-hero{padding:14px}.wfms-profile-info{padding:11px 12px}}

/* WFMS v2.9.4 — premium drawer navigation and contribution centre */
body .wfms-app{display:block;max-width:1500px;padding:0 24px 32px;background:#f7f9f8;position:relative;overflow:visible}
.wfms-main{width:100%;min-width:0}
.wfms-top{height:72px;margin:0 -24px 22px;padding:0 24px;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:40;box-shadow:0 2px 12px rgba(15,23,42,.04)}
.wfms-top-left{display:flex;align-items:center;gap:20px}.wfms-menu-toggle{width:42px;height:42px;border:0;background:transparent;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer}.wfms-menu-toggle:hover{background:#f1f5f3}.wfms-menu-toggle span{display:block;width:22px;height:2px;background:#17212b;border-radius:3px}
.wfms-top-logo img{max-width:170px;max-height:48px;object-fit:contain}.wfms-top-logo .wfms-logo-fallback{width:auto;height:auto;background:transparent;color:#087b3b;font-size:23px}
.wfms-user{gap:12px}.wfms-top-avatar{width:42px;height:42px;border-radius:50%;overflow:hidden;background:#eef2f0;display:flex;align-items:center;justify-content:center}.wfms-top-avatar img{width:100%;height:100%;object-fit:cover}.wfms-top-avatar .wfms-avatar-icon{font-size:22px}.wfms-user small{color:#16803f;font-weight:600}.wfms-bell{text-decoration:none;color:#111827;font-size:25px;line-height:1}
.wfms-sidebar{position:fixed;left:0;top:0;bottom:0;width:286px;min-height:100vh;border-radius:0;padding:18px 14px 24px;background:linear-gradient(180deg,#004c2d,#003d24);z-index:1002;transform:translateX(-105%);transition:transform .24s ease;box-shadow:18px 0 45px rgba(0,0,0,.2);overflow-y:auto}.wfms-app.menu-open .wfms-sidebar{transform:translateX(0)}
.wfms-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;padding:0 6px}.wfms-drawer-head .wfms-logo{margin:0;text-align:left}.wfms-drawer-head .wfms-logo img{max-width:150px;max-height:64px;background:#fff;border-radius:14px;padding:8px}.wfms-menu-close{border:0;background:rgba(255,255,255,.12);color:#fff;width:38px;height:38px;border-radius:10px;font-size:28px;line-height:1;cursor:pointer}
.wfms-sidebar nav a{display:flex;align-items:center;gap:14px;padding:13px 14px;margin:5px 0;border-radius:10px;font-size:15px}.wfms-sidebar nav a.active{background:linear-gradient(90deg,#05a84f,#13b95a)}.wfms-nav-icon{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 26px}.wfms-nav-icon svg,.wfms-summary-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.wfms-sidebar nav a.wfms-logout{margin-top:28px;background:transparent!important;color:#fff!important;border:1px solid rgba(255,255,255,.8);box-shadow:none}.wfms-sidebar nav a.wfms-logout:hover{background:#fff!important;color:#111827!important}.wfms-sidebar nav a.wfms-logout .wfms-logout-icon{background:transparent;color:currentColor;border:0}
.wfms-drawer-backdrop{position:fixed;inset:0;border:0;background:rgba(15,23,42,.48);z-index:1001;opacity:0;visibility:hidden;transition:.2s;cursor:pointer}.wfms-app.menu-open .wfms-drawer-backdrop{opacity:1;visibility:visible}
body.wfms-drawer-open{overflow:hidden}
.wfms-contrib-premium{background:transparent}.wfms-contrib-heading h2{font-size:28px;margin:0;color:#111827}.wfms-contrib-heading p{margin:4px 0 18px;color:#16803f;font-weight:600}.wfms-contrib-summary-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:16px}.wfms-contrib-summary-card{display:flex;align-items:center;gap:18px;background:#fff;border:1px solid #dde5e0;border-radius:10px;min-height:116px;padding:18px 20px;box-shadow:0 2px 7px rgba(15,23,42,.04)}.wfms-summary-icon{width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0b9d3c,#007b26);color:#fff;flex:0 0 58px}.wfms-contrib-summary-card.danger .wfms-summary-icon{background:linear-gradient(135deg,#f52222,#d70606)}.wfms-contrib-summary-card small{display:block;color:#263238;font-size:14px;margin-bottom:5px}.wfms-contrib-summary-card strong{display:block;font-size:25px;color:#0f172a}.wfms-contrib-summary-card.danger strong{color:#e11212}.wfms-contrib-summary-card em{display:block;margin-top:4px;font-style:normal;font-size:12px}.wfms-contrib-summary-card em i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#e11212;margin-right:6px}.wfms-mini-progress{height:7px;background:#e7ebea;border-radius:20px;margin-top:8px;overflow:hidden}.wfms-mini-progress i{display:block;height:100%;background:#0a9f3d;border-radius:20px}
.wfms-payment-alert{border-radius:8px;padding:14px 18px}.wfms-danger-siren{border-radius:8px;width:46px;height:46px;flex-basis:46px}.wfms-contrib-year-title{margin:20px 0 10px;font-size:20px}.wfms-months-premium{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:16px}.wfms-month-premium{background:#fff;border:1px solid #dfe6e2;border-radius:9px;padding:14px;min-height:120px;box-shadow:0 2px 7px rgba(15,23,42,.03)}.wfms-month-premium.unpaid{border-color:#f2d4d4}.wfms-month-premium-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.wfms-month-premium-head b{font-size:15px}.wfms-month-premium.unpaid .wfms-month-premium-head b{color:#e11212}.wfms-month-premium>strong{display:block;font-size:18px;margin-bottom:10px}.wfms-month-premium .wfms-pill{padding:4px 8px}.wfms-contrib-bottom{display:grid;grid-template-columns:minmax(0,2.3fr) minmax(260px,.8fr);gap:14px}.wfms-contrib-history{border-radius:10px;padding:14px}.wfms-contrib-history h3{color:#111827}.wfms-history-paid{color:#0a9f3d;font-weight:700}.wfms-annual-summary{background:#fff;border:1px solid #dfe6e2;border-radius:10px;padding:18px}.wfms-annual-summary h3{margin:0 0 18px}.wfms-annual-summary dl{margin:0}.wfms-annual-summary dl>div{display:flex;justify-content:space-between;gap:14px;padding:8px 0}.wfms-annual-summary dt{color:#374151}.wfms-annual-summary dd{margin:0;font-weight:800}.wfms-annual-summary .total{border-top:1px solid #dfe6e2;margin-top:8px;padding-top:18px;font-size:18px}.wfms-download-annual{width:100%;margin-top:14px;border:0;border-radius:8px;background:#0a9f31;color:#fff;padding:13px 12px;font-weight:900;cursor:pointer}.wfms-download-annual:hover{background:#078328}
@media(max-width:1180px){.wfms-months-premium{grid-template-columns:repeat(4,minmax(0,1fr))}.wfms-contrib-summary-cards{grid-template-columns:1fr 1fr}}
@media(max-width:760px){body .wfms-app{padding:0 12px 24px}.wfms-top{margin:0 -12px 16px;padding:0 12px;height:64px}.wfms-top-logo img{max-width:115px}.wfms-user>span{display:none}.wfms-top-avatar{width:36px;height:36px}.wfms-contrib-summary-cards{grid-template-columns:1fr}.wfms-months-premium{grid-template-columns:repeat(2,minmax(0,1fr))}.wfms-contrib-bottom{grid-template-columns:1fr}.wfms-payment-alert{flex-wrap:wrap}.wfms-pay-now{width:100%;margin-left:0}.wfms-contrib-summary-card{min-height:96px;padding:14px}.wfms-summary-icon{width:48px;height:48px;flex-basis:48px}.wfms-sidebar{width:min(86vw,300px)}}

/* WFMS v2.9.6 — shared notification badge, stable drawer hover, compact mobile UI */
.wfms-sidebar nav a{position:relative}
.wfms-nav-label{min-width:0}
.wfms-nav-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#e11d48;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11px;line-height:1;font-weight:900;box-shadow:0 3px 10px rgba(225,29,72,.25)}
.wfms-bell svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}

/* Prevent theme button hover rules from hiding or recolouring the page behind the drawer. */
.wfms-drawer-backdrop,
.wfms-drawer-backdrop:hover,
.wfms-drawer-backdrop:focus,
.wfms-drawer-backdrop:active{
  appearance:none!important;
  -webkit-appearance:none!important;
  border:0!important;
  border-radius:0!important;
  padding:0!important;
  margin:0!important;
  background:rgba(15,23,42,.12)!important;
  box-shadow:none!important;
  filter:none!important;
  transform:none!important;
  outline:none!important;
}

/* Profile information: icon beside the title, not above it. */
.wfms-profile-info{
  display:grid;
  grid-template-columns:26px minmax(0,1fr);
  grid-template-rows:auto auto;
  column-gap:9px;
  align-items:start;
}
.wfms-profile-info span{grid-column:1;grid-row:1 / span 2;margin:0!important;font-size:18px;line-height:1.2}
.wfms-profile-info small{grid-column:2;grid-row:1;margin:0 0 3px!important}
.wfms-profile-info strong{grid-column:2;grid-row:2}

@media(max-width:760px){
  body .wfms-app{padding:0 8px 14px}
  .wfms-top{height:54px;margin:0 -8px 10px;padding:0 9px}
  .wfms-menu-toggle{width:36px;height:36px}
  .wfms-menu-toggle span{width:19px}
  .wfms-top-logo img{max-width:92px;max-height:36px}
  .wfms-top-avatar{width:31px;height:31px}
  .wfms-user{gap:7px}
  .wfms-bell{margin-right:4px}
  .wfms-bell svg{width:22px;height:22px}

  .wfms-sidebar{width:min(84vw,286px);padding:10px 10px 14px}
  .wfms-drawer-head{margin-bottom:9px;padding:0 2px}
  .wfms-drawer-head .wfms-logo img{max-width:128px;max-height:50px;padding:5px 7px;border-radius:11px}
  .wfms-menu-close{width:34px;height:34px;font-size:24px}
  .wfms-sidebar nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  .wfms-sidebar nav a{min-height:58px;margin:0;padding:8px 8px;gap:8px;border-radius:10px;font-size:12.5px;line-height:1.12}
  .wfms-nav-icon{width:22px;height:22px;flex-basis:22px}
  .wfms-nav-icon svg{width:20px;height:20px}
  .wfms-nav-badge{position:absolute;top:5px;right:6px;min-width:18px;height:18px;font-size:10px;padding:0 5px}
  .wfms-sidebar nav a.wfms-logout{grid-column:1 / -1!important;min-height:46px;margin-top:5px;padding:9px 10px}

  .wfms-hero{grid-template-columns:48px 1fr;padding:13px;gap:9px;border-radius:15px;margin-bottom:8px}
  .wfms-hero h1{font-size:18px;margin:3px 0;line-height:1.14}
  .wfms-hero p{font-size:11.5px;line-height:1.35}
  .wfms-hero .wfms-avatar{width:46px;height:46px}
  .wfms-hero .wfms-id{padding:9px 11px;border-radius:11px}
  .wfms-hero .wfms-id strong{font-size:18px}
  .wfms-grid{gap:7px}
  .wfms-card{padding:11px;border-radius:13px;margin-bottom:8px}
  .wfms-card.mini{min-height:72px}
  .wfms-card.mini small{font-size:9px}
  .wfms-card.mini strong{font-size:14px;margin-top:5px;line-height:1.2}
  .wfms-info h3{font-size:17px;margin:0 0 8px}
  .wfms-info p{font-size:12.5px;margin:7px 0;line-height:1.45}

  .wfms-profile-premium{padding:10px}
  .wfms-profile-premium h2{font-size:20px;margin-bottom:8px}
  .wfms-profile-hero{display:flex;text-align:left;gap:10px;padding:10px;margin-bottom:9px}
  .wfms-photo-wrap{min-width:82px;gap:6px}
  .wfms-profile-premium .wfms-avatar.large{width:70px;height:70px}
  .wfms-photo-trigger{font-size:11px;padding:7px 8px;white-space:normal;line-height:1.1}
  .wfms-profile-title h3{font-size:17px;margin:0 0 5px}
  .wfms-profile-title p{font-size:11px}
  .wfms-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:7px}
  .wfms-profile-info{min-height:62px;padding:8px 9px;border-radius:11px;grid-template-columns:21px minmax(0,1fr);column-gap:6px}
  .wfms-profile-info span{font-size:15px}
  .wfms-profile-info small{font-size:8px;letter-spacing:.25px}
  .wfms-profile-info strong{font-size:11.5px;line-height:1.25}
  .wfms-profile-info:nth-child(4),.wfms-profile-info:nth-child(5){grid-column:1 / -1}
  .wfms-profile-extra{gap:6px;margin-top:7px}
  .wfms-profile-extra>div{padding:10px;border-radius:11px}
  .wfms-profile-extra h3{font-size:14px}
  .wfms-profile-extra p{font-size:11px;margin:4px 0 7px}

  .wfms-contrib-heading h2{font-size:22px}
  .wfms-contrib-heading p{font-size:12px;margin-bottom:10px}
  .wfms-contrib-summary-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-bottom:8px}
  .wfms-contrib-summary-card{min-height:74px;padding:9px;gap:8px;border-radius:9px}
  .wfms-summary-icon{width:34px;height:34px;flex-basis:34px}
  .wfms-summary-icon svg{width:17px;height:17px}
  .wfms-contrib-summary-card small{font-size:10px;margin-bottom:2px}
  .wfms-contrib-summary-card strong{font-size:16px}
  .wfms-months-premium{gap:6px;margin-bottom:8px}
  .wfms-month-premium{min-height:90px;padding:9px;border-radius:8px}
  .wfms-month-premium-head{margin-bottom:7px}
  .wfms-month-premium-head b{font-size:12px}
  .wfms-month-premium>strong{font-size:14px;margin-bottom:6px}
  .wfms-month-premium small{font-size:9.5px}
  .wfms-contrib-history{padding:9px}
  .wfms-annual-summary{padding:11px}
}

@media(min-width:761px){
  .wfms-drawer-backdrop,
  .wfms-drawer-backdrop:hover,
  .wfms-drawer-backdrop:focus,
  .wfms-drawer-backdrop:active{background:rgba(15,23,42,.06)!important}
}

/* WFMS v2.9.7 — compact mobile profile layout */
.wfms-profile-mobile-meta{display:none}
@media(max-width:760px){
  .wfms-profile-premium{padding:9px!important;border-radius:14px!important}
  .wfms-profile-premium>h2{font-size:20px!important;line-height:1.15;margin:0 0 8px!important}

  .wfms-profile-hero{
    display:grid!important;
    grid-template-columns:70px minmax(0,1fr)!important;
    grid-template-areas:
      "photo action"
      "name name"
      "meta meta";
    gap:7px 10px!important;
    align-items:center!important;
    padding:9px!important;
    margin-bottom:7px!important;
    border-radius:13px!important;
    text-align:left!important;
  }
  .wfms-photo-wrap{
    grid-area:photo!important;
    display:block!important;
    min-width:0!important;
    width:70px!important;
  }
  .wfms-profile-premium .wfms-avatar.large{
    width:62px!important;
    height:62px!important;
    margin:0!important;
  }
  .wfms-photo-form{grid-area:action!important;margin:0!important}
  .wfms-photo-trigger{
    width:auto!important;
    min-height:34px!important;
    padding:7px 11px!important;
    margin:0!important;
    font-size:11px!important;
    line-height:1.1!important;
    border-radius:9px!important;
    white-space:nowrap!important;
  }
  .wfms-profile-title{
    grid-area:name!important;
    width:100%!important;
    min-width:0!important;
    padding:1px 2px 0!important;
  }
  .wfms-profile-title h3{
    display:block!important;
    width:100%!important;
    margin:0!important;
    font-size:18px!important;
    line-height:1.22!important;
    color:#173f2a!important;
  }
  .wfms-profile-title p{display:none!important}

  .wfms-profile-mobile-meta{
    grid-area:meta!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:6px!important;
    width:100%!important;
  }
  .wfms-profile-mobile-meta>div{
    min-width:0!important;
    background:#fff!important;
    border:1px solid var(--wfms-border)!important;
    border-radius:9px!important;
    padding:7px 8px!important;
  }
  .wfms-profile-mobile-meta small{
    display:block!important;
    color:var(--wfms-muted)!important;
    font-size:7.5px!important;
    font-weight:900!important;
    letter-spacing:.3px!important;
    text-transform:uppercase!important;
    margin-bottom:2px!important;
  }
  .wfms-profile-mobile-meta strong{
    display:block!important;
    min-width:0!important;
    color:#1f2937!important;
    font-size:11px!important;
    line-height:1.2!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  .wfms-profile-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:6px!important;
    margin-top:0!important;
  }
  /* Name, ID and phone already appear in the compact header. */
  .wfms-profile-grid .wfms-profile-info:nth-child(1),
  .wfms-profile-grid .wfms-profile-info:nth-child(2),
  .wfms-profile-grid .wfms-profile-info:nth-child(3){display:none!important}
  /* Email and address each occupy a full row. */
  .wfms-profile-grid .wfms-profile-info:nth-child(4),
  .wfms-profile-grid .wfms-profile-info:nth-child(5){grid-column:1 / -1!important}
  /* Profession + birth date, then joining date + status remain paired. */
  .wfms-profile-info{
    min-height:56px!important;
    padding:7px 8px!important;
    border-radius:10px!important;
    grid-template-columns:19px minmax(0,1fr)!important;
    column-gap:6px!important;
  }
  .wfms-profile-info span{font-size:14px!important;line-height:1!important}
  .wfms-profile-info small{font-size:7.5px!important;letter-spacing:.25px!important;margin-bottom:2px!important}
  .wfms-profile-info strong{font-size:11px!important;line-height:1.2!important}

  .wfms-profile-extra{gap:6px!important;margin-top:7px!important}
  .wfms-profile-extra>div{padding:9px!important;border-radius:10px!important}
  .wfms-profile-extra h3{font-size:13.5px!important;margin:0 0 3px!important}
  .wfms-profile-extra p{font-size:10.5px!important;line-height:1.3!important;margin:3px 0 6px!important}
  .wfms-profile-extra .wfms-btn{padding:8px 10px!important;font-size:10.5px!important;border-radius:9px!important}
}

/* WFMS v2.9.8 — premium compact mobile profile, shared avatar photo and member badges */
.wfms-member-badges{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:10px}
.wfms-member-id-badge,.wfms-member-status-badge{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:7px 13px;font-size:13px;font-weight:850;line-height:1}
.wfms-member-id-badge{border:1px solid #77c995;background:#f8fffa;color:#17683a}
.wfms-member-status-badge{border:1px solid #9edbb1;background:#eaf8ef;color:#17683a}
.wfms-member-status-badge i{width:8px;height:8px;border-radius:50%;background:#19ae4b;display:inline-block}
.wfms-profile-title>p,.wfms-profile-mobile-meta{display:none!important}

@media(max-width:760px){
  .wfms-profile-premium{padding:10px!important;border-radius:15px!important}
  .wfms-profile-premium>h2{font-size:21px!important;margin:0 0 9px!important}
  .wfms-profile-hero{
    display:grid!important;
    grid-template-columns:104px minmax(0,1fr)!important;
    grid-template-areas:"photo title"!important;
    align-items:center!important;
    gap:10px 13px!important;
    padding:12px!important;
    min-height:0!important;
    margin-bottom:8px!important;
    text-align:left!important;
  }
  .wfms-photo-wrap{grid-area:photo!important;display:flex!important;flex-direction:column!important;align-items:center!important;gap:6px!important;min-width:0!important;width:104px!important}
  .wfms-profile-premium .wfms-avatar.large{width:78px!important;height:78px!important;margin:0!important;border-width:4px!important;box-shadow:0 5px 14px rgba(0,72,36,.12)}
  .wfms-photo-form{width:auto!important;margin:0!important;display:block!important}
  .wfms-photo-trigger{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:4px!important;width:auto!important;max-width:104px!important;min-height:30px!important;margin:0!important;padding:6px 8px!important;border-radius:9px!important;font-size:9.5px!important;line-height:1.05!important;white-space:nowrap!important;box-shadow:none!important}
  .wfms-profile-title{grid-area:title!important;align-self:center!important;min-width:0!important}
  .wfms-profile-title h3{font-size:20px!important;line-height:1.18!important;margin:0!important;color:#174f2f!important;word-break:normal!important}
  .wfms-member-badges{gap:6px!important;margin-top:9px!important}
  .wfms-member-id-badge,.wfms-member-status-badge{gap:4px!important;padding:6px 8px!important;font-size:10px!important}
  .wfms-member-status-badge i{width:6px;height:6px}

  .wfms-profile-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important;margin-top:7px!important}
  .wfms-profile-grid .wfms-profile-info:nth-child(1){display:none!important}
  .wfms-profile-grid .wfms-profile-info:nth-child(2),
  .wfms-profile-grid .wfms-profile-info:nth-child(3){display:grid!important;grid-column:auto!important}
  .wfms-profile-grid .wfms-profile-info:nth-child(4),
  .wfms-profile-grid .wfms-profile-info:nth-child(5){grid-column:1 / -1!important}
  .wfms-profile-info{min-height:61px!important;padding:8px 9px!important;border-radius:11px!important;grid-template-columns:20px minmax(0,1fr)!important;column-gap:6px!important}
  .wfms-profile-info span{font-size:14px!important}
  .wfms-profile-info small{font-size:7.5px!important;letter-spacing:.2px!important}
  .wfms-profile-info strong{font-size:11.2px!important;line-height:1.18!important}
  .wfms-profile-extra{gap:6px!important;margin-top:7px!important}
  .wfms-profile-extra>div{padding:9px 10px!important;border-radius:11px!important}
  .wfms-profile-extra h3{font-size:14px!important;margin:0 0 3px!important}
  .wfms-profile-extra p{font-size:10.5px!important;line-height:1.25!important;margin:3px 0 6px!important}
  .wfms-profile-extra .wfms-btn{padding:7px 9px!important;font-size:10px!important;border-radius:8px!important}
}

/* WFMS v2.9.9 — exact premium mobile profile layout */
.wfms-profile-extra-card{display:flex;align-items:center;justify-content:space-between;gap:18px}
.wfms-profile-extra-copy{min-width:0;flex:1}
.wfms-profile-extra-icon{width:92px;height:92px;flex:0 0 92px;border-radius:50%;background:linear-gradient(145deg,#f3fbf5,#e8f7ed);display:flex;align-items:center;justify-content:center;color:#06713a}
.wfms-profile-extra-icon svg{width:54px;height:54px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.wfms-lock-icon svg{width:45px;height:52px;fill:#08723b;stroke:#08723b}
.wfms-photo-trigger{background:#fff!important;color:#17683a!important;border:1.5px solid #17683a!important;box-shadow:none!important}
.wfms-photo-trigger:hover,.wfms-photo-trigger:focus{background:#f5fbf7!important;color:#0b5b31!important}

@media(max-width:760px){
  .wfms-profile-premium{padding:12px!important;border-radius:16px!important}
  .wfms-profile-premium>h2{font-size:25px!important;line-height:1.15!important;margin:0 0 12px!important;color:#174f2f!important}
  .wfms-profile-hero{
    display:grid!important;
    grid-template-columns:116px minmax(0,1fr)!important;
    grid-template-areas:"photo title"!important;
    align-items:center!important;
    gap:12px 18px!important;
    padding:18px 14px!important;
    margin-bottom:12px!important;
    border-radius:20px!important;
    min-height:0!important;
    background:linear-gradient(135deg,#fbfefc,#f2faf5)!important;
  }
  .wfms-photo-wrap{grid-area:photo!important;width:116px!important;display:flex!important;flex-direction:column!important;align-items:center!important;gap:9px!important}
  .wfms-profile-premium .wfms-avatar.large{width:92px!important;height:92px!important;border-width:4px!important;box-shadow:0 5px 14px rgba(0,72,36,.12)!important}
  .wfms-photo-form{width:100%!important;display:flex!important;justify-content:center!important}
  .wfms-photo-trigger{width:auto!important;max-width:none!important;min-height:34px!important;padding:7px 11px!important;border-radius:10px!important;font-size:10.5px!important;font-weight:800!important;white-space:nowrap!important}
  .wfms-profile-title{grid-area:title!important;align-self:center!important;min-width:0!important}
  .wfms-profile-title h3{font-size:24px!important;line-height:1.22!important;margin:0!important;color:#174f2f!important}
  .wfms-member-badges{gap:7px!important;margin-top:12px!important}
  .wfms-member-id-badge,.wfms-member-status-badge{padding:7px 10px!important;font-size:11px!important;border-radius:11px!important}
  .wfms-member-status-badge i{width:7px!important;height:7px!important}

  .wfms-profile-grid{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;margin-top:0!important}
  .wfms-profile-info{display:grid!important;grid-template-columns:32px minmax(0,1fr)!important;grid-template-rows:auto auto!important;column-gap:10px!important;min-height:78px!important;padding:13px 14px!important;border-radius:16px!important;align-items:center!important}
  .wfms-profile-info span{grid-column:1!important;grid-row:1 / span 2!important;font-size:22px!important;margin:0!important;align-self:center!important}
  .wfms-profile-info small{grid-column:2!important;grid-row:1!important;font-size:9px!important;letter-spacing:.35px!important;margin:0 0 4px!important}
  .wfms-profile-info strong{grid-column:2!important;grid-row:2!important;font-size:15px!important;line-height:1.25!important}

  .wfms-profile-extra{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;margin-top:10px!important}
  .wfms-profile-extra>div{padding:15px!important;border-radius:16px!important}
  .wfms-profile-extra-card{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important}
  .wfms-profile-extra h3{font-size:18px!important;margin:0 0 5px!important}
  .wfms-profile-extra p{font-size:12px!important;line-height:1.35!important;margin:4px 0 10px!important}
  .wfms-profile-extra .wfms-btn{padding:9px 12px!important;font-size:11.5px!important;border-radius:10px!important}
  .wfms-profile-extra-icon{width:78px!important;height:78px!important;flex-basis:78px!important}
  .wfms-profile-extra-icon svg{width:46px!important;height:46px!important}
  .wfms-lock-icon svg{width:39px!important;height:47px!important}
}

/* WFMS v3.0.0 — bank-style credit centre */
.wfms-credit-page{display:grid;gap:18px}
.wfms-credit-heading h2{margin:0 0 4px;font-size:30px;color:#173f2a}.wfms-credit-heading p{margin:0;color:var(--wfms-muted)}
.wfms-credit-empty{display:flex;align-items:center;gap:18px;padding:24px;border:1px solid var(--wfms-border);border-radius:20px;background:linear-gradient(135deg,#fbfefc,#f2faf5)}
.wfms-credit-empty-icon{display:flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:17px;background:#e5f5eb;color:#08733d;font-size:27px;font-weight:900}.wfms-credit-empty h3{margin:0 0 5px;color:#174f2f}.wfms-credit-empty p{margin:0;color:var(--wfms-muted)}
.wfms-credit-hero{padding:24px;border-radius:24px;background:linear-gradient(135deg,#087640,#064f31);color:#fff;box-shadow:0 15px 34px rgba(0,83,47,.18)}
.wfms-credit-hero-top,.wfms-credit-hero-footer,.wfms-credit-progress-copy{display:flex;align-items:center;justify-content:space-between;gap:16px}
.wfms-credit-hero-top span{font-size:13px;opacity:.85;text-transform:uppercase;letter-spacing:.6px}.wfms-credit-hero-top h3{margin:7px 0 2px;font-size:38px;color:#fff}.wfms-credit-hero-top small{opacity:.78}
.wfms-credit-status{padding:8px 13px;border-radius:999px;font-size:12px;font-weight:850;background:rgba(255,255,255,.16)}.wfms-credit-status.danger{background:#ffdfdf;color:#a70f1c}.wfms-credit-status.good{background:#daf5e4;color:#075e31}
.wfms-credit-progress-copy{margin-top:25px;font-size:13px}.wfms-credit-progress-copy strong{font-size:16px}.wfms-credit-progress{height:9px;border-radius:999px;background:rgba(255,255,255,.22);overflow:hidden;margin:8px 0 22px}.wfms-credit-progress i{display:block;height:100%;border-radius:inherit;background:#8ce5a9}
.wfms-credit-hero-footer{border-top:1px solid rgba(255,255,255,.18);padding-top:18px}.wfms-credit-hero-footer>div{display:grid;gap:4px}.wfms-credit-hero-footer small{opacity:.75}.wfms-credit-hero-footer strong{font-size:21px}
.wfms-credit-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.wfms-credit-stat{display:flex;align-items:center;gap:12px;min-height:98px;padding:16px;border:1px solid var(--wfms-border);border-radius:18px;background:#fff;box-shadow:0 5px 16px rgba(0,55,32,.05)}.wfms-credit-stat.danger{background:#fff8f8;border-color:#f5b7bc}.wfms-credit-stat-icon{display:flex;align-items:center;justify-content:center;width:42px;height:42px;flex:0 0 42px;border-radius:13px;background:#eaf8ef;color:#08713b}.wfms-credit-stat.danger .wfms-credit-stat-icon{background:#ffe5e7;color:#c01e2c}.wfms-credit-stat-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.wfms-credit-stat small{display:block;color:var(--wfms-muted);font-size:11px;margin-bottom:4px}.wfms-credit-stat strong{display:block;color:#17221c;font-size:15px}
.wfms-credit-warning{display:flex;justify-content:space-between;gap:14px;padding:15px 18px;border-radius:15px;background:#fff1f2;border:1px solid #f4afb6;color:#a61622}.wfms-credit-warning span{color:#724248}
.wfms-credit-details-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.wfms-credit-panel{border:1px solid var(--wfms-border);border-radius:20px;background:#fff;overflow:hidden}.wfms-credit-panel-head{padding:17px 19px;border-bottom:1px solid var(--wfms-border)}.wfms-credit-panel-head h3{margin:0;color:#174f2f;font-size:18px}.wfms-credit-panel dl{margin:0;padding:5px 19px 14px}.wfms-credit-panel dl>div{display:flex;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid #edf1ee}.wfms-credit-panel dl>div:last-child{border-bottom:0}.wfms-credit-panel dt{color:var(--wfms-muted);font-size:12px}.wfms-credit-panel dd{margin:0;text-align:right;font-weight:800;color:#1d2822;font-size:13px}
.wfms-installments{padding:10px 15px 15px;display:grid;gap:7px}.wfms-installment{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px 10px;border-radius:12px;background:#f7f9f8}.wfms-installment>span{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#e3e7e4;font-size:11px;font-weight:900}.wfms-installment div{display:grid;gap:2px}.wfms-installment strong{font-size:12px}.wfms-installment small{color:var(--wfms-muted);font-size:10px}.wfms-installment b{font-size:10px}.wfms-installment.paid{background:#eff9f2}.wfms-installment.paid>span{background:#16a34a;color:#fff}.wfms-installment.paid b{color:#08713b}.wfms-installment.current{background:#fff8e6}.wfms-installment.current>span{background:#f4b622;color:#fff}.wfms-installment.current b{color:#976500}.wfms-credit-placeholder{padding:22px;color:var(--wfms-muted)}
.wfms-credit-actions{display:flex;flex-wrap:wrap;gap:10px}.wfms-credit-new-request .wfms-request-box{margin-top:0}
@media(max-width:900px){.wfms-credit-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.wfms-credit-details-grid{grid-template-columns:1fr}}
@media(max-width:600px){.wfms-credit-page{gap:10px}.wfms-credit-heading h2{font-size:23px}.wfms-credit-heading p{font-size:11px}.wfms-credit-hero{padding:16px;border-radius:18px}.wfms-credit-hero-top h3{font-size:29px}.wfms-credit-status{padding:6px 9px;font-size:10px}.wfms-credit-progress-copy{margin-top:18px}.wfms-credit-hero-footer{padding-top:13px}.wfms-credit-hero-footer strong{font-size:16px}.wfms-credit-stats{gap:7px}.wfms-credit-stat{min-height:74px;padding:10px;gap:8px;border-radius:13px}.wfms-credit-stat-icon{width:34px;height:34px;flex-basis:34px;border-radius:10px}.wfms-credit-stat-icon svg{width:18px;height:18px}.wfms-credit-stat small{font-size:8.5px}.wfms-credit-stat strong{font-size:11.5px}.wfms-credit-details-grid{gap:9px}.wfms-credit-panel{border-radius:14px}.wfms-credit-panel-head{padding:12px 13px}.wfms-credit-panel-head h3{font-size:15px}.wfms-credit-panel dl{padding:3px 13px 9px}.wfms-credit-panel dl>div{padding:9px 0}.wfms-credit-panel dt,.wfms-credit-panel dd{font-size:10px}.wfms-installments{padding:8px 10px 10px}.wfms-installment{padding:7px 8px}.wfms-credit-empty{padding:15px;border-radius:15px}.wfms-credit-empty-icon{width:44px;height:44px;flex-basis:44px;border-radius:13px}.wfms-credit-empty h3{font-size:15px}.wfms-credit-empty p{font-size:10.5px}.wfms-credit-warning{display:grid;padding:11px 12px;font-size:11px}.wfms-credit-actions .wfms-btn{font-size:10.5px;padding:8px 10px}}

/* WFMS 3.0.1 — multi-credit selector and custom logout popover */
.wfms-credit-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 18px}
.wfms-credit-summary>div{background:#fff;border:1px solid #e4ebe6;border-radius:16px;padding:16px;box-shadow:0 8px 24px rgba(14,59,36,.05)}
.wfms-credit-summary small{display:block;color:#6b7280;margin-bottom:6px}
.wfms-credit-summary strong{font-size:22px;color:#124f31}
.wfms-credit-switcher{display:flex;gap:10px;overflow-x:auto;padding:2px 2px 12px;margin-bottom:8px;scrollbar-width:thin}
.wfms-credit-tab{min-width:170px;text-align:left;border:1px solid #dce8df;background:#fff;border-radius:14px;padding:12px 14px;cursor:pointer;color:#173f2b;transition:.2s ease}
.wfms-credit-tab span,.wfms-credit-tab small{display:block}
.wfms-credit-tab span{font-weight:800}
.wfms-credit-tab small{margin-top:4px;color:#6b7280}
.wfms-credit-tab.active{background:#ecf8f0;border-color:#2f9d58;box-shadow:0 6px 18px rgba(19,112,57,.1)}
.wfms-credit-view{display:none}
.wfms-credit-view.active{display:block}
.wfms-logout-wrap{position:relative;margin-top:auto}
.wfms-logout{width:100%}
.wfms-logout-popover{position:absolute;left:8px;right:8px;bottom:calc(100% + 12px);display:none;background:#fff;color:#1f2937;border:1px solid #dbe7de;border-radius:14px;padding:14px;box-shadow:0 16px 40px rgba(0,0,0,.2);z-index:20}
.wfms-logout-popover:after{content:"";position:absolute;left:28px;bottom:-8px;width:14px;height:14px;background:#fff;border-right:1px solid #dbe7de;border-bottom:1px solid #dbe7de;transform:rotate(45deg)}
.wfms-logout-wrap.open .wfms-logout-popover{display:block}
.wfms-logout-popover p{margin:0 0 12px;font-size:14px;line-height:1.45}
.wfms-logout-popover>div{display:flex;justify-content:flex-end;gap:8px}
.wfms-logout-cancel,.wfms-logout-confirm{border-radius:9px;padding:8px 12px;font-weight:700;text-decoration:none;border:1px solid #d8e2da;font-size:13px}
.wfms-logout-cancel{background:#fff;color:#374151;cursor:pointer}
.wfms-logout-confirm{background:#0f6b38;color:#fff;border-color:#0f6b38}
@media(max-width:700px){
  .wfms-credit-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .wfms-credit-summary>div{padding:12px;border-radius:13px}
  .wfms-credit-summary strong{font-size:18px}
  .wfms-credit-tab{min-width:145px;padding:10px 12px}
}

/* v3.0.2 — Mobile logout confirmation fix */
@media(max-width:760px){
  .wfms-sidebar nav .wfms-logout-wrap{
    grid-column:1 / -1;
    width:100%;
    margin-top:5px;
  }
  .wfms-sidebar nav .wfms-logout-wrap .wfms-logout{
    width:100%;
    min-height:46px;
  }
  .wfms-logout-popover{
    left:50%;
    right:auto;
    width:min(270px,calc(100vw - 36px));
    transform:translateX(-50%);
    padding:15px;
    border-radius:14px;
  }
  .wfms-logout-popover:after{
    left:50%;
    transform:translateX(-50%) rotate(45deg);
  }
  .wfms-logout-popover p{
    font-size:14px;
    line-height:1.4;
    margin:0 0 13px;
  }
  .wfms-logout-popover>div{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
  }
  .wfms-logout-cancel,.wfms-logout-confirm{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    min-height:42px;
    padding:9px 10px;
    border-radius:10px;
    font-size:14px;
    line-height:1;
    box-sizing:border-box;
  }
  .wfms-logout-confirm{
    background:#0f6b38!important;
    color:#fff!important;
    border-color:#0f6b38!important;
  }
}

/* WFMS 3.1 — embedded Ultimate Member login on Espace membre */
.wfms-login-entry{max-width:720px;text-align:left;padding:32px 38px}
.wfms-login-heading{text-align:center;margin-bottom:18px}
.wfms-login-heading h2{margin:6px 0 4px;color:#174f2f}
.wfms-login-heading p{margin:0;color:#6b7280}
.wfms-login-lock{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;border-radius:50%;background:#eef8f1;font-size:20px}
.wfms-um-login .um{margin:0 auto!important;max-width:560px!important}
.wfms-um-login .um-form{padding:0!important}
.wfms-um-login .um-field-label label{font-weight:700;color:#374151}
.wfms-um-login input[type=text],
.wfms-um-login input[type=password],
.wfms-um-login input[type=email]{border-radius:12px!important;border:1px solid #dfe7e2!important;min-height:46px!important}
.wfms-um-login input[type=submit],
.wfms-um-login .um-button{background:#006b35!important;border-radius:12px!important;font-weight:700!important}
.wfms-um-login .um-button.um-alt{background:#f4f5f4!important;color:#374151!important}
.wfms-join-link{text-align:center;margin:18px 0 0;color:#6b7280}
.wfms-join-link a{color:#006b35;font-weight:700;text-decoration:none}
@media(max-width:600px){
  .wfms-login-entry{margin:16px 10px;padding:22px 16px;border-radius:18px}
  .wfms-login-heading{margin-bottom:12px}
  .wfms-login-heading h2{font-size:24px}
  .wfms-um-login .um{max-width:100%!important}
}

/* WFMS v3.2 — consolidated production polish */
.wfms-live-status{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;font-size:.9em;font-weight:800}
.wfms-live-status.active,.wfms-live-status.paid,.wfms-live-status.good{background:#e5f7eb;color:#087a38}
.wfms-live-status.inactive,.wfms-live-status.unpaid,.wfms-live-status.danger{background:#feeaea;color:#c51b2b}
.wfms-live-status.unknown{background:#eef0f2;color:#6b7280}.wfms-inline-paid{color:#087a38}.wfms-inline-unpaid{color:#c51b2b}

.wfms-assistance-page .wfms-empty-state{text-align:center;padding:34px 20px;border:1px dashed #cfded4;border-radius:18px;background:#fafdfb}
.wfms-empty-state>span{display:flex;width:52px;height:52px;margin:0 auto 12px;border-radius:50%;align-items:center;justify-content:center;background:#e8f6ed;color:#0b7b3b;font-size:28px}.wfms-empty-state h3{margin:0 0 8px}.wfms-empty-state p{color:#6b7280;margin:0 0 18px}
.wfms-assistance-list{display:grid;gap:12px;margin-bottom:18px}.wfms-assistance-item{display:grid;grid-template-columns:1.5fr .8fr .8fr;gap:14px;align-items:center;padding:16px;border:1px solid #e1e9e4;border-radius:14px;background:#fff}.wfms-assistance-item span,.wfms-assistance-item small{display:block;color:#6b7280;font-size:12px}.wfms-form-back{border:0;background:none;color:#0b7438;font-weight:800;cursor:pointer;margin-bottom:12px;padding:0}.wfms-assistance-form[hidden]{display:none!important}

.wfms-doc-centre{grid-template-columns:repeat(2,minmax(0,1fr))}.wfms-doc-card{display:flex;flex-direction:column;min-height:220px}.wfms-doc-title{display:flex;align-items:center;gap:12px}.wfms-doc-title h3{margin:0 0 4px}.wfms-doc-icon{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex:0 0 46px}.wfms-doc-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.wfms-doc-icon.green{background:#e7f7ec;color:#0a7a39}.wfms-doc-icon.blue{background:#eaf2ff;color:#2563eb}.wfms-doc-icon.orange{background:#fff2e2;color:#d97706}.wfms-doc-icon.purple{background:#f3eafe;color:#7c3aed}.wfms-doc-status{font-size:12px;color:#6b7280}.wfms-doc-card p{color:#6b7280;flex:1}.wfms-doc-card>small{color:#9ca3af;margin-bottom:12px}.wfms-doc-card button:disabled{opacity:.55;cursor:not-allowed}

.wfms-notification-tick{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#e5f7eb;color:#087a38;font-weight:900;margin-left:6px}.wfms-empty-notifications{color:#6b7280;padding:16px 0}.wfms-notifications-page{min-height:auto}

.wfms-settings-intro{color:#6b7280}.wfms-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.wfms-settings-group{border:1px solid #e1e9e4;border-radius:16px;padding:18px;background:#fbfdfb}.wfms-settings-group h3{margin:0 0 12px}.wfms-settings-group>a,.wfms-language-row,.wfms-setting-switch{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #edf1ee;text-decoration:none;color:#1f2937}.wfms-settings-group>a:last-child,.wfms-language-row:last-child,.wfms-setting-switch:last-child{border-bottom:0}.wfms-settings-group>a span{flex:1}.wfms-settings-group>a.danger{color:#c51b2b}.wfms-language-row span,.wfms-setting-switch span{flex:1}.wfms-language-row b{font-size:11px;border-radius:999px;padding:4px 8px;background:#e6f7ec;color:#087a38}.wfms-language-row.disabled{opacity:.55}.wfms-setting-switch input{display:none}.wfms-setting-switch i{width:38px;height:22px;border-radius:999px;background:#d1d5db;position:relative}.wfms-setting-switch i:before{content:"";position:absolute;width:16px;height:16px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s}.wfms-setting-switch input:checked+i{background:#0a8b45}.wfms-setting-switch input:checked+i:before{transform:translateX(16px)}.wfms-account-email{margin:18px 0 0;color:#6b7280;font-size:13px}

.wfms-account-toggle{border:0;background:transparent;display:flex;align-items:center;gap:10px;padding:0;cursor:pointer;color:inherit;text-align:left}.wfms-top-avatar{position:relative}.wfms-avatar-camera{position:absolute;right:-2px;bottom:-2px;width:17px;height:17px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;font-size:9px;box-shadow:0 1px 5px rgba(0,0,0,.18)}.wfms-account-active-dot{position:absolute;right:0;top:0;width:10px;height:10px;border-radius:50%;background:#16a34a;border:2px solid #fff}.wfms-account-name small{font-size:11px;color:#0a7a39}.wfms-account-popover{display:none;position:absolute;right:24px;top:62px;width:280px;background:#fff;border:1px solid #e0e8e2;border-radius:16px;box-shadow:0 18px 45px rgba(0,0,0,.16);padding:12px;z-index:1100}.wfms-account-popover.open{display:block}.wfms-account-summary{display:flex;gap:12px;padding:8px 8px 12px;border-bottom:1px solid #eef2ef;margin-bottom:6px}.wfms-account-photo{width:46px;height:46px;border-radius:50%;overflow:hidden;background:#eef3ef;display:flex;align-items:center;justify-content:center}.wfms-account-photo img{width:100%;height:100%;object-fit:cover}.wfms-account-summary small,.wfms-account-summary em{display:block;font-size:11px;color:#6b7280}.wfms-account-summary em{font-style:normal;color:#0a7a39}.wfms-account-popover>a{display:block;padding:10px;border-radius:10px;text-decoration:none;color:#1f2937}.wfms-account-popover>a:hover{background:#f1f7f3}

.wfms-logout{display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important}.wfms-logout-icon{display:inline-flex!important;align-items:center!important;justify-content:center!important;line-height:1!important}

.wfms-modal{display:none;position:fixed;inset:0;z-index:99999}.wfms-modal.open{display:block}.wfms-modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.5)}.wfms-modal-card{position:relative;z-index:1;max-width:480px;margin:10vh auto;background:#fff;border-radius:20px;padding:30px;box-shadow:0 24px 70px rgba(0,0,0,.28);text-align:center}.wfms-modal-x{position:absolute;right:12px;top:10px;border:0;background:transparent;font-size:28px;cursor:pointer}.wfms-join-modal .wfms-logo{margin:0 auto 14px}.wfms-join-modal .wfms-logo img{max-width:150px}.wfms-modal-open{overflow:hidden}

@media(max-width:760px){
  .wfms-assistance-item{grid-template-columns:1fr 1fr}.wfms-assistance-item>div:first-child{grid-column:1/-1}
  .wfms-doc-centre,.wfms-settings-grid{grid-template-columns:1fr}.wfms-doc-card{min-height:180px}
  .wfms-account-name{display:none}.wfms-account-popover{right:8px;top:50px;width:min(290px,calc(100vw - 24px))}
  .wfms-modal-card{margin:8vh 14px;padding:26px 20px}
}

/* WFMS v3.3 credit, assistance and contribution refinements */
.wfms-contrib-summary-card.paid .wfms-summary-icon{background:#e8f7ed;color:#138a3d}
.wfms-contrib-summary-card.paid strong{color:#138a3d}
.wfms-contrib-summary-card.pending .wfms-summary-icon{background:#fff4dc;color:#d68a00}
.wfms-contrib-summary-card.pending strong{color:#c67d00}
.wfms-contrib-summary-card.danger .wfms-summary-icon{background:#feeaea;color:#d92d20}
.wfms-contrib-summary-card.danger strong{color:#d92d20}
.wfms-icon-check svg,.wfms-icon-clock svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

.wfms-assistance-item.enriched{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:start}
.wfms-assistance-field small,.wfms-assistance-comment small{display:block;color:#6b7280;font-size:12px;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}
.wfms-assistance-field strong{font-size:16px;color:#172033}
.wfms-assistance-comment{grid-column:1/-1;padding-top:14px;border-top:1px solid #edf1ed}
.wfms-assistance-comment p{margin:0;color:#394150;line-height:1.55}
.wfms-assistance-status{display:inline-flex;align-items:center;border-radius:999px;padding:7px 12px;font-weight:700;font-size:13px}
.wfms-assistance-status.approved{background:#e7f7ec;color:#137b39}
.wfms-assistance-status.review{background:#fff1d6;color:#a96800}
.wfms-assistance-status.rejected{background:#fde8e8;color:#ba1f2d}

.wfms-credit-progress-note{margin-top:10px;color:rgba(255,255,255,.86);font-size:13px}
.wfms-credit-overview{margin:18px 0;background:#fff;border:1px solid #e6ece8;border-radius:18px;padding:20px}
.wfms-credit-overview h3{margin:0 0 14px;color:#183d29}
.wfms-credit-overview-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.wfms-credit-overview-grid>div{display:grid;grid-template-columns:auto 1fr;column-gap:10px;row-gap:2px;align-items:center;background:#f8fbf8;border:1px solid #e8eee9;border-radius:14px;padding:13px}
.wfms-credit-overview-grid span{grid-row:1/3;font-size:20px}
.wfms-credit-overview-grid small{color:#6b7280}
.wfms-credit-overview-grid strong{color:#172033;font-size:15px}
.wfms-credit-timeline{display:flex;align-items:flex-start;gap:0;margin:18px 0 22px;padding:16px 10px 4px;overflow-x:auto}
.wfms-credit-timeline span{position:relative;min-width:100px;text-align:center;flex:1;color:#8b9490}
.wfms-credit-timeline span:not(:last-child):after{content:"";position:absolute;top:15px;left:60%;right:-40%;height:3px;background:#dfe6e1}
.wfms-credit-timeline i{position:relative;z-index:1;display:grid;place-items:center;width:32px;height:32px;margin:0 auto 8px;border-radius:50%;background:#eef2ef;color:#77807b;font-style:normal;font-weight:800}
.wfms-credit-timeline .paid i{background:#19a54a;color:#fff}
.wfms-credit-timeline .paid:not(:last-child):after{background:#19a54a}
.wfms-credit-timeline .current i{background:#fff4d8;color:#b57300;border:2px solid #edb43d}
.wfms-credit-timeline small{font-size:11px;white-space:nowrap}
.wfms-credit-request-form[hidden]{display:none!important}
.wfms-credit-actions{display:flex;gap:12px;flex-wrap:wrap}

@media(max-width:900px){
 .wfms-credit-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .wfms-assistance-item.enriched{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){
 .wfms-credit-overview{padding:14px}
 .wfms-credit-overview-grid{grid-template-columns:1fr}
 .wfms-assistance-item.enriched{grid-template-columns:1fr;gap:12px}
 .wfms-credit-actions .wfms-btn{width:100%;justify-content:center}
 .wfms-credit-timeline span{min-width:82px}
}

/* WFMS v3.4 — single-column mobile drawer and unified logout confirmation */
@media(max-width:760px){
  .wfms-sidebar nav{
    display:flex!important;
    flex-direction:column!important;
    gap:6px!important;
  }
  .wfms-sidebar nav>a{
    width:100%!important;
    min-height:48px!important;
    margin:0!important;
    padding:10px 14px!important;
    gap:12px!important;
    border-radius:11px!important;
    font-size:14px!important;
    line-height:1.2!important;
    justify-content:flex-start!important;
  }
  .wfms-sidebar nav>a .wfms-nav-icon{
    width:24px!important;
    height:24px!important;
    flex:0 0 24px!important;
  }
  .wfms-sidebar nav>a .wfms-nav-label{
    text-align:left!important;
    white-space:normal!important;
  }
  .wfms-sidebar nav .wfms-logout-wrap{
    width:100%!important;
    margin-top:10px!important;
  }
  .wfms-sidebar nav .wfms-logout{
    width:100%!important;
    min-height:48px!important;
    margin:0!important;
    padding:10px 14px!important;
    font-size:14px!important;
    border-radius:11px!important;
  }
}

.wfms-account-logout{
  display:block;
  width:100%;
  padding:10px;
  border:0;
  border-radius:10px;
  background:transparent;
  color:#b42318;
  text-align:left;
  font:inherit;
  cursor:pointer;
}
.wfms-account-logout:hover{background:#fff1f1}

.wfms-global-logout-modal{
  position:fixed;
  inset:0;
  z-index:99999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:rgba(15,23,42,.48);
  backdrop-filter:blur(2px);
}
.wfms-global-logout-modal.open{display:flex}
.wfms-global-logout-card{
  width:min(420px,100%);
  background:#fff;
  border:1px solid #dce8df;
  border-radius:20px;
  padding:24px;
  text-align:center;
  box-shadow:0 24px 70px rgba(0,0,0,.25);
  animation:wfmsLogoutIn .18s ease-out;
}
@keyframes wfmsLogoutIn{from{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:none}}
.wfms-global-logout-symbol{
  width:46px;
  height:46px;
  margin:0 auto 10px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#eaf7ee;
  color:#0f6b38;
  font-size:24px;
  font-weight:800;
}
.wfms-global-logout-card h3{margin:0 0 8px;font-size:22px;color:#1f2937}
.wfms-global-logout-card p{margin:0 0 6px;font-size:15px;line-height:1.5;color:#374151}
.wfms-global-logout-card small{display:block;color:#6b7280;line-height:1.45}
.wfms-global-logout-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}
.wfms-global-logout-cancel,.wfms-global-logout-confirm{
  min-height:44px;
  border-radius:11px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  font-weight:800;
  text-decoration:none;
  font-size:14px;
}
.wfms-global-logout-cancel{background:#fff;color:#374151;border:1px solid #d5ddd7;cursor:pointer}
.wfms-global-logout-confirm{background:#0f6b38;color:#fff!important;border:1px solid #0f6b38}
body.wfms-logout-open{overflow:hidden}
@media(max-width:480px){
  .wfms-global-logout-card{padding:20px 16px;border-radius:17px}
  .wfms-global-logout-actions{grid-template-columns:1fr;gap:8px}
}

/* WFMS v3.5 consolidated member portal */
.wfms-profile-hero .wfms-photo-form{display:none!important}
.wfms-setting-tile{width:100%;border:1px solid #e7eee9;background:#fff;border-radius:16px;padding:16px;display:flex;gap:14px;align-items:center;text-align:left;color:#173c2a;cursor:pointer;text-decoration:none;transition:.18s ease;box-shadow:0 5px 18px rgba(20,70,45,.05)}
.wfms-setting-tile:hover{transform:translateY(-1px);border-color:#74b88c;box-shadow:0 8px 22px rgba(20,70,45,.09)}
.wfms-setting-tile>span{width:38px;height:38px;border-radius:12px;background:#edf7f0;display:grid;place-items:center;font-size:19px;flex:0 0 38px}
.wfms-setting-tile div{display:flex;flex-direction:column;gap:3px}.wfms-setting-tile strong{font-size:15px}.wfms-setting-tile small{color:#708077;font-size:12px;line-height:1.35}.wfms-setting-tile.danger{border-color:#f1d6d6}.wfms-setting-tile.danger>span{background:#fff0f0;color:#b51e1e}.wfms-setting-tile.danger strong{color:#a91616}
.wfms-settings-panel[hidden],.wfms-settings-home[hidden]{display:none!important}.wfms-settings-panel{padding-top:4px}.wfms-settings-panel h3{margin:12px 0 18px}.wfms-settings-panel .wfms-form-back{margin-bottom:8px}
.wfms-photo-settings{display:flex;flex-direction:column;align-items:center;gap:16px;padding:24px;background:#f7faf8;border:1px solid #e3ece6;border-radius:18px}.wfms-photo-settings>img,.wfms-photo-settings>.wfms-avatar-icon{width:120px;height:120px;border-radius:50%;object-fit:cover;display:grid;place-items:center;background:#e9f5ed;font-size:48px}.wfms-photo-settings .wfms-photo-form{display:flex;flex-direction:column;align-items:center;gap:8px}.wfms-photo-settings small{color:#748078}
.wfms-password-form{max-width:520px;display:grid;gap:14px}.wfms-password-form label{display:grid;gap:7px;font-weight:600;color:#234a34}.wfms-password-form input{width:100%;border:1px solid #d9e4dc;border-radius:12px;padding:12px 14px;font-size:15px;background:#fff}
.wfms-office-help{font-size:15px;color:#4f6256}.wfms-office-contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}.wfms-office-contact-grid>a,.wfms-office-contact-grid>div{border:1px solid #e2ebe5;border-radius:15px;padding:14px;display:flex;gap:11px;align-items:flex-start;text-decoration:none;background:#fff;color:#173c2a}.wfms-office-contact-grid>*>span{font-size:22px}.wfms-office-contact-grid small{display:block;color:#78857d}.wfms-office-contact-grid strong{display:block;margin-top:2px;font-size:13px;line-height:1.4}.wfms-office-notice{background:#fff8e6;border:1px solid #f0d99a;color:#76570e;border-radius:13px;padding:12px 14px;font-weight:700;margin:14px 0}.wfms-office-hours{display:grid;gap:8px}.wfms-office-hours>div{display:grid;grid-template-columns:110px 1fr auto;gap:12px;align-items:center;border:1px solid #e6ece8;border-radius:12px;padding:10px 12px;background:#fff}.wfms-office-hours span{color:#53645a}.wfms-office-hours b{font-size:11px;border-radius:999px;padding:4px 8px}.wfms-office-hours .open b{background:#e6f6eb;color:#19743c}.wfms-office-hours .closed b{background:#f3f4f4;color:#6f7772}.wfms-contact-tip{margin-top:14px;color:#5f6f65;font-size:13px}
.wfms-notification-tick{display:inline-grid!important;place-items:center;width:19px;height:19px;border-radius:50%;background:#1e9d4d;color:#fff;font-weight:800;font-size:12px;vertical-align:middle;margin-left:5px}
.wfms-assistance-item.enriched{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.wfms-assistance-comment{grid-column:1/-1}.wfms-assistance-status{display:inline-flex;align-items:center;width:max-content;border-radius:999px;padding:5px 9px;font-weight:700;font-size:12px}.wfms-assistance-status.approved{background:#e7f7eb;color:#16713a}.wfms-assistance-status.review,.wfms-assistance-status.pending{background:#fff5dc;color:#956300}.wfms-assistance-status.rejected{background:#fde7e7;color:#b01f1f}
.wfms-contrib-summary-card.paid strong,.wfms-contrib-summary-card.paid em{color:#16863f}.wfms-contrib-summary-card.paid .wfms-summary-icon{background:#e5f7eb;color:#16863f}.wfms-contrib-summary-card.danger strong,.wfms-contrib-summary-card.danger em{color:#c42323}.wfms-contrib-summary-card.danger .wfms-summary-icon{background:#fde8e8;color:#c42323}.wfms-contrib-summary-card.pending strong,.wfms-contrib-summary-card.pending em{color:#a06b00}.wfms-contrib-summary-card.pending .wfms-summary-icon{background:#fff3d8;color:#a06b00}
.wfms-doc-title{display:flex;align-items:center;gap:12px}.wfms-doc-title .wfms-doc-icon{flex:0 0 42px}
@media(max-width:700px){
  .wfms-settings-grid{grid-template-columns:1fr!important;gap:9px!important}.wfms-setting-tile{padding:12px 13px;border-radius:13px}.wfms-setting-tile>span{width:34px;height:34px;flex-basis:34px;font-size:17px}.wfms-setting-tile strong{font-size:14px}.wfms-setting-tile small{font-size:11px}.wfms-office-contact-grid{grid-template-columns:1fr}.wfms-office-hours>div{grid-template-columns:82px 1fr;gap:7px}.wfms-office-hours b{grid-column:2}.wfms-assistance-item.enriched{grid-template-columns:1fr 1fr;gap:8px}.wfms-assistance-comment{grid-column:1/-1}.wfms-photo-settings{padding:18px}.wfms-photo-settings>img,.wfms-photo-settings>.wfms-avatar-icon{width:92px;height:92px;font-size:36px}
}

.wfms-member-qr-inline{display:flex;align-items:center;gap:16px;margin-top:10px}.wfms-member-qr-inline img{width:116px;height:116px;object-fit:contain;background:#fff;border:1px solid #dfe7e2;border-radius:12px;padding:6px}.wfms-member-qr-inline p{margin:0 0 10px}.wfms-profile-qr-card{align-items:flex-start}@media(max-width:640px){.wfms-member-qr-inline{align-items:flex-start;flex-direction:column}.wfms-member-qr-inline img{width:140px;height:140px}.wfms-member-qr-card{align-items:flex-start;flex-direction:column}.wfms-member-qr-card img{width:180px;height:180px}}


/* WTFMS 1.1.0 — Credit decision centre */
.wtfms-decision-centre,.wtfms-requests-admin{max-width:1440px}.wtfms-decision-top,.wtfms-requests-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin:18px 0}.wtfms-decision-top h1,.wtfms-requests-head h1{margin:8px 0 4px}.wtfms-back-link{text-decoration:none;font-weight:700;color:#087443}.wtfms-decision-status{display:inline-flex;align-items:center;padding:8px 13px;border-radius:999px;font-weight:800;font-size:12px;background:#eef2f7;color:#475569}.wtfms-decision-status.pending{background:#fff7ed;color:#9a4b0b}.wtfms-decision-status.review{background:#e0f2fe;color:#075985}.wtfms-decision-status.info{background:#ffedd5;color:#c2410c}.wtfms-decision-status.approved,.wtfms-decision-status.completed{background:#dcfce7;color:#166534}.wtfms-decision-status.rejected{background:#fee2e2;color:#991b1b}.wtfms-decision-grid{display:grid;grid-template-columns:.85fr 1.15fr 1fr;gap:16px}.wtfms-decision-card{background:#fff;border:1px solid #dfe7e2;border-radius:18px;padding:20px;box-shadow:0 10px 30px rgba(15,73,49,.06)}.wtfms-decision-card h2{margin-top:0}.wtfms-decision-card dl{margin:0}.wtfms-decision-card dl>div{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid #edf2ef}.wtfms-decision-card dt{color:#64748b}.wtfms-decision-card dd{margin:0;font-weight:800;text-align:right}.wtfms-decision-member{display:flex;align-items:center;gap:12px;padding:12px;background:#f3faf6;border-radius:14px;margin-bottom:10px}.wtfms-decision-member .avatar{width:48px;height:48px;border-radius:50%;background:#dcfce7;display:grid;place-items:center;font-size:24px}.wtfms-decision-member strong,.wtfms-decision-member span{display:block}.wtfms-decision-message{background:#f8fafc;border-radius:12px;padding:14px}.wtfms-decision-card.action label{display:block;font-weight:700;margin:13px 0 6px}.wtfms-decision-card.action select,.wtfms-decision-card.action textarea{width:100%}.wtfms-info-checklist{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0;padding:14px;border-radius:12px;background:#fff7ed}.wtfms-info-checklist strong{grid-column:1/-1}.wtfms-info-checklist label{margin:0!important;font-weight:500!important}.wtfms-decision-card.history{margin-top:16px}.wtfms-request-filters{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.wtfms-request-filters a{background:#fff;border:1px solid #dfe7e2;border-radius:999px;padding:8px 13px;text-decoration:none;color:#334155;font-weight:700}.wtfms-request-filters a.active{background:#087443;color:#fff;border-color:#087443}.wtfms-request-admin-list{display:grid;gap:10px}.wtfms-request-admin-list article{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:16px;background:#fff;border:1px solid #dfe7e2;border-radius:16px;padding:16px}.wtfms-request-admin-list h3{margin:4px 0}.wtfms-request-admin-list p,.wtfms-request-admin-list small{margin:0;color:#64748b}.wfms-roadmap{display:flex;align-items:flex-start;gap:0;margin:18px 0;overflow-x:auto;padding:5px}.wfms-road-step{position:relative;min-width:130px;flex:1;text-align:center;color:#94a3b8}.wfms-road-step:not(:last-child):after{content:"";position:absolute;top:18px;left:60%;right:-40%;height:3px;background:#dbe3df}.wfms-road-step>span{position:relative;z-index:2;margin:auto;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#e5e7eb;font-weight:900}.wfms-road-step strong{display:block;margin-top:8px;font-size:12px}.wfms-road-step.done,.wfms-road-step.current{color:#087443}.wfms-road-step.done>span,.wfms-road-step.current>span{background:#dcfce7;border:2px solid #0aa45f}.wfms-road-step.done:not(:last-child):after{background:#0aa45f}.wfms-road-step.current>span{box-shadow:0 0 0 5px rgba(10,164,95,.12)}.wfms-road-step.rejected{color:#b91c1c}.wfms-road-step.rejected>span{background:#fee2e2;border:2px solid #ef4444}.wfms-history-timeline>div{display:flex;gap:12px;position:relative;padding:0 0 18px}.wfms-history-timeline i{width:12px;height:12px;border-radius:50%;background:#0aa45f;margin-top:5px}.wfms-history-timeline p{margin:0}.wfms-history-timeline strong,.wfms-history-timeline span,.wfms-history-timeline em{display:block}.wfms-history-timeline span{font-size:12px;color:#64748b}.wfms-history-timeline em{font-style:normal;margin-top:4px}.wfms-request-journey-card{background:#fff;border:1px solid #dfe7e2;border-radius:18px;padding:18px;margin:14px 0}.wfms-request-journey-head{display:flex;justify-content:space-between;gap:20px}.wfms-request-journey-head small,.wfms-request-journey-head span{display:block;color:#64748b}.wfms-request-journey-head h4{margin:4px 0}.wfms-request-journey-head>b{height:max-content;padding:7px 11px;border-radius:999px;background:#eef2f7}.wfms-member-decision-message,.wfms-requested-items{margin-top:12px;padding:13px;border-radius:12px;background:#fff7ed}.wfms-member-response-form{margin-top:14px;padding:14px;background:#f3faf6;border-radius:12px}.wfms-member-response-form label{display:block;font-weight:700;margin-bottom:6px}.wfms-member-response-form textarea{width:100%;margin-bottom:10px}
@media(max-width:1100px){.wtfms-decision-grid{grid-template-columns:1fr 1fr}.wtfms-decision-card.action{grid-column:1/-1}}@media(max-width:782px){.wtfms-decision-grid{grid-template-columns:1fr}.wtfms-decision-card.action{grid-column:auto}.wtfms-decision-top,.wtfms-request-journey-head{display:block}.wtfms-info-checklist{grid-template-columns:1fr}.wtfms-request-admin-list article{grid-template-columns:1fr}.wfms-road-step{min-width:115px}}


/* NTIMA OS 1.5.2 — Portail de connexion premium */
body:has(.wfms-login-page){background:#f4f7f5!important}
body:has(.wfms-login-page) #main,
body:has(.wfms-login-page) #content-wrap,
body:has(.wfms-login-page) .content-area,
body:has(.wfms-login-page) .site-main{max-width:none!important;width:100%!important;padding:0!important;margin:0!important}
.wfms-login-page{--login-green:#007b3d;--login-dark:#00572c;--login-soft:#eaf7ef;max-width:1180px;margin:26px auto 0;padding:0 20px;font-family:Inter,Arial,sans-serif;color:#17212b}
.wfms-login-page-head{display:flex;align-items:center;justify-content:center;gap:14px;text-align:left;margin:0 0 24px}
.wfms-login-title-icon{font-size:30px;color:var(--login-green)}
.wfms-login-page-head h1{margin:0;color:#087443;font-size:27px;letter-spacing:.02em;font-weight:800}
.wfms-login-page-head p{margin:6px 0 0;color:#586473;font-size:17px}
.wfms-login-shell{display:grid;grid-template-columns:43% 57%;background:#fff;border:1px solid #e4ebe7;border-radius:22px;overflow:hidden;box-shadow:0 18px 50px rgba(20,60,42,.12)}
.wfms-login-brand-panel{position:relative;overflow:hidden;background:linear-gradient(160deg,#00773b,#005126);color:#fff;padding:30px 40px 34px;min-height:760px}
.wfms-login-brand-panel:after{content:"";position:absolute;left:0;right:0;bottom:0;height:150px;background:linear-gradient(transparent,rgba(0,35,15,.25));pointer-events:none}
.wfms-login-official-logo{display:block;width:205px;height:205px;object-fit:contain;margin:0 auto 18px;background:#fff;border:2px solid #0ec26a;border-radius:50%;padding:2px}
.wfms-login-brand-panel h2{text-align:center;color:#fff;font-size:29px;line-height:1.15;margin:12px 0 8px;font-weight:850}
.wfms-login-motto{text-align:center;color:#f2c735;font-size:23px;font-style:italic;font-weight:700;margin:13px 0 30px}
.wfms-login-welcome{font-size:16px;line-height:1.55;margin-bottom:21px}
.wfms-login-welcome strong{display:block;font-size:17px;margin-bottom:9px}.wfms-login-welcome p{margin:0}
.wfms-login-benefits{list-style:none;padding:0;margin:16px 0 0;display:grid;gap:17px;position:relative;z-index:1}
.wfms-login-benefits li{display:flex;gap:13px;align-items:flex-start}.wfms-login-benefits li>span{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.13);font-size:20px}.wfms-login-benefits strong,.wfms-login-benefits small{display:block}.wfms-login-benefits small{font-size:13px;line-height:1.5;color:rgba(255,255,255,.9);margin-top:2px}
.wfms-login-form-panel{padding:44px 46px 32px;display:flex;flex-direction:column;justify-content:center;min-width:0}
.wfms-login-shield{width:64px;height:64px;margin:0 auto 10px;display:grid;place-items:center;border-radius:50%;background:#e4f6eb;color:#087443;font-size:28px;font-weight:900}
.wfms-login-heading{text-align:center;margin-bottom:22px}.wfms-login-heading h2{font-size:31px;color:#131b25;margin:0 0 8px}.wfms-login-heading p{font-size:16px;line-height:1.45;color:#5e6976;margin:0}
.wfms-um-login .um{max-width:none!important}.wfms-um-login .um-form{padding:0!important}
.wfms-um-login .um-field{margin-bottom:17px!important}.wfms-um-login .um-field-label label{font-size:15px!important;font-weight:750!important;color:#1f2937!important}
.wfms-um-login input[type=text],.wfms-um-login input[type=password],.wfms-um-login input[type=email],.wfms-um-login #user_login,.wfms-um-login #user_pass{box-sizing:border-box!important;width:100%!important;min-height:58px!important;padding:0 52px 0 16px!important;border:1px solid #d5ddd9!important;border-radius:13px!important;background:#fff!important;font-size:16px!important;box-shadow:none!important}
.wfms-password-wrap{position:relative;display:block;width:100%}.wfms-password-wrap>input{box-sizing:border-box;width:100%;padding-right:58px!important}.wfms-password-toggle{position:absolute;right:7px;top:50%;transform:translateY(-50%);width:40px;height:40px;padding:0;border:0;border-radius:50%;background:#e9f7ef;color:#087443;display:grid;place-items:center;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;font-size:20px;line-height:1;cursor:pointer;z-index:5}.wfms-password-toggle:hover{background:#d8f0e2}.wfms-password-toggle:focus-visible{outline:3px solid rgba(8,116,67,.25)}input[type=password]::-ms-reveal,input[type=password]::-ms-clear{display:none!important;width:0!important;height:0!important}
/* NTIMA OS v10.8.13 — member login uses one monkey password control only.
 * Hide the browser/Ultimate Member reveal controls so they cannot duplicate
 * the NTIMA OS toggle on Edge, Chrome, desktop or installed PWAs. */
.wfms-login-page input[type=password]::-ms-reveal,
.wfms-login-page input[type=password]::-ms-clear,
.wfms-login-compact input[type=password]::-ms-reveal,
.wfms-login-compact input[type=password]::-ms-clear{display:none!important;width:0!important;height:0!important}
.wfms-login-page .um-toggle-password,
.wfms-login-page .um-field-password .um-icon-android-checkbox-outline-blank,
.wfms-login-page .um-field-password .um-faicon-eye,
.wfms-login-page .um-field-password .um-faicon-eye-slash,
.wfms-login-compact .um-toggle-password,
.wfms-login-compact .um-field-password .um-icon-android-checkbox-outline-blank,
.wfms-login-compact .um-field-password .um-faicon-eye,
.wfms-login-compact .um-field-password .um-faicon-eye-slash{display:none!important;visibility:hidden!important;pointer-events:none!important}
.wfms-login-page .wfms-password-toggle,
.wfms-login-compact .wfms-password-toggle{font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif!important;font-size:20px!important}
.wfms-caps-warning{display:none;color:#9a5b00;font-size:12px;margin-top:7px}.wfms-caps-warning.show{display:block}
.wfms-um-login input[type=submit],.wfms-um-login .um-button,.wfms-login-entry .login-submit input{width:100%!important;min-height:58px!important;border-radius:13px!important;background:linear-gradient(90deg,#087443,#008b47)!important;border:0!important;color:#fff!important;font-size:17px!important;font-weight:800!important;box-shadow:0 8px 18px rgba(8,116,67,.18)!important}
.wfms-login-submitting{opacity:.72;pointer-events:none}.wfms-login-submitting input[type=submit],.wfms-login-submitting .um-button{position:relative;color:transparent!important}.wfms-login-submitting input[type=submit]:after,.wfms-login-submitting .um-button:after{content:"";position:absolute;left:50%;top:50%;width:20px;height:20px;margin:-10px;border:3px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:wfms-spin .7s linear infinite}@keyframes wfms-spin{to{transform:rotate(360deg)}}
.wfms-um-login .um-field-checkbox-option,.wfms-um-login .um-link-alt,.wfms-um-login a{color:#087443!important}
.wfms-login-divider{display:flex;align-items:center;gap:12px;color:#76817b;margin:18px 0}.wfms-login-divider:before,.wfms-login-divider:after{content:"";height:1px;background:#dde5e1;flex:1}
.wfms-login-join-button{width:100%;min-height:54px;border:1px solid #d5ddd9;border-radius:13px;background:#fff;color:#111827;font-size:16px;font-weight:750;cursor:pointer}.wfms-login-join-button:hover{border-color:#087443;background:#fbfdfc}
.wfms-login-security-box{display:flex;gap:16px;align-items:flex-start;padding:16px 18px;margin-top:22px;border-radius:13px;background:#edf8f1;color:#193b2d}.wfms-login-security-box>span{font-size:29px}.wfms-login-security-box strong{display:block;color:#087443;margin-bottom:4px}.wfms-login-security-box p{font-size:13px;line-height:1.45;margin:0;color:#4c5d55}
.wfms-login-trust-row{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:20px 28px;border-top:1px solid #e5ece8;background:#fff}.wfms-login-trust-row>div{display:flex;gap:10px;align-items:flex-start}.wfms-login-trust-row>div>span{font-size:25px;color:#087443}.wfms-login-trust-row p{margin:0}.wfms-login-trust-row strong,.wfms-login-trust-row small{display:block}.wfms-login-trust-row strong{font-size:12px;color:#087443}.wfms-login-trust-row small{font-size:11px;line-height:1.35;color:#59665f;margin-top:2px}
.wfms-login-footer{max-width:1180px;margin:22px auto 0;padding:26px 42px 16px;display:grid;grid-template-columns:1.25fr .9fr;gap:38px;background:linear-gradient(110deg,#006532,#008543);color:#fff;border-radius:20px 20px 0 0;font-family:Inter,Arial,sans-serif}
.wfms-login-verify{display:flex;gap:18px;align-items:center}.wfms-login-verify img{width:115px;height:115px;object-fit:contain;background:#fff;border-radius:12px;padding:6px}.wfms-login-footer h3{margin:0 0 8px;color:#fff;font-size:18px}.wfms-login-footer p{margin:0;font-size:13px;line-height:1.55;color:rgba(255,255,255,.92)}.wfms-login-help{border-left:1px solid rgba(255,255,255,.28);padding-left:34px;display:flex;flex-direction:column;justify-content:center}.wfms-login-help a,.wfms-login-help span{color:#fff;text-decoration:none;margin-top:7px;font-size:13px}.wfms-login-copyright{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.22);padding-top:13px;text-align:center;font-size:12px}.wfms-login-copyright b{color:#f2c735;font-style:italic;margin-left:12px}
.wfms-login-page .wfms-modal-card img{max-width:100px;display:block;margin:0 auto 10px}
@media(max-width:900px){.wfms-login-page{padding:0 12px;margin-top:14px}.wfms-login-page-head h1{font-size:21px}.wfms-login-page-head p{font-size:14px}.wfms-login-shell{grid-template-columns:1fr}.wfms-login-brand-panel{min-height:auto;padding:24px 25px}.wfms-login-official-logo{width:130px;height:130px}.wfms-login-brand-panel h2{font-size:23px}.wfms-login-motto{font-size:19px;margin-bottom:19px}.wfms-login-benefits{grid-template-columns:1fr 1fr}.wfms-login-form-panel{padding:30px 28px}.wfms-login-trust-row{grid-template-columns:1fr 1fr}.wfms-login-footer{margin-top:14px;border-radius:16px 16px 0 0;grid-template-columns:1fr;padding:24px}.wfms-login-help{border-left:0;border-top:1px solid rgba(255,255,255,.25);padding:18px 0 0}.wfms-login-copyright{grid-column:auto}}
@media(max-width:560px){.wfms-login-page-head{align-items:flex-start}.wfms-login-title-icon{font-size:24px}.wfms-login-page-head h1{font-size:18px}.wfms-login-shell{border-radius:17px}.wfms-login-brand-panel{padding:22px 20px}.wfms-login-benefits{grid-template-columns:1fr}.wfms-login-form-panel{padding:27px 18px}.wfms-login-heading h2{font-size:27px}.wfms-login-trust-row{grid-template-columns:1fr;padding:18px}.wfms-login-verify{align-items:flex-start}.wfms-login-verify img{width:92px;height:92px}.wfms-login-footer{padding:20px 16px}.wfms-login-copyright b{display:block;margin:7px 0 0}.wfms-um-login input[type=text],.wfms-um-login input[type=password],.wfms-um-login input[type=email],.wfms-um-login #user_login,.wfms-um-login #user_pass{min-height:54px!important}}


/* WTFMS 1.5.3 — compact member access, real Foundation imagery and internal password reset */
body:has(.wfms-login-compact){background:#f5f8f6!important}
body:has(.wfms-login-compact) #main,body:has(.wfms-login-compact) #content-wrap,body:has(.wfms-login-compact) .content-area,body:has(.wfms-login-compact) .site-main{max-width:none!important;width:100%!important;padding:0!important;margin:0!important}
.wfms-login-compact{min-height:100vh;max-width:none;margin:0;padding:14px 16px 8px;background:radial-gradient(circle at 12% 10%,rgba(0,190,104,.16),transparent 28%),radial-gradient(circle at 88% 84%,rgba(8,116,67,.11),transparent 30%),linear-gradient(145deg,#edf8f2,#fbfdfc 50%,#e6f4ec);font-family:Inter,Arial,sans-serif;color:#17212b;box-sizing:border-box}
.wfms-preauth-neutral{position:relative;overflow:hidden}.wfms-preauth-neutral:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(8,116,67,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(8,116,67,.035) 1px,transparent 1px);background-size:36px 36px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.72),transparent 94%)}.wfms-preauth-neutral>*{position:relative;z-index:1}
.wfms-login-hero{max-width:880px;margin:0 auto 10px;display:flex;align-items:center;justify-content:center;gap:14px;text-align:left}.wfms-login-top-logo{width:154px;height:58px;object-fit:contain;border:1px solid rgba(8,116,67,.2);border-radius:14px;background:rgba(255,255,255,.94);padding:7px 12px;box-shadow:0 9px 26px rgba(8,84,57,.1)}.wfms-login-hero h1{margin:0;color:#087443;font-size:24px;line-height:1.15}.wfms-login-hero p{margin:4px 0;color:#475569;font-size:13px}.wfms-login-hero b{display:block;color:#087443;font-size:15px;font-style:italic;margin-top:3px}
.wfms-login-compact-card{max-width:650px;margin:0 auto;background:rgba(255,255,255,.97);border:1px solid rgba(220,229,224,.95);border-radius:18px;box-shadow:0 15px 38px rgba(20,60,42,.13);overflow:hidden}.wfms-login-compact .wfms-login-form-panel{padding:18px 28px 0;display:block}.wfms-login-compact .wfms-login-shield{width:38px;height:38px;font-size:18px;margin:0 auto 4px}.wfms-login-compact .wfms-login-heading{margin-bottom:10px}.wfms-login-compact .wfms-login-heading h2{font-size:24px;margin:0 0 3px}.wfms-login-compact .wfms-login-heading p{font-size:13px;line-height:1.35}
.wfms-login-compact .wfms-um-login .um{margin-bottom:0!important}.wfms-login-compact .wfms-um-login .um-field{margin-bottom:9px!important}.wfms-login-compact .wfms-um-login .um-field-label{margin-bottom:4px!important}.wfms-login-compact .wfms-um-login .um-field-label label{font-size:13px!important}.wfms-login-compact .wfms-um-login input[type=text],.wfms-login-compact .wfms-um-login input[type=password],.wfms-login-compact .wfms-um-login input[type=email],.wfms-login-compact .wfms-um-login #user_login,.wfms-login-compact .wfms-um-login #user_pass{min-height:44px!important;height:44px!important;font-size:14px!important;border-radius:10px!important}.wfms-login-compact .wfms-um-login input[type=submit],.wfms-login-compact .wfms-um-login .um-button,.wfms-login-compact .login-submit input{min-height:44px!important;height:44px!important;font-size:15px!important;border-radius:10px!important}.wfms-login-compact .um-col-alt-b,.wfms-login-compact .um-field-c{margin-top:4px!important;margin-bottom:4px!important}.wfms-login-compact .um-link-alt{display:none!important}.wfms-login-inline-links{text-align:right;margin:-2px 0 5px}.wfms-login-inline-links a{color:#087443;text-decoration:none;font-size:12px;font-weight:700}
.wfms-login-compact .wfms-login-divider{margin:7px 0;font-size:12px}.wfms-login-compact .wfms-login-join-button{min-height:42px;height:42px;border-radius:10px;font-size:14px}.wfms-login-trust-compact{margin:12px -28px 0;padding:10px 18px;display:grid;grid-template-columns:repeat(4,1fr);gap:5px;border-top:1px solid #e5ece8;background:#fbfdfc}.wfms-login-trust-compact span{text-align:center;color:#315247;font-size:10px;font-weight:650;line-height:1.25}
.wfms-login-mobile-extra{max-width:650px;margin:8px auto 0;background:rgba(255,255,255,.96);border:1px solid #dfe8e3;border-radius:12px;padding:0 12px}.wfms-login-mobile-extra summary{cursor:pointer;padding:9px 2px;color:#087443;font-size:12px;font-weight:750}.wfms-login-extra-content{display:flex;align-items:center;gap:12px;padding:2px 0 10px}.wfms-login-extra-content img{width:64px;height:64px;object-fit:contain}.wfms-login-extra-content strong,.wfms-login-extra-content a,.wfms-login-extra-content span{display:block}.wfms-login-extra-content p{margin:2px 0;font-size:11px;color:#59665f}.wfms-login-extra-content a,.wfms-login-extra-content span{font-size:11px;color:#087443;text-decoration:none}.wfms-login-mini-footer{max-width:650px;margin:7px auto 0;display:flex;justify-content:center;gap:10px;flex-wrap:wrap;color:#315247;font-size:10px}.wfms-login-mini-footer b{color:#087443;font-style:italic}
.wfms-reset-page .wfms-login-compact-card{max-width:590px}.wfms-reset-form label{display:block;margin:10px 0 5px;font-size:13px;font-weight:750}.wfms-reset-form input[type=text],.wfms-reset-form input[type=password]{box-sizing:border-box;width:100%;height:44px;border:1px solid #d5ddd9;border-radius:10px;padding:0 13px;font-size:14px}.wfms-reset-form button,.wfms-reset-primary-link{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;min-height:44px;margin-top:12px;border:0;border-radius:10px;background:linear-gradient(90deg,#087443,#008b47);color:#fff;text-decoration:none;font-size:14px;font-weight:800;cursor:pointer}.wfms-reset-form small{display:block;margin-top:6px;color:#64748b;font-size:11px}.wfms-reset-support{margin-top:12px;padding:10px 12px;border-radius:10px;background:#edf8f1;color:#315247}.wfms-reset-support strong{display:block;font-size:12px}.wfms-reset-support p{margin:3px 0;font-size:11px}.wfms-reset-support a,.wfms-reset-back{color:#087443;font-size:11px;font-weight:700;text-decoration:none}.wfms-reset-back{display:inline-block;margin-top:10px}.wfms-reset-message{padding:10px 12px;border-radius:10px;font-size:12px;margin-bottom:9px}.wfms-reset-message.success{background:#e8f7ee;color:#166534}.wfms-reset-message.error{background:#feecec;color:#991b1b}
@media(max-width:700px){.wfms-login-compact{padding:8px 9px 5px;background-attachment:scroll}.wfms-login-hero{margin-bottom:6px;gap:8px}.wfms-login-top-logo{width:112px;height:43px;padding:5px 8px;border-radius:10px}.wfms-login-hero h1{font-size:17px}.wfms-login-hero p{display:none}.wfms-login-hero b{font-size:12px;margin-top:1px}.wfms-login-compact-card{border-radius:14px}.wfms-login-compact .wfms-login-form-panel{padding:12px 14px 0}.wfms-login-compact .wfms-login-shield{display:none}.wfms-login-compact .wfms-login-heading{margin-bottom:7px}.wfms-login-compact .wfms-login-heading h2{font-size:20px}.wfms-login-compact .wfms-login-heading p{font-size:11px}.wfms-login-compact .wfms-um-login .um-field{margin-bottom:6px!important}.wfms-login-compact .wfms-um-login input[type=text],.wfms-login-compact .wfms-um-login input[type=password],.wfms-login-compact .wfms-um-login input[type=email],.wfms-login-compact .wfms-um-login #user_login,.wfms-login-compact .wfms-um-login #user_pass{min-height:40px!important;height:40px!important;font-size:13px!important}.wfms-login-compact .wfms-um-login input[type=submit],.wfms-login-compact .wfms-um-login .um-button,.wfms-login-compact .login-submit input{min-height:40px!important;height:40px!important}.wfms-login-trust-compact{margin:8px -14px 0;padding:7px 5px}.wfms-login-trust-compact span{font-size:8.5px}.wfms-login-mobile-extra{margin-top:5px}.wfms-login-mini-footer{margin-top:4px;font-size:8.5px}.wfms-login-compact .wfms-login-divider{margin:4px 0}.wfms-login-compact .wfms-login-join-button{height:38px;min-height:38px}.wfms-login-inline-links{margin-bottom:2px}.wfms-reset-page .wfms-login-heading p{font-size:10.5px}}
@media(max-height:680px) and (max-width:700px){.wfms-login-top-logo{width:96px;height:38px;padding:4px 7px}.wfms-login-hero h1{font-size:15px}.wfms-login-hero b{display:none}.wfms-login-compact .wfms-login-heading p{display:none}.wfms-login-trust-compact{display:none}.wfms-login-mobile-extra{display:none}.wfms-login-mini-footer{font-size:8px}.wfms-login-compact .wfms-login-form-panel{padding-top:9px}}


/* NTIMA OS 1.5.4 — compact desktop login and universal branded messages */
@media (min-width:701px){
  .wfms-login-compact{padding:7px 14px 5px;min-height:100vh}
  .wfms-login-hero{margin-bottom:5px;gap:10px}
  .wfms-login-top-logo{width:126px;height:47px}
  .wfms-login-hero h1{font-size:20px}
  .wfms-login-hero p{font-size:11.5px;margin:2px 0}
  .wfms-login-hero b{font-size:13.5px;margin-top:1px}
  .wfms-login-compact-card{max-width:620px;border-radius:15px}
  .wfms-login-compact .wfms-login-form-panel{padding:11px 23px 0}
  .wfms-login-compact .wfms-login-shield{width:29px;height:29px;font-size:14px;margin-bottom:2px}
  .wfms-login-compact .wfms-login-heading{margin-bottom:6px}
  .wfms-login-compact .wfms-login-heading h2{font-size:20px;margin-bottom:1px}
  .wfms-login-compact .wfms-login-heading p{font-size:11.5px;line-height:1.25;margin:0}
  .wfms-login-compact .wfms-um-login .um-field{margin-bottom:5px!important}
  .wfms-login-compact .wfms-um-login .um-field-label{margin-bottom:2px!important}
  .wfms-login-compact .wfms-um-login .um-field-label label{font-size:11.5px!important}
  .wfms-login-compact .wfms-um-login input[type=text],
  .wfms-login-compact .wfms-um-login input[type=password],
  .wfms-login-compact .wfms-um-login input[type=email],
  .wfms-login-compact .wfms-um-login #user_login,
  .wfms-login-compact .wfms-um-login #user_pass{min-height:38px!important;height:38px!important;font-size:13px!important}
  .wfms-login-compact .wfms-um-login input[type=submit],
  .wfms-login-compact .wfms-um-login .um-button,
  .wfms-login-compact .login-submit input{min-height:38px!important;height:38px!important;font-size:13.5px!important}
  .wfms-login-inline-links{margin:-2px 0 2px}
  .wfms-login-compact .wfms-login-divider{margin:3px 0;font-size:10.5px}
  .wfms-login-compact .wfms-login-join-button{min-height:36px;height:36px;font-size:12.5px}
  .wfms-login-trust-compact{margin:7px -23px 0;padding:6px 12px}
  .wfms-login-trust-compact span{font-size:8.5px}
  .wfms-login-mobile-extra{max-width:620px;margin-top:5px;padding:5px 10px}
  .wfms-login-mobile-extra summary{display:none}
  .wfms-login-extra-content{padding:0;gap:9px}
  .wfms-login-extra-content img{width:45px;height:45px}
  .wfms-login-extra-content p,.wfms-login-extra-content a,.wfms-login-extra-content span{font-size:9.5px;line-height:1.25}
  .wfms-login-extra-content strong{font-size:10.5px}
  .wfms-login-mini-footer{margin-top:3px;font-size:8.5px}
}
@media (max-width:700px){
  .wfms-login-mobile-extra{display:block!important;padding:5px 8px;margin-top:4px}
  .wfms-login-mobile-extra summary{display:none!important}
  .wfms-login-extra-content{display:flex!important;padding:0;gap:7px}
  .wfms-login-extra-content img{width:38px;height:38px}
  .wfms-login-extra-content strong{font-size:9px}
  .wfms-login-extra-content p,.wfms-login-extra-content a,.wfms-login-extra-content span{font-size:8px;line-height:1.15}
}
@media(max-height:680px) and (max-width:700px){
  .wfms-login-mobile-extra{display:block!important}
  .wfms-login-extra-content img{width:30px;height:30px}
  .wfms-login-extra-content p{display:none}
}
.wfms-genesis-modal{position:fixed;inset:0;z-index:100000;display:none;align-items:center;justify-content:center;padding:18px}
.wfms-genesis-modal.open{display:flex}
/* NTIMA OS v1.85 — notification deletion confirmation must share the browser top layer with the Administration alert centre. */
#wfms-notification-confirm[popover]{width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;border:0;background:transparent;box-sizing:border-box}
#wfms-notification-confirm[popover]:popover-open{display:flex}
#wfms-notification-confirm[popover]::backdrop{background:transparent}
.wfms-genesis-modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.58);backdrop-filter:blur(3px)}
.wfms-genesis-modal-card{position:relative;z-index:1;width:min(420px,calc(100vw - 32px));box-sizing:border-box;background:#fff;border:1px solid #e1e9e5;border-radius:20px;padding:26px 24px 22px;text-align:center;box-shadow:0 28px 80px rgba(0,0,0,.30);animation:wfmsGenesisModalIn .22s ease-out}
.wfms-genesis-modal-x{position:absolute;right:12px;top:9px;border:0;background:transparent;color:#64748b;font-size:25px;line-height:1;cursor:pointer}
.wfms-genesis-modal-icon{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 13px;border-radius:50%;background:#e9f7ef;color:#087443;font-size:30px;font-weight:800}
.wfms-genesis-modal-card[data-type="success"] .wfms-genesis-modal-icon{background:#e8f7ee;color:#15803d}
.wfms-genesis-modal-card[data-type="warning"] .wfms-genesis-modal-icon{background:#fff7df;color:#a16207}
.wfms-genesis-modal-card[data-type="error"] .wfms-genesis-modal-icon{background:#feecec;color:#b42318}
.wfms-genesis-modal-card h3{margin:0 0 8px;color:#17212b;font-size:22px}
.wfms-genesis-modal-card p{margin:0;color:#53615b;font-size:14px;line-height:1.55;white-space:pre-line}
.wfms-genesis-modal-security{margin:17px 0 13px;padding-top:13px;border-top:1px solid #e7ece9;color:#315247;font-size:11px}
.wfms-genesis-modal-actions{display:flex;justify-content:center;gap:9px}
.wfms-genesis-modal-primary{width:100%;min-height:43px;border:0;border-radius:11px;background:linear-gradient(90deg,#087443,#008b47);color:#fff;font-size:14px;font-weight:800;cursor:pointer}
body.wfms-genesis-modal-open{overflow:hidden}
@keyframes wfmsGenesisModalIn{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:560px){.wfms-genesis-modal-card{padding:22px 18px 18px;border-radius:17px}.wfms-genesis-modal-icon{width:52px;height:52px;font-size:24px}.wfms-genesis-modal-card h3{font-size:19px}.wfms-genesis-modal-card p{font-size:13px}}


/* NTIMA OS v1.5.5 — static portal verification and office contact */
.wfms-login-static-extra{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  max-height:none!important;
  overflow:visible!important;
  position:static!important;
}
.wfms-login-static-extra .wfms-login-extra-content{
  display:grid!important;
  grid-template-columns:minmax(0,1.35fr) minmax(190px,.65fr);
  align-items:center;
  gap:14px;
  padding:7px 2px!important;
}
.wfms-login-verify-block{
  display:flex;
  align-items:center;
  gap:11px;
  min-width:0;
}
.wfms-login-verify-block img{
  flex:0 0 auto;
}
.wfms-login-contact-block{
  border-left:1px solid #dfe8e3;
  padding-left:14px;
}
.wfms-login-contact-block strong,
.wfms-login-contact-block a,
.wfms-login-contact-block span{
  display:block;
}
.wfms-login-contact-block a,
.wfms-login-contact-block span{
  margin-top:3px;
  color:#087443;
  text-decoration:none;
  font-size:10px;
}
@media(max-width:700px){
  .wfms-login-static-extra{display:block!important}
  .wfms-login-static-extra .wfms-login-extra-content{
    grid-template-columns:1fr 1fr;
    gap:8px;
    padding:5px 0!important;
  }
  .wfms-login-verify-block{gap:7px}
  .wfms-login-verify-block img{width:38px!important;height:38px!important}
  .wfms-login-verify-block p{display:none}
  .wfms-login-verify-block strong{font-size:9px}
  .wfms-login-contact-block{padding-left:8px}
  .wfms-login-contact-block strong{font-size:9px}
  .wfms-login-contact-block a,
  .wfms-login-contact-block span{font-size:8px;line-height:1.2}
}
@media(max-height:680px) and (max-width:700px){
  .wfms-login-static-extra{display:block!important}
  .wfms-login-static-extra .wfms-login-extra-content{padding:3px 0!important}
  .wfms-login-verify-block img{width:30px!important;height:30px!important}
}

/* WTFMS v1.7.1 — official and administrator notifications */
.wfms-notification-item.unread{border-left:4px solid #087844;background:#f6fcf8}
.wfms-notification-meta{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:7px}
.wfms-notification-meta em{font-style:normal;font-size:12px;color:#527065}
.wfms-notification-action{display:inline-flex;align-items:center;min-height:23px;padding:0 8px;border-radius:999px;background:#fff1d6;color:#8a5b00;font-size:11px;font-weight:800}

/* NTIMA OS 1.8 request separation */
.wfms-request-type-choice{display:flex;gap:10px;margin:16px 0}.wfms-request-choice{padding:11px 18px;border:1px solid #d8e4dd;border-radius:12px;background:#fff;color:#29483b;font-weight:750;cursor:pointer}.wfms-request-choice.active{background:#087844;color:#fff;border-color:#087844}.wfms-member-request-panel{padding:18px;border:1px solid #e0e8e4;border-radius:16px;background:#fbfdfc}.wfms-request-panel-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px}.wfms-request-panel-head h3{margin:0 0 4px}.wfms-request-panel-head p{margin:0;color:#65776f}@media(max-width:700px){.wfms-request-choice{flex:1}.wfms-request-panel-head{align-items:stretch;flex-direction:column}.wfms-request-panel-head .wfms-btn{width:100%}}


/* WTFMS v1.8.1 — notifications ouvertes individuellement */
.wfms-notifications-heading{display:flex;justify-content:space-between;gap:16px;margin-bottom:14px}
.wfms-notifications-heading h2{margin-bottom:4px}
.wfms-notifications-heading p{margin:0;color:#6b7280}
.wfms-notification-list{display:grid;gap:10px}
.wfms-notice-item{width:100%;border:1px solid #e0e7e3;background:#fff;border-radius:14px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:18px;text-align:left;cursor:pointer;font:inherit;color:inherit;transition:.18s ease}
.wfms-notice-item:hover{border-color:#a9cbb8;box-shadow:0 8px 22px rgba(15,56,42,.07);transform:translateY(-1px)}
.wfms-notice-item.unread{border-left:4px solid #087844;background:#f4fbf7}
.wfms-notification-copy{min-width:0}
.wfms-notification-copy strong{display:flex;align-items:center;gap:7px;color:#173f31}
.wfms-notification-copy p{margin:6px 0 0;color:#66756e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:720px}
.wfms-notification-meta{flex:0 0 auto;display:flex;align-items:flex-end;flex-direction:column;gap:6px;color:#7a8781}
.wfms-notification-meta span{font-size:11px;font-weight:800;background:#e7f6ed;color:#087844;padding:4px 8px;border-radius:999px}
.wfms-notification-meta span.read{background:#f0f2f1;color:#7a8781}
@media(max-width:700px){.wfms-notice-item{align-items:flex-start}.wfms-notification-meta{min-width:78px}.wfms-notification-copy p{max-width:55vw}}


/* NTIMA OS v1.8.3 — universal previous-page navigation */
.wfms-universal-back{display:inline-flex;align-items:center;gap:8px;border:1px solid #cfe0d6;background:#fff;color:#075b3a;border-radius:11px;padding:9px 14px;font-weight:800;line-height:1;cursor:pointer;box-shadow:0 3px 12px rgba(8,81,49,.06);transition:.18s ease;white-space:nowrap}
.wfms-universal-back:hover{background:#edf8f1;border-color:#8ac7a2;transform:translateY(-1px)}
.wfms-universal-back span:first-child{font-size:18px;line-height:1}
.wfms-member-back{margin:0 12px}
.wfms-admin-backbar{display:flex;align-items:center;margin:0 0 14px}
.wfms-admin-universal-back{display:inline-flex!important;align-items:center;gap:7px;border-radius:9px!important;color:#075b3a!important;border-color:#9ec9ae!important;background:#fff!important;font-weight:700!important}
.wfms-admin-universal-back:hover{background:#edf8f1!important;border-color:#087844!important;color:#05452c!important}
@media(max-width:760px){.wfms-member-back{padding:8px 10px;margin:0 5px}.wfms-member-back span:last-child{display:none}.wfms-admin-backbar{margin-bottom:10px}.wfms-admin-universal-back{font-size:12px!important;padding:5px 9px!important}}


/* NTIMA OS v1.8.4 — portail membre autonome */
body.wfms-portal-active #site-header,
body.wfms-portal-active #footer,
body.wfms-portal-active #footer-widgets,
body.wfms-portal-active .page-header,
body.wfms-portal-active .site-breadcrumbs,
body.wfms-portal-active #scroll-top {display:none!important;}
body.wfms-portal-active{background:#f4f8f6!important;}
.wfms-member-back[hidden]{display:none!important;}


/* NTIMA OS 2.6 — Training & Knowledge Centre */
.wfms-training-admin-grid{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(420px,1.2fr);gap:20px}.wfms-training-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.wfms-training-fields input{width:100%}.wfms-training-admin-list{display:grid;gap:10px}.wfms-training-admin-list article{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid #e2ebe6;border-radius:14px;padding:14px}.wfms-training-admin-list small{display:block;color:#64748b;margin-top:4px}.wfms-training-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0}.wfms-training-progress>div{background:#fff;border:1px solid #dfe9e3;border-radius:16px;padding:18px;text-align:center}.wfms-training-progress strong{display:block;font-size:28px;color:#075d39}.wfms-training-progress span{font-size:13px;color:#64748b}.wfms-training-catalogue{display:grid;gap:14px}.wfms-training-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;background:#fff;border:1px solid #dfe9e3;border-radius:18px;padding:18px;box-shadow:0 5px 18px rgba(0,0,0,.04)}.wfms-training-card.is-complete{border-color:#95d5b2;background:#f5fcf8}.wfms-training-icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#e9f7ef;color:#087443;font-size:24px;font-weight:800}.wfms-training-card h3{margin:5px 0 7px}.wfms-training-card p{margin:0 0 7px;color:#64748b}.wfms-training-meta{display:flex;gap:8px;align-items:center}.wfms-training-meta span,.wfms-training-meta b{font-size:11px;border-radius:999px;padding:5px 9px;background:#edf4f0;color:#365b49}.wfms-training-meta b{background:#fff3cd;color:#7a5a00}.wfms-training-course{max-width:980px}.wfms-training-content,.wfms-training-quiz,.wfms-training-certificate{background:#fff;border:1px solid #dfe9e3;border-radius:18px;padding:22px;margin-top:16px}.wfms-training-quiz fieldset{border:1px solid #dfe9e3;border-radius:14px;padding:16px;margin:14px 0}.wfms-training-quiz legend{font-weight:700;padding:0 6px}.wfms-training-quiz label{display:block;padding:7px 0}.wfms-training-complete-badge{background:#e9f7ef;color:#087443;border-radius:999px;padding:9px 13px;font-weight:800}.wfms-training-certificate{display:flex;align-items:center;gap:14px;background:linear-gradient(135deg,#f7fff9,#edf8f1)}.wfms-training-certificate>span{font-size:38px}.wfms-training-score{padding:10px 12px;background:#fff3cd;border-radius:10px;margin:12px 0;color:#705800}
@media(max-width:900px){.wfms-training-admin-grid{grid-template-columns:1fr}.wfms-training-card{grid-template-columns:auto 1fr}.wfms-training-card>.wfms-btn{grid-column:1/-1;text-align:center}.wfms-training-progress{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:600px){.wfms-training-progress{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.wfms-training-progress>div{padding:14px 8px;border-radius:14px;min-width:0}.wfms-training-progress strong{font-size:24px;line-height:1}.wfms-training-progress span{display:block;margin-top:6px;font-size:12px;line-height:1.25;word-break:break-word}.wfms-training-fields{grid-template-columns:1fr}.wfms-training-card{grid-template-columns:1fr}.wfms-training-icon{width:44px;height:44px}}


/* NTIMA OS v4.4.3 — Secure in-portal documents */
.wfms-doc-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.wfms-doc-actions .wfms-btn{appearance:none;font:inherit;cursor:pointer;text-align:center}.wfms-document-viewer{display:none;position:fixed;inset:0;z-index:100000}.wfms-document-viewer.open{display:block}.wfms-document-viewer-backdrop{position:absolute;inset:0;background:rgba(7,28,20,.72);backdrop-filter:blur(3px)}.wfms-document-viewer-dialog{position:absolute;inset:3vh 3vw;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 24px 80px rgba(0,0,0,.35);display:flex;flex-direction:column}.wfms-document-viewer-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 18px;background:#0b7448;color:#fff}.wfms-document-viewer-close{width:40px;height:40px;border:0;border-radius:50%;background:rgba(255,255,255,.18);color:#fff;font-size:28px;line-height:1;cursor:pointer}.wfms-document-viewer-frame{width:100%;height:100%;border:0;flex:1;background:#eef3f0}body.wfms-document-viewer-open{overflow:hidden}@media(max-width:700px){.wfms-document-viewer-dialog{inset:0;border-radius:0}.wfms-doc-actions{flex-direction:column}.wfms-doc-actions .wfms-btn{width:100%}}


/* NTIMA OS v4.4.9 — Compact navigation and zero page-level horizontal overflow */
html,
body {
    max-width: 100%;
    overflow-x: hidden;
}

.wfms-app,
.wfms-main,
.wfms-section,
.wfms-card,
.wfms-panel,
.wfms-top,
.wfms-grid,
.wfms-content,
.wfms-page,
.wfms-wrap {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
}

.wfms-app *,
.wfms-wrap *,
body[class*="wfms"] * {
    box-sizing: border-box;
}

.wfms-app img,
.wfms-wrap img {
    max-width: 100%;
    height: auto;
}

/* Keep long IDs, emails, references and filenames inside their cards. */
.wfms-app p,
.wfms-app a,
.wfms-app span,
.wfms-app strong,
.wfms-app small,
.wfms-app td,
.wfms-app th,
.wfms-wrap p,
.wfms-wrap a,
.wfms-wrap span,
.wfms-wrap strong,
.wfms-wrap small,
.wfms-wrap td,
.wfms-wrap th {
    overflow-wrap: anywhere;
    word-break: normal;
}

/* Compact member drawer so all primary actions fit on an ordinary laptop screen. */
.wfms-sidebar {
    max-height: calc(100vh - 20px);
    min-height: 0 !important;
    padding: 12px 12px 14px !important;
    overflow: hidden !important;
}

.wfms-drawer-head {
    min-height: 48px;
    margin-bottom: 7px !important;
    padding: 0 3px !important;
}

.wfms-drawer-head .wfms-logo img,
.wfms-top-logo img {
    width: auto;
    object-fit: contain;
}

.wfms-drawer-head .wfms-logo img {
    max-width: 112px !important;
    max-height: 46px !important;
    padding: 4px !important;
    border-radius: 10px !important;
}

.wfms-menu-close {
    width: 32px !important;
    height: 32px !important;
    font-size: 23px !important;
}

.wfms-sidebar nav {
    display: flex;
    flex-direction: column;
    min-height: 0;
    height: calc(100vh - 92px);
}

.wfms-sidebar nav a {
    flex: 0 0 auto;
    gap: 9px !important;
    min-height: 34px;
    padding: 7px 9px !important;
    margin: 2px 0 !important;
    border-radius: 9px !important;
    font-size: 13px !important;
    line-height: 1.15 !important;
}

.wfms-nav-icon {
    width: 21px !important;
    height: 21px !important;
    flex: 0 0 21px !important;
}

.wfms-nav-icon svg {
    width: 20px !important;
    height: 20px !important;
}

.wfms-nav-label {
    line-height: 1.15;
}

.wfms-logout-wrap {
    margin-top: auto !important;
    padding-top: 4px;
}

.wfms-logout {
    min-height: 35px !important;
    padding: 7px 9px !important;
    font-size: 13px !important;
}

/* Prevent plugin admin pages from widening the WordPress canvas. */
body[class*="wfms"] #wpcontent,
body[class*="wfms"] #wpbody,
body[class*="wfms"] #wpbody-content,
body[class*="wfms"] .wrap,
body[class*="wfms"] .wfms-admin-wrap,
body[class*="wfms"] .wfms-admin-page {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow-x: clip;
}

/* Tables remain inside the visible page instead of widening it. */
.wfms-app table,
.wfms-wrap table,
body[class*="wfms"] table {
    width: 100% !important;
    max-width: 100% !important;
    table-layout: fixed;
    border-collapse: collapse;
}

.wfms-app th,
.wfms-app td,
.wfms-wrap th,
.wfms-wrap td,
body[class*="wfms"] th,
body[class*="wfms"] td {
    white-space: normal !important;
    overflow-wrap: anywhere;
}

/* Forms and controls must shrink with their container. */
.wfms-app input,
.wfms-app select,
.wfms-app textarea,
.wfms-app button,
.wfms-wrap input,
.wfms-wrap select,
.wfms-wrap textarea,
.wfms-wrap button,
body[class*="wfms"] input,
body[class*="wfms"] select,
body[class*="wfms"] textarea {
    max-width: 100%;
}

/* Laptop-height refinement. */
@media (min-width: 769px) and (max-height: 820px) {
    .wfms-sidebar {
        top: 8px !important;
        max-height: calc(100vh - 16px);
    }

    .wfms-sidebar nav {
        height: calc(100vh - 82px);
    }

    .wfms-sidebar nav a {
        min-height: 31px;
        padding: 5px 8px !important;
        margin: 1px 0 !important;
        font-size: 12.5px !important;
    }

    .wfms-drawer-head .wfms-logo img {
        max-height: 40px !important;
    }
}

/* Responsive grids collapse before they can create page-level sideways scrolling. */
@media (max-width: 1100px) {
    body .wfms-app {
        grid-template-columns: 1fr;
        width: 100%;
        padding-left: 16px;
        padding-right: 16px;
    }

    .wfms-grid,
    .wfms-credit-summary,
    .wfms-stats,
    .wfms-form-grid {
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)) !important;
    }
}

@media (max-width: 700px) {
    body .wfms-app {
        padding: 10px !important;
        gap: 12px !important;
    }

    .wfms-top {
        gap: 8px;
    }

    .wfms-account-name {
        max-width: 120px;
    }

    .wfms-app table,
    .wfms-wrap table,
    body[class*="wfms"] table {
        font-size: 12px;
    }

    .wfms-app th,
    .wfms-app td,
    .wfms-wrap th,
    .wfms-wrap td,
    body[class*="wfms"] th,
    body[class*="wfms"] td {
        padding-left: 6px !important;
        padding-right: 6px !important;
    }
}


/* NTIMA OS v4.4.11 — Member top-bar logo sizing */
.wfms-top-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    overflow: visible;
}

.wfms-top-logo .wfms-logo,
.wfms-top-logo img {
    width: 48px !important;
    height: 48px !important;
    max-width: 48px !important;
    max-height: 48px !important;
    padding: 0 !important;
    margin: 0 !important;
    border-radius: 50% !important;
    object-fit: contain !important;
    background: transparent !important;
    display: block;
}

@media (max-width: 700px) {
    .wfms-top-logo,
    .wfms-top-logo .wfms-logo,
    .wfms-top-logo img {
        width: 44px !important;
        height: 44px !important;
        max-width: 44px !important;
        max-height: 44px !important;
        flex-basis: 44px !important;
    }
}

/* NTIMA OS v6.2.7 — Smart Validation Framework */
.genesis-required-marker{color:#b42318;font-weight:800}
.genesis-field-error{margin-top:5px;color:#b42318;font-size:12px;font-weight:600;line-height:1.35}
.genesis-field-invalid{border-color:#d92d20!important;box-shadow:0 0 0 1px #d92d20!important;background-color:#fff7f6!important}
.genesis-field-valid:not([type="checkbox"]):not([type="radio"]){border-color:#17803d!important}
.genesis-validation-summary{margin:0 0 18px;padding:14px 16px;border:1px solid #f04438;border-left-width:5px;border-radius:8px;background:#fff5f4;color:#7a271a}
.genesis-validation-summary strong{display:block;margin-bottom:7px;font-size:14px}
.genesis-validation-summary ul{margin:0;padding-left:20px}
.genesis-validation-summary li{margin:3px 0}
.genesis-error-link{appearance:none;border:0;background:transparent;color:#b42318;padding:0;text-align:left;text-decoration:underline;cursor:pointer;font:inherit;font-weight:600}
.genesis-error-link:focus{outline:2px solid #b42318;outline-offset:3px;border-radius:2px}
@media(max-width:700px){.genesis-validation-summary{padding:12px}.genesis-field-error{font-size:11.5px}}

/* NTIMA OS v10.4.0 — smooth iPhone member-login password control.
 * iOS zooms focused form fields whose rendered text is below 16px. Keeping
 * the login fields at 16px prevents the password monkey control from panning
 * the installed PWA sideways when the field changes between password/text. */
@supports (-webkit-touch-callout: none){
  @media (max-width:700px){
    .wfms-login-compact,
    .wfms-login-compact-card,
    .wfms-login-compact .wfms-login-form-panel,
    .wfms-login-compact .wfms-um-login,
    .wfms-login-compact .wfms-um-login .um,
    .wfms-login-compact .wfms-um-login .um-form,
    .wfms-login-compact .wfms-password-wrap{
      box-sizing:border-box;
      width:100%;
      max-width:100%;
      min-width:0;
    }

    .wfms-login-compact .wfms-um-login input[type=text],
    .wfms-login-compact .wfms-um-login input[type=password],
    .wfms-login-compact .wfms-um-login input[type=email],
    .wfms-login-compact .wfms-um-login #user_login,
    .wfms-login-compact .wfms-um-login #user_pass{
      max-width:100%!important;
      min-width:0!important;
      font-size:16px!important;
    }

    .wfms-login-compact .wfms-password-toggle{
      -webkit-appearance:none;
      appearance:none;
      touch-action:manipulation;
      -webkit-tap-highlight-color:transparent;
      -webkit-user-select:none;
      user-select:none;
    }
  }
}


/* NTIMA OS v10.4.0 — Training & Quiz Builder learner experience. */
.wfms-training-course-view[hidden],
.wfms-training-course-stack[hidden],
.wfms-training-catalogue[hidden]{display:none!important}
.wfms-training-workspace.is-course-open .wfms-training-progress{display:none}
.wfms-training-course-stack{margin-top:8px}
.wfms-training-course-view{animation:wfmsTrainingReveal .18s ease-out}
@keyframes wfmsTrainingReveal{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.wfms-training-course .wfms-form-back{display:inline-flex;align-items:center;gap:7px;font:inherit}
.wfms-training-feedback{margin-top:16px;padding:18px;border:1px solid #d9e5df;border-radius:16px;background:#f8fbf9}
.wfms-training-feedback.is-success{border-color:#9bd7b4;background:#f2fbf6}
.wfms-training-feedback.is-retry{border-color:#f1c98d;background:#fffaf2}
.wfms-training-feedback h3{margin:0 0 10px}
.wfms-feedback-item{margin-top:10px;padding:13px 14px;border-radius:12px;background:#fff;border-left:4px solid #a8b7af}
.wfms-feedback-item.is-correct{border-left-color:#1d9b5f}
.wfms-feedback-item.is-incorrect{border-left-color:#d97706}
.wfms-feedback-item p{margin:6px 0}
.wfms-feedback-item small{display:block;color:#5f6f67;line-height:1.5}
.wfms-training-locked,.wfms-training-no-quiz{margin-top:16px;padding:16px;border:1px solid #d9e5df;border-radius:14px;background:#f8fbf9}
.wfms-training-retry{margin-top:12px}
.wfms-training-card .wfms-btn{border:0;cursor:pointer;font:inherit}
@media(max-width:600px){.wfms-training-feedback{padding:14px}.wfms-feedback-item{padding:11px 12px}}

/* NTIMA OS v10.4.2 — position-specific onboarding training. */
.wfms-position-training-banner{display:flex;align-items:flex-start;gap:13px;margin:0 0 16px;padding:15px 17px;border:1px solid #a9d7bd;border-left:5px solid #087443;border-radius:15px;background:#f1fbf5;color:#315f4b}
.wfms-position-training-banner>span{font-size:25px;line-height:1}
.wfms-position-training-banner strong{display:block;color:#0b5d3b;margin-bottom:4px}
.wfms-position-training-banner p{margin:0;line-height:1.5}
.wfms-position-training-banner.is-overdue{border-color:#e7b482;border-left-color:#c96a10;background:#fff8ef;color:#7a4b18}
.wfms-position-training-banner.is-overdue strong{color:#9a4f09}
.wfms-training-role-deadline{display:block;margin:8px 0 6px;padding:8px 10px;border-radius:10px;background:#edf8f2;color:#315f4b;font-size:12px;line-height:1.4}
.wfms-training-role-deadline b{color:#0b5d3b}
.wfms-training-role-deadline.is-overdue{background:#fff3e6;color:#8b4a0d}
.wfms-training-card.is-position-course{border-left:5px solid #087443}
@media(max-width:600px){.wfms-position-training-banner{padding:13px}.wfms-position-training-banner>span{font-size:22px}}

/* NTIMA OS v10.5.1 — single-device account protection notices. */
.genesis-device-warning{display:flex;align-items:flex-start;gap:12px;margin:14px 0;padding:14px 16px;border:1px solid #f2c76e;border-left:5px solid #d88a00;border-radius:14px;background:#fff8e7;color:#6b4500;box-shadow:0 8px 22px rgba(107,69,0,.08);box-sizing:border-box}
.genesis-device-warning>span{font-size:24px;line-height:1;flex:0 0 auto}.genesis-device-warning strong{display:block;margin:0 0 3px;font-size:15px;color:#6b4500}.genesis-device-warning p{margin:0!important;color:#765619!important;font-size:14px;line-height:1.45}.genesis-device-warning-login{margin:14px 0;text-align:left}.genesis-admin-main>.genesis-device-warning{margin:0 34px 16px}.wfms-main>.genesis-device-warning{margin:14px 22px 0}.genesis-device-warning-takeover{border-color:#f0bd54;background:linear-gradient(135deg,#fff8e7,#fffdf7)}
@media(max-width:782px){.genesis-admin-main>.genesis-device-warning{margin:0 14px 14px}.wfms-main>.genesis-device-warning{margin:12px 12px 0}.genesis-device-warning{padding:12px 13px;border-radius:12px}.genesis-device-warning>span{font-size:21px}}

/* NTIMA OS v10.5.6 — notification archive and deletion centre */
.wfms-notifications-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.wfms-notification-bulk-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.wfms-notification-bulk-actions button,.wfms-notification-tabs button,.wfms-notification-action-button,.wfms-notification-confirm-cancel,.wfms-notification-confirm-delete{border:1px solid #cfe1d7;border-radius:10px;background:#fff;color:#17603d;font:inherit;font-size:12px;font-weight:800;cursor:pointer;min-height:36px;padding:7px 12px}
.wfms-notification-bulk-actions button:hover,.wfms-notification-tabs button:hover,.wfms-notification-action-button:hover{border-color:#77b393;background:#f2faf6}
.wfms-notification-bulk-actions button.danger,.wfms-notification-action-button.delete,.wfms-notification-confirm-delete{border-color:#f2c8c8;color:#a32626;background:#fff8f8}
.wfms-notification-bulk-actions button.danger:hover,.wfms-notification-action-button.delete:hover,.wfms-notification-confirm-delete:hover{border-color:#df8c8c;background:#fff0f0}
.wfms-notification-tabs{display:flex;gap:8px;margin:18px 0 14px;border-bottom:1px solid #e4ece8;padding-bottom:10px}
.wfms-notification-tabs button{border-color:transparent;background:#f1f5f3;color:#50645b}
.wfms-notification-tabs button.active{background:#087443;color:#fff;border-color:#087443}
.wfms-notification-tabs b{display:inline-grid;place-items:center;min-width:21px;height:21px;margin-left:5px;padding:0 6px;border-radius:999px;background:rgba(255,255,255,.75);color:#17603d;font-size:11px}
.wfms-notification-tabs button:not(.active) b{background:#fff}
.wfms-notice-row{border:1px solid #e0e7e3;border-radius:15px;background:#fff;overflow:hidden;transition:.18s ease}
.wfms-notice-row:hover{border-color:#a9cbb8;box-shadow:0 8px 22px rgba(15,56,42,.07)}
.wfms-notice-row .wfms-notice-item{border:0;border-radius:0;box-shadow:none!important;transform:none!important}
.wfms-notice-row.is-archived{background:#f8faf9;border-color:#d9e1dd}
.wfms-notice-row.is-archived .wfms-notice-item{background:#f8faf9;opacity:.9}
.wfms-notification-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:9px 12px;border-top:1px solid #edf2ef;background:#fbfdfc}
.wfms-notification-action-button.archive{color:#17603d}
.wfms-notification-action-button.restore{color:#235b8b;border-color:#c7d9e9;background:#f7fbff}
.wfms-notification-meta span.archived{background:#eef1f0;color:#5e6b65}
.wfms-notification-panel[hidden]{display:none!important}
.wfms-notification-confirm-cancel{flex:1;color:#40584d;background:#f7faf8}
.wfms-notification-confirm-delete{flex:1}
.wfms-notification-action-button:disabled,.wfms-notification-bulk-actions button:disabled{opacity:.55;cursor:wait}
@media(max-width:700px){
  .wfms-notifications-heading{display:block}
  .wfms-notification-bulk-actions{justify-content:flex-start;margin-top:12px}
  .wfms-notification-tabs{position:sticky;top:0;z-index:2;background:#fff;padding-top:4px}
  .wfms-notification-tabs button{flex:1}
  .wfms-notice-row .wfms-notice-item{display:flex;align-items:flex-start}
  .wfms-notification-actions{justify-content:stretch}
  .wfms-notification-action-button{flex:1}
}

/* NTIMA OS v10.6.1 — professional electronic member ID card. */
.wfms-member-qr-placeholder{width:116px;height:116px;border:1px dashed #b8c7bf;border-radius:12px;background:#fff;color:#7c8f86;display:flex;align-items:center;justify-content:center;font-weight:700;letter-spacing:1px}
.wfms-member-card-modal .wfms-modal-card{max-width:940px;padding:22px;background:#f4f8f5;text-align:left}
.wfms-member-card-sheet{position:relative;isolation:isolate;background:linear-gradient(145deg,#ffffff 0%,#f4fbf7 100%);border:1px solid #dbe8df;border-radius:26px;padding:22px;box-shadow:0 20px 60px rgba(7,84,57,.10)}
.wfms-member-card-sheet::before{content:"";position:absolute;inset:14px;background-image:var(--wfms-member-card-watermark);background-repeat:no-repeat;background-position:center;background-size:min(74%,460px) auto;opacity:.10;pointer-events:none;z-index:0;transform:translateZ(0)}
.wfms-member-card-head,.wfms-member-card-body,.wfms-member-card-foot{position:relative;z-index:1}
.wfms-member-card-head{display:flex;align-items:center;gap:18px;padding-bottom:18px;border-bottom:1px solid #e3ece6}
.wfms-member-card-logo{width:72px;height:72px;object-fit:contain;border-radius:18px;background:#fff;border:1px solid #dfe8e2;padding:8px}
.wfms-member-card-head-copy{min-width:0;flex:1}
.wfms-member-card-head-copy small{display:block;font-size:12px;font-weight:800;letter-spacing:1.4px;color:#0b7448}
.wfms-member-card-head-copy h3{margin:4px 0 6px;font-size:29px;line-height:1.1;color:#173f31}
.wfms-member-card-head-copy p{margin:0;color:#5d6f67;font-size:14px}
.wfms-member-card-status{display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border-radius:999px;background:#eaf7ef;border:1px solid #c9e5d4;color:#0a6a41;font-weight:800;white-space:nowrap}
.wfms-member-card-body{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.9fr);gap:22px;padding-top:20px}
.wfms-member-card-identity{display:grid;grid-template-columns:138px minmax(0,1fr);gap:18px;align-content:start}
.wfms-member-card-photo{width:138px;height:165px;border-radius:18px;overflow:hidden;background:#eef7f1;border:1px solid #d8e6dd;display:flex;align-items:center;justify-content:center}
.wfms-member-card-photo img{width:100%;height:100%;object-fit:cover}
.wfms-member-card-photo-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:58px;color:#9ab0a4;background:radial-gradient(circle at top,#f9fffb,#ebf5ef)}
.wfms-member-card-primary{display:flex;flex-direction:column;gap:4px;margin-bottom:14px}
.wfms-member-card-primary strong{font-size:30px;line-height:1.12;color:#173f31}
.wfms-member-card-primary span{font-size:18px;font-weight:800;letter-spacing:.8px;color:#0b7448}
.wfms-member-card-primary em{font-style:normal;color:#6a7e74;font-size:13px}
.wfms-member-card-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px;margin:0}
.wfms-member-card-fields div{padding:11px 12px;border:1px solid #dfebe3;border-radius:14px;background:#fff}
.wfms-member-card-fields dt{font-size:11px;letter-spacing:.6px;text-transform:uppercase;color:#6d8076;margin-bottom:5px;font-weight:800}
.wfms-member-card-fields dd{margin:0;font-size:14px;font-weight:700;color:#173f31;line-height:1.35;word-break:break-word}
.wfms-member-card-codes{display:flex;flex-direction:column;gap:16px}
.wfms-member-card-qr-wrap,.wfms-member-card-barcode-wrap{background:#fff;border:1px solid #dfe8e2;border-radius:18px;padding:16px;text-align:center}
.wfms-member-card-qr{width:200px;height:200px;max-width:100%;object-fit:contain;margin:0 auto 12px;display:block}
.wfms-member-card-qr-placeholder{width:200px;height:200px;max-width:100%;margin:0 auto 12px;border:1px dashed #bccac2;border-radius:18px;display:flex;align-items:center;justify-content:center;background:#f6faf7;color:#7c8f86;font-weight:800;letter-spacing:2px}
.wfms-member-card-barcode{width:100%;height:auto;max-width:100%;display:block;background:#fff;margin:0 auto 10px}
.wfms-member-card-codes small{display:block;color:#61746b;font-size:12px}
.wfms-member-card-foot{margin-top:18px;padding-top:16px;border-top:1px solid #e4ece7;display:flex;align-items:flex-end;justify-content:space-between;gap:18px}
.wfms-member-card-foot p{margin:0;max-width:680px;color:#5a6d64;line-height:1.55;font-size:13px}
.wfms-member-card-foot span{color:#0b7448;font-weight:800;white-space:nowrap}
.wfms-member-card-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}
@media(max-width:820px){
  .wfms-member-card-modal .wfms-modal-card{margin:2vh 12px;padding:16px}
  .wfms-member-card-sheet{padding:16px;border-radius:22px}
  .wfms-member-card-head{flex-wrap:wrap;gap:12px}
  .wfms-member-card-head-copy h3{font-size:24px}
  .wfms-member-card-body{grid-template-columns:1fr}
}
@media(max-width:640px){
  .wfms-member-card-identity{grid-template-columns:1fr}
  .wfms-member-card-photo{width:132px;height:158px}
  .wfms-member-card-primary strong{font-size:24px}
  .wfms-member-card-primary span{font-size:16px}
  .wfms-member-card-fields{grid-template-columns:1fr}
  .wfms-member-card-foot{flex-direction:column;align-items:flex-start}
  .wfms-member-card-actions{flex-direction:column}
  .wfms-member-card-actions .wfms-btn{width:100%}
}
@media print{
  body.wfms-print-member-card *{visibility:hidden!important}
  body.wfms-print-member-card #wfms-member-card,
  body.wfms-print-member-card #wfms-member-card *{visibility:visible!important}
  body.wfms-print-member-card #wfms-member-card{display:block!important;position:static!important;inset:auto!important;background:#fff!important}
  body.wfms-print-member-card #wfms-member-card .wfms-modal-backdrop,
  body.wfms-print-member-card #wfms-member-card .wfms-modal-x,
  body.wfms-print-member-card #wfms-member-card .wfms-member-card-actions{display:none!important}
  body.wfms-print-member-card #wfms-member-card .wfms-modal-card{max-width:100%!important;margin:0!important;padding:0!important;box-shadow:none!important;background:#fff!important}
  body.wfms-print-member-card #wfms-member-card .wfms-member-card-sheet{box-shadow:none!important;border:0!important;padding:0!important}
}

/* NTIMA OS v10.6.9 — Message du Président on every member dashboard. */
.wfms-president-message{position:relative;display:grid;grid-template-columns:68px minmax(0,1fr);gap:18px;margin:18px 0;padding:24px;border:1px solid #cce3d5;border-radius:24px;background:linear-gradient(135deg,#f4fbf7 0%,#ffffff 58%,#edf8f1 100%);box-shadow:0 12px 34px rgba(7,84,57,.08);overflow:hidden}
.wfms-president-message::after{content:"";position:absolute;right:-55px;bottom:-75px;width:190px;height:190px;border-radius:50%;background:rgba(8,116,67,.06)}
.wfms-president-message-mark{position:relative;z-index:1;width:64px;height:64px;border-radius:20px;background:linear-gradient(145deg,#087443,#064c31);color:#fff;display:flex;align-items:center;justify-content:center;font:700 48px/1 Georgia,serif;padding-top:14px;box-shadow:0 10px 24px rgba(8,116,67,.20)}
.wfms-president-message-content{position:relative;z-index:1;min-width:0}
.wfms-president-message-kicker{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:7px}
.wfms-president-message-kicker span{font-size:11px;font-weight:900;letter-spacing:1.5px;color:#087443}
.wfms-president-message-kicker time{font-size:12px;color:#75877e;white-space:nowrap}
.wfms-president-message h2{margin:0 0 10px;font-size:24px;line-height:1.2;color:#173f31}
.wfms-president-message p{margin:0;color:#445d51;font-size:15px;line-height:1.7;white-space:normal}
.wfms-president-message-footer{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:17px;padding-top:14px;border-top:1px solid #dce9e1}
.wfms-president-message-footer strong{color:#173f31;font-size:14px}
.wfms-president-message-footer small{color:#708278;font-size:12px}
.wfms-president-message-link{margin-left:auto;display:inline-flex;align-items:center;gap:7px;padding:9px 13px;border-radius:12px;background:#087443;color:#fff!important;text-decoration:none!important;font-size:12px;font-weight:800}
.wfms-president-message-link:hover{background:#065f3c;color:#fff!important}
@media(max-width:640px){
  .wfms-president-message{grid-template-columns:48px minmax(0,1fr);gap:13px;margin:14px 0;padding:17px;border-radius:20px}
  .wfms-president-message-mark{width:48px;height:48px;border-radius:15px;font-size:36px;padding-top:10px}
  .wfms-president-message-kicker{align-items:flex-start;flex-direction:column;gap:3px}
  .wfms-president-message h2{font-size:19px;margin-bottom:8px}
  .wfms-president-message p{font-size:13px;line-height:1.58}
  .wfms-president-message-footer{align-items:flex-start;flex-direction:column;gap:3px;margin-top:13px;padding-top:11px}
  .wfms-president-message-link{margin:8px 0 0;width:100%;justify-content:center}
}

/* NTIMA OS v10.6.14 — complete electronic ID card visibility on mobile. */
.wfms-member-card-modal{
  overflow-y:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  padding:max(14px,env(safe-area-inset-top)) 12px max(18px,env(safe-area-inset-bottom));
  box-sizing:border-box;
}
.wfms-member-card-modal .wfms-modal-backdrop{
  position:fixed;
}
.wfms-member-card-modal .wfms-modal-card{
  width:min(940px,100%);
  max-width:940px;
  margin:0 auto;
  box-sizing:border-box;
}
@media(max-width:820px){
  .wfms-member-card-modal{
    padding:max(10px,env(safe-area-inset-top)) 8px max(16px,env(safe-area-inset-bottom));
  }
  .wfms-member-card-modal .wfms-modal-card{
    width:100%;
    margin:0 auto;
  }
}

/* NTIMA OS v10.6.15 — single-page member card fit on phone without scrolling */
.wfms-member-card-main{min-width:0}
.wfms-member-card-field-full{grid-column:1 / -1}
.wfms-member-card-modal{display:flex;align-items:center;justify-content:center;overflow:hidden;padding:max(8px,env(safe-area-inset-top)) 8px max(10px,env(safe-area-inset-bottom));box-sizing:border-box}
.wfms-member-card-modal .wfms-modal-card{width:min(880px,100%);max-height:calc(100dvh - max(18px,env(safe-area-inset-top)) - max(18px,env(safe-area-inset-bottom)));margin:0 auto;display:flex;flex-direction:column;padding:8px;background:transparent;box-shadow:none;overflow:hidden}
.wfms-member-card-sheet{padding:14px 16px;border-radius:24px;display:flex;flex-direction:column;gap:10px;overflow:hidden}
.wfms-member-card-sheet::before{inset:10px;background-size:min(76%,420px) auto;opacity:.09}
.wfms-member-card-head{gap:12px;padding-bottom:10px}
.wfms-member-card-logo{width:56px;height:56px;border-radius:14px;padding:6px}
.wfms-member-card-head-copy small{font-size:10px;letter-spacing:1.9px}
.wfms-member-card-head-copy h3{margin:3px 0 0;font-size:24px;line-height:1.04}
.wfms-member-card-head-copy p{display:none}
.wfms-member-card-status{padding:8px 12px;font-size:12px}
.wfms-member-card-body{grid-template-columns:minmax(0,1.38fr) minmax(150px,.62fr);gap:12px;padding-top:0;align-items:stretch}
.wfms-member-card-identity{grid-template-columns:116px minmax(0,1fr);gap:12px;align-content:start}
.wfms-member-card-photo{width:116px;height:136px;border-radius:16px}
.wfms-member-card-photo-placeholder{font-size:44px}
.wfms-member-card-primary{gap:2px;margin-bottom:8px}
.wfms-member-card-primary strong{font-size:20px;line-height:1.07}
.wfms-member-card-primary span{font-size:14px;line-height:1.05}
.wfms-member-card-primary em{display:none}
.wfms-member-card-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 8px}
.wfms-member-card-fields div{padding:8px 9px;border-radius:12px}
.wfms-member-card-fields dt{font-size:9px;letter-spacing:.8px;margin-bottom:3px}
.wfms-member-card-fields dd{font-size:12px;line-height:1.2}
.wfms-member-card-codes{gap:8px;justify-content:space-between}
.wfms-member-card-qr-wrap,.wfms-member-card-barcode-wrap{padding:8px 10px;border-radius:14px}
.wfms-member-card-qr{width:118px;height:118px;margin-bottom:6px}
.wfms-member-card-qr-placeholder{width:118px;height:118px;margin-bottom:6px;border-radius:14px;font-size:20px}
.wfms-member-card-barcode{margin-bottom:5px;max-height:56px;object-fit:contain}
.wfms-member-card-codes small{font-size:10px;line-height:1.15}
.wfms-member-card-foot{margin-top:0;padding-top:6px;min-height:0;justify-content:flex-end}
.wfms-member-card-foot p{display:none}
.wfms-member-card-foot span{font-size:10px;letter-spacing:.2px}
.wfms-member-card-actions{margin-top:8px;gap:8px;flex-wrap:wrap}
.wfms-member-card-actions .wfms-btn{padding:8px 12px;font-size:12px;line-height:1.1}
@media(max-width:820px){
  .wfms-member-card-modal{padding:max(6px,env(safe-area-inset-top)) 6px max(8px,env(safe-area-inset-bottom))}
  .wfms-member-card-modal .wfms-modal-card{width:100%;max-height:calc(100dvh - max(12px,env(safe-area-inset-top)) - max(12px,env(safe-area-inset-bottom)));padding:4px}
  .wfms-member-card-sheet{padding:10px 10px 8px;border-radius:20px;gap:8px}
  .wfms-member-card-sheet::before{inset:8px;background-size:min(78%,250px) auto;opacity:.08}
  .wfms-member-card-head{gap:8px;padding-bottom:8px;align-items:center}
  .wfms-member-card-logo{width:42px;height:42px;border-radius:12px;padding:4px}
  .wfms-member-card-head-copy small{font-size:9px;letter-spacing:1.5px}
  .wfms-member-card-head-copy h3{font-size:17px;line-height:1.02}
  .wfms-member-card-status{padding:6px 9px;font-size:10px}
  .wfms-member-card-body{grid-template-columns:minmax(0,1.18fr) minmax(96px,.82fr);gap:8px}
  .wfms-member-card-identity{grid-template-columns:74px minmax(0,1fr);gap:8px}
  .wfms-member-card-photo{width:74px;height:90px;border-radius:12px}
  .wfms-member-card-primary{margin-bottom:5px}
  .wfms-member-card-primary strong{font-size:12px;line-height:1.06}
  .wfms-member-card-primary span{font-size:10px;letter-spacing:.5px}
  .wfms-member-card-fields{grid-template-columns:1fr;gap:5px}
  .wfms-member-card-fields div{padding:5px 6px;border-radius:9px}
  .wfms-member-card-fields dt{font-size:8px;letter-spacing:.55px;margin-bottom:1px}
  .wfms-member-card-fields dd{font-size:10px;line-height:1.14}
  .wfms-member-card-qr-wrap,.wfms-member-card-barcode-wrap{padding:6px 6px;border-radius:10px}
  .wfms-member-card-qr{width:82px;height:82px;margin-bottom:4px}
  .wfms-member-card-qr-placeholder{width:82px;height:82px;margin-bottom:4px;border-radius:10px;font-size:15px}
  .wfms-member-card-barcode{max-height:42px;margin-bottom:3px}
  .wfms-member-card-codes small{font-size:8px;line-height:1.05}
  .wfms-member-card-foot{padding-top:4px}
  .wfms-member-card-foot span{font-size:8px}
  .wfms-member-card-actions{margin-top:6px;gap:6px}
  .wfms-member-card-actions .wfms-btn{padding:7px 10px;font-size:11px}
}
@media(max-width:380px){
  .wfms-member-card-sheet{padding:8px 8px 7px}
  .wfms-member-card-sheet::before{background-size:min(80%,220px) auto}
  .wfms-member-card-head-copy h3{font-size:15px}
  .wfms-member-card-logo{width:38px;height:38px}
  .wfms-member-card-body{grid-template-columns:minmax(0,1.12fr) minmax(82px,.88fr);gap:6px}
  .wfms-member-card-identity{grid-template-columns:66px minmax(0,1fr);gap:6px}
  .wfms-member-card-photo{width:66px;height:82px}
  .wfms-member-card-primary strong{font-size:11px}
  .wfms-member-card-primary span{font-size:9px}
  .wfms-member-card-fields div{padding:4px 5px}
  .wfms-member-card-fields dt{font-size:7px}
  .wfms-member-card-fields dd{font-size:9px}
  .wfms-member-card-qr{width:74px;height:74px}
  .wfms-member-card-qr-placeholder{width:74px;height:74px}
  .wfms-member-card-barcode{max-height:36px}
  .wfms-member-card-codes small{font-size:7px}
  .wfms-member-card-actions .wfms-btn{padding:6px 8px;font-size:10px}
}

/* NTIMA OS v10.6.16 — member card footer message and no top close icon */
.wfms-member-card-modal .wfms-modal-x{display:none!important}
.wfms-member-card-foot{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:3px}
.wfms-member-card-foot p{display:block;margin:0;color:#5a6d64;font-size:9px;line-height:1.22;max-width:100%}
.wfms-member-card-foot span{font-size:9px;letter-spacing:.15px}
@media(max-width:820px){
  .wfms-member-card-foot{gap:2px}
  .wfms-member-card-foot p{font-size:7px;line-height:1.16}
  .wfms-member-card-foot span{font-size:7px}
}
@media(max-width:380px){
  .wfms-member-card-foot p{font-size:6.5px}
  .wfms-member-card-foot span{font-size:6.5px}
}

/* NTIMA OS v10.6.17 — controlled member-card activation and live validation. */
.wfms-member-card-status{gap:5px;flex-wrap:wrap}
.wfms-member-card-status small{font-size:7px;line-height:1;font-weight:800;letter-spacing:.2px;color:inherit;opacity:.72;white-space:nowrap}
.wfms-member-card-status.is-card-inactive{background:#fff1f0;border-color:#efc3be;color:#a53a2b}
.wfms-member-card-photo-wrap{position:relative;width:max-content;max-width:100%}
.wfms-member-card-live-signal{position:absolute;left:50%;bottom:-5px;z-index:3;width:8px;height:8px;margin-left:-4px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px rgba(7,84,57,.18)}
.wfms-member-card-live-signal.is-active{background:#13a85b;animation:wfms-member-card-pulse 1.25s ease-in-out infinite}
.wfms-member-card-live-signal.is-inactive{background:#c74432;animation:none}
@keyframes wfms-member-card-pulse{0%,100%{opacity:1;transform:scale(1);box-shadow:0 0 0 1px rgba(7,84,57,.18),0 0 0 0 rgba(19,168,91,.34)}50%{opacity:.58;transform:scale(.84);box-shadow:0 0 0 1px rgba(7,84,57,.12),0 0 0 5px rgba(19,168,91,0)}}
.wfms-member-card-foot.is-inactive{padding:6px 8px;border:1px solid #efc9a6;border-radius:8px;background:#fff8e9}
.wfms-member-card-foot.is-inactive p{color:#8c4d0d;font-weight:800}
.wfms-member-card-foot span{color:#087443;font-weight:900;letter-spacing:.4px}
.wfms-member-card-control{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:14px 0;padding:16px 18px;border:1px solid #cfe1d7;border-left:5px solid #078346;border-radius:16px;background:linear-gradient(135deg,#f5fbf7,#fff);box-shadow:0 7px 22px rgba(7,84,57,.06)}
.wfms-member-card-control.is-inactive{border-color:#efd1b6;border-left-color:#c96b19;background:linear-gradient(135deg,#fff9ef,#fff)}
.wfms-member-card-control small{display:block;margin-bottom:3px;color:#087443;font-size:10px;font-weight:900;letter-spacing:1.1px}
.wfms-member-card-control.is-inactive small{color:#a45a16}
.wfms-member-card-control h3{margin:0 0 4px;color:#173f31;font-size:19px}
.wfms-member-card-control p{margin:0;color:#65786f;font-size:13px}
.wfms-member-card-control form{flex:0 0 auto;margin:0}
.wfms-member-card-protected{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:#eaf7ef;color:#087443;font-weight:800;white-space:nowrap}
@media(max-width:820px){
  .wfms-member-card-status{padding:5px 7px}
  .wfms-member-card-status small{font-size:6px}
  .wfms-member-card-live-signal{bottom:-4px;width:7px;height:7px;margin-left:-3.5px}
  .wfms-member-card-foot.is-inactive{padding:4px 5px}
  .wfms-member-card-foot.is-inactive p{font-size:6.5px;line-height:1.1}
  .wfms-member-card-control{display:block;padding:14px}
  .wfms-member-card-control form{margin-top:12px}
  .wfms-member-card-control form .button{width:100%}
}

/* NTIMA OS v10.6.18 — inactive card notice only and reliable modal closing. */
.wfms-member-card-modal{display:none}
.wfms-member-card-modal.open{display:flex}
.wfms-member-card-unavailable-modal .wfms-modal-card{
  width:min(430px,100%);
  max-height:none;
  padding:0;
  overflow:visible;
  background:#fff;
  border:1px solid #d8e7de;
  border-radius:22px;
  box-shadow:0 24px 70px rgba(0,0,0,.28);
}
.wfms-member-card-unavailable{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:12px;
  padding:26px 22px 22px;
  text-align:center;
}
.wfms-member-card-unavailable>img{
  width:72px;
  height:72px;
  object-fit:contain;
  border-radius:18px;
  border:1px solid #dce8e1;
  background:#fff;
  padding:7px;
  box-sizing:border-box;
}
.wfms-member-card-unavailable-icon{
  display:grid;
  place-items:center;
  width:52px;
  height:52px;
  border-radius:16px;
  background:#fff4e8;
  color:#9a5515;
  font-size:25px;
}
.wfms-member-card-unavailable h3{
  margin:0;
  color:#173f31;
  font-size:22px;
  line-height:1.15;
}
.wfms-member-card-unavailable p{
  margin:0;
  color:#5c6f65;
  font-size:14px;
  line-height:1.55;
}
.wfms-member-card-unavailable .wfms-btn{
  width:100%;
  margin-top:4px;
}
@media(max-width:640px){
  .wfms-member-card-unavailable-modal .wfms-modal-card{border-radius:20px}
  .wfms-member-card-unavailable{padding:22px 18px 18px;gap:10px}
  .wfms-member-card-unavailable>img{width:60px;height:60px;border-radius:15px}
  .wfms-member-card-unavailable-icon{width:46px;height:46px;border-radius:14px;font-size:22px}
  .wfms-member-card-unavailable h3{font-size:19px}
  .wfms-member-card-unavailable p{font-size:13px;line-height:1.48}
}

/* NTIMA OS v10.6.22 — Android-only compact dashboard; iOS restored to v10.6.20 spacing */
@media(max-width:760px){
  html.wfms-platform-android .wfms-hero{padding:11px!important;gap:8px!important;margin-bottom:7px!important;border-radius:14px!important}
  html.wfms-platform-android .wfms-hero h1{font-size:16px!important;line-height:1.12!important}
  html.wfms-platform-android .wfms-hero p{font-size:10.5px!important;line-height:1.25!important}
  html.wfms-platform-android .wfms-hero span{font-size:10px!important;letter-spacing:2px!important}
  html.wfms-platform-android .wfms-hero .wfms-avatar{width:42px!important;height:42px!important;border-width:3px!important}
  html.wfms-platform-android .wfms-hero .wfms-id{padding:8px 10px!important;border-radius:10px!important}
  html.wfms-platform-android .wfms-hero .wfms-id small{font-size:9px!important}
  html.wfms-platform-android .wfms-hero .wfms-id strong{font-size:16px!important;line-height:1.1!important}

  html.wfms-platform-android .wfms-grid.wfms-grid-4{gap:6px!important}
  html.wfms-platform-android .wfms-card.mini{min-height:64px!important;padding:8px 7px!important;border-radius:12px!important;margin-bottom:0!important}
  html.wfms-platform-android .wfms-card.mini small{font-size:8px!important;line-height:1.1!important;letter-spacing:.2px!important}
  html.wfms-platform-android .wfms-card.mini strong{font-size:12.5px!important;line-height:1.12!important;margin-top:4px!important}

  html.wfms-platform-android .wfms-president-message{grid-template-columns:42px minmax(0,1fr)!important;gap:11px!important;margin:10px 0!important;padding:14px!important;border-radius:18px!important}
  html.wfms-platform-android .wfms-president-message::after{right:-58px!important;bottom:-82px!important;width:160px!important;height:160px!important}
  html.wfms-platform-android .wfms-president-message-mark{width:42px!important;height:42px!important;border-radius:14px!important;font-size:31px!important;padding-top:8px!important}
  html.wfms-platform-android .wfms-president-message-kicker{margin-bottom:4px!important;gap:2px!important}
  html.wfms-platform-android .wfms-president-message-kicker span{font-size:9px!important;letter-spacing:1.1px!important}
  html.wfms-platform-android .wfms-president-message-kicker time{font-size:10px!important}
  html.wfms-platform-android .wfms-president-message h2{font-size:16px!important;line-height:1.15!important;margin:0 0 6px!important}
  html.wfms-platform-android .wfms-president-message p{font-size:11.5px!important;line-height:1.42!important}
  html.wfms-platform-android .wfms-president-message-footer{margin-top:9px!important;padding-top:8px!important;gap:2px!important}
  html.wfms-platform-android .wfms-president-message-footer strong{font-size:11px!important;line-height:1.1!important}
  html.wfms-platform-android .wfms-president-message-footer small{font-size:9px!important;line-height:1.2!important}
  html.wfms-platform-android .wfms-president-message-link{margin-top:6px!important;padding:7px 10px!important;font-size:10px!important}

  html.wfms-platform-android .wfms-card.wfms-info{padding:11px 12px!important;margin-bottom:6px!important;border-radius:14px!important}
  html.wfms-platform-android .wfms-card.wfms-info h3{font-size:15px!important;line-height:1.15!important;margin:0 0 6px!important}
  html.wfms-platform-android .wfms-card.wfms-info p{font-size:11px!important;line-height:1.35!important;margin:5px 0!important}
}

/* NTIMA OS v10.7.0 — fast lazy member-route loading */
.wfms-section-loader{min-height:240px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:#5e7167}
.wfms-section-loader span{width:34px;height:34px;border:3px solid #dceae2;border-top-color:#087443;border-radius:50%;animation:wfms-fast-spin .7s linear infinite}
.wfms-section-loader p{margin:0;font-size:13px;font-weight:750}
.wfms-load-error{text-align:center;padding:28px}
@keyframes wfms-fast-spin{to{transform:rotate(360deg)}}

/* NTIMA OS v10.8.14 — Kindle-style training reader and direct PDF/Word upload. */
.wfms-training-resource-section{display:grid;gap:16px}.wfms-training-upload-box{display:grid;gap:14px;padding:18px;border:1px solid #cfe2d7;border-radius:18px;background:linear-gradient(135deg,#f8fcfa,#edf8f2)}.wfms-training-upload-copy strong{display:block;color:#075d39;font-size:16px}.wfms-training-upload-copy p{margin:5px 0 0;color:#5d7066;line-height:1.5}.wfms-training-file-picker{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:16px;border:1px dashed #78b795;border-radius:14px;background:#fff;cursor:pointer}.wfms-training-file-picker>span{display:inline-flex;padding:9px 13px;border-radius:10px;background:#087443;color:#fff;font-weight:800}.wfms-training-file-picker input{max-width:100%}.wfms-training-file-picker small{color:#64748b}.wfms-training-current-file{display:grid;gap:6px;padding:13px 15px;border-radius:12px;background:#fff;border:1px solid #dfe9e3}.wfms-training-current-file>span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#087443;font-weight:800}.wfms-training-current-file>strong{overflow-wrap:anywhere}.wfms-training-current-file label{font-size:13px;color:#7a2e2e}
.wfms-training-reading-intro{display:flex;align-items:center;gap:18px;padding:22px;margin:18px 0;border:1px solid #cfe2d7;border-radius:20px;background:linear-gradient(135deg,#f7fcf9,#edf8f2)}.wfms-training-reading-icon{width:64px;height:64px;flex:0 0 64px;display:grid;place-items:center;border-radius:18px;background:#087443;color:#fff;font-size:30px;box-shadow:0 12px 30px rgba(8,116,67,.2)}.wfms-training-reading-intro span{display:block;color:#087443;font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.wfms-training-reading-intro h3{margin:4px 0 7px;color:#173f31}.wfms-training-reading-intro p{margin:0;color:#64748b;line-height:1.55}.wfms-training-start-reading{margin:0 0 18px}.wfms-training-video-action{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin:16px 0;padding:16px;border:1px solid #dfe9e3;border-radius:16px;background:#fff}.wfms-training-video-action>span{width:46px;height:46px;display:grid;place-items:center;border-radius:50%;background:#e9f7ef;color:#087443;font-size:20px}.wfms-training-video-action small{display:block;color:#64748b;margin-top:3px}
.wfms-kindle-reader{--wfms-reader-font:18px;position:relative;margin:18px 0;border:1px solid #cfded5;border-radius:22px;background:#f8f5ed;box-shadow:0 18px 50px rgba(25,54,42,.12);overflow:hidden}.wfms-kindle-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;background:#173f31;color:#fff}.wfms-kindle-toolbar>div:first-child{min-width:0}.wfms-kindle-toolbar span{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#b9dec9}.wfms-kindle-toolbar strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:560px}.wfms-kindle-controls{display:flex;gap:7px;flex:0 0 auto}.wfms-kindle-controls button{width:38px;height:38px;border:1px solid rgba(255,255,255,.22);border-radius:10px;background:rgba(255,255,255,.1);color:#fff;font:inherit;font-weight:800;cursor:pointer}.wfms-kindle-controls button:hover,.wfms-kindle-controls button:focus-visible{background:rgba(255,255,255,.2)}.wfms-kindle-progress{height:4px;background:#dfe8e1}.wfms-kindle-progress i{display:block;width:0;height:100%;background:linear-gradient(90deg,#0a8d50,#8bd46c);transition:width .2s ease}.wfms-kindle-page{height:min(68vh,760px);min-height:420px;overflow:auto;padding:clamp(24px,5vw,64px);scroll-behavior:smooth;background:#f8f5ed;color:#2c302e}.wfms-kindle-article{max-width:780px;margin:0 auto;font-family:Georgia,'Times New Roman',serif;font-size:var(--wfms-reader-font);line-height:1.85}.wfms-kindle-article h2,.wfms-kindle-article h3,.wfms-kindle-article h4{font-family:inherit;color:#193c2e;line-height:1.3;margin-top:1.5em}.wfms-kindle-article p{margin:0 0 1.15em}.wfms-kindle-article li{margin:.5em 0}.wfms-kindle-frame{display:block;width:100%;height:100%;min-height:600px;border:0;background:#fff}.wfms-kindle-table-wrap{overflow:auto;margin:1.4em 0}.wfms-kindle-table-wrap table{width:100%;border-collapse:collapse;background:#fff}.wfms-kindle-table-wrap td{padding:10px;border:1px solid #d7ded9}.wfms-kindle-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 16px;background:#fff;border-top:1px solid #dfe9e3}.wfms-kindle-footer>span{font-size:12px;color:#64748b;font-weight:700}.wfms-kindle-reader.is-sepia .wfms-kindle-page{background:#f3e8cc}.wfms-kindle-reader.is-dark .wfms-kindle-page{background:#15211b;color:#e7eee9}.wfms-kindle-reader.is-dark .wfms-kindle-article h2,.wfms-kindle-reader.is-dark .wfms-kindle-article h3,.wfms-kindle-reader.is-dark .wfms-kindle-article h4{color:#c9ead7}.wfms-kindle-reader:fullscreen{border-radius:0;border:0;width:100vw;height:100vh;display:flex;flex-direction:column}.wfms-kindle-reader:fullscreen .wfms-kindle-page{height:auto;min-height:0;flex:1}.wfms-kindle-reader:fullscreen .wfms-kindle-frame{min-height:100%}.wfms-training-test-panel{margin:22px 0;padding:22px;border:1px solid #bedbc9;border-radius:20px;background:linear-gradient(180deg,#fff,#f7fcf9);box-shadow:0 12px 34px rgba(15,78,48,.08)}.wfms-training-test-panel[hidden]{display:none!important}.wfms-training-test-head{margin-bottom:16px}.wfms-training-test-head>span{display:block;color:#087443;font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.wfms-training-test-head h3{margin:5px 0}.wfms-training-test-head p{margin:0;color:#64748b}.wfms-training-test-panel.is-visible{animation:wfmsTestReveal .35s ease both}@keyframes wfmsTestReveal{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(max-width:700px){.wfms-training-reading-intro{align-items:flex-start;padding:17px}.wfms-training-reading-icon{width:52px;height:52px;flex-basis:52px;border-radius:15px}.wfms-training-video-action{grid-template-columns:auto 1fr}.wfms-training-video-action .wfms-btn{grid-column:1/-1;width:100%;text-align:center}.wfms-kindle-reader{margin-left:-2px;margin-right:-2px;border-radius:18px}.wfms-kindle-toolbar{align-items:flex-start;padding:12px}.wfms-kindle-toolbar strong{max-width:42vw;font-size:13px}.wfms-kindle-controls{gap:4px}.wfms-kindle-controls button{width:34px;height:34px;border-radius:9px;font-size:13px}.wfms-kindle-page{height:62vh;min-height:430px;padding:26px 20px}.wfms-kindle-frame{min-height:520px}.wfms-kindle-footer{padding:11px 12px}.wfms-kindle-footer .wfms-btn{padding:10px 13px;font-size:13px}.wfms-training-test-panel{padding:17px}}
.wfms-kindle-complete{display:inline-flex;align-items:center;padding:10px 13px;border-radius:999px;background:#e8f7ee;color:#087443;font-size:13px}.wfms-kindle-reader.is-pseudo-fullscreen{position:fixed!important;inset:0!important;z-index:100000!important;width:100vw!important;height:100vh!important;margin:0!important;border:0!important;border-radius:0!important;display:flex!important;flex-direction:column!important}.wfms-kindle-reader.is-pseudo-fullscreen .wfms-kindle-page{height:auto!important;min-height:0!important;flex:1}.wfms-kindle-reader.is-pseudo-fullscreen .wfms-kindle-frame{min-height:100%!important}

/* NTIMA OS v10.8.15 — working Kindle controls and compact page navigation. */
.wfms-kindle-navigation{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto}.wfms-kindle-navigation button{width:38px;height:38px;display:inline-grid;place-items:center;border:1px solid #bed8c8;border-radius:11px;background:#edf8f1;color:#075d39;font-size:25px;font-weight:900;line-height:1;cursor:pointer}.wfms-kindle-navigation button:hover,.wfms-kindle-navigation button:focus-visible{background:#dff1e6;border-color:#87bea0;outline:2px solid rgba(10,141,80,.18);outline-offset:2px}.wfms-kindle-navigation button:disabled{opacity:.38;cursor:not-allowed;box-shadow:none}.wfms-kindle-navigation span{min-width:84px;text-align:center;color:#234c3a;font-size:12px;font-weight:900;white-space:nowrap}.wfms-kindle-reader.is-sepia .wfms-kindle-frame{filter:sepia(.18) saturate(.9)}.wfms-kindle-reader.is-dark .wfms-kindle-frame{filter:invert(.9) hue-rotate(180deg);background:#111}.wfms-kindle-frame{touch-action:pan-x pan-y pinch-zoom}.wfms-kindle-footer>[data-wfms-reader-progress-label]{margin-right:auto}.wfms-kindle-reader.is-pseudo-fullscreen .wfms-kindle-footer,.wfms-kindle-reader:fullscreen .wfms-kindle-footer{padding-bottom:max(13px,env(safe-area-inset-bottom))}
@media(max-width:700px){.wfms-kindle-footer{flex-wrap:wrap;gap:10px}.wfms-kindle-navigation{order:1}.wfms-kindle-footer>[data-wfms-reader-progress-label]{order:2;margin-left:auto;margin-right:0}.wfms-kindle-footer>[data-wfms-open-training-test],.wfms-kindle-footer>.wfms-kindle-complete{order:3;width:100%;justify-content:center;text-align:center}.wfms-kindle-navigation button{width:42px;height:42px}.wfms-kindle-navigation span{min-width:78px;font-size:11px}}

/* NTIMA OS v10.8.16 — responsive phone PDF canvas area. */
.wfms-kindle-page-pdf{padding:0!important;overflow:hidden!important;display:flex;align-items:stretch;justify-content:stretch;background:#edf2ef!important}
.wfms-kindle-page-pdf .wfms-kindle-frame{width:100%!important;height:100%!important;min-height:0!important;max-width:100%!important;display:block!important;border:0!important;transform:none!important}
.wfms-kindle-frame[aria-busy="true"]{opacity:.72}
.wfms-kindle-controls button:disabled{opacity:.42;cursor:not-allowed}
@media(max-width:700px){.wfms-kindle-page-pdf{height:clamp(420px,calc((100vw - 36px)*1.414),72dvh);min-height:0;max-height:72dvh;align-items:center;justify-content:center}.wfms-kindle-page-pdf .wfms-kindle-frame{width:100%!important;height:100%!important;max-height:72dvh!important}}
.wfms-kindle-reader:fullscreen .wfms-kindle-page-pdf,.wfms-kindle-reader.is-pseudo-fullscreen .wfms-kindle-page-pdf{height:auto!important;min-height:0!important;flex:1}
.wfms-kindle-reader:fullscreen .wfms-kindle-page-pdf .wfms-kindle-frame,.wfms-kindle-reader.is-pseudo-fullscreen .wfms-kindle-page-pdf .wfms-kindle-frame{height:100%!important}

/* NTIMA OS v10.8.19 — responsive multi-page PDF canvas reader. */
.wfms-pdf-canvas-stage{position:relative;display:block;width:100%;max-width:100%;min-height:360px;padding:8px;overflow:auto;background:#ecebe5;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.wfms-pdf-canvas-stage canvas{display:block;max-width:none;margin:0 auto;background:#fff;box-shadow:0 8px 24px rgba(15,23,42,.16)}
.wfms-pdf-loading{position:absolute;inset:0;display:grid;place-items:center;padding:24px;background:rgba(250,250,247,.92);color:#315d4a;font-weight:800;text-align:center;z-index:2}
.wfms-pdf-loading[hidden]{display:none!important}
.wfms-pdf-canvas-stage.has-error{min-height:120px}
.wfms-pdf-fallback{width:100%;min-height:68vh;border:0}
.wfms-kindle-page-pdf{padding:0!important;overflow:auto!important}
@media(max-width:600px){.wfms-pdf-canvas-stage{min-height:52vh;padding:4px}.wfms-pdf-canvas-stage canvas{box-shadow:none}.wfms-kindle-page-pdf{min-height:54vh}}

/* NTIMA OS v10.8.19 — enforce a single centred PDF page; never expose the browser PDF viewer/sidebar. */
.wfms-kindle-page-pdf iframe[data-wfms-reader-pdf-frame],.wfms-kindle-page-pdf .wfms-pdf-fallback{display:none!important;visibility:hidden!important;width:0!important;height:0!important;min-height:0!important;border:0!important}
.wfms-pdf-error-message{display:grid;gap:10px;justify-items:center;max-width:420px;margin:auto;padding:22px;text-align:center}
.wfms-pdf-error-message strong{color:#8a1c1c;font-size:16px}
.wfms-pdf-error-message span{color:#52645d;font-size:13px;line-height:1.5}
.wfms-pdf-error-message button{border:0;border-radius:12px;padding:11px 18px;background:#087443;color:#fff;font-weight:800;cursor:pointer}
@media(max-width:700px){.wfms-pdf-canvas-stage{padding:4px}.wfms-pdf-canvas-stage canvas{margin:0 auto;box-shadow:none}}

/* NTIMA OS v10.8.20 — editable training acknowledgement and digital signature. */
.wfms-training-acknowledgement{margin:0;border-top:1px solid #d9e7df;background:linear-gradient(180deg,#f8fcf9 0%,#fff 100%);padding:22px 24px;color:#173f31}
.wfms-training-ack-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}
.wfms-training-ack-head span:first-child{display:block;color:#a57912;font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.wfms-training-ack-head h3{margin:5px 0 5px;color:#075d39;font-size:25px;line-height:1.15}
.wfms-training-ack-head p{margin:0;color:#60756a;line-height:1.5}
.wfms-training-ack-lock{display:inline-flex!important;align-items:center;min-height:36px;padding:0 12px;border-radius:999px;background:#edf8f1;color:#087443!important;font-size:11px!important;letter-spacing:0!important;white-space:nowrap}
.wfms-training-ack-form{display:grid;gap:16px}
.wfms-training-ack-grid{display:grid;grid-template-columns:1.25fr .8fr .7fr;gap:12px}
.wfms-training-ack-grid label{display:grid;gap:7px;min-width:0}
.wfms-training-ack-grid label>span,.wfms-signature-label>span{font-size:12px;font-weight:800;color:#315d4a;text-transform:uppercase;letter-spacing:.05em}
.wfms-training-ack-grid input{width:100%;min-width:0;min-height:46px;border:1px solid #cbded3;border-radius:12px;background:#fff;padding:10px 12px;color:#173f31;font-size:15px;box-shadow:inset 0 1px 2px rgba(15,23,42,.03)}
.wfms-training-ack-grid input[readonly]{background:#f1f6f3;color:#52645d}
.wfms-signature-field{display:grid;gap:10px}
.wfms-signature-label{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.wfms-signature-label small{color:#6a7c72;font-size:12px}
.wfms-signature-surface{position:relative;width:100%;min-height:150px;border:2px dashed #9bc8ae;border-radius:16px;background:linear-gradient(#fff,#fbfdfc);overflow:hidden;touch-action:none}
.wfms-signature-surface:after{content:"";position:absolute;left:7%;right:7%;bottom:28px;border-bottom:1px solid #cfddd5;pointer-events:none}
.wfms-signature-surface canvas{position:relative;z-index:2;display:block;width:100%;height:150px;cursor:crosshair;touch-action:none}
.wfms-signature-surface img{position:absolute;z-index:1;inset:10px;width:calc(100% - 20px);height:calc(100% - 20px);object-fit:contain;background:#fff}
.wfms-signature-actions{display:flex;align-items:center;gap:12px;justify-content:space-between}
.wfms-signature-actions .wfms-btn{padding:9px 14px;min-height:38px}
.wfms-signature-actions small{color:#6a7c72;text-align:right}
.wfms-training-ack-confirm{display:flex;gap:11px;align-items:flex-start;padding:14px;border:1px solid #d9e7df;border-radius:14px;background:#f8fbf9;color:#315044;font-size:13px;line-height:1.45}
.wfms-training-ack-confirm input{margin-top:3px;width:18px;height:18px;accent-color:#087443;flex:0 0 auto}
.wfms-training-ack-submit{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.wfms-training-ack-submit>[data-wfms-ack-message]{color:#087443;font-size:13px;font-weight:800}
.wfms-training-acknowledgement.has-error{box-shadow:inset 0 0 0 2px #dc2626}
.wfms-training-acknowledgement.has-error [data-wfms-ack-message]{color:#b91c1c}
.wfms-training-ack-status{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:16px;padding:13px 15px;border-radius:14px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412}
.wfms-training-ack-status strong,.wfms-training-ack-status span{display:block}
.wfms-training-ack-status span{font-size:12px}
.wfms-training-ack-status.is-saved{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}
.wfms-kindle-footer [data-wfms-open-training-test][disabled]{opacity:.48;cursor:not-allowed;filter:grayscale(.25);box-shadow:none}
@media(max-width:700px){
  .wfms-training-acknowledgement{padding:18px 14px}
  .wfms-training-ack-head{display:grid;gap:10px}
  .wfms-training-ack-lock{justify-self:start}
  .wfms-training-ack-grid{grid-template-columns:1fr}
  .wfms-signature-label{display:grid;gap:4px}
  .wfms-signature-surface{min-height:135px}
  .wfms-signature-surface canvas{height:135px}
  .wfms-signature-actions{align-items:flex-start}
  .wfms-signature-actions small{font-size:11px;max-width:60%}
  .wfms-training-ack-submit .wfms-btn{width:100%;justify-content:center}
  .wfms-training-ack-status{display:grid;gap:4px}
}


/* NTIMA OS v10.8.21 — automatic first-part completion at the last page. */
.wfms-training-acknowledgement{display:none!important}
.wfms-training-reading-complete{display:flex;align-items:center;gap:16px;margin:0;padding:18px 20px;border-top:1px solid #cfe4d7;background:linear-gradient(135deg,#edf9f2 0%,#f8fcf9 55%,#fff 100%);color:#173f31}
.wfms-training-reading-complete[hidden]{display:none!important}
.wfms-training-reading-complete-icon{display:grid;place-items:center;width:52px;height:52px;flex:0 0 52px;border-radius:50%;background:linear-gradient(135deg,#087443,#0ca35a);color:#fff;font-size:26px;font-weight:900;box-shadow:0 10px 24px rgba(8,116,67,.22)}
.wfms-training-reading-complete small{display:block;margin-bottom:3px;color:#a57912;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.wfms-training-reading-complete h3{margin:0 0 4px;color:#075d39;font-size:21px;line-height:1.2}
.wfms-training-reading-complete p{margin:0;color:#526b5e;font-size:13px;line-height:1.5}
.wfms-kindle-footer [data-wfms-open-training-test][disabled]{opacity:.48;cursor:not-allowed;filter:grayscale(.25);box-shadow:none}
@media(max-width:700px){.wfms-training-reading-complete{align-items:flex-start;padding:16px 14px;gap:12px}.wfms-training-reading-complete-icon{width:44px;height:44px;flex-basis:44px;font-size:22px}.wfms-training-reading-complete h3{font-size:18px}.wfms-training-reading-complete p{font-size:12px}}

/* NTIMA OS v10.8.22 — course preview and safe test mode. */
.wfms-training-preview-page{max-width:1240px}.wfms-training-preview-notice{display:flex;align-items:center;gap:14px;margin:16px 0 20px;padding:16px 18px;border:1px solid #9bd2b3;border-left:5px solid #087443;border-radius:16px;background:#f0fbf5;color:#234b3a}.wfms-training-preview-notice>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#087443;color:#fff;font-size:21px;font-weight:900}.wfms-training-preview-notice strong{display:block;color:#075d39;font-size:16px}.wfms-training-preview-notice p{margin:3px 0 0;color:#52675d}.wfms-training-preview-actions{display:flex;gap:8px;margin-left:auto;flex-wrap:wrap}.wfms-training-preview-shell{padding:22px}.wfms-training-preview-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.wfms-training-preview-meta span,.wfms-training-preview-chip{display:inline-flex;align-items:center;min-height:32px;padding:0 11px;border-radius:999px;background:#edf7f1;color:#075d39;font-size:12px;font-weight:800}.wfms-training-preview-chip{background:#fff1c7;color:#7b5900}.wfms-training-preview-course{max-width:980px;margin:0 auto}.wfms-training-preview-course>.wfms-page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.wfms-training-preview-test{margin-top:18px}.wfms-training-preview-submit{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.wfms-training-preview-result{margin-top:16px;padding:16px 18px;border-radius:14px;border:1px solid #f0b5b5;background:#fff4f4;color:#8d1b1b}.wfms-training-preview-result.is-success{border-color:#9bd2b3;background:#f0fbf5;color:#075d39}.wfms-training-preview-result small{display:block;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.wfms-training-preview-result strong{display:block;margin:5px 0;font-size:30px}.wfms-training-preview-result p{margin:0}.wfms-training-preview-quiz fieldset.is-preview-correct{border-color:#84c99e;background:#f3fcf6}.wfms-training-preview-quiz fieldset.is-preview-incorrect,.wfms-training-preview-quiz fieldset.is-preview-unanswered{border-color:#efb3b3;background:#fff7f7}.wfms-training-preview-quiz label.is-preview-answer{color:#075d39;font-weight:800}.wfms-training-preview-quiz label.is-preview-selected-wrong{color:#a61b1b;text-decoration:line-through}.wfms-preview-question-feedback{margin-top:10px;padding:10px 12px;border-radius:10px;background:rgba(255,255,255,.82)}.wfms-preview-question-feedback strong,.wfms-preview-question-feedback span{display:block}.wfms-preview-question-feedback span{margin-top:4px;color:#52675d}.wfms-test-course-button{border-color:#087443!important;color:#087443!important;font-weight:700!important}.wfms-course-admin-actions{display:flex!important;gap:8px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:780px){.wfms-training-preview-notice{align-items:flex-start;flex-wrap:wrap}.wfms-training-preview-actions{width:100%;margin-left:0}.wfms-training-preview-actions .button{flex:1;text-align:center}.wfms-training-preview-shell{padding:14px}.wfms-training-preview-course>.wfms-page-head{display:block}.wfms-training-preview-chip{margin-top:10px}.wfms-course-admin-actions{justify-content:flex-start}}


/* NTIMA OS v13.1.27 — product-only pre-authentication identity */
body:has(.wfms-preauth-neutral){background:#eaf3fa!important}
body:has(.wfms-preauth-neutral) #site-header,body:has(.wfms-preauth-neutral) #footer,body:has(.wfms-preauth-neutral) #footer-widgets,body:has(.wfms-preauth-neutral) .page-header,body:has(.wfms-preauth-neutral) .site-breadcrumbs,body:has(.wfms-preauth-neutral) #scroll-top{display:none!important}
.wfms-preauth-neutral{--ntima-blue:#0b3b66;--ntima-blue-dark:#071f36;--ntima-blue-soft:#eaf3fa;--ntima-black:#111827;--ntima-white:#fff;background:radial-gradient(circle at 12% 14%,rgba(67,145,204,.18),transparent 30%),radial-gradient(circle at 88% 78%,rgba(11,59,102,.12),transparent 34%),linear-gradient(160deg,#f8fbfe 0%,#eaf3fa 56%,#fff 100%)!important;color:var(--ntima-black)}
.wfms-preauth-neutral:before{background-image:linear-gradient(rgba(11,59,102,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(11,59,102,.035) 1px,transparent 1px)!important}
.wfms-preauth-neutral .wfms-login-top-logo{width:190px;height:66px;object-fit:contain;border:1px solid #d7e5f1;background:#fff;padding:7px 12px;box-shadow:0 10px 28px rgba(7,42,73,.12)}
.wfms-preauth-neutral .wfms-login-hero h1,.wfms-preauth-neutral .wfms-login-hero b,.wfms-preauth-neutral .wfms-login-inline-links a,.wfms-preauth-neutral .wfms-login-mobile-extra summary,.wfms-preauth-neutral .wfms-login-extra-content a,.wfms-preauth-neutral .wfms-login-extra-content span,.wfms-preauth-neutral .wfms-login-mini-footer b,.wfms-preauth-neutral .wfms-reset-support a,.wfms-preauth-neutral .wfms-reset-back{color:var(--ntima-blue)!important}
.wfms-preauth-neutral .wfms-login-hero p,.wfms-preauth-neutral .wfms-login-heading p,.wfms-preauth-neutral .wfms-login-extra-content p,.wfms-preauth-neutral .wfms-login-mini-footer,.wfms-preauth-neutral .wfms-login-trust-compact span{color:#475569!important}
.wfms-preauth-neutral .wfms-login-compact-card,.wfms-preauth-neutral .wfms-login-mobile-extra{border-color:#d7e5f1;box-shadow:0 16px 42px rgba(7,42,73,.14)}
.wfms-preauth-neutral .wfms-login-trust-compact{border-color:#e2e8f0;background:#f8fbfe}
.wfms-preauth-neutral .wfms-login-join-button,.wfms-preauth-neutral .wfms-um-login input[type=submit],.wfms-preauth-neutral .wfms-um-login .um-button,.wfms-preauth-neutral .login-submit input,.wfms-preauth-neutral .wfms-reset-form button,.wfms-preauth-neutral .wfms-reset-primary-link,.wfms-preauth-neutral .wfms-btn{background:var(--ntima-blue)!important;background-image:none!important;color:#fff!important;border-color:var(--ntima-blue)!important;box-shadow:0 8px 20px rgba(11,59,102,.18)!important}
.wfms-preauth-neutral .wfms-login-join-button:hover,.wfms-preauth-neutral .wfms-um-login input[type=submit]:hover,.wfms-preauth-neutral .wfms-um-login .um-button:hover,.wfms-preauth-neutral .login-submit input:hover,.wfms-preauth-neutral .wfms-reset-form button:hover,.wfms-preauth-neutral .wfms-reset-primary-link:hover,.wfms-preauth-neutral .wfms-btn:hover{background:#092f52!important}
.wfms-preauth-neutral input[type=text]:focus,.wfms-preauth-neutral input[type=password]:focus,.wfms-preauth-neutral input[type=email]:focus{border-color:var(--ntima-blue)!important;box-shadow:0 0 0 3px rgba(11,59,102,.14)!important;outline:none!important}
.wfms-preauth-neutral .wfms-reset-support{background:#f1f7fc;color:#334155}
.wfms-preauth-neutral .wfms-login-extra-content img{object-fit:contain;border-radius:14px;background:#fff;padding:7px;border:1px solid #d7e5f1}
@media(max-width:700px){.wfms-preauth-neutral .wfms-login-top-logo{width:132px;height:48px;padding:4px 7px}}
@media(max-height:680px) and (max-width:700px){.wfms-preauth-neutral .wfms-login-top-logo{width:112px;height:42px}}

/* NTIMA OS v13.1.29 — official user-supplied logo and single sign-in */
.wfms-preauth-neutral{--ntima-blue:#4338ca;--ntima-blue-dark:#312e81;--ntima-blue-soft:#eef2ff}
.wfms-preauth-neutral .wfms-login-top-logo{width:260px;height:auto;max-height:110px;background:#0b1020;padding:12px 18px;border-color:rgba(255,255,255,.08);border-radius:18px}
.wfms-preauth-neutral .wfms-login-extra-content img{background:#0b1020;border-color:rgba(255,255,255,.08)}
.wfms-preauth-neutral .wfms-login-join-button,.wfms-preauth-neutral .wfms-um-login input[type=submit],.wfms-preauth-neutral .wfms-um-login .um-button,.wfms-preauth-neutral .login-submit input,.wfms-preauth-neutral .wfms-reset-form button,.wfms-preauth-neutral .wfms-reset-primary-link,.wfms-preauth-neutral .wfms-btn{box-shadow:0 8px 20px rgba(67,56,202,.22)!important}
.wfms-preauth-neutral .wfms-login-join-button:hover,.wfms-preauth-neutral .wfms-um-login input[type=submit]:hover,.wfms-preauth-neutral .wfms-um-login .um-button:hover,.wfms-preauth-neutral .login-submit input:hover,.wfms-preauth-neutral .wfms-reset-form button:hover,.wfms-preauth-neutral .wfms-reset-primary-link:hover,.wfms-preauth-neutral .wfms-btn:hover{background:#312e81!important}
@media(max-width:700px){.wfms-preauth-neutral .wfms-login-top-logo{width:200px;height:auto;max-height:86px;padding:9px 13px}}


/* NTIMA OS v13.1.38 — tenant-owned identity footer on member surfaces. */
.genesis-organisation-footer{display:flex;align-items:center;justify-content:center;gap:8px 16px;flex-wrap:wrap;margin:24px 20px 0;padding:16px 18px 82px;border-top:1px solid #dce7e1;color:#60746a;text-align:center;font-size:11px;line-height:1.45}
.genesis-organisation-footer strong{color:#284b3d;font-weight:800}.genesis-organisation-footer span{color:#60746a}.genesis-organisation-footer small{flex-basis:100%;max-width:980px;color:#788a81}.genesis-organisation-footer em{font-style:normal;font-weight:800;color:#4d42d8}
@media(max-width:700px){.genesis-organisation-footer{align-items:flex-start;flex-direction:column;text-align:left;margin-inline:14px;padding-inline:8px}}
/* NTIMA OS UX18.45 — explicit sent timestamp in the Member notification centre. */
.wfms-notification-meta .wfms-notification-sent-at{display:flex;align-items:center;gap:5px;padding:0;background:transparent;color:#74867d;font-size:11px;font-weight:700;white-space:nowrap}
.wfms-notification-meta .wfms-notification-sent-at>span{padding:0;background:transparent;color:#5f756a;font:inherit;font-weight:800}
.wfms-notification-meta .wfms-notification-sent-at>span:after{content:'·';margin-left:5px;color:#9aaba3}
.wfms-notification-meta .wfms-notification-sent-at time{font:inherit;color:inherit}
