:root{--navy:#102a43;--blue:#146c94;--green:#16846b;--red:#c84b4b;--ink:#243b53;--muted:#718096;--line:#dce6ec;--paper:#f5f8fa}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.top{height:68px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:10px;color:var(--navy);text-decoration:none;font-weight:900}.brand>b,.logo{width:40px;height:40px;border-radius:50%;background:var(--navy);color:white;display:grid;place-items:center;font-size:22px}.brand small,.who small{display:block;color:var(--muted);font-size:10px}.who{display:flex;gap:9px;align-items:center;text-align:right}.who button{border:0;background:#edf2f5;border-radius:7px;padding:7px}.nav{position:fixed;top:68px;bottom:0;width:210px;background:var(--navy);padding:25px 14px}.nav a{display:block;color:#c3d1dc;text-decoration:none;padding:12px;border-radius:9px;margin-bottom:5px}.nav a:hover{background:#ffffff18;color:white}main{margin-left:210px;padding:34px;max-width:1400px}.login-main{margin:0;min-height:100vh;display:grid;place-items:center}.login-card,.card,.current{background:white;border:1px solid var(--line);border-radius:16px;padding:25px;box-shadow:0 10px 30px #102a4310}.login-card{width:min(420px,calc(100% - 30px));text-align:center}.login-card .logo{margin:auto}.login-card h1{color:var(--navy);font-size:22px}.login-card p,.page-head p{color:var(--muted)}h1,h2{color:var(--navy)}.page-head small,.eyebrow,.attempt-head small{color:var(--blue);font-size:10px;font-weight:900;letter-spacing:.12em}.page-head h1{margin:5px 0;font-size:30px}.stack{display:grid;gap:14px;text-align:left}.stack label,.current label{font-size:12px;font-weight:750}.stack input,.stack select,.stack textarea,.current select,.inline-form input{width:100%;display:block;border:1px solid var(--line);border-radius:9px;padding:11px;margin-top:5px;font:inherit}.primary{display:inline-block;border:0;background:var(--blue);color:white!important;border-radius:9px;padding:12px 17px;text-decoration:none;font-weight:850;text-align:center}.primary:disabled{opacity:.4}.flash{max-width:800px;margin:0 0 15px;padding:12px;border-radius:8px}.flash.success{background:#e2f4ed;color:var(--green)}.flash.error{background:#fdebea;color:var(--red)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stats article{background:white;border:1px solid var(--line);border-radius:14px;padding:22px}.stats small,.stats b{display:block}.stats b{font-size:31px;color:var(--navy);margin-top:8px}.actions{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:20px}.actions a{background:white;border:1px solid var(--line);padding:22px;border-radius:14px;text-decoration:none;color:var(--ink)}.actions b,.actions small{display:block}.actions small{color:var(--muted);margin-top:7px}.two-col{display:grid;grid-template-columns:380px 1fr;gap:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.rows article{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}.rows article:last-child{border:0}.rows article>div{flex:1}.rows b,.rows small{display:block}.rows small{color:var(--muted);margin-top:3px}.avatar,.result{width:36px;height:36px;border-radius:50%;background:#e4edf2;display:grid;place-items:center;font-weight:900}.tag{background:#e9f3f7;color:var(--blue);border-radius:99px;padding:6px 9px;font-size:10px}.plan-list{display:grid;gap:13px}.plan{display:flex;gap:18px;text-decoration:none;color:var(--ink)}.plan h2{margin:5px 0}.plan p{color:var(--muted)}.plan footer{font-size:12px;color:var(--blue)}.target{width:55px;height:55px;min-width:55px;min-height:55px;flex:0 0 55px;aspect-ratio:1;align-self:center;border-radius:50%;background:#f2d338;border:6px solid #db5454;outline:5px solid #3c8ac1;display:grid;place-items:center;font-weight:900;color:#222}.inline-form{display:flex;gap:8px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;padding:10px;border-bottom:1px solid var(--line);white-space:nowrap}.assignment-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.current h2{margin-bottom:4px}.goal{display:flex;justify-content:space-between;align-items:end;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;margin:18px 0}.goal b{font-size:28px}.limits{display:flex;gap:7px;flex-wrap:wrap}.limits span{background:#edf4f7;border-radius:99px;padding:7px 9px;font-size:11px;font-weight:800}.danger{background:#fff0ee;color:var(--red);padding:10px;border-radius:8px;font-weight:800}.current form{display:grid;gap:13px}.recent{margin-top:20px}.result.pass{background:#e2f4ed;color:var(--green)}.result.fail{background:#fdebea;color:var(--red)}.result.open{color:var(--blue)}.attempt{max-width:650px;margin:auto}.attempt-head{display:flex;justify-content:space-between;align-items:start}.attempt-head h1{margin:4px 0}.attempt-head p{margin:0;color:var(--muted)}.end-number{background:white;border:1px solid var(--line);border-radius:9px;padding:10px}.live{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:20px 0}.live div{background:white;border:1px solid var(--line);padding:12px;border-radius:9px;text-align:center}.live small,.live b{display:block}.live small{color:var(--muted)}.live b{font-size:20px;margin-top:4px}.arrow-slots{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.arrow-slots i,.end-history i{aspect-ratio:1;border:2px dashed var(--line);border-radius:50%;display:grid;place-items:center;font-style:normal;font-weight:900}.hint{text-align:center;color:var(--muted);font-size:12px}.score-pad{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.score-pad button{border:0;border-radius:50%;aspect-ratio:1;font-size:18px;font-weight:900;box-shadow:inset 0 -3px #0002}.yellow,.s9,.s10{background:#f1d33e!important;color:#222}.red,.s7,.s8{background:#d95656!important;color:white}.blue,.s5,.s6{background:#368ac5!important;color:white}.miss,.s0{background:#263643!important;color:white}.attempt-actions{display:flex;gap:10px;margin-top:15px}.attempt-actions button{flex:1;padding:12px;border:1px solid var(--line);border-radius:9px;font-weight:800}.photo-area{margin:12px 0;text-align:center}.photo-btn{border:1px dashed #87b4c7;background:#edf7fa;color:var(--blue);padding:10px 15px;border-radius:9px;font-weight:800}.preview{height:100px;position:relative;border-radius:10px;overflow:hidden}.preview img{width:100%;height:100%;object-fit:cover}.preview span{position:absolute;bottom:6px;left:6px;background:#102a43dd;color:white;border-radius:99px;padding:4px 8px;font-size:10px}.preview button{position:absolute;right:6px;top:6px;border:0;border-radius:50%;width:28px;height:28px}.end-history{background:white;border:1px solid var(--line);border-radius:10px;margin:12px 0;max-height:180px;overflow:auto}.end-history h2{font-size:13px;padding:10px;margin:0;background:var(--paper);position:sticky;top:0}.end-history h2 small{float:right}.end-history article{display:grid;grid-template-columns:72px 1fr 25px 35px 40px;gap:5px;align-items:center;padding:8px;border-top:1px solid var(--line);font-size:11px}.end-history article>span{display:flex;gap:3px}.end-history i{width:20px;height:20px;border:0}.photo-sheet,.result-modal{display:none;position:fixed;inset:0;background:#102a43aa;z-index:100;padding:15px}.photo-sheet.open,.result-modal:not([hidden]){display:grid;place-items:center}.photo-sheet>div,.result-modal>div{background:white;width:min(430px,100%);border-radius:16px;padding:20px}.photo-sheet button{width:100%;padding:13px;margin:5px 0;border:1px solid var(--line);background:white;border-radius:9px;text-align:left}
.password-card{max-width:520px}.stack label small{display:block;color:var(--muted);margin-top:4px;font-weight:400}@media(max-width:800px){.nav{position:fixed;top:auto;bottom:0;left:0;right:0;width:auto;height:62px;display:flex;justify-content:space-around;padding:6px;z-index:30;overflow-x:auto}.nav a{font-size:10px;padding:10px 5px;white-space:nowrap}main{margin:0;padding:24px 15px 85px}.top{padding:0 15px}.who>span,.who>small{display:none}.two-col,.assignment-grid{grid-template-columns:1fr}.stats,.actions{grid-template-columns:1fr}.page-head h1{font-size:25px}}@media(max-width:450px){.arrow-slots{gap:5px}.score-pad{gap:6px}.end-history article{grid-template-columns:60px 1fr 20px 29px 32px;padding:7px 4px}.end-history i{width:17px;height:17px;font-size:8px}}
.top{height:78px}.brand{gap:11px;font-weight:400}.brand>b{display:none}.brand img{width:57px;height:57px;object-fit:contain;flex:0 0 auto}.brand strong{display:block;font-size:15px;line-height:1.15}.brand small{font-size:10px;margin-top:4px}.nav{top:78px}.login-card{width:min(440px,calc(100% - 30px))}.login-logo{width:115px;height:115px;object-fit:contain}.login-card h1{margin-bottom:5px}.login-card .club-name{font-weight:750;color:var(--blue);margin-top:0}@media(max-width:800px){.top{padding:0 12px}.brand img{width:48px;height:48px}.brand strong{font-size:12px;max-width:240px}.brand small{font-size:9px}.nav{top:auto}}@media(max-width:520px){.brand strong,.brand small{max-width:185px}.brand strong{font-size:11px}}
.action-heading{display:flex;justify-content:space-between;align-items:end;gap:20px}.notice{padding:13px 16px;border-radius:10px;background:#fff3d2;color:#725500;margin-bottom:18px}.edit-section{margin-bottom:20px}.edit-section summary{font-weight:850;color:var(--navy);cursor:pointer}.edit-plan-form{margin-top:18px}.plan-editor{grid-template-columns:360px 1fr}.stage-editor{display:grid;gap:7px;margin-bottom:22px}.stage-editor button,.requirements-editor button{border:0;background:#e6f1f5;color:var(--blue);border-radius:7px;padding:8px;font-weight:800}.requirements-editor .help{color:var(--muted);font-size:12px}.requirements-editor input{width:72px;border:1px solid var(--line);border-radius:7px;padding:8px}.requirements-editor th,.requirements-editor td{padding:7px}.requirements-editor button:disabled,.stage-editor button:disabled{opacity:.45}@media(max-width:800px){.action-heading{align-items:flex-start;flex-direction:column}.plan-editor{grid-template-columns:1fr}.requirements-editor{padding:16px}.requirements-editor input{width:64px}}
.new-requirement{background:#eef7fa}.requirements-editor select{max-width:82px;border:1px solid var(--line);border-radius:7px;padding:8px}.requirements-editor .add-row{background:var(--blue);color:white;white-space:nowrap}
.requirements-editor .sequence{color:var(--muted);font-weight:850;text-align:center}.requirements-editor .sequence input{width:68px;min-width:68px;text-align:center;font-weight:850}
.requirements-editor .help{font-size:0}.requirements-editor .help:after{content:"El campo Orden define la secuencia de progresión y no puede repetirse dentro del plan.";font-size:12px}
.requirements-editor form[id^="req-"]{display:flex;gap:5px}.requirements-editor .delete-row{background:#fdebea;color:var(--red)}
.requirements-editor .grouped-help{font-size:12px}.requirements-editor .grouped-help:after{content:none}.grouped-editor .distances-input{width:145px}.group-actions{display:flex;gap:5px}.sequence-note{color:var(--muted);font-size:11px}.grouped-editor table{min-width:760px}
.program-distances{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.program-distances h2{margin:0 0 4px}.program-distances p{margin:0;color:var(--muted);font-size:12px}.program-distances form{width:min(520px,100%)}.program-distances input{min-width:250px}.grouped-editor table{min-width:620px}@media(max-width:800px){.program-distances{align-items:stretch;flex-direction:column}.program-distances form{width:100%}}
.remove-assignment{border:0;background:#fdebea;color:var(--red);border-radius:7px;padding:7px 10px;font-weight:800;cursor:pointer}.remove-assignment:hover{background:#f8d8d5}@media(max-width:520px){.rows article{flex-wrap:wrap}.rows article>form{margin-left:48px}}
.session-formats{margin:20px 0}.session-formats>p{color:var(--muted)}.session-formats table{min-width:920px}.session-formats input{width:130px;border:1px solid var(--line);border-radius:7px;padding:8px}.session-formats input[type=number]{width:82px}.session-formats td small{display:block;color:var(--muted);margin-top:3px}.session-formats button{border:0;background:#e6f1f5;color:var(--blue);border-radius:7px;padding:8px;font-weight:800}.session-formats button.primary{background:var(--blue);color:white}.session-formats .delete-row{background:#fdebea;color:var(--red)}
.archer-link{display:block;color:var(--blue);font-weight:850;text-decoration:none}.archer-link:hover{text-decoration:underline}
.user-card{flex-wrap:wrap}.user-summary{min-width:160px}.user-editor{flex:0 0 100%;margin-left:48px;background:var(--paper);border-radius:10px;padding:10px 12px}.user-editor summary{cursor:pointer;color:var(--blue);font-size:12px;font-weight:850}.user-editor form{margin-top:12px;grid-template-columns:1fr 1fr}.user-editor form>button{align-self:end}@media(max-width:520px){.user-editor{margin-left:0}.user-editor form{grid-template-columns:1fr}}
.users-table-card{padding:0;overflow:hidden}.users-editor-table{min-width:1170px}.users-editor-table th{background:#edf3f6;color:var(--navy);font-size:11px}.users-editor-table td{vertical-align:middle}.users-editor-table input,.users-editor-table select{width:100%;border:1px solid transparent;background:transparent;border-radius:7px;padding:9px;font:inherit}.users-editor-table input:hover,.users-editor-table input:focus,.users-editor-table select:hover,.users-editor-table select:focus{background:white;border-color:#9fc1d0;outline:none}.users-editor-table td:nth-child(1){min-width:220px}.users-editor-table td:nth-child(2){min-width:200px}.users-editor-table td:nth-child(3){min-width:145px}.users-editor-table td:nth-child(4){min-width:120px}.users-editor-table td:nth-child(5){min-width:130px}.users-editor-table td:nth-child(6){min-width:160px}.fixed-role{display:block;padding:9px;color:var(--muted)}.user-actions{display:flex;gap:6px;min-width:205px}.user-actions button,.save-user{border:0;border-radius:8px;padding:9px 11px;font-weight:850;white-space:nowrap}.save-user{background:#e6f1f5;color:var(--blue)}.new-user-row{background:#eef8f4}.new-user-row td{border-top:2px solid #91cbb7}.new-user-row input,.new-user-row select{background:white;border-color:#bcd5ca}.table-help{margin:12px 18px;color:var(--muted);font-size:11px}
.user-filters{display:flex;align-items:end;gap:12px;margin-bottom:16px;padding:14px 18px}.user-filters label{display:grid;gap:5px;font-size:11px;font-weight:800}.user-filters select{min-width:145px;border:1px solid var(--line);border-radius:8px;padding:9px;background:white;font:inherit}.user-filters .primary{padding:10px 16px}.user-filters a{padding:10px;color:var(--blue);font-weight:800;text-decoration:none}.user-filters>span{margin-left:auto;color:var(--muted);font-size:12px}@media(max-width:800px){.user-filters{align-items:stretch;flex-direction:column}.user-filters select{width:100%}.user-filters>span{margin-left:0}}
.users-editor-table{min-width:1080px}.users-editor-table th:nth-child(2),.users-editor-table td:nth-child(2){width:78px;min-width:78px;max-width:78px;padding-left:4px;padding-right:4px}.users-editor-table td:nth-child(2) input{padding:7px 4px;font-size:12px}
.mobile-users{display:none}.mobile-user-list{display:grid;gap:12px}.mobile-user-list>article{border:1px solid var(--line);border-radius:12px;padding:14px}.mobile-user-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}.mobile-user-head b,.mobile-user-head small{display:block}.mobile-user-head small{color:var(--muted);margin-top:3px}.mobile-user-list .whatsapp{margin:0 0 10px 46px;border:0}.mobile-user-list details{background:var(--paper);border-radius:9px;padding:9px}.mobile-user-list summary{cursor:pointer;color:var(--blue);font-size:12px;font-weight:850}.mobile-user-list details form{margin-top:12px}@media(max-width:800px){.users-table-card{display:none}.mobile-users{display:grid;gap:16px}}
.plans-heading{display:flex;justify-content:space-between;align-items:end;gap:20px}.versions-toggle{background:white;border:1px solid var(--line);border-radius:10px;padding:11px 14px;white-space:nowrap}.versions-toggle label{font-size:12px;font-weight:800;cursor:pointer}.versions-toggle input{margin-right:7px}.archived-plan{opacity:.65}.archived-plan:hover{opacity:1}@media(max-width:800px){.plans-heading{align-items:flex-start;flex-direction:column}.versions-toggle{width:100%}}
.whatsapp{background:#168b55;color:white;text-decoration:none;border-radius:8px;padding:8px 11px;font-size:12px;font-weight:850}.phone-form{display:flex;gap:5px;margin-top:7px}.phone-form input{width:150px;border:1px solid var(--line);border-radius:7px;padding:7px}.phone-form button{border:0;border-radius:7px;padding:7px;color:var(--blue);font-weight:800}.user-rows article>div{min-width:0}.assignment-rows .whatsapp{white-space:nowrap}@media(max-width:520px){.user-rows article,.assignment-rows article{align-items:flex-start}.whatsapp{margin-left:48px}}
.brand small{font-size:12px}
@media(max-width:800px){.brand small{font-size:10px}}
.score-evolution{margin-bottom:20px}.score-evolution>h2{margin-bottom:4px}.score-chart{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.score-chart h3{margin:0 0 10px;color:var(--navy)}.score-chart-legend{display:flex;flex-wrap:wrap;gap:9px 12px;margin:0 0 10px;padding:0;border:0;font-size:11px;font-weight:800}.score-chart-legend label{display:flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:#f8fafb;cursor:pointer}.score-chart-legend input{width:16px;height:16px;margin:0;accent-color:hsl(calc(198 + var(--series-index)*42),65%,42%)}.score-chart-legend i{width:18px;height:3px;border-radius:3px;background:hsl(calc(198 + var(--series-index)*42),65%,42%)}.score-chart-legend label:has(input:not(:checked)){color:var(--muted);opacity:.65}.score-chart-legend label:has(input:not(:checked)) i{background:#aebbc4}.score-chart-canvas{position:relative;width:100%;height:290px}.score-chart-canvas canvas{display:block;width:100%;height:100%}@media(max-width:520px){.score-chart-canvas{height:250px}.score-chart-legend{gap:7px}.score-chart-legend label{padding:8px}}
.assignments-table-card{padding:0;overflow:hidden}.assignments-editor-table{min-width:1050px}.assignments-editor-table th{background:#edf3f6;color:var(--navy);font-size:11px}.assignments-editor-table td{vertical-align:middle}.assignments-editor-table td small{display:block;color:var(--muted);margin-top:3px}.assignments-editor-table select{width:100%;border:1px solid transparent;background:transparent;border-radius:7px;padding:9px;font:inherit}.new-assignment-row{background:#eef8f4}.new-assignment-row td{border-top:2px solid #91cbb7}.new-assignment-row select{background:white;border-color:#bcd5ca}.assignments-editor-table .remove-assignment{border:0;border-radius:8px;padding:9px 11px;background:#fff0ee;color:var(--red);font-weight:850}.mobile-assignments{display:none}@media(max-width:800px){.assignments-table-card{display:none}.mobile-assignments{display:grid;gap:16px}}
.grouped-assignments{min-width:930px}.archer-assignment-head td{background:#eaf1f5;border-top:10px solid white}.archer-assignment-head td:first-child{display:flex;align-items:center;gap:10px}.archer-assignment-head .avatar{flex:0 0 auto}.archer-assignment-head b,.archer-assignment-head small{display:block}.assignment-subrow td{background:#fbfcfd}.assignment-subrow td:first-child{padding-left:28px;color:var(--muted);font-size:12px}.assignment-branch{color:var(--blue);font-size:18px;margin-right:8px}.grouped-assignments .new-assignment-row td{border-top:14px solid white}
.mobile-assignment-groups{display:grid;gap:14px}.mobile-assignment-groups>article{border:1px solid var(--line);border-radius:12px;overflow:hidden}.mobile-assignment-groups header{display:flex;align-items:center;gap:10px;padding:13px;background:#eaf1f5}.mobile-assignment-groups header b,.mobile-assignment-groups header small,.mobile-assignment-sublist b,.mobile-assignment-sublist small{display:block}.mobile-assignment-groups small{color:var(--muted);margin-top:3px}.mobile-assignment-sublist>div{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:12px 13px;border-top:1px solid var(--line)}.mobile-assignment-sublist .remove-assignment{border:0;border-radius:8px;padding:8px;background:#fff0ee;color:var(--red);font-weight:800}.mobile-assignment-groups>article>.whatsapp,.mobile-assignment-groups>article>form>.whatsapp{margin:0 13px 13px}
.assignment-toggle{width:30px;height:30px;flex:0 0 30px;border:1px solid #9fc1d0;border-radius:7px;background:white;color:var(--blue);font-size:20px;font-weight:900;line-height:1;cursor:pointer}.assignment-toggle:hover{background:#f3f8fa}.assignment-subrow[hidden],.mobile-assignment-sublist[hidden]{display:none}
.target-triple{width:34px;height:76px;min-width:34px;min-height:76px;flex:0 0 34px;align-self:center;display:grid;grid-template-rows:repeat(3,22px);gap:5px;place-content:center}.target-triple i{width:22px;height:22px;aspect-ratio:1;border-radius:50%;background:#f2d338;border:3px solid #db5454;outline:2px solid #3c8ac1;display:grid;place-items:center;font-size:7px;line-height:1;font-style:normal;font-weight:900;color:#222}
.target-vegas{position:relative;width:58px;height:55px;min-width:58px;min-height:55px;flex:0 0 58px;align-self:center}.target-vegas i{position:absolute;width:25px;height:25px;aspect-ratio:1;border-radius:50%;background:#f2d338;border:3px solid #db5454;outline:2px solid #3c8ac1;display:grid;place-items:center;font-size:7px;line-height:1;font-style:normal;font-weight:900;color:#222}.target-vegas i:nth-child(1){top:1px;left:17px}.target-vegas i:nth-child(2){bottom:1px;left:3px}.target-vegas i:nth-child(3){right:3px;bottom:1px}
.access-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}.access-heading select{display:block;margin-top:5px;border:1px solid var(--line);border-radius:9px;padding:10px;background:white;font:inherit}.access-table{margin-top:20px;padding:0;overflow:hidden}.access-table th{background:#edf3f6;color:var(--navy);font-size:11px}.access-table td b,.access-table td small{display:block}.access-table td small{color:var(--muted);margin-top:3px}.access-result{display:inline-block;border-radius:99px;padding:6px 9px;font-size:10px;font-weight:850}.access-result.login_success{background:#e2f4ed;color:var(--green)}.access-result.login_failure{background:#fdebea;color:var(--red)}.access-result.logout{background:#edf2f5;color:var(--muted)}.empty-table{text-align:center;color:var(--muted);padding:35px!important}@media(max-width:800px){.access-heading{align-items:stretch;flex-direction:column}.access-stats{grid-template-columns:1fr 1fr}.access-table table{min-width:760px}}

.progress-stats{grid-template-columns:repeat(4,1fr);margin-bottom:20px}.progress-table{margin-top:20px}.progress-table td small,.progress-table td b{display:block}.progress-table td small,.muted{color:var(--muted);margin-top:3px}.compact{padding:8px 10px;font-size:12px}.intensity{display:inline-grid;place-items:center;min-width:32px;padding:6px;border-radius:99px;font-weight:900}.intensity.low{background:#edf2f5;color:var(--muted)}.intensity.medium{background:#fff0c7;color:#876600}.intensity.high{background:#dcf3e9;color:var(--green)}.progress-layout{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.assignment-progress{display:grid;grid-template-columns:1fr auto;gap:8px;padding:12px 0;border-bottom:1px solid var(--line)}.assignment-progress>div small,.assignment-progress>small{display:block;color:var(--muted);margin-top:3px}.progress-track{grid-column:1/-1;height:10px;background:#e8eff3;border-radius:99px;overflow:hidden}.progress-track i{display:block;height:100%;background:var(--green);border-radius:99px}.activity-chart{height:220px;display:flex;gap:10px;align-items:end;padding-top:20px}.activity-chart>div{height:100%;flex:1;display:flex;flex-direction:column;justify-content:end;text-align:center;min-width:28px}.activity-chart span{display:block;min-height:3px;background:var(--blue);border-radius:7px 7px 2px 2px}.activity-chart b{font-size:10px;margin-top:5px}.activity-chart small{font-size:9px;color:var(--muted);margin-top:3px}.result-label{border-radius:99px;padding:5px 8px;font-size:10px;font-weight:850}.result-label.pass,.status-word.pass{background:#e2f4ed;color:var(--green)}.result-label.fail,.status-word.fail{background:#fdebea;color:var(--red)}.result-label.open,.status-word.open{background:#e9f3f7;color:var(--blue)}.entry-cards{display:grid;gap:12px}.entry-cards>article{display:grid;grid-template-columns:110px 1fr 90px 150px;gap:14px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:12px}.entry-cards small{display:block;color:var(--muted);font-size:10px}.entry-scores{display:flex;gap:5px;flex-wrap:wrap}.entry-scores i{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:11px;font-weight:900;background:#e4edf2}.entry-total{display:grid;grid-template-columns:1fr auto;gap:3px 8px}.entry-photo{height:76px;position:relative;border-radius:9px;overflow:hidden}.entry-photo img{width:100%;height:100%;object-fit:cover}.entry-photo span{position:absolute;inset:auto 0 0;background:#102a43cc;color:white;text-align:center;padding:5px;font-size:10px}@media(max-width:800px){.progress-stats{grid-template-columns:1fr 1fr}.progress-layout{grid-template-columns:1fr}.entry-cards>article{grid-template-columns:1fr}.entry-photo{width:100%;height:150px}}@media(max-width:420px){.progress-stats{grid-template-columns:1fr 1fr}.progress-stats article{padding:14px}.progress-stats b{font-size:24px}}

.attempt-actions .abort-attempt{background:#fdebea;border-color:#efb4b0;color:var(--red)}

/* Navegación móvil compacta */
.brand .brand-title-short,.brand .club-name-short,.menu-toggle,.mobile-nav-head,.mobile-logout{display:none}.nav-backdrop{display:none}
@media(max-width:800px){
  body.menu-open{overflow:hidden}
  .top{height:52px;padding:0 10px;gap:8px}
  .brand{gap:8px;min-width:0}
  .brand img{width:38px;height:38px}
  .brand .brand-title-full,.brand .club-name-full,.who{display:none}
  .brand .brand-title-short,.brand .club-name-short{display:block}
  .brand-title-short{font-size:16px!important;line-height:1.05}
  .club-name-short{font-size:10px!important;margin-top:2px!important;white-space:nowrap}
  .menu-toggle{display:grid;width:42px;height:42px;flex:0 0 42px;padding:9px;border:0;border-radius:9px;background:#edf2f5;place-content:center;gap:4px}
  .menu-toggle span{display:block;width:23px;height:3px;border-radius:3px;background:var(--navy)}
  .nav{display:block;position:fixed;z-index:60;top:0;right:0;bottom:0;left:auto;width:min(330px,88vw);height:auto;padding:12px 14px 22px;background:var(--navy);overflow-y:auto;transform:translateX(105%);transition:transform .2s ease;box-shadow:-12px 0 30px #102a4340}
  .nav.open{transform:translateX(0)}
  .nav a{display:block;margin:2px 0;padding:13px 12px;border-radius:9px;color:#e5eef4;font-size:16px;line-height:1.2;white-space:normal}
  .nav a:hover,.nav a:focus{background:#ffffff18;color:white;outline:none}
  .mobile-nav-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:5px 4px 14px;margin-bottom:8px;border-bottom:1px solid #ffffff26;color:white}
  .mobile-nav-head b,.mobile-nav-head small{display:block}
  .mobile-nav-head b{font-size:14px}.mobile-nav-head small{margin-top:3px;color:#c3d1dc;font-size:11px}
  .menu-close{width:40px;height:40px;border:0;border-radius:9px;background:#ffffff16;color:white;font-size:28px;line-height:1}
  .mobile-logout{display:block;margin-top:10px;padding-top:12px;border-top:1px solid #ffffff26}
  .mobile-logout button{width:100%;padding:13px 12px;border:0;border-radius:9px;background:#ffffff16;color:white;text-align:left;font:inherit;font-size:16px;font-weight:800}
  .nav-backdrop:not([hidden]){display:block;position:fixed;z-index:55;inset:0;border:0;background:#102a4399}
  main{margin:0;padding:20px 15px 28px}
}
@media(prefers-reduced-motion:reduce){.nav{transition:none}}
.stage-editor .delete-row{background:#fdebea;color:var(--red)}

/* PEEP2: módulo de competiciones */
.competition-heading{margin-bottom:20px}.competition-heading p{margin-bottom:0}.competition-create{margin-bottom:20px}.competition-create .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.competition-create label{display:grid;gap:6px;font-size:12px;font-weight:800;color:var(--navy)}.competition-create input,.competition-create select,.status-form select{width:100%;border:1px solid var(--line);border-radius:8px;padding:10px;background:white;font:inherit}.competition-create button{align-self:end}.competition-list{padding:0;overflow:hidden}.competition-list>h2{padding:20px 20px 0}.competition-list table{min-width:850px}.competition-list td b,.competition-list td small{display:block}.competition-list td small{margin-top:4px;color:var(--muted)}.competition-status{display:inline-block;padding:6px 9px;border-radius:99px;font-size:11px;font-weight:850}.competition-status.draft{background:#edf2f5;color:var(--muted)}.competition-status.open{background:#e2f4ed;color:var(--green)}.competition-status.in_progress{background:#fff0c7;color:#765b00}.competition-status.closed{background:#fdebea;color:var(--red)}.competition-status.archived{background:#e8e8ef;color:#5c5c70}.status-form{display:flex;gap:6px}.status-form button{border:0;border-radius:8px;padding:9px 11px;background:#e6f1f5;color:var(--blue);font-weight:850;white-space:nowrap}@media(max-width:800px){.competition-create .form-grid{grid-template-columns:1fr}.competition-list{overflow-x:auto}}
.modality-picker{display:grid;grid-template-columns:1fr 1fr;gap:8px;border:1px solid var(--line);border-radius:9px;padding:10px 12px}.modality-picker legend{padding:0 5px;color:var(--navy);font-size:12px;font-weight:800}.competition-create .modality-picker label{display:flex;align-items:center;gap:7px}.modality-picker input{width:17px;height:17px}
.invitation-panel{margin-bottom:20px}.invitation-users{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:16px 0}.invitation-user{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#f8fafb;cursor:pointer}.invitation-user:has(input:disabled){opacity:.55;cursor:not-allowed}.invitation-user input{width:18px;height:18px}.invitation-user b,.invitation-user small{display:block}.invitation-user small{margin-top:3px;color:var(--muted)}.competition-participants{padding:0;overflow:hidden}.competition-participants>h2,.competition-participants>p{margin-left:20px;margin-right:20px}.competition-participants table{min-width:760px}.competition-participants td b,.competition-participants td small{display:block}.competition-participants td small{margin-top:3px;color:var(--muted)}.invitation-status{display:inline-block;padding:6px 9px;border-radius:99px;font-size:11px;font-weight:850}.invitation-status.pending{background:#fff0c7;color:#765b00}.invitation-status.accepted{background:#e2f4ed;color:var(--green)}.invitation-status.declined,.invitation-status.cancelled{background:#fdebea;color:var(--red)}.invitation-cards{display:grid;gap:14px}.invitation-cards article{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center}.invitation-cards h2{margin:3px 0}.invitation-cards p{margin:0}.invitation-actions{grid-column:1/-1;display:flex;gap:10px}.invitation-actions .decline{border:0;border-radius:8px;padding:10px 14px;background:#fdebea;color:var(--red);font-weight:850}@media(max-width:800px){.invitation-users{grid-template-columns:1fr}.invitation-cards article{grid-template-columns:1fr}.invitation-actions{grid-column:1}}
.whatsapp-group-notice{margin-bottom:20px}.whatsapp-group-notice>p{white-space:pre-line;padding:14px;border-radius:10px;background:#f4f8fa}.whatsapp-group-notice>small{display:block;margin-top:12px;color:var(--muted)}.button-row{display:flex;gap:9px;align-items:center}.copy-whatsapp{border:0;border-radius:8px;padding:9px 12px;background:#e6f1f5;color:var(--blue);font-weight:850}.competition-structure,.target-assignments{margin-top:20px}.structure-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.structure-form label,.target-form label{display:grid;gap:5px;color:var(--navy);font-size:11px;font-weight:800}.structure-form input,.structure-form select,.session-form input,.target-form input,.target-form select{width:100%;border:1px solid var(--line);border-radius:8px;padding:9px;background:white;font:inherit}.structure-form .inline-check{display:flex;align-items:center;gap:7px}.structure-form .inline-check input{width:18px}.stage-block{margin-top:18px;padding:15px;border:1px solid var(--line);border-radius:11px}.stage-block header b,.stage-block header small,.session-list b,.session-list small{display:block}.stage-block small,.session-list small{margin-top:3px;color:var(--muted)}.session-list{display:grid;gap:7px;margin:12px 0}.session-list>div{padding:9px;background:#f5f8fa;border-radius:8px}.session-form{display:grid;grid-template-columns:1.2fr 80px 1fr 1fr auto;gap:7px}.session-form button{border:0;border-radius:8px;padding:9px;background:#e6f1f5;color:var(--blue);font-weight:850}.target-form{display:grid;grid-template-columns:2fr 2fr 1fr 1fr auto;gap:9px;align-items:end;margin-bottom:18px}.target-assignments table{min-width:700px}@media(max-width:800px){.structure-form{grid-template-columns:1fr 1fr}.session-form,.target-form{grid-template-columns:1fr}.button-row{align-items:stretch;flex-direction:column}.button-row>*{text-align:center}}
.event-editor{margin-top:10px;border:1px solid var(--line);border-radius:10px;padding:11px}.event-editor summary{cursor:pointer;color:var(--blue);font-weight:850}.event-editor form{margin-top:12px}.event-actions{display:flex;gap:8px;align-items:end}.event-actions button{border:0;border-radius:9px;padding:12px 17px;font-weight:850}.event-actions .delete-row{background:#fdebea;color:var(--red)}
.template-picker{display:grid;grid-template-columns:1fr 90px auto;gap:10px;align-items:end}.template-picker label{display:grid;gap:5px;font-size:11px;font-weight:800}.template-picker select,.template-picker input,.event-editor input,.event-editor select{width:100%;border:1px solid var(--line);border-radius:8px;padding:9px;background:white;font:inherit}.event-participants{grid-column:1/-1;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.event-participants h3{color:var(--navy)}.assigned-event-participants{display:grid;gap:7px;margin-top:12px}.assigned-event-participants form{display:flex;justify-content:space-between;align-items:center;margin:0;padding:8px;background:var(--paper);border-radius:8px}.assigned-event-participants .delete-row{border:0;background:#fdebea;color:var(--red);border-radius:7px;padding:8px;font-weight:800}@media(max-width:800px){.template-picker{grid-template-columns:1fr}.event-actions{align-items:stretch;flex-direction:column}}
.template-type{margin-top:18px;border:1px solid var(--line);border-radius:12px;overflow:hidden}.template-type>h3{margin:0;padding:14px 16px;background:var(--navy);color:white}.template-division{border-top:1px solid var(--line);padding:0}.template-division>summary{cursor:pointer;padding:13px 16px;background:#edf4f7;color:var(--navy);font-weight:900}.template-division>summary small{margin-left:7px;color:var(--muted);font-weight:700}.template-items{padding:4px 12px 13px}.template-items>.event-editor{margin-top:9px}
.bulk-controls{display:grid;grid-template-columns:2fr 120px 120px auto;gap:9px;align-items:end}.bulk-controls label{display:grid;gap:5px;font-size:11px;font-weight:800}.bulk-controls select,.bulk-controls input{width:100%;border:1px solid var(--line);border-radius:8px;padding:9px;background:white;font:inherit}.event-entry-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}.event-entry-group{border:1px solid var(--line);border-radius:10px;overflow:hidden}.event-entry-group header{padding:11px;background:#edf4f7}.event-entry-group header b,.event-entry-group header small{display:block}.event-entry-group header small{margin-top:3px;color:var(--muted)}.event-entry-group>label{display:flex;gap:9px;padding:9px 11px;border-top:1px solid var(--line);align-items:center}.event-entry-group>label input{width:18px;height:18px}.event-entry-group>label span small{color:var(--muted)}.manual-target{margin:12px 0}.manual-target>summary{cursor:pointer;color:var(--blue);font-weight:850}.target-grid td:nth-child(2){font-size:16px;color:var(--navy)}@media(max-width:800px){.bulk-controls,.event-entry-groups{grid-template-columns:1fr}}
.assignment-hierarchy{display:grid;gap:14px}.assignment-session{border:1px solid var(--line);border-radius:12px;overflow:hidden}.assignment-session>summary{display:flex;justify-content:space-between;gap:12px;padding:14px;background:#e9f1f5;cursor:pointer;color:var(--navy)}.assignment-session>summary span{color:var(--muted);font-size:12px}.assignment-events{display:grid;gap:12px;padding:12px}.assignment-event{border:1px solid var(--line);border-radius:10px;overflow:hidden}.assignment-event>header{display:flex;justify-content:space-between;gap:12px;padding:11px;background:#f5f8fa}.assignment-event>header b,.assignment-event>header small{display:block}.assignment-event>header small{margin-top:3px;color:var(--muted)}.assignment-event>header>span{white-space:nowrap;color:var(--muted);font-size:11px}.pool-assignment{display:grid;grid-template-columns:minmax(220px,1fr) 90px 80px auto;gap:8px;align-items:end;padding:11px}.pool-assignment label{display:grid;gap:4px;font-size:11px;font-weight:800}.pool-assignment select,.pool-assignment input{width:100%;padding:8px;border:1px solid var(--line);border-radius:8px;background:white}.assignment-empty{padding:11px}.assigned-participants{list-style:none;margin:0;padding:0}.assigned-participants li{display:grid;grid-template-columns:60px minmax(180px,1fr) auto;gap:10px;align-items:center;padding:9px 11px;border-top:1px solid var(--line)}.target-slot{font-weight:900;font-size:16px;color:var(--navy)}.assignment-actions,.assignment-actions form{display:flex;gap:5px}.assignment-actions button{min-width:34px;padding:6px 9px}.assignment-actions button:disabled{opacity:.3;cursor:not-allowed}@media(max-width:800px){.assignment-session>summary,.assignment-event>header{align-items:flex-start;flex-direction:column}.pool-assignment{grid-template-columns:1fr 1fr}.pool-assignment label:first-child{grid-column:1/-1}.assigned-participants li{grid-template-columns:48px 1fr}.assignment-actions{grid-column:1/-1;justify-content:flex-end}}
.participant-competition>header{border-bottom:1px solid var(--line);padding-bottom:10px}.participant-events{display:grid;gap:10px;margin-top:12px}.participant-event{display:grid;grid-template-columns:minmax(240px,1fr) auto auto;gap:12px;align-items:center;padding:11px;border:1px solid var(--line);border-radius:10px;background:#fafcfd}.participant-event b,.participant-event small{display:block}.participant-event small{margin-top:3px;color:var(--muted)}@media(max-width:800px){.participant-event{grid-template-columns:1fr}.participant-event .invitation-actions{justify-content:flex-start}}
.invitation-status.open,.end-state.open{background:#e5f1ff;color:#0759a5}.invitation-status.submitted,.end-state.submitted{background:#fff0c7;color:#765b00}.invitation-status.rejected,.end-state.rejected{background:#fdebea;color:var(--red)}.end-state.validated{background:#e2f4ed;color:var(--green)}.end-state.locked{background:#edf0f2;color:#59636b}.end-state{display:inline-block;padding:6px 9px;border-radius:99px;font-size:11px;font-weight:850}.validation-inbox{border-left:5px solid #f0b400;margin-bottom:16px}.correction-form{display:flex;align-items:end;gap:8px}.correction-form label{min-width:240px}.correction-notice{border-left:5px solid var(--red)}@media(max-width:800px){.correction-form{display:grid}.correction-form label{min-width:0}}
.nav-group>div a{padding-left:22px;border-left:2px solid #ffffff20;border-radius:0 9px 9px 0}
.nav-group{position:relative;color:#c3d1dc}.nav-group>summary{list-style:none;padding:12px;border-radius:9px;margin-bottom:5px;cursor:pointer}.nav-group>summary::-webkit-details-marker{display:none}.nav-group>summary:after{content:'▾';float:right}.nav-group[open]>summary,.nav-group>summary:hover{background:#ffffff18;color:white}.nav-group>div{background:#0b2135;border-radius:9px;padding:4px;margin-bottom:7px}.nav-group>div a{padding:9px 10px;margin:0;font-size:12px}.competition-tools{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0}.competition-tools a{text-decoration:none;color:var(--ink);padding:18px}.competition-tools b,.competition-tools span{display:block}.competition-tools b{color:var(--navy)}.competition-tools span{color:var(--muted);font-size:12px;margin-top:5px}@media(max-width:800px){.nav-group{width:100%}.nav-group>summary{color:#c3d1dc;font-size:13px}.nav-group>div{padding-left:10px}.competition-tools{grid-template-columns:1fr}}
.competition-format{grid-column:1/-1;border:1px solid #d6dde5;border-radius:10px;padding:1rem;margin:.5rem 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.8rem}.competition-format legend{font-weight:800;padding:0 .4rem}.competition-format h3{grid-column:1/-1;margin:0}.elimination-event{border-top:1px solid #e1e6eb;padding:1rem 0}.elimination-event:first-of-type{border-top:0}.competition-tools{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}
.bracket-rounds{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;margin-top:18px}.bracket-round{background:#f5f8fa;border:1px solid var(--line);border-radius:12px;padding:12px}.bracket-round h5{font-size:15px;color:var(--navy);margin:0 0 10px}.match-grid{display:grid;gap:10px}.match-card{background:white;border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:9px;padding:10px}.match-card.gold{border-left-color:#d2a900}.match-card.bronze{border-left-color:#a96f45}.match-card small,.match-card span{color:var(--muted)}.match-card p{margin:7px 0;padding-top:5px;border-top:1px solid var(--line)}
/* Resultados de competición y funciones operativas */
.role-badges{display:flex;gap:.45rem;align-items:center;flex-wrap:wrap}
.role-badges span{background:#e8f1f8;color:#102a43;border-radius:999px;padding:.3rem .65rem;font-size:.86rem;font-weight:700}
.event-results>header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}
.event-results>header h2,.event-results>header p{margin-top:0}
.my-result{background:#fff8d8}
.my-result td:first-child{border-left:4px solid #d49b00}
.evolution-row td{padding-top:0;border-top:0}
.competition-progress{width:8rem;max-width:100%;height:.55rem;background:#dbe4ea;border-radius:999px;overflow:hidden;margin-bottom:.2rem}
.competition-progress span{display:block;height:100%;background:#26734d;border-radius:inherit}
.end-evolution{display:flex;align-items:flex-end;gap:.35rem;min-height:90px;padding:.75rem 0;overflow-x:auto}
.end-evolution span{display:grid;grid-template-rows:auto 1fr auto;align-items:end;justify-items:center;min-width:2rem;height:90px;font-size:.75rem}
.end-evolution i{display:block;width:1rem;max-height:62px;background:#2e6f9e;border-radius:.2rem .2rem 0 0}
.end-evolution b,.end-evolution small{font-size:.7rem}
.public-bracket{display:flex;gap:1rem;overflow-x:auto;padding-top:1rem}
.public-bracket>h3{min-width:max-content}
.public-bracket section{min-width:13rem}
.public-bracket section>p{background:#f4f7f9;border:1px solid #dbe4ea;border-radius:.4rem;padding:.55rem;display:grid;gap:.25rem}
.public-bracket section>p span{display:flex;justify-content:space-between;gap:.5rem}
.pending-validations .primary{display:inline-block}
.validation-wait{border-left:5px solid #f0b400;margin:14px 0}.score-pad button:disabled{opacity:.35;filter:grayscale(.4)}.scorecard-end-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.scorecard-end-list>span{display:flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:8px;padding:5px 7px;font-size:11px}.scorecard-end-list .end-state{padding:3px 6px;font-size:9px}.competition-validation-modal{position:fixed;inset:0;z-index:250;display:grid;place-items:center;padding:15px;background:#102a43b8}.competition-validation-modal[hidden]{display:none}.competition-validation-modal>div{width:min(460px,100%);max-height:calc(100vh - 30px);overflow:auto;background:white;border-radius:16px;padding:22px;box-shadow:0 20px 60px #0005}.competition-validation-modal>div>small{color:var(--blue);font-weight:900;letter-spacing:.1em}.competition-validation-modal h2{margin:7px 0}.competition-validation-modal p{color:var(--muted)}.competition-validation-scores{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.competition-validation-scores i{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-weight:900;background:#e4edf2}.competition-validation-total{font-size:17px}.competition-validation-modal label{display:grid;gap:5px;font-size:12px;font-weight:800}.competition-validation-modal textarea{width:100%;min-height:72px;border:1px solid var(--line);border-radius:9px;padding:10px;font:inherit}.competition-validation-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:15px}.competition-validation-actions button,.validation-later{border:0;border-radius:9px;padding:12px;font-weight:850}.competition-validation-actions .decline{background:#fdebea;color:var(--red)}.validation-later{width:100%;margin-top:9px;background:#edf2f5;color:var(--muted)}
@media(max-width:700px){.event-results>header{display:block}.competition-progress{width:6rem}.public-bracket{display:block}.public-bracket section{min-width:0}}
