/* Mobile navigation and a full-page profile/menu. Uses the Focus / Glass tokens. */
.n15-menu{max-width:880px;margin:0 auto;min-width:0}
.n15-menu-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 16px}
.n15-menu-head h1{font-size:28px;margin:0;line-height:1.25}
.n15-menu-head>.icon-button{position:relative;width:44px;height:44px;min-width:44px;min-height:44px;flex:none}
.n15-menu-head .n15-count{position:absolute;right:-3px;top:-3px}
.n15-menu-head h1:focus{outline:none}
.n15-profile{display:flex;align-items:center;gap:16px;width:100%;min-height:112px;padding:20px!important;text-align:left;border:1px solid var(--line)!important;border-radius:20px!important;background:var(--surface)!important;color:var(--ink)!important;white-space:normal}
.n15-avatar{display:inline-flex;align-items:center;justify-content:center;flex:none;overflow:hidden;border-radius:50%;width:28px;height:28px;background:var(--soft);color:var(--accent);font-size:11px;font-weight:700;line-height:1}
.n15-avatar img{display:block;width:100%;height:100%;object-fit:cover}
.n15-profile .n15-avatar{width:64px;height:64px;font-size:22px}
.n15-profile-copy{display:grid;gap:5px;min-width:0;flex:1;overflow-wrap:anywhere}
.n15-profile-copy strong{font-size:20px;font-weight:650;line-height:1.3}
.n15-profile-copy small{font-size:13px;color:var(--muted);line-height:1.4}
.n15-profile-copy .n15-profile-link{color:var(--accent);font-size:13px;margin-top:3px}
.n15-profile>.svg{flex:none;width:20px;height:20px;color:var(--muted)}
.n15-menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start;margin-top:16px}
.n15-menu-group{min-width:0;border-radius:18px;background:var(--surface);border:1px solid var(--line);overflow:hidden}
.n15-menu-group h2{margin:0;padding:18px 18px 6px;color:var(--muted);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.n15-menu-row{display:flex;align-items:center;gap:12px;min-height:56px;width:100%;padding:12px 18px!important;border:0!important;border-radius:0!important;background:transparent!important;color:var(--ink)!important;text-align:left;white-space:normal;font-size:15px!important;line-height:1.35}
.n15-menu-row+.n15-menu-row{border-top:1px solid var(--line)!important}
.n15-menu-row>.svg:first-child{width:22px;height:22px;flex:none;color:var(--accent)}
.n15-menu-row>span:first-of-type{flex:1;min-width:0;overflow-wrap:anywhere}
.n15-menu-row>.svg:last-child{width:17px;height:17px;flex:none;color:var(--muted)}
.n15-menu-row:hover,.n15-menu-row:active{background:var(--surface2)!important}
.n15-menu-row.n15-logout{color:var(--muted)!important}
.n15-menu button:focus-visible,.a4-bottom-nav button:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}
.n15-count{display:inline-flex;align-items:center;justify-content:center;min-width:19px;height:19px;padding:0 5px;border-radius:12px;background:var(--accent);color:var(--surface);font-size:11px;font-weight:700;line-height:1;box-sizing:border-box}
.n15-count[hidden]{display:none!important}
.n15-nav-icon{position:relative;display:inline-flex!important;align-items:center;justify-content:center;height:28px;width:34px;overflow:visible!important}
.n15-nav-icon>.n15-count{position:absolute;top:-3px;left:22px;z-index:1;font-size:10px!important;min-width:17px;height:17px;border:1px solid var(--surface);max-width:none!important}
@media(max-width:900px){
 :root[data-design]{--a4-nav-h:68px;--n15-nav-height:calc(68px + env(safe-area-inset-bottom,0px))}
 :root[data-design] .a4-bottom-nav{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));height:var(--n15-nav-height);min-height:var(--n15-nav-height);box-sizing:border-box;padding:4px max(4px,env(safe-area-inset-right)) env(safe-area-inset-bottom) max(4px,env(safe-area-inset-left));gap:0;background:var(--surface)!important;border-top:1px solid var(--line);box-shadow:none}
 :root[data-design] .a4-bottom-nav button{display:flex;align-items:center;justify-content:center;min-height:60px;gap:4px;padding:5px 0 7px;line-height:1.1;border-radius:0;color:var(--muted);background:transparent!important;box-shadow:none!important}
 :root[data-design] .a4-bottom-nav button.active{color:var(--accent);font-weight:700}
 :root[data-design] .a4-bottom-nav button.active .n15-avatar{outline:2px solid var(--accent);outline-offset:2px}
 :root[data-design] .a4-bottom-nav button>.n15-nav-label{font-size:11px;line-height:14px;max-width:100%;white-space:nowrap}
 :root[data-design] .a4-bottom-nav button .svg{width:24px;height:24px}
 :root[data-design] .a4-bottom-nav button:active{background:var(--soft)!important}
 :root[data-design] .topbar .mobile-menu,:root[data-design] .topbar [data-do="account"]{display:none!important}
 :root[data-design] .m14-thread-menu{display:none!important}
 :root[data-design] .page{padding-bottom:calc(var(--n15-nav-height) + 20px)!important;scroll-padding-bottom:calc(var(--n15-nav-height) + 20px)}
 :root[data-design] body.crm-chat-page .shell{height:calc(var(--a4-vh,100dvh) - var(--n15-nav-height))!important;min-height:0}
 :root[data-design] body.crm-chat-page .page{padding-bottom:0!important}
 :root[data-design] body.crm-chat-page .compose{padding-bottom:8px!important}
 :root[data-design] body.keyboard-open .a4-bottom-nav{display:none!important}
 :root[data-design] body.crm-chat-page.keyboard-open .shell{height:var(--a4-vh,100dvh)!important}
 :root[data-design] body[data-crm-route="menu"] .topbar{display:none!important}
 :root[data-design] body[data-crm-route="menu"] .page{padding-top:calc(20px + env(safe-area-inset-top))!important;overflow-x:clip}
 .n15-menu-head h1{font-size:26px}
 .n15-profile{padding:18px 16px!important;gap:14px;min-height:116px}
 .n15-profile-copy strong{font-size:18px}
 .n15-menu-grid{grid-template-columns:minmax(0,1fr);gap:16px}
 .n15-menu-row{font-size:16px!important;min-height:58px}
}
@media(prefers-reduced-motion:reduce){.n15-menu button,.a4-bottom-nav button{transition:none!important}}
@media(forced-colors:active){.n15-menu-group,.n15-profile,.a4-bottom-nav{border:1px solid CanvasText!important}.a4-bottom-nav button.active{outline:2px solid Highlight;outline-offset:-3px}}
