.bmts-wrap{background:radial-gradient(circle at top,#171717,#090909 60%);color:#fff;padding:24px;border-radius:24px;border:1px solid rgba(249,189,33,.22);margin:20px 0;font-family:Inter,Arial,sans-serif;box-shadow:0 18px 50px rgba(0,0,0,.32)}
.bmts-section-title{font-size:30px;font-weight:800;margin-bottom:18px;color:#f9bd21;letter-spacing:.2px}.bmts-cards,.bmts-stat-grid,.bmts-badge-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.bmts-card,.bmts-stat-card,.bmts-badge-card,.bmts-chart-box,.bmts-level-box{background:linear-gradient(180deg,#141414,#0a0a0a);padding:18px;border-radius:18px;border:1px solid rgba(249,189,33,.16)}
.bmts-card-locked{opacity:.55;filter:grayscale(.15)}.bmts-card h3{margin:8px 0 10px;font-size:20px;color:#fff}.bmts-week-badge,.bmts-level-pill{display:inline-block;background:#f9bd21;color:#000;padding:6px 12px;border-radius:999px;font-weight:800;font-size:13px}
.bmts-meta{margin-top:12px;color:#f3d56a}.bmts-toolbar,.bmts-form-grid,.bmts-dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:18px}.bmts-dashboard-grid{grid-template-columns:1fr 1.2fr}
label,.bmts-toolbar label,.bmts-form-grid label{display:block;font-weight:700;color:#f9bd21}.bmts-toolbar select,.bmts-toolbar input,.bmts-form-grid textarea,.bmts-note,.bmts-resistance,.bmts-date,.bmts-week-select,.bmts-payload-field{width:100%;margin-top:8px;background:#050505;color:#fff;border:1px solid rgba(249,189,33,.35);border-radius:14px;padding:12px;font-size:15px;box-sizing:border-box}
.bmts-grid-table{display:grid;grid-template-columns:2fr .8fr 1fr 2fr;gap:10px;align-items:start}.bmts-grid-head{font-weight:800;color:#f9bd21;padding:6px 4px}.bmts-grid-cell{background:#111;border:1px solid rgba(249,189,33,.15);padding:12px;border-radius:14px}
.bmts-done-btn,.bmts-save-form{background:#f9bd21;color:#000;border:none;border-radius:14px;padding:12px 16px;font-weight:800;cursor:pointer;width:100%;box-shadow:0 6px 18px rgba(249,189,33,.18)}.bmts-done-btn.bmts-complete{background:#fff3c4}
.bmts-mini-note{margin-top:14px;color:#ddd;font-size:14px}.bmts-stat-card span{display:block;color:#ddd;margin-bottom:8px}.bmts-stat-card strong{font-size:30px;color:#f9bd21}.bmts-progress-bar{height:12px;background:#1f1f1f;border-radius:999px;overflow:hidden;margin:12px 0}.bmts-progress-bar span{display:block;height:100%;background:linear-gradient(90deg,#f9d971,#f9bd21);border-radius:999px}
.bmts-chart{display:flex;align-items:flex-end;gap:10px;height:220px;padding-top:16px}.bmts-bar-group{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1;min-width:0}.bmts-bar{width:100%;max-width:42px;background:linear-gradient(180deg,#f9d45d,#f9bd21);border-radius:10px 10px 0 0;min-height:12px}.bmts-bar-value,.bmts-bar-label{font-size:12px;color:#ddd;text-align:center}
.bmts-svg-chart{width:100%;height:220px;background:linear-gradient(180deg,rgba(249,189,33,.05),transparent);border-radius:14px}.bmts-axis-labels{display:grid;grid-template-columns:repeat(12,1fr);font-size:12px;color:#d8d8d8;margin-top:8px;text-align:center}
.bmts-ring{--bmts-p:0;width:180px;height:180px;margin:0 auto;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#f9bd21 calc(var(--bmts-p)*1%),#262626 0);position:relative}.bmts-ring:before{content:'';width:126px;height:126px;border-radius:50%;background:#0f0f0f;display:block;position:absolute}.bmts-ring span{position:relative;z-index:1;font-size:30px;font-weight:800;color:#f9bd21}
.bmts-gold{background:#f9bd21;color:#000}.bmts-gold .bmts-section-title,.bmts-gold label{color:#000}.bmts-gold .bmts-payload-field,.bmts-gold .bmts-date,.bmts-gold .bmts-week-select{background:#fff;color:#000;border:1px solid rgba(0,0,0,.15)}.bmts-gold .bmts-save-form{background:#000;color:#f9bd21}
.bmts-badge-card{text-align:center}.bmts-badge-icon{font-size:34px;margin-bottom:8px}.bmts-badge-label{font-weight:800;color:#f9bd21}.bmts-badge-desc{font-size:13px;color:#ddd;margin-top:6px}.bmts-level-top{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.bmts-empty{padding:16px;border:1px dashed rgba(249,189,33,.25);border-radius:16px;color:#ddd}
.bmts-leaderboard-table{width:100%;border-collapse:collapse}.bmts-leaderboard-table th,.bmts-leaderboard-table td{padding:10px;border-bottom:1px solid rgba(249,189,33,.14);text-align:left}.bmts-current-user{background:rgba(249,189,33,.08)}
.bmts-popup-overlay{position:fixed;inset:0;background:rgba(0,0,0,.7);display:none;align-items:center;justify-content:center;z-index:99999;padding:20px}.bmts-popup{background:radial-gradient(circle at top,#1b1b1b,#080808 70%);color:#fff;max-width:460px;width:92%;border-radius:28px;padding:26px;border:2px solid #f9bd21;text-align:center;box-shadow:0 22px 60px rgba(0,0,0,.45)}.bmts-popup-topline{display:inline-block;padding:6px 12px;border-radius:999px;background:rgba(249,189,33,.14);color:#f9bd21;font-weight:700;font-size:12px;letter-spacing:.3px;margin-bottom:14px}.bmts-popup img{width:96px;height:96px;object-fit:cover;border-radius:999px;border:4px solid #f9bd21;margin-bottom:14px}.bmts-popup h4{margin:0 0 10px;color:#f9bd21;font-size:30px}.bmts-popup p{margin:0 0 16px;font-size:17px;line-height:1.45}.bmts-popup .bmts-reward{margin:10px 0 14px;padding:10px 14px;border-radius:16px;background:rgba(249,189,33,.09);border:1px solid rgba(249,189,33,.2)}.bmts-popup button{background:#f9bd21;color:#000;border:none;border-radius:14px;padding:12px 18px;font-weight:800;cursor:pointer;min-width:170px}
.bmts-login-notice,.bmts-lock-notice{background:#111;color:#fff;padding:16px;border-left:4px solid #f9bd21;border-radius:12px}.bmts-lock-notice{margin:20px 0}
@media (max-width:900px){.bmts-dashboard-grid{grid-template-columns:1fr}}@media (max-width:767px){.bmts-grid-table{grid-template-columns:1fr}}


/* ===== Version 3.2 visibility fixes ===== */
.bmts-chart-box h3,
.bmts-level-box h3,
.bmts-badge-card h3,
.bmts-leaderboard h3,
.bmts-wrap h3 {
    color:#f9bd21 !important;
    font-size:28px;
    font-weight:800;
    line-height:1.2;
    letter-spacing:.2px;
    margin:0 0 18px;
    text-shadow:0 1px 0 rgba(0,0,0,.35);
}

.bmts-chart-box h3::after,
.bmts-level-box h3::after,
.bmts-wrap h3::after {
    content:'';
    display:block;
    width:58px;
    height:3px;
    margin-top:10px;
    border-radius:999px;
    background:linear-gradient(90deg,#f9d971,#f9bd21);
}

/* Make white fields and dropdowns readable */
.bmts-wrap input[type="text"],
.bmts-wrap input[type="date"],
.bmts-wrap input[type="number"],
.bmts-wrap input[type="email"],
.bmts-wrap textarea,
.bmts-wrap select,
.bmts-wrap option,
.wrap .bmts-wrap input[type="text"],
.wrap .bmts-wrap input[type="date"],
.wrap .bmts-wrap input[type="number"],
.wrap .bmts-wrap input[type="email"],
.wrap .bmts-wrap textarea,
.wrap .bmts-wrap select,
.wrap .bmts-wrap option,
.wrap .form-table input[type="text"],
.wrap .form-table input[type="number"],
.wrap .form-table input[type="email"],
.wrap .form-table textarea,
.wrap .form-table select,
.wrap .form-table option,
#bmts-user-filter {
    color:#000 !important;
    background:#fff !important;
    -webkit-text-fill-color:#000 !important;
}

.bmts-wrap input::placeholder,
.bmts-wrap textarea::placeholder,
.wrap .form-table input::placeholder,
.wrap .form-table textarea::placeholder {
    color:#444 !important;
    opacity:1;
}

/* Keep dark-theme fields readable too */
.bmts-toolbar select,
.bmts-toolbar input,
.bmts-form-grid textarea,
.bmts-note,
.bmts-resistance,
.bmts-date,
.bmts-week-select,
.bmts-payload-field {
    color:#000 !important;
    background:#fff !important;
    -webkit-text-fill-color:#000 !important;
}

/* Dashboard card title spacing on smaller screens */
@media (max-width: 767px) {
    .bmts-chart-box h3,
    .bmts-level-box h3,
    .bmts-wrap h3 {
        font-size:24px;
    }
}


/* ===== Version 3.4 popup image rotation ===== */
.bmts-popup .bmts-popup-coach{
    width:110px;
    height:110px;
    object-fit:cover;
    object-position:center top;
    border-radius:999px;
    border:4px solid #f9bd21;
    margin:0 auto 14px;
    display:block;
    transform:none !important;
}
