html, body{ height:100%; margin:0; padding:0; overflow-x:hidden; }

.parto-app{
  position:relative;
  display:block;
  width:100%;
  height:100vh;
  height:100dvh;
  min-height:100vh;
  overflow:hidden;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial;
}

.parto-screen{
  position:absolute;
  inset:0;
  transform:translateX(100%);
  transition:transform .35s ease;
  display:flex;
  flex-direction:column;
  width:100%;
  left:0; right:0;
  backface-visibility:hidden;
  will-change:transform;
}
.parto-screen.is-active{ transform:translateX(0); }
.parto-screen.is-left{ transform:translateX(-100%); }

.parto-screen[data-screen="home"]{
  background:#071422;
  background-size:cover;
  background-position:center;
}
.parto-overlay{
  position:absolute; inset:0;
  background:rgba(0,0,0,.45);
  z-index:1;
}
.parto-home{
  position:relative; z-index:2;
  height:100%;
  padding:24px;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  overflow:hidden;
}

.parto-logo-wrap{ position:relative; display:inline-block; margin-top:8vh; }
.parto-logo{ font-size:40px; font-weight:900; letter-spacing:2px; color:#fff; }
.parto-tagline{ margin-top:12px; color:rgba(255,255,255,.95); }

.parto-home-bottom{
  margin-top:auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
  padding-bottom:clamp(12px, 2.5vh, 24px);
}

.parto-footnote{
  font-size:13px;
  color:rgba(255,255,255,.92);
  text-align:center;
}

.parto-topbar{
  display:flex; align-items:center; gap:12px;
  padding:14px 14px 10px;
  background:rgba(0,0,0,.35);
  backdrop-filter:blur(6px);
}
.parto-topbar-title{ color:#fff; font-weight:800; }
.parto-spacer{ flex:1; }
.parto-back{
  width:40px;height:40px;
  border-radius:999px;
  border:none;
  cursor:pointer;
  background:rgba(255,255,255,.18);
  color:#fff;
  font-size:18px;
  display:flex; align-items:center; justify-content:center;
}

.parto-card{
  margin:14px auto;
  width:min(820px,calc(100% - 24px));
  background:rgba(255,255,255,.92);
  border-radius:18px;
  padding:16px;
  box-shadow:0 18px 45px rgba(0,0,0,.35);
}

.parto-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
}
@media(min-width:900px){
  .parto-grid{ grid-template-columns:1fr 1fr; }
}
.parto-span-2{ grid-column:1/-1; }

.parto-field label{
  display:block;
  font-size:13px;
  font-weight:800;
  margin-bottom:6px;
  color:#0f172a;
}
.parto-field input,
.parto-field select,
.parto-field textarea{
  width:100%;
  padding:12px;
  border-radius:12px;
  border:1px solid rgba(15,23,42,.18);
  background:#fff;
  font-size:14px;
  outline:none;
}

.parto-actions{ display:flex; justify-content:flex-end; margin-top:14px; }

.parto-btn{
  border:none;
  cursor:pointer;
  border-radius:999px;
  padding:12px 16px;
  font-weight:900;
}
.parto-btn-primary{
  background:#e11d48;
  color:#fff;
  width:min(420px,100%);
}
.parto-btn-primary:disabled{ opacity:.65; cursor:not-allowed; }

.parto-alert{
  margin-top:12px;
  padding:10px 12px;
  border-radius:12px;
  font-weight:800;
}
.parto-alert-error{
  background:rgba(185,28,28,.10);
  border:1px solid rgba(185,28,28,.25);
  color:#b91c1c;
}

/* FLAGS */
.parto-lang-switcher{
  position:absolute;
  left:50%;
  top:-70px;
  transform:translateX(-50%);
  display:flex;
  gap:15px;
  z-index:9999;
}
.parto-flag-btn{
  width:30px;
  height:22px;
  border:none;
  padding:0;
  border-radius:6px;
  overflow:hidden;
  cursor:pointer;
  background:rgba(0,0,0,0.25);
  box-shadow:0 4px 12px rgba(0,0,0,0.25);
  transition:.2s ease;
}
.parto-flag-btn img{ width:100%; height:100%; object-fit:cover; display:block; }
.parto-flag-btn:hover{ transform:translateY(-2px); }
.parto-flag-btn.active{ outline:2px solid #fff; outline-offset:2px; }

/* PHONE FIX */
.parto-phonewrap{
  display:flex;
  align-items:center;
  gap:10px;
  width:100%;
}
.parto-code{
  display:flex;
  align-items:center;
  justify-content:center;
  white-space:nowrap;
  flex:0 0 auto;
  min-width:72px;
  height:44px;
  padding:0 12px;
  border-radius:12px;
  background:rgba(15,23,42,.06);
  border:1px solid rgba(15,23,42,.12);
  font-weight:900;
  line-height:1;
}
.parto-phonewrap input{
  flex:1 1 auto;
  min-width:0;
  height:44px;
}

/* MODERN UPLOAD */
.parto-upload{ width:100%; }
.parto-upload-label{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:100%;
  padding:16px;
  border:2px dashed rgba(15,23,42,.25);
  border-radius:16px;
  cursor:pointer;
  background:rgba(15,23,42,.04);
  transition:.2s ease;
  font-weight:800;
  color:#0f172a;
}
.parto-upload-label:hover{
  background:rgba(225,29,72,.08);
  border-color:#e11d48;
}
.parto-file-name{
  margin-top:8px;
  font-size:13px;
  font-weight:700;
  color:#166534;
  text-align:center;
}

/* MODAL */
.parto-modal{
  display:none;
  position:absolute;
  inset:0;
  align-items:center;
  justify-content:center;
  background:rgba(0,0,0,.55);
  padding:16px;
}
.parto-modal.is-open{ display:flex; }
.parto-modal-card{
  width:min(520px,100%);
  background:#fff;
  border-radius:18px;
  padding:18px;
  box-shadow:0 20px 60px rgba(0,0,0,.35);
  text-align:center;
}
.parto-modal-title{ font-size:18px; font-weight:900; color:#166534; }
.parto-modal-text{ margin-top:10px; color:#0f172a; font-weight:700; }

/* ===== NEW: FormBrand grid (always 3 columns) ===== */
.parto-brand-help{
  font-weight:800;
  margin-bottom:12px;
  color:#0f172a;
}
.parto-brand-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:12px;
}
.parto-brand-item{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
  padding:12px 10px;
  border-radius:14px;
  border:1px solid rgba(15,23,42,.12);
  background:#fff;
  cursor:pointer;
  transition:.18s ease;
}
.parto-brand-item:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 22px rgba(0,0,0,.12);
}
.parto-brand-logo{
  width:64px;
  height:64px;
  border-radius:16px;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(15,23,42,.04);
  border:1px solid rgba(15,23,42,.10);
}
.parto-brand-logo img{
  max-width:100%;
  max-height:100%;
  display:block;
}
.parto-brand-name{
  font-weight:900;
  font-size:12px;
  text-align:center;
  color:#0f172a;
  line-height:1.2;
}

/* === NEW: FormBrand grid (3 yan yana) === */
.parto-brand-help{
  font-weight:800;
  margin-bottom:12px;
  color:#0f172a;
}
.parto-brand-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:12px;
}
.parto-brand-item{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
  padding:12px 10px;
  border-radius:14px;
  border:1px solid rgba(15,23,42,.12);
  background:#fff;
  cursor:pointer;
  transition:.18s ease;
}
.parto-brand-item:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 22px rgba(0,0,0,.12);
}
.parto-brand-logo{
  width:150px;
  height:84px;
  border-radius:16px;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(15,23,42,.04);
  border:1px solid rgba(15,23,42,.10);
}
.parto-brand-logo img{
  max-width:100%;
  max-height:100%;
  display:block;
}
.parto-brand-name{
  font-weight:900;
  font-size:12px;
  text-align:center;
  color:#0f172a;
  line-height:1.2;
}
/* parto-home zaten column flex, o yüzden auto ile alta iter */
.parto-home-bottom{
  margin-top: auto;              /* en önemli satır */
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding-bottom: max(16px, env(safe-area-inset-bottom)); /* iPhone çentiği için */
	color: white;
}

/* buton taşmasın */
.parto-home-bottom .parto-btn-primary{
  width: min(420px, 100%);
}

.parto-home-bottom{
  margin-top: auto;
  transform: translateY(-45x); /* -10 / -20 / -30 deneyebilirsin */
}

/* Tablet: 3 -> 3 kalsın veya 2 yapabilirsin */
@media (max-width: 900px){
  .parto-brand-grid{
    grid-template-columns: repeat(3, 1fr);
  }
  .parto-brand-logo{
    width: 100%;
    max-width: 150px;   /* istersen 130 yap */
  }
}

/* Telefon: 3 -> 2 sütun */
@media (max-width: 520px){
  .parto-brand-grid{
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }

  .parto-brand-logo{
    width: 100%;        /* hücreye göre küçülsün */
    max-width: 140px;   /* istersen 120 yap */
    height: 72px;       /* mobilde biraz küçült */
    border-radius: 14px;
  }

  .parto-brand-item{
    padding: 10px 8px;
  }
}

/* Çok küçük telefon: 1 sütun (opsiyonel) */
@media (max-width: 360px){
  .parto-brand-grid{
    grid-template-columns: 1fr;
  }
  .parto-brand-logo{
    max-width: 220px;
    height: 80px;
  }
}
/* 1) Ana kapsayıcı: yatay taşmayı gizle, dikey scroll'u ekranlara bırak */
.parto-app{
  overflow-x: hidden;
  overflow-y: hidden;   /* scroll'u .parto-screen taşısın */
  height: 100dvh;       /* mobilde daha doğru */
  min-height: 100dvh;
}

/* 2) Her ekranda dikey kaydırma aktif olsun */
.parto-screen{
  overflow-y: auto;
  -webkit-overflow-scrolling: touch; /* iPhone için akıcı scroll */
}

/* 3) Topbar varken kartın sığması için (çok marka varsa şart) */
.parto-screen[data-screen="formbrand"] .parto-card{
  max-height: calc(100dvh - 70px); /* 70px topbar yaklaşık */
  overflow: auto;
}
