body.jsos-admin-layout { margin:0; padding:0; }
.jsos-admin-layout .admin-shell { display:flex; align-items:flex-start; min-height:100vh; }
.jsos-admin-layout .admin-main { flex:1; min-width:0; padding:0 24px 40px; }
.jsos-admin-layout [data-jsos-sidebar] { display:flex; flex-direction:column; box-sizing:border-box; width:176px; flex:0 0 176px; height:100dvh; position:sticky; top:0; padding:18px 12px; background:#0f1a2e; border-right:1px solid #26334a; color:#eaf2ff; }
.jsos-admin-layout .sidebar-brand { color:#d4af37; font-size:25px; font-weight:800; text-decoration:none; }
.jsos-admin-layout .sidebar-cn { color:#fff; font-size:16px; margin:8px 0 10px; line-height:1.5; }
.jsos-admin-layout .sidebar-nav { display:flex; flex-direction:column; gap:3px; flex:1 1 auto; min-height:0; overflow-y:auto; overscroll-behavior:contain; margin:0; }
.jsos-admin-layout .sidebar-nav .nav-item { display:block; padding:10px 8px; color:#eaf2ff; font-size:15px; line-height:1.35; text-decoration:none; border-radius:7px; }
.jsos-admin-layout .sidebar-nav .nav-item:hover { background:#263b61; }
.jsos-admin-layout .admin-sidebar-footer { color:#a5b4cf; font-size:12px; padding-top:12px; flex-shrink:0; }
.jsos-admin-layout .admin-topnav { position:sticky; top:0; z-index:15; margin:0 -24px 24px; padding:10px 16px; background:#131f34; color:#edf3ff; border-bottom:1px solid #30405b; display:flex; flex-direction:column; flex-wrap:nowrap; align-items:stretch; gap:5px; }
.jsos-admin-layout .admin-nav-group { min-width:0; max-width:100%; box-sizing:border-box; display:flex; flex-wrap:wrap; gap:5px; align-items:center; }
.jsos-admin-layout .admin-nav-label { font-size:12px; color:#c5cee0; min-width:58px; padding:5px; }
.jsos-admin-layout .admin-topnav .admin-nav-link { display:inline-flex; align-items:center; gap:5px; font-size:14px; padding:9px 11px; border-radius:7px; color:#edf3ff; text-decoration:none; }
.jsos-admin-layout .admin-topnav .admin-nav-link:hover { background:#293e60; color:#fff; }
.jsos-admin-layout .admin-topnav .admin-nav-link[aria-current] { background:#315cb2; color:#fff; font-weight:700; }
.jsos-admin-layout .admin-topnav .sb-ww-count { background:#743e2c; color:#fff; font-size:11px; border-radius:20px; padding:3px 6px; }
.jsos-admin-layout a:focus-visible { outline:3px solid #efc966; outline-offset:2px; }
.circle-entry { max-width:1200px; margin:0 auto 24px; padding:20px; border:1px solid #385475; background:#15283e; color:#edf3ff; border-radius:12px; }
.circle-entry h2 { margin:0 0 8px; font-size:20px; }
.circle-entry p { color:#c1cde0; line-height:1.6; }
.circle-entry-links { display:flex; flex-wrap:wrap; gap:10px; }
.circle-entry-links a { color:#fff; background:#315cb2; border-radius:8px; padding:11px 14px; text-decoration:none; }
@media(max-width:760px) {
  .jsos-admin-layout .admin-shell { display:block; }
  .jsos-admin-layout [data-jsos-sidebar] { position:static; display:flex; width:100%; height:auto; padding:10px 12px; }
  .jsos-admin-layout .sidebar-cn, .jsos-admin-layout .admin-sidebar-footer { display:none; }
  .jsos-admin-layout .sidebar-brand { font-size:20px; margin-bottom:6px; }
  .jsos-admin-layout .sidebar-nav { flex-direction:row; overflow-x:auto; overflow-y:hidden; }
  .jsos-admin-layout .sidebar-nav .nav-item { flex-shrink:0; white-space:nowrap; }
  .jsos-admin-layout .admin-main { padding:0 12px 30px; }
  .jsos-admin-layout .admin-topnav { margin:0 -12px 16px; position:static; padding:8px; }
  .jsos-admin-layout .admin-nav-group { flex-wrap:nowrap; overflow-x:auto; }
  .jsos-admin-layout .admin-nav-label, .jsos-admin-layout .admin-nav-link { flex-shrink:0; white-space:nowrap; }
}
