.sidebar{color:#111827;z-index:2001;background:#fff;border-right:1px solid #e8edf3;flex-direction:column;width:238px;height:100dvh;padding:24px 14px 18px;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.brand{letter-spacing:-.045em;align-items:center;gap:10px;margin-bottom:34px;padding:3px 10px 0;font-size:1.55rem;font-weight:800;display:flex}.brand img{object-fit:contain;width:31px;height:31px}.brand-name span{color:#16a34a}.sidebar nav{flex-direction:column;flex:1;gap:5px;display:flex}.sidebar nav a{color:#64748b;border-radius:13px;align-items:center;gap:12px;min-height:48px;padding:10px 12px;font-size:.91rem;font-weight:650;text-decoration:none;display:flex}.sidebar nav a:hover{color:#2563eb;background:#f8fafc}.sidebar nav a.active{color:#2563eb;background:#eff6ff}.nav-icon{flex:0 0 22px;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}.nav-icon svg{fill:currentColor;width:21px;height:21px}.nav-label-mobile{display:none}.sidebar-version{color:#94a3b8;text-align:center;border-top:1px solid #edf1f5;margin-top:18px;padding:15px 8px 0;font-size:.78rem;text-decoration:none}.overlay{display:none}@media (width>=1200px){.sidebar{box-shadow:4px 0 18px #0f172a06}}@media (width<=1199px){.sidebar{width:100%;height:auto;min-height:calc(72px + env(safe-area-inset-bottom));padding:6px 7px env(safe-area-inset-bottom);-webkit-backdrop-filter:blur(18px);background:#fffffff7;border-top:1px solid #e5e7eb;border-right:0;inset:auto 0 0;overflow:hidden;box-shadow:0 -6px 24px #0f172a1a}.sidebar .brand,.sidebar .sidebar-version{display:none}.sidebar nav{flex:none;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;gap:2px;width:100%;height:60px;min-height:60px;padding:0;display:grid;overflow:hidden}.sidebar nav a{color:#64748b;text-align:center;white-space:nowrap;background:0 0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:0;height:58px;min-height:58px;padding:5px 2px 4px;font-size:.65rem;font-weight:700;line-height:1;display:flex;position:relative}.sidebar nav a:hover{color:#2563eb;background:#f8fafc}.sidebar nav a.active{color:#2563eb;background:#eff6ff}.sidebar nav a.active:after{content:"";background:#2563eb;border-radius:999px;width:20px;height:3px;position:absolute;bottom:1px;left:50%;transform:translate(-50%)}.nav-icon{flex:0 0 23px;width:23px;height:23px}.nav-icon svg{width:22px;height:22px}.nav-label-desktop{display:none}.nav-label-mobile{display:block}.overlay,.overlay.show{display:none!important}}@media (width<=360px){.sidebar nav a{font-size:.6rem}}.navbar{z-index:1200;-webkit-backdrop-filter:blur(14px);background:#fffffff5;border-bottom:1px solid #edf1f5;justify-content:space-between;align-items:center;gap:12px;height:60px;min-height:60px;padding:8px 18px;display:flex;position:sticky;top:0;box-shadow:0 1px 8px #0f172a09}.navbar h3{color:#111827;flex:1;align-items:center;gap:9px;min-width:0;margin:0;font-size:1rem;font-weight:800;display:flex}.navbar h3:before{content:"";background:url(/sk_logo_v1.png) 50%/contain no-repeat;flex:0 0 28px;width:28px;height:28px;display:block}.navbar>button:last-child{color:#1d4ed8;background:#eff6ff;border:1px solid #dbeafe;border-radius:11px;min-height:38px;padding:7px 12px;font-size:.78rem;font-weight:750}.navbar>button:last-child:hover{background:#dbeafe}.menu-btn{display:none!important}@media (width<=380px){.navbar{padding-left:13px;padding-right:13px}.navbar h3{font-size:.94rem}.navbar h3:before{flex-basis:26px;width:26px;height:26px}.navbar>button:last-child{padding-inline:10px}}.install-banner{z-index:3000;color:#fff;background:#16a34a;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;font-size:14px;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 2px 6px #00000026}.install-banner span{flex:1}.install-banner-actions{align-items:center;gap:8px;display:flex}.install-btn{color:#16a34a;cursor:pointer;background:#fff;border:none;border-radius:6px;padding:6px 14px;font-size:13px;font-weight:600}.install-dismiss{color:#fff;cursor:pointer;background:0 0;border:none;padding:4px;font-size:16px;line-height:1}.install-banner{border-radius:0 0 16px 16px;min-height:58px;padding:9px 13px;box-shadow:0 5px 18px #00000024}.install-btn{border-radius:11px;min-height:40px;padding:7px 14px}.install-dismiss{border-radius:10px;min-width:36px;min-height:36px}@media (width<=480px){.install-banner{gap:8px;padding:8px 10px;font-size:13px}.install-btn{padding-inline:11px;font-size:12px}}.offline-banner{z-index:2000;color:#fff;text-align:center;bottom:0;left:0;right:0;bottom:calc(76px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(10px);padding:8px 14px;background:#111827f5;border-radius:14px;width:auto;max-width:560px;margin:0 auto;padding:10px 14px;font-size:.82rem;font-weight:600;position:fixed;left:12px;right:12px;box-shadow:0 8px 24px #00000029}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;min-height:100%}html{-webkit-text-size-adjust:100%;background:#f6f7fb}body{color:#111827;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;overscroll-behavior-y:none;background:#f6f7fb;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Arial,sans-serif}a{color:inherit}button,input,select,textarea{-webkit-tap-highlight-color:transparent;font-family:inherit}button{cursor:pointer}.layout{width:100%;height:100dvh;display:block;overflow:hidden}main{width:100%;min-width:0;height:100dvh;padding-bottom:calc(78px + env(safe-area-inset-bottom));scrollbar-width:thin;background:#f7f9fc;margin-left:0;overflow:hidden auto}@media (width>=1200px){main{width:calc(100% - 240px);margin-left:240px;padding-bottom:0}}.page-header{justify-content:space-between;align-items:center;margin-bottom:30px;display:flex}.page-header h1{color:#111827;letter-spacing:-.025em;margin-bottom:8px;font-size:2rem;font-weight:800;line-height:1.15}.page-header p{color:#6b7280;line-height:1.5}.auth-layout{flex:1;justify-content:center;align-items:center;width:100%;min-height:100dvh;padding:20px;display:flex}button,a{transition:transform .16s,background-color .16s,border-color .16s,box-shadow .16s,color .16s}button:active,a:active{transform:scale(.98)}@media (width<=767px){.page-header{flex-direction:column;align-items:flex-start;gap:15px;margin-bottom:22px}.page-header h1{font-size:1.55rem}}@media (width<=1199px){main{padding-bottom:calc(82px + env(safe-area-inset-bottom))}}.app-route-loading{color:#64748b;place-items:center;min-height:50vh;padding:2rem;font-size:.95rem;display:grid}
