:root{--font-sans:"Plus Jakarta Sans", "Noto Sans SC", system-ui, -apple-system, sans-serif;--bg-main:#f8fafc;--bg-card:#fff;--bg-card-subtle:#f1f5f9;--border-color:#e2e8f0;--border-focus:#3b82f6;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--primary:#2563eb;--primary-hover:#1d4ed8;--primary-light:#eff6ff;--teal:#0d9488;--teal-light:#f0fdfa;--amber:#d97706;--amber-light:#fffbeb;--rose:#e11d48;--rose-light:#fff1f2;--emerald:#059669;--emerald-light:#ecfdf5;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000000d, 0 2px 4px -2px #0000000d;--shadow-lg:0 10px 15px -3px #0000000d, 0 4px 6px -4px #0000000d;--shadow-glow:0 0 25px #2563eb1f;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:18px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-main);color:var(--text-primary);-webkit-font-smoothing:antialiased;background-image:radial-gradient(at 0 0,#2563eb08 0,#0000 50%),radial-gradient(at 100% 100%,#0d948808 0,#0000 50%);background-attachment:fixed;min-height:100vh}a{color:inherit;text-decoration:none}button,input,select,textarea{font-family:inherit;font-size:inherit}.system-layout{flex-direction:column;min-height:100vh;display:flex}.system-body{flex:1;display:flex}.system-sidebar{border-right:1px solid var(--border-color);background:#fff;flex-direction:column;flex-shrink:0;width:256px;display:flex}.system-main{flex-direction:column;flex:1;display:flex;overflow-x:hidden}.system-header{border-bottom:1px solid var(--border-color);z-index:20;background:#fff;justify-content:space-between;align-items:center;height:68px;padding:0 28px;display:flex;position:sticky;top:0}.system-content{flex:1;padding:28px}.system-footer{border-top:1px solid var(--border-color);text-align:center;background:#fff;padding:16px 28px}.copyright-text{color:var(--text-muted);letter-spacing:.5px;font-size:12px}.brand-badge{align-items:center;gap:10px;display:inline-flex}.brand-icon-box{border-radius:var(--radius-md);color:#fff;background:linear-gradient(135deg,#2563eb,#0d9488);justify-content:center;align-items:center;width:36px;height:36px;display:flex;box-shadow:0 4px 10px #2563eb33}.brand-title{color:var(--text-primary);letter-spacing:-.3px;font-size:16px;font-weight:700}.brand-tag{background:var(--primary-light);color:var(--primary);border-radius:4px;margin-left:6px;padding:2px 6px;font-size:10px;font-weight:600}.nav-group{flex-direction:column;gap:4px;padding:18px 14px;display:flex}.nav-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.8px;padding:6px 12px;font-size:11px;font-weight:700}.nav-item{border-radius:var(--radius-md);color:var(--text-secondary);border:1px solid #0000;align-items:center;gap:12px;padding:10px 14px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.nav-item:hover{color:var(--primary);background:#f8fafc;border-color:#f1f5f9}.nav-item.active{background:var(--primary-light);color:var(--primary);border-color:#dbeafe;font-weight:600}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:24px;transition:transform .2s,box-shadow .2s}.card:hover{box-shadow:var(--shadow-md)}.card-title{color:var(--text-primary);margin-bottom:6px;font-size:17px;font-weight:700}.card-desc{color:var(--text-secondary);font-size:13px;line-height:1.5}.btn{border-radius:var(--radius-md);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:9px 18px;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.btn-primary{color:#fff;background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 2px 6px #2563eb40}.btn-primary:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-1px);box-shadow:0 4px 10px #2563eb59}.btn-outline{border-color:var(--border-color);color:var(--text-secondary);background:#fff}.btn-outline:hover{color:var(--primary);background:#f8fafc;border-color:#cbd5e1}.btn-sm{padding:6px 12px;font-size:12px}.form-group{margin-bottom:16px}.form-label{color:var(--text-secondary);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.form-input,.form-select,.form-textarea{border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;color:var(--text-primary);background:#fff;outline:none;padding:10px 14px;transition:border-color .2s,box-shadow .2s}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px #3b82f626}.badge{border-radius:9999px;align-items:center;gap:4px;padding:4px 9px;font-size:11px;font-weight:600;display:inline-flex}.badge-primary{background:var(--primary-light);color:var(--primary)}.badge-teal{background:var(--teal-light);color:var(--teal)}.badge-amber{background:var(--amber-light);color:var(--amber)}.badge-rose{background:var(--rose-light);color:var(--rose)}.badge-emerald{background:var(--emerald-light);color:var(--emerald)}.data-table{border-collapse:separate;border-spacing:0;width:100%;font-size:13px}.data-table th{color:var(--text-secondary);text-align:left;border-bottom:1px solid var(--border-color);white-space:nowrap;background:#f8fafc;padding:12px 16px;font-weight:600}.data-table td{border-bottom:1px solid var(--border-color);color:var(--text-primary);padding:14px 16px}.data-table tr:hover td{background:#fbfcfe}.tag-cloud-vendor{border-radius:6px;align-items:center;gap:5px;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.vendor-aliyun{color:#c2410c;background:#fff7ed;border:1px solid #fed7aa}.vendor-tencent{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe}.vendor-huawei{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.vendor-aws{color:#854d0e;background:#fefce8;border:1px solid #fef08a}.vendor-azure{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;background:#0f172a66;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-content{border-radius:var(--radius-xl);border:1px solid var(--border-color);background:#fff;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a}@media print{.system-sidebar,.system-header,.no-print,button,.system-footer{display:none!important}body,.system-layout,.system-body,.system-main,.system-content{background:#fff!important;margin:0!important;padding:0!important}.card{box-shadow:none!important;border:none!important;padding:0!important}}
