/* ENAIBLE – Anmeldung | Stylesheet (Corporate Look des Projekts) */
@font-face{font-family:'Poppins';font-weight:400;font-display:swap;src:url('../fonts/Poppins-Regular.ttf') format('truetype');}
@font-face{font-family:'Poppins';font-weight:500;font-display:swap;src:url('../fonts/Poppins-Medium.ttf') format('truetype');}
@font-face{font-family:'Poppins';font-weight:600;font-display:swap;src:url('../fonts/Poppins-SemiBold.ttf') format('truetype');}
@font-face{font-family:'Poppins';font-weight:700;font-display:swap;src:url('../fonts/Poppins-Bold.ttf') format('truetype');}

:root{
  --indigo:#28286E; --indigo-d:#1E1E55; --indigo-soft:#6A6AA0;
  --orange:#E66E1E; --orange-d:#CC5E12; --peach:#F0B482;
  --lavender:#D2DCF0; --lav-bg:#F3F5FC; --ink:#33333F; --muted:#5A6172;
  --line:#E4E7F2; --paper:#fff; --ok:#2E7D32; --err:#C62828;
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{font-family:'Poppins',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  color:var(--ink);line-height:1.55;background:var(--lav-bg);
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
img{max-width:100%;height:auto;display:block;}
a{color:var(--orange-d);}
.wrap{max-width:960px;margin:0 auto;padding:0 20px;}

/* Kopf */
.site-head{background:#fff;border-bottom:1px solid var(--line);}
.site-head .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;
  flex-wrap:wrap;padding-top:18px;padding-bottom:18px;}
.site-head .en{height:42px;}
.site-head .eyebrow{text-align:right;line-height:1.3;}
.site-head .eyebrow b{color:var(--indigo);font-weight:700;font-size:.9rem;}
.site-head .eyebrow span{display:block;color:var(--orange);font-weight:500;font-size:.68rem;
  text-transform:uppercase;letter-spacing:1.4px;margin-top:2px;}

/* Hero */
.hero{background:#fff;border-bottom:1px solid var(--line);padding:34px 0 38px;position:relative;overflow:hidden;}
.hero .ring{position:absolute;right:5%;top:-50px;width:120px;height:120px;border:14px solid var(--peach);
  border-radius:50%;opacity:.4;pointer-events:none;}
.hero .kicker{display:inline-flex;align-items:center;gap:10px;color:var(--orange);font-weight:600;
  font-size:.76rem;letter-spacing:2px;text-transform:uppercase;}
.hero .kicker::before{content:"";width:30px;height:2px;background:var(--orange);}
.hero h1{color:var(--indigo);font-weight:700;letter-spacing:-.4px;line-height:1.08;
  font-size:clamp(1.7rem,4.4vw,2.6rem);margin:12px 0 0;}
.hero p.lead{max-width:62ch;margin:14px 0 0;font-size:clamp(1rem,1.5vw,1.08rem);}
.hero .meta{display:flex;flex-wrap:wrap;gap:9px;margin:18px 0 0;}
.chip{display:inline-flex;align-items:center;gap:8px;background:var(--lav-bg);color:var(--indigo);
  font-weight:500;font-size:.84rem;border-radius:999px;padding:6px 13px;}
.chip::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--orange);}

/* Karten / Layout */
main{padding:30px 0 10px;}
.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px;margin:0 0 22px;
  box-shadow:0 2px 14px rgba(40,40,110,.05);}
.card h2{color:var(--indigo);font-weight:700;font-size:1.25rem;margin:0 0 4px;}
.card .sub{color:var(--muted);font-size:.95rem;margin:0 0 18px;}
.section-label{color:var(--orange);font-weight:600;font-size:.72rem;letter-spacing:2px;text-transform:uppercase;}

/* Programm-Liste (kompakt, als Übersicht) */
.events-list{border-top:2px solid var(--indigo);margin-top:10px;}
.ev{display:grid;grid-template-columns:120px 1fr;gap:18px;padding:16px 0;border-bottom:1px solid var(--line);}
.ev .when .d{color:var(--indigo-soft);font-weight:500;font-size:.68rem;text-transform:uppercase;letter-spacing:.8px;}
.ev .when .dt{color:var(--indigo);font-weight:700;font-size:1.05rem;}
.ev .when .tm{color:var(--orange-d);font-weight:600;font-size:.76rem;margin-top:2px;}
.ev h3{margin:0;color:var(--ink);font-weight:600;font-size:1rem;line-height:1.25;}
.ev .sp{color:var(--muted);font-size:.8rem;font-weight:500;margin-top:5px;}
.tag{display:inline-block;margin-left:7px;color:#fff;background:var(--indigo);font-weight:600;font-size:.62rem;
  letter-spacing:.4px;padding:2px 7px;border-radius:4px;vertical-align:middle;}
.tag.en{background:var(--orange);}

/* Formular */
.field{margin:0 0 18px;}
.field > label{display:block;font-weight:600;font-size:.9rem;color:var(--indigo);margin:0 0 6px;}
.req{color:var(--orange-d);}
input[type=text],input[type=email]{width:100%;font-family:inherit;font-size:1rem;padding:12px 14px;
  border:1.5px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);}
input[type=text]:focus,input[type=email]:focus{outline:none;border-color:var(--indigo);
  box-shadow:0 0 0 3px var(--lavender);}
fieldset{border:0;padding:0;margin:0 0 18px;}
legend{font-weight:600;font-size:.9rem;color:var(--indigo);margin:0 0 10px;padding:0;}
.choice{display:flex;gap:12px;align-items:flex-start;border:1.5px solid var(--line);border-radius:10px;
  padding:12px 14px;margin:0 0 9px;cursor:pointer;transition:border-color .12s,background .12s;}
.choice:hover{border-color:var(--peach);background:#FFFDFB;}
.choice input{margin-top:3px;width:18px;height:18px;accent-color:var(--orange);flex:none;}
.choice .c-main{font-weight:600;color:var(--ink);font-size:.95rem;}
.choice .c-sub{color:var(--muted);font-size:.8rem;margin-top:2px;}
.choice:has(input:checked){border-color:var(--orange);background:#FFF7F0;}
.consent{display:flex;gap:11px;align-items:flex-start;font-size:.9rem;margin:4px 0 0;}
.consent input{margin-top:3px;width:18px;height:18px;accent-color:var(--indigo);flex:none;}
.hp{position:absolute !important;left:-9999px !important;width:1px;height:1px;overflow:hidden;}
.err-msg{color:var(--err);font-size:.82rem;font-weight:500;margin:6px 0 0;}
.field.has-err input,.choice.has-err,fieldset.has-err .c-wrap{border-color:var(--err);}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:inherit;
  font-weight:600;font-size:1rem;text-decoration:none;border:2px solid transparent;border-radius:999px;
  padding:13px 26px;cursor:pointer;transition:background .15s,color .15s,transform .12s,box-shadow .15s;}
.btn:focus-visible{outline:3px solid var(--indigo);outline-offset:3px;}
.btn-primary{background:var(--orange);color:#fff;box-shadow:0 6px 16px rgba(230,110,30,.25);}
.btn-primary:hover{background:var(--orange-d);transform:translateY(-1px);}
.btn-ghost{background:#fff;color:var(--indigo);border-color:var(--lavender);}
.btn-ghost:hover{background:var(--lav-bg);}
.btn-block{width:100%;}

/* Hinweis-Box */
.note{display:flex;gap:12px;align-items:flex-start;background:var(--lav-bg);border-left:4px solid var(--indigo);
  border-radius:0 8px 8px 0;padding:14px 18px;margin:0 0 20px;}
.note svg{flex:none;margin-top:2px;}
.note p{margin:0;font-size:.92rem;}
.note b{color:var(--indigo);}

/* Erfolgsseite */
.success-badge{display:inline-flex;align-items:center;gap:10px;background:#E8F5E9;color:#1B5E20;
  font-weight:600;border-radius:999px;padding:8px 16px;font-size:.9rem;}
.linkbox{background:var(--indigo);color:#fff;border-radius:12px;padding:22px 24px;margin:18px 0;}
.linkbox .lab{font-size:.72rem;letter-spacing:1.5px;text-transform:uppercase;color:var(--lavender);font-weight:600;}
.linkbox a.roomlink{display:inline-block;margin-top:8px;color:#fff;font-weight:700;font-size:1.05rem;word-break:break-all;}
.linkbox .join{margin-top:14px;}
.ics-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px;}
.ics-row a{display:inline-flex;align-items:center;gap:7px;text-decoration:none;color:var(--indigo);
  border:1.5px solid var(--lavender);border-radius:999px;padding:8px 14px;font-weight:600;font-size:.84rem;}
.ics-row a:hover{background:var(--lav-bg);}

/* Admin-Tabelle */
.stats{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 20px;}
.stat{background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px 16px;min-width:120px;}
.stat .n{color:var(--indigo);font-weight:700;font-size:1.5rem;}
.stat .l{color:var(--muted);font-size:.76rem;}
table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;}
th,td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--line);font-size:.9rem;vertical-align:top;}
th{background:var(--indigo);color:#fff;font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.5px;}
tr:last-child td{border-bottom:0;}
td .ev-pill{display:inline-block;background:var(--lav-bg);color:var(--indigo);border-radius:5px;
  padding:1px 7px;font-size:.74rem;font-weight:600;margin:1px 2px 1px 0;}

/* Fuß */
.site-foot{border-top:1px solid var(--line);background:#fff;margin-top:30px;padding:26px 0 36px;}
.site-foot .plabel{color:var(--muted);font-weight:600;font-size:.7rem;text-transform:uppercase;letter-spacing:1.5px;margin:0 0 14px;}
.site-foot .logos{display:flex;align-items:center;flex-wrap:wrap;gap:24px 36px;}
.site-foot .logos img{opacity:.95;}
.site-foot .l-en{height:30px;} .site-foot .l-uni{height:40px;} .site-foot .l-or{height:19px;} .site-foot .l-eu{height:34px;}
.site-foot .disc{margin:20px 0 0;font-size:.7rem;color:var(--muted);line-height:1.5;max-width:94ch;}
.site-foot .disc b{color:var(--indigo);}

@media (max-width:600px){
  .site-head .eyebrow{text-align:left;}
  .ev{grid-template-columns:1fr;gap:6px;}
  .ev .when{display:flex;align-items:baseline;gap:10px;}
  .btn-block-mobile{width:100%;}
}
@media (prefers-reduced-motion:reduce){*{transition:none !important;}}
