/* Organized by product feature for straightforward maintenance. */
/* Compact mobile-first layout for Train and Track. */

/* Compact interface and Cyborg Socials layout. */
  header{padding:4px 8px 4px;min-height:0}
  .header-top{position:relative;display:flex;justify-content:center;align-items:center;min-height:32px}
  .header-brandline{display:flex;justify-content:center;align-items:center;gap:8px;text-align:center}
  .header-brandline .brand-lockup-mark{width:34px;height:34px;border-radius:11px}
  .header-brandline .brand-lockup-copy{text-align:center}
  .header-brandline .brand-lockup-title{font-size:18px;line-height:1;margin:0}
  .header-brandline .brand-lockup-tag{font-size:8px;letter-spacing:1.5px;margin-top:3px}
  .header-brandline .sub,.header-brandline .runtime-status{display:none}
  .header-account{position:absolute;right:0;top:50%;transform:translateY(-50%)}
  #headerAccountName,#headerSetupBtn{display:none!important}
  #openSettingsBtn{width:30px;height:30px;padding:0;border-radius:50%;font-size:0;display:grid;place-items:center}
  #openSettingsBtn::before{content:"⚙";font-size:18px}
  .tabbar{margin-top:3px;gap:6px}
  .tab-btn{padding:6px 9px;border-radius:10px;font-size:12px}
  main{padding-top:8px}
  .card{padding:12px;border-radius:16px;margin-bottom:10px}
  .section-kicker{font-size:9px;letter-spacing:1.3px}
  .global-command{padding:9px 10px;margin-bottom:9px}
  .compact-command-row{display:grid;grid-template-columns:36px minmax(0,1fr) 36px 36px 36px;gap:6px;align-items:center}
  .compact-icon-btn{width:36px;height:36px;padding:0;border-radius:11px;font-size:18px;display:grid;place-items:center}
  .compact-now{text-align:center;min-width:0;line-height:1.15}
  .compact-now strong{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .compact-now span{font-size:10px;color:var(--muted)}
  .compact-week-label{display:block;color:var(--accent);font-size:10px;font-weight:800;margin-top:2px}
  .compact-command .week-strip{margin-top:7px;gap:4px}
  .compact-command .coach-day,#foodDayStrip .coach-day{padding:6px 2px;min-width:0;border-radius:10px}
  .compact-command .coach-day-name,#foodDayStrip .coach-day-name{font-size:9px}
  .compact-command .coach-day-date,#foodDayStrip .coach-day-date{font-size:9px}
  .compact-command .coach-day-signals{font-size:8px;gap:2px;margin-top:2px}
  .utility-state{display:none!important}
  .top-grid{display:block}
  .macro-grid{gap:7px}
  .macro-card{padding:10px;border-radius:13px}
  .macro-title{font-size:12px}.macro-value{font-size:11px}.macro-mini{font-size:9px}
  .remaining-box{margin-top:8px;padding:9px 10px;font-size:11px}
  .food-week-card{padding:9px 10px}
  .food-week-head{display:grid;grid-template-columns:36px minmax(0,1fr) 36px;gap:7px;align-items:center}
  .food-week-copy{text-align:center;min-width:0}
  .food-week-copy strong{display:block;font-size:12px}
  .food-week-copy span{display:block;font-size:10px;color:var(--muted);margin-top:2px}
  .food-day-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-top:7px}
  .food-day-button{height:48px;padding:5px 1px;border-radius:10px;background:var(--panel2);border:1px solid var(--border);color:var(--text);font-size:9px;line-height:1;display:grid;grid-template-rows:11px 12px 5px;place-items:center;align-content:center;gap:2px}
  .food-day-button strong{display:block;font-size:10px}
  .food-day-button i{display:block;width:4px;height:4px;border:1px solid currentColor;border-radius:50%;opacity:.35;box-sizing:border-box}
  .food-day-button.has-log i{background:currentColor;opacity:1;box-shadow:0 0 6px currentColor}
  .food-day-button.active{background:linear-gradient(135deg,#20c8ff,#168cff);color:#071018;border-color:transparent}
  .food-day-button.today:not(.active){border-color:var(--accent2);box-shadow:inset 0 0 0 1px rgba(22,140,255,.25)}
  .food-day-button:disabled{cursor:not-allowed;opacity:.32}
  .custom-goals-card,.settings-card{display:none!important}
  .food-search-wrap{position:relative;margin-top:8px}
  .food-search-wrap input{font-size:15px;padding:12px 13px}
  .food-suggestions{position:absolute;left:0;right:0;top:calc(100% + 5px);z-index:30;background:#111821;border:1px solid var(--border);border-radius:13px;box-shadow:0 18px 45px rgba(0,0,0,.48);max-height:280px;overflow:auto;padding:5px}
  .food-suggestions.hidden{display:none}
  .food-suggestion{display:flex;width:100%;justify-content:space-between;gap:10px;text-align:left;padding:10px;border-radius:10px;background:transparent;border:0;color:var(--text)}
  .food-suggestion:hover,.food-suggestion:focus{background:var(--panel3)}
  .food-suggestion-name{font-weight:800;font-size:12px}
  .food-suggestion-macros{font-size:9px;color:var(--muted);white-space:nowrap}
  .food-form-primary{display:grid;grid-template-columns:minmax(105px,.38fr) minmax(0,1fr);gap:8px;align-items:end}
  .food-details{margin-top:8px;border:1px solid var(--border);border-radius:12px;background:rgba(12,17,24,.36)}
  .food-details summary{padding:9px 11px;font-size:11px;font-weight:800;cursor:pointer;color:var(--muted)}
  .food-details-body{padding:0 9px 9px}
  .food-form-actions{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:7px;margin-top:9px}
  .food-form-actions button{padding:10px 9px}
  .quick-food-manager{margin-top:8px}
  .quick-food-manager summary{font-size:10px;color:var(--muted);cursor:pointer;padding:5px 0}
  .quick-food-manager .quick-buttons{margin-top:6px}
  .two-col{gap:9px}
  .food-log-item{padding:10px}
  .training-context-compact{padding:9px 11px}
  .training-context-line{display:flex;align-items:center;justify-content:space-between;gap:8px}
  .training-context-line .phase{font-size:13px;margin:0}
  .training-context-compact details{margin-top:5px}
  .training-context-compact summary{font-size:10px;color:var(--muted);cursor:pointer}
  .training-context-compact .phase-detail{font-size:11px;margin-top:7px}
  .session-timing-compact{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:6px;align-items:end;margin:8px 0}
  .session-timing-compact label{font-size:9px}
  .session-timing-compact input{padding:8px 9px;font-size:12px}
  .session-timing-compact button{padding:8px 9px;font-size:10px}
  .history-actions{margin:7px 0;gap:6px}
  .history-actions button{padding:8px 9px;font-size:10px}
  #workoutCard{padding-top:10px}
  #workoutCard .day-title h2{font-size:18px}
  .train-tools-card{display:none!important}
  .footerbar{display:none!important}
  .settings-section{padding:11px;margin-top:8px}
  .settings-panel{padding:12px}
  .settings-panel-head{margin-bottom:8px}
  .about-version{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:var(--muted)}
  @media(max-width:520px){
    .header-brandline .brand-lockup-mark{display:none}
    .header-brandline .brand-lockup-title{font-size:17px}
    .compact-command-row{grid-template-columns:34px minmax(0,1fr) 34px 34px 34px;gap:4px}
    .compact-icon-btn{width:34px;height:34px}
    .food-form-primary{grid-template-columns:1fr}
    .food-form-actions{grid-template-columns:1fr 1fr 1fr}
    .food-form-actions button{font-size:10px;padding:9px 5px}
  }


  /* Cyborg Socials */
  .social-shell{display:grid;gap:8px;max-width:760px;margin:0 auto}
  .social-topline{display:flex;justify-content:space-between;align-items:center;gap:12px}
  .social-title{margin:0;font-size:22px}
  .social-feed-state{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border:1px solid var(--border);background:rgba(21,26,34,.55);color:var(--muted);font-size:11px}
  .social-feed-state .success{color:#7be6ae}.social-feed-state .warning{color:#ffc46b}.social-feed-state button{padding:7px 10px;font-size:10px}
  .social-mode-pill{font-size:10px;color:var(--accent3);border:1px solid rgba(255,122,26,.22);background:rgba(255,122,26,.07);padding:5px 8px;border-radius:999px;white-space:nowrap}
  .social-composer{background:var(--panel);border:1px solid var(--border);border-radius:16px;overflow:hidden}
  .social-composer>summary{padding:13px 14px;cursor:pointer;font-weight:900;list-style:none;display:flex;align-items:center;justify-content:space-between}
  .social-composer>summary::-webkit-details-marker{display:none}.social-composer>summary::after{content:"＋";color:var(--accent)}.social-composer[open]>summary::after{content:"−"}
  .social-composer-body{padding:0 14px 14px;display:grid;gap:10px}.social-photo-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
  .social-photo-preview{width:100%;max-height:330px;object-fit:cover;border-radius:14px;border:1px solid var(--border);background:#0c1118;display:none}.social-photo-preview.visible{display:block}
  .social-meal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.social-meal-grid .wide{grid-column:1/-1}.social-feed{display:grid;gap:12px}
  .social-post{background:var(--panel);border:1px solid var(--border);border-radius:18px;overflow:hidden;box-shadow:var(--shadow)}
  .social-post-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 13px}.social-author{display:flex;align-items:center;gap:9px;min-width:0}
  .social-avatar{width:38px;height:38px;border-radius:13px;background:linear-gradient(135deg,#243043,#111822);border:1px solid rgba(32,200,255,.25);display:grid;place-items:center;font-weight:950;color:var(--accent)}
  .social-author-name{font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.social-time{font-size:10px;color:var(--muted);margin-top:2px}.social-delete{padding:6px 9px;font-size:11px}
  .social-post-image{width:100%;max-height:520px;object-fit:cover;background:#0a0e14;display:block}.social-post-body{padding:12px 13px}.social-caption{font-size:13px;line-height:1.5;white-space:pre-wrap;margin-bottom:9px}
  .social-meal-card{border:1px solid rgba(32,200,255,.18);background:rgba(32,200,255,.055);border-radius:13px;padding:10px;margin-top:9px}.social-meal-name{font-weight:900;margin-bottom:5px}
  .social-attachment-note{margin-top:6px}
  .social-meal-macros{display:flex;flex-wrap:wrap;gap:6px;font-size:11px;color:#dbe6f4}.social-macro-chip{padding:4px 7px;border-radius:999px;background:rgba(10,14,20,.6);border:1px solid rgba(255,255,255,.06)}
  .social-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.social-actions button{padding:8px 10px;font-size:11px}.social-actions .cf-share-post{flex:0 0 40px;width:40px;min-width:40px;padding:7px;display:grid;place-items:center;font-size:20px;line-height:1}.social-actions .cf-share-post.sharing{opacity:.65}.nut-btn.active{background:linear-gradient(135deg,#ff7a1a,#20c8ff);color:#111820;border-color:transparent;font-weight:900}
  .social-comments{border-top:1px solid rgba(255,255,255,.06);padding:10px 13px;background:rgba(10,14,20,.28)}.social-comment{font-size:11px;line-height:1.45;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.045)}.social-comment:last-child{border-bottom:0}.social-comment strong{color:var(--accent)}
  .social-comment-form{display:flex;gap:7px;margin-top:8px}.social-comment-form input{min-width:0;flex:1}.social-comment-form button{padding:8px 10px}.social-empty{text-align:center;padding:24px 14px;color:var(--muted);border:1px dashed var(--border);border-radius:16px;background:rgba(21,26,34,.5)}
  @media(max-width:560px){.social-meal-grid{grid-template-columns:1fr 1fr}.social-mode-pill{display:none}.social-actions button{flex:1}.social-actions .cf-share-post{flex:0 0 42px;width:42px;min-width:42px}}


/* Social composer and feed cleanup. */
#socialMealAttachment:not([open]),#socialProgressAttachment:not([open]),#socialWorkoutAttachment:not([open]){display:none}
#socialMealAttachment>summary,#socialProgressAttachment>summary,#socialWorkoutAttachment>summary{display:none}
.v131-attachment-bar [data-open-attachment].active{background:linear-gradient(135deg,#20c8ff,#ff7a1a);color:#071018;border-color:transparent;font-weight:900}
.social-actions .cf-share-post{flex:0 0 auto;width:auto;min-width:82px;padding:8px 11px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:11px;line-height:1}
.social-comments{padding:0}
.social-comments>summary{list-style:none;display:flex;align-items:center;gap:8px;padding:11px 13px;cursor:pointer;color:var(--text);font-size:12px;font-weight:850}
.social-comments>summary::-webkit-details-marker{display:none}
.social-comments>summary strong{display:grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:rgba(32,200,255,.12);color:#8beaff;font-size:10px}
.social-comments>summary b{margin-left:auto;color:var(--muted);transition:transform .18s ease}
.social-comments[open]>summary b{transform:rotate(180deg)}
.social-comments-body{padding:0 13px 11px;border-top:1px solid rgba(255,255,255,.05)}
@media(max-width:560px){.social-actions .cf-share-post{flex:0 0 auto;width:auto;min-width:82px}}

.cf-share-builder-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.cf-share-builder-grid label{font-size:10px;color:var(--muted);font-weight:800}.cf-share-builder-grid select{margin-top:5px}
.cf-share-preview,.cf-social-workout-card,.cf-social-progress-card{margin-top:10px;padding:12px;border:1px solid rgba(32,200,255,.2);border-radius:13px;background:linear-gradient(145deg,rgba(18,29,40,.96),rgba(7,11,16,.96));overflow:hidden}
.cf-share-card-head span,.cf-share-card-head strong{display:block}.cf-share-card-head span{color:#54d8ff;font-size:9px;font-weight:900;letter-spacing:.14em}.cf-share-card-head strong{margin-top:4px;font-size:14px}
.cf-share-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:10px 0}
.cf-share-stats span{padding:8px 5px;text-align:center;border:1px solid rgba(255,255,255,.07);border-radius:8px;background:rgba(255,255,255,.025);color:var(--muted);font-size:8px}.cf-share-stats b{display:block;color:var(--text);font-size:13px}
.cf-share-topset{padding:8px 9px;border-left:2px solid var(--cf-orange);background:rgba(255,122,26,.06);color:#dce7ee;font-size:10px}
.cf-share-exercises{display:grid;gap:5px;margin-top:8px}.cf-share-exercises>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.05)}.cf-share-exercises strong{font-size:10px}.cf-share-exercises span{color:var(--muted);font-size:9px;text-align:right}
.cf-progress-headline{display:flex;align-items:baseline;gap:8px;margin-top:10px}.cf-progress-headline b{font-size:26px;color:#ff9a3d}.cf-progress-headline span{font-size:9px;color:var(--muted)}
.cf-share-mini-chart{width:100%;height:92px;margin:5px 0;color:#20c8ff;overflow:visible}
@media(max-width:560px){.cf-share-builder-grid{grid-template-columns:1fr 1fr}.cf-share-builder-grid label:last-child{grid-column:1/-1}.cf-share-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Always-ready Socials composer and compact member profile. */
#socialComposer .social-composer-body{padding:0;gap:7px}
.cf-social-compose-box{overflow:hidden;background:rgba(6,11,17,.76)}
#socialComposer textarea{display:block;width:100%;min-height:70px;padding:12px 12px 7px;resize:vertical;border:0!important;border-radius:0;background:transparent;box-shadow:none!important}
#socialComposer .v131-attachment-bar{grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;margin:0;padding:4px 6px 6px;border-top:1px solid rgba(255,255,255,.055)}
#socialComposer .v131-attachment-bar button{min-width:0;min-height:34px;padding:7px 3px;border:0;background:transparent;font-size:10px;color:#b9c6d2;box-shadow:none}
#socialComposer .v131-attachment-bar button.active{background:rgba(32,200,255,.12);color:#95ecff}
#socialComposer .social-photo-row,#socialComposer .social-photo-preview,#socialComposer .v131-social-attachment{width:calc(100% - 16px);margin-left:8px;margin-right:8px}
#socialComposer #socialPostBtn{width:calc(100% - 16px);margin:0 8px 8px;padding:9px}
.cf-social-draft-status{margin:-3px 8px 7px;text-align:center;color:var(--muted)}
.cf-social-profile-card{display:grid;gap:12px}
.cf-social-profile-main{display:grid;grid-template-columns:72px minmax(0,1fr);gap:13px;align-items:start}
.cf-social-profile-photo{width:72px;height:72px;border-radius:20px;overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,#20c8ff,#ff7a1a);color:#071018;font-size:28px;font-weight:950;border:1px solid rgba(255,255,255,.18);box-shadow:0 0 22px rgba(32,200,255,.13)}
.cf-social-profile-photo img{width:100%;height:100%;object-fit:cover}.cf-social-profile-photo.editor{width:82px;height:82px}
.cf-social-profile-copy{min-width:0}.cf-social-profile-name{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.cf-social-profile-name strong,.cf-social-profile-name span{display:block}.cf-social-profile-name strong{font-size:17px}.cf-social-profile-name span{margin-top:2px;color:#7fdfff;font-size:10px}.cf-social-profile-name button{padding:7px 9px;font-size:10px;white-space:nowrap}
.cf-social-profile-copy p{margin:8px 0;color:#c4cfdb;font-size:12px;line-height:1.5}.cf-training-chip{display:inline-flex;padding:5px 8px;border-radius:999px;background:rgba(32,200,255,.1);border:1px solid rgba(32,200,255,.22);color:#a6ebff;font-size:9px;font-weight:850}
.cf-social-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.cf-social-counts button{padding:8px;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.025);color:var(--text)}.cf-social-counts strong,.cf-social-counts span{display:block}.cf-social-counts strong{font-size:16px}.cf-social-counts span{margin-top:2px;color:var(--muted);font-size:9px}
.cf-social-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.cf-social-stats>span{min-width:0;padding:8px 5px;text-align:center;border:1px solid rgba(255,122,26,.18);background:rgba(255,122,26,.04)}.cf-social-stats small,.cf-social-stats strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cf-social-stats small{color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.06em}.cf-social-stats strong{margin-top:3px;font-size:12px}.cf-featured-stat-editor .profile-grid{margin-top:10px}
.cf-profile-trophies{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%;padding:0;border:0;background:transparent;color:var(--text);text-align:left}
.cf-trophy-badge{display:grid;place-items:center;gap:5px;text-align:center}.cf-trophy-badge>span{width:62px;height:62px;display:grid;place-items:center;clip-path:polygon(25% 6%,75% 6%,100% 50%,75% 94%,25% 94%,0 50%);background:linear-gradient(145deg,#17293a,#081018);border:0;color:#647282;font-size:13px;font-weight:950}.cf-trophy-badge.earned>span{background:linear-gradient(145deg,#2c7898,#0d2738 60%,#6b3414);color:#eaffff;filter:drop-shadow(0 0 6px rgba(32,200,255,.32))}.cf-trophy-badge strong{font-size:10px}.cf-trophy-badge small{font-size:8px;color:var(--muted)}.cf-trophy-badge.compact>span{width:42px;height:42px;font-size:10px}.cf-trophy-badge.compact strong{font-size:8px;line-height:1.2}
.cf-social-profile-loading{padding:12px;color:var(--muted);text-align:center}
.social-author{border:0;background:transparent;color:inherit;padding:0;text-align:left;cursor:pointer}.social-author:hover .social-author-name{color:#8beaff}
.cf-social-more{position:relative}.cf-social-more>summary{list-style:none;padding:4px 8px;cursor:pointer;color:var(--muted);font-size:16px}.cf-social-more>summary::-webkit-details-marker{display:none}.cf-social-more>div{position:absolute;z-index:8;right:0;top:30px;width:145px;padding:6px;display:grid;gap:5px;border:1px solid var(--border);border-radius:10px;background:#0b1119;box-shadow:0 10px 30px rgba(0,0,0,.5)}.cf-social-more button{width:100%;padding:8px;font-size:10px}
.cf-profile-editor-head{display:flex;align-items:center;gap:13px;margin-bottom:14px}.cf-privacy-list{display:grid;gap:8px}.cf-privacy-list>label{display:flex;align-items:flex-start;gap:9px;padding:10px;border:1px solid var(--border);background:rgba(10,14,20,.45)}.cf-privacy-list input{width:auto;margin-top:3px}.cf-privacy-list strong,.cf-privacy-list small{display:block}.cf-privacy-list small{margin-top:3px;color:var(--muted);line-height:1.35}
.cf-trophy-summary{display:flex;align-items:baseline;gap:8px;padding:12px;border:1px solid rgba(32,200,255,.22);background:rgba(32,200,255,.06)}.cf-trophy-summary strong{font-size:25px}.cf-trophy-summary span{color:var(--muted);font-size:11px}.cf-trophy-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:9px;margin-top:12px}.cf-trophy-card{padding:12px;display:grid;gap:9px;border:1px solid var(--border);background:#0a1119}.cf-trophy-card.earned{border-color:rgba(32,200,255,.28)}.cf-trophy-card p{margin:0;color:var(--muted);font-size:10px;line-height:1.4}.cf-trophy-card label{display:flex;align-items:center;gap:7px;font-size:10px}.cf-trophy-card label input{width:auto}.cf-trophy-progress{height:5px;background:#17202b;overflow:hidden}.cf-trophy-progress i{display:block;height:100%;background:linear-gradient(90deg,#20c8ff,#ff7a1a)}
.cf-member-profile{text-align:center;display:grid;justify-items:center;gap:9px}.cf-member-profile h3,.cf-member-profile p{margin:0}.cf-member-profile p{color:var(--muted)}.cf-social-connections-list{display:grid;gap:7px}.cf-social-connection{padding:11px;border:1px solid var(--border);background:#0b121a}
@media(max-width:430px){.cf-social-profile-main{grid-template-columns:58px minmax(0,1fr)}.cf-social-profile-photo{width:58px;height:58px;border-radius:17px}.cf-social-profile-name{display:grid}.cf-social-profile-name button{justify-self:start}.cf-trophy-grid{grid-template-columns:1fr 1fr}}
