/* Praxiskalender on the website: login, password change and the frame around the calendar. */
:root{
  --p-ink:#16303b;--p-text:#2b3f49;--p-muted:#64757d;--p-line:#dfe8eb;--p-soft:#f2f6f8;
  --p-accent:#367b94;--p-accent-dark:#245a6d;--p-grad:linear-gradient(150deg,#4f9ab4 0%,#367b94 48%,#265a6e 100%);
  --p-error:#b4443f;--p-error-soft:#fcecec;--p-ok:#2b8a5a;--p-ok-soft:#e6f5ec;--p-info-soft:#e9f3f7;
  --p-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body.wzp{margin:0;min-height:100vh;min-height:100dvh;font:15px/1.5 var(--p-font);color:var(--p-text);background:#eef3f5;-webkit-font-smoothing:antialiased}
.wzp button,.wzp input,.wzp select,.wzp textarea{font:inherit}
.wzp-is-login a{color:var(--p-accent-dark)}
.wzp :focus-visible{outline:2px solid var(--p-accent);outline-offset:2px}

/* ---------- Brand ---------- */
.wzp-brand{display:inline-flex;align-items:center;gap:12px;color:inherit;text-decoration:none}
.wzp-brand img{flex:0 0 auto;width:40px;height:40px;padding:6px;border-radius:12px;background:#fff;object-fit:contain;box-shadow:0 6px 16px -10px rgba(16,40,50,.6)}
.wzp-brand strong{display:block;font-size:16px;font-weight:700;letter-spacing:-.01em;line-height:1.2;color:var(--p-ink)}
.wzp-brand small{display:block;font-size:12.5px;color:var(--p-muted);line-height:1.3}
.wzp-brand-light strong{color:#fff}
.wzp-brand-light small{color:rgba(255,255,255,.75)}

/* ---------- Login and password pages ---------- */
.wzp-login{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);min-height:100vh;min-height:100dvh}
.wzp-login-single{grid-template-columns:minmax(0,1fr);background:radial-gradient(120% 80% at 10% 0%,#dcebf1 0%,#eef3f5 55%) fixed}
.wzp-visual{position:relative;overflow:hidden;color:#fff;background:#265a6e;background-image:linear-gradient(165deg,rgba(54,123,148,.86) 0%,rgba(38,90,110,.9) 45%,rgba(18,42,52,.95) 100%),var(--wzp-visual);background-size:cover;background-position:center}
.wzp-visual::after{content:"";position:absolute;inset:auto -20% -40% auto;width:70%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.12),transparent 65%);pointer-events:none}
.wzp-visual-inner{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:space-between;gap:40px;height:100%;padding:44px 56px}
.wzp-visual-copy h2{margin:0 0 26px;font-size:clamp(30px,3.2vw,42px);font-weight:700;line-height:1.12;letter-spacing:-.025em;color:#fff;text-wrap:balance}
.wzp-visual-copy ul{display:flex;flex-direction:column;gap:14px;margin:0;padding:0;list-style:none}
.wzp-visual-copy li{display:flex;align-items:center;gap:12px;font-size:16px;color:rgba(255,255,255,.92)}
.wzp-visual-copy li svg{flex:0 0 auto;width:38px;height:38px;padding:9px;border-radius:12px;background:rgba(255,255,255,.14);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}
.wzp-visual-foot{margin:0;font-size:13px;color:rgba(255,255,255,.7)}
.wzp-panel{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:40px 24px}
.wzp-card{width:100%;max-width:430px;padding:34px 34px 28px;border:1px solid rgba(255,255,255,.7);border-radius:26px;background:#fff;box-shadow:0 1px 2px rgba(16,40,50,.05),0 30px 60px -36px rgba(16,40,50,.55)}
.wzp-brand-card{margin:0 0 26px}
.wzp-is-login:not(.wzp-is-password) .wzp-login:not(.wzp-login-single) .wzp-brand-card{display:none}
.wzp-card h1{margin:0;font-size:28px;font-weight:700;letter-spacing:-.02em;line-height:1.2;color:var(--p-ink)}
.wzp-lead{margin:6px 0 22px;font-size:15px;color:var(--p-muted)}
.wzp-alert{margin:0 0 18px;padding:12px 14px;border-radius:14px;font-size:14px;font-weight:600;line-height:1.45}
.wzp-alert-error{background:var(--p-error-soft);color:#8e2f2b;box-shadow:inset 3px 0 0 var(--p-error)}
.wzp-alert-ok{background:var(--p-ok-soft);color:#1f6a44;box-shadow:inset 3px 0 0 var(--p-ok)}
.wzp-alert-info{background:var(--p-info-soft);color:var(--p-accent-dark);box-shadow:inset 3px 0 0 var(--p-accent)}
.wzp-form{display:flex;flex-direction:column;gap:16px}
.wzp-field{display:flex;flex-direction:column;gap:7px}
.wzp-field>span:first-child{font-size:13.5px;font-weight:700;color:var(--p-ink)}
.wzp-input{position:relative;display:flex;align-items:center}
.wzp-input>svg{position:absolute;left:15px;color:#8fa3ab;pointer-events:none;transition:color .2s ease}
.wzp-input input{width:100%;height:54px;padding:0 52px 0 46px;border:1.5px solid #d3dfe4;border-radius:15px;background:#fbfdfd;font-size:16px;color:var(--p-ink);transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease;-webkit-appearance:none;appearance:none}
.wzp-input input:hover{border-color:#b9ccd3}
.wzp-input input:focus{outline:none;border-color:var(--p-accent);background:#fff;box-shadow:0 0 0 4px rgba(54,123,148,.14)}
.wzp-input:focus-within>svg{color:var(--p-accent)}
.wzp-reveal{position:absolute;right:7px;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:0;border-radius:11px;background:transparent;color:#8fa3ab;cursor:pointer;transition:background-color .2s ease,color .2s ease}
.wzp-reveal:hover{background:var(--p-soft);color:var(--p-accent-dark)}
.wzp-reveal[aria-pressed=true]{color:var(--p-accent)}
.wzp-caps{margin:-6px 0 0;font-size:13px;font-weight:600;color:#a35d14}
.wzp-caps[hidden]{display:none}
.wzp-submit{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:54px;margin-top:4px;padding:0 22px;border:0;border-radius:15px;background:var(--p-grad);color:#fff;font-size:16px;font-weight:700;text-decoration:none;cursor:pointer;box-shadow:0 14px 26px -16px rgba(38,90,110,.95);transition:transform .15s ease,filter .2s ease,box-shadow .2s ease}
.wzp-submit:hover{filter:brightness(1.07);box-shadow:0 18px 30px -16px rgba(38,90,110,.95)}
.wzp-submit:active{transform:scale(.985)}
.wzp-submit svg{transition:transform .2s ease}
.wzp-submit:hover svg{transform:translateX(3px)}
.wzp-submit[aria-busy=true]{pointer-events:none;filter:saturate(.7)}
.wzp-submit[aria-busy=true] span{opacity:.85}
.wzp-submit[aria-busy=true] svg{animation:wzp-spin .8s linear infinite}
@keyframes wzp-spin{to{transform:rotate(360deg)}}
.wzp-note{display:flex;align-items:flex-start;justify-content:center;gap:8px;margin:22px 0 0;font-size:13px;line-height:1.5;color:var(--p-muted);text-align:center}
.wzp-note svg{flex:0 0 auto;width:18px;height:18px;margin-top:1px;color:var(--p-accent)}
.wzp-strength{display:flex;align-items:center;gap:10px;margin:-6px 0 0;font-size:12.5px;color:var(--p-muted)}
.wzp-strength-bar{flex:0 0 96px;height:6px;border-radius:3px;background:#e3ebee;overflow:hidden}
.wzp-strength-bar i{display:block;width:0;height:100%;border-radius:3px;background:#c04a4a;transition:width .25s ease,background-color .25s ease}
.wzp-strength[data-level="1"] i{width:33%;background:#d97a1e}
.wzp-strength[data-level="2"] i{width:66%;background:#c9a227}
.wzp-strength[data-level="3"] i{width:100%;background:var(--p-ok)}
.wzp-legal{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 10px;margin:0;font-size:13px;color:var(--p-muted)}
.wzp-legal a{color:var(--p-muted);text-decoration:none}
.wzp-legal a:hover{color:var(--p-accent-dark);text-decoration:underline}

@media (max-width:959px){
  .wzp-login{grid-template-columns:minmax(0,1fr);min-height:0}
  .wzp-visual{min-height:236px}
  .wzp-visual-inner{gap:18px;padding:22px 22px 70px}
  .wzp-visual-copy h2{margin:0;font-size:25px}
  .wzp-visual-copy ul,.wzp-visual-foot{display:none}
  .wzp-panel{justify-content:flex-start;margin-top:-56px;padding:0 14px 28px}
  .wzp-login-single .wzp-panel{margin-top:0;padding-top:24px}
  .wzp-card{padding:26px 22px 22px;border-radius:24px}
  .wzp-card h1{font-size:25px}
}
@media (prefers-reduced-motion:reduce){.wzp *{transition:none!important;animation:none!important}}

/* ===================== Praxiskalender app: desktop with sidebar, iPad and iPhone as an app ===================== */
body.wzp-is-app{--wzp-top:0px;background:#f2f5f7}
.wzp-is-app .wzk{--k-shadow:0 1px 2px rgba(16,40,50,.04),0 8px 24px -18px rgba(16,40,50,.35);margin:0;max-width:none;color:var(--p-text)}
.wzp-skip{position:absolute;left:12px;top:-60px;z-index:1000;padding:10px 14px;border-radius:10px;background:#fff;font-weight:700}
.wzp-skip:focus{top:12px}
.wzp-app{display:grid;grid-template-columns:252px minmax(0,1fr);min-height:100vh;min-height:100dvh}

/* Sidebar (desktop and iPad landscape) */
.wzp-side{position:sticky;top:0;display:flex;flex-direction:column;gap:22px;height:100vh;height:100dvh;padding:22px 16px 18px;border-right:1px solid #e1e9ed;background:#fff}
.wzp-side .wzp-brand{padding:2px 8px 10px}
.wzp-nav{display:flex;flex-direction:column;gap:4px}
.wzp-nav a{display:flex;align-items:center;gap:12px;min-height:46px;padding:0 12px;border-radius:12px;color:var(--p-text);font-size:15px;font-weight:600;text-decoration:none;transition:background-color .2s ease,color .2s ease}
.wzp-nav a svg{color:#8ea2aa;transition:color .2s ease}
.wzp-nav a:hover{background:#f2f6f8}
.wzp-nav a.is-active{background:#e6f1f5;color:var(--p-accent-dark)}
.wzp-nav a.is-active svg{color:var(--p-accent)}
.wzp-side-foot{display:flex;flex-direction:column;gap:16px;margin-top:auto}
.wzp-legend-side{display:flex;flex-wrap:wrap;gap:6px 14px;padding:0 12px;font-size:12.5px;color:var(--p-muted)}
.wzp-legend-side span{display:inline-flex;align-items:center;gap:6px}
.wzp-account{display:flex;flex-direction:column;gap:2px}
.wzp-account-side{padding:10px;border:1px solid #e3eaee;border-radius:16px;background:#fafcfd}
.wzp-account-head{display:flex;align-items:center;gap:10px;margin:0 0 6px;padding:2px 2px 10px;border-bottom:1px solid #e3eaee}
.wzp-account-head strong{display:block;font-size:14px;color:var(--p-ink);line-height:1.25}
.wzp-account-head small{display:block;font-size:12.5px;color:var(--p-muted)}
.wzp-account a{display:flex;align-items:center;gap:10px;min-height:40px;padding:0 8px;border-radius:10px;color:var(--p-text);font-size:14px;font-weight:600;text-decoration:none}
.wzp-account a:hover{background:#eef4f6;color:var(--p-accent-dark)}
.wzp-account a svg{width:18px;height:18px;color:#8ea2aa}
.wzp-account .wzp-account-logout{color:#9a3a36}
.wzp-account .wzp-account-logout svg{color:#b4443f}
.wzp-avatar{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:var(--p-grad);color:#fff;font-size:14px;font-weight:700;letter-spacing:.02em}

/* Top bar and tab bar (iPad portrait and iPhone) */
.wzp-topbar,.wzp-tabbar{display:none}
.wzp-main{min-width:0;padding:26px 32px 32px}
.wzp-flash{display:flex;align-items:center;gap:10px;margin:0 0 16px;padding:12px 16px;border-radius:14px;background:var(--p-ok-soft);color:#1f6a44;font-weight:700;transition:opacity .4s ease}
.wzp-flash svg{flex:0 0 auto}

/* Account sheet */
.wzp-sheet{width:min(420px,calc(100vw - 24px));padding:10px 14px 16px;border:0;border-radius:22px;background:#fff;box-shadow:0 30px 70px -30px rgba(10,30,40,.6);color:var(--p-text)}
.wzp-sheet::backdrop{background:rgba(16,34,44,.45);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.wzp-sheet-grip{width:40px;height:5px;margin:0 auto 12px;border-radius:3px;background:#d6e0e4}
.wzp-sheet .wzp-account a{min-height:52px;font-size:16px}
.wzp-sheet-close{width:100%;min-height:48px;margin-top:10px;border:0;border-radius:14px;background:#eef3f5;color:var(--p-ink);font-size:15px;font-weight:700;cursor:pointer}

/* ---------- Module header: calm and light instead of the coloured banner ---------- */
.wzp-is-app .wzk .wzk-tabs,.wzp-is-app .wzk .wzk-legend{display:none}
.wzp-is-app .wzk .wzk-top{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title views" "kpis kpis";align-items:end;gap:16px 20px;margin:0 0 18px;padding:0;border-radius:0;background:none;box-shadow:none;color:var(--p-ink)}
.wzp-is-app .wzk .wzk-title{grid-area:title;flex:none;min-width:0}
.wzp-is-app .wzk .wzk-title h1{margin:0;font-size:30px;font-weight:700;letter-spacing:-.025em;line-height:1.15;color:var(--p-ink);white-space:normal}
.wzp-is-app .wzk .wzk-range{margin:4px 0 0;font-size:14px;color:var(--p-muted);white-space:normal}
.wzp-is-app .wzk .wzk-views{grid-area:views;align-self:center;display:inline-flex;padding:4px;border-radius:13px;background:#e4ecef}
.wzp-is-app .wzk .wzk-view-btn{min-height:38px;padding:0 14px;border-radius:10px;color:var(--p-text);font-size:14px}
.wzp-is-app .wzk .wzk-view-btn svg{display:inline}
.wzp-is-app .wzk .wzk-view-btn.is-active{background:#fff;color:var(--p-accent-dark);box-shadow:0 2px 8px -4px rgba(16,40,50,.35)}
.wzp-is-app .wzk .wzk-top .wzk-view-btn:focus-visible{outline-color:var(--p-accent)}
.wzp-is-app .wzk .wzk-kpis{grid-area:kpis;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;min-width:0}
.wzp-is-app .wzk .wzk-kpi{display:flex;flex-direction:column;justify-content:center;gap:2px;min-width:0;padding:14px 16px;border:1px solid #e1e9ed;border-radius:16px;background:#fff;color:var(--p-ink);box-shadow:var(--k-shadow)}
.wzp-is-app .wzk .wzk-kpi strong{font-size:26px;font-weight:700;line-height:1.1;color:var(--p-ink);white-space:nowrap}
.wzp-is-app .wzk .wzk-kpi span{font-size:13px;color:var(--p-muted)}
.wzp-is-app .wzk .wzk-kpi-total{display:flex}
.wzp-is-app .wzk .wzk-kpi-open strong{color:#c26a12}
.wzp-is-app .wzk .wzk-kpi-warn strong{color:#b4443f}
.wzp-is-app .wzk .wzk-kpi-wide strong{font-size:19px;line-height:1.3}
.wzp-is-app .wzk .wzk-kpi.is-link{position:relative;border-color:#cfe1e8;background:linear-gradient(135deg,#f3f9fb,#fff 70%);cursor:pointer}
.wzp-is-app .wzk .wzk-kpi.is-link::after{content:"›";position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:24px;line-height:1;color:var(--p-accent)}
.wzp-is-app .wzk .wzk-kpi.is-link:hover{border-color:var(--p-accent)}

/* ---------- Toolbar ---------- */
.wzp-is-app .wzk .wzk-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:0 0 14px}
.wzp-is-app .wzk .wzk-nav{display:inline-flex;flex-wrap:nowrap;gap:2px;padding:4px;border:1px solid #e1e9ed;border-radius:14px;background:#fff;box-shadow:var(--k-shadow)}
.wzp-is-app .wzk .wzk-nav .wzk-btn{min-height:38px;padding:0 12px;border:0;border-radius:10px;background:transparent;box-shadow:none;color:var(--p-text);font-size:14px}
.wzp-is-app .wzk .wzk-nav .wzk-btn:hover{background:#f0f5f7;color:var(--p-accent-dark)}
.wzp-is-app .wzk .wzk-nav .wzk-btn span{display:inline}
.wzp-is-app .wzk .wzk-nav .wzk-btn-today{background:var(--p-accent);color:#fff}
.wzp-is-app .wzk .wzk-nav .wzk-btn-today:hover{background:var(--p-accent-dark);color:#fff}
.wzp-is-app .wzk .wzk-filters{display:flex;flex-wrap:nowrap;gap:8px}
.wzp-is-app .wzk .wzk-toggle span{min-height:40px;padding:0 14px 0 11px;border-color:#dbe5e9;background:#fff;color:var(--p-text);white-space:nowrap}

/* ---------- Month grid (desktop) ---------- */
.wzp-is-app .wzk .wzk-grid{border:1px solid #e1e9ed;border-radius:18px;background:#e7eef1;box-shadow:var(--k-shadow);overflow:hidden}
.wzp-is-app .wzk .wzk-wd{background:#f8fafb;color:var(--p-muted)}
.wzp-is-app .wzk .wzk-day{background:#fff}
.wzp-is-app .wzk .wzk-day.is-weekend{background:#fbfcfd}
.wzp-is-app .wzk .wzk-day.is-outside{background:#f5f8f9}
.wzp-is-app .wzk-grid .wzk-chip{border-radius:10px}

/* ---------- Patients (desktop) ---------- */
.wzp-is-app .wzk .wzp-table-wrap{border-color:#e1e9ed;border-radius:18px}
.wzp-is-app .wzk .wzp-search{min-height:46px;border-color:#dbe5e9;border-radius:14px}

/* ---------- iPad landscape and small laptops ---------- */
@media (max-width:1279px) and (min-width:1024px){
  .wzp-app{grid-template-columns:216px minmax(0,1fr)}
  .wzp-main{padding:22px 22px 26px}
  .wzp-is-app .wzk .wzk-nav .wzk-btn span{display:none}
  .wzp-is-app .wzk .wzk-nav .wzk-btn-today span{display:inline}
  .wzp-is-app .wzk .wzk-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}
  .wzp-is-app .wzk .wzk-kpi strong{font-size:22px}
  .wzp-is-app .wzk .wzk-kpi-wide strong{font-size:16px}
}

/* ---------- iPad portrait and iPhone: app layout ---------- */
@media (max-width:1023px){
  body.wzp-is-app{--wzp-top:calc(60px + env(safe-area-inset-top))}
  .wzp-app{display:block}
  .wzp-side{display:none}
  .wzp-topbar{position:sticky;top:0;z-index:60;display:flex;align-items:center;gap:14px;height:var(--wzp-top);padding:env(safe-area-inset-top) max(16px,env(safe-area-inset-right)) 0 max(16px,env(safe-area-inset-left));border-bottom:1px solid rgba(214,226,231,.85);background:rgba(255,255,255,.88);-webkit-backdrop-filter:saturate(1.5) blur(14px);backdrop-filter:saturate(1.5) blur(14px)}
  .wzp-topbar .wzp-brand img{width:36px;height:36px;padding:5px;border-radius:11px}
  .wzp-topbar .wzp-brand strong{font-size:16px}
  .wzp-topnav{display:inline-flex;margin-left:auto;padding:3px;border-radius:12px;background:#e8eef1}
  .wzp-topnav a{display:inline-flex;align-items:center;min-height:36px;padding:0 16px;border-radius:9px;color:var(--p-text);font-size:14px;font-weight:600;text-decoration:none}
  .wzp-topnav a.is-active{background:#fff;color:var(--p-accent-dark);box-shadow:0 2px 8px -4px rgba(16,40,50,.35)}
  .wzp-avatar-btn{flex:0 0 auto;padding:0;border:0;border-radius:50%;background:none;cursor:pointer}
  .wzp-main{max-width:820px;margin:0 auto;padding:20px max(20px,env(safe-area-inset-right)) 32px max(20px,env(safe-area-inset-left))}

  /* Header */
  .wzp-is-app .wzk .wzk-top{gap:14px 12px;margin-bottom:14px}
  .wzp-is-app .wzk .wzk-title h1{font-size:28px}
  .wzp-is-app .wzk .wzk-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
  .wzp-is-app .wzk .wzk-kpi{padding:12px 14px}
  .wzp-is-app .wzk .wzk-kpi strong{font-size:22px}
  .wzp-is-app .wzk .wzk-kpi-wide{grid-column:1/-1;order:-1;flex-direction:row;align-items:center;justify-content:space-between;gap:10px;padding:14px 44px 14px 16px;border:0;background:var(--p-grad);color:#fff;box-shadow:0 14px 28px -20px rgba(38,90,110,.9)}
  .wzp-is-app .wzk .wzk-kpi-wide strong{order:2;font-size:17px;color:#fff}
  .wzp-is-app .wzk .wzk-kpi-wide span{order:1;font-size:13px;font-weight:600;color:rgba(255,255,255,.85)}
  .wzp-is-app .wzk .wzk-kpi-wide.is-link::after{color:#fff}

  /* Toolbar */
  .wzp-is-app .wzk .wzk-bar{flex-wrap:nowrap;justify-content:space-between}
  .wzp-is-app .wzk .wzk-nav .wzk-btn span{display:none}
  .wzp-is-app .wzk .wzk-nav .wzk-btn-today span{display:inline}
  .wzp-is-app .wzk .wzk-filters{overflow-x:auto;scrollbar-width:none}
  .wzp-is-app .wzk .wzk-filters::-webkit-scrollbar{display:none}

  /* Agenda: days with appointments, today always */
  .wzp-is-app .wzk .wzk-grid{display:block;height:auto;border:0;border-radius:0;background:none;box-shadow:none;overflow:visible}
  .wzp-is-app .wzk .wzk-wd{display:none}
  .wzp-is-app .wzk .wzk-day{display:none;min-height:0;margin:0;padding:0;border:0;background:none}
  .wzp-is-app .wzk .wzk-day:has(.wzk-chip),.wzp-is-app .wzk .wzk-day.is-today{display:block;margin:0 0 6px}
  .wzp-is-app .wzk .wzk-day-head{position:sticky;top:var(--wzp-top);z-index:5;display:flex;align-items:center;gap:8px;margin:0;padding:12px 2px 8px;background:#f2f5f7}
  .wzp-is-app .wzk .wzk-day-head>:not(.wzk-day-full){display:none}
  .wzp-is-app .wzk .wzk-day-full{display:block;font-size:15px;font-weight:700;color:var(--p-ink)}
  .wzp-is-app .wzk .wzk-day-full em{margin-left:6px;padding:2px 9px;border-radius:999px;background:var(--p-accent);color:#fff;font-size:12px;font-style:normal;font-weight:700;vertical-align:1px}
  .wzp-is-app .wzk .wzk-day.is-past .wzk-day-full{color:var(--p-muted)}
  .wzp-is-app .wzk .wzk-day-items{display:flex;flex-direction:column;gap:10px;overflow:visible;padding-bottom:10px}
  .wzp-is-app .wzk .wzk-day.is-today:not(:has(.wzk-chip)) .wzk-day-items::before{content:"Heute keine Online-Termine";display:block;padding:16px;border:1px dashed #cfdbe0;border-radius:16px;color:var(--p-muted);font-size:14px;text-align:center}

  /* Appointment card */
  .wzp-is-app .wzk .wzk-grid .wzk-chip{position:relative;display:grid;grid-template-columns:74px minmax(0,1fr) auto;grid-template-areas:"time name state" "time service service" "time flags flags";align-items:center;column-gap:12px;row-gap:3px;width:100%;min-height:76px;margin:0;padding:14px 14px 14px 0;border:1px solid #e1e9ed;border-left:0;border-radius:18px;background:#fff;box-shadow:var(--k-shadow);text-align:left;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease}
  .wzp-is-app .wzk .wzk-grid .wzk-chip::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;border-radius:18px 0 0 18px;background:var(--k-open)}
  .wzp-is-app .wzk .wzk-grid .wzk-chip.is-ds::before{background:var(--k-ds)}
  .wzp-is-app .wzk .wzk-grid .wzk-chip.is-cancelled::before{background:var(--k-cancel)}
  .wzp-is-app .wzk .wzk-grid .wzk-chip:active{transform:scale(.985)}
  .wzp-is-app .wzk .wzk-grid .wzk-chip-meta{display:contents}
  .wzp-is-app .wzk .wzk-grid .wzk-chip-time{grid-area:time;align-self:stretch;display:flex;align-items:center;justify-content:center;margin-left:5px;border-right:1px solid #edf2f4;font-size:17px;font-weight:700;color:var(--p-ink);font-variant-numeric:tabular-nums}
  .wzp-is-app .wzk .wzk-grid .wzk-chip-sep{display:none}
  .wzp-is-app .wzk .wzk-grid .wzk-chip-name{grid-area:name;overflow:hidden;font-size:16px;font-weight:700;color:var(--p-ink);text-overflow:ellipsis;white-space:nowrap}
  .wzp-is-app .wzk .wzk-grid .wzk-chip-service{grid-area:service;overflow:hidden;font-size:14px;color:var(--p-muted);text-overflow:ellipsis;white-space:nowrap}
  .wzp-is-app .wzk .wzk-grid .wzk-chip-state{grid-area:state;display:inline-flex;width:auto;height:auto;padding:3px 10px;border-radius:999px;background:var(--k-open-soft);font-size:12px;font-weight:700;line-height:1.4;color:#a35d14}
  .wzp-is-app .wzk .wzk-grid .wzk-chip-state::before{content:"offen"}
  .wzp-is-app .wzk .wzk-grid .wzk-chip.is-ds .wzk-chip-state{background:var(--k-ds-soft);color:var(--k-ds)}
  .wzp-is-app .wzk .wzk-grid .wzk-chip.is-ds .wzk-chip-state::before{content:"in DS"}
  .wzp-is-app .wzk .wzk-grid .wzk-chip.is-cancelled .wzk-chip-state{background:var(--k-cancel-soft);color:var(--k-cancel)}
  .wzp-is-app .wzk .wzk-grid .wzk-chip.is-cancelled .wzk-chip-state::before{content:"abgesagt"}
  .wzp-is-app .wzk .wzk-grid .wzk-chip-flags{grid-area:flags;display:flex;flex-wrap:wrap;gap:5px;margin:4px 0 0}
  .wzp-is-app .wzk .wzk-grid .wzk-flag{width:auto;height:auto;padding:2px 9px;font-size:12px;line-height:1.5}
  .wzp-is-app .wzk .wzk-grid .wzk-flag::before{content:none}
  .wzp-is-app .wzk .wzk-more{display:none}
  .wzp-is-app .wzk .wzk-grid-empty{margin:4px 0 16px;padding:22px;border:1px dashed #cfdbe0;border-radius:16px;background:#fff;text-align:center}

  /* List view rows as cards */
  .wzp-is-app .wzk .wzk-agenda-day{margin:0 0 16px}
  .wzp-is-app .wzk .wzk-agenda-date{position:sticky;top:var(--wzp-top);z-index:5;margin:0;padding:12px 2px 8px;background:#f2f5f7;font-size:15px}
  .wzp-is-app .wzk .wzk-row{margin:0 0 10px;padding:14px;border:1px solid #e1e9ed;border-radius:18px;background:#fff;box-shadow:var(--k-shadow)}

  /* Patients */
  .wzp-is-app .wzk .wzp-bar{gap:10px}
  .wzp-is-app .wzk .wzp-search{flex:1 1 100%;position:sticky;top:calc(var(--wzp-top) + 8px);z-index:6;box-shadow:0 10px 24px -18px rgba(16,40,50,.55)}
  .wzp-is-app .wzk .wzp-table-wrap{border:0;background:none;box-shadow:none;overflow:visible}
  .wzp-is-app .wzk .wzp-row{margin:0 0 10px;padding:14px 16px;border:1px solid #e1e9ed;border-radius:18px;background:#fff;box-shadow:var(--k-shadow)}
  .wzp-is-app .wzk .wzp-row:hover{background:#fff}
}

/* iPhone */
@media (max-width:767px){
  body.wzp-is-app{--wzp-top:calc(56px + env(safe-area-inset-top))}
  .wzp-topbar .wzp-brand small,.wzp-topnav{display:none}
  .wzp-topbar .wzp-avatar-btn{margin-left:auto}
  .wzp-topbar .wzp-avatar{width:34px;height:34px;font-size:13px}
  .wzp-main{padding:16px max(14px,env(safe-area-inset-right)) calc(96px + env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left))}
  .wzp-tabbar{position:fixed;left:0;right:0;bottom:0;z-index:70;display:grid;grid-template-columns:repeat(4,1fr);padding:6px max(8px,env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));border-top:1px solid rgba(214,226,231,.9);background:rgba(255,255,255,.92);-webkit-backdrop-filter:saturate(1.5) blur(16px);backdrop-filter:saturate(1.5) blur(16px)}
  .wzp-tabbar a,.wzp-tabbar button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:52px;padding:0;border:0;border-radius:12px;background:none;color:#7d9098;font:600 11.5px/1.2 var(--p-font);text-decoration:none;cursor:pointer}
  .wzp-tabbar svg{width:24px;height:24px}
  .wzp-tabbar a.is-active{color:var(--p-accent-dark)}
  .wzp-tabbar a.is-active svg{color:var(--p-accent)}
  .wzp-sheet{width:100%;max-width:100%;margin:auto 0 0;padding:10px 16px calc(16px + env(safe-area-inset-bottom));border-radius:24px 24px 0 0}
  .wzp-sheet[open]{animation:wzp-sheet-in .24s cubic-bezier(.2,.8,.2,1)}
  .wzk-toast{bottom:calc(84px + env(safe-area-inset-bottom))!important;max-width:calc(100vw - 24px)}

  /* Header: title with the view switch, figures in one line, next appointment as a card */
  .wzp-is-app .wzk .wzk-top{grid-template-columns:minmax(0,1fr) auto;gap:12px 10px}
  .wzp-is-app .wzk .wzk-title h1{font-size:26px}
  .wzp-is-app .wzk .wzk-range{font-size:13px}
  .wzp-is-app .wzk .wzk-views{align-self:start;padding:3px;border-radius:11px}
  .wzp-is-app .wzk .wzk-view-btn{min-height:34px;padding:0 10px;font-size:13px}
  .wzp-is-app .wzk .wzk-view-btn svg{display:none}
  .wzp-is-app .wzk .wzk-kpis{display:flex;flex-wrap:wrap;gap:8px}
  .wzp-is-app .wzk .wzk-kpi{flex-direction:row;align-items:baseline;gap:6px;padding:7px 12px;border-radius:999px;box-shadow:none}
  .wzp-is-app .wzk .wzk-kpi strong{font-size:16px}
  .wzp-is-app .wzk .wzk-kpi span{font-size:12.5px}
  .wzp-is-app .wzk .wzk-kpi-wide{flex:1 0 100%;order:-1;padding:13px 40px 13px 16px;border-radius:16px}
  .wzp-is-app .wzk .wzk-kpi-wide strong{font-size:16px}

  /* Toolbar: arrows and today, filters below as scrolling chips */
  .wzp-is-app .wzk .wzk-bar{flex-wrap:wrap;gap:10px}
  .wzp-is-app .wzk .wzk-nav{width:100%;justify-content:space-between}
  .wzp-is-app .wzk .wzk-nav .wzk-btn{flex:1 1 0;justify-content:center;min-height:42px;padding:0}
  .wzp-is-app .wzk .wzk-nav .wzk-btn-today{flex:2 1 0}
  .wzp-is-app .wzk .wzk-filters{width:100%}
  .wzp-is-app .wzk .wzk-toggle span{min-height:36px;font-size:13px}

  /* Cards a bit tighter */
  .wzp-is-app .wzk .wzk-grid .wzk-chip{grid-template-columns:64px minmax(0,1fr) auto;column-gap:10px;padding:12px 12px 12px 0;min-height:72px}
  .wzp-is-app .wzk .wzk-grid .wzk-chip-time{font-size:16px}
  .wzp-is-app .wzk .wzk-grid .wzk-chip-name{font-size:15.5px}

  /* Dialogs become sheets from the bottom */
  .wzp-is-app .wzk-dialog,.wzp-is-app .wzk-confirm{width:100%;max-width:100%;max-height:92vh;max-height:92dvh;margin:auto 0 0;border-radius:24px 24px 0 0}
  .wzp-is-app .wzk-dialog[open],.wzp-is-app .wzk-confirm[open]{animation:wzp-sheet-in .26s cubic-bezier(.2,.8,.2,1)}
  .wzp-is-app .wzk-dialog-body{padding-bottom:calc(20px + env(safe-area-inset-bottom))}
  .wzp-is-app .wzk-confirm-inner{padding-bottom:calc(24px + env(safe-area-inset-bottom))}
}
@keyframes wzp-sheet-in{from{transform:translateY(100%)}to{transform:none}}
@media (prefers-reduced-motion:reduce){.wzp-sheet[open],.wzp-is-app .wzk-dialog[open],.wzp-is-app .wzk-confirm[open]{animation:none}}

/* ---------- 2.2.1 fine tuning after the first device check ---------- */
.wzp-legend-side .wzk-dot{display:inline-block;width:10px;height:10px;border-radius:50%}
.wzp-legend-side .wzk-dot-open{background:#d97a1e}
.wzp-legend-side .wzk-dot-ds{background:#2b8a5a}
.wzp-legend-side .wzk-dot-cancel{background:#c04a4a}
.wzp-legend-side .wzk-dot-block{border-radius:3px;background:repeating-linear-gradient(135deg,#8fa2ab 0 2px,#e3e9ec 2px 4px)}
.wzp-is-app .wzk .wzk-view-btn{white-space:nowrap}
.wzp-is-app .wzk-dl dd a{color:var(--p-accent-dark);font-weight:700;text-decoration:none}
.wzp-is-app .wzk-dl>div{grid-template-columns:118px minmax(0,1fr) auto}
.wzp-is-app .wzk-dl dt{overflow-wrap:anywhere}
@media (max-width:1023px){
  .wzp-is-app .wzk .wzk-kpi.wzk-kpi-wide{background:var(--p-grad);border:0;color:#fff}
  .wzp-is-app .wzk .wzk-grid .wzk-chip{flex:none;height:auto}
  .wzp-is-app .wzk .wzk-day.is-today{background:none;box-shadow:none}
  .wzp-is-app .wzk .wzk-view-btn svg{display:none}
}
@media (max-width:767px){
  /* One clear list on the phone: no second view, no total (the cards show it) */
  .wzp-is-app .wzk .wzk-views,.wzp-is-app .wzk .wzk-kpi-total{display:none}
  .wzp-is-app .wzk [data-view-panel="kalender"]{display:block!important}
  .wzp-is-app .wzk [data-view-panel="liste"]{display:none!important}
  .wzp-is-app .wzk .wzk-top{grid-template-columns:minmax(0,1fr);grid-template-areas:"title" "kpis"}
  .wzp-is-app .wzk .wzk-kpi:not(.wzk-kpi-wide){flex:0 0 auto}
  .wzp-is-app .wzk .wzk-kpi span{white-space:nowrap}
  .wzp-is-app .wzk-dl>div{grid-template-columns:96px minmax(0,1fr) auto;gap:8px}
  .wzp-is-app .wzk-dl dt{font-size:12.5px}
}
@media (max-width:1023px){
  .wzp-is-app .wzk .wzk-grid .wzk-chip{overflow:hidden;border-left:1px solid #e1e9ed}
  .wzp-is-app .wzk .wzk-grid .wzk-chip::before{border-radius:0}
}
/* Patients on the phone: figures in one swipeable line, lighter cards, empty rows hidden */
@media (max-width:767px){
  .wzp-view-patienten .wzk .wzk-kpis{flex-wrap:nowrap;overflow-x:auto;margin:0 calc(-1 * max(14px, env(safe-area-inset-left)));padding:0 max(14px, env(safe-area-inset-left)) 2px;scrollbar-width:none}
  .wzp-view-patienten .wzk .wzk-kpis::-webkit-scrollbar{display:none}
  .wzp-view-patienten .wzk .wzk-kpi{flex:0 0 auto}
  .wzp-is-app .wzk .wzp-search input{font-size:15px}
  .wzp-is-app .wzk .wzp-bar .wzk-filters{width:100%;overflow-x:auto;scrollbar-width:none}
  .wzp-is-app .wzk .wzp-bar .wzk-filters::-webkit-scrollbar{display:none}
  .wzp-is-app .wzk .wzp-bar .wzk-toggle span{min-height:36px;font-size:13px}
  .wzp-is-app .wzk .wzp-sort select{min-height:36px;font-size:14px}
  .wzp-is-app .wzk .wzp-row td{padding:4px 0}
  .wzp-is-app .wzk .wzp-row td a{display:inline-block;padding:2px 0;font-size:15px}
  .wzp-is-app .wzk .wzp-row td[data-label]::before{min-width:112px;font-size:12.5px;font-weight:600;letter-spacing:0;text-transform:none}
  .wzp-is-app .wzk .wzp-row td:has(> .wzp-muted:only-child){display:none}
  .wzp-is-app .wzk .wzp-person{margin-bottom:6px}
  .wzp-is-app .wzk .wzp-nextchip{font-size:14.5px}
}

/* ===================== 2.3: app-like appointment list, settings in the Praxiskalender ===================== */
.wzp-agenda-head{display:none}
.wzp-is-app .wzk-day{scroll-margin-top:calc(var(--wzp-top) + 64px)}
.wzp-is-app [data-media-pick],.wzp-is-app .wzm-block [data-act="media"]{display:none}
.wzp-is-app .wzs-tabs{top:12px}
.wzp-is-app .wzs-side{top:16px}
.wzp-is-app .wzs-card{scroll-margin-top:90px}
.wzp-back{display:inline-flex;align-items:center;gap:2px;margin:0 0 10px -4px;padding:6px 8px;border-radius:10px;color:var(--p-accent-dark);font-size:15px;font-weight:600;text-decoration:none}
.wzp-back:hover{background:#e8f1f5}
.wza-self{font-size:13px;color:var(--p-muted)}

@media (max-width:1023px){
  /* Calendar header: title only; month, day strip and next appointment come from the agenda head */
  .wzp-view-kalender .wzk .wzk-kpis,.wzp-view-kalender .wzk .wzk-range,.wzp-view-kalender .wzk .wzk-views,.wzp-view-kalender .wzk .wzk-bar{display:none}
  .wzp-view-kalender .wzk .wzk-top{grid-template-columns:minmax(0,1fr);grid-template-areas:"title";margin:0 0 8px}
  .wzp-view-kalender .wzk .wzk-title h1{font-size:32px}
  .wzp-view-kalender .wzk [data-view-panel="kalender"]{display:block!important}
  .wzp-view-kalender .wzk [data-view-panel="liste"]{display:none!important}

  .wzp-agenda-head{display:block;margin:0 0 4px}
  .wzp-month{display:flex;align-items:center;gap:4px;margin:0 0 10px}
  .wzp-month strong{margin:0 6px;font-size:17px;font-weight:700;color:var(--p-ink);white-space:nowrap}
  .wzp-month-nav{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #dfe8ec;border-radius:11px;background:#fff;color:var(--p-text)}
  .wzp-month-nav svg{width:18px;height:18px}
  .wzp-today-btn{margin-left:auto;display:inline-flex;align-items:center;height:36px;padding:0 16px;border:1px solid #c9dde5;border-radius:999px;background:#fff;color:var(--p-accent-dark);font-size:14px;font-weight:700;text-decoration:none}
  .wzp-today-btn.is-current{background:#e6f1f5;border-color:transparent}
  .wzp-strip{display:flex;gap:6px;margin:0 calc(-1 * max(20px, env(safe-area-inset-left)));padding:2px max(20px, env(safe-area-inset-left)) 12px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .wzp-strip::-webkit-scrollbar{display:none}
  .wzp-strip-day{position:relative;flex:0 0 48px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;height:70px;border:1px solid transparent;border-radius:15px;color:#a9b8be;text-decoration:none;scroll-snap-align:start;transition:background-color .2s ease,border-color .2s ease}
  .wzp-strip-day small{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
  .wzp-strip-day strong{font-size:19px;font-weight:700;line-height:1.15}
  .wzp-strip-dots{display:flex;gap:3px;height:5px}
  .wzp-strip-dots i{width:5px;height:5px;border-radius:50%;background:var(--p-accent)}
  a.wzp-strip-day{border-color:#e1e9ed;background:#fff;color:var(--p-ink);box-shadow:0 1px 2px rgba(16,40,50,.05)}
  a.wzp-strip-day small{color:var(--p-muted)}
  .wzp-strip-day.is-month-start::before{content:"";position:absolute;left:-4px;top:12px;bottom:12px;width:2px;border-radius:1px;background:#d5e2e7}
  .wzp-strip-day.is-active{border-color:var(--p-accent);box-shadow:0 0 0 2px rgba(54,123,148,.18)}
  .wzp-strip-day.is-today{border-color:transparent;background:var(--p-grad);color:#fff;box-shadow:0 10px 20px -14px rgba(38,90,110,.9)}
  .wzp-strip-day.is-today small{color:rgba(255,255,255,.85)}
  .wzp-strip-day.is-today .wzp-strip-dots i{background:#fff}
  .wzp-next{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;margin:2px 0 12px;padding:16px 48px 16px 18px;border:0;border-radius:20px;background:var(--p-grad);color:#fff;text-align:left;cursor:pointer;box-shadow:0 18px 32px -22px rgba(38,90,110,.95);transition:transform .15s ease}
  .wzp-next:active{transform:scale(.985)}
  .wzp-next-when{font-size:13px;font-weight:700;letter-spacing:.01em;color:rgba(255,255,255,.85)}
  .wzp-next strong{font-size:21px;font-weight:700;line-height:1.25}
  .wzp-next-what{font-size:14.5px;color:rgba(255,255,255,.9)}
  .wzp-next-go{position:absolute;right:16px;top:50%;transform:translateY(-50%);color:rgba(255,255,255,.9)}
  .wzp-alerts{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 8px}
  .wzp-alert-chip{display:inline-flex;align-items:center;gap:4px;min-height:34px;padding:0 13px;border:1px solid #f0d2ad;border-radius:999px;background:#fff7ec;color:#8a4f12;font:700 13px/1 var(--p-font);cursor:pointer}
  .wzp-alert-chip span{font-weight:600;opacity:.8}
  .wzp-alert-chip[aria-pressed=true]{border-color:#d97a1e;background:#d97a1e;color:#fff}
  .wzp-alert-chip.is-warn{border-color:#efc4c1;background:#fdf0ef;color:#8e2f2b;cursor:default}

  /* Day sections */
  .wzp-is-app .wzk .wzk-day-head{padding:14px 2px 8px}
  .wzp-is-app .wzk .wzk-day-full{font-size:13px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--p-muted)}
  .wzp-is-app .wzk .wzk-day.is-today .wzk-day-full{color:var(--p-accent-dark)}
  .wzp-is-app .wzk .wzk-day.is-today:not(:has(.wzk-chip)) .wzk-day-items::before{content:"Keine Online-Termine heute";padding:2px 2px 6px;border:0;border-radius:0;font-size:14.5px;text-align:left}
  .wzp-is-app .wzk.only-open .wzk-day:not(:has(.wzk-chip.is-open)):not(.is-today),
  .wzp-is-app .wzk.hide-cancelled .wzk-day:not(:has(.wzk-chip:not(.is-cancelled))):not(.is-today){display:none!important}

  /* Settings */
  .wzp-is-app .wzs-tabs{top:calc(var(--wzp-top) + 8px)}
  .wzp-is-app .wzs-card{scroll-margin-top:calc(var(--wzp-top) + 70px)}
}

/* Settings overview (iOS-like groups) */
.wzp-settings{max-width:680px;margin:0 auto}
.wzp-page-head h1{margin:2px 0 6px;font-size:32px;font-weight:700;letter-spacing:-.025em;color:var(--p-ink)}
.wzp-group h2{margin:24px 4px 8px;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--p-muted)}
.wzp-group-card{border:1px solid #e1e9ed;border-radius:18px;background:#fff;box-shadow:0 1px 2px rgba(16,40,50,.04),0 8px 24px -18px rgba(16,40,50,.35);overflow:hidden}
.wzp-group-card .wzp-row{display:flex;align-items:center;gap:14px;min-height:62px;padding:11px 14px 11px 16px;border-top:1px solid #edf2f4;color:var(--p-ink);text-decoration:none;transition:background-color .15s ease}
.wzp-group-card .wzp-row:first-child{border-top:0}
.wzp-group-card a.wzp-row:hover{background:#f7fafb}
.wzp-group-card a.wzp-row:active{background:#eef4f6}
.wzp-row-icon{display:inline-flex;flex:0 0 36px;align-items:center;justify-content:center;width:36px;height:36px;border-radius:11px;background:#e9f3f6;color:var(--p-accent-dark)}
.wzp-row-text{display:flex;flex:1 1 auto;flex-direction:column;min-width:0}
.wzp-row-text strong{font-size:16px;font-weight:600;color:var(--p-ink)}
.wzp-row-text small{overflow:hidden;font-size:13px;color:var(--p-muted);text-overflow:ellipsis;white-space:nowrap}
.wzp-row-go{color:#b3c2c8}
.wzp-row.is-danger .wzp-row-icon{background:#fcecec;color:#b4443f}
.wzp-row.is-danger strong{color:#a33a35}
.wzp-row-user{gap:14px;padding-top:16px;padding-bottom:16px}
.wzp-avatar-lg{width:50px;height:50px;font-size:17px}
.wzp-group-note{display:flex;align-items:flex-start;gap:10px;margin:12px 4px 0;font-size:13.5px;line-height:1.5;color:var(--p-muted)}
.wzp-group-note svg{flex:0 0 auto;width:18px;height:18px;margin-top:1px}
.wzp-group-note.is-warn{margin:12px 0 0;padding:12px 14px;border:1px solid #f0c48f;border-radius:14px;background:#fff8ef;color:#7a4510}
.wzp-version{margin:30px 0 8px;font-size:12.5px;color:#9aabb2;text-align:center}

@media (max-width:767px){
  .wzp-tabbar{grid-template-columns:repeat(4,1fr)}
  .wzp-is-app .wzs-savebar{bottom:calc(80px + env(safe-area-inset-bottom))}
  .wzp-view-kalender .wzk .wzk-title h1{font-size:30px}
  /* Account table as cards */
  .wzp-is-app .wza-table-wrap{border:0;overflow:visible}
  .wzp-is-app .wza-table thead{display:none}
  .wzp-is-app .wza-table,.wzp-is-app .wza-table tbody,.wzp-is-app .wza-table tr,.wzp-is-app .wza-table td{display:block;width:100%}
  .wzp-is-app .wza-table tr{margin:0 0 10px;padding:12px 14px;border:1px solid #e1e9ed;border-radius:16px;background:#fff}
  .wzp-is-app .wza-table td{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:5px 0;border:0}
  .wzp-is-app .wza-table td[data-label]::before{content:attr(data-label);font-size:13px;font-weight:600;color:var(--p-muted)}
  .wzp-is-app .wza-table td.wza-actions{justify-content:flex-start;padding-top:10px}
  .wzp-is-app .wza-log tr{padding:8px 12px}
}
@media (max-width:1023px){
  .wzp-alerts{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
  .wzp-alerts::-webkit-scrollbar{display:none}
  .wzp-alert-chip{flex:0 0 auto;white-space:nowrap}
  .wzp-alert-chip[data-toggle-open]::after{content:"";width:14px;height:14px;margin-left:4px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M4 6h16M7 12h10M10 18h4'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M4 6h16M7 12h10M10 18h4'/%3E%3C/svg%3E") center/contain no-repeat}
  .wzp-alert-chip[aria-pressed=true]::after{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6 6 18'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6 6 18'/%3E%3C/svg%3E") center/contain no-repeat}
}
@media (max-width:767px){
  .wzp-part-mails .wzs-overview{display:none}
  .wzp-part-mails .wzk .wzk-title h1,.wzp-part-zugaenge .wzk .wzk-title h1{font-size:26px}
}
@media (max-width:767px){
  .wzp-part-zugaenge .wzk .wzk-kpis,.wzp-part-zugaenge .wza-link,.wzp-part-zugaenge .wza-ds{display:none}
  .wzp-part-zugaenge .wza-grid .wzs-card{margin-bottom:12px}
}
.wzp-alert-chip.is-conflict{background:#c9302c;color:#fff;border-color:#c9302c}

/* 2.8.1: free pills in the phone list sit under the day's appointments */
@media (max-width:767px){ .wzp-is-app .wzk .wzk-free-row{margin:4px 0 10px} }

/* 2.8.1: the free legend is plain text, not a flex row of words */
.wzp-is-app .wzp-legend-side .wzk-legend-free>span,.wzp-is-app .wzp-legend-side .wzk-legend-free+span>span{display:inline;line-height:1.4}
.wzp-is-app .wzp-legend-side .wzk-legend-free{align-items:flex-start}
.wzp-is-app .wzp-legend-side .wzk-legend-free .wzk-dot{margin-top:5px}
