/* Saját és közös mobil bevásárlólista: ugyanazok a sorok, közös téma és egyetlen stílustulajdonos. */
.vlap{
  max-width:820px;
  display:grid;
  gap:var(--t4);
  padding-block:var(--t6);
}

.vlap [hidden],.vlap-megosztas [hidden]{
  display:none;
}

.vlap-fej{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:var(--t3);
  flex-wrap:wrap;
}
.vlap-fej>div{
  flex:1;
  min-width:0;
}
.vlap-uj input,.vlap-valaszto select,.vlap-db input,.vlap-megosztas input{
  min-height:44px;
  border:1px solid var(--keret-eros);
  border-radius:var(--r-kicsi);
  background:var(--hatter);
  color:var(--szoveg);
  font:inherit;
  font-size:16px;
}
.vlap-uj input,.vlap-valaszto select,.vlap-megosztas input{
  padding:10px 12px;
}

.vlap-fej h1{
  margin:0;
  font-size:30px;
}

.vlap-fej p{
  margin:4px 0 0;
  color:var(--szoveg-halvany);
  font-size:13px;
}

.vlap-valaszto{
  display:grid;
  gap:4px;
  font-size:13px;
}

.vlap-allapot{
  margin:0;
  min-height:22px;
  color:var(--szoveg-halvany);
  font-size:13px;
}

.vlap-uj{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:var(--t2);
}

.vlap-uj input{
  min-width:0;
}

.vlap-nezet{
  display:flex;
  padding:4px;
  background:var(--hatter-blokk);
  border:1px solid var(--keret);
  border-radius:var(--r);
}

.vlap-nezet button{
  flex:1;
  min-height:44px;
  border:0;
  border-radius:var(--r-kicsi);
  background:transparent;
  color:var(--szoveg);
  font:inherit;
  font-size:14px;
  font-weight:700;
  cursor:pointer;
}

.vlap-nezet button[aria-pressed=true]{
  background:var(--hatter);
  box-shadow:var(--arnyek);
}

.vlap-osszeg{
  display:grid;
  gap:4px;
  padding:var(--t4);
  background:var(--akcent);
  color:var(--gomb-szoveg);
  border-radius:var(--r);
}

.vlap-osszeg strong{
  font-size:32px;
  line-height:1.2;
}

.vlap-osszeg p{
  margin:0;
  font-size:13px;
}

.vlap-csoportok{
  display:grid;
  gap:var(--t4);
}

.vlap-csoport{
  border:1px solid var(--keret);
  border-radius:var(--r);
  background:var(--hatter);
  overflow:hidden;
}

.vlap-csoport h2{
  display:flex;
  justify-content:space-between;
  gap:var(--t2);
  margin:0;
  padding:var(--t3);
  font-size:14px;
  background:var(--hatter-blokk);
}

.vlap-csoport ul{
  margin:0;
  padding:0;
  list-style:none;
}

.vlap-tetel{
  scroll-margin-block:96px;
  display:grid;
  grid-template-columns:44px minmax(0,1fr) auto 44px;
  align-items:center;
  gap:4px;
  padding:var(--t2);
}

.vlap-tetel+.vlap-tetel{
  border-top:1px solid var(--keret);
}

.vlap-pipa{
  display:grid;
  place-items:center;
  min-height:44px;
  cursor:pointer;
}

.vlap-pipa input{
  width:22px;
  height:22px;
  margin:0;
  accent-color:var(--akcent);
}

.vlap-nev{
  min-width:0;
  display:grid;
  gap:3px;
  line-height:1.35;
}

.vlap-nev a,.vlap-nev span{
  overflow-wrap:anywhere;
  color:var(--szoveg);
  font-weight:650;
  font-size:14px;
}

.vlap-nev small{
  font-size:12px;
  color:var(--szoveg-halvany);
}

.vlap-kesz .vlap-nev a,.vlap-kesz .vlap-nev span{
  text-decoration:line-through;
}

.vlap-db{
  display:grid;
  gap:3px;
  text-align:right;
}

.vlap-db input{
  width:54px;
  padding:4px;
  text-align:center;
}

.vlap-db strong{
  font-size:14px;
  white-space:nowrap;
}

.vlap-torol{
  min-width:44px;
  min-height:44px;
  border:0;
  background:transparent;
  color:var(--szoveg-halvany);
  font-size:24px;
  cursor:pointer;
}

.vlap-ures{
  padding:var(--t5);
  border:1px dashed var(--keret-eros);
  border-radius:var(--r);
  line-height:1.5;
}

.vlap-ures p,.vlap-jegyzet{
  font-size:13px;
  color:var(--szoveg-halvany);
}

.vlap-jegyzet{
  margin:0;
  line-height:1.5;
}

.vlap-utkozes{
  padding:var(--t4);
  border:1px solid var(--hiba);
  border-radius:var(--r);
  background:var(--hiba-halvany);
}

.vlap-utkozes p{
  margin:var(--t2) 0;
}

.vlap-megosztas label{
  display:grid;
  gap:var(--t2);
  margin-block:var(--t4);
}

.vlap-megosztas input{
  min-width:0;
  width:100%;
}

