Athenaeum/static/css/styles.css
2025-05-30 19:04:31 +02:00

220 lines
4.2 KiB
CSS

/* static/css/styles.css */
:root {
--dark-bg: #121212;
--darker-bg: #0a0a0a;
--light-text: #f8f9fa;
--muted-text: #adb5bd;
--primary: #d4af37; /* Złoty - główny kolor */
--primary-dark: #b38f2d; /* Ciemniejszy złoty */
--secondary: #0a1f0a; /* Ciemnozielony - drugi kolor */
--border: #343a40;
--accent: #228B22; /* Zielony akcent */
}
.dark-theme {
background-color: var(--dark-bg);
color: var(--light-text);
min-height: 100vh;
display: flex;
flex-direction: column;
font-family: 'Inter', sans-serif;
}
/* Nagłówek - oryginalny styl */
.navbar {
background-color: #000;
padding: 1rem 0;
border-bottom: 1px solid var(--border);
}
.navbar-brand {
font-family: 'Old English Text MT', serif;
font-size: 2.5rem;
color: var(--primary) !important;
text-shadow: 0 0 5px rgba(212, 175, 55, 0.5);
}
.navbar-link {
color: var(--muted-text) !important;
text-decoration: none;
margin: 0 0.8rem;
transition: color 0.3s;
display: flex;
align-items: center;
}
.navbar-link:hover, .navbar-link:focus {
color: var(--primary) !important;
}
.navbar-link i {
margin-right: 0.3rem;
}
/* Karty książek - proporcje 5:8 */
.book-card {
height: 100%;
display: flex;
flex-direction: column;
background: var(--darker-bg);
border: 1px solid var(--border);
border-radius: 8px;
overflow: hidden;
transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.book-card:hover {
transform: translateY(-5px);
box-shadow: 0 10px 20px rgba(212, 175, 55, 0.2);
border-color: var(--primary);
}
.cover-container {
position: relative;
padding-bottom: 160%; /* 5:8 proportion (5/8 = 0.625) */
overflow: hidden;
background: #000;
}
.book-cover {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.3s ease;
}
.cover-container:hover .book-cover {
transform: scale(1.05);
}
.book-body {
padding: 1.2rem;
flex-grow: 1;
display: flex;
flex-direction: column;
}
.book-title {
font-size: 1.1rem;
margin-bottom: 0.5rem;
color: var(--light-text);
font-weight: 600;
min-height: 2.8em;
}
.book-author {
font-size: 0.9rem;
color: var(--muted-text);
margin-bottom: 0.5rem;
}
.book-price {
font-weight: 700;
color: var(--primary);
margin-top: auto;
font-size: 1.2rem;
}
/* Przyciski i elementy interfejsu */
.btn {
background-color: var(--primary);
border: none;
color: #000;
padding: 0.8rem 1.5rem;
border-radius: 5px;
font-weight: 500;
transition: all 0.3s;
text-transform: uppercase;
letter-spacing: 1px;
font-weight: bold;
}
.btn:hover {
background-color: var(--primary-dark);
transform: translateY(-2px);
}
.text-primary {
color: var(--primary) !important;
}
.bg-primary {
background-color: var(--primary) !important;
}
/* Formularze */
.auth-container {
max-width: 500px;
margin: 3rem auto;
padding: 2.5rem;
background: var(--darker-bg);
border-radius: 10px;
border: 1px solid var(--border);
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
}
.auth-container h2 {
text-align: center;
margin-bottom: 1.5rem;
font-weight: 700;
color: var(--primary);
}
.dark-input {
background-color: #1e1e1e;
border: 1px solid var(--border);
color: var(--light-text);
padding: 0.8rem;
border-radius: 5px;
margin-bottom: 1.2rem;
width: 100%;
}
.dark-input:focus {
background-color: #1e1e1e;
color: var(--light-text);
border-color: var(--primary);
box-shadow: 0 0 0 0.25rem rgba(212, 175, 55, 0.25);
}
/* Stopka */
footer {
background-color: #000;
padding: 2.5rem 0;
margin-top: auto;
border-top: 1px solid var(--border);
}
footer a {
color: var(--muted-text);
text-decoration: none;
margin: 0 1rem;
transition: color 0.3s;
}
footer a:hover {
color: var(--primary);
}
footer .text-center {
color: var(--muted-text);
}
/* Responsywność */
@media (max-width: 768px) {
.navbar-brand {
font-size: 1.8rem;
}
.cover-container {
padding-bottom: 130%;
}
.book-title {
min-height: auto;
}
}