/* MoveU shared shell V3: calm navy navigation, canonical logo and stable layers. */
@media (max-width:899px) {
  body.moveu-authenticated-shell-page .mu-mobile-topbar {
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    min-height:68px!important;
    padding:10px 16px!important;
    border-bottom:1px solid #e8edf2!important;
    background:rgba(255,255,255,.96)!important;
    box-shadow:none!important;
  }
  body.moveu-authenticated-shell-page .mu-mobile-topbar__brand {
    grid-column:1!important;
    justify-self:start!important;
    width:112px!important;
    max-width:36vw!important;
  }
  body.moveu-authenticated-shell-page .mu-mobile-topbar__brand .mu-brand-logo { display:block!important;width:100%!important;height:auto!important;filter:none!important; }
  .mu-mobile-topbar__actions { grid-column:2;display:flex;align-items:center;gap:5px; }
  body.moveu-authenticated-shell-page .mu-mobile-topbar__actions .mu-icon-button {
    grid-column:auto!important;width:42px!important;height:42px!important;border:0!important;border-radius:14px!important;background:transparent!important;color:#082456!important;box-shadow:none!important;
  }
  body.moveu-authenticated-shell-page .mu-mobile-topbar__actions .mu-icon-button:is(.is-active,:hover,:focus,:active) { background:transparent!important;color:#082456!important;opacity:.72; }

  body.moveu-authenticated-shell-page .mu-soft-dock {
    border:1px solid #dce4ed!important;background:rgba(255,255,255,.97)!important;box-shadow:0 14px 38px rgba(8,36,86,.13)!important;
  }
  body.moveu-authenticated-shell-page .mu-soft-dock__item { color:#67758b!important;background:transparent!important; }
  body.moveu-authenticated-shell-page .mu-soft-dock__item.is-active { color:#082456!important;background:#eefaf8!important; }
  body.moveu-authenticated-shell-page .mu-soft-dock__item.is-active>.mu-line-icon { color:#082456!important; }
  body.moveu-authenticated-shell-page .mu-soft-dock__item--progress.is-active { background:#eefaf8!important; }
}

/* Alpha 73 — explicit, device-scoped Web Push controls. */
.mu-push-entry {
  width: calc(100% - 32px);
  margin: 14px 16px 8px;
  padding: 14px;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  border: 1px solid #dbe5ed;
  border-radius: 20px;
  background: #f7fafc;
  color: #082b63;
  text-align: left;
  box-shadow: none;
  transition: opacity 160ms ease, transform 160ms ease;
}
.mu-push-entry:hover,
.mu-push-entry:focus-visible { background: #f7fafc; color: #082b63; opacity: .82; }
.mu-push-entry:active { transform: scale(.985); }
.mu-push-entry__icon {
  width: 42px;
  height: 42px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  background: #eaf2ff;
  color: #0b55c9;
}
.mu-push-entry__icon svg { width: 21px; height: 21px; }
.mu-push-entry strong,
.mu-push-entry small { display: block; }
.mu-push-entry strong { font-size: 15px; line-height: 1.25; }
.mu-push-entry small { margin-top: 3px; color: #6c7c94; font-size: 12px; line-height: 1.35; }
.mu-push-status {
  padding: 6px 9px;
  border-radius: 999px;
  background: #edf1f5;
  color: #64748b;
  font-size: 11px;
  font-weight: 800;
}
.mu-push-status.is-active { background: #e7f8f5; color: #178f84; }
.mu-push-status.is-install { background: #eaf2ff; color: #0b55c9; }

.mu-shell-panel--push {
  max-height: min(84dvh, 680px);
  overflow-y: auto;
  scroll-padding-bottom: calc(24px + env(safe-area-inset-bottom));
}
.mu-push-settings { padding: 0 0 calc(14px + env(safe-area-inset-bottom)); color: #082b63; }
.mu-push-intro {
  padding: 15px;
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  gap: 12px;
  border: 1px solid #deebf6;
  border-radius: 20px;
  background: linear-gradient(135deg, #f1f7ff 0%, #edf8f7 100%);
}
.mu-push-intro > span {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border-radius: 15px;
  background: #fff;
  color: #0b55c9;
}
.mu-push-intro svg { width: 24px; height: 24px; }
.mu-push-intro strong { display: block; font-size: 17px; line-height: 1.2; }
.mu-push-intro p,
.mu-push-install p,
.mu-push-privacy { margin: 5px 0 0; color: #6c7c94; font-size: 13px; line-height: 1.45; }
.mu-push-intro[hidden],
.mu-push-install[hidden] { display: none !important; }
.mu-push-message { min-height: 20px; margin: 10px 3px 0; font-size: 13px; color: #64748b; text-align: center; }
.mu-push-message:empty { display: none; }
.mu-push-message[data-tone="success"] { color: #178f84; }
.mu-push-message[data-tone="error"] { color: #9b3b4d; }
.mu-push-install {
  position: relative;
  margin: 12px 0;
  padding: 18px;
  overflow: hidden;
  border: 1px solid #dbe7f2;
  border-radius: 24px;
  background:
    radial-gradient(circle at 100% 0, rgba(70, 199, 193, .15), transparent 38%),
    linear-gradient(145deg, #f4f8ff 0%, #eef5fd 58%, #f3faf9 100%);
  box-shadow: 0 12px 34px rgba(8, 47, 110, .07);
}
.mu-push-install__hero { position: relative; display: grid; grid-template-columns: 54px minmax(0, 1fr) auto; gap: 12px; align-items: start; }
.mu-push-install__app-icon {
  width: 54px;
  height: 54px;
  display: grid;
  place-items: center;
  border-radius: 18px;
  background: #082f6e;
  color: #fff;
  box-shadow: 0 10px 24px rgba(8, 47, 110, .18);
}
.mu-push-install__app-icon svg { width: 26px; height: 26px; }
.mu-push-install__heading { min-width: 0; padding-top: 1px; }
.mu-push-install__heading > span { display: block; margin-bottom: 3px; color: #0b55c9; font-size: 9px; font-weight: 900; letter-spacing: .12em; }
.mu-push-install__heading strong { display: block; color: #082b63; font-size: 18px; line-height: 1.16; letter-spacing: -.02em; }
.mu-push-install__heading p { margin-top: 5px; font-size: 12px; line-height: 1.4; }
.mu-push-install__meta { align-self: start; padding: 5px 8px; border-radius: 999px; background: rgba(255,255,255,.86); color: #60728a; font-size: 9px; font-weight: 850; white-space: nowrap; }
.mu-push-install__steps { margin: 17px 0 0; padding: 5px 0 0; border-top: 1px solid rgba(8,47,110,.1); display: grid; list-style: none; }
.mu-push-install__steps li { position: relative; min-width: 0; padding: 11px 0; display: grid; grid-template-columns: 32px minmax(0, 1fr); gap: 11px; align-items: center; }
.mu-push-install__steps li + li { border-top: 1px solid rgba(8,47,110,.08); }
.mu-push-install__steps li > span { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 50%; background: #0b55c9; color: #fff; font-size: 12px; font-weight: 900; box-shadow: 0 0 0 5px rgba(11,85,201,.08); }
.mu-push-install__steps strong,
.mu-push-install__steps small { display: block; }
.mu-push-install__steps strong { color: #082b63; font-size: 13px; line-height: 1.25; }
.mu-push-install__steps small { margin-top: 2px; color: #718198; font-size: 11px; line-height: 1.38; }
.mu-push-install__note { margin: 4px 0 0; padding-top: 11px; border-top: 1px solid rgba(8,47,110,.1); display: flex; align-items: flex-start; gap: 7px; color: #4f6d79; font-size: 10px; line-height: 1.35; }
.mu-push-install__note > span:first-child { width: 18px; height: 18px; flex: 0 0 18px; display: grid; place-items: center; border-radius: 50%; background: #dcf6f2; color: #15978b; }
.mu-push-install__note svg { width: 11px; height: 11px; stroke-width: 2.5; }
.mu-push-primary,
.mu-push-secondary,
.mu-push-danger {
  width: 100%;
  min-height: 50px;
  padding: 0 18px;
  border: 0;
  border-radius: 17px;
  font-size: 15px;
  font-weight: 800;
  transition: opacity 160ms ease, transform 160ms ease;
}
.mu-push-primary { background: #082f6e; color: #fff; }
.mu-push-primary--install { min-height: 56px; padding-inline: 20px; display: flex; align-items: center; justify-content: center; gap: 10px; border-radius: 18px; box-shadow: 0 12px 26px rgba(8,47,110,.18); }
.mu-push-primary--install svg { width: 19px; height: 19px; }
.mu-push-secondary { background: #eef3f8; color: #082b63; }
.mu-push-danger { background: transparent; color: #6f4150; border: 1px solid #e4d9dd; }
.mu-push-primary:hover,
.mu-push-secondary:hover,
.mu-push-danger:hover { opacity: .82; transform: none; }
.mu-push-primary:active,
.mu-push-secondary:active,
.mu-push-danger:active { transform: scale(.985); }
.mu-push-primary:disabled,
.mu-push-secondary:disabled,
.mu-push-danger:disabled { opacity: .45; }
.mu-push-settings[data-install-mode]:not([data-install-mode="push"]) .mu-push-privacy { margin-top: 10px; color: #8794a6; font-size: 10px; }
.mu-push-options { margin-top: 14px; }
.mu-push-switch {
  min-height: 62px;
  padding: 10px 2px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 48px;
  align-items: center;
  gap: 12px;
  border-bottom: 1px solid #e4ebf1;
  cursor: pointer;
}
.mu-push-switch strong,
.mu-push-switch small { display: block; }
.mu-push-switch strong { font-size: 15px; }
.mu-push-switch small { margin-top: 2px; color: #7b899e; font-size: 12px; }
.mu-push-switch input { position: absolute; opacity: 0; pointer-events: none; }
.mu-push-switch i {
  width: 46px;
  height: 28px;
  padding: 3px;
  border-radius: 999px;
  background: #d9e0e7;
  transition: background 160ms ease;
}
.mu-push-switch i::after {
  content: "";
  display: block;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 4px rgba(8, 43, 99, .18);
  transition: transform 160ms ease;
}
.mu-push-switch input:checked + i { background: #40c9bd; }
.mu-push-switch input:checked + i::after { transform: translateX(18px); }
.mu-push-switch input:focus-visible + i { outline: 3px solid rgba(11, 85, 201, .22); outline-offset: 3px; }
.mu-push-time-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin: 16px 0; }
.mu-push-time-grid label { min-width: 0; }
.mu-push-time-grid span { display: block; margin: 0 0 6px 2px; color: #718198; font-size: 11px; font-weight: 700; }
.mu-push-time-grid input {
  width: 100%;
  min-height: 46px;
  padding: 0 7px;
  border: 1px solid #dbe5ed;
  border-radius: 14px;
  background: #fff;
  color: #082b63;
  font-size: 16px;
}
.mu-push-actions { display: grid; gap: 9px; }
.mu-push-privacy { margin: 14px 3px 0; text-align: center; font-size: 11px; }

@media (min-width: 900px) {
  .mu-shell-panel--push { width: min(460px, calc(100vw - 32px)); }
}

.mu-desktop-appbar__actions>.mu-icon-button:is(.is-active,:hover,:focus,:active) { background:transparent!important;color:#082456!important;opacity:.72; }

/* Existing X controls keep their compact geometry. Task rows carry domain
   labels (e.g. "Umzug abschließen"), never the geometry of a close control. */
body.moveu-authenticated-shell-page button[aria-label*="schließen" i]:not([data-checklist-list-task]),
body.moveu-authenticated-shell-page button[aria-label*="leeren" i]:not([data-checklist-list-task]),
body.moveu-authenticated-shell-page .mu-sheet-close {
  width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;padding:0!important;display:grid!important;place-items:center!important;line-height:0!important;text-indent:0!important;border-radius:14px!important;box-shadow:none!important;
}
body.moveu-authenticated-shell-page button[aria-label*="schließen" i]:not([data-checklist-list-task]) .mu-line-icon,
body.moveu-authenticated-shell-page button[aria-label*="leeren" i]:not([data-checklist-list-task]) .mu-line-icon,
body.moveu-authenticated-shell-page .mu-sheet-close .mu-line-icon {
  width:19px!important;height:19px!important;display:block!important;margin:auto!important;flex:none!important;transform:none!important;
}

/* WordPress/Elementor must never repaint private app interactions. */
body.moveu-authenticated-shell-page :where(.mu-app-shell-host,.mu-app-main) :where(a,button,[role="button"],summary) {
  -webkit-tap-highlight-color:transparent!important;text-decoration:none!important;filter:none!important;background-image:none!important;
}
body.moveu-authenticated-shell-page :where(.mu-app-shell-host,.mu-app-main) :where(a,button,[role="button"],summary):hover {
  text-decoration:none!important;filter:none!important;
}
body.moveu-authenticated-shell-page .elementor :where(a,button,[role="button"]):hover {
  color:inherit!important;background-color:rgba(8,36,86,.035)!important;border-color:currentColor!important;box-shadow:none!important;transform:none!important;
}

/* The install CTA must remain legible in every Elementor, Safari and touch state. */
body.moveu-authenticated-shell-page .mu-push-primary:not(:disabled),
body.moveu-authenticated-shell-page .mu-push-primary:not(:disabled):is(:hover,:focus,:focus-visible,:active,:visited) {
  border-color:#082f6e!important;
  background:#082f6e!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
body.moveu-authenticated-shell-page .mu-push-primary:not(:disabled):hover { opacity:.9!important; }
body.moveu-authenticated-shell-page .mu-push-primary:not(:disabled):active { opacity:1!important;transform:scale(.985)!important; }
body.moveu-authenticated-shell-page .mu-push-primary:disabled {
  border-color:#e6ebf0!important;
  background:#e6ebf0!important;
  color:#7c899b!important;
  -webkit-text-fill-color:#7c899b!important;
  box-shadow:none!important;
}

@media (max-width:380px) {
  .mu-push-install { padding:16px; }
  .mu-push-install__hero { grid-template-columns:48px minmax(0,1fr); }
  .mu-push-install__app-icon { width:48px;height:48px;border-radius:16px; }
  .mu-push-install__meta { grid-column:2;justify-self:start;margin-top:1px; }
  .mu-push-install__heading strong { font-size:17px; }
}

/* Checklist sheets must always sit above the shared shell and its blur layer. */
body.moveu-checklist-v3 .mu-checklist-backdrop { z-index:10020!important;visibility:visible!important; }
body.moveu-checklist-v3 .mu-checklist-sheet { z-index:10030!important;visibility:hidden!important;pointer-events:none!important; }
body.moveu-checklist-v3 .mu-checklist-sheet.is-open:not([hidden]) {
  display:block!important;visibility:visible!important;pointer-events:auto!important;opacity:1!important;transform:translate3d(-50%,var(--mu-sheet-drag-y,0),0)!important;
}
body.moveu-checklist-v3 .mu-checklist-toast { z-index:10040!important; }
html.mu-checklist-sheet-open,html.mu-checklist-sheet-open body { overflow:hidden!important; }

.mu-shell-legal{padding:17px 10px 4px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 15px;border-top:1px solid #edf0f3}.mu-shell-legal a{color:#8a95a4!important;font-size:10px!important;font-weight:620!important;line-height:1.35!important}.mu-shell-legal a:is(:hover,:focus-visible){color:#082456!important;background:transparent!important;text-decoration:underline!important;text-decoration-thickness:1px!important;text-underline-offset:3px!important}

/* One MoveU desktop identity: real photo or initials, never a preset brand avatar. */
@media (min-width:900px){
  body.moveu-authenticated-shell-page .mu-profile-button>.mu-avatar{
    width:36px!important;height:36px!important;border:1px solid rgba(76,201,184,.42)!important;border-radius:50%!important;background:#eefaf8!important;color:#082456!important;box-shadow:0 0 0 3px rgba(111,215,203,.09)!important;font-size:12px!important;font-weight:850!important;
  }
  body.moveu-authenticated-shell-page .mu-profile-button>.mu-avatar img{width:100%!important;height:100%!important;border-radius:50%!important;object-fit:cover!important}
  body.moveu-authenticated-shell-page .mu-profile-button:is(:hover,:focus,:active){background:#fff!important;border-color:#dbe3ea!important;color:#082456!important;box-shadow:none!important}
}
