oedb-backend/frontend/src/styles.scss
2025-10-03 14:00:35 +02:00

112 lines
2.4 KiB
SCSS

/* Theme variables */
$color-blue: #9fd3f6; /* pastel blue */
$color-green: #b9e4c9; /* pastel green */
$color-bg: #f7fafb;
$color-surface: #ffffff;
$color-text: #22303a;
$color-muted: #6b7b86;
$color-success: #b4e5c6;
$color-error: #f6c9c9;
$color-info: #cfe8ff;
$border-radius: 10px;
$shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.06);
$shadow-md: 0 6px 18px rgba(0, 0, 0, 0.08);
$spacing: 12px;
html, body {
height: 100%;
margin: 0;
padding: 0;
background: $color-bg;
color: $color-text;
// font-family: system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, Arial, sans-serif;
}
html, body{
font-family: "Calibri", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
button, .button{
border-radius: 5px;
background-color: #79a2d1;
padding: 1rem 0.5rem;
border: none;
cursor: pointer;
&:hover{
background-color: #6992c1;
}
&:active{
background-color: #5982b1;
}
}
input{
width: 100%;
padding: 10px 12px;
border-radius: 10px;
border: 1px solid rgba(0, 0, 0, 0.12);
background: #ffffff;
color: #22303a;
box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.02);
}
app-root, app-home {
display: block;
min-height: 100vh;
}
/* Generic UI elements */
.btn {
appearance: none;
border: none;
border-radius: $border-radius;
padding: 10px 14px;
cursor: pointer;
background: linear-gradient(135deg, $color-blue, $color-green);
color: $color-text;
font-weight: 600;
box-shadow: $shadow-sm;
transition: transform 0.04s ease, box-shadow 0.2s ease, opacity 0.2s;
&:hover { box-shadow: $shadow-md; }
&:active { transform: translateY(1px); }
}
.btn-ghost {
background: $color-surface;
border: 1px solid rgba(0,0,0,0.08);
}
.input, .select, textarea {
width: 100%;
padding: 10px 12px;
border-radius: $border-radius;
border: 1px solid rgba(0,0,0,0.12);
background: $color-surface;
color: $color-text;
box-shadow: inset 0 1px 0 rgba(0,0,0,0.02);
}
label { font-size: 0.85rem; color: $color-muted; }
/* Toasts */
.toast-container {
position: fixed;
right: 16px;
bottom: 16px;
display: grid;
gap: 8px;
z-index: 1000;
}
.toast {
min-width: 240px;
max-width: 360px;
padding: 10px 12px;
border-radius: $border-radius;
box-shadow: $shadow-md;
border: 1px solid rgba(0,0,0,0.06);
background: $color-surface;
}
.toast.is-success { background: $color-success; }
.toast.is-error { background: $color-error; }
.toast.is-info { background: $color-info; }