
@font-face{font-family:'Inter';font-weight:100 900;font-display:swap;src:url(/assets/fonts/inter-latin-var.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-weight:500;font-display:swap;src:url(/assets/fonts/ibm-plex-sans-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-weight:600;font-display:swap;src:url(/assets/fonts/ibm-plex-sans-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-weight:700 900;font-display:swap;src:url(/assets/fonts/ibm-plex-sans-latin-700-normal.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-weight:500;font-display:swap;src:url(/assets/fonts/ibm-plex-mono-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-weight:600 700;font-display:swap;src:url(/assets/fonts/ibm-plex-mono-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Inter fb';src:local('Arial'),local('ArialMT'),local('Helvetica');font-weight:100 550;size-adjust:106.6%;ascent-override:90.9%;descent-override:22.6%;line-gap-override:0%}
@font-face{font-family:'Inter fb';src:local('Arial Bold'),local('Arial-BoldMT'),local('Helvetica Bold');font-weight:551 900;size-adjust:102.1%;ascent-override:94.9%;descent-override:23.6%;line-gap-override:0%}
@font-face{font-family:'SG fb';src:local('Arial Bold'),local('Arial-BoldMT'),local('Helvetica Bold');size-adjust:100.9%;ascent-override:97.5%;descent-override:28.9%;line-gap-override:0%}
:root{--ink:#0B1A3C;--g2:#4A5568;--bg:#F2F5F9;--border:#DCE3EC;--red:#0B5ED7;--green:#15803d;--blue:#004FD1;
  --orange:#b54708;--shadow:0 1px 4px rgba(11,26,60,.08);}
*{box-sizing:border-box;}
body{margin:0;background:var(--bg);font-family:'Inter','Inter fb',system-ui,sans-serif;color:var(--ink);font-size:17px;display:flex;min-height:100vh;}

/* ───── colonne gauche façon GPT ───── */
aside{width:272px;flex:none;background:#F7F9FC;border-right:1px solid var(--border);padding:14px 10px;display:flex;flex-direction:column;gap:2px;position:sticky;top:0;height:100vh;overflow:hidden;}
#camps{flex:1;min-height:0;overflow-y:auto;}

/* ── upgrade card (Lovable style) ── */
.up-card{display:none;margin:0 2px 10px;border:1px solid var(--border);background:#fff;border-radius:14px;padding:12px;align-items:center;gap:10px;cursor:pointer;transition:border-color .15s,transform .15s;flex:none;}
.up-card:hover{border-color:#005FF6;transform:translateY(-1px);}
.up-card .t{flex:1;min-width:0;font-weight:800;font-size:14px;color:var(--ink);}
.up-card .d{font-weight:600;font-size:12px;color:var(--g2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px;}
.up-card .ic{width:40px;height:40px;flex:none;border-radius:10px;background:#0B1A3C;display:flex;align-items:center;justify-content:center;color:#fff;}
.up-card .ic svg{width:19px;height:19px;}
body.dark .up-card{background:#131A2A;border-color:#2A3550;}
.av img.av-ph{width:100%;height:100%;object-fit:cover;display:block;}
.av-edit{cursor:pointer;position:relative;}
.av-edit:hover::after{content:'';position:absolute;inset:0;border-radius:50%;background:rgba(11,26,60,.35) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M23 19a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h4l2-3h6l2 3h4a2 2 0 0 1 2 2z'/><circle cx='12' cy='13' r='4'/></svg>") center/45% no-repeat;}
#tg{position:fixed;inset:0;z-index:9000;display:none;align-items:center;justify-content:center;padding:16px;background:rgba(11,26,60,.45);}
#tg.on{display:flex;}
#tg .tg-box{width:100%;max-width:420px;background:#fff;color:#0B1A3C;border-radius:14px;padding:26px 24px 20px;box-shadow:0 24px 60px -20px rgba(11,26,60,.45);}
#tg h2{font-family:'IBM Plex Sans',sans-serif;font-size:22px;letter-spacing:-.01em;margin:0;}
#tg .tg-sub{color:#55617A;font-size:14.5px;margin:6px 0 16px;}
#tg ul{list-style:none;margin:0 0 18px;padding:0;display:grid;gap:9px;}
#tg li{display:flex;gap:9px;align-items:flex-start;font-size:14.5px;line-height:1.4;}
#tg li svg{flex:none;margin-top:2px;color:#004FD1;}
#tg .tg-go{width:100%;border:0;border-radius:9px;padding:12px;font:600 15px 'Inter',sans-serif;color:#fff;background:#0B1A3C;cursor:pointer;}
#tg .tg-go:hover{background:#004FD1;}
#tg .tg-no{width:100%;margin-top:6px;border:0;background:none;padding:9px;font:500 14px 'Inter',sans-serif;color:#55617A;cursor:pointer;}
#tg .tg-fine{font-size:12px;color:#8590A6;text-align:center;margin:4px 0 0;}
body.dark #tg .tg-box{background:#131A2A;color:#E6ECF5;}
body.dark #tg .tg-sub,body.dark #tg .tg-no{color:#9AA6BD;}
body.dark #tg li svg{color:#4D9FFF;}
body.dark #tg .tg-go{background:#E6ECF5;color:#0B1A3C;}
body.dark .up-card:hover{border-color:#4D9FFF;}

/* ── account footer (bottom-left, ChatGPT style) ── */
.side-foot{position:relative;flex:none;border-top:1px solid var(--border);margin-top:8px;padding-top:8px;display:flex;align-items:center;gap:8px;}
.acct{flex:1;min-width:0;display:flex;align-items:center;gap:9px;border:none;background:none;border-radius:10px;padding:7px 8px;cursor:pointer;text-align:left;font:inherit;color:var(--ink);}
.acct:hover{background:#E4E9F0;}
.av{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,#005FF6,#004FD1);color:#fff;font-weight:800;font-size:12.5px;display:flex;align-items:center;justify-content:center;flex:none;letter-spacing:.3px;overflow:hidden;}
.av img{width:72%;height:72%;object-fit:contain;display:block;}
.acct-txt{min-width:0;display:flex;flex-direction:column;line-height:1.2;}
.acct-txt b{font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.acct-txt small{color:var(--g2);font-size:11.5px;font-weight:600;}
.up-pill{flex:none;border:1.5px solid #C9D3E0;background:#fff;border-radius:9px;padding:7px 13px;font:inherit;font-weight:700;font-size:12.5px;cursor:pointer;white-space:nowrap;color:var(--ink);}
.up-pill:hover{border-color:#0B1A3C;}
body.admin .up-pill{display:none;}
.acct-menu{display:none;position:absolute;left:4px;right:4px;bottom:56px;background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:0 14px 36px rgba(0,0,0,.18);padding:6px;z-index:150;}
.acct-menu.on{display:block;}
.acct-menu .who{display:flex;align-items:center;gap:9px;padding:9px 10px 10px;border-bottom:1px solid var(--border);margin-bottom:6px;}
.acct-menu .who .acct-txt b{font-size:14px;}
.acct-menu button,.acct-menu a{display:flex;align-items:center;gap:10px;width:100%;box-sizing:border-box;border:none;background:none;border-radius:9px;padding:10px 10px;font:inherit;font-weight:600;font-size:14px;cursor:pointer;color:var(--ink);text-align:left;text-decoration:none;}
.acct-menu button:hover,.acct-menu a:hover{background:#f2f2f3;}
.acct-menu .sep{height:1px;background:var(--border);margin:6px 4px;}
.dkrow .sw-s{margin-left:auto;pointer-events:none;}

/* ── Dov's brief: one question at a time, inside the chat (replaces the form page) ── */
#dq{display:none;background:#fff;border-radius:16px;box-shadow:0 0 0 1px rgba(11,26,60,.09),0 16px 40px -18px rgba(11,26,60,.35);padding:14px 12px 10px;margin:0 12px 10px;animation:dqIn .35s cubic-bezier(.2,.9,.3,1);}
#dq.on{display:block;}
@keyframes dqIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.dq-h{display:flex;align-items:flex-start;gap:10px;padding:2px 4px 10px;}
.dq-h b{flex:1;font-size:14.5px;line-height:1.4;color:var(--ink);font-weight:600;}
.dq-h small{display:block;font-size:11.5px;color:#8A96A8;font-weight:600;margin-bottom:3px;letter-spacing:.02em;}
.dq-x{border:none;background:none;color:#8A96A8;font-size:16px;cursor:pointer;padding:0 2px;}
.dq-o{display:flex;align-items:center;gap:11px;width:100%;text-align:left;border:1px solid transparent;background:none;border-radius:11px;padding:8px 9px;cursor:pointer;font:inherit;border-bottom:1px solid #EEF1F6;transition:background .15s,border-color .15s;}
.dq-o:last-of-type{border-bottom-color:transparent;}
.dq-o:hover,.dq-o.kb{background:#F5F8FD;border-color:#CFE2FD;}
.dq-o.sel{background:#EEF4FD;border-color:#3D86F8;}
.dq-o .n{flex:none;width:26px;height:26px;border-radius:8px;background:#F1F4F8;color:#4A5568;font-size:12.5px;font-weight:650;display:flex;align-items:center;justify-content:center;}
.dq-o.sel .n{background:#005FF6;color:#fff;}
.dq-o .t{display:flex;flex-direction:column;min-width:0;}
.dq-o .t b{font-size:13.5px;color:var(--ink);font-weight:600;}
.dq-o .t span{font-size:12px;color:#6B778C;line-height:1.35;}
.dq-f{display:flex;align-items:center;gap:8px;margin-top:6px;padding:4px 2px 0;}
.dq-f .pen{flex:none;width:26px;height:26px;border-radius:8px;background:#F1F4F8;display:flex;align-items:center;justify-content:center;color:#6B778C;}
.dq-f .pen svg{width:13px;height:13px;}
.dq-f input{flex:1;min-width:0;border:none;outline:none;font:inherit;font-size:13.5px;color:var(--ink);background:transparent;padding:6px 2px;}
.dq-f button{flex:none;font:inherit;font-size:12.5px;font-weight:600;border-radius:9px;padding:7px 11px;cursor:pointer;border:1px solid #E2E8F1;background:#F7F9FC;color:#2D3748;}
.dq-f button.go{background:#121418;border-color:#121418;color:#fff;}
.dq-prog{display:flex;gap:4px;padding:0 4px 10px;}
.dq-prog i{flex:1;height:3px;border-radius:3px;background:#E8EEF6;}
.dq-prog i.d{background:#005FF6;}
.dc-m.dq-a>div{background:#EEF4FD;}
#dovchat.dqon .dc-quick{display:none;}
@media(max-width:1135px){#dq.on{position:fixed;left:10px;right:10px;bottom:10px;margin:0;z-index:9500;max-height:80vh;overflow:auto;box-shadow:0 0 0 1px rgba(11,26,60,.1),0 -10px 60px rgba(11,26,60,.3);}}
body.dark #dq{background:#121A2B;}
body.dark .dq-o{border-bottom-color:#1C2639;}
body.dark .dq-o:hover,body.dark .dq-o.kb{background:#18223A;border-color:#2A3550;}
body.dark .dq-o.sel{background:#1A2740;}
body.dark .dq-o .n,body.dark .dq-f .pen{background:#18223A;color:#C9D4EA;}
body.dark .dq-f button{background:#18223A;border-color:#2A3550;color:#E8ECF5;}

/* supplier table: location flag, reliability meter, links */
.hic{width:14px;height:14px;margin-right:6px;flex:none;opacity:.75;}
.lhead .nosort{cursor:default;}
.rgeo{gap:9px;}
.rgeo .flag{width:20px;height:14px;border-radius:3px;object-fit:cover;flex:none;box-shadow:0 0 0 1px rgba(11,26,60,.12);}
.rgeo .nofl{display:inline-block;background:#E8EEF6;}
.rgeo .gnm{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rrel{gap:3px;}
.rrel i{width:5px;height:14px;border-radius:2px;background:#E2E8F1;flex:none;}
.rrel i:nth-child(2){height:14px;}
.rrel b{margin-left:7px;font-size:12.5px;font-weight:600;color:#4A5568;white-space:nowrap;}
.rrel.r3 i{background:#16A34A;} .rrel.r3 b{color:#13703F;}
.rrel.r2 i:nth-child(-n+2){background:#F59E0B;} .rrel.r2 b{color:#92600A;}
.rrel.r1 i:nth-child(1){background:#EF4444;} .rrel.r1 b{color:#B42318;}
.rlnk{gap:6px;}
.rlnk .lk{width:26px;height:26px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#4A5568;transition:background .15s,transform .15s;}
.rlnk .lk:hover{background:#EEF2F7;transform:translateY(-1px);}
.rlnk .lk svg{width:15px;height:15px;}
.rlnk .lk.g svg{width:14px;height:14px;}
.rlnk .lk.off{visibility:hidden;}
body.dark .rrel i{background:#2A3550;} body.dark .rrel b{color:#97A3BB;}
body.dark .rlnk .lk{color:#C9D4EA;} body.dark .rlnk .lk:hover{background:#1A2740;}

/* merged price / status cell */
.act{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;padding:5px 10px 5px 8px;border-radius:8px;white-space:nowrap;cursor:pointer;transition:filter .15s,transform .15s;}
.act:hover{filter:brightness(.97);transform:translateY(-1px);}
.act svg{width:13px;height:13px;flex:none;}
.a-quote{background:#DCF2E4;color:#13703F;}
.a-talk{background:#FFF4DB;color:#92600A;}
.a-wait{background:#EAF2FE;color:#004FD1;}
.a-wait svg{animation:actTick 2.4s linear infinite;}
@keyframes actTick{to{transform:rotate(360deg)}}
.a-todo{background:#F1F4F8;color:#4A5568;}
.a-none{background:#FDECEC;color:#B42318;}
.a-off{background:#F1F4F8;color:#8A96A8;}
.fpill{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#004FD1;background:#EAF2FE;border:1px solid #CFE2FD;border-radius:10px;padding:6px 8px 6px 12px;}
.fpill button{border:none;background:none;color:#004FD1;cursor:pointer;font-size:12px;padding:0 2px;}
body.dark .a-quote{background:#12301F;color:#7BD49B;} body.dark .a-talk{background:#33280F;color:#F5C56B;}
body.dark .a-wait{background:#132542;color:#8DB8F5;} body.dark .a-todo,body.dark .a-off{background:#1A2235;color:#97A3BB;} body.dark .a-none{background:#3A1717;color:#F59A9A;}
@media(max-width:560px){.act{font-size:11.5px;padding:4px 8px 4px 6px;}}
@media(prefers-reduced-motion:reduce){.a-wait svg{animation:none;}}

/* row selection */
.rnum{position:relative;}
.rnum .ck{position:absolute;inset:0;display:none;align-items:center;justify-content:center;cursor:pointer;}
.row:hover .rnum .ck,.rnum.any .ck,.row.picked .rnum .ck,.lhead .rnum.hsel .ck{display:flex;}
.row:hover .rnum b,.rnum.any b,.row.picked .rnum b,.lhead .rnum.hsel b{visibility:hidden;}
.ck input{position:absolute;opacity:0;pointer-events:none;}
.ck i{width:17px;height:17px;border-radius:5px;border:1.5px solid #B8C3D3;background:#fff;transition:background .15s,border-color .15s;display:block;box-sizing:border-box;}
.ck input:checked+i{background:#005FF6 url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'><path d='M20 6 9 17l-5-5'/></svg>") center/12px no-repeat;border-color:#005FF6;}
.row.picked{background:#EEF4FD !important;}
.row.picked .rnum{background:#DCE9FC !important;}
#selbar{position:fixed;left:50%;bottom:22px;transform:translate(-50%,20px);opacity:0;pointer-events:none;z-index:9200;display:flex;align-items:center;gap:4px;background:#fff;border-radius:14px;padding:7px 8px 7px 10px;
  box-shadow:0 0 0 1px rgba(11,26,60,.08),0 18px 40px -12px rgba(11,26,60,.35);transition:opacity .2s,transform .25s cubic-bezier(.2,.9,.3,1);white-space:nowrap;}
#selbar.on{opacity:1;transform:translate(-50%,0);pointer-events:auto;}
#selbar .sb-n{min-width:22px;height:22px;padding:0 6px;border-radius:6px;background:#121418;color:#fff;font-size:12.5px;font-weight:700;display:flex;align-items:center;justify-content:center;box-sizing:border-box;}
#selbar .sb-l{font-size:13.5px;color:#4A5568;margin:0 4px 0 2px;}
#selbar .sb-sep{width:1px;height:20px;background:#E2E8F1;margin:0 4px;}
#selbar button{display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:13.5px;font-weight:600;color:var(--ink);background:none;border:none;border-radius:9px;padding:7px 10px;cursor:pointer;}
#selbar button:hover{background:#F1F4F8;}
#selbar button svg{width:15px;height:15px;}
#selbar button.warn{color:#B42318;}
#selbar .sb-x{color:#6B778C;padding:7px 9px;}
.sb-dd{position:relative;}
.sb-menu{display:none;position:absolute;bottom:calc(100% + 8px);left:0;background:#fff;border-radius:12px;padding:5px;min-width:200px;box-shadow:0 0 0 1px rgba(11,26,60,.08),0 16px 36px -12px rgba(11,26,60,.35);}
.sb-dd.open .sb-menu{display:flex;flex-direction:column;}
#selbar .sb-menu button{width:100%;justify-content:flex-start;font-weight:500;}
@media(max-width:700px){#selbar{left:10px;right:10px;transform:translateY(20px);}#selbar.on{transform:none;}#selbar .sb-l{display:none;}}
body.dark #selbar,body.dark .sb-menu{background:#121A2B;}
body.dark #selbar button{color:var(--ink);} body.dark #selbar button:hover{background:#1A2740;}
body.dark .ck i{background:#121A2B;border-color:#3A4660;}
body.dark .row.picked{background:#14213A !important;} body.dark .row.picked .rnum{background:#1A2A48 !important;}

/* column header menu */
.lhead .hcell{position:relative;}
.hdots{margin-left:auto;opacity:0;border:none;background:none;color:#6B778C;font-size:15px;font-weight:700;line-height:1;width:22px;height:22px;border-radius:6px;cursor:pointer;flex:none;transition:opacity .15s,background .15s;}
.lhead .hcell:hover .hdots,.hdots:focus{opacity:1;}
.hdots:hover{background:#E6ECF4;color:var(--ink);}
.lhead .hcell.num .hdots{margin-left:auto;order:0;} .lhead .hcell.num{justify-content:flex-start;} /* dots on the right like the other columns (Ethan 20/10) */
.lhead .hcell #fPays{flex:1;min-width:0;}
@media(min-width:1001px){.lgrid>.hcol{display:none !important;}}
#colmenu{position:fixed;z-index:9300;display:none;flex-direction:column;background:#fff;border-radius:12px;padding:5px;width:200px;box-shadow:0 0 0 1px rgba(11,26,60,.08),0 16px 36px -12px rgba(11,26,60,.35);animation:dqIn .18s;}
#colmenu.on{display:flex;}
#colmenu button{display:flex;align-items:center;gap:10px;font:inherit;font-size:13.5px;font-weight:500;color:var(--ink);background:none;border:none;border-radius:8px;padding:8px 10px;cursor:pointer;text-align:left;}
#colmenu button:hover{background:#F1F4F8;}
#colmenu svg{width:15px;height:15px;color:#6B778C;}
#colmenu .cm-sep{height:1px;background:#EEF1F6;margin:4px 6px;}
.cpill{margin-left:8px;}
.cpill button{font-weight:700 !important;}
body.dark #colmenu{background:#121A2B;} body.dark #colmenu button{color:var(--ink);} body.dark #colmenu button:hover,body.dark .hdots:hover{background:#1A2740;}

/* custom columns + "New" */
.lhead .newcol{justify-content:center;}
.lhead .newcol button{display:inline-flex;align-items:center;gap:5px;font:inherit;font-size:12.5px;font-weight:650;color:var(--ink);background:none;border:1px dashed #C3CDDA;border-radius:8px;padding:5px 10px;cursor:pointer;text-transform:none;letter-spacing:0;transition:background .15s,border-color .15s;}
.lhead .newcol button:hover{background:#EEF4FD;border-color:#3D86F8;color:#004FD1;}
.lhead .newcol svg{width:12px;height:12px;}
.lhead .xh .xht{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:none;letter-spacing:0;font-size:12.5px;}
.lhead .xh .hic{color:#5C97F6;opacity:1;}
.xcell .xv{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;color:var(--ink);}
.shim{font-style:normal;font-size:12px;font-weight:600;color:transparent;background:linear-gradient(90deg,#AEB8C8 0%,#AEB8C8 40%,#3D86F8 50%,#AEB8C8 60%,#AEB8C8 100%);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;animation:shim 1.8s linear infinite;}
@keyframes shim{from{background-position:100% 0}to{background-position:-150% 0}}
@media(prefers-reduced-motion:reduce){.shim{animation:none;color:#AEB8C8;}}
#ncolpop{position:fixed;z-index:9300;display:none;width:320px;background:#fff;border-radius:14px;padding:14px;box-sizing:border-box;box-shadow:0 0 0 1px rgba(11,26,60,.08),0 18px 40px -12px rgba(11,26,60,.35);animation:dqIn .18s;}
#ncolpop.on{display:block;}
#ncolpop b{display:block;font-size:14px;color:var(--ink);}
#ncolpop p{margin:3px 0 10px;font-size:12.5px;color:#6B778C;}
#ncolpop input{width:100%;box-sizing:border-box;font:inherit;font-size:14px;padding:9px 11px;border:1px solid #DCE3EC;border-radius:10px;outline:none;color:var(--ink);background:#fff;}
#ncolpop input:focus{border-color:#3D86F8;box-shadow:0 0 0 3px rgba(61,134,248,.15);}
.ncol-sug{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 12px;}
.ncol-sug button{font:inherit;font-size:12px;font-weight:600;color:#2D3748;background:#F1F4F8;border:none;border-radius:7px;padding:5px 9px;cursor:pointer;}
.ncol-sug button:hover{background:#EAF2FE;color:#004FD1;}
.ncol-f{display:flex;align-items:center;gap:8px;}
.ncol-f span{flex:1;font-size:11.5px;color:#8A96A8;}
.ncol-f .go{font:inherit;font-size:13px;font-weight:600;color:#fff;background:#121418;border:none;border-radius:9px;padding:8px 12px;cursor:pointer;}
@media(max-width:1000px){.lgrid>:nth-child(n+8){display:none !important;}}
body.dark #ncolpop,body.dark #ncolpop input{background:#121A2B;color:var(--ink);} body.dark .ncol-sug button{background:#1A2235;color:#C9D4EA;}

/* supplier logo + contact buttons */
.rnom{gap:10px;}
.slogo{flex:none;width:24px;height:24px;border-radius:7px;background:#fff;box-shadow:0 0 0 1px rgba(11,26,60,.1);display:flex;align-items:center;justify-content:center;overflow:hidden;}
.slogo img{width:18px;height:18px;object-fit:contain;}
.slogo.ini{background:#EEF2F7;color:#4A5568;font-size:10px;font-weight:700;letter-spacing:.02em;}
.rctc .lk.off{visibility:visible;opacity:.28;cursor:default;}
.rctc .lk.off:hover{background:none;transform:none;}
body.dark .slogo{background:#18223A;}

.xl-btn{gap:8px;}
.xl-btn .xl-ic svg{width:18px;height:18px;display:block;}
.xl-btn .xl-up{width:14px;height:14px;color:#1D7A46;transition:transform .2s;}
.xl-btn:hover .xl-up{transform:translate(2px,-2px);}

/* type + last activity */
.ty{font-style:normal;max-width:100%;overflow:hidden;text-overflow:ellipsis;font-size:12px;font-weight:600;padding:3px 8px;border-radius:6px;white-space:nowrap;}
.ty-mf{background:#EEF2FF;color:#3870CA;} .ty-tr{background:#FFF4DB;color:#92600A;} .ty-ds{background:#E6F6F4;color:#0F766E;}
.ty-sv{background:#FCE7F3;color:#9D174D;} .ty-sp{background:#F1F4F8;color:#4A5568;} .ty-ot{background:#F1F4F8;color:#4A5568;}
.racti{font-size:12.5px;color:#6B778C;white-space:nowrap;}
.racti b{font-size:12.5px;font-weight:600;color:var(--ink);}
.racti.stale{color:#B45309;} .racti.stale b{color:#B45309;}
.mut{color:#B8C3D3;}
body.dark .ty-mf{background:#1E2250;color:#A5B4FC;} body.dark .ty-tr{background:#33280F;color:#F5C56B;} body.dark .ty-ds{background:#0F2E2B;color:#5EEAD4;} body.dark .ty-sv{background:#18253A;color:#F9A8D4;}

#qpop{position:fixed;z-index:9300;display:none;width:340px;max-height:260px;overflow:auto;background:#fff;border-radius:14px;padding:14px 16px;box-sizing:border-box;box-shadow:0 0 0 1px rgba(11,26,60,.08),0 18px 40px -12px rgba(11,26,60,.35);animation:dqIn .18s;}
#qpop.on{display:block;}
#qpop b{display:block;font-size:14px;color:var(--ink);}
#qpop small{display:block;font-size:11.5px;color:#8A96A8;margin:2px 0 8px;}
#qpop p{margin:0;font-size:13.5px;line-height:1.55;color:#2D3748;white-space:pre-wrap;}
body.dark #qpop{background:#121A2B;} body.dark #qpop p{color:#C9D4EA;}

/* closed chat rail: readable + inviting */
#dc-rail .dc-rl{width:34px;height:auto;padding:12px 0;border-radius:10px;background:#EEF4FD;color:#004FD1;position:relative;}
#dc-rail .dc-rl span{writing-mode:vertical-rl;transform:rotate(180deg);font-size:12.5px;font-weight:650;letter-spacing:.02em;white-space:nowrap;}
#dc-rail .dc-rl:hover{background:#DCE9FC;color:#004FD1;}
#dc-rail .dc-dot{position:absolute;top:-3px;right:-3px;width:10px;height:10px;border-radius:50%;background:#EF4444;box-shadow:0 0 0 2px #fff;display:none;}
#dc-rail .dc-dot.on{display:block;animation:pfPing 1.6s infinite;}
#dovchat.mini #dc-rail img{animation:dove 3s ease-in-out infinite alternate;}
body.dark #dc-rail .dc-rl{background:#132542;color:#8DB8F5;}
#dq.sheet{position:fixed;right:20px;bottom:20px;left:auto;width:400px;max-width:calc(100vw - 20px);margin:0;z-index:9500;max-height:80vh;overflow:auto;box-shadow:0 0 0 1px rgba(11,26,60,.1),0 24px 60px -16px rgba(11,26,60,.4);}
@media(max-width:700px){#dq.sheet{left:10px;right:10px;bottom:10px;width:auto;}}

/* stage bar in the toolbar */
#stagebar{margin-left:auto;display:flex;align-items:center;gap:10px;min-width:0;}
#stagebar:empty{display:none;}
#stagebar~#b-exp{margin-left:0;}
.sg-steps{display:flex;align-items:center;gap:6px;margin-right:6px;}
.sg-steps em{width:14px;height:1.5px;background:#DCE3EC;display:block;}
.sg{display:flex;align-items:center;gap:6px;font-size:12px;color:#8A96A8;}
.sg i{width:8px;height:8px;border-radius:50%;background:#DCE3EC;flex:none;}
.sg b{font-weight:600;}
.sg.done i{background:#16A34A;} .sg.done{color:#4A5568;}
.sg.cur i{background:#005FF6;box-shadow:0 0 0 4px rgba(0,95,246,.18);animation:pfPing 1.8s infinite;} .sg.cur{color:var(--ink);} .sg.cur b{font-weight:700;}
.sg-go{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 14px 0 16px;border-radius:11px;border:none;background:#121418;color:#fff;font:inherit;font-size:13.5px;font-weight:600;cursor:pointer;white-space:nowrap;transition:filter .2s,gap .2s;}
.sg-go:hover{filter:brightness(1.4);gap:11px;}
.sg-go svg{width:15px;height:15px;}
.sg-sec{height:38px;padding:0 14px;border-radius:11px;border:1px solid #DCE3EC;background:#fff;color:var(--ink);font:inherit;font-size:13.5px;font-weight:600;cursor:pointer;white-space:nowrap;}
.sg-sec:hover{border-color:#0B1A3C;}
@media(max-width:1600px){.sg b{display:none;}.sg.cur b{display:inline;}}
@media(max-width:1500px){.xl-btn .xl-t,.xl-btn .xl-up{display:none;}.xl-btn{padding:0 11px !important;}}
.searchrow #q{flex:1 1 220px;min-width:160px;}
@media(max-width:1000px){.sg-steps,.sg-sec{display:none;}#stagebar{margin-left:0;}}
#selbar .sb-p{background:#EEF4FD;color:#004FD1;}
#selbar .sb-p:hover{background:#DCE9FC;}
body.dark .sg-sec{background:#121A2B;border-color:#2A3550;} body.dark #selbar .sb-p{background:#132542;color:#8DB8F5;}

.a-ask{background:#FDECEC;color:#B42318;box-shadow:0 0 0 1.5px #F5B5B5;animation:askPulse 2s ease-in-out infinite;}
@keyframes askPulse{50%{box-shadow:0 0 0 4px rgba(239,68,68,.15)}}
body.dark .a-ask{background:#3A1717;color:#F59A9A;}

.pst{display:flex;flex-direction:column;align-items:flex-end;gap:3px;line-height:1.1;}
.pst .when{font-size:11px;font-weight:500;color:#8A96A8;white-space:nowrap;}
.pst .when.late{color:#B45309;}
.pst .rprix small{display:none;}
.mi-mail{align-items:center !important;}
.mi-mail .mi-t{display:flex;flex-direction:column;line-height:1.25;}
.mi-mail .mi-t small{font-size:11.5px;font-weight:500;color:#6B778C;}
.mi-mail em{margin-left:auto;font-style:normal;color:#005FF6;font-weight:700;transition:transform .2s;}
.mi-mail:hover em{transform:translate(2px,-2px);}
.mi-mail svg{color:#005FF6;}
body.dark .mi-mail .mi-t small{color:#97A3BB;}

.sw.sw-s,.sw-s{position:relative;width:38px;height:22px;flex:none;cursor:pointer;}
.sw-s input{display:none;}
.sw.sw-s i{position:absolute;inset:0;background:#CBD5E1;border-radius:999px;transition:background .18s ease;}
.sw.sw-s i::after{content:'';position:absolute;top:3px;left:3px;width:16px;height:16px;background:#fff;border-radius:50%;box-shadow:0 1px 4px rgba(0,0,0,.25);transition:left .18s cubic-bezier(.3,1.4,.4,1);}
.sw.sw-s input:checked+i{background:#004FD1;}
.sw.sw-s input:checked+i::after{left:19px;}
body.dark .sw.sw-s input:not(:checked)+i{background:#3A4660;}
.acct-menu svg{width:17px;height:17px;flex:none;}
.side-brand{display:flex;align-items:center;gap:9px;height:58px;margin:-14px -10px 10px;padding:0 8px 0 16px;border-bottom:1px solid var(--border);flex:none;}
.side-brand img{height:25px;width:auto;display:block;}
.side-brand span{font-family:'IBM Plex Sans','SG fb',sans-serif;font-size:15px;letter-spacing:2px;line-height:1;color:var(--ink);padding-top:4px;}
#nc-btn{display:flex;align-items:center;gap:10px;width:100%;border:none;background:none;border-radius:10px;padding:10px 10px;font:inherit;font-weight:700;font-size:15.5px;cursor:pointer;color:var(--ink);margin-bottom:14px;text-align:left;}
#nc-btn:hover{background:#E4E9F0;}
#nc-btn svg{width:18px;height:18px;flex:none;}
#an-btn{display:flex;align-items:center;gap:10px;width:100%;border:none;background:none;border-radius:10px;padding:10px 10px;font:inherit;font-weight:700;font-size:15.5px;cursor:pointer;color:var(--ink);margin-bottom:14px;text-align:left;margin-top:-10px;}
#an-btn,#ag-btn,#side-rail [onclick="vueAnnuaire()"],#side-rail [onclick="vueAgent()"]{display:none!important;} /* 17/10 Ethan : Directory + AI scout retirés du menu (vues conservées) */
#an-btn:hover{background:#E4E9F0;}
#an-btn.on{background:#DCE4EE;}
#an-btn svg{width:18px;height:18px;flex:none;}
.nbadge{margin-left:auto;background:#0B1A3C;color:#fff;border-radius:999px;font-size:12.5px;font-weight:800;padding:3px 10px;}
#ag-btn{display:flex;align-items:center;gap:10px;width:100%;border:none;background:none;border-radius:10px;padding:10px 10px;font:inherit;font-weight:700;font-size:15.5px;cursor:pointer;color:var(--ink);margin:-10px 0 14px;text-align:left;}
#ag-btn:hover{background:#E4E9F0;}
#ag-btn.on{background:#DCE4EE;}
#ag-btn svg{width:18px;height:18px;flex:none;}
.ag-on{margin-left:auto;background:var(--green);color:#fff;border-radius:999px;font-size:11.5px;font-weight:800;padding:3px 9px;display:none;}
.ag-on.vis{display:inline-block;}
/* vue agent */
.ag-wrap{background:#fff;padding:34px 40px 60px;min-height:60vh;}
.ag-head{display:flex;align-items:flex-start;gap:24px;max-width:900px;}
.ag-head h2{margin:0 0 8px;font-family:'IBM Plex Sans','SG fb',sans-serif;font-size:23px;font-weight:700;}
.ag-head p{margin:0;color:var(--g2);font-size:16.5px;line-height:1.6;font-weight:600;}
.sw{position:relative;width:64px;height:36px;flex:none;cursor:pointer;}
.sw input{display:none;}
.sw i{position:absolute;inset:0;background:#d2d2d7;border-radius:999px;transition:background .15s;}
.sw i::after{content:'';position:absolute;top:3px;left:3px;width:30px;height:30px;background:#fff;border-radius:50%;box-shadow:0 2px 6px rgba(0,0,0,.25);transition:left .15s;}
.sw input:checked+i{background:var(--green);}
.sw input:checked+i::after{left:31px;}
.ag-sec{margin-top:30px;max-width:900px;}
.ag-sec b{display:block;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.7px;color:var(--g2);margin-bottom:9px;}
#ag-profil,textarea[id^="rd-profil"]{width:100%;max-width:900px;border:1.5px solid #d2d2d7;border-radius:13px;padding:14px 16px;font:inherit;font-size:16px;line-height:1.55;outline:none;resize:vertical;height:150px;box-sizing:border-box;display:block;background:#fff;color:var(--ink);}
#ag-profil:focus,textarea[id^="rd-profil"]:focus{border-color:#0B1A3C;}
body.dark #ag-profil,body.dark textarea[id^="rd-profil"]{background:#131A2A;border-color:#2A3550;}
.ag-save{margin-top:10px;}
.ag-save{margin-top:10px;background:#0B1A3C;color:#fff;border:none;border-radius:999px;padding:11px 24px;font:inherit;font-weight:800;font-size:15px;cursor:pointer;}
.trv{border:1px solid var(--border);border-radius:14px;padding:18px 20px;margin-bottom:12px;max-width:900px;}
.trv .t{font-size:18px;font-weight:800;}
.trv .d{color:var(--ink);font-size:15.5px;line-height:1.55;margin:6px 0 10px;}
.trv .m{color:var(--g2);font-size:13.5px;font-weight:600;}
.trv a{color:var(--blue);text-decoration:none;font-weight:700;}
.trv .acts{margin-top:12px;display:flex;gap:10px;}
.trv .acts .mk{background:#0B1A3C;color:#fff;border:none;border-radius:999px;padding:9px 18px;font:inherit;font-weight:700;font-size:14px;cursor:pointer;}
.trv .acts .ig{background:none;border:none;color:var(--g2);font:inherit;font-weight:700;font-size:14px;cursor:pointer;}
.trv.vue{opacity:.5;}
.side-lab{font-size:12.5px;font-weight:700;letter-spacing:.2px;color:var(--g2);padding:0 10px 6px;}
.camp{padding:8px 10px;border-radius:10px;cursor:pointer;min-width:0;position:relative;display:flex;align-items:center;gap:6px;}
.camp:hover{background:#E4E9F0;}
.camp.on{background:#DCE4EE;}
.camp .ctxt{flex:1;min-width:0;}
/* activity icon: send = envelope flying, follow = arrows turning, search = scanning ring, hold = amber pulse */
.cact{flex:none;width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;position:relative;cursor:default;}
.cact i{display:block;width:14px;height:14px;background:no-repeat center/contain;}
.cact-send{background:#EAF2FE;}
.cact-send i{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23004FD1' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M22 2 11 13'/><path d='M22 2 15 22l-4-9-9-4z'/></svg>");animation:actFly 1.6s ease-in-out infinite;}
.cact-follow{background:#EAF2FE;}
.cact-follow i{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23004FD1' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M21 12a9 9 0 1 1-3-6.7L21 8'/><path d='M21 3v5h-5'/></svg>");animation:actSpin 2.2s linear infinite;}
.cact-search i{width:13px;height:13px;border-radius:50%;border:2px solid #C9D5EE;border-top-color:#004FD1;animation:actSpin .9s linear infinite;box-sizing:border-box;}
.cact-hold i{width:8px;height:8px;border-radius:50%;background:#D97706;animation:actPulse 1.6s ease-in-out infinite;}
.cact::before{content:'';position:absolute;inset:0;border-radius:50%;}
.cact-send::before,.cact-follow::before{box-shadow:0 0 0 0 rgba(0,79,209,.35);animation:actRing 1.8s ease-out infinite;}
@keyframes actFly{0%,100%{transform:translate(0,0);}50%{transform:translate(2px,-2px);}}
@keyframes actSpin{to{transform:rotate(360deg);}}
@keyframes actPulse{0%,100%{transform:scale(.8);opacity:.6;}50%{transform:scale(1.15);opacity:1;}}
@keyframes actRing{0%{box-shadow:0 0 0 0 rgba(0,79,209,.35);}100%{box-shadow:0 0 0 7px rgba(0,79,209,0);}}
@media(prefers-reduced-motion:reduce){.cact i,.cact::before{animation:none!important;}}
#act-tip{position:fixed;z-index:9500;transform:translateY(-50%);max-width:260px;padding:8px 11px;border-radius:9px;background:#0B1A3C;color:#fff;font-size:12.5px;font-weight:500;line-height:1.4;box-shadow:0 10px 24px -10px rgba(11,26,60,.5);pointer-events:none;opacity:0;transition:opacity .12s;}
#act-tip.on{opacity:1;}
#act-tip::before{content:'';position:absolute;left:-5px;top:50%;transform:translateY(-50%) rotate(45deg);width:10px;height:10px;background:inherit;border-radius:2px;}
body.dark .cact-send,body.dark .cact-follow{background:#16243F;}
body.dark #act-tip{background:#E8EDF7;color:#0B1A3C;}
.camp .dots{opacity:0;flex:none;border:none;background:none;font-size:19px;line-height:1;cursor:pointer;color:var(--g2);padding:4px 6px;border-radius:7px;}
.camp:hover .dots,.camp .dots.on{opacity:1;}
.camp .dots:hover{background:#d8d8dc;color:var(--ink);}
.cmenu{position:absolute;right:4px;top:38px;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.16);z-index:60;min-width:155px;overflow:hidden;}
.cmenu button{display:block;width:100%;text-align:left;padding:11px 15px;border:none;background:none;font:inherit;font-size:14.5px;font-weight:600;cursor:pointer;color:var(--ink);}
.cmenu button:hover{background:#f2f2f3;}
.cmenu .sup{color:var(--red);}
.camp .t{font-weight:600;font-size:15.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.camp.on .t{font-weight:700;}
.camp .s{color:var(--g2);font-size:13.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px;}

/* ───── zone principale ───── */
.main{flex:1;min-width:0;background:#F7F9FC;display:flex;flex-direction:column;min-height:100vh;}
header{position:sticky;top:0;z-index:101;background:rgba(255,255,255,.96);border-bottom:1px solid var(--border);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);}
.header-inner{height:56px;display:flex;align-items:center;gap:13px;padding:0 26px;}
.hd-btn.hd-l{margin-left:0;}
.hd-btn{margin-left:auto;flex:none;background:#fff;border:1.5px solid #C9D3E0;border-radius:10px;height:40px;display:inline-flex;align-items:center;gap:7px;padding:0 16px;font:inherit;font-weight:700;font-size:14.5px;line-height:1;cursor:pointer;color:var(--ink);white-space:nowrap;}
.hd-btn:focus{outline:none;}
.hd-btn:hover{border-color:#0B1A3C;}
.searchrow{position:sticky;top:0;z-index:100;background:#FBFCFE;height:58px;padding:0 18px;box-sizing:border-box;margin:0;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:11px;box-shadow:var(--shadow);}
#q{height:40px;width:min(300px,22vw);flex:none;border:1.5px solid #C9D3E0;border-radius:10px;padding:0 17px;font-size:15px;font-family:'Inter','Inter fb',system-ui,sans-serif;outline:none;background:#fff;}
#q:focus{border-color:#0B1A3C;}
.wrap{padding:0 0 80px;flex:1;}

/* onglets façon boîte mail */
.tabs{display:flex;align-items:center;gap:4px;flex:1;min-width:0;overflow-x:auto;}
#fStat{appearance:none;-webkit-appearance:none;border:1.5px solid #d2d2d7;border-radius:13px;height:44px;padding:0 44px 0 15px;font:inherit;font-size:15px;font-weight:700;color:var(--ink);outline:none;cursor:pointer;background:#fff url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231d1d1f' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 9.5l5-5 5 5M7 14.5l5 5 5-5'/%3E%3C/svg%3E") no-repeat right 15px center/17px;}
#fStat:hover{border-color:#0B1A3C;}
/* sélecteur pays intégré dans l'en-tête de colonne (ressemble au libellé PAYS) */
#fPays{appearance:none;-webkit-appearance:none;border:none;background:none;font:inherit;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.7px;color:var(--g2);cursor:pointer;outline:none;max-width:100%;}
#fPays:hover{color:var(--red);}
#fPays.on{color:var(--ink);text-transform:none;letter-spacing:0;}
#fPays option{text-transform:none;letter-spacing:0;font-size:16px;color:var(--ink);}
.tabs .right{margin-left:auto;display:flex;align-items:center;gap:8px;}

/* liste une ligne par usine */
.list{background:#fff;border-bottom:1px solid var(--border);box-shadow:0 1px 3px rgba(11,26,60,.06);}
.lgrid{display:grid;grid-template-columns:var(--cols,46px minmax(210px,2fr) minmax(134px,.75fr) minmax(118px,1fr) minmax(110px,.7fr) minmax(190px,1fr) minmax(160px,1fr));gap:0;align-items:stretch;}
.lgrid>span,.lgrid>select{display:flex;align-items:center;min-width:0;padding:8px 12px;border-right:1px solid #E2E8F1;box-sizing:border-box;}
.lgrid>:last-child{border-right:none;}
.lgrid>.rnum{justify-content:center;background:#EEF2F7;border-right:1px solid #D5DDE9;padding:8px 4px;}
.lgrid>.cnum{justify-content:flex-end;}
.agrid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,0.9fr) minmax(0,1.3fr) 185px 150px;gap:14px;align-items:center;}
.aplus{justify-self:end;border:1.5px solid #d2d2d7;background:#fff;border-radius:999px;padding:8px 14px;font:inherit;font-size:14px;font-weight:700;cursor:pointer;color:var(--ink);white-space:nowrap;}
.aplus:hover{border-color:#0B1A3C;}
.aplus.ok{border-color:var(--green);color:var(--green);}
.lhead{padding:0;border-bottom:1px solid var(--border);background:#F3F6FA;position:sticky;top:58px;z-index:40;}
.lhead>span{padding:9px 12px;}
.lhead span{font-size:11.5px;text-transform:uppercase;letter-spacing:.6px;color:#5B6B82;font-weight:700;cursor:pointer;user-select:none;white-space:nowrap;}
.lhead span.on{color:inherit;}
.lhead span.num{justify-content:flex-end;}
.row{padding:0;border-bottom:1px solid #E2E8F1;cursor:pointer;min-width:0;}
.row.z{background:#F9FBFD;}
.row.sel{outline:2px solid #005FF6;outline-offset:-2px;background:#F0F7FF;}
.rnum{color:#8A96A8;font-size:11.5px;font-weight:650;font-variant-numeric:tabular-nums;}
.row:last-child{border-bottom:none;}
.row:hover{background:#F4F7FB;}
.row.exclu{opacity:.5;}
.rnom{font-weight:650;font-size:14.5px;min-width:0;}
.rnom .rnm{display:block;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rnom .fstar{color:var(--orange);margin-right:3px;}
.rgeo{color:var(--g2);font-size:13.5px;font-weight:600;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rtype{color:var(--g2);font-size:18.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rdate{color:var(--g2);font-size:17.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rchip{justify-self:start;font-size:11.8px;border-radius:7px;padding:3px 9px;font-weight:700;letter-spacing:.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;background:#E8EDF4;color:#3D4A5C;border:1px solid #D5DEE9;}
.c-sans_email{background:#E7EFFB;color:#3869B8;border-color:#CDDCF4;}
.c-ecarte{background:#FBE5DC;color:#A63716;border-color:#F2CDBD;}
.c-contacte{background:#DCE9FB;color:#004FD1;border-color:#BFD7F6;}
.c-repondu{background:#DCF2E4;color:#13703F;border-color:#BCE3CB;}
.c-prix_recu{background:#C8EDD8;color:#0A5C33;border-color:#A6DFBE;}
.rprix{font-weight:750;font-size:14.5px;color:var(--ink);text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;}
.rprix.off{color:#b4b4ba;font-weight:600;}
.rprix small{display:block;font-size:11.5px;color:var(--g2);font-weight:600;}
.chev{color:#c9c9ce;font-size:21px;}
.vide{padding:46px 20px;text-align:center;color:var(--g2);font-weight:600;}

/* ───── Next step card (the client always has a next move) ───── */
.nx{display:flex;align-items:center;gap:14px;margin:14px 16px 12px;padding:14px 16px;background:#fff;border:1px solid var(--border);border-left:3px solid var(--blue);border-radius:11px;box-shadow:0 1px 2px rgba(11,26,60,.04),0 4px 14px rgba(11,26,60,.05);}
.nx-ico{flex:none;width:34px;height:34px;border-radius:9px;background:#EAF2FE;display:flex;align-items:center;justify-content:center;font-size:17px;}
.nx-tx{flex:1;min-width:0;}
.nx-k{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--blue);margin-bottom:2px;}
.nx-t{font-weight:650;color:var(--ink);font-size:14.5px;}
.nx-d{color:var(--g2);font-size:13px;font-weight:450;margin-top:2px;}
.nx-a{display:flex;gap:8px;flex:none;flex-wrap:wrap;justify-content:flex-end;}
.nx-a button{font:inherit;font-size:13px;font-weight:600;padding:8px 13px;border-radius:8px;border:1px solid var(--border);background:#fff;color:var(--ink);cursor:pointer;white-space:nowrap;}
.nx-a button.p{background:var(--blue);border-color:var(--blue);color:#fff;}
.nx-a button:hover{filter:brightness(.97);}
@media(max-width:700px){.nx{flex-wrap:wrap}.nx-a{width:100%;justify-content:flex-start}}
#nxm{position:fixed;inset:0;z-index:9000;background:rgba(11,26,60,.38);display:none;align-items:flex-end;justify-content:center;padding:16px;}
#nxm.on{display:flex;}
@media(min-width:701px){#nxm{align-items:center;}}
.nxm-c{width:100%;max-width:520px;background:#fff;border-radius:14px;padding:16px;box-shadow:0 20px 50px rgba(11,26,60,.25);}
.nxm-h{display:flex;align-items:center;gap:9px;font-weight:650;color:var(--ink);margin-bottom:12px;}
.nxm-h img{width:24px;height:24px;}
.nxm-h button{margin-left:auto;border:none;background:none;font-size:16px;color:var(--g2);cursor:pointer;}
#nxm-t{width:100%;box-sizing:border-box;font:inherit;font-size:15px;padding:11px 12px;border:1px solid var(--border);border-radius:10px;resize:vertical;color:var(--ink);background:#fff;}
.nxm-f{display:flex;justify-content:flex-end;gap:8px;margin-top:12px;}
.nxm-f button{font:inherit;font-size:14px;font-weight:600;padding:9px 15px;border-radius:8px;border:1px solid var(--border);background:#fff;color:var(--ink);cursor:pointer;}
.nxm-f button.p{background:var(--blue);border-color:var(--blue);color:#fff;}
#nxt{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);opacity:0;pointer-events:none;z-index:9100;background:#0B1A3C;color:#fff;font-weight:600;font-size:14px;padding:11px 16px;border-radius:10px;transition:.25s;max-width:90vw;}
#nxt.on{opacity:1;transform:translate(-50%,0);pointer-events:auto;}
#nxt button{margin-left:10px;font:inherit;font-size:13px;font-weight:700;color:#8DB8F5;background:none;border:none;cursor:pointer;padding:0;}
body.dark .nxm-c,body.dark #nxm-t,body.dark .nxm-f button{background:#121A2B;color:var(--ink);}
body.dark .nxm-f button.p{background:#005FF6;color:#fff;}
/* ── fil e-mail fournisseur (19/10) ── */
#film{position:fixed;inset:0;z-index:9000;background:rgba(11,26,60,.38);display:none;justify-content:flex-end;}
#film.on{display:flex;}
.fl-c{width:100%;max-width:640px;height:100%;background:var(--bg);display:flex;flex-direction:column;box-shadow:-20px 0 50px rgba(11,26,60,.2);}
.fl-h{display:flex;align-items:center;gap:10px;padding:14px 18px;background:#fff;border-bottom:1px solid var(--border);}
.fl-h b{font-size:16px;color:var(--ink);}
.fl-h small{display:block;color:var(--g2);font-size:12.5px;font-weight:450;}
.fl-h button{margin-left:auto;border:none;background:none;font-size:18px;color:var(--g2);cursor:pointer;padding:4px 8px;}
.fl-l{flex:1;overflow:auto;padding:16px 18px;display:flex;flex-direction:column;gap:12px;}
.fl-m{background:#fff;border:1px solid var(--border);border-radius:12px;padding:12px 14px;max-width:92%;}
.fl-m.out{align-self:flex-end;background:#EEF4FF;border-color:#C9DAF8;}
.fl-mh{display:flex;gap:8px;align-items:baseline;font-size:12.5px;color:var(--g2);margin-bottom:4px;}
.fl-mh b{color:var(--ink);font-size:13.5px;}
.fl-mh span{margin-left:auto;white-space:nowrap;}
.fl-ms{font-size:12.5px;color:var(--g2);margin-bottom:8px;}
.fl-mb{white-space:pre-wrap;word-break:break-word;font-size:14px;line-height:1.5;color:var(--ink);}
.fl-mb.cut{max-height:260px;overflow:hidden;-webkit-mask-image:linear-gradient(#000 75%,transparent);mask-image:linear-gradient(#000 75%,transparent);}
.fl-more{border:none;background:none;color:var(--blue);font:inherit;font-size:13px;font-weight:600;cursor:pointer;padding:6px 0 0;}
.fl-f{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;}
.fl-f i{font-style:normal;font-size:12px;background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:2px 7px;color:var(--g2);}
.fl-tag{font-size:11px;font-weight:600;border-radius:5px;padding:1px 6px;background:#E2E8F0;color:#334155;}
.fl-v{color:var(--g2);text-align:center;padding:40px 10px;font-size:14px;}
.fl-r{padding:12px 18px 16px;background:#fff;border-top:1px solid var(--border);}
.fl-r textarea{width:100%;box-sizing:border-box;font:inherit;font-size:15px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;resize:vertical;min-height:84px;color:var(--ink);background:#fff;}
.fl-rf{display:flex;align-items:center;gap:10px;margin-top:8px;}
.fl-rf small{color:var(--g2);font-size:12.5px;}
.fl-rf button{margin-left:auto;font:inherit;font-size:14px;font-weight:600;padding:9px 16px;border-radius:8px;border:1px solid var(--blue);background:var(--blue);color:#fff;cursor:pointer;}
.fl-rf button:disabled{opacity:.55;cursor:default;}
.fl-btn{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font:inherit;font-size:13.5px;font-weight:600;padding:7px 12px;border-radius:8px;border:1px solid var(--border);background:#fff;color:var(--ink);cursor:pointer;}
.fl-btn:hover{border-color:var(--blue);color:var(--blue);}
#q{display:none!important;} /* 20/10 Ethan: supplier search box removed */
.tb.tb-fil{color:var(--blue);border-color:rgba(0,79,209,.45);background:rgba(0,79,209,.08);}
body.dark .tb.tb-fil{color:#8DB4FF;border-color:rgba(141,180,255,.45);background:rgba(141,180,255,.12);}
body.dark .fl-c{background:#0B0F17;}
body.dark .fl-h,body.dark .fl-r,body.dark .fl-m,body.dark .fl-r textarea,body.dark .fl-btn{background:#121A2B;color:var(--ink);}
body.dark .fl-m.out{background:#13254A;border-color:#22407A;}
body.dark .fl-f i{background:#0B0F17;}
body.dark .fl-tag{background:#232C40;color:#C7D0E0;}
@media(max-width:700px){.fl-c{max-width:none}.fl-m{max-width:100%}}

/* ───── détail déroulé sous la ligne ───── */
.det{background:#fff;border-bottom:1px solid #e8e8ec;padding:26px 28px 28px;cursor:default;position:relative;}
.racts{display:flex;gap:7px;justify-content:flex-end;opacity:0;transition:opacity .12s;}
.row:hover .racts,.racts.fixe{opacity:1;}
.rico{width:30px;height:30px;border:1.5px solid #C9D3E0;background:#fff;border-radius:50%;font-size:16.5px;line-height:1;cursor:pointer;color:var(--ink);padding:0;}
.rico:hover{border-color:#0B1A3C;}
.rico.on{color:var(--orange);border-color:var(--orange);background:#fff8ef;}
.rico.del:hover{color:var(--red);border-color:var(--red);}
.det-acts{position:absolute;top:18px;right:24px;display:flex;gap:9px;}
.dico{width:44px;height:44px;border:1.5px solid #d2d2d7;background:#fff;border-radius:50%;font-size:20px;line-height:1;cursor:pointer;color:var(--ink);}
.dico:hover{border-color:#0B1A3C;}
.dico.on{color:var(--orange);border-color:var(--orange);background:#fff8ef;}
.dico.del:hover{color:var(--red);border-color:var(--red);}
.det .dgrid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:18px 40px;}
.det b{display:block;font-size:15px;font-weight:800;text-transform:uppercase;letter-spacing:.7px;color:var(--g2);margin-bottom:7px;}
.det p{margin:0;font-size:20px;line-height:1.55;color:#22262c;}
.det a{color:var(--blue);text-decoration:none;font-weight:700;}
.det a:hover{text-decoration:underline;}
.dedit{border-top:1px dashed #dfe0e4;margin-top:22px;padding-top:20px;display:flex;gap:14px;flex-wrap:wrap;align-items:flex-end;}
.dedit label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--g2);}
.dedit input,.dedit select,.dedit textarea{border:1.5px solid #d2d2d7;border-radius:11px;padding:13px 15px;font:inherit;font-size:19px;outline:none;background:#fff;}
.dedit input:focus,.dedit select:focus,.dedit textarea:focus{border-color:#0B1A3C;}
.dedit textarea{width:420px;max-width:50vw;height:54px;resize:vertical;}
.dedit .btn{background:#0B1A3C;border:none;color:#fff;border-radius:999px;padding:14px 32px;font:inherit;font-weight:800;font-size:18px;cursor:pointer;}
.dedit .btn:hover{background:#000;}
.dedit .gh{background:#fff;border:1.5px solid #d2d2d7;border-radius:999px;padding:13px 21px;font:inherit;font-weight:700;font-size:16.5px;cursor:pointer;color:var(--ink);}
.dedit .gh.fav.on{border-color:var(--orange);color:var(--orange);background:#fff8ef;}
.dedit .gh.del:hover{border-color:var(--red);color:var(--red);}
.dok{color:var(--green);font-weight:800;font-size:17px;align-self:center;}
.dnotes{width:100%;border:1.5px solid #d2d2d7;border-radius:11px;padding:11px 13px;font:inherit;font-size:16px;line-height:1.5;outline:none;resize:vertical;height:96px;}
.dnotes:focus{border-color:#0B1A3C;}
.nwrap{position:relative;}
.nsave{position:absolute;right:10px;bottom:10px;background:#0B1A3C;color:#fff;border:none;border-radius:999px;padding:8px 16px;font:inherit;font-weight:700;font-size:13.5px;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.18);}
.nsave:hover{background:#000;}

/* ───── bouton flottant envois ───── */
#fabs{position:fixed;right:34px;bottom:30px;z-index:300;display:flex;gap:12px;align-items:center;}
#fab-env{background:#0B1A3C;color:#fff;border:none;border-radius:999px;padding:17px 28px;font:inherit;font-weight:800;font-size:17.5px;cursor:pointer;box-shadow:0 8px 26px rgba(0,0,0,.28);display:none;}
#fab-env.on{display:block;}
#fab-env:hover{background:#000;}
#fab-rel{background:#fff;color:var(--ink);border:1.5px solid #c9c9cf;border-radius:999px;padding:16px 24px;font:inherit;font-weight:800;font-size:16.5px;cursor:pointer;box-shadow:0 8px 26px rgba(0,0,0,.14);display:none;}
#fab-rel.on{display:block;}
#fab-rel:hover{border-color:#0B1A3C;}
.stopbtn{margin-top:16px;background:#fff;border:1.5px solid var(--red);color:var(--red);border-radius:999px;padding:11px 22px;font:inherit;font-weight:800;font-size:15.5px;cursor:pointer;}
.stopbtn:hover{background:#fff5f5;}
#ev-plan{font-size:17px;line-height:1.7;color:var(--ink);}
#ev-plan b{font-weight:800;}
#ev-plan .ev-l{display:flex;justify-content:space-between;border-bottom:1px dashed #e4e4e8;padding:9px 2px;}
#ev-plan .ev-n{font-weight:800;}
#ev-plan .ev-note{color:var(--g2);font-size:15px;margin-top:14px;}

/* ───── page formulaire nouvelle recherche ───── */
#fp,#fpe{display:none;background:#fff;min-height:100vh;padding:46px 60px 70px;position:relative;}
.fsec{margin-bottom:28px;max-width:1100px;}
.fsec>b{display:block;font-size:15px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--g2);margin-bottom:11px;}
.fchips{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
.fch{border:1.5px solid #d2d2d7;background:#fff;border-radius:999px;padding:12px 22px;font:inherit;font-size:16.5px;font-weight:700;color:#3c4453;cursor:pointer;}
.fch:hover{border-color:#0B1A3C;}
.fch.on{background:#0B1A3C;border-color:#0B1A3C;color:#fff;}
.frow{display:flex;gap:22px;flex-wrap:wrap;}
.frow label{display:flex;flex-direction:column;gap:8px;font-size:15px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--g2);}
.fin{border:1.5px solid #d2d2d7;border-radius:12px;height:52px;padding:0 16px;font:inherit;font-size:17px;outline:none;width:240px;}
.fin:focus{border-color:#0B1A3C;}
.ftxt{width:100%;border:1.5px solid #d2d2d7;border-radius:13px;padding:14px 16px;font:inherit;font-size:17px;outline:none;}
.ftxt:focus{border-color:#0B1A3C;}
#fp.on,#fpe.on{display:block;}
#fp .nc-foot{max-width:none;}

/* ───── écran d'accueil plein panneau façon ChatGPT ───── */
#home{display:none;flex:1;min-height:100vh;background:#F7F9FC;flex-direction:column;align-items:center;justify-content:center;padding:40px 32px 110px;position:relative;overflow:hidden;}
#home.on{display:flex;}
#home.drag .nc-drop{display:flex;}
.home-inner{width:100%;max-width:798px;}
.home-mark{display:block;margin:0 auto 18px;width:68px;height:auto;}
body.guest .home-mark{display:none;}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.home-title{font-family:'IBM Plex Sans','SG fb',sans-serif;font-size:34px;font-weight:700;letter-spacing:-.4px;text-align:center;margin:0 0 26px;line-height:1.1;}
.home-bar{display:flex;flex-direction:column;align-items:stretch;gap:6px;border:1.5px solid #C9D3E0;border-radius:16px;padding:16px 14px 10px;box-shadow:0 2px 10px rgba(11,26,60,.06);background:#fff;transition:border-color .15s,box-shadow .15s;text-align:left;}
.home-tools2{display:flex;align-items:center;}
.home-bar:focus-within{border-color:#0B1A3C;box-shadow:0 12px 40px rgba(0,0,0,.13);}
.home-bar.drop{border-color:#0B1A3C;border-style:dashed;background:#f7f7f8;box-shadow:0 0 0 4px rgba(29,29,31,.07);}
.home-plus{flex:none;width:44px;height:44px;border-radius:50%;border:1.5px solid #d2d2d7;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#0B1A3C;}
.home-plus:hover{border-color:#0B1A3C;background:#f5f5f7;}
.home-plus svg{width:21px;height:21px;}
.home-pluswrap{position:relative;flex:none;}
.home-menu{position:absolute;top:52px;left:0;background:#fff;border:1px solid #e4e4e8;border-radius:14px;box-shadow:0 12px 34px rgba(0,0,0,.16);padding:6px;min-width:230px;display:none;z-index:30;}
.home-menu.on{display:block;}
.home-menu button{display:flex;align-items:center;gap:11px;width:100%;background:none;border:none;border-radius:10px;padding:11px 12px;font:inherit;font-size:15.5px;font-weight:600;color:var(--ink);cursor:pointer;text-align:left;}
.home-menu button:hover{background:#f5f5f7;}
.home-menu svg{width:19px;height:19px;flex:none;color:var(--g2);}
.home-ta{width:100%;border:none;outline:none;resize:none;font:inherit;font-size:17.5px;line-height:1.5;padding:0 4px;background:transparent;min-height:72px;max-height:240px;overflow-y:auto;box-sizing:border-box;}
.home-ta::placeholder{color:#9a9aa2;}
.home-mic{margin-left:auto !important;}
.home-mic + .home-send{margin-left:0;}
.home-mic.rec{color:#fff;background:#E5484D;border-color:#E5484D;animation:micPulse 1.2s ease-in-out infinite;}
@keyframes micPulse{0%,100%{box-shadow:0 0 0 0 rgba(229,72,77,.45);}50%{box-shadow:0 0 0 7px rgba(229,72,77,0);}}
body.dark .home-mic.rec{background:#E5484D;border-color:#E5484D;}
.home-send{margin-left:auto;width:40px;height:40px;border-radius:11px;border:1px solid #d2d2d7;background:#fff;color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;flex:none;transition:border-color .15s;}
.home-send:hover{border-color:#0B1A3C;}
.home-send svg{width:17px;height:17px;}
.home-sugg{display:flex;flex-direction:column;gap:3px;margin:30px auto 0;max-width:600px;}
.home-row{display:flex;align-items:center;gap:15px;background:none;border:none;border-radius:13px;padding:14px 15px;font:inherit;font-size:16.5px;color:#3c4453;cursor:pointer;text-align:left;width:100%;}
.home-row:hover{background:#f5f5f7;}
.home-row svg{width:21px;height:21px;flex:none;color:var(--g2);}
.home-row b{font-weight:800;color:var(--ink);}
.home-row small{color:var(--g2);font-weight:600;}
.home-err{display:block;text-align:center;color:var(--red);font-weight:700;font-size:16px;margin-top:16px;}

/* ───── modale nouvelle recherche ───── */
#nc-bg,#ml-bg,#us-bg,#ev-bg,#rl-bg,#gs-bg,#dm-bg{position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:500;display:none;align-items:center;justify-content:center;padding:24px 16px;overflow-y:auto;}
#nc-bg.on,#ml-bg.on,#us-bg.on,#ev-bg.on,#rl-bg.on,#gs-bg.on,#dm-bg.on{display:flex;}
.ml-lab{font-size:15px;font-weight:800;text-transform:uppercase;letter-spacing:.7px;color:var(--g2);margin-bottom:14px;}
.ml-f{font-size:15px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--g2);margin:0 0 7px;}
.ml-langs{display:flex;gap:8px;margin-bottom:18px;flex-wrap:wrap;}
.ml-lg{border:1.5px solid #d2d2d7;background:#fff;border-radius:999px;padding:8px 14px;font:inherit;font-size:16.5px;font-weight:700;cursor:pointer;color:var(--g2);}
.ml-lg:hover{border-color:#0B1A3C;}
.ml-lg.on{background:#0B1A3C;border-color:#0B1A3C;color:#fff;}
.ml-lg.has{border-color:#9a9aa2;color:var(--ink);}
.ml-lg.on.has{color:#fff;}
.ml-dots{display:flex;gap:11px;justify-content:center;margin:18px 0 0;}
.ml-dot{width:12px;height:12px;border-radius:50%;background:#d2d2d7;border:none;cursor:pointer;padding:0;}
.ml-dot:hover{background:#a9a9b0;}
.ml-dot.on{background:#0B1A3C;}
#ml-wait{display:none;flex-direction:column;align-items:center;gap:20px;padding:70px 0 80px;font-size:21px;font-weight:700;color:var(--g2);}
#ml-bg.wait #ml-wait{display:flex;}
#ml-bg.wait #ml-body{display:none;}
.spin{width:38px;height:38px;border:4px solid #e4e4e8;border-top-color:#0B1A3C;border-radius:50%;animation:rot .9s linear infinite;}
.pbar{width:min(440px,70%);height:9px;border-radius:99px;background:#e7e7ea;margin:0 auto;overflow:hidden;}
.pbar i{display:block;height:100%;width:0;background:#0B1A3C;border-radius:99px;transition:width .95s linear;}
@keyframes rot{to{transform:rotate(360deg)}}
#ml-sujet{width:100%;border:1.5px solid #d2d2d7;border-radius:13px;padding:15px 17px;font:inherit;font-size:20px;font-weight:700;outline:none;margin-bottom:14px;}
#ml-corps{width:100%;border:1.5px solid #d2d2d7;border-radius:13px;padding:15px 17px;font:inherit;font-size:18px;line-height:1.5;outline:none;resize:vertical;}
#ml-sujet:focus,#ml-corps:focus{border-color:#0B1A3C;}
.nc-card{background:#fff;border-radius:18px;box-shadow:0 10px 30px rgba(11,26,60,.18);padding:52px 46px 42px;width:100%;max-width:980px;position:relative;}
.nc-drop{display:none;position:absolute;inset:12px;border:3px dashed #0B1A3C;border-radius:18px;background:rgba(255,255,255,.9);z-index:5;align-items:center;justify-content:center;pointer-events:none;color:#0B1A3C;}
#fp.drag .nc-drop{display:flex;}
.nc-drop svg{width:80px;height:80px;}
.nc-chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px;}
.nc-chip{display:flex;align-items:center;gap:9px;background:#f0f0f2;border-radius:999px;padding:9px 16px;font-size:16.5px;font-weight:700;max-width:100%;}
.nc-chip button{border:none;background:none;cursor:pointer;font-size:15px;color:var(--g2);padding:0;}
.nc-chip button:hover{color:var(--red);}
.nc-tools{display:flex;gap:14px;align-items:center;margin-top:26px;}
.nc-ico{height:72px;padding:0 26px 0 20px;border:2px dashed #c9c9ce;border-radius:15px;background:#fafafa;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:11px;color:#0B1A3C;font:inherit;font-size:18px;font-weight:700;}
.nc-ico:hover{border-color:#0B1A3C;background:#f2f2f3;}
.nc-ico svg{width:24px;height:24px;flex:none;}
.nc-paste{display:none;width:100%;margin-top:14px;border:2px dashed #c9c9ce;border-radius:14px;padding:15px 17px;font:inherit;font-size:19px;outline:none;resize:vertical;height:120px;}
.nc-paste.on{display:block;}
.nc-paste:focus{border-color:#0B1A3C;}
.nc-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;}
.nc-grid label{display:flex;flex-direction:column;gap:7px;font-size:15px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--g2);}
.nc-grid label.w{grid-column:1/-1;}
.nc-grid input,.nc-grid textarea{border:1.5px solid #d2d2d7;border-radius:13px;padding:15px 17px;font:inherit;font-size:20px;outline:none;}
.nc-grid input:focus,.nc-grid textarea:focus{border-color:#0B1A3C;}
.nc-foot{display:flex;gap:14px;justify-content:space-between;align-items:center;margin-top:40px;}
.nc-err{color:var(--red);font-weight:700;font-size:17px;margin-right:auto;}
.nc-foot .ghost{background:none;border:none;border-radius:999px;padding:15px 22px;font:inherit;font-weight:800;font-size:19px;cursor:pointer;color:var(--ink);}
.nc-foot .ghost:hover{background:#f0f0f2;}
.nc-foot .go{background:#0B1A3C;border:none;color:#fff;border-radius:999px;padding:15px 34px;font:inherit;font-weight:800;font-size:19px;cursor:pointer;}
.nc-foot .go:hover{background:#000;}

/* ───── entrée façon ChatGPT « Que recherchez-vous ? » ───── */
.nc-ask{max-width:760px;text-align:left;}
.nca-title{font-size:33px;font-weight:800;margin:4px 0 8px;letter-spacing:-.4px;}
.nca-sub{margin:0 0 22px;color:var(--g2);font-size:17.5px;font-weight:600;line-height:1.5;}
.nca-ta{width:100%;border:1.5px solid #d2d2d7;border-radius:18px;padding:18px 20px;font:inherit;font-size:19px;line-height:1.5;outline:none;resize:vertical;height:150px;background:#fff;}
.nca-ta:focus{border-color:#0B1A3C;}
.nca-chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px;}
.nca-bar{display:flex;align-items:center;gap:14px;margin-top:20px;flex-wrap:wrap;}
.nca-attach{display:inline-flex;align-items:center;gap:9px;border:1.5px solid #c9c9ce;background:#fafafa;border-radius:999px;padding:11px 18px;font:inherit;font-size:15.5px;font-weight:700;cursor:pointer;color:#0B1A3C;}
.nca-attach:hover{border-color:#0B1A3C;background:#f2f2f3;}
.nca-attach svg{width:19px;height:19px;flex:none;}
.nca-hint{color:var(--g2);font-size:14px;font-weight:600;flex:1;min-width:0;}
.nca-bar .go{margin-left:auto;}
#nc-err1{display:block;margin-top:12px;}
.nca-cancel{position:absolute;top:18px;right:22px;background:none;border:none;font:inherit;font-size:15px;font-weight:700;color:var(--g2);cursor:pointer;padding:6px 10px;border-radius:8px;}
.nca-cancel:hover{background:#f0f0f2;color:var(--ink);}

/* ───── bandeau catégorie détectée (formulaire adaptatif) ───── */
.fp-cat{display:flex;align-items:center;gap:10px;margin-bottom:26px;font-size:15px;font-weight:700;color:var(--g2);}
.fp-cat select{appearance:none;-webkit-appearance:none;border:1.5px solid #d2d2d7;background:#fff url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231d1d1f' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 13px center/15px;border-radius:999px;padding:9px 40px 9px 16px;font:inherit;font-size:15.5px;font-weight:800;color:var(--ink);cursor:pointer;outline:none;}
.fp-cat select:hover{border-color:#0B1A3C;}

@media(max-width:1000px){
  /* narrow window: sidebar = 56px rail, expands as an overlay drawer (never stacks above the content) */
  body{padding-left:56px;}
  body.guest{padding-left:0;}
  aside{position:fixed!important;left:0;top:0;bottom:0;height:100vh;z-index:80;width:280px;box-shadow:8px 0 30px rgba(11,26,60,.18);}
  body.scollapse aside{box-shadow:none;}
  body:not(.scollapse):not(.guest)::after{content:"";position:fixed;inset:0;background:rgba(11,26,60,.28);z-index:79;}
  /* row = #, name, country, status, price, (actions hidden), chevron — header keeps a placeholder 6th span, hidden too */
  .lgrid{grid-template-columns:40px minmax(0,1.6fr) minmax(0,1fr) 170px;gap:0;}
  .lgrid>:nth-child(3),.lgrid>:nth-child(5),.lgrid>:nth-child(6){display:none;}
  .lhead{position:static;}
  .lhead span{font-size:14px;letter-spacing:.4px;}
  #fPays{font-size:14px;}
  .rnom{font-size:16px;} .rgeo{font-size:14px;} .rtype{font-size:13px;} .rdate{font-size:13px;}
  .rchip{font-size:12px;padding:4px 9px;} .rprix{font-size:15px;} .rprix small{font-size:11px;}
  .row{padding-top:14px;padding-bottom:14px;} .lhead{padding-top:13px;padding-bottom:13px;}
  .lgrid>.racts{display:none;}
  .searchrow{flex-wrap:wrap;gap:8px;padding:10px 14px;height:auto;}
  #q{width:100%;}
  .hd-btn{height:38px;font-size:13px;padding:0 12px;}
  .det .dgrid{grid-template-columns:1fr;}
  .nc-grid{grid-template-columns:1fr;}
  #fp,#fpe{padding:26px 16px 60px;}
  .nc-card{padding:28px 20px 24px;}
  .nca-title{font-size:25px;}
  #home{padding:28px 16px 80px;justify-content:flex-start;}
  .home-title{font-size:26px;margin-bottom:22px;}
  .home-ta{font-size:16.5px;}
}
@media(max-width:560px){
  .lgrid{grid-template-columns:30px minmax(0,1fr) 138px;}
  .lgrid>:nth-child(4){display:none;}
  .lgrid>span,.lgrid>select{padding:8px 6px;}
  .lgrid>.rnum{padding:8px 2px;}
  .rnom{font-size:15px;}
  .rchip{font-size:11px;padding:3px 7px;}
  .rprix{font-size:14px;}
  .rprix.off{font-size:11px;white-space:normal;line-height:1.2;text-align:right;}
  .lhead span{font-size:12px;letter-spacing:.2px;}
}

/* ── client (tenant) view: hide internal tooling ── */
body.tenant #an-btn,body.tenant #ag-btn,body.tenant #fabs,
body.tenant #b-ext,body.tenant #b-rel,body.tenant #b-mail,body.tenant #b-add,
body.guest #an-btn,body.guest #ag-btn,body.guest #fabs,
body.guest #b-ext,body.guest #b-rel,body.guest #b-mail,body.guest #b-add{display:none!important;}

/* ── visitor (guest) entry ── */
body.guest .side-lab{display:none!important;}
body.guest aside{display:none!important;}

/* guest top nav (Lovable-style: product front and center, pages on top) */
#gtop{display:none;position:fixed;top:0;left:0;right:0;z-index:140;padding:16px 24px;background:transparent;}
body.guest #gtop{display:block;}
/* bandeau dépoli seulement sur les vues qui scrollent — sur le hero, l'aurora passe à travers (aucun fond visible) */
body:has(#pricing.on) #gtop,body:has(#about.on) #gtop{background:rgba(245,247,250,.75);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 1px 0 rgba(11,26,60,.05);}
body.dark:has(#pricing.on) #gtop,body.dark:has(#about.on) #gtop{background:rgba(11,15,23,.72);box-shadow:0 1px 0 rgba(255,255,255,.06);}
/* 19/10 : dès qu'on défile (accueil compris), le header prend un fond — le texte ne passe plus dessous en transparence */
#gtop{transition:background .2s,box-shadow .2s;}
body.gscrolled #gtop{background:rgba(245,247,250,.86);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 1px 0 rgba(11,26,60,.07);}
body.dark.gscrolled #gtop{background:rgba(11,15,23,.84);box-shadow:0 1px 0 rgba(255,255,255,.06);}
.gtop-in{display:flex;align-items:center;gap:34px;width:100%;max-width:1304px;margin:0 auto;}
#gtop .glogo{height:29px;display:block;cursor:pointer;}
.gtop-links{display:flex;align-items:center;gap:2px;}
.gsol{position:relative;}
.gsol>button{border:none;background:none;font:inherit;font-weight:600;font-size:14.5px;color:var(--ink);padding:8px 13px;border-radius:999px;cursor:pointer;display:flex;align-items:center;gap:5px;}
.gsol>button:hover,.gsol.on>button{background:#f0f0f2;}
.gsol svg{width:13px;height:13px;}
.gsol-menu{display:none;position:absolute;top:46px;left:-10px;background:#fff;border:1px solid var(--border);border-radius:18px;box-shadow:0 24px 60px -18px rgba(11,26,60,.35);padding:22px 24px;width:640px;grid-template-columns:1fr 1fr;gap:4px 28px;z-index:160;}
.gsol.on .gsol-menu,.gsol:hover .gsol-menu{display:grid;}
.gsol:hover::after{content:'';position:absolute;top:100%;left:-10px;width:260px;height:14px;}
.gsol:hover>button{background:#f0f0f2;}
body.dark .gsol:hover>button{background:#1A2235;}
.gsol-menu .gh{grid-column:span 1;font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.7px;color:var(--g2);padding:4px 10px 8px;}
.gsol-menu a{display:flex;flex-direction:column;gap:2px;padding:9px 10px;border-radius:11px;text-decoration:none;color:var(--ink);}
.gsol-menu a:hover{background:#f4f5f8;}
.gsol-menu a b{font-size:14.5px;}
.gsol-menu a span{color:var(--g2);font-size:12.5px;line-height:1.4;font-weight:500;}
.gsol-menu .gall{grid-column:span 2;border-top:1px solid var(--border);margin-top:10px;padding-top:12px;flex-direction:row;align-items:center;gap:6px;font-weight:700;font-size:13.5px;color:#005FF6;}
body.dark .gsol>button:hover,body.dark .gsol.on>button{background:#1A2235;}
body.dark .gsol-menu{background:#111827;border-color:#2A3550;box-shadow:0 24px 60px -18px rgba(0,0,0,.7);}
body.dark .gsol-menu a:hover{background:#1A2235;}
.ghow-menu{grid-template-columns:1.15fr 1fr 1fr;width:780px;}
.gtop-links button,.gtop-links a{border:none;background:none;font:inherit;font-weight:600;font-size:14.5px;color:var(--ink);padding:8px 13px;border-radius:999px;cursor:pointer;text-decoration:none;}
.gtop-links button:hover,.gtop-links a:hover{background:#f0f0f2;}
.gtop-right{margin-left:auto;display:flex;align-items:center;gap:10px;}
.gtop-si,.gtop-go{-webkit-appearance:none !important;appearance:none !important;margin:0 !important;height:38px !important;min-height:38px !important;max-height:38px !important;padding:0 17px !important;box-sizing:border-box !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;border-radius:11px !important;font-family:inherit !important;font-size:14px !important;font-weight:500 !important;line-height:1 !important;letter-spacing:0 !important;cursor:pointer;white-space:nowrap;text-decoration:none !important;-webkit-user-select:none;user-select:none;}
.gtop-si{border:1px solid rgba(11,26,60,.20);background:#fff;color:var(--ink);height:41px !important;min-height:41px !important;max-height:41px !important;padding:0 18px !important;border-radius:12px !important;font-size:15px !important;}
.gtop-si:hover{border-color:rgba(11,26,60,.45);}
.gtop-go{border:1px solid #121418;background:#121418;color:#fff;}
.gtop-go:hover{filter:brightness(1.45);}
body.guest #about{padding-top:118px;background:#F5F7FA url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/><feComponentTransfer><feFuncA type='linear' slope='.045'/></feComponentTransfer></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");}
body.guest #fp{padding-top:88px;}
@media(max-width:760px){#gtop{background:#F5F7FA;box-shadow:0 1px 0 rgba(11,26,60,.06);}body.dark #gtop{background:#0B0F17;box-shadow:0 1px 0 rgba(255,255,255,.06);}.gtop-links{display:none;}#gtop{gap:10px;}.gtop-in{gap:10px !important;}.gtop-right{gap:6px;}.gtop-si,.gtop-go{padding:0 12px !important;font-size:14px !important;}}

/* ── "One agent" section right after the hero (Lovable-style 3 cards) ── */
.pf-sec{display:none;}
body.guest .pf-sec{display:block;width:100%;background:#fff;padding:96px 16px 30px;scroll-margin-top:40px;box-sizing:border-box;position:relative;z-index:1;}
.pf-in{max-width:1180px;margin:0 auto;}
.pf-h{font-family:'IBM Plex Sans','SG fb',Inter,sans-serif;font-size:44px;line-height:1.08;letter-spacing:-.035em;font-weight:650;color:var(--ink);margin:0 0 16px;}
.pf-sub{font-size:17px;line-height:1.55;color:#4A5568;max-width:470px;margin:0 0 46px;font-weight:450;}
.pf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.pf-card{background:#fff;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;
  box-shadow:0 0 0 1px rgba(11,26,60,.07),0 1px 2px rgba(11,26,60,.04),0 4px 8px rgba(11,26,60,.03),0 12px 24px rgba(11,26,60,.03);}
.pf-vis{height:290px;position:relative;overflow:hidden;}
.pf-tx{padding:6px 24px 26px;}
.pf-tx h3{font-size:16.5px;font-weight:650;color:var(--ink);margin:0 0 10px;letter-spacing:-.01em;}
.pf-tx p{font-size:14.5px;line-height:1.6;color:#4A5568;margin:0;font-weight:450;}
/* card 1 — composer with glow */
.pf-v1::before{content:'';position:absolute;left:8%;top:14%;width:84%;height:66%;border-radius:40px;filter:blur(38px);
  background:radial-gradient(60% 70% at 25% 40%,rgba(61,134,248,.55),transparent 70%),radial-gradient(60% 70% at 85% 30%,rgba(92,151,246,.35),transparent 70%);opacity:.85;}
.pf-comp{position:absolute;left:48px;top:72px;right:-30px;height:168px;background:#fff;border-radius:22px;padding:22px 24px;box-sizing:border-box;
  box-shadow:0 0 0 1px rgba(61,134,248,.18),0 20px 40px -12px rgba(0,95,246,.35);font-size:17px;color:#9AA5B8;}
.pf-comp .tw{color:var(--ink);border-right:2px solid var(--ink);white-space:nowrap;overflow:hidden;display:inline-block;max-width:0;vertical-align:bottom;animation:pfType 7s steps(46) infinite;}
@keyframes pfType{0%{max-width:0}45%,80%{max-width:30em}92%,100%{max-width:0}}
.pf-comp .bar{position:absolute;left:22px;right:56px;bottom:18px;display:flex;gap:8px;}
.pf-comp .bar i{width:30px;height:30px;border-radius:50%;border:1px solid #E2E8F1;display:block;}
/* card 2 — dashboard snippet */
.pf-v2{background:linear-gradient(180deg,#F7F9FC,#fff);}
.pf-win{position:absolute;left:28px;top:40px;right:28px;bottom:-10px;background:#fff;border-radius:14px 14px 0 0;box-shadow:0 0 0 1px rgba(11,26,60,.08),0 10px 30px -10px rgba(11,26,60,.18);padding:12px 14px;box-sizing:border-box;}
.pf-tabs{display:flex;gap:6px;margin-bottom:12px;align-items:center;}
.pf-tabs span{font-size:12px;font-weight:600;color:#6B778C;padding:5px 10px;border-radius:8px;}
.pf-tabs span.on{background:#EAF2FE;color:#004FD1;}
.pf-row{display:grid;grid-template-columns:minmax(0,1fr) 96px 46px;align-items:center;gap:8px;padding:9px 6px;border-bottom:1px solid #EEF1F6;font-size:13px;color:var(--ink);font-weight:550;}
.pf-row em{font-style:normal;font-size:11px;font-weight:650;padding:3px 7px;border-radius:6px;text-align:center;}
.pf-row .c{background:#E6F0FF;color:#004FD1;} .pf-row .r{background:#DCF2E4;color:#13703F;} .pf-row .p{background:#C8EDD8;color:#0A5C33;}
.pf-row b{text-align:right;font-weight:700;}
.pf-row>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pf-row.best{outline:1.5px dashed #3D86F8;outline-offset:2px;border-radius:6px;position:relative;}
.pf-row.best::after{content:'best';position:absolute;right:-6px;top:-11px;background:#005FF6;color:#fff;font-size:10px;font-weight:700;padding:2px 7px;border-radius:999px;}
.pf-cur{position:absolute;width:18px;height:18px;left:62%;top:58%;}
.pf-fade{position:absolute;left:0;right:0;bottom:0;height:70px;background:linear-gradient(180deg,rgba(255,255,255,0),#fff);}
/* card 3 — capability list */
.pf-v3::before{content:'';position:absolute;left:-40px;top:0;bottom:0;width:120px;background:radial-gradient(60% 50% at 30% 50%,rgba(14,165,233,.35),transparent 75%);filter:blur(18px);}
.pf-side{position:absolute;left:52px;top:0;bottom:0;width:230px;background:#fff;box-shadow:-1px 0 0 rgba(11,26,60,.06);padding:30px 18px;box-sizing:border-box;}
.pf-side div{display:flex;align-items:center;gap:11px;font-size:14px;color:#2D3748;padding:7px 10px;border-radius:9px;margin-bottom:2px;font-weight:500;}
.pf-side div svg{width:17px;height:17px;flex:none;}
.pf-side div.on{background:#EEF2F7;color:var(--ink);font-weight:600;}
.pf-side div:nth-child(n+5){opacity:.55}.pf-side div:nth-child(n+6){opacity:.3}.pf-side div:nth-child(n+7){opacity:.15}
.pf-pane{position:absolute;left:300px;top:40px;right:-10px;bottom:-10px;border-radius:12px 0 0 0;background:linear-gradient(135deg,#F3F6FA,#fff);box-shadow:0 0 0 1px rgba(11,26,60,.05);}

/* ── motion inside the 3 cards (JS timelines, paused off-screen) ── */
.pf-comp .tw{color:var(--ink);animation:none;max-width:none;border:none;white-space:normal;display:inline;overflow:visible;}
.pf-comp .caret{display:inline-block;width:2px;height:20px;background:#005FF6;vertical-align:-4px;margin-left:1px;animation:pfBlink 1s steps(1) infinite;}
@keyframes pfBlink{50%{opacity:0}}
.pf-comp{transition:box-shadow .4s, transform .4s;}
.pf-v1.sent .pf-comp{transform:translateY(-4px);box-shadow:0 0 0 1px rgba(61,134,248,.35),0 26px 50px -12px rgba(0,95,246,.45);}
.pf-v1::before{animation:pfGlow 6s ease-in-out infinite alternate;}
@keyframes pfGlow{0%{transform:translate(0,0) scale(1);opacity:.75}100%{transform:translate(18px,-8px) scale(1.12);opacity:1}}
.pf-send{position:absolute;right:18px;bottom:16px;width:32px;height:32px;border-radius:50%;border:none;background:#E2E8F1;color:#fff;display:flex;align-items:center;justify-content:center;transition:background .3s, transform .3s;pointer-events:none;}
.pf-send svg{width:16px;height:16px;}
.pf-v1.ready .pf-send{background:#005FF6;}
.pf-v1.sent .pf-send{animation:pfPress .5s;}
@keyframes pfPress{40%{transform:scale(.82)}100%{transform:scale(1)}}
.pf-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px;min-height:26px;max-width:calc(100% - 40px);}
.pf-chips span{font-size:11.5px;font-weight:600;color:#004FD1;background:#EAF2FE;border:1px solid #CFE2FD;padding:4px 9px;border-radius:7px;animation:pfPop .35s cubic-bezier(.2,1.4,.4,1) both;}
@keyframes pfPop{from{opacity:0;transform:translateY(6px) scale(.85)}to{opacity:1;transform:none}}
.pf-scan{position:absolute;left:24px;bottom:22px;display:flex;align-items:center;gap:8px;font-size:12.5px;color:#4A5568;font-weight:550;opacity:0;transform:translateY(4px);transition:.35s;}
.pf-scan b{color:var(--ink);font-variant-numeric:tabular-nums;}
.pf-scan i{width:12px;height:12px;border-radius:50%;border:2px solid #CFE2FD;border-top-color:#005FF6;animation:pfSpin .8s linear infinite;}
@keyframes pfSpin{to{transform:rotate(360deg)}}
.pf-v1.scan .pf-scan{opacity:1;transform:none;}
.pf-v1.scan .bar{opacity:0;}
.pf-v1.out .pf-comp{opacity:0;transform:translateY(8px);transition:opacity .5s, transform .5s;}
/* card 2 */
.pf-live{margin-left:auto;display:flex;align-items:center;gap:5px;color:#13703F !important;font-size:11px !important;}
.pf-live i{width:6px;height:6px;border-radius:50%;background:#22C55E;animation:pfPing 1.4s infinite;}
@keyframes pfPing{0%{box-shadow:0 0 0 0 rgba(34,197,94,.6)}100%{box-shadow:0 0 0 7px rgba(34,197,94,0)}}
.pf-row{transition:background .4s, transform .5s cubic-bezier(.2,.8,.2,1);}
.pf-row em{transition:background .3s,color .3s;}
.pf-row em.pop{animation:pfPop .35s cubic-bezier(.2,1.4,.4,1);}
.pf-row .t{background:#F1F4F8;color:#8A96A8;}
.pf-row b.in{animation:pfPop .4s cubic-bezier(.2,1.4,.4,1);color:#0A5C33;}
.pf-row.best{outline:none;}
.pf-row.best::after{content:none;}
.pf-best{position:absolute;left:8px;right:8px;height:38px;border:1.5px dashed #3D86F8;border-radius:8px;pointer-events:none;opacity:0;transition:top .6s cubic-bezier(.2,.8,.2,1),opacity .3s;}
.pf-best::after{content:'best';position:absolute;right:-6px;top:-10px;background:#005FF6;color:#fff;font-size:10px;font-weight:700;padding:2px 7px;border-radius:999px;}
.pf-best.on{opacity:1;}
.pf-cur{transition:left .9s cubic-bezier(.3,.7,.2,1),top .9s cubic-bezier(.3,.7,.2,1),transform .15s;z-index:3;}
.pf-cur.click{transform:scale(.8);}
.pf-row.sel{background:#F3F8FF;}
/* card 3 */
.pf-side{padding-top:26px;}
.pf-side div{position:relative;z-index:1;transition:color .3s,opacity .4s;opacity:1 !important;}
.pf-side div svg{transition:color .3s,transform .3s;}
.pf-side div.on{background:none;color:#004FD1;}
.pf-side div.on svg{transform:scale(1.12);}
.pf-side div:not(.on){color:#6B778C;}
.pf-hl{position:absolute;left:18px;width:192px;height:35px;border-radius:9px;background:#EAF2FE;box-shadow:inset 0 0 0 1px #CFE2FD;transition:top .5s cubic-bezier(.2,.8,.2,1);z-index:0;}
.pf-v3 .pf-side::after{content:'';position:absolute;left:0;right:0;bottom:0;height:90px;background:linear-gradient(180deg,rgba(255,255,255,0),#fff);}
.pf-side{width:220px;}
.pf-pane{left:272px;display:flex;align-items:flex-start;padding:26px 14px;box-sizing:border-box;}
.pf-stat{width:150px;transition:opacity .25s, transform .35s;}
.pf-stat.sw{opacity:0;transform:translateY(8px);}
.pf-stat b{display:block;font-family:'IBM Plex Sans','SG fb',Inter,sans-serif;font-size:30px;line-height:1;color:var(--ink);letter-spacing:-.02em;font-variant-numeric:tabular-nums;}
.pf-stat span{display:block;font-size:12px;color:#4A5568;margin:7px 0 12px;line-height:1.35;font-weight:550;}
.pf-stat i{display:block;height:6px;border-radius:9px;background:#E8EEF6;overflow:hidden;}
.pf-stat i em{display:block;height:100%;width:0;border-radius:9px;background:linear-gradient(90deg,#3D86F8,#6399F1);transition:width 1.4s cubic-bezier(.2,.8,.2,1);}
body.dark .pf-hl{background:#1A2740;box-shadow:none;}
body.dark .pf-v3 .pf-side::after{background:linear-gradient(180deg,rgba(18,26,43,0),#121A2B);}
@media(prefers-reduced-motion:reduce){.pf-v1::before,.pf-live i{animation:none;}}
@media(max-width:1000px){.pf-grid{grid-template-columns:1fr;max-width:560px;}.pf-h{font-size:34px;}}
/* ── sources wall after the video (Lovable "trusted by" layout, honest content) ── */
.tr-sec{display:none;}
body.guest .tr-sec{display:block;width:100%;background:#FAFBFC;border-top:1px solid #EEF1F6;border-bottom:1px solid #EEF1F6;position:relative;z-index:1;}
.tr-in{max-width:1304px;margin:0 auto;display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:center;}
.tr-grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid #EEF1F6;}
.tr-cell{height:170px;min-width:0;display:flex;align-items:center;justify-content:center;border-right:1px solid #EEF1F6;}
.tr-cell:nth-of-type(-n+3){border-bottom:1px solid #EEF1F6;}
.tr-wm{font-size:16px;font-weight:650;letter-spacing:-.01em;color:#1F2A3D;opacity:.85;transition:opacity .3s,transform .3s;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;padding:0 10px;}
.tr-wm svg{width:30px;height:30px;color:#005FF6;padding:11px;border-radius:12px;background:#EEF4FD;box-sizing:content-box;}
.tr-cell:hover .tr-wm{opacity:1;transform:translateY(-2px);}
.tr-tx{padding:40px 48px;}
.tr-tx h3{font-family:'IBM Plex Sans','SG fb',Inter,sans-serif;font-size:27px;line-height:1.15;letter-spacing:-.03em;font-weight:650;color:var(--ink);margin:0 0 16px;}
.tr-tx p{font-size:15.5px;line-height:1.65;color:#4A5568;margin:0 0 24px;font-weight:450;}
.tr-tx button{font:inherit;font-size:13.5px;font-weight:600;padding:10px 16px;border-radius:9px;border:1px solid rgba(11,26,60,.14);background:#fff;color:var(--ink);cursor:pointer;box-shadow:0 1px 2px rgba(11,26,60,.06);}
.tr-tx button:hover{border-color:rgba(11,26,60,.35);}
@media(max-width:1000px){.tr-in{grid-template-columns:minmax(0,1fr);}.tr-tx{padding:36px 22px 30px;order:-1;}.tr-cell{height:130px;}.tr-wm{font-size:14px;}}
@media(max-width:560px){.tr-grid{grid-template-columns:repeat(2,1fr);}.tr-cell:nth-of-type(-n+3){border-bottom:none;}.tr-cell:nth-of-type(-n+4){border-bottom:1px solid #EEF1F6;}}

/* ── sources wall: motion — the dove visits each source, it searches, then checks it ── */
.tr-grid{position:relative;}
.tr-cell{position:relative;overflow:hidden;flex-direction:column;transition:background .5s;}
.tr-cell::before{content:'';position:absolute;inset:0;opacity:0;transition:opacity .6s;
  background:radial-gradient(60% 70% at 50% 40%,rgba(61,134,248,.16),transparent 70%),radial-gradient(40% 50% at 80% 90%,rgba(92,151,246,.10),transparent 70%);}
.tr-cell.on::before{opacity:1;}
.tr-wm{position:relative;z-index:1;}
.tr-wm svg{transition:transform .5s cubic-bezier(.2,1.4,.4,1),box-shadow .5s,background .5s;}
.tr-cell.on .tr-wm svg{transform:translateY(-3px) scale(1.08);background:#fff;box-shadow:0 0 0 1px #CFE2FD,0 10px 24px -8px rgba(0,95,246,.45);animation:trRing 1.4s ease-out infinite;}
@keyframes trRing{0%{box-shadow:0 0 0 1px #CFE2FD,0 0 0 0 rgba(61,134,248,.35),0 10px 24px -8px rgba(0,95,246,.45)}100%{box-shadow:0 0 0 1px #CFE2FD,0 0 0 14px rgba(61,134,248,0),0 10px 24px -8px rgba(0,95,246,.45)}}
.tr-st{position:relative;z-index:1;height:20px;margin-top:9px;font-size:11.5px;font-weight:650;display:flex;align-items:center;justify-content:center;gap:6px;opacity:0;transform:translateY(4px);transition:opacity .3s,transform .3s;color:#4A5568;}
.tr-cell.on .tr-st,.tr-cell.done .tr-st{opacity:1;transform:none;}
.tr-st i{width:10px;height:10px;border-radius:50%;border:2px solid #CFE2FD;border-top-color:#005FF6;animation:pfSpin .8s linear infinite;}
.tr-cell.done .tr-st{color:#13703F;}
.tr-cell.done .tr-st i{border:none;width:auto;height:auto;animation:none;}
.tr-cell.done .tr-st i::before{content:'✓';font-style:normal;}
.tr-dove{position:absolute;width:30px;height:30px;left:0;top:0;z-index:3;pointer-events:none;opacity:0;
  transition:transform 1s cubic-bezier(.45,.05,.2,1),opacity .4s;filter:drop-shadow(0 6px 10px rgba(0,95,246,.35));}
.tr-dove.on{opacity:1;}
.tr-dove img{width:100%;height:100%;animation:trBob 1.2s ease-in-out infinite alternate;}
@keyframes trBob{from{transform:translateY(-2px) rotate(-6deg)}to{transform:translateY(3px) rotate(4deg)}}
/* reveal on scroll */
.tr-sec .tr-cell,.tr-tx>*{opacity:0;transform:translateY(14px);transition:opacity .7s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1),background .5s;}
.tr-sec.seen .tr-cell,.tr-sec.seen .tr-tx>*{opacity:1;transform:none;}
.tr-sec.seen .tr-cell:nth-of-type(2){transition-delay:.08s}.tr-sec.seen .tr-cell:nth-of-type(3){transition-delay:.16s}
.tr-sec.seen .tr-cell:nth-of-type(4){transition-delay:.24s}.tr-sec.seen .tr-cell:nth-of-type(5){transition-delay:.32s}.tr-sec.seen .tr-cell:nth-of-type(6){transition-delay:.4s}
.tr-sec.seen .tr-tx>:nth-child(2){transition-delay:.12s}.tr-sec.seen .tr-tx>:nth-child(3){transition-delay:.24s}
.tr-tx h3 em{font-style:normal;background:linear-gradient(90deg,#005FF6,#6399F1,#005FF6);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:trShine 5s linear infinite;}
@keyframes trShine{to{background-position:-200% 0}}
body.dark .tr-cell.on .tr-wm svg{background:#121A2B;}
@media(prefers-reduced-motion:reduce){.tr-sec .tr-cell,.tr-tx>*{opacity:1;transform:none;}.tr-dove{display:none;}.tr-tx h3 em{animation:none;}}

/* ── mission stories carousel (Lovable "proof" layout) — illustrative examples ── */
.st-sec{display:none;}
body.guest .st-sec{display:block;width:100%;background:#fff;padding:96px 0 90px;position:relative;z-index:1;overflow:hidden;}
.st-head{text-align:center;max-width:620px;margin:0 auto 54px;padding:0 20px;}
.st-head h2{font-family:'IBM Plex Sans','SG fb',Inter,sans-serif;font-size:42px;letter-spacing:-.035em;font-weight:650;color:var(--ink);margin:0 0 14px;line-height:1.08;}
.st-head p{font-size:16.5px;line-height:1.6;color:#4A5568;margin:0;font-weight:450;}
.st-stage{position:relative;height:540px;}
.st-card{position:absolute;top:50%;left:50%;width:min(760px,88vw);height:500px;margin-left:calc(min(760px,88vw)/-2);margin-top:-250px;box-sizing:border-box;
  background:#F5F7FA;border-radius:22px;padding:38px 40px 32px;display:grid;grid-template-columns:1fr 200px;grid-template-rows:auto 1fr auto;column-gap:40px;
  transition:transform .8s cubic-bezier(.2,.8,.2,1),opacity .6s,filter .6s,background .6s;cursor:pointer;will-change:transform;}
.st-card.c0{background:#F3F6FA;box-shadow:0 0 0 1px rgba(11,26,60,.05),0 30px 60px -30px rgba(11,26,60,.25);cursor:default;z-index:3;}
.st-card:not(.c0){opacity:.9;z-index:1;background:#EEF2F7;}
.st-card:not(.c0)>*{opacity:0;transition:opacity .3s;}
.st-card .st-ghost{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .5s;pointer-events:none;}
.st-card:not(.c0) .st-ghost{opacity:1;}
.st-ghost svg{width:72px;height:72px;color:#1F2A3D;}
.st-card.c0>*:not(.st-ghost){opacity:1;transition:opacity .5s .25s;}
.st-top{grid-column:1/3;display:flex;align-items:center;gap:12px;margin-bottom:34px;}
.st-top .ic{width:44px;height:44px;border-radius:12px;background:#fff;box-shadow:0 0 0 1px rgba(11,26,60,.07);display:flex;align-items:center;justify-content:center;color:#005FF6;}
.st-top .ic svg{width:22px;height:22px;}
.st-top b{display:block;font-size:17px;color:var(--ink);font-weight:650;letter-spacing:-.01em;}
.st-top span{display:block;font-size:13px;color:#6B778C;font-weight:500;margin-top:2px;}
.st-tag{margin-left:auto;font-style:normal;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#004FD1;background:#EAF2FE;padding:5px 9px;border-radius:7px;}
.st-body{display:flex;flex-direction:column;justify-content:center;}
.st-body p{font-size:14.5px;line-height:1.6;color:#2D3748;margin:0 0 26px;max-width:400px;}
.st-q{position:relative;padding-left:20px;font-size:23px;line-height:1.35;letter-spacing:-.02em;color:var(--ink);font-weight:550;max-width:430px;}
.st-q::before{content:'';position:absolute;left:0;top:4px;bottom:4px;width:2px;border-radius:2px;background:linear-gradient(180deg,#F59E0B,#EC4899,#6399F1,#005FF6);}
.st-q span{display:inline-block;opacity:0;transform:translateY(8px);filter:blur(3px);transition:opacity .45s,transform .45s,filter .45s;}
.st-card.c0.play .st-q span{opacity:1;transform:none;filter:none;}
.st-stats{display:flex;flex-direction:column;justify-content:center;gap:24px;}
.st-stats div b{display:block;font-size:34px;font-weight:500;letter-spacing:-.03em;color:var(--ink);line-height:1;font-variant-numeric:tabular-nums;}
.st-stats div span{display:block;font-size:13px;line-height:1.45;color:#4A5568;margin-top:6px;}
.st-foot{grid-column:1/3;display:flex;align-items:center;gap:12px;margin-top:22px;}
.st-foot img{width:40px;height:40px;border-radius:11px;background:#fff;padding:6px;box-sizing:border-box;box-shadow:0 0 0 1px rgba(11,26,60,.07);}
.st-foot b{display:block;font-size:13.5px;color:var(--ink);font-weight:600;}
.st-foot span{display:block;font-size:12px;color:#6B778C;}
.st-foot button{margin-left:auto;font:inherit;font-size:13px;font-weight:600;padding:9px 14px;border-radius:9px;border:1px solid rgba(11,26,60,.12);background:#fff;color:var(--ink);cursor:pointer;display:flex;align-items:center;gap:6px;transition:gap .2s;}
.st-foot button:hover{gap:10px;}
.st-nav{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:34px;}
.st-nav button{width:44px;height:44px;border-radius:11px;border:1px solid rgba(11,26,60,.12);background:#fff;color:var(--ink);cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;}
.st-nav button:hover{border-color:rgba(11,26,60,.35);}
.st-dots{display:flex;gap:6px;margin:0 10px;}
.st-dots i{width:22px;height:4px;border-radius:4px;background:#E2E8F1;overflow:hidden;position:relative;cursor:pointer;}
.st-dots i.on::after{content:'';position:absolute;inset:0;background:#005FF6;transform-origin:left;animation:stProg var(--st-ms,7000ms) linear forwards;}
.st-dots i.done{background:#9CC3F7;}
.st-paused .st-dots i.on::after{animation-play-state:paused;}
@keyframes stProg{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.st-note{text-align:center;font-size:12px;color:#8A96A8;margin-top:16px;}
@media(max-width:900px){.st-stage{height:auto;padding:0 16px;}.st-card{position:relative;top:auto;left:auto;margin:0 auto;width:100%;max-width:620px;height:auto;transform:none !important;grid-template-columns:minmax(0,1fr);padding:26px 22px;}.st-card:not(.c0){display:none;}.st-top,.st-foot{grid-column:auto;}.st-top{margin-bottom:22px;}.st-stats{flex-direction:row;gap:14px;margin-top:22px;}.st-stats div{flex:1;min-width:0;}.st-stats div b{font-size:24px;}.st-q{font-size:19px;}.st-head h2{font-size:32px;}.st-tag{display:none;}.st-foot{flex-wrap:wrap;}.st-foot button{margin-left:0;width:100%;justify-content:center;margin-top:10px;}}
body.dark .st-sec{background:#0B0F17;}
body.dark .st-card{background:#121A2B;}
body.dark .st-card.c0{background:#141D30;}
body.dark .st-body p,body.dark .st-stats div span,body.dark .st-head p{color:#97A3BB;}
body.dark .st-ghost svg{color:#E8ECF5;}
body.dark .st-top .ic,body.dark .st-foot img,body.dark .st-foot button,body.dark .st-nav button{background:#18223A;color:var(--ink);}
@media(prefers-reduced-motion:reduce){.st-card{transition:none;}.st-q span{opacity:1 !important;transform:none !important;filter:none !important;}}

/* ── final CTA before the footer (Lovable "ready to…" composer) ── */
.fc-sec{display:none;}
body.guest .fc-sec{display:block;position:relative;z-index:1;width:100%;padding:150px 16px 150px;box-sizing:border-box;text-align:center;overflow:hidden;background:#fff;}
.fc-sec::before{content:'';position:absolute;left:-10%;right:-10%;bottom:-40%;height:120%;pointer-events:none;z-index:-1;
  background:radial-gradient(40% 50% at 20% 85%,rgba(61,134,248,.22),transparent 70%),radial-gradient(40% 55% at 80% 90%,rgba(92,151,246,.20),transparent 70%),radial-gradient(35% 40% at 50% 100%,rgba(14,165,233,.18),transparent 70%);
  animation:fcAur 12s ease-in-out infinite alternate;}
@keyframes fcAur{to{transform:translateX(4%) scale(1.06)}}
.fc-k{font-size:16px;color:#4A5568;font-weight:500;margin-bottom:10px;}
.fc-h{font-family:'IBM Plex Sans','SG fb',Inter,sans-serif;font-size:42px;letter-spacing:-.035em;font-weight:650;color:var(--ink);margin:0 0 34px;line-height:1.1;}
.fc-box{max-width:600px;margin:0 auto;background:#fff;border-radius:22px;padding:18px 18px 12px;text-align:left;
  box-shadow:0 0 0 1px rgba(11,26,60,.08),0 18px 40px -16px rgba(11,26,60,.22);transition:box-shadow .3s,transform .3s;}
.fc-box:focus-within{box-shadow:0 0 0 1.5px #3D86F8,0 22px 50px -16px rgba(0,95,246,.35);transform:translateY(-2px);}
.fc-ta{width:100%;border:none;outline:none;resize:none;font:inherit;font-size:16px;color:var(--ink);background:transparent;min-height:28px;line-height:1.5;padding:2px 4px;box-sizing:border-box;}
.fc-ta::placeholder{color:#8A96A8;}
.fc-row{display:flex;align-items:center;gap:8px;margin-top:10px;}
.fc-row .pl{width:32px;height:32px;border-radius:50%;border:1px solid #E2E8F1;background:#fff;color:#4A5568;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:18px;line-height:1;}
.fc-row .mode{margin-left:auto;font-size:13.5px;color:#4A5568;font-weight:500;}
.fc-go{width:34px;height:34px;border-radius:50%;border:none;background:#E2E8F1;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .25s,transform .2s;}
.fc-go svg{width:16px;height:16px;}
.fc-box.has .fc-go{background:#121418;}
.fc-go:active{transform:scale(.9);}
@media(max-width:700px){body.guest .fc-sec{padding:96px 16px;}.fc-h{font-size:30px;}}
@media(prefers-reduced-motion:reduce){.fc-sec::before{animation:none;}}
body.dark .fc-sec{background:#0B0F17;}
body.dark .fc-box{background:#121A2B;}
body.dark .fc-row .pl{background:#18223A;border-color:#2A3550;color:#C9D4EA;}
body.dark .tr-sec{background:#0E1422;border-color:#1C2639;}
body.dark .tr-grid,body.dark .tr-cell{border-color:#1C2639 !important;}
body.dark .tr-wm{color:#E8ECF5;}
body.dark .tr-wm svg{background:#1A2740;}
body.dark .tr-tx p{color:#97A3BB;}
body.dark .tr-tx button{background:#121A2B;color:var(--ink);border-color:#2A3550;}

@media(prefers-reduced-motion:reduce){.pf-comp .tw{animation:none;max-width:none;border:none;}}
body.dark .pf-sec{background:#0B0F17;}
body.dark .pf-card,body.dark .pf-comp,body.dark .pf-win,body.dark .pf-side{background:#121A2B;}
body.dark .pf-sub,body.dark .pf-tx p{color:#97A3BB;}
body.dark .pf-v2{background:#0E1422;}

/* teaser video — its own block AFTER the hero (white section) */
.hero-sec{width:100%;display:flex;justify-content:center;position:relative;z-index:1;}
body.guest .hero-sec{min-height:calc(100vh - 58px);align-items:center;padding:0 16px;box-sizing:border-box;position:relative;z-index:1;}
.video-sec{display:none;}
body.guest .video-sec{display:block;width:100%;background:#fff;padding:92px 16px 100px;box-sizing:border-box;position:relative;z-index:1;}
.home-video{display:none;width:100%;max-width:1012px;margin:0 auto;box-sizing:border-box;}
body.guest .home-video{display:block;position:relative;}
.home-video video{width:100%;display:block;border-radius:20px;box-shadow:0 34px 80px -30px rgba(10,45,120,.35);background:#000;}
body.guest #home{justify-content:flex-start;padding-top:58px;overflow:hidden;}

/* guest hero background — soft animated aurora in HireDov blues */
#home::before{
  content:'';position:absolute;top:-12%;left:-12%;right:-12%;height:125vh;pointer-events:none;z-index:0;
  background:
    linear-gradient(180deg, rgba(255,255,255,0) 74%, #ffffff 94%),
    radial-gradient(42% 46% at 18% 24%, rgba(61,134,248,.26), transparent 70%),
    radial-gradient(46% 50% at 84% 18%, rgba(0,144,240,.20), transparent 70%),
    radial-gradient(54% 58% at 50% 72%, rgba(99,153,241,.18), transparent 72%),
    radial-gradient(42% 46% at 80% 92%, rgba(14,165,233,.22), transparent 70%),
    radial-gradient(38% 42% at 10% 86%, rgba(0,95,246,.18), transparent 70%),
    linear-gradient(180deg,#ffffff 0%,#F5F9FF 24%,#E9F2FF 58%,#EDF4FF 100%);
  filter:blur(56px) saturate(1.0);
  animation:heroAur 19s ease-in-out infinite alternate;
}
@keyframes heroAur{
  0%{transform:translate(0,0) scale(1);}
  50%{transform:translate(-2.2%,1.6%) scale(1.06);}
  100%{transform:translate(2.2%,-1.6%) scale(1.03);}
}
#home .nc-drop,#home .home-inner{position:relative;z-index:1;}
body.guest .home-inner{max-width:1063px;box-sizing:border-box;}
body.guest .home-bar{border-color:rgba(255,255,255,.65);box-shadow:0 18px 50px -12px rgba(10,45,120,.35);}
body.guest .home-bar:focus-within{border-color:#0B1A3C;}
.vmute{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;gap:12px;border:none;cursor:pointer;background:rgba(11,26,60,.74);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;border-radius:999px;padding:17px 28px;font:inherit;font-weight:800;font-size:17px;letter-spacing:.2px;box-shadow:0 20px 55px -12px rgba(0,0,0,.55);transition:transform .22s,background .15s,box-shadow .22s;animation:vmbreathe 2.6s ease-in-out infinite;}
.vmute:hover{transform:translate(-50%,-50%) scale(1.06);background:rgba(11,26,60,.92);}
.vmute svg{width:27px;height:27px;flex:none;}
.vmute .w1,.vmute .w2{opacity:0;animation:vmw 1.5s infinite;}
.vmute .w2{animation-delay:.3s;}
@keyframes vmw{0%{opacity:0;}30%{opacity:1;}75%{opacity:1;}100%{opacity:0;}}
@keyframes vmbreathe{0%,100%{box-shadow:0 20px 55px -12px rgba(0,0,0,.55),0 0 0 0 rgba(255,255,255,.28);}50%{box-shadow:0 20px 55px -12px rgba(0,0,0,.55),0 0 0 14px rgba(255,255,255,0);}}
/* après le clic : petit toggle discret en bas à droite */
.home-video.tapped .vmute{left:auto;top:auto;right:18px;bottom:18px;transform:none;width:48px;height:48px;padding:0;justify-content:center;gap:0;animation:none;}
.home-video.tapped .vmute:hover{transform:scale(1.08);}
.home-video.tapped .vm-txt{display:none;}
.home-video.tapped .vmute svg{width:22px;height:22px;}
.home-video.sound .w1,.home-video.sound .w2{animation:none;opacity:1;}
.home-video.tapped:not(.sound) .w1,.home-video.tapped:not(.sound) .w2{animation:none;opacity:.25;}
body.guest #home-note{color:#3c4453;}

/* ═══════════ DARK MODE (body.dark) ═══════════ */
body.dark{--ink:#E8ECF5;--g2:#97A3BB;--bg:#0B0F17;--border:#232C40;--shadow:0 1px 8px rgba(0,0,0,.45);}
body.dark aside{background:#0E1320;border-right-color:var(--border);}
body.dark #nc-btn:hover,body.dark #an-btn:hover,body.dark #ag-btn:hover,body.dark #rd-btn:hover,body.dark .camp:hover,body.dark .acct:hover{background:#1A2235;}
body.dark #an-btn.on,body.dark #ag-btn.on,body.dark #rd-btn.on,body.dark .camp.on{background:#1F2941;}
body.dark .side-brand img,body.dark .glogo,body.dark .lg-logo,body.dark .rail-logo{content:url('/assets/logo_dark.png');}
body.dark .main,body.dark #home,body.dark .video-sec,body.dark #login,body.dark #fp{background:#0B0F17;}
body.dark #about,body.dark #pricing{background:
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/><feComponentTransfer><feFuncA type='linear' slope='.045'/></feComponentTransfer></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>"),
    radial-gradient(50% 40% at 20% 0%, rgba(61,134,248,.13), transparent 70%),
    radial-gradient(55% 45% at 85% 8%, rgba(0,144,240,.10), transparent 70%),
    radial-gradient(60% 50% at 50% 100%, rgba(99,153,241,.12), transparent 72%),
    linear-gradient(180deg,#0C1222 0%,#0B0F17 55%,#0C1120 100%);}
body.dark .list{background:#0E1422;box-shadow:0 4px 18px rgba(0,0,0,.4);}
body.dark .searchrow{background:#0E1422;border-bottom-color:var(--border);}
body.dark #q,body.dark .hd-btn{background:#131A2A;border-color:#2A3550;color:var(--ink);}
body.dark .lhead{background:#101726;border-bottom-color:var(--border);}
body.dark .lgrid>span,body.dark .lgrid>select{border-right-color:#1C2639;}
body.dark .lgrid>:last-child{border-right:none;}
body.dark .lgrid>.rnum{background:#10192A;border-right-color:#243049;}
body.dark .row{border-bottom-color:#1A2235;}
body.dark .row:hover{background:#141C2E;}
body.dark .row.z{background:#0F1524;}
body.dark .row.sel{outline-color:#4D9FFF;background:rgba(0,95,246,.12);}
body.dark .det{background:#0E1422;border-bottom-color:#1A2235;}
body.dark .det p{color:#D6DEEF;}
body.dark .det a{color:#4D9FFF;}
body.dark .det i{color:#7E8BA5;}
body.dark .rchip{background:#1C2435;color:#B9C4DA;}
body.dark .c-contacte{background:rgba(0,95,246,.2);color:#7AB5FF;}
body.dark .c-repondu{background:rgba(21,147,63,.22);color:#5ED08A;}
body.dark .c-prix_recu{background:rgba(21,147,63,.3);color:#7BE3A4;}
body.dark .c-ecarte{background:rgba(195,60,16,.22);color:#F09A77;}
body.dark .c-sans_email{background:rgba(37,107,220,.22);color:#9CBEF5;}
body.dark .rprix{color:#7BE3A4;}
body.dark .rprix.off{color:#5A6780;}
body.dark .rico,body.dark .dico,body.dark .aplus{background:#131A2A;border-color:#2A3550;color:var(--ink);}
body.dark .cmenu,body.dark .acct-menu,body.dark .home-menu{background:#131A2A;border-color:#2A3550;box-shadow:0 12px 32px rgba(0,0,0,.5);}
body.dark .cmenu button:hover,body.dark .acct-menu button:hover,body.dark .acct-menu a:hover,body.dark .home-menu button:hover{background:#1C2435;}
body.dark .up-pill{background:#131A2A;border-color:#2A3550;color:var(--ink);}
/* hero guest */
body.dark #home::before{background:
  linear-gradient(180deg, rgba(11,15,23,0) 74%, #0B0F17 94%),
  radial-gradient(42% 46% at 18% 24%, rgba(0,95,246,.3), transparent 70%),
  radial-gradient(46% 50% at 84% 18%, rgba(0,144,240,.22), transparent 70%),
  radial-gradient(54% 58% at 50% 72%, rgba(99,153,241,.22), transparent 72%),
  radial-gradient(42% 46% at 80% 92%, rgba(14,165,233,.22), transparent 70%),
  radial-gradient(38% 42% at 10% 86%, rgba(0,95,246,.2), transparent 70%),
  linear-gradient(180deg,#0B0F17 0%,#0D1322 35%,#0E1628 70%,#0C1120 100%);}
body.dark .home-bar{background:#121928;border-color:#2A3550;box-shadow:0 18px 50px -12px rgba(0,0,0,.6);}
body.dark .home-bar:focus-within{border-color:#4D9FFF;}
body.dark .home-ta{color:var(--ink);}
body.dark .home-ta::placeholder{color:#5F6C85;}
body.dark .home-plus{background:#1A2235;border-color:#2A3550;color:var(--ink);}
body.dark .home-send{background:transparent;border-color:#2A3550;color:var(--ink);}
body.dark .home-send:hover{border-color:#4D9FFF;}
body.dark #home-note{color:#AAB6CC;}
body.dark .home-row{background:rgba(19,26,42,.6);color:#C4CEE2;}
body.dark .home-row:hover{background:#1A2235;}
body.dark .home-sugg .home-row b{color:var(--ink);}
/* topbar guest */
body.dark .gtop-links button,body.dark .gtop-links a{color:var(--ink);}
body.dark .gtop-links button:hover,body.dark .gtop-links a:hover{background:#1A2235;}
body.dark .gtop-si{background:#131A2A;border-color:#2A3550;color:var(--ink);}
body.dark .gtop-go{background:#E8ECF5;color:#0B0F17;}
/* about + pricing */
body.dark .ab-step,body.dark .ab-tier,body.dark .pr-card{background:#111827;border-color:#232C40;}
body.dark .ab-tier a,body.dark .pr-card .cta{background:#131A2A;border-color:#2A3550;color:var(--ink);}
body.dark .ab-tier.feat a,body.dark .pr-card.feat .cta{background:linear-gradient(135deg,#3D86F8,#004FD1);border-color:transparent;color:#fff;}
body.dark .ab-cta{background:#005FF6;}
body.dark .ab-step .n{background:#005FF6;}
body.dark .pr-card li{color:#B9C4DA;}
body.dark .pr-tog{background:#131A2A;}
body.dark .pr-tog button.on{background:#232C40;color:var(--ink);box-shadow:none;}
body.dark .ab-links{border-top-color:#232C40;}
/* login */
body.dark .lg-google,body.dark .lg-go{border-color:#2A3550;}
body.dark .lg-google{background:#131A2A;color:var(--ink);}
body.dark .lg-go{background:#E8ECF5;color:#0B0F17;box-shadow:none;}
body.dark #lg-email{background:#131A2A;border-color:#2A3550;color:var(--ink);}
body.dark .lg-or::before,body.dark .lg-or::after{background:#232C40;}
/* modales + formulaires */
body.dark .nc-card{background:#111827;color:var(--ink);}
body.dark .nc-card input,body.dark .nc-card textarea,body.dark .nc-card select,body.dark .ftxt,body.dark .fin,body.dark #ag-profil,body.dark .dnotes{background:#131A2A;border-color:#2A3550;color:var(--ink);}
body.dark .nc-foot .go{background:#005FF6;}
body.dark .nc-foot .ghost{color:var(--g2);}
body.dark .fch{background:#131A2A;border-color:#2A3550;color:var(--ink);}
body.dark .fch.on{background:#005FF6;border-color:#005FF6;color:#fff;}
body.dark .fp-cat select{background:#131A2A;color:var(--ink);border-color:#2A3550;}
body.dark #fStat,body.dark #fPays{background:#131A2A;color:var(--g2);border-color:#2A3550;}
/* chat Dov */
body.dark #dovchat{background:#0E1320;border-right-color:var(--border);}
body.dark .dc-head{border-color:var(--border);}
body.dark .dc-m>div{background:#1A2335;color:#D6DEEF;}
body.dark .dc-m.me>div{background:#004FD1;color:#fff;}
body.dark .dc-box{background:#131A2A;border-color:#2A3550;}
body.dark .dc-plus:hover{background:#1A2235;}
body.dark .dc-send{background:transparent;border-color:#2A3550;color:var(--ink);}
body.dark .dc-files span{background:#1A2235;color:#B9C4DA;}
body.dark .dc-quick button{background:#131A2A;border-color:#2A3550;color:#B9C4DA;}
body.dark .dc-send{background:#005FF6;}
/* divers */
body.dark .vide{color:#7E8BA5;}
body.dark .nx{background:#121A2B;border-color:var(--border);border-left-color:#005FF6;box-shadow:none;}
body.dark .nx-ico{background:#1A2740;}
body.dark .nx-a button{background:#18223A;color:var(--ink);border-color:var(--border);}
body.dark .nx-a button.p{background:#005FF6;border-color:#005FF6;color:#fff;}
body.dark .trv{border-color:#232C40;}
body.dark .nca-bar,body.dark .lg-box h2{color:var(--ink);}
/* dark : complétions (chasse aux fonds/textes clairs oubliés) */
body.dark .ag-wrap{background:#0E1422;}
body.dark #fab-rel{background:#131A2A;border-color:#2A3550;color:var(--ink);box-shadow:0 8px 26px rgba(0,0,0,.5);}
body.dark .stopbtn{background:#1A1216;}
body.dark .pbar{background:#1A2235;}
body.dark .nc-chip{background:#1A2235;color:#B9C4DA;}
body.dark .nc-ico{background:#131A2A;border-color:#2A3550;color:var(--ink);}
body.dark .nc-ico:hover{border-color:#4D9FFF;}
body.dark .ml-lg{background:#131A2A;border-color:#2A3550;}
body.dark .ml-lg.on{background:#005FF6;border-color:#005FF6;color:#fff;}
body.dark .dedit input,body.dark .dedit select,body.dark .dedit textarea{background:#131A2A;border-color:#2A3550;color:var(--ink);}
body.dark .dedit .gh{background:#131A2A;border-color:#2A3550;}
body.dark #ev-plan{color:#D6DEEF;}
body.dark #ev-plan .ev-l{border-bottom-color:#2A3550;}
body.dark .trv .d{color:#C3CDE0;}
body.dark .fp-cat select{background:#131A2A;}
body.dark .nca-chips .nc-chip{background:#1A2235;}
body.dark .home-menu button{color:var(--ink);}
body.dark .gsol-menu a b{color:var(--ink);}
body.dark .gsol-menu .gh{color:#7d8fb5;}

/* ── collapse sidebar / chat + resize ── */
.side-brand{position:relative;}
#sb-tog{margin-left:auto;border:none;background:none;border-radius:8px;width:32px;height:32px;cursor:pointer;color:var(--g2);display:flex;align-items:center;justify-content:center;flex:none;}
#sb-tog:hover{background:#E4E9F0;color:var(--ink);}
#sb-tog svg{width:17px;height:17px;}
#side-rail{display:none;}
body.scollapse aside{width:56px!important;padding:0 9px 14px;}
body.scollapse aside>*{display:none!important;}
body.scollapse aside #side-rail{display:flex!important;flex-direction:column;align-items:center;gap:8px;height:100%;padding-top:0;box-sizing:border-box;}
#side-rail>button:first-child{height:58px;flex:none;width:calc(100% + 18px);margin:0 -9px 6px;border-radius:0;border-bottom:1px solid var(--border);}
#side-rail button{width:36px;height:36px;border:none;background:none;border-radius:9px;cursor:pointer;color:var(--g2);display:flex;align-items:center;justify-content:center;padding:0;}
#side-rail button:hover{background:#E4E9F0;color:var(--ink);}
#side-rail svg{width:18px;height:18px;}
#side-rail .av{width:32px;height:32px;cursor:pointer;font-size:11.5px;margin-top:auto;}
body.dark #sb-tog:hover{background:#1A2235;}
body.dark #side-rail button:hover{background:#1A2235;}
#dc-rail{display:none;}
#dovchat.mini{width:52px!important;}
#dovchat.mini{display:none!important;} /* 20/10 Ethan: no collapsed « Chat with Dov » rail */
#dovchat.mini>*{display:none!important;}
#dovchat.mini #dc-rail{display:flex!important;flex-direction:column;align-items:center;gap:10px;padding:0 0 14px;width:100%;}
#dc-rail>button:first-child{height:58px;flex:none;width:100%;margin:0 0 4px;border-radius:0;border-bottom:1px solid var(--border);}
#dc-rail button{width:34px;height:34px;border:none;background:none;border-radius:9px;cursor:pointer;color:var(--g2);display:flex;align-items:center;justify-content:center;padding:0;}
#dc-rail button:hover{background:#e6e6e9;color:var(--ink);}
#dc-rail svg{width:17px;height:17px;}
#dc-rail img{width:28px;height:28px;cursor:pointer;}
body.dark #dc-rail button:hover{background:#1A2235;}
#dc-tog{border:none;background:none;border-radius:8px;width:30px;height:30px;cursor:pointer;color:var(--g2);display:flex;align-items:center;justify-content:center;flex:none;}
#dc-tog:hover{background:#e6e6e9;color:var(--ink);}
#dc-tog svg{width:16px;height:16px;}
body.dark #dc-tog:hover{background:#1A2235;}
.dc-rs{position:absolute;top:0;right:-4px;bottom:0;width:8px;cursor:col-resize;z-index:60;}
.dc-rs:hover,.dc-rs.on{background:rgba(0,95,246,.3);}

/* ── Dov chat panel (between sidebar and table) ── */
#dovchat{display:none;width:330px;flex:none;background:#FAFBFD;border-right:1px solid var(--border);flex-direction:column;position:sticky;top:0;height:100vh;}
.dc-head{display:flex;gap:8px;align-items:center;height:58px;flex:none;padding:0 10px 0 14px;box-sizing:border-box;border-bottom:1px solid var(--border);}
.dc-head .dc-ic{width:17px;height:17px;flex:none;color:var(--g2);}
.dc-head b{font-size:13.8px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;}
#dc-new{margin-left:auto;border:none;background:none;border-radius:8px;padding:6px 9px;font:inherit;font-size:12.8px;font-weight:700;color:var(--g2);cursor:pointer;display:flex;align-items:center;gap:5px;flex:none;}
#dc-new:hover{background:#e6e6e9;color:var(--ink);}
#dc-new svg{width:14px;height:14px;}
body.dark #dc-new:hover{background:#1A2235;}
.dc-msgs{flex:1;overflow-y:auto;padding:16px 14px;display:flex;flex-direction:column;gap:10px;}
.dc-m{display:flex;gap:8px;align-items:flex-end;}
.dc-m img{width:22px;height:22px;flex:none;}
.dc-m>div{background:#eef1f6;border-radius:14px;padding:9px 13px;font-size:13.8px;line-height:1.5;font-weight:500;color:#22304a;white-space:pre-wrap;word-break:break-word;border-bottom-left-radius:5px;}
.dc-m.me{justify-content:flex-end;}
.dc-m.me>div{background:#0B1A3C;color:#fff;border-radius:14px;border-bottom-right-radius:5px;}
.dc-hello{text-align:center;color:var(--g2);font-size:13.5px;font-weight:600;line-height:1.55;padding:26px 12px;}
.dc-hello img{width:44px;height:44px;margin-bottom:10px;}
.dc-quick{display:flex;flex-wrap:wrap;gap:6px;padding:0 14px 10px;}
.dc-quick button{border:1px solid #C9D3E0;background:#fff;border-radius:8px;padding:6px 11px;font:inherit;font-size:12.3px;font-weight:700;color:#3c4453;cursor:pointer;}
.dc-quick button:hover{border-color:#0B1A3C;}
.dc-bar{padding:10px 12px 14px;}
.dc-box{border:1.5px solid #C9D3E0;border-radius:16px;background:#fff;padding:12px 12px 9px;display:flex;flex-direction:column;gap:8px;transition:border-color .15s;box-shadow:0 2px 10px rgba(11,26,60,.05);}
.dc-box:focus-within{border-color:#0B1A3C;}
#dc-in{border:none;outline:none;background:none;resize:none;font:inherit;font-size:13.8px;line-height:1.5;min-height:54px;max-height:160px;padding:0;color:var(--ink);}
.dc-row{display:flex;align-items:center;}
.dc-plus{width:30px;height:30px;border:none;background:none;border-radius:8px;color:var(--g2);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;}
.dc-plus:hover{background:#f0f0f2;color:var(--ink);}
.dc-plus svg{width:17px;height:17px;}
.dc-send{margin-left:auto;width:34px;height:34px;border-radius:9px;border:1px solid #d2d2d7;background:#fff;color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;flex:none;}
.dc-send:hover{border-color:#0B1A3C;}
.dc-send svg{width:15px;height:15px;}
.dc-files{display:none;flex-wrap:wrap;gap:6px;}
.dc-files.on{display:flex;}
.dc-files span{display:inline-flex;align-items:center;gap:6px;background:#f0f2f7;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600;color:#3c4453;}
.dc-files button{border:none;background:none;cursor:pointer;color:var(--g2);font-size:13px;padding:0;}
body.guest #dovchat{display:none!important;}
@media(max-width:1135px){#dovchat{display:none!important;}}

/* ── pricing page (Lovable-style: floating white card on a soft grey column) ── */
#pricing{display:none;flex:1;background:#F5F7FA url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/><feComponentTransfer><feFuncA type='linear' slope='.045'/></feComponentTransfer></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");overflow-y:auto;padding:118px 32px 90px;}
#pricing.on{display:block;}
.pr-in{max-width:1304px;margin:0 auto;}
.pr-head{text-align:center;}
.pr-head .t{display:flex;align-items:center;justify-content:center;gap:11px;font-family:'IBM Plex Sans','SG fb',sans-serif;font-size:32px;font-weight:700;letter-spacing:-.4px;}
.pr-head .t img{height:58px;}
.pr-head p{color:var(--g2);font-size:16px;font-weight:450;margin:13px auto 0;max-width:640px;line-height:1.6;}
.pr-btog{display:inline-flex;align-items:center;background:rgba(255,255,255,.65);border:1px solid rgba(11,26,60,.14);border-radius:999px;padding:3px;margin:24px auto 0;gap:2px;}
.pr-btog button{border:none;background:none;border-radius:999px;padding:8px 17px;font:inherit;font-weight:550;font-size:14px;color:#5A6578;cursor:pointer;display:flex;gap:7px;align-items:center;}
.pr-btog button.on{background:#fff;color:var(--ink);font-weight:600;box-shadow:0 0 0 1.5px rgba(11,26,60,.30),0 1px 2px rgba(11,26,60,.08);}
.pr-btog button b{color:#0067E8;font-weight:650;font-size:13px;}
body.dark .pr-btog{background:rgba(19,26,42,.7);border-color:#2A3550;}
body.dark .pr-btog button{color:#8E9AB1;}
body.dark .pr-btog button.on{background:#1E2740;color:#E8EDF7;box-shadow:0 0 0 1.5px rgba(255,255,255,.28);}
body.dark .pr-btog button b{color:#4D9FFF;}
.pr-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:40px auto 0;align-items:stretch;max-width:1260px;}
.pr-grid.n3{grid-template-columns:repeat(3,1fr);max-width:1000px;} /* 18/10 hard paywall: no Free column */
/* column = soft grey panel ; top = floating white card */
.pr-col{background:transparent;border:none;padding:0;display:flex;flex-direction:column;}
.pr-top{position:relative;z-index:1;background:#fff;border:none;border-radius:16px;box-shadow:0 0 0 1px rgba(11,26,60,.07),0 2px 1px rgba(11,26,60,.04),0 2px 1px -.5px rgba(11,26,60,.04),0 4px 3px -1.5px rgba(11,26,60,.04),0 7px 6px -3px rgba(11,26,60,.04),0 13px 12px -6px rgba(11,26,60,.04),0 25px 24px -12px rgba(11,26,60,.04);padding:22px 20px 20px;}
.pr-top h3{margin:0 0 8px;font-size:20px;font-weight:650;letter-spacing:-.2px;}
.pr-top .d{color:var(--g2);font-size:13.5px;line-height:1.6;font-weight:500;min-height:64px;}
.pr-price{font-size:38px;font-weight:650;letter-spacing:-1px;color:var(--ink);height:48px;display:flex;align-items:flex-end;}
.pr-price.soft{font-size:25px;color:var(--g2);letter-spacing:-.3px;font-weight:600;}
.pr-price s{font-size:19px;color:#9AA3B5;font-weight:600;letter-spacing:-.4px;margin-right:9px;text-decoration:line-through;line-height:2;}
.per{color:var(--g2);font-size:12.5px;font-weight:500;margin-top:5px;min-height:16px;}
/* credit selector (Lovable dropdown) */
.pr-sel{position:relative;margin-top:16px;}
.pr-top:has(.pr-sel.open){z-index:30;}
.pr-sel.ghost{visibility:hidden;}
.pr-sel-b{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;border:none;background:#EDEFF4;border-radius:8px;padding:10px 12px;font:inherit;font-weight:500;font-size:14px;color:var(--ink);cursor:pointer;box-shadow:inset 0 0 0 1px rgba(11,26,60,.09);transition:box-shadow .15s,background .15s;}
.pr-sel-b:hover{background:#E7EAF1;box-shadow:inset 0 0 0 1px rgba(11,26,60,.14);}
.pr-sel-b svg{width:15px;height:15px;flex:none;color:var(--g2);transition:transform .16s;}
.pr-sel.open .pr-sel-b svg{transform:rotate(180deg);}
.pr-sel-m{display:none;position:absolute;left:-8px;min-width:calc(100% + 170px);top:calc(100% + 8px);background:#fff;border-radius:18px;box-shadow:0 28px 70px -18px rgba(11,26,60,.32),0 0 0 1px rgba(11,26,60,.05);padding:10px;z-index:40;max-height:372px;overflow-y:auto;}
.pr-sel.open .pr-sel-m{display:block;}
.pr-sel-m button{width:100%;display:flex;align-items:center;gap:12px;border:none;background:none;border-radius:11px;padding:13px 15px;font:inherit;font-size:14.5px;font-weight:550;color:var(--ink);cursor:pointer;text-align:left;}
.pr-sel-m button:hover{background:#F4F6FA;}
.pr-sel-m button.on{background:#EAF3FF;color:#0067E8;}
.pr-sel-m button b{font-weight:inherit;white-space:nowrap;}
.pr-sel-m .sv{margin-left:auto;background:#E8F4EC;color:#1E7A3C;font-size:12px;font-weight:800;border-radius:999px;padding:3px 10px;white-space:nowrap;}
.pr-sel-m .pp{color:#39424F;font-weight:600;font-size:14px;white-space:nowrap;margin-left:auto;}
.pr-sel-m .sv + .pp,.pr-sel-m .sv ~ .pp{margin-left:14px;}
.pr-sel-m button.on .pp{color:#0067E8;}
.pr-sel-m .pp i{font-style:normal;font-weight:600;font-size:12px;color:var(--g2);}
.pr-sel-f{border-top:1px solid #EEF1F5;margin-top:6px;padding:12px 12px 6px;font-size:13px;font-weight:700;color:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:10px;}
.pr-sel-f a{color:#0067E8;text-decoration:none;font-weight:650;white-space:nowrap;}
.pr-sel-sc{position:sticky;bottom:-8px;margin:0 -8px -8px;display:flex;justify-content:center;padding:14px 0 8px;background:linear-gradient(to bottom,rgba(255,255,255,0),#fff 55%);pointer-events:none;transition:opacity .18s;}
.pr-sel-sc svg{width:15px;height:15px;color:var(--g2);}
body.dark .pr-sel-sc{background:linear-gradient(to bottom,rgba(16,23,38,0),#101726 55%);}
body.dark .pr-price s{color:#5A6578;}
/* CTA */
.pr-top .cta{margin-top:14px;display:block;text-align:center;border:none;border-radius:9px;padding:10px 0;font:inherit;font-weight:600;font-size:14px;color:var(--ink);text-decoration:none;background:#fff;cursor:pointer;width:100%;box-sizing:border-box;box-shadow:0 0 0 1px rgba(11,26,60,.16),0 1px 2px rgba(11,26,60,.07);transition:box-shadow .15s;}
.pr-top .cta:hover{box-shadow:0 0 0 1px rgba(11,26,60,.4),0 1px 2px rgba(11,26,60,.1);}
.pr-col.feat .pr-top .cta{background:linear-gradient(135deg,#04ADFC,#0067E8);border-color:transparent;color:#fff;}
.pr-col.feat .pr-top .cta:hover{filter:brightness(1.07);}

/* features zone under the floating card */
.pr-feats{margin-top:-14px;background:#E8EDF4;border:none;border-radius:16px;padding:32px 18px 18px;flex:1;box-shadow:inset 0 2px 4px rgba(11,26,60,.05),inset 0 0 0 1px rgba(11,26,60,.06);}
.pr-hl{display:flex;align-items:center;gap:11px;font-size:13.5px;font-weight:550;color:var(--ink);padding:8px 2px;}
.pr-hl svg{width:16px;height:16px;flex:none;color:#5A6578;}
.pr-hl.tog{cursor:pointer;user-select:none;}
.pr-hl .tgv{display:inline-flex;margin-left:2px;}
.pr-hl .tgv svg{width:13px;height:13px;transition:transform .16s;}
.pr-hl.tog.on .tgv svg{transform:rotate(180deg);}
.pr-credx{display:none;font-size:12.5px;color:var(--g2);font-weight:450;line-height:1.65;padding:2px 2px 8px 28px;}
.pr-credx.on{display:block;}
.pr-feats .sep{height:1px;background:#D7DEE9;margin:13px -18px 15px;}
.pr-feats ul{list-style:none;margin:0;padding:0 2px;display:flex;flex-direction:column;gap:11px;}
.pr-feats li{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;font-weight:450;color:#1A2335;line-height:1.55;}
.pr-feats li.hd{font-weight:650;color:var(--ink);}
.pr-feats li svg{flex:none;width:14px;height:14px;margin-top:3px;color:#39424F;}
.pr-notice{max-width:1260px;margin:26px auto 0;background:#FDF3E7;border:1px solid #F0D9B8;color:#8A5B16;border-radius:13px;padding:13px 18px;font-size:14px;font-weight:800;text-align:center;}
.pr-note{text-align:center;color:var(--g2);font-size:13px;font-weight:600;margin-top:22px;}
/* bands (segments + security) */
.pr-band{max-width:1260px;margin:18px auto 0;background:#fff;border:1px solid #EAEEF4;border-radius:18px;}
.pr-segs{display:grid;grid-template-columns:repeat(3,1fr);margin-top:46px;}
.pr-seg{padding:24px 26px;display:flex;flex-direction:column;}
.pr-seg + .pr-seg{border-left:1px solid #EEF1F6;}
.pr-seg h4{margin:0;font-size:16.5px;font-weight:650;letter-spacing:-.1px;}
.pr-seg p{color:var(--g2);font-size:13.5px;font-weight:450;line-height:1.6;margin:8px 0 18px;flex:1;}
.pr-seg-cta{display:block;text-align:center;border:none;border-radius:9px;padding:10px 18px;font:inherit;font-weight:600;font-size:14px;color:var(--ink);text-decoration:none;background:#fff;cursor:pointer;box-sizing:border-box;box-shadow:0 0 0 1px rgba(11,26,60,.16),0 1px 2px rgba(11,26,60,.07);transition:box-shadow .15s;}
.pr-seg-cta:hover{box-shadow:0 0 0 1px rgba(11,26,60,.4),0 1px 2px rgba(11,26,60,.1);}
/* FAQ */
.pr-faq{max-width:903px;margin:78px auto 0;}
.pr-faq h2{text-align:center;font-family:'IBM Plex Sans','SG fb',sans-serif;font-size:32px;font-weight:700;letter-spacing:-.5px;margin:0 0 26px;}
.pr-faq details{border-bottom:1px solid #E8ECF2;}
.pr-faq summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:16px;font-weight:550;color:var(--ink);padding:21px 2px;cursor:pointer;}
.pr-faq summary::-webkit-details-marker{display:none;}
.pr-faq .fqv{flex:none;width:13px;height:13px;border-right:2px solid #5A6578;border-bottom:2px solid #5A6578;transform:rotate(45deg) translateY(-3px);transition:transform .18s;}
.pr-faq details[open] .fqv{transform:rotate(225deg) translateY(-3px);}
.pr-faq details p{color:#39424F;font-size:14.5px;font-weight:450;line-height:1.7;margin:0;padding:0 40px 20px 2px;}
@media(max-width:900px){.pr-segs{grid-template-columns:1fr;}.pr-seg + .pr-seg{border-left:none;border-top:1px solid #EEF1F6;}}
/* dark bands + FAQ */
body.dark .pr-band{background:#131A2A;border-color:#2A3550;}
body.dark .pr-seg + .pr-seg{border-left-color:#2A3550;}
body.dark .pr-seg h4{color:#E8EDF7;}
body.dark .pr-seg-cta{background:#131A2A;border-color:#34415E;color:#D6DEEF;}
body.dark .pr-faq h2{color:#E8EDF7;}
body.dark .pr-faq details{border-bottom-color:#232E47;}
body.dark .pr-faq summary{color:#E8EDF7;}
@media(max-width:900px){body.dark .pr-seg + .pr-seg{border-top-color:#2A3550;}}
.home-video.pr-video{display:block;position:relative;margin:72px auto 0;max-width:1012px;}
@media(max-width:1180px){.pr-grid,.pr-grid.n3{grid-template-columns:repeat(2,1fr);}}
@media(max-width:640px){.pr-grid,.pr-grid.n3{grid-template-columns:1fr;}#pricing{padding:100px 16px 70px;}}
/* dark */
body.dark .pr-col{background:transparent;}
body.dark .pr-top{background:#131A2A;box-shadow:0 0 0 1px rgba(255,255,255,.07),0 2px 1px rgba(0,0,0,.2),0 4px 3px -1.5px rgba(0,0,0,.2),0 7px 6px -3px rgba(0,0,0,.2),0 13px 12px -6px rgba(0,0,0,.2);}
body.dark .pr-price{color:#E8EDF7;}
body.dark .pr-sel-b{background:#1A2234;color:#D6DEEF;box-shadow:inset 0 0 0 1px rgba(255,255,255,.09);}
body.dark .pr-sel-b:hover{border-color:#34415E;background:#1E2740;}
body.dark .pr-sel-m{background:#101726;box-shadow:0 24px 64px -18px rgba(0,0,0,.7),0 0 0 1px #2A3550;}
body.dark .pr-sel-m button{color:#D6DEEF;}
body.dark .pr-sel-m button:hover{background:#1A2234;}
body.dark .pr-sel-m button.on{background:#14223D;color:#4D9FFF;}
body.dark .pr-sel-m button.on .pp{color:#4D9FFF;}
body.dark .pr-sel-m .pp{color:#AFBAD1;}
body.dark .pr-sel-m .sv{background:#153323;color:#5BC98A;}
body.dark .pr-sel-f{border-top-color:#2A3550;color:#D6DEEF;}
body.dark .pr-top .cta{background:#131A2A;color:#D6DEEF;box-shadow:0 0 0 1px rgba(255,255,255,.16);}
body.dark .pr-feats li{color:#CBD4E4;}
body.dark .pr-feats li.hd,body.dark .pr-hl{color:#E8EDF7;}
body.dark .pr-feats li svg,body.dark .pr-hl svg{color:#8E9AB1;}
body.dark .pr-feats{background:#0D1322;box-shadow:inset 0 2px 4px rgba(0,0,0,.35),inset 0 0 0 1px rgba(255,255,255,.05);}
body.dark .pr-feats .sep{background:#232E47;}
body.dark .pr-notice{background:#2A2214;border-color:#4A3A1C;color:#E3B35E;}
/* ── login page (Lovable-style split, white + video right) ── */
#login{display:none;min-height:100vh;background:#fff;width:100%;position:relative;z-index:2;}
#login.on{display:flex;}
body.login-open #gtop{display:none!important;}
.lg-left{flex:1;display:flex;align-items:center;justify-content:center;padding:40px 36px;}
.lg-box{width:100%;max-width:380px;}
.lg-logo{height:46px;cursor:pointer;margin-bottom:36px;display:block;}
.lg-box h2{font-family:'IBM Plex Sans','SG fb',sans-serif;font-size:29px;margin:0 0 28px;letter-spacing:-.3px;}
/* guest preview (§9 Ads): real suppliers found before signup, names blurred */
.pvbox .pv{border:1px solid #E3E8F2;background:#F7F9FC;border-radius:14px;padding:12px 14px;margin-bottom:14px}
.pvbox .pv-h{font-weight:700;font-size:15px;color:var(--ink);display:flex;align-items:center;gap:8px}
.pvbox .pv-s{font-size:13px;color:#64748B;margin-top:2px}
.pvbox ul{list-style:none;margin:10px 0 0!important;padding:0!important;display:grid;gap:6px}
.pvbox li{margin:0!important}
@media (max-width:700px){.pvbox .pv{padding:10px 12px;margin-bottom:10px}.pvbox li:nth-child(n+4){display:none}.pvbox li{padding:6px 9px;font-size:13px}.pvbox .pv-s{font-size:12.5px}}
.pvbox li{display:flex;justify-content:space-between;gap:10px;font-size:13.5px;background:#fff;border:1px solid #E7ECF4;border-radius:10px;padding:7px 10px}
.pvbox li b{filter:blur(5px);user-select:none;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pvbox li span{color:#64748B;white-space:nowrap;font-size:12.5px}
.pvbox .pv-spin{width:14px;height:14px;border:2px solid #C9D3E6;border-top-color:#005FF6;border-radius:50%;animation:pvs 0.8s linear infinite;flex:none}
@keyframes pvs{to{transform:rotate(360deg)}}
.gs-or{text-align:center;font-size:12.5px;color:#8A94A8;margin:2px 0 10px}
body.dark .pvbox .pv{background:#131A2A;border-color:#26324A}body.dark .pvbox li{background:#0F1626;border-color:#26324A}
.lg-google{display:flex;align-items:center;justify-content:center;gap:11px;width:100%;border:1.5px solid #d6d6db;background:#fff;border-radius:999px;padding:13px 0;font:inherit;font-weight:700;font-size:15.5px;cursor:pointer;color:var(--ink);}
.lg-google:hover{border-color:#0B1A3C;}
.lg-google svg{width:19px;height:19px;flex:none;}
.lg-or{display:flex;align-items:center;gap:12px;color:#9aa1ad;font-size:12px;font-weight:800;margin:22px 0;text-transform:uppercase;letter-spacing:.6px;}
.lg-or::before,.lg-or::after{content:'';flex:1;height:1px;background:#e8e8ec;}
.lg-lab{font-weight:700;font-size:14px;display:block;margin-bottom:9px;}
.hd-code{width:100%;box-sizing:border-box;border:1px solid #D9D9DE;border-radius:14px;padding:12px 16px;font:600 26px/1.2 'IBM Plex Sans','SG fb',ui-monospace,monospace;letter-spacing:12px;text-align:center;outline:none;background:#fff;color:var(--ink);}
.hd-code:focus{border-color:#004FD1;box-shadow:0 0 0 3px rgba(0,79,209,.15);}
#vg .hd-code{max-width:280px;display:block;margin:0 auto 18px;}
body.dark .hd-code{background:#131A2A;border-color:#2A3550;color:#E8EDF7;}
#lg-email{width:100%;box-sizing:border-box;border:1px solid #D9D9DE;border-radius:999px;padding:13px 19px;font:inherit;font-size:15.5px;outline:none;background:#fff;}
#lg-email:focus{border-color:#0B1A3C;}
.lg-lock{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #D9D9DE;background:#F3F4F7;border-radius:999px;padding:13px 19px;font-size:15px;color:#55617A;font-weight:500;}
.lg-lock a{color:var(--ink);font-weight:600;text-decoration:underline;text-underline-offset:3px;font-size:14px;white-space:nowrap;}
.lg-pwdw{position:relative;}
#lg-pwd{width:100%;box-sizing:border-box;border:1px solid #D9D9DE;border-radius:999px;padding:13px 48px 13px 19px;font:inherit;font-size:15.5px;outline:none;background:#fff;}
.lg-eye{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:none;background:none;cursor:pointer;padding:8px;display:flex;color:#5A6578;border-radius:999px;}
.lg-eye svg{width:18px;height:18px;display:block;}
.lg-eye:hover{color:var(--ink);background:#F2F4F8;}
body.dark .lg-eye:hover{color:#E8EDF7;background:#1A2234;}
#lg-pwd:focus{border-color:#0B1A3C;}
.lg-req{margin-top:12px;font-size:13.5px;color:#39424F;}
.lg-req b{display:block;font-weight:650;margin-bottom:5px;}
.lg-req ul{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:3px;font-weight:450;}
.lg-req li.ok{color:#1E7A3C;}
.lg-go.off{background:#9AA0A8;box-shadow:none;cursor:default;pointer-events:none;}
.lg-magic{margin-top:14px;text-align:center;font-size:13.5px;color:#55617A;font-weight:500;}
.lg-magic a{color:var(--ink);font-weight:600;text-decoration:underline;text-underline-offset:3px;}
body.dark .lg-lock{background:#1A2234;border-color:#2A3550;color:#8E9AB1;}
body.dark .lg-lock a,body.dark .lg-magic a{color:#E8EDF7;}
body.dark #lg-pwd{background:#131A2A;border-color:#2A3550;color:var(--ink);}
.lg-go{width:100%;margin-top:14px;border:none;background:linear-gradient(180deg,#2A2D33,#0E1013);color:#fff;border-radius:999px;padding:14px 0;font:inherit;font-weight:600;font-size:15.5px;cursor:pointer;box-shadow:0 10px 22px -12px rgba(0,0,0,.5);}
.lg-go:hover{filter:brightness(1.25);}
.lg-go:disabled{opacity:.6;cursor:default;}
.lg-msg{margin-top:14px;font-size:14.5px;line-height:1.55;font-weight:600;min-height:22px;}
.lg-foot{margin-top:24px;color:#55617A;font-size:14px;font-weight:500;text-align:center;}
.lg-legal{font-size:12.5px;color:var(--g2);font-weight:450;text-align:center;margin-top:14px;line-height:1.65;}
.lg-legal a{color:inherit;text-decoration:underline;text-underline-offset:2px;}
.lg-legal a:hover{color:var(--ink);}
.lg-sep{height:1px;background:#E8ECF2;margin:20px 0 16px;}
.lg-sso{display:flex;align-items:center;justify-content:center;gap:8px;font-size:13px;font-weight:450;color:#39424F;}
.lg-sso svg{width:14px;height:14px;color:#5A6578;flex:none;}
.lg-sso b{font-weight:600;}
body.dark .lg-legal{color:#8E9AB1;}
body.dark .lg-sep{background:#232E47;}
body.dark .lg-sso{color:#C3CCDD;}
.lg-foot a{color:var(--ink);text-decoration:underline;text-underline-offset:3px;font-weight:600;}
.lg-right{flex:1.15;display:flex;align-items:center;justify-content:center;padding:40px;position:relative;overflow:hidden;}
/* même aurora que le hero invité derrière la vidéo */
.lg-right::before{content:'';position:absolute;inset:-14%;pointer-events:none;z-index:0;
  background:
    radial-gradient(42% 46% at 18% 24%, rgba(61,134,248,.26), transparent 70%),
    radial-gradient(46% 50% at 84% 18%, rgba(0,144,240,.20), transparent 70%),
    radial-gradient(54% 58% at 50% 72%, rgba(99,153,241,.18), transparent 72%),
    radial-gradient(42% 46% at 80% 92%, rgba(14,165,233,.22), transparent 70%),
    radial-gradient(38% 42% at 10% 86%, rgba(0,95,246,.18), transparent 70%),
    linear-gradient(180deg,#ffffff 0%,#F5F9FF 24%,#E9F2FF 58%,#EDF4FF 100%);
  filter:blur(56px) saturate(1.0);
  animation:heroAur 19s ease-in-out infinite alternate;}
.lg-right video{position:relative;z-index:1;width:100%;max-width:620px;aspect-ratio:16/9;height:auto;object-fit:cover;border-radius:18px;display:block;background:#000;box-shadow:0 30px 70px -26px rgba(10,45,120,.45);}
@media(max-width:940px){.lg-right{display:none;}}

/* ── gate de vérification email (plein écran) ── */
#vg{display:none;position:fixed;inset:0;z-index:450;background:#fff;overflow-y:auto;}
#vg.on{display:flex;align-items:flex-start;justify-content:center;}
#vg h2{font-family:'IBM Plex Sans','SG fb',sans-serif;font-size:25px;font-weight:700;letter-spacing:-.3px;margin:0 0 16px;color:var(--ink);}
.vg-txt{color:#55617A;font-size:14.5px;font-weight:500;line-height:1.7;margin:0 auto 30px;max-width:380px;}
.vg-txt b{color:var(--ink);font-weight:650;}
.vg-foot{margin-top:18px;font-size:14px;color:#55617A;font-weight:500;}
.vg-foot a{color:var(--ink);font-weight:600;text-decoration:underline;text-underline-offset:3px;}
body.dark #vg{background:#0B0F17;}
body.dark #vg::before{content:'';position:fixed;inset:-12%;pointer-events:none;background:
    radial-gradient(42% 46% at 18% 24%, rgba(61,134,248,.18), transparent 70%),
    radial-gradient(46% 50% at 84% 18%, rgba(0,144,240,.13), transparent 70%),
    radial-gradient(54% 58% at 50% 72%, rgba(99,153,241,.15), transparent 72%),
    linear-gradient(180deg,#0C1222 0%,#0B0F17 100%);
  filter:blur(56px);animation:heroAur 19s ease-in-out infinite alternate;}
body.dark #vg h2,body.dark .vg-txt b,body.dark .vg-foot a{color:#E8EDF7;}

/* ── onboarding wizard (plein écran, façon Lovable) ── */
#ob{display:none;position:fixed;inset:0;z-index:400;background:#fff;overflow-y:auto;}
#ob.on{display:flex;align-items:center;justify-content:center;}
#ob::before{content:'';position:fixed;inset:-12%;pointer-events:none;
  background:
    linear-gradient(180deg, rgba(255,255,255,0) 74%, #ffffff 94%),
    radial-gradient(42% 46% at 18% 24%, rgba(61,134,248,.26), transparent 70%),
    radial-gradient(46% 50% at 84% 18%, rgba(0,144,240,.20), transparent 70%),
    radial-gradient(54% 58% at 50% 72%, rgba(99,153,241,.18), transparent 72%),
    radial-gradient(42% 46% at 80% 92%, rgba(14,165,233,.22), transparent 70%),
    radial-gradient(38% 42% at 10% 86%, rgba(0,95,246,.18), transparent 70%),
    linear-gradient(180deg,#ffffff 0%,#F5F9FF 24%,#E9F2FF 58%,#EDF4FF 100%);
  filter:blur(56px) saturate(1.0);animation:heroAur 19s ease-in-out infinite alternate;}
body.dark #ob::before{opacity:1;background:
    radial-gradient(42% 46% at 18% 24%, rgba(61,134,248,.18), transparent 70%),
    radial-gradient(46% 50% at 84% 18%, rgba(0,144,240,.13), transparent 70%),
    radial-gradient(54% 58% at 50% 72%, rgba(99,153,241,.15), transparent 72%),
    radial-gradient(42% 46% at 80% 92%, rgba(14,165,233,.13), transparent 70%),
    linear-gradient(180deg,#0C1222 0%,#0B0F17 100%);}
.ob-in{position:relative;z-index:1;width:100%;max-width:1040px;padding:40px 28px 110px;text-align:center;}
.ob-dove{height:70px;display:block;margin:0 auto 22px;}
#ob h2{font-family:'IBM Plex Sans','SG fb',sans-serif;font-size:35px;font-weight:700;letter-spacing:-.5px;margin:0 0 42px;color:var(--ink);}
@keyframes obIn{from{opacity:0;transform:translateY(16px);}to{opacity:1;transform:none;}}
.ob-step{animation:obIn .32s cubic-bezier(.22,.61,.36,1);}
@media(prefers-reduced-motion:reduce){.ob-step{animation:none;}}
.ob-themes{display:flex;gap:22px;justify-content:center;margin-bottom:34px;}
.ob-th{cursor:pointer;border-radius:14px;padding:5px;border:2px solid transparent;transition:border-color .15s,transform .15s;}
.ob-th.on{border-color:#121418;}
.ob-th:hover{transform:translateY(-2px);}
.ob-th span{display:block;margin-top:11px;font-size:16px;font-weight:550;color:var(--ink);}
.ob-prev{width:218px;height:146px;border-radius:9px;background:#F7F8FB;border:1px solid #E3E8F0;position:relative;overflow:hidden;box-shadow:0 10px 24px -14px rgba(11,26,60,.3);}
.ob-prev .s{position:absolute;right:0;top:0;bottom:0;width:34%;background:#EDF0F6;}
.ob-prev i{display:block;position:absolute;border-radius:3px;background:#DDE3ED;}
.ob-prev .l1{left:12px;top:16px;width:46%;height:9px;}
.ob-prev .l2{left:12px;top:33px;width:38%;height:9px;}
.ob-prev .l3{left:12px;top:50px;width:42%;height:9px;}
.ob-th.dark .ob-prev{background:#15181E;border-color:#2A2E38;}
.ob-th.dark .ob-prev .s{background:#1D212A;}
.ob-th.dark .ob-prev i{background:#2E333E;}
.ob-next{display:block;margin:0 auto;min-width:340px;border:none;background:#121418;color:#fff;border-radius:999px;padding:14px 30px;font:inherit;font-size:15px;font-weight:550;cursor:pointer;box-shadow:0 14px 30px -14px rgba(0,0,0,.5);}
.ob-next:hover{filter:brightness(1.4);}
.ob-cards{display:grid;gap:18px;margin:0 auto;max-width:920px;}
#ob-sizes{grid-template-columns:repeat(5,1fr);}
#ob-cats{grid-template-columns:repeat(4,1fr);}
#ob-goals{grid-template-columns:repeat(5,1fr);}
#ob-origins{grid-template-columns:repeat(3,1fr);max-width:700px;}
#ob-goals .ob-card{text-align:center;}
.og-load{max-width:440px;margin:0 auto;}
.og-lines{display:flex;flex-direction:column;gap:12px;margin-bottom:26px;text-align:left;}
.og-l{display:flex;align-items:center;gap:12px;padding:13px 16px;border:1px solid rgba(11,26,60,.12);background:rgba(255,255,255,.75);border-radius:12px;font-size:15px;opacity:0;transform:translateY(8px);transition:opacity .3s,transform .3s cubic-bezier(.22,.61,.36,1);}
.og-l.in{opacity:1;transform:none;}
.og-l span{color:#55617A;flex:1;}
.og-l b{color:var(--ink);font-weight:600;opacity:0;transition:opacity .25s;}
.og-l.ok b{opacity:1;}
.og-ic{width:18px;height:18px;flex:none;border-radius:50%;border:2px solid #C9D5EE;border-top-color:#004FD1;animation:ogSpin .7s linear infinite;box-sizing:border-box;}
.og-l.ok .og-ic{animation:ogPop .3s cubic-bezier(.34,1.56,.64,1);border:none;background:#004FD1 url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12l5 5L20 7'/></svg>") center/12px no-repeat;}
@keyframes ogSpin{to{transform:rotate(360deg);}}
@keyframes ogPop{0%{transform:scale(.4);}100%{transform:scale(1);}}
.og-bar{height:6px;border-radius:99px;background:rgba(11,26,60,.08);overflow:hidden;}
.og-bar i{display:block;height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,#3D86F8,#004FD1);}
.og-res{animation:obIn .4s cubic-bezier(.22,.61,.36,1);}
/* the CTA keeps moving so the page never feels asleep: light sweep + soft halo + arrow nudge */
.og-go{position:relative;overflow:hidden;animation:ogHalo 2.4s ease-in-out 1.2s infinite;}
.og-go::after{content:'';position:absolute;top:0;bottom:0;left:-60%;width:45%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.28),transparent);transform:skewX(-18deg);animation:ogSweep 2.4s ease-in-out 1.2s infinite;}
.og-arr{display:inline-block;animation:ogNudge 1.2s ease-in-out infinite;}
@keyframes ogSweep{0%{left:-60%;}55%,100%{left:130%;}}
@keyframes ogHalo{0%,100%{box-shadow:0 10px 28px -12px rgba(0,79,209,.35),0 0 0 0 rgba(0,79,209,.28);}50%{box-shadow:0 10px 28px -12px rgba(0,79,209,.5),0 0 0 9px rgba(0,79,209,0);}}
@keyframes ogNudge{0%,100%{transform:translateX(0);}50%{transform:translateX(5px);}}
@media(prefers-reduced-motion:reduce){.og-go,.og-go::after,.og-arr{animation:none;}}
body.dark .og-l{background:#131A2A;border-color:#2A3550;}
body.dark .og-l span{color:#AFBAD1;}
body.dark .og-l b{color:#E8EDF7;}
body.dark .og-bar{background:rgba(255,255,255,.1);}
.og-ctx{margin:-26px 0 26px;color:#55617A;font-size:15.5px;}
.og-total{display:flex;flex-direction:column;align-items:center;gap:4px;margin:0 0 30px;animation:obIn .5s cubic-bezier(.22,.61,.36,1);}
.og-total span{font-family:'IBM Plex Sans','SG fb',sans-serif;font-size:64px;font-weight:700;letter-spacing:-1.5px;line-height:1;color:#004FD1;font-variant-numeric:tabular-nums;}
.og-total small{font-size:15px;color:#39424F;font-weight:500;}
.og-rows{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:820px;margin:0 auto 34px;}
.og-row{border:1px solid rgba(11,26,60,.14);background:rgba(255,255,255,.75);border-radius:15px;padding:20px 18px;display:flex;flex-direction:column;gap:6px;opacity:0;animation:obIn .45s cubic-bezier(.22,.61,.36,1) var(--d) forwards;}
.og-row b{font-family:'IBM Plex Sans','SG fb',sans-serif;font-size:28px;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;}
.og-row span{font-size:14px;color:#55617A;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.og-fine{max-width:560px;margin:14px auto 0;font-size:12px;color:#8590A6;line-height:1.5;}
@media(max-width:640px){.og-rows{grid-template-columns:1fr;gap:10px;margin-bottom:24px;}.og-row{flex-direction:row;align-items:baseline;justify-content:space-between;gap:12px;padding:14px 16px;}.og-row b{font-size:22px;}.og-row span{text-align:right;}.og-total{margin-bottom:22px;}.og-total span{font-size:48px;}}
@media(prefers-reduced-motion:reduce){.og-row,.og-total{animation:none;opacity:1;}}
body.dark .og-ctx,body.dark .og-row span{color:#AFBAD1;}
body.dark .og-total span{color:#4D9FFF;}
body.dark .og-total small{color:#C9D3E5;}
body.dark .og-row{background:#131A2A;border-color:#2A3550;}
body.dark .og-row b{color:#E8EDF7;}
@media(max-width:760px){#ob-sizes,#ob-cats,#ob-goals,#ob-origins{grid-template-columns:repeat(2,1fr);}}
.ob-card{border:1px solid rgba(11,26,60,.16);background:rgba(255,255,255,.75);border-radius:15px;padding:24px 26px 20px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:12px;font-size:15.5px;font-weight:550;color:var(--ink);transition:border-color .15s,transform .15s,background .15s;}
.ob-card svg{width:26px;height:26px;color:#39424F;}
.ob-card:hover{border-color:#0067E8;background:#fff;transform:translateY(-2px);}
.ob-name{max-width:430px;margin:0 auto 34px;text-align:left;}
#ob-nom{width:100%;box-sizing:border-box;border:1px solid #D9D9DE;border-radius:999px;padding:12px 18px;font:inherit;font-size:15px;outline:none;background:#fff;}
#ob-nom:focus{border-color:#0B1A3C;}
.ob-prefs{margin-top:24px;}
.ob-prefs b{display:block;font-size:15px;font-weight:650;color:var(--ink);margin-bottom:10px;}
.ob-ptit{font-size:13.5px;font-weight:650;color:var(--ink);margin-bottom:4px;}
.ob-prefs p{color:#55617A;font-size:13px;font-weight:450;line-height:1.6;margin:0 0 10px;}
.ob-chk{display:flex;gap:9px;align-items:flex-start;font-size:13.5px;font-weight:500;color:var(--ink);cursor:pointer;margin:10px 0 12px;}
.ob-chk input{margin-top:2px;accent-color:#0067E8;}
.ob-pnote{margin-top:2px;}
.ob-plink a{color:var(--ink);font-weight:600;text-decoration:underline;text-underline-offset:3px;}
body.dark #ob-nom{background:#131A2A;border-color:#2A3550;color:var(--ink);}
body.dark .ob-prefs b,body.dark .ob-ptit,body.dark .ob-chk,body.dark .ob-plink a{color:#E8EDF7;}
body.dark .ob-prefs p{color:#AFBAD1;}
body.dark .lg-lab{color:#E8EDF7;}
.ob-prec{max-width:460px;margin:24px auto 0;display:flex;gap:10px;animation:obIn .28s cubic-bezier(.22,.61,.36,1);}
.ob-prec input{flex:1;box-sizing:border-box;border:1px solid #D9D9DE;border-radius:999px;padding:12px 18px;font:inherit;font-size:15px;outline:none;background:#fff;color:var(--ink);}
.ob-prec input:focus{border-color:#0B1A3C;}
.ob-prec button{flex:none;width:46px;border:none;border-radius:999px;background:#121418;color:#fff;font-size:18px;cursor:pointer;}
body.dark .ob-prec input{background:#131A2A;border-color:#2A3550;color:#E8EDF7;}
body.dark .ob-prec button{background:#E8ECF5;color:#0B0F17;}
.ob-dots{position:fixed;left:0;right:0;bottom:26px;display:flex;gap:9px;justify-content:center;z-index:2;}
.ob-dots i{width:8px;height:8px;border-radius:999px;background:rgba(11,26,60,.18);transition:all .2s;}
.ob-dots i.on{width:22px;background:#121418;}
.ob-dots i.done{background:rgba(11,26,60,.42);cursor:pointer;}
.ob-dots i.done:hover{background:#121418;transform:scale(1.25);}
body.dark .ob-dots i.done{background:rgba(255,255,255,.45);}
body.dark .ob-dots i.done:hover{background:#E8EDF7;}
body.dark #ob{background:#0B0F17;}
body.dark #ob h2,body.dark .ob-th span{color:#E8EDF7;}
body.dark .ob-th.on{border-color:#E8EDF7;}
body.dark .ob-card{background:rgba(19,26,42,.8);border-color:#2A3550;color:#D6DEEF;}
body.dark .ob-card svg{color:#8E9AB1;}
body.dark .ob-card:hover{border-color:#4D9FFF;background:#131A2A;}
body.dark .ob-dots i{background:rgba(255,255,255,.2);}
body.dark .ob-dots i.on{background:#E8EDF7;}
body.dark .ob-next{background:#E8ECF5;color:#0B0F17;}
@media(max-width:640px){.ob-in{padding-top:8vh;}.ob-next{min-width:0;width:100%;}}
@media(max-width:640px){.ob-in{padding-left:16px;padding-right:16px;}.ob-themes{gap:12px;}.ob-th{flex:1 1 0;min-width:0;}.ob-prev{width:100%;height:auto;aspect-ratio:3/2;}#ob h2{font-size:28px;margin-bottom:30px;}.ob-cards{gap:12px;}.ob-card{padding:18px 12px 16px;}}

/* guest footer (navy, marketing) */
#gfoot{display:none;}
body.guest #gfoot{display:block;position:relative;z-index:1;width:100%;padding:26px 22px 32px;box-sizing:border-box;}
.gf-card{max-width:1304px;margin:0 auto;background:#fff;border:1px solid #EAEEF4;border-radius:22px;padding:44px 46px 24px;box-sizing:border-box;}
.gf-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr 1.1fr 1fr;gap:26px;}
.gf-brand .b{display:flex;align-items:center;gap:10px;font-weight:800;font-size:18.5px;color:var(--ink);}
.gf-brand img{height:30px;display:block;}
.gf-brand p{margin:12px 0 0;color:var(--g2);font-size:13.5px;line-height:1.65;font-weight:450;max-width:240px;}
.gf-col b{display:block;font-size:13.5px;font-weight:650;color:var(--ink);margin-bottom:14px;}
.gf-col a,.gf-col button{display:block;background:none;border:none;color:#49536A;font:inherit;font-size:13.5px;font-weight:450;text-decoration:none;padding:0;margin:0 0 11px;cursor:pointer;text-align:left;}
.gf-col a:hover,.gf-col button:hover{color:var(--ink);}
.gf-base{margin-top:28px;padding-top:18px;border-top:1px solid #E8ECF2;color:var(--g2);font-size:12.5px;font-weight:600;}
.gf-mount{display:block;margin-top:74px;}
@media(max-width:1000px){.gf-grid{grid-template-columns:1fr 1fr;row-gap:26px;}}
body.dark .gf-card{background:#131A2A;border-color:#2A3550;}
body.dark .gf-brand .b,body.dark .gf-col b{color:#E8EDF7;}
body.dark .gf-col a,body.dark .gf-col button{color:#AFBAD1;}
body.dark .gf-col a:hover,body.dark .gf-col button:hover{color:#E8EDF7;}
body.dark .gf-base{border-top-color:#232E47;}
#home-note{display:none;color:var(--g2);font-size:15px;font-weight:550;margin:-10px 0 24px;text-align:center;}
body.guest #home-note{display:block;}
#rd-btn{display:flex;align-items:center;gap:10px;width:100%;border:none;background:none;border-radius:10px;padding:10px 10px;font:inherit;font-weight:700;font-size:15.5px;cursor:pointer;color:var(--ink);margin:-10px 0 14px;text-align:left;}
#rd-btn:hover{background:#E4E9F0;}
#rd-btn.on{background:#DCE4EE;}
#rd-btn svg{width:18px;height:18px;flex:none;}
.try{margin-left:auto;background:#004FD1;color:#fff;font-size:10.5px;font-weight:800;border-radius:999px;padding:3px 9px;letter-spacing:.3px;animation:tryp 2.2s infinite;}
@keyframes tryp{0%,100%{box-shadow:0 0 0 0 rgba(0,95,246,.5);}55%{box-shadow:0 0 0 7px rgba(0,95,246,0);}}
.rd-on{margin-left:auto;background:var(--green);color:#fff;border-radius:999px;font-size:11px;font-weight:800;padding:3px 9px;}
.rd-empty{border:1.5px dashed #c9d2e2;border-radius:14px;padding:22px;color:var(--g2);font-size:15px;font-weight:600;line-height:1.6;max-width:900px;}
body.dark .rd-empty{border-color:#2A3550;}

/* ── about tab (the old marketing site, condensed) ── */
#about{display:none;flex:1;background:#fff;overflow-y:auto;padding:52px 36px 90px;}
#about.on{display:block;}
.ab-in{max-width:1111px;margin:0 auto;}
.ab-hero{text-align:center;margin-bottom:56px;}
.ab-hero h2{font-family:'IBM Plex Sans','SG fb',sans-serif;font-size:38px;line-height:1.12;margin:0 0 14px;letter-spacing:-.5px;}
.ab-hero p{color:var(--g2);font-size:17.5px;line-height:1.6;font-weight:600;max-width:640px;margin:0 auto 26px;}
.ab-cta{background:#0B1A3C;color:#fff;border:none;border-radius:999px;padding:14px 32px;font:inherit;font-weight:800;font-size:16px;cursor:pointer;}
.ab-cta:hover{filter:brightness(1.25);}
.ab-sec{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.8px;color:var(--g2);margin:0 0 18px;text-align:center;}
.ab-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:56px;}
.ab-step{border:1px solid var(--border);border-radius:16px;padding:22px;}
.ab-step .n{width:30px;height:30px;border-radius:50%;background:#0B1A3C;color:#fff;font-weight:800;font-size:15px;display:flex;align-items:center;justify-content:center;margin-bottom:12px;}
.ab-step h3{margin:0 0 7px;font-size:17px;}
.ab-step p{margin:0;color:var(--g2);font-size:14.5px;line-height:1.55;font-weight:600;}
.ab-tiers{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:48px;}
.ab-tier{border:1px solid var(--border);border-radius:16px;padding:20px 14px 16px;text-align:center;display:flex;flex-direction:column;gap:7px;position:relative;}
.ab-tier.feat{border:1.5px solid #005FF6;box-shadow:0 12px 32px -18px rgba(0,95,246,.5);}
.ab-tier .bdg{position:absolute;top:-10px;left:50%;transform:translateX(-50%);background:#005FF6;color:#fff;font-size:11px;font-weight:800;border-radius:999px;padding:3px 10px;white-space:nowrap;}
.ab-tier b{font-size:15.5px;}
.ab-tier .pr{font-size:21px;font-weight:800;}
.ab-tier .pr small{font-size:12.5px;font-weight:600;color:var(--g2);}
.ab-tier span{color:var(--g2);font-size:12.8px;line-height:1.45;font-weight:600;}
.ab-tier a{margin-top:auto;display:block;border:1.5px solid #c9c9cf;border-radius:999px;padding:8px 0;font-weight:800;font-size:13.5px;color:var(--ink);text-decoration:none;}
.ab-tier a:hover{border-color:#0B1A3C;}
.ab-tier.feat a{background:#005FF6;border-color:#005FF6;color:#fff;}
.ab-links{display:flex;gap:24px;justify-content:center;border-top:1px solid var(--border);padding-top:26px;flex-wrap:wrap;}
.ab-links a{color:var(--g2);font-size:14px;font-weight:700;text-decoration:none;}
.ab-links a:hover{color:var(--ink);}
@media(max-width:900px){.ab-steps{grid-template-columns:1fr;}.ab-tiers{grid-template-columns:repeat(2,1fr);}.ab-hero h2{font-size:30px;}#about{padding:34px 18px 70px;}}

/* ═══════════ MOTION SYSTEM (micro-interactions, GPU only) ═══════════ */
@media (prefers-reduced-motion: no-preference) {
  /* presse : feedback tactile sur tout ce qui se clique */
  .go,.ghost,.hd-btn,.gtop-si,.gtop-go,.ab-cta,.pr-card .cta,.lg-go,.lg-google,.dc-send,.home-send,
  .up-pill,.acct,.rico,.dico,.fch,.dc-quick button,.ag-save,.aplus,.home-plus,.dc-plus,.stopbtn,
  #nc-btn,#an-btn,#ag-btn,#rd-btn,#sb-tog,#dc-tog,#dc-new,.camp,.up-card,.gsol>button,.gtop-links button{
    transition:transform .12s ease,background .15s ease,border-color .15s ease,box-shadow .18s ease,color .15s ease;
  }
  .go:active,.ghost:active,.hd-btn:active,.gtop-si:active,.gtop-go:active,.ab-cta:active,.pr-card .cta:active,
  .lg-go:active,.lg-google:active,.dc-send:active,.home-send:active,.up-pill:active,.rico:active,.dico:active,
  .fch:active,.dc-quick button:active,.ag-save:active,#nc-btn:active,#an-btn:active,#ag-btn:active,#rd-btn:active,
  .up-card:active,.camp:active{transform:scale(.97);}
  /* survols qui lèvent */
  .pr-card,.ab-step,.ab-tier{transition:transform .18s ease,border-color .18s ease,box-shadow .2s ease;}
  .pr-card:hover,.ab-step:hover,.ab-tier:hover{transform:translateY(-3px);box-shadow:0 14px 30px -18px rgba(11,26,60,.25);}
  .camp{transition:background .15s ease,transform .15s ease;}
  .camp:hover{transform:translateX(2px);}
  .home-send svg,.dc-send svg{transition:transform .15s ease;}
  .home-send:hover svg,.dc-send:hover svg{transform:translateX(2px);}
  /* entrées de vues */
  #home.on,#about.on,#pricing.on,#login.on,#fp.on{animation:viewIn .26s cubic-bezier(.2,.7,.3,1) both;}
  /* modales : voile + carte */
  #nc-bg.on,#ml-bg.on,#us-bg.on,#ev-bg.on,#rl-bg.on,#gs-bg.on,#dm-bg.on{animation:veilIn .18s ease both;}
  #nc-bg.on .nc-card,#ml-bg.on .nc-card,#us-bg.on .nc-card,#ev-bg.on .nc-card,#rl-bg.on .nc-card,#gs-bg.on .nc-card,#dm-bg.on .nc-card{animation:popIn .22s cubic-bezier(.2,.8,.3,1.1) both;}
  /* menus déroulants */
  .acct-menu.on{animation:menuUp .16s cubic-bezier(.2,.8,.3,1) both;transform-origin:bottom left;}
  .cmenu,.home-menu.on{animation:menuDown .16s cubic-bezier(.2,.8,.3,1) both;transform-origin:top right;}
  .gsol.on .gsol-menu,.gsol:hover .gsol-menu{animation:menuDown .18s cubic-bezier(.2,.8,.3,1) both;transform-origin:top left;}
  /* table : cascade à l'ouverture d'une mission */
  .list.anim .row{animation:rowIn .3s cubic-bezier(.2,.7,.3,1) both;}
  .list.anim .row:nth-child(2){animation-delay:.02s}.list.anim .row:nth-child(3){animation-delay:.04s}
  .list.anim .row:nth-child(4){animation-delay:.06s}.list.anim .row:nth-child(5){animation-delay:.08s}
  .list.anim .row:nth-child(6){animation-delay:.10s}.list.anim .row:nth-child(7){animation-delay:.12s}
  .list.anim .row:nth-child(8){animation-delay:.14s}.list.anim .row:nth-child(9){animation-delay:.16s}
  .list.anim .row:nth-child(10){animation-delay:.18s}.list.anim .row:nth-child(11){animation-delay:.20s}
  .list.anim .row:nth-child(12){animation-delay:.22s}.list.anim .row:nth-child(n+13){animation-delay:.24s}
  .det{animation:detIn .22s cubic-bezier(.2,.7,.3,1) both;}
  .trv{animation:rowIn .28s ease both;}
  /* chat : dernier message qui arrive */
  .dc-m:last-child{animation:msgIn .22s cubic-bezier(.2,.8,.3,1) both;}
  /* colombe de l'accueil : flottement discret */
  .home-mark{animation:floaty 3.4s ease-in-out infinite alternate;}
  /* replis fluides */
  aside{transition:width .34s cubic-bezier(.32,.72,0,1),padding .34s cubic-bezier(.32,.72,0,1);}
  /* ouverture/fermeture douce de la sidebar : le contenu s'efface AVANT le repli, réapparaît APRÈS l'ouverture (sideToggle) */
  body.s-closing aside>*:not(#side-rail){opacity:0;transform:translateX(-6px);transition:opacity .14s ease,transform .14s ease;}
  body.s-opening aside>*:not(#side-rail){min-width:252px;animation:sideIn .28s cubic-bezier(.2,.8,.3,1) .12s both;}
  body.s-railin aside #side-rail{animation:sideIn .22s ease .16s both;}
  @keyframes sideIn{from{opacity:0;transform:translateX(-6px)}to{opacity:1;transform:none}}
  #dovchat{transition:width .18s ease;}
  #dovchat.noanim{transition:none;}
  /* focus : halo doux */
  .home-bar:focus-within,.dc-box:focus-within{box-shadow:0 2px 10px rgba(11,26,60,.06),0 0 0 3px rgba(11,94,215,.1);}
  #q:focus,#lg-email:focus,#gs-email:focus{box-shadow:0 0 0 3px rgba(11,94,215,.1);}
  .sw i,.sw i::after{transition:background .18s ease,left .18s cubic-bezier(.3,1.4,.4,1);}
}
@keyframes viewIn{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:none;}}
@keyframes veilIn{from{opacity:0;}to{opacity:1;}}
@keyframes popIn{from{opacity:0;transform:scale(.96) translateY(6px);}to{opacity:1;transform:none;}}
@keyframes menuUp{from{opacity:0;transform:scale(.97) translateY(4px);}to{opacity:1;transform:none;}}
@keyframes menuDown{from{opacity:0;transform:scale(.98) translateY(-4px);}to{opacity:1;transform:none;}}
@keyframes rowIn{from{opacity:0;transform:translateY(5px);}to{opacity:1;transform:none;}}
@keyframes detIn{from{opacity:0;transform:translateY(-5px);}to{opacity:1;transform:none;}}
@keyframes msgIn{from{opacity:0;transform:translateY(6px) scale(.98);}to{opacity:1;transform:none;}}
@keyframes floaty{from{transform:translateY(0);}to{transform:translateY(-4px);}}

/* ── Radar v2 : hero + config card ── */
.rd-wrap{max-width:1100px;margin:0 auto;padding:26px 24px 60px;}
.rd-hero{position:relative;background:linear-gradient(135deg,#F4F9FF,#E9F1FD);border:1px solid #DCE7F5;border-radius:16px;padding:22px 28px;overflow:hidden;margin-bottom:16px;}
.rd-hero::before{content:'';position:absolute;right:0;top:0;bottom:0;width:58%;background-image:radial-gradient(rgba(0,79,209,.16) 1.1px,transparent 1.4px);background-size:15px 15px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 45%);mask-image:linear-gradient(90deg,transparent,#000 45%);pointer-events:none;}
.rd-kick{display:flex;align-items:center;gap:12px;margin-bottom:16px;position:relative;}
.rd-kick b{font-size:12px;letter-spacing:.14em;color:#5B6B82;font-weight:700;}
.rd-pill{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid #DCE7F5;border-radius:999px;padding:5px 12px;font-size:12.5px;font-weight:700;color:#24344D;}
.rd-pill i{width:8px;height:8px;border-radius:50%;background:#16A34A;display:inline-block;}
.rd-hero h1{font-family:'IBM Plex Sans','SG fb',sans-serif;font-size:24px;line-height:1.2;margin:0 0 8px;letter-spacing:-.4px;color:var(--ink);position:relative;}
.rd-hero h1 span{color:#005FF6;}
.rd-hero>p{margin:0;color:#4A5568;font-size:14px;line-height:1.55;max-width:56%;font-weight:550;position:relative;}
.rd-dove{position:absolute;right:48px;top:30px;width:150px;transform:rotate(-4deg);filter:drop-shadow(0 16px 26px rgba(11,26,60,.2));animation:floaty 3.8s ease-in-out infinite alternate;}
.rd-togrow{position:absolute;right:28px;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:12px;}
.rd-togrow .lab b{display:block;font-size:15px;color:var(--ink);}
.rd-togrow .lab small{color:#5B6B82;font-size:12.5px;font-weight:600;}
.rd-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:22px 24px;margin-bottom:18px;box-shadow:0 1px 3px rgba(11,26,60,.05);}
.rd-chead{display:flex;align-items:center;gap:10px;margin-bottom:14px;}
.rd-chead svg{width:19px;height:19px;color:var(--ink);flex:none;}
.rd-chead b{font-size:13px;letter-spacing:.08em;text-transform:uppercase;}
.rd-ex{margin-left:auto;color:#0B5ED7;font-weight:700;font-size:13.5px;cursor:pointer;background:none;border:none;font-family:inherit;}
.rd-box{border:1.5px solid #C9D3E0;border-radius:16px;background:#fff;padding:16px 14px 10px;display:flex;flex-direction:column;gap:6px;transition:border-color .15s ease,box-shadow .18s ease;}
.rd-box:focus-within{border-color:#0B1A3C;box-shadow:0 2px 10px rgba(11,26,60,.06),0 0 0 3px rgba(11,94,215,.1);}
.rd-ta{width:100%;min-height:84px;max-height:220px;border:none;outline:none;padding:0 4px;font:inherit;font-size:15px;line-height:1.55;resize:none;box-sizing:border-box;background:transparent;color:var(--ink);overflow-y:auto;}
.rd-attach{width:38px;height:38px;border-radius:50%;border:1.5px solid #C9D3E0;background:#fff;color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;flex:none;}
.rd-attach:hover{border-color:#0B1A3C;}
.rd-attach svg{width:17px;height:17px;}
.rd-tools{display:flex;align-items:center;gap:8px;margin-top:4px;flex-wrap:wrap;}
.rd-chip{display:inline-flex;align-items:center;gap:7px;border:1px solid #C9D3E0;background:#fff;border-radius:10px;padding:8px 13px;font:inherit;font-size:13.5px;font-weight:650;cursor:pointer;color:#24344D;transition:transform .12s ease,border-color .15s ease;}
.rd-chip:hover{border-color:#0B1A3C;}
.rd-chip:active{transform:scale(.97);}
.rd-chip svg{width:15px;height:15px;}
.rd-go{margin-left:auto;background:#0B1A3C;color:#fff;border:none;border-radius:11px;padding:12px 20px;font:inherit;font-weight:750;font-size:14.5px;cursor:pointer;display:inline-flex;gap:9px;align-items:center;transition:transform .12s ease,filter .15s ease;}
.rd-go:hover{filter:brightness(1.25);}
.rd-go:active{transform:scale(.97);}
.rd-go svg{width:16px;height:16px;}
.rd-flabel{font-size:12.5px;color:#5B6B82;font-weight:650;}
body.dark .rd-hero{background:linear-gradient(135deg,#101A2E,#0E1626);border-color:#243049;}
body.dark .rd-hero::before{background-image:radial-gradient(rgba(77,159,255,.18) 1.1px,transparent 1.4px);}
body.dark .rd-pill{background:#131A2A;border-color:#2A3550;color:#C4CEE2;}
body.dark .rd-hero>p{color:#AAB6CC;}
body.dark .rd-togrow .lab small{color:#8A96A8;}
body.dark .rd-card{background:#111827;border-color:#232C40;}
body.dark .rd-box{background:#131A2A;border-color:#2A3550;}
body.dark .rd-attach{background:#131A2A;border-color:#2A3550;color:var(--ink);}
body.dark .rd-chip{background:#131A2A;border-color:#2A3550;color:#C4CEE2;}
body.dark .rd-kick b{color:#8A96A8;}

/* ═══ DASHBOARD PALETTE — classic & restrained (13/10) ═══
   navy ink · ONE accent blue · slate greys · 3 meaning colours only
   (green = quote in, amber = waiting too long, red = action required). Overrides the earlier per-feature colours. */
:root{--ink:#0F1E3D;--ac:#1E3A8A;--ac-bg:#EFF3FB;--ac-bd:#C9D5EE;--n1:#334155;--n2:#64748B;--n3:#94A3B8;--nbg:#F1F5F9;--nbd:#E2E8F0;
  --ok:#166534;--ok-bg:#ECFDF3;--ok-bd:#BBE5C8;--warn:#92400E;--warn-bg:#FEF7E6;--warn-bd:#F3DDA8;--bad:#991B1B;--bad-bg:#FDF2F2;--bad-bd:#F1C4C4;}
/* supplier type: one neutral chip for every type */
.ty,.ty-mf,.ty-tr,.ty-ds,.ty-sv,.ty-sp,.ty-ot{background:var(--nbg)!important;color:var(--n1)!important;font-weight:550;}
/* reliability: bars in ink, label neutral (the bar count carries the meaning) */
.rrel i{background:var(--nbd)!important;}
.rrel.r3 i,.rrel.r2 i:nth-child(-n+2),.rrel.r1 i:nth-child(1){background:var(--n1)!important;}
.rrel b,.rrel.r3 b,.rrel.r2 b,.rrel.r1 b{color:var(--n1)!important;font-weight:550;}
/* price / status chips */
.act{font-weight:600;border:1px solid transparent;}
.a-quote{background:var(--ok-bg)!important;color:var(--ok)!important;border-color:var(--ok-bd)!important;}
.a-talk{background:var(--ac-bg)!important;color:var(--ac)!important;border-color:var(--ac-bd)!important;}
.a-wait,.a-todo{background:var(--nbg)!important;color:var(--n1)!important;border-color:var(--nbd)!important;}
.a-wait svg{animation:none!important;}
.a-off,.a-none{background:#fff!important;color:var(--n3)!important;border-color:var(--nbd)!important;}
.a-ask{background:var(--bad-bg)!important;color:var(--bad)!important;border-color:var(--bad-bd)!important;box-shadow:none!important;animation:none!important;}
.pst .when{color:var(--n3)!important;} .pst .when.late{color:var(--warn)!important;}
.rprix{color:var(--ink)!important;}
/* stage bar + primary actions in navy */
.sg.done i{background:var(--n1)!important;} .sg.done{color:var(--n2)!important;}
.sg.cur i{background:var(--ac)!important;box-shadow:0 0 0 4px rgba(30,58,138,.14)!important;animation:none!important;}
.sg-go,.ncol-f .go,.dq-f button.go,#selbar .sb-n{background:var(--ink)!important;}
.sg-go:hover{filter:brightness(1.25)!important;}
/* selection, checkboxes, menus */
.ck input:checked+i{background-color:var(--ac)!important;border-color:var(--ac)!important;}
.row.picked{background:var(--ac-bg)!important;} .row.picked .rnum{background:#E2E9F6!important;}
#selbar .sb-p{background:var(--nbg)!important;color:var(--ink)!important;}
#selbar .sb-p:hover{background:var(--nbd)!important;}
#selbar button.warn{color:var(--bad)!important;}
.fpill{background:var(--nbg)!important;color:var(--n1)!important;border-color:var(--nbd)!important;} .fpill button{color:var(--n1)!important;}
/* Dov's questions, chat rail, custom columns */
.dq-o.sel{background:var(--ac-bg)!important;border-color:var(--ac)!important;} .dq-o.sel .n{background:var(--ac)!important;}
.dq-o:hover,.dq-o.kb{background:var(--nbg)!important;border-color:var(--nbd)!important;}
.dq-prog i.d{background:var(--ac)!important;}
#dc-rail .dc-rl{background:var(--ac-bg)!important;color:var(--ac)!important;}
.lhead .newcol button:hover{background:var(--ac-bg)!important;border-color:var(--ac)!important;color:var(--ac)!important;}
.shim{background:linear-gradient(90deg,var(--n3) 0%,var(--n3) 40%,var(--ac) 50%,var(--n3) 60%,var(--n3) 100%)!important;background-size:250% 100%!important;-webkit-background-clip:text!important;background-clip:text!important;}
.ncol-sug button:hover{background:var(--ac-bg)!important;color:var(--ac)!important;}
.mi-mail svg,.mi-mail em{color:var(--ac)!important;}
.rlnk .lk{color:var(--n2)!important;}
/* dark mode keeps the same logic */
body.dark .ty,body.dark [class*="ty-"]{background:#1A2235!important;color:#C9D4EA!important;}
body.dark .a-wait,body.dark .a-todo{background:#1A2235!important;color:#C9D4EA!important;border-color:#2A3550!important;}
body.dark .a-off,body.dark .a-none{background:transparent!important;color:#7E8BA5!important;border-color:#2A3550!important;}
body.dark .a-talk{background:#162447!important;color:#9DB5F0!important;border-color:#2A3D6E!important;}
body.dark .a-quote{background:#12301F!important;color:#86D5A2!important;border-color:#1F4D33!important;}
body.dark .a-ask{background:#3A1717!important;color:#F2A3A3!important;border-color:#5C2626!important;}
body.dark .rrel.r3 i,body.dark .rrel.r2 i:nth-child(-n+2),body.dark .rrel.r1 i:nth-child(1){background:#C9D4EA!important;}
body.dark .rrel b{color:#C9D4EA!important;} body.dark .rprix{color:#E8ECF5!important;}

/* ═══ legibility pass (13/10): bigger text, stronger contrast, taller rows, nothing hidden behind hover ═══ */
.lgrid>span,.lgrid>select{padding:12px 14px;}
.rnom{font-size:15.5px;}
.rgeo,.rrel b,.ty,.tb{font-size:14px!important;}
.lhead span,.lhead .hcell{font-size:12.5px!important;color:#334155!important;}
.act{font-size:13.5px!important;padding:6px 11px 6px 9px!important;}
.rprix{font-size:16px!important;}
.pst .when{font-size:12.5px!important;color:#475569!important;font-weight:550!important;}
.pst .when.late{color:var(--warn)!important;}
.row{border-bottom-color:#E2E8F0!important;}
.row.z{background:#F6F8FB!important;}
.row:hover{background:#EEF2F7!important;}
.rnum b{font-size:12.5px;color:#475569;}
/* row number at rest, checkbox on hover / when something is selected (Ethan 20/10) */
.ck i{width:18px;height:18px;border-color:#94A3B8;}
/* column menu visible at rest */
.hdots{opacity:.55!important;}
.hdots:hover{opacity:1!important;}
/* contact = words, not icons */
.rctc{gap:6px;flex-wrap:nowrap;}
.tb{display:inline-flex;align-items:center;height:28px;padding:0 10px;border-radius:7px;border:1px solid #CBD5E1;background:#fff;color:#0F1E3D;font-weight:600;text-decoration:none;white-space:nowrap;transition:background .15s,border-color .15s;}
.tb:hover{background:#F1F5F9;border-color:#64748B;}
.tb.off{color:#94A3B8;border-color:#E2E8F0;background:#F8FAFC;cursor:default;}
.tb.g{color:#475569;font-weight:550;}
/* mission header */
.mhead{padding:22px 20px 16px;background:#fff;border-bottom:1px solid #E2E8F0;}
.mhead h1{margin:0 0 10px;font-family:'IBM Plex Sans','SG fb',Inter,sans-serif;font-size:24px;font-weight:650;letter-spacing:-.02em;color:#0F1E3D;line-height:1.2;}
.msum{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:15px;color:#334155;}
.ms-i b{color:#0F1E3D;font-weight:700;}
.ms-i.ok b{color:var(--ok);}
.ms-i.bad{color:var(--bad);font-weight:600;} .ms-i.bad b{color:var(--bad);}
body.dark .mhead{background:#0E1422;border-color:#1C2639;} body.dark .mhead h1,body.dark .ms-i b{color:#E8ECF5;} body.dark .msum{color:#C9D4EA;}
body.dark .tb{background:#121A2B;border-color:#2A3550;color:#E8ECF5;} body.dark .tb.off{color:#5B6B85;background:transparent;}
body.dark .row.z{background:#0F1524!important;} body.dark .row:hover{background:#151E31!important;}
body.dark .lhead span,body.dark .lhead .hcell{color:#C9D4EA!important;} body.dark .pst .when{color:#97A3BB!important;}
@media(max-width:1000px){.mhead h1{font-size:20px;}.msum{font-size:14px;gap:6px 14px;}}

/* ═══ sidebar lifting (13/10): one obvious main action, readable missions, calm upgrade card ═══ */
aside{background:#F8FAFC!important;}
#nc-btn{background:var(--ink)!important;color:#fff!important;border-radius:11px!important;padding:11px 14px!important;margin:6px 4px 10px!important;font-weight:650!important;font-size:15px!important;justify-content:flex-start;box-shadow:0 1px 2px rgba(15,30,61,.2);}
#nc-btn:hover{filter:brightness(1.25);}
#nc-btn svg{color:#fff!important;}
aside>button:not(#nc-btn){font-size:15px!important;color:#1E293B!important;}
#rd-try{background:#fff!important;color:#475569!important;border:1px solid #CBD5E1!important;font-weight:600!important;box-shadow:none!important;}
.side-lab{font-size:12px!important;color:#475569!important;letter-spacing:.06em!important;text-transform:uppercase;margin-top:14px!important;}
#camps .camp{border-radius:10px!important;padding:10px 10px 10px 12px!important;position:relative;margin-bottom:2px;}
#camps .camp .t{white-space:nowrap!important;display:block;overflow:hidden;text-overflow:ellipsis;font-size:14.5px!important;line-height:1.35!important;font-weight:600!important;color:#1E293B!important;} /* one line max (Ethan 20/10) */
#camps .camp .ctxt{min-width:0;flex:1;} #camps .camp .dots{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:inherit;} #camps .camp:hover .ctxt,#camps .camp .dots.on~.ctxt{padding-right:0;} #camps .camp .ctxt>div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
#camps .camp .ow{font-size:11.5px;font-weight:600;color:#3869B8;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
body.dark #camps .camp .ow{color:#9CBEF5;}
#camps .camp .s{font-size:12.5px!important;color:#64748B!important;margin-top:3px;font-weight:500!important;text-transform:none!important;letter-spacing:0!important;}
#camps .camp:hover{background:#EEF2F7!important;}
#camps .camp.on{background:#fff!important;box-shadow:0 0 0 1px #E2E8F0,0 2px 6px -2px rgba(15,30,61,.12)!important;}
#camps .camp.on::before{content:'';position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:3px;background:var(--ac);}
#camps .camp.on .t{color:var(--ink)!important;font-weight:700!important;}
.cm-ask{color:var(--bad);font-weight:650;}
.up-card{background:#fff!important;border:1px solid #E2E8F0!important;box-shadow:none!important;align-items:flex-start!important;}
.up-card .t{font-size:14.5px!important;color:var(--ink)!important;width:100%;}
.up-card .d{font-size:13px!important;color:#475569!important;font-weight:500!important;margin-top:2px;}
.up-card .ic{display:none!important;}
.upbar{height:6px;border-radius:6px;background:#E2E8F0;margin:10px 0 8px;overflow:hidden;}
.upbar i{display:block;height:100%;border-radius:6px;background:var(--ac);transition:width .6s;}
.upbar i.low{background:var(--warn);}
.uplink{font-size:13px;font-weight:650;color:var(--ac);}
.up-card:hover .uplink{text-decoration:underline;}
#acct-av,#rail-av{background:var(--ink)!important;color:#fff!important;}
#acct-name{font-size:14.5px!important;color:#1E293B!important;}
#acct-plan{font-size:12.5px!important;color:#475569!important;}
body.dark aside{background:#0B0F17!important;}
body.dark aside>button:not(#nc-btn),body.dark #camps .camp .t,body.dark #acct-name{color:#E2E8F0!important;}
body.dark #camps .camp.on{background:#121A2B!important;box-shadow:0 0 0 1px #2A3550!important;}
body.dark #camps .camp:hover{background:#121A2B!important;}
body.dark .up-card{background:#121A2B!important;border-color:#2A3550!important;} body.dark .up-card .t{color:#E8ECF5!important;} body.dark .upbar{background:#2A3550;}
body.dark #rd-try{background:transparent!important;color:#C9D4EA!important;border-color:#2A3550!important;}

/* mission ⋯ menu above the next missions + a real "delete" red */
#camps .camp:has(.cmenu){z-index:70;}
.cmenu{box-shadow:0 0 0 1px rgba(15,30,61,.06),0 16px 36px -12px rgba(15,30,61,.3)!important;border-color:#E2E8F0!important;}
.cmenu .sup{color:var(--bad)!important;}

/* reliability gets back its meaning colours — muted, classic tones */
.rrel.r3 i{background:#2F855A!important;} .rrel.r3 b{color:#276749!important;}
.rrel.r2 i:nth-child(-n+2){background:#C27C0E!important;} .rrel.r2 b{color:#975A16!important;}
.rrel.r1 i:nth-child(1){background:#C53030!important;} .rrel.r1 b{color:#9B2C2C!important;}
body.dark .rrel.r3 i{background:#68D391!important;} body.dark .rrel.r3 b{color:#9AE6B4!important;}
body.dark .rrel.r2 i:nth-child(-n+2){background:#F6AD55!important;} body.dark .rrel.r2 b{color:#FBD38D!important;}
body.dark .rrel.r1 i:nth-child(1){background:#FC8181!important;} body.dark .rrel.r1 b{color:#FEB2B2!important;}

/* ═══ dark mode legibility fixes (contrast-audited 13/10) ═══
   --ink turns light in dark mode → anything painted WITH --ink as a background must be inverted */
body.dark #nc-btn,body.dark .sg-go,body.dark #selbar .sb-n,body.dark .ncol-f .go,body.dark .dq-f button.go,body.dark .fc-go{background:#E2E8F0!important;color:#0B0F17!important;}
body.dark #nc-btn svg{color:#0B0F17!important;}
body.dark #acct-av,body.dark #rail-av{background:#E2E8F0!important;color:#0B0F17!important;}
body.dark .side-lab,body.dark .up-card .d,body.dark #acct-plan,body.dark #camps .camp .s{color:#A3B1C6!important;}
body.dark .uplink{color:#93B4F5!important;} body.dark .upbar i{background:#93B4F5;}
body.dark .ms-i.bad,body.dark .ms-i.bad b,body.dark .cm-ask{color:#FCA5A5!important;}
body.dark .ms-i.ok b{color:#86D5A2!important;}
body.dark .tb.off{color:#8794AD!important;border-color:#2A3550!important;}
body.dark .slogo.ini{color:#C9D4EA!important;background:#1A2235!important;}
body.dark .sg{color:#A3B1C6!important;} body.dark .sg.cur{color:#E8ECF5!important;} body.dark .sg.cur i{background:#93B4F5!important;}
body.dark .ck input:checked+i{background-color:#3B6FD8!important;border-color:#3B6FD8!important;}
body.dark .row.picked{background:#14213A!important;} body.dark .row.picked .rnum{background:#1A2A48!important;}
body.dark #dc-rail .dc-rl{background:#162447!important;color:#B7CBF5!important;}
body.dark .mi-mail svg,body.dark .mi-mail em{color:#93B4F5!important;}
body.dark #selbar .sb-p{background:#1A2235!important;color:#E8ECF5!important;}
body.dark #selbar button.warn{color:#FCA5A5!important;}
body.dark .fpill{background:#1A2235!important;color:#C9D4EA!important;border-color:#2A3550!important;} body.dark .fpill button{color:#C9D4EA!important;}
body.dark .dq-o.sel{background:#162447!important;border-color:#93B4F5!important;} body.dark .dq-o.sel .n{background:#3B6FD8!important;} body.dark .dq-prog i.d{background:#93B4F5!important;}
body.dark .pst .when.late{color:#F6C177!important;}
body.dark .cmenu .sup{color:#FCA5A5!important;}

body.dark .dq-o .t span,body.dark #ncolpop p,body.dark .dq-h small,body.dark #selbar .sb-l,body.dark .ncol-f span,body.dark #qpop small{color:#A3B1C6!important;}
body.dark .dq-o .t b,body.dark .dq-h b{color:#E8ECF5!important;}

body.dark .row{border-bottom-color:#1C2639!important;}
body.dark .lgrid>span,body.dark .lgrid>select{border-right-color:#1C2639!important;}
body.dark .dq-prog i{background:#2A3550!important;} body.dark .dq-prog i.d{background:#93B4F5!important;}

body.dark .rrel i{background:#2A3550!important;}
.ty{font-size:13px!important;padding:3px 8px!important;}

/* ═══ guest home sections — dark mode ═══ */
body.dark .pf-card{background:#121A2B;box-shadow:0 0 0 1px #1F2A40;}
body.dark .pf-h,body.dark .pf-tx h3,body.dark .st-head h2,body.dark .tr-tx h3,body.dark .fc-h{color:#E8ECF5;}
body.dark .pf-v2{background:linear-gradient(180deg,#0E1422,#121A2B);}
body.dark .pf-win{background:#0E1422;box-shadow:0 0 0 1px #1F2A40,0 10px 30px -10px rgba(0,0,0,.6);}
body.dark .pf-fade{background:linear-gradient(180deg,rgba(14,20,34,0),#0E1422);}
body.dark .pf-row{color:#E8ECF5;border-bottom-color:#1F2A40;}
body.dark .pf-row .t{background:#1A2235;color:#A3B1C6;}
body.dark .pf-row .c{background:#162447;color:#B7CBF5;}
body.dark .pf-row .r{background:#12301F;color:#86D5A2;}
body.dark .pf-row .p{background:#12301F;color:#9AE6B4;}
body.dark .pf-row b,body.dark .pf-row b.in{color:#E8ECF5;}
body.dark .pf-row.sel{background:#162447;}
body.dark .pf-tabs span{color:#A3B1C6;} body.dark .pf-tabs span.on{background:#162447;color:#B7CBF5;}
body.dark .pf-cur path{fill:#E8ECF5;stroke:#0B0F17;}
body.dark .pf-comp{background:#0E1422;color:#7E8BA5;box-shadow:0 0 0 1px #2A3D6E,0 20px 40px -12px rgba(61,134,248,.35);}
body.dark .pf-comp .tw{color:#E8ECF5;}
body.dark .pf-comp .bar i{border-color:#2A3550;}
body.dark .pf-chips span{background:#162447;color:#B7CBF5;border-color:#2A3D6E;}
body.dark .pf-scan{color:#A3B1C6;} body.dark .pf-scan b{color:#E8ECF5;}
body.dark .pf-send{background:#2A3550;} body.dark .pf-v1.ready .pf-send{background:#3B6FD8;}
body.dark .pf-side{background:#121A2B;box-shadow:-1px 0 0 #1F2A40;}
body.dark .pf-side div:not(.on){color:#A3B1C6;} body.dark .pf-side div.on{color:#B7CBF5;}
body.dark .pf-hl{background:#162447;box-shadow:inset 0 0 0 1px #2A3D6E;}
body.dark .pf-v3 .pf-side::after{background:linear-gradient(180deg,rgba(18,26,43,0),#121A2B);}
body.dark .pf-pane{background:linear-gradient(135deg,#0E1422,#121A2B);box-shadow:0 0 0 1px #1F2A40;}
body.dark .pf-stat b{color:#E8ECF5;} body.dark .pf-stat span{color:#A3B1C6;} body.dark .pf-stat i{background:#1F2A40;}
/* sources wall + stories + final CTA */
body.dark .tr-wm{color:#E8ECF5;opacity:1;}
body.dark .tr-st{color:#A3B1C6;} body.dark .tr-cell.done .tr-st{color:#86D5A2;}
body.dark .tr-cell.on .tr-wm svg{box-shadow:0 0 0 1px #2A3D6E,0 10px 24px -8px rgba(61,134,248,.45);}
body.dark .st-top b,body.dark .st-q,body.dark .st-stats div b,body.dark .st-foot b{color:#E8ECF5;}
body.dark .st-top span,body.dark .st-foot span,body.dark .st-note{color:#A3B1C6;}
body.dark .st-tag{background:#162447;color:#B7CBF5;}
body.dark .st-card:not(.c0){background:#0E1422;}
body.dark .st-dots i{background:#1F2A40;} body.dark .st-dots i.done{background:#3B6FD8;}
body.dark .fc-k{color:#A3B1C6;} body.dark .fc-ta{color:#E8ECF5;} body.dark .fc-row .mode{color:#A3B1C6;}
body.dark .fc-box.has .fc-go{background:#E2E8F0;color:#0B0F17;}
body.dark .fc-box{box-shadow:0 0 0 1px #2A3550,0 18px 40px -16px rgba(0,0,0,.6);}
body.dark .pf-live{color:#86D5A2!important;}

/* ═══ Radar — full page (13/10) ═══ */
.rdx-wrap{max-width:none!important;width:100%;padding:24px 28px 32px!important;box-sizing:border-box;min-height:calc(100vh - 140px);display:flex;flex-direction:column;gap:22px;}
.rdx{display:flex;flex-direction:column;gap:20px;flex:1;}
.rdx-top{display:flex;align-items:center;gap:22px;background:#fff;border:1px solid #E2E8F0;border-radius:18px;padding:22px 26px;}
.rdx-viz{position:relative;flex:none;width:92px;height:92px;border-radius:50%;background:radial-gradient(circle,#F1F5F9 0,#E9EEF5 100%);overflow:hidden;}
.rdx-viz i{position:absolute;border-radius:50%;border:1px solid #CBD5E1;}
.rdx-viz .r1{inset:8px}.rdx-viz .r2{inset:22px}.rdx-viz .r3{inset:36px}
.rdx-viz .sweep{inset:0;border:none;background:conic-gradient(from 0deg,rgba(30,58,138,0) 0deg,rgba(30,58,138,0) 290deg,rgba(30,58,138,.35) 360deg);opacity:0;}
.rdx-viz b{position:absolute;width:6px;height:6px;border-radius:50%;background:var(--ac);opacity:0;}
.rdx-viz .b1{top:22px;left:58px}.rdx-viz .b2{top:60px;left:24px}.rdx-viz .b3{top:66px;left:64px}
.rdx-viz img{position:absolute;width:30px;height:30px;left:31px;top:31px;}
.rdx.on .rdx-viz .sweep{opacity:1;animation:rdxSpin 3.2s linear infinite;}
.rdx.on .rdx-viz b{animation:rdxBlip 3.2s ease-out infinite;}
.rdx.on .rdx-viz .b2{animation-delay:1.1s}.rdx.on .rdx-viz .b3{animation-delay:2.1s}
@keyframes rdxSpin{to{transform:rotate(360deg)}}
@keyframes rdxBlip{0%,70%{opacity:0;transform:scale(.4)}78%{opacity:1;transform:scale(1.3)}100%{opacity:0;transform:scale(1)}}
.rdx-tit{flex:1;min-width:0;}
.rdx-tit small{display:block;font-size:12px;font-weight:700;color:#64748B;letter-spacing:.06em;text-transform:uppercase;}
.rdx-tit h1{margin:0 0 6px;font-family:'IBM Plex Sans','SG fb',Inter,sans-serif;font-size:32px;font-weight:650;letter-spacing:-.02em;color:var(--ink);}
.rdx-tit p{margin:0;font-size:15px;line-height:1.55;color:#475569;max-width:720px;}
.rdx-status{flex:none;display:flex;align-items:center;gap:12px;background:#F8FAFC;border:1px solid #E2E8F0;border-radius:14px;padding:12px 16px;}
.rdx-status b{display:block;font-size:15px;color:var(--ink);}
.rdx-status small{display:block;font-size:13px;color:#64748B;}
.rdx.on .rdx-status{background:var(--ok-bg);border-color:var(--ok-bd);} .rdx.on .rdx-status b{color:var(--ok);}
.rdx-sw input:checked+i{background:var(--ok)!important;}
.rdx-grid{flex:1;display:grid;grid-template-columns:minmax(0,1.75fr) minmax(300px,1fr);gap:20px;align-items:stretch;}
.rdx-card{background:#fff;border:1px solid #E2E8F0;border-radius:18px;padding:24px 26px;display:flex;flex-direction:column;}
.rdx-card h2{margin:0 0 6px;font-size:18px;font-weight:650;color:var(--ink);display:flex;align-items:center;gap:8px;}
.rdx-card h2 em{font-style:normal;font-size:12.5px;font-weight:700;background:var(--nbg);color:var(--n1);border-radius:999px;padding:2px 9px;}
.rdx-hint{margin:0 0 14px;font-size:14.5px;color:#475569;}
.rdx-ideas{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;}
.rdx-ideas span{font-size:13.5px;color:#64748B;font-weight:600;margin-right:2px;}
.rdx-ideas button{font:inherit;font-size:13.5px;font-weight:600;color:var(--n1);background:var(--nbg);border:1px solid var(--nbd);border-radius:9px;padding:7px 12px;cursor:pointer;}
.rdx-ideas button:hover{border-color:#94A3B8;color:var(--ink);}
.rdx-main .rd-box{flex:1;display:flex;flex-direction:column;border:1px solid #CBD5E1!important;border-radius:14px!important;padding:14px!important;background:#fff;}
.rdx-main .rd-box:focus-within{border-color:var(--ac)!important;box-shadow:0 0 0 3px rgba(30,58,138,.12);}
.rdx-main .rd-ta{flex:1;min-height:180px;border:none!important;outline:none;resize:none;font:inherit;font-size:16px!important;line-height:1.55;color:var(--ink);background:transparent;padding:2px!important;box-shadow:none!important;}
.rdx-main .rd-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:12px;}
.rdx-main .rd-chip{font-size:13.5px!important;}
.rdx-main .rd-go{margin-left:auto;background:var(--ink)!important;color:#fff!important;border-radius:11px!important;height:42px;padding:0 18px!important;font-size:14.5px!important;font-weight:650!important;}
.rdx-how{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px;}
.rdx-how div{display:flex;gap:10px;align-items:flex-start;background:#F8FAFC;border:1px solid #E2E8F0;border-radius:12px;padding:12px 14px;}
.rdx-how b{flex:none;width:24px;height:24px;border-radius:7px;background:var(--ink);color:#fff;font-size:12.5px;display:flex;align-items:center;justify-content:center;}
.rdx-how span{font-size:13.5px;line-height:1.45;color:#475569;} .rdx-how strong{color:var(--ink);}
.rdx-feed .rdx-list{display:flex;flex-direction:column;gap:10px;margin-top:10px;overflow:auto;}
.rdx-find{border:1px solid #E2E8F0;border-radius:12px;padding:12px 14px;}
.rdx-find .t{font-weight:650;color:var(--ink);font-size:14.5px;} .rdx-find .d{font-size:13.5px;color:#475569;margin-top:3px;} .rdx-find .m{font-size:12.5px;color:#64748B;margin-top:6px;}
.rdx-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px 10px;}
.rdx-empty b{font-size:16px;color:var(--ink);margin-top:16px;} .rdx-empty p{font-size:14px;color:#64748B;max-width:260px;margin:6px 0 0;line-height:1.5;}
.rdx-mini{position:relative;width:110px;height:110px;border-radius:50%;background:#F1F5F9;overflow:hidden;}
.rdx-mini i{position:absolute;border-radius:50%;border:1px dashed #CBD5E1;}
.rdx-mini i:nth-child(1){inset:14px}.rdx-mini i:nth-child(2){inset:36px}
.rdx-mini .sweep{inset:0;border:none;background:conic-gradient(from 0deg,transparent 0 300deg,rgba(30,58,138,.25) 360deg);opacity:.35;}
.rdx.on .rdx-mini .sweep{opacity:1;animation:rdxSpin 3.2s linear infinite;}
@media(max-width:1100px){.rdx-grid{grid-template-columns:1fr;}.rdx-how{grid-template-columns:1fr;}}
@media(max-width:700px){.rdx-wrap{padding:14px!important;}.rdx-top{flex-wrap:wrap;padding:18px;}.rdx-viz{width:64px;height:64px;}.rdx-viz img{width:22px;height:22px;left:21px;top:21px;}.rdx-viz .r1{inset:6px}.rdx-viz .r2{inset:16px}.rdx-viz .r3{inset:24px}.rdx-status{width:100%;}}
@media(prefers-reduced-motion:reduce){.rdx .sweep,.rdx b{animation:none!important;}}
body.dark .rdx-top,body.dark .rdx-card,body.dark .rdx-main .rd-box{background:#121A2B;border-color:#1F2A40!important;}
body.dark .rdx-tit h1,body.dark .rdx-card h2,body.dark .rdx-status b,body.dark .rdx-how strong,body.dark .rdx-empty b,body.dark .rdx-find .t,body.dark .rdx-main .rd-ta{color:#E8ECF5;}
body.dark .rdx-tit p,body.dark .rdx-hint,body.dark .rdx-how span,body.dark .rdx-empty p,body.dark .rdx-status small,body.dark .rdx-find .d,body.dark .rdx-find .m,body.dark .rdx-ideas span{color:#A3B1C6;}
body.dark .rdx-status,body.dark .rdx-how div,body.dark .rdx-find{background:#0E1422;border-color:#1F2A40;}
body.dark .rdx.on .rdx-status{background:#12301F;border-color:#1F4D33;} body.dark .rdx.on .rdx-status b{color:#86D5A2;}
body.dark .rdx-ideas button{background:#1A2235;border-color:#2A3550;color:#C9D4EA;}
body.dark .rdx-viz,body.dark .rdx-mini{background:#0E1422;} body.dark .rdx-viz i,body.dark .rdx-mini i{border-color:#2A3550;}
body.dark .rdx-main .rd-go,body.dark .rdx-how b{background:#E2E8F0!important;color:#0B0F17!important;}
body.dark .rdx-card h2 em{background:#1A2235;color:#C9D4EA;}

/* no dark outline when typing in a composer — just a soft lift */
.home-bar:focus-within,body.guest .home-bar:focus-within,.dc-box:focus-within,.rd-box:focus-within,.rdx-main .rd-box:focus-within,.fc-box:focus-within{
  border-color:#C9D3E0!important;box-shadow:0 14px 40px -14px rgba(15,30,61,.22)!important;}
body.guest .home-bar:focus-within{border-color:rgba(255,255,255,.65)!important;}
.fc-box:focus-within{border-color:transparent!important;}
body.dark .home-bar:focus-within,body.dark .dc-box:focus-within,body.dark .rd-box:focus-within,body.dark .rdx-main .rd-box:focus-within{border-color:#2A3550!important;box-shadow:0 18px 50px -14px rgba(0,0,0,.6)!important;}

/* ═══ home brief (ChatGPT-style) ═══ */
#hb-thread{display:none;}
#home.hb-on .hero-sec{align-items:flex-end!important;}
#home.hb-on .home-inner{justify-content:flex-end;padding-bottom:28px;max-width:780px;width:100%;}
#home.hb-on .home-mark,#home.hb-on .home-title,#home.hb-on #home-note{opacity:0;max-height:0;margin:0!important;overflow:hidden;transform:translateY(-12px);transition:opacity .35s,transform .45s,max-height .5s .1s;}
.home-mark,.home-title,#home-note{max-height:200px;transition:opacity .35s,transform .45s,max-height .5s;}
#home.hb-on #hb-thread{display:flex;flex-direction:column;gap:14px;width:100%;max-height:calc(100vh - 230px);overflow-y:auto;padding:24px 4px 18px;box-sizing:border-box;scroll-behavior:smooth;}
.hb-m{display:flex;gap:10px;align-items:flex-start;animation:hbIn .4s cubic-bezier(.2,.9,.3,1) both;}
@keyframes hbIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.hb-m.me{justify-content:flex-end;}
.hb-m.dov img{width:30px;height:30px;flex:none;margin-top:2px;}
.hb-b{max-width:78%;font-size:15.5px;line-height:1.55;padding:11px 15px;border-radius:16px;color:var(--ink);}
.hb-m.dov .hb-b{background:#fff;border:1px solid #E2E8F0;border-top-left-radius:6px;}
.hb-m.me .hb-b{background:var(--ink);color:#fff;border-top-right-radius:6px;}
.hb-typing{display:flex;gap:5px;align-items:center;padding:15px 16px!important;}
.hb-typing i{width:7px;height:7px;border-radius:50%;background:#94A3B8;animation:hbDot 1.1s infinite;}
.hb-typing i:nth-child(2){animation-delay:.15s}.hb-typing i:nth-child(3){animation-delay:.3s}
@keyframes hbDot{0%,60%,100%{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}
.hb-m.card{padding-left:40px;}
/* brief form (all questions at once, ChatGPT-style) */
.hb-m{scroll-margin-top:72px;}
.hf-why{display:flex;gap:10px;align-items:flex-start;background:#F1F5FE;border:1px solid #DCE6FB;border-radius:14px;padding:11px 13px;font-size:13.5px;line-height:1.45;color:#334155;}
.hf-why svg{width:18px;height:18px;color:#005FF6;flex:none;margin-top:1px;}
.hf-think{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;color:#64748B;padding:2px 0 2px 44px;}
body.dark .hf-why{background:#111B33;border-color:#22345C;color:#C9D4EA;} body.dark .hf-think{color:#A3B1C6;}
.hb-m.form{display:block;}
.hf{display:flex;flex-direction:column;gap:18px;padding:4px 0 2px;}
.hf-t{font-weight:700;font-size:16px;color:var(--ink);margin:0 0 8px;line-height:1.35;text-wrap:pretty;}
.hf-t small{font-weight:500;color:#94A3B8;font-size:13px;}
.hf-opts{border:1px solid #E2E8F0;border-radius:16px;background:transparent;padding:4px 0;}
.hf-o{display:flex;align-items:center;gap:12px;padding:10px 14px;cursor:pointer;font-size:15px;color:var(--ink);}
.hf-o input[type=radio],.hf-o input[type=checkbox]{position:absolute;opacity:0;pointer-events:none;}
.hf-o>i{width:20px;height:20px;border-radius:50%;border:1.6px solid #94A3B8;flex:none;position:relative;}
.hf-o input[type=checkbox]+i{border-radius:6px;}
.hf-o input:checked+i{border-color:var(--ink);background:var(--ink);box-shadow:inset 0 0 0 4px #fff;}
.hf-o input[type=checkbox]:checked+i{box-shadow:none;background:var(--ink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/14px no-repeat;}
.hf-o span{display:flex;flex-direction:column;min-width:0;}
.hf-o span b{font-weight:500;}
.hf-o span small{color:#64748B;font-size:12.5px;margin-top:1px;}
.hf-o:hover{background:#F6F8FB;}
.hf-in{flex:1;min-width:0;border:none;background:transparent;font:inherit;font-size:15px;color:var(--ink);outline:none;padding:2px 0;}
.hf-in::placeholder{color:#94A3B8;}
.hf-acts{display:flex;gap:8px;align-items:center;}
.hf-acts .go{flex:1;border:none;border-radius:999px;padding:13px 18px;font:inherit;font-weight:650;font-size:15px;background:var(--ink);color:#fff;cursor:pointer;}
.hf-skip{border:1px solid #E2E8F0;background:#fff;border-radius:999px;padding:12px 16px;font:inherit;font-size:14px;color:#475569;cursor:pointer;}
body.dark .hf-opts{background:transparent;border-color:#26324A;} body.dark .hf-t,body.dark .hf-o,body.dark .hf-in{color:#E8ECF5;}
body.dark .hf-o:hover{background:#141D30;} body.dark .hf-o>i{border-color:#64748B;}
body.dark .hf-o input:checked+i{border-color:#E8ECF5;background:#E8ECF5;box-shadow:inset 0 0 0 4px #0B0F17;}
body.dark .hf-o input[type=checkbox]:checked+i{background-color:#E8ECF5;box-shadow:none;}
body.dark .hf-acts .go{background:#E8ECF5;color:#0B0F17;} body.dark .hf-skip{background:#121A2B;border-color:#26324A;color:#A3B1C6;}
.hb-card{flex:1;background:#fff;border:1px solid #E2E8F0;border-radius:16px;padding:12px;box-shadow:0 10px 30px -18px rgba(15,30,61,.35);}
.hb-card.used{opacity:.55;box-shadow:none;} .hb-card.used .dq-o{cursor:default;}
.hb-prog{display:flex;align-items:center;gap:4px;padding:2px 4px 10px;}
.hb-prog i{flex:1;height:3px;border-radius:3px;background:#E2E8F0;} .hb-prog i.d{background:var(--n1);} .hb-prog i.c{background:var(--ac);}
.hb-prog span{margin-left:8px;font-size:12.5px;font-weight:600;color:#64748B;white-space:nowrap;}
.hb-acts{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 4px 2px;}
.hb-acts button{font:inherit;font-size:13.5px;font-weight:600;border-radius:9px;padding:8px 13px;cursor:pointer;border:1px solid #E2E8F0;background:#F8FAFC;color:#1E293B;}
.hb-acts button.go{background:var(--ink);border-color:var(--ink);color:#fff;}
.hb-acts button.big{font-size:15px;padding:11px 18px;display:inline-flex;align-items:center;gap:8px;}
.hb-acts em{font-style:normal;font-size:13px;color:#64748B;}
.hb-sum .hb-st{display:block;font-size:16px;color:var(--ink);padding:4px 4px 8px;}
.hb-sum ul{list-style:none;margin:0 0 6px;padding:0 4px;}
.hb-sum li{display:flex;gap:12px;padding:8px 0;border-top:1px solid #EEF1F6;font-size:14.5px;color:var(--ink);}
.hb-sum li span{flex:none;width:110px;color:#64748B;font-weight:600;}
.hb-spin{width:14px;height:14px;border-radius:50%;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;animation:pfSpin .8s linear infinite;display:inline-block;}
@media(prefers-reduced-motion:reduce){.hb-m{animation:none;}.hb-typing i{animation:none;}}
body.dark .hb-m.dov .hb-b,body.dark .hb-card{background:#121A2B;border-color:#1F2A40;color:#E8ECF5;}
body.dark .hb-m.me .hb-b{background:#E2E8F0;color:#0B0F17;}
body.dark .hb-acts button{background:#1A2235;border-color:#2A3550;color:#E8ECF5;} body.dark .hb-acts button.go{background:#E2E8F0;border-color:#E2E8F0;color:#0B0F17;}
body.dark .hb-sum .hb-st,body.dark .hb-sum li{color:#E8ECF5;} body.dark .hb-sum li{border-color:#1F2A40;} body.dark .hb-sum li span,body.dark .hb-acts em,body.dark .hb-prog span{color:#A3B1C6;}
body.dark .hb-prog i{background:#2A3550;} body.dark .hb-prog i.d{background:#C9D4EA;} body.dark .hb-prog i.c{background:#93B4F5;}

/* ═══ brief = full-page conversation (Claude/ChatGPT-like) ═══ */
#home.hb-on{flex:0 0 auto!important;justify-content:stretch;padding:0 24px!important;height:100vh!important;max-height:100vh!important;min-height:0!important;overflow:hidden;box-sizing:border-box;}
#home.hb-on .hero-sec{flex:1;min-height:0!important;height:100%;align-items:stretch!important;}
#home.hb-on .home-inner{display:flex;flex-direction:column;height:100%;min-height:0;max-width:820px;padding:0 0 22px!important;}
#home.hb-on #hb-thread{flex:1;min-height:0;max-height:none!important;padding:36px 6px 24px!important;gap:20px!important;}
#home.hb-on .home-bar{flex:none;}
/* Dov speaks as plain text (like Claude/ChatGPT); the client keeps a bubble */
#home.hb-on .hb-m.dov .hb-b{background:none!important;border:none!important;padding:3px 0!important;font-size:16.5px;line-height:1.6;max-width:100%;}
#home.hb-on .hb-m.dov .hb-b.hb-typing{padding:10px 0!important;}
#home.hb-on .hb-m.me .hb-b{font-size:16px;border-radius:18px;padding:11px 16px;}
#home.hb-on .hb-m.card{padding-left:40px;}
#home.hb-on #hb-thread::-webkit-scrollbar{width:8px;} #home.hb-on #hb-thread::-webkit-scrollbar-thumb{background:#CBD5E1;border-radius:8px;}
@media(max-width:1000px){#home.hb-on{height:calc(100vh - 120px);padding:0 12px!important;}}
body.dark #home.hb-on .hb-m.dov .hb-b{color:#E8ECF5;}

/* ═══ "Source from" zone picker ═══ */
.zone-row{display:flex;justify-content:flex-start;margin-top:10px;padding-left:4px;}
#zone-btn{display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:14px;font-weight:500;color:#475569;background:none;border:none;border-radius:9px;padding:6px 10px;cursor:pointer;}
#zone-btn b{font-weight:650;color:var(--ink);}
#zone-btn svg{width:14px;height:14px;color:#64748B;}
#zone-btn:hover{background:#EEF2F7;}
.zone-row{align-items:center;gap:4px;flex-wrap:wrap;}
#own-list-btn{display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:14px;font-weight:500;color:#475569;background:none;border:none;border-radius:9px;padding:6px 10px;cursor:pointer;margin-left:auto;}
#own-list-btn svg{width:14px;height:14px;color:#64748B;flex:none;}
#own-list-btn span{color:#94A3B8;}
#own-list-btn:hover{background:#EEF2F7;color:var(--ink);}
body.dark #own-list-btn{color:#A3B1C6;} body.dark #own-list-btn:hover{background:#1A2235;color:#E8ECF5;}
@media(max-width:700px){#own-list-btn{margin-left:0;}}
#home.hb-on .zone-row{margin-top:8px;}
#zonepop{position:fixed;z-index:9400;display:none;flex-direction:column;width:364px;max-height:460px;background:#fff;border-radius:16px;box-shadow:0 0 0 1px rgba(15,30,61,.08),0 22px 50px -16px rgba(15,30,61,.35);overflow:hidden;animation:dqIn .18s;}
#zonepop.on{display:flex;}
#zone-q{margin:12px 12px 6px;padding:11px 14px;font:inherit;font-size:15px;color:var(--ink);background:#F8FAFC;border:1px solid #E2E8F0;border-radius:11px;outline:none;}
#zone-q:focus{background:#fff;border-color:#CBD5E1;box-shadow:0 0 0 3px rgba(15,30,61,.06);}
#zone-q::placeholder{color:#64748B;}
.zlist{overflow-y:auto;padding:4px 6px 6px;flex:1;}
.zrow{display:flex;align-items:center;gap:11px;width:100%;font:inherit;font-size:14.5px;color:var(--ink);background:none;border:none;border-radius:10px;padding:9px 10px;cursor:pointer;text-align:left;}
.zrow:hover,.zcont:hover{background:#F1F5F9;}
.zrow small{margin-left:auto;font-size:12.5px;color:#64748B;}
.zcont{padding:0;gap:0;}
.zcont .zchk{flex:1;display:flex;align-items:center;gap:11px;font:inherit;font-size:14.5px;font-weight:600;color:var(--ink);background:none;border:none;padding:9px 10px;cursor:pointer;text-align:left;border-radius:10px;}
.zcont .zchk small{margin-left:auto;font-weight:500;}
.zin{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;color:#64748B;background:none;border:none;border-radius:8px;margin-right:4px;cursor:pointer;}
.zin svg{width:18px!important;height:18px!important;}
.zin svg{width:14px;height:14px;}
.zin:hover{background:#E2E8F0;color:var(--ink);}
.zany span{font-weight:600;}
.zall span{font-weight:650;}
.zback{display:inline-flex;align-items:center;gap:4px;font:inherit;font-size:13px;font-weight:600;color:#475569;background:none;border:none;padding:6px 8px;margin:2px 0 4px;cursor:pointer;border-radius:8px;}
.zback svg{width:15px;height:15px;} .zback:hover{background:#F1F5F9;}
.zck{flex:none;width:18px;height:18px;border-radius:5px;border:1.5px solid #94A3B8;background:#fff;position:relative;box-sizing:border-box;}
.zck.on{background:var(--ac);border-color:var(--ac);}
.zck.on::after{content:'';position:absolute;left:5px;top:1.5px;width:4px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg);}
.zck.part{background:var(--ac);border-color:var(--ac);}
.zck.part::after{content:'';position:absolute;left:3.5px;right:3.5px;top:7px;height:2px;background:#fff;border-radius:2px;}
.zempty{padding:20px 12px;color:#64748B;font-size:14px;text-align:center;}
.zfoot{display:flex;align-items:center;gap:10px;padding:10px 12px;border-top:1px solid #EEF1F6;}
.zfoot span{flex:1;font-size:13px;color:#475569;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.zfoot button{font:inherit;font-size:13.5px;font-weight:600;color:#fff;background:var(--ink);border:none;border-radius:9px;padding:8px 14px;cursor:pointer;}
body.dark #zone-btn{color:#A3B1C6;} body.dark #zone-btn b{color:#E8ECF5;} body.dark #zone-btn:hover{background:#1A2235;}
body.dark #zonepop{background:#121A2B;box-shadow:0 0 0 1px #1F2A40,0 22px 50px -16px rgba(0,0,0,.6);}
body.dark #zone-q{background:#0E1422;border-color:#2A3550;color:#E8ECF5;} body.dark #zone-q::placeholder{color:#8794AD;}
body.dark .zrow,body.dark .zcont .zchk{color:#E8ECF5;} body.dark .zrow:hover,body.dark .zcont:hover,body.dark .zback:hover{background:#1A2235;}
body.dark .zrow small,body.dark .zin,body.dark .zback,body.dark .zfoot span,body.dark .zempty{color:#A3B1C6;}
body.dark .zck{background:#0E1422;border-color:#5B6B85;} body.dark .zck.on,body.dark .zck.part{background:#3B6FD8;border-color:#3B6FD8;}
body.dark .zfoot{border-color:#1F2A40;} body.dark .zfoot button{background:#E2E8F0;color:#0B0F17;}

/* ═══ question card docked above the composer (Claude-style) ═══ */
#hb-dock{display:none;}
#home.hb-on #hb-dock.on{display:block;flex:none;margin:0 0 10px;animation:dqIn .3s cubic-bezier(.2,.9,.3,1);}
.hq{background:#fff;border:1px solid #E2E8F0;border-radius:18px;padding:14px 12px 12px;box-shadow:0 18px 40px -22px rgba(15,30,61,.35);}
.hq-h{display:flex;align-items:flex-start;gap:12px;padding:4px 8px 12px;}
.hq-h b{flex:1;font-size:17px;font-weight:600;line-height:1.4;color:var(--ink);}
.hq-h b small{font-size:13px;font-weight:500;color:#64748B;}
.hq-n{font-size:12.5px;font-weight:600;color:#94A3B8;margin-top:4px;white-space:nowrap;}
.hq-x{border:none;background:none;font-size:17px;color:#64748B;cursor:pointer;padding:0 4px;line-height:1;}
.hq-x:hover{color:var(--ink);}
.hq-o{display:flex;align-items:center;gap:14px;width:100%;text-align:left;font:inherit;background:none;border:1.5px solid transparent;border-radius:13px;padding:11px 12px;cursor:pointer;border-bottom:1px solid #EEF1F6;}
.hq-o:last-of-type{border-bottom-color:transparent;}
.hq-o.kb{border-color:var(--ac);background:#F8FAFD;}
.hq-o.sel{border-color:var(--ac);background:var(--ac-bg);}
.hq-o .n{flex:none;width:34px;height:34px;border-radius:10px;background:#F1F5F9;color:#475569;font-size:14px;font-weight:650;display:flex;align-items:center;justify-content:center;}
.hq-o.sel .n{background:var(--ac);color:#fff;}
.hq-o .t{display:flex;flex-direction:column;gap:2px;min-width:0;}
.hq-o .t b{font-size:16px;font-weight:600;color:var(--ink);}
.hq-o .t span{font-size:14px;color:#64748B;}
.hq-f{display:flex;align-items:center;gap:12px;padding:10px 12px 2px;border-top:1px solid #EEF1F6;margin-top:4px;}
.hq-f .pen{flex:none;width:34px;height:34px;border-radius:10px;background:#F1F5F9;color:#64748B;display:flex;align-items:center;justify-content:center;}
.hq-f .pen svg{width:15px;height:15px;}
.hq-f input{flex:1;min-width:0;border:none;outline:none;background:none;font:inherit;font-size:16px;color:var(--ink);padding:8px 0;}
.hq-f input::placeholder{color:#94A3B8;}
.hq-f button{flex:none;font:inherit;font-size:14px;font-weight:600;border-radius:10px;padding:9px 14px;cursor:pointer;border:1px solid #E2E8F0;background:#F8FAFC;color:#1E293B;}
.hq-f button.go{background:var(--ink);border-color:var(--ink);color:#fff;}
.hb-m.trace{padding-left:40px;}
.hq-trace{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:#94A3B8;}
.hq-trace svg{width:14px;height:14px;}
.hq-trace em{font-style:normal;color:#64748B;}
body.dark .hq{background:#121A2B;border-color:#1F2A40;}
body.dark .hq-h b,body.dark .hq-o .t b,body.dark .hq-f input{color:#E8ECF5;}
body.dark .hq-o{border-bottom-color:#1F2A40;} body.dark .hq-o.kb,body.dark .hq-o.sel{background:#162447;border-color:#93B4F5;}
body.dark .hq-o .n,body.dark .hq-f .pen{background:#1A2235;color:#C9D4EA;} body.dark .hq-o .t span,body.dark .hq-trace em,body.dark .hq-h b small{color:#A3B1C6;}
body.dark .hq-f{border-color:#1F2A40;} body.dark .hq-f button{background:#1A2235;border-color:#2A3550;color:#E8ECF5;} body.dark .hq-f button.go{background:#E2E8F0;color:#0B0F17;}

/* ═══ launch screen: hunt animation + RFQ e-mail review ═══ */
#lx{display:none;}
#home.lx-on #hb-thread,#home.lx-on #hb-dock,#home.lx-on .home-bar,#home.lx-on .zone-row,#home.lx-on .nca-chips{display:none!important;}
#home.lx-on #lx{display:flex;flex-direction:column;gap:18px;flex:1;min-height:0;padding:28px 0 24px;animation:hbIn .5s cubic-bezier(.2,.9,.3,1);}
#home.lx-on .home-inner{max-width:1180px!important;}
.lx-head h2{margin:0 0 6px;font-family:'IBM Plex Sans','SG fb',Inter,sans-serif;font-size:26px;font-weight:650;letter-spacing:-.02em;color:var(--ink);}
.lx-head p{margin:0;font-size:15.5px;color:#475569;}
.lx-grid{flex:1;min-height:0;display:grid;grid-template-columns:minmax(260px,.75fr) minmax(0,1.6fr);gap:18px;}
.lx-card{background:#fff;border:1px solid #E2E8F0;border-radius:18px;padding:22px;display:flex;flex-direction:column;min-height:0;}
.lx-hunt{align-items:center;text-align:left;}
.lx-radar{position:relative;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,#F1F5F9,#E7EDF5);overflow:hidden;margin:6px 0 20px;}
.lx-radar i{position:absolute;border-radius:50%;border:1px solid #CBD5E1;}
.lx-radar i:nth-child(1){inset:14px}.lx-radar i:nth-child(2){inset:38px}.lx-radar i:nth-child(3){inset:60px}
.lx-radar .sw{inset:0;border:none;background:conic-gradient(from 0deg,transparent 0 290deg,rgba(30,58,138,.38) 360deg);animation:rdxSpin 2.6s linear infinite;}
.lx-radar b{position:absolute;width:7px;height:7px;border-radius:50%;background:var(--ac);opacity:0;animation:rdxBlip 2.6s ease-out infinite;}
.lx-radar b:nth-of-type(1){top:30px;left:96px}.lx-radar b:nth-of-type(2){top:92px;left:34px;animation-delay:.7s}.lx-radar b:nth-of-type(3){top:104px;left:104px;animation-delay:1.4s}.lx-radar b:nth-of-type(4){top:48px;left:44px;animation-delay:2s}
.lx-radar img{position:absolute;width:38px;height:38px;left:56px;top:56px;}
.lx-steps{list-style:none;margin:0;padding:0;width:100%;display:flex;flex-direction:column;gap:12px;}
.lx-steps li{display:grid;grid-template-columns:22px 1fr;column-gap:10px;align-items:center;font-size:15px;color:#94A3B8;font-weight:550;}
.lx-steps li i{width:18px;height:18px;border-radius:50%;border:2px solid #CBD5E1;box-sizing:border-box;}
.lx-steps li small{grid-column:2;font-size:13px;color:#64748B;font-weight:500;margin-top:2px;}
.lx-steps li.cur{color:var(--ink);} .lx-steps li.cur i{border-color:#CBD5E1;border-top-color:var(--ac);animation:pfSpin .9s linear infinite;}
.lx-steps li.done{color:#334155;} .lx-steps li.done i{border-color:var(--ok);background:var(--ok) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.6' stroke-linecap='round' stroke-linejoin='round'><path d='M20 6 9 17l-5-5'/></svg>") center/11px no-repeat;}
.lx-note{margin:auto 0 0;padding-top:18px;font-size:13.5px;color:#64748B;text-align:center;}
.lx-mail{padding:0;overflow:hidden;}
.em-top{display:flex;align-items:center;gap:12px;padding:12px 18px;background:#F8FAFC;border-bottom:1px solid #E2E8F0;}
.em-dots{display:flex;gap:6px;} .em-dots i{width:11px;height:11px;border-radius:50%;background:#E2E8F0;}
.em-top b{font-size:14px;color:var(--ink);} .em-n{margin-left:auto;font-size:12.5px;color:#64748B;}
.em-row{display:flex;align-items:center;gap:12px;padding:10px 18px;border-bottom:1px solid #EEF1F6;font-size:14.5px;color:var(--ink);}
.em-row>span{flex:none;width:58px;color:#64748B;font-size:13.5px;}
.em-row small{color:#64748B;font-size:12.5px;margin-left:4px;}
.em-to{font-style:normal;color:#475569;}
.em-grow{flex:1;min-width:0;}
.em-ccbtn{font-size:13px;color:#64748B;text-decoration:none;white-space:nowrap;}.em-ccbtn:hover{color:var(--ink);text-decoration:underline;}
#em-cc,#em-bcc{flex:1;min-width:0;border:none;outline:none;background:none;font:inherit;font-size:14.5px;color:var(--ink);}
.em-files{display:flex;flex-wrap:wrap;gap:6px;}
.em-files .em-to{font-size:13px;color:#94A3B8;}
.em-files .nc-chip{font-size:13px;font-weight:550;padding:3px 6px 3px 10px;}
.em-att{flex:none;cursor:pointer;font-size:13px;font-weight:600;color:#004FD1;white-space:nowrap;}.em-att:hover{text-decoration:underline;}
body.dark #em-cc,body.dark #em-bcc{color:#E8ECF5;}
#em-subj{flex:1;border:none;outline:none;background:none;font:inherit;font-size:15px;font-weight:650;color:var(--ink);}
.em-body{flex:1;min-height:220px;resize:none;border:none;outline:none;padding:16px 18px;font:inherit;font-size:15px;line-height:1.6;color:#1E293B;background:#fff;white-space:pre-wrap;}
.em-send{padding:14px 18px;border-top:1px solid #E2E8F0;background:#FBFCFE;display:flex;flex-direction:column;gap:8px;}
.em-send>b{font-size:13.5px;color:var(--ink);}
.em-opt{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1.5px solid #E2E8F0;border-radius:12px;cursor:pointer;background:#fff;}
.em-opt.on{border-color:var(--ac);background:var(--ac-bg);}
.em-opt input{margin-top:3px;accent-color:#1E3A8A;}
.em-opt strong{display:block;font-size:14.5px;color:var(--ink);} .em-opt small{display:block;font-size:13px;color:#475569;margin-top:2px;}
.em-boxes{display:none;gap:8px;padding-left:28px;} .em-boxes.on{display:flex;}
.em-boxes button{font:inherit;font-size:13.5px;font-weight:600;padding:7px 14px;border-radius:9px;border:1px solid #CBD5E1;background:#fff;color:var(--ink);cursor:pointer;}
.em-boxes button.on{border-color:var(--ac);background:var(--ac);color:#fff;}
.em-boxes.shake{animation:emShake .45s;} @keyframes emShake{20%,60%{transform:translateX(-5px)}40%,80%{transform:translateX(5px)}}
.em-acts{display:flex;align-items:center;gap:10px;padding:14px 18px;border-top:1px solid #E2E8F0;flex-wrap:wrap;}
.em-acts button{font:inherit;font-size:14.5px;font-weight:600;border-radius:11px;padding:11px 16px;cursor:pointer;border:1px solid #E2E8F0;background:#F8FAFC;color:#1E293B;display:inline-flex;align-items:center;gap:8px;}
.em-acts button.go{background:var(--ink);border-color:var(--ink);color:#fff;}
.em-acts button:disabled{opacity:.5;cursor:default;}
.em-hint{font-size:13px;color:#64748B;}
@media(max-width:1000px){.lx-grid{grid-template-columns:1fr;}.lx-hunt{flex-direction:row;flex-wrap:wrap;gap:14px}.lx-radar{width:90px;height:90px;margin:0}.lx-radar img{width:26px;height:26px;left:32px;top:32px}}
body.dark .lx-head h2{color:#E8ECF5;} body.dark .lx-head p,body.dark .lx-note,body.dark .em-n,body.dark .em-row>span,body.dark .em-row small,body.dark .em-hint,body.dark .em-opt small,body.dark .lx-steps li small{color:#A3B1C6;}
body.dark .lx-card,body.dark .em-body,body.dark .em-opt{background:#121A2B;border-color:#1F2A40;color:#E8ECF5;}
body.dark .em-top,body.dark .em-send{background:#0E1422;border-color:#1F2A40;} body.dark .em-row{border-color:#1F2A40;color:#E8ECF5;}
body.dark #em-subj,body.dark .em-top b,body.dark .em-opt strong,body.dark .em-send>b{color:#E8ECF5;} body.dark .em-to{color:#C9D4EA;}
body.dark .em-opt.on{background:#162447;border-color:#93B4F5;} body.dark .em-acts{border-color:#1F2A40;}
body.dark .em-acts button{background:#1A2235;border-color:#2A3550;color:#E8ECF5;} body.dark .em-acts button.go{background:#E2E8F0;border-color:#E2E8F0;color:#0B0F17;}
body.dark .em-boxes button{background:#1A2235;border-color:#2A3550;color:#E8ECF5;} body.dark .em-boxes button.on{background:#3B6FD8;border-color:#3B6FD8;color:#fff;}
body.dark .lx-radar{background:#0E1422;} body.dark .lx-radar i{border-color:#2A3550;} body.dark .lx-steps li.cur,body.dark .lx-steps li.done{color:#E8ECF5;}


/* plein écran « le mail qui part » (16/10) */
#lx.lxf-open{position:fixed;inset:0;z-index:950;background:#fff;padding:0!important;overflow:auto;display:block!important;animation:hbIn .4s cubic-bezier(.2,.9,.3,1)}
.lxf{min-height:100%;display:flex;flex-direction:column}
.lxf-top{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:16px;padding:14px 28px;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);border-bottom:1px solid #EEF1F6}
.lxf-logo{height:30px}.lxf-wm{font-family:'IBM Plex Sans',Inter,sans-serif;font-size:22px;color:var(--ink)}
.lxf-seg{margin:0 auto;display:flex;gap:4px;padding:4px;background:#F1F4F9;border-radius:12px}
.lxf-seg .em-opt{border:none;padding:9px 18px;border-radius:9px;background:none;font-size:15px;font-weight:600;color:#5B6678;align-items:center}
.lxf-seg .em-opt input{display:none}.lxf-seg i,.lxf-seg em{font-style:normal}.lxf-seg em{display:none}.lxf-seg .em-opt.on{background:#fff;color:var(--ink);box-shadow:0 1px 4px rgba(11,26,60,.12)}
.lxf-x{width:38px;height:38px;border-radius:50%;border:1px solid #E2E8F0;background:#fff;font-size:22px;line-height:1;color:#5B6678;cursor:pointer}
.lxf .em-boxes{justify-content:center;padding:12px 20px 0;flex-wrap:wrap}
.lxf-main{width:100%;max-width:1040px;margin:0 auto;padding:22px 20px 40px;display:flex;flex-direction:column;gap:16px;box-sizing:border-box}
.lxf-st{margin:0;display:flex;align-items:center;justify-content:center;gap:10px;font-size:15px;color:#5B6678;transition:opacity .3s}.lxf-st.off{display:none}
.lxf-mail{border:1px solid #E2E8F0;border-radius:18px;box-shadow:0 10px 40px rgba(11,26,60,.08);display:flex;flex-direction:column;animation:hbIn .5s cubic-bezier(.2,.9,.3,1)}
.lxf-mail .em-body{min-height:340px;font-size:16px;line-height:1.65}
.lxf-ask{display:none;flex-direction:column;gap:12px;animation:hbIn .45s cubic-bezier(.2,.9,.3,1)}.lxf-ask.on{display:flex}
.lxf-dov{display:flex;gap:12px;align-items:flex-start}.lxf-dov img{width:34px;height:34px;flex:none}
.lxf-dov p{margin:0;padding:12px 16px;background:#F3F6FA;border-radius:4px 16px 16px 16px;font-size:16px;line-height:1.5;color:var(--ink)}
.lxf-add{display:none;gap:10px;align-items:flex-end;padding-left:46px}.lxf-add.on{display:flex}
.lxf-add textarea{flex:1;font:inherit;font-size:15px;padding:11px 14px;border:1.5px solid #CBD5E1;border-radius:12px;resize:vertical;outline:none}.lxf-add textarea:focus{border-color:var(--ac)}
.lxf-acts{display:flex;gap:10px;padding-left:46px;flex-wrap:wrap}
.lxf-acts button,.lxf-add button{font:inherit;font-size:15.5px;font-weight:600;border-radius:12px;padding:13px 22px;cursor:pointer;border:1px solid #E2E8F0;background:#fff;color:#1E293B;display:inline-flex;align-items:center;gap:8px}
.lxf-acts button.go,.lxf-add button.go{background:var(--ink);border-color:var(--ink);color:#fff}.lxf-acts button:disabled,.lxf-add button:disabled{opacity:.5;cursor:default}
.lxf-hint{padding-left:46px;font-size:13px;color:#64748B}
@media(max-width:700px){.lxf-top{padding:10px 14px;gap:8px}.lxf-logo{height:24px}.lxf-seg .em-opt{padding:8px 10px;font-size:13px;white-space:nowrap}.lxf-seg .em-opt span i{display:none}.lxf-seg em{display:inline}.lxf .em-n{display:none}.lxf-add{flex-direction:column;align-items:stretch}.lxf-main{padding:16px 12px 30px}.lxf-mail .em-body{min-height:300px;font-size:15px}.lxf-add,.lxf-acts,.lxf-hint{padding-left:0}.lxf-acts button{flex:1;justify-content:center;padding:13px 12px}.em-row{padding:9px 14px}}
body.dark #lx.lxf-open{background:#0B0F17}body.dark .lxf-top{background:rgba(11,15,23,.94);border-color:#1F2A40}body.dark .lxf-seg{background:#121A2B}body.dark .lxf-seg .em-opt.on{background:#1F2A40;color:#E8ECF5}
body.dark .lxf-dov p{background:#121A2B;color:#E8ECF5}body.dark .lxf-acts button{background:#1A2235;border-color:#2A3550;color:#E8ECF5}body.dark .lxf-acts button.go{background:#E2E8F0;color:#0B0F17}body.dark .lxf-x{background:#121A2B;border-color:#2A3550;color:#C9D4EA}
.mb-ok{font-size:13.5px;color:var(--ok);font-weight:600;align-self:center;} .mb-ok b{color:var(--ink);}
.em-boxes .mb-x{color:var(--bad)!important;}
.em-boxes{flex-wrap:wrap;align-items:center;}
body.dark .mb-ok{color:#86D5A2;} body.dark .mb-ok b{color:#E8ECF5;}

/* settings modal */
#stg{position:fixed;inset:0;z-index:9600;background:rgba(15,30,61,.35);display:none;align-items:center;justify-content:center;padding:16px;}
#stg.on{display:flex;}
.stg-c{width:100%;max-width:560px;background:#fff;border-radius:18px;padding:20px 22px;box-shadow:0 30px 70px -20px rgba(15,30,61,.45);animation:dqIn .2s;}
.stg-h{display:flex;align-items:center;justify-content:space-between;} .stg-h b{font-size:19px;color:var(--ink);}
.stg-p{margin:6px 0 16px;font-size:14.5px;color:#475569;}
.stg-sec{display:flex;flex-direction:column;gap:8px;margin-bottom:16px;} .stg-sec>b{font-size:14px;color:var(--ink);}
.stg-mb{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:12px 14px;border:1px solid #E2E8F0;border-radius:12px;}
.stg-mb div{display:flex;gap:8px;flex-wrap:wrap;}
.stg-mb button{font:inherit;font-size:13.5px;font-weight:600;padding:8px 13px;border-radius:9px;border:1px solid #CBD5E1;background:#fff;color:var(--ink);cursor:pointer;}
.stg-mb .mb-x{color:var(--bad);}
.stg-none{font-size:14px;color:#64748B;}
.stg-def{font-size:12px;font-weight:700;color:var(--ac);background:#EEF3FC;border-radius:6px;padding:3px 8px;align-self:center;}
.stg-add{display:flex;gap:8px;flex-wrap:wrap;align-items:center;} .stg-add span{font-size:13.5px;color:#64748B;}
.stg-add button{font:inherit;font-size:13.5px;font-weight:600;padding:8px 13px;border-radius:9px;border:1px dashed #CBD5E1;background:#fff;color:var(--ink);cursor:pointer;}
.em-boxes .mb-add{border-style:dashed;font-weight:500;}
body.dark .stg-def{background:#1F2D4A;color:#9DBBF5;} body.dark .stg-add button{background:#1A2235;border-color:#2A3550;color:#E8ECF5;}
.stg-fine{font-size:12.5px;color:#64748B;line-height:1.5;}
body.dark .stg-c{background:#121A2B;} body.dark .stg-h b,body.dark .stg-sec>b{color:#E8ECF5;} body.dark .stg-p,body.dark .stg-none,body.dark .stg-fine{color:#A3B1C6;}
body.dark .stg-mb{border-color:#2A3550;} body.dark .stg-mb button{background:#1A2235;border-color:#2A3550;color:#E8ECF5;}
body.dark .hq-x{color:#A3B1C6!important;} body.dark .hq-x:hover{color:#E8ECF5!important;}

/* region row: the tick selects the whole region, the rest of the row opens its countries */
.zcont{gap:11px!important;padding:9px 10px!important;cursor:pointer;}
.zcont .zbox{display:flex;align-items:center;justify-content:center;width:30px;height:30px;margin:-6px -6px -6px -6px;border-radius:8px;}
.zcont .zbox:hover{background:#E2E8F0;}
.zcont .zname{font-weight:600;font-size:14.5px;color:var(--ink);}
.zcont small{margin-left:auto;}
.zchev{width:18px;height:18px;color:#94A3B8;margin-left:auto;flex:none;}
.zcont small+.zchev{margin-left:8px;}
body.dark .zcont .zname{color:#E8ECF5;} body.dark .zcont .zbox:hover{background:#2A3550;}

/* zone picker: fixed size — always 6 rows tall, scroll for more (doesn't jump while searching) */
#zonepop{max-height:none!important;}
#zonepop .zlist{flex:none;height:244px;overflow-y:auto;}
#zonepop .zrow{min-height:38px;box-sizing:border-box;}

/* mobile (signed in): hero vertically centred in the screen instead of stuck at the top; countries row centred */
@media(max-width:700px){
  body:not(.guest) #home.on:not(.hb-on){justify-content:center;min-height:calc(100dvh - 52px);padding-top:16px;padding-bottom:9vh;box-sizing:border-box;}
  .zone-row{justify-content:center;padding-left:0;}
}
/* ═════ MOBILE / TABLET PASS (14/10) ═════ */
html,body{overflow-x:clip;}
aside,#dovchat{height:100dvh;}
/* touch devices: no iOS zoom-on-focus (inputs ≥16px), comfortable tap targets */
@media(pointer:coarse){
  input:not([type=checkbox]):not([type=radio]),textarea,select{font-size:16px!important;}
  .hq-x{min-width:40px;min-height:40px;display:inline-flex;align-items:center;justify-content:center;}
  .hdots{width:32px;height:32px;opacity:.7!important;}
}
/* guest top bar on very small phones */
@media(max-width:400px){
  #gtop{padding:12px 12px;}
  #gtop .glogo{height:24px;}
  .gtop-si,.gtop-go{padding:0 10px!important;font-size:13px!important;height:34px!important;min-height:34px!important;max-height:34px!important;}
}
/* selection bar: fits a 320px screen */
@media(max-width:480px){
  #selbar{gap:2px;padding:6px;bottom:calc(10px + env(safe-area-inset-bottom));}
  #selbar button{padding:7px 7px;font-size:13px;}
  #selbar .sb-x{padding:7px 6px;}
  #selbar button:not(.sb-x) svg{display:none;}
}
/* Dov chat on tablet / phone: floating button → full-height sheet */
#dc-fab{display:none;}
@media(max-width:1135px){
  #dovchat.mob-on{display:flex!important;position:fixed;top:0;right:0;bottom:0;left:auto;width:min(440px,100vw)!important;z-index:9300;box-shadow:-12px 0 40px rgba(11,26,60,.25);border-right:none;}
  #dovchat.mob-on #dc-rail,#dovchat.mob-on .dc-rs{display:none!important;}
  #dovchat.mob-on #dc-tog{width:40px;height:40px;} #dovchat.mob-on #dc-tog svg{display:none;} #dovchat.mob-on #dc-tog::after{content:"✕";font-size:18px;line-height:1;}
  #dovchat.mob-on .dc-bar{padding-bottom:calc(12px + env(safe-area-inset-bottom));}
  body.dc-fab-on #dc-fab{display:flex;position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:9100;align-items:center;gap:8px;height:48px;padding:0 18px 0 8px;border:none;border-radius:999px;background:#0B1A3C;color:#fff;font:inherit;font-weight:700;font-size:14.5px;box-shadow:0 10px 30px -8px rgba(11,26,60,.55);cursor:pointer;}
  #dc-fab img{width:32px;height:32px;}
  #dc-fab .dc-dot{position:absolute;top:6px;left:32px;}
  body:has(#selbar.on) #dc-fab{bottom:calc(78px + env(safe-area-inset-bottom));}
}
/* phones: the sidebar rail becomes a top bar */
@media(max-width:700px){
  body{padding-left:0;padding-top:52px;}
  body.guest{padding-top:0;}
  body.scollapse aside{width:100%!important;height:52px;bottom:auto;padding:0 8px!important;border-right:none;border-bottom:1px solid var(--border);}
  body.scollapse aside #side-rail{flex-direction:row!important;height:52px!important;align-items:center;gap:4px;}
  body.scollapse #side-rail>button:first-child{height:40px;width:40px;margin:0;border:none;border-radius:9px;}
  #side-rail .rail-logo{display:block!important;height:24px;margin:0 auto 0 6px;cursor:pointer;}
  #side-rail button{width:40px;height:40px;}
  #side-rail .av{margin:0 4px 0 0;}
  aside{width:min(300px,86vw);}
  header,.searchrow{top:52px;}
  .searchrow{padding:8px 12px;}
  /* supplier names: 2 lines instead of a hard cut */
  .rnom .rnm{white-space:normal!important;display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.25;}
  #dovchat.mob-on{width:100vw!important;}
}
#side-rail .rail-logo{display:none;}
/* 20/10 Ethan: slimmer top bar (58→46px) + no big mission title (the sidebar already shows the mission) */
@media(min-width:1001px){
  .searchrow,.side-brand,#side-rail>button:first-child{height:46px;}
  .side-brand{margin-top:-14px;}
  .lhead{top:46px;}
  .searchrow .hd-btn{height:32px;font-size:13.5px;padding:0 12px;border-radius:9px;}
}
#stagebar .sg-go,#stagebar .sg-sec,.searchrow #b-ext,.searchrow #b-rel,.searchrow #b-mail,.searchrow #b-add{display:none!important;} /* 20/10 Ethan: top bar = steps + Excel only */
.dc-quick{flex-wrap:nowrap;overflow-x:auto;gap:6px;padding:2px 14px 12px;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;}
.dc-quick::-webkit-scrollbar{display:none;}
.dc-quick button{flex:none;white-space:nowrap;font-size:13.5px;padding:7px 13px;border-radius:999px;scroll-snap-align:start;}
#dc-new{display:none!important;}
.camp .cact{display:none!important;} /* 20/10 Ethan: no status icons in the mission list */
#dovchat .dc-ic,#dc-camp{display:none!important;}
#dovchat .dc-head{justify-content:flex-end;height:44px;border-bottom:none;}
#fabs{display:none!important;} /* 20/10 Ethan: no floating « Send RFQs » (Launch RFQ is in the top bar) */
.searchrow>.tabs:empty{display:none;}
.searchrow{position:relative;} #stagebar{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);margin:0;} .searchrow #b-exp{margin-left:auto!important;} .searchrow #b-ext{margin-left:0!important;} .sg b{display:inline!important;} /* stepper centred in the top bar, all labels shown (Ethan 20/10) */
.mhead h1{display:none;}
.mhead{padding:14px 20px;}
.mhead:not(:has(.ms-i)):not(:has(.rfq-cta)):not(:has(.sndb)){display:none;}

/* 20/10 Ethan: desktop chat = floating « Ask Dov » button → chat bubble (replaces the side column + Follow-up button) */
@media(min-width:700px){
  #dovchat:not(.mob-on){display:none!important;}
  #dovchat.mob-on{display:flex!important;position:fixed;right:34px;bottom:30px;top:auto;left:auto;width:440px!important;height:min(682px,calc(100vh - 120px))!important;z-index:9300;border:1px solid var(--border);border-radius:18px;overflow:hidden;box-shadow:0 24px 60px -12px rgba(11,26,60,.35);}
  #dovchat.mob-on #dc-rail,#dovchat.mob-on .dc-rs{display:none!important;}
  #dovchat.mob-on #dc-tog svg{display:none;} #dovchat.mob-on #dc-tog::after{content:"✕";font-size:16px;line-height:1;}
  body.dc-fab-on #dc-fab{display:flex;position:fixed;right:34px;bottom:30px;z-index:9100;align-items:center;gap:8px;height:52px;padding:0 20px 0 9px;border:none;border-radius:999px;background:#0B1A3C;color:#fff;font:inherit;font-weight:800;font-size:15.5px;box-shadow:0 10px 30px -8px rgba(11,26,60,.55);cursor:pointer;}
  #dc-fab img{width:34px;height:34px;}
  #dc-fab .dc-dot{position:absolute;top:6px;left:34px;}
  body.dc-fab-on #fabs{right:190px;}
  body.dark #dovchat.mob-on{border-color:#2A3550;}
  #dovchat.mob-on{transform-origin:100% 100%;animation:dcPop .22s cubic-bezier(.2,.9,.3,1.15);}
  #dovchat.mob-on.dc-out{animation:dcOut .16s ease-in forwards;}
  #dc-fab{transition:transform .15s ease;} #dc-fab:active{transform:scale(.95);}
}
@keyframes dcPop{from{opacity:0;transform:translateY(14px) scale(.94);}to{opacity:1;transform:none;}}
@keyframes dcOut{to{opacity:0;transform:translateY(10px) scale(.96);}}


/* guest nav: tablet portrait keeps the essentials, phones get a ☰ menu */
.gtop-burger,.gtop-mnav{display:none;}
@media(max-width:960px){.gtop-links>a{display:none;}.gtop-links button,.gtop-links a{white-space:nowrap;}.gtop-in{gap:22px!important;}}
@media(max-width:760px){
  .gtop-burger{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid #D5DCE6;border-radius:10px;background:#fff;color:#121418;cursor:pointer;flex:none;}
  .gtop-burger svg{width:19px;height:19px;}
  #gtop.mnav .gtop-mnav{display:flex;flex-direction:column;margin-top:10px;background:#fff;border-radius:14px;padding:6px;box-shadow:0 0 0 1px rgba(11,26,60,.08),0 18px 40px -12px rgba(11,26,60,.3);}
  .gtop-mnav a{padding:13px 14px;border-radius:9px;font-weight:600;font-size:15.5px;color:#121418;text-decoration:none;}
  .gtop-mnav a:active{background:#F1F4F8;}
  body.dark .gtop-burger,body.dark #gtop.mnav .gtop-mnav{background:#121A2B;color:#E2E8F0;border-color:#2A3550;}
  body.dark .gtop-mnav a{color:#E2E8F0;}
}
@media(max-width:400px){.gtop-burger{width:34px;height:34px;}}
.mnav-si{display:none;}
@media(max-width:360px){.gtop-si{display:none!important;}.mnav-si{display:block;}}

/* directory + scout on small screens */
@media(max-width:700px){
  .agrid{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) 28px;gap:8px;}
  .agrid>:nth-child(3),.agrid>:nth-child(4){display:none;}
  .ag-head{gap:14px;}
  .ag-head p{font-size:15px;font-weight:500;}
}

/* dialogs taller than the screen (phone landscape): scroll instead of being cut at the top */
#stg{overflow-y:auto;}
#stg,#nc-bg,#ml-bg,#us-bg,#ev-bg,#rl-bg,#gs-bg,#dm-bg{align-items:flex-start;}
#stg>*,#nc-bg>*,#ml-bg>*,#us-bg>*,#ev-bg>*,#rl-bg>*,#gs-bg>*,#dm-bg>*{margin-top:auto!important;margin-bottom:auto!important;}
#nxm>*{max-height:calc(100dvh - 32px);overflow-y:auto;}

.rfq-cta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:14px;padding:13px 16px;border-radius:14px;background:#EEF4FD;border:1px solid #CFE0FA;font-size:15px;color:var(--ink);}
.rfq-cta span{flex:1;min-width:220px;}
.rfq-cta button{border:none;background:#0B1A3C;color:#fff;font:inherit;font-weight:700;font-size:14.5px;padding:10px 16px;border-radius:10px;cursor:pointer;white-space:nowrap;}
body.dark .rfq-cta{background:#14213A;border-color:#22345A;}
body.dark .rfq-cta button{background:#E2E8F0;color:#0B1A3C;}

body.guest #home-note{display:none!important;}


/* 18/10 — HERO VISITEURS v3 : texte à gauche, vrai dashboard animé à droite (fond de l'accueil conservé) */
.hz{display:none;align-self:stretch;position:relative;z-index:1;min-height:calc(100vh - 58px);box-sizing:border-box;padding:40px 2vw 40px;align-items:center;gap:4vw;}
body.guest .hz{display:flex;}
@media(min-width:1101px){body.guest .hz{width:100%;max-width:1360px;margin:0 auto;padding-left:40px;padding-right:40px;gap:44px;} .hz-r{max-width:790px;}}   /* hero tighter on wide screens (Ethan 20/10) */
#home.hb-on .hz{display:none!important;}
.hz-l{flex:0 0 42%;max-width:600px;}
.hz-t{font-family:'IBM Plex Sans','SG fb',sans-serif;font-weight:700;font-size:clamp(42px,5.4vw,84px);line-height:.96;letter-spacing:-.045em;margin:0 0 22px;color:#0B1A3C;}
.hz-eyebrow{display:block;font-family:Inter,sans-serif;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;line-height:1.4;color:var(--accent,#1a56db);margin:0 0 16px;}
body.dark .hz-eyebrow{color:#7AA7FF;}
.hz-u{position:relative;white-space:nowrap;display:inline-block;}
.hz-u::after{content:"";position:absolute;left:0;right:.12em;bottom:-.06em;height:.075em;border-radius:99px;background:linear-gradient(90deg,#1a56db,#5D9AFC 55%,#22c4e8);}
.hz-p{font-size:18px;line-height:1.55;color:#4A5568;margin:0 0 26px;max-width:480px;}
.hz-btns{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px;}
.hz-go,.hz-call{display:inline-flex;align-items:center;gap:10px;padding:14px 24px;border-radius:99px;cursor:pointer;font:650 16px/1 inherit;transition:transform .15s,box-shadow .15s,background .15s;}
.hz-go{background:#0B1A3C;color:#fff;border:1px solid #0B1A3C;box-shadow:0 8px 22px rgba(11,26,60,.22);}
.hz-go:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(11,26,60,.28);}
.hz-call{background:#fff;color:#0B1A3C;border:1px solid #C9D3E0;}
.hz-call:hover{background:#F3F6FA;}
.hz-go svg,.hz-call svg{width:17px;height:17px;}
.hz-c{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px 18px;font-size:13px;font-weight:550;color:#6B7689;}
.hz-c li::before{content:"✓";margin-right:6px;color:#1a56db;font-weight:700;}
.hz-r{flex:1;min-width:0;perspective:1600px;}
.hz-win{background:#fff;border:1px solid #DCE3EC;border-radius:16px;box-shadow:0 30px 80px -20px rgba(11,26,60,.28),0 8px 24px rgba(11,26,60,.06);overflow:hidden;transform:rotateY(-7deg) rotateX(2deg);transform-origin:left center;animation:hzFloat 8s ease-in-out infinite alternate;font-size:13px;color:#0B1A3C;}
@keyframes hzFloat{to{transform:rotateY(-4deg) rotateX(1deg) translateY(-8px)}}
.hz-bar{display:flex;align-items:center;gap:6px;padding:10px 14px;border-bottom:1px solid #EEF2F7;background:#F7F9FC;}
.hz-bar i{width:10px;height:10px;border-radius:50%;background:#E2E8F0;}
.hz-bar span{margin-left:10px;font-size:11.5px;color:#8A97AD;}
.hz-top{padding:12px 18px 0;}
.hz-stg{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:#A0AEC0;}
.hz-stg b{font-weight:600;display:flex;align-items:center;gap:6px;}
.hz-stg b::before{content:"";width:7px;height:7px;border-radius:50%;background:#CBD5E1;}
.hz-stg b+b::after{content:none;}
.hz-stg b.on{color:#4A5568;}.hz-stg b.on::before{background:#0B1A3C;}
.hz-stg b.cur{color:#1a56db;}.hz-stg b.cur::before{background:#1a56db;box-shadow:0 0 0 3px rgba(26,86,219,.18);}
.hz-h{padding:10px 18px 2px;font:700 20px/1.2 'IBM Plex Sans',sans-serif;letter-spacing:-.01em;}
.hz-k{display:flex;flex-wrap:wrap;gap:4px 16px;padding:2px 18px 12px;font-size:12.5px;color:#4A5568;}
.hz-k b{color:#0B1A3C;}.hz-k .g b{color:#15803d;}
.hz-th,.hz-row{display:grid;grid-template-columns:minmax(0,1.6fr) .9fr .9fr 1fr;align-items:center;gap:8px;padding:0 18px;}
.hz-th{background:#F3F6FA;border-top:1px solid #EEF2F7;border-bottom:1px solid #EEF2F7;height:34px;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#4A5568;}
.hz-th span:last-child,.hz-row .ps{text-align:right;}
.hz-rows{position:relative;}
.hz-row{position:absolute;left:0;right:0;height:52px;border-bottom:1px solid #F1F4F8;transition:transform .7s cubic-bezier(.2,.8,.2,1),background .5s;background:#fff;}
.hz-row .sn{font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:8px;}
.hz-row .sn i{flex:0 0 22px;height:22px;border-radius:6px;background:#EEF3FC;color:#1a56db;font:700 10px/22px Inter,sans-serif;text-align:center;font-style:normal;}
.hz-row .lo{white-space:nowrap;color:#4A5568;}
.hz-row .rl{display:flex;align-items:center;gap:5px;font-weight:600;font-size:12px;}
.hz-row .rl u{display:inline-flex;gap:2px;}.hz-row .rl u s{width:4px;height:12px;border-radius:2px;background:#E2E8F0;text-decoration:none;}
.hz-row .rl.h{color:#15803d;}.hz-row .rl.h u s{background:#16a34a;}
.hz-row .rl.m{color:#b45309;}.hz-row .rl.m u s:nth-child(-n+2){background:#f59e0b;}
.hz-row .ps b{display:block;font-size:15px;font-weight:700;}
.hz-row .ps small{color:#7A879D;font-size:11px;}
.hz-row .chip{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:8px;font-size:11.5px;font-weight:650;}
.hz-row .chip.ct{background:#F3F6FA;color:#4A5568;border:1px solid #E2E8F0;}
.hz-row .chip.tk{background:#EEF3FC;color:#1a56db;border:1px solid #c7d7f7;}
.hz-row.best{background:#F0FDF4;}.hz-row.best .ps b{color:#15803d;}
.hz-row.flash{animation:hzFlash 1s ease;}
@keyframes hzFlash{0%{background:rgba(26,86,219,.12)}100%{}}
body.dark .hz-t{color:#F2F5FA;}body.dark .hz-p{color:#AAB6CC;}body.dark .hz-c{color:#8D9AB2;}body.dark .hz-c li::before{color:#7AA7FF;}
body.dark .hz-go{background:#F2F5FA;color:#0B1A3C;border-color:#F2F5FA;}
body.dark .hz-call{background:rgba(255,255,255,.06);color:#F2F5FA;border-color:rgba(255,255,255,.25);}
body.dark .hz-win{background:#0F1626;border-color:#22304D;color:#E7ECF6;box-shadow:0 30px 80px -20px rgba(0,0,0,.6);}
body.dark .hz-bar{background:#121B2E;border-color:#22304D;}body.dark .hz-bar i{background:#2A3955;}
body.dark .hz-th{background:#101726;border-color:#22304D;color:#AAB6CC;}
body.dark .hz-row{background:#0F1626;border-color:#1A2540;}body.dark .hz-row.best{background:rgba(34,197,94,.10);}
body.dark .hz-row .lo,body.dark .hz-k{color:#AAB6CC;}body.dark .hz-k b{color:#F2F5FA;}body.dark .hz-k .g b,body.dark .hz-row.best .ps b{color:#4ade80;}
body.dark .hz-row .sn i{background:#16233F;color:#7AA7FF;}
body.dark .hz-row .chip.ct{background:#16203A;color:#AAB6CC;border-color:#22304D;}
body.dark .hz-row .chip.tk{background:#132447;color:#7AA7FF;border-color:#24407a;}
body.dark .hz-stg b.on{color:#AAB6CC;}body.dark .hz-stg b.on::before{background:#E7ECF6;}
@media(max-width:1100px){.hz{flex-direction:column;align-items:stretch;min-height:auto;padding-top:28px;gap:30px;}.hz-l{flex:none;max-width:none;}.hz-win{transform:none;animation:none;}}
@media(max-width:640px){.hz{padding:18px 0 10px;}.hz-th,.hz-row{grid-template-columns:minmax(0,1.5fr) 1fr;}.hz-th span:nth-child(2),.hz-th span:nth-child(3),.hz-row .lo,.hz-row .rl{display:none;}.hz-k{font-size:11.5px;}.hz-h{font-size:17px;}}
@media (prefers-reduced-motion:reduce){.hz-win{animation:none}}

body.guest:not(.gq) .hero-sec{display:none!important;}
body.guest.gq .hz{display:none!important;}

/* hero v3b : ascenseur de 2 dashboards + toasts */
.hz-r{position:relative;}
.hz-lift{position:relative;height:600px;}
.hz-lift .hz-win{position:absolute;left:0;right:0;top:0;transition:transform 1.4s cubic-bezier(.65,0,.25,1),opacity 1.1s ease,filter 1.1s;animation:none;}
.hz-win.p-front{transform:rotateY(-7deg) rotateX(2deg) translateY(84px);opacity:1;z-index:2;}
.hz-win.p-back{transform:rotateY(-7deg) rotateX(2deg) translateY(-6px) translateX(64px) scale(.86);opacity:1;z-index:1;filter:brightness(.97) saturate(.8);}
.hz-win.p-up{transform:rotateY(-7deg) rotateX(2deg) translateY(-150px) scale(.96);opacity:0;z-index:3;}
.hz-win.p-low{transform:rotateY(-7deg) rotateX(2deg) translateY(-110px) translateX(110px) scale(.76);opacity:0;z-index:0;transition:none;}
.hz-toast{position:absolute;right:-6px;bottom:12px;z-index:4;display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:14px;background:#fff;border:1px solid #DCE3EC;box-shadow:0 14px 34px rgba(11,26,60,.16);font-size:13px;color:#0B1A3C;opacity:0;transform:translateY(14px);transition:opacity .4s,transform .4s;pointer-events:none;max-width:320px;}
.hz-toast.on{opacity:1;transform:none;}
.hz-toast i{flex:0 0 30px;height:30px;border-radius:9px;background:#ECFDF3;color:#15803d;display:flex;align-items:center;justify-content:center;font-style:normal;font-weight:800;}
.hz-toast b{font-weight:700;}.hz-toast small{display:block;color:#7A879D;font-size:11.5px;}
.hz-k b{display:inline-block;transition:transform .3s;}.hz-k b.bump{transform:scale(1.1);color:#1a56db;}
.hz-row .ps .chip.tk::before{content:"";width:6px;height:6px;border-radius:50%;background:#1a56db;animation:qdPulse 1.2s infinite;}
@keyframes qdPulse{50%{opacity:.25}}
body.dark .hz-toast{background:#111A2E;border-color:#22304D;color:#E7ECF6;}body.dark .hz-toast i{background:rgba(34,197,94,.15);color:#4ade80;}
@media(max-width:1100px){.hz-lift{height:560px;}.hz-win.p-front{transform:translateY(54px);}.hz-win.p-back{transform:translateY(0) translateX(26px) scale(.92);}.hz-win.p-up{transform:translateY(-110px);}.hz-win.p-low{transform:translateY(-70px) translateX(40px) scale(.85);}}
@media(max-width:640px){.hz-lift{height:520px;}.hz-toast{left:8px;right:8px;max-width:none;}}

/* hero v4 : réplique du vrai tableau mission + défilement bas→haut jusqu'au meilleur prix sélectionné */
.hz-win{font-size:12.5px;}
.hz-tb{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid #EEF2F7;}
.hz-tb .sr{flex:0 0 150px;height:30px;border:1px solid #DCE3EC;border-radius:9px;display:flex;align-items:center;padding:0 10px;color:#A0AEC0;font-size:11.5px;}
.hz-tb .dots{display:flex;align-items:center;gap:5px;margin:0 6px;color:#A0AEC0;font-size:11px;font-weight:600;}
.hz-tb .dots i{width:6px;height:6px;border-radius:50%;background:#0B1A3C;}
.hz-tb .dots i.c{background:#1a56db;box-shadow:0 0 0 3px rgba(26,86,219,.18);}
.hz-tb .dots i.o{background:#CBD5E1;}
.hz-tb .bt{margin-left:auto;display:flex;gap:6px;}
.hz-tb .bt span{height:30px;padding:0 11px;border-radius:9px;border:1px solid #DCE3EC;display:flex;align-items:center;font-size:11.5px;font-weight:650;white-space:nowrap;}
.hz-tb .bt span.k{background:#0B1A3C;color:#fff;border-color:#0B1A3C;}
.hz-h{padding:12px 16px 2px;}
.hz-k{padding:2px 16px 12px;}
.hz-tr{display:grid;grid-template-columns:20px minmax(0,1.55fr) 108px minmax(0,.9fr) 84px 98px 112px;align-items:center;gap:8px;padding:0 14px;}
.hz-tr.th{white-space:nowrap;background:#F3F6FA;border-top:1px solid #EEF2F7;border-bottom:1px solid #EEF2F7;height:34px;font-size:9.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#4A5568;}
.hz-tr.th span:last-child{text-align:right;}
.hz-tr>*{min-width:0;} .hz-tr>span:nth-child(4){white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}   /* city names never spill on Reliability */
.hz-vp{position:relative;height:330px;overflow:hidden;}
.hz-list{position:absolute;left:0;right:0;top:0;will-change:transform;}
.hz-list.go{transition:transform 1.5s cubic-bezier(.5,0,.15,1);}
.hz-list.pop .hz-tr.rw{animation:hzIn .42s cubic-bezier(.2,.8,.2,1) both;}
@keyframes hzIn{from{opacity:0;transform:translateX(34px) scale(.98)}to{opacity:1;transform:none}}
.hz-tr.sel{animation:hzSel .5s ease;}@keyframes hzSel{0%{background:rgba(22,163,74,.28)}100%{}}
.hz-tr.rw{height:55px;border-bottom:1px solid #F1F4F8;background:#fff;transition:background .4s;}
.hz-tr .cb{width:15px;height:15px;border:1.5px solid #C9D3E0;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:background .25s,border-color .25s;}
.hz-tr .cb.on{background:#1a56db;border-color:#1a56db;}
.hz-tr .cb.on::after{content:"";width:7px;height:4px;border:2px solid #fff;border-top:0;border-right:0;transform:rotate(-45deg) translate(1px,-1px);}
.hz-tr .sp{display:flex;align-items:center;gap:9px;font-weight:650;white-space:nowrap;overflow:hidden;}
.hz-tr .sp i{flex:0 0 22px;height:22px;border-radius:6px;font:800 9.5px/22px Inter,sans-serif;text-align:center;font-style:normal;color:#fff;}
.hz-tr .sp b{overflow:hidden;text-overflow:ellipsis;font-weight:650;}
.hz-tr .ty span{display:inline-block;padding:3px 8px;border-radius:6px;background:#F3F6FA;font-size:11px;font-weight:600;color:#4A5568;white-space:nowrap;}
.hz-tr .lc{white-space:nowrap;color:#2D3748;}
.hz-tr .rl{display:flex;align-items:center;gap:5px;font-weight:650;font-size:11.5px;}
.hz-tr .rl u{display:inline-flex;gap:2px;}.hz-tr .rl u s{width:4px;height:12px;border-radius:2px;background:#E2E8F0;text-decoration:none;}
.hz-tr .rl.h{color:#15803d;}.hz-tr .rl.h u s{background:#16a34a;}
.hz-tr .rl.m{color:#b45309;}.hz-tr .rl.m u s:nth-child(-n+2){background:#f59e0b;}
.hz-tr .ct{display:flex;gap:4px;}
.hz-tr .ct span{width:30px;height:28px;border:1px solid #DCE3EC;border-radius:8px;display:flex;align-items:center;justify-content:center;}
.hz-tr .ct svg{width:13px;height:13px;}
.hz-tr .pr{text-align:right;}
.hz-tr .pr b{display:block;font-size:14.5px;font-weight:700;}
.hz-tr .pr small{color:#7A879D;font-size:10.5px;}
.hz-tr .pr .chip{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:8px;font-size:11px;font-weight:650;}
.hz-tr .pr .chip.tk{background:#EEF3FC;color:#1a56db;border:1px solid #c7d7f7;}
.hz-tr .pr .chip.cn{background:#F3F6FA;color:#4A5568;border:1px solid #E2E8F0;}
.hz-tr.sel{background:#F0FDF4;box-shadow:inset 3px 0 0 #16a34a;}
.hz-tr.sel .pr b{color:#15803d;}
.hz-tr .pr em{display:none;font-style:normal;font-size:10px;font-weight:700;color:#15803d;letter-spacing:.04em;}
.hz-tr.sel .pr em{display:block;}
.hz-tr.sel .pr small{display:none;}
/* échange rapide des fenêtres */
.hz-lift .hz-win{transition:transform .55s cubic-bezier(.65,0,.35,1),filter .55s;}
.hz-lift .hz-win.p-up{opacity:0;transition:transform .45s cubic-bezier(.6,0,.2,1),opacity .16s ease;z-index:0;}
.hz-lift{height:610px;}
body.dark .hz-tb{border-color:#22304D;}body.dark .hz-tb .sr,body.dark .hz-tb .bt span{border-color:#22304D;color:#8D9AB2;}
body.dark .hz-tb .bt span.k{background:#E7ECF6;color:#0B1A3C;border-color:#E7ECF6;}body.dark .hz-tb .dots i{background:#E7ECF6;}
body.dark .hz-tr.th{background:#101726;border-color:#22304D;color:#AAB6CC;}
body.dark .hz-tr.rw{background:#0F1626;border-color:#1A2540;}body.dark .hz-tr .lc{color:#C9D3E0;}
body.dark .hz-tr .ty span{background:#16203A;color:#AAB6CC;}body.dark .hz-tr .ct span{border-color:#22304D;color:#AAB6CC;}
body.dark .hz-tr.sel{background:rgba(34,197,94,.10);}body.dark .hz-tr.sel .pr b,body.dark .hz-tr .pr em{color:#4ade80;}
body.dark .hz-tr .pr .chip.tk{background:#132447;color:#7AA7FF;border-color:#24407a;}body.dark .hz-tr .pr .chip.cn{background:#16203A;color:#AAB6CC;border-color:#22304D;}
body.dark .hz-tr .cb{border-color:#3A4A6B;}
@media(max-width:1380px){.hz-tr{grid-template-columns:20px minmax(0,1.6fr) minmax(0,.9fr) 84px 98px 112px;}.hz-tr .ty{display:none;}.hz-tb .bt span:not(.k){display:none;}}
@media(max-width:820px){.hz-tr{grid-template-columns:20px minmax(0,1.6fr) 112px;}.hz-tr .lc,.hz-tr .rl,.hz-tr .ct{display:none;}.hz-tb .sr{display:none;}}

.hz-tr.th>span{background:none!important;padding:0!important;border:0!important;font-size:9.5px!important;font-weight:700!important;color:inherit!important;letter-spacing:.06em;}
body.dark .hz-tr.th>span{color:#AAB6CC!important;}

/* hero v5 : pile de cartes à plat, un seul mouvement à la fois */
.hz-r{perspective:none!important;}
.hz-lift{height:560px!important;}
.hz-lift .hz-win{position:absolute;left:0;right:0;top:0;transform-origin:center top;animation:none!important;box-shadow:0 24px 60px -18px rgba(11,26,60,.25),0 4px 14px rgba(11,26,60,.05)!important;
  transition:transform .55s cubic-bezier(.3,.7,.2,1),opacity .4s ease,filter .4s ease!important;}
.hz-lift .hz-win.c-front{transform:translateY(34px);opacity:1;z-index:2;filter:none;}
.hz-lift .hz-win.c-back{transform:translateY(0) scale(.94);opacity:1;z-index:1;filter:brightness(.97);}
.hz-lift .hz-win.c-out{transform:translateY(-26px) scale(1.01);opacity:0;z-index:3;transition:transform .45s ease-in,opacity .35s ease-in!important;}
.hz-lift .hz-win.c-hide{transform:translateY(0) scale(.94);opacity:0;z-index:0;transition:none!important;}
.hz-toast{display:none!important;}
body.dark .hz-lift .hz-win{box-shadow:0 24px 60px -18px rgba(0,0,0,.6)!important;}
body.dark .hz-lift .hz-win.c-back{filter:brightness(.85);}
@media(max-width:640px){.hz-lift{height:500px!important;}}
#home.hb-on .nca-chips{display:none!important;}   /* attachments already sent with the brief — not shown again under the questions */

/* 22/10 — envois en cours : barre de progression + lignes « Queued » → « Sent ✓ » */
.sndb{margin:14px 0 4px;padding:14px 16px;border:1px solid #E2E8F0;border-radius:14px;background:#fff}
.sndb-t{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.sndb-t b{font-size:15px;color:#0B1A3C}.sndb-t small{flex-basis:100%;margin-left:26px;color:#6B7280;font-size:13px}
.sndb-bar{height:6px;border-radius:99px;background:#EEF0F3;margin-top:12px;overflow:hidden}.sndb-bar i{display:block;height:100%;background:#0B1A3C;border-radius:99px;transition:width .8s ease}
.act-q{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:#3B5BDB}.act-q i{width:7px;height:7px;border-radius:50%;background:#3B5BDB;animation:qPulse 1.4s ease-in-out infinite}
@keyframes qPulse{0%,100%{opacity:.35;transform:scale(.8)}50%{opacity:1;transform:scale(1.15)}}
.just-sent{color:#15803D!important;font-weight:700;animation:hbIn .5s cubic-bezier(.2,.9,.3,1)}
body.dark .sndb{background:#141B2B;border-color:#25304A}body.dark .sndb-t b{color:#E6EAF2}body.dark .sndb-bar{background:#25304A}body.dark .sndb-bar i{background:#8FA8FF}body.dark .act-q{color:#8FA8FF}body.dark .act-q i{background:#8FA8FF}
.sndb-clk{margin-left:auto;font-size:14px;color:#5B6678;font-variant-numeric:tabular-nums}.sndb-clk span{font-weight:700;color:#0B1A3C;font-size:16px}body.dark .sndb-clk span{color:#E6EAF2}

.sndb-see{flex-basis:auto;margin:8px 0 0 26px;border:1px solid #E2E8F0;background:#fff;border-radius:9px;padding:7px 12px;font-weight:600;font-size:13px;color:#0B1A3C;cursor:pointer}
.sndb-done{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.sndb-done b{color:#15803D}.sndb-done .sndb-see{margin:0 0 0 auto}
body.dark .sndb-see{background:#0F1522;border-color:#25304A;color:#E6EAF2}

/* 22/10 — en-tête pendant l'envoi : avion animé + X / N + mini barre + compte à rebours ; bouton E-mail à côté de Share */
.sg-send{display:flex;align-items:center;gap:10px;font-size:13px;color:#0B1A3C;white-space:nowrap}
.sg-send b{font-variant-numeric:tabular-nums;font-size:13.5px}
.sgs-pl{width:16px;height:16px;color:#3B5BDB;display:inline-flex;animation:sgsFly 1.6s ease-in-out infinite}.sgs-pl svg{width:16px;height:16px}
@keyframes sgsFly{0%{transform:translate(-3px,3px);opacity:.4}50%{transform:translate(2px,-2px);opacity:1}100%{transform:translate(6px,-6px);opacity:0}}
.sgs-bar{width:90px;height:5px;border-radius:99px;background:#E6EAF0;overflow:hidden;position:relative}
.sgs-bar i{display:block;height:100%;background:#0B1A3C;border-radius:99px;transition:width .8s ease}
.sgs-bar::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(59,91,219,.35),transparent);animation:sgsShim 1.8s linear infinite}
@keyframes sgsShim{from{transform:translateX(-100%)}to{transform:translateX(100%)}}
.sgs-clk{font-variant-numeric:tabular-nums;color:#5B6678;font-weight:600}
.searchrow #b-rfq:not([hidden]){margin-left:auto!important}.searchrow #b-rfq:not([hidden])~#b-exp{margin-left:8px!important}#b-rfq[hidden]{display:none!important}
body.dark .sg-send{color:#E6EAF2}body.dark .sgs-bar{background:#25304A}body.dark .sgs-bar i{background:#8FA8FF}body.dark .sgs-pl{color:#8FA8FF}body.dark .sgs-clk{color:#A3B1C6}

/* 22/10 Ethan : mail RFQ en popup pendant la recherche fournisseurs (la liste se remplit derrière) */
#lx.lxf-open.lxf-pop{background:rgba(11,20,40,.42);backdrop-filter:blur(2px);display:flex!important;align-items:center;justify-content:center;padding:24px!important;overflow:hidden}
#lx.lxf-pop .lxf{width:100%;max-width:820px;max-height:calc(100vh - 48px);min-height:0;background:#fff;border-radius:20px;box-shadow:0 30px 80px rgba(11,26,60,.3);overflow:auto}
#lx.lxf-pop .lxf-top{border-radius:20px 20px 0 0;padding:12px 18px}
#lx.lxf-pop .lxf-main{padding:16px 22px 24px}
#lx.lxf-pop .lxf-mail .em-body{min-height:260px}
.lxp-bar{display:flex;align-items:center;gap:10px;margin:12px 22px 0;padding:10px 14px;border-radius:12px;background:#F3F6FA;font-size:14.5px;font-weight:600;color:var(--ink)}
.lxp-bar small{margin-left:auto;font-weight:500;color:#64748B;font-size:13px}
body.dark #lx.lxf-open.lxf-pop{background:rgba(0,0,0,.55)}body.dark #lx.lxf-pop .lxf{background:#0B0F17}body.dark .lxp-bar{background:#121A2B;color:#E8ECF5}
@media(max-width:700px){#lx.lxf-open.lxf-pop{padding:0!important;align-items:flex-end}#lx.lxf-pop .lxf{max-height:94vh;border-radius:18px 18px 0 0}.lxp-bar{margin:10px 12px 0}.lxp-bar small{display:none}}
.em-lang{padding:10px 18px;border-top:1px solid #EEF1F6;font-size:13px;color:#64748B;background:#FAFBFD;border-radius:0 0 18px 18px}body.dark .em-lang{background:#0F1524;border-color:#1F2A40;color:#94A3B8}

/* 22/10 Ethan : fil e-mail « plus format mail » + pièces jointes ouvrables */
#film .gm-bd{white-space:normal}
.gm-tx{white-space:pre-wrap;word-break:break-word}
.gm-tx a,.gm-sig a{color:#1a56db;text-decoration:none}
.gm-sig{display:flex;gap:12px;align-items:center;margin-top:18px;padding-top:12px;border-top:1px solid #E6E6E6;font-size:12.5px;line-height:1.45;color:#6B7280;white-space:pre-wrap}
.gm-sig img{height:42px;width:auto;border-radius:8px;flex:none}
.gm-sj{color:#334155}
.gm-first{background:#EEF4FF!important;color:#1E40AF!important}
.gm-att{margin-top:18px;padding-top:14px;border-top:1px solid #EEF2F6;white-space:normal}
.gm-att-h{font-size:13px;font-weight:600;color:#475569;margin-bottom:10px}
.gm-att-l{display:flex;flex-wrap:wrap;gap:10px}
.gm-fc{display:flex;align-items:center;gap:10px;width:232px;max-width:100%;padding:8px 12px 8px 8px;border:1px solid #E2E8F0;border-radius:10px;background:#fff;text-decoration:none;color:#0F172A;box-sizing:border-box;transition:border-color .15s,box-shadow .15s}
a.gm-fc:hover{border-color:#94A3B8;box-shadow:0 2px 8px rgba(15,23,42,.08)}
.gm-fc.off{opacity:.6;cursor:default}
.gm-ic{width:38px;height:38px;flex:none;border-radius:7px;background:#64748B;color:#fff;font-size:10.5px;font-weight:700;display:flex;align-items:center;justify-content:center;letter-spacing:.02em}
.gm-ic.pdf{background:#DC2626}.gm-ic.xls{background:#15803D}.gm-ic.doc{background:#1D4ED8}
.gm-th{width:38px;height:38px;flex:none;border-radius:7px;background:#F1F5F9 center/cover no-repeat}
.gm-fn{min-width:0;display:flex;flex-direction:column}
.gm-fn b{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gm-fn small{font-size:12px;color:#64748B}
body.dark .gm-fc{background:#121A2B;border-color:#1F2A40;color:#E8ECF5}body.dark .gm-sig,body.dark .gm-att{border-color:#1F2A40}body.dark .gm-sj{color:#CBD5E1}
@media(max-width:700px){.gm-fc{width:100%}}
.gm-clip{font-style:normal;margin-right:6px;font-size:13px}
.dc-typing>div{display:inline-flex;gap:4px;align-items:center;padding:12px 14px!important}.dc-typing i{width:6px;height:6px;border-radius:50%;background:#94A3B8;animation:dcDot 1.1s infinite ease-in-out}.dc-typing i:nth-child(2){animation-delay:.15s}.dc-typing i:nth-child(3){animation-delay:.3s}
@keyframes dcDot{0%,60%,100%{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}
