/* =========================================================
   TERRA SECUNDUS USER / UC WORKFLOW THEME
   Marker: TS-TERRA-USER-UC-PURGE-20260519J
   File: /templates/terrasecundus/css/custom-user.css
   Purpose: Terra Secundus account, login, profile, edit-profile,
            memberships, account, orders, cart, checkout styling.
            This file intentionally purges dark sci-fi/foreign commerce
            skins from the Terra Secundus User/UC workflow.
   ========================================================= */

html body.terra-secundus:is(.com_users,.option-com_users,.com_unifiedcommerce,.option-com_unifiedcommerce){
  --tsu-night:#070a09;
  --tsu-night-2:#111713;
  --tsu-black:#080c0a;
  --tsu-black-2:#151d18;
  --tsu-ink:#241707;
  --tsu-soft-ink:#3d2b13;
  --tsu-parchment:#efe4c2;
  --tsu-parchment-2:#dfd0a7;
  --tsu-parchment-3:#fffaf0;
  --tsu-gold:#d8bc57;
  --tsu-gold-2:#b99231;
  --tsu-gold-hi:#fff0aa;
  --tsu-cyan:#77f3ff;
}

html body.terra-secundus:is(.com_users,.option-com_users,.com_unifiedcommerce,.option-com_unifiedcommerce) #un-main{
  background:
    radial-gradient(900px 360px at 50% 0%,rgba(216,188,87,.11),transparent 68%),
    linear-gradient(180deg,#070a09 0%,#111713 58%,#070a09 100%)!important;
}

html body.terra-secundus:is(.com_users,.option-com_users,.com_unifiedcommerce,.option-com_unifiedcommerce) #un-main-body{
  width:min(1180px,calc(100% - 34px))!important;
  max-width:1180px!important;
  margin:0 auto!important;
  padding:clamp(42px,6vw,82px) 0!important;
  background:transparent!important;
  box-shadow:none!important;
}

html body.terra-secundus:is(.com_users,.option-com_users,.com_unifiedcommerce,.option-com_unifiedcommerce) #un-component,
html body.terra-secundus:is(.com_users,.option-com_users,.com_unifiedcommerce,.option-com_unifiedcommerce) #un-component-inner{
  width:100%!important;
  max-width:1120px!important;
  margin-inline:auto!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}

html body.terra-secundus #un-component-inner :is(.tsu-page,.tsu-login-page,.tsu-edit-page){
  width:min(1080px,100%)!important;
  max-width:1080px!important;
  margin:0 auto!important;
  padding:clamp(24px,4vw,48px)!important;
  color:var(--tsu-ink)!important;
  background:
    radial-gradient(900px 360px at 50% 0%,rgba(255,255,255,.72),transparent 70%),
    linear-gradient(180deg,#f2e8c8 0%,#e0d1a8 100%)!important;
  border:1px solid rgba(126,99,40,.30)!important;
  border-left:6px solid var(--tsu-gold)!important;
  border-radius:18px!important;
  box-shadow:0 38px 82px rgba(0,0,0,.38),inset 0 0 0 1px rgba(255,255,255,.44)!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}

html body.terra-secundus #un-component-inner .tsu-hero{
  display:grid!important;
  grid-template-columns:minmax(260px,1fr) auto!important;
  gap:clamp(20px,3vw,38px)!important;
  align-items:center!important;
  margin:0 0 clamp(28px,4vw,46px)!important;
  padding:clamp(26px,4vw,46px)!important;
  color:var(--tsu-ink)!important;
  background:
    radial-gradient(620px 220px at 50% 0%,rgba(255,255,255,.92),transparent 78%),
    linear-gradient(180deg,#fffaf0 0%,#eadfbd 100%)!important;
  border:1px solid rgba(126,99,40,.22)!important;
  border-radius:16px!important;
  box-shadow:0 24px 54px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.58)!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}

html body.terra-secundus #un-component-inner .tsu-copy{min-width:0!important;max-width:660px!important;}
html body.terra-secundus #un-component-inner .tsu-kicker{
  margin:0 0 .55rem!important;
  color:#7a5b19!important;
  -webkit-text-fill-color:#7a5b19!important;
  font:900 .9rem/1.15 Georgia,"Times New Roman",serif!important;
  letter-spacing:.18em!important;
  text-transform:uppercase!important;
  text-align:left!important;
}
html body.terra-secundus #un-component-inner .tsu-title,
html body.terra-secundus #un-component-inner .tsu-hero h1{
  display:block!important;
  width:auto!important;
  max-width:100%!important;
  margin:0 0 .75rem!important;
  padding:0!important;
  color:#3e2b0f!important;
  -webkit-text-fill-color:#3e2b0f!important;
  background:none!important;
  -webkit-background-clip:border-box!important;
  background-clip:border-box!important;
  -webkit-text-stroke:0!important;
  font:900 clamp(2.15rem,4.2vw,3.95rem)/1 Georgia,"Times New Roman",serif!important;
  letter-spacing:.10em!important;
  text-transform:uppercase!important;
  text-align:left!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  text-shadow:0 1px 0 rgba(255,255,255,.85),0 12px 26px rgba(62,43,15,.14)!important;
}
html body.terra-secundus #un-component-inner .tsu-intro,
html body.terra-secundus #un-component-inner .tsu-hero p:not(.tsu-kicker){
  display:block!important;
  max-width:680px!important;
  margin:0!important;
  color:#24190b!important;
  -webkit-text-fill-color:#24190b!important;
  font:700 clamp(1rem,1.35vw,1.16rem)/1.52 Georgia,"Times New Roman",serif!important;
  text-align:left!important;
  white-space:normal!important;
  text-shadow:none!important;
}

/* Action rows: one clean row. No floating logout. */
html body.terra-secundus #un-component-inner :is(.tsu-actions,.tsu-form-actions){
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
  align-items:center!important;
  gap:12px!important;
  width:auto!important;
  max-width:620px!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  float:none!important;
  clear:none!important;
}
html body.terra-secundus #un-component-inner .tsu-form-actions{justify-content:flex-start!important;max-width:100%!important;margin-top:clamp(24px,3vw,36px)!important;}
html body.terra-secundus #un-component-inner .tsu-logout{display:inline-flex!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;position:static!important;float:none!important;transform:none!important;}
html body.terra-secundus #un-component-inner :is(.tsu-button,a.tsu-button,button.tsu-button),
html body.terra-secundus #un-component-inner :is(.tsu-button,a.tsu-button,button.tsu-button):visited{
  appearance:none!important;
  -webkit-appearance:none!important;
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:116px!important;
  max-width:max-content!important;
  min-height:42px!important;
  height:42px!important;
  margin:0!important;
  padding:0 1.3rem!important;
  color:#fff4bf!important;
  -webkit-text-fill-color:#fff4bf!important;
  font:900 .88rem/1 Georgia,"Times New Roman",serif!important;
  letter-spacing:.10em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  text-align:center!important;
  white-space:nowrap!important;
  background:linear-gradient(180deg,#1a211c 0%,#080c0a 100%)!important;
  border:1px solid rgba(216,188,87,.30)!important;
  border-radius:999px!important;
  box-shadow:0 14px 30px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.08)!important;
  cursor:pointer!important;
  box-sizing:border-box!important;
  float:none!important;
  transform:none!important;
}
html body.terra-secundus #un-component-inner :is(.tsu-button-gold,a.tsu-button-gold,button.tsu-button-gold){
  color:#1b1105!important;
  -webkit-text-fill-color:#1b1105!important;
  background:linear-gradient(180deg,#fff0aa 0%,#d8bc57 52%,#b99231 100%)!important;
  border-color:rgba(90,67,25,.48)!important;
}
html body.terra-secundus #un-component-inner :is(.tsu-button,a.tsu-button,button.tsu-button):hover,
html body.terra-secundus #un-component-inner :is(.tsu-button,a.tsu-button,button.tsu-button):focus-visible{filter:brightness(1.08)!important;}

/* Panels and black oval chips. */
html body.terra-secundus #un-component-inner .tsu-panel-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1.35fr) minmax(280px,.9fr)!important;
  gap:clamp(24px,3vw,38px)!important;
  width:100%!important;
  align-items:start!important;
}
html body.terra-secundus #un-component-inner .tsu-panel{
  position:relative!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:clamp(42px,4vw,56px) clamp(24px,3.4vw,38px) clamp(26px,3vw,36px)!important;
  color:var(--tsu-ink)!important;
  background:
    radial-gradient(620px 220px at 50% 0%,rgba(255,255,255,.78),transparent 72%),
    linear-gradient(180deg,#f7edcd 0%,#e2d4ad 100%)!important;
  border:1px solid rgba(126,99,40,.24)!important;
  border-radius:16px!important;
  box-shadow:0 24px 55px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.48)!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}
html body.terra-secundus #un-component-inner .tsu-panel-wide{grid-column:1 / -1!important;}
html body.terra-secundus #un-component-inner :is(.tsu-chip,.tsu-panel > legend,.tsu-panel-title){
  position:absolute!important;
  top:-18px!important;
  left:clamp(24px,3vw,36px)!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:130px!important;
  max-width:calc(100% - 48px)!important;
  min-height:36px!important;
  padding:.55rem 1.35rem!important;
  border-radius:999px!important;
  border:1px solid rgba(216,188,87,.34)!important;
  background:linear-gradient(180deg,#151d18 0%,#080c0a 100%)!important;
  box-shadow:0 14px 28px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.08)!important;
  color:#fff4bf!important;
  -webkit-text-fill-color:#fff4bf!important;
  font:900 .86rem/1 Georgia,"Times New Roman",serif!important;
  letter-spacing:.10em!important;
  text-transform:uppercase!important;
  text-align:center!important;
  text-shadow:0 1px 0 rgba(0,0,0,.9),0 0 10px rgba(216,188,87,.30)!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
html body.terra-secundus #un-component-inner .tsu-rule{height:5px!important;margin:0 0 24px!important;border-radius:999px!important;background:linear-gradient(90deg,#d8bc57,#fff0aa,#7a5b1a)!important;box-shadow:0 7px 18px rgba(126,99,40,.18)!important;}
html body.terra-secundus #un-component-inner .tsu-fields{display:grid!important;gap:12px!important;}
html body.terra-secundus #un-component-inner .tsu-row{display:grid!important;grid-template-columns:minmax(165px,.55fr) minmax(0,1fr)!important;gap:14px!important;align-items:center!important;}
html body.terra-secundus #un-component-inner .tsu-label{min-height:44px!important;padding:.8rem 1rem!important;border-radius:9px!important;background:rgba(126,99,40,.13)!important;border:1px solid rgba(126,99,40,.12)!important;color:#2b2112!important;-webkit-text-fill-color:#2b2112!important;font:900 .92rem/1.15 Georgia,"Times New Roman",serif!important;letter-spacing:.06em!important;text-transform:uppercase!important;overflow-wrap:break-word!important;}
html body.terra-secundus #un-component-inner .tsu-value{min-height:44px!important;padding:.8rem 1rem!important;border-radius:9px!important;background:rgba(255,250,240,.68)!important;border:1px solid rgba(126,99,40,.10)!important;color:#17100a!important;-webkit-text-fill-color:#17100a!important;font:800 1rem/1.25 Georgia,"Times New Roman",serif!important;overflow-wrap:anywhere!important;}

/* Edit profile form. */
html body.terra-secundus #un-component-inner .tsu-form{display:block!important;margin:0!important;padding:0!important;}
html body.terra-secundus #un-component-inner .tsu-form-grid{display:grid!important;grid-template-columns:1fr!important;gap:clamp(24px,3vw,36px)!important;}
html body.terra-secundus #un-component-inner .tsu-form-row{display:grid!important;grid-template-columns:minmax(180px,.42fr) minmax(0,1fr)!important;gap:16px!important;align-items:start!important;margin:0 0 14px!important;}
html body.terra-secundus #un-component-inner .tsu-form-label{min-height:44px!important;padding:.8rem 1rem!important;border-radius:9px!important;background:rgba(126,99,40,.13)!important;border:1px solid rgba(126,99,40,.12)!important;color:#2b2112!important;-webkit-text-fill-color:#2b2112!important;font:900 .92rem/1.15 Georgia,"Times New Roman",serif!important;letter-spacing:.06em!important;text-transform:uppercase!important;}
html body.terra-secundus #un-component-inner .tsu-form-input :is(input,select,textarea){width:100%!important;min-height:44px!important;padding:.65rem .85rem!important;border-radius:9px!important;border:1px solid rgba(126,99,40,.28)!important;background:#fffaf0!important;color:#17100a!important;-webkit-text-fill-color:#17100a!important;font:700 1rem/1.25 Georgia,"Times New Roman",serif!important;box-shadow:inset 0 1px 3px rgba(0,0,0,.12)!important;}
html body.terra-secundus #un-component-inner .tsu-help{margin:.35rem 0 0!important;color:#4c3a1c!important;font:600 .92rem/1.35 Georgia,"Times New Roman",serif!important;}
html body.terra-secundus #un-component-inner .tsu-note{padding:.85rem 1rem!important;border-radius:9px!important;background:rgba(255,250,240,.62)!important;color:#332411!important;font:700 .98rem/1.4 Georgia,"Times New Roman",serif!important;}

/* Terra login forms, including fallback styling for any existing login markup. */
html body.terra-secundus.view-login #un-component-inner :is(.tsu-login-card,.com-users-login,.login,.uc-login,.uc-login-card,.uc-auth-card,form.form-validate,form[name="login"]){
  width:min(720px,100%)!important;
  margin:0 auto!important;
  padding:clamp(28px,4vw,46px)!important;
  color:#241707!important;
  background:
    radial-gradient(680px 250px at 50% 0%,rgba(255,255,255,.85),transparent 75%),
    linear-gradient(180deg,#f7edcd 0%,#dfd0a7 100%)!important;
  border:1px solid rgba(126,99,40,.30)!important;
  border-left:6px solid #d8bc57!important;
  border-radius:18px!important;
  box-shadow:0 38px 82px rgba(0,0,0,.38),inset 0 0 0 1px rgba(255,255,255,.46)!important;
}
html body.terra-secundus.view-login #un-component-inner :is(.tsu-login-title,.login h1,.login h2,.uc-login h1,.uc-login h2,.uc-auth-card h1,.uc-auth-card h2){
  margin:0 0 1.1rem!important;
  color:#3e2b0f!important;
  -webkit-text-fill-color:#3e2b0f!important;
  background:none!important;
  font:900 clamp(2rem,4vw,3.25rem)/1 Georgia,"Times New Roman",serif!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  text-align:center!important;
  text-shadow:0 1px 0 rgba(255,255,255,.85),0 12px 26px rgba(62,43,15,.14)!important;
}
html body.terra-secundus.view-login #un-component-inner :is(.tsu-login-intro,.login p,.uc-login p,.uc-auth-card p){
  color:#2b2112!important;
  -webkit-text-fill-color:#2b2112!important;
  font:700 1.05rem/1.5 Georgia,"Times New Roman",serif!important;
  text-align:center!important;
}
html body.terra-secundus.view-login #un-component-inner :is(.tsu-login-field,.control-group,.form-group){margin:0 0 1rem!important;}
html body.terra-secundus.view-login #un-component-inner label{color:#2b2112!important;-webkit-text-fill-color:#2b2112!important;font:900 .95rem/1.2 Georgia,"Times New Roman",serif!important;}
html body.terra-secundus.view-login #un-component-inner :is(input[type="text"],input[type="password"],input[type="email"]){width:100%!important;min-height:46px!important;border-radius:9px!important;border:1px solid rgba(126,99,40,.30)!important;background:#fffaf0!important;color:#17100a!important;-webkit-text-fill-color:#17100a!important;box-shadow:inset 0 1px 3px rgba(0,0,0,.14)!important;}
html body.terra-secundus.view-login #un-component-inner :is(.tsu-login-links,.login-links,.uc-login-links){display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:12px!important;margin-top:1.15rem!important;}
html body.terra-secundus.view-login #un-component-inner :is(button,input[type="submit"],.btn,.button,a.btn){min-height:42px!important;border-radius:999px!important;font-family:Georgia,"Times New Roman",serif!important;font-weight:900!important;letter-spacing:.06em!important;text-transform:none!important;}
html body.terra-secundus.view-login #un-component-inner :is(button[type="submit"],input[type="submit"]){color:#1b1105!important;-webkit-text-fill-color:#1b1105!important;background:linear-gradient(180deg,#fff0aa,#d8bc57 52%,#b99231)!important;border:1px solid rgba(90,67,25,.48)!important;}

/* Passkey: make it the same footprint as the login button and remove large icon art. */
html body.terra-secundus.view-login #un-component-inner :is([class*="webauthn"],[id*="webauthn"],[name*="webauthn"],[class*="passkey"],[id*="passkey"],[name*="passkey"]){max-width:max-content!important;}
html body.terra-secundus.view-login #un-component-inner :is([class*="webauthn"],[class*="passkey"]) :is(img,svg,picture,i,.icon,[class*="icon"],[class*="fa"]){display:none!important;}
html body.terra-secundus.view-login #un-component-inner :is([class*="webauthn"],[class*="passkey"]) :is(button,a,.btn,.button){height:42px!important;min-height:42px!important;min-width:104px!important;width:auto!important;max-width:max-content!important;padding:0 1.15rem!important;font-size:0!important;line-height:0!important;}
html body.terra-secundus.view-login #un-component-inner :is([class*="webauthn"],[class*="passkey"]) :is(button,a,.btn,.button)::before{content:"Passkey"!important;font:900 .95rem/1 Georgia,"Times New Roman",serif!important;color:#1b1105!important;-webkit-text-fill-color:#1b1105!important;}

/* Membership card headings: no overflow. */
html body.terra-secundus.view-memberships #un-component-inner :is(.ts-uc-memberships,.uc-memberships,.membership-list,.membership-plans){width:100%!important;max-width:1080px!important;margin:0 auto!important;}
html body.terra-secundus.view-memberships #un-component-inner :is(.ts-uc-membership-body h2,.membership-card h2,.membership-plan h2,.card h2){font-size:clamp(1.55rem,2.2vw,2.35rem)!important;line-height:1.08!important;letter-spacing:.06em!important;white-space:normal!important;overflow-wrap:break-word!important;word-break:normal!important;}

@media(max-width:900px){
  html body.terra-secundus #un-component-inner .tsu-hero,
  html body.terra-secundus #un-component-inner .tsu-panel-grid,
  html body.terra-secundus #un-component-inner .tsu-form-row{grid-template-columns:1fr!important;}
  html body.terra-secundus #un-component-inner .tsu-actions{justify-content:flex-start!important;}
  html body.terra-secundus #un-component-inner .tsu-row{grid-template-columns:1fr!important;}
}
