/* Shared application shell and module navigation. */
.app-header{position:sticky;top:4px;z-index:20;display:flex;gap:12px;align-items:center;flex-wrap:nowrap;padding:8px 12px;margin:8px 0;background:#0e131d;border:1px solid #252e3d;border-radius:12px;box-shadow:0 8px 28px #0002;min-width:0}
.mini-brand{flex:0 0 auto;margin-right:4px}.mini-brand strong{white-space:nowrap}.top-navigation{display:flex;align-items:center;gap:3px;flex:1 1 auto;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;white-space:nowrap}.top-navigation::-webkit-scrollbar{display:none}
.top-nav-item{flex:0 0 auto;border:1px solid transparent;background:transparent;color:#aab5c8;border-radius:8px;padding:9px 10px;white-space:nowrap;cursor:pointer;font:inherit;font-size:12px;transition:background .15s,color .15s}
.top-nav-item:hover,.top-nav-item.active{background:#1c2b49;border-color:#263b60;color:#fff}
.app-layout{grid-template-columns:190px minmax(0,1fr)}
.module-message{padding:11px 14px;margin:0 0 12px;border:1px solid #38445a;border-radius:10px;color:#c8d6f0;background:#131d2c}
.module-message.error{border-color:#873a4b;background:#321923;color:#ffdbe2}

/* Full-width player shell matching the reference's desktop workspace. */
.page:has(#appView:not([hidden])){width:calc(100% - 8px);max-width:none;margin:8px 4px 12px}
.page:has(#appView:not([hidden])) .disclaimer{margin-bottom:10px;padding:12px 20px}
.page:has(#appView:not([hidden])) .disclaimer h2{margin-bottom:4px}
.mini-brand{display:flex;align-items:center;gap:9px;white-space:nowrap}
.mini-brand>span{display:grid;place-items:center;width:32px;height:32px;flex:0 0 32px;border-radius:9px;background:#7657f5;color:#fff;font-size:17px}
.mini-brand strong{font-size:14px}.mini-brand em{font-style:normal;color:#9e8aff}
.account-badge{flex:0 1 auto;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:9px 12px;border-radius:22px;background:#1b2434;color:#aab8d0;font-size:11px}
#changeProfile{flex:0 0 auto;white-space:nowrap;padding:9px 11px;font-size:12px}
@media(max-width:1150px){.app-header{gap:7px}.top-nav-item{padding:8px 7px;font-size:11px}.mini-brand strong{font-size:12px}.account-badge{max-width:130px}}
@media(max-width:850px){.app-header{flex-wrap:wrap}.top-navigation{order:3;flex:1 0 100%;width:100%}.account-badge{margin-left:auto}}
