#assalam-midterm{--amt-brand:#7E1F3A;--amt-brand-dark:#5c1529;--amt-bg:#FAF7F2;--amt-ink:#2B2320;--amt-sub:#71666a;--amt-border:#e7ddd3;font-family:'Tajawal',sans-serif;color:var(--amt-ink);background:var(--amt-bg);max-width:1180px;margin:0 auto;padding:22px 16px 60px;box-sizing:border-box}
#assalam-midterm *{box-sizing:border-box}
.amt-head{display:flex;align-items:center;gap:18px;background:linear-gradient(135deg,var(--amt-brand),#38041a);color:#fff;padding:22px 26px;border-radius:20px;margin-bottom:22px}
.amt-head img{width:72px;height:72px;border-radius:50%;background:#fff;padding:6px;flex-shrink:0}
.amt-year{display:inline-block;font-size:13px;background:rgba(255,255,255,.18);padding:4px 12px;border-radius:999px;margin-bottom:8px}
.amt-head h1{margin:0 0 4px;font-size:26px;font-weight:800}
.amt-head p{margin:0;opacity:.9;font-size:15px}

.amt-hub{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:10px}
.amt-hub-card{display:block;text-align:center;background:#fff;border:1.5px solid var(--amt-border);border-radius:18px;padding:26px 18px;cursor:pointer;font-family:inherit;transition:transform .15s,border-color .15s}
.amt-hub-card:hover{transform:translateY(-3px);border-color:var(--amt-brand)}
.amt-hub-card b{display:block;font-size:18px;color:var(--amt-brand);margin-bottom:8px}
.amt-hub-status{display:block;font-size:13.5px;color:var(--amt-sub)}
.amt-hub-status.is-empty{color:#b9792f}

.amt-back-btn{background:none;border:0;color:var(--amt-brand);font-family:inherit;font-weight:700;font-size:15px;cursor:pointer;padding:8px 0;margin-bottom:6px}
#amt-detail-title,#amt-periods-title{margin:0 0 16px;font-size:20px;color:var(--amt-brand);font-weight:800}

.amt-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:14px;background:#fff;border:1px solid var(--amt-border);border-radius:16px;padding:16px 18px;margin-bottom:20px}
.amt-filters label{display:grid;gap:6px;font-weight:700;font-size:14px;min-width:160px}
.amt-filters select{min-height:42px;border-radius:10px;border:1.5px solid var(--amt-border);padding:0 10px;background:#fff;font-family:inherit;font-size:15px}
.amt-print-btn{margin-inline-start:auto;min-height:42px;padding:0 18px;border:0;border-radius:10px;background:var(--amt-brand);color:#fff;font-weight:700;font-family:inherit;font-size:15px;cursor:pointer}
.amt-print-btn:hover{background:var(--amt-brand-dark)}

.amt-message{text-align:center;padding:40px 20px;color:var(--amt-sub);font-size:16px}

.amt-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-bottom:22px}
.amt-card{background:#fff;border:1px solid var(--amt-border);border-radius:16px;padding:18px;text-align:center}
.amt-card b{display:block;font-size:30px;color:var(--amt-brand);font-weight:800;line-height:1.2}
.amt-card span{display:block;margin-top:6px;font-size:14px;color:var(--amt-ink)}
.amt-card small{display:block;margin-top:4px;font-size:12px;color:var(--amt-sub)}
.amt-card-note{background:#F7ECEF}

.amt-charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-bottom:26px}
.amt-chart-card{background:#fff;border:1px solid var(--amt-border);border-radius:18px;padding:20px}
.amt-chart-card h2{margin:0 0 16px;font-size:16px;font-weight:800;color:var(--amt-brand);text-align:center}
.amt-donut-wrap{display:flex;flex-direction:column;align-items:center;gap:14px}
.amt-donut{width:150px;height:150px;border-radius:50%;position:relative;flex-shrink:0}
.amt-donut::after{content:'';position:absolute;inset:26px;background:#fff;border-radius:50%}
.amt-legend{list-style:none;margin:0;padding:0;width:100%;display:grid;gap:8px}
.amt-legend li{display:flex;align-items:center;gap:8px;font-size:13.5px}
.amt-legend i{width:12px;height:12px;border-radius:3px;flex-shrink:0}
.amt-legend span{flex-grow:1;color:var(--amt-ink)}
.amt-legend b{font-weight:800;color:var(--amt-brand)}

.amt-subject-cards-wrap{margin-bottom:22px}
.amt-subject-cards-wrap h2{margin:0 0 14px;font-size:17px;font-weight:800;color:var(--amt-brand)}
.amt-subject-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.amt-subject-card{--amt-subj-color:#7E1F3A;background:#fff;border:1px solid var(--amt-border);border-radius:18px;padding:20px 18px;text-align:center;position:relative;overflow:hidden}
.amt-subject-card::before{content:'';position:absolute;inset-inline-start:0;top:0;bottom:0;width:5px;background:var(--amt-subj-color)}
.amt-subject-icon{width:56px;height:56px;margin:0 auto 10px;border-radius:50%;background:color-mix(in srgb,var(--amt-subj-color) 14%,#fff);display:flex;align-items:center;justify-content:center;font-size:26px}
.amt-subject-card h3{margin:0 0 10px;font-size:16px;font-weight:800;color:var(--amt-ink)}
.amt-subject-avg{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.amt-subject-avg-bar{flex-grow:1;height:8px;border-radius:999px;background:#f1e8e3;overflow:hidden}
.amt-subject-avg-bar span{display:block;height:100%;background:var(--amt-subj-color);border-radius:999px}
.amt-subject-avg b{font-size:14px;font-weight:800;color:var(--amt-subj-color);white-space:nowrap}
.amt-subject-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;text-align:center}
.amt-subject-stats div{background:#faf7f2;border-radius:10px;padding:8px 6px}
.amt-subject-stats b{display:block;font-size:16px;font-weight:800;color:var(--amt-ink)}
.amt-subject-stats span{display:block;font-size:11.5px;color:var(--amt-sub);margin-top:2px}

.amt-table-wrap{background:#fff;border:1px solid var(--amt-border);border-radius:18px;padding:20px;margin-bottom:20px}
.amt-table-wrap h2{margin:0 0 14px;font-size:17px;font-weight:800;color:var(--amt-brand)}
.amt-table-scroll{overflow-x:auto}
.amt-table-scroll table{width:100%;border-collapse:collapse;min-width:520px;font-size:14px}
.amt-table-scroll th,.amt-table-scroll td{padding:10px 12px;text-align:center;border-bottom:1px solid var(--amt-border)}
.amt-table-scroll th{background:#fbf4f0;color:var(--amt-brand);font-weight:800;white-space:nowrap}
.amt-table-scroll tbody tr:hover{background:#fbf7f3}
.amt-table-scroll td:first-child,.amt-table-scroll th:first-child{text-align:right}

.amt-honor{margin-bottom:20px}
.amt-honor-title{margin:0 0 16px;font-size:20px;font-weight:800;color:var(--amt-brand);text-align:center}
.amt-honor-block{background:#fff;border:1px solid var(--amt-border);border-radius:18px;padding:20px;margin-bottom:16px}
.amt-honor-block h3{margin:0 0 14px;font-size:16px;font-weight:800;color:var(--amt-brand)}
.amt-honor-list{display:grid;gap:8px}
.amt-honor-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.amt-honor-box{background:#faf7f2;border:1px solid var(--amt-border);border-radius:14px;padding:14px}
.amt-honor-box h4{margin:0 0 10px;font-size:14.5px;font-weight:800;color:var(--amt-ink);text-align:center}
.amt-honor-row{display:flex;align-items:center;gap:10px;padding:7px 4px;border-bottom:1px solid var(--amt-border)}
.amt-honor-row:last-child{border-bottom:0}
.amt-rank{flex-shrink:0;width:26px;height:26px;border-radius:50%;background:#e7ddd3;color:#5c5048;font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center}
.amt-rank.is-gold{background:#f4c84a;color:#5c4400}
.amt-rank.is-silver{background:#c9d2db;color:#394249}
.amt-rank.is-bronze{background:#d9a06b;color:#4a2c0f}
.amt-honor-name{flex-grow:1;font-weight:700;font-size:14px;color:var(--amt-ink)}
.amt-honor-sub{font-size:12px;color:var(--amt-sub);white-space:nowrap}
.amt-honor-value{font-weight:800;color:var(--amt-brand);font-size:13.5px;white-space:nowrap}
.amt-honor-empty{color:var(--amt-sub);font-size:13.5px;text-align:center;margin:0}

.amt-footer{text-align:center;color:var(--amt-sub);font-size:13px;margin-top:30px}

@media(max-width:620px){
  .amt-head{flex-direction:column;text-align:center}
  .amt-filters{flex-direction:column;align-items:stretch}
  .amt-print-btn{margin-inline-start:0}
}

@media print{
  body *{visibility:hidden}
  #assalam-midterm,#assalam-midterm *{visibility:visible}
  #assalam-midterm{position:absolute;inset:0;max-width:100%;padding:0;background:#fff}
  .amt-filters select,.amt-print-btn{display:none}
  .amt-head{background:#fff!important;color:var(--amt-ink)!important;border:2px solid var(--amt-brand)}
  .amt-card,.amt-chart-card,.amt-table-wrap,.amt-subject-card,.amt-honor-block,.amt-honor-box{break-inside:avoid;border:1px solid #ccc}
  .amt-charts{grid-template-columns:repeat(3,1fr)}
  .amt-subject-cards{grid-template-columns:repeat(3,1fr)}
  .amt-honor-groups{grid-template-columns:repeat(2,1fr)}
  @page{size:A4;margin:14mm}
}
