.account-actions { display:flex; align-items:center; gap:5px; margin-top:9px; }
.account-actions .logout { display:inline-flex; align-items:center; width:auto; height:28px; margin:0; padding:0 7px; }
.account-actions .admin-settings { display:inline-grid; place-items:center; width:28px; height:28px; margin:0; padding:0; border:1px solid transparent; border-radius:3px; color:#605e5c; background:transparent; font-size:15px; line-height:1; cursor:pointer; }
.account-actions .admin-settings[hidden] { display:none; }
.account-actions .admin-settings:hover { border-color:#c8c6c4; color:#005a9e; background:#f3f2f1; }
.shell { height:100vh; min-height:0; overflow:hidden; }
.shell>aside,.shell>main { height:100%; min-height:0; overflow:hidden; }
.sidebar-scroll { flex:1 1 0; min-height:0; overflow-y:auto; overflow-x:hidden; overscroll-behavior:contain; scrollbar-gutter:stable; scrollbar-width:thin; scrollbar-color:#c8c6c4 transparent; }
.sidebar-scroll::-webkit-scrollbar { width:8px; }
.sidebar-scroll::-webkit-scrollbar-thumb { border:2px solid transparent; border-radius:8px; background:#c8c6c4; background-clip:padding-box; }
.sidebar-scroll::-webkit-scrollbar-track { background:transparent; }
.sidebar-scroll .settings { margin-top:16px; }
.security { flex:none; margin-top:auto; box-shadow:0 -1px 0 #edebe9; }
.session-list { padding:4px 14px 18px; }
.session-list[hidden] { display:none; }
.session-list-title { position:sticky; top:0; z-index:2; display:flex; align-items:center; justify-content:space-between; padding:9px 3px; color:#605e5c; background:#fff; box-shadow:0 1px 0 #edebe9; font-size:10px; letter-spacing:.04em; }
.session-list-items { display:grid; gap:3px; }
.session-list-items button { width:100%; padding:9px 10px; overflow:hidden; border:0; border-radius:3px; color:#484644; background:transparent; font:11px "Segoe UI",sans-serif; text-align:left; text-overflow:ellipsis; white-space:nowrap; cursor:pointer; }
.session-list-items button:hover { color:#005a9e; background:#f3f2f1; }
.header-context { display:flex; align-items:center; gap:7px; min-width:0; }
.site-link { display:block; min-width:0; max-width:min(34vw,380px); overflow:hidden; color:#0078d4; font-size:10px; line-height:1.3; text-decoration:none; text-overflow:ellipsis; white-space:nowrap; }
.site-link::before { content:'·'; margin-right:7px; color:#a19f9d; }
.site-link:hover { color:#005a9e; text-decoration:underline; }
.site-link[hidden] { display:none; }
.editor-link { display:inline-flex; flex:0 0 auto; align-items:center; min-height:24px; margin-left:3px; padding:3px 8px; border:1px solid #b8d6ed; border-radius:3px; color:#005a9e; background:#eff6fc; font-family:inherit; font-size:10px; font-weight:600; line-height:1; text-decoration:none; white-space:nowrap; cursor:pointer; }
.editor-link:hover { border-color:#0078d4; color:#fff; background:#0078d4; }
.editor-link[hidden] { display:none; }
@supports (height:100dvh) { .shell { height:100dvh; } }
.mobile-sidebar-toggle,.mobile-sidebar-close,.mobile-sidebar-backdrop { display:none; }

@media(max-width:760px) {
  .shell>aside {
    position:fixed;
    inset:0 auto 0 0;
    z-index:102;
    display:flex;
    width:min(86vw,320px);
    height:100vh;
    visibility:hidden;
    transform:translateX(-102%);
    transition:transform .2s ease,visibility 0s linear .2s;
    box-shadow:8px 0 28px #00000030;
  }
  .shell.mobile-sidebar-open>aside {
    visibility:visible;
    transform:translateX(0);
    transition:transform .2s ease;
  }
  .mobile-sidebar-backdrop {
    position:fixed;
    inset:0;
    z-index:101;
    width:100%;
    height:100%;
    padding:0;
    border:0;
    background:#172b3d73;
    opacity:0;
    cursor:pointer;
  }
  .shell.mobile-sidebar-open>.mobile-sidebar-backdrop { display:block; opacity:1; }
  .mobile-sidebar-toggle {
    position:absolute;
    left:12px;
    display:grid;
    place-items:center;
    width:36px;
    height:36px;
    padding:0;
    border:1px solid #d8d8d8;
    border-radius:4px;
    color:#323130;
    background:#fff;
    cursor:pointer;
  }
  .mobile-sidebar-toggle:hover { color:#005a9e; background:#f3f2f1; }
  .mobile-sidebar-toggle svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; }
  .mobile-sidebar-close {
    display:grid;
    place-items:center;
    flex:0 0 32px;
    width:32px;
    height:32px;
    margin-left:auto;
    padding:0;
    border:0;
    border-radius:4px;
    color:#605e5c;
    background:transparent;
    font-size:24px;
    line-height:1;
    cursor:pointer;
  }
  .mobile-sidebar-close:hover { color:#005a9e; background:#f3f2f1; }
  .shell>main>header { position:relative; padding-left:58px; }
  .shell>main>header>div:first-child { min-width:0; }
  .shell>main>header>div:first-child strong,
  .shell>main>header>div:first-child span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .header-context { max-width:58vw; }
  .site-link { display:none; }
  @supports (height:100dvh) { .shell>aside { height:100dvh; } }
}

@media(prefers-reduced-motion:reduce) {
  .shell>aside { transition:none!important; }
}
