Migrate
This commit is contained in:
@@ -0,0 +1,385 @@
|
||||
@import url('https://fonts.googleapis.com/css2?family=Fira+Code&family=Orbitron:wght@500;700;900&family=Poppins:wght@300;400;500;600&family=Rajdhani:wght@500;600;700&display=swap');
|
||||
|
||||
/* APPLY STYLING AND THEME VARIABLES GLOBALLY & ON ACTIVE THEMES */
|
||||
:root, .dark, .theme-gray, .theme-slate, .theme-zinc {
|
||||
font-family: 'Poppins', sans-serif;
|
||||
|
||||
/* DRACULA & CYBERPUNK COLOR SYSTEM */
|
||||
--dracula-background: #181923;
|
||||
--dracula-background-dark: #0f1015;
|
||||
--dracula-foreground: #2d3142;
|
||||
--dracula-text: #f8f8f2;
|
||||
--dracula-slate: #6272a4;
|
||||
--dracula-cyan: #8be9fd;
|
||||
--dracula-green: #50fa7b;
|
||||
--dracula-orange: #ffb86c;
|
||||
--dracula-pink: #ff79c6;
|
||||
--dracula-purple: #bd93f9;
|
||||
--dracula-red: #ff5555;
|
||||
--dracula-yellow: #f1fa8c;
|
||||
|
||||
/* Theme preset colors (RGB values for Tailwind transparency support) */
|
||||
--color-50: 249 250 251;
|
||||
--color-100: 243 244 246;
|
||||
--color-200: 248 248 242; /* Text Color */
|
||||
--color-300: 209 213 219;
|
||||
--color-400: 156 163 175;
|
||||
--color-500: 107 114 128;
|
||||
--color-600: 75 85 99;
|
||||
--color-700: 45 49 66;
|
||||
--color-800: 24 25 35; /* Main container background */
|
||||
--color-900: 15 16 21; /* Core background */
|
||||
--color-logo-start: 189 147 249;
|
||||
--color-logo-stop: 139 233 253;
|
||||
|
||||
--standard-bg: rgba(45, 49, 66, 0.45);
|
||||
|
||||
/* INFO WIDGET COLORS */
|
||||
--info-widgets: var(--dracula-cyan);
|
||||
--resource-bar-bg: rgba(98, 114, 164, 0.2);
|
||||
--resource-bar-fg: var(--dracula-cyan);
|
||||
|
||||
--widget-border: rgba(139, 233, 253, 0.2);
|
||||
|
||||
/* SERVICES COLORS */
|
||||
--service-group: var(--dracula-purple);
|
||||
--service-name: var(--dracula-text);
|
||||
--service-description: #a9b1d6;
|
||||
|
||||
--service-block-bg: rgba(15, 16, 21, 0.7);
|
||||
--service-block-text: var(--dracula-pink);
|
||||
|
||||
/* BOOKMARKS COLORS */
|
||||
--bookmark-group: var(--dracula-purple);
|
||||
--bookmark-icon-bg: rgba(189, 147, 249, 0.15);
|
||||
--bookmark-icon: var(--dracula-purple);
|
||||
--bookmark-name: var(--dracula-text);
|
||||
|
||||
/* ALL CARD COLORS (GLASSMORPHISM DEFAULT) */
|
||||
--card-color: rgba(30, 32, 48, 0.55);
|
||||
--card-color-hover: rgba(40, 44, 68, 0.8);
|
||||
|
||||
/* FOOTER COLORS */
|
||||
--footer-items: var(--dracula-purple);
|
||||
--scrollbar-fg: var(--dracula-purple);
|
||||
--scrollbar-bg: var(--dracula-background-dark);
|
||||
}
|
||||
|
||||
/* ==========================================
|
||||
* FUTURISTIC SCIFI HUD OVERLAY
|
||||
* ========================================== */
|
||||
body {
|
||||
background-color: #0c0d12 !important;
|
||||
position: relative;
|
||||
overflow-x: hidden;
|
||||
}
|
||||
|
||||
body::before {
|
||||
content: "";
|
||||
position: fixed;
|
||||
top: 0; left: 0; right: 0; bottom: 0;
|
||||
background:
|
||||
linear-gradient(rgba(12, 13, 18, 0.75), rgba(12, 13, 18, 0.85)),
|
||||
linear-gradient(90deg, rgba(139, 233, 253, 0.02) 1px, transparent 1px),
|
||||
linear-gradient(rgba(139, 233, 253, 0.02) 1px, transparent 1px);
|
||||
background-size: 100% 100%, 50px 50px, 50px 50px;
|
||||
pointer-events: none;
|
||||
z-index: -1;
|
||||
animation: gridPan 120s linear infinite;
|
||||
}
|
||||
|
||||
/* Add a neon scanline effect */
|
||||
body::after {
|
||||
content: "";
|
||||
position: fixed;
|
||||
top: 0; left: 0; width: 100%; height: 100%;
|
||||
background: linear-gradient(rgba(18, 16, 16, 0) 50%, rgba(0, 0, 0, 0.25) 50%), linear-gradient(90deg, rgba(255, 0, 0, 0.06), rgba(0, 255, 0, 0.02), rgba(0, 0, 255, 0.06));
|
||||
background-size: 100% 4px, 6px 100%;
|
||||
pointer-events: none;
|
||||
z-index: 9999;
|
||||
opacity: 0.15;
|
||||
}
|
||||
|
||||
@keyframes gridPan {
|
||||
from { background-position: 0 0, 0 0, 0 0; }
|
||||
to { background-position: 0 0, 1000px 1000px, 1000px 1000px; }
|
||||
}
|
||||
|
||||
/* ==========================================
|
||||
* TYPOGRAPHY & TITLE STYLES
|
||||
* ========================================== */
|
||||
.service-group-name, .bookmark-group-name, #widgets-title {
|
||||
font-family: 'Orbitron', sans-serif !important;
|
||||
font-weight: 700 !important;
|
||||
letter-spacing: 0.15em !important;
|
||||
text-transform: uppercase !important;
|
||||
text-shadow: 0 0 10px rgba(189, 147, 249, 0.6) !important;
|
||||
color: var(--dracula-purple) !important;
|
||||
}
|
||||
|
||||
.service-name {
|
||||
font-family: 'Rajdhani', sans-serif !important;
|
||||
font-weight: 700 !important;
|
||||
font-size: 1.15rem !important;
|
||||
letter-spacing: 0.03em !important;
|
||||
color: var(--dracula-text) !important;
|
||||
}
|
||||
|
||||
.service-description {
|
||||
font-family: 'Poppins', sans-serif !important;
|
||||
font-size: 0.8rem !important;
|
||||
color: #a9b1d6 !important;
|
||||
}
|
||||
|
||||
/* ==========================================
|
||||
* GLASSMORPHISM CARDS & ANIMATIONS
|
||||
* ========================================== */
|
||||
.service-card, li.bookmark > a, #information-widgets, #dracula-calendar {
|
||||
background: var(--card-color) !important;
|
||||
backdrop-filter: blur(14px) !important;
|
||||
-webkit-backdrop-filter: blur(14px) !important;
|
||||
border: 1px solid rgba(255, 255, 255, 0.06) !important;
|
||||
box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4) !important;
|
||||
transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* Hover base styling */
|
||||
.service-card:hover, li.bookmark > a:hover {
|
||||
transform: translateY(-4px) scale(1.02);
|
||||
background: var(--card-color-hover) !important;
|
||||
border-color: rgba(139, 233, 253, 0.4) !important;
|
||||
box-shadow: 0 12px 40px 0 rgba(0, 0, 0, 0.6), 0 0 15px rgba(139, 233, 253, 0.2) !important;
|
||||
}
|
||||
|
||||
/* Subtle corner tech border lines for hover */
|
||||
.service-card::after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: 0; left: 0; width: 4px; height: 4px;
|
||||
border-top: 2px solid transparent;
|
||||
border-left: 2px solid transparent;
|
||||
transition: all 0.3s;
|
||||
}
|
||||
|
||||
.service-card:hover::after {
|
||||
border-top-color: var(--dracula-cyan);
|
||||
border-left-color: var(--dracula-cyan);
|
||||
width: 15px; height: 15px;
|
||||
}
|
||||
|
||||
/* Service Images */
|
||||
.service img {
|
||||
border-radius: 20%;
|
||||
border: 1px solid rgba(255, 255, 255, 0.1);
|
||||
padding: 2px;
|
||||
background: rgba(0, 0, 0, 0.2);
|
||||
transition: all 0.4s;
|
||||
}
|
||||
|
||||
.service-card:hover img {
|
||||
transform: rotate(5deg) scale(1.05);
|
||||
border-color: rgba(139, 233, 253, 0.4);
|
||||
}
|
||||
|
||||
/* ==========================================
|
||||
* PULSING STATUS / ONLINE DOTS
|
||||
* ========================================== */
|
||||
.bg-green-500, .bg-emerald-500, .text-green-500, .text-emerald-500 {
|
||||
position: relative;
|
||||
background-color: var(--dracula-green) !important;
|
||||
box-shadow: 0 0 10px var(--dracula-green) !important;
|
||||
}
|
||||
|
||||
/* Create glowing animation rings */
|
||||
.bg-green-500::after, .bg-emerald-500::after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: -2px; left: -2px; right: -2px; bottom: -2px;
|
||||
border-radius: 50%;
|
||||
border: 1.5px solid var(--dracula-green);
|
||||
animation: statusPulse 2s infinite ease-out;
|
||||
opacity: 0;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
@keyframes statusPulse {
|
||||
0% { transform: scale(1); opacity: 0.8; }
|
||||
100% { transform: scale(2.4); opacity: 0; }
|
||||
}
|
||||
|
||||
.bg-red-500, .text-red-500 {
|
||||
position: relative;
|
||||
background-color: var(--dracula-red) !important;
|
||||
box-shadow: 0 0 10px var(--dracula-red) !important;
|
||||
}
|
||||
|
||||
.bg-red-500::after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: -2px; left: -2px; right: -2px; bottom: -2px;
|
||||
border-radius: 50%;
|
||||
border: 1.5px solid var(--dracula-red);
|
||||
animation: statusPulse 2s infinite ease-out;
|
||||
opacity: 0;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
/* ==========================================
|
||||
* WIDGET & SCROLLBAR CUSTOMS
|
||||
* ========================================== */
|
||||
#information-widgets {
|
||||
border-color: var(--widget-border) !important;
|
||||
margin-bottom: 2rem;
|
||||
}
|
||||
|
||||
#information-widgets * {
|
||||
font-family: 'Rajdhani', sans-serif !important;
|
||||
font-weight: 600;
|
||||
color: var(--info-widgets) !important;
|
||||
}
|
||||
|
||||
.resource-usage {
|
||||
background-color: var(--resource-bar-bg) !important;
|
||||
border: 1px solid rgba(255, 255, 255, 0.05);
|
||||
border-radius: 4px;
|
||||
height: 8px !important;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.resource-usage > div {
|
||||
background: linear-gradient(90deg, var(--dracula-cyan), var(--dracula-purple)) !important;
|
||||
box-shadow: 0 0 8px rgba(139, 233, 253, 0.6);
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.service-block {
|
||||
background: var(--service-block-bg) !important;
|
||||
border-radius: 6px;
|
||||
border: 1px solid rgba(255, 255, 255, 0.05) !important;
|
||||
}
|
||||
|
||||
.service-block .uppercase {
|
||||
color: var(--service-block-text) !important;
|
||||
font-family: 'Orbitron', sans-serif;
|
||||
font-size: 0.7rem;
|
||||
letter-spacing: 0.08em;
|
||||
}
|
||||
|
||||
.service-block .font-thin {
|
||||
color: var(--dracula-text) !important;
|
||||
font-family: 'Fira Code', monospace;
|
||||
}
|
||||
|
||||
/* Bookmarks styling */
|
||||
.bookmark-icon {
|
||||
background-color: var(--bookmark-icon-bg) !important;
|
||||
border: 1px solid rgba(189, 147, 249, 0.2);
|
||||
}
|
||||
|
||||
.bookmark-icon > div > div {
|
||||
background: var(--bookmark-icon) !important;
|
||||
}
|
||||
|
||||
.bookmark-name {
|
||||
font-family: 'Poppins', sans-serif !important;
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
/* Calendar widget tweaks */
|
||||
#dracula-calendar .flex.justify-between.flex-wrap span {
|
||||
color: var(--dracula-purple) !important;
|
||||
font-family: 'Rajdhani', sans-serif;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
#footer svg {
|
||||
color: var(--footer-items) !important;
|
||||
filter: drop-shadow(0 0 5px rgba(189, 147, 249, 0.5));
|
||||
}
|
||||
|
||||
* {
|
||||
--scrollbar-thumb: var(--scrollbar-fg);
|
||||
--scrollbar-track: var(--scrollbar-bg);
|
||||
}
|
||||
|
||||
/* Custom styling for the search input widget */
|
||||
#search-input, .search-container input {
|
||||
background: rgba(15, 23, 42, 0.6) !important;
|
||||
border: 1px solid rgba(56, 189, 248, 0.3) !important;
|
||||
color: #e2e8f0 !important;
|
||||
font-family: 'Courier New', Courier, monospace !important;
|
||||
border-radius: 8px !important;
|
||||
backdrop-filter: blur(8px) !important;
|
||||
}
|
||||
|
||||
#search-input:focus, .search-container input:focus {
|
||||
border-color: rgba(56, 189, 248, 0.8) !important;
|
||||
box-shadow: 0 0 15px rgba(56, 189, 248, 0.4) !important;
|
||||
outline: none !important;
|
||||
}
|
||||
|
||||
/* ==========================================
|
||||
* CUSTOM COLOR INTEGRATION BY ID
|
||||
* ========================================== */
|
||||
/* Setup distinct neon glow values on hover for individual service IDs */
|
||||
|
||||
#blue:hover .service-card { border-color: #6272a4 !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(98, 114, 164, 0.45) !important; }
|
||||
#yellow:hover .service-card { border-color: #f1fa8c !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(241, 250, 140, 0.45) !important; }
|
||||
#red:hover .service-card { border-color: #ff5555 !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(255, 85, 85, 0.45) !important; }
|
||||
#cyan:hover .service-card { border-color: #8be9fd !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(139, 233, 253, 0.45) !important; }
|
||||
#purple:hover .service-card { border-color: #bd93f9 !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(189, 147, 249, 0.45) !important; }
|
||||
#white:hover .service-card { border-color: #f8f8f2 !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(248, 248, 242, 0.45) !important; }
|
||||
#gold:hover .service-card { border-color: #ffd700 !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(255, 215, 0, 0.45) !important; }
|
||||
#green:hover .service-card { border-color: #50fa7b !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(80, 250, 123, 0.45) !important; }
|
||||
#lime:hover .service-card { border-color: #a3e635 !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(163, 230, 53, 0.45) !important; }
|
||||
#cobalt:hover .service-card { border-color: #3b82f6 !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(59, 130, 246, 0.45) !important; }
|
||||
#gray:hover .service-card { border-color: #9ca3af !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(156, 163, 175, 0.45) !important; }
|
||||
#crimson:hover .service-card { border-color: #dc143c !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(220, 20, 60, 0.45) !important; }
|
||||
#lavender:hover .service-card { border-color: #e6e6fa !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(230, 230, 250, 0.45) !important; }
|
||||
#teal:hover .service-card { border-color: #008080 !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(0, 128, 128, 0.45) !important; }
|
||||
#violet:hover .service-card { border-color: #7c3aed !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(124, 58, 237, 0.45) !important; }
|
||||
#aqua:hover .service-card { border-color: #00ffff !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(0, 255, 255, 0.45) !important; }
|
||||
#navy:hover .service-card { border-color: #000080 !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(0, 0, 128, 0.45) !important; }
|
||||
#beige:hover .service-card { border-color: #f5f5dc !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(245, 245, 220, 0.45) !important; }
|
||||
#slate:hover .service-card { border-color: #708090 !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(112, 128, 144, 0.45) !important; }
|
||||
#burgundy:hover .service-card { border-color: #800020 !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(128, 0, 32, 0.45) !important; }
|
||||
#emerald:hover .service-card { border-color: #50c878 !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(80, 200, 120, 0.45) !important; }
|
||||
#salmon:hover .service-card { border-color: #fa8072 !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(250, 128, 114, 0.45) !important; }
|
||||
#jade:hover .service-card { border-color: #00a86b !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(0, 168, 107, 0.45) !important; }
|
||||
#indigo:hover .service-card { border-color: #4b0082 !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(75, 0, 130, 0.45) !important; }
|
||||
#charcoal:hover .service-card { border-color: #36454f !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(54, 69, 79, 0.45) !important; }
|
||||
#cerulean:hover .service-card { border-color: #007ba7 !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(0, 123, 167, 0.45) !important; }
|
||||
#rose:hover .service-card { border-color: #ff007f !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(255, 0, 127, 0.45) !important; }
|
||||
#coral:hover .service-card { border-color: #ff7f50 !important; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 0 20px rgba(255, 127, 80, 0.45) !important; }
|
||||
|
||||
/* Keep active indicators styled cleanly inside the cards */
|
||||
#blue:hover .service-card::after { border-top-color: #6272a4; border-left-color: #6272a4; }
|
||||
#yellow:hover .service-card::after { border-top-color: #f1fa8c; border-left-color: #f1fa8c; }
|
||||
#red:hover .service-card::after { border-top-color: #ff5555; border-left-color: #ff5555; }
|
||||
#cyan:hover .service-card::after { border-top-color: #8be9fd; border-left-color: #8be9fd; }
|
||||
#purple:hover .service-card::after { border-top-color: #bd93f9; border-left-color: #bd93f9; }
|
||||
#white:hover .service-card::after { border-top-color: #f8f8f2; border-left-color: #f8f8f2; }
|
||||
#gold:hover .service-card::after { border-top-color: #ffd700; border-left-color: #ffd700; }
|
||||
#green:hover .service-card::after { border-top-color: #50fa7b; border-left-color: #50fa7b; }
|
||||
#lime:hover .service-card::after { border-top-color: #a3e635; border-left-color: #a3e635; }
|
||||
#cobalt:hover .service-card::after { border-top-color: #3b82f6; border-left-color: #3b82f6; }
|
||||
#gray:hover .service-card::after { border-top-color: #9ca3af; border-left-color: #9ca3af; }
|
||||
#crimson:hover .service-card::after { border-top-color: #dc143c; border-left-color: #dc143c; }
|
||||
#lavender:hover .service-card::after { border-top-color: #e6e6fa; border-left-color: #e6e6fa; }
|
||||
#teal:hover .service-card::after { border-top-color: #008080; border-left-color: #008080; }
|
||||
#violet:hover .service-card::after { border-top-color: #7c3aed; border-left-color: #7c3aed; }
|
||||
#aqua:hover .service-card::after { border-top-color: #00ffff; border-left-color: #00ffff; }
|
||||
#navy:hover .service-card::after { border-top-color: #000080; border-left-color: #000080; }
|
||||
#beige:hover .service-card::after { border-top-color: #f5f5dc; border-left-color: #f5f5dc; }
|
||||
#slate:hover .service-card::after { border-top-color: #708090; border-left-color: #708090; }
|
||||
#burgundy:hover .service-card::after { border-top-color: #800020; border-left-color: #800020; }
|
||||
#emerald:hover .service-card::after { border-top-color: #50c878; border-left-color: #50c878; }
|
||||
#salmon:hover .service-card::after { border-top-color: #fa8072; border-left-color: #fa8072; }
|
||||
#jade:hover .service-card::after { border-top-color: #00a86b; border-left-color: #00a86b; }
|
||||
#indigo:hover .service-card::after { border-top-color: #4b0082; border-left-color: #4b0082; }
|
||||
#charcoal:hover .service-card::after { border-top-color: #36454f; border-left-color: #36454f; }
|
||||
#cerulean:hover .service-card::after { border-top-color: #007ba7; border-left-color: #007ba7; }
|
||||
#rose:hover .service-card::after { border-top-color: #ff007f; border-left-color: #ff007f; }
|
||||
#coral:hover .service-card::after { border-top-color: #ff7f50; border-left-color: #ff7f50; }
|
||||
Reference in New Issue
Block a user