/* ROMO Cookie-Hinweis – gemeinsame Styles fuer alle Seiten (siehe consent.js).
   Farben absichtlich als Werte, nicht als Variablen: nicht jede Seite
   definiert dieselben :root-Variablen. */
.consent {
    position: fixed;
    left: 16px;
    right: 16px;
    bottom: 16px;
    z-index: 1000;
    margin: 0 auto;
    max-width: 560px;
    padding: 1.1rem 1.25rem;
    border-radius: 18px;
    background: #2d2822;
    color: #fdfbf7;
    box-shadow: 0 16px 40px rgba(45, 40, 34, 0.35);
    display: flex;
    flex-direction: column;
    gap: 0.85rem;
    text-align: left;
    font-family: 'Inter', 'Segoe UI', system-ui, -apple-system, sans-serif;
    animation: consentIn 0.35s ease-out both;
}
.consent[hidden] { display: none; }
.consent p { margin: 0; font-size: 0.88rem; line-height: 1.5; color: #e8e0d4; }
.consent p strong { color: #fdfbf7; font-weight: 600; }
.consent a { color: #c4a484; }
.consent-actions { display: flex; gap: 0.6rem; flex-wrap: wrap; }
.consent-actions button {
    flex: 1 1 160px;
    padding: 0.7rem 1rem;
    border-radius: 12px;
    border: 1px solid transparent;
    font-family: inherit;
    font-size: 0.9rem;
    font-weight: 600;
    cursor: pointer;
}
.consent-accept { background: #a67c52; color: #fdfbf7; }
.consent-accept:hover { background: #8b6544; }
.consent-decline { background: transparent; color: #e8e0d4; border-color: #7d6e58 !important; }
.consent-decline:hover { background: rgba(253, 251, 247, 0.08); }
@keyframes consentIn {
    from { opacity: 0; transform: translateY(16px); }
    to   { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) { .consent { animation: none; } }
@media (max-width: 650px) {
    .consent { left: 10px; right: 10px; bottom: 10px; }
}
