:root{--hhp-olive:#3f4042;--hhp-olive2:#55575a;--hhp-gold:#c6982f;--hhp-gold-dark:#9d741d;--hhp-bg:#f7f5f0;--hhp-card:#fff;--hhp-text:#27282b;--hhp-muted:#7c7d82;--hhp-green:#3a8447;--hhp-red:#b7352e;--hhp-orange:#c98b20;--hhp-line:#e7e1d5;--hhp-cream:#f6f1e5}
.hhp-app,.hhp-login-shell{font-family:Tajawal,"Segoe UI",Arial,sans-serif;color:var(--hhp-text)}
.hhp-app{max-width:780px;margin:0 auto;background:#fafafa;min-height:100vh;padding-bottom:86px;box-shadow:0 0 0 1px rgba(0,0,0,.03)}
.hhp-hero{position:relative;background:linear-gradient(135deg,#3d3e40,#57585b);color:#fff;padding:20px 18px 34px;border-radius:0 0 32px 32px;overflow:hidden}
.hhp-pattern{position:absolute;inset:0;opacity:.1;background-image:linear-gradient(30deg,transparent 24%,#fff 25%,#fff 26%,transparent 27%,transparent 74%,#fff 75%,#fff 76%,transparent 77%),linear-gradient(150deg,transparent 24%,#fff 25%,#fff 26%,transparent 27%,transparent 74%,#fff 75%,#fff 76%,transparent 77%);background-size:48px 84px}
.hhp-hero-row{position:relative;z-index:1;display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:12px}.hhp-brand-logo{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#fff;overflow:hidden;border:1px solid rgba(198,152,47,.45)}.hhp-brand-logo img{width:100%;height:100%;object-fit:contain}.hhp-hero h1{margin:2px 0 0;color:#fff;font-size:23px}.hhp-hero p{margin:4px 0 0;opacity:.75;font-size:12px}.hhp-brand-small{font-size:18px;opacity:.7}.hhp-logout{position:relative;z-index:1;color:#fff!important;text-decoration:none;background:rgba(255,255,255,.12);padding:8px 11px;border-radius:10px;font-size:12px}.hhp-user-chip{position:relative;z-index:1;margin-top:16px;background:rgba(255,255,255,.09);display:inline-block;padding:7px 11px;border-radius:14px;font-size:12px}
.hhp-main{padding:20px 16px}.hhp-announcements{display:grid;gap:8px;margin-bottom:14px}.hhp-announcements>div{background:#fff7df;border:1px solid #ead59c;border-radius:13px;padding:11px 13px}.hhp-announcements strong{display:block;font-size:13px}.hhp-announcements span{font-size:12px;color:#6e684f;line-height:1.6}
.hhp-section-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.hhp-section-title h2{margin:0;font-size:21px}.hhp-section-title>span,.hhp-section-title>div>span{color:var(--hhp-muted);font-size:12px}.hhp-section-title a{font-size:12px;background:var(--hhp-olive);color:white!important;padding:8px 11px;border-radius:10px;text-decoration:none}.hhp-circle-switch{margin-bottom:16px}.hhp-tabs{display:flex;overflow:auto;gap:8px;padding-bottom:5px;scrollbar-width:none}.hhp-tabs::-webkit-scrollbar{display:none}.hhp-tabs a{white-space:nowrap;text-decoration:none;color:var(--hhp-text)!important;background:white;border:1px solid var(--hhp-line);padding:9px 12px;border-radius:12px;font-size:12px}.hhp-tabs a.active{background:var(--hhp-olive);color:#fff!important;border-color:var(--hhp-olive)}
.hhp-stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:12px}.hhp-stat-row>div{background:#fff;border:1px solid var(--hhp-line);border-radius:13px;padding:10px 5px;text-align:center}.hhp-stat-row strong{display:block;font-size:18px;color:var(--hhp-olive)}.hhp-stat-row span{font-size:17px;color:var(--hhp-muted)}
.hhp-search-wrap{position:relative;margin:8px 0 18px}.hhp-search-wrap input{width:100%;height:52px;border:1.5px solid #b8bcb1;border-radius:26px;background:#fff;padding:0 44px 0 16px;font-size:15px;outline:none}.hhp-search-wrap input:focus{border-color:var(--hhp-gold)}.hhp-search-wrap span{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:24px;color:#777d70}
.hhp-student-card{background:#fff;border:1px solid #eceee9;border-radius:16px;box-shadow:0 2px 10px rgba(45,43,38,.09);overflow:hidden;margin-bottom:12px}.hhp-student-summary{position:relative;width:100%;border:0;background:transparent;text-align:right;display:grid;grid-template-columns:1fr 46px;gap:10px;align-items:center;padding:17px 15px;cursor:pointer}.hhp-student-summary i{position:absolute;right:0;top:0;width:0;height:0;border-style:solid;border-width:0 44px 44px 0;border-color:transparent var(--hhp-green) transparent transparent}.status-absent .hhp-student-summary i{border-right-color:var(--hhp-red)}.status-late .hhp-student-summary i{border-right-color:var(--hhp-orange)}.hhp-student-summary h3{margin:0 8px 9px 0;font-size:18px;font-weight:600}.hhp-student-summary p{margin:0;display:flex;gap:8px;flex-wrap:wrap;color:var(--hhp-muted);font-size:11px}.hhp-status-label{font-weight:700;color:var(--hhp-green)}.status-absent .hhp-status-label{color:var(--hhp-red)}.status-late .hhp-status-label{color:var(--hhp-orange)}.hhp-student-summary>b{width:42px;height:42px;border-radius:50%;background:var(--hhp-olive2);color:#fff;display:grid;place-items:center;font-size:25px;transition:.2s}.hhp-student-card.open .hhp-student-summary>b{transform:rotate(180deg)}.hhp-student-body{display:none;border-top:1px solid #eff0ec;padding:14px}.hhp-student-card.open .hhp-student-body{display:block}
.hhp-card-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.hhp-card-tabs button{height:44px;border:1px solid #aeb2a7;border-radius:22px;background:#fff;color:#555b4e}.hhp-card-tabs button.active{background:linear-gradient(90deg,var(--hhp-gold),var(--hhp-gold-dark));color:#fff;border-color:var(--hhp-olive)}.hhp-card-panel{display:none}.hhp-card-panel.active{display:block}.hhp-panel-head{display:flex;justify-content:space-between;align-items:center;font-size:13px;margin-bottom:9px}.pill{padding:5px 10px;border-radius:13px;color:#fff;font-size:11px}.pill.present{background:var(--hhp-green)}.pill.absent{background:var(--hhp-red)}.pill.late{background:var(--hhp-orange)}
.hhp-attendance-form{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.hhp-attendance-form button{border-radius:20px;padding:9px 5px;border:1px solid;font-size:12px;background:#fff;cursor:pointer}.hhp-attendance-form .present{border-color:var(--hhp-green);color:#087f4f}.hhp-attendance-form .absent{border-color:var(--hhp-red);color:#9d3e3e}.hhp-attendance-form .late{border-color:var(--hhp-orange);color:#945800}.hhp-attendance-form button.selected{color:#fff}.hhp-attendance-form .present.selected{background:var(--hhp-green)}.hhp-attendance-form .absent.selected{background:var(--hhp-red)}.hhp-attendance-form .late.selected{background:var(--hhp-orange)}.hhp-whatsapp{display:block;text-align:center;margin-top:10px;background:#effbf4;border:1px solid #2dbb74;color:#157846!important;text-decoration:none;padding:10px;border-radius:11px;font-size:12px}.hhp-muted-note{margin-top:9px;color:var(--hhp-muted);font-size:11px;text-align:center}
.hhp-last-progress{background:#f4f5f1;border:1px solid #e1e4dc;border-radius:12px;padding:11px;margin-bottom:10px}.hhp-last-progress>*{display:block}.hhp-last-progress strong{font-size:12px;margin-bottom:4px}.hhp-last-progress span{font-size:11px;color:#676c61;margin-top:3px}.hhp-form-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.hhp-form-row.three{grid-template-columns:repeat(3,1fr)}.hhp-progress-form label{display:block;font-size:11px;color:#62665d;margin-bottom:8px}.hhp-progress-form input,.hhp-progress-form select,.hhp-progress-form textarea{width:100%;margin-top:4px;border:1px solid #d2d5cd;border-radius:9px;background:#fff;min-height:39px;padding:7px;font:inherit}.hhp-next-box{background:#f7f4ea;border:1px solid #e2d5ac;border-radius:12px;padding:10px;margin:5px 0 9px}.hhp-next-box>strong{font-size:12px}.hhp-btn{display:inline-flex;justify-content:center;align-items:center;border-radius:10px;padding:10px 14px;text-decoration:none!important;border:0;cursor:pointer}.hhp-btn.primary{background:var(--hhp-olive);color:#fff!important}.hhp-btn.gold{width:100%;background:var(--hhp-gold);color:#fff!important;font-weight:700}.hhp-empty{padding:25px;text-align:center;color:var(--hhp-muted);background:#fff;border:1px dashed #cfd3ca;border-radius:15px}
.hhp-bottom-nav{position:fixed;z-index:50;bottom:0;left:50%;transform:translateX(-50%);width:min(780px,100%);display:grid;grid-template-columns:repeat(4,1fr);background:linear-gradient(90deg,#4a4b4d,#343537);padding:9px 8px calc(9px + env(safe-area-inset-bottom));box-shadow:0 -3px 15px rgba(0,0,0,.14)}.hhp-bottom-nav a{display:flex;flex-direction:column;align-items:center;gap:2px;color:rgba(255,255,255,.65)!important;text-decoration:none;font-size:10px}.hhp-bottom-nav a span{font-size:19px}.hhp-bottom-nav a.active{color:#fff!important}
.hhp-student-overview,.hhp-student-task{margin-bottom:16px}.hhp-student-task{background:#fff;border:1px solid var(--hhp-line);border-radius:16px;padding:16px;box-shadow:0 2px 10px rgba(45,43,38,.08)}.hhp-student-task>span{font-size:11px;color:var(--hhp-muted)}.hhp-student-task h2{font-size:19px;margin:5px 0}.hhp-student-task p{font-size:12px;color:#676b62}.hhp-student-task .next{margin-top:12px;padding:12px;border-radius:12px;background:#f6f1e5;border:1px solid #e2d4aa}.hhp-student-task .next span,.hhp-student-task .next strong{display:block}.hhp-student-task .next span{font-size:11px;color:#887545}.hhp-student-task .next strong{margin-top:4px}.hhp-history{display:grid;gap:8px}.hhp-history>div{display:grid;grid-template-columns:1fr auto;gap:7px;background:#fff;border:1px solid var(--hhp-line);border-radius:13px;padding:12px}.hhp-history strong{font-size:13px}.hhp-history span{grid-column:1;font-size:11px;color:var(--hhp-muted)}.hhp-history b{grid-column:2;grid-row:1/3;text-align:left;color:var(--hhp-olive);font-size:13px}.hhp-history small{font-size:10px;color:var(--hhp-muted)}
.hhp-login-shell{min-height:70vh;display:grid;place-items:center;padding:25px;background:#f6f7f4}.hhp-login-cardbox{width:min(430px,100%);background:#fff;border:1px solid #e6e8e1;border-radius:20px;padding:24px;box-shadow:0 12px 35px rgba(45,43,38,.12);text-align:center}.hhp-brand-mark{width:72px;height:72px;border-radius:22px;background:linear-gradient(135deg,var(--hhp-charcoal,#3f4042),#55575a);color:var(--hhp-gold);display:grid;place-items:center;margin:0 auto 14px;font-weight:800;font-size:20px;border:1px solid #d9c28b}.hhp-login-cardbox h2{margin:0 0 7px}.hhp-login-cardbox p{color:var(--hhp-muted);font-size:13px}.hhp-login-cardbox label{display:block;text-align:right;font-size:12px}.hhp-login-cardbox input[type=text],.hhp-login-cardbox input[type=password]{width:100%;height:44px;border:1px solid #ccd0c7;border-radius:10px;padding:8px}.hhp-login-cardbox .login-remember{text-align:right}.hhp-login-cardbox .button-primary{width:100%;background:var(--hhp-olive);border:0;color:#fff;border-radius:10px;padding:11px;cursor:pointer}
@media(min-width:781px){.hhp-app{margin-top:22px;border-radius:24px;overflow:hidden}.hhp-main{padding:24px}.hhp-student-summary h3{font-size:19px}}
@media(max-width:480px){.hhp-main{padding:16px 11px}.hhp-hero{padding-left:12px;padding-right:12px}.hhp-hero h1{font-size:20px}.hhp-form-row.three{grid-template-columns:1fr 1fr}.hhp-stat-row strong{font-size:16px}.hhp-student-summary h3{font-size:17px}}


/* لوحة الإدارة الأمامية - هوية جامع حمزة */
.hhp-admin-front{display:grid;gap:16px}.hhp-admin-front-welcome{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff;border:1px solid var(--hhp-line);border-radius:18px;padding:18px}.hhp-admin-front-welcome span{font-size:11px;color:var(--hhp-gold-dark)}.hhp-admin-front-welcome h2{margin:3px 0 5px;font-size:23px}.hhp-admin-front-welcome p{margin:0;color:var(--hhp-muted);font-size:12px}.hhp-admin-open{background:var(--hhp-gold);color:#fff!important;text-decoration:none;padding:11px 14px;border-radius:11px;white-space:nowrap;font-weight:700}
.hhp-front-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.hhp-front-metrics>div{background:#fff;border:1px solid var(--hhp-line);border-radius:16px;padding:14px;min-height:118px;display:flex;flex-direction:column;justify-content:center}.hhp-front-metrics>div.wide{grid-column:1/-1}.hhp-front-metrics span{color:var(--hhp-muted);font-size:12px}.hhp-front-metrics strong{font-size:28px;color:var(--hhp-olive);margin:8px 0 3px}.hhp-front-metrics small{color:#9a9b9e;font-size:10px}
.hhp-admin-shortcuts{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.hhp-admin-shortcuts a{display:grid;gap:4px;background:#fff;border:1px solid var(--hhp-line);border-radius:15px;padding:14px;text-decoration:none!important;color:var(--hhp-text)!important}.hhp-admin-shortcuts a.gold{background:var(--hhp-cream);border-color:#dcc78f}.hhp-admin-shortcuts b{font-size:14px}.hhp-admin-shortcuts span{font-size:10px;color:var(--hhp-muted)}
.hhp-admin-front-card{background:#fff;border:1px solid var(--hhp-line);border-radius:18px;padding:16px}.hhp-front-ring{--pct:0;width:190px;aspect-ratio:1;border-radius:50%;margin:18px auto;background:conic-gradient(var(--hhp-gold) calc(var(--pct)*1%),#eee9df 0);display:grid;place-items:center}.hhp-front-ring:before{content:"";width:142px;aspect-ratio:1;background:#fff;border-radius:50%;grid-area:1/1}.hhp-front-ring>div{grid-area:1/1;z-index:1;text-align:center}.hhp-front-ring strong{display:block;font-size:34px;color:var(--hhp-olive)}.hhp-front-ring span{font-size:11px;color:var(--hhp-muted)}.hhp-front-legend{display:flex;justify-content:center;gap:14px;font-size:11px;color:var(--hhp-muted);flex-wrap:wrap}
.hhp-front-table{display:grid;gap:7px}.hhp-front-table>div{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:11px 10px;background:#faf9f6;border-radius:11px}.hhp-front-table>div>span{display:grid}.hhp-front-table b{font-size:13px}.hhp-front-table small{font-size:10px;color:var(--hhp-muted)}.hhp-front-table strong,.hhp-front-table em{font-size:11px;font-style:normal;color:var(--hhp-muted)}.hhp-front-table em{color:var(--hhp-gold-dark);font-weight:700}
@media(min-width:781px){.hhp-admin-front{max-width:1100px;margin:0 auto}.hhp-front-metrics{grid-template-columns:repeat(4,1fr)}.hhp-front-metrics>div.wide{grid-column:span 2}.hhp-admin-shortcuts{grid-template-columns:repeat(3,1fr)}.hhp-admin-front-card{padding:20px}}
@media(max-width:520px){.hhp-admin-front-welcome{align-items:stretch;flex-direction:column}.hhp-admin-open{text-align:center}.hhp-front-ring{width:165px}.hhp-front-ring:before{width:122px}.hhp-front-table>div{grid-template-columns:1fr auto}.hhp-front-table em{grid-column:2}.hhp-front-table strong{grid-column:2}}

/* مركز التنبيهات للإدارة والمشرف */
.hhp-hero-tools{position:relative;z-index:3;display:flex;align-items:center;gap:8px;justify-content:flex-end}
.hhp-notification-center{position:relative}
.hhp-notification-center summary{list-style:none;cursor:pointer;width:40px;height:40px;border-radius:12px;background:rgba(255,255,255,.13);display:grid;place-items:center;position:relative;color:#fff;border:1px solid rgba(255,255,255,.12)}
.hhp-notification-center summary::-webkit-details-marker{display:none}.hhp-bell{font-size:17px;line-height:1}
.hhp-notification-center summary b{position:absolute;top:-6px;left:-6px;min-width:19px;height:19px;padding:0 5px;border-radius:10px;background:var(--hhp-gold);color:#fff;font-size:10px;display:grid;place-items:center;border:2px solid #48494b}
.hhp-notification-panel{position:absolute;top:48px;left:0;width:min(360px,88vw);max-height:430px;overflow:auto;background:#fff;color:var(--hhp-text);border:1px solid var(--hhp-line);border-radius:16px;box-shadow:0 18px 45px rgba(27,28,30,.2);padding:10px;z-index:100}
.hhp-notification-heading{display:flex;justify-content:space-between;align-items:center;padding:7px 6px 10px;border-bottom:1px solid #eee9df}.hhp-notification-heading strong{font-size:14px}.hhp-notification-heading span{font-size:10px;color:var(--hhp-muted)}
.hhp-notification-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 9px;border-radius:12px;text-decoration:none!important;color:var(--hhp-text)!important;border-right:3px solid var(--hhp-gold);margin-top:7px;background:#fbfaf7}.hhp-notification-item.info{border-right-color:#80838a}.hhp-notification-item.warning{border-right-color:var(--hhp-gold)}.hhp-notification-item span{display:grid;gap:3px;min-width:0}.hhp-notification-item strong{font-size:12px}.hhp-notification-item small{font-size:10px;color:var(--hhp-muted);line-height:1.55}.hhp-notification-item em{font-size:9px;font-style:normal;white-space:nowrap;background:var(--hhp-cream);padding:6px 8px;border-radius:9px;color:var(--hhp-gold-dark);font-weight:700}.hhp-notification-empty{padding:18px 8px;text-align:center;color:var(--hhp-muted);font-size:11px}
@media(max-width:520px){.hhp-hero-row{grid-template-columns:44px 1fr auto}.hhp-logout{padding:8px 9px}.hhp-notification-panel{position:fixed;top:82px;left:12px;right:12px;width:auto;max-height:65vh}.hhp-hero-tools{gap:5px}}

.hhp-stats-note{margin:8px 2px 0;color:#8b7a58;font-size:11px;text-align:right}


/* ===== v2.3.5 — واجهة مستقلة وجمالية للبوابة ===== */
html{scroll-behavior:smooth}
body.hhp-standalone-body{
    margin:0!important;
    min-height:100vh;
    background:
        radial-gradient(circle at 88% 4%,rgba(198,152,47,.14),transparent 28%),
        radial-gradient(circle at 8% 92%,rgba(63,64,66,.08),transparent 30%),
        linear-gradient(180deg,#fbfaf7 0%,#f4f1ea 100%);
    color:var(--hhp-text);
}
body.hhp-standalone-body:before{
    content:"";
    position:fixed;
    inset:0;
    pointer-events:none;
    opacity:.28;
    background-image:
      linear-gradient(30deg,transparent 24%,rgba(198,152,47,.06) 25%,rgba(198,152,47,.06) 26%,transparent 27%,transparent 74%,rgba(198,152,47,.06) 75%,rgba(198,152,47,.06) 76%,transparent 77%),
      linear-gradient(150deg,transparent 24%,rgba(63,64,66,.035) 25%,rgba(63,64,66,.035) 26%,transparent 27%,transparent 74%,rgba(63,64,66,.035) 75%,rgba(63,64,66,.035) 76%,transparent 77%);
    background-size:68px 118px;
}
.hhp-standalone-frame{
    position:relative;
    z-index:1;
    width:100%;
    min-height:100vh;
    padding:22px;
}
.hhp-standalone-frame > p:empty{display:none}

body.hhp-standalone-body .hhp-app{
    position:relative;
    margin:0 auto;
    border-radius:30px;
    overflow:hidden;
    background:rgba(250,250,248,.96);
    border:1px solid rgba(198,152,47,.22);
    box-shadow:0 24px 70px rgba(42,40,36,.14);
}
body.hhp-standalone-body .hhp-role-admin,
body.hhp-standalone-body .hhp-role-supervisor{max-width:1180px}
body.hhp-standalone-body .hhp-role-teacher,
body.hhp-standalone-body .hhp-role-student{max-width:860px}

body.hhp-standalone-body .hhp-hero{
    min-height:188px;
    padding:28px 28px 34px;
    border-radius:0 0 34px 34px;
    background:
        radial-gradient(circle at 14% 18%,rgba(198,152,47,.26),transparent 28%),
        linear-gradient(135deg,#2f3032 0%,#484a4d 58%,#343537 100%);
    box-shadow:inset 0 -1px 0 rgba(255,255,255,.08);
}
body.hhp-standalone-body .hhp-hero:before{
    content:"";
    position:absolute;
    top:0;right:0;left:0;height:4px;
    background:linear-gradient(90deg,transparent,var(--hhp-gold),#e0bd67,var(--hhp-gold),transparent);
}
body.hhp-standalone-body .hhp-hero:after{
    content:"";
    position:absolute;
    width:220px;height:220px;
    left:-90px;bottom:-130px;
    border:1px solid rgba(198,152,47,.22);
    border-radius:50%;
    box-shadow:0 0 0 28px rgba(198,152,47,.045),0 0 0 58px rgba(255,255,255,.025);
}
body.hhp-standalone-body .hhp-pattern{opacity:.075;background-size:58px 100px}
body.hhp-standalone-body .hhp-hero-row{grid-template-columns:64px 1fr auto;gap:16px}
body.hhp-standalone-body .hhp-brand-logo{
    width:64px;height:64px;border-radius:18px;
    border:1px solid rgba(225,190,104,.65);
    box-shadow:0 8px 24px rgba(0,0,0,.16);
}
body.hhp-standalone-body .hhp-brand-small{
    color:#e1bd64;
    opacity:1;
    font-weight:700;
    letter-spacing:.1px;
}
body.hhp-standalone-body .hhp-hero h1{
    font-size:30px;
    font-weight:800;
    letter-spacing:-.4px;
    margin-top:4px;
}
body.hhp-standalone-body .hhp-hero p{
    font-size:13px;
    line-height:1.8;
    color:rgba(255,255,255,.72);
    opacity:1;
}
body.hhp-standalone-body .hhp-user-chip{
    margin-top:18px;
    padding:8px 13px;
    background:rgba(255,255,255,.1);
    border:1px solid rgba(255,255,255,.1);
    backdrop-filter:blur(8px);
}
body.hhp-standalone-body .hhp-logout,
body.hhp-standalone-body .hhp-notification-center summary{
    border:1px solid rgba(224,189,103,.26);
    background:rgba(255,255,255,.09);
    backdrop-filter:blur(8px);
}
body.hhp-standalone-body .hhp-logout:hover,
body.hhp-standalone-body .hhp-notification-center summary:hover{
    background:rgba(198,152,47,.2);
}

body.hhp-standalone-body .hhp-main{padding:26px}
body.hhp-standalone-body .hhp-admin-front-welcome,
body.hhp-standalone-body .hhp-admin-front-card,
body.hhp-standalone-body .hhp-front-metrics>div,
body.hhp-standalone-body .hhp-admin-shortcuts a,
body.hhp-standalone-body .hhp-student-card,
body.hhp-standalone-body .hhp-student-task,
body.hhp-standalone-body .hhp-history>div{
    box-shadow:0 8px 24px rgba(40,38,33,.055);
}
body.hhp-standalone-body .hhp-admin-front-welcome{
    position:relative;
    overflow:hidden;
    border-color:rgba(198,152,47,.28);
    background:linear-gradient(135deg,#fff 0%,#fbf8f0 100%);
}
body.hhp-standalone-body .hhp-admin-front-welcome:after{
    content:"";
    position:absolute;
    left:-22px;bottom:-48px;
    width:130px;height:130px;border-radius:50%;
    border:18px solid rgba(198,152,47,.07);
}
body.hhp-standalone-body .hhp-admin-open{
    box-shadow:0 8px 20px rgba(198,152,47,.2);
}
body.hhp-standalone-body .hhp-front-metrics>div{
    border-color:rgba(198,152,47,.18);
    transition:transform .18s ease,box-shadow .18s ease;
}
body.hhp-standalone-body .hhp-front-metrics>div:hover,
body.hhp-standalone-body .hhp-admin-shortcuts a:hover{
    transform:translateY(-2px);
    box-shadow:0 12px 28px rgba(40,38,33,.09);
}
body.hhp-standalone-body .hhp-front-metrics strong{
    color:#343537;
}
body.hhp-standalone-body .hhp-admin-shortcuts a{
    border-color:rgba(198,152,47,.16);
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
body.hhp-standalone-body .hhp-admin-shortcuts a:hover{border-color:rgba(198,152,47,.46)}
body.hhp-standalone-body .hhp-admin-front-card{border-color:rgba(198,152,47,.18)}
body.hhp-standalone-body .hhp-section-title h2{font-weight:800;color:#292a2d}
body.hhp-standalone-body .hhp-section-title:after{
    content:"";
    flex:1;
    height:1px;
    background:linear-gradient(90deg,rgba(198,152,47,.22),transparent);
    margin-right:8px;
}
body.hhp-standalone-body .hhp-bottom-nav{
    width:min(1180px,calc(100% - 44px));
    bottom:12px;
    border-radius:18px;
    border:1px solid rgba(198,152,47,.25);
    background:rgba(48,49,51,.96);
    backdrop-filter:blur(14px);
    box-shadow:0 12px 34px rgba(0,0,0,.2);
}
body.hhp-standalone-body .hhp-role-teacher .hhp-bottom-nav,
body.hhp-standalone-body .hhp-role-student .hhp-bottom-nav{
    width:min(860px,calc(100% - 44px));
}

@media(max-width:780px){
    .hhp-standalone-frame{padding:0}
    body.hhp-standalone-body .hhp-app{
        border-radius:0;
        border:0;
        min-height:100vh;
        box-shadow:none;
    }
    body.hhp-standalone-body .hhp-hero{
        min-height:164px;
        padding:18px 14px 28px;
        border-radius:0 0 28px 28px;
    }
    body.hhp-standalone-body .hhp-hero-row{grid-template-columns:50px 1fr auto;gap:10px}
    body.hhp-standalone-body .hhp-brand-logo{width:50px;height:50px;border-radius:14px}
    body.hhp-standalone-body .hhp-hero h1{font-size:22px}
    body.hhp-standalone-body .hhp-brand-small{font-size:10px}
    body.hhp-standalone-body .hhp-main{padding:18px 12px 92px}
    body.hhp-standalone-body .hhp-bottom-nav,
    body.hhp-standalone-body .hhp-role-teacher .hhp-bottom-nav,
    body.hhp-standalone-body .hhp-role-student .hhp-bottom-nav{
        width:calc(100% - 18px);
        bottom:8px;
        border-radius:16px;
    }
}


/* v2.3.6 - front back button */
.hhp-page-back{padding:14px 16px 0;display:flex;align-items:center;gap:8px;flex-wrap:wrap;position:sticky;top:8px;z-index:40;width:max-content;max-width:100%}
.hhp-back-btn{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(198,152,47,.25);background:#fff;color:var(--hhp-text);border-radius:999px;padding:10px 16px;font:inherit;cursor:pointer;box-shadow:0 6px 18px rgba(41,40,36,.06)}
.hhp-back-btn span{font-size:16px;line-height:1;color:var(--hhp-gold-dark)}
.hhp-back-btn:hover{background:#fbf8f0;border-color:rgba(198,152,47,.5)}
.hhp-home-btn{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--hhp-gold);background:var(--hhp-gold);color:#fff!important;border-radius:999px;padding:10px 16px;font:inherit;text-decoration:none!important;cursor:pointer;box-shadow:0 6px 18px rgba(157,116,29,.14)}
.hhp-home-btn span{font-size:16px;line-height:1;color:#fff}.hhp-home-btn:hover{background:var(--hhp-gold-dark);border-color:var(--hhp-gold-dark);color:#fff!important}
body.hhp-standalone-body .hhp-page-back{padding:16px 26px 0}
body.hhp-standalone-body .hhp-role-teacher .hhp-page-back,
body.hhp-standalone-body .hhp-role-student .hhp-page-back{padding-top:14px}
@media(max-width:780px){
  .hhp-page-back{padding:12px 12px 0}
  body.hhp-standalone-body .hhp-page-back{padding:12px 12px 0}
}


/* ===== v2.4.0 — فصل التحضير الجماعي عن التسميع ===== */
.hhp-teacher-workspace{padding-bottom:110px}
.hhp-teacher-home-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}
.hhp-teacher-home-stats>div{background:#fff;border:1px solid var(--hhp-line);border-radius:16px;padding:15px;text-align:center;box-shadow:0 7px 22px rgba(42,40,36,.045)}
.hhp-teacher-home-stats span{display:block;color:var(--hhp-muted);font-size:11px;margin-bottom:7px}
.hhp-teacher-home-stats strong{font-size:27px;color:var(--hhp-charcoal,#3f4042)}
.hhp-teacher-actions{display:grid;gap:12px}
.hhp-teacher-actions>a{display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:13px;background:#fff;border:1px solid var(--hhp-line);border-radius:18px;padding:16px;text-decoration:none!important;color:var(--hhp-text)!important;box-shadow:0 8px 24px rgba(42,40,36,.055)}
.hhp-teacher-actions>a i{width:50px;height:50px;border-radius:15px;display:grid;place-items:center;font-style:normal;font-size:23px;background:var(--hhp-cream);color:var(--hhp-gold-dark)}
.hhp-teacher-actions>a.attendance i{background:#eaf7ef;color:#28814a}
.hhp-teacher-actions>a b{display:block;font-size:17px;margin-bottom:4px}
.hhp-teacher-actions>a span{font-size:11px;color:var(--hhp-muted);line-height:1.6}
.hhp-teacher-actions>a em{font-style:normal;font-size:11px;background:var(--hhp-charcoal,#3f4042);color:#fff;padding:8px 10px;border-radius:10px}
.hhp-group-attendance-head{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff;border:1px solid var(--hhp-line);border-radius:18px;padding:15px 17px;margin-bottom:12px;box-shadow:0 7px 22px rgba(42,40,36,.045)}
.hhp-group-attendance-head span{font-size:11px;color:var(--hhp-muted)}
.hhp-group-attendance-head h2{margin:3px 0 0;font-size:20px}
.hhp-att-live-stats{display:grid;grid-template-columns:auto auto auto auto;align-items:center;gap:6px 8px;font-size:11px}
.hhp-att-live-stats b{font-size:20px;color:#2c8a50}.hhp-att-live-stats b:nth-of-type(2){color:#c9473f}
.hhp-group-attendance-form{display:block}
.hhp-group-attendance-list{display:grid;gap:9px}
.hhp-group-att-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;background:#fff;border:1px solid var(--hhp-line);border-radius:15px;padding:12px 13px;box-shadow:0 5px 16px rgba(42,40,36,.04);transition:.18s}
.hhp-group-att-row.is-absent{border-color:#e7aaa6;background:#fff8f7}
.hhp-group-student-name{display:grid;gap:3px;min-width:0}
.hhp-group-student-name strong{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hhp-group-student-name small{font-size:10px;color:var(--hhp-muted)}
.hhp-group-att-actions{display:grid;gap:7px}
.hhp-group-status-buttons{display:grid;grid-template-columns:90px 90px;gap:7px}
.hhp-absence-whatsapp{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:34px;
    border-radius:10px;
    border:1px solid #d8d5ce;
    background:#f1f0ed;
    color:#999!important;
    text-decoration:none!important;
    font-size:10px;
    font-weight:800;
    opacity:.65;
    pointer-events:none;
    transition:.15s;
}
.hhp-absence-whatsapp.is-enabled{
    border-color:#25d366;
    background:#eafaf0;
    color:#157846!important;
    opacity:1;
    pointer-events:auto;
    box-shadow:0 4px 12px rgba(37,211,102,.12);
}
.hhp-absence-whatsapp.is-missing{
    border-style:dashed;
    color:#a49a8c!important;
    opacity:.8;
}
.hhp-group-status-buttons button{height:40px;border-radius:11px;font:inherit;font-size:12px;font-weight:700;cursor:pointer;transition:.15s}
.hhp-mark-present{background:#fff;border:1px solid #38a45f;color:#28814a}
.hhp-mark-present.active{background:#37a960;border-color:#37a960;color:#fff;box-shadow:0 5px 14px rgba(55,169,96,.18)}
.hhp-mark-absent{background:#2f3032;border:1px solid #2f3032;color:#fff}
.hhp-mark-absent.active{background:#d64b43;border-color:#d64b43;color:#fff;box-shadow:0 5px 14px rgba(214,75,67,.18)}
.hhp-group-save-wrap{position:sticky;bottom:78px;z-index:20;margin-top:16px;padding:12px;background:rgba(250,249,246,.94);backdrop-filter:blur(10px);border:1px solid rgba(198,152,47,.2);border-radius:17px;box-shadow:0 10px 30px rgba(42,40,36,.1);text-align:center}
.hhp-group-save-btn{width:100%;border:0;border-radius:13px;background:linear-gradient(90deg,var(--hhp-gold),var(--hhp-gold-dark));color:#fff;font:inherit;font-weight:800;font-size:15px;padding:13px;cursor:pointer}
.hhp-group-save-wrap small{display:block;color:var(--hhp-muted);font-size:9px;margin-top:7px}
.hhp-teacher-bottom-nav a.disabled{opacity:.35;pointer-events:none}
@media(min-width:800px){
  body.hhp-standalone-body .hhp-role-teacher{max-width:960px}
  .hhp-group-attendance-list{grid-template-columns:1fr 1fr}
  .hhp-group-att-row{min-height:72px}
}
@media(max-width:560px){
  .hhp-teacher-home-stats{grid-template-columns:repeat(3,1fr);gap:7px}
  .hhp-teacher-home-stats>div{padding:12px 6px}
  .hhp-teacher-home-stats strong{font-size:22px}
  .hhp-teacher-actions>a{grid-template-columns:46px 1fr auto;padding:13px;gap:10px}
  .hhp-teacher-actions>a i{width:44px;height:44px;border-radius:13px}
  .hhp-group-attendance-head{align-items:flex-start;flex-direction:column}
  .hhp-att-live-stats{width:100%;justify-content:start}
  .hhp-group-att-row{grid-template-columns:1fr;gap:9px}
  .hhp-group-status-buttons{grid-template-columns:1fr 1fr;width:100%}
  .hhp-group-status-buttons button{height:42px}
}


/* ===== v2.5.0 — نطاق من سورة إلى سورة + تسميع جماعي ===== */
.hhp-progress-mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}
.hhp-progress-mode-switch a{display:grid;gap:4px;background:#fff;border:1px solid var(--hhp-line);border-radius:16px;padding:14px;text-decoration:none!important;color:var(--hhp-text)!important;box-shadow:0 6px 18px rgba(42,40,36,.04)}
.hhp-progress-mode-switch a.active{border-color:var(--hhp-gold);background:linear-gradient(135deg,#fffaf0,#fff);box-shadow:0 8px 22px rgba(198,152,47,.12)}
.hhp-progress-mode-switch b{font-size:15px}.hhp-progress-mode-switch span{font-size:10px;color:var(--hhp-muted);line-height:1.6}
.hhp-range-grid{display:grid;grid-template-columns:1.35fr .65fr 1.35fr .65fr;gap:8px;margin:10px 0}
.hhp-range-grid label{font-size:11px;color:#62665d}
.hhp-range-grid input,.hhp-range-grid select{width:100%;margin-top:4px;border:1px solid #d2d5cd;border-radius:9px;background:#fff;min-height:42px;padding:7px;font:inherit}
.hhp-group-progress-settings{background:#fff;border:1px solid var(--hhp-line);border-radius:18px;padding:16px;margin-bottom:13px;box-shadow:0 7px 22px rgba(42,40,36,.045)}
.hhp-group-progress-settings .hhp-next-box{margin-top:12px}.hhp-group-progress-settings .hhp-next-box strong small{font-weight:400;color:var(--hhp-muted)}
.hhp-group-progress-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0;background:#f7f2e8;border:1px solid #e5d7b3;border-radius:15px;padding:12px 14px}
.hhp-group-progress-tools>div{display:grid;gap:3px}.hhp-group-progress-tools strong{font-size:14px}.hhp-group-progress-tools span{font-size:10px;color:var(--hhp-muted)}
.hhp-group-progress-tools button{border:1px solid var(--hhp-gold);background:#fff;color:var(--hhp-gold-dark);border-radius:10px;padding:9px 11px;font:inherit;font-size:11px;cursor:pointer;white-space:nowrap}
.hhp-group-progress-list{display:grid;gap:9px}
.hhp-group-progress-row{display:grid;grid-template-columns:1fr 150px;align-items:center;gap:12px;background:#fff;border:1px solid var(--hhp-line);border-radius:15px;padding:12px 13px;box-shadow:0 5px 16px rgba(42,40,36,.04);transition:.18s}
.hhp-group-progress-row.score-changed{border-color:#d8bc72;background:#fffaf0}
.hhp-score-field{display:grid;grid-template-columns:auto 70px auto;align-items:center;gap:6px;margin:0!important;color:var(--hhp-muted)!important;font-size:10px!important}
.hhp-score-field input{width:70px!important;min-height:42px!important;margin:0!important;text-align:center;font-size:16px!important;font-weight:800;color:var(--hhp-charcoal,#3f4042)}
.hhp-score-field em{font-style:normal;font-size:10px;color:var(--hhp-muted)}
@media(min-width:800px){.hhp-group-progress-list{grid-template-columns:1fr 1fr}}
@media(max-width:620px){
  .hhp-range-grid{grid-template-columns:1fr 1fr}
  .hhp-group-progress-tools{align-items:flex-start;flex-direction:column}
  .hhp-group-progress-tools button{width:100%}
  .hhp-group-progress-row{grid-template-columns:1fr auto}
}
@media(max-width:390px){.hhp-range-grid{grid-template-columns:1fr}.hhp-progress-mode-switch{grid-template-columns:1fr}}


/* v2.5.1 - تعديل الرصد للمعلم */
.hhp-edit-last-progress{margin-top:10px;align-self:flex-start;border:1px solid rgba(198,152,47,.45);background:#fff8e8;color:var(--hhp-gold-dark);border-radius:10px;padding:8px 11px;font:inherit;font-size:11px;cursor:pointer;font-weight:700}
.hhp-edit-last-progress:hover{background:#f3e6bd}
.hhp-progress-form-actions{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}
.hhp-cancel-progress-edit{border:1px solid #c9c9c9;background:#fff;color:#555;border-radius:10px;padding:10px 14px;font:inherit;cursor:pointer}
.hhp-progress-form.is-editing{border:1px solid rgba(198,152,47,.45);background:#fffdf7;border-radius:14px;padding:12px}
.hhp-action-notice{padding:11px 14px;border-radius:12px;margin-bottom:12px;font-size:12px;font-weight:700}
.hhp-action-notice.success{background:#edf8ef;border:1px solid #b9dfc0;color:#2f6e3b}
.hhp-action-notice.info{background:#fff8e8;border:1px solid #ead39a;color:#80601b}
@media(max-width:520px){.hhp-progress-form-actions{grid-template-columns:1fr}.hhp-cancel-progress-edit{width:100%}}


/* v2.5.2 — تعديل وحذف الرصد ضمن مهلة اليوم للمعلم */
.hhp-last-progress-actions{
    display:flex!important;
    gap:8px;
    flex-wrap:wrap;
    align-items:center;
    margin-top:10px;
}
.hhp-last-progress-actions form{margin:0}
.hhp-last-progress-actions .hhp-edit-last-progress{margin-top:0}
.hhp-delete-last-progress{
    border:1px solid #d35a52;
    background:#fff;
    color:#a62e28;
    border-radius:10px;
    padding:8px 11px;
    font:inherit;
    font-size:11px;
    cursor:pointer;
    font-weight:700;
}
.hhp-delete-last-progress:hover{background:#fff0ef}
.hhp-progress-deadline-note{
    display:block!important;
    margin-top:9px;
    padding:8px 10px;
    border-radius:9px;
    background:#f4f1ea;
    color:#817b70!important;
    font-size:10px!important;
    line-height:1.6;
}


/* v2.6.0 — المراجعة بدون درجات + إدارة الرصد الجماعي */
.hhp-review-no-grade-note{
  display:none;
  margin:8px 0 12px;
  padding:10px 12px;
  border:1px solid #ded7c7;
  border-radius:11px;
  background:#f8f5ed;
  color:#716a5d;
  font-size:11px;
  font-weight:700;
}
.hhp-progress-form.is-review .hhp-review-no-grade-note,
.hhp-group-progress-form.is-review .hhp-review-no-grade-note{display:block}
.hhp-progress-form.is-review .hhp-individual-score-field{display:none}
.hhp-review-no-score{
  display:none;
  padding:8px 11px;
  border-radius:12px;
  background:#f3f1eb;
  color:#777166;
  font-size:11px;
  font-weight:700;
}
.hhp-group-progress-form.is-review .hhp-score-field{display:none}
.hhp-group-progress-form.is-review .hhp-review-no-score{display:inline-flex}
.hhp-group-progress-form.is-review .hhp-group-score-area{display:none}
.hhp-individual-score-field small{display:block;color:var(--hhp-muted);font-size:9px;margin-top:4px;font-weight:400}

.hhp-last-group-progress{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  padding:14px 15px;
  margin-bottom:13px;
  background:linear-gradient(135deg,#fff,#faf7ef);
  border:1px solid rgba(198,152,47,.3);
  border-radius:15px;
}
.hhp-last-group-progress>div:first-child{display:grid;gap:4px}
.hhp-last-group-progress>div:first-child>span{font-size:10px;color:var(--hhp-gold-dark);font-weight:700}
.hhp-last-group-progress>div:first-child>strong{font-size:13px}
.hhp-last-group-progress>div:first-child>small{font-size:10px;color:var(--hhp-muted)}
.hhp-last-group-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.hhp-last-group-actions a,
.hhp-last-group-actions button{
  border-radius:10px;
  padding:8px 10px;
  font:inherit;
  font-size:10px;
  font-weight:700;
  cursor:pointer;
}
.hhp-last-group-actions a{
  text-decoration:none!important;
  background:var(--hhp-gold);
  color:#fff!important;
  border:1px solid var(--hhp-gold);
}
.hhp-last-group-actions button{
  background:#fff;
  color:#a62e28;
  border:1px solid #d35a52;
}
.hhp-last-group-actions form{margin:0}
@media(max-width:600px){
  .hhp-last-group-progress{align-items:flex-start;flex-direction:column}
  .hhp-last-group-actions{width:100%}
}


/* v2.6.1 — لوحة أعلى الطلاب بالنقاط */
.hhp-leaderboard-card{
  background:#fff;
  border:1px solid rgba(198,152,47,.20);
  border-radius:18px;
  padding:16px;
  box-shadow:0 8px 24px rgba(44,44,44,.04);
}
.hhp-teacher-leaderboard{margin-top:16px}
.hhp-leaderboard-note{
  margin:2px 0 14px;
  color:var(--hhp-muted);
  font-size:10px;
  line-height:1.8;
}
.hhp-leaderboard-list{display:grid;gap:8px}
.hhp-leaderboard-row{
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  gap:11px;
  align-items:center;
  min-height:62px;
  padding:9px 11px;
  background:#fbfaf7;
  border:1px solid #eee9df;
  border-radius:14px;
}
.hhp-leaderboard-row.top-rank{
  background:linear-gradient(135deg,#fffaf0,#fff);
  border-color:rgba(198,152,47,.36);
}
.hhp-rank-number{
  width:36px;height:36px;border-radius:50%;
  display:grid;place-items:center;
  background:#ece9e1;color:var(--hhp-charcoal);
  font-weight:800;font-size:13px;
}
.hhp-leaderboard-row:nth-child(1) .hhp-rank-number,
.hhp-leaderboard-row:nth-child(2) .hhp-rank-number,
.hhp-leaderboard-row:nth-child(3) .hhp-rank-number{
  background:var(--hhp-gold);color:#fff;
}
.hhp-rank-student{min-width:0;display:grid;gap:3px}
.hhp-rank-student strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--hhp-charcoal)}
.hhp-rank-student small{font-size:9px;color:var(--hhp-muted)}
.hhp-rank-points{display:flex;align-items:baseline;gap:4px;direction:rtl}
.hhp-rank-points strong{font-size:17px;color:var(--hhp-gold-dark)}
.hhp-rank-points small{font-size:9px;color:var(--hhp-muted)}
@media(max-width:600px){
  .hhp-leaderboard-card{padding:13px}
  .hhp-leaderboard-row{grid-template-columns:38px minmax(0,1fr) auto;gap:8px;padding:8px}
  .hhp-rank-number{width:32px;height:32px;font-size:12px}
  .hhp-rank-student strong{font-size:11px}
  .hhp-rank-points strong{font-size:15px}
}


/* v2.7.0 — صلاحيات المعلم */
.hhp-guardian-whatsapp{display:inline-flex;align-items:center;justify-content:center;margin:0 0 10px;padding:8px 11px;border-radius:10px;background:#f7f5ef;border:1px solid #ddd6c7;color:#3f4042!important;text-decoration:none!important;font-size:10px;font-weight:800}
.hhp-guardian-whatsapp:hover{border-color:var(--hhp-gold);background:#fffaf0}


/* v2.7.1 — قفل رصد درجات الحفظ في الأيام غير المفعلة */
.hhp-study-day-lock{
    margin:12px 0 14px;
    padding:13px 15px;
    border:1px solid #e2b7b3;
    background:#fff7f6;
    border-radius:14px;
    display:grid;
    gap:5px;
}
.hhp-study-day-lock strong{color:#a93730;font-size:13px}
.hhp-study-day-lock span{color:#706963;font-size:11px;line-height:1.8}


/* v2.8.0 — ساعة ومواقيت الصلاة في هيدر بوابة المعلم */
.hhp-prayer-widget{
    position:relative;
    z-index:2;
    margin-top:16px;
    padding:14px;
    border:1px solid rgba(225,190,104,.22);
    border-radius:18px;
    background:linear-gradient(135deg,rgba(255,255,255,.105),rgba(255,255,255,.045));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
    backdrop-filter:blur(9px);
}
.hhp-prayer-clock-row{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:14px;
    padding-bottom:12px;
    border-bottom:1px solid rgba(255,255,255,.10);
}
.hhp-prayer-clock-row>div{display:grid;gap:2px}
.hhp-prayer-clock-row>div>span{
    color:#e1bd64;
    font-size:10px;
    font-weight:800;
}
.hhp-live-clock{
    color:#fff;
    font-size:25px;
    letter-spacing:.4px;
    line-height:1.15;
    font-variant-numeric:tabular-nums;
}
.hhp-live-date{
    color:rgba(255,255,255,.66);
    font-size:9px;
    line-height:1.6;
}
.hhp-prayer-method-badge{
    flex:none;
    background:rgba(198,152,47,.2);
    color:#f0d68f;
    border:1px solid rgba(225,190,104,.26);
    padding:6px 9px;
    border-radius:999px;
    font-size:9px;
    font-weight:800;
}
.hhp-prayer-status-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:8px;
    margin-top:11px;
}
.hhp-prayer-status-card{
    min-width:0;
    min-height:86px;
    padding:10px 11px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    border-radius:13px;
    background:rgba(17,18,19,.18);
    border:1px solid rgba(255,255,255,.07);
}
.hhp-prayer-status-card>span{
    color:rgba(255,255,255,.62);
    font-size:9px;
    margin-bottom:5px;
}
.hhp-prayer-status-card>strong{
    color:#fff;
    font-size:16px;
    line-height:1.35;
}
.hhp-prayer-status-card>small{
    margin-top:3px;
    color:#e1bd64;
    font-size:9px;
}
.hhp-prayer-status-card.countdown{
    background:linear-gradient(135deg,rgba(198,152,47,.22),rgba(198,152,47,.08));
    border-color:rgba(225,190,104,.24);
}
.hhp-prayer-status-card.countdown>strong{
    font-size:22px;
    color:#f1d486;
    direction:ltr;
    text-align:right;
    font-variant-numeric:tabular-nums;
}
.hhp-prayer-widget.is-iqama .hhp-prayer-status-card.countdown{
    box-shadow:0 0 0 1px rgba(225,190,104,.15),0 8px 24px rgba(198,152,47,.12);
}
.hhp-prayer-widget.is-iqama .hhp-countdown-label{color:#f6dfa1}
.hhp-prayer-unavailable{
    margin-top:10px;
    padding:10px 12px;
    border-radius:12px;
    background:rgba(255,255,255,.07);
    color:rgba(255,255,255,.76);
    font-size:10px;
    line-height:1.7;
}
@media(max-width:560px){
    .hhp-prayer-status-grid{grid-template-columns:1fr 1fr}
    .hhp-prayer-status-card.countdown{grid-column:1/-1}
    .hhp-live-clock{font-size:22px}
}


/* v2.8.1 — مواقيت الصلاة في آخر بوابة المعلم بعد جميع المحتويات */
.hhp-prayer-bottom-wrap{
    width:min(1180px,calc(100% - 32px));
    margin:8px auto 110px;
    padding:14px;
    border-radius:22px;
    background:linear-gradient(135deg,#3d3e40,#57585b);
    box-shadow:0 12px 28px rgba(45,45,45,.12);
}
.hhp-prayer-bottom-wrap .hhp-prayer-widget{
    margin-top:0;
    background:linear-gradient(135deg,rgba(255,255,255,.105),rgba(255,255,255,.045));
}
@media(max-width:640px){
    .hhp-prayer-bottom-wrap{
        width:calc(100% - 22px);
        margin:6px auto 102px;
        padding:10px;
        border-radius:18px;
    }
}


/* v2.8.3 — تثبيت ظهور بطاقة المواقيت داخل محتوى كل بوابة */
.hhp-main .hhp-prayer-bottom-wrap{
    width:100%;
    max-width:none;
    margin:8px 0 22px;
    padding:14px;
    box-sizing:border-box;
}
.hhp-admin-front .hhp-prayer-bottom-wrap{
    grid-column:1/-1;
}
@media(max-width:640px){
    .hhp-main .hhp-prayer-bottom-wrap{
        width:100%;
        margin:6px 0 18px;
        padding:10px;
    }
}


/* v2.9.0 — مسابقة الحفظ للطالب */
.hhp-student-quiz-card{
    padding:16px;
    border:1px solid rgba(198,152,47,.28);
    border-radius:18px;
    background:linear-gradient(135deg,#fffdf8,#f8f1df);
    overflow:hidden;
}
.hhp-quiz-intro{
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:13px;
}
.hhp-quiz-icon{
    width:48px;height:48px;
    display:grid;place-items:center;
    border-radius:15px;
    background:#fff;
    border:1px solid #e7d8af;
    font-size:24px;
}
.hhp-quiz-intro>div>span{
    display:block;
    color:var(--hhp-gold-dark);
    font-size:10px;
    font-weight:800;
}
.hhp-quiz-intro h2{margin:2px 0 4px;font-size:18px;color:var(--hhp-charcoal)}
.hhp-quiz-intro p{margin:0;color:#786f60;font-size:10px;line-height:1.75}
.hhp-quiz-start-btn,.hhp-quiz-next-btn,.hhp-quiz-restart{
    border:0;
    border-radius:12px;
    padding:11px 16px;
    background:linear-gradient(135deg,var(--hhp-gold),var(--hhp-gold-dark));
    color:#fff;
    font:inherit;
    font-size:11px;
    font-weight:800;
    cursor:pointer;
    box-shadow:0 8px 20px rgba(157,116,29,.16);
}
.hhp-quiz-start-btn:disabled{opacity:.6;cursor:wait}
.hhp-quiz-stage{
    margin-top:15px;
    padding-top:15px;
    border-top:1px dashed rgba(157,116,29,.28);
}
.hhp-quiz-top{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:10px;
    margin-bottom:12px;
    color:#756d60;
    font-size:10px;
}
.hhp-quiz-stars{
    padding:5px 9px;
    border-radius:999px;
    background:#fff;
    border:1px solid #e7d8af;
}
.hhp-quiz-question{
    padding:15px;
    background:#fff;
    border:1px solid #e9e2d5;
    border-radius:15px;
}
.hhp-quiz-type{
    display:inline-flex;
    padding:5px 8px;
    border-radius:999px;
    background:#f5ecd7;
    color:var(--hhp-gold-dark);
    font-size:9px;
    font-weight:800;
}
.hhp-quiz-prompt{
    margin:10px 0 8px;
    font-size:15px;
    color:var(--hhp-charcoal);
}
.hhp-quiz-context{
    padding:13px 14px;
    border-radius:12px;
    background:#faf8f3;
    border:1px solid #eee7da;
    color:#383838;
    font-size:14px;
    line-height:2;
    text-align:center;
}
.hhp-quiz-options{
    display:grid;
    gap:8px;
    margin-top:12px;
}
.hhp-quiz-option{
    width:100%;
    padding:11px 12px;
    text-align:right;
    border:1px solid #e5ded1;
    border-radius:11px;
    background:#fff;
    color:#454545;
    font:inherit;
    font-size:12px;
    line-height:1.8;
    cursor:pointer;
    transition:.16s ease;
}
.hhp-quiz-option:hover{border-color:#c6982f;background:#fffaf0}
.hhp-quiz-option.selected{box-shadow:0 0 0 2px rgba(198,152,47,.12)}
.hhp-quiz-option.correct{border-color:#2fa56a;background:#edf9f3;color:#50573a}
.hhp-quiz-option.wrong{border-color:#d9473f;background:#fff0ef;color:#8e2823}
.hhp-quiz-option:disabled{cursor:default;opacity:1}
.hhp-quiz-feedback{
    margin-top:11px;
    padding:10px 12px;
    border-radius:11px;
    font-size:11px;
    font-weight:700;
    line-height:1.7;
}
.hhp-quiz-feedback.success{background:#edf9f3;color:#50573a;border:1px solid #bfe8d2}
.hhp-quiz-feedback.wrong{background:#fff0ef;color:#8e2823;border:1px solid #efc1bd}
.hhp-quiz-next-btn{display:block;margin:12px 0 0 auto}
.hhp-quiz-result{
    margin-top:15px;
    padding:18px;
    text-align:center;
    border-top:1px dashed rgba(157,116,29,.28);
}
.hhp-quiz-result-score{
    display:grid;
    justify-items:center;
    gap:3px;
}
.hhp-quiz-result-score span{font-size:10px;color:#7c7466}
.hhp-quiz-result-score strong{font-size:28px;color:var(--hhp-charcoal)}
.hhp-quiz-result-score em{font-style:normal;font-size:18px;letter-spacing:2px}
.hhp-quiz-result h3{margin:10px 0 5px;color:var(--hhp-charcoal)}
.hhp-quiz-result p{margin:0 0 12px;color:#7b7366;font-size:10px}
.hhp-quiz-error{
    padding:12px;
    border-radius:11px;
    background:#fff0ef;
    border:1px solid #efc1bd;
    color:#8e2823;
    font-size:11px;
}
@media(max-width:620px){
    .hhp-quiz-intro{grid-template-columns:auto 1fr}
    .hhp-quiz-start-btn{grid-column:1/-1;width:100%}
    .hhp-quiz-context{font-size:13px}
}


/* v2.9.3 — الاقتراحات والشكاوى */
.hhp-feedback-box{
    width:100%;
    margin:6px 0 14px;
}
.hhp-feedback-details{
    border:1px solid rgba(198,152,47,.26);
    border-radius:17px;
    background:linear-gradient(135deg,#fff,#fbf8f0);
    overflow:hidden;
}
.hhp-feedback-details summary{
    list-style:none;
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:11px;
    padding:14px 15px;
    cursor:pointer;
}
.hhp-feedback-details summary::-webkit-details-marker{display:none}
.hhp-feedback-icon{
    width:42px;height:42px;
    display:grid;place-items:center;
    border-radius:13px;
    background:#f6ecd3;
    font-size:20px;
}
.hhp-feedback-details summary>span:nth-child(2){display:grid;gap:2px}
.hhp-feedback-details summary strong{font-size:13px;color:var(--hhp-charcoal)}
.hhp-feedback-details summary small{font-size:9px;color:#827969}
.hhp-feedback-details summary em{
    font-style:normal;
    color:var(--hhp-gold-dark);
    font-size:10px;
    font-weight:800;
}
.hhp-feedback-form{
    display:grid;
    gap:12px;
    padding:15px;
    border-top:1px solid #ebe4d7;
    background:#fff;
}
.hhp-feedback-form>label{
    display:grid;
    gap:6px;
    color:#4c4c4c;
    font-size:11px;
    font-weight:700;
}
.hhp-feedback-form input[type="text"],
.hhp-feedback-form textarea{
    width:100%;
    box-sizing:border-box;
    border:1px solid #ddd5c7;
    border-radius:10px;
    padding:10px 11px;
    font:inherit;
    font-weight:400;
    background:#fff;
}
.hhp-feedback-form textarea{resize:vertical;line-height:1.7}
.hhp-feedback-type{display:flex;gap:8px;flex-wrap:wrap}
.hhp-feedback-type label{position:relative;cursor:pointer}
.hhp-feedback-type input{position:absolute;opacity:0;pointer-events:none}
.hhp-feedback-type span{
    display:inline-flex;
    padding:8px 14px;
    border:1px solid #dfd7c9;
    border-radius:999px;
    background:#faf8f3;
    color:#65605a;
    font-size:10px;
    font-weight:800;
}
.hhp-feedback-type input:checked+span{
    background:var(--hhp-gold);
    border-color:var(--hhp-gold);
    color:#fff;
}
.hhp-feedback-privacy{
    margin:0;
    color:#887f71;
    font-size:9px;
}
.hhp-feedback-submit{
    justify-self:start;
    border:0;
    border-radius:11px;
    padding:10px 18px;
    background:linear-gradient(135deg,var(--hhp-gold),var(--hhp-gold-dark));
    color:#fff;
    font:inherit;
    font-size:11px;
    font-weight:800;
    cursor:pointer;
}
.hhp-feedback-notice{
    margin:0 0 8px;
    padding:10px 12px;
    border-radius:11px;
    font-size:10px;
    font-weight:700;
}
.hhp-feedback-notice.success{background:#edf9f3;color:#50573a;border:1px solid #bfe8d2}
.hhp-feedback-notice.error{background:#fff0ef;color:#8e2823;border:1px solid #efc1bd}
@media(max-width:600px){
    .hhp-feedback-details summary{grid-template-columns:auto 1fr}
    .hhp-feedback-details summary em{grid-column:1/-1}
}


/* v2.9.6 — المراجعة بلا تكليف قادم */
.hhp-progress-form.is-review .hhp-next-box,
.hhp-group-progress-form.is-review .hhp-next-box{
    display:none!important;
}


/* v2.9.7 — رقم التواصل الاختياري في الاقتراحات والشكاوى */
.hhp-feedback-form label small{
    color:#948b7d;
    font-size:9px;
    font-weight:400;
}
.hhp-feedback-form input[type="tel"]{
    width:100%;
    box-sizing:border-box;
    border:1px solid #ddd5c7;
    border-radius:10px;
    padding:10px 11px;
    font:inherit;
    font-weight:400;
    background:#fff;
    direction:ltr;
    text-align:right;
}


/* v2.9.9 — خيار إخفاء الهوية */
.hhp-feedback-anonymous{
    display:grid!important;
    grid-template-columns:auto 1fr;
    align-items:center;
    gap:10px;
    padding:11px 12px;
    border:1px solid #e3dccf;
    border-radius:12px;
    background:#faf8f3;
    cursor:pointer;
}
.hhp-feedback-anonymous>input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}
.hhp-feedback-anonymous-box{
    width:28px;
    height:28px;
    display:grid;
    place-items:center;
    border-radius:9px;
    border:1px solid #d8d0c2;
    background:#fff;
    color:transparent;
    font-size:16px;
    font-weight:900;
}
.hhp-feedback-anonymous>input:checked + .hhp-feedback-anonymous-box{
    background:var(--hhp-gold);
    border-color:var(--hhp-gold);
    color:#fff;
}
.hhp-feedback-anonymous>span:last-child{
    display:grid;
    gap:2px;
}
.hhp-feedback-anonymous strong{
    font-size:11px;
    color:var(--hhp-charcoal);
}
.hhp-feedback-anonymous small{
    color:#8b8377!important;
    font-size:9px!important;
    font-weight:400!important;
}
.hhp-feedback-form input[type="tel"]:disabled{
    background:#f0eee9;
    color:#999;
    cursor:not-allowed;
}


/* v2.10.0 — العبارة التحفيزية داخل المساحة الحالية للهيدر دون تغيير المقاسات */
.hhp-hero .hhp-motivation-ticker{
    position:absolute;
    z-index:2;
    right:18px;
    left:18px;
    bottom:6px;
    height:24px;
    line-height:24px;
    overflow:hidden;
    pointer-events:none;
    color:#fff;
    font-size:18px;
    font-weight:500;
    white-space:nowrap;
}
.hhp-hero .hhp-motivation-ticker>span{
    position:absolute;
    left:0;
    top:0;
    display:inline-block;
    white-space:nowrap;
    color:#fff;
    direction:rtl;
    animation:hhpMotivationTicker 24s linear infinite;
    will-change:left,transform;
}
@keyframes hhpMotivationTicker{
    0%{left:0;transform:translateX(-100%)}
    100%{left:100%;transform:translateX(0)}
}
@media(max-width:520px){
    .hhp-hero .hhp-motivation-ticker{
        right:12px;
        left:12px;
        bottom:6px;
        height:23px;
        line-height:23px;
        font-size:17px;
    }
}
@media(prefers-reduced-motion:reduce){
    .hhp-hero .hhp-motivation-ticker>span{
        animation-duration:36s;
    }
}


/* v2.10.8 — كتابة رقم الآية يدويًا + قائمة منسدلة لأرقام آيات السورة */
.hhp-verse-picker{
    display:grid;
    grid-template-columns:minmax(82px,.65fr) minmax(150px,1.35fr);
    gap:6px;
    width:100%;
    margin-top:4px;
}
.hhp-range-grid .hhp-verse-picker>input{
    margin-top:0!important;
    min-width:0;
}
.hhp-range-grid .hhp-verse-number-menu{
    width:100%!important;
    min-width:0;
    margin-top:0!important;
    padding:6px 8px!important;
    text-align:right;
    direction:rtl;
    font-variant-numeric:tabular-nums;
    cursor:pointer;
}
.hhp-range-grid .hhp-verse-number-menu:disabled{
    opacity:.5;
    cursor:not-allowed;
}
@media(max-width:390px){
    .hhp-verse-picker{grid-template-columns:minmax(72px,.6fr) minmax(140px,1.4fr)}
    .hhp-range-grid .hhp-verse-number-menu{width:100%!important}
}


/* v2.11.0 — سجل الاستئذان */
.hhp-teacher-actions a.leave{
    border-color:#dfc477;
    background:#fffaf0;
}
.hhp-teacher-actions a.leave i{
    background:#f4ead0;
    color:var(--hhp-gold-dark);
}
.hhp-leave-head{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    margin-bottom:12px;
    padding:16px;
    border:1px solid #e4dac4;
    border-radius:18px;
    background:#fff;
}
.hhp-leave-head>div:first-child>span{
    color:var(--hhp-gold-dark);
    font-size:10px;
    font-weight:800;
}
.hhp-leave-head h2{
    margin:3px 0;
    color:var(--hhp-charcoal);
    font-size:20px;
}
.hhp-leave-head p{
    margin:0;
    color:#827a70;
    font-size:10px;
}
.hhp-leave-live{
    min-width:78px;
    text-align:center;
    padding:10px;
    border-radius:14px;
    background:#f7f2e6;
}
.hhp-leave-live strong{
    display:block;
    color:var(--hhp-gold-dark);
    font-size:24px;
}
.hhp-leave-live span{
    color:#7e7465;
    font-size:9px;
}
.hhp-leave-students{
    display:grid;
    gap:10px;
}
.hhp-leave-student-card{
    padding:13px;
    border:1px solid #e7dfd1;
    border-radius:16px;
    background:#fff;
}
.hhp-leave-student-card.is-out{
    border-color:#d7bd72;
    background:#fffdf7;
}
.hhp-leave-student-info{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
}
.hhp-leave-student-info>div{
    display:grid;
    gap:2px;
}
.hhp-leave-student-info strong{
    color:var(--hhp-charcoal);
    font-size:13px;
}
.hhp-leave-student-info small{
    color:#91897e;
    font-size:9px;
}
.hhp-leave-status{
    padding:6px 9px;
    border-radius:999px;
    background:#f5ead0;
    color:#8b6716;
    font-size:9px;
    font-weight:800;
    white-space:nowrap;
}
.hhp-leave-status.ready{
    background:#f2f1ed;
    color:#858078;
}
.hhp-leave-start-form{
    margin-top:10px;
}
.hhp-leave-start,
.hhp-leave-return,
.hhp-leave-whatsapp,
.hhp-leave-no-phone{
    min-height:42px;
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    box-sizing:border-box;
    font:inherit;
    font-size:11px;
    font-weight:800;
}
.hhp-leave-start{
    border:0;
    background:var(--hhp-gold);
    color:#fff;
    cursor:pointer;
}
.hhp-leave-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    margin-top:10px;
}
.hhp-leave-actions form{margin:0}
.hhp-leave-whatsapp{
    border:1px solid #25d366;
    background:#eafaf0;
    color:#157846!important;
    text-decoration:none!important;
}
.hhp-leave-return{
    border:1px solid #d9d4ca;
    background:#3f4042;
    color:#fff;
    cursor:pointer;
}
.hhp-leave-no-phone{
    border:1px dashed #d9d1c5;
    background:#f7f5f0;
    color:#9c9387;
}
.hhp-leave-history{
    margin-top:20px;
}
.hhp-leave-history-list{
    display:grid;
    gap:8px;
}
.hhp-leave-history-row{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:10px;
    padding:11px 12px;
    border:1px solid #e7e0d5;
    border-radius:13px;
    background:#fff;
}
.hhp-leave-history-row.is-out{
    border-color:#dfc477;
    background:#fffaf0;
}
.hhp-leave-history-row>div{
    display:grid;
    gap:2px;
}
.hhp-leave-history-row strong{
    color:var(--hhp-charcoal);
    font-size:11px;
}
.hhp-leave-history-row small{
    color:#91887c;
    font-size:9px;
}
.hhp-leave-history-row>span{
    color:var(--hhp-gold-dark);
    font-size:10px;
    font-weight:800;
    white-space:nowrap;
}
@media(max-width:520px){
    .hhp-leave-head{
        padding:13px;
    }
    .hhp-leave-head h2{font-size:17px}
    .hhp-leave-head p{font-size:9px}
    .hhp-leave-live{min-width:66px}
    .hhp-leave-live strong{font-size:21px}
    .hhp-leave-actions{
        grid-template-columns:1fr;
    }
}

/* ===== v2.11.1 — فرّارة الدرجات الفخمة ===== */
.hhp-score-field{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:5px!important;
  align-items:stretch!important;
  min-width:245px;
  margin:0!important;
}
.hhp-score-field>em{
  display:none!important;
}
.hhp-score-title{
  display:block;
  margin-bottom:3px;
  color:#6f6a60;
  font-size:10px;
  font-weight:800;
}
.hhp-score-picker{
  position:relative;
  width:100%;
  min-width:0;
}
.hhp-score-input{
  display:none!important;
}
.hhp-score-wheel{
  position:relative;
  display:flex;
  align-items:center;
  gap:7px;
  width:100%;
  min-height:62px;
  overflow-x:auto;
  overflow-y:hidden;
  padding:7px calc(50% - 24px);
  border:1px solid #dfd6c3;
  border-radius:16px;
  background:
    linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.3) 24%,rgba(248,239,211,.7) 43%,rgba(255,249,232,.98) 50%,rgba(248,239,211,.7) 57%,rgba(255,255,255,.3) 76%,rgba(255,255,255,.98) 100%),
    #fff;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.75),0 7px 18px rgba(56,50,38,.06);
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  scrollbar-width:none;
  -ms-overflow-style:none;
  overscroll-behavior-x:contain;
  touch-action:pan-x;
  cursor:grab;
  user-select:none;
  -webkit-user-select:none;
}
.hhp-score-wheel::-webkit-scrollbar{display:none}
.hhp-score-wheel:focus{
  outline:none;
  border-color:#c8a14b;
  box-shadow:0 0 0 3px rgba(198,152,47,.12),0 7px 18px rgba(56,50,38,.06);
}
.hhp-score-wheel.is-dragging{cursor:grabbing;scroll-snap-type:none}
.hhp-score-option{
  appearance:none;
  -webkit-appearance:none;
  flex:0 0 48px;
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  margin:0;
  padding:0;
  border:1px solid transparent;
  border-radius:14px;
  background:transparent;
  color:#8d887d;
  font:inherit;
  font-size:14px;
  font-weight:700;
  opacity:.42;
  transform:scale(.88);
  transition:opacity .16s ease,transform .16s ease,color .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease;
  scroll-snap-align:center;
  cursor:pointer;
}
.hhp-score-option:hover{opacity:.72;color:#5c574e}
.hhp-score-option.is-active{
  opacity:1;
  transform:scale(1.07);
  color:#6f5416;
  background:linear-gradient(180deg,#fffdf7,#fff5d8);
  border-color:#d8bc72;
  box-shadow:0 5px 15px rgba(168,126,28,.16),inset 0 0 0 1px rgba(255,255,255,.9);
  font-size:21px;
  font-weight:900;
}
.hhp-score-result{
  width:max-content;
  max-width:100%;
  min-width:132px;
  min-height:38px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin:8px auto 0;
  padding:7px 13px;
  border:1px solid rgba(198,152,47,.35);
  border-radius:999px;
  background:linear-gradient(135deg,#fffaf0,#fff);
  box-shadow:0 5px 14px rgba(83,68,35,.06);
  color:#403b33;
  transition:opacity .16s ease,transform .16s ease;
}
.hhp-score-result strong{
  font-size:19px;
  line-height:1;
  color:#765913;
  font-weight:900;
  min-width:24px;
  text-align:center;
}
.hhp-score-result span{
  width:1px;
  height:19px;
  background:#d8c28d;
}
.hhp-score-result em{
  font-style:normal;
  font-size:12px;
  font-weight:900;
  color:#464137;
  white-space:nowrap;
}
.hhp-score-picker.is-scrolling .hhp-score-result{
  opacity:0;
  transform:translateY(-3px) scale(.97);
}
.hhp-group-progress-row{
  grid-template-columns:minmax(0,1fr) minmax(245px,280px);
  align-items:center;
}
.hhp-group-progress-row.score-changed .hhp-score-result{
  border-color:#d8bc72;
  background:linear-gradient(135deg,#fff7df,#fff);
}
.hhp-individual-score-field{
  display:block;
  min-width:0;
  margin-bottom:8px;
}
.hhp-individual-score-field .hhp-score-picker{
  margin-top:4px;
}
.hhp-individual-score-field small{
  margin-top:7px!important;
  line-height:1.6;
}
@media(max-width:720px){
  .hhp-group-progress-row{grid-template-columns:1fr}
  .hhp-score-field{min-width:0;width:100%;margin-top:4px!important}
}
@media(max-width:480px){
  .hhp-score-wheel{min-height:60px;border-radius:14px}
  .hhp-score-option{flex-basis:46px;width:46px;height:46px}
  .hhp-score-option.is-active{font-size:20px}
  .hhp-score-result{min-height:36px;padding:6px 12px}
}

/* ===== v2.11.2 — ضبط فرّارة الدرجات داخل شاشة الجوال ===== */
.hhp-score-picker,
.hhp-score-wheel,
.hhp-score-result{
  box-sizing:border-box;
  max-width:100%;
}
.hhp-score-wheel{
  margin-inline:auto;
}

@media(max-width:720px){
  /* في التسميع الفردي: النوع أولاً ثم الدرجة بعرض مستقل، لمنع تزاحم الحقول. */
  .hhp-progress-form>.hhp-form-row{
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important;
  }
  .hhp-individual-score-field{
    width:100%;
    max-width:100%;
    overflow:hidden;
  }
  .hhp-individual-score-field .hhp-score-picker{
    width:100%;
    max-width:100%;
  }
  /* نافذة مضغوطة ومتمركزة: يظهر الرقم المختار ومعه الجاران تقريباً. */
  .hhp-individual-score-field .hhp-score-wheel{
    width:min(100%,228px);
    max-width:228px;
    min-height:66px;
    padding-inline:calc(50% - 26px);
    gap:8px;
    border-radius:17px;
  }
  .hhp-individual-score-field .hhp-score-option{
    flex:0 0 52px;
    width:52px;
    height:52px;
  }
  .hhp-individual-score-field .hhp-score-option.is-active{
    font-size:22px;
  }
  .hhp-individual-score-field .hhp-score-result{
    width:min(100%,190px);
    min-width:0;
    margin-inline:auto;
  }
  .hhp-individual-score-field small{
    max-width:320px;
    margin-inline:auto;
    text-align:center;
  }

  /* الرصد الجماعي كذلك يبقى داخل عرض البطاقة مهما صغر الجهاز. */
  .hhp-group-progress-row,
  .hhp-score-field,
  .hhp-score-picker{
    min-width:0!important;
    max-width:100%!important;
  }
  .hhp-group-progress-row .hhp-score-wheel{
    width:min(100%,228px);
    max-width:228px;
    min-height:66px;
    padding-inline:calc(50% - 26px);
    margin-inline:auto;
  }
  .hhp-group-progress-row .hhp-score-option{
    flex:0 0 52px;
    width:52px;
    height:52px;
  }
  .hhp-group-progress-row .hhp-score-result{
    width:min(100%,190px);
    min-width:0;
  }
}

@media(max-width:360px){
  .hhp-individual-score-field .hhp-score-wheel,
  .hhp-group-progress-row .hhp-score-wheel{
    width:min(100%,204px);
    max-width:204px;
    padding-inline:calc(50% - 23px);
    gap:7px;
  }
  .hhp-individual-score-field .hhp-score-option,
  .hhp-group-progress-row .hhp-score-option{
    flex-basis:46px;
    width:46px;
    height:46px;
  }
}

/* ===== v2.12.0 — موضع الحفظ الحالي مستقل عن المراجعة ===== */
.hhp-current-memorization{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:3px 10px;
  align-items:center;
  background:linear-gradient(135deg,#fffaf0,#fff);
  border:1px solid #e4cf96;
  border-radius:12px;
  padding:10px 12px;
  margin-bottom:10px;
}
.hhp-current-memorization span{font-size:11px;color:#777164}
.hhp-current-memorization strong{font-size:13px;color:#4c452f}
.hhp-current-memorization small{grid-column:1/-1;font-size:10px;color:#8a887f}
.hhp-student-learning-track .hhp-learning-track-lines{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:10px;
}
.hhp-student-learning-track .hhp-learning-track-lines>div{
  background:#fff;
  border:1px solid #e7e8e2;
  border-radius:10px;
  padding:9px 10px;
}
.hhp-student-learning-track .hhp-learning-track-lines span,
.hhp-student-learning-track .hhp-learning-track-lines strong{display:block}
.hhp-student-learning-track .hhp-learning-track-lines span{font-size:10px;color:#8a887f;margin-bottom:4px}
.hhp-student-learning-track .hhp-learning-track-lines strong{font-size:11px;color:#4c4e47;line-height:1.6}
@media(max-width:520px){
  .hhp-current-memorization{grid-template-columns:1fr}
  .hhp-current-memorization small{grid-column:auto}
  .hhp-student-learning-track .hhp-learning-track-lines{grid-template-columns:1fr}
}

/* ===== v2.12.4 — المراجعة الجماعية بدون درجات =====
   يجب أن تتغلب هذه القواعد على display:grid!important الخاص بفرّارة الدرجات. */
.hhp-group-progress-form.is-review .hhp-score-field{
  display:none!important;
}
.hhp-group-progress-form.is-review .hhp-group-score-area{
  display:none!important;
}
.hhp-group-progress-form.is-review .hhp-review-no-score{
  display:inline-flex!important;
}

/* ===== v2.12.5 — فرز التسميع الفردي حسب آخر درجة ===== */
.hhp-score-sort{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:-2px 0 12px;
  padding:9px 10px;
  border:1px solid #e7e1d5;
  border-radius:13px;
  background:linear-gradient(135deg,#fffdf8,#fff);
}
.hhp-score-sort>span{
  color:#7d786f;
  font-size:10px;
  font-weight:700;
}
.hhp-score-sort>div{
  display:flex;
  align-items:center;
  gap:6px;
}
.hhp-score-sort-btn{
  appearance:none;
  -webkit-appearance:none;
  border:1px solid #d9d2c4;
  border-radius:999px;
  background:#fff;
  color:#4b4944;
  padding:7px 11px;
  font:inherit;
  font-size:11px;
  font-weight:800;
  line-height:1;
  cursor:pointer;
  white-space:nowrap;
  transition:.15s ease;
}
.hhp-score-sort-btn:hover{
  border-color:#c9a145;
  background:#fffaf0;
}
.hhp-score-sort-btn.active{
  color:#fff;
  border-color:#b88d27;
  background:linear-gradient(135deg,#cba13c,#a97e1e);
  box-shadow:0 4px 10px rgba(151,111,25,.18);
}
@media(max-width:520px){
  .hhp-score-sort{
    align-items:stretch;
    flex-direction:column;
    padding:9px;
  }
  .hhp-score-sort>span{text-align:right}
  .hhp-score-sort>div{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .hhp-score-sort-btn{width:100%;padding:9px 8px}
}

/* ===== v2.12.7 — إظهار مجموع درجات الحفظ الكامل بجانب اسم الطالب ===== */
.hhp-student-summary h3{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.hhp-list-score-badge{display:inline-flex;align-items:baseline;justify-content:center;gap:4px;min-width:58px;height:30px;padding:0 10px;border:1px solid #d7b75b;border-radius:999px;background:#fff9e8;color:#745608;font-size:14px;font-weight:800;font-style:normal;line-height:28px;white-space:nowrap;box-shadow:0 1px 4px rgba(145,108,10,.08)}
.hhp-list-score-badge small{font-size:9px;font-weight:700;opacity:.72}
.hhp-list-score-badge.is-empty{border-color:#dedfd9;background:#f5f5f2;color:#a0a19b;min-width:34px}
@media(max-width:480px){.hhp-student-summary h3{gap:7px}.hhp-list-score-badge{min-width:44px;height:28px;padding:0 8px;font-size:13px;line-height:26px}}

/* ===== v2.12.8 — شاشة دخول بوابة الحلقات ===== */
body.hhp-login-page{
    background:#363a2a!important;
}
body.hhp-login-page:before{
    opacity:1;
    background:
      radial-gradient(circle at 18% 14%,rgba(198,152,47,.18),transparent 30%),
      radial-gradient(circle at 86% 88%,rgba(58,132,71,.18),transparent 34%),
      linear-gradient(135deg,#343827 0%,#484c3c 46%,#343537 100%)!important;
}
body.hhp-login-page .hhp-standalone-frame{
    padding:0;
    min-height:100vh;
}
.hhp-login-shell{
    position:relative;
    isolation:isolate;
    min-height:100vh;
    width:100%;
    display:grid;
    place-items:center;
    align-content:center;
    gap:18px;
    padding:34px 18px calc(34px + env(safe-area-inset-bottom));
    background:
      radial-gradient(circle at 50% 42%,rgba(255,255,255,.075),transparent 27%),
      linear-gradient(135deg,rgba(46,50,33,.84),rgba(45,47,48,.74));
    overflow:hidden;
}
.hhp-login-shell:before,.hhp-login-shell:after{
    content:"";
    position:absolute;
    z-index:-1;
    border-radius:50%;
    pointer-events:none;
}
.hhp-login-shell:before{
    width:440px;height:440px;
    top:-270px;right:-150px;
    border:1px solid rgba(198,152,47,.25);
    box-shadow:0 0 0 54px rgba(198,152,47,.035),0 0 0 110px rgba(255,255,255,.018);
}
.hhp-login-shell:after{
    width:360px;height:360px;
    bottom:-250px;left:-120px;
    border:1px solid rgba(255,255,255,.08);
    box-shadow:0 0 0 45px rgba(58,132,71,.05),0 0 0 92px rgba(198,152,47,.025);
}
.hhp-login-cardbox{
    width:min(438px,100%);
    margin:0;
    padding:34px 30px 28px;
    border-radius:28px;
    border:1px solid rgba(198,152,47,.24);
    background:rgba(255,255,255,.985);
    box-shadow:0 28px 70px rgba(19,21,13,.3),0 2px 0 rgba(255,255,255,.7) inset;
    text-align:center;
}
.hhp-login-logo-wrap{
    width:82px;height:82px;
    margin:-4px auto 16px;
    padding:10px;
    border-radius:24px;
    display:grid;
    place-items:center;
    background:#fff;
    border:1px solid #e8dec5;
    box-shadow:0 11px 28px rgba(42,40,36,.12);
}
.hhp-login-logo{
    display:block;
    width:100%;height:100%;
    object-fit:contain;
}
.hhp-login-cardbox-signed .hhp-login-logo{width:76px;height:76px;margin:0 auto 12px}
.hhp-login-heading>span{
    display:inline-flex;
    padding:5px 10px;
    border-radius:999px;
    background:#f6f1e5;
    color:#9d741d;
    font-size:11px;
    font-weight:800;
    margin-bottom:7px;
}
.hhp-login-heading h1,.hhp-login-cardbox h2{
    margin:0;
    color:#27282b;
    font-size:23px;
    line-height:1.55;
    font-weight:800;
}
.hhp-login-heading p,.hhp-login-cardbox p{
    margin:6px 0 0;
    color:#777b77;
    font-size:12px;
    line-height:1.8;
}
.hhp-login-alert{
    display:flex;
    align-items:center;
    gap:9px;
    margin:20px 0 4px;
    padding:12px 13px;
    text-align:right;
    border:1px solid #ef9a94;
    border-right:4px solid #c8423b;
    border-radius:13px;
    background:#fff1f0;
    color:#a6322c;
    font-size:12px;
    line-height:1.65;
}
.hhp-login-alert-icon{
    flex:0 0 24px;
    width:24px;height:24px;
    display:grid;place-items:center;
    border-radius:50%;
    background:#c8423b;
    color:#fff;
    font-size:14px;
    font-weight:900;
}
.hhp-login-form{
    display:grid;
    gap:8px;
    margin-top:22px;
}
.hhp-login-form label{
    display:block;
    margin:4px 2px 0;
    color:#363937;
    text-align:right;
    font-size:12px;
    font-weight:800;
}
.hhp-login-field{position:relative}
.hhp-login-field input[type=text],
.hhp-login-field input[type=password]{
    box-sizing:border-box;
    width:100%;
    height:52px;
    margin:0;
    padding:0 14px;
    border:1px solid #d8ddd7;
    border-radius:13px;
    outline:none;
    background:#fff;
    color:#202321;
    font:inherit;
    font-size:14px;
    text-align:right;
    transition:border-color .18s,box-shadow .18s,background .18s;
}
.hhp-login-field input:focus{
    border-color:#c6982f;
    box-shadow:0 0 0 4px rgba(198,152,47,.13);
    background:#fffefa;
}
.hhp-password-field input{padding-left:52px!important}
.hhp-password-toggle{
    position:absolute;
    top:50%;left:7px;
    transform:translateY(-50%);
    width:40px;height:40px;
    padding:0;
    display:grid;
    place-items:center;
    border:0;
    border-radius:10px;
    background:transparent;
    color:#606661;
    cursor:pointer;
}
.hhp-password-toggle:hover{background:#f4f5f1;color:#2e5b47}
.hhp-password-toggle svg{
    width:21px;height:21px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}
.hhp-password-toggle .hhp-eye-closed{display:none}
.hhp-password-toggle.is-visible .hhp-eye-open{display:none}
.hhp-password-toggle.is-visible .hhp-eye-closed{display:block}
.hhp-login-submit{
    box-sizing:border-box;
    width:100%;
    min-height:52px;
    margin-top:8px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:0;
    border-radius:13px;
    background:linear-gradient(135deg,#327b46 0%,#24643a 100%);
    box-shadow:0 8px 18px rgba(37,105,58,.18);
    color:#fff!important;
    text-decoration:none!important;
    font:inherit;
    font-size:15px;
    font-weight:800;
    cursor:pointer;
    transition:transform .15s,filter .15s,box-shadow .15s;
}
.hhp-login-submit:hover{filter:brightness(1.04);box-shadow:0 10px 23px rgba(37,105,58,.24)}
.hhp-login-submit:active{transform:translateY(1px)}
.hhp-login-link{margin-top:18px}
.hhp-login-help{
    margin-top:20px;
    padding-top:17px;
    border-top:1px solid #eeeae1;
    display:grid;
    gap:4px;
    color:#6f746f;
}
.hhp-login-help span{font-size:11px;color:#81704b;font-weight:700}
.hhp-login-help small{font-size:10px}
.hhp-login-footer{
    color:rgba(255,255,255,.7);
    font-size:10px;
    letter-spacing:.1px;
    text-align:center;
}
@media(max-width:520px){
    .hhp-login-shell{padding:22px 14px calc(22px + env(safe-area-inset-bottom));gap:13px}
    .hhp-login-cardbox{padding:27px 20px 23px;border-radius:23px}
    .hhp-login-logo-wrap{width:70px;height:70px;border-radius:20px;margin-bottom:13px}
    .hhp-login-heading h1,.hhp-login-cardbox h2{font-size:19px}
    .hhp-login-heading p{font-size:11px}
    .hhp-login-field input[type=text],.hhp-login-field input[type=password],.hhp-login-submit{height:50px;min-height:50px}
}

/* ===== v2.13.5 — رصد • سجل + آخر خمسة أيام ===== */
.hhp-student-summary{
  grid-template-columns:minmax(0,1fr) auto!important;
  cursor:default!important;
}
.hhp-student-summary-info{min-width:0;cursor:pointer}
.hhp-student-card-actions{
  position:relative;
  z-index:3;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:7px;
  white-space:nowrap;
  direction:rtl;
}
.hhp-student-card-actions>span{
  color:#b3aa96;
  font-size:13px;
  line-height:1;
}
.hhp-student-action{
  appearance:none;
  -webkit-appearance:none;
  min-width:52px;
  height:36px;
  padding:0 12px;
  border:1px solid #d8d2c4;
  border-radius:999px;
  background:#fff;
  color:#4a4c47;
  font:inherit;
  font-size:11px;
  font-weight:900;
  cursor:pointer;
  transition:.16s ease;
}
.hhp-student-action:hover{
  border-color:#c6982f;
  color:#7a5a12;
  background:#fffaf0;
}
.hhp-student-action.is-active{
  border-color:#327b46;
  background:linear-gradient(135deg,#327b46,#24643a);
  color:#fff;
  box-shadow:0 5px 13px rgba(36,100,58,.16);
}
.hhp-student-panel[hidden]{display:none!important}
.hhp-student-history-panel{padding:2px 0 0}
.hhp-student-history-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  margin-bottom:11px;
}
.hhp-student-history-head span{
  display:block;
  color:#8a806d;
  font-size:10px;
  font-weight:800;
}
.hhp-student-history-head h3{
  margin:3px 0 0;
  color:#30322f;
  font-size:16px;
}
.hhp-student-history-head>small{
  color:#8a887f;
  font-size:10px;
  text-align:left;
}
.hhp-progress-history{display:grid;gap:10px}
.hhp-progress-day{
  overflow:hidden;
  border:1px solid #e4e4dd;
  border-radius:14px;
  background:#fff;
  box-shadow:0 2px 8px rgba(48,45,38,.035);
}
.hhp-progress-day-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:9px 11px;
  background:#f7f5ef;
  border-bottom:1px solid #e8e4d9;
}
.hhp-progress-day-head strong{font-size:12px;color:#4c4b45}
.hhp-progress-day-head span{font-size:9px;color:#8a8579}
.hhp-progress-day-items{display:grid}
.hhp-progress-history-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  padding:11px 12px;
  border-bottom:1px solid #efefe9;
}
.hhp-progress-history-item:last-child{border-bottom:0}
.hhp-progress-history-main{min-width:0}
.hhp-progress-kind{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:46px;
  min-height:22px;
  margin-bottom:5px;
  padding:2px 7px;
  border-radius:999px;
  background:#eef6f0;
  color:#28633b;
  font-size:9px;
  font-weight:900;
}
.hhp-progress-history-item.is-review .hhp-progress-kind{
  background:#f3f0e7;
  color:#7a642a;
}
.hhp-progress-history-main>strong{
  display:block;
  color:#333631;
  font-size:12px;
  line-height:1.7;
}
.hhp-progress-history-main>small{
  display:block;
  margin-top:4px;
  color:#74776f;
  font-size:10px;
  line-height:1.6;
}
.hhp-progress-history-main>small b{color:#5d6059}
.hhp-progress-history-score{
  min-width:78px;
  padding-inline-start:10px;
  border-inline-start:1px solid #eceae3;
  text-align:left;
}
.hhp-progress-history-score strong{
  display:block;
  color:#2f6e42;
  font-size:12px;
  white-space:nowrap;
}
.hhp-progress-history-item.is-review .hhp-progress-history-score strong{color:#7d6a39}
.hhp-progress-history-score span{
  display:block;
  margin-top:3px;
  color:#8a887f;
  font-size:9px;
  white-space:nowrap;
}
.hhp-history-more{
  appearance:none;
  -webkit-appearance:none;
  width:100%;
  min-height:40px;
  border:1px solid #d8c38d;
  border-radius:11px;
  background:#fffaf0;
  color:#765914;
  font:inherit;
  font-size:11px;
  font-weight:900;
  cursor:pointer;
}
.hhp-history-more:hover{background:#fff5df;border-color:#c6982f}
.hhp-student-full-history{scroll-margin-top:18px}
@media(max-width:560px){
  .hhp-student-summary{grid-template-columns:minmax(0,1fr) auto!important;padding:15px 12px!important}
  .hhp-student-card-actions{gap:5px}
  .hhp-student-action{min-width:47px;height:34px;padding:0 9px;font-size:10px}
  .hhp-student-card-actions>span{font-size:11px}
  .hhp-student-history-head{align-items:flex-start;flex-direction:column;gap:4px}
  .hhp-student-history-head>small{text-align:right}
  .hhp-progress-history-item{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:10px}
  .hhp-progress-history-score{min-width:67px;padding-inline-start:8px}
  .hhp-progress-history-score strong{font-size:11px}
}

/* ===== v2.13.6 — سجل الطالب على شكل جدول ===== */
.hhp-progress-history-table{display:grid;gap:10px}
.hhp-history-table-wrap{
  width:100%;
  overflow-x:auto;
  border:1px solid #e2e0d8;
  border-radius:13px;
  background:#fff;
  -webkit-overflow-scrolling:touch;
}
.hhp-history-table{
  width:100%;
  min-width:650px;
  border-collapse:separate;
  border-spacing:0;
  table-layout:fixed;
  color:#3e423d;
}
.hhp-history-table th{
  padding:10px 9px;
  background:#f7f4ed;
  color:#6f654f;
  border-bottom:1px solid #dfdacd;
  font-size:10px;
  font-weight:900;
  text-align:center;
  white-space:nowrap;
}
.hhp-history-table th:first-child{width:92px}
.hhp-history-table th:nth-child(2){width:30%}
.hhp-history-table th:nth-child(3){width:145px}
.hhp-history-table th:nth-child(4){width:30%}
.hhp-history-table td{
  padding:10px 9px;
  border-bottom:1px solid #efede7;
  border-inline-start:1px solid #f0eee9;
  vertical-align:middle;
  text-align:center;
  font-size:11px;
}
.hhp-history-table tr:last-child td{border-bottom:0}
.hhp-history-table td:first-child{border-inline-start:0}
.hhp-history-day-cell{
  position:sticky;
  right:0;
  z-index:2;
  background:#fffdf8;
  box-shadow:-4px 0 8px rgba(49,44,33,.035);
}
.hhp-history-day-cell strong{display:block;color:#4d493f;font-size:12px}
.hhp-history-day-cell small{display:block;margin-top:3px;color:#939087;font-size:8px}
.hhp-history-cell-item{display:grid;gap:3px;padding:2px 0;text-align:right}
.hhp-history-cell-item+.hhp-history-cell-item{margin-top:6px;padding-top:6px;border-top:1px dashed #e3e0d8}
.hhp-history-cell-item strong{font-size:10px;line-height:1.6;color:#343833}
.hhp-history-cell-item small{font-size:8px;line-height:1.5;color:#7f817b}
.hhp-history-cell-item.is-review strong{color:#725f2f}
.hhp-history-grade-cell{text-align:center!important}
.hhp-history-grade-item{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  min-height:28px;
  padding:4px 7px;
  border-radius:9px;
  background:#f0f8f2;
  color:#2d6e41;
  white-space:nowrap;
}
.hhp-history-grade-item+.hhp-history-grade-item{margin-top:5px}
.hhp-history-grade-item strong{font-size:11px}
.hhp-history-grade-item span{color:#b4b7b0;font-size:9px}
.hhp-history-grade-item em{font-style:normal;font-size:9px;font-weight:900}
.hhp-history-empty-cell{color:#bbb8b0}
.hhp-progress-history-table .hhp-history-more{margin-top:0}
@media(max-width:560px){
  .hhp-history-table{min-width:610px}
  .hhp-history-table th,.hhp-history-table td{padding:8px 7px}
  .hhp-history-table th:first-child{width:82px}
  .hhp-history-table th:nth-child(3){width:125px}
  .hhp-history-day-cell strong{font-size:11px}
  .hhp-history-cell-item strong{font-size:9px}
}

/* ===== v2.14.0 — لوحة بيانات التحضير للمشرف ===== */
.hhp-supervisor-attendance-head{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff;border:1px solid var(--hhp-line);border-radius:18px;padding:16px 18px;margin-bottom:10px;box-shadow:0 7px 22px rgba(42,40,36,.045)}
.hhp-supervisor-attendance-head>div:first-child>span{font-size:11px;color:var(--hhp-muted)}
.hhp-supervisor-attendance-head h2{margin:3px 0 1px;font-size:21px;color:#2e302d}.hhp-supervisor-attendance-head small{font-size:11px;color:#8a887f}
.hhp-attendance-period-tabs{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.hhp-attendance-period-tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:7px 12px;border:1px solid #ddd7ca;border-radius:999px;background:#fff;color:#555149;text-decoration:none;font-size:11px;font-weight:800;transition:.15s ease}.hhp-attendance-period-tabs a:hover{border-color:#c89d35;color:#8c681b;background:#fffaf0}.hhp-attendance-period-tabs a.active{border-color:#b88b25;background:linear-gradient(135deg,#c99e35,#a97819);color:#fff;box-shadow:0 5px 14px rgba(167,119,25,.18)}
.hhp-attendance-period-form{display:flex;align-items:end;gap:9px;margin:0 0 12px;padding:12px 14px;border:1px solid #e6e1d7;border-radius:15px;background:#fff}.hhp-attendance-period-form label{display:grid;gap:5px;flex:1}.hhp-attendance-period-form label span{font-size:10px;color:#77736a}.hhp-attendance-period-form input[type=date]{box-sizing:border-box;width:100%;min-height:42px;border:1px solid #d9d4ca;border-radius:11px;padding:8px 10px;background:#fff;font:inherit}.hhp-attendance-period-form button{min-height:42px;border:0;border-radius:11px;padding:8px 17px;background:#2f7047;color:#fff;font:inherit;font-size:12px;font-weight:800;cursor:pointer}
.hhp-attendance-data-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin-bottom:12px}.hhp-attendance-data-metrics>div{background:#fff;border:1px solid #e4e1da;border-radius:15px;padding:12px 11px;min-width:0}.hhp-attendance-data-metrics>div.highlight{border-color:#d6b65f;background:linear-gradient(135deg,#fff9e7,#fff)}.hhp-attendance-data-metrics span,.hhp-attendance-data-metrics small{display:block;color:#858178;font-size:10px}.hhp-attendance-data-metrics strong{display:block;margin:4px 0 2px;font-size:23px;color:#2f332f}.hhp-attendance-data-metrics .highlight strong{color:#81611b}
.hhp-supervisor-attendance-card{background:#fff;border:1px solid var(--hhp-line);border-radius:18px;padding:15px;margin-bottom:12px;box-shadow:0 7px 22px rgba(42,40,36,.035)}.hhp-attendance-table-wrap{overflow:auto;max-width:100%;border:1px solid #ece8df;border-radius:12px}.hhp-attendance-data-table{width:100%;min-width:620px;border-collapse:collapse}.hhp-attendance-data-table th,.hhp-attendance-data-table td{padding:10px 12px;border-bottom:1px solid #eeeae2;text-align:center;font-size:11px}.hhp-attendance-data-table th{background:#f8f6f1;color:#6e685e;font-weight:800}.hhp-attendance-data-table td:first-child,.hhp-attendance-data-table th:first-child{text-align:right}.hhp-attendance-data-table tbody tr:last-child td{border-bottom:0}.hhp-attendance-data-table td strong{display:block;color:#363934}.hhp-attendance-data-table td small{display:block;margin-top:2px;color:#97938b;font-size:9px}.hhp-att-status{display:inline-flex;align-items:center;justify-content:center;min-width:70px;padding:6px 9px;border-radius:999px;font-size:10px;font-weight:900}.hhp-att-status.present{background:#eaf7ef;color:#277647}.hhp-att-status.absent{background:#fff0ef;color:#af3b34}.hhp-att-status.late{background:#fff6e4;color:#9a671a}.hhp-att-status.excused{background:#eef3ff;color:#4263a0}.hhp-att-status.empty{background:#f3f3f1;color:#8f918c}.hhp-att-pct{display:inline-flex;min-width:52px;justify-content:center;padding:5px 8px;border-radius:999px;background:#f5efe0;color:#80621e;font-weight:900}.hhp-attendance-days-table td:first-child strong{text-align:right}.hhp-attendance-days-table td:first-child small{text-align:right}
@media(max-width:820px){.hhp-attendance-data-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.hhp-supervisor-attendance-head{align-items:flex-start;flex-direction:column}.hhp-attendance-period-tabs{width:100%;display:grid;grid-template-columns:1fr 1fr}.hhp-attendance-period-tabs a{width:100%;box-sizing:border-box}.hhp-attendance-period-form{align-items:stretch;flex-direction:column}.hhp-attendance-period-form button{width:100%}.hhp-attendance-data-metrics{grid-template-columns:1fr 1fr}.hhp-attendance-data-metrics strong{font-size:20px}.hhp-supervisor-attendance-card{padding:12px}}

/* ===== v2.14.1 — تعديل التحضير الجماعي من بوابة المشرف ===== */
.hhp-supervisor-attendance-edit-form{display:block}.hhp-supervisor-attendance-edit-table{min-width:760px}.hhp-supervisor-attendance-edit-table td:last-child{min-width:360px}.hhp-supervisor-status-choice{display:grid;grid-template-columns:repeat(4,minmax(72px,1fr));gap:6px;direction:rtl}.hhp-supervisor-status-choice label{display:block;cursor:pointer}.hhp-supervisor-status-choice input{position:absolute;opacity:0;pointer-events:none}.hhp-supervisor-status-choice span{display:flex;align-items:center;justify-content:center;min-height:36px;padding:6px 8px;border:1px solid #ddd9d0;border-radius:10px;background:#fff;color:#656159;font-size:10px;font-weight:900;transition:.15s ease}.hhp-supervisor-status-choice label.present input:checked+span{background:#e7f6ed;border-color:#78bc91;color:#216e42}.hhp-supervisor-status-choice label.absent input:checked+span{background:#fff0ef;border-color:#dc8c85;color:#a43831}.hhp-supervisor-status-choice label.late input:checked+span{background:#fff5df;border-color:#ddb765;color:#8c5b14}.hhp-supervisor-status-choice label.excused input:checked+span{background:#edf2ff;border-color:#8ba2da;color:#3e5f9c}.hhp-supervisor-status-choice label:hover span{border-color:#bdb7aa}.hhp-supervisor-status-choice input:focus-visible+span{outline:2px solid #b88b25;outline-offset:2px}.hhp-supervisor-attendance-save{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:12px 13px;border:1px solid #e6e1d7;border-radius:13px;background:#faf9f6}.hhp-supervisor-attendance-save button{border:0;border-radius:11px;background:#2f7047;color:#fff;padding:11px 18px;font:inherit;font-size:12px;font-weight:900;cursor:pointer}.hhp-supervisor-attendance-save small{color:#7f7b72;font-size:10px}
@media(max-width:620px){.hhp-supervisor-attendance-edit-table{min-width:700px}.hhp-supervisor-attendance-save{align-items:stretch;flex-direction:column}.hhp-supervisor-attendance-save button{width:100%}}

/* ===== v2.14.2 — فلتر الطلاب المسمّعين / غير المسمّعين ===== */
.hhp-student-filter-btn.active{
  color:#fff;
  border-color:#2f7a4a;
  background:linear-gradient(135deg,#3d8b59,#24683d);
  box-shadow:0 4px 10px rgba(36,104,61,.18);
}
@media(max-width:520px){
  .hhp-score-sort>div{grid-template-columns:1fr 1fr}
}

/* v2.14.3: Supervisor monthly attendance editor */
.hhp-month-attendance-hint{font-size:12px;color:#777267;margin:2px 0 14px;line-height:1.8}
.hhp-month-attendance-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
.hhp-month-attendance-table{width:max-content;min-width:100%;table-layout:auto;border-collapse:separate;border-spacing:0}
.hhp-month-attendance-table th,.hhp-month-attendance-table td{min-width:112px;padding:9px 7px;white-space:nowrap;text-align:center}
.hhp-month-attendance-table th small{display:block;margin-top:4px;font-size:10px;color:#928879}
.hhp-month-attendance-table .hhp-month-student-cell{position:sticky;right:0;z-index:2;min-width:165px;max-width:210px;background:#fff;box-shadow:-2px 0 6px rgba(0,0,0,.04);text-align:right;white-space:normal}
.hhp-month-attendance-table thead .hhp-month-student-cell{background:#f8f6f1;z-index:3}
.hhp-month-attendance-table tr:nth-child(even) .hhp-month-student-cell{background:#faf9f6}
.hhp-month-status-select{display:block;width:100%;min-width:98px;padding:8px 7px;border:1px solid #e1ddd4;border-radius:9px;background:#fff;font:inherit;font-size:11px;font-weight:800;text-align:center;cursor:pointer;color:#656159}
.hhp-month-status-select.present{background:#eaf7ef;color:#277647}.hhp-month-status-select.absent{background:#fff0ef;color:#af3b34}.hhp-month-status-select.late{background:#fff6e4;color:#9a671a}.hhp-month-status-select.excused{background:#eef3ff;color:#4263a0}
.hhp-month-status-select:focus-visible{outline:2px solid #bd922e;outline-offset:2px}

/* v2.14.4: اختيار الأسبوع والشهر من فترات التحضير المسجلة */
.hhp-attendance-period-form select{width:100%;min-width:230px;max-width:100%;min-height:45px;border:1px solid #ded7c9;border-radius:12px;background:#fff;padding:8px 12px;color:#333;font:inherit;direction:rtl}.hhp-attendance-period-form label{min-width:0;flex:1}.hhp-attendance-period-form select:focus-visible{outline:2px solid #bc912b;outline-offset:2px}

/* v2.14.5: Compact supervisor attendance calendar */
.hhp-supervisor-calendar{background:#fff;border:1px solid #e7dfd1;border-radius:17px;padding:18px;margin:12px 0;direction:rtl}
.hhp-supervisor-calendar-top{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}
.hhp-supervisor-calendar-top span{color:#968b79;font-size:11px}
.hhp-supervisor-calendar-top h2{font-size:17px;margin:4px 0}
.hhp-supervisor-calendar-top small{font-size:11px;color:#827d75}
.hhp-supervisor-calendar-nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.hhp-supervisor-calendar-nav a{display:inline-block;padding:9px 11px;border:1px solid #ded6c7;border-radius:10px;text-decoration:none;color:#69572f;font-size:11px;font-weight:800}
.hhp-supervisor-calendar-nav strong{font-size:13px;min-width:105px;text-align:center}
.hhp-supervisor-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;max-width:720px;margin:0 auto}
.hhp-supervisor-calendar-weekday{text-align:center;font-size:10px;color:#8a8378;padding:7px 0;font-weight:800}
.hhp-supervisor-calendar-day{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:53px;border:1px solid #e7e2d9;border-radius:10px;background:#fff;color:#555;text-decoration:none;font-size:14px}
.hhp-supervisor-calendar-day b{font-weight:800}
.hhp-supervisor-calendar-day i,.hhp-supervisor-calendar-legend i{display:block;width:6px;height:6px;border-radius:50%;background:#d1d1d1}
.hhp-supervisor-calendar-day.recorded i,.hhp-supervisor-calendar-legend i.recorded{background:#2f8454}
.hhp-supervisor-calendar-day.recorded{cursor:pointer}
.hhp-supervisor-calendar-day.recorded:hover{border-color:#2f8454;background:#eff8f1}
.hhp-supervisor-calendar-day.selected{border:2px solid #b98b2b;background:#fff8e7;color:#765516}
.hhp-supervisor-calendar-day.unrecorded{background:#faf9f7;color:#b1aba1;cursor:default}
.hhp-supervisor-calendar-legend{display:flex;gap:20px;justify-content:center;margin-top:14px;font-size:11px;color:#78736a}
.hhp-supervisor-calendar-legend span{display:flex;align-items:center;gap:6px}
@media(max-width:560px){.hhp-supervisor-calendar{padding:10px}.hhp-supervisor-calendar-grid{gap:3px}.hhp-supervisor-calendar-weekday{font-size:8px}.hhp-supervisor-calendar-day{min-height:42px;font-size:12px;border-radius:7px}.hhp-supervisor-calendar-nav{width:100%;justify-content:space-between}.hhp-supervisor-calendar-nav a{font-size:10px;padding:7px}}

.hhp-supervisor-day-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:12px 0;flex-wrap:wrap}
.hhp-supervisor-day-toolbar strong{font-size:13px}
.hhp-supervisor-absent-toggle{background:#fff;border:1px solid #d9c9aa;border-radius:10px;color:#8c651c;font:inherit;font-size:11px;font-weight:800;padding:9px 13px;cursor:pointer}
.hhp-supervisor-absent-toggle[aria-pressed="true"]{background:#fff0ef;color:#a43831;border-color:#dc8c85}
.hhp-supervisor-attendance-edit-table tr[hidden]{display:none!important}
.hhp-circle-report{margin:20px 0;padding:24px;background:white;border:1px solid #dfe8e1;border-radius:20px;color:#243d2c;direction:rtl}.hhp-circle-report-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.hhp-circle-report-heading span{color:#2c7850;font-size:12px;font-weight:700}.hhp-circle-report h2{margin:4px 0;font-size:24px}.hhp-circle-report h3{margin:0 0 8px;font-size:17px}.hhp-circle-report p{margin:5px 0;color:#768178;font-size:13px;line-height:1.8}.hhp-circle-report-heading small{max-width:270px;color:#768178;line-height:1.8}.hhp-circle-report-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:24px}.hhp-circle-trend{min-width:0}.hhp-circle-chart-scroll{overflow-x:auto;direction:rtl;margin-top:18px}.hhp-circle-chart svg{display:block;width:100%;font-family:inherit;direction:ltr}.hhp-circle-chart [role=button]{cursor:pointer}.hhp-circle-chart [role=button]:focus,.hhp-circle-chart [aria-pressed=true]{outline:none;stroke:#383c2c;stroke-width:3}.hhp-circle-chart-detail{margin-top:12px;padding:13px 16px;background:#f2f7f3;border-radius:12px;font-size:13px;line-height:1.9;min-height:50px}.hhp-circle-distribution{padding:18px;background:#f8faf8;border-radius:16px;text-align:center}.hhp-circle-donut{width:172px;height:172px;border-radius:50%;margin:22px auto;display:grid;place-items:center}.hhp-circle-donut>div{width:128px;height:128px;background:#f8faf8;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center}.hhp-circle-donut strong{font-size:32px;color:#2c7850}.hhp-circle-donut span{font-size:12px;color:#768178}.hhp-circle-legend>div{display:flex;align-items:center;gap:8px;margin:12px 0;font-size:13px}.hhp-circle-legend i{width:10px;height:10px;border-radius:50%}.hhp-circle-legend b{margin-inline-start:auto;font-size:12px}.hhp-circle-report .hhp-circle-chart-note{margin-top:18px;padding-top:14px;border-top:1px solid #e5ece6}@media(max-width:760px){.hhp-circle-report{padding:16px}.hhp-circle-report-heading{align-items:flex-start;flex-direction:column;gap:8px}.hhp-circle-report-layout{grid-template-columns:1fr}.hhp-circle-report h2{font-size:21px}}

/* Compact daily leave interface */
.hhp-leave-summary{display:flex;gap:10px;flex-wrap:wrap}.hhp-leave-summary>div{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:108px;padding:14px 18px;background:#f7f5ef;border-radius:14px;gap:5px}.hhp-leave-summary strong{font-size:25px;line-height:1.2}.hhp-leave-summary span{font-size:11px;color:#6b675e}.hhp-leave-summary .out{background:#fff3df;color:#b97616}.hhp-leave-summary .returned{background:#eaf5ed;color:#2c7850}
.hhp-leave-filters{display:flex;gap:8px;margin:0 0 14px;flex-wrap:wrap}.hhp-leave-filters button{border:1px solid #e1dccf;background:white;color:#5d584e;border-radius:25px;padding:10px 17px;cursor:pointer;font:inherit;font-size:13px}.hhp-leave-filters button[aria-pressed=true]{background:#3e3e3e;color:white;border-color:#3e3e3e}.hhp-leave-filters b{margin-inline-start:6px;background:#ffffff29;padding:2px 7px;border-radius:10px}
.hhp-leave-compact .hhp-leave-student-card{display:flex;flex-direction:row;align-items:center;gap:16px;padding:13px 16px;margin-bottom:8px}.hhp-leave-compact .hhp-leave-student-info{flex:1;min-width:0;display:flex;gap:12px;align-items:center;justify-content:space-between;margin:0}.hhp-leave-compact .hhp-leave-student-info strong{font-size:14px}.hhp-leave-compact .hhp-leave-student-info small{font-size:11px}.hhp-leave-compact .hhp-leave-start-form{width:auto;margin:0;flex-shrink:0}.hhp-leave-compact .hhp-leave-start{width:auto;min-width:110px;padding:10px 16px;margin:0}.hhp-leave-compact .hhp-leave-actions{display:flex;gap:8px;width:auto;align-items:center;margin:0;flex-shrink:0}.hhp-leave-compact .hhp-leave-actions form{width:auto;margin:0}.hhp-leave-compact .hhp-leave-actions a,.hhp-leave-compact .hhp-leave-actions button{width:auto;min-width:105px;padding:10px 14px;margin:0}.hhp-leave-compact .is-out{background:#fffaf0;border-color:#dfb46a}.hhp-leave-compact .is-out .hhp-leave-status{background:#ffebcc;color:#965e10}.hhp-leave-compact .hhp-leave-return{background:#2c7850;color:white}.hhp-leave-compact [hidden],#hhpLeaveFilterEmpty[hidden]{display:none!important}
@media(max-width:760px){.hhp-leave-head{flex-direction:column;align-items:stretch}.hhp-leave-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.hhp-leave-summary>div{min-width:0;padding:12px 5px}.hhp-leave-summary span{font-size:10px}.hhp-leave-compact .hhp-leave-student-info{align-items:flex-start;flex-direction:column;gap:5px}.hhp-leave-compact .is-out{flex-wrap:wrap}.hhp-leave-compact .is-out .hhp-leave-student-info{flex-basis:100%;flex-direction:row}.hhp-leave-compact .hhp-leave-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.hhp-leave-compact .hhp-leave-actions a,.hhp-leave-compact .hhp-leave-actions button{width:100%;min-width:0}.hhp-leave-compact .hhp-leave-start{min-width:90px;padding:10px;font-size:12px}}

/* v2.15.0: Curriculum, exam committee, and notification modules */
.hhp-curriculum-page{direction:rtl;max-width:980px;margin:24px auto;padding:24px;background:#fff;border-radius:18px;color:#292929;box-shadow:0 6px 25px #0000000c}
.hhp-curriculum-page h2,.hhp-curriculum-page h3{margin:22px 0 10px}
.hhp-curriculum-page form,.hhp-curriculum-teacher form{background:#f9f7f2;padding:14px;border-radius:12px;margin:12px 0;display:flex;gap:12px;flex-wrap:wrap;align-items:end}
.hhp-curriculum-page label,.hhp-curriculum-teacher label{display:flex;flex-direction:column;gap:6px;font-size:13px;flex:1;min-width:180px}
.hhp-curriculum-page input,.hhp-curriculum-page select,.hhp-curriculum-page textarea,.hhp-curriculum-teacher input,.hhp-curriculum-teacher select{padding:10px;border:1px solid #dcd5c8;border-radius:9px;max-width:100%;background:white}
.hhp-curriculum-page button,.hhp-curriculum-teacher button,.hhp-curriculum-notices button{padding:10px 16px;border:0;border-radius:9px;background:#8b692b;color:white;font-weight:700;cursor:pointer}
.hhp-curriculum-list>div,.hhp-curriculum-exam{border:1px solid #e6e0d5;border-radius:12px;padding:12px;margin:8px 0}
.hhp-curriculum-teacher,.hhp-curriculum-student,.hhp-curriculum-notices{border:1px solid #e4dccd;border-radius:14px;padding:15px;margin:15px 0;background:#fff;direction:rtl}
.hhp-curriculum-teacher h4{margin:0 0 8px}.hhp-curriculum-tasks{background:#f8f5ee;padding:12px;border-radius:10px;margin:8px 0}
.hhp-curriculum-tasks p{margin:7px 0}.hhp-curriculum-tasks small{color:#6e6a60}
.hhp-curriculum-notices>div{padding:12px;border-bottom:1px solid #eee}.hhp-curriculum-notices>div.unread{background:#fff9e9}
.hhp-curriculum-notices small{display:block;color:#777}.hhp-curriculum-ok{color:#267549;font-weight:700}
@media(max-width:600px){.hhp-curriculum-page{padding:12px;margin:8px}.hhp-curriculum-page label,.hhp-curriculum-teacher label{min-width:100%}}

/* v2.15.1: Supervisor curriculum form explanations */
.hhp-curriculum-page .hhp-curriculum-help{background:#f5f0e6;border-right:3px solid #9a7839;border-radius:7px;padding:10px 13px;color:#62563f;font-size:13px;line-height:1.9;width:100%;margin:7px 0}
.hhp-curriculum-page label small{font-size:11px;color:#70695d;line-height:1.6;font-weight:400}

/* v2.15.3 — compact curricula cards, progress and consistent navigation */
.hhp-curriculum-navigation{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 18px;direction:rtl}
.hhp-curriculum-navigation a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:9px 17px;border-radius:999px;font-weight:750;text-decoration:none!important;box-shadow:0 4px 14px rgba(56,44,18,.05);font-size:13px}
.hhp-curriculum-return{background:#fff;color:#755926!important;border:1px solid #dac8a9}
.hhp-curriculum-return:hover{background:#faf5ea}
.hhp-curriculum-home{background:#bd8c2b;color:#fff!important;border:1px solid #bd8c2b}
.hhp-curriculum-home:hover{background:#9c7222}
.hhp-curriculum-page .hhp-curriculum-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr));gap:14px;margin:14px 0}
.hhp-curriculum-page .hhp-curriculum-student-card{border:1px solid #e6dfd3;border-radius:17px;background:#fff;padding:17px;min-width:0;box-shadow:0 5px 18px rgba(31,28,21,.035)}
.hhp-curriculum-student-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-bottom:13px;border-bottom:1px solid #f1ece3}
.hhp-curriculum-avatar{display:flex;align-items:center;justify-content:center;width:43px;height:43px;border-radius:13px;background:#f6f0e3;color:#9d7b39;font-size:22px;flex-shrink:0}
.hhp-curriculum-student-identity{display:flex;flex-direction:column;gap:3px;flex:1;min-width:130px}
.hhp-curriculum-student-identity strong{font-size:15px;color:#332a1a;line-height:1.5}
.hhp-curriculum-student-identity small{color:#777064;font-size:11px}
.hhp-curriculum-status{display:inline-flex;align-items:center;padding:6px 10px;border:1px solid #e6dfd0;border-radius:99px;background:#f7f5ef;color:#6b5b3b;font-size:11px}
.hhp-curriculum-student-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;padding:15px 0}
.hhp-curriculum-student-details>div{display:flex;flex-direction:column;gap:5px;min-width:0}
.hhp-curriculum-student-details small{font-size:11px;color:#746b5e}
.hhp-curriculum-student-details strong{font-size:13px;color:#2b2925;font-weight:700;overflow-wrap:anywhere;line-height:1.7}
.hhp-curriculum-progress{border:1px solid #e9e5da;border-radius:12px;background:#f8f7f3;padding:13px;margin:13px 0 0}
.hhp-curriculum-progress-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:13px}
.hhp-curriculum-progress-value{color:#278359;font-size:20px;font-weight:800;direction:ltr}
.hhp-curriculum-progress-track{height:10px;border-radius:99px;background:#e5e3de;overflow:hidden;margin:10px 0}
.hhp-curriculum-progress-track>span{display:block;height:100%;background:#328461;border-radius:99px;transition:width .2s ease}
.hhp-curriculum-progress-meta{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;color:#68645d;font-size:11px}
.hhp-curriculum-progress small,.hhp-curriculum-progress-pending{display:block;color:#777064;font-size:11px;line-height:1.8;margin:8px 0 0}
.hhp-curriculum-progress-status{display:block;margin:9px 0 0;color:#8e6a25;font-size:11px;font-weight:700}
.hhp-curriculum-completed{font-weight:700;color:#23815b}
.hhp-curriculum-amount-preview{display:flex;flex-wrap:wrap;align-items:center;gap:11px 18px;padding:11px 14px;background:#f0ece2;border:1px solid #e8decb;border-radius:11px;width:100%;font-size:12px}
.hhp-curriculum-amount-preview strong{color:#735a2c}.hhp-curriculum-amount-preview span{color:#625c51}.hhp-curriculum-amount-preview b{color:#332b1b}
.hhp-curriculum-page .hhp-curriculum-empty{background:#f8f7f3;border-radius:12px;padding:20px;color:#7b746a}
@media(max-width:600px){.hhp-curriculum-page .hhp-curriculum-list{grid-template-columns:minmax(0,1fr)}.hhp-curriculum-page .hhp-curriculum-student-card{padding:12px}.hhp-curriculum-student-details{gap:13px}.hhp-curriculum-navigation a{font-size:12px;padding:9px 13px}}

/* v2.15.4: Searchable, expandable supervisor student progress list */
.hhp-curriculum-search{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#f8f6f1;border:1px solid #eee5d8;border-radius:14px;padding:12px 15px;margin:12px 0 14px}
.hhp-curriculum-page .hhp-curriculum-search label{font-size:13px;font-weight:750;color:#514633;min-width:fit-content;flex:0 0 auto}
.hhp-curriculum-page .hhp-curriculum-search input[type="search"]{flex:1 1 240px;max-width:100%;min-width:0;background:#fff;border-radius:10px;padding:12px 14px;font-size:14px}
#hhp-curriculum-search-count{font-size:12px;color:#857764;white-space:nowrap}
.hhp-curriculum-page .hhp-curriculum-list{display:flex;flex-direction:column;gap:8px;margin:12px 0}
.hhp-curriculum-page .hhp-curriculum-student-card{display:block;width:100%;padding:0;border:1px solid #e6dfd3;border-radius:13px;box-shadow:0 2px 12px rgba(31,28,21,.025);overflow:hidden}
.hhp-curriculum-page .hhp-curriculum-student-card[hidden],.hhp-curriculum-page .hhp-curriculum-search-none[hidden],.hhp-curriculum-page .hhp-curriculum-edit-message[hidden]{display:none!important}
.hhp-curriculum-student-summary{display:flex;align-items:center;gap:12px;min-height:70px;padding:11px 15px;cursor:pointer;list-style:none}
.hhp-curriculum-student-summary::-webkit-details-marker{display:none}
.hhp-curriculum-student-summary::marker{content:""}
.hhp-curriculum-student-summary:hover{background:#fdfbf6}
.hhp-curriculum-student-summary:focus-visible{outline:3px solid #ad8b50;outline-offset:-3px}
.hhp-curriculum-student-summary .hhp-curriculum-avatar{width:38px;height:38px;font-size:20px}
.hhp-curriculum-summary-progress{color:#258157;font-weight:800;white-space:nowrap;font-size:13px}
.hhp-curriculum-arrow{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border:1px solid #e1d8c7;border-radius:9px;background:#f6f2e9;color:#8d682e;font-size:24px;line-height:1;transition:transform .15s ease}
.hhp-curriculum-student-card[open] .hhp-curriculum-arrow{transform:rotate(180deg)}
.hhp-curriculum-student-expanded{padding:16px 17px;border-top:1px solid #f0e9dd;background:#fdfcf9}
.hhp-curriculum-student-expanded .hhp-curriculum-student-details{padding:15px 0}
.hhp-curriculum-page .hhp-curriculum-edit-student{margin-top:14px;display:inline-flex;align-items:center;gap:7px;background:#fff;color:#876329;border:1px solid #cbb88f;border-radius:10px;padding:11px 17px;font-size:13px}
.hhp-curriculum-page .hhp-curriculum-edit-student:hover{background:#f8efd9}
.hhp-curriculum-edit-message{background:#fff9e9;border-right:3px solid #b48a35;border-radius:8px;color:#6c541d;padding:11px 13px;font-size:13px;width:100%}
.hhp-curriculum-search-none{padding:18px;background:#f8f6f1;color:#716657;text-align:center;border-radius:12px}
#hhp-curriculum-form-title{scroll-margin-top:75px}
@media(max-width:600px){.hhp-curriculum-search{align-items:stretch;flex-direction:column}.hhp-curriculum-page .hhp-curriculum-search label{min-width:0}.hhp-curriculum-page .hhp-curriculum-search input[type="search"]{flex:0 0 auto;width:100%}.hhp-curriculum-student-summary{padding:10px;gap:9px}.hhp-curriculum-student-summary .hhp-curriculum-student-identity{min-width:0}.hhp-curriculum-summary-progress{font-size:12px}.hhp-curriculum-student-expanded{padding:12px}.hhp-curriculum-page .hhp-curriculum-edit-student{width:100%;justify-content:center}}

/* v2.15.5: name ordering control in supervisor and teacher workspaces. */
.hhp-name-order-control{display:inline-flex;align-items:center;gap:5px;padding:8px 12px;margin:6px 0 10px;border:1px solid #dfd5be;border-radius:11px;color:#86601f;background:#fffdf9;font-size:12px;font-weight:700;text-decoration:none;transition:background .18s}
.hhp-name-order-control:hover,.hhp-name-order-control:focus-visible{background:#f8efdc;color:#765018;text-decoration:none}
@media(max-width:560px){.hhp-name-order-control{font-size:11px;padding:8px 10px}}

/* v2.15.6 — خروج الحساب الذي لم يتم تعيين حلقة له */
.hhp-unassigned-shell{direction:rtl}
.hhp-unassigned-card{display:flex;flex-direction:column;align-items:center;gap:18px;padding:30px 24px}
.hhp-unassigned-message{margin:0!important;font-size:16px!important;line-height:1.9!important;text-align:center;color:#555!important}
.hhp-unassigned-logout{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:145px;padding:10px 22px;border-radius:12px;background:#b58b32;color:#fff!important;font-weight:700;font-size:14px;text-decoration:none!important;transition:background .2s ease,transform .2s ease}
.hhp-unassigned-logout:hover,.hhp-unassigned-logout:focus-visible{background:#956c20;color:#fff!important;transform:translateY(-1px)}
.hhp-unassigned-logout:focus-visible{outline:3px solid #e0c17e;outline-offset:3px}
@media(max-width:480px){.hhp-unassigned-card{padding:24px 18px}.hhp-unassigned-logout{width:100%}}

/* v2.15.7 — generated Quran range is display-only in teacher/student portals */
.hhp-curriculum-readonly-range{padding:14px 16px;border:1px solid #e7d9bf;background:#faf7f0;border-radius:13px;display:grid;gap:8px;margin:10px 0;direction:rtl}
.hhp-curriculum-readonly-range strong{color:#765d2d;font-size:14px}
.hhp-curriculum-readonly-range p{margin:0;font-size:14px;line-height:1.9;font-weight:700}
.hhp-curriculum-readonly-range small{font-size:11px;color:#776f63}
.hhp-curriculum-mastery-check{background:#f2f8f3;border:1px solid #cee3d3;padding:13px;border-radius:12px;margin:12px 0}
.hhp-curriculum-mastery-check label{display:flex;gap:9px;align-items:center}
.hhp-curriculum-mastery-check input{width:17px;height:17px;flex:none;accent-color:#27764d}
.hhp-curriculum-mastery-check small{display:block;margin-top:8px;color:#626b63}
.hhp-curriculum-locked-notice,.hhp-quran-map-warning{background:#fff5e3;border:1px solid #e6c789;color:#765b2e;padding:12px;border-radius:11px}
.hhp-curriculum-review-choice[hidden],.hhp-curriculum-mastery-check[hidden]{display:none!important}

/* ===== v2.16.0 | واجهة المعلم الحديثة - حصر التغيير ببوابة المعلم ===== */
body.hhp-standalone-body .hhp-role-teacher{max-width:1160px}
body.hhp-standalone-body .hhp-role-teacher .hhp-bottom-nav{width:min(1050px,calc(100% - 44px))}
.hhp-teacher-modern{--hhp-t-green:#2c7654;--hhp-t-green-light:#edf6f0;--hhp-t-gold:#b88b32;--hhp-t-border:#e8e3d9;--hhp-t-ink:#3b3d36;--hhp-t-muted:#747b74;color:var(--hhp-t-ink);font-size:15px;line-height:1.7}
.hhp-teacher-modern .hhp-circle-switch{background:#fff;border:1px solid var(--hhp-t-border);border-radius:18px;padding:17px 20px;margin-bottom:18px;box-shadow:0 7px 24px rgba(49,48,39,.035)}
.hhp-teacher-modern .hhp-circle-switch .hhp-section-title h2{font-size:20px;color:var(--hhp-t-ink)}
.hhp-teacher-modern .hhp-tabs a{min-height:41px;display:inline-flex;align-items:center;font-size:13px;padding:9px 16px;border-radius:11px}
.hhp-teacher-modern .hhp-tabs a.active{background:var(--hhp-t-green);border-color:var(--hhp-t-green);color:#fff!important}
.hhp-teacher-modern .hhp-eyebrow{display:block;color:#9a752e;font-size:12px;font-weight:800;margin-bottom:7px;letter-spacing:.1px}
.hhp-teacher-modern .hhp-teacher-welcome,.hhp-teacher-modern .hhp-teacher-progress-intro{background:linear-gradient(115deg,#fff 0%,#f6f9f5 100%);border:1px solid #dde8dc;border-radius:22px;padding:25px 26px;margin:0 0 20px;display:flex;align-items:center;justify-content:space-between;gap:20px;box-shadow:0 9px 30px rgba(34,61,43,.045)}
.hhp-teacher-modern .hhp-teacher-welcome h2,.hhp-teacher-modern .hhp-teacher-progress-intro h2{margin:0 0 6px;font-size:clamp(21px,2.7vw,27px);font-weight:850;color:#4c5040;line-height:1.5}
.hhp-teacher-modern .hhp-teacher-welcome p,.hhp-teacher-modern .hhp-teacher-progress-intro p{margin:0;color:#6c756b;font-size:14px;line-height:1.9;max-width:650px}
.hhp-teacher-modern .hhp-teacher-welcome-icon,.hhp-teacher-modern .hhp-teacher-progress-icon{flex:none;width:70px;height:70px;border-radius:22px;background:#e6f0e7;color:#317651;font-size:38px;display:grid;place-items:center;border:1px solid #d4e7d8}
.hhp-teacher-modern .hhp-teacher-home-stats{gap:13px;margin-bottom:24px}
.hhp-teacher-modern .hhp-teacher-home-stats>div{min-height:118px;border-radius:18px;border:1px solid var(--hhp-t-border);display:flex;flex-direction:column;justify-content:center;align-items:center;box-shadow:none;background:#fff}
.hhp-teacher-modern .hhp-teacher-home-stats span{font-size:13px;color:#68736b;margin-bottom:6px}
.hhp-teacher-modern .hhp-teacher-home-stats strong{color:#2c7654;font-size:32px;line-height:1.25}
.hhp-teacher-modern .hhp-teacher-quick-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:10px 0 14px}
.hhp-teacher-modern .hhp-teacher-quick-heading h2{font-size:20px;margin:0;color:#404337}
.hhp-teacher-modern .hhp-teacher-quick-heading span{font-size:12px;color:#777a72}
.hhp-teacher-modern .hhp-teacher-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:24px}
.hhp-teacher-modern .hhp-teacher-actions>a{grid-template-columns:56px minmax(0,1fr);gap:13px;padding:20px;border-radius:19px;min-height:122px;box-shadow:0 8px 28px rgba(31,54,36,.035);transition:transform .16s,border-color .16s,box-shadow .16s}
.hhp-teacher-modern .hhp-teacher-actions>a:hover{border-color:#c9b68d;box-shadow:0 12px 33px rgba(37,60,42,.075);transform:translateY(-2px)}
.hhp-teacher-modern .hhp-teacher-actions>a i{width:56px;height:56px;font-size:27px;border-radius:16px}
.hhp-teacher-modern .hhp-teacher-actions>a b{font-size:19px;color:#404337}
.hhp-teacher-modern .hhp-teacher-actions>a span{font-size:13px;line-height:1.8}
.hhp-teacher-modern .hhp-teacher-actions>a em{grid-column:2;justify-self:start;border-radius:10px;padding:6px 15px;background:var(--hhp-t-green);font-size:12px}
.hhp-teacher-modern .hhp-teacher-actions>a.progress i{background:#f7efd9;color:#a17824}
.hhp-teacher-modern .hhp-progress-mode-switch{margin:0 0 20px;gap:12px}
.hhp-teacher-modern .hhp-progress-mode-switch a{border-radius:15px;padding:16px 19px;box-shadow:none}
.hhp-teacher-modern .hhp-progress-mode-switch a.active{border-color:#acd0b9;background:#eef7f1;box-shadow:0 0 0 1px #cfe7d5}
.hhp-teacher-modern .hhp-progress-mode-switch b{font-size:16px;color:#285f41}
.hhp-teacher-modern .hhp-progress-mode-switch span{font-size:12px;line-height:1.8}
.hhp-teacher-modern .hhp-students-section{border:1px solid #e8e4dc;border-radius:22px;background:#fff;padding:22px;box-shadow:0 12px 38px rgba(45,48,38,.045)}
.hhp-teacher-modern .hhp-students-section>.hhp-section-title{margin:0 0 17px}
.hhp-teacher-modern .hhp-students-section>.hhp-section-title h2{font-size:23px;margin-top:2px}
.hhp-teacher-modern #hhpStudentCount{background:#f2f6f2;color:#367251;font-size:13px;padding:6px 13px;border-radius:12px;white-space:nowrap}
.hhp-teacher-modern .hhp-search-wrap{margin:0 0 15px}
.hhp-teacher-modern .hhp-search-wrap input{border:1.5px solid #dedfd9;border-radius:14px;height:53px;font-size:15px;background:#fdfdfb}
.hhp-teacher-modern .hhp-search-wrap input:focus{border-color:#388055;box-shadow:0 0 0 3px rgba(56,128,85,.1)}
.hhp-teacher-modern .hhp-score-sort{padding:10px 0 14px;gap:10px}
.hhp-teacher-modern .hhp-score-sort>span{font-size:12px;color:#788077}
.hhp-teacher-modern .hhp-score-sort-btn{min-height:36px;font-size:12px;border-radius:10px}
.hhp-teacher-modern .hhp-student-select-hint{font-size:13px;color:#747c73;background:#f7f8f4;border-right:3px solid #b6cbb9;border-radius:8px;padding:9px 13px;margin:0 0 14px}
.hhp-teacher-modern .hhp-student-card{border:1px solid #e8e8e1;box-shadow:none;border-radius:15px;margin-bottom:9px;transition:border-color .18s,box-shadow .18s}
.hhp-teacher-modern .hhp-student-card.open{border-color:#91b9a0;box-shadow:0 10px 32px rgba(30,93,53,.09)}
.hhp-teacher-modern .hhp-student-card[hidden]{display:none!important}
.hhp-teacher-modern .hhp-student-summary{cursor:pointer!important;padding:14px 17px!important;min-height:72px;gap:12px}
.hhp-teacher-modern .hhp-student-summary:focus-visible{outline:3px solid #ac8c4d;outline-offset:-4px;border-radius:15px}
.hhp-teacher-modern .hhp-student-summary i{border-width:0 19px 19px 0;border-right-color:#3b865d}
.hhp-teacher-modern .hhp-student-summary h3{margin:0 0 3px;font-size:17px;font-weight:800;color:#2b3830;gap:10px}
.hhp-teacher-modern .hhp-student-summary p{font-size:12px;gap:10px;color:#757d73}
.hhp-teacher-modern .hhp-list-score-badge{min-width:50px;padding:3px 10px;box-shadow:none}
.hhp-teacher-modern .hhp-student-card-actions{gap:8px}
.hhp-teacher-modern .hhp-student-action{border-radius:10px;min-width:60px;height:38px;padding:0 13px;font-size:12px;background:#f8f8f5}
.hhp-teacher-modern .hhp-student-action.is-active{background:#2b7652;border-color:#2b7652;color:#fff}
.hhp-teacher-modern .hhp-student-open-arrow{font-size:21px;display:grid;place-items:center;background:#f4f1e8;border-radius:10px;width:33px;height:33px;color:#8a6b33;transition:transform .17s}
.hhp-teacher-modern .hhp-student-card.open .hhp-student-open-arrow{transform:rotate(180deg)}
.hhp-teacher-modern .hhp-student-body{padding:22px;background:#fdfdfa;border-top:1px solid #e8ebe4}
.hhp-teacher-modern .hhp-current-memorization{background:#f7f8f5;border-radius:14px;padding:13px 17px;margin-bottom:14px}
.hhp-teacher-modern .hhp-current-memorization strong{font-size:15px}
.hhp-teacher-modern .hhp-last-progress{border-radius:13px;padding:15px}
.hhp-teacher-modern .hhp-teacher-curriculum-details{margin:0 0 18px;border:1px solid #e5dfd2;border-radius:15px;overflow:hidden;background:#fff}
.hhp-teacher-modern .hhp-teacher-curriculum-details>summary{padding:14px 18px;cursor:pointer;color:#47634c;font-weight:800;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:14px}
.hhp-teacher-modern .hhp-teacher-curriculum-details>summary::-webkit-details-marker{display:none}
.hhp-teacher-modern .hhp-teacher-curriculum-details>summary span{font-size:12px;font-weight:600;color:#8e773f}
.hhp-teacher-modern .hhp-teacher-curriculum-details[open]>summary{border-bottom:1px solid #efece6;background:#fafbf8}
.hhp-teacher-modern .hhp-teacher-curriculum-details>.hhp-curriculum-teacher{margin:12px;padding:16px}
.hhp-teacher-modern .hhp-progress-form{background:#fff;border:1px solid #e6e7df;border-radius:18px;padding:19px 21px;box-shadow:0 5px 22px rgba(46,54,43,.035)}
.hhp-teacher-modern .hhp-modern-record-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}
.hhp-teacher-modern .hhp-modern-record-heading span{font-size:13px;color:#8d7746}
.hhp-teacher-modern .hhp-modern-record-heading strong{font-size:18px;color:#294d38}
.hhp-teacher-modern .hhp-modern-curriculum-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-bottom:16px}
.hhp-teacher-modern .hhp-modern-curriculum-tab{appearance:none;border:1px solid #e4dfd4;border-radius:11px;background:#fafaf8;color:#5e655e;min-height:48px;font:inherit;font-size:14px;font-weight:800;cursor:pointer;padding:9px 7px;transition:background .16s,border-color .16s}
.hhp-teacher-modern .hhp-modern-curriculum-tab:hover:not(:disabled){border-color:#86b297;background:#f0f7f1}
.hhp-teacher-modern .hhp-modern-curriculum-tab.active{background:#28754e;color:white;border-color:#28754e;box-shadow:0 5px 14px rgba(39,105,69,.16)}
.hhp-teacher-modern .hhp-modern-curriculum-tab:disabled{opacity:.44;cursor:not-allowed}
.hhp-teacher-modern .hhp-modern-curriculum-tabs.is-editing{opacity:.65;pointer-events:none}
/* الإبقاء على اختيار النوع الأصلي في النموذج للتحقق والصلاحيات، دون عرضه مكررًا. */
.hhp-teacher-modern .hhp-modern-locked-form>.hhp-form-row>label:first-child{display:none!important}
.hhp-teacher-modern .hhp-modern-locked-form>.hhp-form-row{display:block!important}
.hhp-teacher-modern .hhp-progress-form .hhp-form-row label{font-size:13px}
.hhp-teacher-modern .hhp-individual-score-field{background:#fafaf8;border:1px solid #edece6;border-radius:14px;padding:13px;margin:0 0 15px}
.hhp-teacher-modern .hhp-individual-score-field .hhp-score-title{font-size:15px;font-weight:800;color:#2a4a36}
.hhp-teacher-modern .hhp-individual-score-field small{font-size:12px;line-height:1.8}
.hhp-teacher-modern .hhp-curriculum-readonly-range{background:#f4f7f2;border-color:#d9e7d9;padding:19px;border-radius:15px}
.hhp-teacher-modern .hhp-curriculum-readonly-range strong{font-size:15px;color:#2c6746;display:flex;justify-content:space-between;align-items:center}
.hhp-teacher-modern .hhp-curriculum-readonly-range p{font-size:18px;line-height:2.05;color:#2d392f;font-weight:800}
.hhp-teacher-modern .hhp-curriculum-readonly-range small{font-size:12px;color:#7d877b}
.hhp-teacher-modern .hhp-curriculum-review-choice{background:#fafbf7;border:1px solid #e6e8de;border-radius:12px;padding:13px;margin:12px 0}
.hhp-teacher-modern .hhp-curriculum-review-choice label{font-size:13px}
.hhp-teacher-modern .hhp-curriculum-mastery-check{border-radius:14px;padding:17px;background:#ecf6f0;border-color:#c7dfcb}
.hhp-teacher-modern .hhp-curriculum-mastery-check label{font-size:15px;color:#515543;line-height:1.8}
.hhp-teacher-modern .hhp-curriculum-mastery-check input{width:21px;height:21px}
.hhp-teacher-modern .hhp-progress-form textarea{min-height:84px;font-size:14px;padding:12px}
.hhp-teacher-modern .hhp-progress-form-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}
.hhp-teacher-modern .hhp-save-progress-btn{min-height:50px;border-radius:12px;font-size:16px;background:#b98b30;color:#fff;box-shadow:0 5px 16px rgba(142,102,25,.14)}
.hhp-teacher-modern .hhp-save-progress-btn:hover:not(:disabled){background:#966b22}
.hhp-teacher-modern .hhp-save-progress-btn:disabled{opacity:.48;cursor:not-allowed}
.hhp-teacher-modern .hhp-student-history-panel{padding:3px 4px}
.hhp-teacher-modern .hhp-review-no-grade-note{font-size:13px}
.hhp-teacher-modern .hhp-group-attendance-head{border-radius:19px;padding:20px}
.hhp-teacher-modern .hhp-group-att-row{border-radius:14px}
.hhp-teacher-modern :is(button,a,input,select,summary):focus-visible{outline:3px solid #cbac67;outline-offset:2px}
.hhp-visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:780px){
  body.hhp-standalone-body .hhp-role-teacher .hhp-bottom-nav{width:calc(100% - 18px)}
  body.hhp-standalone-body .hhp-role-teacher .hhp-teacher-modern{padding:16px 12px 105px}
  .hhp-teacher-modern .hhp-students-section{padding:15px 11px;border-radius:17px}
  .hhp-teacher-modern .hhp-student-summary{padding:14px 10px!important}
  .hhp-teacher-modern .hhp-student-summary h3{font-size:16px}
  .hhp-teacher-modern .hhp-student-card-actions{gap:4px}
  .hhp-teacher-modern .hhp-student-action{min-width:0;padding:0 10px;font-size:11px}
  .hhp-teacher-modern .hhp-student-body{padding:13px 10px}
  .hhp-teacher-modern .hhp-progress-form{padding:15px 12px}
  .hhp-teacher-modern .hhp-curriculum-readonly-range p{font-size:16px}
}
@media(max-width:520px){
  .hhp-teacher-modern .hhp-teacher-welcome,.hhp-teacher-modern .hhp-teacher-progress-intro{padding:19px 16px;border-radius:18px;margin-bottom:14px}
  .hhp-teacher-modern .hhp-teacher-welcome-icon,.hhp-teacher-modern .hhp-teacher-progress-icon{width:45px;height:45px;font-size:25px;border-radius:14px}
  .hhp-teacher-modern .hhp-teacher-welcome h2,.hhp-teacher-modern .hhp-teacher-progress-intro h2{font-size:19px}
  .hhp-teacher-modern .hhp-teacher-welcome p,.hhp-teacher-modern .hhp-teacher-progress-intro p{font-size:12px}
  .hhp-teacher-modern .hhp-circle-switch{padding:13px}
  .hhp-teacher-modern .hhp-teacher-home-stats{gap:7px}
  .hhp-teacher-modern .hhp-teacher-home-stats>div{min-height:93px;padding:8px 4px}
  .hhp-teacher-modern .hhp-teacher-home-stats strong{font-size:24px}
  .hhp-teacher-modern .hhp-teacher-home-stats span{font-size:11px}
  .hhp-teacher-modern .hhp-teacher-actions{grid-template-columns:minmax(0,1fr);gap:10px}
  .hhp-teacher-modern .hhp-teacher-actions>a{min-height:100px;padding:15px}
  .hhp-teacher-modern .hhp-progress-mode-switch{grid-template-columns:1fr 1fr}
  .hhp-teacher-modern .hhp-progress-mode-switch a{padding:11px}
  .hhp-teacher-modern .hhp-progress-mode-switch b{font-size:13px}
  .hhp-teacher-modern .hhp-progress-mode-switch span{font-size:10px}
  .hhp-teacher-modern .hhp-modern-curriculum-tabs{gap:5px}
  .hhp-teacher-modern .hhp-modern-curriculum-tab{font-size:11px;padding:7px 3px;min-height:43px}
  .hhp-teacher-modern .hhp-student-summary{grid-template-columns:minmax(0,1fr) auto!important;gap:6px}
  .hhp-teacher-modern .hhp-student-action{height:32px;font-size:10px;padding:0 7px}
  .hhp-teacher-modern .hhp-student-open-arrow{width:24px;height:30px}
  .hhp-teacher-modern .hhp-student-summary h3{font-size:14px;gap:5px}
  .hhp-teacher-modern .hhp-student-summary p{font-size:10px}
  .hhp-teacher-modern .hhp-progress-form-actions{grid-template-columns:1fr}
}

/* v2.16.0: simplify review controls and avoid desktop horizontal overflow. */
.hhp-standalone-frame{box-sizing:border-box}
.hhp-teacher-modern .hhp-modern-locked-form .hhp-curriculum-review-choice{display:none!important}

/* v2.16.1 — accessible, unclipped student controls & period-based history */
.hhp-teacher-modern .hhp-student-summary,
.hhp-student-summary{grid-template-columns:minmax(0,1fr) auto!important;overflow:visible!important;min-width:0;gap:12px}
.hhp-student-summary-info,.hhp-student-summary-info h3{min-width:0;overflow-wrap:anywhere}
.hhp-student-card-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;max-width:100%;min-width:0}
.hhp-student-card-actions .hhp-student-open-arrow{display:inline-flex!important;justify-content:center;align-items:center;flex:0 0 40px;width:40px;min-width:40px;height:40px;border:1px solid #d9c8a1;border-radius:11px;background:#faf5e8;color:#6f5628;font-size:24px;line-height:1;cursor:pointer;transition:transform .2s,background .2s}
.hhp-student-card-actions .hhp-student-open-arrow:hover{background:#f2e6c8}
.hhp-student-card-actions .hhp-student-open-arrow:focus-visible,.hhp-student-card-actions .hhp-student-history-link:focus-visible{outline:3px solid #bd984d;outline-offset:2px}
.hhp-student-card.open .hhp-student-card-actions .hhp-student-open-arrow{transform:rotate(180deg)}
.hhp-student-card-actions .hhp-student-history-link,.hhp-curriculum-history-link{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 14px;border-radius:11px;border:1px solid #ddcfb2;background:#fffaf1;color:#775b29;text-decoration:none!important;font-size:13px;font-weight:800;white-space:normal;text-align:center}
.hhp-student-card-actions .hhp-student-history-link:hover,.hhp-curriculum-history-link:hover{background:#f2e7cf;color:#5d451c}
.hhp-curriculum-history-link{margin:8px 8px 8px 0}
.hhp-absent-student-histories{margin:18px 0;border:1px solid #e3dccd;border-radius:15px;background:#fff;padding:14px}
.hhp-absent-student-histories summary{cursor:pointer;font-weight:800;color:#564b37}
.hhp-absent-student-histories>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #f0ebe0}
.hhp-absent-student-histories a{color:#795f2a;font-weight:800}
.hhp-history-page{direction:rtl;max-width:1100px;margin:0 auto;padding-bottom:100px}
.hhp-history-heading{padding:22px 24px;border-radius:20px;background:linear-gradient(135deg,#eaf3ed,#fff9ef);border:1px solid #e4e6dc;margin-bottom:18px}
.hhp-history-heading span{font-size:12px;color:#68826d;font-weight:800}
.hhp-history-heading h2{font-size:24px;margin:5px 0 7px;color:#484c3d}
.hhp-history-heading p{font-size:14px;color:#68736c;margin:0}
.hhp-history-student-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:19px 22px;border:1px solid #e8e3d8;border-radius:17px;background:#fff;margin-bottom:14px}
.hhp-history-student-head h3{font-size:20px;margin:0 0 5px;color:#404236}
.hhp-history-student-head p{font-size:13px;margin:0;color:#7b7e75}
.hhp-history-student-head a{color:#806229;font-weight:800;border:1px solid #d9c79f;padding:10px 13px;border-radius:10px;text-decoration:none}
.hhp-history-filters{display:flex;align-items:end;flex-wrap:wrap;gap:12px;border:1px solid #e9e5dc;border-radius:17px;background:#faf9f5;padding:18px;margin-bottom:15px}
.hhp-history-filters label{display:grid;gap:6px;flex:1 1 145px;color:#4f584f;font-size:12px;font-weight:800;min-width:0}
.hhp-history-filters input,.hhp-history-filters select{width:100%;min-height:42px;min-width:0;border:1px solid #d9d9d1;background:#fff;color:#3c3e37;border-radius:10px;padding:9px;font-size:14px}
.hhp-history-filters button{min-height:43px;padding:10px 20px;background:#b48b37;color:#fff;border:0;border-radius:10px;font-weight:800;cursor:pointer}
.hhp-history-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 18px}
.hhp-history-metrics>div{background:#fff;border:1px solid #e7e4dc;border-radius:16px;min-width:0;padding:15px 12px;display:grid;gap:6px;text-align:center}
.hhp-history-metrics strong{font-size:23px;color:#505443;font-weight:900}
.hhp-history-metrics span{font-size:12px;color:#6a786d}
.hhp-history-records,.hhp-history-exams,.hhp-history-directory{background:#fff;border:1px solid #e5e3dc;border-radius:18px;padding:20px;margin:0 0 15px}
.hhp-history-records h3,.hhp-history-exams h3,.hhp-history-directory h3{font-size:18px;margin:0 0 18px;color:#303d32}
.hhp-history-record{border:1px solid #e5e8e0;border-radius:13px;padding:15px 17px;margin:0 0 11px;background:#fdfdfb;display:grid;gap:10px}
.hhp-history-record-title{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.hhp-history-record-title>div{display:grid;gap:4px}
.hhp-history-record-title strong{font-size:15px}
.hhp-history-record-title span,.hhp-history-record small{color:#777e73;font-size:12px}
.hhp-history-record-title em{font-size:12px;font-style:normal;font-weight:800;padding:7px 11px;border-radius:20px;background:#eee9dc;color:#806b41;white-space:nowrap}
.hhp-history-record-title em.is-mem{background:#e6f4ea;color:#347451}
.hhp-history-record p{font-weight:700;color:#343e37;font-size:15px;margin:0;line-height:1.9}
.hhp-history-grade{display:flex;gap:17px;flex-wrap:wrap;color:#58645a;font-size:13px}
.hhp-history-grade b{color:#2d7351;font-size:16px}
.hhp-history-notes{background:#faf6ed;border-radius:9px;padding:11px 13px;color:#6b5a39;font-size:13px;line-height:1.8;overflow-wrap:anywhere}
.hhp-history-pagination{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:9px;margin-bottom:20px}
.hhp-history-pagination span{width:100%;text-align:center;font-size:12px;color:#6f756e}
.hhp-history-pagination a,.hhp-history-pagination b{padding:8px 12px;background:#fff;border:1px solid #e3ddd0;border-radius:9px;text-decoration:none;color:#5b644e}
.hhp-history-pagination b{background:#2f7653;color:#fff}
.hhp-history-exam{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:14px;border-bottom:1px solid #eee8df;font-size:13px}
.hhp-history-exam strong{color:#345b42}
.hhp-history-exam span{color:#66716b}
.hhp-history-exam p{width:100%;font-size:13px;margin:0;color:#51584d}
.hhp-history-directory>input{width:100%;min-height:44px;border-radius:11px;border:1px solid #d7dfd4;padding:10px 14px;font-size:15px;margin-bottom:13px;background:#fff}
.hhp-history-directory-list{display:grid;gap:8px}
.hhp-history-directory-list a{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid #e5e4da;border-radius:11px;padding:12px 15px;text-decoration:none!important;color:#354337;background:#fbfcfa}
.hhp-history-directory-list a[hidden]{display:none!important}
.hhp-history-directory-list a span{display:grid;gap:5px}
.hhp-history-directory-list a small{font-size:11px;color:#728075}
.hhp-history-directory-list a em{font-size:12px;font-style:normal;color:#877038;font-weight:800;white-space:nowrap}
@media(max-width:700px){
 .hhp-history-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
 .hhp-history-page{padding:10px 10px 100px}
 .hhp-history-heading,.hhp-history-records,.hhp-history-exams,.hhp-history-directory{padding:15px}
 .hhp-history-student-head{padding:13px}
 .hhp-history-heading h2{font-size:21px}
 .hhp-history-filters{padding:12px;gap:10px}
 .hhp-history-record{padding:12px}
 .hhp-teacher-modern .hhp-student-summary{display:flex!important;flex-direction:column;align-items:stretch!important;gap:11px!important}
 .hhp-teacher-modern .hhp-student-card-actions{width:100%;justify-content:flex-start;flex-wrap:wrap;gap:8px}
 .hhp-teacher-modern .hhp-student-card-actions .hhp-student-action,.hhp-teacher-modern .hhp-student-card-actions .hhp-student-history-link{flex:1 1 auto;min-width:0;font-size:12px}
 .hhp-teacher-modern .hhp-student-card-actions .hhp-student-open-arrow{flex:0 0 40px;min-width:40px}
}
.hhp-history-legacy-note{margin:0 0 15px;color:#736a54;background:#faf6e9;border-radius:10px;padding:12px;font-size:13px;line-height:1.8}
/* Keep the disclosure arrow inside the rounded card, including 390px screens. */
.hhp-student-summary,.hhp-teacher-modern .hhp-student-summary{box-sizing:border-box!important;width:100%!important}
.hhp-student-card-actions,.hhp-teacher-modern .hhp-student-card-actions{box-sizing:border-box;min-width:0;max-width:100%}
@media(max-width:700px){.hhp-teacher-modern .hhp-student-card-actions .hhp-student-action,.hhp-teacher-modern .hhp-student-card-actions .hhp-student-history-link{flex:0 1 auto;padding-left:9px;padding-right:9px}}
.hhp-history-mastery{color:#25734b;font-weight:800;background:#ebf7ef;border-radius:20px;padding:5px 9px}

/* v2.18.6 — صفحة التسجيل لأولياء الأمور (تشارك تصميم صفحة الدخول) */
.hhp-login-field input[type=tel],
.hhp-login-field select{
    box-sizing:border-box;width:100%;height:52px;margin:0;padding:0 14px;
    border:1px solid #d8ddd7;border-radius:13px;outline:none;background:#fff;color:#202321;
    font:inherit;font-size:14px;transition:border-color .18s,box-shadow .18s,background .18s;
}
.hhp-login-field input[type=tel]{text-align:left}
.hhp-login-field input[type=tel]::placeholder{text-align:left}
.hhp-login-field select{appearance:none;-webkit-appearance:none;text-align:right;cursor:pointer;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23806c3d' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E");
    background-repeat:no-repeat;background-position:left 16px center;padding-left:40px}
.hhp-login-field select:focus{border-color:#c6982f;box-shadow:0 0 0 4px rgba(198,152,47,.13);background-color:#fffefa}
.hhp-register-form label b{color:#b2552f;font-weight:800}
.hhp-register-form label small{color:#8a8d82;font-weight:500}
.hhp-register-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.hhp-register-note{margin:14px 0 0;text-align:center;font-size:12px;color:#8a8d82}
.hhp-register-done{text-align:center;padding:6px 0 2px}
.hhp-register-done-icon{display:grid;place-items:center;width:62px;height:62px;margin:0 auto 12px;border-radius:50%;background:#e8f2e9;color:#2f7a45;font-size:30px;font-weight:800}
.hhp-register-done h1{margin:0 0 8px!important;font-size:24px!important}
.hhp-register-done p{line-height:1.9}
/* صفحتا الدخول والتسجيل: منع التمرير الأفقي على الجوال */
.hhp-login-shell,.hhp-login-shell *,.hhp-login-shell *:before,.hhp-login-shell *:after{box-sizing:border-box}

/* v2.18.9 — زر «متأخر» للمعلم */
.hhp-group-status-buttons{grid-template-columns:repeat(3,82px)}
.hhp-mark-late{background:#fff;border:1px solid #d79a2b;color:#9a6512}
.hhp-mark-late.active{background:#e0a536;border-color:#e0a536;color:#fff;box-shadow:0 5px 14px rgba(224,165,54,.2)}
.hhp-group-att-row.is-late{border-color:#ecd09b;background:#fffaf0}
.hhp-group-att-row.is-excused{border-color:#c9d6e6;background:#f6f9fd}
.hhp-att-excused-note{display:inline-block;margin-top:2px;font-size:10.5px!important;font-weight:700;color:#3f6290!important}
@media(max-width:700px){.hhp-group-status-buttons{grid-template-columns:repeat(3,1fr)}}
.hhp-att-live-stats{grid-template-columns:repeat(6,auto)}
.hhp-att-live-stats b:nth-of-type(2){color:#c0841c}
.hhp-att-live-stats b:nth-of-type(3){color:#c9473f}

/* v2.18.14 — إلغاء منهج الطالب */
.hhp-curriculum-page .hhp-curriculum-unenroll{display:inline-block;margin:14px 6px 0 0}
.hhp-curriculum-page .hhp-curriculum-unenroll button{display:inline-flex;align-items:center;gap:6px;background:#fff;color:#a14b3f;border:1px solid #e6c3bb;border-radius:12px;padding:10px 14px;font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.hhp-curriculum-page .hhp-curriculum-unenroll button:hover{background:#fbefec}
