/* Reference layout: independent rail, horizontal toolbar, four metrics and 2:1:1 lower modules. */
body.reference-mode{background:#080909;color:#f2f1e8;font-family:'Segoe UI',system-ui,sans-serif}body.reference-mode>header{display:none}.reference-dashboard{width:calc(100% - 28px);max-width:1500px;margin:16px auto 28px}.ref-frame{display:grid;grid-template-columns:220px minmax(0,1fr);gap:16px;padding:14px;background:#111313;border:1px solid #ffffff09;border-radius:26px;min-height:680px}.ref-sidebar{padding:18px 14px;border-radius:22px;background:#161918;display:flex;flex-direction:column;gap:6px}.ref-brand{height:74px;display:flex;align-items:flex-start;margin-bottom:20px}.ref-brand img{width:144px;height:64px;object-fit:contain}.ref-menu-label{font-size:10px;letter-spacing:1.6px;color:#8f9790;margin:12px 10px 7px}.ref-nav{min-height:44px;justify-content:flex-start;text-align:left;border:0;border-radius:12px;gap:12px;color:#aab0a9;padding:10px;font-size:14px;position:relative}.ref-nav.selected{background:#ffffff06;color:#f0e7d4}.ref-nav.selected:before{content:'';position:absolute;left:-14px;width:4px;height:24px;border-radius:0 4px 4px 0;background:#e2c995}.ref-nav small{margin-left:auto;border-radius:14px;padding:1px 6px;color:#ead3a0;background:#b59b602b;font-size:10px}.ref-icon{color:#bca77c;font-size:20px;line-height:1;width:20px;text-align:center;flex:none}.ref-main{min-width:0}.ref-toolbar{min-height:74px;border-radius:22px;background:#161918;display:flex;align-items:center;justify-content:space-between;padding:12px 18px;gap:16px}.ref-search{width:min(330px,48%);display:flex;align-items:center;gap:10px;background:#ffffff03;border-radius:22px;padding:0 12px}.ref-search input{background:transparent!important;border:0!important;font-size:12px!important;min-height:38px!important;padding:8px!important;outline-offset:0}.ref-toolbar-right{display:flex;align-items:center;gap:12px}.ref-toolbar-right select{width:72px;background:#ffffff05;border:1px solid #ffffff16;border-radius:22px;min-height:38px;font-size:13px}.ref-avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#dfcfaa;color:#242219;font-size:12px;font-weight:700}.ref-coach{display:grid;font-size:12px;gap:2px}.ref-coach small{font-size:10px;color:#8f9790}.ref-content{padding:26px 18px 16px}.ref-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px}.ref-title-row h1{font-size:30px;letter-spacing:-1px;font-weight:600;margin-bottom:4px}.ref-title-row p{font-size:13px;color:#a1a79f;margin:0}.ref-title-actions{display:flex;gap:10px}.ref-title-actions button{border-radius:26px;min-height:40px;font-size:12px;white-space:nowrap;border-color:#bcbeb4}.reference-dashboard .gold{background:linear-gradient(120deg,#ac8a48,#d7bb7e);color:#13120e;border:0;box-shadow:0 4px 20px #9d7b3520}.ref-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:14px}.ref-stats section{margin:0;padding:18px 16px;border:1px solid #ffffff0b;border-radius:22px;background:linear-gradient(145deg,#24231f,#1e1d1a);min-height:152px;display:flex;flex-direction:column;justify-content:space-between}.ref-stats .featured{background:linear-gradient(145deg,#3b3425,#75603a);border-color:#c9ad6b16;box-shadow:0 7px 28px #a7853a16}.ref-card-label{display:flex;justify-content:space-between;align-items:center;font-size:13px;gap:8px}.ref-card-label button{width:30px;min-height:30px;border-radius:50%;padding:0;font-size:20px;border-color:#c8cdc080}.ref-stats .featured .ref-card-label button{background:#f0e4c7;color:#342e21;border-color:transparent}.ref-stat>strong{font-size:38px;line-height:1.25;font-weight:500;letter-spacing:-1.5px;margin:10px 0}.ref-stat>small{font-size:10px;color:#abb0a5}.ref-stat.featured>small{color:#dfd0b2}.ref-lower{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:stretch}.ref-lower>section{margin:0;padding:18px;border:1px solid #ffffff0b;border-radius:22px;background:linear-gradient(145deg,#24231f,#1e1d1a);min-width:0}.ref-lower h2{font-size:14px;font-weight:500;margin-bottom:6px}.ref-lower p{font-size:11px;color:#9da59b;line-height:1.6}.ref-bars{display:flex;align-items:flex-end;justify-content:space-around;gap:12px;height:188px;padding-top:12px}.ref-bar-col{flex:1;max-width:64px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px;height:100%}.ref-bar{width:100%;border-radius:28px;background:#b5a47b;min-height:20px}.ref-bar.bar-0{background:repeating-linear-gradient(-45deg,#b9b5a1 0 1px,#333830 1px 4px)}.ref-bar.bar-1{background:#bba371}.ref-bar.bar-2{background:#c7c1ad}.ref-bar.bar-3{background:#8d815e}.ref-bar-number{font-size:10px;color:#c7ccbF}.ref-bar-col small{font-size:10px;color:#a7aea2;margin-top:4px}.ref-reminders{display:flex;flex-direction:column}.ref-reminders h3{font-size:20px;font-weight:500;line-height:1.4;margin:12px 0}.ref-reminders small{font-size:10px;color:#d4bc89}.ref-reminders>button{margin-top:auto;border-radius:24px;font-size:11px;min-height:40px}.ref-project-heading{display:flex;justify-content:space-between;align-items:center;gap:8px}.ref-project-heading button{border-radius:22px;font-size:10px;min-height:28px;padding:3px 9px}.ref-student-list{display:grid;gap:12px;margin-top:20px}.ref-student-list>button{border:0;min-height:35px;padding:0;justify-content:flex-start;text-align:left;gap:10px}.ref-student-list strong{display:block;font-size:11px;font-weight:500}.ref-student-list small{display:block;font-size:9px;color:#9da498;margin-top:2px}.ref-student-list .ref-icon{font-size:18px}
@media(max-width:1199px){.ref-frame{grid-template-columns:180px minmax(0,1fr);gap:12px;padding:12px}.ref-sidebar{padding:16px 10px}.ref-brand img{width:130px}.ref-content{padding:22px 8px 12px}.ref-title-row{flex-direction:column;gap:12px}.ref-stats{gap:10px}.ref-stats section{padding:14px 12px}.ref-card-label{font-size:11px}.ref-lower{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.ref-projects{grid-column:1/-1}.ref-student-list{grid-template-columns:repeat(3,minmax(0,1fr))}.ref-coach{display:none}}
@media(max-width:767px){.reference-dashboard{width:calc(100% - 20px);margin:10px auto 20px}.ref-frame{display:block;padding:10px;border-radius:22px}.ref-sidebar{display:flex;flex-direction:row;gap:6px;overflow:auto;align-items:center;padding:10px;margin-bottom:10px;border-radius:16px}.ref-brand{height:35px;margin:0 8px 0 0;flex:none}.ref-brand img{width:90px;height:35px}.ref-sidebar .ref-menu-label{display:none}.ref-nav{flex:none;font-size:11px;min-height:36px;padding:7px 9px;gap:5px}.ref-nav .ref-icon{display:none}.ref-nav.selected:before{display:none}.ref-sidebar .ref-nav:nth-last-child(-n+2){display:none}.ref-toolbar{padding:10px;min-height:58px;border-radius:16px;gap:8px}.ref-toolbar-right{gap:7px}.ref-avatar{width:30px;height:30px}.ref-search{width:65%;padding:0 8px}.ref-toolbar-right select{width:64px;font-size:12px;min-height:34px}.ref-content{padding:20px 0 0}.ref-title-row h1{font-size:27px}.ref-title-row p{font-size:12px}.ref-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ref-stats section{border-radius:18px;min-height:140px;padding:14px}.ref-card-label{font-size:12px}.ref-stat>strong{font-size:34px}.ref-lower{grid-template-columns:1fr;gap:10px}.ref-lower>section{border-radius:18px;padding:17px}.ref-analytics{min-height:260px}.ref-reminders>button{margin-top:20px}.ref-student-list{grid-template-columns:1fr 1fr}.ref-projects{grid-column:auto}}
/* The same four-card rhythm and 2:1:1 workspace on the student side. */
.student-app .student-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.student-app .student-metric{margin:0;min-height:140px;padding:18px 16px;border-radius:22px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(145deg,#24231f,#1e1d1a)}.student-metric>span{font-size:13px;color:#e5e3d9}.student-metric>strong{font-size:31px;line-height:1.3;letter-spacing:-1px;font-weight:500;padding:8px 0}.student-metric>small{font-size:10px;color:#a9a698}.student-app .student-metric.featured{background:linear-gradient(145deg,#3b3425,#75603a);border-color:#c9ad6b20}.student-app .student-metric.featured>small{color:#dfd0b2}.student-weight-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:stretch}.student-weight-layout>.weight-chart-wrap,.student-weight-layout>form,.student-weight-layout>section{margin:0;border:1px solid #ffffff0c;border-radius:22px;padding:18px;background:linear-gradient(145deg,#24231f,#1e1d1a);min-width:0}.student-weight-layout .weight-chart-wrap h3{font-size:16px;font-weight:500;margin-bottom:18px}.student-weight-layout .weight-chart{min-height:180px;width:100%}.student-weight-layout h2{font-size:16px}.student-weight-layout .hint,.student-weight-layout label{font-size:12px}.student-weight-layout #daily-weight{font-size:34px;height:68px}.student-weight-layout button{font-size:12px;padding:8px}.student-day-brief{display:flex;flex-direction:column}.student-day-brief h3{font-size:24px;line-height:1.3;margin-top:16px;font-weight:500}.student-day-brief .gold{margin-top:auto}.student-app .student-welcome h1{font-size:30px;letter-spacing:-1px}.student-app .student-welcome{padding-bottom:14px}
@media(min-width:1200px){body:has(.student-app) header>div{max-width:none;padding:10px 30px}body:has(.student-app) .student-app{width:calc(100% - 288px);max-width:none;margin:26px 30px 70px 258px;padding:20px 24px;border:1px solid #ffffff09;background:#111313;border-radius:24px}body:has(.student-app) .student-dock{top:160px;left:16px;bottom:20px;transform:none;width:212px;display:flex;flex-direction:column;padding:24px 14px;gap:10px;border-radius:22px;background:#161918;border-color:#ffffff09;box-shadow:none}body:has(.student-app) .student-dock:before{content:'PT FITNESS';font-size:13px;letter-spacing:.14em;color:#d7be88;padding:8px 10px 24px}body:has(.student-app) .student-dock button{flex-direction:row;justify-content:flex-start;gap:14px;padding:12px 14px;min-height:48px;border-radius:12px;font-size:14px}.student-app .student-toolbar{margin-top:14px}.student-app .student-date-strip button{flex-basis:70px}}
@media(min-width:768px) and (max-width:1199px){.student-app{max-width:1040px;width:calc(100% - 48px)}.student-weight-layout{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}.student-day-brief{grid-column:1/-1}.student-app .student-metric{padding:16px 12px}.student-metric>strong{font-size:28px}}
@media(max-width:767px){.student-app .student-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}.student-app .student-metric{min-height:116px;padding:15px;border-radius:18px}.student-metric>span{font-size:12px}.student-metric>strong{font-size:28px;padding:5px 0}.student-metric>small{font-size:10px}.student-weight-layout{display:flex;flex-direction:column;gap:12px}.student-weight-layout>form,.student-weight-layout>section,.student-weight-layout>.weight-chart-wrap{border-radius:20px;padding:18px}.student-weight-layout>.weight-chart-wrap{order:2}.student-weight-layout>form,.student-weight-layout>section:first-of-type{order:1}.student-weight-layout>.student-day-brief{order:3;min-height:180px}.student-day-brief .gold{margin-top:14px}.student-app .student-welcome h1{font-size:27px}}

.ref-brand img{mix-blend-mode:screen}

.student-app button{transition:transform 120ms ease-out,border-color 160ms ease-out,background-color 160ms ease-out}.student-app button:active:not(:disabled){transform:scale(.975)}.student-app .student-dock button{transition:transform 120ms ease-out,color 160ms ease-out,background-color 160ms ease-out}.student-app .student-date-strip button{transition:transform 120ms ease-out,border-color 160ms ease-out}@media(prefers-reduced-motion:reduce){.student-app button,.student-app .student-dock button,.student-app .student-date-strip button{transition:none}.student-app button:active:not(:disabled){transform:none}}
.student-app .student-dock{grid-template-columns:repeat(4,minmax(0,1fr))}.student-home-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:14px}.student-home-layout>.weight-chart-wrap,.student-home-layout>section{margin:0;padding:20px;border:1px solid #ffffff10;border-radius:22px;background:linear-gradient(145deg,#24231f,#1e1d1a);min-width:0}.student-home-layout .weight-chart{width:100%}.student-app>#daily-weight{font-size:38px}@media(max-width:767px){.student-home-layout{grid-template-columns:1fr}.student-home-layout>section{min-height:180px}.student-dock button{font-size:11px}.student-dock svg{width:22px;height:22px}}
.student-app details.exercise-disclosure{padding:0;margin:12px 0;border:1px solid #ffffff16;border-radius:18px;background:#ffffff04;overflow:hidden}.exercise-disclosure>summary{display:grid;grid-template-columns:26px minmax(0,1fr) auto 12px;align-items:center;gap:10px;list-style:none;cursor:pointer;padding:17px 15px;min-height:84px;color:#eee9da}.exercise-disclosure>summary::-webkit-details-marker{display:none}.exercise-disclosure>summary::after{content:'⌄';font-size:17px;color:#d9c18c;transition:transform 160ms ease}.exercise-disclosure[open]>summary::after{transform:rotate(180deg)}.exercise-number{font-size:12px;color:#9c927c;font-variant-numeric:tabular-nums}.exercise-summary-title{display:grid;gap:4px;min-width:0}.exercise-summary-title strong{font-size:15px;font-weight:600;line-height:1.4;overflow-wrap:anywhere}.exercise-summary-title small{font-size:12px;color:#a6a99d}.exercise-summary-status{padding:3px 7px;border-radius:20px;font-size:10px;color:#b8b3a4;background:#ffffff05;border:1px solid #ffffff13;white-space:nowrap}.exercise-summary-status.submitted{background:#c8ae7516;border-color:#c8ae7533;color:#e2c993}.exercise-disclosure-content{padding:0 16px 16px;border-top:1px solid #ffffff0a}.exercise-disclosure-content>p:first-child,.exercise-disclosure-content>button:first-child{margin-top:16px}.selected-training-file{overflow-wrap:anywhere}.student-app .exercise-disclosure-content form{margin-bottom:0;padding:14px;border-radius:14px}.student-app .exercise-disclosure-content label{font-size:14px}@media(prefers-reduced-motion:reduce){.exercise-disclosure>summary::after{transition:none}}
