:root{--navy:#123a56;--blue:#287eab;--teal:#178e83;--ink:#243746;--muted:#748493;--line:#dbe8ee;--bg:#f4f8fa;--white:#fff;--danger:#b84c4c;--warn:#b87819;--shadow:0 16px 42px rgba(28,72,96,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:"Cairo",Tahoma,Arial,sans-serif}button,input,select{font:inherit}button{cursor:pointer}[hidden]{display:none!important}
.sessions-hero{width:min(1180px,calc(100% - 32px));margin:28px auto 0;background:linear-gradient(135deg,#173f5b,#287eab 56%,#178e83);color:#fff;border-radius:26px;padding:28px 30px;display:flex;justify-content:space-between;gap:24px;align-items:center;box-shadow:0 18px 45px rgba(22,73,101,.15)}
.sessions-hero-copy>span{font-size:12px;font-weight:900;color:#c9fff0}.sessions-hero h1{margin:4px 0 6px;font-size:31px}.sessions-hero p{margin:0;color:#e1f2f5;line-height:1.8;font-size:13px;max-width:760px}.sessions-hero-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.sessions-hero-actions button,.sessions-hero-actions .back-records{border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.12);color:#fff;border-radius:13px;padding:11px 16px;font-weight:900;text-decoration:none}
.sessions-page{width:min(1180px,calc(100% - 32px));margin:18px auto 50px;display:grid;gap:18px}.completion-notice{background:#e5f7ef;border:1px solid #b8e4d1;color:#0d765f;padding:12px 16px;border-radius:14px;font-weight:800}
.summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.summary-grid article{background:#fff;border:1px solid var(--line);border-radius:19px;padding:18px 19px;box-shadow:0 9px 26px rgba(28,72,96,.06)}.summary-grid span{font-size:11px;color:var(--teal);font-weight:900}.summary-grid strong{display:block;font-size:29px;color:var(--navy);line-height:1.1;margin:4px 0}.summary-grid small{font-size:10px;color:var(--muted)}.summary-grid .overdue-card{border-color:#edd1d1;background:#fffafa}.summary-grid .overdue-card span,.summary-grid .overdue-card strong{color:#a64242}
.sessions-panel{background:#fff;border:1px solid var(--line);border-radius:23px;box-shadow:var(--shadow);overflow:hidden}.panel-head{display:flex;justify-content:space-between;align-items:flex-end;gap:22px;padding:23px 24px;border-bottom:1px solid #e8f0f3}.panel-head>div>span{font-size:11px;font-weight:900;color:var(--teal)}.panel-head h2{margin:4px 0 5px;font-size:23px}.panel-head p{margin:0;color:var(--muted);font-size:12px;line-height:1.8}.filters{display:flex;gap:10px;align-items:flex-end}.filters label{display:grid;gap:5px;font-size:10px;color:var(--muted);font-weight:800}.filters input,.filters select{height:42px;border:1px solid var(--line);background:#fbfdfe;border-radius:11px;padding:0 12px;outline:none;min-width:175px;color:var(--ink)}.filters input:focus,.filters select:focus{border-color:#7bc7c5;box-shadow:0 0 0 3px rgba(23,142,131,.09)}
.table-shell{overflow:auto}.table-shell table{width:100%;border-collapse:collapse;table-layout:fixed}.table-shell th{background:#f2f7f9;color:#365469;font-size:11px;text-align:right;padding:12px 15px;border-bottom:1px solid var(--line);white-space:nowrap}.table-shell td{padding:13px 15px;border-bottom:1px solid #edf2f4;font-size:12px;vertical-align:middle}.table-shell tbody tr:hover{background:#fbfefe}.table-shell th:nth-child(1){width:24%}.table-shell th:nth-child(2){width:14%}.table-shell th:nth-child(3){width:25%}.table-shell th:nth-child(4){width:13%}.table-shell th:nth-child(5){width:11%}.table-shell th:nth-child(6){width:13%}
.student-name-cell strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#284b63;font-weight:900}.session-action-cell{text-align:center}.open-session-button{display:inline-flex;align-items:center;justify-content:center;border:0;background:#176f5c;color:#fff;border-radius:10px;padding:8px 12px;font-size:11px;font-weight:900;white-space:nowrap;min-width:92px;text-decoration:none;cursor:pointer}.open-session-button:hover{background:#105d4d}.date-main{font-weight:900;color:#284b63;white-space:nowrap}.type-cell{font-weight:800;color:#344d60}.class-cell{color:#657987}.status-pill{display:inline-flex;align-items:center;justify-content:center;min-width:72px;padding:6px 10px;border-radius:999px;font-size:10px;font-weight:900;background:#e6f6f0;color:#12735f}.status-pill.today{background:#e8f3fb;color:#226c9a}.status-pill.overdue{background:#fff0f0;color:#a64040}.status-pill.upcoming{background:#eef7f3;color:#1a785f}
.load-state,.empty-state{padding:45px 24px;text-align:center;color:var(--muted)}.load-state.error{color:#a64040}.empty-state{display:grid;gap:6px}.empty-state strong{font-size:18px;color:#375165}.toast{position:fixed;right:24px;bottom:24px;background:#176f5c;color:#fff;border-radius:12px;padding:12px 16px;font-weight:800;box-shadow:0 15px 38px rgba(0,0,0,.18);z-index:1000}
@media(max-width:900px){.summary-grid{grid-template-columns:1fr 1fr}.panel-head{align-items:stretch;flex-direction:column}.filters{width:100%}.filters label{flex:1}.filters input,.filters select{min-width:0;width:100%}.table-shell{overflow-x:auto}.table-shell table{min-width:780px}}
@media(max-width:600px){.sessions-page,.sessions-hero{width:min(100% - 18px,1180px)}.sessions-hero{padding:20px;align-items:flex-start;flex-direction:column}.sessions-hero h1{font-size:25px}.summary-grid{grid-template-columns:1fr 1fr}.panel-head{padding:18px}.filters{flex-direction:column}.filters label{width:100%}}

/* V1.0.159 — تقرير مستقل لمواعيد الإرشاد الجمعي */
.group-sessions-panel{border-color:#cfe5e1}
.group-sessions-panel .panel-head{background:linear-gradient(180deg,#fbfefd,#f7fbfa)}
.group-table-shell .group-sessions-table{min-width:0;table-layout:fixed}
.group-sessions-table th:nth-child(1){width:58%}
.group-sessions-table th:nth-child(2){width:22%}
.group-sessions-table th:nth-child(3){width:20%;text-align:center}
.group-sessions-table td:nth-child(3){text-align:center}
.group-title-cell strong{display:block;color:#284b63;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:600px){.group-table-shell{overflow-x:auto}.group-table-shell .group-sessions-table{min-width:560px}}

.records-return-row{display:flex;justify-content:flex-start;align-items:center}.page-back-records{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 18px;border-radius:12px;background:#fff;color:#1d5f78;border:1px solid #cfe0e6;text-decoration:none;font-size:12px;font-weight:900;box-shadow:0 7px 20px rgba(28,72,96,.06);white-space:nowrap}.page-back-records:hover{background:#f3f8fa;border-color:#9fc2cf}.page-back-records::before{content:"↩";margin-left:7px;font-size:15px}@media(max-width:640px){.records-return-row{justify-content:stretch}.page-back-records{width:100%}}
