.m2fs-shell{max-width:1120px;margin:0 auto;padding:52px 20px 80px;color:#f7f7f7}.m2fs-hero{padding:38px;border-radius:28px;background:linear-gradient(135deg,#0d0d0d,#1b1b1d);border:1px solid #303035;margin-bottom:24px}.m2fs-kicker{letter-spacing:.18em;font-size:.78rem;font-weight:800;color:#2f80ff}.m2fs-hero h1{font-size:clamp(2.2rem,5vw,4.4rem);line-height:.98;margin:.5rem 0 1rem;color:#fff}.m2fs-hero p{max-width:760px;color:#c9c9cd;font-size:1.08rem}.m2fs-form{display:grid;gap:20px}.m2fs-card{background:#111216;border:1px solid #2c2e34;border-radius:22px;padding:28px}.m2fs-card h2{margin-top:0;color:#fff}.m2fs-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.m2fs-choice{display:flex;gap:12px;align-items:flex-start;border:1px solid #353840;border-radius:16px;padding:18px;cursor:pointer;background:#18191e}.m2fs-choice strong{display:block;color:#fff}.m2fs-choice small{display:block;color:#aeb0b8;margin-top:4px}.m2fs-choice.is-disabled{opacity:.45;cursor:not-allowed}.m2fs-panel{display:none;margin-top:20px}.m2fs-panel.is-active{display:block}.m2fs-panel textarea,.m2fs-card textarea,.m2fs-fields select,.m2fs-fields input{width:100%;background:#0b0c0f;color:#fff;border:1px solid #3b3e47;border-radius:10px;padding:12px}.m2fs-panel input[type=file]{display:block;margin-top:10px;color:#ddd}.m2fs-help{color:#9fa2aa;font-size:.9rem}.m2fs-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.m2fs-fields label,.m2fs-card>label{display:block;color:#f1f1f3;font-weight:700}.m2fs-fields label select,.m2fs-fields label input,.m2fs-card>label textarea{margin-top:8px}.m2fs-ai-row{display:flex;gap:12px;align-items:center;margin-top:12px;flex-wrap:wrap}.m2fs-ai-button,.m2fs-submit{background:#2f80ff!important;color:#fff!important;border:0!important;border-radius:999px!important;padding:13px 22px!important;font-weight:800!important}.m2fs-submit{font-size:1rem;width:max-content}.m2fs-ai-preview-wrap{margin-top:18px;background:#0b0c0f;border:1px solid #32353d;border-radius:16px;padding:16px;max-width:520px}.m2fs-ai-preview{display:block;width:100%;height:auto;border-radius:12px;background:repeating-conic-gradient(#ddd 0 25%,#fff 0 50%) 50%/20px 20px}.m2fs-terms{display:grid;gap:12px}.m2fs-terms label{font-weight:500}.m2fs-terms input{margin-right:8px}@media(max-width:760px){.m2fs-choice-grid,.m2fs-fields{grid-template-columns:1fr}.m2fs-hero,.m2fs-card{padding:22px}.m2fs-shell{padding-top:26px}}

.m2fs-qty-control{display:grid;grid-template-columns:44px minmax(72px,1fr) 44px;gap:6px;margin-top:8px;align-items:stretch}.m2fs-qty-control input{margin-top:0!important;text-align:center;min-width:0}.m2fs-qty-btn{border:1px solid #3b3e47;background:#191b20;color:#fff;border-radius:10px;font-size:1.35rem;font-weight:800;cursor:pointer;line-height:1}.m2fs-qty-btn:hover,.m2fs-qty-btn:focus{background:#2f80ff;border-color:#2f80ff}.m2fs-qty-btn:focus-visible{outline:2px solid #fff;outline-offset:2px}

/* v1.0.2: keep the quantity value readable against themes that force light form text */
.m2fs-qty-control input[type=number]{
  background:#fff!important;
  color:#111!important;
  -webkit-text-fill-color:#111!important;
  caret-color:#111!important;
  border:1px solid #a8adb7!important;
  opacity:1!important;
  font-weight:700!important;
}
.m2fs-qty-control input[type=number]:focus{
  border-color:#2f80ff!important;
  box-shadow:0 0 0 2px rgba(47,128,255,.2)!important;
  outline:none!important;
}
.m2fs-qty-control input[type=number]::selection{
  background:#2f80ff;
  color:#fff;
  -webkit-text-fill-color:#fff;
}


/* v1.0.3: isolate quantity display from theme/browser form styling */
.m2fs-qty-control .m2fs-qty-input,
.m2fs-qty-control input.m2fs-qty-input{
  display:block!important;
  width:100%!important;
  height:54px!important;
  margin:0!important;
  padding:0 8px!important;
  background-color:#ffffff!important;
  background-image:none!important;
  color:#111111!important;
  -webkit-text-fill-color:#111111!important;
  caret-color:#111111!important;
  border:1px solid #a8adb7!important;
  border-radius:10px!important;
  opacity:1!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:20px!important;
  font-weight:800!important;
  line-height:54px!important;
  text-align:center!important;
  text-shadow:none!important;
  box-shadow:none!important;
}
.m2fs-qty-control .m2fs-qty-input:focus{
  border-color:#2f80ff!important;
  box-shadow:0 0 0 2px rgba(47,128,255,.2)!important;
  outline:none!important;
}

/* v1.1.0 bulk orders */
.m2fs-hidden{display:none!important}
.m2fs-bulk-panel{margin:8px 0 20px;padding:20px;border:1px solid #343740;border-radius:16px;background:#0b0c0f}
.m2fs-bulk-panel h3{margin:0 0 8px;color:#fff}
.m2fs-bulk-grid{display:grid;grid-template-columns:repeat(4,minmax(90px,1fr));gap:10px;margin:16px 0}
.m2fs-bulk-size{display:flex!important;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border:1px solid #353840;border-radius:12px;background:#18191e;color:#fff!important}
.m2fs-bulk-size span{font-weight:800}
.m2fs-bulk-size input{width:70px!important;margin:0!important;padding:8px!important;background:#fff!important;color:#111!important;-webkit-text-fill-color:#111!important;border:1px solid #a8adb7!important;border-radius:8px!important;text-align:center!important;font-weight:800!important}
.m2fs-bulk-total{padding:12px 14px;border-radius:12px;background:#15171c;color:#fff}
#m2fs-bulk-message{color:#aeb0b8;font-weight:600}
@media(max-width:760px){.m2fs-bulk-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}


.m2fs-price-preview{margin:14px 0 4px;padding:12px 14px;border:1px solid #394150;border-radius:10px;background:#151922;color:#fff}.m2fs-price-preview strong{color:#fff}.m2fs-price-preview span{color:#dbe4f0}
