/* portal.css — Portail usagers/acheteurs. Conçu pour être très lisible (seniors). */
:root{--vert:#03E38D;--vert-d:#04b873;--marine:#1B2434;--bleu-fonce:#0D224C;--base:20px}
*{box-sizing:border-box}
html{font-size:var(--base)}
body{margin:0;font-family:"Trebuchet MS","Segoe UI",Tahoma,sans-serif;color:var(--marine);background:#eef3f1;font-size:1rem;line-height:1.5}
.wrap{max-width:880px;margin:0 auto;padding:0 16px 60px}
.demo-note{background:#FFF3A8;color:#5b4b00;text-align:center;padding:8px;font-size:.8rem}
header.top{background:var(--marine);color:#fff;padding:14px 16px;display:flex;align-items:center;gap:12px;position:sticky;top:0;z-index:10;flex-wrap:wrap}
.logo{height:38px;width:auto;display:inline-block;vertical-align:middle}
.logo.big{height:110px;width:auto;display:inline-block}
.ttl{font-weight:bold;font-size:1.05rem}
.sp{flex:1}
.badge{background:var(--vert);color:var(--marine);font-size:.78rem;font-weight:bold;padding:4px 12px;border-radius:20px}
.txtsize{display:flex;gap:6px}
.txtsize button{width:44px;height:44px;border:0;border-radius:10px;background:#33405c;color:#fff;font-size:1.1rem;font-weight:bold;cursor:pointer}
.center{min-height:74vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:16px;padding:30px 16px;max-width:560px;margin:0 auto}
h1{font-size:1.9rem;margin:.2em 0}
h2{font-size:1.5rem;border-bottom:3px solid var(--vert);padding-bottom:6px;display:inline-block;margin-top:24px}
h3{font-size:1.25rem;margin-top:24px}
.lead{font-size:1.15rem}
.hint{font-size:.9rem;color:#789}
.empty{font-size:1.1rem;color:#667;background:#fff;border-radius:14px;padding:22px;text-align:center}
.bigcard{background:#fff;border-radius:18px;box-shadow:0 4px 18px rgba(0,0,0,.08);padding:26px;max-width:460px;width:100%}
.bigcard input{width:100%;font-size:1.6rem;text-align:center;padding:14px;border:2px solid #cdd6df;border-radius:12px;letter-spacing:2px;margin:10px 0}
.btn{display:inline-block;border:0;border-radius:14px;background:var(--vert);color:var(--marine);font-weight:bold;font-size:1.25rem;padding:16px 26px;cursor:pointer;text-decoration:none}
.btn:hover{background:var(--vert-d);color:#fff}.btn.block{display:block;width:100%}
.tiles{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}
.tile{background:#fff;border:0;border-radius:18px;box-shadow:0 4px 14px rgba(0,0,0,.07);padding:26px 18px;cursor:pointer;text-align:center;min-height:160px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--marine);text-decoration:none}
.tile:hover{box-shadow:0 6px 20px rgba(3,227,141,.35)}
.tile .e{font-size:3rem}.tile .t{font-size:1.3rem;font-weight:bold}.tile .n{font-size:.95rem;color:#667}
.tile.pro{border:3px solid var(--vert)}
.doc{display:flex;align-items:center;gap:16px;background:#fff;border-radius:16px;box-shadow:0 3px 12px rgba(0,0,0,.07);padding:18px;margin:12px 0;text-decoration:none;color:var(--marine)}
.doc:hover{box-shadow:0 5px 18px rgba(3,227,141,.3)}
.doc .ic{font-size:2.2rem;width:54px;text-align:center}.doc .dl{flex:1}.doc .dl b{font-size:1.2rem;display:block}.doc .dl small{color:#667}
.doc .go{color:var(--vert-d);font-weight:bold;white-space:nowrap}
.back{background:transparent;border:0;color:var(--bleu-fonce);font:inherit;font-size:1.15rem;font-weight:bold;cursor:pointer;padding:14px 0}
.textcard{background:#fff;border-radius:16px;box-shadow:0 3px 12px rgba(0,0,0,.07);padding:22px;font-size:1.15rem;line-height:1.8}
.role{display:inline-block;background:var(--bleu-fonce);color:#fff;border-radius:20px;padding:4px 14px;font-size:.8rem;font-weight:bold;vertical-align:middle}
.stats{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:12px}
.stat{background:#fff;border-radius:16px;box-shadow:0 3px 12px rgba(0,0,0,.07);padding:20px}
.stat .v{font-size:2.1rem;font-weight:bold;color:var(--bleu-fonce)}.stat .l{color:#667;margin-top:4px}
.track{background:#eef3fb;border-radius:8px;height:16px;overflow:hidden;margin-top:10px}.fill{height:100%;background:var(--vert)}
.logout-line{margin-top:26px;text-align:center}.logout-line a{color:#789}
code{background:#e8eef0;padding:2px 6px;border-radius:6px}
/* Rubrique Vidéos : section + cartes vidéo "à venir" + petits badges */
.vid-section{font-size:1.1rem;color:var(--bleu-fonce);margin-top:28px;margin-bottom:6px;border-left:5px solid var(--vert);padding-left:10px}
.doc.vid .ic{background:#0D224C;color:var(--vert);border-radius:12px;width:54px;height:54px;display:flex;align-items:center;justify-content:center;font-size:1.6rem}
.doc.vid small .badge{background:#eef3fb;color:var(--bleu-fonce);font-size:.72rem;margin-right:6px;padding:3px 9px}
.doc.vid small .badge-soon{background:#FFE9B0;color:#7a5400}
.doc.vid.soon{opacity:.75;background:#fafbfc}
.doc.vid.soon .go{color:#aab2bd}
@media(max-width:560px){.tiles,.stats{grid-template-columns:1fr}}
