
:root{
  --seg-bg: #f3f4f6;
  --seg-border: #e6e7e9;
  --seg-radius: 999px;
  --seg-padding: 6px;
  --veg-color: #059669; /* green */
  --nonveg-color: #ef4444; /* red */
  --label-text: #0f172a;
  --focus-ring: 3px;
}

.segmented{
  display:inline-flex;
  background:var(--seg-bg);
  border:1px solid var(--seg-border);
  border-radius:var(--seg-radius);
  padding:var(--seg-padding);
  gap:4px;
  align-items:center;
  user-select:none;
}

.segmented input[type="radio"]{
  position:absolute;
  opacity:0;
  pointer-events:none;
  width:0;
  height:0;
}

.segmented-label{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 14px;
  border-radius:999px;
  cursor:pointer;
  font-weight:600;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,"Helvetica Neue",Arial;
  color:var(--label-text);
  transition: transform .06s ease, box-shadow .08s ease, background .12s ease;
}

.segmented-label::before{
  content:"";
  width:12px;
  height:12px;
  border-radius:50%;
  display:inline-block;
  box-shadow: inset 0 0 0 2px rgba(0,0,0,0.05);
}

.segmented-label.veg::before{ background:var(--veg-color); box-shadow: 0 0 0 3px rgba(5,150,105,0.12); }
.segmented-label.nonveg::before{ background:var(--nonveg-color); box-shadow: 0 0 0 3px rgba(239,68,68,0.12); }

#veg:checked + label[for="veg"],
#nonveg:checked + label[for="nonveg"]{
  background:white;
  box-shadow: 0 6px 18px rgba(12,18,31,0.06);
  transform: translateY(-1px);
}

.segmented input[type="radio"]:focus + .segmented-label,
.segmented-label:focus{
  outline: none;
  box-shadow: 0 0 0 var(--focus-ring) rgba(99,102,241,0.16);
}

@media (max-width:420px){
  .segmented-label{ padding:8px 10px; font-size:14px; }
}

/* Pills */
.pills{ display:flex; gap:8px; align-items:center; }

.pill{
  border:1px solid transparent;
  padding:6px 12px;
  border-radius:999px;
  background:transparent;
  cursor:pointer;
  font-weight:600;
  transition: all .12s ease;
}

.pill--veg{ color:var(--veg-color); }
.pill--nonveg{ color:var(--nonveg-color); }

.pill[aria-pressed="true"]{
  background:linear-gradient(180deg, rgba(255,255,255,0.9), rgba(250,250,250,0.9));
  box-shadow: 0 6px 16px rgba(12,18,31,0.06);
  border-color: rgba(0,0,0,0.06);
}
.pill:focus{ outline: none; box-shadow: 0 0 0 3px rgba(99,102,241,0.12); }

/* Toggle switch */
.switch{
  display:inline-flex;
  align-items:center;
  gap:10px;
  cursor:pointer;
  user-select:none;
  font-weight:600;
}

.switch input{ display:none; }

.track{
  width:50px;
  height:28px;
  background:linear-gradient(90deg,#f3f4f6,#f8fafc);
  border-radius:999px;
  padding:4px;
  display:inline-flex;
  align-items:center;
  transition: background .12s ease, box-shadow .12s ease;
}

.knob{
  width:20px;
  height:20px;
  border-radius:50%;
  background:white;
  box-shadow: 0 4px 10px rgba(12,18,31,0.12);
  transform: translateX(0);
  transition: transform .14s cubic-bezier(.2,.9,.2,1);
}

.switch input:checked + .track{ background: linear-gradient(90deg, rgba(5,150,105,0.18), rgba(5,150,105,0.12)); }
.switch input:checked + .track .knob{ transform: translateX(22px); }
