:root{--legacy-primary:#0c71c3;--legacy-primary-hover:#0a5a9b;--legacy-text:#111827;--legacy-muted:#6b7280;--legacy-line:#e5e7eb}
html{background:#fff}body.app-shell-page{margin:0;background:#fff;color:var(--legacy-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;-webkit-font-smoothing:antialiased}
.legacy-navbar{height:120px;background:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 3px rgba(15,23,42,.08);position:sticky;top:0;z-index:50}
.legacy-navbar-inner{max-width:1280px;height:120px;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.legacy-brand{display:flex;align-items:center;flex:0 0 auto;text-decoration:none;color:inherit;height:100%}.legacy-brand img{height:108px;width:auto;max-width:250px;object-fit:contain;display:block}.legacy-brand-text{display:none}
.legacy-nav-actions{height:100%;display:flex;align-items:center;gap:16px}.legacy-nav-link,.legacy-icon-link{color:#475467;text-decoration:none;transition:.18s ease}.legacy-nav-link{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:6px;font-size:14px;font-weight:400}.legacy-nav-link:hover,.legacy-nav-link.is-active{color:#0c71c3}.legacy-nav-link svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.legacy-nav-link:first-of-type svg rect{fill:none}
.legacy-divider{height:24px;width:1px;background:#e5e7eb;margin:0 2px}.legacy-user-chip{display:inline-flex;align-items:center;gap:8px;max-width:330px;background:#f9fafb;border:1px solid #f0f2f5;border-radius:999px;padding:7px 12px;color:#344054;font-size:14px;font-weight:400;white-space:nowrap}.legacy-user-chip span{overflow:hidden;text-overflow:ellipsis}.legacy-user-chip svg{width:16px;height:16px;fill:none;stroke:#0c71c3;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.legacy-icon-link{width:38px;height:38px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center}.legacy-icon-link:hover,.legacy-icon-link.is-active{color:#0c71c3;background:#f9fafb}.legacy-icon-link svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.legacy-logout:hover{color:#dc2626;background:#fef2f2}
body.app-shell-page .legacy-content{max-width:1280px;margin:0 auto;padding-left:24px;padding-right:24px}
@media(max-width:850px){.legacy-navbar-inner{padding:0 14px}.legacy-nav-actions{gap:5px}.legacy-nav-link{padding:8px}.legacy-nav-link span{display:none}.legacy-divider{display:none}.legacy-user-chip{max-width:170px}.legacy-brand-text{display:none}}
@media(max-width:560px){.legacy-user-chip{display:none}.legacy-brand img{height:88px;max-width:260px}}

/* Step 09E: zentrale Icon-Darstellung für die gesamte App */
.ui-icon{display:block;width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.legacy-nav-link .ui-icon,.legacy-icon-link .ui-icon,.legacy-user-chip .ui-icon{width:18px;height:18px}
.avatar.all .ui-icon{width:21px;height:21px}

/* Step 09G: Typografie exakt an die alte React/Tailwind-App angelehnt. */
:root{
  --legacy-font:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
body.app-shell-page{
  font-family:var(--legacy-font);
  font-size:14px;
  font-weight:400;
  line-height:1.5;
  letter-spacing:0;
  color:#111827;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
body.app-shell-page button,
body.app-shell-page input,
body.app-shell-page textarea,
body.app-shell-page select{
  font-family:var(--legacy-font);
  font-weight:400;
}
body.app-shell-page h1{
  font-family:var(--legacy-font);
  font-size:30px;
  line-height:1.2;
  font-weight:700;
  letter-spacing:-.025em;
}
body.app-shell-page h2{
  font-family:var(--legacy-font);
  font-weight:500;
  letter-spacing:-.015em;
}
body.app-shell-page h3,
body.app-shell-page h4,
body.app-shell-page h5,
body.app-shell-page h6{
  font-family:var(--legacy-font);
  font-weight:500;
  letter-spacing:-.01em;
}
body.app-shell-page label{font-weight:500}
body.app-shell-page .meta,
body.app-shell-page .eventmeta,
body.app-shell-page .event-meta,
body.app-shell-page .date,
body.app-shell-page .time{
  font-weight:400;
  color:#667085;
}
body.app-shell-page .eventmeta strong,
body.app-shell-page .event-meta strong{
  font-weight:500;
  color:#374151;
}
body.app-shell-page .uname{font-weight:500}
body.app-shell-page .event h3{font-weight:500}
body.app-shell-page .head h2{font-weight:500}
body.app-shell-page .count{font-weight:500}
body.app-shell-page .btn{font-weight:500}
body.app-shell-page .legacy-nav-link,
body.app-shell-page .legacy-user-chip{font-weight:400}

/* Admin-Event-Modal bleibt vollständig unterhalb des zentralen 80px-Headers sichtbar. */
body.app-shell-page .modal{z-index:120}
body.app-shell-page .event-modalbox{
  font-family:var(--legacy-font);
  font-size:14px;
}
body.app-shell-page .event-modalbox h2{
  font-size:20px;
  line-height:1.4;
  font-weight:500;
  color:#111827;
}
body.app-shell-page .event-form-grid label{
  font-size:14px;
  font-weight:500;
  color:#111827;
}
body.app-shell-page .event-form-grid input,
body.app-shell-page .event-form-grid textarea{
  font-size:14px;
  font-weight:400;
  color:#111827;
  background:#f9fafb;
}
body.app-shell-page .event-radio label{font-weight:500}
@media(max-height:700px){
  body.app-shell-page .modal{top:72px;padding:10px}
  body.app-shell-page .event-modalbox,
  body.app-shell-page .modalbox{max-height:calc(100dvh - 92px)}
}

/* STEP 09H — exakte Typografie-Basis der alten React/Tailwind-Version.
   WICHTIG: Inter wird absichtlich NICHT geladen. Die alte App definierte nur
   "Inter", ui-sans-serif, system-ui, sans-serif und fiel auf dem Client auf
   die Systemschrift zurück. */
:root{
  --legacy-font:"Inter",ui-sans-serif,system-ui,sans-serif;
  --tw-gray-50:#f9fafb;
  --tw-gray-100:#f3f4f6;
  --tw-gray-200:#e5e7eb;
  --tw-gray-300:#d1d5db;
  --tw-gray-400:#9ca3af;
  --tw-gray-500:#6b7280;
  --tw-gray-600:#4b5563;
  --tw-gray-700:#374151;
  --tw-gray-900:#111827;
  --tw-primary:#0C71C3;
  --tw-primary-hover:#0a5a9b;
}
html{font-family:var(--legacy-font);font-size:16px}
body.app-shell-page{
  font-family:var(--legacy-font)!important;
  font-size:16px!important;
  line-height:1.5!important;
  font-weight:400!important;
  letter-spacing:normal!important;
  color:#333333!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:auto;
}
body.app-shell-page button,
body.app-shell-page input,
body.app-shell-page select,
body.app-shell-page textarea{
  font:inherit;
  font-family:var(--legacy-font)!important;
}
/* Tailwind text scale used by the original */
body.app-shell-page h1{font-size:30px!important;line-height:36px!important;font-weight:700!important;letter-spacing:normal!important;color:var(--tw-gray-900)!important}
body.app-shell-page h2{font-weight:500!important;letter-spacing:-.025em!important}
body.app-shell-page h3,body.app-shell-page h4,body.app-shell-page h5,body.app-shell-page h6{font-weight:500!important;letter-spacing:-.025em!important}

/* Navbar: exact old Tailwind typography */
body.app-shell-page .legacy-nav-link{font-size:14px!important;line-height:20px!important;font-weight:500!important;color:var(--tw-gray-700)!important}
body.app-shell-page .legacy-user-chip{font-size:14px!important;line-height:20px!important;font-weight:400!important;color:var(--tw-gray-600)!important}
body.app-shell-page .legacy-user-chip span{font-weight:500!important}

/* Dashboard header/button */
body.app-shell-page .dash-head{margin-bottom:32px!important}
body.app-shell-page .dash-head h1{font-size:30px!important;line-height:36px!important;font-weight:700!important;letter-spacing:normal!important}
body.app-shell-page .create-btn{font-size:14px!important;line-height:20px!important;font-weight:500!important;padding:8px 16px!important;border-radius:6px!important}

/* My Events: original EventItem.tsx */
body.app-shell-page .event-list{gap:16px!important}
body.app-shell-page .legacy-event{border-radius:6px!important;border:0!important;box-shadow:0 1px 3px 0 rgb(0 0 0 / .10),0 1px 2px -1px rgb(0 0 0 / .10)!important}
body.app-shell-page .event-summary{min-height:0!important;padding:16px 24px!important}
body.app-shell-page .event-title{font-size:18px!important;line-height:28px!important;font-weight:500!important;color:var(--tw-primary)!important}
body.app-shell-page .badge{font-size:12px!important;line-height:16px!important;font-weight:500!important;padding:2px 8px!important}
body.app-shell-page .event-meta{font-size:14px!important;line-height:20px!important;font-weight:400!important;color:var(--tw-gray-500)!important;gap:0!important;margin-top:8px!important}
body.app-shell-page .meta-line{font-size:14px!important;line-height:20px!important;font-weight:400!important}
body.app-shell-page .event-actions{gap:16px!important}
body.app-shell-page .event-details{margin:16px 24px 0!important;padding:16px 0 0!important}
body.app-shell-page .detail-grid{gap:16px!important}
body.app-shell-page .detail-label{font-size:14px!important;line-height:20px!important;font-weight:500!important;color:var(--tw-gray-500)!important;margin-bottom:4px!important}
body.app-shell-page .detail-text,body.app-shell-page .detail-link{font-size:14px!important;line-height:20px!important;font-weight:400!important;color:var(--tw-gray-900)!important}
body.app-shell-page .detail-link{color:var(--tw-primary)!important}

/* Inline event edit form from old EventItem.tsx */
body.app-shell-page .form-panel label,
body.app-shell-page .radio-row label,
body.app-shell-page .file-label{font-size:14px!important;line-height:20px!important;font-weight:500!important;color:var(--tw-gray-700)!important}
body.app-shell-page .form-panel input,
body.app-shell-page .form-panel textarea,
body.app-shell-page .form-panel select{font-size:14px!important;line-height:20px!important;font-weight:400!important}
body.app-shell-page .btn{font-size:14px!important;line-height:20px!important;font-weight:500!important}

/* Admin Dashboard: exact AdminDashboard.tsx scale */
body.app-shell-page .wrap{padding-top:48px!important}
body.app-shell-page .wrap>h1{font-size:30px!important;line-height:36px!important;font-weight:700!important;margin-bottom:32px!important}
body.app-shell-page .grid{gap:32px!important}
body.app-shell-page .panel{border-radius:8px!important;box-shadow:0 1px 3px 0 rgb(0 0 0 / .10),0 1px 2px -1px rgb(0 0 0 / .10)!important}
body.app-shell-page .head{background:var(--tw-gray-50)!important;padding:16px!important}
body.app-shell-page .head h2{font-size:18px!important;line-height:28px!important;font-weight:500!important;color:var(--tw-gray-900)!important;margin-bottom:16px!important;letter-spacing:normal!important}
body.app-shell-page .search input{font-size:14px!important;line-height:20px!important;font-weight:400!important}
body.app-shell-page .user{padding:16px!important}
body.app-shell-page .uname{font-size:14px!important;line-height:20px!important;font-weight:500!important;color:var(--tw-gray-900)!important}
body.app-shell-page .meta{font-size:12px!important;line-height:16px!important;font-weight:400!important;color:var(--tw-gray-500)!important;margin-top:0!important}
body.app-shell-page .event{padding:16px 24px!important}
body.app-shell-page .event h3{font-size:18px!important;line-height:28px!important;font-weight:500!important;color:var(--tw-gray-900)!important;margin:0!important;letter-spacing:normal!important}
body.app-shell-page .eventmeta{margin-top:4px!important;font-size:14px!important;line-height:20px!important;font-weight:400!important;color:var(--tw-gray-500)!important}
body.app-shell-page .eventmeta strong{font-weight:500!important;color:var(--tw-gray-700)!important}
body.app-shell-page .count{font-size:12px!important;line-height:16px!important;font-weight:500!important;padding:2px 10px!important}

/* Event modal: exact EventModal.tsx font scale and field styling. */
body.app-shell-page .event-modalbox{font-family:var(--legacy-font)!important;font-size:16px!important;border-radius:8px!important;padding:24px!important;max-width:448px!important}
body.app-shell-page .event-modalbox h2{font-size:20px!important;line-height:28px!important;font-weight:500!important;color:var(--tw-gray-900)!important;letter-spacing:-.025em!important;margin:0 0 16px!important}
body.app-shell-page .event-form-grid{gap:16px!important}
body.app-shell-page .event-form-grid label,
body.app-shell-page .event-radio label{font-size:14px!important;line-height:20px!important;font-weight:500!important;color:var(--tw-gray-900)!important;margin-bottom:8px!important}
body.app-shell-page .event-radio label{margin-bottom:0!important}
body.app-shell-page .event-form-grid input,
body.app-shell-page .event-form-grid textarea,
body.app-shell-page .event-form-grid select{font-size:14px!important;line-height:20px!important;font-weight:400!important;color:var(--tw-gray-900)!important;background:var(--tw-gray-50)!important;border:1px solid var(--tw-gray-300)!important;border-radius:8px!important;padding:10px!important}
body.app-shell-page .event-form-grid textarea{min-height:82px!important}
body.app-shell-page .event-radio{gap:16px!important}
body.app-shell-page .event-file{font-size:14px!important;line-height:20px!important;font-weight:500!important}
body.app-shell-page .buttons .btn{font-size:14px!important;line-height:20px!important;font-weight:500!important}

/* Settings / common form text */
body.app-shell-page label{font-size:14px;line-height:20px;font-weight:500}

@media(max-width:640px){
  body.app-shell-page .event-summary{padding:16px!important}
  body.app-shell-page .event-details{margin-left:16px!important;margin-right:16px!important}
}


/* STEP 09I — AdminDashboard-Typografie exakt nach Original-Komponente.
   Original: username = text-sm font-medium text-gray-900;
   meta = text-xs text-gray-500;
   event title = text-lg font-medium text-gray-900;
   event meta = text-sm text-gray-500;
   creator = font-medium text-gray-700. */
body.app-shell-page .legacy-user-name{
  font-family:var(--legacy-font)!important;
  font-size:14px!important;
  line-height:20px!important;
  font-weight:500!important;
  color:#111827!important;
  letter-spacing:normal!important;
}
body.app-shell-page .legacy-user-meta{
  font-family:var(--legacy-font)!important;
  font-size:12px!important;
  line-height:16px!important;
  font-weight:400!important;
  color:#6b7280!important;
  letter-spacing:normal!important;
  margin-top:0!important;
}
body.app-shell-page .legacy-admin-event-title{
  font-family:var(--legacy-font)!important;
  font-size:18px!important;
  line-height:28px!important;
  font-weight:500!important;
  color:#111827!important;
  letter-spacing:normal!important;
}
body.app-shell-page .legacy-admin-event-meta,
body.app-shell-page .legacy-event-prefix,
body.app-shell-page .legacy-event-date{
  font-family:var(--legacy-font)!important;
  font-size:14px!important;
  line-height:20px!important;
  font-weight:400!important;
  color:#6b7280!important;
  letter-spacing:normal!important;
}
body.app-shell-page .legacy-event-creator{
  font-family:var(--legacy-font)!important;
  font-size:14px!important;
  line-height:20px!important;
  font-weight:500!important;
  color:#374151!important;
  letter-spacing:normal!important;
}

/* STEP 09J — Facebook-/Systemschrift global.
   Inter wird bewusst vollständig aus dem aktiven Stack entfernt.
   Windows/Chrome: Segoe UI, macOS/iOS: San Francisco, Android: Roboto. */
:root{
  --legacy-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif!important;
}
html,
body.app-shell-page,
body.app-shell-page button,
body.app-shell-page input,
body.app-shell-page select,
body.app-shell-page textarea{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif!important;
}
body.app-shell-page{
  -webkit-font-smoothing:auto!important;
  -moz-osx-font-smoothing:auto!important;
  text-rendering:auto!important;
}
/* Facebook-artige Gewichtung: normale Informationen sauber 400,
   hervorgehobene Namen/Titel klar 600 statt optisch zu dünnem 500. */
body.app-shell-page .uname,
body.app-shell-page .event h3,
body.app-shell-page .event-title,
body.app-shell-page .eventmeta strong,
body.app-shell-page .legacy-user-chip span,
body.app-shell-page .head h2{
  font-weight:600!important;
}
body.app-shell-page .meta,
body.app-shell-page .eventmeta,
body.app-shell-page .event-meta,
body.app-shell-page .meta-line,
body.app-shell-page .date,
body.app-shell-page .time{
  font-weight:400!important;
}
/* Schritt 09K: öffentliche Auth-Aktionen – zentral für alle ausgeloggten Ansichten */
.legacy-public-login{color:#344054!important;font-weight:500!important}
.legacy-register-btn{background:#0c71c3!important;color:#fff!important;font-weight:600!important;padding:10px 16px!important;border-radius:6px!important;box-shadow:0 2px 5px rgba(15,23,42,.14)}
.legacy-register-btn:hover{background:#0a5fa5!important;color:#fff!important}
@media(max-width:850px){
  .legacy-public-login span,.legacy-register-btn span{display:inline!important}
  .legacy-register-btn{padding:9px 13px!important}
}

/* STEP 09L — Logo im zentralen Header exakt 100 % größer als zuvor. */

/* =========================================================
   STEP 10B — Globales Aquarell-Design, Variante B
   Ein zentraler Design-Layer für öffentliche Ansicht,
   Dashboard, Admin, Einstellungen, Modals und Auth-Seiten.
   ========================================================= */
:root{
  --aq-primary:#0c71c3;
  --aq-primary-2:#2f91dc;
  --aq-primary-dark:#075a9d;
  --aq-sky:#eaf5ff;
  --aq-sky-2:#d9edff;
  --aq-lilac:#f2efff;
  --aq-mint:#eaf8f4;
  --aq-peach:#fff3e8;
  --aq-rose:#fff0f3;
  --aq-ink:#1f2a3a;
  --aq-muted:#667085;
  --aq-line:rgba(85,131,174,.24);
  --aq-shadow:0 10px 30px rgba(38,84,122,.10),0 2px 7px rgba(38,84,122,.06);
  --aq-shadow-hover:0 16px 38px rgba(38,84,122,.15),0 4px 10px rgba(38,84,122,.07);
  --aq-radius:14px;
}

html{background:#f7fbff}
body.app-shell-page,
body.auth-page{
  color:var(--aq-ink)!important;
  background:
    radial-gradient(600px 340px at 7% 4%,rgba(177,219,250,.30),transparent 66%),
    radial-gradient(620px 340px at 94% 13%,rgba(213,204,252,.22),transparent 66%),
    radial-gradient(580px 340px at 82% 92%,rgba(199,237,226,.20),transparent 68%),
    #fbfdff!important;
  background-attachment:fixed!important;
}

/* Zentraler Header */
.legacy-navbar{
  background:rgba(255,255,255,.90)!important;
  border-bottom:1px solid rgba(108,154,194,.20)!important;
  box-shadow:0 4px 18px rgba(31,76,112,.08)!important;
  backdrop-filter:blur(14px) saturate(130%);
}
.legacy-navbar::after{
  content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;pointer-events:none;
  background:linear-gradient(90deg,transparent 2%,rgba(12,113,195,.34) 24%,rgba(149,126,226,.20) 58%,rgba(60,169,144,.20) 80%,transparent 98%);
}
.legacy-nav-link{
  border:1px solid transparent!important;
  border-radius:10px!important;
  transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease!important;
}
.legacy-nav-link:hover{
  background:linear-gradient(135deg,rgba(232,246,255,.95),rgba(244,241,255,.76))!important;
  border-color:rgba(12,113,195,.13)!important;
  transform:translateY(-1px);
}
.legacy-nav-link.is-active{
  color:var(--aq-primary)!important;
  background:linear-gradient(135deg,rgba(222,241,255,.98),rgba(238,245,255,.84))!important;
  border-color:rgba(12,113,195,.20)!important;
  box-shadow:0 4px 12px rgba(12,113,195,.09)!important;
}
.legacy-user-chip{
  background:linear-gradient(135deg,rgba(246,250,255,.98),rgba(239,246,255,.88))!important;
  border-color:rgba(12,113,195,.14)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88)!important;
}
.legacy-icon-link:hover,.legacy-icon-link.is-active{
  background:linear-gradient(135deg,var(--aq-sky),var(--aq-lilac))!important;
  box-shadow:0 4px 12px rgba(31,76,112,.08)!important;
}
.legacy-register-btn,.create-btn,.compact-submit,.modal-foot .cta,.btn:not(.secondary):not(.danger),.cta{
  background:linear-gradient(135deg,var(--aq-primary),var(--aq-primary-2))!important;
  border:1px solid rgba(7,90,157,.14)!important;
  box-shadow:0 6px 16px rgba(12,113,195,.18)!important;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease!important;
}
.legacy-register-btn:hover,.create-btn:hover,.compact-submit:hover,.modal-foot .cta:hover,.btn:not(.secondary):not(.danger):hover,.cta:hover{
  filter:saturate(108%);transform:translateY(-1px);box-shadow:0 9px 20px rgba(12,113,195,.23)!important;
}

/* Allgemeine Inhaltsflächen */
.dash-wrap,.wrap,.shell{position:relative}
.dash-head h1,.wrap>h1,.top h1{color:#17243a!important}
.message,.alert,.msg{box-shadow:0 5px 18px rgba(42,79,111,.07)!important;border:1px solid rgba(88,128,164,.12)!important}
.ok{background:linear-gradient(135deg,#effcf6,#e8f8f1)!important}
.err,.error{background:linear-gradient(135deg,#fff4f5,#ffedf0)!important}

/* Dashboard Eventkarten */
body.app-shell-page .legacy-event{
  background:
    radial-gradient(280px 120px at 98% 0%,rgba(205,232,255,.26),transparent 70%),
    linear-gradient(145deg,rgba(255,255,255,.98),rgba(248,252,255,.97))!important;
  border:1px solid rgba(88,139,183,.22)!important;
  border-radius:var(--aq-radius)!important;
  box-shadow:var(--aq-shadow)!important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;
}
body.app-shell-page .legacy-event:hover{
  transform:translateY(-2px);box-shadow:var(--aq-shadow-hover)!important;border-color:rgba(12,113,195,.30)!important;
}
body.app-shell-page .event-summary{background:transparent!important}
body.app-shell-page .event-title{color:#075fa9!important}
body.app-shell-page .badge{
  background:linear-gradient(135deg,#e2f2ff,#edf1ff)!important;
  color:#1768a8!important;
  border:1px solid rgba(12,113,195,.13)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85)!important;
}
body.app-shell-page .event-details{
  border-top:1px solid rgba(85,131,174,.18)!important;
  background:linear-gradient(180deg,rgba(241,248,255,.52),rgba(255,255,255,.20))!important;
  border-radius:0 0 12px 12px!important;
}
body.app-shell-page .detail-image{border:1px solid rgba(85,131,174,.18)!important;box-shadow:0 6px 18px rgba(46,87,121,.08)!important}
body.app-shell-page .empty{
  background:linear-gradient(135deg,rgba(239,248,255,.88),rgba(247,244,255,.78))!important;
  border:1px dashed rgba(12,113,195,.25)!important;
  box-shadow:var(--aq-shadow)!important;
}
.icon-action,.admin-icon-action{border-radius:8px!important;transition:background .16s ease,transform .16s ease!important}
.icon-action:hover,.admin-icon-action:hover{background:rgba(226,242,255,.78)!important;transform:translateY(-1px)}
.delete-action:hover,.del:hover{background:rgba(255,233,237,.88)!important}

/* Kompaktes Event-Modal */
.event-form-backdrop,
body.app-shell-page .modal{
  background:rgba(27,43,62,.46)!important;
  backdrop-filter:blur(5px) saturate(112%)!important;
}
.event-form-modal,
body.app-shell-page .event-modalbox,
body.app-shell-page .modalbox{
  border:1px solid rgba(87,132,173,.20)!important;
  box-shadow:0 28px 70px rgba(30,62,90,.24),0 8px 22px rgba(30,62,90,.10)!important;
  background:
    radial-gradient(300px 130px at 10% 0%,rgba(212,236,255,.50),transparent 72%),
    radial-gradient(260px 120px at 100% 8%,rgba(229,219,255,.34),transparent 70%),
    #fff!important;
  border-radius:16px!important;
}
.event-form-modal::before,
body.app-shell-page .event-modalbox::before,
body.app-shell-page .modalbox::before{
  content:"";display:block;position:absolute;left:0;right:0;top:0;height:4px;border-radius:16px 16px 0 0;
  background:linear-gradient(90deg,#61b9ef,#8fcbea 46%,#b7a7ea 76%,#96d6c5);
}
.event-form-scroll{padding-top:28px!important}
.event-form-title{color:#16314a!important;font-weight:600!important}
.event-form-close,.modal-close{
  background:rgba(255,255,255,.72)!important;border:1px solid rgba(85,131,174,.12)!important;box-shadow:0 3px 10px rgba(49,84,112,.08)!important;
}
.event-form-close:hover,.modal-close:hover{background:#fff!important;color:var(--aq-primary)!important}
.compact-event-form input[type=text],.compact-event-form input[type=url],.compact-event-form input[type=date],.compact-event-form input[type=time],.compact-event-form textarea,
body.app-shell-page .event-form-grid input,body.app-shell-page .event-form-grid textarea,
body.app-shell-page .f input,body.app-shell-page .f select,
body.app-shell-page input[type=text],body.app-shell-page input[type=email]{
  background:rgba(251,253,255,.95)!important;
  border-color:rgba(91,130,165,.28)!important;
  box-shadow:inset 0 1px 2px rgba(31,62,88,.025)!important;
}
.compact-event-form input:focus,.compact-event-form textarea:focus,
body.app-shell-page .event-form-grid input:focus,body.app-shell-page .event-form-grid textarea:focus,
body.app-shell-page .f input:focus,body.app-shell-page .f select:focus,
body.app-shell-page input[type=text]:focus,body.app-shell-page input[type=email]:focus{
  border-color:rgba(12,113,195,.62)!important;
  box-shadow:0 0 0 3px rgba(80,166,224,.13),inset 0 1px 2px rgba(31,62,88,.02)!important;
  outline:none!important;
}
.compact-upload,.event-file{
  background:linear-gradient(135deg,rgba(239,248,255,.86),rgba(247,244,255,.72))!important;
  border-color:rgba(82,140,186,.30)!important;
}
.compact-upload:hover,.event-file:hover{border-color:rgba(12,113,195,.45)!important;background:linear-gradient(135deg,#eaf6ff,#f2efff)!important}
.compact-radio input,.event-radio input,.check input{accent-color:var(--aq-primary)}

/* Admin Dashboard */
body.app-shell-page .panel{
  border:1px solid rgba(87,132,173,.18)!important;
  border-radius:15px!important;
  box-shadow:var(--aq-shadow)!important;
  background:rgba(255,255,255,.96)!important;
}
body.app-shell-page .head{
  background:
    radial-gradient(220px 80px at 98% 0%,rgba(221,237,255,.45),transparent 75%),
    linear-gradient(135deg,rgba(247,251,255,.98),rgba(243,248,252,.95))!important;
  border-bottom:1px solid rgba(87,132,173,.16)!important;
}
body.app-shell-page .search input{background:rgba(255,255,255,.90)!important}
body.app-shell-page .user{border-bottom-color:rgba(87,132,173,.13)!important;transition:background .16s ease!important}
body.app-shell-page .user:hover{background:linear-gradient(90deg,rgba(237,247,255,.82),rgba(247,244,255,.55))!important}
body.app-shell-page .user.active{
  background:linear-gradient(100deg,rgba(220,240,255,.96),rgba(235,244,255,.78))!important;
  box-shadow:inset 4px 0 0 rgba(12,113,195,.62)!important;
}
body.app-shell-page .avatar{background:linear-gradient(135deg,#e7eef6,#eef3f8)!important;border:1px solid rgba(104,132,158,.12)!important}
body.app-shell-page .avatar.all{background:linear-gradient(135deg,#d9efff,#e8f4ff)!important;color:var(--aq-primary)!important}
body.app-shell-page .event{border-bottom-color:rgba(87,132,173,.13)!important;transition:background .15s ease!important}
body.app-shell-page .event:hover{background:linear-gradient(90deg,rgba(247,251,255,.90),rgba(244,248,255,.65))!important}
body.app-shell-page .count{
  background:linear-gradient(135deg,#e1f2ff,#edf2ff)!important;color:#1168a9!important;border:1px solid rgba(12,113,195,.12)!important;
}
.user-migration-mail{
  background:linear-gradient(135deg,#edf7ff,#f3f0ff)!important;border-color:rgba(12,113,195,.20)!important;color:#0b6db9!important;
}

/* Einstellungen */
body.app-shell-page .card{
  border:1px solid rgba(87,132,173,.18)!important;border-radius:16px!important;box-shadow:var(--aq-shadow)!important;background:rgba(255,255,255,.96)!important;
}
body.app-shell-page .section{border-top-color:rgba(87,132,173,.13)!important}
body.app-shell-page .section:nth-of-type(1){background:linear-gradient(135deg,rgba(247,251,255,.78),rgba(255,255,255,.96))!important}
body.app-shell-page .section:nth-of-type(2){background:linear-gradient(135deg,rgba(246,253,250,.72),rgba(255,255,255,.96))!important}
body.app-shell-page .actions{background:linear-gradient(135deg,#f5faff,#f9f7ff)!important;border-top:1px solid rgba(87,132,173,.12)!important}
body.app-shell-page .status{border:1px solid rgba(80,120,150,.10)!important}
body.app-shell-page .subscribed{background:linear-gradient(135deg,#e5f8ee,#edf9f5)!important}
body.app-shell-page .pending{background:linear-gradient(135deg,#fff3d9,#fff8eb)!important}
body.app-shell-page .unsubscribed{background:linear-gradient(135deg,#f0f3f6,#f7f8fa)!important}
body.app-shell-page .secondary{background:linear-gradient(135deg,#f1f5f9,#f7f9fc)!important;color:#344054!important;border:1px solid rgba(87,120,149,.15)!important}

/* Öffentlicher Kalender */
.shell .hero{
  padding:24px 26px;border:1px solid rgba(89,138,179,.14);border-radius:18px;
  background:
    radial-gradient(340px 160px at 7% 0%,rgba(202,232,255,.38),transparent 72%),
    radial-gradient(300px 150px at 97% 6%,rgba(226,216,255,.28),transparent 72%),
    rgba(255,255,255,.72);
  box-shadow:0 9px 28px rgba(42,82,116,.07);
}
.shell .hero h1{color:#176da9!important}
.shell .hero p{color:#47708f!important}
.view-toggle{background:linear-gradient(135deg,#edf6fd,#f2effa)!important;border:1px solid rgba(87,132,173,.14)!important;box-shadow:0 4px 13px rgba(42,82,116,.07)!important}
.view-btn.active{background:#fff!important;color:var(--aq-primary)!important;box-shadow:0 4px 11px rgba(42,82,116,.10)!important}
.filters .chip{
  border:1px solid rgba(87,132,173,.13)!important;
  box-shadow:0 3px 9px rgba(42,82,116,.05)!important;
  transition:transform .15s ease,box-shadow .15s ease!important;
}
.filters .chip:hover{transform:translateY(-1px);box-shadow:0 6px 13px rgba(42,82,116,.08)!important}
.filters .chip:not(.active){background:linear-gradient(135deg,rgba(242,248,253,.96),rgba(248,246,252,.90))!important;color:#4d5c6b!important}
.filters .chip.active{background:linear-gradient(135deg,#dcefff,#e8f4ff)!important;color:#0b67aa!important;border-color:rgba(12,113,195,.22)!important}
.filters .chip.akademie.active{background:linear-gradient(135deg,#ece7ff,#f5f1ff)!important;color:#6c54a8!important;border-color:rgba(116,91,181,.18)!important}
.filters .chip.camping.active{background:linear-gradient(135deg,#e3f5ef,#effaf6)!important;color:#287d67!important;border-color:rgba(57,143,120,.18)!important}
.event-card,.list-card{
  border:1px solid rgba(12,113,195,.32)!important;
  background:
    radial-gradient(250px 120px at 100% 0%,rgba(215,238,255,.34),transparent 72%),
    linear-gradient(145deg,#fff,rgba(248,252,255,.97))!important;
  box-shadow:var(--aq-shadow)!important;
  border-radius:16px!important;
}
.event-card:hover,.list-card:hover{box-shadow:var(--aq-shadow-hover)!important}
.date-tab,.list-date{
  background:linear-gradient(145deg,#d8efff,#c8e7fb 55%,#e1efff)!important;
  color:#0d66a8!important;
  text-shadow:0 1px 0 rgba(255,255,255,.7);
}
.card-body{background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(250,253,255,.96))!important}
.card-title,.list-title{color:#19344b!important}
.badges .badge{background:linear-gradient(135deg,#f0f6fb,#f5f2fa)!important;border:1px solid rgba(87,132,173,.10)!important;color:#566574!important}
.list-main{background:linear-gradient(90deg,rgba(255,255,255,.98),rgba(250,253,255,.94))!important}
.modal-backdrop{
  background:rgba(26,43,61,.48)!important;backdrop-filter:blur(5px) saturate(112%)!important;
}
.modal-backdrop .modal{
  border:1px solid rgba(87,132,173,.20)!important;border-radius:17px!important;
  box-shadow:0 28px 80px rgba(29,61,89,.28)!important;
  background:#fff!important;
}
.modal-head{
  background:
    radial-gradient(250px 100px at 5% 0%,rgba(209,236,255,.55),transparent 76%),
    radial-gradient(210px 100px at 100% 0%,rgba(228,219,255,.38),transparent 72%),
    #fff!important;
  border-bottom-color:rgba(87,132,173,.14)!important;
}
.modal-section{background:linear-gradient(180deg,rgba(248,252,255,.76),#fff)!important}
.modal-info{background:#fff!important}
.modal-foot{background:linear-gradient(135deg,#f0f8ff,#f6f3ff)!important;border-top-color:rgba(87,132,173,.13)!important}

/* Auth / Bestätigungsseiten */
body.auth-page{min-height:100vh!important}
body.auth-page .page{min-height:100vh;padding:70px 20px!important;align-items:flex-start!important}
body.auth-page .box,
body.auth-page .auth-card{
  background:
    radial-gradient(250px 110px at 0% 0%,rgba(211,237,255,.44),transparent 75%),
    radial-gradient(220px 100px at 100% 0%,rgba(229,219,255,.30),transparent 72%),
    rgba(255,255,255,.97)!important;
  border:1px solid rgba(87,132,173,.18)!important;
  border-radius:18px!important;
  box-shadow:0 18px 46px rgba(37,76,108,.14)!important;
  padding:30px!important;
}
body.auth-page h1,body.auth-page .title{color:#17344d!important}
body.auth-page .field{
  background:rgba(252,254,255,.98)!important;border-color:rgba(91,130,165,.28)!important;
}
body.auth-page .field:focus{border-color:rgba(12,113,195,.58)!important;box-shadow:0 0 0 3px rgba(80,166,224,.12)!important}
body.auth-page .btn,
body.auth-page a.auth-button{
  background:linear-gradient(135deg,var(--aq-primary),var(--aq-primary-2))!important;color:#fff!important;border:0!important;box-shadow:0 7px 17px rgba(12,113,195,.18)!important;
}
body.auth-page .sub a,body.auth-page .link{color:#0a6fb9!important}
body.auth-page .auth-status-card{
  max-width:540px;margin:10vh auto;padding:32px;text-align:center;
  background:linear-gradient(145deg,#fff,#f8fbff);border:1px solid rgba(87,132,173,.18);border-radius:18px;box-shadow:var(--aq-shadow);
}
body.auth-page .auth-status-card a{display:inline-block;margin-top:14px;padding:10px 16px;border-radius:9px;background:linear-gradient(135deg,var(--aq-primary),var(--aq-primary-2));color:#fff!important;text-decoration:none;box-shadow:0 6px 15px rgba(12,113,195,.17)}

@media(max-width:760px){
  .shell .hero{padding:20px 18px;border-radius:15px}
  .event-card,.list-card,body.app-shell-page .legacy-event,body.app-shell-page .panel,body.app-shell-page .card{border-radius:13px!important}
}

/* Öffentliche Ansicht inklusive Embed erhält denselben Hintergrund-Layer. */
body.event-public-page{
  color:var(--aq-ink)!important;
  background:
    radial-gradient(620px 350px at 6% 3%,rgba(177,219,250,.28),transparent 66%),
    radial-gradient(620px 350px at 94% 12%,rgba(213,204,252,.20),transparent 66%),
    radial-gradient(560px 320px at 84% 94%,rgba(199,237,226,.18),transparent 68%),
    #fbfdff!important;
  background-attachment:fixed!important;
}
body.event-public-page .shell.embed{padding-top:28px!important;padding-bottom:50px!important}
