/* SYCA Hafenanfrage V2 – eigene CSS-Datei, keine bestehenden Regeln ueberschreiben */
.syca-harbor-inquiry[hidden], .syca-harbor-inquiry__compare[hidden],
.syca-harbor-inquiry__note[hidden], .syca-harbor-inquiry__error[hidden] { display: none !important; }
.syca-harbor-inquiry { position: fixed; inset: 0; z-index: 2147483000; display: grid; place-items: center; padding: 16px; color: #eff6f8; }
.syca-harbor-inquiry, .syca-harbor-inquiry * { box-sizing: border-box; }
.syca-harbor-inquiry__shade { position: absolute; inset: 0; background: rgba(2, 11, 18, .82); backdrop-filter: blur(5px); }
.syca-harbor-inquiry__dialog { position: relative; z-index: 1; width: min(620px, 100%); max-height: min(91vh, 850px); overflow: auto; padding: clamp(20px, 4vw, 34px); border: 1px solid rgba(233,189,99,.26); border-radius: 20px; background: linear-gradient(145deg, #132a38, #0c1c28 72%); box-shadow: 0 30px 90px rgba(0,0,0,.58); outline: none; overscroll-behavior: contain; }
.syca-harbor-inquiry__close { position: absolute; right: 14px; top: 11px; border: 0; padding: 6px 12px; color: #d7e1e5; background: transparent; font-size: 27px; line-height: 1; cursor: pointer; }
.syca-harbor-inquiry__close:hover, .syca-harbor-inquiry__close:focus-visible { color: #fff; }
.syca-harbor-inquiry__eyebrow { display: block; margin-bottom: 12px; color: #e7bd71; font-size: 11px; font-weight: 800; letter-spacing: .15em; }
.syca-harbor-inquiry__eyebrow i { margin-right: 5px; }
.syca-harbor-inquiry__dialog h2 { margin: 0 25px 10px 0; font-size: clamp(22px, 3vw, 28px); line-height: 1.25; font-weight: 760; color: #fff; }
.syca-harbor-inquiry__dialog p { margin: 0; color: #bdccd3; line-height: 1.6; font-size: 14px; }
#shi-intro { margin-bottom: 20px; }
.syca-harbor-inquiry__fieldset { border: none; padding: 0; margin: 0 0 18px; min-width: 0; }
.syca-harbor-inquiry__fieldset legend { margin-bottom: 10px; width: 100%; color: #f4f7f8; font-size: 13px; font-weight: 700; }
.syca-harbor-inquiry__types { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.syca-harbor-inquiry__types label { min-width: 0; position: relative; margin: 0; cursor: pointer; }
.syca-harbor-inquiry__types input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.syca-harbor-inquiry__types label span { display: flex; min-height: 47px; flex-direction: column; align-items: center; justify-content: center; gap: 5px; padding: 7px 3px; border: 1px solid rgba(255,255,255,.14); border-radius: 11px; background: rgba(255,255,255,.035); color: #e4edf2; font-size: 12px; text-align: center; transition: background .15s, border-color .15s; }
.syca-harbor-inquiry__types label span i { color: #e7bd71; }
.syca-harbor-inquiry__types input:checked + span { background: rgba(231,189,113,.12); border-color: rgba(231,189,113,.65); color: #fff; }
.syca-harbor-inquiry__types input:focus-visible + span { outline: 2px solid #fff; outline-offset: 2px; }
.syca-harbor-inquiry__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-bottom: 13px; }
.syca-harbor-inquiry__field { display: flex; flex-direction: column; gap: 6px; color: #ebf1f4; font-size: 13px; font-weight: 650; margin: 0; }
.syca-harbor-inquiry__field input, .syca-harbor-inquiry__field select { width: 100%; min-width: 0; min-height: 43px; border: 1px solid rgba(255,255,255,.20); border-radius: 10px; padding: 9px 11px; color: #fff; background: #183447; font: inherit; font-size: 14px; color-scheme: dark; outline: none; }
.syca-harbor-inquiry__field select option { color: #fff; background: #183447; }
.syca-harbor-inquiry__field input:focus-visible, .syca-harbor-inquiry__field select:focus-visible { border-color: #e7bd71; box-shadow: 0 0 0 2px rgba(231,189,113,.23); }
.syca-harbor-inquiry__cabins { margin-bottom: 15px; }
.syca-harbor-inquiry__compare { padding: 13px; margin: 4px 0 17px; background: rgba(231,189,113,.055); border: 1px solid rgba(231,189,113,.22); border-radius: 12px; }
.syca-harbor-inquiry__compare-label { display: flex; align-items: flex-start; gap: 11px; cursor: pointer; color: #f1f5f6; margin: 0; }
.syca-harbor-inquiry__compare-label input { accent-color: #e7bd71; flex: none; width: 19px; height: 19px; margin-top: 2px; }
.syca-harbor-inquiry__compare-label strong { display: block; font-size: 13px; }
.syca-harbor-inquiry__compare-label small { display: block; color: #b5c8d2; margin-top: 3px; font-size: 12px; line-height: 1.5; }
.syca-harbor-inquiry__dialog .syca-harbor-inquiry__note { margin-top: 8px; color: #f5d698; font-size: 12px; }
.syca-harbor-inquiry__dialog .syca-harbor-inquiry__error { margin: 10px 0; padding: 10px 12px; border-left: 3px solid #ecac80; background: rgba(236,172,128,.11); color: #ffdfcb; font-size: 13px; }
.syca-harbor-inquiry__actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 22px; }
.syca-harbor-inquiry__btn { display: flex; align-items: center; justify-content: center; gap: 8px; padding: 11px 13px; min-height: 46px; border: 1px solid rgba(231,189,113,.35); border-radius: 10px; background: rgba(255,255,255,.05); color: #fff; cursor: pointer; font-size: 13px; font-weight: 750; transition: transform .15s, filter .15s, background .15s; }
.syca-harbor-inquiry__btn:hover { filter: brightness(1.12); transform: translateY(-1px); }
.syca-harbor-inquiry__btn--primary { color: #172936; background: #e7bd71; border-color: #e7bd71; }
.syca-harbor-inquiry__btn:focus-visible, .syca-harbor-inquiry__close:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.syca-harbor-inquiry__dialog .syca-harbor-inquiry__fine { margin-top: 15px; font-size: 11px; color: #a8bac4; text-align: center; }
@media (max-width: 520px) { .syca-harbor-inquiry { padding: 9px; } .syca-harbor-inquiry__dialog { max-height: 96dvh; border-radius: 15px; padding: 22px 16px; } .syca-harbor-inquiry__types label span { font-size: 11px; } .syca-harbor-inquiry__actions { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) { .syca-harbor-inquiry__btn, .syca-harbor-inquiry__types label span { transition: none; } }
