*, ::before, ::after{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x:;--tw-pan-y:;--tw-pinch-zoom:;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position:;--tw-gradient-via-position:;--tw-gradient-to-position:;--tw-ordinal:;--tw-slashed-zero:;--tw-numeric-figure:;--tw-numeric-spacing:;--tw-numeric-fraction:;--tw-ring-inset:;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / 0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur:;--tw-brightness:;--tw-contrast:;--tw-grayscale:;--tw-hue-rotate:;--tw-invert:;--tw-saturate:;--tw-sepia:;--tw-drop-shadow:;--tw-backdrop-blur:;--tw-backdrop-brightness:;--tw-backdrop-contrast:;--tw-backdrop-grayscale:;--tw-backdrop-hue-rotate:;--tw-backdrop-invert:;--tw-backdrop-opacity:;--tw-backdrop-saturate:;--tw-backdrop-sepia:;--tw-contain-size:;--tw-contain-layout:;--tw-contain-paint:;--tw-contain-style:;}::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x:;--tw-pan-y:;--tw-pinch-zoom:;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position:;--tw-gradient-via-position:;--tw-gradient-to-position:;--tw-ordinal:;--tw-slashed-zero:;--tw-numeric-figure:;--tw-numeric-spacing:;--tw-numeric-fraction:;--tw-ring-inset:;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / 0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur:;--tw-brightness:;--tw-contrast:;--tw-grayscale:;--tw-hue-rotate:;--tw-invert:;--tw-saturate:;--tw-sepia:;--tw-drop-shadow:;--tw-backdrop-blur:;--tw-backdrop-brightness:;--tw-backdrop-contrast:;--tw-backdrop-grayscale:;--tw-backdrop-hue-rotate:;--tw-backdrop-invert:;--tw-backdrop-opacity:;--tw-backdrop-saturate:;--tw-backdrop-sepia:;--tw-contain-size:;--tw-contain-layout:;--tw-contain-paint:;--tw-contain-style:;}*, ::before, ::after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb;}::before, ::after{--tw-content:'';}html, :host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:"Source Han Sans CN", system-ui, -apple-system, sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;}body{margin:0;line-height:inherit;}hr{height:0;color:inherit;border-top-width:1px;}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}h1, h2, h3, h4, h5, h6{font-size:inherit;font-weight:inherit;}a{color:inherit;text-decoration:inherit;}b, strong{font-weight:bolder;}code, kbd, samp, pre{font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em;}small{font-size:80%;}sub, sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline;}sub{bottom:-0.25em;}sup{top:-0.5em;}table{text-indent:0;border-color:inherit;border-collapse:collapse;}button, input, optgroup, select, textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0;}button, select{text-transform:none;}button, input:where([type='button']), input:where([type='reset']), input:where([type='submit']){-webkit-appearance:button;background-color:transparent;background-image:none;}:-moz-focusring{outline:auto;}:-moz-ui-invalid{box-shadow:none;}progress{vertical-align:baseline;}::-webkit-inner-spin-button, ::-webkit-outer-spin-button{height:auto;}[type='search']{-webkit-appearance:textfield;outline-offset:-2px;}::-webkit-search-decoration{-webkit-appearance:none;}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}summary{display:list-item;}blockquote, dl, dd, h1, h2, h3, h4, h5, h6, hr, figure, p, pre{margin:0;}fieldset{margin:0;padding:0;}legend{padding:0;}ol, ul, menu{list-style:none;margin:0;padding:0;}dialog{padding:0;}textarea{resize:vertical;}input::-moz-placeholder, textarea::-moz-placeholder{opacity:1;color:#9ca3af;}input::placeholder, textarea::placeholder{opacity:1;color:#9ca3af;}button, [role="button"]{cursor:pointer;}:disabled{cursor:default;}img, svg, video, canvas, audio, iframe, embed, object{display:block;vertical-align:middle;}img, video{max-width:100%;height:auto;}[hidden]:where(:not([hidden="until-found"])){display:none;}.\!container{width:100% !important;}.container{width:100%;}@media (min-width:640px){.\!container{max-width:640px !important;}.container{max-width:640px;}}@media (min-width:768px){.\!container{max-width:768px !important;}.container{max-width:768px;}}@media (min-width:1080px){.\!container{max-width:1080px !important;}.container{max-width:1080px;}}@media (min-width:1280px){.\!container{max-width:1280px !important;}.container{max-width:1280px;}}@media (min-width:1536px){.\!container{max-width:1536px !important;}.container{max-width:1536px;}}.monitor-card{background:rgba(139, 92, 246, 0.1);backdrop-filter:blur(10px);border-radius:1.25rem;overflow:hidden;transition:all 0.3s ease;border:1px solid rgba(139, 92, 246, 0.2);}.monitor-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px rgba(139, 92, 246, 0.2);}.monitor-card-header{padding:1.25rem;background:linear-gradient(135deg, rgba(139, 92, 246, 0.3), rgba(109, 40, 217, 0.3));display:flex;justify-content:space-between;align-items:center;font-weight:600;font-size:1.125rem;}.monitor-card-body{padding:1.25rem;}.health-dashboard{background:linear-gradient(135deg, rgba(139, 92, 246, 0.2), rgba(109, 40, 217, 0.2));border-radius:1.25rem;padding:1.25rem;backdrop-filter:blur(5px);}.service-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid rgba(139, 92, 246, 0.1);}.service-item:last-child{border-bottom:none;}.metric{margin:15px 0;}.metric-label{font-size:12px;opacity:0.7;margin-bottom:5px;display:flex;justify-content:space-between;}.metric-value{font-size:20px;font-weight:bold;}.alert-item{padding:15px;margin-bottom:10px;border-radius:0.75rem;background:rgba(0, 0, 0, 0.2);border-left:4px solid;animation:slideIn 0.3s ease-out;}.alert-critical{border-left-color:#ef4444;background:rgba(239, 68, 68, 0.1);}.alert-warning{border-left-color:#f59e0b;background:rgba(245, 158, 11, 0.1);}.alert-info{background:rgba(59, 130, 246, 0.1);}.stat-card{background:rgba(139, 92, 246, 0.1);backdrop-filter:blur(5px);padding:10px 20px;border-radius:0.9375rem;text-align:center;min-width:100px;}.fixed{position:fixed;}.absolute{position:absolute;}.relative{position:relative;}.inset-0{inset:0px;}.bottom-0{bottom:0px;}.left-0{left:0px;}.right-0{right:0px;}.top-0{top:0px;}.z-10{z-index:10;}.z-20{z-index:20;}.z-30{z-index:30;}.z-40{z-index:40;}.z-50{z-index:50;}.mb-1{margin-bottom:0.25rem;}.mb-2{margin-bottom:0.5rem;}.mb-3{margin-bottom:0.75rem;}.mb-4{margin-bottom:1rem;}.mb-5{margin-bottom:1.25rem;}.mb-6{margin-bottom:1.5rem;}.ml-1{margin-left:0.25rem;}.ml-2{margin-left:0.5rem;}.ml-3{margin-left:0.75rem;}.ml-4{margin-left:1rem;}.ml-5{margin-left:1.25rem;}.ml-6{margin-left:1.5rem;}.mr-1{margin-right:0.25rem;}.mr-2{margin-right:0.5rem;}.mr-3{margin-right:0.75rem;}.mr-4{margin-right:1rem;}.mr-5{margin-right:1.25rem;}.mr-6{margin-right:1.5rem;}.mt-1{margin-top:0.25rem;}.mt-2{margin-top:0.5rem;}.mt-3{margin-top:0.75rem;}.mt-4{margin-top:1rem;}.mt-5{margin-top:1.25rem;}.mt-6{margin-top:1.5rem;}.block{display:block;}.flex{display:flex;}.table{display:table;}.grid{display:grid;}.hidden{display:none;}.-translate-y-1{--tw-translate-y:-0.25rem;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.scale-105{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}@keyframes floatBg{0%, 100%{transform:translateY(0) rotate(0deg);}50%{transform:translateY(-20px) rotate(180deg);}}.animate-float-bg{animation:floatBg 20s ease-in-out infinite;}@keyframes glowPulse{0%, 100%{box-shadow:0 0 5px rgba(139, 92, 246, 0.5);}50%{box-shadow:0 0 20px rgba(139, 92, 246, 0.8);}}.animate-glow-pulse{animation:glowPulse 2s ease-in-out infinite;}@keyframes progressPulse{0%, 100%{opacity:1;}50%{opacity:0.8;}}.animate-progress-pulse{animation:progressPulse 2s ease-in-out infinite;}@keyframes pulse{50%{opacity:0.5;transform:scale(1.1);}0%, 100%{opacity:1;transform:scale(1);}}.animate-pulse-slow{animation:pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;}@keyframes slideIn{from{opacity:0;transform:translateX(-20px);}to{opacity:1;transform:translateX(0);}}.animate-slide-in{animation:slideIn 0.3s ease-out;}.gap-1{gap:0.25rem;}.gap-2{gap:0.5rem;}.gap-3{gap:0.75rem;}.gap-4{gap:1rem;}.gap-5{gap:1.25rem;}.gap-6{gap:1.5rem;}.overflow-hidden{overflow:hidden;}.overflow-x-auto{overflow-x:auto;}.overflow-y-auto{overflow-y:auto;}.rounded{border-radius:0.25rem;}.rounded-2xl{border-radius:1rem;}.rounded-full{border-radius:9999px;}.rounded-lg{border-radius:0.5rem;}.rounded-md{border-radius:0.375rem;}.rounded-xl{border-radius:0.75rem;}.border-gray-100{--tw-border-opacity:1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1));}.border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));}.border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));}.border-purple-500{--tw-border-opacity:1;border-color:rgb(168 85 247 / var(--tw-border-opacity, 1));}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1));}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1));}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1));}.bg-gray-800{--tw-bg-opacity:1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1));}.bg-gray-900{--tw-bg-opacity:1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1));}.bg-purple-500{--tw-bg-opacity:1;background-color:rgb(168 85 247 / var(--tw-bg-opacity, 1));}.bg-purple-600{--tw-bg-opacity:1;background-color:rgb(147 51 234 / var(--tw-bg-opacity, 1));}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));}.from-purple-400{--tw-gradient-from:#c084fc var(--tw-gradient-from-position);--tw-gradient-to:rgb(192 132 252 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to);}.to-purple-600{--tw-gradient-to:#9333ea var(--tw-gradient-to-position);}.p-2{padding:0.5rem;}.p-3{padding:0.75rem;}.p-4{padding:1rem;}.p-5{padding:1.25rem;}.p-6{padding:1.5rem;}.px-2{padding-left:0.5rem;padding-right:0.5rem;}.px-3{padding-left:0.75rem;padding-right:0.75rem;}.px-4{padding-left:1rem;padding-right:1rem;}.px-5{padding-left:1.25rem;padding-right:1.25rem;}.px-6{padding-left:1.5rem;padding-right:1.5rem;}.py-1{padding-top:0.25rem;padding-bottom:0.25rem;}.py-2{padding-top:0.5rem;padding-bottom:0.5rem;}.py-3{padding-top:0.75rem;padding-bottom:0.75rem;}.py-4{padding-top:1rem;padding-bottom:1rem;}.py-5{padding-top:1.25rem;padding-bottom:1.25rem;}.py-6{padding-top:1.5rem;padding-bottom:1.5rem;}.text-left{text-align:left;}.text-center{text-align:center;}.text-right{text-align:right;}.text-2xl{font-size:1.5rem;line-height:2rem;}.text-3xl{font-size:1.875rem;line-height:2.25rem;}.text-4xl{font-size:2.25rem;line-height:2.5rem;}.text-base{font-size:1rem;line-height:1.5rem;}.text-lg{font-size:1.125rem;line-height:1.75rem;}.text-sm{font-size:0.875rem;line-height:1.25rem;}.text-xl{font-size:1.25rem;line-height:1.75rem;}.text-xs{font-size:0.75rem;line-height:1rem;}.font-bold{font-weight:700;}.font-extrabold{font-weight:800;}.font-medium{font-weight:500;}.font-normal{font-weight:400;}.font-semibold{font-weight:600;}.text-dark{--tw-text-opacity:1;color:rgb(31 41 55 / var(--tw-text-opacity, 1));}.text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219 / var(--tw-text-opacity, 1));}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1));}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1));}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81 / var(--tw-text-opacity, 1));}.text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55 / var(--tw-text-opacity, 1));}.text-purple-400{--tw-text-opacity:1;color:rgb(192 132 252 / var(--tw-text-opacity, 1));}.text-purple-500{--tw-text-opacity:1;color:rgb(168 85 247 / var(--tw-text-opacity, 1));}.text-purple-600{--tw-text-opacity:1;color:rgb(147 51 234 / var(--tw-text-opacity, 1));}.text-white{--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity, 1));}.shadow{--tw-shadow:0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgb(0 0 0 / 0.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);}.shadow-lg{--tw-shadow:0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);}.shadow-md{--tw-shadow:0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);}.shadow-xl{--tw-shadow:0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);}.backdrop-blur{--tw-backdrop-blur:blur(8px);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);}.backdrop-blur-lg{--tw-backdrop-blur:blur(12px);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);}.backdrop-blur-md{--tw-backdrop-blur:blur(8px);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);}.transition{transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;}.duration-200{transition-duration:200ms;}.duration-300{transition-duration:300ms;}.duration-500{transition-duration:500ms;}.ease-in-out{transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);}.ease-out{transition-timing-function:cubic-bezier(0, 0, 0.2, 1);}.glass{background:rgba(139, 92, 246, 0.1);backdrop-filter:blur(10px);border:1px solid rgba(139, 92, 246, 0.2);}.glass-dark{background:rgba(139, 92, 246, 0.15);backdrop-filter:blur(10px);border:1px solid rgba(139, 92, 246, 0.3);}.glass-light{background:rgba(139, 92, 246, 0.08);backdrop-filter:blur(10px);border:1px solid rgba(139, 92, 246, 0.15);}.status-dot{width:10px;height:10px;border-radius:50%;display:inline-block;}.status-dot-running{background-color:#10b981;box-shadow:0 0 10px #10b981;animation:pulse 2s infinite;}.status-dot-stopped{background-color:#ef4444;}.status-dot-warning{background-color:#f59e0b;}.custom-scrollbar::-webkit-scrollbar{width:8px;height:8px;}.custom-scrollbar::-webkit-scrollbar-track{background:rgba(139, 92, 246, 0.1);border-radius:10px;}.custom-scrollbar::-webkit-scrollbar-thumb{background:#8b5cf6;border-radius:10px;}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#6d28d9;}.gradient-text{background:linear-gradient(135deg, #8b5cf6 0%, #6d28d9 100%);-webkit-background-clip:text;background-clip:text;color:transparent;}.progress-fill{height:100%;transition:width 0.5s ease;background:linear-gradient(90deg, #8b5cf6, #6d28d9);}.progress-fill-warning{background:linear-gradient(90deg, #f59e0b, #ef4444);}.progress-fill-critical{background:linear-gradient(90deg, #ef4444, #dc2626);}.card-hover{transition:all 0.3s ease;}.card-hover:hover{transform:translateY(-5px);box-shadow:0 20px 40px rgba(139, 92, 246, 0.2);}:root{--bg-start:#f5f7fa;--bg-mid:#eef2f6;--bg-end:#e6e9f0;--card-bg:rgba(255, 255, 255, 0.4);--border:rgba(0, 0, 0, 0.08);--text-primary:#1f2937;--text-secondary:#4b5563;--purple:#8b5cf6;--purple-dark:#6d28d9;--purple-light:#a78bfa;--hover-bg:rgba(139, 92, 246, 0.1);--particle-color:rgba(0, 0, 0, 0.1);}body.dark{--bg-start:#0f0c29;--bg-mid:#302b63;--bg-end:#24243e;--card-bg:rgba(255, 255, 255, 0.05);--border:rgba(255, 255, 255, 0.1);--text-primary:#ffffff;--text-secondary:rgba(255, 255, 255, 0.7);--hover-bg:rgba(139, 92, 246, 0.2);--particle-color:rgba(255, 255, 255, 0.3);}*{margin:0;padding:0;box-sizing:border-box;}body{font-family:'Source Han Sans CN', 'Inter', system-ui, -apple-system, sans-serif;background:linear-gradient(135deg, var(--bg-start), var(--bg-mid), var(--bg-end));color:var(--text-primary);min-height:100vh;transition:all 0.3s ease;}.dashboard{max-width:1400px;margin:0 auto;padding:16px;position:relative;z-index:2;}.particles{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;}.particle{position:absolute;background:var(--particle-color);border-radius:50%;animation:float linear infinite;}@keyframes float{0%{transform:translateY(100vh) rotate(0deg);opacity:0;}10%{opacity:1;}90%{opacity:1;}100%{transform:translateY(-100vh) rotate(360deg);opacity:0;}}.status-bar{background:var(--card-bg);backdrop-filter:blur(10px);border-radius:16px;padding:10px 16px;margin-bottom:16px;display:flex;justify-content:space-between;align-items:center;border:1px solid var(--border);flex-wrap:wrap;gap:8px;}.status-bar-left{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}.logo{display:flex;align-items:center;gap:8px;font-weight:bold;}.logo-img{width:28px;height:28px;-o-object-fit:contain;object-fit:contain;}.logo-text{font-size:16px;background:linear-gradient(135deg, var(--purple), var(--purple-light));-webkit-background-clip:text;background-clip:text;color:transparent;}.system-info{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-secondary);}.separator{opacity:0.5;}.status-bar-right{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}.service-stats{display:flex;gap:12px;padding-right:12px;border-right:1px solid var(--border);}.service-stat{display:flex;align-items:center;gap:4px;font-size:12px;}.service-stat.running{color:#10b981;}.service-stat.failed{color:#ef4444;}.time{font-size:13px;font-weight:500;color:var(--purple);font-family:monospace;}.theme-toggle{background:var(--card-bg);border:1px solid var(--border);padding:6px 10px;border-radius:10px;cursor:pointer;color:var(--text-primary);}.kpi-charts-row{display:grid;grid-template-columns:repeat(3, 1fr);gap:12px;margin-bottom:20px;}.kpi-chart-item{background:var(--card-bg);backdrop-filter:blur(10px);border-radius:16px;padding:12px 8px;text-align:center;border:1px solid var(--border);transition:all 0.2s ease;}.kpi-load-icon i, .kpi-uptime-icon i{font-size:60px;color:var(--purple);margin-bottom:6px;display:inline-block;}@media (max-width:768px){.kpi-load-icon i, .kpi-uptime-icon i{font-size:40px;}}.kpi-chart-item canvas{width:60px;height:60px;margin:0 auto 6px;display:block;}.kpi-chart-label{font-size:11px;color:var(--text-secondary);margin-top:6px;}.kpi-chart-value{font-size:16px;font-weight:bold;color:var(--text-primary);margin-top:2px;}.kpi-load-value{font-size:20px;font-weight:bold;color:var(--purple);margin:4px 0;}.kpi-load-detail{font-size:9px;color:var(--text-secondary);font-family:monospace;}.kpi-uptime-value{font-size:18px;font-weight:bold;color:#10b981;margin:4px 0;}@media (min-width:640px){.kpi-charts-row{grid-template-columns:repeat(6, 1fr);}.kpi-chart-item canvas{width:70px;height:70px;}.kpi-chart-value{font-size:18px;}}.section{background:var(--card-bg);backdrop-filter:blur(10px);border-radius:16px;margin-bottom:16px;border:1px solid var(--border);overflow:hidden;}.section-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border);}.section-header h3{font-size:14px;font-weight:600;display:flex;align-items:center;gap:6px;}.refresh-btn{background:var(--card-bg);border:1px solid var(--border);padding:4px 10px;border-radius:8px;cursor:pointer;font-size:12px;color:var(--text-primary);display:flex;align-items:center;gap:4px;}.services-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(160px, 1fr));gap:10px;padding:12px 16px;}.service-card{background:var(--card-bg);border-radius:12px;padding:10px;display:flex;align-items:center;gap:8px;border:1px solid var(--border);}.service-card.running .service-status-dot{background:#10b981;box-shadow:0 0 6px #10b981;}.service-card.stopped .service-status-dot{background:#ef4444;}.service-status-dot{width:8px;height:8px;border-radius:50%;}.service-name{flex:1;font-size:12px;}.service-status-text{font-size:11px;color:var(--text-secondary);}.two-columns{display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:16px;}@media (min-width:768px){.two-columns{grid-template-columns:1fr 1fr;gap:20px;}}.panel{background:var(--card-bg);backdrop-filter:blur(10px);border-radius:16px;border:1px solid var(--border);overflow:hidden;}.panel-header{padding:12px 16px;border-bottom:1px solid var(--border);}.panel-header h3{font-size:14px;font-weight:600;display:flex;align-items:center;gap:6px;}.panel-body{padding:16px;}.nginx-stats, .db-stats, .app-stats{display:grid;grid-template-columns:repeat(3, 1fr);gap:12px;margin-bottom:16px;}.nginx-stat, .db-stat, .app-stat{text-align:center;}.nginx-stat-value, .db-stat-value, .app-stat-value{font-size:20px;font-weight:bold;}.nginx-stat-label, .db-stat-label, .app-stat-label{font-size:10px;color:var(--text-secondary);margin-top:4px;}@media (min-width:640px){.nginx-stat-value, .db-stat-value, .app-stat-value{font-size:24px;}}.progress-section{margin-top:12px;}.progress-label{font-size:11px;color:var(--text-secondary);margin-bottom:4px;}.progress-bar{background:rgba(0, 0, 0, 0.1);border-radius:10px;height:4px;overflow:hidden;}.progress-fill{height:100%;background:linear-gradient(90deg, var(--purple), var(--purple-dark));transition:width 0.5s ease;}.ports-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch;}.ports-table{width:100%;border-collapse:collapse;font-size:12px;min-width:500px;}.ports-table thead{background:var(--card-bg);border-bottom:1px solid var(--border);}.ports-table th{text-align:left;padding:10px 12px;font-weight:600;color:var(--text-secondary);font-size:11px;}.ports-table td{padding:8px 12px;border-bottom:1px solid var(--border);color:var(--text-primary);}.ports-table tr:hover{background:var(--hover-bg);}.port-number{font-weight:600;color:var(--purple);font-family:monospace;}.port-address{font-family:monospace;font-size:11px;color:var(--text-secondary);}.port-count{font-size:11px;background:var(--card-bg);padding:2px 8px;border-radius:20px;}.cron-list{padding:12px 16px;}.cron-item{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--border);font-size:12px;flex-wrap:wrap;}.cron-item:last-child{border-bottom:none;}.cron-schedule{font-family:monospace;background:rgba(0,0,0,0.1);padding:2px 6px;border-radius:6px;font-size:10px;}.cron-command{color:var(--text-secondary);flex:1;font-size:11px;word-break:break-all;}.alerts-panel{background:var(--card-bg);backdrop-filter:blur(10px);border-radius:16px;margin-bottom:16px;border:1px solid var(--border);overflow:hidden;}.alerts-header{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;border-bottom:1px solid var(--border);background:var(--hover-bg);}.alerts-header h3{font-size:13px;font-weight:600;display:flex;align-items:center;gap:6px;}.alerts-clear-all{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:11px;padding:4px 8px;border-radius:6px;display:flex;align-items:center;gap:4px;}.alerts-clear-all:hover{background:rgba(239,68,68,0.15);color:#ef4444;}.alerts-list{max-height:250px;overflow-y:auto;}.alert-empty{padding:30px 16px;text-align:center;color:var(--text-secondary);}.alert-empty i{font-size:32px;color:#10b981;margin-bottom:8px;display:block;}.alert-item{padding:10px 16px;margin:6px 10px;display:flex;align-items:flex-start;gap:10px;border-left:3px solid;border-radius:8px;background:var(--card-bg);cursor:pointer;}.alert-item.critical{border-left-color:#ef4444;background:linear-gradient(90deg, rgba(239,68,68,0.1), transparent);}.alert-item.warning{border-left-color:#f59e0b;background:linear-gradient(90deg, rgba(245,158,11,0.1), transparent);}.alert-icon{font-size:14px;flex-shrink:0;}.alert-content{flex:1;}.alert-title{font-weight:600;font-size:12px;margin-bottom:2px;}.alert-message{font-size:11px;opacity:0.8;}.alert-time{font-size:9px;opacity:0.5;margin-top:2px;}.alert-close{background:none;border:none;font-size:14px;cursor:pointer;opacity:0.5;padding:0 4px;}.alert-close:hover{opacity:1;}canvas{max-height:180px;width:100%;}@media (min-width:768px){canvas{max-height:200px;}}.hide-xs{display:none;}@media (min-width:480px){.hide-xs{display:inline;}}.hide-mobile{display:none;}@media (min-width:640px){.hide-mobile{display:inline;}}.goaccess-link{color:var(--text-secondary);text-decoration:none;display:inline-flex;align-items:center;gap:4px;transition:all 0.2s;border-radius:4px;font-size:12px;}.goaccess-link:hover{color:var(--purple);background:var(--hover-bg);}*{scrollbar-width:none !important;-ms-overflow-style:none !important;}::-webkit-scrollbar{display:none !important;}@keyframes fadeIn{from{opacity:0;transform:translateY(-10px);}to{opacity:1;transform:translateY(0);}}@keyframes fadeOut{from{opacity:1;transform:translateX(0);}to{opacity:0;transform:translateX(100%);}}.hover\:-translate-y-1:hover{--tw-translate-y:-0.25rem;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.hover\:scale-105:hover{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.hover\:border-purple-500:hover{--tw-border-opacity:1;border-color:rgb(168 85 247 / var(--tw-border-opacity, 1));}.hover\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1));}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1));}.hover\:bg-gray-700:hover{--tw-bg-opacity:1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1));}.hover\:text-purple-400:hover{--tw-text-opacity:1;color:rgb(192 132 252 / var(--tw-text-opacity, 1));}.hover\:text-purple-500:hover{--tw-text-opacity:1;color:rgb(168 85 247 / var(--tw-text-opacity, 1));}@media (min-width:640px){.sm\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr));}}@media (min-width:768px){.md\:block{display:block;}.md\:flex{display:flex;}.md\:hidden{display:none;}.md\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr));}.md\:flex-row{flex-direction:row;}.md\:items-center{align-items:center;}.md\:justify-between{justify-content:space-between;}}@media (min-width:1080px){.lg\:grid-cols-4{grid-template-columns:repeat(4, minmax(0, 1fr));}}