@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--sidebar-width:268px;--sidebar-collapsed-width:76px;--sidebar-bg:#fff;--sidebar-border:#e5e7eb;--sidebar-text:#111827;--sidebar-muted:#6b7280;--sidebar-hover:#f7faf8;--sidebar-active:#eef8f1;--sidebar-green:#16a34a}body.dark-mode{--sidebar-bg:#151719;--sidebar-border:#2a2e33;--sidebar-text:#f3f4f6;--sidebar-muted:#9ca3af;--sidebar-hover:#1d2220;--sidebar-active:#17311f}.app-sidebar{position:fixed;inset:0 auto 0 0;z-index:1000;width:var(--sidebar-width);height:100vh;display:flex;flex-direction:column;overflow:hidden;background:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);font-family:"Manrope",sans-serif;transition:width .22s ease,background .2s ease,border-color .2s ease,transform .24s ease}.app-sidebar *{box-sizing:border-box}.sidebar-top{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 18px 14px 22px}.sidebar-brand{display:flex;align-items:center;gap:11px;min-width:0;color:var(--sidebar-text);text-decoration:none}.sidebar-brand-mark{width:36px;height:36px;flex:0 0 36px;display:block;border-radius:11px;object-fit:cover}.sidebar-brand-text{line-height:1.03;white-space:nowrap}.sidebar-brand-text strong{display:block;color:var(--sidebar-text);font-size:1.08rem;font-weight:800}.sidebar-brand-text span{color:var(--sidebar-green);font-size:.86rem;font-weight:700}.sidebar-collapse,.sidebar-mobile-close{width:32px;height:32px;flex:0 0 32px;place-items:center;border:1px solid var(--sidebar-border);border-radius:9px;background:var(--sidebar-bg);color:var(--sidebar-muted);cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease}.sidebar-collapse{display:grid}.sidebar-mobile-close{display:none;font-size:1.35rem;line-height:1}.sidebar-collapse:hover,.sidebar-mobile-close:hover{background:var(--sidebar-hover);color:var(--sidebar-green)}.sidebar-scroll{flex:1;min-height:0;overflow-y:auto;padding:4px 14px 18px;scrollbar-width:thin}.sidebar-section{margin-top:20px}.sidebar-section:first-child{margin-top:4px}.sidebar-section-title{display:block;margin:0 10px 8px;color:var(--sidebar-muted);font-size:.69rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.sidebar-link,.sidebar-disabled,.sidebar-krok-toggle{position:relative;min-height:42px;display:flex;align-items:center;gap:12px;width:100%;padding:9px 11px;border-radius:9px;color:var(--sidebar-text);font-family:inherit;font-size:.87rem;font-weight:600;white-space:nowrap;transition:color .18s ease,background .18s ease}.sidebar-link{text-decoration:none}.sidebar-link:hover,.sidebar-krok-toggle:hover{color:var(--sidebar-green);background:var(--sidebar-hover)}.sidebar-link.active{color:var(--sidebar-green);background:var(--sidebar-active)}.sidebar-link.active::before{content:"";position:absolute;left:-14px;top:7px;bottom:7px;width:3px;border-radius:0 4px 4px 0;background:var(--sidebar-green)}.sidebar-icon{width:20px;height:20px;flex:0 0 20px;display:grid;place-items:center;color:currentColor}.sidebar-icon svg{width:20px;height:20px}.sidebar-krok-toggle{justify-content:space-between;border:0;background:transparent;cursor:pointer;text-align:left;font-weight:700}.sidebar-krok-toggle.open{color:var(--sidebar-green)}.sidebar-chevron{font-size:1.25rem;line-height:1;color:var(--sidebar-muted);transition:transform .18s ease,color .18s ease}.sidebar-krok-toggle.open .sidebar-chevron{transform:rotate(90deg);color:var(--sidebar-green)}.sidebar-krok-children{max-height:0;overflow:hidden;opacity:0;transition:max-height .22s ease,opacity .18s ease}.sidebar-krok-children.open{max-height:90px;opacity:1}.sidebar-child-link{min-height:38px;padding-left:25px;font-size:.82rem}.sidebar-child-link .sidebar-icon{width:17px;height:17px;flex-basis:17px}.sidebar-child-link .sidebar-icon svg{width:17px;height:17px}.sidebar-krok-collapsed-btn{display:none;width:42px;height:42px;margin:12px auto 0;border:0;border-radius:10px;background:transparent;color:var(--sidebar-text);font-family:inherit;font-size:1rem;font-weight:800;cursor:pointer;transition:background .18s ease,color .18s ease}.sidebar-krok-collapsed-btn:hover{background:var(--sidebar-hover);color:var(--sidebar-green)}.sidebar-disabled{color:var(--sidebar-muted);cursor:not-allowed}.sidebar-badge{margin-left:auto;padding:3px 6px;border-radius:999px;background:#f3f4f6;color:#6b7280;font-size:.56rem;font-weight:800;letter-spacing:.03em}body.dark-mode .sidebar-badge{background:#272b30;color:#aab0b8}.sidebar-footer{flex:0 0 auto;margin:0 14px 14px;padding-top:12px;border-top:1px solid var(--sidebar-border)}.sidebar-theme-btn,.sidebar-user{width:100%;display:flex;align-items:center;gap:11px;padding:9px 10px;border:0;border-radius:9px;background:transparent;color:var(--sidebar-text);font:inherit;text-align:left}.sidebar-theme-btn{margin-bottom:5px;cursor:pointer}.sidebar-theme-btn:hover,.sidebar-user:hover{background:var(--sidebar-hover)}.sidebar-user{text-decoration:none;min-width:0}.sidebar-status-dot{width:10px;height:10px;flex:0 0 10px;border-radius:50%;background:#dc2626;box-shadow:0 0 0 3px rgba(220,38,38,.09)}.sidebar-user.signed-in .sidebar-status-dot{background:#16a34a;box-shadow:0 0 0 3px rgba(22,163,74,.09)}.sidebar-user-copy{min-width:0;flex:1}.sidebar-user-copy strong,.sidebar-user-copy span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user-copy strong{color:var(--sidebar-text);font-size:.76rem;font-weight:700}.sidebar-user-copy span{margin-top:2px;color:var(--sidebar-muted);font-size:.67rem;font-weight:600}body.sidebar-collapsed .app-sidebar{width:var(--sidebar-collapsed-width)}body.sidebar-collapsed .sidebar-brand-text,body.sidebar-collapsed .sidebar-section-title,body.sidebar-collapsed .sidebar-link-label,body.sidebar-collapsed .sidebar-badge,body.sidebar-collapsed .sidebar-user-copy,body.sidebar-collapsed .sidebar-theme-label,body.sidebar-collapsed .sidebar-krok-section{display:none}body.sidebar-collapsed .sidebar-krok-collapsed-btn{display:grid;place-items:center}body.sidebar-collapsed .sidebar-top{padding-left:18px;padding-right:13px;flex-direction:column}body.sidebar-collapsed .sidebar-collapse{transform:rotate(180deg)}body.sidebar-collapsed .sidebar-scroll{padding-left:12px;padding-right:12px}body.sidebar-collapsed .sidebar-section{margin-top:12px}body.sidebar-collapsed .sidebar-link,body.sidebar-collapsed .sidebar-disabled,body.sidebar-collapsed .sidebar-theme-btn,body.sidebar-collapsed .sidebar-user{justify-content:center;padding-left:8px;padding-right:8px}body.sidebar-collapsed .sidebar-footer{margin-left:12px;margin-right:12px}body.sidebar-collapsed .sidebar-link.active::before{left:-12px}.sidebar-page-shell{min-height:100vh;margin-left:var(--sidebar-width);transition:margin-left .22s ease}body.sidebar-collapsed .sidebar-page-shell{margin-left:var(--sidebar-collapsed-width)}.sidebar-mobile-menu-btn,.sidebar-mobile-overlay{display:none}
@media(max-width:900px){body.sidebar-collapsed .app-sidebar,.app-sidebar{display:flex;width:min(86vw,300px);transform:translateX(-102%);box-shadow:12px 0 30px rgba(0,0,0,.12)}body.sidebar-mobile-open .app-sidebar{transform:translateX(0)}body.sidebar-collapsed .sidebar-brand-text,body.sidebar-collapsed .sidebar-section-title,body.sidebar-collapsed .sidebar-link-label,body.sidebar-collapsed .sidebar-badge,body.sidebar-collapsed .sidebar-user-copy,body.sidebar-collapsed .sidebar-theme-label,body.sidebar-collapsed .sidebar-krok-section{display:initial}body.sidebar-collapsed .sidebar-krok-collapsed-btn{display:none}body.sidebar-collapsed .sidebar-top,.sidebar-top{padding:18px 18px 14px 22px;flex-direction:row}body.sidebar-collapsed .sidebar-scroll,.sidebar-scroll{padding:4px 14px 18px}body.sidebar-collapsed .sidebar-section{margin-top:20px}body.sidebar-collapsed .sidebar-link,body.sidebar-collapsed .sidebar-disabled,body.sidebar-collapsed .sidebar-theme-btn,body.sidebar-collapsed .sidebar-user{justify-content:flex-start;padding:9px 11px}.sidebar-collapse{display:none}.sidebar-mobile-close{display:grid}.sidebar-page-shell,body.sidebar-collapsed .sidebar-page-shell{margin-left:0}.sidebar-mobile-menu-btn{position:fixed;top:14px;left:14px;z-index:998;width:44px;height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:1px solid var(--sidebar-border);border-radius:12px;background:var(--sidebar-bg);box-shadow:0 4px 16px rgba(0,0,0,.08);cursor:pointer}.sidebar-mobile-menu-btn span{display:block;width:19px;height:2px;border-radius:2px;background:var(--sidebar-text)}.sidebar-mobile-overlay{position:fixed;inset:0;z-index:999;display:block;background:rgba(17,24,39,.42);opacity:0;visibility:hidden;transition:opacity .22s ease,visibility .22s ease}.sidebar-mobile-open .sidebar-mobile-overlay{opacity:1;visibility:visible}body.sidebar-mobile-open{overflow:hidden}body.sidebar-mobile-open .sidebar-mobile-menu-btn{opacity:0;pointer-events:none}}
/* Drawer-only mode used by the landing page: same navigation, never permanently docked. */
body.sidebar-drawer-only .app-sidebar{display:flex;width:min(86vw,300px);transform:translateX(-102%);box-shadow:12px 0 30px rgba(0,0,0,.12)}body.sidebar-drawer-only.sidebar-mobile-open .app-sidebar{transform:translateX(0)}body.sidebar-drawer-only .sidebar-collapse{display:none}body.sidebar-drawer-only .sidebar-mobile-close{display:grid}body.sidebar-drawer-only .sidebar-page-shell{margin-left:0}body.sidebar-drawer-only .sidebar-mobile-overlay{position:fixed;inset:0;z-index:999;display:block;background:rgba(17,24,39,.42);opacity:0;visibility:hidden;transition:opacity .22s ease,visibility .22s ease}body.sidebar-drawer-only.sidebar-mobile-open .sidebar-mobile-overlay{opacity:1;visibility:visible}body.sidebar-drawer-only.sidebar-mobile-open{overflow:hidden}body.sidebar-drawer-only.sidebar-collapsed .sidebar-brand-text,body.sidebar-drawer-only.sidebar-collapsed .sidebar-section-title,body.sidebar-drawer-only.sidebar-collapsed .sidebar-link-label,body.sidebar-drawer-only.sidebar-collapsed .sidebar-badge,body.sidebar-drawer-only.sidebar-collapsed .sidebar-user-copy,body.sidebar-drawer-only.sidebar-collapsed .sidebar-theme-label,body.sidebar-drawer-only.sidebar-collapsed .sidebar-krok-section{display:initial}body.sidebar-drawer-only.sidebar-collapsed .sidebar-krok-collapsed-btn{display:none}body.sidebar-drawer-only .sidebar-top{padding:18px 18px 14px 22px;flex-direction:row}body.sidebar-drawer-only .sidebar-scroll{padding:4px 14px 18px}body.sidebar-drawer-only .sidebar-link,body.sidebar-drawer-only .sidebar-disabled,body.sidebar-drawer-only .sidebar-theme-btn,body.sidebar-drawer-only .sidebar-user{justify-content:flex-start;padding:9px 11px}
