/* Shared cabinet sidebar: no horizontal overflow or visible scrollbar tracks. */
:root[data-ca-live] .shell.clean-shell>.side{box-sizing:border-box;min-width:0;width:100%;max-width:100%;overflow-x:hidden;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}
:root[data-ca-live] .shell.clean-shell>.side::-webkit-scrollbar{display:none;width:0;height:0}
:root[data-ca-live] .shell.clean-shell>.side nav{min-width:0;max-width:100%;width:100%}
:root[data-ca-live] .shell.clean-shell>.side .nav-btn{box-sizing:border-box;min-width:0;max-width:100%;width:100%;white-space:normal;overflow-wrap:anywhere;text-decoration:none}
:root[data-ca-live] .shell.clean-shell>.side .brand,:root[data-ca-live] .shell.clean-shell>.side .side-bottom{min-width:0;max-width:100%;overflow-wrap:anywhere}
:root[data-ca-live] .shell.clean-shell>.side .icon{flex-shrink:0}
.ca-side-close,.ca-side-backdrop{display:none}
@media(max-width:900px){
 :root[data-ca-live] .shell.clean-shell>.side{width:min(300px,calc(100vw - 56px));max-width:calc(100vw - 56px);z-index:10002;overscroll-behavior:contain;padding-top:48px}
 .shell.menu-open>.ca-side-backdrop{display:block;position:fixed;inset:0;z-index:10001;border:0;border-radius:0;padding:0;background:rgba(20,35,43,.22);touch-action:manipulation}
 .shell.menu-open>.side>.ca-side-close{display:flex;align-items:center;justify-content:center;position:absolute;right:10px;top:8px;width:36px;height:36px;border:1px solid #dce3e7;border-radius:8px;background:#fff;color:#14232b;font:inherit;font-size:26px;line-height:1;cursor:pointer}
 body.ca-sidebar-open{overflow:hidden}
}

/* Identical geometry and word wrapping in all three cabinet shells. */
:root[data-ca-live] .shell.clean-shell>.side .nav-btn[data-nav-key]{display:grid;grid-template-columns:20px minmax(0,1fr) auto;column-gap:10px;row-gap:2px;align-items:center;min-height:46px;padding:11px 12px;font-size:15px;line-height:1.4;text-align:left;white-space:normal;word-break:normal;overflow-wrap:normal;hyphens:none}
:root[data-ca-live] .shell.clean-shell>.side .nav-btn[data-nav-key]>.icon{grid-column:1;grid-row:1;width:20px;height:20px;min-width:20px;margin:0;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;justify-self:center}
:root[data-ca-live] .shell.clean-shell>.side .ca-nav-label{grid-column:2;grid-row:1;min-width:0;white-space:normal;word-break:normal;overflow-wrap:normal;hyphens:none}
:root[data-ca-live] .shell.clean-shell>.side [data-nav-key=mentorship] .ca-nav-label,:root[data-ca-live] .shell.clean-shell>.side [data-nav-key=messages] .ca-nav-label{white-space:nowrap}
:root[data-ca-live] .shell.clean-shell>.side .nav-btn[data-nav-key]>.beta{grid-column:3;grid-row:1;justify-self:end;white-space:nowrap;margin:0;padding:2px 4px;font-size:10px;line-height:1.4}
:root[data-ca-live] .shell.clean-shell>.side .nav-btn[data-nav-key]>.nav-lock{grid-column:2/-1;grid-row:2;justify-self:start;white-space:nowrap;margin:0;font-size:11px;line-height:1.4}

:root[data-ca-live] .shell.clean-shell>.side .ca-nav-separator{border:0;border-top:1px solid #dfe3e5;margin:20px 12px}
:root[data-ca-live] .shell.clean-shell>.side .nav-btn--locked{color:#9da5a8;background:transparent}

/* The main-site link is a separate final row, never inline with sign-out. */
:root[data-ca-live] .shell.clean-shell>.side .side-bottom>a[href="/"]{display:block;width:100%;margin-top:16px;padding:0;clear:both}
