:root{
  --moa-purple:#7357d8;
  --moa-purple-strong:#5e43c6;
  --moa-purple-soft:#f2efff;
  --moa-ink:#211b38;
  --moa-sub:#6f687d;
  --moa-line:#e8e4f0;
  --moa-bg:#f7f6fb;
}

/* V45 is a source-integrated layer. It contains no MutationObserver. */
html,body{max-width:100%;overflow-x:hidden}
body{background:var(--moa-bg)}
.hero .eyebrow{color:var(--moa-purple);letter-spacing:.02em}
.hero h1{color:var(--moa-ink);text-wrap:balance}
.hero-copy{color:var(--moa-sub)}

#birthday,
input[type="date"]{
  display:block;
  width:100%;
  min-width:0;
  max-width:100%;
  height:54px;
  box-sizing:border-box;
  -webkit-appearance:none;
  appearance:none;
}
#birthday::-webkit-date-and-time-value{min-width:0;text-align:left}
#birthday::-webkit-calendar-picker-indicator{margin:0;padding:8px;flex:0 0 auto}

button,.provider,.primary,.daypart-tab,.view-button,.moa-filter-chip,.moa-filter-toggle{
  min-height:48px;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}
.primary{background:var(--moa-purple);box-shadow:0 12px 28px rgba(115,87,216,.22)}
.primary:active:not(:disabled){background:var(--moa-purple-strong)}
.provider.active{border-color:#aa98ef;background:var(--moa-purple-soft);color:var(--moa-purple-strong)}

.moa-filter-panel{
  margin:0 0 16px;
  padding:14px;
  border:1px solid var(--moa-line);
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 30px rgba(33,27,56,.05);
}
.moa-filter-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.moa-filter-head strong{font-size:14px;color:var(--moa-ink)}
.moa-filter-toggle{padding:0 14px;border:0;border-radius:12px;background:var(--moa-purple-soft);color:var(--moa-purple-strong);font-size:12px;font-weight:850}
.moa-filter-body{display:grid;gap:13px;margin-top:13px}
.moa-filter-group{min-width:0}
.moa-filter-label{display:block;margin-bottom:8px;color:var(--moa-sub);font-size:11px;font-weight:850}
.moa-filter-chips{display:flex;gap:7px;overflow-x:auto;padding:1px 1px 5px;scrollbar-width:none}
.moa-filter-chips::-webkit-scrollbar{display:none}
.moa-filter-chip{flex:0 0 auto;padding:0 13px;border:1px solid var(--moa-line);border-radius:999px;background:#fff;color:#615a6f;font-size:12px;font-weight:800}
.moa-filter-chip.active{border-color:#a996ef;background:var(--moa-purple-soft);color:var(--moa-purple-strong)}

.moa-live-only-note{margin:0 0 12px;padding:12px 14px;border-radius:14px;background:#f5f2ff;color:#59499a;font-size:12px;line-height:1.55}
.moa-outing-note{margin-top:10px;color:var(--moa-sub);font-size:11px;line-height:1.55}
.moa-fit-chip{display:inline-flex;align-items:center;min-height:28px;padding:5px 9px;border-radius:999px;background:var(--moa-purple-soft);color:var(--moa-purple-strong);font-size:11px;font-weight:850}

@media(max-width:520px){
  .shell{padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right))}
  .hero{padding-bottom:22px}
  .hero h1{font-size:clamp(32px,10vw,43px);line-height:1.08}
  .form-card{padding:18px;border-radius:22px}
  .grid-2{grid-template-columns:minmax(0,1fr)}
  .field,input,select,#birthday{min-width:0;max-width:100%}
  .providers{grid-template-columns:1fr;gap:8px}
  .provider{width:100%;min-height:54px}
  .primary{height:58px;border-radius:16px}
  .daypart-tab,.view-button{min-height:46px}
  .result-toolbar{align-items:stretch;flex-direction:column}
  .view-toggle{align-self:flex-end}
  .moa-filter-panel{margin-left:0;margin-right:0}
}
