mitlist/fe/src/assets/main.scss

96 lines
2.0 KiB
SCSS

// src/assets/main.scss
// @import './variables.scss'; // Your custom variables
@use './valerie-ui.scss';
// Example global styles
body {
font-family: sans-serif;
margin: 0;
background-color: var(--bg-color-page, #f4f4f8);
color: var(--text-color, #333);
}
a {
color: var(--primary-color);
text-decoration: none;
&:hover {
text-decoration: underline;
}
}
.container {
max-width: 1200px;
margin: 0 auto;
padding: 1rem;
}
// Offline UI styles
.offline-item {
position: relative;
opacity: 0.8;
transition: opacity 0.3s ease;
&::after {
content: '';
position: absolute;
top: 0.5rem;
right: 0.5rem;
width: 1rem;
height: 1rem;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12a9 9 0 0 0-9-9 9.75 9.75 0 0 0-6.74 2.74L3 8'/%3E%3Cpath d='M3 3v5h5'/%3E%3Cpath d='M3 12a9 9 0 0 0 9 9 9.75 9.75 0 0 0 6.74-2.74L21 16'/%3E%3Cpath d='M16 21h5v-5'/%3E%3C/svg%3E");
background-size: contain;
background-repeat: no-repeat;
animation: spin 1s linear infinite;
}
&.synced {
opacity: 1;
&::after {
display: none;
}
}
}
@keyframes spin {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
// Disabled offline features
.feature-offline-disabled {
position: relative;
cursor: not-allowed;
opacity: 0.6;
&::before {
content: attr(data-tooltip);
position: absolute;
bottom: 100%;
left: 50%;
transform: translateX(-50%);
padding: 0.5rem;
background-color: var(--bg-color-tooltip, #333);
color: white;
border-radius: 0.25rem;
font-size: 0.875rem;
white-space: nowrap;
opacity: 0;
visibility: hidden;
transition: all 0.2s ease;
z-index: 1000;
}
&:hover::before {
opacity: 1;
visibility: visible;
}
}
// Add more global utility classes or base styles