/** Shopify CDN: Minification failed

Line 682:0 Unexpected bad string token
Line 682:3 Unterminated string token
Line 707:7 Unterminated string token

**/
/* ===========================================================================
   BRAND SETTINGS (CSS)
   Adjust these variables to re-skin the entire tool.
   Fonts: Poppins (primary) + Bodoni Moda (serif emphasis), loaded from
   Google Fonts below. If the theme already loads these fonts, the @import
   can be removed.
   Brand colors: orange #fd5f01 · blue #33b2fe · white / off-whites.
=========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,300;0,400;0,500;0,600;1,400&family=Bodoni+Moda:ital,opsz,wght@0,6..96,400;0,6..96,500;0,6..96,600;1,6..96,400&display=swap');

#am-routine-builder {
  --amrb-font-display: 'Bodoni Moda', 'Bodoni MT', 'Didot', Georgia, serif;
  --amrb-font-body: 'Poppins', 'Helvetica Neue', Helvetica, Arial, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --amrb-bg: #ffffff;            /* page background */
  --amrb-bg-soft: #f8f7f5;       /* soft off-white panel background */
  --amrb-ink: #1d1c1a;           /* primary text */
  --amrb-muted: #6f6a63;         /* secondary text */
  --amrb-line: #ebe9e5;          /* hairline borders */
  --amrb-orange: #fd5f01;        /* brand orange — CTAs + accents */
  --amrb-orange-deep: #c94a00;   /* darker orange for small text (contrast) */
  --amrb-blue: #33b2fe;          /* brand blue — secondary accents */
  --amrb-accent: #fd5f01;        /* button background */
  --amrb-accent-ink: #ffffff;    /* button text */
  --amrb-danger: #c94a00;        /* essential-gap accent */
  --amrb-radius: 12px;           /* corner radius for cards / inputs */
  --amrb-btn-radius: 999px;      /* fully round buttons */
  --amrb-max: 920px;             /* content max width */

  /* Hard reset within scope so theme styles don't bleed in */
  font-family: var(--amrb-font-body);
  color: var(--amrb-ink);
  background: var(--amrb-bg);
  line-height: 1.6;
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
  display: block;
  width: 100%;
  box-sizing: border-box;
}
#am-routine-builder *, #am-routine-builder *::before, #am-routine-builder *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
#am-routine-builder img { max-width: 100%; display: block; }
#am-routine-builder button {
  font-family: inherit;
  cursor: pointer;
  background: none;
  border: none;
  color: inherit;
  font-size: inherit;
  line-height: inherit;
  -webkit-tap-highlight-color: rgba(0,0,0,.06);
}
#am-routine-builder input, #am-routine-builder select {
  font-family: inherit;
  font-size: 16px; /* prevents iOS zoom */
  color: var(--amrb-ink);
}
#am-routine-builder a { color: inherit; }
#am-routine-builder [hidden] { display: none !important; }

/* Screen-reader-only utility */
#am-routine-builder .amrb-sr {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}

/* Focus visibility */
#am-routine-builder :focus-visible {
  outline: 2px solid var(--amrb-ink);
  outline-offset: 2px;
}

/* ---------------------------------------------------------------------------
   LAYOUT SHELL
--------------------------------------------------------------------------- */
#am-routine-builder .amrb-wrap {
  max-width: var(--amrb-max);
  margin: 0 auto;
  padding: 0 20px;
}
@media (min-width: 720px) {
  #am-routine-builder .amrb-wrap { padding: 0 32px; }
}

/* ---------------------------------------------------------------------------
   TYPE SYSTEM
--------------------------------------------------------------------------- */
#am-routine-builder .amrb-eyebrow {
  font-size: 11px;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--amrb-muted);
  font-weight: 500;
}
#am-routine-builder .amrb-eyebrow--accent { color: var(--amrb-orange); }
#am-routine-builder .amrb-h1 {
  font-family: var(--amrb-font-display);
  font-weight: 500;
  font-size: clamp(34px, 6vw, 56px);
  line-height: 1.08;
  letter-spacing: .01em;
  text-transform: uppercase;
}
#am-routine-builder .amrb-h2 {
  font-family: var(--amrb-font-display);
  font-weight: 500;
  font-size: clamp(24px, 4vw, 34px);
  line-height: 1.15;
  text-transform: uppercase;
  letter-spacing: .02em;
}
#am-routine-builder .amrb-h3 {
  font-size: 12px;
  letter-spacing: .2em;
  text-transform: uppercase;
  font-weight: 600;
}
#am-routine-builder .amrb-lede {
  color: var(--amrb-muted);
  font-size: 16px;
  max-width: 560px;
}
#am-routine-builder .amrb-small { font-size: 13px; color: var(--amrb-muted); }

/* ---------------------------------------------------------------------------
   BUTTONS
--------------------------------------------------------------------------- */
#am-routine-builder .amrb-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 52px;
  padding: 14px 34px;
  background: var(--amrb-accent);
  color: var(--amrb-accent-ink);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .2em;
  text-transform: uppercase;
  border-radius: var(--amrb-btn-radius);
  border: 1px solid var(--amrb-accent);
  transition: background .2s ease, color .2s ease, transform .12s ease;
  text-decoration: none;
}
#am-routine-builder .amrb-btn:hover { background: #e05300; border-color: #e05300; }
#am-routine-builder .amrb-btn:active { transform: translateY(1px); }
#am-routine-builder .amrb-btn--ghost {
  background: transparent;
  color: var(--amrb-ink);
  border: 1px solid var(--amrb-ink);
}
#am-routine-builder .amrb-btn--ghost:hover { background: var(--amrb-ink); color: var(--amrb-accent-ink); }
#am-routine-builder .amrb-btn--quiet {
  background: transparent;
  border: none;
  color: var(--amrb-muted);
  min-height: 44px;
  padding: 10px 12px;
  letter-spacing: .16em;
}
#am-routine-builder .amrb-btn--quiet:hover { color: var(--amrb-ink); background: transparent; }
#am-routine-builder .amrb-btn[disabled] { opacity: .35; cursor: not-allowed; }

/* ---------------------------------------------------------------------------
   HERO
--------------------------------------------------------------------------- */
#am-routine-builder .amrb-hero {
  background: var(--amrb-bg-soft);
  border-top: 1px solid var(--amrb-line);
  border-bottom: 1px solid var(--amrb-line);
  padding: 72px 0 64px;
  text-align: center;
}
#am-routine-builder .amrb-hero .amrb-h1 { margin: 18px auto 6px; max-width: 700px; }
#am-routine-builder .amrb-hero-sub {
  font-family: var(--amrb-font-display);
  font-size: clamp(17px, 2.6vw, 21px);
  font-style: italic;
  color: var(--amrb-muted);
  margin-bottom: 22px;
}
#am-routine-builder .amrb-hero .amrb-lede { margin: 0 auto 30px; }
#am-routine-builder .amrb-hero-rule {
  width: 42px; height: 1px; background: var(--amrb-orange);
  margin: 26px auto 0;
}
#am-routine-builder .amrb-logo {
  height: 74px;
  width: auto;
  margin: 0 auto 26px;
  mix-blend-mode: multiply; /* lets a white-background logo sit on off-white */
}
/* Dermatologist credibility card (Dr. Alster) */
#am-routine-builder .amrb-derm-card {
  display: flex;
  align-items: center;
  gap: 18px;
  justify-content: center;
  text-align: left;
  max-width: 480px;
  margin: 34px auto 0;
}
#am-routine-builder .amrb-derm-card img {
  width: 84px; height: 84px;
  border-radius: 50%;
  object-fit: cover;
  object-position: center top;
  flex: none;
  border: 3px solid #ffffff;
  box-shadow: 0 0 0 1px var(--amrb-line), 0 6px 18px rgba(29,28,26,.08);
}
#am-routine-builder .amrb-derm-name {
  font-family: var(--amrb-font-display);
  font-size: 18px;
  font-weight: 600;
}
#am-routine-builder .amrb-hero-derm {
  margin-top: 4px;
  font-size: 13px;
  color: var(--amrb-muted);
}
#am-routine-builder .amrb-resume { margin-top: 18px; }
#am-routine-builder .amrb-resume button { text-decoration: underline; text-underline-offset: 3px; }

/* ---------------------------------------------------------------------------
   EDUCATION — THE ORDER (tappable stack)
--------------------------------------------------------------------------- */
#am-routine-builder .amrb-edu { padding: 64px 0; }
#am-routine-builder .amrb-edu-head { text-align: center; margin-bottom: 36px; }
#am-routine-builder .amrb-edu-head .amrb-lede { margin: 14px auto 0; }
#am-routine-builder .amrb-stack { max-width: 560px; margin: 0 auto; }
#am-routine-builder .amrb-layer { border-top: 1px solid var(--amrb-line); }
#am-routine-builder .amrb-layer:last-child { border-bottom: 1px solid var(--amrb-line); }
#am-routine-builder .amrb-layer-btn {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 16px 8px;
  text-align: left;
  min-height: 56px;
}
#am-routine-builder .amrb-layer-btn:hover { background: var(--amrb-bg-soft); }
#am-routine-builder .amrb-layer-num {
  font-family: var(--amrb-font-display);
  font-size: 20px;
  color: var(--amrb-orange);
  width: 32px;
  flex: none;
  text-align: center;
}
#am-routine-builder .amrb-layer-name {
  font-size: 12px;
  letter-spacing: .2em;
  text-transform: uppercase;
  font-weight: 600;
  flex: 1;
}
#am-routine-builder .amrb-layer-caret {
  color: var(--amrb-muted);
  transition: transform .2s ease;
  font-size: 18px;
  line-height: 1;
}
#am-routine-builder .amrb-layer-btn[aria-expanded="true"] .amrb-layer-caret { transform: rotate(45deg); }
#am-routine-builder .amrb-layer-body {
  padding: 0 8px 18px 58px;
  color: var(--amrb-muted);
  font-size: 14.5px;
  max-width: 520px;
}
#am-routine-builder .amrb-edu-note {
  text-align: center;
  max-width: 560px;
  margin: 30px auto 0;
  font-size: 14px;
  color: var(--amrb-muted);
}

/* ---------------------------------------------------------------------------
   APP SHELL / TOP BAR / PROGRESS
--------------------------------------------------------------------------- */
#am-routine-builder .amrb-app { padding: 0 0 72px; }
#am-routine-builder .amrb-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 0 0;
  min-height: 56px;
}
#am-routine-builder .amrb-progress {
  height: 2px;
  background: var(--amrb-line);
  border-radius: 1px;
  overflow: hidden;
  margin: 10px 0 34px;
}
#am-routine-builder .amrb-progress-fill {
  height: 100%;
  background: var(--amrb-ink);
  width: 0%;
  transition: width .35s ease;
}
#am-routine-builder .amrb-stepcount {
  font-size: 11px;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--amrb-muted);
}

/* View transitions */
#am-routine-builder .amrb-view { animation: amrbFade .35s ease both; }
@keyframes amrbFade {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  #am-routine-builder * { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

/* ---------------------------------------------------------------------------
   QUIZ
--------------------------------------------------------------------------- */
#am-routine-builder .amrb-q { max-width: 620px; margin: 0 auto; }
#am-routine-builder .amrb-q .amrb-h2 { margin: 8px 0 8px; text-transform: none; letter-spacing: 0; font-size: clamp(24px, 4vw, 32px); }
#am-routine-builder .amrb-q-sub { color: var(--amrb-muted); font-size: 15px; margin-bottom: 26px; }
#am-routine-builder .amrb-opts { display: grid; gap: 10px; }
@media (min-width: 560px) {
  #am-routine-builder .amrb-opts--cols { grid-template-columns: 1fr 1fr; }
}
#am-routine-builder .amrb-opt {
  border: 1px solid var(--amrb-line);
  border-radius: var(--amrb-radius);
  padding: 15px 18px;
  text-align: left;
  background: var(--amrb-bg);
  transition: border-color .15s ease, background .15s ease;
  min-height: 54px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  width: 100%;
}
#am-routine-builder .amrb-opt:hover { border-color: var(--amrb-ink); }
#am-routine-builder .amrb-opt[aria-pressed="true"], #am-routine-builder .amrb-opt[aria-checked="true"] {
  border-color: var(--amrb-ink);
  background: var(--amrb-bg-soft);
  box-shadow: inset 0 0 0 1px var(--amrb-ink);
}
#am-routine-builder .amrb-opt-label { font-size: 15px; font-weight: 500; }
#am-routine-builder .amrb-opt-desc { display: block; font-size: 13px; color: var(--amrb-muted); font-weight: 400; margin-top: 2px; }
#am-routine-builder .amrb-opt-tick {
  flex: none; width: 18px; height: 18px;
  border: 1px solid var(--amrb-line); border-radius: 50%;
  position: relative;
}
#am-routine-builder .amrb-opt[aria-pressed="true"] .amrb-opt-tick,
#am-routine-builder .amrb-opt[aria-checked="true"] .amrb-opt-tick { background: var(--amrb-ink); border-color: var(--amrb-ink); }
#am-routine-builder .amrb-opt[aria-pressed="true"] .amrb-opt-tick::after,
#am-routine-builder .amrb-opt[aria-checked="true"] .amrb-opt-tick::after {
  content: ""; position: absolute; inset: 0; margin: auto;
  width: 5px; height: 8px; border: solid #fff; border-width: 0 1.5px 1.5px 0;
  transform: rotate(45deg) translate(-1px, -1px);
}
#am-routine-builder .amrb-q-actions { display: flex; gap: 12px; margin-top: 28px; align-items: center; flex-wrap: wrap; }
#am-routine-builder .amrb-maxnote { font-size: 12.5px; color: var(--amrb-muted); }

/* ---------------------------------------------------------------------------
   SHELF (add your products)
--------------------------------------------------------------------------- */
#am-routine-builder .amrb-shelf { max-width: 620px; margin: 0 auto; }
#am-routine-builder .amrb-shelf-list { display: grid; gap: 10px; margin: 22px 0; }
#am-routine-builder .amrb-shelf-item {
  border: 1px solid var(--amrb-line);
  border-radius: var(--amrb-radius);
  padding: 14px 16px;
  display: flex;
  align-items: center;
  gap: 14px;
}
#am-routine-builder .amrb-shelf-item-main { flex: 1; min-width: 0; }
#am-routine-builder .amrb-shelf-item-name { font-weight: 500; font-size: 15px; overflow-wrap: anywhere; }
#am-routine-builder .amrb-shelf-item-meta { font-size: 12.5px; color: var(--amrb-muted); letter-spacing: .04em; }
#am-routine-builder .amrb-shelf-item-actions { display: flex; gap: 4px; flex: none; }
#am-routine-builder .amrb-iconbtn {
  min-width: 44px; min-height: 44px;
  display: inline-flex; align-items: center; justify-content: center;
  color: var(--amrb-muted);
  font-size: 12px; letter-spacing: .08em; text-transform: uppercase;
}
#am-routine-builder .amrb-iconbtn:hover { color: var(--amrb-ink); }
#am-routine-builder .amrb-empty {
  border: 1px dashed var(--amrb-line);
  border-radius: var(--amrb-radius);
  padding: 28px 20px;
  text-align: center;
  color: var(--amrb-muted);
  font-size: 14.5px;
  margin: 22px 0;
}

/* Add-product form */
#am-routine-builder .amrb-form {
  border: 1px solid var(--amrb-line);
  border-radius: var(--amrb-radius);
  padding: 20px;
  margin: 18px 0;
  background: var(--amrb-bg-soft);
}
#am-routine-builder .amrb-field { margin-bottom: 16px; }
#am-routine-builder .amrb-field label {
  display: block;
  font-size: 11px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--amrb-muted);
  margin-bottom: 7px;
  font-weight: 600;
}
#am-routine-builder .amrb-field input[type="text"],
#am-routine-builder .amrb-field select {
  width: 100%;
  border: 1px solid var(--amrb-line);
  border-radius: var(--amrb-radius);
  background: #fff;
  padding: 12px 14px;
  min-height: 48px;
  appearance: none;
  -webkit-appearance: none;
}
#am-routine-builder .amrb-field select {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%231d1c1a' fill='none'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
  padding-right: 36px;
}
#am-routine-builder .amrb-field input:focus, #am-routine-builder .amrb-field select:focus {
  outline: none; border-color: var(--amrb-ink);
}
#am-routine-builder .amrb-chiprow { display: flex; flex-wrap: wrap; gap: 8px; }
#am-routine-builder .amrb-chip {
  border: 1px solid var(--amrb-line);
  border-radius: 999px;
  padding: 8px 14px;
  font-size: 13px;
  min-height: 38px;
  transition: border-color .15s ease, background .15s ease;
}
#am-routine-builder .amrb-chip:hover { border-color: var(--amrb-ink); }
#am-routine-builder .amrb-chip[aria-pressed="true"] { background: var(--amrb-ink); color: #fff; border-color: var(--amrb-ink); }
#am-routine-builder .amrb-form-actions { display: flex; gap: 10px; margin-top: 6px; flex-wrap: wrap; }
#am-routine-builder .amrb-error { color: var(--amrb-danger); font-size: 13px; margin-top: 8px; }

/* ---------------------------------------------------------------------------
   ANALYZING
--------------------------------------------------------------------------- */
#am-routine-builder .amrb-analyzing {
  text-align: center;
  padding: 90px 0;
  max-width: 460px;
  margin: 0 auto;
}
#am-routine-builder .amrb-pulse {
  width: 46px; height: 46px;
  border: 1px solid var(--amrb-line);
  border-top-color: var(--amrb-ink);
  border-radius: 50%;
  margin: 0 auto 26px;
  animation: amrbSpin 1s linear infinite;
}
@keyframes amrbSpin { to { transform: rotate(360deg); } }
#am-routine-builder .amrb-analyzing-line { color: var(--amrb-muted); font-size: 14.5px; margin-top: 8px; min-height: 22px; }

/* ---------------------------------------------------------------------------
   RESULTS — MY METHOD
--------------------------------------------------------------------------- */
#am-routine-builder .amrb-results-head {
  text-align: center;
  padding: 26px 0 40px;
  border-bottom: 1px solid var(--amrb-line);
  margin-bottom: 44px;
}
#am-routine-builder .amrb-results-head .amrb-h1 { margin: 12px 0 10px; }
#am-routine-builder .amrb-results-goals {
  display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin-top: 18px;
}
#am-routine-builder .amrb-goalpill {
  border: 1px solid var(--amrb-line);
  border-radius: 999px;
  font-size: 11.5px;
  letter-spacing: .14em;
  text-transform: uppercase;
  padding: 7px 14px;
  color: var(--amrb-muted);
}
#am-routine-builder .amrb-results-summary-line {
  font-family: var(--amrb-font-display);
  font-style: italic;
  color: var(--amrb-muted);
  font-size: 17px;
  margin-top: 16px;
}

/* Routine columns */
#am-routine-builder .amrb-routines { display: grid; gap: 56px; }
@media (min-width: 860px) {
  #am-routine-builder .amrb-routines { grid-template-columns: 1fr 1fr; gap: 48px; align-items: start; }
}
#am-routine-builder .amrb-routine-head { margin-bottom: 20px; }
#am-routine-builder .amrb-routine-head .amrb-eyebrow { display: block; margin-bottom: 6px; }
#am-routine-builder .amrb-routine-title {
  font-family: var(--amrb-font-display);
  font-size: 30px;
  text-transform: uppercase;
  letter-spacing: .03em;
  font-weight: 500;
}
#am-routine-builder .amrb-routine-theme {
  font-size: 12px; letter-spacing: .18em; text-transform: uppercase;
  color: var(--amrb-orange-deep); margin-top: 4px; font-weight: 600;
}

/* Step cards */
#am-routine-builder .amrb-step { border-top: 1px solid var(--amrb-line); }
#am-routine-builder .amrb-step:last-child { border-bottom: 1px solid var(--amrb-line); }
#am-routine-builder .amrb-step-btn {
  width: 100%;
  display: flex;
  gap: 16px;
  align-items: baseline;
  text-align: left;
  padding: 18px 6px;
}
#am-routine-builder .amrb-step-btn:hover { background: var(--amrb-bg-soft); }
#am-routine-builder .amrb-step-num {
  font-family: var(--amrb-font-display);
  font-size: 22px;
  color: var(--amrb-orange);
  flex: none;
  width: 34px;
}
#am-routine-builder .amrb-step-main { flex: 1; min-width: 0; }
#am-routine-builder .amrb-step-cat {
  font-size: 10.5px; letter-spacing: .22em; text-transform: uppercase;
  color: var(--amrb-muted); font-weight: 600; display: block; margin-bottom: 3px;
}
#am-routine-builder .amrb-step-name { font-size: 16px; font-weight: 500; overflow-wrap: anywhere; }
#am-routine-builder .amrb-step-freq { font-size: 12.5px; color: var(--amrb-orange-deep); margin-top: 3px; }
#am-routine-builder .amrb-step-flag {
  display: inline-block; font-size: 10.5px; letter-spacing: .12em; text-transform: uppercase;
  border: 1px solid var(--amrb-line); border-radius: 999px; padding: 2px 9px;
  color: var(--amrb-muted); margin-top: 6px;
}
#am-routine-builder .amrb-step-caret { color: var(--amrb-muted); transition: transform .2s ease; align-self: center; }
#am-routine-builder .amrb-step-btn[aria-expanded="true"] .amrb-step-caret { transform: rotate(45deg); }
#am-routine-builder .amrb-step-body { padding: 0 6px 20px 56px; font-size: 14px; color: var(--amrb-muted); display: grid; gap: 10px; }
#am-routine-builder .amrb-step-body strong {
  display: block; font-size: 10.5px; letter-spacing: .2em; text-transform: uppercase;
  color: var(--amrb-ink); font-weight: 600; margin-bottom: 2px;
}
#am-routine-builder .amrb-routine-empty {
  border: 1px dashed var(--amrb-line); border-radius: var(--amrb-radius);
  padding: 22px; font-size: 14px; color: var(--amrb-muted);
}

/* Section shells within results */
#am-routine-builder .amrb-section { padding: 56px 0 0; }
#am-routine-builder .amrb-section-head { margin-bottom: 26px; }
#am-routine-builder .amrb-section-head .amrb-h2 { margin-top: 8px; }
#am-routine-builder .amrb-section-head .amrb-lede { margin-top: 10px; }

/* Insights */
#am-routine-builder .amrb-insights { display: grid; gap: 12px; }
#am-routine-builder .amrb-insight {
  border-left: 2px solid var(--amrb-blue);
  background: var(--amrb-bg-soft);
  padding: 14px 18px;
  font-size: 14.5px;
}
#am-routine-builder .amrb-insight b { font-weight: 600; }

/* Gaps */
#am-routine-builder .amrb-gaps { display: grid; gap: 14px; }
@media (min-width: 720px) { #am-routine-builder .amrb-gaps { grid-template-columns: 1fr 1fr; } }
#am-routine-builder .amrb-gap {
  border: 1px solid var(--amrb-line);
  border-radius: var(--amrb-radius);
  padding: 20px;
}
#am-routine-builder .amrb-gap-tag {
  font-size: 10.5px; letter-spacing: .2em; text-transform: uppercase; font-weight: 700;
  display: inline-block; margin-bottom: 10px;
}
#am-routine-builder .amrb-gap--essential .amrb-gap-tag { color: var(--amrb-danger); }
#am-routine-builder .amrb-gap--optional .amrb-gap-tag { color: #1587cc; } /* readable brand blue */
#am-routine-builder .amrb-gap--essential { border-color: #f6cdb2; }
#am-routine-builder .amrb-gap-title { font-size: 16px; font-weight: 600; margin-bottom: 6px; }
#am-routine-builder .amrb-gap-body { font-size: 14px; color: var(--amrb-muted); }

/* Recommendations */
#am-routine-builder .amrb-recs { display: grid; gap: 16px; }
@media (min-width: 720px) { #am-routine-builder .amrb-recs { grid-template-columns: 1fr 1fr; } }
#am-routine-builder .amrb-rec {
  border: 1px solid var(--amrb-line);
  border-radius: var(--amrb-radius);
  display: flex;
  flex-direction: column;
}
#am-routine-builder .amrb-rec-imgwrap {
  background: var(--amrb-bg-soft);
  display: flex; align-items: center; justify-content: center;
  height: 210px; overflow: hidden;
}
#am-routine-builder .amrb-rec-imgwrap img { max-height: 180px; width: auto; object-fit: contain; }
#am-routine-builder .amrb-rec-body { padding: 20px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
#am-routine-builder .amrb-rec-cat { font-size: 10.5px; letter-spacing: .22em; text-transform: uppercase; color: var(--amrb-muted); font-weight: 600; }
#am-routine-builder .amrb-rec-name { font-size: 17px; font-weight: 600; }
#am-routine-builder .amrb-rec-slot { font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--amrb-orange-deep); font-weight: 600; }
#am-routine-builder .amrb-rec-why { font-size: 14px; color: var(--amrb-muted); flex: 1; }
#am-routine-builder .amrb-rec-caution { font-size: 12.5px; color: var(--amrb-muted); border-top: 1px solid var(--amrb-line); padding-top: 10px; }
#am-routine-builder .amrb-rec .amrb-btn { margin-top: 12px; width: 100%; }

/* At a glance */
#am-routine-builder .amrb-glance {
  display: grid; grid-template-columns: 1fr 1fr; gap: 1px;
  background: var(--amrb-line);
  border: 1px solid var(--amrb-line);
}
@media (min-width: 720px) { #am-routine-builder .amrb-glance { grid-template-columns: repeat(4, 1fr); } }
#am-routine-builder .amrb-glance-cell { background: var(--amrb-bg); padding: 22px 18px; text-align: center; }
#am-routine-builder .amrb-glance-label { font-size: 10.5px; letter-spacing: .2em; text-transform: uppercase; color: var(--amrb-muted); font-weight: 600; }
#am-routine-builder .amrb-glance-value {
  font-family: var(--amrb-font-display);
  font-size: 30px;
  margin-top: 8px;
  letter-spacing: .02em;
}
#am-routine-builder .amrb-glance-note { font-size: 12px; color: var(--amrb-muted); margin-top: 4px; }

/* Save / actions */
#am-routine-builder .amrb-save {
  text-align: center;
  border-top: 1px solid var(--amrb-line);
  margin-top: 64px;
  padding-top: 48px;
}
#am-routine-builder .amrb-save-actions { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; margin-top: 24px; }
#am-routine-builder .amrb-disclaimer {
  max-width: 620px;
  margin: 44px auto 0;
  font-size: 12.5px;
  color: var(--amrb-muted);
  text-align: center;
  border-top: 1px solid var(--amrb-line);
  padding-top: 22px;
}
#am-routine-builder .amrb-footer-actions { display: flex; gap: 8px; justify-content: center; flex-wrap: wrap; margin-top: 18px; }

/* Weekly / notes strip */
#am-routine-builder .amrb-weekly {
  margin-top: 26px;
  border: 1px solid var(--amrb-line);
  border-radius: var(--amrb-radius);
  padding: 18px 20px;
  font-size: 14px;
  color: var(--amrb-muted);
}
#am-routine-builder .amrb-weekly b { color: var(--amrb-ink); font-weight: 600; }

' +
      '@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600&family=Bodoni+Moda:ital,opsz,wght@0,6..96,400;0,6..96,600;1,6..96,400&display=swap");' +
      'body{font-family:Poppins,"Helvetica Neue",Helvetica,Arial,sans-serif;color:#1d1c1a;margin:0;padding:34px 26px;max-width:430px;margin:0 auto;}' +
      'h1{font-family:"Bodoni Moda",Didot,Georgia,serif;font-weight:500;font-size:38px;letter-spacing:.04em;text-align:center;margin:8px 0 2px;}' +
      '.brand{letter-spacing:.28em;font-size:12px;font-weight:600;text-align:center;margin-top:10px;}' +
      '.tag{font-family:"Bodoni Moda",Didot,Georgia,serif;font-style:italic;color:#6f6a63;text-align:center;margin:0 0 6px;}' +
      '.date,.goals{text-align:center;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#6f6a63;margin:4px 0;}' +
      '.goals{color:#c94a00;}' +
      'h2{font-size:13px;letter-spacing:.22em;text-transform:uppercase;border-top:1px solid #ebe9e5;padding-top:18px;margin:26px 0 4px;}' +
      '.theme{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#c94a00;margin:0 0 12px;}' +
      '.step{display:flex;gap:14px;margin:0 0 12px;}' +
      '.num{font-family:"Bodoni Moda",Didot,Georgia,serif;color:#fd5f01;font-size:17px;min-width:26px;}' +
      '.pname{font-weight:500;font-size:15px;}' +
      '.pmeta{font-size:11.5px;color:#6f6a63;letter-spacing:.04em;}' +
      '.notes{font-size:12.5px;color:#6f6a63;border-top:1px solid #ebe9e5;padding-top:14px;margin-top:22px;}' +
      '.recs{font-size:12.5px;margin-top:10px;}' +
      '.promo{text-align:center;border-top:1px solid #ebe9e5;margin-top:24px;padding-top:20px;}' +
      '.promo img{display:block;margin:0 auto 10px;width:140px;height:140px;}' +
      '.promo-eyebrow{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:#c94a00;font-weight:600;}' +
      '.promo-code{font-family:"Bodoni Moda",Didot,Georgia,serif;font-size:28px;letter-spacing:.06em;margin:4px 0 2px;}' +
      '.promo-text{font-size:12px;color:#6f6a63;}' +
      '.foot{margin-top:24px;text-align:center;font-size:11px;letter-spacing:.2em;text-transform:uppercase;}' +
      '.disc{font-size:10px;color:#6f6a63;text-align:center;margin-top:8px;letter-spacing:0;text-transform:none;}' +
      '.empty{font-size:13px;color:#6f6a63;font-style:italic;}' +
      '@media print{body{padding:12px;}}' +
      '
