Files
rfcp/frontend/src/index.css
2026-02-06 22:17:24 +02:00

79 lines
1.6 KiB
CSS

@import "tailwindcss";
@custom-variant dark (&:where(.dark, .dark *));
@theme {
--color-dark-bg: #1a1a2e;
--color-dark-surface: #16213e;
--color-dark-border: #0f3460;
--color-dark-text: #e0e0e0;
--color-dark-muted: #8b8fa3;
}
@layer base {
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
html, body, #root {
height: 100%;
width: 100%;
}
body {
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto,
'Helvetica Neue', Arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
}
/* Leaflet overrides */
.leaflet-container {
width: 100%;
height: 100%;
z-index: 0;
cursor: default !important;
}
/* Remove grab cursor from interactive layers */
.leaflet-interactive {
cursor: default !important;
}
/* Grabbing only when actually dragging */
.leaflet-container.leaflet-dragging,
.leaflet-container:active {
cursor: grabbing !important;
}
/* Tool-specific cursors (applied via JS class toggle) */
.leaflet-container.tool-ruler {
cursor: crosshair !important;
}
.leaflet-container.tool-rx-placement {
cursor: crosshair !important;
}
.leaflet-container.tool-site-placement {
cursor: cell !important;
}
/* Dark mode map tiles (invert brightness slightly) */
.dark .leaflet-tile-pane {
filter: brightness(0.8) contrast(1.1) saturate(0.8);
}
/* Flash animation for batch-updated sites */
@keyframes flash-update {
0%, 100% { background-color: transparent; }
50% { background-color: rgba(59, 130, 246, 0.3); }
}
.flash-update {
animation: flash-update 0.6s ease-in-out;
}