/* Syncfusion (Fluent 2) im Erscheinungsbild der Seite: Akzentfarbe, Schrift und Rundungen von Pubnews.
   Gilt für Formulare und Suchfelder; die Komponenten selbst kommen unverändert von Syncfusion. */
:root {
    --see-accent: #06b6d4;
    --see-accent-dark: #0e7490;
    --see-danger: #c2113c;
    /* Primär (Absende-Knöpfe) im Logo-Blau wie alle Knöpfe */
    --color-sf-primary: #1250a3;
    --color-sf-primary-dark: #0e4185;
    --color-sf-primary-darker: #0b3470;
    --color-sf-primary-light: #b7cdee;
    --color-sf-primary-lighter: #eaf1fb;
    --color-sf-danger: var(--see-danger);
}

/* Schrift der Seite statt Segoe UI */
.see-form .e-control, .see-form .e-control *:not(.e-icons), .see-form .e-btn,
.see-search .e-input, .see-search .e-btn, .e-popup .e-list-item, .e-calendar, .e-timepicker.e-popup {
    font-family: inherit;
}

/* Eingabefelder etwas grosszügiger als in der Redaktion, Schriftgrösse 16px (verhindert Zoom auf iOS) */
.see-form .e-input-group:not(.e-float-icon-left):not(.e-float-input),
.see-form .e-input-group.e-control-wrapper:not(.e-float-icon-left):not(.e-float-input) {
    min-height: 42px;
    border-radius: 6px;
}
.see-form .e-input-group input.e-input,
.see-form .e-input-group.e-control-wrapper input.e-input,
.see-form .e-input-group textarea.e-input,
.see-form .e-ddl.e-input-group .e-input-value {
    font-size: 16px;
    min-height: 40px;
}
.see-form .e-checkbox-wrapper .e-label { font-size: 15px; line-height: 1.45; white-space: normal; }
.see-form .e-checkbox-wrapper { align-items: flex-start; }
.see-form .see-form-consent .e-label { font-weight: 400; }
.see-form .e-upload { border-radius: 6px; }

/* Ungültige Felder: Blazor-Validierung markiert das Eingabeelement, Syncfusion zeigt die Farbe am Rahmen */
.see-form .e-input-group:has(.invalid), .see-form .e-input-group.e-error { border-color: var(--see-danger) !important; }

/* Absende-Knopf im Stil der Seite (Pille, Akzentfarbe) */
.see-form .e-btn.see-form-submit {
    justify-self: start;
    padding: .7em 1.8em;
    border-radius: 999px;
    font-size: 16px;
    font-weight: 600;
    text-transform: none;
}

/* Anmeldeseite (ohne Blazor-Verbindung): Syncfusion-Klassen e-input/e-btn, Häkchen nativ in Akzentfarbe */
.see-form-check { display: flex; gap: 10px; align-items: center; font-size: 15px; cursor: pointer; }
.see-form-check input[type=checkbox] { width: 18px; height: 18px; margin: 0; accent-color: var(--see-accent); }

/* Anmeldeseite: wie die übrigen Seiten (Titel + Inhalt), Formular in Lesebreite */
.entry-content.see-login-page .see-login-subtitle { max-width: 480px; margin: -6px 0 24px; color: #6b7280; font-size: 16px; }
.see-login { display: grid; gap: 18px; max-width: 480px; margin: 0; }
.see-login-input { align-items: center; }
.see-login-icon { display: grid; place-items: center; width: 40px; flex: none; color: #9ca3af; font-size: 15px; }
.see-login-input:focus-within .see-login-icon { color: var(--see-accent); }
.see-login-input input.e-input { padding-left: 0 !important; }
.see-login-row { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.see-login-forgot { font-size: 15px; color: var(--see-accent); text-decoration: none; }
.see-login-forgot:hover { text-decoration: underline; }
.see-login-actions { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }
.see-login .e-btn.see-login-submit { padding: .7em 2em; border-radius: 999px; font-size: 16px; font-weight: 600; text-transform: none; }
.see-login-passkey { padding: 0; border: 0; background: none; color: #4b5563; font: inherit; font-size: 15px; cursor: pointer; }
.see-login-passkey:hover { color: var(--see-accent); text-decoration: underline; }
.see-login-passkey i { margin-right: 6px; }
.see-form-error i { margin-right: 6px; }

/* Blazor setzt nach dem Laden den Fokus auf den Seitentitel (Screenreader); ohne sichtbaren Rahmen wie auf der alten Seite */
h1[tabindex="-1"]:focus { outline: none; }
/* Blazor setzt nach jeder Navigation den Fokus auf das h1 (für Screenreader). Ist es nur für Screenreader
   gedacht (z. B. «Veranstaltungen»), darf es dabei nicht sichtbar werden – das Theme zeigt .screen-reader-text
   beim Fokus sonst an wie den «Zum Inhalt springen»-Link. */
.screen-reader-text[tabindex="-1"]:focus {
    clip: rect(1px, 1px, 1px, 1px) !important; clip-path: inset(50%) !important; width: 1px !important; height: 1px !important;
    overflow: hidden !important; position: absolute !important; padding: 0 !important; margin: -1px !important;
    border: 0 !important; box-shadow: none !important; background: none !important;
}

/* Suchfelder (Kopfzeile, Seitenleiste, Veranstaltungen): Syncfusion-Eingabegruppe mit Knopf */
.see-search { display: flex; gap: 8px; align-items: stretch; width: 100%; }
.see-search .e-input-group { flex: 1; min-height: 40px; margin: 0; border-radius: 6px; }
.see-search .e-input-group input.e-input { font-size: 16px; min-height: 38px; }
.see-search .e-btn { flex: none; min-height: 40px; padding: 0 18px; white-space: nowrap; border-radius: 6px; font-size: 15px; line-height: 1; text-transform: none; }
/* Nur für Screenreader (sichtbar versteckt, unabhängig von Theme- und Plugin-Regeln) */
/* Cookie-Einwilligung: schlichter Balken unten im Seitenstil, beide Knöpfe gleichwertig */
.see-consent { position: fixed; left: 0; right: 0; bottom: 0; z-index: 9999; background: #fff; border-top: 3px solid var(--pubnews-global-preset-theme-color, #06b6d4); box-shadow: 0 -4px 18px rgba(0,0,0,.12); }
.see-consent[hidden] { display: none; }
.see-consent-inner { max-width: 1200px; margin: 0 auto; padding: 16px 20px; display: flex; gap: 16px 28px; align-items: center; flex-wrap: wrap; }
.see-consent-inner p { margin: 0; flex: 1 1 420px; font-size: 15px; line-height: 1.5; }
.see-consent-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.see-consent-btn { font: inherit; font-weight: 500; padding: 9px 22px; border-radius: 4px; cursor: pointer; border: 2px solid var(--pubnews-global-preset-theme-color, #06b6d4); background: #fff; color: #1f2933; }
.see-consent-btn:hover, .see-consent-btn:focus-visible { background: var(--pubnews-global-preset-theme-color, #06b6d4); color: #fff; }
@media (max-width: 600px) { .see-consent-actions { width: 100%; } .see-consent-btn { flex: 1; } }

.see-sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; white-space: nowrap !important; border: 0 !important; }
/* Ohne Syncfusion-Skript setzt niemand «e-input-focus» – derselbe Fokusrahmen über :focus-within */
.see-search .e-input-group:focus-within,
.see-form .e-input-group:focus-within { border-color: var(--color-sf-primary); box-shadow: 0 0 0 1px var(--color-sf-primary); }
.see-search .e-input-group-icon.e-search { padding-left: 10px; color: #6b7280; }
.see-search-heading { margin: 0 0 10px; }
/* Kopfzeile: Formular im Pubnews-Overlay */
.search-form-wrap .see-search { max-width: 640px; margin: 0 auto; }
/* Veranstaltungen: im TEC-Suchbalken volle Breite */
.tribe-events-c-events-bar__search .see-search { padding: 8px 12px 8px 8px; align-items: center; }
.tribe-events-c-events-bar__search .see-search .e-input-group { border-radius: 999px; }
.tribe-events-c-events-bar__search .see-search .e-btn { border-radius: 999px; }
