/* Shared operations shell. Loaded after legacy styles to keep one visual hierarchy. */
.hw-layout { font-family: -apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif; color:#20334b; background:#f4f7fb; }
.hw-layout .main-container { background:#f4f7fb; min-height:100vh; }
.hw-layout .navbar { height:60px; background:#fff; box-shadow:none; border-bottom:1px solid #e6edf3; }
.hw-layout .sidebar-container { background:#fff!important; border-right:1px solid #e6edf3; }
.hw-layout .sidebar-container .el-scrollbar { height:calc(100% - 60px); }
.hw-layout-site-link { display:inline-flex; padding:10px 14px; border-radius:7px; background:#009b74; color:#fff; font-size:14px; white-space:nowrap; text-decoration:none; }
.hw-layout-site-link[hidden] { display:none; }
.hw-layout-home.hw-layout-platform .hw-ops-home-columns,.hw-layout-home.hw-layout-platform .hw-ops-home-next,.hw-layout-home.hw-layout-platform .hw-ops-home-head button { display:none; }
.hw-layout-home.hw-layout-platform .hw-ops-home-metrics { display:block; }
.hw-layout-brand { height:60px; padding:0 20px; display:flex; gap:10px; align-items:center; font-size:20px; font-weight:750; color:#102b36; white-space:nowrap; }
.hw-layout-brand span { font-size:11px; font-weight:500; background:#e0f6ee; color:#008563; padding:4px 6px; border-radius:4px; }
.hw-layout .hideSidebar .hw-layout-brand { font-size:0; padding:0; }
.hw-layout .hideSidebar .hw-layout-brand span { display:none; }
.hw-layout .hw-ops-menu .hw-ops-title { display:none; }
.hw-layout .hw-ops-menu .hw-ops-links { display:grid; padding:6px 12px 16px; gap:3px; }
.hw-layout .hw-ops-section { color:#7c8a9b; font-size:12px; margin-top:18px; }
.hw-layout .hw-ops-link,.hw-layout .hw-ops-link i { color:#405670; }
.hw-layout .hw-ops-link { min-height:38px; font-size:14px; }
.hw-layout .hw-ops-link:hover { background:#e3f6ef; color:#008664; }
.hw-layout .hideSidebar .hw-ops-menu { display:none; }
.hw-layout .app-container,.hw-layout-home { padding:24px!important; }
.hw-layout-old-title { display:none!important; }
.hw-layout-heading { display:flex; align-items:center; justify-content:space-between; margin-bottom:22px; }
.hw-layout-heading h1 { margin:0; color:#102239; font-size:26px; line-height:36px; font-weight:700; }
.hw-layout-heading p { margin:7px 0 0; color:#74859a; font-size:14px; line-height:22px; }
.hw-layout-home .hw-ops-home { margin:0 0 20px; padding:22px; background:#fff; border:1px solid #e6edf3; border-radius:12px; }
.hw-layout-home .hw-ops-home-head { display:flex; justify-content:space-between; align-items:center; gap:16px; }
.hw-layout-home h2 { font-size:18px; color:#183047; margin:0 0 8px; }
.hw-layout-home h3 { font-size:14px; color:#405670; }
.hw-layout-home .hw-ops-home-head p { font-size:13px; color:#718398; }
.hw-layout-home button { font-family:inherit; cursor:pointer; }
.hw-layout-home .hw-ops-home-head button { border:1px solid #dce6ef; background:white; border-radius:7px; padding:9px 12px; color:#405670; }
.hw-layout-home button:disabled { cursor:not-allowed; opacity:.55; }
.hw-layout-home .hw-ops-home-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin:18px 0; }
.hw-layout-home .hw-ops-home-empty { background:#f5f8fb; border-radius:8px; padding:16px; line-height:1.7; color:#728298; font-size:14px; }
.hw-layout-home .hw-ops-home-columns { display:grid; grid-template-columns:3fr 2fr; gap:20px; }
.hw-layout-home .hw-ops-home-next { color:#60758c; font-size:13px; margin-top:16px; line-height:1.6; }
.hw-layout-tools { background:#fff; border:1px solid #e6edf3; border-radius:12px; padding:22px; margin-bottom:20px; }
.hw-layout-description { margin:0 0 20px; color:#7a8b9e; font-size:13px; }
.hw-layout-tool-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.hw-layout-tool-group h3 { margin:0 0 12px; }
.hw-layout-tool { display:flex; width:100%; gap:12px; align-items:center; padding:14px; margin:0 0 8px; border:1px solid #e8eef3; background:#fff; border-radius:9px; text-align:left; min-height:76px; color:#29435b; }
.hw-layout-tool:hover { background:#f0fbf7; border-color:#a7dfce; }
.hw-layout-tool .hw-ops-card-icon { display:flex; align-items:center; justify-content:center; flex:0 0 36px; height:36px; background:#e6f8f1; border-radius:9px; color:#009b74; font-size:19px; }
.hw-layout-search-label { display:block; font-size:13px; color:#516980; margin-bottom:20px; }
.hw-layout-tool-search { display:block; box-sizing:border-box; margin-top:8px; padding:10px 12px; width:100%; max-width:420px; border:1px solid #dce6ef; border-radius:7px; background:#f8fafc; font:inherit; color:#20334b; }
.hw-layout-tool[hidden],.hw-layout-tool-group[hidden] { display:none; }
.hw-layout-search-empty { color:#718398; padding:20px 0; }
.hw-layout-tool strong { display:block; font-size:14px; margin-bottom:5px; }
.hw-layout-tool small,.hw-layout-tool p,.hw-layout-tool em { display:block; margin:0; font-size:12px; font-style:normal; line-height:1.6; color:#718398; }
.hw-layout-home .el-table { display:none; }
.hw-layout-home.hw-layout-system-open .el-table { display:block; }
.hw-layout-system-toggle { display:block; padding:12px 16px; border:1px solid #dce6ef; color:#62778d; background:#fff; border-radius:8px; margin:12px 0; }
.hw-layout-dashboard #hw-ops-dock { display:none!important; }
.hw-layout #hw-ops-dock { z-index:1000; }
.hw-layout .el-table { border-radius:9px; }
.hw-layout :is(button,a,input,select):focus-visible { outline:2px solid #009b74; outline-offset:3px; }
@media(min-width:992px) { .hw-layout .sidebar-container { width:224px!important; } .hw-layout .main-container { margin-left:224px; } .hw-layout .hideSidebar .sidebar-container { width:54px!important; } .hw-layout .hideSidebar .main-container { margin-left:54px; } }
@media(max-width:1100px) { .hw-layout-tool-grid { gap:12px; } .hw-layout-tool { padding:10px; } }
@media(max-width:760px) { .hw-layout .app-container,.hw-layout-home { padding:16px!important; } .hw-layout-home .hw-ops-home,.hw-layout-tools { padding:16px; } .hw-layout-tool-grid,.hw-layout-home .hw-ops-home-columns { grid-template-columns:1fr; } .hw-layout-home .hw-ops-home-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); } .hw-layout-heading h1 { font-size:24px; } .hw-layout-home .hw-ops-home-head { align-items:flex-start; } }
