:root{
	--indemia-navy: #2D2669;
	--indemia-orange: #F26222;
	--indemia-bg: #F7F7FB;
	--indemia-border: #E5E4F0;
}

.indemia-alert{ padding:12px 16px; border-radius:8px; margin-bottom:16px; font-size:14px; }
.indemia-alert-error{ background:#FDECEA; color:#B3261E; border:1px solid #F5C2BE; }

/* ---------- Auth ---------- */
.indemia-auth-wrap{ max-width:400px; margin:40px auto; padding:32px; background:#fff; border:1px solid var(--indemia-border); border-radius:14px; box-shadow:0 4px 24px rgba(45,38,105,.08); }
.indemia-logo{ text-align:center; margin-bottom:20px; }
.indemia-logo img{ max-width:180px; }
.indemia-tabs{ display:flex; margin-bottom:24px; border-radius:8px; overflow:hidden; border:1px solid var(--indemia-border); }
.indemia-tab{ flex:1; padding:10px; background:#fff; border:none; cursor:pointer; font-weight:600; color:var(--indemia-navy); }
.indemia-tab.active{ background:var(--indemia-navy); color:#fff; }
.indemia-form label{ display:block; margin:12px 0 6px; font-weight:600; color:var(--indemia-navy); font-size:13px; }
.indemia-form input{ width:100%; padding:10px 12px; border:1px solid var(--indemia-border); border-radius:8px; box-sizing:border-box; }
.indemia-btn{ display:inline-block; margin-top:20px; width:100%; text-align:center; background:var(--indemia-orange); color:#fff !important; border:none; padding:12px; border-radius:8px; font-weight:700; cursor:pointer; text-decoration:none; box-sizing:border-box; transition:opacity .15s; }
.indemia-btn:hover{ opacity:.9; }
.indemia-btn-sm{ width:auto; padding:8px 18px; margin-top:10px; }

/* ---------- Course grid ---------- */
.indemia-course-grid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(240px,1fr)); gap:20px; margin-top:16px; }
.indemia-course-card{ background:#fff; border:1px solid var(--indemia-border); border-radius:12px; padding:16px; }
.indemia-course-card img{ width:100%; height:130px; object-fit:cover; border-radius:8px; margin-bottom:10px; }
.indemia-course-card h3{ color:var(--indemia-navy); margin:0 0 10px; }

.indemia-progress-bar{ background:#EDEDF6; border-radius:20px; height:10px; overflow:hidden; }
.indemia-progress-bar span{ display:block; height:100%; background:linear-gradient(90deg,var(--indemia-navy),var(--indemia-orange)); }
.indemia-progress-bar.small{ height:6px; display:inline-block; width:100px; vertical-align:middle; margin-right:6px; }
.indemia-progress-label{ font-size:13px; color:#666; margin:6px 0; }

/* ---------- Player ---------- */
.indemia-player h2{ color:var(--indemia-navy); }
.indemia-player-layout{ display:grid; grid-template-columns:280px 1fr; gap:20px; margin-top:20px; }
.indemia-item-list{ background:#fff; border:1px solid var(--indemia-border); border-radius:12px; overflow:hidden; }
.indemia-item{ padding:12px 16px; display:flex; gap:10px; align-items:center; cursor:pointer; border-bottom:1px solid var(--indemia-border); font-size:14px; }
.indemia-item:hover{ background:var(--indemia-bg); }
.indemia-item.current{ background:#FFF3EC; border-left:3px solid var(--indemia-orange); }
.indemia-item.done .indemia-item-icon{ color:#2E7D32; }
.indemia-item-viewer{ background:#fff; border:1px solid var(--indemia-border); border-radius:12px; padding:20px; min-height:420px; }
.indemia-item-viewer video, .indemia-item-viewer iframe{ width:100%; min-height:400px; border-radius:8px; border:none; }
.indemia-item-viewer embed{ width:100%; height:600px; }

/* ---------- Mock ---------- */
.indemia-mock-q{ margin-bottom:18px; padding-bottom:14px; border-bottom:1px solid var(--indemia-border); }
.indemia-mock-q p.q-text{ font-weight:600; color:var(--indemia-navy); }
.indemia-mock-result{ padding:16px; border-radius:10px; background:var(--indemia-bg); font-size:16px; }

/* ---------- Dashboard ---------- */
.indemia-dashboard{ max-width:1000px; margin:0 auto; }
.indemia-dash-header{ display:flex; justify-content:space-between; align-items:center; }
.indemia-dash-header h2{ color:var(--indemia-navy); }
.indemia-overall{ display:flex; align-items:center; gap:20px; background:#fff; border:1px solid var(--indemia-border); border-radius:12px; padding:20px; margin:20px 0; }
.indemia-ring{ --pct:0; width:80px; height:80px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-weight:700; color:var(--indemia-navy);
	background: conic-gradient(var(--indemia-orange) calc(var(--pct)*1%), #EDEDF6 0); }
.indemia-ring span{ background:#fff; width:60px; height:60px; border-radius:50%; display:flex; align-items:center; justify-content:center; }

.indemia-table{ width:100%; border-collapse:collapse; background:#fff; border:1px solid var(--indemia-border); border-radius:10px; overflow:hidden; }
.indemia-table th, .indemia-table td{ padding:10px 14px; border-bottom:1px solid var(--indemia-border); text-align:left; font-size:14px; }
.indemia-table th{ background:var(--indemia-navy); color:#fff; }

@media (max-width: 700px){
	.indemia-player-layout{ grid-template-columns:1fr; }
}
