/* Superflies v2 — 70-account.css. Part 1 (M5-20): sign in / register / lost password (plan.md §13;
   design: sign-in.html). Part 2 (M6-15): My Account endpoints. */

/* ---- auth split layout (full-bleed: the page container is closed around it) ---- */
.sf-auth{display:grid;grid-template-columns:1fr 1fr;min-height:640px;background:var(--sf-surface)}
.sf-auth__form{padding:56px 96px;display:flex;flex-direction:column;justify-content:center;gap:22px;max-width:680px;width:100%;justify-self:end}
.sf-auth__head h1{margin:0;font-size:30px;font-weight:700}
.sf-auth__head p{margin:8px 0 0;font-size:15px;color:var(--sf-text-2)}
.sf-auth__fields{display:flex;flex-direction:column;gap:10px;margin:0}
.sf-auth__fields p.form-row,.sf-auth__fields .woocommerce-form-row{margin:0;padding:0;width:100%;max-width:100%;float:none}
.sf-auth__fields .sf-field--floating{background:var(--sf-white)}
.sf-auth__fields .sf-field--floating label{font-size:11px;color:var(--sf-muted);margin:0}
.sf-auth__fields .sf-field--floating label .required{display:none}
.sf-auth__fields .sf-field--floating input.input-text{border:0;padding:0;border-radius:0;font-size:15px;background:transparent;width:100%;box-shadow:none}
.sf-auth__fields .sf-field--floating input.input-text:focus{outline:none}
.sf-auth__fields .password-input{display:flex;align-items:center;gap:10px;width:100%;position:relative}
.sf-auth__fields .password-input input{flex:1;min-width:0}
.sf-auth__fields .show-password-input{display:inline-block;position:static;font-size:12px;font-weight:500;color:var(--sf-link);background:none;border:0;padding:0;cursor:pointer;width:auto;height:auto;text-indent:0;flex:none}
.sf-auth__fields .show-password-input::after{display:none}
.sf-auth__row{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13px}
.sf-auth__row .sf-check-row{font-size:13px}
.sf-auth__submit{margin:6px 0 0!important}
.sf-auth__links{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px}
.sf-auth__note{font-size:13px;margin:0}
.sf-auth__form .g-recaptcha{display:flex;justify-content:center}
.sf-auth__form .woocommerce-privacy-policy-text{font-size:12px;color:var(--sf-muted);line-height:1.5}
.sf-auth__form .woocommerce-privacy-policy-text p{margin:0}
.sf-auth__form p.mailchimp-newsletter{margin:0;font-size:13px}
.sf-auth__form p.mailchimp-newsletter label{display:flex;align-items:center;gap:10px;cursor:pointer}
.sf-auth__form p.mailchimp-newsletter .input-checkbox{appearance:none;-webkit-appearance:none;width:18px;height:18px;min-width:18px;border:1.5px solid var(--sf-muted-2);border-radius:var(--sf-r-4);background:var(--sf-white);display:inline-grid;place-content:center;margin:0;cursor:pointer;flex:none}
.sf-auth__form p.mailchimp-newsletter .input-checkbox:checked{background:var(--sf-navy);border-color:var(--sf-navy)}
.sf-auth__form p.mailchimp-newsletter .input-checkbox:checked::before{content:"";width:10px;height:6px;border:2px solid var(--sf-white);border-top:0;border-right:0;transform:translateY(-1px) rotate(-45deg)}
.sf-auth__why{background:var(--sf-navy);color:var(--sf-white);padding:56px 72px;display:flex;flex-direction:column;justify-content:center;gap:28px}
.sf-auth__why h2{margin:0;font-size:26px;line-height:1.2;font-weight:700;color:var(--sf-white)}
.sf-auth__benefit{display:flex;gap:14px}
.sf-auth__num{flex:none;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.1);display:grid;place-items:center;font-size:14px;font-weight:700;color:var(--sf-footer-head)}
.sf-auth__benefit-title{font-size:15px;font-weight:600}
.sf-auth__benefit-text{font-size:13px;color:var(--sf-nav-text-2);line-height:1.5;margin-top:2px}
.sf-auth__photo{width:100%;height:140px;object-fit:cover;border-radius:var(--sf-r-10)}
.sf-auth--single .sf-auth__why{gap:12px}
.sf-auth__confirm{margin-top:32px}
/* WooCommerce notices printed above the full-bleed block stay inside the container */
.woocommerce-account .sf-page .woocommerce-notices-wrapper{max-width:680px}
@media (max-width:991px){
  .sf-auth__form{padding:40px 32px}
  .sf-auth__why{padding:40px 32px}
}
@media (max-width:767px){
  .sf-auth{grid-template-columns:1fr;min-height:0}
  .sf-auth__form{padding:32px 16px;max-width:none;justify-self:stretch}
  .sf-auth__head h1{font-size:24px}
  .sf-auth__why{padding:32px 16px;gap:18px}
  .sf-auth__why h2{font-size:20px}
}

/* ======================================================================
   Part 2 (M6-15): My Account endpoints (plan.md §14; design: account*.html, m-account.html)
   ====================================================================== */

/* ---- layout + side nav ---- */
.woocommerce-account .sf-page{padding-top:28px}
.sf-account{display:grid;grid-template-columns:240px minmax(0,1fr);gap:32px;align-items:start}
.sf-account__nav{display:flex;flex-direction:column;gap:4px;position:sticky;top:calc(var(--sf-header-h,0px) + 20px)}
.sf-account__user{padding:6px 12px 14px}
.sf-account__name{font-size:20px;font-weight:700}
.sf-account__since{font-size:13px;color:var(--sf-muted)}
.sf-account__links ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.sf-account__links li{margin:0}
.sf-account__link{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:11px 12px;border-radius:var(--sf-r-8);font-size:14px;font-weight:500;color:var(--sf-ink);text-decoration:none;transition:background-color .12s}
.sf-account__link:hover{background:var(--sf-surface-3);text-decoration:none;color:var(--sf-ink)}
.sf-account__links li.is-active .sf-account__link{background:var(--sf-white);font-weight:700}
.sf-account__link .sf-pill-badge{margin-left:auto}
.sf-account__link .sf-account__chev{display:none;color:var(--sf-muted-2);font-size:18px}
.sf-account__logout{margin-top:8px}
.sf-account__link--muted{color:var(--sf-muted);font-weight:400}
.sf-account__content{display:flex;flex-direction:column;gap:16px;min-width:0}
.sf-account__head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.sf-account__head h1{margin:0;font-size:26px;font-weight:700;display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.sf-account__count{font-size:15px;font-weight:500;color:var(--sf-muted)}
.sf-account__back{flex-basis:100%;font-size:13px}
.sf-account__content .woocommerce-notices-wrapper:empty{display:none}
.woocommerce-MyAccount-content>.woocommerce-notices-wrapper{margin:0}

/* ---- overview ---- */
.sf-overview{display:flex;flex-direction:column;gap:20px}
.sf-overview__order{padding:22px 24px;display:flex;flex-direction:column;gap:14px;overflow:visible}
.sf-overview__order-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.sf-overview__order-head h2{margin:2px 0 0;font-size:20px}
.sf-overview__status{color:var(--sf-green);font-size:11px}
.sf-overview__order[data-sf-state=delivered] .sf-overview__status{color:var(--sf-muted)}
.sf-timeline{display:grid;grid-template-columns:repeat(4,1fr);align-items:start;margin:2px 0 6px}
.sf-timeline__step{display:flex;flex-direction:column;gap:6px}
.sf-timeline__track{display:flex;align-items:center}
.sf-timeline__dot{width:14px;height:14px;border-radius:50%;border:3px solid var(--sf-border);background:var(--sf-border);flex:none;box-sizing:border-box}
.sf-timeline__bar{flex:1;height:2px;background:var(--sf-border)}
.sf-timeline__step:last-child .sf-timeline__bar{background:transparent}
.sf-timeline__step.is-done .sf-timeline__dot{border-color:var(--sf-green);background:var(--sf-green)}
.sf-timeline__step.is-done .sf-timeline__bar{background:var(--sf-green)}
.sf-timeline__step.is-current .sf-timeline__dot{border-color:var(--sf-green);background:var(--sf-white)}
.sf-timeline__label{font-size:13px;font-weight:600}
.sf-timeline__step.is-todo .sf-timeline__label{color:var(--sf-muted-2)}
.sf-timeline__date{font-size:12px;color:var(--sf-muted);min-height:14px}
.sf-overview__order-foot{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.sf-overview__thumbs{display:flex;gap:8px}
.sf-overview__thumb{width:64px;height:44px;border-radius:var(--sf-r-6);overflow:hidden;background:var(--sf-border-3);display:block}
.sf-overview__thumb img{width:100%;height:100%;object-fit:cover}
.sf-overview__order-actions{margin-left:auto;display:flex;gap:8px}
.sf-overview__flybox .sf-section__head{margin-bottom:12px;align-items:baseline}
.sf-overview__flybox .sf-section__head h2{font-size:20px;display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.sf-overview__flybox .sf-section__sub{font-size:14px;font-weight:500}
.sf-overview__row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.sf-overview__card{padding:18px 20px;display:flex;flex-direction:column;gap:8px;overflow:visible}
.sf-overview__card-text{font-size:14px;line-height:1.5}
.sf-overview__warn{font-size:12px;color:var(--sf-warning);font-weight:600}
.sf-overview__card-link{margin-top:auto;font-size:13px}
.sf-overview__impact{gap:6px}
.sf-overview__impact-eyebrow{color:var(--sf-green)}
.sf-overview__impact-amount{font-size:28px;font-weight:700;line-height:1}
.sf-overview__welcome{font-size:13px;margin:0}

/* ---- fly box ---- */
.sf-flybox{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.sf-flybox-card{display:flex;flex-direction:column}
.sf-flybox-card__media{display:block;aspect-ratio:3/2;border-bottom:1px solid var(--sf-border-3);overflow:hidden;background:#dde3ea}
.sf-flybox-card__media img{width:100%;height:100%;object-fit:cover;display:block}
.sf-flybox-card.is-soldout .sf-flybox-card__media img{opacity:.6}
.sf-flybox-card__body{padding:12px;display:flex;flex-direction:column;gap:4px;flex:1}
.sf-flybox-card__name{font-size:14px;font-weight:600;color:var(--sf-ink);text-decoration:none}
.sf-flybox-card__variant,.sf-flybox-card__meta{font-size:12px;color:var(--sf-muted)}
.sf-flybox-card__soldout{font-size:12px;color:var(--sf-warning);font-weight:600}
.sf-flybox-card__actions{display:flex;gap:6px;margin-top:auto;padding-top:6px}
.sf-flybox-card__actions .sf-btn--primary{flex:1;padding:8px;font-size:13px}
.sf-flybox-card__actions .sf-btn--primary .woocommerce-Price-amount{font-weight:600}
.sf-flybox-card__actions .sf-btn--ghost{padding:6.5px 10px;font-size:13px}

/* ---- orders ---- */
.sf-orders{display:flex;flex-direction:column;gap:16px}
.sf-order-card{overflow:hidden}
.sf-order-card__strip{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:24px;padding:14px 22px;background:var(--sf-surface);border-bottom:1px solid var(--sf-border);font-size:12px;color:var(--sf-muted);align-items:center}
.sf-order-card__strip b{color:var(--sf-ink);font-size:13px;font-weight:700;display:block}
.sf-order-card__strip .woocommerce-Price-amount{font-weight:700}
.sf-order-card__k{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.sf-order-card__num{text-align:right}
.sf-order-card__num .sf-link{font-size:13px}
.sf-order-card__body{padding:18px 22px;display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:24px;align-items:start}
.sf-order-card__main{display:flex;flex-direction:column;gap:12px}
.sf-order-card__status{display:flex;align-items:center;gap:10px;font-size:13px}
.sf-order-card__status b{font-size:15px;color:var(--sf-muted)}
.sf-order-card__status.is-active b{color:var(--sf-green)}
.sf-order-card__dot{width:10px;height:10px;border-radius:50%;background:var(--sf-muted-2)}
.sf-order-card__status.is-active .sf-order-card__dot{background:var(--sf-green)}
.sf-order-card__items{display:flex;flex-direction:column;gap:8px}
.sf-order-card__item{display:flex;gap:12px;align-items:center}
.sf-order-card__thumb{width:64px;height:44px;border-radius:var(--sf-r-6);overflow:hidden;flex:none;background:var(--sf-border-3);display:block}
.sf-order-card__thumb img{width:100%;height:100%;object-fit:cover}
.sf-order-card__item-info{flex:1;display:flex;flex-direction:column;min-width:0}
.sf-order-card__item-name{font-size:14px;font-weight:600}
.sf-order-card__item-meta{font-size:12px;color:var(--sf-muted)}
.sf-order-card__item .sf-link,.sf-order-card__item .sf-link--muted{font-size:12px;white-space:nowrap}
.sf-order-card__side{display:flex;flex-direction:column;gap:8px}
.sf-order-card__side .sf-btn{width:100%;padding:10px;font-size:13px}
.sf-order-card__action,.sf-order-card__help{text-align:center;font-size:12px}
.sf-orders__pagination{display:flex;gap:8px;justify-content:center}

/* ---- wishlist ---- */
.sf-wishlist{display:flex;flex-direction:column}
.sf-wishlist__row{display:grid;grid-template-columns:96px minmax(0,1fr) 180px 200px;gap:18px;align-items:center;padding:14px 18px;border-bottom:1px solid var(--sf-border-3)}
.sf-wishlist__row:last-child{border-bottom:0}
.sf-wishlist__media{display:block;width:96px;height:64px;border-radius:var(--sf-r-8);overflow:hidden;background:var(--sf-border-3)}
.sf-wishlist__media img{width:100%;height:100%;object-fit:cover}
.sf-wishlist__info{display:flex;flex-direction:column;gap:3px;min-width:0}
.sf-wishlist__name{font-size:15px;font-weight:600;color:var(--sf-ink);text-decoration:none}
.sf-wishlist__variant{font-size:13px;color:var(--sf-muted)}
.sf-wishlist__added{font-size:12px;color:var(--sf-muted-2)}
.sf-wishlist__price{display:flex;flex-direction:column;gap:4px;align-items:flex-start}
.sf-wishlist__price b{font-size:15px}
.sf-wishlist__price .woocommerce-Price-amount{font-weight:700}
.sf-wishlist__actions{display:flex;gap:6px;justify-content:flex-end}
.sf-wishlist__actions .sf-btn{padding:9px 14px;font-size:13px}
.sf-wishlist__actions .added_to_cart{display:none}

/* ---- addresses ---- */
.sf-addresses{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.sf-address{padding:20px 22px;display:flex;flex-direction:column;gap:10px}
.sf-address__head{display:flex;justify-content:space-between;align-items:center;font-size:15px}
.sf-address__head .sf-link{font-size:13px}
.sf-address__body{font-style:normal;font-size:14px;line-height:1.55;color:var(--sf-text)}
.sf-addresses__note{font-size:13px;margin:0}
.sf-address-form{padding:22px;display:flex;flex-direction:column;gap:14px;overflow:visible}
.sf-address-form__submit{margin:0}

/* ---- payment methods ---- */
.sf-paymethods{display:flex;flex-direction:column}
.sf-paymethod{display:flex;align-items:center;gap:16px;padding:16px 20px;border-bottom:1px solid var(--sf-border-3);font-size:14px}
.sf-paymethod:last-child{border-bottom:0}
.sf-paymethod__brand{width:48px;height:32px;border-radius:5px;background:var(--sf-navy);color:var(--sf-white);display:grid;place-items:center;font-size:10px;font-weight:700;text-transform:uppercase;flex:none;overflow:hidden;padding:0 3px;text-align:center}
.sf-paymethod__info{flex:1;display:flex;flex-direction:column;gap:2px}
.sf-paymethod__info .sf-muted{font-size:12px}
.sf-paymethod__actions{display:flex;gap:12px;font-size:13px}
.sf-paymethods__gift{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 20px;text-decoration:none;color:var(--sf-ink)}
.sf-paymethods__gift>span:first-child{display:flex;flex-direction:column;gap:2px}
.sf-paymethods__gift .sf-muted{font-size:12px}
.sf-paymethods__gift .sf-account__chev{font-size:20px;color:var(--sf-muted-2)}
.sf-paymethods__note{font-size:12px;margin:0}

/* ---- account details ---- */
.sf-edit-account{display:flex;flex-direction:column;gap:16px}
.sf-edit-account__card{padding:22px;overflow:visible}
.sf-fields__full{grid-column:span 2}
.sf-fields__hint{font-size:12px;margin-top:2px}
.sf-edit-account__password summary{display:flex;justify-content:space-between;align-items:center;gap:12px;cursor:pointer;list-style:none;font-size:15px}
.sf-edit-account__password summary::-webkit-details-marker{display:none}
.sf-edit-account__password fieldset{margin-top:14px}
.sf-edit-account__submit{margin:0}
/* WC fields inside account forms follow the checkout mapping (65-checkout.css is not loaded here) */
.sf-account__content .sf-fields p.form-row{margin:0;padding:0;width:auto;float:none;display:flex;flex-direction:column;gap:2px}
.sf-account__content .sf-fields--grid p.form-row{grid-column:span 2}
.sf-account__content .sf-fields--grid p.form-row-first,.sf-account__content .sf-fields--grid p.form-row-last{grid-column:span 1}
.sf-account__content .sf-fields--grid #billing_first_name_field,.sf-account__content .sf-fields--grid #billing_last_name_field,.sf-account__content .sf-fields--grid #billing_postcode_field,.sf-account__content .sf-fields--grid #billing_city_field,
.sf-account__content .sf-fields--grid #shipping_first_name_field,.sf-account__content .sf-fields--grid #shipping_last_name_field,.sf-account__content .sf-fields--grid #shipping_postcode_field,.sf-account__content .sf-fields--grid #shipping_city_field{grid-column:span 1}
.sf-account__content .sf-fields p.form-row label{font-size:11px;font-weight:500;color:var(--sf-muted);display:block;margin:0;line-height:1.2}
.sf-account__content .sf-fields p.form-row label .required{color:var(--sf-warning);text-decoration:none}
.sf-account__content .sf-fields p.form-row .woocommerce-input-wrapper{display:block;width:100%}
.sf-account__content .sf-fields p.form-row input.input-text,.sf-account__content .sf-fields p.form-row select{width:100%;border:1.5px solid var(--sf-border-2);border-radius:var(--sf-r-8);padding:12px 14px;font-size:15px;background:var(--sf-white)}
.sf-account__content .sf-fields{display:flex;flex-direction:column;gap:10px}
.sf-account__content .sf-fields--grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.sf-account__content .select2-container .select2-selection--single{height:46px}

/* ---- plugin endpoints (gift cards, saved carts): generic scoped styling (§14.6, §14.8) ---- */
.sf-account__content table:not(.sf-table){width:100%;background:var(--sf-white);border:1px solid var(--sf-border);border-radius:var(--sf-r-10);overflow:hidden;font-size:14px;border-collapse:separate;border-spacing:0}
.sf-account__content table:not(.sf-table) th,.sf-account__content table:not(.sf-table) td{padding:10px 14px;border-bottom:1px solid var(--sf-border-3);text-align:left}
.sf-account__content table:not(.sf-table) th{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--sf-muted);background:var(--sf-surface)}
.sf-account__content .button:not(.sf-btn),.sf-account__content input[type=submit]:not(.sf-btn),.sf-account__content button[type=submit]:not(.sf-btn){display:inline-flex;align-items:center;justify-content:center;border-radius:var(--sf-r-8);font-size:14px;font-weight:600;padding:11px 18px;background:var(--sf-navy);color:var(--sf-white);border:0;cursor:pointer;text-decoration:none}
.sf-account__content .wc_gc_account_giftcards h2,.sf-account__content .wsc_user_carts h2{font-size:18px;margin:0 0 12px}

/* ---- mobile (m-account.html): content first, nav as a link list after it ---- */
@media (max-width:767px){
  .woocommerce-account .sf-page{padding-top:12px}
  .sf-account{display:flex;flex-direction:column;gap:20px}
  .sf-account__nav{order:2;position:static;gap:0}
  .sf-account__user{padding:0 4px 10px}
  .sf-account__links ul{gap:2px}
  .sf-account__link{min-height:50px;padding:0 4px;border-radius:0;border-bottom:1px solid var(--sf-border);font-size:15px}
  .sf-account__link:hover{background:transparent}
  .sf-account__links li.is-active .sf-account__link{background:transparent}
  .sf-account__link .sf-account__chev{display:inline}
  .sf-account__logout{margin-top:4px}
  .sf-account__logout .sf-account__link{border-bottom:0}
  .sf-account__content{order:1}
  .sf-account__head h1{font-size:22px}
  .sf-overview__order{padding:14px 16px;gap:8px}
  .sf-overview__order-head h2{font-size:15px}
  .sf-timeline{grid-template-columns:repeat(4,1fr)}
  .sf-timeline__date{display:none}
  .sf-timeline__label{font-size:11px}
  .sf-overview__thumbs{display:none}
  .sf-overview__order-actions{margin-left:0;width:100%}
  .sf-overview__order-actions .sf-btn{flex:1}
  .sf-flybox--preview{display:flex;gap:10px;overflow-x:auto;scrollbar-width:none;margin:0 -16px;padding:0 16px}
  .sf-flybox--preview::-webkit-scrollbar{display:none}
  .sf-flybox--preview .sf-flybox-card{flex:none;width:150px}
  .sf-flybox--preview .sf-flybox-card__meta{display:none}
  .sf-flybox{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .sf-flybox-card__body{padding:10px}
  .sf-flybox-card__name{font-size:13px}
  .sf-flybox-card__variant{font-size:11px}
  .sf-overview__row{grid-template-columns:1fr}
  .sf-order-card__strip{grid-template-columns:1fr 1fr;gap:10px 16px;padding:12px 14px}
  .sf-order-card__num{text-align:left}
  .sf-order-card__body{grid-template-columns:1fr;padding:14px;gap:14px}
  .sf-order-card__item .sf-link--muted{display:none}
  .sf-order-card__side{flex-direction:row;flex-wrap:wrap}
  .sf-order-card__side .sf-btn{width:auto;flex:1}
  .sf-order-card__action,.sf-order-card__help{flex-basis:100%}
  .sf-wishlist__row{grid-template-columns:72px minmax(0,1fr);grid-template-areas:"media info" "price price" "actions actions";gap:10px 12px;padding:12px 14px}
  .sf-wishlist__media{grid-area:media;width:72px;height:48px}
  .sf-wishlist__info{grid-area:info}
  .sf-wishlist__price{grid-area:price;flex-direction:row;align-items:center;gap:10px}
  .sf-wishlist__actions{grid-area:actions;justify-content:flex-start}
  .sf-wishlist__actions .sf-btn--primary{flex:1}
  .sf-addresses{grid-template-columns:1fr}
  .sf-paymethod{flex-wrap:wrap}
  .sf-paymethod__actions{flex-basis:100%;padding-left:64px}
  .sf-account__content .sf-fields--grid{grid-template-columns:1fr}
  .sf-account__content .sf-fields--grid p.form-row,.sf-fields__full{grid-column:span 1}
}
