Spaces:
Configuration error
Configuration error
| @import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Outfit:wght@300;400;500;600;700;800&family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&display=swap"); | |
| @import "tailwindcss"; | |
| :root { | |
| /* Ultra-Premium Frosted Glassmorphism Theme Tokens */ | |
| --glass-bg: rgba(255, 255, 255, 0.035); | |
| --glass-bg-hover: rgba(255, 255, 255, 0.07); | |
| --glass-border: rgba(255, 255, 255, 0.09); | |
| --glass-border-hover: rgba(255, 255, 255, 0.20); | |
| --glass-shadow: 0 16px 48px 0 rgba(0, 0, 0, 0.55), inset 0 1px 0 0 rgba(255, 255, 255, 0.16); | |
| --glass-blur: 28px; | |
| /* Harmonized Accent Colors (Completely Blue/Indigo Free) */ | |
| --accent-blue: #10b981; /* High-end Emerald Green */ | |
| --accent-purple: #14b8a6; /* Clean Teal highlight */ | |
| --accent-pink: #f43f5e; | |
| --accent-amber: #f59e0b; | |
| --accent-emerald: #10b981; | |
| /* Subtle Glowing Shadows */ | |
| --glow-blue: 0 0 24px rgba(16, 185, 129, 0.25); | |
| --glow-purple: 0 0 24px rgba(20, 184, 166, 0.25); | |
| --glow-pink: 0 0 24px rgba(244, 63, 94, 0.25); | |
| --glow-emerald: 0 0 24px rgba(16, 185, 129, 0.25); | |
| /* Obsidian Pitch Black backgrounds */ | |
| --bg-primary: #000000; | |
| --bg-secondary: #05050a; | |
| --text-primary: #f8fafc; | |
| --text-secondary: #cbd5e1; | |
| --text-muted: #64748b; | |
| --sidebar-width: 270px; | |
| --sidebar-collapsed: 76px; | |
| --header-height: 72px; | |
| --radius-sm: 8px; | |
| --radius-md: 12px; | |
| --radius-lg: 16px; | |
| --radius-xl: 20px; | |
| --radius-2xl: 24px; | |
| } | |
| *, | |
| *::before, | |
| *::after { | |
| box-sizing: border-box; | |
| } | |
| html { | |
| scroll-behavior: smooth; | |
| -webkit-font-smoothing: antialiased; | |
| -moz-osx-font-smoothing: grayscale; | |
| } | |
| body { | |
| margin: 0; | |
| padding: 0; | |
| font-family: "Plus Jakarta Sans", "Outfit", "Inter", system-ui, -apple-system, sans-serif; | |
| background: var(--bg-primary); | |
| color: var(--text-primary); | |
| min-height: 100vh; | |
| overflow-x: hidden; | |
| } | |
| h1, h2, h3, h4, h5, h6 { | |
| font-family: "Outfit", "Plus Jakarta Sans", sans-serif; | |
| letter-spacing: -0.025em; | |
| } | |
| /* Animated Colored Gradient Dark Theme */ | |
| .animated-bg { | |
| position: fixed; | |
| inset: 0; | |
| z-index: 0; | |
| overflow: hidden; | |
| background: | |
| radial-gradient(circle at 50% 50%, rgba(16, 185, 129, 0.08) 0%, transparent 65%), | |
| #000000; | |
| } | |
| .animated-bg::before, | |
| .animated-bg::after { | |
| content: ""; | |
| position: absolute; | |
| border-radius: 50%; | |
| filter: blur(120px); | |
| mix-blend-mode: screen; | |
| pointer-events: none; | |
| } | |
| /* Deep Violet Orb */ | |
| .animated-bg::before { | |
| width: 80vw; | |
| height: 80vh; | |
| background: radial-gradient(circle, rgba(139, 92, 246, 0.22) 0%, transparent 65%); | |
| top: -10%; | |
| left: -10%; | |
| animation: float-orb-1 28s infinite alternate ease-in-out; | |
| } | |
| /* Ocean Blue Orb */ | |
| .animated-bg::after { | |
| width: 85vw; | |
| height: 85vh; | |
| background: radial-gradient(circle, rgba(56, 189, 248, 0.2) 0%, transparent 65%); | |
| bottom: -10%; | |
| right: -10%; | |
| animation: float-orb-2 32s infinite alternate-reverse ease-in-out; | |
| } | |
| @keyframes float-orb-1 { | |
| 0% { transform: translate(0, 0) scale(1); } | |
| 100% { transform: translate(15vw, 15vh) scale(1.15); } | |
| } | |
| @keyframes float-orb-2 { | |
| 0% { transform: translate(0, 0) scale(1); } | |
| 100% { transform: translate(-15vw, -15vh) scale(1.1); } | |
| } | |
| /* Tactile Specular Liquid Glass Panel */ | |
| .glass-panel { | |
| background: rgba(255, 255, 255, 0.015); | |
| backdrop-filter: blur(var(--glass-blur)) saturate(150%); | |
| -webkit-backdrop-filter: blur(var(--glass-blur)) saturate(150%); | |
| border: 1px solid rgba(255, 255, 255, 0.08); | |
| box-shadow: | |
| 0 16px 40px rgba(0, 0, 0, 0.4), | |
| inset 0 1px 1px rgba(255, 255, 255, 0.2), | |
| inset 0 -1px 1px rgba(255, 255, 255, 0.03); | |
| border-radius: var(--radius-xl); | |
| transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1); | |
| position: relative; | |
| overflow: hidden; | |
| } | |
| .glass-panel::after { | |
| content: ""; | |
| position: absolute; | |
| inset: 0; | |
| border-radius: inherit; | |
| border: 1px solid transparent; | |
| background: linear-gradient(135deg, rgba(255, 255, 255, 0.25) 0%, transparent 40%, rgba(255, 255, 255, 0.05) 100%) border-box; | |
| -webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0); | |
| -webkit-mask-composite: destination-out; | |
| mask-composite: exclude; | |
| pointer-events: none; | |
| opacity: 0.8; | |
| transition: opacity 0.4s ease; | |
| } | |
| .glass-panel:hover { | |
| background: rgba(255, 255, 255, 0.03); | |
| border-color: rgba(255, 255, 255, 0.2); | |
| transform: translateY(-4px); | |
| box-shadow: | |
| 0 24px 48px rgba(0, 0, 0, 0.5), | |
| inset 0 2px 2px rgba(255, 255, 255, 0.3), | |
| inset 0 -1px 1px rgba(255, 255, 255, 0.05); | |
| } | |
| .glass-panel:hover::after { | |
| opacity: 1; | |
| } | |
| .glass-panel-static { | |
| background: rgba(255, 255, 255, 0.015); | |
| backdrop-filter: blur(var(--glass-blur)) saturate(150%); | |
| -webkit-backdrop-filter: blur(var(--glass-blur)) saturate(150%); | |
| border: 1px solid rgba(255, 255, 255, 0.08); | |
| box-shadow: | |
| 0 16px 40px rgba(0, 0, 0, 0.4), | |
| inset 0 1px 1px rgba(255, 255, 255, 0.2), | |
| inset 0 -1px 1px rgba(255, 255, 255, 0.03); | |
| border-radius: var(--radius-xl); | |
| position: relative; | |
| overflow: hidden; | |
| } | |
| .glass-panel-static::after { | |
| content: ""; | |
| position: absolute; | |
| inset: 0; | |
| border-radius: inherit; | |
| border: 1px solid transparent; | |
| background: linear-gradient(135deg, rgba(255, 255, 255, 0.15) 0%, transparent 50%) border-box; | |
| -webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0); | |
| -webkit-mask-composite: destination-out; | |
| mask-composite: exclude; | |
| pointer-events: none; | |
| } | |
| /* Glass Inputs */ | |
| .glass-input { | |
| width: 100%; | |
| padding: 14px 18px; | |
| background: rgba(3, 4, 12, 0.5); | |
| border: 1px solid rgba(255, 255, 255, 0.06); | |
| border-radius: var(--radius-md); | |
| color: var(--text-primary); | |
| font-family: inherit; | |
| font-size: 16px; | |
| line-height: 1.5; | |
| outline: none; | |
| box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.4); | |
| transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); | |
| } | |
| .glass-input-with-icon { | |
| padding-left: 46px ; | |
| } | |
| /* Custom Webkit Calendar indicator styling */ | |
| .glass-input[type="date"]::-webkit-calendar-picker-indicator { | |
| cursor: pointer; | |
| filter: invert(1) opacity(0.55); | |
| transition: all 0.2s ease; | |
| } | |
| .glass-input[type="date"]::-webkit-calendar-picker-indicator:hover { | |
| filter: invert(1) opacity(0.85); | |
| } | |
| .glass-input::placeholder { | |
| color: var(--text-muted); | |
| } | |
| .glass-input:focus { | |
| border-color: rgba(255, 255, 255, 0.3); | |
| box-shadow: | |
| inset 0 2px 4px rgba(0, 0, 0, 0.6), | |
| 0 0 0 3px rgba(255, 255, 255, 0.05), | |
| 0 4px 15px rgba(255, 255, 255, 0.05); | |
| background: rgba(3, 4, 12, 0.7); | |
| } | |
| .glass-input:disabled { | |
| opacity: 0.4; | |
| cursor: not-allowed; | |
| } | |
| .glass-input-error { | |
| border-color: rgba(244, 63, 94, 0.5) ; | |
| box-shadow: 0 0 0 3px rgba(244, 63, 94, 0.12) ; | |
| } | |
| /* Tactical Glass Buttons */ | |
| .glass-btn { | |
| display: inline-flex; | |
| align-items: center; | |
| justify-content: center; | |
| gap: 8px; | |
| padding: 12px 24px; | |
| font-family: inherit; | |
| font-size: 15px; | |
| font-weight: 600; | |
| border-radius: var(--radius-md); | |
| border: 1px solid transparent; | |
| cursor: pointer; | |
| transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); | |
| white-space: nowrap; | |
| outline: none; | |
| text-decoration: none; | |
| user-select: none; | |
| } | |
| .glass-btn:active:not(:disabled) { | |
| transform: scale(0.96); | |
| } | |
| .glass-btn:disabled { | |
| opacity: 0.45; | |
| cursor: not-allowed; | |
| transform: none ; | |
| box-shadow: none ; | |
| } | |
| .glass-btn-primary { | |
| background: rgba(255, 255, 255, 0.1); | |
| color: #fff; | |
| border: 1px solid rgba(255, 255, 255, 0.2); | |
| box-shadow: 0 4px 18px rgba(0, 0, 0, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.15); | |
| } | |
| .glass-btn-primary:hover:not(:disabled) { | |
| background: rgba(255, 255, 255, 0.15); | |
| box-shadow: 0 6px 24px rgba(0, 0, 0, 0.6), 0 0 0 2px rgba(255, 255, 255, 0.15); | |
| filter: brightness(1.1); | |
| } | |
| .glass-btn-secondary { | |
| background: var(--glass-bg); | |
| color: var(--text-primary); | |
| border: 1px solid var(--glass-border); | |
| backdrop-filter: blur(8px); | |
| box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05); | |
| } | |
| .glass-btn-secondary:hover:not(:disabled) { | |
| background: var(--glass-bg-hover); | |
| border-color: var(--glass-border-hover); | |
| box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2); | |
| } | |
| .glass-btn-danger { | |
| background: rgba(244, 63, 94, 0.15); | |
| color: #fff; | |
| border: 1px solid rgba(244, 63, 94, 0.4); | |
| box-shadow: 0 4px 18px rgba(0, 0, 0, 0.5), inset 0 1px 0 rgba(244, 63, 94, 0.2); | |
| } | |
| .glass-btn-danger:hover:not(:disabled) { | |
| background: rgba(244, 63, 94, 0.25); | |
| box-shadow: 0 6px 24px rgba(0, 0, 0, 0.6), 0 0 0 2px rgba(244, 63, 94, 0.2); | |
| filter: brightness(1.1); | |
| } | |
| .glass-btn-ghost { | |
| background: transparent; | |
| color: var(--text-secondary); | |
| border-color: transparent; | |
| } | |
| .glass-btn-ghost:hover:not(:disabled) { | |
| background: rgba(255, 255, 255, 0.05); | |
| color: var(--text-primary); | |
| } | |
| .glass-btn-sm { | |
| padding: 6px 12px; | |
| font-size: 12px; | |
| border-radius: var(--radius-sm); | |
| } | |
| .glass-btn-lg { | |
| padding: 14px 28px; | |
| font-size: 16px; | |
| border-radius: var(--radius-lg); | |
| } | |
| /* Animations */ | |
| .animate-fade-in-up { | |
| animation: fadeInUp 0.45s cubic-bezier(0.16, 1, 0.3, 1); | |
| } | |
| @keyframes fadeInUp { | |
| from { | |
| opacity: 0; | |
| transform: translateY(16px); | |
| } | |
| to { | |
| opacity: 1; | |
| transform: translateY(0); | |
| } | |
| } | |
| .animate-pulse-glow { | |
| animation: pulseGlow 2.5s infinite ease-in-out; | |
| } | |
| @keyframes pulseGlow { | |
| 0%, 100% { box-shadow: 0 0 20px rgba(56, 189, 248, 0.25); } | |
| 50% { box-shadow: 0 0 35px rgba(56, 189, 248, 0.45); } | |
| } | |
| .animate-radar-pulse { | |
| animation: radarPulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite; | |
| } | |
| @keyframes radarPulse { | |
| 0%, 100% { | |
| transform: scale(1); | |
| opacity: 0.8; | |
| } | |
| 50% { | |
| transform: scale(1.35); | |
| opacity: 0.15; | |
| } | |
| } | |
| .animate-glow-green { | |
| animation: glowGreen 1.8s infinite alternate ease-in-out; | |
| } | |
| @keyframes glowGreen { | |
| from { | |
| box-shadow: 0 0 4px rgba(16, 185, 129, 0.4); | |
| border-color: rgba(16, 185, 129, 0.4); | |
| } | |
| to { | |
| box-shadow: 0 0 16px rgba(16, 185, 129, 0.8); | |
| border-color: rgba(16, 185, 129, 0.8); | |
| } | |
| } | |
| .animate-shimmer { | |
| background: linear-gradient( | |
| 90deg, | |
| rgba(255, 255, 255, 0.01) 0%, | |
| rgba(255, 255, 255, 0.06) 50%, | |
| rgba(255, 255, 255, 0.01) 100% | |
| ); | |
| background-size: 200% 100%; | |
| animation: shimmer 1.8s infinite; | |
| } | |
| @keyframes shimmer { | |
| 0% { background-position: 200% 0; } | |
| 100% { background-position: -200% 0; } | |
| } | |
| /* Custom Scrollbars */ | |
| ::-webkit-scrollbar { | |
| width: 6px; | |
| height: 6px; | |
| } | |
| ::-webkit-scrollbar-track { | |
| background: transparent; | |
| } | |
| ::-webkit-scrollbar-thumb { | |
| background: rgba(255, 255, 255, 0.08); | |
| border-radius: 3px; | |
| } | |
| ::-webkit-scrollbar-thumb:hover { | |
| background: rgba(255, 255, 255, 0.16); | |
| } | |
| ::selection { | |
| background: rgba(255, 255, 255, 0.2); | |
| color: #fff; | |
| } | |
| /* Floating Sidebar Navigation */ | |
| .sidebar { | |
| position: fixed; | |
| left: 16px; | |
| top: 16px; | |
| bottom: 16px; | |
| width: var(--sidebar-width); | |
| background: rgba(10, 11, 28, 0.45); | |
| backdrop-filter: blur(var(--glass-blur)); | |
| -webkit-backdrop-filter: blur(var(--glass-blur)); | |
| border: 1px solid var(--glass-border); | |
| box-shadow: var(--glass-shadow); | |
| border-radius: var(--radius-2xl); | |
| z-index: 40; | |
| display: flex; | |
| flex-direction: column; | |
| transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); | |
| } | |
| .sidebar::after { | |
| content: ""; | |
| position: absolute; | |
| inset: 0; | |
| border-radius: inherit; | |
| border: 1px solid transparent; | |
| background: linear-gradient(135deg, rgba(255, 255, 255, 0.08) 0%, transparent 40%) border-box; | |
| -webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0); | |
| -webkit-mask-composite: destination-out; | |
| mask-composite: exclude; | |
| pointer-events: none; | |
| } | |
| .sidebar-link { | |
| display: flex; | |
| align-items: center; | |
| gap: 12px; | |
| padding: 10px 16px; | |
| margin: 4px 16px; | |
| border-radius: var(--radius-md); | |
| color: var(--text-secondary); | |
| font-size: 14px; | |
| font-weight: 500; | |
| transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1); | |
| text-decoration: none; | |
| cursor: pointer; | |
| border: 1px solid transparent; | |
| } | |
| .sidebar-link:hover { | |
| background: rgba(255, 255, 255, 0.04); | |
| color: var(--text-primary); | |
| border-color: rgba(255, 255, 255, 0.03); | |
| } | |
| .sidebar-link-active { | |
| background: rgba(255, 255, 255, 0.08) ; | |
| color: #ffffff ; | |
| border: 1px solid rgba(255, 255, 255, 0.15) ; | |
| box-shadow: 0 4px 15px rgba(0, 0, 0, 0.5); | |
| } | |
| /* Glass Table design */ | |
| .glass-table { | |
| width: 100%; | |
| border-collapse: separate; | |
| border-spacing: 0; | |
| } | |
| .glass-table th { | |
| padding: 14px 16px; | |
| text-align: left; | |
| font-size: 11px; | |
| font-weight: 700; | |
| text-transform: uppercase; | |
| letter-spacing: 0.08em; | |
| color: var(--text-muted); | |
| border-bottom: 1px solid rgba(255, 255, 255, 0.08); | |
| white-space: nowrap; | |
| } | |
| .glass-table td { | |
| padding: 14px 16px; | |
| font-size: 14px; | |
| color: var(--text-primary); | |
| border-bottom: 1px solid rgba(255, 255, 255, 0.03); | |
| vertical-align: middle; | |
| } | |
| .glass-table tbody tr { | |
| transition: background 0.25s ease; | |
| } | |
| .glass-table tbody tr:hover { | |
| background: rgba(255, 255, 255, 0.03); | |
| } | |
| /* Badges */ | |
| .badge { | |
| display: inline-flex; | |
| align-items: center; | |
| padding: 4px 12px; | |
| border-radius: 9999px; | |
| font-size: 11px; | |
| font-weight: 600; | |
| letter-spacing: 0.03em; | |
| text-transform: uppercase; | |
| } | |
| .badge-success { | |
| background: rgba(52, 211, 153, 0.1); | |
| color: #34d399; | |
| border: 1px solid rgba(52, 211, 153, 0.22); | |
| box-shadow: 0 0 10px rgba(52, 211, 153, 0.05); | |
| } | |
| .badge-warning { | |
| background: rgba(251, 146, 60, 0.1); | |
| color: #fb923c; | |
| border: 1px solid rgba(251, 146, 60, 0.22); | |
| } | |
| .badge-danger { | |
| background: rgba(244, 63, 94, 0.1); | |
| color: #fb7185; | |
| border: 1px solid rgba(244, 63, 94, 0.22); | |
| } | |
| .badge-info { | |
| background: rgba(56, 189, 248, 0.1); | |
| color: #38bdf8; | |
| border: 1px solid rgba(56, 189, 248, 0.22); | |
| box-shadow: 0 0 10px rgba(56, 189, 248, 0.05); | |
| } | |
| .badge-neutral { | |
| background: rgba(148, 163, 184, 0.1); | |
| color: #cbd5e1; | |
| border: 1px solid rgba(148, 163, 184, 0.2); | |
| } | |
| /* Stat Cards */ | |
| .stat-card { | |
| padding: 24px; | |
| background-color: var(--glass-bg); | |
| backdrop-filter: blur(var(--glass-blur)); | |
| -webkit-backdrop-filter: blur(var(--glass-blur)); | |
| border: 1px solid var(--glass-border); | |
| border-radius: var(--radius-xl); | |
| box-shadow: var(--glass-shadow); | |
| transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); | |
| position: relative; | |
| } | |
| .stat-card::after { | |
| content: ""; | |
| position: absolute; | |
| inset: 0; | |
| border-radius: inherit; | |
| border: 1px solid transparent; | |
| background: linear-gradient(135deg, rgba(255, 255, 255, 0.12) 0%, transparent 45%) border-box; | |
| -webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0); | |
| -webkit-mask-composite: destination-out; | |
| mask-composite: exclude; | |
| pointer-events: none; | |
| } | |
| .stat-card:hover { | |
| background-color: var(--glass-bg-hover); | |
| border-color: var(--glass-border-hover); | |
| transform: translateY(-6px); | |
| box-shadow: | |
| 0 24px 50px rgba(0, 0, 0, 0.65), | |
| inset 0 1px 0 rgba(255, 255, 255, 0.25); | |
| } | |
| /* Modal overlays */ | |
| .overlay { | |
| position: fixed; | |
| inset: 0; | |
| background: rgba(3, 4, 12, 0.7); | |
| backdrop-filter: blur(6px); | |
| z-index: 50; | |
| display: flex; | |
| align-items: center; | |
| justify-content: center; | |
| animation: overlayIn 0.25s cubic-bezier(0.16, 1, 0.3, 1); | |
| } | |
| @keyframes overlayIn { | |
| from { opacity: 0; } | |
| to { opacity: 1; } | |
| } | |
| .modal-panel { | |
| background: rgba(10, 11, 28, 0.95); | |
| backdrop-filter: blur(28px); | |
| border: 1px solid rgba(255, 255, 255, 0.1); | |
| border-radius: var(--radius-xl); | |
| box-shadow: 0 32px 80px rgba(0, 0, 0, 0.65), inset 0 1px 0 rgba(255, 255, 255, 0.1); | |
| padding: 32px; | |
| width: 100%; | |
| max-width: 480px; | |
| animation: modalIn 0.3s cubic-bezier(0.16, 1, 0.3, 1); | |
| } | |
| @keyframes modalIn { | |
| from { | |
| opacity: 0; | |
| transform: scale(0.94) translateY(12px); | |
| } | |
| to { | |
| opacity: 1; | |
| transform: scale(1) translateY(0); | |
| } | |
| } | |
| .leaflet-container { | |
| background: #060714 ; | |
| border-radius: var(--radius-lg); | |
| } | |
| .leaflet-control-zoom a { | |
| background: rgba(10, 11, 28, 0.9) ; | |
| color: #f8fafc ; | |
| border-color: rgba(255, 255, 255, 0.08) ; | |
| } | |
| .leaflet-control-attribution { | |
| background: rgba(10, 11, 28, 0.8) ; | |
| color: var(--text-muted) ; | |
| font-size: 10px ; | |
| } | |
| .leaflet-control-attribution a { | |
| color: var(--text-secondary) ; | |
| } | |
| .recharts-default-tooltip { | |
| background: rgba(10, 11, 28, 0.96) ; | |
| border: 1px solid rgba(255, 255, 255, 0.08) ; | |
| border-radius: var(--radius-md) ; | |
| box-shadow: var(--glass-shadow) ; | |
| } | |
| .recharts-tooltip-label { | |
| color: var(--text-primary) ; | |
| font-weight: 600 ; | |
| } | |
| .recharts-tooltip-item { | |
| color: var(--text-secondary) ; | |
| } | |
| .spinner { | |
| width: 20px; | |
| height: 20px; | |
| border: 2.5px solid rgba(255, 255, 255, 0.15); | |
| border-top-color: var(--accent-blue); | |
| border-radius: 50%; | |
| animation: spin 0.75s linear infinite; | |
| } | |
| @keyframes spin { | |
| to { transform: rotate(360deg); } | |
| } | |
| .score-ring { | |
| transition: stroke-dashoffset 0.85s cubic-bezier(0.16, 1, 0.3, 1); | |
| } | |
| @media (max-width: 768px) { | |
| .sidebar { | |
| transform: translateX(-110%); | |
| left: 0; | |
| top: 0; | |
| bottom: 0; | |
| margin: 0; | |
| border-radius: 0; | |
| height: 100vh; | |
| } | |
| .sidebar.open { | |
| transform: translateX(0); | |
| } | |
| :root { | |
| --sidebar-width: 260px; | |
| } | |
| } | |
| /* Premium Breadcrumbs System */ | |
| .breadcrumb { | |
| display: flex ; | |
| flex-direction: row ; | |
| flex-wrap: wrap ; | |
| align-items: center ; | |
| gap: 8px ; | |
| padding: 0 ; | |
| margin: 0 0 24px 0 ; | |
| list-style: none ; | |
| } | |
| .breadcrumb li { | |
| display: inline-flex ; | |
| align-items: center ; | |
| list-style: none ; | |
| } | |
| .breadcrumb-item { | |
| color: var(--text-muted) ; | |
| font-size: 14.5px ; | |
| font-weight: 550 ; | |
| text-decoration: none ; | |
| transition: color 0.25s ease ; | |
| } | |
| .breadcrumb-item:hover { | |
| color: var(--text-primary) ; | |
| } | |
| .breadcrumb-item-active { | |
| color: var(--text-primary) ; | |
| font-size: 14.5px ; | |
| font-weight: 650 ; | |
| } | |
| .breadcrumb-separator { | |
| color: var(--text-muted) ; | |
| opacity: 0.6 ; | |
| } | |