.coaching-wrap,.coaching-portal{--co-primary:#166b57;--co-dark:#153b32;--co-border:#e4eae7;--co-muted:#64756d;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#20332d;max-width:1200px}.coaching-wrap{margin:24px 25px 35px 0}.coaching-portal{margin:30px auto;padding:0 18px}.coaching-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 0 28px}.coaching-head h1{font-size:31px;line-height:1.2;margin:6px 0;color:var(--co-dark);font-weight:750}.coaching-head p{color:var(--co-muted);margin:7px 0}.coaching-eyebrow{font-size:11px;font-weight:800;letter-spacing:1.5px;color:var(--co-primary)}.coaching-pill{background:#e5f4ee;color:var(--co-primary);padding:8px 15px;border-radius:30px;font-weight:700;font-size:12px}.coaching-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.coaching-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:20px}.coaching-card,.coaching-panel{background:white;border:1px solid var(--co-border);border-radius:15px;box-shadow:0 5px 25px rgba(15,49,39,.035);padding:24px;margin-bottom:18px}.coaching-card{display:flex;flex-direction:column;gap:8px}.coaching-card .dashicons{color:var(--co-primary);font-size:25px;width:25px;height:25px}.coaching-card small{color:var(--co-muted);font-size:13px}.coaching-card strong{font-size:32px;color:var(--co-dark)}.coaching-panel h2{margin:0 0 17px;font-size:20px;font-weight:750;color:var(--co-dark)}.coaching-panel p{color:var(--co-muted);line-height:1.65}.coaching-panel label{display:block;font-size:12px;font-weight:700;color:#455d52;margin:15px 0 6px}.coaching-panel input:not([type=hidden]),.coaching-panel select,.coaching-panel textarea{box-sizing:border-box;width:100%;max-width:100%;padding:11px 12px;border:1px solid #d8e3dc;border-radius:8px;background:#fff;color:#20332d;min-height:43px}.coaching-panel select[multiple]{min-height:100px}.coaching-panel button.button-primary,.coaching-panel .coaching-btn,.coaching-btn{background:var(--co-primary)!important;color:white!important;border:0!important;border-radius:8px!important;padding:11px 18px!important;display:inline-block;text-decoration:none!important;cursor:pointer;font-size:13px;font-weight:700;margin-top:15px;line-height:1.4;height:auto}.coaching-secondary{background:#eaf3ee!important;color:var(--co-primary)!important}.coaching-tags{display:flex;gap:7px;flex-wrap:wrap;margin:14px 0}.coaching-tag{background:#edf5f0;color:#216e53;border-radius:30px;padding:6px 10px;font-size:12px;font-weight:700}.coaching-list{display:flex;flex-direction:column;gap:10px}.coaching-list-row{padding:13px 0;border-bottom:1px solid var(--co-border);display:flex;flex-direction:column;gap:5px}.coaching-list-row strong{color:var(--co-dark)}.coaching-list-row small{color:var(--co-muted)}.coaching-list-row form{margin-top:10px}.coaching-alert{background:#e7f6ee;border:1px solid #b6dfc7;color:#145a3c;padding:13px 17px;border-radius:9px;margin:15px 0}.coaching-login{max-width:480px;margin:70px auto}.coaching-login .coaching-panel{padding:35px}.coaching-login h2{font-size:26px;margin-top:10px}.coaching-login .coaching-btn{width:100%}.coaching-detail,.coaching-attendance-row{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid var(--co-border);padding:13px 0}.coaching-detail span,.coaching-attendance-row small{color:var(--co-muted)}.coaching-attendance-row small{display:block;margin-top:3px}.coaching-attendance-row select{max-width:135px!important}.coaching-portal .coaching-panel form{margin:0}.coaching-wrap .widefat{border:0;box-shadow:none}.coaching-wrap .widefat th{font-weight:700}@media(max-width:760px){.coaching-grid{grid-template-columns:1fr}.coaching-stats{grid-template-columns:repeat(2,1fr)}.coaching-head h1{font-size:25px}.coaching-head{align-items:flex-start}.coaching-panel{padding:18px}.coaching-wrap{margin-right:10px}}

/* Mobile-friendly, accessible P/A attendance buttons. */
.coaching-attendance-help{font-size:13px;margin:-4px 0 18px!important}
.coaching-attendance-student{min-width:0;flex:1}
.coaching-pa-toggle{display:flex;gap:8px;flex-shrink:0}
.coaching-pa-option{position:relative;display:block!important;margin:0!important;cursor:pointer}
.coaching-pa-option input[type=radio]{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.coaching-pa-option span{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:52px;height:48px;border:2px solid #d9e4dd;border-radius:12px;background:#f5f8f6;color:#53665b;font-size:17px;font-weight:800;transition:background .12s,border-color .12s,color .12s}
.coaching-pa-option input[value=present]:checked+span{background:#dcf7e7;border-color:#18845b;color:#09643d}
.coaching-pa-option input[value=absent]:checked+span{background:#ffebe9;border-color:#d74d4d;color:#a52e2e}
.coaching-pa-option input:focus-visible+span{outline:3px solid #357bc0;outline-offset:2px}
.coaching-pa-option span:active{transform:scale(.97)}
.coaching-save-attendance{min-height:48px;min-width:180px}
@media(max-width:480px){.coaching-attendance-row{gap:8px}.coaching-pa-toggle{gap:6px}.coaching-pa-option span{width:48px;height:48px}.coaching-attendance-student strong{font-size:14px}}

/* Paginated student directory */
.coaching-students-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:12px 0 20px}.coaching-students-toolbar h2{font-size:22px;margin:0}.coaching-students-toolbar p{color:#68766e;margin:5px 0 0}.coaching-student-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin-bottom:20px}.coaching-student-stats>div{padding:19px 22px;border:1px solid #e1e9e3;background:#fff;border-radius:14px}.coaching-student-stats span{display:block;color:#66786e;font-size:13px}.coaching-student-stats strong{display:block;color:#163e30;font-size:28px;margin-top:7px}.coaching-student-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:18px}.coaching-student-filters input[type=search]{flex:2 1 220px;max-width:none}.coaching-student-filters select{flex:1 1 145px;max-width:none}.coaching-student-filters .button{min-height:40px}.coaching-student-table{padding:0!important;overflow:hidden}.coaching-table-scroll{overflow-x:auto}.coaching-student-table table{border:0;min-width:610px}.coaching-student-table th,.coaching-student-table td{padding:15px 16px!important;vertical-align:middle}.coaching-student-table td small{display:block;color:#718077;margin-top:3px}.coaching-count{display:inline-block;background:#e8f4ec;border-radius:20px;padding:4px 11px;color:#276244;font-weight:700}.coaching-student-pagination{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:16px 20px}.coaching-student-pagination>div{display:flex;align-items:center;gap:8px}.coaching-student-editor{max-width:850px}.coaching-back{display:inline-block;margin-bottom:14px}.coaching-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.coaching-student-editor input,.coaching-student-editor select,.coaching-student-editor textarea{width:100%;max-width:none}.coaching-student-editor select[multiple]{height:180px}@media(max-width:680px){.coaching-students-toolbar{align-items:flex-start}.coaching-edit-grid{grid-template-columns:1fr}.coaching-student-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.coaching-student-filters>*{width:100%;flex:1 1 100%}.coaching-student-pagination{align-items:flex-start}}

/* Teacher directory status */
.coaching-status{display:inline-block;padding:5px 11px;border-radius:30px;font-size:12px;font-weight:700}.coaching-status.is-active{background:#e6f5ec;color:#176b43}.coaching-status.is-inactive{background:#fff0eb;color:#a94330}
