/* ============================================================
   SuperLoyer — Pages intérieures (légal, FAQ, forum, support,
   maintenance, déconnexion)
   ============================================================ */

/* ---------- Blocs génériques ---------- */
.page-body{padding:72px 0 96px}
.prose{background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);padding:clamp(26px,5vw,56px);box-shadow:var(--shadow-sm)}
.prose h2{font-size:20px;font-weight:800;letter-spacing:-.4px;margin:32px 0 10px}
.prose h2:first-of-type{margin-top:0}
.prose p,.prose li{font-size:14.5px;line-height:1.8;color:#475569;font-weight:500}
.prose ul{padding-left:22px;list-style:disc}
.prose .note{margin-top:28px;padding:16px 18px;background:var(--amber-soft);border:1px solid #FDE68A;border-radius:14px;
  font-size:12.5px;line-height:1.7;color:#92400E;font-weight:600}
.prose .meta-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px}
.actions-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}

/* ---------- Déconnexion ---------- */
.logout-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:28px;
  background:radial-gradient(600px 320px at 85% -5%,rgba(16,185,129,.14),transparent 60%),var(--bg)}
.logout-card{width:min(100%,480px);background:#fff;border:1px solid var(--border);border-radius:26px;
  padding:44px 38px;text-align:center;box-shadow:var(--shadow-md)}
.logout-card .big-ico{width:84px;height:84px;border-radius:26px;background:var(--brand-soft);color:var(--brand-deep);
  font-size:38px;display:flex;align-items:center;justify-content:center;margin:0 auto 22px}
.logout-card h1{font-size:24px;font-weight:800;letter-spacing:-.6px;margin-bottom:8px}
.logout-card p{color:var(--muted);font-size:14px;font-weight:500;line-height:1.7}
.logout-card .actions-row{justify-content:center;margin-top:26px}
.logout-status{font-size:12px;font-weight:700;color:var(--muted);margin-top:16px}

/* ---------- FAQ ---------- */
.faq-page{max-width:820px;margin:0 auto;display:flex;flex-direction:column;gap:12px}
.faq-search{display:flex;align-items:center;gap:10px;background:#fff;border:1.5px solid var(--border-strong);
  border-radius:15px;padding:13px 18px;margin-bottom:20px}
.faq-search input{flex:1;border:none;outline:none;font-size:15px;background:transparent;color:var(--text)}
.faq-cat{font-size:13px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:var(--brand-deep);margin:26px 0 6px}
.faq-empty{text-align:center;padding:50px 20px;color:var(--muted);font-weight:600}

/* ---------- Forum ---------- */
.forum-layout{display:grid;grid-template-columns:1fr 320px;gap:28px;align-items:start}
.forum-main{display:flex;flex-direction:column;gap:14px}
.forum-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:6px}
.chip{border:1.5px solid var(--border-strong);background:#fff;border-radius:99px;padding:8px 16px;
  font-size:12.5px;font-weight:800;color:var(--muted);white-space:nowrap;transition:all .2s}
.chip.on{background:var(--brand);border-color:var(--brand);color:#fff}
.thread-card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:20px 22px;transition:border-color .2s,box-shadow .25s}
.thread-card:hover{border-color:rgba(16,185,129,.45);box-shadow:var(--shadow-sm)}
.thread-top{display:flex;gap:13px;align-items:flex-start}
.thread-av{width:42px;height:42px;border-radius:13px;background:var(--grad-brand);color:#fff;font-weight:800;
  display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0}
.thread-mid{flex:1;min-width:0}
.thread-title{font-size:15.5px;font-weight:800;letter-spacing:-.2px;line-height:1.35}
.thread-excerpt{font-size:13px;color:var(--muted);line-height:1.6;margin-top:4px;font-weight:500}
.thread-meta{display:flex;gap:14px;margin-top:10px;font-size:11.5px;font-weight:700;color:#8494AC;flex-wrap:wrap}
.thread-meta b{color:var(--brand-deep)}
.thread-tag{font-size:10.5px;font-weight:800;padding:4px 11px;border-radius:99px;background:var(--soft);color:#475569}
.thread-replies{border-top:1px dashed var(--border);margin-top:16px;padding-top:14px;display:none;flex-direction:column;gap:10px}
.thread-card.open .thread-replies{display:flex}
.reply{display:flex;gap:10px;align-items:flex-start;background:var(--bg);border-radius:13px;padding:12px 14px}
.reply .rav{width:30px;height:30px;border-radius:9px;background:var(--blue-soft);color:#1D4ED8;font-size:11px;font-weight:800;
  display:flex;align-items:center;justify-content:center;flex-shrink:0}
.reply p{font-size:12.5px;line-height:1.6;color:#334155;font-weight:500}
.reply .rwho{font-size:11px;font-weight:800;color:var(--text)}
.reply .rwhen{font-size:10.5px;color:#94A3B8;font-weight:600}
.reply-form{display:flex;gap:8px;margin-top:6px}
.reply-form input{flex:1;border:1.5px solid var(--border-strong);border-radius:12px;padding:11px 14px;font-size:13px;outline:none}
.reply-form input:focus{border-color:var(--brand)}
.forum-side{position:sticky;top:calc(var(--header-h) + 20px);display:flex;flex-direction:column;gap:16px}
.side-card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:22px}
.side-card h3{font-size:14.5px;font-weight:800;margin-bottom:12px}
.side-card p,.side-card li{font-size:12.5px;color:var(--muted);line-height:1.65;font-weight:500}
.side-card ul{padding-left:18px;list-style:disc;display:flex;flex-direction:column;gap:6px}
.side-card .btn{width:100%}
.forum-empty{text-align:center;padding:56px 20px;color:var(--muted);font-weight:600;background:#fff;
  border:1px dashed var(--border-strong);border-radius:18px}
@media(max-width:880px){.forum-layout{grid-template-columns:1fr}.forum-side{position:static;flex-direction:row;flex-wrap:wrap}
  .forum-side .side-card{flex:1;min-width:240px}}

/* ---------- Formulaire de thread / modale simple ---------- */
.form-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);padding:28px;box-shadow:var(--shadow-sm)}
.form-card h3{font-size:18px;font-weight:800;letter-spacing:-.3px;margin-bottom:18px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-grid .field{margin-bottom:0}
.form-card .btn{margin-top:18px}
@media(max-width:640px){.form-grid{grid-template-columns:1fr}}

/* ---------- Support ---------- */
.support-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}
.support-channels{display:flex;flex-direction:column;gap:14px}
.channel-card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:20px 22px;display:flex;
  gap:16px;align-items:center;transition:transform .2s,border-color .2s,box-shadow .25s}
.channel-card:hover{transform:translateY(-3px);border-color:rgba(16,185,129,.45);box-shadow:var(--shadow-sm)}
.channel-ico{width:50px;height:50px;border-radius:15px;display:flex;align-items:center;justify-content:center;font-size:23px;flex-shrink:0}
.channel-card b{font-size:14.5px;display:block}
.channel-card span{font-size:12.5px;color:var(--muted);font-weight:600;display:block}
.channel-card .go{margin-left:auto;color:var(--brand-deep);font-weight:800;font-size:18px}
.support-hours{background:var(--ink);color:#fff;border-radius:20px;padding:24px 26px}
.support-hours h3{font-size:15px;font-weight:800;margin-bottom:12px}
.support-hours li{display:flex;justify-content:space-between;font-size:13px;color:#9FB0C9;padding:6px 0;font-weight:600;border-bottom:1px dashed rgba(255,255,255,.12)}
.support-hours li:last-child{border:none}
.support-hours li b{color:#fff}
@media(max-width:880px){.support-grid{grid-template-columns:1fr}}

/* ---------- Maintenance ---------- */
.maint-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:28px;background:var(--grad-hero);color:#fff;text-align:center}
.maint-card{width:min(100%,560px);position:relative}
.maint-card .gear{font-size:56px;margin-bottom:20px;animation:spin 4s linear infinite;display:inline-block}
@keyframes spin{to{transform:rotate(360deg)}}
.maint-card h1{font-size:clamp(26px,4vw,36px);font-weight:800;letter-spacing:-1px;margin-bottom:12px}
.maint-card p{color:rgba(255,255,255,.78);font-size:15px;line-height:1.7;font-weight:500}
.maint-card .eta{margin:26px auto 0;max-width:380px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.18);
  border-radius:16px;padding:16px 20px;font-size:13px;font-weight:700;color:#A7F3D0}
.maint-actions{display:flex;gap:12px;justify-content:center;margin-top:28px;flex-wrap:wrap}

/* ---------- Support page authentifié ---------- */
.page-narrow{max-width:760px;margin:0 auto}
