/* v71 FORCE-SYNC: canonical chat stylesheet. */
/* El Mullero community room v66. Premium room entry + message-only beat identity. */
.elm-room-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 1px 9px;min-width:0}
.elm-room-controls>span{color:#b8aa8f;font:500 11px/1.4 "Space Grotesk",sans-serif;letter-spacing:.14em}
/* Compact view control: no enclosing card or competing light box. */
.elm-room-tabs{--elm-switch-position:0;--elm-switch-travel:26px;display:flex;align-items:center;gap:8px;flex:none;direction:ltr;padding:0;border:0;border-radius:0;background:none;box-shadow:none}
.elm-room-tabs button{position:relative;touch-action:manipulation;appearance:none;border:0;background:transparent;padding:10px 2px;min-height:44px;border-radius:3px;color:#aaa398;font:400 15px/1.2 "Bebas Neue",sans-serif;letter-spacing:.065em;cursor:pointer;white-space:nowrap;transition:color .18s ease}
.elm-room-tabs button:after{content:"";position:absolute;bottom:6px;left:2px;right:2px;height:1px;background:linear-gradient(90deg,transparent,#bd9864,transparent);opacity:0;transition:opacity .18s ease}
.elm-room-tabs button[aria-selected=true]{color:#edcf9d}.elm-room-tabs button[aria-selected=true]:after{opacity:.8}
.elm-chat-open .elm-room-tabs{--elm-switch-position:1}.elm-chat-open .elm-room-tabs [data-elm-room-tab=chat]{color:#efbea0}
.elm-room-tabs button:focus-visible{outline:2px solid #d8b271;outline-offset:2px}
.elm-room-slider{display:flex;align-items:center;width:52px;min-height:44px;flex:none;cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}
.elm-room-slider-rail{display:block;position:relative;box-sizing:border-box;width:52px;height:22px;border:1px solid #73553a;border-radius:14px;background:linear-gradient(#0b0c0d,#171413);box-shadow:inset 0 2px 4px #000a,0 1px 0 #c6a57314;pointer-events:none}
.elm-room-slider-rail:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(100deg,#261713,#422219);opacity:var(--elm-switch-position);transition:opacity .18s ease}
.elm-room-slider-light{display:none}
.elm-room-slider-thumb{box-sizing:border-box;position:absolute;left:4px;top:2px;display:grid;place-items:center;width:16px;height:16px;border:1px solid #d1ab78;border-radius:50%;transform:translateX(calc(var(--elm-switch-position)*var(--elm-switch-travel)));background:linear-gradient(145deg,#ead7b2 0%,#c7a376 42%,#997347 100%);box-shadow:0 1px 3px #000b,inset 0 1px 0 #fff5;transition:transform .22s cubic-bezier(.2,.75,.2,1)}
.elm-room-slider-thumb:before{content:"";position:absolute;inset:1px;border-radius:inherit;background:linear-gradient(145deg,#f0c49e,#d58b61 48%,#a75b41);opacity:var(--elm-switch-position);transition:opacity .18s ease}
.elm-room-slider-thumb i{display:none}.elm-room-slider.is-dragging{cursor:grabbing}.elm-room-slider.is-dragging .elm-room-slider-thumb{transition:none}
[data-elm-market-panel][hidden],[data-elm-chat-host][hidden]{display:none!important}
[data-elm-own]>.is-chat-only{display:none}.elm-chat-open [data-elm-own]>.is-chat-only{display:block}
/* Room shell and signposting. No continuous animation or backdrop blur. */
.elm-chat-room{--chat-ink:#eeeae3;--chat-muted:#b6b1a6;--chat-edge:#c6a26126;--chat-gold:#e3c48d;--chat-green:#a9c7bb;position:relative;isolation:isolate;display:flex;flex-direction:column;min-width:0;height:730px;max-height:var(--elm-chat-available-height,none);min-height:355px;border:1px solid #796040;border-radius:12px;overflow:clip;background:radial-gradient(ellipse at 5% 0,#8056230d,transparent 47%),radial-gradient(ellipse at 100% 100%,#51252112,transparent 52%),#0a0b0c;box-shadow:inset 0 0 0 3px #0b0b0c,inset 0 0 0 4px #dfb7740c,inset 0 1px 0 #edc48820,0 12px 32px #0005;color:var(--chat-ink);font-family:"Space Grotesk",Arial,sans-serif;text-transform:none;letter-spacing:normal;line-height:1.5}
.elm-chat-shell{display:flex;flex-direction:column;min-width:0;min-height:0;height:100%}
.elm-chat-room.is-entry{height:560px;min-height:450px}
.elm-chat-entry{position:relative;display:grid;place-items:center;min-height:0;height:100%;padding:34px 22px;overflow:hidden;background:radial-gradient(ellipse at 50% 42%,rgba(212,168,67,.055),transparent 35%),radial-gradient(ellipse at 50% 62%,rgba(109,18,25,.12),transparent 48%),linear-gradient(180deg,#0a0b0c,#070708)}
.elm-chat-entry::before,.elm-chat-entry::after{content:"";position:absolute;top:15%;bottom:14%;width:1px;background:linear-gradient(transparent,rgba(212,168,67,.16),rgba(120,24,28,.22),transparent);opacity:.58}
.elm-chat-entry::before{left:18px}.elm-chat-entry::after{right:18px}
.elm-chat-entry-stage{position:relative;z-index:1;width:min(100%,520px);display:flex;flex-direction:column;align-items:center;text-align:center}
.elm-chat-entry-kicker{color:#a88d5d;font:400 9px/1.1 "Special Elite",serif;letter-spacing:.22em;text-transform:uppercase}
.elm-chat-entry-visual{--entry-scale:var(--elm-audio-entry-scale,1);position:relative;width:196px;height:196px;margin:22px 0 17px;display:grid;place-items:center;transform:scale(var(--entry-scale));transform-origin:center;will-change:transform}
.elm-chat-entry-emblem{position:relative;z-index:2;display:block;width:178px;height:178px;border:1px solid rgba(212,168,67,.28);border-radius:24px;overflow:hidden;background:#050608;box-shadow:inset 0 0 0 1px rgba(255,231,186,.025),0 16px 38px rgba(0,0,0,.42)}
.elm-chat-entry-emblem::after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 26px rgba(212,168,67,.06);opacity:var(--elm-audio-entry-glow,.20)}
.elm-chat-entry-emblem img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.055);transform-origin:center}
.elm-chat-entry-triangle{transform:scale(1.055);transform-origin:center}
.elm-chat-entry-triangle{position:absolute;z-index:3;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.elm-chat-entry-sideglow{position:absolute;z-index:0;top:28%;width:58px;height:90px;border-radius:50%;background:radial-gradient(ellipse,rgba(230,188,101,.42),rgba(169,112,44,.10) 44%,transparent 72%);filter:blur(13px);opacity:var(--elm-audio-entry-side-glow,.055);transform:scale(var(--elm-audio-entry-side-scale,.88));will-change:opacity,transform}
.elm-chat-entry-sideglow.is-left{left:-9px}.elm-chat-entry-sideglow.is-right{right:-9px}
.elm-chat-entry-stage>small{color:#a68f68;font:500 9px/1.2 "Space Grotesk",sans-serif;letter-spacing:.13em}
.elm-chat-entry-stage h3{margin:7px 0 8px;color:#f1dfbd;font:400 31px/1 "Bebas Neue",sans-serif;letter-spacing:.085em;text-shadow:0 1px 0 #000,0 0 14px rgba(212,168,67,.055)}
.elm-chat-entry-stage p{max-width:320px;margin:0;color:#aaa296;font-size:12px;line-height:1.55}
.elm-chat-entry-button{display:inline-flex!important;align-items:center;justify-content:center;gap:10px;min-width:220px;min-height:48px;margin-top:20px;padding:11px 17px!important;border:1px solid rgba(212,168,67,.46)!important;border-radius:4px!important;background:linear-gradient(90deg,rgba(116,18,23,.18),transparent 34%),linear-gradient(180deg,rgba(212,168,67,.11),rgba(212,168,67,.025))!important;color:#f2d8a6!important;font:400 16px/1 "Bebas Neue",sans-serif!important;letter-spacing:.095em!important;box-shadow:inset 0 1px 0 rgba(255,231,181,.05),0 8px 24px rgba(0,0,0,.26)!important}
.elm-chat-entry-button svg{width:17px;height:17px;color:#d6b16e}.elm-chat-entry-button:hover{border-color:rgba(232,190,102,.74)!important;color:#ffe5b0!important;background:linear-gradient(90deg,rgba(130,19,25,.25),transparent 38%),linear-gradient(180deg,rgba(212,168,67,.15),rgba(212,168,67,.04))!important}
.elm-chat-entry-connection{margin-top:10px;color:#a89270;font:500 9px/1.35 "Space Grotesk",sans-serif;letter-spacing:.12em;text-transform:uppercase}
.elm-chat-entry-connection[data-state="offline"]{color:#b5966c}
.elm-chat-entry-connection[data-state="connecting"]{color:#c8b28b}
.elm-chat-entry-button.is-connecting{opacity:.7;cursor:wait}
.elm-chat-entry-preview{margin-top:8px;padding:5px 7px!important;border:0!important;background:transparent!important;color:#746d61!important;font:500 8px/1.2 "Space Grotesk",sans-serif!important;letter-spacing:.09em!important;text-transform:uppercase!important;text-decoration:underline;text-decoration-color:#7d673d66;text-underline-offset:3px}

.elm-chat-room *{box-sizing:border-box}.elm-chat-room [hidden]{display:none!important}
.elm-chat-room button{touch-action:manipulation;appearance:none;-webkit-tap-highlight-color:transparent;cursor:pointer;box-shadow:none;text-shadow:none;font-family:"Space Grotesk",Arial,sans-serif;font-size:12px;line-height:1.3;letter-spacing:normal;text-transform:none}
.elm-chat-room button:disabled{opacity:.4;cursor:default}
.elm-chat-room button:focus-visible,.elm-chat-room textarea:focus-visible,.elm-chat-room select:focus-visible,.elm-chat-room input:focus-visible{outline:2px solid #d7b375;outline-offset:3px}
.elm-chat-room svg{width:18px;height:18px;flex:none}
.elm-chat-header{display:flex;align-items:center;gap:13px;padding:18px 22px 16px;flex:none;border-bottom:1px solid var(--chat-edge);background:linear-gradient(100deg,#32231222,transparent 60%)}
.elm-chat-room-icon{display:grid;place-items:center;width:40px;height:40px;border:1px solid #927141;border-radius:10px;color:#efd497;background:linear-gradient(140deg,#34291d,#121211);box-shadow:inset 0 1px 0 #eccc8b25,0 0 14px #e5a7400c}
.elm-chat-room-icon svg{width:23px;height:23px}
.elm-chat-room-title{display:flex;flex-direction:column;gap:3px;min-width:0}
.elm-chat-room-title small{display:flex;align-items:center;gap:9px;font-size:11px;font-weight:500;line-height:1.25;letter-spacing:.15em;color:#baa67f}
.elm-chat-room-title strong{font:400 25px/1.1 "Bebas Neue",sans-serif;letter-spacing:.095em;color:#f3e2c0;white-space:nowrap}
.elm-chat-beta{font-size:9px;letter-spacing:.07em;color:#cebb96;border:1px solid #695232;padding:1px 4px;border-radius:3px}
.elm-chat-status{display:flex;align-items:center;gap:7px;margin-left:auto;white-space:nowrap;padding:7px 9px;border-radius:5px;background:#121313;border:1px solid #4d4637}
.elm-chat-status i{display:block;width:5px;height:5px;border-radius:50%;background:#ba9965}.elm-chat-status b{font-size:10px;font-weight:500;letter-spacing:.035em;color:#d0c4ac}
.elm-chat-status[data-state=live] i{background:#88ceb3;box-shadow:0 0 7px #77bca366}.elm-chat-status[data-state=live] b{color:#bee0d0}
.elm-chat-status[data-state=preview]{border-color:#5a5365;background:#18151d}.elm-chat-status[data-state=preview] b{color:#d1c7dd}
.elm-chat-room .elm-chat-icon-btn{display:inline-grid;place-items:center;width:34px;height:34px;padding:7px;border:1px solid transparent;border-radius:7px;background:transparent;color:#c8bba0;flex:none}
.elm-chat-room .elm-chat-icon-btn:hover:not(:disabled){background:#2b231b;border-color:#6a5236;color:#f1d8a5}
.elm-chat-rulebar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none;padding:9px 20px;border-bottom:1px solid #b99a6520;background:linear-gradient(95deg,#33231935,#15121144);color:#cbb99b;font-size:12px;line-height:1.5}
.elm-chat-rulebar>span{display:flex;align-items:center;gap:9px;min-width:0}.elm-chat-rulebar svg{color:#cf7855;width:16px;height:16px}
.elm-chat-rulebar button{border:0;background:transparent;flex:none;padding:6px 0 6px 9px;color:#dbbc85;font-size:10px;letter-spacing:.07em;font-weight:600}
.elm-chat-rulebar button:hover{color:#ffdf9d}
.elm-chat-local-label{display:flex;align-items:center;justify-content:space-between;gap:8px;flex:none;padding:3px 20px;background:#211b273d;border-bottom:1px solid #ae8ac226;color:#c7b9d3;font-size:11px;line-height:1.4}
.elm-chat-local-label b{font-weight:500}.elm-chat-local-label button{color:#ddd0e5;background:transparent;border:0;text-decoration:underline;text-underline-offset:3px;font-size:10px;min-height:28px;padding:4px 7px}
/* Conversation: portrait + identity, inset message, attached reactions. */
.elm-chat-conversation{position:relative;min-height:0;flex:1;display:flex;flex-direction:column}
.elm-chat-log{position:relative;min-height:0;flex:1;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:auto;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:#69583d #0a0c0d;padding:12px 22px 20px;outline-offset:-3px}
.elm-chat-log::-webkit-scrollbar{width:4px}.elm-chat-log::-webkit-scrollbar-thumb{background:#69583d;border-radius:4px}
.elm-chat-log [data-allow-native-text],.elm-chat-log,.elm-chat-rules p,.elm-chat-passport small{user-select:text;-webkit-user-select:text}
.elm-chat-message{display:flex;align-items:flex-start;gap:15px;padding:14px 0 11px;min-width:0;scroll-margin:14px;transition:background-color .18s ease}
.elm-chat-message.is-highlight{background:#d2ae5920}
/* One fitted portrait surface, not a square image floating inside a second thick frame.
   Keep the original square artwork intact; the shallow inset stays equal on all sides. */
.elm-chat-avatar{--elm-avatar-radius:10px;--elm-avatar-inset:2px;position:relative;width:50px;height:50px;border:1px solid #806440;border-radius:var(--elm-avatar-radius);display:inline-grid;place-items:center;flex:none;overflow:hidden;background:#0a0c10;color:#ebcc8c;padding:0!important;vertical-align:middle;box-shadow:inset 0 1px 0 #edd19c0c}
.elm-chat-avatar b{font-size:15px;font-weight:600;letter-spacing:.07em}.elm-chat-avatar img{position:absolute;inset:var(--elm-avatar-inset);display:block;width:calc(100% - var(--elm-avatar-inset) - var(--elm-avatar-inset));height:calc(100% - var(--elm-avatar-inset) - var(--elm-avatar-inset));min-height:0;max-width:none;object-fit:contain;object-position:center;border-radius:calc(var(--elm-avatar-radius) - var(--elm-avatar-inset) - 1px);transform:none;opacity:1}
.elm-chat-avatar.is-night{border-color:#81758f;background:linear-gradient(140deg,#363044,#121215)}
.elm-chat-avatar.is-royal{border-color:#c09958;box-shadow:0 0 12px #d3a85c15,0 2px 8px #0006}
.elm-chat-avatar.is-mullero{border-color:#a56a51;background:linear-gradient(140deg,#4a281e,#151216)}
.elm-chat-message-main{position:relative;flex:1;min-width:0}.elm-chat-message-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0;line-height:1.35;margin:0 0 3px}
.elm-chat-room .elm-chat-author{display:block;max-width:55%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left;border:0;padding:0;background:transparent;color:#ecd09c;font-weight:600;font-size:15px}
.elm-chat-room .elm-chat-author:hover{color:#fff0c7}.elm-chat-message-head time{margin-left:auto;color:#aaa69c;font-size:11px;white-space:nowrap}
.elm-chat-rank{font-size:11px;color:#c0b698;letter-spacing:.015em;white-space:nowrap}.elm-chat-you{font-size:9px;border:1px solid #6c543c;border-radius:3px;color:#e1bf98;padding:1px 4px}
.elm-chat-staff-badge{display:inline-flex;align-items:center;gap:3px;font-size:9px;color:#a9caba;white-space:nowrap}.elm-chat-staff-badge svg{width:12px;height:12px}
.elm-chat-title{--elm-title-face:#b0b2ae;--elm-title-contour:rgba(176,178,174,.40);--elm-title-glow:rgba(190,190,180,.12);display:flex;align-items:center;gap:5px;margin:0 0 8px;line-height:1.1}
.elm-chat-title-text{position:relative;isolation:isolate;display:inline-block;color:var(--elm-title-face);font:400 12px/1 "Bebas Neue",sans-serif;letter-spacing:.075em;-webkit-text-stroke:.18px var(--elm-title-contour);paint-order:stroke fill;text-shadow:0 1px 0 #000,0 0 6px var(--elm-title-glow)}
.elm-chat-title-text::before{content:attr(data-title);position:absolute;inset:0;z-index:-1;color:transparent;font:inherit;letter-spacing:inherit;-webkit-text-stroke:.65px var(--elm-title-contour);opacity:.56;pointer-events:none}
.elm-chat-title-regalia{display:inline-grid;place-items:center;color:#dcb86d;filter:drop-shadow(0 0 3px rgba(212,168,67,.16))}.elm-chat-title-regalia svg{width:11px;height:11px}
.elm-chat-person-title{color:var(--elm-title-face,#b0b2ae);font:400 10px/1.15 "Bebas Neue",sans-serif;letter-spacing:.06em;text-shadow:0 0 5px var(--elm-title-glow,rgba(190,190,180,.10))}
.elm-chat-title.is-initiated,.elm-chat-person-title.is-initiated{--elm-title-face:#ffd78b;--elm-title-contour:rgba(216,183,106,.56);--elm-title-glow:rgba(212,168,67,.18)}
.elm-chat-title.is-origin,.elm-chat-person-title.is-origin{--elm-title-face:#a9d6ff;--elm-title-contour:rgba(220,235,250,.56);--elm-title-glow:rgba(102,181,255,.18)}
.elm-chat-title.is-night,.elm-chat-person-title.is-night{--elm-title-face:#e84b57;--elm-title-contour:rgba(255,115,122,.50);--elm-title-glow:rgba(114,0,60,.24)}
.elm-chat-title.is-rise,.elm-chat-person-title.is-rise{--elm-title-face:#93e6ad;--elm-title-contour:rgba(216,183,106,.46);--elm-title-glow:rgba(69,204,116,.18)}
.elm-chat-title.is-lost,.elm-chat-person-title.is-lost{--elm-title-face:#72cec3;--elm-title-contour:rgba(191,236,232,.48);--elm-title-glow:rgba(45,184,172,.17)}
.elm-chat-title.is-dominion,.elm-chat-person-title.is-dominion{--elm-title-face:#d89455;--elm-title-contour:rgba(216,148,85,.58);--elm-title-glow:rgba(89,23,20,.20)}
.elm-chat-title.is-final,.elm-chat-person-title.is-final{--elm-title-face:#e8eff5;--elm-title-contour:rgba(166,201,229,.56);--elm-title-glow:rgba(152,199,235,.17)}
.elm-chat-title.is-legend,.elm-chat-person-title.is-legend{--elm-title-face:#b64a76;--elm-title-contour:#ddbb6a;--elm-title-glow:rgba(182,74,118,.20)}
.elm-chat-bubble{width:fit-content;max-width:100%;padding:10px 13px;border:1px solid #44413a;border-radius:3px 11px 11px 11px;background:linear-gradient(130deg,#202020,#131416);box-shadow:inset 0 1px 0 #f7e7c908,0 3px 8px #0002}
/* Server-owned roles: creator = royal green, admin/moderator = navbar red. Static highlights only. */
.elm-chat-staff-badge[data-role=owner],.elm-chat-staff-badge[data-role=admin],.elm-chat-staff-badge[data-role=moderator]{border:1px solid;border-radius:4px;padding:2px 5px;box-shadow:inset 0 1px 0 #efc3881a}
.elm-chat-staff-badge[data-role=owner]{color:#b9e5c8;background:radial-gradient(circle at 24% 12%,rgba(91,177,121,.11),transparent 42%),linear-gradient(135deg,#0a1812,#07110d 62%,#050b08);border-color:rgba(80,146,103,.48);box-shadow:inset 0 1px 0 rgba(237,209,156,.08),0 0 7px rgba(35,103,60,.08)}
.elm-chat-staff-badge[data-role=admin],.elm-chat-staff-badge[data-role=moderator]{color:#ffd9bb;background:linear-gradient(115deg,#53151c,#250e13);border-color:#d95f5266}
.elm-chat-message[data-staff-role=owner]{--staff-border:rgba(74,130,94,.34);--staff-surface:linear-gradient(180deg,rgba(238,210,158,.022),transparent 9px),radial-gradient(ellipse at 13% 0,rgba(50,119,75,.105),transparent 58%),linear-gradient(112deg,#08150f,#07110d 54%,#050b08);--staff-glow:rgba(28,85,48,.07);--staff-avatar:rgba(83,139,101,.44);--staff-name:#d7eadc;--staff-reflection:rgba(225,204,159,.07)}
.elm-chat-message[data-staff-role=admin],.elm-chat-message[data-staff-role=moderator]{--staff-border:#78333b99;--staff-surface:linear-gradient(115deg,#281015,#1e0e13 58%,#160c11);--staff-glow:#d522420d;--staff-avatar:#9a594f99;--staff-name:#f0cda5}
.elm-chat-message[data-staff-role=owner] .elm-chat-bubble,.elm-chat-message[data-staff-role=admin] .elm-chat-bubble,.elm-chat-message[data-staff-role=moderator] .elm-chat-bubble{border-color:var(--staff-border);background:var(--staff-surface);box-shadow:inset 0 1px 0 var(--staff-reflection,#edbe8b14),0 0 15px var(--staff-glow),0 3px 8px #0003}
.elm-chat-message[data-staff-role=owner] .elm-chat-avatar,.elm-chat-message[data-staff-role=admin] .elm-chat-avatar,.elm-chat-message[data-staff-role=moderator] .elm-chat-avatar{border-color:var(--staff-avatar);box-shadow:0 0 12px var(--staff-glow),inset 0 1px 0 #e9bd691c}
.elm-chat-message[data-staff-role=owner] .elm-chat-author,.elm-chat-message[data-staff-role=admin] .elm-chat-author,.elm-chat-message[data-staff-role=moderator] .elm-chat-author{color:var(--staff-name)}
.elm-chat-message[data-staff-role=owner] .elm-chat-quote,.elm-chat-message[data-staff-role=admin] .elm-chat-quote,.elm-chat-message[data-staff-role=moderator] .elm-chat-quote{background:#f4cb9d09}
.elm-chat-passport-identity .elm-chat-staff-badge{width:fit-content;margin:4px 0 1px;font:500 9px/1.4 "Space Grotesk",sans-serif;letter-spacing:.025em}
.elm-chat-message-text{font-size:16px;font-weight:400;line-height:1.55;color:#f0ede7;white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal;text-align:start}
.elm-chat-message-text.is-removed{font-size:13px;font-style:italic;color:#b3aea1}
.elm-chat-room .elm-chat-quote{display:flex;flex-direction:column;gap:4px;text-align:left;width:100%;min-width:0;margin:0 0 9px;padding:7px 10px;border:0;border-left:2px solid #aa8c5d;border-radius:0 5px 5px 0;background:#94826512;color:#c6c3b9}
.elm-chat-quote b{font-size:11px;color:#e1c693;font-weight:600}.elm-chat-quote span{font-size:12px;line-height:1.5;overflow-wrap:anywhere}.elm-chat-room .elm-chat-quote:hover{border-left-color:#f3cc81;background:#bda57317}
.elm-chat-message-bottom{display:flex;align-items:center;gap:6px;margin-top:7px}.elm-chat-message-bottom:empty{display:none}
.elm-chat-reactions{display:flex;gap:5px;flex-wrap:wrap;align-items:center;min-width:0}
.elm-chat-room .elm-chat-reaction{display:inline-flex;align-items:center;gap:5px;min-width:39px;min-height:30px;border:1px solid #514b3d;background:#161716;padding:3px 8px;border-radius:15px;color:#ddd3bd}
.elm-chat-room .elm-chat-reaction:hover{border-color:#bb965f;background:#28221c}.elm-chat-room .elm-chat-reaction.is-mine{border-color:#b98e58;background:#30241a;color:#ffe4b4}
.elm-chat-reaction b{font-size:12px;font-weight:500}.elm-chat-native-emoji{font-family:system-ui,"Apple Color Emoji","Segoe UI Emoji",sans-serif;font-size:19px;line-height:1;display:inline-flex;align-items:center;justify-content:center}
.elm-chat-message-actions{position:absolute;top:-5px;right:0;display:flex;gap:2px;padding:1px 3px;border:1px solid #76603d3d;border-radius:6px;background:#101112;opacity:0;pointer-events:none;transition:opacity .14s ease}
.elm-chat-message-actions button{display:inline-grid;place-items:center;width:30px;height:30px;border:1px solid transparent;border-radius:4px;padding:6px;background:transparent;color:#bdb39f}.elm-chat-message-actions svg{width:16px;height:16px}
.elm-chat-message-actions button:hover{background:#2a241c;color:#f0d4a0;border-color:#746044}
.elm-chat-message:hover .elm-chat-message-actions,.elm-chat-message:focus-within .elm-chat-message-actions{opacity:1;pointer-events:auto}
.elm-chat-message:hover .elm-chat-message-head time,.elm-chat-message:focus-within .elm-chat-message-head time{opacity:0}
.elm-chat-message-head{padding-right:105px}.elm-chat-message-head time{position:absolute;right:0;top:2px}
.elm-mullero-reaction{position:relative;display:inline-block;flex:none;width:23px;height:23px;vertical-align:middle;overflow:hidden;border:1px solid #9d7c46;border-radius:7px;background:#171716}
.elm-mullero-reaction img{width:100%;height:100%;object-fit:contain;display:block;padding:1px;border-radius:inherit}
.elm-mullero-reaction b{position:absolute;bottom:0;right:0;padding:0 2px;border-radius:3px 0 0 0;background:#21170ae8;color:#f1cd81;font:600 9px/1.3 "Space Grotesk",sans-serif!important}
.elm-chat-inline-emoji{display:inline-flex;vertical-align:middle;margin:0 2px}.elm-chat-inline-emoji .elm-mullero-reaction{width:29px;height:29px}
.elm-chat-room .elm-chat-older{display:block;margin:0 auto 10px;padding:9px 13px;border:1px solid #635136;border-radius:5px;background:#181714;color:#cfbd99;font-size:11px}
.elm-chat-room .elm-chat-new{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);display:inline-flex;align-items:center;gap:6px;white-space:nowrap;z-index:2;border:1px solid #c29854;border-radius:18px;padding:8px 14px;background:#2e2118;color:#f7d5a0;font-size:11px;box-shadow:0 4px 15px #0008}
.elm-chat-new svg{width:15px;height:15px}
/* Real offline/empty state. The full emblem is never stretched or used as a portrait. */
.elm-chat-empty{min-height:230px;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:26px 18px;text-align:center}
.elm-chat-empty-emblem{display:block;width:112px;height:112px;border:1px solid #705439;border-radius:22px;padding:7px;background:linear-gradient(140deg,#211b17,#09090b);box-shadow:inset 0 1px 0 #eedaaa17,0 0 35px #cb965512}
.elm-chat-empty-emblem img{display:block;width:100%;height:100%;object-fit:contain;border-radius:14px}
.elm-chat-empty>small{font-size:10px;letter-spacing:.17em;color:#beaa83;margin-top:18px}.elm-chat-empty h3{font:400 27px/1.2 "Bebas Neue",sans-serif;color:#f0dfbc;letter-spacing:.075em;margin:7px 0 9px}
.elm-chat-empty p{font-size:13px;line-height:1.6;max-width:380px;color:#c5bfb3;margin:0 0 10px}
.elm-chat-room .elm-chat-soft-btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 15px;background:linear-gradient(135deg,#30261c,#171513);border:1px solid #8f6c3f;border-radius:6px;color:#ecd2a1;font-size:11px;font-weight:500;letter-spacing:.055em;margin:5px 0}
.elm-chat-soft-btn:hover{border-color:#d7b078!important;background:#3e2b1c!important;color:#fff0cf!important}
/* Compact, expanding composer. */
.elm-chat-composer-area{flex:none;padding:10px 20px 12px;border-top:1px solid var(--chat-edge);background:linear-gradient(130deg,#211b1455,#0e0e0ff0)}
.elm-chat-session{display:flex;align-items:center;gap:8px;min-height:29px;margin:0 0 9px}
.elm-chat-session-profile{padding:0;background:none;border:0;flex:none}.elm-chat-session .elm-chat-avatar{--elm-avatar-radius:8px;--elm-avatar-inset:1px;width:29px;height:29px}.elm-chat-session .elm-chat-avatar b{font-size:10px}
.elm-chat-session>span{color:#bcb4a5;font-size:11px;letter-spacing:.02em;min-width:0;overflow-wrap:anywhere;line-height:1.45}
.elm-chat-session [data-chat-count]{margin-left:auto;white-space:nowrap;font-size:11px;color:#b1ab9b;flex:none}.elm-chat-session [data-chat-count].is-over{color:#ffb7a8}
.elm-chat-room .elm-chat-signin{margin-left:auto;padding:7px 10px;border:1px solid #917246;background:#302417;border-radius:5px;color:#ecd2a1;font-size:11px;font-weight:600;letter-spacing:.04em;white-space:nowrap}
.elm-chat-composer{display:grid;grid-template-columns:minmax(0,1fr) 44px auto;align-items:end;gap:6px;border:1px solid #736148;border-radius:10px;background:linear-gradient(120deg,#111314,#0b0d0e);transition:border-color .18s ease;margin:0;padding:6px;min-width:0;box-shadow:inset 0 2px 4px #0004}
/* Only typing lights the field; attachment/send/emoji focus stays on its own button. */
.elm-chat-composer.is-writing{border-color:#d5ab6b;box-shadow:0 0 0 2px #ca965e12,inset 0 2px 4px #0004}
/* The sidebar is the desktop emoji entry. Keep a touch entry only when that sidebar is hidden. */
.elm-chat-room .elm-chat-composer-emoji{display:none;width:34px;height:44px;align-self:end;color:#d1bb94}
.elm-chat-room .elm-chat-photo-btn{display:inline-grid;place-items:center;align-self:end;width:44px;height:44px;padding:10px;border:1px solid #8d744e;border-radius:7px;background:linear-gradient(145deg,#30291f,#151718 75%);color:#e1c69a;box-shadow:inset 0 1px 0 #f1d3a028,inset 0 -1px 0 #0007,0 2px 4px #0003;transition:border-color .16s ease,background .16s ease,color .16s ease}
.elm-chat-room .elm-chat-photo-btn svg{width:22px;height:22px;stroke-width:1.55}
.elm-chat-room .elm-chat-photo-btn:hover:not(:disabled){border-color:#d2ad72;background:linear-gradient(145deg,#423528,#1d2020);color:#ffe3af}
.elm-chat-room .elm-chat-photo-btn:active:not(:disabled){background:#211e18;box-shadow:inset 0 1px 4px #0009}
.elm-chat-room textarea{font-family:"Space Grotesk",Arial,sans-serif;font-size:16px;font-weight:400;line-height:1.5;color:#f4eee3;text-transform:none;letter-spacing:normal;box-shadow:none;max-width:100%;outline:none}
.elm-chat-room .elm-chat-composer textarea{display:block;resize:none;width:100%;min-height:44px;max-height:112px;padding:10px 5px;border:0;background:transparent;border-radius:5px;margin:0;user-select:text;-webkit-user-select:text;overflow-y:hidden}
.elm-chat-room .elm-chat-composer textarea:focus-visible{outline:none}.elm-chat-composer textarea::placeholder{color:#9c9990;opacity:1}.elm-chat-composer textarea:disabled{opacity:.65}
.elm-chat-room .elm-chat-send{display:flex;align-items:center;justify-content:center;gap:8px;align-self:end;height:44px;padding:10px 14px;border:1px solid #ba6548;border-radius:7px;background:linear-gradient(135deg,#712d22,#361813);color:#ffe0b8;font-size:12px;font-weight:500;letter-spacing:.06em;box-shadow:inset 0 1px 0 #eeb28425;transition:background .18s ease}
.elm-chat-send svg{width:17px;height:17px}.elm-chat-send:hover:not(:disabled){background:linear-gradient(135deg,#983e28,#4f2019)}
.elm-chat-foot{display:flex;align-items:start;justify-content:space-between;gap:10px;padding-top:8px;font-size:11px;line-height:1.5;color:#bcb3a1}.elm-chat-foot:has(.elm-chat-notice:empty){display:none}
.elm-chat-notice{min-width:0;color:#c6baa3;overflow-wrap:anywhere}.elm-chat-notice.is-error{color:#f3b5a1}
.elm-chat-reply-preview{display:flex;align-items:center;gap:6px;justify-content:space-between;padding:7px 10px;margin-bottom:9px;border-left:2px solid #c19a60;background:#392c1952;border-radius:0 5px 5px 0}
.elm-chat-reply-preview>div{min-width:0;display:flex;flex-direction:column;gap:3px}.elm-chat-reply-preview small{font-size:10px;color:#bead8a;letter-spacing:.04em}.elm-chat-reply-preview small b{color:#f0d49d}.elm-chat-reply-preview span{font-size:12px;color:#d3ccbd;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
/* Picker uses the same vocabulary for writing and reacting. No five-item dead end. */
.elm-chat-popover{position:absolute;z-index:5;right:20px;bottom:calc(var(--elm-chat-composer-height,118px) + 10px);width:350px;max-width:calc(100% - 32px);max-height:min(470px,calc(100% - var(--elm-chat-composer-height,118px) - 84px));overflow:auto;overscroll-behavior:auto;scrollbar-width:thin;scrollbar-color:#786044 #141312;border:1px solid #a2814e;background:linear-gradient(130deg,#24201a,#121315 60%);border-radius:11px;box-shadow:0 16px 40px #000c,inset 0 1px 0 #edd4a324}
.elm-chat-popover>header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 14px;border-bottom:1px solid #9b794433;position:sticky;top:0;background:#1b1815;z-index:1}.elm-chat-popover>header strong{font:400 18px/1.25 "Bebas Neue",sans-serif;color:#f0d8ae;letter-spacing:.09em}
.elm-chat-popover-content{padding:13px}.elm-chat-picker-tabs{display:flex;gap:6px;margin-bottom:11px}.elm-chat-picker-tabs button{flex:1;padding:9px 6px;border:1px solid #675137;border-radius:6px;color:#c1bbae;background:#141413;font-size:11px;letter-spacing:.09em}.elm-chat-picker-tabs button.is-active{color:#ffe1b2;border-color:#ae704b;background:linear-gradient(130deg,#4b251b,#231914)}
.elm-chat-emoji-search{display:block;margin-bottom:12px}.elm-chat-emoji-search input{display:block;width:100%;min-width:0;border:1px solid #62533d;border-radius:6px;padding:8px 10px;background:#0c0e0f;color:#f1e5ce;font:400 13px/1.5 "Space Grotesk",sans-serif;user-select:text;-webkit-user-select:text}.elm-chat-emoji-search input::placeholder{color:#b0a99a;opacity:1}
.elm-chat-emoji-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:3px}.elm-chat-room .elm-chat-emoji-choice{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;min-height:38px;padding:4px;background:transparent;border:1px solid transparent;border-radius:7px;color:#ece2c9}
.elm-chat-emoji-choice .elm-chat-native-emoji{font-size:24px}.elm-chat-room .elm-chat-emoji-choice:hover{border-color:#b38a4c;background:#47332166}
.elm-chat-emoji-grid.is-mullero{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.elm-chat-room .elm-chat-emoji-choice.is-mullero{padding:9px 4px;gap:8px;border-color:#6c5132;background:#291d1455;min-height:84px}.elm-chat-emoji-choice .elm-mullero-reaction{width:44px;height:44px;border-radius:10px}.elm-chat-emoji-choice .elm-mullero-reaction b{font-size:12px!important}.elm-chat-emoji-choice small{font:500 10px/1.2 "Space Grotesk",sans-serif;letter-spacing:.05em}
.elm-chat-picker-note{display:block;margin-top:12px;padding-top:10px;border-top:1px solid #b6a07422;font-size:11px;line-height:1.5;color:#c0b399}.elm-chat-picker-empty{font-size:13px;color:#ccbea8;padding:12px 0}
/* Profile and moderation dialogs retain their existing behavior. */
.elm-chat-avatar-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.elm-chat-avatar-grid>button{display:flex;flex-direction:column;align-items:center;gap:9px;padding:10px 4px;border:1px solid #5c4d37;background:#171614;border-radius:8px;color:#cabd9f}.elm-chat-avatar-grid>button.is-active{border-color:#d5b477;color:#ffe0a5}.elm-chat-avatar-grid>button>span:last-child{font-size:9px}
/* Public identity uses the wallet's seal geometry and title treatment, not its private data. */
.elm-chat-popover[data-kind=passport]{width:330px;border-color:#98733d;border-radius:7px;background:radial-gradient(ellipse at 100% 0,#70501e20,transparent 48%),linear-gradient(160deg,#17120c,#08090b 70%);box-shadow:inset 0 0 0 3px #090807,inset 0 0 0 4px #bd955012,0 15px 32px #000b}
.elm-chat-popover[data-kind=passport]>header{padding:8px 13px;border-bottom:1px solid #bc985223;background:#17110bd9}.elm-chat-popover[data-kind=passport]>header strong{font:400 12px/1.3 "Special Elite",serif;letter-spacing:.13em;color:#cfb374}
.elm-chat-popover[data-kind=passport] .elm-chat-popover-content{padding:16px}
.elm-chat-passport{--passport-accent:#bca477;--passport-face:#e7cca0;--passport-shadow:#422b15;--passport-contour:#cfac70;display:flex;flex-direction:column;gap:15px;min-width:0}
.elm-chat-passport[data-family=origin]{--passport-accent:#75b8e5;--passport-face:#a9d6ff;--passport-shadow:#142f46;--passport-contour:#dcebf9}
.elm-chat-passport[data-family=night]{--passport-accent:#cf6370;--passport-face:#e84b57;--passport-shadow:#5b071d;--passport-contour:#f88a92}
.elm-chat-passport[data-family=rise]{--passport-accent:#7ebf99;--passport-face:#93e6ad;--passport-shadow:#123621;--passport-contour:#d8b76a}
.elm-chat-passport[data-family=dominion]{--passport-accent:#bf8a50;--passport-face:#d89455;--passport-shadow:#3e1711;--passport-contour:#d89455}
.elm-chat-passport[data-family=lost]{--passport-accent:#65b5ad;--passport-face:#72cec3;--passport-shadow:#0a3534;--passport-contour:#bfece8}
.elm-chat-passport[data-family=final]{--passport-accent:#b2cbdc;--passport-face:#e8eff5;--passport-shadow:#273644;--passport-contour:#a6c9e5}
.elm-chat-passport[data-family=legend]{--passport-accent:#b98498;--passport-face:#b64a76;--passport-shadow:#351326;--passport-contour:#ddbb6a}
.elm-chat-passport-identity{display:grid;grid-template-columns:62px minmax(0,1fr) 28px;align-items:center;gap:11px;min-width:0}
.elm-chat-passport .elm-chat-avatar{--elm-avatar-radius:10px;--elm-avatar-inset:2px;width:62px;height:62px;border-color:#a5814d;background:#090b10;box-shadow:inset 0 1px 0 #d8b97115}
.elm-chat-passport .elm-chat-avatar b{font-size:21px}
.elm-chat-passport-identity>div{min-width:0;display:flex;flex-direction:column;gap:5px}.elm-chat-passport-identity strong{font:400 21px/1.1 "Space Grotesk",Arial,sans-serif;letter-spacing:.04em;color:#eee0c2;overflow-wrap:anywhere;text-transform:none}.elm-chat-passport-identity small{font-size:10px;letter-spacing:.075em;color:#bdaa81}.elm-chat-passport-id{display:block;font-size:11px;line-height:1.4;color:#b1c1c8;overflow-wrap:anywhere;user-select:text;-webkit-user-select:text}
.elm-chat-passport-seal{display:block;width:28px;height:28px;align-self:start;pointer-events:none}.elm-chat-passport-seal svg{width:100%;height:100%;display:block;overflow:visible}
.elm-chat-passport-seal :is(circle,path){vector-effect:non-scaling-stroke}.elm-chat-passport-seal .aka-wallet-seal-ring{fill:none;stroke:var(--passport-accent);stroke-width:1.05;opacity:.9}.elm-chat-passport-seal .aka-wallet-seal-ring.is-inner{stroke:#8b6a35;stroke-width:.72;opacity:.6}
.elm-chat-passport-seal .aka-wallet-seal-rose{fill:#e1ae4b;stroke:#f1cf82;stroke-width:.62;stroke-linejoin:miter}.elm-chat-passport-seal .aka-wallet-seal-facets{fill:#754323;stroke:#a86d31;stroke-width:.38;stroke-linejoin:miter}.elm-chat-passport-seal .aka-wallet-seal-ticks{fill:none;stroke:#d4a843;stroke-width:.74;stroke-linecap:square}.elm-chat-passport-seal .aka-wallet-seal-center{fill:#f3d995;stroke:#24140d;stroke-width:.46}
.elm-chat-passport-title{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 6px 13px;border-top:1px solid #b7904c28;border-bottom:1px solid #b7904c28;background:linear-gradient(90deg,transparent,#c1994307,transparent)}
.elm-chat-passport-title>small{font:400 10px/1.2 "Special Elite",serif;letter-spacing:.19em;color:#a58c54}.elm-chat-passport-title>div{display:flex;align-items:center;justify-content:center;gap:8px;width:100%}
/* Wallet title geometry: long / medium / short from top to bottom, aligned toward
   the title. Mirror the right ornament horizontally, never upside down. */
.elm-chat-passport-title i{display:block;flex:0 0 13px;height:6px;background:linear-gradient(90deg,transparent,rgba(212,168,67,.72)) top right/100% 1px no-repeat,linear-gradient(90deg,transparent 12%,rgba(212,168,67,.72)) center right/68% 1px no-repeat,linear-gradient(90deg,transparent 22%,rgba(212,168,67,.72)) bottom right/38% 1px no-repeat;opacity:.78}.elm-chat-passport-title i:last-child{transform:scaleX(-1)}
.elm-chat-passport-title-text{position:relative;isolation:isolate;z-index:0;display:inline-block;min-width:0;max-width:100%;font:400 26px/1.1 "Bebas Neue",sans-serif;letter-spacing:.04em;color:var(--passport-face);-webkit-text-stroke:.45px var(--passport-shadow);paint-order:stroke fill;text-shadow:0 1px 0 #000,0 0 5px color-mix(in srgb,var(--passport-accent) 17%,transparent);text-align:center;overflow-wrap:anywhere}
.elm-chat-passport-title-text:before{content:attr(data-title);position:absolute;inset:0;z-index:-1;font:inherit;letter-spacing:inherit;color:transparent;-webkit-text-stroke:.85px var(--passport-contour);pointer-events:none;opacity:.7}
.elm-chat-passport-title.is-unearned .elm-chat-passport-title-text{font-size:21px;color:#acaa9f;-webkit-text-stroke:0;text-shadow:none}.elm-chat-passport-title.is-unearned .elm-chat-passport-title-text:before{content:none}
.elm-chat-passport-stats{display:grid;gap:7px;margin:0}.elm-chat-passport-stats>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 11px;border:1px solid #b7904c23;border-radius:4px;background:linear-gradient(110deg,#23191235,#0a0b0c)}
.elm-chat-passport-stats dt{display:flex;align-items:center;gap:8px;font:400 10px/1.3 "Special Elite",serif;letter-spacing:.08em;color:#c3a675}.elm-chat-passport-stats dt svg{width:16px;height:16px;color:#a48856}.elm-chat-passport-stats dd{margin:0;font:400 16px/1.3 "Bebas Neue",sans-serif;letter-spacing:.075em;color:#9fcfdf}.elm-chat-passport-stats dd.is-pending{font:500 10px/1.3 "Space Grotesk",sans-serif;letter-spacing:.03em;color:#999787}
.elm-chat-passport-note{display:flex;align-items:flex-start;gap:7px;padding-top:9px;border-top:1px solid #b7904c1f;color:#c0b39b;font-size:11px;line-height:1.5}.elm-chat-passport-note svg{width:14px;height:14px;color:#9b8560;flex:none;margin-top:2px}
.elm-chat-rules p,.elm-chat-option-note{font-size:13px;line-height:1.65;color:#cdc2ae;margin:3px 0 12px;text-transform:none;letter-spacing:normal}.elm-chat-rules b{color:#f3dbaa}
.elm-chat-options{display:flex;flex-direction:column;gap:8px}.elm-chat-options button{display:flex;align-items:center;gap:8px;text-align:left;padding:12px;border:1px solid #685237;background:#211b13;border-radius:6px;color:#e2d1ae;font-size:11px}.elm-chat-options svg{width:16px;height:16px}
.elm-chat-mod-label{display:flex;flex-direction:column;gap:6px;color:#d9c7a3;font-size:12px;margin:10px 0}.elm-chat-mod-label select,.elm-chat-mod-label textarea{width:100%;background:#101111;border:1px solid #80623c;color:#f2e0be;padding:9px;border-radius:5px}
.elm-chat-report-list article{padding:12px 0;border-bottom:1px solid #75603b;display:flex;flex-direction:column;gap:5px}.elm-chat-report-list small{font-size:10px;letter-spacing:.07em;color:#dcb981}.elm-chat-report-list b{font-size:13px;color:#ead2a3}.elm-chat-report-list p{font-size:13px;color:#c8bba2;overflow-wrap:anywhere}.elm-chat-report-list button{background:#302315;border:1px solid #a4824c;color:#f0d39e;padding:8px;border-radius:5px;font-size:11px}
.elm-chat-sr{position:absolute!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;white-space:nowrap!important;border:0!important}
@media(max-width:768px){
 .elm-room-controls{gap:8px;padding:11px 0}.elm-room-controls>span{display:none}.elm-room-tabs{margin-left:auto;gap:8px;padding:0}.elm-room-tabs button{font-size:15px}
 .elm-chat-room{height:650px;max-height:min(86svh,var(--elm-chat-available-height,900px));min-height:350px;border-radius:9px}
 .elm-chat-header{gap:9px;padding:13px 12px}.elm-chat-room-icon{width:33px;height:33px;border-radius:9px}.elm-chat-room-icon svg{width:19px;height:19px}.elm-chat-room-title strong{font-size:21px;letter-spacing:.05em}.elm-chat-room-title small{font-size:9px;letter-spacing:.07em;gap:6px}.elm-chat-beta{font-size:8px}.elm-chat-status{padding:6px;gap:4px}.elm-chat-status b{font-size:9px;letter-spacing:0}.elm-chat-status i{width:4px;height:4px}
 .elm-chat-header .elm-chat-icon-btn{width:28px;height:29px;padding:5px}.elm-chat-rulebar{padding:6px 11px;gap:6px;font-size:11px}.elm-chat-rulebar>span{gap:5px}.elm-chat-rulebar svg{width:13px;height:13px}.elm-chat-rulebar button{font-size:9px;padding:7px 0 7px 5px}.elm-chat-local-label{padding:3px 11px;font-size:10px}
 .elm-chat-log{padding:7px 12px 15px}.elm-chat-message{gap:10px;padding:13px 0 11px}.elm-chat-avatar{--elm-avatar-radius:9px;width:44px;height:44px}.elm-chat-message-head{gap:5px;flex-wrap:wrap;padding-right:34px}.elm-chat-room .elm-chat-author{font-size:14px;max-width:67%}.elm-chat-rank{font-size:10px}.elm-chat-message-head time{font-size:10px;opacity:1!important}.elm-chat-title{margin-bottom:7px}.elm-chat-title-text{font-size:11px;letter-spacing:.06em}.elm-chat-bubble{padding:9px 11px}.elm-chat-message-text{font-size:15px;line-height:1.55}.elm-chat-you{font-size:8px}.elm-chat-staff-badge{font-size:8px}
 .elm-chat-message-bottom{gap:5px}.elm-chat-reactions{gap:4px}.elm-chat-room .elm-chat-reaction{padding:4px 7px;min-width:37px;min-height:32px;gap:4px}.elm-chat-reaction b{font-size:11px}.elm-chat-native-emoji{font-size:18px}.elm-chat-message-actions{position:static;justify-content:flex-end;gap:3px;padding:0;margin-top:3px;border:0;background:none;opacity:1;pointer-events:auto}.elm-chat-message-actions button{width:34px;height:34px;padding:8px}
 .elm-chat-composer-area{padding:8px 11px 10px}.elm-chat-session{gap:6px;margin-bottom:7px}.elm-chat-session>span{font-size:10px;letter-spacing:0}.elm-chat-session [data-chat-count]{font-size:10px}.elm-chat-room .elm-chat-signin{font-size:9px;padding:7px}.elm-chat-composer{grid-template-columns:32px minmax(72px,1fr) 40px 40px;gap:4px;padding:4px;width:min(94%,340px);max-width:340px}.elm-chat-room .elm-chat-composer-emoji{display:inline-grid;width:32px;height:40px;padding:6px}.elm-chat-room .elm-chat-composer textarea{font-size:16px;min-height:40px;padding:8px 3px}.elm-chat-room .elm-chat-photo-btn,.elm-chat-room .elm-chat-send{width:40px;height:40px;padding:8px}.elm-chat-send span{display:none}.elm-chat-foot{font-size:10px;gap:3px;padding-top:6px}
 .elm-chat-popover{right:9px;max-width:calc(100% - 18px);width:346px}.elm-chat-popover-content{padding:10px}.elm-chat-popover[data-kind=passport] .elm-chat-popover-content{padding:13px}.elm-chat-emoji-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.elm-chat-emoji-search input{font-size:16px}.elm-chat-emoji-choice .elm-chat-native-emoji{font-size:24px}.elm-chat-emoji-choice small{font-size:9px}.elm-chat-avatar-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
 .elm-chat-empty{min-height:190px;padding:17px 12px}.elm-chat-empty-emblem{width:90px;height:90px;border-radius:19px}.elm-chat-empty>small{font-size:9px;margin-top:12px}.elm-chat-empty h3{font-size:24px}.elm-chat-empty p{font-size:12px;max-width:280px}
 /* Preserve all three market leaders and the pinned ERO position in chat mode. */
 .elm-chat-open .aka-meme-throne-stage{min-height:0;padding:7px 4px;gap:5px;align-items:stretch;grid-template-columns:1fr 1.12fr 1fr}
 .elm-chat-open .aka-meme-throne-hero{min-height:0;padding:7px 3px 6px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;text-align:center}
 .elm-chat-open .aka-meme-throne-role,.elm-chat-open .aka-meme-throne-hero-metrics,.elm-chat-open .aka-meme-throne-rank{display:none}
 .elm-chat-open .aka-meme-throne-portrait-wrap,.elm-chat-open .aka-meme-throne-hero.is-place-1 .aka-meme-throne-portrait-wrap{width:34px;height:34px;margin:0;align-self:center;justify-self:center}.elm-chat-open .aka-meme-throne-hero.is-place-1 .aka-meme-throne-portrait-wrap{width:38px;height:38px}
 .elm-chat-open .aka-meme-throne-name{margin:0;min-width:0;align-self:center}.elm-chat-open .aka-meme-throne-name strong{display:none!important}.elm-chat-open .aka-meme-throne-name small{display:block;font-size:8px;letter-spacing:.07em;text-align:center}.elm-chat-open .aka-meme-throne-hero.is-place-1:before{opacity:.22}
 .elm-chat-open .aka-meme-aka-ascent{padding:7px!important}.elm-chat-open .aka-meme-aka-ascent-head em,.elm-chat-open .aka-meme-aka-ascent-foot{display:none}.elm-chat-open .aka-meme-aka-ascent-head{padding:0 0 4px}.elm-chat-open .aka-meme-aka-ascent .aka-meme-throne-row{min-height:40px}.elm-chat-open .aka-meme-aka-ascent .aka-meme-portrait{width:28px;height:28px}
}
@media(max-width:370px){
 .elm-chat-room-icon{display:none}.elm-chat-room-title strong{font-size:20px}.elm-chat-header{gap:6px}.elm-chat-status b{font-size:9px}.elm-chat-rulebar>span>span{max-width:153px}.elm-chat-rulebar button{font-size:9px}.elm-chat-message{gap:8px}.elm-chat-avatar{--elm-avatar-radius:8px;width:39px;height:39px}.elm-chat-room .elm-chat-author{font-size:13px}.elm-chat-rank{font-size:9px}.elm-chat-message-head time{font-size:9px}.elm-chat-bubble{padding:8px 10px}.elm-chat-message-bottom{flex-wrap:wrap}.elm-chat-message-actions{margin-left:auto}.elm-chat-emoji-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.elm-chat-emoji-choice .elm-mullero-reaction{width:36px;height:36px}.elm-chat-picker-note{font-size:10px}.elm-chat-log{padding-left:10px;padding-right:10px}
}
@media (hover:none),(pointer:coarse){.elm-chat-message-actions{position:static;justify-content:flex-end;gap:3px;padding:0;margin-top:3px;border:0;background:none;opacity:1;pointer-events:auto}.elm-chat-message-head{padding-right:40px}.elm-chat-message-head time{opacity:1!important}}
@media(prefers-reduced-motion:reduce){
 .elm-room-slider-thumb,.elm-room-slider-thumb:before,.elm-room-slider-rail:before,.elm-room-tabs button,.elm-chat-message,.elm-chat-composer,.elm-chat-send,.elm-chat-photo-btn{transition:none!important}.elm-chat-room{scroll-behavior:auto}
}

/* v48: one shared room, its verified presence and user-submitted static pictures. */
.elm-chat-layout{display:grid;grid-template-columns:minmax(0,1fr) 226px;min-height:0;flex:1}
.elm-chat-main-column{display:flex;flex-direction:column;min-width:0;min-height:0}
.elm-chat-sidebar{display:flex;flex-direction:column;gap:11px;min-width:0;min-height:0;padding:19px 15px 15px;border-left:1px solid #b9935933;background:linear-gradient(155deg,#3921182b,transparent 40%),#0e0e10}
.elm-chat-people-head{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#eddbb6}
.elm-chat-people-head>span{display:flex;align-items:center;gap:7px;font-size:11px;letter-spacing:.12em}.elm-chat-people-head strong{font:400 26px/1 'Bebas Neue',sans-serif;color:#bad7b4}
.elm-chat-presence-dot,.elm-chat-online-dot{display:block;width:6px;height:6px;flex:none;border-radius:50%;background:#786c57}.elm-chat-presence-dot.is-online,.elm-chat-online-dot{background:#8ac49a;box-shadow:0 0 6px #8ac49a30}
.elm-chat-people-note{margin:0;font-size:10px;color:#ad9f88;line-height:1.5}
.elm-chat-people-list{min-height:0;flex:1;overflow:auto;overscroll-behavior:auto;scrollbar-width:thin;scrollbar-color:#665034 transparent}
.elm-chat-person{display:flex;align-items:center;gap:9px;min-height:64px;padding:9px 0;border-bottom:1px solid #c4a16616}.elm-chat-person>.elm-chat-avatar{width:38px;height:38px;--elm-avatar-radius:8px}.elm-chat-person>div{min-width:0;flex:1;display:flex;flex-direction:column;gap:3px}
.elm-chat-room .elm-chat-person-name{font-size:12px;color:#e1c89c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left;border:0;background:none;padding:2px 0;font-weight:600;max-width:100%}
.elm-chat-person small{font-size:9px;letter-spacing:.04em;color:#b9a78d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.elm-chat-person small .elm-chat-staff-badge{font-size:8px;padding:1px 3px}.elm-chat-person small svg{width:10px;height:10px}
.elm-chat-side-empty{font-size:12px;line-height:1.7;color:#b9aa95;padding:15px 1px;margin:0}
.elm-chat-side-pack{flex:none;padding-top:13px;border-top:1px solid #c4a16635}.elm-chat-side-tabs{display:flex;gap:17px;align-items:center;margin-bottom:12px}
.elm-chat-room .elm-chat-side-tabs button{padding:6px 0;border:0;border-bottom:1px solid transparent;background:none;color:#aa9a82;font-size:11px;letter-spacing:.1em}.elm-chat-room .elm-chat-side-tabs button[aria-pressed=true]{color:#edd0a0;border-bottom-color:#c47959}
.elm-chat-side-emojis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.elm-chat-room .elm-chat-side-emojis button{display:grid;place-items:center;min-height:38px;border:1px solid #c3a57312;border-radius:7px;background:linear-gradient(145deg,#2a22194d,#141415);color:#e1c69b}.elm-chat-room .elm-chat-side-emojis button:hover{border-color:#bba07a75;background:#382419}.elm-chat-side-emojis .elm-chat-native-emoji{font-size:25px}
.elm-chat-room .elm-chat-side-more{width:100%;display:flex;align-items:center;justify-content:space-between;background:none;border:0;color:#cfb995;font-size:10px;letter-spacing:.1em;padding:11px 0 5px}.elm-chat-side-more svg{width:19px;height:19px;color:#e3c89a}.elm-chat-side-caption{margin:7px 0 0;color:#a8957b;font-size:10px;line-height:1.5}
.elm-chat-room .elm-chat-members-mobile{display:none}
.elm-chat-image-draft{display:flex;align-items:center;gap:12px;padding:9px;margin-bottom:10px;border:1px solid #9771497d;border-radius:8px;background:linear-gradient(100deg,#40261e55,#111113)}.elm-chat-image-draft>img{width:48px;height:58px;object-fit:contain;background:#08090b;border-radius:4px}.elm-chat-image-draft>div{min-width:0;flex:1;display:flex;flex-direction:column;gap:5px}.elm-chat-image-draft b{font-size:10px;letter-spacing:.1em;color:#ddbd86}.elm-chat-image-draft span{font-size:11px;color:#bcb3a3}
.elm-chat-room .elm-chat-shared-image{display:flex;flex-direction:column;align-items:stretch;width:fit-content;max-width:min(100%,280px);padding:0;margin:9px 0 0;overflow:hidden;border:1px solid #d3a36955;border-radius:8px;background:#0b0b0e;color:#cebd9e;text-align:left}.elm-chat-shared-image>img{display:block;max-width:100%;width:auto;max-height:260px;height:auto;object-fit:contain;align-self:center}.elm-chat-shared-image>span{display:flex;align-items:center;gap:7px;justify-content:center;padding:7px 12px;border-top:1px solid #d3a36922;font-size:9px;letter-spacing:.12em}.elm-chat-shared-image>span svg{width:12px;height:12px}
.elm-chat-popover[data-kind=photo]{width:auto;max-width:none;inset:12px;bottom:12px;max-height:none;display:flex;flex-direction:column;background:#0b0c0ef7}.elm-chat-popover[data-kind=photo] .elm-chat-popover-content{min-height:0;flex:1;display:flex;overflow:auto}.elm-chat-image-view{min-width:0;min-height:0;flex:1;display:flex;flex-direction:column;align-items:center;gap:10px}.elm-chat-image-view>img{display:block;min-height:0;flex:1;max-width:100%;object-fit:contain}.elm-chat-image-view p{flex:none;margin:0;font-size:12px;line-height:1.6;color:#d0b88b;overflow-wrap:anywhere;max-height:80px;overflow:auto;width:100%;text-align:center}
@media(max-width:900px){.elm-chat-layout{grid-template-columns:minmax(0,1fr) 198px}.elm-chat-sidebar{padding:15px 11px}.elm-chat-person{gap:7px}.elm-chat-person>.elm-chat-avatar{width:34px;height:34px}.elm-chat-room .elm-chat-person-name{font-size:11px}}
@media(max-width:768px){.elm-chat-layout{display:flex;min-height:0}.elm-chat-main-column{flex:1}.elm-chat-sidebar{display:none}.elm-chat-room .elm-chat-members-mobile{display:flex;align-items:center;gap:5px;min-height:30px;padding:3px 5px;border:1px solid #80633b4a;border-radius:5px;color:#badaaa;margin-left:auto}.elm-chat-members-mobile svg{width:14px;height:14px}.elm-chat-rulebar{gap:6px}.elm-chat-rulebar>span{flex:1}.elm-chat-rulebar>span>span{max-width:130px;font-size:10px}.elm-chat-composer-area{padding-left:9px;padding-right:9px}.elm-chat-shared-image>img{max-height:220px}.elm-chat-popover[data-kind=photo]{inset:6px}.elm-chat-image-draft{gap:8px}.elm-chat-image-draft span{font-size:10px}.elm-chat-popover[data-kind=members] .elm-chat-person>.elm-chat-avatar{width:42px;height:42px}.elm-chat-popover[data-kind=members] .elm-chat-person-name{font-size:13px}}


/* v62 — premium chat geometry pass. Surgical: no room architecture redesign. */
.elm-chat-log{
  padding-bottom:30px;
  scroll-padding-block:14px 30px;
}
.elm-chat-empty{
  height:auto;
  min-height:100%;
  padding-block:28px 34px;
}
.elm-chat-empty-emblem{
  position:relative;
  box-sizing:border-box;
  flex:0 0 auto;
  width:116px;
  height:116px;
  padding:0;
  overflow:hidden;
  border-radius:18px;
  border-color:#7a5b3c;
  background:#050608;
  box-shadow:inset 0 0 0 1px #f2d7a110,inset 0 1px 0 #ffe4ad14,0 10px 28px #0007,0 0 28px #c78f4510;
}
.elm-chat-empty-emblem::after{
  content:"";
  position:absolute;
  inset:4px;
  z-index:2;
  border:1px solid #e7c17b14;
  border-radius:14px;
  pointer-events:none;
}
.elm-chat-empty-emblem img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  border-radius:inherit;
  transform:scale(1.045);
  transform-origin:center;
}
/* Full El Mullero avatar artwork should use the complete rounded-square surface.
   The artwork already contains its own optical breathing room. */
.elm-chat-avatar.is-mullero,.elm-chat-avatar.is-night,.elm-chat-avatar.is-royal{--elm-avatar-inset:0px}
.elm-chat-avatar:is(.is-mullero,.is-night,.is-royal) img{
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  border-radius:calc(var(--elm-avatar-radius) - 1px);
}
/* Composer: keep the controls compact rather than stretching the typing surface
   across the whole main column. Supporting rows share the same axis. */
.elm-chat-composer,.elm-chat-session,.elm-chat-reply-preview,.elm-chat-image-draft,.elm-chat-foot{
  width:min(100%,690px);
  max-width:690px;
  margin-left:auto;
  margin-right:auto;
}
.elm-chat-session{margin-bottom:9px}
.elm-chat-composer{
  grid-template-columns:minmax(180px,1fr) 44px 88px;
}
.elm-chat-room .elm-chat-send{width:88px;padding-inline:12px}
.elm-chat-room .elm-chat-composer textarea{padding-inline:8px}
.elm-chat-conversation,.elm-chat-main-column,.elm-chat-layout{min-height:0}

@media(max-width:768px){
  .elm-chat-room{
    height:clamp(500px,78svh,660px);
    max-height:calc(100svh - 92px);
    min-height:440px;
  }
  .elm-chat-log{
    padding:9px 11px 24px;
    scroll-padding-block:10px 24px;
    -webkit-overflow-scrolling:touch;
  }
  .elm-chat-empty{
    min-height:100%;
    padding:20px 10px 26px;
  }
  .elm-chat-empty-emblem{
    width:94px;
    height:94px;
    padding:0;
    border-radius:16px;
  }
  .elm-chat-empty-emblem::after{inset:3px;border-radius:12px}
  .elm-chat-empty-emblem img{transform:scale(1.035)}
  .elm-chat-composer,.elm-chat-session,.elm-chat-reply-preview,.elm-chat-image-draft,.elm-chat-foot{
    width:min(94%,340px);
    max-width:340px;
  }
  .elm-chat-composer{
    grid-template-columns:32px minmax(72px,1fr) 40px 40px;
  }
  .elm-chat-room .elm-chat-photo-btn,.elm-chat-room .elm-chat-send{width:40px;height:40px;padding:8px}
  .elm-chat-room .elm-chat-composer textarea{min-height:40px;padding:8px 4px}
  .elm-chat-composer-area{padding:8px 9px 11px}
}
@media(max-width:370px){
  .elm-chat-room{height:clamp(480px,76svh,620px);min-height:420px}
  .elm-chat-empty-emblem{width:86px;height:86px}
  .elm-chat-composer{grid-template-columns:30px minmax(64px,1fr) 38px 38px;gap:3px;padding:4px}
  .elm-chat-room .elm-chat-composer-emoji{width:32px;height:40px;padding:6px}
  .elm-chat-room .elm-chat-photo-btn,.elm-chat-room .elm-chat-send{width:40px;height:40px;padding:8px}
}

/* v63 premium entry + mobile messenger geometry. */
@media(max-width:768px){
  .elm-chat-room.is-entry{height:clamp(430px,72svh,540px);min-height:410px;max-height:calc(100svh - 80px)}
  .elm-chat-entry{padding:24px 14px}.elm-chat-entry::before{left:9px}.elm-chat-entry::after{right:9px}
  .elm-chat-entry-visual{width:154px;height:154px;margin:17px 0 13px}.elm-chat-entry-emblem{width:140px;height:140px;border-radius:20px}.elm-chat-entry-stage h3{font-size:27px}.elm-chat-entry-stage p{font-size:11px}.elm-chat-entry-button{min-width:198px;min-height:44px;margin-top:16px;font-size:15px!important}
  .elm-chat-composer-area{padding-bottom:max(10px,env(safe-area-inset-bottom))}
  .elm-chat-room.is-keyboard-open{height:var(--elm-chat-available-height)!important;min-height:0!important;max-height:var(--elm-chat-available-height)!important;border-radius:8px}
  .elm-chat-room.is-keyboard-open .elm-chat-header{padding-block:8px}.elm-chat-room.is-keyboard-open .elm-chat-rulebar{display:none}.elm-chat-room.is-keyboard-open .elm-chat-log{padding-bottom:12px}
}
@media(max-width:370px){
  .elm-chat-composer{width:92%;max-width:330px}
  .elm-chat-room .elm-chat-composer-emoji{width:30px;height:38px;padding:6px}.elm-chat-room .elm-chat-photo-btn,.elm-chat-room .elm-chat-send{width:38px;height:38px;padding:8px}
  .elm-chat-room .elm-chat-composer textarea{min-height:38px;padding:7px 3px}
}
@media(prefers-reduced-motion:reduce){
  .elm-chat-entry-visual{transform:none!important}.elm-chat-entry-sideglow{opacity:.08!important;transform:none!important}.elm-chat-entry-runner-image{opacity:.10!important}.elm-chat-entry-runner-mask{stroke-dasharray:100 0!important;stroke-dashoffset:0!important}
}

/* v66.1 — CHAT ENTRY travelling light reveals the original logo pixels.
   Nothing synthetic is drawn outside the supplied triangle artwork. */
.elm-chat-entry-triangle{
  position:absolute;z-index:3;inset:0;width:100%;height:100%;pointer-events:none;
  overflow:hidden;transform:scale(1.055);transform-origin:center;mix-blend-mode:screen;
}
.elm-chat-entry-runner-mask{
  fill:none;stroke:#fff;stroke-width:66;stroke-linecap:round;stroke-linejoin:round;
  stroke-dasharray:10 90;stroke-dashoffset:var(--elm-audio-entry-sweep,0);
}
.elm-chat-entry-runner-image{
  opacity:var(--elm-audio-entry-runner,.10);
  filter:brightness(2.5) saturate(1.16) contrast(1.06) drop-shadow(0 0 16px rgba(111,164,255,.34)) drop-shadow(0 0 20px rgba(239,67,201,.24));
}
/* Chat avatars stay unmistakably El Mullero. Personal photography belongs to
   the wider passport, not the message rail. */
.elm-chat-avatar{
  --elm-avatar-title-color:#d4a843;
  transform-origin:center;
}
.elm-chat-message[data-title-tone="initiated"]{--elm-avatar-title-color:#ffd78b}
.elm-chat-message[data-title-tone="origin"]{--elm-avatar-title-color:#a9d6ff}
.elm-chat-message[data-title-tone="night"]{--elm-avatar-title-color:#e84b57}
.elm-chat-message[data-title-tone="rise"]{--elm-avatar-title-color:#93e6ad}
.elm-chat-message[data-title-tone="lost"]{--elm-avatar-title-color:#72cec3}
.elm-chat-message[data-title-tone="dominion"]{--elm-avatar-title-color:#d89455}
.elm-chat-message[data-title-tone="final"]{--elm-avatar-title-color:#e8eff5}
.elm-chat-message[data-title-tone="legend"]{--elm-avatar-title-color:#b64a76}
.elm-chat-room[data-self-title-tone="initiated"]{--elm-self-title-color:#ffd78b}
.elm-chat-room[data-self-title-tone="origin"]{--elm-self-title-color:#a9d6ff}
.elm-chat-room[data-self-title-tone="night"]{--elm-self-title-color:#e84b57}
.elm-chat-room[data-self-title-tone="rise"]{--elm-self-title-color:#93e6ad}
.elm-chat-room[data-self-title-tone="lost"]{--elm-self-title-color:#72cec3}
.elm-chat-room[data-self-title-tone="dominion"]{--elm-self-title-color:#d89455}
.elm-chat-room[data-self-title-tone="final"]{--elm-self-title-color:#e8eff5}
.elm-chat-room[data-self-title-tone="legend"]{--elm-self-title-color:#b64a76}

/* Expanded passport: personal photo hook. Until the trusted profile service
   supplies one, the same El Mullero identity artwork remains the fallback. */
.elm-chat-passport-photo{
  position:relative;
  display:grid;
  place-items:center;
  width:62px;
  height:62px;
  overflow:hidden;
  border:1px solid #a5814d;
  border-radius:10px;
  background:#090b10;
  box-shadow:inset 0 1px 0 #d8b97115,0 8px 18px #0004;
}
.elm-chat-passport-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.elm-chat-passport-photo.is-mullero-fallback img{object-fit:contain}
.elm-chat-passport-seal{
  transform:scale(1);
  transform-origin:center;
  filter:drop-shadow(0 0 2px color-mix(in srgb,var(--passport-accent) 28%,transparent)) drop-shadow(0 0 7px color-mix(in srgb,var(--passport-accent) 12%,transparent));
  opacity:.62;
}

/* Mobile composer is a messenger control, not a full-width form card. */
@media(max-width:768px){
  .elm-chat-composer,.elm-chat-session,.elm-chat-reply-preview,.elm-chat-image-draft,.elm-chat-foot{
    width:min(calc(100% - 22px),308px);
    max-width:308px;
  }
  .elm-chat-composer{grid-template-columns:30px minmax(66px,1fr) 38px 38px;gap:4px;padding:4px 5px}
  .elm-chat-room .elm-chat-composer-emoji{width:30px;height:38px;padding:6px}
  .elm-chat-room .elm-chat-photo-btn,.elm-chat-room .elm-chat-send{width:38px;height:38px;padding:8px}
  .elm-chat-room .elm-chat-composer textarea{min-height:38px;padding:7px 4px;font-size:16px;line-height:1.42}
  .elm-chat-passport-photo{width:58px;height:58px;border-radius:9px}
  .elm-chat-passport-identity{grid-template-columns:58px minmax(0,1fr) 28px}
}
@media(max-width:370px){
  .elm-chat-composer,.elm-chat-session,.elm-chat-reply-preview,.elm-chat-image-draft,.elm-chat-foot{
    width:min(calc(100% - 24px),286px);
    max-width:286px;
  }
  .elm-chat-composer{grid-template-columns:28px minmax(58px,1fr) 36px 36px;gap:3px}
  .elm-chat-room .elm-chat-composer-emoji{width:28px;height:36px;padding:5px}
  .elm-chat-room .elm-chat-photo-btn,.elm-chat-room .elm-chat-send{width:36px;height:36px;padding:7px}
  .elm-chat-room .elm-chat-composer textarea{min-height:36px;padding:6px 3px}
}
@media(prefers-reduced-motion:reduce){
  .elm-chat-entry-runner-image{opacity:.10!important;filter:none!important}
  .elm-chat-message .elm-chat-avatar{transform:none!important}
}


/* v65 — server-backed identity + restrained shared-beat polish. */
.elm-chat-title.is-outsider,.elm-chat-person-title.is-outsider{
  --elm-title-face:#a9a49a;--elm-title-contour:rgba(201,191,172,.30);--elm-title-glow:rgba(212,168,67,.07)
}
.elm-chat-passport-title.is-outsider .elm-chat-passport-title-text{color:#b7b0a4;-webkit-text-stroke:.35px #40382f;text-shadow:0 1px 0 #000,0 0 4px rgba(212,168,67,.06)}
.elm-chat-passport-title.is-outsider i{opacity:.38}

/* Title colour belongs to identity, staff colour remains a separate role cue. */
.elm-chat-avatar[data-title-tone="outsider"],.elm-chat-avatar[data-title-tone="neutral"]{--elm-avatar-title-color:#b7aa94}
.elm-chat-avatar[data-title-tone="initiated"]{--elm-avatar-title-color:#ffd78b}
.elm-chat-avatar[data-title-tone="origin"]{--elm-avatar-title-color:#a9d6ff}
.elm-chat-avatar[data-title-tone="night"]{--elm-avatar-title-color:#e84b57}
.elm-chat-avatar[data-title-tone="rise"]{--elm-avatar-title-color:#93e6ad}
.elm-chat-avatar[data-title-tone="lost"]{--elm-avatar-title-color:#72cec3}
.elm-chat-avatar[data-title-tone="dominion"]{--elm-avatar-title-color:#d89455}
.elm-chat-avatar[data-title-tone="final"]{--elm-avatar-title-color:#e8eff5}
.elm-chat-avatar[data-title-tone="legend"]{--elm-avatar-title-color:#d7ad69}
.elm-chat-avatar[data-title-tone]{
  border-color:color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 58%,#b59258);
  outline:1px solid rgba(4,5,5,.94);
  outline-offset:1px;
  box-shadow:
    0 0 0 2px color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 16%,rgba(181,146,88,.28)),
    0 0 5px color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 16%,transparent),
    inset 0 1px 0 rgba(248,225,182,.10),
    inset 0 0 0 1px rgba(0,0,0,.54);
  transition:border-color .18s ease,box-shadow .10s linear,transform .10s linear;
}
/* Only avatars attached to messages react to music. ONLINE/member rails stay static. */
.elm-chat-message .elm-chat-avatar.is-listening:not(.is-local-listening){
  transform:scale(calc(1 + var(--elm-remote-beat,0)*.012));
  box-shadow:
    0 0 0 2px color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 20%,rgba(181,146,88,.30)),
    0 0 calc(5px + var(--elm-remote-beat,0)*9px) color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 34%,transparent),
    0 0 calc(1px + var(--elm-remote-beat,0)*3px) color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 62%,transparent),
    inset 0 1px 0 rgba(248,225,182,.10),
    inset 0 0 0 1px rgba(0,0,0,.54);
}
.elm-chat-message .elm-chat-avatar.is-local-listening{
  transform:scale(var(--elm-audio-avatar-scale,1));
  box-shadow:
    0 0 0 2px color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 20%,rgba(181,146,88,.30)),
    0 0 var(--elm-audio-avatar-blur,2px) color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 44%,transparent),
    0 0 5px color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 22%,transparent),
    inset 0 1px 0 rgba(248,225,182,.10),
    inset 0 0 0 1px rgba(0,0,0,.54);
}
/* Staff surfaces must not erase the title-colour identity halo. */
.elm-chat-message[data-staff-role=owner] .elm-chat-avatar[data-title-tone],
.elm-chat-message[data-staff-role=admin] .elm-chat-avatar[data-title-tone]{
  border-color:color-mix(in srgb,var(--elm-avatar-title-color) 72%,#b59258);
}

/* Offline is a connection status inside the room, never a second entrance. */
.elm-chat-empty[data-state="offline"]{min-height:150px;height:auto;padding:26px 18px 30px;justify-content:center}
.elm-chat-empty[data-state="offline"] .elm-chat-empty-emblem{display:none}
.elm-chat-empty[data-state="offline"]>small{margin-top:0;color:#a78d62}
.elm-chat-empty[data-state="offline"] h3{margin-top:8px;font-size:23px}
.elm-chat-empty[data-state="offline"] p{max-width:430px;margin-bottom:12px;color:#aaa397}

/* Robust mobile podium: artwork centred, ticker only. Desktop remains untouched. */
@media(max-width:720px){
  .elm-chat-open .aka-meme-throne-hero,.elm-chat-open .aka-meme-throne-hero.is-place-1{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important}
  .elm-chat-open .aka-meme-throne-portrait-wrap,.elm-chat-open .aka-meme-throne-hero.is-place-1 .aka-meme-throne-portrait-wrap{align-self:center!important;margin-left:auto!important;margin-right:auto!important}
  .elm-chat-open .aka-meme-throne-name{width:100%!important;margin:0!important;align-items:center!important;text-align:center!important}
  .elm-chat-open .aka-meme-throne-name strong,.elm-chat-open .aka-meme-throne-hero.is-place-1 .aka-meme-throne-name strong,.elm-chat-open .aka-meme-throne-hero.is-aka .aka-meme-throne-name strong{display:none!important}
  .elm-chat-open .aka-meme-throne-name small{display:block!important;width:100%;text-align:center!important}
  .elm-chat-empty[data-state="offline"]{min-height:130px;padding:20px 12px 23px}
}

@media(prefers-reduced-motion:reduce){
  .elm-chat-message .elm-chat-avatar.is-listening,.elm-chat-message .elm-chat-avatar.is-local-listening{transform:none!important}
}


/* v66 — calm identity rails, reactive conversation only. */
.elm-chat-person>.elm-chat-avatar,.elm-chat-session .elm-chat-avatar{transform:none!important;will-change:auto}
.elm-chat-person>.elm-chat-avatar{filter:none!important}
.elm-chat-passport-seal{transform:scale(1)!important;will-change:auto}
.elm-chat-passport.is-listening .elm-chat-passport-seal,.elm-chat-passport.is-local-listening .elm-chat-passport-seal{transform:scale(1)!important}

/* Staff messages keep the same jewellery-quality title ring; role colour never replaces identity colour. */
.elm-chat-message[data-staff-role=owner] .elm-chat-avatar[data-title-tone],
.elm-chat-message[data-staff-role=admin] .elm-chat-avatar[data-title-tone]{
  box-shadow:
    0 0 0 2px color-mix(in srgb,var(--elm-avatar-title-color) 18%,rgba(181,146,88,.30)),
    0 0 5px color-mix(in srgb,var(--elm-avatar-title-color) 16%,transparent),
    inset 0 1px 0 rgba(248,225,182,.10),
    inset 0 0 0 1px rgba(0,0,0,.54);
}
.elm-chat-message[data-staff-role=owner] .elm-chat-avatar.is-listening:not(.is-local-listening)[data-title-tone],
.elm-chat-message[data-staff-role=admin] .elm-chat-avatar.is-listening:not(.is-local-listening)[data-title-tone]{
  box-shadow:
    0 0 0 2px color-mix(in srgb,var(--elm-avatar-title-color) 20%,rgba(181,146,88,.30)),
    0 0 calc(5px + var(--elm-remote-beat,0)*9px) color-mix(in srgb,var(--elm-avatar-title-color) 34%,transparent),
    0 0 calc(1px + var(--elm-remote-beat,0)*3px) color-mix(in srgb,var(--elm-avatar-title-color) 62%,transparent),
    inset 0 1px 0 rgba(248,225,182,.10),
    inset 0 0 0 1px rgba(0,0,0,.54);
}
.elm-chat-message[data-staff-role=owner] .elm-chat-avatar.is-local-listening[data-title-tone],
.elm-chat-message[data-staff-role=admin] .elm-chat-avatar.is-local-listening[data-title-tone]{
  box-shadow:
    0 0 0 2px color-mix(in srgb,var(--elm-avatar-title-color) 20%,rgba(181,146,88,.30)),
    0 0 var(--elm-audio-avatar-blur,2px) color-mix(in srgb,var(--elm-avatar-title-color) 44%,transparent),
    0 0 5px color-mix(in srgb,var(--elm-avatar-title-color) 22%,transparent),
    inset 0 1px 0 rgba(248,225,182,.10),
    inset 0 0 0 1px rgba(0,0,0,.54);
}


/* v67 — hybrid CHAT ENTRY + jewellery-clean identity rings + sidebar polish. */
/* No synthetic travelling path: the original artwork stays pristine. */
.elm-chat-entry-triangle,.elm-chat-entry-runner-mask,.elm-chat-entry-runner-image{display:none!important}
.elm-chat-entry-emblem{
  isolation:isolate;
  border-color:rgba(208,169,99,.30);
  box-shadow:inset 0 0 0 1px rgba(255,229,176,.022),0 18px 42px rgba(0,0,0,.48),0 0 18px rgba(218,164,82,.035);
}
.elm-chat-entry-emblem img{
  z-index:1;
  filter:brightness(var(--elm-audio-entry-image-brightness,1.045)) saturate(1.055) contrast(1.025);
  transition:filter .08s linear;
}
.elm-chat-entry-emblem::after{
  z-index:5;
  inset:0;
  box-shadow:inset 0 0 22px rgba(225,184,102,.075),0 0 24px rgba(214,160,77,.08);
  opacity:var(--elm-audio-entry-glow,.16);
}
.elm-chat-entry-pink{
  position:absolute;z-index:3;pointer-events:none;top:35%;width:58%;height:36%;
  border-radius:50%;mix-blend-mode:screen;filter:blur(12px);
  opacity:var(--elm-audio-entry-pink,.08);
  transform:scale(var(--elm-audio-entry-pink-scale,.94));
  transform-origin:center;will-change:opacity,transform;
}
.elm-chat-entry-pink.is-left{left:-20%;background:radial-gradient(ellipse at 72% 52%,rgba(255,52,176,.72),rgba(194,25,143,.30) 35%,transparent 72%)}
.elm-chat-entry-pink.is-right{right:-20%;background:radial-gradient(ellipse at 28% 52%,rgba(255,52,176,.72),rgba(194,25,143,.30) 35%,transparent 72%)}
.elm-chat-entry-neon{
  position:absolute;z-index:4;inset:8%;pointer-events:none;border-radius:18px;
  box-shadow:inset 0 0 14px rgba(89,143,255,.055),inset 0 0 18px rgba(246,58,185,.045);
  opacity:calc(.62 + var(--elm-audio-entry-glow,.16)*.18);
}
.elm-chat-entry-sideglow{filter:blur(15px);background:radial-gradient(ellipse,rgba(229,185,98,.34),rgba(153,103,43,.085) 45%,transparent 74%)}

/* One precise title-colour edge + one soft bloom. No double/conic rings. */
.elm-chat-avatar[data-title-tone]{
  outline:0!important;
  border:1px solid color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 70%,#c1a064)!important;
  box-shadow:0 0 7px color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 18%,transparent),inset 0 1px 0 rgba(248,225,182,.075),inset 0 0 0 1px rgba(0,0,0,.48)!important;
  transition:border-color .18s ease,box-shadow .09s linear,transform .09s linear;
}
.elm-chat-message .elm-chat-avatar.is-listening:not(.is-local-listening)[data-title-tone]{
  transform:scale(calc(1 + var(--elm-remote-beat,0)*.009));
  box-shadow:0 0 calc(7px + var(--elm-remote-beat,0)*10px) color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 34%,transparent),0 0 calc(2px + var(--elm-remote-beat,0)*3px) color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 56%,transparent),inset 0 1px 0 rgba(248,225,182,.075),inset 0 0 0 1px rgba(0,0,0,.48)!important;
}
.elm-chat-message .elm-chat-avatar.is-local-listening[data-title-tone]{
  transform:scale(var(--elm-audio-avatar-scale,1));
  box-shadow:0 0 var(--elm-audio-avatar-blur,2px) color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 48%,transparent),0 0 6px color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 22%,transparent),inset 0 1px 0 rgba(248,225,182,.075),inset 0 0 0 1px rgba(0,0,0,.48)!important;
}
.elm-chat-person>.elm-chat-avatar[data-title-tone],.elm-chat-session .elm-chat-avatar[data-title-tone],.elm-chat-passport .elm-chat-avatar[data-title-tone]{transform:none!important}

/* Creator = black emerald jewellery, using the same visual language as wallet-connected. */
.elm-chat-staff-badge[data-role=owner]{
  color:#bceccc;background:linear-gradient(145deg,#07170f,#04100a 68%,#030a07);border-color:rgba(66,187,112,.46);
  box-shadow:inset 0 1px 0 rgba(235,205,149,.095),0 0 8px rgba(50,196,108,.075)
}
.elm-chat-message[data-staff-role=owner]{
  --staff-border:rgba(64,166,103,.34);
  --staff-surface:linear-gradient(180deg,rgba(242,211,156,.025),transparent 10px),radial-gradient(ellipse at 12% -8%,rgba(53,151,92,.13),transparent 56%),linear-gradient(118deg,#07150e,#05110b 58%,#030a07);
  --staff-glow:rgba(39,159,89,.075);--staff-avatar:rgba(78,161,107,.42);--staff-name:#d9eee0;--staff-reflection:rgba(231,202,149,.075)
}

/* PREVIEW MEMBERS / IN THE ROOM — keep text and status dots away from the scrollbar. */
.elm-chat-sidebar{padding-right:17px}
.elm-chat-people-head{padding-right:4px}
.elm-chat-people-list{
  padding-right:9px;margin-right:-2px;scrollbar-gutter:stable;scrollbar-width:thin;
  scrollbar-color:#6f5638 transparent;
}
.elm-chat-people-list::-webkit-scrollbar{width:6px}
.elm-chat-people-list::-webkit-scrollbar-track{background:transparent}
.elm-chat-people-list::-webkit-scrollbar-thumb{background:linear-gradient(#7a5d38,#4c3a28);border-radius:10px;border:1px solid #0d0d0f}
.elm-chat-person{gap:9px;padding:10px 5px 10px 0;min-height:62px}
.elm-chat-person>div{padding-right:2px}
.elm-chat-person small{display:flex;align-items:center;gap:4px;min-width:0;overflow:hidden}
.elm-chat-person small .elm-chat-staff-badge{flex:none}
.elm-chat-person-title{display:inline-block;min-width:0;max-width:92px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.elm-chat-online-dot{width:5px;height:5px;margin-left:5px;margin-right:3px;box-shadow:0 0 7px rgba(138,196,154,.20)}
@media(max-width:900px){
  .elm-chat-sidebar{padding-right:13px}
  .elm-chat-people-list{padding-right:7px}
  .elm-chat-person-title{max-width:68px}
  .elm-chat-online-dot{margin-right:2px}
}
@media(prefers-reduced-motion:reduce){
  .elm-chat-entry-pink{transform:none!important}
  .elm-chat-entry-emblem img{filter:brightness(1.045) saturate(1.055) contrast(1.025)!important}
}

/* v68 — adaptive music choreography + vector-clean avatar jewellery. */
/* ENTRY: pink light masses MOVE with body/vocal energy; they do not blink. */
.elm-chat-entry-pink{
  opacity:.145!important;
  transform:translate3d(0,0,0) scale(.98)!important;
  transition:none!important;
  filter:blur(11px)!important;
  will-change:transform;
}
.elm-chat-entry-pink.is-left{
  transform:translate3d(0,var(--elm-audio-entry-pink-left-y,0px),0) scale(.98)!important;
}
.elm-chat-entry-pink.is-right{
  transform:translate3d(0,var(--elm-audio-entry-pink-right-y,0px),0) scale(.98)!important;
}

/* The triangle is a fixed neon enhancement of the ORIGINAL artwork pixels.
   No runner/dash animation exists here, so no stray line can escape a corner. */
.elm-chat-entry-neon{
  display:block!important;
  position:absolute!important;
  z-index:4!important;
  inset:0!important;
  border-radius:inherit!important;
  pointer-events:none!important;
  background:url('../images/ui/el-mullero-fanclub-avatar.webp') center/100% 100% no-repeat!important;
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 128 128'%3E%3Cpath d='M23 24 L105 24 L64 111 Z' fill='none' stroke='white' stroke-width='4.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 128 128'%3E%3Cpath d='M23 24 L105 24 L64 111 Z' fill='none' stroke='white' stroke-width='4.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
  -webkit-mask-size:100% 100%!important;mask-size:100% 100%!important;
  -webkit-mask-repeat:no-repeat!important;mask-repeat:no-repeat!important;
  opacity:.68!important;
  mix-blend-mode:screen!important;
  filter:brightness(1.62) saturate(1.20) contrast(1.05) drop-shadow(0 0 3px rgba(90,128,255,.25)) drop-shadow(0 0 4px rgba(255,48,177,.20))!important;
  box-shadow:none!important;
}
.elm-chat-entry-emblem img{
  filter:brightness(1.045) saturate(1.055) contrast(1.025)!important;
}

/* AVATARS: one vector ring, one soft bloom. The SVG rectangle scales smoothly
   with every avatar size and keeps exactly the same corner geometry. */
.elm-chat-avatar[data-title-tone]{
  color:var(--elm-avatar-title-color,#b7aa94)!important;
  border:0!important;
  outline:0!important;
  box-shadow:0 0 6px color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 16%,transparent),inset 0 0 0 1px rgba(0,0,0,.40)!important;
  transition:box-shadow .08s linear,transform .08s linear!important;
}
.elm-chat-avatar-ring{
  position:absolute;z-index:6;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;color:inherit;
}
.elm-chat-avatar-ring rect{
  fill:none;stroke:currentColor;stroke-width:1.05;stroke-linecap:round;stroke-linejoin:round;opacity:.92;
}
.elm-chat-avatar>img{z-index:1}

/* Fixed, brighter El Mullero triangle inside MESSAGE avatars only. */
.elm-chat-message .elm-chat-avatar[data-title-tone]::after{
  content:"";position:absolute;z-index:3;inset:0;pointer-events:none;border-radius:inherit;
  background:url('../images/ui/el-mullero-avatar-128.webp') center/100% 100% no-repeat;
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 128 128'%3E%3Cpath d='M23 24 L105 24 L64 111 Z' fill='none' stroke='white' stroke-width='4.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 128 128'%3E%3Cpath d='M23 24 L105 24 L64 111 Z' fill='none' stroke='white' stroke-width='4.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  -webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
  opacity:.62;mix-blend-mode:screen;
  filter:brightness(1.70) saturate(1.18) contrast(1.04);
}

/* Local message: physical bump comes from low end, halo breathes mainly with
   body/mids (voice, Rhodes, guitar, synth, horns) and falls back to bass on sparse instrumentals. */
.elm-chat-message .elm-chat-avatar.is-local-listening[data-title-tone]{
  transform:scale(var(--elm-audio-avatar-scale,1))!important;
  box-shadow:
    0 0 var(--elm-audio-avatar-halo-size,2px) color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 42%,transparent),
    0 0 5px color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 18%,transparent),
    inset 0 0 0 1px rgba(0,0,0,.40)!important;
}
/* Remote hooks remain ready for real per-player music presence; ONLINE rail never uses them. */
.elm-chat-message .elm-chat-avatar.is-listening:not(.is-local-listening)[data-title-tone]{
  transform:scale(calc(1 + var(--elm-remote-beat,0)*.007))!important;
  box-shadow:
    0 0 calc(3px + var(--elm-remote-beat,0)*7px) color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 32%,transparent),
    0 0 5px color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 16%,transparent),
    inset 0 0 0 1px rgba(0,0,0,.40)!important;
}
.elm-chat-person>.elm-chat-avatar[data-title-tone],
.elm-chat-session .elm-chat-avatar[data-title-tone],
.elm-chat-passport .elm-chat-avatar[data-title-tone]{
  transform:none!important;
  box-shadow:0 0 5px color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 14%,transparent),inset 0 0 0 1px rgba(0,0,0,.40)!important;
}

@media(prefers-reduced-motion:reduce){
  .elm-chat-entry-pink.is-left,.elm-chat-entry-pink.is-right{transform:scale(.98)!important}
  .elm-chat-message .elm-chat-avatar{transform:none!important}
}

/* v69 — stronger adaptive light motion for CHAT ENTRY + message avatars. */
/* ENTRY pink light columns stay luminous; music changes position/height, not opacity. */
.elm-chat-entry-pink{
  top:27%!important;
  width:62%!important;
  height:50%!important;
  opacity:.19!important;
  filter:blur(10px)!important;
  transform-origin:center!important;
}
.elm-chat-entry-pink.is-left{
  left:-23%!important;
  transform:translate3d(0,var(--elm-audio-entry-pink-left-y,0px),0) scaleX(.96) scaleY(var(--elm-audio-entry-pink-left-scale-y,1))!important;
  background:radial-gradient(ellipse at 76% 50%,rgba(255,59,184,.82),rgba(210,27,150,.38) 32%,rgba(129,19,104,.12) 53%,transparent 74%)!important;
}
.elm-chat-entry-pink.is-right{
  right:-23%!important;
  transform:translate3d(0,var(--elm-audio-entry-pink-right-y,0px),0) scaleX(.96) scaleY(var(--elm-audio-entry-pink-right-scale-y,1))!important;
  background:radial-gradient(ellipse at 24% 50%,rgba(255,59,184,.82),rgba(210,27,150,.38) 32%,rgba(129,19,104,.12) 53%,transparent 74%)!important;
}
.elm-chat-entry-neon{
  opacity:.82!important;
  box-shadow:inset 0 0 16px rgba(91,150,255,.08),inset 0 0 21px rgba(247,57,184,.068)!important;
}

/* MESSAGE avatars reuse the same light language at miniature scale.
   These layers are hidden everywhere else, including ONLINE/PREVIEW MEMBERS. */
.elm-chat-avatar-pink{display:none}
.elm-chat-message .elm-chat-avatar[data-title-tone] .elm-chat-avatar-pink{
  display:block;
  position:absolute;
  z-index:2;
  top:25%;
  width:58%;
  height:52%;
  pointer-events:none;
  border-radius:50%;
  mix-blend-mode:screen;
  filter:blur(2.6px);
  opacity:.14;
  transform-origin:center;
  will-change:transform;
}
.elm-chat-message .elm-chat-avatar[data-title-tone] .elm-chat-avatar-pink.is-left{
  left:-23%;
  background:radial-gradient(ellipse at 76% 50%,rgba(255,57,182,.82),rgba(200,28,147,.34) 36%,transparent 74%);
}
.elm-chat-message .elm-chat-avatar[data-title-tone] .elm-chat-avatar-pink.is-right{
  right:-23%;
  background:radial-gradient(ellipse at 24% 50%,rgba(255,57,182,.82),rgba(200,28,147,.34) 36%,transparent 74%);
}
.elm-chat-message .elm-chat-avatar.is-local-listening[data-title-tone] .elm-chat-avatar-pink{
  opacity:.34;
}
.elm-chat-message .elm-chat-avatar.is-local-listening[data-title-tone] .elm-chat-avatar-pink.is-left{
  transform:translate3d(0,var(--elm-audio-avatar-pink-left-y,0px),0) scaleX(.96) scaleY(var(--elm-audio-avatar-pink-left-scale-y,1));
}
.elm-chat-message .elm-chat-avatar.is-local-listening[data-title-tone] .elm-chat-avatar-pink.is-right{
  transform:translate3d(0,var(--elm-audio-avatar-pink-right-y,0px),0) scaleX(.96) scaleY(var(--elm-audio-avatar-pink-right-scale-y,1));
}
.elm-chat-message .elm-chat-avatar.is-listening:not(.is-local-listening)[data-title-tone] .elm-chat-avatar-pink{
  opacity:.27;
}
.elm-chat-message .elm-chat-avatar.is-listening:not(.is-local-listening)[data-title-tone] .elm-chat-avatar-pink.is-left{
  transform:translate3d(0,var(--elm-remote-pink-left-y,0px),0) scaleX(.96) scaleY(var(--elm-remote-pink-scale-y,1));
}
.elm-chat-message .elm-chat-avatar.is-listening:not(.is-local-listening)[data-title-tone] .elm-chat-avatar-pink.is-right{
  transform:translate3d(0,var(--elm-remote-pink-right-y,0px),0) scaleX(.96) scaleY(var(--elm-remote-pink-scale-y,1));
}

/* Triangle is intentionally obvious on MESSAGE avatars, but remains static;
   motion belongs to the light around it. */
.elm-chat-message .elm-chat-avatar[data-title-tone]::after{
  opacity:.84!important;
  filter:brightness(1.95) saturate(1.28) contrast(1.07) drop-shadow(0 0 1.8px rgba(86,140,255,.28)) drop-shadow(0 0 2.1px rgba(255,49,179,.24))!important;
}

/* One crisp vector contour. No second ring, no gradient stroke, no animated thickness. */
.elm-chat-avatar-ring rect{
  stroke-width:.82!important;
  opacity:.94!important;
}
.elm-chat-message .elm-chat-avatar.is-local-listening[data-title-tone]{
  box-shadow:
    0 0 var(--elm-audio-avatar-halo-size,3px) color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 50%,transparent),
    0 0 7px color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 20%,transparent),
    inset 0 0 0 1px rgba(0,0,0,.38)!important;
}

@media(max-width:768px){
  .elm-chat-entry-pink{height:46%!important;filter:blur(9px)!important}
  .elm-chat-message .elm-chat-avatar[data-title-tone] .elm-chat-avatar-pink{filter:blur(2.2px)}
}
@media(prefers-reduced-motion:reduce){
  .elm-chat-entry-pink.is-left,.elm-chat-entry-pink.is-right,
  .elm-chat-message .elm-chat-avatar-pink.is-left,.elm-chat-message .elm-chat-avatar-pink.is-right{
    transform:none!important;
  }
}

/* v70 — REAL LAYERED LOGO REBUILD.
   The reactive triangle and pink lights are extracted transparent artwork layers.
   No CSS mask / synthetic triangle can leak a square or corner artefact. */
.elm-chat-entry-neon,.elm-chat-entry-pink,.elm-chat-entry-triangle,.elm-chat-entry-runner-mask,.elm-chat-entry-runner-image{display:none!important}
.elm-chat-entry-emblem{isolation:isolate;overflow:hidden}
.elm-chat-entry-emblem::after{z-index:8}
.elm-chat-entry-layer{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
  object-fit:contain!important;object-position:center!important;border-radius:inherit!important;
  pointer-events:none!important;transform-origin:center!important;will-change:transform!important;
}
.elm-chat-entry-layer.is-base{
  z-index:1;transform:scale(1.055)!important;
  filter:brightness(var(--elm-audio-entry-image-brightness,1.03)) saturate(1.045) contrast(1.025)!important;
}
.elm-chat-entry-layer.is-triangle{
  z-index:4;transform:scale(1.055)!important;opacity:.96!important;mix-blend-mode:screen;
  filter:brightness(1.72) saturate(1.28) contrast(1.08) drop-shadow(0 0 2.5px rgba(77,135,255,.30)) drop-shadow(0 0 3px rgba(255,45,181,.26))!important;
}
.elm-chat-entry-layer.is-pink{
  z-index:3;opacity:.94!important;mix-blend-mode:screen!important;filter:brightness(1.22) saturate(1.17)!important;
}
.elm-chat-entry-layer.is-pink.is-left{
  transform:translate3d(0,var(--elm-audio-entry-pink-left-y,0px),0) scale(1.055) scaleY(var(--elm-audio-entry-pink-left-scale-y,1))!important;
}
.elm-chat-entry-layer.is-pink.is-right{
  transform:translate3d(0,var(--elm-audio-entry-pink-right-y,0px),0) scale(1.055) scaleY(var(--elm-audio-entry-pink-right-scale-y,1))!important;
}

/* Layered El Mullero identity. The ONLINE rail stays calm; only message avatars
   receive moving pink layers and beat halo. */
.elm-chat-avatar[data-title-tone]{
  border:0!important;outline:0!important;background:#07090c!important;
  box-shadow:0 0 5px color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 14%,transparent),inset 0 0 0 1px rgba(0,0,0,.52)!important;
}
.elm-chat-avatar-layer{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;
  object-fit:contain!important;object-position:center!important;border-radius:inherit!important;pointer-events:none!important;
  transform-origin:center!important;
}
.elm-chat-avatar-layer.is-base{z-index:1!important;filter:brightness(1.03) saturate(1.04)!important}
.elm-chat-avatar-layer.is-triangle{
  z-index:3!important;opacity:.68!important;mix-blend-mode:screen!important;
  filter:brightness(1.72) saturate(1.23) contrast(1.06) drop-shadow(0 0 1.5px rgba(79,139,255,.25)) drop-shadow(0 0 1.8px rgba(255,45,180,.22))!important;
}
.elm-chat-avatar-layer.is-pink{display:none!important;z-index:2!important;mix-blend-mode:screen!important;filter:brightness(1.18) saturate(1.12)!important}
.elm-chat-message .elm-chat-avatar[data-title-tone] .elm-chat-avatar-layer.is-triangle{opacity:.94!important;filter:brightness(2.02) saturate(1.30) contrast(1.08) drop-shadow(0 0 1.8px rgba(79,139,255,.30)) drop-shadow(0 0 2.0px rgba(255,45,180,.27))!important}
.elm-chat-message .elm-chat-avatar[data-title-tone] .elm-chat-avatar-layer.is-pink{display:block!important;opacity:.62!important}
.elm-chat-message .elm-chat-avatar.is-local-listening[data-title-tone] .elm-chat-avatar-layer.is-pink.is-left{
  transform:translate3d(0,var(--elm-audio-avatar-pink-left-y,0px),0) scaleY(var(--elm-audio-avatar-pink-left-scale-y,1))!important;
}
.elm-chat-message .elm-chat-avatar.is-local-listening[data-title-tone] .elm-chat-avatar-layer.is-pink.is-right{
  transform:translate3d(0,var(--elm-audio-avatar-pink-right-y,0px),0) scaleY(var(--elm-audio-avatar-pink-right-scale-y,1))!important;
}
.elm-chat-message .elm-chat-avatar.is-listening:not(.is-local-listening)[data-title-tone] .elm-chat-avatar-layer.is-pink.is-left{
  transform:translate3d(0,var(--elm-remote-pink-left-y,0px),0) scaleY(var(--elm-remote-pink-scale-y,1))!important;
}
.elm-chat-message .elm-chat-avatar.is-listening:not(.is-local-listening)[data-title-tone] .elm-chat-avatar-layer.is-pink.is-right{
  transform:translate3d(0,var(--elm-remote-pink-right-y,0px),0) scaleY(var(--elm-remote-pink-scale-y,1))!important;
}
/* Preview/online/sidebar: title light + fixed logo only. */
.elm-chat-person>.elm-chat-avatar .elm-chat-avatar-layer.is-pink,
.elm-chat-session .elm-chat-avatar .elm-chat-avatar-layer.is-pink,
.elm-chat-passport .elm-chat-avatar .elm-chat-avatar-layer.is-pink{display:none!important}
.elm-chat-person>.elm-chat-avatar .elm-chat-avatar-layer.is-triangle,
.elm-chat-session .elm-chat-avatar .elm-chat-avatar-layer.is-triangle{opacity:.58!important}

/* Kill every legacy generated triangle; exact pixels now come from the layer asset. */
.elm-chat-message .elm-chat-avatar[data-title-tone]::after{content:none!important;display:none!important}
.elm-chat-avatar-pink{display:none!important}

/* ONE smooth jewellery contour. CSS border-radius follows the actual avatar box,
   so there is no scaled SVG corner join and no second ring. */
.elm-chat-avatar-ring{
  position:absolute!important;z-index:7!important;inset:1px!important;width:auto!important;height:auto!important;
  display:block!important;pointer-events:none!important;box-sizing:border-box!important;
  border:1px solid color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 82%,#e1c183)!important;
  border-radius:calc(var(--elm-avatar-radius) - 1px)!important;
  color:transparent!important;
  box-shadow:0 0 4px color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 24%,transparent)!important;
  opacity:.90!important;
}
.elm-chat-avatar-ring rect{display:none!important}
.elm-chat-message .elm-chat-avatar.is-local-listening[data-title-tone]{
  transform:scale(var(--elm-audio-avatar-scale,1))!important;
  box-shadow:0 0 var(--elm-audio-avatar-halo-size,3px) color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 54%,transparent),0 0 7px color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 18%,transparent),inset 0 0 0 1px rgba(0,0,0,.42)!important;
}
.elm-chat-message .elm-chat-avatar.is-listening:not(.is-local-listening)[data-title-tone]{
  transform:scale(calc(1 + var(--elm-remote-beat,0)*.010))!important;
  box-shadow:0 0 calc(5px + var(--elm-remote-beat,0)*9px) color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 36%,transparent),inset 0 0 0 1px rgba(0,0,0,.42)!important;
}
.elm-chat-person>.elm-chat-avatar[data-title-tone],.elm-chat-session .elm-chat-avatar[data-title-tone],.elm-chat-passport .elm-chat-avatar[data-title-tone]{transform:none!important}

@media(max-width:768px){
  .elm-chat-entry-layer.is-pink{opacity:.86!important}
  .elm-chat-avatar-ring{inset:.75px!important;border-width:1px!important}
}
@media(prefers-reduced-motion:reduce){
  .elm-chat-entry-layer.is-pink,.elm-chat-message .elm-chat-avatar-layer.is-pink{transform:none!important}
  .elm-chat-message .elm-chat-avatar{transform:none!important}
}


/* v72 — fixed-base audio meters + champagne entry seal + compositing cleanup.
   Pink light no longer swings like a pendulum. Each side keeps a fixed foot
   and grows/shrinks vertically like a refined audio meter. */

/* Keep all avatar blend layers inside their own rounded box. This also prevents
   reactive layers/rings from bleeding through the Player Passport popover. */
.elm-chat-avatar{
  isolation:isolate!important;
}
.elm-chat-popover{
  z-index:30!important;
}
.elm-chat-popover[data-kind=passport]{
  isolation:isolate!important;
  contain:paint;
  background:
    radial-gradient(ellipse at 100% 0,rgba(112,80,30,.12),transparent 48%),
    linear-gradient(160deg,#17120c,#08090b 70%)!important;
}
.elm-chat-popover[data-kind=passport] .elm-chat-popover-content,
.elm-chat-popover[data-kind=passport] .elm-chat-passport,
.elm-chat-popover[data-kind=passport] .elm-chat-passport-identity{
  position:relative;
  z-index:2;
  isolation:isolate;
}
.elm-chat-popover[data-kind=passport] .elm-chat-popover-content *{
  mix-blend-mode:normal!important;
}
.elm-chat-popover[data-kind=passport] .elm-chat-popover-content :focus-visible{
  outline:none!important;
}

/* ENTRY — premium champagne seal around the emblem. It stays present even in
   quiet parts, while the outer glow breathes softly with the music. */
.elm-chat-entry-visual::before{
  content:"";
  position:absolute;
  z-index:7;
  left:50%;
  top:50%;
  width:184px;
  height:184px;
  transform:translate(-50%,-50%);
  border:1px solid rgba(226,190,121,.66);
  border-radius:28px;
  pointer-events:none;
  box-shadow:
    inset 0 0 0 1px rgba(255,235,191,.055),
    0 0 8px rgba(217,173,96,.16),
    0 0 calc(10px + var(--elm-audio-entry-glow,.25)*10px) rgba(217,166,84,.11);
  opacity:.94;
}
.elm-chat-entry-emblem{
  border-color:rgba(211,174,106,.40)!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,232,185,.035),
    0 16px 38px rgba(0,0,0,.42),
    0 0 12px rgba(208,158,77,.075)!important;
}

/* ENTRY pink assets are now cropped light columns.
   Their X/Y position never changes. Only HEIGHT changes from a fixed bottom. */
.elm-chat-entry-layer.is-pink{
  inset:auto!important;
  object-fit:fill!important;
  object-position:center!important;
  border-radius:0!important;
  opacity:.54!important;
  mix-blend-mode:screen!important;
  filter:brightness(.94) saturate(1.02) contrast(1.01)!important;
  transform-origin:50% 100%!important;
  transition:none!important;
  will-change:transform!important;
}
.elm-chat-entry-layer.is-pink.is-left{
  left:-2.75%!important;
  top:17.44%!important;
  width:49.66%!important;
  height:50.48%!important;
  transform:scaleY(var(--elm-audio-entry-pink-left-scale-y,.52))!important;
}
.elm-chat-entry-layer.is-pink.is-right{
  left:53.09%!important;
  top:17.44%!important;
  width:49.66%!important;
  height:50.48%!important;
  transform:scaleY(var(--elm-audio-entry-pink-right-scale-y,.52))!important;
}

/* Triangle is a calm fixed neon element; meter motion belongs to pink light. */
.elm-chat-entry-layer.is-triangle{
  opacity:.90!important;
  filter:
    brightness(1.76)
    saturate(1.24)
    contrast(1.07)
    drop-shadow(0 0 2.4px rgba(77,135,255,.26))
    drop-shadow(0 0 2.8px rgba(255,45,181,.23))!important;
}

/* AVATAR jewellery — one real rounded border, no generated second ring. */
.elm-chat-avatar-ring{
  display:none!important;
}
.elm-chat-avatar[data-title-tone]{
  border:1px solid color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 76%,#d7b36d)!important;
  outline:0!important;
  border-radius:var(--elm-avatar-radius)!important;
  box-shadow:
    0 0 5px color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 16%,transparent),
    inset 0 0 0 1px rgba(0,0,0,.42)!important;
}

/* MESSAGE avatar pink assets are cropped mini-meters. They stay centered in
   their original side positions and only change height from the bottom. */
.elm-chat-message .elm-chat-avatar[data-title-tone] .elm-chat-avatar-layer.is-pink{
  display:block!important;
  inset:auto!important;
  object-fit:fill!important;
  object-position:center!important;
  border-radius:0!important;
  opacity:.46!important;
  mix-blend-mode:screen!important;
  filter:brightness(.96) saturate(1.02)!important;
  transform-origin:50% 100%!important;
  transition:none!important;
  will-change:transform!important;
}
.elm-chat-message .elm-chat-avatar[data-title-tone] .elm-chat-avatar-layer.is-pink.is-left{
  left:0!important;
  top:19.53125%!important;
  width:47.65625%!important;
  height:47.65625%!important;
}
.elm-chat-message .elm-chat-avatar[data-title-tone] .elm-chat-avatar-layer.is-pink.is-right{
  left:52.34375%!important;
  top:19.53125%!important;
  width:47.65625%!important;
  height:47.65625%!important;
}
.elm-chat-message .elm-chat-avatar.is-local-listening[data-title-tone] .elm-chat-avatar-layer.is-pink.is-left{
  transform:scaleY(var(--elm-audio-avatar-pink-left-scale-y,.56))!important;
}
.elm-chat-message .elm-chat-avatar.is-local-listening[data-title-tone] .elm-chat-avatar-layer.is-pink.is-right{
  transform:scaleY(var(--elm-audio-avatar-pink-right-scale-y,.54))!important;
}
.elm-chat-message .elm-chat-avatar.is-listening:not(.is-local-listening)[data-title-tone] .elm-chat-avatar-layer.is-pink.is-left{
  transform:scaleY(var(--elm-remote-pink-left-scale-y,.56))!important;
}
.elm-chat-message .elm-chat-avatar.is-listening:not(.is-local-listening)[data-title-tone] .elm-chat-avatar-layer.is-pink.is-right{
  transform:scaleY(var(--elm-remote-pink-right-scale-y,.54))!important;
}

/* Mini triangle remains fixed and visibly lit. */
.elm-chat-message .elm-chat-avatar[data-title-tone] .elm-chat-avatar-layer.is-triangle{
  opacity:.91!important;
  filter:
    brightness(1.90)
    saturate(1.27)
    contrast(1.07)
    drop-shadow(0 0 1.4px rgba(79,139,255,.27))
    drop-shadow(0 0 1.7px rgba(255,45,180,.24))!important;
}

/* The halo carries the musical breath; border thickness never changes. */
.elm-chat-message .elm-chat-avatar.is-local-listening[data-title-tone]{
  transform:scale(var(--elm-audio-avatar-scale,1))!important;
  box-shadow:
    0 0 var(--elm-audio-avatar-halo-size,3px)
      color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 46%,transparent),
    0 0 5px
      color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 18%,transparent),
    inset 0 0 0 1px rgba(0,0,0,.42)!important;
}
.elm-chat-message .elm-chat-avatar.is-listening:not(.is-local-listening)[data-title-tone]{
  transform:scale(calc(1 + var(--elm-remote-beat,0)*.0075))!important;
  box-shadow:
    0 0 calc(5px + var(--elm-remote-beat,0)*7px)
      color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 32%,transparent),
    inset 0 0 0 1px rgba(0,0,0,.42)!important;
}

/* ONLINE/member rail, composer identity and Passport stay calm. */
.elm-chat-person>.elm-chat-avatar .elm-chat-avatar-layer.is-pink,
.elm-chat-session .elm-chat-avatar .elm-chat-avatar-layer.is-pink,
.elm-chat-passport .elm-chat-avatar-layer.is-pink{
  display:none!important;
}
.elm-chat-person>.elm-chat-avatar[data-title-tone],
.elm-chat-session .elm-chat-avatar[data-title-tone],
.elm-chat-passport .elm-chat-avatar[data-title-tone]{
  transform:none!important;
}

/* Mobile: same choreography with slightly softer light. */
@media(max-width:768px){
  .elm-chat-entry-visual::before{
    width:181px;
    height:181px;
    border-radius:27px;
    box-shadow:
      inset 0 0 0 1px rgba(255,235,191,.05),
      0 0 7px rgba(217,173,96,.14),
      0 0 calc(8px + var(--elm-audio-entry-glow,.25)*8px) rgba(217,166,84,.09);
  }
  .elm-chat-entry-layer.is-pink{opacity:.48!important}
  .elm-chat-message .elm-chat-avatar[data-title-tone] .elm-chat-avatar-layer.is-pink{opacity:.40!important}
}

@media(prefers-reduced-motion:reduce){
  .elm-chat-entry-layer.is-pink.is-left{transform:scaleY(.60)!important}
  .elm-chat-entry-layer.is-pink.is-right{transform:scaleY(.60)!important}
  .elm-chat-message .elm-chat-avatar-layer.is-pink{transform:scaleY(.62)!important}
}


/* v73 — align reactive light to the real logo baseline, strengthen message music,
   and make Player Passport use one precise jewellery contour only. */

/* ENTRY: the static base already contains the original horizontal pink line.
   These reactive assets end ABOVE that line and grow from the same fixed foot,
   so no second pink bar or glow can hang underneath it. */
.elm-chat-entry-layer.is-pink{
  opacity:.46!important;
  filter:brightness(.90) saturate(.96) contrast(1.01)!important;
  transform-origin:50% 100%!important;
}
.elm-chat-entry-layer.is-pink.is-left{
  left:-2.75%!important;
  top:17.44%!important;
  width:49.66%!important;
  height:41.02%!important;
  transform:scaleY(var(--elm-audio-entry-pink-left-scale-y,.56))!important;
}
.elm-chat-entry-layer.is-pink.is-right{
  left:53.09%!important;
  top:17.44%!important;
  width:49.66%!important;
  height:41.02%!important;
  transform:scaleY(var(--elm-audio-entry-pink-right-scale-y,.54))!important;
}

/* MESSAGE avatars: same baseline-aligned mini meters, but stronger than v72
   so the soundtrack is visible without making the avatar itself jump. */
.elm-chat-message .elm-chat-avatar[data-title-tone] .elm-chat-avatar-layer.is-pink{
  opacity:.58!important;
  filter:brightness(1.08) saturate(1.06) contrast(1.02)!important;
}
.elm-chat-message .elm-chat-avatar[data-title-tone] .elm-chat-avatar-layer.is-pink.is-left{
  left:0!important;
  top:19.53125%!important;
  width:47.65625%!important;
  height:39.0625%!important;
}
.elm-chat-message .elm-chat-avatar[data-title-tone] .elm-chat-avatar-layer.is-pink.is-right{
  left:52.34375%!important;
  top:19.53125%!important;
  width:47.65625%!important;
  height:39.0625%!important;
}
.elm-chat-message .elm-chat-avatar[data-title-tone] .elm-chat-avatar-layer.is-triangle{
  opacity:.98!important;
  filter:
    brightness(2.12)
    saturate(1.34)
    contrast(1.08)
    drop-shadow(0 0 1.8px rgba(79,139,255,.34))
    drop-shadow(0 0 2.1px rgba(255,45,180,.31))!important;
}
.elm-chat-message .elm-chat-avatar.is-local-listening[data-title-tone]{
  box-shadow:
    0 0 var(--elm-audio-avatar-halo-size,4px)
      color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 58%,transparent),
    0 0 8px
      color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 23%,transparent),
    inset 0 0 0 1px rgba(0,0,0,.40)!important;
}

/* Passport photo: one contour only. Remove the old border/inset line, pull the
   good outer contour tight to the artwork, and slightly enlarge the fallback
   image so a dark gap cannot read as a second low-quality ring. */
.elm-chat-passport-photo{
  position:relative!important;
  overflow:hidden!important;
  border:0!important;
  outline:0!important;
  border-radius:10px!important;
  background:#07090c!important;
  box-shadow:0 0 7px color-mix(in srgb,var(--passport-accent,#b7aa94) 16%,transparent)!important;
  isolation:isolate!important;
}
.elm-chat-passport-photo::after{
  content:"";
  position:absolute;
  z-index:3;
  inset:.5px;
  pointer-events:none;
  border:1px solid color-mix(in srgb,var(--passport-accent,#b7aa94) 78%,#d9b977);
  border-radius:9.5px;
  box-shadow:0 0 4px color-mix(in srgb,var(--passport-accent,#b7aa94) 19%,transparent);
}
.elm-chat-passport-photo img{
  position:relative;
  z-index:1;
  width:100%!important;
  height:100%!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  border-radius:9px!important;
}
.elm-chat-passport-photo.is-mullero-fallback img{
  object-fit:cover!important;
  transform:scale(1.035);
  transform-origin:center;
}

/* Passport and member rail stay completely calm; music belongs to conversation. */
.elm-chat-passport .elm-chat-avatar,
.elm-chat-passport-photo,
.elm-chat-person>.elm-chat-avatar{
  animation:none!important;
}

@media(max-width:768px){
  .elm-chat-entry-layer.is-pink{opacity:.43!important}
  .elm-chat-message .elm-chat-avatar[data-title-tone] .elm-chat-avatar-layer.is-pink{opacity:.54!important}
  .elm-chat-passport-photo{border-radius:9px!important}
  .elm-chat-passport-photo::after{border-radius:8.5px}
}


/* v74 — one passport contour + 3-band message-avatar music hierarchy.
   LOW/kick = physical bump, MID/body = pink meters, HIGH/transients = title halo. */
.elm-chat-passport-photo{
  padding:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border:0!important;
  outline:0!important;
}
.elm-chat-passport-photo::after{
  inset:0!important;
  border:1px solid color-mix(in srgb,var(--passport-accent,#b7aa94) 82%,#dfc385)!important;
  border-radius:10px!important;
  box-shadow:0 0 4px color-mix(in srgb,var(--passport-accent,#b7aa94) 18%,transparent)!important;
}
.elm-chat-passport-photo img{
  inset:0!important;
  width:100%!important;
  height:100%!important;
  border-radius:9.6px!important;
}
.elm-chat-passport-photo.is-mullero-fallback img{transform:none!important}

/* Conversation avatars: keep one sharp jewellery edge. HIGH/transient energy
   only changes the light bloom around it; border thickness and geometry stay fixed. */
.elm-chat-message .elm-chat-avatar.is-local-listening[data-title-tone]{
  transform:scale(var(--elm-audio-avatar-scale,1))!important;
  border-color:color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 80%,#dfc382)!important;
  box-shadow:
    0 0 var(--elm-audio-avatar-halo-size,3px)
      color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 58%,transparent),
    0 0 5px color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 14%,transparent),
    inset 0 0 0 1px rgba(0,0,0,.40)!important;
}
/* Member rail and passport remain calm regardless of audio. */
.elm-chat-person>.elm-chat-avatar[data-title-tone],
.elm-chat-passport .elm-chat-avatar[data-title-tone],
.elm-chat-session .elm-chat-avatar[data-title-tone]{
  animation:none!important;
  transform:none!important;
}
@media(max-width:768px){
  .elm-chat-passport-photo::after{border-radius:9px!important}
  .elm-chat-passport-photo img{border-radius:8.6px!important}
}

/* v75 — restrained equalizer motion + single champagne seal + safe triangle sweep. */
/* One ring only: the emblem's own border is removed and the champagne seal sits on
   the exact outer edge, so there is no visible gap / double-ring effect. */
.elm-chat-entry-emblem{
  border:0!important;
  box-shadow:0 16px 38px rgba(0,0,0,.42),0 0 12px rgba(208,158,77,.075)!important;
}
.elm-chat-entry-visual::before{
  width:180px!important;
  height:180px!important;
  border-radius:25px!important;
  border:1px solid rgba(230,194,124,.78)!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,238,201,.045),
    0 0 6px rgba(217,173,96,.17),
    0 0 calc(9px + var(--elm-audio-entry-glow,.30)*11px) rgba(217,166,84,.12)!important;
}
/* Safe entry sweep: it is clipped by the REAL triangle asset alpha, never by a
   guessed SVG path, so no corner artefact can escape the emblem. */
.elm-chat-entry-emblem::before{
  content:"";
  position:absolute;
  z-index:7;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  background:linear-gradient(112deg,transparent 35%,rgba(255,222,151,0) 43%,rgba(255,231,177,.74) 49%,rgba(255,250,224,.96) 51%,rgba(255,221,155,.52) 54%,transparent 63%);
  background-size:240% 100%;
  background-position:var(--elm-audio-entry-sweep-x,0%) 50%;
  opacity:var(--elm-audio-entry-sweep-opacity,.16);
  -webkit-mask-image:url('../images/ui/chat-reactive/mullero-entry-triangle.webp');
  mask-image:url('../images/ui/chat-reactive/mullero-entry-triangle.webp');
  -webkit-mask-size:100% 100%;mask-size:100% 100%;
  -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
  -webkit-mask-position:center;mask-position:center;
  mix-blend-mode:screen;
  filter:drop-shadow(0 0 2px rgba(240,201,126,.28));
  will-change:background-position,opacity;
}
/* Pink remains fixed-foot equalizer light: faster JS envelopes drive height only. */
.elm-chat-entry-layer.is-pink{
  opacity:.48!important;
  transition:none!important;
  will-change:transform!important;
}
.elm-chat-message .elm-chat-avatar[data-title-tone] .elm-chat-avatar-layer.is-pink{
  opacity:.60!important;
  transition:none!important;
  will-change:transform!important;
}
/* Stable transform ownership prevents a message avatar from ever remaining offset. */
.elm-chat-message .elm-chat-avatar.is-local-listening[data-title-tone]{
  transform-origin:50% 50%!important;
  will-change:transform,box-shadow!important;
}
@media(max-width:768px){
  .elm-chat-entry-visual::before{
    width:142px!important;
    height:142px!important;
    border-radius:21px!important;
  }
  .elm-chat-entry-layer.is-pink{opacity:.44!important}
  .elm-chat-message .elm-chat-avatar[data-title-tone] .elm-chat-avatar-layer.is-pink{opacity:.54!important}
}
@media(prefers-reduced-motion:reduce){
  .elm-chat-entry-emblem::before{display:none!important}
}

/* v76 — precision pass: original HERO runner, no duplicate ENTRY line,
   restrained message halo, and a tighter premium mobile composer. */
.elm-chat-entry-emblem::before{display:none!important}
.elm-chat-entry-layer.is-triangle{
  opacity:.93!important;
  filter:
    brightness(var(--elm-audio-entry-triangle-brightness,1.72))
    saturate(1.24)
    contrast(1.07)
    drop-shadow(0 0 2.3px rgba(77,135,255,.24))
    drop-shadow(0 0 2.6px rgba(255,45,181,.22))!important;
}
/* Reduce only the animated bloom; retain the sharp title-colour edge. */
.elm-chat-message .elm-chat-avatar.is-local-listening[data-title-tone]{
  box-shadow:
    0 0 var(--elm-audio-avatar-halo-size,2.8px)
      color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 46%,transparent),
    0 0 4px color-mix(in srgb,var(--elm-avatar-title-color,#b7aa94) 11%,transparent),
    inset 0 0 0 1px rgba(0,0,0,.40)!important;
}

@media(max-width:480px){
  .elm-chat-composer-area{padding:7px 6px max(9px,env(safe-area-inset-bottom))!important}
  .elm-chat-composer{
    width:min(calc(100% - 18px),286px)!important;
    max-width:286px!important;
    margin-inline:auto!important;
    grid-template-columns:26px minmax(54px,1fr) 33px 33px!important;
    gap:3px!important;
    padding:3px 4px!important;
    border-radius:8px!important;
    border-color:rgba(181,146,91,.48)!important;
    box-shadow:inset 0 1px 3px rgba(0,0,0,.38)!important;
  }
  .elm-chat-room .elm-chat-composer-emoji{width:26px!important;height:34px!important;padding:5px!important}
  .elm-chat-room .elm-chat-photo-btn,.elm-chat-room .elm-chat-send{
    width:33px!important;height:33px!important;padding:6px!important;border-radius:6px!important
  }
  .elm-chat-room .elm-chat-photo-btn svg{width:16px!important;height:16px!important}
  .elm-chat-room .elm-chat-send svg{width:15px!important;height:15px!important}
  .elm-chat-room .elm-chat-composer textarea{
    min-height:34px!important;max-height:88px!important;padding:6px 3px!important;
    font-size:16px!important;line-height:1.34!important
  }
  .elm-chat-session{width:min(calc(100% - 18px),286px)!important;max-width:286px!important;margin-inline:auto!important}
}


/* v77 — premium messenger controls + role-aware moderation. */
.elm-chat-edited{font:400 8px/1 "Special Elite",serif;letter-spacing:.10em;color:#8f846f;opacity:.78;margin-left:auto}
.elm-chat-message-head .elm-chat-edited+time{margin-left:4px}
.elm-chat-popover[data-kind="message-menu"]{width:300px;border-color:#8d7046;background:linear-gradient(155deg,#1a1713 0%,#0c0e0f 72%);box-shadow:0 22px 54px #000d,inset 0 1px 0 #efd39c1b}
.elm-chat-options.is-message-menu{gap:5px}
.elm-chat-options.is-message-menu button{min-height:48px;padding:9px 10px;background:linear-gradient(135deg,#171613,#101112);border-color:#745c3b66;border-radius:7px}
.elm-chat-options.is-message-menu button>span{display:grid;gap:2px;min-width:0}
.elm-chat-options.is-message-menu button b{font:400 13px/1.1 "Bebas Neue",sans-serif;letter-spacing:.07em;color:#ead5aa}
.elm-chat-options.is-message-menu button small{font:400 9px/1.3 "Space Grotesk",sans-serif;color:#938b7d;letter-spacing:.015em}
.elm-chat-options.is-message-menu button.is-staff{border-color:#8a6f4366;background:linear-gradient(135deg,#201a12,#0d1110)}
.elm-chat-options.is-message-menu button.is-danger{border-color:#77313180;background:linear-gradient(135deg,#241113,#100e0f)}
.elm-chat-options.is-message-menu button.is-danger b{color:#e5a5a0}
.elm-chat-soft-btn.is-primary{border-color:#aa824c;background:linear-gradient(135deg,#3a2a19,#17130e);box-shadow:inset 0 1px 0 #f3d89c18}
.elm-chat-soft-btn.is-danger{border-color:#8b3a39;background:linear-gradient(135deg,#321416,#160d0f);color:#f0b0aa}
.elm-chat-edit-panel{display:grid;gap:9px}.elm-chat-edit-panel textarea{width:100%;min-height:112px;max-height:220px;resize:vertical;background:#0e1011;border:1px solid #765d3d;border-radius:7px;padding:11px;color:#eee1c8;font:400 14px/1.55 "Space Grotesk",sans-serif;outline:none}.elm-chat-edit-panel textarea:focus{border-color:#b58b53;box-shadow:0 0 0 2px #b78d4f12}.elm-chat-edit-meta{display:flex;justify-content:space-between;gap:10px;color:#918979;font-size:9px}.elm-chat-edit-actions{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.elm-chat-confirm{display:grid;justify-items:center;text-align:center;gap:8px;padding:7px 2px}.elm-chat-confirm>svg{width:24px;height:24px;color:#c77b72}.elm-chat-confirm p{margin:0;color:#ead9ba;font-size:13px}.elm-chat-confirm small{color:#918879;font-size:9px}.elm-chat-confirm>div{display:flex;gap:7px;justify-content:center;flex-wrap:wrap}
.elm-chat-control-grid{display:grid;gap:7px}.elm-chat-control-grid>button{display:grid;grid-template-columns:28px 1fr;align-items:center;gap:8px;text-align:left;padding:10px;border:1px solid #735b3d66;border-radius:7px;background:linear-gradient(135deg,#171613,#0d0f10);color:#d7c29c}.elm-chat-control-grid>button svg{width:19px;height:19px;color:#c09a61}.elm-chat-control-grid>button span{display:grid;gap:2px}.elm-chat-control-grid>button b{font:400 14px/1 "Bebas Neue",sans-serif;letter-spacing:.08em}.elm-chat-control-grid>button small{font-size:9px;color:#918a7c}
.elm-chat-control-list{display:grid;gap:7px}.elm-chat-control-list article{display:grid;grid-template-columns:1fr auto;gap:4px 8px;padding:10px;border:1px solid #6f593b55;border-radius:7px;background:#101112}.elm-chat-control-list article>b{font:400 13px/1.15 "Bebas Neue",sans-serif;letter-spacing:.06em;color:#ead2a4}.elm-chat-control-list article>small{grid-column:1/-1;color:#a28f70;font-size:9px}.elm-chat-control-list article>p{grid-column:1/-1;margin:1px 0;color:#b9b0a2;font-size:10px;line-height:1.45}.elm-chat-control-list article>time{grid-column:1/-1;color:#756f65;font-size:8px}.elm-chat-control-list article>.elm-chat-soft-btn{grid-column:2;grid-row:1/3;margin:0;padding:7px 9px;font-size:9px}
@media(max-width:480px){
  .elm-chat-composer-area{padding-inline:7px!important}
  .elm-chat-composer,.elm-chat-session{width:min(calc(100% - 32px),268px)!important;max-width:268px!important}
  .elm-chat-composer{grid-template-columns:24px minmax(72px,1fr) 31px 31px!important;gap:3px!important;padding:3px!important;border-radius:8px!important}
  .elm-chat-room .elm-chat-composer-emoji{width:24px!important;height:32px!important;padding:5px!important}
  .elm-chat-room .elm-chat-photo-btn,.elm-chat-room .elm-chat-send{width:31px!important;height:31px!important;padding:6px!important;border-radius:6px!important}
  .elm-chat-room .elm-chat-composer textarea{min-height:32px!important;max-height:82px!important;padding:5px 3px!important;line-height:1.32!important}
  .elm-chat-popover[data-kind="message-menu"]{width:min(286px,calc(100% - 20px));right:10px;border-radius:10px}
  .elm-chat-options.is-message-menu button{min-height:44px;padding:8px 9px}
  .elm-chat-options.is-message-menu button b{font-size:12px}.elm-chat-options.is-message-menu button small{font-size:8px}
}


/* v77.2 — premium ROOM NAV: one clean header, pinned/people/seal controls,
   unified mobile composer and no duplicate rule/preview strips. */
.elm-chat-rulebar,.elm-chat-local-label{display:none!important}
.elm-chat-header{
  min-height:66px;
  padding:14px 18px 13px;
  gap:11px;
  background:
    linear-gradient(90deg,rgba(76,52,28,.12),transparent 52%),
    linear-gradient(180deg,rgba(255,255,255,.012),transparent);
}
.elm-chat-room-title{min-width:0;flex:1}
.elm-chat-status{margin-left:auto;flex:none}
.elm-chat-room-nav{display:flex;align-items:center;gap:5px;flex:none;margin-left:2px}
.elm-chat-room-nav>button{
  position:relative;display:grid;place-items:center;width:34px;height:34px;padding:0;
  border:1px solid rgba(173,135,78,.26);border-radius:8px;
  background:linear-gradient(145deg,rgba(42,32,22,.54),rgba(11,12,13,.84));
  color:#cdb486;box-shadow:inset 0 1px 0 rgba(255,231,187,.035);
  transition:border-color .16s ease,color .16s ease,background .16s ease,transform .16s ease;
}
.elm-chat-room-nav>button:hover{color:#f0d29a;border-color:rgba(211,166,96,.58);background:linear-gradient(145deg,rgba(60,42,24,.62),rgba(13,14,15,.9))}
.elm-chat-room-nav>button:active{transform:translateY(1px)}
.elm-chat-room-nav svg{width:16px;height:16px}
.elm-chat-room-nav b{
  position:absolute;right:-3px;top:-4px;display:grid;place-items:center;min-width:16px;height:16px;padding:0 4px;
  border:1px solid rgba(128,111,77,.55);border-radius:9px;background:#0e1110;color:#b6d2a5;
  font:600 8px/1 "Space Grotesk",sans-serif;box-shadow:0 2px 8px #000a;
}
.elm-chat-room-nav button[data-chat-action="room-menu"]{color:#d6b36e;border-color:rgba(185,145,77,.38)}
.elm-chat-popover[data-kind="room-menu"],.elm-chat-popover[data-kind="pins"]{width:330px;border-color:#927346;background:linear-gradient(155deg,#1b1712,#0b0d0e 72%)}
.elm-chat-room-menu,.elm-chat-pin-list{display:grid;gap:8px}
.elm-chat-room-state{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid rgba(140,105,155,.22);border-radius:7px;background:rgba(49,35,54,.18)}
.elm-chat-room-state>i{width:6px;height:6px;border-radius:50%;background:#a892b4;box-shadow:0 0 8px rgba(185,143,205,.34)}
.elm-chat-room-state>span{display:grid;gap:2px}.elm-chat-room-state b{font:400 11px/1.1 "Bebas Neue",sans-serif;letter-spacing:.08em;color:#d1bfda}.elm-chat-room-state small{font-size:8px;color:#8d8192}
.elm-chat-room-menu-section{display:grid;gap:5px;padding-top:4px}.elm-chat-room-menu-section+ .elm-chat-room-menu-section{padding-top:9px;border-top:1px solid rgba(176,140,84,.14)}
.elm-chat-room-menu-section>small{padding:0 3px 2px;font:400 8px/1.2 "Special Elite",serif;letter-spacing:.15em;color:#8e774f}
.elm-chat-room-menu-section>button,.elm-chat-pin-card{
  display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:9px;width:100%;min-width:0;
  padding:9px 10px;border:1px solid rgba(120,92,57,.50);border-radius:7px;text-align:left;
  background:linear-gradient(135deg,#171512,#0e1011);color:#d3bd95;
}
.elm-chat-room-menu-section>button:hover,.elm-chat-pin-card:hover{border-color:rgba(181,137,76,.70);background:linear-gradient(135deg,#201a12,#0f1112)}
.elm-chat-room-menu-section>button>svg,.elm-chat-pin-card>span>svg{width:18px;height:18px;color:#b88d50}
.elm-chat-room-menu-section>button>span,.elm-chat-pin-card>div{display:grid;gap:2px;min-width:0}
.elm-chat-room-menu-section>button b,.elm-chat-pin-card b{font:400 13px/1.08 "Bebas Neue",sans-serif;letter-spacing:.07em;color:#e7d1a8;overflow-wrap:anywhere}
.elm-chat-room-menu-section>button small,.elm-chat-pin-card small{font:500 8px/1.25 "Space Grotesk",sans-serif;color:#8f8779;letter-spacing:.02em}
.elm-chat-room-menu-section.is-exit>button{border-color:rgba(113,45,45,.54);background:linear-gradient(135deg,#221112,#0f0d0e)}
.elm-chat-room-menu-section.is-exit>button>svg,.elm-chat-room-menu-section.is-exit>button b{color:#d89991}
.elm-chat-pin-card{border-color:rgba(132,103,62,.44)}
.elm-chat-pin-card.is-official{cursor:default;background:linear-gradient(135deg,rgba(61,43,22,.46),rgba(13,14,14,.94));border-color:rgba(184,143,79,.56)}
.elm-chat-pin-card>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:rgba(151,111,56,.08)}
.elm-chat-pin-card p{margin:1px 0 0;font-size:9px;line-height:1.35;color:#999183}
.elm-chat-room-empty-note{margin:2px 3px 0;padding:8px 9px;border:1px dashed rgba(116,94,63,.30);border-radius:6px;color:#827b70;font-size:9px;text-align:center}

@media(max-width:768px){
  .elm-chat-header{min-height:56px;padding:10px 10px 9px;gap:6px;align-items:center}
  .elm-chat-room-icon{display:none!important}
  .elm-chat-room-title{flex:1 1 auto}
  .elm-chat-room-title small{font-size:7px!important;letter-spacing:.08em!important;gap:4px!important}
  .elm-chat-room-title strong{font-size:18px!important;letter-spacing:.045em!important;line-height:1!important;white-space:nowrap}
  .elm-chat-beta{font-size:7px!important;padding:1px 3px!important}
  .elm-chat-status{order:2;margin-left:auto;padding:4px 5px!important;min-width:0;border-radius:6px!important}
  .elm-chat-status b{font-size:7px!important;max-width:54px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .elm-chat-status i{width:4px!important;height:4px!important}
  .elm-chat-room-nav{order:3;gap:3px;margin-left:0}
  .elm-chat-room-nav>button{width:29px;height:29px;border-radius:7px}
  .elm-chat-room-nav svg{width:14px;height:14px}
  .elm-chat-room-nav b{right:-2px;top:-4px;min-width:14px;height:14px;padding:0 3px;font-size:7px}
  .elm-chat-popover[data-kind="room-menu"],.elm-chat-popover[data-kind="pins"],.elm-chat-popover[data-kind="members"]{
    width:min(300px,calc(100% - 14px));right:7px;left:auto;border-radius:10px;
  }
  /* One messenger strip: face | Message | image | send. No floating gaps. */
  .elm-chat-composer-area{padding:6px 7px max(8px,env(safe-area-inset-bottom))!important}
  .elm-chat-composer,.elm-chat-session,.elm-chat-reply-preview,.elm-chat-image-draft,.elm-chat-foot{width:100%!important;max-width:none!important;margin-inline:0!important}
  .elm-chat-composer{
    display:grid!important;grid-template-columns:30px minmax(0,1fr) 34px 36px!important;align-items:stretch!important;
    gap:0!important;padding:0!important;overflow:hidden!important;border-radius:9px!important;
    border:1px solid rgba(177,141,86,.52)!important;background:linear-gradient(120deg,#111314,#0b0d0e)!important;
    box-shadow:inset 0 1px 3px rgba(0,0,0,.44)!important;
  }
  .elm-chat-room .elm-chat-composer-emoji,.elm-chat-room .elm-chat-photo-btn,.elm-chat-room .elm-chat-send{
    width:auto!important;height:38px!important;min-width:0!important;border:0!important;border-radius:0!important;margin:0!important;padding:7px!important;background:transparent!important;align-self:stretch!important;
  }
  .elm-chat-room .elm-chat-composer-emoji{display:grid!important;border-right:1px solid rgba(155,122,75,.18)!important;color:#c9ad7d!important}
  .elm-chat-room .elm-chat-photo-btn{border-left:1px solid rgba(155,122,75,.18)!important;color:#d1b582!important}
  .elm-chat-room .elm-chat-send{border-left:1px solid rgba(164,116,74,.30)!important;background:linear-gradient(145deg,rgba(89,43,34,.34),rgba(43,24,22,.62))!important;color:#d9a689!important}
  .elm-chat-room .elm-chat-send:not(:disabled){color:#ffd6a4!important;background:linear-gradient(145deg,rgba(116,52,39,.54),rgba(55,28,23,.84))!important}
  .elm-chat-room .elm-chat-composer textarea{
    min-height:38px!important;max-height:88px!important;padding:8px 9px!important;border-radius:0!important;font-size:16px!important;line-height:1.35!important;
  }
  .elm-chat-room .elm-chat-composer textarea::placeholder{color:#908d86!important}
  .elm-chat-room .elm-chat-composer svg{width:15px!important;height:15px!important}
  .elm-chat-send span{display:none!important}
}
@media(max-width:360px){
  .elm-chat-header{padding-inline:8px;gap:4px}
  .elm-chat-room-title strong{font-size:17px!important}
  .elm-chat-status b{display:none}
  .elm-chat-status{padding:5px!important}
  .elm-chat-room-nav>button{width:28px;height:28px}
  .elm-chat-composer{grid-template-columns:28px minmax(0,1fr) 32px 34px!important}
  .elm-chat-room .elm-chat-composer-emoji,.elm-chat-room .elm-chat-photo-btn,.elm-chat-room .elm-chat-send{height:36px!important;padding:6px!important}
  .elm-chat-room .elm-chat-composer textarea{min-height:36px!important;padding:7px 8px!important}
}

/* v77.3 — clean premium room navigation + mobile composer precision */
.elm-chat-input-shell{min-width:0;display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch}
.elm-chat-input-shell .elm-chat-composer-emoji{grid-column:1}
.elm-chat-input-shell textarea{grid-column:1}
/* Desktop already has the full members sidebar: do not duplicate PEOPLE in the header. */
.elm-chat-room-nav [data-chat-action="members"]{display:none}

.elm-chat-pin-strip{display:flex;align-items:stretch;gap:0;margin:0 20px;border:1px solid rgba(142,108,62,.50);border-top-color:rgba(205,162,91,.52);border-radius:0 0 8px 8px;background:linear-gradient(100deg,rgba(41,29,17,.96),rgba(13,14,15,.96) 62%,rgba(29,19,13,.94));box-shadow:0 10px 28px rgba(0,0,0,.24),inset 0 1px 0 rgba(246,206,136,.08);overflow:hidden;position:relative;z-index:2}
.elm-chat-pin-strip[hidden]{display:none!important}
.elm-chat-pin-strip-main{min-width:0;flex:1;display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px 9px;border:0;background:transparent;color:inherit;text-align:left}
.elm-chat-pin-strip-icon{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;color:#ddb879;background:radial-gradient(circle at 40% 35%,rgba(214,164,90,.16),rgba(48,35,21,.06) 68%);box-shadow:inset 0 0 0 1px rgba(205,157,88,.20)}
.elm-chat-pin-strip-icon svg{width:13px;height:13px}
.elm-chat-pin-strip-copy{min-width:0;display:flex;flex-direction:column;gap:1px}
.elm-chat-pin-strip-copy small{font-size:7px;letter-spacing:.16em;color:#b9945f;white-space:nowrap}
.elm-chat-pin-strip-copy b{font-size:11px;font-weight:500;color:#d9d3c8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.elm-chat-pin-strip-main em{font-style:normal;font-size:8px;color:#8e8372;letter-spacing:.06em}
.elm-chat-pin-strip-close{width:34px;border:0;border-left:1px solid rgba(155,118,70,.20);background:rgba(19,17,15,.45);color:#a99576;display:grid;place-items:center}
.elm-chat-pin-strip-close:hover{color:#f0d3a2;background:rgba(52,37,22,.46)}
.elm-chat-pin-strip-close svg{width:13px;height:13px}

@media(max-width:768px){
  /* Header: one calm room identity line + three compact tools. */
  .elm-chat-header{min-height:52px!important;padding:9px 9px 8px!important;gap:5px!important;border-bottom:1px solid rgba(128,96,55,.22)!important}
  .elm-chat-room-title{min-width:0!important}
  .elm-chat-room-title small{font-size:6.5px!important;letter-spacing:.10em!important}
  .elm-chat-room-title strong{font-size:16px!important;letter-spacing:.045em!important}
  .elm-chat-status{width:8px!important;height:8px!important;min-width:8px!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;margin-left:auto!important}
  .elm-chat-status b{display:none!important}
  .elm-chat-status i{width:5px!important;height:5px!important;margin:0!important}
  .elm-chat-room-nav{margin-left:1px!important;gap:3px!important}
  .elm-chat-room-nav [data-chat-action="members"]{display:grid!important}
  .elm-chat-room-nav>button{width:28px!important;height:28px!important;border-radius:7px!important;border-color:rgba(139,104,59,.38)!important;background:linear-gradient(145deg,rgba(40,32,23,.56),rgba(15,16,17,.74))!important;color:#c5a977!important;box-shadow:inset 0 1px 0 rgba(242,205,144,.05)!important}
  .elm-chat-room-nav>button:hover{border-color:rgba(193,146,77,.62)!important;color:#f0cf96!important}
  .elm-chat-room-nav svg{width:13px!important;height:13px!important;stroke-width:1.55!important}

  /* Pinned messages stay a slim strip, never a full chat-covering panel. */
  .elm-chat-pin-strip{margin:0 8px;border-radius:0 0 7px 7px}
  .elm-chat-pin-strip-main{grid-template-columns:24px minmax(0,1fr) auto;gap:7px;padding:7px 7px}
  .elm-chat-pin-strip-icon{width:23px;height:23px}
  .elm-chat-pin-strip-copy small{font-size:6px}
  .elm-chat-pin-strip-copy b{font-size:9.5px}
  .elm-chat-pin-strip-main em{font-size:7px}
  .elm-chat-pin-strip-close{width:30px}

  /* Messenger geometry: one input shell + separate premium PHOTO + SEND controls. */
  .elm-chat-composer-area{padding:6px 7px max(8px,env(safe-area-inset-bottom))!important}
  .elm-chat-composer,.elm-chat-session,.elm-chat-reply-preview,.elm-chat-image-draft,.elm-chat-foot{width:min(94%,300px)!important;max-width:300px!important;margin-inline:auto!important}
  .elm-chat-composer{display:grid!important;grid-template-columns:minmax(0,1fr) 36px 40px!important;gap:4px!important;align-items:center!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important}
  .elm-chat-input-shell{display:grid!important;grid-template-columns:30px minmax(0,1fr)!important;align-items:stretch!important;min-width:0!important;height:40px!important;border:1px solid rgba(171,136,83,.54)!important;border-radius:8px!important;background:linear-gradient(120deg,#111314,#0b0d0e)!important;box-shadow:inset 0 1px 3px rgba(0,0,0,.48),0 1px 0 rgba(238,201,137,.03)!important;overflow:hidden!important}
  .elm-chat-room .elm-chat-input-shell .elm-chat-composer-emoji{display:grid!important;grid-column:1!important;width:30px!important;height:40px!important;min-width:30px!important;margin:0!important;padding:7px!important;border:0!important;border-right:1px solid rgba(158,122,73,.16)!important;border-radius:0!important;background:transparent!important;color:#c8aa77!important;align-self:stretch!important}
  .elm-chat-room .elm-chat-input-shell textarea{grid-column:2!important;display:block!important;width:100%!important;min-width:0!important;min-height:40px!important;max-height:86px!important;margin:0!important;padding:8px 8px!important;border:0!important;border-radius:0!important;background:transparent!important;font-size:16px!important;line-height:1.36!important;box-shadow:none!important}
  .elm-chat-room .elm-chat-photo-btn{width:36px!important;height:40px!important;min-width:36px!important;margin:0!important;padding:8px!important;border:1px solid #8d744e!important;border-radius:8px!important;background:linear-gradient(145deg,#30291f,#151718 75%)!important;color:#e1c69a!important;box-shadow:inset 0 1px 0 rgba(241,211,160,.14),inset 0 -1px 0 rgba(0,0,0,.42),0 2px 4px rgba(0,0,0,.24)!important;align-self:center!important}
  .elm-chat-room .elm-chat-send{width:40px!important;height:40px!important;min-width:40px!important;margin:0!important;padding:8px!important;border:1px solid #a95740!important;border-radius:8px!important;background:linear-gradient(135deg,#712d22,#361813)!important;color:#ffe0b8!important;box-shadow:inset 0 1px 0 rgba(238,178,132,.14),0 3px 8px rgba(63,18,12,.20)!important;align-self:center!important}
  .elm-chat-room .elm-chat-send:disabled{opacity:.62!important;background:linear-gradient(135deg,#5e2b23,#2d1916)!important;color:#c99c78!important}
  .elm-chat-room .elm-chat-photo-btn:disabled{opacity:.62!important}
  .elm-chat-room .elm-chat-photo-btn svg{width:16px!important;height:16px!important}
  .elm-chat-room .elm-chat-send svg{width:15px!important;height:15px!important}
  .elm-chat-send span{display:none!important}
}
@media(max-width:360px){
  .elm-chat-composer,.elm-chat-session,.elm-chat-reply-preview,.elm-chat-image-draft,.elm-chat-foot{width:min(94%,268px)!important;max-width:268px!important}
  .elm-chat-composer{grid-template-columns:minmax(0,1fr) 34px 37px!important;gap:3px!important}
  .elm-chat-input-shell{grid-template-columns:28px minmax(0,1fr)!important;height:38px!important}
  .elm-chat-room .elm-chat-input-shell .elm-chat-composer-emoji{width:28px!important;height:38px!important;min-width:28px!important;padding:6px!important}
  .elm-chat-room .elm-chat-input-shell textarea{min-height:38px!important;padding:7px 7px!important}
  .elm-chat-room .elm-chat-photo-btn{width:34px!important;height:38px!important;min-width:34px!important;padding:7px!important}
  .elm-chat-room .elm-chat-send{width:37px!important;height:38px!important;min-width:37px!important;padding:7px!important}
}


/* v77.5 — ERO DEV public identity: POWER infinity, NOT RANKED, standard gold seal with Royal Onyx ring. */
.elm-chat-title.is-ero-dev,.elm-chat-person-title.is-ero-dev{
  --elm-title-face:#b5b8bb;--elm-title-contour:rgba(220,190,132,.82);--elm-title-glow:rgba(224,199,154,.20);
}
.elm-chat-title.is-ero-dev .elm-chat-title-text{
  letter-spacing:.105em;text-shadow:0 1px 0 #000,0 0 3px rgba(244,239,226,.12),0 0 8px rgba(207,174,112,.16);
}
.elm-chat-avatar[data-title-tone="ero-dev"],.elm-chat-message[data-title-tone="ero-dev"]{--elm-avatar-title-color:#d8c69d}
.elm-chat-message[data-title-tone="ero-dev"] .elm-chat-avatar{
  border-color:rgba(213,191,145,.88)!important;
  box-shadow:0 0 4px rgba(239,231,209,.13),0 0 9px rgba(195,155,91,.13),inset 0 1px 0 rgba(255,248,227,.08)!important;
}
.elm-chat-passport[data-family="ero-dev"]{
  --passport-accent:#c9ad78;--passport-face:#aeb1b4;--passport-shadow:#050608;--passport-contour:#d6bb84;
}
.elm-chat-passport[data-family="ero-dev"] .elm-chat-passport-title{
  background:radial-gradient(ellipse at 50% 40%,rgba(215,190,140,.08),transparent 54%),linear-gradient(90deg,transparent,rgba(15,16,19,.72),transparent);
}
.elm-chat-passport[data-family="ero-dev"] .elm-chat-passport-title-text{
  letter-spacing:.075em;text-shadow:0 1px 0 #000,0 0 3px rgba(242,239,229,.13),0 0 8px rgba(202,169,108,.15);
}
.elm-chat-passport[data-family="ero-dev"] .elm-chat-passport-seal{
  border-radius:50%;
  background:radial-gradient(circle at 38% 30%,#2d3137 0,#15181c 42%,#070809 78%);
  box-shadow:inset 0 0 0 1px rgba(224,199,154,.16),0 0 8px rgba(131,139,151,.08);
}
/* ERO DEV keeps the same gold star/facets as every player; only the title ring is Royal Onyx. */
.elm-chat-passport[data-family="ero-dev"] .elm-chat-passport-seal .aka-wallet-seal-ring{stroke:#444a52!important;opacity:.98}
.elm-chat-passport[data-family="ero-dev"] .elm-chat-passport-seal .aka-wallet-seal-ring.is-inner{stroke:#b49a70!important;opacity:.52}
.elm-chat-passport[data-family="ero-dev"] .elm-chat-passport-seal .aka-wallet-seal-rose{fill:#e1ae4b!important;stroke:#f1cf82!important}
.elm-chat-passport[data-family="ero-dev"] .elm-chat-passport-seal .aka-wallet-seal-facets{fill:#754323!important;stroke:#a86d31!important}
.elm-chat-passport[data-family="ero-dev"] .elm-chat-passport-seal .aka-wallet-seal-ticks{stroke:#d4a843!important}
.elm-chat-passport[data-family="ero-dev"] .elm-chat-passport-seal .aka-wallet-seal-center{fill:#f3d995!important;stroke:#24140d!important}
/* ERO DEV infinity uses the same font and finish as ordinary POWER. */
/* The POWER icon follows the common gold icon rule below. */

/* Pinned strip: readable at a glance without turning into a second header. */
.elm-chat-pin-strip-main{grid-template-columns:32px minmax(0,1fr) auto!important;gap:11px!important;padding:10px 12px!important;min-height:48px!important}
.elm-chat-pin-strip-icon{width:29px!important;height:29px!important}.elm-chat-pin-strip-icon svg{width:15px!important;height:15px!important}
.elm-chat-pin-strip-copy{gap:2px!important}
.elm-chat-pin-strip-copy small{font-size:8.5px!important;letter-spacing:.14em!important;color:#c49d66!important}
.elm-chat-pin-strip-copy b{font-size:13.5px!important;line-height:1.22!important;color:#e1d9ca!important}
.elm-chat-pin-strip-main em{font-size:9px!important;color:#a49782!important}
.elm-chat-pin-strip-close{width:38px!important}.elm-chat-pin-strip-close svg{width:14px!important;height:14px!important}

/* ROOM CONTROL is a console, not a decorative star/seal. */
.elm-chat-room-nav button[data-chat-action="room-menu"]{color:#d9bb84!important;background:linear-gradient(145deg,rgba(40,33,24,.68),rgba(10,12,13,.90))!important;border-color:rgba(190,150,87,.46)!important}
.elm-chat-room-nav button[data-chat-action="room-menu"] svg{width:16px!important;height:16px!important;stroke-width:1.45!important}

@media(max-width:768px){
  .elm-chat-pin-strip{margin:0 8px!important}
  .elm-chat-pin-strip-main{grid-template-columns:27px minmax(0,1fr) auto!important;gap:8px!important;padding:9px 8px!important;min-height:46px!important}
  .elm-chat-pin-strip-icon{width:26px!important;height:26px!important}
  .elm-chat-pin-strip-copy small{font-size:8px!important;letter-spacing:.12em!important}
  .elm-chat-pin-strip-copy b{font-size:12.5px!important;line-height:1.25!important}
  .elm-chat-pin-strip-main em{font-size:8px!important}
  .elm-chat-pin-strip-close{width:32px!important}

  /* Textarea grows naturally through five lines; controls stay aligned to the bottom. */
  .elm-chat-composer{align-items:end!important}
  .elm-chat-input-shell{height:auto!important;min-height:40px!important;align-items:end!important}
  .elm-chat-room .elm-chat-input-shell .elm-chat-composer-emoji{align-self:end!important;height:40px!important}
  .elm-chat-room .elm-chat-input-shell textarea{
    /* sizeComposer sets the inline height through five wrapped lines. */
    height:auto;min-height:40px!important;max-height:130px!important;padding:8px 8px!important;resize:none!important;overflow-y:hidden;
  }
  .elm-chat-room .elm-chat-photo-btn,.elm-chat-room .elm-chat-send{align-self:end!important;height:40px!important}
}
@media(max-width:360px){
  .elm-chat-room .elm-chat-input-shell textarea{min-height:38px!important;max-height:128px!important}
  .elm-chat-room .elm-chat-input-shell .elm-chat-composer-emoji,.elm-chat-room .elm-chat-photo-btn,.elm-chat-room .elm-chat-send{height:38px!important}
}


/* v77.6 — WALLET/PASSPORT TITLE-SEAL PARITY.
   Player Passport now uses the exact Wallet seal pigment model: crisp vector
   rings, the same fixed royal-gold star/facets, and only a 2px controlled glow.
   No cloudy background disc or broad bloom. */
.elm-chat-passport{
  --passport-seal-ring:#756B5E;
  --passport-seal-inner:#8B6A35;
  --passport-seal-glow:rgba(151,132,101,.18);
  --passport-seal-opacity:.42;
}
.elm-chat-passport[data-family="origin"]{--passport-seal-ring:#72AEE0;--passport-seal-inner:#8B6A35;--passport-seal-glow:rgba(103,175,235,.23);--passport-seal-opacity:.92}
.elm-chat-passport[data-family="night"]{--passport-seal-ring:#BD263E;--passport-seal-inner:#8B6A35;--passport-seal-glow:rgba(190,32,61,.24);--passport-seal-opacity:.92}
.elm-chat-passport[data-family="rise"]{--passport-seal-ring:#5EB778;--passport-seal-inner:#8B6A35;--passport-seal-glow:rgba(82,187,116,.21);--passport-seal-opacity:.92}
.elm-chat-passport[data-family="dominion"]{--passport-seal-ring:#B66535;--passport-seal-inner:#8B6A35;--passport-seal-glow:rgba(188,98,49,.22);--passport-seal-opacity:.92}
.elm-chat-passport[data-family="lost"]{--passport-seal-ring:#43AAA2;--passport-seal-inner:#8B6A35;--passport-seal-glow:rgba(67,170,162,.21);--passport-seal-opacity:.92}
.elm-chat-passport[data-family="final"]{--passport-seal-ring:#A9BFD1;--passport-seal-inner:#8B6A35;--passport-seal-glow:rgba(173,205,230,.21);--passport-seal-opacity:.92}
.elm-chat-passport[data-family="legend"]{--passport-seal-ring:#A755AE;--passport-seal-inner:#E5BD62;--passport-seal-glow:rgba(188,104,190,.24);--passport-seal-opacity:.96}
.elm-chat-passport[data-family="ero-dev"]{--passport-seal-ring:#59616B;--passport-seal-inner:#B49A70;--passport-seal-glow:rgba(201,173,120,.12);--passport-seal-opacity:.96}
.elm-chat-passport-seal{
  background:none!important;
  box-shadow:none!important;
  opacity:var(--passport-seal-opacity,.42)!important;
  filter:drop-shadow(0 0 2px var(--passport-seal-glow,rgba(151,132,101,.18)))!important;
}
.elm-chat-passport-seal svg{shape-rendering:geometricPrecision!important;overflow:visible!important}
.elm-chat-passport-seal .aka-wallet-seal-ring{fill:none!important;stroke:var(--passport-seal-ring,#756B5E)!important;stroke-width:1.05!important;opacity:.84!important}
.elm-chat-passport-seal .aka-wallet-seal-ring.is-inner{stroke:var(--passport-seal-inner,#8B6A35)!important;stroke-width:.72!important;opacity:.52!important}
.elm-chat-passport-seal .aka-wallet-seal-rose{fill:#E1AE4B!important;stroke:#F1CF82!important;stroke-width:.62!important;stroke-linejoin:miter!important}
.elm-chat-passport-seal .aka-wallet-seal-facets{fill:#754323!important;stroke:#A86D31!important;stroke-width:.38!important;stroke-linejoin:miter!important}
.elm-chat-passport-seal .aka-wallet-seal-ticks{fill:none!important;stroke:#D4A843!important;stroke-width:.74!important;stroke-linecap:square!important;opacity:.70!important}
.elm-chat-passport-seal .aka-wallet-seal-center{fill:#F3D995!important;stroke:#24140D!important;stroke-width:.46!important}

/* v77.7 — public RANK uses one platinum/smoked-ivory language everywhere.
   POWER stays electric blue; crown/regalia metal stays its original gold. */
.elm-chat-rank{
  color:#d2cec4!important;
  text-shadow:0 1px 0 rgba(0,0,0,.72),0 0 4px rgba(218,211,197,.07)!important;
}
.elm-chat-passport-stats>div:first-child dd{
  color:#d2cec4!important;
  -webkit-text-fill-color:currentColor!important;
  background:none!important;
  text-shadow:0 1px 0 rgba(0,0,0,.68),0 0 4px rgba(218,211,197,.07)!important;
}
.elm-chat-passport-stats>div:first-child dt svg{
  color:#b8b3a8!important;
  stroke:#b8b3a8!important;
  filter:drop-shadow(0 0 2px rgba(218,211,197,.08))!important;
}
/* POWER value remains in the POWER family; its crown/icon remains original gold. */
.elm-chat-passport-stats>div:nth-child(2) dd{
  color:#70c9ee!important;
  text-shadow:0 0 4px rgba(45,156,255,.13)!important;
}
.elm-chat-passport-stats>div:nth-child(2) dt svg,
.elm-chat-passport[data-family="ero-dev"] .elm-chat-passport-stats div:nth-child(2) dt svg{
  color:#a48856!important;
  stroke:#a48856!important;
  filter:drop-shadow(0 0 2px rgba(212,168,67,.10))!important;
}


/* v77.8 — WALLET-SHARP TITLE PARITY.
   Public CHAT / MEMBERS / PLAYER PASSPORT titles keep their own family colors,
   but use the wallet's crisp contour language: no cloudy bloom, no broad blur. */
.elm-chat-title-text{
  -webkit-text-stroke:.34px rgba(14,8,10,.96)!important;
  paint-order:stroke fill!important;
  text-rendering:geometricPrecision!important;
  text-shadow:
    -.52px 0 var(--elm-title-contour),
    .52px 0 var(--elm-title-contour),
    0 -.52px var(--elm-title-contour),
    0 .52px var(--elm-title-contour),
    -.38px -.38px var(--elm-title-contour),
    .38px -.38px var(--elm-title-contour),
    -.38px .38px var(--elm-title-contour),
    .38px .38px var(--elm-title-contour),
    0 1px 0 rgba(0,0,0,.96)!important;
  filter:drop-shadow(0 1px 0 rgba(0,0,0,.88))!important;
}
.elm-chat-title-text::before{content:none!important}
.elm-chat-person-title{
  -webkit-text-stroke:.22px rgba(12,8,9,.94)!important;
  paint-order:stroke fill!important;
  text-rendering:geometricPrecision!important;
  text-shadow:
    -.40px 0 var(--elm-title-contour,rgba(176,178,174,.40)),
    .40px 0 var(--elm-title-contour,rgba(176,178,174,.40)),
    0 -.40px var(--elm-title-contour,rgba(176,178,174,.40)),
    0 .40px var(--elm-title-contour,rgba(176,178,174,.40)),
    0 1px 0 rgba(0,0,0,.90)!important;
  filter:none!important;
}
.elm-chat-passport-title-text{
  -webkit-text-stroke:.42px var(--passport-shadow)!important;
  paint-order:stroke fill!important;
  text-rendering:geometricPrecision!important;
  text-shadow:
    -.72px 0 var(--passport-contour),
    .72px 0 var(--passport-contour),
    0 -.72px var(--passport-contour),
    0 .72px var(--passport-contour),
    -.52px -.52px var(--passport-contour),
    .52px -.52px var(--passport-contour),
    -.52px .52px var(--passport-contour),
    .52px .52px var(--passport-contour),
    0 1.25px 0 rgba(10,4,8,.98)!important;
  filter:drop-shadow(0 1px 0 rgba(0,0,0,.94))!important;
}
.elm-chat-passport-title-text::before{content:none!important}
/* ERO DEV uses the same sharp recipe; Royal Onyx stays in its pigment variables, not in blur. */
.elm-chat-title.is-ero-dev .elm-chat-title-text,
.elm-chat-passport[data-family="ero-dev"] .elm-chat-passport-title-text{
  text-shadow:
    -.72px 0 var(--passport-contour,#d6bb84),
    .72px 0 var(--passport-contour,#d6bb84),
    0 -.72px var(--passport-contour,#d6bb84),
    0 .72px var(--passport-contour,#d6bb84),
    0 1.2px 0 rgba(0,0,0,.98)!important;
  filter:drop-shadow(0 1px 0 rgba(0,0,0,.94))!important;
}


/* v77.9 — TRUE WALLET-SHARP TITLE PARITY.
   Small CHAT titles must not fake a contour with multiple fractional shadows.
   Use the same construction as the wallet: crisp dark inset + one colored contour layer. */
.elm-chat-title-text{
  position:relative!important;
  isolation:isolate!important;
  color:var(--elm-title-face)!important;
  -webkit-text-fill-color:var(--elm-title-face)!important;
  -webkit-text-stroke:.24px rgba(29,13,17,.98)!important;
  paint-order:stroke fill!important;
  text-rendering:geometricPrecision!important;
  text-shadow:0 1px 0 rgba(0,0,0,.98)!important;
  filter:none!important;
}
.elm-chat-title-text::before{
  content:attr(data-title)!important;
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:-1!important;
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
  -webkit-text-stroke:.62px var(--elm-title-contour)!important;
  font:inherit!important;
  letter-spacing:inherit!important;
  line-height:inherit!important;
  opacity:1!important;
  text-shadow:none!important;
  filter:none!important;
  pointer-events:none!important;
  white-space:nowrap!important;
}
.elm-chat-person-title{
  position:relative!important;
  isolation:isolate!important;
  display:inline-block!important;
  color:var(--elm-title-face,#b0b2ae)!important;
  -webkit-text-fill-color:var(--elm-title-face,#b0b2ae)!important;
  -webkit-text-stroke:.18px rgba(26,12,15,.98)!important;
  paint-order:stroke fill!important;
  text-rendering:geometricPrecision!important;
  text-shadow:0 1px 0 rgba(0,0,0,.96)!important;
  filter:none!important;
}
.elm-chat-person-title::before{
  content:attr(data-title)!important;
  position:absolute!important;
  inset:0!important;
  z-index:-1!important;
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
  -webkit-text-stroke:.48px var(--elm-title-contour,rgba(176,178,174,.48))!important;
  font:inherit!important;
  letter-spacing:inherit!important;
  line-height:inherit!important;
  opacity:1!important;
  text-shadow:none!important;
  filter:none!important;
  pointer-events:none!important;
  white-space:nowrap!important;
}
.elm-chat-passport-title-text{
  position:relative!important;
  isolation:isolate!important;
  color:var(--passport-face)!important;
  -webkit-text-fill-color:var(--passport-face)!important;
  -webkit-text-stroke:.50px var(--passport-shadow)!important;
  paint-order:stroke fill!important;
  text-rendering:geometricPrecision!important;
  text-shadow:0 1px 0 rgba(4,2,3,.98)!important;
  filter:none!important;
}
.elm-chat-passport-title-text::before{
  content:attr(data-title)!important;
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:-1!important;
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
  -webkit-text-stroke:1px var(--passport-contour)!important;
  font:inherit!important;
  letter-spacing:inherit!important;
  line-height:inherit!important;
  opacity:.82!important;
  text-shadow:none!important;
  filter:none!important;
  pointer-events:none!important;
}
/* No title family is allowed to re-introduce a bloom after the parity rules. */
.elm-chat-title.is-ero-dev .elm-chat-title-text,
.elm-chat-person-title.is-ero-dev,
.elm-chat-passport[data-family="ero-dev"] .elm-chat-passport-title-text{
  text-shadow:0 1px 0 rgba(0,0,0,.98)!important;
  filter:none!important;
}

/* v77.12 — room pins, personal saves, and readable moderation controls. */
.elm-chat-pin-step{flex:none;display:grid;place-items:center;width:28px;min-height:44px;border:0;border-left:1px solid rgba(155,118,70,.20);background:#151413;color:#d9b783;font:400 25px/1 Georgia,serif}
.elm-chat-pin-step[hidden]{display:none!important}
.elm-chat-pin-step:hover,.elm-chat-pin-step:focus-visible{background:#302318;color:#ffdda2}
.elm-chat-pin-strip-copy small{font-size:10px!important;letter-spacing:.09em!important}
.elm-chat-pin-strip-copy b{font-size:13px!important;line-height:1.3!important}
.elm-chat-pin-strip-main em{font-size:11px!important;color:#cab699!important}
.elm-chat-pin-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.elm-chat-pin-tabs button{min-height:38px;border:1px solid #806443;border-radius:6px;background:#111314;color:#b9aa93;font:400 13px/1 "Bebas Neue",sans-serif;letter-spacing:.055em}
.elm-chat-pin-tabs button[aria-pressed="true"]{background:linear-gradient(135deg,#342414,#151515);border-color:#c49b60;color:#f5d8aa}
.elm-chat-pin-list{display:grid;gap:7px}.elm-chat-pin-list-row{display:flex;min-width:0;border:1px solid #6e573b;border-radius:7px;background:#121414;overflow:hidden}
.elm-chat-pin-list-row>button:first-child{min-width:0;flex:1;display:grid;gap:5px;padding:10px;border:0;background:transparent;text-align:left;color:#ece0ce}
.elm-chat-pin-list-row small{font:400 11px/1.2 "Bebas Neue",sans-serif;color:#c9a471;letter-spacing:.07em}
.elm-chat-pin-list-row span{font:400 12px/1.4 "Space Grotesk",sans-serif;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.elm-chat-pin-list-row>button:last-child:not(:first-child){flex:none;width:40px;border:0;border-left:1px solid #6e573b;background:#20181a;color:#cfa9a3}.elm-chat-pin-list-row>button:last-child svg{width:15px;height:15px}
.elm-chat-pin-list-row button:hover{background:#292119}.elm-chat-pin-empty{font-size:12px;color:#beb2a0;line-height:1.45}
.elm-chat-mod-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:10px 0}
.elm-chat-mod-choices button{display:grid;align-content:center;gap:4px;min-height:62px;padding:9px;border:1px solid #765d3e;border-radius:7px;background:linear-gradient(135deg,#1b1814,#111314);text-align:left;color:#d8cbb7}
.elm-chat-mod-choices button[aria-pressed="true"]{border-color:#c19a63;background:linear-gradient(135deg,#382818,#191713);box-shadow:inset 0 1px 0 #f0cb8925}
.elm-chat-mod-choices b{font:400 15px/1 "Bebas Neue",sans-serif;letter-spacing:.07em;color:#ebd1a6}
.elm-chat-mod-choices small{font:400 10px/1.3 "Space Grotesk",sans-serif;color:#b5a999}
.elm-chat-mod-durations:not([hidden]){display:flex;gap:5px;flex-wrap:wrap;margin:10px 0}
.elm-chat-mod-durations button{min-height:36px;padding:7px 9px;border:1px solid #705939;border-radius:6px;background:#101213;color:#c4b49c;font-size:11px}
.elm-chat-mod-durations button[aria-pressed="true"]{border-color:#c3985e;color:#ffddb2;background:#342418}
.elm-chat-popover[data-kind="moderation"] .elm-chat-soft-btn.is-primary{width:100%;min-height:40px;justify-content:center;font-size:12px}
.elm-chat-popover[data-kind="moderation"] .elm-chat-soft-btn:disabled{opacity:.48;cursor:not-allowed}
.elm-chat-mod-review{display:grid;gap:9px;padding:10px;border:1px solid #775f40;border-radius:7px;background:#151412;margin-bottom:12px}
.elm-chat-mod-review b{font:400 17px/1.2 "Bebas Neue",sans-serif;color:#f3d7aa}.elm-chat-mod-review p{margin:0;color:#d7c9b9;font-size:12px;overflow-wrap:anywhere}.elm-chat-mod-review small{font-size:11px;line-height:1.4;color:#ab9a83}
.elm-chat-options.is-message-menu button small{font-size:10px!important;line-height:1.35!important;color:#b6aa98!important}
@media(max-width:390px){.elm-chat-pin-step{width:24px;min-height:42px;font-size:21px}.elm-chat-pin-strip-copy small{font-size:9px!important}.elm-chat-pin-strip-copy b{font-size:12px!important}.elm-chat-pin-strip-main em{font-size:10px!important}.elm-chat-pin-strip-close{width:29px!important}.elm-chat-mod-choices small{font-size:10px}}

/* v77.14: pinned messages expand inside the room, directly below its header. */
.elm-chat-pin-panel{flex:0 1 auto;min-height:0;max-height:min(252px,34vh);margin:0 20px 7px;border:1px solid #8e7047;border-radius:0 0 9px 9px;background:linear-gradient(130deg,#241d17,#111314 74%);box-shadow:0 10px 26px #0008,inset 0 1px 0 #f4d5a31b;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#876849 #161515}
.elm-chat-pin-panel[hidden]{display:none!important}
.elm-chat-pin-panel>header{display:flex;align-items:center;justify-content:space-between;gap:10px;position:sticky;top:0;z-index:1;padding:8px 12px;border-bottom:1px solid #a37b4344;background:#1d1916}
.elm-chat-pin-panel>header strong{font:400 16px/1.2 "Bebas Neue",sans-serif;letter-spacing:.09em;color:#ead1a5}
.elm-chat-pin-panel>header button{display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:6px;background:transparent;color:#cbb18a}.elm-chat-pin-panel>header svg{width:15px;height:15px}
.elm-chat-pin-panel-body{padding:10px 12px 12px}.elm-chat-pin-panel .elm-chat-option-note{font-size:11px;line-height:1.4;margin:8px 0;color:#bfb09c}.elm-chat-pin-panel .elm-chat-pin-empty{margin:8px 0 0}
.elm-chat-pin-panel .elm-chat-pin-list{max-height:135px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}
@media(max-width:768px){.elm-chat-pin-panel{margin:0 8px 5px;max-height:min(205px,32vh)}.elm-chat-pin-panel-body{padding:8px}.elm-chat-pin-panel>header{padding:6px 9px}.elm-chat-pin-tabs button{font-size:12px;min-height:35px}}

/* v77.15: anchored room dropdown; the conversation never shifts when it opens. */
.elm-chat-pin-panel{position:absolute;z-index:4;right:12px;left:auto;width:min(360px,calc(100% - 24px));max-height:min(280px,calc(100% - 90px));margin:0;border-radius:0 0 9px 9px;background:linear-gradient(155deg,#211a14,#101213 78%);box-shadow:0 18px 42px #000d,inset 0 1px 0 #e6c58b18}
.elm-chat-pin-panel>header{padding:7px 10px}.elm-chat-pin-panel>header strong{font-size:14px}.elm-chat-pin-panel>header button{width:26px;height:26px}
.elm-chat-pin-panel-body{padding:9px 10px 10px}
.elm-chat-pin-panel .elm-chat-pin-tabs{gap:5px;margin-bottom:8px}.elm-chat-pin-panel .elm-chat-pin-tabs button{min-height:32px;font-size:12px;background:#141414}.elm-chat-pin-panel .elm-chat-pin-tabs button[aria-pressed="true"]{background:#302318}
.elm-chat-pin-panel .elm-chat-pin-list{max-height:160px}.elm-chat-pin-panel .elm-chat-pin-list-row>button:first-child{padding:8px 9px}
.elm-chat-pin-panel .elm-chat-pin-empty{margin:4px 0;color:#c9bcaa;font-size:12px;line-height:1.4}
@media(max-width:768px){.elm-chat-pin-panel{right:8px;width:min(340px,calc(100% - 16px));max-height:min(215px,calc(100% - 75px));margin:0}.elm-chat-pin-panel-body{padding:8px}.elm-chat-pin-panel .elm-chat-pin-tabs button{font-size:11px;min-height:31px}}

/* v77.16: one pin dock in the message column; the header pin toggles its list. */
.elm-chat-pin-dock{position:relative;z-index:5;flex:none;min-width:0;margin:0 16px;border:1px solid rgba(153,115,65,.56);border-top-color:rgba(201,158,90,.67);border-radius:0 0 8px 8px;background:linear-gradient(105deg,#251d16,#141515 70%);box-shadow:0 8px 20px #0005,inset 0 1px 0 #e7bd7722}
.elm-chat-pin-dock[hidden]{display:none!important}
.elm-chat-pin-strip{margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:visible}
.elm-chat-pin-strip-main{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:11px!important;width:100%;min-height:46px!important;padding:8px 12px!important}
.elm-chat-pin-strip-main:hover,.elm-chat-pin-strip-main:focus-visible{background:rgba(173,127,70,.09)}
.elm-chat-pin-strip-copy{gap:2px!important}
.elm-chat-pin-strip-copy small{font-size:10px!important;letter-spacing:.09em!important;color:#c8a571!important}
.elm-chat-pin-strip-copy b{font-size:13px!important;line-height:1.28!important;color:#e9dfd0!important}
.elm-chat-pin-strip-main em{white-space:nowrap;font-size:10px!important;color:#cbb99f!important}
.elm-chat-pin-panel{position:absolute!important;top:100%!important;left:-1px!important;right:-1px!important;z-index:5;width:auto!important;max-height:min(226px,34vh)!important;margin:0!important;padding:7px 9px 9px;border:1px solid #8e7047;border-top-color:#8e704766;border-radius:0 0 8px 8px;background:linear-gradient(150deg,#211b16,#111414 76%);box-shadow:0 17px 32px #000c;overflow:auto;overscroll-behavior:contain}
.elm-chat-pin-panel .elm-chat-pin-list{max-height:none;overflow:visible;gap:5px}
.elm-chat-pin-panel .elm-chat-pin-list-row{border-color:#695238;background:#171716}
.elm-chat-pin-panel .elm-chat-pin-list-row>button:first-child{padding:8px 10px}
.elm-chat-pin-panel .elm-chat-pin-list-row small{font-size:11px;line-height:1.3}
.elm-chat-pin-panel .elm-chat-pin-list-row span{font-size:12px;line-height:1.35;-webkit-line-clamp:2}
.elm-chat-pin-panel .elm-chat-pin-empty{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 9px;margin:0;font:400 13px/1.35 "Bebas Neue",sans-serif;color:#e0c396}
.elm-chat-pin-panel .elm-chat-pin-empty small{font:400 11px/1.4 "Space Grotesk",sans-serif;color:#bcb09e}
.elm-chat-pin-dock:not(.has-pin) .elm-chat-pin-panel{position:relative!important;top:auto!important;left:auto!important;right:auto!important;border:0;box-shadow:none;background:transparent}
@media(max-width:768px){
  .elm-chat-pin-dock{margin:0 8px}
  .elm-chat-pin-strip-main{min-height:44px!important;padding:7px 9px!important}
  .elm-chat-pin-panel{max-height:min(192px,32vh)!important;padding:6px}
}
@media(max-width:390px){
  .elm-chat-pin-strip-copy small{font-size:9px!important}
  .elm-chat-pin-strip-copy b{font-size:12px!important}
  .elm-chat-pin-strip-main em{font-size:10px!important}
}

/* The same close control belongs to the one expanded PIN list. */
.elm-chat-pin-list-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 6px;padding:0 1px 5px;border-bottom:1px solid #9d744033}
.elm-chat-pin-list-head strong{font:400 14px/1.2 "Bebas Neue",sans-serif;letter-spacing:.09em;color:#e4c69b}
.elm-chat-pin-list-head strong small{margin-left:4px;font-size:11px;color:#b4a188}
.elm-chat-pin-list-head button{flex:none;display:grid;place-items:center;width:30px;height:30px;border:1px solid transparent;border-radius:5px;background:transparent;color:#cdb590}
.elm-chat-pin-list-head button:hover,.elm-chat-pin-list-head button:focus-visible{border-color:#8e7047;background:#3b2a1b;color:#ffe0af}
.elm-chat-pin-list-head button svg{width:15px;height:15px}

/* v77.21: one message at a time, full message-column width, ending at ONLINE. */
.elm-chat-pin-dock{position:relative!important;top:auto!important;left:auto!important;right:auto!important;z-index:8;width:100%!important;max-width:none!important;margin:0!important;border-left:0;border-right:0;border-radius:0}
.elm-chat-pin-strip-main{display:flex!important;align-items:center!important;flex:1;min-width:0;min-height:46px!important;padding:8px 16px!important}
.elm-chat-pin-strip-copy{min-width:0;width:100%}
.elm-chat-pin-strip-copy small{display:block;overflow:hidden;text-overflow:ellipsis}
.elm-chat-pin-controls{display:flex;align-items:center;flex:none;min-height:46px}
.elm-chat-pin-controls em{min-width:44px;padding:0 7px;color:#cbb99f;font:500 11px/1.2 "Space Grotesk",sans-serif;font-style:normal;text-align:center;white-space:nowrap}
.elm-chat-pin-controls button{display:grid;place-items:center;flex:none;width:38px;height:46px;border:0;border-left:1px solid #9b764133;background:transparent;color:#c8ac7c;cursor:pointer}
.elm-chat-pin-controls button:last-child{width:34px}
.elm-chat-pin-controls button:hover,.elm-chat-pin-controls button:focus-visible{background:#36291c;color:#ffe0ae}
.elm-chat-pin-controls svg{width:15px;height:15px}
.elm-chat-pin-controls button[hidden],.elm-chat-pin-controls em[hidden]{display:none!important}
.elm-chat-pin-panel{left:0!important;right:0!important;max-height:min(226px,34vh)!important;border-radius:0 0 8px 8px}
@media(max-width:768px){
  .elm-chat-pin-strip-main{padding:7px 9px!important}
  .elm-chat-pin-controls button{width:34px;height:44px}
  .elm-chat-pin-controls button:last-child{width:32px}
  .elm-chat-pin-controls em{min-width:38px;padding:0 4px;font-size:10px}
  .elm-chat-pin-panel{max-height:min(192px,32vh)!important}
}

/* v77.22: quiet empty feedback, legible one-row carousel, no sidebar shift. */
.elm-chat-room-nav{position:relative;z-index:12}
.elm-chat-pin-hint{position:absolute;z-index:13;top:calc(100% + 5px);right:234px;display:flex;flex-direction:column;gap:3px;width:min(245px,calc(100vw - 22px));box-sizing:border-box;padding:10px 13px;border:1px solid rgba(184,140,80,.62);border-radius:7px;background:linear-gradient(125deg,#2b2118,#151717 83%);box-shadow:0 13px 30px #000a;color:#e9d4b2;pointer-events:none}
.elm-chat-pin-hint[hidden]{display:none!important}
.elm-chat-pin-hint strong{display:block;position:static;width:auto;height:auto;padding:0;border:0;border-radius:0;background:none;box-shadow:none;color:#e9d4b2;font:400 14px/1.15 "Bebas Neue",sans-serif;letter-spacing:.08em}
.elm-chat-pin-hint small{font:400 12px/1.35 "Space Grotesk",sans-serif;color:#d2c4ae}
.elm-chat-pin-strip-main{overflow:hidden}
.elm-chat-pin-strip-copy{overflow:hidden}
.elm-chat-pin-strip-copy small{white-space:nowrap;font-size:10px!important;line-height:1.25;color:#d1ad7b!important}
.elm-chat-pin-strip-copy b{display:block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13.5px!important;line-height:1.3!important;color:#f0e7d9!important}
.elm-chat-pin-controls em{font-size:11px;color:#decbb0}
@media(max-width:390px){
  .elm-chat-pin-strip-copy small{font-size:9px!important}
  .elm-chat-pin-strip-copy b{font-size:12.5px!important}
  .elm-chat-pin-controls button{min-width:32px}
}

/* v77.23: contain the carousel inside the actual mobile message column. */
.elm-chat-header{position:relative;z-index:10}
@media(min-width:769px) and (max-width:900px){.elm-chat-pin-hint{right:206px}}
@media(max-width:768px){
  .elm-chat-pin-hint{right:8px;max-width:calc(100% - 16px)}
  .elm-chat-layout{width:100%;min-width:0}
  .elm-chat-main-column{width:0!important;flex:1 1 0!important;min-width:0!important}
  .elm-chat-pin-dock{box-sizing:border-box;width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden}
  .elm-chat-pin-strip{box-sizing:border-box;width:100%;max-width:100%;min-width:0;overflow:hidden!important}
  .elm-chat-pin-strip-main{box-sizing:border-box;width:0!important;max-width:100%;min-width:0!important;flex:1 1 0!important}
  .elm-chat-pin-controls{flex:0 0 auto;min-width:0;max-width:104px}
}

/* v77.24–25: mobile conversation focus, with one scroll region and the same room controls. */
.elm-chat-room-nav [data-chat-action="focus"]{display:none}
.elm-chat-focus-placeholder{display:block;width:100%;flex:none;visibility:hidden;pointer-events:none;overflow-anchor:none}
html.elm-chat-focus-active{overflow:hidden!important;overscroll-behavior:none!important;scroll-behavior:auto!important;overflow-anchor:none!important}
@media(max-width:768px){
  .elm-chat-room-nav [data-chat-action="focus"]{display:grid}
  /* v77.29: Focus keeps Wallet and Language; site navigation returns on exit. */
  body.elm-chat-focus-mobile #mobileMenu a[data-i18n="navStory"],
  body.elm-chat-focus-mobile #mobileMenu a[data-i18n="navPosters"],
  body.elm-chat-focus-mobile #mobileMenu a[data-i18n="navCoin"],
  body.elm-chat-focus-mobile #mobileMenu a[data-i18n="navRoadmap"],
  body.elm-chat-focus-mobile #mobileMenu a[data-i18n="navFanClub"]{display:none!important}
  body.elm-chat-focus-mobile #navbar{top:var(--elm-chat-focus-offset,0px)!important;z-index:1002!important;background:#0b0c0d!important;background-image:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:0 1px 0 rgba(173,133,73,.40)!important}
  body.elm-chat-focus-mobile #navbar>div>div{justify-content:flex-end!important;gap:3px!important}
  body.elm-chat-focus-mobile #navbar .aka-brand-zone{flex:0 0 auto;margin-right:auto!important}
  .elm-chat-focus-quicknav{display:flex;align-items:center;justify-content:center;gap:3px;flex:0 0 auto;min-width:0;position:relative;z-index:2}
  .elm-chat-focus-quicknav>button{position:relative;display:grid;place-items:center;flex:none;width:32px;height:38px;padding:0;border:1px solid rgba(153,122,77,.45);border-radius:7px;background:linear-gradient(145deg,#211c16,#0e1112);color:#d3b789;touch-action:manipulation}
  .elm-chat-focus-quicknav>button[aria-expanded="true"],.elm-chat-focus-quicknav>button[aria-pressed="true"]{border-color:rgba(208,164,96,.65);background:#352717;color:#f1d8ac}
  .elm-chat-focus-quicknav>button:focus-visible{outline:2px solid #e0bb80;outline-offset:2px}
  .elm-chat-focus-quicknav svg{width:17px;height:17px;stroke-width:1.7}
  .elm-chat-focus-quicknav b{position:absolute;right:-3px;top:-5px;display:grid;place-items:center;min-width:15px;height:15px;padding:0 3px;border:1px solid #706049;border-radius:10px;background:#101312;color:#b9d2ad;font:600 8px/1 "Space Grotesk",sans-serif}
  .elm-chat-focus-hint{position:absolute;top:calc(100% + 12px);left:0;display:grid;gap:3px;width:min(225px,calc(100vw - 20px));padding:9px 12px;border:1px solid #98764b;border-radius:7px;background:linear-gradient(125deg,#292017,#141615);box-shadow:0 14px 30px #000b;pointer-events:none;color:#f2ddba}
  .elm-chat-focus-hint[hidden]{display:none!important}
  .elm-chat-focus-hint strong{font:400 14px/1.1 "Bebas Neue",sans-serif;letter-spacing:.08em}
  .elm-chat-focus-hint small{font:400 11px/1.35 "Space Grotesk",sans-serif;color:#d2c4ae}
  body.elm-chat-focus-mobile .elm-chat-room.is-focus-mobile{position:fixed!important;top:var(--elm-chat-focus-top,64px)!important;left:0!important;right:0!important;width:100%!important;height:var(--elm-chat-focus-height,calc(100dvh - 64px))!important;max-height:var(--elm-chat-focus-height,calc(100dvh - 64px))!important;min-height:0!important;margin:0!important;border-radius:0!important;border-left:0;border-right:0;border-bottom:0;z-index:1001!important;overscroll-behavior:contain}
  .elm-chat-room.is-focus-mobile .elm-chat-header{display:none!important}
  .elm-chat-room.is-focus-mobile .elm-chat-shell,.elm-chat-room.is-focus-mobile .elm-chat-layout,.elm-chat-room.is-focus-mobile .elm-chat-main-column{min-height:0;height:100%;overflow:hidden}
  .elm-chat-room.is-focus-mobile .elm-chat-log{overscroll-behavior-y:contain}
  .elm-chat-room.is-focus-mobile .elm-chat-composer textarea{max-height:calc(6.75em + 16px)!important}
  .elm-chat-room.is-focus-mobile .elm-chat-composer-area{padding-bottom:max(8px,env(safe-area-inset-bottom))!important}
  .elm-chat-room.is-focus-mobile.is-keyboard-open{height:var(--elm-chat-focus-height)!important;max-height:var(--elm-chat-focus-height)!important;border-radius:0!important}
}
@media(max-width:355px){
  .elm-chat-focus-quicknav{gap:2px}
  .elm-chat-focus-quicknav>button{width:30px;height:36px}
  .elm-chat-focus-quicknav svg{width:16px;height:16px}
  body.elm-chat-focus-mobile #navbar>div{padding-inline:10px!important}
}

/* Passport heading stays put; only its details scroll inside the card. */
@media(max-width:768px){
  .elm-chat-popover[data-kind="passport"]{display:flex;flex-direction:column;overflow:hidden!important;overscroll-behavior:contain}
  .elm-chat-popover[data-kind="passport"]>header{position:relative;top:auto;z-index:5;flex:0 0 auto;min-height:42px;padding:10px 13px;background:#19140f!important}
  .elm-chat-popover[data-kind="passport"]>.elm-chat-popover-content{position:relative;z-index:1;flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
}

/* v77.31 — natural wallet height inside one fixed mobile viewport. */
.elm-mobile-utility-button[hidden],#mobileMenu .elm-mobile-utility-heading[hidden],#mobileMenu [data-mobile-utility-view][hidden],#elmMobileWalletDisconnect[hidden]{display:none!important}
@media(max-width:768px){
  html.elm-mobile-utility-open,html.elm-mobile-utility-open body{overflow:hidden!important;overscroll-behavior:none}
  #navbar .aka-mobile-nav-actions{display:flex!important;align-items:center;gap:6px;margin-left:auto}
  .elm-mobile-utility-button{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;padding:0;border:1px solid rgba(189,147,74,.28);border-radius:8px;background:linear-gradient(150deg,#211b13,#0d0d0c);color:#d2bd94;cursor:pointer}
  .elm-mobile-utility-button svg{width:19px;height:19px;flex:none}
  .elm-mobile-utility-button[aria-expanded="true"]{border-color:#9e7640;background:#302316;color:#f3d5a1}
  .elm-mobile-utility-button:focus-visible,#mobileMenuBtn.elm-mobile-wallet-trigger:focus-visible{outline:2px solid #d8b77d;outline-offset:3px}
  #elmMobileNavigationBtn{background:linear-gradient(145deg,#300b10,#15080b);border-color:rgba(167,44,63,.48)}
  #navbar #mobileMenuBtn.elm-mobile-wallet-trigger{display:grid!important;place-items:center;position:relative;width:44px!important;min-width:44px!important;max-width:44px!important;height:44px!important;min-height:44px!important;flex:0 0 44px;padding:0!important;margin:0!important;border:0!important;border-radius:50%!important;background:transparent!important;box-shadow:none!important;overflow:visible}
  #mobileMenuBtn.elm-mobile-wallet-trigger::before,#mobileMenuBtn.elm-mobile-wallet-trigger::after{display:none!important}
  #mobileMenuBtn.elm-mobile-wallet-trigger .aka-wallet-icon-wrap{position:relative;display:grid;place-items:center;width:32px!important;height:32px!important;min-width:32px!important;flex:none;border-radius:50%!important;border:1.5px solid #b52a39!important;background:radial-gradient(circle at 50% 38%,#700018,#2d000e 58%,#080004)!important;color:#ff7462!important;box-shadow:0 0 10px #78001448,inset 0 1px 0 #ffffff14!important;overflow:visible!important}
  #mobileMenuBtn.elm-mobile-wallet-trigger.is-connected .aka-wallet-icon-wrap{color:#4ade80!important;border-color:#4ade80db!important;background:radial-gradient(circle at 50% 38%,#16a34a,#07542d 58%,#03180e)!important;box-shadow:inset 0 1px 0 #ffffff1a,inset 0 -12px 22px #0008,0 0 10px #4ade806b,0 0 22px #22c55e38!important}
  #mobileMenuBtn.elm-mobile-wallet-trigger .aka-wallet-icon-wrap>svg,#mobileMenuBtn.elm-mobile-wallet-trigger .aka-wallet-icon-wrap>i{width:17px!important;height:17px!important;position:relative;z-index:4}
  #mobileMenuBtn.elm-mobile-wallet-trigger .aka-wallet-icon-wrap::before,#mobileMenuBtn.elm-mobile-wallet-trigger .aka-wallet-icon-wrap::after{display:none!important}
  #mobileMenu[data-utility-ready]{position:fixed!important;top:var(--elm-mobile-utility-top,64px)!important;left:0!important;right:0!important;bottom:auto!important;width:100%!important;height:var(--elm-mobile-utility-height,calc(100dvh - 64px))!important;max-height:var(--elm-mobile-utility-height,calc(100dvh - 64px))!important;margin:0!important;padding:12px 12px max(12px,env(safe-area-inset-bottom))!important;border:0!important;background:rgba(5,5,6,.94)!important;overflow-x:hidden!important;overflow-y:auto!important;z-index:1100;box-sizing:border-box;overscroll-behavior:contain;overflow-anchor:none;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;scroll-padding-block:12px}
  #mobileMenu[data-utility-ready]:not(.hidden){display:block!important}
  #mobileMenu[data-utility-ready]::-webkit-scrollbar{display:none;width:0;height:0}
  #mobileMenu[data-utility-ready]>.elm-mobile-utility-card{display:block;width:100%;max-width:380px;height:auto;max-height:none;min-height:0;margin:0 auto!important;padding:0!important;gap:0!important;border:1px solid rgba(212,168,67,.34);border-radius:10px;overflow:hidden;background:radial-gradient(circle at 100% 0%,#d4a84314,transparent 38%),linear-gradient(180deg,#100d0a,#060606);box-shadow:0 16px 40px #0009,inset 0 1px 0 #ffffff0d}
  .elm-mobile-utility-heading{display:flex;align-items:center;gap:8px;flex:none;min-height:54px;padding:6px 10px;border-bottom:1px solid #d4a84324;background:#15110d}
  .elm-mobile-utility-heading strong{flex:1;min-width:0;color:#d8c098;font:400 18px/1.2 "Bebas Neue",sans-serif;letter-spacing:.1em}
  .elm-mobile-utility-heading .elm-mobile-utility-button{width:38px;height:40px;flex-basis:38px;background:transparent;border-color:transparent}
  #mobileMenu [data-mobile-utility-view]{min-height:0;overflow:visible;overflow-anchor:none}
  #mobileMenu[data-utility-ready] .aka-mobile-identity-panel{position:relative;flex:1 1 auto;width:100%;margin:0!important;padding:16px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
  #mobileMenu[data-utility-ready] #mobileWalletConnectBtn{min-height:54px!important;padding:0 35px 12px 0!important;gap:10px;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
  #mobileMenu[data-utility-ready] #mobileWalletConnectBtn.is-connected>#mobileWalletIconWrap{display:none!important}
  #mobileMenu[data-utility-ready] #mobileWalletStatusTitle{font:500 11px/1.4 "Space Grotesk",sans-serif;letter-spacing:.14em;color:#bfa16b}
  #mobileMenu[data-utility-ready] #mobileWalletStatusText{font:400 13px/1.5 "Space Grotesk",sans-serif;color:#ded4bf}
  #mobileMenu[data-utility-ready] #mobileWalletConnectBtn .aka-wallet-authenticity-seal{position:absolute!important;right:0!important;top:0!important;width:28px!important;height:28px!important}
  #mobileMenu[data-utility-ready] .aka-mobile-wallet-title-section{margin:0 0 14px;padding:14px 0!important;border-top:1px solid #d4a84326;border-bottom:1px solid #d4a84326}
  #mobileMenu[data-utility-ready] .aka-mobile-wallet-title-label{font-size:10px;letter-spacing:.18em}
  #mobileMenu[data-utility-ready] .aka-mobile-wallet-title-value{font-size:24px!important;line-height:1.25!important}
  #mobileMenu[data-utility-ready] .aka-mobile-menu-metrics{margin-top:10px;gap:10px}
  #mobileMenu[data-utility-ready] .aka-mobile-wallet-signal-strip{margin-top:4px;padding-top:12px;padding-bottom:12px}
  #elmMobileWalletDisconnect{display:block;width:100%;min-height:44px;margin:14px 0 0;padding:10px 12px;border:1px solid #862a385e;border-radius:5px;background:#20050b;color:#d894a0;font:500 11px/1.3 "Space Grotesk",sans-serif;letter-spacing:.16em;cursor:pointer}
  #elmMobileWalletDisconnect:disabled{opacity:.5;cursor:wait}
  #mobileMenu[data-utility-view="navigation"]>.elm-mobile-utility-card{border-color:#832a3b88;background:linear-gradient(135deg,#29090e,#10090a)}
  #mobileMenu[data-utility-view="navigation"] .elm-mobile-utility-heading{background:#260a10;border-color:#832a3b55}
  #mobileMenu .elm-mobile-site-links{display:flex;flex-direction:column;padding:4px 14px 10px}
  #mobileMenu .elm-mobile-site-links>a{display:flex;align-items:center;min-height:48px;padding:12px 4px;border-bottom:1px solid #c2776130;font-size:14px;line-height:1.3;color:#e0c5a7}
  #mobileMenu .elm-mobile-site-links>a:last-child{border-bottom:0}
  #mobileMenu .elm-mobile-languages{padding:8px 14px 14px!important;border:0!important}
  #mobileMenu .elm-mobile-languages>div{display:flex;flex-direction:column;gap:4px}
  #mobileMenu .elm-mobile-languages [data-language-choice]{position:relative;text-align:start;padding:13px 14px;min-height:46px;border:1px solid transparent;border-radius:6px;font-size:13px;color:#d7c7ac;background:transparent}
  #mobileMenu .elm-mobile-languages [aria-current="true"]{border-color:#b58b465e;background:#b58b4617;color:#f3d9a6}
  #mobileMenu .elm-mobile-languages [aria-current="true"]::after{content:'✓';position:absolute;inset-inline-end:14px;color:#d5b178}
  body.elm-chat-focus-mobile #elmMobileNavigationBtn{display:none!important}
  body.elm-chat-focus-mobile #elmMobileLanguageBtn{width:32px;flex-basis:32px}
  body.elm-chat-focus-mobile #navbar .aka-mobile-nav-actions{gap:4px!important}
  body.elm-chat-focus-mobile #mobileMenuBtn.elm-mobile-wallet-trigger{width:40px!important;min-width:40px!important;max-width:40px!important;flex-basis:40px!important}
  body.elm-chat-focus-mobile .elm-chat-focus-quicknav{margin-right:3px}
}
@media(max-width:355px){
  #navbar .aka-mobile-nav-actions{gap:4px}
  .elm-mobile-utility-button{width:38px;flex-basis:38px}
  #mobileMenu[data-utility-ready] .aka-mobile-identity-panel{padding:13px!important}
}

/* Existing desktop orbit, scoped to the mobile wallet opener. */
@media (max-width:768px) {
  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit {
    --aka-power-orbit-progress:38;
    position:absolute;
    left:50%;
    top:50%;
    width:2.82rem;
    height:2.82rem;
    border-radius:50%;
    opacity:0;
    pointer-events:none;
    transform:translate(-50%,-50%) scale(.965);
    transform-origin:center;
    z-index:2;
    transition:opacity .34s ease,transform .52s cubic-bezier(.16,1,.3,1),filter .28s ease;
  }

  #navbar .aka-mobile-nav-actions .aka-wallet-control.is-connected .aka-wallet-power-orbit {
    opacity:.96;
    transform:translate(-50%,-50%) scale(1);
  }

  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit-svg {
    width:100%;
    height:100%;
    overflow:visible;
    display:block;
    transform:rotate(-90deg);
    filter:drop-shadow(0 0 2px rgba(45,156,255,.22));
  }

  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit-bed,
  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit-fill,
  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit-surge {
    fill:none;
    vector-effect:non-scaling-stroke;
  }

  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit-bed {
    stroke:rgba(69,124,177,.23);
    stroke-width:1.15;
    opacity:.88;
  }

  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit-fill {
    stroke:url(#akaWalletPowerOrbitGradient);
    stroke-width:2.05;
    stroke-linecap:round;
    opacity:.94;
    filter:drop-shadow(0 0 2.4px rgba(112,215,255,.62)) drop-shadow(0 0 5.8px rgba(45,156,255,.23));
    transition:stroke-dasharray .78s cubic-bezier(.16,1,.3,1),opacity .30s ease,filter .30s ease;
  }

  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit-surge {
    stroke:rgba(216,246,255,.94);
    stroke-width:1.35;
    stroke-linecap:round;
    opacity:0;
    filter:drop-shadow(0 0 3px rgba(112,215,255,.85)) drop-shadow(0 0 7px rgba(45,156,255,.38));
  }

  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit-marker {
    position:absolute;
    inset:0;
    border-radius:50%;
    transform:rotate(calc(var(--aka-power-orbit-progress) * 3.6deg));
    transition:transform .78s cubic-bezier(.16,1,.3,1),opacity .30s ease;
  }

  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit-marker > i {
    position:absolute;
    left:50%;
    top:0;
    width:.29rem;
    height:.29rem;
    border-radius:50%;
    background:radial-gradient(circle at 42% 38%,#f2fcff 0 20%,#7ddcff 43%,#2d9cff 72%,rgba(32,88,185,.18) 100%);
    border:1px solid rgba(216,246,255,.74);
    transform:translate(-50%,-50%);
    box-shadow:0 0 5px rgba(112,215,255,.68),0 0 11px rgba(45,156,255,.30);
    animation:akaWalletPowerOrbitMarkerBreath 2.65s ease-in-out infinite;
  }

  /* The old outer green ring becomes quiet. The wallet's actual 2px emerald rim remains connection. */
  #navbar .aka-mobile-nav-actions .aka-wallet-control.is-connected:not(.is-reward-pending) .aka-wallet-icon-wrap::after {
    opacity:0 !important;
    border-color:transparent !important;
    box-shadow:none !important;
    animation:none !important;
  }

  /* Reward-pending keeps the approved champagne recognition ring above the Power Orbit. */
  #navbar .aka-mobile-nav-actions .aka-wallet-control.is-connected.is-reward-pending .aka-wallet-power-orbit {
    opacity:.42;
    filter:saturate(.78) brightness(.88);
  }

  #navbar .aka-mobile-nav-actions .aka-wallet-control.is-connected.is-reward-pending .aka-wallet-power-orbit-marker {
    opacity:.30;
  }

  /* Until the backend has a verified rank/gap, show a living calibration trace rather than false progress. */
  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit.is-calibrating .aka-wallet-power-orbit-fill {
    stroke:rgba(86,184,255,.72);
    stroke-dasharray:14 86 !important;
    stroke-width:1.7;
    opacity:.70;
    animation:akaWalletPowerOrbitCalibrate 3.8s linear infinite;
  }

  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit.is-calibrating .aka-wallet-power-orbit-marker {
    opacity:0;
  }

  /* Rank #1 closes the ring. A single restrained travelling highlight says YOU ARE THE TARGET. */
  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit.is-dominant .aka-wallet-power-orbit-fill {
    stroke-dasharray:100 0 !important;
    stroke-width:2.15;
    opacity:1;
    filter:drop-shadow(0 0 3px rgba(216,246,255,.58)) drop-shadow(0 0 7px rgba(45,156,255,.32));
  }

  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit.is-dominant .aka-wallet-power-orbit-surge {
    opacity:.82;
    animation:akaWalletPowerOrbitDominance 4.8s linear infinite;
  }

  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit.is-dominant .aka-wallet-power-orbit-marker {
    opacity:0;
  }

  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit.is-power-receiving {
    animation:akaWalletPowerOrbitReceive .74s cubic-bezier(.16,1,.3,1) 1;
  }

  /* Preserve the wallet icon above both rings. */
  #navbar .aka-mobile-nav-actions .aka-wallet-icon-wrap > svg,
  #navbar .aka-mobile-nav-actions .aka-wallet-icon-wrap > i {
    position:relative;
    z-index:4;
  }
}

@media (prefers-reduced-motion:reduce) {
  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit-fill,
  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit-surge,
  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit-marker,
  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit-marker > i,
  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit {
    animation:none !important;
    transition:none !important;
  }
}

/* Existing Wallet rules intentionally target descendant SVGs because the original orb held only
   the Lucide glyph. The new Orbit is also an inline SVG, so explicitly isolate it from those
   inherited emerald/classified/reward glyph filters without changing any legacy selector. */
@media (max-width:768px) {
  #navbar .aka-mobile-nav-actions .aka-wallet-control .aka-wallet-icon-wrap .aka-wallet-power-orbit-svg,
  #navbar .aka-mobile-nav-actions .aka-wallet-control.is-connected .aka-wallet-icon-wrap .aka-wallet-power-orbit-svg,
  #navbar .aka-mobile-nav-actions .aka-wallet-control.is-connected.is-reward-pending .aka-wallet-icon-wrap .aka-wallet-power-orbit-svg,
  #navbar .aka-mobile-nav-actions .aka-wallet-control.is-connected.is-classified-active .aka-wallet-icon-wrap .aka-wallet-power-orbit-svg {
    position:static !important;
    z-index:auto !important;
    color:inherit !important;
    filter:drop-shadow(0 0 2px rgba(45,156,255,.22)) !important;
    animation:none !important;
  }
}


/* Source: css/v4290-wallet-power-orbit-centerfix.css — original cascade order preserved. */
/* GIZMO KAKA V0.42.90 — POWER ORBIT CENTER FIX
   The legacy Wallet glyph rule forces every descendant SVG to 1.04rem.
   Power Orbit is not a glyph: restore its SVG to the full concentric orbit box. */
@media (max-width:768px) {
  #navbar .aka-mobile-nav-actions .aka-wallet-control .aka-wallet-icon-wrap .aka-wallet-power-orbit-svg,
  #navbar .aka-mobile-nav-actions .aka-wallet-control.is-connected .aka-wallet-icon-wrap .aka-wallet-power-orbit-svg,
  #navbar .aka-mobile-nav-actions .aka-wallet-control.is-connected.is-reward-pending .aka-wallet-icon-wrap .aka-wallet-power-orbit-svg,
  #navbar .aka-mobile-nav-actions .aka-wallet-control.is-connected.is-classified-active .aka-wallet-icon-wrap .aka-wallet-power-orbit-svg {
    width:100% !important;
    height:100% !important;
    min-width:100% !important;
    min-height:100% !important;
    display:block !important;
  }
}



@media(max-width:768px){#navbar .aka-mobile-nav-actions .aka-wallet-power-orbit{width:42px;height:42px}}

@media(max-width:768px){
  #elmMobileWalletConnect{display:block;width:100%;min-height:44px;margin:14px 0 0;padding:10px 12px;border:1px solid #b5944e77;border-radius:5px;background:linear-gradient(145deg,#332615,#17120d);color:#ead3a5;font:400 17px/1.3 "Bebas Neue",sans-serif;letter-spacing:.08em;cursor:pointer}
  #elmMobileWalletConnect[hidden]{display:none!important}
}

/* Desktop: after activation the orbit is a quiet held arc. */
@media (max-width:768px) {
  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit.is-activated:not(.is-power-receiving):not(.is-dominant) .aka-wallet-power-orbit-fill {
    opacity:.69;
    filter:drop-shadow(0 0 1.8px rgba(112,215,255,.42)) drop-shadow(0 0 4.2px rgba(45,156,255,.14));
  }

  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit.is-activated:not(.is-power-receiving):not(.is-dominant) .aka-wallet-power-orbit-marker > i {
    animation:none !important;
    opacity:.78;
    transform:translate(-50%,-50%) scale(.91);
    box-shadow:0 0 4px rgba(112,215,255,.44),0 0 8px rgba(45,156,255,.15);
  }

  /* During the event JS drives both the travelling surge and the actual arc growth. */
  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit.is-power-receiving .aka-wallet-power-orbit-fill,
  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit.is-power-receiving .aka-wallet-power-orbit-marker {
    transition:none !important;
  }
  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit.is-power-receiving .aka-wallet-power-orbit-fill {
    opacity:1;
    filter:drop-shadow(0 0 3px rgba(216,246,255,.48)) drop-shadow(0 0 7px rgba(45,156,255,.30));
  }
  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit.is-power-receiving .aka-wallet-power-orbit-surge { opacity:.94; }
  #navbar .aka-mobile-nav-actions .aka-wallet-power-orbit.is-power-receiving .aka-wallet-power-orbit-marker > i {
    animation:none !important;
    opacity:1;
    transform:translate(-50%,-50%) scale(1.05);
    box-shadow:0 0 6px rgba(216,246,255,.80),0 0 13px rgba(45,156,255,.34);
  }
}


/* v77.32 — mobile Wallet: aligned compass, precise edges and crisp title.
   Keep all geometry/scroll ownership from v77.31; desktop remains authoritative. */
@media (max-width:768px) {
  #mobileMenu[data-utility-ready][data-utility-view="wallet"] > .elm-mobile-utility-card {
    border-radius:3px;
  }
  #mobileMenu[data-utility-ready] #mobileWalletConnectBtn > .aka-wallet-authenticity-seal {
    /* The inherited translateY(-50%) now centres the seal in the copy row.
       Subtract half the button's 12px bottom padding. */
    top:calc(50% - 6px)!important;
    width:28px!important;
    height:28px!important;
  }
  #mobileMenu[data-utility-ready] :is(#mobileWalletRank,#mobileTopbarHolders,#mobileTopbarAkaBalance,#elmMobileWalletConnect,#elmMobileWalletDisconnect) {
    border-radius:2px!important;
  }
  #mobileMenu[data-utility-ready] .aka-mobile-wallet-title-section #mobileWalletIdentityStatus {
    font-size:25px!important;
    line-height:28px!important;
    text-shadow:none!important;
    filter:none!important;
    transform:none!important;
  }
  #mobileMenu[data-utility-ready] #mobileWalletIdentityStatus > .aka-wallet-player-title-text {
    /* Preserve each title's face, inset and contour colours from the PC recipe.
       Remove the 5px bloom without thickening the glyph or changing its pigment. */
    text-shadow:0 1px 0 rgba(4,2,3,.98)!important;
    filter:none!important;
    transform:none!important;
    text-rendering:geometricPrecision;
    font-synthesis:none;
  }
  #mobileMenu[data-utility-ready] #mobileWalletIdentityStatus > .aka-wallet-player-title-text::before {
    text-shadow:none!important;
    filter:none!important;
  }
}

/* v77.34 — mobile archive row. Original poster-card effects live inside
   independent depth wrappers; no card cloning, lock changes or image swaps. */
.elm-archive-carousel-nav[hidden]{display:none!important}
@media(max-width:768px){
  #gallery .aka-archive-gallery-grid.elm-archive-carousel{
    --elm-archive-card-width:min(78vw,340px);
    position:relative;display:flex!important;align-items:flex-start;
    width:100vw;max-width:none;margin-inline:calc(50% - 50vw);
    box-sizing:border-box;gap:12px!important;
    padding:22px max(0px,calc((100vw - var(--elm-archive-card-width))/2)) 30px;
    overflow-x:auto;overflow-y:hidden;direction:ltr;
    scroll-snap-type:x mandatory;scroll-behavior:auto;
    overscroll-behavior-x:contain;overscroll-behavior-y:auto;
    touch-action:pan-x pan-y pinch-zoom;overflow-anchor:none;
    scrollbar-width:none;-webkit-overflow-scrolling:touch;
  }
  #gallery .elm-archive-carousel::-webkit-scrollbar{display:none;width:0;height:0}
  #gallery .elm-archive-carousel.is-dragging{scroll-snap-type:none;cursor:grabbing}
  #gallery .elm-archive-carousel>.elm-archive-slide{
    position:relative;flex:0 0 var(--elm-archive-card-width);
    width:var(--elm-archive-card-width);min-width:0;
    scroll-snap-align:center;scroll-snap-stop:always;
  }
  #gallery .elm-archive-slide-depth{width:100%;transform-origin:center;}
  #gallery .elm-archive-carousel .poster-card{
    width:100%;max-width:none;min-height:0!important;
    height:auto!important;block-size:auto!important;aspect-ratio:2 / 3!important;
  }
  #gallery .elm-archive-carousel .poster-card>picture{
    position:absolute;inset:0;display:block;width:100%;height:100%;
  }
  #gallery .elm-archive-carousel .poster-card>picture>img{
    width:100%;height:100%!important;object-fit:cover!important;object-position:center;
  }
  #gallery .elm-archive-carousel-nav{
    display:flex;align-items:center;justify-content:center;gap:2px;
    width:100%;max-width:340px;min-height:44px;margin:0 auto;
    padding:0;direction:ltr;
  }
  .elm-archive-carousel-nav button{
    appearance:none;display:grid;place-items:center;position:relative;
    min-width:0;height:44px;flex:1 1 0;padding:0;
    background:transparent;border:0;color:#947a52;
    font:400 12px/1 "Special Elite",serif;cursor:pointer;
    touch-action:manipulation;transition:color .2s ease;
  }
  .elm-archive-carousel-nav .elm-archive-carousel-arrow{flex:0 0 36px;color:#c5a66e}
  .elm-archive-carousel-arrow svg{width:18px;height:18px}
  .elm-archive-carousel-nav button:disabled{opacity:.24;cursor:default}
  .elm-archive-carousel-step::after{
    content:"";position:absolute;bottom:5px;left:25%;right:25%;height:1px;
    background:#d9b77a;opacity:0;transform:scaleX(.35);
    transition:opacity .2s ease,transform .25s ease;
  }
  .elm-archive-carousel-step[aria-current="true"]{color:#f0d9b2}
  .elm-archive-carousel-step[aria-current="true"]::after{opacity:1;transform:scaleX(1)}
  .elm-archive-carousel-nav button:focus-visible{outline:1px solid #d9b77a;outline-offset:-3px;border-radius:3px}
}
@media(max-width:768px) and (prefers-reduced-motion:reduce){
  #gallery .elm-archive-slide-depth{transform:none!important}
  .elm-archive-carousel-nav button,.elm-archive-carousel-step::after{transition:none}
}

/* v77.35 — mobile control feedback and chapter detailing.
   Expanded controls follow aria-expanded; the sound dot means audio enabled,
   not playback. Existing poster, wallet and audio effects remain untouched. */
@media(max-width:768px){
  #navbar :is(#elmMobileLanguageBtn,#elmMobileNavigationBtn,.aka-sound-toggle.is-mobile){
    position:relative;border-radius:4px;
    transition:color .18s ease,border-color .18s ease,background-color .18s ease,box-shadow .22s ease,transform .16s ease;
  }
  #navbar :is(#elmMobileLanguageBtn,#elmMobileNavigationBtn,.aka-sound-toggle.is-mobile):active{
    transform:translateY(1px) scale(.96);
  }
  #navbar #elmMobileNavigationBtn[aria-expanded="true"]{
    color:#ffe6bc;border-color:#c07469;
    background:linear-gradient(145deg,#601927,#2e0b13);
    box-shadow:inset 0 1px 0 #ffe7c329,0 0 12px #bd35432e;
  }
  #navbar .aka-sound-toggle.is-mobile[aria-expanded="true"]{
    color:#ffe6bc;border-color:#c29a5e;filter:none;
    background:linear-gradient(145deg,#49341c,#21180f);
    box-shadow:inset 0 1px 0 #ffe7c329,0 0 12px #c69b4f29;
  }
  #navbar .aka-sound-toggle.is-mobile:not(.is-muted):not(.is-wallet-locked)::after{
    content:"";position:absolute;right:5px;bottom:5px;width:3px;height:3px;
    border:0;border-radius:50%;background:#efd096;box-shadow:0 0 5px #e0b76566;
  }
  #navbar #elmMobileNavigationBtn::before,
  #navbar .aka-sound-toggle.is-mobile:not(.is-wallet-locked)::before{
    content:"";position:absolute;top:-1px;left:18%;right:18%;height:1px;
    border:0;background:linear-gradient(90deg,transparent,#ffe8be,transparent);
    opacity:0;pointer-events:none;transform:scaleX(.3);
  }
  #navbar #elmMobileNavigationBtn[aria-expanded="true"]::before,
  #navbar .aka-sound-toggle.is-mobile:not(.is-wallet-locked)[aria-expanded="true"]::before{
    animation:elm-mobile-control-glint .48s ease-out both;
  }
  #navbar #elmMobileNavigationBtn[aria-expanded="true"] svg,
  #navbar .aka-sound-toggle.is-mobile[aria-expanded="true"] svg{
    animation:elm-mobile-control-settle .24s ease-out both;
  }
  #mobileMenu[data-utility-ready]>.elm-mobile-utility-card,
  #elmSoundPanel.elm-sound-panel{border-radius:3px}
  #mobileMenu .elm-mobile-languages [data-language-choice],
  #elmSoundPanel :is(.elm-sound-prev,.elm-sound-next){border-radius:2px}
  #elmSoundPanel.elm-sound-panel{
    font-family:"Space Grotesk",Arial,sans-serif;
    background:radial-gradient(circle at 100% 0%,#d4a84314,transparent 38%),linear-gradient(180deg,#100d0a,#060606);
  }
  #elmSoundPanel .elm-sound-panel-head{
    box-sizing:border-box;min-height:54px;margin:-16px -16px 0;padding:6px 10px;
    background:#15110d;border-bottom:1px solid #d4a84324;
    border-radius:2px 2px 0 0;
  }
  #elmSoundPanel .elm-sound-panel-head>span{
    color:#d8c098;font:400 18px/1.2 "Bebas Neue",sans-serif;letter-spacing:.1em;
  }
  #elmSoundPanel .elm-sound-close{width:38px;height:40px;margin:0;color:#d2bd94}
  #gallery .elm-archive-carousel-nav{
    position:relative;padding-block:4px 5px;
    background:radial-gradient(ellipse at 50% 0%,#d4a8430c,transparent 68%);
  }
  #gallery .elm-archive-carousel-nav::before{
    content:"";position:absolute;top:0;left:12%;right:12%;height:1px;
    background:linear-gradient(90deg,transparent,#b88c4447,transparent);pointer-events:none;
  }
  #gallery .elm-archive-carousel-step{
    font:400 15px/1 "Playfair Display",Georgia,serif;letter-spacing:.025em;
    color:#a98d62;text-shadow:0 1px 0 #000;transition:color .2s ease,background-color .2s ease;
  }
  #gallery .elm-archive-carousel-step[aria-current="true"]{
    color:#ffe5b7;background:radial-gradient(ellipse,#c49a4a16,transparent 72%);
  }
  #gallery .elm-archive-carousel-step::after{
    bottom:6px;left:15%;right:15%;
    background:linear-gradient(90deg,transparent,#e5c58a,transparent);
  }
  #gallery .elm-archive-carousel-step::before{
    content:"";position:absolute;bottom:4px;left:calc(50% - 2.5px);width:5px;height:5px;
    background:#f3d49c;box-shadow:0 0 6px #deb36555;transform:rotate(45deg);
    opacity:0;transition:opacity .2s ease;
  }
  #gallery .elm-archive-carousel-step[aria-current="true"]::before{opacity:1}
  #gallery .elm-archive-carousel-arrow{color:#d5b77d}
  #gallery .elm-archive-carousel-arrow:not(:disabled):active{color:#ffe8bf;background:#d4a84312}
  /* Keep the local testing control clear of the chapter navigation. */
  .aka-dev-key-tools:not(.is-open){left:4px;bottom:max(68px,calc(env(safe-area-inset-bottom) + 60px))}
  .aka-dev-key-tools:not(.is-open) .aka-dev-key-toggle{
    min-width:36px;min-height:32px;padding:5px;font-size:9px;letter-spacing:.08em;border-radius:2px;
  }
}
@keyframes elm-mobile-control-glint{
  0%{opacity:0;transform:scaleX(.3)}
  45%{opacity:1;transform:scaleX(1)}
  100%{opacity:.5;transform:scaleX(.8)}
}
@keyframes elm-mobile-control-settle{
  from{transform:scale(.9)}to{transform:none}
}
@media(max-width:768px) and (prefers-reduced-motion:reduce){
  #navbar :is(#elmMobileLanguageBtn,#elmMobileNavigationBtn,.aka-sound-toggle.is-mobile),
  #gallery .elm-archive-carousel-step,
  #gallery .elm-archive-carousel-step::before,
  #gallery .elm-archive-carousel-step::after{transition:none}
  #navbar #elmMobileNavigationBtn[aria-expanded="true"]::before,
  #navbar .aka-sound-toggle.is-mobile:not(.is-wallet-locked)[aria-expanded="true"]::before{
    animation:none;opacity:.5;transform:none;
  }
  #navbar #elmMobileNavigationBtn[aria-expanded="true"] svg,
  #navbar .aka-sound-toggle.is-mobile[aria-expanded="true"] svg{animation:none}
  #navbar :is(#elmMobileLanguageBtn,#elmMobileNavigationBtn,.aka-sound-toggle.is-mobile):active{transform:none}
}

/* v77.37 — three small, static light surfaces, driven by the existing HERO
   final/releasing body classes. Only opacity transitions: no new JS clock,
   recurring animation, filter, particles or duplicated interactive controls. */
.elm-hero-utility-halo{display:none}
@media(max-width:768px){
  #navbar .elm-hero-utility-halo{
    display:block;position:absolute;inset:-1px;z-index:0;pointer-events:none;
    border:1px solid #ebc780b3;border-radius:inherit;
    background:linear-gradient(155deg,#e1b45916,transparent 65%);
    box-shadow:0 0 7px #deb06052,0 0 15px #c58a2529,inset 0 1px 0 #ffe1a333;
    opacity:0;transition:opacity 650ms ease;
  }
  #navbar #elmMobileNavigationBtn>.elm-hero-utility-halo{
    border-color:#ef997ba8;
    background:linear-gradient(155deg,#de364922,transparent 65%);
    box-shadow:0 0 7px #ef365152,0 0 15px #a60d302e,inset 0 1px 0 #ffe1a333;
  }
  #navbar :is(#elmMobileLanguageBtn,#elmMobileNavigationBtn,.aka-sound-toggle.is-mobile)>svg{
    position:relative;z-index:1;
  }
  body.is-hero-final-signal #navbar .elm-hero-utility-halo{opacity:1}
  body.is-hero-final-releasing #navbar .elm-hero-utility-halo{
    opacity:0;transition-duration:1100ms;
    transition-timing-function:cubic-bezier(0.22,0.61,0.36,1);
  }
}
@media(prefers-reduced-motion:reduce){
  #navbar .elm-hero-utility-halo{transition:none!important}
}

/* v77.40 — phone gallery spacing and input-appropriate copy. Desktop unchanged. */
.elm-mobile-gallery-film,.elm-gallery-mobile-hint{display:none}
@media(max-width:768px){
  .elm-mobile-gallery-film{display:block;pointer-events:none}
  #gallery .elm-mobile-gallery-heading{margin-bottom:2rem}
  #gallery .elm-gallery-desktop-hint{display:none}
  #gallery .elm-gallery-mobile-hint{display:block}
  #story .aka-story-traits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;width:100%;max-width:100%}
  #story .aka-story-traits>.w-px{display:none}
  #story .aka-story-signal-row{min-width:0;justify-content:center;gap:4px}
  #story .aka-story-signal-row~.aka-story-signal-row{border-inline-start:1px solid rgba(212,168,67,.22)}
  #story .aka-story-signal-row [data-signal-light="text"]{font-size:clamp(10px,2.8vw,12px);letter-spacing:0;white-space:normal;overflow-wrap:anywhere;line-height:1.4}
  #story .aka-story-signal-trigger{flex-shrink:0}
}

/* v77.42 — quiet cinematic notices. Title/Dominion ceremonies are deliberately excluded. */
#akaGameNoticeOverlay.elm-air-notice {
  inset:0 !important;padding:24px 16px !important;display:flex !important;
  align-items:center !important;justify-content:center !important;
  background:radial-gradient(ellipse min(390px,95vw) min(240px,45vh) at 50% 50%,rgba(0,0,0,.94) 0%,rgba(0,0,0,.90) 45%,rgba(0,0,0,.32) 78%,transparent 100%),rgba(0,0,0,.12) !important;
  backdrop-filter:none !important;-webkit-backdrop-filter:none !important;
}
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-panel {
  display:flex !important;flex-direction:column !important;align-items:center !important;
  position:relative !important;width:min(420px,100%) !important;min-height:0 !important;
  max-height:calc(100dvh - 48px);overflow-y:auto !important;overflow-x:hidden !important;
  padding:48px 20px 24px !important;gap:0 !important;border:0 !important;border-radius:0 !important;
  background:none !important;box-shadow:none !important;filter:none !important;pointer-events:auto !important;
  text-align:center !important;transform:translateY(7px) !important;
  transition:transform 240ms ease,opacity 240ms ease !important;
}
#akaGameNoticeOverlay.elm-air-notice.is-visible .aka-game-notice-panel {transform:translateY(0) !important}
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-panel::before,
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-panel::after,
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-orb {display:none !important}
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-symbol {
  position:static !important;grid-area:auto !important;width:46px !important;height:46px !important;
  min-width:46px !important;margin:0 auto 17px !important;border:0 !important;background:none !important;
  box-shadow:none !important;border-radius:0 !important;transform:none !important;animation:none !important;
}
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-symbol > svg {width:36px !important;height:36px !important;filter:drop-shadow(0 0 7px var(--aka-notice-color)) !important}
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-kicker {
  position:static !important;margin:0 0 10px !important;font:400 10px/1.5 'Special Elite',serif !important;
  letter-spacing:.2em !important;color:var(--aka-notice-color) !important;text-shadow:0 2px 8px #000 !important;
}
#akaGameNoticeOverlay.elm-air-notice .aka-title-ceremony-rail {display:block !important;position:static !important;width:100% !important;height:auto !important;transform:none !important}
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-title {
  position:static !important;margin:0 !important;font:400 clamp(25px,5vw,38px)/1.08 'Bebas Neue',sans-serif !important;
  letter-spacing:.055em !important;color:#f3e5cc !important;text-shadow:0 2px 12px #000 !important;
  text-align:center !important;overflow-wrap:anywhere;animation:none !important;
}
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-subtitle {margin:12px 0 0 !important;font:400 12px/1.65 'Special Elite',serif !important;letter-spacing:.035em !important;color:#c4bba9 !important;text-shadow:0 2px 8px #000}
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-close {
  display:flex !important;position:absolute !important;top:0 !important;right:0 !important;width:44px !important;height:44px !important;
  border:0 !important;background:none !important;box-shadow:none !important;font-size:24px !important;color:var(--aka-notice-color) !important;
}
#akaGameNoticeOverlay.elm-air-notice .is-empty {display:none !important}
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-panel:focus-visible {outline:1px solid var(--aka-notice-color);outline-offset:-1px}

.elm-air-scene {--elm-air-color:#ff416b}
.elm-air-scene,
body .elm-air-scene[data-elm-air-dialog] {
  position:fixed !important;inset:0 !important;z-index:12100;
  display:flex !important;align-items:center !important;justify-content:center !important;
  padding:16px !important;background:radial-gradient(ellipse min(390px,95vw) min(240px,45vh) at 50% 50%,rgba(0,0,0,.94) 0%,rgba(0,0,0,.90) 45%,rgba(0,0,0,.32) 78%,transparent 100%),rgba(0,0,0,.12) !important;
  backdrop-filter:none !important;-webkit-backdrop-filter:none !important;
}
.elm-air-scene:is(.is-magnifier,.aka-archive-special-hint-modal) {--elm-air-color:#86d5ed}
.elm-air-scene:is(.is-reel-signal,.is-reel-signal-modal) {--elm-air-color:#60bbff}
.elm-air-scene.is-diamond {--elm-air-color:#ce9bed}
.elm-air-scene:is(.is-bonus,.aka-archive-purchase-modal) {--elm-air-color:#e8c467}
.elm-air-scene.is-key {--elm-air-color:#d1e3ec}
.elm-air-scene.is-info {--elm-air-color:#e0c895}
.elm-air-scene > :is(.aka-file-requirement-card,.aka-archive-question-card) {
  position:relative !important;width:min(480px,100%) !important;max-height:calc(100dvh - 32px) !important;
  overflow:auto !important;padding:52px 22px 24px !important;text-align:center !important;
  border:0 !important;border-radius:0 !important;background:none !important;box-shadow:none !important;
}
.elm-air-scene > :is(.aka-file-requirement-card,.aka-archive-question-card)::before,
.elm-air-scene > :is(.aka-file-requirement-card,.aka-archive-question-card)::after {display:none !important}
.elm-air-scene :is(.aka-file-requirement-icon,.aka-archive-special-hint-icon,.aka-archive-purchase-icon) {
  display:flex !important;align-items:center;justify-content:center;width:48px !important;height:48px !important;
  margin:0 auto 19px !important;border:0 !important;background:none !important;box-shadow:none !important;color:var(--elm-air-color) !important;
}
.elm-air-scene :is(.aka-file-requirement-icon,.aka-archive-special-hint-icon,.aka-archive-purchase-icon) > svg {width:38px !important;height:38px !important;filter:drop-shadow(0 0 7px color-mix(in srgb,var(--elm-air-color) 45%,transparent))}
.elm-air-scene :is(.aka-file-requirement-kicker,.aka-archive-question-kicker) {margin:0 0 12px !important;color:var(--elm-air-color) !important;font:400 10px/1.5 'Special Elite',serif !important;letter-spacing:.2em !important}
.elm-air-scene h2 {font:400 clamp(28px,5.5vw,42px)/1.08 'Bebas Neue',sans-serif !important;letter-spacing:.06em !important;color:#f3e5cc !important;text-shadow:0 2px 12px #000 !important;margin:0 0 17px !important;overflow-wrap:anywhere}
.elm-air-scene :is(.aka-file-requirement-copy,.aka-archive-special-hint-body,.aka-archive-purchase-body) {font-size:13px !important;line-height:1.7 !important;letter-spacing:.035em !important;color:#c4bba9 !important;text-shadow:0 2px 8px #000}
.elm-air-scene :is(.aka-file-requirement-close,.aka-archive-special-hint-close,.aka-archive-question-close) {position:absolute !important;top:0 !important;right:0 !important;width:44px !important;height:44px !important;background:none !important;border:0 !important;box-shadow:none !important;color:var(--elm-air-color) !important;font-size:24px !important}
.elm-air-scene button:focus-visible,#akaGameNoticeOverlay.elm-air-notice button:focus-visible {outline:1px solid currentColor !important;outline-offset:-4px}
.elm-air-scene .aka-prototype-mission-complete {max-width:100%;white-space:normal}

/* Informational main-modal screens. Trailer, Buy and wallet provider selection are excluded by JS. */
#cinematicModal.elm-air-modal {background:radial-gradient(ellipse min(390px,95vw) min(240px,45vh) at 50% 50%,rgba(0,0,0,.94) 0%,rgba(0,0,0,.90) 45%,rgba(0,0,0,.32) 78%,transparent 100%),rgba(0,0,0,.12) !important;backdrop-filter:none !important}
#cinematicModal.elm-air-modal .modal-box,
#cinematicModal.elm-air-modal #modalContent,
#cinematicModal.elm-air-modal #modalContent > div {background:none !important;border:0 !important;box-shadow:none !important;border-radius:0 !important}
#cinematicModal.elm-air-modal .modal-box::before,#cinematicModal.elm-air-modal .modal-box::after,
#cinematicModal.elm-air-modal #modalContent > div::before,#cinematicModal.elm-air-modal #modalContent > div::after,
#cinematicModal.elm-air-modal #modalContent > div > .absolute {display:none !important}
#cinematicModal.elm-air-modal .modal-close {width:44px !important;height:44px !important;background:none !important;border:0 !important;box-shadow:none !important}
#cinematicModal.elm-air-modal h2 {font-size:clamp(28px,5vw,42px) !important;text-shadow:0 2px 12px #000 !important}
#cinematicModal.elm-air-modal :is(.aka-wallet-gate-icon,.aka-wallet-provider-icon,.aka-wallet-connect-retry-icon) {border:0 !important;background:none !important;box-shadow:none !important}

/* Small anchored ownership feedback stays local, with a soft vignette instead of a box. */
.aka-owned-callout.aka-owned-notice {border:0 !important;border-radius:0 !important;box-shadow:none !important;background:radial-gradient(ellipse,rgba(0,0,0,.95) 35%,rgba(0,0,0,.5) 65%,transparent) !important;padding:20px 48px 20px 20px !important}
.aka-owned-callout.aka-owned-notice::before,.aka-owned-callout.aka-owned-notice::after {display:none !important}
.aka-owned-notice .aka-owned-callout-close {width:44px !important;height:44px !important;background:none !important;border:0 !important;box-shadow:none !important}
#elmWalletAccessPanel {background:none !important;border:0 !important;border-radius:0 !important;box-shadow:none !important}
#elmWalletAccessPanel::before,#elmWalletAccessPanel::after {display:none !important}
#elmWalletAccessPanel .elm-wallet-access-head {border:0 !important}
#elmWalletAccessPanel .elm-wallet-access-head button {width:44px;height:44px;background:none !important;border:0 !important}
#elmWalletAccessPanel .elm-wallet-access-rule {opacity:.35}

@media(max-width:768px) {
  #cinematicModal #modalContent .elm-archive-room .aka-archive-file-card {min-height:var(--elm-rail-min-height,0px) !important}
  #cinematicModal #modalContent .aka-archive-file-card .aka-archive-task-icons.elm-poster-rails {position:absolute !important;inset:0 !important;display:block !important;pointer-events:none !important}
  #cinematicModal #modalContent .elm-poster-rails > .aka-archive-task-icon {position:absolute !important;left:var(--elm-rail-x) !important;top:var(--elm-rail-y) !important;right:auto !important;bottom:auto !important;pointer-events:auto}
}
@media(prefers-reduced-motion:reduce) {
  #akaGameNoticeOverlay.elm-air-notice,#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-panel {transition:none !important;animation:none !important}
  .elm-air-scene,.elm-air-scene.is-leaving {animation:none !important;opacity:1 !important}
}

#akaGameNoticeOverlay.elm-air-notice.is-visible {pointer-events:auto !important}
body:has(#elmWalletAccessPanel:not([hidden]))::after {content:"";position:fixed;inset:0;z-index:10024;background:radial-gradient(ellipse min(390px,95vw) min(240px,45vh) at 50% 50%,rgba(0,0,0,.94) 0%,rgba(0,0,0,.90) 45%,rgba(0,0,0,.32) 78%,transparent 100%),rgba(0,0,0,.12);pointer-events:auto}
#elmWalletAccessPanel {background:none !important;box-shadow:none !important;text-align:center}
#elmWalletAccessPanel .elm-wallet-access-intro {display:flex !important;flex-direction:column;align-items:center;gap:14px}
#elmWalletAccessPanel .elm-wallet-access-meta {justify-content:center}
#elmWalletAccessPanel .elm-wallet-access-rule {display:none}
#elmWalletAccessPanel .elm-wallet-access-connect {margin-top:20px}
.elm-air-scene.aka-archive-special-hint-modal .aka-archive-question-kicker {font:400 30px/1.1 'Bebas Neue',sans-serif !important;letter-spacing:.05em !important}

html:not(.aka-keyboard-navigation) .elm-air-scene button:focus {outline:none !important}

body:has(.elm-air-scene),body:has(#akaGameNoticeOverlay.elm-air-notice.is-visible) {overflow:hidden !important}
.elm-air-scene > div,#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-panel {overscroll-behavior:contain}

/* v77.43 — local reading shadow, compact hierarchy and consistent floating close controls. */
.elm-air-scene > :is(.aka-file-requirement-card,.aka-archive-question-card) {width:min(440px,100%) !important;padding:48px 16px 22px !important}
.elm-air-scene :is(.aka-file-requirement-close,.aka-archive-special-hint-close,.aka-archive-question-close),
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-close {right:8px !important;top:0 !important;text-shadow:0 1px 5px #000}
#cinematicModal.elm-air-modal {align-items:center !important;justify-content:center !important;padding:16px !important}
#cinematicModal.elm-air-modal .modal-box {width:min(480px,100%) !important;max-height:calc(100dvh - 32px) !important;overflow:auto !important}
#cinematicModal.elm-air-modal #modalContent > div {width:100% !important;min-width:0 !important;min-height:0 !important;aspect-ratio:auto !important;padding:52px 22px 24px !important}
#cinematicModal.elm-air-modal .modal-close {top:0 !important;right:8px !important}
#cinematicModal.elm-air-modal p {text-shadow:0 1px 4px #000,0 2px 12px #000}
#elmWalletAccessPanel {width:min(380px,calc(100vw - 32px));padding:44px 22px 22px !important;overscroll-behavior:contain}
#elmWalletAccessPanel .elm-wallet-access-head {height:0;min-height:0;padding:0;margin:0}
#elmWalletAccessPanel .elm-wallet-access-head > span {display:none}
#elmWalletAccessPanel .elm-wallet-access-head button {position:absolute;top:0;right:8px;margin:0;color:#e5c38b}
#elmWalletAccessPanel .elm-wallet-access-head svg {width:20px;height:20px}
#elmWalletAccessPanel .elm-wallet-access-intro {padding:0;gap:14px}
#elmWalletAccessPanel .elm-wallet-access-monogram {width:46px;height:46px;flex:0 0 46px}
#elmWalletAccessPanel .elm-wallet-access-monogram span {font-size:19px}
#elmWalletAccessPanel .elm-wallet-access-eyebrow {font-size:9px;line-height:1.4;letter-spacing:.18em;color:#c1a679;margin:0 0 7px;text-shadow:0 1px 5px #000}
#elmWalletAccessPanel h3 {font-size:clamp(32px,5vw,40px);line-height:1.08;letter-spacing:.06em;color:#f3e5cc;text-shadow:0 1px 4px #000,0 3px 14px #000}
#elmWalletAccessPanel p {max-width:310px;margin:14px auto 12px;font-size:13px;line-height:1.65;color:#e0ceb1;text-shadow:0 1px 4px #000,0 2px 12px #000}
#elmWalletAccessPanel .elm-wallet-access-meta {margin:0;gap:7px;justify-content:center}
#elmWalletAccessPanel small {font-size:9px;line-height:1.5;letter-spacing:.09em;color:#bfa77f;text-shadow:0 1px 5px #000}
#elmWalletAccessPanel .elm-wallet-access-connect {max-width:296px;margin:20px auto 0;min-height:46px;font-size:17px;justify-content:center;gap:14px;background:linear-gradient(180deg,rgba(73,49,20,.86),rgba(17,13,9,.93))}
html:not(.aka-keyboard-navigation) #elmWalletAccessPanel button:focus {outline:none}
/* One quiet arrival; no repeating animation competes with the ceremonies. */
@keyframes elmAirSymbolArrival {from{opacity:.4;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:no-preference){
  .elm-air-scene:not(.is-leaving) :is(.aka-file-requirement-icon,.aka-archive-special-hint-icon,.aka-archive-purchase-icon),
  #akaGameNoticeOverlay.elm-air-notice.is-visible .aka-game-notice-symbol,
  #elmWalletAccessPanel:not([hidden]) .elm-wallet-access-monogram {animation:elmAirSymbolArrival 260ms ease-out both !important}
}

/* Supersede legacy tone-specific solid fills while retaining each tone icon. */
.elm-air-scene:is(.aka-file-requirement-warning,.aka-archive-question-modal) > :is(.aka-file-requirement-card,.aka-archive-question-card) {background:none !important;border:0 !important;box-shadow:none !important}

/* v77.44 — the temporary phone key receiver matches the connected wallet orb. */
.aka-key-wallet-receiver.is-mobile-receiver {
  border:1.5px solid rgba(var(--aka-wallet-transfer-rgb),.90);
  border-radius:50% !important;
}
.aka-key-wallet-receiver.is-mobile-receiver::after {
  content:"";
  position:absolute;
  inset:-4px;
  border:1.5px solid rgba(var(--aka-wallet-transfer-rgb),.56);
  border-radius:inherit;
  box-shadow:0 0 9px rgba(var(--aka-wallet-transfer-rgb),.32),0 0 18px rgba(34,197,94,.15);
  pointer-events:none;
}

/* v77.46 — restrained cinematic contours for ordinary feedback only.
   A static coloured edge and local translucent ink keep the surrounding scene
   visible. Title/Dominion ceremonies, Trailer and Buy retain their own designs. */
#akaGameNoticeOverlay.elm-air-notice,
body .elm-air-scene[data-elm-air-dialog],
#cinematicModal.elm-air-modal {
  background:rgba(0,0,0,.06) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
body:has(#elmWalletAccessPanel:not([hidden]))::after {background:rgba(0,0,0,.06)}
#akaGameNoticeOverlay.elm-air-notice {--elm-air-color:var(--aka-notice-color)}
#cinematicModal.elm-air-modal,#elmWalletAccessPanel {--elm-air-color:#e0bd78}
#cinematicModal.elm-air-modal:has(.aka-wallet-connect-retry) {--elm-air-color:#ff6584}
.aka-owned-callout.aka-owned-notice {--elm-air-color:rgb(var(--aka-owned-gallery-rgb))}

#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-panel,
body .elm-air-scene[data-elm-air-dialog] > :is(.aka-file-requirement-card,.aka-archive-question-card),
#cinematicModal.elm-air-modal .modal-box,
#elmWalletAccessPanel,
.aka-owned-callout.aka-owned-notice {
  border:1px solid color-mix(in srgb,var(--elm-air-color) 56%,transparent) !important;
  border-radius:3px !important;
  background:
    linear-gradient(160deg,color-mix(in srgb,var(--elm-air-color) 8%,transparent),transparent 46%),
    rgba(8,8,10,.94) !important;
  box-shadow:
    inset 0 1px 0 color-mix(in srgb,var(--elm-air-color) 10%,transparent),
    0 0 5px color-mix(in srgb,var(--elm-air-color) 16%,transparent),
    0 0 22px color-mix(in srgb,var(--elm-air-color) 11%,transparent),
    0 12px 32px rgba(0,0,0,.28) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-panel,
body .elm-air-scene[data-elm-air-dialog] > :is(.aka-file-requirement-card,.aka-archive-question-card) {
  width:min(440px,100%) !important;
  padding:44px 24px 28px !important;
}
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-panel {max-height:calc(100dvh - 48px) !important}
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-symbol > svg {
  filter:drop-shadow(0 0 5px color-mix(in srgb,var(--elm-air-color) 40%,transparent)) !important;
}
body .elm-air-scene[data-elm-air-dialog] h2,
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-title,
#cinematicModal.elm-air-modal h2 {
  font-size:clamp(28px,5vw,36px) !important;
  line-height:1.12 !important;
  letter-spacing:.045em !important;
  text-shadow:0 1px 3px rgba(0,0,0,.8) !important;
}
body .elm-air-scene[data-elm-air-dialog] :is(.aka-file-requirement-copy,.aka-archive-special-hint-body,.aka-archive-purchase-body),
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-subtitle {
  color:#ded3c1 !important;
  text-shadow:0 1px 3px rgba(0,0,0,.7) !important;
}
body .elm-air-scene[data-elm-air-dialog] :is(.aka-file-requirement-close,.aka-archive-special-hint-close,.aka-archive-question-close),
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-close,
#cinematicModal.elm-air-modal .modal-close,
#elmWalletAccessPanel .elm-wallet-access-head button {
  top:4px !important;right:4px !important;
  color:var(--elm-air-color) !important;
  opacity:.85;
  transition:color 160ms ease,opacity 160ms ease;
}
#cinematicModal.elm-air-modal #modalContent > div {padding:48px 24px 28px !important}
#elmWalletAccessPanel {padding:48px 24px 28px !important}
@media(max-width:480px) {
  #akaGameNoticeOverlay.elm-air-notice .aka-game-notice-panel,
  body .elm-air-scene[data-elm-air-dialog] > :is(.aka-file-requirement-card,.aka-archive-question-card),
  #cinematicModal.elm-air-modal #modalContent > div,
  #elmWalletAccessPanel {padding:44px 20px 24px !important}
}
@media(prefers-reduced-motion:reduce) {
  #cinematicModal.elm-air-modal,#cinematicModal.elm-air-modal .modal-box,
  #elmWalletAccessPanel,.aka-owned-callout.aka-owned-notice {animation:none !important;transition:none !important}
}

.aka-owned-callout.aka-owned-notice {
  grid-template-columns:28px minmax(0,1fr) 44px;
  gap:10px;
  padding:12px 8px 12px 14px !important;
}

/* v77.47 — short feedback in open space. Functional gates keep v77.46 frames.
   The reading halo has no rectangular edge and paints only around the message.
   No backdrop blur, repeating shimmer, or ceremony-sized animation is added. */
#akaGameNoticeOverlay.elm-air-notice,
body .elm-air-scene.elm-floating-notice[data-elm-air-dialog] {
  align-items:safe center !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  overscroll-behavior:contain;
}
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-panel,
body .elm-air-scene.elm-floating-notice[data-elm-air-dialog] > :is(.aka-file-requirement-card,.aka-archive-question-card),
.aka-owned-callout.aka-owned-notice {
  isolation:isolate;
  contain:layout style !important;
  border:0 !important;
  border-radius:0 !important;
  background:none !important;
  box-shadow:none !important;
  overflow:visible !important;
}
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-panel,
body .elm-air-scene.elm-floating-notice[data-elm-air-dialog] > :is(.aka-file-requirement-card,.aka-archive-question-card) {
  width:min(500px,100%) !important;
  max-height:none !important;
  flex-shrink:0;
  padding:44px 28px 38px !important;
}
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-panel::before,
body .elm-air-scene.elm-floating-notice[data-elm-air-dialog] > :is(.aka-file-requirement-card,.aka-archive-question-card)::before,
.aka-owned-callout.aka-owned-notice::before {
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:-52px -80px !important;
  width:auto !important;
  height:auto !important;
  z-index:-1 !important;
  border:0 !important;
  border-radius:0 !important;
  background:radial-gradient(ellipse closest-side at 50% 50%,rgba(3,4,6,.96) 0%,rgba(3,4,6,.94) 48%,rgba(3,4,6,.80) 70%,rgba(3,4,6,.26) 88%,transparent 100%) !important;
  box-shadow:none !important;
  opacity:1 !important;
  transform:none !important;
  filter:none !important;
  animation:none !important;
  pointer-events:none !important;
}
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-symbol,
body .elm-air-scene.elm-floating-notice[data-elm-air-dialog] :is(.aka-file-requirement-icon,.aka-archive-special-hint-icon) {
  position:relative !important;
  overflow:visible !important;
}
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-symbol::before,
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-symbol::after,
body .elm-air-scene.elm-floating-notice[data-elm-air-dialog] :is(.aka-file-requirement-icon,.aka-archive-special-hint-icon)::before,
body .elm-air-scene.elm-floating-notice[data-elm-air-dialog] :is(.aka-file-requirement-icon,.aka-archive-special-hint-icon)::after {
  content:"";
  position:absolute;
  top:50%;
  width:clamp(28px,9vw,64px);
  height:1px;
  border:0;
  pointer-events:none;
  background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--elm-air-color) 52%,transparent));
  box-shadow:0 0 5px color-mix(in srgb,var(--elm-air-color) 12%,transparent);
}
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-symbol::before,
body .elm-air-scene.elm-floating-notice[data-elm-air-dialog] :is(.aka-file-requirement-icon,.aka-archive-special-hint-icon)::before {right:calc(100% + 14px)}
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-symbol::after,
body .elm-air-scene.elm-floating-notice[data-elm-air-dialog] :is(.aka-file-requirement-icon,.aka-archive-special-hint-icon)::after {left:calc(100% + 14px);transform:rotate(180deg)}
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-title,
body .elm-air-scene.elm-floating-notice[data-elm-air-dialog] h2 {
  text-shadow:0 2px 4px #000,0 0 14px rgba(0,0,0,.85) !important;
}
#akaGameNoticeOverlay.elm-air-notice :is(.aka-game-notice-kicker,.aka-game-notice-subtitle,.aka-game-notice-footnote),
body .elm-air-scene.elm-floating-notice[data-elm-air-dialog] :is(.aka-file-requirement-copy,.aka-archive-special-hint-body,.aka-archive-special-hint-note) {
  text-shadow:0 1px 3px #000,0 0 9px #000 !important;
}
#akaGameNoticeOverlay.elm-air-notice .aka-game-notice-close,
body .elm-air-scene.elm-floating-notice[data-elm-air-dialog] :is(.aka-file-requirement-close,.aka-archive-special-hint-close) {
  top:0 !important;right:8px !important;
  text-shadow:0 1px 4px #000,0 0 8px #000 !important;
}
.aka-owned-callout.aka-owned-notice::before {inset:-14px -28px !important}
@media(max-width:480px) {
  #akaGameNoticeOverlay.elm-air-notice .aka-game-notice-panel,
  body .elm-air-scene.elm-floating-notice[data-elm-air-dialog] > :is(.aka-file-requirement-card,.aka-archive-question-card) {padding:44px 16px 30px !important}
  #akaGameNoticeOverlay.elm-air-notice .aka-game-notice-panel::before,
  body .elm-air-scene.elm-floating-notice[data-elm-air-dialog] > :is(.aka-file-requirement-card,.aka-archive-question-card)::before {inset:-52px -60px !important}
}

/* Let the result take the stage while preserving terminal input and acceptance.
   The terminal returns when feedback ends; no progress or submission is reset. */
body:has(#akaGameNoticeOverlay.elm-air-notice:is(.is-visible,.is-closing)) [data-archive-rules-dialog].is-open {
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}

/* Programmatic arrival focus stays quiet; keyboard users keep the focus ring. */
html:not(.aka-keyboard-navigation) #akaGameNoticeOverlay.elm-air-notice :is(.aka-game-notice-close,.aka-game-notice-panel):focus {outline:none !important}

/* v77.61 — only a confirmed absent room member's message avatar goes quiet.
   Names and messages stay readable; removing is-offline restores its title art. */
.elm-chat-message [data-chat-avatar-player].elm-chat-avatar[data-title-tone]{
  transition:box-shadow .08s linear,transform .08s linear,opacity 200ms ease,filter 200ms ease!important;
}
.elm-chat-message [data-chat-avatar-player].elm-chat-avatar.is-offline[data-title-tone]{
  opacity:.52!important;
  filter:saturate(.25)!important;
  transform:none!important;
  animation:none!important;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.40)!important;
  will-change:auto!important;
}
.elm-chat-message [data-chat-avatar-player].elm-chat-avatar.is-offline[data-title-tone] .elm-chat-avatar-layer.is-pink{
  opacity:0!important;
  animation:none!important;
  transform:none!important;
  will-change:auto!important;
}
.elm-chat-message [data-chat-avatar-player].elm-chat-avatar.is-offline[data-title-tone] .elm-chat-avatar-layer.is-triangle{
  opacity:.24!important;
  filter:none!important;
}
.elm-chat-message [data-chat-avatar-player].elm-chat-avatar.is-offline[data-title-tone]::before,
.elm-chat-message [data-chat-avatar-player].elm-chat-avatar.is-offline[data-title-tone]::after,
.elm-chat-message [data-chat-avatar-player].elm-chat-avatar.is-offline[data-title-tone] .elm-chat-avatar-ring{
  animation:none!important;
  filter:none!important;
  box-shadow:none!important;
}
@media(prefers-reduced-motion:reduce){
  .elm-chat-message [data-chat-avatar-player].elm-chat-avatar[data-title-tone]{transition:none!important}
}

/* v77.62: fixed chat keeps an opaque paint surface during the portal switch.
   No fade, scale or blur is applied to the conversation or its scroll layers. */
@media(max-width:768px){
  .elm-chat-room.is-focus-layout,
  body.elm-chat-focus-mobile .elm-chat-room.is-focus-mobile{
    background-color:#0a0b0c!important;
    opacity:1!important;visibility:visible!important;
    transform:none!important;filter:none!important;backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;transition:none!important;animation:none!important;
    overflow:hidden!important;
  }
  .elm-chat-room.is-focus-layout :is(.elm-chat-shell,.elm-chat-layout,.elm-chat-main-column,.elm-chat-log){
    transition:none!important;animation:none!important;scroll-behavior:auto!important;
  }
}
/* Offscreen history never retains compositor layers for its tiny equalizers.
   Existing message colour, title, artwork and online/offline identity are kept. */
.elm-chat-room.has-avatar-visibility .elm-chat-message .elm-chat-avatar:not(.is-avatar-visible),
.elm-chat-room.has-avatar-visibility .elm-chat-message .elm-chat-avatar:not(.is-avatar-visible) .elm-chat-avatar-layer{
  will-change:auto!important;animation:none!important;transition:none!important;
}
.elm-chat-room.has-avatar-visibility .elm-chat-message .elm-chat-avatar:not(.is-avatar-visible){
  --elm-audio-avatar-scale:1;--elm-audio-avatar-blur:2px;
  --elm-audio-avatar-halo-size:0px;
  --elm-audio-avatar-pink-left-scale-y:.56;--elm-audio-avatar-pink-right-scale-y:.54;
  --elm-remote-beat:0;transform:none!important;
}

/* Transport refresh is not a participant departure. Retained names are marked
   stale for at most 15 seconds; live presence restores the original green. */
.elm-chat-room.is-presence-stale .elm-chat-online-dot{
  background:#8d8579!important;box-shadow:none!important;
}

/* v77.63: Focus keeps the live room attached to its Fan Club host. Release only
   that ancestor path so the fixed room uses the viewport and its own z-index.
   No duplicate room, fade-to-black, or rebuilding the message scroll surface. */
@media(max-width:768px){
  body.elm-chat-focus-mobile .elm-chat-focus-ancestor{
    transform:none!important;translate:none!important;rotate:none!important;scale:none!important;
    filter:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
    perspective:none!important;contain:none!important;container-type:normal!important;
    content-visibility:visible!important;will-change:auto!important;
    overflow:visible!important;clip:auto!important;clip-path:none!important;mask:none!important;
    isolation:auto!important;mix-blend-mode:normal!important;opacity:1!important;z-index:auto!important;
    transition:none!important;animation:none!important;
  }
  body.elm-chat-focus-mobile .elm-chat-room.is-focus-mobile{
    box-shadow:none!important;
  }
}
