/* Funções visíveis e agrupadas pelo trabalho do cerimonialista. */
main.friendly-workspace{max-width:1560px;margin-inline:auto;padding:24px;box-sizing:border-box}
.friendly-workspace.has-navigation{display:grid;grid-template-columns:260px minmax(0,1fr);gap:32px;align-items:start}
.workspace-body{min-width:0}
.workspace-navigation{position:sticky;top:20px;background:#fff;border:1px solid #dce5df;border-radius:16px;padding:22px 12px;box-sizing:border-box;max-height:calc(100dvh - 40px);overflow:auto}
.navigation-brand{padding:0 12px 18px;font:600 27px Georgia,serif;color:#245a49;border-bottom:1px solid #e2e9e4}
.navigation-brand span{display:block;margin-top:6px;font:400 14px/1.5 system-ui;color:#596a61}
.navigation-sections summary{display:none}
.workspace-navigation nav h2{margin:22px 12px 10px;font:600 13px/1.4 system-ui;color:#596a61}
.navigation-group{display:grid;gap:4px}
.workspace-navigation .navigation-item{display:flex;align-items:flex-start;gap:12px;width:100%;min-height:62px;padding:12px;border:0;border-radius:9px;background:transparent;color:#203c32;text-align:left;font-family:system-ui;cursor:pointer;box-sizing:border-box;white-space:normal}
.navigation-item svg{width:21px;height:21px;flex:0 0 21px;margin-top:2px}
.navigation-item span{min-width:0}.navigation-item strong{display:block;font-size:15px;font-weight:600;line-height:1.4}
.navigation-item small{display:block;font-size:13px;line-height:1.45;font-weight:400;margin-top:3px;color:#596a61}
.workspace-navigation .navigation-item:hover{background:#edf3f0}.workspace-navigation .navigation-item.active{background:#245a49;color:#fff}.navigation-item.active small{color:#e2eee7}
.workspace-navigation .navigation-item:focus-visible,.navigation-sections summary:focus-visible{outline:3px solid #658a73;outline-offset:3px}
.workspace-guide{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 20px;margin-bottom:24px;border-radius:10px;background:#edf3f0;border-left:4px solid #245a49;scroll-margin-top:16px}
.workspace-guide .guide-location{display:block;color:#596a61;font:400 13px/1.5 system-ui}.workspace-guide strong{display:block;color:#203c32;font:600 20px/1.4 system-ui}.workspace-guide p{margin:0;max-width:38ch;color:#435c4f;font:400 14px/1.5 system-ui}
.workspace-body .active-event-label{text-transform:none;letter-spacing:normal;font-size:13px}
@media(min-width:801px){.navigation-sections:not([open])>nav{display:block}}
@media(max-width:1100px) and (min-width:801px){.friendly-workspace.has-navigation{grid-template-columns:225px minmax(0,1fr);gap:20px}main.friendly-workspace{padding:20px 16px}}
@media print{.workspace-navigation,.workspace-guide{display:none!important}.friendly-workspace.has-navigation{display:block}main.friendly-workspace{padding:0}}

.mobile-navigation-bar{display:none}
dialog.mobile-navigation-dialog{width:min(360px,92vw);max-width:92vw;height:100dvh;max-height:100dvh;inset:0 0 0 auto;margin:0;padding:0;border:0;border-radius:16px 0 0 16px;background:#fff;box-sizing:border-box;overflow:auto}
.mobile-navigation-dialog::backdrop{background:#18392d80}
.mobile-menu-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 16px;border-bottom:1px solid #dce5df;color:#203c32;font:600 18px system-ui}
.mobile-menu-heading button{min-height:44px;padding:10px;border:1px solid #dce5df;border-radius:8px;background:#fff;color:#245a49;font:600 14px system-ui}
@media(max-width:800px){
 main.friendly-workspace{padding:12px}.friendly-workspace.has-navigation{display:block}
 .mobile-navigation-bar:not([hidden]){display:flex;align-items:center;gap:12px;justify-content:space-between;background:#fff;border:1px solid #dce5df;border-radius:12px;padding:12px;margin-bottom:14px}
 .mobile-event{min-width:0;flex:1}.mobile-event span{display:block;font:400 12px/1.5 system-ui;color:#596a61}.mobile-event strong{display:block;font:600 16px/1.4 system-ui;color:#203c32;overflow-wrap:anywhere}
 .mobile-navigation-bar button{display:flex;flex:none;align-items:center;gap:7px;min-height:46px;padding:10px 12px;border:1px solid #c7d8ce;border-radius:9px;background:#edf3f0;color:#245a49;font:600 15px system-ui}
 .mobile-navigation-bar svg{width:20px;height:20px}
 .mobile-navigation-dialog .workspace-navigation{position:static;border:0;border-radius:0;max-height:none;padding:0 12px 24px;margin:0;width:100%}
 .mobile-navigation-dialog .navigation-brand,.mobile-navigation-dialog summary{display:none}
 .mobile-navigation-dialog .navigation-group{display:grid;grid-template-columns:1fr;gap:6px}
 .mobile-navigation-dialog .navigation-item{min-height:62px;padding:12px;gap:12px}
 .mobile-navigation-dialog .navigation-item strong{font-size:16px}.mobile-navigation-dialog .navigation-item small{font-size:13px}
 .workspace-guide{padding:0 2px;margin:0 0 16px;background:none;border:0;display:block}.workspace-guide .guide-location,.workspace-guide p{display:none}.workspace-guide strong{font-size:18px}
 .workspace-body>.workspace-header,.workspace-body>#activeEventContext{display:none}
 .workspace-body>header{margin-bottom:16px}.workspace-body>header h1{font-size:26px}.workspace-body>header p{font-size:14px}
 .workspace-body button,.workspace-body .button{min-height:44px}.workspace-body input,.workspace-body select{font-size:16px}
 .mobile-navigation-bar button:focus-visible,.mobile-menu-heading button:focus-visible{outline:3px solid #658a73;outline-offset:2px}
}
@media print{.mobile-navigation-bar,.mobile-navigation-dialog{display:none!important}}

@media(max-width:800px){.workspace-guide{display:none}body.mobile-menu-open{overflow:hidden}}

/* A conta acompanha o menu lateral e o menu de celular. */
.navigation-account{display:grid;gap:8px;padding:18px 12px;border-bottom:1px solid #e2e9e4;color:#203c32}
.navigation-account>strong{font:600 14px/1.4 system-ui}
.navigation-account #accountEmail,.navigation-account #identity{font:400 13px/1.5 system-ui;color:#596a61;overflow-wrap:anywhere;margin:0}
.navigation-account #accountEmail:empty,.navigation-account #identity:empty{display:none}
.workspace-navigation .navigation-account button{justify-self:start;min-height:44px;padding:8px 12px;border:1px solid #cedbd2;border-radius:7px;background:#f3f6f3;color:#365747;font:500 13px/1.4 system-ui;cursor:pointer}
.workspace-navigation .navigation-account button:hover{background:#e5eee7}
.workspace-navigation .navigation-account button:focus-visible{outline:3px solid #658a73;outline-offset:2px}

/* Marca e descrição alinhadas no canto superior direito. */
.local-banner .banner-brand{order:9;display:flex;flex-direction:column;align-items:flex-end;flex:0 1 auto;margin-left:auto;min-width:0;text-align:right}
.local-banner .banner-logo{position:relative;display:block;width:180px;height:51px;overflow:hidden}
.local-banner .banner-logo img{position:absolute;left:-40%;top:50%;width:180%;max-width:none;height:auto;transform:translateY(-50%)}
.local-banner .banner-brand #environmentDescription{font-size:12px;line-height:1.3;color:#3c5b4b}
.local-banner #syncStatus{margin-left:0}
@media(max-width:600px){.local-banner .banner-brand{flex-basis:100%}.local-banner .banner-logo{width:152px;height:43px}.local-banner .banner-brand #environmentDescription{max-width:240px;font-size:11px}}

.local-banner .banner-brand #syncStatus{display:block;width:auto;margin:6px 0 0;font-size:11px;line-height:1.35;text-align:right}
.local-banner .banner-brand #syncStatus[hidden]{display:none}

/* Evento e Check-in à esquerda; menu abaixo da marca à direita. */
.local-banner .banner-event{display:flex;flex:1 1 240px;min-width:0;flex-direction:column;align-items:flex-start;justify-content:center;gap:9px}
.local-banner #headerEventName{color:#233d32;font:600 19px/1.3 system-ui,-apple-system,"Segoe UI",sans-serif;overflow-wrap:anywhere}
.local-banner .header-checkin,.local-banner .header-menu-trigger{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 14px;border:1px solid #c7d8ce;border-radius:9px;background:#edf3f0;color:#245a49;font:600 14px/1.3 system-ui;cursor:pointer}
.local-banner .header-checkin:hover,.local-banner .header-menu-trigger:hover{background:#e0ece4}
.local-banner .header-checkin.active{background:#245a49;border-color:#245a49;color:#fff}
.local-banner .header-checkin svg,.local-banner .header-menu-trigger svg{width:19px;height:19px;flex:none}
.local-banner .header-checkin[hidden],.local-banner .header-menu-trigger[hidden]{display:none}
.header-navigation-dialog .workspace-navigation{position:static;border:0;border-radius:0;max-height:none;padding:0 12px 24px;margin:0;width:100%}
.header-navigation-dialog .navigation-brand,.header-navigation-dialog summary{display:none}
.header-navigation-dialog .navigation-group{display:grid;grid-template-columns:1fr;gap:6px}
.header-navigation-dialog .navigation-item{min-height:62px;padding:12px;gap:12px}
body:has(#headerEventName) #activeEventContext{display:none!important}
@media(max-width:800px){body:has(#headerEventName) .mobile-navigation-bar .mobile-event{display:none}.local-banner #headerEventName{font-size:16px}.local-banner .banner-event{flex-basis:120px}.local-banner .banner-brand{flex-basis:auto;max-width:55%}.local-banner .header-checkin,.local-banner .header-menu-trigger{min-height:42px;padding:8px 11px}}
