.bornlean-auth-card,
.bornlean-message,
.bornlean-dashboard,
.bornlean-tools {
  --bl-ink:#0a0a0a;
  --bl-ink-2:#171717;
  --bl-paper:#f1f1ef;
  --bl-surface:#fff;
  --bl-red:#e30613;
  --bl-red-dark:#a80a14;
  --bl-line:#c9cbcd;
  --bl-muted:#62666a;
  color:var(--bl-ink);
}

.bornlean-auth-card {
  max-width:720px;
  margin:0 auto;
  padding:clamp(24px,5vw,48px);
  border:1px solid var(--bl-line);
  background:var(--bl-surface);
  box-shadow:18px 18px 0 rgba(10,10,10,.06);
}
.bornlean-auth-card h2,
.bornlean-message strong,
.bornlean-dashboard h2,
.bornlean-dashboard h3,
.bornlean-tools h2 {
  margin:.15em 0;
  font-family:"Barlow Condensed","Arial Narrow",sans-serif;
  font-weight:900;
  line-height:.92;
  text-transform:uppercase;
}
.bornlean-auth-card h2 { font-size:clamp(2.8rem,7vw,4.8rem); }
.bornlean-label {
  margin:0;
  color:var(--bl-red-dark);
  font-size:.66rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.bornlean-auth-card form,
.bornlean-profile-form,
.bornlean-progress-form { display:grid; gap:17px; margin-top:28px; }
.bornlean-auth-card label,
.bornlean-profile-form label,
.bornlean-progress-form label { display:grid; gap:6px; font-size:.69rem; font-weight:800; letter-spacing:.03em; text-transform:uppercase; }
.bornlean-auth-card input:not([type="checkbox"]),
.bornlean-auth-card select,
.bornlean-auth-card textarea,
.bornlean-profile-form input:not([type="checkbox"]),
.bornlean-profile-form select,
.bornlean-progress-form input,
.bornlean-progress-form select,
.bornlean-progress-form textarea {
  width:100%;
  min-height:50px;
  padding:10px 13px;
  border:1px solid var(--bl-line);
  border-radius:0;
  background:var(--bl-paper);
  color:var(--bl-ink);
}
.bornlean-auth-card textarea,
.bornlean-progress-form textarea { resize:vertical; }
.bornlean-auth-card small { color:var(--bl-muted); font-weight:400; letter-spacing:0; text-transform:none; }
.bornlean-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.bornlean-inline-check { display:flex!important; align-items:flex-start; gap:9px; color:var(--bl-muted); font-weight:500!important; letter-spacing:0!important; text-transform:none!important; }
.bornlean-inline-check input { width:18px; height:18px; flex:0 0 auto; accent-color:var(--bl-red); }
.bornlean-inline-check > span { display:grid; gap:4px; }
.bornlean-inline-check strong { color:var(--bl-ink); font-size:.72rem; text-transform:uppercase; }
.bornlean-inline-check small { font-size:.69rem; line-height:1.5; }
.bornlean-auth-links { display:flex; flex-wrap:wrap; justify-content:space-between; gap:15px; margin-top:25px; padding-top:18px; border-top:1px solid var(--bl-line); font-size:.74rem; font-weight:800; text-transform:uppercase; }
.bornlean-auth-links a { color:var(--bl-red-dark); }
.bornlean-resend { margin-top:20px; border-top:1px solid var(--bl-line); padding-top:15px; }
.bornlean-resend summary { cursor:pointer; color:var(--bl-muted); font-size:.72rem; font-weight:800; text-transform:uppercase; }
.bornlean-resend form { margin-top:16px; }
.bornlean-honeypot { position:absolute!important; left:-9999px!important; width:1px!important; height:1px!important; opacity:0!important; pointer-events:none!important; }
.bornlean-message { display:flex; max-width:760px; min-height:160px; flex-direction:column; align-items:flex-start; justify-content:center; gap:18px; margin:0 auto; padding:32px; border-left:4px solid var(--bl-red); background:var(--bl-surface); }
.bornlean-message strong { font-size:2rem; }
.bornlean-notice { margin:0 0 18px; padding:14px 17px; border-left:4px solid #a70c15; background:#fcecee; font-weight:700; }
.bornlean-notice.success { border-color:#19743a; background:#eaf8ef; }

.bornlean-dashboard {
  width:min(1240px,100%);
  margin:0 auto;
  background:#e7e8e9;
}
.bornlean-account-shell {
  display:grid;
  grid-template-columns:265px minmax(0,1fr);
  min-height:850px;
  border:1px solid var(--bl-line);
  background:#f6f6f5;
  box-shadow:0 24px 80px rgba(10,10,10,.1);
}
.bornlean-account-sidebar {
  display:flex;
  min-width:0;
  flex-direction:column;
  background:var(--bl-ink);
  color:#f2f2f2;
}
.bornlean-account-person {
  display:flex;
  align-items:center;
  gap:13px;
  min-height:96px;
  padding:20px;
  border-bottom:1px solid #303030;
}
.bornlean-member-avatar {
  display:grid;
  width:48px;
  height:48px;
  flex:0 0 auto;
  place-items:center;
  background:var(--bl-red);
  color:#fff;
  font-family:"Barlow Condensed","Arial Narrow",sans-serif;
  font-size:1.25rem;
  font-weight:900;
}
.bornlean-account-person > div { display:grid; min-width:0; }
.bornlean-account-person strong { overflow:hidden; font-family:"Barlow Condensed","Arial Narrow",sans-serif; font-size:1.17rem; line-height:1; text-overflow:ellipsis; text-transform:uppercase; white-space:nowrap; }
.bornlean-account-person small { margin-top:5px; color:#989b9e; font-size:.61rem; text-transform:uppercase; }
.bornlean-dashboard-tabs { display:grid; padding:12px; gap:3px; }
.bornlean-dashboard-tabs button {
  display:grid;
  grid-template-columns:28px 1fr auto;
  min-height:51px;
  align-items:center;
  gap:8px;
  padding:0 11px;
  border:0;
  border-left:2px solid transparent;
  background:transparent;
  color:#b5b7ba;
  cursor:pointer;
  text-align:left;
}
.bornlean-dashboard-tabs button i { color:#6c6f72; font-size:.58rem; font-style:normal; font-weight:800; }
.bornlean-dashboard-tabs button span { font-size:.68rem; font-weight:800; text-transform:uppercase; }
.bornlean-dashboard-tabs button b { color:#555; font-size:1rem; }
.bornlean-dashboard-tabs button:hover { background:#171717; color:#fff; }
.bornlean-dashboard-tabs button.active { border-left-color:var(--bl-red); background:#1c1c1c; color:#fff; }
.bornlean-dashboard-tabs button.active i { color:var(--bl-red); }
.bornlean-account-sidebar-foot { display:grid; gap:11px; margin-top:auto; padding:18px 20px; border-top:1px solid #303030; }
.bornlean-account-sidebar-foot span,
.bornlean-account-sidebar-foot a { color:#919497; font-size:.62rem; font-weight:800; text-transform:uppercase; }
.bornlean-account-sidebar-foot a:hover { color:var(--bl-red); }
.bornlean-account-main { min-width:0; }
.bornlean-account-toolbar {
  position:static;
  display:flex;
  height:74px;
  align-items:center;
  justify-content:space-between;
  padding:0 28px;
  border:0;
  border-bottom:1px solid #d3d4d5;
  background:#fff;
  color:var(--bl-ink);
}
.bornlean-account-toolbar > div { display:grid; }
.bornlean-account-toolbar span { color:var(--bl-muted); font-size:.59rem; font-weight:800; text-transform:uppercase; }
.bornlean-account-toolbar strong { font-family:"Barlow Condensed","Arial Narrow",sans-serif; font-size:1.17rem; text-transform:uppercase; }
.bornlean-account-toolbar > a { display:inline-flex; min-height:40px; align-items:center; padding:0 13px; border:1px solid #d0d2d3; font-size:.65rem; font-weight:800; text-transform:uppercase; }
.bornlean-account-toolbar > a:hover { border-color:var(--bl-ink); background:var(--bl-ink); color:#fff; }
.bornlean-member-panel { padding:30px; }
.bornlean-welcome {
  position:relative;
  display:flex;
  min-height:225px;
  align-items:center;
  justify-content:space-between;
  gap:32px;
  overflow:hidden;
  padding:35px 38px;
  background:radial-gradient(circle at 84% 45%,rgba(227,6,19,.17),transparent 25%),linear-gradient(120deg,#090909,#181818);
  color:#f4f4f2;
}
.bornlean-welcome::after { position:absolute; right:-80px; width:270px; height:270px; border:1px solid rgba(227,6,19,.16); border-radius:50%; box-shadow:0 0 0 44px rgba(227,6,19,.035),0 0 0 88px rgba(227,6,19,.018); content:""; }
.bornlean-welcome > * { position:relative; z-index:1; }
.bornlean-welcome p { margin:0; color:var(--bl-red); font-family:"Barlow Condensed","Arial Narrow",sans-serif; font-size:.73rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.bornlean-welcome h2 { margin:10px 0 8px; font-size:clamp(3.1rem,6vw,5.4rem); letter-spacing:-.05em; line-height:.82; }
.bornlean-welcome > div:first-child > span { display:block; max-width:600px; color:#b7b9bc; font-size:.8rem; }
.bornlean-week-badge { display:grid; min-width:145px; padding-left:20px; border-left:2px solid var(--bl-red); }
.bornlean-week-badge strong { color:var(--bl-red); font-family:"Barlow Condensed","Arial Narrow",sans-serif; font-size:1.65rem; line-height:1; text-transform:uppercase; }
.bornlean-week-badge span { margin-top:5px; color:#96999c; font-size:.58rem; text-transform:uppercase; }
.bornlean-stat-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  margin-top:16px;
  border-top:1px solid #d0d1d2;
  border-left:1px solid #d0d1d2;
}
.bornlean-stat-grid article { display:grid; min-height:142px; align-content:start; padding:18px; border-right:1px solid #d0d1d2; border-bottom:1px solid #d0d1d2; background:#fff; }
.bornlean-stat-grid span { color:var(--bl-muted); font-size:.58rem; font-weight:800; text-transform:uppercase; }
.bornlean-stat-grid strong { margin-top:25px; font-size:1.75rem; line-height:1; text-transform:uppercase; }
.bornlean-stat-grid small { margin-top:4px; color:#85888b; font-size:.57rem; }
.bornlean-overview-grid { display:grid; grid-template-columns:1.15fr .85fr; gap:16px; margin-top:16px; }
.bornlean-overview-grid > article { border:1px solid #d0d1d2; background:#fff; }
.bornlean-plan-card { padding:27px; background:var(--bl-ink)!important; color:#f4f4f2; }
.bornlean-card-top { display:flex; align-items:center; justify-content:space-between; gap:15px; color:var(--bl-red); font-size:.61rem; font-weight:800; text-transform:uppercase; }
.bornlean-card-top b { padding:5px 8px; border:1px solid #3b3b3b; color:#aaa; font-size:.55rem; }
.bornlean-plan-card h3 { margin:34px 0 9px; font-size:clamp(2.8rem,4.4vw,4rem); letter-spacing:-.04em; line-height:.85; }
.bornlean-plan-card > p { max-width:650px; color:#afb1b4; font-size:.77rem; line-height:1.65; }
.bornlean-prescription { display:grid; grid-template-columns:repeat(3,1fr); margin:24px 0; border-top:1px solid #333; border-bottom:1px solid #333; }
.bornlean-prescription span { display:grid; min-height:69px; align-content:center; padding:10px 13px; border-right:1px solid #333; }
.bornlean-prescription span:last-child { border-right:0; }
.bornlean-prescription small { color:#909397; font-size:.55rem; text-transform:uppercase; }
.bornlean-prescription strong { margin-top:3px; color:#fff; font-family:"Barlow Condensed","Arial Narrow",sans-serif; font-size:1.2rem; text-transform:uppercase; }
.bornlean-plan-card .button { min-height:46px; font-size:.73rem; }
.bornlean-recommendations,
.bornlean-recent { padding:25px; }
.bornlean-recommendations h3,
.bornlean-recent h3,
.bornlean-history h3 { font-size:2rem; }
.bornlean-recommendations ol { margin:22px 0 0; padding:0; list-style:none; }
.bornlean-recommendations li { display:grid; grid-template-columns:24px 1fr; gap:7px; padding:12px 0; border-top:1px solid #dedfe0; color:#44474a; font-size:.72rem; line-height:1.5; }
.bornlean-recommendations li span { color:var(--bl-red); font-weight:900; }
.bornlean-consent-note { color:var(--bl-muted); font-size:.68rem; line-height:1.55; }
.bornlean-recent { grid-column:1/-1; }
.bornlean-panel-heading { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:26px; padding:12px 0 24px; border-bottom:1px solid #d1d2d3; }
.bornlean-panel-heading h2 { margin:7px 0 0; font-size:clamp(2.5rem,5vw,4.4rem); letter-spacing:-.04em; }
.bornlean-panel-heading > div > span { display:block; max-width:650px; margin-top:8px; color:var(--bl-muted); font-size:.72rem; line-height:1.55; }
.bornlean-panel-heading .button { flex:0 0 auto; min-height:47px; font-size:.72rem; }
.bornlean-plan-summary { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--bl-line); border-left:1px solid var(--bl-line); }
.bornlean-plan-summary div { min-height:112px; padding:19px; border-right:1px solid var(--bl-line); border-bottom:1px solid var(--bl-line); background:#fff; }
.bornlean-plan-summary span { color:var(--bl-muted); font-size:.57rem; font-weight:800; text-transform:uppercase; }
.bornlean-plan-summary strong { display:block; margin-top:22px; font-family:"Barlow Condensed","Arial Narrow",sans-serif; font-size:1.55rem; text-transform:uppercase; }
.bornlean-workout-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:16px; }
.bornlean-workout-grid article { border:1px solid var(--bl-line); background:#fff; }
.bornlean-workout-head { display:flex; align-items:center; gap:12px; padding:20px; border-bottom:1px solid #d9dadd; }
.bornlean-workout-head span { color:var(--bl-red-dark); font-size:.62rem; font-weight:800; }
.bornlean-workout-head h3 { font-size:1.65rem; }
.bornlean-workout-grid ol { margin:0; padding:10px 20px 20px 52px; }
.bornlean-workout-grid li { padding:10px 0; border-bottom:1px solid #e3e4e5; font-size:.71rem; }
.bornlean-workout-grid li:last-child { border-bottom:0; }
.bornlean-workout-grid li strong,
.bornlean-workout-grid li small { display:block; }
.bornlean-workout-grid li small { margin-top:3px; color:var(--bl-muted); font-size:.58rem; }
.bornlean-safety-strip,
.bornlean-privacy-note { margin-top:17px; padding:20px; border-left:4px solid var(--bl-red); background:var(--bl-ink); color:#fff; }
.bornlean-safety-strip strong,
.bornlean-privacy-note strong { font-family:"Barlow Condensed","Arial Narrow",sans-serif; font-size:1.25rem; text-transform:uppercase; }
.bornlean-safety-strip p,
.bornlean-privacy-note p { margin:5px 0 0; color:#aeb1b4; font-size:.7rem; line-height:1.55; }
.bornlean-privacy-note a { color:var(--bl-red); font-weight:800; }
.bornlean-empty-state { min-height:260px; padding:35px; border-left:4px solid var(--bl-red); background:#fff; }
.bornlean-empty-state strong { display:block; font-family:"Barlow Condensed","Arial Narrow",sans-serif; font-size:2rem; text-transform:uppercase; }
.bornlean-empty-state p { max-width:650px; color:var(--bl-muted); font-size:.78rem; line-height:1.65; }
.bornlean-empty-state .button { margin-top:12px; }
.bornlean-card { padding:26px; border:1px solid var(--bl-line); background:#fff; }
.bornlean-alert { margin-bottom:18px; padding:20px; border-left:4px solid var(--bl-red); background:#fcecee; }
.bornlean-alert p { margin-bottom:0; }
.bornlean-history { margin-top:17px; }
.bornlean-table-wrap { overflow-x:auto; }
.bornlean-progress-table { width:100%; border-collapse:collapse; font-size:.75rem; }
.bornlean-progress-table th,
.bornlean-progress-table td { padding:12px; border-bottom:1px solid var(--bl-line); text-align:left; }
.bornlean-progress-table th { color:var(--bl-muted); font-size:.61rem; text-transform:uppercase; }
.bornlean-progress-table td small { color:var(--bl-muted); }
.bornlean-progress-table td form { margin:0; }
.bornlean-progress-table td button { width:30px; height:30px; border:1px solid var(--bl-line); background:transparent; cursor:pointer; }
.bornlean-progress-table td button:hover { border-color:var(--bl-red); background:var(--bl-red); color:#fff; }
.bornlean-saved-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.bornlean-saved-grid article { display:grid; grid-template-columns:160px 1fr; min-height:175px; border:1px solid var(--bl-line); background:#fff; }
.bornlean-saved-image { display:block; min-height:175px; background:#151515; }
.bornlean-saved-image img { width:100%; height:100%; object-fit:cover; }
.bornlean-saved-placeholder { display:grid; place-items:center; color:var(--bl-red); font-family:"Barlow Condensed","Arial Narrow",sans-serif; font-size:2.5rem; font-weight:900; }
.bornlean-saved-grid article > div { display:flex; flex-direction:column; align-items:flex-start; padding:20px; }
.bornlean-saved-grid article > div > span { color:var(--bl-red-dark); font-size:.57rem; font-weight:800; text-transform:uppercase; }
.bornlean-saved-grid h3 { margin:10px 0; font-size:1.45rem; line-height:1; }
.bornlean-saved-grid form { margin-top:auto; }
.bornlean-saved-grid button { padding:0 0 4px; border:0; border-bottom:1px solid; background:transparent; cursor:pointer; font-size:.6rem; font-weight:800; text-transform:uppercase; }
.bornlean-profile-form { margin-top:0; }
.bornlean-consent-box { margin:10px 0; padding:22px; border:1px solid var(--bl-line); }
.bornlean-consent-box legend { padding:0 8px; font-family:"Barlow Condensed","Arial Narrow",sans-serif; font-size:1.4rem; font-weight:900; text-transform:uppercase; }
.bornlean-consent-box label + label { margin-top:14px; }
.bornlean-consent-box p { color:var(--bl-muted); font-size:.72rem; }
.bornlean-data-controls { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; }
.bornlean-data-controls article { display:flex; min-height:315px; flex-direction:column; align-items:flex-start; padding:25px; border:1px solid var(--bl-line); background:#fff; }
.bornlean-data-controls article > span { color:var(--bl-red-dark); font-family:"Barlow Condensed","Arial Narrow",sans-serif; font-size:1.6rem; }
.bornlean-data-controls article .bornlean-label { margin-top:30px; }
.bornlean-data-controls h3 { margin:7px 0; font-size:1.7rem; }
.bornlean-data-controls p:not(.bornlean-label) { color:var(--bl-muted); font-size:.68rem; line-height:1.55; }
.bornlean-data-controls .button,
.bornlean-data-controls form { margin-top:auto; }
.bornlean-data-controls .button { min-height:42px; font-size:.67rem; }
.bornlean-danger { border-color:#d3a6aa!important; background:#fff6f6!important; }
.bornlean-danger .button { border-color:#c3222c; background:#fff; color:#8b0710; }
.bornlean-danger .button:hover { background:#c3222c; color:#fff; }
.bornlean-empty { color:var(--bl-muted); }

.bornlean-tool-intro { max-width:780px; margin-bottom:35px; }
.bornlean-tool-intro h2 { font-size:clamp(3rem,7vw,5.2rem); }
.bornlean-tools .tool-inputs { display:flex; flex-direction:column; align-items:stretch; }
.bornlean-tools .tool-inputs .button { align-self:flex-start; margin-top:24px; }
.bornlean-tools .tool-tabs button b { font-size:1.2rem; }

@media (max-width:1100px) {
  .bornlean-account-shell { grid-template-columns:225px minmax(0,1fr); }
  .bornlean-overview-grid { grid-template-columns:1fr; }
  .bornlean-stat-grid { grid-template-columns:1fr 1fr; }
  .bornlean-data-controls { grid-template-columns:1fr 1fr; }
  .bornlean-recent { grid-column:auto; }
}
@media (max-width:820px) {
  .bornlean-account-shell { grid-template-columns:1fr; }
  .bornlean-account-sidebar { min-height:0; }
  .bornlean-account-person { min-height:80px; }
  .bornlean-dashboard-tabs { grid-template-columns:repeat(3,1fr); }
  .bornlean-dashboard-tabs button { grid-template-columns:24px 1fr; border-left:0; border-bottom:2px solid transparent; }
  .bornlean-dashboard-tabs button.active { border-bottom-color:var(--bl-red); border-left-color:transparent; }
  .bornlean-dashboard-tabs button b { display:none; }
  .bornlean-account-sidebar-foot { display:none; }
  .bornlean-member-panel { padding:22px; }
  .bornlean-plan-summary { grid-template-columns:1fr 1fr; }
  .bornlean-workout-grid,
  .bornlean-saved-grid { grid-template-columns:1fr; }
  .bornlean-data-controls { grid-template-columns:1fr; }
}
@media (max-width:560px) {
  .bornlean-auth-card { padding:23px; box-shadow:9px 9px 0 rgba(10,10,10,.06); }
  .bornlean-form-grid,
  .bornlean-stat-grid,
  .bornlean-plan-summary { grid-template-columns:1fr; }
  .bornlean-dashboard-tabs { grid-template-columns:1fr 1fr; padding:8px; }
  .bornlean-dashboard-tabs button { min-height:45px; padding:0 8px; }
  .bornlean-account-toolbar { padding:0 17px; }
  .bornlean-account-toolbar > div > span { display:none; }
  .bornlean-account-toolbar > a { width:42px; overflow:hidden; padding:0; justify-content:center; font-size:0; }
  .bornlean-account-toolbar > a::after { font-size:1rem; content:"↗"; }
  .bornlean-member-panel { padding:15px; }
  .bornlean-welcome { min-height:310px; align-items:flex-start; flex-direction:column; padding:27px 22px; }
  .bornlean-welcome h2 { font-size:3.5rem; }
  .bornlean-week-badge { min-width:0; }
  .bornlean-prescription { grid-template-columns:1fr; }
  .bornlean-prescription span { border-right:0; border-bottom:1px solid #333; }
  .bornlean-panel-heading { align-items:stretch; flex-direction:column; }
  .bornlean-panel-heading .button { width:100%; }
  .bornlean-saved-grid article { grid-template-columns:1fr; }
  .bornlean-saved-image { min-height:190px; height:190px; }
  .bornlean-card { padding:19px; }
}
