/**
 * WDHC Soft UI · professional rounded surfaces
 * Load LAST sitewide (after wdhc-nav.css / wdhc-mobile.css).
 * Pattern: soft translucent borders, shadow depth, 12–16px radii — no nested outlines.
 */

:root {
  --wdhc-radius-xs: 8px;
  --wdhc-radius-sm: 10px;
  --wdhc-radius: 16px;
  --wdhc-radius-lg: 20px;
  --wdhc-radius-pill: 999px;
  --wdhc-border-soft: rgba(255, 255, 255, 0.08);
  --wdhc-border-muted: rgba(255, 255, 255, 0.05);
  --wdhc-border-accent: rgba(212, 175, 55, 0.2);
  --wdhc-border-bronze: rgba(205, 127, 50, 0.26);
  --wdhc-shadow-soft: 0 4px 20px rgba(0, 0, 0, 0.32);
  --wdhc-shadow-card: 0 10px 36px rgba(0, 0, 0, 0.38);
  --wdhc-shadow-inset: inset 0 1px 0 rgba(255, 255, 255, 0.045);
  --wdhc-focus-ring: 0 0 0 3px rgba(212, 175, 55, 0.18);
  --border: var(--wdhc-border-soft);
  --wdhc-border: var(--wdhc-border-soft);
}

/* ── Grip Age calculator: remove double outline on index ── */
.sidebar-calc-column .sidebar-card {
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

.grip-calc-widget {
  margin: 16px !important;
  padding: 18px 16px 20px !important;
  background: linear-gradient(155deg, rgba(205, 127, 50, 0.07) 0%, rgba(12, 12, 12, 0.98) 55%) !important;
  border: 1px solid var(--wdhc-border-bronze) !important;
  border-radius: var(--wdhc-radius) !important;
  box-shadow: var(--wdhc-shadow-soft), var(--wdhc-shadow-inset) !important;
}

.sidebar-calc-column .grip-calc-explainer {
  margin: 0 16px 16px !important;
}

.grip-calc-field input,
.grip-calc-field select,
.calc-field input,
.calc-field select {
  border: 1px solid var(--wdhc-border-soft) !important;
  border-radius: var(--wdhc-radius-sm) !important;
  background: rgba(255, 255, 255, 0.04) !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.grip-calc-field input:focus,
.grip-calc-field select:focus,
.calc-field input:focus,
.calc-field select:focus,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: none !important;
  border-color: var(--wdhc-border-accent) !important;
  box-shadow: var(--wdhc-focus-ring) !important;
}

.grip-calc-result-wrap,
.result-panel {
  border-top-color: var(--wdhc-border-muted) !important;
}

.grip-calc-explainer summary {
  border: 1px solid var(--wdhc-border-accent) !important;
  border-radius: var(--wdhc-radius-sm) !important;
  background: rgba(212, 175, 55, 0.05) !important;
}

/* ── Index leaderboard surfaces ── */
.leaderboard,
.leaderboard-panel,
.leaderboard-container,
.lb-panel {
  border-radius: var(--wdhc-radius) !important;
  border-color: var(--wdhc-border-soft) !important;
  box-shadow: var(--wdhc-shadow-soft), var(--wdhc-shadow-inset) !important;
}

.division-tabs,
.lb-tab-strip.division-tabs {
  border-radius: var(--wdhc-radius-sm) !important;
  border-color: var(--wdhc-border-soft) !important;
}

.division-tabs button,
.lb-tab-strip.division-tabs button {
  border-radius: var(--wdhc-radius-xs) !important;
}

.search-input,
.lb-toolbar-search .search-input,
.lb-gym-select {
  border-radius: var(--wdhc-radius-sm) !important;
  border-color: var(--wdhc-border-soft) !important;
}

.sidebar-card:not(.sidebar-calc-column .sidebar-card) {
  border: 1px solid var(--wdhc-border-soft) !important;
  border-radius: var(--wdhc-radius) !important;
  box-shadow: var(--wdhc-shadow-card) !important;
  background: rgba(8, 8, 8, 0.92) !important;
}

.sidebar-header {
  border-bottom-color: var(--wdhc-border-muted) !important;
}

.video-submissions-section,
.cta-section,
.post-video-card,
.post-video-rules-card,
.about-highlight,
.tier-legend-panel,
.compare-panel,
.wdhc-section-panel,
main .card,
main .card-highlight,
.wdhc-card-min,
.container.card,
.form-section,
.submit-card {
  border-radius: var(--wdhc-radius) !important;
}

.video-submissions-section,
.cta-section,
.post-video-card,
.tier-legend-panel,
.compare-panel {
  border: 1px solid var(--wdhc-border-soft) !important;
  box-shadow: var(--wdhc-shadow-soft), var(--wdhc-shadow-inset) !important;
}

.video-carousel-btn {
  border-radius: var(--wdhc-radius-pill) !important;
  border-color: var(--wdhc-border-accent) !important;
}

.video-submission-card,
.video-card,
.lb-card {
  border-radius: var(--wdhc-radius-sm) !important;
  border-color: var(--wdhc-border-soft) !important;
}

/* Search, filters, sort controls */
.search-box input,
.lb-search input,
.filter-select,
.sort-btn,
.lb-filter-btn,
.status-pill,
.tier-pill,
.tier-pill-btn {
  border-radius: var(--wdhc-radius-sm) !important;
  border-color: var(--wdhc-border-soft) !important;
}

.sort-btn.active,
.lb-filter-btn.active {
  border-color: var(--wdhc-border-accent) !important;
}

/* Leaderboard rows */
.lb-row,
.lb-h,
.details-panel,
.athlete-details-panel {
  border-color: var(--wdhc-border-muted) !important;
}

.lb-row:hover {
  background: rgba(255, 255, 255, 0.025) !important;
}

/* Buttons & CTAs */
.nav-cta,
.cta-btn,
.btn-primary,
.mobile-submit-bar,
.cw-preset-btn,
button[type="submit"]:not(.unstyled) {
  border-radius: var(--wdhc-radius-sm) !important;
}

.nav-center a {
  border-radius: var(--wdhc-radius-sm) !important;
}

/* Marquee: glowing rails owned by wdhc-secondary.css (no flat border override) */
.marquee-container,
.wdhc-marquee {
  border: none !important;
}

/* Nav bottom line stacks on marquee top — let marquee own the upper rail */
nav:has(+ .wdhc-marquee),
nav:has(+ .mobile-submit-bar + .wdhc-marquee),
nav:has(+ .marquee-container),
nav:has(+ .mobile-submit-bar + .marquee-container) {
  border-bottom-color: transparent !important;
  box-shadow: none !important;
}

/* Secondary page panels (wdhc-secondary already borderless — reinforce) */
.wdhc-section-panel,
main .card,
main .card-highlight {
  border: none !important;
  border-radius: var(--wdhc-radius) !important;
  box-shadow: var(--wdhc-shadow-soft), var(--wdhc-shadow-inset) !important;
}

.wdhc-page-hero__visual,
.wdhc-visual-break__item,
.wdhc-stat-strip__cell {
  border: 1px solid var(--wdhc-border-soft) !important;
  border-radius: var(--wdhc-radius) !important;
}

.wdhc-stat-strip__cell {
  background: rgba(255, 255, 255, 0.025) !important;
}

/* Submit page */
.container {
  border-radius: var(--wdhc-radius-lg) !important;
  border-color: var(--wdhc-border-soft) !important;
  box-shadow: var(--wdhc-shadow-card) !important;
}

.form-group input,
.form-group select,
.form-group textarea,
.form-input,
.form-select {
  border-radius: var(--wdhc-radius-sm) !important;
  border-color: var(--wdhc-border-soft) !important;
}

/* Compare widget */
.cw-your-time,
.cw-picker-input,
.cw-result-card {
  border-radius: var(--wdhc-radius-sm) !important;
  border-color: var(--wdhc-border-soft) !important;
}

.cw-presets {
  border-bottom-color: var(--wdhc-border-muted) !important;
}

/* Athlete portal calculator */
.gripage-calc-widget {
  border-radius: var(--wdhc-radius-lg) !important;
  border-color: var(--wdhc-border-soft) !important;
  box-shadow: var(--wdhc-shadow-card) !important;
}

.gripage-input-group input,
.gripage-input-group select {
  border-radius: var(--wdhc-radius-sm) !important;
  border-color: var(--wdhc-border-soft) !important;
}

/* Tier badges — slightly rounder */
.tier-badge {
  border-radius: var(--wdhc-radius-xs) !important;
}

/* Footer */
footer {
  border-top-color: var(--wdhc-border-muted) !important;
}

/* About section — single soft divider, no box */
.about-wdhc-section {
  border-top-color: var(--wdhc-border-accent) !important;
  border-bottom-color: var(--wdhc-border-muted) !important;
}

.about-founder-photo img {
  box-shadow: 0 8px 28px rgba(0, 0, 0, 0.45), 0 0 0 1px rgba(212, 175, 55, 0.15) !important;
}

/* Athlete portal dashboard */
.dashboard-card,
.portal-panel,
.glass-card,
.stat-card {
  border-radius: var(--wdhc-radius) !important;
  border-color: var(--wdhc-border-soft) !important;
}