/* Deliberately independent of WebGL, sound controls, and persistent visitor identity. */
#hearth-presence { position:fixed; left:max(12px,env(safe-area-inset-left)); bottom:calc(76px + env(safe-area-inset-bottom)); z-index:11000; color:#fff4dd; font:14px/1.45 system-ui,sans-serif; }
#hearth-presence button { min-height:44px; border:1px solid #bb9b60; border-radius:9px; padding:10px 14px; font:600 14px/1.35 system-ui,sans-serif; background:#14212b; color:#fff4dd; cursor:pointer; }
#hearth-presence button:disabled { opacity:.65; cursor:default; }
#hearth-presence-launcher { display:flex; flex-direction:column; align-items:flex-start; box-shadow:0 4px 18px #0008; }
#hearth-presence-launcher small { font-size:11px; font-weight:400; }
#hearth-presence :focus-visible { outline:3px solid #ffe4a3; outline-offset:3px; }
#hearth-presence-dialog { box-sizing:border-box; width:min(440px,calc(100vw - 24px)); max-height:85dvh; overflow:auto; overscroll-behavior:contain; border:1px solid #bb9b60; border-radius:14px; padding:20px; margin:auto; background:#101923; color:#fff4dd; font:16px/1.5 system-ui,sans-serif; }
#hearth-presence-dialog:not([open]) { display:none; }
#hearth-presence-dialog::backdrop { background:rgba(3,6,9,.85); }
#hearth-presence-dialog h2 { font:600 25px/1.2 Georgia,serif; margin:0 70px 10px 0; }
#hearth-presence-dialog p { margin:12px 0; }
#hearth-presence-dialog label { display:block; margin:14px 0 6px; }
#hearth-presence-dialog select { width:100%; min-height:44px; font:inherit; color:#fff4dd; background:#172431; border:1px solid #bb9b60; border-radius:7px; padding:8px; }
#hearth-presence-dialog ul { padding-left:22px; }
#hearth-presence-dialog .hearth-presence-note { font-size:13px; color:#d5d3ce; }
#hearth-presence-close { float:right; }
#hearth-presence-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:16px; }
#hearth-presence [hidden] { display:none!important; }
body.v34-clean-view #hearth-presence { display:none!important; visibility:hidden!important; pointer-events:none!important; }
@media(max-width:700px) { #hearth-presence { left:max(8px,env(safe-area-inset-left)); bottom:calc(76px + env(safe-area-inset-bottom)); } #hearth-presence-launcher { max-width:165px; padding:8px 11px!important; } }
@media(prefers-reduced-motion:reduce) { #hearth-presence * { transition:none!important; animation:none!important; } }
