:root{--tc-bg: #f1f5f9;--tc-surface: #ffffff;--tc-border: #e2e8f0;--tc-text: #0f172a;--tc-muted: #64748b;--tc-accent: #1677ff;--tc-accent-soft: #eff6ff;--tc-accent-hover: #0958d9;--tc-sider: #ffffff;--tc-sider-border: #e2e8f0;--tc-sider-text: #475569;--tc-sider-text-hover: #0f172a;--tc-radius: 10px;--tc-radius-sm: 8px;--tc-shadow: 0 1px 2px rgba(15, 23, 42, .06);--tc-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Microsoft YaHei", sans-serif}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--tc-font);background:var(--tc-bg);color:var(--tc-text);-webkit-font-smoothing:antialiased}.tc-page-loading{min-height:100vh;display:flex;align-items:center;justify-content:center}.tc-login-shell{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(160deg,#f8fafc,#eef2ff 48%,#f1f5f9)}.tc-login-header{padding:24px 28px 8px}.tc-login-brand-row{display:flex;align-items:center;gap:14px}.tc-brand .brand-mark{flex-shrink:0}.tc-login-brand{margin:0;font-size:20px;font-weight:800;letter-spacing:-.02em;color:var(--tc-text)}.tc-login-brand-sub{margin:4px 0 0;font-size:12px;color:var(--tc-muted)}.tc-layout{height:100vh;max-height:100vh;min-height:0!important;overflow:hidden}.tc-layout>.ant-layout{min-height:0!important}.tc-sider{display:flex;flex-direction:column;height:100vh;overflow:hidden;flex-shrink:0;border-right:1px solid var(--tc-sider-border)!important;background:var(--tc-sider)!important;box-shadow:1px 0 #0f172a0a}.tc-sider .ant-layout-sider-children{display:flex;flex-direction:column;height:100%;overflow:hidden}.tc-brand{display:flex;align-items:center;gap:10px;padding:18px 16px 14px;flex-shrink:0}.tc-brand-text{display:flex;flex-direction:column;gap:2px;min-width:0}.tc-brand-title{margin:0;font-size:14px;font-weight:800;letter-spacing:-.02em;line-height:1.25;color:var(--tc-text)}.tc-brand-sub{font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--tc-muted)}.tc-sider-nav{display:flex;flex-direction:column;gap:2px;padding:2px 10px;flex:1;min-height:0;overflow-y:auto}.tc-sider-nav-group+.tc-sider-nav-group{margin-top:12px}.tc-sider-nav-group-label{padding:0 12px 6px;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#94a3b8}.tc-sider-nav-item{position:relative;display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:var(--tc-radius-sm);color:var(--tc-sider-text);font-size:13px;font-weight:500;text-decoration:none;transition:color .15s,background .15s}.tc-sider-nav-item:hover{color:var(--tc-sider-text-hover);background:#f8fafc}.tc-sider-nav-item.is-active{color:var(--tc-accent-hover);background:var(--tc-accent-soft);font-weight:600}.tc-sider-nav-item.is-active:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--tc-accent)}.tc-sider-nav-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;font-size:15px;opacity:.85}.tc-sider-nav-item.is-active .tc-sider-nav-icon{opacity:1}.tc-sider-bottom{flex-shrink:0;padding:12px 10px 14px;border-top:1px solid var(--tc-sider-border);margin-top:4px}.tc-sider-tenant{padding:10px 12px;border-radius:var(--tc-radius-sm);background:#f8fafc;border:1px solid var(--tc-border)}.tc-sider-tenant-name{display:block;font-size:13px;font-weight:600;color:var(--tc-text);line-height:1.35}.tc-sider-tenant-id{display:block;margin-top:2px;font-size:11px;color:var(--tc-muted);word-break:break-all}.tc-main{min-width:0;min-height:0;display:flex;flex-direction:column;background:var(--tc-bg)}.tc-header{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 24px;height:56px;background:var(--tc-surface);border-bottom:1px solid var(--tc-border)}.tc-header-leading{display:flex;align-items:center;gap:12px;min-width:0}.tc-header-title{margin:0;font-size:17px;font-weight:700;letter-spacing:-.02em;color:var(--tc-text)}.tc-header-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.tc-content{flex:1;min-height:0;overflow:auto;padding:24px 28px 40px}.tc-content-inner{max-width:960px;margin:0 auto}.tc-panel-card{background:var(--tc-surface);border:1px solid var(--tc-border);border-radius:var(--tc-radius);box-shadow:var(--tc-shadow)}.tc-panel-card .ant-card-head{border-bottom:1px solid var(--tc-border);background:#fafbfc}@media(max-width:991px){.tc-header{padding:0 16px}.tc-content{padding:16px}}
