:root{--bg:#f5f0e7;--paper:#fffdf8;--gold:#b58a43;--ink:#24201b;--muted:#786f63;--line:#e8dcc8;--danger:#a33f37;--shadow:0 12px 35px rgba(72,52,20,.09)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Montserrat,Arial,sans-serif}.app{min-height:100vh;display:grid;grid-template-columns:245px 1fr}aside{background:var(--paper);border-right:1px solid var(--line);padding:20px 14px;position:sticky;top:0;height:100vh}.admin-logo{width:180px;height:90px;object-fit:contain;display:block;margin:0 auto 18px}nav{display:grid;gap:7px}nav a{padding:14px;border-radius:14px;text-decoration:none;color:var(--ink);font-weight:700}nav a:hover,nav a.active{background:#f3e4c9;color:#6d4b18}main{padding:24px 28px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}h1{font:400 36px 'Bebas Neue';margin:0}header p{margin:0;color:var(--muted);font-size:13px}.button,button{border:0;background:var(--gold);color:#fff;padding:11px 14px;border-radius:12px;font-weight:800;text-decoration:none;cursor:pointer}.soft{background:var(--paper);color:var(--ink);border:1px solid var(--line)}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.metrics article,.card{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:18px;box-shadow:var(--shadow)}.metrics small{color:var(--muted)}.metrics strong{display:block;font-size:25px;margin-top:10px}.appt{display:grid;grid-template-columns:70px 1fr auto;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.appt span small,td small{display:block;color:var(--muted)}.appt em{font-style:normal;color:#2f7d55}.alert{padding:12px 14px;border-radius:12px;background:#e7f3eb;color:#2f7d55;margin-bottom:14px}.alert.danger{background:#f8e3e0;color:var(--danger)}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:11px;border-bottom:1px solid var(--line);text-align:left;font-size:13px}.inline{display:flex;gap:6px}.inline select{min-width:120px}.gallery-admin{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:18px}.gallery-admin figure{margin:0;position:relative;border-radius:15px;overflow:hidden;aspect-ratio:1;background:#eee}.gallery-admin img{width:100%;height:100%;object-fit:cover}.gallery-admin form{position:absolute;right:8px;bottom:8px}.danger{background:var(--danger)}.upload{border:2px dashed #d6bd92;padding:20px;border-radius:16px;display:flex;gap:12px;align-items:center;justify-content:space-between}.upload label{font-weight:700}.row-form,.hours-form{display:grid;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid var(--line)}.row-form{grid-template-columns:2fr 1fr 1fr auto}.hours-form{grid-template-columns:110px 80px 1fr 1fr 130px 1fr auto}input,select,textarea{width:100%;padding:11px;border:1px solid var(--line);border-radius:10px;background:#fff;font:inherit}.settings-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.settings-form label{display:grid;gap:7px;font-weight:700;font-size:13px}.settings-form button,.settings-form .check{grid-column:1/-1}.check{display:flex!important;align-items:center;gap:10px}.check input{width:auto}.login-page{min-height:100vh;display:grid;place-items:center}.login-card{width:min(430px,92vw);background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:var(--shadow)}.login-card img{display:block;width:210px;height:100px;object-fit:contain;margin:auto}.login-card h1{text-align:center}.login-card p{text-align:center;color:var(--muted)}.login-card label{display:grid;gap:7px;margin-top:13px;font-weight:700}.login-card button{width:100%;margin-top:18px}@media(max-width:900px){.app{grid-template-columns:82px 1fr}aside{padding:10px 7px}.admin-logo{width:65px;height:60px}nav a{font-size:0;text-align:center}nav a::first-letter{font-size:22px}main{padding:16px}.metrics{grid-template-columns:1fr 1fr}.gallery-admin{grid-template-columns:repeat(3,1fr)}.hours-form{grid-template-columns:1fr 1fr}.settings-form{grid-template-columns:1fr}}@media(max-width:620px){.app{display:block}aside{position:sticky;height:auto;z-index:10;display:flex;overflow:auto;border-right:0;border-bottom:1px solid var(--line)}.admin-logo{display:none}nav{display:flex}nav a{min-width:60px}.metrics{grid-template-columns:1fr 1fr}.gallery-admin{grid-template-columns:repeat(2,1fr)}header{align-items:flex-start}.hours-form,.row-form{grid-template-columns:1fr}.upload{align-items:stretch;flex-direction:column}}.connection-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}.connection-grid>div{border:1px solid var(--line);border-radius:14px;padding:14px;background:#fff}.connection-grid small{display:block;color:var(--muted);margin-bottom:7px}.help-box{grid-column:1/-1;padding:14px;border-radius:12px;background:#f7efe2;color:var(--muted)}.sync-form{margin-top:16px}.sync-form button:disabled{opacity:.45;cursor:not-allowed}.gallery-admin figure:after{content:'Website';position:absolute;left:8px;top:8px;background:rgba(255,253,248,.9);padding:5px 8px;border-radius:999px;font-size:10px;font-weight:800;color:var(--gold)}
@media(max-width:700px){.connection-grid{grid-template-columns:1fr}}


/* Dashboard calendar V3.2 */
.dashboard-calendar-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px;margin-bottom:18px}.calendar-head,.day-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.calendar-head h2,.day-card-head h2{margin:4px 0 0}.calendar-head small,.day-card-head small{color:var(--muted)}.calendar-nav{display:flex;align-items:center;gap:12px}.calendar-nav a{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font-size:25px;text-decoration:none;font-weight:700}.calendar-nav a:hover{background:#f3e4c9;color:#6d4b18}.calendar-nav strong{min-width:130px;text-align:center}.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.calendar-weekdays{margin:20px 0 8px}.calendar-weekdays span{text-align:center;color:var(--gold);font-weight:800;font-size:12px}.calendar-day,.calendar-empty{min-height:60px;border-radius:13px}.calendar-day{position:relative;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);background:#fff;color:var(--ink);text-decoration:none;font-weight:800;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.calendar-day:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(72,52,20,.10);border-color:#d0ad72}.calendar-day.today{box-shadow:inset 0 0 0 2px var(--gold)}.calendar-day.selected{background:var(--gold);color:#fff;border-color:var(--gold)}.calendar-day b{position:absolute;right:6px;bottom:6px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;display:grid;place-items:center;background:#f3e4c9;color:#6d4b18;font-size:10px}.calendar-day.selected b{background:#fff;color:#6d4b18}.day-card{min-width:0}.day-card-head{display:block;margin-bottom:12px}.appt-link{text-decoration:none;color:inherit;border-radius:10px;padding-left:8px;padding-right:8px}.appt-link:hover{background:#faf4e8}.empty-state{color:var(--muted);padding:16px 0}.next-card{margin-bottom:18px}.settings-divider{grid-column:1/-1;border:0;border-top:1px solid var(--line);margin:8px 0}.settings-section{grid-column:1/-1}.settings-section h3{margin:0 0 5px}.settings-section p{margin:0;color:var(--muted);font-size:13px}
@media(max-width:1100px){.dashboard-calendar-grid{grid-template-columns:1fr}.day-card{min-height:auto}}@media(max-width:620px){.calendar-card{padding:13px}.calendar-head{display:block}.calendar-nav{margin-top:12px;justify-content:space-between}.calendar-nav strong{min-width:auto}.calendar-weekdays,.calendar-days{gap:4px}.calendar-day,.calendar-empty{min-height:45px;border-radius:10px}.calendar-day b{right:3px;bottom:3px;min-width:17px;height:17px;font-size:9px}.appt{grid-template-columns:58px 1fr}.appt em{grid-column:2}}


/* CBMS V4.1 – Titelbild und Recovery-Hinweise */
.hero-admin-preview{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:18px;margin:18px 0;background:#f7f1e6;border:1px solid #e3d4b8;border-radius:18px}.hero-admin-preview img{display:block;width:min(420px,100%);height:180px;object-fit:cover;border-radius:14px;margin-top:8px}.gallery-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding-top:8px}.gallery-actions form,.gallery-actions button{width:100%}@media(max-width:700px){.hero-admin-preview{align-items:stretch;flex-direction:column}.gallery-actions{grid-template-columns:1fr}}


/* CBMS V4.2 – Live Analytics */
.metric-live{position:relative;overflow:hidden}.metric-live:after{content:'';position:absolute;right:14px;top:14px;width:9px;height:9px;border-radius:50%;background:#2ca66f;box-shadow:0 0 0 6px rgba(44,166,111,.12);animation:livePulse 1.8s infinite}@keyframes livePulse{50%{transform:scale(.75);opacity:.55}}.analytics-metrics{grid-template-columns:repeat(4,1fr)}.analytics-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:18px;margin-bottom:18px}.analytics-grid.three{grid-template-columns:repeat(3,1fr)}.card-head-row{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.live-badge{font-size:11px;font-weight:800;letter-spacing:.12em;color:#167a4e;background:#e4f5ec;border:1px solid #b8e4cc;padding:7px 10px;border-radius:999px}.visitor-row{display:grid;grid-template-columns:12px 1fr auto;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.visitor-row:last-child{border-bottom:0}.visitor-row>div:last-child{text-align:right}.visitor-row small{display:block;color:var(--muted);margin-top:3px}.visitor-dot{width:9px;height:9px;border-radius:50%;background:#2ca66f;box-shadow:0 0 0 5px rgba(44,166,111,.12)}.bar-chart{display:grid;gap:12px;margin-top:20px}.bar-row{display:grid;grid-template-columns:34px 1fr 36px;align-items:center;gap:10px}.bar-row>div{height:12px;background:#f0e8da;border-radius:999px;overflow:hidden}.bar-row i{display:block;height:100%;background:linear-gradient(90deg,#b68a45,#d9b979);border-radius:999px}.bar-row span,.bar-row b{font-size:12px}.stat-row{display:flex;justify-content:space-between;gap:15px;padding:11px 0;border-bottom:1px solid var(--line)}.stat-row:last-child{border-bottom:0}.stat-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stat-row b{white-space:nowrap;color:var(--gold)}.conversion-card{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.conversion-numbers{display:flex;gap:35px}.conversion-numbers span{text-align:center}.conversion-numbers b{display:block;font-size:27px}.conversion-numbers small{display:block;color:var(--muted);margin-top:4px}@media(max-width:1050px){.analytics-grid,.analytics-grid.three{grid-template-columns:1fr}.analytics-metrics{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.analytics-metrics{grid-template-columns:1fr 1fr}.visitor-row{grid-template-columns:12px 1fr}.visitor-row>div:last-child{grid-column:2;text-align:left}.conversion-card{align-items:flex-start;flex-direction:column}.conversion-numbers{width:100%;justify-content:space-between;gap:10px}.conversion-numbers b{font-size:21px}}

/* CBMS V4.3 */
.section-hint{margin:-5px 0 18px;color:var(--muted);font-size:13px;line-height:1.55}.service-column-headings{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:10px;padding:0 0 8px;font-size:12px;font-weight:800;color:var(--muted)}.row-form label{display:grid;gap:6px}.row-form label>span{display:none;font-size:12px;font-weight:800;color:var(--muted)}.bulk-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:16px 0;padding:12px 14px;background:#f8f2e8;border:1px solid var(--line);border-radius:14px}.bulk-toolbar label{display:flex;align-items:center;gap:9px;font-weight:700}.bulk-toolbar input,.check-col input,td>.appointment-check{width:auto}.check-col{width:42px}.appointment-actions{min-width:275px}.visitor-row small+small{margin-top:5px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#655a4d}.service-price{display:block;margin-top:10px;color:var(--gold);font-size:18px}
@media(max-width:620px){.service-column-headings{display:none}.row-form label>span{display:block}.bulk-toolbar{align-items:stretch;flex-direction:column}.appointment-actions{min-width:240px}}

/* CBMS V5.0 – dynamische Dienstleistungen */
.add-service-button{white-space:nowrap}.service-create-form{margin:18px 0 24px;padding:18px;border:1px solid var(--line);border-radius:18px;background:#fbf7ef}.service-form-fields{display:grid;grid-template-columns:1.4fr 1.4fr .7fr .7fr .6fr;gap:12px;align-items:end}.service-form-fields label,.service-admin-fields label{display:grid;gap:6px;font-weight:700;font-size:12px;color:var(--muted)}.service-image-field{grid-column:1/4}.service-image-field small{font-weight:500;line-height:1.4}.service-active-check{display:flex!important;align-items:center;gap:8px;padding-bottom:12px}.service-active-check input{width:auto}.service-icon-preview{grid-column:4/6;grid-row:2/4;display:grid;place-items:center;gap:7px}.service-icon-preview-circle,.service-admin-icon{display:grid;place-items:center;background:linear-gradient(145deg,#e5bd60,#b77e18);border-radius:50%;box-shadow:0 10px 24px rgba(144,96,18,.18)}.service-icon-preview-circle{width:112px;height:112px}.service-icon-preview-circle img{width:78%;height:78%;object-fit:contain;border-radius:50%}.service-admin-list{display:grid;gap:14px}.service-admin-card{display:grid;grid-template-columns:92px 1fr auto;gap:16px;align-items:center;padding:15px;border:1px solid var(--line);border-radius:17px;background:#fff}.service-admin-icon{width:82px;height:82px}.service-admin-icon img{width:76%;height:76%;object-fit:contain;border-radius:50%}.service-admin-fields{display:grid;grid-template-columns:1.35fr 1.35fr .65fr .65fr .55fr auto;gap:10px;align-items:end}.service-admin-fields .service-image-field{grid-column:1/4}.service-admin-actions{display:grid;gap:8px;min-width:105px}.service-description{min-height:2.8em}
@media(max-width:1100px){.service-form-fields,.service-admin-fields{grid-template-columns:repeat(3,1fr)}.service-icon-preview{grid-column:3;grid-row:auto}.service-admin-card{grid-template-columns:82px 1fr}.service-admin-actions{grid-column:1/-1;grid-template-columns:1fr 1fr}}
@media(max-width:700px){.service-form-fields,.service-admin-fields{grid-template-columns:1fr}.service-image-field,.service-icon-preview{grid-column:auto;grid-row:auto}.service-admin-card{grid-template-columns:1fr}.service-admin-icon{margin:auto}.service-admin-actions{grid-template-columns:1fr}}

/* CBMS V5.1 - Admin-Leistungsicons */
.service-admin-icon,
.service-icon-preview-circle{
  display:grid!important;
  place-items:center!important;
  background:#fff!important;
  border:1px solid var(--line)!important;
  border-radius:14px!important;
  box-shadow:none!important;
}
.service-admin-icon{
  width:86px!important;
  height:86px!important;
}
.service-admin-icon img,
.service-icon-preview-circle img{
  display:block!important;
  width:68px!important;
  height:68px!important;
  max-width:68px!important;
  max-height:68px!important;
  object-fit:contain!important;
  border-radius:0!important;
  opacity:1!important;
  visibility:visible!important;
}



/* CBMS V5.2 - Admin Icon Korrektur */
.service-manager .service-admin-card .service-admin-icon,
.service-manager .service-icon-preview-circle{
  display:grid!important;
  place-items:center!important;
  width:86px!important;
  height:86px!important;
  padding:8px!important;
  box-sizing:border-box!important;
  background:#ffffff!important;
  background-image:none!important;
  border:1.5px solid #b17a24!important;
  border-radius:50%!important;
  box-shadow:none!important;
  overflow:hidden!important;
}

.service-manager .service-admin-card .service-admin-icon img,
.service-manager .service-icon-preview-circle img{
  display:block!important;
  width:62px!important;
  height:62px!important;
  max-width:62px!important;
  max-height:62px!important;
  object-fit:contain!important;
  object-position:center!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  opacity:1!important;
  visibility:visible!important;
  filter:none!important;
}


/* CBMS V5.4 - Einheitliche Admin-Icon-Groesse */
.service-manager .service-admin-icon,.service-manager .service-icon-preview-circle{width:86px!important;height:86px!important;padding:8px!important;display:grid!important;place-items:center!important;overflow:hidden!important;box-sizing:border-box!important;background:#fff!important;border:1.5px solid #b17a24!important;border-radius:50%!important;box-shadow:none!important;}
.service-manager .service-admin-icon img,.service-manager .service-icon-preview-circle img{width:66px!important;height:66px!important;max-width:66px!important;max-height:66px!important;object-fit:contain!important;object-position:center!important;transform:none!important;background:transparent!important;}

/* CBMS V5.5.1 - Admin Service-Icons */
.service-admin-icon{background:#fff!important;border:1.5px solid #b17a24!important;border-radius:50%!important;display:grid!important;place-items:center!important;overflow:hidden!important}
.service-admin-icon img{width:66px!important;height:66px!important;object-fit:contain!important}
.service-no-icon{font-size:11px;color:#8a6a34;text-align:center}

/* CBMS V5.5.1 - Admin Service-Icons */
.service-admin-icon{background:#fff!important;border:1.5px solid #b17a24!important;border-radius:50%!important;display:grid!important;place-items:center!important;overflow:hidden!important}
.service-admin-icon img{width:66px!important;height:66px!important;object-fit:contain!important}
.service-no-icon{font-size:11px;color:#8a6a34;text-align:center}
