:root{--navy:#122b40;--navy2:#0a4055;--teal:#00b7b1;--tealDark:#047f89;--tealLite:#e4faf8;--coral:#ff536d;--pink:#ffe7ec;--gold:#ffbc60;--ink:#183147;--muted:#64798b;--line:#dce9ee;--bg:#f3f9fb;--white:#fff;--shadow:0 6px 22px rgba(20,71,89,.065);--radius:18px;--navw:236px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink);-webkit-tap-highlight-color:transparent}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:var(--tealDark)}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #83e0dc;outline-offset:2px}img{max-width:100%;display:block}svg{width:20px;height:20px;flex-shrink:0;stroke:currentColor;stroke-width:1.9;stroke-linejoin:round;stroke-linecap:round;fill:none}.muted{color:var(--muted)}.small{font-size:12px}.tiny{font-size:11px}.bold{font-weight:800}.hide{display:none!important}
.app-shell{display:flex;min-height:100dvh}.sidebar{width:var(--navw);flex-shrink:0;background:linear-gradient(165deg,#092b42,#07445a 55%,#087e86);color:#fff;position:sticky;top:0;height:100dvh;padding:22px 12px;display:flex;flex-direction:column;gap:24px;overflow:auto}.brand-side{display:flex;align-items:center;gap:11px;padding:2px 9px 12px}.brand-logo{width:58px;height:58px;object-fit:contain;background:#fff;border-radius:14px;padding:4px}.brand-side strong{font-size:16px;line-height:1.2;display:block}.brand-side small{font-size:10px;color:#a5f3ed;text-transform:uppercase;letter-spacing:1.5px}.nav-list{display:grid;gap:6px}.nav-item{display:flex;align-items:center;gap:12px;text-align:left;color:#e4fcff;background:transparent;border:0;padding:13px 13px;border-radius:13px;min-height:48px;font-weight:650;font-size:13.5px}.nav-item:hover{background:#ffffff1b}.nav-item.active{background:linear-gradient(110deg,#ff5c74,#ff7883);color:#fff;box-shadow:0 7px 16px #001e2b44}.nav-item svg{width:21px;height:21px}.sidebar-footer{margin-top:auto;background:#ffffff16;border-radius:15px;padding:14px;color:#e4faff;font-size:12px;line-height:1.5}.sidebar-footer .demo-pill{display:inline-block;background:#ffc0cc;color:#822a44;font-size:10px;font-weight:900;padding:2px 8px;border-radius:40px;margin-bottom:7px}
.main{min-width:0;flex:1}.topbar{height:82px;background:linear-gradient(107deg,#fff 72%,#e4fbfa);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:12px 28px;gap:16px}.header-brand{display:flex;align-items:center;gap:13px;min-width:0}.header-logo{display:none;width:52px;height:52px;object-fit:contain;background:white;border:1px solid var(--line);border-radius:13px}.app-name{font-size:26px;letter-spacing:-1px;line-height:1.13;font-weight:900;white-space:nowrap}.app-name span:first-child{color:var(--tealDark)}.app-name span:last-child{color:var(--coral)}.brand-sub{font-size:11px;font-weight:800;letter-spacing:1.1px;color:#67828c;text-transform:uppercase;margin-top:3px}.top-right{display:flex;align-items:center;gap:10px}.user-select{max-width:204px;background:#fff;color:var(--navy);border:1px solid #c5e2e7;padding:10px 12px;border-radius:12px;font-weight:750;font-size:12px}.avatar{display:flex;align-items:center;justify-content:center;background:var(--tealLite);color:var(--tealDark);font-weight:900;border:2px solid #fff;border-radius:50%;width:37px;height:37px}.user-label{font-size:12px;font-weight:800}.page{padding:24px 26px 90px;max-width:1760px;margin:0 auto}.page-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;flex-wrap:wrap}.page-head h1{font-size:29px;letter-spacing:-1px;margin:0;display:flex;align-items:center;gap:10px}.page-head h1 svg{width:28px;height:28px;color:var(--coral)}.subtitle{margin:5px 0 0;color:var(--muted);font-size:13px}.head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.btn,.icon-btn{border:1px solid #cde3e8;background:#fff;color:var(--navy2);font-weight:750;border-radius:11px;min-height:40px;padding:9px 13px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:13px;text-decoration:none}.btn:hover,.icon-btn:hover{border-color:var(--teal);background:#effcfb}.btn svg,.icon-btn svg{width:18px;height:18px}.btn.primary{border-color:var(--coral);color:white;background:var(--coral)}.btn.primary:hover{background:#ee3555}.btn.teal{background:var(--teal);border-color:var(--teal);color:#003b47}.btn.ghost{border:0;background:transparent}.btn.danger{color:#be3654;border-color:#ffd4dc}.btn.sm{min-height:32px;padding:7px 10px;font-size:12px}.btn.wide{width:100%}.btn[disabled]{opacity:.45;cursor:default}.icon-btn{padding:8px;min-width:40px}.date-switch{display:flex;align-items:center;gap:4px;border:1px solid #cde8ed;border-radius:12px;background:#e8f9f8;padding:3px}.date-switch button{background:transparent;border:0;display:grid;place-items:center;padding:7px;color:#006a75}.date-switch .date-display{font-weight:800;font-size:13px;padding:0 5px;min-width:145px;text-align:center}.date-switch input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.select{border:1px solid #cbdee5;border-radius:12px;min-height:40px;background:#fff;padding:8px 11px;color:var(--ink);font-weight:680;max-width:100%}
.grid{display:grid;gap:14px}.stats-row{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);min-width:0}.card-pad{padding:18px}.info-card{min-height:104px;display:flex;gap:11px;align-items:flex-start;padding:17px;border-radius:16px;background:white;border:1px solid var(--line);box-shadow:var(--shadow)}.info-card:nth-child(1){background:linear-gradient(115deg,#dff8f5,#fff)}.info-card:nth-child(2){background:linear-gradient(115deg,#ffe7eb,#fff)}.info-card:nth-child(3){background:linear-gradient(115deg,#e9faff,#fff)}.info-card:nth-child(4){background:linear-gradient(115deg,#e5f8f7,#fff)}.info-icon{color:var(--tealDark);background:#fff9;border-radius:12px;padding:8px;display:grid;place-items:center}.info-icon svg{width:20px;height:20px}.info-card b{font-size:13px;display:block;margin:0 0 6px}.info-card .info-value{font-size:14px;font-weight:800;color:var(--navy)}.info-card small{font-size:12px;color:var(--muted)}.topline{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.section-title{font-size:16px;font-weight:850;letter-spacing:-.4px;display:flex;align-items:center;gap:9px;margin:0}.section-title svg{color:var(--tealDark)}.section-title.coral svg{color:var(--coral)}.topline .actions{display:flex;gap:5px}.pill{display:inline-flex;gap:5px;align-items:center;border-radius:100px;padding:5px 10px;background:var(--tealLite);color:#007b7c;font-size:11px;font-weight:800}.pill.coral{background:#ffe5e8;color:#d83f59}.pill.amber{background:#fff1d5;color:#a96708}.pill.gray{background:#eef3f6;color:#5e7280}.pill svg{width:13px;height:13px}.train-layout{grid-template-columns:minmax(228px,.84fr) minmax(360px,1.6fr) minmax(245px,.95fr);align-items:start}.train-left,.train-middle,.train-right{display:grid;gap:14px;min-width:0}.goal-card{padding:17px}.goal-card.tint{background:linear-gradient(140deg,#effcfb,#fff)}.goal-card.pink{background:linear-gradient(140deg,#fff1f4,#fff)}.goal-list{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:10px}.goal-list li{display:flex;align-items:flex-start;gap:8px;font-size:13px;line-height:1.4}.bullet{background:var(--teal);border-radius:100px;width:8px;height:8px;flex-shrink:0;margin-top:5px}.pink .bullet{background:var(--coral)}.empty-note{color:var(--muted);font-size:12px;margin-top:12px}.resource-inline-list{display:grid;gap:7px;margin-top:12px}.resource-inline{display:flex;align-items:center;gap:9px;padding:10px 11px;border-radius:12px;background:#f3fcfc;border:1px solid #d7ecea;font-size:12px}.resource-inline b{flex:1}.resource-inline button{border:0;background:transparent;color:var(--tealDark);display:grid;place-items:center}.resource-inline button svg{width:16px;height:16px}
.timeline{margin-top:14px;display:grid;gap:8px;min-height:120px}.block-row{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid #dcebf0;border-radius:13px;background:#fff;min-width:0;transition:border-color .15s,background .15s}.block-row:hover{border-color:#abdbdf}.block-row.drag-over{outline:2px dashed var(--coral);background:#fff3f6}.time-chip{flex-shrink:0;font-size:11px;font-weight:900;border-radius:8px;background:#dff8f6;color:#086e78;padding:9px 8px;min-width:62px;text-align:center}.block-text{flex:1;min-width:0}.block-text b{display:block;font-size:13px}.block-text small{font-size:11px;color:var(--muted);line-height:1.35;display:block;margin-top:3px}.block-control{display:flex;align-items:center;gap:2px}.mini-icon{border:0;border-radius:8px;background:transparent;color:#63818b;display:grid;place-items:center;width:30px;height:30px;flex-shrink:0}.mini-icon:hover{background:#eaf8f9;color:var(--tealDark)}.mini-icon svg{width:16px;height:16px}.timer-card{background:linear-gradient(120deg,#0a354c,#075975);color:white;padding:16px 18px;border-radius:17px}.timer-card .timer-title{display:flex;gap:7px;align-items:center;font-weight:750;font-size:12px;color:#d9fbff}.timer-main{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px}.timer-display{font-variant-numeric:tabular-nums;font-size:39px;font-weight:900;letter-spacing:-1.8px}.timer-controls{display:flex;gap:7px;align-items:center}.timer-button{border:0;display:grid;place-items:center;width:41px;height:41px;border-radius:50%;background:#d4f6fa;color:#074351}.timer-button.start{background:var(--teal);color:#fff}.timer-button svg{width:19px;height:19px}.timer-detail{font-size:11px;color:#bbdfe7;display:flex;justify-content:space-between;margin-top:5px}.notes-area{width:100%;min-height:134px;padding:12px;margin:12px 0 0;resize:vertical;border:1px solid #d9e9ed;border-radius:11px;background:#fbfefe;color:var(--ink);font-size:13px;line-height:1.55}.notes-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:5px}.drawing{border:1px dashed #85ced2;background:white;border-radius:12px;margin-top:9px;position:relative;overflow:hidden}.drawing canvas{display:block;width:100%;height:170px;touch-action:none;cursor:crosshair}.drawing-hint{font-size:11px;color:var(--muted);padding:6px 10px;border-top:1px solid var(--line)}
.resource-spotlight{display:grid;gap:8px;margin-top:14px}.resource-tile{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid #d9e9ed;border-radius:13px;background:#fff;cursor:grab}.resource-tile:hover{border-color:#6ac6c5}.resource-icon{background:var(--tealLite);color:var(--tealDark);border-radius:10px;width:39px;height:39px;display:grid;place-items:center;flex-shrink:0}.resource-tile .grow{flex:1;min-width:0}.resource-tile .grow b{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resource-tile .grow small{font-size:11px;color:var(--muted)}.drop-box{border:2px dashed #a0d8da;color:#377884;border-radius:13px;padding:10px;text-align:center;font-size:12px;background:#f5ffff;margin-top:10px}.drop-box.drag-over{background:#d5f7f4;border-color:var(--teal)}.resource-quick{padding:14px}.resource-quick h3{font-size:15px;margin:0 0 9px}.tag-row{display:flex;flex-wrap:wrap;gap:7px}.tag{border:1px solid #d5e7ed;background:white;border-radius:100px;padding:7px 11px;font-size:12px;font-weight:740;color:var(--navy2)}.tag.active{background:var(--coral);border-color:var(--coral);color:white}.wide-action{width:100%;justify-content:space-between;margin-top:10px}
.section-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.metric{display:flex;flex-direction:column;gap:9px}.metric strong{font-size:25px}.progress-track{height:11px;border-radius:50px;background:#e1eef1;overflow:hidden;display:flex}.progress-fill{height:100%;background:linear-gradient(90deg,#15baba,#3bd7c4);border-radius:50px}.progress-row{display:flex;justify-content:space-between;align-items:center;font-size:12px;gap:9px;margin:11px 0 6px}.progress-row b{font-size:12px}.status-select{border:1px solid #d3e2e8;border-radius:10px;font-size:12px;font-weight:750;padding:7px 9px;max-width:100%;background:#fff}.status-0{background:#edf1f4;color:#61727b}.status-1{background:#ffe4ea;color:#ba3f5b}.status-2{background:#fff0d2;color:#9c6905}.status-3{background:#d4f5e8;color:#167a5a}.status-4{background:#c9f3f4;color:#036e83}.table-scroll{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}.data-table th{color:#6d8692;font-size:11px;text-transform:uppercase;letter-spacing:.6px;background:#f3fafc}.data-table td,.data-table th{padding:12px 10px;border-bottom:1px solid #e9f0f2;vertical-align:middle}.data-table tr:hover td{background:#faffff}.athlete-name{font-weight:800}.search-row{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin:0 0 16px}.search-input{flex:1;min-width:170px;border:1px solid #cde3e8;border-radius:12px;padding:11px 12px;background:white;min-height:43px}.empty-state{padding:28px 12px;text-align:center;color:var(--muted);font-size:13px;border:1px dashed #cadfe4;border-radius:14px}.level-list{display:grid;gap:10px}.level-item{padding:12px;border:1px solid var(--line);border-radius:13px;display:flex;justify-content:space-between;align-items:center;gap:8px}.level-item b{font-size:14px}.status-legend{display:flex;gap:10px;flex-wrap:wrap;margin-top:13px}.legend-item{display:flex;gap:5px;align-items:center;font-size:11px;color:var(--muted)}.legend-item:before{content:"";width:8px;height:8px;border-radius:100%;background:var(--legend)}.calendar-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(270px,1fr);gap:14px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-top:16px}.cal-weekday{text-align:center;font-size:11px;color:#8198a2;font-weight:900;text-transform:uppercase;padding:7px 0}.day-cell{aspect-ratio:1.2;min-height:46px;background:#f8fcfd;border:1px solid #ecf1f4;border-radius:12px;display:flex;align-items:flex-start;justify-content:space-between;padding:8px;flex-direction:column;font-size:13px;font-weight:790;color:var(--ink)}.day-cell.off{opacity:.36}.day-cell.today{border-color:var(--coral);box-shadow:inset 0 0 0 1px var(--coral)}.day-cell.selected{background:#dff9f8;border-color:var(--teal)}.day-dots{display:flex;gap:3px}.day-dot{width:6px;height:6px;border-radius:50%;background:var(--coral)}.event-row{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid var(--line)}.event-dot{width:11px;height:11px;border-radius:50%;flex-shrink:0}.event-row .event-body{flex:1}.event-row b{font-size:13px;display:block}.event-row small{font-size:11px;color:var(--muted)}.cycle-card{padding:13px 14px;border:1px solid var(--line);border-radius:13px;display:flex;justify-content:space-between;gap:9px;align-items:center}.cycle-card.active{border-color:#8acfd0;background:#ecfbfa}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.form-field{display:grid;gap:5px;min-width:0}.form-field.full{grid-column:1/-1}.form-field label{font-size:12px;font-weight:800;color:var(--navy)}.form-field input,.form-field select,.form-field textarea{min-height:40px;padding:10px 11px;border:1px solid #cddfe6;border-radius:11px;background:#fff;min-width:0;width:100%;font-size:13px}.form-field textarea{min-height:90px;resize:vertical}.field-help{font-size:11px;color:var(--muted)}.checkboxes{display:flex;flex-wrap:wrap;gap:10px}.checkline{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:700}.checkline input{width:auto;min-height:0}.modal-backdrop{position:fixed;inset:0;z-index:100;background:#102b3cb0;display:flex;align-items:center;justify-content:center;padding:20px}.modal{width:min(680px,100%);max-height:calc(100dvh - 38px);background:#fff;border-radius:19px;overflow:auto;box-shadow:0 22px 70px #07192544}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:18px 20px;border-bottom:1px solid var(--line)}.modal-header h2{font-size:19px;margin:0}.modal-body{padding:20px}.modal-actions{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap;margin-top:20px}.toast{position:fixed;z-index:200;bottom:24px;left:50%;transform:translate(-50%,20px);background:#103b4b;color:#fff;box-shadow:0 10px 30px #0003;padding:12px 17px;font-size:13px;font-weight:750;border-radius:12px;opacity:0;pointer-events:none;transition:opacity .18s,transform .18s}.toast.show{opacity:1;transform:translate(-50%,0)}.bottom-nav{display:none}.section-stack{display:grid;gap:14px}.mini-heading{font-size:12px;text-transform:uppercase;color:#718994;letter-spacing:.9px;font-weight:900;margin:0 0 9px}.divider{height:1px;background:var(--line);margin:15px 0}.flow-wrap{display:flex;gap:9px;flex-wrap:wrap;align-items:center}.resource-card{padding:16px;display:grid;gap:10px}.resource-meta{display:flex;gap:5px;flex-wrap:wrap}.resource-card p{color:#607a85;font-size:12px;line-height:1.5;margin:0}.resource-card h3{font-size:15px;margin:0}.resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.resource-card .resource-icon{width:45px;height:45px}.resource-card .card-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto}.notes-warning{padding:13px 14px;background:#fff7e9;border:1px solid #ffe2ae;color:#7b590e;border-radius:13px;font-size:12px;line-height:1.5}.stat-highlight{background:linear-gradient(120deg,#e6fcfa,#fff);border:1px solid #bdece8;border-radius:15px;padding:20px;display:flex;justify-content:space-between;gap:14px;align-items:center}.stat-highlight .big-number{font-size:35px;font-weight:900;color:var(--tealDark)}
@media (max-width:1350px){:root{--navw:208px}.sidebar{padding:18px 9px}.train-layout{grid-template-columns:minmax(210px,.9fr) minmax(350px,1.6fr)}.train-right{grid-column:1/-1;grid-template-columns:1fr 1fr}.stats-row{grid-template-columns:repeat(2,minmax(0,1fr))}.resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:980px){:root{--navw:72px}.sidebar{padding:16px 7px}.brand-side{padding:0;justify-content:center}.brand-side strong,.brand-side small,.nav-item span,.sidebar-footer{display:none}.brand-logo{width:50px;height:50px}.nav-item{justify-content:center;padding:13px 7px}.nav-item svg{width:24px;height:24px}.topbar{height:73px;padding:10px 20px}.header-logo{display:block}.app-name{font-size:22px}.page{padding:20px 18px 90px}.train-layout{grid-template-columns:1fr 1.1fr}.train-right{grid-column:1/-1}.calendar-layout{grid-template-columns:1fr}}
@media (max-width:700px){.sidebar{display:none}.topbar{height:65px;padding:8px 13px}.header-logo{width:43px;height:43px}.app-name{font-size:20px}.brand-sub{font-size:8px;letter-spacing:.4px}.top-right .user-label,.avatar{display:none}.user-select{width:110px;max-width:120px;padding:9px 6px;font-size:11px;white-space:nowrap;text-overflow:ellipsis}.page{padding:16px 12px 91px}.page-head{margin-bottom:12px}.page-head h1{font-size:24px}.page-head h1 svg{width:25px}.head-actions{width:100%;justify-content:space-between}.date-switch{order:-1}.stats-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.info-card{padding:12px;gap:8px;min-height:105px}.info-icon{padding:6px}.info-icon svg{width:17px;height:17px}.info-card b{font-size:11px}.info-card .info-value{font-size:12px}.info-card small{font-size:10px}.grid{gap:11px}.train-layout{grid-template-columns:1fr}.train-left,.train-middle,.train-right{grid-template-columns:1fr;gap:11px}.train-right{grid-column:auto}.card-pad{padding:15px}.train-left{display:contents}.train-middle{display:contents}.train-right{display:contents}.training-home{display:flex;flex-direction:column;gap:11px}.training-home .goal-general{order:1}.training-home .goal-specific{order:2}.training-home .training-blocks{order:3}.training-home .training-timer{order:4}.training-home .training-notes{order:5}.training-home .training-sequence{order:6}.training-home .training-resources{order:7}.section-grid,.resource-grid{grid-template-columns:1fr}.page-head .btn{font-size:12px}.section-title{font-size:15px}.timer-display{font-size:36px}.bottom-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;z-index:40;bottom:0;left:0;right:0;background:#fff;box-shadow:0 -5px 23px #0c3f5022;padding:7px 5px calc(7px + env(safe-area-inset-bottom));border-top:1px solid #dcebee}.bottom-nav button{border:0;background:transparent;color:#5d7785;display:grid;justify-items:center;align-content:center;gap:3px;font-size:10px;font-weight:750;padding:4px 0;min-height:48px}.bottom-nav svg{width:22px;height:22px}.bottom-nav .active{color:var(--coral)}.bottom-nav button.active:after{content:"";width:19px;height:3px;border-radius:3px;background:var(--coral);margin-top:2px}.modal-backdrop{padding:10px}.modal{max-height:calc(100dvh - 20px)}.modal-body{padding:15px}.form-grid{grid-template-columns:1fr}.form-field.full{grid-column:auto}.stat-highlight{padding:15px}.calendar-grid{gap:3px}.day-cell{border-radius:8px;padding:5px;min-height:39px;font-size:11px}.resource-card{padding:14px}}
@media (max-width:380px){.top-right .user-select{max-width:83px}.app-name{font-size:18px}.date-switch .date-display{min-width:120px;font-size:12px}.block-row{gap:7px;padding:9px}.time-chip{font-size:10px;min-width:54px}.block-text b{font-size:12px}.timer-main{flex-wrap:wrap}.timer-display{font-size:34px}}
/* Ajustes de desbordamiento y uso táctil */
.resource-spotlight{grid-template-columns:minmax(0,1fr);min-width:0}
.resource-tile{width:100%;min-width:0;max-width:100%}
.resource-tile .btn{flex:0 0 auto;white-space:nowrap}
.train-layout>*,.training-resources,.train-right,.train-left,.train-middle{min-width:0}
.norms-layout{display:grid;grid-template-columns:minmax(170px,.7fr) minmax(0,2fr);align-items:start;gap:14px}
.floating-timer{display:none}
@media(max-width:700px){
 .training-home{width:100%;min-width:0}
 .training-home>.train-left,.training-home>.train-middle,.training-home>.train-right{width:100%}
 .training-home .card,.training-home .timer-card{min-width:0;width:100%;max-width:100%}
 .norms-layout{grid-template-columns:1fr}
 .floating-timer{display:flex;position:fixed;bottom:calc(74px + env(safe-area-inset-bottom));right:12px;align-items:center;gap:7px;border:1px solid #20aaa9;background:linear-gradient(110deg,#06435b,#047b87);color:white;border-radius:100px;padding:9px 15px;box-shadow:0 6px 20px #093b4b55;z-index:39;font-weight:900;font-variant-numeric:tabular-nums;font-size:15px}
 .floating-timer svg{width:16px;height:16px}
 .page{padding-bottom:148px}
}
/* Entrena sobre ruedas · V2: fichas individuales, estados e integrativos */
.profile-back{margin-bottom:12px}
.profile-summary{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:15px;background:linear-gradient(105deg,#e8fbfb,#fff 72%,#fff1f3)}
.profile-summary>div:first-child{display:flex;align-items:center;gap:15px}.profile-summary h2{margin:0 0 4px;font-size:21px}.profile-summary p{margin:0}
.profile-monogram{flex:none;display:grid;place-items:center;width:60px;height:60px;border-radius:18px;background:linear-gradient(145deg,#00adaf,#ff5872);color:white;font-size:30px;font-weight:800}
.profile-summary-right{text-align:right;display:grid;gap:1px}.profile-summary-right b{font-size:30px;color:#087a8c;line-height:1}.profile-summary-right span{font-size:11px;color:#708391}
.profile-tabs{display:flex;gap:8px;margin:10px 0 15px;overflow-x:auto;scrollbar-width:thin;padding-bottom:3px}
.profile-tab{display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 17px;white-space:nowrap;border:1px solid #d6e6eb;border-radius:13px;background:#fff;color:#24495b;font-size:13px;font-weight:750;cursor:pointer}
.profile-tab svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}
.profile-tab.active{background:linear-gradient(110deg,#ff566d,#f44966);border-color:transparent;color:white;box-shadow:0 6px 14px #ff536d26}
.profile-content{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(245px,.8fr);gap:15px;align-items:start}
.evaluation-list{display:grid;gap:12px;margin-top:17px}.evaluation-item{border:1px solid #dce9ef;border-radius:15px;padding:15px;background:linear-gradient(145deg,#fff,#fcfefe)}
.evaluation-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.evaluation-top>div{min-width:0}.evaluation-top h3{font-size:16px;line-height:1.3;margin:4px 0}.evaluation-top p{margin:3px 0 0}
.evaluation-badge{--state:#ee455a;display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:none;color:var(--state);background:color-mix(in srgb,var(--state) 12%,white);border:1px solid color-mix(in srgb,var(--state) 35%,white);padding:6px 9px;border-radius:99px;font-weight:800;font-size:11px;white-space:nowrap}
.evaluation-badge i{width:9px;height:9px;border-radius:50%;background:var(--state)}
.evaluation-legend{display:flex;flex-wrap:wrap;gap:6px;margin:16px 0 12px}.evaluation-legend .evaluation-badge{font-size:10px;padding:6px 8px}
.evaluation-scale{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:13px 0}.eval-step{--step:#ee455a;height:11px;background:color-mix(in srgb,var(--step) 20%,white);border-radius:4px;outline:1px solid color-mix(in srgb,var(--step) 40%,white);outline-offset:-1px}.eval-step.selected{background:var(--step);outline:2px solid var(--step);outline-offset:2px}
.evaluation-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.evaluation-actions>div{display:flex;gap:6px;flex-wrap:wrap}
.evaluation-history{border-top:1px solid #dfebee;margin-top:13px;padding-top:9px;display:grid;gap:7px}.history-row{padding:8px 10px;border-left:3px solid #89bfc3;background:#f3f9fb;border-radius:8px}.history-row>div{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.history-row p{font-size:12px;margin:5px 0;color:#27475b}
.profile-progress-number{font-size:42px;font-weight:850;color:#007b89;margin:20px 0 7px}.status-counts{display:grid;gap:0;margin:20px 0 14px}.status-counts>div{display:flex;align-items:center;gap:8px;border-bottom:1px solid #e7eff2;padding:9px 0;font-size:12px}.status-counts b{margin-left:auto;font-size:15px}.status-dot{width:11px;height:11px;border-radius:50%;flex:none}
.program-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:15px;align-items:start}.program-meta{display:grid;grid-template-columns:1.3fr 1fr .65fr;gap:8px;margin:16px 0}.program-meta>div{background:#eafafb;border-radius:10px;padding:12px;min-width:0;display:flex;flex-direction:column;gap:4px}.program-meta small{font-size:10px;color:#60808b}.program-meta b{font-size:12px;overflow-wrap:anywhere}
.program-title{margin:20px 0 10px}.program-title h3{font-size:15px;margin:0}.program-items{display:grid;gap:8px}.program-row{display:flex;align-items:center;gap:10px;border:1px solid #dceaf0;background:#fff;border-radius:12px;padding:10px 9px;min-width:0}.program-row[draggable]{cursor:grab}.program-row:hover{border-color:#00b7b1;background:#fbffff}.program-number{width:31px;height:31px;flex:none;border-radius:9px;background:#d1f5f3;color:#067984;display:grid;place-items:center;font-weight:850}.program-row-content{min-width:0;flex:1;display:grid;gap:4px}.program-row-content strong{font-size:12px;line-height:1.35}.program-row-content small{font-size:11px;color:#708591;overflow-wrap:anywhere}.program-row-actions{display:flex;gap:2px;flex-wrap:wrap;justify-content:end;max-width:142px}.program-row-actions .icon-btn{width:30px;height:32px;min-height:30px;padding:5px;border-radius:9px}.program-row-actions .icon-btn:disabled{opacity:.25}.program-row-actions .selected-tool{background:#ffebef;border-color:#ff536d;color:#e83c5e}.marked{color:#047a87;font-weight:750}.program-notes{padding:12px;background:#fff6e7;border-radius:12px;font-size:12px;margin-top:14px}.program-notes p{white-space:pre-wrap;margin:5px 0}
.rink-panel{min-width:0}.rink-toolbar{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:15px 0 10px}.rink-swatch{width:32px;height:32px;border-radius:50%;border:3px solid #fff;background:var(--swatch);box-shadow:0 0 0 1px #c8e3e8;cursor:pointer}.rink-swatch.active{box-shadow:0 0 0 3px #163f5b}.rink-hint{color:#2b6775;font-size:12px;font-weight:750;line-height:1.4;padding:9px 11px;border-radius:10px;background:#e7f9f8;margin:10px 0}.rink-wrap{border-radius:18px;background:#f6fbfc;padding:8px;border:1px solid #d4e8ed;overflow:hidden}.rink-wrap canvas{display:block;width:100%;height:auto;aspect-ratio:20/11;touch-action:none;cursor:crosshair}.rink-explain{display:flex;flex-wrap:wrap;gap:18px;align-items:center;margin:12px 0;font-size:11px;color:#68828e}.rink-explain span{display:flex;align-items:center;gap:8px}.guide-line{width:23px;height:0;border-top:4px solid #ff536d}.guide-marker{display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:#122b40;color:white;font-size:10px;font-style:normal;font-weight:800}
.video-library .videos-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:20px 0}.video-entry{display:flex;align-items:flex-start;gap:13px;padding:16px;border:1px solid #d7e8ed;border-radius:15px;background:linear-gradient(145deg,#fff,#f5fbfc);min-width:0}.video-entry-icon{display:grid;place-items:center;flex:none;width:54px;height:54px;border-radius:14px;background:linear-gradient(135deg,#078b99,#f65b72);color:white}.video-entry-icon svg{width:28px;height:28px;stroke:white;fill:none;stroke-width:2}.video-entry-content{flex:1;min-width:0}.video-entry-content h3{font-size:15px;margin:10px 0 6px}.video-entry-content p{line-height:1.5;overflow-wrap:anywhere}.video-entry .topline{gap:6px}.video-buttons{display:flex;gap:7px;flex-wrap:wrap;align-items:center;margin-top:11px}.danger-inline{color:#db4960}
@media(max-width:1250px){.program-layout,.profile-content{grid-template-columns:1fr}.rink-panel{order:2}}
@media(max-width:700px){.profile-summary{padding:13px}.profile-summary h2{font-size:16px}.profile-summary-right b{font-size:23px}.profile-monogram{width:44px;height:44px;font-size:21px;border-radius:12px}.profile-summary-right span{font-size:9px}.profile-tab{font-size:12px;min-height:43px;padding:10px 13px}.profile-tab svg{width:17px;height:17px}.evaluation-item{padding:12px}.evaluation-top{align-items:start}.evaluation-top h3{font-size:14px}.evaluation-badge{font-size:10px}.evaluation-actions>div{width:100%;justify-content:flex-start}.program-meta{grid-template-columns:1fr 1fr}.program-meta>div:last-child{grid-column:1/-1}.program-row{gap:7px}.program-row-actions{max-width:72px;display:grid;grid-template-columns:repeat(2,30px)}.rink-toolbar .btn{padding:8px}.video-library .videos-grid{grid-template-columns:1fr}.video-entry{padding:12px}.video-entry-icon{width:43px;height:43px}.video-entry-icon svg{width:24px;height:24px}}

/* V3 · Música, sincronización diferida y controles táctiles */
.music-intro{display:flex;align-items:center;gap:15px;margin-bottom:15px;background:linear-gradient(110deg,#ecffff,#fff,#fff2f5)}
.music-intro p{margin:4px 0 0}.music-intro-icon{flex:none;display:grid;place-items:center;width:60px;height:60px;border-radius:17px;background:linear-gradient(140deg,#00b2af,#fa5573);color:white}
.music-intro-icon svg,.music-track-icon svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.music-filters{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:16px}.music-filters .search-input{flex:1;min-width:210px}
.music-list{display:grid;gap:10px;min-width:0}.music-track{display:flex;gap:12px;align-items:center;min-width:0;border:1px solid #d6e7eb;background:white;border-radius:15px;padding:13px}
.music-track-icon{flex:none;border-radius:13px;display:grid;place-items:center;width:47px;height:47px;background:#dbf8f8;color:#008d97}
.music-track-icon svg{width:25px;height:25px}.music-track-data{display:grid;gap:4px;min-width:0;flex:1}.music-track-data b{font-size:13px;overflow-wrap:anywhere}
.music-track-data small{font-size:11px;color:#68818e;line-height:1.4;overflow-wrap:anywhere}.music-track-data p{margin:0;font-size:11px;color:#6d8794}
.music-track-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.music-track.compact{padding:9px}.music-track.compact .music-track-icon{width:36px;height:36px}.music-track.compact .music-track-icon svg{width:20px;height:20px}
.training-music .music-list{margin-top:14px}.music-profile .music-list{margin-top:16px}.music-checkboxes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;max-height:185px;overflow:auto;border:1px solid #d5e7eb;border-radius:11px;background:#f7fbfc;padding:9px}
.music-check{display:flex;align-items:center;gap:9px;padding:7px;border-radius:8px;background:#fff;font-size:12px;color:#274b61;cursor:pointer}.music-check input{width:18px;height:18px;accent-color:#00aaa9;flex:none}
.audio-dock{position:fixed;z-index:70;bottom:20px;left:50%;transform:translateX(-50%);width:min(900px,calc(100vw - 30px));display:flex;align-items:center;gap:15px;padding:12px 14px;border-radius:18px;border:1px solid #a3e5e1;background:#f6ffff;box-shadow:0 12px 45px #123d5360}
.audio-dock-info{min-width:180px;flex:1;display:flex;align-items:center;gap:10px}.audio-dock-info>svg{width:25px;height:25px;flex:none;fill:none;stroke:#028d94;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.audio-dock-info span{display:grid;min-width:0;gap:3px}.audio-dock-info b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.audio-dock-info small{color:#6d8792;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.audio-dock audio{min-width:180px;flex:2;max-width:100%;height:40px}.audio-dock-close{border:1px solid #c8e0e6;background:white;border-radius:10px;width:38px;height:38px;flex:none;cursor:pointer;display:grid;place-items:center;color:#305c6c}.audio-dock-close svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.more-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.more-link{display:flex;align-items:center;gap:15px;padding:20px;text-align:left;cursor:pointer;border:1px solid #d7e6eb;color:#20475b;background:white}.more-link>svg{width:26px;height:26px;flex:none;fill:none;stroke:#00a5a4;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.more-link span{flex:1;display:grid;gap:5px}.more-link small{font-size:11px;color:#7d909b}
@media(max-width:700px){.music-track{align-items:flex-start}.music-track-actions{width:100%;justify-content:start}.music-track{flex-wrap:wrap}.music-track-data{flex:1;min-width:calc(100% - 70px)}.music-track.compact .music-track-data{min-width:0}.music-track.compact .music-track-actions{width:auto}.music-checkboxes{grid-template-columns:1fr}.audio-dock{bottom:calc(72px + env(safe-area-inset-bottom));flex-wrap:wrap;gap:7px;padding:9px 12px}.audio-dock-info{min-width:0;width:calc(100% - 52px)}.audio-dock audio{flex:auto;width:100%;order:3}.audio-dock-close{margin-left:auto}.more-links{grid-template-columns:1fr}.music-intro{align-items:flex-start}}

/* V4 · Zonas de pista distribuidas por tramos horarios */
.zone-schedule{margin-bottom:15px;position:relative;overflow:hidden;border-color:#bce8e7;background:linear-gradient(125deg,#f0fffd 0%,#ffffff 49%,#ffffff 100%)}
.zone-schedule:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--teal),#47d7ca,var(--coral))}
.zone-schedule .topline{align-items:flex-start;gap:12px}
.zone-schedule .topline .actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}
.zone-schedule .topline .actions .btn{min-height:38px;white-space:nowrap}
.zone-intro{margin:8px 0 15px;color:var(--muted);font-size:12px;line-height:1.5}
.zone-slots{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:9px}
.zone-slot{min-width:0;display:flex;align-items:center;gap:11px;border:1px solid #cfe8ed;border-left:5px solid var(--teal);border-radius:13px;background:#fff;box-shadow:0 2px 8px #124b5e0a;padding:10px 11px}
.zone-clock{min-width:100px;display:grid;align-content:center;gap:4px;flex-shrink:0}
.zone-clock strong{font-size:13px;font-weight:900;color:#07687a;white-space:nowrap}
.zone-clock small{font-size:10px;color:var(--muted)}
.zone-detail{min-width:0;flex:1;display:grid;justify-items:start;gap:3px}
.zone-detail b{font-size:12px;line-height:1.3;overflow-wrap:anywhere}
.zone-detail small{font-size:10px;color:var(--muted);overflow-wrap:anywhere}
.zone-tag{display:inline-flex;align-items:center;gap:4px;max-width:100%;font-weight:850;font-size:11px;line-height:1.25;border-radius:7px;color:#007677;background:#dffaf7;padding:4px 7px;overflow-wrap:anywhere}
.zone-tag svg{width:13px;height:13px}
.zone-warning{font-size:10px;color:#ad3e31;background:#fff1e8;padding:5px 7px;border-radius:6px;line-height:1.4}
.zone-slot .zone-edit{flex-shrink:0;min-height:35px;padding:7px 9px;font-size:11px}
.zone-slot .zone-edit svg{width:14px;height:14px}
.zone-empty{display:flex;align-items:flex-start;gap:12px;border:1px dashed #77cbd0;border-radius:12px;padding:16px;background:#e6f9f9}
.zone-empty>svg{width:23px;height:23px;color:var(--tealDark)}
.zone-empty b{display:block;font-size:13px}.zone-empty p{color:var(--muted);font-size:12px;line-height:1.5;margin:6px 0 0}
.zone-footer{display:flex;gap:10px;justify-content:space-between;flex-wrap:wrap;margin-top:12px;color:#69828f;font-size:10px}
.block-zone-note{display:flex;align-items:center;gap:3px;margin-top:6px;color:#037c7c;font-weight:850;font-size:11px}
.block-zone-note svg{width:13px;height:13px}
@media (max-width:780px){.zone-slots{grid-template-columns:1fr}.zone-slot{padding:11px}.zone-clock{min-width:104px}}
@media (max-width:480px){.zone-schedule{padding:14px}.zone-schedule .topline .actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.zone-schedule .topline .actions .btn{font-size:10px;padding:8px 5px;min-height:42px}.zone-schedule .topline .actions svg{width:15px;height:15px}.zone-slot{gap:6px;flex-wrap:wrap}.zone-clock{min-width:98px}.zone-slot .zone-edit{margin-left:auto}.zone-tag{font-size:10px}.zone-footer{font-size:10px}}

/* V5 · planificación compartida, pizarra táctil y referencias oficiales */
.board-shortcut{display:flex;justify-content:flex-end;margin:0 0 12px}
.board-controls{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:16px}
.board-controls label{display:flex;align-items:center;gap:9px;font-weight:700;font-size:13px}
.board-daybar{display:flex;flex-wrap:wrap;gap:8px}
.board-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:0 0 17px;align-items:start}
.board-column{overflow:hidden;padding:0}
.board-coach{display:flex;align-items:center;gap:9px;padding:15px 17px;background:linear-gradient(110deg,#dbfbf9,#fff1f4);font-weight:800;border-bottom:1px solid #dce8ee}
.board-coach svg{width:20px;height:20px;color:#008d91}
.board-coach span{margin-left:auto;font-size:11px;font-weight:600;color:#63737c}
.board-slot{display:flex;align-items:center;gap:9px;width:100%;background:var(--activity,#fff);border:none;border-bottom:1px solid #dee6e9;text-align:left;min-height:88px;padding:10px 11px;color:#122b40;cursor:pointer;transition:filter .16s}
.board-slot:hover{filter:saturate(1.3) brightness(.985)}
.board-slot>strong{font-size:12px;min-width:83px;flex-shrink:0}
.board-slot>span{display:flex;flex:1;flex-direction:column;gap:4px;min-width:0}
.board-slot>span b{font-size:12px;line-height:1.25}
.board-slot>span small{font-size:12px;color:#23394a}
.board-slot em{font-style:normal;font-size:11px;font-weight:700;background:#fff9;border-radius:6px;padding:5px;max-width:95px;text-align:center}
.board-slot svg{width:15px;height:15px;opacity:.55}
.objective-catalog{max-height:43vh;overflow:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:2px}
.objective-fieldset{padding:9px 12px 12px;border:1px solid #d2e7e8;border-radius:12px;min-width:0}
.objective-fieldset legend{font-weight:800;padding:0 6px;font-size:12px;color:#087e85}
.objective-option{display:flex;gap:9px;align-items:flex-start;line-height:1.35;font-size:12px;padding:8px 4px;cursor:pointer}
.objective-option input{accent-color:#00aaa6;min-width:17px;min-height:17px;flex-shrink:0;margin:0}
.board-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:9px 0}
.board-toolbar>strong{display:flex;align-items:center;gap:6px;font-size:13px}
.board-toolbar svg{width:17px;height:17px}
.board-tools{display:flex;align-items:center;flex-wrap:wrap;gap:7px}
.board-swatch{width:30px;height:30px;border-radius:50%;border:3px solid #fff;background:var(--swatch);box-shadow:0 0 0 1px #9eabb3;cursor:pointer}
.board-swatch.selected{box-shadow:0 0 0 3px #071f32}
#notes-canvas{width:100%;height:auto;aspect-ratio:12/7;max-height:400px;touch-action:none;cursor:crosshair;background:white;border-radius:10px;border:1px solid #ccdde1}
.drawing.expanded-board{position:fixed!important;inset:0;z-index:1000;background:#f6fcfd;padding:12px 20px;display:flex;flex-direction:column;max-height:100dvh;overflow:auto;border-radius:0}
.drawing.expanded-board #notes-canvas{flex:1;width:100%;height:calc(100dvh - 145px);max-height:none;min-height:200px;object-fit:contain}
.drawing.expanded-board .drawing-hint{margin:4px 0}
body.board-is-open{overflow:hidden}
.rink-page-switch{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:5px 0 12px;padding:12px;background:#effafa;border-radius:13px}
.rink-page-switch b{font-size:12px;margin-right:auto}
.rink-wrap canvas{touch-action:none}
.norms-controls{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:0 0 16px}
.norms-controls label{display:flex;align-items:center;gap:10px;font-weight:700}
.norms-controls p{flex:1;min-width:190px;margin:0}
.norms-source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:0 0 17px}
.norms-source-grid h2{font-size:16px;margin:0 0 9px}
.norm-official-list{font-size:13px;line-height:1.7;padding-left:23px}
.norm-detail{border:1px solid #d9e7ea;border-radius:11px;margin:8px 0;padding:12px;font-size:13px}
.norm-detail summary{font-weight:700;cursor:pointer}
.norm-detail ol{line-height:1.6;padding-left:22px}
.norms-value-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.norms-value-list h3{margin:0 0 11px;font-size:15px}
.norm-club-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.source-refs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.source-refs div{display:flex;flex-direction:column;gap:4px;background:#eff6f7;padding:11px;border-radius:10px}
.source-refs b{font-size:12px}
.source-refs small{font-size:11px;color:#5d6c74}
.privacy-import{border:1px solid #b6dedb;background:#ebfaf7;border-radius:13px;padding:14px;margin:13px 0}
.privacy-import b{font-size:13px}
.privacy-import label{cursor:pointer;display:inline-flex;margin-top:4px}
@media(max-width:1100px){.board-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.norm-club-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:740px){.board-grid,.norms-source-grid,.norms-value-list{grid-template-columns:1fr}.board-slot{min-height:72px}.board-slot>strong{min-width:84px}.board-controls{align-items:stretch}.board-coach{position:sticky;top:0}.objective-catalog,.source-refs{grid-template-columns:1fr}.norm-club-grid{grid-template-columns:1fr}.board-toolbar{flex-direction:column;align-items:stretch}.board-tools{justify-content:flex-start}.drawing.expanded-board{padding:7px}.drawing.expanded-board .board-tools{gap:4px}.drawing.expanded-board .board-swatch{height:26px;width:26px}.drawing.expanded-board .btn{min-height:30px!important;font-size:11px;padding:4px 6px!important}.drawing.expanded-board #notes-canvas{height:calc(100dvh - 160px)}.rink-page-switch b{width:100%}}
