:root{ --or:#c9a227; --nuit:#0b0d13; --creme:#e8ddc8; }
  *{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}
  html,body{height:100%;overflow:hidden;background:var(--nuit);font-family:Georgia,'Times New Roman',serif;color:var(--creme)}
  #c{display:block;width:100%;height:100%;touch-action:none}

  #titre{position:fixed;top:14px;left:0;right:0;display:flex;justify-content:center;pointer-events:none;z-index:5}
  #titre .brandWrap{display:flex;align-items:center;gap:12px;background:rgba(11,13,19,.36);padding:6px 12px;border-radius:18px;backdrop-filter:blur(2px)}
  #titre .brandText{text-align:left}
  #titre .brandLogo{width:40px;height:40px;object-fit:contain;filter:drop-shadow(0 0 10px rgba(201,162,39,.25))}
  #titre h1{font-size:clamp(20px,4.5vw,34px);letter-spacing:.45em;font-weight:400;color:var(--or);text-shadow:0 0 24px rgba(201,162,39,.35)}
  #titre p{font-size:11px;letter-spacing:.3em;opacity:.65;margin-top:4px;text-transform:uppercase}
  #horloge{position:fixed;bottom:14px;right:12px;z-index:6;display:grid;grid-template-columns:22px auto;grid-template-rows:auto auto;column-gap:5px;row-gap:2px;align-items:start;
    background:rgba(12,14,22,.78);border:1px solid rgba(201,162,39,.48);border-radius:12px;
    padding:7px 8px;backdrop-filter:blur(4px);width:142px;min-height:72px}
  #horloge canvas{display:block;grid-row:1 / span 2;width:22px;height:22px}
  #htxt{font-size:12px;letter-spacing:.05em;color:#f0e6cf;font-variant-numeric:tabular-nums;line-height:1.05;font-weight:600}
  #hmeteo{font-size:9.5px;letter-spacing:0;color:#cdd6e4;opacity:.95;line-height:1.22;white-space:normal}
  #hmeteo:empty{display:none}
  @media(hover:hover) and (pointer:fine){#horloge{right:14px;width:136px}}
  @media(max-width:380px){#horloge{right:10px;width:126px}#hmeteo{font-size:8.7px}#htxt{font-size:10px}}
  #villageBar{position:fixed;left:16px;bottom:22px;z-index:6;display:flex;flex-direction:column;gap:8px;max-width:46vw}
  #villageBar.hide{display:none}
  .vbtn{background:rgba(12,14,22,.62);border:1px solid rgba(201,162,39,.5);color:#f0e6cf;
    border-radius:24px;padding:9px 14px;font-size:12px;letter-spacing:.06em;cursor:pointer;
    backdrop-filter:blur(4px);text-align:left}
  .vbtn:hover{border-color:#c9a227;background:rgba(201,162,39,.14)}
  .vbtn small{display:block;opacity:.6;font-size:10px;margin-top:2px}
  .modal{position:fixed;inset:0;z-index:20;background:rgba(6,7,12,.78);backdrop-filter:blur(5px);
    display:none;align-items:flex-start;justify-content:center;overflow-y:auto;padding:32px 14px}
  .modal.on{display:flex}
  .card2{background:#11141f;border:1px solid rgba(201,162,39,.45);border-radius:16px;
    max-width:520px;width:100%;padding:22px;color:#e8ddc8;box-shadow:0 20px 60px rgba(0,0,0,.6)}
  .card2 h2{color:#c9a227;font-weight:400;letter-spacing:.06em;margin:0 0 4px;font-size:20px}
  .card2 .sub2{font-size:12px;opacity:.65;margin-bottom:16px}
  .card2 p{font-size:13px;line-height:1.5;opacity:.85}
  .card2 label{display:block;font-size:11px;letter-spacing:.08em;opacity:.7;margin:12px 0 4px;text-transform:uppercase}
  .card2 input,.card2 textarea,.card2 select{width:100%;box-sizing:border-box;background:#0b0d13;
    border:1px solid rgba(201,162,39,.3);color:#f0e6cf;border-radius:8px;padding:9px;font-size:13px;font-family:inherit}
  .card2 textarea{min-height:90px;resize:vertical;font-family:monospace;font-size:11px}
  .card2 .row2{display:flex;gap:10px}
  .card2 .row2>div{flex:1}
  .card2 button{margin-top:14px;background:#c9a227;color:#161210;border:none;border-radius:24px;
    padding:10px 16px;font-size:13px;font-weight:600;cursor:pointer;letter-spacing:.04em}
  .card2 button.ghost{background:transparent;color:#c9a227;border:1px solid rgba(201,162,39,.5)}
  .card2 .x2{float:right;background:none;border:none;color:#e8ddc8;font-size:22px;cursor:pointer;margin:-6px -4px 0 0;padding:0}
  .card2 .note{font-size:11px;opacity:.6;background:rgba(201,162,39,.08);border-left:2px solid rgba(201,162,39,.4);
    padding:8px 10px;border-radius:6px;margin-top:14px;line-height:1.45}
  .vlist{margin-top:10px}
  .vitem{display:flex;background:#0b0d13;border:1px solid rgba(201,162,39,.22);
    border-radius:10px;padding:10px;margin-bottom:8px}
  .vitem .vmeta{flex:1;font-size:12px;min-width:0}
  .vitem .vmeta b{color:#f0e6cf;display:block}
  .vitem .vmeta span{opacity:.6;font-size:11px}
  .vitem button{margin:0;padding:6px 10px;font-size:11px}
  .vitem button.ok{background:#6fdc8c;color:#06210f}
  .vitem button.no{background:#e07a6a;color:#2a0d08}
  #viewerFrame{width:100%;height:62vh;border:1px solid rgba(201,162,39,.3);border-radius:10px;background:#000}
  .empty2{font-size:12px;opacity:.5;text-align:center;padding:18px}
  #veilleTabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
  .vtab{margin:0;background:transparent;color:#c9a227;border:1px solid rgba(201,162,39,.4);
    border-radius:18px;padding:6px 12px;font-size:11px;cursor:pointer}
  .vtab.on{background:#c9a227;color:#161210}
  #veilleStatus{font-size:12px;opacity:.6;padding:6px 0}
  #veilleStatus a{color:#c9a227}
  .art{background:#0b0d13;border:1px solid rgba(201,162,39,.18);border-radius:10px;padding:12px;margin-bottom:10px}
  .art a.tit{color:#f0e6cf;text-decoration:none;font-size:13px;line-height:1.4;display:block}
  .art a.tit:hover{color:#c9a227}
  .art .src{font-size:11px;opacity:.55;margin-top:5px}
  .art .ctgl{margin:8px 0 0;background:none;border:none;color:#c9a227;font-size:11px;cursor:pointer;padding:0;letter-spacing:.03em}
  .art .cbox{margin-top:8px;display:none}
  .art .cbox.on{display:block}
  .art .cmt{font-size:12px;border-top:1px solid rgba(201,162,39,.12);padding:6px 0}
  .art .cmt b{color:#c9a227;font-weight:500}
  .art .cmt span{opacity:.5;font-size:10px;margin-left:6px}
  .art .cform input{margin-top:6px}
  .art .cform textarea{min-height:46px;font-family:inherit;font-size:12px}
  .art .cform button{margin-top:6px;padding:6px 12px;font-size:11px}

  .btn{position:fixed;z-index:6;background:rgba(11,13,19,.82);border:1px solid var(--or);
    color:var(--or);font-family:inherit;letter-spacing:.2em;text-transform:uppercase;
    font-size:12px;padding:12px 20px;border-radius:2px;cursor:pointer;backdrop-filter:blur(4px)}
  .btn:active{background:var(--or);color:var(--nuit)}
  #porte{bottom:92px;right:22px;width:110px;min-height:58px;border-radius:12px;padding:9px 10px;letter-spacing:.08em;line-height:1.25;text-align:center}

  #fiche{position:fixed;left:50%;transform:translateX(-50%) translateY(40px);bottom:265px;
    width:min(86vw,340px);background:rgba(11,13,19,.94);border:1px solid var(--or);
    border-radius:2px;padding:18px 20px;z-index:7;visibility:hidden;opacity:0;
    transition:opacity .3s ease,transform .3s ease;backdrop-filter:blur(6px)}
  #fiche.on{visibility:visible;opacity:1;transform:translateX(-50%) translateY(0)}
  #fiche h2{color:var(--or);font-size:18px;font-weight:400;letter-spacing:.08em;margin-bottom:6px;padding-right:18px}
  #fiche p{font-size:13px;line-height:1.5;opacity:.85;margin-bottom:12px}
  #fiche .x{position:absolute;top:6px;right:12px;color:var(--creme);opacity:.6;font-size:18px;cursor:pointer;background:none;border:none}
  #fLien{display:block;text-align:center;background:var(--or);color:var(--nuit);text-decoration:none;
    padding:11px 14px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;border-radius:2px}
  #fLien:active{opacity:.85}
  #fUrl{margin-top:9px;font-size:11px;opacity:.65;word-break:break-all;
    user-select:text;-webkit-user-select:text;text-align:center}

  #joy{position:fixed;bottom:162px;right:22px;width:110px;height:110px;border-radius:16px;
    border:1px solid rgba(201,162,39,.5);background:rgba(11,13,19,.52);z-index:6;touch-action:none;backdrop-filter:blur(4px)}
  #stick{position:absolute;left:35px;top:35px;width:40px;height:40px;border-radius:12px;
    background:rgba(201,162,39,.58);border:1px solid var(--or);box-shadow:0 0 18px rgba(201,162,39,.18)}
  #aide{position:fixed;bottom:225px;right:145px;font-size:10px;letter-spacing:.15em;opacity:.5;z-index:5;
    text-transform:uppercase;text-align:right;line-height:1.8;pointer-events:none}
  @media(hover:hover) and (pointer:fine){ #joy{display:none} }

  #intro{position:fixed;inset:0;z-index:20;background:rgba(11,13,19,.93);
    display:flex;align-items:center;justify-content:center;backdrop-filter:blur(6px);
    transition:opacity .4s ease}
  #intro.off{opacity:0;pointer-events:none}
  #intro .carte{width:min(86vw,360px);border:1px solid var(--or);border-radius:2px;
    padding:28px 26px;text-align:center;background:rgba(11,13,19,.6)}
  #intro h2{color:var(--or);font-weight:400;letter-spacing:.3em;font-size:20px;margin-bottom:4px}
  #intro .sous{font-size:11px;letter-spacing:.25em;text-transform:uppercase;opacity:.6;margin-bottom:20px}
  #intro ul{list-style:none;text-align:left;margin-bottom:22px}
  #intro li{font-size:14px;line-height:1.45;margin-bottom:12px;padding-left:30px;position:relative}
  #intro li::before{content:'';position:absolute;left:4px;top:6px;width:9px;height:9px;
    border-radius:50%;background:var(--or)}
  #intro button{width:100%;background:var(--or);border:none;color:var(--nuit);
    font-family:inherit;letter-spacing:.2em;text-transform:uppercase;font-size:13px;
    padding:13px;border-radius:2px;cursor:pointer}

  .introLogo{width:64px;height:64px;object-fit:contain;display:block;margin:0 auto 12px;filter:drop-shadow(0 0 16px rgba(201,162,39,.20))}

  #mobileMenuToggle{display:none;position:fixed;left:16px;bottom:22px;z-index:7;background:rgba(12,14,22,.78);border:1px solid rgba(201,162,39,.55);color:#f0e6cf;border-radius:22px;padding:10px 14px;font-size:13px;letter-spacing:.06em;cursor:pointer;backdrop-filter:blur(6px);box-shadow:0 8px 24px rgba(0,0,0,.22)}


  #toast{position:fixed;top:88px;left:50%;transform:translateX(-50%);z-index:8;
    background:rgba(11,13,19,.88);border:1px solid var(--or);border-radius:2px;
    padding:10px 18px;font-size:13px;color:var(--creme);text-align:center;
    visibility:hidden;opacity:0;transition:opacity .4s ease;backdrop-filter:blur(4px);
    width:max-content;max-width:84vw}
  #toast.on{visibility:visible;opacity:1}
  #toast b{color:var(--or);font-weight:400}


/* === Interface créateur V17 === */
.adminTop{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap;margin-bottom:10px}
.adminTitle{color:#c9a227;font-weight:400;font-size:15px;letter-spacing:.08em;margin:18px 0 8px;text-transform:uppercase}
.vitem.pending{border-color:rgba(224,122,106,.42);background:rgba(224,122,106,.05)}
.vitem.approved{border-color:rgba(111,220,140,.35);background:rgba(111,220,140,.04)}
.vitem .actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.vitem .actions button{margin:0;padding:6px 9px;font-size:11px}
.vitem .actions button.danger{background:#e07a6a;color:#2a0d08}
.vitem .actions button.ok{background:#6fdc8c;color:#06210f}
.vitem .actions button.ghost{background:transparent;color:#c9a227;border:1px solid rgba(201,162,39,.45)}


/* === V20 — Livre d’or par maison === */
.guestbookPanel{margin-top:14px;border-top:1px solid rgba(201,162,39,.25);padding-top:14px}
.guestbookPanel h3{color:#c9a227;font-weight:400;font-size:16px;letter-spacing:.06em;margin:0 0 8px}
.guestbookStatus{font-size:12px;opacity:.68;margin:6px 0 10px}
.guestbookList{display:grid;gap:8px;margin-bottom:12px}
.guestbookMsg{background:#0b0d13;border:1px solid rgba(201,162,39,.22);border-radius:10px;padding:10px}
.guestbookMsg b{color:#f0e6cf;font-size:13px}
.guestbookMsg span{font-size:10px;opacity:.55;margin-left:6px}
.guestbookMsg p{margin:6px 0 0;font-size:13px;line-height:1.45;opacity:.86}
.guestbookForm{background:rgba(201,162,39,.06);border:1px solid rgba(201,162,39,.18);border-radius:12px;padding:12px}
.guestbookForm label{display:block;font-size:11px;letter-spacing:.08em;opacity:.7;margin:8px 0 4px;text-transform:uppercase}
.guestbookForm input,.guestbookForm textarea{width:100%;background:#0b0d13;border:1px solid rgba(201,162,39,.3);color:#f0e6cf;border-radius:8px;padding:9px;font-size:13px;font-family:inherit}
.guestbookForm textarea{min-height:68px;resize:vertical}
.guestbookForm button{margin-top:10px;background:#c9a227;color:#161210;border:none;border-radius:24px;padding:9px 14px;font-size:13px;font-weight:600;cursor:pointer}
.adminGuestbookBlock{margin-top:22px;border-top:1px solid rgba(201,162,39,.2);padding-top:10px}
.adminGuestbookMsg{align-items:flex-start}
.adminGuestbookMsg .vmeta p{margin:5px 0 0;line-height:1.35;opacity:.85;font-size:12px}


/* === Exposition extérieure V24 === */
#mExpo textarea#eWorks{min-height:150px;font-family:monospace;font-size:12px;line-height:1.35}
.vitem.expo{align-items:flex-start}


/* === Livre d’or V25 === */
.guestbookPanel{margin-top:14px;border:1px solid rgba(201,162,39,.28);border-radius:14px;padding:14px;background:rgba(8,10,16,.58)}
.guestbookPanel h3{font-weight:400;color:#c9a227;margin:0 0 6px;font-size:16px;letter-spacing:.05em}
.guestbookStatus{font-size:12px;opacity:.7;margin-bottom:10px}
.guestbookList{display:grid;gap:8px;margin:8px 0 10px}
.guestbookMsg{border:1px solid rgba(201,162,39,.18);border-radius:10px;background:#0b0d13;padding:9px}
.guestbookMsg b{color:#f0e6cf;font-weight:600}
.guestbookMsg span{font-size:10px;opacity:.55;margin-left:8px}
.guestbookMsg p{font-size:12px;line-height:1.45;margin:6px 0 0;opacity:.85}
.guestbookForm{display:grid;gap:8px}
.guestbookForm input,.guestbookForm textarea{width:100%;box-sizing:border-box;background:#0b0d13;border:1px solid rgba(201,162,39,.3);color:#f0e6cf;border-radius:8px;padding:9px;font-size:13px;font-family:inherit}
.guestbookForm textarea{min-height:70px;resize:vertical}
.guestbookForm button{justify-self:start;margin-top:0}
.adminGuestbookMsg p{margin:7px 0 0;font-size:12px;line-height:1.35;opacity:.86}


/* === Upload œuvres V28 === */
.uploadHelp{font-size:12px;opacity:.72;line-height:1.45;margin:4px 0 10px}
.expoUploadList{display:grid;gap:10px;margin:8px 0 12px}
.expoUploadRow{border:1px solid rgba(201,162,39,.22);border-radius:12px;padding:10px;background:rgba(8,10,16,.48);display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:8px;align-items:center}
.expoUploadRow input[type="file"]{font-size:12px;color:#e8ddc8;max-width:100%}
.expoUploadRow input:not([type="file"]){width:100%;box-sizing:border-box;background:#0b0d13;border:1px solid rgba(201,162,39,.3);color:#f0e6cf;border-radius:8px;padding:9px;font-size:13px;font-family:inherit}
.rightsCheck{display:flex!important;font-size:13px;line-height:1.35;margin:12px 0}
.rightsCheck input{width:auto!important}
.expoStatus{min-height:18px;font-size:12px;opacity:.8;margin:8px 0;color:#c9a227}
@media(max-width:760px){
  .expoUploadRow{grid-template-columns:1fr}
}


/* === Aide navigation ordinateur V30 === */
.desktopNavHint{display:none;position:fixed;left:18px;bottom:18px;z-index:160;background:rgba(11,13,19,.84);backdrop-filter:blur(7px);border:1px solid rgba(201,162,39,.28);border-radius:14px;padding:12px 16px 12px 14px;max-width:360px;box-shadow:0 10px 30px rgba(0,0,0,.28)}
.desktopNavHintTitle{color:#c9a227;font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:400;margin-bottom:4px}
.desktopNavHintText{color:#efe7d4;font-size:12px;line-height:1.45;font-weight:300;letter-spacing:.02em;opacity:.92;padding-right:18px}
.desktopNavHintClose{position:absolute;top:6px;right:8px;border:0;background:transparent;color:#d9c8a0;font-size:18px;line-height:1;cursor:pointer;opacity:.82}
.desktopNavHintClose:hover{opacity:1}
body.desktop-help-hidden .desktopNavHint{display:none!important}
@media (min-width: 980px) and (hover: hover) and (pointer: fine){
  .desktopNavHint{display:block}
}


/* === Mur vivant V31 === */
.mvStatus{min-height:18px;font-size:12px;opacity:.82;color:#c9a227;margin:8px 0}
.liveViewBody{display:grid;place-items:center;min-height:220px;background:rgba(8,10,16,.55);border:1px solid rgba(201,162,39,.22);border-radius:14px;padding:12px}
.liveViewBody img,.liveViewBody video{max-width:100%;max-height:62vh;border-radius:10px;display:block}
.liveViewCaption{font-size:13px;line-height:1.5;opacity:.88;margin-top:12px}
.liveViewLink{display:inline-block;margin-top:12px;color:#c9a227;text-decoration:none}
.liveViewLink:hover{text-decoration:underline}
.vitem.mediaPost{align-items:flex-start}
.vitem .previewTag{display:inline-block;font-size:10px;border:1px solid rgba(201,162,39,.3);border-radius:999px;padding:2px 7px;margin-top:6px;opacity:.75}


/* === Menu mobile V37 === */
#mobileMenuToggle{display:none;position:fixed;left:16px;bottom:22px;z-index:7;background:rgba(12,14,22,.78);border:1px solid rgba(201,162,39,.55);color:#f0e6cf;border-radius:22px;padding:10px 14px;font-size:13px;letter-spacing:.06em;cursor:pointer;backdrop-filter:blur(6px);box-shadow:0 8px 24px rgba(0,0,0,.22)}
#mobileMenuToggle.open{background:rgba(201,162,39,.18);border-color:#c9a227}
@media (max-width: 820px){
  #mobileMenuToggle{display:block}
  #villageBar{left:16px;bottom:68px;max-width:calc(100vw - 32px);width:min(360px, calc(100vw - 32px));display:none;padding:10px;background:rgba(10,12,18,.72);border:1px solid rgba(201,162,39,.28);border-radius:16px;backdrop-filter:blur(8px);box-shadow:0 12px 30px rgba(0,0,0,.28)}
  #villageBar.mobile-open{display:flex}
  .vbtn{width:100%;box-sizing:border-box}
}
@media (min-width: 821px){
  #villageBar{display:flex!important}
}


/* === Manifeste mobile V40 === */
#intro{
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
}
#intro .carte{
  max-height:calc(100vh - 44px);
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
}
#introGo{
  position:sticky;
  bottom:0;
  z-index:5;
  margin-top:14px;
}

@media (max-width: 760px){
  #intro{
    align-items:flex-start;
    padding:12px;
  }
  #intro .carte{
    width:100%;
    max-width:100%;
    max-height:calc(100vh - 24px);
    padding:18px 16px 14px;
    border-radius:16px;
  }
  #intro .carte h2{
    font-size:24px;
    margin-bottom:4px;
  }
  #intro .carte .sous{
    font-size:11px;
    margin-bottom:10px;
  }
  #intro .carte ul{
    padding-left:18px;
    margin:10px 0 12px;
  }
  #intro .carte li{
    font-size:13px;
    line-height:1.38;
    margin-bottom:8px;
  }
  #introGo{
    display:block;
    width:100%;
    box-sizing:border-box;
    padding:13px 14px;
    font-size:14px;
    border-radius:999px;
    background:#c9a227;
    color:#161210;
    box-shadow:0 -8px 24px rgba(8,10,16,.65);
  }
}


/* === Présences vivantes V41 === */
.habitantCard{
  max-width:540px;
}
#habitantText{
  font-size:15px;
  line-height:1.62;
}
@media (max-width:760px){
  .habitantCard{
    max-width:100%;
  }
  #habitantText{
    font-size:14px;
  }
}


/* === Visiteurs en direct V42 === */
#presenceBadge{
  position:fixed;
  right:190px;
  bottom:22px;
  z-index:7;
  background:rgba(12,14,22,.72);
  border:1px solid rgba(201,162,39,.42);
  color:#f0e6cf;
  border-radius:999px;
  padding:8px 12px;
  font-size:12px;
  letter-spacing:.04em;
  backdrop-filter:blur(6px);
  box-shadow:0 8px 24px rgba(0,0,0,.22);
  opacity:.88;
}
#presenceBadge.off{
  display:none;
}
@media (max-width:820px){
  #presenceBadge{
    left:16px;
    right:auto;
    bottom:70px;
    font-size:11px;
    padding:7px 10px;
  }
  body:has(#villageBar.mobile-open) #presenceBadge{
    display:none;
  }
}


/* === Salon de la Place V43 === */
.salonCard{
  max-width:680px;
}
.salonMessagesList{
  max-height:34vh;
  overflow:auto;
  padding-right:4px;
  margin-bottom:14px;
}
.salonMsgItem{
  border:1px solid rgba(201,162,39,.22);
  background:rgba(255,255,255,.035);
  border-radius:12px;
  padding:10px 12px;
  margin-bottom:9px;
}
.salonMsgItem b{
  color:#c9a227;
  font-weight:500;
}
.salonMsgItem small{
  display:block;
  opacity:.58;
  font-size:10px;
  margin-top:2px;
}
.salonMsgItem p{
  margin:8px 0 0;
  font-size:13px;
  line-height:1.45;
  opacity:.9;
}
.salonForm{
  border-top:1px solid rgba(201,162,39,.22);
  padding-top:12px;
}
.salonAdminMsg{
  font-size:12px;
  line-height:1.42;
  opacity:.86;
  margin:7px 0 0;
}
@media (max-width:760px){
  .salonCard{
    max-width:100%;
  }
  .salonMessagesList{
    max-height:30vh;
  }
}


/* === Guides poétiques V44 === */
.guideChatBox{
  border-top:1px solid rgba(201,162,39,.24);
  margin-top:14px;
  padding-top:12px;
}
.guideReply{
  background:rgba(201,162,39,.08);
  border:1px solid rgba(201,162,39,.24);
  border-radius:12px;
  padding:11px 12px;
  font-size:13px;
  line-height:1.5;
  margin-bottom:10px;
  color:#f0e6cf;
}
#guideQuestion{
  min-height:74px;
}
#guideAskBtn{
  margin-top:8px;
}
@media (max-width:760px){
  .guideReply{
    font-size:12.5px;
  }
  #guideQuestion{
    min-height:64px;
  }
}


/* === Tableau créateur V47 === */
.creatorDash{
  border:1px solid rgba(201,162,39,.28);
  background:rgba(255,255,255,.035);
  border-radius:16px;
  padding:14px;
  margin:12px 0 18px;
}
.dashHead{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  margin-bottom:12px;
}
.dashHead h3{
  margin:0;
  color:#c9a227;
  font-weight:400;
  letter-spacing:.04em;
  font-size:17px;
}
.dashHead p{
  margin:4px 0 0;
  font-size:12px;
  opacity:.7;
}
.dashGrid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:9px;
}
.dashCard{
  border:1px solid rgba(201,162,39,.22);
  background:rgba(9,10,16,.48);
  border-radius:14px;
  padding:11px 8px;
  text-align:center;
}
.dashCard b{
  display:block;
  color:#c9a227;
  font-size:25px;
  line-height:1;
  margin-bottom:6px;
}
.dashCard span{
  display:block;
  font-size:10.5px;
  line-height:1.25;
  opacity:.82;
}
.dashCard.alert{
  border-color:rgba(201,162,39,.72);
  background:rgba(201,162,39,.09);
}
@media (max-width:760px){
  .dashHead{
    flex-direction:column;
  }
  .dashGrid{
    grid-template-columns:repeat(2,1fr);
  }
  .dashCard b{
    font-size:23px;
  }
}


/* === V48 compteur présence décalé === */
#presenceBadge{
  right:190px;
}
@media (max-width:820px){
  #presenceBadge{
    left:16px;
    right:auto;
    bottom:70px;
  }
}


/* === V52 vidéo Mur vivant au-dessus === */
#mLiveView{
  z-index:120 !important;
  align-items:center;
  padding:18px 12px;
}
#mLiveView .card2{
  position:relative;
  z-index:121 !important;
  max-height:92vh;
  overflow:auto;
}
#liveViewBody{
  position:relative;
  z-index:122;
}
#liveViewBody video,
#liveViewBody img{
  position:relative;
  z-index:123;
  background:#05060a;
}
#mLiveView .x2{
  z-index:124;
}


/* === V53 vignette vidéo Mur vivant === */
.liveVideoPoster{
  width:min(100%,620px);
  min-height:260px;
  border-radius:14px;
  border:1px solid rgba(201,162,39,.36);
  background:
    radial-gradient(circle at 50% 42%, rgba(201,162,39,.18), transparent 35%),
    linear-gradient(135deg, #10131d, #05060a);
  display:grid;
  place-items:center;
  text-align:center;
  padding:22px;
  box-sizing:border-box;
}
.liveVideoPoster .playIcon{
  width:82px;
  height:82px;
  border-radius:50%;
  border:2px solid rgba(201,162,39,.7);
  display:grid;
  place-items:center;
  margin:0 auto 14px;
  color:#c9a227;
  font-size:42px;
  line-height:1;
}
.liveVideoPoster b{
  color:#c9a227;
  font-size:20px;
  letter-spacing:.08em;
}
.liveVideoPoster span{
  display:block;
  color:#f0e6cf;
  opacity:.82;
  font-size:13px;
  margin-top:8px;
  line-height:1.45;
}
.liveVideoDirectLink{
  display:inline-block;
  margin-top:12px;
  color:#c9a227;
  text-decoration:none;
  border:1px solid rgba(201,162,39,.35);
  border-radius:999px;
  padding:9px 13px;
}
.liveVideoDirectLink:hover{
  background:rgba(201,162,39,.1);
}


/* === V57 miniature image vidéo === */
.liveVideoPoster{
  background-size:cover;
  background-position:center;
}
.liveVideoPoster > div{
  background:rgba(5,6,10,.58);
  border-radius:14px;
  padding:18px 22px;
}


/* === V58 modification sécurisée === */
.ghost{
  background:rgba(255,255,255,.06) !important;
  color:#e8ddc8 !important;
  border:1px solid rgba(201,162,39,.35) !important;
  box-shadow:none !important;
}
.ghost:hover{
  background:rgba(201,162,39,.12) !important;
}
.editInlineBtn{
  margin-top:12px;
}
.editCard{
  max-width:620px;
}
.editImportant{
  border-color:rgba(201,162,39,.45);
  background:rgba(201,162,39,.08);
}
.editCodesList{
  margin-top:12px;
  display:grid;
  gap:8px;
}
.editCodeItem{
  border:1px solid rgba(201,162,39,.24);
  border-radius:12px;
  padding:10px;
  background:rgba(255,255,255,.04);
  font-size:13px;
}
.editCodeItem b{
  color:#c9a227;
  display:block;
}
.editCodeItem code{
  color:#f0e6cf;
  font-weight:bold;
  user-select:all;
}


/* === V59 présence corrigée === */
#presenceBadge{
  cursor:help;
}
#presenceBadge.off{
  opacity:.72;
}


/* === V72 popup Maison Moryotis === */
.moryotisHouseCard{
  max-width:720px;
}
.moryotisIntroBox{
  border:1px solid rgba(201,162,39,.28);
  border-radius:16px;
  padding:14px 16px;
  background:linear-gradient(135deg, rgba(201,162,39,.08), rgba(255,255,255,.03));
  margin:12px 0 14px;
}
.moryotisIntroBox p{
  margin:8px 0;
  line-height:1.5;
}
.moryotisHouseActions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:12px 0 14px;
}
.softSep{
  border:0;
  border-top:1px solid rgba(201,162,39,.24);
  margin:16px 0;
}
#moryotisGbList{
  margin-top:14px;
}
#moryotisGbList .gbItem{
  border:1px solid rgba(201,162,39,.22);
  border-radius:14px;
  padding:12px;
  background:rgba(255,255,255,.045);
  margin:10px 0;
}
#moryotisGbList .gbItem b{
  color:#c9a227;
}
#moryotisGbList .gbItem p{
  margin:7px 0 0;
  line-height:1.45;
}





/* === V82 logo visible dans l'interface === */
@media(max-width:700px){
  #titre .brandWrap{gap:8px;padding:4px 10px;border-radius:14px}
  #titre .brandLogo{width:28px;height:28px}
  #titre h1{font-size:18px;letter-spacing:.28em}
  #titre p{font-size:9px;letter-spacing:.18em}
  .introLogo{width:54px;height:54px;margin-bottom:10px}
}
@media(max-width:520px){

}




/* === V84 logo sobre === */
#titre .brandLogo{
  width:34px;
  height:34px;
}
.introLogo{
  width:54px;
  height:54px;
}
@media(max-width:700px){
  #titre .brandLogo{
    width:24px;
    height:24px;
  }
}
