﻿/* =========================================================
   Rate Estimator — MEAL-ONLY (Navy border forced + SxS fields)
   ========================================================= */

/* ---- Card shell ---- */
#hmw-widget .hmw-card{
  position:relative;
  background:#fff;

  /* 1) explicit navy border */
  border:1px solid #041e42 !important;

  /* 2) extra navy ring outside + 3) inner ring inside */
  box-shadow:
    0 0 0 1px #041e42,            /* outer ring */
    inset 0 0 0 1px #041e42,      /* inner ring */
    0 6px 18px rgba(0,0,0,.06);   /* soft drop shadow */

  border-radius:16px;
  overflow:visible;               /* allow the outer ring to show cleanly */
  max-width:900px;
  margin:0 auto;
}

/* 4) overlay border (last resort if something kills both border & shadow) */
#hmw-widget .hmw-card::before{
  content:"";
  position:absolute;
  inset:0;
  border:1px solid #041e42;
  border-radius:16px;
  pointer-events:none;
  z-index:1;                      /* under content, above background */
}

/* ---- Header ---- */
#hmw-widget .hmw-card-header{
  text-align:center;
  padding:22px 18px 10px 18px;
  border-bottom:1px solid rgba(4,30,66,.12);
}
#hmw-widget .hmw-title{margin:0 0 6px 0;font-weight:800;color:#041e42;}
#hmw-widget .hmw-subtitle{margin:0;}

/* ---- Billing toggle ---- */
#hmw-widget .hmw-toggle-wrap{display:flex;align-items:center;justify-content:center;padding:12px 14px 0 14px;}
#hmw-widget .hmw-toggle-wrap.is-hidden{display:none;}
#hmw-widget .hmw-toggle-label{margin-right:8px;font-weight:700;color:#041e42;}
#hmw-widget .hmw-toggle{display:inline-flex;border-radius:999px;background:#e8ecf3;padding:4px;}
#hmw-widget .hmw-toggle-btn{border:0;background:transparent;color:#041e42;padding:8px 12px;border-radius:999px;cursor:pointer;font-weight:700;}
#hmw-widget .hmw-toggle-btn.is-active{background:#041e42;color:#fff;}

/* ---- Controls ---- */
#hmw-widget .hmw-controls{padding:10px 14px 6px 14px;}

/* Side-by-side from 768px+ */
@media (min-width:768px){
  #hmw-widget .hmw-controls{
    display:flex;flex-wrap:wrap;margin-left:-8px;margin-right:-8px;
  }
  #hmw-widget .hmw-controls .hmw-select{
    width:50%;padding-left:8px;padding-right:8px;box-sizing:border-box;
  }
}

/* Field block */
#hmw-widget .hmw-select{position:relative;display:block;width:100%;margin:0 0 1.25rem 0;text-align:left;box-sizing:border-box;}
#hmw-widget .hmw-select label{display:block;font-weight:700;color:#041e42;margin:0 0 .55rem;}

/* Selects (identical sizing; kill native arrows) */
#hmw-widget .hmw-select select{
  box-sizing:border-box;display:block;width:100%;
  padding:.78rem 2.5rem .78rem .95rem;min-height:50px;line-height:1.35;
  border:1px solid #041e42;border-radius:6px;background:#fff;color:#041e42;
  -webkit-appearance:none !important;-moz-appearance:none !important;appearance:none !important;
  background-image:none !important;
}
#hmw-widget .hmw-select select::-ms-expand{display:none;}

/* Centered caret aligned with text */
#hmw-widget .hmw-select::after{
  content:"▼";position:absolute;right:14px;top:52%;transform:translateY(-50%);
  font-size:12px;color:#041e42;pointer-events:none;
}

/* ---- Results (blue total card) ---- */
#hmw-widget .hmw-results{padding:6px 14px 14px 14px;}
#hmw-widget .hmw-total{
  background:#041e42;color:#fff;border-radius:10px;padding:12px;margin-top:10px;
  box-shadow:0 1px 6px rgba(0,0,0,.06);
}
#hmw-widget .hmw-total-label{font-weight:800;}
#hmw-widget .hmw-total-amount{font-size:1.35rem;font-weight:900;margin-top:4px;color:#fff;}

/* ---- See details ---- */
#hmw-widget .hmw-details{
  border-top:1px solid rgba(255,255,255,.25);
  margin-top:10px;padding-top:10px;text-align:center;
}
#hmw-widget .hmw-details-btn{
  display:flex;align-items:center;justify-content:center;width:100%;
  background:transparent;border:0;color:#fff;font-weight:700;cursor:pointer;
  padding:.78rem 0;text-decoration:none;font-size:1rem;
}
#hmw-widget .hmw-details-btn::after{
  content:"▼";display:inline-block;margin-left:8px;font-size:14px;color:#fff;transition:transform .2s ease;
}
#hmw-widget .hmw-details-btn[aria-expanded="true"]::after{transform:rotate(180deg);}
#hmw-widget .hmw-details-panel{margin-top:8px;background:rgba(255,255,255,.08);border-radius:8px;padding:.78rem 12px;font-size:1rem;}
#hmw-widget .hmw-details-content{line-height:1.35;}

/* ---- Mobile stacking ---- */
@media (max-width:640px){
  #hmw-widget .hmw-card-header{padding:18px 14px;}
  #hmw-widget .hmw-toggle-wrap{padding:10px 10px 0 10px;}
  #hmw-widget .hmw-controls,#hmw-widget .hmw-results{padding-left:10px;padding-right:10px;}
  #hmw-widget .hmw-controls .hmw-select{width:100%;padding-left:0;padding-right:0;}
}
/* =========================================================
   Rate Estimator — Subtle Navy Border
   (lighter 0.5px stroke + faint shadow)
   ========================================================= */

#hmw-widget,
#hmw-widget .hmw-card {
  position: relative;
  border-radius: 16px;
  background: #fff;
  isolation: isolate;
  border: 0.5px solid rgba(4,30,66,0.6) !important;
  box-shadow:
    inset 0 0 0 0.5px rgba(4,30,66,0.5),
    0 0 0 0.5px rgba(4,30,66,0.6),
    0 3px 10px rgba(0,0,0,0.04);
  filter: drop-shadow(0 0 0 rgba(4,30,66,0.5)) drop-shadow(0 0 0.5px rgba(4,30,66,0.5));
  background-clip: padding-box;
}

/* Overlay (subtle navy outline) */
#hmw-widget::before,
#hmw-widget .hmw-card::before {
  content: "";
  position: absolute;
  inset: 0;
  border: 0.5px solid rgba(4,30,66,0.5);
  border-radius: 16px;
  pointer-events: none;
  z-index: 1;
}
