Files
Bratonien-Adventskalender/adventskalender/shared/css/popup.css
2025-11-15 10:21:12 +01:00

239 lines
5.3 KiB
CSS
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/* ============================================================
Bratonien Adventskalender NEUE SAUBERE POPUP.CSS
============================================================ */
/* ============================================================
OVERLAY
============================================================ */
#popup-overlay {
position: fixed;
inset: 0;
background: rgba(247,243,232,0.88);
backdrop-filter: blur(6px) brightness(1.05);
display: none;
align-items: center;
justify-content: center;
z-index: 9999;
}
#popup-overlay.active {
display: flex;
animation: fadeIn 0.3s ease;
}
/* ============================================================
POPUP-BOX
============================================================ */
#popup-box {
position: relative;
width: min(95vw, 1800px);
max-height: 90vh;
background: linear-gradient(
180deg,
color-mix(in srgb, var(--ci-creamwhite) 80%, white),
color-mix(in srgb, var(--ci-gold) 15%, #fff9e6)
);
border: 2px solid var(--ci-gold);
border-radius: 16px;
padding: clamp(1rem, 1.5vw, 2rem);
overflow-y: auto;
overflow-x: hidden;
box-sizing: border-box;
box-shadow:
0 0 25px color-mix(in srgb, var(--ci-gold) 40%, transparent),
inset 0 0 10px rgba(255,255,255,0.4);
animation: popIn .35s ease;
color: #333;
}
/* ============================================================
CLOSE BUTTON
============================================================ */
#popup-close {
position: absolute;
top: 12px;
right: 12px;
width: 32px;
height: 32px;
border: none;
border: 2px solid var(--ci-gold);
border-radius: 50%;
background: color-mix(in srgb, var(--ci-gold) 15%, #fff9e6);
font-size: 20px;
font-weight: bold;
line-height: 28px;
color: var(--ci-darkgreen);
cursor: pointer;
box-shadow: 0 0 8px rgba(0,0,0,0.2);
}
#popup-close:hover {
background: color-mix(in srgb, var(--ci-gold) 25%, #fff2cc);
}
/* ============================================================
GLOBAL CONTAINER
============================================================ */
#popup-content {
width: 100%;
max-width: 1400px;
margin: 0 auto;
display: flex;
flex-direction: column;
gap: clamp(1rem, 2vw, 2.5rem);
}
/* ============================================================
HEADER
============================================================ */
.popup-header {
text-align: center;
border-bottom: 2px solid var(--ci-gold);
padding-bottom: .5rem;
}
.popup-header h2 {
margin: 0;
font-size: clamp(1.6rem, 2.2vw, 2.8rem);
color: var(--ci-darkgreen);
}
/* ============================================================
STANDARD ZWEI-SPALTEN LAYOUT
============================================================ */
.popup-body {
display: grid;
grid-template-columns: 1fr 1fr;
gap: clamp(1rem, 2vw, 2.5rem);
}
/* Linke Spalte (Story bleibt unverändert) */
.story {
line-height: 1.6;
max-width: 70ch;
}
/* Rechte Spalte: Standard-Content */
.addon {
display: flex;
flex-direction: column;
gap: clamp(1rem, 1.5vw, 2rem);
align-items: flex-start;
}
.addon img,
.addon video {
width: 100%;
max-width: 700px;
height: auto;
border-radius: 10px;
object-fit: contain;
background:#000;
box-shadow: 0 0 12px rgba(0,0,0,0.25);
}
/* ============================================================
REZEPTTAG TEXT SOLL BILD UMWERBEN
============================================================ */
.popup-recipe .popup-body {
/* linke Spalte bleibt Grid-Item */
display: grid;
grid-template-columns: 1fr 1fr;
gap: clamp(1rem, 2vw, 2.5rem);
}
/* rechte Spalte verliert Grid -> normaler Blockfluss */
.popup-recipe .popup-recipe-content {
display: block;
width: 100%;
}
/* Rezepttitel */
.recipe-title {
font-size: clamp(1.3rem,1.6vw,2rem);
color: var(--ci-darkgreen);
font-weight: 600;
margin-bottom: .6rem;
}
/* Bild floaten lassen */
.popup-recipe-content picture.recipe-image-wrapper {
float: left;
width: clamp(200px, 40%, 330px);
margin: 0 1.5rem 1.2rem 0;
border-radius: 10px;
display: block;
box-shadow: 0 0 10px rgba(0,0,0,0.2);
shape-outside: inset(0 round 10px);
}
/* inneres Bild: KEIN FLOAT */
.popup-recipe-content .recipe-image {
display: block;
width: 100%;
height: auto;
border-radius: 10px;
}
/* Überschriften Zutaten/Zubereitung */
.popup-recipe-content h4 {
font-size: clamp(1rem, 1.2vw, 1.4rem);
color: var(--ci-darkgreen);
margin: 0.8rem 0 .4rem 0;
}
.popup-recipe-content ul,
.popup-recipe-content ol {
margin-left: 1.2rem;
}
/* ============================================================
MOBILE
============================================================ */
@media (max-width: 900px) {
.popup-body,
.popup-recipe .popup-body {
grid-template-columns: 1fr;
}
/* Bild zentriert ohne Float */
.popup-recipe-content picture.recipe-image-wrapper {
float: none;
margin: 0 auto 1rem auto;
width: 100%;
max-width: 360px;
shape-outside: none;
}
}
/* ============================================================
ANIMATIONEN
============================================================ */
@keyframes fadeIn {
from { opacity: 0; }
to { opacity: 1; }
}
@keyframes popIn {
0% { transform: scale(.9); opacity: 0; }
100% { transform: scale(1); opacity: 1; }
}