/* Dogebarb, feuille commune aux trois pages.
   La premiere partie est celle de la page validee par Karl le 23 septembre 2026,
   deplacee telle quelle ; la suite ajoute la navigation et les blocs des pages
   Histoire et DAO. */
  :root{
    --fond:#06070B; --panneau:#0B0D13; --trait:#1E1B16;
    --or:#D3A055; --or-clair:#F8D880; --turquoise:#00E0B8;
    --encre:#EDE8DC; --muet:#877F70;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
  body{
    background:var(--fond); color:var(--encre); overflow-x:hidden; line-height:1.65;
    font-family:"Helvetica Neue",Helvetica,Arial,sans-serif; -webkit-font-smoothing:antialiased;
  }
  .wrap{max-width:1000px;margin:0 auto;padding:0 20px}
  .mono{font-family:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace}
  .oeil{
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
    font-size:.68rem; letter-spacing:.28em; text-transform:uppercase; color:var(--or);
  }

  /* ---------- AFFICHE ---------- */
  .affiche{
    position:relative; min-height:100svh; display:flex; flex-direction:column;
    align-items:center; justify-content:center; text-align:center; padding:60px 20px 44px;
  }
  .affiche::after{
    content:""; position:absolute; inset:0; pointer-events:none;
    background:radial-gradient(58% 48% at 50% 40%, rgba(211,160,85,.17), transparent 70%);
  }
  .piece{
    position:relative; z-index:1; width:min(58vw,330px); aspect-ratio:1; border-radius:50%;
    background:url('assets/coin.jpg') center/112% no-repeat;
    box-shadow:0 0 0 1px rgba(248,216,128,.35), 0 0 88px rgba(211,160,85,.42);
    animation:flotte 7s ease-in-out infinite;
  }
  @keyframes flotte{0%,100%{transform:translateY(0)}50%{transform:translateY(-13px)}}
  @media (prefers-reduced-motion:reduce){.piece{animation:none}}
  .nom{
    position:relative; z-index:1; margin-top:32px;
    font-size:clamp(3rem,14vw,8.6rem); line-height:.86; font-weight:900; letter-spacing:-.045em;
    background:linear-gradient(175deg,var(--or-clair),var(--or) 62%,#8A6427);
    -webkit-background-clip:text; background-clip:text; color:transparent;
  }
  .ticker{
    position:relative; z-index:1; margin-top:16px;
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
    font-size:.72rem; letter-spacing:.5em; text-indent:.5em; color:var(--muet);
  }
  .accroche{
    position:relative; z-index:1; margin-top:30px; max-width:19ch;
    font-size:clamp(1.1rem,3.4vw,1.7rem); font-weight:600; line-height:1.4;
  }
  .accroche em{font-style:normal;color:var(--or-clair)}
  .fleche{
    position:relative; z-index:1; margin-top:42px; font-size:1.2rem; color:var(--muet);
    text-decoration:none; animation:descend 2.4s ease-in-out infinite;
  }
  @keyframes descend{0%,100%{transform:translateY(0);opacity:.4}50%{transform:translateY(7px);opacity:1}}
  @media (prefers-reduced-motion:reduce){.fleche{animation:none}}

  /* ---------- TROIS CHIFFRES ---------- */
  .chiffres{border-top:1px solid var(--trait);border-bottom:1px solid var(--trait)}
  .chiffres .wrap{
    display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--trait); padding:0;
  }
  .chiffre{background:var(--fond);padding:42px 18px;text-align:center}
  .chiffre b{
    display:block; font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
    font-size:clamp(1.15rem,4vw,2rem); font-weight:700; letter-spacing:-.02em; color:var(--or-clair);
  }
  .chiffre span{
    display:block; margin-top:10px; font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
    font-size:.66rem; letter-spacing:.2em; color:var(--muet);
  }
  @media (max-width:620px){
    .chiffres .wrap{grid-template-columns:1fr}
    .chiffre{padding:26px 18px}
  }

  /* ---------- SECTIONS ---------- */
  section.bloc{padding:clamp(66px,10vw,118px) 0}
  h2{
    margin-top:14px; font-size:clamp(1.55rem,5vw,2.7rem); font-weight:800;
    letter-spacing:-.03em; line-height:1.12;
  }
  .chapo{margin-top:18px;max-width:56ch;color:#9C9484;font-size:1rem}

  /* ---------- REGISTRE ---------- */
  .registre{
    margin-top:38px; border:1px solid var(--trait); border-radius:5px;
    background:var(--panneau); overflow:hidden;
  }
  .registre .entete{
    display:flex; align-items:center; gap:10px; padding:13px 20px;
    border-bottom:1px solid var(--trait); background:rgba(211,160,85,.05);
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
    font-size:.66rem; letter-spacing:.2em; color:var(--muet);
  }
  .registre .entete i{
    width:7px;height:7px;border-radius:50%;background:var(--turquoise);
    box-shadow:0 0 10px var(--turquoise); animation:bat 2s ease-in-out infinite; flex:none;
  }
  @keyframes bat{0%,100%{opacity:1}50%{opacity:.25}}
  @media (prefers-reduced-motion:reduce){.registre .entete i{animation:none}}
  .ligne{display:grid;grid-template-columns:200px 1fr;border-bottom:1px solid var(--trait)}
  .ligne:last-child{border-bottom:0}
  .ligne dt{
    padding:15px 20px; border-right:1px solid var(--trait); color:var(--muet);
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
    font-size:.68rem; letter-spacing:.16em; text-transform:uppercase;
  }
  .ligne dd{
    padding:15px 20px; overflow-wrap:anywhere;
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.88rem;
  }
  .ligne dd b{color:var(--turquoise);font-weight:600}
  .ligne dd .vide{
    color:var(--or-clair); border:1px solid rgba(248,216,128,.3);
    border-radius:2px; padding:2px 9px; font-size:.76rem; letter-spacing:.1em;
  }
  @media (max-width:620px){
    .ligne{grid-template-columns:1fr}
    .ligne dt{border-right:0;border-bottom:1px solid var(--trait);padding:11px 16px}
    .ligne dd{padding:12px 16px 16px;font-size:.83rem}
  }

  /* ---------- IMPOSSIBLE ---------- */
  .grille{margin-top:34px;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}
  .carte{
    border:1px solid var(--trait); border-radius:5px; padding:26px 24px;
    background:linear-gradient(180deg,rgba(211,160,85,.05),transparent);
  }
  .carte .non{
    display:inline-block; font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
    font-size:.6rem; letter-spacing:.2em; color:var(--or);
    border:1px solid rgba(211,160,85,.4); border-radius:2px; padding:3px 9px; margin-bottom:15px;
  }
  .carte h3{font-size:1.02rem;font-weight:700;line-height:1.4}
  .carte p{margin-top:10px;color:#8E8676;font-size:.9rem;line-height:1.75}

  /* ---------- PORTES ---------- */
  .portes{
    margin-top:34px; display:grid; grid-template-columns:repeat(auto-fit,minmax(255px,1fr));
    gap:1px; background:var(--trait); border:1px solid var(--trait); border-radius:5px; overflow:hidden;
  }
  .porte{background:var(--panneau);padding:28px 24px}
  .porte .n{
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
    font-size:.64rem; letter-spacing:.22em; color:var(--turquoise);
  }
  /* Mention d etat (Karl, 30 septembre 2026) : aucune porte n est en service sur MainNet. */
  .porte .bientot{
    display:inline-block; margin-left:10px; padding:2px 8px; border:1px solid rgba(211,160,85,.45); border-radius:2px;
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.58rem; letter-spacing:.2em; text-transform:uppercase; color:var(--or-clair);
    vertical-align:1px;
  }
  .porte h3{margin-top:14px;font-size:1.06rem;font-weight:700;line-height:1.35}
  .porte p{margin-top:11px;color:#8E8676;font-size:.9rem;line-height:1.75}

  /* ---------- PREUVE ---------- */
  .preuve{
    margin-top:34px; border:1px dashed rgba(211,160,85,.34); border-radius:5px;
    padding:clamp(24px,4vw,36px); background:rgba(211,160,85,.035);
  }
  .preuve pre{
    margin-top:16px; padding:15px 17px; background:#05060A; border:1px solid var(--trait);
    border-radius:3px; overflow-x:auto; font-size:.76rem; color:var(--turquoise);
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace; line-height:1.9;
  }

  /* ---------- FINAL ---------- */
  .final{
    position:relative; text-align:center; padding:clamp(76px,12vw,140px) 20px;
    border-top:1px solid var(--trait);
    background:linear-gradient(180deg,transparent,rgba(211,160,85,.08));
  }
  .final h2{max-width:18ch;margin-left:auto;margin-right:auto}
  .final p{margin:20px auto 0;max-width:40ch;color:#9C9484}
  .bouton{
    display:inline-block; margin-top:36px; padding:18px 42px; border-radius:999px;
    background:linear-gradient(160deg,var(--or-clair),var(--or));
    color:#1A1204; font-weight:800; font-size:1rem; text-decoration:none;
    box-shadow:0 12px 40px rgba(211,160,85,.28);
    transition:transform .18s ease, box-shadow .18s ease;
  }
  .bouton:hover{transform:translateY(-2px);box-shadow:0 18px 50px rgba(211,160,85,.4)}
  .secondaire{
    display:inline-block; margin-top:36px; margin-left:12px; padding:18px 34px;
    border:1px solid var(--trait); border-radius:999px; color:var(--encre);
    text-decoration:none; font-size:.82rem; letter-spacing:.14em; text-transform:uppercase;
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
    transition:border-color .18s ease,color .18s ease;
  }
  .secondaire:hover{border-color:var(--or);color:var(--or-clair)}

  footer{
    border-top:1px solid var(--trait); padding:30px 0 48px; text-align:center;
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
    font-size:.72rem; color:var(--muet); line-height:2.1;
  }
  footer a{color:var(--or);text-decoration:none;margin:0 10px}
  footer a:hover{text-decoration:underline}

  /* ================================================================
     AJOUTS DU 28 SEPTEMBRE 2026 : trois pages
     ================================================================ */

  /* ---------- NAVIGATION COMMUNE ----------
     Une rangee unique a toute largeur : Karl lit le site sous 900 px.
     Les trois liens forment un groupe soude (segments d un meme objet). */
  .nav{
    position:sticky; top:0; z-index:50;
    background:rgba(6,7,11,.86); border-bottom:1px solid var(--trait);
    -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px);
  }
  .nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;height:56px}
  .marque{
    display:flex; align-items:center; gap:10px; text-decoration:none; min-width:0;
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
    font-size:.78rem; font-weight:700; letter-spacing:.24em; color:var(--or-clair);
  }
  .marque i{
    width:28px; height:28px; border-radius:50%; flex:none;
    background:url('assets/coin.jpg') center/112% no-repeat;
    box-shadow:0 0 0 1px rgba(248,216,128,.35), 0 0 14px rgba(211,160,85,.35);
  }
  .onglets{display:flex;border:1px solid var(--trait);border-radius:999px;overflow:hidden;flex:none}
  .onglets a{
    padding:8px 15px; text-decoration:none; color:var(--muet);
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
    font-size:.7rem; letter-spacing:.16em; text-transform:uppercase;
    border-left:1px solid var(--trait); transition:color .15s ease, background .15s ease;
  }
  .onglets a:first-child{border-left:0}
  .onglets a:hover{color:var(--or-clair)}
  .onglets a[aria-current="page"]{color:#1A1204;background:linear-gradient(160deg,var(--or-clair),var(--or));font-weight:700}
  @media (max-width:430px){
    .marque span{display:none}
    .onglets a{padding:8px 12px}
  }

  /* Sous la barre, l affiche garde exactement la hauteur d un ecran. */
  .nav + .affiche{min-height:calc(100svh - 57px)}

  /* ---------- CONTRE-VALEUR ----------
     Le montant en dollars suit toujours le montant en XDB, plus discret. */
  .usd{color:var(--muet);font-weight:400;white-space:nowrap}
  .chiffre .usd{display:block;margin-top:6px;font-size:.72rem;letter-spacing:0}

  /* ---------- BLOCS DE TEXTE ---------- */
  .texte{margin-top:26px;max-width:62ch;color:#B4AC9B}
  .texte p + p{margin-top:14px}
  .texte b{color:var(--encre)}
  .source{
    margin-top:18px; font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
    font-size:.68rem; letter-spacing:.06em; color:var(--muet); line-height:1.8;
  }
  .source a{color:var(--or)}
  .etapes{margin-top:30px;display:grid;gap:1px;background:var(--trait);border:1px solid var(--trait);border-radius:5px;overflow:hidden;counter-reset:etape}
  .etape{background:var(--panneau);padding:22px 22px 22px 70px;position:relative;counter-increment:etape}
  .etape::before{
    content:counter(etape,decimal-leading-zero); position:absolute; left:22px; top:22px;
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.7rem; letter-spacing:.2em; color:var(--turquoise);
  }
  .etape h3{font-size:1rem;font-weight:700}
  .etape p{margin-top:8px;color:#8E8676;font-size:.9rem;line-height:1.7}
  .etape a{color:var(--or-clair)}

  /* ---------- SUITE (renvois vers les deux autres pages) ---------- */
  .suite{margin-top:34px;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}
  .suite a{
    display:block; text-decoration:none; color:var(--encre);
    border:1px solid var(--trait); border-radius:5px; padding:26px 24px;
    background:linear-gradient(180deg,rgba(211,160,85,.06),transparent);
    transition:border-color .18s ease;
  }
  .suite a:hover{border-color:var(--or)}
  .suite h3{margin-top:12px;font-size:1.1rem;font-weight:800}
  .suite p{margin-top:8px;color:#8E8676;font-size:.9rem;line-height:1.7}
  .suite .aller{display:inline-block;margin-top:14px;color:var(--or-clair);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.72rem;letter-spacing:.16em}

  /* ---------- EN-TETE DE PAGE INTERIEURE ---------- */
  .entete-page{
    position:relative; text-align:center; padding:clamp(64px,11vw,120px) 20px clamp(44px,7vw,70px);
    border-bottom:1px solid var(--trait);
  }
  .entete-page::after{
    content:""; position:absolute; inset:0; pointer-events:none;
    background:radial-gradient(60% 70% at 50% 20%, rgba(211,160,85,.13), transparent 70%);
  }
  .entete-page > *{position:relative;z-index:1}
  .entete-page h1{
    margin-top:16px; font-size:clamp(2.3rem,9vw,5rem); line-height:.95; font-weight:900; letter-spacing:-.04em;
    background:linear-gradient(175deg,var(--or-clair),var(--or) 62%,#8A6427);
    -webkit-background-clip:text; background-clip:text; color:transparent;
  }
  .entete-page p{margin:22px auto 0;max-width:46ch;color:#9C9484;font-size:1.02rem}

  /* ---------- FRISE (page Histoire) ---------- */
  .frise{margin-top:40px;position:relative;padding-left:28px}
  .frise::before{content:"";position:absolute;left:5px;top:6px;bottom:6px;width:1px;background:linear-gradient(180deg,var(--or),var(--trait))}
  .jalon{position:relative;padding-bottom:38px}
  .jalon:last-child{padding-bottom:0}
  .jalon::before{
    content:""; position:absolute; left:-28px; top:6px; width:11px; height:11px; border-radius:50%;
    background:var(--fond); border:2px solid var(--or);
  }
  .jalon.fort::before{background:var(--or);box-shadow:0 0 14px rgba(211,160,85,.6)}
  .jalon time{
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.7rem; letter-spacing:.18em;
    color:var(--or); text-transform:uppercase;
  }
  .jalon h3{margin-top:6px;font-size:1.12rem;font-weight:800;line-height:1.35}
  .jalon p{margin-top:8px;color:#9C9484;font-size:.94rem;line-height:1.75;max-width:62ch}
  .jalon .preuves{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px}
  .jalon .preuves a{
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.66rem; letter-spacing:.1em;
    color:var(--muet); text-decoration:none; border:1px solid var(--trait); border-radius:2px; padding:3px 8px;
  }
  .jalon .preuves a:hover{color:var(--or-clair);border-color:var(--or)}
  .jalon b.v{color:var(--turquoise);font-weight:600;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em}

  /* ---------- TABLEAU DES VAGUES ---------- */
  .vagues{margin-top:34px;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--trait);border:1px solid var(--trait);border-radius:5px;overflow:hidden}
  .vague{background:var(--panneau);padding:24px 20px}
  .vague .n{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.64rem;letter-spacing:.22em;color:var(--or)}
  .vague .q{margin-top:10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.25rem;font-weight:700;color:var(--turquoise)}
  .vague .usd{display:block;margin-top:2px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.72rem}
  .vague .l{margin-top:10px;font-size:.86rem;color:#9C9484;line-height:1.6}
  @media (max-width:700px){.vagues{grid-template-columns:1fr}}

  /* ---------- PAGE DAO ---------- */
  .bande-essai{
    position:sticky; top:0; z-index:60; padding:7px 14px; text-align:center;
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.72rem; letter-spacing:.05em;
    color:#2E1D05; background:linear-gradient(180deg,#FFB86B,#E8892C);
  }
  .bande-essai a{color:#2E1D05;font-weight:700;margin-left:8px}
  .panneau{margin-top:34px;border:1px solid var(--trait);border-radius:5px;background:var(--panneau);overflow:hidden}
  .panneau .entete{
    display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap;
    padding:13px 20px; border-bottom:1px solid var(--trait); background:rgba(211,160,85,.05);
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.66rem; letter-spacing:.2em; color:var(--muet);
  }
  .panneau .corps{padding:26px 22px}
  .connecter{
    display:inline-block; padding:15px 32px; border-radius:999px; border:0; cursor:pointer;
    background:linear-gradient(160deg,var(--or-clair),var(--or)); color:#1A1204;
    font:800 1rem/1 "Helvetica Neue",Helvetica,Arial,sans-serif;
    box-shadow:0 10px 32px rgba(211,160,85,.25);
  }
  .connecter:disabled{opacity:.6;cursor:progress}
  .connecter:focus-visible,.deconnecter:focus-visible,.choix-vote button:focus-visible{outline:2px solid var(--or-clair);outline-offset:3px}
  .qui{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
  .qui img{width:40px;height:40px;border-radius:50%;object-fit:cover;background:var(--trait)}
  .qui .nom-compte{font-weight:700;font-size:1.05rem;overflow-wrap:anywhere}
  .qui .adresse{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.72rem;color:var(--muet);overflow-wrap:anywhere}
  .deconnecter{
    margin-left:auto; padding:9px 16px; border-radius:999px; cursor:pointer;
    background:rgba(190,50,40,.14); color:#FF9C8F; border:1px solid rgba(255,110,95,.45);
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.68rem; letter-spacing:.14em; text-transform:uppercase;
  }
  .deconnecter:hover{background:rgba(190,50,40,.28);color:#FFC2B9}
  .solde{margin-top:24px;padding-top:22px;border-top:1px solid var(--trait)}
  .solde .q{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(1.5rem,6vw,2.3rem);font-weight:700;color:var(--turquoise);letter-spacing:-.02em;overflow-wrap:anywhere}
  .solde .q small{font-size:.5em;color:var(--muet);font-weight:400;letter-spacing:.1em;margin-left:6px}
  .solde .usd{display:block;margin-top:4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem}
  .note{margin-top:14px;color:#8E8676;font-size:.88rem;line-height:1.7;max-width:60ch}
  .alerte{margin-top:14px;padding:11px 14px;border-radius:4px;font-size:.88rem;line-height:1.6;color:#FFD9D2;background:rgba(150,40,30,.22);border:1px solid rgba(255,120,100,.3)}
  .regles{margin-top:30px;display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
  @media (max-width:560px){.regles{grid-template-columns:1fr}}
  .regle{border:1px solid var(--trait);border-radius:5px;padding:22px 20px}
  .regle .n{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.64rem;letter-spacing:.22em;color:var(--or)}
  .regle h3{margin-top:10px;font-size:1rem;font-weight:700;line-height:1.4}
  .regle p{margin-top:8px;color:#8E8676;font-size:.88rem;line-height:1.7}

  .onglets-votes{display:flex;margin-top:30px;border:1px solid var(--trait);border-radius:999px;overflow:hidden;width:max-content;max-width:100%}
  .onglets-votes button{
    padding:10px 18px; border:0; border-left:1px solid var(--trait); background:transparent; cursor:pointer; color:var(--muet);
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.7rem; letter-spacing:.16em; text-transform:uppercase;
  }
  .onglets-votes button:first-child{border-left:0}
  .onglets-votes button[aria-selected="true"]{color:#1A1204;background:linear-gradient(160deg,var(--or-clair),var(--or));font-weight:700}
  .votes{margin-top:18px;display:grid;gap:14px}
  .vide-votes{
    border:1px dashed rgba(211,160,85,.3); border-radius:5px; padding:30px 22px; text-align:center;
    color:#8E8676; font-size:.92rem; line-height:1.7;
  }
  .vote{border:1px solid var(--trait);border-radius:5px;background:var(--panneau);padding:22px 20px}
  .vote .etat{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.62rem;letter-spacing:.2em;color:var(--turquoise)}
  .vote .etat.ferme{color:var(--muet)}
  .vote h3{margin-top:8px;font-size:1.08rem;font-weight:700;line-height:1.4}
  .vote .dates{margin-top:6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.7rem;color:var(--muet)}
  .choix-vote{margin-top:16px;display:flex;flex-wrap:wrap;gap:10px}
  .choix-vote button{
    padding:11px 20px; border-radius:999px; cursor:pointer; color:var(--encre); background:transparent;
    border:1px solid rgba(211,160,85,.45); font-weight:700; font-size:.92rem;
  }
  .choix-vote button:hover{border-color:var(--or-clair);color:var(--or-clair)}
  .choix-vote button:disabled{opacity:.45;cursor:not-allowed}
  .barre{margin-top:12px}
  .barre .l{display:flex;justify-content:space-between;gap:10px;font-size:.88rem}
  .barre .l span:last-child{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--turquoise)}
  .barre .p{margin-top:5px;height:6px;border-radius:3px;background:var(--trait);overflow:hidden}
  .barre .p i{display:block;height:100%;background:linear-gradient(90deg,var(--or),var(--or-clair))}
  .poids{margin-top:12px;font-size:.86rem;color:#9C9484}
  .poids b{color:var(--turquoise);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:600}

  /* ---------- CONNEXION DANS LA NAVIGATION ----------
     Le portefeuille se connecte depuis n importe quelle page : l echange de
     la page principale et la page DAO s en servent tous deux. */
  .nav-droite{display:flex;align-items:center;gap:10px;flex:none}
  .nav-connecter{
    padding:8px 14px; border-radius:999px; border:0; cursor:pointer; white-space:nowrap;
    background:linear-gradient(160deg,var(--or-clair),var(--or)); color:#1A1204;
    font:800 .74rem/1.2 "Helvetica Neue",Helvetica,Arial,sans-serif;
  }
  .nav-compte{
    display:flex; align-items:center; gap:7px; padding:5px 12px 5px 5px; border-radius:999px; cursor:pointer;
    border:1px solid rgba(211,160,85,.45); background:transparent; color:var(--or-clair);
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.7rem; max-width:150px;
  }
  .nav-compte img{width:22px;height:22px;border-radius:50%;object-fit:cover;flex:none;background:var(--trait)}
  .nav-compte span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  @media (max-width:430px){.nav-compte span{display:none}.nav-compte{padding:5px}}

  /* ---------- ECHANGE (page principale, deuxieme bloc) ----------
     Texte a gauche, widget de Tinyman a droite ; sous 900 px, une pile ou le
     widget suit le texte, juste apres l affiche. */
  .echange{padding:clamp(52px,8vw,96px) 0;border-top:1px solid var(--trait)}
  .echange .wrap{
    display:grid; grid-template-columns:1fr 420px; column-gap:44px; align-items:center;
    grid-template-areas:"titre widget" "texte widget";
  }
  .echange .titre{grid-area:titre;align-self:end}
  .echange .texte-echange{grid-area:texte;align-self:start}
  .echange .cadre-widget{grid-area:widget}
  /* Sous 900 px, la largeur de Karl : le widget vient juste sous le titre. */
  @media (max-width:900px){
    .echange .wrap{grid-template-columns:1fr;grid-template-areas:"titre" "widget" "texte";row-gap:22px}
  }
  .echange .faits{margin-top:22px;display:grid;gap:8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.76rem;color:var(--muet)}
  .echange .faits b{color:var(--turquoise);font-weight:600}
  .cadre-widget{display:flex;justify-content:center}
  .cadre-widget iframe{width:100%;max-width:420px;height:470px;border:0;border-radius:16px;background:#111}

  /* ---------- MENU DU COMPTE ---------- */
  .nav-droite{position:relative}
  .menu-compte{
    position:absolute; top:calc(100% + 10px); right:0; z-index:70; width:min(280px,calc(100vw - 32px));
    display:grid; gap:4px; padding:10px; border-radius:8px;
    background:var(--panneau); border:1px solid rgba(211,160,85,.35); box-shadow:0 18px 40px rgba(0,0,0,.6);
  }
  .menu-compte[hidden]{display:none}
  .menu-compte .adresse-complete{
    padding:6px 8px 10px; border-bottom:1px solid var(--trait); margin-bottom:4px;
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.66rem; color:var(--muet); overflow-wrap:anywhere;
  }
  .menu-compte a,.menu-compte button{
    display:block; width:100%; text-align:left; padding:9px 8px; border-radius:4px; border:0; background:transparent;
    color:var(--encre); text-decoration:none; font:600 .86rem/1.3 "Helvetica Neue",Helvetica,Arial,sans-serif; cursor:pointer;
  }
  .menu-compte a:hover,.menu-compte button:hover{background:rgba(211,160,85,.08);color:var(--or-clair)}
  .menu-compte .deconnecter{margin-left:0;color:#FF9C8F;background:rgba(190,50,40,.12);border:1px solid rgba(255,110,95,.35);
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;text-align:center;margin-top:4px}
  .nav-connecter[hidden],.nav-compte[hidden]{display:none}
  .nav{top:var(--hauteur-bande,0px)}

  /* ---------- AFFICHE COURTE (maquette B approuvee le 28 septembre) ----------
     L affiche se resserre pour que l echange paraisse des le premier ecran. */
  .affiche.courte,.nav + .affiche.courte{min-height:0;padding:34px 20px 30px}
  .affiche.courte .piece{width:min(38vw,190px)}
  .affiche.courte .nom{margin-top:18px;font-size:clamp(2.6rem,10vw,5.6rem)}
  .affiche.courte .accroche{margin-top:16px}
  .echange.suit{padding-top:34px}
  .echange .etat-echange{margin-top:12px;font-size:.86rem;color:#9C9484}

  /* ---------- FORMULAIRE D OUVERTURE (Karl seulement) ---------- */
  .champ{display:block;width:100%;margin-top:8px;padding:11px 12px;border-radius:4px;border:1px solid var(--trait);
    background:#05060A;color:var(--encre);font:inherit;color-scheme:dark}
  .champ:focus{outline:1px solid var(--or);border-color:var(--or)}
  .options{display:grid;gap:8px;margin-top:0}
  .options .ligne-option{display:flex;gap:8px}
  .options .ligne-option .champ{margin-top:0}
  .options .retirer{flex:none;width:40px;border-radius:4px;border:1px solid var(--trait);background:transparent;color:var(--muet);cursor:pointer}
  .confirmer{border-color:rgba(211,160,85,.5)}
  .confirmer ul{margin-top:10px;padding-left:18px;display:grid;gap:6px;color:#9C9484;font-size:.88rem;line-height:1.65}
  .choix-vote .principal{background:linear-gradient(160deg,var(--or-clair),var(--or));color:#1A1204;border:0}
  .bulletins{margin-top:8px;line-height:2}
  .vote a{color:var(--or)}

  /* ---------- FENETRE D OUVERTURE D UN VOTE (Karl, 29 septembre 2026) ----------
     Un bouton pour l ouvreur ; la fenetre tient dans l ecran et defile en dedans. */
  .fenetre-modale{
    width:min(560px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); padding:0; margin:auto;
    border:1px solid rgba(211,160,85,.4); border-radius:10px; background:var(--panneau); color:var(--encre);
    box-shadow:0 30px 80px rgba(0,0,0,.7); overflow:hidden;
  }
  .fenetre-modale[open]{display:flex;flex-direction:column}
  .fenetre-modale::backdrop{background:rgba(3,4,7,.78);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
  .tete-modale{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--trait)}
  .tete-modale h2{margin:0;font-size:1.1rem;color:var(--or-clair)}
  .fermer-modale{padding:7px 14px;border-radius:999px;border:1px solid var(--trait);background:transparent;color:var(--muet);cursor:pointer;
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase}
  .fermer-modale:hover{color:var(--encre)}
  .fermer-modale:disabled{opacity:.4;cursor:not-allowed}
  .corps-modale{padding:20px;overflow-y:auto}


  /* ---------- PAGE SUPPLY (maquette approuvee par Karl le 29 septembre 2026) ---------- */
  /* ---- la page ---- */
  .fraicheur{display:inline-flex;align-items:center;gap:8px;margin-top:18px;padding:6px 12px;border:1px solid var(--trait);border-radius:999px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.7rem;color:var(--muet)}
  .fraicheur i{width:7px;height:7px;border-radius:50%;background:var(--turquoise);box-shadow:0 0 10px var(--turquoise)}
  .barre-offre{margin-top:30px;display:flex;height:22px;border-radius:4px;overflow:hidden;border:1px solid var(--trait)}
  .barre-offre span{display:block;height:100%}
  .categories{margin-top:22px;border:1px solid var(--trait);border-radius:6px;overflow:hidden;background:var(--panneau)}
  .categorie{border-top:1px solid var(--trait)}
  .categorie:first-child{border-top:0}
  .categorie summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:14px 1fr auto;gap:12px;align-items:center;padding:15px 18px}
  .categorie summary::-webkit-details-marker{display:none}
  .categorie summary .pastille{width:12px;height:12px;border-radius:3px}
  .categorie summary .nom{font-weight:700;font-size:.98rem}
  .categorie summary .nom small{display:block;font-weight:400;font-size:.8rem;color:var(--muet);margin-top:2px}
  .categorie summary .q{text-align:right;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem;color:var(--turquoise)}
  .categorie summary .q small{display:block;color:var(--muet);font-size:.7rem;margin-top:2px}
  .categorie[open] summary{background:rgba(211,160,85,.05)}
  .interieur{padding:6px 18px 18px}
  .sous{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:8px 0 8px 14px;border-left:2px solid var(--trait);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.76rem;color:var(--muet)}
  .sous b{color:var(--turquoise);font-weight:600}
  .outils{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0}
  .outils input{flex:1;min-width:180px;padding:9px 12px;border-radius:4px;border:1px solid var(--trait);background:#05060A;color:var(--encre);font:inherit;font-size:.86rem}
  .outils select{padding:9px 10px;border-radius:4px;border:1px solid var(--trait);background:#05060A;color:var(--encre);font:inherit;font-size:.82rem}
  .liste-comptes{width:100%;border-collapse:collapse;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.76rem}
  .liste-comptes th{text-align:left;color:var(--muet);font-weight:400;padding:7px 6px;border-bottom:1px solid var(--trait);letter-spacing:.08em;font-size:.66rem;text-transform:uppercase}
  .liste-comptes td{padding:8px 6px;border-bottom:1px solid var(--trait);overflow-wrap:anywhere}
  .liste-comptes td.m{text-align:right;color:var(--turquoise);white-space:nowrap}
  .liste-comptes a{color:var(--or)}
  .fondateur{display:inline-block;margin-left:6px;padding:0 6px;border-radius:999px;background:rgba(211,160,85,.15);color:var(--or-clair);font-size:.62rem;letter-spacing:.1em}
  .pages{display:flex;justify-content:space-between;align-items:center;margin-top:10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.72rem;color:var(--muet)}
  .pages button{padding:6px 12px;border-radius:999px;border:1px solid var(--trait);background:transparent;color:var(--encre);cursor:pointer}
  .somme{margin-top:14px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.74rem;color:var(--muet)}
  .somme b{color:var(--turquoise)}
  @media (max-width:620px){.liste-comptes .cache-tel{display:none}}
  .indicateurs{margin-top:30px;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--trait);border:1px solid var(--trait);border-radius:6px;overflow:hidden}
  @media (max-width:900px){.indicateurs{grid-template-columns:repeat(2,1fr)}}
  .indicateur{background:var(--panneau);padding:18px 16px}
  .indicateur .l{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.62rem;letter-spacing:.18em;color:var(--or);text-transform:uppercase}
  .indicateur .v{margin-top:8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(1rem,2.6vw,1.25rem);font-weight:700;color:var(--turquoise);overflow-wrap:anywhere}
  .indicateur .d{margin-top:6px;font-size:.78rem;color:var(--muet);line-height:1.5}
  .table-liq{width:100%;border-collapse:collapse;margin-top:14px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.76rem}
  .table-liq th{text-align:right;color:var(--muet);font-weight:400;padding:8px 6px;border-bottom:1px solid var(--trait);font-size:.64rem;letter-spacing:.1em;text-transform:uppercase}
  .table-liq th:first-child,.table-liq td:first-child{text-align:left}
  .table-liq td{padding:9px 6px;border-bottom:1px solid var(--trait);color:var(--encre)}
  .table-liq td.m{text-align:right;white-space:nowrap}
  .table-liq td small{display:block;color:var(--muet);font-size:.66rem;margin-top:2px}
  .table-liq td.bloque{color:var(--or-clair)}
  .table-liq tr.total td{font-weight:700;border-bottom:0;color:var(--turquoise)}
  @media (max-width:620px){.table-liq th:nth-child(2),.table-liq td:nth-child(2){display:none}}
  .calc{margin-top:14px;border:1px solid var(--trait);border-radius:6px;background:var(--panneau);padding:22px 20px}
  .calc .ligne-calc{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
  .calc input[type=number]{width:160px;padding:10px 12px;border-radius:4px;border:1px solid var(--trait);background:#05060A;color:var(--encre);font:inherit}
  .calc .res{margin-top:16px;display:grid;gap:6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;color:var(--muet)}
  .calc .res b{color:var(--turquoise)}
  .categorie .interieur .pages button:disabled{opacity:.35;cursor:default}
  .categorie summary .nom small b{color:var(--or-clair);font-weight:600}
  .liste-comptes td.nom-compte{max-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .vide-liste{padding:14px 0;color:var(--muet);font-size:.86rem}
  .vers-offre{text-align:center;margin:18px 0 0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.74rem;letter-spacing:.06em}
  .vers-offre a{color:var(--or-clair);text-decoration:none}
  .vers-offre a:hover{text-decoration:underline}
  /* Quatre onglets et Connect doivent tenir sur une rangee jusqu aux telephones. */
  @media (max-width:560px){
    .onglets a{padding:8px 9px;letter-spacing:.08em;font-size:.64rem}
    .nav-connecter{padding:8px 11px}
  }
  .table-liq a{color:var(--or-clair);text-decoration:none}
  .table-liq a:hover{text-decoration:underline}

  /* ================================================================
     PAGE UTILITIES (30 septembre 2026), maquette approuvee par Karl a 06 h 39.
     Habillage de dogebarb.org ; ASA Compass n y entre que par son logo, dans le
     titre, et par la turquoise sur les titres des utilites et ses liens.
     ================================================================ */
/* Page Utilities : mise en page de la maquette du 30 septembre (00 h 55), habillage
   de dogebarb.org (noir, or, cadres fins). ASA Compass n entre que par son logo et
   par la turquoise, sur les titres des utilites et ses liens. */
.u-page{padding:0 16px 64px;background:radial-gradient(60% 40% at 50% 0%,rgba(211,160,85,.10),transparent 70%)}
.u-col{max-width:1060px;margin:0 auto}
.u-mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.u-tete{padding:46px 0 26px}
.u-tete h1{margin:14px 0 0;font-size:clamp(2.1rem,6vw,3.4rem);line-height:1.02;font-weight:900;letter-spacing:-.035em;
  background:linear-gradient(175deg,var(--or-clair),var(--or) 62%,#8A6427);-webkit-background-clip:text;background-clip:text;color:transparent}
.u-tete p{max-width:640px;margin:16px 0 0;color:#9C9484;font-size:1.02rem;line-height:1.6}
.u-tete a{color:var(--turquoise)}
.u-sur{white-space:nowrap}
.u-logo-titre{display:inline-block;height:1.6em;width:auto;vertical-align:-.3em;margin-left:.05em;filter:drop-shadow(0 0 14px rgba(0,224,184,.16))}
.u-legende{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:22px}
.u-legende span{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--muet)}

/* etats, a la maniere des etiquettes « CANNOT HAPPEN » de l accueil */
.u-page .etat{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:2px;white-space:nowrap;
  font:600 .6rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.2em;text-transform:uppercase;
  color:var(--or);border:1px solid rgba(211,160,85,.4)}
.u-page .etat i{width:5px;height:5px;border-radius:50%;background:currentColor}
.u-page .etat.live{color:#04211C;background:var(--turquoise);border-color:var(--turquoise);font-weight:700}
.u-page .etat.live i{background:#04211C}
.u-page .etat.prevu{color:var(--muet);border-color:var(--trait)}

/* fenetres : le cadre fin et le fond de dogebarb.org */
.u-panneau{margin-top:26px;border:1px solid var(--trait);border-radius:5px;background:var(--panneau);overflow:hidden}
.u-panneau > header{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 14px;padding:18px 22px;border-bottom:1px solid var(--trait)}
.u-panneau h2{margin:0;font-size:1.3rem;font-weight:800;letter-spacing:-.02em;color:var(--encre)}
.u-panneau header small{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.64rem;letter-spacing:.2em;text-transform:uppercase;color:var(--or)}
.u-panneau .u-corps{padding:22px}
.u-panneau .u-corps > p{margin:0 0 14px;color:#9C9484;line-height:1.62;max-width:720px}
.u-page .creux{background:linear-gradient(180deg,rgba(211,160,85,.05),transparent),var(--fond);border:1px solid var(--trait);border-radius:5px}
.u-chiffre{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:700;color:var(--or-clair);letter-spacing:-.02em}
.u-page .usd{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.76rem;color:var(--muet)}

.u-nombre{display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:center;padding:22px}
.u-nombre .u-chiffre{font-size:clamp(2rem,6vw,3rem);line-height:1}
.u-nombre .unite{font:700 .8rem/1 ui-monospace,Menlo,monospace;letter-spacing:.2em;color:var(--or);margin-left:6px}
.u-nombre p{margin:0;color:#9C9484;line-height:1.6}
@media (max-width:620px){.u-nombre{grid-template-columns:1fr;gap:12px}}

.u-portes{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:16px}
@media (max-width:760px){.u-portes{grid-template-columns:1fr}}
.u-carte{padding:20px;display:flex;flex-direction:column;gap:10px}
.u-carte h3{margin:0;font-size:1.02rem;font-weight:700;line-height:1.35;color:var(--turquoise)}
.u-carte p{margin:0;color:#8E8676;font-size:.9rem;line-height:1.7}
.u-attend{margin-top:auto;padding-top:10px;border-top:1px dashed var(--trait);font:.7rem/1.6 ui-monospace,Menlo,monospace;color:var(--muet)}
.u-attend b{color:#B4AC9B;font-weight:400}

.u-echelle{display:grid;grid-template-columns:repeat(10,1fr);gap:6px;align-items:end;height:150px;padding:18px 18px 0}
.u-echelle div{border-radius:3px 3px 0 0;background:linear-gradient(180deg,rgba(211,160,85,.55),rgba(211,160,85,.08));border-top:2px solid var(--or-clair)}
.u-echelle div.zero{background:var(--turquoise);border-top-color:var(--turquoise)}
.u-pied{display:grid;grid-template-columns:repeat(10,1fr);gap:6px;padding:8px 18px 16px;font:.64rem/1.3 ui-monospace,Menlo,monospace;color:var(--muet);text-align:center}
.u-pied b{display:block;color:#B4AC9B;font-weight:500}
@media (max-width:620px){.u-pied span.moyen{visibility:hidden}}
.u-faits{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:16px}
@media (max-width:760px){.u-faits{grid-template-columns:1fr}}
.u-fait{padding:16px 18px}
.u-fait .k{font:600 .62rem/1 ui-monospace,Menlo,monospace;letter-spacing:.22em;text-transform:uppercase;color:var(--or)}
.u-fait .v{margin-top:8px;color:var(--encre);line-height:1.5;font-size:.94rem}
.u-fait a{color:var(--turquoise)}

.u-liste{display:grid;gap:14px}
.u-ligne{display:grid;grid-template-columns:1fr auto;gap:8px 18px;padding:18px 20px}
.u-ligne h3{margin:0;font-size:1.02rem;font-weight:700;color:var(--turquoise)}
.u-ligne h3.dogebarb{color:var(--encre)}
.u-ligne p{grid-column:1 / -1;margin:0;color:#8E8676;font-size:.92rem;line-height:1.65}
.u-ligne .u-attend{grid-column:1 / -1;border-top:0;padding-top:0}


.u-note{margin-top:26px;padding:clamp(20px,4vw,28px);border:1px dashed rgba(211,160,85,.34);border-radius:5px;background:rgba(211,160,85,.035)}
.u-note h3{margin:0 0 6px;font:600 .68rem/1.4 ui-monospace,Menlo,monospace;letter-spacing:.24em;text-transform:uppercase;color:var(--or)}
.u-note p{margin:0;color:#9C9484;line-height:1.6;font-size:.95rem}
.u-source{margin-top:22px;font:.68rem/1.8 ui-monospace,Menlo,monospace;letter-spacing:.04em;color:var(--muet)}
.u-aller{display:inline-flex;align-items:center;gap:8px;margin-top:22px;padding:13px 22px;border-radius:999px;text-decoration:none;
  font:800 .86rem/1 "Helvetica Neue",Helvetica,Arial,sans-serif;color:#04211C;background:linear-gradient(160deg,#5CF2D6,#00B896)}


  /* ---------- NAVIGATION A CINQ ONGLETS ----------
     Avec Utilities, cinq onglets n entrent plus sur une rangee de telephone : la
     marque chevauchait le premier onglet sous 560 px. Sous ce seuil, la piece et
     Connect restent en haut, et les onglets passent dessous, soudes, pleine
     largeur. Au-dessus de 560 px (dont la fenetre de Karl), rien ne change. */
  @media (max-width:560px){
    .nav .wrap{flex-wrap:wrap;height:auto;padding-top:8px;padding-bottom:8px;row-gap:8px}
    .nav-droite{display:contents}
    .marque{order:1}
    .marque span{display:inline}
    .nav-connecter,.nav-compte{order:2;margin-left:auto}
    .onglets{order:3;flex:1 1 100%;display:flex}
    .onglets a{flex:1 1 auto;text-align:center;padding:8px 4px;letter-spacing:.08em;font-size:.62rem}
    .nav + .affiche{min-height:calc(100svh - 97px)}
  }

  /* ================================================================
     PAGE EVERYWHERE (/everywhere, 30 septembre 2026) : la page de liens du profil X,
     variante B approuvee par Karl. Toutes les regles en .l-* ou body.page-liens.
     ================================================================ */

body.page-liens{min-height:100svh;background:radial-gradient(70% 600px at 50% 0%,rgba(211,160,85,.16),transparent 70%) no-repeat,var(--fond)}
.l-col{max-width:460px;margin:0 auto;padding:44px 18px 40px;text-align:center}
.l-piece{width:112px;height:112px;margin:0 auto;border-radius:50%;background:url('assets/coin.jpg') center/112% no-repeat;
  box-shadow:0 0 0 2px rgba(248,216,128,.45),0 0 38px rgba(211,160,85,.45)}
.l-nom{margin-top:18px;font-size:2.6rem;font-weight:900;letter-spacing:-.04em;line-height:1;
  background:linear-gradient(175deg,var(--or-clair),var(--or) 62%,#8A6427);-webkit-background-clip:text;background-clip:text;color:transparent}
.l-sous{margin-top:10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.66rem;letter-spacing:.3em;color:var(--muet)}
.l-accroche{margin-top:14px;color:#B4AC9B;font-size:.98rem}
.l-accroche b{color:var(--or-clair)}

.l-liste{margin-top:28px;display:grid;gap:10px}
.l-btn{display:flex;align-items:center;gap:14px;padding:15px 18px;border-radius:12px;text-decoration:none;text-align:left;
  color:var(--encre);background:linear-gradient(180deg,rgba(211,160,85,.07),rgba(211,160,85,.02)),var(--panneau);
  border:1px solid rgba(211,160,85,.28);transition:border-color .15s ease,transform .15s ease}
.l-btn:hover{border-color:var(--or);transform:translateY(-1px)}
.l-btn svg{width:22px;height:22px;flex:none;fill:var(--or-clair)}
.l-btn .t{flex:1;font-weight:700;font-size:1rem}
.l-btn .d{display:block;margin-top:2px;font-weight:400;font-size:.8rem;color:var(--muet)}
.l-btn .f{font-family:ui-monospace,Menlo,monospace;color:var(--or);font-size:.9rem}
.l-btn.or{background:linear-gradient(160deg,var(--or-clair),var(--or));border-color:transparent;color:#1A1204}
.l-btn.or svg{fill:#1A1204}.l-btn.or .d{color:#5A4417}.l-btn.or .f{color:#1A1204}
.l-btn.asa{border-color:rgba(0,224,184,.45);background:linear-gradient(180deg,rgba(0,224,184,.08),rgba(0,224,184,.02)),var(--panneau)}
.l-btn.asa .t{color:var(--turquoise)}.l-btn.asa .f{color:var(--turquoise)}
.l-btn.asa img,.l-btn.site img{height:26px;width:auto;flex:none}

.l-titre{margin:26px 0 2px;font-family:ui-monospace,Menlo,monospace;font-size:.64rem;letter-spacing:.28em;text-transform:uppercase;color:var(--or);text-align:left}
.l-paire{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:26px}
.l-paire .l-btn{flex-direction:column;justify-content:center;gap:8px;padding:18px 10px;text-align:center}
.l-paire .l-btn svg{width:28px;height:28px}
.l-pages{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.l-pages .l-btn{padding:13px 14px}
.l-pages .l-btn:last-child:nth-child(odd){grid-column:1 / -1}

.l-pied{margin-top:30px;font-family:ui-monospace,Menlo,monospace;font-size:.66rem;letter-spacing:.06em;color:var(--muet);line-height:1.9}
.l-pied a{color:var(--or)}

.l-btn.site{border-color:rgba(248,216,128,.5)}
.l-btn.site .t{color:var(--or-clair)}
.l-btn.site img{border-radius:50%;height:30px}
