/* AI4Trening — Calm Premium V1
   Wellness Zone is the reference: quiet dark surfaces, thin borders, clear hierarchy,
   restrained lime accents and one obvious primary action at a time. Visual-only. */

:root{
  --ai4-calm-bg:#07100b;
  --ai4-calm-bg-deep:#040805;
  --ai4-calm-surface:#0d1711;
  --ai4-calm-surface-2:#0a130e;
  --ai4-calm-line:rgba(174,208,185,.13);
  --ai4-calm-line-strong:rgba(183,255,0,.22);
  --ai4-calm-text:#f3f7f4;
  --ai4-calm-muted:#98a69c;
  --ai4-calm-accent:#b7ff00;
  --ai4-calm-shadow:0 10px 26px rgba(0,0,0,.16),inset 0 1px rgba(255,255,255,.024);
}

body[data-ai4-calm-surface]{
  background:radial-gradient(44rem 26rem at 88% -8%,rgba(183,255,0,.05),transparent 68%),linear-gradient(180deg,var(--ai4-calm-bg),var(--ai4-calm-bg-deep))!important;
  color:var(--ai4-calm-text);
}

body[data-ai4-calm-surface] :is(.top,.camp-top){
  border-color:rgba(255,255,255,.065)!important;
}

body[data-ai4-calm-surface] :is(.hero,.camp-hero){
  margin:4px 0 14px!important;
  padding-top:18px!important;
  padding-bottom:14px!important;
}

body[data-ai4-calm-surface] :is(.hero h1,.camp-hero h1){
  margin-bottom:8px!important;
  font-size:clamp(34px,9.5vw,42px)!important;
  line-height:1!important;
  letter-spacing:-.055em!important;
  color:var(--ai4-calm-text)!important;
  background:none!important;
  -webkit-text-fill-color:currentColor!important;
  text-shadow:none!important;
}

body[data-ai4-calm-surface] :is(.hero p,.camp-hero p){
  max-width:58ch;
  color:var(--ai4-calm-muted)!important;
  font-size:13px!important;
  line-height:1.5!important;
}

body[data-ai4-calm-surface] :is(
  .card,.source,.pt-card,.booking,.fuel-row,.profile,.camp-card
){
  border:1px solid var(--ai4-calm-line)!important;
  border-radius:18px!important;
  background:linear-gradient(145deg,var(--ai4-calm-surface),var(--ai4-calm-surface-2))!important;
  box-shadow:var(--ai4-calm-shadow)!important;
}

body[data-ai4-calm-surface] :is(.nutri-hero,.pt-card,.camp-card[data-priority="high"]){
  border-color:var(--ai4-calm-line-strong)!important;
}

body[data-ai4-calm-surface] :is(.section-title,.camp-section-title){
  margin-top:22px!important;
  margin-bottom:10px!important;
}

body[data-ai4-calm-surface] :is(.section-title h2,.camp-section-title h2){
  color:var(--ai4-calm-text)!important;
  font-size:21px!important;
  font-weight:900!important;
  letter-spacing:-.04em!important;
}

body[data-ai4-calm-surface] :is(.section-title>span,.camp-section-title>span){
  border:0!important;
  background:none!important;
  color:#849188!important;
  box-shadow:none!important;
}

body[data-ai4-calm-surface] :is(.kicker,.camp-kicker,.fuel-row small){
  color:#b8c7bc!important;
  text-shadow:none!important;
}

body[data-ai4-calm-surface] :is(.pill,.badge,.state,.camp-chip,.camp-autopilot-badge){
  border:1px solid rgba(255,255,255,.09)!important;
  background:rgba(255,255,255,.025)!important;
  color:#aeb9b1!important;
  box-shadow:none!important;
}

body[data-ai4-calm-surface] :is(.state.ok,.camp-chip.active,.camp-chip[aria-pressed="true"]){
  border-color:rgba(183,255,0,.22)!important;
  background:rgba(183,255,0,.06)!important;
  color:#d8ff83!important;
}

body[data-ai4-calm-surface] :is(
  .button,.send,.camp-primary,.edit button,[data-primary-cta]
){
  border:1px solid rgba(218,255,132,.46)!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,#caff46,#ace900)!important;
  color:#071008!important;
  font-weight:950!important;
  box-shadow:0 10px 24px rgba(151,214,0,.12),inset 0 1px rgba(255,255,255,.38)!important;
}

body[data-ai4-calm-surface] :is(
  .button-secondary,.source-actions button:not(.button),.cancel,.camp-actions button:not(.camp-primary),.camp-adjust-btn
){
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:15px!important;
  background:#0c1510!important;
  color:#c8d1cb!important;
  box-shadow:none!important;
}

body[data-ai4-calm-surface="nutrition"] :is(.nutri-hero,.profile){padding:16px!important}
body[data-ai4-calm-surface="nutrition"] .fuel{gap:8px!important}
body[data-ai4-calm-surface="nutrition"] .fuel-row{padding:13px 14px!important}
body[data-ai4-calm-surface="nutrition"] .meal{
  padding:13px 0!important;
  border-bottom-color:rgba(255,255,255,.07)!important;
}
body[data-ai4-calm-surface="nutrition"] .nutri-hero h2{font-size:22px!important;line-height:1.08!important}

body[data-ai4-calm-surface="connections"] .stack{gap:8px!important}
body[data-ai4-calm-surface="connections"] .source{padding:15px!important}
body[data-ai4-calm-surface="connections"] .source h2{font-size:18px!important;letter-spacing:-.03em!important}
body[data-ai4-calm-surface="connections"] .source p{color:#9eaaa2!important}
body[data-ai4-calm-surface="connections"] .source-actions{margin-top:12px!important}
body[data-ai4-calm-surface="connections"] .meta{color:#7f8c83!important}

body[data-ai4-calm-surface="pt"] .pt-card{padding:16px!important}
body[data-ai4-calm-surface="pt"] .pt-card h2{font-size:22px!important;line-height:1.08!important}
body[data-ai4-calm-surface="pt"] .pt-card p{color:#9eaaa2!important}
body[data-ai4-calm-surface="pt"] .booking{padding:13px 14px!important}
body[data-ai4-calm-surface="pt"] .booking p{color:#96a39a!important}
body[data-ai4-calm-surface="pt"] .pt-editorial{
  border-color:var(--ai4-calm-line)!important;
  background:linear-gradient(145deg,#0e1812,#08100b)!important;
  box-shadow:var(--ai4-calm-shadow)!important;
}

body[data-ai4-calm-surface="camp"] .camp-app{max-width:760px!important}
body[data-ai4-calm-surface="camp"] .camp-hero{padding-left:2px!important;padding-right:2px!important}
body[data-ai4-calm-surface="camp"] .camp-hero br{display:none}
body[data-ai4-calm-surface="camp"] .camp-card{
  margin-top:10px!important;
  padding:15px!important;
}
body[data-ai4-calm-surface="camp"] :is(
  .camp-autopilot-head,.camp-timeline-head,.camp-transition-head,.camp-morning-head,
  .camp-day-close-head,.camp-memory-head,.camp-recap-head
){gap:10px!important}
body[data-ai4-calm-surface="camp"] :is(
  .camp-autopilot-head strong,.camp-timeline-head strong,.camp-transition-head strong,
  .camp-morning-head strong,.camp-day-close-head strong,.camp-memory-head strong,.camp-recap-head strong
){letter-spacing:-.03em!important}
body[data-ai4-calm-surface="camp"] :is(
  .camp-autopilot-actions,.camp-actions,.camp-readiness-actions,.camp-resume-actions
){gap:8px!important}
body[data-ai4-calm-surface="camp"] :is(
  .camp-timeline-progress,.camp-readiness-progress,[role="progressbar"]
){
  box-shadow:none!important;
}
body[data-ai4-calm-surface="camp"] :is(.camp-note,.camp-memory-note,.camp-recap-note){
  color:#839087!important;
}

body[data-ai4-calm-surface] nav.bottom{
  background:rgba(4,10,7,.95)!important;
  border-top-color:rgba(255,255,255,.075)!important;
  box-shadow:none!important;
  backdrop-filter:blur(18px)!important;
}
body[data-ai4-calm-surface] nav.bottom a{background:transparent!important;text-shadow:none!important}
body[data-ai4-calm-surface] nav.bottom a.active{color:#d9ff85!important}

body[data-ai4-calm-surface] :is(a,button,input,select,textarea):focus-visible{
  outline:2px solid rgba(183,255,0,.72)!important;
  outline-offset:3px!important;
}

@media(max-width:679px){
  body[data-ai4-calm-surface] :is(.app,.camp-app){
    padding-left:max(15px,env(safe-area-inset-left))!important;
    padding-right:max(15px,env(safe-area-inset-right))!important;
  }
  body[data-ai4-calm-surface] :is(.hero,.camp-hero){
    padding-top:16px!important;
    padding-bottom:12px!important;
  }
  body[data-ai4-calm-surface] :is(.hero h1,.camp-hero h1){font-size:36px!important}
  body[data-ai4-calm-surface] :is(.card,.source,.pt-card,.booking,.fuel-row,.profile,.camp-card){border-radius:17px!important}
}

@media(hover:hover) and (pointer:fine){
  body[data-ai4-calm-surface] :is(.source,.booking,.fuel-row,.camp-card){
    transition:border-color .16s ease,transform .16s ease;
  }
  body[data-ai4-calm-surface] :is(.source,.booking,.fuel-row,.camp-card):hover{
    border-color:rgba(183,255,0,.17)!important;
    transform:translateY(-1px);
  }
}

@media(prefers-reduced-motion:reduce){
  body[data-ai4-calm-surface] *{
    animation-duration:.001ms!important;
    animation-iteration-count:1!important;
    transition:none!important;
  }
}

@media(forced-colors:active){
  body[data-ai4-calm-surface] :is(.card,.source,.pt-card,.booking,.fuel-row,.profile,.camp-card){
    border:2px solid CanvasText!important;
    background:Canvas!important;
    color:CanvasText!important;
    box-shadow:none!important;
  }
  body[data-ai4-calm-surface] :is(.button,.send,.camp-primary,.edit button,[data-primary-cta]){
    border:2px solid ButtonText!important;
    background:ButtonFace!important;
    color:ButtonText!important;
  }
}


/* Calm Premium V1 — secondary app surfaces. */
body[data-ai4-calm-surface] :is(.save){
  border:1px solid rgba(218,255,132,.46)!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,#caff46,#ace900)!important;
  color:#071008!important;
  font-weight:950!important;
  box-shadow:0 10px 24px rgba(151,214,0,.12),inset 0 1px rgba(255,255,255,.38)!important;
}

body[data-ai4-calm-surface="notifications"] .stack{gap:8px!important}
body[data-ai4-calm-surface="notifications"] .notice{
  border:1px solid var(--ai4-calm-line)!important;
  border-radius:17px!important;
  background:linear-gradient(145deg,var(--ai4-calm-surface),var(--ai4-calm-surface-2))!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="notifications"] .notice.unread{
  border-color:rgba(183,255,0,.19)!important;
  background:radial-gradient(100% 120% at 100% 0,rgba(183,255,0,.045),transparent 55%),linear-gradient(145deg,var(--ai4-calm-surface),var(--ai4-calm-surface-2))!important;
}
body[data-ai4-calm-surface="notifications"] .notice.unread .dot{box-shadow:none!important}
body[data-ai4-calm-surface="notifications"] .notice p{color:#99a69d!important}
body[data-ai4-calm-surface="notifications"] .notice small{color:#76837a!important}
body[data-ai4-calm-surface="notifications"] .tools button{
  border-color:rgba(255,255,255,.09)!important;
  border-radius:14px!important;
  background:#0c1510!important;
  color:#bfc9c2!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="notifications"] .notice a{
  border-radius:14px!important;
  box-shadow:none!important;
}

body[data-ai4-calm-surface="checkin"] .check-card{
  padding:17px!important;
  border-color:rgba(183,255,0,.18)!important;
  background:radial-gradient(105% 120% at 100% 0,rgba(183,255,0,.045),transparent 56%),linear-gradient(145deg,#0e1812,#08100b)!important;
}
body[data-ai4-calm-surface="checkin"] .check-card h2{font-size:23px!important;line-height:1.08!important}
body[data-ai4-calm-surface="checkin"] .mini{
  border-color:rgba(255,255,255,.08)!important;
  border-radius:14px!important;
  background:#0a130e!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="checkin"] .status{
  border-color:rgba(255,255,255,.08)!important;
  background:#0a130e!important;
  color:#94a198!important;
}
body[data-ai4-calm-surface="checkin"] .comment textarea{
  border-color:rgba(255,255,255,.10)!important;
  background:#08100b!important;
}
body[data-ai4-calm-surface="checkin"] .save-success-card{
  border-color:rgba(183,255,0,.18)!important;
  border-radius:22px!important;
  background:linear-gradient(155deg,#0e1812,#08100b)!important;
  box-shadow:0 20px 54px rgba(0,0,0,.32)!important;
}
body[data-ai4-calm-surface="checkin"] .save-success-icon{box-shadow:none!important}

body[data-ai4-calm-surface="cycling-profile"] :is(.summary-card,.edit-card,.info-card){
  border-color:var(--ai4-calm-line)!important;
  background:linear-gradient(145deg,var(--ai4-calm-surface),var(--ai4-calm-surface-2))!important;
  box-shadow:var(--ai4-calm-shadow)!important;
}
body[data-ai4-calm-surface="cycling-profile"] .summary-card{
  border-color:rgba(183,255,0,.18)!important;
}
body[data-ai4-calm-surface="cycling-profile"] .ftp-value{
  font-size:36px!important;
  letter-spacing:-.05em!important;
}
body[data-ai4-calm-surface="cycling-profile"] .source-pill{
  border-color:rgba(255,255,255,.09)!important;
  background:rgba(255,255,255,.025)!important;
  color:#b7c2ba!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="cycling-profile"] .summary-stat,
body[data-ai4-calm-surface="cycling-profile"] .zone{
  border-color:rgba(255,255,255,.08)!important;
  background:#0a130e!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="cycling-profile"] .zone-id{
  background:rgba(183,255,0,.055)!important;
  color:#d6ff80!important;
}
body[data-ai4-calm-surface="cycling-profile"] .field input{
  border-color:rgba(255,255,255,.10)!important;
  background:#08100b!important;
}
body[data-ai4-calm-surface="cycling-profile"] .info-actions a{
  border-color:rgba(255,255,255,.10)!important;
  border-radius:14px!important;
  background:#0b1410!important;
  color:#c7d0ca!important;
}
body[data-ai4-calm-surface="cycling-profile"] .info-actions a.primary{
  border-color:rgba(183,255,0,.21)!important;
  color:#d7ff82!important;
}


/* Calm Premium V1 — round 3: mobility, strength programmes and subscription. */

body[data-ai4-calm-surface="mobility"] :is(
  .mobility-control-shell,.resume-card,.coach-card,.smart-panel,.routine,.custom-card,.week-card,
  .mobility-history,.mobility-insights-entry,.library-panel
){
  border-color:var(--ai4-calm-line)!important;
  background:linear-gradient(145deg,var(--ai4-calm-surface),var(--ai4-calm-surface-2))!important;
  box-shadow:var(--ai4-calm-shadow)!important;
}
body[data-ai4-calm-surface="mobility"] .resume-card{
  border-color:rgba(183,255,0,.17)!important;
  background:radial-gradient(100% 120% at 100% 0,rgba(183,255,0,.045),transparent 56%),linear-gradient(145deg,var(--ai4-calm-surface),var(--ai4-calm-surface-2))!important;
}
body[data-ai4-calm-surface="mobility"] .mobility-control-shell{
  padding:8px!important;
  border-radius:20px!important;
}
body[data-ai4-calm-surface="mobility"] :is(.sport-grid,.mode-grid){
  border-color:rgba(255,255,255,.065)!important;
  background:#07100b!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="mobility"] :is(.sport,.mode){
  border-color:transparent!important;
  background:transparent!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="mobility"] :is(.sport.active,.mode.active){
  border-color:rgba(183,255,0,.22)!important;
  background:rgba(183,255,0,.055)!important;
  color:#edf6ef!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="mobility"] .coach-card::after{display:none!important}
body[data-ai4-calm-surface="mobility"] .coach-mark{
  border-color:rgba(255,255,255,.09)!important;
  background:#0b1410!important;
  color:#c9d4cc!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="mobility"] .coach-tags span{
  border-color:rgba(255,255,255,.08)!important;
  background:#09110c!important;
  color:#aeb9b1!important;
}
body[data-ai4-calm-surface="mobility"] :is(.coach-apply,.custom-start,.resume-link){
  border:1px solid rgba(218,255,132,.42)!important;
  border-radius:15px!important;
  background:linear-gradient(180deg,#caff46,#ace900)!important;
  color:#071008!important;
  box-shadow:0 9px 22px rgba(151,214,0,.10)!important;
}
body[data-ai4-calm-surface="mobility"] :is(.shuffle,.clear-custom,.library-toggle,.duration,.focus-chip){
  border-color:rgba(255,255,255,.09)!important;
  background:#0a130e!important;
  color:#b8c4bc!important;
  box-shadow:none!important;
}

body[data-ai4-calm-surface="strength-programs"]{
  --sp-bg:var(--ai4-calm-bg-deep);
  --sp-surface:var(--ai4-calm-surface);
  --sp-surface-2:var(--ai4-calm-surface-2);
  --sp-line:var(--ai4-calm-line);
  --sp-shadow:var(--ai4-calm-shadow);
}
body[data-ai4-calm-surface="strength-programs"] main{max-width:760px}
body[data-ai4-calm-surface="strength-programs"] .strength-hub-nav{
  border-color:rgba(255,255,255,.075)!important;
  background:#08110c!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="strength-programs"] .strength-hub-nav a.active{
  border-color:rgba(183,255,0,.18)!important;
  background:rgba(183,255,0,.055)!important;
  color:#dcff88!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="strength-programs"] .program-hero{
  min-height:190px!important;
  margin-bottom:18px!important;
  border-color:rgba(183,255,0,.16)!important;
  border-radius:22px!important;
  box-shadow:var(--ai4-calm-shadow)!important;
}
body[data-ai4-calm-surface="strength-programs"] .program-hero::after{display:none!important}
body[data-ai4-calm-surface="strength-programs"] .program-hero__content{
  min-height:190px!important;
  padding:20px!important;
}
body[data-ai4-calm-surface="strength-programs"] .program-hero h1{
  font-size:34px!important;
  line-height:1!important;
  letter-spacing:-.05em!important;
}
body[data-ai4-calm-surface="strength-programs"] .program-hero__stats span{
  border-color:rgba(255,255,255,.10)!important;
  background:rgba(4,11,7,.70)!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="strength-programs"] :is(
  .card,.program-overview-card,.core-quick-entry,.schedule-card,.phase-panel,.program-info
){
  border-color:var(--ai4-calm-line)!important;
  background:linear-gradient(145deg,var(--ai4-calm-surface),var(--ai4-calm-surface-2))!important;
  box-shadow:var(--ai4-calm-shadow)!important;
}
body[data-ai4-calm-surface="strength-programs"] .core-quick-entry{
  margin-bottom:12px!important;
  padding:16px!important;
}
body[data-ai4-calm-surface="strength-programs"] .core-quick-entry::after{display:none!important}
body[data-ai4-calm-surface="strength-programs"] .core-quick-entry__action{
  border-color:rgba(183,255,0,.18)!important;
  border-radius:14px!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="strength-programs"] .program-choice-rail button{
  border-color:rgba(255,255,255,.08)!important;
  background:#0a130e!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="strength-programs"] .program-choice-rail button::after{display:none!important}
body[data-ai4-calm-surface="strength-programs"] .program-choice-rail button.is-active,
body[data-ai4-calm-surface="strength-programs"] .program-choice-rail button[aria-pressed="true"]{
  border-color:rgba(183,255,0,.24)!important;
  background:rgba(183,255,0,.055)!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="strength-programs"] :is(.choice-visual,.level-chip,.week-chip){
  box-shadow:none!important;
}
body[data-ai4-calm-surface="strength-programs"] .primary{
  border-radius:15px!important;
  box-shadow:0 10px 24px rgba(151,214,0,.11),inset 0 1px rgba(255,255,255,.38)!important;
}
body[data-ai4-calm-surface="strength-programs"] .pt{
  border-top-color:rgba(255,255,255,.075)!important;
}

body[data-ai4-calm-surface="subscription"]{
  --bg:var(--ai4-calm-bg);
  --ink:var(--ai4-calm-text);
  --muted:var(--ai4-calm-muted);
  --line:rgba(174,208,185,.13);
  --dark:#08110c;
  --panel:var(--ai4-calm-surface);
}
body[data-ai4-calm-surface="subscription"] .wrap{
  max-width:760px!important;
}
body[data-ai4-calm-surface="subscription"] h1{
  margin:22px 0 10px!important;
  color:var(--ai4-calm-text)!important;
  font-size:clamp(36px,9vw,48px)!important;
  line-height:1!important;
  letter-spacing:-.055em!important;
}
body[data-ai4-calm-surface="subscription"] .lead{
  margin-top:0!important;
  color:var(--ai4-calm-muted)!important;
  font-size:15px!important;
}
body[data-ai4-calm-surface="subscription"] :is(.panel,.card,.upgrade-spot,.note){
  border:1px solid var(--ai4-calm-line)!important;
  border-radius:18px!important;
  background:linear-gradient(145deg,var(--ai4-calm-surface),var(--ai4-calm-surface-2))!important;
  color:var(--ai4-calm-text)!important;
  box-shadow:var(--ai4-calm-shadow)!important;
}
body[data-ai4-calm-surface="subscription"] .upgrade-spot{
  margin:16px 0 12px!important;
  padding:18px!important;
  border-color:rgba(183,255,0,.18)!important;
}
body[data-ai4-calm-surface="subscription"] .upgrade-spot h2{
  margin:6px 0 8px!important;
  font-size:24px!important;
}
body[data-ai4-calm-surface="subscription"] .upgrade-spot p,
body[data-ai4-calm-surface="subscription"] .upgrade-spot .tagline{
  color:#aeb9b1!important;
}
body[data-ai4-calm-surface="subscription"] .cards{gap:9px!important}
body[data-ai4-calm-surface="subscription"] .card{padding:16px!important}
body[data-ai4-calm-surface="subscription"] .price{font-size:34px!important}
body[data-ai4-calm-surface="subscription"] .small{color:#8f9c93!important}
body[data-ai4-calm-surface="subscription"] :is(.ghost,.chip){
  border-color:rgba(255,255,255,.10)!important;
  background:#0a130e!important;
  color:#c7d1ca!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="subscription"] .chip.active{
  border-color:rgba(183,255,0,.22)!important;
  background:rgba(183,255,0,.06)!important;
  color:#d8ff83!important;
}
body[data-ai4-calm-surface="subscription"] .primary{
  border:1px solid rgba(218,255,132,.44)!important;
  border-radius:15px!important;
  background:linear-gradient(180deg,#caff46,#ace900)!important;
  color:#071008!important;
  box-shadow:0 10px 24px rgba(151,214,0,.11),inset 0 1px rgba(255,255,255,.38)!important;
}
body[data-ai4-calm-surface="subscription"] :is(.field input,.field select,.field textarea){
  border-color:rgba(255,255,255,.10)!important;
  background:#08100b!important;
  color:var(--ai4-calm-text)!important;
}
body[data-ai4-calm-surface="subscription"] .note{color:#aeb9b1!important}

@media(max-width:679px){
  body[data-ai4-calm-surface="strength-programs"] .program-hero{min-height:176px!important}
  body[data-ai4-calm-surface="strength-programs"] .program-hero__content{min-height:176px!important;padding:17px!important}
  body[data-ai4-calm-surface="strength-programs"] .program-hero h1{font-size:30px!important}
  body[data-ai4-calm-surface="strength-programs"] .core-quick-entry{min-height:auto!important}
  body[data-ai4-calm-surface="subscription"] .wrap{padding:16px 16px calc(20px + env(safe-area-inset-bottom))!important}
}


/* Calm Premium V1 — round 4: login, sport sessions, core and WOD. */

body[data-ai4-calm-surface="login"]{
  --bg:var(--ai4-calm-bg-deep);
  --panel:var(--ai4-calm-surface);
  --line:rgba(174,208,185,.13);
  --ink:var(--ai4-calm-text);
  --muted:var(--ai4-calm-muted);
}
body[data-ai4-calm-surface="login"] .wrap{width:min(100% - 30px,540px)!important}
body[data-ai4-calm-surface="login"] .panel{
  margin-top:18px!important;
  padding:20px!important;
  border:1px solid var(--ai4-calm-line)!important;
  border-radius:20px!important;
  background:linear-gradient(145deg,var(--ai4-calm-surface),var(--ai4-calm-surface-2))!important;
  box-shadow:var(--ai4-calm-shadow)!important;
}
body[data-ai4-calm-surface="login"] .tabs{
  padding:3px!important;
  border-color:rgba(255,255,255,.08)!important;
  background:#08100b!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="login"] .tab{border-radius:13px!important}
body[data-ai4-calm-surface="login"] .tab.active{
  border:1px solid rgba(183,255,0,.16)!important;
  background:rgba(183,255,0,.055)!important;
  color:#edf6ef!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="login"] .eyebrow{color:#aeb9b1!important}
body[data-ai4-calm-surface="login"] h1{
  margin:7px 0 9px!important;
  font-size:36px!important;
  line-height:1!important;
  letter-spacing:-.055em!important;
}
body[data-ai4-calm-surface="login"] .lead{margin-bottom:18px!important;color:#98a69c!important}
body[data-ai4-calm-surface="login"] .field input{
  border-color:rgba(255,255,255,.10)!important;
  border-radius:14px!important;
  background:#07100b!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="login"] :is(.primary,.secondary){
  border-radius:15px!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="login"] .primary{
  border:1px solid rgba(218,255,132,.44)!important;
  background:linear-gradient(180deg,#caff46,#ace900)!important;
  color:#071008!important;
}
body[data-ai4-calm-surface="login"] .secondary{
  border-color:rgba(255,255,255,.10)!important;
  background:#0a130e!important;
}
body[data-ai4-calm-surface="login"] .note{
  border-color:rgba(255,255,255,.08)!important;
  background:#09120d!important;
  color:#87948b!important;
}

body[data-ai4-calm-surface="sport-sessions"]{
  --surface:var(--ai4-calm-surface);
  --surface-2:var(--ai4-calm-surface-2);
  --stroke:var(--ai4-calm-line);
  --stroke-soft:rgba(255,255,255,.08);
}
body[data-ai4-calm-surface="sport-sessions"]::before{display:none!important}
body[data-ai4-calm-surface="sport-sessions"] main{max-width:760px!important}
body[data-ai4-calm-surface="sport-sessions"] .hero{
  padding:28px 0 18px!important;
}
body[data-ai4-calm-surface="sport-sessions"] .eyebrow{
  padding:0!important;
  border:0!important;
  background:none!important;
  color:#a9b6ad!important;
}
body[data-ai4-calm-surface="sport-sessions"] .eyebrow::before{box-shadow:none!important}
body[data-ai4-calm-surface="sport-sessions"] h1{
  margin:10px 0 10px!important;
  font-size:clamp(36px,9vw,46px)!important;
  line-height:1!important;
}
body[data-ai4-calm-surface="sport-sessions"] .sports{
  gap:6px!important;
  padding-bottom:14px!important;
}
body[data-ai4-calm-surface="sport-sessions"] .sports button{
  min-height:40px!important;
  padding:9px 13px!important;
  border-color:rgba(255,255,255,.08)!important;
  background:#0a130e!important;
  color:#aeb9b1!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="sport-sessions"] .sports button[aria-pressed="true"]{
  border-color:rgba(183,255,0,.23)!important;
  background:rgba(183,255,0,.06)!important;
  color:#d9ff85!important;
}
body[data-ai4-calm-surface="sport-sessions"] .section-title{
  font-size:24px!important;
  letter-spacing:-.04em!important;
}
body[data-ai4-calm-surface="sport-sessions"] .cards{gap:10px!important}
body[data-ai4-calm-surface="sport-sessions"] .session{
  padding:18px!important;
  border-color:var(--ai4-calm-line)!important;
  border-radius:20px!important;
  background:linear-gradient(145deg,var(--ai4-calm-surface),var(--ai4-calm-surface-2))!important;
  box-shadow:var(--ai4-calm-shadow)!important;
}
body[data-ai4-calm-surface="sport-sessions"] .session::before{display:none!important}
body[data-ai4-calm-surface="sport-sessions"] .session small{
  padding:0!important;
  border:0!important;
  background:none!important;
  color:#93a097!important;
}
body[data-ai4-calm-surface="sport-sessions"] .session small::before{box-shadow:none!important}
body[data-ai4-calm-surface="sport-sessions"] .session h3{font-size:21px!important;margin:10px 0 12px!important}
body[data-ai4-calm-surface="sport-sessions"] .session .plan-button{
  border-color:rgba(255,255,255,.09)!important;
  background:#0a130e!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="sport-sessions"] .sport-player{
  background:radial-gradient(44rem 28rem at 82% -8%,rgba(183,255,0,.045),transparent 65%),linear-gradient(180deg,#07100b,#040805)!important;
}
body[data-ai4-calm-surface="sport-sessions"] .sport-player-card{
  border-color:rgba(174,208,185,.13)!important;
  border-radius:22px!important;
  background:linear-gradient(145deg,#0d1711,#08100b)!important;
  box-shadow:var(--ai4-calm-shadow)!important;
}

body[data-ai4-calm-surface="strength-core"] .core-hero h1{
  font-size:clamp(36px,9.5vw,44px)!important;
  line-height:1!important;
}
body[data-ai4-calm-surface="strength-core"] .core-hero>p:not(.core-eyebrow){
  margin:12px 0 20px!important;
  color:#9eaaa2!important;
  font-size:14px!important;
  line-height:1.5!important;
}
body[data-ai4-calm-surface="strength-core"] .core-eyebrow{color:#aeb9b1!important}
body[data-ai4-calm-surface="strength-core"] .core-workouts{gap:9px!important}
body[data-ai4-calm-surface="strength-core"] .core-workout-card{
  padding:18px!important;
  border-color:var(--ai4-calm-line)!important;
  border-radius:18px!important;
  background:linear-gradient(145deg,var(--ai4-calm-surface),var(--ai4-calm-surface-2))!important;
  box-shadow:var(--ai4-calm-shadow)!important;
}
body[data-ai4-calm-surface="strength-core"] .core-workout-card::before{display:none!important}
body[data-ai4-calm-surface="strength-core"] .core-card-title h2{font-size:24px!important}
body[data-ai4-calm-surface="strength-core"] .core-mini-list{gap:5px!important;margin:12px 0 14px!important}
body[data-ai4-calm-surface="strength-core"] .core-mini-list span{
  border-color:rgba(255,255,255,.08)!important;
  background:#09120d!important;
  color:#99a69d!important;
}
body[data-ai4-calm-surface="strength-core"] :is(.core-start,.core-primary){
  border:1px solid rgba(218,255,132,.44)!important;
  border-radius:15px!important;
  background:linear-gradient(180deg,#caff46,#ace900)!important;
  color:#071008!important;
  box-shadow:0 10px 24px rgba(151,214,0,.10)!important;
}
body[data-ai4-calm-surface="strength-core"] :is(.core-secondary,.core-program-link){
  border-color:rgba(255,255,255,.09)!important;
  background:#0a130e!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="strength-core"] .core-exercise-card{
  border-color:var(--ai4-calm-line)!important;
  border-radius:20px!important;
  background:linear-gradient(145deg,#0d1711,#08100b)!important;
  box-shadow:var(--ai4-calm-shadow)!important;
}
body[data-ai4-calm-surface="strength-core"] .core-exercise-card h2{font-size:34px!important}
body[data-ai4-calm-surface="strength-core"] .core-dose{color:#d7ff82!important}
body[data-ai4-calm-surface="strength-core"] .core-rest{
  border-color:rgba(183,255,0,.16)!important;
  background:rgba(183,255,0,.045)!important;
}
body[data-ai4-calm-surface="strength-core"] :is(.sixpack-progress,.core-stat,.core-pause-card){
  border-color:var(--ai4-calm-line)!important;
  background:linear-gradient(145deg,#0d1711,#08100b)!important;
  box-shadow:var(--ai4-calm-shadow)!important;
}
body[data-ai4-calm-surface="strength-core"] .sixpack-progress::before{display:none!important}

body[data-ai4-calm-surface="wod"] .panel{
  border-color:var(--ai4-calm-line)!important;
  border-radius:18px!important;
  background:linear-gradient(145deg,var(--ai4-calm-surface),var(--ai4-calm-surface-2))!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="wod"] .control-meta{
  border-color:rgba(255,255,255,.08)!important;
  background:rgba(255,255,255,.025)!important;
  color:#96a39a!important;
}
body[data-ai4-calm-surface="wod"] .mode-card{
  border-color:rgba(255,255,255,.09)!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="wod"] .mode-card.active{
  border-color:rgba(183,255,0,.34)!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="wod"] .mode-card.active::after{box-shadow:none!important}
body[data-ai4-calm-surface="wod"] .chip{
  border-color:rgba(255,255,255,.09)!important;
  background:#09120d!important;
  color:#9da9a1!important;
}
body[data-ai4-calm-surface="wod"] .chip.active{
  border-color:rgba(183,255,0,.22)!important;
  background:rgba(183,255,0,.055)!important;
  color:#d8ff83!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="wod"] .wod-more-card{
  border-color:rgba(255,255,255,.09)!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="wod"] .wod{
  border-color:rgba(183,255,0,.16)!important;
  border-radius:20px!important;
  background:linear-gradient(145deg,var(--ai4-calm-surface),var(--ai4-calm-surface-2))!important;
  box-shadow:var(--ai4-calm-shadow)!important;
}
body[data-ai4-calm-surface="wod"] :is(.primary,.wod-focus-action,#wodFocusDoneClose){
  border-radius:15px!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="wod"] :is(.secondary,.timer-controls button,.wod-focus-side,.wod-focus-exit,.wod-focus-pause){
  border-color:rgba(255,255,255,.10)!important;
  background:#0a130e!important;
  color:var(--ai4-calm-text)!important;
  box-shadow:none!important;
}
body[data-ai4-calm-surface="wod"] .timer{
  border-color:rgba(255,255,255,.09)!important;
  background:#07100b!important;
}
body[data-ai4-calm-surface="wod"] .bottom{box-shadow:none!important}

@media(max-width:679px){
  body[data-ai4-calm-surface="sport-sessions"] .cards{grid-template-columns:1fr!important}
  body[data-ai4-calm-surface="sport-sessions"] .hero{padding-top:22px!important}
  body[data-ai4-calm-surface="strength-core"] .core-workout-card{padding:16px!important}
  body[data-ai4-calm-surface="login"] .panel{padding:18px!important}
}


/* V17.16 — sport session filters meet mobile touch target. */
@media(max-width:679px){
  body[data-ai4-calm-surface="sport-sessions"] .sports button{
    min-height:44px!important
  }
}


/* V17.17 — secondary app surfaces use the same five-tab shell. */
body[data-ai4-calm-surface] nav.bottom .bottom-inner{
  grid-template-columns:repeat(5,minmax(0,1fr))!important
}


/* Calm Premium V17.19 — strength exercise library. */
body[data-ai4-calm-surface="strength-library"]{background:#070c09!important}
body[data-ai4-calm-surface="strength-library"] .sel-shell{max-width:820px}
body[data-ai4-calm-surface="strength-library"] .sel-brandbar{margin-bottom:16px!important}
body[data-ai4-calm-surface="strength-library"] .sel-hub-nav{border-color:rgba(255,255,255,.08)!important;background:#0a110d!important;box-shadow:none!important}
body[data-ai4-calm-surface="strength-library"] .sel-hub-nav a.active{background:rgba(183,255,0,.065)!important;color:#d8ff82!important;box-shadow:inset 0 0 0 1px rgba(183,255,0,.11)!important}
body[data-ai4-calm-surface="strength-library"] .sel-filter-panel{border-color:rgba(255,255,255,.09)!important;border-radius:20px!important;background:rgba(10,17,13,.97)!important;box-shadow:0 14px 34px rgba(0,0,0,.18)!important}
body[data-ai4-calm-surface="strength-library"] :is(.sel-search input,.sel-filters select,.sel-results-head button){min-height:44px;border-color:rgba(255,255,255,.10)!important;background:#08100b!important;color:#e8eee9!important}
body[data-ai4-calm-surface="strength-library"] :is(.sel-card,.sel-section,.sel-visual){border-color:rgba(255,255,255,.085)!important;background:linear-gradient(145deg,#111a14,#080e0b)!important;box-shadow:0 14px 34px rgba(0,0,0,.16)!important}
body[data-ai4-calm-surface="strength-library"] .sel-card:hover{transform:none!important;border-color:rgba(183,255,0,.20)!important;background:linear-gradient(145deg,#121d15,#09100c)!important}
body[data-ai4-calm-surface="strength-library"] .sel-tags span{background:rgba(255,255,255,.025)!important;border-color:rgba(255,255,255,.07)!important}
body[data-ai4-calm-surface="strength-library"] .sel-section-title>span{background:rgba(183,255,0,.09)!important;border:1px solid rgba(183,255,0,.18)!important;color:#d8ff82!important}
body[data-ai4-calm-surface="strength-library"] .sel-primary{min-height:50px;border:1px solid rgba(218,255,132,.44)!important;background:linear-gradient(180deg,#caff46,#ace900)!important;box-shadow:0 10px 24px rgba(151,214,0,.11)!important}
@media(max-width:430px){
 body[data-ai4-calm-surface="strength-library"] .sel-shell{padding-left:12px!important;padding-right:12px!important}
 body[data-ai4-calm-surface="strength-library"] .sel-hub-nav a{min-height:44px}
 body[data-ai4-calm-surface="strength-library"] :is(.sel-search input,.sel-filters select,.sel-results-head button){min-height:48px}
}
@media(prefers-reduced-motion:reduce){body[data-ai4-calm-surface="strength-library"] .sel-card{transition:none!important;transform:none!important}}


/* V17.21 — Mobility controls meet mobile touch targets. */
@media(max-width:679px){
  body[data-ai4-calm-surface="mobility"] :is(
    .resume-discard,.resume-link,.shuffle,.clear-custom,.duration,.focus-chip,
    .custom-actions button,.goal-buttons button
  ){
    min-height:44px!important
  }
  body[data-ai4-calm-surface="mobility"] .goal-buttons button{
    width:44px!important;
    min-width:44px!important
  }
  body[data-ai4-calm-surface="mobility"] .resume-discard{
    min-width:44px!important
  }
}

/* V17.22 — Calm foundation for auth, check-in and connections. */
body[data-ai4-calm-surface="login"] :is(.tab,.primary,.secondary),
body[data-ai4-calm-surface="checkin"] :is(.save,.save-success-actions a,.save-success-actions button),
body[data-ai4-calm-surface="connections"] .source-actions :is(button,a){
  min-height:48px!important;
}

body[data-ai4-calm-surface="login"] :is(.primary,.secondary):disabled,
body[data-ai4-calm-surface="checkin"] .save:disabled,
body[data-ai4-calm-surface="connections"] .source-actions button:disabled{
  opacity:.48!important;
  cursor:not-allowed!important;
}

body[data-ai4-calm-surface="login"] .status:not(:empty),
body[data-ai4-calm-surface="checkin"] .status,
body[data-ai4-calm-surface="connections"] .notice.show{
  min-height:44px;
  display:flex;
  align-items:center;
  border-radius:16px!important;
  line-height:1.45!important;
}

body[data-ai4-calm-surface="login"] .status:not(:empty){
  padding:10px 12px;
  border:1px solid rgba(255,255,255,.09);
  background:#09120d;
  color:#b8c4bc;
}
body[data-ai4-calm-surface="login"] .status.bad{
  border-color:rgba(255,142,130,.23);
  background:rgba(47,18,15,.60);
  color:#ffc2bb;
}
body[data-ai4-calm-surface="login"] .status.ok{
  border-color:rgba(183,255,0,.18);
  background:rgba(183,255,0,.045);
  color:#d9ff87;
}

@media(max-width:679px){
  body[data-ai4-calm-surface="login"] :is(.tab,.primary,.secondary),
  body[data-ai4-calm-surface="checkin"] :is(.save,.save-success-actions a,.save-success-actions button),
  body[data-ai4-calm-surface="connections"] .source-actions :is(button,a){
    min-height:48px!important;
  }
}

/* V17.23 — nutrition loading, empty and error state alignment. */
body[data-ai4-calm-surface="nutrition"] .edit :is(input,select,button){
  min-height:48px!important;
}
body[data-ai4-calm-surface="nutrition"] .edit button:disabled{
  opacity:.48!important;
  cursor:not-allowed!important;
}
body[data-ai4-calm-surface="nutrition"] .empty{
  min-height:88px;
  display:grid;
  place-items:center;
  padding:18px 15px!important;
  border:1px dashed rgba(255,255,255,.11)!important;
  border-radius:16px!important;
  background:linear-gradient(145deg,#0d1711,#08100b)!important;
  color:#99a69d!important;
  line-height:1.45!important;
}
body[data-ai4-calm-surface="nutrition"] .error{
  min-height:44px;
  align-items:center;
  border-color:rgba(255,142,130,.23)!important;
  border-radius:16px!important;
  background:rgba(47,18,15,.60)!important;
  color:#ffc2bb!important;
  line-height:1.45!important;
}
body[data-ai4-calm-surface="nutrition"] .error:not(:empty){
  display:flex!important;
}
body[data-ai4-calm-surface="nutrition"] .app.loading :is(.nutri-hero,.fuel,.profile,#meals){
  opacity:.72;
}

