@import "https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100vh;transition:background-color .3s,color .3s}button{cursor:pointer;font:inherit}a{color:inherit;text-decoration:none}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes shimmer{0%{opacity:.5}to{opacity:1}}@keyframes pulse{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(2.8)}}:root[data-theme=terminal]{--color-bg:#0d0d0d;--color-surface:#0a0a0a;--color-card:#111;--color-text:#00ff41;--color-text-secondary:#00aa2a;--color-accent:#00ff41;--color-online:#00ff41;--color-offline:#f22;--color-warning:#fc0;--color-border:#1a3a1a;--color-hover:#0a1f0a;--color-active:#0d2b0d;--font-mono:"JetBrains Mono", monospace;--font-body:"JetBrains Mono", monospace;--radius:0px;--shadow-card-hover:0 0 12px #00ff4126;--shadow-btn:inset 0 0 8px #00ff411a;--scanline-opacity:.03}:root[data-theme=terminal] body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-mono);position:relative}:root[data-theme=terminal] body:after{content:"";pointer-events:none;z-index:9999;background:repeating-linear-gradient(0deg, transparent, transparent 2px, rgba(0, 0, 0, var(--scanline-opacity)) 2px, rgba(0, 0, 0, var(--scanline-opacity)) 4px);position:fixed;inset:0}:root[data-theme=terminal] .hostname,:root[data-theme=terminal] .name{text-shadow:0 0 8px #00ff4166}:root[data-theme=terminal] .logo:after{content:"█";margin-left:2px;font-weight:400;animation:1s step-end infinite blink}@keyframes blink{50%{opacity:0}}:root[data-theme=minimal]{--color-bg:#f5f5f0;--color-surface:#eaeae5;--color-card:#fff;--color-text:#1a1a1a;--color-text-secondary:#6a6a62;--color-accent:#1a1a1a;--color-online:#2d8a4e;--color-offline:#c0392b;--color-warning:#d4a017;--color-border:#ddddd5;--color-hover:#f0f0eb;--color-active:#e8e8e2;--font-mono:"DM Mono", monospace;--font-body:"DM Sans", sans-serif;--radius:4px;--shadow-card-hover:0 2px 12px #0000000f;--shadow-btn:none}:root[data-theme=minimal] body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body)}:root[data-theme=minimal] .card{box-shadow:0 1px 3px #0000000a}:root[data-theme=minimal] .section-title{letter-spacing:-.01em;font-family:DM Sans,sans-serif;font-weight:600}:root[data-theme=minimal] header{border-bottom:1px solid var(--color-border)}:root[data-theme=glass]{--color-bg:#0a0a1a;--color-surface:#ffffff0a;--color-card:#ffffff0f;--color-text:#e8e8f0;--color-text-secondary:#7a7a9a;--color-accent:#7c6fff;--color-online:#6fefff;--color-offline:#ff4f6e;--color-warning:#ffb347;--color-border:#ffffff14;--color-hover:#7c6fff14;--color-active:#7c6fff24;--font-mono:"JetBrains Mono", monospace;--font-body:"Outfit", sans-serif;--radius:12px;--shadow-card-hover:0 8px 32px #7c6fff26;--shadow-btn:0 0 12px #7c6fff33;--color-skeleton:#ffffff14}:root[data-theme=glass] body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);min-height:100vh;position:relative}:root[data-theme=glass] body:before{content:"";z-index:-1;background:radial-gradient(80% 60% at 10% 20%,#7c6fff2e 0%,#0000 60%),radial-gradient(60% 80% at 85% 70%,#6fefff1f 0%,#0000 55%),radial-gradient(50% 50%,#ff4f6e0f 0%,#0000 50%);position:fixed;inset:0}:root[data-theme=glass] .card{-webkit-backdrop-filter:blur(20px);border:1px solid #ffffff1a;box-shadow:0 4px 24px #0003}:root[data-theme=glass] .card:hover{border-color:#7c6fff4d;box-shadow:0 8px 32px #7c6fff26}:root[data-theme=glass] .switcher{-webkit-backdrop-filter:blur(16px);border:1px solid #ffffff1a}:root[data-theme=glass] .btn.active{box-shadow:0 0 16px #7c6fff4d}:root[data-theme=glass] header{-webkit-backdrop-filter:blur(12px);border-bottom:1px solid #ffffff0f}:root[data-theme=glass] .online{box-shadow:0 0 10px #6fefff80}:root[data-theme=glass] .skeleton{background:var(--color-skeleton)}
