.btn-student-login{border:0;border-radius:999px;padding:11px 16px;background:#17243d;color:#fff;font:700 12px/1.2 "Plus Jakarta Sans",sans-serif;cursor:pointer;white-space:nowrap;box-shadow:0 6px 16px #101b3030}.btn-student-login:hover{background:#263e66;transform:translateY(-1px)}
.leader-avatar{display:grid;place-items:center;flex:0 0 50px;width:50px;height:50px;border-radius:50%;background:linear-gradient(145deg,#fff1cf,#ffd575);font-size:26px;border:3px solid #fff;box-shadow:0 4px 16px #0c183329}.student-hero-line{align-items:center}.student-text-group{flex:1}
.portal-overlay{position:fixed;inset:0;z-index:10000;background:#09111edb;backdrop-filter:blur(7px);display:none;align-items:center;justify-content:center;padding:20px}.portal-overlay.open{display:flex}.portal-window{position:relative;width:min(1040px,100%);max-height:min(92vh,900px);overflow:auto;border-radius:26px;background:#f4f7fd;box-shadow:0 32px 110px #02071380;color:#15213a}.portal-close{position:sticky;float:right;top:12px;margin:12px 12px -50px 0;z-index:3;border:0;width:38px;height:38px;border-radius:50%;background:#e5eaf3;color:#25334c;font-size:19px;cursor:pointer}.portal-login-head{text-align:center;padding:48px 28px 12px}.portal-emoji{font-size:44px}.portal-kicker{font-size:11px;letter-spacing:.13em;font-weight:900;color:#e16b22;margin:0 0 8px}.portal-login-head h2,.dash-top h2{font-size:clamp(23px,4vw,34px);line-height:1.15;margin:0 0 8px;color:#16213b}.portal-login-head>p:last-child{color:#6d7890;margin:0}.portal-form{display:grid;gap:14px;max-width:440px;margin:20px auto 10px;padding:22px;background:#fff;border:1px solid #e5eaf3;border-radius:18px}.portal-form label{display:grid;gap:7px;font-size:12px;font-weight:800;color:#536079}.portal-form input,.portal-form select,.desk-controls input,.override-select{box-sizing:border-box;width:100%;min-height:44px;padding:10px 12px;border:1px solid #dce3ef;border-radius:11px;background:#fbfcfe;color:#1b2842;font:500 14px/1.4 "Plus Jakarta Sans",sans-serif;outline:none}.portal-form input:focus,.desk-controls input:focus{border-color:#6699f5;box-shadow:0 0 0 3px #679afb20}.portal-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:12px;padding:12px 17px;font-size:13px;font-weight:900;cursor:pointer;transition:.18s}.portal-btn.primary{color:white;background:linear-gradient(110deg,#f58e24,#e55923);box-shadow:0 8px 18px #df6b2930}.portal-btn.primary:hover{filter:brightness(1.04);transform:translateY(-1px)}.portal-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.portal-btn.soft{color:#374965;background:#eaf0f8}.admin-entry{display:flex;margin:12px auto 0;color:#59657b;background:#e9edf5}.portal-demo-note{text-align:center;font-size:11px;color:#7b8498;padding:14px 24px 24px;margin:0}.portal-error{color:#c63c32;font-size:12px;margin:0}.portal-dashboard,.student-dash,.onboarding{padding:38px 30px 8px}.dash-top,.dash-card-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.dash-top{margin:0 0 22px}.dash-top h2{margin:0}.dash-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}.dash-metrics>div,.student-stats>div{background:white;border:1px solid #e5eaf3;border-radius:16px;padding:16px;display:grid;gap:5px}.dash-metrics strong{font-size:26px;color:#e96d25}.dash-metrics span,.student-stats span{font-size:11px;color:#758098;font-weight:700}.admin-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.dash-card{padding:20px;margin:13px 0;background:#fff;border:1px solid #e4eaf3;border-radius:18px;box-shadow:0 8px 24px #263b5b08}.dash-card h3{margin:0;font-size:17px;color:#202d48}.portal-form.compact{max-width:none;margin:16px 0 0;padding:0;border:0;border-radius:0;grid-template-columns:1fr 1fr}.portal-form.compact>label:only-of-type,.portal-form.compact>button{grid-column:1/-1}.portal-notice{margin-top:14px;padding:12px;border-radius:11px;background:#fff8e8;color:#805a21;font-size:11px;line-height:1.6}.credential-card{margin-top:14px;padding:15px;border:1px solid #bdebd2;border-radius:14px;background:#effcf4;display:grid;gap:7px}.credential-card code{font-size:17px;font-weight:900;color:#116a3d}.credential-card small{color:#62776a;line-height:1.5}.credential-card .portal-btn{justify-self:start}.revision-card{padding:13px 0;border-bottom:1px solid #edf0f5;font-size:12px}.revision-card:last-child{border:0}.revision-card p{margin:6px 0;color:#5e6980}.revision-card small{display:block;color:#66728a;line-height:1.5}.portal-btn.mini{padding:8px 12px;margin-top:9px;font-size:11px}.revision-card.approved{opacity:.7}.empty-cell{padding:18px;color:#8a93a6;font-size:12px}.student-table-wrap{overflow:auto;margin-top:14px}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}th{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#8490a6;padding:10px;border-bottom:1px solid #e8edf4}td{padding:12px 10px;border-bottom:1px solid #eff2f6;color:#34415c}td small{display:block;margin-top:4px;color:#8992a5}.flag{color:#a66a04;font-weight:800}.override-select{min-height:34px;padding:6px;font-size:11px}.onboard-progress{height:8px;background:#e4eaf4;border-radius:8px;overflow:hidden}.onboard-progress span{display:block;height:100%;background:linear-gradient(90deg,#faaf3f,#ed6328);border-radius:8px;transition:width .25s}.question-count{text-align:center;color:#8992a4;font-weight:800;font-size:11px;margin:10px}.question-card{max-width:650px;margin:20px auto;padding:25px;background:white;border:1px solid #e6ebf3;border-radius:20px;text-align:center}.question-emoji{font-size:38px}.question-card h3{font-size:22px;color:#202d48;margin:10px auto 20px}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.onboard-choice{display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;padding:13px 14px;border:1px solid #e1e7f0;background:#fbfcfe;border-radius:12px;color:#394761;font-size:12px;font-weight:750;cursor:pointer}.onboard-choice span{font-size:17px;color:#9aa5b7}.onboard-choice.chosen{border-color:#ef8c37;background:#fff6eb;color:#a95019;box-shadow:0 0 0 2px #f09a4520}.onboard-actions{display:flex;justify-content:space-between;max-width:650px;margin:0 auto}.target-banner{padding:23px;border-radius:20px;color:#fff;background:radial-gradient(circle at 90% 0,#735ae1,#1a2b55 58%,#121c36);box-shadow:0 14px 32px #1723432a}.target-banner>span{font-size:10px;letter-spacing:.13em;font-weight:900;color:#d8e5ff}.target-banner h1{font-size:clamp(22px,4vw,35px);line-height:1.1;margin:11px 0;color:white}.target-banner p{margin:0;color:#ccd9f6;font-size:12px}.student-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin:13px 0}.student-stats b{font-size:19px;color:#263958}.student-stats>div:first-child b{color:#e76b2a}.desk-card{background:linear-gradient(135deg,#fff,#f2f8ff)}.dash-card-title>span,.focus-live{font-size:11px;color:#78849b;font-weight:700}.focus-live.on{color:#198d5b}.desk-controls{display:grid;grid-template-columns:1fr auto auto;align-items:end;gap:14px;margin-top:16px}.desk-controls label{font-size:12px;font-weight:800;color:#536079}.desk-controls input{margin-top:8px}.desk-timer{font-variant-numeric:tabular-nums;font-size:22px;font-weight:900;color:#eb7028;padding:10px}.portal-btn.big{min-height:46px}.weekly-plan{display:grid;gap:8px;margin-top:16px}.plan-task{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #edf0f5;border-radius:12px;color:#40506c;font-size:12px}.plan-task input{accent-color:#20a36a;width:17px;height:17px}.plan-task.done>span:last-of-type{text-decoration:line-through;color:#8b96a8}.plan-day{min-width:84px;font-weight:900;color:#e3702a}.new-tag{margin-left:auto;color:#b1531c;background:#fff0dd;border-radius:20px;padding:5px 8px;font-size:9px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mistake-row{display:grid;grid-template-columns:1fr 1fr 95px 1fr;gap:8px;position:relative}.mistake-row input,.mistake-row select{min-width:0;padding:9px;border:1px solid #dce3ef;border-radius:10px;background:#fbfcfe;color:#42516c;font:500 11px/1.4 "Plus Jakarta Sans",sans-serif}.remove-mistake{position:absolute;right:-7px;top:-8px;border:0;border-radius:50%;background:#fae5e5;color:#b53d3d;width:22px;height:22px;cursor:pointer}.exam-card .portal-form{gap:12px}.student-podium{display:grid;gap:9px;margin-top:14px}.podium-person{display:grid;grid-template-columns:48px 1fr auto;gap:11px;align-items:center;background:#f8faff;border:1px solid #e8edf5;border-radius:13px;padding:11px}.podium-person .leader-avatar{width:42px;height:42px;flex-basis:42px;font-size:21px}.podium-person>div{display:grid;gap:5px;min-width:0}.podium-person b{font-size:12px;color:#24334f}.podium-person b small{font-size:10px;color:#77849a;font-weight:600}.podium-person>div>span{font-size:10px;color:#61708b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.podium-person>strong{font-variant-numeric:tabular-nums;color:#e36f26;font-size:13px}.student-bottom-count{text-align:center;margin:18px 0 0;padding:21px;border-radius:19px;background:linear-gradient(130deg,#182749,#304978);color:white;display:grid;gap:6px}.student-bottom-count span{font-size:12px;color:#cedbfa;font-weight:800}.student-bottom-count b{font-size:24px}.student-bottom-count small{color:#c3d2f2}.portal-toast{position:fixed;z-index:11000;left:50%;bottom:24px;transform:translate(-50%,20px);opacity:0;padding:12px 18px;background:#17243d;color:#fff;border-radius:12px;font-size:12px;font-weight:800;pointer-events:none;transition:.22s;box-shadow:0 12px 35px #101b3040}.portal-toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:700px){.portal-overlay{padding:8px;align-items:flex-start}.portal-window{max-height:96vh;border-radius:18px}.portal-dashboard,.student-dash,.onboarding{padding:34px 15px 4px}.admin-columns{grid-template-columns:1fr}.dash-metrics{gap:7px}.dash-metrics>div,.student-stats>div{padding:11px}.dash-metrics strong{font-size:20px}.dash-metrics span,.student-stats span{font-size:9px}.student-stats b{font-size:15px}.choice-grid{grid-template-columns:1fr}.question-card{padding:20px 14px}.desk-controls{grid-template-columns:1fr 1fr}.desk-controls label{grid-column:1/-1}.desk-timer{font-size:19px}.portal-btn.big{font-size:11px;padding:10px}.form-grid{grid-template-columns:1fr 1fr}.mistake-row{grid-template-columns:1fr 1fr}.mistake-row input,.mistake-row select{font-size:10px}.student-table-wrap{max-width:calc(100vw - 80px)}.plan-day{min-width:70px}.plan-task{font-size:11px;gap:8px}.dash-card{padding:15px}.podium-person{grid-template-columns:40px 1fr auto;padding:9px;gap:8px}.podium-person .leader-avatar{width:36px;height:36px;flex-basis:36px;font-size:18px}.podium-person>strong{font-size:11px}.btn-student-login{padding:9px 11px;font-size:10px}}

.target-input-label{display:grid;gap:8px;margin:16px 0 0;text-align:left;color:#56637a;font-size:12px;font-weight:800}.target-input-label input{width:100%;box-sizing:border-box;border:1px solid #dce3ef;border-radius:11px;padding:12px;font:500 13px/1.4 'Plus Jakarta Sans',sans-serif}

.level-entry-card{max-width:900px;margin:24px auto;padding:22px;display:flex;align-items:center;gap:15px;background:white;border:1px solid #e3eaf5;border-radius:18px;box-shadow:0 12px 34px #1c34510c}.level-entry-card>span{font-size:32px}.level-entry-card>div{flex:1;display:grid;gap:5px}.level-entry-card b{color:#21304b;font-size:15px}.level-entry-card small{color:#768198;font-size:12px;line-height:1.5}.level-entry-card .portal-btn{white-space:nowrap}.progress-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:15px 0}.progress-summary>div{display:grid;gap:4px;padding:14px;border-radius:13px;background:#f4f7fc}.progress-summary b{font-size:23px;color:#273958}.progress-summary small{font-size:11px;color:#78849a}.progress-summary .up b{color:#168a58}.progress-summary .down b{color:#c84444}.progress-summary .neutral b{color:#8692a5}.progress-chart{width:100%;height:160px;overflow:visible;margin:7px 0}.progress-chart line{stroke:#e2e8f1;stroke-width:1}.progress-chart polyline{fill:none;stroke:#ed7e2c;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.progress-chart circle{fill:#fff;stroke:#ed7e2c;stroke-width:3}.chart-legend{display:flex;gap:7px;overflow:auto}.chart-legend span{white-space:nowrap;border-radius:20px;padding:6px 9px;background:#fff2e5;color:#8a541e;font-size:10px}.weekly-report-list{display:grid;gap:8px}.weekly-report-row{display:flex;align-items:center;gap:9px;padding:10px 0;border-bottom:1px solid #eef1f6}.weekly-report-row>div{flex:1;display:grid;gap:4px}.weekly-report-row small{font-size:10px;color:#8993a5}.resource-form{grid-template-columns:1fr 1fr 1fr!important}.resource-admin-list,.resource-grid{display:grid;gap:8px;margin-top:14px}.resource-admin-list article{display:grid;grid-template-columns:130px 1fr auto auto;align-items:center;gap:10px;padding:10px;border-radius:10px;background:#f6f8fc;font-size:11px}.resource-admin-list article b{color:#d76a26}.resource-admin-list article span{color:#56637b}.resource-admin-list article a,.resource-grid article a{color:#3977c4;font-weight:800;text-decoration:none}.resource-admin-list article button{border:0;background:#ffeded;color:#b63838;border-radius:8px;width:27px;height:27px;cursor:pointer}.resource-grid{grid-template-columns:repeat(2,1fr)}.resource-grid article{display:grid;gap:6px;padding:13px;background:#f7f9fd;border:1px solid #e9eef5;border-radius:13px}.resource-grid article>span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#df752e;font-weight:900}.resource-grid article b{color:#2e3e5a;font-size:12px}.resource-grid article small{color:#818da3;font-size:10px}@media(max-width:700px){.level-entry-card{align-items:flex-start;flex-wrap:wrap}.level-entry-card>div{min-width:calc(100% - 60px)}.level-entry-card .portal-btn{width:100%}.weekly-report-row{flex-wrap:wrap}.weekly-report-row>div{min-width:100%}.resource-form{grid-template-columns:1fr 1fr!important}.resource-grid{grid-template-columns:1fr}.resource-admin-list article{grid-template-columns:1fr auto}.resource-admin-list article span{grid-column:1/-1;grid-row:2}.progress-summary b{font-size:19px}}

.progress-summary{grid-template-columns:repeat(3,1fr)}

.schedule-admin-form{grid-template-columns:repeat(4,1fr)!important;align-items:end}.schedule-admin-form button{grid-column:auto!important}.weekly-schedule{padding:20px}.schedule-day-tabs{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;margin:16px 0 12px}.schedule-day-btn{min-height:44px;border:1px solid #e5eaf2;border-radius:12px;background:#f8faff;color:#64718a;font:800 11px "Plus Jakarta Sans",sans-serif;cursor:pointer;position:relative}.schedule-day-btn.active{background:#17284b;border-color:#17284b;color:#fff;box-shadow:0 6px 14px #17284b2b}.schedule-day-btn.today:not(.active){border-color:#ed8a36;color:#d76b27}.schedule-day-btn i{display:block;font-style:normal;font-size:8px;color:#e99a4d;margin-top:2px}.study-day-summary{padding:11px 13px;border-radius:11px;background:#fff8ec;color:#88602d;font-size:11px;margin:8px 0 12px}.study-day-summary b{color:#bb631f}.schedule-table{display:grid;gap:7px}.schedule-table-head,.study-row{display:grid;grid-template-columns:80px minmax(160px,1fr) 112px 30px;align-items:center;gap:12px}.schedule-table-head{padding:0 12px 5px;color:#929caf;font-size:10px;font-weight:800}.study-row{padding:10px 12px;border:1px solid #e9eef5;border-radius:13px;background:#fff}.study-row.done{background:#f1fbf5;border-color:#ccebd8}.study-row.running{border-color:#f4a054;background:#fff9f1}.study-row time{font-size:12px;font-weight:900;color:#e3742c;font-variant-numeric:tabular-nums}.study-topic{display:grid;gap:4px}.study-topic b{font-size:12px;color:#293955}.study-topic span{font-size:11px;color:#728097}.study-start-btn{border:0;border-radius:10px;background:#fff0df;color:#b5571b;padding:9px 8px;font-size:10px;font-weight:900;white-space:nowrap;cursor:pointer}.study-start-btn:disabled{opacity:.6;cursor:default}.study-start-btn.done-btn{background:#e0f5e8;color:#258251}.study-done-check{width:17px;height:17px;accent-color:#20935d;justify-self:center}.schedule-empty{padding:23px 12px;border:1px dashed #dce4ee;border-radius:13px;color:#7c889d;text-align:center;font-size:12px}.study-now-banner{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;margin:8px 0 12px;padding:12px;border-radius:12px;color:#14623e;background:#eaf9f0;font-size:11px;font-weight:850}.study-now-banner b{font-size:18px;font-variant-numeric:tabular-nums}.schedule-source-note{display:block;margin-top:13px;color:#8a94a8;font-size:10px}.schedule-admin-table{display:grid;gap:6px;margin-top:14px}.schedule-admin-table>div{display:grid;grid-template-columns:180px 1fr 30px;align-items:center;gap:12px;padding:10px;border-radius:10px;background:#f7f9fc;font-size:11px}.schedule-admin-table b{color:#d96e2b}.schedule-admin-table span{color:#53617a}.schedule-admin-table button{width:26px;height:26px;border:0;border-radius:8px;background:#ffeded;color:#b73838;cursor:pointer}.schedule-revision-tasks{display:grid;gap:8px;margin:12px 0}.schedule-revision-tasks>b{font-size:12px;color:#364761}.schedule-revision-tasks label{display:flex;align-items:center;gap:9px;padding:9px 11px;border-radius:10px;background:#fff5e9;font-size:11px;color:#53617a}.schedule-revision-tasks input{accent-color:#e77a2f}.schedule-revision-tasks span{flex:1}
@media(max-width:700px){.schedule-day-tabs{gap:4px}.schedule-day-btn{min-height:40px;font-size:10px;border-radius:9px}.schedule-table-head,.study-row{grid-template-columns:54px minmax(105px,1fr) 76px 21px;gap:6px}.schedule-table-head{font-size:9px;padding:0 6px 5px}.study-row{padding:9px 6px}.study-row time,.study-topic b{font-size:10px}.study-topic span{font-size:9px}.study-start-btn{font-size:9px;padding:8px 4px}.study-done-check{width:15px;height:15px}.schedule-admin-form{grid-template-columns:1fr 1fr!important}.schedule-admin-form button{grid-column:1/-1!important}.schedule-admin-table>div{grid-template-columns:110px 1fr 25px;gap:6px;font-size:9px}.study-now-banner{grid-template-columns:1fr auto}.study-now-banner .portal-btn{grid-column:1/-1}}


/* =========================================================================
   YÖNETİCİ PANELİ (ADMIN DASHBOARD) YENİ SEKMELER & DETAYLI STİLLER
   ========================================================================= */

.admin-tabs-nav { display: none !important; 
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 22px;
  padding: 6px;
  background: #edf2f9;
  border-radius: 14px;
}

.admin-tab-btn {
  border: 0;
  border-radius: 10px;
  padding: 10px 16px;
  background: transparent;
  color: #475569;
  font: 700 12px/1.2 "Plus Jakarta Sans", sans-serif;
  cursor: pointer;
  transition: all 0.18s ease;
  white-space: nowrap;
}

.admin-tab-btn:hover {
  background: rgba(255, 255, 255, 0.7);
  color: #0f172a;
}

.admin-tab-btn.active {
  background: #17243d;
  color: #ffffff;
  box-shadow: 0 4px 14px rgba(23, 36, 61, 0.25);
}

.admin-tab-content-area {
  animation: fadeInAdmin 0.2s ease-out;
}

@keyframes fadeInAdmin {
  from { opacity: 0; transform: translateY(4px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Dashboard Sekmesi Metrikleri & Canlı Liste */
.metric-box {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  padding: 18px;
  display: grid;
  gap: 4px;
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.03);
}

.metric-box strong {
  font-size: 28px;
  font-weight: 800;
  color: #0f172a;
}

.metric-box span {
  font-size: 11px;
  font-weight: 700;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.metric-box.green strong { color: #16a34a; }
.metric-box.orange strong { color: #ea580c; }
.metric-box.blue strong { color: #2563eb; }

.admin-dashboard-grid {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 16px;
  margin-top: 10px;
}

.live-active-roster {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 12px;
}

.active-student-chip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
}

.live-dot-pulse {
  width: 10px;
  height: 10px;
  background: #22c55e;
  border-radius: 50%;
  box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.7);
  animation: pulseBeacon 1.5s infinite;
}

.active-chip-time {
  font-variant-numeric: tabular-nums;
  font-size: 13px;
  font-weight: 800;
  color: #ea580c;
  background: #fff7ed;
  border: 1px solid #ffedd5;
  padding: 4px 10px;
  border-radius: 8px;
}

/* Öğrenci Tablosu Rozetleri */
.tier-pill-badge {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  background: #eef2ff;
  color: #4338ca;
}

.flag-warning {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  background: #fef3c7;
  color: #b45309;
}

.badge-pending {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  background: #f1f5f9;
  color: #64748b;
}

.badge-success {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  background: #dcfce7;
  color: #15803d;
}

.admin-override-select {
  padding: 7px 10px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  font-size: 12px;
  background: #ffffff;
  color: #1e293b;
  cursor: pointer;
  outline: none;
}

/* Ders Programları Sekmesi Stilleri */
.schedule-filter-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 12px !important;
  margin-bottom: 16px !important;
}

.overflow-warning-banner {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 14px 16px;
  background: #fffbeb;
  border: 1.5px solid #fde68a;
  border-radius: 12px;
  color: #92400e;
  font-size: 12px;
  margin-bottom: 16px;
  box-shadow: 0 4px 12px rgba(245, 158, 11, 0.08);
}

.overflow-warning-banner b {
  color: #b45309;
  font-size: 13px;
}

.overflow-warning-banner small {
  color: #a16207;
}

.add-task-grid {
  display: grid;
  grid-template-columns: 120px 110px 110px 1fr 1fr auto !important;
  gap: 10px !important;
  align-items: end !important;
  margin-bottom: 20px !important;
}

.admin-table-head {
  display: grid;
  grid-template-columns: 150px 90px 140px 1fr 40px;
  gap: 12px;
  padding: 8px 14px;
  font-size: 11px;
  font-weight: 800;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.admin-schedule-row {
  display: grid;
  grid-template-columns: 150px 90px 140px 1fr 40px;
  align-items: center;
  gap: 12px;
  padding: 10px 14px;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  font-size: 12px;
  transition: background 0.15s;
}

.admin-schedule-row:hover {
  background: #f8fafc;
}

.duration-badge {
  display: inline-flex;
  align-items: center;
  padding: 3px 8px;
  border-radius: 6px;
  font-size: 11px;
  font-weight: 700;
  background: #eff6ff;
  color: #1d4ed8;
  white-space: nowrap;
}

.btn-remove-task {
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 6px;
  background: #fee2e2;
  color: #ef4444;
  font-weight: 800;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.15s;
}

.btn-remove-task:hover {
  background: #fecaca;
  color: #b91c1c;
  transform: scale(1.05);
}

/* Kaynak Havuzu Sekmesi */
.resource-add-grid {
  display: grid;
  grid-template-columns: 130px 120px 130px 140px 1fr 1fr auto !important;
  gap: 10px !important;
  align-items: end !important;
  margin-bottom: 20px !important;
}

.resource-row-card {
  display: grid;
  grid-template-columns: 110px 100px 1fr 140px 80px 32px;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  font-size: 12px;
}

.res-tier-tag {
  font-size: 10px;
  font-weight: 700;
  padding: 3px 8px;
  border-radius: 6px;
  background: #f1f5f9;
  color: #475569;
  white-space: nowrap;
}

.res-type-tag {
  font-size: 10px;
  font-weight: 700;
  padding: 3px 8px;
  border-radius: 6px;
  background: #e0f2fe;
  color: #0369a1;
  white-space: nowrap;
}

.res-title {
  font-weight: 700;
  color: #0f172a;
}

.res-meta {
  font-size: 11px;
  color: #64748b;
}

.res-link {
  font-size: 11px;
  font-weight: 700;
  color: #2563eb;
  text-decoration: none;
}

.btn-del-res {
  width: 26px;
  height: 26px;
  border: 0;
  border-radius: 6px;
  background: #fee2e2;
  color: #dc2626;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

.btn-del-res:hover {
  background: #fecaca;
}

.audit-log-section {
  margin-top: 24px;
  padding-top: 18px;
  border-top: 1px solid #e2e8f0;
}

.audit-log-section h4 {
  font-size: 13px;
  font-weight: 800;
  color: #334155;
  margin: 0 0 10px;
}

.audit-log-list {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.audit-log-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 8px 12px;
  background: #f8fafc;
  border-radius: 8px;
  font-size: 11px;
  color: #475569;
}

.audit-log-item time {
  font-variant-numeric: tabular-nums;
  color: #94a3b8;
  font-size: 10px;
  min-width: 130px;
}

/* Deneme Takibi & Revizyonlar */
.revisions-list-container {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-top: 12px;
}

.rev-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 13px;
}

.rev-details {
  font-size: 12px;
  color: #334155;
  margin: 0;
}

.rev-recommendation {
  padding: 10px 12px;
  background: #eff6ff;
  border-radius: 8px;
  font-size: 12px;
  color: #1e40af;
  border: 1px solid #dbeafe;
}

.badge-exam-type {
  padding: 3px 8px;
  border-radius: 6px;
  font-size: 11px;
  font-weight: 700;
  background: #f3e8ff;
  color: #6b21a8;
}

/* Veli Raporlama Merkezi */
.report-schedule-tag {
  font-size: 11px;
  font-weight: 700;
  padding: 4px 12px;
  border-radius: 999px;
  background: #ecfdf5;
  color: #047857;
  border: 1px solid #a7f3d0;
}

.weekly-reports-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
  gap: 16px;
  margin-top: 16px;
}

.student-report-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  padding: 18px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.04);
}

.report-card-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.report-card-header h4 {
  font-size: 16px;
  font-weight: 800;
  color: #0f172a;
  margin: 0 0 3px;
}

.report-meta-info {
  font-size: 11px;
  color: #64748b;
  font-weight: 600;
}

.report-score-badge {
  font-size: 11px;
  font-weight: 800;
  padding: 4px 10px;
  border-radius: 999px;
  background: #e0f2fe;
  color: #0284c7;
}

.report-stats-compact {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
  padding: 10px;
  background: #f8fafc;
  border-radius: 10px;
  font-size: 11px;
}

.report-stats-compact div {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.report-stats-compact span {
  font-size: 10px;
  color: #64748b;
}

.report-stats-compact b {
  color: #0f172a;
  font-weight: 700;
}

.report-preview-box {
  background: #f1f5f9;
  border-radius: 10px;
  padding: 12px;
  max-height: 140px;
  overflow-y: auto;
  border: 1px solid #e2e8f0;
}

.report-preview-box pre {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 11px;
  color: #334155;
  line-height: 1.5;
  white-space: pre-wrap;
  margin: 0;
}

.report-action-buttons {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.report-history-section {
  margin-top: 24px;
  padding-top: 18px;
  border-top: 1px solid #e2e8f0;
}

.report-history-section h4 {
  font-size: 13px;
  font-weight: 800;
  color: #334155;
  margin: 0 0 10px;
}

.badge-channel {
  padding: 3px 8px;
  border-radius: 6px;
  font-size: 10px;
  font-weight: 700;
  background: #f1f5f9;
  color: #334155;
}

.report-period-tabs {
  display: flex;
  gap: 8px;
  margin-top: 14px;
  margin-bottom: 8px;
  flex-wrap: wrap;
}

.report-period-tab-btn {
  padding: 8px 16px;
  font-size: 13px;
  font-weight: 700;
  border-radius: 10px;
  border: 1px solid #cbd5e1;
  background: #f8fafc;
  color: #475569;
  cursor: pointer;
  transition: all 0.2s ease;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.report-period-tab-btn:hover {
  background: #f1f5f9;
  border-color: #94a3b8;
}

.report-period-tab-btn.active {
  background: #0284c7;
  color: #ffffff;
  border-color: #0284c7;
  box-shadow: 0 2px 8px rgba(2, 132, 199, 0.25);
}

.report-delivery-pill {
  font-size: 11px;
  font-weight: 700;
  padding: 3px 8px;
  border-radius: 6px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.report-delivery-pill.sent {
  background: #dcfce7;
  color: #166534;
  border: 1px solid #bbf7d0;
}

.report-delivery-pill.pending {
  background: #fef3c7;
  color: #92400e;
  border: 1px solid #fde68a;
}

.student-report-card.highlight-card {
  animation: reportPulse 2s cubic-bezier(0.4, 0, 0.6, 1) 2;
  border-color: #38bdf8 !important;
  box-shadow: 0 0 0 3px rgba(56, 189, 248, 0.35) !important;
}

@keyframes reportPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.015); box-shadow: 0 0 0 5px rgba(56, 189, 248, 0.5); }
}

.report-coach-note-box {
  background: #f8fafc;
  border: 1px dashed #cbd5e1;
  border-radius: 10px;
  padding: 10px 12px;
}

.report-coach-note-box label {
  font-size: 11px;
  font-weight: 700;
  color: #334155;
  margin-bottom: 6px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.report-coach-note-box textarea {
  width: 100%;
  border-radius: 8px;
  border: 1px solid #cbd5e1;
  padding: 8px;
  font-size: 12px;
  font-family: inherit;
  color: #0f172a;
  background: #ffffff;
  resize: vertical;
  line-height: 1.4;
  box-sizing: border-box;
}

.report-coach-note-box textarea:focus {
  outline: none;
  border-color: #0284c7;
  box-shadow: 0 0 0 2px rgba(2, 132, 199, 0.15);
}

.portal-preview-bar {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: #0f172a;
  color: #ffffff;
  padding: 8px 14px;
  border-radius: 12px;
  margin-bottom: 14px;
  flex-wrap: wrap;
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.2);
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.portal-preview-bar .preview-bar-label {
  font-size: 11px;
  font-weight: 800;
  color: #38bdf8;
  letter-spacing: 0.5px;
  display: flex;
  align-items: center;
  gap: 4px;
}

.portal-preview-bar .preview-btn {
  padding: 5px 12px;
  font-size: 12px;
  font-weight: 700;
  border-radius: 8px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  background: rgba(255, 255, 255, 0.08);
  color: #e2e8f0;
  cursor: pointer;
  transition: all 0.2s ease;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  text-decoration: none;
}

.portal-preview-bar .preview-btn:hover {
  background: rgba(255, 255, 255, 0.2);
  color: #ffffff;
  transform: translateY(-1px);
}

.portal-preview-bar .preview-btn.active {
  background: #0284c7;
  border-color: #38bdf8;
  color: #ffffff;
  box-shadow: 0 2px 8px rgba(2, 132, 199, 0.4);
}

.portal-preview-bar .preview-btn.admin-link {
  background: #f59e0b;
  border-color: #fbbf24;
  color: #0f172a;
  font-weight: 800;
}

@media (max-width: 900px) {
  .admin-dashboard-grid {
    grid-template-columns: 1fr;
  }
  .add-task-grid, .resource-add-grid {
    grid-template-columns: 1fr 1fr !important;
  }
  .admin-table-head, .admin-schedule-row {
    grid-template-columns: 100px 70px 100px 1fr 30px;
    font-size: 11px;
  }
  .resource-row-card {
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }
  .resource-row-card .res-title {
    grid-column: 1 / -1;
  }
}

/* ==========================================================================
   🌙 KARANLIK MOD — ÖĞRENCİ PORTALİ
   Varsayılan açık renkli portal; .portal-dark-mode class'ı eklenince
   siyah arka plan + beyaz metin
   ========================================================================== */

/* Tema Butonu */
.btn-portal-theme {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  font-weight: 800 !important;
  font-size: 11px !important;
  padding: 8px 14px !important;
  border-radius: 999px !important;
  cursor: pointer !important;
  border: 1px solid #dce3ef !important;
  background: #ffffff !important;
  color: #1e293b !important;
  transition: all 0.2s ease !important;
}

.btn-portal-theme:hover {
  background: #f1f5f9 !important;
  transform: translateY(-1px) !important;
}

.btn-portal-theme .theme-icon {
  font-size: 14px !important;
  line-height: 1 !important;
}

/* --- Dark Mod --- */
.portal-window.portal-dark-mode {
  background: #0a0a0b !important;
  color: #f4f4f5 !important;
  box-shadow: 0 32px 110px rgba(0, 0, 0, 0.95) !important;
}

.portal-window.portal-dark-mode .btn-portal-theme {
  background: #18181b !important;
  color: #ffffff !important;
  border-color: #3f3f46 !important;
}

.portal-window.portal-dark-mode .portal-close {
  background: #27272a !important;
  color: #ffffff !important;
}

.portal-window.portal-dark-mode .portal-login-head h2,
.portal-window.portal-dark-mode .dash-top h2,
.portal-window.portal-dark-mode h1,
.portal-window.portal-dark-mode h2,
.portal-window.portal-dark-mode h3,
.portal-window.portal-dark-mode h4,
.portal-window.portal-dark-mode b {
  color: #ffffff !important;
}

.portal-window.portal-dark-mode .portal-kicker {
  color: #f97316 !important;
}

.portal-window.portal-dark-mode .portal-login-head > p:last-child,
.portal-window.portal-dark-mode span,
.portal-window.portal-dark-mode small,
.portal-window.portal-dark-mode label {
  color: #a1a1aa !important;
}

.portal-window.portal-dark-mode .target-banner {
  background: linear-gradient(135deg, #1e1b4b, #0f172a 60%, #09090b) !important;
  border: 1px solid #27272a !important;
}

.portal-window.portal-dark-mode .target-banner h1,
.portal-window.portal-dark-mode .target-banner p,
.portal-window.portal-dark-mode .target-banner span {
  color: #ffffff !important;
}

.portal-window.portal-dark-mode .dash-card,
.portal-window.portal-dark-mode .portal-form,
.portal-window.portal-dark-mode .question-card,
.portal-window.portal-dark-mode .level-entry-card {
  background: #18181b !important;
  border-color: #27272a !important;
  color: #f4f4f5 !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.5) !important;
}

.portal-window.portal-dark-mode .student-stats > div,
.portal-window.portal-dark-mode .metric-box,
.portal-window.portal-dark-mode .progress-summary > div {
  background: #18181b !important;
  border-color: #27272a !important;
}

.portal-window.portal-dark-mode .student-stats b,
.portal-window.portal-dark-mode .metric-box strong,
.portal-window.portal-dark-mode .progress-summary b {
  color: #f97316 !important;
}

.portal-window.portal-dark-mode .portal-btn.primary {
  background: linear-gradient(110deg, #f97316, #ea580c) !important;
  color: #ffffff !important;
}

.portal-window.portal-dark-mode .portal-btn.soft {
  background: #27272a !important;
  color: #e4e4e7 !important;
  border: 1px solid #3f3f46 !important;
}

.portal-window.portal-dark-mode input,
.portal-window.portal-dark-mode select,
.portal-window.portal-dark-mode textarea {
  background: #09090b !important;
  border-color: #3f3f46 !important;
  color: #f4f4f5 !important;
}

.portal-window.portal-dark-mode input:focus,
.portal-window.portal-dark-mode select:focus {
  border-color: #f97316 !important;
  box-shadow: 0 0 0 3px rgba(249, 115, 22, 0.2) !important;
}

.portal-window.portal-dark-mode .schedule-day-btn {
  background: #18181b !important;
  border-color: #27272a !important;
  color: #a1a1aa !important;
}

.portal-window.portal-dark-mode .schedule-day-btn.active {
  background: #f97316 !important;
  color: #ffffff !important;
  border-color: #f97316 !important;
}

.portal-window.portal-dark-mode .schedule-day-btn.today:not(.active) {
  border-color: #f97316 !important;
  color: #f97316 !important;
}

.portal-window.portal-dark-mode .study-row {
  background: #18181b !important;
  border-color: #27272a !important;
}

.portal-window.portal-dark-mode .study-row.done {
  background: #14201a !important;
  border-color: #166534 !important;
}

.portal-window.portal-dark-mode .study-row.running {
  border-color: #f97316 !important;
  background: #1c1208 !important;
}

.portal-window.portal-dark-mode .study-row time {
  color: #f97316 !important;
}

.portal-window.portal-dark-mode .study-topic b {
  color: #e4e4e7 !important;
}

.portal-window.portal-dark-mode .study-topic span {
  color: #71717a !important;
}

.portal-window.portal-dark-mode .study-start-btn {
  background: #f97316 !important;
  color: #ffffff !important;
}

.portal-window.portal-dark-mode .study-start-btn.done-btn {
  background: #14532d !important;
  color: #86efac !important;
}

.portal-window.portal-dark-mode .study-now-banner {
  background: #1a1205 !important;
  border: 1px solid #92400e !important;
  color: #fbbf24 !important;
}

.portal-window.portal-dark-mode .desk-timer {
  color: #f97316 !important;
}

.portal-window.portal-dark-mode .admin-tabs-nav { display: none !important; 
  background: #18181b !important;
}

.portal-window.portal-dark-mode .admin-tab-btn {
  color: #a1a1aa !important;
  background: transparent !important;
}

.portal-window.portal-dark-mode .admin-tab-btn.active {
  background: #f97316 !important;
  color: #ffffff !important;
}

.portal-window.portal-dark-mode .resource-grid article {
  background: #18181b !important;
  border-color: #27272a !important;
}

.portal-window.portal-dark-mode .resource-grid article b {
  color: #e4e4e7 !important;
}

.portal-window.portal-dark-mode .onboard-choice {
  background: #18181b !important;
  border-color: #27272a !important;
  color: #e4e4e7 !important;
}

.portal-window.portal-dark-mode .onboard-choice.chosen {
  border-color: #f97316 !important;
  background: #1c1208 !important;
  color: #f97316 !important;
}

.portal-window.portal-dark-mode .portal-toast {
  background: #f97316 !important;
  color: #ffffff !important;
}

.portal-window.portal-dark-mode .podium-person {
  background: #18181b !important;
  border-color: #27272a !important;
}

.portal-window.portal-dark-mode .student-bottom-count {
  background: linear-gradient(130deg, #18181b, #27272a) !important;
}

.portal-window.portal-dark-mode .credential-card {
  background: #14201a !important;
  border-color: #166534 !important;
}

.portal-window.portal-dark-mode .credential-card code {
  color: #86efac !important;
}

.portal-window.portal-dark-mode .credential-card small {
  color: #a1a1aa !important;
}

.portal-window.portal-dark-mode .portal-notice {
  background: #1c1208 !important;
  color: #fbbf24 !important;
}

.portal-window.portal-dark-mode .weekly-schedule {
  background: #18181b !important;
  border-color: #27272a !important;
}

.portal-window.portal-dark-mode .schedule-table-head {
  color: #71717a !important;
}

.portal-window.portal-dark-mode .study-day-summary {
  background: #1c1208 !important;
  color: #fbbf24 !important;
}


/* =========================================================================
   TAM SAYFA (FULL SCREEN) ÖĞRENCİ PORTALİ & ODAKLANMA KOKPİTİ (IMAGE 3)
   ========================================================================= */

.portal-overlay {
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  z-index: 999999 !important;
  background: #090e17 !important;
  padding: 0 !important;
  margin: 0 !important;
  display: none !important;
  align-items: stretch !important;
  justify-content: stretch !important;
}

.portal-overlay.open {
  display: flex !important;
}

.portal-window {
  position: relative !important;
  width: 100vw !important;
  height: 100vh !important;
  max-width: 100vw !important;
  max-height: 100vh !important;
  border-radius: 0 !important;
  border: 0 !important;
  background: #0b1220 !important;
  color: #f1f5f9 !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  padding: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
}

.portal-window:not(.portal-dark-mode) {
  background: #f8fafc !important;
  color: #0f172a !important;
}

/* PORTAL KÖK ALANI - SCROLL & DÜZEN SABİTLEMESİ */
#portal-root {
  width: 100% !important;
  height: 100% !important;
  max-height: 100vh !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 0 !important;
  flex: 1 1 0% !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  -webkit-overflow-scrolling: touch !important;
}

#portal-root:has(.portal-body-scroll) {
  overflow-y: hidden !important;
}

/* PORTAL ÜST BAR (FULL WIDTH APP BAR) */
.portal-top-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 28px;
  background: #0c1527;
  border-bottom: 1px solid #1e293b;
  flex-shrink: 0;
  z-index: 100;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
}

.portal-window:not(.portal-dark-mode) .portal-top-bar {
  background: #ffffff;
  border-bottom: 1px solid #e2e8f0;
  box-shadow: 0 2px 10px rgba(15, 23, 42, 0.05);
}

.portal-top-left {
  display: flex;
  align-items: center;
  gap: 12px;
}

.portal-brand-title {
  font-size: 16px;
  font-weight: 800;
  color: #ffffff;
  letter-spacing: -0.01em;
  display: flex;
  align-items: center;
  gap: 8px;
}

.portal-window:not(.portal-dark-mode) .portal-brand-title {
  color: #0f172a;
}

.portal-top-right {
  display: flex;
  align-items: center;
  gap: 12px;
}

.portal-user-chip {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 5px 14px 5px 8px;
  border-radius: 999px;
  background: #131f38;
  border: 1px solid #1e293b;
}

.portal-window:not(.portal-dark-mode) .portal-user-chip {
  background: #f1f5f9;
  border-color: #cbd5e1;
}

.pulse-green-dot {
  width: 9px;
  height: 9px;
  background: #22c55e;
  border-radius: 50%;
  box-shadow: 0 0 10px #22c55e;
  animation: pulseGreenDot 1.6s infinite;
  display: inline-block;
}

@keyframes pulseGreenDot {
  0% { transform: scale(0.9); opacity: 0.8; }
  50% { transform: scale(1.3); opacity: 1; }
  100% { transform: scale(0.9); opacity: 0.8; }
}

.portal-student-name {
  font-size: 13px;
  font-weight: 700;
  color: #e2e8f0;
  white-space: nowrap;
}

.portal-window:not(.portal-dark-mode) .portal-student-name {
  color: #1e293b;
}

/* AVATAR YÜKLEME VE GÖSTERME */
.avatar-upload-wrapper {
  position: relative;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  cursor: pointer;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.2s;
}

.avatar-upload-wrapper:hover {
  transform: scale(1.08);
}

.avatar-thumb-img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid #00b4d8;
  box-shadow: 0 0 12px rgba(0, 180, 216, 0.4);
}

.avatar-thumb-emoji {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #1e293b;
  font-size: 19px;
  border: 2px solid #00b4d8;
}

.portal-window:not(.portal-dark-mode) .avatar-thumb-emoji {
  background: #e2e8f0;
}

.avatar-camera-icon {
  position: absolute;
  bottom: -2px;
  right: -2px;
  width: 17px;
  height: 17px;
  background: #00b4d8;
  color: #07101e;
  border-radius: 50%;
  font-size: 9px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
  box-shadow: 0 2px 6px rgba(0,0,0,0.4);
}

.portal-quick-select,
.portal-student-grade-badge {
  background: #131f38;
  color: #e2e8f0;
  border: 1px solid #1e293b;
  border-radius: 10px;
  padding: 7px 14px;
  font-size: 12px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  user-select: none;
}

.portal-window:not(.portal-dark-mode) .portal-quick-select,
.portal-window:not(.portal-dark-mode) .portal-student-grade-badge {
  background: #ffffff;
  color: #1e293b;
  border-color: #cbd5e1;
}

.portal-close-btn-full {
  background: #ef4444;
  color: #ffffff;
  border: 0;
  border-radius: 10px;
  padding: 8px 18px;
  font-size: 13px;
  font-weight: 800;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 6px;
  transition: all 0.2s;
  box-shadow: 0 4px 12px rgba(239, 68, 68, 0.3);
}

.portal-close-btn-full:hover {
  background: #dc2626;
  transform: translateY(-1px);
}

/* PORTAL GÖVDE KAYDIRMA ALANI */
.portal-body-scroll {
  flex: 1 1 0% !important;
  min-height: 0 !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  -webkit-overflow-scrolling: touch !important;
  padding: 24px 32px 80px;
  max-width: 1360px;
  margin: 0 auto;
  width: 100%;
  box-sizing: border-box;
}

/* =========================================================================
   IMAGE 3: ODAKLANMA KOKPİTİ (3 SÜTUNLU ÇALIŞMA MASASI)
   ========================================================================= */

.focus-cockpit-desk {
  background: #0c1424;
  border: 1px solid #1e293b;
  border-radius: 24px;
  padding: 24px 28px;
  margin-bottom: 24px;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.35);
}

.portal-window:not(.portal-dark-mode) .focus-cockpit-desk {
  background: #ffffff;
  border-color: #e2e8f0;
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.06);
}

.cockpit-grid {
  display: grid;
  grid-template-columns: 280px 1fr 280px;
  gap: 28px;
  align-items: center;
}

@media (max-width: 1080px) {
  .cockpit-grid {
    grid-template-columns: 1fr;
    gap: 22px;
  }
}

.cockpit-col-header {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.12em;
  color: #94a3b8;
  margin-bottom: 14px;
  text-transform: uppercase;
}

.portal-window:not(.portal-dark-mode) .cockpit-col-header {
  color: #64748b;
}

/* Sol Sütun: CANLI SIRALAMA */
.cockpit-rank-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.cockpit-rank-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 14px;
  border-radius: 12px;
  background: #111c33;
  border: 1px solid #1e293b;
  font-size: 13px;
  transition: all 0.2s;
}

.portal-window:not(.portal-dark-mode) .cockpit-rank-item {
  background: #f8fafc;
  border-color: #e2e8f0;
}

.cockpit-rank-item.first-place {
  background: #2a1b14;
  border: 1px solid #78350f;
}

.portal-window:not(.portal-dark-mode) .cockpit-rank-item.first-place {
  background: #fef3c7;
  border-color: #fde68a;
}

.cockpit-rank-left {
  display: flex;
  align-items: center;
  gap: 10px;
}

.cockpit-rank-num {
  font-size: 14px;
  font-weight: 900;
  color: #cbd5e1;
  width: 16px;
}

.cockpit-rank-item.first-place .cockpit-rank-num {
  color: #f59e0b;
}

.cockpit-rank-avatar {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  object-fit: cover;
  display: inline-block;
  vertical-align: middle;
}

.cockpit-rank-emoji {
  font-size: 16px;
  display: inline-block;
}

.cockpit-rank-name {
  font-weight: 700;
  color: #e2e8f0;
}

.cockpit-rank-item.first-place .cockpit-rank-name {
  color: #f59e0b;
}

.portal-window:not(.portal-dark-mode) .cockpit-rank-name {
  color: #1e293b;
}

.portal-window:not(.portal-dark-mode) .cockpit-rank-item.first-place .cockpit-rank-name {
  color: #b45309;
}

.cockpit-rank-time {
  font-weight: 700;
  color: #94a3b8;
  font-variant-numeric: tabular-nums;
}

.cockpit-rank-item.first-place .cockpit-rank-time {
  color: #f59e0b;
  font-weight: 800;
}

.portal-window:not(.portal-dark-mode) .cockpit-rank-time {
  color: #64748b;
}

.portal-window:not(.portal-dark-mode) .cockpit-rank-item.first-place .cockpit-rank-time {
  color: #b45309;
}

/* Orta Sütun: ODAKLANMA KRONOMETRESİ */
.cockpit-timer-core {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.timer-duration-pills {
  display: flex;
  gap: 10px;
  margin-bottom: 18px;
}

.duration-pill {
  border: 0;
  border-radius: 999px;
  padding: 7px 20px;
  font-size: 13px;
  font-weight: 800;
  cursor: pointer;
  background: #14213d;
  color: #cbd5e1;
  border: 1px solid #1e293b;
  transition: all 0.2s;
}

.portal-window:not(.portal-dark-mode) .duration-pill {
  background: #f1f5f9;
  color: #475569;
  border-color: #cbd5e1;
}

.duration-pill.active {
  background: #00b4d8 !important;
  color: #07101e !important;
  border-color: #00b4d8 !important;
  box-shadow: 0 4px 16px rgba(0, 180, 216, 0.4);
}

.circular-timer-wrap {
  position: relative;
  width: 190px;
  height: 190px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 4px 0 16px;
}

.timer-svg {
  width: 100%;
  height: 100%;
  transform: rotate(-90deg);
}

.timer-track {
  fill: none;
  stroke: #16243f;
  stroke-width: 6;
}

.portal-window:not(.portal-dark-mode) .timer-track {
  stroke: #e2e8f0;
}

.timer-progress {
  fill: none;
  stroke: #00b4d8;
  stroke-width: 6;
  stroke-linecap: round;
  transition: stroke-dashoffset 0.4s ease;
}

.timer-center-content {
  position: absolute;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.timer-clock-digits {
  font-size: 40px;
  font-weight: 900;
  color: #ffffff;
  letter-spacing: -0.02em;
  font-variant-numeric: tabular-nums;
  line-height: 1;
}

.portal-window:not(.portal-dark-mode) .timer-clock-digits {
  color: #0f172a;
}

.timer-state-label {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.16em;
  color: #00b4d8;
  margin-top: 8px;
  text-transform: uppercase;
}

.timer-actions-row {
  display: flex;
  align-items: center;
  gap: 12px;
}

.btn-desk-start-pill {
  background: #00b4d8;
  color: #07101e;
  border: 0;
  border-radius: 999px;
  padding: 12px 28px;
  font-size: 14px;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 6px 20px rgba(0, 180, 216, 0.4);
  transition: all 0.2s;
  display: flex;
  align-items: center;
  gap: 8px;
}

.btn-desk-start-pill:hover {
  filter: brightness(1.1);
  transform: translateY(-1px);
}

.btn-desk-start-pill.running {
  background: #f59e0b;
  color: #1e1303;
  box-shadow: 0 6px 20px rgba(245, 158, 11, 0.4);
}

.btn-desk-reset-round {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #14213d;
  color: #cbd5e1;
  border: 1px solid #1e293b;
  font-size: 18px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s;
}

.portal-window:not(.portal-dark-mode) .btn-desk-reset-round {
  background: #f1f5f9;
  color: #475569;
  border-color: #cbd5e1;
}

.btn-desk-reset-round:hover {
  transform: rotate(45deg);
  background: #1e293b;
}

/* Sağ Sütun: GÜNÜN ÖZETİ */
.summary-cards-stack {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.summary-card-item {
  background: #111c33;
  border: 1px solid #1e293b;
  border-radius: 14px;
  padding: 14px 18px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.portal-window:not(.portal-dark-mode) .summary-card-item {
  background: #f8fafc;
  border-color: #e2e8f0;
}

.summary-card-item small {
  font-size: 11px;
  font-weight: 700;
  color: #94a3b8;
  letter-spacing: 0.02em;
}

.portal-window:not(.portal-dark-mode) .summary-card-item small {
  color: #64748b;
}

.summary-card-item b {
  font-size: 20px;
  font-weight: 900;
  color: #ffffff;
}

.portal-window:not(.portal-dark-mode) .summary-card-item b {
  color: #0f172a;
}

.summary-card-item b.cyan-highlight {
  color: #00b4d8;
}

.portal-window:not(.portal-dark-mode) .summary-card-item b.cyan-highlight {
  color: #0284c7;
}

/* =========================================================================
   DERS PROGRAMI TABLOSU DÜZELTMESİ (IMAGE 2 - BOŞLUKSUZ 5 SÜTUNLU IZGARA)
   ========================================================================= */

.schedule-table-head, .study-row {
  display: grid !important;
  grid-template-columns: 75px 85px 1fr 115px 36px !important;
  align-items: center !important;
  gap: 14px !important;
}

.schedule-table-head {
  padding: 0 14px 6px !important;
  color: #94a3b8 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
}

.study-row {
  padding: 12px 14px !important;
  border: 1px solid #1e293b !important;
  border-radius: 14px !important;
  background: #111c33 !important;
}

.portal-window:not(.portal-dark-mode) .study-row {
  background: #ffffff !important;
  border-color: #e2e8f0 !important;
}

.study-row.done {
  background: #0f241a !important;
  border-color: #166534 !important;
}

.portal-window:not(.portal-dark-mode) .study-row.done {
  background: #f0fdf4 !important;
  border-color: #bbf7d0 !important;
}

.study-row time {
  font-size: 13px !important;
  font-weight: 900 !important;
  color: #f97316 !important;
  font-variant-numeric: tabular-nums !important;
}

.duration-badge {
  background: #1e293b !important;
  color: #94a3b8 !important;
  border-radius: 8px !important;
  padding: 4px 8px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
  display: inline-block !important;
  text-align: center !important;
}

.portal-window:not(.portal-dark-mode) .duration-badge {
  background: #f1f5f9 !important;
  color: #64748b !important;
}

.study-topic {
  display: flex !important;
  flex-direction: column !important;
  gap: 3px !important;
}

.study-topic b {
  font-size: 13px !important;
  color: #f1f5f9 !important;
  font-weight: 800 !important;
}

.portal-window:not(.portal-dark-mode) .study-topic b {
  color: #0f172a !important;
}

.study-topic span {
  font-size: 12px !important;
  color: #94a3b8 !important;
}

.portal-window:not(.portal-dark-mode) .study-topic span {
  color: #64748b !important;
}

.study-start-btn {
  border: 0 !important;
  border-radius: 10px !important;
  background: #00b4d8 !important;
  color: #07101e !important;
  padding: 9px 12px !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  transition: all 0.2s !important;
}

.study-start-btn:hover {
  filter: brightness(1.1) !important;
  transform: translateY(-1px) !important;
}

.study-start-btn.done-btn {
  background: #166534 !important;
  color: #86efac !important;
}

.portal-window:not(.portal-dark-mode) .study-start-btn.done-btn {
  background: #dcfce7 !important;
  color: #15803d !important;
}

.study-done-check {
  width: 20px !important;
  height: 20px !important;
  accent-color: #22c55e !important;
  cursor: pointer !important;
  justify-self: center !important;
}

/* =========================================================================
   ANA SAYFA ZİRVEDEKİLER (TOP 3) PROFİL FOTOĞRAFLARI (IMAGE 1)
   ========================================================================= */

.leader-avatar-photo {
  width: 100% !important;
  height: 100% !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  display: block !important;
}

.leader-avatar.has-photo {
  padding: 0 !important;
  overflow: hidden !important;
  border: 2px solid #00b4d8 !important;
  box-shadow: 0 0 14px rgba(0, 180, 216, 0.45) !important;
  background: transparent !important;
}

.leader-avatar.has-photo.gold-glow {
  border-color: #f59e0b !important;
  box-shadow: 0 0 14px rgba(245, 158, 11, 0.5) !important;
}

.leader-avatar.has-photo.silver-glow {
  border-color: #94a3b8 !important;
  box-shadow: 0 0 14px rgba(148, 163, 184, 0.5) !important;
}

.leader-avatar.has-photo.bronze-glow {
  border-color: #d97706 !important;
  box-shadow: 0 0 14px rgba(217, 119, 6, 0.5) !important;
}


.portal-close { display: none !important; }


/* =========================================================================
   ADMIN KOKPİT DERS PROGRAMI ZAMAN ÇİZELGESİ (SIFIR YATAY KAYDIRMA)
   ========================================================================= */

.cockpit-schedule-container {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
  box-sizing: border-box !important;
}

.cockpit-day-tabs-bar {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin: 14px 0 16px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.cockpit-day-tab-btn {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 3px !important;
  padding: 8px 14px !important;
  border-radius: 12px !important;
  background: #182235 !important;
  border: 1px solid #233554 !important;
  color: #cbd5e1 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  transition: all 0.18s ease !important;
  flex: 1 1 85px !important;
  text-align: center !important;
}

.cockpit-day-tab-btn:hover {
  background: #233554 !important;
  color: #ffffff !important;
  border-color: #38bdf8 !important;
}

.cockpit-day-tab-btn.active {
  background: #0284c7 !important;
  border-color: #38bdf8 !important;
  color: #ffffff !important;
  box-shadow: 0 4px 14px rgba(2, 132, 199, 0.4) !important;
}

.cockpit-day-tab-btn small {
  font-size: 10px !important;
  opacity: 0.85 !important;
  font-weight: 600 !important;
}

/* KART DÜZENİ ÇİZELGE (ZAMAN AKIŞI) */
.cockpit-schedule-timeline {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  overflow-x: hidden !important;
}

.cockpit-block-card {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 14px !important;
  padding: 12px 16px !important;
  background: #141e30 !important;
  border: 1px solid #233554 !important;
  border-radius: 12px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  transition: all 0.18s ease !important;
}

.cockpit-block-card:hover {
  background: #1b2840 !important;
  border-color: #3b82f6 !important;
}

.cockpit-block-card.custom-assigned {
  background: #271c0c !important;
  border: 1px solid #b45309 !important;
}

.cockpit-block-left {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-shrink: 0 !important;
}

.cockpit-block-time {
  font-size: 13px !important;
  font-weight: 900 !important;
  color: #f59e0b !important;
  font-variant-numeric: tabular-nums !important;
  min-width: 68px !important;
}

.cockpit-block-duration {
  font-size: 11px !important;
  font-weight: 700 !important;
  color: #94a3b8 !important;
  background: #0f172a !important;
  padding: 3px 8px !important;
  border-radius: 6px !important;
  white-space: nowrap !important;
}

.cockpit-block-center {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  flex: 1 !important;
  min-width: 0 !important; /* Taşmayı engeller */
}

.cockpit-subject-pill {
  font-size: 11px !important;
  font-weight: 800 !important;
  padding: 4px 10px !important;
  border-radius: 8px !important;
  background: #0284c7 !important;
  color: #ffffff !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}

.cockpit-topic-text {
  font-size: 13px !important;
  color: #e2e8f0 !important;
  font-weight: 600 !important;
  white-space: normal !important;
  word-break: break-word !important;
  line-height: 1.4 !important;
}

.cockpit-block-right {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex-shrink: 0 !important;
}

.cockpit-origin-tag {
  font-size: 10px !important;
  font-weight: 700 !important;
  padding: 4px 9px !important;
  border-radius: 6px !important;
  color: #94a3b8 !important;
  background: #0f172a !important;
  white-space: nowrap !important;
}

.cockpit-block-card.custom-assigned .cockpit-origin-tag {
  color: #f59e0b !important;
  background: #451a03 !important;
  border: 1px solid #78350f !important;
}

@media (max-width: 768px) {
  .cockpit-block-card {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 8px !important;
  }
  .cockpit-block-center {
    flex-wrap: wrap !important;
  }
}



/* =========================================================================
   KAYNAK HAVUZU TABLOSU & FORMU (KULLANICI SIRALAMASI: SIRALAMA, KAYNAK, KAYNAK TÜRÜ, DERS, ALAN, HEDEF SEVİYE, LİNK)
   ========================================================================= */

/* SİYAH MOD / KOYU MOD (DEFAULT ADMIN) - BEYAZ YAZILAR */
.resource-modern-table {
  width: 100% !important;
  border-collapse: collapse !important;
  margin-top: 10px !important;
  color: #f8fafc !important;
}

.resource-modern-table th {
  padding: 12px 14px !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  color: #cbd5e1 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  border-bottom: 1px solid #1e293b !important;
  background: #0c1527 !important;
}

.resource-modern-table td {
  padding: 12px 14px !important;
  font-size: 13px !important;
  border-bottom: 1px solid #1e293b !important;
  vertical-align: middle !important;
  color: #f8fafc !important; /* Siyah modda BEYAZ */
  background: transparent !important;
}

.resource-modern-table tr:hover td {
  background: #111c33 !important;
}

.resource-modern-table .res-index-cell {
  font-weight: 900 !important;
  color: #94a3b8 !important;
}

.resource-modern-table .res-title-text {
  color: #ffffff !important; /* Siyah modda BEYAZ */
  font-size: 13px !important;
  font-weight: 800 !important;
  display: block !important;
}

.resource-modern-table .res-type-tag {
  display: inline-block !important;
  padding: 4px 10px !important;
  border-radius: 6px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  background: rgba(255, 255, 255, 0.08) !important;
  color: #f1f5f9 !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  white-space: nowrap !important;
}

.resource-modern-table .res-subject-tag {
  font-weight: 800 !important;
  color: #38bdf8 !important;
  font-size: 12px !important;
  white-space: nowrap !important;
}

.resource-modern-table .res-branch-tag {
  display: inline-block !important;
  padding: 4px 10px !important;
  border-radius: 6px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  background: rgba(59, 130, 246, 0.15) !important;
  color: #93c5fd !important;
  border: 1px solid rgba(59, 130, 246, 0.3) !important;
  white-space: nowrap !important;
}

.resource-modern-table .res-tier-tag {
  display: inline-block !important;
  padding: 4px 10px !important;
  border-radius: 6px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  background: rgba(234, 88, 12, 0.15) !important;
  color: #fdba74 !important;
  border: 1px solid rgba(234, 88, 12, 0.3) !important;
  white-space: nowrap !important;
}

.resource-modern-table .res-empty-dash {
  color: #64748b !important;
  font-weight: 700 !important;
}

.res-link-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  padding: 5px 12px !important;
  border-radius: 8px !important;
  background: rgba(2, 132, 199, 0.15) !important;
  color: #38bdf8 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  transition: all 0.18s !important;
  white-space: nowrap !important;
}

.res-link-btn:hover {
  background: #0284c7 !important;
  color: #ffffff !important;
}

.btn-del-res {
  background: rgba(239, 68, 68, 0.15) !important;
  color: #f87171 !important;
  border: 0 !important;
  border-radius: 8px !important;
  width: 32px !important;
  height: 32px !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 13px !important;
  transition: all 0.18s !important;
}

.btn-del-res:hover {
  background: #ef4444 !important;
  color: #ffffff !important;
}

/* =========================================================================
   BEYAZ MOD (body.admin-light-mode) - BEYAZ MODDA SİYAH METİN AYARLARI
   ========================================================================= */
body.admin-light-mode .resource-modern-table {
  color: #0f172a !important;
  background: #ffffff !important;
}

body.admin-light-mode .resource-modern-table th {
  background: #f1f5f9 !important;
  color: #0f172a !important; /* Beyaz modda TAM SİYAH BAŞLIK */
  border-bottom: 2px solid #cbd5e1 !important;
  font-weight: 800 !important;
}

body.admin-light-mode .resource-modern-table td {
  border-bottom: 1px solid #e2e8f0 !important;
  color: #0f172a !important; /* Beyaz modda TAM SİYAH HÜCRELER */
  background: #ffffff !important;
}

body.admin-light-mode .resource-modern-table tr:hover td {
  background: #f8fafc !important;
}

body.admin-light-mode .resource-modern-table .res-index-cell {
  color: #334155 !important;
  font-weight: 900 !important;
}

body.admin-light-mode .resource-modern-table .res-title-text {
  color: #0f172a !important; /* Beyaz modda SİYAH */
  font-weight: 800 !important;
}

body.admin-light-mode .resource-modern-table .res-type-tag {
  background: #f1f5f9 !important;
  color: #0f172a !important; /* Beyaz modda SİYAH */
  border: 1px solid #cbd5e1 !important;
}

body.admin-light-mode .resource-modern-table .res-subject-tag {
  color: #0369a1 !important; /* Beyaz modda DERİN MAVİ */
  font-weight: 800 !important;
}

body.admin-light-mode .resource-modern-table .res-branch-tag {
  background: #eff6ff !important;
  color: #1e40af !important;
  border: 1px solid #bfdbfe !important;
}

body.admin-light-mode .resource-modern-table .res-tier-tag {
  background: #fff7ed !important;
  color: #c2410c !important;
  border: 1px solid #fed7aa !important;
}

body.admin-light-mode .resource-modern-table .res-empty-dash {
  color: #94a3b8 !important;
}

body.admin-light-mode .res-link-btn {
  background: #0284c7 !important;
  color: #ffffff !important;
}

body.admin-light-mode .res-link-btn:hover {
  background: #0369a1 !important;
}

body.admin-light-mode .btn-del-res {
  background: #fee2e2 !important;
  color: #dc2626 !important;
}

body.admin-light-mode .btn-del-res:hover {
  background: #dc2626 !important;
  color: #ffffff !important;
}

/* GENEL TABLOLAR BEYAZ MOD UYUMU */
body.admin-light-mode .student-table-wrap table th {
  background: #f1f5f9 !important;
  color: #0f172a !important;
  border-bottom: 2px solid #cbd5e1 !important;
}

body.admin-light-mode .student-table-wrap table td {
  color: #0f172a !important;
  border-bottom: 1px solid #e2e8f0 !important;
  background: #ffffff !important;
}

body.admin-light-mode .student-table-wrap table td b,
body.admin-light-mode .student-table-wrap table td strong {
  color: #0f172a !important;
}

body.admin-light-mode .student-table-wrap table tr:hover td {
  background: #f8fafc !important;
}



/* =========================================================================
   DENEME ANALİZLERİ, PLAN ÖNERİLERİ VE GELİŞİM TRENDİ STİLLERİ
   ========================================================================= */

.revisions-list-container {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  margin-top: 14px !important;
}

.revision-card {
  background: #141e30 !important;
  border: 1px solid #233554 !important;
  border-radius: 14px !important;
  padding: 16px 20px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  transition: all 0.2s ease !important;
}

.revision-card:hover {
  background: #18253d !important;
  border-color: #38bdf8 !important;
}

.revision-card.approved {
  background: #0f201a !important;
  border-color: #166534 !important;
  opacity: 0.85 !important;
}

.rev-header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

.rev-status-pill {
  font-size: 11px !important;
  font-weight: 800 !important;
  padding: 4px 10px !important;
  border-radius: 8px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
}

.rev-status-pill.pending {
  background: rgba(245, 158, 11, 0.15) !important;
  color: #fbbf24 !important;
  border: 1px solid rgba(245, 158, 11, 0.3) !important;
}

.rev-status-pill.approved {
  background: rgba(16, 185, 129, 0.15) !important;
  color: #34d399 !important;
  border: 1px solid rgba(16, 185, 129, 0.3) !important;
}

.rev-details {
  font-size: 13px !important;
  color: #e2e8f0 !important;
  margin: 0 !important;
  line-height: 1.5 !important;
}

.rev-recommendation {
  background: rgba(2, 132, 199, 0.1) !important;
  border: 1px solid rgba(2, 132, 199, 0.25) !important;
  border-radius: 10px !important;
  padding: 10px 14px !important;
  font-size: 12px !important;
  color: #38bdf8 !important;
  line-height: 1.5 !important;
}

.rev-actions {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin-top: 4px !important;
}

/* GELİŞİM / TREND ROZETLERİ (ÖNCEKİ DENEMEYE GÖRE ARTMIŞ MI DÜŞMÜŞ MÜ) */
.trend-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  padding: 4px 10px !important;
  border-radius: 8px !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
  font-variant-numeric: tabular-nums !important;
}

.trend-badge.up {
  background: rgba(16, 185, 129, 0.15) !important;
  color: #34d399 !important;
  border: 1px solid rgba(16, 185, 129, 0.35) !important;
}

.trend-badge.down {
  background: rgba(239, 68, 68, 0.15) !important;
  color: #f87171 !important;
  border: 1px solid rgba(239, 68, 68, 0.35) !important;
}

.trend-badge.equal {
  background: rgba(148, 163, 184, 0.15) !important;
  color: #cbd5e1 !important;
  border: 1px solid rgba(148, 163, 184, 0.25) !important;
}

.trend-badge.baseline {
  background: rgba(2, 132, 199, 0.15) !important;
  color: #38bdf8 !important;
  border: 1px solid rgba(2, 132, 199, 0.25) !important;
}

.student-table-wrap th {
  white-space: nowrap !important;
}



/* =========================================================================
   FOCUS COCKPIT (GÖRSEL 3) - ÖZEL GİRİŞ / PANEL KARTI STİLLERİ
   ========================================================================= */
.desk-login-prompt-card {
  margin-top: 20px;
  padding: 18px 24px;
  background: #111a2e;
  border: 1px solid rgba(234, 88, 12, 0.35);
  border-radius: 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
}

.portal-window:not(.portal-dark-mode) .desk-login-prompt-card {
  background: #ffffff;
  border-color: #fdba74;
  box-shadow: 0 8px 24px rgba(234, 88, 12, 0.08);
}

.desk-login-prompt-card.logged-in {
  border-color: rgba(16, 185, 129, 0.35);
}

.portal-window:not(.portal-dark-mode) .desk-login-prompt-card.logged-in {
  border-color: #86efac;
}

.desk-prompt-left {
  display: flex;
  align-items: center;
  gap: 16px;
}

.desk-prompt-icon {
  font-size: 28px;
  flex-shrink: 0;
}

.desk-prompt-text b {
  display: block;
  font-size: 14px;
  color: #f8fafc;
  margin-bottom: 4px;
}

.portal-window:not(.portal-dark-mode) .desk-prompt-text b {
  color: #0f172a;
}

.desk-prompt-text p {
  margin: 0;
  font-size: 12px;
  color: #94a3b8;
  line-height: 1.4;
}

.portal-window:not(.portal-dark-mode) .desk-prompt-text p {
  color: #64748b;
}

.portal-desk-tag {
  font-size: 11px;
  font-weight: 800;
  color: #10b981;
  background: rgba(16, 185, 129, 0.12);
  border: 1px solid rgba(16, 185, 129, 0.25);
  padding: 4px 10px;
  border-radius: 999px;
  margin-left: 10px;
}


/* =========================================================================
   HAFTALIK DERS PROGRAMLARI TABLOSU YENİ TASARIMI (5 SÜTUNLU KUSURSUZ HİZALAMA)
   Süre & İşlem küçültüldü, Ders taşıması giderildi, Siyah/Beyaz mod renkleri optimize edildi
   ========================================================================= */

.schedule-admin-table {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  margin-top: 14px !important;
  width: 100% !important;
}

.schedule-admin-table .admin-table-head {
  display: grid !important;
  grid-template-columns: 140px 85px 140px 1fr 45px !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 10px 16px !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  color: #94a3b8 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  border-bottom: 2px solid #1e293b !important;
  background: transparent !important;
}

.schedule-admin-table .admin-schedule-row {
  display: grid !important;
  grid-template-columns: 140px 85px 140px 1fr 45px !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 12px 16px !important;
  border-radius: 12px !important;
  border: 1px solid #1e293b !important;
  background: #0c1527 !important;
  color: #f8fafc !important;
  transition: all 0.18s ease !important;
}

.schedule-admin-table .admin-schedule-row:hover {
  background: #111c33 !important;
  border-color: #38bdf8 !important;
  transform: translateY(-1px) !important;
}

.schedule-admin-table .admin-schedule-row b {
  color: #f97316 !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

/* SÜRE KISMI KÜÇÜK VE KOMPAKT */
.schedule-admin-table .duration-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 4px !important;
  width: fit-content !important;
  max-width: 80px !important;
  padding: 4px 8px !important;
  border-radius: 8px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  background: rgba(255, 255, 255, 0.08) !important;
  color: #cbd5e1 !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  white-space: nowrap !important;
}

/* DERS KISMI DÜZENLİ VE TAŞMAZ */
.schedule-admin-table .subject-name {
  display: inline-block !important;
  padding: 4px 10px !important;
  border-radius: 8px !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  background: rgba(59, 130, 246, 0.15) !important;
  color: #60a5fa !important;
  border: 1px solid rgba(59, 130, 246, 0.3) !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* KONU / ETKİNLİK */
.schedule-admin-table .topic-desc {
  font-size: 12px !important;
  color: #e2e8f0 !important;
  line-height: 1.4 !important;
}

/* İŞLEM (SİL) KISMI KÜÇÜK VE KOMPAKT */
.schedule-admin-table .btn-remove-task {
  width: 32px !important;
  height: 32px !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: rgba(239, 68, 68, 0.15) !important;
  color: #f87171 !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  transition: all 0.18s !important;
  justify-self: center !important;
}

.schedule-admin-table .btn-remove-task:hover {
  background: #ef4444 !important;
  color: #ffffff !important;
}

/* BEYAZ MOD (body.admin-light-mode) UYUMU - SİYAH METİNLER */
body.admin-light-mode .schedule-admin-table .admin-table-head {
  color: #0f172a !important;
  border-bottom: 2px solid #cbd5e1 !important;
}

body.admin-light-mode .schedule-admin-table .admin-schedule-row {
  background: #ffffff !important;
  border-color: #e2e8f0 !important;
  color: #0f172a !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.03) !important;
}

body.admin-light-mode .schedule-admin-table .admin-schedule-row:hover {
  background: #f8fafc !important;
  border-color: #cbd5e1 !important;
}

body.admin-light-mode .schedule-admin-table .admin-schedule-row b {
  color: #ea580c !important;
}

body.admin-light-mode .schedule-admin-table .duration-badge {
  background: #f1f5f9 !important;
  color: #334155 !important;
  border-color: #cbd5e1 !important;
}

body.admin-light-mode .schedule-admin-table .subject-name {
  background: #eff6ff !important;
  color: #1d4ed8 !important;
  border-color: #bfdbfe !important;
}

body.admin-light-mode .schedule-admin-table .topic-desc {
  color: #1e293b !important;
}

body.admin-light-mode .schedule-admin-table .btn-remove-task {
  background: #fee2e2 !important;
  color: #dc2626 !important;
}

body.admin-light-mode .schedule-admin-table .btn-remove-task:hover {
  background: #dc2626 !important;
  color: #ffffff !important;
}

/* =========================================================================
   DERS PROGRAMI REVİZE DERS SÜTUNU & TEKRAR ETÜDÜ ATANDI ROZETİ
   ========================================================================= */
.schedule-table-head, .study-row {
  display: grid !important;
  grid-template-columns: 75px 85px 1.15fr 1.55fr 115px 36px !important;
  align-items: center !important;
  gap: 14px !important;
}

.study-revision-col {
  display: flex;
  align-items: center;
  min-width: 0;
}

.study-revision-badge {
  background: #fff7ed;
  color: #c2410c;
  border: 1px solid #ffedd5;
  border-radius: 8px;
  padding: 5px 10px;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.35;
  display: inline-block;
  box-shadow: 0 1px 3px rgba(234, 88, 12, 0.08);
}

.portal-window.portal-dark-mode .study-revision-badge {
  background: #3c1407;
  color: #fdba74;
  border-color: #7c2d12;
}

.study-row.study-row-revision {
  border-left: 3px solid #ea580c !important;
  background: #fffcf9;
}

.portal-window.portal-dark-mode .study-row.study-row-revision {
  border-left: 3px solid #f97316 !important;
  background: #181410 !important;
}

.study-routine-dash {
  color: #94a3b8;
  font-size: 13px;
  font-weight: 600;
  padding-left: 10px;
}

.badge-assigned-study {
  background: #ecfdf5;
  color: #047857;
  border: 1px solid #a7f3d0;
  font-size: 11px;
  font-weight: 800;
  padding: 6px 13px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  white-space: nowrap;
}

.portal-window.portal-dark-mode .badge-assigned-study,
body.admin-dark-mode .badge-assigned-study {
  background: #064e3b;
  color: #6ee7b7;
  border-color: #047857;
}

@media (max-width: 900px) {
  .schedule-table-head, .study-row {
    grid-template-columns: 65px 75px 1fr 1fr 90px 30px !important;
    gap: 8px !important;
  }
  .study-revision-badge {
    font-size: 10px;
    padding: 4px 6px;
  }
}

/* =====================================================================
   🌉 SORU KÖPRÜSÜ (öğrenci yardımlaşma panosu)
   ===================================================================== */
.help-overlay{position:fixed;inset:0;z-index:1000001;background:#0b1424cc;backdrop-filter:blur(6px);display:none;align-items:flex-start;justify-content:center;padding:18px;overflow:auto}
.help-overlay.open{display:flex}
.help-window{width:min(1080px,100%);background:linear-gradient(180deg,#f0f9ff 0%,#f8fafc 220px);border-radius:24px;box-shadow:0 30px 90px #02071399;color:#15213a;padding:22px 24px 26px;position:relative}
.help-head{display:flex;align-items:flex-start;gap:16px;margin-bottom:14px}
.help-head>div:first-child{flex:1}
.help-head h2{margin:0 0 4px;font-size:clamp(22px,3.4vw,30px);color:#0f2a4a}
.help-head p{margin:0;color:#4b5b75;font-size:13px}
.help-close{border:0;width:40px;height:40px;border-radius:50%;background:#e2e8f0;color:#1e293b;font-size:18px;cursor:pointer;flex:0 0 auto}.help-close:hover{background:#cbd5e1}
.help-me{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #dbeafe;border-radius:16px;padding:8px 14px;box-shadow:0 6px 18px #0ea5e91a}
.help-me>span{font-size:28px}
.help-me b{display:block;font-size:16px;color:#b45309}
.help-me small{font-size:11px;color:#64748b}
.help-grid{display:grid;grid-template-columns:1fr 270px;gap:18px}
@media (max-width:820px){.help-grid{grid-template-columns:1fr}.help-head{flex-wrap:wrap}}
.help-new{background:#fff;border:2px dashed #93c5fd;border-radius:16px;padding:10px 14px;margin-bottom:12px}
.help-new summary{cursor:pointer;font-weight:800;color:#1d4ed8}
.help-form{display:grid;gap:8px;margin-top:10px}
.help-form textarea,.help-form select{width:100%;box-sizing:border-box;border:1px solid #dbe3ef;border-radius:12px;padding:10px;font:500 14px/1.45 "Plus Jakarta Sans",sans-serif;background:#fbfdff;color:#1b2842}
.help-form .portal-btn{justify-self:start}
.help-file{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:#0369a1;cursor:pointer}
.help-file input{font-size:12px;max-width:220px}
.help-filters{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:6px 0 12px}
.help-tab{border:1px solid #cbd5e1;background:#fff;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:800;color:#334155;cursor:pointer}
.help-tab.on{background:#0f2a4a;color:#fff;border-color:#0f2a4a}
.help-filters select{border:1px solid #cbd5e1;border-radius:999px;padding:6px 10px;font-size:12px;background:#fff}
.help-q{background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:14px 16px;margin-bottom:12px;box-shadow:0 6px 18px #0f172a0d}
.help-q.solved{border-color:#86efac}
.help-q-top{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.help-q-top small{margin-left:auto;color:#94a3b8;font-size:11px}
.help-chip{display:inline-block;font-size:11px;font-weight:800;padding:3px 9px;border-radius:999px;background:#e0f2fe;color:#0369a1}
.help-chip.ok{background:#dcfce7;color:#15803d}
.help-chip.warn{background:#fef3c7;color:#b45309}
.help-post-meta{font-size:13px;color:#334155;display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.help-post-meta small{color:#94a3b8}
.help-img{display:block;max-width:100%;max-height:340px;border-radius:12px;margin:8px 0;cursor:zoom-in;background:#f1f5f9}
.help-text{margin:6px 0;white-space:pre-wrap;line-height:1.55;font-size:14px;color:#1e293b}
.help-actions{display:flex;gap:6px;flex-wrap:wrap}
.help-act{border:1px solid #e2e8f0;background:#f8fafc;border-radius:999px;padding:5px 11px;font-size:12px;font-weight:800;color:#475569;cursor:pointer;transition:transform .15s}
.help-act:hover:not(:disabled){transform:translateY(-1px)}
.help-act.on{background:#fef3c7;border-color:#fcd34d;color:#b45309}
.help-act.ok{background:#dcfce7;border-color:#86efac;color:#15803d}
.help-act:disabled{opacity:.7;cursor:default}
.help-toggle{margin-top:8px;border:0;background:none;color:#0369a1;font-weight:800;cursor:pointer;padding:4px 0}
.help-replies{border-top:1px dashed #e2e8f0;margin-top:8px;padding-top:8px}
.help-post.reply{background:#f8fafc;border-radius:12px;padding:10px 12px;margin:8px 0}
.help-post.reply.accepted{background:#f0fdf4;border:1px solid #86efac}
.help-post.is-hidden{opacity:.55}
.help-side{background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:14px 16px;align-self:start;position:sticky;top:0}
.help-side h3{margin:0 0 8px;font-size:15px;color:#0f2a4a}
.help-leader{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:6px;padding:6px 0;border-bottom:1px solid #f1f5f9;font-size:13px}
.help-leader small{color:#b45309;font-weight:800}
.help-rules{padding-left:18px;margin:0;font-size:12px;color:#475569;line-height:1.6}
.help-bridge-btn{background:linear-gradient(110deg,#e0f2fe,#ede9fe)!important;color:#1e3a8a!important}
.portal-toast{z-index:1000002!important}
