.sm-app{direction:rtl;max-width:1180px;margin:40px auto;padding:24px;font-family:inherit;color:#243229}.sm-hero{padding:56px 34px;border-radius:24px;background:linear-gradient(135deg,#f4f7f1,#e7eee1);text-align:center}.sm-hero span{display:inline-block;padding:6px 12px;border-radius:999px;background:#fff;margin-bottom:12px}.sm-hero h1{font-size:clamp(30px,5vw,54px);margin:0 0 12px}.sm-hero p{font-size:18px;margin:0}.sm-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin:22px 0}.sm-stats>div,.sm-card{background:#fff;border:1px solid #e5e9e2;border-radius:18px;padding:22px;box-shadow:0 8px 28px rgba(30,50,35,.05)}.sm-stats b{display:block;font-size:32px}.sm-stats span{color:#667268}.sm-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.sm-actions a{display:block;text-align:center;padding:16px;border-radius:14px;background:#556b4e;color:#fff;text-decoration:none}.sm-notice{padding:20px;border-radius:14px;background:#f5f6f4}.sm-table{width:100%;border-collapse:collapse}.sm-table th,.sm-table td{text-align:right;padding:12px;border-bottom:1px solid #eee}@media(max-width:600px){.sm-app{margin:16px auto;padding:14px}.sm-hero{padding:36px 18px}}
.sm-titlebar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.sm-titlebar h2{margin:0}.sm-titlebar p{margin:6px 0 0;color:#667268}.sm-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0}.sm-success{padding:14px 16px;border-radius:14px;background:#edf7ed;border:1px solid #c9e7cb;margin:14px 0}.sm-inline-form{display:flex;gap:10px;align-items:center}.sm-inline-form select{flex:1}.sm-form{display:grid;gap:13px}.sm-form label{display:grid;gap:6px;font-weight:600}.sm-form input,.sm-form select,.sm-form textarea,.sm-inline-form select{width:100%;box-sizing:border-box;border:1px solid #d9dfd7;border-radius:10px;padding:11px 12px;background:#fff;font:inherit}.sm-btn{border:0;border-radius:11px;padding:12px 18px;background:#556b4e;color:#fff;cursor:pointer;font:inherit;font-weight:700}.sm-fields-2,.sm-fields-3{display:grid;gap:10px}.sm-fields-2{grid-template-columns:repeat(2,1fr)}.sm-fields-3{grid-template-columns:repeat(3,1fr)}.sm-progress-row{padding:12px 0;border-bottom:1px solid #eef0ec}.sm-progress-row:last-child{border-bottom:0}.sm-progress-row span,.sm-progress-row small{color:#667268}.sm-progress{height:9px;background:#edf0eb;border-radius:999px;overflow:hidden;margin:8px 0}.sm-progress i{display:block;height:100%;background:#556b4e;border-radius:999px}.sm-table-wrap{overflow-x:auto}.sm-forms .sm-card{align-self:start}@media(max-width:760px){.sm-grid-2{grid-template-columns:1fr}.sm-fields-3{grid-template-columns:1fr}.sm-fields-2{grid-template-columns:1fr}.sm-inline-form{align-items:stretch;flex-direction:column}.sm-btn{width:100%}}

.sm-form label small{font-weight:400;color:#7a857d;line-height:1.6}.sm-card p small{color:#7a857d}.sm-table td{vertical-align:top}

.sm-subcard{background:#f8faf7;border:1px solid #e4e9e1;border-radius:14px;padding:16px;margin-top:14px}.sm-subcard h4{margin:0 0 12px}.sm-compact-grid{margin-top:14px}.sm-dense th,.sm-dense td{padding:8px}.sm-dense select,.sm-dense input{min-width:110px;width:100%;box-sizing:border-box;border:1px solid #d9dfd7;border-radius:8px;padding:8px;background:#fff;font:inherit}@media(max-width:760px){.sm-dense{min-width:760px}}

.sm-notifications{display:grid;gap:12px;margin-top:18px}.sm-notification{background:#fff;border:1px solid #e8e8e8;border-radius:14px;padding:16px;box-shadow:0 3px 14px rgba(0,0,0,.04)}.sm-notification.is-unread{border-right:4px solid currentColor}.sm-notification>div{display:flex;justify-content:space-between;gap:12px;align-items:center}.sm-notification small{opacity:.65}.sm-notification p{margin:10px 0}.sm-notification button,.sm-inline-form button{border:0;border-radius:10px;padding:9px 14px;cursor:pointer}.sm-inline-form{margin:16px 0}.sm-profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:16px 0}.sm-profile-grid>div{background:#fff;border:1px solid #eee;border-radius:14px;padding:14px}.sm-profile-grid b{display:block;font-size:1.35rem;margin-bottom:4px}

/* Authentication gate: student / teacher */
.sm-auth-app{max-width:900px;margin-top:32px;margin-bottom:32px}.sm-auth-shell{background:#fff;border:1px solid #e3e7e1;border-radius:28px;padding:clamp(20px,4vw,38px);box-shadow:0 14px 45px rgba(20,35,25,.06)}.sm-auth-heading{text-align:right;margin-bottom:22px}.sm-auth-heading h2{font-size:clamp(32px,5vw,48px);line-height:1.2;margin:0 0 10px;color:#172033}.sm-auth-heading p{margin:0;color:#667268;line-height:1.8}.sm-alert{padding:14px 16px;border-radius:13px;margin:14px 0;line-height:1.7}.sm-alert-error{background:#fff2f2;border:1px solid #f0caca;color:#8b2525}.sm-alert-success{background:#edf7ed;border:1px solid #c9e7cb;color:#285e2d}.sm-auth-tabs{margin-top:20px}.sm-auth-tab-radio{position:absolute;opacity:0;pointer-events:none}.sm-auth-tab-labels{display:grid;grid-template-columns:1fr 1fr;gap:6px;background:#f3f5f2;border-radius:15px;padding:5px;margin-bottom:20px}.sm-auth-tab-labels label{padding:13px 16px;text-align:center;border-radius:11px;cursor:pointer;font-weight:700;color:#647067;transition:.2s ease}.sm-auth-panels>.sm-auth-panel{display:none}.sm-auth-tabs #sm-login-student:checked~.sm-auth-tab-labels label[for="sm-login-student"],.sm-auth-tabs #sm-register-student:checked~.sm-auth-tab-labels label[for="sm-register-student"],.sm-auth-tabs #sm-login-teacher:checked~.sm-auth-tab-labels label[for="sm-login-teacher"],.sm-auth-tabs #sm-register-teacher:checked~.sm-auth-tab-labels label[for="sm-register-teacher"]{background:#fff;color:#334b36;box-shadow:0 3px 12px rgba(30,50,35,.08)}.sm-auth-tabs #sm-login-student:checked~.sm-auth-panels .sm-login-panel,.sm-auth-tabs #sm-register-student:checked~.sm-auth-panels .sm-register-panel,.sm-auth-tabs #sm-login-teacher:checked~.sm-auth-panels .sm-login-panel,.sm-auth-tabs #sm-register-teacher:checked~.sm-auth-panels .sm-register-panel{display:block}.sm-login-form{max-width:560px;margin:auto}.sm-btn-wide{width:100%;min-height:48px}.sm-check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;justify-content:flex-start;gap:9px!important;font-weight:500!important}.sm-check input{width:auto!important;margin:0}.sm-auth-registration-form{animation:smFade .18s ease}.sm-auth-registration-form textarea{resize:vertical}@keyframes smFade{from{opacity:.3;transform:translateY(3px)}to{opacity:1;transform:none}}@media(max-width:600px){.sm-auth-app{padding:12px;margin:18px auto}.sm-auth-shell{border-radius:22px;padding:20px 16px}.sm-auth-heading h2{font-size:34px}.sm-auth-tab-labels label{padding:11px 8px;font-size:14px}}
