/*
=========================================================
SWIZ-4 — ADMIN (v4-admin)
PLIK: /srv/swiz4/apps/v4-admin/assets/css/admin.mgmt-overlay.v1.css
Data: 2026-05-12
Wersja: v1.8-ipad-full-desktop-scale-test
Cel:
- Zarządzanie: chowamy Inbox/Zgłoszenia
- zostawiamy pasek produktów
- PC zostaje normalny
- iPad ma testowo widzieć cały ADMIN jak skalowaną planszę desktopową
=========================================================
*/

/* DESKTOP */
@media (min-width:1181px){
  .swizCtxMgmt .app.app3{
    grid-template-columns:228px minmax(0,1fr)!important;
  }
}

/* iPad / tablet klasyczny */
@media (min-width:821px) and (max-width:1180px){
  .swizCtxMgmt .app.app3{
    grid-template-columns:210px minmax(0,1fr)!important;
  }
}

/* mniejszy tablet */
@media (min-width:768px) and (max-width:820px){
  .swizCtxMgmt .app.app3{
    grid-template-columns:210px minmax(0,1fr)!important;
  }
}

/* Inbox: całkiem ukryty w Zarządzaniu */
.swizCtxMgmt #rightPanel{
  display:none!important;
}

/* Produkty: w Zarządzaniu zostają widoczne */
.swizCtxMgmt #topMiniTabs{
  display:flex!important;
}

/* Pracownicy: dopnij tabelę do pełnej szerokości */
.swizCtxMgmt #viewWorkersContent .workersView{
  max-width:none!important;
  width:100%!important;
}
.swizCtxMgmt #viewWorkersContent .workersView .tableWrap{
  width:100%!important;
}
.swizCtxMgmt #viewWorkersContent .workersView .tableWrap table{
  width:100%!important;
}

/* =====================================================
TEST — iPad jako skalowana plansza desktopowa
Uwaga:
- tylko dotykowy iPad/tablet zgłaszający 1181+
- PC z myszką nie powinien wejść w tę regułę
- skala ustawiana jest przez JS w zmiennej --swiz-ipad-scale
===================================================== */
@media (hover:none) and (pointer:coarse) and (min-width:1181px){
  body.swizIpadFullScale{
    overflow:auto!important;
  }

  body.swizIpadFullScale .app.app3{
    width:1920px!important;
    min-width:1920px!important;
    max-width:none!important;
    height:var(--swiz-ipad-layout-h, 1200px)!important;
    min-height:var(--swiz-ipad-layout-h, 1200px)!important;
    grid-template-columns:228px minmax(0,1fr)!important;
    zoom:var(--swiz-ipad-scale, .8);
    transform-origin:0 0;
  }

  body.swizIpadFullScale .sidebar,
  body.swizIpadFullScale .main{
    height:var(--swiz-ipad-layout-h, 1200px)!important;
    min-height:var(--swiz-ipad-layout-h, 1200px)!important;
  }

  body.swizIpadFullScale .main{
    min-width:0!important;
  }
}

/* =====================================================
SWIZ-4 — iPad full scale / workers height v2
Cel:
- lewy panel zostaje jak jest
- środkowa tabela i prawy kalendarz mają liczyć wysokość od planszy desktopowej,
  nie od fizycznego 100vh iPada
===================================================== */
@media (hover:none) and (pointer:coarse) and (min-width:1181px){
  body.swizIpadFullScale.swizCtxMgmt #viewWorkersContent .workersView .grid.two > .card .tableWrap{
    max-height:calc(var(--swiz-ipad-layout-h, 1200px) - 188px)!important;
    overflow-y:scroll!important;
  }

  body.swizIpadFullScale.swizCtxMgmt #viewWorkersContent .workersView .side{
    max-height:calc(var(--swiz-ipad-layout-h, 1200px) - 88px)!important;
    overflow-y:scroll!important;
  }
}

/* =====================================================
SWIZ-4 — iPad full scale / workers height v3
Cel:
- drobna korekta po v2
- środkowa tabela: + ok. 60px wysokości
- prawy panel: + ok. 60px wysokości
===================================================== */
@media (hover:none) and (pointer:coarse) and (min-width:1181px){
  body.swizIpadFullScale.swizCtxMgmt #viewWorkersContent .workersView .grid.two > .card .tableWrap{
    max-height:calc(var(--swiz-ipad-layout-h, 1200px) - 128px)!important;
    overflow-y:scroll!important;
  }

  body.swizIpadFullScale.swizCtxMgmt #viewWorkersContent .workersView .side{
    max-height:calc(var(--swiz-ipad-layout-h, 1200px) - 28px)!important;
    overflow-y:scroll!important;
  }
}

/* =====================================================
SWIZ-4 — iPad full-scale: widoczny Wyloguj
Cel:
- nie ruszać kalendarza
- nie ruszać proporcji planszy
- przycisk Wyloguj ma być dostępny w lewym panelu
===================================================== */
@media (hover:none) and (pointer:coarse) and (min-width:1181px){
  body.swizIpadFullScale.swizCtxMgmt .sidebarFooter{
    position:sticky!important;
    bottom:0!important;
    z-index:20!important;
  }
}

/* =====================================================
SWIZ-4 — iPad full-scale: widoczny Wyloguj
Cel:
- nie ruszać kalendarza
- nie ruszać proporcji planszy
- przycisk Wyloguj ma być dostępny w lewym panelu
===================================================== */
@media (hover:none) and (pointer:coarse) and (min-width:1181px){
  body.swizIpadFullScale.swizCtxMgmt .sidebarFooter{
    position:sticky!important;
    bottom:0!important;
    z-index:20!important;
  }
}

/* =====================================================
SWIZ-4 — iPad full-scale: wypełnienie wysokości widoku v1
Cel:
- skala iPada zostaje bez zmian
- aktywny widok w main ma zajmować dostępną wysokość planszy
- usuwa pusty dół pod modułami typu Magazyn / Produkty
===================================================== */
@media (hover:none) and (pointer:coarse) and (min-width:1181px){
  body.swizIpadFullScale .main{
    display:flex!important;
    flex-direction:column!important;
  }

  body.swizIpadFullScale .mainHeader{
    flex:0 0 auto!important;
  }

  body.swizIpadFullScale .main > [data-view]{
    flex:1 1 auto!important;
    min-height:calc(var(--swiz-ipad-layout-h, 1200px) - 64px)!important;
  }

  body.swizIpadFullScale .main > [data-view] > .card,
  body.swizIpadFullScale .main > [data-view] > div.card{
    min-height:calc(var(--swiz-ipad-layout-h, 1200px) - 92px)!important;
    box-sizing:border-box!important;
  }

  body.swizIpadFullScale #viewMagazynContent,
  body.swizIpadFullScale #viewProductsContent,
  body.swizIpadFullScale #viewFabricsContent{
    min-height:calc(var(--swiz-ipad-layout-h, 1200px) - 92px)!important;
    box-sizing:border-box!important;
  }
}

/* =====================================================
SWIZ-4 — iPad full-scale: przewijanie i okno tabel v1
Cel:
- nie zmieniać skali desktopowej
- odblokować gesty pan-x / pan-y
- w Magazynie powiększyć okno tabeli, żeby nie zostawiać pustego dołu
===================================================== */
@media (hover:none) and (pointer:coarse) and (min-width:1181px){
  html,
  body,
  body.swizIpadFullScale{
    overflow:auto!important;
    touch-action:pan-x pan-y!important;
  }

  body.swizIpadFullScale .app.app3,
  body.swizIpadFullScale .main{
    overflow:visible!important;
  }

  body.swizIpadFullScale .main > [data-view],
  body.swizIpadFullScale .main > [data-view] > .card{
    overflow:visible!important;
  }

  body.swizIpadFullScale .tableWrap{
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-x pan-y!important;
  }

  body.swizIpadFullScale #viewMagazynContent .tableWrap{
    height:calc(var(--swiz-ipad-layout-h, 1200px) - 560px)!important;
    max-height:calc(var(--swiz-ipad-layout-h, 1200px) - 560px)!important;
    overflow:auto!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-x pan-y!important;
  }
}

/* =====================================================
SWIZ-4 — iPad full-scale: MAGAZYN realne okno tabeli v1
Cel:
- Magazyn nie używa .tableWrap, tylko .mzTableBodyWrap
- zwiększamy realne okno tabeli przez --mzTableViewportH
- przewijanie pion/poziom działa w obrębie tabeli
===================================================== */
@media (hover:none) and (pointer:coarse) and (min-width:1181px){
  body.swizIpadFullScale #mzStockView{
    --mzTableViewportH:calc(var(--swiz-ipad-layout-h, 1200px) - 520px)!important;
  }

  body.swizIpadFullScale #mzStockView .mzTableBodyWrap,
  body.swizIpadFullScale #mzStockView .mzPilTableBodyWrap{
    height:var(--mzTableViewportH)!important;
    max-height:var(--mzTableViewportH)!important;
    min-height:420px!important;
    overflow-y:auto!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-x pan-y!important;
  }

  body.swizIpadFullScale #mzStockView .mzTableShell{
    overflow:hidden!important;
  }
}

/* =====================================================
SWIZ-4 — iPad full-scale: MAGAZYN ukrycie global search v1
Cel:
- ukryć zbędny przełącznik "Szukaj globalnie w MAG_MAIN"
- zostawić samo pole wyszukiwania
- zmniejszyć pionowy blok filtrów
===================================================== */
@media (hover:none) and (pointer:coarse) and (min-width:1181px){
  body.swizIpadFullScale #mzStockView .mzSearchMode,
  body.swizIpadFullScale #mzStockView #mzSearchGlobal{
    display:none!important;
  }

  body.swizIpadFullScale #mzStockView .mzSearchWrap{
    display:grid!important;
    grid-template-columns:minmax(320px,1fr) auto!important;
    align-items:center!important;
    gap:6px!important;
    min-height:26px!important;
    padding:0!important;
  }

  body.swizIpadFullScale #mzStockView #mzFilterSearch{
    height:24px!important;
    min-height:24px!important;
  }

  body.swizIpadFullScale #mzStockView #mzAnalysisToggleBox{
    margin-left:0!important;
    min-width:78px!important;
    transform:scale(.82);
    transform-origin:right center;
  }
}

/* =====================================================
SWIZ-4 — iPad TEST B: native desktop canvas
Cel:
- tryb testowy tylko po ?ipadMode=native
- bez CSS zoom
- strona jako szeroka plansza desktopowa
- przeglądarka ma umożliwić naturalne przybliżanie gestami
===================================================== */
@media (hover:none) and (pointer:coarse) and (min-width:768px){
  body.swizIpadNativeCanvas{
    overflow:auto!important;
    touch-action:auto!important;
  }

  body.swizIpadNativeCanvas .app.app3{
    width:1920px!important;
    min-width:1920px!important;
    max-width:none!important;
    height:auto!important;
    min-height:1200px!important;
    zoom:1!important;
    transform:none!important;
    transform-origin:0 0!important;
    grid-template-columns:228px minmax(0,1fr)!important;
  }

  body.swizIpadNativeCanvas .sidebar,
  body.swizIpadNativeCanvas .main{
    height:auto!important;
    min-height:1200px!important;
    overflow:visible!important;
  }

  body.swizIpadNativeCanvas .main{
    min-width:0!important;
  }

  body.swizIpadNativeCanvas .main > [data-view],
  body.swizIpadNativeCanvas .main > [data-view] > .card{
    overflow:visible!important;
  }

  body.swizIpadNativeCanvas .tableWrap,
  body.swizIpadNativeCanvas #mzStockView .mzTableBodyWrap,
  body.swizIpadNativeCanvas #mzStockView .mzPilTableBodyWrap{
    -webkit-overflow-scrolling:touch!important;
    touch-action:auto!important;
  }
}

/* =====================================================
SWIZ-4 — iPad MODE B: Magazyn jako naturalna strona v1
Cel:
- tylko tryb ?ipadMode=native
- Magazyn nie zamyka tabeli w małym oknie
- tabela staje się częścią dużej strony desktopowej
- iPad/Chrome ma pozwalać na pinch zoom i przesuwanie całej planszy
===================================================== */
@media (hover:none) and (pointer:coarse) and (min-width:768px){
  body.swizIpadNativeCanvas #mzStockView{
    --mzTableViewportH:auto!important;
  }

  body.swizIpadNativeCanvas #mzStockView .mzTableShell{
    overflow:visible!important;
  }

  body.swizIpadNativeCanvas #mzStockView .mzTableHeadWrap,
  body.swizIpadNativeCanvas #mzStockView .mzPilTableHeadWrap{
    overflow:visible!important;
    padding-right:0!important;
  }

  body.swizIpadNativeCanvas #mzStockView .mzTableBodyWrap,
  body.swizIpadNativeCanvas #mzStockView .mzPilTableBodyWrap{
    height:auto!important;
    max-height:none!important;
    min-height:0!important;
    overflow:visible!important;
    -webkit-overflow-scrolling:auto!important;
    touch-action:auto!important;
  }

  body.swizIpadNativeCanvas #mzStockView .mzTableBody,
  body.swizIpadNativeCanvas #mzStockView .mzPilTableBody{
    overflow:visible!important;
  }
}

/* SWIZ4_DESKTOP_SCALE_80_DEFAULT_START */
/*
  SWIZ-4 — DESKTOP SCALE 80 DEFAULT V3
  Cel:
  - PC przy Ctrl+0 ma być wizualnie jak dawne ręczne 80%
  - szerokość bez sztucznego width:125%, żeby nie było poziomego suwaka
  - wysokość kompensowana przez 125vh, żeby nie zostawał pusty dół
  - iPad / dotyk / ?ipadMode=native bez zmian
*/
@media (hover:hover) and (pointer:fine) and (min-width:1181px){
  body:not(.swizIpadNativeCanvas){
    overflow:auto!important;
  }

  body:not(.swizIpadNativeCanvas) .app.app3{
    zoom:.8!important;
    height:125vh!important;
    min-height:125vh!important;
  }

  body:not(.swizIpadNativeCanvas) .sidebar,
  body:not(.swizIpadNativeCanvas) .main{
    min-height:125vh!important;
  }
}
/* SWIZ4_DESKTOP_SCALE_80_DEFAULT_END */
