main { max-width:1200px; margin: 0 auto; padding: 20px; width: 100%; box-sizing: border-box; } body { background-color: #eef2f7; color: #1f2937; margin: 0; min-height: 100vh; display: grid; grid-template-rows: auto 1fr auto; /* Header(auto), Inhalt (bekommt Rest), Footer(auto) */ } a, button, input, select, textarea, label, main{ font-family: Arial, Helvetica, sans-serif; } h1 { text-transform: uppercase; } .flexbox { display: flex; flex-direction: row; flex-wrap: wrap; gap: 20px; margin-top: 30px; } .container { background-color: white; border-radius: 8px; padding: 15px; border: 1px solid #dbe3ec; box-shadow: 0 4px 12px rgba(0,0,0,0.08); transition: transform 0.2s, box-shadow 0.2s; flex: 1 1 300px; } .container:hover { transform: translateY(-3px); box-shadow: 0 6px 18px rgba(0,0,0,0.12); } .category-link { display: block; text-align: left; text-decoration: none; font-weight: bold; padding: 12px; background-color: #2563eb; color: white; border-radius: 8px; margin-bottom: 10px; transition: background-color 0.2s, transform 0.2s, box-shadow 0.2s; } .category-link:hover { background-color: #1d4ed8; transform: translateY(-2px); box-shadow: 0 4px 10px rgba(0,0,0,0.15); } .article-link a { color: #1f2937; text-decoration: none; font-weight: bold; transition: color 0.2s; } .article-link a:hover { color: #2563eb; text-decoration: underline; } @media (min-width: 1024px) { .container { padding: 25px; } } /* Seite wird horizontal und vertikal zentriert */ .login-page { display: flex; justify-content: center; align-items: center; min-height: 80vh; } .login-container { width: 90%; max-width: 450px; padding: 30px; border: 1px solid #dbe3ec; border-radius: 10px; background-color: white; box-shadow: 0 6px 20px rgba(0,0,0,0.1); } .logo-wrapper { text-align: center; margin-bottom: 20px; } .login-logo { width: 120px; height: auto; } .login-container h1 { text-align: center; margin-bottom: 25px; font-size: 1.7rem; color: #1e293b; } .input-label { margin-bottom: 5px; font-weight: bold; width: 100%; color: #1f2937; } .input-label { margin-bottom: 5px; font-weight: bold; width: 100%; color: #1f2937; } .login-input { width: 100%; padding: 12px; margin-bottom: 20px; border: 1px solid #d1d5db; border-radius: 6px; box-sizing: border-box; font-size: 1rem; background-color: white; } .login-input:focus { outline: none; border-color: #2563eb; box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.15); } .checkbox-wrapper { margin-bottom: 20px; color: #1f2937; } .button { width: 100%; padding: 12px; background-color: #2563eb; color: white; border: none; border-radius: 8px; font-size: 1rem; font-weight: bold; cursor: pointer; transition: background-color 0.2s, transform 0.2s, box-shadow 0.2s; } .button:hover { background-color: #1d4ed8; transform: translateY(-2px); box-shadow: 0 4px 10px rgba(0,0,0,0.15); } .register-link { margin-top: 20px; text-align: center; font-size: 0.9rem; color: #1f2937; } .register-link a { color: #2563eb; text-decoration: none; font-weight: bold; transition: color 0.2s; } .register-link a:hover { color: #1d4ed8; text-decoration: underline; } /* Versteckt das doppelte Label fuer Screenreader/Accessibility */ .screenreader-only { display: none; } /* Allgemeine Formularseiten */ .form-page { display: flex; justify-content: center; padding: 40px 20px; } .form-container { width: 90%; max-width: 600px; padding: 30px; background-color: white; border: 1px solid #dbe3ec; border-radius: 10px; box-shadow: 0 6px 20px rgba(0,0,0,0.1); } .form-container { flex: 1 1 450px; padding: 30px; background-color: white; border: 1px solid #dbe3ec; border-radius: 10px; box-shadow: 0 6px 20px rgba(0,0,0,0.1); box-sizing: border-box; }