/* Forum de test — composeur de post (mise en forme, émojis, compteur) et rappel « pas d'émoji » dans les réponses */
.phf-bar{position:relative;display:flex;align-items:center;gap:4px;flex-wrap:wrap;margin:0 0 6px}
.phf-bar button{background:rgba(255,255,255,.05);border:1px solid var(--t-border,rgba(255,255,255,.12));color:var(--t-text,#e6e9ef);min-width:32px;height:30px;border-radius:8px;cursor:pointer;font-size:14px;padding:0 8px}
.phf-bar button:hover{border-color:var(--t-accent,rgba(244,184,96,.6))}
.phf-count{margin-left:auto;font-size:12px;color:var(--t-text2,#9aa3b2)}
.phf-count.near b{color:var(--t-link,#f4b860)}.phf-count.over b{color:#ff4d6d}
.phf-ht{margin-left:auto;font-size:12px;color:var(--t-text2,#9aa3b2)}.phf-ht+.phf-count{margin-left:10px}.phf-ht.over,.phf-ht.over b{color:#ff4d6d}   /* #hashtags : trois au plus par post (24 oct 2026) */
.phf-emo{position:absolute;z-index:30;top:36px;left:0;width:300px;max-width:90vw;display:grid;grid-template-columns:repeat(8,1fr);gap:2px;padding:8px;background:var(--t-card,#161b24);border:1px solid var(--t-border,rgba(255,255,255,.15));border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.5)}
.phf-emo[hidden]{display:none}
.phf-emo button{background:transparent;border:0;font-size:20px;height:34px;min-width:0;padding:0}
.phf-emo button:hover{background:rgba(255,255,255,.08)}
.phf-preview{margin:6px 0 0;padding:8px 12px;border:1px dashed var(--t-border,rgba(255,255,255,.15));border-radius:10px;font-size:14px;line-height:1.55;word-break:break-word}
.phf-preview small{display:block;color:var(--t-text2,#9aa3b2);font-size:11px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:2px}
.ph-tip-float{position:fixed;z-index:9999;display:none;background:var(--t-btn2-bg,#2a1f10);border:1px solid var(--t-accent,rgba(244,184,96,.5));color:var(--t-link,#f4d29a);font-size:13px;padding:6px 10px;border-radius:8px;pointer-events:none}
.post-content s,.post-main-content s{opacity:.75}
/* Accueil — module « Articles tendances » (colonne de droite, 9 oct 2026) */
.ph-trend-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.ph-trend-list li{display:flex;gap:10px;align-items:flex-start}
.ph-trend-n{flex:0 0 26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;background:var(--t-btn2-bg,rgba(244,184,96,.14));color:var(--t-link,#f4b860)}
.ph-trend-list li:first-child .ph-trend-n{background:var(--t-accent,#f4b860);color:var(--t-accent-text,#1a1206)}
.ph-trend-body{min-width:0}
.ph-trend-title{font-weight:700;font-size:14px;line-height:1.3;color:var(--text,var(--t-text,#e6e9ef))}
.ph-trend-addr{font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ph-trend-meta{font-size:11.5px;color:var(--t-text2,#9aa3b2)}
/* Survol / appui long du titre d'un article tendance : post de présentation flottant */
.ph-artpost{cursor:help;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}
.ph-artpost:hover{color:var(--t-link,#f4d29a)}
.art-tip.art-tip-post-box{width:340px;max-width:calc(100vw - 20px)}
.art-tip-post{font-size:14px;line-height:1.55;margin:6px 0 8px;max-height:260px;overflow:auto;word-break:break-word}
.art-tip-img{display:block;width:100%;max-height:170px;object-fit:cover;border-radius:10px;margin:0 0 8px}
/* Composeur « tel quel » (9 oct 2026) : la mise en forme s'affiche pendant la frappe */
.phf-editor{min-height:96px;max-height:340px;overflow-y:auto;background:var(--bg-input,var(--t-strip,#0f131a));border:1px solid var(--border,var(--t-border,rgba(255,255,255,.12)));border-radius:10px;padding:10px 12px;font-size:15px;line-height:1.55;color:var(--text,var(--t-text,#e6e9ef));outline:none;white-space:pre-wrap;word-break:break-word}
.phf-editor:focus{border-color:var(--t-accent,rgba(244,184,96,.6));box-shadow:0 0 0 3px rgba(244,184,96,.12)}
.phf-editor:empty::before{content:attr(data-ph);color:var(--t-text2,#6f7889);pointer-events:none}
.phf-editor s{opacity:.75}
.phf-bar button.on{background:var(--t-btn2-bg,rgba(244,184,96,.22));border-color:var(--t-accent,rgba(244,184,96,.7));color:var(--t-link,#f4d29a)}
/* Rappel discret « contenu original » sous les zones d'écriture (9 oct 2026) */
.ph-orig{margin:6px 0 4px;font-size:12px;color:var(--t-text2,#8b94a3);line-height:1.4}
.ph-orig-i{position:relative;display:inline-block;cursor:help;color:var(--t-text2,#aab3c2);outline:none}
.ph-orig-i:focus::after{content:attr(title);position:absolute;z-index:40;left:50%;bottom:150%;transform:translateX(-50%);width:260px;max-width:80vw;background:var(--t-card,#161b24);border:1px solid var(--t-accent,rgba(244,184,96,.45));border-radius:10px;padding:8px 10px;color:var(--t-text,#d6dbe3);font-size:12px;line-height:1.45;white-space:normal;box-shadow:0 8px 24px rgba(0,0,0,.45)}
/* Description du profil modifiable (9 oct 2026) */
.ph-bio-edit{margin:4px 0 6px}
.ph-bio-btn{background:transparent;border:1px dashed var(--t-accent,rgba(244,184,96,.45));color:var(--t-link,#f4b860);border-radius:999px;padding:4px 12px;font-size:12.5px;cursor:pointer}
.ph-bio-btn:hover{background:var(--t-btn2-bg,rgba(244,184,96,.08))}
.ph-bio-form textarea{width:100%;background:var(--bg-input,var(--t-strip,#0f131a));border:1px solid var(--border,var(--t-border,rgba(255,255,255,.12)));border-radius:10px;color:var(--text,var(--t-text,#e6e9ef));padding:10px 12px;font:inherit;font-size:14px;line-height:1.5;resize:vertical;min-height:96px}
.ph-bio-form textarea:focus{outline:none;border-color:var(--t-accent,rgba(244,184,96,.6))}
.ph-bio-foot{display:flex;align-items:center;gap:8px;justify-content:flex-end;margin-top:6px}
.ph-bio-n{margin-right:auto;font-size:12px;color:var(--t-text2,#9aa3b2)}.ph-bio-n.over b{color:#ff4d6d}
.ph-bio-cancel{background:transparent;border:0;color:var(--t-text2,#aab3c2);cursor:pointer;font-size:13px}
/* Résultat de recherche entier cliquable ; bulle 💬 de la page d'un post = ouvrir la réponse (9 oct 2026) */
.ht-result-link{display:block;color:inherit!important;text-decoration:none!important}
.ht-result-link:hover .post-content{color:var(--t-text,#fff)}
.reply-toggle{cursor:pointer}
/* Page Mes gains — bloc « Mon wallet Solana » (9 oct 2026) */
.phw{background:var(--t-card,#161b24);border:1px solid rgba(153,69,255,.35);border-radius:14px;padding:14px 16px;margin:0 0 14px;box-shadow:0 0 18px rgba(153,69,255,.08)}
.phw-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}
.phw-head h2{margin:0 0 2px;font-size:17px}
.phw-head p{margin:0;color:var(--t-text2,#aab3c2);font-size:13px}
.phw-test{font-size:11px;font-weight:700;letter-spacing:.04em;color:var(--t-link,#f4d29a);background:var(--t-btn2-bg,rgba(244,184,96,.12));border:1px solid var(--t-accent,rgba(244,184,96,.4));border-radius:999px;padding:3px 9px;white-space:nowrap}
.phw-list{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}
.phw-list:empty{display:none}
.phw-list li{display:flex;align-items:center;gap:10px;background:var(--t-strip,#0f131a);border:1px solid var(--t-border,rgba(255,255,255,.08));border-radius:10px;padding:8px 10px;font-size:13px}
.phw-sol{width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#9945ff,#14f195);color:var(--t-text,#fff);font-weight:700}
.phw-list code{font-size:13px;color:var(--t-text,#e6e9ef)}
.phw-ok{color:var(--t-pos,#3ee08f);font-weight:700;font-size:12px}
.phw-list small{color:var(--t-text2,#9aa3b2);margin-left:auto}
.phw-del{background:transparent;border:1px solid rgba(242,139,130,.4);color:var(--t-neg,#f28b82);border-radius:8px;padding:2px 8px;cursor:pointer}
.phw-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:10px}
.phw-connect{background:linear-gradient(135deg,#9945ff,#14f195);color:#0b0f17;border:0;border-radius:10px;padding:9px 16px;font-weight:700;cursor:pointer}
.phw-connect:hover{filter:brightness(1.08)}
.phw-note{font-size:12px;color:var(--t-text2,#9aa3b2)}
.phw-pick{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
/* Mes gains › réunir un autre de mes comptes (29 oct 2026) */
.phf{margin-top:14px;border-top:1px solid var(--t-border,rgba(255,255,255,.1));padding-top:10px}
.phf [hidden]{display:none!important}
.phf summary{cursor:pointer;font-weight:700;font-size:14px}
.phf p{font-size:13px;margin:8px 0}
.phf-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:8px}
.phf-addr{flex:1 1 260px;min-width:0;background:var(--t-strip,#0f131a);color:var(--t-text,#e6e9ef);border:1px solid var(--t-border,rgba(255,255,255,.2));border-radius:10px;padding:8px 10px;font:13px ui-monospace,monospace}
.phf-resume{margin-top:10px;padding:10px 12px;border:1px solid rgba(153,69,255,.45);border-radius:10px;background:rgba(153,69,255,.07)}
.phf-resume h3{margin:0 0 6px;font-size:14px}
.phf-resume ul{margin:0;padding-left:18px;font-size:13px}
.phf-warn{color:var(--t-neg,#f28b82);font-weight:700}
.phf-no{background:transparent;border:1px solid var(--t-border,rgba(255,255,255,.25));color:var(--t-text,#e6e9ef);border-radius:10px;padding:8px 14px;cursor:pointer}
.phw-pick p{width:100%;margin:0 0 2px;font-size:13px;color:var(--t-text,#d6dbe3)}
.phw-pick button,.phw-pick a{background:var(--t-strip,#1c2230);border:1px solid rgba(153,69,255,.45);color:var(--t-text,#e6e9ef)!important;border-radius:999px;padding:6px 14px;font-size:13px;cursor:pointer;text-decoration:none!important}
.phw-msg{margin-top:10px;font-size:13px;color:var(--t-pos,#3ee08f)}
.phw-msg.bad{color:var(--t-neg,#ff8a8a)}

/* Connexion par wallet (page de connexion) */
.phw-or{display:flex;align-items:center;gap:10px;margin:18px 0 12px;color:var(--t-text2,#8f98a8);font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.phw-or::before,.phw-or::after{content:'';flex:1;height:1px;background:rgba(255,255,255,.12)}
.phw-login{margin:0 0 6px;text-align:center}
.phw-login .phw-connect{width:100%;padding:11px 16px;font-size:15px}
.phw-login .phw-note{margin:8px 0 0}
.phw-login .phw-pick{justify-content:center}

/* 9 oct 2026 — Boutons d'action des posts (♥ 👎 ↺ 💬) plus gros sur ordinateur (réduits un peu le 9 oct au soir) */
@media (min-width: 1025px) {
  .post-stats { gap: 8px; }
  .post-stats .stat-btn, .stat-action-btn {
    font-size: 15px !important; padding: 7px 14px !important; gap: 6px !important;
    min-height: 36px; border-radius: 999px !important;
  }
  .post-stats .stat-btn span, .stat-action-btn span { font-size: 14px; font-weight: 700; }
}
/* Aide à l'écriture (22 oct 2026) : ✓ Corriger · ✨ Améliorer · 🌐 Traduire, et la proposition dessous */
.phf-ia{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:8px 0 0}
.phf-ia button,.phf-ia select{white-space:nowrap;background:rgba(255,255,255,.05);border:1px solid var(--t-border,rgba(255,255,255,.12));color:var(--t-text,#e6e9ef);height:30px;border-radius:8px;cursor:pointer;font-size:13px;padding:0 9px;font-family:inherit}
.phf-ia button small{color:var(--t-text2,#9aa3b2);font-size:11px;margin-left:2px}
.phf-ia button:hover,.phf-ia select:hover{border-color:var(--t-accent,rgba(244,184,96,.6))}
.phf-ia button.on{background:var(--t-btn2-bg,rgba(244,184,96,.22));border-color:var(--t-accent,rgba(244,184,96,.7))}
.phf-ia.busy button{opacity:.55;cursor:wait}
.phf-ia-tr{display:inline-flex;gap:0}
.phf-ia-tr button{border-radius:8px 0 0 8px}
.phf-ia-tr select{border-radius:0 8px 8px 0;border-left:0;max-width:120px;padding:0 4px;color-scheme:dark}
html[data-theme*="clair"] .phf-ia-tr select,html[data-theme="light"] .phf-ia-tr select{color-scheme:light}
.phf-ia-res{margin:8px 0 0;padding:10px 12px;border:1px solid var(--t-accent,rgba(244,184,96,.45));border-radius:10px;background:rgba(244,184,96,.06);font-size:14px;line-height:1.55}
.phf-ia-res[hidden]{display:none}
.phf-ia-h{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--t-text2,#9aa3b2);margin-bottom:4px}
.phf-ia-h small{text-transform:none;letter-spacing:0}
.phf-ia-txt{word-break:break-word;max-height:260px;overflow-y:auto}
.phf-ia-act{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.phf-ia-act button{height:32px;border-radius:8px;padding:0 12px;cursor:pointer;font-size:13px;font-family:inherit;border:1px solid var(--t-border,rgba(255,255,255,.15));background:rgba(255,255,255,.05);color:var(--t-text,#e6e9ef)}
.phf-ia-act .phf-ia-ok{background:var(--t-accent,#f4b860);border-color:transparent;color:#1a1206;font-weight:600}
.phf-ia-wait{color:var(--t-text2,#9aa3b2)}
.phf-ia-err{color:#ff8a9e;cursor:pointer}

/* 24 oct 2026 (Gérald) : texte des messages plus gros (13 → 16 px) et des réponses (14 → 15 px) */
.post-card .post-content { font-size: 16px; line-height: 1.6; }
@media (max-width: 600px) { .post-card .post-content { font-size: 15.5px; } }
.rp-b p { font-size: 15px; }
/* 24 oct 2026 (Gérald) : aperçu court des messages = 3 lignes écrites normalement (sans fondu), fil et profil, téléphone comme ordinateur.
   Dans l'aperçu, les lignes vides entre paragraphes sont masquées (3 lignes de vrai texte) ; elles reviennent quand on ouvre le message.
   Au bout de la 3e ligne, un petit « … Lire la suite » en couleur (posé par phSuite, textlimits.js) sur le fond du message. */
.post-card .post-content.truncated { -webkit-line-clamp: 3; }
.post-card .post-content.truncated br + br { display: none; }
html .post-card .post-expand-btn.ph-suite { position: absolute; right: 0; z-index: 1; margin: 0; border: 0 !important; cursor: pointer; transition: none !important;
    padding: 0 0 0 2.4em !important; font-size: 14px; font-weight: 600; white-space: nowrap; color: var(--t-link, var(--accent3, #0d9488)) !important;
    background: linear-gradient(to right, transparent, var(--ph-suite-fond, #fff) 2em) !important; }
html .post-card .post-expand-btn.ph-suite::before { content: '… '; color: var(--text, inherit); font-weight: 400; }
html .post-card .post-expand-btn.ph-suite:hover { text-decoration: underline; }
/* Message ouvert : « ↑ Réduire » juste sous le texte, même couleur (24 oct 2026, Gérald : pouvoir remettre le message comme avant) */
html .post-card .post-expand-btn.ph-reduire { display: block; position: static; margin: 8px 0 0; padding: 2px 0 !important; border: 0 !important;
    background: none !important; cursor: pointer; font-size: 14px; font-weight: 600; text-align: left; transition: none !important;
    color: var(--t-link, var(--accent3, #0d9488)) !important; }
html .post-card .post-expand-btn.ph-reduire:hover { text-decoration: underline; }
