/* Choruku.fit — Ice White Strength UI (v1.37.3)
   UI-only reskin. Existing HTML structure, app logo, IDs and JS hooks preserved.
*/
:root {
  --bg: #f4f6f8;
  --bg-secondary: #eef1f5;
  --bg-tertiary: #e8edf3;
  --card: #ffffff;
  --card-alt: #f8fafc;
  --ink: #111827;
  --ink-strong: #070b12;
  --muted: #64748b;
  --muted-light: #94a3b8;
  --line: #e2e8f0;
  --line-strong: #cbd5e1;
  --primary: #1769e0;
  --primary-strong: #0f54bf;
  --primary-soft: #eaf2ff;
  --success: #239653;
  --warning: #e89b17;
  --danger: #dc3545;
  --shadow-sm: 0 2px 8px rgba(15, 23, 42, .06);
  --shadow-md: 0 10px 28px rgba(15, 23, 42, .09);
  --shadow-lg: 0 24px 60px rgba(15, 23, 42, .14);
  --radius: 16px;
  --tab-h: 72px;
}

* { box-sizing: border-box; }
html, body {
  background:
    repeating-linear-gradient(115deg, rgba(23,105,224,.09) 0px, rgba(23,105,224,.09) 1.5px, transparent 1.5px, transparent 34px),
    repeating-linear-gradient(25deg, rgba(23,105,224,.06) 0px, rgba(23,105,224,.06) 1.5px, transparent 1.5px, transparent 46px),
    linear-gradient(180deg, #eef5ff 0%, #f8fafc 100%) !important;
  background-attachment: fixed, fixed, fixed !important;
  color: var(--ink) !important;
  font-family: Roboto, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body { letter-spacing: 0; }
button, input, select, textarea { font-family: inherit !important; }
.app-shell {
  background: transparent !important;
  color: var(--ink) !important;
  box-shadow: var(--shadow-lg) !important;
  border-color: var(--line) !important;
}
.screen {
  background: transparent !important;
  color: var(--ink) !important;
}

/* Typography */
h1, h2, h3, h4, h5, h6, strong, b,
.page-title, .section-title, .home-plan-name, .home-date-value,
.plan-item-info strong, .day-parent-header, .superset-title-row {
  color: var(--ink-strong) !important;
}
p, span, div, label, small { border-color: var(--line); }
.muted, .tiny, .eyebrow, .plan-item-info span, .auth-secure,
.home-nav-subtitle, .home-plan-meta { color: var(--muted) !important; }
a, .sheet-link, .feedback-link { color: var(--primary) !important; }

/* Headers */
.page-header, .settings-header {
  background: #fff !important;
  color: var(--ink) !important;
  border: 1px solid var(--line) !important;
  border-radius: var(--radius) !important;
  box-shadow: var(--shadow-sm) !important;
}
.page-header h1, .settings-header h1 { color: var(--ink-strong) !important; }
.back-btn, .signout-pill {
  background: #fff !important;
  color: var(--ink) !important;
  border: 1px solid var(--line-strong) !important;
  box-shadow: var(--shadow-sm) !important;
}

/* Surfaces */
.card, .home-date-card, .home-plan-card, .home-nav-card, .exercise-row,
.exercise-card, .plan-item, .modal-card, .stats-form, .stats-field-wrap,
.choice-btn, .notice, .tip-box, .exercise-tip-box, .settings-advanced,
.photo-upload-row, .photo-preview, .day-picker-cards, .day-editor,
.target-set-row, .superset-block, .sub-exercise, .gif-modal-content,
.workout-day-card, .day-choice-card, .day-picker-card {
  background: #fff !important;
  color: var(--ink) !important;
  border: 1px solid var(--line) !important;
  border-radius: var(--radius) !important;
  box-shadow: var(--shadow-sm) !important;
}
.card:hover, .home-nav-card:hover, .plan-item:hover {
  border-color: #c5d5ea !important;
  box-shadow: var(--shadow-md) !important;
}

/* Inputs */
input, textarea, select, .day-name-input, .workout-name-input,
.exercise-name-input, .exercise-notes-input, .target-weight-input,
.target-reps-input {
  background: #fff !important;
  color: var(--ink-strong) !important;
  border: 1px solid var(--line-strong) !important;
  border-radius: 12px !important;
  box-shadow: inset 0 1px 2px rgba(15,23,42,.04) !important;
}
input::placeholder, textarea::placeholder { color: var(--muted-light) !important; opacity: 1 !important; }
input:focus, textarea:focus, select:focus {
  outline: none !important;
  border-color: var(--primary) !important;
  box-shadow: 0 0 0 3px rgba(23,105,224,.14) !important;
}
select option { background: #fff; color: var(--ink); }
input:disabled, textarea:disabled, select:disabled { background: #f1f5f9 !important; color: var(--muted) !important; }
label { color: #334155 !important; }

/* Buttons */
.primary-btn, .primary-google, .start-workout-btn, .log-save-btn,
.plans-create-btn, .delete-confirm-yes-btn, .update-now-btn,
.pwa-banner-install-btn, .start-plan-start-btn {
  background: linear-gradient(180deg, #2d7df0 0%, var(--primary) 55%, var(--primary-strong) 100%) !important;
  color: #fff !important;
  border: 1px solid #0f5cc9 !important;
  border-radius: 12px !important;
  font-weight: 700 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.26), 0 5px 12px rgba(23,105,224,.20) !important;
  text-shadow: none !important;
}
.primary-btn:hover, .primary-google:hover, .start-workout-btn:hover,
.log-save-btn:hover, .plans-create-btn:hover, .start-plan-start-btn:hover { filter: brightness(1.04); transform: translateY(-1px); }
.primary-btn:active, .primary-google:active, .start-workout-btn:active,
.log-save-btn:active, .plans-create-btn:active, .start-plan-start-btn:active { transform: translateY(1px); box-shadow: inset 0 2px 4px rgba(0,0,0,.12) !important; }
.secondary-btn, .secondary-google, .icon-btn, .choice-btn, .update-later-btn,
.pwa-done-btn, .round-btn, .trash-icon-btn, .collapse-icon-btn {
  background: linear-gradient(180deg, #fff 0%, #f3f6f9 100%) !important;
  color: var(--ink) !important;
  border: 1px solid var(--line-strong) !important;
  border-radius: 12px !important;
  box-shadow: inset 0 1px 0 #fff, 0 3px 8px rgba(15,23,42,.07) !important;
}
.secondary-btn:hover, .icon-btn:hover, .back-btn:hover { background: #f8fafc !important; border-color: #b8c5d4 !important; }
button:disabled { opacity: .48 !important; color: var(--muted) !important; }
.plan-delete-btn, .delete-data-btn { background: #fff1f2 !important; color: #c81e35 !important; border: 1px solid #fecdd3 !important; }
.plan-edit-btn { background: #fff !important; color: var(--primary) !important; border: 1px solid #bfdbfe !important; }

/* Logo and brand — logo asset itself is intentionally untouched; brand text stays green (styles.css) */
.brand-logo, .home-logo { color: var(--primary) !important; }

/* Authentication */
.auth-screen { background: #f4f6f8 !important; }
.auth-top {
  background: linear-gradient(180deg, #eef5ff 0%, #f8fafc 100%) !important;
  color: var(--ink) !important;
}
.auth-bottom { background: #fff !important; border-top: 1px solid var(--line) !important; }
.auth-logo-wrap {
  background: #fff !important;
  border: 1px solid var(--line) !important;
  box-shadow: var(--shadow-md) !important;
}
.auth-title, .auth-title span { color: var(--ink-strong) !important; }
.auth-title span { color: var(--primary) !important; }
.auth-tagline, .auth-feature p { color: var(--muted) !important; }
.auth-feature-icon {
  background: var(--primary-soft) !important;
  color: var(--primary) !important;
  border: 1px solid #d8e7ff !important;
  box-shadow: none !important;
}
.google-btn { min-height: 54px; }

/* Home / dashboard */
.home-hero {
  background: linear-gradient(145deg, #ffffff 0%, #f2f6fb 100%) !important;
  color: var(--ink) !important;
  border: 1px solid var(--line) !important;
  box-shadow: var(--shadow-md) !important;
  border-radius: 22px !important;
}
.home-hero:after { background: radial-gradient(circle, rgba(23,105,224,.10), transparent 68%) !important; }
.home-hero h1, .home-hero p, .home-plan-name, .home-date-value { color: var(--ink-strong) !important; }
.home-nav-icon, .home-plan-icon, .home-nav-arrow {
  background: var(--primary-soft) !important;
  color: var(--primary) !important;
  border: 1px solid #d8e7ff !important;
  box-shadow: none !important;
}

/* Plans */
.plan-item { padding: 16px !important; }
.plan-actions { display: grid !important; grid-template-columns: 1.25fr .9fr .9fr !important; gap: 10px !important; }
.plan-actions button { min-width: 0 !important; white-space: normal !important; line-height: 1.15 !important; }
.plan-item-divider { border-color: var(--line) !important; }
.day-editor { overflow: hidden !important; }
.day-parent-header { background: #f8fafc !important; border-bottom: 1px solid var(--line) !important; }
.exercise-row { background: #fff !important; padding: 12px !important; }
.exercise-row-header { background: transparent !important; }
.exercise-name-input { font-weight: 700 !important; }
.target-set-row { background: transparent !important; box-shadow: none !important; border: 0 !important; }
.set-number { color: var(--primary) !important; font-weight: 800 !important; }
.superset-block { background: #f8fafc !important; border-color: var(--line-strong) !important; padding: 12px !important; }
.superset-title-row, .superset-title-row span { color: var(--primary) !important; }
.day-picker-goal { background: #f4f8ff !important; border: 1px solid #cfe0fb !important; color: var(--ink) !important; }
.day-picker-goal-label { color: var(--primary) !important; }
.day-picker-goal-text { color: #334155 !important; }
.day-picker-cards { background: transparent !important; border: 0 !important; box-shadow: none !important; }
.day-picker-card *, .day-choice-card *, .workout-day-card * { color: inherit; }

/* Timer */
.log-timer-panel, .workout-timer-card, .timer-display {
  background: linear-gradient(180deg, #fff 0%, #f6f9fc 100%) !important;
  border: 1px solid var(--line) !important;
  box-shadow: var(--shadow-md) !important;
}
.log-timer-digits, .timer-digits, #rest-timer-display {
  color: var(--ink-strong) !important;
  text-shadow: none !important;
  font-family: Roboto, system-ui, sans-serif !important;
  font-variant-numeric: tabular-nums;
}
#exercise-timer-display {
  text-shadow: none !important;
  font-family: Roboto, system-ui, sans-serif !important;
  font-variant-numeric: tabular-nums;
}
.log-timer-icon, .log-timer-icon-btn { color: var(--primary) !important; }
.log-bottom-bar {
  background: rgba(255,255,255,.96) !important;
  border-top: 1px solid var(--line) !important;
  box-shadow: 0 -10px 30px rgba(15,23,42,.08) !important;
  backdrop-filter: blur(18px);
}
.log-footer-row { background: #fff !important; border: 1px solid var(--line) !important; box-shadow: var(--shadow-sm) !important; }

/* Charts and progress */
.chart-card, .progress-card, .stats-card { background: #fff !important; border-color: var(--line) !important; }
canvas { filter: none !important; }
.range-pill.active, .segmented-control .active, .filter-pill.active {
  background: var(--primary) !important;
  color: #fff !important;
  border-color: var(--primary) !important;
}

/* Navigation */
.tab-bar {
  background: rgba(255,255,255,.97) !important;
  color: var(--muted) !important;
  border-top: 1px solid var(--line) !important;
  box-shadow: 0 -8px 24px rgba(15,23,42,.07) !important;
  backdrop-filter: blur(20px);
}
.tab-item { color: #68778a !important; }
.tab-item.active { color: var(--primary) !important; }
.tab-item.active .tab-icon { filter: none !important; transform: translateY(-1px); }

/* Modals */
.modal-overlay { background: rgba(15,23,42,.42) !important; backdrop-filter: blur(8px); }
.modal-card { box-shadow: var(--shadow-lg) !important; }
.gif-modal-content { background: #fff !important; color: var(--ink) !important; }

/* Status colors */
.success, .positive, .completed, .check-icon { color: var(--success) !important; }
.warning { color: var(--warning) !important; }
.danger, .error { color: var(--danger) !important; }

@media (min-width: 760px) {
  body { padding: 24px; background: radial-gradient(circle at 50% 0%, #f8fafc 0%, #e6ebf1 72%) fixed !important; }
  .app-shell {
    border-radius: 30px;
    overflow: hidden;
    border: 1px solid #d8dee7 !important;
    box-shadow: 0 35px 90px rgba(15,23,42,.18) !important;
  }
}

@media (max-width: 480px) {
  .page-header h1, .plans-header h1 { font-size: clamp(22px, 7vw, 30px) !important; }
  .plan-actions { grid-template-columns: 1.2fr .9fr .9fr !important; gap: 8px !important; }
  .plan-actions button { font-size: 13px !important; padding: 10px 6px !important; }
  .auth-title { font-size: clamp(32px, 10vw, 46px) !important; }
}


/* ===== v1.37.4 consolidated Ice White QA fixes ===== */
:root{--primary:#1769e0;--primary-strong:#0f56c3;--primary-soft:#eaf2ff;--ink:#172033;--ink-strong:#0b1220;--muted:#64748b;--line:#dbe4ef;--line-strong:#cbd7e5;--surface:#f7f9fc;--surface-2:#eef3f8}
*{font-family:Roboto,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}

/* Welcome: approved Soft Lines treatment (this exact pattern is now also
   baked directly into the html,body background above, app-wide) */
.auth-top{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(180deg,#f6f9ff 0%,#fbfdff 100%)!important}
.auth-top::before,.auth-top::after{content:"";position:absolute;inset:-18%;z-index:-1;pointer-events:none;background:repeating-radial-gradient(ellipse at 10% 15%,transparent 0 25px,rgba(23,105,224,.07) 26px 27px,transparent 28px 48px);transform:rotate(-9deg) scale(1.15)}
.auth-top::after{inset:48% -30% -25% 15%;opacity:.65;transform:rotate(12deg) scale(1.3)}

/* Onboarding selections must be unmistakable */
.choice-btn.selected,.choice-btn[aria-pressed="true"]{background:linear-gradient(180deg,#2d7df0 0%,#1769e0 100%)!important;color:#fff!important;border-color:#0f56c3!important;box-shadow:0 0 0 3px rgba(23,105,224,.16),0 7px 16px rgba(23,105,224,.22)!important}
.choice-btn.selected::after{content:"✓";margin-left:10px;font-weight:900}

/* Home dynamic greeting + current plan proportions */
.home-hero-left{min-width:0}
#welcomeName{font-size:clamp(26px,8.5vw,46px)!important;line-height:1.02!important;max-width:100%;overflow-wrap:anywhere;word-break:normal}
.home-plan-card{grid-template-columns:auto minmax(0,1fr) auto!important;gap:12px!important}
.home-plan-info{min-width:0!important}
.home-plan-name{font-size:clamp(20px,5.8vw,30px)!important;line-height:1.08!important;overflow-wrap:anywhere}
.start-workout-btn{width:50%!important;max-width:142px!important;min-width:104px!important;display:grid!important;grid-template-columns:1fr!important;gap:0!important;place-items:center!important;line-height:1.02!important;padding:12px 10px!important;font-size:17px!important;white-space:normal!important}
.start-workout-btn .start-arrow{font-size:22px;line-height:1;margin-top:2px}

/* Progress page fully aligned with Ice White */
#stats-screen{background:#f7f9fc!important;color:var(--ink)!important}
#stats-screen .stat-form,#stats-screen .card,#stats-screen .chart-card{background:#fff!important;border:1px solid var(--line)!important;box-shadow:0 5px 16px rgba(15,23,42,.06)!important}
#stats-screen .privacy-note{background:#eef5ff!important;color:#52657d!important;border:1px solid #d7e6fb!important}
#stats-screen input,#stats-screen select,#stats-screen .stats-field-wrap,#stats-screen .photo-upload-row,#stats-screen .photo-preview{background:#fff!important;color:var(--ink)!important;border-color:var(--line-strong)!important}
#stats-screen label,#stats-screen h2,#stats-screen h3{color:var(--ink-strong)!important}

/* Plan editor alignment and accidental empty control removal */
#plan-editor-screen>.card{padding:20px!important}
#editPlanName,#editPlanGoal{width:100%!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box!important}
#editPlanGoal{padding:14px!important;min-height:112px!important}
.superset-block:empty{display:none!important}
.plan-save-bar .primary-btn{font-size:20px!important}

/* Tools, calculator and countdown timer */
#tools-screen,#calorie-calculator-screen,#timer-setup-screen,#timer-exercise-screen,#timer-rest-screen{background:#f7f9fc!important;color:var(--ink)!important}
.ice-tool-card,.tools-menu-item{background:#fff!important;border:1px solid var(--line)!important;box-shadow:0 5px 16px rgba(15,23,42,.06)!important}
#calorie-calculator-screen .card,#timer-setup-screen .card{background:#fff!important;border:1px solid var(--line)!important;box-shadow:0 5px 16px rgba(15,23,42,.06)!important}
#timer-setup-screen [style*="background: #eaf2ff"],#timer-setup-screen [style*="background:#eaf2ff"]{background:#eaf2ff!important}
#timer-exercise-screen,#timer-rest-screen{background:linear-gradient(180deg,#f7faff 0%,#edf4ff 100%)!important}
#exercise-duration-display,#cycles-display{color:var(--primary)!important}

/* Settings reconstruction */
#settings-screen{background:#f7f9fc!important;color:var(--ink)!important}
#settings-screen>.card{background:transparent!important;border:0!important;box-shadow:none!important;padding:16px!important}
#settings-screen label{display:block!important;color:#334155!important;font-size:14px!important;font-weight:700!important;margin:15px 0 7px!important}
#settings-screen input,#settings-screen textarea,#settings-screen select{display:block!important;width:100%!important;min-height:50px!important;background:#fff!important;color:var(--ink-strong)!important;border:1px solid var(--line-strong)!important;border-radius:12px!important;padding:12px 14px!important;box-sizing:border-box!important}
#settings-screen .settings-advanced{background:#fff!important;border:1px solid var(--line)!important;padding:16px!important;margin:18px 0!important;border-radius:16px!important}
#settings-screen .sheet-link,#settings-screen .feedback-link{display:flex!important;align-items:center!important;justify-content:center!important;min-height:48px!important;background:#fff!important;border:1px solid var(--line)!important;border-radius:12px!important;text-decoration:none!important;padding:10px 14px!important}
#settings-screen .delete-data-section,#settings-screen .feedback-link-section,#settings-screen .version-info-section{margin-top:14px!important}
#settings-screen button{box-sizing:border-box}

/* Global legacy-theme safety net */
[style*="#1f6b44"],[style*="#132118"]{color:var(--primary)!important}
[style*="#e7f4ed"],[style*="#f3f5f0"]{background:#f7f9fc!important}

@media(max-width:430px){
 .home-plan-card{gap:9px!important;padding:16px 12px!important}
 .home-plan-icon{width:58px!important;height:58px!important}
 .start-workout-btn{max-width:116px!important;min-width:96px!important;font-size:16px!important}
 #plan-editor-screen>.card{padding:16px!important}
}
