:root{--app-primary: #1890ff;--app-primary-bg: #e6f4ff;--app-bg-layout: #f5f5f5;--app-bg-container: #ffffff;--app-bg-hover: #f5f5f5;--app-menu-selected-bg: #f0f0f0;--app-border: #f0f0f0;--app-border-strong: #d9d9d9;--app-text: rgba(0, 0, 0, .88);--app-text-secondary: rgba(0, 0, 0, .45);--app-menu-item-color: rgba(0, 0, 0, .65);--app-menu-item-hover-color: rgba(0, 0, 0, .88);--app-shadow-sm: 0 1px 2px rgba(0, 0, 0, .03);--app-shadow-lg: 0 16px 48px rgba(0, 0, 0, .08);--app-radius: 6px;--app-radius-lg: 8px}*{box-sizing:border-box}html,body,#root{height:100%;min-height:0;margin:0}body{color:var(--app-text);background:var(--app-bg-layout)}.login-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--app-bg-layout)}.login-panel{width:min(420px,100%);padding:32px;background:var(--app-bg-container);border:1px solid var(--app-border);border-radius:var(--app-radius-lg);box-shadow:var(--app-shadow-lg)}.brand-mark{width:48px;height:48px;display:grid;place-items:center;margin-bottom:16px;color:var(--app-primary);background:var(--app-primary-bg);border-radius:var(--app-radius-lg);font-size:24px}.login-form{margin-top:28px}.app-layout{height:100vh;min-height:0;overflow:hidden;background:var(--app-bg-layout)}.app-sider{position:relative;height:100vh;overflow:visible;background:var(--app-bg-container)!important;border-right:1px solid var(--app-border)}.app-sider .ant-layout-sider-children{position:relative;height:100%;min-height:0;display:flex;flex-direction:column;overflow:visible}.app-brand{height:48px;display:flex;align-items:center;gap:12px;padding:0 16px;border-bottom:1px solid var(--app-border)}.app-brand-icon{width:36px;height:36px;display:grid;place-items:center;flex:none;color:var(--app-primary);background:var(--app-primary-bg);border-radius:var(--app-radius-lg);font-size:20px}.app-brand-text{color:var(--app-text);font-size:16px;white-space:nowrap}.app-menu-scroll{flex:1;min-height:0;padding:8px 0;overflow-x:hidden;overflow-y:auto}.app-menu{padding:0 8px;border-inline-end:0!important}.app-menu .ant-menu-item{height:40px;color:var(--app-menu-item-color);line-height:40px;margin-block:4px;border-radius:var(--app-radius)}.app-menu .ant-menu-item a,.app-menu .ant-menu-item .anticon{color:inherit}.app-menu.ant-menu-light .ant-menu-item-selected{color:var(--app-menu-item-hover-color);background:var(--app-menu-selected-bg)}.app-menu.ant-menu-light .ant-menu-item-selected a,.app-menu.ant-menu-light .ant-menu-item-selected .anticon{color:inherit}.app-menu.ant-menu-light .ant-menu-item:hover{color:var(--app-menu-item-hover-color);background:var(--app-bg-hover)}.app-sider-context{flex:none;padding:10px 12px 0;border-top:1px solid var(--app-border)}.app-sider-context .topbar-actions,.app-sider-context .topbar-actions .ant-space-item,.app-sider-context .membership-select{width:100%}.app-sider-footer{flex:none;padding:8px 12px 14px}.app-user-card{width:100%;min-height:48px;display:flex;align-items:center;gap:10px;padding:6px 8px;color:inherit;text-align:left;background:transparent;border:0;border-radius:var(--app-radius-lg);cursor:pointer}.app-user-card:hover,.app-user-card:focus-visible{background:var(--app-bg-hover);outline:none}.app-user-avatar{flex:none;color:#fff;background:var(--app-primary)}.app-user-meta{min-width:0;display:flex;flex-direction:column;line-height:1.25}.app-user-name,.app-user-summary{max-width:148px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-main-layout{height:100vh;min-width:0;min-height:0;overflow:hidden;background:var(--app-bg-layout)}.app-sider-trigger.ant-btn{position:absolute;top:12px;right:-12px;z-index:20;width:24px;min-width:24px;height:24px;padding:0;color:var(--app-text-secondary);background:var(--app-bg-container);border:1px solid var(--app-border);border-radius:50%;box-shadow:0 2px 8px #00000014}.app-sider-trigger.ant-btn:hover,.app-sider-trigger.ant-btn:focus-visible{color:var(--app-primary);background:var(--app-bg-container)!important;border-color:var(--app-border-strong)}.app-sider-trigger .ant-btn-icon{font-size:12px}.app-content{flex:1;min-width:0;min-height:0;padding:24px 32px 40px;overflow:auto}.page-shell{width:100%;max-width:none;margin:0}.page-shell-meta{min-height:22px;margin-bottom:8px}.page-shell-breadcrumb{font-size:13px}.page-shell-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.page-shell-title-block{min-width:0}.page-shell-extra{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:none}.page-shell-body{width:100%}.page-shell-header h2.ant-typography{margin:0;color:var(--app-text);font-size:22px;line-height:1.3;letter-spacing:0}.ant-layout-sider-collapsed .app-brand{justify-content:center;padding:0}.ant-layout-sider-collapsed .app-brand-text,.ant-layout-sider-collapsed .app-sider-context{display:none}.ant-layout-sider-collapsed .app-sider-footer{padding:10px 12px 14px}.ant-layout-sider-collapsed .app-user-card{justify-content:center;padding:6px 0}.ant-layout-sider-collapsed .app-user-meta{display:none}.topbar-actions{padding-right:0}.membership-select{width:220px}.page-stack{width:100%}.toolbar,.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.panel-heading h4{margin:0}.panel{width:100%;padding:18px;background:var(--app-bg-container);border:1px solid var(--app-border);border-radius:var(--app-radius-lg);box-shadow:var(--app-shadow-sm)}.page-stack>.ant-table-wrapper{width:100%;overflow:hidden;background:var(--app-bg-container);border:1px solid var(--app-border);border-radius:var(--app-radius-lg);box-shadow:var(--app-shadow-sm)}.page-stack>.ant-table-wrapper .ant-table{background:transparent}.page-stack>.ant-table-wrapper .ant-pagination{margin:16px 16px 16px 0}.split-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.metric-card{border-radius:var(--app-radius-lg);border-color:var(--app-border)}.selected-row td{background:var(--app-primary-bg)!important}.filter-control{width:180px}.search-input{width:260px}@media (max-width: 768px){.login-panel{padding:24px}.app-content{padding:16px}.page-shell-header{align-items:stretch;flex-direction:column}.page-shell-extra{justify-content:flex-start}.page-shell-header{margin-bottom:14px}.membership-select,.filter-control,.search-input{width:100%}.toolbar,.panel-heading{align-items:stretch;flex-direction:column}}
