/* Home rhythm and photo composition: information, clear subject, action. */
.v6-home{--home-hero-gap:7px;--home-food-hero-min:160px;--home-food-hero-max:176px;--home-training-hero-min:210px;--home-training-cta-width:65%;--home-training-cta-height:52px;--home-training-info-top:18px;--home-training-cta-bottom:14px;--home-training-motif-gap:28px;--home-warm-accent:#b77a13}
html[data-theme=dark] .v6-home{--home-warm-accent:#ffc857}
.v6-home.v62-home .training-section-r12.v62-training-photo:not(.v673-rest-card){padding:var(--home-training-info-top) var(--swack-text-gutter) var(--home-training-cta-bottom)!important;justify-content:flex-start;background-image:linear-gradient(180deg,rgba(12,10,18,.66) 0%,rgba(12,10,18,.5) 27%,rgba(12,10,18,.08) 51%,rgba(12,10,18,.13) 70%,rgba(12,10,18,.6) 100%),var(--v62-stage-image)!important;background-position:center,var(--home-training-focal,50% 50%)!important}
.v6-home.v62-home .training-section-r12:not(.v673-rest-card)::before{position:relative;z-index:2;flex:none;background:linear-gradient(90deg,var(--home-warm-accent),color-mix(in srgb,var(--home-warm-accent) 18%,transparent));margin:0 0 6px!important}
.v6-home .home-training-info{display:flex;flex-direction:column;position:relative;isolation:isolate;margin-bottom:var(--home-training-motif-gap);flex:none}
.v6-home .home-training-info::after{content:'';position:absolute;z-index:-1;inset:calc(-1 * var(--home-training-info-top) - 9px) calc(-1 * var(--swack-text-gutter)) -20px;pointer-events:none;background:linear-gradient(180deg,rgba(12,10,18,.34),rgba(12,10,18,.62) calc(100% - 20px),transparent)}
.v6-home .swack-momentum-value,.v6-home .swack-momentum-previous{color:var(--home-warm-accent)}
.v6-home.v62-home .training-section-r12:not(.v673-rest-card) .v6-card-kicker{color:#f1edf8;flex:none}
.v6-home.v62-home .training-section-r12:not(.v673-rest-card) .v6-primary-row{min-width:0;width:100%}
.v6-home.v62-home .training-section-r12:not(.v673-rest-card) .v6-primary-row h2{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;max-width:100%;max-height:2.12em;font-size:clamp(26px,7.2vw,30px)!important;line-height:1.06!important;overflow-wrap:anywhere;margin:4px 0 6px!important}
.v6-home.v62-home .training-section-r12[data-home-title-length="medium"] .v6-primary-row h2{font-size:clamp(25px,6.7vw,28px)!important}
.v6-home.v62-home .training-section-r12[data-home-title-length="long"] .v6-primary-row h2{font-size:24px!important}
.v6-home.v62-home .training-section-r12:not(.v673-rest-card) .v6-metrics{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));margin:0!important;gap:8px!important;flex:none}
.v6-home.v62-home .training-section-r12:not(.v673-rest-card) .v6-metrics strong{line-height:18px!important}.v6-home.v62-home .training-section-r12:not(.v673-rest-card) .v6-metrics small{line-height:14px!important}
/* Standing portraits need the head below the information block. The upper
   scrim blends the photograph into the same dark scene, without new assets. */
.v6-home.v62-home .training-section-r12.v62-training-photo[data-home-photo-composition=standing]:not(.v673-rest-card){--home-training-photo-offset:92px;background-color:#100f18!important;background-image:linear-gradient(180deg,#100f18 0px,#100f18 var(--home-training-photo-offset),rgba(16,15,24,.6) calc(var(--home-training-photo-offset) + 22px),rgba(16,15,24,.05) calc(var(--home-training-photo-offset) + 50px),rgba(16,15,24,.48) 100%),var(--v62-stage-image)!important;background-position:center,50% var(--home-training-photo-offset)!important;background-repeat:no-repeat!important}
.v6-home.v62-home .training-section-r12.v62-training-photo[data-home-title-lines="2"]:not(.v673-rest-card){--home-training-motif-gap:72px}
.v6-home.v62-home .training-section-r12.v62-training-photo[data-home-photo-composition=standing][data-home-title-lines="2"]:not(.v673-rest-card){--home-training-photo-offset:120px}
.v6-home.v62-home .training-section-r12.v62-training-photo[data-home-photo-composition=floor]:not(.v673-rest-card){background-color:#100f18!important;background-size:cover,100% auto!important;background-position:center,50% 14px!important;background-repeat:no-repeat!important}
.v6-home.v62-home .training-section-r12.v62-training-photo[data-home-photo-composition=floor][data-home-title-lines="2"]:not(.v673-rest-card){background-position:center,50% 44px!important}
.v6-home.v62-home .training-section-r12.v62-training-photo[data-home-photo-composition=bench][data-home-title-lines="2"]:not(.v673-rest-card){background-color:#100f18!important;background-position:center,50% 24px!important;background-repeat:no-repeat!important}
.v6-home.v62-home .training-section-r12 .v6-primary-action{width:calc(var(--home-training-cta-width) + 1.3 * var(--swack-text-gutter))!important;min-height:var(--home-training-cta-height)!important;align-self:center;align-items:center;flex-shrink:0;margin:auto auto 0!important;padding:14px!important;border:1px solid rgba(225,204,255,.3)!important;border-radius:var(--sw-r-md)!important;background:var(--home-liquid-purple)!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:inset 0 1px 0 rgba(240,224,255,.36),0 4px 16px rgba(82,39,186,.2)!important;color:#fff!important;font-size:15px!important;font-weight:750!important;line-height:20px!important;box-sizing:border-box;transition:transform 160ms ease,box-shadow 160ms ease}
.v6-home.v62-home .training-section-r12 .v6-primary-action:active:not(:disabled){transform:scale(.98);box-shadow:inset 0 1px 0 rgba(247,237,255,.52),0 2px 10px rgba(82,39,186,.16)!important}
.v6-home.v62-home .training-section-r12 .v6-completed-actions{width:100%;margin-top:auto;display:flex;justify-content:center}
.v6-home.v62-home .training-section-r12 .v6-completed-actions .v6-primary-action{margin-top:0!important}
@media(prefers-reduced-motion:reduce){.v6-home.v62-home .training-section-r12 .v6-primary-action{transition:none}.v6-home.v62-home .training-section-r12 .v6-primary-action:active{transform:none}}
.v6-home.v62-home .training-section-r12 .v6-primary-action:focus-visible{outline:2px solid #dcc6ff;outline-offset:3px}
/* Shared header rule: remove browser button padding, center the 26 px glyph,
   then compensate its slightly lower silhouette without touching the badge. */
body .topbar #social-bell{display:grid;place-items:center;padding:0;line-height:1}
body .topbar #social-bell[hidden]{display:none!important}
body .topbar #social-bell>svg{margin:0;transform:translateY(-.5px)}
/* 6.25.7: user-selected Home greeting only. The rest of SWACK keeps its font.
   Optional prevents a late download from reflowing an already visible greeting.
   A same-origin preload supplies the font early; failure remains readable. */
@font-face{font-family:'SWACK Home DM Sans';src:url('fonts/dm-sans-variable.ttf') format('truetype');font-style:normal;font-weight:100 1000;font-display:optional}
#app .v6-home .v6-greeting h1{font-family:'SWACK Home DM Sans',Geist,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important;font-size:32px!important;font-weight:750!important;line-height:1.16!important;font-optical-sizing:auto;overflow-wrap:anywhere}

/* Coach is one field surface. Input semantics and send focus remain separate. */
.v6-home,.coach-compose-r6{--home-liquid-purple:linear-gradient(120deg,rgba(83,40,195,.94),rgba(104,63,210,.92))}
.v6-home .v613-coach-line .v6-coach-compose{border:1px solid var(--bp-line)!important;box-shadow:none!important;outline:none!important;transform:none!important;transition:border-color 160ms ease!important}
.v6-home .v613-coach-line .v6-coach-compose:focus-within{border-color:var(--bp-purple)!important;box-shadow:none!important;outline:none!important;transform:none!important}
.v6-home .v613-coach-line .v6-coach-compose textarea,.v6-home .v613-coach-line .v6-coach-compose textarea:focus,.v6-home .v613-coach-line .v6-coach-compose textarea:focus-visible{border:0!important;border-radius:0!important;outline:none!important;box-shadow:none!important;background:transparent!important;transition:none!important}
.v6-home .v6-coach-compose textarea::placeholder{color:var(--bp-muted)!important;opacity:1!important}
.v6-home .v613-coach-line-icon.swack-coach-face{position:relative;overflow:visible!important;outline:none!important;box-shadow:none!important;transform:none!important;border-radius:16px!important}
.v6-home .swack-coach-face .swack-guide.is-avatar{border-radius:16px;overflow:hidden}
.v6-home .swack-coach-face::after{content:'';position:absolute;inset:-3px;border:1.5px solid transparent;border-radius:19px;pointer-events:none;box-sizing:border-box}
.v6-home .v613-coach-line:has(textarea:focus) .swack-coach-face,.v6-home .swack-coach-face:focus-visible{box-shadow:none!important;outline:none!important}
.v6-home .v613-coach-line:has(textarea:focus) .swack-coach-face::after,.v6-home .swack-coach-face:focus-visible::after{border-color:var(--bp-purple)}
.v6-home .v6-coach-compose button,.coach-compose-r6 button{background:var(--home-liquid-purple)!important;border:1.25px solid color-mix(in srgb,#fff 38%,transparent)!important;box-shadow:0 2px 6px color-mix(in srgb,var(--bp-purple) 10%,transparent)!important}
.v6-home .v6-coach-compose button:focus-visible,.coach-compose-r6 button:focus-visible{outline:2px solid var(--bp-purple)!important;outline-offset:2px!important}
.v6-home .v6-coach-compose button:disabled{cursor:not-allowed;opacity:.5}

/* Same Liquid action as training; rest availability/handler remains untouched. */
.v6-home.v62-home .training-section-r12.v673-rest-card{padding:var(--home-training-info-top) var(--swack-text-gutter) var(--home-training-cta-bottom)!important;justify-content:flex-start!important;align-items:stretch!important;text-align:left!important;background-color:#100f18!important;background-image:linear-gradient(180deg,rgba(12,10,18,.64),rgba(12,10,18,.12) 48%,rgba(12,10,18,.58)),var(--v673-rest-image)!important;background-position:center,center!important}
.v6-home.v62-home .training-section-r12.v673-rest-card::before{content:'';display:block;position:relative;z-index:2;flex:none;width:38px;height:3px;border-radius:99px;background:linear-gradient(90deg,var(--home-warm-accent),color-mix(in srgb,var(--home-warm-accent) 18%,transparent));margin:0 0 6px!important}
.v6-home .home-rest-info{position:relative;z-index:1;isolation:isolate;flex:none;align-self:flex-start;width:fit-content;max-width:100%;margin-bottom:clamp(72px,20vw,100px)}
.v6-home .home-rest-info::after{content:'';position:absolute;z-index:-1;inset:-6px -24px -10px calc(-1 * var(--swack-text-gutter));pointer-events:none;background:linear-gradient(90deg,rgba(12,10,18,.7) 0%,rgba(12,10,18,.7) calc(100% - 24px),transparent)}
.v6-home.v62-home .v673-rest-card .v6-card-kicker{margin:0 0 5px!important;color:#f1edf8!important;font-size:.6875rem!important;line-height:1.4!important}
.v6-home.v62-home .v673-rest-card .v6-primary-row{justify-content:flex-start!important}
.v6-home.v62-home .v673-rest-card h2{width:fit-content;max-width:100%;font-size:clamp(1.875rem,8vw,2.125rem)!important;line-height:1.1!important;text-align:left!important;overflow-wrap:anywhere}
.v6-home.v62-home .v673-rest-card[data-rest-stacked=true]{background-image:linear-gradient(180deg,#100f18 0px,#100f18 var(--home-rest-photo-top),rgba(16,15,24,.28) calc(var(--home-rest-photo-top) + 16px),rgba(16,15,24,.05) calc(var(--home-rest-photo-top) + 52px),rgba(16,15,24,.6) 100%),var(--v673-rest-image)!important;background-position:center,50% var(--home-rest-photo-top)!important;background-size:cover,100% auto!important;background-repeat:no-repeat!important}
.v6-home .v673-rest-card[data-rest-stacked=true] .home-rest-info{margin-bottom:clamp(120px,34vw,210px)}
.v6-home.v62-home .v673-rest-card .v6-primary-action{white-space:normal;line-height:1.3!important;height:auto;min-height:var(--home-training-cta-height)!important}
.v6-home.v62-home .v673-rest-card .v6-primary-action:disabled{background:linear-gradient(120deg,#493573,#54447f)!important;color:#fff!important;opacity:1;cursor:not-allowed;box-shadow:none!important}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.v6-home.v62-home .v673-rest-card .v6-primary-action{background:linear-gradient(120deg,#5328c3,#683fd2)!important}}
@media(prefers-reduced-motion:reduce){.v6-home .v613-coach-line .v6-coach-compose,.v6-home .v6-coach-compose button,.v6-home .swack-coach-face,.v6-home .swack-coach-face::after{animation:none!important;transition:none!important;transform:none!important}}
.swack-motion-off .v6-home .v6-coach-compose,.swack-motion-off .v6-home .v6-coach-compose button{transition:none!important;transform:none!important}

/* A completed workout is a result. Its whole card opens the saved session;
   the small lower-right affordance is visual only, with no nested focus stop. */
.v6-home.v62-home .training-section-r12.home-completed-card{--home-training-info-top:14px;--home-training-motif-gap:0px;min-height:286px!important;cursor:pointer;outline:none;touch-action:manipulation}
.v6-home.v62-home .training-section-r12.home-completed-card .home-training-info{margin-bottom:110px;min-width:0}
.v6-home.v62-home .training-section-r12.home-completed-card .v6-card-kicker{padding-right:38px;font-size:.625rem!important;line-height:1.4!important;letter-spacing:.065em!important;white-space:normal}
.v6-home.v62-home .training-section-r12.home-completed-card .v6-primary-row{padding-right:38px;box-sizing:border-box}
.v6-home.v62-home .training-section-r12.home-completed-card[data-completed-large-text=true] .v6-primary-row{padding-right:0}
.v6-home.v62-home .training-section-r12.home-completed-card .v6-primary-row h2{font-size:clamp(1.5rem,6.6vw,1.875rem)!important;max-height:none;-webkit-line-clamp:unset;overflow:visible;margin:5px 0 8px!important}
.v6-home.v62-home .training-section-r12.home-completed-card .v6-done-badge{position:absolute;top:0;right:0;display:grid!important;place-items:center;width:28px;height:28px;min-width:28px;flex:none;margin:0!important;border:1px solid rgba(225,204,255,.6)!important;border-radius:50%!important;background:#5936a4!important;color:#fff!important;font:800 16px/1 Geist,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important;box-shadow:none!important}
.v6-home.v62-home .training-section-r12.home-completed-card .v6-metrics{grid-template-columns:repeat(auto-fit,minmax(min(100%,4.25rem),1fr))!important}
.v6-home.v62-home .training-section-r12.home-completed-card .v6-metrics strong{font-size:.875rem!important;line-height:1.25!important;overflow-wrap:normal}
.v6-home.v62-home .training-section-r12.home-completed-card .v6-metrics small{font-size:.5625rem!important;line-height:1.35!important;overflow-wrap:anywhere}
.v6-home.v62-home .training-section-r12.home-completed-card .home-completed-affordance{display:block;position:relative;z-index:2;align-self:flex-end;width:fit-content;max-width:100%;box-sizing:border-box;margin:auto 0 0!important;padding:8px 0 0 12px;font-size:.8125rem;font-weight:650;line-height:1.4;color:#fff;text-align:right;white-space:normal;background:none;border:0;box-shadow:none}
.v6-home.v62-home .training-section-r12.home-completed-card .home-completed-affordance::before{content:'';position:absolute;z-index:-1;inset:-8px calc(-1 * var(--swack-text-gutter)) calc(-1 * var(--home-training-cta-bottom)) -24px;background:linear-gradient(90deg,transparent,rgba(12,10,18,.78) 24px);pointer-events:none}
.v6-home.v62-home .training-section-r12.home-completed-card:focus-visible{outline:3px solid #dcc6ff;outline-offset:-4px}
.v6-home.v62-home .training-section-r12.home-completed-card:active .home-completed-affordance{text-decoration:underline;text-underline-offset:3px}
@media(min-width:600px){.v6-home.v62-home .training-section-r12.home-completed-card{min-height:310px!important}}
/* A temporary health-related pause remains a rest day. Its optional override
   has a secondary treatment; the existing handler owns confirmation/resume. */
.v6-home.v62-home .training-section-r12.v62511-health-rest .v673-rest-start{width:auto!important;max-width:100%;min-height:44px!important;align-self:flex-end;padding:10px 14px!important;background:rgba(16,15,24,.8)!important;border:1px solid rgba(241,237,248,.65)!important;box-shadow:none!important;font-size:14px!important}
@media(prefers-reduced-motion:reduce){.v6-home.v62-home .training-section-r12.home-completed-card{animation:none!important;transition:none!important;transform:none!important}}



