:root{--bg:#111317;--panel:#1b1e23;--panel2:#24282f;--text:#f4f5f7;--muted:#aeb5bf;--red:#d32632;--red2:#ee3d48;--line:#343a43;--ok:#4fb477;--warn:#e6aa45;--radius:18px;--shadow:0 18px 50px rgba(0,0,0,.28)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:linear-gradient(145deg,#0c0e11,#181b20 55%,#111317);color:var(--text);min-height:100vh}a{color:inherit}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,5vw,70px);border-bottom:1px solid var(--line);background:rgba(17,19,23,.88);backdrop-filter:blur(15px);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:750}.brand small{display:block;color:var(--muted);font-size:.73rem;font-weight:500;margin-top:2px}.brand-mark{width:40px;height:40px;border-radius:11px;background:linear-gradient(135deg,var(--red2),#8e111c);display:grid;place-items:center;font-size:.82rem;font-family:Consolas,monospace;box-shadow:0 7px 20px rgba(211,38,50,.32)}.container{width:min(1180px,calc(100% - 32px));margin:auto}.narrow{width:min(720px,calc(100% - 32px));padding:50px 0}.hero{display:grid;grid-template-columns:1.45fr .75fr;gap:45px;align-items:center;padding:75px 0 55px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:#ff727b;font-size:.76rem;font-weight:800}.hero h1{font-size:clamp(2.2rem,5vw,4.6rem);line-height:1.02;margin:.15em 0 .3em;max-width:800px}.hero p{color:var(--muted);font-size:1.12rem;line-height:1.65;max-width:720px}.hero-actions,.header-actions,.action-buttons{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.primary-btn,.secondary-btn,.outline-btn,.danger-btn{border:0;border-radius:11px;padding:13px 18px;font:inherit;font-weight:750;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.primary-btn{background:linear-gradient(135deg,var(--red2),#b81723);color:#fff;box-shadow:0 10px 24px rgba(211,38,50,.25)}.secondary-btn,.outline-btn{background:var(--panel2);color:var(--text);border:1px solid var(--line)}.outline-btn{padding:9px 14px}.danger-btn{background:#5f1820;color:#fff}.text-link{color:#ff858d;font-weight:700;text-decoration:none}.trust-card,.booking-card,.login-card,.success-card,.legal{background:rgba(27,30,35,.9);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.trust-card{padding:28px}.trust-card ol{color:var(--muted);line-height:2}.booking-card{padding:clamp(18px,4vw,45px);margin-bottom:65px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:35px}.step{border:0;background:var(--panel2);color:var(--muted);height:55px;border-radius:12px;font-weight:800}.step span{margin-left:8px;font-weight:600}.step.active{background:#442027;color:#fff}.panel{display:none;border:0;padding:0;margin:0}.panel.active{display:block}.panel legend{font-size:clamp(1.45rem,3vw,2rem);font-weight:800;margin-bottom:24px}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:25px}.choice input{position:absolute;opacity:0}.choice span{display:flex;min-height:64px;align-items:center;padding:14px 16px;background:var(--panel2);border:1px solid var(--line);border-radius:12px;cursor:pointer}.choice input:checked+span{border-color:var(--red2);background:#3b2025;box-shadow:inset 0 0 0 1px var(--red2)}.field{display:flex;flex-direction:column;gap:8px;color:#dfe2e7;font-weight:650;margin:15px 0}.field input,.field textarea,.field select,.filters input,.filters select{width:100%;background:#121418;color:var(--text);border:1px solid var(--line);border-radius:10px;padding:13px;font:inherit;outline:none}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--red2);box-shadow:0 0 0 3px rgba(238,61,72,.14)}.field small{color:var(--muted);font-weight:400}.date-grid,.address-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.address-grid{grid-template-columns:2fr 1fr 1fr 2fr}.hidden{display:none}.notice,.alert{padding:15px 17px;border-radius:11px;margin:18px 0}.notice{background:#302a1c;border:1px solid #66552c;color:#f0dba7}.alert.error{background:#491c22;border:1px solid #8b2b35}.alert.success{background:#173824;border:1px solid #2d7548}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:28px}.check{display:flex;gap:12px;align-items:flex-start;color:var(--muted);line-height:1.5;margin:16px 0}.check input{margin-top:5px;accent-color:var(--red)}.honeypot{position:absolute!important;left:-9999px!important}.summary{display:flex;flex-direction:column;gap:7px;background:var(--panel2);padding:18px;border-radius:12px;margin:25px 0}.success-card,.login-card,.legal{padding:clamp(24px,6vw,50px);text-align:center}.success-icon{width:72px;height:72px;border-radius:50%;background:#1d5934;display:grid;place-items:center;margin:auto;font-size:2rem}.login-card form,.legal{text-align:left}.legal h1{text-align:left}.legal p{color:var(--muted);line-height:1.65}footer{display:flex;justify-content:center;gap:24px;color:var(--muted);padding:30px}.admin-layout{display:grid;grid-template-columns:minmax(360px,42%) 1fr;min-height:calc(100vh - 76px)}.admin-list{padding:28px;border-right:1px solid var(--line);overflow:auto}.admin-detail{padding:32px;overflow:auto}.filters{display:grid;grid-template-columns:1fr 180px auto;gap:8px;margin:20px 0}.appointment-list{display:flex;flex-direction:column;gap:8px}.appointment-row{display:flex;justify-content:space-between;gap:15px;text-decoration:none;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:15px}.appointment-row.selected{border-color:var(--red2);background:#2a1c20}.appointment-row>div{display:flex;flex-direction:column;gap:6px}.appointment-row>div:last-child{text-align:right;align-items:flex-end}.appointment-row span,.appointment-row time{color:var(--muted);font-size:.88rem}.badge{display:inline-block;padding:4px 8px;border-radius:99px!important;font-size:.72rem!important;background:#323740;color:#fff!important}.badge.confirmed{background:#1d5934}.badge.new{background:#70303a}.badge.alternative{background:#6b5120}.detail-head{display:flex;justify-content:space-between;align-items:flex-start}.detail-head h2{font-size:2.2rem;margin:.2em 0}.detail-head>span{color:var(--muted)}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.detail-grid>div,.description,.action-card{background:var(--panel);border:1px solid var(--line);border-radius:13px;padding:17px;margin:12px 0}.detail-grid small{display:block;color:var(--muted);margin-bottom:8px}.description p{color:var(--muted);line-height:1.55}.file-link{display:block;margin:8px 0;color:#ff828a}.empty-detail{height:100%;display:grid;place-content:center;text-align:center;color:var(--muted)}.empty{color:var(--muted)}@media(max-width:850px){.hero{grid-template-columns:1fr;padding-top:45px}.trust-card{display:none}.admin-layout{grid-template-columns:1fr}.admin-list{border-right:0}.admin-detail{border-top:1px solid var(--line)}.address-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.topbar{height:auto;min-height:68px;padding:12px 16px}.header-actions .outline-btn:first-child{display:none}.hero h1{font-size:2.35rem}.choice-grid,.date-grid,.detail-grid{grid-template-columns:1fr}.steps{gap:5px}.step span{display:none}.booking-card{padding:18px}.form-actions{flex-direction:column-reverse}.form-actions button,.action-buttons button{width:100%}.filters{grid-template-columns:1fr}.admin-list,.admin-detail{padding:18px}.appointment-row{flex-direction:column}.appointment-row>div:last-child{text-align:left;align-items:flex-start}.action-buttons{flex-direction:column}footer{flex-wrap:wrap}}.service-area-grid .choice span{flex-direction:column;align-items:flex-start;justify-content:center;gap:5px}.service-area-grid .choice small{color:var(--muted);font-weight:500;line-height:1.35}.service-details{padding:18px;border:1px solid var(--line);border-radius:13px;background:rgba(36,40,47,.45);margin:0 0 22px}.service-details.hidden{display:none}@media(min-width:851px){.service-area-grid{grid-template-columns:repeat(3,1fr)}}
/* Auswahlkarten: klare Trennung von Titel und Beschreibung */
.service-area-grid .choice{display:block;position:relative;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.service-area-grid .choice span{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;gap:8px!important;min-height:86px;padding:16px 18px}
.service-area-grid .choice strong{display:block;width:100%;font-size:1rem;line-height:1.2}
.service-area-grid .choice small{display:block!important;width:100%;margin:0!important;color:var(--muted);font-size:.86rem;font-weight:500;line-height:1.45}
@media(max-width:600px){.service-area-grid .choice span{min-height:82px;padding:15px 16px}.service-area-grid .choice strong{font-size:1.02rem}.service-area-grid .choice small{font-size:.88rem}.service-details{padding:15px}}

.calendar-status{display:flex;flex-direction:column;gap:6px;padding:16px 18px;margin:18px 0 24px;border:1px solid var(--line);border-radius:13px;background:rgba(36,40,47,.55)}.calendar-status.connected{border-color:rgba(64,190,120,.55)}.calendar-status.not-connected{border-color:rgba(230,170,60,.45)}.calendar-status span{color:var(--muted)}


/* Google-Kalender-Verbindung */
.google-connect-card{
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:22px;
 margin:20px 0 24px;
 padding:20px;
 border:1px solid rgba(255,73,91,.42);
 border-radius:15px;
 background:rgba(255,73,91,.08);
}
.google-connect-card h2{margin:0 0 6px;font-size:1.18rem}
.google-connect-card p{margin:0;color:var(--muted);line-height:1.5}
.google-connect-btn{flex:0 0 auto;white-space:nowrap}
.connected-card{border-color:rgba(45,190,108,.4);background:rgba(45,190,108,.08)}
.inline-action-form{display:flex;flex-wrap:wrap;gap:10px;margin:0}
.settings-details{
 margin-top:22px;
 border:1px solid var(--line);
 border-radius:14px;
 background:rgba(36,40,47,.35);
 overflow:hidden;
}
.settings-details summary{
 cursor:pointer;
 padding:17px 19px;
 font-weight:800;
 user-select:none;
}
.settings-details[open] summary{border-bottom:1px solid var(--line)}
.settings-form{padding:20px}
@media(max-width:700px){
 .google-connect-card{align-items:stretch;flex-direction:column}
 .google-connect-btn,.inline-action-form button{width:100%;text-align:center}
 .inline-action-form{width:100%;flex-direction:column}
}


/* Admin-Dashboard und Kundenhistorie */
.admin-stats{
 display:grid;
 grid-template-columns:repeat(5,minmax(110px,1fr));
 gap:10px;
 margin:0 0 18px;
}
.admin-stats a{
 display:flex;
 flex-direction:column;
 gap:5px;
 padding:13px 14px;
 border:1px solid var(--line);
 border-radius:12px;
 background:rgba(36,40,47,.55);
 text-decoration:none;
 color:inherit;
}
.admin-stats a:hover{border-color:rgba(255,73,91,.55);transform:translateY(-1px)}
.admin-stats span{font-size:.78rem;color:var(--muted)}
.admin-stats strong{font-size:1.35rem}
.filters .text-link{align-self:center;white-space:nowrap}
.customer-history>a{
 display:grid;
 grid-template-columns:minmax(130px,.8fr) minmax(180px,1.5fr) auto;
 gap:10px;
 align-items:center;
 padding:11px 0;
 border-top:1px solid var(--line);
 color:inherit;
 text-decoration:none;
}
.customer-history>a:hover strong{color:#ff5969}
.customer-history small{color:var(--muted)}
.muted{color:var(--muted)}
@media(max-width:1100px){
 .admin-stats{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:700px){
 .admin-stats{grid-template-columns:repeat(2,1fr)}
 .customer-history>a{grid-template-columns:1fr}
 .filters{grid-template-columns:1fr}
}


/* Erinnerungsverwaltung */
.booking-card hr{border:0;border-top:1px solid var(--line);margin:28px 0}
.booking-card .choice input[type=checkbox]{width:22px;height:22px;flex:0 0 auto}
.booking-card .choice span small{display:block;margin-top:5px;color:var(--muted)}

/* KrügerWebCore Business Testsystem */
.business-shell{max-width:1500px;margin:0 auto;padding:30px}.business-hero{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:28px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,rgba(220,38,56,.16),rgba(28,32,39,.75));margin-bottom:20px}.business-hero h1,.page-head h1{margin:4px 0 8px;font-size:2rem}.business-hero p{margin:0;color:var(--muted)}.business-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}.business-kpis>a{padding:20px;border:1px solid var(--line);border-radius:15px;background:var(--panel);color:inherit;text-decoration:none;display:flex;flex-direction:column;gap:6px}.business-kpis span{font-size:.85rem;color:var(--muted)}.business-kpis strong{font-size:1.65rem}.business-kpis small{color:var(--muted)}.business-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.business-card{border:1px solid var(--line);border-radius:16px;background:var(--panel);padding:22px;margin-bottom:20px}.card-head,.page-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.card-head h2,.business-card h2{margin:0}.card-head a{color:#ff5969}.quick-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.quick-grid a{padding:15px;border:1px solid var(--line);border-radius:10px;background:#171a1f;color:inherit;text-decoration:none;font-weight:700}.business-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 0;border-top:1px solid var(--line);color:inherit;text-decoration:none}.business-row>span:first-child{display:flex;flex-direction:column;gap:4px}.business-row small{color:var(--muted)}.business-search{display:grid;grid-template-columns:1fr auto auto;gap:10px;margin-bottom:18px}.business-search input{background:#121418;color:var(--text);border:1px solid var(--line);border-radius:10px;padding:13px}.business-search>a{align-self:center;color:#ff5969}.business-table{display:flex;flex-direction:column}.business-table-head,.business-table-row{display:grid;grid-template-columns:1.5fr 1.5fr .8fr .5fr;gap:14px;align-items:center;padding:14px}.business-table-head{font-size:.8rem;color:var(--muted);border-bottom:1px solid var(--line)}.business-table-row{color:inherit;text-decoration:none;border-bottom:1px solid var(--line)}.business-table-row>span{display:flex;flex-direction:column;gap:4px}.customer-number{padding:8px 12px;border-radius:999px;background:#2a1c20;color:#ff7a87;font-weight:800}.form-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.form-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.device-card{padding:14px;border:1px solid var(--line);border-radius:12px;margin:10px 0;background:#171a1f}.device-card span,.device-card small{display:block;color:var(--muted);margin-top:4px}.mail-preview-frame{width:100%;height:760px;border:1px solid var(--line);border-radius:12px;background:#fff}@media(max-width:1000px){.business-kpis{grid-template-columns:repeat(2,1fr)}.business-grid{grid-template-columns:1fr}.form-grid-3{grid-template-columns:1fr 1fr}}@media(max-width:700px){.business-shell{padding:18px}.business-hero,.page-head{align-items:stretch;flex-direction:column}.business-kpis{grid-template-columns:1fr}.quick-grid,.form-grid-3,.form-grid-2{grid-template-columns:1fr}.business-table-head{display:none}.business-table-row{grid-template-columns:1fr}.business-search{grid-template-columns:1fr}}

/* Cronjob-Status */
.cron-health{margin:22px 0;padding:18px 20px;border-radius:13px;border:1px solid var(--line)}.cron-health h2{margin:0 0 8px;font-size:1.15rem}.cron-health p{margin:7px 0;line-height:1.55}.cron-health.healthy{border-color:rgba(45,190,108,.48);background:rgba(45,190,108,.08)}.cron-health.warning{border-color:rgba(238,176,57,.55);background:rgba(238,176,57,.08)}

/* Echtes Firmenlogo */
.brand-logo{
 width:52px;
 height:52px;
 object-fit:cover;
 border-radius:12px;
 display:block;
 flex:0 0 auto;
 box-shadow:0 4px 16px rgba(0,0,0,.25);
}
@media(max-width:600px){
 .brand-logo{width:44px;height:44px;border-radius:10px}
}


/* Schiebeschalter und Systemstatus */
.toggle-setting{
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:20px;
 padding:18px 20px;
 border:1px solid var(--line);
 border-radius:13px;
 background:rgba(36,40,47,.5);
 margin:20px 0;
}
.toggle-setting>div{display:flex;flex-direction:column;gap:5px}
.toggle-setting small{color:var(--muted)}
.switch{position:relative;display:inline-block;width:58px;height:32px;flex:0 0 auto}
.switch input{opacity:0;width:0;height:0}
.slider{
 position:absolute;cursor:pointer;inset:0;
 background:#4a4f58;border-radius:999px;transition:.25s;
 box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
}
.slider:before{
 content:"";position:absolute;height:24px;width:24px;left:4px;top:4px;
 background:#fff;border-radius:50%;transition:.25s;
 box-shadow:0 2px 7px rgba(0,0,0,.35);
}
.switch input:checked + .slider{background:#22a15d}
.switch input:checked + .slider:before{transform:translateX(26px)}
.system-status-grid{
 display:grid;
 grid-template-columns:repeat(4,minmax(130px,1fr));
 gap:12px;
 margin:20px 0;
}
.status-card{
 padding:16px;border:1px solid var(--line);border-radius:13px;background:var(--panel);
 display:flex;flex-direction:column;gap:6px;
}
.status-card span{font-size:.8rem;color:var(--muted)}
.status-card strong{font-size:1.15rem}
.status-card small{color:var(--muted);line-height:1.4}
.status-card.good{border-color:rgba(45,190,108,.45);background:rgba(45,190,108,.08)}
.status-card.warning{border-color:rgba(238,176,57,.48);background:rgba(238,176,57,.08)}
.status-card.bad{border-color:rgba(220,38,56,.48);background:rgba(220,38,56,.08)}
.next-reminder-card{
 display:grid;grid-template-columns:1fr 1fr;gap:18px;
 padding:18px 20px;border:1px solid rgba(82,145,255,.4);
 border-radius:13px;background:rgba(82,145,255,.08);margin:20px 0;
}
.next-reminder-card>div{display:flex;flex-direction:column;gap:5px}
.next-reminder-card span{font-size:.8rem;color:var(--muted)}
.next-reminder-card strong{font-size:1.1rem}
.next-reminder-card small{color:var(--muted);line-height:1.45}
.empty-next{grid-template-columns:1fr}
.system-health-panel{
 margin-bottom:20px;padding:20px;border:1px solid var(--line);
 border-radius:16px;background:var(--panel);
}
.system-health-grid{
 display:grid;grid-template-columns:repeat(4,1fr);gap:12px;
}
.system-health-grid>div{
 padding:15px;border-radius:11px;border:1px solid var(--line);
 display:flex;flex-direction:column;gap:5px;
}
.system-health-grid span{font-size:.8rem;color:var(--muted)}
.system-health-grid .good{border-color:rgba(45,190,108,.45);background:rgba(45,190,108,.08)}
.system-health-grid .warning{border-color:rgba(238,176,57,.48);background:rgba(238,176,57,.08)}
.system-health-grid .bad{border-color:rgba(220,38,56,.48);background:rgba(220,38,56,.08)}
@media(max-width:900px){
 .system-status-grid,.system-health-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:600px){
 .system-status-grid,.system-health-grid,.next-reminder-card{grid-template-columns:1fr}
 .toggle-setting{align-items:flex-start}
}

/* Zuverlässige Erinnerungsaktivierung */
.activation-panel{
 display:flex;align-items:center;justify-content:space-between;gap:20px;
 margin:20px 0;padding:18px 20px;border-radius:13px;border:1px solid var(--line);
}
.activation-panel>div{display:flex;flex-direction:column;gap:5px}
.activation-panel span{font-size:.8rem;color:var(--muted)}
.activation-panel small{color:var(--muted)}
.activation-panel.enabled{border-color:rgba(45,190,108,.48);background:rgba(45,190,108,.08)}
.activation-panel.disabled{border-color:rgba(220,38,56,.48);background:rgba(220,38,56,.08)}
.success-btn{
 border:0;border-radius:10px;padding:13px 17px;background:#198754;color:#fff;
 font:inherit;font-weight:800;cursor:pointer;white-space:nowrap;
}
.success-btn:hover{filter:brightness(1.08)}
.reminder-main-form{padding:0;margin-top:22px}
@media(max-width:650px){
 .activation-panel{align-items:stretch;flex-direction:column}
 .activation-panel form,.activation-panel button{width:100%}
}

/* Erinnerungsseite – Statusübersicht und Feinschliff */
.overall-system-status{display:flex;align-items:center;gap:15px;margin:18px 0;padding:17px 19px;border:1px solid var(--line);border-radius:14px}
.overall-system-status>div:last-child{display:flex;flex-direction:column;gap:4px;min-width:0}
.overall-system-status span{font-size:.78rem;color:var(--muted)}
.overall-system-status strong{font-size:1.16rem}
.overall-system-status small{color:var(--muted);line-height:1.45}
.overall-system-status.ready{border-color:rgba(45,190,108,.5);background:rgba(45,190,108,.09)}
.overall-system-status.attention{border-color:rgba(238,176,57,.55);background:rgba(238,176,57,.09)}
.overall-system-status.problem{border-color:rgba(220,38,56,.48);background:rgba(220,38,56,.08)}
.system-status-icon{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:50%;font-size:1.3rem;font-weight:900;background:rgba(255,255,255,.08)}
.status-card{min-width:0;overflow:hidden}
.status-card .status-value-wrap{overflow-wrap:anywhere;word-break:break-word}
.cron-health.critical{border-color:rgba(220,38,56,.48);background:rgba(220,38,56,.08)}
.advanced-settings{margin:22px 0;border:1px solid var(--line);border-radius:13px;background:rgba(18,20,24,.38);overflow:hidden}
.advanced-settings summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:17px 19px;cursor:pointer;font-weight:800;list-style:none}
.advanced-settings summary::-webkit-details-marker{display:none}
.advanced-settings summary::after{content:'+';font-size:1.35rem;color:var(--muted);margin-left:auto}
.advanced-settings[open] summary::after{content:'–'}
.advanced-settings summary small{font-weight:500;color:var(--muted);text-align:right}
.advanced-settings .reminder-main-form{padding:0 19px 19px;margin-top:0;border-top:1px solid var(--line)}
@media(max-width:650px){.advanced-settings summary{align-items:flex-start;flex-direction:column}.advanced-settings summary::after{position:absolute;right:28px}.advanced-settings summary small{text-align:left;padding-right:25px}}

/* Buchungszeiten: Arbeitszeit und 30-Minuten-Raster */
.booking-hours-note{
 display:flex;
 flex-direction:column;
 gap:5px;
 margin:4px 0 18px;
 padding:15px 17px;
 border:1px solid rgba(79,180,119,.45);
 border-radius:11px;
 background:rgba(79,180,119,.08);
}
.booking-hours-note strong{color:#dff6e8}
.booking-hours-note span{color:var(--muted);line-height:1.45}
.booking-time-message{
 margin:14px 0;
 padding:13px 15px;
 border:1px solid #8b6728;
 border-radius:10px;
 background:#302a1c;
 color:#f0dba7;
}
.field select option:disabled{color:#6f747c}
/* Business Suite CRM/Geräte/Dokumente */
.button-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.button-row form{margin:0}.muted{color:var(--muted)}.narrow-business{max-width:900px}.device-link,.doc-link{text-decoration:none;color:inherit}.history-row{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);text-decoration:none;color:inherit}.history-row span:first-child{display:flex;flex-direction:column;gap:4px}.timeline-entry{padding:15px 0;border-bottom:1px solid var(--line)}.timeline-entry time{color:var(--muted);font-size:.82rem}.position-editor{margin:22px 0;padding:16px;border:1px solid var(--line);border-radius:12px}.position-head,.position-row{display:grid;grid-template-columns:minmax(260px,1fr) 90px 120px 130px 42px;gap:9px;align-items:center}.position-head{padding-bottom:9px;color:var(--muted);font-size:.82rem}.position-row{margin-bottom:9px}.position-row input,.position-row select{width:100%;box-sizing:border-box}.icon-btn{height:42px;border:1px solid var(--line);border-radius:8px;background:#2b3037;color:#fff;font-size:20px;cursor:pointer}.document-total{text-align:right;margin-top:16px}.document-total strong{font-size:1.35rem}@media(max-width:850px){.position-head{display:none}.position-row{grid-template-columns:1fr 1fr}.position-row input:first-child{grid-column:1/-1}}

.delete-customer-form{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}

/* CRM-Ausbau 1–4 */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.global-search{display:flex;gap:8px;flex:1;max-width:520px;margin:0 20px}
.global-search input{width:100%;min-width:150px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.08);color:#fff;border-radius:12px;padding:10px 12px}
.global-search input::placeholder{color:rgba(255,255,255,.65)}
.global-search button{border:0;border-radius:12px;padding:10px 14px;font-weight:700;cursor:pointer}
.compact-hero{padding-top:22px;padding-bottom:22px}
.search-results{display:grid;gap:10px}
.search-result{display:grid;grid-template-columns:115px 1fr auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:14px;text-decoration:none;color:inherit}
.search-result:hover{border-color:var(--accent)}
.search-result small{display:block;color:var(--muted);margin-top:4px}
.result-kind{font-size:.78rem;font-weight:800;text-transform:uppercase;color:var(--accent)}
.result-open{font-weight:700}
.customer-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0}
.customer-summary-grid a{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px;text-decoration:none;color:inherit;text-align:center}
.customer-summary-grid strong{font-size:1.8rem;display:block}.customer-summary-grid span{color:var(--muted)}
.timeline{display:grid;gap:0}.timeline-entry{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}
.timeline-entry time{color:var(--muted);font-size:.9rem}.timeline-entry strong{display:block;margin:4px 0}.timeline-entry p{margin:4px 0 8px}
.timeline-kind{font-size:.75rem;font-weight:800;text-transform:uppercase;color:var(--accent)}
.text-danger{border:0;background:none;padding:0;color:#b42318;cursor:pointer}
.duplicate-box{display:grid;gap:5px;border:1px solid var(--line);border-radius:14px;padding:14px;margin:12px 0}
.favorite-check{align-self:end;padding-bottom:12px}
.dashboard-kpis{grid-template-columns:repeat(3,1fr)}
@media(max-width:1050px){.topbar{flex-wrap:wrap}.global-search{order:3;max-width:none;width:100%;margin:10px 0 0}.header-actions{flex-wrap:wrap}.dashboard-kpis{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.search-result{grid-template-columns:1fr}.result-open{display:none}.customer-summary-grid,.dashboard-kpis{grid-template-columns:repeat(2,1fr)}.timeline-entry{grid-template-columns:1fr;gap:5px}}

/* PWA integration */
html{background:#111317}body{padding-top:env(safe-area-inset-top);padding-right:env(safe-area-inset-right);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left)}
.install-app-btn{font:inherit;cursor:pointer}.install-app-login{width:100%;margin-top:12px}@media(display-mode:standalone){.install-app-btn,.install-app-login{display:none!important}}

/* PWA cache-safe logo constraint v3 */
img.brand-logo{width:52px!important;height:52px!important;max-width:52px!important;max-height:52px!important;object-fit:cover!important}
@media(max-width:600px){img.brand-logo{width:44px!important;height:44px!important;max-width:44px!important;max-height:44px!important}}


/* Einfacher PWA-Installationsassistent v4 */
.pwa-install-panel{position:fixed;z-index:9990;left:max(14px,env(safe-area-inset-left));right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;max-width:900px;margin:auto;padding:16px 48px 16px 16px;border:1px solid rgba(255,255,255,.15);border-radius:18px;background:rgba(24,27,32,.97);box-shadow:0 18px 60px rgba(0,0,0,.45);backdrop-filter:blur(14px)}
.pwa-install-panel[hidden],.pwa-help-overlay[hidden]{display:none!important}.pwa-install-panel img{width:58px!important;height:58px!important;border-radius:14px;object-fit:cover}.pwa-panel-copy{display:flex;flex-direction:column;gap:4px}.pwa-panel-copy strong{font-size:1.05rem}.pwa-panel-copy span{color:var(--muted);line-height:1.4}.pwa-panel-actions{display:flex;gap:9px;align-items:center}.pwa-panel-close,.pwa-help-close,.pwa-update-close{position:absolute;top:8px;right:10px;border:0;background:transparent;color:#d8dce2;font-size:25px;line-height:1;cursor:pointer;padding:6px}
.pwa-help-overlay{position:fixed;z-index:10000;inset:0;display:grid;place-items:center;padding:18px;background:rgba(0,0,0,.72);backdrop-filter:blur(5px)}.pwa-help-card{position:relative;width:min(520px,100%);max-height:90vh;overflow:auto;padding:28px;border:1px solid var(--line);border-radius:20px;background:#191c21;box-shadow:0 25px 80px rgba(0,0,0,.55);text-align:center}.pwa-help-card>img{width:76px!important;height:76px!important;border-radius:18px}.pwa-help-card h2{margin:14px 0 18px}.pwa-help-steps{display:grid;gap:12px;padding:0;margin:0 0 18px;list-style:none;text-align:left}.pwa-help-steps li{display:grid;grid-template-columns:38px 1fr;align-items:center;gap:12px;padding:13px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.035)}.pwa-help-steps li>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--accent);color:#fff;font-weight:900}.pwa-help-steps div{line-height:1.45}.share-symbol{font-size:1.15rem;margin-left:5px}.pwa-help-note{padding:12px;border:1px solid #8b6728;border-radius:11px;background:#302a1c;color:#f0dba7;line-height:1.45}.pwa-help-done{width:100%}.pwa-dialog-open{overflow:hidden}
.pwa-update-bar{position:fixed;z-index:9995;left:50%;top:max(12px,env(safe-area-inset-top));transform:translateX(-50%);display:flex;align-items:center;gap:14px;width:min(720px,calc(100% - 28px));padding:13px 46px 13px 16px;border:1px solid rgba(79,180,119,.5);border-radius:15px;background:rgba(22,35,28,.98);box-shadow:0 16px 50px rgba(0,0,0,.4)}.pwa-update-bar>span{display:flex;flex:1;flex-direction:column;gap:3px}.pwa-update-bar small{color:var(--muted)}.pwa-update-close{top:7px}
@media(max-width:700px){.pwa-install-panel{grid-template-columns:auto 1fr;padding:14px 42px 14px 14px}.pwa-panel-actions{grid-column:1/-1}.pwa-panel-actions>*{flex:1}.pwa-update-bar{align-items:stretch;flex-direction:column}.pwa-update-bar .primary-btn{width:100%}}
@media(display-mode:standalone){.pwa-install-panel{display:none!important}}
