/* Global styles */ * { margin: 0; box-sizing: border-box; } /* Body styling */ body { font-family: Arial, sans-serif; background-color: black; color: white; position: relative; } body::before { content: ""; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-image: url('/static/img/background-1.jpg'); background-size: cover; background-position: center; background-attachment: fixed; filter: brightness(50%); z-index: -1; } /* Rounded corners applied directly */ .about, .map, .service-info, .photos, .directions, .services, .service-item, .review-box { border-radius: 1em; } /* Header title styling */ .nazev { float: left; } /* Flex container class for consistent layout */ .flex-container { display: flex; justify-content: space-between; align-items: center; } /* Header and Footer background graphics */ header, footer { background-color: #333; padding: 10px; text-align: center; width: 75%; margin: 0 auto; color: white; } header { height: 9.5em; } .header { margin-left: 1em; margin-right: 1em; } footer { width: fit-content; /* Change width to auto */ border-top-left-radius: 1em; position: fixed; bottom: 0; right: 0; } .table-header { display: flex; justify-content: space-around; background-color: #444; padding: 10px; margin-top: 1.5em; border-top-left-radius: 0.5em; border-top-right-radius: 0.5em; } /* Navbar */ .navbar { display: flex; justify-content: space-around; background-color: #444; padding: 10px; margin-bottom: 10px; width: 75%; margin: 0 auto; border-bottom-left-radius: 0.5em; border-bottom-right-radius: 0.5em; } /* Navbar links */ .navbar a { text-decoration: none; color: white; padding: 5px 15px; } /* Navbar buttons */ .navbar button { background-color: #808080; color: white; padding: 10px 20px; border: none; border-radius: 5px; cursor: pointer; transition: transform 0.3s, box-shadow 0.3s; } .navbar button:hover { transform: scale(1.05); box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); } /* Content layout */ .container { margin: auto; width: 75%; text-align: center; } /* Section styles */ .about, .service-info, .photos, .directions { box-sizing: border-box; padding: 15px; background-color: #222; border: 1px solid #555; color: white; margin-top: 10px; margin-bottom: 10px; } .directions { flex: 1 1 100%; display: block; } .directions-content { display: flex; align-items: center; } .directions-content iframe { flex: 1 1 50%; } .directions-text { flex: 1 1 50%; margin-left: 20px; } /* About and Map are larger sections */ .about { flex: 2 1 50%; } .photos, .directions { flex: 1 1 30%; } /* Service section */ .services { margin: 20px 0; padding: 15px; background-color: #222; border: 1px solid #555; color: white; } .service-list { display: flex; justify-content: space-around; flex-wrap: wrap; } .service-item { flex: 1 1 200px; background-color: #333; width: 200px; height: 200px; display: flex; flex-direction: column; justify-content: center; align-items: center; transition: transform 0.3s, box-shadow 0.3s; margin: 10px; } .service-item img { width: 100px; height: auto; } .service-item:first-child img { width: 150px; } /* Hover effects for buttons and service items */ .service-item:hover, .reservation-button:hover, .login-button:hover, .review-box:hover { transform: scale(1.05); box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); } /* Buttons */ .button, .reservation-button, .login-button, .navbar button { background-color: #808080; color: white; padding: 10px 20px; text-align: center; text-decoration: none; display: inline-block; font-size: 16px; margin-bottom: 10px; margin-left: 10px; border: none; border-radius: 5px; cursor: pointer; transition: transform 0.3s, box-shadow 0.3s; } .button:hover, .reservation-button:hover, .login-button:hover, .navbar button:hover { transform: scale(1.05); box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); } /* Flex container for buttons */ .buttons { display: flex; justify-content: flex-end; align-items: center; margin-top: 1.7em; } /* Reviews section */ .reviews { margin: 20px 0; padding: 15px; background-color: #222; border: 1px solid #555; color: white; border-radius: 1em; text-align: center; } .reviews-header { margin-bottom: 20px; } .review-list { display: flex; justify-content: space-around; flex-wrap: wrap; } .review-box { flex: 1 1 200px; background-color: #333; width: 200px; min-height: 100px; display: flex; flex-direction: column; justify-content: center; align-items: center; transition: transform 0.3s, box-shadow 0.3s; margin: 10px; padding: 10px; text-align: center; } .review-box:hover { transform: scale(1.05); box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); } /* Text alignment for Directions */ .directions { text-align: right; } /* Align-right class */ .align-right { float: right; margin-left: 20px; } /* Popup form styles */ .popup-form { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.5); z-index: 1; } .form-container { background-color: #333; padding: 20px; border: 1px solid #555; width: 80%; max-width: 500px; border-radius: 1em; color: white; margin-top: 5%; margin-left: auto; margin-right: auto; margin-bottom: 1%; } .close-button { color: white; float: right; font-size: 28px; font-weight: bold; } .close-button:hover, .close-button:focus { color: #bbb; text-decoration: none; cursor: pointer; } .form-container label { display: block; margin: 10px 0 5px; } .form-container input, .form-container textarea { width: 100%; padding: 10px; margin: 5px 0 20px; border: none; border-radius: 5px; background-color: #555; color: white; } .form-container button { background-color: #808080; color: white; padding: 10px 20px; border: none; border-radius: 5px; cursor: pointer; transition: transform 0.3s, box-shadow 0.3s; } .form-container button:hover { transform: scale(1.05); box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); } /* Required field indicator */ .required { color: red; } /* Logo styles */ .logo { width: 100px; height: auto; vertical-align: middle; text-align: left; } /* About content styles */ .about-content { display: flex; justify-content: space-between; align-items: center; } .about-text, .about-image { flex: 1 1 50%; } .about-text { padding-right: 20px; text-align: left; } .about-image img { width: 100%; height: auto; border-radius: 0.5em; } /* Service offer section */ .nabidka-sluzeb { display: flex; justify-content: space-around; flex-wrap: wrap; } /* Table styling */ table { width: 100%; border-collapse: collapse; font-size: 18px; text-align: center; } table th, table td { padding: 12px 15px; border: 1px solid #ddd; } table th { background-color: #333; color: white; } table td { background-color: #222; } table tr:nth-child(even) { background-color: #f2f2f2; } table tr:hover { background-color: #ddd; } /* Media queries for mobile responsiveness */ @media (max-width: 768px) { header, footer, .navbar, .container, .about, .map, .service-info, .photos, .directions, .services, .service-item, .review-box { width: 100%; border-radius: 0.5em; } .header, .buttons { flex-direction: column; align-items: center; } .header .contact-info, .header .nazev, .header .buttons { text-align: center; margin: 10px 0; } .navbar { flex-direction: column; align-items: center; } .navbar button { width: 100%; margin: 5px 0; } .content { flex-direction: column; } .about-content, .directions-content { flex-direction: column; } .directions-content iframe, .directions-text { width: 100%; margin: 0; } .buttons { flex-direction: column; align-items: center; } .reservation-button, .login-button { width: 100%; margin: 5px 0; } .service-list { flex-direction: column; align-items: center; } .service-item { width: 100%; margin: 10px 0; } .reviews { flex-direction: column; align-items: center; } .review-box { width: 100%; margin: 10px 0; } .form-container { width: 90%; } .user-info { width: 100%; text-align: center; } table { font-size: 14px; } table th, table td { padding: 8px 10px; } } /* Button link styles */ .button-link { background: none; border: none; color: #007bff; text-decoration: underline; cursor: pointer; font-size: 16px; padding: 0; } .button-link:hover { color: #0056b3; text-decoration: underline; } /* Logout button styles */ .logout-button { background-color: #808080; color: white; padding: 10px 20px; text-align: center; text-decoration: none; display: inline-block; font-size: 16px; margin-bottom: 10px; margin-left: 10px; border: none; border-radius: 5px; cursor: pointer; transition: transform 0.3s, box-shadow 0.3s; } .logout-button:hover { transform: scale(1.05); box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); } /* User info section */ .user-info { position: fixed; top: 0; right: 0; background-color: #333; color: white; padding: 10px; border-bottom-left-radius: 1em; z-index: 1000; } /* Dropdown menu styles */ select { width: 100%; padding: 10px; margin: 5px 0 20px; border: none; border-radius: 5px; background-color: #555; color: white; font-size: 16px; } select:focus { outline: none; box-shadow: 0 0 5px rgba(81, 203, 238, 1); border: 1px solid rgba(81, 203, 238, 1); } /* Option styles */ option { background-color: #333; color: white; padding: 10px; } /* Graph container styling */ .graph-container { background-color: #222; border: 1px solid #555; border-radius: 1em; padding: 20px; margin-top: 20px; color: white; text-align: center; } /* Canvas styling */ canvas { width: 100% !important; /* Make the canvas span the whole container */ height: auto; margin: 0 auto; background-color: #333; /* Make the background of the graph darker */ } /* Statistics page styling */ .statistics-container { background-color: #222; border: 1px solid #555; border-radius: 1em; padding: 20px; margin-top: 20px; color: white; text-align: center; } .statistics-header { margin-bottom: 20px; } .statistics-form { display: flex; justify-content: center; align-items: center; margin-bottom: 20px; } .statistics-form label { margin: 0 10px; } .statistics-form input { padding: 10px; margin: 0 10px; border: none; border-radius: 5px; background-color: #555; color: white; } .statistics-form button { background-color: #808080; color: white; padding: 10px 20px; border: none; border-radius: 5px; cursor: pointer; transition: transform 0.3s, box-shadow 0.3s; } .statistics-form button:hover { transform: scale(1.05); box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); } .partners { margin: 20px 0; padding: 15px; background-color: #222; border: 1px solid #555; color: white; border-radius: 1em; } .partner-list { display: flex; justify-content: space-around; flex-wrap: wrap; } .partner-item { flex: 1 1 200px; width: 200px; height: 200px; display: flex; justify-content: center; align-items: center; transition: transform 0.3s, box-shadow 0.3s; margin: 10px; } .partner-item img { width: 10em; height: auto; border-radius: 10em; } .partner-item:hover { transform: scale(1.5); } .partner-logos { display: flex; justify-content: space-around; align-items: center; margin: 20px 0; } .partner-logos img { width: var(--partner-logo-width, 100px); height: var(--partner-logo-height, auto); margin: 0 10px; }