.smw{--smw-accent:#1387a4;--smw-border:#dce6ed;max-width:1200px;margin:28px auto;color:inherit;font-family:inherit;line-height:1.65}.smw *{box-sizing:border-box}.smw h2{font-size:28px;margin:10px 0 20px}.smw h3{font-size:20px;margin:0 0 18px}.smw p{margin:12px 0}.smw-welcome{background:#edf4ff;border:1px solid #d6e4fc;padding:28px;border-radius:12px;margin-bottom:25px}.smw-eyebrow{letter-spacing:2px;font-size:11px;font-weight:700;color:#24628a}.smw-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:24px}.smw-card{border:1px solid var(--smw-border);border-radius:10px;padding:24px;margin:20px 0;background:#fff;color:#213244}.smw label{display:block;font-size:14px;margin:16px 0 6px}.smw input:not([type=checkbox]):not([type=submit]),.smw select{width:100%;min-width:0;padding:11px 12px;border:1px solid #c6d3de;border-radius:5px;background:#fff;color:#213244;font:inherit;font-size:14px}.smw button,.smw .smw-button,.smw input[type=submit]{background:var(--smw-accent);color:#fff;border:0;border-radius:5px;padding:11px 18px;text-decoration:none;font:inherit;font-size:14px;cursor:pointer;display:inline-block;margin-top:16px}.smw small{font-size:12px}.smw details{border:1px solid var(--smw-border);padding:20px;border-radius:9px;margin:20px 0}.smw summary{font-weight:600;cursor:pointer}.smw-details{margin:20px 0}.smw-details>div{display:grid;grid-template-columns:1fr 1.4fr;padding:12px 0;border-bottom:1px solid var(--smw-border);gap:16px}.smw-details dt{font-size:14px;color:#516575}.smw-details dd{margin:0;overflow-wrap:anywhere}.smw-notice{background:#edf8ef;border:1px solid #badac3;border-radius:8px;padding:16px;margin:18px 0}.smw-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px}.smw-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:25px 0}.smw-metrics>div{background:#f0f6fa;padding:22px;border-radius:9px}.smw-metrics span{display:block;font-size:13px;color:#516575}.smw-metrics strong{font-size:34px}.smw-charts{grid-template-columns:repeat(3,1fr)}.smw-chart-label{display:flex;justify-content:space-between;gap:12px;font-size:12px;margin-top:12px}.smw meter{width:100%;height:18px;accent-color:var(--smw-accent)}.smw-filters{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:12px;align-items:end}.smw-filters button{align-self:center}.smw-scroll{overflow:auto;margin-top:22px}.smw table{border-collapse:collapse;width:100%;font-size:12px}.smw th,.smw td{text-align:left;vertical-align:top;padding:12px 10px;border-bottom:1px solid var(--smw-border)}.smw th{background:#f3f7fa;white-space:nowrap}.smw td{min-width:80px;max-width:250px;overflow-wrap:anywhere}.smw-pagination{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;margin:20px 0}.smw a:focus-visible,.smw button:focus-visible,.smw input:focus-visible{outline:3px solid #a3d7ed;outline-offset:3px}.smw-login{max-width:480px;padding:25px;border:1px solid var(--smw-border);border-radius:10px}
@media(max-width:800px){.smw{margin:20px 0}.smw-grid,.smw-charts{grid-template-columns:1fr}.smw-metrics{gap:10px}.smw-metrics>div{padding:15px}.smw-metrics strong{font-size:25px}.smw-filters{grid-template-columns:1fr 1fr}.smw-filters label:first-child{grid-column:1/-1}.smw h2{font-size:24px}.smw-welcome{padding:22px}.smw-details>div{grid-template-columns:1fr 1fr}}

.smw .smw-logo-preview{display:block;max-width:260px;max-height:120px;object-fit:contain;margin:15px 0;}

/* 0.1.2: isolate native form geometry from theme height/padding rules.
   Scoped to SOLVED forms; WooCommerce checkout/theme forms are untouched. */
.smw.smw label {
  overflow:visible;
}
.smw.smw select {
  display:block;
  box-sizing:border-box !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  height:48px !important;
  min-height:48px !important;
  max-height:none !important;
  margin:6px 0 0 !important;
  padding:0 34px 0 12px !important;
  font-family:inherit !important;
  font-size:16px !important;
  font-weight:400 !important;
  line-height:normal !important;
  letter-spacing:normal !important;
  text-transform:none !important;
  text-indent:0 !important;
  color:#213244 !important;
  background-color:#fff !important;
  background-image:none !important;
  appearance:auto !important;
  -webkit-appearance:menulist !important;
  vertical-align:middle !important;
  border:1px solid #c6d3de !important;
  border-radius:5px !important;
}
.smw.smw select option {
  font-size:16px;
  font-weight:400;
  color:#213244;
  background:#fff;
}
.smw.smw input:is([type=text],[type=search],[type=email],[type=tel],[type=password],[type=number],[type=url],[type=date]) {
  display:block;
  box-sizing:border-box !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  height:48px !important;
  min-height:48px !important;
  max-height:none !important;
  padding:0 12px !important;
  margin:6px 0 0 !important;
  font-family:inherit !important;
  font-size:16px !important;
  line-height:normal !important;
  color:#213244 !important;
}
.smw.smw .smw-filters {
  grid-template-columns:minmax(200px,2fr) repeat(4,minmax(145px,1fr));
  align-items:end;
}
.smw.smw .smw-filters label {
  min-width:0;
  margin:12px 0 0;
  line-height:1.5;
}
.smw.smw .smw-filters select,
.smw.smw .smw-filters input {margin-bottom:0 !important;}
.smw.smw .smw-grid>*,.smw.smw form {min-width:0;}
@media(max-width:1050px) {
  .smw.smw .smw-filters {grid-template-columns:repeat(2,minmax(0,1fr));}
  .smw.smw .smw-filters label:first-child {grid-column:1/-1;}
}
@media(max-width:480px) {
  .smw.smw .smw-filters {grid-template-columns:minmax(0,1fr);}
  .smw.smw .smw-filters label:first-child {grid-column:auto;}
}
.smw-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}
.smw-tabs a{padding:10px 16px;border:1px solid #dce6ed;border-radius:6px;text-decoration:none;background:#fff;color:#213244}
.smw-tabs a[aria-current=page]{background:#1387a4;color:#fff;border-color:#1387a4}
.smw .smw-member-number{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;background:#fff;border:1px solid #d6e4fc;border-radius:8px;padding:16px;margin-top:16px;color:#213244}
.smw .smw-member-number strong{font-size:20px;overflow-wrap:anywhere}
.smw-promo-card{border:1px solid #dce6ed;border-radius:10px;padding:24px;margin:24px auto;max-width:760px;overflow-wrap:anywhere}
.smw-promo-card>img{display:block;width:100%;max-width:650px;height:auto;border-radius:8px;margin:0 auto 24px}
.smw-birthday-card{background:#f0f5ff;border:1px solid #d6e4fc;border-radius:10px;padding:24px;max-width:760px;margin:24px auto}
.smw-birthday-card>img{display:block;width:100%;max-width:480px;height:auto;margin:0 auto 24px;border-radius:8px}
.smw .smw-danger{background:#a82e36;color:#fff}
.smw .smw-upload-preview img,.smw .smw-campaign-preview{display:block;width:100%;max-width:320px;height:auto;object-fit:contain;margin:16px 0;border-radius:6px}
.smw .smw-campaign-thumb{display:block;width:150px;max-width:100%;height:auto;object-fit:contain;margin:12px 0}
.smw.smw textarea{display:block;width:100%;max-width:100%;min-width:0;min-height:160px;height:auto!important;font:inherit;font-size:16px!important;line-height:1.6!important;padding:12px!important;box-sizing:border-box!important;border:1px solid #c6d3de;border-radius:5px;resize:vertical;color:#213244;background:#fff}
.smw.smw input[type=file]{display:block;width:100%;max-width:100%;height:auto;min-height:48px;padding:10px 0;font:inherit;font-size:14px}
@media(max-width:480px){.smw-promo-card,.smw-birthday-card{padding:18px}}

/* Account endpoint content stays inside WooCommerce's own navigation layout. */
.woocommerce-MyAccount-content .smw{max-width:100%;min-width:0;margin-top:12px}
.woocommerce-MyAccount-content .smw-grid{grid-template-columns:minmax(0,1fr)}
.smw-account-back{margin:0 0 20px}
.smw.smw .smw-filters{grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr))}
.smw.smw label{height:auto!important;max-height:none!important;min-width:0;white-space:normal!important;line-height:1.6!important}
.smw.smw select{overflow:visible!important;white-space:normal!important}
.smw .smw-email-preview{overflow:auto;background:#f2f5f8;padding:12px}
.smw .smw-promo-card,.smw .smw-birthday-card{overflow-wrap:anywhere}
@media(max-width:480px){.smw .smw-account-back .smw-button{display:block;text-align:center}.smw .smw-details>div{grid-template-columns:minmax(0,1fr)}.smw .smw-welcome{padding:18px}.smw.smw .smw-filters{grid-template-columns:minmax(0,1fr)}}
.smw .smw-password-fields{border:1px solid var(--smw-border);border-radius:8px;margin:24px 0;padding:18px;min-width:0}
.smw .smw-password-fields legend{font-size:16px;font-weight:600;padding:0 8px}
.smw .smw-password-fields small{display:block;margin:12px 0}
.smw .smw-password-fields input{font-family:inherit}
#smw-member-edit{scroll-margin-top:90px}

.smw .smw-member-name{min-width:170px;max-width:260px}
.smw .smw-member-email{min-width:240px;max-width:320px;overflow-wrap:anywhere}
.smw .smw-export-buttons{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.smw .smw-export-buttons button{margin-top:12px}
@media(max-width:480px){.smw .smw-export-buttons{display:grid;grid-template-columns:1fr}.smw .smw-export-buttons button{width:100%;margin:0}}
.smw-register{max-width:640px}
.smw-registration-name,.smw-registration-confirm{margin:0;max-width:100%}
.smw-registration-name label,.smw-registration-confirm label{font-size:inherit}
.smw-registration-name input,.smw-registration-confirm input{width:100%;min-height:48px;padding:10px 12px;box-sizing:border-box}
/* 0.7: neutralize theme floats/grid gaps only inside member registration forms. */
.smw-register form.register,.smw-member-registration{display:block!important}
.smw-register form.register>.form-row,.smw-member-registration>.form-row,
.smw-member-registration>.woocommerce-form-row,
.smw-registration-name,.smw-registration-profile,.smw-registration-confirm{
 float:none!important;clear:both!important;width:100%!important;max-width:100%!important;
 box-sizing:border-box!important;grid-column:1/-1!important;
}
.smw-register form.register>.form-row,.smw-member-registration>.form-row,
.smw-member-registration>.woocommerce-form-row{margin:0 0 16px!important;padding:0!important}
.smw.smw-registration-confirm{margin:0 0 16px!important;padding:0!important}
.smw-registration-confirm label,.smw-registration-profile label{display:block!important;margin:0 0 16px!important}
.smw-register form.register label,.smw-member-registration label{font-family:inherit!important;font-size:16px!important;line-height:1.6!important}
.smw-register form.register input[type=password],.smw-member-registration input[type=password]{box-sizing:border-box!important;width:100%!important;min-height:48px!important;height:48px!important;font:inherit!important;margin-top:6px!important}
.smw-registration-profile small,.smw-registration-confirm small{display:block;margin:6px 0 16px}
.smw.smw-registration-profile{margin:0!important;padding:0!important}
.smw .smw-password-fields label{display:block;margin:0 0 16px!important}
