/* EG Polsmaat Swatches (Targeted) v1.3.7 — compact UI + dark modal + default preselect */
:root{
  --eg-accent:#c09578;
  --eg-text:#1d1d1f;
  --eg-muted:#666;
  --eg-border:#2a2a2a;
  --eg-font:'Inter', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, Helvetica, Arial, 'Apple Color Emoji','Segoe UI Emoji';
}

.egp-wrap{min-height:96px;position:relative;margin:8px 0 14px; font-family:var(--eg-font); width:100%; z-index:2;}
.egp-hidden{display:none !important;}

.egp-inline-label{ font-weight:800; font-size:13.5px; margin:0 0 8px; color:#111; display:none; }
@media (max-width: 767px){
  .egp-inline-label{ display:block; }
  tr .label, th.label{ display:none !important; }
  .single-product .variations_form td.value,
  .single-product .variations_form .value { overflow: visible !important; }
}

.egp-grid{
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:8px;
  width:100%;
}
@media (min-width:640px){ .egp-grid{grid-template-columns:repeat(3, 1fr); gap:10px;} }
@media (min-width:1024px){ .egp-grid{grid-template-columns:repeat(3, 1fr); gap:12px;} }

.egp-swatch{
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  width:100%; min-height:44px; padding:6px 8px;
  border-radius:12px; border:1.25px solid var(--eg-accent); background:#fff;
  cursor:pointer; text-align:center;
  transition:box-shadow .15s ease, transform .12s ease, background .12s ease, color .12s ease, border-color .12s ease;
  box-shadow:0 1px 0 rgba(0,0,0,.03);
  font-family:var(--eg-font);
}
.egp-swatch .egp-line1{ font-weight:800; font-size:13px; letter-spacing:.2px; color:var(--eg-text); line-height:1.05; }
.egp-swatch .egp-line2{ font-weight:600; font-size:11.75px; color:#555; line-height:1.05; }
.egp-swatch:hover{ transform:translateY(-1px); box-shadow:0 6px 18px rgba(0,0,0,.08); }
.egp-swatch.is-selected{ background:var(--eg-accent); border-color:var(--eg-accent); }
.egp-swatch.is-selected .egp-line1,
.egp-swatch.is-selected .egp-line2{ color:#fff; }
.egp-swatch[disabled], .egp-swatch.egp-ghost{ opacity:.5; cursor:not-allowed; }

.egp-tools{ margin-top:6px; font-family:var(--eg-font); }
.egp-measure-btn{
  border:1px solid var(--eg-accent); background:#fff; color:#222;
  border-radius:10px; padding:6px 10px; cursor:pointer; font-weight:700; font-size:12.75px;
  transition:background .12s ease, color .12s ease, box-shadow .12s ease;
}
.egp-measure-btn:hover{ background:var(--eg-accent); color:#fff; box-shadow:0 4px 14px rgba(0,0,0,.08); }

/* Modal (dark) */
.egp-modal{ position:fixed; inset:0; display:none; font-family:var(--eg-font); z-index: 999999 !important; }
.egp-modal[aria-hidden="false"]{ display:block; }
.egp-backdrop{ position:fixed; inset:0; background:rgba(0,0,0,.7); backdrop-filter:saturate(120%) blur(2px); z-index: 999998 !important; }
.egp-dialog{
  position:relative; z-index:1000000; max-width:600px; width:92vw; margin:6vh auto; background:#0b0b0b; color:#f5f5f5;
  border-radius:14px; overflow:hidden; box-shadow:0 20px 50px rgba(0,0,0,.5);
  border:1px solid #222;
}
.egp-head{ padding:10px 14px; border-bottom:1px solid #222; background:#0b0b0b; }
.egp-head h3{ margin:0; font-size:16px; font-weight:800; color:#fff; letter-spacing:.2px; }
.egp-img{ display:flex; align-items:center; justify-content:center; background:#000; }
.egp-img img{ display:block; width:100%; height:auto; max-width:440px; max-height:280px; object-fit:contain; }
@media (max-width:480px){
  .egp-img img{ max-width:340px; max-height:220px; }
}
.egp-body{ padding:12px 14px; }
.egp-body p{ margin:.4em 0; color:#e9e9e9; font-size:13.5px; line-height:1.5; }

.egp-close{
  position:absolute; top:8px; right:8px; width:32px; height:32px; border-radius:10px;
  border:1px solid #222; background:#111; color:#fff; font-size:20px; cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 1px 6px rgba(0,0,0,.36);
}
.egp-close:hover{ background:#161616; }
.egp-modal-open{ overflow:hidden; }

td.value .egp-wrap{ float:none; clear:both; position:relative; }
