:root{--bg:#f1f5f9;--card:#fff;--ink:#0f172a;--muted:#64748b;--brand:#2563eb;--brand2:#0f172a;--ok:#15803d;--warn:#b45309;--danger:#b91c1c;--line:#e2e8f0;--radius:20px;--shadow:0 12px 35px rgba(15,23,42,.08)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;padding-bottom:92px}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:18px 18px 12px;background:rgba(241,245,249,.92);backdrop-filter:blur(16px)}.eyebrow{margin:0;color:var(--brand);font-size:10px;font-weight:800;letter-spacing:.13em}.topbar h1{margin:4px 0 0;font-size:27px}main{max-width:820px;margin:auto;padding:0 16px}.view{display:none}.view.active{display:block}.hero-card{padding:24px;border-radius:28px;background:linear-gradient(135deg,#0f172a,#1d4ed8);color:white;box-shadow:var(--shadow)}.hero-card span,.hero-card small{display:block;opacity:.78}.hero-card strong{display:block;font-size:38px;margin:8px 0}.metric-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0}.metric,.panel{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow)}.metric{padding:17px}.metric span,.summary-strip span{display:block;color:var(--muted);font-size:12px}.metric strong{font-size:21px;margin-top:5px;display:block}.panel{padding:18px;margin:14px 0}.panel.compact{padding:15px}.panel h2{margin:0 0 12px;font-size:18px}.panel p{color:var(--muted);line-height:1.5}.panel-head,.toolbar,.button-row,.dialog-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.link-btn,.ghost{border:0;background:transparent;color:var(--brand);font-weight:700}.list{display:flex;flex-direction:column;gap:10px}.list-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}.list-item:last-child{border:0}.list-main{min-width:0}.list-main strong,.list-main span{display:block}.list-main span{font-size:12px;color:var(--muted);margin-top:3px}.amount{font-weight:800;white-space:nowrap}.amount.income{color:var(--ok)}.amount.expense{color:var(--danger)}.toolbar{margin:8px 0 14px}.primary,.secondary,.danger,.file-label{border:0;border-radius:14px;padding:12px 16px;font-weight:800;font-size:14px;cursor:pointer}.primary{background:var(--brand);color:white}.secondary,.file-label{background:#e2e8f0;color:var(--ink)}.danger{background:#fee2e2;color:var(--danger)}.full{width:100%;margin-top:12px}.toolbar select,.segmented{background:white;border:1px solid var(--line);border-radius:14px;padding:10px}.summary-strip{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}.summary-strip>div{background:white;border-radius:18px;padding:16px;box-shadow:var(--shadow)}.summary-strip strong{font-size:20px}.card-grid{display:grid;grid-template-columns:1fr;gap:12px}.entity-card{background:white;border-radius:20px;padding:18px;box-shadow:var(--shadow)}.entity-card h3{margin:0 0 7px}.entity-card p{margin:4px 0;color:var(--muted)}.entity-card .meta{display:flex;justify-content:space-between;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line);font-size:13px}.tag{display:inline-block;background:#dbeafe;color:#1d4ed8;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800}.segmented{display:grid;grid-template-columns:repeat(3,1fr);padding:4px;margin-top:5px}.segmented button{border:0;background:transparent;padding:10px;border-radius:10px;font-weight:700;color:var(--muted)}.segmented button.active{background:var(--brand2);color:white}.form-panel label,dialog label{display:block;font-size:13px;font-weight:700;margin:12px 0}.form-panel input,dialog input,dialog select{width:100%;margin-top:6px;padding:13px;border:1px solid var(--line);border-radius:12px;font:inherit;background:white}.note{border-left:5px solid var(--brand)}.file-label input{display:none}.bottom-nav{position:fixed;z-index:30;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(5,1fr);padding:8px 8px calc(8px + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border-top:1px solid var(--line)}.bottom-nav button{border:0;background:transparent;color:var(--muted);font-size:10px;font-weight:800;padding:6px}.bottom-nav span{display:block;font-size:22px;margin-bottom:2px}.bottom-nav button.active{color:var(--brand)}dialog{border:0;border-radius:24px;padding:0;width:min(92vw,480px);box-shadow:0 30px 80px rgba(15,23,42,.35)}dialog::backdrop{background:rgba(15,23,42,.56);backdrop-filter:blur(3px)}dialog form{padding:22px}dialog h2{margin-top:0}.hidden{display:none!important}.empty{padding:24px;text-align:center;color:var(--muted)}@media(min-width:700px){.metric-grid{grid-template-columns:repeat(4,1fr)}.card-grid{grid-template-columns:1fr 1fr}.topbar{padding-left:calc((100% - 820px)/2 + 16px);padding-right:calc((100% - 820px)/2 + 16px)}}
.card-top,.card-actions{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.card-top{justify-content:space-between}.card-actions{margin-top:1rem}.small{padding:.55rem .7rem;font-size:.85rem}.tag.subtle{background:#e2e8f0;color:#334155}.warning{color:#b91c1c!important}.check-row{display:flex!important;gap:.65rem;align-items:center}.check-row input{width:auto!important;margin:0}.button-row button{flex:1}
.loan-layout{display:grid;grid-template-columns:130px 1fr;gap:18px;align-items:center}.donut{--p:0;width:128px;height:128px;border-radius:50%;background:conic-gradient(var(--brand) calc(var(--p)*1%),#dbeafe 0);display:grid;place-items:center;position:relative}.donut:before{content:"";position:absolute;inset:16px;background:#fff;border-radius:50%}.donut>div{position:relative;text-align:center}.donut strong,.donut span{display:block}.donut strong{font-size:23px}.donut span{font-size:11px;color:var(--muted)}.loan-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px}.loan-facts div,.detail-grid div,.cost-summary div{background:#f8fafc;border:1px solid var(--line);border-radius:14px;padding:11px}.loan-facts span,.detail-grid span,.cost-summary span{display:block;color:var(--muted);font-size:11px}.loan-facts strong,.detail-grid strong,.cost-summary strong{display:block;margin-top:4px;font-size:14px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.cost-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px}.property-card{overflow:hidden;padding:0}.property-card>*:not(.property-image):not(.property-placeholder){margin-left:18px;margin-right:18px}.property-card .card-actions{margin-bottom:18px}.property-image,.property-placeholder{width:100%;height:180px;object-fit:cover;background:linear-gradient(135deg,#dbeafe,#e2e8f0);display:grid;place-items:center;font-size:60px}.property-card .card-top{margin-top:14px}.photo-preview img{width:100%;max-height:220px;object-fit:cover;border-radius:14px}.progress{height:10px;background:#e2e8f0;border-radius:999px;overflow:hidden;margin:14px 0}.progress span{display:block;height:100%;background:var(--brand);border-radius:999px}.account-tabs{grid-template-columns:1fr 1fr}.card-actions .primary{padding:.55rem .7rem;font-size:.85rem}@media(max-width:520px){.loan-layout{grid-template-columns:1fr}.donut{margin:auto}.loan-facts,.detail-grid,.cost-summary{grid-template-columns:1fr 1fr}}@media(max-width:380px){.loan-facts,.detail-grid,.cost-summary{grid-template-columns:1fr}}

.cost-summary .total-row{grid-column:1/-1;background:#e0e7ff;border-color:#93c5fd}.cost-summary .total-row strong{font-size:17px}.hero-card small{line-height:1.45}

.hero-finance{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.hero-finance>div{padding:4px 12px;border-right:1px solid rgba(255,255,255,.22)}.hero-finance>div:last-child{border-right:0}.hero-finance strong{font-size:25px;margin-top:7px}.dashboard-small-metrics{grid-template-columns:repeat(3,1fr)}.object-picker{border:1px solid var(--line);border-radius:14px;padding:12px;margin:14px 0}.object-picker legend{font-size:13px;font-weight:800;padding:0 6px}.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.check-grid .check-row{margin:3px 0;font-weight:600}.check-grid input{width:auto;margin:0 7px 0 0}.owner-objects{font-size:12px!important}@media(max-width:520px){.hero-finance{grid-template-columns:1fr}.hero-finance>div{border-right:0;border-bottom:1px solid rgba(255,255,255,.22);padding:8px 0}.hero-finance>div:last-child{border-bottom:0}.dashboard-small-metrics{grid-template-columns:1fr 1fr}.check-grid{grid-template-columns:1fr}}

.per-person-note{display:inline;color:var(--brand);font-weight:800;margin-left:4px}
.cost-meta{align-items:flex-start}.cost-meta strong{text-align:right}
.calendar-head{display:grid;grid-template-columns:46px 1fr 46px;align-items:center;text-align:center;margin:8px 0 12px}
.waste-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}
.calendar-weekday{text-align:center;color:var(--muted);font-size:11px;font-weight:800;padding:4px}
.calendar-day{min-height:58px;background:#f8fafc;border:1px solid var(--line);border-radius:11px;padding:6px}
.calendar-day.has-events{background:#eff6ff;border-color:#bfdbfe}.muted-day{opacity:.35}
.day-number{font-size:12px;font-weight:800}.calendar-dots{display:flex;flex-wrap:wrap;gap:3px;margin-top:8px}
.calendar-dots i{width:7px;height:7px;border-radius:999px;display:block}
.waste-legend{display:flex;gap:12px;flex-wrap:wrap;margin:12px 0;color:var(--muted);font-size:11px}
.waste-legend span{display:flex;align-items:center;gap:5px}.waste-legend i{width:9px;height:9px;border-radius:50%}
.subheading{font-size:15px!important;margin:16px 0 4px!important}.waste-type-mark{width:10px;height:36px;border-radius:8px;flex:0 0 auto}
.tiny{padding:7px 10px;font-size:12px}.small{padding:9px 12px}
@media(max-width:520px){.calendar-day{min-height:48px;padding:4px}.calendar-dots{margin-top:5px}.cost-meta{flex-direction:column}.cost-meta strong{text-align:left}}

.local-status{display:inline-flex;margin-top:5px;font-size:11px;font-weight:800;color:#15803d;background:#dcfce7;border-radius:999px;padding:4px 9px}
.local-status.status-error{color:#b91c1c;background:#fee2e2}
.app-notice{position:sticky;top:76px;z-index:30;margin:8px auto;max-width:980px;padding:12px 16px;border-radius:14px;background:#fff7ed;border:1px solid #fdba74;color:#9a3412;box-shadow:0 8px 24px rgba(15,23,42,.08)}
.app-notice strong,.app-notice span{display:block}.app-notice span{font-size:13px;margin-top:3px}
.local-mode-panel{border:1px solid #bbf7d0;background:linear-gradient(180deg,#f0fdf4,#ffffff)}
.hidden{display:none!important}

.person-fieldset{border:1px solid var(--line);border-radius:14px;padding:12px;margin:12px 0}
.person-fieldset legend{font-weight:800;padding:0 6px}
.person-fieldset>small{display:block;color:var(--muted);margin-top:8px}
.person-choice-grid{display:grid;gap:8px;margin-top:4px}
.person-choice{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:12px;padding:10px;background:#fff}
.person-choice input{width:20px;height:20px;flex:0 0 auto}
.person-choice span{display:flex;flex-direction:column;gap:2px}
.person-choice small{color:var(--muted)}
.choice-inactive{opacity:.5;background:#f8fafc}
.person-id-badge,.person-number{display:inline-flex;align-items:center;justify-content:center;background:var(--brand);color:#fff;border-radius:999px;font-size:11px;font-weight:900;padding:4px 8px}
.cost-person-breakdown{display:grid;gap:5px;background:#f8fafc;border:1px solid var(--line);border-radius:12px;padding:10px;margin-top:10px}
.cost-person-breakdown span{font-size:12px}.cost-person-breakdown b{display:inline-flex;min-width:28px;color:var(--brand)}
.warning-text{color:#b91c1c;font-size:12px;font-weight:700;margin-top:8px}

.calendar-date-button{appearance:none;width:100%;text-align:left;color:inherit;font:inherit;cursor:pointer}
.calendar-date-button:hover,.calendar-date-button:focus{border-color:var(--brand);outline:2px solid rgba(47,117,181,.22)}
.waste-type-fieldset{border:1px solid var(--line);border-radius:14px;padding:12px;display:grid;gap:9px}
.waste-type-fieldset legend{font-weight:800;padding:0 6px}
.waste-choice{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:12px;padding:11px;background:#fff}
.waste-choice input{width:20px;height:20px}.waste-choice i{width:14px;height:14px;border-radius:50%;display:block}
.cost-info-table{overflow-x:auto}.cost-info-head,.cost-info-row{display:grid;grid-template-columns:1.1fr 1.2fr 1fr 1.1fr 1fr;gap:10px;align-items:center;min-width:650px;padding:10px 12px}
.cost-info-head{font-size:11px;font-weight:900;color:var(--muted);text-transform:uppercase;border-bottom:1px solid var(--line)}
.cost-info-row{border-bottom:1px solid var(--line);font-size:13px}.cost-info-row:last-child{border-bottom:0}.cost-info-row strong{text-align:right}

.cost-summary>div span{display:flex;flex-direction:column;gap:2px}
.cost-summary>div span small{font-size:10px;color:var(--muted);font-weight:600}
.cost-info-total{background:#eef6ff;border-top:2px solid var(--brand);font-weight:800}
.property-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0}
.property-info-grid>div{background:#f8fafc;border:1px solid var(--line);border-radius:11px;padding:9px;display:flex;flex-direction:column;gap:3px}
.property-info-grid span{font-size:10px;color:var(--muted);text-transform:uppercase;font-weight:800}
.property-info-grid strong{font-size:13px}
.dialog-section{border:1px solid var(--line);border-radius:14px;padding:12px;margin:12px 0;display:grid;gap:10px}
.dialog-section legend{font-weight:850;padding:0 6px}
.form-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media(max-width:520px){.form-two-columns{grid-template-columns:1fr}.property-info-grid{grid-template-columns:1fr 1fr}}

.cost-category-cell{display:flex!important;flex-direction:column;gap:2px}
.cost-category-cell strong{font-size:13px;text-align:left!important}
.cost-category-cell small{font-size:11px;color:var(--muted);font-weight:600}
.cost-info-total .total-label{text-align:right;font-weight:900;padding-right:6px}
.task-status{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:900;min-width:62px}
.task-status-open{background:#fee2e2;color:#b91c1c;border:1px solid #fecaca}
.task-status-done{background:#dcfce7;color:#15803d;border:1px solid #bbf7d0}

.dashboard-property-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.dashboard-property-card{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 8px 22px rgba(15,23,42,.05)}
.dashboard-property-image,.dashboard-property-placeholder{width:100%;height:190px;object-fit:cover;background:#eef2f7;display:flex;align-items:center;justify-content:center;font-size:48px}
.dashboard-property-body{padding:14px}
.dashboard-property-body h3{margin:8px 0 2px;font-size:21px}
.dashboard-property-body>p{margin:0 0 10px;color:var(--muted)}
.dashboard-property-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.dashboard-property-details>div{background:#f8fafc;border:1px solid var(--line);border-radius:11px;padding:9px;display:flex;flex-direction:column;gap:3px}
.dashboard-property-details span{font-size:10px;text-transform:uppercase;color:var(--muted);font-weight:800}
.dashboard-property-details strong{font-size:13px}
.property-notes{margin-top:10px!important;padding:10px;border-radius:11px;background:#fff7ed;color:#7c2d12!important;border:1px solid #fed7aa}
textarea{width:100%;box-sizing:border-box;resize:vertical}
@media(max-width:760px){.dashboard-property-grid{grid-template-columns:1fr}.dashboard-property-image,.dashboard-property-placeholder{height:170px}}

.dashboard-property-card{min-width:0}
.dashboard-property-body{min-width:0}
.dashboard-property-body h3,.dashboard-property-body p{overflow-wrap:anywhere}
.dashboard-property-details>div{min-width:0}
.dashboard-property-details strong{overflow-wrap:anywhere}
.vehicle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.vehicle-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 8px 22px rgba(15,23,42,.05)}.vehicle-placeholder{height:150px;background:#eef2f7;display:flex;align-items:center;justify-content:center;font-size:52px}.vehicle-body{padding:14px}.vehicle-status{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:900}.service-ok{background:#dcfce7;color:#15803d}.service-soon{background:#fef3c7;color:#a16207}.service-due{background:#fee2e2;color:#b91c1c}.service-neutral{background:#e2e8f0;color:#475569}.vehicle-kpis,.vehicle-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}.vehicle-kpis>div,.vehicle-info-grid>div{background:#f8fafc;border:1px solid var(--line);border-radius:11px;padding:9px;display:flex;flex-direction:column;gap:3px}.vehicle-kpis span,.vehicle-info-grid span,.last-service span{font-size:10px;text-transform:uppercase;color:var(--muted);font-weight:800}.last-service{margin:10px 0;padding:11px;border-radius:12px;background:#eff6ff;border:1px solid #bfdbfe;display:flex;flex-direction:column;gap:3px}.bottom-nav{overflow-x:auto;justify-content:flex-start}.bottom-nav button{min-width:86px;flex:1 0 86px}@media(max-width:760px){.vehicle-grid{grid-template-columns:1fr}}
/* Version 15: Dashboard vehicle overview */
.dashboard-vehicle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.dashboard-vehicle-card{border:1px solid var(--line);border-radius:18px;background:#fff;padding:14px;box-shadow:0 8px 22px rgba(15,23,42,.05)}
.dashboard-vehicle-head{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.dashboard-vehicle-head .vehicle-icon{width:46px;height:46px;border-radius:14px;background:#eff6ff;display:flex;align-items:center;justify-content:center;font-size:24px}
.dashboard-vehicle-head h3{margin:0;font-size:20px}.dashboard-vehicle-head p{margin:2px 0 0;color:var(--muted)}
.dashboard-vehicle-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.dashboard-vehicle-details>div{background:#f8fafc;border:1px solid var(--line);border-radius:11px;padding:9px;display:flex;flex-direction:column;gap:3px}
.dashboard-vehicle-details span,.maintenance-info-row span{font-size:10px;text-transform:uppercase;color:var(--muted);font-weight:800}
.dashboard-vehicle-details strong{font-size:13px}.dashboard-vehicle-details small{font-size:10px;color:var(--muted)}
.next-maintenance-list{margin-top:12px;border-top:1px solid var(--line);padding-top:10px}
.next-maintenance-list>strong{display:block;margin-bottom:8px}
.maintenance-info-row{display:grid;grid-template-columns:1.1fr 1fr;gap:6px 12px;padding:8px 0;border-bottom:1px solid #eef2f7}
.maintenance-info-row:last-child{border-bottom:0}.maintenance-info-row strong{text-align:right;font-size:12px}.maintenance-info-row small{grid-column:1/-1;color:var(--muted);font-size:10px}
.small-empty{padding:8px 0}

/* Symmetrische untere Navigation */
.bottom-nav{
 display:grid!important;
 grid-template-columns:repeat(7,minmax(0,1fr))!important;
 gap:0!important;
 overflow:visible!important;
 width:100%!important;
}
.bottom-nav button{
 min-width:0!important;
 width:100%!important;
 flex:none!important;
 margin:0!important;
 justify-self:stretch!important;
}
@media(max-width:760px){
 .dashboard-vehicle-grid{grid-template-columns:1fr}
 .bottom-nav{grid-template-columns:repeat(7,minmax(54px,1fr))!important;overflow-x:auto!important}
 .bottom-nav button{font-size:10px!important;padding-left:2px!important;padding-right:2px!important}
}

#uiLanguageSelect{max-width:280px}

.storage-note{font-size:11px;color:var(--muted)}

.permission-summary{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.permission-summary span{padding:5px 9px;border-radius:999px;font-size:10px;font-weight:800}
.perm-ok{background:#dcfce7;color:#166534}.perm-no{background:#f1f5f9;color:#64748b}
.permission-disabled{opacity:.42!important;cursor:not-allowed!important}

/* =========================================================
   V25 – RESPONSIVE MOBILE BOTTOM NAVIGATION
   ========================================================= */

:root{
  --mobile-nav-height: 74px;
}

/* Desktop / tablet */
.bottom-nav{
  display:grid !important;
  grid-template-columns:repeat(6,minmax(0,1fr)) !important;
  align-items:stretch !important;
  width:100% !important;
  gap:0 !important;
  box-sizing:border-box !important;
}

.bottom-nav button{
  min-width:0 !important;
  width:100% !important;
  overflow:hidden !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:4px !important;
  text-align:center !important;
  white-space:nowrap !important;
  line-height:1.05 !important;
  box-sizing:border-box !important;
}

.bottom-nav button > span:first-child,
.bottom-nav .nav-icon{
  display:block !important;
  line-height:1 !important;
}

/* Smartphone optimization */
@media (max-width: 760px){
  :root{
    --mobile-nav-height: 72px;
  }

  .bottom-nav{
    position:fixed !important;
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    z-index:10000 !important;

    grid-template-columns:repeat(6,minmax(0,1fr)) !important;
    height:calc(var(--mobile-nav-height) + env(safe-area-inset-bottom)) !important;

    padding:
      4px
      max(3px, env(safe-area-inset-right))
      calc(4px + env(safe-area-inset-bottom))
      max(3px, env(safe-area-inset-left)) !important;

    background:rgba(255,255,255,.97) !important;
    border-top:1px solid rgba(148,163,184,.28) !important;
    box-shadow:0 -8px 24px rgba(15,23,42,.07) !important;
    backdrop-filter:blur(16px) !important;
    -webkit-backdrop-filter:blur(16px) !important;
    overflow:visible !important;
  }

  .bottom-nav button{
    height:64px !important;
    min-width:0 !important;
    padding:6px 1px 4px !important;
    margin:0 !important;

    font-size:clamp(8px,2.35vw,10.5px) !important;
    font-weight:800 !important;
    letter-spacing:-0.02em !important;

    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:clip !important;
  }

  .bottom-nav button > span:first-child,
  .bottom-nav .nav-icon{
    font-size:clamp(17px,5vw,21px) !important;
    line-height:1 !important;
    margin:0 !important;
    flex:0 0 auto !important;
  }

  .bottom-nav button > span:last-child{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    padding:0 1px !important;

    font-size:inherit !important;
    line-height:1.05 !important;
    text-align:center !important;

    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  /* active nav item stays visually clear without becoming larger */
  .bottom-nav button.active{
    transform:none !important;
  }

  body{
    padding-bottom:calc(var(--mobile-nav-height) + env(safe-area-inset-bottom) + 12px) !important;
  }

  main,
  #app{
    padding-bottom:calc(var(--mobile-nav-height) + env(safe-area-inset-bottom) + 18px) !important;
  }
}

/* Very narrow phones, e.g. iPhone SE */
@media (max-width: 390px){
  .bottom-nav button{
    font-size:8.5px !important;
    gap:3px !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }

  .bottom-nav button > span:first-child,
  .bottom-nav .nav-icon{
    font-size:17px !important;
  }
}

/* Wider phones */
@media (min-width:391px) and (max-width:760px){
  .bottom-nav button{
    font-size:9.5px !important;
  }
}

/* Tablet */
@media (min-width:761px) and (max-width:1100px){
  .bottom-nav button{
    font-size:12px !important;
  }

  .bottom-nav button > span:first-child,
  .bottom-nav .nav-icon{
    font-size:21px !important;
  }
}

/* =========================================================
   V26 – KOMPLETT NEUE MOBILE NAVIGATION
   ========================================================= */

#mainBottomNav.bottom-nav{
  position:fixed !important;
  left:0 !important;
  right:0 !important;
  bottom:0 !important;
  z-index:2147483000 !important;

  display:grid !important;
  grid-template-columns:repeat(6,minmax(0,1fr)) !important;
  align-items:stretch !important;

  width:100% !important;
  height:calc(66px + env(safe-area-inset-bottom)) !important;
  margin:0 !important;
  padding:0 4px env(safe-area-inset-bottom) !important;
  box-sizing:border-box !important;

  background:rgba(255,255,255,.98) !important;
  border-top:1px solid rgba(148,163,184,.28) !important;
  box-shadow:0 -6px 20px rgba(15,23,42,.08) !important;
  backdrop-filter:blur(16px) !important;
  -webkit-backdrop-filter:blur(16px) !important;

  overflow:hidden !important;
}

#mainBottomNav .nav-item{
  appearance:none !important;
  -webkit-appearance:none !important;

  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:3px !important;

  min-width:0 !important;
  width:100% !important;
  height:66px !important;

  margin:0 !important;
  padding:4px 1px 3px !important;

  border:0 !important;
  border-radius:12px !important;
  background:transparent !important;

  color:#64748b !important;
  text-align:center !important;
  line-height:1 !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
  cursor:pointer !important;
  touch-action:manipulation !important;
}

#mainBottomNav .nav-item.active{
  color:#2563eb !important;
  background:rgba(37,99,235,.08) !important;
}

#mainBottomNav .nav-icon{
  display:block !important;
  flex:0 0 auto !important;

  font-size:19px !important;
  line-height:20px !important;

  margin:0 !important;
  padding:0 !important;
  pointer-events:none !important;
}

#mainBottomNav .nav-label{
  display:block !important;
  width:100% !important;
  max-width:100% !important;

  margin:0 !important;
  padding:0 !important;

  font-weight:800 !important;
  text-align:center !important;
  line-height:1.05 !important;

  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:clip !important;
  pointer-events:none !important;
}

#mainBottomNav .nav-label-full{
  display:none !important;
}

#mainBottomNav .nav-label-short{
  display:block !important;
  font-size:9px !important;
  letter-spacing:-0.02em !important;
}

/* normal phones */
@media (min-width:391px) and (max-width:760px){
  #mainBottomNav .nav-label-short{
    font-size:9.5px !important;
  }

  #mainBottomNav .nav-icon{
    font-size:20px !important;
  }
}

/* very narrow phones */
@media (max-width:390px){
  #mainBottomNav{
    padding-left:2px !important;
    padding-right:2px !important;
  }

  #mainBottomNav .nav-item{
    gap:2px !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }

  #mainBottomNav .nav-label-short{
    font-size:8.2px !important;
  }

  #mainBottomNav .nav-icon{
    font-size:18px !important;
  }
}

/* tablets / desktop can show full labels */
@media (min-width:761px){
  #mainBottomNav .nav-label-short{
    display:none !important;
  }

  #mainBottomNav .nav-label-full{
    display:block !important;
    font-size:11px !important;
  }

  #mainBottomNav .nav-icon{
    font-size:20px !important;
  }
}

/* reserve exact space so content never sits behind navigation */
body{
  padding-bottom:calc(78px + env(safe-area-inset-bottom)) !important;
}

main,
#app{
  padding-bottom:calc(86px + env(safe-area-inset-bottom)) !important;
}

.auth-gate{position:fixed;inset:0;z-index:2147483647;background:linear-gradient(145deg,#eff6ff,#f8fafc 45%,#e2e8f0);display:flex;align-items:center;justify-content:center;padding:22px;box-sizing:border-box;overflow:auto}.auth-gate.hidden,.auth-card.hidden{display:none!important}.auth-shell{width:min(460px,100%)}.auth-brand{margin-bottom:18px}.auth-brand h1{font-size:36px;margin:4px 0}.auth-brand p{color:#64748b}.auth-card{background:#fff;border:1px solid #e2e8f0;border-radius:24px;padding:22px;box-shadow:0 24px 60px rgba(15,23,42,.14)}.auth-card label{display:flex;flex-direction:column;gap:6px;margin:12px 0;font-weight:800}.auth-card input{width:100%;box-sizing:border-box}.auth-help{color:#64748b}.auth-switch{width:100%;margin-top:12px}.auth-error{margin-top:12px;padding:10px;border-radius:12px;background:#fee2e2;color:#b91c1c;font-weight:800}.tenant-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}.tenant-summary-grid>div{padding:9px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:11px;display:flex;flex-direction:column}.tenant-summary-grid span{font-size:10px;color:#64748b;text-transform:uppercase}.tenant-actions{display:flex;gap:8px;flex-wrap:wrap}.tenant-user-list{display:grid;gap:8px;margin-top:10px}.tenant-user-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px;border:1px solid #e2e8f0;border-radius:12px}.tenant-user-row>div:first-child{display:flex;flex-direction:column}.tenant-user-row span{font-size:11px;color:#64748b}body.role-no-finance .hero-finance,body.role-no-finance #loanDonut,body.role-no-finance .loan-facts,body.role-no-finance #loanDetails{filter:blur(5px);opacity:.4;pointer-events:none}.permission-disabled{opacity:.4!important;cursor:not-allowed!important}@media(max-width:600px){.auth-gate{padding:14px}.auth-brand h1{font-size:30px}.auth-card{padding:17px}.tenant-summary-grid{grid-template-columns:1fr}.tenant-user-row{align-items:flex-start;flex-direction:column}}

.login-account-hint{margin:10px 0 14px;padding:9px 11px;border-radius:11px;background:#eff6ff;border:1px solid #bfdbfe;font-size:11px;color:#1e3a8a}

body.auth-locked > .topbar,
body.auth-locked > #appNotice,
body.auth-locked > main,
body.auth-locked > .bottom-nav{visibility:hidden!important;pointer-events:none!important}
body.auth-locked #authGate{visibility:visible!important;pointer-events:auto!important}


.auth-future-note{margin:10px 0 0;color:#94a3b8;font-size:10px;line-height:1.4;text-align:center}

/* V31 Fahrzeugfotos */
.vehicle-photo-field input[type="file"]{width:100%}
.vehicle-photo-preview-wrap{margin:10px 0 14px;display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap}
.vehicle-photo-preview-wrap.hidden{display:none!important}
.vehicle-photo-preview{width:min(320px,100%);aspect-ratio:16/9;object-fit:cover;border-radius:16px;border:1px solid #e2e8f0;background:#f8fafc}
.vehicle-card .vehicle-photo{width:100%;height:190px;object-fit:cover;display:block;background:#f8fafc}
.dashboard-vehicle-photo{width:54px;height:54px;object-fit:cover;border-radius:14px;border:1px solid #e2e8f0;flex:0 0 auto}
@media(max-width:600px){.vehicle-card .vehicle-photo{height:165px}.dashboard-vehicle-photo{width:48px;height:48px;border-radius:12px}}

/* V32 – vollständig bezahlte Kostenpositionen */
.cost-card{transition:opacity .18s ease,border-color .18s ease,background .18s ease}
.cost-card-paid{background:linear-gradient(180deg,#f8fffb,#f3faf6)!important;border-color:#bbf7d0!important}
.cost-card-paid h3,.cost-card-paid p{opacity:.74}
.cost-tags{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.paid-tag{background:#dcfce7!important;color:#166534!important;border-color:#bbf7d0!important}
.active-cost-tag{background:#eff6ff!important;color:#1d4ed8!important}
.paid-cost-info{margin:10px 0;padding:9px 11px;border-radius:11px;background:#dcfce7;color:#166534;font-size:11px;font-weight:800}
.cost-card-paid s,.cost-info-paid s{color:#64748b}
.cost-person-breakdown em{font-size:10px;color:#166534;font-style:normal;font-weight:800;margin-left:4px}
button.success{background:#dcfce7!important;color:#166534!important;border:1px solid #86efac!important}
button.success:hover{background:#bbf7d0!important}
.cost-info-paid{opacity:.64;background:#f8fafc}
.cost-info-paid .cost-category-cell small{color:#166534!important;font-weight:700}

/* V33 – Aufgabenübersicht im kompakten App-Kartenstil */
.dashboard-task-list{display:grid;gap:10px}
.dashboard-task-card{
 display:grid;grid-template-columns:58px minmax(0,1fr) minmax(128px,170px) 14px;
 align-items:center;gap:12px;padding:12px 14px;background:#fff;
 border:1px solid #e8edf3;border-radius:18px;
 box-shadow:0 5px 16px rgba(15,23,42,.055);min-width:0
}
.dashboard-task-visual{
 width:54px;height:54px;border-radius:50%;overflow:hidden;
 display:flex;align-items:center;justify-content:center;
 background:#eef2f7;border:1px solid #e2e8f0
}
.dashboard-task-visual img{width:100%;height:100%;object-fit:cover;display:block}
.dashboard-task-visual.is-icon span{font-size:25px;line-height:1}
.dashboard-task-main{min-width:0}
.dashboard-task-main h3{
 margin:0 0 7px;font-size:15px;line-height:1.2;color:#0f172a;
 white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.dashboard-task-meta{display:flex;flex-wrap:wrap;gap:4px 12px;color:#64748b;font-size:10px;line-height:1.25}
.dashboard-task-meta span{white-space:nowrap}
.dashboard-task-state{
 justify-self:end;display:flex;flex-direction:column;align-items:flex-start;
 gap:5px;min-width:120px;font-size:10px;font-weight:800;line-height:1.15
}
.dashboard-task-state i{display:block;width:38px;height:9px;border-radius:999px}
.dashboard-task-state-urgent{color:#e53935}
.dashboard-task-state-urgent i{background:#ff3b30}
.dashboard-task-state-soon{color:#c79a00}
.dashboard-task-state-soon i{background:#ffd60a}
.dashboard-task-state-ok{color:#159a78}
.dashboard-task-state-ok i{background:#2fc49d}
.dashboard-task-chevron{color:#94a3b8;font-size:20px;font-weight:700;text-align:right}

@media(max-width:700px){
 .dashboard-task-card{grid-template-columns:50px minmax(0,1fr) 108px 8px;gap:8px;padding:10px;border-radius:15px}
 .dashboard-task-visual{width:46px;height:46px}
 .dashboard-task-visual.is-icon span{font-size:22px}
 .dashboard-task-main h3{font-size:12px;margin-bottom:5px}
 .dashboard-task-meta{font-size:8.5px;gap:3px 7px}
 .dashboard-task-meta .task-object-name{display:none}
 .dashboard-task-state{min-width:102px;font-size:8.5px}
 .dashboard-task-state i{width:31px;height:7px}
 .dashboard-task-chevron{font-size:16px}
}
@media(max-width:410px){
 .dashboard-task-card{grid-template-columns:44px minmax(0,1fr) 86px;gap:7px}
 .dashboard-task-chevron{display:none}
 .dashboard-task-visual{width:42px;height:42px}
 .dashboard-task-main h3{font-size:11px}
 .dashboard-task-meta{font-size:7.8px}
 .dashboard-task-state{min-width:82px;font-size:7.7px}
 .dashboard-task-state i{width:27px;height:6px}
}

/* V34 – Aufgaben: Monat/Jahr + direkt erledigen */
.dashboard-task-done-btn{
 margin-top:3px;padding:6px 9px;border:0;border-radius:9px;
 background:#e2e8f0;color:#0f172a;font-size:9px;font-weight:900;
 cursor:pointer;white-space:nowrap
}
.dashboard-task-done-btn:hover{background:#cbd5e1}
.dashboard-task-card-done{background:#f8fffb;border-color:#bbf7d0}
.dashboard-task-card-done .dashboard-task-main h3{color:#166534}
.task-completed-by{color:#159a78!important;font-weight:800}
.dashboard-task-card-done .dashboard-task-state-ok i{background:#22c55e}
@media(max-width:700px){
 .dashboard-task-done-btn{font-size:7.8px;padding:5px 7px}
}

/* V35 Aufgabenfoto */
.task-photo-preview-wrap{margin:8px 0 12px;display:flex;gap:10px;align-items:flex-start;flex-wrap:wrap}
.task-photo-preview-wrap.hidden{display:none!important}
#taskPhotoPreview{width:min(300px,100%);aspect-ratio:16/9;object-fit:cover;border-radius:14px;border:1px solid #e2e8f0}

/* V35 Objektakte */
.property-detail-block{margin-top:12px;padding:12px;border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc}
details.property-detail-block summary{cursor:pointer;font-weight:900;color:#0f172a}
.meter-history-list,.renovation-list{display:grid;gap:7px;margin-top:9px}
.meter-history-row{display:grid;grid-template-columns:110px 1fr 1fr;gap:8px;align-items:center;padding:8px 9px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;font-size:10px}
.renovation-summary{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:8px 0;padding:10px;border-radius:11px;background:#ecfdf5;color:#166534}
.renovation-summary span{font-size:10px;font-weight:800}.renovation-summary strong{font-size:15px}
.property-sub-head{display:flex;justify-content:space-between;align-items:center;gap:10px}
.renovation-row{display:grid;grid-template-columns:minmax(0,1fr) auto 28px;gap:8px;align-items:center;padding:8px 9px;background:#fff;border:1px solid #e2e8f0;border-radius:10px}
.renovation-row>div{display:flex;flex-direction:column;gap:2px;min-width:0}.renovation-row span{font-size:9px;color:#64748b}
.property-sub-empty{padding:8px 0;color:#94a3b8;font-size:10px}
button.tiny{padding:4px 6px!important;min-height:0!important}
@media(max-width:600px){.meter-history-row{grid-template-columns:1fr;gap:3px}.renovation-row{grid-template-columns:minmax(0,1fr) auto 26px}}

/* V36 – Fahrzeugwartung */
.maintenance-subsection{margin-top:12px;padding:12px;border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc}
.maintenance-subsection h3{margin:0 0 10px;font-size:13px;color:#0f172a}
.vehicle-maintenance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:600px){.vehicle-maintenance-grid{grid-template-columns:1fr}}

.renovation-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:9px 0}.ren-sum{padding:10px;border-radius:12px;display:flex;flex-direction:column;gap:3px;border:1px solid #e2e8f0}.ren-paid{background:#ecfdf5;color:#166534}.ren-open{background:#fff7ed;color:#9a3412}.ren-total{background:#eff6ff;color:#1e3a8a}.renovation-row-v37{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:11px;background:#fff;border:1px solid #e2e8f0;border-radius:13px}.renovation-row-v37.is-paid{border-left:4px solid #22c55e}.renovation-row-v37.is-open{border-left:4px solid #f59e0b}.renovation-row-title{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.ren-category{font-size:9px;font-weight:900;padding:3px 6px;border-radius:999px;background:#eef2ff;color:#3730a3}.renovation-row-meta{display:flex;gap:6px 10px;flex-wrap:wrap;margin-top:5px;color:#64748b;font-size:9px}.renovation-row-price{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.ren-status{font-size:9px;font-weight:900}.ren-status.paid{color:#15803d}.ren-status.open{color:#c2410c}.renovation-row-actions{grid-column:1/-1;display:flex;gap:6px;flex-wrap:wrap}.renovation-files{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.renovation-file{display:inline-flex;align-items:center;gap:5px;padding:5px 7px;border:1px solid #dbe4ee;border-radius:8px;background:#f8fafc;font-size:8px;text-decoration:none;color:#334155}.renovation-file-image img{width:34px;height:28px;object-fit:cover;border-radius:5px}.renovation-attachment-info{font-size:9px;color:#64748b}.dashboard-renovation-overview{display:grid;gap:12px}.dashboard-ren-totals{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.dashboard-ren-totals>div{padding:13px;border:1px solid #e2e8f0;border-radius:13px;background:#f8fafc;display:flex;flex-direction:column;gap:4px}.dashboard-ren-categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.dashboard-ren-category{display:flex;justify-content:space-between;padding:9px 10px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;font-size:10px}@media(max-width:600px){.renovation-summary-grid,.dashboard-ren-totals,.dashboard-ren-categories{grid-template-columns:1fr}.renovation-row-v37{grid-template-columns:1fr}.renovation-row-price{align-items:flex-start}}

/* V38 Offline Komplettsuite */
.widget-hidden{display:none!important}
.important-list,.assistant-insights{display:grid;gap:8px}.important-item{display:flex;gap:9px;align-items:center;padding:10px;border-radius:12px;background:#f8fafc}.important-item i{width:9px;height:32px;border-radius:99px}.important-item.red i{background:#ef4444}.important-item.orange i{background:#f59e0b}.important-item div{display:flex;flex-direction:column;gap:2px}.important-item span{font-size:10px;color:#64748b}.assistant-insight{padding:10px;border:1px solid #e2e8f0;border-radius:11px;background:#f8fafc;font-size:11px}
.consumption-overview{display:grid;gap:10px}.consumption-card{padding:12px;border:1px solid #e2e8f0;border-radius:14px}.consumption-kpis{display:grid;grid-template-columns:1fr 1fr;gap:8px}.consumption-kpis>div,.wealth-grid>div,.stat-grid>div,.report-grid>div{display:flex;flex-direction:column;gap:3px;padding:9px;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc}.consumption-kpis span,.wealth-grid span,.stat-grid span,.report-grid span{font-size:9px;color:#64748b}.mini-bars{display:grid;gap:6px;margin-top:10px}.mini-bars>div{display:grid;grid-template-columns:90px 1fr 90px;gap:7px;align-items:center;font-size:8px}.mini-bars i{height:7px;border-radius:99px;background:#e2e8f0;overflow:hidden}.mini-bars b{display:block;height:100%;background:currentColor;border-radius:99px}

.dashboard-widget-choices{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.document-list,.vehicle-history{margin-top:8px}.document-row,.service-history-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;padding:8px;border:1px solid #e2e8f0;border-radius:9px;margin-top:5px}.document-row>div,.service-history-row>div{display:flex;flex-direction:column;gap:2px}.document-row span,.service-history-row span{font-size:9px;color:#64748b}.vehicle-history summary{cursor:pointer;font-weight:900}.dark-mode{background:#0f172a!important;color:#e5e7eb}.dark-mode .panel,.dark-mode .entity-card,.dark-mode .vehicle-card,.dark-mode .dashboard-task-card,.dark-mode dialog,.dark-mode .auth-card{background:#111827!important;color:#e5e7eb!important;border-color:#334155!important}.dark-mode input,.dark-mode select,.dark-mode textarea{background:#0f172a!important;color:#e5e7eb!important;border-color:#475569!important}.dark-mode .tag,.dark-mode .detail-grid>div,.dark-mode .wealth-grid>div,.dark-mode .stat-grid>div,.dark-mode .report-grid>div,.dark-mode .assistant-insight,.dark-mode .important-item,.dark-mode .consumption-card{background:#1e293b!important;color:#e5e7eb!important;border-color:#334155!important}
@media(max-width:600px){.consumption-kpis,.wealth-grid,.stat-grid,.report-grid,.dashboard-widget-choices{grid-template-columns:1fr}.mini-bars>div{grid-template-columns:72px 1fr 72px}.document-row,.service-history-row{grid-template-columns:1fr auto}.document-row button,.service-history-row a{grid-column:auto}}
@media print{#yearReportPreview,#yearReportPreview *{visibility:visible!important}#yearReportPreview{position:absolute;left:0;top:0;width:100%;padding:24px;background:white;color:black}.bottom-nav,.topbar{display:none!important}}

/* V39 – Sanierungen statt Rücklagen */
.renovation-summary-grid-v39{grid-template-columns:repeat(3,minmax(0,1fr))}
.ren-planned{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}
.renovation-progress-v39{margin:10px 0 14px;padding:12px;border:1px solid #dbe4ee;border-radius:13px;background:#f8fafc}
.renovation-progress-v39>div{display:flex;justify-content:space-between;gap:10px;align-items:center}
.renovation-progress-v39>div span{font-size:10px;color:#64748b;font-weight:800}
.renovation-progress-v39>div strong{font-size:14px}
.renovation-progress-v39>i{display:block;height:10px;margin:8px 0 5px;border-radius:999px;overflow:hidden;background:#e2e8f0}
.renovation-progress-v39>i>b{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#2563eb,#22c55e)}
.renovation-progress-v39 small{font-size:9px;color:#64748b}
.renovation-timeline-v39{position:relative}
.renovation-row-v37{position:relative}
.renovation-timeline-dot{position:absolute;left:-8px;top:18px;width:9px;height:9px;border-radius:50%;background:#2563eb;border:2px solid #fff;box-shadow:0 0 0 2px #bfdbfe}
.renovation-row-price small{font-size:8px;color:#64748b}
.dashboard-ren-progress{margin-top:10px}
.dashboard-ren-objects{display:grid;gap:7px;margin-top:9px}
.dashboard-ren-object{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:9px 10px;border:1px solid #e2e8f0;border-radius:10px;background:#fff}
.dashboard-ren-object>div:first-child{display:flex;flex-direction:column;gap:2px}
.dashboard-ren-object span{font-size:9px;color:#64748b}
@media(max-width:600px){.renovation-summary-grid-v39{grid-template-columns:1fr}}

/* V40 Planung Redesign */
.planning-view-v40{max-width:1120px;margin:0 auto}.planning-hero-v40{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:22px 24px;margin-bottom:14px;border-radius:22px;background:linear-gradient(135deg,#0f172a,#172554 72%,#1d4ed8);color:#fff;box-shadow:0 18px 45px rgba(15,23,42,.14)}.planning-kicker-v40{font-size:9px;font-weight:1000;letter-spacing:.18em;color:#93c5fd}.planning-hero-v40 h2{margin:4px 0 5px;font-size:24px}.planning-hero-v40 p{margin:0;color:#cbd5e1;font-size:11px}.planning-hero-counts-v40{display:flex;gap:8px}.planning-hero-counts-v40>div{min-width:82px;padding:11px 14px;border:1px solid rgba(255,255,255,.16);border-radius:14px;background:rgba(255,255,255,.08);display:flex;flex-direction:column}.planning-hero-counts-v40 strong{font-size:21px}.planning-hero-counts-v40 span{font-size:9px;color:#cbd5e1}
.planning-tabs-v40{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:5px;background:#eef2f7;border-radius:16px;margin-bottom:13px}.planning-tabs-v40 button{border:0;background:transparent;border-radius:12px;padding:10px 16px;display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;text-align:left;font-weight:900;color:#475569}.planning-tabs-v40 button.active{background:linear-gradient(135deg,#2563eb,#3b82f6);color:#fff;box-shadow:0 8px 20px rgba(37,99,235,.18)}.planning-tabs-v40 small{font-size:8px;opacity:.75}.planning-tab-icon{font-size:16px}
.planning-toolbar-v40{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:14px 0}.planning-filters-v40{display:flex;gap:6px;padding:4px;background:#f1f5f9;border-radius:12px}.planning-filters-v40 button{border:0;background:transparent;border-radius:9px;padding:7px 12px;font-size:9px;font-weight:900;color:#64748b}.planning-filters-v40 button.active{background:#fff;color:#1d4ed8;box-shadow:0 2px 8px rgba(15,23,42,.08)}
.planning-list-v40{display:grid;gap:9px}.planning-card-v40{display:grid;grid-template-columns:24px 52px minmax(0,1fr);gap:10px;align-items:center;padding:12px 13px;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 6px 18px rgba(15,23,42,.035);transition:.18s ease}.planning-card-v40:hover{transform:translateY(-1px);box-shadow:0 10px 25px rgba(15,23,42,.07);border-color:#cbd5e1}.planning-card-v40.is-done{opacity:.7}.planning-card-check-v40{font-size:20px;color:#94a3b8;text-align:center}.planning-card-v40.is-done .planning-card-check-v40{color:#16a34a}.planning-card-icon-v40{width:46px;height:46px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:20px}.planning-card-icon-v40.task{background:#eff6ff}.planning-card-icon-v40.maintenance{background:#f0fdf4}.planning-card-photo-v40{width:46px;height:46px;border-radius:13px;object-fit:cover}
.planning-card-content-v40{display:flex;justify-content:space-between;gap:14px;align-items:center;min-width:0}.planning-card-main-v40{min-width:0;flex:1}.planning-card-title-v40{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.planning-card-title-v40>strong{font-size:13px;color:#0f172a}.planning-note-v40{font-size:8px;color:#64748b;max-width:380px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.planning-card-meta-v40{display:flex;gap:7px 14px;align-items:center;flex-wrap:wrap;margin-top:6px}.planning-card-meta-v40>span{font-size:9px;color:#64748b;display:inline-flex;align-items:center;gap:3px}.planning-card-meta-v40 b{color:#334155}.planning-date-v40{display:grid!important;grid-template-columns:auto auto;column-gap:3px}.planning-date-v40 small{grid-column:2;font-size:7px}.planning-date-v40.overdue,.planning-date-v40.overdue b{color:#dc2626}.planning-date-v40.soon,.planning-date-v40.soon b{color:#b45309}.planning-completed-v40,.planning-completed-v40 b{color:#15803d!important}
.planning-card-side-v40{display:flex;flex-direction:column;gap:8px;align-items:flex-end}.planning-priority-v40{font-size:8px;font-weight:1000;padding:5px 8px;border-radius:999px}.planning-priority-v40.urgent{background:#fee2e2;color:#b91c1c}.planning-priority-v40.high{background:#ffedd5;color:#c2410c}.planning-priority-v40.medium{background:#fef3c7;color:#92400e}.planning-priority-v40.low{background:#dbeafe;color:#1d4ed8}.planning-card-actions-v40{display:flex;gap:6px;align-items:center}.planning-done-badge-v40{font-size:8px;font-weight:900;color:#166534;background:#dcfce7;padding:5px 8px;border-radius:999px}.planning-empty-v40{padding:36px;text-align:center;border:1px dashed #cbd5e1;border-radius:18px;color:#64748b;display:flex;flex-direction:column;align-items:center;gap:4px}.planning-empty-v40>span{font-size:28px}.planning-empty-v40 strong{color:#334155}.planning-empty-v40 small{font-size:9px}
.planning-dialog-v40 form{max-width:590px}.dialog-title-row-v40>div{display:flex;gap:11px;align-items:center;margin-bottom:13px}.dialog-title-row-v40 h2{margin:0}.dialog-title-row-v40 p{margin:2px 0 0;color:#64748b;font-size:9px}.dialog-icon-v40{width:42px;height:42px;border-radius:13px;background:#eff6ff;display:flex;align-items:center;justify-content:center;font-size:20px}
.dark-mode .planning-tabs-v40,.dark-mode .planning-filters-v40{background:#111827}.dark-mode .planning-tabs-v40 button,.dark-mode .planning-filters-v40 button{color:#94a3b8}.dark-mode .planning-filters-v40 button.active{background:#1e293b;color:#93c5fd}.dark-mode .planning-card-v40{background:#111827;border-color:#334155}.dark-mode .planning-card-title-v40>strong,.dark-mode .planning-card-meta-v40 b{color:#e5e7eb}.dark-mode .planning-card-icon-v40.task,.dark-mode .planning-card-icon-v40.maintenance{background:#1e293b}
@media(max-width:720px){.planning-hero-v40{align-items:flex-start;flex-direction:column}.planning-hero-counts-v40{width:100%}.planning-hero-counts-v40>div{flex:1}.planning-tabs-v40 button{grid-template-columns:auto 1fr}.planning-tabs-v40 small{grid-column:2}.planning-toolbar-v40{align-items:stretch;flex-direction:column}.planning-add-v40{width:100%}.planning-filters-v40{width:100%}.planning-filters-v40 button{flex:1}.planning-card-v40{grid-template-columns:24px 46px minmax(0,1fr);align-items:start}.planning-card-content-v40{flex-direction:column;align-items:stretch}.planning-card-side-v40{align-items:stretch}.planning-card-actions-v40{justify-content:flex-end}.planning-card-meta-v40{display:grid;grid-template-columns:1fr 1fr}.planning-note-v40{max-width:210px}}
@media(max-width:460px){.planning-hero-v40{padding:17px}.planning-hero-v40 h2{font-size:20px}.planning-card-v40{grid-template-columns:22px 40px minmax(0,1fr);padding:10px}.planning-card-photo-v40,.planning-card-icon-v40{width:40px;height:40px}.planning-card-meta-v40{grid-template-columns:1fr}.planning-card-actions-v40 button{padding:7px 9px!important}}

.local-version-v040l{display:flex;justify-content:space-between;align-items:center;margin:10px 0;padding:10px 12px;border:1px solid #dbe4ee;border-radius:11px;background:#f8fafc}
.local-version-v040l span{font-size:10px;color:#64748b}
.local-version-v040l strong{font-size:12px;color:#0f172a}
.dark-mode .local-version-v040l{background:#1e293b;border-color:#334155}
.dark-mode .local-version-v040l strong{color:#e5e7eb}

/* 0.41l – Wartungs-Wiederholung */
.planning-delete-info-v041l{color:#64748b!important;font-size:8px!important}
.planning-delete-info-v041l b{color:inherit!important}

/* 0.42l – geplante vs. fällige Wartungen */
.planning-card-v40.is-planned{border-left:4px solid #60a5fa;background:linear-gradient(90deg,#eff6ff 0,#fff 18%)}
.planning-card-v40.is-planned .planning-card-check-v40{color:#2563eb}
.planning-planned-badge-v042l{font-size:8px;font-weight:900;color:#1d4ed8;background:#dbeafe;padding:6px 9px;border-radius:999px;white-space:nowrap}
.dark-mode .planning-card-v40.is-planned{background:linear-gradient(90deg,#172554 0,#111827 24%)}
.dark-mode .planning-planned-badge-v042l{background:#1e3a8a;color:#bfdbfe}

/* 0.43l – automatische Planungsreihenfolge */
.planning-sort-info-v043l{
 display:flex;align-items:center;min-height:32px;padding:7px 11px;
 border:1px solid #dbe4ee;border-radius:11px;background:#f8fafc;
 color:#64748b;font-size:9px;font-weight:800
}
.planning-section-label-v043l{
 display:flex;justify-content:space-between;align-items:center;
 margin:13px 2px 4px;padding:5px 2px;font-size:9px;font-weight:1000;
 letter-spacing:.02em
}
.planning-section-label-v043l span{display:flex;align-items:center;gap:6px}
.planning-section-label-v043l small{font-size:8px;font-weight:800;color:#94a3b8}
.planning-section-label-v043l.current{color:#b45309}
.planning-section-label-v043l.current span:before{content:'●';color:#f59e0b}
.planning-section-label-v043l.planned{color:#1d4ed8;margin-top:20px}
.planning-section-label-v043l.planned span:before{content:'◷';color:#3b82f6}
.planning-section-label-v043l.done{color:#15803d;margin-top:20px}
.planning-section-label-v043l.done span:before{content:'✓';color:#22c55e}
.dark-mode .planning-sort-info-v043l{background:#1e293b;border-color:#334155;color:#94a3b8}
@media(max-width:720px){
 .planning-sort-info-v043l{width:100%;box-sizing:border-box;justify-content:center}
}

/* 0.44l – Aufgaben/Wartungs-Verlauf */
.planning-tabs-v044l{grid-template-columns:repeat(3,1fr)}
.planning-history-v044l{display:grid;gap:8px}
.history-intro-v044l{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:8px 2px 4px;padding:9px 11px;border-radius:11px;background:#f8fafc;border:1px solid #e2e8f0}
.history-intro-v044l strong{font-size:11px}.history-intro-v044l span{font-size:8px;color:#64748b}
.history-card-v044l{display:grid;grid-template-columns:46px minmax(0,1fr);gap:10px;padding:11px 12px;border:1px solid #e2e8f0;border-radius:14px;background:#fff}
.history-icon-v044l{width:42px;height:42px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:18px}
.history-icon-v044l.task{background:#eff6ff}.history-icon-v044l.maintenance{background:#f0fdf4}
.history-main-v044l{min-width:0}.history-title-v044l{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.history-title-v044l strong{font-size:12px}.history-title-v044l span{font-size:8px;font-weight:900;color:#64748b;background:#f1f5f9;padding:3px 6px;border-radius:999px}
.history-meta-v044l{display:flex;gap:7px 13px;flex-wrap:wrap;margin-top:5px}.history-meta-v044l span{font-size:9px;color:#64748b}
.history-note-v044l{margin-top:7px;padding:7px 8px;border-radius:8px;background:#f8fafc;color:#475569;font-size:9px}
.dark-mode .history-intro-v044l,.dark-mode .history-card-v044l,.dark-mode .history-note-v044l{background:#111827;border-color:#334155}.dark-mode .history-title-v044l span{background:#1e293b;color:#cbd5e1}
@media(max-width:620px){
 .planning-tabs-v044l{grid-template-columns:1fr 1fr 1fr}
 .planning-tabs-v044l button{padding:9px 8px;grid-template-columns:1fr;text-align:center}
 .planning-tabs-v044l .planning-tab-icon{display:block}.planning-tabs-v044l small{grid-column:1!important}
 .history-intro-v044l{align-items:flex-start;flex-direction:column}
 .history-card-v044l{grid-template-columns:40px minmax(0,1fr)}
}

/* 0.45l – Konto Statistik */
.account-view-v045l{max-width:1120px;margin:0 auto}
.account-hero-v045l{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:19px 22px;margin-bottom:13px;border-radius:20px;background:linear-gradient(135deg,#0f172a,#172554 68%,#1d4ed8);color:#fff;box-shadow:0 16px 38px rgba(15,23,42,.12)}
.account-kicker-v045l{font-size:8px;font-weight:1000;letter-spacing:.18em;color:#93c5fd}.account-hero-v045l h2,.account-costplan-head-v045l h2{margin:3px 0 4px}.account-hero-v045l p,.account-costplan-head-v045l p{margin:0;font-size:10px;color:#cbd5e1}.account-add-cost-v045l{white-space:nowrap}
.account-stat-grid-v045l{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:13px}.account-stat-card-v045l{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:4px;padding:14px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 5px 16px rgba(15,23,42,.035)}.account-stat-card-v045l:after{content:'';position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--accent)}.account-stat-card-v045l.blue{--accent:#2563eb}.account-stat-card-v045l.green{--accent:#16a34a}.account-stat-card-v045l.orange{--accent:#f59e0b}.account-stat-card-v045l.purple{--accent:#7c3aed}.account-stat-icon-v045l{width:31px;height:31px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#f1f5f9;font-size:15px;margin-bottom:2px}.account-stat-card-v045l>span{font-size:9px;color:#64748b}.account-stat-card-v045l>strong{font-size:19px;color:#0f172a}.account-stat-card-v045l>small{font-size:8px;color:#94a3b8}
.account-object-layout-v045l{display:grid;grid-template-columns:180px minmax(0,1fr);gap:20px;align-items:center}.account-object-donut-v045l{width:145px;height:145px;border-radius:50%;display:grid;place-items:center;background:#e2e8f0;margin:auto;position:relative}.account-object-donut-v045l:after{content:'';position:absolute;inset:24px;background:#fff;border-radius:50%}.account-object-donut-v045l>div{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center}.account-object-donut-v045l strong{font-size:14px}.account-object-donut-v045l span{font-size:8px;color:#64748b}.account-object-list-v045l{display:grid}.account-object-row-v045l{display:grid;grid-template-columns:10px minmax(0,1fr) auto auto;gap:9px;align-items:center;padding:9px 3px;border-bottom:1px solid #eef2f7}.account-object-row-v045l:last-child{border-bottom:0}.account-object-row-v045l>i{width:8px;height:8px;border-radius:50%}.account-object-row-v045l>span{display:flex;flex-direction:column}.account-object-row-v045l small{font-size:8px;color:#94a3b8}.account-object-row-v045l>strong{font-size:10px}
.account-person-list-v045l{display:grid;gap:7px}.account-person-v045l{overflow:hidden;border:1px solid #e2e8f0;border-radius:14px;background:#fff}.account-person-summary-v045l{display:grid;grid-template-columns:42px minmax(140px,1.3fr) 1fr .8fr auto;gap:10px;align-items:center;padding:10px 11px}.account-avatar-v045l{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2563eb,#60a5fa);color:#fff;font-size:11px;font-weight:1000}.account-person-name-v045l,.account-person-value-v045l{display:flex;flex-direction:column;gap:2px}.account-person-name-v045l strong{font-size:11px}.account-person-name-v045l span,.account-person-value-v045l span{font-size:8px;color:#64748b}.account-person-value-v045l strong{font-size:10px}.account-person-toggle-v045l{border:1px solid #dbe4ee;border-radius:10px;background:#f8fafc;min-height:34px;padding:7px 9px;display:flex;align-items:center;gap:6px;color:#334155;font-size:8px;font-weight:900;cursor:pointer}.account-person-toggle-v045l b{font-size:15px;transition:.18s}.account-person-toggle-v045l.open b{transform:rotate(180deg)}
.account-person-details-v045l{padding:10px 12px 12px;border-top:1px solid #e2e8f0;background:#f8fafc}.account-person-details-title-v045l{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:8px}.account-person-details-title-v045l>div{display:flex;flex-direction:column}.account-person-details-title-v045l span{font-size:8px;color:#64748b}.account-person-cost-table-v045l{display:grid}.account-person-cost-head-v045l,.account-person-cost-row-v045l{display:grid;grid-template-columns:1.3fr 1fr .8fr .6fr .9fr;gap:8px;align-items:center;padding:7px 5px}.account-person-cost-head-v045l{font-size:7px;font-weight:1000;color:#64748b;text-transform:uppercase;border-bottom:1px solid #cbd5e1}.account-person-cost-row-v045l{font-size:9px;border-bottom:1px solid #e2e8f0}.account-person-cost-row-v045l>span:first-child{display:flex;flex-direction:column}.account-person-cost-row-v045l small{color:#64748b;font-size:8px}.account-person-cost-total-v045l{display:flex;justify-content:flex-end;gap:20px;padding:9px 5px 2px;font-size:9px;color:#1d4ed8}
.account-costplan-head-v045l{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:17px 2px 9px;margin-top:8px}.account-costplan-head-v045l .account-kicker-v045l{color:#2563eb}.account-costplan-head-v045l p{color:#64748b}.account-cost-list-v045l{display:grid;gap:9px}.account-cost-card-v045l{border-radius:16px}
.dark-mode .account-stat-card-v045l,.dark-mode .account-person-v045l,.dark-mode .account-object-donut-v045l:after{background:#111827!important}.dark-mode .account-stat-card-v045l>strong{color:#e5e7eb}.dark-mode .account-person-details-v045l,.dark-mode .account-person-toggle-v045l{background:#1e293b!important;border-color:#334155!important}.dark-mode .account-object-row-v045l{border-color:#334155}.dark-mode .account-person-cost-row-v045l{border-color:#334155}
@media(max-width:820px){.account-stat-grid-v045l{grid-template-columns:1fr 1fr}.account-object-layout-v045l{grid-template-columns:1fr}.account-object-donut-v045l{width:130px;height:130px}.account-person-summary-v045l{grid-template-columns:40px 1fr auto}.account-person-value-v045l{grid-column:2}.account-person-toggle-v045l{grid-column:3;grid-row:1/3}.account-person-toggle-v045l span{display:none}}
@media(max-width:560px){.account-hero-v045l{align-items:flex-start;flex-direction:column}.account-add-cost-v045l{width:100%}.account-stat-grid-v045l{grid-template-columns:1fr 1fr}.account-stat-card-v045l{padding:11px}.account-stat-card-v045l>strong{font-size:15px}.account-object-row-v045l{grid-template-columns:9px minmax(0,1fr);gap:6px}.account-object-row-v045l>strong{grid-column:2}.account-person-cost-head-v045l{display:none}.account-person-cost-row-v045l{grid-template-columns:1fr 1fr}.account-person-cost-row-v045l>span:first-child{grid-column:1/-1}.account-person-cost-row-v045l>strong:last-child{color:#1d4ed8}.account-costplan-head-v045l{align-items:flex-start;flex-direction:column}.account-costplan-head-v045l button{width:100%}}

/* 0.46l – Kostenpositionen passend zur Finanzübersicht */
.account-cost-list-v045l{display:grid!important;gap:11px!important}
.cost-modern-v046l{
 border:1px solid #e2e8f0;border-radius:18px;background:#fff;
 box-shadow:0 7px 22px rgba(15,23,42,.045);overflow:hidden;
 transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease
}
.cost-modern-v046l:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(15,23,42,.075);border-color:#cbd5e1}
.cost-modern-v046l.is-paid{opacity:.82}
.cost-modern-main-v046l{
 display:grid;grid-template-columns:50px minmax(0,1fr) minmax(110px,.55fr) auto;
 gap:12px;align-items:center;padding:14px 15px 11px
}
.cost-modern-icon-v046l{
 width:46px;height:46px;border-radius:14px;display:flex;align-items:center;justify-content:center;
 background:linear-gradient(135deg,#eff6ff,#dbeafe);font-size:20px
}
.cost-modern-title-v046l>span{
 display:block;margin-bottom:2px;font-size:7px;font-weight:1000;letter-spacing:.12em;
 text-transform:uppercase;color:#2563eb
}
.cost-modern-title-v046l h3{margin:0;font-size:14px;color:#0f172a}
.cost-modern-title-v046l p{margin:3px 0 0;font-size:9px;color:#64748b}
.cost-modern-object-v046l{display:flex;flex-direction:column;gap:2px}
.cost-modern-object-v046l span{font-size:8px;color:#94a3b8}
.cost-modern-object-v046l strong{font-size:10px;color:#334155}
.cost-modern-status-v046l{
 display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border-radius:999px;
 font-size:8px;font-weight:1000;white-space:nowrap
}
.cost-modern-status-v046l i{width:7px;height:7px;border-radius:50%}
.cost-modern-status-v046l.active{background:#dcfce7;color:#166534}.cost-modern-status-v046l.active i{background:#22c55e}
.cost-modern-status-v046l.paid{background:#e2e8f0;color:#475569}.cost-modern-status-v046l.paid i{background:#94a3b8}
.cost-modern-stats-v046l{
 display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:0 15px 12px
}
.cost-modern-stats-v046l>div{
 display:flex;flex-direction:column;gap:3px;padding:9px 10px;border:1px solid #e8edf3;
 border-radius:11px;background:#f8fafc
}
.cost-modern-stats-v046l span{font-size:8px;color:#64748b}
.cost-modern-stats-v046l strong{font-size:11px;color:#0f172a}
.cost-modern-paidinfo-v046l{
 display:flex;justify-content:space-between;gap:10px;align-items:center;
 margin:0 15px 11px;padding:8px 10px;border-radius:10px;background:#f1f5f9;
 color:#475569;font-size:8px
}
.cost-modern-paidinfo-v046l small{color:#64748b}
.cost-modern-allocation-v046l{
 margin:0 15px 12px;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden
}
.cost-modern-allocation-summary-v046l{
 display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;background:#fff
}
.cost-modern-allocation-summary-v046l>div{display:flex;flex-direction:column;gap:2px}
.cost-modern-allocation-summary-v046l span{font-size:8px;color:#64748b}
.cost-modern-allocation-summary-v046l strong{font-size:10px;color:#334155}
.cost-modern-toggle-v046l{
 border:0;background:#eff6ff;color:#1d4ed8;border-radius:9px;padding:7px 9px;
 display:flex;align-items:center;gap:6px;font-size:8px;font-weight:900;cursor:pointer
}
.cost-modern-toggle-v046l b{font-size:14px;transition:.18s}.cost-modern-toggle-v046l.open b{transform:rotate(180deg)}
.cost-modern-people-v046l{border-top:1px solid #e2e8f0;background:#f8fafc;padding:4px 10px}
.cost-modern-person-v046l{
 display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:8px;align-items:center;
 padding:7px 0;border-bottom:1px solid #e7edf4
}
.cost-modern-person-v046l:last-child{border-bottom:0}
.cost-person-avatar-v046l{
 width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;
 background:linear-gradient(135deg,#2563eb,#60a5fa);color:#fff;font-size:8px;font-weight:1000
}
.cost-modern-person-v046l>span{display:flex;flex-direction:column;gap:1px}
.cost-modern-person-v046l>span strong{font-size:9px}.cost-modern-person-v046l small{font-size:7px;color:#64748b}
.cost-modern-person-v046l>strong{font-size:9px;color:#1d4ed8}
.cost-modern-actions-v046l{
 display:flex;gap:7px;align-items:center;padding:10px 15px;background:#fbfdff;border-top:1px solid #eef2f7
}
.cost-modern-actions-v046l .danger{margin-left:auto}
.dark-mode .cost-modern-v046l,.dark-mode .cost-modern-allocation-summary-v046l{background:#111827!important;border-color:#334155!important}
.dark-mode .cost-modern-title-v046l h3,.dark-mode .cost-modern-object-v046l strong,.dark-mode .cost-modern-stats-v046l strong,.dark-mode .cost-modern-allocation-summary-v046l strong{color:#e5e7eb}
.dark-mode .cost-modern-stats-v046l>div,.dark-mode .cost-modern-people-v046l,.dark-mode .cost-modern-actions-v046l,.dark-mode .cost-modern-paidinfo-v046l{background:#1e293b!important;border-color:#334155!important}
.dark-mode .cost-modern-allocation-v046l{border-color:#334155}
@media(max-width:700px){
 .cost-modern-main-v046l{grid-template-columns:44px minmax(0,1fr) auto}
 .cost-modern-object-v046l{grid-column:2}.cost-modern-status-v046l{grid-column:3;grid-row:1/3}
 .cost-modern-stats-v046l{grid-template-columns:1fr 1fr}
}
@media(max-width:480px){
 .cost-modern-main-v046l{grid-template-columns:40px minmax(0,1fr)}
 .cost-modern-icon-v046l{width:38px;height:38px;font-size:17px}
 .cost-modern-object-v046l{grid-column:2}.cost-modern-status-v046l{grid-column:1/-1;grid-row:auto;justify-self:start}
 .cost-modern-stats-v046l{grid-template-columns:1fr 1fr;padding-left:10px;padding-right:10px}
 .cost-modern-allocation-v046l,.cost-modern-paidinfo-v046l{margin-left:10px;margin-right:10px}
 .cost-modern-allocation-summary-v046l{align-items:flex-start;flex-direction:column}
 .cost-modern-actions-v046l{padding:9px 10px;flex-wrap:wrap}
 .cost-modern-actions-v046l .danger{margin-left:0}
}

/* 0.47l – Kostenformular */
.account-costplan-head-v047l{justify-content:flex-start}
.cost-dialog-v047l form{max-width:650px}
.cost-dialog-title-v047l{display:flex;align-items:center;gap:11px;margin-bottom:13px}
.cost-dialog-title-v047l>span{
 width:42px;height:42px;border-radius:13px;display:flex;align-items:center;justify-content:center;
 background:linear-gradient(135deg,#dbeafe,#eff6ff);color:#1d4ed8;font-size:20px;font-weight:1000
}
.cost-dialog-title-v047l h2{margin:0}
.cost-dialog-title-v047l p{margin:2px 0 0;font-size:9px;color:#64748b}
.cost-dialog-v047l textarea{resize:vertical;min-height:72px}
.dark-mode .cost-dialog-title-v047l>span{background:#1e3a8a;color:#dbeafe}

/* 0.48l – Benutzer statt Personen */
.tenant-user-row-v048l{display:grid!important;grid-template-columns:42px minmax(170px,1.5fr) .7fr .7fr auto;gap:10px;align-items:center;padding:11px 10px!important}
.tenant-user-avatar-v048l{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2563eb,#60a5fa);color:#fff;font-size:10px;font-weight:1000}
.tenant-user-main-v048l{display:flex;flex-direction:column;gap:2px;min-width:0}.tenant-user-main-v048l>strong{display:flex;gap:5px;align-items:center}.tenant-user-main-v048l>span,.tenant-user-main-v048l>small{font-size:8px;color:#64748b}
.tenant-user-share-v048l{display:flex;flex-direction:column;gap:2px}.tenant-user-share-v048l span{font-size:8px;color:#94a3b8}.tenant-user-share-v048l strong{font-size:10px}
.tenant-user-actions-v048l{display:flex;gap:5px;justify-content:flex-end}
.tenant-user-modal-v048l form{max-width:650px}.tenant-user-modal-title-v048l{display:flex;gap:10px;align-items:center;margin-bottom:13px}.tenant-user-modal-title-v048l>span{width:42px;height:42px;border-radius:13px;display:flex;align-items:center;justify-content:center;background:#eff6ff;font-size:19px}.tenant-user-modal-title-v048l h2{margin:0}.tenant-user-modal-title-v048l p{margin:2px 0 0;font-size:9px;color:#64748b}
@media(max-width:760px){.tenant-user-row-v048l{grid-template-columns:38px minmax(0,1fr) auto}.tenant-user-share-v048l{grid-column:2}.tenant-user-actions-v048l{grid-column:3;grid-row:1/4;flex-direction:column}}

/* 0.49l – Benutzer-Kostendetails Fix */
.account-person-toggle-v045l.open{
 background:#eff6ff!important;
 border-color:#bfdbfe!important;
 color:#1d4ed8!important
}
.account-person-details-v045l:not(.hidden){
 animation:userCostDetailsV049L .16s ease-out
}
@keyframes userCostDetailsV049L{
 from{opacity:0;transform:translateY(-4px)}
 to{opacity:1;transform:translateY(0)}
}
.dark-mode .account-person-toggle-v045l.open{
 background:#172554!important;border-color:#1d4ed8!important;color:#bfdbfe!important
}

/* 0.50l – finaler Benutzer-Detailbutton Fix */
.account-person-toggle-v045l{
 pointer-events:auto!important;
 position:relative;
 z-index:2;
 cursor:pointer!important;
 user-select:none;
}
.account-person-toggle-v045l *{pointer-events:none}
.account-person-details-v045l.hidden{display:none!important}
.account-person-details-v045l:not(.hidden){display:block!important}

/* 0.51l – lokale Benutzer / NAS-ready */
.local-user-storage-v051l{border:1px solid #dbeafe!important}
.local-storage-badge-v051l{background:#dcfce7!important;color:#166534!important}
.local-user-storage-grid-v051l{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0}
.local-user-storage-grid-v051l>div{display:flex;flex-direction:column;gap:3px;padding:10px;border:1px solid #e2e8f0;border-radius:11px;background:#f8fafc}
.local-user-storage-grid-v051l span{font-size:8px;color:#64748b}
.local-user-storage-grid-v051l strong{font-size:10px;color:#0f172a}
.dark-mode .local-user-storage-grid-v051l>div{background:#1e293b;border-color:#334155}
.dark-mode .local-user-storage-grid-v051l strong{color:#e5e7eb}
@media(max-width:700px){.local-user-storage-grid-v051l{grid-template-columns:1fr 1fr}}

/* 0.52l – Mehr / zentrale Einstellungen */
.settings-hub-v052l{
  overflow:hidden;
  padding:0!important;
  border:1px solid #dfe7f1!important;
}
.settings-hub-head-v052l{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:flex-start;
  padding:18px 20px;
  border-bottom:1px solid #e7edf4;
  background:linear-gradient(135deg,#f8fbff,#f3f7fc);
}
.settings-kicker-v052l{
  display:block;
  margin-bottom:3px;
  color:#2563eb;
  font-size:8px;
  font-weight:1000;
  letter-spacing:.17em;
}
.settings-hub-head-v052l h2{margin:0;font-size:18px}
.settings-hub-head-v052l p{margin:4px 0 0;color:#64748b;font-size:9px}

.settings-hub-grid-v052l{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:0;
}
.settings-section-v052l{
  padding:17px 19px;
  border-bottom:1px solid #e7edf4;
}
.settings-section-v052l:nth-child(odd){border-right:1px solid #e7edf4}
.settings-dashboard-v052l,
.settings-basic-v052l{
  grid-column:1/-1;
  border-right:0!important;
}
.settings-basic-v052l{border-bottom:0}

.settings-section-title-v052l{
  display:flex;
  gap:10px;
  align-items:center;
  margin-bottom:12px;
}
.settings-section-icon-v052l{
  flex:0 0 37px;
  width:37px;
  height:37px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:11px;
  background:#eff6ff;
  color:#1d4ed8;
  font-size:16px;
  font-weight:1000;
}
.settings-section-title-v052l h3{
  margin:0;
  font-size:12px;
  color:#0f172a;
}
.settings-section-title-v052l p{
  margin:2px 0 0;
  font-size:8px;
  color:#64748b;
}

.settings-control-v052l{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
}
.settings-control-v052l>span{font-size:9px;font-weight:800;color:#334155}
.settings-control-v052l select{min-width:150px}

.settings-toggle-row-v052l{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding:10px 11px;
  border:1px solid #e2e8f0;
  border-radius:11px;
  background:#f8fafc;
}
.settings-toggle-row-v052l>span{display:flex;flex-direction:column;gap:2px}
.settings-toggle-row-v052l strong{font-size:9px}
.settings-toggle-row-v052l small{font-size:8px;color:#64748b}
.settings-toggle-row-v052l input{width:18px;height:18px}

.settings-dashboard-choices-v052l{
  margin-top:4px;
  padding:10px;
  border:1px solid #e2e8f0;
  border-radius:12px;
  background:#f8fafc;
}

.settings-basic-grid-v052l{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.settings-basic-grid-v052l label{
  margin:0;
}
.settings-save-v052l{
  width:100%;
  margin-top:12px;
  min-height:42px;
}

.dark-mode .settings-hub-head-v052l,
.dark-mode .settings-dashboard-choices-v052l,
.dark-mode .settings-toggle-row-v052l{
  background:#1e293b!important;
  border-color:#334155!important;
}
.dark-mode .settings-hub-v052l,
.dark-mode .settings-section-v052l{
  border-color:#334155!important;
}
.dark-mode .settings-section-title-v052l h3,
.dark-mode .settings-control-v052l>span{
  color:#e5e7eb;
}
.dark-mode .settings-section-icon-v052l{
  background:#172554;
  color:#bfdbfe;
}

@media(max-width:700px){
  .settings-hub-grid-v052l{grid-template-columns:1fr}
  .settings-section-v052l{
    grid-column:1!important;
    border-right:0!important;
  }
  .settings-basic-grid-v052l{grid-template-columns:1fr}
}

/* 0.60l – stabile Benutzer & Vollsicherung */
.settings-save-actions-v060l{display:grid;grid-template-columns:1fr 1.35fr;gap:9px;margin-top:13px}
.settings-save-actions-v060l .settings-save-v052l{width:100%;margin-top:0}
.settings-export-v060l{width:100%;min-height:43px;font-weight:900;box-shadow:0 8px 20px rgba(37,99,235,.15)}
.settings-export-note-v060l{margin:7px 2px 0;font-size:8px;color:#64748b}
@media(max-width:600px){.settings-save-actions-v060l{grid-template-columns:1fr}}

/* 0.61l – Mehrfach-Kreditverwaltung */
.loan-manager-summary-v061l{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}
.loan-manager-summary-v061l>div{display:flex;flex-direction:column;gap:3px;padding:10px 11px;border:1px solid #e2e8f0;border-radius:11px;background:#f8fafc}
.loan-manager-summary-v061l span{font-size:8px;color:#64748b}.loan-manager-summary-v061l strong{font-size:11px;color:#0f172a}
.loan-manager-list-v061l{display:grid;gap:9px}.loan-manager-card-v061l{border:1px solid #e2e8f0;border-radius:15px;background:#fff;overflow:hidden;box-shadow:0 5px 16px rgba(15,23,42,.035)}
.loan-manager-card-main-v061l{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 12px}
.loan-manager-icon-v061l{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#eff6ff;font-size:18px}
.loan-manager-card-main-v061l span{font-size:7px;color:#2563eb;font-weight:900}.loan-manager-card-main-v061l h3{margin:1px 0;font-size:12px}.loan-manager-card-main-v061l p{margin:0;color:#64748b;font-size:8px}
.loan-manager-progress-value-v061l{display:flex;flex-direction:column;text-align:right}.loan-manager-progress-value-v061l strong{font-size:12px}.loan-manager-progress-value-v061l span{color:#64748b}
.loan-manager-facts-v061l{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;padding:0 12px 10px}.loan-manager-facts-v061l>div{display:flex;flex-direction:column;gap:2px;padding:8px;border-radius:9px;background:#f8fafc}.loan-manager-facts-v061l span{font-size:7px;color:#64748b}.loan-manager-facts-v061l strong{font-size:9px}
.loan-manager-progress-v061l{height:5px;background:#e2e8f0;margin:0 12px 10px;border-radius:999px;overflow:hidden}.loan-manager-progress-v061l i{display:block;height:100%;background:linear-gradient(90deg,#2563eb,#22c55e);border-radius:999px}
.loan-manager-actions-v061l{display:flex;justify-content:flex-end;gap:6px;padding:9px 12px;border-top:1px solid #eef2f7;background:#fbfdff}
.loan-dialog-v061l form{max-width:650px}.loan-dialog-title-v061l{display:flex;gap:10px;align-items:center;margin-bottom:12px}.loan-dialog-title-v061l>span{width:42px;height:42px;border-radius:13px;background:#eff6ff;display:flex;align-items:center;justify-content:center;font-size:19px}.loan-dialog-title-v061l h2{margin:0}.loan-dialog-title-v061l p{margin:2px 0 0;font-size:9px;color:#64748b}
.dashboard-loan-row-v061l{display:grid;grid-template-columns:1.4fr .8fr .7fr .9fr;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid #e8edf3}.dashboard-loan-row-v061l:last-child{border-bottom:0}.dashboard-loan-row-v061l>span{display:flex;flex-direction:column;gap:2px}.dashboard-loan-row-v061l small{font-size:7px;color:#64748b}.dashboard-loan-row-v061l b,.dashboard-loan-row-v061l strong{font-size:9px}
.dark-mode .loan-manager-summary-v061l>div,.dark-mode .loan-manager-facts-v061l>div,.dark-mode .loan-manager-card-v061l,.dark-mode .loan-manager-actions-v061l{background:#111827!important;border-color:#334155!important}.dark-mode .loan-manager-summary-v061l strong{color:#e5e7eb}
@media(max-width:700px){.loan-manager-summary-v061l{grid-template-columns:1fr 1fr}.loan-manager-facts-v061l{grid-template-columns:1fr 1fr}.dashboard-loan-row-v061l{grid-template-columns:1fr 1fr}}

/* 0.62l – Kreditverwaltung nach Finanzierungsübersicht */
.loan-finance-v062l{padding:0!important;overflow:hidden}
.loan-finance-head-v062l{
 display:flex;justify-content:space-between;align-items:flex-start;gap:16px;
 padding:18px 20px;background:linear-gradient(135deg,#f8fbff,#eef5ff);border-bottom:1px solid #e5edf7
}
.loan-kicker-v062l{display:block;font-size:7px;letter-spacing:.18em;font-weight:1000;color:#2563eb;margin-bottom:4px}
.loan-finance-head-v062l h2{margin:0;font-size:19px}.loan-finance-head-v062l p{margin:4px 0 0;font-size:9px;color:#64748b}
.loan-overview-v062l{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid #e5edf7}
.loan-overview-v062l>div{display:flex;flex-direction:column;gap:3px;padding:15px 16px;border-right:1px solid #e5edf7}
.loan-overview-v062l>div:last-child{border-right:0}.loan-overview-v062l span{font-size:8px;color:#64748b}.loan-overview-v062l strong{font-size:17px}.loan-overview-v062l small{font-size:7px;color:#94a3b8}
.loan-overview-detail-v062l{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:12px 16px;background:#fbfdff;border-bottom:1px solid #e5edf7}
.loan-overview-detail-v062l>div{padding:9px 10px;border:1px solid #e5edf7;border-radius:10px;background:#fff;display:flex;flex-direction:column;gap:2px}
.loan-overview-detail-v062l span{font-size:7px;color:#64748b}.loan-overview-detail-v062l strong{font-size:10px}
.loan-section-title-v062l{padding:16px 18px 8px}.loan-section-title-v062l h3,.loan-analysis-head-v062l h3{margin:0;font-size:14px}.loan-section-title-v062l p,.loan-analysis-head-v062l p{margin:2px 0 0;font-size:8px;color:#64748b}
.loan-detail-list-v062l{display:grid;gap:10px;padding:0 16px 16px}
.loan-detail-card-v062l{border:1px solid #e2e8f0;border-radius:14px;overflow:hidden;background:#fff}
.loan-detail-top-v062l{display:grid;grid-template-columns:38px minmax(0,1fr) 130px auto;gap:10px;align-items:center;padding:11px 12px;background:#fbfdff;border-bottom:1px solid #edf2f7}
.loan-detail-index-v062l{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#2563eb;color:#fff;font-weight:1000}
.loan-detail-name-v062l span{font-size:7px;color:#64748b}.loan-detail-name-v062l h3{margin:1px 0 0;font-size:12px}
.loan-detail-rate-v062l{display:flex;flex-direction:column;text-align:right}.loan-detail-rate-v062l span{font-size:7px;color:#64748b}.loan-detail-rate-v062l strong{font-size:12px}
.loan-detail-actions-v062l{display:flex;gap:5px}
.loan-detail-primary-v062l,.loan-detail-secondary-v062l{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;padding:10px 12px}
.loan-detail-secondary-v062l{background:#fbfdff;border-top:1px solid #edf2f7}
.loan-detail-primary-v062l>div,.loan-detail-secondary-v062l>div{display:flex;flex-direction:column;gap:2px}
.loan-detail-primary-v062l span,.loan-detail-secondary-v062l span{font-size:7px;color:#64748b}
.loan-detail-primary-v062l strong,.loan-detail-secondary-v062l strong{font-size:9px}
.loan-detail-progress-v062l{height:5px;background:#e5e7eb}.loan-detail-progress-v062l i{display:block;height:100%;background:linear-gradient(90deg,#2563eb,#22c55e)}
.loan-analysis-grid-v062l{display:grid;grid-template-columns:1.5fr .8fr;gap:12px;padding:0 16px 16px}
.loan-analysis-card-v062l,.loan-plan-v062l{border:1px solid #e2e8f0;border-radius:14px;background:#fff;padding:13px}
.loan-analysis-head-v062l{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}
.loan-analysis-head-v062l select{min-width:150px}
.loan-balance-chart-v062l{min-height:230px}.loan-balance-chart-v062l svg{width:100%;height:210px;display:block}
.loan-chart-axis-v062l{stroke:#cbd5e1;stroke-width:1}.loan-chart-line-v062l{fill:none;stroke:#2563eb;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.loan-chart-label-v062l{font-size:10px;fill:#64748b}.loan-chart-foot-v062l{display:flex;justify-content:space-between;font-size:8px;color:#64748b;padding:0 5px}
.loan-rate-donut-wrap-v062l{display:grid;place-items:center;gap:15px;padding:15px 5px}
.loan-rate-donut-v062l{width:150px;height:150px;border-radius:50%;background:conic-gradient(#2563eb 0 var(--interest),#93c5fd var(--interest) 100%);display:grid;place-items:center}
.loan-rate-donut-v062l:before{content:"";width:105px;height:105px;border-radius:50%;background:#fff;grid-area:1/1}
.loan-rate-donut-v062l>div{grid-area:1/1;z-index:1;text-align:center;display:flex;flex-direction:column}.loan-rate-donut-v062l strong{font-size:12px}.loan-rate-donut-v062l span{font-size:7px;color:#64748b}
.loan-rate-legend-v062l{width:100%;display:grid;gap:7px}.loan-rate-legend-v062l>div{display:grid;grid-template-columns:10px 1fr auto;gap:7px;align-items:center;font-size:8px}
.loan-rate-legend-v062l i{width:8px;height:8px;border-radius:50%}.loan-rate-legend-v062l .interest{background:#2563eb}.loan-rate-legend-v062l .principal{background:#93c5fd}
.loan-plan-v062l{margin:0 16px 18px}
.loan-plan-table-v062l{overflow:auto;max-height:420px;border:1px solid #e5e7eb;border-radius:10px}
.loan-plan-head-v062l,.loan-plan-row-v062l{display:grid;grid-template-columns:1.05fr .9fr .9fr .9fr 1fr 1.1fr;gap:8px;align-items:center;padding:9px 10px;min-width:720px}
.loan-plan-head-v062l{position:sticky;top:0;background:#f8fafc;z-index:2;font-size:7px;color:#64748b;font-weight:900}
.loan-plan-row-v062l{border-top:1px solid #eef2f7;font-size:8px}.loan-plan-row-v062l strong{font-size:8px}
.dark-mode .loan-finance-head-v062l,.dark-mode .loan-overview-detail-v062l,.dark-mode .loan-detail-top-v062l,.dark-mode .loan-detail-secondary-v062l,.dark-mode .loan-plan-head-v062l{background:#1e293b!important}
.dark-mode .loan-detail-card-v062l,.dark-mode .loan-analysis-card-v062l,.dark-mode .loan-plan-v062l,.dark-mode .loan-overview-detail-v062l>div{background:#111827!important;border-color:#334155!important}
.dark-mode .loan-rate-donut-v062l:before{background:#111827}
@media(max-width:850px){
 .loan-overview-v062l,.loan-overview-detail-v062l{grid-template-columns:1fr 1fr}
 .loan-detail-primary-v062l,.loan-detail-secondary-v062l{grid-template-columns:1fr 1fr}
 .loan-analysis-grid-v062l{grid-template-columns:1fr}
 .loan-detail-top-v062l{grid-template-columns:38px 1fr}
 .loan-detail-rate-v062l{text-align:left}.loan-detail-actions-v062l{grid-column:2}
}

/* 0.63l – vereinfachtes Kreditformular */
.loan-dialog-v063l form{max-width:680px}
.loan-required-hint-v063l{
 display:flex;flex-direction:column;gap:2px;padding:9px 11px;margin-bottom:12px;
 border:1px solid #dbeafe;border-radius:11px;background:#f8fbff
}
.loan-required-hint-v063l strong{font-size:9px;color:#1d4ed8}
.loan-required-hint-v063l span{font-size:8px;color:#64748b}
.loan-auto-box-v063l{
 margin:10px 0;padding:9px 11px;border:1px solid #dbeafe;border-radius:11px;background:#eff6ff
}
.loan-auto-box-v063l .check-row{margin:0}
.loan-auto-box-v063l .check-row>span{display:flex;flex-direction:column;gap:2px}
.loan-auto-box-v063l small{font-size:8px;color:#64748b}
.loan-more-v063l{
 margin:11px 0;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;background:#fff
}
.loan-more-v063l summary{
 cursor:pointer;list-style:none;padding:11px 12px;font-size:9px;font-weight:900;
 display:flex;justify-content:space-between;align-items:center;background:#f8fafc
}
.loan-more-v063l summary::-webkit-details-marker{display:none}
.loan-more-v063l summary span{font-size:7px;color:#64748b;background:#e2e8f0;padding:3px 7px;border-radius:999px}
.loan-more-body-v063l{padding:12px;border-top:1px solid #e2e8f0}
.loan-preview-v063l{
 display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:11px 0
}
.loan-preview-v063l>div{
 padding:9px;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc;
 display:flex;flex-direction:column;gap:2px
}
.loan-preview-v063l>div span{font-size:7px;color:#64748b}
.loan-preview-v063l>div strong{font-size:9px}
.loan-preview-v063l>span{grid-column:1/-1;font-size:8px;color:#64748b;padding:8px}
.loan-bank-update-v063l{
 display:flex;justify-content:space-between;align-items:center;gap:12px;
 padding:10px 11px;margin:11px 0;border:1px dashed #bfdbfe;border-radius:11px;background:#fbfdff
}
.loan-bank-update-v063l>div{display:flex;flex-direction:column;gap:2px}
.loan-bank-update-v063l strong{font-size:9px}.loan-bank-update-v063l span{font-size:8px;color:#64748b}
.loan-detail-tertiary-v063l{
 display:flex;flex-wrap:wrap;gap:7px 16px;padding:8px 12px;border-top:1px solid #edf2f7;
 background:#fff;font-size:7px;color:#64748b
}
.loan-detail-tertiary-v063l strong{color:#0f172a}
.dark-mode .loan-more-v063l,.dark-mode .loan-more-v063l summary,.dark-mode .loan-preview-v063l>div,
.dark-mode .loan-bank-update-v063l,.dark-mode .loan-detail-tertiary-v063l,.dark-mode .loan-required-hint-v063l,
.dark-mode .loan-auto-box-v063l{background:#111827!important;border-color:#334155!important}
.dark-mode .loan-detail-tertiary-v063l strong{color:#e5e7eb}
@media(max-width:650px){
 .loan-preview-v063l{grid-template-columns:1fr 1fr}
 .loan-bank-update-v063l{align-items:stretch;flex-direction:column}
 .loan-bank-update-v063l button{width:100%}
}

/* 0.64l – Sondertilgung getrennt von Monatsrate */
.loan-extra-payment-v064l{
 font-weight:900!important;
 color:#7c3aed!important;
}
.loan-rate-legend-v062l .extra-v064l{
 background:#7c3aed;
}
.loan-overview-detail-v062l{
 grid-template-columns:repeat(5,1fr);
}
.loan-detail-secondary-v062l{
 grid-template-columns:repeat(6,1fr);
}
@media(max-width:850px){
 .loan-overview-detail-v062l{grid-template-columns:1fr 1fr}
 .loan-detail-secondary-v062l{grid-template-columns:1fr 1fr}
}

/* 0.65l – Tilgungsrechner statt Restschuld-Diagramm */
.loan-payoff-calculator-v065l{min-height:310px}
.loan-calc-input-v065l{
 display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;
 padding:12px;border:1px solid #dbeafe;border-radius:12px;background:#f8fbff
}
.loan-calc-input-v065l label{margin:0}
.loan-calc-input-v065l label span{display:block;font-size:8px;font-weight:900;margin-bottom:5px;color:#334155}
.loan-calc-actions-v065l{display:flex;gap:6px}
.loan-calc-actions-v065l button{min-height:38px}
.loan-calc-result-v065l{
 display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px
}
.loan-calc-result-v065l>div{
 display:flex;flex-direction:column;gap:3px;padding:10px;
 border:1px solid #e2e8f0;border-radius:10px;background:#fff
}
.loan-calc-result-v065l span{font-size:7px;color:#64748b}
.loan-calc-result-v065l strong{font-size:11px}
.loan-calc-note-v065l{
 margin-top:9px;padding:8px 10px;border-radius:9px;background:#f8fafc;
 font-size:7px;line-height:1.45;color:#64748b
}
.dark-mode .loan-calc-input-v065l,.dark-mode .loan-calc-result-v065l>div,.dark-mode .loan-calc-note-v065l{
 background:#111827!important;border-color:#334155!important
}
.dark-mode .loan-calc-input-v065l label span{color:#e5e7eb}
@media(max-width:650px){
 .loan-calc-input-v065l{grid-template-columns:1fr}
 .loan-calc-actions-v065l{display:grid;grid-template-columns:1fr 1fr}
 .loan-calc-result-v065l{grid-template-columns:1fr 1fr}
}

/* 0.66l – Betrag + Monat im Tilgungsrechner */
.loan-calc-input-v066l{
 grid-template-columns:minmax(0,1.15fr) minmax(150px,.7fr) auto;
}
.loan-calc-input-v066l label small{
 display:block;margin-top:4px;font-size:7px;color:#64748b
}
.loan-calc-input-v066l select{width:100%;min-height:38px}
@media(max-width:780px){
 .loan-calc-input-v066l{grid-template-columns:1fr 1fr}
 .loan-calc-actions-v065l{grid-column:1/-1}
}
@media(max-width:520px){
 .loan-calc-input-v066l{grid-template-columns:1fr}
 .loan-calc-actions-v065l{grid-column:auto}
}

/* 0.67l – schöner Tilgungsrechner + Vertragslaufzeit */
.loan-calc-panel-v067l{
 display:flex;
 align-items:flex-end;
 justify-content:space-between;
 gap:14px;
 padding:14px;
 border:1px solid #dbeafe;
 border-radius:14px;
 background:linear-gradient(135deg,#f8fbff,#f3f7ff);
}
.loan-calc-fields-v067l{
 display:grid;
 grid-template-columns:minmax(220px,1.25fr) minmax(160px,.75fr);
 gap:12px;
 flex:1;
}
.loan-calc-fields-v067l label{margin:0}
.loan-calc-fields-v067l label>span{
 display:block;
 margin-bottom:6px;
 font-size:8px;
 font-weight:900;
 color:#334155;
}
.loan-calc-fields-v067l select{
 width:100%;
 min-height:40px;
 border-radius:10px;
}
.loan-calc-money-v067l{
 display:flex;
 align-items:center;
 gap:0;
 border:1px solid #cbd5e1;
 border-radius:10px;
 overflow:hidden;
 background:#fff;
}
.loan-calc-money-v067l input{
 flex:1;
 min-width:0;
 border:0!important;
 border-radius:0!important;
 box-shadow:none!important;
}
.loan-calc-money-v067l b{
 padding:0 11px;
 white-space:nowrap;
 font-size:8px;
 color:#475569;
}
.loan-calc-fields-v067l small{
 display:block;
 margin-top:5px;
 font-size:7px;
 color:#64748b;
}
.loan-calc-buttons-v067l{
 display:flex;
 gap:7px;
}
.loan-calc-buttons-v067l button{
 min-width:105px;
 min-height:40px;
}
.loan-calc-result-v065l{
 grid-template-columns:repeat(4,1fr)!important;
}
.loan-calc-result-v065l>div{
 min-height:62px;
 justify-content:center;
}
.loan-duration-input-v067l{
 display:flex;
 align-items:center;
 border:1px solid #cbd5e1;
 border-radius:10px;
 overflow:hidden;
 background:#fff;
}
.loan-duration-input-v067l input{
 flex:1;
 border:0!important;
 border-radius:0!important;
 box-shadow:none!important;
}
.loan-duration-input-v067l span{
 padding:0 10px;
 font-size:8px;
 font-weight:800;
 color:#64748b;
}
.loan-detail-primary-v062l{
 grid-template-columns:repeat(6,1fr)!important;
}
.dark-mode .loan-calc-panel-v067l,
.dark-mode .loan-calc-money-v067l,
.dark-mode .loan-duration-input-v067l{
 background:#111827!important;
 border-color:#334155!important;
}
.dark-mode .loan-calc-fields-v067l label>span{color:#e5e7eb}
@media(max-width:850px){
 .loan-calc-panel-v067l{flex-direction:column;align-items:stretch}
 .loan-calc-buttons-v067l{display:grid;grid-template-columns:1fr 1fr}
 .loan-calc-buttons-v067l button{width:100%}
 .loan-calc-result-v065l{grid-template-columns:1fr 1fr!important}
 .loan-detail-primary-v062l{grid-template-columns:1fr 1fr!important}
}
@media(max-width:560px){
 .loan-calc-fields-v067l{grid-template-columns:1fr}
 .loan-calc-result-v065l{grid-template-columns:1fr!important}
}

/* 0.68l – maximale Sondertilgung ist nur Vertragsgrenze */
.loan-field-help-v068l{
 display:block;
 margin-top:4px;
 font-size:7px;
 line-height:1.35;
 color:#64748b;
 font-weight:600;
}
.dark-mode .loan-field-help-v068l{color:#94a3b8}

/* =========================================================
   0.71l – DASHBOARD ONLY
   Every selector is scoped to .dashboard-only-v071l so
   Konto / Objekte / Planung / Fahrzeuge / Mehr stay unchanged.
   ========================================================= */
.dashboard-only-v071l{gap:13px}
.view.dashboard-only-v071l.active{display:grid}

.dashboard-only-v071l .dashboard-status-v071l{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}
.dashboard-only-v071l .dashboard-status-v071l article{min-height:64px;border:1px solid #e2e8f0;border-radius:14px;background:#fff;display:flex;align-items:center;gap:11px;padding:11px 13px}
.dashboard-only-v071l .dashboard-status-v071l article>span{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#eff6ff;font-size:17px}
.dashboard-only-v071l .dashboard-status-v071l article>div{display:flex;flex-direction:column}
.dashboard-only-v071l .dashboard-status-v071l strong{font-size:17px;line-height:1}
.dashboard-only-v071l .dashboard-status-v071l small{font-size:7px;color:#64748b;margin-top:4px}

.dashboard-only-v071l .dash-important-grid-v071l{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.dashboard-only-v071l .dash-important-card-v071l{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:9px;align-items:center;padding:9px 10px;border:1px solid #e2e8f0;border-radius:12px;background:#fff}
.dashboard-only-v071l .dash-important-card-v071l.red{border-left:4px solid #ef4444}
.dashboard-only-v071l .dash-important-card-v071l.orange{border-left:4px solid #f59e0b}
.dashboard-only-v071l .dash-important-icon-v071l{width:32px;height:32px;border-radius:10px;background:#f8fafc;display:grid;place-items:center}
.dashboard-only-v071l .dash-important-card-v071l>div{display:flex;flex-direction:column}
.dashboard-only-v071l .dash-important-card-v071l strong{font-size:9px}
.dashboard-only-v071l .dash-important-card-v071l small{font-size:7px;color:#64748b}
.dashboard-only-v071l .dash-important-card-v071l>b{font-size:8px}
.dashboard-only-v071l .dash-ok-v071l{min-height:68px;display:flex;align-items:center;justify-content:center;gap:9px}
.dashboard-only-v071l .dash-ok-v071l>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#dcfce7;color:#15803d;font-weight:1000}
.dashboard-only-v071l .dash-ok-v071l>div{display:flex;flex-direction:column}
.dashboard-only-v071l .dash-ok-v071l small{color:#64748b}

.dashboard-only-v071l .dash-loan-summary-v071l{display:grid;grid-template-columns:180px 1fr;gap:18px;align-items:center}
.dashboard-only-v071l .dash-loan-donut-v071l{--p:0;width:150px;height:150px;margin:auto;border-radius:50%;background:conic-gradient(#2563eb calc(var(--p)*1%),#dbeafe 0);display:grid;place-items:center}
.dashboard-only-v071l .dash-loan-donut-v071l:before{content:"";width:108px;height:108px;background:#fff;border-radius:50%;grid-area:1/1}
.dashboard-only-v071l .dash-loan-donut-v071l>div{grid-area:1/1;z-index:1;display:flex;flex-direction:column;text-align:center}
.dashboard-only-v071l .dash-loan-donut-v071l strong{font-size:15px}
.dashboard-only-v071l .dash-loan-donut-v071l span{font-size:7px;color:#64748b}
.dashboard-only-v071l .dash-loan-kpis-v071l{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.dashboard-only-v071l .dash-loan-kpis-v071l>div{padding:10px;border:1px solid #e2e8f0;border-radius:11px;background:#f8fafc;display:flex;flex-direction:column}
.dashboard-only-v071l .dash-loan-kpis-v071l span{font-size:7px;color:#64748b}
.dashboard-only-v071l .dash-loan-kpis-v071l strong{font-size:11px}
.dashboard-only-v071l .dash-loan-cards-v071l{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:12px}
.dashboard-only-v071l .dash-loan-card-v071l{padding:10px;border:1px solid #e2e8f0;border-radius:13px;background:#fff}
.dashboard-only-v071l .dash-loan-card-head-v071l{display:grid;grid-template-columns:30px 1fr auto;gap:8px;align-items:center}
.dashboard-only-v071l .dash-loan-card-head-v071l>span{width:29px;height:29px;border-radius:9px;background:#eff6ff;display:grid;place-items:center}
.dashboard-only-v071l .dash-loan-card-head-v071l>div{display:flex;flex-direction:column}
.dashboard-only-v071l .dash-loan-card-head-v071l strong{font-size:9px}
.dashboard-only-v071l .dash-loan-card-head-v071l small{font-size:7px;color:#64748b}
.dashboard-only-v071l .dash-loan-card-head-v071l>b{font-size:9px;color:#2563eb}
.dashboard-only-v071l .dash-progress-v071l{height:5px;border-radius:999px;background:#e2e8f0;overflow:hidden;margin:7px 0}
.dashboard-only-v071l .dash-progress-v071l i{display:block;height:100%;background:linear-gradient(90deg,#2563eb,#22c55e);border-radius:999px}
.dashboard-only-v071l .dash-loan-values-v071l{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}
.dashboard-only-v071l .dash-loan-values-v071l>div{display:flex;flex-direction:column}
.dashboard-only-v071l .dash-loan-values-v071l span{font-size:6px;color:#64748b}
.dashboard-only-v071l .dash-loan-values-v071l strong{font-size:8px}

.dashboard-only-v071l .dash-consumption-grid-v071l{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.dashboard-only-v071l .dash-consumption-card-v071l{padding:11px;border:1px solid #e2e8f0;border-radius:14px;background:#fff}
.dashboard-only-v071l .dash-card-title-v071l{display:flex;justify-content:space-between;margin-bottom:9px}
.dashboard-only-v071l .dash-card-title-v071l strong{font-size:10px}
.dashboard-only-v071l .dash-card-title-v071l small{font-size:7px;color:#64748b}
.dashboard-only-v071l .dash-consumption-split-v071l{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.dashboard-only-v071l .dash-consumption-split-v071l>div{padding:9px;border-radius:11px;background:#f8fafc}
.dashboard-only-v071l .dash-metric-head-v071l{display:flex;justify-content:space-between}
.dashboard-only-v071l .dash-metric-head-v071l span{font-size:7px;color:#64748b}
.dashboard-only-v071l .dash-metric-head-v071l strong{font-size:9px}
.dashboard-only-v071l .dash-spark-v071l{height:65px;display:flex;align-items:flex-end;gap:4px;margin-top:8px}
.dashboard-only-v071l .dash-spark-v071l i{flex:1;min-height:5px;background:#2563eb;border-radius:4px 4px 2px 2px}
.dashboard-only-v071l .dash-spark-v071l.water i{background:#06b6d4}
.dashboard-only-v071l .dash-no-history-v071l{height:65px;display:grid;place-items:center;font-size:7px;color:#94a3b8}

.dashboard-only-v071l .dash-contribution-grid-v071l{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.dashboard-only-v071l .dash-user-card-v071l{display:grid;grid-template-columns:38px 1fr;gap:9px;align-items:center;padding:10px;border:1px solid #e2e8f0;border-radius:12px;background:#fff}
.dashboard-only-v071l .dash-user-avatar-v071l{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#2563eb;color:#fff;font-size:8px;font-weight:1000}
.dashboard-only-v071l .dash-user-line-v071l{display:flex;justify-content:space-between;gap:8px}
.dashboard-only-v071l .dash-user-line-v071l strong,.dashboard-only-v071l .dash-user-line-v071l b{font-size:9px}
.dashboard-only-v071l .dash-user-card-v071l small{font-size:7px;color:#64748b}

.dashboard-only-v071l .dash-two-column-v071l{display:grid;grid-template-columns:1fr 1fr;gap:13px;align-items:start}
.dashboard-only-v071l .dash-cost-bars-v071l{display:grid;gap:8px;margin-bottom:12px}
.dashboard-only-v071l .dash-cost-row-v071l{display:grid;grid-template-columns:105px 1fr 85px;gap:7px;align-items:center}
.dashboard-only-v071l .dash-cost-row-v071l>span{font-size:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dashboard-only-v071l .dash-cost-row-v071l>i{height:7px;background:#e2e8f0;border-radius:999px;overflow:hidden}
.dashboard-only-v071l .dash-cost-row-v071l>i>b{display:block;height:100%;background:linear-gradient(90deg,#f59e0b,#f97316)}
.dashboard-only-v071l .dash-cost-row-v071l>strong{text-align:right;font-size:8px}
.dashboard-only-v071l .dash-cost-list-v071l{display:grid;gap:6px;border-top:1px solid #edf2f7;padding-top:9px}
.dashboard-only-v071l .dash-cost-item-v071l{display:grid;grid-template-columns:32px 1fr auto;gap:8px;align-items:center;padding:7px;border-radius:9px;background:#f8fafc}
.dashboard-only-v071l .dash-cost-item-v071l>span{width:30px;height:30px;border-radius:9px;background:#fff;display:grid;place-items:center}
.dashboard-only-v071l .dash-cost-item-v071l>div{display:flex;flex-direction:column}
.dashboard-only-v071l .dash-cost-item-v071l strong{font-size:8px}
.dashboard-only-v071l .dash-cost-item-v071l small{font-size:6px;color:#64748b}
.dashboard-only-v071l .dash-cost-item-v071l>b{display:flex;flex-direction:column;text-align:right;font-size:8px}

.dashboard-only-v071l .dash-property-facts-v071l{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:8px}
.dashboard-only-v071l .dash-property-facts-v071l>div{padding:7px;border-radius:9px;background:#f8fafc;display:flex;flex-direction:column}
.dashboard-only-v071l .dash-property-facts-v071l span{font-size:6px;color:#64748b}
.dashboard-only-v071l .dash-property-facts-v071l strong{font-size:8px}
.dashboard-only-v071l .dash-energy-v071l{margin-top:9px;padding:9px;border-radius:11px;background:#f8fafc}
.dashboard-only-v071l .dash-energy-v071l>div:first-child{display:flex;justify-content:space-between;margin-bottom:7px}
.dashboard-only-v071l .dash-energy-scale-v071l{display:grid;grid-template-columns:repeat(8,1fr);gap:3px}
.dashboard-only-v071l .dash-energy-scale-v071l span{height:22px;border-radius:5px;display:grid;place-items:center;color:#fff;font-size:7px;font-weight:1000;opacity:.5}
.dashboard-only-v071l .dash-energy-scale-v071l span.active{opacity:1;transform:scale(1.08);box-shadow:0 0 0 2px #fff}
.dashboard-only-v071l .energy-a{background:#138a36}.dashboard-only-v071l .energy-b{background:#44a833}.dashboard-only-v071l .energy-c{background:#8fbd26}.dashboard-only-v071l .energy-d{background:#d7c51d}.dashboard-only-v071l .energy-e{background:#f2a51f}.dashboard-only-v071l .energy-f{background:#e9781d}.dashboard-only-v071l .energy-g{background:#d94832}.dashboard-only-v071l .energy-h{background:#a91f2a}

.dark-mode .dashboard-only-v071l .dashboard-status-v071l article,
.dark-mode .dashboard-only-v071l .dash-important-card-v071l,
.dark-mode .dashboard-only-v071l .dash-loan-card-v071l,
.dark-mode .dashboard-only-v071l .dash-consumption-card-v071l,
.dark-mode .dashboard-only-v071l .dash-user-card-v071l{background:#111827!important;border-color:#334155!important}
.dark-mode .dashboard-only-v071l .dash-loan-kpis-v071l>div,
.dark-mode .dashboard-only-v071l .dash-consumption-split-v071l>div,
.dark-mode .dashboard-only-v071l .dash-cost-item-v071l,
.dark-mode .dashboard-only-v071l .dash-property-facts-v071l>div,
.dark-mode .dashboard-only-v071l .dash-energy-v071l{background:#1e293b!important}
.dark-mode .dashboard-only-v071l .dash-loan-donut-v071l:before{background:#111827}

@media(max-width:900px){
 .dashboard-only-v071l .dashboard-status-v071l{grid-template-columns:1fr 1fr}
 .dashboard-only-v071l .dash-important-grid-v071l,
 .dashboard-only-v071l .dash-loan-cards-v071l,
 .dashboard-only-v071l .dash-consumption-grid-v071l,
 .dashboard-only-v071l .dash-contribution-grid-v071l,
 .dashboard-only-v071l .dash-two-column-v071l{grid-template-columns:1fr}
}
@media(max-width:650px){
 .dashboard-only-v071l .dash-loan-summary-v071l{grid-template-columns:1fr}
 .dashboard-only-v071l .dash-loan-kpis-v071l{grid-template-columns:1fr 1fr}
 .dashboard-only-v071l .dash-consumption-split-v071l{grid-template-columns:1fr}
 .dashboard-only-v071l .dash-loan-values-v071l{grid-template-columns:1fr 1fr}
}

/* 0.72l – Seitenumschaltung absichern */
.view.dashboard-only-v071l:not(.active){
 display:none!important;
}
.view.dashboard-only-v071l.active{
 display:grid!important;
}

/* =========================================================
   0.73l – Fahrzeugübersicht NUR auf Dashboard kompakter
   ========================================================= */
.dashboard-only-v071l #dashVehiclesV071L{
 display:grid;
 grid-template-columns:repeat(3,minmax(0,1fr));
 gap:10px;
 align-items:stretch;
}
.dashboard-only-v071l .dash-vehicle-card-v073l{
 min-width:0;
 overflow:hidden;
 border:1px solid #e2e8f0;
 border-radius:14px;
 background:#fff;
 box-shadow:0 5px 16px rgba(15,23,42,.035);
 display:flex;
 flex-direction:column;
}
.dashboard-only-v071l .dash-vehicle-media-v073l{
 position:relative;
 height:145px;
 overflow:hidden;
 background:#f1f5f9;
}
.dashboard-only-v071l .dash-vehicle-media-v073l img{
 width:100%;
 height:100%;
 display:block;
 object-fit:cover;
}
.dashboard-only-v071l .dash-vehicle-placeholder-v073l{
 width:100%;
 height:100%;
 display:grid;
 place-items:center;
 font-size:34px;
 background:linear-gradient(135deg,#eff6ff,#f8fafc);
}
.dashboard-only-v071l .dash-vehicle-plate-v073l,
.dashboard-only-v071l .dash-vehicle-year-v073l{
 position:absolute;
 top:9px;
 padding:4px 7px;
 border-radius:999px;
 font-size:7px;
 font-weight:900;
 backdrop-filter:blur(8px);
 background:rgba(255,255,255,.88);
 color:#0f172a;
 box-shadow:0 2px 8px rgba(15,23,42,.08);
}
.dashboard-only-v071l .dash-vehicle-plate-v073l{left:9px;color:#1d4ed8}
.dashboard-only-v071l .dash-vehicle-year-v073l{right:9px}
.dashboard-only-v071l .dash-vehicle-body-v073l{
 padding:10px;
 display:flex;
 flex-direction:column;
 gap:9px;
 flex:1;
}
.dashboard-only-v071l .dash-vehicle-title-v073l>div{
 display:flex;
 flex-direction:column;
 gap:2px;
}
.dashboard-only-v071l .dash-vehicle-title-v073l strong{
 font-size:10px;
 line-height:1.15;
}
.dashboard-only-v071l .dash-vehicle-title-v073l small{
 font-size:7px;
 color:#64748b;
}
.dashboard-only-v071l .dash-vehicle-facts-v073l{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:6px;
 margin-top:auto;
}
.dashboard-only-v071l .dash-vehicle-facts-v073l>div{
 padding:7px 8px;
 border-radius:9px;
 background:#f8fafc;
 display:flex;
 flex-direction:column;
 min-width:0;
}
.dashboard-only-v071l .dash-vehicle-facts-v073l span{
 font-size:6px;
 color:#64748b;
}
.dashboard-only-v071l .dash-vehicle-facts-v073l strong{
 margin-top:1px;
 font-size:8px;
 overflow:hidden;
 text-overflow:ellipsis;
 white-space:nowrap;
}
.dark-mode .dashboard-only-v071l .dash-vehicle-card-v073l{
 background:#111827!important;
 border-color:#334155!important;
}
.dark-mode .dashboard-only-v071l .dash-vehicle-facts-v073l>div{
 background:#1e293b!important;
}
@media(max-width:950px){
 .dashboard-only-v071l #dashVehiclesV071L{
  grid-template-columns:repeat(2,minmax(0,1fr));
 }
}
@media(max-width:600px){
 .dashboard-only-v071l #dashVehiclesV071L{
  grid-template-columns:1fr;
 }
 .dashboard-only-v071l .dash-vehicle-media-v073l{
  height:170px;
 }
}

/* 0.74l – Aufgaben-Notizen + Verlauf Admin-Löschen */
#taskForm textarea[name="note"]{
 width:100%;
 min-height:82px;
 resize:vertical;
}
.planning-task-note-v074l{
 display:block!important;
 margin-top:6px;
 padding:7px 9px;
 border:1px solid #dbeafe;
 border-radius:9px;
 background:#f8fbff;
 line-height:1.4;
 white-space:pre-wrap;
}
.history-admin-actions-v074l{
 margin-top:8px;
 padding-top:7px;
 border-top:1px solid #e2e8f0;
 display:flex;
 justify-content:flex-end;
}
.dark-mode .planning-task-note-v074l{
 background:#172033!important;
 border-color:#334155!important;
}
.dark-mode .history-admin-actions-v074l{
 border-color:#334155!important;
}

/* =========================================================
   0.75l – Sanierungskosten: Geplant / Offen / Bezahlt
   ========================================================= */
.renovation-calc-preview-v075l{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:8px;
 margin:9px 0 4px;
}
.renovation-calc-preview-v075l>div{
 padding:9px 10px;
 border:1px solid #dbeafe;
 border-radius:10px;
 background:#f8fbff;
 display:flex;
 justify-content:space-between;
 align-items:center;
}
.renovation-calc-preview-v075l span{font-size:7px;color:#64748b}
.renovation-calc-preview-v075l strong{font-size:10px}
.renovation-form-help-v075l{
 margin:4px 0 10px;
 font-size:7px;
 line-height:1.45;
 color:#64748b;
}

.renovation-cost-list-v075l{
 margin-top:10px;
 border:1px solid #e2e8f0;
 border-radius:12px;
 overflow:hidden;
 background:#fff;
}
.renovation-cost-list-v075l>summary{
 list-style:none;
 cursor:pointer;
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:10px;
 padding:11px 12px;
 background:#f8fafc;
 user-select:none;
}
.renovation-cost-list-v075l>summary::-webkit-details-marker{display:none}
.renovation-cost-list-v075l>summary>span{
 display:flex;
 flex-direction:column;
 gap:2px;
}
.renovation-cost-list-v075l>summary strong{font-size:9px}
.renovation-cost-list-v075l>summary small{font-size:7px;color:#64748b}
.renovation-list-arrow-v075l{
 width:27px;
 height:27px;
 border-radius:8px;
 background:#eaf2ff;
 color:#2563eb;
 display:grid;
 place-items:center;
 font-size:15px;
 transition:transform .18s ease;
}
.renovation-cost-list-v075l[open] .renovation-list-arrow-v075l{transform:rotate(180deg)}
.renovation-cost-list-v075l .renovation-list{padding:9px}

.renovation-row-price-v075l{
 display:grid!important;
 grid-template-columns:1fr;
 gap:4px!important;
 min-width:125px;
}
.renovation-row-price-v075l>div{
 display:flex;
 justify-content:space-between;
 gap:9px;
 align-items:center;
 padding:5px 7px;
 border-radius:7px;
 background:#f8fafc;
}
.renovation-row-price-v075l span{font-size:6px;color:#64748b}
.renovation-row-price-v075l strong{font-size:8px}
.renovation-row-price-v075l .paid strong{color:#15803d}
.renovation-row-price-v075l .open strong{color:#d97706}

.renovation-entry-progress-v075l{
 display:flex;
 align-items:center;
 gap:7px;
 margin-top:7px;
 max-width:280px;
}
.renovation-entry-progress-v075l>i{
 flex:1;
 height:5px;
 border-radius:999px;
 overflow:hidden;
 background:#e2e8f0;
}
.renovation-entry-progress-v075l>i>b{
 display:block;
 height:100%;
 border-radius:999px;
 background:linear-gradient(90deg,#2563eb,#22c55e);
}
.renovation-entry-progress-v075l>span{
 font-size:7px;
 font-weight:800;
 color:#475569;
}

.dark-mode .renovation-calc-preview-v075l>div,
.dark-mode .renovation-cost-list-v075l,
.dark-mode .renovation-cost-list-v075l>summary,
.dark-mode .renovation-row-price-v075l>div{
 background:#1e293b!important;
 border-color:#334155!important;
}
@media(max-width:650px){
 .renovation-calc-preview-v075l{grid-template-columns:1fr}
 .renovation-row-price-v075l{min-width:0}
}

/* =========================================================
   0.77l – Zählerstände separat + bessere Verbrauchsanalyse
   ========================================================= */
.meter-history-v077l{display:grid;gap:10px;padding-top:8px}
.meter-history-head-v077l{display:flex;align-items:center;justify-content:space-between;gap:10px}
.meter-history-head-v077l>div{display:flex;flex-direction:column;gap:2px}
.meter-history-head-v077l strong{font-size:9px}.meter-history-head-v077l small{font-size:7px;color:#64748b}
.meter-current-grid-v077l{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.meter-current-grid-v077l>div{padding:10px;border:1px solid #dbe5f0;border-radius:11px;background:#f8fafc;display:flex;flex-direction:column;gap:3px}
.meter-current-grid-v077l span{font-size:7px;color:#64748b}.meter-current-grid-v077l strong{font-size:11px}
.meter-history-list-v077l{display:grid;gap:7px}
.meter-history-row-v077l{display:grid;grid-template-columns:110px 1fr 1fr;gap:8px;align-items:center;padding:9px;border:1px solid #e2e8f0;border-radius:11px;background:#fff}
.meter-history-date-v077l{display:flex;flex-direction:column;gap:3px}.meter-history-date-v077l>span{width:max-content;padding:2px 5px;border-radius:999px;background:#dbeafe;color:#2563eb;font-size:6px;font-weight:900}
.meter-history-row-v077l>div:not(.meter-history-date-v077l){display:flex;flex-direction:column}.meter-history-row-v077l span,.meter-history-row-v077l small{font-size:6px;color:#64748b}.meter-history-row-v077l strong{font-size:8px}
.meter-previous-v077l{margin-top:8px;padding:9px 10px;border-radius:10px;background:#f8fafc;border:1px solid #e2e8f0;display:flex;flex-direction:column;gap:3px}.meter-previous-v077l strong{font-size:8px}.meter-previous-v077l span{font-size:7px;color:#64748b}

/* Dashboard Verbrauch */
.dashboard-only-v071l .dash-consumption-card-v077l{border:1px solid #e2e8f0;border-radius:15px;background:#fff;padding:12px;display:grid;gap:10px}
.dashboard-only-v071l .dash-consumption-head-v077l{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.dashboard-only-v071l .dash-consumption-head-v077l>div{display:flex;flex-direction:column;gap:2px}
.dashboard-only-v071l .dash-consumption-head-v077l strong{font-size:10px}.dashboard-only-v071l .dash-consumption-head-v077l small{font-size:7px;color:#64748b}
.dashboard-only-v071l .dash-consumption-head-v077l>span{padding:4px 7px;border-radius:999px;background:#eff6ff;color:#2563eb;font-size:7px;font-weight:900}
.dashboard-only-v071l .dash-meter-current-v077l,.dashboard-only-v071l .dash-last-period-v077l{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.dashboard-only-v071l .dash-meter-current-v077l>div{padding:9px 10px;border-radius:11px;border:1px solid #e2e8f0;background:#f8fafc;display:flex;flex-direction:column}
.dashboard-only-v071l .dash-meter-current-v077l span,.dashboard-only-v071l .dash-last-period-v077l span{font-size:6px;color:#64748b}
.dashboard-only-v071l .dash-meter-current-v077l strong{font-size:10px;margin-top:2px}
.dashboard-only-v071l .dash-last-period-v077l>div{padding:9px 10px;border-radius:11px;background:#f8fbff;border-left:4px solid #2563eb;display:flex;flex-direction:column}
.dashboard-only-v071l .dash-last-period-v077l>div:nth-child(2){border-left-color:#06b6d4}
.dashboard-only-v071l .dash-last-period-v077l strong{font-size:12px;margin:2px 0}.dashboard-only-v071l .dash-last-period-v077l small{font-size:6px;color:#64748b}
.dashboard-only-v071l .dash-meter-charts-v077l{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.dashboard-only-v071l .dash-meter-charts-v077l>section{padding:10px;border-radius:11px;background:#f8fafc;border:1px solid #edf2f7}
.dashboard-only-v071l .dash-meter-charts-v077l>section>div:first-child{display:flex;flex-direction:column;margin-bottom:8px}.dashboard-only-v071l .dash-meter-charts-v077l>section>div:first-child strong{font-size:8px}.dashboard-only-v071l .dash-meter-charts-v077l>section>div:first-child small{font-size:6px;color:#64748b}
.dashboard-only-v071l .dash-meter-trend-v077l{display:grid;gap:6px}
.dashboard-only-v071l .dash-meter-trend-row-v077l{display:grid;grid-template-columns:66px 1fr 78px;gap:6px;align-items:center}
.dashboard-only-v071l .dash-meter-trend-row-v077l>span{font-size:6px;color:#64748b}.dashboard-only-v071l .dash-meter-trend-row-v077l>i{height:7px;border-radius:999px;background:#e2e8f0;overflow:hidden}.dashboard-only-v071l .dash-meter-trend-row-v077l>i>b{display:block;height:100%;border-radius:999px;background:#2563eb}.dashboard-only-v071l .dash-meter-charts-v077l>section:nth-child(2) .dash-meter-trend-row-v077l>i>b{background:#06b6d4}.dashboard-only-v071l .dash-meter-trend-row-v077l>strong{text-align:right;font-size:7px}
.dashboard-only-v071l .dash-meter-empty-v077l{min-height:54px;display:grid;place-items:center;text-align:center;font-size:7px;line-height:1.4;color:#94a3b8}

.dark-mode .meter-current-grid-v077l>div,.dark-mode .meter-history-row-v077l,.dark-mode .meter-previous-v077l{background:#1e293b!important;border-color:#334155!important}
.dark-mode .dashboard-only-v071l .dash-consumption-card-v077l{background:#111827!important;border-color:#334155!important}
.dark-mode .dashboard-only-v071l .dash-meter-current-v077l>div,.dark-mode .dashboard-only-v071l .dash-last-period-v077l>div,.dark-mode .dashboard-only-v071l .dash-meter-charts-v077l>section{background:#1e293b!important;border-color:#334155!important}
@media(max-width:700px){
 .meter-history-row-v077l{grid-template-columns:1fr 1fr}.meter-history-date-v077l{grid-column:1/-1}
 .dashboard-only-v071l .dash-meter-charts-v077l{grid-template-columns:1fr}
}
@media(max-width:520px){
 .meter-current-grid-v077l,.dashboard-only-v071l .dash-meter-current-v077l,.dashboard-only-v071l .dash-last-period-v077l{grid-template-columns:1fr}
}

/* 0.78l flexible Zähler */
.custom-meter-fields-v078l{margin-top:-4px}.meter-type-overview-v078l{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.meter-type-chip-v078l{display:grid;grid-template-columns:30px 1fr;gap:7px;align-items:center;padding:8px;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc}.meter-type-chip-v078l>span{width:30px;height:30px;border-radius:9px;background:#fff;display:grid;place-items:center;font-size:14px}.meter-type-chip-v078l>div{display:flex;flex-direction:column;min-width:0}.meter-type-chip-v078l small{font-size:6px;color:#64748b}.meter-type-chip-v078l strong{font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meter-history-row-v078l{display:grid;grid-template-columns:minmax(120px,1fr) minmax(180px,1.7fr) auto;gap:9px;align-items:center;padding:9px;border:1px solid #e2e8f0;border-radius:11px;background:#fff}.meter-history-type-v078l{display:grid;grid-template-columns:32px 1fr;gap:7px;align-items:center}.meter-history-type-v078l>span{width:32px;height:32px;border-radius:9px;background:#f8fafc;display:grid;place-items:center;font-size:15px}.meter-history-type-v078l>div,.meter-history-value-v078l{display:flex;flex-direction:column}.meter-history-type-v078l strong,.meter-history-value-v078l strong{font-size:8px}.meter-history-type-v078l small,.meter-history-value-v078l span,.meter-history-value-v078l small{font-size:6px;color:#64748b}.dashboard-only-v071l .dash-flex-meter-grid-v078l{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.dashboard-only-v071l .dash-flex-meter-card-v078l{padding:10px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;display:grid;gap:9px}.dashboard-only-v071l .dash-flex-meter-title-v078l{display:grid;grid-template-columns:32px 1fr;gap:7px;align-items:center}.dashboard-only-v071l .dash-flex-meter-title-v078l>span{width:32px;height:32px;border-radius:9px;background:#fff;display:grid;place-items:center;font-size:15px}.dashboard-only-v071l .dash-flex-meter-title-v078l>div{display:flex;flex-direction:column}.dashboard-only-v071l .dash-flex-meter-title-v078l strong{font-size:8px}.dashboard-only-v071l .dash-flex-meter-title-v078l small{font-size:6px;color:#64748b}.dashboard-only-v071l .dash-flex-meter-kpis-v078l{display:grid;grid-template-columns:1fr 1fr;gap:7px}.dashboard-only-v071l .dash-flex-meter-kpis-v078l>div{padding:7px;background:#fff;border-radius:8px;display:flex;flex-direction:column}.dashboard-only-v071l .dash-flex-meter-kpis-v078l span,.dashboard-only-v071l .dash-flex-meter-kpis-v078l small{font-size:6px;color:#64748b}.dashboard-only-v071l .dash-flex-meter-kpis-v078l strong{font-size:8px}@media(max-width:700px){.meter-type-overview-v078l{grid-template-columns:1fr 1fr}.meter-history-row-v078l{grid-template-columns:1fr auto}.meter-history-value-v078l{grid-column:1/-1}.dashboard-only-v071l .dash-flex-meter-grid-v078l{grid-template-columns:1fr}}@media(max-width:480px){.meter-type-overview-v078l{grid-template-columns:1fr}.dashboard-only-v071l .dash-flex-meter-kpis-v078l{grid-template-columns:1fr}}

/* =========================================================
   0.79l – Supabase Cloud-Synchronisation
   ========================================================= */
.cloud-gate-box-v079l{
 margin-top:12px;padding:11px;border:1px solid #dbeafe;border-radius:12px;background:#f8fbff;
}
.cloud-gate-box-v079l>span{font-size:8px;font-weight:900;color:#2563eb}
.cloud-gate-box-v079l p{font-size:7px;line-height:1.45;color:#64748b;margin:5px 0 8px}

.cloud-settings-v079l{margin-top:12px}
.cloud-settings-grid-v079l{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.cloud-settings-grid-v079l>div{padding:10px;border:1px solid #e2e8f0;border-radius:11px;background:#f8fafc;display:flex;flex-direction:column;gap:2px}
.cloud-settings-grid-v079l span{font-size:7px;color:#64748b}
.cloud-settings-grid-v079l strong{font-size:9px}
.cloud-settings-actions-v079l{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.cloud-info-v079l{margin-top:10px;padding:9px 10px;border-radius:10px;background:#f8fafc;display:flex;flex-direction:column;gap:2px}
.cloud-info-v079l strong{font-size:8px}.cloud-info-v079l span{font-size:7px;color:#64748b;line-height:1.45}
#cloudStatusTagV079L[data-mode="online"]{background:#dcfce7;color:#15803d}
#cloudStatusTagV079L[data-mode="error"]{background:#fee2e2;color:#b91c1c}

.cloud-modal-v079l{max-width:520px}
.cloud-dialog-actions-v079l{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:12px}
.cloud-message-v079l{margin-top:9px;padding:8px 10px;border-radius:9px;background:#dcfce7;color:#166534;font-size:7px;line-height:1.45}
.cloud-message-v079l.is-error{background:#fee2e2;color:#991b1b}

.dark-mode .cloud-gate-box-v079l,.dark-mode .cloud-settings-grid-v079l>div,.dark-mode .cloud-info-v079l{
 background:#1e293b!important;border-color:#334155!important
}
@media(max-width:650px){
 .cloud-settings-grid-v079l{grid-template-columns:1fr}
 .cloud-dialog-actions-v079l{display:grid;grid-template-columns:1fr}
}

/* 0.79m – Cloud Diagnose */
.cloud-diagnostic-v079m{
 margin-top:8px;padding:8px 10px;border-radius:9px;background:#f8fafc;border:1px solid #e2e8f0;
 display:flex;justify-content:space-between;gap:10px;align-items:center;
}
.cloud-diagnostic-v079m span{font-size:7px;color:#64748b}
.cloud-diagnostic-v079m strong{font-size:8px}
#cloudSdkStatusV079M[data-ok="1"]{color:#15803d}
#cloudSdkStatusV079M[data-ok="0"]{color:#b91c1c}
#cloudRegisterBtnV079L:disabled,
#cloudFormV079L button[type="submit"]:disabled,
#cloudTestBtnV079M:disabled{opacity:.55;cursor:wait}
.dark-mode .cloud-diagnostic-v079m{background:#1e293b!important;border-color:#334155!important}

/* 0.79n – detaillierte Supabase-Diagnose */
.cloud-diagnostic-grid-v079n{
 display:grid;
 grid-template-columns:repeat(4,minmax(0,1fr));
 gap:0;
 padding:0;
 overflow:hidden;
}
.cloud-diagnostic-grid-v079n>div{
 padding:8px 10px;
 display:flex;
 flex-direction:column;
 gap:2px;
 border-right:1px solid #e2e8f0;
}
.cloud-diagnostic-grid-v079n>div:last-child{border-right:0}
.cloud-diagnostic-grid-v079n span{font-size:6px;color:#64748b}
.cloud-diagnostic-grid-v079n strong{font-size:7px;overflow-wrap:anywhere}
#cloudServerStatusV079N[data-ok="1"],
#cloudKeyStatusV079N[data-ok="1"],
#cloudAuthStatusV079N[data-ok="1"]{color:#15803d}
#cloudServerStatusV079N[data-ok="0"],
#cloudKeyStatusV079N[data-ok="0"],
#cloudAuthStatusV079N[data-ok="0"]{color:#b91c1c}
.dark-mode .cloud-diagnostic-grid-v079n>div{border-color:#334155!important}
@media(max-width:750px){
 .cloud-diagnostic-grid-v079n{grid-template-columns:1fr 1fr}
 .cloud-diagnostic-grid-v079n>div:nth-child(2){border-right:0}
 .cloud-diagnostic-grid-v079n>div:nth-child(-n+2){border-bottom:1px solid #e2e8f0}
}


/* 0.79p – Registrieren immer klickbar */
#cloudRegisterBtnV079L{
 opacity:1;
 cursor:pointer;
}
#cloudRegisterBtnV079L:disabled{
 opacity:.55;
 cursor:wait;
}

/* 0.79q – direkter Cloud-Registrierungs-Hardfix */
#cloudRegisterBtnV079L.cloud-register-direct-v079q{
 background:var(--brand)!important;
 color:#fff!important;
 opacity:1!important;
 pointer-events:auto!important;
 cursor:pointer!important;
 position:relative;
 z-index:10;
}
.cloud-click-status-v079q{
 margin-top:8px;
 padding:8px 10px;
 border:1px solid #dbeafe;
 border-radius:9px;
 background:#f8fbff;
 color:#334155;
 font-size:7px;
 line-height:1.4;
 font-weight:700;
}
.dark-mode .cloud-click-status-v079q{
 background:#1e293b!important;
 border-color:#334155!important;
 color:#e2e8f0!important;
}

/* 0.86a – sichere Cloud-Mitgliederverwaltung */
.cloud-security-v080a{border:1px solid #dbeafe}
.cloud-invite-grid-v080a{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0}
.cloud-invite-grid-v080a label{font-size:12px;font-weight:800}
.cloud-invite-grid-v080a input,.cloud-invite-grid-v080a select{width:100%;margin-top:6px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff;font:inherit}
.cloud-invite-result-v080a{margin-top:10px;padding:11px;border-radius:12px;background:#ecfdf5;border:1px solid #bbf7d0;color:#166534;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.cloud-invite-result-v080a.is-error{background:#fef2f2;border-color:#fecaca;color:#991b1b}
.cloud-members-head-v080a{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:16px}
.cloud-members-v080a{display:grid;gap:8px;margin-top:8px}
.cloud-member-row-v080a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px;border:1px solid var(--line);border-radius:12px;background:#f8fafc}
.cloud-member-row-v080a>div{display:flex;flex-direction:column;gap:2px;min-width:0}.cloud-member-row-v080a span,.cloud-member-row-v080a small{font-size:11px;color:var(--muted);overflow-wrap:anywhere}
@media(max-width:620px){.cloud-invite-grid-v080a{grid-template-columns:1fr}.cloud-member-row-v080a{align-items:flex-start;flex-direction:column}.cloud-member-row-v080a button{width:100%}}
.dark-mode .cloud-security-v080a,.dark-mode .cloud-member-row-v080a{background:#0f172a!important;border-color:#334155!important}.dark-mode .cloud-invite-grid-v080a input,.dark-mode .cloud-invite-grid-v080a select{background:#1e293b!important;color:#f8fafc!important;border-color:#334155!important}

/* 0.86b Clean Install */
.clean-install-note{color:var(--muted);font-size:12px}

/* =========================================================
   0.86c – Login Redesign
   ========================================================= */
.auth-gate{
  background:
    radial-gradient(circle at 15% 10%,rgba(37,99,235,.12),transparent 34%),
    radial-gradient(circle at 90% 85%,rgba(15,23,42,.08),transparent 30%),
    linear-gradient(180deg,#f8fafc 0%,#eef4fb 100%);
}
.auth-shell{max-width:460px!important}
.auth-brand{
  text-align:center;
  margin-bottom:18px;
}
.auth-brand .eyebrow{
  font-size:9px;
  letter-spacing:.18em;
  margin-bottom:8px;
}
.auth-brand h1{
  margin:0;
  font-size:36px;
  letter-spacing:-.035em;
}
.auth-brand-subtitle-v080c{
  margin:8px 0 0!important;
  color:#64748b!important;
  font-size:13px!important;
}
.auth-card{
  border:1px solid rgba(148,163,184,.22);
  box-shadow:0 24px 60px rgba(15,23,42,.12)!important;
  border-radius:26px!important;
  padding:26px!important;
  background:rgba(255,255,255,.96)!important;
  backdrop-filter:blur(18px);
}
.auth-card h2{
  margin-bottom:6px!important;
  font-size:27px!important;
  letter-spacing:-.02em;
}
.auth-help-v080c{
  margin:0 0 20px!important;
  font-size:13px!important;
  color:#64748b!important;
}
.login-form-v080c label{
  font-size:12px!important;
  margin:14px 0!important;
}
.login-form-v080c input{
  margin-top:7px!important;
  min-height:50px;
  border-radius:14px!important;
  border:1px solid #cbd5e1!important;
  background:#f8fafc!important;
  padding:13px 14px!important;
  transition:.16s ease;
}
.login-form-v080c input:focus{
  outline:none;
  border-color:#2563eb!important;
  background:#fff!important;
  box-shadow:0 0 0 4px rgba(37,99,235,.10);
}
.login-password-wrap-v080c{
  position:relative;
}
.login-password-wrap-v080c input{
  padding-right:50px!important;
}
.login-password-toggle-v080c{
  position:absolute;
  right:9px;
  top:50%;
  transform:translateY(-42%);
  width:34px;
  height:34px;
  border:0;
  border-radius:10px;
  background:transparent;
  color:#64748b;
  cursor:pointer;
  font-size:16px;
}
.login-password-toggle-v080c:hover{
  background:#e2e8f0;
}
.login-main-btn-v080c{
  margin-top:20px!important;
  min-height:52px;
  border-radius:15px!important;
  font-size:15px!important;
  box-shadow:0 10px 24px rgba(37,99,235,.25);
}
.login-register-btn-v080c{
  min-height:48px;
  border-radius:15px!important;
  margin-top:10px!important;
  opacity:.48;
  cursor:not-allowed!important;
}
.login-register-btn-v080c::after{
  content:" · folgt später";
  font-size:10px;
  font-weight:700;
  opacity:.65;
}
.auth-error{
  margin-top:12px!important;
  border-radius:12px!important;
}
.dark-mode .auth-gate{
  background:
    radial-gradient(circle at 15% 10%,rgba(37,99,235,.18),transparent 34%),
    linear-gradient(180deg,#0f172a,#111827);
}
.dark-mode .auth-card{
  background:rgba(15,23,42,.96)!important;
  border-color:#334155!important;
}
.dark-mode .login-form-v080c input{
  background:#111827!important;
  border-color:#334155!important;
  color:#f8fafc!important;
}
@media(max-width:520px){
  .auth-shell{padding:18px!important}
  .auth-card{padding:20px!important;border-radius:22px!important}
  .auth-brand h1{font-size:31px}
}

/* =========================================================
   0.86d – Private Verwaltung App Login
   ========================================================= */
.auth-gate{
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:44px 20px 70px;
  background:
    radial-gradient(circle at 8% 85%,rgba(37,99,235,.10),transparent 32%),
    radial-gradient(circle at 93% 18%,rgba(59,130,246,.08),transparent 30%),
    linear-gradient(145deg,#fbfdff 0%,#eef5ff 100%)!important;
}
.auth-shell{
  width:min(100%,620px)!important;
  max-width:620px!important;
}
.auth-brand-v080d{
  text-align:center;
  margin:0 auto 28px;
}
.auth-brand-v080d .auth-app-icon-v080d{
  width:82px;height:82px;
  margin:0 auto 18px;
  display:grid;place-items:center;
  border-radius:24px;
  color:#1261df;
  background:linear-gradient(145deg,#f9fbff,#e7f0ff);
  border:1px solid #d8e5f8;
  box-shadow:0 14px 32px rgba(37,99,235,.13);
}
.auth-app-icon-v080d svg{width:58px;height:58px;overflow:visible}
.auth-brand-v080d h1{
  margin:0!important;
  font-size:39px!important;
  line-height:1.08;
  letter-spacing:-.045em;
  color:#0f172a;
}
.auth-brand-v080d p{
  margin:10px 0 0!important;
  color:#536176!important;
  font-size:15px!important;
  line-height:1.45;
}
.auth-card-v080d{
  padding:30px!important;
  border-radius:26px!important;
  border:1px solid #dce4ef!important;
  background:rgba(255,255,255,.97)!important;
  box-shadow:0 24px 56px rgba(15,23,42,.10)!important;
}
.login-card-head-v080d{
  display:flex;
  align-items:center;
  gap:16px;
  margin-bottom:22px;
}
.login-user-icon-v080d{
  width:56px;height:56px;
  flex:0 0 56px;
  display:grid;place-items:center;
  border-radius:50%;
  color:#1769e0;
  background:#eff6ff;
  border:1px solid #d8e8ff;
}
.login-user-icon-v080d svg{width:34px;height:34px}
.login-card-head-v080d h2{
  margin:0 0 4px!important;
  font-size:27px!important;
  letter-spacing:-.025em;
}
.login-card-head-v080d .auth-help{
  margin:0!important;
  color:#64748b!important;
  font-size:13px!important;
}
.login-form-v080d label{
  display:block;
  margin:15px 0!important;
  font-size:12px!important;
  font-weight:800!important;
  color:#172033;
}
.login-input-wrap-v080d{
  position:relative;
  margin-top:7px;
}
.login-input-wrap-v080d input{
  width:100%;
  height:54px;
  margin:0!important;
  padding:0 48px 0 48px!important;
  border:1px solid #d7dee9!important;
  border-radius:13px!important;
  background:#fff!important;
  color:#0f172a!important;
  font:inherit;
  transition:border-color .15s ease,box-shadow .15s ease;
}
.login-input-wrap-v080d input::placeholder{color:#94a3b8}
.login-input-wrap-v080d input:focus{
  outline:0;
  border-color:#2c73e8!important;
  box-shadow:0 0 0 4px rgba(37,99,235,.09);
}
.login-field-icon-v080d{
  position:absolute;
  z-index:2;
  left:16px;top:50%;
  transform:translateY(-50%);
  color:#1769e0;
  font-size:19px;
  line-height:1;
  pointer-events:none;
}
.login-input-wrap-v080d .login-password-toggle-v080c{
  position:absolute!important;
  right:10px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:34px!important;height:34px!important;
  padding:0!important;margin:0!important;
  border:0!important;border-radius:9px!important;
  background:transparent!important;
  color:#64748b!important;
  cursor:pointer!important;
}
.login-main-btn-v080d{
  width:100%;
  height:54px;
  margin:22px 0 0!important;
  border-radius:13px!important;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  background:linear-gradient(90deg,#105fe3,#0b6bec)!important;
  box-shadow:0 10px 22px rgba(37,99,235,.22);
  font-size:15px!important;
}
.login-register-btn-v080d{
  width:100%;
  height:50px;
  margin:10px 0 0!important;
  border:1px solid #e1e6ee!important;
  border-radius:13px!important;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  background:#f8fafc!important;
  color:#718096!important;
  font-size:14px!important;
  opacity:1!important;
  cursor:not-allowed!important;
}
.login-register-btn-v080d small{
  font-size:11px;
  font-weight:600;
  color:#94a3b8;
}
.auth-error{
  margin:14px 0 0!important;
  padding:13px 15px!important;
  border:1px solid #fecaca!important;
  border-radius:12px!important;
  background:#fff1f2!important;
  color:#dc2626!important;
  font-size:13px!important;
  font-weight:800!important;
}
.auth-error:not(.hidden)::before{
  content:"!";
  display:inline-grid;
  place-items:center;
  width:20px;height:20px;
  margin-right:8px;
  border:2px solid currentColor;
  border-radius:50%;
  font-size:12px;
  vertical-align:middle;
}
.dark-mode .auth-gate{
  background:linear-gradient(145deg,#0b1120,#111827)!important;
}
.dark-mode .auth-brand-v080d h1{color:#f8fafc}
.dark-mode .auth-brand-v080d p{color:#94a3b8!important}
.dark-mode .auth-card-v080d{
  background:rgba(15,23,42,.98)!important;
  border-color:#334155!important;
}
.dark-mode .login-form-v080d label{color:#e2e8f0}
.dark-mode .login-input-wrap-v080d input{
  background:#111827!important;
  border-color:#334155!important;
  color:#f8fafc!important;
}
@media(max-width:600px){
  .auth-gate{padding:28px 14px 50px}
  .auth-brand-v080d{margin-bottom:20px}
  .auth-brand-v080d .auth-app-icon-v080d{width:68px;height:68px;border-radius:20px}
  .auth-app-icon-v080d svg{width:48px;height:48px}
  .auth-brand-v080d h1{font-size:31px!important}
  .auth-brand-v080d p{font-size:13px!important}
  .auth-card-v080d{padding:22px!important;border-radius:22px!important}
}

/* 0.86e – Passwort-Auge */
#loginPasswordToggleV080C svg{
 width:21px;
 height:21px;
 display:block;
}
#loginPasswordToggleV080C.is-visible{
 color:#2563eb!important;
 background:#eff6ff!important;
}
#loginPasswordToggleV080C .hidden{
 display:none!important;
}




/* =========================================================
   v0.86 – Lesbarkeit überall / gezielte Typografie
   ========================================================= */

/* Grundschrift */
html {
  font-size: 18px;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  font-size: 1rem;
  line-height: 1.5;
}

button,
input,
select,
textarea {
  font-size: 0.95rem;
  line-height: 1.35;
}

/* Standardtexte und Beschriftungen */
p,
li,
label,
td,
th,
summary,
figcaption {
  font-size: 0.95rem;
  line-height: 1.5;
}

/* Kleine Texte nicht mehr unter lesbare Größen drücken */
small,
.muted,
.hint,
.helper,
.meta,
.subtitle,
.subtext,
.caption,
.kicker,
.eyebrow,
.badge,
.pill,
.tag,
.chip,
.stat-label,
.metric-label,
.card-subtitle,
.card-meta,
.empty-text,
.empty-state,
.status-text,
.info-text {
  font-size: 0.86rem !important;
  line-height: 1.4 !important;
}

/* Überschriften */
h1 { font-size: clamp(2rem, 2.6vw, 2.7rem); line-height: 1.13; }
h2 { font-size: clamp(1.45rem, 1.9vw, 1.95rem); line-height: 1.18; }
h3 { font-size: clamp(1.15rem, 1.4vw, 1.45rem); line-height: 1.24; }
h4 { font-size: 1.02rem; line-height: 1.3; }

/* Übersicht / Dashboard */
.dashboard-card,
.overview-card,
.widget-card,
.kpi-card,
.stat-card,
.summary-card {
  font-size: 1rem;
}

.dashboard-card p,
.overview-card p,
.widget-card p,
.kpi-card p,
.stat-card p,
.summary-card p {
  font-size: 0.92rem !important;
}

.dashboard-card small,
.overview-card small,
.widget-card small,
.kpi-card small,
.stat-card small,
.summary-card small {
  font-size: 0.78rem !important;
}

.dashboard-card strong,
.overview-card strong,
.widget-card strong,
.kpi-card strong,
.stat-card strong,
.summary-card strong {
  font-size: 1rem;
}

/* KPI-Leiste oben */
.top-stats,
.dashboard-stats,
.summary-stats,
.kpi-row,
.stats-row {
  font-size: 0.92rem;
}

.top-stats strong,
.dashboard-stats strong,
.summary-stats strong,
.kpi-row strong,
.stats-row strong {
  font-size: 1.02rem !important;
}

/* Planung / Aufgaben / Wartung / Verlauf */
.planning-card,
.task-card,
.maintenance-card,
.history-card,
.timeline-card {
  font-size: 1rem;
}

.planning-card p,
.task-card p,
.maintenance-card p,
.history-card p,
.timeline-card p {
  font-size: 0.92rem !important;
}

.planning-card small,
.task-card small,
.maintenance-card small,
.history-card small,
.timeline-card small {
  font-size: 0.78rem !important;
}

/* Konto / Finanzierung / Kredite / Tilgungsplan */
.finance-card,
.credit-card,
.loan-card,
.finance-summary,
.cost-card,
.cost-position-card,
.amortization-card {
  font-size: 1rem;
}

.finance-card p,
.credit-card p,
.loan-card p,
.finance-summary p,
.cost-card p,
.cost-position-card p,
.amortization-card p {
  font-size: 0.92rem !important;
}

.finance-card small,
.credit-card small,
.loan-card small,
.finance-summary small,
.cost-card small,
.cost-position-card small,
.amortization-card small {
  font-size: 0.78rem !important;
}

/* Tabellenwerte – besonders Tilgungsplan/Kosten */
table {
  font-size: 0.92rem;
}

table th {
  font-size: 0.86rem !important;
  font-weight: 800;
}

table td {
  font-size: 0.9rem !important;
}

/* Diagramm- und Kennzahltexte */
.chart-label,
.chart-value,
.donut-label,
.donut-value,
.legend,
.legend-item,
.axis-label,
.graph-label,
.progress-label {
  font-size: 0.78rem !important;
  line-height: 1.35 !important;
}

.donut-center,
.chart-center,
.ring-center {
  font-size: 0.9rem !important;
}

/* Monats-Einzahlungen / Benutzerkarten */
.user-contribution,
.contribution-row,
.user-row,
.member-row {
  font-size: 0.92rem;
}

.user-contribution small,
.contribution-row small,
.user-row small,
.member-row small {
  font-size: 0.78rem !important;
}

/* Cloud / Einstellungen / Benutzerspeicher */
.settings-card,
.cloud-card,
.cloud-section,
.security-card,
.backup-card,
.user-storage-card,
.local-mode-card {
  font-size: 1rem;
}

.settings-card p,
.cloud-card p,
.cloud-section p,
.security-card p,
.backup-card p,
.user-storage-card p,
.local-mode-card p {
  font-size: 0.92rem !important;
}

.settings-card small,
.cloud-card small,
.cloud-section small,
.security-card small,
.backup-card small,
.user-storage-card small,
.local-mode-card small {
  font-size: 0.78rem !important;
}

/* Kalender */
.calendar,
.calendar-grid {
  font-size: 0.92rem;
}

.calendar button,
.calendar-grid button,
.calendar-day {
  font-size: 0.9rem !important;
}

.calendar .weekday,
.calendar-grid .weekday {
  font-size: 0.78rem !important;
}

/* Buttons allgemein */
button {
  min-height: 42px;
}

.primary,
.secondary,
.danger,
button.primary,
button.secondary {
  font-size: 0.92rem !important;
  font-weight: 800;
}

/* Navigationsleiste */
.bottom-nav,
.bottom-nav button,
nav.bottom-nav,
.app-nav,
.app-nav button {
  font-size: 0.86rem !important;
}

.bottom-nav .icon,
.app-nav .icon {
  font-size: 1.15rem !important;
}

/* Formular-Hilfetexte */
form small,
form .hint,
form .helper {
  font-size: 0.78rem !important;
}

/* Explizit winzige Inline-Schriften etwas anheben */
[style*="font-size:6px"],
[style*="font-size: 6px"] {
  font-size: 12px !important;
}
[style*="font-size:7px"],
[style*="font-size: 7px"] {
  font-size: 12px !important;
}
[style*="font-size:8px"],
[style*="font-size: 8px"] {
  font-size: 13px !important;
}
[style*="font-size:9px"],
[style*="font-size: 9px"] {
  font-size: 13px !important;
}
[style*="font-size:10px"],
[style*="font-size: 10px"] {
  font-size: 14px !important;
}
[style*="font-size:11px"],
[style*="font-size: 11px"] {
  font-size: 14px !important;
}

/* Desktop */
@media (min-width: 1100px) {
  html { font-size: 19px; }

  .page,
  main,
  .content {
    line-height: 1.55;
  }

  table td { font-size: 0.92rem !important; }
}

/* Tablet */
@media (min-width: 601px) and (max-width: 1099px) {
  html { font-size: 17.5px; }
}

/* Handy */
@media (max-width: 600px) {
  html { font-size: 16.5px; }

  body { line-height: 1.48; }

  p,
  li,
  label,
  td,
  th {
    font-size: 0.95rem;
  }

  button,
  input,
  select,
  textarea {
    font-size: 16px !important; /* verhindert iOS-Autozoom */
  }

  small,
  .muted,
  .hint,
  .helper,
  .meta,
  .subtitle,
  .subtext,
  .caption,
  .kicker,
  .eyebrow,
  .badge,
  .pill,
  .tag,
  .chip,
  .stat-label,
  .metric-label,
  .card-subtitle,
  .card-meta {
    font-size: 13px !important;
  }

  .dashboard-card p,
  .overview-card p,
  .widget-card p,
  .planning-card p,
  .task-card p,
  .maintenance-card p,
  .finance-card p,
  .credit-card p,
  .loan-card p,
  .settings-card p,
  .cloud-card p {
    font-size: 0.94rem !important;
  }

  table {
    font-size: 0.88rem;
  }

  table th { font-size: 0.78rem !important; }
  table td { font-size: 0.86rem !important; }

  .bottom-nav,
  .bottom-nav button,
  .app-nav,
  .app-nav button {
    font-size: 13px !important;
  }
}


/* =========================================================
   v0.86 – Planung: Zähler bewusst etwas kleiner
   ========================================================= */

/* Die Zahlen neben Aufgaben/Wartung/Verlauf sollen kompakter
   als die normalen Inhalte bleiben. */
[data-view="tasks"] .tag,
[data-view="tasks"] .planning-tabs-v040l small,
[data-view="tasks"] .planning-tabs-v040l span:not(.planning-tab-icon-v040l),
[data-view="tasks"] .planning-section-meta-v040l,
[data-view="tasks"] .planning-count-v040l,
[data-view="tasks"] .history-count-v040l {
  font-size: 0.72rem !important;
  line-height: 1.25 !important;
}

/* Die Überschrift selbst bleibt groß; nur die Zusatzwerte werden reduziert. */
[data-view="tasks"] .planning-toolbar-v040l .tag,
[data-view="tasks"] .planning-header-v040l .tag {
  font-size: 0.72rem !important;
}

@media (max-width:600px){
  [data-view="tasks"] .tag,
  [data-view="tasks"] .planning-tabs-v040l small,
  [data-view="tasks"] .planning-section-meta-v040l,
  [data-view="tasks"] .planning-count-v040l,
  [data-view="tasks"] .history-count-v040l {
    font-size: 12px !important;
  }
}

/* Navigation v0.86 */
.bottom-nav .nav-label {
  font-size: 0.86rem !important;
}


/* =========================================================
   v0.86 – Registrierung / Kontoersteller / Benutzer-Einladung
   ========================================================= */
.auth-card-v085{max-width:620px!important}
.registration-head-v085{display:flex;align-items:center;gap:14px;margin-bottom:18px}
.registration-head-v085 h2{margin:0 0 4px}
.registration-head-v085 p{margin:0;color:#64748b}
.registration-back-v085{width:42px;height:42px;border-radius:12px;border:1px solid #dbe3ef;background:#f8fafc;font-size:20px;cursor:pointer}
.registration-form-v085 label{display:block;margin:12px 0;font-weight:750}
.registration-form-v085 input,.registration-form-v085 select{width:100%;margin-top:6px;min-height:48px;border:1px solid #d7dee9;border-radius:12px;padding:10px 12px;background:#fff}
.registration-info-v085{display:flex;flex-direction:column;gap:4px;margin:14px 0;padding:13px 15px;border:1px solid #bfdbfe;background:#eff6ff;border-radius:13px}
.registration-info-v085 strong{color:#1d4ed8}
.registration-info-v085 span{font-size:.88rem;color:#475569}
.registration-submit-v085{min-height:52px;margin-top:8px}
.login-register-btn-v085{width:100%;height:50px;margin-top:10px!important;border:1px solid #dbe3ef!important;border-radius:13px!important;background:#f8fafc!important;color:#334155!important;opacity:1!important;cursor:pointer!important}
.login-register-btn-v085:hover{border-color:#93c5fd!important;background:#eff6ff!important;color:#1d4ed8!important}
.creator-lock-v085{margin:14px 0;padding:14px;border:1px solid #bfdbfe;background:#eff6ff;border-radius:13px;display:flex;flex-direction:column;gap:4px}
.creator-lock-v085 strong{color:#1d4ed8}
.creator-lock-v085 span{font-size:.82rem;color:#475569}
.creator-tag-v085{background:#dbeafe!important;color:#1d4ed8!important}
.tenant-creator-v085{border-color:#bfdbfe!important;background:linear-gradient(180deg,#fff,#f8fbff)!important}
.tenant-summary-v085 small{display:block;margin-top:3px;color:#64748b}
.access-mode-v085{display:grid;gap:8px;margin:14px 0;padding:12px;border:1px solid #e2e8f0;border-radius:14px}
.radio-card-v085{display:flex!important;align-items:flex-start;gap:10px;padding:11px;border:1px solid #e2e8f0;border-radius:11px;cursor:pointer}
.radio-card-v085 input{width:auto!important;margin-top:4px}
.radio-card-v085 span{display:flex;flex-direction:column;gap:2px}
.radio-card-v085 small{color:#64748b}
@media(max-width:600px){.registration-form-v085 .form-two-columns{grid-template-columns:1fr!important}.auth-card-v085{max-width:100%!important}}


/* =========================================================
   v0.86 – einfacher Online-Test ohne eigene Domain
   ========================================================= */
.registration-success-v086{
 display:flex;flex-direction:column;gap:8px;
 margin:0 0 16px;padding:15px;
 border:1px solid #86efac;background:#f0fdf4;border-radius:14px;color:#166534;
}
.registration-success-v086>strong{font-size:1rem}
.registration-success-v086>span,.registration-success-v086>small{color:#3f6212}
.registration-success-code-v086{
 display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;
 margin-top:5px;padding:11px 12px;border-radius:11px;background:#fff;border:1px solid #bbf7d0;
}
.registration-success-code-v086 span{font-size:.78rem;color:#64748b}
.registration-success-code-v086 strong{font-size:1.15rem;letter-spacing:.08em;color:#166534}
.invite-result-grid-v086{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}
.invite-result-grid-v086>div{padding:12px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;display:flex;flex-direction:column;gap:4px}
.invite-result-grid-v086 span{font-size:.78rem;color:#64748b}
.invite-result-grid-v086 strong{overflow-wrap:anywhere}
.invite-result-actions-v086{flex-wrap:wrap}
@media(max-width:600px){
 .registration-success-code-v086{grid-template-columns:1fr}
 .invite-result-grid-v086{grid-template-columns:1fr}
}

/* =========================================================
   v0.88 – Mehrfachrollen Benutzerverwaltung
   ========================================================= */
.role-picker-v088{margin:14px 0;padding:13px;border:1px solid #dbe3ef;border-radius:14px}
.role-picker-v088 legend{font-weight:850;padding:0 6px}
.role-picker-v088 legend small{font-weight:600;color:#64748b;margin-left:6px}
.role-grid-v088{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}
.role-grid-v088>label{display:flex!important;align-items:flex-start;gap:9px;padding:10px;border:1px solid #e2e8f0;border-radius:11px;background:#f8fafc;cursor:pointer;margin:0!important}
.role-grid-v088>label:has(input:checked){border-color:#93c5fd;background:#eff6ff}
.role-grid-v088 input{width:auto!important;margin:3px 0 0!important}
.role-grid-v088 span{display:flex;flex-direction:column;gap:2px}
.role-grid-v088 strong{font-size:.9rem}
.role-grid-v088 small,.role-admin-note-v088{font-size:.76rem!important;color:#64748b}
.role-admin-note-v088{display:block;margin-top:9px}
@media(max-width:600px){.role-grid-v088{grid-template-columns:1fr}}

/* =========================================================
   v0.89 – "Eingeloggt bleiben"
   ========================================================= */
.remember-login-v089{
 display:flex!important;
 align-items:flex-start;
 gap:11px;
 margin:2px 2px 14px!important;
 padding:11px 12px;
 border:1px solid #e2e8f0;
 border-radius:12px;
 background:#f8fafc;
 cursor:pointer;
}
.remember-login-v089 input{
 width:20px!important;
 height:20px!important;
 margin:1px 0 0!important;
 accent-color:#2563eb;
 flex:0 0 auto;
}
.remember-login-v089 span{display:flex;flex-direction:column;gap:2px}
.remember-login-v089 strong{font-size:.92rem}
.remember-login-v089 small{font-size:.76rem;color:#64748b;line-height:1.35}
.remember-login-v089:has(input:checked){background:#eff6ff;border-color:#93c5fd}

/* =========================================================
   Home2M6 v1.02 — unified professional interface
   Final design layer. Keeps legacy feature selectors intact,
   but normalizes the complete visual system across all views.
   ========================================================= */
:root{
  --bg:#f4f7fb;
  --bg-soft:#eef3f9;
  --card:#ffffff;
  --card-soft:#f8fafc;
  --ink:#111827;
  --muted:#667085;
  --muted-2:#98a2b3;
  --brand:#2563eb;
  --brand-hover:#1d4ed8;
  --brand-soft:#eff6ff;
  --brand-line:#bfdbfe;
  --brand2:#0b1220;
  --ok:#15803d;
  --ok-soft:#ecfdf3;
  --warn:#b45309;
  --warn-soft:#fff7ed;
  --danger:#b42318;
  --danger-soft:#fff1f0;
  --line:#e4eaf2;
  --line-strong:#d2dae6;
  --radius-sm:12px;
  --radius:18px;
  --radius-lg:24px;
  --radius-xl:30px;
  --shadow-sm:0 1px 2px rgba(16,24,40,.04),0 4px 12px rgba(16,24,40,.04);
  --shadow:0 8px 28px rgba(15,23,42,.07);
  --shadow-lg:0 24px 70px rgba(15,23,42,.16);
  --content-max:1120px;
}

html{background:var(--bg);scroll-behavior:smooth}
body{
  background:
    radial-gradient(circle at 10% -10%,rgba(37,99,235,.08),transparent 28rem),
    linear-gradient(180deg,#f7f9fc 0,#f4f7fb 24rem,var(--bg) 100%);
  color:var(--ink);
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  letter-spacing:-.008em;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body::selection{background:#dbeafe;color:#1e3a8a}

/* Header */
.topbar{
  min-height:84px;
  padding:14px max(20px,calc((100% - var(--content-max))/2));
  background:rgba(247,249,252,.88);
  border-bottom:1px solid rgba(226,232,240,.78);
  box-shadow:0 1px 0 rgba(255,255,255,.7);
  backdrop-filter:blur(20px) saturate(1.25);
  -webkit-backdrop-filter:blur(20px) saturate(1.25);
}
.topbar>div{min-width:0}
.topbar .eyebrow{
  color:#4772c9!important;
  font-size:10px!important;
  letter-spacing:.16em;
  font-weight:850;
}
.topbar h1{
  margin:3px 0 1px;
  font-size:clamp(24px,3vw,30px);
  line-height:1.1;
  letter-spacing:-.035em;
}
.local-status{
  display:inline-flex;
  align-items:center;
  gap:5px;
  color:var(--muted)!important;
  font-size:11px!important;
  font-weight:700;
}
.local-status::before{content:"";width:7px;height:7px;border-radius:999px;background:#22c55e;box-shadow:0 0 0 3px rgba(34,197,94,.12)}

main,#app{width:100%;max-width:var(--content-max);margin:0 auto;padding-left:20px;padding-right:20px}
.view{padding-top:22px;padding-bottom:24px}
.view.active{animation:homeiqoViewIn .22s ease-out both}
@keyframes homeiqoViewIn{from{opacity:.55;transform:translateY(4px)}to{opacity:1;transform:none}}

/* Unified cards */
.panel,.metric,.entity-card,.summary-strip>div,
.account-stat-card-v045l,.dashboard-status-v071l article,
.dashboard-widget-v071l,.planning-card-v040l,.vehicle-card-v36,
.tenant-user-card-v048l,.settings-card,.cloud-card,.backup-card,
.local-mode-card,.user-storage-card{
  border:1px solid var(--line)!important;
  background:rgba(255,255,255,.97)!important;
  border-radius:var(--radius)!important;
  box-shadow:var(--shadow-sm)!important;
}
.panel{
  padding:20px;
  margin:16px 0;
}
.panel.compact{padding:18px}
.panel-head{align-items:flex-start}
.panel h2,.panel-head h2{font-size:18px;letter-spacing:-.025em;color:var(--ink);margin:0}
.panel p,.helper-text{color:var(--muted)!important;line-height:1.55}
.panel-head p{margin:5px 0 0!important}

/* Section headers / hero blocks */
.hero-card,.account-hero-v045l,.planning-hero-v40{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:var(--radius-xl)!important;
  color:#fff!important;
  background:
    radial-gradient(circle at 85% 15%,rgba(59,130,246,.44),transparent 18rem),
    linear-gradient(135deg,#0b1220 0%,#13233f 55%,#1d4ed8 135%)!important;
  box-shadow:0 18px 45px rgba(15,23,42,.16)!important;
}
.hero-card::after,.account-hero-v045l::after,.planning-hero-v40::after{
  content:"";position:absolute;inset:auto -60px -90px auto;width:210px;height:210px;border-radius:50%;
  border:1px solid rgba(255,255,255,.08);pointer-events:none;
}
.account-hero-v045l,.planning-hero-v40{padding:24px!important;margin-bottom:16px!important}
.account-hero-v045l h2,.planning-hero-v40 h2{font-size:clamp(24px,4vw,34px)!important;letter-spacing:-.04em!important;margin:.15em 0!important}
.account-hero-v045l p,.planning-hero-v40 p{color:rgba(255,255,255,.72)!important;margin:.35rem 0 0!important}
.account-kicker-v045l,.planning-kicker-v40,.section-kicker-v101{font-size:10px!important;font-weight:850!important;letter-spacing:.16em!important;text-transform:uppercase;color:#93c5fd!important}

.view-toolbar-v101{
  display:flex;align-items:flex-end;justify-content:space-between;gap:18px;
  margin-bottom:16px;padding:22px 24px;border:1px solid var(--line);border-radius:var(--radius-lg);
  background:linear-gradient(135deg,#fff,#f8fbff);box-shadow:var(--shadow-sm)
}
.view-toolbar-v101 h2{margin:3px 0 4px;font-size:27px;letter-spacing:-.04em}
.view-toolbar-v101 p{margin:0;max-width:650px;color:var(--muted);line-height:1.5}
.view-toolbar-v101 .section-kicker-v101{color:var(--brand)!important}

/* Dashboard */
.dashboard-status-v071l{gap:12px!important;margin-bottom:16px!important}
.dashboard-status-v071l article{padding:15px 16px!important;min-height:82px;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.dashboard-status-v071l article:hover{transform:translateY(-1px);box-shadow:var(--shadow)!important;border-color:#d7e3f3!important}
.dashboard-status-v071l article>span{width:38px;height:38px;display:grid!important;place-items:center;border-radius:12px;background:var(--brand-soft);font-size:19px!important}
.dashboard-status-v071l strong{font-size:20px!important;letter-spacing:-.03em}
.dashboard-status-v071l small{color:var(--muted)!important}
.dashboard-grid-v071l,.dashboard-widget-grid-v071l{gap:14px!important}

/* Metrics */
.metric-grid,.dashboard-small-metrics,.account-stat-grid-v045l{gap:12px!important}
.metric,.account-stat-card-v045l{padding:17px!important;min-height:112px}
.metric span,.account-stat-card-v045l>span{font-size:12px!important;color:var(--muted)!important;font-weight:700!important}
.metric strong,.account-stat-card-v045l>strong{font-size:22px!important;letter-spacing:-.035em;color:var(--ink)!important}
.account-stat-icon-v045l{width:38px!important;height:38px!important;display:grid!important;place-items:center;border-radius:11px!important;margin-bottom:12px!important;background:var(--brand-soft)!important}
.account-stat-card-v045l.blue,.account-stat-card-v045l.green,.account-stat-card-v045l.orange,.account-stat-card-v045l.purple{background:#fff!important}

/* Buttons */
button,.primary,.secondary,.danger,.ghost,.file-label{font-family:inherit;transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .12s ease,opacity .16s ease}
.primary,.secondary,.danger,.file-label{
  min-height:44px;border-radius:12px!important;padding:10px 15px!important;font-size:14px!important;font-weight:780!important;letter-spacing:-.01em
}
.primary{background:linear-gradient(180deg,#2f6fec,#2563eb)!important;color:#fff!important;border:1px solid #245bd4!important;box-shadow:0 4px 12px rgba(37,99,235,.20)!important}
.primary:hover:not(:disabled){background:linear-gradient(180deg,#2865dd,#1d4ed8)!important;box-shadow:0 6px 16px rgba(37,99,235,.24)!important;transform:translateY(-1px)}
.primary:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 6px rgba(37,99,235,.18)!important}
.secondary,.file-label{background:#fff!important;color:#344054!important;border:1px solid var(--line-strong)!important;box-shadow:0 1px 2px rgba(16,24,40,.03)!important}
.secondary:hover:not(:disabled),.file-label:hover{background:#f8fafc!important;border-color:#c4cfdd!important}
.danger{background:var(--danger-soft)!important;color:var(--danger)!important;border:1px solid #fecdca!important}
.danger:hover:not(:disabled){background:#fee4e2!important}
.ghost,.link-btn{color:var(--brand)!important;border-radius:10px!important;padding:8px 10px!important}
.ghost:hover,.link-btn:hover{background:var(--brand-soft)!important}
button:disabled,.permission-disabled{opacity:.46!important;cursor:not-allowed!important;transform:none!important;filter:saturate(.55)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(37,99,235,.18)!important;outline-offset:2px!important}

/* Forms */
label{color:#344054;font-weight:700!important;letter-spacing:-.008em}
input,select,textarea,.toolbar select{
  border:1px solid var(--line-strong)!important;
  border-radius:12px!important;
  background:#fff!important;
  color:var(--ink)!important;
  box-shadow:0 1px 2px rgba(16,24,40,.025)!important;
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease!important;
}
input:hover,select:hover,textarea:hover{border-color:#b9c5d5!important}
input:focus,select:focus,textarea:focus{border-color:#7aa7f8!important;box-shadow:0 0 0 4px rgba(37,99,235,.10)!important;outline:0!important}
input[readonly],input:disabled,select:disabled,textarea:disabled{background:#f8fafc!important;color:#667085!important}
textarea{resize:vertical;min-height:90px}
fieldset.dialog-section,fieldset.object-picker,.role-picker-v088,.waste-type-fieldset{
  border:1px solid var(--line)!important;border-radius:15px!important;background:#fbfcfe!important;padding:14px!important
}
fieldset legend{color:#344054;font-weight:800!important;padding:0 7px}
.form-two-columns{gap:12px!important}
.check-row,.radio-card-v085,.role-grid-v088>label,.remember-login-v089{border-color:var(--line)!important;background:#fff!important}
.role-grid-v088>label:has(input:checked),.remember-login-v089:has(input:checked){background:var(--brand-soft)!important;border-color:#9dc0fb!important;box-shadow:0 0 0 1px rgba(37,99,235,.04)}

/* Dialogs */
dialog{
  width:min(94vw,620px)!important;max-height:min(90vh,900px);overflow:auto;
  border:1px solid rgba(255,255,255,.75)!important;border-radius:24px!important;background:#fff!important;
  box-shadow:var(--shadow-lg)!important
}
dialog::backdrop{background:rgba(7,15,30,.55)!important;backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important}
dialog form{padding:24px!important}
dialog h2{font-size:22px!important;letter-spacing:-.035em!important;margin:0 0 5px!important}
.dialog-section{margin:16px 0!important}
.dialog-actions{position:sticky;bottom:-24px;margin:20px -24px -24px!important;padding:14px 24px calc(14px + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);border-top:1px solid var(--line);backdrop-filter:blur(14px);z-index:2}
.dialog-actions button{min-width:116px}

/* Lists and content cards */
.list{gap:10px!important}
.list-item{padding:14px 2px!important}
.entity-card{padding:18px!important;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.entity-card:hover{transform:translateY(-1px);box-shadow:var(--shadow)!important;border-color:#d8e1ed!important}
.entity-card h3{font-size:17px;letter-spacing:-.025em}
.card-actions{gap:8px!important;padding-top:4px}
.tag,.badge,.pill,.chip{
  border-radius:999px!important;padding:5px 9px!important;font-size:11px!important;font-weight:800!important;letter-spacing:.01em!important
}
.tag{background:#f2f4f7!important;color:#475467!important;border:1px solid #e4e7ec!important}
.tag.subtle{background:#f8fafc!important;color:#667085!important}

/* Finance / costs */
.account-object-panel-v045l,.account-person-panel-v045l{overflow:hidden}
.account-costplan-head-v045l{margin:26px 2px 12px!important}
.account-costplan-head-v045l h2{margin:3px 0!important;font-size:24px!important;letter-spacing:-.035em!important}
.account-costplan-head-v045l p{margin:4px 0;color:var(--muted)}
.cost-modern-v046l{
  border:1px solid var(--line)!important;border-radius:16px!important;background:#fff!important;box-shadow:var(--shadow-sm)!important;
  overflow:hidden;transition:box-shadow .16s ease,border-color .16s ease,transform .16s ease
}
.cost-modern-v046l:hover{box-shadow:var(--shadow)!important;border-color:#d6e0ed!important;transform:translateY(-1px)}
.cost-modern-icon-v046l{background:var(--brand-soft)!important;border:1px solid #dbeafe!important}
.cost-modern-title-v046l h3{letter-spacing:-.02em!important;color:var(--ink)!important}
.cost-modern-title-v046l p,.cost-modern-object-v046l span{color:var(--muted)!important}
.account-object-donut-v045l{filter:drop-shadow(0 6px 15px rgba(37,99,235,.10))}

/* Properties */
.properties-view-v101 .toolbar{margin-top:0}
.property-card{border:1px solid var(--line)!important;border-radius:20px!important;box-shadow:var(--shadow-sm)!important;background:#fff!important;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease}
.property-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)!important}
.property-image,.property-placeholder{height:205px!important;background:linear-gradient(135deg,#e8f0fb,#f5f8fc)!important}
.property-card .card-top{margin-top:16px!important}
.property-card h3{font-size:20px!important;letter-spacing:-.035em!important}
.property-value-field-v101{padding:12px;border-radius:13px;background:#f8fbff;border:1px solid #e2ebf7}

/* Planning */
.planning-tabs-v040l,.segmented{border:1px solid var(--line)!important;background:#eef2f7!important;box-shadow:inset 0 1px 2px rgba(15,23,42,.03)!important}
.planning-tabs-v040l button,.segmented button{border-radius:10px!important;color:#667085!important}
.planning-tabs-v040l button.active,.segmented button.active{background:#fff!important;color:#1d4ed8!important;box-shadow:0 1px 3px rgba(16,24,40,.08)!important}
.planning-card-v040l{overflow:hidden!important}
.planning-card-v040l:hover{border-color:#d5dfec!important;box-shadow:var(--shadow)!important}

/* Vehicles */
.vehicle-grid{gap:14px!important}
.vehicle-card-v36,.dashboard-vehicle-card{overflow:hidden!important}
.vehicle-photo,.dashboard-vehicle-photo{background:#eef3f8!important}
.vehicle-card-v36 h3,.dashboard-vehicle-card h3{letter-spacing:-.03em!important}
.next-maintenance-list{border-top:1px solid var(--line)!important}

/* Settings / account users */
#tenantAccountPanel,.tenant-account-panel-v048l{border-radius:var(--radius-lg)!important}
.tenant-user-card-v048l{padding:16px!important;transition:box-shadow .16s ease,border-color .16s ease}
.tenant-user-card-v048l:hover{box-shadow:var(--shadow)!important;border-color:#d5dfec!important}
.tenant-creator-v085{background:linear-gradient(180deg,#fff,#f7faff)!important;border-color:#cfe0fb!important}
.creator-lock-v085,.registration-info-v085{border-color:#cbdffb!important;background:#f5f9ff!important}
.creator-lock-v085 strong,.registration-info-v085 strong{color:#1d4ed8!important}
.detail-grid{gap:10px!important}
.detail-grid>div{background:#f8fafc!important;border:1px solid var(--line)!important;border-radius:13px!important;padding:12px!important}
.detail-grid span{color:var(--muted)!important;font-size:11px!important;font-weight:700!important}
.detail-grid strong{color:#344054!important;font-size:14px!important}

/* Auth / registration */
.auth-gate{
  background:
    radial-gradient(circle at 20% 15%,rgba(59,130,246,.22),transparent 28rem),
    radial-gradient(circle at 85% 80%,rgba(29,78,216,.16),transparent 24rem),
    linear-gradient(145deg,#07101f,#0b1730 56%,#10295e)!important;
}
.auth-shell{width:min(100%,560px)!important;padding:28px 18px 42px!important}
.auth-brand-v080d{color:#fff!important;margin-bottom:20px!important}
.auth-brand-v080d h1{font-size:36px!important;letter-spacing:-.055em!important;margin:10px 0 5px!important}
.auth-brand-v080d p{color:rgba(255,255,255,.67)!important;max-width:420px!important;line-height:1.5!important}
.auth-app-icon-v080d{width:64px!important;height:64px!important;border-radius:20px!important;background:rgba(255,255,255,.10)!important;border:1px solid rgba(255,255,255,.14)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 16px 38px rgba(0,0,0,.16)!important}
.auth-card{
  border:1px solid rgba(255,255,255,.70)!important;border-radius:26px!important;background:rgba(255,255,255,.98)!important;
  box-shadow:0 28px 70px rgba(0,0,0,.25)!important;padding:24px!important
}
.login-card-head-v080d h2,.registration-head-v085 h2{font-size:24px!important;letter-spacing:-.04em!important}
.login-card-head-v080d p,.registration-head-v085 p{color:var(--muted)!important}
.login-input-wrap-v080d{border-radius:13px!important;background:#fff!important}
.login-main-btn-v080d,.registration-submit-v085{min-height:50px!important}
.login-register-btn-v085{background:#fff!important;border:1px solid var(--line-strong)!important}
.registration-back-v085{background:#fff!important;border-color:var(--line)!important;color:#344054!important}
.registration-success-v086{border-color:#a6f4c5!important;background:#ecfdf3!important;color:#067647!important}
.auth-error{border-radius:12px!important}

/* Bottom navigation */
#mainBottomNav.bottom-nav{
  height:calc(72px + env(safe-area-inset-bottom))!important;
  padding:7px max(8px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))!important;
  background:rgba(255,255,255,.94)!important;
  border-top:1px solid rgba(208,218,232,.88)!important;
  box-shadow:0 -10px 32px rgba(15,23,42,.08)!important;
  backdrop-filter:blur(22px) saturate(1.35)!important;
  -webkit-backdrop-filter:blur(22px) saturate(1.35)!important;
  gap:3px!important;
}
#mainBottomNav .nav-item{
  min-width:0!important;height:56px!important;border:0!important;border-radius:13px!important;background:transparent!important;
  color:#7b8798!important;padding:5px 2px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:4px!important
}
#mainBottomNav .nav-item:hover{background:#f5f7fa!important;color:#475467!important}
#mainBottomNav .nav-item.active{background:var(--brand-soft)!important;color:#1d4ed8!important;box-shadow:inset 0 0 0 1px #dbeafe!important}
#mainBottomNav .nav-icon{font-size:19px!important;line-height:1!important;height:21px!important;display:grid!important;place-items:center!important}
#mainBottomNav .nav-label{font-size:10.5px!important;line-height:1!important;font-weight:780!important;letter-spacing:-.02em!important}

/* Notice / state */
.app-notice{max-width:var(--content-max);margin:10px auto 0!important;border-radius:13px!important;border:1px solid var(--line)!important;box-shadow:var(--shadow-sm)!important}
.empty{border:1px dashed #d5deea;border-radius:14px;background:#fafcff;padding:28px!important;color:var(--muted)!important}
.progress{height:8px!important;background:#e9eef5!important}
.progress span{background:linear-gradient(90deg,#3b82f6,#2563eb)!important}

/* Desktop polish */
@media(min-width:900px){
  body{padding-bottom:98px!important}
  .card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
  .dashboard-status-v071l{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .account-stat-grid-v045l{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .view{padding-top:26px}
}

/* Mobile */
@media(max-width:700px){
  :root{--radius:16px;--radius-lg:20px;--radius-xl:24px}
  main,#app{padding-left:12px!important;padding-right:12px!important}
  .topbar{min-height:72px;padding:11px 14px!important}
  .topbar h1{font-size:23px!important}
  .topbar .eyebrow{font-size:9px!important}
  .view{padding-top:14px!important}
  .panel{padding:16px!important;margin:12px 0!important}
  .hero-card,.account-hero-v045l,.planning-hero-v40{border-radius:22px!important;padding:19px!important}
  .account-hero-v045l,.planning-hero-v40{align-items:flex-start!important;gap:16px!important}
  .account-hero-v045l .primary,.planning-hero-v40 .primary{width:100%!important}
  .view-toolbar-v101{align-items:stretch;flex-direction:column;padding:18px!important}
  .view-toolbar-v101 h2{font-size:24px}.view-toolbar-v101 .primary{width:100%!important}
  .dashboard-status-v071l{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
  .dashboard-status-v071l article{min-height:76px!important;padding:12px!important}
  .dashboard-status-v071l article>span{width:34px;height:34px;font-size:17px!important}
  .account-stat-grid-v045l{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
  .account-stat-card-v045l{min-height:104px!important;padding:14px!important}
  .form-two-columns{grid-template-columns:1fr!important}
  dialog{width:calc(100vw - 18px)!important;max-height:92vh!important;border-radius:22px!important}
  dialog form{padding:18px!important}
  .dialog-actions{bottom:-18px;margin:18px -18px -18px!important;padding:12px 18px calc(12px + env(safe-area-inset-bottom))!important}
  .dialog-actions button{min-width:0;flex:1}
  .property-image,.property-placeholder{height:185px!important}
  #mainBottomNav.bottom-nav{height:calc(68px + env(safe-area-inset-bottom))!important;padding-top:5px!important;padding-bottom:calc(5px + env(safe-area-inset-bottom))!important}
  #mainBottomNav .nav-item{height:56px!important;border-radius:11px!important}
  #mainBottomNav .nav-icon{font-size:18px!important}
  #mainBottomNav .nav-label{font-size:9.5px!important}
  body{padding-bottom:calc(78px + env(safe-area-inset-bottom))!important}
  .auth-shell{padding:20px 12px 30px!important}
  .auth-card{padding:19px!important;border-radius:22px!important}
  .auth-brand-v080d h1{font-size:31px!important}
}

@media(max-width:390px){
  #mainBottomNav .nav-label{font-size:8.5px!important}
  #mainBottomNav .nav-icon{font-size:17px!important}
  .dashboard-status-v071l article{gap:8px!important}
  .account-stat-grid-v045l{grid-template-columns:1fr 1fr!important}
}

/* Print remains clean */
@media print{
  body{background:#fff!important}
  .panel,.entity-card,.property-card,.cost-modern-v046l{box-shadow:none!important;background:#fff!important}
}

/* ========================================================================== 
   Home2M6 v1.02 · Unified Professional Design System
   ========================================================================== */
:root{
  --hq-bg:#f4f7fb;--hq-surface:#fff;--hq-surface-soft:#f8fafc;--hq-ink:#111827;
  --hq-muted:#667085;--hq-line:#e3e9f1;--hq-line-strong:#d3dce8;--hq-brand:#2563eb;
  --hq-brand-dark:#163d9f;--hq-brand-soft:#eef4ff;--hq-navy:#0b1730;--hq-success:#087f5b;
  --hq-warning:#b45309;--hq-danger:#c92a2a;--hq-radius:18px;--hq-radius-sm:12px;
  --hq-shadow:0 8px 28px rgba(15,23,42,.07);--hq-shadow-hover:0 16px 40px rgba(15,23,42,.11);
  --hq-focus:0 0 0 4px rgba(37,99,235,.14)
}
html{background:var(--hq-bg)}
body{background:linear-gradient(180deg,#f8fbff 0,#f4f7fb 220px,#f4f7fb 100%);color:var(--hq-ink);letter-spacing:-.005em}
body::before{content:"";position:fixed;inset:0 0 auto;height:240px;pointer-events:none;background:radial-gradient(circle at 82% -20%,rgba(37,99,235,.12),transparent 45%);z-index:-1}
.topbar{background:rgba(255,255,255,.9)!important;border-bottom:1px solid rgba(211,220,232,.85)!important;box-shadow:0 1px 0 rgba(15,23,42,.02)!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.brand h1{font-size:1.45rem!important;letter-spacing:-.04em!important;color:var(--hq-navy)!important}.eyebrow{font-size:.67rem!important;letter-spacing:.14em!important;color:#52709d!important;font-weight:800!important}.brand-dot{box-shadow:0 0 0 5px rgba(37,99,235,.1)}
main{max-width:1440px!important;padding-top:24px!important}.view{animation:hqViewIn .18s ease-out}.view[aria-hidden="true"]{display:none!important}@keyframes hqViewIn{from{opacity:.55;transform:translateY(3px)}to{opacity:1;transform:none}}
.card,.panel,.hero,.dashboard-widget,.more-card,.detail-panel,.vehicle-card,.property-card,.task-card,.maintenance-card,.cost-card,.loan-card,.list-item{border-color:var(--hq-line)!important;box-shadow:var(--hq-shadow)!important;border-radius:var(--hq-radius)!important;background:var(--hq-surface)!important}
.card:hover,.property-card:hover,.vehicle-card:hover,.more-card:hover{border-color:#ccd7e5!important;box-shadow:var(--hq-shadow-hover)!important}
.hero{background:linear-gradient(135deg,var(--hq-navy),#102c5d 58%,#1749a0)!important;color:#fff!important;border:0!important;box-shadow:0 18px 48px rgba(11,23,48,.18)!important}.hero .muted,.hero .subtle{color:#c9d7ee!important}
.hero strong,.hero h2,.hero h3{color:#fff!important}
.stat,.kpi,.metric,.summary-card{border:1px solid var(--hq-line)!important;border-radius:14px!important;background:linear-gradient(180deg,#fff,#fbfcfe)!important}
button,.button{border-radius:11px!important;font-weight:700!important;letter-spacing:-.01em;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease,background .14s ease}button:hover:not(:disabled),.button:hover:not(:disabled){transform:translateY(-1px)}button:active:not(:disabled),.button:active:not(:disabled){transform:translateY(0)}
button.primary,.primary{background:linear-gradient(180deg,#3478f6,var(--hq-brand))!important;border-color:#1f5bd2!important;box-shadow:0 6px 16px rgba(37,99,235,.2)!important;color:#fff!important}button.primary:hover,.primary:hover{background:linear-gradient(180deg,#2f70e7,#1e56c5)!important;box-shadow:0 9px 22px rgba(37,99,235,.24)!important}
button.secondary,.secondary{background:#fff!important;border-color:var(--hq-line-strong)!important;color:#344054!important}button.danger,.danger{background:#fff5f5!important;border-color:#ffd5d5!important;color:var(--hq-danger)!important}
input,select,textarea{border:1px solid var(--hq-line-strong)!important;border-radius:11px!important;background:#fff!important;color:var(--hq-ink)!important;box-shadow:0 1px 2px rgba(15,23,42,.02)!important;min-height:43px}textarea{min-height:96px}input:hover,select:hover,textarea:hover{border-color:#b7c5d7!important}input:focus,select:focus,textarea:focus{border-color:#6b9cf6!important;box-shadow:var(--hq-focus)!important;outline:0!important}label{color:#344054!important;font-weight:650!important;font-size:.86rem!important}
.section-title,.card-title,h2,h3{color:var(--hq-navy);letter-spacing:-.025em}.muted,.subtle,.hint{color:var(--hq-muted)!important}
.tabs,.segmented{background:#edf2f7!important;border:1px solid #e0e7ef!important;border-radius:13px!important;padding:4px!important}.tabs button,.segmented button{border:0!important;box-shadow:none!important}.tabs button.active,.segmented button.active{background:#fff!important;color:var(--hq-navy)!important;box-shadow:0 2px 8px rgba(15,23,42,.08)!important}
.bottom-nav{background:rgba(255,255,255,.94)!important;border-top:1px solid var(--hq-line)!important;box-shadow:0 -8px 30px rgba(15,23,42,.05)!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.bottom-nav button{border-radius:12px!important;color:#667085!important}.bottom-nav button.active{background:var(--hq-brand-soft)!important;color:#1d4ed8!important}
dialog{border:1px solid var(--hq-line)!important;border-radius:22px!important;box-shadow:0 28px 80px rgba(15,23,42,.24)!important;padding:0!important;overflow:hidden!important}dialog::backdrop{background:rgba(15,23,42,.46)!important;backdrop-filter:blur(3px)}dialog form{padding:24px!important}dialog h2,dialog h3{margin-top:0!important}
.badge,.pill,.status-tag{border-radius:999px!important;font-weight:750!important}.status-tag[data-mode="online"]{background:#e9fbf4!important;color:#087f5b!important;border-color:#b8ead8!important}.status-tag[data-mode="error"]{background:#fff1f1!important;color:#c92a2a!important;border-color:#ffc9c9!important}
.table-wrap{border:1px solid var(--hq-line)!important;border-radius:14px!important;overflow:auto!important;background:#fff!important}table{border-collapse:collapse!important}th{background:#f8fafc!important;color:#475467!important;font-size:.75rem!important;text-transform:uppercase;letter-spacing:.055em}th,td{border-bottom:1px solid #edf1f5!important;padding:12px 14px!important}
.empty-state{border:1px dashed #cbd5e1!important;border-radius:16px!important;background:#fbfdff!important;color:#667085!important;padding:28px!important}
.view-toolbar-v101{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin:4px 0 20px;padding:22px 24px;border:1px solid var(--hq-line);border-radius:18px;background:linear-gradient(135deg,#fff,#f7faff);box-shadow:var(--hq-shadow)}.view-toolbar-v101 h2{margin:3px 0 5px;font-size:1.55rem}.view-toolbar-v101 p{margin:0;color:var(--hq-muted);max-width:680px}.section-kicker-v101{font-size:.68rem;font-weight:850;letter-spacing:.14em;color:#52709d}
.card-grid{gap:16px!important}.list,.card-list{gap:12px!important}.detail-grid{gap:12px!important}.detail-grid>div{border-radius:12px!important;border:1px solid var(--hq-line)!important;background:#fbfcfe!important;padding:13px 14px!important}
.auth-card-v100{border:1px solid rgba(218,227,239,.95)!important;box-shadow:0 28px 90px rgba(15,23,42,.16)!important}.auth-brand-v100 h1{letter-spacing:-.05em!important}.auth-field-v100 input{border-color:#d6dfeb!important}.auth-primary-v100{background:linear-gradient(180deg,#3478f6,#2563eb)!important}.auth-note-v100{border-color:#dfe7f0!important;background:#f8fafc!important}
#moreView .card,#settingsView .card{overflow:hidden}.cloud-card-v079l{border-top:3px solid #2563eb!important}
.permission-disabled{opacity:.48!important;filter:saturate(.55)}
@media(max-width:760px){body{background:#f5f7fb}.topbar{padding-left:14px!important;padding-right:14px!important}.brand h1{font-size:1.25rem!important}.eyebrow{font-size:.58rem!important}.view-toolbar-v101{align-items:stretch;flex-direction:column;padding:18px}.view-toolbar-v101 .primary{width:100%}main{padding:14px 12px 104px!important}.card,.panel,.hero,.dashboard-widget,.more-card,.property-card,.vehicle-card{border-radius:15px!important}.card-grid{grid-template-columns:1fr!important;gap:12px!important}dialog{width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)!important}dialog form{padding:18px!important}.bottom-nav{padding-bottom:max(8px,env(safe-area-inset-bottom))!important}.bottom-nav button{min-width:0!important;padding-left:5px!important;padding-right:5px!important}.bottom-nav .label{font-size:.66rem!important}}
@media(min-width:1100px){.properties-view-v101 .card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}


/* Home2M6 v1.03 · Kredit ↔ Kostenposition */
.loan-linked-badge-v103{
 display:inline-flex;align-items:center;gap:.3rem;margin-left:.35rem;padding:.16rem .48rem;border-radius:999px;
 background:var(--accent-soft,#eaf2ff);color:var(--accent,#2563eb);font-size:.72rem;font-weight:800;vertical-align:middle;
}
.loan-cost-managed-notice-v103{
 display:grid;gap:.35rem;margin:.2rem 0 1rem;padding:1rem 1.05rem;border:1px solid rgba(37,99,235,.22);
 border-radius:14px;background:rgba(37,99,235,.07);color:var(--text,#172033);
}
.loan-cost-managed-notice-v103 strong{font-size:.95rem}.loan-cost-managed-notice-v103 span{font-size:.86rem;line-height:1.5;color:var(--muted,#64748b)}
#costForm input[readonly],#costForm select:disabled{background:rgba(148,163,184,.12);color:var(--muted,#64748b);cursor:not-allowed}

/* Home2M6 v1.05 – persönliche/private Kosten */
.personal-finance-grid-v104{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.personal-finance-grid-v104 article{padding:18px;border:1px solid var(--line,#e4eaf2);border-radius:16px;background:linear-gradient(180deg,#fff,#f8fafc);display:flex;flex-direction:column;gap:5px}
.personal-finance-grid-v104 article span,.private-cost-summary-v104 span{font-size:12px;font-weight:700;color:var(--muted,#64748b);text-transform:uppercase;letter-spacing:.04em}
.personal-finance-grid-v104 article strong{font-size:25px;color:var(--ink,#172033)}
.personal-finance-grid-v104 article small{color:var(--muted,#64748b)}
.personal-finance-grid-v104 article.total{border-color:#bfdbfe;background:linear-gradient(135deg,#eff6ff,#fff)}
.personal-finance-grid-v104 article.total strong{color:#1d4ed8}
.private-costs-panel-v104{border-top:3px solid #7c3aed}
.private-costs-head-v104{align-items:center}
.private-cost-summary-v104{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:4px 0 16px}
.private-cost-summary-v104>div{padding:14px 16px;border-radius:14px;background:#faf5ff;border:1px solid #e9d5ff;display:flex;flex-direction:column;gap:4px}
.private-cost-summary-v104 strong{font-size:20px;color:#6d28d9}
.private-cost-list-v104{display:grid;gap:12px}
.private-cost-card-v104{border:1px solid #e9d5ff;border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 8px 24px rgba(76,29,149,.06)}
.private-cost-card-v104.is-paid{opacity:.72;background:#f8fafc}
.private-cost-main-v104{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px}
.private-cost-icon-v104{width:42px;height:42px;border-radius:13px;background:#f3e8ff;display:grid;place-items:center;font-size:20px}
.private-cost-main-v104 h3{margin:2px 0 3px;font-size:17px}.private-cost-main-v104 p{margin:0;color:#64748b;font-size:13px}
.private-cost-value-v104{text-align:right}.private-cost-value-v104 strong{display:block;font-size:18px}.private-cost-value-v104 small{color:#64748b}
.private-cost-actions-v104{display:flex;gap:8px;flex-wrap:wrap;padding:12px 16px;border-top:1px solid #f1e8ff;background:#fcfaff}
.privacy-note-v104{display:flex;gap:10px;align-items:flex-start;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:12px;padding:12px 14px;color:#5b21b6}.privacy-note-v104 span{color:#6b7280}
.loan-linked-badge-v103{white-space:nowrap}
@media(max-width:720px){.personal-finance-grid-v104{grid-template-columns:1fr}.private-cost-summary-v104{grid-template-columns:1fr}.private-cost-main-v104{grid-template-columns:auto 1fr}.private-cost-value-v104{grid-column:2;text-align:left}.private-costs-head-v104{align-items:flex-start;gap:12px}.private-costs-head-v104 .primary{width:100%}}


/* Home2M6 v1.05 · Finanzen: privat + gemeinsam */
.finance-actions-v105{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.personal-finance-panel-v105{border-top:3px solid #2563eb}
.finance-private-section-v105{margin-top:18px}
.finance-private-section-v105 .privacy-note-v104{margin:0 0 16px}
.finance-shared-head-v105{margin-top:26px;padding-top:4px;border-top:1px solid var(--hq-line,#e3e9f1)}
.private-cost-dialog-v105{max-width:680px}
@media(max-width:720px){.finance-actions-v105{width:100%;display:grid;grid-template-columns:1fr}.finance-actions-v105 button{width:100%}.finance-private-section-v105 .panel-head{display:grid}.finance-private-section-v105 .panel-head button{width:100%}}


/* Home2M6 v1.06 – digitale Fahrzeugakte & Benutzer-Zuweisung */
.vehicle-pass-dialog-v106{width:min(1040px,calc(100vw - 28px))!important;max-width:1040px!important}
.vehicle-pass-dialog-v106 form{max-width:none!important}
.vehicle-pass-head-v106{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.vehicle-pass-head-v106 h2{margin:3px 0 4px}.vehicle-pass-head-v106 p{margin:0;color:var(--muted);font-size:.9rem}
.vehicle-pass-layout-v106{display:grid;grid-template-columns:270px minmax(0,1fr);gap:20px;align-items:start}.vehicle-pass-photo-v106{position:sticky;top:0;display:flex;flex-direction:column;gap:10px}.vehicle-pass-photo-frame-v106{aspect-ratio:4/3;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:linear-gradient(145deg,#eef4fb,#f8fafc);display:flex;align-items:center;justify-content:center}.vehicle-pass-photo-frame-v106 img{width:100%;height:100%;object-fit:cover}.vehicle-pass-photo-placeholder-v106{font-size:64px;filter:grayscale(.15)}.vehicle-photo-upload-v106{border:1px dashed #b8c6d8;border-radius:13px;padding:10px;background:#f8fafc}.vehicle-photo-upload-v106 span{display:block;font-weight:800;font-size:.78rem;margin-bottom:6px}.vehicle-pass-mini-v106{display:grid;grid-template-columns:1fr;gap:3px;padding:14px;border-radius:14px;background:#0f2344;color:#fff}.vehicle-pass-mini-v106 span{font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;color:#b8c8df;margin-top:5px}.vehicle-pass-mini-v106 strong{font-size:.84rem;overflow-wrap:anywhere}.vehicle-pass-main-v106{display:flex;flex-direction:column;gap:12px}.vehicle-pass-section-v106{margin:0!important}.vehicle-assignment-v106{margin-top:12px;border:1px solid #cbdaf0;background:#f7faff;border-radius:14px;padding:12px}.section-heading-v106{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}.section-heading-v106 small{display:block;color:var(--muted);font-weight:500;margin-top:2px}.vehicle-user-choices-v106{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.vehicle-user-choice-v106{display:flex!important;flex-direction:row!important;align-items:center;gap:10px;padding:10px!important;border:1px solid var(--line);border-radius:12px;background:#fff}.vehicle-user-choice-v106 input{width:19px!important;height:19px!important;flex:0 0 auto}.vehicle-user-choice-v106 span{display:flex;flex-direction:column}.vehicle-user-choice-v106 small{color:var(--muted);font-size:.72rem}.vehicle-id-card-v106 .vehicle-assigned-summary-v106{margin:8px 0;padding:9px 10px;border-radius:11px;background:#f5f8fc;border:1px solid var(--line);display:flex;flex-direction:column;gap:2px}.vehicle-assigned-summary-v106 span{font-size:.62rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:800}.vehicle-assigned-summary-v106 strong{font-size:.8rem}.vehicle-id-card-v106 .vehicle-kpis strong{overflow-wrap:anywhere}
@media(max-width:760px){.vehicle-pass-layout-v106{grid-template-columns:1fr}.vehicle-pass-photo-v106{position:static}.vehicle-pass-photo-frame-v106{max-height:240px}.vehicle-user-choices-v106{grid-template-columns:1fr}.vehicle-pass-head-v106{flex-direction:column}.vehicle-pass-dialog-v106{width:calc(100vw - 18px)!important}}
.dark-mode .vehicle-pass-photo-frame-v106,.dark-mode .vehicle-photo-upload-v106,.dark-mode .vehicle-assignment-v106,.dark-mode .vehicle-user-choice-v106,.dark-mode .vehicle-assigned-summary-v106{background:#172033!important;border-color:#334155!important;color:#e5e7eb!important}

/* =========================================================
   v1.08 – Fahrzeugdialog: mobiler Scroll-Fix
   Der Dialog selbst bleibt im Viewport; der Formularinhalt ist
   scrollbar. Die Aktionsleiste bleibt am unteren Rand sichtbar.
   ========================================================= */
.vehicle-pass-dialog-v106{
  overflow:hidden!important;
  max-height:min(94dvh,980px)!important;
}
.vehicle-pass-dialog-v106 #vehicleForm{
  display:block;
  max-height:min(94dvh,980px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  scrollbar-gutter:stable;
  touch-action:pan-y;
}
.vehicle-pass-dialog-v106 #vehicleForm .dialog-actions{
  position:sticky!important;
  bottom:-24px!important;
  z-index:20!important;
  background:rgba(255,255,255,.97)!important;
  box-shadow:0 -12px 28px rgba(15,23,42,.08);
}
.dark-mode .vehicle-pass-dialog-v106 #vehicleForm .dialog-actions{
  background:rgba(17,24,39,.97)!important;
}
@media(max-width:760px){
  .vehicle-pass-dialog-v106{
    height:calc(100dvh - 18px)!important;
    max-height:calc(100dvh - 18px)!important;
    margin:auto!important;
  }
  .vehicle-pass-dialog-v106 #vehicleForm{
    height:100%!important;
    max-height:100%!important;
    padding-bottom:0!important;
  }
  .vehicle-pass-dialog-v106 #vehicleForm .dialog-actions{
    bottom:0!important;
    margin:18px -18px 0!important;
    padding:12px 18px calc(12px + env(safe-area-inset-bottom))!important;
  }
  .vehicle-pass-dialog-v106 input,
  .vehicle-pass-dialog-v106 select,
  .vehicle-pass-dialog-v106 textarea{
    scroll-margin-bottom:92px;
  }
}

/* ========================================================================== 
   Home2M6 v1.15 · Final UI consistency + reliable light/dark themes
   This block intentionally comes last so legacy version styles cannot win.
   ========================================================================== */
:root{
  --ui-bg:#f4f7fb;
  --ui-surface:#ffffff;
  --ui-surface-2:#f8fafc;
  --ui-surface-3:#eef4fb;
  --ui-text:#111827;
  --ui-text-soft:#475467;
  --ui-muted:#667085;
  --ui-border:#dbe3ee;
  --ui-border-strong:#cbd5e1;
  --ui-primary:#2563eb;
  --ui-primary-hover:#1d4ed8;
  --ui-primary-soft:#eff6ff;
  --ui-danger:#b42318;
  --ui-danger-soft:#fff1f0;
  --ui-success:#087f5b;
  --ui-radius:14px;
  --ui-shadow:0 7px 24px rgba(15,23,42,.07);
}

/* Base typography: readable and deliberately restrained. */
body{color:var(--ui-text)!important;background:var(--ui-bg)!important}
h1,h2,h3,h4,h5,h6{color:var(--ui-text)!important}
p,small,.muted,.subtle,.hint,.helper-text{color:var(--ui-muted)!important}

/* Hero/card headings must always contrast with dark hero backgrounds. */
.hero,.hero-card,.account-hero-v045l,.planning-hero-v40,.finance-hero-v105,
[class*="hero-v"]{color:#fff!important}
.hero h1,.hero h2,.hero h3,.hero h4,.hero strong,.hero-card h1,.hero-card h2,.hero-card h3,.hero-card strong,
.account-hero-v045l h1,.account-hero-v045l h2,.account-hero-v045l h3,.account-hero-v045l strong,
.planning-hero-v40 h1,.planning-hero-v40 h2,.planning-hero-v40 h3,.planning-hero-v40 strong,
.finance-hero-v105 h1,.finance-hero-v105 h2,.finance-hero-v105 h3,.finance-hero-v105 strong,
[class*="hero-v"] h1,[class*="hero-v"] h2,[class*="hero-v"] h3,[class*="hero-v"] strong{color:#fff!important}
.hero p,.hero small,.hero span,.hero-card p,.hero-card small,.hero-card span,
.account-hero-v045l p,.account-hero-v045l small,.account-hero-v045l span,
[class*="hero-v"] p,[class*="hero-v"] small,[class*="hero-v"] span{color:#d7e3f6!important}

/* One button language across the whole app. */
button,.button,.primary,.secondary,.danger,.file-label{
  min-height:42px!important;
  padding:9px 14px!important;
  border-radius:12px!important;
  border:1px solid transparent!important;
  font-size:14px!important;
  line-height:1.25!important;
  font-weight:750!important;
  letter-spacing:-.01em!important;
  box-shadow:none!important;
  max-width:100%;
}
button.primary,.primary{
  background:var(--ui-primary)!important;
  border-color:var(--ui-primary)!important;
  color:#fff!important;
}
button.primary:hover:not(:disabled),.primary:hover:not(:disabled){background:var(--ui-primary-hover)!important;border-color:var(--ui-primary-hover)!important}
button.secondary,.secondary,.file-label{
  background:var(--ui-surface)!important;
  border-color:var(--ui-border-strong)!important;
  color:#344054!important;
}
button.danger,.danger{background:var(--ui-danger-soft)!important;border-color:#fecdca!important;color:var(--ui-danger)!important}
button.ghost,.ghost,.link-btn{background:transparent!important;border-color:transparent!important;color:var(--ui-primary)!important;box-shadow:none!important}
button.small,.small{min-height:36px!important;padding:7px 11px!important;font-size:13px!important}
button.tiny,.tiny{min-height:30px!important;padding:5px 9px!important;font-size:12px!important}
.dialog-actions,.button-row,.card-actions,.finance-actions-v105{gap:8px!important}

/* Avoid oversized full-width action buttons on phones. */
@media(max-width:760px){
  button,.button,.primary,.secondary,.danger,.file-label{min-height:40px!important;padding:8px 12px!important;font-size:13px!important}
  .hero .primary,.hero .secondary,.account-hero-v045l .primary,.account-hero-v045l .secondary{min-height:44px!important}
}

/* Consistent light surfaces. */
.panel,.card,.entity-card,.metric,.summary-strip>div,.property-card,.vehicle-card,
.dashboard-widget,.more-card,.detail-panel,.task-card,.maintenance-card,.loan-card,
.tenant-user-row-v048l,.tenant-summary-grid>div,.tenant-summary-v085>div,
.personal-finance-grid-v104 article,.private-cost-card-v104,.private-cost-actions-v104,
.detail-grid>div,.loan-facts>div,.cost-summary>div,.table-wrap,
[class*="-card-v"],[class*="-panel-v"]{
  background:var(--ui-surface)!important;
  color:var(--ui-text)!important;
  border-color:var(--ui-border)!important;
}

/* Inputs share the same visual system. */
input,select,textarea{
  background:var(--ui-surface)!important;
  color:var(--ui-text)!important;
  border-color:var(--ui-border-strong)!important;
  min-height:42px!important;
}
input::placeholder,textarea::placeholder{color:#98a2b3!important}
label{color:#344054!important}

/* --------------------------- DARK MODE --------------------------- */
body.dark-mode{
  --ui-bg:#08111f;
  --ui-surface:#101a2b;
  --ui-surface-2:#152236;
  --ui-surface-3:#1a2940;
  --ui-text:#f1f5f9;
  --ui-text-soft:#cbd5e1;
  --ui-muted:#94a3b8;
  --ui-border:#2b3b52;
  --ui-border-strong:#3a4b63;
  --ui-primary:#4f8cff;
  --ui-primary-hover:#6aa0ff;
  --ui-primary-soft:#142849;
  --ui-danger:#fda4af;
  --ui-danger-soft:#351820;
  background:#08111f!important;
  color:var(--ui-text)!important;
}
body.dark-mode::before{background:radial-gradient(circle at 82% -20%,rgba(79,140,255,.12),transparent 46%)!important}
body.dark-mode .topbar{background:rgba(8,17,31,.94)!important;border-bottom-color:var(--ui-border)!important}
body.dark-mode .brand h1,body.dark-mode .topbar h1,body.dark-mode h1,body.dark-mode h2,body.dark-mode h3,body.dark-mode h4,body.dark-mode h5,body.dark-mode h6{color:var(--ui-text)!important}
body.dark-mode p,body.dark-mode small,body.dark-mode .muted,body.dark-mode .subtle,body.dark-mode .hint,body.dark-mode .helper-text{color:var(--ui-muted)!important}
body.dark-mode .eyebrow,body.dark-mode .section-kicker-v101{color:#8fb7ff!important}

body.dark-mode .panel,body.dark-mode .card,body.dark-mode .entity-card,body.dark-mode .metric,
body.dark-mode .summary-strip>div,body.dark-mode .property-card,body.dark-mode .vehicle-card,
body.dark-mode .dashboard-widget,body.dark-mode .more-card,body.dark-mode .detail-panel,
body.dark-mode .task-card,body.dark-mode .maintenance-card,body.dark-mode .loan-card,
body.dark-mode .tenant-user-row-v048l,body.dark-mode .tenant-summary-grid>div,body.dark-mode .tenant-summary-v085>div,
body.dark-mode .personal-finance-grid-v104 article,body.dark-mode .private-cost-card-v104,
body.dark-mode .private-cost-actions-v104,body.dark-mode .detail-grid>div,body.dark-mode .loan-facts>div,
body.dark-mode .cost-summary>div,body.dark-mode .table-wrap,
body.dark-mode [class*="-card-v"],body.dark-mode [class*="-panel-v"]{
  background:var(--ui-surface)!important;
  color:var(--ui-text)!important;
  border-color:var(--ui-border)!important;
  box-shadow:0 8px 28px rgba(0,0,0,.17)!important;
}

/* Inner informational tiles that legacy CSS forces white. */
body.dark-mode .stat,body.dark-mode .kpi,body.dark-mode .metric,body.dark-mode .summary-card,
body.dark-mode .loan-facts div,body.dark-mode .detail-grid div,body.dark-mode .cost-summary div,
body.dark-mode .vehicle-kpis>div,body.dark-mode .vehicle-info-grid>div,
body.dark-mode .tenant-summary-grid>div,body.dark-mode .tenant-summary-v085>div,
body.dark-mode .dashboard-property-details>div,body.dark-mode .dash-property-facts-v071l>div,
body.dark-mode .dash-energy-v071l,body.dark-mode .personal-finance-grid-v104 article,
body.dark-mode .private-cost-summary-v104>div,body.dark-mode .loan-detail-primary-v062l,
body.dark-mode .loan-detail-secondary-v062l{
  background:var(--ui-surface-2)!important;
  color:var(--ui-text)!important;
  border-color:var(--ui-border)!important;
}

body.dark-mode input,body.dark-mode select,body.dark-mode textarea{
  background:var(--ui-surface-2)!important;
  color:var(--ui-text)!important;
  border-color:var(--ui-border-strong)!important;
  color-scheme:dark;
}
body.dark-mode input::placeholder,body.dark-mode textarea::placeholder{color:#718096!important}
body.dark-mode label{color:#dbe5f2!important}

body.dark-mode button.secondary,body.dark-mode .secondary,body.dark-mode .file-label{
  background:var(--ui-surface-2)!important;
  border-color:var(--ui-border-strong)!important;
  color:#e6edf7!important;
}
body.dark-mode button.primary,body.dark-mode .primary{background:var(--ui-primary)!important;border-color:var(--ui-primary)!important;color:#fff!important}
body.dark-mode button.danger,body.dark-mode .danger{background:var(--ui-danger-soft)!important;border-color:#63313d!important;color:#fecdd3!important}
body.dark-mode button.ghost,body.dark-mode .ghost,body.dark-mode .link-btn{color:#8fb7ff!important}

body.dark-mode .bottom-nav{background:rgba(8,17,31,.97)!important;border-top-color:var(--ui-border)!important}
body.dark-mode .bottom-nav button{color:#94a3b8!important;background:transparent!important}
body.dark-mode .bottom-nav button.active{background:#142849!important;color:#8fb7ff!important}

body.dark-mode dialog{background:var(--ui-surface)!important;color:var(--ui-text)!important;border-color:var(--ui-border)!important}
body.dark-mode dialog form{background:var(--ui-surface)!important;color:var(--ui-text)!important}
body.dark-mode .vehicle-pass-dialog-v106 #vehicleForm .dialog-actions{background:rgba(16,26,43,.98)!important;border-top:1px solid var(--ui-border)!important}

body.dark-mode .tabs,body.dark-mode .segmented{background:#0d1727!important;border-color:var(--ui-border)!important}
body.dark-mode .tabs button,body.dark-mode .segmented button{color:#94a3b8!important;background:transparent!important}
body.dark-mode .tabs button.active,body.dark-mode .segmented button.active{background:var(--ui-surface-2)!important;color:#f1f5f9!important}

body.dark-mode table,body.dark-mode tbody,body.dark-mode tr,body.dark-mode td{background:var(--ui-surface)!important;color:var(--ui-text)!important;border-color:var(--ui-border)!important}
body.dark-mode th{background:var(--ui-surface-2)!important;color:#cbd5e1!important;border-color:var(--ui-border)!important}
body.dark-mode .empty,body.dark-mode .empty-state{background:var(--ui-surface-2)!important;color:var(--ui-muted)!important;border-color:var(--ui-border)!important}

/* Preserve intended white text on dark/blue hero areas even in dark mode. */
body.dark-mode .hero h1,body.dark-mode .hero h2,body.dark-mode .hero h3,body.dark-mode .hero strong,
body.dark-mode .hero-card h1,body.dark-mode .hero-card h2,body.dark-mode .hero-card h3,body.dark-mode .hero-card strong,
body.dark-mode .account-hero-v045l h1,body.dark-mode .account-hero-v045l h2,body.dark-mode .account-hero-v045l h3,body.dark-mode .account-hero-v045l strong,
body.dark-mode [class*="hero-v"] h1,body.dark-mode [class*="hero-v"] h2,body.dark-mode [class*="hero-v"] h3,body.dark-mode [class*="hero-v"] strong{color:#fff!important}

/* Keep energy class palette and photos untouched while still making surrounding text readable. */
body.dark-mode .energy-scale-v071l span,body.dark-mode [class*="energy-scale"] span{color:inherit}

/* Settings/account rows: prevent white cards + white text mismatch. */
body.dark-mode .tenant-user-main-v048l>strong,body.dark-mode .tenant-user-main-v048l>span,
body.dark-mode .tenant-user-main-v048l>small,body.dark-mode .tenant-user-share-v048l strong,
body.dark-mode .tenant-user-share-v048l span,body.dark-mode .tenant-summary-grid strong,
body.dark-mode .tenant-summary-grid span{color:var(--ui-text)!important}
body.dark-mode .tenant-user-main-v048l>span,body.dark-mode .tenant-user-main-v048l>small,
body.dark-mode .tenant-user-share-v048l span,body.dark-mode .tenant-summary-grid span{color:var(--ui-muted)!important}

/* Mobile proportions: no giant button typography. */
@media(max-width:480px){
  .topbar h1,.brand h1{font-size:1.45rem!important}
  .hero h2,.hero-card h2,.account-hero-v045l h2{font-size:1.55rem!important;line-height:1.15!important}
  .panel h2,.card h2{font-size:1.1rem!important}
  .metric strong,.summary-strip strong{font-size:1.35rem!important}
  .tenant-user-row-v048l{padding:14px!important}
}

/* ======================================================================
   Home2M6 Design System v1.16
   Single visual language for all views. This layer intentionally lives at
   the end of the stylesheet so historical component styles cannot override
   contrast, spacing or button states.
   ====================================================================== */
:root{
  --hq16-bg:#f5f7fb;
  --hq16-surface:#ffffff;
  --hq16-surface-soft:#f8fafc;
  --hq16-surface-muted:#eef3f9;
  --hq16-navy:#0d1b2f;
  --hq16-navy-2:#142640;
  --hq16-blue:#2f6ff3;
  --hq16-blue-2:#245bd8;
  --hq16-blue-soft:#edf4ff;
  --hq16-text:#101828;
  --hq16-text-2:#344054;
  --hq16-muted:#667085;
  --hq16-muted-2:#98a2b3;
  --hq16-line:#dfe6ef;
  --hq16-line-strong:#cbd5e1;
  --hq16-success:#22c55e;
  --hq16-warning:#f59e0b;
  --hq16-danger:#dc2626;
  --hq16-radius:18px;
  --hq16-radius-sm:14px;
  --hq16-shadow:0 12px 30px rgba(15,23,42,.07);
  --hq16-shadow-soft:0 4px 14px rgba(15,23,42,.05);
}

html,body{background:var(--hq16-bg)!important;color:var(--hq16-text)!important}
body{font-family:Inter,-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Roboto,Arial,sans-serif!important}
main#app{max-width:1180px;margin:0 auto}
.view{color:var(--hq16-text)}
.topbar{background:rgba(255,255,255,.96)!important;border-bottom:1px solid var(--hq16-line)!important;box-shadow:0 1px 0 rgba(15,23,42,.02)!important}
.topbar h1{color:var(--hq16-text)!important;font-size:clamp(28px,4vw,40px)!important;letter-spacing:-.045em!important;line-height:1.04!important}
.eyebrow,.home-kicker-v116,.account-kicker-v045l,.planning-hero-v40 .eyebrow{color:#4d7ed8!important;font-size:11px!important;font-weight:850!important;letter-spacing:.19em!important;text-transform:uppercase}
.local-status{background:#dcfce7!important;color:#567080!important;border:0!important;border-radius:999px!important;padding:8px 13px!important;font-weight:750!important}
.local-status::before{content:"";display:inline-block;width:9px;height:9px;border-radius:50%;background:#22c55e;margin-right:7px;box-shadow:0 0 0 5px rgba(34,197,94,.13)}

/* Home: professional overview hero */
.home-hero-v116{position:relative;overflow:hidden;margin-bottom:18px;padding:28px;border-radius:26px;background:linear-gradient(135deg,#0d1b2f 0%,#18345f 52%,#2859ad 100%);color:#fff;border:1px solid rgba(148,163,184,.24);box-shadow:0 18px 44px rgba(15,23,42,.14)}
.home-hero-v116::after{content:"";position:absolute;width:330px;height:330px;border:1px solid rgba(255,255,255,.11);border-radius:50%;right:-150px;bottom:-190px;pointer-events:none}
.home-hero-copy-v116{position:relative;z-index:1;max-width:720px;margin-bottom:24px}
.home-kicker-v116{color:#9ec2ff!important}
.home-hero-v116 h2{margin:9px 0 8px;color:#fff!important;font-size:clamp(28px,5vw,42px)!important;line-height:1.07!important;letter-spacing:-.045em!important}
.home-hero-v116 p{margin:0;color:#cbd7e8!important;font-size:15px!important;line-height:1.55!important;max-width:680px}
.home-hero-v116 .dashboard-status-v071l{position:relative;z-index:1;margin:0!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important}
.home-hero-v116 .dashboard-status-v071l article{background:rgba(255,255,255,.075)!important;border:1px solid rgba(255,255,255,.16)!important;box-shadow:none!important;min-height:92px!important;padding:15px 16px!important;border-radius:18px!important;color:#fff!important}
.home-hero-v116 .dashboard-status-v071l article:hover{transform:none!important;box-shadow:none!important}
.home-hero-v116 .dashboard-status-v071l article>span{background:rgba(255,255,255,.10)!important;color:#fff!important}
.home-hero-v116 .dashboard-status-v071l strong{color:#fff!important;font-size:24px!important}
.home-hero-v116 .dashboard-status-v071l small{color:#c7d3e6!important;font-size:12px!important}

/* One card language everywhere */
.panel,.card,.entity-card,.metric,.property-card,.vehicle-card,.dashboard-widget,.more-card,.detail-panel,.task-card,.maintenance-card,.loan-card,
.tenant-user-row-v048l,.private-cost-card-v104,.account-stat-card-v045l,.planning-card-v40,.dashboard-property-card-v071l,.dashboard-vehicle-card-v071l,
[class*="-card-v"]{background:var(--hq16-surface)!important;color:var(--hq16-text)!important;border:1px solid var(--hq16-line)!important;border-radius:var(--hq16-radius)!important;box-shadow:var(--hq16-shadow-soft)!important}
.panel{padding:22px!important;margin-bottom:18px!important}
.panel-head{gap:14px!important;margin-bottom:16px!important}
.panel-head h2{margin:0!important;color:var(--hq16-text)!important;font-size:19px!important;letter-spacing:-.025em!important}
.panel-head p,.helper-text{color:var(--hq16-muted)!important;font-size:13px!important;line-height:1.5!important}
.tag{background:var(--hq16-surface-muted)!important;color:#475467!important;border:1px solid var(--hq16-line)!important;border-radius:999px!important;font-weight:750!important}

/* Shared hero language for feature pages */
.account-hero-v045l,.planning-hero-v40,.finance-hero-v105,[class*="hero-v"]{border-radius:26px!important;border:1px solid rgba(148,163,184,.22)!important;background:linear-gradient(135deg,#0d1b2f 0%,#18345f 52%,#2859ad 100%)!important;color:#fff!important;box-shadow:0 18px 44px rgba(15,23,42,.13)!important}
.account-hero-v045l h1,.account-hero-v045l h2,.planning-hero-v40 h1,.planning-hero-v40 h2,[class*="hero-v"] h1,[class*="hero-v"] h2{color:#fff!important}
.account-hero-v045l p,.planning-hero-v40 p,[class*="hero-v"] p{color:#cbd7e8!important}

/* Typography / values: force legibility */
h1,h2,h3,h4,h5,h6,strong{color:var(--hq16-text)}
p,small,.muted,.subtle{color:var(--hq16-muted)}
.metric strong,.account-stat-card-v045l>strong,.dash-loan-kpis-v071l strong,.personal-finance-grid-v104 strong,.private-cost-summary-v104 strong,
.dashboard-status-v071l strong,.summary-strip strong,.tenant-summary-grid strong{color:var(--hq16-text)!important}

/* One interaction language. Primary = blue, normal secondary = navy, destructive = red. */
button,.button,.primary,.secondary,.danger,.file-label{font-family:inherit!important;font-weight:780!important;letter-spacing:-.01em!important;border-radius:14px!important;min-height:44px!important;padding:10px 16px!important;font-size:14px!important;line-height:1.15!important;transition:transform .12s ease,box-shadow .15s ease,background .15s ease,border-color .15s ease!important}
button.primary,.primary{background:linear-gradient(180deg,#377bfa 0%,var(--hq16-blue) 100%)!important;color:#fff!important;border:1px solid #245bd8!important;box-shadow:0 7px 18px rgba(47,111,243,.20)!important}
button.primary:hover:not(:disabled),.primary:hover:not(:disabled){background:linear-gradient(180deg,#2f70ea,#245bd8)!important;transform:translateY(-1px)!important}
button.secondary,.secondary,.file-label{background:var(--hq16-navy-2)!important;color:#fff!important;border:1px solid #223a5b!important;box-shadow:0 5px 14px rgba(15,23,42,.12)!important}
button.secondary:hover:not(:disabled),.secondary:hover:not(:disabled),.file-label:hover{background:#1b3150!important;color:#fff!important;transform:translateY(-1px)!important}
button.danger,.danger{background:#fff1f2!important;color:#b42318!important;border:1px solid #fecdd3!important;box-shadow:none!important}
button.ghost,.ghost,.link-btn{background:transparent!important;color:var(--hq16-blue)!important;border-color:transparent!important;box-shadow:none!important}
button.tiny,.tiny{min-height:36px!important;padding:6px 10px!important;border-radius:11px!important;font-size:13px!important}
button:disabled,.primary:disabled,.secondary:disabled{opacity:.5!important;transform:none!important;box-shadow:none!important}

/* Tabs / segmented controls are navigation, not action buttons. */
.planning-tabs-v40,.tabs,.segmented{background:var(--hq16-surface-soft)!important;border:1px solid var(--hq16-line)!important;border-radius:18px!important;padding:6px!important;box-shadow:none!important}
.planning-tabs-v40 button,.tabs button,.segmented button{background:transparent!important;color:#475467!important;border:0!important;box-shadow:none!important;border-radius:14px!important;min-height:66px!important}
.planning-tabs-v40 button.active,.tabs button.active,.segmented button.active{background:linear-gradient(180deg,#377bfa,var(--hq16-blue))!important;color:#fff!important;box-shadow:0 7px 18px rgba(47,111,243,.18)!important}
.planning-tabs-v40 button.active small,.tabs button.active small,.segmented button.active small{color:#dbeafe!important}

/* Inputs / forms */
input,select,textarea{background:#fff!important;color:var(--hq16-text)!important;border:1px solid var(--hq16-line-strong)!important;border-radius:13px!important;min-height:46px!important;padding:10px 12px!important;box-shadow:0 1px 2px rgba(16,24,40,.02)!important}
input:focus,select:focus,textarea:focus{outline:none!important;border-color:#76a7ff!important;box-shadow:0 0 0 4px rgba(47,111,243,.12)!important}
label{color:var(--hq16-text-2)!important;font-weight:650!important}
dialog{background:var(--hq16-surface)!important;color:var(--hq16-text)!important;border:1px solid var(--hq16-line)!important;border-radius:24px!important;box-shadow:0 28px 70px rgba(15,23,42,.22)!important}
.dialog-actions{gap:10px!important}

/* Navigation */
#mainBottomNav.bottom-nav,.bottom-nav{background:rgba(255,255,255,.97)!important;border-top:1px solid var(--hq16-line)!important;box-shadow:0 -8px 28px rgba(15,23,42,.05)!important;backdrop-filter:blur(18px)!important;-webkit-backdrop-filter:blur(18px)!important}
.bottom-nav button{background:transparent!important;color:#7b8799!important;border:0!important;box-shadow:none!important;border-radius:14px!important;min-height:56px!important;padding:6px 4px!important;font-weight:720!important}
.bottom-nav button.active{background:var(--hq16-blue-soft)!important;color:#245bd8!important;box-shadow:inset 0 0 0 1px #cfe0ff!important}

/* Dark theme mirrors the same structure instead of replacing it. */
body.dark-mode{
  --hq16-bg:#08111f;
  --hq16-surface:#101b2d;
  --hq16-surface-soft:#0d1727;
  --hq16-surface-muted:#17263b;
  --hq16-text:#f8fafc;
  --hq16-text-2:#d9e2ef;
  --hq16-muted:#9fb0c7;
  --hq16-muted-2:#7d8da5;
  --hq16-line:#2a3a51;
  --hq16-line-strong:#3a4d68;
  background:var(--hq16-bg)!important;color:var(--hq16-text)!important
}
body.dark-mode .topbar{background:rgba(8,17,31,.96)!important;border-bottom-color:var(--hq16-line)!important}
body.dark-mode .topbar h1,body.dark-mode h1,body.dark-mode h2,body.dark-mode h3,body.dark-mode h4,body.dark-mode h5,body.dark-mode h6,body.dark-mode strong{color:var(--hq16-text)!important}
body.dark-mode p,body.dark-mode small,body.dark-mode .helper-text,body.dark-mode .muted,body.dark-mode .subtle{color:var(--hq16-muted)!important}
body.dark-mode .panel,body.dark-mode .card,body.dark-mode .entity-card,body.dark-mode .metric,body.dark-mode .property-card,body.dark-mode .vehicle-card,body.dark-mode .dashboard-widget,body.dark-mode .more-card,body.dark-mode .detail-panel,body.dark-mode .task-card,body.dark-mode .maintenance-card,body.dark-mode .loan-card,body.dark-mode .tenant-user-row-v048l,body.dark-mode .private-cost-card-v104,body.dark-mode .account-stat-card-v045l,body.dark-mode .planning-card-v40,body.dark-mode [class*="-card-v"]{background:var(--hq16-surface)!important;color:var(--hq16-text)!important;border-color:var(--hq16-line)!important;box-shadow:0 8px 24px rgba(0,0,0,.18)!important}
body.dark-mode .panel-head h2,body.dark-mode .metric strong,body.dark-mode .account-stat-card-v045l>strong,body.dark-mode .dash-loan-kpis-v071l strong,body.dark-mode .personal-finance-grid-v104 strong,body.dark-mode .private-cost-summary-v104 strong,body.dark-mode .dashboard-status-v071l strong,body.dark-mode .summary-strip strong,body.dark-mode .tenant-summary-grid strong{color:var(--hq16-text)!important}
body.dark-mode .tag{background:var(--hq16-surface-muted)!important;color:#cbd7e8!important;border-color:var(--hq16-line)!important}
body.dark-mode input,body.dark-mode select,body.dark-mode textarea{background:#132238!important;color:var(--hq16-text)!important;border-color:var(--hq16-line-strong)!important;color-scheme:dark}
body.dark-mode label{color:var(--hq16-text-2)!important}
body.dark-mode button.secondary,body.dark-mode .secondary,body.dark-mode .file-label{background:#1b3150!important;color:#fff!important;border-color:#355174!important}
body.dark-mode button.danger,body.dark-mode .danger{background:#351820!important;color:#fecdd3!important;border-color:#66313d!important}
body.dark-mode .planning-tabs-v40,body.dark-mode .tabs,body.dark-mode .segmented{background:#0c1625!important;border-color:var(--hq16-line)!important}
body.dark-mode .planning-tabs-v40 button,body.dark-mode .tabs button,body.dark-mode .segmented button{color:#9fb0c7!important}
body.dark-mode #mainBottomNav.bottom-nav,body.dark-mode .bottom-nav{background:rgba(8,17,31,.98)!important;border-top-color:var(--hq16-line)!important}
body.dark-mode .bottom-nav button{color:#8798b0!important;background:transparent!important}
body.dark-mode .bottom-nav button.active{background:#142849!important;color:#8fb7ff!important;box-shadow:inset 0 0 0 1px #284975!important}
body.dark-mode dialog{background:var(--hq16-surface)!important;border-color:var(--hq16-line)!important}
body.dark-mode .local-status{background:#173d2a!important;color:#b8dec9!important}

/* Blue/navy hero text must never inherit global dark values. */
body.dark-mode .home-hero-v116 h2,body.dark-mode .home-hero-v116 strong,body.dark-mode .home-hero-v116 p,
body.dark-mode .account-hero-v045l h1,body.dark-mode .account-hero-v045l h2,body.dark-mode .account-hero-v045l strong,
body.dark-mode .planning-hero-v40 h1,body.dark-mode .planning-hero-v40 h2,body.dark-mode .planning-hero-v40 strong{color:#fff!important}
body.dark-mode .home-hero-v116 p,body.dark-mode .account-hero-v045l p,body.dark-mode .planning-hero-v40 p{color:#cbd7e8!important}

/* Mobile rhythm based on the approved planning mock-up. */
@media(max-width:760px){
  main#app{padding:18px 14px 104px!important}
  .topbar{padding:18px 16px!important}
  .topbar h1{font-size:29px!important}
  .home-hero-v116,.account-hero-v045l,.planning-hero-v40,.finance-hero-v105,[class*="hero-v"]{padding:22px!important;border-radius:24px!important}
  .home-hero-v116 .dashboard-status-v071l{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .home-hero-v116 .dashboard-status-v071l article{min-height:82px!important;padding:13px!important}
  .panel{padding:18px!important;border-radius:18px!important}
  button,.button,.primary,.secondary,.danger,.file-label{min-height:44px!important;padding:10px 14px!important;font-size:14px!important}
  .planning-add-v40,.account-hero-v045l .primary,.account-hero-v045l .secondary,.finance-actions-v105 .primary,.finance-actions-v105 .secondary{width:100%!important}
  .finance-actions-v105{width:100%!important;display:grid!important;gap:10px!important}
  .planning-tabs-v40 button{min-height:74px!important;padding:10px 6px!important}
  .panel-head{align-items:flex-start!important}
}
@media(max-width:420px){
  .home-hero-v116{padding:20px!important}
  .home-hero-v116 h2{font-size:29px!important}
  .home-hero-v116 .dashboard-status-v071l strong{font-size:22px!important}
  .home-hero-v116 .dashboard-status-v071l small{font-size:11px!important}
  .panel{padding:16px!important}
}

/* =========================================================
   Home2M6 v1.17 — DARK MODE COMPLETION PASS
   Fix legacy light surfaces/text that survived v1.16.
   ========================================================= */
body.dark-mode .check-row,
body.dark-mode .radio-card-v085,
body.dark-mode .role-grid-v088>label,
body.dark-mode .remember-login-v089,
body.dark-mode .dashboard-widget-choices .check-row{
  background:#132238!important;color:#e8eef7!important;border-color:#314761!important;
}
body.dark-mode .check-row,
body.dark-mode .check-row *:not(input){color:#e8eef7!important}
body.dark-mode input[type="checkbox"],body.dark-mode input[type="radio"]{accent-color:#4f8cff}

body.dark-mode .detail-grid>div,
body.dark-mode .loan-facts>div,
body.dark-mode .cost-summary>div,
body.dark-mode .property-detail-block,
body.dark-mode .renovation-cost-list-v075l,
body.dark-mode .renovation-cost-list-v075l>summary,
body.dark-mode .document-row,
body.dark-mode .service-history-row,
body.dark-mode .meter-current-grid-v077l>div,
body.dark-mode .meter-history-row-v077l,
body.dark-mode .meter-previous-v077l,
body.dark-mode .dashboard-property-details>div,
body.dark-mode .dash-property-facts-v071l>div{
  background:#132238!important;color:#e8eef7!important;border-color:#314761!important;
}
body.dark-mode details.property-detail-block summary,
body.dark-mode .detail-grid strong,
body.dark-mode .loan-facts strong,
body.dark-mode .cost-summary strong,
body.dark-mode .document-row strong,
body.dark-mode .service-history-row strong{color:#f3f6fb!important}
body.dark-mode .detail-grid span,
body.dark-mode .loan-facts span,
body.dark-mode .cost-summary span,
body.dark-mode .document-row span,
body.dark-mode .service-history-row span{color:#9fb0c7!important}

/* Property/document/renovation blocks must not stay white in dark mode. */
body.dark-mode .property-card .property-detail-block,
body.dark-mode .property-card [class*="document"],
body.dark-mode .property-card [class*="renovation"]{border-color:#314761!important}
body.dark-mode .property-card .secondary{background:#1b3150!important;color:#fff!important;border-color:#355174!important}

/* Consumption widgets: remove white KPI islands and faint white-on-white values. */
body.dark-mode .dashboard-only-v071l .dash-consumption-card-v077l,
body.dark-mode .dashboard-only-v071l .dash-flex-meter-card-v078l,
body.dark-mode .dashboard-only-v071l .dash-meter-current-v077l>div,
body.dark-mode .dashboard-only-v071l .dash-last-period-v077l>div,
body.dark-mode .dashboard-only-v071l .dash-meter-charts-v077l>section,
body.dark-mode .dashboard-only-v071l .dash-flex-meter-kpis-v078l>div{
  background:#132238!important;color:#e8eef7!important;border-color:#314761!important;
}
body.dark-mode .dashboard-only-v071l .dash-flex-meter-title-v078l>span,
body.dark-mode .dashboard-only-v071l .dash-cost-item-v071l>span{background:#1b3150!important}
body.dark-mode .dashboard-only-v071l [class*="meter"] strong,
body.dark-mode .dashboard-only-v071l [class*="consumption"] strong{color:#f3f6fb!important}
body.dark-mode .dashboard-only-v071l [class*="meter"] span,
body.dark-mode .dashboard-only-v071l [class*="meter"] small,
body.dark-mode .dashboard-only-v071l [class*="consumption"] small{color:#9fb0c7!important}

/* Calendar: same dark card language, readable day numbers, event tint remains subtle. */
body.dark-mode .calendar-day,
body.dark-mode .calendar-grid button,
body.dark-mode .calendar button{
  background:#132238!important;color:#e8eef7!important;border-color:#314761!important;
}
body.dark-mode .calendar-day.has-events{background:#172b49!important;border-color:#365b89!important}
body.dark-mode .calendar-day.muted-day{background:#0d1828!important;opacity:.65!important}
body.dark-mode .calendar-day .day-number{color:#f3f6fb!important}
body.dark-mode .calendar-weekday{color:#9fb0c7!important}
body.dark-mode .calendar-dots i{box-shadow:0 0 0 1px rgba(255,255,255,.12)}

/* Dark mode form/readonly consistency. */
body.dark-mode input[readonly],body.dark-mode input:disabled,body.dark-mode select:disabled,body.dark-mode textarea:disabled{
  background:#0e1b2d!important;color:#9fb0c7!important;border-color:#2b405a!important;
}
body.dark-mode fieldset.dialog-section,body.dark-mode fieldset.object-picker,body.dark-mode .role-picker-v088,body.dark-mode .waste-type-fieldset{
  background:#0e1b2d!important;border-color:#314761!important;color:#e8eef7!important;
}
body.dark-mode fieldset legend{color:#dce6f3!important}

/* No accidental light utility surfaces inside dark content. */
body.dark-mode .progress{background:#263a53!important}
body.dark-mode .donut:before{background:#101a2b!important}
body.dark-mode .empty,body.dark-mode .empty-state{background:#132238!important;color:#9fb0c7!important;border-color:#314761!important}

/* v1.19 — shared section hero language: Finance / Properties / Vehicles */
.section-hero-v119{
  position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:flex-end;gap:20px;
  padding:24px;margin:0 0 16px;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-xl,24px);
  color:#fff!important;background:radial-gradient(circle at 85% 15%,rgba(59,130,246,.44),transparent 18rem),linear-gradient(135deg,#0b1220 0%,#13233f 55%,#1d4ed8 135%)!important;
  box-shadow:0 18px 45px rgba(15,23,42,.16)!important;
}
.section-hero-v119::after{content:"";position:absolute;right:-60px;bottom:-90px;width:210px;height:210px;border-radius:50%;border:1px solid rgba(255,255,255,.08);pointer-events:none}
.section-hero-v119>*,.section-hero-v119 button{position:relative;z-index:1}
.section-hero-kicker-v119{display:block;font-size:10px!important;font-weight:850!important;letter-spacing:.16em!important;text-transform:uppercase;color:#93c5fd!important}
.section-hero-v119 h2{margin:.15em 0!important;font-size:clamp(24px,4vw,34px)!important;letter-spacing:-.04em!important;color:#fff!important}
.section-hero-v119 p{max-width:650px;margin:.35rem 0 0!important;line-height:1.5;color:rgba(255,255,255,.72)!important}
.section-hero-actions-v119{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;min-width:max-content}
.section-hero-actions-v119 .primary{min-width:150px;background:#2f6df6!important;border-color:#3f7bff!important;color:#fff!important}
.section-hero-tag-v119{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 14px;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:rgba(15,23,42,.42);color:#fff!important;font-size:14px;font-weight:750;white-space:nowrap}
@media(max-width:560px){.section-hero-v119{align-items:stretch;flex-direction:column;padding:19px;border-radius:22px}.section-hero-actions-v119{align-items:stretch;justify-content:stretch;min-width:0}.section-hero-actions-v119 .primary{width:100%!important}.section-hero-tag-v119{width:100%}}


/* Home2M6 brand system v1.24 */
:root{--brand:#08b89f;--brand2:#06202b;--home2m6-navy:#06131d;--home2m6-navy-soft:#0b2632;--home2m6-teal:#08b89f;--home2m6-teal-dark:#07947f;--home2m6-mint:#d9fbf4}
.primary{background:linear-gradient(135deg,var(--home2m6-teal),var(--home2m6-teal-dark))!important;color:#fff!important}
.hero-card,.account-hero-v045l,.planning-hero-v046l{background:linear-gradient(135deg,var(--home2m6-navy),#0b3440 58%,var(--home2m6-teal-dark))!important}
.eyebrow{color:var(--home2m6-teal)!important}.bottom-nav button.active{color:var(--home2m6-teal-dark)!important}
.auth-gate{background:radial-gradient(circle at 20% 15%,rgba(8,184,159,.20),transparent 28rem),radial-gradient(circle at 85% 80%,rgba(8,148,127,.14),transparent 24rem),linear-gradient(145deg,#02090e,#06131d 56%,#0b2632)!important}
.home2m6-auth-brand-v124{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important}.home2m6-login-logo-v124{display:block;width:min(400px,92%);height:auto;max-height:197px;object-fit:contain;margin:0 auto 10px;filter:drop-shadow(0 16px 30px rgba(0,0,0,.22))}.home2m6-auth-brand-v124 p{margin:4px auto 0!important;max-width:420px!important}.login-field-icon-v080d,.login-user-icon-v080d{color:var(--home2m6-teal-dark)!important}.login-input-wrap-v080d:focus-within{border-color:var(--home2m6-teal)!important;box-shadow:0 0 0 3px rgba(8,184,159,.13)!important}@media(max-width:600px){.home2m6-login-logo-v124{width:min(360px,96%);margin-bottom:8px}}
