:root{
  --ink:#f4f8f5;
  --purple:#18d872;
  --plum:#20e87e;
  --lav:#8ef0b7;
  --mist:#202622;
  --gold:#d7bd73;
  --gold2:#f0d892;
  --white:#f8fbf9;
  --muted:#aab5ae;
  --line:rgba(255,255,255,.09);
  --green:#20df78;
  --shadow:0 16px 44px rgba(0,0,0,.26);
}

html{background:#151816;color-scheme:dark}
body{background:radial-gradient(circle at 88% 4%,rgba(32,232,126,.08),transparent 27%),#151816;color:#f3f7f4;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:.005em}
.main{background:linear-gradient(145deg,#171b18,#121513 72%);min-height:100vh}

.topbar h2,.page-head h3,.section-title h3,.welcome h3,.preview-panel h3,.landing-hero h4,
.public-hero h1,.public-section h2,.public-cta h2{
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-style:normal!important;
  font-weight:720!important;
  letter-spacing:-.035em!important;
  line-height:1.04!important;
  color:#f8fbf9!important;
  -webkit-text-fill-color:#f8fbf9!important;
  text-shadow:none!important;
}
.topbar h2{font-size:clamp(1.75rem,3vw,2.55rem)!important}
.page-head h3{font-size:clamp(1.65rem,2.6vw,2.25rem)!important}
.section-title h3{font-size:clamp(1.3rem,2vw,1.7rem)!important;letter-spacing:-.025em!important}
h4,h5{letter-spacing:-.015em}
.eyebrow{color:#70eba4!important;font-size:.69rem;letter-spacing:.18em;font-weight:750}
.muted,.card small,.editable-block p{color:#aeb9b2!important}

.card,.editable-block,.onboarding-review-card,.client-plan-day{
  background:linear-gradient(145deg,#222824,#1a1f1c)!important;
  border:1px solid rgba(255,255,255,.085)!important;
  border-radius:14px!important;
  box-shadow:0 18px 44px rgba(0,0,0,.21)!important;
}
.card:hover,.client-plan-day:hover{border-color:rgba(70,236,139,.24)!important}
.welcome{background:linear-gradient(120deg,#1d2621 0%,#173324 70%,#12562f 100%)!important;border-color:rgba(69,239,139,.28)!important;border-radius:16px!important;min-height:0}
.welcome:after{color:rgba(75,244,145,.07)!important}
.welcome:before{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,#20e87e,rgba(32,232,126,0));z-index:1}
.welcome p{color:#cbd6cf!important}

.primary{background:#27e97e!important;color:#07140c!important;border:1px solid #5aff9e!important;border-radius:9px!important;box-shadow:0 8px 24px rgba(32,232,126,.14);font-weight:750!important;text-shadow:none!important}
.primary:hover,.primary:focus-visible{background:#70f5aa!important;box-shadow:0 0 0 3px rgba(32,232,126,.16),0 10px 28px rgba(32,232,126,.19)}
.secondary,.pill{background:#282e2a!important;color:#eef5f0!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:9px!important;box-shadow:none!important}
.secondary:hover,.pill:hover{border-color:#42e78a!important;background:#303832!important}
.icon-btn{background:#252b27!important;color:#f4faf6!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:10px!important;box-shadow:none!important}

.sidebar{background:#161a17!important;border-right:1px solid rgba(255,255,255,.08);box-shadow:24px 0 60px rgba(0,0,0,.34)!important}
.brand{border-bottom-color:rgba(255,255,255,.08)!important}
.brand strong,.public-brand strong{font-family:Georgia,"Times New Roman",serif!important;font-style:italic!important;font-weight:600!important;letter-spacing:-.03em;text-shadow:none!important;color:#f8fbf9!important}
.brand span,.public-brand span{color:#83eeb0!important;letter-spacing:.18em}
.nav{gap:7px}
.nav button{border-radius:9px!important;color:#aeb9b2!important;border:1px solid transparent!important}
.nav button:hover{background:#242a26!important;color:#fff!important;border-color:rgba(255,255,255,.08)!important}
.nav button.active{background:#27e97e!important;color:#07140c!important;border-color:#5aff9e!important;font-weight:750}
.nav button.active .ico{color:#07140c!important}
.portal-menu-toggle{background:#202622!important;border-color:rgba(76,239,143,.45)!important;border-radius:10px!important;box-shadow:0 14px 35px rgba(0,0,0,.3)!important}

.stat{position:relative;overflow:hidden}
.stat:after{content:"";position:absolute;left:0;bottom:0;width:46%;height:2px;background:linear-gradient(90deg,#25e77d,transparent)}
.stat-icon{background:#2b332e!important;color:#37ed87!important;border-radius:9px!important}
.stat strong,.kpi-number{color:#f8fbf9!important}
.macro{background:#292f2b!important;border:1px solid rgba(255,255,255,.07)!important;border-radius:10px!important}
.macro strong{color:#4cef91!important}
.client-meal-detail.has-meal-photo{display:grid;grid-template-columns:112px minmax(0,1fr);gap:13px;align-items:start}
.client-meal-detail.has-meal-photo>img{width:112px;height:112px;object-fit:cover;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:#111612}
.client-meal-detail.has-meal-photo>div{min-width:0}
.task,.meal,.exercise,.document-row{border-bottom-color:rgba(255,255,255,.08)!important}
.tag,.published-badge,.status{border-radius:6px!important;letter-spacing:.08em}
.check{background:#1b211d!important;border-color:#59625c!important;border-radius:6px!important}
.check.done{background:#25df78!important;border-color:#50ef98!important;color:#07140c!important}

input,textarea,select,.search,.native-field input,.native-field textarea,.native-field select{
  background:#191e1b!important;
  color:#f6faf7!important;
  border:1px solid #404943!important;
  border-radius:8px!important;
}
input:focus,textarea:focus,select:focus,.search:focus{outline:2px solid rgba(41,234,126,.32)!important;border-color:#35e985!important}
.modal{background:rgba(5,7,6,.82)!important;backdrop-filter:blur(9px)}
.modal-card{background:linear-gradient(155deg,#222824,#151a17)!important;border:1px solid rgba(78,235,143,.23)!important;border-radius:15px!important;box-shadow:0 28px 90px rgba(0,0,0,.55)!important}
.form-section,.native-form section{border-radius:11px!important}

.coach-tabs button,.detail-tabs button,.message-template-list button,.coach-template-list button,.extras-filters button{
  border-radius:8px!important;
}
.coach-tabs button.active,.detail-tabs button.active{background:#27e97e!important;color:#07140c!important;border-color:#5aff9e!important;box-shadow:none!important}
.attention,.thread,.coach-thread,.billing-plan-option,.extra-circuit,.week-ahead-day{border-radius:11px!important}
.thread.active,.coach-thread.active{background:#dff8e9!important;border-color:#52e990!important}
.thread.active b,.thread.active small,.coach-thread.active b,.coach-thread.active small{color:#102219!important}
.bubble{border-radius:12px!important}.bubble.me{background:#24d974!important;color:#07140c!important}.bubble.them{background:#252b27!important;border-color:rgba(255,255,255,.1)!important;color:#eef5f0!important}

.workout-cover{background:linear-gradient(135deg,#202622,#0e5e32)!important;border-bottom:3px solid #27e97e}
.workout-cover.gold{background:linear-gradient(135deg,#252a26,#564a28)!important;border-bottom-color:#d7bd73}
.workout-cover.rose{background:linear-gradient(135deg,#242925,#234d35)!important}
.extra-circuit,.extras-intro{background:linear-gradient(150deg,#222824,#15251b)!important}
.circuit-progress span{background:linear-gradient(90deg,#20e87e,#b7ff42)!important}
.week-ahead-day.today{border-color:#39eb87!important;box-shadow:inset 0 -3px #27e97e!important}
.week-ahead-item .secondary{background:#29312c!important}

.public-site{background:#121513!important}
.public-nav{background:rgba(18,21,19,.9)!important;border-bottom-color:rgba(255,255,255,.08)!important}
.public-hero{background:radial-gradient(circle at 78% 32%,rgba(32,232,126,.15),transparent 29%),linear-gradient(138deg,#171b18,#101311 62%,#10291a)!important}
.public-hero h1{font-size:clamp(3rem,7vw,6.6rem)!important;max-width:800px}
.public-hero p{color:#b9c4bd!important;max-width:670px}
.public-section{background:#151816}
.public-section:nth-of-type(even){background:#191d1a}
.public-section h2{font-size:clamp(2.25rem,5vw,4.3rem)!important}
.public-feature,.price-box,.feature-box{background:#202522!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:12px!important}
.public-feature:hover,.price-box:hover{border-color:rgba(64,235,136,.33)!important;transform:translateY(-2px)}
.price-box.featured{border-color:#38e884!important;box-shadow:inset 0 -3px #27e97e!important}
.public-pricing{background:#111411!important}
.public-cta{background:radial-gradient(circle at 50% 55%,#174b2c,#121513 58%)!important}
.public-footer{background:#111411;border-top-color:rgba(255,255,255,.08)!important}

@media(max-width:760px){
  .main{background:#141714;padding-inline:12px!important}
  .topbar h2{font-size:1.75rem!important}
  .card{padding:16px!important}
  .welcome{padding:21px!important}
  .public-hero{min-height:auto;padding-top:62px!important;padding-bottom:52px!important}
  .public-hero h1{font-size:clamp(2.7rem,14vw,4.6rem)!important}
  .public-section{padding-top:50px!important;padding-bottom:50px!important}
  .client-meal-detail.has-meal-photo{grid-template-columns:82px minmax(0,1fr)}
  .client-meal-detail.has-meal-photo>img{width:82px;height:82px}
}
