/* ══ STYLES PRINCIPAUX ══ */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}
:root{
  --premium-bg-main:#FAF7F0;
  --premium-bg-secondary:#F2EDE0;
  --premium-primary:#0A1E3F;
  --premium-primary-hover:#1B3A63;
  --premium-gold:#C9A44C;
  --premium-gold-light:#E4CE8F;
  --premium-text:#1A1A1A;
  --premium-text-secondary:#6B6459;
  --premium-border:#DCD5C4;
  --premium-success:#3E6B4F;
  --premium-title-font:Georgia,"Times New Roman",serif;
  --premium-body-font:Inter,"Segoe UI",Roboto,Arial,sans-serif;
  --bg:#f6f5ff;--sur:#fff;--sur2:#f6f5ff;--sur3:#ece8ff;
  --bdr:#e8e6f5;--bdr2:#dcd7f6;
  --tx:#111633;--tx2:#515a74;--tx3:#707892;
  --acc:#5b35f2;--acc2:#7257ff;--acc-bg:#f3f0ff;--acc-fg:#fff;
  --orange:#f59e0b;--orange-bg:#fef3e2;
  --grn:#0f9f6e;--grn-bg:#e3f7ee;
  --amb:#b8780a;--amb-bg:#fdf1dc;
  --blu:#2563eb;--blu-bg:#e8f0fe;
  --red:#dc3a52;--red-bg:#fdeaee;
  --prp:#7c3aed;--prp-bg:#f1ebfe;
  --r:20px;--rs:14px;
  --safe-top:env(safe-area-inset-top,0px);
  --safe-bot:env(safe-area-inset-bottom,0px);
  --safe-left:env(safe-area-inset-left,0px);
  --safe-right:env(safe-area-inset-right,0px);
  --app-h:100dvh; /* recalculé par JS sur Android */
}
html,body{height:100%;background:var(--bg);color:var(--tx);font-family:'Inter',-apple-system,"Helvetica Neue",Arial,sans-serif;font-size:14px;line-height:1.5}

/* ── LAYOUT DESKTOP ── */
.shell{display:flex;flex-direction:column;height:var(--app-h)}
.shell-main{display:grid;grid-template-columns:248px 1fr;flex:1;min-height:0;overflow:hidden}
.rail{background:var(--sur);border-right:1px solid var(--bdr);display:flex;flex-direction:column;padding:18px 14px;overflow-y:auto}
.bot-nav{display:none}
.body{display:flex;flex-direction:column;overflow:hidden;position:relative}
.content{padding:20px 22px;overflow-y:auto;flex:1;width:100%;box-sizing:border-box}

/* ── LAYOUT MOBILE ── */
@media(max-width:768px){
  .shell{display:flex;flex-direction:column;height:var(--app-h);overflow:hidden}
  .shell-main{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}
  .rail{display:none}
  .bot-nav{display:flex;flex-shrink:0;background:var(--sur);border-top:1px solid var(--bdr);padding-bottom:var(--safe-bot)}
  .body{flex:1;overflow:hidden;display:flex;flex-direction:column;min-height:0}
  .topbar{padding-top:max(14px, calc(10px + var(--safe-top)))}
  .content{padding:10px 12px 8px;flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}

  /* ── Dropzone compacte ── */
  .dropzone{padding:14px 12px;margin-bottom:8px}
  .dz-ico{font-size:26px;margin-bottom:3px}
  .dz-title{font-size:13px;margin-bottom:1px;color:var(--tx)}
  .dz-sub{font-size:11px}
  .dz-hint{display:none}

  /* ── Résultat scan : photo à gauche, infos à droite (même logique desktop) ── */
  .rc-top{flex-direction:row!important}
  .rc-photo{width:88px!important;height:88px!important;min-width:88px;flex-shrink:0;border-right:1px solid var(--bdr)!important;border-bottom:none!important}
  .rc-photo img{width:88px!important;height:88px!important}
  .rc-info{padding:7px 10px!important;gap:3px!important}
  .rc-name{font-size:13px!important;line-height:1.3}
  .rc-desc{font-size:11px!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .dbm{display:none!important}
  .sugg{padding:6px 10px}
  .sugg-lbl{display:none}
  .sugg-pills .pill{font-size:10px!important;padding:2px 7px!important}

  /* ── Formulaire : 2 colonnes denses ── */
  .rc-fields{grid-template-columns:1fr 1fr!important;gap:5px!important;padding:7px 10px!important}
  .field label{font-size:10px!important;margin-bottom:2px}
  .field input,.field select{font-size:12px!important;padding:5px 7px!important}
  .field textarea{font-size:11px!important;padding:4px 7px!important;min-height:32px!important}
  .field.s3,.s3{grid-column:span 2!important}
  /* Le bloc assurance reste piloté par JS même sur mobile */

  /* ── Pied du formulaire ── */
  .rc-foot{padding:6px 10px!important;gap:5px!important}
  .rc-foot .btn{font-size:11px!important;padding:5px 9px!important}
  .rc-foot-hint{display:none}
  .pbar{margin-bottom:3px}

  /* ── Setup card ── */
  .setup-card{margin-bottom:6px}
  .backup-row{padding:6px 10px;flex-wrap:wrap;gap:5px}

  /* ── Home : grille 2x2 + 5e centré ── */
  .quick{grid-template-columns:repeat(2,1fr)!important;gap:8px!important}
  .quick-card{padding:11px 10px!important}
  .quick-ico{width:34px!important;height:34px!important;border-radius:10px!important;font-size:16px!important}
  .quick-card b{font-size:12px!important}
  .quick-card p{font-size:10px!important;margin-top:1px;display:none}
  #qc-vault{grid-column:auto}

  /* ── Grille inventaire ── */
  .sgrid{grid-template-columns:repeat(2,1fr)!important}
  .scan-btns{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px}
  .edit-grid{grid-template-columns:1fr!important}
  .ef.full{grid-column:1!important}
  .modal{width:100%!important;max-width:100%!important;max-height:calc(100vh - 190px);border-radius:20px!important}
  .overlay{align-items:flex-start!important;padding-top:calc(90px + env(safe-area-inset-top,0px));padding-bottom:calc(110px + env(safe-area-inset-bottom,0px))}
  .modal-handle{display:block}
  #modal-body{max-height:calc(100vh - 230px);padding:16px;padding-bottom:160px}
}

/* ── iPhone très compact (<390px) ── */
@media(max-width:390px){
  .content{padding:8px 10px 6px}
  .dropzone{padding:10px 8px;margin-bottom:6px}
  .rc-photo{width:76px!important;height:76px!important;min-width:76px}
  .rc-photo img{width:76px!important;height:76px!important}
  .rc-fields{gap:4px!important;padding:5px 8px!important}
  .quick{gap:6px!important}
}

/* ── RAIL ── */
.logo-wrap{display:flex;align-items:center;gap:10px;padding:4px 6px 18px;border-bottom:1px solid var(--bdr);margin-bottom:14px}
.logo-box{width:38px;height:38px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;overflow:hidden;background:#ffffff}
.logo-box img{width:100%;height:100%;object-fit:contain}
.logo-name{font-size:16px;font-weight:800;letter-spacing:-.4px}
.logo-sub{font-size:10px;color:var(--tx3)}
.rnav{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:var(--rs);cursor:pointer;font-size:13px;color:var(--tx2);border:none;background:none;width:100%;text-align:left;transition:all .15s;font-family:inherit;margin-bottom:2px;font-weight:500}
.rnav:hover{background:var(--sur2);color:var(--tx)}
.rnav.on{background:var(--acc);color:var(--acc-fg);font-weight:600;box-shadow:0 6px 16px rgba(91,53,242,.3)}
.rnav .ico{font-size:17px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}
.ico svg,.bot-ico svg,.quick-ico svg{display:block;width:1.15em;height:1.15em;flex-shrink:0}
/* Icônes SVG génériques (remplacent les emoji dans les textes, tags, boutons).
   Taille = police du parent (comme un emoji), couleur = currentColor. */
.nf-ico{display:inline-block;width:1em;height:1em;vertical-align:-.15em;flex-shrink:0}
.bot-ico-logo{width:24px!important;height:24px!important;border-radius:7px;overflow:hidden}
.bot-ico-logo img{width:100%;height:100%;object-fit:cover;display:block}
.nbadge{margin-left:auto;font-size:10px;background:var(--sur3);color:var(--tx2);padding:1px 7px;border-radius:20px}
.rnav.on .nbadge{background:rgba(255,255,255,.22);color:#fff}
.rsec{font-size:10px;color:var(--tx3);padding:14px 12px 4px;text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.cat-row{display:flex;align-items:center;gap:8px;padding:6px 12px;border-radius:var(--rs);cursor:pointer;font-size:12px;color:var(--tx2);border:none;background:none;width:100%;text-align:left;font-family:inherit;transition:background .12s}
.cat-row:hover{background:var(--sur2)}
.cdot{width:7px;height:7px;border-radius:50%;flex-shrink:0}
.ccount{margin-left:auto;font-size:10px;color:var(--tx3)}
.rail-foot{display:none;margin-top:auto;padding:14px 12px 0;border-top:1px solid var(--bdr)}
.rf{display:flex;justify-content:space-between;font-size:11px;color:var(--tx2);padding:3px 0}
.rf strong{color:var(--tx);font-weight:600}

/* ── BOTTOM NAV ── */
.bot-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 4px;border:none;background:none;cursor:pointer;font-family:inherit;color:var(--tx3);font-size:10px;position:relative;font-weight:500}
.bot-btn.on{color:var(--acc)}
.bot-ico{font-size:20px;line-height:1;width:34px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:10px;transition:background .15s}
.bot-btn.on .bot-ico{background:var(--acc-bg)}
.bot-badge{position:absolute;top:2px;right:calc(50% - 22px);background:#e24b4a;color:#fff;font-size:9px;font-weight:700;min-width:16px;height:16px;border-radius:8px;display:none;align-items:center;justify-content:center;padding:0 3px}

/* ── TOPBAR ── */
.topbar{background:var(--sur);border-bottom:1px solid var(--bdr);padding:12px 22px;display:flex;align-items:center;gap:10px;flex-shrink:0;position:relative;z-index:999;width:100%;box-sizing:border-box}
.topbar-title{font-size:17px;font-weight:800;letter-spacing:-.3px;flex:1}
.save-indicator{font-size:11px;color:var(--grn);display:none;align-items:center;gap:4px}
.save-indicator.show{display:flex}

/* ── BUTTONS ── */
.btn{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border-radius:var(--rs);font-size:13px;font-weight:600;cursor:pointer;border:1px solid var(--bdr2);background:var(--sur);color:var(--tx);transition:all .15s;font-family:inherit;white-space:nowrap;-webkit-appearance:none}
.btn:hover{background:var(--sur2)}
.btn:active{transform:scale(.97)}
.btn-dark{background:linear-gradient(135deg,var(--acc),var(--acc2));color:var(--acc-fg);border-color:transparent;box-shadow:0 6px 16px rgba(91,53,242,.3)}
.btn-dark:hover{background:var(--acc2);opacity:1}
.btn-grn{background:var(--grn-bg);color:var(--grn);border-color:transparent}
.btn-red{background:var(--red-bg);color:var(--red);border-color:transparent}
.btn-danger{background:var(--red);color:#fff;border-color:transparent;box-shadow:0 6px 16px rgba(220,58,82,.24)}
.btn-danger:hover{background:#c72f45;color:#fff}
.account-head{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.account-av{width:48px;height:48px;border-radius:16px;background:var(--acc);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:18px;flex-shrink:0}
.account-title{font-size:18px;font-weight:800;letter-spacing:-.3px}
.account-sub{font-size:12px;color:var(--tx2);word-break:break-all}
.account-actions{display:flex;gap:8px;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-top:14px;padding-top:14px;border-top:1px solid var(--bdr)}
.account-msg{font-size:12px;margin-top:10px;padding:8px 11px;border-radius:var(--rs);display:none}
.account-msg.ok{display:block;background:var(--grn-bg);color:var(--grn)}
.account-msg.err{display:block;background:var(--red-bg);color:var(--red)}
.btn-sm{padding:6px 12px;font-size:12px}
.btn-block{width:100%;justify-content:center}

/* ── VIEWS ── */
.view{display:none}.view.on{display:block}

/* ── SETUP ── */
.setup-card{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);overflow:hidden;margin-bottom:16px;box-shadow:0 8px 22px rgba(22,22,60,.05)}
.setup-sec{padding:13px 15px;border-bottom:1px solid var(--bdr)}
.setup-sec:last-child{border-bottom:none}
.setup-title{font-size:13px;font-weight:600;margin-bottom:9px;display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.irow{display:flex;gap:8px;align-items:center;margin-bottom:7px}
.irow:last-child{margin-bottom:0}
.irow input{flex:1;min-width:0;padding:7px 10px;border-radius:var(--rs);border:1px solid var(--bdr2);font-size:12px;background:var(--sur2);color:var(--tx);-webkit-appearance:none}
.irow input:focus{outline:none;border-color:var(--acc);background:#fff}
.sbadge{display:inline-flex;align-items:center;gap:5px;font-size:11px;padding:3px 9px;border-radius:20px;font-weight:500;margin-top:5px}
.sb-ok{background:var(--grn-bg);color:var(--grn)}
.sb-err{background:var(--red-bg);color:var(--red)}

/* ── BACKUP BANNER ── */
.backup-row{display:flex;gap:8px;flex-wrap:wrap;padding:11px 15px;background:var(--sur2);border-top:1px solid var(--bdr)}
.backup-info{font-size:11px;color:var(--tx3);padding:4px 0;flex:1}

/* ── DROP ZONE ── */
.dropzone{border:2px dashed var(--bdr2);border-radius:var(--r);padding:36px 20px;text-align:center;cursor:pointer;background:var(--sur);transition:all .2s;margin-bottom:16px}
.dropzone:hover,.dropzone.over{border-color:var(--acc);background:var(--acc-bg)}
.dz-ico{font-size:38px;margin-bottom:10px;opacity:.35;display:block}
.dz-title{font-size:15px;font-weight:700;margin-bottom:4px;color:var(--tx)}
.dz-sub{font-size:12px;color:var(--tx2)}
.dz-hint{font-size:11px;color:var(--tx3);margin-top:5px}

/* ── PROGRESS ── */
.pbar{height:3px;background:var(--sur2);border-radius:2px;overflow:hidden;margin-bottom:6px;display:none}
.pbar-fill{height:100%;background:var(--acc);animation:pba 1.8s ease-in-out infinite}
@keyframes pba{0%{width:0;margin-left:0}50%{width:55%;margin-left:20%}100%{width:0;margin-left:100%}}
.mlbl{font-size:11px;color:var(--tx3);margin-bottom:12px;display:none;text-align:center}

/* ── RESULT CARD ── */
.rcard{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);overflow:hidden;display:none;margin-bottom:14px;box-shadow:0 8px 22px rgba(22,22,60,.05)}
.rc-top{display:flex;border-bottom:1px solid var(--bdr)}
.rc-photo{width:160px;height:160px;flex-shrink:0;overflow:hidden;display:flex;align-items:center;justify-content:center;background:var(--sur2);border-right:1px solid var(--bdr);font-size:48px;color:var(--tx3)}
.rc-photo img{width:160px;height:160px;object-fit:cover;display:block}
.rc-info{flex:1;padding:14px;display:flex;flex-direction:column;gap:8px;min-width:0}
.rc-tr{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap}
.rc-name{font-size:17px;font-weight:800;line-height:1.25;flex:1}
.st{display:inline-flex;align-items:center;gap:4px;font-size:11px;padding:3px 9px;border-radius:20px;font-weight:600;white-space:nowrap;flex-shrink:0}
.st-load{background:var(--blu-bg);color:var(--blu)}
.st-ok{background:var(--grn-bg);color:var(--grn)}
.st-err{background:var(--red-bg);color:var(--red)}
.crumb{font-size:11px;color:var(--tx3)}
.tags{display:flex;gap:5px;flex-wrap:wrap}
.tag{font-size:11px;padding:3px 9px;border-radius:20px;font-weight:600;white-space:nowrap}
.t-dk{background:var(--acc);color:var(--acc-fg)}
.t-grn{background:var(--grn-bg);color:var(--grn)}
.t-amb{background:var(--amb-bg);color:var(--amb)}
.t-prp{background:var(--prp-bg);color:var(--prp)}
.t-gy{background:var(--sur2);color:var(--tx2);border:1px solid var(--bdr)}
.rc-desc{font-size:12px;color:var(--tx2);line-height:1.65;background:var(--sur2);padding:10px 12px;border-radius:var(--rs)}
.dbm{background:var(--blu-bg);border:1px solid rgba(37,99,235,.18);border-radius:var(--rs);padding:10px 13px;display:none}
.dbm-title{font-size:10px;font-weight:700;color:var(--blu);margin-bottom:5px;text-transform:uppercase;letter-spacing:.05em}
.dbm-body{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.dbm-name{font-size:13px;font-weight:500;flex:1}
.dbm-brands{font-size:11px;color:var(--tx3)}
.dbm-price{font-size:14px;font-weight:700;color:var(--grn)}
.sugg{padding:12px 15px;border-top:1px solid var(--bdr);display:none}
.sugg-lbl{font-size:10px;font-weight:700;color:var(--tx2);margin-bottom:7px;text-transform:uppercase;letter-spacing:.06em}
.sugg-pills{display:flex;flex-wrap:wrap;gap:5px}
.spill{font-size:12px;padding:5px 11px;border-radius:20px;border:1px solid var(--bdr2);background:var(--sur);cursor:pointer;color:var(--tx2);transition:all .15s;font-family:inherit;-webkit-appearance:none}
.spill:hover,.spill:active{background:var(--acc);color:var(--acc-fg);border-color:transparent}
.spill.on{background:var(--acc);color:var(--acc-fg);border-color:transparent;font-weight:600}
.rc-fields{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;padding:14px;border-top:1px solid var(--bdr)}
.field label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--tx3);display:block;margin-bottom:3px}
.field input,.field select,.field textarea{width:100%;padding:7px 10px;border-radius:var(--rs);border:1px solid var(--bdr2);background:var(--sur2);font-size:12px;color:var(--tx);font-family:inherit;-webkit-appearance:none}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--acc);background:#fff}
.field textarea{resize:vertical;min-height:56px}
.s2{grid-column:span 2}.s3{grid-column:span 3}
.rc-foot{display:flex;gap:8px;justify-content:flex-end;align-items:center;padding:11px 15px;border-top:1px solid var(--bdr);background:var(--sur2);flex-wrap:wrap}
.rc-foot-hint{flex:1;font-size:11px;color:var(--tx3);min-width:100px}

/* ── HOME / QUICK ACTIONS ── */
.quick{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:22px}
.quick-card{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);padding:18px;cursor:pointer;transition:all .15s;box-shadow:0 8px 22px rgba(22,22,60,.05)}
.quick-card:hover{border-color:var(--acc2);transform:translateY(-2px);box-shadow:0 10px 26px rgba(91,53,242,.12)}
.quick-card:active{transform:scale(.97)}
.quick-ico{width:42px;height:42px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:20px;margin-bottom:12px}
.quick-card b{display:block;font-size:13px;margin-bottom:3px;font-weight:700}
.quick-card p{margin:0;font-size:11px;color:var(--tx2);line-height:1.4}
.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.section-head h3{margin:0;font-size:15px;font-weight:800;letter-spacing:-.2px;color:var(--tx)}
@media(max-width:768px){.quick{grid-template-columns:repeat(2,1fr)}}

/* ── STATS ── */
.sgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}
.scard{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);padding:15px 16px;box-shadow:0 8px 22px rgba(22,22,60,.05)}
.scard-lbl{font-size:11px;color:var(--tx2);margin-bottom:4px;font-weight:500}
.scard-val{font-size:23px;font-weight:800;letter-spacing:-.5px}

/* ── CHIPS ── */
.chips{display:flex;gap:6px;flex-wrap:nowrap;overflow-x:auto;margin-bottom:14px;padding-bottom:2px;-webkit-overflow-scrolling:touch}
.chips::-webkit-scrollbar{display:none}
.chip{font-size:11px;padding:5px 13px;border-radius:20px;border:1px solid var(--bdr2);background:var(--sur);cursor:pointer;color:var(--tx2);transition:all .15s;font-family:inherit;white-space:nowrap;flex-shrink:0;-webkit-appearance:none;font-weight:500}
.chip.on{background:var(--acc);color:var(--acc-fg);border-color:transparent;font-weight:600}
.frow{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap}
.fsrch{flex:1;min-width:130px;padding:9px 12px;border-radius:var(--rs);border:1px solid var(--bdr2);background:var(--sur);font-size:12px;color:var(--tx);font-family:inherit;-webkit-appearance:none}
.fsrch:focus{outline:none;border-color:var(--acc)}
.fsel{padding:9px 11px;border-radius:var(--rs);border:1px solid var(--bdr2);background:var(--sur);font-size:12px;color:var(--tx);font-family:inherit;-webkit-appearance:none}

/* ── GRID ── */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:12px}
@media(max-width:480px){.grid{grid-template-columns:repeat(2,1fr)}}
.hscroll{display:flex;gap:12px;overflow-x:auto;overflow-y:hidden;padding-bottom:6px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.hscroll::-webkit-scrollbar{height:6px}
.hscroll::-webkit-scrollbar-thumb{background:var(--bdr2);border-radius:99px}
.hscroll::-webkit-scrollbar-track{background:transparent}
.hscroll>.card{flex:0 0 148px;width:148px}
@media(max-width:480px){.hscroll>.card{flex:0 0 132px;width:132px}}
.card{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);overflow:hidden;cursor:pointer;transition:all .15s;box-shadow:0 8px 22px rgba(22,22,60,.05)}
.card:hover{border-color:var(--acc2);transform:translateY(-2px);box-shadow:0 10px 26px rgba(91,53,242,.16)}
.card:active{transform:scale(.97)}
.card-img{width:100%;height:108px;object-fit:cover;display:block}
.card-ph{width:100%;height:108px;background:var(--sur2);display:flex;align-items:center;justify-content:center;font-size:28px}
.card-body{padding:10px 11px}
.card-name{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:3px}
.card-foot{display:flex;justify-content:space-between;font-size:11px;color:var(--tx2)}
.card-price{font-weight:800;color:var(--tx)}
.sdot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--grn);margin-right:3px;vertical-align:middle}
.empty{text-align:center;padding:48px 20px;color:var(--tx3)}
.empty-ico{font-size:42px;margin-bottom:10px}
.empty p{font-size:13px;line-height:1.6}

/* ── MODAL ── */
.overlay{display:none;position:fixed;inset:0;z-index:9999;background:rgba(17,22,51,.5);align-items:flex-start;justify-content:center;padding-top:calc(80px + env(safe-area-inset-top,0px));padding-left:12px;padding-right:12px;padding-bottom:calc(90px + env(safe-area-inset-bottom,0px));overflow-y:auto;-webkit-overflow-scrolling:touch}
.overlay.on{display:flex}
.modal{background:var(--sur);border-radius:22px;padding:0;width:min(900px,96vw);max-width:calc(100vw - 32px);max-height:calc(100vh - 180px);overflow:hidden;position:relative;box-shadow:0 24px 64px rgba(17,22,51,.22);display:flex;flex-direction:column;margin:auto}
.modal-x{position:absolute;top:12px;right:12px;background:rgba(255,255,255,.92);border:none;cursor:pointer;font-size:18px;color:var(--tx2);line-height:1;z-index:20;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(17,22,51,.12)}
.modal-handle{display:none;width:36px;height:4px;background:var(--sur3);border-radius:2px;margin:10px auto 0;flex-shrink:0}
#modal-body{overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;max-height:calc(100vh - 220px);padding:20px;padding-bottom:120px;flex:1;min-height:0;overscroll-behavior:contain}
.modal-sticky-head{position:sticky;top:-20px;margin:-20px -20px 14px;padding:14px 50px 12px 20px;background:var(--sur);z-index:10;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--bdr)}
@media(max-width:768px){.modal-sticky-head{top:-16px;margin:-16px -16px 14px;padding:14px 50px 12px 16px}}
/* ── UNIFORMISATION UI/UX — overlay/modale partagés par les fenêtres "custom"
   (Premium, Badges, Déplacement d'objet, Revente). Purement visuel : reprend
   les mêmes dimensions/comportement que .overlay/.modal/.modal-x existants,
   sans toucher à ceux-ci ni à la logique JS qui les alimente. ──────────────── */
.nf-modal-ov{position:fixed;inset:0;z-index:9999;background:rgba(17,22,51,.5);display:flex;align-items:flex-start;justify-content:center;padding-top:calc(80px + env(safe-area-inset-top,0px));padding-left:12px;padding-right:12px;padding-bottom:calc(90px + env(safe-area-inset-bottom,0px));overflow-y:auto;-webkit-overflow-scrolling:touch}
.nf-modal{background:var(--sur);color:var(--tx);border-radius:22px;padding:0;width:min(520px,96vw);max-width:calc(100vw - 32px);max-height:calc(100vh - 180px);overflow:hidden;position:relative;box-shadow:0 24px 64px rgba(17,22,51,.22);display:flex;flex-direction:column;margin:auto}
.nf-modal-x{position:absolute;top:12px;right:12px;background:rgba(255,255,255,.92);border:none;cursor:pointer;font-size:18px;color:var(--tx2);line-height:1;z-index:20;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(17,22,51,.12)}
.nf-modal-head{padding:20px 50px 12px 20px;flex-shrink:0;border-bottom:1px solid var(--bdr)}
.nf-modal-body{overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;flex:1;min-height:0;padding:16px 20px;overscroll-behavior:contain}
.nf-modal-foot{flex-shrink:0;padding:12px 20px calc(12px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--bdr);background:var(--sur);display:flex;gap:8px}
.nf-modal-foot .btn{flex:1}
@media(max-width:768px){
  .nf-modal-ov{align-items:flex-start!important;padding-top:calc(90px + env(safe-area-inset-top,0px));padding-bottom:calc(110px + env(safe-area-inset-bottom,0px))}
  .nf-modal{width:100%!important;max-width:100%!important;max-height:calc(100vh - 190px);border-radius:20px!important}
}

/* ── FOOTER ACTIONS FORMULAIRE D'ÉDITION — Annuler / Sauvegarder ── */
/* z-index élevé + pointer-events:auto explicite : garantit que les boutons
   restent cliquables même si un élément du formulaire (preuves coffre-fort,
   image, etc.) se chevauche visuellement pendant le scroll interne du modal. */
.edit-actions-bar{display:flex;gap:8px;justify-content:flex-end;position:sticky;bottom:0;background:var(--sur);padding:12px 0 4px;margin-top:6px;border-top:1px solid var(--bdr);z-index:30;pointer-events:auto}
.edit-actions-bar .btn{pointer-events:auto;cursor:pointer;position:relative;z-index:31}

/* ══════════════════════════════════════════════════════════════
   VUES INTÉGRÉES — FICHE OBJET & ÉDITION
   Ancrées DANS .body (frères de .content), jamais en plein écran :
   elles ne recouvrent ni la Top Bar, ni .rail, ni .bot-nav.
   Hauteur calculée en dur (et non en flex:1 sur 100%) pour garantir
   que la barre d'actions du bas reste TOUJOURS visible, sans flotter
   ni bouger pendant le scroll — le scroll est strictement confiné à
   .item-scroll-content / .edit-scroll-content.
   ══════════════════════════════════════════════════════════════ */
.item-detail-view,
.item-edit-view{
  position:absolute;inset:0;z-index:50;background:var(--sur,#fff);
  display:none;
  flex-direction:column;
  /* La hauteur est déjà donnée par inset:0 (relatif à .body, déjà borné
     entre la Top Bar et la bot-nav par le shell flex existant). Une
     height:calc(100vh - Npx) ici est FAUSSE : 100vh est le viewport
     entier, pas la hauteur réelle de .body, qui varie selon la topbar
     et la safe-area. Le panneau débordait alors sous .body, qui a
     overflow:hidden — ce qui rognait silencieusement la barre d'actions
     en bas (boutons invisibles/non cliquables, sans erreur JS).
     NE PAS remettre de height fixe ici. */
  overflow:hidden;
}
.item-detail-view.on,
.item-edit-view.on{display:flex}

/* Header fixe : retour + titre + (photo miniature) + bouton Modifier */
.fp-header{flex-shrink:0;display:flex;align-items:center;gap:12px;padding:14px 20px;background:var(--sur);border-bottom:1px solid var(--bdr);box-shadow:0 2px 12px rgba(17,22,51,.04);position:relative;z-index:2}
.fp-header-back{flex-shrink:0;width:38px;height:38px;border-radius:50%;border:1px solid var(--bdr2);background:var(--sur2);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:18px;color:var(--tx)}
.fp-header-back:active{transform:scale(.94)}
.fp-header-thumb{width:38px;height:38px;border-radius:10px;object-fit:cover;flex-shrink:0;border:1px solid var(--bdr)}
/* Titre des annonces : visible sur toutes les fiches, même avec un nom long */
.fp-header-title{
  flex:1;
  min-width:0;
  display:block;
  font-size:15px;
  font-weight:800;
  letter-spacing:-.2px;
  line-height:1.25;
  color:var(--tx,#111827) !important;
  white-space:normal;
  overflow:visible;
  text-overflow:unset;
  word-break:break-word;
  overflow-wrap:anywhere;
  max-height:none;
}
.fp-header-edit{flex-shrink:0}

/* Contenu scrollable — SEULE zone qui scrolle, jamais le bandeau d'actions */
.item-scroll-content,
.edit-scroll-content{
  flex:1;
  overflow-y:auto;
  overflow-x:hidden;
  -webkit-overflow-scrolling:touch;
  padding:16px;
  padding-bottom:24px;
}
.fp-body-inner{max-width:820px;margin:0 auto;width:100%}

/* Barre d'actions : position:relative (jamais sticky/fixed), hors du flux scrollable,
   donc ne peut ni flotter ni se cacher ni bouger pendant le scroll. */
.item-actions,
.edit-actions{
  flex-shrink:0;
  display:flex;
  gap:10px;
  padding:12px;
  background:var(--sur,#fff);
  border-top:1px solid rgba(0,0,0,.08);
  padding-bottom:calc(12px + env(safe-area-inset-bottom,0px));
}
.item-actions .btn,
.edit-actions .btn,
.item-actions .item-action-btn{
  flex:1;
}

@media(max-width:768px){
  .fp-header{padding:calc(12px + var(--safe-top,0px)) 14px 12px;align-items:flex-start}
  .fp-header-back,.fp-header-thumb,.fp-header-edit{margin-top:2px}
  .item-scroll-content,
  .edit-scroll-content{padding:14px}
  .item-actions,
  .edit-actions{
    position:relative;
    bottom:auto;
  }
}

/* Formulaire d'édition : champs en pleine largeur, lisibles partout */
.fp-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.fp-edit-grid .ef.full{grid-column:1/-1}
@media(max-width:560px){.fp-edit-grid{grid-template-columns:1fr}.fp-edit-grid .ef{grid-column:1}}
.fp-photo-zone{width:100%;aspect-ratio:16/10;max-height:280px;border-radius:var(--r);overflow:hidden;margin-bottom:16px;background:var(--sur2)}
.fp-photo-zone img{width:100%;height:100%;object-fit:cover;display:block}

/* Aucun scroll horizontal possible, sur aucun device */
.item-detail-view,.item-edit-view,.fp-header,.item-scroll-content,.edit-scroll-content,.item-actions,.edit-actions{max-width:100%;overflow-x:hidden}

/* ── ACTIONS ANNONCE — fiche détail (Modifier/Supprimer/Vendre/Déplacer) ── */
.item-actions-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:14px}
.item-action-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:10px 6px;border-radius:var(--rs);border:1px solid var(--bdr2);background:var(--sur2);cursor:pointer;font-family:inherit;font-size:10.5px;font-weight:700;color:var(--tx);text-align:center;line-height:1.2;min-height:56px}
.item-action-btn:active{transform:scale(.97)}
.item-action-ico{font-size:17px}
.item-action-btn.act-edit{border-color:#bcd6f7;background:#eaf3ff;color:#1d4ed8}
.item-action-btn.act-delete{border-color:#f3b9b9;background:#fdeded;color:#b91c1c}
.item-action-btn.act-sell{border-color:#bfe3c5;background:#f0f9f1;color:#1c7a39}
.item-action-btn.act-move{border-color:#f0d896;background:#fff8e8;color:#a06700}
@media(max-width:420px){.item-actions-bar{gap:5px}.item-action-btn{font-size:9.5px;padding:8px 4px;min-height:50px}.item-action-ico{font-size:15px}}

/* ── ACTIONS RAPIDES — carte inventaire ── */
.card{position:relative}
.card-quick-btn{position:absolute;top:6px;right:6px;width:28px;height:28px;border-radius:50%;background:rgba(17,22,51,.55);color:#fff;border:none;font-size:14px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:5;backdrop-filter:blur(2px)}
.card-quick-menu{position:absolute;top:38px;right:6px;background:var(--sur);border:1px solid var(--bdr);border-radius:var(--rs);box-shadow:0 12px 32px rgba(17,22,51,.2);z-index:6;min-width:168px;overflow:hidden;display:none}
.card-quick-menu.on{display:block}
.card-quick-menu-floating{position:fixed;right:auto;z-index:12000;max-height:calc(100vh - 16px);overflow-y:auto;overscroll-behavior:contain}
.card-quick-menu button{display:flex;align-items:center;gap:8px;width:100%;padding:9px 12px;background:none;border:none;text-align:left;font-size:12px;font-weight:600;color:var(--tx);cursor:pointer;font-family:inherit}
.card-quick-menu button:hover{background:var(--sur2)}
.card-quick-menu button.act-delete{color:#b91c1c}
.plat{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--bdr);border-radius:var(--rs);margin-bottom:8px;text-decoration:none;color:var(--tx);transition:border-color .15s}
.plat:hover{border-color:var(--acc)}
.plat-name{font-size:13px;font-weight:500;flex:1}
.plat-go{font-size:12px;color:var(--blu)}
.edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}
.ef label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--tx3);display:block;margin-bottom:3px}
.ef input,.ef select,.ef textarea{width:100%;padding:8px 10px;border-radius:var(--rs);border:1px solid var(--bdr2);background:var(--sur2);font-size:13px;color:var(--tx);font-family:inherit;-webkit-appearance:none}
.ef input:focus,.ef select:focus,.ef textarea:focus{outline:none;border-color:var(--acc);background:#fff}
.ef textarea{resize:vertical;min-height:68px}
.ef.full{grid-column:1/-1}

/* ── ACCORDÉONS À CHEVRONS + VALIDATION DE REMPLISSAGE ── */
.nf-acc{border:1px solid var(--bdr2);border-radius:var(--rs);background:var(--sur);overflow:hidden;margin-bottom:10px}
.nf-acc+.nf-acc{margin-top:0}
.nf-acc-head{display:flex;align-items:center;gap:10px;width:100%;padding:11px 13px;background:var(--sur2);border:none;cursor:pointer;font-family:inherit;text-align:left;color:var(--tx);transition:background .15s;-webkit-appearance:none}
.nf-acc-head:hover{background:var(--sur3)}
.nf-acc-chev{flex-shrink:0;width:16px;height:16px;color:var(--tx3);transition:transform .2s ease}
.nf-acc.open .nf-acc-chev{transform:rotate(90deg)}
.nf-acc-title{flex:1;font-size:12.5px;font-weight:700;letter-spacing:.01em;display:flex;align-items:center;gap:7px;min-width:0}
.nf-acc-title .nf-acc-ico{font-size:14px;line-height:1}
.nf-acc-badge{flex-shrink:0;display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:700;padding:3px 9px;border-radius:999px;line-height:1;white-space:nowrap;transition:all .15s}
.nf-acc-badge .nf-acc-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}
.nf-acc-badge.is-empty{background:var(--sur3);color:var(--tx3)}
.nf-acc-badge.is-empty .nf-acc-dot{background:var(--tx3)}
.nf-acc-badge.is-partial{background:var(--amb-bg);color:var(--amb)}
.nf-acc-badge.is-partial .nf-acc-dot{background:var(--amb)}
.nf-acc-badge.is-done{background:var(--grn-bg);color:var(--grn)}
.nf-acc-badge.is-done .nf-acc-dot{display:none}
.nf-acc-body{padding:13px;display:grid;grid-template-columns:1fr 1fr;gap:11px}
.nf-acc-body .field,.nf-acc-body .ef{grid-column:auto}
.nf-acc-body .field.s3,.nf-acc-body .ef.full,.nf-acc-body .s3{grid-column:1/-1}
.nf-acc:not(.open) .nf-acc-body{display:none}
#fp-edit-grid-acc{display:block}
.rc-fields.nf-acc-wrap{display:block;grid-template-columns:none}
@media(max-width:560px){.nf-acc-body{grid-template-columns:1fr}.nf-acc-body .field,.nf-acc-body .ef{grid-column:1!important}.nf-acc-head{padding:10px 11px}.nf-acc-title{font-size:12px}}
body.theme-premium .nf-acc{background:rgba(255,255,255,.96);border-color:rgba(15,31,61,.1)}
body.theme-premium .nf-acc-head{background:rgba(15,31,61,.04)}
body.theme-premium .nf-acc-head:hover{background:rgba(15,31,61,.07)}
body.theme-premium .nf-acc-title{color:#071529}

.spin{display:inline-block;animation:sp 1s linear infinite}
@keyframes sp{to{transform:rotate(360deg)}}

/* ── AUTH ── */
.auth-ov{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);z-index:500;display:flex;align-items:center;justify-content:center;padding:20px;overflow-y:auto}
.auth-ov.off{display:none}
.auth-card{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);padding:24px;width:420px;max-width:100%;box-shadow:0 24px 64px rgba(17,22,51,.12)}
.auth-logo{display:flex;align-items:center;gap:10px;margin-bottom:18px}
.auth-logo .logo-box{width:38px;height:38px;font-size:20px}
.auth-logo-name{font-size:17px;font-weight:800;letter-spacing:-.3px;color:var(--acc)}
.auth-logo-sub{font-size:11px;color:var(--tx3)}
.auth-tabs{display:flex;gap:4px;margin-bottom:18px;background:var(--sur2);border-radius:var(--rs);padding:3px}
.auth-tab{flex:1;text-align:center;padding:8px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;border:none;background:none;color:var(--tx2);font-family:inherit;-webkit-appearance:none}
.auth-tab.on{background:var(--sur);color:var(--acc);box-shadow:0 1px 4px rgba(22,22,60,.08)}
.auth-field{margin-bottom:11px}
.auth-field label{font-size:11px;font-weight:600;color:var(--tx2);display:block;margin-bottom:4px}
.auth-field input{width:100%;padding:9px 11px;border-radius:var(--rs);border:1px solid var(--bdr2);background:var(--sur2);font-size:13px;color:var(--tx);font-family:inherit;-webkit-appearance:none}
.auth-field input:focus{outline:none;border-color:var(--acc);background:#fff}
.auth-err{font-size:12px;color:var(--red);background:var(--red-bg);padding:8px 11px;border-radius:var(--rs);margin-bottom:12px;display:none}
.auth-ok{font-size:12px;color:#1f8a4c;background:#e6f6ec;padding:8px 11px;border-radius:var(--rs);margin-bottom:12px;display:none}
.auth-link{display:block;text-align:right;font-size:12px;color:var(--acc);background:none;border:none;font-family:inherit;cursor:pointer;margin:-4px 0 12px;padding:0}
.auth-link.back{text-align:left;margin:0 0 12px}
.auth-link:hover{text-decoration:underline}
.pref-lbl{font-size:11px;font-weight:600;color:var(--tx2);margin-bottom:7px}
.pref-bubbles{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}
.pref-bubble{font-size:12px;padding:6px 13px;border-radius:20px;border:1px solid var(--bdr2);background:var(--sur);cursor:pointer;color:var(--tx2);transition:all .15s;font-family:inherit;-webkit-appearance:none}
.pref-bubble.on{background:var(--acc);color:var(--acc-fg);border-color:transparent;font-weight:600}
.auth-foot{text-align:center;margin-top:8px;font-size:12px;color:var(--tx3);line-height:1.6}
.btn-google{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:10px;border-radius:var(--rs);border:1px solid var(--bdr2);background:var(--sur);color:var(--tx);font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;transition:all .15s}
.btn-google:hover{background:var(--sur2);border-color:var(--tx3)}
.btn-google svg{width:18px;height:18px;flex-shrink:0}
.auth-divider{display:flex;align-items:center;gap:10px;margin:16px 0;font-size:11px;color:var(--tx3);text-transform:uppercase;letter-spacing:.05em}
.auth-divider::before,.auth-divider::after{content:'';flex:1;height:1px;background:var(--bdr)}
.auth-guest{display:block;width:100%;text-align:center;margin-top:12px;font-size:12px;color:var(--tx2);background:none;border:none;cursor:pointer;text-decoration:underline;font-family:inherit}
.user-chip{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--tx2);padding:5px 12px;border-radius:20px;background:var(--sur2);cursor:pointer;white-space:nowrap;flex-shrink:0;font-weight:500}
.user-chip:hover{background:var(--sur3)}
.user-chip .uc-av{width:22px;height:22px;border-radius:50%;background:var(--acc);color:var(--acc-fg);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:10px;flex-shrink:0}

.profile-wrap{position:relative;display:flex;align-items:center;flex-shrink:0;margin-left:auto;z-index:1001}
.shop-label{display:inline}
@media(max-width:360px){.shop-label{display:none}}
.account-menu{display:none;position:absolute;top:calc(100% + 10px);right:0;width:320px;max-width:calc(100vw - 28px);background:var(--sur);border:1px solid var(--bdr);border-radius:18px;box-shadow:0 18px 45px rgba(17,22,51,.18);padding:14px;z-index:1000}
.account-menu.on{display:block;animation:menuDrop .16s ease-out}
.account-menu::before{content:'';position:absolute;top:-7px;right:24px;width:14px;height:14px;background:var(--sur);border-left:1px solid var(--bdr);border-top:1px solid var(--bdr);transform:rotate(45deg)}
@keyframes menuDrop{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
.account-menu .account-head{margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--bdr)}
.account-menu .account-av{width:42px;height:42px;border-radius:50%;font-size:16px}
.account-menu .account-title{font-size:15px}
.account-menu .edit-grid{grid-template-columns:1fr;gap:9px;margin-bottom:10px}
.account-menu .ef.full{grid-column:1/-1}
.account-menu .account-actions{margin-top:10px;padding-top:10px}
.account-menu .btn-danger{width:100%;justify-content:center;margin-top:8px}
@media(max-width:768px){.account-menu{right:-8px;width:300px}.account-menu::before{right:28px}}

/* ── MOBILE NAV MODERNE NAFA ── */
@media(max-width:768px){
  .bot-nav{align-items:center;min-height:64px;padding-top:6px}
  .bot-btn{min-width:0}
  .bot-btn span:not(.bot-ico):not(.bot-badge){font-size:10px}
  .bot-btn.scan-main{margin-top:-18px;color:var(--acc)}
  .bot-btn.scan-main .bot-ico{
    width:56px;height:56px;border-radius:50%;
    background:linear-gradient(135deg,var(--acc),var(--acc2));
    color:#fff;box-shadow:0 8px 22px rgba(91,53,242,.38);
    border:4px solid var(--sur);
  }
  .bot-btn.scan-main.on .bot-ico{background:linear-gradient(135deg,var(--acc),var(--acc2));color:#fff}
  .bot-btn.scan-main:active .bot-ico{transform:scale(.94)}
  .bot-ico-logo{width:32px!important;height:32px!important;border-radius:10px;background:#fff;border:1px solid var(--bdr)}
  .bot-ico-logo img{object-fit:contain!important}
}
.account-menu-list{display:flex;flex-direction:column;gap:6px;margin:10px 0}
.account-menu-item{width:100%;display:flex;align-items:center;gap:10px;padding:10px 11px;border-radius:13px;border:1px solid var(--bdr);background:var(--sur2);color:var(--tx);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;text-align:left}
.account-menu-item:hover{background:var(--acc-bg);border-color:var(--bdr2);color:var(--acc)}
.account-menu-item small{display:block;font-size:10px;color:var(--tx3);font-weight:500;margin-top:1px}
.account-menu-sep{height:1px;background:var(--bdr);margin:8px 0}


.topbar-logo-home{
height:36px;
width:auto;
cursor:pointer;
object-fit:contain;
display:block;
}


/* ── MES AFFAIRES : organisation par profil du foyer puis par type ── */
.inv-cat-section{grid-column:1/-1;margin:8px 0 22px}
.inv-cat-title{font-size:16px;font-weight:800;margin:0 0 12px;color:var(--tx);letter-spacing:-.2px}
.inv-cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:12px}
.inv-profile-section{
  grid-column:1/-1;
  background:linear-gradient(180deg,var(--sur),rgba(255,255,255,.92));
  border:1px solid var(--bdr);
  border-radius:22px;
  padding:14px;
  margin:0 0 16px;
  box-shadow:0 10px 28px rgba(22,22,60,.055);
}
.inv-profile-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:2px 2px 12px;border-bottom:1px solid var(--bdr);margin-bottom:12px}
.inv-profile-left{display:flex;align-items:center;gap:10px;min-width:0}
.inv-profile-avatar{width:38px;height:38px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--acc-bg);color:var(--acc);font-size:18px;font-weight:900;flex-shrink:0}
.inv-profile-title{font-size:15px;font-weight:900;letter-spacing:-.25px;color:var(--tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.inv-profile-sub{font-size:11px;color:var(--tx2);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.inv-profile-value{font-size:12px;font-weight:900;color:var(--tx);background:var(--sur2);border:1px solid var(--bdr);border-radius:999px;padding:6px 10px;white-space:nowrap}
.inv-type-section{margin:12px 0 4px}
.inv-type-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 9px}
.inv-type-title{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:850;color:var(--tx);letter-spacing:-.15px}
.inv-type-dot{width:9px;height:9px;border-radius:50%;background:var(--acc);box-shadow:0 0 0 4px var(--acc-bg);flex-shrink:0}
.inv-type-count{font-size:10px;font-weight:800;color:var(--tx3);background:var(--sur2);border:1px solid var(--bdr);border-radius:999px;padding:3px 7px;white-space:nowrap}
.inv-type-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:12px}
.inv-toolbar-note{font-size:11px;color:var(--tx2);margin:-4px 0 12px;line-height:1.45}
@media(max-width:480px){.inv-profile-section{padding:11px;border-radius:18px;margin-bottom:12px}.inv-profile-head{align-items:flex-start}.inv-profile-value{font-size:11px;padding:5px 8px}.inv-type-grid{grid-template-columns:repeat(2,1fr);gap:9px}}
.card-img{
  width:100%!important;
  height:132px!important;
  object-fit:cover!important;
  display:block!important;
  background:#fff!important;
}
.card-ph{
  width:100%!important;
  height:132px!important;
  background:var(--sur2)!important;
}
.card.has-photo .card-img{
  object-fit:cover!important;
}
@media(max-width:480px){
  .inv-cat-grid{grid-template-columns:repeat(2,1fr)}
}


/* ── COFFRE-FORT FACTURE (Premium) ── */
.receipt-zone{
  border:2px dashed var(--bdr2);border-radius:var(--rs);
  padding:12px 16px;cursor:pointer;background:var(--sur2);
  transition:all .18s;text-align:center;position:relative;
  margin-top:8px;
}
.receipt-zone:hover{border-color:#b8960a;background:#fdf6d8;}
.receipt-zone.has-receipt{border-color:#b8960a;border-style:solid;background:#fdf9e8;}
.receipt-zone-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#b8960a;display:flex;align-items:center;gap:6px;justify-content:center;margin-bottom:3px;}
.receipt-zone-sub{font-size:11px;color:var(--tx3);}
.receipt-thumb{width:100%;max-height:110px;object-fit:cover;border-radius:8px;margin-top:8px;display:block;}
.receipt-badge{display:inline-flex;align-items:center;gap:5px;font-size:11px;padding:3px 9px;border-radius:20px;font-weight:600;background:#fdf1dc;color:#b8960a;border:1px solid #f0d580;}
.receipt-view-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border-radius:var(--rs);font-size:12px;font-weight:600;cursor:pointer;border:1px solid #f0d580;background:#fdf1dc;color:#b8960a;font-family:inherit;transition:all .15s;}
.receipt-view-btn:hover{background:#f5e28a;border-color:#b8960a;}
/* Modale plein écran pour la facture */
.receipt-lightbox{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(17,22,51,.88);z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;}
.receipt-lightbox img{max-width:100%;max-height:80vh;border-radius:var(--rs);box-shadow:0 24px 64px rgba(0,0,0,.5);}
.receipt-lightbox-close{position:absolute;top:16px;right:16px;background:rgba(255,255,255,.15);border:none;color:#fff;font-size:22px;cursor:pointer;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;}
.premium-lock-inline{display:flex;align-items:center;gap:8px;font-size:12px;color:#b8960a;background:#fdf6d8;border:1px solid #f0d580;border-radius:var(--rs);padding:8px 12px;cursor:pointer;font-weight:500;}
.premium-lock-inline:hover{background:#fdf1dc;}


/* ── PREUVES ASSURANCE COFFRE-FORT (>200€) ── */
.insurance-alert{display:none;margin:0 14px 12px;padding:11px 13px;border-radius:var(--rs);background:linear-gradient(135deg,#fdf9e8,#fffde0);border:1px solid #f0d580;color:#7a6000;font-size:12px;line-height:1.55}
.insurance-proof-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}
.insurance-proof-card{border:1px solid #f0d580;border-radius:var(--rs);padding:10px;background:#fffdf5}
.insurance-proof-card .receipt-zone{margin-top:6px;padding:10px 8px}
.insurance-proof-title{font-size:11px;font-weight:800;color:#8a6a24;margin-bottom:2px;display:flex;gap:5px;align-items:center}
.insurance-proof-help{font-size:10px;color:var(--tx3);line-height:1.35}
.insurance-proof-actions{display:flex;gap:5px;margin-top:6px}
.insurance-proof-actions .btn{flex:1;justify-content:center;font-size:10px!important;padding:5px 7px!important}
.insurance-edit-grid{display:grid;grid-template-columns:1fr;gap:8px}
@media(max-width:768px){.insurance-proof-grid{grid-template-columns:1fr}.insurance-alert{margin:0 10px 10px}}

/* ── COMMUNITY ── */
.comm-card{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);padding:16px;cursor:pointer;transition:all .15s;box-shadow:0 8px 22px rgba(22,22,60,.05);display:flex;align-items:center;gap:14px;margin-bottom:10px}
.comm-card:hover{border-color:var(--acc2);transform:translateY(-1px);box-shadow:0 10px 26px rgba(91,53,242,.12)}
.comm-card:active{transform:scale(.98)}
.comm-icon{width:46px;height:46px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0}
.comm-info{flex:1;min-width:0}
.comm-name{font-size:14px;font-weight:700;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.comm-sub{font-size:11px;color:var(--tx2)}
.comm-badge{font-size:10px;padding:2px 8px;border-radius:20px;font-weight:600;flex-shrink:0}
.cb-default{background:var(--acc-bg);color:var(--acc)}
.cb-user{background:var(--grn-bg);color:var(--grn)}
.cb-priv{background:var(--amb-bg);color:var(--amb)}
.comm-sep{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--tx3);margin:14px 0 10px}

/* ══ BADGES ══ */
@keyframes badgePop{0%{opacity:0;transform:scale(.5) translateY(30px)}60%{transform:scale(1.12) translateY(-6px)}80%{transform:scale(.96) translateY(2px)}100%{opacity:1;transform:scale(1) translateY(0)}}
@keyframes badgeShine{0%,100%{opacity:0}50%{opacity:1}}
@keyframes badgeFadeOut{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-20px)}}
.badge-notif{position:fixed;bottom:90px;left:50%;transform:translateX(-50%);z-index:600;pointer-events:none;display:flex;flex-direction:column;align-items:center;gap:8px}
@media(min-width:769px){.badge-notif{bottom:30px}}
.badge-toast{background:var(--sur);border:2px solid var(--acc);border-radius:24px;padding:12px 20px;display:flex;align-items:center;gap:12px;box-shadow:0 16px 48px rgba(91,53,242,.28);animation:badgePop .55s cubic-bezier(.34,1.56,.64,1) forwards;min-width:280px;max-width:90vw}
.badge-toast.hide{animation:badgeFadeOut .4s ease forwards}
.badge-toast-icon{font-size:36px;flex-shrink:0;filter:drop-shadow(0 2px 8px rgba(91,53,242,.4))}
.badge-toast-body{}
.badge-toast-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--acc);margin-bottom:2px}
.badge-toast-name{font-size:15px;font-weight:800;letter-spacing:-.2px;color:var(--tx)}
.badge-toast-desc{font-size:11px;color:var(--tx2);margin-top:1px}
/* Badge indicator in topbar */
.badge-topbar-dot{position:absolute;top:-3px;right:-3px;width:14px;height:14px;border-radius:50%;background:linear-gradient(135deg,#f59e0b,#f97316);border:2px solid var(--sur);display:none;align-items:center;justify-content:center;font-size:8px;font-weight:800;color:#fff;z-index:10}
.badge-topbar-dot.show{display:flex}
/* Badges modal */
.badges-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}
@media(max-width:400px){.badges-grid{grid-template-columns:repeat(2,1fr)}}
.badge-cell{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 10px;border-radius:var(--r);border:1.5px solid var(--bdr);background:var(--sur2);cursor:default;transition:all .15s;text-align:center}
.badge-cell.earned{border-color:transparent;background:linear-gradient(145deg,var(--acc-bg),var(--sur));box-shadow:0 4px 16px rgba(91,53,242,.12)}
.badge-cell.earned:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(91,53,242,.18)}
.badge-cell-icon{font-size:32px;line-height:1;filter:grayscale(1) opacity(.3)}
.badge-cell.earned .badge-cell-icon{filter:none;filter:drop-shadow(0 2px 6px rgba(91,53,242,.3))}
.badge-cell-name{font-size:11px;font-weight:700;color:var(--tx2)}
.badge-cell.earned .badge-cell-name{color:var(--tx)}
.badge-cell-desc{font-size:9px;color:var(--tx3);line-height:1.4}
.badge-cell.earned .badge-cell-desc{color:var(--tx2)}
.badge-cell-lock{font-size:9px;color:var(--tx3);margin-top:2px}
.badge-prog{margin-top:3px;height:3px;background:var(--bdr);border-radius:2px;width:80%;overflow:hidden}
.badge-prog-fill{height:100%;background:var(--acc);border-radius:2px;transition:width .6s ease}


/* === NAFA V2 PREMIUM — correction visible espace utilisateur === */
:root{--nafa-v2-night:var(--premium-primary);--nafa-v2-night2:var(--premium-primary-hover);--nafa-v2-gold:var(--premium-gold);--nafa-v2-gold2:var(--premium-gold-light);}
.nafa-v2-user-premium{display:block;margin:14px 0 0;}
.nafa-v2-user-card{position:relative;overflow:hidden;border-radius:18px;padding:14px 16px;background:var(--premium-bg-main);box-shadow:0 8px 24px color-mix(in srgb,var(--premium-primary) 10%,transparent);color:var(--premium-text);border:1px solid var(--premium-border);display:flex;align-items:center;gap:16px;flex-wrap:wrap;font-family:var(--premium-body-font)}
.nafa-v2-user-kicker{display:none}
.nafa-v2-user-main{flex:1;min-width:200px}
.nafa-v2-user-title{font-size:14px;font-weight:700;letter-spacing:-.2px;line-height:1.3;color:var(--premium-primary);margin-bottom:4px;font-family:var(--premium-title-font)}
.nafa-v2-user-sub{font-size:11px;color:var(--premium-text-secondary);line-height:1.4;margin-bottom:10px}
.nafa-v2-user-metrics{display:flex;gap:8px;flex-wrap:wrap;margin-top:0;margin-left:auto}
.nafa-v2-user-metric{min-width:80px;border:1px solid var(--premium-border);background:var(--premium-bg-secondary);border-radius:12px;padding:7px 10px;text-align:center}
.nafa-v2-user-metric b{display:block;color:var(--premium-primary);font-size:14px;letter-spacing:-.2px}.nafa-v2-user-metric span{font-size:10px;color:var(--premium-text-secondary);text-transform:uppercase;letter-spacing:.06em}
.nafa-v2-vault-icon{font-size:36px;flex-shrink:0;filter:drop-shadow(0 4px 10px rgba(200,169,110,.35))}
.nafa-v2-vault-cta{background:var(--premium-primary);color:var(--premium-bg-main);border:1px solid var(--premium-primary);border-radius:10px;padding:9px 16px;font-size:12px;font-weight:800;cursor:pointer;letter-spacing:.02em;box-shadow:0 4px 14px color-mix(in srgb,var(--premium-primary) 16%,transparent);transition:transform .15s,box-shadow .15s,background-color .15s}
.nafa-v2-vault-cta:hover{transform:translateY(-1px);background:var(--premium-primary-hover);box-shadow:0 6px 18px color-mix(in srgb,var(--premium-primary) 20%,transparent)}
.nafa-v2-score-ring{position:relative;width:64px;height:64px;flex-shrink:0}
.nafa-v2-score-ring svg{display:block}
.nafa-v2-score-ring-label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;color:#fff}
.nafa-v2-score-panel{border:1px solid rgba(200,169,110,.35);border-radius:24px;padding:18px;background:linear-gradient(180deg,#fff,#fbf7ed);box-shadow:0 12px 34px rgba(15,31,61,.08)}
.nafa-v2-score-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.nafa-v2-score-top span{font-size:12px;color:#66708e;font-weight:700}.nafa-v2-score-top b{font-size:28px;color:var(--nafa-v2-night)}
.nafa-v2-score-bar{height:8px;border-radius:99px;background:#eee8dc;overflow:hidden}.nafa-v2-score-fill{height:100%;width:64%;background:linear-gradient(90deg,var(--nafa-v2-night),var(--nafa-v2-gold));border-radius:99px}
.nafa-v2-score-list{display:grid;gap:8px;margin-top:13px}.nafa-v2-score-line{display:flex;align-items:center;gap:8px;font-size:12px;color:#4a5270}.nafa-v2-score-line i{width:22px;height:22px;border-radius:8px;background:rgba(200,169,110,.18);display:flex;align-items:center;justify-content:center;color:#8a6a24;font-style:normal}
#qc-vault.nafa-v2-vault-card{background:var(--premium-bg-main)!important;border:1px solid var(--premium-border)!important;color:var(--premium-text)!important;box-shadow:0 16px 40px color-mix(in srgb,var(--premium-primary) 12%,transparent)!important}
#qc-vault.nafa-v2-vault-card .nv2-vault-head-label{color:var(--nafa-v2-gold)!important}#qc-vault.nafa-v2-vault-card p{color:rgba(255,255,255,.60)!important}#qc-vault.nafa-v2-vault-card .quick-ico{background:rgba(200,169,110,.16)!important;color:var(--nafa-v2-gold)!important;border:1px solid rgba(200,169,110,.26)!important}
.nafa-v2-badge{position:absolute;top:12px;right:12px;font-size:10px;background:rgba(200,169,110,.15);color:var(--nafa-v2-gold);border:1px solid rgba(200,169,110,.35);border-radius:999px;padding:3px 8px;font-weight:800}
@media(max-width:768px){.nafa-v2-user-card{flex-direction:column;align-items:flex-start;gap:10px}.nafa-v2-user-metrics{margin-left:0}.nafa-v2-score-panel{padding:15px}.nafa-v2-vault-cta{width:100%}}

/* ── Carte Coffre-Fort Premium fusionnée (score + dossier) — élément Premium principal de l'accueil ── */
#nv2-card-premium{flex-direction:column;align-items:stretch;gap:0;padding:22px 22px 20px;border-radius:22px;}
.nv2-vault-head{display:flex;align-items:center;gap:8px;margin-bottom:14px}
.nv2-vault-head-ico{font-size:20px;filter:drop-shadow(0 4px 10px rgba(200,169,110,.35))}
.nv2-vault-head-label{font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:rgba(255,255,255,.55)}
#nv2-card-premium .nv2-vault-body{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
#nv2-card-premium .nafa-v2-score-ring{width:74px;height:74px}
#nv2-card-premium .nafa-v2-score-ring-label{font-size:16px}
#nv2-card-premium .nafa-v2-user-main{min-width:220px}
#nv2-card-premium .nafa-v2-user-kicker{display:none}
#nv2-card-premium .nafa-v2-user-title{font-size:16px;margin-bottom:5px}
#nv2-card-premium .nafa-v2-user-sub{font-size:12px;margin-bottom:12px}
.nv2-vault-divider{height:1px;background:rgba(200,169,110,.18);margin:18px 0 14px}
#nv2-card-premium .nafa-v2-user-metrics{width:100%;margin-left:0;gap:10px}
#nv2-card-premium .nafa-v2-user-metric{flex:1;min-width:90px;padding:10px 8px}
@media(max-width:768px){
  #nv2-card-premium{padding:18px 16px}
  #nv2-card-premium .nv2-vault-body{gap:14px}
  #nv2-card-premium .nafa-v2-score-ring{width:64px;height:64px}
  #nv2-card-premium .nafa-v2-user-main{min-width:160px}
}

/* ── MESSAGE DE BIENVENUE — bannière premium, Zone 1 de l'accueil ── */
.nafa-welcome{margin:0 0 16px}
.nafa-welcome-text{font-size:17px;font-weight:800;color:var(--tx);letter-spacing:-.3px;line-height:1.3}
@media(max-width:560px){
  .nafa-welcome-text{font-size:15.5px}
}
/* Bannière enrichie : fond dédié + dégradé doux + liste de priorités du jour */
.nafa-banner{
  position:relative;overflow:hidden;border-radius:var(--r);
  background:linear-gradient(135deg,var(--acc) 0%,var(--acc2) 100%);
  color:#fff;padding:20px 22px;box-shadow:0 14px 34px rgba(91,53,242,.26);
  animation:nfFadeIn .35s ease both;
}
.nafa-banner::before{
  content:'';position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(circle at 88% -10%,rgba(255,255,255,.22),transparent 55%);
}
.nafa-banner-greet{font-size:18px;font-weight:800;letter-spacing:-.3px;line-height:1.3;position:relative}
.nafa-banner-sub{font-size:12px;color:rgba(255,255,255,.78);margin-top:3px;position:relative}
.nafa-banner-list{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:7px;position:relative}
.nafa-banner-list li{display:flex;align-items:center;gap:9px;font-size:12.5px;font-weight:600;color:rgba(255,255,255,.96)}
.nafa-banner-list .nb-dot{width:6px;height:6px;border-radius:50%;background:#fff;opacity:.85;flex-shrink:0}
.nafa-banner-cta{
  display:inline-flex;align-items:center;gap:6px;margin-top:16px;position:relative;
  background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.3);
  color:#fff;font-size:12.5px;font-weight:700;padding:9px 14px;border-radius:999px;
  cursor:pointer;transition:background .15s,transform .15s;backdrop-filter:blur(2px);
}
.nafa-banner-cta:hover{background:rgba(255,255,255,.26)}
.nafa-banner-cta:active{transform:scale(.97)}
.nafa-banner-counter{margin-top:16px;position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:3px}
.nafa-banner-counter .nbc-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:rgba(232,201,142,.85)}
.nafa-banner-counter .nbc-value{font-size:27px;font-weight:800;letter-spacing:-.5px;font-variant-numeric:tabular-nums;color:var(--nafa-v2-gold2,#E8C98E)}
.nafa-banner.is-calm{background:linear-gradient(135deg,#1c7a39 0%,#0f9f6e 100%);box-shadow:0 14px 34px rgba(15,159,110,.22)}
@media(max-width:560px){
  .nafa-banner{padding:17px 16px;border-radius:var(--rs)}
  .nafa-banner-greet{font-size:16px}
  .nafa-banner-list li{font-size:12px}
  .nafa-banner-counter .nbc-value{font-size:23px}
}

/* ── AUJOURD'HUI DANS NAFA — tableau de bord intelligent (lecture seule) ── */
.nafa-today{margin-top:20px}
/* Devient l'élément prioritaire de l'accueil : pas de marge avant, marge après pour séparer des raccourcis */
.nafa-today-first{margin-top:0;margin-bottom:22px}
.nafa-today-head{display:flex;align-items:baseline;gap:8px;margin-bottom:12px;flex-wrap:wrap}
.nafa-today-title{font-size:15px;font-weight:800;color:var(--tx);letter-spacing:-.2px}
.nafa-today-sub{font-size:12px;color:var(--tx3)}
.nafa-today-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}
.nafa-today-card{
  position:relative;background:var(--sur);border:1px solid var(--bdr);border-radius:var(--rs);
  padding:14px 13px 13px;display:flex;flex-direction:column;gap:7px;min-height:128px;
  cursor:pointer;transition:transform .15s,box-shadow .15s,border-color .15s;
  box-shadow:0 6px 16px rgba(22,22,60,.04);animation:nfFadeIn .35s ease both;
}
.nafa-today-card:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(22,22,60,.1);border-color:var(--bdr2)}
.nafa-today-card:active{transform:scale(.98)}
/* Liseré de priorité à gauche de la carte */
.nafa-today-card::before{
  content:'';position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:3px;
  background:var(--bdr2);transition:background .15s;
}
.nafa-today-card.pr-high::before{background:var(--red)}
.nafa-today-card.pr-mid::before{background:var(--amb)}
.nafa-today-card.pr-low::before{background:var(--grn)}
.nafa-today-card-top{display:flex;align-items:flex-start;gap:8px}
.nafa-today-ico{width:32px;height:32px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}
.nafa-today-top-text{min-width:0}
.nafa-today-label{font-size:11.5px;font-weight:700;color:var(--tx2);line-height:1.25}
.nafa-today-priority{font-size:9px;font-weight:700;letter-spacing:.2px;margin-top:2px;display:inline-block}
.nafa-today-priority.pr-high{color:var(--red)}
.nafa-today-priority.pr-mid{color:var(--amb)}
.nafa-today-priority.pr-low{color:var(--grn)}
.nafa-today-value{font-size:19px;font-weight:800;color:var(--tx);letter-spacing:-.3px}
.nafa-today-detail{font-size:10.5px;color:var(--tx3);line-height:1.35}
.nafa-today-action{
  margin-top:auto;font-size:10.5px;font-weight:700;color:var(--acc);
  display:flex;align-items:center;gap:3px;
}
.nafa-today-card.is-empty{opacity:.55}
.nafa-today-card-violet::before{background:rgba(255,255,255,.5)!important}
.nafa-today-card-violet:hover{box-shadow:0 12px 28px rgba(91,53,242,.28)}
.nafa-today-card.is-empty .nafa-today-value{font-size:13px;font-weight:700;color:var(--tx3)}
.nafa-today-card.is-empty .nafa-today-action{color:var(--tx3)}
/* Carte mise en avant temporairement (ex: clic sur "objets oubliés") */
.nafa-today-card.nf-pulse{animation:nfPulseCard 1.8s ease 2}
@media(max-width:560px){
  .nafa-today-grid{grid-template-columns:repeat(2,1fr);gap:9px}
  .nafa-today-card{padding:12px 11px 11px;min-height:118px}
  .nafa-today-value{font-size:17px}
}
@media(max-width:380px){
  .nafa-today-grid{grid-template-columns:1fr 1fr}
  .nafa-today-label{font-size:10.5px}
}
@keyframes nfFadeIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@keyframes nfPulseCard{
  0%,100%{box-shadow:0 6px 16px rgba(22,22,60,.04);border-color:var(--bdr)}
  50%{box-shadow:0 0 0 4px rgba(91,53,242,.18),0 12px 26px rgba(91,53,242,.18);border-color:var(--acc2)}
}

/* ── ZONE BADGES (sous l'image, avant le nom) ──────────────────────────────
   Conteneur en flow normal : les badges (statut "objet vivant" + badge de
   contexte "Aujourd'hui dans Nafa") se placent côte à côte et passent à la
   ligne automatiquement, sans jamais se superposer. */
.card-badges{
  display:flex;flex-wrap:wrap;gap:6px;align-items:center;
  padding:8px 10px 0;max-width:100%;
}
.card-badges:empty{display:none}
.living-badge,.nf-ctx-badge{
  position:static;display:inline-flex;align-items:center;gap:4px;
  font-size:9.5px;font-weight:700;line-height:1;white-space:nowrap;
  max-width:100%;padding:4px 8px;border-radius:999px;margin:0;
  box-shadow:0 1px 3px rgba(22,22,60,.1);
}
.living-badge-ico{font-size:9px;line-height:1}
.living-badge-keep{background:var(--grn-bg);color:#1c7a39}
.living-badge-watch{background:var(--amb-bg);color:#a06700}
.living-badge-sell{background:var(--blu-bg);color:#1d4ed8}
.living-badge-protect{background:#fdf1dc;color:#b8780a}
.nf-ctx-badge{font-weight:800}
.nf-ctx-badge.forgotten{background:#fff3cd;color:#856404}
.nf-ctx-badge.opportunities{background:#dcfce7;color:#166534}
.nf-ctx-badge.children{background:#ede9fe;color:#5b21b6}
@media(max-width:380px){
  .living-badge,.nf-ctx-badge{font-size:9px;padding:3px 7px}
}

/* Carte d'inventaire mise en évidence temporairement, typée par origine du clic
   depuis "Aujourd'hui dans Nafa" : orange=oubliés, vert=opportunités, violet=enfants.
   La carte entière passe en surbrillance (bordure + fond teinté + halo), et
   garde assez d'espace en bas pour que les badges restent lisibles.
   transition:none annule .card{transition:all .15s} qui sinon amortit
   l'apparition de la bordure/fond/ombre et rend l'effet peu visible.
   L'animation tourne en continu (infinite) tant que la classe reste posée :
   elle ne s'éteint que quand l'utilisateur clique sur "Voir tous les objets". */
.card.nf-hl{position:relative;z-index:2;padding-bottom:2px;overflow:visible;transition:none}
.card.nf-hl-forgotten{
  border:3px solid #ff9800!important;
  background:linear-gradient(135deg,#fff7df,#ffe7a8)!important;
  animation:nfPulseOutlineFg 1.6s ease-in-out infinite;
}
.card.nf-hl-opportunities{
  border:3px solid #22c55e!important;
  background:linear-gradient(135deg,#f0fdf4,#d4f5e0)!important;
  animation:nfPulseOutlineOpp 1.6s ease-in-out infinite;
}
.card.nf-hl-children{
  border:3px solid #8b5cf6!important;
  background:linear-gradient(135deg,#f5f3ff,#e3d9fc)!important;
  animation:nfPulseOutlineKid 1.6s ease-in-out infinite;
}
@keyframes nfPulseOutlineFg{0%,100%{box-shadow:0 0 0 3px rgba(255,152,0,.3),0 14px 30px rgba(255,152,0,.35)}50%{box-shadow:0 0 0 7px rgba(255,152,0,.45),0 18px 40px rgba(255,152,0,.55)}}
@keyframes nfPulseOutlineOpp{0%,100%{box-shadow:0 0 0 3px rgba(34,197,94,.3),0 14px 30px rgba(34,197,94,.35)}50%{box-shadow:0 0 0 7px rgba(34,197,94,.45),0 18px 40px rgba(34,197,94,.55)}}
@keyframes nfPulseOutlineKid{0%,100%{box-shadow:0 0 0 3px rgba(139,92,246,.3),0 14px 30px rgba(139,92,246,.35)}50%{box-shadow:0 0 0 7px rgba(139,92,246,.45),0 18px 40px rgba(139,92,246,.55)}}

/* Bannière de contexte affichée en haut de l'inventaire après un clic sur une
   carte "Aujourd'hui dans Nafa" — permet de revenir à la vue complète. */
.nf-focus-banner{
  margin:0 0 14px;padding:12px 14px;border-radius:var(--rs);
  font-weight:800;font-size:13px;display:flex;justify-content:space-between;
  align-items:center;gap:10px;flex-wrap:wrap;animation:nfFadeIn .25s ease both;
}
.nf-focus-banner.forgotten{background:#fff3cd;color:#856404}
.nf-focus-banner.opportunities{background:#dcfce7;color:#166534}
.nf-focus-banner.children{background:#ede9fe;color:#5b21b6}
.nf-focus-banner button{
  border:0;border-radius:999px;padding:7px 13px;font-size:12px;font-weight:800;
  cursor:pointer;background:rgba(255,255,255,.75);color:inherit;font-family:inherit;
  transition:background .15s;
}
.nf-focus-banner button:hover{background:#fff}

/* ── PROFILS DU FOYER — module indépendant ── */
.household-head{margin-bottom:14px}
.household-head-title{font-size:17px;font-weight:800;color:var(--tx);letter-spacing:-.3px;margin-bottom:4px}
.household-head-sub{font-size:12px;color:var(--tx2);line-height:1.5}
.household-add-btn{margin-bottom:16px}
.household-empty{text-align:center;padding:36px 16px;color:var(--tx2)}
.household-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.household-card{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--rs);padding:13px;display:flex;flex-direction:column;gap:9px;box-shadow:0 8px 22px rgba(22,22,60,.04)}
.household-card-top{display:flex;align-items:center;gap:9px}
.household-card-ico{width:36px;height:36px;border-radius:11px;background:var(--acc-bg);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}
.household-card-main{min-width:0}
.household-card-name{font-size:13.5px;font-weight:800;color:var(--tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.household-card-type{font-size:11px;color:var(--tx2)}
.household-card-details{display:flex;flex-wrap:wrap;gap:5px}
.household-card-details span{background:var(--sur2);border-radius:999px;padding:3px 9px;font-size:10.5px;color:var(--tx2);font-weight:600}
.household-card-details-empty{font-size:10.5px;color:var(--tx3);font-style:italic}
.household-card-actions{display:flex;gap:6px;margin-top:2px}
.household-card-actions .btn{flex:1;font-size:11px;padding:7px}
@media(max-width:560px){
  .household-grid{grid-template-columns:1fr}
}
/* ── LOCALISATIONS — module indépendant ── */
.loc-head{margin-bottom:14px}
.loc-head-title{font-size:17px;font-weight:800;color:var(--tx);letter-spacing:-.3px;margin-bottom:4px}
.loc-head-sub{font-size:12px;color:var(--tx2);line-height:1.5}
.loc-add-btn{margin-bottom:16px}
.loc-empty{text-align:center;padding:36px 16px;color:var(--tx2)}
.loc-list{display:flex;flex-direction:column;gap:9px}
.loc-card{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--rs);padding:13px;display:flex;align-items:center;gap:11px;box-shadow:0 8px 22px rgba(22,22,60,.04)}
.loc-card-ico{width:38px;height:38px;border-radius:11px;background:var(--acc-bg);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}
.loc-card-main{min-width:0;flex:1}
.loc-card-name{font-size:13.5px;font-weight:800;color:var(--tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.loc-card-desc{font-size:11px;color:var(--tx2);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.loc-card-count{font-size:10.5px;color:var(--tx3);margin-top:2px}
.loc-card-actions{display:flex;gap:6px;flex-shrink:0}
.loc-card-actions .btn{font-size:11px;padding:7px 9px}

/* ── OBJET VIVANT — module indépendant, affichage de recommandations uniquement ── */
.living-box{border-radius:var(--rs);padding:13px 14px;margin-bottom:14px;border:1px solid var(--bdr)}
.living-box-keep{background:linear-gradient(135deg,#f0f9f1,#e7f5e9);border-color:#bfe3c5}
.living-box-watch{background:linear-gradient(135deg,#fff8e8,#fef3d6);border-color:#f0d896}
.living-box-sell{background:linear-gradient(135deg,#eaf3ff,#dbeafe);border-color:#bcd6f7}
.living-box-protect{background:linear-gradient(135deg,#fdf1dc,#fde9c2);border-color:#f0d580}
.living-box-head{display:flex;align-items:center;gap:9px;margin-bottom:8px}
.living-box-ico{font-size:18px;flex-shrink:0}
.living-box-status{font-size:13px;font-weight:800;color:var(--tx)}
.living-box-attn{margin-left:auto;font-size:10px;font-weight:700;padding:3px 9px;border-radius:999px;white-space:nowrap}
.living-box-attn-faible{background:rgba(34,150,68,.13);color:#1c7a39}
.living-box-attn-moyen{background:rgba(217,140,2,.14);color:#a06700}
.living-box-attn-eleve{background:rgba(220,38,38,.13);color:#b91c1c}
.living-box-suggestion{font-size:11.5px;color:var(--tx2);line-height:1.5}
.living-box-tag{font-size:9.5px;color:var(--tx3);margin-top:6px;font-style:italic}

/* ── ALERTES ENFANTS — module indépendant, affichage uniquement ── */
.kid-alerts{margin-bottom:18px}
.kid-alerts-head{display:flex;align-items:baseline;gap:8px;margin-bottom:10px;flex-wrap:wrap}
.kid-alerts-title{font-size:15px;font-weight:800;color:var(--tx);letter-spacing:-.2px}
.kid-alerts-sub{font-size:12px;color:var(--tx3)}
.kid-alerts-list{display:flex;flex-direction:column;gap:8px}
.kid-alert-card{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--rs);padding:11px 13px;display:flex;align-items:center;gap:10px;box-shadow:0 8px 22px rgba(22,22,60,.04);cursor:pointer}
.kid-alert-ico{width:34px;height:34px;border-radius:10px;background:var(--prp-bg,#ece9fb);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}
.kid-alert-main{min-width:0;flex:1}
.kid-alert-text{font-size:12.5px;font-weight:700;color:var(--tx)}
.kid-alert-detail{font-size:10.5px;color:var(--tx3);margin-top:2px}
.kid-alert-tag{font-size:9px;color:var(--tx3);margin-top:8px;font-style:italic}

/* ── ASSISTANT DE REVENTE — module indépendant, génère une proposition uniquement ── */
.resale-btn{margin-bottom:14px}
.resale-banner{background:linear-gradient(135deg,#eef2ff,#e0e7ff);border:1px solid #c7d2fe;border-radius:var(--rs);padding:10px 12px;margin-bottom:14px;font-size:11px;color:#3730a3;display:flex;align-items:center;gap:8px}
.resale-field{margin-bottom:12px}
.resale-field-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--tx3);margin-bottom:4px;display:block}
.resale-field textarea,.resale-field input,.resale-field select{width:100%;padding:9px 10px;border-radius:var(--rs);border:1px solid var(--bdr2);background:var(--sur2);font-size:13px;font-family:inherit}
.resale-field textarea{resize:vertical}
.resale-price-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.resale-price-row input{width:110px}
.resale-price-variant{font-size:11px;padding:5px 9px;border-radius:8px;border:1px solid var(--bdr2);background:var(--sur2);cursor:pointer;font-family:inherit}
.resale-tag{font-size:9.5px;color:var(--tx3);margin-top:10px;font-style:italic;text-align:center}

/* ================================================================
   NAFA — VARIABLES THÈMES (communes)
   ================================================================ */
:root{
  --nafa-night:#0F1F3D;
  --nafa-night-2:#15284B;
  --nafa-night-3:#0A1628;
  --nafa-gold:#C8A96E;
  --nafa-gold-2:#E8C98E;
  --nafa-cream:#F7F3EA;
  /* Thème standard — vert émeraude */
  --std-dark:#1A3A2A;
  --std-dark-2:#0F2418;
  --std-mid:#2D6A4F;
  --std-accent:#40916C;
  --std-accent-2:#52B788;
  --std-light:#D8F3DC;
  --std-gold:#F4A261;
}

/* ================================================================
   THÈME STANDARD — utilisateurs non-premium
   (vert forêt / émeraude + accents ambre)
   ================================================================ */
body.theme-standard{
  background:
    radial-gradient(circle at 80% 0%,rgba(64,145,108,.22),transparent 30%),
    radial-gradient(circle at 6% 20%,rgba(244,162,97,.12),transparent 26%),
    linear-gradient(180deg,var(--std-dark) 0%,var(--std-dark-2) 35%,#EEF5F1 100%)!important;
  color:#F0FAF4;
}
body.theme-standard .shell{background:transparent!important;}
body.theme-standard .body{
  background:
    radial-gradient(circle at 80px 28px,rgba(64,145,108,.18),transparent 200px),
    linear-gradient(180deg,rgba(26,58,42,.97) 0%,rgba(15,36,24,.93) 260px,rgba(232,245,236,.98) 620px)!important;
}
body.theme-standard .content{background:transparent!important;}
body.theme-standard .rail{
  background:linear-gradient(180deg,var(--std-dark-2) 0%,var(--std-dark) 100%)!important;
  border-right:1px solid rgba(64,145,108,.20)!important;
  box-shadow:16px 0 40px rgba(0,0,0,.14);
}
body.theme-standard .logo-wrap{border-bottom:1px solid rgba(64,145,108,.20)!important;}
body.theme-standard .logo-name{color:#fff!important;}
body.theme-standard .logo-sub,.theme-standard .rsec,.theme-standard .cat-row,.theme-standard .ccount,.theme-standard .rf{color:rgba(255,255,255,.52)!important;}
body.theme-standard .comm-card{background:#fff!important;}
body.theme-standard .comm-name{color:#111633!important;}
body.theme-standard .comm-sub{color:#747996!important;}
body.theme-standard .rnav{color:rgba(255,255,255,.65)!important;}
body.theme-standard .rnav:hover{background:rgba(64,145,108,.12)!important;color:#fff!important;}
body.theme-standard .rnav.on{
  background:linear-gradient(135deg,var(--std-accent),var(--std-accent-2))!important;
  color:#fff!important;
  box-shadow:0 12px 30px rgba(64,145,108,.28)!important;
}
body.theme-standard .rnav.on .nbadge{background:rgba(15,36,24,.18)!important;color:#fff!important;}
body.theme-standard .rail-foot{border-top:1px solid rgba(64,145,108,.18)!important;}
body.theme-standard .rf strong{color:#fff!important;}
body.theme-standard .topbar{
  background:rgba(15,36,24,.95)!important;
  border-bottom:1px solid rgba(64,145,108,.22)!important;
  backdrop-filter:blur(16px);
}
body.theme-standard .topbar-title{color:#fff!important;}
body.theme-standard .user-chip{
  background:rgba(64,145,108,.15)!important;
  color:var(--std-accent-2)!important;
  border:1px solid rgba(64,145,108,.22);
}
body.theme-standard .user-chip .uc-av{
  background:var(--std-accent)!important;
  color:#fff!important;
}
body.theme-standard .btn-dark{
  background:linear-gradient(135deg,var(--std-accent),var(--std-accent-2))!important;
  color:#fff!important;
  box-shadow:0 10px 26px rgba(64,145,108,.28)!important;
}
body.theme-standard #v-home .section-head h3,
body.theme-standard #v-home h3{color:#fff!important;text-shadow:0 1px 10px rgba(0,0,0,.22);}
body.theme-standard .quick-card,
body.theme-standard .scard,
body.theme-standard .card,
body.theme-standard .rcard,
body.theme-standard .setup-card,
body.theme-standard .modal,
body.theme-standard .account-menu,
body.theme-standard .auth-card{
  background:rgba(255,255,255,.97)!important;
  border:1px solid rgba(255,255,255,.72)!important;
  box-shadow:0 18px 44px rgba(26,58,42,.12)!important;
}
body.theme-standard .quick-card:hover,
body.theme-standard .card:hover{
  border-color:rgba(64,145,108,.50)!important;
  box-shadow:0 20px 48px rgba(26,58,42,.18)!important;
}
body.theme-standard .quick-card b,.theme-standard .card-name,.theme-standard .scard-val,.theme-standard .account-title,.theme-standard .modal h3{color:#0F2418!important;}
body.theme-standard .quick-card p,.theme-standard .card-foot,.theme-standard .scard-lbl{color:#4A7060!important;}
body.theme-standard .nafa-v2-user-card{
  background:
    radial-gradient(circle at 92% 8%,rgba(82,183,136,.24),transparent 30%),
    linear-gradient(135deg,#0F2418 0%,#1A3A2A 52%,#2D5A40 100%)!important;
  border:1px solid rgba(64,145,108,.38)!important;
  box-shadow:0 24px 64px rgba(0,20,10,.30)!important;
}
body.theme-standard .nafa-v2-score-panel{
  background:linear-gradient(180deg,#F4FBF7,#E8F5EE)!important;
  border:1px solid rgba(64,145,108,.38)!important;
  box-shadow:0 18px 44px rgba(26,58,42,.10)!important;
}
body.theme-standard .nafa-v2-score-fill{background:linear-gradient(90deg,var(--std-dark),var(--std-accent))!important;}
body.theme-standard #qc-vault{
  background:linear-gradient(135deg,#1A3A2A,#0F2418)!important;
  border:1px solid rgba(64,145,108,.35)!important;
  opacity:.85;
  position:relative;
}
body.theme-standard .fsrch,.theme-standard .fsel,.theme-standard .chip,.theme-standard .field input,.theme-standard .field select,.theme-standard .field textarea,.theme-standard .ef input,.theme-standard .ef select,.theme-standard .ef textarea{background:rgba(255,255,255,.94)!important;}
body.theme-standard .bot-nav{
  background:rgba(15,36,24,.97)!important;
  border-top:1px solid rgba(64,145,108,.22)!important;
}
body.theme-standard .bot-btn{color:rgba(255,255,255,.55)!important;}
body.theme-standard .bot-btn.on{color:var(--std-accent-2)!important;}
body.theme-standard .bot-btn.on .bot-ico{background:rgba(64,145,108,.16)!important;}
body.theme-standard .bot-btn.scan-main .bot-ico{
  background:linear-gradient(135deg,var(--std-accent),var(--std-accent-2))!important;
  color:#fff!important;
  border-color:var(--std-dark-2)!important;
}
@media(max-width:768px){
  body.theme-standard .body{background:linear-gradient(180deg,#1A3A2A 0%,#2D6A4F 300px,#EEF5F1 760px)!important;}
  body.theme-standard .topbar{background:rgba(15,36,24,.97)!important;}
  body.theme-standard .nafa-v2-user-premium{margin-top:4px;}
}

/* ================================================================
   THÈME PREMIUM — Gestionnaire de patrimoine
   Palette privée haut de gamme — remplacement intégral
   ================================================================ */
body.theme-premium{
  background:var(--premium-bg-main)!important;
  color:var(--premium-text)!important;
  font-family:var(--premium-body-font)!important;
}
body.theme-premium .shell,
body.theme-premium .body,
body.theme-premium .content{background:var(--premium-bg-main)!important;}
body.theme-premium h1,
body.theme-premium h2,
body.theme-premium h3,
body.theme-premium .topbar-title,
body.theme-premium .logo-name,
body.theme-premium .vault-title,
body.theme-premium .vault-panel-title,
body.theme-premium .nafa-v2-user-title{font-family:var(--premium-title-font)!important;color:var(--premium-primary)!important;text-shadow:none!important;}
body.theme-premium .rail{
  background:var(--premium-primary)!important;
  border-right:1px solid var(--premium-gold)!important;
  box-shadow:16px 0 40px color-mix(in srgb,var(--premium-primary) 18%,transparent);
}
body.theme-premium .logo-wrap{border-bottom:1px solid color-mix(in srgb,var(--premium-gold-light) 42%,var(--premium-primary))!important;}
body.theme-premium .logo-name{color:var(--premium-bg-main)!important;}
body.theme-premium .logo-sub,
body.theme-premium .rsec,
body.theme-premium .cat-row,
body.theme-premium .ccount,
body.theme-premium .rf{color:var(--premium-gold-light)!important;}
body.theme-premium .rnav{color:var(--premium-bg-main)!important;}
body.theme-premium .rnav:hover{background:var(--premium-primary-hover)!important;color:var(--premium-bg-main)!important;}
body.theme-premium .rnav.on{
  background:var(--premium-bg-main)!important;
  color:var(--premium-primary)!important;
  box-shadow:none!important;
  border-left:3px solid var(--premium-gold)!important;
}
body.theme-premium .rnav.on .nbadge{background:var(--premium-gold-light)!important;color:var(--premium-primary)!important;}
body.theme-premium .rail-foot{border-top:1px solid color-mix(in srgb,var(--premium-gold-light) 42%,var(--premium-primary))!important;}
body.theme-premium .rf strong{color:var(--premium-bg-main)!important;}
body.theme-premium .topbar{
  background:var(--premium-bg-main)!important;
  border-bottom:1px solid var(--premium-border)!important;
  backdrop-filter:blur(16px);
}
body.theme-premium .topbar-title{color:var(--premium-primary)!important;}
body.theme-premium .user-chip{
  background:var(--premium-bg-secondary)!important;
  color:var(--premium-primary)!important;
  border:1px solid var(--premium-border)!important;
}
body.theme-premium .user-chip .uc-av{
  background:var(--premium-primary)!important;
  color:var(--premium-bg-main)!important;
}
body.theme-premium .btn-dark,
body.theme-premium .btn-primary{
  background:var(--premium-primary)!important;
  color:var(--premium-bg-main)!important;
  border-color:var(--premium-primary)!important;
  box-shadow:0 10px 26px color-mix(in srgb,var(--premium-primary) 18%,transparent)!important;
}
body.theme-premium .btn-dark:hover,
body.theme-premium .btn-primary:hover{background:var(--premium-primary-hover)!important;border-color:var(--premium-primary-hover)!important;}
body.theme-premium .quick-card,
body.theme-premium .scard,
body.theme-premium .card,
body.theme-premium .rcard,
body.theme-premium .setup-card,
body.theme-premium .modal,
body.theme-premium .account-menu,
body.theme-premium .auth-card,
body.theme-premium .comm-card{
  background:var(--premium-bg-main)!important;
  border:1px solid var(--premium-border)!important;
  box-shadow:0 18px 44px color-mix(in srgb,var(--premium-primary) 10%,transparent)!important;
}
body.theme-premium .quick-card:hover,
body.theme-premium .card:hover{border-color:var(--premium-gold-light)!important;box-shadow:0 20px 48px color-mix(in srgb,var(--premium-primary) 14%,transparent)!important;}
body.theme-premium .quick-card b,
body.theme-premium .card-name,
body.theme-premium .scard-val,
body.theme-premium .account-title,
body.theme-premium .modal h3,
body.theme-premium .comm-name{color:var(--premium-primary)!important;}
body.theme-premium .quick-card p,
body.theme-premium .card-foot,
body.theme-premium .scard-lbl,
body.theme-premium .comm-sub,
body.theme-premium .comm-sep{color:var(--premium-text-secondary)!important;}
body.theme-premium .quick-ico{background:var(--premium-bg-secondary)!important;color:var(--premium-gold)!important;border:1px solid var(--premium-border)!important;box-shadow:none!important;}
body.theme-premium .nafa-v2-user-card,
body.theme-premium .nafa-v2-score-panel,
body.theme-premium #qc-vault.nafa-v2-vault-card{
  background:var(--premium-bg-main)!important;
  color:var(--premium-text)!important;
  border:1px solid var(--premium-border)!important;
  box-shadow:0 18px 44px color-mix(in srgb,var(--premium-primary) 10%,transparent)!important;
}
body.theme-premium #qc-vault.nafa-v2-vault-card .nafa-v2-badge{
  background:var(--premium-gold-light)!important;
  color:var(--premium-primary)!important;
  border:1px solid var(--premium-gold)!important;
}
body.theme-premium .fsrch,
body.theme-premium .fsel,
body.theme-premium .chip,
body.theme-premium .field input,
body.theme-premium .field select,
body.theme-premium .field textarea,
body.theme-premium .ef input,
body.theme-premium .ef select,
body.theme-premium .ef textarea{
  background:var(--premium-bg-main)!important;
  color:var(--premium-text)!important;
  border-color:var(--premium-border)!important;
}
body.theme-premium .field input:focus,
body.theme-premium .field select:focus,
body.theme-premium .field textarea:focus,
body.theme-premium .ef input:focus,
body.theme-premium .ef select:focus,
body.theme-premium .ef textarea:focus{
  border-color:var(--premium-gold)!important;
  outline:2px solid var(--premium-gold-light)!important;
  outline-offset:2px;
}
body.theme-premium .bot-nav,
body.theme-premium .bottom-nav{
  background:var(--premium-primary)!important;
  border-top:1px solid var(--premium-gold)!important;
}
body.theme-premium .bot-btn{color:var(--premium-gold-light)!important;}
body.theme-premium .bot-btn.on{color:var(--premium-bg-main)!important;}
body.theme-premium .bot-btn.on .bot-ico{background:var(--premium-primary-hover)!important;}
body.theme-premium .bot-btn.scan-main .bot-ico{
  background:var(--premium-gold)!important;
  color:var(--premium-primary)!important;
  border-color:var(--premium-gold)!important;
}
@media(max-width:768px){
  body.theme-premium .body{background:var(--premium-bg-main)!important;}
  body.theme-premium .topbar{background:var(--premium-bg-main)!important;}
  body.theme-premium .nafa-v2-user-premium{margin-top:4px;}
}

/* === Coffre-fort — écran de blocage non-premium === */
.vault-lock-screen{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  min-height:calc(var(--app-h) - 120px);padding:24px;text-align:center;
}
.vault-lock-hero{
  width:90px;height:90px;border-radius:50%;
  background:linear-gradient(135deg,#1A3A2A,#2D6A4F);
  border:3px solid rgba(64,145,108,.35);
  display:flex;align-items:center;justify-content:center;
  font-size:36px;margin-bottom:20px;
  box-shadow:0 16px 40px rgba(26,58,42,.20);
}
body.theme-premium .vault-lock-hero{
  background:linear-gradient(135deg,#0F1F3D,#15284B);
  border-color:rgba(200,169,110,.35);
  box-shadow:0 16px 40px rgba(15,31,61,.24);
}
.vault-lock-title{font-size:22px;font-weight:900;letter-spacing:-.5px;margin-bottom:8px;color:#0F2418;}
body.theme-premium .vault-lock-title{color:#071529;}
.vault-lock-sub{font-size:13px;color:#4A7060;line-height:1.65;max-width:320px;margin:0 auto 24px;}
body.theme-premium .vault-lock-sub{color:#6B728C;}
.vault-lock-perks{
  display:grid;gap:10px;width:100%;max-width:340px;margin-bottom:24px;
}
.vault-lock-perk{
  display:flex;align-items:center;gap:12px;
  background:rgba(64,145,108,.08);border:1px solid rgba(64,145,108,.18);
  border-radius:14px;padding:11px 14px;text-align:left;
}
.vault-lock-perk-ico{font-size:20px;flex-shrink:0;}
.vault-lock-perk-text{font-size:12px;font-weight:600;color:#1A3A2A;line-height:1.4;}
.vault-lock-perk-text small{display:block;font-weight:400;color:#4A7060;margin-top:2px;}
.btn-vault-unlock{
  background:linear-gradient(135deg,#40916C,#52B788)!important;
  color:#fff!important;border:none;border-radius:14px;
  padding:14px 28px;font-size:15px;font-weight:800;
  box-shadow:0 12px 32px rgba(64,145,108,.30)!important;
  cursor:pointer;letter-spacing:-.2px;
  display:inline-flex;align-items:center;gap:8px;
}
.btn-vault-unlock:hover{transform:translateY(-1px);box-shadow:0 16px 40px rgba(64,145,108,.38)!important;}



/* ── SINISTRE ASSURANCE — Coffre-fort Premium ── */
.claim-panel{margin:14px 0;padding:14px;border-radius:var(--r);border:1px solid rgba(200,169,110,.38);background:linear-gradient(135deg,#fffaf0,#ffffff);box-shadow:0 10px 24px rgba(15,31,61,.07)}
.claim-panel-head{display:flex;align-items:flex-start;gap:10px;justify-content:space-between;margin-bottom:10px}
.claim-panel-title{font-size:14px;font-weight:850;color:#0F1F3D;letter-spacing:-.2px}
.claim-panel-sub{font-size:11px;color:var(--tx2);line-height:1.55;margin-top:2px}
.claim-type-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:10px 0}
.claim-type{border:1px solid var(--bdr);background:var(--sur);border-radius:14px;padding:9px 8px;cursor:pointer;font-size:12px;font-weight:700;text-align:center;color:var(--tx2)}
.claim-type.on{border-color:#C8A96E;background:#fff7df;color:#7a6000;box-shadow:0 6px 16px rgba(200,169,110,.18)}
.claim-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:10px 0}.claim-form-grid .full{grid-column:1/-1}
.claim-form-grid label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:var(--tx3);display:block;margin-bottom:3px}
.claim-form-grid input,.claim-form-grid textarea{width:100%;padding:8px 10px;border:1px solid var(--bdr2);border-radius:var(--rs);font-family:inherit;font-size:12px;background:#fff;color:var(--tx)}
.claim-items{display:grid;grid-template-columns:1fr;gap:7px;max-height:230px;overflow:auto;margin-top:8px;padding-right:2px}
.claim-item{display:flex;align-items:center;gap:9px;border:1px solid var(--bdr);background:var(--sur2);border-radius:14px;padding:8px;cursor:pointer}
.claim-item input{width:16px;height:16px;flex-shrink:0}.claim-item img,.claim-item-ph{width:42px;height:42px;border-radius:10px;object-fit:cover;background:var(--sur3);display:flex;align-items:center;justify-content:center;flex-shrink:0}.claim-item-main{min-width:0;flex:1}.claim-item-name{font-size:12px;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.claim-item-meta{font-size:10px;color:var(--tx2)}
.claim-export-box{width:100%;min-height:210px;border:1px solid #e8d39b;border-radius:var(--rs);background:#fffdf7;padding:11px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;color:#243047;white-space:pre-wrap;resize:vertical}
.claim-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.claim-actions .btn{flex:1;justify-content:center}
@media(max-width:768px){.claim-type-grid{grid-template-columns:repeat(2,1fr)}.claim-form-grid{grid-template-columns:1fr}.claim-actions .btn{flex-basis:100%}}



/* === COFFRE-FORT PLEIN ÉCRAN — NAFA V2 === */
.vault-page{min-height:calc(var(--app-h) - 92px);padding:2px 0 24px;color:#071529}
.vault-hero{position:relative;overflow:hidden;border-radius:28px;padding:26px;background:var(--premium-bg-secondary);border:1px solid var(--premium-border);box-shadow:0 24px 64px color-mix(in srgb,var(--premium-primary) 12%,transparent);color:var(--premium-text);margin-bottom:16px}
.vault-kicker{display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(200,169,110,.30);background:rgba(200,169,110,.12);color:#E8C98E;font-size:11px;font-weight:800;border-radius:999px;padding:5px 10px;margin-bottom:12px}
.vault-hero-row{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;flex-wrap:wrap}
.vault-title{font-size:30px;font-weight:900;letter-spacing:-.9px;line-height:1.05;color:var(--premium-primary);margin-bottom:7px;font-family:var(--premium-title-font)}
.vault-sub{font-size:13px;color:var(--premium-text-secondary);max-width:640px;line-height:1.65}
.vault-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.btn-claim-soft{background:rgba(255,255,255,.08)!important;color:#E8C98E!important;border:1px solid rgba(232,201,142,.38)!important;box-shadow:none!important}
.btn-claim-soft:hover{background:rgba(232,201,142,.15)!important}
.vault-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:16px 0}
.vault-stat{background:var(--premium-bg-main);border:1px solid var(--premium-border);border-radius:20px;padding:15px 16px;box-shadow:0 14px 34px color-mix(in srgb,var(--premium-primary) 10%,transparent)}
.vault-stat span{display:block;font-size:11px;color:#6B728C;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px}.vault-stat b{display:block;font-size:22px;letter-spacing:-.5px;color:#071529}
.vault-layout{display:grid;grid-template-columns:1fr 320px;gap:14px;align-items:start}.vault-panel{background:var(--premium-bg-main);border:1px solid var(--premium-border);border-radius:24px;padding:16px;box-shadow:0 18px 44px color-mix(in srgb,var(--premium-primary) 10%,transparent)}
.vault-panel-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:12px}.vault-panel-title{font-size:15px;font-weight:900;color:#071529;letter-spacing:-.2px}.vault-panel-sub{font-size:11px;color:#6B728C;margin-top:2px}
.vault-item-list{display:grid;gap:10px}.vault-item{display:flex;gap:12px;align-items:center;border:1px solid #E8E6F5;background:#F8FAFC;border-radius:18px;padding:10px;cursor:pointer;transition:all .15s}.vault-item:hover{border-color:rgba(200,169,110,.7);transform:translateY(-1px);box-shadow:0 10px 24px rgba(15,31,61,.10)}
.vault-item-img{width:58px;height:58px;border-radius:14px;object-fit:cover;background:#ECE8FF;display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0}.vault-item-main{flex:1;min-width:0}.vault-item-name{font-size:13px;font-weight:800;color:#071529;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vault-item-meta{font-size:11px;color:#6B728C;margin-top:2px}.vault-proof-row{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.vault-proof{font-size:10px;font-weight:800;border-radius:999px;padding:3px 7px;background:#EEF2F8;color:#64708E}.vault-proof.ok{background:#E3F7EE;color:#0F9F6E}.vault-proof.warn{background:#FDF1DC;color:#B8780A}
.vault-proof-compact{display:none;font-size:10.5px;font-weight:800;border-radius:999px;padding:3px 9px;margin-top:6px;width:fit-content}
.vault-proof-compact.ok{background:#E3F7EE;color:#0F9F6E}.vault-proof-compact.mid{background:#FDF1DC;color:#B8780A}.vault-proof-compact.warn{background:#FBE7E7;color:#C0392B}
.vault-side-card{border:1px solid #E8E6F5;background:#F8FAFC;border-radius:18px;padding:13px;margin-bottom:10px}.vault-side-card h4{font-size:13px;margin:0 0 5px;color:#071529}.vault-side-card p{font-size:11px;color:#6B728C;line-height:1.55;margin:0}.vault-discreet-claim{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid rgba(184,120,10,.32);background:#FFF9EC;border-radius:18px;padding:12px;box-shadow:0 10px 24px rgba(184,120,10,.08)}.vault-discreet-claim strong{font-size:13px;color:#7A4F00}.vault-discreet-claim small{display:block;font-size:11px;color:#8A6A24;margin-top:2px}
@media(max-width:900px){.vault-layout{grid-template-columns:1fr}.vault-stats{grid-template-columns:repeat(2,1fr)}.vault-title{font-size:24px}.vault-hero{padding:20px}}
@media(max-width:480px){.vault-stats{grid-template-columns:1fr 1fr;gap:8px}.vault-stat{padding:12px}.vault-stat b{font-size:18px}.vault-actions{width:100%}.vault-actions .btn{flex:1;justify-content:center}.vault-item-img{width:50px;height:50px}}
@media(max-width:560px){
  .vault-panel{padding:13px}
  .vault-panel-head{flex-wrap:wrap;row-gap:8px}
  .vault-panel-head .btn{width:100%;justify-content:center}
  .vault-item{gap:10px;padding:9px}
  .vault-item-img{width:44px;height:44px;border-radius:12px;font-size:20px}
  .vault-item-name{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.25}
  .vault-item-meta{font-size:10.5px}
  .vault-item-list{gap:7px}
  .vault-proof-row{display:none}
  .vault-proof-compact{display:inline-flex;align-items:center}
}


/* === PATCH COFFRE-FORT : annonces indépendantes, modifiables uniquement ici === */
.vault-item-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}
.vault-sale-badge{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:850;border-radius:999px;padding:4px 8px;background:#E3F7EE;color:#0F9F6E}
.vault-sale-badge.off{background:#EEF2F8;color:#64708E}
.vault-edit-form{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.vault-edit-form .ef.full{grid-column:1/-1}
.vault-proof-box{border:1px solid #E8E6F5;background:#F8FAFC;border-radius:16px;padding:11px;display:grid;gap:8px}
.vault-proof-box b{font-size:12px;color:#071529}.vault-proof-box small{font-size:10px;color:#6B728C}
@media(max-width:640px){.vault-edit-form{grid-template-columns:1fr}.vault-actions .btn{width:100%;justify-content:center}}



/* === Correctif responsive iPhone / Nafa Assistant / export marketplace === */
html, body { max-width: 100%; overflow-x: hidden; }
#mkt-export-overlay{padding:12px!important;align-items:flex-start!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;}
#mkt-export-overlay > div{width:min(520px, calc(100vw - 18px))!important;max-width:calc(100vw - 18px)!important;max-height:calc(100dvh - 18px)!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;padding:16px!important;padding-bottom:calc(16px + env(safe-area-inset-bottom))!important;}
#mkt-export-overlay textarea,#mkt-export-overlay input,#mkt-export-overlay button{max-width:100%!important;box-sizing:border-box!important;}
@media (max-width:430px){
  #mkt-export-overlay{padding:8px!important;}
  #mkt-export-overlay > div{border-radius:18px!important;width:calc(100vw - 12px)!important;max-width:calc(100vw - 12px)!important;max-height:calc(100dvh - 12px)!important;padding:14px!important;}
  #mkt-export-overlay textarea{font-size:16px!important;line-height:1.35!important;}
  #mkt-export-overlay input{font-size:16px!important;}
  #mkt-export-overlay button{min-height:42px!important;}
}

/* Si le bloc Nafa Assistant est dans cette page ou dans un popup WebView */
.nafa-assistant,.nafa-popup,.assistant-popup,#nafa-assistant,#nafaPopup{
  width:min(100%,430px)!important;
  max-width:100vw!important;
  min-width:0!important;
  max-height:100dvh!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  box-sizing:border-box!important;
  padding-bottom:calc(16px + env(safe-area-inset-bottom))!important;
}
.nafa-assistant *,.nafa-popup *,.assistant-popup *,#nafa-assistant *,#nafaPopup *{box-sizing:border-box!important;max-width:100%;}
.nafa-assistant input,.nafa-assistant textarea,.nafa-assistant select,
.nafa-popup input,.nafa-popup textarea,.nafa-popup select,
.assistant-popup input,.assistant-popup textarea,.assistant-popup select,
#nafa-assistant input,#nafa-assistant textarea,#nafa-assistant select,
#nafaPopup input,#nafaPopup textarea,#nafaPopup select{font-size:16px!important;width:100%!important;}
@media(max-width:430px){
  .nafa-assistant,.nafa-popup,.assistant-popup,#nafa-assistant,#nafaPopup{width:100vw!important;border-radius:0!important;padding:14px!important;}
  .nafa-assistant .row,.nafa-popup .row,.assistant-popup .row,#nafa-assistant .row,#nafaPopup .row,
  .nafa-assistant .grid,.nafa-popup .grid,.assistant-popup .grid,#nafa-assistant .grid,#nafaPopup .grid{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;}
}


/* ================================================================
   CORRECTION iPhone 15 / Dynamic Island / Safe Area
   Ajouté par ChatGPT : évite le chevauchement avec la barre iOS
   et supprime le bandeau clair sous la navigation du bas.
   ================================================================ */
html{
  background:#0F2418!important;
  min-height:100%;
}
body{
  min-height:100svh!important;
  min-height:100dvh!important;
  background:
    radial-gradient(circle at 80% 0%,rgba(82,183,136,.18),transparent 28%),
    linear-gradient(180deg,#0F2418 0%,#2D6A4F 42%,#EEF5F1 100%)!important;
}
body.theme-premium{
  background:var(--premium-bg-main)!important;
  color:var(--premium-text)!important;
  font-family:var(--premium-body-font)!important;
}
.shell{
  min-height:100svh!important;
  min-height:100dvh!important;
  background:transparent!important;
}
@media(max-width:768px){
  .topbar{
    padding-top:max(54px,calc(env(safe-area-inset-top,0px) + 18px))!important;
    padding-left:max(18px,calc(env(safe-area-inset-left,0px) + 18px))!important;
    padding-right:max(18px,calc(env(safe-area-inset-right,0px) + 18px))!important;
    padding-bottom:12px!important;
    gap:8px!important;
    width:100%!important;
    box-sizing:border-box!important;
  }
  #tb-logo{
    max-height:34px!important;
    width:auto!important;
    flex-shrink:0!important;
  }
  .topbar-title{
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  .user-chip,
  #profile-wrap,
  #badge-topbar-icon{
    flex-shrink:0!important;
  }
  .bot-nav,
  .bottom-nav{
    padding-bottom:max(20px,env(safe-area-inset-bottom,0px))!important;
    background:#0F2418!important;
    border-top:1px solid rgba(64,145,108,.22)!important;
  }
  body.theme-premium .bot-nav,
  body.theme-premium .bottom-nav{
    background:var(--premium-primary)!important;
    border-top:1px solid var(--premium-gold)!important;
  }
}


/* NAFA — Alertes prix : hausses uniquement */
.pricewatch-hero{border:1px solid var(--bdr);background:linear-gradient(135deg,#fff,#f7fbff);border-radius:22px;padding:18px 20px;margin-bottom:14px;box-shadow:0 10px 28px rgba(15,31,61,.07)}
.pricewatch-hero h2{margin:0 0 5px;font-size:22px;letter-spacing:-.45px;color:var(--tx)}
.pricewatch-hero p{margin:0;color:var(--tx2);font-size:13px;line-height:1.5}
.pricewatch-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}
.pricewatch-list{display:grid;gap:9px}
.pricewatch-summary{display:flex;align-items:center;gap:22px;padding:17px 20px;background:var(--sur);border:1px solid var(--bdr);border-radius:18px;box-shadow:0 8px 22px rgba(15,31,61,.05)}
.pricewatch-summary-item{display:grid;gap:2px;min-width:130px}
.pricewatch-summary-item span{font-size:11px;color:var(--tx2);font-weight:750}
.pricewatch-summary-item strong{font-size:24px;line-height:1.1;color:var(--tx);letter-spacing:-.5px}
.pricewatch-summary-gain strong{color:#159457}
.pricewatch-summary-divider{width:1px;height:38px;background:var(--bdr)}
.pricewatch-summary-note{margin-left:auto;font-size:11px;color:var(--tx3);text-align:right;max-width:280px}
.pricewatch-row{background:var(--sur);border:1px solid var(--bdr);border-radius:17px;padding:12px 15px;display:grid;grid-template-columns:58px minmax(180px,1fr) auto auto;gap:16px;align-items:center;box-shadow:0 7px 20px rgba(22,22,60,.035);cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.pricewatch-row:hover{transform:translateY(-1px);border-color:rgba(21,148,87,.26);box-shadow:0 11px 26px rgba(15,31,61,.08)}
.pricewatch-img{width:58px;height:58px;border-radius:13px;background:var(--sur2);object-fit:cover;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pricewatch-img-empty .nf-ico{width:24px;height:24px;color:var(--tx3)}
.pricewatch-main{min-width:0}
.pricewatch-name{font-size:14px;font-weight:850;color:var(--tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pricewatch-meta{font-size:10.5px;color:var(--tx2);margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pricewatch-values{display:grid;grid-template-columns:auto 22px auto;align-items:center;gap:8px;min-width:260px}
.pricewatch-old,.pricewatch-new{display:grid;gap:3px}
.pricewatch-old span,.pricewatch-new span{font-size:9px;color:var(--tx3);font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.pricewatch-old strong,.pricewatch-new strong{font-size:14px;color:var(--tx);white-space:nowrap}
.pricewatch-old strong{color:var(--tx2);font-weight:750}
.pricewatch-new strong{font-weight:900}
.pricewatch-arrow{color:var(--tx3);font-size:17px;text-align:center}
.pricewatch-gain{min-width:108px;text-align:right;display:grid;justify-items:end;gap:4px}
.pricewatch-gain strong{font-size:16px;color:#159457;font-weight:950;white-space:nowrap}
.pricewatch-gain span{display:inline-flex;padding:3px 7px;border-radius:999px;background:#e5f7ed;color:#11834d;font-size:10px;font-weight:900}
.pricewatch-no-rise{padding:38px 20px;text-align:center;background:var(--sur);border:1px solid var(--bdr);border-radius:18px;display:grid;justify-items:center;gap:7px;color:var(--tx2)}
.pricewatch-no-rise-icon{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#e8f7ef;color:#159457;font-size:22px;font-weight:900}
.pricewatch-no-rise strong{color:var(--tx);font-size:15px}
.pricewatch-no-rise span{font-size:12px}
.card-watch-badge{position:absolute;top:8px;left:8px;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:900;backdrop-filter:blur(8px);display:flex;flex-direction:column;align-items:flex-start;gap:1px;line-height:1.05;box-shadow:0 8px 18px rgba(7,21,41,.10)}
.card-watch-badge .watch-diff{font-size:11px;letter-spacing:-.15px}.card-watch-badge .watch-label{font-size:8px;font-weight:800;opacity:.82;white-space:nowrap}.card-watch-badge.positive{background:rgba(22,163,74,.13);color:#0f8f4f;border:1px solid rgba(22,163,74,.22)}.card-watch-badge.negative{background:rgba(220,38,38,.13);color:#c62828;border:1px solid rgba(220,38,38,.22)}.card-watch-badge.neutral{background:rgba(100,112,142,.14);color:#64708e;border:1px solid rgba(100,112,142,.20)}
@media(max-width:980px){.pricewatch-row{grid-template-columns:54px minmax(0,1fr) auto}.pricewatch-values{grid-column:2/3;min-width:0}.pricewatch-gain{grid-column:3;grid-row:1/3}.pricewatch-summary-note{display:none}}
@media(max-width:650px){.pricewatch-summary{gap:14px;padding:14px}.pricewatch-summary-divider{height:34px}.pricewatch-summary-item strong{font-size:20px}.pricewatch-row{grid-template-columns:50px minmax(0,1fr) auto;padding:11px;gap:11px}.pricewatch-img{width:50px;height:50px}.pricewatch-values{grid-column:1/4;display:flex;justify-content:space-between;border-top:1px solid var(--bdr);padding-top:10px}.pricewatch-old,.pricewatch-new{display:flex;align-items:baseline;gap:5px}.pricewatch-old span,.pricewatch-new span{display:none}.pricewatch-gain{grid-column:3;grid-row:1;text-align:right;min-width:88px}.pricewatch-name{font-size:13px}.pricewatch-meta{font-size:10px}.pricewatch-hero h2{font-size:19px}}
body.theme-premium .pricewatch-hero,body.theme-premium .pricewatch-summary,body.theme-premium .pricewatch-row,body.theme-premium .pricewatch-no-rise{background:rgba(255,255,255,.96)!important;border-color:rgba(255,255,255,.70)!important}
body.theme-premium .pricewatch-row{box-shadow:0 14px 34px rgba(15,31,61,.10)!important}
body.theme-premium .pricewatch-name,body.theme-premium .pricewatch-old strong,body.theme-premium .pricewatch-new strong,body.theme-premium .pricewatch-summary-item strong{color:#071529}
body.theme-premium .pricewatch-meta,body.theme-premium .pricewatch-summary-item span{color:#6B728C}
body.theme-premium .pricewatch-img{background:#EEF2F8!important}


/* === NAFA NAV CUSTOM ICONS ===
   Navigation pensée pour l’identité Nafa :
   boussole = Nafa / panier = Mes affaires / gemme = Coffre-fort / échange = Boutique / carte = Mon espace.
   Les IDs et onclick restent inchangés pour préserver les fonctionnalités.
*/
.nafa-nav-icon-home svg,.nafa-nav-icon-items svg,.nafa-nav-icon-treasures svg,.nafa-nav-icon-shop svg,.nafa-nav-icon-community svg,.nafa-nav-icon-user svg,.nafa-nav-icon-scan svg,.nafa-nav-icon-alerts svg{width:22px;height:22px;display:block}


/* Correctif anti-chevauchement : hiérarchie stable des couches */
.item-detail-view,.item-edit-view{z-index:1200!important;}
.account-menu{z-index:1400!important;}
.nf-drawer-overlay{z-index:8000!important;}
.overlay,.nf-modal-ov{z-index:10000!important;}
.nafa-welcome-overlay{z-index:11000!important;}
body.nafa-panel-open{overflow:hidden;}


/* ══ WELCOME POPUP ══ */

  .nafa-welcome-overlay{
    position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;
    padding:calc(22px + env(safe-area-inset-top)) 16px calc(22px + env(safe-area-inset-bottom));
    background:rgba(13,38,28,.58);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
    overflow:auto;color:#1f2a24;
  }
  .nafa-welcome-overlay.is-visible{display:flex;}
  .nafa-welcome-modal{
    width:min(1120px,100%);min-height:min(760px,calc(100vh - 44px));
    background:rgba(255,255,255,.88);border:1px solid rgba(255,255,255,.82);
    border-radius:30px;box-shadow:0 28px 90px rgba(18,67,46,.34);overflow:hidden;
    display:grid;grid-template-columns:1.05fr .95fr;position:relative;
  }
  .nafa-welcome-close{
    position:absolute;top:16px;right:16px;z-index:4;width:42px;height:42px;border:0;border-radius:999px;
    background:rgba(255,255,255,.86);color:#12432e;font-size:22px;font-weight:900;cursor:pointer;
    box-shadow:0 10px 28px rgba(18,67,46,.14);
  }
  .nafa-welcome-social{
    position:absolute;top:16px;left:50%;transform:translateX(-50%);z-index:3;display:flex;gap:8px;
    padding:8px 10px;border-radius:999px;background:rgba(255,255,255,.78);box-shadow:0 10px 28px rgba(18,67,46,.12);
  }
  .nafa-welcome-social a{
    width:34px;height:34px;border-radius:50%;display:grid;place-items:center;text-decoration:none;background:#fff;color:#12432e;
    font-size:13px;font-weight:900;box-shadow:0 6px 16px rgba(18,67,46,.09);
  }
  .nafa-welcome-hero{
    padding:74px 46px 46px;color:white;display:flex;flex-direction:column;justify-content:space-between;gap:28px;
    background:linear-gradient(160deg,rgba(18,67,46,.97),rgba(31,111,74,.88)),radial-gradient(circle at 15% 20%,rgba(216,167,63,.45),transparent 34%);
  }
  .nafa-welcome-brand{display:flex;align-items:center;gap:14px;}
  .nafa-welcome-logo{width:58px;height:58px;border-radius:20px;background:linear-gradient(135deg,#fff,#dff4e7);display:grid;place-items:center;box-shadow:0 12px 30px rgba(0,0,0,.16);overflow:hidden;color:#12432e;font-weight:900;font-size:26px;}
  .nafa-welcome-logo img{width:100%;height:100%;object-fit:contain;padding:8px;display:none;}
  .nafa-welcome-brand-title{font-size:30px;font-weight:950;letter-spacing:-.04em;}
  .nafa-welcome-brand-subtitle{opacity:.78;font-size:14px;}
  .nafa-welcome-hero h1{font-size:clamp(38px,5.7vw,72px);line-height:.95;margin:0 0 18px;letter-spacing:-.07em;}
  .nafa-welcome-quote{font-size:21px;line-height:1.45;max-width:560px;opacity:.96;}
  .nafa-welcome-quote strong{color:#ffe8aa;}
  .nafa-welcome-scenes{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px;}
  .nafa-welcome-scene{padding:16px;border-radius:22px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.18);}
  .nafa-welcome-scene .emoji{font-size:34px;margin-bottom:8px;}
  .nafa-welcome-scene span{display:block;font-size:14px;opacity:.91;line-height:1.35;}
  .nafa-welcome-content{padding:74px 42px 38px;display:flex;flex-direction:column;gap:22px;overflow-y:auto;max-height:calc(100vh - 44px);}
  .nafa-welcome-pill{width:fit-content;padding:9px 14px;border-radius:999px;background:#eaf7ef;color:#12432e;font-weight:900;font-size:13px;}
  .nafa-welcome-content h2{margin:0;font-size:32px;line-height:1.08;letter-spacing:-.04em;color:#12432e;}
  .nafa-welcome-intro{font-size:16.5px;line-height:1.65;color:#64746b;margin:0;}
  .nafa-welcome-features{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
  .nafa-welcome-feature{padding:16px;background:rgba(255,255,255,.88);border-radius:20px;border:1px solid rgba(18,67,46,.09);box-shadow:0 10px 24px rgba(18,67,46,.06);}
  .nafa-welcome-feature b{display:block;color:#12432e;margin-bottom:5px;}
  .nafa-welcome-feature span{color:#64746b;font-size:14px;line-height:1.45;}
  .nafa-welcome-eco{padding:22px;border-radius:24px;background:linear-gradient(135deg,#fff8df,#effaf1);border:1px solid rgba(216,167,63,.26);display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center;}
  .nafa-welcome-boxicon{width:72px;height:72px;border-radius:22px;background:#fff;display:grid;place-items:center;font-size:36px;box-shadow:0 12px 24px rgba(216,167,63,.18);}
  .nafa-welcome-eco h3{margin:0 0 6px;color:#12432e;font-size:18px;}
  .nafa-welcome-eco p{margin:0;color:#64746b;line-height:1.5;font-size:14px;}
  .nafa-welcome-accept{margin-top:auto;display:flex;flex-direction:column;gap:14px;}
  .nafa-welcome-check{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:#64746b;line-height:1.45;}
  .nafa-welcome-check input{margin-top:2px;width:18px;height:18px;accent-color:#1f6f4a;flex:0 0 auto;}
  .nafa-welcome-actions{display:flex;gap:12px;flex-wrap:wrap;}
  .nafa-welcome-btn{border:0;padding:15px 20px;border-radius:18px;font-weight:950;cursor:pointer;font-size:15px;}
  .nafa-welcome-btn-primary{background:linear-gradient(135deg,#1f6f4a,#12432e);color:white;box-shadow:0 14px 30px rgba(31,111,74,.26);flex:1;min-width:230px;}
  .nafa-welcome-btn-secondary{background:white;color:#12432e;border:1px solid rgba(18,67,46,.12);}
  .nafa-welcome-note{font-size:12px;color:#87968d;line-height:1.45;}
  @media (max-width:880px){
    .nafa-welcome-overlay{align-items:flex-start;padding:calc(12px + env(safe-area-inset-top)) 10px calc(12px + env(safe-area-inset-bottom));}
    .nafa-welcome-modal{grid-template-columns:1fr;min-height:auto;border-radius:24px;}
    .nafa-welcome-social{position:static;transform:none;margin:12px auto -58px;width:max-content;}
    .nafa-welcome-close{top:12px;right:12px;}
    .nafa-welcome-hero{padding:76px 26px 28px;}
    .nafa-welcome-content{padding:28px;max-height:none;}
    .nafa-welcome-hero h1{font-size:42px;}
    .nafa-welcome-features,.nafa-welcome-scenes{grid-template-columns:1fr;}
    .nafa-welcome-eco{grid-template-columns:1fr;}
    .nafa-welcome-actions{flex-direction:column;}
    .nafa-welcome-btn-primary{min-width:0;width:100%;}
  }


/* ══ MISC ══ */

  body{padding-top:34px !important;}


/* ══ INLINE STYLES ══ */
    
    .shop-hero{margin-bottom:16px;border-radius:var(--r);overflow:hidden;box-shadow:0 8px 32px rgba(91,53,242,.18)}
    .shop-hero-img{position:relative;background:linear-gradient(135deg,#0f3460 0%,#5b35f2 60%,#7257ff 100%);height:240px;display:flex;align-items:center;justify-content:center;overflow:hidden}
    .shop-hero-badge{position:absolute;top:14px;left:14px;background:rgba(245,158,11,.95);color:#0f3460;font-size:9px;font-weight:800;padding:4px 11px;border-radius:20px;letter-spacing:.08em;text-transform:uppercase;z-index:2}
    .shop-hero-photo{font-size:90px;z-index:1;filter:drop-shadow(0 8px 24px rgba(0,0,0,.3))}
    .shop-hero-overlay{position:absolute;bottom:0;left:0;right:0;padding:16px 18px 18px;background:linear-gradient(to top,rgba(10,25,50,.9) 60%,transparent);z-index:2}
    .shop-hero-title{font-size:22px;font-weight:850;color:#fff;letter-spacing:-.5px;line-height:1.15;margin-bottom:4px}
    .shop-hero-title span{color:#f59e0b}
    .shop-hero-sub{font-size:12px;color:rgba(255,255,255,.7)}
    .shop-price-bar{display:flex;align-items:center;justify-content:space-between;background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);padding:14px 18px;margin-bottom:12px}
    .shop-price{font-size:32px;font-weight:850;color:var(--acc);letter-spacing:-.5px;line-height:1}
    .shop-price span{font-size:20px}
    .shop-price-sub{font-size:10px;color:var(--tx3);margin-top:3px}
    .shop-stars{font-size:16px;color:#f59e0b;text-align:right}
    .shop-stars span{display:block;font-size:11px;color:var(--tx2);font-weight:700}
    .shop-pills{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;margin-bottom:14px;scrollbar-width:none}
    .shop-pills::-webkit-scrollbar{display:none}
    .shop-pill{flex:0 0 auto;background:var(--acc-bg);color:var(--acc);font-size:11px;font-weight:700;padding:6px 12px;border-radius:20px;border:1px solid rgba(91,53,242,.15);white-space:nowrap}
    .shop-tagline{display:flex;gap:12px;align-items:flex-start;background:linear-gradient(135deg,#fdf8f0,#fef3e2);border:1px solid #f59e0b33;border-radius:var(--r);padding:14px 16px;margin-bottom:16px}
    .shop-tagline-ico{font-size:28px;flex-shrink:0;margin-top:2px}
    .shop-tagline-title{font-size:13px;font-weight:800;color:#0f3460;margin-bottom:3px}
    .shop-tagline-desc{font-size:11px;color:#5a4a2a;line-height:1.6}
    .shop-section-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--tx3);margin-bottom:10px}
    .shop-seeds{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:16px}
    .shop-seed{display:flex;align-items:center;gap:8px;background:var(--sur);border:1px solid var(--bdr);border-radius:var(--rs);padding:9px 12px;font-size:12px;color:var(--tx);font-weight:500}
    .shop-seed:first-child,.shop-seed:nth-child(2){border-top:2px solid var(--acc);background:var(--acc-bg)}
    .shop-usages{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:20px}
    .shop-usage{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--rs);padding:12px}
    .shop-usage-ico{font-size:22px;margin-bottom:5px}
    .shop-usage-label{font-size:11px;font-weight:700;color:var(--tx);margin-bottom:3px}
    .shop-usage-desc{font-size:10px;color:var(--tx2);line-height:1.5}
    .shop-order-card{background:var(--sur);border:2px solid var(--acc);border-radius:var(--r);overflow:hidden;box-shadow:0 8px 32px rgba(91,53,242,.15)}
    .shop-order-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:16px 16px 12px}
    .shop-order-name{font-size:14px;font-weight:800;color:var(--tx);margin-bottom:2px}
    .shop-order-desc{font-size:11px;color:var(--tx2)}
    .shop-order-price-big{font-size:22px;font-weight:850;color:var(--acc);flex-shrink:0}
    .shop-qty-row{display:flex;align-items:center;gap:10px;padding:0 16px 14px}
    .shop-qty-label{font-size:12px;font-weight:600;color:var(--tx2)}
    .shop-qty-ctrl{display:flex;align-items:center;border:1.5px solid rgba(91,53,242,.3);border-radius:20px;overflow:hidden}
    .shop-qty-btn{background:none;border:none;width:36px;height:36px;font-size:18px;cursor:pointer;color:var(--acc);font-weight:700;display:flex;align-items:center;justify-content:center}
    #shop-qty{min-width:32px;text-align:center;font-size:14px;font-weight:800;color:var(--acc)}
    .shop-qty-total{font-size:16px;font-weight:800;color:var(--acc);margin-left:auto}
    .shop-cta-btn{width:100%;padding:16px;background:linear-gradient(135deg,var(--acc),var(--acc2));color:#fff;border:none;font-size:15px;font-weight:800;cursor:pointer;font-family:inherit;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 6px 20px rgba(91,53,242,.35)}
    .shop-trust{text-align:center;font-size:10px;color:var(--tx3);padding:10px 12px;background:var(--sur2)}
    .nf-drawer-overlay{position:fixed;inset:0;background:rgba(10,10,30,.45);z-index:9000;display:flex;align-items:flex-end;justify-content:center;opacity:0;transition:opacity .25s;pointer-events:none}
    .nf-drawer-overlay.nf-drawer-open{opacity:1;pointer-events:all}
    .nf-drawer{background:var(--sur);border-radius:24px 24px 0 0;width:100%;max-width:540px;max-height:88vh;display:flex;flex-direction:column;transform:translateY(100%);transition:transform .28s cubic-bezier(.32,1,.25,1);box-shadow:0 -8px 40px rgba(10,10,30,.18)}
    .nf-drawer-overlay.nf-drawer-open .nf-drawer{transform:translateY(0)}
    .nf-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:18px 18px 12px;border-bottom:1px solid var(--bdr);flex-shrink:0}
    .nf-drawer-header-left{display:flex;align-items:center;gap:12px}
    .nf-drawer-ico{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}
    .nf-drawer-title{font-size:15px;font-weight:800;color:var(--tx)}
    .nf-drawer-count{font-size:11px;color:var(--tx3);margin-top:2px}
    .nf-drawer-close{background:var(--sur2);border:none;width:32px;height:32px;border-radius:50%;font-size:14px;cursor:pointer;color:var(--tx2);display:flex;align-items:center;justify-content:center}
    .nf-drawer-hint{font-size:11px;color:var(--tx3);padding:10px 18px 0;line-height:1.5;flex-shrink:0}
    .nf-drawer-list{overflow-y:auto;flex:1;padding:10px 14px}
    .nf-drawer-empty{padding:40px 20px;text-align:center;color:var(--tx3);font-size:13px}
    .nf-drawer-item{display:flex;align-items:center;gap:12px;padding:10px;border-radius:var(--rs);cursor:pointer;transition:background .12s;margin-bottom:4px;border:1px solid transparent}
    .nf-drawer-item:hover,.nf-drawer-item:active{background:var(--sur2);border-color:var(--bdr)}
    .nf-drawer-item-photo{width:60px;height:60px;border-radius:12px;overflow:hidden;flex-shrink:0;background:var(--sur2);border:1px solid var(--bdr)}
    .nf-drawer-item-photo img{width:100%;height:100%;object-fit:cover;display:block}
    .nf-drawer-item-body{flex:1;min-width:0}
    .nf-drawer-item-name{font-size:13px;font-weight:700;color:var(--tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:3px}
    .nf-drawer-item-meta{display:flex;gap:5px;margin-bottom:4px;flex-wrap:wrap}
    .nf-drawer-item-cat{font-size:10px;background:var(--acc-bg);color:var(--acc);padding:2px 7px;border-radius:10px;font-weight:600}
    .nf-drawer-item-state{font-size:10px;background:var(--sur2);color:var(--tx2);padding:2px 7px;border-radius:10px}
    .nf-drawer-item-date{font-size:10px;color:var(--tx3);line-height:1.4}
    .nf-drawer-item-age{font-weight:700}
    .nf-drawer-item-price{font-size:12px;font-weight:700;color:var(--tx);margin-top:3px}
    .nf-drawer-item-arrow{font-size:18px;color:var(--tx3);flex-shrink:0}
    .nf-drawer-footer{padding:12px 16px 16px;border-top:1px solid var(--bdr);flex-shrink:0;display:flex}
    .nf-drawer-footer .btn{width:100%;justify-content:center}
    

/* ══ PROFILE V3 ══ */
    
    .hh-stats{display:flex;gap:10px;margin:10px 0 14px}
    .hh-stats:empty{display:none}
    .hh-stat{flex:1;background:var(--sur2,#f4f4f6);border:1px solid var(--bdr,#e5e5ea);border-radius:14px;padding:10px 12px;text-align:center}
    .hh-stat b{display:block;font-size:18px;font-weight:800;color:var(--tx,#18181b)}
    .hh-stat span{font-size:11px;color:var(--tx2,#6b7280)}
    .hh-av{width:48px;height:48px;border-radius:14px;background:var(--sur2,#eef);display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0;background-size:cover;background-position:center}
    .hh-av-photo{background-color:#dcdce4}
    .hh-notes{font-size:12px;color:var(--tx2,#6b7280);margin:8px 0 4px;line-height:1.45;white-space:pre-wrap}
    .hh-mini-stats{display:flex;gap:8px;margin:10px 0 4px}
    .hh-mini{flex:1;background:var(--sur2,#f4f4f6);border-radius:10px;padding:7px 8px;text-align:center}
    .hh-mini b{display:block;font-size:14px;font-weight:800;color:var(--tx,#18181b)}
    .hh-mini span{font-size:10px;color:var(--tx2,#6b7280)}
    .household-card.hh-archived{opacity:.62}
    .hh-arch-tag{font-size:10px;font-weight:700;color:#9a6a00;background:#fdf0d5;border-radius:6px;padding:1px 6px;margin-left:4px;vertical-align:middle}
    .hh-arch-head{font-size:13px;font-weight:800;color:var(--tx2,#6b7280);margin:18px 0 10px}
    .hh-photo-row{display:flex;align-items:center;gap:14px;margin-bottom:14px}
    .hh-photo-prev{width:72px;height:72px;border-radius:18px;background:var(--sur2,#eef);display:flex;align-items:center;justify-content:center;font-size:28px;background-size:cover;background-position:center;flex-shrink:0}
    .hh-photo-btns{display:flex;flex-direction:column;gap:6px}
    .acc-completion{margin:6px 0 12px}
    .acc-completion-bar{height:7px;background:var(--bdr,#e5e5ea);border-radius:4px;overflow:hidden}
    .acc-completion-bar>div{height:100%;border-radius:4px;background:var(--acc,#6366f1);transition:width .4s}
    .acc-completion-label{display:flex;justify-content:space-between;font-size:11px;color:var(--tx2,#6b7280);margin-bottom:5px;font-weight:600}
    .acc-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:10px 0 12px}
    .acc-stat{background:var(--sur2,#f4f4f6);border-radius:10px;padding:8px 6px;text-align:center}
    .acc-stat b{display:block;font-size:15px;font-weight:800;color:var(--tx,#18181b)}
    .acc-stat span{font-size:9.5px;color:var(--tx2,#6b7280);line-height:1.2;display:block;margin-top:2px}
    

/* ══ NAFA USER MODE ══ */
.nafa-mode-pill{
  border:0;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:8px 11px;
  border-radius:999px;
  background:rgba(255,255,255,.88);
  color:#111827;
  font-weight:800;
  font-size:12px;
  box-shadow:0 10px 30px rgba(15,23,42,.10);
  margin-right:8px;
  white-space:nowrap;
}
.nafa-mode-pill:hover{transform:translateY(-1px);box-shadow:0 14px 34px rgba(15,23,42,.16)}
.nafa-mode-dot{font-size:15px;line-height:1}
body[data-nafa-mode="debutant"] .nafa-mode-pill{background:#dcfce7;color:#14532d}
body[data-nafa-mode="intermediaire"] .nafa-mode-pill{background:#dbeafe;color:#1e3a8a}
body[data-nafa-mode="expert"] .nafa-mode-pill{background:#ede9fe;color:#3b0764}
.nafa-mode-modal{position:fixed;inset:0;z-index:99999;display:none;align-items:center;justify-content:center;padding:18px}
.nafa-mode-modal.on{display:flex}
.nafa-mode-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.58);backdrop-filter:blur(8px)}
.nafa-mode-panel{position:relative;width:min(980px,96vw);max-height:92vh;overflow:auto;background:#fff;border-radius:28px;padding:28px;box-shadow:0 30px 90px rgba(2,6,23,.35)}
.nafa-mode-close{position:absolute;right:18px;top:16px;border:0;background:#f1f5f9;width:38px;height:38px;border-radius:50%;font-size:24px;font-weight:900;cursor:pointer;color:#334155}
.nafa-mode-kicker{font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:#6d28d9;margin-bottom:6px}
.nafa-mode-panel h2{margin:0 40px 8px 0;font-size:30px;line-height:1.1;color:#0f172a}
.nafa-mode-intro{margin:0 0 20px;color:#64748b;font-weight:600}
.nafa-mode-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.nafa-mode-card{text-align:left;border:1px solid #e5e7eb;background:#fff;border-radius:22px;padding:18px;cursor:pointer;display:flex;flex-direction:column;gap:10px;min-height:310px;transition:.18s ease;box-shadow:0 10px 28px rgba(15,23,42,.07)}
.nafa-mode-card:hover{transform:translateY(-4px);box-shadow:0 20px 45px rgba(15,23,42,.14)}
.nafa-mode-card-top{display:flex;align-items:center;gap:10px}
.nafa-mode-card-icon{width:42px;height:42px;border-radius:15px;display:inline-flex;align-items:center;justify-content:center;font-size:22px;background:#f8fafc}
.nafa-mode-card-title{font-size:20px;font-weight:950;color:#0f172a}
.nafa-mode-card p{margin:0;color:#475569;font-weight:650;line-height:1.35}
.nafa-mode-card ul{margin:0;padding-left:18px;color:#334155;line-height:1.45;font-weight:600;font-size:13px}
.nafa-mode-select{margin-top:auto;display:inline-flex;justify-content:center;border-radius:14px;padding:11px 12px;color:white;font-weight:900;background:#111827}
.nafa-mode-card-debutant .nafa-mode-select{background:#16a34a}
.nafa-mode-card-intermediaire .nafa-mode-select{background:#2563eb}
.nafa-mode-card-expert .nafa-mode-select{background:#7c3aed}
.nafa-mode-footer{margin-top:16px;color:#64748b;font-size:13px;font-weight:650;text-align:center}
@media(max-width:760px){
  .nafa-mode-text{display:none}
  .nafa-mode-pill{padding:8px 10px;margin-right:5px}
  .nafa-mode-panel{padding:22px 16px;border-radius:24px}
  .nafa-mode-panel h2{font-size:23px}
  .nafa-mode-cards{grid-template-columns:1fr}
  .nafa-mode-card{min-height:auto}
}

/* ACHETER AVEC NAFA */
.nf-buy-hero{background:linear-gradient(135deg,#0f3460,#1a6b4a);color:#fff;border-radius:22px;padding:18px;margin-bottom:14px;box-shadow:0 14px 35px rgba(15,52,96,.20)}
.nf-buy-hero h2{font-size:22px;line-height:1.1;margin:0 0 6px;font-weight:900;letter-spacing:-.4px}.nf-buy-hero p{font-size:13px;opacity:.9;line-height:1.45;margin:0 0 14px}.nf-buy-actions{display:flex;gap:10px;flex-wrap:wrap}.nf-buy-result-card{background:var(--sur);border:1px solid var(--bdr);border-radius:20px;padding:14px;margin-top:12px}.nf-buy-result-head{display:flex;gap:12px;align-items:center;margin-bottom:14px}.nf-buy-result-head img,.nf-buy-icon{width:64px;height:64px;border-radius:16px;object-fit:cover;background:var(--sur2);display:flex;align-items:center;justify-content:center;font-size:28px;flex-shrink:0}.nf-buy-kicker{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--tx3);font-weight:800}.nf-buy-result-head h3{font-size:18px;margin:2px 0 2px;color:var(--tx);letter-spacing:-.3px}.nf-buy-result-head p{font-size:12px;color:var(--tx2);margin:0}.nf-buy-section-title{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--tx3);font-weight:900;margin:14px 0 8px}.nf-buy-list{display:flex;flex-direction:column;gap:8px}.nf-buy-match{display:flex;align-items:center;gap:10px;background:var(--sur2);border:1px solid var(--bdr2);border-radius:16px;padding:9px}.nf-buy-match img,.nf-buy-ph{width:48px;height:48px;border-radius:12px;object-fit:cover;background:var(--sur3);display:flex;align-items:center;justify-content:center;flex-shrink:0}.nf-buy-match-body{flex:1;min-width:0}.nf-buy-match-title{font-size:13px;font-weight:850;color:var(--tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nf-buy-match-meta{font-size:11px;color:var(--tx2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nf-buy-match-bottom{display:flex;gap:8px;align-items:center;margin-top:3px;font-size:11px}.nf-buy-match-bottom b{color:var(--grn)}.nf-buy-match-bottom span{color:var(--tx3)}.nf-buy-sites{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:8px}.nf-buy-site{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--tx);background:var(--sur2);border:1px solid var(--bdr2);border-radius:14px;padding:10px 11px;font-size:13px;font-weight:750}.nf-buy-empty{background:var(--sur2);border:1px dashed var(--bdr2);border-radius:16px;padding:12px;font-size:13px;color:var(--tx2);line-height:1.45}.nf-buy-empty.big{text-align:center;padding:28px 18px}.nf-buy-scan-box{margin-top:14px;border-top:1px solid var(--bdr);padding-top:10px}
@media(max-width:768px){.nf-buy-hero{border-radius:18px;padding:16px}.nf-buy-sites{grid-template-columns:1fr 1fr}.nf-buy-match{align-items:flex-start}.nf-buy-match .btn{padding:7px 9px;font-size:11px}}


/* === NAFA PROD: logo officiel + taille renforcée === */
.logo-wrap{gap:14px!important;padding:8px 6px 20px!important;}
.logo-wrap .logo-box{width:72px!important;height:72px!important;border-radius:22px!important;background:#fff!important;box-shadow:0 10px 24px rgba(0,0,0,.14)!important;}
.logo-wrap .logo-box img{width:100%!important;height:100%!important;object-fit:contain!important;padding:4px!important;}
.logo-name{font-size:22px!important;line-height:1!important;}
.auth-logo .logo-box{width:86px!important;height:86px!important;border-radius:26px!important;box-shadow:0 14px 34px rgba(0,0,0,.16)!important;}
.auth-logo .logo-box img{width:100%!important;height:100%!important;object-fit:contain!important;padding:4px!important;}
.bot-ico-logo{width:36px!important;height:36px!important;}
.nafa-welcome-logo{width:82px!important;height:82px!important;}
.nafa-welcome-logo img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;padding:6px!important;}
[id*="test"], .test-banner, .test-ribbon, .demo-ribbon{display:none!important;}


/* Connexion NAFA : écran propre avant authentification */
body.login-page .topbar,
body.login-page .rail,
body.login-page .bot-nav{
  display:none !important;
}
body.login-page .shell-main{
  display:block !important;
  height:100vh !important;
  overflow:hidden !important;
}
body.login-page .auth-ov{
  z-index:999999 !important;
}


/* NAFA correction : les suggestions d'achat ne doivent jamais apparaître dans Scanner */
#v-scan #scan-buy-suggestions,
body:not(.route-buy) #scan-buy-suggestions{
  display:none!important;
}

/* === MARKETPLACE — logos de publication sur les cartes === */
.sell-card .card-body{padding-top:8px}
.marketplace-platforms{
  display:flex;align-items:center;gap:6px;flex-wrap:wrap;
  margin-top:7px;min-height:24px;
}
.marketplace-platform-badge{
  display:inline-flex;align-items:center;justify-content:center;
  height:24px;max-width:104px;padding:0 4px;border:1px solid var(--bdr);
  border-radius:8px;background:#fff;overflow:hidden;
  box-shadow:0 1px 3px rgba(15,23,42,.06);
}
.marketplace-platform-badge img{display:block;width:auto;height:21px;max-width:96px;object-fit:contain}
.marketplace-platform-facebook{max-width:112px}
.marketplace-platforms-empty{min-height:auto;margin-top:6px}
.marketplace-platforms-empty span{
  display:inline-flex;align-items:center;min-height:22px;padding:3px 8px;
  border-radius:999px;background:var(--sur3);color:var(--tx3);
  font-size:9px;font-weight:700;line-height:1.2;
}
@media(max-width:420px){
  .marketplace-platforms{gap:4px;margin-top:6px}
  .marketplace-platform-badge{height:22px;max-width:88px;padding:0 3px}
  .marketplace-platform-badge img{height:19px;max-width:82px}
  .marketplace-platform-facebook{max-width:96px}
}

/* ══ COFFRE-FORT — EXPORT PDF JUSTIFICATIF PROFESSIONNEL ══ */
.claim-legal-notice{display:flex;flex-direction:column;gap:4px;margin:14px 0 10px;padding:12px 14px;border:1px solid rgba(200,169,110,.42);border-radius:14px;background:#FFF9EC;color:#6F4B08;line-height:1.45}
.claim-legal-notice b{font-size:12px;color:#5D3D05}.claim-legal-notice span{font-size:11px}
.claim-pdf-result{display:none;margin-top:12px;padding:12px 14px;border-radius:14px;font-size:11px;line-height:1.5;overflow-wrap:anywhere}
.claim-pdf-result.loading,.claim-pdf-result.success,.claim-pdf-result.error{display:flex;flex-direction:column;gap:4px}
.claim-pdf-result.loading{background:#EEF2FF;border:1px solid #C7D2FE;color:#3730A3}
.claim-pdf-result.success{background:#ECFDF5;border:1px solid #A7F3D0;color:#065F46}
.claim-pdf-result.error{background:#FEF2F2;border:1px solid #FECACA;color:#991B1B}
.claim-pdf-result code{display:block;padding:7px 8px;border-radius:8px;background:rgba(255,255,255,.72);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;word-break:break-all;user-select:all}
#claim-pdf-btn:disabled{opacity:.65;cursor:wait;transform:none}
@media(max-width:520px){.claim-actions #claim-pdf-btn{width:100%;justify-content:center}.claim-legal-notice{padding:11px 12px}.claim-pdf-result code{font-size:8px}}

/* ================================================================
   NAFA — NAVBAR MOBILE V2
   Barre flottante arrondie, safe areas complètes et zones tactiles
   confortables. Surcharge CSS uniquement : aucune logique modifiée.
   ================================================================ */
@media (max-width:768px){
  .bot-nav{
    display:flex!important;
    align-items:flex-end!important;
    justify-content:space-between!important;
    flex-shrink:0!important;
    width:auto!important;
    min-height:72px!important;
    margin:
      0
      max(10px,calc(env(safe-area-inset-right,0px) + 6px))
      max(8px,calc(env(safe-area-inset-bottom,0px) + 6px))
      max(10px,calc(env(safe-area-inset-left,0px) + 6px))!important;
    padding:8px 6px 7px!important;
    padding-bottom:7px!important;
    border:1px solid rgba(255,255,255,.10)!important;
    border-radius:28px!important;
    box-shadow:
      0 14px 34px rgba(4,18,11,.28),
      0 3px 10px rgba(4,18,11,.18)!important;
    overflow:visible!important;
    position:relative!important;
    z-index:120!important;
    backdrop-filter:blur(14px)!important;
    -webkit-backdrop-filter:blur(14px)!important;
  }

  .bot-nav::before{
    content:"";
    position:absolute;
    inset:5px 7px auto;
    height:1px;
    border-radius:999px;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);
    pointer-events:none;
  }

  .bot-btn{
    flex:1 1 0!important;
    min-width:0!important;
    min-height:54px!important;
    padding:5px 1px 3px!important;
    gap:2px!important;
    border-radius:16px!important;
    justify-content:flex-end!important;
    overflow:visible!important;
    touch-action:manipulation;
  }

  .bot-btn .bot-ico{
    width:32px!important;
    height:32px!important;
    min-width:32px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:12px!important;
    transition:transform .14s ease,background-color .14s ease!important;
  }

  .bot-btn .bot-ico svg,
  .bot-btn .bot-ico .nf-ico{
    width:20px!important;
    height:20px!important;
  }

  .bot-btn > span:not(.bot-ico):not(.bot-badge){
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-height:12px!important;
    padding:0 1px!important;
    font-size:8.5px!important;
    line-height:1.05!important;
    letter-spacing:-.12px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    text-align:center!important;
  }

  .bot-btn.on{
    background:rgba(255,255,255,.055)!important;
  }

  .bot-btn:active{
    transform:scale(.96);
  }

  .bot-btn.scan-main{
    margin-top:-21px!important;
    padding-top:0!important;
    color:var(--acc)!important;
    z-index:2!important;
  }

  .bot-btn.scan-main .bot-ico{
    width:56px!important;
    height:56px!important;
    min-width:56px!important;
    border-radius:50%!important;
    border-width:4px!important;
    box-shadow:
      0 11px 25px rgba(0,0,0,.28),
      0 0 0 1px rgba(255,255,255,.12)!important;
  }

  .bot-btn.scan-main .bot-ico svg{
    width:25px!important;
    height:25px!important;
  }

  .bot-badge{
    top:1px!important;
    right:calc(50% - 22px)!important;
    min-width:16px!important;
    height:16px!important;
    padding:0 4px!important;
    font-size:8px!important;
    line-height:16px!important;
    border:2px solid currentColor!important;
  }

  body.theme-standard .bot-nav{
    background:rgba(15,36,24,.95)!important;
    border-color:rgba(82,183,136,.24)!important;
  }

  body.theme-premium .bot-nav{
    background:rgba(10,22,40,.95)!important;
    border-color:rgba(200,169,110,.24)!important;
  }
}

@media (max-width:390px){
  .bot-nav{
    margin-left:max(6px,calc(env(safe-area-inset-left,0px) + 3px))!important;
    margin-right:max(6px,calc(env(safe-area-inset-right,0px) + 3px))!important;
    padding-left:3px!important;
    padding-right:3px!important;
    border-radius:24px!important;
  }
  .bot-btn .bot-ico{
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
  }
  .bot-btn > span:not(.bot-ico):not(.bot-badge){font-size:7.8px!important;}
  .bot-btn.scan-main .bot-ico{
    width:52px!important;
    height:52px!important;
    min-width:52px!important;
  }
}

@media (max-width:340px){
  .bot-btn > span:not(.bot-ico):not(.bot-badge){font-size:7.2px!important;}
  .bot-btn .bot-ico{
    width:28px!important;
    height:28px!important;
    min-width:28px!important;
  }
  .bot-btn .bot-ico svg,
  .bot-btn .bot-ico .nf-ico{
    width:18px!important;
    height:18px!important;
  }
}

/* ═══════════════════════════════════════════════════════════════
   NAFA — IDENTITÉS VISUELLES DES 4 PROFILS / DASHBOARD D'ACCUEIL
   Les pages métier et leurs fonctions restent intactes.
   ═══════════════════════════════════════════════════════════════ */
#tb-logo{display:none!important}
.nafa-profile-ready #v-home>.nafa-legacy-home{display:none!important}
#nafa-profile-dashboard-root{display:block;width:100%;box-sizing:border-box}
body[data-nafa-profile]{--profile-bg:#eef6fb;--profile-surface:#fff;--profile-nav:#0c5f91;--profile-nav-2:#167fb3;--profile-nav-text:#eefaff;--profile-nav-muted:#b9dceb;--profile-active:#fff;--profile-active-text:#0b6697;--profile-border:rgba(255,255,255,.2);background:var(--profile-bg)!important}
body[data-nafa-profile] .shell,body[data-nafa-profile] .shell-main,body[data-nafa-profile] .body,body[data-nafa-profile] .content,body[data-nafa-profile] #v-home{background:var(--profile-bg)!important}
body[data-nafa-profile] .rail{background:linear-gradient(180deg,var(--profile-nav),var(--profile-nav-2))!important;border-color:var(--profile-border)!important;color:var(--profile-nav-text)!important}
body[data-nafa-profile] .logo-name,body[data-nafa-profile] .rf span,body[data-nafa-profile] .rf strong{color:var(--profile-nav-text)!important}
body[data-nafa-profile] .rnav{color:var(--profile-nav-muted)!important}
body[data-nafa-profile] .rnav:hover{color:var(--profile-nav-text)!important;background:rgba(255,255,255,.09)!important}
body[data-nafa-profile] .rnav.on{color:var(--profile-active-text)!important;background:var(--profile-active)!important;box-shadow:0 9px 24px rgba(0,0,0,.16)!important}
body[data-nafa-profile] .topbar{background:var(--profile-nav)!important;color:var(--profile-nav-text)!important;border-color:var(--profile-border)!important}
body[data-nafa-profile] .topbar-title,body[data-nafa-profile] #tb-back{color:var(--profile-nav-text)!important}
body[data-nafa-profile] .bot-nav{background:var(--profile-nav)!important;border-color:var(--profile-border)!important}
body[data-nafa-profile] .bot-btn{color:var(--profile-nav-muted)!important}
body[data-nafa-profile] .bot-btn.on{color:var(--profile-active)!important}
body[data-nafa-profile] .bot-btn.on .bot-ico{background:rgba(255,255,255,.14)!important;color:var(--profile-active)!important}
body[data-nafa-profile] .bot-btn.scan-main .bot-ico{background:var(--profile-active)!important;color:var(--profile-active-text)!important;box-shadow:0 8px 20px rgba(0,0,0,.22)!important}
body[data-nafa-profile="free"]{--profile-bg:#edf7fd;--profile-nav:#075d91;--profile-nav-2:#168fbd;--profile-nav-text:#f2fbff;--profile-nav-muted:#b8deed;--profile-active:#fff;--profile-active-text:#0873a5}
body[data-nafa-profile="premium"]{--profile-bg:var(--premium-bg-main);--profile-nav:var(--premium-primary);--profile-nav-2:var(--premium-primary-hover);--profile-nav-text:var(--premium-bg-main);--profile-nav-muted:var(--premium-gold-light);--profile-active:var(--premium-gold);--profile-active-text:var(--premium-primary)}
body[data-nafa-profile="collectionneur"]{--profile-bg:#f3e9e3;--profile-nav:#351923;--profile-nav-2:#7a3549;--profile-nav-text:#fff3eb;--profile-nav-muted:#e4bcc5;--profile-active:#c88061;--profile-active-text:#29131a}
body[data-nafa-profile="revendeur"]{--profile-bg:#e8f0f1;--profile-nav:#0b2024;--profile-nav-2:#125d5c;--profile-nav-text:#efffff;--profile-nav-muted:#a7d4d1;--profile-active:#46c8bb;--profile-active-text:#092326}

#nafa-profile-dashboard-root{max-width:1500px;margin:0 auto;padding:22px 26px 56px}
.pd-dashboard{--pd-bg:#edf7fd;--pd-card:#fff;--pd-text:#17364a;--pd-muted:#6b8290;--pd-line:#d9e8f0;--pd-accent:#1385ba;--pd-accent2:#5bb9dc;color:var(--pd-text)}
.pd-dashboard *{box-sizing:border-box}.pd-dashboard button{font-family:inherit}
.pd-hero{position:relative;overflow:hidden;min-height:240px;padding:42px 44px;border-radius:30px;background:linear-gradient(135deg,var(--pd-accent),var(--pd-accent2));color:#fff;display:flex;align-items:center;justify-content:space-between;box-shadow:0 22px 48px rgba(23,71,96,.16)}
.pd-hero-copy{position:relative;z-index:2;max-width:760px}.pd-hero-copy>span,.pd-title>span{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;opacity:.78}.pd-hero h1{font-size:clamp(28px,4vw,48px);line-height:1.05;margin:10px 0 14px;max-width:780px}.pd-hero p{font-size:16px;line-height:1.65;max-width:690px;margin:0;opacity:.9}.pd-hero-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.pd-primary,.pd-secondary{border:0;border-radius:14px;padding:13px 18px;font-weight:800;cursor:pointer}.pd-primary{background:#fff;color:var(--pd-accent)}.pd-secondary{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.32)}.pd-hero-shape{position:absolute;right:35px;width:260px;height:210px;opacity:.28}.pd-hero-shape i{position:absolute;border:2px solid currentColor;border-radius:50%}.pd-hero-shape i:nth-child(1){inset:5px 25px}.pd-hero-shape i:nth-child(2){inset:38px 0 18px 50px}.pd-hero-shape i:nth-child(3){inset:75px 58px 0 10px}
.pd-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:18px 0}.pd-metric,.pd-panel{background:var(--pd-card);border:1px solid var(--pd-line);border-radius:22px}.pd-metric{padding:21px}.pd-metric span,.pd-metric small{display:block;color:var(--pd-muted)}.pd-metric span{font-size:12px;font-weight:700}.pd-metric strong{display:block;font-size:27px;margin:9px 0 5px}.pd-metric small{font-size:11px}.pd-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:18px;margin-bottom:18px}.pd-panel{padding:25px;margin-bottom:18px}.pd-layout>.pd-panel{margin-bottom:0}.pd-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.pd-panel-head>button,.pd-community>button,.pd-collector-community>button,.pd-business-community>button{border:0;background:transparent;color:var(--pd-accent);font-weight:800;cursor:pointer}.pd-title h2{font-size:21px;margin:7px 0 0}.pd-panel p{color:var(--pd-muted);line-height:1.6}.pd-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.pd-action{min-height:84px;border:1px solid var(--pd-line);border-radius:16px;background:var(--pd-card);display:flex;align-items:center;text-align:left;padding:14px;gap:12px;color:var(--pd-text);cursor:pointer}.pd-action i{width:42px;height:42px;border-radius:13px;background:color-mix(in srgb,var(--pd-accent) 12%,white);display:grid;place-items:center;color:var(--pd-accent);font-style:normal;font-size:20px}.pd-action span{display:flex;flex-direction:column;gap:4px}.pd-action small{color:var(--pd-muted)}.pd-action em{margin-left:auto;font-size:10px;font-style:normal;background:#f4e7b2;color:#75591a;border-radius:99px;padding:5px 7px}.pd-community,.pd-community-premium,.pd-collector-community,.pd-business-community{background:linear-gradient(145deg,color-mix(in srgb,var(--pd-accent) 9%,var(--pd-card)),var(--pd-card))}.pd-community>button,.pd-collector-community>button,.pd-business-community>button{padding:0;margin-top:10px}.pd-items{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:19px}.pd-item{overflow:hidden;border:1px solid var(--pd-line);border-radius:17px;background:var(--pd-card)}.pd-item>img,.pd-item>.pd-photo-empty{width:100%;height:130px;object-fit:cover;display:grid;place-items:center;background:color-mix(in srgb,var(--pd-accent) 8%,white);font-size:32px;color:var(--pd-accent)}.pd-item>div{padding:13px;display:flex;flex-direction:column;gap:5px}.pd-item span,.pd-item small{color:var(--pd-muted);font-size:11px}.pd-item strong{margin-top:4px}.pd-empty{padding:30px;color:var(--pd-muted);text-align:center;border:1px dashed var(--pd-line);border-radius:16px}.pd-progress{height:10px;border-radius:99px;background:var(--pd-line);overflow:hidden;margin:20px 0}.pd-progress i{display:block;height:100%;border-radius:inherit;background:var(--pd-accent)}.pd-actions-two{grid-template-columns:repeat(2,minmax(0,1fr))}.pd-platforms{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.pd-platforms span{padding:8px 10px;border:1px solid var(--pd-line);border-radius:99px;font-size:11px;font-weight:800}.pd-full{width:100%}.pd-feature{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);background:#2e1820;color:#fff7ef;border-radius:26px;overflow:hidden;margin:18px 0;min-height:300px}.pd-feature-image img,.pd-feature-image>.pd-photo-empty{width:100%;height:100%;min-height:300px;object-fit:cover;display:grid;place-items:center;font-size:60px;background:#4c2934}.pd-feature>div:last-child{padding:42px;display:flex;flex-direction:column;justify-content:center}.pd-feature h2{font-size:34px;margin:10px 0}.pd-feature p{color:#e8ced2}.pd-feature strong{font-size:30px}.pd-feature small{opacity:.65}.pd-showcases{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.pd-showcases button{border:1px solid var(--pd-line);background:var(--pd-card);border-radius:15px;padding:16px;text-align:left;color:var(--pd-text);cursor:pointer}.pd-showcases span{display:block;color:var(--pd-muted);margin-top:5px}.pd-tasks{display:grid;gap:10px;margin-top:18px}.pd-tasks button{display:grid;grid-template-columns:45px 1fr auto;align-items:center;gap:12px;border:1px solid var(--pd-line);background:var(--pd-card);border-radius:14px;padding:14px;text-align:left;color:var(--pd-text);cursor:pointer}.pd-tasks b{font-size:22px;color:var(--pd-accent)}.pd-tasks i{font-style:normal;color:var(--pd-accent);font-weight:800}.pd-stock{margin-top:18px}.pd-stock>div{display:grid;grid-template-columns:1.6fr .7fr .7fr .4fr;gap:12px;align-items:center;padding:12px 8px;border-bottom:1px solid var(--pd-line)}.pd-stock-head{font-size:11px;text-transform:uppercase;color:var(--pd-muted);font-weight:800}.pd-stock>div>span{display:flex;flex-direction:column}.pd-stock small{color:var(--pd-muted)}.pd-stock em{font-style:normal;font-size:11px;font-weight:800;padding:6px 9px;border-radius:99px;width:max-content}.pd-stock em.online{background:#dff5eb;color:#16734b}.pd-stock em.draft{background:#f4ead7;color:#8a5c14}.pd-stock button{border:0;background:transparent;color:var(--pd-accent);font-weight:800;cursor:pointer}
.pd-premium{--pd-bg:var(--premium-bg-main);--pd-card:var(--premium-bg-main);--pd-text:var(--premium-text);--pd-muted:var(--premium-text-secondary);--pd-line:var(--premium-border);--pd-accent:var(--premium-primary);--pd-accent2:var(--premium-primary-hover);font-family:var(--premium-body-font)}.pd-premium .pd-hero{background:var(--premium-bg-secondary);color:var(--premium-text);border:1px solid var(--premium-border);box-shadow:0 22px 48px color-mix(in srgb,var(--premium-primary) 10%,transparent)}.pd-premium .pd-hero h1,.pd-premium .pd-title h2{font-family:var(--premium-title-font);color:var(--premium-primary)}.pd-premium .pd-hero p,.pd-premium .pd-hero-copy>span{color:var(--premium-text-secondary);opacity:1}.pd-premium .pd-primary{background:var(--premium-primary);color:var(--premium-bg-main)}.pd-premium .pd-primary:hover{background:var(--premium-primary-hover)}.pd-premium .pd-secondary{background:var(--premium-bg-main);color:var(--premium-primary);border:1px solid var(--premium-primary)}
.pd-collectionneur{--pd-bg:#f3e9e3;--pd-card:#fff9f3;--pd-text:#39212a;--pd-muted:#816b72;--pd-line:#dfc9c0;--pd-accent:#8e4054;--pd-accent2:#c77c62}.pd-collectionneur .pd-hero{background:linear-gradient(135deg,#321922,#743349 58%,#bc735d)}.pd-items-gallery .pd-item>img,.pd-items-gallery .pd-item>.pd-photo-empty{height:180px}
.pd-revendeur{--pd-bg:#e8f0f1;--pd-card:#fff;--pd-text:#142b2e;--pd-muted:#61787b;--pd-line:#d1e0e1;--pd-accent:#128c84;--pd-accent2:#45bdb3}.pd-revendeur .pd-hero{background:linear-gradient(135deg,#0c2024,#15494c 60%,#168b84)}
@media(max-width:1000px){.pd-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.pd-layout{grid-template-columns:1fr}.pd-items{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){#nafa-profile-dashboard-root{padding:12px 12px 110px}.pd-hero{padding:28px 22px;min-height:270px;border-radius:22px}.pd-hero-shape{right:-70px}.pd-hero h1{font-size:31px}.pd-metrics{gap:10px}.pd-metric{padding:15px}.pd-metric strong{font-size:21px}.pd-panel{padding:19px}.pd-actions{grid-template-columns:1fr}.pd-items{grid-template-columns:1fr 1fr}.pd-feature{grid-template-columns:1fr}.pd-feature-image img,.pd-feature-image>.pd-photo-empty{height:220px;min-height:220px}.pd-feature>div:last-child{padding:25px}.pd-stock>div{grid-template-columns:1.3fr .7fr .65fr}.pd-stock>div>*:last-child{display:none}}

/* Aperçu temporaire des quatre dashboards — à retirer après validation */
.pd-preview-toolbar{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:12px;
  margin:0 0 14px;
  padding:10px 12px;
  border:1px solid color-mix(in srgb,var(--profile-nav) 18%,transparent);
  border-radius:16px;
  background:color-mix(in srgb,var(--profile-surface) 92%,var(--profile-bg));
  color:var(--pd-text,#183247);
  box-shadow:0 8px 22px rgba(15,35,45,.08);
}
.pd-preview-toolbar>div{margin-right:auto;display:flex;align-items:baseline;gap:9px;flex-wrap:wrap}
.pd-preview-toolbar>div span{font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:var(--profile-nav)}
.pd-preview-toolbar>div strong{font-size:13px;text-transform:capitalize}
.pd-preview-toolbar>div small{font-size:11px;color:#6f7d82;text-transform:capitalize}
.pd-preview-toolbar label{font-size:12px;font-weight:800;color:var(--profile-nav)}
.pd-preview-toolbar select,
.pd-preview-toolbar button{
  height:38px;
  border-radius:11px;
  border:1px solid color-mix(in srgb,var(--profile-nav) 28%,transparent);
  background:#fff;
  color:#17343b;
  font:700 12px/1 inherit;
}
.pd-preview-toolbar select{min-width:190px;padding:0 34px 0 12px;cursor:pointer}
.pd-preview-toolbar button{padding:0 13px;cursor:pointer;background:var(--profile-nav);color:var(--profile-nav-text)}
.pd-preview-toolbar button:disabled{opacity:.42;cursor:not-allowed}
@media(max-width:760px){
  .pd-preview-toolbar{align-items:stretch;flex-wrap:wrap}
  .pd-preview-toolbar>div{width:100%;margin:0 0 2px}
  .pd-preview-toolbar label{display:none}
  .pd-preview-toolbar select{flex:1;min-width:0}
  .pd-preview-toolbar button{flex:1}
}

/* V9 — sélecteur temporaire rendu directement dans index.html */
#nafa-profile-preview-toolbar{
  display:flex !important;
  visibility:visible !important;
  opacity:1 !important;
  position:sticky;
  top:8px;
  z-index:999;
  margin:12px 18px 14px;
}
#nafa-profile-preview-toolbar[hidden]{display:flex !important;}
@media(max-width:700px){#nafa-profile-preview-toolbar{position:relative;top:auto;margin:10px 12px 12px;}}

/* Communauté — achat direct */
.community-checkout{border:1px solid var(--bdr);background:var(--sur2);border-radius:var(--r);padding:12px;margin-bottom:12px}
.community-checkout>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 0;font-size:12px;color:var(--tx2)}
.community-checkout>div b{color:var(--tx)}
.community-checkout .community-checkout-total{border-top:1px solid var(--bdr);margin-top:4px;padding-top:10px;font-size:14px}
.community-checkout .community-seller-net{display:block;background:var(--acc-bg);color:var(--acc);border-radius:var(--rs);padding:9px 10px;margin-top:6px;line-height:1.45}


/* ══ CORRECTIF GLOBAL LISIBILITÉ + PHOTO MANUELLE ══ */
/* Les textes secondaires restent visuellement hiérarchisés, mais ne disparaissent plus sur les fonds clairs. */
.content,.modal,.item-page,.item-edit-view,.card,.panel,.setup-card,.community-card,
.shop-card,.dash-card,.fp-scroll-content,.edit-scroll-content{color:var(--tx)}
.content p,.content small,.content .sub,.content .muted,.content .hint,
.card-owner-loc,.card-foot,.logo-sub,.field-help,.ef>label,.field>label,
input::placeholder,textarea::placeholder{color:var(--tx3);opacity:1}
input,select,textarea,button{font-family:inherit}
input,select,textarea{color:var(--tx);background-color:var(--sur)}
input:disabled,select:disabled,textarea:disabled,button:disabled{opacity:.68;color:#596078}
.btn:not(.btn-dark):not(.btn-red):not(.btn-green),.chip,.pill{color:var(--tx)}
.card-name,.fp-header-title,.section-title,.modal-title,.nf-acc-title{color:var(--tx)}

.fp-photo-missing{
  width:100%;min-height:220px;margin:0 0 16px;padding:24px;border:1.5px dashed var(--bdr2);
  border-radius:18px;background:var(--sur2);color:var(--tx);display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:7px;cursor:pointer;text-align:center
}
.fp-photo-missing:hover{border-color:var(--acc);background:var(--acc-bg)}
.fp-photo-missing-icon{font-size:34px;line-height:1}
.fp-photo-missing strong{font-size:15px;color:var(--tx)}
.fp-photo-missing span:last-child{font-size:12px;font-weight:700;color:var(--acc)}

/* Texte lisible dans les zones sombres : les couleurs locales restent prioritaires. */
.topbar,.rail,.rnav.on,.btn-dark,.btn-red,.btn-green,[class*="hero-dark"]{--tx:#fff;--tx2:#e7e9f2;--tx3:#c8ccdc}


/* ══ COMMUNAUTÉ V2 — EXPLORER ══ */
.comm-explorer{--comm-ink:#172033;--comm-muted:#647083;--comm-line:#e4e8ee;display:flex;flex-direction:column;gap:24px;color:var(--comm-ink)}
.comm-explorer-hero{position:relative;overflow:hidden;display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:28px;border-radius:26px;background:linear-gradient(135deg,#162135 0%,#243653 58%,#395d67 100%);color:#fff;box-shadow:0 18px 44px rgba(23,32,51,.16)}
.comm-explorer-hero:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-90px;top:-135px;background:rgba(255,255,255,.09)}
.comm-explorer-hero-copy{position:relative;z-index:1;max-width:620px}.comm-kicker,.comm-section-kicker{display:block;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.14em}.comm-kicker{color:#b8ece1;margin-bottom:8px}.comm-explorer-hero h1{font-size:30px;line-height:1.08;letter-spacing:-.8px;margin:0 0 10px;color:#fff}.comm-explorer-hero p{max-width:590px;margin:0;color:rgba(255,255,255,.76);font-size:13px;line-height:1.6}.comm-create-btn{position:relative;z-index:1;white-space:nowrap;background:#fff!important;color:#172033!important;border-color:#fff!important}
.comm-search-panel{margin-top:-8px;padding:14px;border-radius:20px;border:1px solid var(--comm-line);background:rgba(255,255,255,.96);box-shadow:0 10px 28px rgba(32,42,61,.08)}
.comm-search-main{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px}.comm-search-icon{font-size:18px}.comm-search-main input,.comm-community-search-row input{width:100%;border:0;outline:0;background:transparent;color:var(--comm-ink);font-family:inherit}.comm-search-main input{font-size:14px;padding:10px 2px}.comm-filter-toggle{border:0;border-radius:999px;background:#eef2f6;color:#26364e;font-weight:800;padding:9px 13px;cursor:pointer}
.comm-object-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:0;overflow:hidden;opacity:0;transition:max-height .18s ease,opacity .18s ease,padding .18s ease}.comm-object-filters.open{max-height:230px;opacity:1;padding-top:12px}.comm-object-filters select,.comm-object-filters input{min-width:0;padding:10px 11px;border:1px solid var(--comm-line);border-radius:12px;background:#f8fafc;color:var(--comm-ink);font-family:inherit;font-size:12px}
.comm-category-strip{display:flex;gap:9px;overflow-x:auto;padding:1px 1px 5px;scrollbar-width:none}.comm-category-strip::-webkit-scrollbar{display:none}.comm-category-chip{display:flex;align-items:center;gap:7px;white-space:nowrap;border:1px solid var(--comm-line);border-radius:999px;background:#fff;color:#4c596b;padding:9px 13px;font-size:12px;font-weight:800;cursor:pointer}.comm-category-chip.active{background:#172033;color:#fff;border-color:#172033}.comm-category-chip span{font-size:15px}
.comm-section{display:flex;flex-direction:column;gap:14px}.comm-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.comm-section-head.compact{margin-bottom:12px}.comm-section-kicker{color:#7a8798;margin-bottom:4px}.comm-section-head h2{font-size:20px;letter-spacing:-.35px;margin:0;color:var(--comm-ink)}.comm-link-btn{border:0;background:transparent;color:#3b5b75;font-weight:850;cursor:pointer}
.comm-market-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.comm-market-card{overflow:hidden;border:1px solid var(--comm-line);border-radius:20px;background:#fff;box-shadow:0 8px 24px rgba(32,42,61,.06);cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.comm-market-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(32,42,61,.11)}.comm-market-media{position:relative;aspect-ratio:1/1;background:#eef2f5;overflow:hidden}.comm-market-media img,.comm-market-placeholder{width:100%;height:100%;object-fit:cover}.comm-market-placeholder{display:grid;place-items:center;font-size:42px;background:linear-gradient(145deg,#edf2f4,#dfe8eb)}.comm-status-pill{position:absolute;left:9px;top:9px;padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.92);color:#18764f;font-size:9px;font-weight:900}.comm-follow-btn{position:absolute;right:9px;top:9px;width:34px;height:34px;border:0;border-radius:50%;background:rgba(255,255,255,.94);font-size:21px;color:#28384f;cursor:pointer}.comm-market-body{padding:13px}.comm-market-community{display:block;color:#718093;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.07em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comm-market-body h3{font-size:14px;margin:5px 0 11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--comm-ink)}.comm-market-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;color:#718093}.comm-market-meta b{font-size:15px;color:var(--comm-ink)}.comm-card-open{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:11px;padding:10px 0 0;border:0;border-top:1px solid #edf0f4;background:transparent;color:#344b67;font-weight:850;cursor:pointer}
.comm-showcase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.comm-showcase-grid:empty{display:none}.comm-showcase-card{overflow:hidden;border:1px solid var(--comm-line);border-radius:21px;background:#fff;box-shadow:0 8px 24px rgba(32,42,61,.05);cursor:pointer}.comm-showcase-cover{height:105px;display:grid;place-items:center;position:relative}.comm-showcase-icon{font-size:42px}.comm-activity-dot{position:absolute;right:13px;top:13px;width:9px;height:9px;border-radius:50%;background:#21a96d;box-shadow:0 0 0 4px rgba(33,169,109,.12)}.comm-showcase-body{padding:15px}.comm-showcase-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.comm-showcase-card h3{margin:0 0 5px;font-size:15px;color:var(--comm-ink)}.comm-showcase-card p{margin:0;color:#6b788a;font-size:11px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.comm-private-pill{padding:5px 7px;border-radius:999px;background:#f2edf9;color:#7651a5;font-size:9px;font-weight:900}.comm-showcase-stats{display:flex;align-items:center;justify-content:space-between;margin:14px 0;color:#778496;font-size:10px}.comm-showcase-stats b{color:var(--comm-ink)}.comm-showcase-card.compact .comm-showcase-cover{height:82px}.comm-community-search-row{padding:11px 13px;border:1px solid var(--comm-line);border-radius:14px;background:#fff}.comm-results-section{display:flex;flex-direction:column;gap:12px}.comm-loading,.comm-empty-state{grid-column:1/-1;padding:28px;border:1px dashed var(--comm-line);border-radius:16px;text-align:center;color:#768396;background:#fafbfc}.comm-empty-state{display:flex;flex-direction:column;align-items:center;gap:7px}.comm-empty-state b{color:var(--comm-ink)}.comm-empty-state.error b{color:#b23b4b}
@media(max-width:900px){.comm-market-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.comm-showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.comm-explorer{gap:20px}.comm-explorer-hero{align-items:flex-start;flex-direction:column;padding:22px;border-radius:22px}.comm-explorer-hero h1{font-size:25px}.comm-create-btn{width:100%}.comm-object-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.comm-object-filters.open{max-height:360px}.comm-market-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.comm-showcase-grid{grid-template-columns:1fr}.comm-market-body{padding:11px}.comm-market-meta{align-items:flex-end;flex-direction:column}.comm-market-meta b{align-self:flex-start}.comm-section-head h2{font-size:18px}}


/* COMMUNAUTÉ V2 — Phase 2 : vitrines, membres et administration */
.comm-profile-view{max-width:1180px;margin:0 auto}.comm-profile-hero{position:relative;background:var(--sur);border:1px solid var(--bdr);border-radius:26px;overflow:hidden;margin-bottom:18px;box-shadow:0 14px 36px rgba(24,25,45,.07)}.comm-profile-cover{height:210px;background-size:cover;background-position:center}.comm-profile-back{position:absolute;top:16px;left:16px;width:40px;height:40px;border:1px solid rgba(255,255,255,.7);border-radius:999px;background:rgba(255,255,255,.9);font-size:20px;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.12)}.comm-profile-content{display:flex;gap:18px;padding:0 24px 24px}.comm-profile-logo{width:108px;height:108px;flex:0 0 108px;margin-top:-42px;border:5px solid var(--sur);border-radius:28px;background:var(--sur2);display:flex;align-items:center;justify-content:center;font-size:46px;overflow:hidden;box-shadow:0 9px 24px rgba(24,25,45,.13)}.comm-profile-logo img{width:100%;height:100%;object-fit:cover}.comm-profile-copy{flex:1;min-width:0;padding-top:16px}.comm-profile-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.comm-profile-title{font-size:25px;font-weight:900;letter-spacing:-.7px;color:var(--tx)}.comm-profile-meta{font-size:12px;color:var(--tx2);margin-top:3px}.comm-profile-description{max-width:760px;margin:12px 0;color:var(--tx2);line-height:1.55;font-size:13px}.comm-profile-stats{display:flex;gap:10px;flex-wrap:wrap}.comm-profile-stats>div{min-width:92px;padding:9px 12px;border:1px solid var(--bdr);border-radius:14px;background:var(--sur2);display:flex;flex-direction:column}.comm-profile-stats b{font-size:15px;color:var(--tx)}.comm-profile-stats span{font-size:10px;color:var(--tx3);text-transform:uppercase;letter-spacing:.5px}.comm-owner-actions{gap:8px;flex-wrap:wrap;margin-top:14px}.comm-inner-toolbar{display:flex;gap:10px;margin-bottom:14px}.comm-inner-toolbar input,.comm-inner-toolbar select{padding:10px 12px;border-radius:var(--rs);border:1px solid var(--bdr2);background:var(--sur);font-size:12px;color:var(--tx);font-family:inherit}.comm-inner-toolbar input{flex:1}.comm-manager-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.comm-manager-head span{font-size:10px;text-transform:uppercase;letter-spacing:.7px;color:var(--tx3);font-weight:800}.comm-manager-head h3{margin:2px 0 0;font-size:18px;color:var(--tx)}.comm-manager-list{display:grid;gap:9px}.comm-member-row{display:flex;align-items:center;gap:11px;padding:11px;border:1px solid var(--bdr);border-radius:15px;background:var(--sur)}.comm-member-avatar{width:38px;height:38px;border-radius:13px;background:var(--sur2);display:flex;align-items:center;justify-content:center;font-weight:900;color:var(--tx)}.comm-member-copy{min-width:0;flex:1;display:flex;flex-direction:column}.comm-member-copy b{font-size:13px;color:var(--tx)}.comm-member-copy span{font-size:10px;color:var(--tx3);overflow:hidden;text-overflow:ellipsis}.comm-member-actions{display:flex;gap:6px}.comm-role-badge{font-size:10px;font-weight:800;padding:5px 8px;border-radius:999px;background:var(--sur2);color:var(--tx2)}.comm-visual-upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.comm-upload-tile{position:relative;min-height:116px;padding:12px;border:1px dashed var(--bdr2);border-radius:16px;background:var(--sur2);display:flex;flex-direction:column;gap:3px;cursor:pointer;overflow:hidden}.comm-upload-tile>span:first-child{font-size:12px;font-weight:800;color:var(--tx)}.comm-upload-tile small{font-size:10px;color:var(--tx3)}.comm-upload-tile input{position:absolute;inset:0;opacity:0;cursor:pointer}.comm-upload-preview{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;pointer-events:none}.comm-upload-preview.has-image{opacity:1}.comm-upload-preview.has-image:after{content:'Changer';position:absolute;right:7px;bottom:7px;padding:4px 7px;border-radius:999px;background:rgba(0,0,0,.65);color:#fff;font-size:9px;font-weight:800}.comm-upload-preview-logo{inset:12px auto 12px 12px;width:88px;border-radius:22px}
@media(max-width:680px){.comm-profile-cover{height:145px}.comm-profile-content{display:block;padding:0 16px 18px}.comm-profile-logo{width:88px;height:88px;flex-basis:88px;margin-top:-34px;border-radius:23px;font-size:38px}.comm-profile-copy{padding-top:10px}.comm-profile-title-row{align-items:center}.comm-profile-title{font-size:20px}.comm-profile-title-row .btn{white-space:nowrap}.comm-profile-stats>div{min-width:78px;flex:1}.comm-owner-actions .btn{flex:1}.comm-inner-toolbar{flex-direction:column}.comm-visual-upload-grid{grid-template-columns:1fr}.comm-member-row{align-items:flex-start;flex-wrap:wrap}.comm-member-actions{width:100%}.comm-member-actions .btn{flex:1}}

/* ═══════════════════════════════════════════════════════════════
   COMMUNAUTÉ V2 — vitrine immersive + popup ludique
   ═══════════════════════════════════════════════════════════════ */
.comm-profile-view{max-width:1450px;margin:0 auto;padding:18px 22px 42px}
.comm-profile-hero{position:relative;overflow:hidden;border-radius:28px;background:#14213d;box-shadow:0 18px 45px rgba(20,33,61,.16);margin-bottom:22px}
.comm-profile-cover{height:220px;background-size:cover;background-position:center;position:relative}
.comm-profile-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,18,38,.88),rgba(8,18,38,.45) 55%,rgba(8,18,38,.18))}
.comm-profile-content{position:relative;margin-top:-92px;display:flex;gap:22px;align-items:flex-end;padding:0 28px 26px;color:#fff}
.comm-profile-logo{width:118px;height:118px;flex:0 0 118px;border-radius:28px;border:5px solid rgba(255,255,255,.92);background:#fff;display:grid;place-items:center;overflow:hidden;box-shadow:0 14px 32px rgba(0,0,0,.24);font-size:52px}
.comm-profile-logo img{width:100%;height:100%;object-fit:cover}
.comm-profile-copy{flex:1;min-width:0}
.comm-profile-title{font-size:34px;font-weight:950;letter-spacing:-.035em;color:#fff;text-shadow:0 2px 15px rgba(0,0,0,.22)}
.comm-profile-meta,.comm-profile-description{color:rgba(255,255,255,.86)}
.comm-profile-description{max-width:760px;font-size:13px;line-height:1.65;margin:9px 0 14px}
.comm-profile-stats{display:flex;gap:9px;flex-wrap:wrap}.comm-profile-stats>*{background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(10px);border-radius:999px;padding:7px 11px;color:#fff}
.comm-profile-back{top:18px;left:18px;background:rgba(8,18,38,.55);color:#fff;border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(8px);width:42px;height:42px;border-radius:14px}
.comm-profile-title-row{align-items:center}.comm-profile-title-row #comm-join-btn{min-height:44px;padding:0 18px;border-radius:14px;box-shadow:0 10px 24px rgba(27,164,91,.25)}
.comm-community-shell{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:20px;align-items:start}
.comm-community-main{min-width:0}.comm-community-aside{display:grid;gap:14px;position:sticky;top:90px}
.comm-inner-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:10px;background:#fff;border:1px solid #e4e9f0;border-radius:18px;padding:10px;box-shadow:0 8px 24px rgba(25,42,70,.06);margin-bottom:12px}
.comm-inner-search-wrap{display:flex;align-items:center;gap:9px;padding:0 11px;border-radius:13px;background:#f6f8fb}.comm-inner-search-wrap input{width:100%;border:0;outline:0;background:transparent;padding:12px 2px;color:#15243b;font-family:inherit}
.comm-inner-toolbar select{border:0;border-radius:13px;background:#f6f8fb;padding:0 12px;color:#253650;font-family:inherit;font-weight:750}
.comm-community-tabs{display:flex;gap:8px;overflow:auto;padding:2px 0 12px}.comm-community-tabs button{white-space:nowrap;border:1px solid #dfe5ed;background:#fff;border-radius:999px;padding:9px 13px;color:#627086;font-weight:800;cursor:pointer}.comm-community-tabs button.active{background:#153f38;color:#fff;border-color:#153f38}
.comm-community-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.comm-aside-card{background:#fff;border:1px solid #e3e8ef;border-radius:22px;padding:20px;box-shadow:0 9px 28px rgba(25,42,70,.06)}
.comm-aside-kicker{display:block;color:#1f8a62;text-transform:uppercase;letter-spacing:.11em;font-size:9px;font-weight:950;margin-bottom:7px}.comm-aside-card h3{margin:0 0 9px;color:#14243b;font-size:18px}.comm-aside-card p{margin:0;color:#69778a;font-size:12px;line-height:1.6}
.comm-aside-stats{display:grid;gap:10px;margin-top:18px}.comm-aside-stats>div{display:grid;grid-template-columns:34px 42px 1fr;align-items:center;gap:8px;border-top:1px solid #edf0f4;padding-top:10px}.comm-aside-stats>div span{width:31px;height:31px;border-radius:10px;background:#eff8f4;display:grid;place-items:center}.comm-aside-stats b{font-size:16px;color:#14243b}.comm-aside-stats small{color:#738094;font-size:10px}
.comm-aside-tip{display:flex;gap:12px;background:linear-gradient(145deg,#f1fff7,#fff)}.comm-tip-icon{width:42px;height:42px;border-radius:14px;background:#dff8e9;display:grid;place-items:center;font-size:20px;flex:0 0 auto}
.comm-locked-preview{grid-column:1/-1;display:grid;gap:16px}.comm-preview-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.comm-preview-cards article{background:#fff;border:1px solid #e4e9ef;border-radius:18px;padding:11px;filter:saturate(.68);box-shadow:0 7px 20px rgba(22,35,55,.05)}.comm-preview-photo{height:150px;border-radius:13px;background:linear-gradient(145deg,#dfe9f3,#cbd9e8);display:grid;place-items:center;font-size:46px;position:relative;filter:blur(1.5px)}.comm-preview-photo.alt{background:linear-gradient(145deg,#e9def8,#d6c7ed)}.comm-preview-photo.third{background:linear-gradient(145deg,#f5e7d8,#ead3ba)}.comm-preview-photo span{position:absolute;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.9);font-size:18px;filter:none}.comm-preview-cards b,.comm-preview-cards small{display:block}.comm-preview-cards b{margin:10px 3px 3px;color:#1b2b43}.comm-preview-cards small{color:#7b8798;margin:0 3px 3px}
.comm-locked-cta{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px 20px;border-radius:20px;background:linear-gradient(135deg,#effff5,#f9fff7);border:1px solid #d5f0df}.comm-locked-emoji{font-size:42px}.comm-locked-cta h3{margin:1px 0 5px;color:#15352d}.comm-locked-cta p{margin:0;color:#62786f;font-size:12px}.comm-locked-cta .btn{border-radius:14px;padding:12px 17px}

.comm-fun-modal-host{max-width:650px!important;padding:0!important;overflow:visible!important;background:transparent!important;box-shadow:none!important;border:0!important}
.comm-fun-modal{position:relative;background:#fff;border-radius:28px;padding:30px 32px 22px;overflow:hidden;box-shadow:0 30px 90px rgba(20,24,45,.32);border:1px solid rgba(70,53,150,.12)}
.comm-fun-modal:before{content:"";position:absolute;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,#e6ddff 0,rgba(230,221,255,0) 70%);right:-70px;top:-70px}.comm-fun-modal:after{content:"";position:absolute;width:170px;height:170px;border-radius:50%;background:radial-gradient(circle,#d9fae7 0,rgba(217,250,231,0) 72%);left:-65px;bottom:-75px}
.comm-fun-close{position:absolute;right:18px;top:16px;width:36px;height:36px;border:0;border-radius:50%;background:#f3f5f8;color:#26344a;z-index:4;cursor:pointer;font-size:17px}.comm-fun-bubble{display:inline-block;position:relative;z-index:2;background:linear-gradient(135deg,#7a46ef,#9a55ff);color:#fff;border-radius:15px 15px 15px 5px;padding:9px 15px;font-weight:950;transform:rotate(-2deg);box-shadow:0 8px 18px rgba(122,70,239,.24)}
.comm-fun-head{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:18px;align-items:center}.comm-fun-copy h2{font-size:30px;line-height:1.12;letter-spacing:-.03em;color:#15243b;margin:17px 0 10px}.comm-fun-copy p{font-size:14px;line-height:1.55;color:#5f6e82;margin:0}.comm-fun-copy b{color:#7651e8}
.comm-lock-mascot{height:200px;position:relative;display:grid;place-items:end center}.comm-lock-loop{position:absolute;width:92px;height:108px;border:16px solid #aab3bf;border-bottom:0;border-radius:50px 50px 0 0;top:10px;left:57px;box-shadow:inset 5px 0 0 #d9dee4}.comm-lock-body{position:relative;width:150px;height:118px;border-radius:30px;background:linear-gradient(145deg,#45d6b5,#26b98f);box-shadow:0 18px 26px rgba(38,185,143,.27);z-index:2;display:flex;align-items:center;justify-content:center;gap:27px;color:#153d35;font-size:35px}.comm-lock-body .eye{font-size:30px}.comm-lock-body .wink{transform:rotate(-8deg)}.comm-lock-body .mouth{position:absolute;bottom:24px;font-size:29px;color:#fff;transform:rotate(180deg)}.comm-lock-body .cheek{position:absolute;width:17px;height:9px;background:#ff8fac;border-radius:50%;bottom:36px}.comm-lock-body .cheek.left{left:25px}.comm-lock-body .cheek.right{right:25px}.comm-lock-hand{position:absolute;z-index:3;bottom:38px;font-size:35px}.hand-left{left:25px;transform:rotate(-22deg)}.hand-right{right:19px;transform:rotate(22deg)}
.comm-fun-benefits{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:#f7f8fb;border-radius:18px;padding:14px 8px;margin:8px 0 18px}.comm-fun-benefits>div{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:5px 12px;border-right:1px solid #e4e8ef}.comm-fun-benefits>div:last-child{border-right:0}.comm-fun-benefits span{font-size:28px}.comm-fun-benefits b{font-size:11px;line-height:1.35;color:#26344a}
.comm-fun-primary{position:relative;z-index:2;display:block;width:min(380px,100%);margin:0 auto;border:0;border-radius:15px;padding:14px 18px;background:linear-gradient(135deg,#24b45f,#43c768);color:#fff;font-weight:950;font-size:17px;cursor:pointer;box-shadow:0 14px 28px rgba(36,180,95,.25)}.comm-fun-primary:hover{transform:translateY(-1px)}.comm-fun-primary.waiting{background:linear-gradient(135deg,#7f6be8,#a05cf2)}.comm-fun-foot,.comm-fun-count{position:relative;z-index:2;text-align:center}.comm-fun-foot{margin-top:11px;color:#5f6e82;font-size:12px}.comm-fun-count{margin-top:7px;color:#8a95a4;font-size:10px}.comm-fun-spark{position:absolute;color:#8b61ff;font-size:23px;z-index:2}.spark-a{left:17px;top:78px;transform:rotate(15deg)}.spark-b{right:18px;bottom:104px;color:#ffba38}

@media(max-width:1050px){.comm-community-shell{grid-template-columns:1fr}.comm-community-aside{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.comm-community-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.comm-profile-view{padding:10px 10px 95px}.comm-profile-hero{border-radius:20px}.comm-profile-cover{height:175px}.comm-profile-content{margin-top:-60px;padding:0 15px 18px;align-items:flex-end;gap:12px}.comm-profile-logo{width:82px;height:82px;flex-basis:82px;border-radius:21px;font-size:36px}.comm-profile-title{font-size:24px}.comm-profile-title-row{align-items:flex-end}.comm-profile-title-row #comm-join-btn{position:absolute;right:15px;top:16px}.comm-profile-description{font-size:11px;padding-right:5px}.comm-community-aside{grid-template-columns:1fr}.comm-inner-toolbar{grid-template-columns:1fr}.comm-inner-toolbar select{height:42px}.comm-community-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.comm-preview-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.comm-preview-cards article:last-child{display:none}.comm-locked-cta{grid-template-columns:auto 1fr}.comm-locked-cta .btn{grid-column:1/-1;width:100%}.comm-fun-modal{border-radius:24px 24px 18px 18px;padding:25px 18px 19px}.comm-fun-head{grid-template-columns:1fr}.comm-fun-copy h2{font-size:25px}.comm-lock-mascot{height:165px;margin-top:-8px;transform:scale(.85)}.comm-fun-benefits{gap:0}.comm-fun-benefits>div{padding:4px 7px}.comm-fun-benefits b{font-size:9px}.comm-fun-primary{font-size:15px}.comm-fun-modal-host{width:calc(100vw - 20px)!important}}

/* ══════════════════════════════════════════════════════════════
   COMMUNAUTÉ — FICHE OBJET PREMIUM
   ══════════════════════════════════════════════════════════════ */
#overlay:has(.comm-item-premium) .modal{width:min(1040px,94vw);max-width:1040px;padding:0;overflow:hidden;border-radius:26px;background:#fff;box-shadow:0 30px 80px rgba(15,39,64,.24)}
#overlay:has(.comm-item-premium) #modal-body{padding:0;max-height:88vh;overflow:auto}
.comm-item-premium{padding:22px;color:var(--tx);background:linear-gradient(180deg,#fbfdff 0,#fff 55%)}
.comm-item-premium-top{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.comm-item-back{width:40px;height:40px;border:1px solid #dbe5ec;border-radius:13px;background:#fff;font-size:20px;cursor:pointer}
.comm-item-kicker{display:block;font-size:11px;color:var(--tx3);font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.comm-item-community-link{border:0;padding:0;background:none;color:#087b67;font-size:14px;font-weight:850;cursor:pointer}
.comm-item-follow{margin-left:auto;border:1px solid #dce5ea;background:#fff;border-radius:999px;padding:10px 16px;font-weight:850;color:#263747;cursor:pointer}
.comm-item-follow.is-followed{background:#fff0f3;border-color:#ffc9d3;color:#d9294f}
.comm-item-premium-layout{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(330px,.88fr);gap:26px}
.comm-item-main-photo{position:relative;aspect-ratio:4/3;border-radius:22px;overflow:hidden;background:#eef4f7}
.comm-item-main-photo img{width:100%;height:100%;object-fit:cover;display:block}
.comm-item-no-photo{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#748696;gap:8px}
.comm-item-no-photo span{font-size:42px}
.comm-item-availability{position:absolute;left:14px;top:14px;background:#e8fff6;color:#087b67;border:1px solid #a5ead2;border-radius:999px;padding:7px 11px;font-size:11px;font-weight:900}
.comm-item-thumbs{display:flex;gap:9px;margin-top:10px;overflow:auto;padding-bottom:2px}
.comm-item-thumb{width:68px;height:56px;border:2px solid transparent;border-radius:12px;overflow:hidden;padding:0;background:#edf2f4;cursor:pointer;flex:0 0 auto}
.comm-item-thumb.is-active{border-color:#20a779}
.comm-item-thumb img{width:100%;height:100%;object-fit:cover}
.comm-item-info{display:flex;flex-direction:column;min-width:0}
.comm-item-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid #edf1f3;padding-bottom:16px}
.comm-item-heading h2{font-size:27px;line-height:1.08;margin:5px 0 0;color:#172735}
.comm-item-category{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#6a7c89}
.comm-item-price{font-size:28px;font-weight:950;color:#087b67;white-space:nowrap}
.comm-item-tags{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}
.comm-item-tags span{padding:7px 10px;border-radius:999px;background:#f0f5f7;color:#526572;font-size:11px}
.comm-item-tags b{color:#213341}
.comm-item-description{padding:3px 0 15px}
.comm-item-description h3{font-size:14px;margin:0 0 7px}
.comm-item-description p{margin:0;color:#566a78;line-height:1.62;font-size:13px;white-space:pre-line}
.comm-item-seller{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:11px;padding:13px;border:1px solid #e6edef;border-radius:16px;background:#fff}
.comm-item-seller-avatar{width:46px;height:46px;border-radius:15px;background:linear-gradient(135deg,#d7f6e9,#bce4ff);display:grid;place-items:center;font-size:18px;font-weight:950;color:#116f62}
.comm-item-seller div:nth-child(2){display:flex;flex-direction:column;gap:2px}.comm-item-seller span,.comm-item-seller small{font-size:10px;color:#71828e}.comm-item-seller strong{font-size:13px;color:#1b2e3c}.comm-item-trust{background:#eafff5;color:#087b67!important;border-radius:999px;padding:6px 8px;font-weight:850}
.comm-item-delivery{display:flex;align-items:center;gap:10px;margin-top:11px;padding:12px;border-radius:15px;background:#f4f8fa}.comm-item-delivery>span{font-size:21px}.comm-item-delivery div{display:flex;flex-direction:column}.comm-item-delivery strong{font-size:12px}.comm-item-delivery small{font-size:10px;color:#6b7d89;margin-top:2px}
.comm-item-buy{border:0;border-radius:16px;background:linear-gradient(135deg,#119c70,#20bd76);color:#fff;margin-top:15px;padding:15px 18px;display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:900;box-shadow:0 10px 24px rgba(20,166,111,.25);cursor:pointer}
.comm-item-buy strong{font-size:17px}.comm-item-buy-note{text-align:center;font-size:10px;color:#778994;margin:8px 0 0}
.comm-item-related{margin-top:24px;border-top:1px solid #e8eef1;padding-top:18px}.comm-item-section-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:11px}.comm-item-section-title span{font-size:15px;font-weight:900}.comm-item-section-title small{color:#6e818e}
.comm-item-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.comm-related-card{text-align:left;border:1px solid #e1e9ed;background:#fff;border-radius:15px;padding:8px;cursor:pointer;min-width:0}.comm-related-card img,.comm-related-placeholder{width:100%;aspect-ratio:4/3;border-radius:10px;object-fit:cover;background:#eef3f5;display:grid;place-items:center}.comm-related-name{display:block;font-size:11px;font-weight:800;color:#263846;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:7px}.comm-related-card strong{display:block;color:#087b67;font-size:12px;margin-top:2px}
@media(max-width:760px){#overlay:has(.comm-item-premium) .modal{width:100%;max-width:none;height:100%;max-height:none;border-radius:0}#overlay:has(.comm-item-premium) #modal-body{max-height:100vh}.comm-item-premium{padding:14px}.comm-item-premium-layout{grid-template-columns:1fr;gap:17px}.comm-item-heading h2{font-size:22px}.comm-item-price{font-size:22px}.comm-item-related-grid{display:flex;overflow:auto}.comm-related-card{min-width:142px}.comm-item-seller{grid-template-columns:42px minmax(0,1fr)}.comm-item-trust{display:none}.comm-item-follow{padding:9px 12px}}

/* ══════════════════════════════════════════════════════════════
   COMMUNAUTÉ — UNIVERS D'OBJETS
   Ajout visuel isolé : aucune règle globale ni logique métier modifiée.
   ══════════════════════════════════════════════════════════════ */
.comm-universe-overview{margin:0 0 20px;padding:22px;border:1px solid #e3e9ef;border-radius:24px;background:linear-gradient(145deg,#fff 0,#f5faf8 100%);box-shadow:0 12px 34px rgba(25,42,70,.07)}
.comm-universe-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px}.comm-universe-heading span{display:block;color:#17805d;font-size:9px;font-weight:950;letter-spacing:.12em;text-transform:uppercase;margin-bottom:5px}.comm-universe-heading h2{margin:0;color:#14243b;font-size:23px;letter-spacing:-.025em}.comm-universe-sell{border:0;border-radius:13px;background:#153f38;color:#fff;padding:11px 15px;font:inherit;font-size:12px;font-weight:900;cursor:pointer;box-shadow:0 9px 20px rgba(21,63,56,.18)}
.comm-universe-highlights{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.comm-universe-highlights>button{min-width:0;display:flex;flex-direction:column;align-items:flex-start;text-align:left;border:1px solid #e2e8ee;border-radius:18px;background:#fff;padding:15px;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.comm-universe-highlights>button:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(25,42,70,.09)}.comm-universe-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#edf8f3;font-size:19px;margin-bottom:14px}.comm-universe-highlights small{color:#788598;font-size:10px;font-weight:800}.comm-universe-highlights b{display:block;max-width:100%;min-height:36px;margin-top:5px;color:#172840;font-size:13px;line-height:1.35;overflow:hidden}.comm-universe-highlights i{margin-top:12px;color:#17805d;font-size:10px;font-style:normal;font-weight:900}
.comm-universe-categories{margin-top:15px;padding-top:15px;border-top:1px solid #e7ecef}.comm-universe-subhead{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;color:#1a2c43}.comm-universe-subhead span{color:#7c8999;font-size:10px}.comm-universe-category-list{display:flex;gap:8px;overflow:auto;padding-bottom:2px}.comm-universe-category-list button{display:flex;align-items:center;gap:10px;white-space:nowrap;border:1px solid #dfe7e5;border-radius:999px;background:#fff;padding:9px 11px;color:#34465a;font:inherit;font-size:11px;font-weight:800;cursor:pointer}.comm-universe-category-list button b{display:grid;place-items:center;min-width:22px;height:22px;border-radius:999px;background:#e7f5ef;color:#157455;font-size:9px}.comm-universe-placeholder{color:#7a8797;font-size:11px;padding:7px 0}.comm-guide-soon{text-align:center;padding:8px}.comm-guide-soon>span{display:grid;place-items:center;width:62px;height:62px;margin:0 auto 13px;border-radius:20px;background:#eaf7f1;font-size:30px}.comm-guide-soon h3{margin:0 0 8px;color:#172840}.comm-guide-soon p{color:#6d7b8d;font-size:12px;line-height:1.6;margin:0 0 16px}
@media(max-width:900px){.comm-universe-highlights{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.comm-universe-overview{margin:0 0 14px;padding:15px;border-radius:20px}.comm-universe-heading{align-items:flex-start}.comm-universe-heading h2{font-size:19px}.comm-universe-sell{padding:9px 11px;font-size:10px}.comm-universe-highlights{gap:8px}.comm-universe-highlights>button{padding:12px;border-radius:15px}.comm-universe-icon{width:34px;height:34px;margin-bottom:10px}.comm-universe-highlights b{font-size:11px;min-height:31px}.comm-universe-highlights i{margin-top:8px}}


/* Sprint Communauté — demandes prioritaires et cartes récentes compactes */
.comm-pending-banner{padding:16px;border:1px solid #f2c879;border-radius:20px;background:linear-gradient(135deg,#fff8e8,#fffdf7);box-shadow:0 10px 28px rgba(117,78,12,.08)}
.comm-pending-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.comm-pending-head h2{margin:3px 0 4px;font-size:19px;color:var(--comm-ink)}.comm-pending-head p{margin:0;font-size:12px;color:#745c31}.comm-pending-list{display:grid;gap:8px}.comm-pending-row{display:flex;align-items:center;gap:11px;padding:10px;border:1px solid rgba(216,166,71,.32);border-radius:14px;background:rgba(255,255,255,.82)}
#comm-recent-items{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}#comm-recent-items .comm-market-card{border-radius:16px}#comm-recent-items .comm-market-media{aspect-ratio:4/3}#comm-recent-items .comm-market-body{padding:9px}#comm-recent-items .comm-market-body h3{font-size:12px;margin:3px 0 7px}#comm-recent-items .comm-market-meta{font-size:9px}#comm-recent-items .comm-market-meta b{font-size:13px}#comm-recent-items .comm-card-open{margin-top:7px;padding-top:7px;font-size:10px}#comm-recent-items .comm-follow-btn{width:29px;height:29px;font-size:18px}#comm-recent-items .comm-status-pill{padding:4px 6px;font-size:8px}
@media(max-width:900px){#comm-recent-items{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:640px){.comm-pending-head{align-items:flex-start;flex-direction:column}.comm-pending-head .btn{width:100%}.comm-pending-row{align-items:flex-start;flex-wrap:wrap}.comm-pending-row .comm-member-actions{width:100%;padding-left:49px}.comm-pending-row .comm-member-actions .btn{flex:1}#comm-recent-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}#comm-recent-items .comm-market-media{aspect-ratio:1/1}}


/* ═══════════════════════════════════════════════════════════════
   NAFA — SPRINT 1.1 HUB COMMUNAUTÉ (fusion version profils)
   ═══════════════════════════════════════════════════════════════ */
.comm-explorer-hero{align-items:stretch;padding:32px 34px;background:radial-gradient(circle at 88% 14%,rgba(255,255,255,.92),transparent 24%),radial-gradient(circle at 62% 110%,rgba(91,70,216,.13),transparent 35%),linear-gradient(135deg,#eee9ff 0%,#faf9ff 54%,#e9e5ff 100%)}
.comm-explorer-hero-copy{display:flex;min-width:0;flex:1;flex-direction:column;justify-content:center}
.comm-explorer-hero .comm-create-btn{align-self:center}
.comm-hub-stats{display:grid;grid-template-columns:repeat(4,minmax(105px,1fr));gap:10px;max-width:720px;margin-top:22px}
.comm-hub-stat{display:flex;min-height:70px;flex-direction:column;justify-content:center;padding:12px 14px;border:1px solid rgba(64,49,151,.1);border-radius:16px;background:rgba(255,255,255,.74);backdrop-filter:blur(8px);box-shadow:0 7px 18px rgba(52,39,140,.05)}
.comm-hub-stat span{color:#716c84;font-size:9px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.comm-hub-stat strong{margin-top:4px;color:#211a55;font-size:23px;line-height:1}
.comm-community-discovery{display:flex;align-items:stretch;flex-direction:column;gap:11px;padding:13px;border:1px solid var(--bdr2);border-radius:18px;background:var(--sur);box-shadow:0 8px 28px rgba(31,25,79,.05)}
.comm-community-search-box{display:flex;align-items:center;gap:9px;padding:0 10px 0 13px;border:1px solid rgba(91,70,216,.18);border-radius:14px;background:var(--bg)}
.comm-community-search-box:focus-within{border-color:#6d57df;box-shadow:0 0 0 3px rgba(109,87,223,.1)}
.comm-community-search-box input{width:100%;height:44px;border:0!important;outline:0;background:transparent!important;box-shadow:none!important}
.comm-search-clear{display:none;width:30px;height:30px;flex:0 0 30px;place-items:center;border:0;border-radius:9px;background:rgba(45,37,99,.08);color:var(--tx2);cursor:pointer;font-size:11px}
.comm-search-clear.visible{display:grid}
.comm-hub-filters{display:flex;gap:8px;overflow-x:auto;padding:1px 0 2px;scrollbar-width:none}
.comm-hub-filters::-webkit-scrollbar{display:none}
.comm-filter-chip{min-height:34px;padding:0 14px;border:1px solid var(--bdr2);border-radius:999px;background:var(--bg);color:var(--tx2);white-space:nowrap;cursor:pointer;font-size:10px;font-weight:800;transition:.16s ease}
.comm-filter-chip:hover{border-color:rgba(91,70,216,.35);color:var(--acc)}
.comm-filter-chip.active{border-color:#5b46d8;background:#5b46d8;color:#fff;box-shadow:0 6px 14px rgba(91,70,216,.2)}
.comm-hub-empty{grid-column:1/-1;min-height:190px}
@media(max-width:980px){.comm-hub-stats{grid-template-columns:repeat(2,minmax(120px,1fr))}.comm-explorer-hero{padding:27px}}
@media(max-width:640px){.comm-explorer-hero{padding:20px}.comm-hub-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:18px}.comm-hub-stat{min-height:63px;padding:10px 11px;border-radius:13px}.comm-hub-stat strong{font-size:20px}.comm-community-discovery{padding:10px;border-radius:15px}.comm-filter-chip{min-height:32px;padding:0 12px;font-size:9px}}


/* NAFA — Correctif visibilité Hub Communauté */
.comm-explorer-hero{
  background:linear-gradient(135deg,#f0ecff 0%,#f8f7ff 52%,#e8e3ff 100%)!important;
}
.comm-explorer-hero .comm-kicker{
  color:#5c42d6!important;
  font-weight:900!important;
}
.comm-explorer-hero h1{
  color:#21184f!important;
  text-shadow:none!important;
}
.comm-explorer-hero p{
  color:#5b5670!important;
  opacity:1!important;
}
.comm-hero-actions{
  display:flex;
  align-self:center;
  flex-direction:column;
  gap:10px;
  min-width:205px;
}
.comm-hero-actions .btn{width:100%;justify-content:center}
.comm-requests-btn{
  display:flex!important;
  align-items:center;
  gap:8px;
  min-height:42px;
  border:1px solid #d9cfff!important;
  border-radius:13px!important;
  background:#fff!important;
  color:#35256f!important;
  box-shadow:0 8px 20px rgba(53,37,111,.10)!important;
  font-weight:850!important;
}
.comm-requests-btn:hover{border-color:#856fe3!important;background:#faf8ff!important}
.comm-requests-count{
  display:grid;
  min-width:22px;
  height:22px;
  margin-left:auto;
  place-items:center;
  border-radius:999px;
  background:#eeeaf9;
  color:#6d6480;
  font-size:10px;
  font-weight:900;
}
.comm-requests-count.has-requests{background:#ff5b68;color:#fff;box-shadow:0 0 0 4px rgba(255,91,104,.14)}
.comm-hub-stat span{color:#5e5872!important}
.comm-hub-stat strong{color:#251c59!important}
@media(max-width:760px){
  .comm-explorer-hero{flex-direction:column!important}
  .comm-hero-actions{width:100%;min-width:0;align-self:stretch;flex-direction:row}
  .comm-hero-actions .btn{flex:1}
}
@media(max-width:460px){
  .comm-hero-actions{flex-direction:column}
}


/* NAFA — Correctif contraste de sélection du hero Communauté */
.comm-explorer-hero *::selection{
  background:#5b46d8;
  color:#ffffff;
  text-shadow:none;
}
.comm-explorer-hero *::-moz-selection{
  background:#5b46d8;
  color:#ffffff;
  text-shadow:none;
}
.comm-explorer-hero mark,
.comm-explorer-hero .highlight,
.comm-explorer-hero [data-highlight]{
  background:transparent!important;
  color:inherit!important;
  box-shadow:none!important;
}


/* ══ SPRINT 1.2 — CARTES COMMUNAUTÉS ══ */
.comm-showcase-card-v12{position:relative;overflow:hidden;border:1px solid #e1e7ee;border-radius:22px;background:#fff;box-shadow:0 10px 28px rgba(25,42,70,.07);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;cursor:pointer}
.comm-showcase-card-v12:hover{transform:translateY(-4px);border-color:rgba(49,127,105,.28);box-shadow:0 18px 40px rgba(25,42,70,.13)}
.comm-showcase-card-v12:focus-visible{outline:3px solid rgba(49,127,105,.25);outline-offset:3px}
.comm-showcase-card-v12 .comm-card-cover{position:relative;height:138px;background-size:cover!important;background-position:center!important}
.comm-showcase-card-v12 .comm-card-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,26,44,.04),rgba(13,26,44,.22))}
.comm-card-badges{position:absolute;z-index:2;top:11px;left:11px;display:flex;gap:6px;flex-wrap:wrap;max-width:calc(100% - 52px)}
.comm-card-badge{display:inline-flex;align-items:center;min-height:25px;padding:0 9px;border-radius:999px;background:rgba(255,255,255,.94);box-shadow:0 4px 12px rgba(12,25,43,.12);font-size:9px;font-weight:900;color:#26384d;backdrop-filter:blur(8px)}
.comm-card-badge.official{color:#2258a6}.comm-card-badge.popular{color:#a44c08}.comm-card-badge.new{color:#147451}.comm-card-badge.mine{color:#6c3daf}.comm-card-badge.joined{color:#286d62}
.comm-card-logo{position:absolute;z-index:3;left:15px;bottom:-26px;width:58px;height:58px;border:4px solid #fff;border-radius:17px;background:#fff;display:grid;place-items:center;overflow:hidden;box-shadow:0 8px 20px rgba(17,31,50,.18);font-size:28px}
.comm-card-logo img{width:100%;height:100%;object-fit:cover}
.comm-card-live{position:absolute;z-index:2;right:13px;bottom:12px;width:10px;height:10px;border:2px solid rgba(255,255,255,.9);border-radius:50%;background:#20aa70;box-shadow:0 0 0 4px rgba(32,170,112,.2)}
.comm-showcase-card-v12 .comm-showcase-body{padding:37px 16px 15px}
.comm-showcase-card-v12 .comm-showcase-top{min-height:67px}
.comm-showcase-card-v12 h3{font-size:16px;line-height:1.2;margin:0 0 6px;color:#172033}
.comm-showcase-card-v12 p{font-size:11px;line-height:1.5;color:#6b788a;-webkit-line-clamp:2}
.comm-showcase-card-v12 .comm-private-pill{flex:0 0 auto}
.comm-card-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:15px 0 13px;padding:10px;border:1px solid #edf0f4;border-radius:14px;background:#f8fafb}
.comm-card-metrics div{min-width:0;display:flex;flex-direction:column;gap:2px;text-align:center}
.comm-card-metrics strong{font-size:14px;color:#172033;line-height:1}
.comm-card-metrics span{font-size:8px;font-weight:800;color:#7b8797;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.comm-card-action{width:100%;min-height:40px;border:0;border-radius:12px;padding:0 13px;display:flex;align-items:center;justify-content:space-between;background:#153f38;color:#fff;font:inherit;font-size:11px;font-weight:900;cursor:pointer;transition:transform .15s ease,filter .15s ease}
.comm-card-action:hover{filter:brightness(1.06)}.comm-card-action:active{transform:scale(.98)}
.comm-card-action.manage{background:#5634b7}.comm-card-action.open{background:#246f62}.comm-card-action.join{background:#fff3dd;color:#8d5709;border:1px solid #f0d8ad}.comm-card-action.discover{background:#172033}
.comm-showcase-card-v12.is-joined{border-color:rgba(36,111,98,.24)}
.comm-showcase-card-v12.compact .comm-card-cover{height:112px}.comm-showcase-card-v12.compact .comm-showcase-body{padding-top:34px}
@media(max-width:640px){
 .comm-showcase-card-v12{border-radius:18px}
 .comm-showcase-card-v12:hover{transform:none}
 .comm-showcase-card-v12 .comm-card-cover{height:112px}
 .comm-card-logo{width:52px;height:52px;bottom:-23px;border-radius:15px;font-size:25px}
 .comm-showcase-card-v12 .comm-showcase-body{padding:32px 13px 13px}
 .comm-showcase-card-v12 .comm-showcase-top{min-height:62px}
 .comm-showcase-card-v12 h3{font-size:15px}
 .comm-card-metrics{gap:4px;padding:9px 5px}
 .comm-card-metrics strong{font-size:13px}.comm-card-metrics span{font-size:7px}
 .comm-card-action{min-height:38px}
}

/* =========================================================
   NAFA — SPRINT 1.3 — UNIVERS COMMUNAUTÉ
   ========================================================= */
.comm-profile-view{--comm-ink:#172338;--comm-muted:#68758a;--comm-soft:#f5f7fb;--comm-line:#e4e9f1}
.comm-profile-view .comm-profile-hero{overflow:hidden;border:1px solid var(--comm-line);border-radius:30px;background:#fff;box-shadow:0 20px 55px rgba(29,42,66,.10)}
.comm-profile-view .comm-profile-cover{min-height:260px;background-position:center;background-size:cover;position:relative}
.comm-profile-view .comm-profile-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,24,40,.02),rgba(16,24,40,.58))}
.comm-profile-view .comm-profile-content{position:relative;margin-top:-86px;padding:0 34px 30px;align-items:flex-end}
.comm-profile-view .comm-profile-logo{width:128px;height:128px;border-width:6px;border-color:#fff!important;box-shadow:0 14px 34px rgba(17,28,48,.22);background:#fff}
.comm-profile-view .comm-profile-copy{min-width:0;flex:1;padding:92px 0 0}
.comm-profile-view .comm-profile-title{font-size:32px;letter-spacing:-.035em;color:var(--comm-ink)}
.comm-profile-view .comm-profile-description{max-width:760px;font-size:14px;line-height:1.65;color:var(--comm-muted)}
.comm-profile-view .comm-profile-stats>div{background:var(--comm-soft);border:1px solid var(--comm-line);border-radius:16px;padding:10px 14px}
.comm-profile-view .comm-owner-actions{margin-top:12px;gap:8px;flex-wrap:wrap}

.comm-space-nav{position:sticky;top:8px;z-index:15;display:flex;gap:5px;margin:18px 0 22px;padding:6px;border:1px solid var(--comm-line);border-radius:18px;background:rgba(255,255,255,.94);box-shadow:0 12px 30px rgba(28,42,69,.08);backdrop-filter:blur(14px);overflow:auto}
.comm-space-nav button{flex:0 0 auto;border:0;border-radius:13px;background:transparent;padding:11px 16px;color:#647287;font:inherit;font-size:12px;font-weight:850;cursor:pointer;white-space:nowrap}
.comm-space-nav button.active{background:#172338;color:#fff;box-shadow:0 7px 18px rgba(23,35,56,.19)}
.comm-space-panel{display:none;animation:commPanelIn .2s ease}
.comm-space-panel.active{display:block}
@keyframes commPanelIn{from{opacity:.25;transform:translateY(4px)}to{opacity:1;transform:none}}

.comm-detail-section-head{margin:0 0 15px}.comm-detail-section-head h2{font-size:23px;letter-spacing:-.025em;color:var(--comm-ink)}
.comm-featured-section,.comm-activity-section{margin:0 0 22px;padding:22px;border:1px solid var(--comm-line);border-radius:25px;background:#fff;box-shadow:0 12px 32px rgba(27,42,70,.055)}
.comm-featured-grid{display:grid;grid-template-columns:1.55fr 1fr 1fr;grid-template-rows:repeat(2,minmax(150px,1fr));gap:12px}
.comm-featured-card{position:relative;min-height:150px;overflow:hidden;border-radius:20px;background:#e9edf4;cursor:pointer;isolation:isolate}
.comm-featured-card:first-child{grid-row:1/3;min-height:312px}
.comm-featured-card:nth-child(4){grid-column:2/4}
.comm-featured-card img,.comm-featured-placeholder{width:100%;height:100%;object-fit:cover;display:grid;place-items:center;font-size:48px;transition:transform .25s ease}
.comm-featured-card:hover img{transform:scale(1.035)}
.comm-featured-card:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,transparent 32%,rgba(12,20,34,.88))}
.comm-featured-overlay{position:absolute;inset:auto 0 0;z-index:2;padding:18px;color:#fff}
.comm-featured-overlay>span{display:inline-flex;margin-bottom:7px;padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.18);font-size:9px;font-weight:950;text-transform:uppercase;letter-spacing:.08em;backdrop-filter:blur(8px)}
.comm-featured-overlay h3{margin:0 0 8px;font-size:17px;line-height:1.2}.comm-featured-card:first-child h3{font-size:24px}
.comm-featured-overlay>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.comm-featured-overlay small{opacity:.78}.comm-featured-overlay b{font-size:14px}
.comm-premium-empty{grid-column:1/-1;display:grid;place-items:center;text-align:center;min-height:180px;border:1px dashed #d8dfeb;border-radius:20px;background:#f8fafc;padding:28px;color:var(--comm-muted)}
.comm-premium-empty>span{font-size:34px}.comm-premium-empty b{color:var(--comm-ink);margin-top:8px}.comm-premium-empty p{margin:5px 0 0;font-size:12px}

.comm-activity-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.comm-activity-grid article{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid var(--comm-line);border-radius:18px;background:linear-gradient(145deg,#fff,#f7f9fc)}
.comm-activity-grid article>span{display:grid;place-items:center;width:42px;height:42px;flex:0 0 auto;border-radius:14px;background:#edf4ff;font-size:20px}
.comm-activity-grid b,.comm-activity-grid strong,.comm-activity-grid small{display:block}.comm-activity-grid b{font-size:20px;color:var(--comm-ink)}.comm-activity-grid strong{font-size:11px;color:#334257}.comm-activity-grid small{margin-top:2px;font-size:9px;color:#8590a1}

.comm-panel-heading{margin-bottom:18px;padding:4px 2px}.comm-panel-heading h2{margin:4px 0 5px;font-size:25px;color:var(--comm-ink)}.comm-panel-heading p{margin:0;color:var(--comm-muted);font-size:13px}
.comm-collections-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.comm-collection-card{display:grid;grid-template-columns:120px 1fr;min-height:150px;overflow:hidden;border:1px solid var(--comm-line);border-radius:22px;background:#fff;padding:0;text-align:left;cursor:pointer;box-shadow:0 10px 28px rgba(27,42,70,.055)}
.comm-collection-visual{min-height:150px;background:#eef2f7;overflow:hidden}.comm-collection-visual img{width:100%;height:100%;object-fit:cover}.comm-collection-visual span{display:grid;place-items:center;width:100%;height:100%;font-size:40px}
.comm-collection-card>div:last-child{padding:18px}.comm-collection-card small{font-size:9px;font-weight:900;color:#8671ff;text-transform:uppercase;letter-spacing:.08em}.comm-collection-card h3{margin:5px 0 6px;color:var(--comm-ink);font-size:17px}.comm-collection-card p{margin:0 0 15px;color:var(--comm-muted);font-size:11px}.comm-collection-card i{font-style:normal;color:#5f48db;font-size:10px;font-weight:900}

.comm-members-preview{display:grid;grid-template-columns:1.6fr .8fr;gap:16px}
.comm-member-avatars,.comm-members-preview>aside,.comm-about-card{border:1px solid var(--comm-line);border-radius:23px;background:#fff;padding:20px;box-shadow:0 10px 28px rgba(27,42,70,.05)}
.comm-member-avatars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.comm-member-avatars article{display:flex;align-items:center;gap:11px;padding:12px;border-radius:16px;background:#f6f8fb}.comm-member-avatars article>span{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:linear-gradient(145deg,#5f48db,#8978ff);color:#fff;font-size:15px;font-weight:950}.comm-member-avatars b,.comm-member-avatars small{display:block}.comm-member-avatars b{font-size:12px;color:var(--comm-ink)}.comm-member-avatars small{margin-top:2px;color:#8a95a5;font-size:9px}
.comm-members-preview>aside h3{font-size:27px;margin:6px 0 8px;color:var(--comm-ink)}.comm-members-preview>aside p{font-size:12px;line-height:1.65;color:var(--comm-muted)}
.comm-about-layout{display:grid;grid-template-columns:1.3fr .7fr;gap:16px}.comm-about-card h2{margin:7px 0 10px;color:var(--comm-ink);font-size:24px}.comm-about-card>p{margin:0;color:var(--comm-muted);font-size:13px;line-height:1.75}.comm-about-facts{display:grid;gap:8px}.comm-about-facts div{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px;border-radius:14px;background:#f6f8fb}.comm-about-facts span{font-size:10px;color:#7a8799}.comm-about-facts b{font-size:11px;color:var(--comm-ink)}

.comm-space-panel .comm-community-shell{margin-top:0}.comm-space-panel .comm-inner-toolbar{padding:15px;border:1px solid var(--comm-line);border-radius:20px;background:#fff}.comm-space-panel .comm-community-grid{margin-top:14px}

@media(max-width:980px){
  .comm-featured-grid{grid-template-columns:1.2fr 1fr;grid-template-rows:repeat(3,150px)}
  .comm-featured-card:first-child{grid-row:1/3;min-height:auto}.comm-featured-card:nth-child(4){grid-column:1/3}
  .comm-activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .comm-collections-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .comm-profile-view .comm-profile-hero{border-radius:22px}.comm-profile-view .comm-profile-cover{min-height:200px}.comm-profile-view .comm-profile-content{margin-top:-62px;padding:0 16px 20px;align-items:flex-start}.comm-profile-view .comm-profile-logo{width:92px;height:92px}.comm-profile-view .comm-profile-copy{padding-top:70px}.comm-profile-view .comm-profile-title{font-size:24px}.comm-profile-view .comm-profile-title-row{align-items:flex-start;gap:8px}.comm-profile-view .comm-profile-description{font-size:12px}
  .comm-space-nav{top:4px;margin:12px 0 15px;border-radius:15px}.comm-space-nav button{padding:9px 12px;font-size:10px}
  .comm-featured-section,.comm-activity-section{padding:14px;border-radius:20px}.comm-detail-section-head h2{font-size:19px}
  .comm-featured-grid{display:flex;overflow:auto;scroll-snap-type:x mandatory;padding-bottom:3px}.comm-featured-card,.comm-featured-card:first-child,.comm-featured-card:nth-child(4){flex:0 0 82%;min-height:260px;grid:auto;scroll-snap-align:start}.comm-featured-overlay h3,.comm-featured-card:first-child h3{font-size:19px}
  .comm-activity-grid{grid-template-columns:1fr 1fr;gap:8px}.comm-activity-grid article{padding:11px;gap:8px}.comm-activity-grid article>span{width:34px;height:34px;font-size:16px}.comm-activity-grid b{font-size:16px}.comm-activity-grid strong{font-size:9px}.comm-activity-grid small{display:none}
  .comm-collections-grid{grid-template-columns:1fr}.comm-collection-card{grid-template-columns:96px 1fr;min-height:125px}.comm-collection-visual{min-height:125px}.comm-collection-card>div:last-child{padding:14px}
  .comm-members-preview,.comm-about-layout{grid-template-columns:1fr}.comm-member-avatars{grid-template-columns:1fr}.comm-panel-heading h2{font-size:21px}
}


/* =========================================================
   NAFA — SPRINT 1.3 — CORRECTIF FORMAT COMPACT
   Réduit les bannières et les cartes mises en avant pour
   conserver davantage de contenu visible sans défilement.
   ========================================================= */
.comm-profile-view .comm-profile-cover{
  min-height:180px;
  height:180px;
}
.comm-profile-view .comm-profile-content{
  margin-top:-58px;
  padding:0 26px 22px;
}
.comm-profile-view .comm-profile-logo{
  width:96px;
  height:96px;
  flex:0 0 96px;
  border-radius:24px;
}
.comm-profile-view .comm-profile-copy{
  padding-top:62px;
}
.comm-profile-view .comm-profile-title{
  font-size:27px;
}
.comm-profile-view .comm-profile-description{
  margin:8px 0;
  font-size:12px;
  line-height:1.5;
}
.comm-profile-view .comm-profile-stats>div{
  padding:8px 11px;
  border-radius:13px;
}

.comm-space-nav{
  margin:12px 0 14px;
}
.comm-featured-section,
.comm-activity-section{
  margin-bottom:16px;
  padding:16px;
  border-radius:21px;
}
.comm-detail-section-head{
  margin-bottom:11px;
}
.comm-detail-section-head h2{
  font-size:20px;
}
.comm-featured-grid{
  grid-template-columns:1.25fr 1fr 1fr;
  grid-template-rows:repeat(2,118px);
  gap:10px;
}
.comm-featured-card{
  min-height:118px;
  border-radius:16px;
}
.comm-featured-card:first-child{
  min-height:246px;
}
.comm-featured-card:nth-child(4){
  grid-column:2/4;
}
.comm-featured-overlay{
  padding:13px;
}
.comm-featured-overlay h3{
  margin-bottom:5px;
  font-size:14px;
}
.comm-featured-card:first-child h3{
  font-size:18px;
}
.comm-featured-overlay>span{
  margin-bottom:5px;
  padding:4px 7px;
  font-size:8px;
}
.comm-featured-overlay b{
  font-size:12px;
}

@media(max-width:980px){
  .comm-profile-view .comm-profile-cover{
    min-height:165px;
    height:165px;
  }
  .comm-featured-grid{
    grid-template-columns:1.15fr 1fr;
    grid-template-rows:repeat(3,112px);
  }
  .comm-featured-card:first-child{
    min-height:auto;
  }
}

@media(max-width:760px){
  .comm-profile-view .comm-profile-cover{
    min-height:138px;
    height:138px;
  }
  .comm-profile-view .comm-profile-content{
    margin-top:-46px;
    padding:0 13px 15px;
    gap:10px;
  }
  .comm-profile-view .comm-profile-logo{
    width:72px;
    height:72px;
    flex-basis:72px;
    border-radius:18px;
  }
  .comm-profile-view .comm-profile-copy{
    padding-top:48px;
  }
  .comm-profile-view .comm-profile-title{
    font-size:21px;
  }
  .comm-profile-view .comm-profile-description{
    font-size:11px;
    line-height:1.45;
  }
  .comm-featured-section,
  .comm-activity-section{
    padding:12px;
    border-radius:17px;
  }
  .comm-featured-grid{
    display:flex;
    gap:10px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    padding-bottom:3px;
  }
  .comm-featured-card,
  .comm-featured-card:first-child,
  .comm-featured-card:nth-child(4){
    flex:0 0 74%;
    width:74%;
    min-height:190px;
    height:190px;
    grid-column:auto;
    grid-row:auto;
    scroll-snap-align:start;
  }
  .comm-featured-card:first-child h3{
    font-size:17px;
  }
}


/* ═══════════════════════════════════════════════════════════════
   SPRINT 1.4 — CENTRE D’ADMINISTRATION DES COMMUNAUTÉS
   ═══════════════════════════════════════════════════════════════ */
.comm-admin-tab-btn{margin-left:auto!important;border-color:#6d4aff!important;color:#5b35f2!important;background:#f4f1ff!important}
.comm-admin-panel{padding-top:8px}
.comm-admin-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin:0 0 18px;padding:24px;border:1px solid var(--bdr);border-radius:22px;background:linear-gradient(135deg,#fff 0%,#f7f4ff 100%)}
.comm-admin-heading h2{margin:3px 0 5px;font-size:25px;line-height:1.15;color:var(--tx)}
.comm-admin-heading p{margin:0;color:var(--tx2);max-width:650px;font-size:13px;line-height:1.55}
.comm-admin-loading{padding:30px;text-align:center;color:var(--tx2);border:1px dashed var(--bdr2);border-radius:18px;background:var(--sur)}
.comm-admin-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}
.comm-admin-kpi{appearance:none;text-align:left;border:1px solid var(--bdr);border-radius:18px;background:var(--sur);padding:18px;cursor:pointer;transition:.18s ease;min-height:130px}
.comm-admin-kpi:hover{transform:translateY(-2px);border-color:#b7a8ff;box-shadow:0 10px 25px rgba(64,45,130,.09)}
.comm-admin-kpi span{display:block;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.08em;color:var(--tx3)}
.comm-admin-kpi strong{display:block;margin:8px 0 6px;font-size:29px;line-height:1;color:var(--tx)}
.comm-admin-kpi small{display:block;color:var(--tx2);font-size:11px;line-height:1.35}
.comm-admin-kpi.needs-action{border-color:#ffb8a8;background:#fff7f4}
.comm-admin-kpi.needs-action strong{color:#d94b2b}
.comm-admin-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:16px;align-items:start}
.comm-admin-card{border:1px solid var(--bdr);border-radius:20px;background:var(--sur);padding:18px;min-width:0}
.comm-admin-card-wide{grid-row:span 2}
.comm-admin-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--bdr)}
.comm-admin-card-head span{display:block;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.09em;color:#6d4aff}
.comm-admin-card-head h3{margin:3px 0 0;font-size:17px;color:var(--tx)}
.comm-admin-list{display:flex;flex-direction:column}
.comm-admin-person{display:flex;align-items:center;gap:11px;padding:13px 0;border-bottom:1px solid var(--bdr)}
.comm-admin-person:last-child{border-bottom:0}
.comm-admin-avatar{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;flex:0 0 auto;background:#eee9ff;color:#5b35f2;font-size:14px;font-weight:900}
.comm-admin-person-copy{min-width:0;flex:1}
.comm-admin-person-copy b{display:block;color:var(--tx);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.comm-admin-person-copy span{display:block;margin-top:3px;color:var(--tx3);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.comm-admin-person-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.comm-admin-role{padding:6px 9px;border-radius:999px;background:#eee9ff;color:#5b35f2;font-size:9px;font-weight:850}
.comm-admin-empty{display:flex;align-items:center;gap:12px;padding:22px 4px;color:var(--tx2)}
.comm-admin-empty>span{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#e9f8ef;color:#128044;font-weight:900}
.comm-admin-empty b{display:block;color:var(--tx);font-size:12px}.comm-admin-empty p{margin:3px 0 0;font-size:10px}
.comm-admin-settings{display:grid;gap:8px;padding-top:12px}
.comm-admin-settings button{appearance:none;width:100%;text-align:left;padding:12px;border:1px solid var(--bdr);border-radius:13px;background:var(--sur2);cursor:pointer}
.comm-admin-settings button:hover{border-color:#aa98ff;background:#f8f6ff}
.comm-admin-settings b{display:block;color:var(--tx);font-size:11px}.comm-admin-settings span{display:block;margin-top:3px;color:var(--tx3);font-size:10px}
.comm-admin-danger{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:16px;padding:20px;border:1px solid #f1b8b8;border-radius:20px;background:#fff8f8}
.comm-admin-danger span{font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.08em;color:#c83c3c}
.comm-admin-danger h3{margin:3px 0 4px;color:#8d2424;font-size:16px}.comm-admin-danger p{margin:0;color:#8c5b5b;font-size:11px;max-width:650px;line-height:1.45}
@media(max-width:980px){.comm-admin-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.comm-admin-grid{grid-template-columns:1fr}.comm-admin-card-wide{grid-row:auto}}
@media(max-width:680px){.comm-admin-heading{padding:18px;display:block}.comm-admin-heading .btn{margin-top:14px;width:100%}.comm-admin-heading h2{font-size:21px}.comm-admin-kpis{grid-template-columns:1fr 1fr;gap:9px}.comm-admin-kpi{min-height:112px;padding:14px}.comm-admin-kpi strong{font-size:24px}.comm-admin-card{padding:14px;border-radius:17px}.comm-admin-person{align-items:flex-start;flex-wrap:wrap}.comm-admin-person-actions{width:100%;padding-left:49px;justify-content:flex-start}.comm-admin-danger{display:block}.comm-admin-danger .btn{width:100%;margin-top:14px}.comm-admin-tab-btn{margin-left:0!important}}


/* =========================================================
   NAFA — CORRECTIF RÉEL ICÔNES CARTES ET NAVBAR — 24/07/2026
   ========================================================= */

/* La vignette reste à cheval sur la bannière, mais le texte
   commence désormais après elle : aucun recouvrement possible. */
.comm-showcase-card-v12 .comm-showcase-body {
  padding: 16px 16px 15px !important;
}
.comm-showcase-card-v12 .comm-showcase-top {
  position: relative !important;
  display: block !important;
  min-height: 72px !important;
  padding: 4px 0 0 72px !important;
}
.comm-showcase-card-v12 .comm-card-logo {
  left: 15px !important;
  bottom: -27px !important;
  width: 58px !important;
  height: 58px !important;
}
.comm-showcase-card-v12 .comm-showcase-top > div {
  min-width: 0 !important;
}
.comm-showcase-card-v12 .comm-showcase-top h3 {
  margin: 0 0 6px !important;
  position: relative !important;
  z-index: 5 !important;
  color: #172033 !important;
  line-height: 1.25 !important;
  overflow-wrap: anywhere !important;
}
.comm-showcase-card-v12 .comm-showcase-top p {
  margin: 0 !important;
  position: relative !important;
  z-index: 5 !important;
}
.comm-showcase-card-v12 .comm-private-pill {
  position: absolute !important;
  right: 0 !important;
  top: 0 !important;
}

/* Lisibilité forcée de toute la navigation latérale,
   y compris après changement de profil. */
.rail .rnav,
body[data-nafa-profile] .rail .rnav,
body.theme-standard .rail .rnav,
body.theme-premium .rail .rnav {
  color: rgba(255,255,255,.96) !important;
  opacity: 1 !important;
  font-weight: 650 !important;
  text-shadow: 0 1px 2px rgba(0,0,0,.18) !important;
}
.rail .rnav .ico,
.rail .rnav .ico svg,
body[data-nafa-profile] .rail .rnav .ico,
body[data-nafa-profile] .rail .rnav .ico svg {
  color: #fff !important;
  stroke: currentColor !important;
  opacity: 1 !important;
}
.rail .rnav:hover,
body[data-nafa-profile] .rail .rnav:hover {
  color: #fff !important;
  background: rgba(255,255,255,.15) !important;
}
.rail .rnav.on,
body[data-nafa-profile] .rail .rnav.on,
body.theme-standard .rail .rnav.on,
body.theme-premium .rail .rnav.on {
  color: #0c466d !important;
  background: #fff !important;
  text-shadow: none !important;
  font-weight: 800 !important;
}
.rail .rnav.on .ico,
.rail .rnav.on .ico svg,
body[data-nafa-profile] .rail .rnav.on .ico,
body[data-nafa-profile] .rail .rnav.on .ico svg {
  color: #0c466d !important;
}
.rail .nbadge {
  background: rgba(255,255,255,.94) !important;
  color: #16364f !important;
  opacity: 1 !important;
  font-weight: 800 !important;
}
.rail .rnav.on .nbadge {
  background: #e8f2f8 !important;
  color: #0c466d !important;
}
.rail .brand-name,
.rail .logo-name,
.rail h1,
.rail h2 {
  color: #fff !important;
  opacity: 1 !important;
}

@media (max-width: 640px) {
  .comm-showcase-card-v12 .comm-showcase-top {
    min-height: 66px !important;
    padding-left: 64px !important;
  }
  .comm-showcase-card-v12 .comm-card-logo {
    left: 12px !important;
    bottom: -24px !important;
    width: 52px !important;
    height: 52px !important;
  }
}

/* ══ CENTRE DE MISE EN VENTE — Phase 1.1 ══ */
.resale-modal{width:min(680px,96vw);max-height:min(92vh,900px)}
.resale-head{display:flex;align-items:center;gap:13px;padding-right:38px}
.resale-product-img{width:54px;height:54px;border-radius:15px;object-fit:cover;background:var(--sur2);border:1px solid var(--bdr);flex:0 0 auto}
.resale-product-empty{display:grid;place-items:center;font-size:24px}
.resale-kicker{font-size:9px;letter-spacing:.12em;font-weight:900;color:#087b67}
.resale-head h2{margin:2px 0 1px;font-size:20px;letter-spacing:-.4px;color:var(--tx)}
.resale-head p{margin:0;font-size:11px;color:var(--tx2)}
.resale-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:14px}
.resale-progress span{padding:7px 8px;border-radius:10px;background:var(--sur2);border:1px solid var(--bdr);font-size:10px;font-weight:800;color:var(--tx3);text-align:center}
.resale-progress span.on{background:#e9f8f3;border-color:#b9e7d7;color:#087b67}
.resale-market-note{display:grid;gap:2px;padding:11px 13px;border-radius:13px;background:#f0f7ff;border:1px solid #d7e8fb;margin-bottom:12px}
.resale-market-note b{font-size:12px;color:#174d7a}.resale-market-note span{font-size:10.5px;color:#4b6b88;line-height:1.4}
.resale-section{padding:14px;border:1px solid var(--bdr);border-radius:16px;background:var(--sur);margin-bottom:11px}
.resale-section-title{display:flex;align-items:center;gap:9px;margin-bottom:12px}
.resale-section-title>span{width:25px;height:25px;border-radius:8px;display:grid;place-items:center;background:#0f8a72;color:#fff;font-size:11px;font-weight:900}
.resale-section-title div{display:grid;gap:1px}.resale-section-title b{font-size:13px;color:var(--tx)}.resale-section-title small{font-size:9.5px;color:var(--tx3)}
.resale-price-strategies{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}
.resale-price-strategies button{display:grid;gap:3px;text-align:left;padding:10px;border-radius:12px;border:1px solid var(--bdr);background:var(--sur2);font-family:inherit;cursor:pointer}
.resale-price-strategies button.recommended{border-color:#31a88f;background:#effaf7;box-shadow:0 0 0 1px rgba(49,168,143,.14)}
.resale-price-strategies small{font-size:9px;color:var(--tx3);font-weight:800}.resale-price-strategies b{font-size:17px;color:var(--tx)}.resale-price-strategies em{font-size:9px;color:#087b67;font-style:normal;font-weight:750}
.resale-input-label{display:block;font-size:10px;font-weight:800;color:var(--tx2);margin-bottom:5px}
.resale-main-price{display:flex;align-items:center;gap:6px}.resale-main-price input{width:145px;font-size:24px;font-weight:900;padding:8px 10px;border:1px solid var(--bdr2);border-radius:11px;background:var(--sur2);color:var(--tx)}.resale-main-price span{font-size:18px;font-weight:800;color:var(--tx2)}
.resale-shipping-select{width:100%;padding:11px;border:1px solid var(--bdr2);border-radius:11px;background:var(--sur2);color:var(--tx);font-family:inherit;font-size:12px}
.resale-shipping-note{font-size:9.5px;color:var(--tx3);margin:7px 0 0}
.resale-summary-row{display:flex;justify-content:space-between;gap:15px;padding:8px 0;border-bottom:1px solid var(--bdr);font-size:11px;color:var(--tx2)}
.resale-summary-row strong{color:var(--tx);white-space:nowrap}.resale-summary-row .negative{color:#b24b43}
.resale-summary-net{display:flex;justify-content:space-between;align-items:center;margin-top:11px;padding:13px;border-radius:12px;background:#e9f8f3;color:#075f50}.resale-summary-net span{font-size:12px;font-weight:800}.resale-summary-net strong{font-size:24px;letter-spacing:-.5px}
.resale-buyer-total{display:flex;justify-content:space-between;gap:12px;padding-top:10px;font-size:10px;color:var(--tx3)}.resale-buyer-total b{font-size:12px;color:var(--tx)}
.resale-details{border:1px solid var(--bdr);border-radius:13px;padding:0 12px;margin-bottom:10px;background:var(--sur)}.resale-details summary{cursor:pointer;padding:11px 0;font-size:11px;font-weight:800;color:var(--tx2)}
.resale-legal-note{font-size:9.5px;color:var(--tx3);text-align:center;line-height:1.4;padding:2px 12px 4px}
.resale-publish{min-width:155px}
@media(max-width:600px){.resale-modal{width:100%;height:100%;max-height:none;border-radius:0}.resale-price-strategies{grid-template-columns:1fr}.resale-price-strategies button{grid-template-columns:1fr auto;align-items:center}.resale-price-strategies em{grid-column:1/3}.resale-progress{gap:4px}.resale-progress span{font-size:8.5px;padding:7px 4px}.resale-section{padding:12px}.resale-summary-net strong{font-size:21px}}

/* ══ ASSISTANT DE VENTE — parcours 4 étapes ══ */
.resale-modal{width:min(720px,96vw)}
.resale-progress{grid-template-columns:repeat(4,1fr);position:relative;margin-bottom:18px}
.resale-progress button{appearance:none;border:0;background:transparent;display:flex;align-items:center;justify-content:center;gap:7px;padding:8px 5px;color:var(--tx3);font-family:inherit;cursor:pointer;border-bottom:2px solid var(--bdr)}
.resale-progress button span{width:22px;height:22px;border-radius:999px;display:grid;place-items:center;background:var(--sur2);border:1px solid var(--bdr);font-size:9px;font-weight:900}
.resale-progress button b{font-size:9.5px;font-weight:850}
.resale-progress button.on{color:#087b67;border-bottom-color:#0f8a72}.resale-progress button.on span{background:#0f8a72;color:#fff;border-color:#0f8a72}
.resale-progress button.done{color:#087b67}.resale-progress button.done span{background:#e9f8f3;color:#087b67;border-color:#b9e7d7}
.resale-step{min-height:380px}.resale-step[hidden]{display:none!important}
.resale-hero-money{display:grid;place-items:center;text-align:center;padding:21px 16px;margin-bottom:13px;border-radius:18px;background:linear-gradient(145deg,#effaf7,#e4f7f0);border:1px solid #b9e7d7}
.resale-hero-money span{font-size:11px;font-weight:800;color:#32675c}.resale-hero-money strong{font-size:38px;line-height:1.05;color:#075f50;letter-spacing:-1.2px;margin:4px 0}.resale-hero-money small{font-size:9px;color:#64847d}
.resale-price-strategies button.selected{border-color:#0f8a72!important;box-shadow:0 0 0 2px rgba(15,138,114,.13)!important;background:#effaf7!important}
.resale-price-edit{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 0;border-top:1px solid var(--bdr);border-bottom:1px solid var(--bdr);margin-bottom:12px}.resale-price-edit label{display:block;font-size:11px;font-weight:850;color:var(--tx)}.resale-price-edit small{display:block;font-size:9px;color:var(--tx3);margin-top:2px}
.resale-mini-breakdown{display:grid;gap:7px;padding:11px 13px;border-radius:13px;background:var(--sur2);margin-bottom:11px}.resale-mini-breakdown>div{display:flex;justify-content:space-between;gap:15px;font-size:10px;color:var(--tx2)}.resale-mini-breakdown b{color:var(--tx)}.resale-mini-breakdown .negative{color:#b24b43}
.resale-step-intro{display:flex;gap:11px;align-items:flex-start;margin-bottom:17px}.resale-step-intro>span{width:31px;height:31px;border-radius:10px;display:grid;place-items:center;background:#0f8a72;color:#fff;font-weight:900;flex:0 0 auto}.resale-step-intro h3{margin:0 0 4px;font-size:18px;color:var(--tx)}.resale-step-intro p{margin:0;font-size:10.5px;color:var(--tx2);line-height:1.45}
.resale-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.resale-choice-card{position:relative;display:flex;flex-direction:column;min-height:168px;padding:16px;border:1px solid var(--bdr);border-radius:16px;background:var(--sur);cursor:pointer;transition:.16s ease}.resale-choice-card:hover{transform:translateY(-2px);border-color:#8ecfbe}.resale-choice-card input{position:absolute;right:13px;top:13px;accent-color:#0f8a72}.resale-choice-card:has(input:checked){border-color:#0f8a72;background:#effaf7;box-shadow:0 0 0 2px rgba(15,138,114,.1)}.resale-choice-icon{font-size:25px;margin-bottom:13px}.resale-choice-card b{font-size:12px;color:var(--tx)}.resale-choice-card small{font-size:9.5px;color:var(--tx2);line-height:1.45;margin-top:5px}.resale-choice-card em{margin-top:auto;align-self:flex-start;padding:4px 7px;border-radius:999px;background:#dff5ed;color:#087b67;font-size:8px;font-style:normal;font-weight:850}
.resale-info-box{display:grid;gap:3px;margin-top:13px;padding:12px 13px;border-radius:13px;background:#f5f2ff;border:1px solid #dfd7ff}.resale-info-box b{font-size:10.5px;color:#5d45a5}.resale-info-box span{font-size:9.5px;color:#756c92;line-height:1.4}
.resale-shipping-summary{margin-top:16px;border:1px solid var(--bdr);border-radius:16px;overflow:hidden}.resale-shipping-summary>div{display:flex;justify-content:space-between;align-items:center;padding:13px 15px;font-size:10.5px;color:var(--tx2)}.resale-shipping-summary>div+div{border-top:1px solid var(--bdr)}.resale-shipping-summary .total{background:#effaf7;color:#075f50}.resale-shipping-summary .total strong{font-size:22px}
.resale-final-card{border:1px solid var(--bdr);border-radius:17px;background:var(--sur);overflow:hidden}.resale-final-row{display:flex;justify-content:space-between;gap:18px;padding:11px 14px;border-bottom:1px solid var(--bdr);font-size:10.5px;color:var(--tx2)}.resale-final-row b{color:var(--tx);text-align:right}.resale-final-row .negative{color:#b24b43}.resale-final-net{display:flex;justify-content:space-between;align-items:center;padding:16px 14px;background:#e9f8f3;color:#075f50}.resale-final-net span{font-size:12px;font-weight:850}.resale-final-net strong{font-size:27px}.resale-final-buyer{display:flex;justify-content:space-between;padding:11px 14px;background:var(--sur2);font-size:10px;color:var(--tx3)}.resale-final-buyer b{font-size:12px;color:var(--tx)}
.resale-trust-list{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:12px 0}.resale-trust-list span{padding:9px;border:1px solid var(--bdr);border-radius:11px;background:var(--sur2);font-size:8.8px;color:var(--tx2);line-height:1.35}
.resale-foot{justify-content:flex-end}.resale-foot .btn:first-child{margin-right:auto}.resale-next,.resale-publish{min-width:160px}
@media(max-width:600px){.resale-progress button b{display:none}.resale-progress button{padding:7px 2px}.resale-step{min-height:0}.resale-hero-money{padding:17px 12px}.resale-hero-money strong{font-size:32px}.resale-choice-grid{grid-template-columns:1fr}.resale-choice-card{min-height:116px;padding:14px 48px 14px 14px}.resale-choice-icon{margin-bottom:7px}.resale-trust-list{grid-template-columns:1fr}.resale-price-edit{align-items:flex-end}.resale-main-price input{width:115px}.resale-foot{gap:8px}.resale-foot .btn{min-width:0;flex:1}.resale-foot .btn:first-child{margin-right:0}}

/* ═══════════════════════════════════════════════════════════════
   NAFA — Centre de Transaction (brique indépendante)
   ═══════════════════════════════════════════════════════════════ */
.tx-overlay{position:fixed;inset:0;z-index:10050;background:rgba(15,23,42,.68);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:18px}
.tx-center-modal{position:relative;width:min(1080px,100%);max-height:94vh;overflow:hidden;background:#f5f7fb;border-radius:28px;box-shadow:0 30px 90px rgba(15,23,42,.35);display:flex;flex-direction:column}
.tx-close{position:absolute;z-index:2;right:18px;top:18px;width:40px;height:40px;border:0;border-radius:50%;background:rgba(255,255,255,.9);font-size:18px;cursor:pointer}
.tx-header{padding:26px 70px 24px 26px;background:#fff;display:grid;grid-template-columns:76px 1fr auto;align-items:center;gap:18px;border-bottom:1px solid #e7eaf0}
.tx-object-photo{width:76px;height:76px;border-radius:18px;overflow:hidden;background:#eef1f5;display:grid;place-items:center}.tx-object-photo img{width:100%;height:100%;object-fit:cover}.tx-object-placeholder{font-size:32px}
.tx-header-main span{font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:#6d5dfc}.tx-header-main h2{margin:5px 0 3px;font-size:24px;color:#121827}.tx-header-main p{margin:0;color:#687083;font-size:13px;font-weight:700}
.tx-status{text-align:right}.tx-status small{display:block;color:#7b8497;margin-bottom:5px}.tx-status b{display:inline-flex;padding:9px 13px;border-radius:999px;background:#ede9fe;color:#5b46d8;font-size:13px}
.tx-body{overflow:auto;padding:22px}.tx-trust{display:flex;align-items:center;gap:18px;padding:18px 20px;border-radius:20px;background:linear-gradient(135deg,#15263d,#293e59);color:#fff;margin-bottom:18px}.tx-trust div{min-width:145px}.tx-trust small{display:block;opacity:.72}.tx-trust strong{font-size:30px}.tx-trust p{margin:0;opacity:.88;line-height:1.5}
.tx-timeline{background:#fff;border-radius:20px;padding:20px;margin-bottom:18px;border:1px solid #e8ebf1}.tx-timeline h3{margin:0 0 16px}.tx-timeline-grid{display:grid;grid-template-columns:repeat(9,1fr);gap:8px}.tx-step{min-width:0;text-align:center;position:relative}.tx-step:after{content:"";position:absolute;top:14px;left:60%;right:-42%;height:2px;background:#e1e5ec}.tx-step:last-child:after{display:none}.tx-step-dot{position:relative;z-index:1;width:29px;height:29px;border-radius:50%;display:grid;place-items:center;margin:0 auto 8px;background:#e8ebf1;color:#fff;font-weight:800}.tx-step.done .tx-step-dot{background:#18a874}.tx-step.active .tx-step-dot{background:#6d5dfc;box-shadow:0 0 0 5px #ede9fe}.tx-step.done:after{background:#18a874}.tx-step b{display:block;font-size:11px;line-height:1.2;color:#273044}.tx-step small{display:block;font-size:9px;color:#8a92a3;margin-top:3px}
.tx-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.tx-card{background:#fff;border:1px solid #e8ebf1;border-radius:20px;padding:19px}.tx-card-title{display:flex;align-items:center;gap:11px;margin-bottom:17px}.tx-card-title>span{width:42px;height:42px;display:grid;place-items:center;background:#f1f3f7;border-radius:13px;font-size:21px}.tx-card-title h3,.tx-card-title p{margin:0}.tx-card-title p{font-size:12px;color:#7b8497;margin-top:2px}.tx-card dl{margin:0}.tx-card dl>div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid #eef0f4}.tx-card dl>div:last-child{border-bottom:0}.tx-card dt{color:#737d91}.tx-card dd{margin:0;text-align:right;font-weight:750;color:#232b3a}.tx-positive{color:#13855e!important}.tx-ai-note,.tx-pending{margin-top:14px;border-radius:14px;padding:13px;background:#f3f0ff}.tx-ai-note b,.tx-ai-note span,.tx-pending b,.tx-pending span{display:block}.tx-ai-note span,.tx-pending span{font-size:12px;line-height:1.45;color:#687083;margin-top:4px}.tx-doc-list{display:grid;gap:9px}.tx-doc-list button{border:1px solid #e6e9ef;background:#f7f8fa;border-radius:13px;padding:12px;text-align:left;font-weight:700;color:#596174}.tx-doc-list span{float:right;font-size:11px;font-weight:500;color:#9299a8}
.tx-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 22px;background:#fff;border-top:1px solid #e7eaf0}
@media(max-width:800px){.tx-overlay{padding:0;align-items:flex-end}.tx-center-modal{max-height:96vh;border-radius:24px 24px 0 0}.tx-header{grid-template-columns:60px 1fr;padding:20px 60px 18px 18px}.tx-object-photo{width:60px;height:60px;border-radius:15px}.tx-header-main h2{font-size:19px}.tx-status{grid-column:1/-1;text-align:left}.tx-body{padding:14px}.tx-trust{align-items:flex-start;flex-direction:column;gap:7px}.tx-timeline{overflow:hidden}.tx-timeline-grid{display:flex;overflow-x:auto;padding:5px 2px 10px;scroll-snap-type:x mandatory}.tx-step{flex:0 0 92px;scroll-snap-align:start}.tx-step:after{right:-45%;left:58%}.tx-grid{grid-template-columns:1fr}.tx-footer{position:sticky;bottom:0}.tx-footer .btn-dark{display:none}}

/* ═══════════════════════════════════════════════════════════════
   NAFA — Achat sécurisé / Checkout marketplace
   Bloc additif : aucune règle existante n'est remplacée.
═══════════════════════════════════════════════════════════════ */
.purchase-overlay{
  position:fixed;inset:0;z-index:10080;background:rgba(15,23,42,.62);
  display:flex;align-items:center;justify-content:center;padding:18px;
  backdrop-filter:blur(5px);
}
.purchase-modal{
  position:relative;width:min(520px,100%);max-height:calc(100vh - 36px);overflow:auto;
  background:#fff;border:1px solid rgba(99,102,241,.18);border-radius:24px;
  box-shadow:0 28px 80px rgba(15,23,42,.28);padding:26px;
  color:#172033;
}
.purchase-close{
  position:absolute;right:16px;top:16px;width:38px;height:38px;border:1px solid #e6e9f2;
  border-radius:50%;background:#fff;color:#4b5563;cursor:pointer;font-size:17px;
}
.purchase-head{padding-right:44px;margin-bottom:20px}
.purchase-head>span{display:inline-block;color:#5145cd;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px}
.purchase-head h2{margin:0;color:#151a2d;font-size:25px;line-height:1.15}
.purchase-head p{margin:8px 0 0;color:#667085;font-size:13px}
.purchase-object{display:flex;align-items:center;gap:13px;padding:12px;background:#f7f7fc;border:1px solid #ececf7;border-radius:17px;margin-bottom:16px}
.purchase-object>img,.purchase-photo-placeholder{width:66px;height:66px;border-radius:13px;object-fit:cover;background:#ecebfd;display:grid;place-items:center;font-size:25px;flex:0 0 auto}
.purchase-object>div:last-child{min-width:0;display:flex;flex-direction:column;gap:4px}
.purchase-object b{font-size:14px;color:#171b2d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.purchase-object span{font-size:12px;color:#697386}
.purchase-summary{border:1px solid #e8e9f2;border-radius:17px;padding:4px 15px;margin-bottom:15px}
.purchase-summary>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid #eff0f5;font-size:13px}
.purchase-summary>div:last-child{border-bottom:0}
.purchase-summary span{color:#667085}.purchase-summary b{color:#20263a}
.purchase-summary .total strong{font-size:21px;color:#4438ca}.purchase-summary .total span{font-weight:800;color:#20263a}
.purchase-trust{display:grid;gap:7px;padding:13px 14px;background:#effaf4;border:1px solid #caecd9;border-radius:15px;color:#18794e;font-size:12px;font-weight:650;margin-bottom:12px}
.purchase-notice{padding:11px 13px;background:#fff8e7;border:1px solid #f5dda2;border-radius:13px;color:#755515;font-size:11px;line-height:1.5;margin-bottom:17px}
.purchase-actions{display:grid;grid-template-columns:1fr 1.4fr;gap:10px}
.purchase-actions .btn{min-height:45px}
.tx-pending[data-paid="true"]{background:#edf9f2!important;border-color:#bfe6cf!important;color:#176b45!important}

@media(max-width:600px){
  .purchase-overlay{padding:0;align-items:flex-end}
  .purchase-modal{width:100%;max-height:92vh;border-radius:24px 24px 0 0;padding:22px 17px calc(18px + env(safe-area-inset-bottom))}
  .purchase-head h2{font-size:22px}
  .purchase-actions{grid-template-columns:1fr}
  .purchase-actions .purchase-pay{order:-1}
}

/* ═══════════════════════════════════════════════════════════════
   CENTRE FINANCIER NAFA — Stripe Connect
   ═══════════════════════════════════════════════════════════════ */
.nafa-financial-center-root{margin:22px 0}.nfc-card{border:1px solid var(--bdr);border-radius:20px;background:var(--sur);padding:20px;box-shadow:0 10px 30px rgba(24,35,30,.06)}
.nfc-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}.nfc-kicker{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--grn);margin-bottom:5px}.nfc-heading h2{font-size:20px;line-height:1.2;margin:0 0 5px}.nfc-heading p{margin:0;color:var(--tx2);font-size:13px}.nfc-secure-badge{flex:0 0 auto;background:var(--grn-bg);color:var(--grn);border:1px solid rgba(31,111,78,.16);border-radius:999px;padding:7px 10px;font-size:11px;font-weight:700}
.nfc-status{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;border-radius:16px;padding:14px;margin-bottom:14px;border:1px solid transparent}.nfc-status-success{background:#eefaf3;border-color:#ccebd9}.nfc-status-warning{background:#fff8e8;border-color:#f1dfad}.nfc-status-pending{background:var(--sur2);border-color:var(--bdr)}.nfc-status-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:rgba(255,255,255,.75);font-weight:900;font-size:17px}.nfc-status-copy{display:flex;flex-direction:column;min-width:0}.nfc-status-copy strong{font-size:14px;margin-bottom:3px}.nfc-status-copy span{font-size:12px;line-height:1.45;color:var(--tx2)}.nfc-primary{white-space:nowrap}.nfc-requirements{font-size:11px;margin-top:5px;font-weight:700;color:#8a6500}.nfc-error{background:#fff0f0;color:#a13333;border:1px solid #f1caca;border-radius:12px;padding:10px 12px;margin-bottom:14px;font-size:12px}
.nfc-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}.nfc-metric{background:var(--sur2);border:1px solid var(--bdr);border-radius:14px;padding:13px}.nfc-metric span{display:block;color:var(--tx2);font-size:11px;margin-bottom:7px}.nfc-metric strong{display:block;font-size:20px;line-height:1.15;margin-bottom:4px}.nfc-metric small{display:block;color:var(--tx2);font-size:10px;line-height:1.35}
.nfc-trust{display:flex;gap:11px;align-items:flex-start;background:linear-gradient(135deg,var(--grn-bg),var(--sur));border:1px solid rgba(31,111,78,.14);border-radius:15px;padding:13px}.nfc-trust-icon{width:34px;height:34px;border-radius:11px;background:var(--sur);display:grid;place-items:center;flex:0 0 auto}.nfc-trust strong{font-size:12px}.nfc-trust p{font-size:11px;line-height:1.5;color:var(--tx2);margin:3px 0 0}
.nfc-skeleton{background:linear-gradient(90deg,var(--sur2),var(--bdr),var(--sur2));background-size:220% 100%;animation:nfcPulse 1.3s infinite;border-radius:10px}.nfc-skeleton-title{height:20px;width:38%;margin-bottom:10px}.nfc-skeleton-line{height:12px;width:62%;margin-bottom:18px}.nfc-skeleton-box{height:82px}@keyframes nfcPulse{0%{background-position:100% 0}100%{background-position:-100% 0}}
@media(max-width:720px){.nfc-card{padding:15px;border-radius:17px}.nfc-heading{display:block}.nfc-secure-badge{display:inline-block;margin-top:10px}.nfc-status{grid-template-columns:auto minmax(0,1fr)}.nfc-primary{grid-column:1/-1;width:100%}.nfc-metrics{grid-template-columns:1fr}.nfc-metric{display:grid;grid-template-columns:1fr auto;align-items:center}.nfc-metric span,.nfc-metric small{grid-column:1}.nfc-metric strong{grid-column:2;grid-row:1/3;text-align:right}}

/* ==================================================================
   NAFA — NAVBAR MOBILE FIABLE 7 ENTRÉES — 26/07/2026
   Communautés remplace Alertes prix. La barre reste entièrement visible
   sur les écrans étroits et respecte les safe areas iOS / Android.
   ================================================================== */
@media (max-width:768px){
  .bot-nav{
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:repeat(7,minmax(0,1fr))!important;
    align-items:end!important;
    justify-content:stretch!important;
    width:calc(100% - max(12px,env(safe-area-inset-left,0px)) - max(12px,env(safe-area-inset-right,0px)))!important;
    max-width:560px!important;
    min-width:0!important;
    margin-left:auto!important;
    margin-right:auto!important;
    overflow:visible!important;
  }

  .bot-btn{
    box-sizing:border-box!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    padding-left:1px!important;
    padding-right:1px!important;
  }

  .bot-btn > span:not(.bot-ico):not(.bot-badge){
    display:-webkit-box!important;
    width:100%!important;
    min-width:0!important;
    height:18px!important;
    min-height:18px!important;
    font-size:clamp(7px,2.15vw,8.5px)!important;
    line-height:9px!important;
    white-space:normal!important;
    overflow:hidden!important;
    text-overflow:clip!important;
    overflow-wrap:anywhere!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
  }

  .bot-btn .bot-ico{
    max-width:100%!important;
  }
}

@media (max-width:360px){
  .bot-nav{
    width:calc(100% - max(6px,env(safe-area-inset-left,0px)) - max(6px,env(safe-area-inset-right,0px)))!important;
    padding-left:2px!important;
    padding-right:2px!important;
    column-gap:0!important;
  }
  .bot-btn .bot-ico{
    width:27px!important;
    height:27px!important;
    min-width:27px!important;
  }
  .bot-btn.scan-main .bot-ico{
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
  }
  .bot-btn > span:not(.bot-ico):not(.bot-badge){
    font-size:6.8px!important;
    letter-spacing:-.18px!important;
  }
}

/* NAFA — Centre de Transaction V2 */
.tx-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);gap:16px;margin-bottom:18px}
.tx-hero>div{border-radius:20px;padding:20px;background:#fff;border:1px solid #e8ebf1}
.tx-hero>div:first-child{background:linear-gradient(135deg,#18263b,#2f4664);color:#fff;border:0}
.tx-hero small,.tx-hero span{display:block}.tx-hero small{font-size:11px;text-transform:uppercase;letter-spacing:.08em;opacity:.72;font-weight:800}
.tx-hero strong{display:block;font-size:34px;line-height:1.1;margin:7px 0}.tx-hero span{font-size:12px;opacity:.82}
.tx-hero-trust b{display:block;font-size:28px;color:#177a55;margin:5px 0}.tx-hero-trust p{margin:0;color:#667085;font-size:12px;line-height:1.5}
.tx-card-highlight{border-color:#cfe9dc;background:linear-gradient(180deg,#fff,#f8fffb)}
.tx-card>a{display:inline-flex;margin-top:12px;font-size:12px;font-weight:800;color:#5145cd;text-decoration:none}
.tx-history{display:grid;gap:0;max-height:250px;overflow:auto;padding-right:4px}
.tx-history-row{position:relative;display:grid;grid-template-columns:18px 1fr;gap:10px;padding:0 0 15px}
.tx-history-row:before{content:"";position:absolute;left:5px;top:11px;bottom:-1px;width:2px;background:#e6e9ef}.tx-history-row:last-child:before{display:none}
.tx-history-dot{position:relative;z-index:1;width:12px;height:12px;border-radius:50%;background:#6d5dfc;box-shadow:0 0 0 4px #efedff;margin-top:3px}
.tx-history-row b,.tx-history-row small{display:block}.tx-history-row b{font-size:13px;color:#252d3d}.tx-history-row small{font-size:10px;color:#8a92a3;margin-top:3px}
.tx-history-empty{padding:16px;border-radius:13px;background:#f7f8fa;color:#7b8497;font-size:12px;text-align:center}
.tx-shipping-form{position:fixed;inset:0;z-index:10100;background:rgba(15,23,42,.72);backdrop-filter:blur(7px);display:flex;align-items:center;justify-content:center;padding:18px}
.tx-shipping-box{position:relative;width:min(460px,100%);background:#fff;border-radius:24px;padding:24px;box-shadow:0 28px 80px rgba(15,23,42,.4)}
.tx-shipping-close{position:absolute;right:16px;top:16px;border:0;width:36px;height:36px;border-radius:50%;background:#f1f3f7;cursor:pointer}
.tx-shipping-box>span{font-size:11px;color:#5b46d8;text-transform:uppercase;letter-spacing:.1em;font-weight:850}.tx-shipping-box h3{margin:7px 44px 19px 0;font-size:22px;color:#172033}
.tx-shipping-box label{display:grid;gap:7px;margin-top:13px;color:#495267;font-size:12px;font-weight:750}.tx-shipping-box label small{font-weight:500;color:#9097a7}
.tx-shipping-box input,.tx-shipping-box select{width:100%;min-height:45px;border:1px solid #dfe3ea;border-radius:13px;background:#fff;padding:0 13px;font:inherit;color:#20283a;outline:none}
.tx-shipping-box input:focus,.tx-shipping-box select:focus{border-color:#6d5dfc;box-shadow:0 0 0 3px #eeebff}.tx-shipping-box .btn{width:100%;margin-top:19px;min-height:46px}
@media(max-width:800px){.tx-hero{grid-template-columns:1fr}.tx-hero strong{font-size:29px}.tx-shipping-form{padding:0;align-items:flex-end}.tx-shipping-box{border-radius:24px 24px 0 0;padding:22px 17px calc(20px + env(safe-area-inset-bottom))}.tx-footer .tx-primary-action{display:inline-flex!important;flex:1}.tx-footer .tx-close-action{flex:0 0 auto}}


/* ══════════════════════════════════════════════════════════════════════
   BOUTIQUE — BOÎTE NAFA EN PRÉVENTE (2026-07-27)
   ══════════════════════════════════════════════════════════════════════ */
.shop-preorder-hero{box-shadow:0 14px 38px rgba(15,52,96,.18)}
.shop-preorder-hero .shop-hero-img{height:clamp(270px,44vw,480px);background:#d6ad78;align-items:stretch}
.shop-product-image{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.shop-preorder-badge{top:16px;left:16px;background:#f59e0b;color:#102f52;border:1px solid rgba(255,255,255,.55);box-shadow:0 8px 24px rgba(15,52,96,.2);font-size:10px;padding:7px 13px}
.shop-preorder-badge::before{content:"●";margin-right:6px;color:#fff}
.shop-preorder-hero .shop-hero-overlay{padding:74px 20px 20px;background:linear-gradient(to top,rgba(7,26,48,.94) 0%,rgba(7,26,48,.63) 52%,transparent 100%)}
.shop-hero-kicker{font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#f5a623;margin-bottom:7px}
.shop-preorder-hero .shop-hero-title{max-width:620px;font-size:clamp(24px,4vw,38px)}
.shop-preorder-hero .shop-hero-title span{color:#f5a623}
.shop-preorder-hero .shop-hero-sub{max-width:600px;color:rgba(255,255,255,.86);font-size:13px;line-height:1.55}
.shop-visual-note{margin:7px 4px 0;text-align:right;color:var(--tx3);font-size:10px}
.shop-launch-status{display:flex;align-items:center;gap:7px;border-radius:999px;padding:8px 11px;background:#fff7e7;color:#925600;font-size:11px;font-weight:800;white-space:nowrap}
.shop-launch-status span{width:8px;height:8px;border-radius:50%;background:#f59e0b;box-shadow:0 0 0 4px rgba(245,158,11,.14)}
.shop-pill{background:var(--sur);border-color:var(--bdr)}
.shop-seeds{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.shop-seed{appearance:none;width:100%;font-family:inherit;cursor:pointer;text-align:left;position:relative;min-height:56px;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;background:var(--sur);border:1px solid var(--bdr)}
.shop-seed:first-child,.shop-seed:nth-child(2){border-top:1px solid var(--bdr);background:var(--sur)}
.shop-seed:hover{transform:translateY(-1px);border-color:rgba(91,53,242,.38)}
.shop-seed span{flex:1}
.shop-seed i{font-style:normal;font-size:9px;color:var(--tx3);font-weight:750}
.shop-seed.is-selected{border:2px solid var(--acc)!important;background:var(--acc-bg)!important;box-shadow:0 6px 18px rgba(91,53,242,.12)}
.shop-seed.is-selected i{color:var(--acc)}
.shop-order-card{position:relative;border-color:#f59e0b;box-shadow:0 10px 32px rgba(15,52,96,.14)}
.shop-order-ribbon{padding:9px 16px;background:#fff7e7;color:#875000;font-size:10px;font-weight:850;text-align:center;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid #f7ddb0}
.shop-selected-seed{margin:0 16px 10px;padding:10px 12px;background:var(--sur2);border-radius:var(--rs);font-size:11px;color:var(--tx2)}
.shop-selected-seed strong{color:var(--tx)}
.shop-cta-btn{background:linear-gradient(135deg,#0f3460,#1a4a6e)}
.shop-trust{line-height:1.45}
@media(max-width:700px){
  .shop-preorder-hero .shop-hero-img{height:330px}
  .shop-product-image{object-position:52% center}
  .shop-preorder-hero .shop-hero-overlay{padding:86px 16px 16px}
  .shop-price-bar{align-items:flex-start;gap:10px}
  .shop-price{font-size:28px}
  .shop-launch-status{font-size:9px;padding:7px 9px}
  .shop-seeds{grid-template-columns:1fr 1fr}
  .shop-seed{padding:9px 9px;font-size:11px}
  .shop-order-top{align-items:center}
  .shop-qty-row{flex-wrap:wrap}
  .shop-qty-total{width:100%;text-align:right;margin-top:5px}
}
@media(max-width:390px){
  .shop-preorder-hero .shop-hero-img{height:300px}
  .shop-preorder-hero .shop-hero-title{font-size:23px}
  .shop-price-bar{flex-direction:column}
  .shop-seeds{grid-template-columns:1fr}
}


/* =========================================================
   FOOTER UNIQUE DE L'ACCUEIL — ESPACE JURIDIQUE NAFA
   ========================================================= */
.nafa-home-footer{
  margin:52px 0 96px;
  padding:22px 24px 20px;
  border:1px solid rgba(13,78,82,.12);
  border-radius:20px;
  background:linear-gradient(145deg,#fbfdfc 0%,#f3f8f7 100%);
  box-shadow:0 14px 34px rgba(15,55,58,.055);
  color:#536568;
}
.nafa-home-footer__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  flex-wrap:wrap;
}
.nafa-home-footer__brand{
  display:flex;
  align-items:baseline;
  gap:12px;
  flex-wrap:wrap;
}
.nafa-home-footer__brand strong{
  font-size:19px;
  color:#0c4b4f;
  letter-spacing:-.03em;
}
.nafa-home-footer__brand span{
  color:#597275;
  font-size:12px;
  font-weight:700;
  letter-spacing:.01em;
}
.nafa-home-footer i{
  margin:0 4px;
  color:#9bb1ae;
  font-style:normal;
}
.nafa-home-footer__editor{
  color:#7a8e91;
  font-size:12px;
}
.nafa-home-footer__links{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px 22px;
  margin:17px 0 14px;
  padding:14px 0;
  border-top:1px solid rgba(13,78,82,.10);
  border-bottom:1px solid rgba(13,78,82,.10);
}
.nafa-home-footer__links a,
.nafa-home-footer__contact a{
  color:#0d7773;
  text-decoration:none;
  font-weight:750;
  font-size:12.5px;
  transition:color .18s ease,text-decoration-color .18s ease;
}
.nafa-home-footer__links a:hover,
.nafa-home-footer__contact a:hover{
  color:#075956;
  text-decoration:underline;
  text-underline-offset:3px;
}
.nafa-home-footer__bottom{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
}
.nafa-home-footer__contact{
  display:flex;
  gap:10px 18px;
  flex-wrap:wrap;
  font-size:12px;
}
.nafa-home-footer small{
  color:#8da0a2;
  font-size:11px;
  white-space:nowrap;
}
@media(max-width:700px){
  .nafa-home-footer{
    margin:38px 10px 116px;
    padding:20px 18px 18px;
    border-radius:18px;
  }
  .nafa-home-footer__top,
  .nafa-home-footer__bottom{
    align-items:flex-start;
    flex-direction:column;
    gap:8px;
  }
  .nafa-home-footer__brand{
    align-items:flex-start;
    flex-direction:column;
    gap:3px;
  }
  .nafa-home-footer__links{
    display:grid;
    grid-template-columns:1fr 1fr;
    width:100%;
    gap:12px 16px;
  }
  .nafa-home-footer__contact{
    flex-direction:column;
    gap:6px;
  }
}
@media(max-width:390px){
  .nafa-home-footer__links{grid-template-columns:1fr;}
}

/* Liens juridiques publics de l'écran de connexion */
.auth-legal-links{display:flex;justify-content:center;align-items:center;gap:6px;flex-wrap:wrap}
.auth-legal-links a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.auth-legal-links a:hover{color:var(--tx)}


/* =========================================================
   CORRECTIF AFFICHAGE FOOTER DANS LA ZONE SCROLLABLE ACCUEIL
   ========================================================= */
#v-home.on{
  display:flex;
  flex-direction:column;
  min-height:100%;
}
#v-home.on > .nafa-home-footer{
  display:block!important;
  position:relative!important;
  visibility:visible!important;
  opacity:1!important;
  flex:0 0 auto;
  width:100%;
  box-sizing:border-box;
  clear:both;
  z-index:1;
}
#nafa-profile-dashboard-root{
  flex:0 0 auto;
}
@media(max-width:700px){
  #v-home.on{padding-bottom:calc(92px + env(safe-area-inset-bottom));}
  #v-home.on > .nafa-home-footer{
    margin:24px 0 24px!important;
  }
}

/* ==========================================================
   NAFA — Publication marketplace depuis la fiche objet
   Correctif durable : styles centralisés, sans dépendre du JS
   ========================================================== */
.item-marketplace-section {
  width: 100%;
  margin: 14px 0 18px;
  padding: 14px;
  border: 1px solid rgba(83, 67, 210, 0.14);
  border-radius: 16px;
  background: linear-gradient(180deg, #ffffff 0%, #fbfaff 100%);
  box-shadow: 0 8px 24px rgba(35, 28, 84, 0.06);
  box-sizing: border-box;
}

.item-marketplace-title {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 12px;
  color: #17203f;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.3;
  letter-spacing: 0.01em;
  user-select: none;
}

.item-marketplace-title svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  color: #5b35f2;
}

.item-marketplace-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
  width: 100%;
}

.item-marketplace-grid > .btn:first-child {
  min-height: 62px;
  border-radius: 13px !important;
  padding: 12px 14px !important;
  box-shadow: 0 8px 18px rgba(73, 42, 201, 0.18);
  transition: transform 0.18s ease, box-shadow 0.18s ease, filter 0.18s ease;
}

.item-marketplace-grid > .btn:first-child:hover {
  transform: translateY(-1px);
  box-shadow: 0 11px 22px rgba(73, 42, 201, 0.24);
  filter: brightness(1.03);
}

.item-marketplace-grid > .btn:first-child:active {
  transform: translateY(0);
}

.item-marketplace-btn {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-width: 0;
  min-height: 48px;
  padding: 10px 12px !important;
  border: 1px solid #dedaf8 !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  color: #202441 !important;
  text-align: left;
  box-shadow: none !important;
  transition: border-color 0.18s ease, background 0.18s ease, transform 0.18s ease;
}

.item-marketplace-btn:hover {
  border-color: #8b7af0 !important;
  background: #f8f6ff !important;
  transform: translateY(-1px);
}

.item-marketplace-btn:focus-visible,
.item-marketplace-grid > .btn:first-child:focus-visible {
  outline: 3px solid rgba(91, 53, 242, 0.22);
  outline-offset: 2px;
}

.item-marketplace-btn-title {
  display: flex;
  align-items: center;
  gap: 7px;
  min-width: 0;
  color: #1f2440;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.25;
  white-space: nowrap;
}

.item-marketplace-btn-title span {
  flex: 0 0 auto;
  font-size: 14px;
}

.item-marketplace-btn-subtitle {
  flex: 0 0 auto;
  color: #777b94;
  font-size: 10px;
  font-weight: 500;
  line-height: 1.2;
  white-space: nowrap;
}

@media (max-width: 760px) {
  .item-marketplace-section {
    margin: 12px 0 16px;
    padding: 12px;
    border-radius: 14px;
  }

  .item-marketplace-grid {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .item-marketplace-grid > .btn:first-child {
    grid-column: 1 !important;
  }

  .item-marketplace-btn {
    min-height: 50px;
  }
}

@media (max-width: 430px) {
  .item-marketplace-btn {
    align-items: flex-start;
    flex-direction: column;
    gap: 3px;
  }

  .item-marketplace-btn-title,
  .item-marketplace-btn-subtitle {
    white-space: normal;
  }
}

/* NAFA JOURNEY V1 — expérience de progression */
#nafa-journey-root{margin:0 0 22px}.nj-shell{display:flex;flex-direction:column;gap:14px}.nj-hero{background:linear-gradient(135deg,#171a31 0%,#4f46e5 58%,#7c3aed 100%);color:#fff;border-radius:24px;padding:22px;display:flex;align-items:center;justify-content:space-between;gap:18px;box-shadow:0 18px 40px rgba(79,70,229,.18)}.nj-coach{display:flex;align-items:center;gap:14px}.nj-avatar{width:52px;height:52px;border-radius:18px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.28);display:grid;place-items:center;font-size:25px;font-weight:900}.nj-kicker{text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:800;opacity:.72}.nj-hero h1{font-size:24px;margin:3px 0 4px}.nj-hero p{font-size:13px;opacity:.82;max-width:640px;line-height:1.45}.nj-level{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);padding:12px 15px;border-radius:16px;text-align:right;white-space:nowrap}.nj-level strong,.nj-level span{display:block}.nj-level span{font-size:12px;opacity:.78;margin-top:3px}.nj-grid{display:grid;grid-template-columns:1.45fr repeat(3,1fr);gap:12px}.nj-card{background:#fff;border:1px solid #e8e8f0;border-radius:19px;padding:17px;box-shadow:0 6px 20px rgba(25,25,40,.045);min-height:166px}.nj-card.nj-main{background:linear-gradient(150deg,#fff 0%,#f5f5ff 100%);border-color:#dedefb}.nj-card-head{display:flex;justify-content:space-between;gap:12px}.nj-card h2{font-size:19px;margin:4px 0 7px}.nj-card p{font-size:12px;color:#777786;line-height:1.45;margin:8px 0}.nj-reward{font-size:11px;font-weight:800;color:#6d28d9;background:#f3e8ff;border-radius:999px;padding:6px 9px;height:max-content}.nj-big{font-size:28px;font-weight:850;letter-spacing:-.04em;margin:9px 0}.nj-progress{height:8px;background:#ececf4;border-radius:999px;overflow:hidden;margin:12px 0 6px}.nj-progress i{display:block;height:100%;background:linear-gradient(90deg,#6366f1,#8b5cf6);border-radius:inherit}.nj-progress-meta{display:flex;justify-content:space-between;font-size:10px;color:#9292a1}.nj-primary{border:0;background:#5b5ce2;color:white;border-radius:12px;padding:10px 14px;font-weight:800;font-size:12px;margin-top:12px;cursor:pointer}.nj-lower{display:grid;grid-template-columns:1fr 1.5fr;gap:12px}.nj-season,.nj-badges{background:#fff;border:1px solid #e8e8f0;border-radius:18px;padding:16px;display:flex;align-items:center;gap:13px}.nj-season-icon{font-size:34px}.nj-season h3,.nj-badges h3{font-size:15px;margin:3px 0}.nj-season p{font-size:12px;color:#7b7b87}.nj-badges{justify-content:space-between;align-items:flex-start}.nj-badge-row{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.nj-badge-row span{font-size:10px;background:#f7f7fb;border:1px solid #e8e8f0;padding:6px 8px;border-radius:999px}.nj-toast{position:fixed;z-index:99999;right:18px;bottom:90px;background:#171a31;color:#fff;padding:13px 16px;border-radius:14px;box-shadow:0 14px 35px rgba(0,0,0,.24);transform:translateY(40px);opacity:0;transition:.25s;max-width:360px;font-size:13px;font-weight:700}.nj-toast.show{transform:none;opacity:1}
@media(max-width:1100px){.nj-grid{grid-template-columns:1fr 1fr}.nj-main{grid-column:1/-1}}@media(max-width:700px){#nafa-journey-root{margin-top:4px}.nj-hero{padding:17px;border-radius:19px;align-items:flex-start}.nj-avatar{width:42px;height:42px;border-radius:14px}.nj-hero h1{font-size:19px}.nj-level{font-size:11px;padding:9px}.nj-grid,.nj-lower{grid-template-columns:1fr}.nj-main{grid-column:auto}.nj-card{min-height:auto}.nj-badges{flex-direction:column}.nj-badge-row{justify-content:flex-start}}


/* === NAFA Journey : priorité sur les anciens dashboards === */
body.nafa-journey-active #nafa-profile-dashboard-root,
body.nafa-journey-active #nafa-profile-preview-toolbar { display:none !important; }
body.nafa-journey-active #nafa-journey-root { display:block !important; }

/* === Jeux d'attente pendant l'analyse IA === */
.nwg-overlay{position:fixed;inset:0;z-index:100000;background:rgba(4,28,31,.72);display:none;align-items:center;justify-content:center;padding:18px}
.nwg-overlay.show{display:flex}
.nwg-panel{width:min(720px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:24px;padding:24px;color:#092e31;box-shadow:0 20px 70px rgba(0,0,0,.28)}
.nwg-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}
.nwg-head h2{margin:5px 0 6px;font-size:clamp(22px,4vw,32px)}
.nwg-head p{margin:0;color:#577174}
.nwg-kicker{font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:#087f78}
.nwg-minimize,.nwg-tabs button,.nwg-answers button{border:1px solid #c8d8d8;background:#fff;border-radius:12px;padding:10px 14px;cursor:pointer}
.nwg-progress{height:10px;background:#e4eeee;border-radius:999px;overflow:hidden;margin:20px 0 12px}
.nwg-progress span{display:block;height:100%;width:10%;background:#07877f;transition:width .5s ease}
.nwg-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin-bottom:18px}
.nwg-steps span{font-size:12px;color:#728486;padding:7px;border-radius:9px;background:#f2f6f6;text-align:center}
.nwg-steps span.active,.nwg-steps span.done{color:#075d59;background:#dcf3f0;font-weight:700}
.nwg-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}
.nwg-tabs button.active{background:#073b3d;color:#fff;border-color:#073b3d}
.nwg-game{border:1px solid #d8e4e4;border-radius:18px;padding:18px;background:#f8fbfb}
.nwg-game-title{font-weight:800;margin-bottom:14px}
.nwg-feedback{text-align:center;margin-top:14px;font-weight:700;min-height:24px}
.nwg-ttt{display:grid;grid-template-columns:repeat(3,70px);justify-content:center;gap:8px}
.nwg-ttt button,.nwg-memory button{height:70px;border:1px solid #b9cece;border-radius:14px;background:#fff;font-size:28px;cursor:pointer}
.nwg-memory{display:grid;grid-template-columns:repeat(4,70px);justify-content:center;gap:8px}
.nwg-memory button.found{background:#dff3ef}
.nwg-answers{display:grid;gap:9px}
.nwg-answers button{text-align:left}
.nwg-note{text-align:center;color:#697f81;font-size:13px;margin:14px 0 0}
.nwg-overlay.minimized{align-items:flex-end;justify-content:flex-end;pointer-events:none}
.nwg-overlay.minimized .nwg-panel{width:min(360px,100%);padding:16px;pointer-events:auto}
.nwg-overlay.minimized .nwg-tabs,.nwg-overlay.minimized .nwg-game,.nwg-overlay.minimized .nwg-steps,.nwg-overlay.minimized .nwg-note{display:none}
@media(max-width:600px){
  .nwg-panel{padding:18px;border-radius:20px}
  .nwg-steps{grid-template-columns:1fr}
  .nwg-steps span:not(.active){display:none}
  .nwg-ttt{grid-template-columns:repeat(3,62px)}
  .nwg-memory{grid-template-columns:repeat(4,58px)}
  .nwg-ttt button,.nwg-memory button{height:58px}
}

/* Correctif Journey V2 : masquer totalement l'ancien accueil */
body.nafa-journey-active #v-home > .nafa-legacy-home,
body.nafa-journey-active #nafa-profile-preview-toolbar,
body.nafa-journey-active #nafa-profile-dashboard-root {
  display: none !important;
}
body.nafa-journey-active #v-home {
  background: #f4f8f8 !important;
}
body.nafa-journey-active #nafa-journey-root {
  display: block !important;
  background: transparent !important;
}


/* =========================================================
   NAFA — Missions journalières intégrées au dashboard classique
   ========================================================= */

body #nafa-journey-root{
  display:none !important;
}

body.nafa-profile-ready #nafa-profile-dashboard-root{
  display:block !important;
}

body.nafa-profile-ready #nafa-profile-preview-toolbar{
  display:flex !important;
}

.ndm-shell{
  margin:16px 0 18px;
  padding:0;
}

.ndm-top{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);
  gap:14px;
  margin-bottom:14px;
}

.ndm-patrimony{
  min-height:150px;
  padding:24px 28px;
  border-radius:22px;
  background:linear-gradient(125deg,#0b3437 0%,#087a72 100%);
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 14px 30px rgba(8,57,58,.18);
}

.ndm-patrimony .ndm-label{
  color:rgba(255,255,255,.78);
}

.ndm-patrimony strong{
  display:block;
  margin:6px 0 4px;
  font-size:clamp(42px,5vw,68px);
  line-height:1;
  letter-spacing:-.04em;
  color:#fff;
}

.ndm-patrimony small{
  font-size:14px;
  color:rgba(255,255,255,.82);
}

.ndm-progress-card{
  min-height:150px;
  padding:24px;
  border:1px solid #d8e4e4;
  border-radius:22px;
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}

.ndm-progress-card strong{
  display:block;
  margin-top:5px;
  font-size:42px;
  line-height:1;
  color:#082f32;
}

.ndm-level{
  padding:13px 15px;
  border-radius:15px;
  background:#eef8f7;
  text-align:right;
}

.ndm-level b,
.ndm-level span{
  display:block;
}

.ndm-level span{
  margin-top:4px;
  color:#5b7476;
  font-size:13px;
}

.ndm-label,
.ndm-eyebrow{
  display:block;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.12em;
  color:#587275;
}

.ndm-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin:18px 2px 12px;
}

.ndm-heading h2{
  margin:4px 0 0;
  color:#092e31;
  font-size:24px;
}

.ndm-daily-badge{
  flex:none;
  padding:9px 13px;
  border-radius:999px;
  background:#e8f7f4;
  color:#08756e;
  font-size:13px;
  font-weight:800;
}

.ndm-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.ndm-mission{
  min-height:260px;
  padding:20px;
  border:1px solid #d8e4e4;
  border-radius:20px;
  background:#fff;
  display:flex;
  flex-direction:column;
  box-shadow:0 8px 24px rgba(9,46,49,.06);
}

.ndm-mission.is-done{
  background:#f0faf7;
  border-color:#a8dacf;
}

.ndm-mission-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.ndm-icon{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:#eef7f6;
  font-size:23px;
}

.ndm-reward{
  padding:7px 9px;
  border-radius:999px;
  background:#f3efff;
  color:#6541c8;
  font-size:11px;
  font-weight:800;
}

.ndm-mission h3{
  margin:18px 0 7px;
  color:#092e31;
  font-size:19px;
}

.ndm-mission p{
  min-height:42px;
  margin:0 0 16px;
  color:#607477;
  font-size:14px;
}

.ndm-bar{
  height:10px;
  margin-top:auto;
  border-radius:999px;
  overflow:hidden;
  background:#e8eeee;
}

.ndm-bar i{
  display:block;
  height:100%;
  border-radius:inherit;
  background:#07877f;
  transition:width .35s ease;
}

.ndm-meta{
  display:flex;
  justify-content:space-between;
  margin:7px 0 14px;
  color:#677b7d;
  font-size:12px;
}

.ndm-mission button{
  width:100%;
  min-height:42px;
  border:0;
  border-radius:12px;
  background:#092f32;
  color:#fff;
  font-weight:800;
  cursor:pointer;
}

.ndm-mission button:disabled{
  background:#cfe9e2;
  color:#137266;
  cursor:default;
}

.pd-metrics > .pd-metric-highlight,
.pd-metrics > *:first-child.pd-metric-highlight{
  border-color:#0b8179 !important;
  background:#eef9f7 !important;
  box-shadow:inset 0 0 0 1px rgba(11,129,121,.12),0 10px 24px rgba(11,129,121,.09) !important;
}

.pd-metrics > .pd-metric-highlight strong,
.pd-metrics > *:first-child.pd-metric-highlight strong{
  font-size:32px !important;
  color:#08766f !important;
}

@media(max-width:980px){
  .ndm-top{
    grid-template-columns:1fr;
  }
  .ndm-grid{
    grid-template-columns:1fr;
  }
  .ndm-mission{
    min-height:0;
  }
}

@media(max-width:600px){
  .ndm-patrimony,
  .ndm-progress-card{
    min-height:130px;
    padding:20px;
  }
  .ndm-progress-card{
    align-items:flex-start;
  }
  .ndm-heading{
    align-items:flex-start;
    flex-direction:column;
  }
  .ndm-patrimony strong{
    font-size:45px;
  }
}


/* =========================================================
   Valeur patrimoniale OR — tous profils
   ========================================================= */
.ndm-patrimony.ndm-gold-value{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 18% 18%,rgba(255,245,184,.34),transparent 30%),
    linear-gradient(135deg,#6e4a08 0%,#b8860b 42%,#e2b73f 72%,#7a5209 100%) !important;
  border:1px solid rgba(255,226,130,.62);
  box-shadow:
    0 16px 32px rgba(120,82,10,.24),
    inset 0 1px 0 rgba(255,255,255,.28);
}

.ndm-gold-value .ndm-value-content{
  position:relative;
  z-index:2;
}

.ndm-gold-value .ndm-label{
  color:#fff4c8 !important;
}

.ndm-gold-value strong{
  color:#fff8da !important;
  text-shadow:0 2px 12px rgba(75,43,0,.35);
}

.ndm-gold-value small{
  color:#fff3c6 !important;
}

.ndm-coin-wheel{
  position:absolute;
  right:26px;
  top:50%;
  width:132px;
  height:132px;
  transform:translateY(-50%);
  animation:ndmCoinWheelRotate 9s linear infinite;
  opacity:.96;
}

.ndm-coin-wheel span{
  position:absolute;
  left:50%;
  top:50%;
  font-size:28px;
  filter:drop-shadow(0 4px 5px rgba(61,37,0,.25));
}

.ndm-coin-wheel span:nth-child(1){transform:translate(-50%,-50%) rotate(0deg) translateY(-52px) rotate(0deg)}
.ndm-coin-wheel span:nth-child(2){transform:translate(-50%,-50%) rotate(60deg) translateY(-52px) rotate(-60deg)}
.ndm-coin-wheel span:nth-child(3){transform:translate(-50%,-50%) rotate(120deg) translateY(-52px) rotate(-120deg)}
.ndm-coin-wheel span:nth-child(4){transform:translate(-50%,-50%) rotate(180deg) translateY(-52px) rotate(-180deg)}
.ndm-coin-wheel span:nth-child(5){transform:translate(-50%,-50%) rotate(240deg) translateY(-52px) rotate(-240deg)}
.ndm-coin-wheel span:nth-child(6){transform:translate(-50%,-50%) rotate(300deg) translateY(-52px) rotate(-300deg)}

.ndm-coin-wheel::after{
  content:'€';
  position:absolute;
  inset:34px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#704b07;
  background:linear-gradient(145deg,#fff1a8,#dca925);
  border:3px solid rgba(255,246,190,.7);
  font-size:34px;
  font-weight:900;
  box-shadow:inset 0 0 0 4px rgba(142,95,8,.18),0 6px 18px rgba(66,40,0,.25);
}

@keyframes ndmCoinWheelRotate{
  from{transform:translateY(-50%) rotate(0deg)}
  to{transform:translateY(-50%) rotate(360deg)}
}

@media (prefers-reduced-motion:reduce){
  .ndm-coin-wheel{animation:none}
}

@media(max-width:680px){
  .ndm-coin-wheel{
    width:96px;
    height:96px;
    right:12px;
    opacity:.72;
  }
  .ndm-coin-wheel span{
    font-size:21px;
  }
  .ndm-coin-wheel span:nth-child(1){transform:translate(-50%,-50%) rotate(0deg) translateY(-38px) rotate(0deg)}
  .ndm-coin-wheel span:nth-child(2){transform:translate(-50%,-50%) rotate(60deg) translateY(-38px) rotate(-60deg)}
  .ndm-coin-wheel span:nth-child(3){transform:translate(-50%,-50%) rotate(120deg) translateY(-38px) rotate(-120deg)}
  .ndm-coin-wheel span:nth-child(4){transform:translate(-50%,-50%) rotate(180deg) translateY(-38px) rotate(-180deg)}
  .ndm-coin-wheel span:nth-child(5){transform:translate(-50%,-50%) rotate(240deg) translateY(-38px) rotate(-240deg)}
  .ndm-coin-wheel span:nth-child(6){transform:translate(-50%,-50%) rotate(300deg) translateY(-38px) rotate(-300deg)}
  .ndm-coin-wheel::after{
    inset:26px;
    font-size:24px;
  }
}


/* =========================================================
   Missions V2 — récompenses visibles et progression motivante
   ========================================================= */
.ndm-hero{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(250px,.55fr);
  gap:18px;
  margin:18px 0 20px;
  padding:24px;
  border-radius:24px;
  background:linear-gradient(135deg,#163f43 0%,#0a7f76 58%,#0a5e59 100%);
  color:#fff;
  box-shadow:0 16px 34px rgba(10,74,71,.20);
}

.ndm-hero-copy h2{
  margin:5px 0 8px;
  max-width:760px;
  color:#fff;
  font-size:clamp(24px,3vw,34px);
}

.ndm-hero-copy p{
  margin:0 0 18px;
  color:rgba(255,255,255,.82);
}

.ndm-eyebrow-light{
  color:#c7f4ed !important;
}

.ndm-global-progress{
  max-width:760px;
}

.ndm-global-track{
  height:16px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(255,255,255,.18);
  box-shadow:inset 0 1px 2px rgba(0,0,0,.18);
}

.ndm-global-track i{
  display:block;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#ffe18a 0%,#ffd166 45%,#ffb703 100%);
  box-shadow:0 0 18px rgba(255,201,76,.45);
  transition:width .45s ease;
}

.ndm-global-meta{
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin-top:8px;
  color:#fff;
  font-size:13px;
}

.ndm-final-reward{
  min-height:210px;
  padding:20px;
  border-radius:20px;
  background:linear-gradient(145deg,#fff7d6,#f3d77d);
  color:#704c08;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  box-shadow:inset 0 0 0 1px rgba(142,101,18,.14);
}

.ndm-final-reward.is-unlocked{
  background:linear-gradient(145deg,#fff4bd,#f0b72f);
  animation:ndmRewardPulse 1.6s ease-in-out infinite alternate;
}

.ndm-final-kicker{
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.11em;
}

.ndm-chest{
  margin:5px 0 7px;
  font-size:48px;
  filter:drop-shadow(0 6px 8px rgba(85,50,0,.2));
}

.ndm-final-reward strong{
  display:block;
  font-size:20px;
}

.ndm-final-reward small{
  margin-top:7px;
  color:#7b5d1b;
}

.ndm-mission{
  position:relative;
  overflow:hidden;
  border-width:2px;
  background:linear-gradient(180deg,#fff 0%,#f7fbfb 100%);
}

.ndm-mission::before{
  content:'';
  position:absolute;
  inset:0 0 auto 0;
  height:7px;
  background:var(--mission-accent,#0a8179);
}

.ndm-theme-camera{
  --mission-accent:#5b7cfa;
  --mission-soft:#edf1ff;
}

.ndm-theme-shield{
  --mission-accent:#00a37a;
  --mission-soft:#e8f8f3;
}

.ndm-theme-sale{
  --mission-accent:#f29d38;
  --mission-soft:#fff3e5;
}

.ndm-mission-ribbon{
  position:absolute;
  right:14px;
  top:14px;
  padding:6px 9px;
  border-radius:999px;
  background:var(--mission-soft,#eef7f6);
  color:var(--mission-accent,#0a8179);
  font-size:11px;
  font-weight:900;
}

.ndm-mission .ndm-icon{
  background:var(--mission-soft,#eef7f6);
}

.ndm-mission .ndm-reward{
  margin-right:82px;
  background:#fff6d9;
  color:#8a5f08;
  border:1px solid rgba(173,125,22,.16);
}

.ndm-gain-preview{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin:2px 0 14px;
  padding:11px 12px;
  border-radius:14px;
  background:var(--mission-soft,#eef7f6);
}

.ndm-gain-preview span{
  width:100%;
  color:#5d7375;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.09em;
}

.ndm-gain-preview strong{
  color:var(--mission-accent,#0a8179);
  font-size:15px;
}

.ndm-mission .ndm-bar{
  height:14px;
  background:#e4ecec;
  box-shadow:inset 0 1px 2px rgba(0,0,0,.08);
}

.ndm-mission .ndm-bar i{
  background:linear-gradient(90deg,var(--mission-accent,#0a8179),#ffd166);
  box-shadow:0 0 14px rgba(255,193,7,.22);
}

.ndm-mission button{
  min-height:46px;
  background:var(--mission-accent,#0a8179);
  box-shadow:0 8px 18px color-mix(in srgb,var(--mission-accent,#0a8179) 24%,transparent);
}

.ndm-mission button:hover:not(:disabled){
  transform:translateY(-1px);
  filter:brightness(1.04);
}

.ndm-mission.is-done{
  opacity:.92;
  background:linear-gradient(180deg,#f1fbf8 0%,#e8f8f3 100%);
}

.ndm-mission.is-done::after{
  content:'✓';
  position:absolute;
  right:18px;
  bottom:16px;
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#0a9a76;
  color:#fff;
  font-weight:900;
}

@keyframes ndmRewardPulse{
  from{transform:translateY(0);box-shadow:0 0 0 rgba(255,193,7,0)}
  to{transform:translateY(-2px);box-shadow:0 10px 28px rgba(255,193,7,.30)}
}

@media(max-width:980px){
  .ndm-hero{
    grid-template-columns:1fr;
  }
  .ndm-final-reward{
    min-height:0;
  }
}

@media(max-width:600px){
  .ndm-hero{
    padding:18px;
    border-radius:20px;
  }
  .ndm-mission .ndm-reward{
    margin-right:0;
    margin-top:40px;
  }
}


/* =========================================================
   NAFA V3 — identité visuelle, sans roue de pièces
   Palette : bleu nuit, turquoise NAFA, corail et or
   ========================================================= */

.ndm-coin-wheel{
  display:none !important;
}

/* Carte patrimoine */
.ndm-patrimony.ndm-gold-value{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  background:
    radial-gradient(circle at 88% 22%,rgba(255,255,255,.14),transparent 24%),
    linear-gradient(135deg,#082f3a 0%,#0b5d63 52%,#0d8b82 100%) !important;
  border:1px solid rgba(98,221,207,.34) !important;
  box-shadow:
    0 16px 34px rgba(6,47,58,.22),
    inset 0 1px 0 rgba(255,255,255,.12) !important;
}

.ndm-patrimony.ndm-gold-value::before{
  content:'';
  position:absolute;
  width:220px;
  height:220px;
  right:-80px;
  top:-92px;
  border:2px solid rgba(255,255,255,.12);
  border-radius:50%;
  box-shadow:
    0 0 0 22px rgba(255,255,255,.05),
    0 0 0 48px rgba(255,255,255,.03);
  z-index:-1;
}

.ndm-patrimony.ndm-gold-value::after{
  content:'NAFA';
  position:absolute;
  right:24px;
  bottom:18px;
  color:rgba(255,255,255,.12);
  font-size:42px;
  font-weight:900;
  letter-spacing:.12em;
  z-index:-1;
}

.ndm-gold-value .ndm-label{
  color:#9ee9df !important;
}

.ndm-gold-value .ndm-amount-counter{
  display:block;
  color:#ffd16a !important;
  text-shadow:0 3px 14px rgba(0,0,0,.22);
  transform-origin:left center;
}

.ndm-gold-value small{
  color:rgba(255,255,255,.80) !important;
}

/* Feu d'artifice NAFA */
.ndm-nafa-firework{
  position:absolute;
  right:88px;
  top:50%;
  width:12px;
  height:12px;
  pointer-events:none;
}

.ndm-nafa-particle{
  --angle:0deg;
  --distance:54px;
  --delay:0ms;
  position:absolute;
  left:0;
  top:0;
  color:#ffd166;
  font-size:18px;
  opacity:0;
  transform:rotate(var(--angle)) translateX(0) rotate(calc(-1 * var(--angle)));
}

.ndm-value-finished .ndm-nafa-particle{
  animation:ndmNafaBurst .9s cubic-bezier(.16,.84,.44,1) var(--delay) forwards;
}

.ndm-value-finished .ndm-amount-counter{
  animation:ndmAmountPop .65s ease-out;
}

@keyframes ndmNafaBurst{
  0%{
    opacity:0;
    transform:rotate(var(--angle)) translateX(0) scale(.5) rotate(calc(-1 * var(--angle)));
  }
  25%{
    opacity:1;
  }
  100%{
    opacity:0;
    transform:rotate(var(--angle)) translateX(var(--distance)) scale(1.15) rotate(calc(-1 * var(--angle)));
  }
}

@keyframes ndmAmountPop{
  0%{transform:scale(1)}
  45%{transform:scale(1.06)}
  100%{transform:scale(1)}
}

/* Bandeau missions : identité NAFA plus forte */
.ndm-hero{
  background:
    radial-gradient(circle at 82% 20%,rgba(255,209,102,.13),transparent 20%),
    linear-gradient(135deg,#082f3a 0%,#0b5d63 50%,#0d8b82 100%) !important;
  border:1px solid rgba(89,209,195,.26);
  box-shadow:0 16px 34px rgba(6,47,58,.18) !important;
}

.ndm-hero-copy h2{
  color:#ffffff !important;
}

.ndm-hero-copy p{
  color:rgba(255,255,255,.82) !important;
}

.ndm-eyebrow-light{
  color:#9ee9df !important;
}

/* Récompense finale */
.ndm-final-reward{
  background:
    linear-gradient(145deg,#fff7dc 0%,#ffe29a 100%) !important;
  color:#5f4307 !important;
  border:1px solid rgba(181,128,16,.18);
}

.ndm-final-reward.is-unlocked{
  background:
    linear-gradient(145deg,#fff0ba 0%,#ffc857 100%) !important;
}

/* Cartes missions — plus NAFA et moins blanches */
.ndm-mission{
  border-color:rgba(9,89,94,.16) !important;
  box-shadow:0 10px 24px rgba(6,47,58,.08) !important;
}

.ndm-theme-camera{
  --mission-accent:#0d8b82;
  --mission-soft:#e8f8f5;
}

.ndm-theme-shield{
  --mission-accent:#0b5d63;
  --mission-soft:#e7f2f3;
}

.ndm-theme-sale{
  --mission-accent:#e58345;
  --mission-soft:#fff0e7;
}

.ndm-mission .ndm-reward{
  background:#fff4d3 !important;
  color:#7a5707 !important;
}

.ndm-mission .ndm-bar i{
  background:linear-gradient(90deg,var(--mission-accent,#0d8b82),#ffd166) !important;
}

/* Progression globale */
.ndm-global-track i{
  background:linear-gradient(90deg,#26c0b5 0%,#74ddd2 52%,#ffd166 100%) !important;
}

/* Mobile */
@media(max-width:680px){
  .ndm-patrimony.ndm-gold-value::after{
    font-size:28px;
    right:14px;
  }

  .ndm-nafa-firework{
    right:42px;
  }
}

@media(prefers-reduced-motion:reduce){
  .ndm-nafa-particle,
  .ndm-amount-counter{
    animation:none !important;
  }
}


/* =========================================================
   NAFA V4 — montant animé + récompenses visibles
   ========================================================= */

/* Affichage du montant façon rouleau numérique */
.ndm-amount-display{
  display:flex;
  align-items:flex-end;
  gap:8px;
  margin:6px 0 4px;
  color:#ffd16a;
  text-shadow:0 3px 14px rgba(0,0,0,.22);
  transform-origin:left center;
}

.ndm-amount-value{
  display:inline-block;
  min-width:1ch;
  font-size:clamp(42px,5vw,68px);
  line-height:.95;
  font-weight:900;
  letter-spacing:-.045em;
  transition:transform .08s linear;
}

.ndm-amount-currency{
  padding-bottom:5px;
  font-size:clamp(28px,3.2vw,44px);
  line-height:1;
  font-weight:900;
}

.ndm-value-finished .ndm-amount-display{
  animation:ndmAmountPop .65s ease-out;
}

/* Barre globale et jalons */
.ndm-reward-track{
  position:relative;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  margin-top:12px;
}

.ndm-reward-track::before{
  content:'';
  position:absolute;
  left:16.6%;
  right:16.6%;
  top:14px;
  height:2px;
  background:rgba(255,255,255,.22);
}

.ndm-reward-track span{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:3px;
  color:rgba(255,255,255,.66);
  text-align:center;
}

.ndm-reward-track b{
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.24);
  font-size:12px;
}

.ndm-reward-track em{
  font-style:normal;
  font-size:11px;
  white-space:nowrap;
}

.ndm-reward-track span.is-reached{
  color:#fff5c8;
}

.ndm-reward-track span.is-reached b{
  background:#ffd166;
  color:#5c4206;
  border-color:#ffe49a;
  box-shadow:0 0 0 4px rgba(255,209,102,.15);
}

/* Récompense finale compacte */
.ndm-final-reward{
  min-height:0 !important;
  padding:16px !important;
  justify-content:flex-start !important;
  text-align:left !important;
}

.ndm-reward-main{
  width:100%;
  display:flex;
  align-items:center;
  gap:10px;
  margin:8px 0 12px;
}

.ndm-reward-icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  flex:none;
  border-radius:13px;
  background:rgba(255,255,255,.55);
  font-size:24px;
}

.ndm-reward-main strong,
.ndm-reward-main small{
  display:block;
}

.ndm-reward-main strong{
  font-size:16px;
}

.ndm-reward-main small{
  margin-top:2px;
  color:#7b5d1b;
  font-size:11px;
}

.ndm-reward-preview{
  width:100%;
  padding-top:10px;
  border-top:1px solid rgba(112,76,8,.14);
}

.ndm-preview-title{
  display:block;
  margin-bottom:7px;
  color:#765407;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.ndm-preview-list{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}

.ndm-preview-list span{
  padding:5px 7px;
  border-radius:999px;
  background:rgba(255,255,255,.62);
  color:#654706;
  font-size:10px;
  font-weight:800;
  line-height:1.1;
  border:1px solid rgba(112,76,8,.10);
}

/* Feu d’artifice discret autour du montant */
.ndm-nafa-firework{
  right:66px !important;
}

.ndm-nafa-particle{
  font-size:13px !important;
}

/* Responsive */
@media(max-width:680px){
  .ndm-reward-track em{
    white-space:normal;
  }

  .ndm-preview-list span{
    font-size:9px;
  }

  .ndm-amount-value{
    font-size:44px;
  }

  .ndm-amount-currency{
    font-size:30px;
  }
}


/* =========================================================
   Correctif compact — sans roue, cadeau en bout de progression
   ========================================================= */

.ndm-coin-wheel{
  display:none !important;
}

/* Patrimoine plus compact */
.ndm-top{
  grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr) !important;
  gap:12px !important;
  margin-bottom:12px !important;
}

.ndm-patrimony,
.ndm-progress-card{
  min-height:112px !important;
  padding:18px 22px !important;
  border-radius:18px !important;
}

.ndm-amount-value{
  font-size:clamp(38px,4.4vw,58px) !important;
}

.ndm-amount-currency{
  font-size:clamp(25px,3vw,36px) !important;
}

/* Bannière missions plus compacte */
.ndm-hero{
  grid-template-columns:1fr !important;
  gap:12px !important;
  margin:12px 0 16px !important;
  padding:18px 20px !important;
  border-radius:18px !important;
}

.ndm-hero-copy h2{
  margin:3px 0 5px !important;
  font-size:clamp(21px,2.4vw,29px) !important;
}

.ndm-hero-copy p{
  margin:0 0 12px !important;
  font-size:13px !important;
}

/* Barre + cadeau à droite */
.ndm-progress-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:12px;
}

.ndm-global-progress{
  max-width:none !important;
  min-width:0;
}

.ndm-global-track{
  height:14px !important;
}

.ndm-progress-gift{
  min-width:174px;
  min-height:54px;
  display:flex;
  align-items:center;
  gap:9px;
  padding:9px 11px;
  border-radius:14px;
  background:linear-gradient(145deg,#fff7dc,#ffe29a);
  color:#624607;
  border:1px solid rgba(160,109,8,.16);
  box-shadow:0 6px 14px rgba(68,45,0,.10);
}

.ndm-progress-gift.is-unlocked{
  background:linear-gradient(145deg,#fff0b7,#ffc857);
}

.ndm-progress-gift-icon{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  flex:none;
  border-radius:11px;
  background:rgba(255,255,255,.58);
  font-size:20px;
}

.ndm-progress-gift b,
.ndm-progress-gift small{
  display:block;
}

.ndm-progress-gift b{
  font-size:12px;
}

.ndm-progress-gift small{
  margin-top:2px;
  font-size:10px;
  white-space:nowrap;
  color:#795b17;
}

/* Masquer l'ancien gros bloc récompense s'il reste dans le cache DOM */
.ndm-final-reward{
  display:none !important;
}

/* Cartes de missions plus compactes */
.ndm-grid{
  gap:11px !important;
}

.ndm-mission{
  min-height:220px !important;
  padding:16px !important;
  border-radius:17px !important;
}

.ndm-mission h3{
  margin:14px 0 5px !important;
  font-size:17px !important;
}

.ndm-mission p{
  min-height:36px !important;
  margin-bottom:10px !important;
  font-size:13px !important;
}

.ndm-gain-preview{
  margin-bottom:10px !important;
  padding:8px 10px !important;
}

.ndm-mission button{
  min-height:40px !important;
}

/* Mobile : empilage propre et bannière courte */
@media(max-width:700px){
  .ndm-top{
    grid-template-columns:1fr !important;
  }

  .ndm-patrimony,
  .ndm-progress-card{
    min-height:96px !important;
    padding:15px 16px !important;
  }

  .ndm-progress-card{
    align-items:center !important;
  }

  .ndm-hero{
    padding:15px !important;
    border-radius:16px !important;
  }

  .ndm-progress-row{
    grid-template-columns:1fr;
    gap:9px;
  }

  .ndm-progress-gift{
    min-width:0;
    width:100%;
    min-height:48px;
    padding:8px 10px;
  }

  .ndm-reward-track{
    margin-top:9px !important;
  }

  .ndm-reward-track em{
    font-size:9px !important;
  }

  .ndm-heading{
    margin-top:14px !important;
  }

  .ndm-heading h2{
    font-size:20px !important;
  }

  .ndm-grid{
    grid-template-columns:1fr !important;
  }

  .ndm-mission{
    min-height:0 !important;
  }
}

@media(max-width:430px){
  .ndm-amount-value{
    font-size:39px !important;
  }

  .ndm-amount-currency{
    font-size:26px !important;
  }

  .ndm-hero-copy h2{
    font-size:20px !important;
  }

  .ndm-daily-badge{
    font-size:11px !important;
    padding:7px 9px !important;
  }
}


/* =========================================================
   Rappel de mission après redirection
   ========================================================= */
.namr-banner{
  position:relative;
  z-index:40;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto auto;
  align-items:center;
  gap:12px;
  margin:12px 0 16px;
  padding:12px 14px;
  border:1px solid rgba(13,139,130,.24);
  border-radius:16px;
  background:
    linear-gradient(135deg,rgba(232,248,245,.98),rgba(255,248,224,.98));
  color:#082f3a;
  box-shadow:0 8px 22px rgba(6,47,58,.10);
}

.namr-icon{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:#0d8b82;
  color:#fff;
  font-size:20px;
}

.namr-copy{
  min-width:0;
}

.namr-kicker{
  display:block;
  margin-bottom:2px;
  color:#0d8b82;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.09em;
}

.namr-copy strong{
  display:block;
  color:#082f3a;
  font-size:14px;
}

.namr-copy p{
  margin:2px 0 0;
  color:#5a7072;
  font-size:12px;
}

.namr-reward{
  padding:6px 9px;
  border-radius:999px;
  background:#fff3c7;
  color:#765407;
  font-size:11px;
  font-weight:900;
  white-space:nowrap;
}

.namr-close{
  width:30px;
  height:30px;
  border:0;
  border-radius:9px;
  background:rgba(8,47,58,.07);
  color:#36575a;
  font-size:20px;
  line-height:1;
  cursor:pointer;
}

.namr-close:hover{
  background:rgba(8,47,58,.12);
}

@media(max-width:650px){
  .namr-banner{
    grid-template-columns:auto minmax(0,1fr) auto;
    gap:9px;
    margin:8px 0 12px;
    padding:10px 11px;
    border-radius:14px;
  }

  .namr-icon{
    width:34px;
    height:34px;
    font-size:18px;
  }

  .namr-reward{
    grid-column:2 / 4;
    justify-self:start;
    font-size:10px;
  }

  .namr-close{
    grid-column:3;
    grid-row:1;
  }

  .namr-copy p{
    font-size:11px;
  }
}


/* =========================================================
   Popup élégante de rappel de mission
   ========================================================= */

#nafa-active-mission-reminder,
.namr-banner{
  display:none !important;
}

.namp-overlay{
  position:fixed;
  inset:0;
  z-index:2147482000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  background:rgba(5,30,36,.68);
  backdrop-filter:blur(5px);
  opacity:0;
  visibility:hidden;
  transition:opacity .22s ease,visibility .22s ease;
}

.namp-overlay.is-visible{
  opacity:1;
  visibility:visible;
}

.namp-card{
  position:relative;
  width:min(430px,100%);
  padding:28px;
  border-radius:24px;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,209,102,.18),transparent 24%),
    linear-gradient(160deg,#ffffff 0%,#eef9f7 100%);
  color:#082f3a;
  text-align:center;
  box-shadow:0 24px 70px rgba(0,0,0,.28);
  transform:translateY(18px) scale(.97);
  transition:transform .22s ease;
}

.namp-overlay.is-visible .namp-card{
  transform:translateY(0) scale(1);
}

.namp-close{
  position:absolute;
  top:13px;
  right:13px;
  width:34px;
  height:34px;
  border:0;
  border-radius:11px;
  background:rgba(8,47,58,.07);
  color:#45676b;
  font-size:22px;
  line-height:1;
  cursor:pointer;
}

.namp-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-bottom:14px;
  padding:7px 11px;
  border-radius:999px;
  background:#dff5f1;
  color:#0d8b82;
  font-size:10px;
  font-weight:900;
  letter-spacing:.1em;
}

.namp-icon{
  width:68px;
  height:68px;
  display:grid;
  place-items:center;
  margin:0 auto 14px;
  border-radius:22px;
  background:linear-gradient(145deg,#0b5d63,#0d8b82);
  color:#fff;
  font-size:34px;
  box-shadow:0 10px 24px rgba(13,139,130,.22);
}

.namp-card h2{
  margin:0 0 8px;
  color:#082f3a;
  font-size:24px;
}

.namp-card p{
  margin:0 auto 18px;
  max-width:330px;
  color:#5d7376;
  font-size:14px;
  line-height:1.45;
}

.namp-reward{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin:0 0 18px;
  padding:13px;
  border-radius:16px;
  background:#fff4cf;
  border:1px solid rgba(181,128,16,.16);
}

.namp-reward span{
  grid-column:1 / -1;
  color:#765407;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.namp-reward strong{
  color:#654706;
  font-size:15px;
}

.namp-continue,
.namp-later{
  width:100%;
  min-height:44px;
  border-radius:13px;
  font-weight:900;
  cursor:pointer;
}

.namp-continue{
  border:0;
  background:linear-gradient(135deg,#0b5d63,#0d8b82);
  color:#fff;
  box-shadow:0 9px 20px rgba(13,139,130,.20);
}

.namp-later{
  margin-top:8px;
  border:1px solid #cfe0df;
  background:#fff;
  color:#466467;
}

body.nafa-mission-popup-open{
  overflow:hidden;
}

@media(max-width:520px){
  .namp-overlay{
    align-items:flex-end;
    padding:10px;
  }

  .namp-card{
    width:100%;
    padding:22px 18px 18px;
    border-radius:22px 22px 16px 16px;
  }

  .namp-icon{
    width:58px;
    height:58px;
    font-size:29px;
  }

  .namp-card h2{
    font-size:21px;
  }

  .namp-card p{
    font-size:13px;
  }
}


/* Sécurité : l'ancienne roue ne doit plus apparaître */
.ndm-coin-wheel{
  display:none !important;
}


/* =========================================================
   CORRECTIF RÉEL — CARTES VISIBLES, COMPACTES, PASSABLES
   ========================================================= */

.ndm-shell.ndm-all-complete .ndm-progress-card,
.ndm-shell.ndm-all-complete .ndm-hero,
.ndm-shell.ndm-all-complete .ndm-heading,
.ndm-shell.ndm-all-complete .ndm-grid{
  display:none !important;
}

.ndm-shell.ndm-all-complete .ndm-top{
  grid-template-columns:1fr !important;
}

.ndm-grid{
  gap:10px !important;
}

.ndm-mission{
  min-height:168px !important;
  padding:14px !important;
  border-radius:18px !important;
  border:1px solid rgba(255,255,255,.24) !important;
  box-shadow:0 10px 24px rgba(8,47,58,.12) !important;
  overflow:hidden !important;
}

.ndm-theme-camera{
  background:linear-gradient(145deg,#18a49e 0%,#0a6870 100%) !important;
}

.ndm-theme-shield{
  background:linear-gradient(145deg,#157f8d 0%,#0a5968 100%) !important;
}

.ndm-theme-sale{
  background:linear-gradient(145deg,#ee8745 0%,#c85b33 100%) !important;
}

.ndm-mission::before{
  opacity:.10 !important;
}

.ndm-mission-ribbon{
  background:rgba(255,255,255,.17) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.24) !important;
}

.ndm-mission .ndm-icon{
  width:38px !important;
  height:38px !important;
  border-radius:12px !important;
  background:rgba(255,255,255,.18) !important;
  border:1px solid rgba(255,255,255,.22) !important;
}

.ndm-mission .ndm-reward{
  background:rgba(255,255,255,.94) !important;
  color:#15575c !important;
  box-shadow:0 4px 10px rgba(0,0,0,.08) !important;
}

.ndm-mission h3{
  margin:9px 0 4px !important;
  color:#fff !important;
  font-size:16px !important;
  font-weight:900 !important;
  text-shadow:
    0 2px 5px rgba(0,0,0,.58),
    0 0 1px rgba(0,0,0,.95) !important;
}

.ndm-mission p{
  min-height:0 !important;
  margin:0 0 9px !important;
  color:rgba(255,255,255,.97) !important;
  font-size:11px !important;
  line-height:1.3 !important;
  text-shadow:
    0 1px 3px rgba(0,0,0,.48),
    0 0 1px rgba(0,0,0,.82) !important;
}

.ndm-gain-preview{
  display:none !important;
}

.ndm-mission .ndm-bar{
  height:5px !important;
  background:rgba(255,255,255,.28) !important;
}

.ndm-mission .ndm-bar i{
  background:#fff !important;
}

.ndm-meta{
  color:rgba(255,255,255,.92) !important;
  font-size:9px !important;
}

.ndm-mission-actions{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:7px;
  margin-top:8px;
}

.ndm-mission .ndm-start-btn,
.ndm-mission .ndm-skip-btn{
  min-height:32px !important;
  height:32px !important;
  margin:0 !important;
  padding:6px 10px !important;
  border-radius:10px !important;
  font-size:10px !important;
  font-weight:900 !important;
}

.ndm-mission .ndm-start-btn{
  background:#fff !important;
  color:#0b676a !important;
  border:0 !important;
}

.ndm-theme-sale .ndm-start-btn{
  color:#a84525 !important;
}

.ndm-mission .ndm-skip-btn{
  background:rgba(5,35,39,.20) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.42) !important;
  box-shadow:none !important;
}

@media(max-width:700px){
  .ndm-mission{
    min-height:154px !important;
    padding:12px !important;
  }

  .ndm-mission h3{
    font-size:15px !important;
  }

  .ndm-mission p{
    font-size:10.5px !important;
  }
}


/* =========================================================
   NAFA MISSIONS V2 — MODIFICATION RÉELLE 2026-07-28
   Sélecteurs dédiés pour éviter tout conflit avec l'ancien CSS
   ========================================================= */

#nafa-daily-missions-panel .ndm-grid{
  gap:12px !important;
  align-items:stretch !important;
}

#nafa-daily-missions-panel .ndm-mission.ndm-mission-v2{
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
  min-height:188px !important;
  height:188px !important;
  padding:14px !important;
  border-radius:18px !important;
  overflow:hidden !important;
  border:1px solid rgba(255,255,255,.24) !important;
  box-shadow:0 10px 24px rgba(8,47,58,.15) !important;
}

#nafa-daily-missions-panel .ndm-mission-v2.ndm-theme-camera{
  background:linear-gradient(145deg,#18a58f 0%,#08746c 100%) !important;
}

#nafa-daily-missions-panel .ndm-mission-v2.ndm-theme-shield{
  background:linear-gradient(145deg,#1595cb 0%,#075e9b 100%) !important;
}

#nafa-daily-missions-panel .ndm-mission-v2.ndm-theme-sale{
  background:linear-gradient(145deg,#f58a31 0%,#df5717 100%) !important;
}

#nafa-daily-missions-panel .ndm-v2-top{
  position:relative !important;
  z-index:3 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  min-height:27px !important;
  margin:0 0 10px !important;
}

#nafa-daily-missions-panel .ndm-mission-v2 .ndm-mission-ribbon{
  position:static !important;
  inset:auto !important;
  display:inline-flex !important;
  align-items:center !important;
  width:auto !important;
  min-height:25px !important;
  margin:0 !important;
  padding:5px 9px !important;
  border-radius:999px !important;
  background:rgba(4,44,49,.34) !important;
  border:1px solid rgba(255,255,255,.24) !important;
  color:#fff !important;
  font-size:9px !important;
  line-height:1 !important;
  font-weight:900 !important;
}

#nafa-daily-missions-panel .ndm-mission-v2 .ndm-reward{
  position:static !important;
  display:inline-flex !important;
  align-items:center !important;
  min-height:25px !important;
  margin:0 !important;
  padding:5px 9px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.94) !important;
  color:#124f56 !important;
  border:1px solid rgba(255,255,255,.55) !important;
  box-shadow:0 4px 10px rgba(0,0,0,.10) !important;
  font-size:9px !important;
  line-height:1 !important;
  font-weight:900 !important;
  white-space:nowrap !important;
}

#nafa-daily-missions-panel .ndm-v2-content{
  position:relative !important;
  z-index:3 !important;
  display:grid !important;
  grid-template-columns:48px minmax(0,1fr) !important;
  align-items:center !important;
  gap:12px !important;
  min-height:58px !important;
  margin:0 0 9px !important;
}

#nafa-daily-missions-panel .ndm-mission-v2 .ndm-icon{
  position:static !important;
  inset:auto !important;
  display:grid !important;
  place-items:center !important;
  width:48px !important;
  height:48px !important;
  min-width:48px !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:14px !important;
  background:rgba(255,255,255,.92) !important;
  border:1px solid rgba(255,255,255,.72) !important;
  color:#0a5963 !important;
  box-shadow:0 6px 14px rgba(0,0,0,.13) !important;
  font-size:23px !important;
  line-height:1 !important;
  transform:none !important;
}

#nafa-daily-missions-panel .ndm-v2-copy{
  min-width:0 !important;
  align-self:center !important;
}

#nafa-daily-missions-panel .ndm-mission-v2 h3{
  margin:0 0 4px !important;
  color:#fff !important;
  opacity:1 !important;
  font-size:17px !important;
  line-height:1.12 !important;
  font-weight:900 !important;
  text-shadow:
    0 2px 5px rgba(0,0,0,.62),
    0 0 1px rgba(0,0,0,.95) !important;
}

#nafa-daily-missions-panel .ndm-mission-v2 p{
  margin:0 !important;
  min-height:0 !important;
  max-width:96% !important;
  color:rgba(255,255,255,.98) !important;
  opacity:1 !important;
  font-size:10.5px !important;
  line-height:1.28 !important;
  text-shadow:
    0 1px 3px rgba(0,0,0,.52),
    0 0 1px rgba(0,0,0,.85) !important;
}

#nafa-daily-missions-panel .ndm-v2-progress{
  position:relative !important;
  z-index:3 !important;
  margin-top:auto !important;
}

#nafa-daily-missions-panel .ndm-mission-v2 .ndm-bar{
  height:5px !important;
  margin:0 0 4px !important;
  background:rgba(255,255,255,.30) !important;
  border-radius:999px !important;
}

#nafa-daily-missions-panel .ndm-mission-v2 .ndm-bar i{
  background:#fff !important;
  border-radius:999px !important;
}

#nafa-daily-missions-panel .ndm-mission-v2 .ndm-meta{
  display:flex !important;
  justify-content:space-between !important;
  margin:0 0 8px !important;
  color:rgba(255,255,255,.96) !important;
  font-size:9px !important;
  font-weight:900 !important;
  text-shadow:0 1px 2px rgba(0,0,0,.35) !important;
}

#nafa-daily-missions-panel .ndm-mission-v2 .ndm-mission-actions{
  position:relative !important;
  z-index:3 !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 88px !important;
  align-items:stretch !important;
  gap:8px !important;
  margin:0 !important;
}

#nafa-daily-missions-panel .ndm-mission-v2 .ndm-start-btn,
#nafa-daily-missions-panel .ndm-mission-v2 .ndm-skip-btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  width:auto !important;
  min-height:34px !important;
  height:34px !important;
  margin:0 !important;
  padding:6px 11px !important;
  border-radius:10px !important;
  font-size:10px !important;
  line-height:1 !important;
  font-weight:900 !important;
}

#nafa-daily-missions-panel .ndm-mission-v2 .ndm-start-btn{
  background:rgba(255,255,255,.13) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.55) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.07) !important;
}

#nafa-daily-missions-panel .ndm-mission-v2 .ndm-skip-btn{
  background:rgba(4,34,38,.17) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.30) !important;
  box-shadow:none !important;
}

#nafa-daily-missions-panel .ndm-v2-watermark{
  position:absolute !important;
  right:17px !important;
  bottom:39px !important;
  z-index:1 !important;
  display:block !important;
  font-size:68px !important;
  line-height:1 !important;
  opacity:.08 !important;
  filter:grayscale(1) brightness(3) !important;
  transform:rotate(-8deg) !important;
  pointer-events:none !important;
}

@media(max-width:760px){
  #nafa-daily-missions-panel .ndm-mission.ndm-mission-v2{
    min-height:176px !important;
    height:176px !important;
    padding:12px !important;
  }

  #nafa-daily-missions-panel .ndm-v2-content{
    grid-template-columns:42px minmax(0,1fr) !important;
    gap:10px !important;
    min-height:52px !important;
  }

  #nafa-daily-missions-panel .ndm-mission-v2 .ndm-icon{
    width:42px !important;
    height:42px !important;
    min-width:42px !important;
    font-size:20px !important;
  }

  #nafa-daily-missions-panel .ndm-mission-v2 h3{
    font-size:15px !important;
  }

  #nafa-daily-missions-panel .ndm-mission-v2 p{
    font-size:10px !important;
  }

  #nafa-daily-missions-panel .ndm-mission-v2 .ndm-mission-actions{
    grid-template-columns:minmax(0,1fr) 78px !important;
  }

  #nafa-daily-missions-panel .ndm-v2-watermark{
    right:11px !important;
    bottom:38px !important;
    font-size:58px !important;
  }
}


/* =========================================================
   SPRINT 1 — RÉCOMPENSE DE FIN DE JOURNÉE
   Sobre, premium, sans effet gaming excessif
   ========================================================= */

.ndrp-overlay{
  position:fixed;
  inset:0;
  z-index:2147482500;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  background:rgba(5,30,36,.64);
  backdrop-filter:blur(5px);
  opacity:0;
  visibility:hidden;
  transition:opacity .22s ease,visibility .22s ease;
}

.ndrp-overlay.is-visible{
  opacity:1;
  visibility:visible;
}

.ndrp-card{
  position:relative;
  width:min(420px,100%);
  padding:28px;
  border-radius:24px;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,210,105,.18),transparent 24%),
    linear-gradient(160deg,#ffffff 0%,#eef8f6 100%);
  color:#0b3b42;
  text-align:center;
  box-shadow:0 26px 70px rgba(0,0,0,.28);
  transform:translateY(14px) scale(.98);
  transition:transform .22s ease;
}

.ndrp-overlay.is-visible .ndrp-card{
  transform:translateY(0) scale(1);
}

.ndrp-close{
  position:absolute;
  top:13px;
  right:13px;
  width:34px;
  height:34px;
  border:0;
  border-radius:11px;
  background:rgba(8,47,58,.07);
  color:#466467;
  font-size:22px;
  cursor:pointer;
}

.ndrp-kicker{
  display:inline-flex;
  margin-bottom:14px;
  padding:6px 10px;
  border-radius:999px;
  background:#dff4f0;
  color:#0d7f77;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.ndrp-icon{
  width:66px;
  height:66px;
  display:grid;
  place-items:center;
  margin:0 auto 14px;
  border-radius:20px;
  background:linear-gradient(145deg,#0b5d63,#0d8b82);
  color:#fff;
  font-size:32px;
  box-shadow:0 10px 22px rgba(13,139,130,.20);
}

.ndrp-card h2{
  margin:0 0 7px;
  color:#0b3b42;
  font-size:23px;
}

.ndrp-card p{
  margin:0 0 18px;
  color:#647a7d;
  font-size:13px;
}

.ndrp-rewards{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  margin-bottom:18px;
}

.ndrp-rewards span{
  padding:12px 8px;
  border-radius:15px;
  background:#fff;
  border:1px solid rgba(13,139,130,.12);
}

.ndrp-rewards b,
.ndrp-rewards small{
  display:block;
}

.ndrp-rewards b{
  color:#0b5d63;
  font-size:15px;
}

.ndrp-rewards small{
  margin-top:3px;
  color:#7b8d90;
  font-size:9px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
}

.ndrp-primary{
  width:100%;
  min-height:43px;
  border:0;
  border-radius:13px;
  background:linear-gradient(135deg,#0b5d63,#0d8b82);
  color:#fff;
  font-weight:900;
  cursor:pointer;
}

@media(max-width:520px){
  .ndrp-overlay{
    align-items:flex-end;
    padding:10px;
  }

  .ndrp-card{
    width:100%;
    padding:22px 18px 18px;
    border-radius:22px 22px 16px 16px;
  }

  .ndrp-card h2{
    font-size:20px;
  }

  .ndrp-rewards{
    gap:6px;
  }

  .ndrp-rewards span{
    padding:10px 6px;
  }
}


/* =========================================================
   SPRINT 1 — SÉRIE QUOTIDIENNE + RÉCOMPENSE HEBDOMADAIRE
   ========================================================= */

#nafa-daily-missions-panel .ndm-top{
  grid-template-columns:1.15fr .9fr .9fr !important;
  gap:12px !important;
}

.ndm-streak-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:15px;
  border-radius:18px;
  background:linear-gradient(145deg,#fff8e9 0%,#ffefd0 100%);
  border:1px solid rgba(213,149,34,.16);
  box-shadow:0 8px 20px rgba(105,71,6,.07);
}

.ndm-streak-main{
  display:flex;
  align-items:center;
  gap:9px;
}

.ndm-streak-icon{
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:#fff;
  font-size:21px;
  box-shadow:0 5px 12px rgba(112,72,0,.08);
}

.ndm-streak-main strong{
  display:block;
  margin-top:2px;
  color:#7b5100;
  font-size:16px;
}

.ndm-weekly-mini{
  min-width:130px;
  text-align:right;
}

.ndm-weekly-mini > span{
  color:#7b5100;
  font-size:10px;
  font-weight:900;
}

.ndm-weekly-mini > div{
  height:6px;
  margin:5px 0 4px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(123,81,0,.13);
}

.ndm-weekly-mini > div i{
  display:block;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,#d89a28,#efb746);
  transition:width .3s ease;
}

.ndm-weekly-mini small{
  color:#987126;
  font-size:8.5px;
  font-weight:800;
}

@media(max-width:1100px){
  #nafa-daily-missions-panel .ndm-top{
    grid-template-columns:1fr 1fr !important;
  }

  .ndm-streak-card{
    grid-column:1 / -1;
  }
}

@media(max-width:700px){
  #nafa-daily-missions-panel .ndm-top{
    grid-template-columns:1fr !important;
  }

  .ndm-streak-card{
    grid-column:auto;
    padding:13px;
  }

  .ndm-weekly-mini{
    min-width:120px;
  }

  .ndm-streak-main strong{
    font-size:15px;
  }
}

/* =========================================================
   SPRINT 1.1 — COFFRE DE RÉCOMPENSE NAFA
   ========================================================= */
body.nafa-reward-chest-open{overflow:hidden}
.nrc-overlay{position:fixed;inset:0;z-index:10080;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(7,20,24,.74);backdrop-filter:blur(10px);opacity:0;visibility:hidden;transition:opacity .26s ease,visibility .26s ease}
.nrc-overlay.is-visible{opacity:1;visibility:visible}
.nrc-card{position:relative;width:min(470px,100%);max-height:calc(100dvh - 32px);overflow:auto;padding:32px 30px 28px;border:1px solid rgba(255,255,255,.72);border-radius:28px;background:linear-gradient(160deg,#fff 0%,#f5fbfa 55%,#f5f0ff 100%);box-shadow:0 30px 90px rgba(0,0,0,.32);text-align:center;transform:translateY(22px) scale(.97);transition:transform .32s cubic-bezier(.2,.8,.2,1)}
.nrc-overlay.is-visible .nrc-card{transform:translateY(0) scale(1)}
.nrc-close{position:absolute;top:14px;right:14px;width:38px;height:38px;border:0;border-radius:50%;background:rgba(9,70,69,.08);color:#174b4a;font-size:25px;line-height:1;cursor:pointer}
.nrc-intro{padding:0 26px}
.nrc-kicker{display:inline-flex;padding:7px 12px;border-radius:999px;background:#e9f7f4;color:#08756d;font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.nrc-intro h2{margin:14px 0 8px;color:#123b3d;font-size:clamp(24px,5vw,32px);line-height:1.08}
.nrc-intro p{margin:0;color:#607476;font-size:14px;line-height:1.55}
.nrc-stage{position:relative;height:215px;display:flex;align-items:center;justify-content:center;margin:2px 0 -2px;perspective:900px}
.nrc-glow{position:absolute;width:190px;height:105px;border-radius:50%;background:radial-gradient(circle,rgba(121,73,206,.45),rgba(121,73,206,0) 70%);filter:blur(8px);opacity:.52;transform:translateY(38px);transition:.45s ease}
.nrc-chest{position:relative;width:176px;height:126px;transform:translateY(18px);filter:drop-shadow(0 18px 16px rgba(31,42,42,.22))}
.nrc-chest-body{position:absolute;left:8px;right:8px;bottom:0;height:82px;border:5px solid #274c4d;border-radius:10px 10px 20px 20px;background:linear-gradient(135deg,#6d3f28,#a56539 48%,#71432c);box-shadow:inset 0 0 0 7px rgba(255,255,255,.08)}
.nrc-chest-body:before,.nrc-chest-lid:before{content:"";position:absolute;left:17px;right:17px;height:8px;border-radius:5px;background:linear-gradient(90deg,#aeb9b6,#e7ece9,#8f9d99)}
.nrc-chest-body:before{top:21px}
.nrc-chest-lid{position:absolute;z-index:2;left:0;right:0;top:12px;height:58px;border:5px solid #274c4d;border-radius:70px 70px 9px 9px;background:linear-gradient(135deg,#805035,#b97948 50%,#77452d);transform-origin:50% 100%;transition:transform .72s cubic-bezier(.2,.75,.15,1)}
.nrc-chest-lid:before{bottom:8px}
.nrc-lock{position:absolute;z-index:4;left:50%;top:-2px;display:grid;place-items:center;width:38px;height:43px;border:4px solid #274c4d;border-radius:9px;background:linear-gradient(145deg,#8e55d4,#6335a6);color:#fff;font:900 18px/1 Arial;transform:translateX(-50%);box-shadow:0 6px 14px rgba(82,42,139,.28)}
.nrc-sparkles i{position:absolute;width:8px;height:8px;border-radius:50%;background:#ffd878;opacity:0;box-shadow:0 0 14px #ffd878}
.nrc-sparkles i:nth-child(1){left:23%;top:34%}.nrc-sparkles i:nth-child(2){left:34%;top:14%}.nrc-sparkles i:nth-child(3){right:30%;top:17%}.nrc-sparkles i:nth-child(4){right:20%;top:42%}.nrc-sparkles i:nth-child(5){left:28%;bottom:23%}.nrc-sparkles i:nth-child(6){right:28%;bottom:18%}
.nrc-open-btn,.nrc-continue-btn{width:100%;min-height:52px;border:0;border-radius:16px;background:linear-gradient(135deg,#087f76,#075f60);color:#fff;font-size:15px;font-weight:900;cursor:pointer;box-shadow:0 12px 26px rgba(5,105,101,.24);transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}
.nrc-open-btn:hover,.nrc-continue-btn:hover{transform:translateY(-2px);box-shadow:0 16px 30px rgba(5,105,101,.3)}
.nrc-open-btn:disabled{opacity:.75;cursor:wait}
.nrc-result{display:none;opacity:0;transform:translateY(12px)}
.nrc-rarity{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;background:#eee9fa;color:#6939a8;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.nrc-result-icon{display:grid;place-items:center;width:82px;height:82px;margin:18px auto 12px;border-radius:24px;background:linear-gradient(145deg,#fff,#ece7fa);font-size:42px;box-shadow:0 14px 32px rgba(94,55,151,.18)}
.nrc-result h3{margin:0;color:#153e40;font-size:28px}.nrc-result>p{margin:8px auto 18px;max-width:330px;color:#66797a;font-size:14px;line-height:1.5}
.nrc-reward-list{display:grid;gap:8px;margin:14px 0 20px;text-align:left}
.nrc-reward-list span{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #dce8e6;border-radius:14px;background:rgba(255,255,255,.75)}
.nrc-reward-list b{color:#234b4c;font-size:13px}.nrc-reward-list small{color:#7b8d8e;font-size:11px;white-space:nowrap}
.nrc-overlay.is-opening .nrc-chest{animation:nrcChestShake .48s ease}
.nrc-overlay.is-open .nrc-chest-lid{transform:rotateX(-112deg) translateY(-4px)}
.nrc-overlay.is-open .nrc-glow{width:290px;height:180px;opacity:1;transform:translateY(10px);background:radial-gradient(circle,rgba(145,88,226,.7),rgba(255,218,112,.24) 42%,rgba(121,73,206,0) 72%)}
.nrc-overlay.is-open .nrc-sparkles i{animation:nrcSpark 1.15s ease-out both}
.nrc-overlay.is-open .nrc-sparkles i:nth-child(2){animation-delay:.08s}.nrc-overlay.is-open .nrc-sparkles i:nth-child(3){animation-delay:.14s}.nrc-overlay.is-open .nrc-sparkles i:nth-child(4){animation-delay:.2s}.nrc-overlay.is-open .nrc-sparkles i:nth-child(5){animation-delay:.1s}.nrc-overlay.is-open .nrc-sparkles i:nth-child(6){animation-delay:.24s}
.nrc-overlay.is-open .nrc-intro,.nrc-overlay.is-open .nrc-stage,.nrc-overlay.is-open .nrc-open-btn{display:none}
.nrc-overlay.is-open .nrc-result{display:block;animation:nrcReveal .45s ease forwards}
.nrc-rarity-common .nrc-rarity{background:#edf1f1;color:#617071}.nrc-rarity-uncommon .nrc-rarity{background:#e6f5f2;color:#08776f}.nrc-rarity-rare .nrc-rarity{background:#eee7fb;color:#6835aa}.nrc-rarity-epic .nrc-rarity{background:#fff0df;color:#a45317}.nrc-rarity-legendary .nrc-rarity{background:#fff5cf;color:#8c6500}
@keyframes nrcChestShake{0%,100%{transform:translateY(18px) rotate(0)}25%{transform:translateY(15px) rotate(-2deg)}55%{transform:translateY(15px) rotate(2deg)}75%{transform:translateY(16px) rotate(-1deg)}}
@keyframes nrcSpark{0%{opacity:0;transform:scale(.3) translateY(16px)}40%{opacity:1}100%{opacity:0;transform:scale(1.5) translateY(-34px)}}
@keyframes nrcReveal{to{opacity:1;transform:translateY(0)}}
@media(max-width:520px){.nrc-overlay{padding:12px;align-items:flex-end}.nrc-card{width:100%;max-height:calc(100dvh - 12px);padding:27px 20px 22px;border-radius:26px 26px 18px 18px}.nrc-stage{height:198px}.nrc-intro{padding:0 20px}.nrc-result h3{font-size:25px}}
@media(prefers-reduced-motion:reduce){.nrc-overlay,.nrc-card,.nrc-chest-lid,.nrc-glow{transition:none!important}.nrc-overlay.is-opening .nrc-chest,.nrc-overlay.is-open .nrc-sparkles i,.nrc-overlay.is-open .nrc-result{animation:none!important}.nrc-overlay.is-open .nrc-result{opacity:1;transform:none}}

/* Sprint 1.2 — Boutique des récompenses */
.nafa-rewards-shop{margin:0 0 28px;padding:24px;border:1px solid rgba(111,76,255,.16);border-radius:24px;background:linear-gradient(145deg,#fff 0%,#f8f6ff 100%);box-shadow:0 18px 45px rgba(56,37,121,.08)}
.nrs-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}.nrs-kicker{font-size:12px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:#7658d8}.nrs-head h2{margin:5px 0 5px;font-size:25px;color:#21183f}.nrs-head p{margin:0;color:#6f6980}.nrs-balance{min-width:142px;padding:13px 16px;border-radius:17px;background:#21183f;color:#fff;text-align:right}.nrs-balance span{display:block;font-size:11px;opacity:.72}.nrs-balance strong{display:block;margin-top:3px;font-size:21px}.nrs-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.nrs-card{display:flex;flex-direction:column;min-height:190px;padding:17px;border:1px solid #ece7fb;border-radius:19px;background:#fff;box-shadow:0 8px 22px rgba(35,24,63,.05)}.nrs-card.is-owned{background:#f5f2ff;border-color:#cfc3f5}.nrs-icon{width:45px;height:45px;display:grid;place-items:center;border-radius:14px;background:#f0ebff;font-size:24px}.nrs-card-body{flex:1;padding:13px 0}.nrs-title{font-weight:850;color:#251c42}.nrs-desc{margin-top:5px;font-size:13px;line-height:1.42;color:#746d83}.nrs-card-foot{display:flex;align-items:center;justify-content:space-between;gap:10px}.nrs-price{font-weight:850;color:#5e43b8}.nrs-card-foot button{border:0;border-radius:12px;padding:10px 13px;background:#6f4cff;color:#fff;font-weight:800;cursor:pointer}.nrs-card-foot button:disabled{background:#e8e4ef;color:#928b9d;cursor:not-allowed}.nrs-note{margin-top:15px;font-size:12px;color:#81798e}.nrs-toast{position:fixed;left:50%;bottom:90px;z-index:99999;transform:translate(-50%,14px);padding:12px 18px;border-radius:14px;background:#21183f;color:#fff;font-weight:750;opacity:0;transition:.2s}.nrs-toast.is-visible{opacity:1;transform:translate(-50%,0)}
@media(max-width:700px){.nafa-rewards-shop{padding:18px;margin-bottom:20px;border-radius:20px}.nrs-head{flex-direction:column}.nrs-balance{width:100%;text-align:left;box-sizing:border-box}.nrs-grid{grid-template-columns:1fr}.nrs-card{min-height:0}.nrs-head h2{font-size:22px}}

/* === Sprint 1.3 : Succès permanents NAFA === */
.nafa-achievements{margin:0 0 24px;padding:22px;border:1px solid #e4e7f1;border-radius:24px;background:linear-gradient(145deg,#fff 0%,#f8f9ff 100%);box-shadow:0 16px 40px rgba(34,42,78,.06)}
.nas-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.nas-kicker{text-transform:uppercase;letter-spacing:.09em;font-size:10px;font-weight:900;color:#6d5ce7}.nas-head h2{margin:4px 0 5px;font-size:23px;color:#20243d}.nas-head p{margin:0;font-size:13px;color:#777d91}.nas-count{min-width:92px;padding:11px 14px;border-radius:16px;background:#f0edff;text-align:center}.nas-count strong,.nas-count span{display:block}.nas-count strong{font-size:21px;color:#5543d7}.nas-count span{margin-top:2px;font-size:10px;font-weight:800;color:#8177b6;text-transform:uppercase}.nas-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.nas-card{display:flex;gap:13px;padding:15px;border:1px solid #e5e7ef;border-radius:18px;background:rgba(255,255,255,.88);opacity:.78;transition:.2s}.nas-card.is-unlocked{opacity:1;border-color:#d8cef9;background:linear-gradient(135deg,#fff 0%,#f5f1ff 100%);box-shadow:0 8px 22px rgba(86,67,215,.08)}.nas-icon{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:14px;background:#f1f2f7;font-size:21px}.nas-card.is-unlocked .nas-icon{background:#e9e2ff}.nas-copy{min-width:0;flex:1}.nas-title{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:14px;font-weight:900;color:#282c43}.nas-title span{padding:4px 7px;border-radius:999px;background:#e3f7eb;color:#267447;font-size:9px;text-transform:uppercase}.nas-copy p{margin:5px 0 10px;font-size:11px;line-height:1.45;color:#7b8090}.nas-progress{height:6px;border-radius:999px;background:#eceef4;overflow:hidden}.nas-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#6b5ce7,#9a67ec)}.nas-meta{display:flex;justify-content:space-between;gap:8px;margin-top:7px;font-size:10px;color:#8a8fa0}.nas-meta b{color:#6756d8}
@media(max-width:700px){.nafa-achievements{padding:17px;border-radius:20px}.nas-head{flex-direction:column}.nas-count{width:100%;box-sizing:border-box;text-align:left}.nas-count strong,.nas-count span{display:inline}.nas-count span{margin-left:5px}.nas-grid{grid-template-columns:1fr}.nas-card{padding:13px}}

/* Sprint 1.3 — Succès déplacés dans Mon espace */
.nafa-achievements-profile{margin:22px 0 26px}
.nas-validation{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:14px 0 18px;padding:14px 16px;border:1px solid var(--bdr);border-radius:14px;background:var(--sur2)}
.nas-validation>div{display:flex;flex-direction:column;gap:3px;min-width:0}
.nas-validation strong{font-size:13px;color:var(--tx)}
.nas-validation span{font-size:11px;color:var(--tx2)}
.nas-card.is-ready{border-color:rgba(113,79,176,.45);box-shadow:0 0 0 3px rgba(113,79,176,.08)}
.nas-card.is-ready .nas-title span{background:rgba(113,79,176,.12);color:#6d45af}
@media(max-width:700px){.nas-validation{align-items:stretch;flex-direction:column}.nas-validation .btn{width:100%}}


/* Sprint 1.3 — capsule premium de progression dans la topbar */
.nafa-top-progress{appearance:none;margin-left:auto;border:1px solid rgba(138,83,214,.78);background:linear-gradient(135deg,rgba(35,23,18,.97),rgba(24,18,24,.97));color:#fff;border-radius:18px;padding:8px 13px 8px 9px;display:flex;align-items:center;gap:11px;min-width:430px;max-width:520px;cursor:pointer;font:inherit;text-align:left;box-shadow:0 5px 18px rgba(15,7,20,.24),0 0 0 1px rgba(255,255,255,.06) inset;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;flex-shrink:0;overflow:hidden}
.nafa-top-progress:hover{border-color:rgba(168,111,244,.95);box-shadow:0 7px 23px rgba(15,7,20,.30),0 0 18px rgba(128,70,198,.24),0 0 0 1px rgba(255,255,255,.08) inset;transform:translateY(-1px)}
.nafa-top-progress:focus-visible{outline:3px solid rgba(190,147,247,.35);outline-offset:2px}
.ntp-emblem{position:relative;width:43px;height:47px;display:flex;align-items:center;justify-content:center;flex:0 0 43px;clip-path:polygon(50% 0,91% 17%,86% 78%,50% 100%,14% 78%,9% 17%);background:linear-gradient(160deg,#8c4ed3,#49206f);box-shadow:0 0 14px rgba(147,78,218,.52)}
.ntp-emblem::after{content:"";position:absolute;inset:3px;clip-path:inherit;border:1px solid rgba(255,255,255,.34)}
.ntp-emblem strong{position:relative;z-index:2;font-size:16px;line-height:1;font-weight:900;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.4)}
.ntp-crown{position:absolute;z-index:3;top:1px;font-size:10px;color:#ffd66b;line-height:1}
.ntp-identity{display:flex;flex-direction:column;gap:2px;min-width:94px;max-width:112px;overflow:hidden}
.ntp-identity strong{font-size:12px;font-weight:850;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fff}
.ntp-identity small{font-size:10px;font-weight:650;color:rgba(255,255,255,.67);white-space:nowrap}
.ntp-main{display:block;min-width:145px;flex:1}
.ntp-row{display:flex;justify-content:space-between;gap:10px;font-size:10px;font-weight:750;line-height:1;margin-bottom:7px;white-space:nowrap;color:rgba(255,255,255,.82)}
.ntp-row strong{font-size:11px;color:#fff}
.ntp-track{display:block;height:7px;border-radius:99px;background:rgba(255,255,255,.14);overflow:hidden;box-shadow:0 1px 0 rgba(255,255,255,.06) inset}
.ntp-track i{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#8d4ee2 0%,#ba82ef 52%,#ffd36a 100%);box-shadow:0 0 10px rgba(184,120,238,.42);transition:width .55s cubic-bezier(.22,.7,.2,1)}
.ntp-divider{width:1px;height:36px;background:rgba(255,255,255,.15);flex:0 0 1px}
.ntp-coins{display:flex;align-items:center;gap:7px;min-width:74px;color:#fff}
.ntp-coin-icon{position:relative;width:25px;height:25px;border-radius:50%;display:grid;place-items:center;font-size:0;background:linear-gradient(145deg,#ffd96f,#d99424);box-shadow:0 0 0 3px rgba(255,209,92,.13),0 2px 6px rgba(0,0,0,.25)}
.ntp-coin-icon::after{content:"N";font-size:11px;font-weight:950;color:#6e4510;border:1px solid rgba(110,69,16,.45);border-radius:50%;width:15px;height:15px;display:grid;place-items:center}
.ntp-coins>span:last-child{display:flex;flex-direction:column;line-height:1.05}
.ntp-coins strong{font-size:12px;font-weight:850;white-space:nowrap}
.ntp-coins small{font-size:9px;color:rgba(255,255,255,.62);margin-top:3px}
.nas-focus{animation:nasFocus 1.2s ease}
@keyframes nasFocus{0%,100%{outline:0 solid transparent}35%{outline:5px solid rgba(108,92,231,.16);outline-offset:4px}}
@media(max-width:1180px){.nafa-top-progress{min-width:330px}.ntp-identity{display:none}.ntp-main{min-width:125px}}
@media(max-width:900px){.nafa-top-progress{min-width:0;width:auto;padding:6px 8px;gap:0;border-radius:14px}.ntp-emblem{width:34px;height:37px;flex-basis:34px}.ntp-emblem strong{font-size:13px}.ntp-main,.ntp-divider,.ntp-coins,.ntp-identity{display:none}}
@media(max-width:520px){.nafa-top-progress{padding:5px 7px}.ntp-emblem{width:31px;height:34px;flex-basis:31px}.topbar-title{font-size:15px!important}}


/* Sprint 1.4 — Niveaux et titres NAFA */
.nas-title-journey{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:15px;margin-bottom:20px;padding:17px 18px;border:1px solid rgba(113,79,176,.22);border-radius:18px;background:linear-gradient(135deg,rgba(113,79,176,.09),rgba(222,177,75,.10));overflow:hidden}
.nas-title-medal{width:52px;height:58px;display:grid;place-items:center;border-radius:16px 16px 20px 20px;background:linear-gradient(145deg,#5c35a5,#8a5dde);color:#fff;font-size:24px;box-shadow:0 8px 18px rgba(74,40,132,.18)}
.nas-title-copy{min-width:0}.nas-title-copy>span{display:block;margin-bottom:2px;color:#756b82;font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.nas-title-copy>strong{display:block;color:#2d1e39;font-size:20px}.nas-title-copy small{display:block;margin-top:7px;color:#777080;font-size:11px}.nas-title-bar{height:8px;margin-top:10px;border-radius:999px;background:rgba(93,73,110,.12);overflow:hidden}.nas-title-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7443c5,#b675dc,#e0b24d);transition:width .35s ease}
.nas-title-level{min-width:70px;padding:9px 12px;border-left:1px solid rgba(83,61,97,.14);text-align:center}.nas-title-level b,.nas-title-level span{display:block}.nas-title-level b{color:#55347b;font-size:23px}.nas-title-level span{margin-top:1px;color:#81768a;font-size:9px;font-weight:900;text-transform:uppercase}
@media(max-width:700px){.nas-title-journey{grid-template-columns:auto minmax(0,1fr);padding:14px}.nas-title-medal{width:44px;height:49px;font-size:20px}.nas-title-level{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:5px;border-left:0;border-top:1px solid rgba(83,61,97,.12);padding:9px 0 0}.nas-title-level b{font-size:16px}.nas-title-level span{margin:0}}

/* Sprint 1.5 — Événements hebdomadaires */
.nafa-weekly-event{margin:0 0 22px}
.nwe-card{display:grid;grid-template-columns:150px minmax(0,1fr);overflow:hidden;border:1px solid rgba(91,43,133,.2);border-radius:22px;background:var(--sur,#fff);box-shadow:0 14px 34px rgba(61,34,18,.08)}
.nwe-visual{position:relative;display:flex;min-height:230px;align-items:center;justify-content:center;flex-direction:column;gap:14px;padding:24px;color:#fff;background:linear-gradient(155deg,#2a163e 0%,#5d2b87 55%,#a06ace 100%)}
.nwe-visual:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 20%,rgba(255,220,143,.3),transparent 36%);pointer-events:none}
.nwe-icon{position:relative;z-index:1;font-size:58px;filter:drop-shadow(0 9px 14px rgba(0,0,0,.25))}
.nwe-week{position:relative;z-index:1;font-size:10px;font-weight:900;letter-spacing:.14em;text-align:center;opacity:.9}
.nwe-main{min-width:0;padding:24px 26px}
.nwe-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.nwe-heading h2{margin:0 0 5px;font-size:22px;color:var(--tx,#20150f)}
.nwe-heading p{margin:0;color:var(--tx2,#75665c);font-size:13px}
.nwe-days{flex:0 0 auto;padding:7px 10px;border-radius:999px;background:#f4eafa;color:#5d2b87;font-size:11px;font-weight:800}
.nwe-period{margin-top:9px;color:var(--tx2,#75665c);font-size:11px;font-weight:700}
.nwe-objective{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-top:24px}
.nwe-objective strong{display:block;font-size:14px}
.nwe-objective span{display:block;margin-top:3px;color:var(--tx2,#75665c);font-size:12px}
.nwe-objective>b{color:#5d2b87;font-size:18px}
.nwe-progress{height:10px;margin-top:10px;overflow:hidden;border-radius:999px;background:#eee5dc}
.nwe-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#69319a,#b579dc 55%,#e7bd62);transition:width .45s ease}
.nwe-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:22px}
.nwe-rewards{display:flex;flex-wrap:wrap;gap:7px}
.nwe-rewards span{padding:7px 9px;border:1px solid #eadccf;border-radius:10px;background:#fffaf5;color:#5b473a;font-size:11px;font-weight:800}
.nwe-footer button{min-width:145px;white-space:nowrap}
.nwe-footer button:disabled{cursor:default;opacity:.62}
.nwe-card.is-claimed{border-color:rgba(27,132,98,.25)}
.nwe-card.is-claimed .nwe-visual{background:linear-gradient(155deg,#173a32,#1f745f)}
@media(max-width:760px){.nwe-card{grid-template-columns:1fr}.nwe-visual{min-height:112px;flex-direction:row}.nwe-icon{font-size:44px}.nwe-main{padding:19px}.nwe-heading,.nwe-footer{align-items:stretch;flex-direction:column}.nwe-days{align-self:flex-start}.nwe-footer button{width:100%}}

/* ===== Profil progression NAFA — refonte premium 28/07/2026 ===== */
.nafa-profile-gamification{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:18px;align-items:stretch;margin:18px 0 26px}
.nafa-profile-gamification-main{min-width:0;display:flex;flex-direction:column;gap:16px}
.nafa-weekly-event,.nafa-achievements-profile{margin:0!important}
.nafa-achievements-profile{padding:20px!important;border:1px solid rgba(73,50,103,.12)!important;border-radius:22px!important;background:rgba(255,255,255,.94)!important;box-shadow:0 10px 30px rgba(58,36,21,.06)!important}
.nwe-card{position:relative;display:grid!important;grid-template-columns:210px minmax(230px,.85fr) minmax(300px,1.25fr) 185px!important;min-height:250px;overflow:hidden;border:1px solid rgba(121,71,183,.5)!important;border-radius:22px!important;background:radial-gradient(circle at 85% 20%,rgba(113,179,76,.15),transparent 22%),linear-gradient(125deg,#26143f 0%,#39205f 52%,#241236 100%)!important;color:#fff;box-shadow:0 18px 38px rgba(40,19,67,.18)!important}
.nwe-card:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.02),transparent 45%,rgba(255,189,75,.03));pointer-events:none}
.nwe-theme-art,.nwe-intro,.nwe-challenge,.nwe-chest{position:relative;z-index:1}.nwe-theme-art{display:grid;place-items:center;min-height:250px;overflow:hidden}.nwe-theme-art:after{content:"";position:absolute;bottom:24px;width:132px;height:30px;border-radius:50%;background:radial-gradient(ellipse,rgba(119,55,209,.8),transparent 68%);filter:blur(4px)}
.nwe-art-glow{position:absolute;width:170px;height:170px;border-radius:50%;background:radial-gradient(circle,rgba(142,70,222,.42),rgba(88,33,146,.14) 45%,transparent 70%)}.nwe-icon{position:relative;z-index:2;font-size:92px!important;filter:drop-shadow(0 12px 18px rgba(0,0,0,.45))!important;transform:rotate(-6deg)}.nwe-art-notes{position:absolute;left:32px;top:30px;color:#f6b83d;font-size:29px;text-shadow:75px 25px 0 #74b84c,132px 140px 0 #8c50d8}
.nwe-intro{display:flex;flex-direction:column;justify-content:center;padding:28px 22px 28px 4px;border-right:1px solid rgba(255,255,255,.14)}.nwe-week{align-self:flex-start;padding:7px 10px;border-radius:6px;background:linear-gradient(135deg,#7845c0,#5f319c);font-size:10px!important;font-weight:900;letter-spacing:.04em!important;color:#fff}.nwe-intro h2{margin:14px 0 8px;font-size:26px;line-height:1.05;color:#fff}.nwe-intro p{margin:0;color:rgba(255,255,255,.8);font-size:13px;line-height:1.5}.nwe-period{margin-top:17px!important;color:rgba(255,255,255,.92)!important;font-size:12px!important}.nwe-days{align-self:flex-start;margin-top:13px;padding:8px 15px!important;border-radius:999px!important;background:linear-gradient(135deg,#4d812e,#6ca847)!important;color:#fff!important;font-size:11px!important;box-shadow:0 5px 15px rgba(67,119,39,.28)}
.nwe-challenge{display:flex;flex-direction:column;justify-content:center;padding:28px}.nwe-objective{display:block!important;margin:0!important}.nwe-objective strong{font-size:14px!important;color:#fff}.nwe-objective span{display:flex!important;align-items:baseline;gap:8px;margin-top:12px!important;color:#f0c95d!important;font-size:13px!important}.nwe-objective span b{font-size:29px;color:#fff;line-height:1}.nwe-progress{height:11px!important;margin-top:18px!important;background:rgba(255,255,255,.16)!important;box-shadow:inset 0 1px 3px rgba(0,0,0,.25)}.nwe-progress i{background:linear-gradient(90deg,#783ee3 0%,#c270ec 48%,#f4bd3d 100%)!important;box-shadow:0 0 12px rgba(172,97,237,.5)}.nwe-scale{display:flex;justify-content:space-between;margin-top:7px;color:rgba(255,255,255,.65);font-size:9px}.nwe-reward-title{margin-top:18px;padding-top:14px;border-top:1px solid rgba(255,255,255,.13);font-size:10px;font-weight:800;color:rgba(255,255,255,.7)}.nwe-rewards{display:flex!important;flex-wrap:wrap;gap:14px!important;margin-top:11px}.nwe-rewards span{padding:0!important;border:0!important;background:transparent!important;color:#fff!important;font-size:12px!important;white-space:nowrap}
.nwe-chest{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:22px 20px;background:radial-gradient(circle at 50% 42%,rgba(245,182,59,.22),transparent 42%)}.nwe-chest-visual{font-size:78px;filter:drop-shadow(0 13px 18px rgba(0,0,0,.4));animation:nweFloat 3s ease-in-out infinite}.nwe-action{width:100%;margin-top:20px;padding:11px 13px;border:1px solid rgba(182,119,238,.45);border-radius:12px;background:rgba(126,67,181,.22);color:#fff;font:inherit;font-size:11px;font-weight:800;cursor:pointer;transition:.2s}.nwe-action:not(:disabled):hover{background:#6da33f;border-color:#86c656;transform:translateY(-1px)}.nwe-action:disabled{cursor:default;opacity:.72}.nwe-card.is-claimed{border-color:rgba(111,174,74,.55)!important}.nwe-card.is-claimed .nwe-week,.nwe-card.is-claimed .nwe-days{background:linear-gradient(135deg,#437b2c,#68a33f)!important}@keyframes nweFloat{50%{transform:translateY(-7px)}}
.nas-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:18px!important;margin-bottom:18px!important}.nas-title-row{display:flex;align-items:center;gap:12px}.nas-title-row h2{margin:4px 0 5px!important;font-size:25px!important;color:#251738!important}.nas-kicker{color:#6734bd!important}.nas-count-inline{padding:6px 12px;border-radius:999px;background:#eee6fb;color:#6b3ac1;font-size:14px;font-weight:900}.nas-check-button{flex:0 0 auto;padding:12px 20px;border:0;border-radius:14px;background:linear-gradient(135deg,#76aa43,#4d8429);color:#fff;font:inherit;font-size:12px;font-weight:850;box-shadow:0 7px 17px rgba(70,126,37,.24);cursor:pointer;transition:.18s}.nas-check-button:hover{transform:translateY(-1px);box-shadow:0 9px 22px rgba(70,126,37,.3)}.nas-check-button:disabled{opacity:.65;cursor:wait}
.nas-grid{gap:12px!important}.nas-card{min-height:102px;padding:14px!important;border-color:#e5dfeb!important;border-radius:16px!important;background:#fff!important;opacity:1!important;box-shadow:0 5px 15px rgba(49,31,67,.04);transition:transform .18s,box-shadow .18s,border-color .18s}.nas-card:hover{transform:translateY(-2px);box-shadow:0 9px 22px rgba(49,31,67,.09);border-color:#d5c5e7!important}.nas-card.is-unlocked{border-color:#d6e9ca!important;background:linear-gradient(135deg,#fff,#fbfff8)!important}.nas-icon{width:48px!important;height:48px!important;flex-basis:48px!important;border-radius:13px!important;background:linear-gradient(145deg,#f0e8fb,#e2d5f4)!important;font-size:24px!important;box-shadow:inset 0 0 0 1px rgba(102,56,166,.08)}.nas-card.is-unlocked .nas-icon{background:linear-gradient(145deg,#edf7e5,#d9edc9)!important}.nas-title{font-size:13px!important;color:#251a36!important}.nas-title span{background:#e8f5df!important;color:#3b7929!important;border:1px solid #d8ebca}.nas-card:not(.is-unlocked) .nas-title span{background:#eee7fb!important;color:#6838be!important;border-color:#e4d8f6}.nas-copy p{margin:5px 0 10px!important;color:#797083!important}.nas-progress{height:5px!important;background:#eeeaf1!important}.nas-progress i{background:linear-gradient(90deg,#6f35d2,#8a48df)!important}.nas-card.is-unlocked .nas-progress i{background:linear-gradient(90deg,#6caa43,#4e8730)!important}.nas-meta b{color:#6f35d2!important}
.nafa-level-panel{min-width:0}.nlp-inner{position:sticky;top:92px;min-height:100%;display:flex;flex-direction:column;align-items:center;padding:27px 18px 22px;overflow:hidden;border:1px solid rgba(116,70,171,.52);border-radius:22px;background:radial-gradient(circle at 50% 12%,rgba(137,75,201,.25),transparent 30%),linear-gradient(180deg,#352059 0%,#201636 100%);color:#fff;box-shadow:0 18px 38px rgba(37,20,61,.18)}.nlp-emblem{position:relative;width:105px;height:118px;display:grid;place-items:center;margin:4px 0 12px;clip-path:polygon(50% 0,92% 16%,86% 76%,50% 100%,14% 76%,8% 16%);background:linear-gradient(150deg,#8c4cd3,#44216f);box-shadow:0 0 0 5px #e6ad37 inset,0 0 24px rgba(212,151,54,.35)}.nlp-emblem:after{content:"";position:absolute;inset:7px;clip-path:inherit;border:1px solid rgba(255,255,255,.35)}.nlp-emblem span{position:absolute;top:3px;color:#f2bd43;font-size:22px}.nlp-emblem strong{font-size:40px;text-shadow:0 2px 7px rgba(0,0,0,.35)}.nlp-inner h3{margin:0;font-size:20px}.nlp-inner>p{margin:5px 0 21px;color:rgba(255,255,255,.73);font-size:11px}.nlp-xp{width:100%;box-sizing:border-box;padding:13px 14px;border:1px solid rgba(255,255,255,.12);border-radius:13px;background:rgba(255,255,255,.045)}.nlp-xp strong{font-size:13px}.nlp-xp div{height:8px;margin-top:10px;border-radius:99px;background:rgba(255,255,255,.17);overflow:hidden}.nlp-xp i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8040df,#c272ee,#f0bc43)}.nlp-next{width:100%;box-sizing:border-box;margin-top:10px;padding:14px 12px;border:1px solid rgba(255,255,255,.1);border-radius:13px;background:rgba(255,255,255,.035);text-align:center;color:rgba(255,255,255,.82);font-size:11px;line-height:1.55}.nlp-next strong{display:block;color:#80c64f;font-size:13px}.nlp-benefits{width:100%;display:flex;align-items:center;gap:10px;margin-top:13px;padding:13px;border:0;border-radius:13px;background:linear-gradient(135deg,#edf9df,#dff1cc);color:#251a36;text-align:left;font:inherit;cursor:pointer}.nlp-benefits>span{display:flex;flex-direction:column;font-size:12px;font-weight:800}.nlp-benefits small{margin-top:3px;font-size:10px;font-weight:500}.nlp-features{width:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:15px}.nlp-features span{display:flex;flex-direction:column;align-items:center;gap:6px;color:#f1c04b;font-size:21px;text-align:center}.nlp-features small{color:rgba(255,255,255,.74);font-size:8px;line-height:1.25}.nlp-plants{position:absolute;bottom:-7px;left:0;right:0;color:#6eac43;font-size:38px;letter-spacing:8px;text-align:center;opacity:.8}.nlp-leaves{position:absolute;top:55px;color:#6faf45;font-size:38px;opacity:.85}.nlp-leaves-left{left:17px;transform:rotate(-20deg)}.nlp-leaves-right{right:17px;transform:scaleX(-1) rotate(-20deg)}
@media(max-width:1250px){.nafa-profile-gamification{grid-template-columns:minmax(0,1fr) 230px}.nwe-card{grid-template-columns:165px minmax(210px,.8fr) minmax(260px,1.2fr) 145px!important}.nwe-icon{font-size:75px!important}.nwe-chest-visual{font-size:62px}}
@media(max-width:1050px){.nafa-profile-gamification{grid-template-columns:1fr}.nafa-level-panel{order:-1}.nlp-inner{position:relative;top:auto;min-height:auto;display:grid;grid-template-columns:auto 1fr 1fr;align-items:center;gap:12px;text-align:left}.nlp-emblem{grid-row:1/4;width:76px;height:85px;margin:0}.nlp-emblem strong{font-size:28px}.nlp-inner h3,.nlp-inner>p{align-self:end;margin:0}.nlp-inner>p{align-self:start}.nlp-xp,.nlp-next{margin:0}.nlp-benefits,.nlp-features{display:none}.nlp-plants,.nlp-leaves{display:none}.nwe-card{grid-template-columns:180px 1fr 1fr!important}.nwe-chest{grid-column:3;grid-row:1;position:absolute;right:14px;bottom:13px;padding:0;background:none}.nwe-chest-visual{display:none}.nwe-action{width:auto;margin:0}}
@media(max-width:780px){.nafa-profile-gamification{margin-top:12px}.nwe-card{grid-template-columns:1fr!important}.nwe-theme-art{min-height:130px}.nwe-intro,.nwe-challenge{padding:20px!important;border:0}.nwe-chest{position:static;grid-column:auto;padding:0 20px 20px}.nwe-action{width:100%}.nas-head{flex-direction:column!important}.nas-check-button{width:100%}.nas-grid{grid-template-columns:1fr!important}.nlp-inner{grid-template-columns:auto 1fr}.nlp-xp,.nlp-next{grid-column:1/-1}}

/* =========================================================
   SPRINT 1.6 — MISSIONS INTELLIGENTES PAR PROFIL
   ========================================================= */
.ndm-hero-kickers{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:8px;
}
.ndm-profile-chip{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:4px 10px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:999px;
  background:rgba(255,255,255,.12);
  color:#fff;
  font-size:11px;
  font-weight:800;
  letter-spacing:.03em;
  backdrop-filter:blur(8px);
}
.ndm-profile-chip::before{
  content:'';
  width:7px;
  height:7px;
  margin-right:7px;
  border-radius:50%;
  background:#f4c45e;
  box-shadow:0 0 0 4px rgba(244,196,94,.14);
}
.ndm-profile-premium::before{background:#f1c75b;}
.ndm-profile-collectionneur::before{background:#9b72ff;}
.ndm-profile-revendeur::before{background:#69b34c;}
.ndm-profile-free::before{background:#65d2c7;}

.ndm-theme-collector{
  --ndm-card-accent:#7a47d4;
  --ndm-card-accent-soft:#efe8ff;
}
.ndm-theme-stock{
  --ndm-card-accent:#5b8d3b;
  --ndm-card-accent-soft:#edf7e7;
}
.ndm-theme-price{
  --ndm-card-accent:#b57a17;
  --ndm-card-accent-soft:#fff3d9;
}
.ndm-theme-collector .ndm-icon,
.ndm-theme-stock .ndm-icon,
.ndm-theme-price .ndm-icon{
  background:var(--ndm-card-accent-soft);
  color:var(--ndm-card-accent);
}
.ndm-theme-collector .ndm-bar i,
.ndm-theme-stock .ndm-bar i,
.ndm-theme-price .ndm-bar i{
  background:linear-gradient(90deg,var(--ndm-card-accent),#f1c75b);
}
.ndm-theme-collector .ndm-start-btn,
.ndm-theme-stock .ndm-start-btn,
.ndm-theme-price .ndm-start-btn{
  border-color:var(--ndm-card-accent);
}

@media (max-width:700px){
  .ndm-hero-kickers{gap:7px;}
  .ndm-profile-chip{font-size:10px;padding:3px 8px;min-height:23px;}
}

/* ══════════════════════════════════════════════════════════════
   CONFIRMATION DE DÉCONNEXION — MODALE NAFA
   Remplace définitivement le window.confirm() du navigateur.
   ══════════════════════════════════════════════════════════════ */
body.nafa-logout-open{overflow:hidden}
.nafa-logout-overlay{
  display:flex;position:fixed;inset:0;z-index:2147483000;
  align-items:center;justify-content:center;padding:24px;
  background:rgba(20,10,35,.66);backdrop-filter:blur(7px);
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .2s ease,visibility .2s ease
}
.nafa-logout-overlay.on{opacity:1;visibility:visible;pointer-events:auto}
.nafa-logout-dialog{
  position:relative;width:min(440px,100%);overflow:hidden;
  padding:28px;border:1px solid rgba(118,73,185,.2);border-radius:26px;
  background:linear-gradient(155deg,#fff 0%,#faf7ff 62%,#f1fff4 100%);
  box-shadow:0 28px 80px rgba(13,5,27,.38);
  color:#241531;text-align:center;
  transform:translateY(14px) scale(.98);transition:transform .22s ease
}
.nafa-logout-overlay.on .nafa-logout-dialog{transform:translateY(0) scale(1)}
.nafa-logout-close{
  position:absolute;top:14px;right:14px;width:36px;height:36px;
  display:grid;place-items:center;border:0;border-radius:50%;cursor:pointer;
  background:#f1ebf8;color:#654285;font-size:25px;line-height:1
}
.nafa-logout-close:hover{background:#e8ddf5;color:#3f215f}
.nafa-logout-brand{display:flex;align-items:center;gap:11px;text-align:left;margin-bottom:22px}
.nafa-logout-logo{
  width:48px;height:48px;display:grid;place-items:center;border-radius:15px;
  background:linear-gradient(145deg,#6f3b91,#4d2869);font-size:26px;
  box-shadow:0 8px 20px rgba(79,40,105,.24)
}
.nafa-logout-brand span{display:block;color:#4e276a;font-size:17px;font-weight:900;letter-spacing:.04em}
.nafa-logout-brand small{display:block;margin-top:2px;color:#756681;font-size:11px;font-weight:650}
.nafa-logout-icon{
  width:72px;height:72px;margin:0 auto 16px;display:grid;place-items:center;
  border-radius:24px;background:linear-gradient(145deg,#efe4fa,#daf4df);
  color:#5b2f79;font-size:38px;font-weight:900;transform:rotate(180deg)
}
.nafa-logout-dialog h2{margin:0 0 9px;color:#2b153b;font-size:25px;line-height:1.2;font-weight:900}
.nafa-logout-dialog p{max-width:350px;margin:0 auto;color:#74667e;font-size:14px;line-height:1.55}
.nafa-logout-error{
  display:none;margin:16px 0 0;padding:10px 12px;border-radius:12px;
  background:#fff0f1;color:#9d2430;font-size:12px;font-weight:700;text-align:left
}
.nafa-logout-error.on{display:block}
.nafa-logout-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}
.nafa-logout-actions button{
  min-height:48px;border-radius:14px;padding:0 15px;font:inherit;font-size:13px;font-weight:850;cursor:pointer
}
.nafa-logout-cancel{border:1px solid #ded3e7;background:#fff;color:#543569}
.nafa-logout-cancel:hover{background:#f7f2fb}
.nafa-logout-confirm{
  position:relative;border:0;color:#fff;
  background:linear-gradient(135deg,#653482,#7c469e 62%,#477f51 160%);
  box-shadow:0 10px 24px rgba(91,46,120,.24)
}
.nafa-logout-confirm:hover{filter:brightness(1.05)}
.nafa-logout-confirm:disabled{cursor:wait;opacity:.78}
.nafa-logout-spinner{
  display:none;width:18px;height:18px;margin:auto;border:2px solid rgba(255,255,255,.45);
  border-top-color:#fff;border-radius:50%;animation:nafaLogoutSpin .7s linear infinite
}
.nafa-logout-overlay.is-loading .nafa-logout-confirm-label{display:none}
.nafa-logout-overlay.is-loading .nafa-logout-spinner{display:block}
.nafa-logout-overlay.is-loading .nafa-logout-close,
.nafa-logout-overlay.is-loading .nafa-logout-cancel{pointer-events:none;opacity:.45}
@keyframes nafaLogoutSpin{to{transform:rotate(360deg)}}
@media(max-width:560px){
  .nafa-logout-overlay{align-items:flex-end;padding:12px 12px calc(12px + env(safe-area-inset-bottom,0px))}
  .nafa-logout-dialog{width:100%;padding:24px 18px 18px;border-radius:24px}
  .nafa-logout-actions{grid-template-columns:1fr}
  .nafa-logout-confirm{grid-row:1}
  .nafa-logout-cancel{grid-row:2}
}

/* ══ TUNNEL D'ACHAT COMMUNAUTÉ — livraison et récapitulatif ══ */
.purchase-section-title{margin:2px 0 9px;color:#2d3142;font-size:12px;font-weight:850;letter-spacing:.02em}
.purchase-shipping-list{display:grid;gap:8px;margin-bottom:14px}
.purchase-shipping-option{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:12px 13px;border:1.5px solid #e4e6ef;border-radius:15px;background:#fff;cursor:pointer;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}
.purchase-shipping-option:hover{border-color:#b9b1e8}
.purchase-shipping-option.is-selected{border-color:#6658d3;background:#f7f6ff;box-shadow:0 0 0 3px rgba(102,88,211,.09)}
.purchase-shipping-option input{width:17px;height:17px;margin:0;accent-color:#5b4fc7}
.purchase-shipping-option span{display:grid;gap:2px;min-width:0}
.purchase-shipping-option b{color:#252a3d;font-size:13px}
.purchase-shipping-option small{color:#747b8f;font-size:11px;line-height:1.35}
.purchase-shipping-option strong{color:#35305f;font-size:13px;white-space:nowrap}
@media(max-width:560px){
  .purchase-shipping-option{padding:11px 10px;gap:8px}
  .purchase-shipping-option small{font-size:10px}
}


/* ===== NAFA — Notifications vendeur après paiement ===== */
.nafa-sale-notification-button{position:relative;display:inline-grid;place-items:center;width:42px;height:42px;margin-right:7px;border:1px solid #e6e3ef;border-radius:14px;background:#fff;color:#21183f;cursor:pointer;box-shadow:0 5px 15px rgba(35,24,63,.06);transition:.18s ease}.nafa-sale-notification-button:hover{transform:translateY(-1px);border-color:#cfc3f5}.nafa-sale-notification-button.has-unread{background:#f5f1ff;border-color:#a990f2}.nafa-sale-bell-icon{font-size:19px;line-height:1}.nafa-sale-bell-count{position:absolute;top:-6px;right:-6px;display:none;place-items:center;min-width:20px;height:20px;padding:0 5px;border:2px solid #fff;border-radius:999px;background:#e43d5b;color:#fff;font-size:11px;font-weight:900}.nafa-sale-toast{position:fixed;right:22px;bottom:24px;z-index:100000;width:min(370px,calc(100vw - 28px));padding:18px 18px 16px;border:1px solid #d8cffa;border-radius:20px;background:#fff;box-shadow:0 24px 70px rgba(31,23,58,.25);opacity:0;transform:translateY(24px) scale(.98);transition:.22s ease}.nafa-sale-toast.is-visible{opacity:1;transform:none}.nafa-sale-toast-close{position:absolute;top:8px;right:10px;border:0;background:transparent;color:#787185;font-size:22px;cursor:pointer}.nafa-sale-toast-kicker{display:block;margin-bottom:7px;color:#6f4cff;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.nafa-sale-toast strong{display:block;padding-right:22px;color:#21183f;font-size:19px}.nafa-sale-toast p{margin:7px 0 14px;color:#716a80;font-size:13px;line-height:1.45}.nafa-sale-toast-open{width:100%;border:0;border-radius:12px;background:#6f4cff;color:#fff;padding:11px 14px;font-weight:850;cursor:pointer}@media(max-width:700px){.nafa-sale-notification-button{width:38px;height:38px;margin-right:4px;border-radius:12px}.nafa-sale-toast{right:14px;bottom:86px}}

/* NAFA — confirmation des étapes manuelles de transaction */
.tx-confirm-copy{margin:4px 0 20px;color:#667085;line-height:1.55;font-size:14px}
.tx-confirm-status{width:100%;justify-content:center}

/* Synchronisation marketplace : objet réservé / vendu */
.comm-market-card.is-reserved .comm-market-media img,.comm-market-card.is-sold .comm-market-media img{filter:saturate(.65);opacity:.82}.comm-market-card.is-reserved{border-color:#f1d08b}.comm-market-card.is-sold{opacity:.82}.comm-status-pill.is-reserved,.comm-item-availability.is-reserved{background:#fff4d8;color:#936000;border-color:#f0cf81}.comm-status-pill.is-sold,.comm-item-availability.is-sold{background:#eef1f5;color:#5f6875;border-color:#d4dae2}.comm-item-sale-locked{margin-top:15px;padding:15px 16px;border:1px solid #f0cf81;border-radius:16px;background:#fff8e7;display:flex;flex-direction:column;gap:5px;color:#694b0d}.comm-item-sale-locked strong{font-size:15px}.comm-item-sale-locked span{font-size:12px;line-height:1.45}.comm-item-sale-locked button{margin-top:7px;border:0;border-radius:11px;padding:10px 12px;background:#6f4cff;color:#fff;font-weight:850;cursor:pointer}.item-sale-status-box{display:flex;flex-direction:column;gap:6px;margin:0 0 14px;padding:13px 14px;border:1px solid #f0cf81;border-radius:14px;background:#fff8e7;color:#694b0d}.item-sale-status-box.is-complete{border-color:#d8dde5;background:#f4f6f8;color:#596270}.item-sale-status-box b{font-size:13px}.item-sale-status-box span{font-size:11px;line-height:1.45}.item-sale-status-box .btn{align-self:flex-start;margin-top:4px}

/* Historique permanent des transactions depuis la cloche */
.nafa-sale-transaction-panel{position:fixed;inset:0;z-index:100005;display:flex;justify-content:flex-end}.nafa-sale-panel-backdrop{position:absolute;inset:0;background:rgba(22,18,34,.42);backdrop-filter:blur(3px)}.nafa-sale-panel-card{position:relative;width:min(460px,calc(100vw - 22px));height:100%;background:#fff;box-shadow:-24px 0 70px rgba(25,19,44,.25);display:flex;flex-direction:column;animation:nafaSalePanelIn .2s ease}.nafa-sale-panel-card header{display:flex;align-items:center;justify-content:space-between;padding:24px 22px 18px;border-bottom:1px solid #ece9f2}.nafa-sale-panel-card header span{display:block;color:#6f4cff;font-size:11px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.nafa-sale-panel-card header h3{margin:4px 0 0;color:#21183f;font-size:23px}.nafa-sale-panel-close{width:40px;height:40px;border:1px solid #e5e0ef;border-radius:13px;background:#fff;color:#4f485c;font-size:25px;cursor:pointer}.nafa-sale-panel-list{overflow:auto;padding:12px}.nafa-sale-panel-row{position:relative;width:100%;display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;border:1px solid #ece9f2;border-radius:16px;background:#fff;text-align:left;cursor:pointer;margin-bottom:9px}.nafa-sale-panel-row:hover{border-color:#cfc3f5;background:#fbf9ff}.nafa-sale-panel-row.is-unread{border-color:#a990f2;background:#f8f5ff}.nafa-sale-panel-row>i{position:absolute;top:9px;right:9px;width:8px;height:8px;border-radius:50%;background:#e43d5b}.nafa-sale-panel-photo{width:54px;height:54px;border-radius:13px;overflow:hidden;background:#f3f1f7;display:grid;place-items:center}.nafa-sale-panel-photo img{width:100%;height:100%;object-fit:cover}.nafa-sale-panel-placeholder{font-size:22px}.nafa-sale-panel-copy{min-width:0}.nafa-sale-panel-copy b{display:block;color:#21183f;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nafa-sale-panel-copy small{display:block;margin-top:5px;color:#756e82;font-size:12px;line-height:1.35}.nafa-sale-panel-status{max-width:112px;padding:7px 9px;border-radius:999px;background:#f0ebff;color:#6748d7;font-size:10px;font-weight:850;text-align:center}.nafa-sale-panel-empty{display:flex;min-height:240px;align-items:center;justify-content:center;flex-direction:column;color:#716a80;text-align:center}.nafa-sale-panel-empty b{color:#21183f;font-size:18px;margin-bottom:6px}@keyframes nafaSalePanelIn{from{transform:translateX(30px);opacity:.65}to{transform:none;opacity:1}}@media(max-width:600px){.nafa-sale-panel-card{width:100%;height:min(82vh,720px);margin-top:auto;border-radius:24px 24px 0 0}.nafa-sale-transaction-panel{align-items:flex-end}.nafa-sale-panel-status{display:none}}


/* Clôture financière simulée du centre de transaction */
.tx-settlement-success{margin-top:14px;padding:14px 16px;border:1px solid #b9e5ce;border-radius:14px;background:#ecfbf3;display:flex;flex-direction:column;gap:4px;color:#176b45}
.tx-settlement-success b{font-size:14px}.tx-settlement-success span{font-size:13px;color:#24483a}.tx-settlement-success small{font-size:11px;color:#6b7f76}
.tx-payout-box{max-width:520px}.tx-payout-recap{margin:18px 0;border:1px solid #e3e7ef;border-radius:14px;overflow:hidden;background:#fff}
.tx-payout-recap>div{display:flex;justify-content:space-between;gap:20px;padding:13px 15px;border-bottom:1px solid #edf0f5;font-size:14px}.tx-payout-recap>div:last-child{border-bottom:0}
.tx-payout-recap span{color:#667085}.tx-payout-recap b{color:#172033}.tx-payout-recap .tx-payout-net{background:#edf9f3}.tx-payout-recap .tx-payout-net span,.tx-payout-recap .tx-payout-net b{color:#147a4f;font-weight:800}
.tx-simulate-payout{background:#147a4f!important;border-color:#147a4f!important}

/* NAFA Marketplace V2 — consentements et workflow transactionnel */
.tx-consent-panel{display:grid;grid-template-columns:1fr 1fr 1.35fr;gap:12px;margin:0 0 18px;padding:14px;border:1px solid rgba(15,23,42,.1);border-radius:18px;background:#fff}
.tx-consent-panel>div{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;background:#f8fafc}
.tx-consent-panel b,.tx-consent-panel small{display:block}.tx-consent-panel small{margin-top:3px;color:#64748b}
.tx-consent-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#e2e8f0;font-weight:800;color:#475569;flex:0 0 32px}
.tx-consent-icon.is-ok,.tx-consent-summary.is-ok{background:#ecfdf5;color:#047857}.tx-consent-summary{background:#fff7ed!important;color:#9a3412}
.tx-open-dispute{border-color:#ef4444!important;color:#b91c1c!important;background:#fff!important}
.tx-open-dispute:hover{background:#fef2f2!important}
@media(max-width:760px){.tx-consent-panel{grid-template-columns:1fr}.tx-consent-panel>div{min-height:58px}}


/* Correctif lisibilité — Centre de Transaction */
.tx-center-modal,.tx-center-modal *{box-sizing:border-box}
.tx-timeline h3,.tx-card-title h3,.tx-consent-panel b,.tx-ai-note b,.tx-pending b,.tx-history-row b{color:#1f2937!important}
.tx-card-title p,.tx-consent-panel small,.tx-history-row small{color:#667085!important}
.tx-card dt{color:#667085!important}.tx-card dd{color:#1f2937!important}
.tx-consent-summary.is-ok b{color:#087a55!important}
.tx-hero-trust small{color:#7b8497!important;opacity:1}.tx-hero-trust p{color:#667085!important}
.tx-card,.tx-timeline,.tx-consent-panel{color:#1f2937}
@media(max-width:800px){.tx-card-title h3{font-size:15px}.tx-card dl>div{align-items:flex-start}.tx-card dt,.tx-card dd{font-size:12px;overflow-wrap:anywhere}}

/* ================================================================
   PAGE MISSIONS DÉDIÉE + RAPPEL SUBTIL SUR L'ACCUEIL — 2026-07-31
   ================================================================ */
.missions-page{max-width:1240px;margin:0 auto;padding:28px 24px 96px}
.missions-page__header{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:22px}
.missions-page__eyebrow{display:block;color:#6d28d9;font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px}
.missions-page__header h1{margin:0;color:#111827;font-size:34px;line-height:1.08;letter-spacing:-.04em}
.missions-page__header p{max-width:720px;margin:9px 0 0;color:#64748b;font-size:15px;line-height:1.55}
.missions-page__help{border:1px solid #ddd6fe;background:#fff;color:#5b21b6;border-radius:14px;padding:11px 16px;font:inherit;font-weight:850;cursor:pointer;white-space:nowrap}
#nafa-missions-page-root .ndm-shell{margin:0;width:100%;max-width:none}
#nafa-missions-page-root .ndm-top{grid-template-columns:repeat(3,minmax(0,1fr))}

.nafa-home-mission-reminder{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin:14px 0 18px;padding:13px 16px;border:1px solid #e7e5e4;border-radius:18px;background:rgba(255,255,255,.92);box-shadow:0 8px 24px rgba(15,23,42,.05);cursor:pointer;transition:.18s ease}
.nafa-home-mission-reminder:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(15,23,42,.08)}
.nafa-home-mission-reminder__icon{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:#f3e8ff;font-size:20px}
.nafa-home-mission-reminder__copy{min-width:0}
.nafa-home-mission-reminder__top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}
.nafa-home-mission-reminder__top strong{font-size:13px;color:#111827}
.nafa-home-mission-reminder__top span{font-size:12px;font-weight:850;color:#6d28d9;white-space:nowrap}
.nafa-home-mission-reminder__bar{height:6px;border-radius:999px;background:#ede9fe;overflow:hidden}
.nafa-home-mission-reminder__bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7c3aed,#f59e0b)}
.nafa-home-mission-reminder__next{display:block;margin-top:6px;color:#64748b;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nafa-home-mission-reminder__arrow{color:#6d28d9;font-size:22px;font-weight:900}

/* L'ancien grand panneau n'est plus affiché sur l'accueil. */
#v-home #nafa-daily-missions-panel{display:none!important}

@media(max-width:760px){
  .missions-page{padding:18px 14px 90px}
  .missions-page__header{align-items:stretch;flex-direction:column}
  .missions-page__header h1{font-size:27px}
  .missions-page__help{width:100%}
  #nafa-missions-page-root .ndm-top{grid-template-columns:1fr}
  .nafa-home-mission-reminder{grid-template-columns:auto 1fr;padding:12px}
  .nafa-home-mission-reminder__arrow{display:none}
}

/* === Page Missions simple — 2026-07-31 === */
.missions-page{max-width:1180px;margin:0 auto;padding:28px 24px 110px}.missions-page__header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:22px}.missions-page__eyebrow,.missions-simple__eyebrow{display:block;font-size:11px;font-weight:900;letter-spacing:.11em;text-transform:uppercase;color:#6d28d9}.missions-page__header h1{margin:5px 0 7px;font-size:34px;color:#111827}.missions-page__header p{margin:0;max-width:690px;color:#64748b;line-height:1.55}.missions-page__help{border:1px solid #ddd6fe;background:#fff;color:#5b21b6;border-radius:12px;padding:11px 15px;font-weight:800;cursor:pointer}.missions-simple{display:grid;gap:22px}.missions-simple__summary{display:grid;grid-template-columns:1.4fr .8fr .9fr;gap:14px}.missions-simple__summary>div{background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:20px;box-shadow:0 8px 24px rgba(15,23,42,.05)}.missions-simple__summary span{display:block;font-size:12px;font-weight:800;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.missions-simple__summary strong{display:block;margin-top:7px;font-size:25px;color:#111827}.missions-simple__summary small{display:block;margin-top:7px;color:#64748b}.missions-simple__level>div{height:8px;background:#ede9fe;border-radius:999px;margin-top:13px;overflow:hidden}.missions-simple__level>div i{display:block;height:100%;background:linear-gradient(90deg,#7c3aed,#f4c95d);border-radius:inherit}.missions-simple__section{background:#fff;border:1px solid #e5e7eb;border-radius:22px;padding:24px;box-shadow:0 10px 30px rgba(15,23,42,.05)}.missions-simple__section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px}.missions-simple__section-head h2{margin:5px 0 5px;font-size:24px;color:#111827}.missions-simple__section-head p{margin:0;color:#64748b}.missions-simple__daily-reward{min-width:230px;background:#fff7ed;border:1px solid #fed7aa;border-radius:15px;padding:13px 15px}.missions-simple__daily-reward span,.missions-simple__daily-reward small{display:block;color:#9a3412;font-size:12px}.missions-simple__daily-reward strong{display:block;margin:4px 0;color:#7c2d12}.missions-simple__list{display:grid;gap:12px}.missions-simple__card{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:15px;border:1px solid #e5e7eb;border-radius:16px;padding:15px;background:#fff}.missions-simple__card.is-done{background:#f0fdf4;border-color:#bbf7d0}.missions-simple__status{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#ede9fe;color:#6d28d9;font-weight:900}.missions-simple__card.is-done .missions-simple__status{background:#16a34a;color:#fff}.missions-simple__card-title{display:flex;align-items:flex-start;gap:11px}.missions-simple__card-title>span{font-size:25px}.missions-simple__card h3{margin:0 0 4px;font-size:17px;color:#111827}.missions-simple__card p{margin:0;color:#64748b;font-size:13px}.missions-simple__progress{display:flex;align-items:center;gap:10px;margin-top:11px}.missions-simple__progress>div{height:7px;flex:1;background:#eef2f7;border-radius:999px;overflow:hidden}.missions-simple__progress i{display:block;height:100%;background:#7c3aed}.missions-simple__progress span{font-size:12px;color:#64748b;white-space:nowrap}.missions-simple__card-side{min-width:125px;text-align:right}.missions-simple__card-side strong,.missions-simple__card-side span,.missions-simple__card-side em{display:block}.missions-simple__card-side strong{color:#5b21b6}.missions-simple__card-side span{color:#a16207;font-size:13px;margin-top:2px}.missions-simple__card-side em{font-style:normal;color:#15803d;font-weight:800;margin-top:7px}.missions-simple__card-side button{margin-top:9px;border:0;border-radius:11px;background:#111827;color:#fff;padding:9px 13px;font-weight:800;cursor:pointer}.missions-simple__reward-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.missions-simple__reward-grid article{border:1px solid #e5e7eb;border-radius:16px;padding:17px;background:#fafafa}.missions-simple__reward-grid article>span{font-size:28px}.missions-simple__reward-grid h3{margin:10px 0 5px;font-size:16px}.missions-simple__reward-grid p{margin:0;color:#64748b;font-size:13px;line-height:1.45}.nafa-home-mission-reminder{width:100%;display:flex;align-items:center;gap:13px;margin:0 0 16px;padding:13px 15px;border:1px solid #e9d5ff;border-radius:16px;background:#fff;cursor:pointer;text-align:left}.nafa-home-mission-reminder__icon{font-size:24px}.nafa-home-mission-reminder__copy{flex:1;min-width:0}.nafa-home-mission-reminder__top{display:flex;justify-content:space-between;gap:12px;font-size:13px;color:#111827}.nafa-home-mission-reminder__top span{color:#7c3aed;font-weight:800}.nafa-home-mission-reminder__bar{display:block;height:6px;background:#f3e8ff;border-radius:999px;margin:8px 0 6px;overflow:hidden}.nafa-home-mission-reminder__bar i{display:block;height:100%;background:#7c3aed}.nafa-home-mission-reminder__next{font-size:12px;color:#64748b}.nafa-home-mission-reminder__arrow{font-size:26px;color:#7c3aed}
@media(max-width:800px){.missions-page{padding:18px 14px 100px}.missions-page__header,.missions-simple__section-head{display:block}.missions-page__help{margin-top:14px}.missions-simple__summary{grid-template-columns:1fr}.missions-simple__daily-reward{margin-top:14px;min-width:0}.missions-simple__card{grid-template-columns:34px 1fr}.missions-simple__card-side{grid-column:2;text-align:left;display:flex;align-items:center;gap:9px;flex-wrap:wrap}.missions-simple__card-side strong,.missions-simple__card-side span,.missions-simple__card-side em{display:inline}.missions-simple__card-side button{margin-top:0}.missions-simple__reward-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.missions-simple__reward-grid{grid-template-columns:1fr}.missions-page__header h1{font-size:27px}}


/* Missions — explication XP / Coins et catalogue complet */
.missions-gains-explainer{background:linear-gradient(135deg,#faf7ff,#fff)}
.missions-gains-explainer__grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.missions-gains-explainer__grid article{display:flex;gap:14px;align-items:flex-start;border:1px solid #e5e7eb;border-radius:17px;padding:18px;background:#fff}
.missions-gains-explainer__icon{display:flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;border-radius:14px;background:#f3e8ff;font-size:23px}
.missions-gains-explainer__grid h3{margin:0 0 6px;color:#111827;font-size:17px}
.missions-gains-explainer__grid h3 small{font-size:12px;color:#7c3aed}
.missions-gains-explainer__grid p{margin:0;color:#64748b;line-height:1.5;font-size:13px}
.missions-reward-catalog__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.missions-reward-card{display:grid;grid-template-columns:48px 1fr auto;gap:13px;align-items:center;border:1px solid #e5e7eb;border-radius:16px;padding:15px;background:#fff;transition:border-color .2s,box-shadow .2s}
.missions-reward-card.is-unlocked{border-color:#c4b5fd;box-shadow:0 6px 18px rgba(109,40,217,.08)}
.missions-reward-card.is-locked{background:#fafafa}
.missions-reward-card__icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:14px;background:#f3e8ff;font-size:23px}
.missions-reward-card.is-locked .missions-reward-card__icon{filter:grayscale(.35);opacity:.75}
.missions-reward-card__body h3{margin:0 0 4px;color:#111827;font-size:15px}
.missions-reward-card__body p{margin:0;color:#64748b;font-size:12px;line-height:1.45}
.missions-reward-card__price{text-align:right;min-width:150px}
.missions-reward-card__price strong,.missions-reward-card__price small{display:block}
.missions-reward-card__price strong{font-size:13px;color:#5b21b6}
.missions-reward-card__price small{margin-top:4px;font-size:11px;color:#64748b}
.missions-reward-card.is-unlocked .missions-reward-card__price small{color:#15803d;font-weight:800}
@media(max-width:800px){.missions-gains-explainer__grid,.missions-reward-catalog__grid{grid-template-columns:1fr}.missions-reward-card{grid-template-columns:44px 1fr}.missions-reward-card__price{grid-column:2;text-align:left;min-width:0}}

/* NAFA — récupération et affichage des récompenses */
.nrs-owned-count{display:inline-flex;margin-top:8px;padding:5px 8px;border-radius:999px;background:#eefaf2;color:#177a45;font-weight:800;font-size:11px}
.nafa-profile-rewards{padding:22px;border:1px solid #e7e9ef;border-radius:22px;background:#fff;box-shadow:0 12px 30px rgba(23,32,51,.06)}
.npr-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}
.npr-head span{display:block;font-size:11px;font-weight:900;letter-spacing:.08em;color:#6d28d9;margin-bottom:5px}
.npr-head h2{margin:0 0 5px;font-size:21px;color:#172033}
.npr-head p{margin:0;color:#667085;font-size:13px}
.npr-head button{border:1px solid #d8dce6;background:#fff;border-radius:12px;padding:10px 13px;font-weight:800;cursor:pointer;color:#172033;white-space:nowrap}
.npr-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.npr-stats article{padding:15px;border-radius:16px;background:#f7f8fb;border:1px solid #eceef3}
.npr-stats span,.npr-stats small{display:block;color:#667085;font-size:11px}
.npr-stats strong{display:block;font-size:24px;color:#172033;margin:4px 0}
.npr-active{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}
.npr-active article{display:flex;gap:10px;align-items:center;padding:12px;border-radius:14px;background:#faf9ff;border:1px solid #ebe7ff}
.npr-active article>span{font-size:22px}
.npr-active b,.npr-active small{display:block}.npr-active b{font-size:13px;color:#172033}.npr-active small{margin-top:3px;color:#667085;font-size:11px}
.npr-empty{margin-top:14px;padding:14px;border-radius:14px;background:#f8fafc;color:#667085;font-size:12px}
@media(max-width:700px){.nafa-profile-rewards{padding:16px}.npr-head{flex-direction:column}.npr-head button{width:100%}.npr-stats{grid-template-columns:1fr}.npr-active{grid-template-columns:1fr}}

/* NAFA - Utilisation claire des récompenses */
.npr-reward-card{align-items:flex-start!important;gap:12px!important}
.npr-reward-icon{flex:0 0 42px;width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:#f4f0ff;font-size:21px}
.npr-reward-copy{min-width:0;flex:1;display:flex;flex-direction:column;gap:7px}
.npr-reward-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px}
.npr-reward-title-row b{font-size:14px;color:#172033}
.npr-reward-title-row em{font-style:normal;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding:5px 8px;border-radius:999px;background:#eef8f2;color:#087a4d;white-space:nowrap}
.npr-reward-copy small{display:block;color:#68758a;line-height:1.45}
.npr-reward-copy button{align-self:flex-start;border:0;border-radius:10px;padding:8px 12px;background:#2f1655;color:#fff;font-size:12px;font-weight:800;cursor:pointer}
.npr-reward-copy button:hover{filter:brightness(1.08)}
@media(max-width:640px){.npr-reward-title-row{align-items:flex-start;flex-direction:column;gap:5px}.npr-reward-copy button{width:100%}}

/* ═══════════════════════════════════════════════════════════════
   ACCUEIL NAFA V2 — Assistant, Mes objets et À vendre
   Palette héritée de chaque profil existant.
   ═══════════════════════════════════════════════════════════════ */
#nafa-profile-dashboard-root{padding:18px 22px 8px;max-width:1500px;margin:0 auto}
body.nafa-profile-ready #v-home>.nafa-legacy-home{display:none!important}
.nah-dashboard{--nah-card:var(--pd-card,#fff);--nah-text:var(--pd-text,#17364a);--nah-muted:var(--pd-muted,#6b8290);--nah-line:var(--pd-line,#d9e8f0);--nah-accent:var(--pd-accent,#1385ba);--nah-accent2:var(--pd-accent2,#5bb9dc);color:var(--nah-text)}
.nah-free{--pd-card:#fff;--pd-text:#17364a;--pd-muted:#6b8290;--pd-line:#d9e8f0;--pd-accent:#1385ba;--pd-accent2:#5bb9dc}
.nah-premium{--pd-card:var(--premium-bg-main);--pd-text:var(--premium-text);--pd-muted:var(--premium-text-secondary);--pd-line:var(--premium-border);--pd-accent:var(--premium-primary);--pd-accent2:var(--premium-primary-hover);font-family:var(--premium-body-font)}
.nah-collectionneur{--pd-card:#fff9f3;--pd-text:#39212a;--pd-muted:#816b72;--pd-line:#dfc9c0;--pd-accent:#8e4054;--pd-accent2:#c77c62}
.nah-revendeur{--pd-card:#fff;--pd-text:#142b2e;--pd-muted:#61787b;--pd-line:#d1e0e1;--pd-accent:#128c84;--pd-accent2:#45bdb3}
.nah-dashboard *{box-sizing:border-box}.nah-dashboard button{font:inherit}
.nah-hero{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.45fr);gap:18px;padding:24px 26px;border:1px solid var(--nah-line);border-radius:24px;background:linear-gradient(135deg,color-mix(in srgb,var(--nah-accent) 12%,var(--nah-card)),var(--nah-card) 72%);box-shadow:0 12px 30px rgba(24,54,74,.08)}
.nah-eyebrow,.nah-panel-head span,.nah-opportunity span,.nah-side-panel>div>span{font-size:10px;letter-spacing:.12em;font-weight:900;color:var(--nah-accent)}
.nah-hero h1{font-size:15px;margin:6px 0 2px;color:var(--nah-muted)}.nah-hero h2{font-size:clamp(24px,2.4vw,36px);line-height:1.08;margin:6px 0 9px;max-width:800px}.nah-hero p{font-size:14px;line-height:1.5;color:var(--nah-muted);max-width:800px;margin:0}
.nah-primary,.nah-opportunity button{border:0;border-radius:12px;background:var(--nah-accent);color:#fff;font-weight:850;padding:11px 15px;margin-top:15px;cursor:pointer}
.nah-work-summary{border:1px solid color-mix(in srgb,var(--nah-accent) 28%,var(--nah-line));background:color-mix(in srgb,var(--nah-accent) 8%,var(--nah-card));border-radius:18px;padding:17px;display:flex;flex-direction:column;justify-content:center}.nah-work-summary>b{font-size:16px}.nah-work-summary>span{font-size:11px;color:var(--nah-muted);margin:4px 0 9px}.nah-work-summary ul{margin:0;padding:0;list-style:none;display:grid;gap:7px}.nah-work-summary li{font-size:12px}.nah-work-summary li:before{content:'✓';color:var(--nah-accent);font-weight:900;margin-right:7px}
.nah-main-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:14px 0}.nah-main-actions button{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px;text-align:left;border:1px solid var(--nah-line);border-radius:18px;background:var(--nah-card);padding:15px 17px;color:var(--nah-text);cursor:pointer;box-shadow:0 8px 20px rgba(24,54,74,.05)}.nah-main-actions button:hover{border-color:var(--nah-accent);transform:translateY(-1px)}.nah-main-actions i{width:46px;height:46px;border-radius:14px;background:color-mix(in srgb,var(--nah-accent) 13%,white);color:var(--nah-accent);display:grid;place-items:center;font-size:21px;font-style:normal}.nah-main-actions span{display:flex;flex-direction:column;gap:3px}.nah-main-actions b{font-size:16px}.nah-main-actions small{font-size:11px;color:var(--nah-muted)}.nah-main-actions em{font-style:normal;font-size:24px;color:var(--nah-accent)}
.nah-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-bottom:14px}.nah-metric{position:relative;border:1px solid var(--nah-line);border-radius:16px;background:var(--nah-card);padding:13px 14px;min-height:103px}.nah-metric>i{position:absolute;right:12px;top:12px;width:27px;height:27px;border-radius:9px;background:color-mix(in srgb,var(--nah-accent) 12%,white);color:var(--nah-accent);display:grid;place-items:center;font-style:normal}.nah-metric span,.nah-metric small{display:block;color:var(--nah-muted)}.nah-metric span{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.nah-metric strong{display:block;font-size:22px;margin:10px 0 3px}.nah-metric small{font-size:10px}
.nah-opportunity{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;border:1px solid color-mix(in srgb,#2b9b66 38%,var(--nah-line));border-radius:18px;padding:15px 18px;background:color-mix(in srgb,#2b9b66 9%,var(--nah-card));margin-bottom:14px}.nah-opportunity h3{font-size:17px;margin:4px 0}.nah-opportunity h3 strong{color:#168252}.nah-opportunity p{margin:0;color:var(--nah-muted);font-size:11px}.nah-opportunity button{background:#168252;margin:0;white-space:nowrap}
.nah-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);gap:14px}.nah-panel{border:1px solid var(--nah-line);border-radius:19px;background:var(--nah-card);padding:17px 18px}.nah-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:3px}.nah-panel-head h3,.nah-side-panel h3{font-size:18px;margin:4px 0}.nah-panel-head>b{font-size:10px;color:var(--nah-accent);background:color-mix(in srgb,var(--nah-accent) 10%,white);padding:6px 8px;border-radius:99px}
.nah-recommendation{display:grid;grid-template-columns:39px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid var(--nah-line)}.nah-recommendation:last-child{border-bottom:0;padding-bottom:0}.nah-recommendation>i{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--nah-accent) 10%,white);color:var(--nah-accent);font-style:normal;font-size:17px}.nah-recommendation b{font-size:13px}.nah-recommendation p{font-size:11px;line-height:1.35;color:var(--nah-muted);margin:3px 0 0}.nah-recommendation button,.nah-side-panel button{border:1px solid var(--nah-line);border-radius:10px;background:var(--nah-card);color:var(--nah-accent);font-weight:800;font-size:11px;padding:8px 10px;cursor:pointer;white-space:nowrap}.nah-recommendation.is-success>i{color:#168252;background:#e8f6ee}.nah-recommendation.is-warning>i{color:#b66c16;background:#fff1de}.nah-recommendation.is-info>i{color:#2677b8;background:#eaf4fb}
.nah-side-panel{display:grid;grid-template-columns:1fr;gap:13px}.nah-side-panel p{font-size:12px;line-height:1.45;color:var(--nah-muted);margin:5px 0 9px}.nah-side-panel button{border:0;padding:0;background:transparent}.nah-mini-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.nah-benefit{display:flex;gap:8px;align-items:flex-start;border:1px solid var(--nah-line);border-radius:12px;padding:9px;background:color-mix(in srgb,var(--nah-accent) 4%,var(--nah-card))}.nah-benefit>i{font-style:normal;color:var(--nah-accent);font-weight:900}.nah-benefit div{display:flex;flex-direction:column}.nah-benefit b{font-size:11px}.nah-benefit span{font-size:9px;line-height:1.3;color:var(--nah-muted)}
body.nafa-profile-ready #nafa-journey-root{max-width:1500px;margin:10px auto 0;padding:0 22px 20px}body.nafa-profile-ready .nafa-home-mission-reminder{min-height:58px!important;border-radius:16px!important}
@media(min-width:1100px) and (min-height:760px){.nah-dashboard{max-height:calc(100vh - 112px);overflow:hidden}.nah-hero{min-height:178px}.nah-grid{min-height:215px}}
@media(max-width:1050px){.nah-hero{grid-template-columns:1fr}.nah-work-summary{display:none}.nah-grid{grid-template-columns:1fr}.nah-dashboard{max-height:none!important;overflow:visible!important}}
@media(max-width:760px){#nafa-profile-dashboard-root{padding:12px 12px 4px}.nah-hero{padding:20px;border-radius:20px}.nah-hero h2{font-size:26px}.nah-main-actions{grid-template-columns:1fr}.nah-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.nah-opportunity{grid-template-columns:1fr}.nah-opportunity button{justify-self:start}.nah-recommendation{grid-template-columns:38px minmax(0,1fr)}.nah-recommendation button{grid-column:2;justify-self:start}.nah-mini-benefits{grid-template-columns:1fr 1fr}body.nafa-profile-ready #nafa-journey-root{padding:0 12px 110px}}

/* =========================================================
   ACCUEIL NAFA V2.1 — entrées principales renforcées + scroll
   ========================================================= */

/* La zone centrale doit rester la seule zone de défilement de l'application. */
html,
body {
  height: 100%;
}

.shell,
.shell-main,
.body {
  min-height: 0;
}

.body,
.content {
  overflow-x: hidden;
}

.content {
  overflow-y: auto !important;
  overscroll-behavior-y: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-gutter: stable;
}

#v-home {
  min-height: 100%;
  overflow: visible !important;
}

#nafa-profile-dashboard-root {
  overflow: visible !important;
  padding-bottom: 42px;
}

.nah-dashboard {
  max-height: none !important;
  height: auto !important;
  min-height: 0;
  overflow: visible !important;
}

/* Mes objets / À vendre deviennent les deux portes d'entrée de l'accueil. */
.nah-main-actions {
  gap: 18px;
  margin: 18px 0 16px;
}

.nah-main-actions button {
  position: relative;
  min-height: 112px;
  grid-template-columns: 64px minmax(0, 1fr) 42px;
  gap: 16px;
  padding: 20px 22px;
  border-width: 2px;
  border-color: color-mix(in srgb, var(--nah-accent) 54%, var(--nah-line));
  border-radius: 22px;
  background: linear-gradient(
    135deg,
    color-mix(in srgb, var(--nah-accent) 10%, var(--nah-card)),
    var(--nah-card) 72%
  );
  box-shadow: 0 12px 28px color-mix(in srgb, var(--nah-accent) 12%, transparent);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.nah-main-actions button:nth-child(2) {
  border-color: color-mix(in srgb, var(--nah-accent2) 62%, var(--nah-line));
  background: linear-gradient(
    135deg,
    color-mix(in srgb, var(--nah-accent2) 12%, var(--nah-card)),
    var(--nah-card) 72%
  );
}

.nah-main-actions button:hover {
  transform: translateY(-3px);
  border-color: var(--nah-accent);
  box-shadow: 0 16px 34px color-mix(in srgb, var(--nah-accent) 18%, transparent);
}

.nah-main-actions i {
  width: 62px;
  height: 62px;
  border-radius: 18px;
  font-size: 28px;
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--nah-accent) 18%, transparent);
}

.nah-main-actions b {
  font-size: 21px;
  line-height: 1.15;
}

.nah-main-actions small {
  max-width: 430px;
  font-size: 12px;
  line-height: 1.45;
}

.nah-main-actions em {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: var(--nah-accent);
  color: #fff;
  font-size: 24px;
  line-height: 1;
}

.nah-main-actions button:nth-child(2) em {
  background: var(--nah-accent2);
}

/* Neutralise l'ancienne règle qui bloquait la hauteur sur les grands écrans. */
@media (min-width: 1100px) and (min-height: 760px) {
  .nah-dashboard {
    max-height: none !important;
    overflow: visible !important;
  }
}

@media (max-width: 760px) {
  .nah-main-actions button {
    min-height: 96px;
    grid-template-columns: 52px minmax(0, 1fr) 34px;
    padding: 16px;
  }

  .nah-main-actions i {
    width: 50px;
    height: 50px;
    border-radius: 15px;
    font-size: 23px;
  }

  .nah-main-actions b {
    font-size: 18px;
  }

  .nah-main-actions em {
    width: 32px;
    height: 32px;
    font-size: 20px;
  }
}


/* =========================================================
   ACCUEIL NAFA V2.2 — vrais accès principaux + scroll fiable
   ========================================================= */
body.nafa-profile-ready .shell-main{
  min-height:0!important;
  overflow:hidden!important;
}
body.nafa-profile-ready .body{
  min-height:0!important;
  overflow:hidden!important;
}
body.nafa-profile-ready .content{
  min-height:0!important;
  height:100%!important;
  overflow-y:scroll!important;
  overflow-x:hidden!important;
  overscroll-behavior-y:auto!important;
  scrollbar-gutter:stable!important;
  -webkit-overflow-scrolling:touch!important;
}
body.nafa-profile-ready #v-home,
body.nafa-profile-ready #nafa-profile-dashboard-root,
body.nafa-profile-ready .nah-dashboard{
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}
body.nafa-profile-ready #v-home{
  padding-bottom:80px!important;
}

.nah-main-actions{
  position:relative;
  z-index:2;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:20px!important;
  margin:18px 0!important;
}
.nah-main-action{
  min-height:138px!important;
  padding:23px 24px!important;
  border:2px solid color-mix(in srgb,var(--nah-accent) 62%,var(--nah-line))!important;
  border-radius:24px!important;
  box-shadow:0 15px 34px color-mix(in srgb,var(--nah-accent) 15%,transparent)!important;
}
.nah-main-action--objects{
  background:linear-gradient(135deg,color-mix(in srgb,var(--nah-accent) 18%,var(--nah-card)),var(--nah-card) 68%)!important;
}
.nah-main-action--selling{
  border-color:color-mix(in srgb,var(--nah-accent2) 72%,var(--nah-line))!important;
  background:linear-gradient(135deg,color-mix(in srgb,var(--nah-accent2) 20%,var(--nah-card)),var(--nah-card) 68%)!important;
}
.nah-main-action i{
  width:70px!important;
  height:70px!important;
  border-radius:21px!important;
  font-size:32px!important;
}
.nah-main-action span{
  gap:6px!important;
}
.nah-main-action b{
  font-size:24px!important;
  letter-spacing:-.35px!important;
}
.nah-main-action small{
  font-size:13px!important;
  line-height:1.45!important;
}
.nah-main-action strong{
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  margin-top:8px!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--nah-accent) 12%,white)!important;
  color:var(--nah-accent)!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.03em!important;
  text-transform:uppercase!important;
}
.nah-main-action--selling strong{
  background:color-mix(in srgb,var(--nah-accent2) 14%,white)!important;
  color:color-mix(in srgb,var(--nah-accent2) 78%,#18202a)!important;
}
.nah-main-action em{
  width:44px!important;
  height:44px!important;
  font-size:28px!important;
}
@media(max-width:760px){
  .nah-main-actions{grid-template-columns:1fr!important;gap:12px!important}
  .nah-main-action{min-height:112px!important;padding:17px!important}
  .nah-main-action i{width:55px!important;height:55px!important;font-size:25px!important}
  .nah-main-action b{font-size:19px!important}
  .nah-main-action strong{display:none!important}
}

/* NAFA — Analyse automatique objets et annonces */
.nafa-analysis-modal{width:min(1040px,94vw);max-height:90vh}.nafa-analysis-modal .nf-modal-body{overflow-y:auto;padding:18px 22px 24px}.nafa-analysis-kicker,.nafa-edit-advice span{display:block;font-size:10px;letter-spacing:.11em;font-weight:800;color:var(--acc,#6b4ce6);margin-bottom:5px}.nafa-analysis-list{display:grid;gap:12px}.nafa-analysis-card{display:grid;grid-template-columns:78px minmax(0,1fr) auto;gap:15px;align-items:center;padding:15px;border:1px solid var(--bdr2,#ddd);border-radius:18px;background:var(--sur,#fff)}.nafa-analysis-photo{width:78px;height:78px;display:grid;place-items:center;border-radius:14px;background:var(--sur2,#f5f5f5);overflow:hidden;font-size:28px}.nafa-analysis-photo img{width:100%;height:100%;object-fit:cover}.nafa-analysis-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.nafa-analysis-title h4{margin:0;font-size:16px}.nafa-analysis-title span{font-size:11px;font-weight:700;padding:5px 8px;border-radius:999px;background:color-mix(in srgb,var(--acc,#6b4ce6) 12%,transparent);color:var(--acc,#6b4ce6)}.nafa-analysis-issues{display:grid;gap:6px;margin-top:9px}.nafa-analysis-issues>div{display:flex;gap:9px;align-items:flex-start}.nafa-analysis-issues i{font-style:normal;width:22px;text-align:center}.nafa-analysis-issues p{margin:0}.nafa-analysis-issues b{display:block;font-size:13px}.nafa-analysis-issues small{display:block;color:var(--mut,#666);font-size:12px;margin-top:1px}.nafa-analysis-actions{display:flex;flex-direction:column;gap:8px;min-width:150px}.nafa-analysis-actions button,.nafa-edit-advice button{border:1px solid var(--bdr2,#ddd);background:var(--sur,#fff);border-radius:11px;padding:9px 12px;font-weight:700;cursor:pointer}.nafa-analysis-actions button.primary,.nafa-edit-advice-head>button{background:var(--acc,#6b4ce6);color:#fff;border-color:var(--acc,#6b4ce6)}.nafa-analysis-empty{text-align:center;padding:42px 20px}.nafa-analysis-empty p{color:var(--mut,#666)}
.nafa-edit-advice{margin:14px 16px 4px;padding:16px;border:1px solid color-mix(in srgb,var(--acc,#6b4ce6) 45%,var(--bdr2,#ddd));border-radius:18px;background:color-mix(in srgb,var(--acc,#6b4ce6) 7%,var(--sur,#fff))}.nafa-edit-advice.is-ok{border-color:#8dcf9d;background:#f3fbf5}.nafa-edit-advice-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.nafa-edit-advice h3{margin:0 0 4px;font-size:17px}.nafa-edit-advice p{margin:0;color:var(--mut,#666);font-size:13px}.nafa-edit-advice-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:13px}.nafa-edit-advice-list article{display:flex;gap:9px;padding:10px;border:1px solid var(--bdr2,#ddd);border-radius:12px;background:var(--sur,#fff)}.nafa-edit-advice-list i{font-style:normal}.nafa-edit-advice-list b{font-size:13px}.nafa-edit-advice-list p{font-size:12px;margin-top:2px}.nafa-edit-suggestions{display:grid;gap:8px;margin-top:10px}.nafa-edit-suggestions>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:12px;background:var(--sur,#fff);border:1px dashed var(--bdr2,#ddd)}.nafa-edit-suggestions p{min-width:0}.nafa-edit-suggestions b,.nafa-edit-suggestions small{display:block}.nafa-edit-suggestions small{white-space:pre-line;max-height:58px;overflow:hidden;margin-top:3px}.nafa-field-applied{outline:3px solid color-mix(in srgb,var(--acc,#6b4ce6) 35%,transparent)!important}
@media(max-width:720px){.nafa-analysis-card{grid-template-columns:58px minmax(0,1fr)}.nafa-analysis-photo{width:58px;height:58px}.nafa-analysis-actions{grid-column:1/-1;flex-direction:row;min-width:0}.nafa-analysis-actions button{flex:1}.nafa-edit-advice-head{flex-direction:column}.nafa-edit-advice-list{grid-template-columns:1fr}}

/* NAFA — Analyse V1 et rappel missions renforcé */
.nafa-edit-advice{border:1px solid color-mix(in srgb,var(--accent,#6d28d9) 30%,#d7dbe7);border-radius:20px;padding:18px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent,#6d28d9) 7%,#fff),#fff);margin:0 0 18px}
.nafa-edit-advice-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}
.nafa-edit-advice-head span,.nafa-analysis-kicker{font-size:11px;font-weight:900;letter-spacing:.1em;color:var(--accent,#6d28d9)}
.nafa-edit-advice-head h3{margin:5px 0 4px;font-size:20px}
.nafa-edit-advice-head p,.nafa-analysis-why p{margin:0;color:#64748b;line-height:1.45}
.nafa-edit-advice-head>button,.nafa-edit-advice-list article>button,.nafa-edit-suggestions button{border:0;border-radius:11px;padding:9px 12px;font-weight:800;background:var(--accent,#6d28d9);color:#fff;cursor:pointer}
.nafa-analysis-why{padding:12px 14px;border-radius:14px;background:#fff7ed;border:1px solid #fed7aa;margin-bottom:12px}
.nafa-analysis-why b{display:block;margin-bottom:4px;color:#9a3412}
.nafa-edit-advice-list{display:grid;gap:9px}
.nafa-edit-advice-list article{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:11px;align-items:start;padding:12px;border-radius:14px;background:#fff;border:1px solid #e7e9ef}
.nafa-edit-advice-list article>i{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:color-mix(in srgb,var(--accent,#6d28d9) 10%,#fff);font-style:normal;font-weight:900;color:var(--accent,#6d28d9)}
.nafa-edit-advice-list b{display:block;margin-bottom:3px}.nafa-edit-advice-list p{margin:0;color:#475569;line-height:1.4}.nafa-edit-advice-list small{display:block;margin-top:6px;color:#64748b}.nafa-edit-advice-list small strong{color:#166534}
.nafa-edit-suggestions{margin-top:14px;padding-top:14px;border-top:1px solid #e7e9ef}.nafa-edit-suggestions h4{margin:0 0 10px}.nafa-edit-suggestions>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid #eef0f4}.nafa-edit-suggestions p{margin:0}.nafa-edit-suggestions small{display:block;margin-top:4px;white-space:pre-line;color:#64748b;max-height:90px;overflow:auto}
.nafa-field-applied{outline:3px solid color-mix(in srgb,var(--accent,#6d28d9) 35%,transparent)!important;transition:outline .2s}
.nafa-analysis-title>div small{display:block;margin-top:3px;color:#64748b}
.nafa-home-mission-reminder__reward{display:block;margin-top:4px;font-size:12px;font-weight:800;color:var(--accent,#6d28d9)}
.nafa-home-mission-reminder.is-complete{opacity:.82}
@media(max-width:700px){.nafa-edit-advice-head{flex-direction:column}.nafa-edit-advice-list article{grid-template-columns:38px minmax(0,1fr)}.nafa-edit-advice-list article>button{grid-column:2;justify-self:start}.nafa-edit-suggestions>div{grid-template-columns:1fr}.nafa-edit-suggestions button{justify-self:start}}

/* NAFA — rappel compact d'une mission réellement en cours */
.nafa-active-mission-dock{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:1200;
  width:min(440px,calc(100vw - 32px));
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  padding:14px 16px;
  border:1px solid color-mix(in srgb,var(--accent,#6d28d9) 28%,#fff);
  border-radius:18px;
  background:rgba(255,255,255,.97);
  box-shadow:0 16px 44px rgba(31,41,55,.18);
  backdrop-filter:blur(10px);
}
.nafa-active-mission-dock .namd-icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:13px;
  background:color-mix(in srgb,var(--accent,#6d28d9) 12%,#fff);
  font-size:21px;
}
.nafa-active-mission-dock .namd-content{min-width:0;display:grid;gap:3px}
.nafa-active-mission-dock .namd-eyebrow{font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:var(--accent,#6d28d9)}
.nafa-active-mission-dock .namd-title{font-size:14px;color:#171717;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nafa-active-mission-dock .namd-progress{height:6px;border-radius:999px;background:#ede9fe;overflow:hidden;margin-top:3px}
.nafa-active-mission-dock .namd-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent,#6d28d9),#f59e0b)}
.nafa-active-mission-dock .namd-meta{font-size:11px;font-weight:750;color:#64748b}
.nafa-active-mission-dock .namd-continue{border:0;border-radius:11px;padding:9px 12px;background:var(--accent,#6d28d9);color:#fff;font-weight:850;cursor:pointer;white-space:nowrap}
.nafa-active-mission-dock .namd-close{position:absolute;top:-9px;right:-9px;width:26px;height:26px;border:1px solid #e5e7eb;border-radius:50%;background:#fff;color:#64748b;font-size:17px;line-height:1;cursor:pointer;box-shadow:0 5px 14px rgba(15,23,42,.12)}
@media(max-width:640px){
  .nafa-active-mission-dock{left:12px;right:12px;bottom:82px;width:auto;grid-template-columns:38px minmax(0,1fr);padding:12px 13px}
  .nafa-active-mission-dock .namd-icon{width:38px;height:38px}
  .nafa-active-mission-dock .namd-continue{grid-column:2;justify-self:start;padding:8px 11px}
}

/* =========================================================
   NAFA — Page Mon profil (correctif d'affichage 2026-08-01)
   Les composants sont rendus par auth.js dans #profile-page-body.
   ========================================================= */
#v-profile{
  background:var(--profile-bg,var(--premium-bg-main));
}

#profile-page-body{
  width:100%;
  min-width:0;
}

.nafa-account-page{
  width:min(1380px,100%);
  margin:0 auto;
  padding:28px 30px 64px;
  color:var(--tx,#172033);
  box-sizing:border-box;
}

.nafa-account-page *,
.nafa-account-page *::before,
.nafa-account-page *::after{
  box-sizing:border-box;
}

.nafa-account-hero,
.nafa-wallet-shell,
.nafa-account-section{
  width:100%;
  margin:0 0 18px;
  border:1px solid rgba(72,48,30,.10);
  border-radius:24px;
  background:rgba(255,255,255,.92);
  box-shadow:0 12px 32px rgba(65,43,26,.07);
}

.nafa-account-hero{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:28px 30px;
}

.nafa-account-identity{
  display:flex;
  align-items:center;
  gap:18px;
  min-width:0;
}

.nafa-account-avatar{
  display:grid;
  place-items:center;
  width:72px;
  height:72px;
  flex:0 0 72px;
  border-radius:22px;
  background:linear-gradient(145deg,var(--profile-nav,var(--premium-primary)),var(--profile-nav-2,var(--premium-primary-hover)));
  color:#fff;
  font-size:29px;
  font-weight:900;
  box-shadow:0 12px 26px rgba(71,48,30,.22);
}

.nafa-account-identity-copy{
  min-width:0;
}

.nafa-account-eyebrow{
  display:block;
  margin:0 0 5px;
  color:var(--profile-nav,var(--premium-primary));
  font-size:10px;
  font-weight:900;
  letter-spacing:.12em;
  line-height:1.3;
  text-transform:uppercase;
}

.nafa-account-hero h1,
.nafa-wallet-heading h2,
.nafa-account-section h2{
  margin:0;
  color:#152039;
  letter-spacing:-.025em;
}

.nafa-account-hero h1{
  font-size:clamp(27px,3vw,39px);
  line-height:1.08;
}

.nafa-account-identity-copy>p{
  margin:7px 0 10px;
  color:#687387;
  font-size:13px;
}

.nafa-account-meta{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}

.nafa-account-meta span{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 10px;
  border:1px solid #e5dfd7;
  border-radius:999px;
  background:#faf7f2;
  color:#594736;
  font-size:11px;
  font-weight:800;
}

.nafa-account-outline-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 17px;
  border:1px solid rgba(71,48,30,.22);
  border-radius:14px;
  background:#fff;
  color:var(--profile-nav,var(--premium-primary));
  font:inherit;
  font-size:12px;
  font-weight:900;
  cursor:pointer;
  white-space:nowrap;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}

.nafa-account-outline-btn:hover{
  transform:translateY(-1px);
  border-color:var(--profile-nav,var(--premium-primary));
  box-shadow:0 8px 18px rgba(65,43,26,.10);
}

.nafa-wallet-shell,
.nafa-account-section{
  padding:24px;
}

.nafa-wallet-heading{
  display:flex;
  justify-content:space-between;
  gap:18px;
  margin-bottom:16px;
}

.nafa-wallet-heading h2,
.nafa-account-section h2{
  font-size:21px;
  line-height:1.2;
}

.nafa-wallet-heading p{
  max-width:820px;
  margin:7px 0 0;
  color:#778195;
  font-size:12px;
  line-height:1.55;
}

.nafa-financial-center-root:empty{
  display:none;
}

.nafa-account-grid{
  display:grid;
  gap:12px;
  margin-top:15px;
}

.nafa-account-grid-2{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.nafa-account-grid-3{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

.nafa-account-tile,
.nafa-account-card{
  appearance:none;
  width:100%;
  border:1px solid #e5e8ef;
  border-radius:17px;
  background:#fff;
  color:#172033;
  font:inherit;
  cursor:pointer;
  text-align:left;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease;
}

.nafa-account-tile:hover,
.nafa-account-card:hover{
  transform:translateY(-2px);
  border-color:rgba(71,48,30,.28);
  background:#fffdf9;
  box-shadow:0 10px 24px rgba(45,39,31,.08);
}

.nafa-account-tile{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  min-height:76px;
  padding:15px 16px;
}

.nafa-account-tile-icon{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  flex:0 0 42px;
  border-radius:14px;
  background:#f5efe7;
  font-size:20px;
}

.nafa-account-tile>span:nth-child(2){
  min-width:0;
}

.nafa-account-tile b,
.nafa-account-tile small,
.nafa-account-card b,
.nafa-account-card small,
.nafa-account-card em{
  display:block;
}

.nafa-account-tile b,
.nafa-account-card b{
  color:#1b2539;
  font-size:13px;
  font-weight:900;
  line-height:1.3;
}

.nafa-account-tile small,
.nafa-account-card small{
  margin-top:4px;
  color:#7b8495;
  font-size:10px;
  font-style:normal;
  line-height:1.4;
}

.nafa-account-tile>i{
  color:#9aa2b0;
  font-size:24px;
  font-style:normal;
}

.nafa-account-card{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  min-height:164px;
  padding:17px;
}

.nafa-account-card .nafa-account-tile-icon{
  margin-bottom:13px;
}

.nafa-account-card em{
  margin-top:auto;
  padding-top:13px;
  color:var(--profile-nav,var(--premium-primary));
  font-size:10px;
  font-style:normal;
  font-weight:900;
}

.nafa-profile-rewards{
  width:100%;
  margin:0 0 18px;
}

.nafa-profile-rewards:empty{
  display:none;
}

.nafa-account-legal{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:9px;
  margin-top:15px;
}

.nafa-account-legal button{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-height:48px;
  padding:11px 13px;
  border:1px solid #e5e8ef;
  border-radius:14px;
  background:#fff;
  color:#384457;
  font:inherit;
  font-size:10px;
  font-weight:800;
  line-height:1.3;
  text-align:left;
  cursor:pointer;
}

.nafa-account-legal button:hover{
  border-color:rgba(71,48,30,.28);
  background:#fffdf9;
}

.nafa-account-legal button span{
  color:#9ca4b1;
  font-size:18px;
}

.nafa-account-logout{
  display:flex;
  justify-content:flex-end;
  padding-top:2px;
}

.nafa-account-logout .btn-danger{
  min-height:44px;
  padding:0 18px;
  border-radius:14px;
}

@media(max-width:1100px){
  .nafa-account-grid-3{grid-template-columns:repeat(2,minmax(0,1fr));}
  .nafa-account-legal{grid-template-columns:repeat(2,minmax(0,1fr));}
}

@media(max-width:760px){
  .nafa-account-page{padding:14px 12px 110px;}
  .nafa-account-hero,.nafa-wallet-shell,.nafa-account-section{border-radius:20px;margin-bottom:12px;}
  .nafa-account-hero{align-items:flex-start;padding:20px;}
  .nafa-account-avatar{width:56px;height:56px;flex-basis:56px;border-radius:18px;font-size:23px;}
  .nafa-account-hero h1{font-size:25px;}
  .nafa-account-outline-btn{min-height:40px;padding:0 13px;}
  .nafa-wallet-shell,.nafa-account-section{padding:18px;}
  .nafa-account-grid-2,.nafa-account-grid-3{grid-template-columns:1fr;}
  .nafa-account-card{min-height:138px;}
  .nafa-account-legal{grid-template-columns:1fr;}
}

@media(max-width:520px){
  .nafa-account-hero{flex-direction:column;}
  .nafa-account-outline-btn{width:100%;}
  .nafa-account-identity{align-items:flex-start;gap:13px;}
  .nafa-account-meta{gap:6px;}
  .nafa-account-tile{padding:13px;}
}

/* =========================================================
   RESTAURATION MISSIONS + PROFIL — 2026-08-01
   Bloc final volontairement placé en fin de feuille afin de
   neutraliser les anciens styles concurrents sans toucher aux
   autres pages de NAFA.
   ========================================================= */

/* --- Page Missions dédiée --- */
#v-missions.on{
  display:block!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  min-height:0!important;
  background:var(--profile-bg,var(--premium-bg-main));
}
#v-missions .missions-page{
  display:block!important;
  width:min(1240px,100%)!important;
  max-width:1240px!important;
  margin:0 auto!important;
  padding:28px 24px 120px!important;
  box-sizing:border-box!important;
}
#v-missions .missions-page__header{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:20px!important;
  margin:0 0 22px!important;
}
#v-missions .missions-page__header h1{
  margin:0!important;
  color:#172033!important;
  font-size:clamp(28px,3vw,38px)!important;
  line-height:1.08!important;
}
#v-missions .missions-page__header p{
  max-width:760px!important;
  margin:8px 0 0!important;
  color:#667085!important;
  font-size:14px!important;
  line-height:1.55!important;
}
#v-missions #nafa-missions-page-root,
#v-missions #nafa-daily-missions-panel,
#v-missions .missions-simple{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-height:1px!important;
}
#v-missions .missions-simple__summary{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
  margin-bottom:16px!important;
}
#v-missions .missions-simple__summary>div,
#v-missions .missions-simple__section{
  border:1px solid rgba(72,48,30,.11)!important;
  border-radius:20px!important;
  background:rgba(255,255,255,.94)!important;
  box-shadow:0 10px 28px rgba(65,43,26,.06)!important;
}
#v-missions .missions-simple__summary>div{
  min-height:118px!important;
  padding:18px!important;
}
#v-missions .missions-simple__section{
  margin:0 0 16px!important;
  padding:20px!important;
}
#v-missions .missions-simple__card{
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr) 170px!important;
  align-items:center!important;
  gap:14px!important;
  margin-top:10px!important;
  padding:15px!important;
  border:1px solid #e5e7eb!important;
  border-radius:16px!important;
  background:#fff!important;
}
#v-missions .missions-reward-catalog__grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
}

/* --- Page Profil --- */
#v-profile.on{
  display:block!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  min-height:0!important;
  background:var(--profile-bg,var(--premium-bg-main))!important;
}
#v-profile #profile-page-body{
  display:block!important;
  width:100%!important;
  min-width:0!important;
}
#v-profile .nafa-account-page{
  display:block!important;
  width:min(1380px,100%)!important;
  max-width:1380px!important;
  margin:0 auto!important;
  padding:26px 28px 120px!important;
  box-sizing:border-box!important;
}
#v-profile .nafa-account-hero{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:22px!important;
  padding:26px 28px!important;
}
#v-profile .nafa-account-identity{
  display:flex!important;
  align-items:center!important;
  gap:18px!important;
  min-width:0!important;
}
#v-profile .nafa-account-avatar{
  display:grid!important;
  place-items:center!important;
  width:72px!important;
  height:72px!important;
  flex:0 0 72px!important;
  border-radius:22px!important;
  background:linear-gradient(145deg,var(--profile-nav,var(--premium-primary)),var(--profile-nav-2,var(--premium-primary-hover)))!important;
  color:#fff!important;
  font-size:29px!important;
  font-weight:900!important;
}
#v-profile .nafa-account-hero,
#v-profile .nafa-wallet-shell,
#v-profile .nafa-account-section,
#v-profile .nafa-profile-rewards:not(:empty){
  width:100%!important;
  margin:0 0 16px!important;
  border:1px solid rgba(72,48,30,.11)!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.95)!important;
  box-shadow:0 10px 28px rgba(65,43,26,.06)!important;
  box-sizing:border-box!important;
}
#v-profile .nafa-wallet-shell,
#v-profile .nafa-account-section{
  padding:22px!important;
}
#v-profile .nafa-account-grid{
  display:grid!important;
  gap:12px!important;
  margin-top:14px!important;
}
#v-profile .nafa-account-grid-2{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
#v-profile .nafa-account-grid-3{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
#v-profile .nafa-account-tile{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:12px!important;
  min-height:76px!important;
  padding:15px 16px!important;
}
#v-profile .nafa-account-card{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  min-height:154px!important;
  padding:17px!important;
}
#v-profile .nafa-account-tile,
#v-profile .nafa-account-card,
#v-profile .nafa-account-legal button{
  appearance:none!important;
  border:1px solid #e5e8ef!important;
  border-radius:16px!important;
  background:#fff!important;
  color:#172033!important;
  font:inherit!important;
  text-align:left!important;
  cursor:pointer!important;
  box-sizing:border-box!important;
}
#v-profile .nafa-account-tile b,
#v-profile .nafa-account-tile small,
#v-profile .nafa-account-card b,
#v-profile .nafa-account-card small,
#v-profile .nafa-account-card em{
  display:block!important;
}
#v-profile .nafa-account-legal{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:9px!important;
  margin-top:14px!important;
}
#v-profile .nafa-account-legal button{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  min-height:48px!important;
  padding:11px 13px!important;
}

@media(max-width:900px){
  #v-missions .missions-simple__summary,
  #v-missions .missions-reward-catalog__grid{
    grid-template-columns:1fr!important;
  }
  #v-missions .missions-simple__card{
    grid-template-columns:38px minmax(0,1fr)!important;
  }
  #v-missions .missions-simple__card-side{
    grid-column:2!important;
    text-align:left!important;
  }
  #v-profile .nafa-account-grid-3,
  #v-profile .nafa-account-legal{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:700px){
  #v-missions .missions-page,
  #v-profile .nafa-account-page{
    padding:16px 12px 118px!important;
  }
  #v-missions .missions-page__header{
    display:block!important;
  }
  #v-missions .missions-page__help{
    width:100%!important;
    margin-top:14px!important;
  }
  #v-profile .nafa-account-hero{
    flex-direction:column!important;
    align-items:flex-start!important;
    padding:20px!important;
  }
  #v-profile .nafa-account-outline-btn{
    width:100%!important;
  }
  #v-profile .nafa-account-grid-2,
  #v-profile .nafa-account-grid-3,
  #v-profile .nafa-account-legal{
    grid-template-columns:1fr!important;
  }
}



/* ACCUEIL COLLECTIONNEUR V3 — sans graphiques, palette du profil conservée */
.nah-collector-v3{--nah-bg:#f3e9e3;--nah-card:#fff9f3;--nah-text:#39212a;--nah-muted:#816b72;--nah-line:#dfc9c0;--nah-accent:#8e4054;--nah-accent2:#c77c62;color:var(--nah-text)}
.nah-collector-header{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding:25px 28px;border-radius:22px;background:linear-gradient(135deg,#321922,#743349 58%,#bc735d);color:#fff8f3;margin-bottom:14px}.nah-collector-header h1{font-size:28px;margin:8px 0 3px}.nah-collector-header h2{font-size:23px;margin:0 0 8px}.nah-collector-header p{max-width:760px;margin:0;color:#f1dce0}.nah-collector-header .nah-primary{white-space:nowrap;background:#fff8f3;color:#6d3043}
.nah-collector-value{position:relative;padding:22px 25px;border:1px solid #d5b6aa;border-radius:20px;background:linear-gradient(125deg,#fff9f3,#f6e4dc);margin-bottom:12px}.nah-collector-value>span{font-size:11px;font-weight:900;letter-spacing:.08em;color:var(--nah-accent)}.nah-collector-value>strong{display:block;font-size:42px;margin:7px 0;color:#39212a}.nah-collector-value>small{color:var(--nah-muted)}.nah-collector-value-actions{position:absolute;right:22px;bottom:20px;display:flex;gap:8px}.nah-collector-value-actions button,.nah-collector-v3 .nah-panel-head button{border:1px solid var(--nah-line);border-radius:10px;background:var(--nah-card);color:var(--nah-accent);font-weight:850;padding:8px 11px;cursor:pointer}
.nah-collector-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);gap:14px;margin-bottom:14px}.nah-collector-bottom{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:14px;margin-bottom:14px}.nah-collector-alerts,.nah-collector-listings,.nah-collector-top{display:grid;gap:0}.nah-collector-alert{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 0;border-bottom:1px solid var(--nah-line)}.nah-collector-alert:last-child{border-bottom:0}.nah-collector-alert>div:nth-child(2){display:flex;flex-direction:column;gap:3px}.nah-collector-alert span{font-size:10px;font-weight:900;text-transform:uppercase;color:var(--nah-accent)}.nah-collector-alert small{color:var(--nah-muted);line-height:1.35}.nah-collector-alert button,.nah-collector-listings button{border:1px solid var(--nah-line);border-radius:9px;background:transparent;color:var(--nah-accent);font-weight:900;padding:7px 9px}.nah-collector-alert.is-up span{color:#168252}.nah-collector-alert.is-down span{color:#b63a3a}.nah-collector-alert.is-warning span{color:#b66c16}.nah-collector-thumb{width:52px;height:52px;border-radius:11px;overflow:hidden;background:#f0ded6;display:grid;place-items:center}.nah-collector-thumb img{width:100%;height:100%;object-fit:cover}.nah-collector-photo-empty{color:var(--nah-accent);font-size:20px}
.nah-collector-listings article{display:grid;grid-template-columns:50px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--nah-line)}.nah-collector-listings article:last-child{border-bottom:0}.nah-collector-listings article>div:nth-child(2){display:flex;flex-direction:column;gap:3px}.nah-collector-listings span{font-size:10px;color:var(--nah-muted)}.nah-collector-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}.nah-collector-top article{display:grid;grid-template-columns:22px 44px minmax(0,1fr);gap:8px;align-items:center;border:1px solid var(--nah-line);border-radius:12px;padding:8px}.nah-collector-top em{font-style:normal;font-weight:900;color:var(--nah-accent)}.nah-collector-top .nah-collector-thumb{width:42px;height:42px}.nah-collector-top span{display:flex;flex-direction:column;gap:3px}.nah-collector-top small{color:var(--nah-accent);font-weight:900}.nah-collector-protection{background:linear-gradient(145deg,#3b1d28,#713247);color:#fff8f3}.nah-collector-protection>span{font-size:10px;font-weight:900;letter-spacing:.08em;color:#e8bdc6}.nah-collector-protection h3{font-size:22px}.nah-collector-protection p{color:#ead3d8;line-height:1.5}.nah-collector-protection button{border:0;background:#fff8f3;color:#713247;border-radius:10px;padding:10px 12px;font-weight:900}.nah-collector-empty{padding:22px;text-align:center;color:var(--nah-muted);border:1px dashed var(--nah-line);border-radius:12px;margin-top:10px}.nah-collector-quick{display:flex;align-items:center;gap:8px;padding:11px 13px;border:1px solid var(--nah-line);border-radius:15px;background:var(--nah-card)}.nah-collector-quick b{margin-right:auto;font-size:10px;color:var(--nah-muted)}.nah-collector-quick button{border:0;border-left:1px solid var(--nah-line);background:transparent;color:var(--nah-text);font-weight:800;padding:7px 13px;cursor:pointer}
@media(max-width:960px){.nah-collector-grid,.nah-collector-bottom{grid-template-columns:1fr}.nah-collector-value-actions{position:static;margin-top:14px}.nah-collector-quick{flex-wrap:wrap}.nah-collector-quick b{width:100%}.nah-collector-quick button{border-left:0;border:1px solid var(--nah-line);border-radius:9px}}
@media(max-width:650px){.nah-collector-header{align-items:flex-start;flex-direction:column}.nah-collector-header .nah-primary{width:100%}.nah-collector-value>strong{font-size:34px}.nah-collector-top{grid-template-columns:1fr}.nah-collector-alert{grid-template-columns:48px minmax(0,1fr)}.nah-collector-alert button{grid-column:2;justify-self:start}}

/* NAFA — Profil Revendeur V4 : cockpit clair, historique multi-plateformes et Coach Revendeur. */
.nah-reseller-v4{--nah-bg:#f6f3ec;--nah-card:#fffdf8;--nah-text:#26322d;--nah-muted:#6d786f;--nah-line:#ddd8ca;--nah-accent:#3f735c;--nah-accent2:#bf7b38;color:var(--nah-text)}
.nah-reseller-header{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding:25px 28px;border-radius:22px;background:linear-gradient(135deg,#eaf2eb,#fffaf0 62%,#f5e4cf);border:1px solid #d9dfd4;margin-bottom:14px}.nah-reseller-header h1{font-size:28px;margin:8px 0 3px}.nah-reseller-header h2{font-size:23px;margin:0 0 8px}.nah-reseller-header p{max-width:800px;margin:0;color:var(--nah-muted)}.nah-reseller-header .nah-primary{white-space:nowrap;background:var(--nah-accent);color:#fff}
.nah-reseller-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.nah-reseller-v4 .nah-metric{background:var(--nah-card);border-color:var(--nah-line)}
.nah-reseller-coach{padding:18px 20px;border:1px solid #d7dfd5;border-left:5px solid var(--nah-accent);border-radius:18px;background:#fbfdf9;margin-bottom:14px}.nah-reseller-coach-list{display:grid;gap:8px;margin-top:12px}.nah-reseller-coach-list article{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--nah-line);border-radius:13px;background:#fff}.nah-reseller-coach-list em{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#e5efe8;color:var(--nah-accent);font-style:normal;font-weight:900}.nah-reseller-coach-list article>div{display:flex;flex-direction:column;gap:3px}.nah-reseller-coach-list span{font-size:10px;font-weight:900;text-transform:uppercase;color:var(--nah-accent2)}.nah-reseller-coach-list p{margin:0;color:var(--nah-muted);font-size:12px;line-height:1.4}.nah-reseller-coach-list button,.nah-reseller-workbench .nah-panel-head button{border:1px solid var(--nah-line);border-radius:10px;background:#fff;color:var(--nah-accent);font-weight:850;padding:8px 11px;cursor:pointer}
.nah-reseller-workbench{margin-bottom:14px}.nah-reseller-tabs{display:flex;gap:7px;overflow-x:auto;padding:4px 0 12px;border-bottom:1px solid var(--nah-line)}.nah-reseller-tab{white-space:nowrap;border:1px solid var(--nah-line);border-radius:999px;background:#f7f5ef;color:var(--nah-text);font-weight:800;padding:9px 12px;cursor:pointer}.nah-reseller-tab b{display:inline-grid;place-items:center;min-width:21px;height:21px;margin-left:5px;border-radius:999px;background:#e8e3d8;font-size:10px}.nah-reseller-tab.is-active{background:var(--nah-accent);border-color:var(--nah-accent);color:#fff}.nah-reseller-tab.is-active b{background:rgba(255,255,255,.2)}.nah-reseller-tab-panel{display:none;padding-top:8px}.nah-reseller-tab-panel.is-active{display:grid}
.nah-reseller-listing{display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:13px;padding:13px 0;border-bottom:1px solid var(--nah-line)}.nah-reseller-listing:last-child{border-bottom:0}.nah-reseller-thumb{width:62px;height:62px;border-radius:13px;overflow:hidden;background:#eef1eb;display:grid;place-items:center}.nah-reseller-thumb img{width:100%;height:100%;object-fit:cover}.nah-reseller-thumb .nah-collector-photo-empty{color:var(--nah-accent)}.nah-reseller-listing-main{min-width:0}.nah-reseller-listing-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.nah-reseller-listing-title span{font-size:9px;font-weight:900;text-transform:uppercase;color:#9a5b22;background:#fff0db;border-radius:999px;padding:4px 7px}.nah-reseller-prices{display:flex;align-items:baseline;gap:8px;margin:5px 0}.nah-reseller-prices strong{font-size:18px}.nah-reseller-prices small{color:var(--nah-accent);font-weight:800}.nah-reseller-listing p{margin:0;color:var(--nah-muted);font-size:11px}.nah-reseller-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:7px}.nah-reseller-meta span{font-size:9px;background:#f2f0e9;border-radius:7px;padding:4px 6px;color:#59645d}.nah-reseller-listing>button{border:0;border-radius:10px;background:var(--nah-accent);color:#fff;font-weight:850;padding:9px 11px;cursor:pointer}.nah-reseller-listing.is-high{background:linear-gradient(90deg,#fff9f0,transparent);box-shadow:inset 3px 0 #c8782f}.nah-reseller-listing.is-medium{box-shadow:inset 3px 0 #d7ad54}
.nah-reseller-bottom{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:14px;margin-bottom:14px}.nah-reseller-journal{display:grid;gap:8px;margin-top:10px}.nah-reseller-journal article{display:grid;grid-template-columns:minmax(130px,.55fr) minmax(0,1.45fr) auto;gap:10px;align-items:center;border:1px solid var(--nah-line);border-radius:12px;padding:10px}.nah-reseller-journal article>div{display:flex;flex-direction:column;gap:3px}.nah-reseller-journal span{font-size:10px;color:var(--nah-muted)}.nah-reseller-journal button{border:1px solid var(--nah-line);border-radius:9px;background:#fff;color:var(--nah-accent);font-weight:800;padding:7px 9px}.nah-reseller-sales{background:linear-gradient(145deg,#315c49,#477a62);color:#fff}.nah-reseller-sales>span{font-size:10px;font-weight:900;letter-spacing:.08em;color:#d3e7da}.nah-reseller-sales h3{font-size:35px;margin:8px 0}.nah-reseller-sales p{color:#e3eee7;line-height:1.45}.nah-reseller-sales div{display:flex;gap:8px;flex-wrap:wrap}.nah-reseller-sales button{border:0;border-radius:10px;background:#fff;color:#315c49;font-weight:900;padding:9px 11px}.nah-reseller-sales button+button{background:#f5dfc2;color:#774619}
.nah-reseller-empty{display:flex;flex-direction:column;gap:4px;padding:22px;text-align:center;color:var(--nah-muted);border:1px dashed var(--nah-line);border-radius:12px;margin-top:8px}.nah-reseller-quick{display:flex;align-items:center;gap:8px;padding:11px 13px;border:1px solid var(--nah-line);border-radius:15px;background:var(--nah-card)}.nah-reseller-quick b{margin-right:auto;font-size:10px;color:var(--nah-muted)}.nah-reseller-quick button{border:0;border-left:1px solid var(--nah-line);background:transparent;color:var(--nah-text);font-weight:800;padding:7px 13px;cursor:pointer}
@media(max-width:960px){.nah-reseller-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.nah-reseller-bottom{grid-template-columns:1fr}.nah-reseller-quick{flex-wrap:wrap}.nah-reseller-quick b{width:100%}.nah-reseller-quick button{border-left:0;border:1px solid var(--nah-line);border-radius:9px}}
@media(max-width:680px){.nah-reseller-header{align-items:flex-start;flex-direction:column}.nah-reseller-header .nah-primary{width:100%}.nah-reseller-coach-list article,.nah-reseller-listing{grid-template-columns:54px minmax(0,1fr)}.nah-reseller-coach-list article button,.nah-reseller-listing>button{grid-column:2;justify-self:start}.nah-reseller-thumb{width:52px;height:52px}.nah-reseller-journal article{grid-template-columns:1fr}.nah-reseller-journal button{justify-self:start}}

/* ══ ASSISTANT NAFA — accueil Premium contextuel ══ */
.nah-assistant-dashboard{display:grid;gap:18px;padding:4px 0 34px;color:#182235}
.nah-assistant-home{background:#fff;border:1px solid #cfd9ea;border-radius:22px;box-shadow:0 16px 40px rgba(28,55,96,.12);overflow:hidden}
.nah-assistant-head{display:flex;align-items:center;gap:16px;padding:22px 24px;background:linear-gradient(135deg,#173b7a,#2459b8);color:#fff}
.nah-assistant-avatar{flex:0 0 58px;width:58px;height:58px;display:grid;place-items:center;border-radius:18px;background:#fff;color:#173b7a;font-size:26px;font-weight:950;box-shadow:0 8px 18px rgba(0,0,0,.16)}
.nah-assistant-head span{display:block;font-size:11px;font-weight:900;letter-spacing:.12em;color:#ffd9c5}
.nah-assistant-head h1{margin:3px 0 5px;color:#fff;font-size:25px;line-height:1.15}
.nah-assistant-head p{margin:0;max-width:780px;color:#eef4ff;font-size:14px;line-height:1.55}
.nah-assistant-conversation{padding:22px 24px;background:#fff}
.nah-assistant-message{display:grid;grid-template-columns:46px minmax(0,1fr);gap:14px;align-items:start}
.nah-assistant-message-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:#eef3ff;color:#173b7a;font-size:21px;font-weight:900;border:1px solid #cad7ee}
.nah-assistant-message-body>span{display:block;color:#173b7a;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.nah-assistant-message-body h2{margin:5px 0 7px;color:#172033;font-size:21px;line-height:1.25}
.nah-assistant-message-body>p{margin:0;color:#4b5870;font-size:14px;line-height:1.55}
.nah-assistant-why{margin-top:14px;padding:13px 15px;border:1px solid #f2c9b6;border-left:4px solid #ef6c2f;border-radius:13px;background:#fff7f2}
.nah-assistant-why b{display:block;color:#8a3716;font-size:13px;margin-bottom:3px}
.nah-assistant-why p{margin:0;color:#633a2a;font-size:13px;line-height:1.5}
.nah-assistant-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.nah-assistant-primary,.nah-assistant-secondary,.nah-assistant-link{border:0;border-radius:11px;padding:11px 15px;font-weight:850;cursor:pointer}
.nah-assistant-primary{background:#ef6c2f;color:#fff;box-shadow:0 7px 16px rgba(239,108,47,.24)}
.nah-assistant-secondary{background:#edf3ff;color:#173b7a;border:1px solid #cad8ef}
.nah-assistant-foot{display:flex;justify-content:flex-end;gap:10px;padding:12px 24px 17px;background:#f7f9fd;border-top:1px solid #e2e8f2}
.nah-assistant-link{padding:7px 9px;background:transparent;color:#54627a;font-size:12px}
.nah-assistant-paused{padding:12px 4px;color:#344158}.nah-assistant-paused b{font-size:17px;color:#172033}.nah-assistant-paused p{margin:5px 0 12px}.nah-assistant-paused button{border:1px solid #cad8ef;background:#edf3ff;color:#173b7a;border-radius:10px;padding:9px 12px;font-weight:800}
.nah-assistant-situation{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border:1px solid #d9e1ed;border-radius:18px;background:#fff;box-shadow:0 9px 25px rgba(28,55,96,.07)}
.nah-assistant-situation span{display:block;color:#173b7a;font-size:10px;font-weight:900;letter-spacing:.1em}.nah-assistant-situation h3{margin:3px 0 4px;color:#172033;font-size:18px}.nah-assistant-situation p{margin:0;color:#657188;font-size:13px}
.nah-assistant-situation button{border:1px solid #cad8ef;background:#edf3ff;color:#173b7a;border-radius:11px;padding:10px 13px;font-weight:850}
.nafa-assistant-target{outline:4px solid rgba(239,108,47,.32)!important;border-color:#ef6c2f!important;box-shadow:0 0 0 7px rgba(239,108,47,.12)!important;transition:.2s ease}
@media(max-width:720px){.nah-assistant-head{align-items:flex-start;padding:18px}.nah-assistant-avatar{width:48px;height:48px;flex-basis:48px}.nah-assistant-head h1{font-size:21px}.nah-assistant-conversation{padding:18px}.nah-assistant-message{grid-template-columns:1fr}.nah-assistant-message-icon{display:none}.nah-assistant-foot{justify-content:flex-start;padding:10px 18px 15px}.nah-assistant-situation{align-items:flex-start;flex-direction:column}.nah-assistant-situation button{width:100%}}

/* NAFA — Situation actuelle sous l’Assistant Premium */
.nah-current-situation{
  padding:20px;
  border:1px solid #d9e1ed;
  border-radius:18px;
  background:#fff;
  box-shadow:0 9px 25px rgba(28,55,96,.07);
  color:#172033;
}
.nah-current-situation-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:16px;
}
.nah-current-situation-head span{
  display:block;
  color:#2459b8;
  font-size:11px;
  font-weight:900;
  letter-spacing:.1em;
}
.nah-current-situation-head h3{
  margin:4px 0 0;
  color:#172033;
  font-size:18px;
  line-height:1.3;
}
.nah-current-situation-head button{
  flex:0 0 auto;
  border:1px solid #c9d7ec;
  border-radius:11px;
  background:#edf3ff;
  color:#173b7a;
  padding:10px 13px;
  font-weight:850;
  cursor:pointer;
}
.nah-current-situation-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.nah-current-situation-grid article{
  min-width:0;
  padding:15px;
  border:1px solid #dfe5ef;
  border-radius:14px;
  background:#f8fafc;
}
.nah-current-situation-grid span{
  display:block;
  margin-bottom:6px;
  color:#667085;
  font-size:12px;
  font-weight:700;
}
.nah-current-situation-grid strong{
  display:block;
  color:#2459b8;
  font-size:24px;
  line-height:1.15;
  overflow-wrap:anywhere;
}
@media(max-width:780px){
  .nah-current-situation-head{align-items:flex-start;flex-direction:column}
  .nah-current-situation-head button{width:100%}
  .nah-current-situation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:420px){
  .nah-current-situation-grid{grid-template-columns:1fr}
}

/* Correctif contraste — Votre situation actuelle (Premium)
   Placé en fin de fichier pour neutraliser les anciennes règles globales du thème Premium. */
body.theme-premium #v-home .nah-current-situation,
body.theme-premium #v-home .nah-current-situation *{
  text-shadow:none!important;
}
body.theme-premium #v-home .nah-current-situation{
  background:#ffffff!important;
  color:#172033!important;
}
body.theme-premium #v-home .nah-current-situation-head span{
  color:#2459b8!important;
}
body.theme-premium #v-home .nah-current-situation-head h3{
  color:#172033!important;
}
body.theme-premium #v-home .nah-current-situation-head button{
  background:#edf3ff!important;
  color:#173b7a!important;
  border-color:#c9d7ec!important;
}
body.theme-premium #v-home .nah-current-situation-grid article{
  background:#f8fafc!important;
  color:#172033!important;
}
body.theme-premium #v-home .nah-current-situation-grid span{
  color:#5b6678!important;
}
body.theme-premium #v-home .nah-current-situation-grid strong{
  color:#1d4f9f!important;
}

/* Correctif définitif du titre « Votre situation actuelle ».
   Sélecteur par ID pour neutraliser toutes les règles Premium historiques. */
#nah-current-situation-title,
body #nah-current-situation-title,
body.theme-premium #v-home /* Fix titre situation actuelle */
#nah-current-situation-title{
    color:#172033 !important;
    -webkit-text-fill-color:#172033 !important;
    background:none !important;
    text-shadow:
        0 1px 0 #ffffff,
        0 2px 6px rgba(255,255,255,.75) !important;
    opacity:1 !important;
    font-weight:700 !important;
}

/* NAFA — Correctif final de lisibilité : titre de la situation actuelle
   Neutralise les anciennes règles Premium (texte blanc, gradient et text-fill). */
body.theme-premium #v-home .nah-current-situation .nah-current-situation-head h3,
body.theme-premium #v-home .nah-current-situation h3,
body.theme-premium #v-home .nah-current-situation [id="nah-current-situation-title"],
body.theme-premium #v-home .nah-current-situation [class*="title"] {
  color: #172033 !important;
  -webkit-text-fill-color: #172033 !important;
  background: none !important;
  background-image: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  text-shadow: none !important;
  filter: none !important;
  opacity: 1 !important;
}

/* Le texte descriptif de cette carte reste également sombre et lisible. */
body.theme-premium #v-home .nah-current-situation p,
body.theme-premium #v-home .nah-current-situation .subtitle {
  color: #475467 !important;
  -webkit-text-fill-color: #475467 !important;
  background: none !important;
  background-image: none !important;
  text-shadow: none !important;
  opacity: 1 !important;
}

/* =========================================================
   ASSISTANT NAFA — AIDE PERSONNALISÉE DANS L'ANNONCE
   Une seule aide compacte par section, sans bloc global dupliqué.
   ========================================================= */
.nafa-inline-assistant{
  display:block;
  width:100%;
  margin:0 0 16px;
  padding:16px;
  border:1px solid #cbd8ec;
  border-left:5px solid #2459b8;
  border-radius:16px;
  background:#f8fbff;
  color:#172033 !important;
  box-shadow:0 6px 18px rgba(30,64,120,.08);
  overflow:hidden;
}
.nafa-inline-assistant,
.nafa-inline-assistant *{
  box-sizing:border-box;
  color:inherit;
  -webkit-text-fill-color:currentColor;
  text-shadow:none;
  max-width:100%;
}
.nafa-inline-assistant-head{
  display:flex;
  align-items:flex-start;
  gap:11px;
  min-width:0;
}
.nafa-inline-assistant-icon{
  flex:0 0 38px;
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:#e8f0ff;
  color:#2459b8 !important;
  font-size:18px;
}
.nafa-inline-assistant-head>div{min-width:0}
.nafa-inline-assistant-head small{
  display:block;
  margin:0 0 3px;
  color:#2459b8 !important;
  font-size:10px;
  line-height:1.2;
  font-weight:900;
  letter-spacing:.09em;
}
.nafa-inline-assistant-head h4{
  margin:0;
  color:#172033 !important;
  font-size:16px;
  line-height:1.3;
  overflow-wrap:anywhere;
}
.nafa-inline-assistant-message{
  margin:11px 0 0;
  color:#344054 !important;
  font-size:14px;
  line-height:1.5;
  overflow-wrap:anywhere;
}
.nafa-inline-assistant-why{
  display:flex;
  align-items:flex-start;
  gap:7px;
  margin-top:11px;
  padding:10px 12px;
  border-radius:11px;
  background:#fff3eb;
  color:#643318 !important;
  font-size:13px;
  line-height:1.45;
}
.nafa-inline-assistant-why b{flex:0 0 auto;color:#8d3f17 !important}
.nafa-inline-assistant-why span{min-width:0;color:#643318 !important;overflow-wrap:anywhere}
.nafa-inline-assistant-proposal{
  margin-top:11px;
  padding:11px 12px;
  border:1px solid #d8e1ef;
  border-radius:11px;
  background:#fff;
}
.nafa-inline-assistant-proposal small{
  display:block;
  margin-bottom:5px;
  color:#667085 !important;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
}
.nafa-inline-assistant-proposal p{
  margin:0;
  color:#172033 !important;
  font-size:14px;
  font-weight:650;
  line-height:1.45;
  white-space:normal;
  overflow-wrap:anywhere;
}
.nafa-inline-assistant-actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:9px;
  margin-top:12px;
}
.nafa-inline-assistant-actions button{
  min-height:40px;
  max-width:100%;
  border-radius:10px;
  padding:10px 14px;
  font:inherit;
  font-size:13px;
  font-weight:850;
  cursor:pointer;
  white-space:normal;
}
.nafa-inline-assistant-primary{
  border:1px solid #e65f20;
  background:#f27432;
  color:#172033 !important;
}
.nafa-inline-assistant-secondary{
  border:1px solid #b8c8df;
  background:#fff;
  color:#2459b8 !important;
}
.nafa-inline-assistant-actions>span{
  flex:1 1 210px;
  color:#667085 !important;
  font-size:11px;
  line-height:1.35;
}
.nafa-inline-assistant-more{
  margin:10px 0 0;
  color:#667085 !important;
  font-size:11px;
  font-style:italic;
}
/* Anciennes aides globales masquées si un cache de structure les conserve. */
.nafa-coach-edit-focus,
.nafa-edit-advice-compact.is-analysis{
  display:none !important;
}
@media(max-width:640px){
  .nafa-inline-assistant{padding:13px;border-radius:13px}
  .nafa-inline-assistant-actions{align-items:stretch}
  .nafa-inline-assistant-actions button{width:100%}
  .nafa-inline-assistant-actions>span{flex-basis:100%}
}

/* ═══════════════════════════════════════════════════════════════
   ASSISTANT NAFA — ONBOARDING CONVERSATIONNEL V1
   ═══════════════════════════════════════════════════════════════ */
body.nafa-onb-open{overflow:hidden!important}
#nafa-assistant-onboarding{display:none;position:fixed;inset:0;z-index:12000}
#nafa-assistant-onboarding.is-open{display:block}
.nafa-onb-backdrop{position:absolute;inset:0;background:rgba(15,31,55,.58);backdrop-filter:blur(7px)}
.nafa-onb-dialog{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(760px,calc(100vw - 28px));max-height:calc(100vh - 28px);overflow:auto;background:#f8fafc;border:1px solid #cbd7e8;border-radius:26px;box-shadow:0 28px 80px rgba(10,29,58,.28);color:#172033}
.nafa-onb-progress{height:7px;background:#dfe7f2;border-radius:26px 26px 0 0;overflow:hidden}
.nafa-onb-progress span{display:block;height:100%;background:linear-gradient(90deg,#1f58a8,#ee7a36);transition:width .25s ease}
.nafa-onb-close{position:absolute;right:16px;top:18px;width:38px;height:38px;border:1px solid #cbd7e8;border-radius:12px;background:#fff;color:#172033;font-size:25px;line-height:1;cursor:pointer}
.nafa-onb-body{padding:42px 38px 24px}
.nafa-onb-intro,.nafa-onb-summary{text-align:center;max-width:590px;margin:0 auto}
.nafa-onb-avatar{width:72px;height:72px;margin:0 auto 18px;display:grid;place-items:center;border-radius:22px;background:#e8f0ff;border:1px solid #bfd0eb;color:#164f9e;font-size:30px;font-weight:900;box-shadow:0 9px 20px rgba(28,78,148,.12)}
.nafa-onb-kicker{margin:0 0 8px;color:#9b431d!important;-webkit-text-fill-color:#9b431d!important;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.nafa-onb-body h2{margin:0 0 12px;color:#172033!important;-webkit-text-fill-color:#172033!important;background:none!important;font-size:clamp(25px,4vw,35px);line-height:1.16;text-shadow:0 1px 0 #fff}
.nafa-onb-body p{color:#526078!important;-webkit-text-fill-color:#526078!important;line-height:1.55}
.nafa-onb-help{margin-top:-3px;font-size:14px}
.nafa-onb-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:22px}
.nafa-onb-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.nafa-onb-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.nafa-onb-choice{position:relative;min-height:96px;padding:17px 15px;display:flex;align-items:center;gap:13px;text-align:left;border:1px solid #cfd9e7;border-radius:16px;background:#fff;color:#27354b;cursor:pointer;transition:transform .15s,border-color .15s,box-shadow .15s,background .15s}
.nafa-onb-choice:hover{transform:translateY(-2px);border-color:#7fa4dc;box-shadow:0 10px 24px rgba(27,67,126,.1)}
.nafa-onb-choice.is-selected{border:2px solid #1d5aac;background:#edf4ff;box-shadow:0 0 0 3px rgba(29,90,172,.1)}
.nafa-onb-choice-icon{flex:0 0 43px;width:43px;height:43px;display:grid;place-items:center;border-radius:13px;background:#fff1e9;color:#8f3f1a;font-size:18px;font-weight:900}
.nafa-onb-choice-label{font-size:15px;font-weight:800;line-height:1.3;color:#27354b!important;-webkit-text-fill-color:#27354b!important}
.nafa-onb-check{position:absolute;right:10px;top:10px;width:23px;height:23px;display:none;place-items:center;border-radius:50%;background:#1d5aac;color:#fff;font-size:13px;font-weight:900}
.nafa-onb-choice.is-selected .nafa-onb-check{display:grid}
.nafa-onb-footer{padding:18px 28px 24px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #d9e2ee;background:#fff;border-radius:0 0 26px 26px}
.nafa-onb-footer-right{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.nafa-onb-btn,.nafa-onb-link{min-height:44px;border-radius:12px;padding:10px 17px;font-weight:850;cursor:pointer}
.nafa-onb-btn-primary{border:1px solid #d85e22;background:#f07a38;color:#172033!important;-webkit-text-fill-color:#172033!important;box-shadow:0 7px 15px rgba(223,99,38,.18)}
.nafa-onb-btn-primary:hover{background:#e86c2c;transform:translateY(-1px)}
.nafa-onb-btn-primary:disabled{opacity:.42;cursor:not-allowed;transform:none}
.nafa-onb-btn-secondary{border:1px solid #bfcde0;background:#fff;color:#1d4f91!important;-webkit-text-fill-color:#1d4f91!important}
.nafa-onb-link{border:0;background:transparent;color:#5e6b7f!important;-webkit-text-fill-color:#5e6b7f!important}
.nafa-onb-summary-box{display:flex;flex-direction:column;gap:5px;margin-top:20px;padding:16px;border:1px solid #cad8ea;border-radius:15px;background:#edf4ff;color:#25466f;text-align:left}
.nafa-onb-summary-box strong{color:#183d70!important;-webkit-text-fill-color:#183d70!important}
.nafa-onb-summary-box span{font-size:14px}
.nafa-assistant-preferences-card{margin:16px 0;padding:17px;display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid #ccd8e8;border-radius:16px;background:#f7faff;color:#172033}
.nafa-assistant-preferences-card div{display:flex;flex-direction:column;gap:4px}
.nafa-assistant-preferences-card strong{color:#172033!important;-webkit-text-fill-color:#172033!important}
.nafa-assistant-preferences-card span{color:#5c687b!important;-webkit-text-fill-color:#5c687b!important;font-size:13px}
.nafa-assistant-preferences-card button{border:1px solid #1d5aac;border-radius:10px;background:#eaf2ff;color:#173f79!important;-webkit-text-fill-color:#173f79!important;padding:9px 14px;font-weight:850;cursor:pointer;white-space:nowrap}
@media(max-width:680px){
 .nafa-onb-dialog{width:calc(100vw - 18px);max-height:calc(100vh - 18px);border-radius:20px}
 .nafa-onb-body{padding:39px 18px 20px}
 .nafa-onb-grid,.nafa-onb-grid-3,.nafa-onb-grid-4{grid-template-columns:1fr}
 .nafa-onb-choice{min-height:76px}
 .nafa-onb-footer{padding:14px 16px 18px;align-items:flex-end}
 .nafa-onb-footer-right{gap:6px}
 .nafa-onb-btn,.nafa-onb-link{padding:9px 12px}
 .nafa-assistant-preferences-card{align-items:flex-start;flex-direction:column}
}

/* Assistant onboarding — identité visuelle NAFA */
.nafa-onb-brand{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:18px 54px 0;
  color:#172033;
  font-weight:800;
  font-size:15px;
  letter-spacing:.01em;
}
.nafa-onb-brand img{
  width:38px;
  height:38px;
  object-fit:contain;
  border-radius:12px;
  background:#fff;
  box-shadow:0 6px 18px rgba(36,89,184,.14);
}
.nafa-onb-logo-wrap{
  width:92px;
  height:92px;
  margin:0 auto 14px;
  padding:10px;
  display:grid;
  place-items:center;
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(36,89,184,.14);
  box-shadow:0 12px 32px rgba(36,89,184,.14);
}
.nafa-onb-logo-wrap-small{
  width:76px;
  height:76px;
}
.nafa-onb-logo{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
}
.nafa-onb-intro .nafa-onb-avatar,
.nafa-onb-summary .nafa-onb-avatar{
  display:none !important;
}
@media(max-width:600px){
  .nafa-onb-brand{padding:16px 48px 0;font-size:14px}
  .nafa-onb-brand img{width:34px;height:34px}
  .nafa-onb-logo-wrap{width:78px;height:78px;border-radius:20px}
}

/* =============================================================
   NAFA — ÉDITEUR D'ANNONCE PC V2
   Mise en page réellement utilisée par js/item-detail.js
   ============================================================= */
.item-edit-view .fp-body-inner{max-width:1480px;padding:0 10px}
.item-edit-view .edit-scroll-content{background:#f7f8fb;padding:22px 24px 28px}
.nafa-edit-desktop-shell{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start;width:100%}
.nafa-edit-main{min-width:0;display:flex;flex-direction:column;gap:18px}
.nafa-edit-section{background:#fff;border:1px solid #e4e8f0;border-radius:18px;padding:22px;box-shadow:0 10px 28px rgba(10,30,63,.06)}
.nafa-edit-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}
.nafa-edit-kicker{display:block;margin-bottom:5px;color:#315f9d;font-size:10px;font-weight:800;letter-spacing:.12em}
.nafa-edit-section h2,.nafa-edit-sidebar h2{margin:0;color:#102a4d;font-size:20px;line-height:1.2;font-family:Georgia,'Times New Roman',serif}
.nafa-section-help,.nafa-sidebar-intro{margin:0 0 17px;color:#647084;font-size:13px;line-height:1.55}
.nafa-edit-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.nafa-edit-fields .ef{min-width:0}
.nafa-edit-fields .ef.full{grid-column:1/-1}
.nafa-edit-fields label{display:block;margin-bottom:7px;color:#34445d;font-size:11px;font-weight:800;letter-spacing:.045em;text-transform:uppercase}
.nafa-edit-fields input:not([type="checkbox"]),.nafa-edit-fields select,.nafa-edit-fields textarea{width:100%;min-height:44px;padding:11px 12px;border:1px solid #d8deea;border-radius:11px;background:#fff;color:#172033;font:inherit;box-sizing:border-box;transition:border-color .16s,box-shadow .16s,background .16s}
.nafa-edit-fields textarea{min-height:150px;resize:vertical;line-height:1.55}
.nafa-edit-fields input:focus,.nafa-edit-fields select:focus,.nafa-edit-fields textarea:focus{outline:none;border-color:#3f6faf;box-shadow:0 0 0 4px rgba(63,111,175,.12);background:#fff}
.nafa-sale-toggle{display:flex!important;align-items:center;gap:10px;padding:13px 14px;border:1px solid #d8deea;border-radius:11px;background:#f8fafc;text-transform:none!important;letter-spacing:0!important;font-size:13px!important;cursor:pointer}
.nafa-sale-toggle input{width:18px;height:18px;margin:0}
.nafa-field-advice{display:flex;gap:8px;align-items:flex-start;margin:9px 0 0;color:#5f6878;font-size:12px;line-height:1.45}
.nafa-field-advice span{flex:0 0 auto}
.nafa-photo-count{display:inline-flex;align-items:center;justify-content:center;min-width:46px;height:30px;padding:0 10px;border-radius:999px;background:#edf3fb;color:#244f86;font-size:12px;font-weight:800}
.nafa-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.nafa-photo-card{position:relative;min-height:190px;border:1px solid #dbe2ed;border-radius:15px;overflow:hidden;background:#f7f9fc}
.nafa-photo-card.is-primary{border-color:#c9a44c;box-shadow:0 0 0 2px rgba(201,164,76,.12)}
.nafa-photo-preview{display:block;width:100%;height:190px;padding:0;border:0;background:#f4f6f9;cursor:zoom-in}
.nafa-photo-preview img{display:block;width:100%;height:100%;object-fit:cover}
.nafa-photo-badge{position:absolute;left:10px;top:10px;padding:6px 9px;border-radius:999px;background:#0a1e3f;color:#fff;font-size:10px;font-weight:800;box-shadow:0 5px 15px rgba(10,30,63,.22)}
.nafa-photo-remove{position:absolute;right:9px;top:9px;padding:6px 9px;border:0;border-radius:999px;background:rgba(255,255,255,.94);color:#4b5565;font-size:10px;font-weight:800;cursor:pointer;box-shadow:0 4px 12px rgba(15,23,42,.14)}
.nafa-photo-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:100%;padding:18px;border:1px dashed #b8c4d5;background:#fbfcfe;color:#385779;cursor:pointer;transition:border-color .15s,background .15s,transform .15s}
.nafa-photo-empty:hover{border-color:#315f9d;background:#f2f6fb;transform:translateY(-1px)}
.nafa-photo-plus{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:#eaf1fa;color:#315f9d;font-size:28px;line-height:1}
.nafa-photo-empty strong{font-size:13px}
.nafa-photo-empty small{color:#7b8799;font-size:11px}
.nafa-edit-sidebar{min-width:0}
.nafa-edit-sidebar-sticky{position:sticky;top:0;background:#fff;border:1px solid #e4e8f0;border-radius:18px;padding:22px;box-shadow:0 10px 28px rgba(10,30,63,.07)}
.nafa-side-list{display:flex;flex-direction:column;gap:11px;margin-top:17px}
.nafa-side-advice{display:flex;gap:11px;padding:13px;border:1px solid #e2e7ef;border-radius:13px;background:#fbfcfe}
.nafa-side-advice.is-done{background:#f1f7f3;border-color:#c9dfcf}
.nafa-side-number,.nafa-side-icon{display:flex;align-items:center;justify-content:center;flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:#eaf1fa;color:#244f86;font-size:12px;font-weight:900}
.nafa-side-icon{background:#dfeee4;color:#3e6b4f}
.nafa-side-content{min-width:0}
.nafa-side-content h3,.nafa-side-advice h3{margin:1px 0 5px;color:#172b49;font-size:13px;line-height:1.3}
.nafa-side-content p,.nafa-side-advice p{margin:0;color:#667085;font-size:11.5px;line-height:1.45}
.nafa-side-content button{margin-top:9px;padding:7px 10px;border:1px solid #b8c9df;border-radius:8px;background:#fff;color:#234f86;font-size:11px;font-weight:800;cursor:pointer}
.nafa-side-content button:hover{background:#eef4fb;border-color:#7fa1c9}
#nafa-edit-proof .insurance-edit-grid{margin-top:6px}
.nafa-focus-pulse{animation:nafaFocusPulse 1.15s ease}
@keyframes nafaFocusPulse{0%,100%{box-shadow:0 0 0 0 rgba(63,111,175,0)}35%{box-shadow:0 0 0 6px rgba(63,111,175,.18)}}
@media(max-width:1100px){.nafa-edit-desktop-shell{grid-template-columns:1fr}.nafa-edit-sidebar-sticky{position:relative}.nafa-edit-sidebar{order:-1}.nafa-photo-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.item-edit-view .edit-scroll-content{padding:14px}.nafa-edit-section,.nafa-edit-sidebar-sticky{padding:16px;border-radius:14px}.nafa-edit-fields{grid-template-columns:1fr}.nafa-edit-fields .ef.full{grid-column:1}.nafa-photo-grid{grid-template-columns:1fr}.nafa-photo-card,.nafa-photo-preview{min-height:210px;height:210px}}


/* =========================================================
   FICHE ANNONCE — BANDEAU DE CONSEILS ET VOCABULAIRE FRANÇAIS
   ========================================================= */
.nafa-edit-sidebar-sticky{
  overflow:hidden;
  padding:0 18px 18px;
  border-color:#DCD5C4;
  background:#FAF7F0;
}
.nafa-advice-banner{
  display:flex;
  align-items:flex-start;
  gap:14px;
  margin:0 -18px 16px;
  padding:19px 18px 17px;
  background:#F2EDE0;
  border-bottom:1px solid #DCD5C4;
}
.nafa-advice-bulb{
  flex:0 0 42px;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:13px;
  background:#0A1E3F;
  color:#E4CE8F;
  font-size:22px;
  box-shadow:0 7px 18px rgba(10,30,63,.13);
}
.nafa-advice-banner .nafa-edit-kicker{
  margin:1px 0 5px;
  color:#8A6A22;
}
.nafa-advice-banner h2{
  color:#0A1E3F;
  font-size:19px;
}
.nafa-advice-banner .nafa-sidebar-intro{
  margin-top:7px;
  color:#6B6459;
}
.nafa-side-advice{
  background:#FFFFFF;
  border-color:#DCD5C4;
}
.nafa-side-number{
  background:#F2EDE0;
  color:#0A1E3F;
  border:1px solid #E4CE8F;
}
.nafa-side-content button{
  border-color:#C9A44C;
  color:#0A1E3F;
  background:#FAF7F0;
}
.nafa-side-content button:hover{
  background:#E4CE8F;
  border-color:#C9A44C;
}

/* ================================================================
   ASSISTANT NAFA — ACCUEIL V2 CHALEUREUX (PC)
   ================================================================ */
.nah-assistant-v2{display:grid;gap:22px;color:#1f2937}
.nah-v2-welcome{display:flex;align-items:center;gap:18px;padding:26px 30px;border:1px solid #e1dccf;border-radius:26px;background:linear-gradient(135deg,#fffdf8 0%,#f5efe3 100%);box-shadow:0 18px 45px rgba(39,48,66,.08)}
.nah-v2-mark{width:58px;height:58px;display:grid;place-items:center;flex:0 0 58px;border-radius:18px;background:#173b7a;color:#fff;box-shadow:0 12px 24px rgba(23,59,122,.2)}
.nah-v2-mark svg,.nah-v2-icon svg,.nah-v2-idea-icon svg,.nah-v2-progress-icon svg,.nah-v2-benefit svg,.nah-v2-priority-card li svg,.nah-v2-complete svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.nah-v2-welcome span,.nah-v2-label,.nah-v2-section-head span,.nah-v2-progress-head span{display:block;color:#8b6b35;font-size:11px;font-weight:900;letter-spacing:.12em}
.nah-v2-welcome h1{margin:4px 0 6px;color:#172033;font-size:30px;letter-spacing:-.035em}
.nah-v2-welcome p{margin:0;max-width:900px;color:#5d6472;font-size:15px;line-height:1.6}
.nah-v2-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.75fr);gap:20px;align-items:stretch}
.nah-v2-priority,.nah-v2-progress{border:1px solid #dde3ed;border-radius:26px;background:#fff;box-shadow:0 14px 36px rgba(38,54,80,.08)}
.nah-v2-priority{padding:26px}
.nah-v2-label{margin-bottom:16px;color:#173b7a}
.nah-v2-priority-card{display:grid;grid-template-columns:64px minmax(0,1fr);gap:20px;align-items:start}
.nah-v2-icon{width:64px;height:64px;display:grid;place-items:center;border-radius:20px;background:#edf3fb;color:#173b7a;border:1px solid #d8e2f1}
.nah-v2-icon svg{width:29px;height:29px}
.nah-v2-priority-copy h2{margin:0 0 9px;color:#172033;font-size:25px;line-height:1.2;letter-spacing:-.025em}
.nah-v2-priority-copy>p{margin:0;color:#536074;font-size:15px;line-height:1.6}
.nah-v2-priority-card ul{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0 0;padding:0;list-style:none}
.nah-v2-priority-card li{display:flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid #dfe6ef;border-radius:999px;background:#f8fafc;color:#3d4a5f;font-size:12px;font-weight:750}
.nah-v2-priority-card li svg{width:14px;height:14px;color:#3e6b4f}
.nah-v2-benefit{margin-top:17px;padding:15px 17px;border-left:3px solid #c9a44c;border-radius:0 14px 14px 0;background:#faf7f0}
.nah-v2-benefit b{display:block;margin-bottom:4px;color:#5f4b25;font-size:12px}
.nah-v2-benefit span{display:block;color:#655f55;font-size:13px;line-height:1.5}
.nah-v2-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:19px}
.nah-v2-primary,.nah-v2-quiet,.nah-v2-idea button,.nah-v2-footer button{border-radius:12px;padding:11px 16px;font-weight:850;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}
.nah-v2-primary{border:1px solid #173b7a;background:#173b7a;color:#fff;box-shadow:0 8px 18px rgba(23,59,122,.18)}
.nah-v2-primary:hover{transform:translateY(-1px);background:#2459b8;box-shadow:0 12px 22px rgba(23,59,122,.23)}
.nah-v2-quiet{border:1px solid #d7dee9;background:#fff;color:#596577}
.nah-v2-quiet:hover{background:#f7f9fc}
.nah-v2-progress{padding:24px;background:#173b7a;color:#fff;overflow:hidden;position:relative}
.nah-v2-progress:after{content:"";position:absolute;width:180px;height:180px;border:1px solid rgba(255,255,255,.09);border-radius:50%;right:-80px;bottom:-90px}
.nah-v2-progress-head{display:flex;align-items:center;gap:12px;position:relative;z-index:1}
.nah-v2-progress-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:14px;background:rgba(255,255,255,.12);color:#e4ce8f}
.nah-v2-progress-head span{color:#e4ce8f}
.nah-v2-progress-head h2{margin:3px 0 0;color:#fff;font-size:20px}
.nah-v2-progress-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:22px 0 16px;position:relative;z-index:1}
.nah-v2-progress-grid div{padding:13px 8px;border:1px solid rgba(255,255,255,.13);border-radius:14px;background:rgba(255,255,255,.07);text-align:center}
.nah-v2-progress-grid strong{display:block;color:#fff;font-size:23px}.nah-v2-progress-grid span{font-size:11px;color:#dce6f6}
.nah-v2-progress>p{margin:0;position:relative;z-index:1;color:#e6edf8;font-size:13px;line-height:1.55}
.nah-v2-ideas{padding:25px 26px;border:1px solid #e1e6ee;border-radius:26px;background:#fbfcfe}
.nah-v2-section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px}
.nah-v2-section-head h2{margin:4px 0 0;color:#172033;font-size:22px}.nah-v2-section-head small{color:#737d8e}
.nah-v2-ideas-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.nah-v2-idea{display:flex;flex-direction:column;gap:13px;min-height:218px;padding:18px;border:1px solid #e0e5ed;border-radius:18px;background:#fff;box-shadow:0 8px 22px rgba(45,60,83,.055);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.nah-v2-idea:hover{transform:translateY(-2px);border-color:#c5d2e5;box-shadow:0 14px 28px rgba(45,60,83,.09)}
.nah-v2-idea.is-later{opacity:.55}
.nah-v2-idea-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:#f2ede0;color:#173b7a}
.nah-v2-idea-icon svg{width:21px;height:21px}
.nah-v2-idea>div:last-child{display:flex;flex:1;flex-direction:column}.nah-v2-idea h3{margin:0 0 7px;color:#202a3a;font-size:16px;line-height:1.3}.nah-v2-idea p{margin:0 0 15px;color:#657084;font-size:13px;line-height:1.5}
.nah-v2-idea button{margin-top:auto;align-self:flex-start;border:1px solid #cdd8e8;background:#f3f7fc;color:#173b7a;padding:9px 11px;font-size:12px}
.nah-v2-idea button:hover{background:#eaf1fa}
.nah-v2-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:19px 22px;border:1px solid #dfd8c9;border-radius:20px;background:#faf7f0}
.nah-v2-footer p{margin:0;max-width:820px;color:#665f54;font-size:13px;line-height:1.55}
.nah-v2-footer button{flex:0 0 auto;border:1px solid #d6c9ab;background:#fff;color:#67552d;padding:9px 13px}
.nah-v2-complete{text-align:center;padding:30px}.nah-v2-complete>div{width:58px;height:58px;display:grid;place-items:center;margin:0 auto 14px;border-radius:50%;background:#edf5ef;color:#3e6b4f}.nah-v2-complete h2{margin:0 0 8px}.nah-v2-complete p{margin:0;color:#647083}
@media(max-width:1100px){.nah-v2-layout{grid-template-columns:1fr}.nah-v2-ideas-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.nah-v2-welcome{align-items:flex-start;padding:20px}.nah-v2-welcome h1{font-size:25px}.nah-v2-layout{display:block}.nah-v2-progress{margin-top:15px}.nah-v2-priority{padding:20px}.nah-v2-priority-card{grid-template-columns:1fr}.nah-v2-ideas{padding:20px}.nah-v2-ideas-grid{grid-template-columns:1fr}.nah-v2-idea{min-height:0}.nah-v2-section-head,.nah-v2-footer{align-items:flex-start;flex-direction:column}.nah-v2-footer button{width:100%}}


/* === NAFA — correctif final conseils terminés et aperçu facture === */
.insurance-proof-card .insurance-proof-preview,
#edit-receipt-preview,
.receipt-thumb{
  display:block;
  width:100%;
  height:150px;
  max-height:150px;
  object-fit:contain!important;
  object-position:center!important;
  background:#fff;
  padding:8px;
  border-radius:12px;
}
.nah-v2-done,
.nah-v2-idea-done{
  border:1px solid #3E6B4F!important;
  background:#f4f8f5!important;
  color:#2f5b40!important;
  font-weight:750!important;
}
.nah-v2-done:hover,
.nah-v2-idea-done:hover{background:#e7f0ea!important;}
.nah-v2-idea-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px;}
.nah-v2-idea-actions>button{margin-top:0!important;}
.nah-v2-idea-done{padding:8px 11px!important;font-size:11px!important;border-radius:10px!important;}
.nah-v2-priority-card.is-completed,
.nah-v2-idea.is-completed{opacity:0;transform:translateY(-8px);transition:opacity .25s ease,transform .25s ease;}

/* =========================================================
   CONSEILS DANS LA FICHE — VALIDATION MANUELLE
   ========================================================= */
.nafa-side-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.nafa-side-content .nafa-side-actions button{margin-top:0}
.nafa-side-content .nafa-side-done{border-color:#b7cfbe;background:#eef6f0;color:#315b3f}
.nafa-side-content .nafa-side-done:hover{border-color:#7fa18a;background:#dfeee4;color:#274b34}
.nafa-side-advice{transition:opacity .2s ease,transform .2s ease,max-height .24s ease,margin .24s ease,padding .24s ease}
.nafa-side-advice.is-completing{opacity:0;transform:translateX(12px);pointer-events:none}


/* =========================================================
   NAFA — Alignement navigation / topbar (2026-08-07)
   - supprime la couture blanche entre la navigation et la topbar
   - garde l'indicateur de progression parfaitement centré
   - aucun badge de succès dans la topbar
   ========================================================= */
.shell-main{gap:0!important;}
body[data-nafa-profile] .rail{
  border-right:0!important;
}
body[data-nafa-profile] .topbar{
  border-left:0!important;
  border-bottom:0!important;
  box-shadow:none!important;
}

/* Indicateur progression / missions : centré indépendamment du titre et du compte */
.topbar{position:relative!important;}
.nafa-top-progress{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  margin:0!important;
  transform:translate(-50%,-50%)!important;
  z-index:4!important;
}
.nafa-top-progress:hover{
  transform:translate(-50%,calc(-50% - 1px))!important;
}
.topbar-title{
  margin-right:auto!important;
}
.profile-wrap,#tb-act{position:relative;z-index:5;}

/* Les badges de succès restent accessibles ailleurs dans l'application, jamais dans la topbar. */
#badge-topbar-icon,#badge-new-dot,.badge-topbar-dot{display:none!important;}

@media(max-width:1180px){
  .nafa-top-progress{min-width:330px!important;}
}

/* =========================================================
   NAFA — UNIFORMITÉ GLOBALE TOPBAR + TYPOGRAPHIE (2026-08-07)
   ========================================================= */

/* Une seule famille typographique dans toute l'application. */
:root{
  --nafa-font-family: "Inter", "Segoe UI", Roboto, Arial, sans-serif;
  --premium-title-font: var(--nafa-font-family);
  --premium-body-font: var(--nafa-font-family);
}

html,
body,
button,
input,
select,
textarea,
option,
label,
a,
p,
span,
div,
nav,
header,
footer,
section,
article,
aside,
h1,
h2,
h3,
h4,
h5,
h6,
strong,
b,
small,
table,
th,
td{
  font-family:var(--nafa-font-family)!important;
}

/* Les composants Premium/Assistant ne doivent plus réintroduire Georgia/serif. */
body.theme-premium h1,
body.theme-premium h2,
body.theme-premium h3,
body.theme-premium .topbar-title,
body.theme-premium .logo-name,
body.theme-premium .vault-title,
body.theme-premium .vault-panel-title,
body.theme-premium .nafa-v2-user-title,
body[data-nafa-profile] h1,
body[data-nafa-profile] h2,
body[data-nafa-profile] h3,
.nah-v2-shell,
.nah-v2-shell *,
.nafa-edit-pc,
.nafa-edit-pc *{
  font-family:var(--nafa-font-family)!important;
}

/* Suppression définitive de la couture entre topbar et navigation. */
.topbar,
body .topbar,
body.theme-standard .topbar,
body.theme-premium .topbar,
body[data-nafa-profile] .topbar{
  border-top:0!important;
  border-bottom:0!important;
  border-left:0!important;
  border-right:0!important;
  box-shadow:none!important;
  outline:0!important;
}

/* Aucun trait ni pseudo-élément ne doit recréer cette séparation. */
.topbar::before,
.topbar::after,
.shell::before,
.shell::after,
.shell-main::before,
.shell-main::after,
.rail::before,
.rail::after{
  border:0!important;
  box-shadow:none!important;
}

.shell-main{
  border-top:0!important;
  outline:0!important;
  gap:0!important;
}

.rail,
body .rail,
body.theme-standard .rail,
body.theme-premium .rail,
body[data-nafa-profile] .rail{
  border-top:0!important;
  outline:0!important;
}

/* Évite un filet d'un pixel dû à l'alignement entre les deux zones sombres. */
@media(min-width:769px){
  .shell-main{margin-top:-1px!important;padding-top:0!important;}
}



/* =========================================================
   NAFA — correction définitive jonction topbar / navigation
   + typographie uniforme globale
   2026-08-07
   ========================================================= */
@media (min-width:769px){
  .shell-main{
    margin-top:-1px!important;
    padding-top:0!important;
    border-top:0!important;
  }
  .rail{
    margin-top:0!important;
    border-top:0!important;
  }
}

html, body, button, input, textarea, select, option, label, table, th, td,
.topbar, .rail, .content, .view, .card, .modal, .sheet, .drawer,
[class*="title"], [class*="subtitle"], [class*="label"], [class*="text"],
[class*="btn"], [class*="card"], [class*="nav"], [class*="assistant"]{
  font-family:Inter,"Segoe UI",Roboto,Arial,sans-serif!important;
}

/* =========================================================
   NAFA — Conseils d'annonce guidés (08/2026)
   Ouvert depuis un conseil de l'accueil : un conseil = une zone.
   ========================================================= */
.nafa-guided-editor{
  width:min(1480px,100%);
  margin:0 auto;
  padding:24px 28px 34px;
  color:#102348;
}
.nafa-guide-counter{
  text-align:center;
  font-size:25px;
  font-weight:900;
  color:#111827;
  margin:0 0 18px;
}
.nafa-guide-steps{
  display:flex;
  align-items:flex-start;
  justify-content:center;
  gap:0;
  margin:0 auto 28px;
  max-width:980px;
}
.nafa-guide-step{
  position:relative;
  flex:1;
  min-width:0;
  border:0;
  background:transparent;
  color:#34435e;
  font-weight:800;
  cursor:pointer;
  padding:0 8px;
  display:grid;
  justify-items:center;
  gap:8px;
}
.nafa-guide-step:not(:last-child)::after{
  content:"";
  position:absolute;
  left:calc(50% + 18px);
  right:calc(-50% + 18px);
  top:15px;
  height:2px;
  background:#cfd5df;
  z-index:0;
}
.nafa-guide-step.is-done:not(:last-child)::after{background:#31945a}
.nafa-guide-step i{
  position:relative;
  z-index:1;
  width:31px;
  height:31px;
  border:2px solid #7d8794;
  border-radius:50%;
  background:#fff;
  display:grid;
  place-items:center;
  font-size:12px;
  font-style:normal;
  color:#42516b;
}
.nafa-guide-step.is-active{color:#c68c18}
.nafa-guide-step.is-active i{border:7px solid #c99a28;color:transparent}
.nafa-guide-step.is-done{color:#287a48}
.nafa-guide-step.is-done i{border-color:#2f9356;background:#2f9356;color:#fff}
.nafa-guide-step span{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.nafa-guide-layout{
  display:grid;
  grid-template-columns:minmax(300px,390px) minmax(0,1fr);
  gap:24px;
  align-items:start;
}
.nafa-guide-advice{
  border:1px solid #e6d8b7;
  border-radius:19px;
  background:#fbf7ed;
  overflow:hidden;
  box-shadow:0 8px 25px rgba(15,35,72,.05);
}
.nafa-guide-advice-head{display:flex;gap:15px;padding:20px 20px 14px}
.nafa-guide-bulb{
  width:48px;height:48px;min-width:48px;border-radius:14px;background:#102b57;
  display:grid;place-items:center;font-size:24px;box-shadow:0 5px 14px rgba(16,43,87,.15)
}
.nafa-guide-advice-head small,.nafa-guide-suggestion small,.nafa-guide-section-head>span{
  display:block;font-size:11px;line-height:1.2;font-weight:900;letter-spacing:.08em;color:#9a6a13;margin-bottom:6px
}
.nafa-guide-advice-head h2{margin:0 0 8px;font-size:20px;line-height:1.18;color:#102348}
.nafa-guide-advice-head p{margin:0;color:#555e6d;font-size:14px;line-height:1.55}
.nafa-guide-benefit{display:flex;gap:10px;margin:0 20px 14px;padding:0 0 14px;border-bottom:1px solid #eadfca}
.nafa-guide-benefit>span{width:26px;height:26px;border:2px solid #34a263;border-radius:50%;display:grid;place-items:center;color:#24814b;font-weight:900;flex:none}
.nafa-guide-benefit p{margin:0;color:#475569;font-size:13px;line-height:1.45}
.nafa-guide-suggestion{
  margin:0 18px 12px;padding:16px;border:1px solid #b9dcc7;border-radius:14px;background:#eef8f1
}
.nafa-guide-suggestion small{color:#20804b}
.nafa-guide-suggestion p{margin:8px 0 14px;font-size:14px;line-height:1.55;color:#153125}
.nafa-guide-use{
  width:100%;border:1px solid #b8d7c3;border-radius:9px;background:#fff;color:#217844;padding:10px 12px;font-weight:850;cursor:pointer
}
.nafa-guide-actions{display:grid;gap:8px;padding:0 18px 18px}
.nafa-guide-actions button{
  width:100%;text-align:left;border:1px solid #d8d8d8;border-radius:9px;background:#fff;color:#142744;padding:11px 13px;font-weight:800;cursor:pointer
}
.nafa-guide-actions button:hover,.nafa-guide-use:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(15,35,72,.07)}
.nafa-guide-work{
  min-width:0;border:1px solid #dde2e8;border-radius:19px;background:#fff;overflow:hidden;box-shadow:0 8px 25px rgba(15,35,72,.04)
}
.nafa-guide-edit-section,.nafa-guide-work .nafa-edit-section{
  margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important;padding:24px 26px 18px!important
}
.nafa-guide-work .nafa-edit-photos .nafa-edit-section-head{margin-bottom:18px}
.nafa-guide-section-head{margin-bottom:18px}
.nafa-guide-section-head>span{color:#697586}
.nafa-guide-section-head h2{margin:0 0 6px;font-size:22px;color:#102348}
.nafa-guide-section-head p{margin:0;color:#6b7280;font-size:13px;line-height:1.45}
.nafa-guide-work .ef label{font-weight:850;color:#182a48;margin-bottom:7px}
.nafa-guide-work input,.nafa-guide-work textarea,.nafa-guide-work select{
  width:100%;border:1.5px solid #c99628!important;border-radius:10px!important;background:#fff!important;color:#142744!important;font-size:15px!important;padding:13px 14px!important;box-shadow:none!important
}
.nafa-guide-work textarea{min-height:250px;resize:vertical;line-height:1.55}
.nafa-guide-work input:focus,.nafa-guide-work textarea:focus,.nafa-guide-work select:focus{outline:3px solid rgba(202,151,37,.13)!important;border-color:#c58c16!important}
.nafa-guide-price{position:relative}.nafa-guide-price span{position:absolute;right:15px;top:50%;transform:translateY(-50%);font-weight:900;color:#687386}.nafa-guide-price input{padding-right:40px!important}
.nafa-guide-work .nafa-field-advice{
  display:flex!important;gap:10px!important;align-items:flex-start!important;margin:20px 0 0!important;padding:13px 14px!important;border:1px solid #f0d9a3!important;border-radius:10px!important;background:#fff9ea!important;color:#5f5c50!important;font-size:13px!important
}
.nafa-guide-work-actions{
  display:flex;justify-content:space-between;gap:14px;border-top:1px solid #e8ebef;padding:14px 24px;background:#fff
}
.nafa-guide-work-actions button{border-radius:9px;padding:12px 18px;font-weight:900;cursor:pointer}
.nafa-guide-save{border:1px solid #d1d5db;background:#fff;color:#102348}
.nafa-guide-done{border:1px solid #2e8c50;background:#2e8c50;color:#fff;min-width:270px}
.nafa-guide-finished{max-width:650px;margin:70px auto;text-align:center;padding:40px;border:1px solid #dce6df;border-radius:20px;background:#fff}
.nafa-guide-finished>span{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;margin:0 auto 16px;background:#eaf7ee;color:#27824b;font-size:28px;font-weight:900}
.nafa-guide-finished h2{margin:0 0 8px;color:#102348}.nafa-guide-finished p{color:#64748b}.nafa-guide-finished button{border:0;border-radius:10px;background:#102b57;color:#fff;padding:12px 18px;font-weight:850;cursor:pointer}
@media(max-width:900px){
  .nafa-guided-editor{padding:18px 14px 28px}.nafa-guide-counter{font-size:21px}.nafa-guide-layout{grid-template-columns:1fr}.nafa-guide-advice{position:static}.nafa-guide-step span{font-size:11px}.nafa-guide-work-actions{flex-direction:column}.nafa-guide-done{min-width:0}
}
@media(max-width:620px){
  .nafa-guide-steps{overflow-x:auto;justify-content:flex-start;padding-bottom:6px}.nafa-guide-step{min-width:90px}.nafa-guide-counter{text-align:left}.nafa-guide-advice-head{padding:16px}.nafa-guide-suggestion{margin-left:14px;margin-right:14px}.nafa-guide-actions{padding-left:14px;padding-right:14px}.nafa-guide-edit-section,.nafa-guide-work .nafa-edit-section{padding:18px 16px 14px!important}
}

/* NAFA guided v2 — état "passé" et garde-fous d'affichage */
.nafa-guide-step.is-skipped{color:#7a8494}
.nafa-guide-step.is-skipped i{border-color:#aeb6c2;background:#f3f5f7;color:#6d7785}
#fp-item-page .nafa-guided-editor .nafa-guide-layout{display:grid!important}
#fp-item-page .nafa-guided-editor .nafa-guide-advice{display:block!important}
#fp-item-page .nafa-guided-editor .nafa-guide-work{display:block!important}


/* NAFA guided v3 — actions explicites et validation sans navigation automatique */
.nafa-guide-save,.nafa-guide-done{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}
.nafa-guide-save small,.nafa-guide-done small{display:block;width:100%;font-size:11px;line-height:1.2;font-weight:650;opacity:.78}
.nafa-guide-done.is-complete,.nafa-guide-done:disabled{background:#eaf7ee!important;border-color:#a9d5b7!important;color:#247446!important;cursor:default;box-shadow:none!important}
.nafa-guide-use{background:#2f9255!important;color:#fff!important;border-color:#2f9255!important;text-align:center;font-weight:900!important}
.nafa-guide-use:hover{background:#287d49!important}
.nafa-guide-actions{padding-top:2px}
.nafa-guide-actions button{justify-content:flex-start}
.nafa-field-applied{animation:nafaGuideApplied .9s ease}
@keyframes nafaGuideApplied{0%,100%{box-shadow:0 0 0 0 rgba(47,146,85,0)}35%{box-shadow:0 0 0 5px rgba(47,146,85,.18)}}

/* ===== NAFA Conseils guidés V6 : rappel de l'annonce ===== */
.nafa-guide-item-recap{
  display:flex;align-items:center;gap:18px;margin:0 0 24px;padding:16px 20px;
  background:#fff;border:1px solid #e3e8ef;border-radius:16px;box-shadow:0 6px 20px rgba(15,35,72,.04)
}
.nafa-guide-item-thumb{width:92px;height:68px;flex:0 0 92px;border:1px solid #dbe1e8;border-radius:10px;background:#f8fafc;display:grid;place-items:center;overflow:hidden}
.nafa-guide-item-thumb img{width:100%;height:100%;object-fit:contain;background:#fff}
.nafa-guide-item-thumb span{font-size:30px}
.nafa-guide-item-main{min-width:0;flex:1}
.nafa-guide-item-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.nafa-guide-item-title-row h1{margin:0;color:#102348;font-size:22px;line-height:1.2;font-weight:900}
.nafa-guide-item-main p{margin:7px 0 0;color:#667085;font-size:13px}
.nafa-guide-item-main p b{color:#c6cbd3;padding:0 4px}
.nafa-guide-sale-badge{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:#eaf7ee;border:1px solid #b9dfc7;color:#257748;font-size:12px;font-weight:850}
.nafa-guide-use.nafa-guide-applied{background:#e9f7ee!important;border-color:#91cda7!important;color:#1d7541!important}
.nafa-field-applied{box-shadow:0 0 0 4px rgba(47,147,86,.14)!important;border-color:#2f9356!important}
@media(max-width:760px){.nafa-guide-item-recap{align-items:flex-start}.nafa-guide-item-thumb{width:72px;height:58px;flex-basis:72px}.nafa-guide-item-title-row h1{font-size:18px}}


/* ══════════════════════════════════════════════════════════════
   LOCALISATIONS — modèles pré-enregistrés V8.2
   ══════════════════════════════════════════════════════════════ */
.loc-picker-head{margin-bottom:20px}
.loc-picker-title{font-size:20px;font-weight:850;color:var(--tx);margin-bottom:6px}
.loc-picker-sub{font-size:13px;line-height:1.55;color:var(--tx2);max-width:720px}
.loc-template-group{margin:18px 0 20px}
.loc-template-group-title{font-size:13px;font-weight:800;color:var(--tx);margin-bottom:10px}
.loc-template-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.loc-template-card{appearance:none;border:1px solid var(--bdr2);background:var(--sur);border-radius:14px;padding:14px 10px 11px;min-height:104px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer;font-family:inherit;color:var(--tx);transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease,background .15s ease}
.loc-template-card:hover{transform:translateY(-2px);border-color:#d4b15b;background:#fffdf6;box-shadow:0 8px 22px rgba(15,23,42,.08)}
.loc-template-icon{font-size:28px;line-height:1}
.loc-template-name{font-size:13px;font-weight:800;text-align:center;line-height:1.2}
.loc-template-add{font-size:10px;font-weight:750;color:var(--tx2);opacity:.8}
.loc-custom-card{width:100%;appearance:none;border:1px dashed #c9a649;background:#fffaf0;border-radius:14px;padding:13px 16px;display:flex;align-items:center;gap:12px;cursor:pointer;text-align:left;font-family:inherit;color:var(--tx);transition:border-color .15s ease,background .15s ease}
.loc-custom-card:hover{background:#fff6df;border-color:#a98224}
.loc-custom-plus{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid #ead69f;font-size:20px;color:#8a6a16;flex:0 0 auto}
.loc-custom-card strong{display:block;font-size:13px;margin-bottom:2px}
.loc-custom-card small{display:block;font-size:11px;color:var(--tx2);font-weight:500}
.loc-picker-complete{border:1px solid #bfe2c9;background:#f1fbf4;color:#23683a;border-radius:12px;padding:14px 16px;font-size:13px;font-weight:700;margin:16px 0}
@media(max-width:900px){.loc-template-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.loc-template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.loc-template-card{min-height:96px}}


/* =========================================================
   NAFA V8.2.6.5 — Refonte visuelle capsule Niveau / XP / Coins
   Fonctionnement inchangé, uniquement le visuel de la topbar.
   ========================================================= */
.nafa-top-progress{
  border:1px solid #b8cee4 !important;
  background:linear-gradient(135deg,#ffffff 0%,#eef6ff 68%,#fff8e7 100%) !important;
  color:#102f4c !important;
  border-radius:18px !important;
  padding:7px 12px 7px 8px !important;
  box-shadow:0 6px 18px rgba(10,48,82,.16),0 1px 0 rgba(255,255,255,.9) inset !important;
}
.nafa-top-progress:hover{
  border-color:#7eacd1 !important;
  box-shadow:0 9px 24px rgba(10,48,82,.20),0 1px 0 rgba(255,255,255,.95) inset !important;
}
.nafa-top-progress:focus-visible{
  outline:3px solid rgba(43,121,181,.22) !important;
  outline-offset:2px !important;
}
.ntp-emblem{
  background:linear-gradient(160deg,#2d6ca8,#173b7a) !important;
  box-shadow:0 4px 12px rgba(23,59,122,.26) !important;
}
.ntp-emblem::after{border-color:rgba(255,255,255,.28) !important}
.ntp-emblem strong{color:#fff !important;text-shadow:none !important}
.ntp-crown{color:#f2c14e !important}
.ntp-identity strong{color:#102f4c !important}
.ntp-identity small{color:#64788a !important}
.ntp-row{color:#5b7082 !important}
.ntp-row strong{color:#173b7a !important}
.ntp-track{
  background:#d9e5ef !important;
  box-shadow:inset 0 1px 2px rgba(16,47,76,.08) !important;
}
.ntp-track i{
  background:linear-gradient(90deg,#1d6fb0 0%,#4e93c7 55%,#e1ad3d 100%) !important;
  box-shadow:none !important;
}
.ntp-divider{background:#cddbe7 !important}
.ntp-coins{color:#102f4c !important}
.ntp-coin-icon{
  background:linear-gradient(145deg,#ffe59a,#e7ad33) !important;
  box-shadow:0 0 0 3px rgba(231,173,51,.12),0 2px 5px rgba(74,50,6,.14) !important;
}
.ntp-coin-icon::after{
  color:#75500e !important;
  border-color:rgba(117,80,14,.36) !important;
}
.ntp-coins strong{color:#102f4c !important}
.ntp-coins small{color:#7a6a47 !important}


/* =========================================================
   NAFA V8.2.6.7 — TOPBAR PROGRESSION CLAIRE (override final)
   ========================================================= */
body .topbar .nafa-top-progress,
body #nafa-top-progress{
  border:1px solid #b9cee2 !important;
  background:#ffffff !important;
  background-image:linear-gradient(135deg,#ffffff 0%,#eef6fc 72%,#fff7df 100%) !important;
  color:#102f4c !important;
  box-shadow:0 5px 16px rgba(7,44,76,.16) !important;
}
body .topbar .nafa-top-progress:hover,
body #nafa-top-progress:hover{
  border-color:#7ca9cd !important;
  background-image:linear-gradient(135deg,#ffffff 0%,#e9f4fc 72%,#fff3d2 100%) !important;
  box-shadow:0 8px 20px rgba(7,44,76,.20) !important;
}
body .topbar .nafa-top-progress .ntp-emblem,
body #nafa-top-progress .ntp-emblem{
  background:#1d5f9d !important;
  background-image:linear-gradient(160deg,#2d78b5,#163e76) !important;
  box-shadow:0 3px 10px rgba(22,62,118,.25) !important;
}
body .topbar .nafa-top-progress .ntp-emblem strong,
body #nafa-top-progress .ntp-emblem strong{color:#fff !important;}
body .topbar .nafa-top-progress .ntp-crown,
body #nafa-top-progress .ntp-crown{color:#e8b83f !important;}
body .topbar .nafa-top-progress .ntp-identity strong,
body .topbar .nafa-top-progress .ntp-row strong,
body .topbar .nafa-top-progress .ntp-coins strong,
body #nafa-top-progress .ntp-identity strong,
body #nafa-top-progress .ntp-row strong,
body #nafa-top-progress .ntp-coins strong{color:#102f4c !important;}
body .topbar .nafa-top-progress .ntp-identity small,
body .topbar .nafa-top-progress .ntp-row,
body #nafa-top-progress .ntp-identity small,
body #nafa-top-progress .ntp-row{color:#61788c !important;}
body .topbar .nafa-top-progress .ntp-track,
body #nafa-top-progress .ntp-track{
  background:#d8e5ef !important;
  box-shadow:inset 0 1px 2px rgba(16,47,76,.08) !important;
}
body .topbar .nafa-top-progress .ntp-track i,
body #nafa-top-progress .ntp-track i{
  background:#2779b8 !important;
  background-image:linear-gradient(90deg,#1e6da9 0%,#4b91c5 60%,#e4b441 100%) !important;
  box-shadow:none !important;
}
body .topbar .nafa-top-progress .ntp-divider,
body #nafa-top-progress .ntp-divider{background:#cad9e5 !important;}
body .topbar .nafa-top-progress .ntp-coins,
body #nafa-top-progress .ntp-coins{color:#102f4c !important;}
body .topbar .nafa-top-progress .ntp-coin-icon,
body #nafa-top-progress .ntp-coin-icon{
  background:#f2c451 !important;
  background-image:linear-gradient(145deg,#ffe59a,#e4ad32) !important;
  box-shadow:0 0 0 3px rgba(228,173,50,.13) !important;
}
body .topbar .nafa-top-progress .ntp-coin-icon::after,
body #nafa-top-progress .ntp-coin-icon::after{
  color:#75500e !important;
  border-color:rgba(117,80,14,.36) !important;
}
body .topbar .nafa-top-progress .ntp-coins small,
body #nafa-top-progress .ntp-coins small{color:#776848 !important;}

body.nafa-modal-open{overflow:hidden}.nafa-modal-root{display:none;position:fixed;inset:0;z-index:30000;align-items:center;justify-content:center;padding:24px}.nafa-modal-root.is-open{display:flex}.nafa-modal-backdrop{position:absolute;inset:0;background:rgba(8,31,53,.52);backdrop-filter:blur(3px)}.nafa-modal-shell{position:relative;z-index:1;width:min(620px,calc(100vw - 32px));display:flex;flex-direction:column;background:#fff;border:1px solid #d8e5ef;border-radius:24px;box-shadow:0 28px 80px rgba(7,44,76,.25);overflow:hidden;color:#102f4c}.nafa-modal-shell.size-small{width:min(440px,calc(100vw - 32px))}.nafa-modal-header{display:flex;gap:13px;padding:22px 54px 16px 22px;border-bottom:1px solid #e3edf5;background:linear-gradient(135deg,#fff,#eef6fc)}.nafa-modal-icon{width:44px;height:44px;flex:0 0 44px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,#3291e7,#1d6da9);color:#fff;font-weight:900;font-size:20px}.nafa-modal-shell.tone-confirm .nafa-modal-icon{background:linear-gradient(160deg,#56be75,#2f9954)}.nafa-modal-shell.tone-danger .nafa-modal-icon,.nafa-modal-shell.tone-error .nafa-modal-icon{background:linear-gradient(160deg,#f26868,#d43f3f)}.nafa-modal-header h2{margin:1px 0 4px;color:#102f4c!important;font-size:20px}.nafa-modal-header p{margin:0;color:#61788c;font-size:13px;line-height:1.5}.nafa-modal-close{position:absolute;top:14px;right:14px;width:34px;height:34px;border:1px solid #d8e5ef;border-radius:50%;background:#fff;color:#526b80;font-size:21px;cursor:pointer}.nafa-modal-content{padding:8px 22px}.nafa-modal-actions{display:flex;justify-content:flex-end;gap:10px;padding:14px 22px 18px;border-top:1px solid #e3edf5;background:#f8fbfd}.nafa-modal-btn{min-height:42px;padding:10px 17px;border-radius:12px;font:inherit;font-size:13px;font-weight:750;cursor:pointer}.nafa-modal-btn.secondary{border:1px solid #cbdbe8;background:#fff;color:#36546d}.nafa-modal-btn.primary{border:1px solid #1d6da9;background:#1d6da9;color:#fff}.nafa-modal-btn.danger{border:1px solid #d43f3f;background:#d43f3f;color:#fff}@media(max-width:640px){.nafa-modal-root{padding:12px;align-items:flex-end}.nafa-modal-shell,.nafa-modal-shell.size-small{width:100%;border-radius:22px 22px 14px 14px}.nafa-modal-actions{flex-direction:column-reverse}.nafa-modal-btn{width:100%}}


/* NAFA V8.2.7.0 — variante Premium du composant de fenêtre commun */
.nafa-modal-shell.tone-premium .nafa-modal-icon{
  background:linear-gradient(160deg,#8a68df,#6545c3)!important;
  box-shadow:0 4px 12px rgba(101,69,195,.20);
}
.nafa-modal-shell.tone-premium .nafa-modal-header{
  background:linear-gradient(135deg,#ffffff 0%,#f4f0ff 100%)!important;
}


/* NAFA V8.2.7.1 — variantes du visuel commun Communautés */
.nafa-modal-shell.tone-confirm .nafa-modal-icon{
  background:linear-gradient(160deg,#56be75,#2f9954)!important;
  box-shadow:0 4px 12px rgba(47,153,84,.18);
}


/* NAFA — Lisibilité du solde Coins dans la boutique des récompenses */
.nrs-balance,
.nrs-balance span,
.nrs-balance strong {
  color: #fff !important;
}


/* ================================================================
   AUTH — thème neutre et stable
   L'écran de connexion ne dépend jamais du profil de la session précédente.
   ================================================================ */
body.login-page .auth-card .btn-dark,
body.login-page.theme-premium .auth-card .btn-dark,
body.login-page.theme-standard .auth-card .btn-dark,
body.login-page.profile-premium .auth-card .btn-dark,
body.login-page.profile-collectionneur .auth-card .btn-dark,
body.login-page.profile-revendeur .auth-card .btn-dark{
  background:linear-gradient(135deg,#40916C,#52B788)!important;
  color:#fff!important;
  border-color:transparent!important;
  box-shadow:0 8px 20px rgba(64,145,108,.24)!important;
}
body.login-page .auth-card .btn-dark:hover{
  background:#40916C!important;
}
body.login-page .auth-logo-name,
body.login-page.theme-premium .auth-logo-name{
  color:#0F1F3D!important;
}


/* ================================================================
   COLLECTIONNEUR — textes sur fonds bordeaux
   Blanc cassé + reflet doré discret.
   Limité au bandeau d'accueil et à la carte Protection.
   ================================================================ */
.nah-collector-v3 .nah-collector-header .nah-eyebrow,
.nah-collector-v3 .nah-collector-header h1,
.nah-collector-v3 .nah-collector-header h2,
.nah-collector-v3 .nah-collector-header p,
.nah-collector-v3 .nah-collector-protection > span,
.nah-collector-v3 .nah-collector-protection h3,
.nah-collector-v3 .nah-collector-protection p{
  color:#FFF8E8 !important;
  -webkit-text-fill-color:#FFF8E8 !important;
  text-shadow:
    0 1px 0 rgba(255,255,255,.12),
    0 0 5px rgba(218,165,32,.34),
    0 1px 10px rgba(218,165,32,.18) !important;
}
.nah-collector-v3 .nah-collector-header .nah-eyebrow,
.nah-collector-v3 .nah-collector-protection > span{
  color:#FFE7A3 !important;
  -webkit-text-fill-color:#FFE7A3 !important;
  text-shadow:
    0 0 4px rgba(255,215,96,.52),
    0 1px 8px rgba(192,132,24,.30) !important;
}
.nah-collector-v3 .nah-collector-header h1,
.nah-collector-v3 .nah-collector-header h2,
.nah-collector-v3 .nah-collector-protection h3{
  font-weight:900;
}
.nah-collector-v3 .nah-collector-header p,
.nah-collector-v3 .nah-collector-protection p{
  opacity:.96;
}


/* ================================================================
   NAFA — POLISH UI PROFESSIONNEL
   Communautés / Acheter / Hero Collectionneur
   ================================================================ */

/* ---------- Navigation interne des communautés ---------- */
.comm-space-nav{
  position:sticky;
  top:10px;
  z-index:20;
  display:flex;
  align-items:center;
  gap:4px;
  width:max-content;
  max-width:100%;
  margin:20px 0 24px;
  padding:5px;
  border:1px solid rgba(25,42,70,.10);
  border-radius:16px;
  background:rgba(248,250,252,.94);
  box-shadow:
    0 10px 28px rgba(20,35,60,.07),
    inset 0 1px 0 rgba(255,255,255,.9);
  backdrop-filter:blur(14px);
  overflow-x:auto;
  scrollbar-width:none;
}
.comm-space-nav::-webkit-scrollbar{display:none}
.comm-space-nav button{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:40px;
  flex:0 0 auto;
  border:0;
  border-radius:11px;
  background:transparent;
  padding:0 14px;
  color:#66758a;
  font:inherit;
  font-size:11px;
  font-weight:850;
  letter-spacing:.005em;
  white-space:nowrap;
  cursor:pointer;
  transition:background .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.comm-space-nav button:hover{
  background:#fff;
  color:#172840;
}
.comm-space-nav button.active{
  background:linear-gradient(135deg,#172840,#203b52);
  color:#fff;
  box-shadow:0 7px 16px rgba(23,40,64,.17);
}
.comm-space-nav button.active:after{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  bottom:-5px;
  height:2px;
  border-radius:999px;
  background:#d6a84b;
  box-shadow:0 0 8px rgba(214,168,75,.42);
}
.comm-space-nav button[data-comm-tab="overview"]:before{content:"⌂"}
.comm-space-nav button[data-comm-tab="objects"]:before{content:"◇"}
.comm-space-nav button[data-comm-tab="collections"]:before{content:"▦"}
.comm-space-nav button[data-comm-tab="members"]:before{content:"◎"}
.comm-space-nav button[data-comm-tab="about"]:before{content:"i"}
.comm-space-nav button[data-comm-tab="admin"]:before{content:"⚙"}
.comm-space-nav button:before{
  display:grid;
  place-items:center;
  width:18px;
  height:18px;
  font-size:11px;
  font-weight:950;
  opacity:.86;
}

/* ---------- CTA vendre dans un univers ---------- */
.comm-universe-sell{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:43px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:12px;
  background:linear-gradient(135deg,#123d34,#1b6554);
  color:#fff;
  padding:0 16px;
  font:inherit;
  font-size:11px;
  font-weight:900;
  letter-spacing:.01em;
  cursor:pointer;
  box-shadow:
    0 9px 20px rgba(18,61,52,.18),
    inset 0 1px 0 rgba(255,255,255,.12);
  transition:transform .16s ease,box-shadow .16s ease,filter .16s ease;
}
.comm-universe-sell:before{
  content:"+";
  display:grid;
  place-items:center;
  width:21px;
  height:21px;
  border-radius:7px;
  background:rgba(255,255,255,.13);
  font-size:16px;
  line-height:1;
}
.comm-universe-sell:hover{
  transform:translateY(-1px);
  filter:brightness(1.04);
  box-shadow:0 12px 25px rgba(18,61,52,.23),inset 0 1px 0 rgba(255,255,255,.15);
}
.comm-universe-sell:active{transform:translateY(0)}
.comm-universe-sell:focus-visible{
  outline:3px solid rgba(38,145,111,.22);
  outline-offset:2px;
}

/* ---------- Acheter avec NAFA ---------- */
.nf-buy-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.10);
  border-radius:24px;
  padding:26px 28px;
  margin-bottom:18px;
  background:
    radial-gradient(circle at 88% 12%,rgba(208,169,86,.18),transparent 28%),
    linear-gradient(135deg,#102c4d 0%,#174b51 55%,#21684e 100%);
  color:#fff;
  box-shadow:
    0 18px 42px rgba(15,48,72,.18),
    inset 0 1px 0 rgba(255,255,255,.10);
}
.nf-buy-hero:after{
  content:"";
  position:absolute;
  inset:auto -70px -90px auto;
  width:230px;
  height:230px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:50%;
  box-shadow:0 0 0 35px rgba(255,255,255,.025),0 0 0 70px rgba(255,255,255,.018);
  pointer-events:none;
  z-index:-1;
}
.nf-buy-hero h2{
  display:flex;
  align-items:center;
  gap:10px;
  max-width:760px;
  margin:0 0 8px;
  color:#fff;
  font-size:25px;
  line-height:1.15;
  font-weight:920;
  letter-spacing:-.025em;
  text-shadow:0 1px 8px rgba(0,0,0,.12);
}
.nf-buy-hero h2 .nf-ico{
  width:23px;
  height:23px;
  padding:4px;
  border-radius:8px;
  background:rgba(255,255,255,.10);
}
.nf-buy-hero p{
  max-width:760px;
  margin:0 0 19px;
  color:rgba(255,255,255,.82);
  font-size:13px;
  line-height:1.62;
  opacity:1;
}
.nf-buy-actions{
  display:flex;
  align-items:center;
  gap:9px;
  flex-wrap:wrap;
}
.nf-buy-hero .nf-buy-actions .btn{
  min-height:42px;
  border-radius:11px;
  padding:0 15px;
  font-size:11px;
  font-weight:900;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease;
}
.nf-buy-hero .nf-buy-actions .btn-dark{
  border:1px solid rgba(255,255,255,.8);
  background:#fff;
  color:#15354a;
  box-shadow:0 8px 20px rgba(6,28,43,.18);
}
.nf-buy-hero .nf-buy-actions .btn:not(.btn-dark){
  border:1px solid rgba(255,255,255,.25);
  background:rgba(255,255,255,.08);
  color:#fff;
  backdrop-filter:blur(8px);
}
.nf-buy-hero .nf-buy-actions .btn:hover{
  transform:translateY(-1px);
}
.nf-buy-hero .nf-buy-actions .btn:not(.btn-dark):hover{
  background:rgba(255,255,255,.14);
}

/* ---------- Bandeau Collectionneur ---------- */
.nah-collector-v3 .nah-collector-header{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  align-items:center;
  min-height:145px;
  padding:27px 30px;
  border:1px solid rgba(224,180,105,.22);
  border-radius:24px;
  background:
    radial-gradient(circle at 85% 5%,rgba(229,187,113,.15),transparent 27%),
    linear-gradient(125deg,#301820 0%,#633044 58%,#a35d4f 100%);
  box-shadow:
    0 18px 40px rgba(68,31,45,.17),
    inset 0 1px 0 rgba(255,255,255,.08);
}
.nah-collector-v3 .nah-collector-header:after{
  content:"";
  position:absolute;
  right:-55px;
  top:-80px;
  width:260px;
  height:260px;
  border-radius:50%;
  border:1px solid rgba(255,232,180,.09);
  box-shadow:0 0 0 38px rgba(255,232,180,.025),0 0 0 76px rgba(255,232,180,.018);
  pointer-events:none;
  z-index:-1;
}
.nah-collector-v3 .nah-collector-header>div{
  max-width:850px;
}
.nah-collector-v3 .nah-collector-header .nah-eyebrow{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:0 9px;
  border:1px solid rgba(255,231,163,.20);
  border-radius:999px;
  background:rgba(255,255,255,.06);
  letter-spacing:.13em;
}
.nah-collector-v3 .nah-collector-header h1{
  margin:11px 0 3px;
  font-size:27px;
  line-height:1.12;
  letter-spacing:-.025em;
}
.nah-collector-v3 .nah-collector-header h2{
  margin:4px 0 8px;
  font-size:21px;
  line-height:1.22;
  letter-spacing:-.018em;
}
.nah-collector-v3 .nah-collector-header p{
  max-width:720px;
  margin:0;
  font-size:12px;
  line-height:1.6;
}
.nah-collector-v3 .nah-collector-header .nah-primary{
  position:relative;
  z-index:2;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:43px;
  border:1px solid rgba(255,255,255,.7);
  border-radius:12px;
  background:#fff9ef;
  color:#633044;
  padding:0 16px;
  font-size:11px;
  font-weight:900;
  box-shadow:0 9px 20px rgba(52,20,31,.18);
  transition:transform .16s ease,box-shadow .16s ease;
}
.nah-collector-v3 .nah-collector-header .nah-primary:hover{
  transform:translateY(-1px);
  box-shadow:0 12px 25px rgba(52,20,31,.22);
}

/* ---------- Responsive ---------- */
@media(max-width:760px){
  .comm-space-nav{
    width:100%;
    top:4px;
    margin:12px 0 16px;
    border-radius:14px;
  }
  .comm-space-nav button{
    min-height:38px;
    padding:0 11px;
    font-size:10px;
  }
  .comm-space-nav button.active:after{display:none}
  .comm-universe-heading{
    align-items:flex-start;
    flex-direction:column;
  }
  .comm-universe-sell{
    width:100%;
    min-height:41px;
  }
  .nf-buy-hero{
    border-radius:20px;
    padding:21px 18px;
  }
  .nf-buy-hero h2{font-size:21px}
  .nf-buy-hero .nf-buy-actions .btn{width:100%}
  .nah-collector-v3 .nah-collector-header{
    align-items:flex-start;
    min-height:0;
    padding:22px 20px;
    border-radius:20px;
  }
  .nah-collector-v3 .nah-collector-header .nah-primary{
    width:100%;
  }
}


/* ========================================================================
   NAFA V12 — FINITION VISUELLE / LISIBILITÉ
   Communautés · cartes · Acheter · fiche objet · Boutique récompenses
   Aucun comportement JS modifié.
   ======================================================================== */

/* ---------- Modale "Créer une communauté" ---------- */
#create-comm-overlay{
  padding:24px !important;
  align-items:center !important;
  justify-content:center !important;
}
#create-comm-overlay .modal{
  width:min(720px,calc(100vw - 32px)) !important;
  max-width:720px !important;
  max-height:min(88vh,820px) !important;
  overflow:auto !important;
  box-sizing:border-box !important;
  border:1px solid rgba(33,48,72,.10) !important;
  border-radius:24px !important;
  padding:25px 26px 22px !important;
  background:#fffdf9 !important;
  box-shadow:
    0 28px 70px rgba(17,31,52,.24),
    0 2px 10px rgba(17,31,52,.08) !important;
}
#create-comm-overlay .modal-x{
  top:16px !important;
  right:16px !important;
  width:38px !important;
  height:38px !important;
  border:1px solid #e4e8ed !important;
  border-radius:12px !important;
  background:#fff !important;
  color:#28374b !important;
  box-shadow:0 5px 14px rgba(20,35,58,.08) !important;
}
#create-comm-overlay .modal-handle{display:none !important}
#create-comm-overlay .edit-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:15px 14px !important;
}
#create-comm-overlay .ef.full{grid-column:1/-1 !important}
#create-comm-overlay .ef label{
  display:block !important;
  margin-bottom:6px !important;
  color:#26364b !important;
  font-size:10px !important;
  font-weight:900 !important;
  letter-spacing:.055em !important;
  text-transform:uppercase !important;
}
#create-comm-overlay input[type="text"],
#create-comm-overlay textarea,
#create-comm-overlay select{
  width:100% !important;
  min-height:43px !important;
  box-sizing:border-box !important;
  border:1px solid #dce3ea !important;
  border-radius:12px !important;
  background:#fff !important;
  color:#192b40 !important;
  font:inherit !important;
  font-size:12px !important;
  outline:0 !important;
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease !important;
}
#create-comm-overlay input[type="text"],
#create-comm-overlay select{padding:0 12px !important}
#create-comm-overlay textarea{
  min-height:92px !important;
  padding:11px 12px !important;
  resize:vertical !important;
}
#create-comm-overlay input:focus,
#create-comm-overlay textarea:focus,
#create-comm-overlay select:focus{
  border-color:#467c6e !important;
  box-shadow:0 0 0 3px rgba(70,124,110,.12) !important;
  background:#fff !important;
}
#create-comm-overlay .comm-visual-upload-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
}
#create-comm-overlay .comm-upload-tile{
  position:relative !important;
  min-height:128px !important;
  padding:15px !important;
  border:1px dashed #cbd5df !important;
  border-radius:16px !important;
  background:linear-gradient(145deg,#fbfcfd,#f5f8fa) !important;
  color:#26364b !important;
  cursor:pointer !important;
  transition:border-color .16s ease,background .16s ease,transform .16s ease !important;
}
#create-comm-overlay .comm-upload-tile:hover{
  border-color:#739b90 !important;
  background:#f5faf8 !important;
  transform:translateY(-1px) !important;
}
#create-comm-overlay .comm-upload-tile>span:first-child{
  display:block !important;
  color:#203247 !important;
  font-size:11px !important;
  font-weight:900 !important;
}
#create-comm-overlay .comm-upload-tile small{
  display:block !important;
  margin-top:4px !important;
  color:#758296 !important;
  font-size:9px !important;
  line-height:1.35 !important;
}
#create-comm-overlay .modal>div:last-child{
  padding-top:5px !important;
}
#create-comm-overlay .modal>div:last-child .btn{
  min-height:42px !important;
  border-radius:11px !important;
  padding:0 16px !important;
  font-size:11px !important;
  font-weight:900 !important;
}
#create-comm-overlay .modal>div:last-child .btn-dark{
  background:linear-gradient(135deg,#16354e,#224d63) !important;
  color:#fff !important;
  border-color:transparent !important;
  box-shadow:0 8px 18px rgba(22,53,78,.18) !important;
}

/* ---------- Filtres catégories Communautés ---------- */
.comm-category-strip{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  padding:3px 2px 7px !important;
  overflow-x:auto !important;
  scroll-snap-type:x proximity !important;
}
.comm-category-chip{
  flex:0 0 auto !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
  min-height:38px !important;
  padding:0 13px !important;
  border:1px solid #dfe6ec !important;
  border-radius:11px !important;
  background:#fff !important;
  color:#394b60 !important;
  box-shadow:0 3px 9px rgba(25,42,70,.035) !important;
  font-size:10px !important;
  font-weight:850 !important;
  line-height:1 !important;
  white-space:nowrap !important;
  opacity:1 !important;
  visibility:visible !important;
  transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease !important;
}
.comm-category-chip span{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:14px !important;
  line-height:1 !important;
}
.comm-category-chip:hover{
  border-color:#aebbc8 !important;
  background:#f7fafb !important;
  color:#172b42 !important;
  transform:translateY(-1px) !important;
}
.comm-category-chip.active{
  border-color:#1d4051 !important;
  background:linear-gradient(135deg,#173449,#245768) !important;
  color:#fff !important;
  box-shadow:0 7px 16px rgba(23,52,73,.17) !important;
}

/* ---------- Boutons d'action des cartes Communautés ---------- */
.comm-card-action,
.comm-card-action.discover,
.comm-card-action.manage,
.comm-card-action.open,
.comm-card-action.join{
  width:100% !important;
  min-height:42px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  padding:0 13px !important;
  border-radius:11px !important;
  font-size:10px !important;
  font-weight:900 !important;
  line-height:1.2 !important;
  opacity:1 !important;
  visibility:visible !important;
  overflow:visible !important;
}
.comm-card-action span{
  display:block !important;
  flex:1 1 auto !important;
  min-width:0 !important;
  color:inherit !important;
  opacity:1 !important;
  visibility:visible !important;
  white-space:normal !important;
  text-align:left !important;
}
.comm-card-action b{
  display:grid !important;
  place-items:center !important;
  flex:0 0 24px !important;
  width:24px !important;
  height:24px !important;
  border-radius:8px !important;
  background:rgba(255,255,255,.12) !important;
  color:inherit !important;
  font-size:13px !important;
}
.comm-card-action.discover{
  background:linear-gradient(135deg,#172f46,#234b61) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.06) !important;
  box-shadow:0 7px 16px rgba(23,47,70,.15) !important;
}
.comm-card-action.open{
  background:linear-gradient(135deg,#1f665b,#2c7f70) !important;
  color:#fff !important;
}
.comm-card-action.manage{
  background:linear-gradient(135deg,#5336a7,#6b4fc0) !important;
  color:#fff !important;
}
.comm-card-action.join{
  background:#fff7e8 !important;
  color:#754b0c !important;
  border:1px solid #ebd4aa !important;
}

/* ---------- Hero Acheter avec NAFA : plus sobre et professionnel ---------- */
.nf-buy-hero{
  position:relative !important;
  overflow:hidden !important;
  min-height:150px !important;
  padding:28px 30px !important;
  border:1px solid #d9e2e7 !important;
  border-radius:22px !important;
  background:
    radial-gradient(circle at 90% 20%,rgba(178,143,74,.14),transparent 24%),
    linear-gradient(132deg,#f7faf9 0%,#eef5f2 58%,#f7f3e9 100%) !important;
  color:#183244 !important;
  box-shadow:
    0 14px 34px rgba(24,50,68,.085),
    inset 0 1px 0 #fff !important;
}
.nf-buy-hero:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:5px;
  background:linear-gradient(180deg,#2d7767,#c59b4a);
}
.nf-buy-hero:after{
  content:"";
  position:absolute;
  right:-80px;
  top:-95px;
  width:270px;
  height:270px;
  border-radius:50%;
  border:1px solid rgba(32,91,77,.07);
  box-shadow:0 0 0 40px rgba(32,91,77,.025),0 0 0 80px rgba(197,155,74,.018);
  pointer-events:none;
}
.nf-buy-hero h2{
  position:relative !important;
  z-index:1 !important;
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  margin:0 0 8px !important;
  color:#16334a !important;
  font-size:25px !important;
  font-weight:900 !important;
  letter-spacing:-.025em !important;
  text-shadow:none !important;
}
.nf-buy-hero h2 .nf-ico{
  width:37px !important;
  height:37px !important;
  box-sizing:border-box !important;
  padding:8px !important;
  border:1px solid #d8e6e1 !important;
  border-radius:11px !important;
  background:#fff !important;
  color:#347362 !important;
  box-shadow:0 5px 13px rgba(28,72,62,.08) !important;
}
.nf-buy-hero p{
  position:relative !important;
  z-index:1 !important;
  max-width:760px !important;
  margin:0 0 20px !important;
  color:#627486 !important;
  font-size:12px !important;
  line-height:1.65 !important;
  opacity:1 !important;
}
.nf-buy-actions{
  position:relative !important;
  z-index:1 !important;
  display:flex !important;
  gap:9px !important;
  flex-wrap:wrap !important;
}
.nf-buy-hero .nf-buy-actions .btn{
  min-height:42px !important;
  border-radius:11px !important;
  padding:0 15px !important;
  font-size:10px !important;
  font-weight:900 !important;
}
.nf-buy-hero .nf-buy-actions .btn-dark{
  background:linear-gradient(135deg,#17394e,#25576a) !important;
  color:#fff !important;
  border:0 !important;
  box-shadow:0 8px 18px rgba(23,57,78,.17) !important;
}
.nf-buy-hero .nf-buy-actions .btn:not(.btn-dark){
  border:1px solid #d7e1e6 !important;
  background:#fff !important;
  color:#284356 !important;
  box-shadow:0 4px 11px rgba(24,50,68,.05) !important;
}

/* ---------- Bouton "Voir la photo" ---------- */
.fp-photo-zoom-hint{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
  min-height:36px !important;
  padding:0 13px !important;
  border:1px solid rgba(255,255,255,.76) !important;
  border-radius:11px !important;
  background:rgba(12,25,41,.90) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-size:10px !important;
  font-weight:900 !important;
  letter-spacing:.01em !important;
  box-shadow:
    0 8px 20px rgba(5,12,22,.24),
    inset 0 1px 0 rgba(255,255,255,.12) !important;
  backdrop-filter:blur(8px) !important;
  opacity:1 !important;
  visibility:visible !important;
  cursor:zoom-in !important;
  text-shadow:0 1px 2px rgba(0,0,0,.28) !important;
}

/* ---------- Solde Boutique récompenses ---------- */
.nrs-balance{
  position:relative !important;
  overflow:hidden !important;
  min-width:170px !important;
  padding:14px 17px !important;
  border:1px solid rgba(255,255,255,.08) !important;
  border-radius:15px !important;
  background:
    radial-gradient(circle at 88% 5%,rgba(240,190,81,.20),transparent 28%),
    linear-gradient(135deg,#26203f,#40326f) !important;
  color:#fffaf0 !important;
  text-align:left !important;
  box-shadow:
    0 10px 24px rgba(38,32,63,.17),
    inset 0 1px 0 rgba(255,255,255,.08) !important;
}
.nrs-balance:after{
  content:"";
  position:absolute;
  right:14px;
  top:50%;
  width:34px;
  height:34px;
  transform:translateY(-50%);
  border-radius:50%;
  background:radial-gradient(circle,#f6d36f,#c89432);
  box-shadow:0 5px 13px rgba(197,148,49,.25);
  opacity:.18;
}
.nrs-balance span{
  position:relative !important;
  z-index:1 !important;
  display:block !important;
  margin-bottom:4px !important;
  color:#e8e1f5 !important;
  -webkit-text-fill-color:#e8e1f5 !important;
  font-size:9px !important;
  font-weight:800 !important;
  letter-spacing:.09em !important;
  text-transform:uppercase !important;
  opacity:1 !important;
}
.nrs-balance strong{
  position:relative !important;
  z-index:1 !important;
  display:block !important;
  margin:0 !important;
  color:#fffaf0 !important;
  -webkit-text-fill-color:#fffaf0 !important;
  font-size:22px !important;
  line-height:1.15 !important;
  font-weight:900 !important;
}

/* ---------- Visibilité globale des petits boutons ---------- */
.comm-card-action:focus-visible,
.comm-category-chip:focus-visible,
.nf-buy-hero .btn:focus-visible,
#create-comm-overlay .btn:focus-visible{
  outline:3px solid rgba(42,114,96,.20) !important;
  outline-offset:2px !important;
}

@media(max-width:760px){
  #create-comm-overlay{
    padding:10px !important;
    align-items:flex-end !important;
  }
  #create-comm-overlay .modal{
    width:100% !important;
    max-width:none !important;
    max-height:92vh !important;
    padding:22px 17px 18px !important;
    border-radius:22px 22px 16px 16px !important;
  }
  #create-comm-overlay .edit-grid{
    grid-template-columns:1fr !important;
  }
  #create-comm-overlay .ef,
  #create-comm-overlay .ef.full{
    grid-column:1 !important;
  }
  #create-comm-overlay .comm-visual-upload-grid{
    grid-template-columns:1fr 1fr !important;
  }
  .comm-category-chip{
    min-height:37px !important;
    padding:0 11px !important;
    font-size:9px !important;
  }
  .nf-buy-hero{
    min-height:0 !important;
    padding:22px 19px !important;
    border-radius:19px !important;
  }
  .nf-buy-hero h2{font-size:21px !important}
  .nf-buy-hero .nf-buy-actions .btn{width:100% !important}
  .nrs-balance{
    width:100% !important;
    min-width:0 !important;
  }
}

@media(max-width:480px){
  #create-comm-overlay .comm-visual-upload-grid{
    grid-template-columns:1fr !important;
  }
}


/* ================================================================
   NAFA — REVENDEUR CLASSIQUE V1
   Simple, orienté actions. Le futur Mode Business reste séparé.
   ================================================================ */
.nah-reseller-classic{
  --nah-bg:#f5f7f3;
  --nah-card:#fffefa;
  --nah-text:#24342e;
  --nah-muted:#6d7a72;
  --nah-line:#dce3dc;
  --nah-accent:#356b57;
  --nah-accent2:#a66b31;
}
.nah-reseller-classic-header{
  position:relative;
  overflow:hidden;
  align-items:center;
  min-height:144px;
  padding:27px 30px;
  border:1px solid #d7dfd7;
  border-radius:24px;
  background:
    radial-gradient(circle at 88% 12%,rgba(186,139,70,.14),transparent 25%),
    linear-gradient(135deg,#eaf2ec 0%,#fdfbf3 62%,#f2e4cf 100%);
  box-shadow:0 16px 36px rgba(37,65,53,.08);
}
.nah-reseller-classic-header .nah-eyebrow{
  display:inline-flex;
  min-height:25px;
  align-items:center;
  padding:0 9px;
  border:1px solid #d5e1d7;
  border-radius:999px;
  background:rgba(255,255,255,.72);
  color:#356b57;
  font-size:9px;
  font-weight:900;
  letter-spacing:.12em;
}
.nah-reseller-classic-header h1{
  margin:10px 0 3px;
  color:#31443b;
  font-size:16px;
}
.nah-reseller-classic-header h2{
  margin:4px 0 8px;
  max-width:760px;
  color:#21342c;
  font-size:25px;
  line-height:1.15;
  letter-spacing:-.025em;
}
.nah-reseller-classic-header p{
  max-width:780px;
  color:#69776f;
  font-size:12px;
  line-height:1.6;
}
.nah-reseller-classic-header .nah-primary{
  min-height:43px;
  border:0;
  border-radius:12px;
  background:linear-gradient(135deg,#315f4e,#447863);
  color:#fff;
  padding:0 16px;
  box-shadow:0 8px 18px rgba(49,95,78,.17);
}
.nah-reseller-classic-metrics{
  margin:14px 0;
}
.nah-reseller-classic .nah-metric{
  border:1px solid var(--nah-line);
  background:var(--nah-card);
  box-shadow:0 8px 22px rgba(36,52,46,.045);
}
.nah-reseller-assistant{
  border-left:0;
  border-color:#d7e1d8;
  background:linear-gradient(145deg,#fbfdfb,#f6faf7);
  box-shadow:0 10px 26px rgba(39,72,58,.055);
}
.nah-reseller-assistant .nah-panel-head p,
.nah-reseller-workbench .nah-panel-head p{
  margin:4px 0 0;
  color:var(--nah-muted);
  font-size:11px;
}
.nah-reseller-assistant .nah-panel-head>b{
  display:inline-flex;
  align-items:center;
  min-height:29px;
  padding:0 10px;
  border-radius:999px;
  background:#e9f2ec;
  color:#356b57;
  font-size:10px;
}
.nah-reseller-classic .nah-reseller-coach-list article{
  border:1px solid #e0e6e1;
  border-radius:14px;
  background:#fff;
  box-shadow:0 4px 12px rgba(36,52,46,.035);
}
.nah-reseller-classic .nah-reseller-coach-list em{
  background:#e7f0e9;
}
.nah-reseller-classic .nah-reseller-coach-list button,
.nah-reseller-classic .nah-reseller-listing>button,
.nah-reseller-main-action{
  min-height:37px;
  border:0;
  border-radius:10px;
  background:#356b57;
  color:#fff;
  padding:0 12px;
  font-size:10px;
  font-weight:900;
  cursor:pointer;
}
.nah-reseller-classic .nah-reseller-workbench{
  border:1px solid var(--nah-line);
  border-radius:18px;
  background:#fffefa;
}
.nah-reseller-classic .nah-reseller-tabs{
  gap:6px;
}
.nah-reseller-classic .nah-reseller-tab{
  border-radius:11px;
  background:#f8f9f6;
  font-size:10px;
}
.nah-reseller-classic .nah-reseller-tab.is-active{
  background:#356b57;
}
.nah-reseller-classic .nah-reseller-listing{
  margin:0 2px;
  padding:14px 8px;
}
.nah-reseller-classic .nah-reseller-listing.is-high{
  border-radius:12px;
  background:linear-gradient(90deg,#fff8ed,#fffefa);
}
.nah-reseller-classic-bottom{
  grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);
}
.nah-reseller-stock-next,
.nah-reseller-recent-sales{
  min-height:205px;
}
.nah-reseller-stock-next>p{
  max-width:650px;
  color:var(--nah-muted);
  font-size:12px;
  line-height:1.55;
}
.nah-reseller-main-action{
  margin-top:10px;
}
.nah-reseller-sale-list{
  display:grid;
  gap:8px;
  margin-top:10px;
}
.nah-reseller-sale-list article{
  display:flex;
  align-items:center;
  gap:10px;
  padding:8px;
  border:1px solid var(--nah-line);
  border-radius:12px;
  background:#fff;
}
.nah-reseller-sale-list .nah-reseller-thumb{
  width:44px;
  height:44px;
  flex:0 0 44px;
}
.nah-reseller-sale-list article>div:last-child{
  min-width:0;
  display:flex;
  flex:1;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.nah-reseller-sale-list b{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:11px;
}
.nah-reseller-sale-list span{
  color:#356b57;
  font-size:12px;
  font-weight:900;
  white-space:nowrap;
}
.nah-reseller-classic .nah-reseller-quick{
  border:1px solid var(--nah-line);
  background:#fffefa;
}
@media(max-width:960px){
  .nah-reseller-classic-bottom{grid-template-columns:1fr}
}
@media(max-width:700px){
  .nah-reseller-classic-header{
    align-items:flex-start;
    flex-direction:column;
    min-height:0;
    padding:22px 19px;
    border-radius:20px;
  }
  .nah-reseller-classic-header h2{font-size:21px}
  .nah-reseller-classic-header .nah-primary{width:100%}
  .nah-reseller-classic .nah-reseller-coach-list article{
    grid-template-columns:30px minmax(0,1fr);
  }
  .nah-reseller-classic .nah-reseller-coach-list article>button{
    grid-column:2;
    justify-self:start;
  }
  .nah-reseller-classic .nah-reseller-listing{
    grid-template-columns:52px minmax(0,1fr);
  }
  .nah-reseller-classic .nah-reseller-listing>button{
    grid-column:2;
    justify-self:start;
  }
  .nah-reseller-classic .nah-reseller-thumb{
    width:50px;
    height:50px;
  }
}


/* ================================================================
   NAFA — REVENDEUR MODE BUSINESS V1
   ================================================================ */
.nah-reseller-mode-switch{display:inline-flex;align-items:center;gap:4px;margin-top:15px;padding:4px;border:1px solid #d8e0da;border-radius:12px;background:rgba(255,255,255,.74);box-shadow:0 5px 13px rgba(30,53,44,.05)}
.nah-reseller-mode-switch button{min-height:34px;border:0;border-radius:9px;background:transparent;color:#66756d;padding:0 12px;font-size:9px;font-weight:900;cursor:pointer}
.nah-reseller-mode-switch button.is-active{background:#315f4e;color:#fff;box-shadow:0 5px 12px rgba(49,95,78,.16)}
.nah-reseller-mode-switch button span{margin-left:5px;padding:3px 5px;border-radius:999px;background:#c99b49;color:#fff;font-size:7px;letter-spacing:.04em}
.nah-reseller-business{--biz-ink:#18312a;--biz-muted:#697971;--biz-green:#285a49;--biz-deep:#183b34;--biz-gold:#c19749;--biz-line:#d9e2dc;color:var(--biz-ink)}
.nah-business-header{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:175px;padding:29px 31px;border:1px solid rgba(193,151,73,.22);border-radius:25px;background:radial-gradient(circle at 88% 8%,rgba(193,151,73,.20),transparent 27%),linear-gradient(128deg,#152f2a 0%,#245246 58%,#436c58 100%);color:#fff;box-shadow:0 20px 44px rgba(21,47,42,.17)}
.nah-business-header .nah-eyebrow{display:inline-flex;align-items:center;min-height:25px;padding:0 9px;border:1px solid rgba(247,224,178,.24);border-radius:999px;background:rgba(255,255,255,.06);color:#f4dca9;font-size:9px;font-weight:900;letter-spacing:.12em}
.nah-business-header h1{margin:11px 0 1px;color:#f8f5ed;font-size:16px}
.nah-business-header h2{max-width:780px;margin:5px 0 8px;color:#fff;font-size:27px;line-height:1.12;letter-spacing:-.025em}
.nah-business-header p{max-width:800px;margin:0;color:rgba(255,255,255,.78);font-size:12px;line-height:1.6}
.nah-business-header .nah-reseller-mode-switch{border-color:rgba(255,255,255,.14);background:rgba(255,255,255,.07);box-shadow:none}
.nah-business-header .nah-reseller-mode-switch button{color:rgba(255,255,255,.72)}
.nah-business-header .nah-reseller-mode-switch button.is-active{background:#fff;color:#234b40}
.nah-business-primary{min-height:44px;flex:0 0 auto;border:1px solid rgba(255,255,255,.7);border-radius:12px;background:#fff;color:#254d41;padding:0 16px;font-size:10px;font-weight:900;cursor:pointer;box-shadow:0 9px 20px rgba(10,28,24,.18)}
.nah-business-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}
.nah-business-kpis article{min-width:0;padding:16px;border:1px solid var(--biz-line);border-radius:15px;background:#fffefa;box-shadow:0 8px 22px rgba(24,49,42,.045)}
.nah-business-kpis span{display:block;color:#7a887f;font-size:8px;font-weight:900;letter-spacing:.09em}.nah-business-kpis strong{display:block;margin:7px 0 3px;color:#193a31;font-size:25px;letter-spacing:-.025em}.nah-business-kpis small{color:#78857d;font-size:9px}
.nah-business-priorities{margin-bottom:14px;padding:19px 20px;border:1px solid #d8e1db;border-radius:18px;background:linear-gradient(145deg,#fbfdfb,#f4f8f5);box-shadow:0 10px 26px rgba(32,62,50,.05)}
.nah-business-priorities .nah-panel-head p{margin:4px 0 0;color:var(--biz-muted);font-size:11px}.nah-business-priorities .nah-panel-head>b{padding:6px 9px;border-radius:999px;background:#e8f0eb;color:#2c5b4b;font-size:9px}
.nah-business-opportunity-list{display:grid;gap:8px;margin-top:13px}
.nah-business-opportunity{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 13px;border:1px solid #dfe6e1;border-radius:13px;background:#fff}
.nah-business-opportunity-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#ebf2ee;color:#285a49;font-weight:900}
.nah-business-opportunity b{color:#223b33;font-size:11px}.nah-business-opportunity p{margin:3px 0 0;color:#718078;font-size:10px;line-height:1.45}
.nah-business-opportunity button,.nah-business-secondary{min-height:36px;border:0;border-radius:9px;background:#285a49;color:#fff;padding:0 11px;font-size:9px;font-weight:900;cursor:pointer}
.nah-business-opportunity.is-warning{box-shadow:inset 3px 0 #c18b3f}.nah-business-opportunity.is-success{box-shadow:inset 3px 0 #3e8065}
.nah-business-grid{display:grid;grid-template-columns:minmax(300px,.75fr) minmax(0,1.25fr);gap:14px;margin-bottom:14px}
.nah-business-stock,.nah-business-focus{min-height:245px}
.nah-business-breakdown{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}.nah-business-breakdown article{padding:13px;border:1px solid var(--biz-line);border-radius:12px;background:#f9fbf9}.nah-business-breakdown b{display:block;color:#285a49;font-size:20px}.nah-business-breakdown span{color:#76847c;font-size:9px}
.nah-business-focus-list{display:grid;gap:7px;margin-top:10px}.nah-business-focus-list article{display:grid;grid-template-columns:46px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:8px;border:1px solid var(--biz-line);border-radius:11px;background:#fff}
.nah-business-focus-list .nah-reseller-thumb{width:44px;height:44px}.nah-business-focus-list article>div:nth-child(2){min-width:0;display:flex;flex-direction:column;gap:3px}.nah-business-focus-list b{overflow:hidden;color:#263d35;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.nah-business-focus-list span{color:#7a887f;font-size:8px}.nah-business-focus-list strong{color:#285a49;font-size:11px;white-space:nowrap}.nah-business-focus-list button{width:35px;height:32px;border:1px solid var(--biz-line);border-radius:9px;background:#fff;color:#285a49;font-size:9px;font-weight:900;cursor:pointer}
.nah-business-note{display:flex;align-items:center;gap:10px;padding:11px 13px;border:1px solid #e6ddc7;border-radius:12px;background:#fffaf0;color:#70562b}.nah-business-note b{flex:0 0 auto;font-size:9px;letter-spacing:.04em}.nah-business-note span{font-size:9px;line-height:1.45}
@media(max-width:1050px){.nah-business-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.nah-business-grid{grid-template-columns:1fr}}
@media(max-width:700px){.nah-business-header{align-items:flex-start;flex-direction:column;min-height:0;padding:22px 19px;border-radius:20px}.nah-business-header h2{font-size:22px}.nah-business-primary{width:100%}.nah-reseller-mode-switch{width:100%}.nah-reseller-mode-switch button{flex:1}.nah-business-kpis{grid-template-columns:1fr 1fr}.nah-business-opportunity{grid-template-columns:34px minmax(0,1fr)}.nah-business-opportunity button{grid-column:2;justify-self:start}.nah-business-focus-list article{grid-template-columns:44px minmax(0,1fr) auto}.nah-business-focus-list article>button{grid-column:2;justify-self:start}}

/* NAFA — Revendeur classique V2 : flux de traitement */
.nah-reseller-treatment .nah-panel-head p{margin:4px 0 0;color:#718078;font-size:10px}.nah-reseller-treatment-list{display:grid;gap:8px;margin-top:12px}.nah-reseller-treatment-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px;border:1px solid #dfe6e1;border-radius:13px;background:#fff}.nah-reseller-treatment-card.is-ready{box-shadow:inset 3px 0 #4f806a}.nah-reseller-treatment-card.is-incomplete{box-shadow:inset 3px 0 #c18b3f}.nah-reseller-treatment-card .nah-reseller-thumb{width:46px;height:46px}.nah-reseller-treatment-card>div:nth-child(2){min-width:0}.nah-reseller-treatment-card span{display:block;margin-bottom:3px;color:#738078;font-size:7px;font-weight:900;letter-spacing:.08em}.nah-reseller-treatment-card b{display:block;overflow:hidden;color:#263d35;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.nah-reseller-treatment-card p{margin:3px 0 0;color:#77857d;font-size:9px;line-height:1.4}.nah-reseller-treatment-card button{min-height:34px;border:0;border-radius:9px;background:#356b57;color:#fff;padding:0 10px;font-size:9px;font-weight:900;cursor:pointer}.nah-reseller-treatment-card.is-incomplete button{background:#9a6a32}@media(max-width:700px){.nah-reseller-treatment-card{grid-template-columns:44px minmax(0,1fr)}.nah-reseller-treatment-card button{grid-column:2;justify-self:start}}


/* ================================================================
   NAFA — REVENDEUR V2.1 : dashboard complet visible
   Le dashboard Revendeur est volontairement scrollable sur desktop.
   ================================================================ */
@media(min-width:1100px) and (min-height:760px){
  .nah-dashboard.nah-revendeur,
  .nah-reseller-classic,
  .nah-reseller-business{
    max-height:none !important;
    height:auto !important;
    overflow:visible !important;
  }
}
.nah-revendeur .nah-assistant-v2,
.nah-revendeur .nah-assistant-panel,
.nah-revendeur [class*="nah-assistant"]{
  max-width:none;
}
.nah-reseller-assistant{
  margin-top:14px;
}


/* ================================================================
   NAFA — REVENDEUR CLASSIQUE V2.2
   Identité visuelle renforcée, plus contrastée et plus professionnelle
   ================================================================ */

.nah-reseller-classic{
  --rv-bg:#f3f6f2;
  --rv-card:#fffef9;
  --rv-ink:#1c3028;
  --rv-muted:#6d7972;
  --rv-green:#2f6b56;
  --rv-green-dark:#1d4b3c;
  --rv-green-soft:#e8f2ec;
  --rv-gold:#b98235;
  --rv-gold-soft:#fff3df;
  --rv-blue:#315f78;
  --rv-blue-soft:#eaf2f6;
  --rv-line:#d9e2dc;
}

/* HERO */
.nah-reseller-classic .nah-reseller-classic-header{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:165px;
  padding:30px 32px;
  border:1px solid rgba(185,130,53,.22);
  border-radius:25px;
  background:
    radial-gradient(circle at 86% 6%,rgba(217,165,84,.20),transparent 27%),
    linear-gradient(128deg,#183d32 0%,#2e6854 58%,#547b62 100%);
  color:#fff;
  box-shadow:
    0 20px 44px rgba(24,61,50,.18),
    inset 0 1px 0 rgba(255,255,255,.10);
}
.nah-reseller-classic .nah-reseller-classic-header:after{
  content:"";
  position:absolute;
  right:-70px;
  top:-90px;
  width:280px;
  height:280px;
  border-radius:50%;
  border:1px solid rgba(255,229,177,.10);
  box-shadow:0 0 0 40px rgba(255,229,177,.025),0 0 0 82px rgba(255,229,177,.015);
  pointer-events:none;
  z-index:-1;
}
.nah-reseller-classic .nah-reseller-classic-header .nah-eyebrow{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:0 10px;
  border:1px solid rgba(255,224,165,.25);
  border-radius:999px;
  background:rgba(255,255,255,.07);
  color:#f5dba8;
  font-size:9px;
  font-weight:950;
  letter-spacing:.13em;
}
.nah-reseller-classic .nah-reseller-classic-header h1{
  margin:12px 0 2px;
  color:#f5f8f4;
  font-size:17px;
  text-shadow:0 1px 8px rgba(0,0,0,.12);
}
.nah-reseller-classic .nah-reseller-classic-header h2{
  margin:5px 0 9px;
  color:#fff;
  font-size:28px;
  line-height:1.12;
  letter-spacing:-.03em;
  text-shadow:0 1px 10px rgba(0,0,0,.10);
}
.nah-reseller-classic .nah-reseller-classic-header p{
  max-width:790px;
  color:rgba(255,255,255,.82);
  font-size:12px;
  line-height:1.62;
}
.nah-reseller-classic .nah-reseller-classic-header .nah-primary{
  min-height:44px;
  border:1px solid rgba(255,255,255,.68);
  border-radius:12px;
  background:#fff;
  color:#24523f;
  padding:0 17px;
  font-size:10px;
  font-weight:950;
  box-shadow:0 9px 22px rgba(16,39,31,.19);
}

/* KPI — 4 cartes plus marquées */
.nah-reseller-classic .nah-reseller-classic-metrics{
  gap:11px;
  margin:15px 0;
}
.nah-reseller-classic .nah-reseller-classic-metrics .nah-metric{
  position:relative;
  overflow:hidden;
  min-height:115px;
  border:1px solid var(--rv-line);
  border-radius:17px;
  background:#fff;
  box-shadow:0 10px 24px rgba(30,52,43,.055);
}
.nah-reseller-classic .nah-reseller-classic-metrics .nah-metric:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:4px;
  background:var(--rv-green);
}
.nah-reseller-classic .nah-reseller-classic-metrics .nah-metric:nth-child(2):before{background:#4b7891}
.nah-reseller-classic .nah-reseller-classic-metrics .nah-metric:nth-child(3):before{background:#b98235}
.nah-reseller-classic .nah-reseller-classic-metrics .nah-metric:nth-child(4):before{background:#9a5536}
.nah-reseller-classic .nah-reseller-classic-metrics .nah-metric strong{
  color:var(--rv-ink);
  font-size:26px;
}
.nah-reseller-classic .nah-reseller-classic-metrics .nah-metric>span{
  color:#6c7b73;
  font-size:9px;
  font-weight:900;
  letter-spacing:.055em;
}

/* ASSISTANT */
.nah-reseller-classic .nah-reseller-assistant{
  position:relative;
  overflow:hidden;
  padding:20px 21px;
  border:1px solid #cfded5;
  border-radius:19px;
  background:
    radial-gradient(circle at 98% 0,rgba(67,126,100,.10),transparent 25%),
    linear-gradient(145deg,#fbfefc,#f2f8f4);
  box-shadow:0 12px 30px rgba(39,78,61,.07);
}
.nah-reseller-classic .nah-reseller-assistant:before{
  content:"ASSISTANCE À LA REVENTE";
  display:inline-flex;
  align-items:center;
  min-height:24px;
  margin-bottom:10px;
  padding:0 9px;
  border-radius:999px;
  background:var(--rv-green-dark);
  color:#fff;
  font-size:7px;
  font-weight:950;
  letter-spacing:.10em;
}
.nah-reseller-classic .nah-reseller-coach-list article{
  border:1px solid #dbe5df;
  border-radius:15px;
  background:#fff;
  box-shadow:0 5px 14px rgba(35,60,49,.04);
}
.nah-reseller-classic .nah-reseller-coach-list article:nth-child(1){
  box-shadow:inset 3px 0 var(--rv-gold),0 5px 14px rgba(35,60,49,.04);
}
.nah-reseller-classic .nah-reseller-coach-list article:nth-child(2){
  box-shadow:inset 3px 0 var(--rv-green),0 5px 14px rgba(35,60,49,.04);
}
.nah-reseller-classic .nah-reseller-coach-list article:nth-child(3){
  box-shadow:inset 3px 0 var(--rv-blue),0 5px 14px rgba(35,60,49,.04);
}
.nah-reseller-classic .nah-reseller-coach-list em{
  background:linear-gradient(135deg,#dfeee5,#edf6f1);
  color:var(--rv-green-dark);
}
.nah-reseller-classic .nah-reseller-coach-list button{
  min-height:38px;
  border:0;
  background:linear-gradient(135deg,var(--rv-green-dark),var(--rv-green));
  color:#fff;
  box-shadow:0 6px 14px rgba(47,107,86,.14);
}

/* TRAITEMENT DES OBJETS */
.nah-reseller-classic .nah-reseller-treatment{
  border:1px solid #d8e2dc;
  border-radius:18px;
  background:linear-gradient(145deg,#fffefa,#f8fbf8);
}
.nah-reseller-classic .nah-reseller-treatment-card{
  border:1px solid #dce5df;
  border-radius:14px;
  background:#fff;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;
}
.nah-reseller-classic .nah-reseller-treatment-card:hover{
  transform:translateY(-1px);
  border-color:#c4d6cc;
  box-shadow:0 8px 19px rgba(35,60,49,.07);
}
.nah-reseller-classic .nah-reseller-treatment-card.is-ready{
  background:linear-gradient(90deg,#f1f8f4,#fff);
  box-shadow:inset 4px 0 #4f806a;
}
.nah-reseller-classic .nah-reseller-treatment-card.is-incomplete{
  background:linear-gradient(90deg,#fff8ed,#fff);
  box-shadow:inset 4px 0 #c18b3f;
}
.nah-reseller-classic .nah-reseller-treatment-card.is-ready span{color:#3d735d}
.nah-reseller-classic .nah-reseller-treatment-card.is-incomplete span{color:#a56c28}

/* MES ANNONCES */
.nah-reseller-classic .nah-reseller-workbench{
  padding:20px;
  border:1px solid #d8e2dc;
  border-radius:19px;
  background:#fff;
  box-shadow:0 10px 27px rgba(29,50,41,.045);
}
.nah-reseller-classic .nah-reseller-tabs{
  gap:7px;
  padding:6px 0 13px;
}
.nah-reseller-classic .nah-reseller-tab{
  min-height:38px;
  border:1px solid #dde5e0;
  border-radius:11px;
  background:#f6f8f6;
  color:#4f5f57;
  padding:0 12px;
}
.nah-reseller-classic .nah-reseller-tab.is-active{
  border-color:var(--rv-green-dark);
  background:linear-gradient(135deg,var(--rv-green-dark),var(--rv-green));
  color:#fff;
  box-shadow:0 6px 15px rgba(47,107,86,.15);
}
.nah-reseller-classic .nah-reseller-listing{
  margin:5px 0;
  padding:13px 11px;
  border:1px solid transparent;
  border-bottom-color:#e4e9e5;
  border-radius:12px;
}
.nah-reseller-classic .nah-reseller-listing.is-high{
  border-color:#f0d7b2;
  background:linear-gradient(90deg,#fff6e7,#fff);
  box-shadow:inset 4px 0 #bc7f31;
}
.nah-reseller-classic .nah-reseller-listing.is-medium{
  border-color:#d9e4de;
  background:linear-gradient(90deg,#f4f9f6,#fff);
  box-shadow:inset 4px 0 #5d8a74;
}
.nah-reseller-classic .nah-reseller-listing-title span{
  color:#90561d;
  background:#fff0d8;
  border:1px solid #f0d1a2;
}
.nah-reseller-classic .nah-reseller-meta span{
  border:1px solid #e3e7e4;
  background:#f6f8f6;
}
.nah-reseller-classic .nah-reseller-listing>button{
  min-height:37px;
  background:linear-gradient(135deg,var(--rv-green-dark),var(--rv-green));
  box-shadow:0 6px 14px rgba(47,107,86,.13);
}

/* BOTTOM CARDS */
.nah-reseller-classic .nah-reseller-classic-bottom>.nah-panel{
  border:1px solid #d8e2dc;
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 26px rgba(31,52,43,.045);
}
.nah-reseller-classic .nah-reseller-stock-next{
  background:
    radial-gradient(circle at 100% 0,rgba(62,125,99,.08),transparent 28%),
    linear-gradient(145deg,#fffefa,#f7faf7);
}
.nah-reseller-classic .nah-reseller-recent-sales{
  background:
    radial-gradient(circle at 100% 0,rgba(185,130,53,.09),transparent 28%),
    linear-gradient(145deg,#fffefa,#fffaf2);
}
.nah-reseller-classic .nah-reseller-sale-list article{
  border-color:#e1e6e2;
  background:#fff;
}
.nah-reseller-classic .nah-reseller-sale-list span{
  color:var(--rv-green-dark);
}

/* ACTIONS RAPIDES */
.nah-reseller-classic .nah-reseller-quick{
  gap:7px;
  padding:9px;
  border:1px solid #d6e0d9;
  border-radius:14px;
  background:#fff;
  box-shadow:0 9px 22px rgba(29,51,42,.045);
}
.nah-reseller-classic .nah-reseller-quick>b{
  color:#6f7d75;
  font-size:8px;
  letter-spacing:.09em;
}
.nah-reseller-classic .nah-reseller-quick button{
  min-height:36px;
  border:1px solid #dce4df;
  border-radius:10px;
  background:#f8faf8;
  color:#315f4e;
  font-weight:900;
}
.nah-reseller-classic .nah-reseller-quick button:hover{
  background:#edf5f0;
  border-color:#c8d8ce;
}

/* MODE SWITCH */
.nah-reseller-classic .nah-reseller-mode-switch{
  border-color:rgba(255,255,255,.15);
  background:rgba(255,255,255,.08);
  box-shadow:none;
}
.nah-reseller-classic .nah-reseller-mode-switch button{
  color:rgba(255,255,255,.76);
}
.nah-reseller-classic .nah-reseller-mode-switch button.is-active{
  background:#fff;
  color:#234d3d;
}

/* RESPONSIVE */
@media(max-width:700px){
  .nah-reseller-classic .nah-reseller-classic-header{
    padding:23px 19px;
    border-radius:20px;
  }
  .nah-reseller-classic .nah-reseller-classic-header h2{
    font-size:22px;
  }
  .nah-reseller-classic .nah-reseller-classic-metrics{
    grid-template-columns:1fr 1fr;
  }
  .nah-reseller-classic .nah-reseller-assistant,
  .nah-reseller-classic .nah-reseller-workbench{
    padding:15px;
  }
}
