/* Waldhotel Doldenhorn — Listen, Kalender und Uhrzeit im Stil des Hauses (Seitenbau 13.10.2026, feste Regel: nichts klappt als Auswahl des Browsers auf).
   Verhalten: assets/js/auswahl.js. Gestalt aus den Bausteinen dieses Hauses:
   - Liste: Karte aus Elfenbein wie die Terminkarten, Zeilen in der Titelschrift mit feiner Linie wie auf den Blättern, gewählt nachtblau wie die Reiter.
   - Kalender: ein Blatt vom Abreisskalender der Angebote (blauer Kopf mit den zwei Löchern, Tage in der Titelschrift, gewählter Tag dunkel, heute mit Goldring).
   - Uhrzeit: dasselbe Blatt mit zwei Spalten, Stunde und Minute.
   Bewegung nur über transform und opacity. */
.dw{position:relative;display:block;width:100%;min-width:0;overflow:hidden}   /* overflow: im Safari-Kern zählte der Text einer langen Option des echten Feldes sonst zur Seitenbreite (320 px) */
.dw-nativ{position:absolute!important;inset:0;width:100%!important;height:100%!important;margin:0;opacity:0!important;pointer-events:none!important}
.dw-nativ::-webkit-calendar-picker-indicator{display:none}
.dw-knopf{-webkit-appearance:none;appearance:none;display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-width:0;min-height:1.4em;margin:0;padding:0;border:0;border-radius:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer;line-height:1.3;-webkit-tap-highlight-color:transparent}
.dw-knopf b{font-weight:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dw-knopf.dw-leer b{opacity:.55}
.dw-knopf svg{flex:none;width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;opacity:.7;transition:transform .5s var(--e1,cubic-bezier(.16,1,.3,1))}
.dw--offen .dw-knopf .dw-pf{transform:rotate(180deg)}
.dw-knopf:focus{outline:none}

/* ----- Liste ----- */
.dw-liste{position:absolute;z-index:2147483000;box-sizing:border-box;max-height:min(54vh,430px);overflow:auto;overscroll-behavior:contain;margin:0;padding:6px 18px 8px;list-style:none;border-radius:18px;color:#0f1620;text-align:left;
  background:linear-gradient(180deg,#fffdf8,#f3ecdd 60%,#e6dcc6);
  box-shadow:inset 0 0 0 1px rgba(138,117,69,.26),0 3px 0 #efe6d3,0 4px 0 #b3a688,0 34px 40px -22px rgba(7,12,20,.78);
  opacity:0;transform:translateY(-8px);transform-origin:50% 0;transition:opacity .24s cubic-bezier(.32,.72,0,1),transform .45s cubic-bezier(.16,1,.3,1);outline:0}
.dw-fest{position:fixed}
.dw-oben{transform:translateY(8px)}
.dw-auf{opacity:1;transform:none}
.dw-liste li{display:flex;align-items:center;gap:14px;margin:0 -10px;padding:12px 10px 11px;border-radius:10px;border-bottom:1px solid rgba(15,22,32,.13);font-family:var(--titel,Georgia,serif);font-weight:700;font-size:1.145rem;line-height:1.3;letter-spacing:.01em;color:#0f1620;cursor:pointer}
.dw-liste li:last-child{border-bottom:0}
.dw-liste li.dw-hier{background:rgba(61,83,112,.13)}
.dw-liste li[aria-selected=true]{border-bottom-color:transparent;color:#f1ece2;background:linear-gradient(#27405f,#16263c);box-shadow:inset 0 1px 0 rgba(226,236,255,.2),0 6px 10px -7px rgba(15,22,32,.7)}
.dw-liste li[aria-disabled=true]{opacity:.4;cursor:default}

/* ----- Kalender und Uhrzeit: ein Blatt vom Abreisskalender ----- */
.dw-blatt{position:absolute;z-index:2147483000;box-sizing:border-box;border-radius:18px;overflow:hidden;text-align:center;color:#0f1620;
  background:linear-gradient(180deg,#fffdf8,#f3ecdd 60%,#e6dcc6);
  box-shadow:inset 0 0 0 1px rgba(138,117,69,.22),0 3px 0 #efe6d3,0 4px 0 #b3a688,0 7px 0 #e8dec9,0 8px 0 #a3977c,0 36px 40px -22px rgba(7,12,20,.78);
  opacity:0;transform:translateY(-8px);transition:opacity .24s cubic-bezier(.32,.72,0,1),transform .45s cubic-bezier(.16,1,.3,1)}
.dw-blatt.dw-fest{position:fixed}
.dw-blatt.dw-oben{transform:translateY(8px)}
.dw-blatt.dw-auf{opacity:1;transform:none}
.dw-kal{width:min(332px,calc(100vw - 20px))}
.dw-kopf{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:56px;padding:9px 12px;color:#f1ece2;background:linear-gradient(#27405f,#16263c);border-bottom:1px solid #0a121d}
.dw-kopf p{margin:0;font-family:var(--mono,ui-monospace,monospace);font-size:12.96px;letter-spacing:.2em;text-transform:uppercase}
.dw-kopf--zeit{justify-content:center}
.dw-kopf--zeit::before,.dw-kopf--zeit::after{content:'';flex:none;width:11px;height:11px;border-radius:50%;background:#0a121d;box-shadow:inset 0 1px 0 rgba(0,0,0,.6),0 1px 0 rgba(226,236,255,.18)}
.dw-kopf--zeit p{flex:1}
.dw-pfeil{flex:none;display:grid;place-items:center;width:38px;height:38px;margin:0;padding:0;border:0;border-radius:50%;cursor:pointer;color:#0f1620;background:linear-gradient(#f6f1e6,#d5cbb8);box-shadow:inset 0 1px 0 #fffdf8,inset 0 -2px 0 #a79c86,0 8px 12px -8px rgba(0,0,0,.8);transition:transform .4s cubic-bezier(.32,.72,0,1)}
.dw-pfeil:hover{transform:translateY(-1px)}.dw-pfeil:active{transform:translateY(1px)}
.dw-pfeil svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.dw-tage,.dw-raster{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;padding:0 12px}
.dw-tage{padding-top:13px;padding-bottom:7px}
.dw-tage span{font-family:var(--mono,ui-monospace,monospace);font-size:10.26px;letter-spacing:.12em;text-transform:uppercase;opacity:.72}
.dw-raster{padding-bottom:16px}
.dw-tag{display:grid;place-items:center;aspect-ratio:1;margin:0;padding:0;border:0;border-radius:9px;background:none;cursor:pointer;font-family:var(--titel,Georgia,serif);font-weight:700;font-size:1.123rem;line-height:1;color:#0f1620}
.dw-tag:hover,.dw-tag:focus-visible{outline:0;background:rgba(61,83,112,.14)}
.dw-tag--heute{box-shadow:inset 0 0 0 1.5px #b89850}
.dw-tag[aria-pressed=true]{color:#f1ece2;background:linear-gradient(#27405f,#16263c);box-shadow:inset 0 1px 0 rgba(226,236,255,.2),0 4px 8px -5px rgba(15,22,32,.7)}
.dw-tag[disabled]{opacity:.26;cursor:default;background:none}
.dw-zeit{width:214px}
.dw-spalten{display:flex;align-items:stretch;justify-content:center;gap:6px;padding:10px 12px 14px}
.dw-spalte{display:flex;flex-direction:column;gap:2px;width:80px;max-height:236px;overflow:auto;overscroll-behavior:contain;padding:2px;scrollbar-width:thin}
.dw-z{flex:none;margin:0;padding:9px 0;border:0;border-radius:9px;background:none;cursor:pointer;font-family:var(--titel,Georgia,serif);font-weight:700;font-size:1.188rem;line-height:1;color:#0f1620}
.dw-z:hover,.dw-z:focus-visible{outline:0;background:rgba(61,83,112,.14)}
.dw-z[aria-selected=true]{color:#f1ece2;background:linear-gradient(#27405f,#16263c);box-shadow:inset 0 1px 0 rgba(226,236,255,.2)}
.dw-doppel{align-self:center;font-family:var(--titel,Georgia,serif);font-weight:700;font-size:1.404rem;font-style:normal;color:#3d5370}
@media (prefers-reduced-motion:reduce){.dw-liste,.dw-blatt{transition:none}}
