/* Desktop ab 1024 px. Die freigegebenen kleineren Ansichten und der Druck
   bleiben vollständig in ihren bisherigen Stylesheets. Keine Rechenlogik. */
@media screen and (min-width:1024px){
  body.app-design .nav-rueckweg{max-width:1320px;padding:0}
  body.app-design .nav-rueckweg .einst-zurueck{left:16px;top:8px}
  body.app-design .nav-rueckweg:not([hidden]) ~ :is(#v-kundenmodus,#v-db) .obj-hero-text{padding-top:68px}
  body.app-design{--desktop-nav:224px;--desktop-gap:28px;--nav-h:0px;--safe-pad:0px}
  body.app-design .wrap{
    --rueckweg-h:60px;
    inset:0 0 0 var(--desktop-nav);width:auto;height:100dvh;margin:0;
    padding:32px var(--desktop-gap) 56px;scrollbar-width:thin;scrollbar-gutter:stable;
    background:var(--arvon-paper)
  }
  body.app-design .wrap::-webkit-scrollbar{display:block}
  body.app-design .view,body.app-design .view:not(#v-start){
    width:100%;max-width:1320px;min-height:0;margin:0 auto;padding:0;
    background:none;border-radius:0;box-shadow:none
  }
  /* Dieselben fünf Ziele bleiben am festen Platz, auch während der Beratung. */
  body.app-design nav.tabs{
    top:0!important;bottom:0!important;left:0!important;right:auto!important;
    width:var(--desktop-nav);height:100dvh!important;padding:34px 18px 24px!important;
    border:0;border-radius:0!important;background:var(--arvon-night);box-shadow:none;
    overflow-y:auto;display:flex;flex-direction:column
  }
  body.app-design nav.tabs::before{
    content:"";display:block;flex:none;height:42px;margin:0 10px 52px;
    background:url('lockup.svg') left center/158px auto no-repeat
  }
  body.app-design .tabs-in{
    display:flex;flex-direction:column;align-items:stretch;gap:8px;
    width:100%;height:auto;min-height:360px;flex:1;margin:0;padding:0;max-width:none
  }
  body.app-design .tabs-in button{
    flex:0 0 auto;flex-direction:row;justify-content:flex-start;gap:14px;
    width:100%;min-height:52px;padding:14px 16px;border-radius:12px;
    color:color-mix(in srgb,var(--arvon-white) 72%,var(--arvon-night));background:transparent;
    font-size:14px;box-shadow:none
  }
  body.app-design .tabs-in button[data-v="daten"]{margin-top:auto}
  body.app-design .tabs-in .nav-label{font-size:13px;letter-spacing:0;white-space:nowrap}
  body.app-design .tabs-in .nav-icon{width:20px;height:20px;flex:none;color:inherit}
  body.app-design .tabs-in button:hover{background:rgb(var(--arvon-white-rgb) / .08);color:var(--arvon-white)}
  body.app-design .tabs-in button.on,body.app-design .tabs-in button.on:not([data-v="start"]){
    background:var(--arvon-white);color:var(--arvon-night);box-shadow:none
  }
  body.app-design .tabs-in button:focus-visible{outline-color:var(--arvon-white);outline-offset:3px}
  body.app-design #selbar{left:calc(var(--desktop-nav) + var(--desktop-gap));right:var(--desktop-gap);bottom:16px!important;border-radius:16px}
  body.app-design #updbar{left:calc(var(--desktop-nav) + var(--desktop-gap));right:var(--desktop-gap)}
  body.app-design #toast{left:calc(50% + var(--desktop-nav)/2)}

  body.app-design[data-arvon-tab] :is(#v-db,#v-kunden,#v-kundenmodus,#v-karte,#v-auswertung,#v-daten){background:none;min-height:0}
  body.app-design[data-arvon-tab] :is(#v-db,#v-kunden,#v-kundenmodus,#v-karte,#v-auswertung,#v-daten) :is(.obj-hero,.app-page-heading){
    margin:0 0 24px;min-height:0;height:auto;border-radius:24px;
    background:var(--arvon-night);padding:0;border:0
  }
  body.app-design .obj-hero-text,
  body.app-design[data-arvon-tab] :is(#v-db,#v-kunden,#v-kundenmodus,#v-karte,#v-auswertung,#v-daten) .app-page-heading{
    padding:32px 36px
  }
  body.app-design :is(.obj-hero,.app-page-heading)::after{background-size:190px;background-position:right 26px center;opacity:.05}
  body.app-design .obj-hero-text h2,body.app-design .app-page-heading h1{font-size:30px;letter-spacing:-.8px}
  body.app-design .app-eyebrow{font-size:11px;letter-spacing:.08em;margin-bottom:10px}
  body.app-design :is(.obj-hero-text,.app-page-heading) p{margin-top:8px}
  body.app-design .obj-leiste{margin:0 0 20px;padding:16px 20px;border-radius:16px;box-shadow:none}
  body.app-design .cards,body.app-design .kunde-cards{
    display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:0;align-items:start
  }
  /* Die bestehende Ansichtssteuerung setzt inline display:block. Nur die
     tatsächlich sichtbare Objektansicht erhält hier ihr Kartenraster. */
  body.app-design #v-db:not([hidden]) #cards{display:grid!important}
  body.app-design :is(.ocard,.kunde-card){min-width:0;margin:0;padding:24px;border-radius:20px}
  body.app-design .ocard:has(.editbox),body.app-design .ocard:has(.ocard-det){grid-column:1/-1}
  body.app-design .ocard-grid{gap:20px;padding:16px;border-radius:12px;margin-top:20px}
  body.app-design .ocard-ft{margin-top:20px}
  body.app-design .kk-kopf b{font-size:18px}
  body.app-design .card-hd{padding:22px 28px}
  body.app-design .card-bd{padding:28px}
  body.app-design .inp{border-radius:12px}
  body.app-design .inp :is(input,select,textarea){border-radius:12px}
  body.app-design :is(.btn,.ocard-more){border-radius:12px;box-shadow:none}
  body.app-design :is(.ocard,.kunde-card,.arvon-analysis-card){transition:border-color .15s,box-shadow .15s}
  body.app-design :is(.ocard,.kunde-card,.arvon-analysis-card):hover{border-color:var(--arvon-linie);box-shadow:0 6px 24px rgb(var(--arvon-night-rgb) / .045)}

  /* Die Startseite nutzt den Platz für Bestand und laufende Beratungen. */
  body.app-design #v-start:not([hidden]){display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,1fr);gap:28px;background:none}
  body.app-design #v-start #startArbeitszentrale{
    grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.9fr);
    gap:32px;align-items:center;padding:32px;border-radius:24px;background:var(--arvon-night) url("galaxy.svg") center/cover no-repeat;overflow:hidden
  }
  body.app-design #v-start .start-banner{height:auto;min-height:0}
  body.app-design #v-start .start-banner-text{height:auto;margin:0;padding:0;max-width:none}
  body.app-design #v-start .arvon-lockup{margin-bottom:32px}
  body.app-design #v-start .start-banner-h{font-size:36px;line-height:1.18;max-width:16ch;margin-top:8px}
  body.app-design #v-start #startGruss{max-width:none;width:100%;margin:0;padding:0}
  body.app-design #v-start .home-summary{margin-top:12px;box-shadow:none;background:var(--arvon-white)}
  body.app-design #v-start .home-summary-body{min-height:100px;padding:22px}
  body.app-design #v-start .home-summary h2{font-size:17px}
  body.app-design #v-start .home-summary-footer{padding:14px 18px;gap:10px;flex-wrap:wrap}
  body.app-design #v-start .home-document{opacity:.35}
  body.app-design #v-start .home-services{grid-column:1/-1;max-width:none;width:100%;padding:0;margin:0}
  body.app-design #v-start .home-service-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
  body.app-design #v-start .home-service-list button{justify-content:flex-start;min-height:56px;padding:16px 18px;font-size:13px;border-radius:14px}
  body.app-design #v-start #startObjekteCard,body.app-design #v-start #startKundenCard{min-width:0}
  body.app-design #v-start #startObjekte,body.app-design #v-start #startInhalt{padding:0;max-width:none}
  body.app-design #v-start .start-expose-scroll{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:12px;overflow:visible;padding:0}
  body.app-design #v-start .start-expose-karte{width:auto;min-width:0;border-radius:16px}
  body.app-design #v-start .start-expose-bild{height:140px}
  body.app-design #v-start .start-expose-info{padding:16px 12px}
  body.app-design #v-start .start-expose-ort{font-size:14px}
  body.app-design #v-start .start-expose-preis{font-size:16px}
  body.app-design #v-start .start-h,body.app-design #v-start .home-services h2{font-size:17px}
  body.app-design #v-start #startInhalt{padding:20px 24px;border:1px solid var(--line-2);border-radius:20px;background:var(--arvon-white)}
  body.app-design #v-start .top-row{padding:14px;border-radius:12px;margin:8px 0}

  body.app-design .arvon-analysis-list{max-width:none;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}
  body.app-design .arvon-analysis-card,body.app-design .arvon-analysis-empty{margin:0;padding:24px;min-width:0}
  body.app-design .arvon-analysis-empty{grid-column:1/-1}
  body.app-design .kprog{margin:0 0 20px;border:1px solid var(--line-2);border-radius:16px;padding:14px 16px;top:0}
  body.app-design #kundenmodusCard{border-radius:20px;margin:0}
  body.app-design .customer-report{display:grid;grid-template-columns:1.1fr 1fr;gap:18px;margin:0;padding:0!important}
  body.app-design .report-hero{margin:0;padding:26px;border-radius:20px}
  body.app-design .report-pair{padding:0;gap:16px;align-items:stretch}
  body.app-design .report-mini{padding:24px;display:flex;flex-direction:column;justify-content:center}
  body.app-design .report-mini strong{font-size:28px}
  body.app-design .meilensteine{grid-column:1/-1;padding:0;gap:16px}
  body.app-design .analyse-explorer{grid-column:1/-1;padding:10px 0 0;min-width:0}
  body.app-design .analyse-raster{gap:20px}
  body.app-design .analyse-karte{min-width:0;padding:24px;border-radius:20px}
  body.app-design .kschritt-ft{margin-top:24px}

  /* Profil links, vorhandene Einstellungsgruppen rechts. Unterseiten behalten
     ihre eigene Navigation und begrenzte, gut lesbare Formularbreite. */
  body.app-design #einstListe:not([hidden]){display:grid;grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr);gap:20px 28px;align-items:start}
  body.app-design #einstListe>.app-page-heading{grid-column:1/-1;margin-bottom:4px}
  body.app-design #einstListe>.einst-ich{grid-column:1;grid-row:2/5;margin:0;padding:32px 24px;border:1px solid var(--line-2);border-radius:20px}
  body.app-design #einstListe>.einst-gruppe{grid-column:2;margin:0;border:1px solid var(--line-2);border-radius:18px}
  body.app-design .einst-zeile{min-height:66px;padding:18px 20px}
  body.app-design .einst-seite>.card{max-width:960px;margin-left:auto;margin-right:auto}
  body.app-design .einst-seite>.einst-kopf+.card{margin-top:0}
  body.app-design .einst-kopf{gap:12px}
  body.app-design .dlg-overlay{padding:32px}
  body.app-design .expose-box{width:min(1100px,100%);max-width:1100px;max-height:calc(100dvh - 64px);border-radius:24px}
  body.app-design .expose-bild{height:300px}
  body.app-design .expose-body{padding:28px 36px}
  body.app-design .expose-eck{grid-template-columns:repeat(4,minmax(0,1fr))}
  body.app-design .expose-daten{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
}
@media screen and (min-width:1024px) and (max-width:1279px){
  body.app-design{--desktop-nav:196px;--desktop-gap:24px}
  body.app-design nav.tabs{padding-left:12px!important;padding-right:12px!important}
  body.app-design nav.tabs::before{background-size:144px}
  body.app-design #v-start:not([hidden]){grid-template-columns:1fr}
  body.app-design #v-start #startArbeitszentrale{gap:24px;padding:28px;grid-template-columns:minmax(0,1fr) minmax(300px,1fr)}
  body.app-design #v-start .start-banner-h{font-size:30px}
  body.app-design #v-start .home-service-list button{padding:14px 12px;font-size:12px}
  body.app-design .report-pair{grid-template-columns:1fr}
  body.app-design .report-mini{padding:16px 20px}
  body.app-design .report-mini strong{font-size:23px;margin:4px 0}
  body.app-design .report-mini .spark{height:24px;margin-top:6px}
}
@media screen and (min-width:1800px){
  body.app-design{--desktop-nav:248px;--desktop-gap:48px}
}
@media screen and (min-width:1024px) and (prefers-reduced-motion:reduce){
  body.app-design :is(.ocard,.kunde-card,.arvon-analysis-card){transition:none}
}
