/* Navegação unificada do Ministério de Louvor — páginas independentes. */
.site-menu { --gold:#d4aa63; --forest-950:#10261f; --ink:#123a30; }
.site-menu, .site-menu * { box-sizing: border-box; }
.site-menu { position:absolute; z-index:1000; top:24px; right:clamp(12px, 5vw, 92px); }
.site-menu__details { position:relative; }
.site-menu__details > summary { list-style:none; }
.site-menu__details > summary::-webkit-details-marker { display:none; }
.site-menu__button { display:flex; align-items:center; justify-content:center; width:50px; height:50px; min-height:50px; padding:0; border:0; border-radius:50%; background:var(--gold); cursor:pointer; color:var(--forest-950); box-shadow:0 12px 30px rgba(4,18,14,.16); }
.site-menu__button:hover { transform:translateY(-1px); }
.site-menu__button-icon { display:block; width:21px; height:21px; }
.site-menu__panel { position:absolute; top:calc(100% + 10px); right:0; display:grid; min-width:258px; max-height:calc(100dvh - 92px); overflow-y:auto; overscroll-behavior:contain; padding:8px; border:1px solid rgba(255,255,255,.18); border-radius:22px; background:rgba(16,38,31,.97); box-shadow:0 22px 54px rgba(4,18,14,.32); backdrop-filter:blur(14px); transform:translateY(-8px) scale(.98); transform-origin:top right; opacity:0; pointer-events:none; transition:opacity .18s ease, transform .18s ease; }
.site-menu__details[open] .site-menu__panel { opacity:1; pointer-events:auto; transform:translateY(0) scale(1); }
.site-menu__item { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:10px; align-items:center; width:100%; padding:10px; border:0; border-radius:16px; background:transparent; color:#fff; text-align:left; text-decoration:none; font:inherit; cursor:pointer; transition:background .18s ease; }
.site-menu__item:hover { background:rgba(255,255,255,.08); }
.site-menu__icon { display:grid; width:32px; height:32px; flex-shrink:0; place-items:center; border-radius:50%; background:var(--gold); color:var(--forest-950); }
.site-menu__icon img { display:block; width:18px; height:18px; object-fit:contain; }
.site-menu__item--login .site-menu__icon { overflow:hidden; }
.site-menu__item--login .site-menu__icon img.is-avatar { width:100%; height:100%; object-fit:cover; }
.site-menu__text, .site-menu__item strong { display:block; }
.site-menu__item strong { font:700 .94rem/1.2 'DM Sans',sans-serif; }
.site-menu__arrow { color:#ebcd95; font-size:1rem; }
.site-menu__item[hidden] { display:none!important; }
.site-menu__panel > .site-menu__item--login { order:-1; }
.site-menu__item.is-login-required, .site-menu__item.is-login-required:hover { color:#a6b2ae; background:rgba(206,216,211,.06); cursor:not-allowed; }
.site-menu__item.is-login-required .site-menu__icon { background:#879b92; }
.site-menu__item.is-login-required .site-menu__icon img { opacity:.66; filter:grayscale(1); }
.site-menu__item.is-login-required .site-menu__arrow { color:#a6b2ae; }
.site-menu__item.is-login-required:focus-visible { outline:2px solid #dbc495; outline-offset:2px; }
.site-menu__login-required-message { padding:9px 12px; border-radius:10px; background:#f6eee1; color:#6e3b2a; font:700 .83rem/1.4 'DM Sans',sans-serif; margin:5px; }
.site-menu__login-required-message { display:block; text-decoration:none; text-align:center; cursor:pointer; transition:background .18s ease, transform .18s ease; }
.site-menu__login-required-message:hover { background:#fff9ef; transform:translateY(-1px); }
.site-menu__login-required-message:focus-visible { outline:2px solid #d4aa63; outline-offset:2px; }
.site-menu__login-required-message[hidden] { display:none!important; }
.site-menu__item.is-active { background:rgba(255,255,255,.12); }
@media(max-width:600px){.site-menu { top:16px; right:12px; } .site-menu__panel { min-width:min(260px,calc(100vw - 24px)); max-height:calc(100dvh - 82px); } .site-menu__button{width:48px;height:48px;min-height:48px;} }
.member-dashboard__top > .site-menu { position:relative; top:auto; right:auto; z-index:120; margin-left:auto; }
.member-dashboard__top .site-menu__panel { z-index:125; }
/* Sem links de navegação no rodapé — somente identidade institucional. */
