/* نسخه ۶.۲: چند مدرسه، چند کلاس، عکس و مکس و گزارش انفرادی */
body.photo-course{
  --cyan:#b9f227;
  --blue:#ff9a2f;
  --orange:#ff851b;
  --green:#b9f227;
  --yellow:#ffe36c;
  --line:rgba(196,246,75,.18);
  background:
    radial-gradient(circle at 82% 7%,rgba(185,242,39,.15),transparent 28rem),
    radial-gradient(circle at 7% 90%,rgba(255,133,27,.13),transparent 30rem),
    linear-gradient(145deg,#091208,#17220d 46%,#1a1009);
}
body.photo-course .brand-logo,
body.photo-course .nav button.active,
body.photo-course .btn.primary,
body.photo-course .bot-avatar{
  background:linear-gradient(120deg,#b9f227,#ff9a2f);
  color:#172007;
}
body.photo-course .login-art{
  background:
    linear-gradient(0deg,rgba(14,18,7,.94),rgba(10,15,7,.08) 67%),
    url("photo-course-hero-v6.webp") center/cover no-repeat;
}
body.photo-course .hero{
  background:
    linear-gradient(90deg,rgba(12,18,6,.98),rgba(14,21,7,.72) 52%,rgba(10,15,6,.08)),
    url("photo-course-hero-v6.webp") center/cover no-repeat;
}
body.photo-course .sidebar{background:rgba(12,18,7,.92)}
body.photo-course .glass,
body.photo-course .card,
body.photo-course .lesson-block{background:linear-gradient(145deg,rgba(31,43,14,.92),rgba(20,22,11,.87))}
body.photo-course .eyebrow{color:#caff58}
body.photo-course .pill{color:#d8ff83;background:rgba(185,242,39,.11);border-color:rgba(185,242,39,.18)}
body.photo-course .bar-item i{background:linear-gradient(180deg,#caff58,#7faf0b)}
body.photo-course .bar-item:nth-child(even) i{background:linear-gradient(180deg,#ffad47,#ef7010)}
body.photo-course .quick-grid i{color:#caff58;background:rgba(185,242,39,.12)}
body.photo-course input:focus,
body.photo-course select:focus,
body.photo-course textarea:focus{border-color:#b9f227;box-shadow:0 0 0 3px rgba(185,242,39,.09)}

.login-card .stack{grid-template-columns:1fr 1fr}
.login-card .stack label:nth-last-child(-n+2),
.login-card .stack button{grid-column:1/-1}
.login-card .demo span{color:var(--muted)}
.admin-course-select{width:min(230px,25vw);padding:7px 10px;min-height:38px;font-size:11px;font-weight:900}

.photo-note{border-color:rgba(185,242,39,.27);background:linear-gradient(120deg,rgba(185,242,39,.1),rgba(255,133,27,.08));color:#efffc7}
.photo-lesson-cover{position:relative;min-height:480px;border-radius:31px;overflow:hidden;margin:15px 0;border:1px solid rgba(185,242,39,.24);box-shadow:var(--shadow)}
.photo-lesson-cover>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.photo-lesson-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,13,4,.97),rgba(8,13,4,.08) 72%)}
.photo-lesson-cover>div{position:absolute;z-index:2;right:clamp(18px,4vw,42px);left:clamp(18px,4vw,42px);bottom:clamp(18px,4vw,38px);max-width:760px}
.photo-lesson-cover h2{font-size:clamp(31px,5vw,52px);line-height:1.35;margin:7px 0}
.photo-lesson-cover p{font-size:16px;color:#ecffd2}
.photo-map{border-color:rgba(185,242,39,.27);background:rgba(17,25,8,.91)}
.photo-map button:hover{background:#b9f227;border-color:#b9f227;color:#182008}
.photo-block{border-color:rgba(185,242,39,.14)}
.photo-block>img{height:min(58vw,560px);min-height:290px;object-fit:cover}
.photo-block .teen-hook{border-right-color:#b9f227;background:linear-gradient(120deg,rgba(185,242,39,.07),rgba(255,133,27,.055))}
.photo-think{display:grid;grid-template-columns:150px 1fr;gap:13px;align-items:center;padding:15px;margin:14px 0;border-radius:18px;border:1px solid rgba(255,133,27,.24);background:rgba(255,133,27,.06)}
.photo-think>b{color:#ffad47;font-size:18px}
.photo-think p{margin:0!important}
.inline-visual{display:grid;grid-template-columns:minmax(220px,.48fr) 1fr;align-items:center;gap:16px;margin:17px 0;padding:11px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.025)}
.inline-visual img{width:100%;height:260px;object-fit:cover;border-radius:15px}
.inline-visual figcaption{font-size:14px;color:#eaf9d8;line-height:2}
.photo-story-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px;margin:17px 0}
.photo-story-grid figure{margin:0;overflow:hidden;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.025)}
.photo-story-grid img{width:100%;height:330px;object-fit:cover;display:block}
.photo-story-grid figcaption{display:grid;gap:3px;padding:13px}
.photo-story-grid b{color:#caff58;font-size:16px}
.photo-story-grid span{color:var(--muted);font-size:12px}
.photo-info>div{padding:0;overflow:hidden}
.photo-info img{width:100%;height:210px;object-fit:cover;display:block;margin-bottom:12px}
.photo-info b,.photo-info p{display:block;margin-right:14px;margin-left:14px}
.photo-info p{padding-bottom:10px}
.arabic-verse{font-size:20px;color:#ffe36c;line-height:2.2}
.mind-camera-lab{padding:16px;border:1px solid rgba(185,242,39,.24);border-radius:18px;background:rgba(185,242,39,.055)}
.mind-camera-lab>b{color:#caff58;font-size:18px}
.mind-camera-lab ol{margin:9px 0 0;padding-right:22px}
.mind-camera-lab li{margin:5px 0;color:#dce9cb}
.active-cycle{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:15px 0}
.active-cycle>div{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.025)}
.active-cycle img{width:100%;height:155px;object-fit:cover;display:block}
.active-cycle b,.active-cycle span{display:block;padding:0 11px}
.active-cycle b{margin-top:10px;color:#caff58}
.active-cycle span{font-size:10px;color:var(--muted);padding-bottom:11px}
.photo-prompt{border-color:rgba(185,242,39,.24);background:#111808}
.photo-prompt b{color:#caff58}
.contrast-atlas{display:grid;gap:13px;margin:15px 0}
.contrast-atlas article{display:grid;grid-template-columns:minmax(250px,.55fr) 1fr;overflow:hidden;border:1px solid var(--line);border-radius:21px;background:rgba(255,255,255,.025)}
.contrast-atlas article:nth-child(even){grid-template-columns:1fr minmax(250px,.55fr)}
.contrast-atlas article:nth-child(even) img{order:2}
.contrast-atlas img{width:100%;height:290px;object-fit:cover}
.contrast-atlas article>div{padding:18px}
.contrast-atlas b{display:block;color:#caff58;font-size:20px}
.contrast-atlas p{font-size:13px}
.contrast-atlas span{display:block;padding:9px 11px;border-radius:12px;background:rgba(255,133,27,.08);color:#ffd3a3;font-size:11px}
.shoot-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:16px 0}
.shoot-steps>div{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.025)}
.shoot-steps>div>b{position:absolute;z-index:2;right:10px;top:10px;width:31px;height:31px;border-radius:10px;display:grid;place-items:center;background:#b9f227;color:#142006}
.shoot-steps img{width:100%;height:155px;object-fit:cover;display:block}
.shoot-steps h3,.shoot-steps p{margin-right:12px;margin-left:12px}
.shoot-steps h3{margin-top:9px;color:#caff58}
.shoot-steps p{font-size:11px;margin-bottom:12px}
.photo-checklist{display:flex;gap:8px;flex-wrap:wrap;padding:14px;border-radius:17px;border:1px solid rgba(185,242,39,.2);background:rgba(185,242,39,.05)}
.photo-checklist>b{width:100%;color:#caff58}
.photo-checklist span{padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.055);font-size:11px}
.project-mission-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:15px 0}
.project-mission-grid figure{margin:0;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.025)}
.project-mission-grid img{width:100%;height:185px;object-fit:cover}
.project-mission-grid figcaption{display:grid;padding:9px 11px}
.project-mission-grid b{color:#caff58}
.project-mission-grid span{font-size:10px;color:var(--muted)}
.project-steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:9px}
.project-steps li{display:grid;gap:2px;padding:13px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.025)}
.project-steps b{color:#caff58}
.project-steps span{font-size:11px;color:var(--muted)}
.upload-preview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:9px}
.upload-preview-grid figure{margin:0;position:relative;overflow:hidden;border:1px solid var(--line);border-radius:13px;background:#0a1306}
.upload-preview-grid img{width:100%;height:125px;object-fit:cover;display:block}
.upload-preview-grid span{position:absolute;right:5px;bottom:5px;padding:2px 6px;border-radius:999px;background:rgba(0,0,0,.72);font-size:8px}
.submission-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:10px 0}
.submission-gallery img{width:100%;height:130px;object-fit:cover;border-radius:11px;border:1px solid var(--line)}

.performance-hero{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:22px}
.mastery-ring{--p:0%;width:160px;height:160px;border-radius:50%;display:grid;place-items:center;align-content:center;background:radial-gradient(circle at center,#11200b 57%,transparent 58%),conic-gradient(var(--cyan) var(--p),rgba(255,255,255,.07) 0);box-shadow:inset 0 0 30px rgba(185,242,39,.08)}
.mastery-ring strong{font-size:33px;line-height:1.2}
.mastery-ring span{font-size:10px;color:var(--muted)}
.performance-meta{display:grid;gap:8px}
.performance-meta span{display:flex;justify-content:space-between;gap:18px;padding:9px 11px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.03);font-size:11px}
.performance-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:15px}
.radar-card svg{width:100%;height:auto;max-height:430px}
.radar-grid{fill:none;stroke:rgba(170,220,238,.16);stroke-width:1}
.radar-axis{stroke:rgba(170,220,238,.13);stroke-width:1}
.radar-shape{fill:rgba(185,242,39,.2);stroke:var(--cyan);stroke-width:3;filter:drop-shadow(0 0 10px rgba(185,242,39,.24))}
.radar-dot{fill:var(--orange);stroke:#fff;stroke-width:2}
.radar-label{fill:var(--ink);font-family:Tahoma,sans-serif;font-size:11px;font-weight:900;text-anchor:middle}
.skill-bars{display:grid;gap:11px}
.skill-row{display:grid;grid-template-columns:minmax(120px,.55fr) 1fr 44px;align-items:center;gap:9px}
.skill-row>span{font-size:11px;color:#d9e9ef}
.skill-row>i{height:12px;border-radius:999px;background:rgba(255,255,255,.06);overflow:hidden}
.skill-row>i>b{display:block;height:100%;width:var(--w);border-radius:inherit;background:linear-gradient(90deg,var(--orange),var(--cyan))}
.skill-row>strong{text-align:left;color:var(--cyan)}
.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin:0 0 15px}
.insight{padding:18px;border:1px solid var(--line);border-radius:20px;background:var(--panel)}
.insight i{font-style:normal;width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:rgba(185,242,39,.1);font-size:22px}
.insight h3{margin:10px 0 4px}
.insight p{margin:0;color:var(--muted);font-size:12px}
.insight.strong{border-color:rgba(185,242,39,.25)}
.insight.focus{border-color:rgba(255,133,27,.3)}
.plan-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.plan-step{padding:14px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025)}
.plan-step b{display:block;color:var(--cyan)}
.plan-step span{font-size:11px;color:var(--muted)}
.history-list{display:grid;gap:7px}
.history-item{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:9px;padding:10px;border-radius:13px;background:rgba(255,255,255,.03)}
.history-item i{font-style:normal;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:rgba(255,133,27,.1)}
.history-item span{font-size:10px;color:var(--muted)}
.account-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:15px}
.account-card{text-align:center}
.account-avatar{width:96px;height:96px;border-radius:28px;margin:0 auto 12px;font-size:30px}
.account-facts{display:grid;gap:8px;margin-top:15px;text-align:right}
.account-facts span{display:flex;justify-content:space-between;gap:12px;padding:10px;border-radius:12px;background:rgba(255,255,255,.035);color:var(--muted);font-size:11px}
.account-facts b{color:var(--ink)}
.pin-status{padding:12px;border-radius:13px;border:1px solid rgba(185,242,39,.2);background:rgba(185,242,39,.055);color:#dfff9d}
.pin-status.ready{border-color:rgba(96,229,163,.28);color:#baffd7}

body.photo-course #game .game-wrap{border:3px solid rgba(185,242,39,.55);background:linear-gradient(145deg,#172506,#3a2509);box-shadow:0 26px 75px rgba(23,34,4,.38),0 0 0 1px rgba(255,148,44,.22),inset 0 0 34px rgba(185,242,39,.08)}
body.photo-course #game .game-overlay{background:radial-gradient(circle at 50% 35%,rgba(185,242,39,.13),transparent 45%),rgba(12,16,6,.87)}
body.photo-course #game .game-overlay>div{border-color:rgba(185,242,39,.2);background:rgba(18,24,8,.78)}
body.photo-course #game .game-command{border-color:rgba(185,242,39,.32);background:linear-gradient(155deg,rgba(35,49,12,.96),rgba(39,24,8,.96));box-shadow:0 18px 44px rgba(26,37,5,.25)}
body.photo-course #game .game-hud span{background:rgba(15,24,5,.88);border:1px solid rgba(217,255,84,.22);color:#efffc4}
body.photo-course #game .mission-card{border-color:rgba(255,148,44,.35);background:linear-gradient(125deg,rgba(185,242,39,.075),rgba(255,148,44,.075))}
body.photo-course .arcade-controls{grid-template-columns:minmax(80px,126px) minmax(128px,174px) minmax(80px,126px);width:min(94%,470px);gap:9px}
body.photo-course .arcade-controls button{border:2px solid rgba(185,242,39,.48);background:rgba(18,31,7,.94);color:#efffc4;font-size:13px;font-weight:900;box-shadow:0 8px 22px rgba(9,15,2,.3)}
body.photo-course .arcade-controls .scan-action{background:linear-gradient(120deg,#c9ff35,#ff942c);color:#172007;border-color:#f1ffbd;transform:translateY(-2px)}
.photo-stage-pick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:13px 0}.photo-stage-pick button{display:grid;grid-template-columns:42px 1fr;grid-template-rows:auto auto;align-items:center;gap:2px 9px;min-width:0;padding:11px;text-align:right;border:2px solid rgba(185,242,39,.18);border-radius:17px;background:linear-gradient(145deg,rgba(185,242,39,.055),rgba(255,148,44,.045));color:#efffc4;cursor:pointer;transition:.2s}.photo-stage-pick button:hover{transform:translateY(-2px);border-color:rgba(185,242,39,.55)}.photo-stage-pick button.selected{border-color:#d2ff4f;background:linear-gradient(135deg,rgba(185,242,39,.24),rgba(255,148,44,.14));box-shadow:0 0 0 2px rgba(210,255,79,.11),0 12px 28px rgba(13,25,3,.3)}.photo-stage-pick i{grid-row:1/3;width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:linear-gradient(145deg,#d2ff4f,#ff982f);color:#172007;font-style:normal;font-size:22px;font-weight:900}.photo-stage-pick b{font-size:11px}.photo-stage-pick small{color:#b8c999;font-size:8px}.photo-stage-status{display:grid;gap:2px;padding:10px 12px;border:1px solid rgba(255,148,44,.3);border-radius:14px;background:rgba(255,148,44,.075);text-align:right}.photo-stage-status b{color:#ffe1b3;font-size:12px}.photo-stage-status span{color:#c9d9b2;font-size:9px}.photo-start-label{margin:11px 0 -7px!important;color:#efffc4!important;font-weight:900}.photo-result-separator{margin:13px 0 8px;padding:8px;border-top:1px solid rgba(185,242,39,.2);border-bottom:1px solid rgba(185,242,39,.2);color:#d8ff78;font-weight:900}

/* نسخه ۶.۲: پیام‌رسان واکنش‌گرا */
#group .chat-layout{position:relative;height:clamp(560px,calc(100dvh - 250px),720px);min-height:0;grid-template-columns:minmax(250px,285px) minmax(0,1fr);border-color:rgba(185,242,39,.2);background:linear-gradient(145deg,rgba(8,28,35,.97),rgba(8,22,29,.97))}
#group .chat-main,#teacher .chat-single{min-width:0;min-height:0;overflow:hidden;background:radial-gradient(circle at 70% 15%,rgba(185,242,39,.055),transparent 32%),rgba(5,22,30,.82)}
#group .chat-main>header{gap:12px;min-width:0;background:rgba(6,25,32,.9);backdrop-filter:blur(12px)}
.chat-room-title,.chat-room-title>div{min-width:0}.chat-room-title b{font-size:16px}.chat-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.chat-info-btn{display:none}
.chat-side{min-width:0;background:linear-gradient(180deg,rgba(8,34,42,.98),rgba(6,24,31,.98));scrollbar-width:thin}.chat-side-head{display:none;align-items:center;justify-content:space-between;position:sticky;top:-14px;z-index:2;margin:-14px -14px 8px;padding:12px 14px;border-bottom:1px solid var(--line);background:rgba(5,25,32,.95);backdrop-filter:blur(12px)}
.chat-side-backdrop{display:none;position:absolute;inset:0;z-index:8;border:0;background:rgba(1,9,12,.66);backdrop-filter:blur(3px)}
#group .messages,#teacher .messages{min-height:0;padding:18px;background-image:radial-gradient(rgba(185,242,39,.055) 1px,transparent 1px);background-size:24px 24px;overscroll-behavior:contain}
#group .message,#teacher .message{width:max-content;max-width:min(78%,570px);min-width:0}.bubble{max-width:100%;min-width:0;overflow:hidden}.bubble p{overflow-wrap:anywhere}.bubble img,.bubble video,.bubble audio{display:block;width:auto;max-width:100%}.bubble audio{width:min(290px,100%);height:38px}
#group .composer,#teacher .composer{display:grid;grid-template-columns:44px 44px minmax(0,1fr) 74px;align-items:end;gap:7px;padding:10px;background:rgba(4,19,26,.96);backdrop-filter:blur(12px)}
#teacher .composer.teacher-composer{grid-template-columns:44px minmax(0,1fr) 74px}
#group .composer textarea,#teacher .composer textarea{width:100%;min-width:0;min-height:44px;max-height:112px;resize:none;border-radius:15px}.composer .icon-btn{width:44px;height:44px}.composer .chat-send{width:auto;min-width:0;height:44px;padding:0 10px;border-radius:14px}
#teacher .chat-single{height:clamp(540px,calc(100dvh - 205px),730px);min-height:0;padding:0}

@media(max-width:1250px){
  #group .chat-layout{grid-template-columns:minmax(0,1fr)}
  #group .chat-side{display:block;position:absolute;z-index:10;top:0;right:0;bottom:0;width:min(350px,92%);border-left:1px solid var(--line);transform:translateX(105%);visibility:hidden;transition:transform .24s ease,visibility .24s}
  #group .chat-side.open{transform:translateX(0);visibility:visible;box-shadow:-22px 0 55px rgba(0,0,0,.38)}
  #group .chat-side-head{display:flex}
  #group .chat-layout.info-open .chat-side-backdrop{display:block}
  #group .chat-info-btn{display:inline-flex}
}

@media(max-width:900px){
  .active-cycle,.shoot-steps,.project-mission-grid{grid-template-columns:repeat(2,1fr)}
  .performance-hero{grid-template-columns:auto 1fr}.performance-meta{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}
  .performance-layout,.account-layout{grid-template-columns:1fr}
}
@media(max-width:720px){
  .login-card .stack{grid-template-columns:1fr}.login-card .stack>*{grid-column:auto!important}
  .inline-visual,.contrast-atlas article,.contrast-atlas article:nth-child(even){grid-template-columns:1fr}
  .contrast-atlas article:nth-child(even) img{order:0}
  .photo-story-grid{grid-template-columns:1fr}
  .photo-story-grid img{height:270px}
  .photo-info{grid-template-columns:1fr!important}
  .active-cycle,.shoot-steps,.project-mission-grid{grid-template-columns:1fr 1fr}
  .performance-hero{grid-template-columns:1fr;text-align:center;justify-items:center}
  .performance-meta{grid-template-columns:1fr;width:100%}
  .insight-grid,.plan-steps{grid-template-columns:1fr}
  .skill-row{grid-template-columns:105px 1fr 38px}
  .upload-preview-grid,.submission-gallery{grid-template-columns:repeat(2,1fr)}
  .admin-course-select{width:150px}
  body.photo-course .arcade-controls{grid-template-columns:1fr 1.28fr 1fr;width:calc(100% - 14px);gap:5px}
  body.photo-course .arcade-controls button{font-size:10px;min-height:44px;padding:7px 3px}
  #group .chat-layout{height:clamp(520px,calc(100dvh - 220px),640px);border-radius:20px}
  #group .chat-main>header{align-items:flex-start;padding:10px}
  .chat-head-actions{max-width:150px}.chat-head-actions .pill{font-size:8px}
  #group .messages,#teacher .messages{padding:11px}
  #group .message,#teacher .message{max-width:91%}
  #group .composer,#teacher .composer{grid-template-columns:40px 40px minmax(0,1fr) 60px;gap:5px;padding:7px}
  #teacher .composer.teacher-composer{grid-template-columns:40px minmax(0,1fr) 60px}
  .composer .icon-btn{width:40px;height:42px}.composer .chat-send{height:42px;padding:0 6px;font-size:10px}
  #teacher .chat-single{height:clamp(520px,calc(100dvh - 175px),680px)}
  .photo-stage-pick{grid-template-columns:1fr;gap:6px;margin:8px 0}.photo-stage-pick button{padding:7px 9px;grid-template-columns:36px 1fr}.photo-stage-pick i{width:36px;height:36px;border-radius:11px;font-size:18px}.photo-stage-status{padding:7px 9px}.photo-start-label{font-size:10px!important}
}
@media(max-width:430px){
  .active-cycle,.shoot-steps,.project-mission-grid,.project-steps{grid-template-columns:1fr}
  .photo-lesson-cover{min-height:410px}
  .photo-block>img{min-height:230px;height:300px}
  .inline-visual img,.contrast-atlas img{height:230px}
  .mastery-ring{width:140px;height:140px}
}

/* نسخه ۶.۳: پیام‌رسان کامل معلم و پرونده‌های تحلیلی */
.chat-mute-notice{margin:9px 12px 0;padding:10px 13px;border:1px solid rgba(255,102,125,.32);border-radius:14px;background:rgba(255,102,125,.09);color:#ffdce2;font-size:12px}
.composer.composer-muted{opacity:.68;background:rgba(38,18,25,.94)!important}
.composer.composer-muted textarea{cursor:not-allowed}
.file-attachment{display:flex;align-items:center;gap:9px;min-width:min(260px,100%);margin:7px 0;padding:10px 12px;border:1px solid rgba(51,228,218,.22);border-radius:13px;background:rgba(5,19,28,.54);color:var(--ink);text-decoration:none}
.file-attachment:hover{border-color:var(--cyan);background:rgba(51,228,218,.08)}
.file-attachment i{font-style:normal;font-size:22px}.file-attachment span{display:grid;min-width:0}.file-attachment b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-attachment small{color:var(--muted)}
.message-sender,.link-button{border:0;padding:0;background:transparent;color:var(--ink);font-weight:900;cursor:pointer;text-align:right}.message-sender:hover,.link-button:hover{color:var(--cyan);text-decoration:underline}.teacher-name{color:#ffe06d}

.teacher-messenger{height:clamp(620px,calc(100dvh - 205px),790px);min-height:0;margin:0;padding:0;display:grid;grid-template-columns:minmax(270px,320px) minmax(0,1fr);overflow:hidden;background:linear-gradient(145deg,rgba(7,28,38,.98),rgba(5,20,31,.97));border-color:rgba(51,228,218,.19)}
.teacher-room-panel{min-width:0;min-height:0;padding:13px;border-left:1px solid var(--line);display:grid;grid-template-rows:auto auto 1fr;gap:10px;background:linear-gradient(180deg,rgba(8,36,46,.98),rgba(6,24,34,.98))}
.teacher-room-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:4px;border:1px solid var(--line);border-radius:14px;background:rgba(0,0,0,.18)}
.teacher-room-tabs button{min-height:38px;border:0;border-radius:10px;background:transparent;color:var(--muted);font-weight:900;cursor:pointer}
.teacher-room-tabs button.active{color:#06131d;background:linear-gradient(120deg,var(--cyan),#7bc8ff)}
.teacher-room-panel>input{min-height:43px}
.teacher-room-list{min-height:0;overflow:auto;display:grid;align-content:start;gap:6px;padding-left:2px}
.teacher-room-row{display:grid;grid-template-columns:minmax(0,1fr) 34px;align-items:center;border:1px solid transparent;border-radius:15px;background:rgba(255,255,255,.025);transition:.18s}
.teacher-room-row:hover,.teacher-room-row.selected{border-color:rgba(51,228,218,.25);background:rgba(51,228,218,.075)}
.teacher-room-enter{min-width:0;padding:9px;border:0;background:transparent;display:flex;align-items:center;gap:9px;cursor:pointer;text-align:right}
.teacher-room-enter>i{width:39px;height:39px;flex:0 0 auto;display:grid;place-items:center;border-radius:13px;background:color-mix(in srgb,var(--room-color,#33e4da) 20%,#0b2938);color:var(--room-color,#33e4da);font-style:normal}
.teacher-room-enter>span{min-width:0;display:grid}.teacher-room-enter b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teacher-room-enter small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:9px}
.teacher-room-report{width:30px;height:30px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.04);color:var(--cyan);cursor:pointer}
.teacher-chat-panel{min-width:0;min-height:0;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto auto;background:radial-gradient(circle at 72% 12%,rgba(51,228,218,.06),transparent 34%)}
.teacher-chat-head{min-width:0;padding:11px 14px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:10px;background:rgba(5,24,33,.9);backdrop-filter:blur(12px)}
.teacher-chat-title{min-width:0;display:grid}.teacher-chat-title>b{font-size:15px}.teacher-chat-title small{color:var(--muted);font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teacher-room-actions{margin-right:auto;display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.teacher-room-members{padding:7px 12px;border-bottom:1px solid var(--line);display:flex;gap:6px;overflow:auto;background:rgba(255,255,255,.018)}
.teacher-member{flex:0 0 auto;display:flex;align-items:center;gap:5px;padding:4px 5px 4px 7px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.035)}
.teacher-member>button:first-child{border:0;background:transparent;font-size:10px;font-weight:900;cursor:pointer}.teacher-member.muted{border-color:rgba(255,102,125,.27);opacity:.78}
.mute-toggle{min-height:27px;padding:2px 7px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.04);font-size:8px;font-weight:900;cursor:pointer}.mute-toggle.active{color:#ffd9df;border-color:rgba(255,102,125,.32);background:rgba(255,102,125,.12)}
.teacher-messages{min-height:0;padding:16px;background-image:radial-gradient(rgba(51,228,218,.055) 1px,transparent 1px);background-size:24px 24px;overscroll-behavior:contain}
.teacher-messages .message{width:max-content;max-width:min(78%,600px)}.teacher-messages .message.mine{align-self:flex-start}.teacher-messages .bubble{min-width:0;max-width:100%;overflow:hidden}.teacher-messages .bubble p{overflow-wrap:anywhere}.teacher-messages .bubble img,.teacher-messages .bubble video{display:block;max-width:100%;width:auto}.teacher-messages .bubble audio{display:block;width:min(310px,100%);height:39px}
.teacher-attachment{margin:0 10px 7px;padding:7px 9px;border:1px solid rgba(51,228,218,.24);border-radius:12px;background:rgba(51,228,218,.065);display:flex;align-items:center;justify-content:space-between;gap:8px}.teacher-attachment span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}
.teacher-admin-composer{display:grid;grid-template-columns:44px minmax(0,1fr) 76px;align-items:end;gap:7px;padding:9px;background:rgba(4,18,27,.96)}.teacher-admin-composer textarea{width:100%;min-width:0;min-height:44px;max-height:112px;resize:none;border-radius:14px}.teacher-admin-composer .chat-send{width:auto;height:44px;padding:0 11px}

.teacher-report-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.teacher-report-layout>.card{margin:0}.teacher-report-layout+.card{margin-top:15px}
.teacher-weakness-grid,.teacher-comparison-list{display:grid;gap:8px}
.teacher-weakness{display:grid;grid-template-columns:35px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.026)}
.teacher-weakness>i{width:33px;height:33px;display:grid;place-items:center;border-radius:11px;background:rgba(51,228,218,.11);color:var(--cyan);font-style:normal;font-weight:900}.teacher-weakness>div{min-width:0;display:grid}.teacher-weakness small{color:var(--muted);font-size:9px}.teacher-weakness strong{color:var(--cyan);font-size:17px}.teacher-weakness.critical{border-color:rgba(255,102,125,.23)}.teacher-weakness.critical>i,.teacher-weakness.critical strong{color:#ff9eae;background:rgba(255,102,125,.09)}
.teacher-comparison-card{padding:12px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.026)}.teacher-comparison-card>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.teacher-comparison-card>div small{color:var(--muted)}.teacher-comparison-card>strong{display:block;margin:3px 0 7px;color:var(--cyan);font-size:24px}
.teacher-metric-line{display:grid;grid-template-columns:minmax(90px,1fr) minmax(90px,2fr) 39px;align-items:center;gap:8px;margin:7px 0;font-size:10px}.teacher-metric-line>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teacher-metric-line>i{height:7px;overflow:hidden;border-radius:99px;background:rgba(255,255,255,.07);font-style:normal}.teacher-metric-line>i b{display:block;width:var(--w);height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--cyan),#6fa8ff)}.teacher-metric-line>strong{text-align:left;color:#dffbff}
.teacher-question-analysis table{min-width:880px}.error-rate{display:inline-flex;padding:3px 7px;border-radius:8px;color:#ffdbe1;background:rgba(255,102,125,.11);font-weight:900}
.teacher-score-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin:13px 0}.teacher-score-cards>div{padding:12px;border:1px solid var(--line);border-radius:15px;background:linear-gradient(145deg,rgba(51,228,218,.065),rgba(255,255,255,.02));display:grid}.teacher-score-cards span,.teacher-score-cards small{color:var(--muted);font-size:9px}.teacher-score-cards strong{color:var(--cyan);font-size:23px}
.teacher-report-wide{width:min(1060px,100%)}.teacher-report-modal h2{margin:3px 0}.teacher-report-summary{display:flex;align-items:center;justify-content:space-between;gap:12px}.teacher-report-summary>div{display:flex;align-items:center;gap:10px}.teacher-report-summary p{margin:0;color:var(--muted)}
.teacher-report-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:13px 0}.teacher-report-columns>article,.teacher-report-modal>article{padding:13px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.024)}.teacher-report-columns h3,.teacher-report-modal>article h3{margin:0 0 9px}
.teacher-wrong-item{display:grid;gap:3px;padding:9px;border-bottom:1px solid var(--line)}.teacher-wrong-item:last-child{border:0}.teacher-wrong-item span{color:#ffd7a6;font-size:11px}.teacher-wrong-item small{color:var(--muted)}
.teacher-report-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end;margin-top:14px}.muted-pill{color:#ffd9e0;border-color:rgba(255,102,125,.26);background:rgba(255,102,125,.09)}

@media(max-width:1050px){
  .teacher-messenger{grid-template-columns:minmax(235px,270px) minmax(0,1fr)}
  .teacher-room-actions .btn{font-size:9px;padding:4px 7px}
  .teacher-report-layout{grid-template-columns:1fr}
}
@media(max-width:720px){
  .topbar .build-badge,.topbar .sync-status{display:none}
  .teacher-messenger{height:auto;display:grid;grid-template-columns:1fr;overflow:visible}
  .teacher-room-panel{height:225px;border-left:0;border-bottom:1px solid var(--line)}
  .teacher-chat-panel{height:clamp(530px,72dvh,650px)}
  .teacher-chat-head{align-items:flex-start}.teacher-room-actions{max-width:150px}
  .teacher-room-members{padding:5px 8px}.teacher-member{padding:3px 4px}.mute-toggle{font-size:7px}
  .teacher-messages{padding:10px}.teacher-messages .message{max-width:92%}
  .teacher-admin-composer{grid-template-columns:40px minmax(0,1fr) 62px;gap:5px;padding:7px}.teacher-admin-composer .chat-send{height:42px;padding:0 6px;font-size:10px}
  .teacher-report-columns{grid-template-columns:1fr}.teacher-report-summary{align-items:flex-start}.teacher-report-summary>div{align-items:flex-start}.teacher-score-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:430px){
  .teacher-chat-title small{max-width:170px}.teacher-room-actions{max-width:110px}.teacher-room-actions .btn{font-size:0}.teacher-room-actions .btn:first-letter{font-size:13px}
  .teacher-report-summary{display:grid}.teacher-metric-line{grid-template-columns:90px minmax(70px,1fr) 35px}.teacher-report-actions .btn{flex:1}
}
