/* Force light theme for the plugin only, regardless of OS or browser setting */
.mfc-light{
  color-scheme: light !important;  /* tell Chrome to render controls in light */
  --bg: transparent;               /* inherit your page bg */
  --card:#ffffff;
  --muted:#6b7280;                 /* gray-500 */
  --text:#1f2937;                  /* gray-800 */
  --accent:#800000;
  --accent-2:#16a34a;
  --danger:#ef4444;
  --border:#e5e7eb;
  --shadow:0 1px 2px rgba(0,0,0,.06), 0 8px 24px rgba(0,0,0,.04);
}
/* If the OS/browser prefers dark, *still* force our light tokens */
@media (prefers-color-scheme: dark){
  .mfc-light{
    color-scheme: light !important;
    --bg: transparent !important;
    --card:#ffffff !important;
    --muted:#6b7280 !important;
    --text:#1f2937 !important;
    --accent:#800000 !important;
    --accent-2:#16a34a !important;
    --danger:#ef4444 !important;
    --border:#e5e7eb !important;
    --shadow:0 1px 2px rgba(0,0,0,.06), 0 8px 24px rgba(0,0,0,.04) !important;
  }
}

/* Layout */
.mfc-container{
  max-width:1100px;
  margin:0 auto;
  padding:24px;
  color:var(--text);
  background:var(--bg);
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial, "Apple Color Emoji","Segoe UI Emoji";
}

.mfc-header{
  display:flex; gap:16px; align-items:center; justify-content:space-between; margin-bottom:16px;
}

.mfc-search{ flex:1; display:flex; gap:10px; align-items:center; margin:0 24px 0 0; }
.mfc-search input{
  flex:1;
  background:#fff;
  border:1px solid var(--border);
  border-radius:12px;
  padding:12px 14px;
  color:var(--text);
  outline:none;
  box-shadow: inset 0 1px 2px rgba(0,0,0,.03);
}

/* Buttons */
.mfc-btn{
  border:1px solid var(--border);
  background:#fff;
  padding:10px 14px;
  border-radius:12px;
  color:var(--text);
  cursor:pointer;
  transition: border-color .15s ease, box-shadow .15s ease, transform .02s ease;
}
.mfc-btn:hover{ border-color:#cdd5df; box-shadow:0 1px 2px rgba(0,0,0,.05); }
.mfc-btn:active{ transform:scale(.99); }

.mfc-success{
  background:linear-gradient(135deg,var(--accent-2),#16a34a);
  border:none;
  color:#fff;
  box-shadow:0 6px 14px rgba(22,163,74,.22);
}

/* Grid */
.mfc-grid{ display:grid; grid-template-columns:2fr 1fr; gap:18px; }
.mfc-catalog,.mfc-cart{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:16px;
  padding:16px;
  box-shadow:var(--shadow);
}

/* Catalog cards */
.mfc-list{ display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:12px; }
.mfc-card{
  border:1px solid var(--border);
  border-radius:14px;
  padding:14px;
  background:#fff;
  display:flex; flex-direction:column; gap:10px;
}
.mfc-title{ font-weight:700; color:var(--text); }
.mfc-muted{ color:var(--muted); font-size:12px; }

.mfc-sizes{ display:flex; gap:8px; flex-wrap:wrap; }
.mfc-chip{
  background:#fff;
  border:1px solid var(--border);
  padding:8px 10px;
  border-radius:10px;
  font-size:12px;
  cursor:pointer;
  transition: border-color .15s ease, transform .02s ease;
}
.mfc-chip:hover{ border-color:#cdd5df; }
.mfc-chip:active{ transform:scale(.98); }

/* Cart */
.mfc-cart{ position:sticky; top:16px; height:fit-content; }
.mfc-table{ width:100%; border-collapse:collapse; }
.mfc-th,.mfc-td{
  text-align:left;
  padding:8px;
  border-bottom:1px solid var(--border);
  font-size:13px;
  color:var(--text);
}
.mfc-tfoot .mfc-td{ border-bottom:none; }

.mfc-qty{ display:flex; gap:6px; align-items:center; }
.mfc-iconbtn{
  width:28px; height:28px;
  border-radius:8px;
  border:1px solid var(--border);
  background:#fff;
  color:var(--text);
  cursor:pointer;
  transition: border-color .15s ease, transform .02s ease;
}
.mfc-iconbtn:hover{ border-color:#cdd5df; }
.mfc-iconbtn:active{ transform:scale(.96); }

.mfc-remove{ color:var(--danger); cursor:pointer; }
.mfc-empty{ color:var(--muted); text-align:center; padding:14px; }

.mfc-config{
  margin-top:12px;
  display:grid; grid-template-columns:repeat(2,1fr); gap:8px;
}
.mfc-config input{
  background:#fff;
  border:1px solid var(--border);
  color:var(--text);
  border-radius:10px;
  padding:10px;
  box-shadow: inset 0 1px 2px rgba(0,0,0,.03);
}

.mfc-totals{
  display:flex; justify-content:space-between; align-items:center; margin-top:12px;
}
.mfc-total{ font-weight:800; font-size:18px; color:var(--text); }

.mfc-hint{ color:var(--muted); font-size:12px; }

/* Responsive */
@media(max-width:900px){
  .mfc-grid{ grid-template-columns:1fr; }
  .mfc-search{ margin:14px 0; }
}
/* Active chip = clearly added */
.mfc-chip.active{
  background: var(--accent);
  color: #fff;
  border-color: var(--accent);
}
.mfc-chip.active:after{
  content:" ✓";
  font-weight:700;
}
