:root{--bg:#070908;--panel:#101311;--panel2:#171b18;--line:#252b26;--text:#f5f7f5;--muted:#8f9a91;--lime:#b6ff2e;--danger:#ff5d5d;--amber:#ffca45;--radius:20px}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}body{background:radial-gradient(circle at 90% -10%,rgba(182,255,46,.12),transparent 35%),var(--bg)}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}.brand{display:flex;align-items:center;gap:10px;font-weight:950;letter-spacing:.14em}.mark{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:var(--lime);color:#0a0d0a;font-weight:1000}.eyebrow{font-size:11px;color:var(--lime);letter-spacing:.18em;text-transform:uppercase;font-weight:800}.muted{color:var(--muted)}h1,h2,h3,p{margin-top:0}.btn{border:0;border-radius:14px;padding:12px 16px;font-weight:800;cursor:pointer}.btn:disabled{opacity:.45}.primary{background:var(--lime);color:#091007}.secondary{background:var(--panel2);color:var(--text);border:1px solid var(--line)}.danger{background:rgba(255,93,93,.14);color:#ff8b8b;border:1px solid rgba(255,93,93,.3)}.small{padding:8px 10px;border-radius:10px;font-size:12px}.card{background:linear-gradient(180deg,rgba(255,255,255,.025),transparent),var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px}.grid{display:grid;gap:14px}.stats{grid-template-columns:repeat(4,minmax(0,1fr))}.stat-value{font-size:28px;font-weight:950;margin-top:8px}.stat-label{font-size:12px;color:var(--muted)}.pill{display:inline-flex;padding:5px 9px;border-radius:99px;background:var(--panel2);border:1px solid var(--line);font-size:11px}.pill.active,.pill.PAID,.pill.RESERVED{color:var(--lime)}.pill.PENDING,.pill.WAITLIST{color:var(--amber)}.pill.EXPIRED,.pill.SUSPENDED,.pill.CANCELLED{color:#ff8b8b}.row{display:flex;align-items:center;justify-content:space-between;gap:12px}.stack{display:flex;flex-direction:column;gap:12px}.field{display:flex;flex-direction:column;gap:7px}.field label{font-size:12px;color:var(--muted)}input,select,textarea{width:100%;padding:12px 13px;border-radius:12px;border:1px solid var(--line);background:#0c0f0d;color:var(--text);outline:none}input:focus,select:focus,textarea:focus{border-color:#667d35}.notice{padding:12px 14px;border:1px solid rgba(182,255,46,.28);background:rgba(182,255,46,.07);border-radius:13px;color:#d9ff92}.error{border-color:rgba(255,93,93,.3);background:rgba(255,93,93,.08);color:#ffaaaa}.auth{max-width:430px;margin:0 auto;min-height:100vh;padding:32px 18px;display:flex;flex-direction:column;justify-content:center}.auth .hero{margin:26px 0}.auth h1{font-size:46px;line-height:.95;margin-bottom:14px}.shell{min-height:100vh}.sidebar{position:fixed;left:0;top:0;bottom:0;width:250px;border-right:1px solid var(--line);background:#090b0a;padding:24px 16px;z-index:5}.sidebar .brand{margin:0 8px 28px}.nav{display:flex;flex-direction:column;gap:5px}.nav button{border:0;background:transparent;color:var(--muted);text-align:left;padding:11px 12px;border-radius:12px;cursor:pointer}.nav button.active,.nav button:hover{background:var(--panel2);color:var(--text)}.nav button.active{box-shadow:inset 3px 0 var(--lime)}.main{margin-left:250px;padding:28px;max-width:1500px}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:720px}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);font-size:13px}th{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.chart-bars{height:180px;display:flex;align-items:flex-end;gap:8px;padding-top:20px}.bar{flex:1;background:linear-gradient(var(--lime),#4f6e18);min-width:16px;border-radius:8px 8px 3px 3px;position:relative}.bar span{position:absolute;bottom:-25px;left:50%;transform:translateX(-50%);font-size:10px;color:var(--muted);white-space:nowrap}.mobile-shell{max-width:540px;margin:0 auto;padding:18px 16px 96px}.mobile-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.hero-wod{padding:24px;min-height:270px;display:flex;flex-direction:column;justify-content:flex-end;background:radial-gradient(circle at 90% 10%,rgba(182,255,46,.17),transparent 42%),var(--panel)}.hero-wod h1{font-size:36px;margin-bottom:8px}.bottom-nav{position:fixed;z-index:10;bottom:12px;left:50%;transform:translateX(-50%);width:min(calc(100% - 24px),516px);display:flex;gap:3px;overflow-x:auto;padding:7px;background:rgba(14,17,15,.94);backdrop-filter:blur(18px);border:1px solid var(--line);border-radius:18px}.bottom-nav button{flex:1 0 70px;border:0;background:transparent;color:var(--muted);padding:9px 5px;border-radius:12px;font-size:10px}.bottom-nav button.active{background:var(--panel2);color:var(--lime)}.metric{display:flex;align-items:end;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line)}.metric:last-child{border:0}.metric strong{font-size:20px}.leader-row{display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.rank{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--panel2);font-weight:900}.shop-grid{grid-template-columns:repeat(2,1fr)}.product{min-height:190px}.product-thumb{height:90px;border-radius:14px;background:linear-gradient(135deg,#202620,#0c0f0d);display:grid;place-items:center;font-size:32px;margin-bottom:12px}.dialog{border:1px solid var(--line);border-radius:20px;background:var(--panel);color:var(--text);width:min(560px,calc(100% - 24px));padding:0}.dialog::backdrop{background:rgba(0,0,0,.72);backdrop-filter:blur(4px)}.dialog-inner{padding:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.section-title{display:flex;justify-content:space-between;align-items:end;margin:26px 0 12px}.empty{text-align:center;color:var(--muted);padding:30px}.qr{display:block;max-width:240px;width:100%;margin:16px auto;background:white;padding:10px;border-radius:14px}
@media(max-width:900px){.sidebar{display:none}.main{margin:0;padding:18px}.stats{grid-template-columns:1fr 1fr}.admin-mobile-nav{display:flex!important}.topbar{padding-top:52px}}@media(max-width:560px){.stats{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.shop-grid{grid-template-columns:1fr 1fr}.auth h1{font-size:39px}}.admin-mobile-nav{display:none;position:fixed;top:0;left:0;right:0;height:50px;background:#090b0a;border-bottom:1px solid var(--line);z-index:20;align-items:center;justify-content:space-between;padding:0 14px}.admin-mobile-nav select{width:auto;padding:7px 10px}

/* Desktop athlete workspace; retain the compact layout on phones. */
@media (min-width: 901px) {
  .mobile-shell {
    max-width: 1600px;
    margin-left: 240px;
    margin-right: auto;
    padding: 32px 40px 48px;
  }
  .mobile-header {
    min-height: 48px;
    margin-bottom: 32px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--line);
  }
  .mobile-shell h1 { font-size: 40px; }
  .bottom-nav {
    inset: 0 auto 0 0;
    transform: none;
    width: 240px;
    border-radius: 0;
    border-width: 0 1px 0 0;
    padding: 32px 16px;
    flex-direction: column;
    gap: 8px;
    overflow-y: auto;
    background: #090b0a;
  }
  .bottom-nav::before {
    content: 'VENOM';
    color: var(--lime);
    font-size: 24px;
    font-weight: 950;
    letter-spacing: .14em;
    padding: 8px 12px 32px;
  }
  .bottom-nav button {
    flex: 0 0 auto;
    padding: 14px 16px;
    text-align: left;
    font-size: 14px;
    cursor: pointer;
  }
  .bottom-nav button:hover { background: var(--panel2); color: var(--text); }
  .bottom-nav button.active { box-shadow: inset 3px 0 var(--lime); }
  .mobile-shell #view[data-page='home'] {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr);
    gap: 20px;
  }
  .mobile-shell #view[data-page='home'] > .eyebrow,
  .mobile-shell #view[data-page='home'] > h1,
  .mobile-shell #view[data-page='home'] > .section-title {
    grid-column: 1 / -1;
    margin-bottom: 0;
  }
  .mobile-shell #view[data-page='home'] > .grid { margin-top: 0 !important; }
  .mobile-shell #view[data-page='home'] > .grid .card {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .mobile-shell #view[data-page='home'] > .card:last-child { grid-column: 1 / -1; }
  .mobile-shell #view[data-page='classes'] > .stack {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    align-items: start;
  }
  .mobile-shell .shop-grid { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
  .mobile-shell .hero-wod { min-height: 320px; padding: 32px; }
  .mobile-shell .hero-wod .btn { align-self: flex-start; }
}

/* Persian workspace and Sites training experience in the existing VENOM theme. */
@font-face {
  font-family: 'A Rooznameh';
  src: url('/fonts/A-Rooznameh.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0600-06FF, U+0750-077F, U+08A0-08FF, U+FB50-FDFF, U+FE70-FEFF, U+200C-200D;
}
:root { --font-fa: 'Far Nazanin', Tahoma, 'Segoe UI', sans-serif; }
html[lang='fa'] body { font-family: var(--font-fa); line-height: 1.8; }
html[dir='rtl'] .sidebar { left: auto; right: 0; border-right: 0; border-left: 1px solid var(--line); overflow-y: auto; }
html[dir='rtl'] .main { margin-left: 0; margin-right: 250px; }
html[dir='rtl'] .nav button { text-align: right; }
html[dir='rtl'] .nav button.active { box-shadow: inset -3px 0 var(--lime); }
html[dir='rtl'] th, html[dir='rtl'] td { text-align: right; }
html[lang='fa'] .eyebrow { letter-spacing: 0; font-size: 12px; line-height: 1.8; }
html[lang='fa'] .brand { direction: ltr; letter-spacing: .12em; }
html[lang='fa'] .auth { max-width: 520px; }
html[lang='fa'] .auth h1 { font-size: clamp(30px, 4vw, 44px); line-height: 1.65; }
input[type='email'], input[type='password'], input[type='url'], input[type='date'], input[type='datetime-local'] { direction: ltr; text-align: left; }
.workspace-intro { margin: 0 0 24px; flex-wrap: wrap; }
.workspace-intro h1 { font-size: clamp(24px, 2.4vw, 34px); margin: 8px 0 12px; }
.workspace-intro .pill { margin-bottom: 10px; }
.training-hero { display: flex; justify-content: space-between; align-items: center; gap: 32px; padding: 36px; background: radial-gradient(ellipse at left bottom, rgba(182,255,46,.16), transparent 70%), var(--panel); border-color: #46592c; }
.training-hero h1 { font-size: clamp(26px, 2.6vw, 42px); line-height: 1.6; margin: 14px 0; }
.training-hero .btn { margin-top: 12px; }
.cycle-number { flex: 0 0 auto; color: var(--lime); font: 900 76px/1.2 Arial,sans-serif; text-align: center; padding: 10px 20px; }
.cycle-number small { display: block; font-size: 12px; letter-spacing: 2px; color: var(--muted); margin-top: 12px; }
.training-stats { grid-template-columns: repeat(3,minmax(0,1fr)); margin: 22px 0; }
.training-stats .stat-value { font-size: clamp(24px, 2.2vw, 34px); margin: 12px 0; }
.training-columns { display: grid; grid-template-columns: minmax(0,1.5fr) minmax(0,1fr); gap: 20px; }
.training-progress { height: 8px; background: var(--line); border-radius: 10px; margin: 24px 0; overflow: hidden; }
.training-progress i { display: block; height: 100%; background: var(--lime); border-radius: inherit; }
.training-toolbar { display: flex; flex-wrap: wrap; gap: 14px; align-items: end; margin: 20px 0; }
.training-toolbar .field { flex: 1 1 160px; }
.training-toolbar .pill { align-self: center; }
.training-days { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; margin: 24px 0; }
.training-day { color: var(--text); text-align: right; cursor: pointer; min-height: 172px; transition: border-color .15s; }
.training-day:not(:disabled):hover { border-color: var(--lime); }
.training-day:disabled { opacity: .48; cursor: not-allowed; }
.training-day h3 { margin: 18px 0; font-size: 18px; }
.training-copy { white-space: normal; overflow-wrap: anywhere; }
.full { grid-column: 1 / -1; }
.session-summary { max-height: 45vh; overflow-y: auto; border-bottom: 1px solid var(--line); padding-bottom: 12px; }
.session-summary > div { padding: 8px 0; }
button:focus-visible, a:focus-visible { outline: 2px solid var(--lime); outline-offset: 4px; }
@media(min-width:901px) {
  html[dir='rtl'] .mobile-shell { margin-left: auto; margin-right: 240px; }
  html[dir='rtl'] .bottom-nav { inset: 0 0 0 auto; border-width: 0 0 0 1px; }
  html[dir='rtl'] .bottom-nav button { text-align: right; }
  html[dir='rtl'] .bottom-nav button.active { box-shadow: inset -3px 0 var(--lime); }
  .sidebar .nav { padding-bottom: 75px; }
}
@media(max-width:1100px) {
  .training-columns { grid-template-columns: minmax(0,1fr); }
  .training-days { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .training-hero { padding: 26px; }
  .cycle-number { font-size: 58px; padding: 0; }
}
@media(max-width:900px) {
  html[dir='rtl'] .main { margin: 0; }
  .training-stats { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .mobile-shell { max-width: 850px; }
  .main .grid:not(.stats):not(.training-stats) { grid-template-columns: minmax(0,1fr) !important; }
  .main .topbar { flex-wrap: wrap; gap: 12px; }
}
@media(max-width:560px) {
  .training-hero { flex-direction: column; align-items: flex-start; gap: 16px; padding: 22px; }
  .cycle-number { display: flex; gap: 16px; align-items: center; font-size: 42px; }
  .cycle-number small { margin: 0; font-size: 10px; }
  .training-stats { grid-template-columns: minmax(0,1fr); }
  .training-days { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
  .training-day { padding: 14px; }
  .training-day h3 { font-size: 15px; }
  .training-toolbar { align-items: stretch; }
  .training-toolbar > .btn { width: 100%; }
  .workspace-intro .btn { width: 100%; }
  .mobile-header { gap: 10px; }
  .row { flex-wrap: wrap; }
  .session-summary { max-height: 40vh; }
}

/* The annotated landing button uses its own font at every viewport size. */
.landing-entry { font-family: Georgia, "Times New Roman", serif; }

@font-face {
  font-family: 'Paeez';
  src: url('/fonts/Paeez.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Far Nazanin';
  src: url('/fonts/Far.Nazanin.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'A Thuluth';
  src: url('/fonts/A-Thuluth.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* Landing tagline only; allow natural wrapping on narrow screens. */
html[lang='fa'] .landing-tagline { font-size: 34px; overflow-wrap: anywhere; }

/* Initial assessment form: readable groups on desktop and narrow screens. */
.intake-workspace { max-width: 1160px; margin-inline: auto; }
.intake-section { scroll-margin-top: 70px; }
.intake-section h2 { margin-bottom: 20px; }
.intake-options { border: 1px solid var(--line); border-radius: 14px; padding: 16px; display: flex; flex-wrap: wrap; gap: 12px 22px; }
.intake-options legend { padding: 0 8px; }
.intake-options label { display: inline-flex; align-items: center; gap: 8px; cursor: pointer; }
.intake-options input { width: auto; accent-color: var(--lime); }
.intake-skill { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.3fr); gap: 16px; border-bottom: 1px solid var(--line); padding-bottom: 16px; }
.intake-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; }
.intake-actions small { flex-basis: 100%; }
.intake-history { margin-top: 20px; }
.intake-history summary { cursor: pointer; }
.intake-answer { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.5fr); padding: 12px 0; border-bottom: 1px solid var(--line); gap: 16px; }
.intake-answer dt { color: var(--muted); }
.intake-answer dd { margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.intake-review h3 { margin: 28px 0 14px; color: var(--lime); }
@media(max-width:600px) {
 .intake-skill,.intake-answer { grid-template-columns: minmax(0,1fr); }
 .intake-actions button { width: 100%; }
 .intake-options { padding: 12px; gap: 12px; }
}

/* Teaching video library, scoped to both authenticated workspaces. */
.video-upload-panel{margin-bottom:24px}.video-upload-panel>summary{cursor:pointer;font-size:22px;color:var(--lime)}.video-upload-panel form{margin-top:24px}.video-upload-panel .full{grid-column:1/-1}.video-upload-panel [hidden],.video-player-dialog [hidden]{display:none}.video-upload-panel progress{width:min(100%,500px);accent-color:var(--lime);margin-block:16px;display:block}.video-upload-panel [type=submit]{margin-top:16px}.video-filters{display:grid;grid-template-columns:2fr 1fr;gap:18px;margin:24px 0 16px}.video-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.video-grid>.empty{grid-column:1/-1}.video-card{padding:0;overflow:hidden;min-width:0}.video-cover{width:100%;min-height:180px;border:0;background:radial-gradient(ellipse at 50% 10%,#b6ff2e20,transparent 70%),#111a10;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--lime);cursor:pointer}.video-cover:hover{background-color:#1c2815}.video-play-icon{font:26px Arial,sans-serif;width:60px;height:60px;display:grid;place-items:center;border:1px solid #779848;border-radius:50%;padding-left:4px}.video-card-body{padding:20px}.video-card h2{font-size:25px;margin:12px 0;overflow-wrap:anywhere}.video-description{white-space:pre-wrap;overflow-wrap:anywhere}.video-card .video-description{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.video-card-meta{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px;color:var(--muted);border-top:1px solid var(--line);padding-top:12px}.video-manage{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.video-player-dialog{width:min(960px,calc(100% - 24px));max-height:90vh;overflow:auto}.video-player-dialog video{display:block;width:100%;max-height:65vh;background:#000;margin-block:20px;border-radius:12px}.video-player-dialog h2{font-size:24px;margin:0;overflow-wrap:anywhere}.video-upload-panel input[type=file]{max-width:100%;font-size:16px}.video-upload-panel .field label,.video-filters label{font-size:17px}@media(max-width:560px){.video-filters{grid-template-columns:1fr}.video-grid{grid-template-columns:1fr}.video-player-dialog .dialog-inner{padding:14px}.video-upload-panel input[type=file]{font-size:13px}}

/* Sequential training, conversations, notifications and athlete profile. */
.session-card-number{font-size:20px;color:var(--lime)}.session-state-icon{float:left;font-size:23px}.member-session-grid .training-day{min-height:250px;position:relative}.member-session-grid .training-day.locked{opacity:.8;background:#111511;border-style:dashed}.session-card-preview{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:17px;line-height:1.8}.locked-workout-placeholder{display:grid;gap:9px;padding:12px 0 24px;max-width:85%}.locked-workout-placeholder i{height:7px;border-radius:6px;background:#30382d}.locked-workout-placeholder i:nth-child(2){width:78%}.locked-workout-placeholder i:nth-child(3){width:60%}.training-day.completed{border-color:#678735}.exercise-editor{border-block:1px solid var(--line);padding-block:20px}.exercise-editor h3{font-size:22px}.exercise-log{border:1px solid var(--line);border-radius:14px;margin:0 0 18px;padding:16px;min-width:0}.exercise-log legend{color:var(--lime);padding:0 8px}.exercise-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.exercise-name{grid-column:1/-1}.exercise-inputs label{font-size:16px}.exercise-log .remove-exercise{margin-top:12px}.message-workspace{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.6fr);align-items:start;gap:24px}.message-workspace .field label,#coachContactForm .field label{font-size:18px}.conversation-message{border:1px solid var(--line);border-radius:14px;padding:18px;margin-block:16px;overflow-wrap:anywhere}.conversation-message p{white-space:pre-wrap;font-size:19px;line-height:1.8}.conversation-message.incoming{border-right:3px solid var(--lime)}.conversation-message.outgoing{background:#b6ff2e06}.conversation-message .btn{margin-inline-end:12px}.panel-actions{display:flex;gap:12px;flex-wrap:wrap}.count-badge{display:inline-grid;place-items:center;border-radius:50%;min-width:23px;min-height:23px;padding:0 5px;background:var(--lime);color:#111;font:700 12px Tahoma,sans-serif}.count-badge[hidden]{display:none}.panel-notification-bell{white-space:nowrap}.panel-notice h2{font-size:23px;margin:0}.panel-notice p{font-size:19px;white-space:pre-wrap;overflow-wrap:anywhere}.panel-notice.is-unread{border-color:#5c782e}.panel-notice.is-read{opacity:.75}.athlete-menu-profile{display:flex;align-items:center;flex-direction:column;text-align:center;border-bottom:1px solid var(--line);padding:0 8px 18px;margin-bottom:10px;gap:8px}.athlete-menu-profile strong{font-size:19px;overflow-wrap:anywhere;max-width:100%}.profile-avatar-button,.mobile-profile-button{border:0;padding:0;background:none;color:var(--text);cursor:pointer}.profile-avatar{width:76px;height:76px;display:inline-grid;place-items:center;border:2px solid #739d35;border-radius:50%;overflow:hidden;background:#1b2615;font-size:32px;color:var(--lime);vertical-align:middle}.profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-avatar [hidden]{display:none}.avatar-edit-label{display:block;margin-top:6px;color:var(--muted);font-size:16px}.profile-photo-preview{text-align:center;margin:24px}.profile-photo-preview .profile-avatar{width:120px;height:120px}.profile-photo-preview+[id] label{font-size:18px}#profilePhotoDialog [hidden]{display:none}#profilePhotoDialog [data-photo-remove]{margin-top:20px}.profile-page-edit{margin-bottom:20px}.mobile-profile-button{display:none}
@media(min-width:901px){#nav.has-profile::before{content:none}#nav.has-profile .profile-avatar-button{flex:none;text-align:center;box-shadow:none;padding:0}#nav.has-profile .profile-avatar-button:hover{background:none}#nav.has-profile{padding-top:24px}.bottom-nav [data-v]{display:flex;align-items:center;justify-content:space-between;gap:8px}}
@media(max-width:1000px){.message-workspace{grid-template-columns:1fr}}
@media(max-width:900px){.athlete-menu-profile{display:none}.mobile-profile-button{display:block}.mobile-profile-button .profile-avatar{width:42px;height:42px;font-size:22px}.mobile-header{flex-wrap:wrap}.panel-notification-bell{padding:8px 12px;font-size:15px}.exercise-inputs{grid-template-columns:repeat(2,minmax(0,1fr))}.member-session-grid .training-day{min-height:235px}.session-card-number{font-size:18px}}
@media(max-width:400px){.member-session-grid{grid-template-columns:1fr}.mobile-header .brand{font-size:14px}.mobile-header .mark{width:24px;height:24px}.session-state-icon{font-size:20px}}

.subscription-tabs{display:flex;gap:12px;margin-bottom:24px}.subscription-tabs .btn{flex:1;max-width:260px;font-size:21px}.subscription-grid,.subscription-manager-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:30px}.subscription-package{display:flex;flex-direction:column;align-items:stretch;gap:12px;min-width:0}.subscription-package h2{font-size:29px;margin:6px 0}.subscription-package p{margin:0;line-height:1.8;overflow-wrap:anywhere}.subscription-price{display:block;font-size:25px;color:var(--lime);margin-block:8px}.subscription-duration{font-size:22px}.subscription-package>.btn,.subscription-package>.panel-actions{margin-top:auto}.custom-subscription{margin-block:30px}.custom-subscription h2{font-size:28px}.custom-subscription label{font-size:18px}.custom-subscription [hidden]{display:none}.subscription-history{margin-top:30px}.subscription-request-list{margin-top:30px}.subscription-request{border-top:1px solid var(--line);padding-block:20px;overflow-wrap:anywhere}.subscription-request p{white-space:pre-wrap}.subscription-package .panel-actions{padding-top:16px}.subscription-package small{overflow-wrap:anywhere}@media(max-width:1100px){.subscription-manager-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.subscription-grid,.subscription-manager-grid{grid-template-columns:1fr}.subscription-tabs .btn{font-size:18px;padding:12px}.subscription-history .metric{align-items:start;gap:14px;flex-direction:column}}

/* VENOM training floor refresh: darker mineral surfaces, sharper contrast and controlled lime/amber accents. */
:root{--bg:#080a09;--panel:#111513;--panel2:#191f1b;--line:#29312b;--text:#f4f5f2;--muted:#a1aaa2;--lime:#c0ff36;--amber:#d7a84f;--radius:18px}
body{background:radial-gradient(ellipse at 78% 0%,rgba(192,255,54,.09),transparent 34%),radial-gradient(ellipse at 3% 54%,rgba(215,168,79,.045),transparent 28%),var(--bg)}
.card{background:linear-gradient(145deg,rgba(255,255,255,.035),transparent 58%),#111513;border-color:#28302a;box-shadow:0 16px 38px #0004}
.btn{transition:transform .16s ease,background-color .16s ease,border-color .16s ease,box-shadow .16s ease}.btn:hover:not(:disabled){transform:translateY(-1px)}.primary{background:linear-gradient(120deg,#c0ff36,#a7ed27);box-shadow:0 6px 22px #a7ed2722}.secondary:hover{border-color:#576448;background:#202620}
.sidebar{background:linear-gradient(180deg,#111512,#090b0a 50%);border-color:#252d27}.sidebar .brand{font-size:18px}.sidebar .mark{box-shadow:0 0 24px #b6ff2e34}
.nav button{font-size:16px;transition:background .16s ease,color .16s ease}.nav button.active{background:linear-gradient(90deg,#c0ff3617,transparent);color:var(--text)}
.main{padding:30px clamp(18px,3vw,42px)}.topbar{border-bottom:1px solid #252d27;padding-bottom:18px}.topbar h1{font-size:30px}.eyebrow{letter-spacing:.05em}
input,select,textarea{background:#0b0e0c;border-color:#303932;transition:border-color .16s ease,box-shadow .16s ease}input:focus,select:focus,textarea:focus{border-color:#a5d84b;box-shadow:0 0 0 3px #b6ff2e18}
.stat-value{color:#f8f8f3}.section-title{margin-top:34px}.pill{background:#1a201b;border-color:#303a31}.pill.active,.pill.PAID,.pill.RESERVED{color:var(--lime)}
.mobile-shell{background:radial-gradient(ellipse at 90% 0%,#b6ff2e0b,transparent 34%),transparent}.bottom-nav{box-shadow:0 18px 60px #0009}.bottom-nav button.active{color:var(--lime);background:linear-gradient(145deg,#26301e,#171c17)}
.hero-wod{background-image:linear-gradient(0deg,#101411 0%,#101411de 34%,#10141160 100%),url('/images/onboarding-barbell.jpg');background-position:center,center 42%;background-size:cover;border-color:#5a603f}

/* Athlete onboarding, one clear decision at a time. */
.intake-flow{max-width:860px;padding-bottom:35px}.intake-progress-card{position:sticky;top:10px;z-index:4;padding:12px 16px;margin-bottom:6px;border:1px solid #2d362f;border-radius:16px;background:#101411ed;backdrop-filter:blur(18px);box-shadow:0 10px 28px #0007}.intake-progress-card .row{font-size:14px;color:var(--muted)}.intake-progress-track{height:7px;margin-top:12px;overflow:hidden;border-radius:99px;background:#272e29}.intake-progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#91c628,#c0ff36);transition:width .32s ease}.intake-flow-step{padding:clamp(22px,5vw,52px);min-height:430px;animation:intake-step-in .24s ease both}.intake-flow-step[hidden]{display:none}.intake-step-heading{max-width:680px;margin:0 auto 34px;text-align:center}.intake-step-kicker{color:var(--lime);font-size:17px}.intake-step-heading h2{font-size:clamp(30px,5vw,48px);line-height:1.3;margin:8px 0 10px}.intake-step-heading p{font-size:19px;line-height:1.8;margin:0}.intake-welcome-mark{display:flex;align-items:center;justify-content:center;gap:12px;direction:ltr;font:900 23px Arial,sans-serif;letter-spacing:.14em;margin:50px auto 28px}.intake-welcome-mark span{display:grid;place-items:center;width:56px;height:56px;border-radius:16px;background:var(--lime);color:#0b1007;letter-spacing:0}.intake-welcome-note{text-align:center;color:var(--amber);font-size:19px}.intake-range-control{max-width:620px;margin:40px auto}.intake-range-value{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:20px}.intake-range-value>div{display:flex;align-items:center;gap:9px;color:var(--lime)}.intake-range-value input{width:140px;text-align:center;font-size:28px;font-weight:800;border-radius:13px}.intake-range-control input[type=range]{appearance:none;height:8px;padding:0;margin:34px 0 10px;border:0;border-radius:99px;background:linear-gradient(to left,var(--lime) var(--range-progress,50%),#303832 var(--range-progress,50%));direction:rtl}.intake-range-control input[type=range]::-webkit-slider-thumb{appearance:none;width:26px;height:26px;border:4px solid #101411;border-radius:50%;background:var(--lime);box-shadow:0 0 0 2px var(--lime);cursor:grab}.intake-range-control input[type=range]::-moz-range-thumb{width:18px;height:18px;border:4px solid #101411;border-radius:50%;background:var(--lime);box-shadow:0 0 0 2px var(--lime);cursor:grab}.intake-range-ends{display:flex;justify-content:space-between;color:var(--muted);font-size:15px}.intake-card-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:12px;max-width:720px;margin:0 auto 22px}.intake-choice{min-height:88px;padding:16px;border:1px solid #343d36;border-radius:15px;background:linear-gradient(140deg,#1a201c,#111512);color:var(--text);text-align:center;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;transition:transform .16s ease,border-color .16s ease,background .16s ease}.intake-choice:hover{transform:translateY(-2px);border-color:#647342}.intake-choice.selected{border-color:var(--lime);background:linear-gradient(145deg,#b6ff2e21,#1a2019);box-shadow:inset 0 0 0 1px #b6ff2e28,0 9px 22px #0005}.intake-choice strong{font-size:19px}.intake-choice small{font-size:15px;color:var(--muted)}.intake-choice-icon{font:22px Arial,sans-serif;color:var(--amber)}.intake-custom-goal{max-width:600px;margin:16px auto}.intake-custom-goal label,.intake-flow-step .field label{font-size:17px}.intake-flow-step .form-grid{max-width:690px;margin-inline:auto}.intake-flow-step textarea{min-height:90px}.intake-field-extra{max-width:650px;margin:20px auto}.intake-field-extra[hidden]{display:none}.health-choice{min-height:72px;font-size:20px}.intake-benchmark{display:grid;grid-template-columns:1fr minmax(130px,.8fr) minmax(150px,1fr);align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid var(--line)}.intake-benchmark label{font-size:18px}.intake-benchmark label small{display:block;color:var(--muted)}.intake-summary{margin:20px 0}.intake-summary-row{display:grid;grid-template-columns:160px 1fr;gap:12px;padding:13px 8px;border-bottom:1px solid var(--line)}.intake-summary-row strong{color:var(--lime)}.intake-flow-actions{position:sticky;bottom:10px;z-index:3;display:flex;align-items:center;gap:10px;padding:12px;border:1px solid #303932;border-radius:17px;background:#101411ed;backdrop-filter:blur(18px);box-shadow:0 14px 34px #0008}.intake-flow-actions .primary{margin-inline-start:auto;min-width:145px}.intake-flow-actions [hidden]{display:none}.intake-flow-actions button{font-size:18px}.intake-flow-actions button:disabled{opacity:.4}.intake-flow [aria-busy=true]{opacity:.88}
.intake-flow-step[data-onboarding-step="welcome"]{background-image:linear-gradient(0deg,#111513 0%,#111513dc 42%,#11151360 100%),url('/images/onboarding-barbell.jpg');background-position:center,center 40%;background-size:cover;border-color:#5a603f}
@keyframes intake-step-in{from{opacity:.6;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){.intake-progress-card{top:4px;padding:10px 12px}.intake-flow-step{padding:22px 16px;min-height:390px}.intake-step-heading{margin-bottom:24px}.intake-step-heading h2{font-size:32px}.intake-step-heading p{font-size:17px}.intake-card-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.intake-choice{min-height:80px;padding:12px 8px}.intake-choice strong{font-size:17px}.intake-flow-actions{bottom:calc(82px + env(safe-area-inset-bottom));gap:7px;padding:8px}.intake-flow-actions .btn{padding:11px 10px;font-size:16px}.intake-flow-actions .primary{min-width:100px}.intake-benchmark{grid-template-columns:1fr 1fr}.intake-benchmark label{grid-column:1/-1}.intake-summary-row{grid-template-columns:1fr;gap:4px}}
