:root{
  --deep:#1f5b2b;
  --forest:#2f6138;
  --sage:#6f9268;
  --sage-soft:#eef3e7;
  --cream:#fffaf5;
  --blush:#fff2ed;
  --pink:#ef777d;
  --peach:#eab6a4;
  --gold:#b89b61;
  --line:#d9dfd3;
  --text:#202821;
  --muted:#687168;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fffdf9;color:var(--text);font-family:Inter,Arial,sans-serif}
a{text-decoration:none;color:inherit} button,input{font:inherit} button{cursor:pointer}
.topbar{background:linear-gradient(90deg,#1d622d,#2c783a,#1d622d);color:white;text-align:center;padding:12px 18px;font-size:15px;letter-spacing:.01em}
.site-header{height:108px;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:38px;padding:0 clamp(28px,5vw,72px);background:#fffdf9;border-bottom:1px solid #ece9e3;position:sticky;top:0;z-index:20}
.brand{display:flex;flex-direction:column;color:var(--forest);font-family:Georgia,serif;font-size:38px;font-weight:700;line-height:1}
.brand span:after{content:"❀";font-size:17px;color:#d99c81;vertical-align:top;margin-left:2px}
.brand small{font:500 11px/1.4 Inter,Arial,sans-serif;letter-spacing:.03em;color:#6e7b70;margin-top:8px}
.nav-links{display:flex;gap:48px;align-items:center;font-size:14px;font-weight:700}.nav-links a{padding:12px 0}.nav-links a.active,.nav-links a:hover{color:var(--deep);border-bottom:2px solid var(--deep)}
.header-cta,.primary-btn,.outline-btn,.ghost-btn{border-radius:10px;padding:14px 24px;font-weight:800;transition:.2s ease}
.header-cta,.primary-btn{border:1px solid var(--forest);background:linear-gradient(#47804b,#2f6938);color:white}.header-cta:hover,.primary-btn:hover{transform:translateY(-1px);filter:brightness(.97)}
.outline-btn{display:inline-flex;align-items:center;border:1px solid var(--forest);background:#fffdf9;color:var(--forest)}
.hero{min-height:590px;display:grid;grid-template-columns:1.03fr .97fr;background:linear-gradient(90deg,#f6f7ed 0%,#fffaf5 46%,#fff0ea 100%);overflow:hidden}
.hero-copy{padding:68px clamp(36px,6vw,90px);display:flex;flex-direction:column;justify-content:center}.eyebrow{text-transform:uppercase;letter-spacing:.22em;color:#66816a;font-size:13px;font-weight:900;margin:0 0 22px}
.hero h1{font-family:Georgia,serif;font-size:clamp(58px,6.3vw,92px);line-height:.95;color:#295e34;margin:0 0 24px;letter-spacing:-.02em}.hero h1 em{font-style:italic;color:var(--pink);font-weight:500}
.hero-sub{font-size:19px;line-height:1.55;color:#343b35;max-width:600px;margin:0 0 30px}.hero-actions{display:flex;gap:20px;flex-wrap:wrap;margin-bottom:34px}
.hero-benefits{display:grid;grid-template-columns:repeat(4,1fr);max-width:680px;gap:20px}.hero-benefits div{text-align:center;color:var(--forest)}.hero-benefits span{display:block;font-size:32px;line-height:1}.hero-benefits strong{display:block;font-size:14px;margin-top:9px}.hero-benefits small{display:block;font-size:13px;color:#4f584f;margin-top:4px}
.hero-visual{position:relative;min-height:590px;background:#f9e9e1;overflow:hidden}.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;transform:scale(1.02)}
.spot-badge{position:absolute;left:3%;top:28%;width:142px;height:142px;border-radius:50%;background:linear-gradient(#79a65e,#4f843f);display:flex;flex-direction:column;align-items:center;justify-content:center;color:white;text-align:center;box-shadow:0 12px 30px rgba(49,91,48,.18)}.spot-badge strong{font-family:Georgia,serif;font-size:46px;line-height:.9}.spot-badge span{font-size:15px;font-weight:900;line-height:1.25;margin-top:8px}
.launch-panel{display:grid;grid-template-columns:1.15fr .82fr 1.03fr;gap:30px;padding:34px clamp(28px,5vw,72px) 28px;background:linear-gradient(90deg,#fff5f1,#fffaf8,#fff4f0);border-top:1px solid #f0e8e3}.launch-panel h2{font-family:Georgia,serif;color:var(--forest);font-size:31px;margin:0 0 18px;text-align:center}
.how-compact,.bloom-box-panel,.waitlist-card{min-height:260px;padding:0 24px}.bloom-box-panel{border-left:1px solid #eadfd9;border-right:1px solid #eadfd9}.mini-steps{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:9px;align-items:start}.mini-steps>div:not(.arrow){text-align:center}.round-icon{width:72px;height:72px;border-radius:50%;background:#f0f2e6;display:grid;place-items:center;margin:0 auto 13px;color:var(--forest);font-size:34px;border:1px solid #e4e6d8}.mini-steps strong{display:block;color:#286033;font-size:14px}.mini-steps small{display:block;font-size:12px;line-height:1.5;margin-top:8px;color:#313833}.arrow{font-size:36px;color:#3f7b46;padding-top:18px}.text-link{display:block;color:#3c7140;text-align:center;text-decoration:underline;margin-top:24px;font-size:13px}
.price-options{display:grid;grid-template-columns:1fr 1fr;gap:14px}.price-box{border:1px solid #b9cdb4;background:#fbfcf7;border-radius:12px;padding:18px 14px;text-align:center}.price-box.pink{border-color:#efb4b2;background:#fffafa}.price-box strong{display:block;color:#316638}.price-box.pink strong{color:#ef6368}.price{display:block;font-family:Georgia,serif;font-size:40px;color:#2f6738;font-weight:700;margin:7px 0}.price-box.pink .price{color:#ef666b}.price-box small{font-size:13px;line-height:1.35}.bloom-box-panel p{text-align:center;font-size:13px;line-height:1.45;margin:16px 0 0}
.waitlist-card p{font-size:15px;line-height:1.55;max-width:380px}.waitlist-form{display:grid;gap:10px}.waitlist-form input{width:100%;padding:14px 15px;border:1px solid #cfd5cf;border-radius:5px;background:white}.waitlist-form .primary-btn{border-radius:5px}.waitlist-card>small{display:block;color:#737873;margin-top:10px;font-size:12px}.form-message{display:none;margin-top:12px;padding:12px 14px;border-radius:10px;background:#edf5e8;color:#376340;font-weight:700;font-size:13px}
.trust-strip{margin:0 clamp(28px,5vw,72px) 42px;background:linear-gradient(90deg,#f4f2e5,#faf8ef,#f4f2e5);border:1px solid #eeeadd;border-radius:12px;display:grid;grid-template-columns:repeat(4,1fr);padding:18px}.trust-strip div{display:flex;align-items:center;justify-content:center;gap:13px;color:#32633a;font-size:25px}.trust-strip div+div{border-left:1px solid #d8d8cc}.trust-strip span{color:#243229;font-size:15px;font-weight:600}
.quiz-callout{margin:0 clamp(28px,5vw,72px) 48px;padding:34px 38px;border-radius:18px;background:linear-gradient(135deg,#eef4e8,#fff5f1);border:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:30px}.quiz-callout h2{font-family:Georgia,serif;color:var(--forest);font-size:38px;margin:7px 0}.quiz-callout p:not(.eyebrow){color:var(--muted)}
.footer{padding:36px clamp(28px,5vw,72px);background:#f7f6f0;border-top:1px solid #e4e3dd;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:30px}.footer>div{display:flex;flex-direction:column;gap:7px}.footer strong{font-size:12px;text-transform:uppercase}.footer a{font-size:12px;color:#667068}.footer-brand{font-size:29px}
.modal-backdrop{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(25,48,31,.62);padding:20px;z-index:100}.modal-backdrop.open{display:flex}.quiz-modal{width:min(760px,100%);max-height:92vh;overflow:auto;background:#fffdf9;border-radius:24px;padding:28px;position:relative;box-shadow:0 22px 70px rgba(25,48,31,.25)}.modal-close{position:absolute;right:18px;top:12px;border:0;background:transparent;font-size:30px;color:var(--forest)}
.progress{height:7px;background:#e8ece4;border-radius:999px;overflow:hidden;margin:10px 0 24px}.progress span{display:block;height:100%;width:0;background:var(--sage)}.quiz-question h3{font-family:Georgia,serif;color:var(--forest);font-size:31px;margin:0 0 16px}.quiz-options{display:grid;grid-template-columns:1fr 1fr;gap:11px}.quiz-option{border:1px solid #d7dfd2;background:#fbfcf8;border-radius:15px;padding:14px;text-align:left}.quiz-option.selected{border:2px solid var(--sage);background:#eef4ea}.quiz-nav{display:flex;justify-content:space-between;margin-top:20px}.ghost-btn{border:1px solid #b9c8b5;background:white;color:#476147}.quiz-result{display:none}.quiz-result.show{display:block}.quiz-result h2{font-family:Georgia,serif;color:var(--forest)}.profile-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.profile-item{background:#f3f6ef;border-radius:13px;padding:12px}.profile-item span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#7a867d}.profile-item strong{color:var(--forest)}.account-card{margin-top:22px;padding:22px;border:1px solid var(--line);border-radius:20px;background:#fbfdf8}.account-card h3{font-family:Georgia,serif;color:var(--forest);font-size:25px;margin:0 0 6px}.account-tabs{display:flex;background:#edf2e9;border-radius:999px;padding:4px;margin:18px 0}.tab{flex:1;border:0;background:transparent;border-radius:999px;padding:10px;font-weight:800;color:#50664f}.tab.active{background:var(--sage);color:white}.auth-form{display:grid;gap:10px}.auth-form input{padding:12px 13px;border:1px solid #cbd7c8;border-radius:10px}.hidden{display:none!important}
@media(max-width:1050px){.site-header{grid-template-columns:1fr auto}.nav-links{display:none}.hero{grid-template-columns:1fr}.hero-visual{min-height:480px}.launch-panel{grid-template-columns:1fr}.bloom-box-panel{border:0;border-top:1px solid #eadfd9;border-bottom:1px solid #eadfd9;padding:28px 24px}.trust-strip{grid-template-columns:1fr 1fr}.trust-strip div:nth-child(3){border-left:0}.trust-strip div{padding:12px}}
@media(max-width:680px){.site-header{height:88px;padding:0 20px}.brand{font-size:31px}.header-cta{padding:11px 15px;font-size:12px}.hero-copy{padding:48px 24px}.hero h1{font-size:56px}.hero-benefits{grid-template-columns:1fr 1fr}.hero-visual{min-height:390px}.spot-badge{width:110px;height:110px;left:18px;top:30px}.spot-badge strong{font-size:34px}.spot-badge span{font-size:11px}.launch-panel{padding:28px 18px}.mini-steps{grid-template-columns:1fr}.arrow{display:none}.trust-strip{grid-template-columns:1fr;margin:0 18px 34px}.trust-strip div+div{border-left:0;border-top:1px solid #d8d8cc}.quiz-callout{margin:0 18px 36px;flex-direction:column;align-items:flex-start}.footer{grid-template-columns:1fr}.quiz-options,.profile-summary{grid-template-columns:1fr}}


/* Customer account/profile */
.header-actions{display:flex;align-items:center;gap:12px}
.header-account-link{
  border:1px solid #7c9b76;
  border-radius:999px;
  padding:11px 16px;
  color:#315238;
  font-weight:800;
  font-size:12px;
  background:#fffdf8
}
.account-page,.auth-page{background:linear-gradient(180deg,#f7f4eb,#eef3e8)}
.account-main{max-width:1180px;margin:auto;padding:52px 24px 80px}
.account-hero{text-align:center;max-width:720px;margin:0 auto 34px}
.account-hero h1{
  font-family:Georgia,serif;
  color:#294b34;
  font-size:46px;
  margin:8px 0
}
.profile-dashboard{display:grid;grid-template-columns:1fr 300px;gap:22px;align-items:start}
.profile-card-main,.account-side-card{
  background:#fff;
  border:1px solid #d6dfd2;
  border-radius:24px;
  box-shadow:0 14px 36px rgba(41,75,52,.08)
}
.profile-card-main{padding:28px}
.profile-card-header{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:22px}
.profile-card-header h2{font-family:Georgia,serif;color:#294b34;font-size:32px;margin:5px 0}
.profile-display-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.profile-data{background:#f2f6ef;border-radius:16px;padding:15px}
.profile-data span{display:block;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#7a867c;margin-bottom:5px}
.profile-data strong{color:#294b34;font-size:15px}
.account-side-card{padding:24px;background:linear-gradient(145deg,#edf3e8,#fffaf7)}
.account-side-card h3{font-family:Georgia,serif;color:#294b34;font-size:28px;margin:7px 0}
.account-side-card p{color:#687368;line-height:1.55}
.mini-prices{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}
.mini-prices div{background:#fff;border:1px solid #d4ded0;border-radius:15px;padding:13px;text-align:center}
.mini-prices strong{display:block;color:#5b7b55;font-size:24px}
.mini-prices span{font-size:11px;color:#687568}
.side-link{display:block;text-align:center}
.edit-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.edit-grid label{font-size:12px;font-weight:800;color:#38523d}
.edit-grid select{width:100%;display:block;margin-top:6px;padding:11px;border:1px solid #ccd8c8;border-radius:10px;background:white}
.edit-actions{display:flex;gap:10px;margin-top:18px}
.member-menu-wrap{position:relative}
.member-trigger{display:flex;align-items:center;gap:8px;border:1px solid #cbd8c7;background:#fffdf8;border-radius:999px;padding:9px 13px;color:#315238;font-weight:800}
.member-avatar{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#edf3e8}
.member-dropdown{position:absolute;right:0;top:calc(100% + 9px);width:180px;background:white;border:1px solid #d6dfd2;border-radius:14px;box-shadow:0 12px 30px rgba(41,75,52,.13);padding:7px;display:none;z-index:30}
.member-dropdown.open{display:block}
.member-dropdown a,.member-dropdown button{display:block;width:100%;padding:10px;border:0;background:transparent;text-align:left;border-radius:9px;color:#34533a}
.member-dropdown a:hover,.member-dropdown button:hover{background:#edf3e8}
.auth-shell{min-height:100vh;display:grid;place-items:center;padding:30px}
.auth-brand{position:absolute;top:30px;left:40px}
.auth-page-card{width:min(470px,100%);padding:32px;border:1px solid #d5dfd1;border-radius:24px;background:white;box-shadow:0 16px 40px rgba(41,75,52,.1)}
.auth-page-card h1{font-family:Georgia,serif;color:#294b34;font-size:34px}
.auth-switch{font-size:13px;color:#69766c;text-align:center;margin-top:16px}
.auth-switch a{color:#557653;font-weight:800}
@media(max-width:850px){
  .profile-dashboard{grid-template-columns:1fr}
  .profile-display-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .profile-display-grid,.edit-grid{grid-template-columns:1fr}
  .profile-card-header{align-items:flex-start;flex-direction:column}
  .header-actions{gap:6px}
  .header-account-link{padding:9px 11px}
}


/* --- Polished account dashboard --- */
.account-page{
  min-height:100vh;
  background:
    radial-gradient(circle at 15% 10%, rgba(245,233,228,.65), transparent 24%),
    radial-gradient(circle at 85% 20%, rgba(222,235,215,.65), transparent 28%),
    #f8f7f1;
}
.account-header{
  position:sticky;
  top:0;
  z-index:40;
}
.account-main{
  max-width:1180px;
  margin:0 auto;
  padding:64px 24px 90px;
}
.account-hero{
  max-width:760px;
  margin:0 auto 34px;
  text-align:center;
}
.account-hero .eyebrow{
  margin-bottom:8px;
}
.account-hero h1{
  margin:0;
  font-family:Georgia,serif;
  font-size:clamp(40px,5vw,58px);
  line-height:1.05;
  color:#294b34;
  letter-spacing:-.02em;
}
.account-hero p:last-child{
  max-width:660px;
  margin:14px auto 0;
  color:#68756b;
  font-size:16px;
  line-height:1.65;
}
.profile-dashboard{
  display:grid;
  grid-template-columns:minmax(0,1fr) 320px;
  gap:24px;
  align-items:start;
}
.profile-card-main{
  padding:30px;
  background:rgba(255,255,255,.94);
  border:1px solid #d8e1d4;
  border-radius:26px;
  box-shadow:0 18px 50px rgba(41,75,52,.09);
}
.profile-card-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:24px;
  padding-bottom:20px;
  margin-bottom:22px;
  border-bottom:1px solid #e4e9e1;
}
.profile-card-header h2{
  margin:4px 0 5px;
  font-family:Georgia,serif;
  font-size:34px;
  color:#294b34;
}
.profile-intro{
  margin:0;
  color:#738077;
  font-size:13px;
}
.profile-display-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.profile-data{
  min-height:96px;
  padding:17px 18px;
  border:1px solid #dbe4d7;
  border-radius:18px;
  background:linear-gradient(145deg,#fbfdf9,#eef4ea);
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.profile-data span{
  font-size:10px;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase;
  color:#7b8b7d;
  margin-bottom:8px;
}
.profile-data strong{
  color:#294b34;
  font-size:17px;
  line-height:1.25;
}
.account-side-card{
  padding:28px;
  border:1px solid #d7e0d3;
  border-radius:26px;
  background:linear-gradient(160deg,#edf4e9 0%,#fffaf7 100%);
  box-shadow:0 16px 42px rgba(41,75,52,.08);
  text-align:center;
}
.side-icon{
  width:56px;
  height:56px;
  margin:0 auto 12px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff;
  border:1px solid #d9e3d4;
  color:#6f8f63;
  font-size:26px;
}
.account-side-card h3{
  margin:6px 0 10px;
  font-family:Georgia,serif;
  color:#294b34;
  font-size:30px;
}
.account-side-card p:not(.eyebrow){
  margin:0;
  color:#66736a;
  line-height:1.55;
}
.mini-prices{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin:22px 0;
}
.mini-prices div{
  padding:16px 12px;
  border-radius:16px;
  background:#fff;
  border:1px solid #d6dfd2;
}
.mini-prices span{
  display:block;
  font-size:11px;
  color:#66736a;
  margin-bottom:5px;
}
.mini-prices strong{
  display:block;
  font-family:Georgia,serif;
  font-size:30px;
  color:#5f7f59;
}
.mini-prices small{
  display:block;
  font-size:10px;
  color:#839087;
  margin-top:3px;
}
.side-link{
  display:block;
  text-align:center;
  width:100%;
}
.member-menu-wrap{
  position:relative;
}
.member-trigger{
  min-width:170px;
  justify-content:center;
  gap:8px;
  padding:10px 14px;
  background:#fff;
  border:1px solid #cfdacb;
  border-radius:999px;
  color:#315238;
  box-shadow:0 4px 14px rgba(41,75,52,.05);
}
.member-avatar{
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#edf4e9;
  color:#557653;
}
.member-caret{
  font-size:12px;
  opacity:.7;
}
.member-dropdown{
  top:calc(100% + 10px);
  width:210px;
  padding:8px;
  border-radius:16px;
}
.member-dropdown a,
.member-dropdown button{
  padding:11px 12px;
  font-size:13px;
}
.edit-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.edit-grid label{
  display:block;
  font-size:12px;
  font-weight:800;
  color:#3f5844;
}
.edit-grid select{
  width:100%;
  margin-top:6px;
  padding:12px 13px;
  border:1px solid #ced9ca;
  border-radius:12px;
  background:#fff;
  color:#2e4133;
}
.edit-actions{
  display:flex;
  gap:10px;
  margin-top:18px;
}
#profileMessage{
  margin-top:16px;
}
@media(max-width:900px){
  .profile-dashboard{grid-template-columns:1fr}
  .account-side-card{max-width:none}
}
@media(max-width:720px){
  .profile-card-header{flex-direction:column}
  .profile-display-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){
  .account-main{padding:42px 16px 70px}
  .profile-card-main,.account-side-card{padding:20px}
  .profile-display-grid,.edit-grid,.mini-prices{grid-template-columns:1fr}
  .member-trigger{min-width:auto}
}


/* ===== Approved MiriBloom account design ===== */
.approved-account{
  background:#fffdf8;
}
.approved-topbar{
  background:linear-gradient(90deg,#385f3b,#2f5b36,#385f3b);
  color:white;
  display:flex;
  justify-content:center;
  gap:22px;
  align-items:center;
}
.approved-topbar a{
  color:#f2c09e;
  font-weight:800;
}
.approved-header{
  min-height:110px;
  padding-top:14px;
  padding-bottom:14px;
}
.approved-member-trigger{
  background:#fff;
  box-shadow:0 10px 24px rgba(41,75,52,.08);
}
.approved-member-dropdown{
  border-radius:14px;
  box-shadow:0 16px 34px rgba(41,75,52,.15);
}
.approved-account-hero{
  min-height:300px;
  display:grid;
  grid-template-columns:38% 62%;
  align-items:center;
  background:
    linear-gradient(90deg,rgba(237,243,232,.92),rgba(249,247,238,.94));
  border-bottom:1px solid #e1e6dc;
  position:relative;
  overflow:hidden;
}
.approved-account-hero:after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:-1px;
  height:34px;
  background:radial-gradient(60% 30px at 50% 0,#fffdf8 98%,transparent 100%);
}
.account-hero-art{
  height:100%;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  padding:35px 10px 10px;
}
.hero-floral-group{
  width:330px;
  height:220px;
  position:relative;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  gap:16px;
}
.faux-vase{
  width:110px;height:170px;
  border-radius:46% 46% 34% 34%;
  background:linear-gradient(145deg,#f7efe4,#d9cdbd);
  box-shadow:0 14px 24px rgba(60,60,45,.12);
}
.faux-tube{
  width:70px;height:165px;border-radius:14px 14px 20px 20px;
  background:linear-gradient(#9fb095,#667f5f);
  color:#fff;display:flex;align-items:center;justify-content:center;
  font-family:Georgia,serif;font-size:13px;
  box-shadow:0 12px 22px rgba(41,75,52,.14);
}
.faux-serum{
  width:58px;height:125px;border-radius:18px;
  background:linear-gradient(#6d8d63,#456542);
  color:white;display:flex;align-items:center;justify-content:center;
  font-family:Georgia,serif;font-size:11px;
  position:relative;
}
.faux-serum:before{
  content:"";position:absolute;top:-45px;left:17px;width:24px;height:45px;
  background:#dcc49f;border-radius:10px 10px 2px 2px;
}
.faux-jar{
  width:95px;height:86px;border-radius:18px;
  background:linear-gradient(#f7d5ca,#eab7aa);
  color:#65493d;display:flex;align-items:center;justify-content:center;
  font-family:Georgia,serif;font-size:12px;
  box-shadow:0 12px 22px rgba(126,84,66,.12);
}
.approved-account-copy{
  max-width:650px;
  padding:48px 70px 58px;
}
.eyebrow.coral{
  color:#d87874;
}
.approved-account-copy h1{
  margin:8px 0 12px;
  font-family:Georgia,serif;
  color:#294b34;
  font-size:clamp(48px,5vw,68px);
  line-height:1;
}
.approved-account-copy p:last-child{
  color:#4f6153;
  font-size:18px;
  line-height:1.55;
  max-width:520px;
}
.approved-dashboard{
  max-width:1220px;
  margin:36px auto 0;
  padding:0 28px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:28px;
}
.approved-profile-card{
  background:white;
  border:1px solid #e3ddd6;
  border-radius:18px;
  box-shadow:0 12px 36px rgba(76,62,49,.08);
  padding:28px;
}
.approved-profile-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:24px;
  margin-bottom:18px;
}
.approved-profile-head h2{
  margin:0 0 6px;
  font-family:Georgia,serif;
  color:#294b34;
  font-size:34px;
}
.profile-updated{
  font-size:12px;
  color:#6e776f;
}
.approved-edit-btn{
  border:0;
  border-radius:8px;
  background:#4f764e;
  color:white;
  padding:12px 18px;
  font-weight:800;
}
.approved-profile-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid #eee8e3;
  border-left:1px solid #eee8e3;
}
.approved-profile-item{
  min-height:116px;
  padding:18px;
  border-right:1px solid #eee8e3;
  border-bottom:1px solid #eee8e3;
  display:flex;
  gap:14px;
  align-items:center;
}
.approved-icon{
  width:46px;height:46px;flex:0 0 46px;
  border-radius:50%;
  display:grid;place-items:center;
  background:#eef3e8;
  color:#476847;
  font-size:20px;
}
.approved-profile-item span{
  display:block;
  font-size:12px;
  color:#6d756e;
  margin-bottom:5px;
}
.approved-profile-item strong{
  color:#26372b;
  font-size:16px;
}
.approved-personalize-strip{
  margin-top:20px;
  padding:16px 18px;
  border-radius:12px;
  background:linear-gradient(90deg,#eef3e8,#f8f4e9);
  display:grid;
  grid-template-columns:1.5fr 1fr 1fr 1fr;
  gap:12px;
  align-items:center;
  color:#315238;
  font-size:12px;
}
.approved-side-column{
  display:grid;
  gap:18px;
}
.approved-launch-card,
.approved-box-card{
  background:white;
  border:1px solid #e2ddd7;
  border-radius:16px;
  box-shadow:0 10px 30px rgba(76,62,49,.07);
  padding:24px;
}
.approved-launch-card{
  text-align:center;
  background:linear-gradient(160deg,#fff6f2,#fffdf8);
}
.launch-script{
  color:#d77875;
  font-family:Georgia,serif;
  font-style:italic;
  font-size:22px;
  margin:0;
}
.approved-launch-card h3{
  font-family:Georgia,serif;
  color:#294b34;
  font-size:32px;
  margin:10px 0 0;
}
.approved-launch-card p:not(.launch-script){
  margin:0 0 14px;
  color:#294b34;
}
.launch-divider{
  color:#db8a82;
  margin:14px 0;
}
.approved-launch-card strong{
  display:block;
  color:#315238;
  margin-bottom:6px;
}
.approved-launch-card span{
  font-size:13px;color:#607064;
}
.approved-box-card h3{
  color:#315238;
  margin:0 0 14px;
  font-size:18px;
}
.approved-price-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:15px;
  border-radius:10px;
  background:#edf3e8;
  margin-bottom:10px;
}
.approved-price-row.pink{
  background:#fff0ec;
  border:1px solid #f1c9c1;
}
.approved-price-row div strong{
  display:block;color:#26382b;font-size:16px;
}
.approved-price-row div span{
  display:block;font-size:12px;color:#68756b;margin-top:3px;
}
.approved-price-row b{
  font-family:Georgia,serif;
  font-size:30px;
  color:#294b34;
}
.approved-waitlist-btn{
  display:block;
  text-align:center;
  background:#4f764e;
  color:white;
  padding:13px;
  border-radius:8px;
  font-weight:800;
}
.approved-bottom-banner{
  max-width:1220px;
  margin:18px auto 48px;
  padding:16px 22px;
  border-radius:14px;
  background:linear-gradient(90deg,#fff0eb,#fff8f4);
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:24px;
  align-items:center;
  color:#315238;
}
.approved-bottom-banner a{
  background:#dd8079;
  color:white;
  padding:11px 22px;
  border-radius:8px;
  font-weight:800;
}
@media(max-width:960px){
  .approved-account-hero{grid-template-columns:1fr}
  .account-hero-art{display:none}
  .approved-account-copy{padding:48px 28px}
  .approved-dashboard{grid-template-columns:1fr}
}
@media(max-width:760px){
  .approved-profile-grid{grid-template-columns:1fr 1fr}
  .approved-personalize-strip{grid-template-columns:1fr}
  .approved-bottom-banner{grid-template-columns:1fr;text-align:center}
}
@media(max-width:520px){
  .approved-dashboard{padding:0 14px}
  .approved-profile-card{padding:18px}
  .approved-profile-head{flex-direction:column}
  .approved-profile-grid{grid-template-columns:1fr}
}


/* Visual Beauty Quiz */
.visual-question{
  min-height:560px;
  padding:4px 6px 10px;
}
.visual-question h3{
  text-align:center;
  font-family:Inter,Arial,sans-serif;
  font-size:25px;
  color:#263028;
  margin:8px 0 30px;
}
.visual-options{
  max-width:850px;
  margin:auto;
  display:grid;
  gap:16px;
}
.circle-options{
  grid-template-columns:repeat(4,1fr);
}
.swatch-options{
  grid-template-columns:1fr 1fr;
}
.visual-option{
  position:relative;
  border:1px solid #dddcd6;
  background:#fff;
  min-height:135px;
  padding:15px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  color:#30362f;
  transition:.15s ease;
}
.visual-option:hover{
  border-color:#78936e;
  transform:translateY(-1px);
}
.visual-option.selected{
  border:2px solid #6f8f63;
  box-shadow:0 0 0 2px rgba(111,143,99,.08);
}
.visual-check{
  display:none;
  position:absolute;
  top:12px;left:12px;
  width:30px;height:30px;border-radius:50%;
  place-items:center;
  background:#6f8f63;color:#fff;
  font-weight:900;
}
.visual-option.selected .visual-check{display:grid}
.circle-options .visual-option img{
  width:74px;height:74px;border-radius:50%;
  object-fit:cover;
}
.swatch-options .visual-option{
  min-height:92px;
  padding:0;
  overflow:hidden;
}
.swatch-options .visual-option img{
  width:100%;
  height:90px;
  object-fit:cover;
}
.swatch-options .visual-label{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  font-weight:800;
  font-size:17px;
  color:#2f322e;
  text-shadow:0 1px 4px rgba(255,255,255,.65);
}
.visual-label{font-size:15px}
.quiz-modal{
  width:min(980px,100%);
}
.quiz-nav{
  position:sticky;
  bottom:-28px;
  background:#fff;
  padding:16px 0 4px;
}
.quiz-nav .primary-btn{
  min-width:220px;
}
@media(max-width:760px){
  .circle-options{grid-template-columns:repeat(2,1fr)}
  .swatch-options{grid-template-columns:1fr}
  .visual-question{min-height:auto}
}

.visual-extra-profile{
  display:grid;
  grid-template-columns:1fr 1fr;
  border-left:1px solid #eee8e3;
  margin-top:14px;
}
.saved-color-thumb{
  width:54px;height:54px;border-radius:50%;object-fit:cover;
  border:1px solid #ddd7cf;flex:0 0 54px;
}
@media(max-width:620px){.visual-extra-profile{grid-template-columns:1fr}}

/* Strong selected state for visual quiz choices */
.visual-option,
.quiz-option{
  cursor:pointer !important;
  -webkit-tap-highlight-color: transparent;
}
.visual-option.selected{
  border:3px solid #52794f !important;
  box-shadow:0 0 0 4px rgba(82,121,79,.18) !important;
  background:#f2f7ee !important;
}
.visual-option.selected .visual-label{
  font-weight:900 !important;
}
.visual-option img,
.visual-option .visual-label,
.visual-option .visual-check{
  pointer-events:none;
}

/* Eye/hair saved swatches */
.saved-color-thumb{
  width:54px;
  height:54px;
  border-radius:50%;
  object-fit:cover;
  border:1px solid #ddd7cf;
  flex:0 0 54px;
}

/* Account deletion */
.account-danger-zone{
  max-width:1220px;
  margin:24px auto 60px;
  padding:24px 28px;
  border:1px solid #efd0cc;
  border-radius:16px;
  background:#fff8f6;
  display:grid;
  grid-template-columns:1fr auto;
  gap:24px;
  align-items:center;
}
.account-danger-zone h2{
  margin:5px 0 7px;
  font-family:Georgia,serif;
  color:#7f342f;
}
.account-danger-zone p{
  margin:0;
  color:#785d59;
  line-height:1.5;
}
.delete-account-btn{
  border:1px solid #c86159;
  background:#fff;
  color:#a33d36;
  border-radius:9px;
  padding:12px 18px;
  font-weight:800;
}
.delete-account-btn.confirm{
  background:#b84b43;
  color:#fff;
}
.delete-confirm-panel{
  grid-column:1 / -1;
  padding-top:18px;
  border-top:1px solid #efd9d5;
}
.delete-actions{
  display:flex;
  gap:10px;
  margin-top:14px;
}
@media(max-width:700px){
  .account-danger-zone{grid-template-columns:1fr}
}

.settings-backdrop{position:fixed;inset:0;background:rgba(32,53,36,.5);z-index:200;display:flex;align-items:center;justify-content:center;padding:20px}
.settings-modal{width:min(560px,100%);background:#fffdf8;border:1px solid #ded9d0;border-radius:20px;box-shadow:0 24px 70px rgba(35,50,38,.22);padding:28px;position:relative}
.settings-close{position:absolute;right:18px;top:12px;border:0;background:transparent;font-size:28px;color:#315238}
.settings-modal h2{font-family:Georgia,serif;color:#294b34;margin:6px 0 20px}
.settings-section{padding:20px;border:1px solid #efd4cf;border-radius:14px;background:#fff7f4}
.settings-section h3{margin:0 0 8px;color:#8d3e37}
.settings-section p{color:#775e59;line-height:1.55}

/* Beauty Profile uses the same visual selected in the Beauty Quiz */
.profile-choice-image{
  width:64px;
  height:64px;
  flex:0 0 64px;
  border-radius:50%;
  object-fit:cover;
  border:1px solid #ded8cf;
  background:#f8f6ef;
  box-shadow:0 2px 8px rgba(41,75,52,.05);
}
.approved-profile-item{
  gap:16px;
}

/* Compact account profile visuals */
.approved-profile-item{
  min-height:112px !important;
  padding:18px !important;
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  overflow:hidden !important;
}
.approved-profile-item .profile-choice-image{
  width:58px !important;
  height:58px !important;
  min-width:58px !important;
  max-width:58px !important;
  flex:0 0 58px !important;
  aspect-ratio:1 / 1 !important;
  border-radius:50% !important;
  object-fit:cover !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
}
.approved-profile-item > div{
  min-width:0;
}
.approved-profile-item span{
  display:block;
}
.approved-profile-grid{
  align-items:stretch;
}
.member-dropdown #openAccountSettings{
  display:block;
  width:100%;
  padding:11px 12px;
  border:0;
  background:transparent;
  text-align:left;
  border-radius:8px;
  color:#315238;
  cursor:pointer;
}
.member-dropdown #openAccountSettings:hover{
  background:#edf3e8;
}

/* Account Settings modal */
.settings-backdrop{
  position:fixed;
  inset:0;
  background:rgba(32,53,36,.5);
  z-index:250;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
}
.settings-modal{
  width:min(560px,100%);
  background:#fffdf8;
  border:1px solid #ded9d0;
  border-radius:20px;
  box-shadow:0 24px 70px rgba(35,50,38,.22);
  padding:28px;
  position:relative;
}
.settings-close{
  position:absolute;
  right:18px;
  top:12px;
  border:0;
  background:transparent;
  font-size:28px;
  color:#315238;
  cursor:pointer;
}
.settings-modal h2{
  font-family:Georgia,serif;
  color:#294b34;
  margin:6px 0 20px;
}
.settings-section{
  padding:20px;
  border:1px solid #efd4cf;
  border-radius:14px;
  background:#fff7f4;
}
.settings-section h3{
  margin:0 0 8px;
  color:#8d3e37;
}
.settings-section p{
  color:#775e59;
  line-height:1.55;
}
.hidden{display:none!important}

/* Clean account fix */
.profile-choice-image{
  width:58px!important;
  height:58px!important;
  min-width:58px!important;
  max-width:58px!important;
  flex:0 0 58px!important;
  object-fit:cover!important;
  border-radius:50%!important;
}
.profile-edit-panel.hidden,
.settings-backdrop.hidden{display:none!important}
.member-dropdown #openAccountSettings{
  display:block;width:100%;padding:11px 12px;border:0;background:transparent;
  text-align:left;border-radius:8px;color:#315238;cursor:pointer
}
.member-dropdown #openAccountSettings:hover{background:#edf3e8}


/* Final account greeting sizing */
.approved-account-copy .account-greeting{
  font-family:Georgia,serif !important;
  font-size:clamp(42px,4vw,64px) !important;
  line-height:1.04 !important;
  letter-spacing:-0.02em !important;
  margin:8px 0 18px !important;
  max-width:680px !important;
  color:#294b34 !important;
}

.approved-account-copy{
  padding:42px 54px !important;
}

.approved-account-copy p:last-child{
  max-width:560px !important;
  font-size:17px !important;
  line-height:1.6 !important;
}

@media(max-width:960px){
  .approved-account-copy .account-greeting{
    font-size:48px !important;
  }
}

@media(max-width:600px){
  .approved-account-copy .account-greeting{
    font-size:38px !important;
  }
  .approved-account-copy{
    padding:32px 20px !important;
  }
}


/* ===== FINAL ACCOUNT HERO CENTERING ===== */
.approved-account-hero{
  display:grid !important;
  grid-template-columns:46% 54% !important;
  width:100% !important;
}

.approved-account-copy{
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  margin:0 auto !important;
  padding:44px 54px 44px 110px !important;

  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;

  text-align:center !important;
  box-sizing:border-box !important;
}

.approved-account-copy .eyebrow,
.approved-account-copy .account-greeting,
.approved-account-copy p:last-child{
  width:100% !important;
  margin-left:auto !important;
  margin-right:auto !important;
  text-align:center !important;
}

.approved-account-copy .account-greeting{
  max-width:680px !important;
}

.approved-account-copy p:last-child{
  max-width:590px !important;
}

/* Name field inside Account Settings */
.name-settings-section{
  margin-bottom:16px;
  background:#f7fbf4 !important;
  border-color:#d9e6d4 !important;
}

.settings-name-label{
  display:block;
  margin:14px 0 6px;
  color:#315238;
  font-size:12px;
  font-weight:800;
}

.settings-name-input{
  width:100%;
  padding:12px 13px;
  border:1px solid #cbd8c7;
  border-radius:10px;
  background:#fff;
  color:#26382b;
  outline:none;
}

.settings-name-input:focus{
  border-color:#6f9268;
  box-shadow:0 0 0 3px rgba(111,146,104,.12);
}

.settings-save-name{
  margin-top:12px;
  width:100%;
}

@media(max-width:960px){
  .approved-account-copy{
    padding:46px 28px !important;
  }
}

@media(max-width:600px){
  .approved-account-copy{
    padding:34px 20px !important;
  }
}

/* ===== Customer Bloom Order History ===== */
.customer-orders-section{
  max-width:1220px;
  margin:34px auto 70px;
  padding:0 28px;
}
.customer-orders-heading{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:20px;
  margin-bottom:18px;
}
.customer-orders-heading .eyebrow{margin-bottom:6px}
.customer-orders-heading h2{
  margin:0 0 7px;
  font-family:Georgia,serif;
  color:#294b34;
  font-size:34px;
}
.customer-orders-heading p:last-child{margin:0;color:#68736a}
.customer-orders-list{display:grid;gap:15px}
.customer-order-card{
  padding:22px 24px;
  border:1px solid #e3ddd6;
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 28px rgba(76,62,49,.07);
}
.customer-order-top{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:20px;
  padding-bottom:17px;
  border-bottom:1px solid #eee8e3;
}
.customer-order-top h3{
  margin:5px 0 0;
  font-family:Georgia,serif;
  color:#294b34;
  font-size:26px;
}
.order-date{
  color:#7a867d;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.order-amount{
  font-family:Georgia,serif;
  color:#5f8159;
  font-size:29px;
  font-weight:700;
}
.customer-order-status{padding-top:17px}
.order-status-row{
  display:flex;
  justify-content:space-between;
  gap:15px;
  color:#315238;
  font-size:13px;
}
.order-status-row span{color:#4f7a4f;font-weight:800}
.order-progress-track{
  height:8px;
  margin:15px 0 8px;
  overflow:hidden;
  border-radius:999px;
  background:#e7ece3;
}
.order-progress-track span{
  display:block;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,#8cac82,#4e784c);
}
.order-progress-labels{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:8px;
  color:#9aa39b;
  font-size:10px;
  font-weight:800;
}
.order-progress-labels span:nth-child(2),
.order-progress-labels span:nth-child(3){text-align:center}
.order-progress-labels span:last-child{text-align:right}
.order-progress-labels .active{color:#50764f}
.empty-orders-card{
  padding:42px 24px;
  text-align:center;
  border:1px dashed #cbd8c7;
  border-radius:18px;
  background:#fbfcf8;
}
.empty-orders-heart{color:#d9837c;font-size:35px}
.empty-orders-card h3{
  margin:7px 0;
  font-family:Georgia,serif;
  color:#315238;
  font-size:25px;
}
.empty-orders-card p{color:#6e796f}
.order-shop-btn{display:inline-block;margin-top:8px}
@media(max-width:700px){
  .customer-orders-section{padding:0 18px}
  .customer-orders-heading{align-items:flex-start;flex-direction:column}
  .customer-order-top{flex-direction:column}
  .order-progress-labels{font-size:9px}
}

/* ===== Clean Account Layout / Orders live in dropdown ===== */
.account-page .customer-orders-section{
  display:none !important;
}

.approved-account{
  background:#fffdf9;
}

.approved-account-hero{
  min-height:280px;
  grid-template-columns:46% 54%;
  background:linear-gradient(90deg,#fff7f2 0%,#f4f6e9 100%);
  border-bottom:1px solid #ebe6df;
}

.account-hero-art{
  padding:0;
  overflow:hidden;
}

.account-hero-image{
  width:100%;
  height:100%;
  min-height:280px;
  object-fit:cover;
  display:block;
}

.approved-account-copy{
  max-width:none;
  width:100%;
  padding:46px 64px;
  text-align:left;
}

.approved-account-copy .account-greeting{
  font-size:clamp(44px,4.5vw,64px);
  line-height:1.02;
}

.approved-dashboard{
  max-width:1240px;
  margin:34px auto 0;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:24px;
}

.approved-profile-card,
.approved-launch-card,
.approved-box-card{
  border-radius:18px;
}

.approved-profile-card{
  padding:26px;
  box-shadow:0 12px 34px rgba(76,62,49,.07);
}

.approved-profile-head{
  align-items:center;
}

.approved-profile-grid{
  grid-template-columns:repeat(3,1fr);
}

.approved-profile-item{
  min-height:118px;
  background:#fff;
}

.profile-choice-image{
  width:54px;
  height:54px;
  flex:0 0 54px;
  object-fit:cover;
  border-radius:50%;
  border:1px solid #eadfd6;
  background:#faf7f1;
  padding:4px;
}

.approved-side-column{
  display:grid;
  gap:18px;
}

.approved-launch-card{
  background:linear-gradient(145deg,#fff7f3,#fffdf9);
  border:1px solid #eaded7;
  box-shadow:0 10px 28px rgba(76,62,49,.06);
}

.approved-box-card{
  background:#fff;
  border:1px solid #dfded8;
  box-shadow:0 10px 28px rgba(76,62,49,.06);
}

.approved-price-row{
  border-radius:12px;
}

.approved-waitlist-btn{
  border-radius:9px;
}

.approved-member-dropdown{
  width:220px;
  padding:8px;
}

.approved-member-dropdown a,
.approved-member-dropdown button{
  padding:12px 13px;
  border-radius:10px;
}

.approved-member-dropdown a[href="orders.html"]{
  background:#f1f5ed;
  font-weight:800;
}

.account-support-strip{
  max-width:1240px;
  margin:28px auto 70px;
  padding:22px 26px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:16px;
  align-items:center;
  border:1px solid #e4dfd7;
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 26px rgba(76,62,49,.05);
}

.support-icon{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#eef4e8;
  color:#4d714d;
  font-size:23px;
}

.support-copy{
  display:flex;
  flex-direction:column;
  gap:4px;
}

.support-copy strong{
  color:#294b34;
  font-size:15px;
}

.support-copy span{
  color:#6d766f;
  font-size:13px;
}

.support-btn{
  padding:12px 18px;
  border:1px solid #75916f;
  border-radius:10px;
  color:#315238;
  font-weight:800;
  background:#fffdf9;
}

@media(max-width:900px){
  .approved-account-hero{
    grid-template-columns:1fr;
  }

  .approved-account-copy{
    padding:36px 28px;
    text-align:center;
  }

  .approved-dashboard{
    grid-template-columns:1fr;
  }
}

@media(max-width:700px){
  .approved-profile-grid{
    grid-template-columns:1fr 1fr;
  }

  .account-support-strip{
    grid-template-columns:1fr;
    text-align:center;
  }

  .support-icon{
    margin:auto;
  }

  .support-btn{
    width:100%;
    text-align:center;
  }
}

@media(max-width:520px){
  .approved-profile-grid{
    grid-template-columns:1fr;
  }
}


/* ===== MiriBloom Order Confirmed ===== */
.order-confirmed-page{
  min-height:100vh;
  background:
    radial-gradient(circle at 15% 10%, rgba(245,233,228,.72), transparent 26%),
    radial-gradient(circle at 85% 18%, rgba(222,235,215,.72), transparent 28%),
    #fffdf9;
}

.order-confirmed-main{
  min-height:calc(100vh - 108px);
  display:grid;
  place-items:center;
  padding:60px 24px 90px;
}

.order-confirmed-card{
  width:min(760px,100%);
  padding:46px 46px 42px;
  text-align:center;
  background:#fff;
  border:1px solid #e6ded6;
  border-radius:26px;
  box-shadow:0 22px 60px rgba(76,62,49,.10);
}

.confirmed-icon{
  width:78px;
  height:78px;
  margin:0 auto 18px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:linear-gradient(145deg,#edf4e8,#fff4ef);
  color:#d97874;
  border:1px solid #e3ddd6;
  font-family:Georgia,serif;
  font-size:46px;
}

.order-confirmed-card .eyebrow{
  margin-bottom:10px;
}

.order-confirmed-card h1{
  margin:0;
  font-family:Georgia,serif;
  color:#294b34;
  font-size:clamp(38px,5vw,56px);
  line-height:1.06;
}

.confirmed-lead{
  max-width:590px;
  margin:18px auto 30px;
  color:#637068;
  font-size:16px;
  line-height:1.65;
}

.confirmed-status{
  display:grid;
  grid-template-columns:auto 1fr auto 1fr auto;
  align-items:center;
  gap:12px;
  margin:32px 0;
}

.confirmed-step{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:7px;
  color:#8b968d;
  font-size:11px;
}

.confirmed-step span{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#eef1ea;
  color:#7a867d;
  font-weight:900;
}

.confirmed-step.active{
  color:#315238;
}

.confirmed-step.active span{
  background:#4f764e;
  color:#fff;
}

.confirmed-line{
  height:3px;
  border-radius:999px;
  background:#e7ebe4;
}

.confirmed-note{
  margin:30px 0;
  padding:20px;
  text-align:left;
  border-radius:16px;
  background:linear-gradient(135deg,#f1f6ed,#fff8f4);
  border:1px solid #e0e7dc;
}

.confirmed-note strong{
  display:block;
  color:#315238;
  margin-bottom:6px;
}

.confirmed-note p{
  margin:0;
  color:#68736a;
  line-height:1.55;
}

.confirmed-actions{
  display:flex;
  justify-content:center;
  gap:12px;
  flex-wrap:wrap;
}

.confirmed-actions .primary-btn,
.confirmed-actions .ghost-btn{
  min-width:180px;
  text-align:center;
  display:inline-block;
}

@media(max-width:650px){
  .order-confirmed-card{
    padding:34px 20px 30px;
  }

  .confirmed-status{
    grid-template-columns:1fr;
  }

  .confirmed-line{
    width:3px;
    height:22px;
    margin:auto;
  }
}


/* ===== MiriBloom My Subscription ===== */
.account-subscription-section{
  max-width:1180px;
  margin:34px auto;
  padding:32px;
  border:1px solid #e4e8df;
  border-radius:22px;
  background:#fff;
  box-shadow:0 14px 35px rgba(55,75,58,.06);
}

.account-subscription-head{
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:flex-start;
  margin-bottom:22px;
}

.account-subscription-head h2{
  margin:4px 0 7px;
  font-family:Georgia,serif;
  color:#294b34;
  font-size:30px;
}

.account-subscription-head p:last-child{
  margin:0;
  color:#747d75;
}

.subscription-loading{
  padding:20px;
  border-radius:14px;
  background:#f5f8f1;
  color:#657067;
}

.subscription-card{
  padding:26px;
  border:1px solid #dce5d7;
  border-radius:18px;
  background:#f8fbf5;
}

.subscription-card-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding-bottom:20px;
  border-bottom:1px solid #e0e7dc;
}

.subscription-label,
.subscription-detail span{
  display:block;
  margin-bottom:6px;
  color:#7b847c;
  font-size:11px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.subscription-card h3{
  margin:0;
  font-family:Georgia,serif;
  color:#315238;
  font-size:28px;
}

.subscription-status{
  padding:8px 13px;
  border-radius:999px;
  background:#e4efe0;
  color:#416443;
  font-size:12px;
  font-weight:800;
}

.subscription-status[data-status="past_due"],
.subscription-status[data-status="unpaid"]{
  background:#fff0e7;
  color:#9a5738;
}

.subscription-status[data-status="canceled"],
.subscription-status[data-status="incomplete_expired"]{
  background:#f1eeee;
  color:#776969;
}

.subscription-details-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:20px 0;
}

.subscription-detail{
  padding:16px;
  border:1px solid #e2e7df;
  border-radius:13px;
  background:#fff;
}

.subscription-detail strong{
  color:#315238;
  font-size:15px;
}

.subscription-note{
  margin-bottom:18px;
  color:#687168;
  font-size:13px;
  line-height:1.6;
}

.subscription-orders-btn{
  display:inline-block;
  padding:11px 17px;
  border:1px solid #4f764e;
  border-radius:9px;
  color:#4f764e;
  font-weight:800;
  text-decoration:none;
}

.subscription-empty{
  padding:34px 22px;
  text-align:center;
  border:1px dashed #d8dfd4;
  border-radius:18px;
  background:#fbfcf9;
}

.subscription-empty-heart{
  color:#e07c78;
  font-size:34px;
}

.subscription-empty h3{
  margin:8px 0;
  font-family:Georgia,serif;
  color:#315238;
}

.subscription-empty p{
  margin:0 0 20px;
  color:#747d75;
}

.hidden{
  display:none !important;
}

@media(max-width:760px){
  .account-subscription-section{
    margin:24px 16px;
    padding:22px;
  }

  .subscription-card-top{
    align-items:flex-start;
    flex-direction:column;
  }

  .subscription-details-grid{
    grid-template-columns:1fr;
  }
}


/* ===== Manage Subscription ===== */
.subscription-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.subscription-manage-btn{
  display:inline-block;
  padding:11px 17px;
  border:0;
  border-radius:9px;
  background:#4f764e;
  color:#fff;
  font-weight:800;
  cursor:pointer;
}

.subscription-manage-btn:hover{
  filter:brightness(.97);
}

.subscription-manage-btn:disabled{
  opacity:.65;
  cursor:wait;
}

.subscription-manage-message{
  margin-top:12px;
  padding:11px 13px;
  border-radius:10px;
  background:#fff1eb;
  color:#8a4c3e;
  font-size:13px;
  font-weight:700;
}

@media(max-width:600px){
  .subscription-actions{
    flex-direction:column;
  }

  .subscription-manage-btn,
  .subscription-orders-btn{
    width:100%;
    text-align:center;
  }
}
