:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#152238;background:#f5f7fb;line-height:1.5}*{box-sizing:border-box}body{margin:0}.shell{max-width:1120px;margin:0 auto;padding:64px 24px}.narrow{max-width:620px}.eyebrow{font-size:.78rem;text-transform:uppercase;letter-spacing:.13em;font-weight:750;color:#50627b}.lead,.muted{color:#68778c}h1{font-size:clamp(2rem,5vw,3.5rem);letter-spacing:-.04em;line-height:1.05;margin:.35rem 0 1rem}h2,h3{letter-spacing:-.02em}.grid{display:grid;grid-template-columns:2fr 1fr;gap:24px;margin-top:40px}.card{background:#fff;border:1px solid #e4e9f1;border-radius:22px;padding:28px;box-shadow:0 12px 40px rgba(20,35,60,.06)}.day{padding:18px 0;border-top:1px solid #edf0f5}.daytitle{font-weight:750;margin-bottom:12px}.slots{display:flex;gap:10px;flex-wrap:wrap}.slot,.button,button{display:inline-block;border:0;border-radius:12px;background:#152238;color:white;padding:12px 18px;text-decoration:none;font:inherit;font-weight:700;cursor:pointer}.slot{background:#f1f4f8;color:#152238;border:1px solid #dde4ed}.slot:hover{background:#152238;color:white}label{display:block;font-weight:650;margin:18px 0}input{display:block;width:100%;margin-top:7px;border:1px solid #ccd5e1;border-radius:12px;padding:13px 14px;font:inherit}.selected{background:#f1f4f8;border-radius:12px;padding:14px;margin:20px 0}.error,.success{padding:14px;border-radius:12px;margin:15px 0;background:#f7eded}.success{background:#edf7f0}.check{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#edf7f0;font-size:1.6rem}.adminhead{display:flex;align-items:end;justify-content:space-between;margin-bottom:25px}.tablewrap{overflow:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;padding:13px;border-bottom:1px solid #edf0f5}small{color:#68778c}@media(max-width:760px){.shell{padding:36px 16px}.grid{grid-template-columns:1fr}.info{order:-1}.card{border-radius:18px;padding:20px}}
.tabs{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 24px}.tabs a{padding:9px 13px;border-radius:10px;background:#fff;border:1px solid #e1e7ef;text-decoration:none;color:#152238;font-weight:650}.card+ .card{margin-top:24px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}textarea{display:block;width:100%;min-height:100px;margin-top:7px;border:1px solid #ccd5e1;border-radius:12px;padding:13px 14px;font:inherit;resize:vertical}.availability-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:18px 0 24px}.avrow{display:grid;grid-template-columns:1.2fr 1fr auto 1fr;align-items:center;gap:8px;margin:8px 0}.avrow input{margin:0;padding:9px}.inline{margin:0}.smallbtn{padding:8px 10px;border-radius:9px;font-size:.86rem}.badge{display:inline-block;padding:4px 8px;border-radius:999px;font-size:.82rem;font-weight:700;background:#edf7f0}.badge.cancelled{background:#f7eded}.footnote{margin-top:24px}@media(max-width:760px){.formgrid,.availability-grid{grid-template-columns:1fr}.avrow{grid-template-columns:1fr 1fr auto 1fr}.adminhead{align-items:flex-start}.adminhead h1{font-size:2.4rem}}
select{display:block;width:100%;margin-top:7px;border:1px solid #ccd5e1;border-radius:12px;padding:13px 14px;font:inherit;background:#fff}.notice{padding:16px;border-radius:12px;margin:18px 0;background:#f1f4f8}.danger{background:#9b2c2c}.sep{border:0;border-top:1px solid #edf0f5;margin:30px 0}
.privacybox{margin:22px 0;padding:18px;border:1px solid #dfe6ef;border-radius:14px;background:#f7f9fc}.privacybox p{margin-top:0}.checklabel{display:flex;align-items:flex-start;gap:10px;font-weight:500}.checklabel input{width:auto;margin:4px 0 0;flex:0 0 auto}.legal{margin-top:28px;font-size:.9rem;color:#68778c}.legal a,.privacybox a{color:#152238}

.avrow{display:block;margin:14px 0 18px}.avrow>strong{display:block;margin-bottom:6px}.avoff{display:flex;align-items:center;gap:8px;margin:0 0 8px;font-size:.9rem;font-weight:650}.avoff input{width:auto;margin:0;padding:0}.avtimes{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px}.avtimes input{margin:0;padding:9px}.avtimes input:disabled{opacity:.5;background:#f1f3f6}.availability-grid{align-items:start}@media(max-width:760px){.avtimes{grid-template-columns:1fr auto 1fr}}

.hero{max-width:800px;padding:34px 0 10px}.hero-actions{margin-top:26px}.landing-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:24px;margin-top:34px}.site-footer{text-align:center;margin-top:34px}.site-footer a,.landing a,.card a{color:#152238}.hero .button{color:#fff}.cal-nav{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:10px;margin:12px 0 18px}.cal-nav strong{text-align:center;font-size:1.15rem}.cal-nav button{padding:8px;background:#f1f4f8;color:#152238;border:1px solid #dde4ed;font-size:1.5rem}.month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.cal-weekday{text-align:center;font-size:.78rem;font-weight:750;color:#68778c;padding:5px}.cal-day{aspect-ratio:1;border-radius:12px;padding:0;background:#f2f4f7;color:#9aa5b3;border:1px solid transparent}.cal-day.available{background:#edf7f0;color:#152238;border-color:#cfe5d5}.cal-day.available:hover,.cal-day.selected-day{background:#152238;color:#fff}.cal-day:disabled{cursor:default}.calendar-times{margin-top:24px;padding-top:18px;border-top:1px solid #edf0f5}.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.badge.pending{background:#fff7e8}@media(max-width:760px){.landing-grid{grid-template-columns:1fr}.month-grid{gap:4px}.cal-day{border-radius:9px;font-size:.9rem}.cal-nav{grid-template-columns:40px 1fr 40px}}
/* V4.13.1: Button-Links innerhalb von Karten behalten weiße Schrift. */
.card a.button,
.card a.button:visited,
.card a.button:hover,
.card a.button:focus { color:#fff; }


/* V4.13.2 – Buttons im Kundenbereich immer lesbar */
a.btn, a.button, .btn, .button,
a.btn:link, a.btn:visited, a.btn:hover, a.btn:focus, a.btn:active,
a.button:link, a.button:visited, a.button:hover, a.button:focus, a.button:active {
    color: #fff !important;
}

/* V4.13.2 – erkannte Link-Buttons */
a.button,
a.button:link,
a.button:visited,
a.button:hover,
a.button:focus,
a.button:active,
a.smallbtn,
a.smallbtn:link,
a.smallbtn:visited,
a.smallbtn:hover,
a.smallbtn:focus,
a.smallbtn:active {
    color: #fff !important;
}
