:root{--primary:#1677ff;--primary-hover:#0958d9;--primary-light:#e6f4ff;--primary-border:#bae0ff;--primary-ring:#1677ff1a;--page-bg:#f0f2f5;--text-main:#1a2332;--text-soft:#8c9bab;--text-body:#333;--success:#52c41a;--success-bg:#f6ffed;--warning:#fa8c16;--warning-bg:#fff7e6;--danger:#ff4d4f;--danger-bg:#fff1f0;--muted:#8c9bab;--muted-bg:#f5f5f5;--sidebar:#001529;--sidebar-active:#0d2137;--sidebar-text:#8ba5bf;--sidebar-text-hover:#d0e4f7;--sidebar-text-active:#fff;--sidebar-group:#4a6783;--sidebar-border:#0d2137;--sidebar-width:220px;--header-height:56px;--content-padding:24px;--card-radius:8px;--org-tree-width:260px;--account-tree-width:300px;--line:#e8edf2;--line-soft:#f0f2f5;--input-border:#d9e0e8}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{min-height:100vh;color:var(--text-main);background:var(--page-bg);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif}button,input{font:inherit}button{cursor:pointer}#app{min-height:100vh}.platform-loading-overlay{z-index:12000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);pointer-events:all;background:#ffffff6b;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.platform-loading-spinner{border:3px solid #e8ebf3;border-top-color:var(--primary);border-right-color:var(--primary);border-radius:50%;width:34px;height:34px;animation:.75s linear infinite platformSpin;display:inline-block}@keyframes platformSpin{to{transform:rotate(360deg)}}.boot-screen,.login-page{background:var(--page-bg);justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.login-bg{background:radial-gradient(circle at 20% 20%,#1677ff1f,#0000 28%),radial-gradient(circle at 80% 15%,#52c41a14,#0000 28%),linear-gradient(135deg,#e6f4ff 0%,#f0f2f5 58%,#f6ffed 100%);position:absolute;inset:0}.login-card,.boot-card{z-index:1;background:#fffffff0;border:1px solid #fffc;border-radius:24px;width:400px;position:relative;overflow:hidden;box-shadow:0 28px 80px #0a192924}.boot-card{align-items:center;gap:14px;width:auto;padding:18px 22px;font-size:14px;font-weight:700;display:flex}.boot-logo,.brand-mark{color:#fff;background:var(--primary);justify-content:center;align-items:center;display:inline-flex;box-shadow:0 14px 30px #1677ff47}.boot-logo{border-radius:12px;width:36px;height:36px}.login-card{padding:40px 32px 30px}.orb{filter:blur(26px);pointer-events:none;border-radius:999px;width:190px;height:190px;position:absolute}.orb-a{background:#1677ff1a;top:-110px;right:-92px}.orb-b{background:#1677ff1f;bottom:-110px;left:-110px}.login-brand{z-index:1;text-align:center;flex-direction:column;align-items:center;margin-bottom:32px;display:flex;position:relative}.brand-mark{letter-spacing:-.05em;border-radius:16px;width:56px;height:56px;margin-bottom:16px;font-weight:900}.login-brand h1{letter-spacing:-.04em;margin-bottom:8px;font-size:24px}.login-brand p{color:var(--text-soft);font-size:14px}.login-form{z-index:1;gap:18px;display:grid;position:relative}.login-form label{color:var(--text-body);gap:8px;font-size:14px;font-weight:700;display:grid}.login-form input{width:100%;height:42px;color:var(--text-body);border:1px solid #d9d9d9;border-radius:10px;outline:none;padding:0 13px;transition:border-color .2s,box-shadow .2s}.login-form input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #1677ff1a}.captcha-row{grid-template-columns:1fr 104px;gap:12px;display:grid}.captcha-code{height:42px;color:var(--primary);cursor:pointer;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:10px;justify-content:center;align-items:center;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px;font-weight:900;transition:border-color .2s,opacity .2s;display:flex;overflow:hidden}.captcha-code:hover{border-color:var(--primary)}.captcha-code:disabled{cursor:wait;opacity:.72}.captcha-code img{object-fit:cover;width:100%;height:100%}.form-error,.global-error{color:var(--danger);background:#fff2f0;border:1px solid #ffccc7;border-radius:10px;padding:10px 12px;font-size:13px}.login-submit,.primary-action{color:#fff;background:var(--primary);border:0;border-radius:10px;transition:background .2s,transform .2s;box-shadow:0 10px 24px #1677ff3d}.login-submit{height:42px;margin-top:4px;font-size:14px;font-weight:800}.login-submit:hover,.primary-action:hover{background:var(--primary-hover);transform:translateY(-1px)}.login-card footer{z-index:1;text-align:center;color:#9ca3af;margin-top:30px;font-size:12px;position:relative}.platform-shell{background:var(--page-bg);height:100vh;display:flex;overflow:hidden}.sidebar{width:var(--sidebar-width);color:var(--sidebar-text);background:var(--sidebar);flex-direction:column;flex-shrink:0;transition:width .3s;display:flex}.sidebar.collapsed{width:64px}.sidebar-logo{height:var(--header-height);border-bottom:1px solid var(--sidebar-border);align-items:center;gap:10px;padding:0 20px;display:flex}.logo-box{color:#fff;background:var(--primary);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:900;display:inline-flex}.logo-copy{white-space:nowrap;gap:2px;display:grid}.logo-copy strong{color:#fff;font-size:15px}.logo-copy span{color:var(--sidebar-text);opacity:.85;font-size:11px}.sidebar-menu{scrollbar-width:thin;scrollbar-color:#1e3a5f transparent;flex:1;padding:16px 0 12px;overflow-y:auto}.sidebar-menu::-webkit-scrollbar{width:4px}.sidebar-menu::-webkit-scrollbar-track{background:0 0}.sidebar-menu::-webkit-scrollbar-thumb{background-color:#1e3a5f;border-radius:2px}.menu-group{padding-bottom:12px}.group-items{gap:0;padding:0;display:grid}.group-title,.menu-item{width:100%;color:inherit;background:0 0;border:0}.group-title{color:var(--sidebar-group);letter-spacing:.5px;text-transform:uppercase;justify-content:space-between;align-items:center;padding:0 20px 6px;font-size:11px;font-weight:500;display:flex}.chevron{transition:transform .2s}.chevron.open{transform:rotate(180deg)}.menu-item{min-height:40px;color:var(--sidebar-text);text-align:left;border:0;border-left:3px solid #0000;border-radius:0;align-items:center;gap:9px;padding:9px 20px;font-size:13.5px;font-weight:500;transition:background .2s,color .2s,border-color .2s;display:flex}.collapsed .menu-item{border-radius:10px;justify-content:center;margin:4px 8px;padding:0}.item-icon{color:currentColor;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;display:inline-flex}.platform-menu-icon{color:currentColor;display:block}.platform-menu-icon-fallback{color:currentColor;font-size:12px;font-weight:900;line-height:1}.menu-item:hover{color:var(--sidebar-text-hover);background:var(--sidebar-active)}.menu-item.active{color:var(--sidebar-text-active);background:var(--sidebar-active);border-left-color:var(--primary);font-weight:600}.menu-item.active:hover{color:var(--sidebar-text-active);background:var(--sidebar-active)}.workspace{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{height:var(--header-height);padding:0 var(--content-padding);border-bottom:1px solid var(--line);z-index:2;background:#fff;justify-content:space-between;align-items:center;display:flex;box-shadow:0 1px 4px #00152914}.topbar-left,.topbar-user-menu{align-items:center;gap:18px;display:flex}.topbar-user-menu{position:relative}.topbar-user-trigger{cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:4px 8px 4px 4px;display:inline-flex}.topbar-user-trigger:hover,.topbar-user-menu:focus-within .topbar-user-trigger{background:#f6f7fb}.user-menu-chevron{color:var(--text-soft);font-size:12px;line-height:1;transition:transform .2s}.user-menu-chevron.open{transform:rotate(180deg)}.user-dropdown{z-index:20;background:#fff;border:1px solid #eef0f4;border-radius:12px;min-width:168px;padding:6px 0;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 32px #0a19291f}.user-dropdown-item{width:100%;color:var(--text-body);text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:10px 16px;font-size:14px;font-weight:600;display:flex}.user-dropdown-item :deep(svg){color:var(--primary);flex-shrink:0}.user-dropdown-item:hover{background:#f8f9fc}.user-dropdown-item.logout-item{color:#6b7280}.user-dropdown-item.logout-item :deep(svg){color:#6b7280}.user-dropdown-item.logout-item:hover{color:var(--danger)}.user-dropdown-item.logout-item:hover :deep(svg){color:var(--danger)}.user-dropdown-divider{background:#eef0f4;height:1px;margin:4px 0}.collapse-btn{color:#6b7280;background:0 0;border:0;border-radius:8px;width:34px;height:34px}.collapse-btn:hover{background:#f3f4f6}.breadcrumb{align-items:center;gap:8px;font-size:13px;font-weight:400;display:flex}.breadcrumb span,.breadcrumb i{color:var(--text-soft);font-style:normal}.breadcrumb strong{color:var(--primary);font-weight:500}.avatar{color:#fff;background:var(--primary);border-radius:999px;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:600;display:inline-flex}.user-copy{gap:1px;font-size:12px;display:grid}.user-copy strong{color:var(--text-body);font-size:14px}.user-copy span{color:var(--text-soft)}.topbar,.tabbar{flex-shrink:0}.tabbar{min-height:40px;padding:6px var(--content-padding) 0;border-bottom:1px solid var(--line);background:#fff;flex-shrink:0;align-items:flex-end;gap:4px;display:flex;overflow-x:auto}.tabbar::-webkit-scrollbar{height:4px}.tabbar::-webkit-scrollbar-thumb{background:var(--input-border);border-radius:2px}.tab-item{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e3e9f2;border-bottom:none;border-radius:6px 6px 0 0;flex:none;justify-content:space-between;align-items:center;gap:8px;min-width:92px;height:32px;padding:0 8px 0 12px;font-size:12px;font-weight:600;line-height:1;transition:all .18s;display:inline-flex}.tab-item:hover:not(.active){color:var(--primary);background:#f8fbff;border-color:#cfe2ff}.tab-item.active{color:var(--primary);background:#f6faff;border-color:#d6e7ff;box-shadow:0 -1px 6px #1677ff14}.tab-item-title{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.tab-close{color:#9aa8b8;cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;padding:0;font-size:13px;line-height:16px;display:inline-flex}.tab-close:hover{color:var(--primary);background:#eaf2ff}.page-tabs{gap:8px;margin-bottom:16px;display:flex}.page-tab{border:1px solid var(--input-border);color:var(--text-soft);background:#fff;border-radius:999px;padding:8px 16px;font-size:13px;font-weight:700}.page-tab.active{color:var(--primary);border-color:var(--primary-border);background:var(--primary-light)}.page-scroll{min-height:0;padding:var(--content-padding);background:var(--page-bg);flex:1;overflow:hidden auto}.tenant-tab-panes{width:100%}.tenant-tab-panes .page-section{animation:none}.page-title{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px;display:flex}.page-title h2{letter-spacing:normal;color:var(--text-main);margin-bottom:4px;font-size:20px;font-weight:600}.page-title p{color:var(--text-soft);font-size:13px;font-weight:400;line-height:1.5}.primary-action{min-height:38px;padding:0 16px;font-size:13px;font-weight:800}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px;display:grid}.stat-card,.content-card{border:1px solid var(--line);border-radius:var(--card-radius);background:#fff;box-shadow:0 1px 4px #0015290f}.stat-card{gap:8px;padding:20px 24px;display:grid}.stat-card-label,.stat-card span{color:var(--text-soft);font-size:13px;font-weight:400}.stat-card-value,.stat-card strong{color:var(--text-main);letter-spacing:normal;font-size:28px;font-weight:600;line-height:1.15}.stat-card-value.is-success,.stat-card strong.is-success{color:var(--success)}.stat-card-value.is-primary,.stat-card strong.is-primary{color:var(--primary)}.stat-card-value.is-danger,.stat-card strong.is-danger{color:var(--danger)}.stat-card-meta{color:var(--text-soft);font-size:12px;font-weight:600;line-height:1.4}.stat-card-meta.is-success{color:var(--success)}.stat-card-meta.is-warning{color:var(--warning)}.content-card{overflow:hidden}.card-head{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.card-head strong{color:var(--text-main);font-size:15px;font-weight:600}.card-head span{color:var(--text-soft);font-size:13px}.card-meta{align-items:center;gap:10px;display:flex}.card-meta button{border:1px solid var(--input-border);height:28px;color:var(--text-body);background:#fff;border-radius:8px;padding:0 10px;font-size:12px;font-weight:800}.card-meta button:hover{border-color:var(--primary);color:var(--primary)}.placeholder-table{padding:0 22px 22px}.table-row{color:var(--text-body);border-bottom:1px solid #f4f5f8;grid-template-columns:1.2fr 1.2fr 1.2fr .8fr;gap:16px;padding:16px 0;font-size:13px;display:grid}.table-row.head{color:var(--text-main);font-weight:900}.status-warn{color:var(--warning);font-weight:900}.tenant-status-tag{white-space:nowrap;border-radius:4px;align-items:center;height:24px;padding:0 10px;font-size:12px;font-weight:500;line-height:1;display:inline-flex}.tenant-status-tag.is-success{color:var(--success);background:var(--success-bg)}.tenant-status-tag.is-danger{color:var(--danger);background:var(--danger-bg)}.tenant-status-tag.is-warning{color:var(--warning);background:var(--warning-bg)}.tenant-status-tag.is-info{color:var(--primary);background:var(--primary-light)}.tenant-status-tag.is-muted{color:var(--muted);background:var(--muted-bg)}.manage-page{gap:20px;display:grid}.compact-manage-page.manage-page{gap:20px}.compact-manage-page .page-title{margin-bottom:0}.compact-manage-page .page-title h2{margin-bottom:4px;font-size:20px;font-weight:600}.compact-manage-page .page-title p{font-size:13px;font-weight:400}.compact-manage-page .content-card,.compact-manage-page .stat-card,.compact-manage-page .toolbar-card{border-radius:var(--card-radius);box-shadow:0 1px 4px #0015290f}.account-layout{grid-template-columns:var(--account-tree-width) minmax(0, 1fr);align-items:start;gap:16px;display:grid}.org-list-page{border:1px solid var(--line);border-radius:var(--card-radius);background:#fff;padding:24px 28px 28px}.org-list-title{color:var(--text-main);border-bottom:1px solid #eef2f7;align-items:center;gap:10px;padding-bottom:18px;font-size:15px;font-weight:600;display:flex}.org-list-title:before{content:"";background:var(--primary);border-radius:2px;width:3px;height:16px}.org-list-toolbar{justify-content:flex-end;padding:18px 0 16px;display:flex}.org-dept-table table{border-collapse:collapse;width:100%;min-width:900px}.org-dept-table th{border-bottom:1px solid var(--line);height:48px;color:var(--text-main);text-align:left;white-space:nowrap;background:#fafafa;padding:0 16px;font-size:13px;font-weight:600}.org-dept-table tbody tr{cursor:pointer;height:46px}.org-dept-table td{border-bottom:1px solid var(--line-soft);height:46px;color:var(--text-body);vertical-align:middle;padding:0 16px;font-size:13px;line-height:1.4}.org-dept-table tbody tr:hover td{background:#f5fbff}.org-dept-table tbody tr.org-dept-row-selected td{background:#eaf6ff}.org-dept-name{height:46px;min-height:0;color:var(--text-main);align-items:center;gap:8px;display:flex}.org-dept-toggle{border:1px solid var(--input-border);width:16px;height:16px;color:var(--primary);cursor:pointer;background:#fff;border-radius:2px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:12px;line-height:1;display:inline-flex}.org-dept-toggle.empty{visibility:hidden;color:#0000;cursor:default;background:0 0;border-color:#0000;width:16px;height:16px}.org-status-tag{background:var(--success-bg);height:24px;color:var(--success);border:1px solid #95de64;border-radius:3px;justify-content:center;align-items:center;padding:0 10px;font-size:12px;display:inline-flex}.org-status-tag.disabled{background:var(--muted-bg);color:var(--text-soft);border-color:#d9d9d9}.org-dept-table td:last-child{position:relative;overflow:visible}.org-dept-table-scroll{overflow:auto visible}.org-table-actions{white-space:nowrap;align-items:center;gap:16px;display:flex}.org-more-dropdown{display:inline-block;position:relative}.org-action-link{color:var(--primary);cursor:pointer;background:0 0;border:0;padding:0;font-size:13px}.org-action-link:hover{color:var(--primary-hover)}.org-more-menu{z-index:40;border:1px solid var(--line);background:#fff;border-radius:6px;min-width:92px;padding:6px 0;display:none;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 8px 24px #0f234614}.org-more-menu.show{display:block}.org-more-menu--fixed{z-index:1200;position:fixed;top:auto;right:auto;transform:translate(-100%)}.org-more-item{text-align:left;width:100%;color:var(--text-body);cursor:pointer;background:#fff;border:0;padding:8px 14px;font-size:13px;display:block}.org-more-item:hover{color:var(--primary);background:#f5f7fa}.org-more-item.danger{color:var(--danger)}.org-more-item.danger:hover{background:var(--danger-bg);color:var(--danger)}.org-dept-empty,.org-dept-loading{color:var(--text-soft);text-align:center;padding:48px 16px;font-size:13px}.manage-page-header{margin-bottom:20px}.manage-page-header h2{color:var(--text-main);margin-bottom:4px;font-size:20px;font-weight:600}.manage-page-header p{color:var(--text-soft);font-size:13px}.tenant-panel{border:1px solid var(--line);border-radius:var(--card-radius);background:#fff;overflow:hidden}.tenant-panel-header{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.tenant-panel-title{color:var(--text-main);font-size:15px;font-weight:600}.tenant-panel-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.table-wrap{overflow-x:auto}.tenant-data-table{border-collapse:collapse;width:100%}.tenant-data-table th{border-bottom:1px solid var(--line);color:var(--text-soft);text-align:left;white-space:nowrap;background:#fafbfc;padding:11px 16px;font-size:13px;font-weight:500}.tenant-data-table td{border-bottom:1px solid var(--line-soft);color:var(--text-body);vertical-align:middle;padding:12px 16px;font-size:13px}.tenant-data-table tbody tr:hover td{background:#fafcff}.tenant-data-table tbody tr:last-child td{border-bottom:none}.table-empty-cell{text-align:center;color:var(--text-soft);padding:24px 16px!important}.tenant-data-table td.row-actions{white-space:nowrap;vertical-align:middle;display:table-cell}.tenant-data-table td.row-actions button+button{margin-left:8px}.tenant-data-table td.text-muted,.tenant-data-table .text-muted{color:var(--text-soft);font-size:12px;line-height:1.4}.tenant-data-table td strong{color:var(--text-main);font-weight:700}.tenant-data-table .is-primary{color:var(--primary);font-weight:600}.status-dot{vertical-align:middle;border-radius:50%;width:7px;height:7px;margin-right:5px;display:inline-block}.dot-green{background:#52c41a}.dot-orange{background:#fa8c16}.dot-red{background:#ff4d4f}.dot-gray{background:#bfbfbf}.tenant-tag{border-radius:4px;align-items:center;padding:2px 8px;font-size:12px;font-weight:500;display:inline-flex}.tenant-tag.tag-red{background:var(--danger-bg);color:var(--danger)}.tenant-tag.tag-orange{background:var(--warning-bg);color:var(--warning)}.tenant-tag.tag-blue{background:var(--primary-light);color:var(--primary)}.tenant-tag.tag-green{background:var(--success-bg);color:var(--success)}.tenant-tag.tag-gray{background:var(--muted-bg);color:var(--text-soft)}.tenant-tag.tag-purple{color:#722ed1;background:#f9f0ff}.tenant-tag.tag-cyan{color:#13c2c2;background:#e6fffb}.tenant-tag.tag-pink{color:#eb2f96;background:#fff0f6}.tenant-switch{flex-shrink:0;width:38px;height:20px;display:inline-block;position:relative}.tenant-switch input{opacity:0;width:0;height:0}.tenant-switch-slider{cursor:pointer;background:#d9d9d9;border-radius:20px;transition:all .3s;position:absolute;inset:0}.tenant-switch-slider:before{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:all .3s;position:absolute;bottom:3px;left:3px}.tenant-switch input:checked+.tenant-switch-slider{background:var(--primary)}.tenant-switch input:checked+.tenant-switch-slider:before{transform:translate(18px)}.tenant-switch input:disabled+.tenant-switch-slider{opacity:.55;cursor:not-allowed}.table-action-btn{cursor:pointer;border-radius:6px;min-height:28px;padding:3px 10px;font-size:12px;font-weight:500}.table-action-btn.default{border:1px solid var(--input-border);color:#555;background:#fff}.table-action-btn.default:hover{border-color:var(--primary);color:var(--primary)}.table-action-btn.danger{color:var(--danger);background:#fff;border:1px solid #ffccc7}.table-action-btn.danger:hover{background:var(--danger-bg)}.table-row-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.role-section-title{border-radius:var(--card-radius);color:var(--text-main);background:#e6f7ff;border:1px solid #91d5ff;margin-bottom:22px;padding:16px 20px;font-size:16px;font-weight:600}.role-basic-form{max-width:1180px;margin:0 0 24px}.role-basic-form .form-row{grid-template-columns:86px minmax(0,1fr);align-items:center;gap:14px;margin-bottom:16px;display:grid}.role-basic-form .form-label{color:var(--text-body);text-align:right;margin:0;font-size:15px;font-weight:500}.role-basic-form .form-label.required:before{content:"* ";color:var(--danger)}.role-basic-form .form-control{border:1px solid var(--input-border);width:100%;min-height:42px;color:var(--text-body);border-radius:2px;padding:8px 12px;font-size:13px}.role-basic-form textarea.form-control{resize:vertical;min-height:88px;line-height:1.5}.role-basic-form .form-control:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 2px #1677ff1a}.tabs-underline{border-bottom:2px solid var(--page-bg);gap:0;margin-bottom:20px;display:flex}.tabs-underline .tab-btn{color:var(--text-soft);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-2px;padding:10px 18px;font-size:14px;transition:all .2s}.tabs-underline .tab-btn.active{border-bottom-color:var(--primary);color:var(--primary);font-weight:500}.tabs-underline .tab-btn:hover{color:var(--primary)}.role-perm-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.role-perm-segments{border:1px solid var(--input-border);background:#fff;border-radius:4px;display:inline-flex;overflow:hidden}.role-perm-segment{min-width:78px;height:30px;color:var(--text-main);cursor:pointer;background:#fff;border:0;padding:0 14px;font-size:13px}.role-perm-segment+.role-perm-segment{border-left:1px solid var(--input-border)}.role-perm-segment.active{background:var(--primary);color:#fff}.role-perm-search{align-items:center;gap:10px;display:flex}.role-perm-search .search-input{border:1px solid var(--input-border);border-radius:4px;width:260px;height:34px;padding:0 12px;font-size:13px}.role-perm-search .search-input:focus{border-color:var(--primary);outline:none}.role-data-form{gap:16px;padding:4px 0 8px;display:grid}.role-data-row{grid-template-columns:72px auto;align-items:center;gap:12px;display:grid}.role-data-form .form-group{gap:6px;display:grid}.role-data-form .form-label{color:var(--text-body);font-size:13px;font-weight:500}.role-data-form .form-control{border:1px solid var(--input-border);border-radius:6px;width:168px;min-width:168px;max-width:168px;min-height:38px;padding:8px 12px;font-size:13px}.role-data-form .form-control:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 2px #1677ff1a}.role-form-empty{color:var(--text-soft);text-align:center;padding:32px 16px;font-size:13px}.org-tree-panel,.account-tree-panel{position:sticky;top:12px}.org-tree-root{max-height:calc(100vh - 220px);padding:4px 4px 6px;overflow:auto}.org-tree,.org-tree.children{margin:0;padding:0;list-style:none}.org-tree.children{border-left:1px dashed var(--input-border);margin-left:12px;padding-left:6px}.org-tree-row{border-radius:6px;align-items:center;gap:2px;min-height:30px;display:flex}.org-tree-row:hover{background:#f0f7ff}.org-tree-row.active{background:var(--primary-light)}.org-tree-toggle{width:20px;height:20px;color:var(--text-soft);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.org-tree-toggle.placeholder{visibility:hidden}.org-tree-chevron{font-size:14px;line-height:1;transition:transform .15s;display:inline-block}.org-tree-chevron.open{transform:rotate(90deg)}.org-tree-label{text-align:left;cursor:pointer;background:0 0;border:none;flex:1;align-items:center;gap:8px;min-width:0;padding:4px 6px 4px 0;display:flex}.org-tree-name{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:400;overflow:hidden}.org-tree-name.is-top-level{font-weight:600}.org-tree-type{background:var(--muted-bg);color:var(--text-soft);border-radius:4px;flex-shrink:0;padding:0 6px;font-size:11px;font-style:normal;font-weight:600;line-height:18px}.account-page .org-tree-root{max-height:calc(100vh - 260px);padding:8px 4px 10px}.online-group-panel{min-height:420px;position:sticky;top:12px}.online-group-panel .panel-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.online-group-panel .panel-head strong{color:var(--text-main);font-size:15px;font-weight:600}.online-group-body{flex-direction:column;gap:2px;max-height:calc(100vh - 240px);padding:8px 10px 14px;display:flex;overflow:auto}.online-group-error{margin:12px}.online-group-tree{margin:0;padding:0;list-style:none}.online-group-node{margin:0;padding:0}.online-group-row{width:100%;min-height:36px;color:var(--text-body);text-align:left;cursor:pointer;box-sizing:border-box;background:0 0;border:0;border-radius:6px;align-items:center;gap:4px;margin:0;padding:6px 10px;font-size:13px;display:flex}.online-group-row:hover{background:#f5f8fc}.online-group-row.active{background:var(--primary-light);color:var(--primary);font-weight:600}.online-group-toggle{cursor:pointer;background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;padding:0;display:inline-flex}.online-group-toggle.placeholder{cursor:default}.online-group-chevron{border-top:4px solid #0000;border-bottom:4px solid #0000;border-left:5px solid #94a3b8;width:0;height:0;transition:transform .15s;display:inline-block}.online-group-chevron.open{transform:rotate(90deg)}.online-group-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.online-group-actions{flex-shrink:0;align-items:center;gap:6px;margin-left:4px;display:none}.online-group-row:hover .online-group-actions,.online-group-row.active .online-group-actions{display:inline-flex}.online-group-actions .link-action{color:var(--primary);cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0;font-size:12px;font-weight:600}.online-group-actions .link-action.danger{color:var(--danger)}.online-group-add{width:100%;min-height:40px;color:var(--text-body);cursor:pointer;background:#fafbfc;border:1px dashed #d0d7de;border-radius:8px;justify-content:center;align-items:center;margin-top:10px;padding:0 12px;font-size:13px;font-weight:600;display:flex}.online-group-add:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-light)}.online-group-form-label{color:var(--text-body);flex-direction:column;gap:8px;font-size:13px;display:flex}.online-group-form-label em{color:var(--danger);font-style:normal}.online-group-form-label input{border:1px solid var(--input-border);border-radius:8px;height:36px;padding:0 12px;font-size:13px}@media (width<=1280px){.account-layout{grid-template-columns:1fr}.account-tree-panel,.org-tree-panel{position:static}.account-layout .org-tree-root,.org-page .org-tree-root{max-height:240px}.online-group-body{max-height:280px}}@media (width<=1080px){.org-layout{grid-template-columns:1fr}.org-page .org-tree-root{max-height:280px}}.compact-manage-page .stats-grid{gap:16px;margin-bottom:20px}.compact-manage-page .stat-card{gap:8px;padding:20px 24px}.compact-manage-page .stat-card span{font-size:13px;font-weight:400}.compact-manage-page .stat-card strong{font-size:28px;font-weight:600}.compact-manage-page .stat-card strong.is-warning{color:var(--warning)}.compact-manage-page .card-head{padding:16px 20px}.compact-manage-page .card-head strong{font-size:15px;font-weight:600}.compact-manage-page .toolbar-card input,.compact-manage-page .toolbar-card select{border-radius:8px;height:32px;padding:0 10px;font-size:12px}.compact-manage-page .toolbar-card input{min-width:200px}.compact-manage-page .toolbar-card .ghost-action,.compact-manage-page .toolbar-card .primary-action{min-height:32px;padding:0 12px;font-size:12px}.compact-manage-page .toolbar-card{gap:8px;padding:10px 12px}.compact-manage-page .card-head--split{flex-wrap:wrap;gap:8px}.compact-manage-page .card-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-left:auto;display:flex}.compact-manage-page .card-toolbar .async-search-select{flex:0 0 140px;width:140px;min-width:140px}.compact-manage-page .card-toolbar .async-search-select input{box-sizing:border-box;border-radius:8px;height:32px;min-height:32px;padding:0 10px;font-size:12px}.compact-manage-page .card-toolbar .async-search-select.clearable.has-value input{padding-right:28px}.compact-manage-page .card-toolbar .async-search-clear{width:16px;height:16px;font-size:14px;right:6px}.tenant-filter-select{align-items:center;min-width:0;display:inline-flex;position:relative}.tenant-filter-select select{width:100%;min-width:0}.tenant-filter-select.clearable.has-value select{padding-right:28px}.tenant-filter-select.disabled{opacity:.6}.strategy-filter-select{flex:none}.strategy-filter-select--checkpoint{width:132px}.strategy-filter-select--status{width:120px}.strategy-filter-select select{border:1px solid var(--input-border);height:32px;min-height:32px;color:var(--text-body);cursor:pointer;background-color:#fff;border-radius:8px;padding:0 32px 0 10px;font-size:12px;line-height:30px}.strategy-filter-select select:hover:not(:disabled){border-color:#91caff}.strategy-filter-select select:focus{border-color:var(--primary);outline:none}@media (width<=760px){.strategy-filter-select--checkpoint,.strategy-filter-select--status{width:100%}}.tenant-filter-multi-select{align-items:center;min-width:0;display:inline-flex;position:relative}.tenant-filter-multi-trigger{border:1px solid var(--input-border);width:100%;min-width:140px;height:32px;color:var(--text-body);text-align:left;cursor:pointer;background:#fff;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:0 28px 0 10px;font-size:13px;line-height:1;display:inline-flex;position:relative}.tenant-filter-multi-select.clearable.has-value .tenant-filter-multi-trigger{padding-right:40px}.tenant-filter-multi-trigger:hover:not(:disabled){border-color:#91caff}.tenant-filter-multi-select.open .tenant-filter-multi-trigger,.tenant-filter-multi-trigger:focus-visible{border-color:var(--primary);outline:none}.tenant-filter-multi-trigger:disabled{cursor:not-allowed;opacity:.6}.tenant-filter-multi-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.tenant-filter-multi-caret{pointer-events:none;border-top:5px solid #8c9bab;border-left:4px solid #0000;border-right:4px solid #0000;width:0;height:0;position:absolute;right:10px}.tenant-filter-multi-select.clearable.has-value .tenant-filter-multi-caret{right:28px}.tenant-filter-multi-select.open .tenant-filter-multi-caret{transform:rotate(180deg)}.tenant-filter-multi-panel{z-index:4200;box-sizing:border-box;border:1px solid var(--line);background:#fff;border-radius:8px;min-width:168px;padding:6px 0;position:fixed;overflow:auto;box-shadow:0 8px 24px #0f23341f}.tenant-filter-multi-option{color:var(--text-body);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:7px 12px;font-size:13px;display:flex}.tenant-filter-multi-option:hover{background:var(--primary-light)}.tenant-filter-multi-option input{width:14px;min-width:14px;height:14px;accent-color:var(--primary);border:0;flex:0 0 14px;margin:0;padding:0}.tenant-filter-multi-option span{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.tenant-filter-multi-empty{color:var(--text-soft);margin:0;padding:10px 12px;font-size:12px}.card-toolbar .tenant-filter-multi-select,.compact-manage-page .card-toolbar .tenant-filter-multi-select{flex:none;min-width:140px}.card-toolbar .tenant-filter-multi-panel,.compact-manage-page .card-toolbar .tenant-filter-multi-panel{min-width:168px}.online-service-page .account-main.content-card,.online-service-page .card-head--split,.online-service-page .account-layout{overflow:visible}.compact-manage-page.online-service-page .card-toolbar{flex-wrap:nowrap;flex:auto;min-width:0}.compact-manage-page.online-service-page .card-toolbar input,.compact-manage-page.online-service-page .card-toolbar .tenant-filter-select,.compact-manage-page.online-service-page .card-toolbar .tenant-filter-multi-select,.compact-manage-page.online-service-page .card-toolbar .category-tree-select{flex:1 1 0;width:auto;min-width:0}.compact-manage-page.online-service-page .card-toolbar select{min-width:0}.compact-manage-page.online-service-page .card-toolbar .ghost-action{white-space:nowrap;flex:none}.card-toolbar .tenant-filter-multi-option,.compact-manage-page .card-toolbar .tenant-filter-multi-option{flex-direction:row;align-items:center;gap:8px;display:flex}.card-toolbar .tenant-filter-multi-option input,.compact-manage-page .card-toolbar .tenant-filter-multi-option input{border:0;border-radius:0;flex:0 0 14px;width:14px;min-width:14px;height:14px;min-height:14px;margin:0;padding:0}.filter-clear-btn,.async-search-clear{width:18px;height:18px;color:var(--text-soft);cursor:pointer;z-index:1;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0;font-size:16px;line-height:1;display:inline-flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.filter-clear-btn:hover,.async-search-clear:hover{color:var(--text-main);background:#f1f5f9}.card-toolbar .tenant-filter-select.clearable.has-value select,.compact-manage-page .card-toolbar .tenant-filter-select.clearable.has-value select{padding-right:26px}.card-toolbar .filter-clear-btn,.compact-manage-page .card-toolbar .filter-clear-btn{width:16px;height:16px;font-size:14px;right:6px}.city-filter .filter-clear-btn,.store-dept-filter .filter-clear-btn{flex-shrink:0;margin-right:2px;position:static;transform:none}.city-filter .selector-box,.store-dept-filter .selector-box{position:relative}.city-filter.clearable.has-value .selector-main,.store-dept-filter.clearable.has-value .selector-main{padding-right:4px}.compact-manage-page .card-toolbar input,.compact-manage-page .card-toolbar select{border:1px solid var(--input-border);min-width:140px;height:32px;color:var(--text-body);background:#fff;border-radius:8px;outline:none;flex:none;padding:0 10px;font-size:12px}.compact-manage-page .card-toolbar input{min-width:168px}.compact-manage-page .card-toolbar .ghost-action,.compact-manage-page .card-toolbar .primary-action{min-height:32px;padding:0 12px;font-size:12px}.compact-manage-page .data-table{min-width:0}.compact-manage-page .data-row{gap:8px;padding:7px 12px;font-size:12px}.compact-manage-page .data-row.head{padding:6px 12px;font-size:11px}.compact-manage-page .data-row strong{margin-bottom:1px;font-size:13px}.compact-manage-page .data-row small{font-size:11px}.compact-manage-page .row-actions button{padding:2px 8px;font-size:12px}.compact-manage-page .table-empty{color:var(--text-soft);text-align:center;padding:16px 12px;font-size:12px}.compact-manage-page .platform-pagination{gap:8px;padding:8px 12px;font-size:12px}.compact-manage-page .pagination-field select,.compact-manage-page .platform-pagination select{min-height:28px;padding:0 8px;font-size:12px}.compact-manage-page .pagination-page-btn{width:28px;min-width:28px;height:28px;min-height:28px;font-size:12px}.compact-manage-page .pagination-btn{min-height:28px;padding:0 10px;font-size:12px}.tenant-sync-bar{border:1px solid var(--primary-border);background:var(--primary-light);color:var(--primary);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:12px 20px;font-size:13px;line-height:1.4;display:flex}.tenant-sync-bar p{margin:0}.tenant-sync-bar__actions{flex-shrink:0;gap:6px;display:flex}.tenant-sync-bar__actions .ghost-action{min-height:28px;padding:0 10px;font-size:12px}.tenant-sync-bar__actions .primary-action{color:#fff;background:var(--primary);min-height:28px;box-shadow:none;border:0;padding:0 10px;font-size:12px}.tenant-sync-bar__actions .primary-action:disabled{color:#fff;background:var(--primary);opacity:.55;cursor:not-allowed}.sync-settings-grid{gap:14px;padding:16px 20px 20px}.sync-settings-tip{border:1px solid var(--primary-border);background:var(--primary-light);color:var(--primary);border-radius:8px;margin:0;padding:10px 12px;font-size:12px;font-weight:600;line-height:1.5}.shop-sync-log-modal{flex-direction:column;flex:1;gap:12px;min-height:0;display:flex}.shop-sync-log-toolbar{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:10px;display:flex}.shop-sync-log-toolbar .tenant-filter-select,.account-sync-log-toolbar .tenant-filter-select,.shop-sync-log-toolbar .tenant-filter-multi-select,.account-sync-log-toolbar .tenant-filter-multi-select{min-width:140px}.shop-sync-log-toolbar .tenant-filter-select select,.account-sync-log-toolbar .tenant-filter-select select{min-width:140px;height:34px;color:var(--text-body);background:#fff;border:1px solid #d9e0e8;border-radius:6px;outline:none;padding:0 10px;font-size:13px}.shop-sync-log-toolbar .tenant-filter-multi-trigger,.account-sync-log-toolbar .tenant-filter-multi-trigger{border-color:#d9e0e8;min-width:160px;height:34px}.shop-sync-log-toolbar .tenant-filter-select.clearable.has-value select,.account-sync-log-toolbar .tenant-filter-select.clearable.has-value select{padding-right:28px}.shop-sync-log-toolbar .tenant-filter-select select:focus,.account-sync-log-toolbar .tenant-filter-select select:focus{border-color:#1677ff}.shop-sync-log-summary{color:var(--text-soft);margin-left:auto;font-size:13px}.shop-sync-log-body{border:1px solid var(--line);background:#fff;border-radius:8px;flex:1;min-height:0;overflow:hidden auto}.shop-sync-log-table{width:100%}.shop-sync-log-row{border-bottom:1px solid var(--line-soft,#f0f2f5);min-height:46px;color:var(--text-body);grid-template-columns:1.1fr 1.1fr .55fr .65fr .55fr .95fr minmax(0,1.2fr);align-items:center;gap:12px;padding:12px 16px;font-size:13px;line-height:1.5;display:grid}.shop-sync-log-row.head{z-index:1;border-bottom:1px solid var(--line);min-height:42px;color:var(--text-soft);background:#fafbfc;padding:11px 16px;font-size:13px;font-weight:500;position:sticky;top:0}.shop-sync-log-row:last-child{border-bottom:0}.shop-sync-log-row span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.shop-sync-log-error{color:var(--text-soft)}.shop-sync-log-empty{color:var(--text-soft);text-align:center;padding:24px 16px;font-size:13px}.shop-sync-log-pagination{flex-shrink:0}.event-request-log-row{grid-template-columns:.65fr .55fr .8fr .8fr .75fr .65fr .7fr .45fr minmax(0,1fr) .9fr .45fr}.event-request-log-row .row-actions{justify-content:flex-start}.online-service-log-row{grid-template-columns:.7fr .9fr .85fr .75fr .65fr .75fr 1fr 1fr .45fr}.online-service-log-row .row-actions{justify-content:flex-start}.online-service-wait-log-row,.store-visit-wait-log-row{grid-template-columns:.7fr .9fr .85fr .75fr .65fr 1fr 1fr .45fr}.online-service-wait-msg-log-row{grid-template-columns:.65fr .9fr .8fr .5fr .65fr .9fr minmax(0,1fr) .95fr .45fr}.online-service-wait-log-row .row-actions,.online-service-wait-msg-log-row .row-actions,.store-visit-wait-log-row .row-actions{justify-content:flex-start}.online-service-log-modal .tabs-underline,.store-visit-log-modal .tabs-underline{margin-bottom:12px}.online-service-log-modal .shop-sync-log-row span.cell-wrap,.store-visit-log-modal .shop-sync-log-row span.cell-wrap{text-overflow:unset;white-space:normal;word-break:break-all;line-height:1.45;overflow:visible}.shop-sync-log-toolbar .search-input{width:200px;height:34px;color:var(--text-main);box-sizing:border-box;background:#fff;border:1px solid #d9e0e8;border-radius:6px;padding:0 12px;font-size:13px}.shop-sync-log-toolbar .search-input:focus{border-color:#1677ff;outline:none}.shop-sync-log-toolbar .search-input::placeholder{color:var(--text-soft)}.sync-log-inline-error{margin:0}.status-ok{color:var(--success);font-weight:700}.status-bad{color:var(--danger);font-weight:700}.status-pending{color:var(--warning);font-weight:700}.primary-action.compact{min-height:28px;padding:0 10px;font-size:12px}.toolbar-card{border:1px solid var(--line);background:#fff;border-radius:16px;align-items:center;gap:12px;padding:16px;display:flex;box-shadow:0 8px 22px #0a19290a}.toolbar-card input,.toolbar-card select,.form-grid input,.form-grid select,.form-grid textarea{border:1px solid var(--input-border);height:38px;color:var(--text-body);background:#fff;border-radius:10px;outline:none;padding:0 12px}.form-grid textarea{resize:vertical;height:auto;min-height:88px;padding:8px 12px;line-height:1.5}.toolbar-card input{min-width:260px}.toolbar-card input:focus,.toolbar-card select:focus,.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #1677ff1a}.ghost-action{border:1px solid var(--input-border);min-height:36px;color:var(--text-body);background:#fff;border-radius:10px;padding:0 14px;font-size:13px;font-weight:800}.ghost-action:hover{border-color:var(--primary);color:var(--primary)}.data-table{min-width:920px;overflow-x:auto}.data-row{color:var(--text-body);border-bottom:1px solid #f4f5f8;align-items:center;gap:16px;padding:15px 22px;font-size:13px;display:grid}.data-row.head{color:var(--text-main);background:#fbfcff;font-size:12px;font-weight:900}.staff-table .data-row{grid-template-columns:1fr 1fr 1fr .7fr 1.2fr 2fr}.role-table .data-row{grid-template-columns:1.2fr 1fr .7fr 1.5fr 2fr}.menu-table .data-row{grid-template-columns:1.2fr .7fr 1.2fr 1.4fr .8fr 2.2fr}.menu-name-cell{grid-template-columns:24px minmax(0,1fr);align-items:center;column-gap:8px;display:grid}.menu-name-cell strong,.menu-name-cell small{grid-column:2}.tree-toggle,.tree-spacer{grid-area:1/1/span 2;width:24px;height:24px}.tree-toggle{border:1px solid var(--input-border);color:var(--primary);background:#fff;border-radius:8px;font-size:16px;font-weight:900;line-height:20px}.tree-toggle:hover{border-color:var(--primary);background:#1677ff14}.tree-spacer{display:inline-block}.data-row strong{color:var(--text-main);margin-bottom:4px;display:block}.data-row small{color:var(--text-soft);font-size:12px;display:block}.row-actions{flex-wrap:wrap;gap:8px;display:flex}.row-actions button{color:var(--primary);background:0 0;border:0;font-size:13px;font-weight:800}.row-actions button:hover{color:var(--primary-hover)}.row-actions .danger-link{color:var(--danger)}.danger-action{color:#fff;background:var(--danger);border:0;border-radius:10px;min-height:38px;padding:0 16px;font-size:13px;font-weight:900;box-shadow:0 8px 16px #ff4d4f2e}.danger-action:hover{background:#d9363e}.platform-pagination,.pager{color:var(--text-soft);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;padding:16px 22px;font-size:13px;font-weight:800;display:flex}.pagination-total{color:var(--text-body);margin-right:auto}.pagination-field{color:var(--text-body);align-items:center;gap:6px;font-weight:700;display:inline-flex}.pagination-field select,.platform-pagination select{border:1px solid var(--input-border);min-height:32px;color:var(--text-body);background:#fff;border-radius:8px;padding:0 10px}.pagination-btn,.pager button{border:1px solid var(--input-border);min-height:32px;color:var(--text-body);background:#fff;border-radius:4px;padding:0 12px;font-size:13px;font-weight:500}.pagination-btn:disabled,.pager button:disabled{cursor:not-allowed;opacity:.45}.pagination-pages{align-items:center;gap:4px;display:inline-flex}.pagination-page-btn{box-sizing:border-box;border:1px solid var(--input-border);width:32px;min-width:32px;height:32px;min-height:32px;color:var(--text-main);text-align:center;background:#fff;border-radius:4px;padding:0;font-size:14px;font-weight:400;line-height:32px}.pagination-page-btn:hover:not(:disabled):not(.is-active){color:var(--primary);background:#fff;border-color:#c9d1d9}.pagination-page-btn.is-active{border-color:var(--primary);background:var(--primary);color:#fff;font-weight:500}.pagination-ellipsis{text-align:center;min-width:24px;color:var(--text-soft);-webkit-user-select:none;user-select:none;font-size:14px}.form-panel{border:1px solid var(--line);background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 12px 28px #0a19290f}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:20px 22px;display:grid}.form-grid label,.form-grid .form-field{color:var(--text-body);gap:8px;font-size:13px;font-weight:800;display:grid}.form-grid .span-2{grid-column:span 2}.form-grid .check-row{align-items:center;gap:8px;min-height:36px;display:flex}.form-grid .check-row input[type=checkbox]{width:16px;height:16px}.sso-edit-tabs{border-bottom:1px solid #e8edf2;gap:0;margin:0 0 16px;display:flex}.sso-edit-tab{color:#64748b;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:9px 16px;font-size:13px}.sso-edit-tab.active{color:#1677ff;border-bottom-color:#1677ff;font-weight:600}.sso-edit-tab em{color:inherit;margin-left:4px;font-style:normal;font-weight:600}.form-grid .service-scope-picker,.sso-edit-scope-panel.service-scope-picker{gap:10px;display:grid}.sso-edit-scope-panel .service-scope-item{border:1px solid var(--input-border);min-height:46px;color:var(--text-body);background:#fff;border-radius:8px;grid-template-columns:16px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;font-size:12px;font-weight:600;display:grid}.sso-edit-scope-panel .service-scope-item input[type=checkbox]{width:16px;height:16px}.service-scope-picker__head{color:var(--text-body);justify-content:space-between;align-items:center;gap:12px;font-size:13px;font-weight:800;display:flex}.service-scope-picker__head>div{gap:10px;display:inline-flex}.service-scope-picker .link-action{color:var(--primary);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:700}.service-scope-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.form-grid .service-scope-item{border:1px solid var(--input-border);min-height:46px;color:var(--text-body);background:#fff;border-radius:8px;grid-template-columns:16px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;font-size:12px;font-weight:600;display:grid}.form-grid .service-scope-item input[type=checkbox]{width:16px;height:16px}.service-scope-item__main{gap:2px;min-width:0;display:grid}.service-scope-item__main strong{color:var(--text-main);font-size:13px;font-weight:700}.service-scope-item__main em{color:var(--text-soft);font-style:normal;font-weight:500}.service-scope-item code{max-width:180px;color:var(--primary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:700;overflow:hidden}@media (width<=1360px){.service-scope-list{grid-template-columns:1fr}}.modal-form-intro{color:var(--text-soft);margin:0;font-size:13px;font-weight:600;line-height:1.6}.icon-field{align-items:center;gap:10px;display:flex}.icon-field input{flex:1}.icon-preview{border:1px solid var(--line);width:36px;height:36px;color:var(--primary);background:#fafcff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.field-required{color:#ef4444}.field-hint{color:var(--text-soft);margin-top:6px;font-size:12px;display:block}.modal-section{padding:20px 22px}.modal-section--compact{padding-top:12px;padding-bottom:0}.modal-section .form-error{margin-bottom:14px}.account-form-modal{gap:14px;display:grid}.account-form-user-type{gap:18px;display:flex}.account-form-user-type label{color:var(--text-soft);align-items:center;gap:6px;font-size:13px;font-weight:700;display:inline-flex}.account-form-user-type label.is-active{color:var(--primary)}.account-form-user-type input{accent-color:var(--primary)}.account-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;display:grid}.account-form-grid label,.account-form-grid .avatar-field{gap:6px;display:grid}.account-form-grid label span,.account-form-grid .avatar-field>span{color:var(--text-soft);font-size:12px;font-weight:700}.account-form-grid label.required>span:before{content:"*";color:var(--danger);margin-right:4px}.account-form-grid input,.account-form-grid select{border:1px solid var(--input-border);border-radius:8px;outline:none;height:36px;padding:0 10px;font-size:13px}.account-form-grid input:focus,.account-form-grid select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #1677ff1a}.account-form-grid .avatar-input{display:none}.account-form-grid .avatar-upload,.account-form-grid .avatar-preview{color:#8c9bab;cursor:pointer;background:#fafbfc;border:1px dashed #b8c4d6;border-radius:8px;width:96px;height:96px;font-size:32px;line-height:1}.account-form-grid .avatar-preview{padding:0;overflow:hidden}.account-form-grid .avatar-preview img{object-fit:cover;width:100%;height:100%}.account-form-grid .avatar-clear{color:var(--primary);cursor:pointer;background:0 0;border:0;justify-self:start;padding:0;font-size:12px;font-weight:700}.account-role-perm-modal{gap:14px;display:grid}.account-role-perm-modal__meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px;display:grid}.account-role-perm-modal__meta-item{gap:6px;display:grid}.account-role-perm-modal__meta-item span{color:var(--text-soft);font-size:12px;font-weight:700}.account-role-perm-modal__meta-item strong{color:var(--text-main);font-size:13px;font-weight:600}.account-role-perm-table.data-table{border:1px solid var(--line);border-radius:10px;min-width:980px;overflow:auto}.account-role-perm-table .data-row{grid-template-columns:72px 1.1fr 120px 1.6fr 1.2fr;gap:12px;padding:12px 14px;font-size:12px}.account-role-perm-table .data-row.head{color:var(--text-soft);font-weight:700}.account-role-perm-table .data-row.is-selectable{text-align:left;cursor:pointer;background:#fff;border:0;width:100%}.account-role-perm-table .data-row.is-selectable:hover:not(.is-disabled){background:#fafcff}.account-role-perm-table .data-row.is-selectable.is-active{background:#1677ff0f}.account-role-perm-table .data-row.is-selectable.is-disabled{cursor:not-allowed;opacity:.72}.account-role-perm-radio{justify-content:center;align-items:center;display:inline-flex}.account-role-perm-radio i{border:2px solid #cfd5df;border-radius:50%;width:16px;height:16px;display:inline-block;position:relative}.account-role-perm-radio i.is-checked{border-color:var(--primary)}.account-role-perm-radio i.is-checked:after{content:"";background:var(--primary);border-radius:50%;position:absolute;inset:3px}.account-role-perm-name{color:var(--text-main);font-size:13px;font-weight:600}.account-role-perm-text{color:var(--text-body);font-size:12px;line-height:1.5}.data-scope-tag{border-radius:4px;align-items:center;min-height:22px;padding:0 8px;font-size:12px;font-style:normal;font-weight:600;line-height:1.2;display:inline-flex}.data-scope-tag.is-all{color:#be185d;background:#fce7f3}.data-scope-tag.is-region{color:#c2410c;background:#ffedd5}.data-scope-tag.is-dept{color:#1d4ed8;background:#dbeafe}.data-scope-tag.is-store{color:#0369a1;background:#e0f2fe}.data-scope-tag.is-self{color:#15803d;background:#dcfce7}.modal-tip{color:#92400e;background:#fffbeb;border-radius:8px;margin:0;padding:10px 12px;font-size:12px;line-height:1.6}.modal-tip.is-warning{color:#b91c1c;background:#fef2f2}.modal-footnote{border-top:1px solid var(--line);color:var(--text-soft);padding:14px 22px 20px;font-size:12px;line-height:1.6}.modal-empty{border:1px dashed var(--line);color:var(--text-soft);text-align:center;background:#fafcff;border-radius:12px;padding:28px 16px;font-size:13px}.option-check-list{flex-direction:column;gap:10px;display:flex}.option-check-item{border:1px solid var(--line);cursor:pointer;background:#fafcff;border-radius:12px;align-items:flex-start;gap:12px;padding:14px 16px;transition:border-color .2s,background .2s,box-shadow .2s;display:flex}.option-check-item:hover{background:#f5f7ff;border-color:#1677ff59}.option-check-item.is-checked{background:#1677ff0f;border-color:#1677ff73;box-shadow:0 8px 20px #1677ff14}.option-check-item__content{flex-direction:column;gap:4px;min-width:0;display:flex}.option-check-item__content strong{color:var(--text-main);font-size:14px;font-weight:800}.option-check-item__content small{color:var(--text-soft);font-size:12px}.form-actions{justify-content:flex-end;gap:12px;padding:0 22px 20px;display:flex}.permission-list{max-height:420px;padding:0 22px 12px;display:grid;overflow:auto}.permission-toolbar{z-index:1;background:#fff;border-bottom:1px solid #f4f5f8;gap:8px;padding:0 22px 8px;display:flex;position:sticky;top:0}.permission-list label{min-height:40px;color:var(--text-body);border-bottom:1px solid #f4f5f8;align-items:center;gap:10px;font-size:13px;display:flex}.permission-checkbox{appearance:none;cursor:pointer;background:#fff;border:1px solid #c9ceda;border-radius:3px;flex:0 0 16px;width:16px;height:16px;margin:0;position:relative}.permission-checkbox:checked{border-color:var(--primary);background:var(--primary)}.permission-checkbox:checked:after{content:"";border:2px solid #fff;border-top:0;border-left:0;width:5px;height:9px;position:absolute;top:1px;left:4px;transform:rotate(45deg)}.permission-checkbox:indeterminate{border-color:var(--primary);background:var(--primary)}.permission-checkbox:indeterminate:after{content:"";background:#fff;border:0;width:8px;height:2px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.permission-list strong{min-width:120px}.permission-list small{color:var(--text-soft)}.role-list-summary-cell{max-width:220px;color:var(--text-body);word-break:break-word;font-size:13px;line-height:1.5}.role-data-perm-cell{gap:6px;display:grid}.role-data-perm-item{align-items:center;gap:6px;display:inline-flex}.role-data-perm-item small{min-width:28px;color:var(--text-soft);font-size:12px;font-weight:600}.role-perm-list{max-height:420px;padding:0}.role-perm-list label{min-height:40px}.role-perm-list strong{min-width:0;color:var(--text-main);font-size:13px;font-weight:600}.modal-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0a192961;justify-content:center;align-items:center;padding:24px;animation:.18s both modalFade;display:flex;position:fixed;inset:0}.modal-overlay.is-drawer{-webkit-backdrop-filter:none;backdrop-filter:none;background:#00000073;justify-content:flex-end;align-items:stretch;padding:0}.platform-modal{background:#fff;border:1px solid #ffffffc2;border-radius:18px;flex-direction:column;max-width:calc(100vw - 48px);max-height:calc(100vh - 48px);animation:.2s both modalRise;display:flex;overflow:hidden;box-shadow:0 28px 80px #0a19293d}.platform-modal.is-drawer{border:0;border-radius:0;max-width:100vw;height:100vh;max-height:100vh;animation:.28s cubic-bezier(.22,.61,.36,1) both drawerSlideIn;box-shadow:-8px 0 32px #0015292e}.modal-head,.modal-foot{flex-shrink:0;align-items:center;padding:18px 22px;display:flex}.modal-head{border-bottom:1px solid var(--line);flex-shrink:0;justify-content:space-between}.modal-head strong{color:var(--text-main);font-size:16px}.modal-head>div{min-width:0}.modal-head p{color:var(--text-soft);margin:5px 0 0;font-size:12px;font-weight:400;line-height:1.5}.modal-head button{width:30px;height:30px;color:var(--text-soft);background:#f5f7fb;border:0;border-radius:10px;font-size:20px;line-height:1}.modal-head button:hover{color:var(--danger);background:#fff2f0}.modal-body{flex:auto;min-height:0;padding:20px 22px;overflow:hidden auto}.modal-body .bind-wecom-search{box-sizing:border-box;border:1px solid var(--input-border);width:100%;height:40px;min-height:40px;color:var(--text-body);appearance:none;background:#fff;border-radius:8px;outline:none;margin:0;padding:0 12px;font-size:13px;line-height:40px;display:block}.modal-body .bind-wecom-search::placeholder{color:var(--text-soft)}.modal-body .bind-wecom-search:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-ring)}.modal-body .bind-wecom-toolbar{flex-direction:column;gap:8px;display:flex}.modal-body .bind-wecom-select-all.account-check-item,.modal-body .bind-wecom-panel .account-check-item{border:1px solid var(--input-border);background:#fff;border-radius:8px}.modal-body:has(.shop-sync-log-modal){flex-direction:column;display:flex;overflow:hidden}.modal-body:has(.event-request-log-modal){flex-direction:column;display:flex;overflow:hidden}:is(.modal-body:has(.online-service-log-modal),.modal-body:has(.store-visit-log-modal)){flex-direction:column;display:flex;overflow:hidden}.modal-body:has(.sop-schedule){background:#f6f8fb;padding:0}.modal-body:has(.account-sync-log-modal){flex-direction:column;display:flex;overflow:hidden}.modal-body .form-grid,.modal-body .modal-section,.modal-body .confirm-content{padding:0}.modal-body>.form-error,.modal-body>.form-hint,.modal-body .account-form-modal>.form-error,.modal-body .account-role-perm-modal>.form-error{margin:0 0 14px}.modal-body .permission-list,.modal-body .permission-toolbar{padding-left:0;padding-right:0}.modal-foot{border-top:1px solid var(--line);background:#fbfcff;flex-shrink:0;justify-content:flex-end;gap:12px;margin-top:auto}.modal-foot .primary-action,.modal-foot .ghost-action{min-width:92px}.modal-foot button:disabled{cursor:not-allowed;opacity:.62;transform:none}.confirm-content{color:var(--text-body);gap:14px;padding:22px;font-size:14px;font-weight:700;line-height:1.7;display:flex}.confirm-mark{width:34px;height:34px;color:var(--primary);background:#1677ff1a;border-radius:999px;flex:0 0 34px;justify-content:center;align-items:center;font-size:18px;font-weight:900;display:inline-flex}.confirm-mark.danger{color:var(--danger);background:#fff2f0}.confirm-mark.success{color:var(--success);background:var(--success-bg)}.confirm-mark.error{color:var(--danger);background:#fff2f0}.confirm-body{flex:1;min-width:0}.confirm-feedback{border-radius:10px;margin:10px 0 0;padding:10px 12px;font-size:13px;font-weight:700;line-height:1.6}.confirm-feedback.error{color:var(--danger);background:#fff2f0}.confirm-feedback.success{color:var(--success);background:var(--success-bg)}.confirm-content p{margin:4px 0 0}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:20px 22px;display:grid}.detail-item{border:1px solid var(--line);background:#fbfcff;border-radius:14px;min-height:68px;padding:13px 14px}.detail-item.span-2{grid-column:span 2}.detail-item span{color:var(--text-soft);margin-bottom:8px;font-size:12px;font-weight:800;display:block}.detail-item strong,.detail-item p{color:var(--text-main);word-break:break-word;font-size:14px;line-height:1.6}.detail-grid.detail-grid--compact{gap:8px 10px;padding:12px 14px}.detail-grid--compact .detail-item{border-radius:8px;flex-direction:row;align-items:center;gap:6px 8px;min-height:0;padding:8px 12px;display:flex}.detail-grid--compact .detail-item>span{color:var(--text-soft);flex-shrink:0;margin-bottom:0;font-size:12px;font-weight:500;line-height:1.4;display:inline}.detail-grid--compact .detail-item>span:after{content:"："}.detail-grid--compact .detail-item>strong{word-break:break-all;flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.4}.detail-grid--compact .detail-item.span-2:has(>div){flex-direction:column;align-items:stretch;gap:6px}.detail-grid--compact .detail-item.span-2:has(>div)>span{margin-bottom:0}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:20px 22px;display:grid}.product-card{border:1px solid var(--line);background:#fff;border-radius:16px;flex-direction:column;gap:12px;min-height:220px;padding:18px;display:flex}.product-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.product-card-head strong{color:var(--text-main);font-size:16px}.product-card-head small{color:var(--text-soft);margin-top:4px;font-size:12px;display:block}.product-card-meta{color:var(--text-body);gap:16px;font-size:13px;display:flex}.product-card-desc{color:var(--text-soft);-webkit-line-clamp:3;-webkit-box-orient:vertical;flex:1;font-size:13px;line-height:1.6;display:-webkit-box;overflow:hidden}.product-card-actions{flex-wrap:wrap;gap:8px;display:flex}.status-badge{white-space:nowrap;border-radius:999px;align-items:center;height:24px;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex}.status-badge.online{color:var(--success);background:var(--success-bg)}.status-badge.beta{color:var(--primary);background:var(--primary-light)}.status-badge.developing{color:#fa8c16;background:#fff7e6}.status-badge.offline{color:#8c8fa3;background:#f4f5f8}.form-hint{color:var(--text-soft);padding:0 22px 12px;font-size:13px}.tenant-table .data-row{grid-template-columns:1.4fr .8fr .8fr .6fr .6fr .6fr 1fr .9fr 1.4fr}@keyframes modalFade{0%{opacity:0}to{opacity:1}}@keyframes modalRise{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes drawerSlideIn{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes drawerSlideOut{0%{transform:translate(0)}to{transform:translate(100%)}}@keyframes drawerOverlayOut{0%{opacity:1}to{opacity:0}}.tenant-drawer-leave-active{pointer-events:none;animation:.3s forwards drawerOverlayOut!important}.tenant-drawer-leave-active .platform-modal.is-drawer{animation:.3s cubic-bezier(.22,.61,.36,1) forwards drawerSlideOut!important}.card-panel-body{padding:20px 22px}.card-head-copy{gap:4px;display:grid}.card-head-copy span{color:var(--text-soft);font-size:12px;line-height:1.6}.card-head--split{flex-wrap:wrap;gap:12px}.card-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-left:auto;display:flex}.card-toolbar .async-search-select{flex:0 0 140px;width:140px;min-width:140px}.card-toolbar .async-search-select input{box-sizing:border-box;border-radius:8px;height:32px;min-height:32px;padding:0 10px;font-size:12px}.card-toolbar select{border:1px solid var(--input-border);min-width:140px;height:32px;color:var(--text-body);background:#fff;border-radius:8px;flex:none;padding:0 10px;font-size:12px}.info-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.info-summary-grid label{color:var(--text-soft);margin-bottom:6px;font-size:12px;font-weight:600;display:block}.info-summary-grid strong{color:var(--text-main);font-size:14px;font-weight:600;line-height:1.5;display:block}.info-summary-grid small{color:var(--text-soft);margin-top:4px;font-size:12px;line-height:1.5;display:block}.info-summary-grid .is-warning{color:var(--warning)}.shop-config-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}.modal-alert-info{background:var(--primary-light);color:var(--text-body);border-radius:8px;margin-bottom:16px;padding:10px 12px;font-size:13px;line-height:1.6}.shop-config-panel{border:1px solid var(--line);border-radius:8px;overflow:hidden}.shop-config-panel-head{border-bottom:1px solid var(--line);background:#fafafa;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.shop-config-panel-head .card-toolbar{flex-wrap:wrap;justify-content:flex-end}.section-divider{background:var(--line-soft);height:1px;margin:16px 0}.ai-product-config-page .btn{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:5px;padding:6px 14px;font-size:13px;font-weight:500;transition:all .2s;display:inline-flex}.ai-product-config-page .btn-primary{color:#fff;background:#1677ff}.ai-product-config-page .btn-primary:hover:not(:disabled){background:#0958d9}.ai-product-config-page .btn-default{color:#555;background:#fff;border:1px solid #d9e0e8}.ai-product-config-page .btn-default:hover:not(:disabled){color:#1677ff;border-color:#1677ff}.ai-product-config-page .btn-warning{color:#fff;background:#fa8c16}.ai-product-config-page .btn-warning:hover:not(:disabled){background:#d46b08}.ai-product-config-page .btn-sm{padding:3px 10px;font-size:12px}.ai-product-config-page .btn:disabled{opacity:.6;cursor:not-allowed}.ai-product-config-page .sso-global-panel{background:#fff;border:1px solid #e8edf2;border-radius:8px;margin-bottom:16px;overflow:hidden}.ai-product-config-page .sso-global-header{border-bottom:1px solid #f0f2f5;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;display:flex}.ai-product-config-page .sso-global-title{color:#1a2332;font-size:15px;font-weight:600}.ai-product-config-page .sso-global-desc{color:#8c9bab;margin-top:3px;font-size:12px;line-height:1.5}.ai-product-config-page .sso-global-actions{flex-shrink:0;gap:8px;display:flex}.ai-product-config-page .sso-global-body{padding:20px}.ai-product-config-page .sso-config-grid{grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:20px;display:grid}.ai-product-config-page .sso-config-item label{color:#8c9bab;margin-bottom:5px;font-size:12px;font-weight:400;display:block}.ai-product-config-page .sso-config-item .val{color:#1a2332;font-size:14px;font-weight:500;line-height:1.5}.ai-product-config-page .val-inline-hint{color:#8c9bab;margin-left:6px;font-size:11px;font-weight:400}.ai-product-config-page .val-warn-block{flex-direction:column;gap:2px;display:flex}.ai-product-config-page .val-warn{color:#ff4d4f;font-size:14px;font-weight:500}.ai-product-config-page .val-rotate-hint{color:#fa8c16;text-align:left;cursor:pointer;background:0 0;border:none;padding:0;font-size:11px}.ai-product-config-page span.val-rotate-hint{cursor:default}.ai-product-config-page .sso-divider{background:#f0f2f5;height:1px;margin:12px 0}.ai-product-config-page .sso-fields-title{color:#555;margin-bottom:8px;font-size:13px;font-weight:500}.ai-product-config-page .sso-field-tags{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.ai-product-config-page .sso-field-tag{color:#555;background:#f5f7fa;border:1px solid #e8edf2;border-radius:4px;padding:3px 10px;font-size:12px;font-weight:500}.ai-product-config-page .sso-panel{background:#fff;border:1px solid #e8edf2;border-radius:8px;margin-bottom:16px;overflow:hidden}.ai-product-config-page .sso-panel .panel-body{background:#fff}.ai-product-config-page .sso-panel .panel-header{border-bottom:1px solid #f0f2f5;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.ai-product-config-page .sso-panel .panel-title{color:#1a2332;font-size:15px;font-weight:600}.ai-product-config-page .sso-panel .panel-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ai-product-config-page .search-select{color:#333;cursor:pointer;background:#fff;border:1px solid #d9e0e8;border-radius:6px;outline:none;padding:7px 12px;font-size:13px}.ai-product-config-page .search-select:focus{border-color:#1677ff}.ai-product-config-page .sso-product-list-body{padding:12px 20px}.ai-product-config-page .sso-product-list{display:block}.ai-product-config-page .sso-product-row{background:#fff;border:1px solid #e8edf2;border-radius:6px;align-items:center;gap:0;margin-bottom:10px;padding:14px 16px;transition:border-color .2s;display:flex}.ai-product-config-page .sso-product-row:last-child{margin-bottom:0}.ai-product-config-page .sso-product-row:hover{background:#fafcff;border-color:#d9e0e8}.ai-product-config-page .sso-product-row-info{flex:0 0 160px}.ai-product-config-page .sso-product-row-name{color:#1a2332;font-size:14px;font-weight:600}.ai-product-config-page .sso-product-row-status{margin-top:2px;font-size:12px;font-weight:400}.ai-product-config-page .sso-product-row-status.ok{color:#52c41a}.ai-product-config-page .sso-product-row-status.warn{color:#fa8c16}.ai-product-config-page .sso-product-row-fields{border-left:1px solid #f0f2f5;border-right:1px solid #f0f2f5;flex:1;grid-template-columns:repeat(4,1fr);gap:0;margin:0 12px;padding:0 16px;display:grid}.ai-product-config-page .sso-field-cell{padding:0 8px}.ai-product-config-page .sso-field-cell label{color:#8c9bab;margin-bottom:3px;font-size:11px;font-weight:400;display:block}.ai-product-config-page .sso-field-cell .fval{color:#1a2332;word-break:break-all;font-size:12px;line-height:1.5}.ai-product-config-page .sso-field-cell .fval.ok{color:#52c41a}.ai-product-config-page .sso-field-cell .fval.num{color:#1a2332;font-size:14px;font-weight:600}.ai-product-config-page .sso-field-cell .fval.is-muted{color:#8c9bab}.ai-product-config-page .sso-product-row-actions{flex-shrink:0;gap:6px;display:flex}.code-block{border:1px solid var(--line);color:var(--text-body);white-space:pre-wrap;word-break:break-all;background:#f7f8fa;border-radius:8px;margin-top:10px;padding:12px 14px;font-size:12px;line-height:1.6}.empty-hint,.table-empty{color:var(--text-soft);text-align:center;padding:16px 20px;font-size:13px}.account-list-table,.shop-list-table{min-width:1280px}.region-list-table .district-text{text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}@media (width<=1100px){.info-summary-grid,.ai-product-config-page .sso-config-grid{grid-template-columns:1fr}.ai-product-config-page .sso-product-row{flex-direction:column;align-items:stretch}.ai-product-config-page .sso-product-row-fields{border-top:1px solid #f0f2f5;border-left:0;border-right:0;grid-template-columns:1fr;margin:12px 0 0;padding:12px 0 0}.ai-product-config-page .sso-product-row-actions{border-top:1px solid #f0f2f5;justify-content:flex-end;margin-top:12px;padding-top:12px}.ai-product-config-page .sso-global-header{flex-direction:column;align-items:flex-start}}@media (width<=980px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.user-copy{display:none}}@media (width<=720px){.sidebar{width:64px}.logo-copy,.group-title,.menu-item span:last-child{display:none}.page-scroll{padding:18px}.stats-grid{grid-template-columns:1fr}}.tenant-toast-stack{z-index:10000;pointer-events:none;flex-direction:column;align-items:center;gap:10px;display:flex;position:fixed;top:20px;left:50%;transform:translate(-50%)}.tenant-toast{color:#fff;white-space:nowrap;border-radius:8px;align-items:center;gap:8px;min-height:40px;padding:10px 16px;font-size:14px;line-height:1.4;animation:.2s tenant-toast-in;display:inline-flex;box-shadow:0 6px 16px #0000001f}.tenant-toast.is-success{background:var(--success)}.tenant-toast.is-error{background:var(--danger)}@keyframes tenant-toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.kb-page{--kb-primary:#1677ff;--kb-primary-hover:#0958d9;--kb-primary-light:#e6f4ff;--kb-primary-border:#91caff;--kb-neutral-bg:#f5f5f5;--kb-bg-card:#fff;--kb-bg-subtle:#fafafa;--kb-text-title:#1f2937;--kb-text-body:#4b5563;--kb-text-muted:#9ca3af;--kb-text-light:#6b7280;--kb-border-color:#e5e7eb;--kb-border-light:#f3f4f6;--kb-shadow-sm:0 1px 2px 0 #0000000d;--kb-shadow-md:0 4px 6px -1px #00000012, 0 2px 4px -1px #0000000a;--kb-shadow-lg:0 10px 25px -5px #0000001a, 0 8px 10px -6px #0000000d;--kb-radius-sm:6px;--kb-radius-md:10px;--kb-radius-lg:14px;color:var(--kb-text-body);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5}.kb-page-container{width:100%;max-width:none;margin:0;padding:0}.kb-page-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.kb-page-header-info h1{color:var(--kb-text-title);letter-spacing:-.3px;align-items:center;gap:10px;margin:0;font-size:22px;font-weight:700;display:flex}.kb-icon-box{background:var(--kb-primary-light);width:32px;height:32px;color:var(--kb-primary);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.kb-icon-box svg{width:18px;height:18px}.kb-page-header-info p{color:var(--kb-text-light);margin:4px 0 0;font-size:13px}.kb-header-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.kb-btn{border-radius:var(--kb-radius-sm);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.kb-btn svg{flex-shrink:0;width:15px;height:15px}.kb-btn:disabled{opacity:.55;cursor:not-allowed}.kb-btn-primary{background-color:var(--kb-primary);color:#fff;box-shadow:0 2px 4px #1677ff33}.kb-btn-primary:hover:not(:disabled){background-color:var(--kb-primary-hover);box-shadow:0 4px 8px #1677ff4d}.kb-btn-secondary{background-color:var(--kb-bg-card);border-color:var(--kb-border-color);color:var(--kb-text-body)}.kb-btn-secondary:hover:not(:disabled){border-color:var(--kb-primary-border);color:var(--kb-primary);background-color:var(--kb-primary-light)}.kb-btn-text{color:var(--kb-text-light);background:0 0;padding:6px 10px}.kb-btn-text:hover:not(:disabled){background:var(--kb-neutral-bg);color:var(--kb-text-title)}.kb-btn-danger-text{color:#ef4444;background:0 0}.kb-btn-danger-text:hover:not(:disabled){background:#fef2f2}.kb-btn-sm{padding:5px 10px;font-size:12px}.kb-card{background:var(--kb-bg-card);border-radius:var(--kb-radius-lg);border:1px solid var(--kb-border-color);box-shadow:var(--kb-shadow-sm);overflow:hidden}.kb-toolbar{border-bottom:1px solid var(--kb-border-color);background:var(--kb-bg-card);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;display:flex}.kb-search-filters{flex-wrap:wrap;flex:1;align-items:center;gap:10px;display:flex}.kb-input-wrapper{align-items:center;display:inline-flex;position:relative}.kb-input-wrapper svg{color:var(--kb-text-muted);pointer-events:none;width:15px;height:15px;position:absolute;left:12px}.kb-input-control,.kb-select-control{border:1px solid var(--kb-border-color);border-radius:var(--kb-radius-sm);height:36px;color:var(--kb-text-title);box-sizing:border-box;background-color:#fff;outline:none;width:100%;padding:0 12px;font-family:inherit;font-size:13px;transition:all .2s}.kb-input-wrapper .kb-input-control{width:280px;padding-left:36px}.kb-input-control:focus,.kb-select-control:focus{border-color:var(--kb-primary);box-shadow:0 0 0 3px #1677ff1f}textarea.kb-input-control{resize:vertical;height:auto;min-height:80px;padding:8px 12px;line-height:1.5}.kb-workspace-layout{grid-template-columns:280px 1fr;min-height:680px;display:grid}.kb-sidebar-panel{border-right:1px solid var(--kb-border-color);background-color:var(--kb-bg-subtle);flex-direction:column;min-height:680px;display:flex}.kb-sidebar-header{border-bottom:1px solid var(--kb-border-color);background:#fff;justify-content:space-between;align-items:center;gap:8px;padding:16px 20px;display:flex}.kb-sidebar-title{color:var(--kb-text-title);align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.kb-sidebar-count{background:var(--kb-neutral-bg);color:var(--kb-text-light);border-radius:12px;padding:2px 7px;font-size:11px;font-weight:500}.kb-category-list{flex-direction:column;flex:1;gap:4px;padding:10px;display:flex;overflow-y:auto}.kb-category-item{border-radius:var(--kb-radius-md);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;flex-direction:column;gap:6px;width:100%;padding:12px 14px;font-family:inherit;transition:all .18s;display:flex;position:relative}.kb-category-item:hover{background-color:#f1f5f9}.kb-category-item.active{background-color:var(--kb-primary-light);border-color:var(--kb-primary-border)}.kb-category-item.active:before{content:"";background-color:var(--kb-primary);border-radius:0 4px 4px 0;width:4px;position:absolute;top:12px;bottom:12px;left:0}.kb-category-header-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.kb-category-name{color:var(--kb-text-title);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13.5px;font-weight:600;overflow:hidden}.kb-category-item.active .kb-category-name{color:var(--kb-primary)}.kb-category-right{flex-shrink:0;align-items:center;gap:6px;display:flex}.kb-category-badge{color:var(--kb-primary);background:#1677ff1a;border-radius:4px;flex-shrink:0;padding:1px 6px;font-size:11px;font-weight:500}.kb-category-actions{align-items:center;gap:2px;display:none}.kb-category-item:hover .kb-category-actions,.kb-category-item.active .kb-category-actions{display:flex}.kb-category-action-btn{color:var(--kb-text-light);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 4px;font-family:inherit;font-size:11px;line-height:1.2}.kb-category-action-btn:hover{color:var(--kb-primary);background:#1677ff14}.kb-category-action-btn.is-danger:hover{color:#dc2626;background:#dc262614}.kb-category-desc{color:var(--kb-text-light);white-space:nowrap;text-overflow:ellipsis;font-size:12px;line-height:1.4;overflow:hidden}.kb-main-panel{background:#fff;flex-direction:column;min-width:0;min-height:680px;display:flex}.kb-panel-header-bar{border-bottom:1px solid var(--kb-border-color);background:#fff;justify-content:space-between;align-items:flex-start;gap:20px;padding:20px 28px;display:flex}.kb-panel-header-info h2{color:var(--kb-text-title);align-items:center;gap:10px;margin:0;font-size:18px;font-weight:700;display:flex}.kb-panel-header-info p{color:var(--kb-text-light);margin:4px 0 0;font-size:13px}.kb-content-group-list{flex-direction:column;flex:1;gap:20px;padding:24px 28px;display:flex;overflow-y:auto}.kb-group-pagination{border-top:1px solid var(--kb-border-color);margin-top:4px;padding-top:8px}.kb-group-card{border:1px solid var(--kb-border-color);border-radius:var(--kb-radius-md);background:#fff;transition:border-color .2s,box-shadow .2s;overflow:hidden}.kb-group-card:hover{box-shadow:var(--kb-shadow-md);border-color:#cbd5e1}.kb-group-card-head{border-bottom:1px solid var(--kb-border-color);background:#fafafa;justify-content:space-between;align-items:center;gap:16px;padding:14px 20px;display:flex}.kb-group-title-area{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.kb-group-title{color:var(--kb-text-title);font-size:15px;font-weight:600}.kb-group-actions{align-items:center;gap:6px;display:flex}.kb-group-card-body{padding:18px 20px}.kb-paragraph-no{color:#1677ff;white-space:nowrap;margin-right:6px;font-size:12px;font-weight:600;display:inline}.kb-paragraph-body{white-space:pre-line}.kb-flow-container{display:block}.kb-flow-text-stack{color:var(--kb-text-body);font-size:14px;line-height:1.85}.kb-flow-text-line{white-space:pre-line;margin:0}.kb-flow-text-line+.kb-flow-text-line{margin-top:8px}.kb-media-grid{flex-wrap:wrap;align-items:flex-start;gap:14px;margin-top:14px;display:flex}.kb-media-card{background:0 0;flex:none;width:132px}.kb-media-card:hover .kb-media-preview{box-shadow:var(--kb-shadow-sm);border-color:#91caff}.kb-media-preview{color:#fff;border:1px solid var(--kb-border-light);border-radius:3px;justify-content:center;align-items:center;width:100%;height:94px;font-size:12px;font-weight:600;transition:all .2s;display:flex;position:relative;overflow:hidden}.kb-media-preview.img-1{background:linear-gradient(135deg,#3b82f6 0%,#1d4ed8 100%)}.kb-media-preview.img-2{background:linear-gradient(135deg,#10b981 0%,#047857 100%)}.kb-media-preview.img-3{background:linear-gradient(135deg,#8b5cf6 0%,#6d28d9 100%)}.kb-media-preview.video{background:linear-gradient(135deg,#f43f5e 0%,#be123c 100%)}.kb-media-preview img,.kb-media-preview video{object-fit:cover;width:100%;height:100%;display:block}.kb-media-type-tag{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;background:#0000008c;border-radius:4px;align-items:center;gap:3px;padding:2px 6px;font-size:10px;font-weight:500;display:flex;position:absolute;top:6px;left:6px}.kb-empty-state{text-align:center;color:var(--kb-text-muted);flex-direction:column;align-items:center;padding:60px 20px;display:flex}.kb-empty-state p{margin:0}.kb-inline-error{color:#ef4444;margin:0 0 12px;font-size:13px}.kb-drawer-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1000;opacity:0;visibility:hidden;pointer-events:none;background:#0f172a73;transition:all .25s cubic-bezier(.16,1,.3,1);position:fixed;inset:0}.kb-drawer-backdrop.active{opacity:1;visibility:visible;pointer-events:auto}.kb-drawer{z-index:1001;width:min(720px,92vw);box-shadow:var(--kb-shadow-lg);background:#fff;flex-direction:column;transition:transform .3s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%)}.kb-drawer-backdrop.active .kb-drawer{transform:translate(0)}.kb-category-modal{border-radius:var(--kb-radius-lg);z-index:1001;width:420px;max-width:calc(100vw - 32px);height:auto;box-shadow:var(--kb-shadow-lg);opacity:0;background:#fff;flex-direction:column;transition:opacity .25s,transform .25s;display:flex;position:fixed;inset:15% auto auto 50%;transform:translate(-50%,-20px)}.kb-drawer-backdrop.active .kb-category-modal{opacity:1;transform:translate(-50%)}.kb-import-modal{width:520px}.kb-drawer-header{border-bottom:1px solid var(--kb-border-color);justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.kb-drawer-header h3{color:var(--kb-text-title);margin:0;font-size:16px;font-weight:600}.kb-drawer-body{flex-direction:column;flex:1;gap:24px;padding:24px;display:flex;overflow-y:auto}.kb-drawer-footer{border-top:1px solid var(--kb-border-color);border-radius:0 0 var(--kb-radius-lg) var(--kb-radius-lg);background:#fafafa;justify-content:flex-end;align-items:center;gap:10px;padding:16px 24px;display:flex}.kb-form-section{flex-direction:column;gap:16px;display:flex}.kb-form-section-title{color:var(--kb-text-title);border-bottom:1px solid var(--kb-border-light);justify-content:space-between;align-items:center;padding-bottom:6px;font-size:14px;font-weight:600;display:flex}.kb-form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.kb-form-group{flex-direction:column;gap:6px;display:flex}.kb-form-label{color:var(--kb-text-title);font-size:13px;font-weight:500}.kb-form-label.required:after{content:"*";color:#ef4444;margin-left:3px}.kb-segments{flex-direction:column;gap:14px;display:flex}.kb-entry-block{border:0;border-bottom:1px solid var(--kb-border-light);background:0 0;border-radius:0;flex-direction:column;gap:12px;padding:0 0 18px;display:flex;position:relative}.kb-entry-block:last-child{border-bottom:0;padding-bottom:0}.kb-entry-block-head{justify-content:space-between;align-items:center;display:flex}.kb-entry-block-title{color:var(--kb-text-title);font-size:13px;font-weight:600}.kb-media-uploader-list{flex-wrap:wrap;align-items:flex-start;gap:12px;margin-top:10px;display:flex}.kb-upload-tile{border:1px dashed var(--kb-border-color);border-radius:var(--kb-radius-sm);width:120px;height:92px;color:var(--kb-text-light);cursor:pointer;background:#fff;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:0;font-family:inherit;font-size:11px;transition:all .2s;display:flex;position:relative;overflow:hidden}.kb-upload-tile.selected-media{border-style:solid;border-color:var(--kb-border-light);color:#fff;font-weight:600}.kb-upload-tile.img-1{background:linear-gradient(135deg,#3b82f6 0%,#1d4ed8 100%)}.kb-upload-tile.img-2{background:linear-gradient(135deg,#10b981 0%,#047857 100%)}.kb-upload-tile.img-3{background:linear-gradient(135deg,#8b5cf6 0%,#6d28d9 100%)}.kb-upload-tile.video{background:linear-gradient(135deg,#f43f5e 0%,#be123c 100%)}.kb-upload-tile:hover:not(:disabled):not(.selected-media){border-color:var(--kb-primary);color:var(--kb-primary);background:var(--kb-primary-light)}.kb-upload-tile img,.kb-upload-tile video{object-fit:cover;width:100%;height:100%;display:block}.kb-upload-remove{color:#fff;cursor:pointer;background:#0000008c;border:0;border-radius:50%;width:20px;height:20px;padding:0;font-size:14px;line-height:1;position:absolute;top:4px;right:4px}.kb-import-tip{color:var(--kb-text-light);margin:0;font-size:13px;line-height:1.6}.kb-import-actions{flex-wrap:wrap;gap:10px;display:flex}.kb-import-file-name{color:var(--kb-text-title);margin:12px 0 0;font-size:13px}@media (width<=1024px){.kb-workspace-layout{grid-template-columns:1fr}.kb-sidebar-panel{border-right:none;border-bottom:1px solid var(--kb-border-color);min-height:auto}.kb-main-panel{min-height:auto}.kb-form-grid{grid-template-columns:1fr}.kb-input-wrapper .kb-input-control{width:min(280px,100%)}}
