.app-shell{display:flex;min-height:100vh;background:#f5f6f8}.app-sidebar{flex-shrink:0;display:flex;flex-direction:column;background:#fff;border-right:1px solid #e8e8e8;transition:width .2s ease;width:var(--sidebar-width, 220px)}.app-sidebar.collapsed{--sidebar-width: 72px}.app-sidebar:not(.collapsed){--sidebar-width: 220px}.sidebar-brand{display:flex;align-items:center;gap:10px;height:56px;padding:0 14px;border-bottom:1px solid #f0f0f0}.sidebar-toggle{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;border-radius:8px;background:transparent;color:#333;font-size:18px;cursor:pointer;flex-shrink:0}.sidebar-toggle:hover{background:#f5f5f5}.brand-name{font-size:16px;font-weight:600;color:#1a1a1a;white-space:nowrap;overflow:hidden}.app-sidebar.collapsed .brand-name{width:0;opacity:0}.sidebar-nav{flex:1;padding:12px 10px;display:flex;flex-direction:column;gap:4px}.sidebar-section-label{font-size:12px;color:#8c8c8c;padding:12px 10px 6px;letter-spacing:.02em}.app-sidebar.collapsed .sidebar-section-label{height:0;padding:0;margin:0;overflow:hidden;opacity:0}.sidebar-link{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;color:#434343;text-decoration:none;font-size:14px;transition:background .15s,color .15s}.sidebar-link .anticon{font-size:18px;flex-shrink:0}.sidebar-link:hover{background:#f5f5f5;color:#1677ff}.sidebar-link.active{background:#e6f4ff;color:#1677ff;font-weight:500}.sidebar-link-label{white-space:nowrap;overflow:hidden}.app-sidebar.collapsed .sidebar-link{justify-content:center;padding:10px}.app-sidebar.collapsed .sidebar-link-label{width:0;opacity:0;overflow:hidden}.app-main-wrap{flex:1;min-width:0;display:flex;flex-direction:column}.app-page{flex:1;padding:24px 28px}.app-page-title{font-size:20px;font-weight:600;color:#1a1a1a;margin-bottom:16px}.app-page-card{background:#fff;border-radius:10px;border:1px solid #eee;padding:20px 24px;color:#595959;line-height:1.6}
