:root{
  --smp-bg:#f5f7fb;
  --smp-app:#ffffff;
  --smp-surface:#ffffff;
  --smp-surface-soft:#f8fafc;
  --smp-surface-blue:#eef5ff;
  --smp-text:#111827;
  --smp-heading:#0b1220;
  --smp-muted:#667085;
  --smp-muted-strong:#475467;
  --smp-line:#e4e7ec;
  --smp-line-strong:#d0d5dd;
  --smp-primary:#111827;
  --smp-primary-hover:#020617;
  --smp-blue:#2563eb;
  --smp-blue-dark:#1d4ed8;
  --smp-blue-soft:#eff6ff;
  --smp-danger:#dc2626;
  --smp-danger-soft:#fef2f2;
  --smp-warning:#d97706;
  --smp-warning-soft:#fffbeb;
  --smp-success:#16a34a;
  --smp-success-soft:#f0fdf4;
  --smp-radius:22px;
  --smp-radius-sm:16px;
  --smp-shadow:0 18px 48px rgba(15,23,42,.08);
  --smp-shadow-sm:0 8px 24px rgba(15,23,42,.06);
  --smp-focus:0 0 0 4px rgba(37,99,235,.16);
}

.smp,.smp *{box-sizing:border-box}
.smp{font-family:"Inter","Nunito Sans","Aptos","Segoe UI",Roboto,Arial,sans-serif;color:var(--smp-text);line-height:1.55;padding:10px;background:transparent;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.smp :where(h1,h2,h3,p){margin-top:0}
.smp p{color:var(--smp-muted);font-size:.96rem;margin-bottom:0}
.smp a{color:inherit}
.smp [id]{scroll-margin-top:96px}
.smp-app{max-width:1180px;margin:0 auto;background:var(--smp-bg);border:1px solid var(--smp-line);border-radius:30px;padding:12px;box-shadow:var(--smp-shadow)}
.smp-stack,.smp-grid,.smp-grid-main,.smp-coach-layout,.smp-dashboard-split{display:grid;grid-template-columns:1fr;gap:16px;align-content:start}

.smp-app-tabs{position:sticky;top:0;z-index:30;display:flex;gap:8px;overflow:auto;padding:8px;margin:-4px -4px 14px;background:rgba(245,247,251,.94);backdrop-filter:blur(12px);border:1px solid var(--smp-line);border-radius:22px;box-shadow:0 10px 26px rgba(15,23,42,.05);scrollbar-width:none}
.smp-app-tabs::-webkit-scrollbar{display:none}
.smp-app-tabs a{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 14px;border-radius:999px;background:#fff;border:1px solid var(--smp-line);color:var(--smp-text)!important;text-decoration:none!important;font-weight:760;font-size:.9rem;letter-spacing:-.01em;transition:border-color .16s ease,background .16s ease,transform .16s ease,box-shadow .16s ease,color .16s ease}
.smp-app-tabs a:hover,.smp-app-tabs a:focus{border-color:#bfdbfe;background:var(--smp-blue-soft);color:var(--smp-blue-dark)!important;box-shadow:var(--smp-shadow-sm);outline:0;transform:translateY(-1px)}
.smp-athlete-bottom-nav{margin:-4px -4px 14px}

.smp-hero{display:grid;grid-template-columns:1fr;gap:18px;align-items:center;overflow:hidden;padding:22px;border-radius:28px;background:linear-gradient(135deg,#fff 0%,#f8fafc 62%,#eef5ff 100%);border:1px solid var(--smp-line);box-shadow:var(--smp-shadow-sm)}
.smp-hero-copy{display:grid;gap:10px;min-width:0}
.smp-eyebrow{display:block;margin-bottom:4px;font-size:.72rem;letter-spacing:.13em;text-transform:uppercase;font-weight:850;color:var(--smp-blue-dark)}
.smp h1{font-size:clamp(2rem,7vw,3.45rem);line-height:1.03;letter-spacing:-.04em;margin:0;color:var(--smp-heading);font-weight:830}
.smp h2{font-size:clamp(1.2rem,3.3vw,1.65rem);line-height:1.18;letter-spacing:-.028em;margin:0;color:var(--smp-heading);font-weight:820}
.smp h3{font-size:1.02rem;line-height:1.25;margin:0;color:var(--smp-heading);font-weight:780}
.smp-hero p{max-width:760px;color:var(--smp-muted-strong);font-size:1rem}
.smp-avatar{width:92px;height:92px;border-radius:28px;object-fit:cover;border:4px solid #fff;box-shadow:0 18px 34px rgba(15,23,42,.12);background:#fff}
.smp-coach-avatar{width:104px;height:104px;border-radius:30px}
.smp-chip-row,.smp-hero-actions,.smp-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.smp-chip,.smp-badge,.smp-status-badge{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:32px;padding:6px 11px;border-radius:999px;background:#fff;border:1px solid var(--smp-line);color:var(--smp-text);font-size:.78rem;font-weight:760;box-shadow:0 4px 12px rgba(15,23,42,.04);font-style:normal;text-align:center;white-space:nowrap}
.smp-status-badge{background:var(--smp-blue-soft);color:var(--smp-blue-dark);border-color:#bfdbfe}

.smp-card,.smp-stat{background:var(--smp-surface);border:1px solid var(--smp-line);border-radius:var(--smp-radius);padding:18px;box-shadow:var(--smp-shadow-sm)}
.smp-card{scroll-margin-top:96px}
.smp-card-routine{padding:0;overflow:hidden}
.smp-card-routine>.smp-athlete-routine-slot{padding:18px}
.smp-section-head{display:grid;grid-template-columns:1fr;gap:12px;margin-bottom:16px;align-items:start}
.smp-section-head .smp-badge,.smp-section-head .smp-mini-btn{justify-self:start}
.smp-card-toolbar{display:flex;gap:10px;align-items:center;justify-content:flex-start;margin:0 0 16px}
.smp-stat-grid{display:grid;grid-template-columns:1fr;gap:12px;margin:14px 0}
.smp-stat{display:grid;gap:5px;min-height:104px;align-content:center}
.smp-stat span,.smp-stat small{color:var(--smp-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;font-weight:760}
.smp-stat strong{font-size:clamp(2rem,8vw,3rem);line-height:1;letter-spacing:-.04em;color:var(--smp-heading);font-weight:840}
.smp-live-dot{display:inline-flex!important;align-items:center;gap:8px;color:var(--smp-success)!important;font-size:1.16rem!important;letter-spacing:-.01em!important;text-transform:none!important}
.smp-live-dot:before{content:"";width:10px;height:10px;border-radius:999px;background:var(--smp-success);box-shadow:0 0 0 6px var(--smp-success-soft)}

.smp-card-summary{list-style:none;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;cursor:pointer;margin:0;padding:0}
.smp-card-summary::-webkit-details-marker{display:none}
.smp-card-summary strong{display:block;font-size:1.13rem;line-height:1.2;letter-spacing:-.02em;color:var(--smp-heading)}
.smp-card-summary:after{content:"+";display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:999px;background:var(--smp-surface-soft);border:1px solid var(--smp-line);color:var(--smp-blue-dark);font-size:1.2rem;font-weight:820}
.smp-card-summary .smp-badge{grid-column:2;grid-row:1}
details[open]>.smp-card-summary{padding-bottom:14px;margin-bottom:16px;border-bottom:1px solid var(--smp-line)}
details[open]>.smp-card-summary:after{content:"–";background:var(--smp-blue);border-color:var(--smp-blue);color:#fff}
.smp-accordion-card{transition:border-color .18s ease,box-shadow .18s ease}
.smp-accordion-card[open]{border-color:#bfdbfe;box-shadow:0 18px 42px rgba(37,99,235,.09)}

.smp label{display:grid;gap:7px;font-size:.75rem;color:var(--smp-muted-strong);font-weight:760;text-transform:uppercase;letter-spacing:.055em}
.smp input,.smp select,.smp textarea{width:100%;min-height:50px;border:1px solid var(--smp-line-strong);border-radius:16px;background:#fff;color:var(--smp-text);font:inherit;font-size:.98rem;font-weight:520;text-transform:none;letter-spacing:0;padding:12px 14px;outline:none;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}
.smp textarea{min-height:112px;resize:vertical}
.smp input:focus,.smp select:focus,.smp textarea:focus{border-color:var(--smp-blue);box-shadow:var(--smp-focus)}
.smp input[readonly]{background:var(--smp-surface-soft);color:var(--smp-muted)}
.smp-form-grid,.smp-form-grid-2,.smp-form-grid-3,.smp-profile-form,.smp-coach-routine-form,.smp-routine-form,.smp-template-form{display:grid;grid-template-columns:1fr;gap:13px}
.smp-span-2{grid-column:1/-1}
.smp-form-message{min-height:20px;margin:10px 0 0;font-weight:760}
.smp-form-message.is-ok{color:var(--smp-success)}
.smp-form-message.is-error{color:var(--smp-danger)}
.smp-help{font-size:.88rem;line-height:1.58;margin:12px 0 0;color:var(--smp-muted);background:var(--smp-surface-soft);border:1px solid var(--smp-line);border-radius:16px;padding:12px 14px}
.smp-help-compact{margin:-6px 0 14px;padding:10px 12px}
.smp-check{display:flex!important;align-items:flex-start;gap:10px;text-transform:none!important;letter-spacing:0!important;color:var(--smp-text)!important;line-height:1.45}
.smp-check input{width:18px!important;min-height:18px!important;margin-top:2px}

.smp .button,.smp button,.smp-primary,.smp-secondary,.smp input[type="submit"]{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:48px;border-radius:999px!important;padding:0 18px!important;font-weight:780;text-decoration:none!important;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease,color .16s ease;letter-spacing:0;border:1px solid transparent!important;text-align:center;font-family:inherit}
.smp-primary,.smp .button-primary{background:var(--smp-primary)!important;color:#fff!important;border-color:var(--smp-primary)!important;box-shadow:0 12px 24px rgba(17,24,39,.16)!important}
.smp-primary:hover,.smp .button-primary:hover{background:var(--smp-primary-hover)!important;transform:translateY(-1px)}
.smp-secondary,.smp .button:not(.button-primary){background:#fff!important;color:var(--smp-text)!important;border-color:var(--smp-line-strong)!important;box-shadow:0 8px 18px rgba(15,23,42,.05)!important}
.smp-secondary:hover{border-color:#93c5fd!important;color:var(--smp-blue-dark)!important;transform:translateY(-1px)}
.smp button:disabled,.smp input:disabled,.smp select:disabled,.smp textarea:disabled{opacity:.58;cursor:not-allowed}
.smp-mini-btn{min-height:38px!important;padding:0 13px!important;font-size:.82rem!important;width:auto!important}
.smp.is-busy,.smp .is-busy{cursor:wait}

.smp-athlete-list{display:grid;grid-template-columns:1fr;gap:12px}
.smp-athlete-item{display:grid;grid-template-columns:1fr;gap:0}
.smp-athlete-card{width:100%;display:grid!important;grid-template-columns:58px minmax(0,1fr) auto!important;gap:12px!important;align-items:center!important;text-align:left!important;min-height:82px!important;padding:12px!important;border-radius:20px!important;background:#fff!important;color:var(--smp-text)!important;border:1px solid var(--smp-line)!important;box-shadow:0 8px 18px rgba(15,23,42,.04)!important;text-transform:none!important;letter-spacing:0!important}
.smp-athlete-card:hover,.smp-athlete-card:focus{border-color:#93c5fd!important;box-shadow:0 14px 28px rgba(37,99,235,.10)!important;transform:translateY(-1px);outline:0}
.smp-athlete-card.is-active{border-color:var(--smp-blue)!important;background:linear-gradient(180deg,#fff,#f8fbff)!important;box-shadow:0 16px 32px rgba(37,99,235,.14)!important}
.smp-athlete-card img{width:58px;height:58px;border-radius:18px;object-fit:cover;border:2px solid #fff;box-shadow:0 6px 16px rgba(15,23,42,.10)}
.smp-athlete-card span{display:grid;gap:2px;min-width:0}
.smp-athlete-card strong{font-size:1.02rem;color:var(--smp-heading);font-weight:820;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.smp-athlete-card small{font-size:.83rem;color:var(--smp-muted);font-weight:600;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.smp-trend{display:inline-flex;align-items:center;justify-content:center;min-height:30px;border-radius:999px;padding:5px 10px;background:var(--smp-surface-soft);border:1px solid var(--smp-line);font-style:normal;font-size:.74rem;color:var(--smp-muted-strong);font-weight:800;text-transform:capitalize;white-space:nowrap}
.smp-trend-subida{background:var(--smp-success-soft);color:var(--smp-success);border-color:#bbf7d0}
.smp-trend-bajada{background:var(--smp-danger-soft);color:var(--smp-danger);border-color:#fecaca}
.smp-trend-mantenimiento{background:var(--smp-blue-soft);color:var(--smp-blue-dark);border-color:#bfdbfe}
.smp-athlete-accordion{margin:10px 0 6px 0;padding:0 0 0 0;border-left:3px solid #bfdbfe}
.smp-athlete-accordion[hidden]{display:none!important}
.smp-athlete-accordion:not([hidden]){display:block;animation:smpFadeIn .18s ease-out}
@keyframes smpFadeIn{from{opacity:.3;transform:translateY(-3px)}to{opacity:1;transform:none}}
.smp-inline-detail-stack{display:grid;grid-template-columns:1fr;gap:12px;padding-left:12px}
.smp-inline-card,.smp-athlete-file-card{background:#fff;border:1px solid var(--smp-line);border-radius:20px;padding:16px;box-shadow:0 8px 22px rgba(15,23,42,.05)}
.smp-inline-card-head{display:grid;grid-template-columns:1fr;gap:10px;align-items:center;margin-bottom:12px}
.smp-file-head{display:grid;grid-template-columns:56px 1fr;gap:12px;align-items:center;margin-bottom:14px}
.smp-file-head img{width:56px;height:56px;border-radius:18px;object-fit:cover;box-shadow:0 6px 16px rgba(15,23,42,.10)}
.smp-file-head strong{display:block;color:var(--smp-heading);font-size:1.12rem;font-weight:830;letter-spacing:-.02em}
.smp-file-head small{color:var(--smp-muted)}
.smp-file-grid,.smp-readonly-profile,.smp-target-grid,.smp-result-grid,.smp-metrics,.smp-progress-kpis{display:grid;grid-template-columns:1fr;gap:10px}
.smp-file-grid span,.smp-readonly-profile span,.smp-target-grid span,.smp-metrics span,.smp-progress-kpis span{display:grid;gap:3px;padding:12px;border:1px solid var(--smp-line);border-radius:16px;background:var(--smp-surface-soft)}
.smp-file-grid small,.smp-readonly-profile small,.smp-target-grid small,.smp-metrics small,.smp-progress-kpis small{color:var(--smp-muted);font-size:.72rem;font-weight:760;text-transform:uppercase;letter-spacing:.06em}
.smp-file-grid b,.smp-readonly-profile b,.smp-target-grid b,.smp-metrics b,.smp-progress-kpis b{font-size:1.12rem;line-height:1.1;color:var(--smp-heading);font-weight:830;word-break:break-word}
.smp-metrics{margin:12px 0}
.smp-metrics b{font-size:1.45rem}

.smp-tab-buttons{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.smp-tab-buttons button{width:auto!important;min-height:38px!important;padding:0 12px!important;border-radius:999px!important;background:#fff!important;color:var(--smp-muted-strong)!important;border:1px solid var(--smp-line)!important;box-shadow:none!important;font-size:.82rem!important}
.smp-tab-buttons button.is-active{background:var(--smp-primary)!important;color:#fff!important;border-color:var(--smp-primary)!important}
.smp-tab-panel{display:none}
.smp-tab-panel.is-active{display:block}
.smp-inner-details{border:1px solid var(--smp-line);border-radius:16px;padding:12px;margin-top:12px;background:var(--smp-surface-soft)}
.smp-inner-details summary{cursor:pointer;font-weight:800;color:var(--smp-heading)}
.smp-note-block{margin-top:12px;padding:12px 14px;border:1px solid var(--smp-line);border-radius:16px;background:var(--smp-blue-soft)}
.smp-note-block small{display:block;color:var(--smp-blue-dark);font-weight:830;text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;margin-bottom:4px}
.smp-note-block p{color:var(--smp-text)}

.smp-builder-row,.smp-exercise{position:relative;display:grid;grid-template-columns:1fr;gap:12px;padding:14px;border:1px solid var(--smp-line);border-radius:18px;background:var(--smp-surface-soft);margin-top:12px}
.smp-remove-exercise{position:absolute;top:10px;right:10px;width:34px!important;height:34px!important;min-height:34px!important;padding:0!important;border-radius:999px!important;background:#fff!important;color:var(--smp-danger)!important;border-color:#fecaca!important;box-shadow:0 4px 12px rgba(15,23,42,.06)!important;font-size:1.2rem!important}
.smp-exercise-list{display:grid;grid-template-columns:1fr;gap:14px}
.smp-exercise{background:#fff;margin-top:0}
.smp-exercise-title{display:grid;grid-template-columns:36px 1fr;gap:12px;align-items:center}
.smp-exercise-title span{display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;border-radius:12px;background:var(--smp-primary);color:#fff;font-weight:820}
.smp-exercise-notes{padding:12px;border:1px solid var(--smp-line);border-radius:14px;background:var(--smp-surface-soft);color:var(--smp-muted-strong)!important}
.smp-routine-head{display:grid;grid-template-columns:1fr;gap:10px;align-items:start;margin-bottom:16px}
.smp-complete{margin-top:14px}

.smp-completion-list,.smp-feed-list,.smp-calendar-list,.smp-alert-list,.smp-exercise-library-list,.smp-template-list,.smp-activity-list,.smp-mini-history{display:grid;grid-template-columns:1fr;gap:10px}
.smp-completion-card,.smp-feed-item,.smp-activity-item,.smp-mini-history>div,.smp-calendar-list>*,.smp-alert-list>*{border:1px solid var(--smp-line);border-radius:16px;background:#fff;padding:12px;box-shadow:0 4px 14px rgba(15,23,42,.04)}
.smp-feed-item summary{cursor:pointer;display:grid;gap:3px;color:var(--smp-heading);font-weight:820}
.smp-completion-card small,.smp-feed-item span,.smp-activity-item small{color:var(--smp-muted)}
.smp-completion-table{display:grid;grid-template-columns:1fr;gap:8px;margin-top:12px}
.smp-completion-table>div{display:grid;gap:2px;padding:10px 12px;border:1px solid var(--smp-line);border-radius:14px;background:var(--smp-surface-soft)}
.smp-completion-table b{color:var(--smp-heading)}
.smp-completion-table span,.smp-completion-table small{color:var(--smp-muted)}
.smp-activity-item{display:grid;grid-template-columns:1fr;gap:10px}
.smp-activity-metrics{display:flex;gap:6px;flex-wrap:wrap}
.smp-activity-metrics span{display:inline-flex;border:1px solid var(--smp-line);border-radius:999px;background:var(--smp-surface-soft);padding:5px 9px;font-size:.8rem;font-weight:760;color:var(--smp-text)}
.smp-template-picker{width:100%;display:grid!important;text-align:left!important;justify-content:stretch!important;min-height:auto!important;border-radius:16px!important;background:#fff!important;color:var(--smp-text)!important;border:1px solid var(--smp-line-strong)!important;box-shadow:none!important;text-transform:none!important;letter-spacing:0!important;padding:12px!important}
.smp-template-picker.is-active{border-color:var(--smp-blue)!important;box-shadow:var(--smp-focus)!important}
.smp-preview-table{display:grid;gap:8px;margin-top:12px;border:1px solid var(--smp-line);border-radius:16px;padding:12px;background:#fff}
.smp-preview-table>div{display:grid;gap:4px;border-top:1px solid var(--smp-line);padding-top:8px}
.smp-preview-table span{display:block;font-size:.84rem;color:var(--smp-muted)}
.smp-onboarding-card{border-color:#fed7aa;background:#fff7ed}
.smp-loading,.smp-empty{border:1px dashed var(--smp-line-strong);border-radius:18px;background:var(--smp-surface-soft);padding:16px;color:var(--smp-muted)}
.smp-empty strong{display:block;color:var(--smp-heading);font-size:1.02rem;margin-bottom:4px}
.smp-empty-large{padding:24px;text-align:center}
.smp-auth-card{max-width:520px;margin:32px auto;background:#fff;border:1px solid var(--smp-line);border-radius:24px;padding:22px;box-shadow:var(--smp-shadow)}
.smp-register-link{margin-top:12px;text-align:center}

.smp-progress-list,.smp-progress-roster,.smp-progress-detail,.smp-progress-detail-card{display:grid;grid-template-columns:1fr;gap:12px}
.smp-progress-roster{margin-top:4px}
.smp-progress-row{width:100%;display:grid!important;grid-template-columns:1fr!important;gap:12px!important;align-items:stretch!important;text-align:left!important;min-height:auto!important;padding:14px!important;border-radius:20px!important;background:#fff!important;border:1px solid var(--smp-line-strong)!important;color:var(--smp-text)!important;box-shadow:0 8px 20px rgba(15,23,42,.05)!important;text-transform:none!important;letter-spacing:0!important}
.smp-progress-row:hover,.smp-progress-row:focus{transform:translateY(-1px);box-shadow:0 14px 30px rgba(37,99,235,.10)!important;outline:0}
.smp-progress-row>span{display:grid;gap:2px;min-width:0}
.smp-progress-row strong{color:var(--smp-heading);font-weight:820;font-size:1.02rem;letter-spacing:-.015em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.smp-progress-row small{color:var(--smp-muted-strong);font-weight:650;line-height:1.35}
.smp-progress-row>em,.smp-progress-detail-head>em{justify-self:start;display:inline-flex;align-items:center;min-height:30px;padding:5px 10px;border-radius:999px;font-size:.76rem;font-weight:820;font-style:normal;border:1px solid var(--smp-line);background:#fff;color:var(--smp-muted-strong)}
.smp-progress-meter{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;width:100%}
.smp-progress-meter strong{font-size:.98rem;color:var(--smp-heading);font-weight:850;white-space:nowrap}
.smp-progress-track{position:relative;display:block;width:100%;height:12px;border-radius:999px;background:#e5e7eb;border:1px solid var(--smp-line);overflow:hidden}
.smp-progress-track i{display:block;height:100%;min-width:0;border-radius:999px;background:var(--smp-muted);transition:width .25s ease}
.smp-progress-green .smp-progress-track i{background:var(--smp-success)}
.smp-progress-yellow .smp-progress-track i{background:#f59e0b}
.smp-progress-red .smp-progress-track i{background:var(--smp-danger)}
.smp-progress-neutral .smp-progress-track i{background:#9ca3af}
.smp-progress-green{border-color:#bbf7d0!important;background:linear-gradient(180deg,#fff,#f8fff9)!important}
.smp-progress-yellow{border-color:#fde68a!important;background:linear-gradient(180deg,#fff,#fffbeb)!important}
.smp-progress-red{border-color:#fecaca!important;background:linear-gradient(180deg,#fff,#fef2f2)!important}
.smp-progress-neutral{border-color:var(--smp-line-strong)!important;background:#fff!important}
.smp-progress-green>em,.smp-progress-green .smp-progress-detail-head>em{background:var(--smp-success-soft);color:var(--smp-success);border-color:#bbf7d0}
.smp-progress-yellow>em,.smp-progress-yellow .smp-progress-detail-head>em{background:var(--smp-warning-soft);color:var(--smp-warning);border-color:#fde68a}
.smp-progress-red>em,.smp-progress-red .smp-progress-detail-head>em{background:var(--smp-danger-soft);color:var(--smp-danger);border-color:#fecaca}
.smp-progress-detail-card{padding:14px;border:1px solid var(--smp-line-strong);border-radius:20px;box-shadow:0 8px 20px rgba(15,23,42,.04)}
.smp-progress-detail-head{display:grid;grid-template-columns:1fr;gap:10px;align-items:start}
.smp-progress-detail-head strong{display:block;color:var(--smp-heading);font-size:1.08rem;line-height:1.2;letter-spacing:-.02em;font-weight:820}
.smp-progress-detail-head small{display:block;color:var(--smp-muted-strong);font-weight:650;margin-top:3px}
.smp-work-chart{display:grid;grid-template-columns:1fr;gap:10px;margin-top:4px}
.smp-work-chart-row{display:grid;gap:8px;padding:11px 12px;border:1px solid var(--smp-line);border-radius:16px;background:#fff}
.smp-work-chart-head{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}
.smp-work-chart-head span{color:var(--smp-muted-strong);font-weight:760;font-size:.9rem}
.smp-work-chart-head b{color:var(--smp-heading);font-size:.9rem;white-space:nowrap}

.smp-video-modal{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:18px}
.smp-video-modal.is-open{display:flex}
.smp-video-backdrop{position:absolute;inset:0;background:rgba(17,24,39,.68);backdrop-filter:blur(6px)}
.smp-video-dialog{position:relative;width:min(980px,100%);aspect-ratio:16/9;background:#000;border-radius:22px;box-shadow:0 30px 80px rgba(0,0,0,.32);overflow:hidden}
.smp-video-dialog iframe{width:100%;height:100%;border:0;display:block}
.smp-video-close{position:absolute;top:10px;right:10px;z-index:2;width:42px!important;height:42px!important;min-height:42px!important;padding:0!important;border-radius:999px!important;background:#fff!important;color:#111!important;border:1px solid rgba(255,255,255,.55)!important;box-shadow:0 8px 22px rgba(0,0,0,.22)!important;font-size:1.4rem!important}
.smp-modal-open{overflow:hidden}

@media (max-width:720px){
  .smp{padding:8px}
  .smp-app{border-radius:24px;padding:10px}
  .smp-card,.smp-stat{padding:16px;border-radius:20px}
  .smp-card-routine>.smp-athlete-routine-slot{padding:16px}
  .smp-hero{padding:18px;border-radius:22px}
  .smp h1{font-size:clamp(1.9rem,10vw,2.8rem)}
  .smp-avatar{width:88px;height:88px}
  .smp-coach-avatar{width:96px;height:96px}
  .smp-athlete-card{grid-template-columns:52px minmax(0,1fr)!important}
  .smp-athlete-card .smp-trend{grid-column:2;justify-self:start}
  .smp-card-summary{grid-template-columns:1fr auto}
  .smp-card-summary .smp-badge{display:none}
  .smp-inline-detail-stack{padding-left:10px}
}

@media (min-width:721px){
  .smp{padding:18px}
  .smp-app{padding:16px}
  .smp-card,.smp-stat{padding:24px}
  .smp-card-routine>.smp-athlete-routine-slot{padding:24px}
  .smp-hero{padding:30px;grid-template-columns:auto minmax(0,1fr)}
  .smp-hero-actions{grid-column:1/-1}
  .smp-avatar{width:112px;height:112px}
  .smp-coach-avatar{width:112px;height:112px}
  .smp .button,.smp button,.smp-primary,.smp-secondary,.smp input[type="submit"]{width:auto}
  .smp-section-head{grid-template-columns:1fr auto;align-items:start}
  .smp-inline-card-head{grid-template-columns:1fr auto;align-items:center}
  .smp-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .smp-grid-main,.smp-coach-layout{grid-template-columns:minmax(0,1.16fr) minmax(320px,.84fr)}
  .smp-form-grid-2,.smp-form-grid-3,.smp-result-grid,.smp-target-grid,.smp-file-grid,.smp-readonly-profile,.smp-dashboard-split{grid-template-columns:repeat(2,minmax(0,1fr))}
  .smp-metrics,.smp-progress-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
  .smp-builder-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .smp-progress-row{grid-template-columns:minmax(0,1fr) minmax(190px,280px) auto!important;align-items:center!important}
  .smp-progress-detail-head{grid-template-columns:1fr auto;align-items:center}
}

/* VT1-PERFORMANCE 0.8.5: ajustes solicitados */
.smp-completions-open{
  border-color:#bfdbfe;
  box-shadow:0 18px 42px rgba(37,99,235,.09);
}
.smp-completions-open>.smp-card-summary:after{
  content:"–";
  background:var(--smp-blue);
  border-color:var(--smp-blue);
  color:#fff;
}
.smp-exercise-import-card .smp-subsection{
  display:grid;
  gap:14px;
  padding:16px;
  border:1px solid var(--smp-line);
  border-radius:20px;
  background:linear-gradient(180deg,#fff,#f8fafc);
  box-shadow:0 8px 22px rgba(15,23,42,.035);
}
.smp-exercise-import-card .smp-subsection+.smp-subsection{margin-top:16px}
.smp-section-head-tight{margin-bottom:0}
.smp-import-subsection{border-color:#bfdbfe!important;background:linear-gradient(180deg,#fff,#eff6ff)!important}
.smp-alert-items{display:grid;gap:10px}
.smp-alert-items h3{margin:0 0 2px;color:var(--smp-heading)}
.smp-alert{display:grid!important;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:12px 14px!important;border-radius:16px!important;background:#fff!important}
.smp-alert strong{color:var(--smp-heading);font-size:.98rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.smp-alert time{display:inline-flex;min-height:30px;align-items:center;padding:4px 10px;border-radius:999px;background:var(--smp-surface-soft);border:1px solid var(--smp-line);color:var(--smp-muted-strong);font-weight:780;font-size:.82rem;white-space:nowrap}
.smp-alert-warning{border-color:#fde68a!important}
.smp-alert-info{border-color:#bfdbfe!important}
.smp-progress-card{
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
  border-color:#dbeafe;
}
.smp-progress-card .smp-help{
  background:#fff;
  border-style:solid;
}
.smp-progress-card .smp-card-summary strong{
  letter-spacing:-.025em;
}
.smp-progress-roster{
  gap:14px;
}
.smp-progress-row{
  position:relative;
  overflow:hidden;
  border-radius:22px!important;
  padding:16px!important;
  isolation:isolate;
}
.smp-progress-row:before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:6px;
  background:#94a3b8;
  z-index:0;
}
.smp-progress-row>*{position:relative;z-index:1}
.smp-progress-row.smp-progress-green:before{background:var(--smp-success)}
.smp-progress-row.smp-progress-yellow:before{background:#f59e0b}
.smp-progress-row.smp-progress-red:before{background:var(--smp-danger)}
.smp-progress-row strong{font-size:1.05rem!important}
.smp-progress-row small{display:block;margin-top:2px}
.smp-progress-meter{
  padding:8px 10px;
  border:1px solid var(--smp-line);
  border-radius:999px;
  background:#fff;
}
.smp-progress-meter strong{
  min-width:44px;
  text-align:right;
}
.smp-progress-track{
  height:13px;
  background:#edf2f7;
}
.smp-progress-track i{
  box-shadow:inset 0 -1px 0 rgba(0,0,0,.08);
}
.smp-progress-kpis{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
}
.smp-progress-kpis span{
  display:grid;
  gap:2px;
  padding:12px;
  border-radius:16px;
  border:1px solid var(--smp-line);
  background:#fff;
}
.smp-progress-kpis b{color:var(--smp-heading);font-size:1.25rem;line-height:1;font-weight:850}
.smp-progress-kpis small{color:var(--smp-muted);font-weight:740;text-transform:uppercase;letter-spacing:.06em;font-size:.72rem}
.smp-work-chart-row{
  border-radius:18px;
  box-shadow:0 6px 16px rgba(15,23,42,.035);
}
@media (min-width:721px){
  .smp-progress-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
  .smp-exercise-import-card .smp-subsection{padding:18px}
}

/* VT1-PERFORMANCE 0.8.6: flujo claro para asignar rutina a deportista */
.smp-routine-assignment-card{
  border-color:#c7d2fe;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
}
.smp-routine-assignment-card .smp-coach-routine-form{
  gap:16px;
}
.smp-assign-tabs{
  position:relative;
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  padding:8px;
  margin:0 0 16px;
  border:1px solid var(--smp-line);
  border-radius:18px;
  background:#f8fafc;
}
.smp-assign-tabs button{
  width:100%!important;
  justify-content:center!important;
  border-radius:14px!important;
  min-height:44px!important;
}
.smp-assign-panel{
  padding:16px;
  border:1px solid var(--smp-line);
  border-radius:20px;
  background:#fff;
  box-shadow:0 8px 22px rgba(15,23,42,.035);
}
.smp-step-intro{
  display:grid;
  gap:4px;
  padding:14px;
  margin-bottom:14px;
  border:1px solid var(--smp-line);
  border-radius:18px;
  background:#f8fafc;
}
.smp-step-intro strong{
  color:var(--smp-heading);
  font-size:1rem;
  letter-spacing:-.01em;
}
.smp-step-intro span{
  color:var(--smp-muted-strong);
  font-size:.92rem;
  line-height:1.45;
}
.smp-step-intro-blue{
  background:#eff6ff;
  border-color:#bfdbfe;
}
.smp-assign-quick-select{
  margin-bottom:14px;
}
.smp-assign-athlete-picker{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
}
.smp-assign-athlete-option{
  width:100%!important;
  min-height:84px!important;
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr) auto!important;
  gap:12px!important;
  align-items:center!important;
  text-align:left!important;
  justify-content:stretch!important;
  padding:12px!important;
  border-radius:18px!important;
  background:#fff!important;
  border:1px solid var(--smp-line-strong)!important;
  color:var(--smp-text)!important;
  box-shadow:0 8px 18px rgba(15,23,42,.04)!important;
  text-transform:none!important;
  letter-spacing:0!important;
}
.smp-assign-athlete-option:hover,.smp-assign-athlete-option:focus{
  border-color:#93c5fd!important;
  box-shadow:0 14px 30px rgba(37,99,235,.10)!important;
  transform:translateY(-1px);
  outline:0;
}
.smp-assign-athlete-option.is-selected{
  border-color:var(--smp-blue)!important;
  background:linear-gradient(180deg,#fff,#eff6ff)!important;
  box-shadow:var(--smp-focus)!important;
}
.smp-assign-athlete-option img{
  width:54px;
  height:54px;
  border-radius:16px;
  object-fit:cover;
  border:2px solid #fff;
  box-shadow:0 8px 18px rgba(15,23,42,.10);
}
.smp-assign-athlete-option span{
  display:grid;
  gap:2px;
  min-width:0;
}
.smp-assign-athlete-option strong{
  color:var(--smp-heading);
  font-size:1rem;
  font-weight:830;
  line-height:1.2;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.smp-assign-athlete-option small{
  color:var(--smp-muted);
  font-size:.82rem;
  font-weight:640;
  line-height:1.35;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.smp-assign-athlete-option em{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  padding:5px 10px;
  border-radius:999px;
  background:#f8fafc;
  border:1px solid var(--smp-line);
  color:var(--smp-muted-strong);
  font-size:.74rem;
  font-weight:830;
  font-style:normal;
  white-space:nowrap;
}
.smp-assign-athlete-option.is-selected em{
  background:var(--smp-blue);
  border-color:var(--smp-blue);
  color:#fff;
}
.smp-selected-athlete-summary{
  display:grid;
  grid-template-columns:1fr;
  gap:2px;
  margin-top:14px;
  padding:13px 14px;
  border-radius:16px;
  border:1px solid #bfdbfe;
  background:#eff6ff;
}
.smp-selected-athlete-summary strong{
  color:var(--smp-blue-dark);
  font-size:.78rem;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.smp-selected-athlete-summary span{
  color:var(--smp-heading);
  font-weight:780;
}
.smp-routine-toolbar{
  margin:14px 0 0;
}
.smp-routine-actions{
  margin-top:16px;
}
@media (max-width:720px){
  .smp-assign-athlete-option{
    grid-template-columns:48px minmax(0,1fr)!important;
  }
  .smp-assign-athlete-option em{
    grid-column:2;
    justify-self:start;
  }
}
@media (min-width:721px){
  .smp-assign-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .smp-assign-athlete-picker{grid-template-columns:repeat(2,minmax(0,1fr))}
  .smp-routine-actions{justify-content:space-between}
}

/* VT1 0.8.7 - planificación guiada tipo app */
.smp-planner-card .smp-coach-routine-form{gap:18px}
.smp-planner-status{display:grid;grid-template-columns:1fr;gap:8px;margin:0 0 18px;padding:8px;border:1px solid var(--smp-line);border-radius:20px;background:#fff;box-shadow:0 8px 20px rgba(15,23,42,.04)}
.smp-planner-status button{width:100%!important;justify-content:flex-start!important;gap:10px!important;border-radius:16px!important;background:var(--smp-surface-soft)!important;border-color:transparent!important;color:var(--smp-muted-strong)!important;box-shadow:none!important;min-height:48px!important;padding:8px 12px!important;text-align:left!important}
.smp-planner-status button b{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:11px;background:#fff;border:1px solid var(--smp-line);color:var(--smp-blue-dark);font-size:.9rem;line-height:1}
.smp-planner-status button span{font-weight:820;font-size:.9rem}
.smp-planner-status button.is-active{background:var(--smp-blue-soft)!important;color:var(--smp-blue-dark)!important;border-color:#bfdbfe!important;box-shadow:var(--smp-focus)!important}
.smp-planner-status button.is-active b{background:var(--smp-blue)!important;border-color:var(--smp-blue)!important;color:#fff!important}
.smp-step-intro{display:grid;gap:4px;padding:15px 16px;border-radius:20px;border:1px solid var(--smp-line);background:linear-gradient(180deg,#fff,#f8fafc);margin-bottom:14px}
.smp-step-intro strong{font-size:1.05rem;color:var(--smp-heading);font-weight:840;letter-spacing:-.02em}
.smp-step-intro span{color:var(--smp-muted);font-weight:600;font-size:.94rem;line-height:1.45}
.smp-step-intro-blue{border-color:#bfdbfe;background:linear-gradient(180deg,#fff,#eff6ff)}
.smp-planner-actions{margin-top:14px;justify-content:space-between}
.smp-method-grid{display:grid;grid-template-columns:1fr;gap:12px}
.smp-method-card{width:100%!important;display:grid!important;grid-template-columns:1fr auto!important;align-items:start!important;gap:7px 12px!important;min-height:118px!important;padding:16px!important;border-radius:20px!important;text-align:left!important;background:#fff!important;border:1px solid var(--smp-line-strong)!important;color:var(--smp-text)!important;box-shadow:0 8px 22px rgba(15,23,42,.05)!important;text-transform:none!important}
.smp-method-card b{color:var(--smp-heading);font-size:1.02rem;letter-spacing:-.02em;font-weight:840}
.smp-method-card span{grid-column:1/-1;color:var(--smp-muted);font-size:.9rem;line-height:1.45;font-weight:600}
.smp-method-card em{grid-column:2;grid-row:1;justify-self:end;align-self:start;font-style:normal;font-size:.72rem;font-weight:850;padding:6px 10px;border-radius:999px;border:1px solid var(--smp-line);background:var(--smp-surface-soft);color:var(--smp-muted-strong)}
.smp-method-card:hover,.smp-method-card:focus{border-color:#93c5fd!important;box-shadow:0 16px 32px rgba(37,99,235,.10)!important;outline:0;transform:translateY(-1px)}
.smp-method-card.is-selected{border-color:var(--smp-blue)!important;background:linear-gradient(180deg,#fff,#eff6ff)!important;box-shadow:var(--smp-focus)!important}
.smp-method-card.is-selected em{background:var(--smp-blue)!important;border-color:var(--smp-blue)!important;color:#fff!important}
.smp-assignment-template-panel,.smp-import-shortcut{margin-top:14px;padding:14px;border:1px solid var(--smp-line);border-radius:20px;background:#fff;box-shadow:0 8px 22px rgba(15,23,42,.04)}
.smp-import-shortcut{display:grid;gap:8px;background:linear-gradient(180deg,#fff,#f8fafc)}
.smp-import-shortcut strong{color:var(--smp-heading);font-size:1rem;font-weight:840}
.smp-import-shortcut p{font-size:.9rem}
.smp-assignment-template-grid,.smp-template-select-list{display:grid;grid-template-columns:1fr;gap:10px}
.smp-assignment-template-card,.smp-template-picker{width:100%!important;display:grid!important;grid-template-columns:1fr auto!important;gap:4px 10px!important;align-items:center!important;text-align:left!important;min-height:74px!important;padding:13px 14px!important;border-radius:18px!important;background:#fff!important;border:1px solid var(--smp-line)!important;color:var(--smp-text)!important;box-shadow:0 6px 16px rgba(15,23,42,.04)!important;text-transform:none!important}
.smp-assignment-template-card strong,.smp-template-picker strong{color:var(--smp-heading);font-weight:830;letter-spacing:-.02em}
.smp-assignment-template-card small,.smp-template-picker small{color:var(--smp-muted);font-weight:640}
.smp-assignment-template-card em,.smp-template-picker em{grid-column:2;grid-row:1/3;font-style:normal;border-radius:999px;padding:6px 10px;background:var(--smp-surface-soft);border:1px solid var(--smp-line);font-size:.72rem;font-weight:840;color:var(--smp-muted-strong)}
.smp-assignment-template-card:hover,.smp-template-picker:hover{border-color:#93c5fd!important;box-shadow:0 12px 24px rgba(37,99,235,.09)!important;transform:translateY(-1px)}
.smp-assignment-template-card.is-selected,.smp-template-picker.is-active{border-color:var(--smp-blue)!important;background:var(--smp-blue-soft)!important;box-shadow:var(--smp-focus)!important}
.smp-assignment-template-card.is-selected em,.smp-template-picker.is-active em{background:var(--smp-blue)!important;color:#fff!important;border-color:var(--smp-blue)!important}
.smp-planner-shell{display:grid;grid-template-columns:1fr;gap:14px;align-items:start}
.smp-planner-main{min-width:0}
.smp-planner-preview{position:relative;display:grid;gap:10px;padding:16px;border-radius:20px;border:1px solid #bfdbfe;background:linear-gradient(180deg,#fff,#eff6ff);box-shadow:0 10px 24px rgba(37,99,235,.08)}
.smp-planner-preview strong{font-size:1.08rem;color:var(--smp-heading);font-weight:840;letter-spacing:-.02em}
.smp-planner-preview p{font-size:.88rem;color:var(--smp-muted-strong)}
.smp-preview-kpis{display:grid;grid-template-columns:1fr;gap:8px}
.smp-preview-kpis span{display:grid;gap:2px;padding:10px;border-radius:14px;border:1px solid var(--smp-line);background:#fff}
.smp-preview-kpis b{font-size:.94rem;color:var(--smp-heading);font-weight:830;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.smp-preview-kpis small{font-size:.7rem;color:var(--smp-muted);font-weight:780;text-transform:uppercase;letter-spacing:.06em}
.smp-preview-exercises{display:grid;gap:6px;padding-top:4px}
.smp-preview-exercises span{display:block;padding:8px 10px;border-radius:12px;background:#fff;border:1px solid var(--smp-line);color:var(--smp-muted-strong);font-size:.84rem;font-weight:680}
.smp-assign-submit{min-height:54px!important;background:var(--smp-blue)!important;border-color:var(--smp-blue)!important;box-shadow:0 14px 28px rgba(37,99,235,.20)!important}
.smp-assign-submit:hover{background:var(--smp-blue-dark)!important}

@media (min-width:721px){
  .smp-planner-status{grid-template-columns:repeat(3,minmax(0,1fr))}
  .smp-method-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .smp-assignment-template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .smp-planner-shell{grid-template-columns:minmax(0,1fr) 320px}
  .smp-planner-preview{position:sticky;top:96px}
  .smp-preview-kpis{grid-template-columns:1fr}
}
@media (min-width:980px){
  .smp-planner-shell{grid-template-columns:minmax(0,1fr) 360px}
}

/* VT1-PERFORMANCE 0.8.8 - asignación de rutinas tipo app, manteniendo Google Sheets/CSV */
.smp-planner-pro-card{
  border-color:#b9cffd!important;
  background:linear-gradient(180deg,#ffffff 0%,#f7faff 100%)!important;
}
.smp-planner-guide{
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
  padding:16px;
  margin:0 0 18px;
  border:1px solid #dbeafe;
  border-radius:22px;
  background:linear-gradient(135deg,#fff 0%,#f8fafc 56%,#eff6ff 100%);
  box-shadow:0 12px 28px rgba(37,99,235,.08);
}
.smp-planner-guide strong{
  display:block;
  color:var(--smp-heading);
  font-size:1.08rem;
  line-height:1.25;
  letter-spacing:-.025em;
  font-weight:850;
}
.smp-planner-guide p{margin-top:6px;color:var(--smp-muted-strong);font-size:.92rem;line-height:1.5}
.smp-planner-live-summary,
.smp-selected-athlete-summary{
  display:grid;
  gap:4px;
  align-content:center;
  min-height:72px;
  padding:14px 16px;
  border-radius:18px;
  border:1px solid #bfdbfe;
  background:#ffffff;
  box-shadow:0 10px 24px rgba(37,99,235,.07);
}
.smp-planner-live-summary[hidden],
.smp-selected-athlete-summary[hidden]{display:none!important}
.smp-planner-live-summary strong,
.smp-selected-athlete-summary strong{
  color:var(--smp-blue-dark);
  font-size:.72rem;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:850;
}
.smp-planner-live-summary span,
.smp-selected-athlete-summary span{color:var(--smp-heading);font-size:1rem;font-weight:820;line-height:1.25}
.smp-assign-controls{display:grid;grid-template-columns:1fr;gap:12px;margin-bottom:14px}
.smp-assign-search input{padding-left:42px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23667085' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") no-repeat 14px center!important}
.smp-assign-athlete-picker{max-height:460px;overflow:auto;padding:2px 3px 8px;scrollbar-width:thin}
.smp-assign-athlete-option{position:relative}
.smp-assign-athlete-option:before{
  content:"";
  position:absolute;
  inset:10px auto 10px 8px;
  width:4px;
  border-radius:999px;
  background:#e5e7eb;
  transition:background .16s ease;
}
.smp-assign-athlete-option.is-selected:before{background:var(--smp-blue)}
.smp-assign-athlete-option[hidden]{display:none!important}
.smp-planner-status{position:sticky;top:68px;z-index:20;background:rgba(255,255,255,.94);backdrop-filter:blur(10px)}
.smp-planner-status button{position:relative}
.smp-planner-status button.is-active:after{
  content:"";
  position:absolute;
  left:14px;right:14px;bottom:-9px;
  height:3px;
  border-radius:999px;
  background:var(--smp-blue);
}
.smp-method-card{min-height:132px!important}
.smp-method-card[data-assignment-method="import"]{border-style:dashed!important;background:linear-gradient(180deg,#fff,#f8fafc)!important}
.smp-method-card[data-assignment-method="import"].is-selected{background:linear-gradient(180deg,#fff,#eff6ff)!important}
.smp-planner-preview{border-color:#c7d2fe!important;background:linear-gradient(180deg,#ffffff,#f8fbff)!important}
.smp-planner-preview:before{
  content:"Resumen de asignación";
  display:inline-flex;
  justify-self:start;
  min-height:26px;
  align-items:center;
  padding:4px 9px;
  border-radius:999px;
  background:#111827;
  color:#fff;
  font-size:.7rem;
  font-weight:850;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.smp-library-list{display:grid;grid-template-columns:1fr;gap:10px;margin-top:12px}
.smp-library-item{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  align-items:center;
  padding:13px 14px;
  border:1px solid var(--smp-line);
  border-radius:18px;
  background:#fff;
  box-shadow:0 8px 18px rgba(15,23,42,.04);
}
.smp-library-item strong{display:block;color:var(--smp-heading);font-weight:830;letter-spacing:-.015em}
.smp-library-item small{display:block;color:var(--smp-muted);font-weight:640;line-height:1.35;margin-top:2px}
.smp-library-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:flex-start}
.smp-library-actions em{display:inline-flex;align-items:center;min-height:30px;padding:5px 9px;border:1px solid #bfdbfe;border-radius:999px;background:var(--smp-blue-soft);color:var(--smp-blue-dark);font-style:normal;font-weight:830;font-size:.72rem}
.smp-inline-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-start;align-items:center}
.smp-start-assign{border-color:#bfdbfe!important;color:var(--smp-blue-dark)!important;background:#eff6ff!important}
.smp-routine-actions{position:sticky;bottom:10px;z-index:12;padding:10px;border:1px solid var(--smp-line);border-radius:18px;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);box-shadow:0 14px 34px rgba(15,23,42,.12)}
@media (min-width:721px){
  .smp-planner-guide{grid-template-columns:minmax(0,1fr) minmax(240px,320px);align-items:center}
  .smp-assign-controls{grid-template-columns:minmax(0,1.1fr) minmax(220px,.9fr)}
  .smp-library-item{grid-template-columns:minmax(0,1fr) auto}
  .smp-library-actions{justify-content:flex-end}
}
@media (min-width:980px){
  .smp-planner-shell{grid-template-columns:minmax(0,1fr) minmax(300px,360px)!important}
}

/* VT1-PERFORMANCE 0.8.9 - FIX: cards de origen de rutina sin colapso ni superposición */
.smp .smp-method-grid{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:14px!important;
  align-items:stretch!important;
  width:100%!important;
  margin:0!important;
}
.smp button.smp-method-card,
.smp .smp-method-grid > button.smp-method-card{
  appearance:none!important;
  -webkit-appearance:none!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-rows:auto 1fr!important;
  gap:10px 12px!important;
  align-items:start!important;
  justify-content:stretch!important;
  align-content:start!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:auto!important;
  min-height:128px!important;
  padding:18px!important;
  border-radius:22px!important;
  border:1px solid var(--smp-line-strong)!important;
  background:#fff!important;
  color:var(--smp-text)!important;
  text-align:left!important;
  white-space:normal!important;
  line-height:1.35!important;
  overflow:hidden!important;
  box-shadow:0 10px 24px rgba(15,23,42,.055)!important;
}
.smp button.smp-method-card b,
.smp .smp-method-grid > button.smp-method-card b{
  display:block!important;
  grid-column:1!important;
  grid-row:1!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  color:var(--smp-heading)!important;
  font-size:1.02rem!important;
  font-weight:840!important;
  letter-spacing:-.02em!important;
  line-height:1.18!important;
  text-align:left!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
.smp button.smp-method-card span,
.smp .smp-method-grid > button.smp-method-card span{
  display:block!important;
  grid-column:1 / -1!important;
  grid-row:2!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  color:var(--smp-muted-strong)!important;
  font-size:.92rem!important;
  font-weight:620!important;
  line-height:1.5!important;
  text-align:left!important;
  white-space:normal!important;
  overflow-wrap:break-word!important;
}
.smp button.smp-method-card em,
.smp .smp-method-grid > button.smp-method-card em{
  display:inline-flex!important;
  grid-column:2!important;
  grid-row:1!important;
  justify-self:end!important;
  align-self:start!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:0!important;
  max-width:120px!important;
  min-height:30px!important;
  margin:0!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  border:1px solid var(--smp-line)!important;
  background:var(--smp-surface-soft)!important;
  color:var(--smp-muted-strong)!important;
  font-size:.72rem!important;
  font-style:normal!important;
  font-weight:850!important;
  line-height:1!important;
  text-align:center!important;
  white-space:nowrap!important;
  box-shadow:none!important;
}
.smp button.smp-method-card:hover,
.smp button.smp-method-card:focus{
  border-color:#93c5fd!important;
  background:#fff!important;
  box-shadow:0 16px 34px rgba(37,99,235,.11)!important;
  transform:translateY(-1px)!important;
  outline:0!important;
}
.smp button.smp-method-card.is-selected{
  border-color:var(--smp-blue)!important;
  background:linear-gradient(180deg,#ffffff 0%,#eff6ff 100%)!important;
  box-shadow:0 0 0 4px rgba(37,99,235,.14),0 16px 34px rgba(37,99,235,.10)!important;
}
.smp button.smp-method-card.is-selected em{
  border-color:var(--smp-blue)!important;
  background:var(--smp-blue)!important;
  color:#fff!important;
}
.smp button.smp-method-card[data-assignment-method="import"]{
  border-style:dashed!important;
}
.smp .smp-step-intro{
  overflow:hidden!important;
}
.smp .smp-step-intro strong,
.smp .smp-step-intro span{
  max-width:100%!important;
  overflow-wrap:break-word!important;
}
.smp .smp-planner-actions{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
}
@media (min-width:760px){
  .smp .smp-method-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .smp button.smp-method-card[data-assignment-method="import"]{
    grid-column:1 / -1!important;
  }
  .smp .smp-planner-actions{
    grid-template-columns:1fr 1fr!important;
    align-items:center!important;
  }
}
@media (min-width:1180px){
  .smp button.smp-method-card[data-assignment-method="import"]{
    grid-column:auto!important;
  }
  .smp .smp-method-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media (max-width:420px){
  .smp button.smp-method-card,
  .smp .smp-method-grid > button.smp-method-card{
    grid-template-columns:1fr!important;
    min-height:0!important;
  }
  .smp button.smp-method-card em,
  .smp .smp-method-grid > button.smp-method-card em{
    grid-column:1!important;
    grid-row:auto!important;
    justify-self:start!important;
    max-width:100%!important;
  }
}

/* VT1 0.9.0 — Asignación profesional desde ficha + eliminación segura */
.smp #smp-assign-routine{display:none!important;}
.smp .smp-athlete-inline-planner{
  margin-top:18px;
  border:1px solid var(--smp-line-strong,#dbe3ef);
  border-radius:24px;
  background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);
  box-shadow:0 16px 44px rgba(15,23,42,.08);
  overflow:hidden;
}
.smp .smp-athlete-inline-planner[open]{border-color:#93c5fd;box-shadow:0 18px 48px rgba(37,99,235,.12);}
.smp .smp-assignment-launch-tile{
  list-style:none;
  cursor:pointer;
  display:grid;
  grid-template-columns:minmax(0,1fr) 44px;
  align-items:center;
  gap:14px;
  padding:18px;
  min-height:116px;
  background:#fff;
}
.smp .smp-assignment-launch-tile::-webkit-details-marker{display:none;}
.smp .smp-assignment-launch-tile span{display:grid;gap:4px;min-width:0;}
.smp .smp-assignment-launch-tile small{
  color:#2563eb;
  font-size:.74rem;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.smp .smp-assignment-launch-tile strong{
  color:#0f172a;
  font-size:1.08rem;
  line-height:1.18;
  letter-spacing:-.025em;
}
.smp .smp-assignment-launch-tile em{
  color:#64748b;
  font-size:.92rem;
  font-style:normal;
  font-weight:600;
  line-height:1.45;
}
.smp .smp-assignment-launch-tile b{
  width:44px;height:44px;border-radius:16px;
  display:grid;place-items:center;
  background:#0f172a;color:#fff;
  font-size:1.35rem;line-height:1;
  box-shadow:0 12px 26px rgba(15,23,42,.22);
}
.smp .smp-athlete-inline-planner[open] .smp-assignment-launch-tile b{background:#2563eb;transform:rotate(45deg);}
.smp .smp-inline-routine-form{display:grid;gap:18px;padding:0 18px 18px;background:#fff;}
.smp .smp-inline-planner-head{
  display:grid;gap:3px;
  padding:16px;
  border-radius:20px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
}
.smp .smp-inline-planner-head strong{font-size:1.05rem;color:#0f172a;letter-spacing:-.02em;}
.smp .smp-inline-planner-head small{color:#64748b;font-weight:650;}
.smp .smp-inline-method-grid,
.smp .smp-inline-template-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
}
.smp button.smp-inline-method-card,
.smp button.smp-inline-template-card,
.smp .smp-submit-tile,
.smp .smp-inline-open-import{
  appearance:none;
  -webkit-appearance:none;
  cursor:pointer;
  width:100%;
  min-width:0;
  border-radius:22px;
  border:1px solid #dbe3ef;
  background:#fff;
  color:#0f172a;
  text-align:left;
  box-shadow:0 10px 26px rgba(15,23,42,.06);
  transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease, background .18s ease;
}
.smp button.smp-inline-method-card,
.smp button.smp-inline-template-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px 12px;
  padding:16px;
}
.smp button.smp-inline-method-card strong,
.smp button.smp-inline-template-card strong{font-size:1rem;line-height:1.2;letter-spacing:-.02em;}
.smp button.smp-inline-method-card small,
.smp button.smp-inline-template-card small{grid-column:1 / -1;color:#64748b;font-weight:620;line-height:1.45;}
.smp button.smp-inline-method-card em,
.smp button.smp-inline-template-card em{
  justify-self:end;
  padding:6px 10px;
  border-radius:999px;
  background:#f1f5f9;
  border:1px solid #e2e8f0;
  color:#334155;
  font-size:.72rem;
  font-style:normal;
  font-weight:850;
}
.smp button.smp-inline-method-card:hover,
.smp button.smp-inline-template-card:hover,
.smp .smp-submit-tile:hover,
.smp .smp-inline-open-import:hover{border-color:#93c5fd;box-shadow:0 16px 34px rgba(37,99,235,.12);transform:translateY(-1px);}
.smp button.smp-inline-method-card.is-selected,
.smp button.smp-inline-template-card.is-selected{
  border-color:#2563eb;
  background:linear-gradient(180deg,#ffffff 0%,#eff6ff 100%);
  box-shadow:0 0 0 4px rgba(37,99,235,.12),0 16px 34px rgba(37,99,235,.10);
}
.smp button.smp-inline-method-card.is-selected em,
.smp button.smp-inline-template-card.is-selected em{background:#2563eb;border-color:#2563eb;color:#fff;}
.smp .smp-inline-template-panel,
.smp .smp-inline-import-panel{
  padding:16px;
  border-radius:22px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
}
.smp .smp-inline-import-panel{display:grid;gap:8px;}
.smp .smp-inline-import-panel strong{font-size:1rem;color:#0f172a;}
.smp .smp-inline-import-panel p{margin:0;color:#64748b;font-weight:600;line-height:1.45;}
.smp .smp-inline-open-import{padding:14px 16px;background:#0f172a;color:#fff;text-align:center;font-weight:850;}
.smp .smp-submit-tile{
  display:grid;
  grid-template-columns:minmax(0,1fr) 46px;
  align-items:center;
  gap:14px;
  padding:18px;
  border-color:#bfdbfe;
  background:linear-gradient(180deg,#eff6ff 0%,#dbeafe 100%);
}
.smp .smp-submit-tile span{display:grid;gap:3px;}
.smp .smp-submit-tile small{color:#1d4ed8;font-size:.73rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;}
.smp .smp-submit-tile strong{font-size:1.05rem;letter-spacing:-.025em;}
.smp .smp-submit-tile em{color:#475569;font-style:normal;font-weight:640;line-height:1.42;}
.smp .smp-submit-tile b{display:grid;place-items:center;width:46px;height:46px;border-radius:16px;background:#2563eb;color:#fff;font-size:1.2rem;box-shadow:0 12px 28px rgba(37,99,235,.24);}
.smp .smp-danger,
.smp button.smp-danger{
  border-color:#fecaca!important;
  background:#fff1f2!important;
  color:#b91c1c!important;
  font-weight:850!important;
}
.smp .smp-danger:hover,
.smp button.smp-danger:hover{background:#ffe4e6!important;border-color:#fca5a5!important;box-shadow:0 12px 26px rgba(185,28,28,.12)!important;}
.smp .smp-inline-card .smp-athlete-file-card{box-shadow:none;border-color:#e2e8f0;}
.smp .smp-inline-card-head{gap:14px;}
.smp .smp-inline-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;}
@media (min-width:760px){
  .smp .smp-inline-method-grid,
  .smp .smp-inline-template-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .smp button.smp-inline-method-card[data-inline-method="import"]{grid-column:1 / -1;}
}
@media (min-width:1040px){
  .smp .smp-inline-routine-form{grid-template-columns:1fr 320px;align-items:start;}
  .smp .smp-inline-planner-head,
  .smp .smp-inline-method-grid,
  .smp .smp-inline-template-panel,
  .smp .smp-inline-import-panel,
  .smp .smp-inline-routine-fields,
  .smp .smp-routine-toolbar,
  .smp .smp-routine-builder,
  .smp .smp-submit-tile{grid-column:1;}
  .smp .smp-planner-preview{grid-column:2;grid-row:1 / span 6;position:sticky;top:16px;}
}
@media (max-width:520px){
  .smp .smp-assignment-launch-tile,
  .smp .smp-submit-tile{grid-template-columns:1fr;}
  .smp .smp-assignment-launch-tile b,
  .smp .smp-submit-tile b{justify-self:start;}
  .smp .smp-inline-actions{justify-content:stretch;}
  .smp .smp-inline-actions > *{flex:1 1 100%;}
}


/* VT1-PERFORMANCE 0.9.1 — parche real en ZIP: asignación desde ficha como cuadro, no botón */
.smp #smp-assign-routine,
.smp .smp-planner-card{display:none!important;}
.smp .smp-athlete-accordion[hidden]{display:none!important;}
.smp .smp-athlete-accordion{display:block;margin-top:12px;}
.smp .smp-athlete-inline-planner{margin-top:20px!important;}
.smp .smp-assignment-launch-tile,
.smp .smp-submit-tile{
  appearance:none!important;
  -webkit-appearance:none!important;
  user-select:none;
  cursor:pointer!important;
  width:100%!important;
  border-radius:24px!important;
  border:1px solid #dbe3ef!important;
  background:#fff!important;
  color:#0f172a!important;
  box-shadow:0 12px 30px rgba(15,23,42,.07)!important;
}
.smp .smp-assignment-launch-tile:focus-visible,
.smp .smp-submit-tile:focus-visible{outline:4px solid rgba(37,99,235,.18)!important;border-color:#2563eb!important;}
.smp .smp-submit-tile{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 46px!important;
  align-items:center!important;
  gap:14px!important;
  padding:18px!important;
  border-color:#bfdbfe!important;
  background:linear-gradient(180deg,#eff6ff 0%,#dbeafe 100%)!important;
  text-align:left!important;
}
.smp .smp-submit-tile span{display:grid!important;gap:3px!important;min-width:0!important;}
.smp .smp-submit-tile small{color:#1d4ed8!important;font-size:.73rem!important;font-weight:900!important;letter-spacing:.08em!important;text-transform:uppercase!important;}
.smp .smp-submit-tile strong{font-size:1.05rem!important;letter-spacing:-.025em!important;color:#0f172a!important;}
.smp .smp-submit-tile em{color:#475569!important;font-style:normal!important;font-weight:640!important;line-height:1.42!important;}
.smp .smp-submit-tile b{display:grid!important;place-items:center!important;width:46px!important;height:46px!important;border-radius:16px!important;background:#2563eb!important;color:#fff!important;font-size:1.2rem!important;box-shadow:0 12px 28px rgba(37,99,235,.24)!important;}
.smp .smp-submit-tile:hover{border-color:#2563eb!important;box-shadow:0 18px 38px rgba(37,99,235,.16)!important;transform:translateY(-1px)!important;}
.smp .smp-inline-routine-form.is-busy .smp-submit-tile{opacity:.55;pointer-events:none;}
.smp .smp-inline-card{border:1px solid #e2e8f0!important;background:#fff!important;border-radius:24px!important;box-shadow:0 14px 34px rgba(15,23,42,.06)!important;}
.smp .smp-inline-card-head{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;align-items:start!important;}
.smp .smp-inline-actions{justify-content:flex-start!important;}
.smp button.smp-delete-athlete{background:#fff1f2!important;color:#991b1b!important;border-color:#fecaca!important;}
@media (min-width:760px){
  .smp .smp-inline-card-head{grid-template-columns:1fr auto!important;align-items:center!important;}
  .smp .smp-inline-actions{justify-content:flex-end!important;}
}
@media (max-width:520px){
  .smp .smp-submit-tile{grid-template-columns:1fr!important;}
  .smp .smp-submit-tile b{justify-self:start!important;}
}

/* VT1-PERFORMANCE 0.9.2 — limpieza profesional del asignador dentro de la ficha */
.smp .smp-athlete-inline-planner{
  border-color:#d7e0ec!important;
  background:#ffffff!important;
  box-shadow:0 14px 34px rgba(15,23,42,.06)!important;
}
.smp .smp-athlete-inline-planner[open]{
  border-color:#b8cdf7!important;
  box-shadow:0 18px 44px rgba(37,99,235,.10)!important;
}
.smp .smp-athlete-inline-planner[open] .smp-assignment-launch-tile{
  border-bottom:1px solid #e5eaf2!important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%)!important;
}
.smp .smp-inline-routine-form{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:16px!important;
  padding:18px!important;
  background:#fff!important;
}
.smp .smp-inline-planner-head{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:2px!important;
  padding:14px 16px!important;
  border-radius:18px!important;
  background:#f8fafc!important;
  border:1px solid #e5eaf2!important;
}
.smp .smp-inline-method-switch{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:8px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.smp button.smp-inline-method-tab{
  width:auto!important;
  min-width:0!important;
  min-height:38px!important;
  padding:0 13px!important;
  border-radius:999px!important;
  border:1px solid #dbe3ef!important;
  background:#fff!important;
  color:#475569!important;
  box-shadow:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  font-size:.86rem!important;
  font-weight:780!important;
  line-height:1!important;
  letter-spacing:-.01em!important;
  transform:none!important;
}
.smp button.smp-inline-method-tab:hover,
.smp button.smp-inline-method-tab:focus-visible{
  border-color:#93c5fd!important;
  color:#1d4ed8!important;
  background:#f8fbff!important;
  box-shadow:0 0 0 4px rgba(37,99,235,.10)!important;
  outline:0!important;
}
.smp button.smp-inline-method-tab.is-selected{
  border-color:#111827!important;
  background:#111827!important;
  color:#fff!important;
  box-shadow:0 10px 22px rgba(15,23,42,.14)!important;
}
.smp button.smp-inline-method-tab span{
  display:inline!important;
  white-space:nowrap!important;
  color:inherit!important;
}
.smp .smp-inline-method-help{
  margin:-6px 0 0!important;
  padding:0!important;
  color:#64748b!important;
  font-size:.9rem!important;
  font-weight:620!important;
  line-height:1.45!important;
}
.smp .smp-inline-template-panel,
.smp .smp-inline-import-panel{
  border-radius:18px!important;
  background:#f8fafc!important;
  border:1px solid #e5eaf2!important;
  box-shadow:none!important;
}
.smp .smp-inline-import-panel{
  padding:16px!important;
}
.smp .smp-inline-import-panel .smp-inline-open-import{
  width:auto!important;
  justify-self:start!important;
  min-height:42px!important;
  border-radius:999px!important;
  padding:0 16px!important;
}
.smp .smp-inline-routine-fields{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:12px!important;
  padding:14px!important;
  border:1px solid #e5eaf2!important;
  border-radius:20px!important;
  background:#fff!important;
}
.smp .smp-routine-toolbar{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  align-items:center!important;
  justify-content:flex-start!important;
  margin:0!important;
}
.smp .smp-routine-toolbar .smp-mini-btn{
  width:auto!important;
  min-height:40px!important;
  border-radius:999px!important;
}
.smp .smp-routine-builder{
  display:grid!important;
  gap:14px!important;
}
.smp .smp-builder-row{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:12px!important;
  padding:16px!important;
  padding-top:46px!important;
  border-radius:20px!important;
  border:1px solid #e5eaf2!important;
  background:#f8fafc!important;
  box-shadow:none!important;
  margin-top:0!important;
}
.smp .smp-remove-exercise{
  top:10px!important;
  right:10px!important;
}
.smp .smp-planner-preview{
  position:relative!important;
  top:auto!important;
  grid-column:auto!important;
  grid-row:auto!important;
  border-radius:20px!important;
  border-color:#dbeafe!important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;
  box-shadow:0 10px 24px rgba(37,99,235,.07)!important;
}
.smp .smp-submit-tile{
  margin-top:0!important;
  border-radius:20px!important;
}
@media (min-width:680px){
  .smp .smp-inline-routine-fields{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .smp .smp-builder-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .smp .smp-builder-row .smp-video-field,
  .smp .smp-builder-row .smp-span-2{grid-column:1 / -1!important;}
}
@media (min-width:1040px){
  .smp .smp-inline-routine-form{
    grid-template-columns:1fr!important;
  }
  .smp .smp-planner-preview{
    position:relative!important;
    top:auto!important;
  }
}
@media (min-width:1180px){
  .smp .smp-builder-row{grid-template-columns:2fr repeat(3,minmax(110px,1fr))!important;}
  .smp .smp-builder-row label:nth-of-type(5),
  .smp .smp-builder-row label:nth-of-type(6),
  .smp .smp-builder-row label:nth-of-type(7),
  .smp .smp-builder-row label:nth-of-type(8){grid-column:auto!important;}
  .smp .smp-builder-row .smp-video-field,
  .smp .smp-builder-row .smp-span-2{grid-column:1 / -1!important;}
}
@media (max-width:520px){
  .smp .smp-inline-routine-form{padding:14px!important;gap:14px!important;}
  .smp .smp-inline-method-switch{gap:7px!important;}
  .smp button.smp-inline-method-tab{width:100%!important;justify-content:flex-start!important;min-height:42px!important;}
  .smp .smp-routine-toolbar .smp-mini-btn{width:100%!important;}
}


/* VT1-PERFORMANCE 0.9.3 - selector de plantillas profesional dentro de ficha */
.smp .smp-inline-template-panel,
.smp .smp-assignment-template-panel{
  padding:16px!important;
  border-radius:22px!important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%)!important;
  border:1px solid #dbe3ef!important;
  box-shadow:0 12px 32px rgba(15,23,42,.05)!important;
}
.smp .smp-inline-template-panel .smp-section-head,
.smp .smp-assignment-template-panel .smp-section-head{
  margin:0 0 12px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
.smp .smp-inline-template-panel .smp-section-head h3,
.smp .smp-assignment-template-panel .smp-section-head h3{
  margin:4px 0 0!important;
  color:#0f172a!important;
  font-size:1.08rem!important;
  line-height:1.25!important;
  letter-spacing:-.025em!important;
}
.smp .smp-inline-template-grid,
.smp .smp-template-select-list,
.smp .smp-assignment-template-grid{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
  align-items:stretch!important;
  margin:0!important;
}
.smp button.smp-template-row-card,
.smp button.smp-inline-template-card.smp-template-row-card,
.smp button.smp-template-picker.smp-template-row-card,
.smp button.smp-assignment-template-card.smp-template-row-card{
  appearance:none!important;
  -webkit-appearance:none!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  height:auto!important;
  display:grid!important;
  grid-template-columns:44px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:12px!important;
  padding:12px!important;
  border-radius:18px!important;
  border:1px solid #dbe3ef!important;
  background:#ffffff!important;
  color:#0f172a!important;
  text-align:left!important;
  box-shadow:0 8px 20px rgba(15,23,42,.045)!important;
  transform:none!important;
  text-transform:none!important;
  letter-spacing:normal!important;
  line-height:1.25!important;
  overflow:hidden!important;
}
.smp button.smp-template-row-card::before,
.smp button.smp-template-row-card::after{display:none!important;content:none!important;}
.smp button.smp-template-row-card .smp-template-icon{
  width:44px!important;
  height:44px!important;
  border-radius:15px!important;
  display:grid!important;
  place-items:center!important;
  background:#eff6ff!important;
  border:1px solid #bfdbfe!important;
  color:#1d4ed8!important;
  font-size:1.05rem!important;
  font-weight:900!important;
  line-height:1!important;
}
.smp button.smp-template-row-card .smp-template-copy{
  min-width:0!important;
  display:grid!important;
  gap:3px!important;
}
.smp button.smp-template-row-card .smp-template-copy strong{
  display:block!important;
  color:#0f172a!important;
  font-size:1rem!important;
  font-weight:850!important;
  line-height:1.2!important;
  letter-spacing:-.018em!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.smp button.smp-template-row-card .smp-template-copy small{
  display:block!important;
  grid-column:auto!important;
  color:#64748b!important;
  font-size:.84rem!important;
  font-weight:650!important;
  line-height:1.25!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.smp button.smp-template-row-card .smp-template-action{
  justify-self:end!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:34px!important;
  padding:0 12px!important;
  border-radius:999px!important;
  background:#f8fafc!important;
  border:1px solid #dbe3ef!important;
  color:#0f172a!important;
  font-size:.78rem!important;
  font-weight:820!important;
  white-space:nowrap!important;
}
.smp button.smp-template-row-card:hover,
.smp button.smp-template-row-card:focus-visible{
  border-color:#93c5fd!important;
  background:#f8fbff!important;
  box-shadow:0 14px 30px rgba(37,99,235,.10)!important;
  outline:0!important;
}
.smp button.smp-template-row-card.is-selected,
.smp button.smp-template-picker.smp-template-row-card.is-active{
  border-color:#2563eb!important;
  background:linear-gradient(180deg,#ffffff 0%,#eff6ff 100%)!important;
  box-shadow:0 0 0 4px rgba(37,99,235,.10),0 14px 30px rgba(37,99,235,.10)!important;
}
.smp button.smp-template-row-card.is-selected .smp-template-action,
.smp button.smp-template-picker.smp-template-row-card.is-active .smp-template-action{
  background:#2563eb!important;
  border-color:#2563eb!important;
  color:#fff!important;
}
@media (min-width:760px){
  .smp .smp-inline-template-grid,
  .smp .smp-template-select-list,
  .smp .smp-assignment-template-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media (max-width:560px){
  .smp .smp-inline-template-panel,
  .smp .smp-assignment-template-panel{padding:12px!important;border-radius:18px!important;}
  .smp button.smp-template-row-card,
  .smp button.smp-inline-template-card.smp-template-row-card,
  .smp button.smp-template-picker.smp-template-row-card,
  .smp button.smp-assignment-template-card.smp-template-row-card{
    grid-template-columns:38px minmax(0,1fr)!important;
    gap:10px!important;
    padding:10px!important;
    border-radius:16px!important;
  }
  .smp button.smp-template-row-card .smp-template-icon{width:38px!important;height:38px!important;border-radius:13px!important;}
  .smp button.smp-template-row-card .smp-template-action{
    grid-column:2!important;
    justify-self:start!important;
    margin-top:4px!important;
    min-height:30px!important;
    padding:0 10px!important;
  }
}


/* Admin trainer registration */
.smp-trainer-card .smp-card-summary strong{color:#0f172a}
.smp-trainer-card{border-color:#dbeafe;background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%)}
.smp-trainer-card .smp-badge{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}

/* Coach transfer inside athlete file */
.smp .smp-coach-transfer-panel{
  border:1px solid #dbeafe!important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;
  border-radius:18px!important;
  margin-top:12px!important;
}
.smp .smp-coach-transfer-current{
  display:grid;
  gap:8px;
  padding:14px;
  border:1px solid #e5e7eb;
  border-radius:16px;
  background:#fff;
  margin-bottom:12px;
}
.smp .smp-coach-transfer-current small,
.smp .smp-trainer-option small{
  display:block;
  color:#64748b;
  font-size:.78rem;
  font-weight:750;
}
.smp .smp-coach-transfer-current strong{
  display:block;
  color:#0f172a;
  font-size:1rem;
  font-weight:840;
  letter-spacing:-.02em;
}
.smp .smp-coach-transfer-current em{
  display:block;
  color:#475569;
  font-style:normal;
  font-size:.86rem;
}
.smp .smp-trainer-options{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  margin-top:12px;
}
.smp button.smp-trainer-option{
  appearance:none!important;
  width:100%!important;
  min-height:72px!important;
  display:grid!important;
  grid-template-columns:48px 1fr auto!important;
  align-items:center!important;
  gap:12px!important;
  padding:12px!important;
  border:1px solid #e5e7eb!important;
  border-radius:18px!important;
  background:#fff!important;
  color:#0f172a!important;
  box-shadow:0 8px 20px rgba(15,23,42,.05)!important;
  cursor:pointer!important;
  text-align:left!important;
  transition:transform .16s ease, border-color .16s ease, box-shadow .16s ease, background .16s ease!important;
}
.smp button.smp-trainer-option:hover,
.smp button.smp-trainer-option:focus-visible{
  border-color:#93c5fd!important;
  background:#eff6ff!important;
  box-shadow:0 16px 30px rgba(37,99,235,.12)!important;
  transform:translateY(-1px)!important;
  outline:0!important;
}
.smp button.smp-trainer-option img{
  width:48px!important;
  height:48px!important;
  border-radius:15px!important;
  object-fit:cover!important;
  background:#f1f5f9!important;
}
.smp button.smp-trainer-option strong{
  display:block!important;
  color:#0f172a!important;
  font-size:.98rem!important;
  line-height:1.2!important;
  font-weight:840!important;
  letter-spacing:-.02em!important;
}
.smp button.smp-trainer-option em{
  display:inline-flex!important;
  justify-content:center!important;
  align-items:center!important;
  min-height:32px!important;
  padding:0 12px!important;
  border-radius:999px!important;
  background:#111827!important;
  color:#fff!important;
  font-style:normal!important;
  font-size:.78rem!important;
  font-weight:830!important;
  white-space:nowrap!important;
}
.smp button.smp-trainer-option.is-current{
  border-color:#bbf7d0!important;
  background:#f0fdf4!important;
  cursor:default!important;
}
.smp button.smp-trainer-option.is-current em{
  background:#16a34a!important;
}
.smp button.smp-trainer-option:disabled{
  opacity:.7!important;
  cursor:wait!important;
  transform:none!important;
}
@media (min-width:820px){
  .smp .smp-trainer-options{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:560px){
  .smp button.smp-trainer-option{grid-template-columns:42px 1fr!important;padding:11px!important;}
  .smp button.smp-trainer-option img{width:42px!important;height:42px!important;}
  .smp button.smp-trainer-option em{grid-column:1 / -1;justify-self:start;}
}

/* VT1 0.9.6: avances incrementales seguros */
.smp-advance-block{display:grid;gap:14px;margin-top:16px;padding-top:14px;border-top:1px solid var(--smp-line)}
.smp-advance-summary{display:grid;grid-template-columns:1fr;gap:10px}
.smp-advance-summary>span,.smp-advance-trend{display:grid;gap:4px;padding:12px 14px;border-radius:16px;background:#fff;border:1px solid var(--smp-line);box-shadow:0 8px 18px rgba(15,23,42,.035)}
.smp-advance-summary small,.smp-advance-trend small{font-size:.72rem;color:var(--smp-muted);font-weight:760;text-transform:uppercase;letter-spacing:.055em;line-height:1.25}
.smp-advance-summary b,.smp-advance-trend b{font-size:1rem;color:var(--smp-heading);font-weight:840;line-height:1.1}
.smp-advance-trend-up{background:var(--smp-success-soft);border-color:#bbf7d0}
.smp-advance-trend-up b{color:var(--smp-success)}
.smp-advance-trend-down{background:var(--smp-danger-soft);border-color:#fecaca}
.smp-advance-trend-down b{color:var(--smp-danger)}
.smp-advance-trend-stable{background:var(--smp-blue-soft);border-color:#bfdbfe}
.smp-advance-trend-stable b{color:var(--smp-blue-dark)}
.smp-advance-timeline{display:grid;gap:10px;position:relative}
.smp-advance-item{display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;align-items:start;padding:12px;border:1px solid var(--smp-line);border-radius:16px;background:#fff}
.smp-advance-item>span{width:12px;height:12px;border-radius:999px;background:var(--smp-blue);box-shadow:0 0 0 5px var(--smp-blue-soft);margin-top:5px}
.smp-advance-item strong{display:block;color:var(--smp-heading);font-size:.98rem;font-weight:820;line-height:1.2}
.smp-advance-item small{display:block;color:var(--smp-muted);font-weight:650;line-height:1.35;margin-top:3px}
.smp-advance-item p{margin-top:8px;color:var(--smp-muted-strong);font-size:.88rem;background:var(--smp-surface-soft);border:1px solid var(--smp-line);border-radius:12px;padding:8px 10px}
.smp-progress-row .smp-progress-meter{min-width:0}
.smp-progress-row small+small{color:var(--smp-blue-dark);font-weight:760}
@media (min-width:700px){.smp-advance-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.smp-advance-timeline{gap:12px}}

/* VT1 0.9.7 - Mejoras incrementales producción: check-in, RPE/RIR, modo paso a paso y salud del sistema */
.smp-checkin-card{
  border:1px solid #dbe3ef;
  border-radius:18px;
  padding:18px;
  margin:18px 0;
  background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);
  box-shadow:0 10px 30px rgba(15,23,42,.04);
}
.smp-checkin-card legend{
  padding:0 10px;
  font-weight:800;
  color:#0f172a;
  letter-spacing:-.02em;
}
.smp-checkin-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:12px;
}
.smp-checkin-grid label small{
  display:block;
  color:#64748b;
  font-size:12px;
  margin-top:2px;
}
.smp-training-mode-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:14px 0 6px;
  padding:12px;
  border-radius:16px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
}
.smp-training-mode-actions [data-step-status]{
  font-size:13px;
  font-weight:800;
  color:#1d4ed8;
}
.smp-step-controls{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin:14px 0;
  padding:12px;
  border-radius:16px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
}
.smp-routine-form.smp-step-mode .smp-exercise{
  display:none;
}
.smp-routine-form.smp-step-mode .smp-exercise.is-current-step{
  display:block;
  border-color:#2563eb;
  box-shadow:0 18px 50px rgba(37,99,235,.12);
}
.smp-checkin-summary{
  margin:12px 0;
  padding:12px 14px;
  border-radius:14px;
  background:#eff6ff;
  border:1px solid #bfdbfe;
}
.smp-checkin-summary small{
  display:block;
  color:#1d4ed8;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.06em;
  font-size:11px;
  margin-bottom:4px;
}
.smp-checkin-summary p{margin:0;color:#0f172a;font-weight:700;line-height:1.45;}
.smp-health-summary{
  padding:14px 16px;
  border-radius:16px;
  background:#0f172a;
  color:#fff;
  margin-bottom:12px;
}
.smp-health-items{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
}
.smp-health-item{
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:13px 14px;
  border-radius:16px;
  border:1px solid #e2e8f0;
  background:#fff;
}
.smp-health-item > span{
  width:28px;
  height:28px;
  border-radius:999px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  font-weight:900;
}
.smp-health-item strong{display:block;color:#0f172a;font-size:14px;}
.smp-health-item small{display:block;color:#64748b;margin-top:2px;line-height:1.35;word-break:break-word;}
.smp-health-ok > span{background:#dcfce7;color:#166534;}
.smp-health-warn{border-color:#fed7aa;background:#fff7ed;}
.smp-health-warn > span{background:#ffedd5;color:#c2410c;}
@media (min-width: 720px){
  .smp-checkin-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .smp-health-items{grid-template-columns:repeat(2,minmax(0,1fr));}
}

/* VT1 0.9.8 - calendario inteligente, revisión y reasignación en producción */
.smp #smp-calendar-alerts{
  border-color:#c7d2fe!important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%)!important;
  box-shadow:0 18px 46px rgba(15,23,42,.065)!important;
}
.smp #smp-calendar-alerts .smp-card-toolbar{
  margin:0 0 18px!important;
  padding:0!important;
  justify-content:flex-start!important;
}
.smp #smp-calendar-alerts .smp-dashboard-split{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:14px!important;
  align-items:start!important;
}
.smp #smp-calendar-alerts .smp-calendar-list,
.smp #smp-calendar-alerts .smp-alert-list{
  border:1px solid #e2e8f0!important;
  border-radius:22px!important;
  background:#ffffff!important;
  padding:14px!important;
  box-shadow:0 12px 30px rgba(15,23,42,.045)!important;
  overflow:hidden!important;
}
.smp #smp-calendar-alerts .smp-calendar-items,
.smp #smp-calendar-alerts .smp-alert-items{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
}
.smp #smp-calendar-alerts .smp-alert-items h3{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  margin:0 0 4px!important;
  color:#0f172a!important;
  font-size:1.05rem!important;
  letter-spacing:-.025em!important;
}
.smp #smp-calendar-alerts .smp-alert-items h3:after{
  content:'Prioridad';
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  background:#eff6ff;
  border:1px solid #bfdbfe;
  color:#1d4ed8;
  font-size:.72rem;
  font-weight:850;
  letter-spacing:.02em;
}
.smp #smp-calendar-alerts .smp-calendar-item,
.smp #smp-calendar-alerts .smp-alert{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:10px!important;
  align-items:center!important;
  min-height:70px!important;
  padding:13px 14px!important;
  border-radius:18px!important;
  border:1px solid #e2e8f0!important;
  background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%)!important;
  box-shadow:none!important;
}
.smp #smp-calendar-alerts .smp-calendar-item:hover,
.smp #smp-calendar-alerts .smp-alert:hover{
  border-color:#bfdbfe!important;
  box-shadow:0 14px 28px rgba(37,99,235,.075)!important;
}
.smp #smp-calendar-alerts .smp-calendar-item strong,
.smp #smp-calendar-alerts .smp-alert strong{
  color:#0f172a!important;
  font-size:1rem!important;
  font-weight:850!important;
  line-height:1.15!important;
  letter-spacing:-.025em!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.smp #smp-calendar-alerts .smp-calendar-item small{
  display:block!important;
  margin-top:3px!important;
  color:#64748b!important;
  font-size:.84rem!important;
  font-weight:670!important;
  line-height:1.3!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.smp #smp-calendar-alerts .smp-calendar-item time,
.smp #smp-calendar-alerts .smp-alert time{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:36px!important;
  padding:0 12px!important;
  border-radius:999px!important;
  background:#f8fafc!important;
  border:1px solid #dbe3ef!important;
  color:#475569!important;
  font-size:.84rem!important;
  font-weight:820!important;
  white-space:nowrap!important;
}
.smp #smp-calendar-alerts .smp-alert{border-left:5px solid #2563eb!important;}
.smp #smp-calendar-alerts .smp-alert-high{border-left-color:#dc2626!important;background:linear-gradient(180deg,#fff,#fffafa)!important;}
.smp #smp-calendar-alerts .smp-alert-warning{border-left-color:#d97706!important;background:linear-gradient(180deg,#fff,#fffdf5)!important;}
.smp #smp-calendar-alerts .smp-alert-info{border-left-color:#2563eb!important;}
.smp .smp-feed-item{
  border-radius:22px!important;
  border:1px solid #dbe3ef!important;
  box-shadow:0 12px 32px rgba(15,23,42,.05)!important;
  overflow:hidden!important;
  background:#fff!important;
}
.smp .smp-feed-item>summary{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:12px!important;
  align-items:center!important;
  padding:16px!important;
  border-radius:22px!important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%)!important;
  list-style:none!important;
}
.smp .smp-feed-item>summary::-webkit-details-marker{display:none!important;}
.smp .smp-feed-item>summary strong{font-size:1.04rem!important;color:#0f172a!important;font-weight:850!important;letter-spacing:-.025em!important;}
.smp .smp-feed-item>summary small{display:block!important;margin-top:2px!important;color:#2563eb!important;font-weight:800!important;font-size:.82rem!important;}
.smp .smp-feed-item>summary time{font-size:.82rem!important;font-weight:820!important;color:#64748b!important;background:#fff!important;border:1px solid #dbe3ef!important;border-radius:999px!important;padding:6px 10px!important;white-space:nowrap!important;}
.smp .smp-feed-body{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;padding:0 16px 12px!important;}
.smp .smp-feed-body p{color:#475569!important;font-weight:650!important;}
.smp .smp-completion-head{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;align-items:center!important;}
.smp .smp-review-actions{display:flex!important;flex-wrap:wrap!important;gap:10px!important;align-items:center!important;}
.smp button.smp-delete-completion{
  width:auto!important;
  min-height:40px!important;
  padding:0 14px!important;
  border-radius:999px!important;
  border:1px solid #fecaca!important;
  background:#fff1f2!important;
  color:#991b1b!important;
  box-shadow:none!important;
  font-size:.84rem!important;
  font-weight:840!important;
  text-transform:none!important;
  letter-spacing:-.01em!important;
}
.smp button.smp-delete-completion:hover,
.smp button.smp-delete-completion:focus-visible{
  background:#fee2e2!important;
  border-color:#fca5a5!important;
  color:#7f1d1d!important;
  outline:0!important;
  box-shadow:0 0 0 4px rgba(220,38,38,.11)!important;
}
.smp .smp-review-panel>summary,
.smp .smp-coach-transfer-panel>summary{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:10px!important;
  align-items:center!important;
  list-style:none!important;
  padding:3px 0!important;
}
.smp .smp-review-panel>summary::-webkit-details-marker,
.smp .smp-coach-transfer-panel>summary::-webkit-details-marker{display:none!important;}
.smp .smp-review-panel>summary em,
.smp .smp-coach-transfer-panel>summary em{
  display:inline-flex!important;
  align-items:center!important;
  min-height:28px!important;
  padding:0 10px!important;
  border-radius:999px!important;
  background:#eff6ff!important;
  border:1px solid #bfdbfe!important;
  color:#1d4ed8!important;
  font-size:.72rem!important;
  font-weight:850!important;
  font-style:normal!important;
  white-space:nowrap!important;
}
.smp .smp-coach-transfer-panel{
  border-color:#c7d2fe!important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;
}
.smp .smp-coach-transfer-panel>summary small{display:block;color:#1d4ed8;font-size:.72rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;}
.smp .smp-coach-transfer-panel>summary strong{display:block;color:#0f172a;font-size:1rem;font-weight:850;letter-spacing:-.02em;}
@media (min-width:900px){
  .smp #smp-calendar-alerts .smp-dashboard-split{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr)!important;}
  .smp .smp-completion-head{grid-template-columns:1fr auto!important;}
  .smp .smp-feed-body{grid-template-columns:1fr auto!important;align-items:center!important;}
}
@media (max-width:560px){
  .smp #smp-calendar-alerts .smp-calendar-list,
  .smp #smp-calendar-alerts .smp-alert-list{padding:10px!important;border-radius:18px!important;}
  .smp #smp-calendar-alerts .smp-calendar-item,
  .smp #smp-calendar-alerts .smp-alert{grid-template-columns:1fr!important;gap:8px!important;min-height:0!important;padding:12px!important;}
  .smp #smp-calendar-alerts .smp-calendar-item time,
  .smp #smp-calendar-alerts .smp-alert time{justify-self:start!important;}
  .smp .smp-feed-item>summary{grid-template-columns:1fr!important;}
  .smp .smp-feed-item>summary time{justify-self:start!important;}
  .smp button.smp-delete-completion{width:100%!important;}
}

/* VT1 0.9.9 - mejoras de cronómetro, % levantamiento, webapp y contención responsive */
.smp,.smp *,.smp *:before,.smp *:after{box-sizing:border-box}
.smp{max-width:100%;overflow-x:hidden}
.smp-card,.smp-stat,.smp-inline-card,.smp-athlete-file-card,.smp-athlete-accordion,.smp-feed-item,.smp-completion-card,.smp-progress-detail-card{min-width:0;max-width:100%;overflow-wrap:anywhere}
.smp-chip,.smp-badge,.smp-status-badge,.smp-trend,.smp-progress-row>em,.smp-progress-detail-head>em{max-width:100%;white-space:normal;line-height:1.25;overflow-wrap:anywhere}
.smp .smp-actions,.smp-card-toolbar,.smp-chip-row,.smp-training-mode-actions,.smp-timer-actions{min-width:0;max-width:100%;flex-wrap:wrap}
.smp .button,.smp button,.smp-primary,.smp-secondary,.smp input[type="submit"],.smp-submit-tile,.smp-assignment-launch-tile{max-width:100%;white-space:normal;line-height:1.15;overflow-wrap:anywhere}
.smp input,.smp select,.smp textarea{max-width:100%;min-width:0}
.smp img,.smp iframe{max-width:100%}
.smp-file-grid,.smp-readonly-profile,.smp-target-grid,.smp-result-grid,.smp-metrics,.smp-progress-kpis,.smp-form-grid{min-width:0}

.smp-timer-card{display:grid;gap:12px;margin:14px 0;padding:16px;border:1px solid #dbeafe;border-radius:20px;background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:0 8px 22px rgba(37,99,235,.07)}
.smp-timer-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}
.smp-timer-head strong{display:block;margin-top:2px;font-size:clamp(2rem,8vw,3.25rem);line-height:1;letter-spacing:-.06em;font-variant-numeric:tabular-nums;color:var(--smp-heading);font-weight:900}
.smp-timer-head em{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:5px 10px;border-radius:999px;background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;font-style:normal;font-size:.78rem;font-weight:820}
.smp-timer-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.smp-timer-actions .smp-secondary{width:100%!important;min-height:42px!important;padding:0 12px!important}
.smp-timer-laps{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px}
.smp-timer-laps span,.smp-timer-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--smp-line);border-radius:14px;background:#fff;color:var(--smp-text)}
.smp-timer-laps b,.smp-timer-summary small{font-size:.76rem;color:var(--smp-muted);font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.smp-timer-laps em,.smp-timer-summary strong{font-style:normal;color:var(--smp-heading);font-weight:900;font-variant-numeric:tabular-nums}
.smp-timer-summary{margin:12px 0 0;background:#f8fafc}

.smp-lifting-card{display:grid;gap:14px;padding:16px;border:1px solid var(--smp-line-strong);border-radius:20px;background:#fff;box-shadow:0 8px 20px rgba(15,23,42,.04)}
.smp-lifting-form{display:grid;gap:12px}
.smp-lift-max-list{display:grid;gap:10px}
.smp-lift-max-row{position:relative;display:grid;grid-template-columns:1fr;gap:10px;padding:12px;border:1px solid var(--smp-line);border-radius:16px;background:var(--smp-surface-soft)}
.smp-lift-max-row label{margin:0!important;min-width:0}
.smp-remove-lift-max{position:absolute!important;top:8px;right:8px;width:34px!important;height:34px!important;min-height:34px!important;padding:0!important;border-radius:999px!important;background:#fff!important;color:var(--smp-danger)!important;border-color:#fecaca!important;box-shadow:0 4px 12px rgba(15,23,42,.06)!important}
.smp-lift-calculator{display:grid;gap:12px;padding:14px;border:1px dashed #bfdbfe;border-radius:18px;background:#f8fbff}
.smp-lift-calculator>strong,.smp-lift-active-list>strong,.smp-lift-percent-list>strong{display:block;color:var(--smp-heading);font-size:1rem;font-weight:850;letter-spacing:-.02em}
.smp-lift-calc-output{display:flex;flex-wrap:wrap;gap:8px;align-items:center;color:var(--smp-muted-strong);font-weight:750}
.smp-lift-calc-output span{display:grid;gap:2px;min-width:130px;padding:10px 12px;border:1px solid #bfdbfe;border-radius:14px;background:#fff}
.smp-lift-calc-output b{font-size:1.3rem;color:var(--smp-blue-dark);font-weight:900;line-height:1}
.smp-lift-calc-output small{color:var(--smp-muted);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.smp-lift-active-list,.smp-lift-percent-list{display:grid;gap:10px}
.smp-lift-active-row,.smp-lift-percent-row{display:grid;gap:10px;padding:12px;border:1px solid var(--smp-line);border-radius:16px;background:var(--smp-surface-soft)}
.smp-lift-active-row span{display:grid;gap:2px;min-width:0}
.smp-lift-active-row strong,.smp-lift-percent-row strong{color:var(--smp-heading);font-weight:850;line-height:1.2}
.smp-lift-active-row small,.smp-lift-percent-row small{color:var(--smp-muted);font-weight:650}
.smp-lift-active-row em{justify-self:start;display:inline-flex;align-items:center;min-height:30px;padding:5px 10px;border-radius:999px;background:#eef2ff;border:1px solid #c7d2fe;color:#3730a3;font-style:normal;font-size:.78rem;font-weight:850}
.smp-lift-percent-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.smp-lift-percent-kpis span{display:grid;gap:2px;padding:10px;border-radius:14px;background:#fff;border:1px solid var(--smp-line)}
.smp-lift-percent-kpis b{color:var(--smp-heading);font-weight:900;font-size:1.05rem;line-height:1}
.smp-lift-percent-kpis small{font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;font-weight:800;color:var(--smp-muted)}

@media (min-width:720px){
  .smp-timer-actions{display:flex}
  .smp-lift-max-row{grid-template-columns:minmax(160px,1.4fr) minmax(120px,.8fr) minmax(90px,.6fr) minmax(180px,1.2fr) 34px;align-items:end;padding-right:12px}
  .smp-lift-max-row .smp-span-2{grid-column:auto!important}
  .smp-remove-lift-max{position:static!important;align-self:end}
  .smp-lift-active-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}
  .smp-lift-percent-row{grid-template-columns:minmax(0,1fr) minmax(260px,1.2fr);align-items:center}
  .smp-lift-percent-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}
}

@media (max-width:719px){
  .smp .smp-tab-buttons{overflow-x:auto;display:flex;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;padding-bottom:4px}
  .smp .smp-tab-buttons button{flex:0 0 auto;max-width:82vw}
  .smp-timer-head{grid-template-columns:1fr}
  .smp-timer-head em{justify-self:start}
}


/* VT1 v1.0.0 production additions */
.smp-message-card,.smp-report-card{overflow:hidden}
.smp-message-thread{display:flex;flex-direction:column;gap:10px;max-height:360px;overflow:auto;padding:12px;border:1px solid var(--smp-border,#e5e7eb);border-radius:18px;background:rgba(248,250,252,.72)}
.smp-message{max-width:84%;border:1px solid var(--smp-border,#e5e7eb);border-radius:18px;padding:10px 12px;background:#fff;box-shadow:0 8px 24px rgba(15,23,42,.05)}
.smp-message.is-mine{align-self:flex-end;background:linear-gradient(135deg,rgba(17,24,39,.96),rgba(30,41,59,.96));color:#fff;border-color:rgba(255,255,255,.16)}
.smp-message.is-theirs{align-self:flex-start}
.smp-message div{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}
.smp-message time{font-size:11px;opacity:.68;white-space:nowrap}.smp-message p{margin:0;white-space:pre-wrap;word-break:break-word}.smp-message-form{display:grid;gap:10px;margin-top:12px}.smp-message-form textarea{min-height:88px;resize:vertical}.smp-production-grid{display:grid;gap:14px}.smp-health-list-inline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.smp-health-list-inline span{display:block;border:1px solid var(--smp-border,#e5e7eb);border-radius:16px;padding:10px;background:#fff}.smp-health-list-inline span.is-ok{border-color:rgba(22,163,74,.28)}.smp-health-list-inline span.is-error{border-color:rgba(220,38,38,.35);background:rgba(254,242,242,.7)}.smp-health-list-inline small{display:block;color:var(--smp-muted,#64748b);margin-top:4px;word-break:break-word}.smp-alert{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.smp-alert p{margin:.25rem 0 0;color:var(--smp-muted,#64748b)}.smp-alert-success{border-color:rgba(22,163,74,.3);background:rgba(240,253,244,.75)}.smp-alert-danger{border-color:rgba(220,38,38,.35);background:rgba(254,242,242,.75)}.smp-report-document{background:#fff;color:#0f172a}.smp-report-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.smp-report-grid>div,.smp-report-session{border:1px solid #e2e8f0;border-radius:16px;padding:12px}.smp-report-grid small{display:block;color:#64748b}.smp-report-session{margin:10px 0}.smp-report-session time{float:right;color:#64748b}.smp-tab-panel .smp-message-thread{max-height:420px}@media(max-width:760px){.smp-health-list-inline,.smp-report-grid{grid-template-columns:1fr}.smp-message{max-width:96%}.smp-app-tabs{overflow-x:auto;scroll-snap-type:x proximity}.smp-app-tabs a{scroll-snap-align:start;white-space:nowrap}}

/* VT1-PERFORMANCE v1.1.0 Enterprise additions - scoped and non-breaking */
.smp .smp-exit-profile{white-space:nowrap;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.4rem}
.smp .smp-enterprise-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}
.smp .smp-enterprise-pill{border:1px solid rgba(148,163,184,.24);background:rgba(255,255,255,.82);box-shadow:0 14px 40px rgba(15,23,42,.08);border-radius:20px;padding:16px;min-width:0}
.smp .smp-enterprise-pill span,.smp .smp-enterprise-pill small{display:block;color:var(--smp-muted,#64748b)}
.smp .smp-enterprise-pill strong{display:block;font-size:clamp(1rem,2vw,1.35rem);line-height:1.15;margin:.2rem 0;overflow-wrap:anywhere}
.smp .smp-consent-card{border:1px solid rgba(245,158,11,.28);background:linear-gradient(135deg,rgba(255,251,235,.96),rgba(255,255,255,.92))}
.smp .smp-consent-form{margin-top:12px}
@media (max-width: 900px){.smp .smp-enterprise-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width: 620px){.smp .smp-enterprise-strip{grid-template-columns:1fr}.smp .smp-hero-actions{width:100%}.smp .smp-exit-profile{width:100%}}

/* VT1 v1.1.1 Advanced Sport Intelligence - estilos encapsulados */
.smp-intelligence-panel{position:relative;overflow:hidden}
.smp-intelligence-panel:before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,rgba(34,197,94,.85),rgba(234,179,8,.85),rgba(239,68,68,.85));pointer-events:none}
.smp-intel-card{border:1px solid rgba(148,163,184,.25);border-radius:22px;padding:18px;background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(248,250,252,.96));box-shadow:0 12px 34px rgba(15,23,42,.08)}
.smp-intel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}
.smp-intel-head h3{margin:.15rem 0 .35rem;font-size:clamp(1.15rem,2vw,1.55rem)}
.smp-intel-head p{margin:0;color:#475569;line-height:1.45}
.smp-intel-head>strong{min-width:92px;text-align:center;border-radius:20px;padding:12px 14px;background:#0f172a;color:#fff;font-size:1.75rem;line-height:1}
.smp-intel-head>strong small{display:block;font-size:.72rem;color:#cbd5e1;margin-top:4px}
.smp-intel-grid span em{display:block;margin-top:3px;font-size:.72rem;font-style:normal;color:#64748b;line-height:1.25}
.smp-intel-green .smp-intel-head>strong,.smp-intel-roster-row.smp-intel-green b{background:#16a34a;color:#fff}
.smp-intel-yellow .smp-intel-head>strong,.smp-intel-roster-row.smp-intel-yellow b{background:#ca8a04;color:#fff}
.smp-intel-red .smp-intel-head>strong,.smp-intel-roster-row.smp-intel-red b{background:#dc2626;color:#fff}
.smp-intel-neutral .smp-intel-head>strong,.smp-intel-roster-row.smp-intel-neutral b{background:#475569;color:#fff}
.smp-intel-alerts{display:grid;gap:8px;margin:12px 0}
.smp-intel-alerts p{margin:0;padding:10px 12px;border-radius:14px;font-weight:700;border:1px solid rgba(148,163,184,.28)}
.smp-intel-alerts .danger{background:#fef2f2;color:#991b1b;border-color:#fecaca}
.smp-intel-alerts .warning{background:#fffbeb;color:#92400e;border-color:#fde68a}
.smp-intel-exercise-list{display:grid;gap:10px;margin-top:12px}
.smp-intel-exercise{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:10px;align-items:center;padding:12px;border-radius:16px;border:1px solid rgba(148,163,184,.28);background:#fff}
.smp-intel-exercise strong{display:block;color:#0f172a}
.smp-intel-exercise small{display:block;color:#64748b;line-height:1.35}
.smp-intel-exercise span{text-align:center;min-width:70px}
.smp-intel-exercise span b{display:block;color:#0f172a}
.smp-intel-exercise em{justify-self:end;font-style:normal;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:6px 9px;background:#f1f5f9;color:#334155}
.smp-intel-exercise.smp-intel-red{border-color:#fecaca;background:#fff7f7}
.smp-intel-exercise.smp-intel-yellow{border-color:#fde68a;background:#fffdf2}
.smp-intel-exercise.smp-intel-green{border-color:#bbf7d0;background:#f7fff9}
.smp-intel-roster-list{display:grid;gap:10px}
.smp-intel-roster-row{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center;text-align:left;border:1px solid rgba(148,163,184,.26);background:#fff;border-radius:18px;padding:14px;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.smp-intel-roster-row:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(15,23,42,.1)}
.smp-intel-roster-row span strong{display:block;color:#0f172a;font-size:1rem}
.smp-intel-roster-row span small{display:block;color:#64748b;line-height:1.35}
.smp-intel-roster-row b{border-radius:16px;padding:10px 12px;text-align:center;min-width:72px;font-size:1.25rem;line-height:1}
.smp-intel-roster-row b small{display:block;font-size:.68rem;margin-top:2px;opacity:.8}
.smp-intel-roster-row em{font-style:normal;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#334155;font-size:.72rem}
.smp-intel-roster-row.smp-intel-red{border-color:#fecaca;background:#fff7f7}
.smp-intel-roster-row.smp-intel-yellow{border-color:#fde68a;background:#fffdf2}
.smp-intel-roster-row.smp-intel-green{border-color:#bbf7d0;background:#f7fff9}
@media(max-width:760px){.smp-intel-head,.smp-intel-roster-row{grid-template-columns:1fr;display:grid}.smp-intel-head>strong{justify-self:start}.smp-intel-exercise{grid-template-columns:1fr 1fr}.smp-intel-exercise em{justify-self:start}.smp-intel-roster-row b{justify-self:start}.smp-intel-roster-row em{justify-self:start}}

/* VT1-PERFORMANCE OS v2.0.0 auto-installer / production shell */
.smp-v2-os .smp-v2-score{display:inline-flex;align-items:center;justify-content:center;min-width:92px;height:92px;border-radius:28px;background:linear-gradient(135deg,rgba(17,24,39,.96),rgba(30,64,175,.92));color:#fff;font-size:30px;font-weight:900;box-shadow:0 18px 44px rgba(15,23,42,.18);margin:4px 0 12px}.smp-v2-os .widefat td,.smp-v2-os .widefat th{vertical-align:middle}.smp-status-ok{display:inline-flex;padding:5px 10px;border-radius:999px;background:#dcfce7;color:#166534;font-weight:800;font-size:12px}.smp-status-fail{display:inline-flex;padding:5px 10px;border-radius:999px;background:#fee2e2;color:#991b1b;font-weight:800;font-size:12px}.smp-platform-admin .wrap{margin:0}.smp-platform-admin .smp-admin-enterprise{padding:0}.smp-legal-page,.smp-offline-page{max-width:880px;margin:30px auto;background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:24px;padding:28px;box-shadow:0 20px 50px rgba(15,23,42,.08)}.smp-legal-page h1,.smp-offline-page h1{margin-top:0;letter-spacing:-.03em}.smp-admin-card ol{margin-left:18px}.smp-admin-card code{background:#f1f5f9;padding:2px 6px;border-radius:8px}.smp-admin-enterprise input[type="url"],.smp-admin-enterprise input[type="text"],.smp-admin-enterprise input[type="number"],.smp-admin-enterprise input[type="email"],.smp-admin-enterprise select,.smp-admin-enterprise textarea{width:100%;max-width:100%;border-radius:14px;border:1px solid rgba(15,23,42,.14);padding:10px 12px}.smp-admin-enterprise label{display:block;font-weight:700;margin:12px 0 6px}.smp-admin-check{display:flex!important;gap:10px;align-items:flex-start;font-weight:700;margin:10px 0!important}.smp-admin-check input{margin-top:2px}.smp-admin-save{border-radius:999px!important;font-weight:800!important}@media(max-width:782px){.smp-v2-os .smp-v2-score{min-width:78px;height:78px;font-size:24px}.smp-admin-enterprise .widefat{font-size:12px}}

/* VT1 2.0.1 - UI profesional, fotos, logo global, responsividad iPad/tablet y botones no redondos */
.smp *, .smp *:before, .smp *:after{box-sizing:border-box}
.smp-brand-header{display:flex;align-items:center;justify-content:flex-start;gap:14px;margin:0 0 14px;padding:14px 18px;background:#fff;border:1px solid var(--smp-line);border-radius:18px;box-shadow:0 12px 30px rgba(15,23,42,.06)}
.smp-brand-header img{width:auto;height:48px;max-width:220px;object-fit:contain;display:block}
.smp-brand-header span{font-size:.86rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--smp-muted-strong)}
.smp-brand-header-login{max-width:520px;margin:0 auto 14px;justify-content:center}
.smp-brand-header-login img{height:56px}
.smp-auth-wrap{min-height:min(100vh,860px);display:grid;align-content:center;padding:clamp(18px,4vw,44px);background:radial-gradient(circle at top left,#e0f2fe 0,#f8fafc 34%,#eef2ff 100%)}
.smp-auth-card{width:min(100%,520px)!important;margin:0 auto!important;padding:clamp(22px,4vw,34px)!important;border-radius:22px!important;border:1px solid rgba(15,23,42,.10)!important;box-shadow:0 24px 70px rgba(15,23,42,.13)!important;background:rgba(255,255,255,.94)!important;backdrop-filter:blur(12px)}
.smp-auth-card h1{font-size:clamp(28px,5vw,42px);line-height:1.03;margin:0 0 8px;letter-spacing:-.045em;color:var(--smp-text)}
.smp-auth-card p{color:var(--smp-muted-strong);line-height:1.55}.smp-auth-card .login-username,.smp-auth-card .login-password,.smp-auth-card .login-remember,.smp-auth-card .login-submit{margin:12px 0}.smp-auth-card label{font-weight:820;color:var(--smp-text)}
.smp-auth-card input[type="text"],.smp-auth-card input[type="password"]{width:100%;min-height:52px;border-radius:14px;border:1px solid var(--smp-line-strong);padding:12px 14px;background:#fff;font:inherit}.smp-auth-card input[type="submit"]{width:100%;min-height:52px;border-radius:12px!important;font-weight:900!important;letter-spacing:.01em!important;background:var(--smp-primary)!important;color:#fff!important;border:0!important}

.smp .button,.smp button,.smp-primary,.smp-secondary,.smp input[type="submit"],.smp-app-tabs a,.smp-tab-buttons button,.smp-remove-exercise,.smp-video-close,.smp-remove-lift-max,.smp-admin-save,.smp-status-ok,.smp-status-fail{border-radius:12px!important}
.smp-chip,.smp-badge,.smp-status-badge,.smp-trend,.smp-progress-row>em,.smp-progress-detail-head>em,.smp-activity-metrics span,.smp-alert time,.smp-method-card em,.smp-assignment-template-card em,.smp-template-picker em,.smp-library-actions em,.smp-timer-head em,.smp-lift-active-row em,.smp-intel-exercise em{border-radius:10px!important}
.smp-card-summary:after{border-radius:10px!important}.smp-live-dot:before{border-radius:3px!important}.smp-progress-track,.smp-progress-track i{border-radius:7px!important}.smp-advance-item>span{border-radius:3px!important}

.smp-photo-uploader,.smp-logo-uploader{display:grid;grid-template-columns:74px minmax(0,1fr);gap:14px;align-items:center;padding:12px;border:1px solid var(--smp-line);border-radius:16px;background:var(--smp-surface-soft);margin:0 0 12px}.smp-photo-uploader img{width:74px;height:74px;object-fit:cover;border-radius:16px;border:3px solid #fff;box-shadow:0 10px 24px rgba(15,23,42,.10)}.smp-logo-uploader img,.smp-logo-placeholder{width:96px;height:64px;object-fit:contain;border-radius:14px;border:1px solid var(--smp-line);background:#fff;display:grid;place-items:center;font-weight:900;color:var(--smp-muted-strong)}
.smp-media-form input[type="file"],.smp input[type="file"],.smp-admin-enterprise input[type="file"]{padding:10px;background:#fff;border:1px dashed var(--smp-line-strong);border-radius:12px;min-height:auto}.smp-media-form button{width:100%}.smp-photo-form{margin-bottom:16px}

.smp-admin-dashboard-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,390px);gap:18px;align-items:start;margin-top:18px}.smp-admin-dashboard-main,.smp-admin-dashboard-aside{display:grid;gap:18px}.smp-admin-dashboard-aside{position:sticky;top:44px}.smp-admin-dashboard .smp-admin-grid{margin:0}.smp-portability-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.smp-portability-grid section{padding:14px;border:1px solid var(--smp-line);border-radius:16px;background:#fff}.smp-portability-grid .smp-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.smp-admin-card summary{cursor:pointer}.smp-admin-card.smp-accordion-card{padding:18px}.smp-admin-card.smp-accordion-card:not([open]){padding-bottom:18px}

.smp-progress-card{background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;border-color:#dbeafe!important}.smp-progress-roster{display:grid;gap:12px}.smp-progress-row{grid-template-columns:minmax(0,1fr) minmax(180px,280px) auto!important;align-items:center!important;border-radius:16px!important;border:1px solid #dbe3ef!important;background:linear-gradient(135deg,#fff,#f8fafc)!important;box-shadow:0 12px 28px rgba(15,23,42,.055)!important}.smp-progress-row:hover{transform:translateY(-1px);box-shadow:0 18px 38px rgba(15,23,42,.08)!important}.smp-progress-row strong{font-size:1rem}.smp-progress-meter{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}.smp-progress-meter strong{font-size:.92rem;min-width:42px;text-align:right}.smp-progress-track{height:14px!important;background:#e2e8f0!important}.smp-progress-green .smp-progress-track i{background:#16a34a!important}.smp-progress-yellow .smp-progress-track i{background:#f59e0b!important}.smp-progress-red .smp-progress-track i{background:#dc2626!important}.smp-progress-neutral .smp-progress-track i{background:#64748b!important}.smp-progress-detail-card{border-radius:18px!important}.smp-advance-block{margin-top:14px}.smp-advance-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.smp-advance-summary>span{padding:12px;border:1px solid var(--smp-line);border-radius:14px;background:#fff}.smp-advance-timeline{display:grid;gap:10px;margin-top:12px}.smp-advance-item{display:grid;grid-template-columns:18px 1fr;gap:10px;padding:12px;border:1px solid var(--smp-line);border-radius:14px;background:#fff}.smp-advance-item>span{width:12px;height:12px;margin-top:4px;background:var(--smp-primary);box-shadow:0 0 0 4px var(--smp-blue-soft)}

.smp-coach-layout{grid-template-columns:minmax(0,1fr) minmax(330px,420px)!important}.smp-create-athlete-card{order:0}.smp-form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.smp-span-2{grid-column:1/-1}.smp-card[open]>.smp-card-summary{margin-bottom:14px}.smp-accordion-card:not([open])>.smp-card-summary{margin-bottom:0}.smp-accordion-card:not([open]){padding-bottom:18px}

@media (min-width:783px) and (max-width:1180px){.smp-app{max-width:100%;border-radius:22px;padding:10px}.smp-coach-layout,.smp-grid-main{grid-template-columns:minmax(0,1fr) minmax(300px,360px)!important;gap:14px}.smp-hero{grid-template-columns:auto minmax(0,1fr)!important}.smp-hero-actions{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.smp-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.smp-progress-row{grid-template-columns:1fr!important}.smp-admin-dashboard-layout{grid-template-columns:minmax(0,1fr) 340px}.smp-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.smp-portability-grid{grid-template-columns:1fr}.smp-form-grid-2{grid-template-columns:1fr}}
@media (max-width:782px){.smp-auth-wrap{padding:16px;align-content:start}.smp-brand-header{border-radius:16px;padding:12px}.smp-brand-header img{height:42px;max-width:180px}.smp-app{border-radius:18px;padding:8px;margin:0}.smp-app-tabs{border-radius:16px}.smp-app-tabs a{min-height:40px;padding:0 12px;font-size:.82rem}.smp-hero{grid-template-columns:1fr!important;padding:16px}.smp-avatar,.smp-coach-avatar{width:82px!important;height:82px!important;border-radius:18px!important}.smp-hero-actions,.smp-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px}.smp-stat-grid,.smp-coach-layout,.smp-grid-main,.smp-admin-dashboard-layout,.smp-portability-grid,.smp-advance-summary{grid-template-columns:1fr!important}.smp-admin-dashboard-aside{position:static}.smp-form-grid,.smp-form-grid-2,.smp-dashboard-split{grid-template-columns:1fr!important}.smp-span-2{grid-column:auto}.smp-card,.smp-stat{border-radius:18px;padding:15px}.smp-progress-row{grid-template-columns:1fr!important}.smp-progress-meter{grid-template-columns:1fr}.smp-progress-meter strong{text-align:left}.smp-portability-grid .smp-actions{grid-template-columns:1fr}.smp-photo-uploader,.smp-logo-uploader{grid-template-columns:1fr}.smp-photo-uploader img{width:86px;height:86px}.smp-auth-card{border-radius:18px!important}}
.smp-admin-enterprise .button,.smp-admin-enterprise button,.smp-admin-enterprise input[type="submit"],.smp-admin-dashboard .button,.smp-admin-dashboard button{border-radius:12px!important}

/* VT1 v2.0.2 — Login único, páginas sistema ocultas en navegación pública y responsividad reforzada */
body.smp-vt1-login-template{margin:0!important;background:#08b9d0!important;overflow-x:hidden}
body.smp-vt1-login-template .site-header,body.smp-vt1-login-template .site-footer,body.smp-vt1-login-template header#masthead,body.smp-vt1-login-template footer#colophon,body.smp-vt1-login-template .wp-site-blocks>header,body.smp-vt1-login-template .wp-site-blocks>footer,body.smp-vt1-login-template .entry-header,body.smp-vt1-login-template .page-header,body.smp-vt1-login-template .post-thumbnail,body.smp-vt1-login-template nav.primary-navigation,body.smp-vt1-login-template .main-navigation{display:none!important}
body.smp-vt1-login-template .site,body.smp-vt1-login-template #page,body.smp-vt1-login-template .wp-site-blocks,body.smp-vt1-login-template main,body.smp-vt1-login-template .site-main,body.smp-vt1-login-template article,body.smp-vt1-login-template .entry-content{max-width:none!important;width:100%!important;margin:0!important;padding:0!important;background:transparent!important;box-shadow:none!important;border:0!important}
body.smp-vt1-login-template .entry-content>*{max-width:none!important;margin:0!important}
.smp-unified-login-wrap{--smp-login-cyan:#09c0d6;--smp-login-blue:#7eb8dc;--smp-login-lavender:#a49acf;--smp-login-pink:#ff0b6f;--smp-login-deep:#803a60;position:relative;isolation:isolate;display:grid;place-items:center;min-height:100svh;padding:clamp(18px,4vw,56px);overflow:hidden;background:radial-gradient(circle at 88% 82%,rgba(255,11,111,.98) 0%,rgba(255,11,111,.72) 20%,rgba(167,73,133,.44) 40%,rgba(17,24,39,0) 62%),radial-gradient(circle at 16% 12%,rgba(11,190,211,.98) 0%,rgba(12,178,211,.92) 28%,rgba(117,185,220,.64) 48%,rgba(17,24,39,0) 70%),linear-gradient(148deg,#07bfd4 0%,#16b9d0 22%,#7fb5dc 47%,#ba83b6 70%,#ff0b68 100%)}
.smp-unified-login-wrap:before{content:"";position:absolute;inset:-18%;z-index:-2;background:radial-gradient(ellipse at 15% 22%,rgba(10,193,214,.88),transparent 42%),radial-gradient(ellipse at 70% 55%,rgba(246,146,197,.42),transparent 38%),radial-gradient(ellipse at 85% 82%,rgba(255,0,91,.72),transparent 42%);filter:blur(18px);transform:rotate(-6deg)}
.smp-unified-login-wrap:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,0) 38%),linear-gradient(35deg,rgba(0,0,0,0) 55%,rgba(0,0,0,.08));pointer-events:none}
.smp-login-orb{position:absolute;border-radius:18px;filter:blur(54px);opacity:.42;pointer-events:none}.smp-login-orb-one{width:38vw;height:28vw;left:-10vw;top:26vh;background:#00d4e7;transform:rotate(-18deg)}.smp-login-orb-two{width:42vw;height:34vw;right:-14vw;bottom:-8vw;background:#ff0b6f;transform:rotate(14deg)}
.smp-unified-login-card{position:relative;width:min(100%,460px);display:grid;gap:22px;padding:clamp(22px,4.2vw,38px);border:1px solid rgba(255,255,255,.55);border-radius:22px;background:rgba(255,255,255,.90);box-shadow:0 34px 90px rgba(43,22,54,.28),inset 0 1px 0 rgba(255,255,255,.78);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.smp-login-logo-block{display:grid;gap:10px;justify-items:center;text-align:center;margin-top:-6px}.smp-login-logo-block img{display:block;max-width:min(240px,76vw);max-height:94px;object-fit:contain;filter:drop-shadow(0 12px 22px rgba(15,23,42,.18))}.smp-login-logo-block span{font-size:.77rem;font-weight:900;letter-spacing:.15em;text-transform:uppercase;color:#334155}.smp-login-logo-fallback{width:96px;height:96px;display:grid;place-items:center;border-radius:20px;background:#0f172a;color:#fff;font-weight:950;font-size:30px;letter-spacing:-.04em;box-shadow:0 18px 40px rgba(15,23,42,.24)}
.smp-login-copy{text-align:center}.smp-login-copy h1{margin:0 0 8px;color:#101827;font-size:clamp(28px,4.8vw,42px);line-height:.96;letter-spacing:-.06em;font-weight:950}.smp-login-copy p{max-width:34em;margin:0 auto;color:#475569;font-size:1rem;line-height:1.55;font-weight:560}
.smp-unified-login-card form{display:grid;gap:14px;margin:0}.smp-unified-login-card .login-username,.smp-unified-login-card .login-password,.smp-unified-login-card .login-remember,.smp-unified-login-card .login-submit{margin:0}.smp-unified-login-card label{display:grid;gap:8px;color:#1f2937;font-weight:850;font-size:.92rem}.smp-unified-login-card input[type="text"],.smp-unified-login-card input[type="password"]{width:100%;min-height:54px;border-radius:14px!important;border:1px solid rgba(15,23,42,.14)!important;background:#fff!important;color:#0f172a!important;padding:13px 15px!important;font:inherit!important;box-shadow:0 8px 22px rgba(15,23,42,.055)!important;outline:none!important}.smp-unified-login-card input[type="text"]:focus,.smp-unified-login-card input[type="password"]:focus{border-color:#0ea5e9!important;box-shadow:0 0 0 4px rgba(14,165,233,.17),0 10px 26px rgba(15,23,42,.08)!important}
.smp-unified-login-card .login-remember label{display:flex;align-items:center;gap:10px;font-size:.9rem;color:#475569;font-weight:750}.smp-unified-login-card input[type="checkbox"]{width:18px;height:18px;min-height:auto;border-radius:6px!important}.smp-unified-login-card input[type="submit"],.smp-unified-login-card .smp-primary{width:100%;min-height:54px;border-radius:14px!important;border:0!important;background:#101827!important;color:#fff!important;font-weight:950!important;letter-spacing:.02em!important;box-shadow:0 18px 36px rgba(15,23,42,.22)!important}.smp-unified-login-card input[type="submit"]:hover,.smp-unified-login-card .smp-primary:hover{transform:translateY(-1px);box-shadow:0 24px 44px rgba(15,23,42,.28)!important}
.smp-login-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:2px;font-size:.86rem;color:#64748b}.smp-login-footer span{font-weight:850}.smp-login-footer a{color:#0f172a!important;font-weight:850;text-decoration:none!important;border-bottom:1px solid rgba(15,23,42,.25)}
.smp-platform-admin .smp-admin-dashboard{max-width:1240px;margin:0 auto!important;padding:clamp(14px,2.6vw,28px)!important}.smp-vt1-admin-dashboard-template .entry-header{display:none!important}.smp-vt1-admin-dashboard-template .entry-content{max-width:none!important}.smp-admin-dashboard .smp-admin-grid .smp-admin-card .button{width:100%;margin:4px 0!important}.smp-admin-dashboard .smp-admin-card .button+.button{margin-left:0!important}
.smp a.button,.smp .button,.smp button,.smp-primary,.smp-secondary,.smp input[type="submit"],.smp-app-tabs a,.smp-tab-buttons button,.smp-remove-exercise,.smp-video-close,.smp-remove-lift-max,.smp-admin-save,.smp-status-ok,.smp-status-fail,.smp .button-primary{border-radius:14px!important}.smp-chip,.smp-badge,.smp-status-badge,.smp-trend,.smp-progress-row>em,.smp-progress-detail-head>em,.smp-activity-metrics span,.smp-alert time,.smp-method-card em,.smp-assignment-template-card em,.smp-template-picker em,.smp-library-actions em,.smp-timer-head em,.smp-lift-active-row em,.smp-intel-exercise em{border-radius:10px!important}.smp-card-summary:after{border-radius:10px!important}.smp-live-dot:before{border-radius:3px!important}
@media (min-width:783px) and (max-width:1180px){.smp-unified-login-wrap{padding:34px 22px}.smp-unified-login-card{width:min(100%,500px);padding:34px}.smp-platform-admin .smp-admin-dashboard-layout{grid-template-columns:minmax(0,1fr) minmax(300px,360px)!important}.smp-platform-admin .smp-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.smp-app{max-width:calc(100vw - 22px)!important}.smp-coach-layout,.smp-grid-main{grid-template-columns:minmax(0,1fr)!important}.smp-app-tabs{top:0}}
@media (max-width:782px){.smp-unified-login-wrap{min-height:100svh;padding:18px}.smp-unified-login-card{width:100%;border-radius:20px;padding:22px}.smp-login-logo-block img{max-height:78px}.smp-login-copy h1{font-size:32px}.smp-login-copy p{font-size:.94rem}.smp-login-footer{display:grid;justify-items:center;text-align:center}.smp-login-orb-one{width:80vw;height:42vw;left:-34vw}.smp-login-orb-two{width:86vw;height:58vw;right:-38vw}.smp-platform-admin .smp-admin-dashboard{padding:12px!important}.smp-platform-admin .smp-admin-dashboard-layout,.smp-platform-admin .smp-admin-grid{grid-template-columns:1fr!important}.smp-admin-dashboard-aside{position:static!important}.smp-admin-dashboard .smp-admin-card{padding:16px!important}.smp a.button,.smp .button,.smp button,.smp-primary,.smp-secondary,.smp input[type="submit"]{border-radius:14px!important}}

/* VT1 v2.0.3 — títulos de página bloqueados, login con error local y gestión admin de usuarios */
body.smp-vt1-shell-template .entry-header,
body.smp-vt1-shell-template .page-header,
body.smp-vt1-shell-template header.entry-header,
body.smp-vt1-shell-template h1.entry-title,
body.smp-vt1-shell-template .entry-title,
body.smp-vt1-shell-template .page-title,
body.smp-vt1-shell-template .wp-block-post-title,
body.smp-vt1-shell-template .post-title{display:none!important}
body.smp-vt1-shell-template .entry-content,
body.smp-vt1-shell-template .site-main,
body.smp-vt1-shell-template main,
body.smp-vt1-shell-template article{max-width:none!important}
.smp-login-error{display:block;margin:0;padding:13px 14px;border-radius:14px!important;border:1px solid rgba(220,38,38,.24);background:rgba(254,242,242,.92);color:#991b1b;font-weight:800;line-height:1.35;text-align:center;box-shadow:0 10px 26px rgba(127,29,29,.08)}
.smp-unified-login-form .login-submit button{cursor:pointer}.smp-unified-login-form .login-submit button:focus-visible{outline:3px solid rgba(14,165,233,.34);outline-offset:3px}
.smp-admin-user-management{overflow:hidden}.smp-admin-users-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end;margin:0 0 14px}.smp-admin-users-toolbar label{display:grid;gap:7px;font-weight:850;color:var(--smp-heading,#0f172a)}.smp-admin-users-toolbar input{min-height:44px;border-radius:14px!important;border:1px solid var(--smp-line,#e2e8f0)!important;padding:10px 12px!important;background:#fff!important}.smp-admin-users-list{display:grid;gap:14px}.smp-admin-user-card{display:grid;gap:12px;padding:14px;border:1px solid var(--smp-line,#e2e8f0);border-radius:18px;background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:0 10px 26px rgba(15,23,42,.05)}.smp-admin-user-head{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:12px;align-items:center}.smp-admin-user-head img{width:58px;height:58px;border-radius:14px;object-fit:cover;border:1px solid var(--smp-line,#e2e8f0);background:#fff}.smp-admin-user-head strong{display:block;color:var(--smp-heading,#0f172a);font-weight:900;line-height:1.15}.smp-admin-user-head small{display:block;color:var(--smp-muted,#64748b);overflow-wrap:anywhere}.smp-admin-user-head em{font-style:normal;justify-self:end;padding:7px 10px;border-radius:10px;background:#eef2ff;color:#3730a3;border:1px solid #c7d2fe;font-weight:850;font-size:.78rem}.smp-admin-user-photo-form{display:grid;gap:10px}.smp-photo-uploader-compact{grid-template-columns:52px minmax(0,1fr)!important;padding:10px!important;border-radius:16px!important}.smp-photo-uploader-compact img{width:52px!important;height:52px!important;border-radius:12px!important}.smp-admin-user-card .smp-inner-details{border-radius:16px!important;background:#fff}.smp-admin-user-card .smp-inner-details summary{font-weight:900;color:var(--smp-heading,#0f172a)}
@media (min-width:980px){.smp-admin-users-list{grid-template-columns:repeat(2,minmax(0,1fr))}.smp-admin-user-card .smp-form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:782px){.smp-admin-users-toolbar{grid-template-columns:1fr}.smp-admin-user-head{grid-template-columns:52px minmax(0,1fr)}.smp-admin-user-head em{grid-column:1/-1;justify-self:start}.smp-admin-user-card{padding:12px;border-radius:16px}.smp-photo-uploader-compact{grid-template-columns:1fr!important}.smp-photo-uploader-compact img{width:72px!important;height:72px!important}}

/* VT1 v2.0.3.1 — solo login: polish visual + quitar barra superior sin tocar dashboards */
body.smp-vt1-login-template,
body.smp-vt1-login-template.custom-background{
  margin:0!important;
  padding:0!important;
  background:#05b8cf!important;
  overflow-x:hidden!important;
}
body.smp-vt1-login-template #wpadminbar{display:none!important;}
body.smp-vt1-login-template .site-header,
body.smp-vt1-login-template #masthead,
body.smp-vt1-login-template header.site-header,
body.smp-vt1-login-template header.wp-block-template-part,
body.smp-vt1-login-template .wp-site-blocks>header,
body.smp-vt1-login-template .main-navigation,
body.smp-vt1-login-template .primary-navigation,
body.smp-vt1-login-template .site-branding,
body.smp-vt1-login-template .entry-header,
body.smp-vt1-login-template .page-header,
body.smp-vt1-login-template h1.entry-title,
body.smp-vt1-login-template .entry-title,
body.smp-vt1-login-template .page-title{
  display:none!important;
}
body.smp-vt1-login-template .site,
body.smp-vt1-login-template .site-content,
body.smp-vt1-login-template #content,
body.smp-vt1-login-template #page,
body.smp-vt1-login-template .wp-site-blocks,
body.smp-vt1-login-template main,
body.smp-vt1-login-template .site-main,
body.smp-vt1-login-template article,
body.smp-vt1-login-template .entry-content,
body.smp-vt1-login-template .wp-block-post-content{
  margin:0!important;
  padding:0!important;
  max-width:none!important;
  width:100%!important;
  min-height:100dvh!important;
  background:transparent!important;
  box-shadow:none!important;
  border:0!important;
}
body.smp-vt1-login-template .smp-unified-login-wrap{
  position:relative!important;
  min-height:100dvh!important;
  width:100%!important;
  margin:0!important;
  padding:clamp(20px,5vw,56px)!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background:
    radial-gradient(ellipse at 13% 10%, rgba(0,197,215,.98) 0%, rgba(0,197,215,.68) 26%, transparent 54%),
    radial-gradient(ellipse at 64% 56%, rgba(152,171,211,.72) 0%, rgba(152,171,211,.40) 28%, transparent 58%),
    radial-gradient(ellipse at 92% 87%, rgba(255,0,91,.96) 0%, rgba(255,0,91,.80) 31%, transparent 62%),
    linear-gradient(135deg,#02b8cd 0%,#18bcd0 28%,#93a7ce 54%,#c476ad 72%,#fc005c 100%)!important;
}
body.smp-vt1-login-template .smp-unified-login-wrap:before{
  content:""!important;
  position:absolute!important;
  inset:-18%!important;
  z-index:-2!important;
  background:
    radial-gradient(ellipse at 24% 34%, rgba(255,255,255,.18), transparent 45%),
    radial-gradient(ellipse at 88% 84%, rgba(255,0,87,.50), transparent 44%),
    radial-gradient(ellipse at 10% 20%, rgba(0,203,221,.42), transparent 42%)!important;
  filter:blur(22px)!important;
  transform:rotate(-4deg) scale(1.05)!important;
}
body.smp-vt1-login-template .smp-unified-login-wrap:after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:-1!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,0) 42%),
    linear-gradient(36deg,rgba(0,0,0,0) 58%,rgba(35,12,42,.12))!important;
  pointer-events:none!important;
}
body.smp-vt1-login-template .smp-login-orb{display:none!important;}
body.smp-vt1-login-template .smp-unified-login-card{
  width:min(100%,448px)!important;
  gap:20px!important;
  padding:clamp(24px,4.4vw,40px)!important;
  border-radius:24px!important;
  border:1px solid rgba(255,255,255,.58)!important;
  background:rgba(255,255,255,.90)!important;
  box-shadow:0 34px 90px rgba(30,24,48,.27), inset 0 1px 0 rgba(255,255,255,.80)!important;
  backdrop-filter:blur(22px) saturate(1.08)!important;
  -webkit-backdrop-filter:blur(22px) saturate(1.08)!important;
}
body.smp-vt1-login-template .smp-login-logo-block{gap:11px!important;margin:0!important;}
body.smp-vt1-login-template .smp-login-logo-block img{
  max-width:min(250px,78vw)!important;
  max-height:102px!important;
  object-fit:contain!important;
  filter:drop-shadow(0 14px 24px rgba(15,23,42,.16))!important;
}
body.smp-vt1-login-template .smp-login-logo-fallback{
  width:92px!important;
  height:92px!important;
  border-radius:22px!important;
  background:#101827!important;
  color:#fff!important;
  box-shadow:0 20px 44px rgba(15,23,42,.24)!important;
}
body.smp-vt1-login-template .smp-login-logo-block span{
  color:#263446!important;
  font-size:.78rem!important;
  letter-spacing:.18em!important;
  font-weight:950!important;
}
body.smp-vt1-login-template .smp-login-copy h1{
  margin:0 0 9px!important;
  color:#0f172a!important;
  font-size:clamp(30px,4.5vw,42px)!important;
  line-height:.96!important;
  letter-spacing:-.06em!important;
  font-weight:950!important;
}
body.smp-vt1-login-template .smp-login-copy p{
  color:#475569!important;
  font-size:1rem!important;
  line-height:1.55!important;
  margin:0 auto!important;
}
body.smp-vt1-login-template .smp-unified-login-form,
body.smp-vt1-login-template .smp-unified-login-card form{gap:14px!important;}
body.smp-vt1-login-template .smp-unified-login-card label{
  color:#172033!important;
  font-size:.92rem!important;
  font-weight:900!important;
}
body.smp-vt1-login-template .smp-unified-login-card input[type="text"],
body.smp-vt1-login-template .smp-unified-login-card input[type="password"]{
  min-height:56px!important;
  border-radius:16px!important;
  border:1px solid rgba(15,23,42,.13)!important;
  background:rgba(255,255,255,.98)!important;
  color:#0f172a!important;
  padding:14px 15px!important;
  box-shadow:0 9px 24px rgba(15,23,42,.06)!important;
}
body.smp-vt1-login-template .smp-unified-login-card input[type="text"]:focus,
body.smp-vt1-login-template .smp-unified-login-card input[type="password"]:focus{
  border-color:#04a9d6!important;
  box-shadow:0 0 0 4px rgba(4,169,214,.17),0 14px 30px rgba(15,23,42,.08)!important;
}
body.smp-vt1-login-template .smp-unified-login-card .login-remember label{
  display:flex!important;
  align-items:center!important;
  color:#475569!important;
  font-weight:800!important;
}
body.smp-vt1-login-template .smp-unified-login-card input[type="checkbox"]{
  width:18px!important;
  height:18px!important;
  min-height:18px!important;
  border-radius:6px!important;
}
body.smp-vt1-login-template .smp-unified-login-card input[type="submit"],
body.smp-vt1-login-template .smp-unified-login-card button.smp-primary,
body.smp-vt1-login-template .smp-unified-login-card .smp-primary{
  min-height:56px!important;
  border-radius:16px!important;
  background:#101827!important;
  color:#fff!important;
  border:0!important;
  font-weight:950!important;
  letter-spacing:.02em!important;
  box-shadow:0 20px 38px rgba(15,23,42,.24)!important;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease!important;
}
body.smp-vt1-login-template .smp-unified-login-card input[type="submit"]:hover,
body.smp-vt1-login-template .smp-unified-login-card button.smp-primary:hover,
body.smp-vt1-login-template .smp-unified-login-card .smp-primary:hover{
  transform:translateY(-1px)!important;
  background:#07111f!important;
  box-shadow:0 25px 48px rgba(15,23,42,.30)!important;
}
body.smp-vt1-login-template .smp-login-error{
  border-radius:16px!important;
  background:rgba(254,242,242,.94)!important;
  border:1px solid rgba(220,38,38,.24)!important;
  color:#991b1b!important;
}
body.smp-vt1-login-template .smp-login-footer{
  border-top:1px solid rgba(15,23,42,.08)!important;
  padding-top:14px!important;
  color:#64748b!important;
}
body.smp-vt1-login-template .smp-login-footer a{color:#0f172a!important;}
@media (min-width:783px) and (max-width:1180px){
  body.smp-vt1-login-template .smp-unified-login-wrap{padding:34px 22px!important;}
  body.smp-vt1-login-template .smp-unified-login-card{width:min(100%,500px)!important;}
}
@media (max-width:782px){
  body.smp-vt1-login-template .smp-unified-login-wrap{padding:18px!important;align-items:center!important;}
  body.smp-vt1-login-template .smp-unified-login-card{width:100%!important;border-radius:22px!important;padding:23px!important;gap:18px!important;}
  body.smp-vt1-login-template .smp-login-logo-block img{max-height:78px!important;}
  body.smp-vt1-login-template .smp-login-copy h1{font-size:32px!important;}
  body.smp-vt1-login-template .smp-login-copy p{font-size:.94rem!important;}
  body.smp-vt1-login-template .smp-login-footer{display:grid!important;justify-items:center!important;text-align:center!important;}
}
@media (max-width:380px){
  body.smp-vt1-login-template .smp-unified-login-card{padding:20px!important;border-radius:20px!important;}
  body.smp-vt1-login-template .smp-login-copy h1{font-size:29px!important;}
}

/* VT1 v2.0.3.2 — SOLO LOGIN: mostrar únicamente el acceso VT1, responsive, sin tocar dashboards */
html:has(body.smp-vt1-login-template){margin-top:0!important;background:#0bbfd2!important;}
body.smp-vt1-login-template,
body.smp-vt1-login-template.custom-background{
  min-height:100vh!important;
  min-height:100dvh!important;
  margin:0!important;
  padding:0!important;
  overflow-x:hidden!important;
  background:#0bbfd2!important;
}
body.smp-vt1-login-template #wpadminbar{display:none!important;visibility:hidden!important;height:0!important;}
body.smp-vt1-login-template .site-header,
body.smp-vt1-login-template header,
body.smp-vt1-login-template #masthead,
body.smp-vt1-login-template .site-footer,
body.smp-vt1-login-template footer,
body.smp-vt1-login-template #colophon,
body.smp-vt1-login-template .wp-site-blocks > header,
body.smp-vt1-login-template .wp-site-blocks > footer,
body.smp-vt1-login-template .main-navigation,
body.smp-vt1-login-template .primary-navigation,
body.smp-vt1-login-template .site-branding,
body.smp-vt1-login-template .entry-header,
body.smp-vt1-login-template .page-header,
body.smp-vt1-login-template .wp-block-post-title,
body.smp-vt1-login-template h1.entry-title,
body.smp-vt1-login-template .entry-title,
body.smp-vt1-login-template .page-title{
  display:none!important;
}
body.smp-vt1-login-template .site,
body.smp-vt1-login-template #page,
body.smp-vt1-login-template #content,
body.smp-vt1-login-template .site-content,
body.smp-vt1-login-template .wp-site-blocks,
body.smp-vt1-login-template main,
body.smp-vt1-login-template .site-main,
body.smp-vt1-login-template article,
body.smp-vt1-login-template .hentry,
body.smp-vt1-login-template .entry-content,
body.smp-vt1-login-template .wp-block-post-content{
  width:100%!important;
  max-width:none!important;
  min-height:100vh!important;
  min-height:100dvh!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.smp-vt1-login-template .entry-content > *,
body.smp-vt1-login-template .wp-block-post-content > *{
  max-width:none!important;
  margin:0!important;
}
body.smp-vt1-login-template .smp-unified-login-wrap{
  width:100%!important;
  min-height:100vh!important;
  min-height:100dvh!important;
  margin:0!important;
  padding:clamp(16px,3.9vw,48px)!important;
  display:grid!important;
  place-items:center!important;
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  background:
    radial-gradient(ellipse at 12% 10%, rgba(13,201,217,.96) 0%, rgba(13,201,217,.73) 27%, rgba(13,201,217,0) 56%),
    radial-gradient(ellipse at 56% 54%, rgba(143,176,216,.74) 0%, rgba(143,176,216,.45) 31%, rgba(143,176,216,0) 61%),
    radial-gradient(ellipse at 92% 88%, rgba(255,0,91,.98) 0%, rgba(255,0,91,.86) 32%, rgba(255,0,91,0) 64%),
    linear-gradient(132deg,#09bfd4 0%,#18bfd0 29%,#92add2 54%,#c376ad 72%,#ff0a68 100%)!important;
}
body.smp-vt1-login-template .smp-unified-login-wrap:before{
  content:""!important;
  position:absolute!important;
  inset:-16%!important;
  z-index:-2!important;
  background:
    radial-gradient(ellipse at 23% 36%, rgba(255,255,255,.19), transparent 46%),
    radial-gradient(ellipse at 83% 17%, rgba(255,255,255,.10), transparent 44%),
    radial-gradient(ellipse at 87% 83%, rgba(255,0,91,.45), transparent 45%)!important;
  filter:blur(20px)!important;
  transform:rotate(-3deg) scale(1.05)!important;
}
body.smp-vt1-login-template .smp-unified-login-wrap:after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:-1!important;
  background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,0) 44%),linear-gradient(40deg,rgba(0,0,0,0) 58%,rgba(34,12,42,.11))!important;
  pointer-events:none!important;
}
body.smp-vt1-login-template .smp-login-orb{display:none!important;}
body.smp-vt1-login-template .smp-unified-login-card{
  width:min(448px,calc(100vw - 32px))!important;
  margin:0 auto!important;
  padding:clamp(24px,3vw,38px)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:clamp(16px,2vw,20px)!important;
  border-radius:24px!important;
  border:1px solid rgba(255,255,255,.60)!important;
  background:rgba(255,255,255,.91)!important;
  box-shadow:0 34px 88px rgba(30,24,48,.27), inset 0 1px 0 rgba(255,255,255,.82)!important;
  backdrop-filter:blur(22px) saturate(1.08)!important;
  -webkit-backdrop-filter:blur(22px) saturate(1.08)!important;
}
body.smp-vt1-login-template .smp-login-logo-block{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  margin:0!important;
  text-align:center!important;
}
body.smp-vt1-login-template .smp-login-logo-block img{
  display:block!important;
  width:auto!important;
  max-width:min(250px,74vw)!important;
  max-height:96px!important;
  object-fit:contain!important;
  filter:drop-shadow(0 14px 24px rgba(15,23,42,.16))!important;
}
body.smp-vt1-login-template .smp-login-logo-block span{
  color:#263446!important;
  font-size:.78rem!important;
  letter-spacing:.20em!important;
  line-height:1.2!important;
  font-weight:950!important;
  text-transform:uppercase!important;
}
body.smp-vt1-login-template .smp-login-copy{text-align:center!important;}
body.smp-vt1-login-template .smp-login-copy h1{
  margin:0 0 9px!important;
  color:#0f172a!important;
  font-size:clamp(30px,3.4vw,42px)!important;
  line-height:.98!important;
  letter-spacing:-.06em!important;
  font-weight:950!important;
}
body.smp-vt1-login-template .smp-login-copy p{
  max-width:330px!important;
  margin:0 auto!important;
  color:#475569!important;
  font-size:clamp(.94rem,1.1vw,1rem)!important;
  line-height:1.55!important;
  font-weight:650!important;
}
body.smp-vt1-login-template .smp-unified-login-form,
body.smp-vt1-login-template .smp-unified-login-card form{
  width:100%!important;
  display:flex!important;
  flex-direction:column!important;
  gap:13px!important;
  margin:0!important;
}
body.smp-vt1-login-template .smp-unified-login-card p{margin:0!important;}
body.smp-vt1-login-template .smp-unified-login-card label{
  display:block!important;
  margin:0 0 7px!important;
  color:#172033!important;
  font-size:.90rem!important;
  line-height:1.2!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
body.smp-vt1-login-template .smp-unified-login-card input[type="text"],
body.smp-vt1-login-template .smp-unified-login-card input[type="password"]{
  width:100%!important;
  min-height:56px!important;
  border-radius:16px!important;
  border:1px solid rgba(15,23,42,.14)!important;
  background:rgba(255,255,255,.98)!important;
  color:#0f172a!important;
  padding:14px 15px!important;
  box-shadow:0 9px 24px rgba(15,23,42,.06)!important;
  outline:0!important;
}
body.smp-vt1-login-template .smp-unified-login-card input[type="text"]:focus,
body.smp-vt1-login-template .smp-unified-login-card input[type="password"]:focus{
  border-color:#04a9d6!important;
  box-shadow:0 0 0 4px rgba(4,169,214,.17),0 14px 30px rgba(15,23,42,.08)!important;
}
body.smp-vt1-login-template .smp-unified-login-card .login-remember label{
  display:flex!important;
  align-items:center!important;
  gap:11px!important;
  margin:0!important;
  color:#475569!important;
  font-weight:850!important;
  letter-spacing:.06em!important;
}
body.smp-vt1-login-template .smp-unified-login-card input[type="checkbox"]{
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  min-height:18px!important;
  margin:0!important;
  border-radius:4px!important;
}
body.smp-vt1-login-template .smp-unified-login-card .login-submit{margin-top:5px!important;}
body.smp-vt1-login-template .smp-unified-login-card input[type="submit"],
body.smp-vt1-login-template .smp-unified-login-card button.smp-primary,
body.smp-vt1-login-template .smp-unified-login-card .smp-primary{
  width:100%!important;
  min-height:56px!important;
  border-radius:16px!important;
  background:#101827!important;
  color:#fff!important;
  border:0!important;
  font-weight:950!important;
  letter-spacing:.02em!important;
  box-shadow:0 20px 38px rgba(15,23,42,.24)!important;
}
body.smp-vt1-login-template .smp-login-footer{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  border-top:1px solid rgba(15,23,42,.08)!important;
  padding-top:14px!important;
  color:#64748b!important;
  font-weight:800!important;
}
body.smp-vt1-login-template .smp-login-footer a{color:#0f172a!important;font-weight:900!important;}
@media (max-width:782px){
  body.smp-vt1-login-template .smp-unified-login-wrap{padding:16px!important;overflow-y:auto!important;}
  body.smp-vt1-login-template .smp-unified-login-card{width:min(100%,430px)!important;border-radius:22px!important;padding:22px!important;gap:16px!important;}
  body.smp-vt1-login-template .smp-login-logo-block img{max-height:78px!important;max-width:min(220px,70vw)!important;}
  body.smp-vt1-login-template .smp-login-copy h1{font-size:31px!important;}
  body.smp-vt1-login-template .smp-login-footer{display:grid!important;justify-items:center!important;text-align:center!important;}
}
@media (max-width:380px){
  body.smp-vt1-login-template .smp-unified-login-card{padding:19px!important;border-radius:20px!important;}
  body.smp-vt1-login-template .smp-login-logo-block img{max-height:68px!important;}
  body.smp-vt1-login-template .smp-login-copy h1{font-size:28px!important;}
  body.smp-vt1-login-template .smp-login-copy p{font-size:.90rem!important;}
}
@media (max-height:760px) and (min-width:783px){
  body.smp-vt1-login-template .smp-unified-login-wrap{padding:16px!important;overflow-y:auto!important;}
  body.smp-vt1-login-template .smp-unified-login-card{padding:24px 38px!important;gap:14px!important;}
  body.smp-vt1-login-template .smp-login-logo-block img{max-height:78px!important;}
  body.smp-vt1-login-template .smp-login-copy h1{font-size:34px!important;}
  body.smp-vt1-login-template .smp-login-copy p{font-size:.93rem!important;line-height:1.45!important;}
  body.smp-vt1-login-template .smp-unified-login-card input[type="text"],
  body.smp-vt1-login-template .smp-unified-login-card input[type="password"],
  body.smp-vt1-login-template .smp-unified-login-card button.smp-primary{min-height:50px!important;}
}
