:root{--bg: #f7f6f2;--text: #1e2a4a;--text-muted: #5f6b85;--text-faint: #949cb0;--heading: #2b3a8f;--surface: #ffffff;--surface-alt: #f4f7fa;--border: #e2e6ee;--border-input: #c9d3e0;--border-subtle: #eef1f6;--navy: #2b3a8f;--navy-deep: #232f75;--steel: #3e85c0;--brand-green: #8db63c;--navbar-bg: #2b3a8f;--navbar-text: #ffffff;--navbar-link: #c6d4f2;--navbar-link-hover: #ffffff;--navbar-user: #93a3d6;--primary: #2d92da;--primary-hover: #1d7dc4;--primary-text: #ffffff;--danger: #d1453b;--accent-bg: #e6f2fb;--accent-text: #1d6fae;--accent-link: #1d7dc4;--success: #5f8420;--success-bg: #f0f6e2;--success-card-bg: #f7faee;--success-border: #8db63c;--neutral-badge-bg: #eef0f3;--neutral-badge-text: #5f6b85;--alert-bg: #fdecea;--alert-text: #b02a25;--input-bg: #ffffff;--input-text: #1e2a4a;--shadow-strong: rgba(20, 30, 70, .28);--shadow-soft: rgba(20, 30, 70, .08);--table-header-text: #5f6b85;--status-done: #679324;--status-progress: #2d92da;--status-none: #8d99b0}:root[data-theme=dark]{--bg: #0c1122;--text: #e7ebf7;--text-muted: #9aa6c8;--text-faint: #707c9e;--heading: #cdd8f5;--surface: #151c36;--surface-alt: #1a2242;--border: #29335c;--border-input: #364173;--border-subtle: #202950;--navy: #2b3a8f;--navy-deep: #101635;--steel: #4d94cf;--brand-green: #a3c85a;--navbar-bg: #0a0e1e;--navbar-text: #ffffff;--navbar-link: #b9c6ea;--navbar-link-hover: #ffffff;--navbar-user: #7f8db8;--primary: #43a4ec;--primary-hover: #2d92da;--primary-text: #ffffff;--danger: #f2685c;--accent-bg: #1c2f55;--accent-text: #8ec7f2;--accent-link: #6ab5f0;--success: #b5d573;--success-bg: #1e2b12;--success-card-bg: #182310;--success-border: #7d9c3a;--neutral-badge-bg: #232c52;--neutral-badge-text: #aab4d4;--alert-bg: #3a1d1b;--alert-text: #f2a49e;--input-bg: #0c1122;--input-text: #e7ebf7;--shadow-strong: rgba(0, 0, 0, .55);--shadow-soft: rgba(0, 0, 0, .4);--table-header-text: #9aa6c8;--status-done: #7d9c3a;--status-progress: #2d92da;--status-none: #5d6a8c}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);transition:background .2s ease,color .2s ease}.page{max-width:1000px;margin:0 auto;padding:24px}.page h1{color:var(--heading)}.page-loading{padding:40px;text-align:center}.navbar{display:flex;align-items:center;justify-content:space-between;padding:10px 24px;background:var(--navbar-bg);color:var(--navbar-text);border-bottom:3px solid var(--brand-green)}.navbar .brand{display:flex;align-items:center;gap:12px;color:var(--navbar-text);text-decoration:none}.brand-logo{color:#fff;flex-shrink:0}.brand-text{display:flex;flex-direction:column;line-height:1.25}.brand-title{font-weight:700;font-size:19px;letter-spacing:1px}[dir=rtl] .brand-title{font-size:15px;letter-spacing:0}.brand-sub{font-size:11px;color:var(--navbar-link)}@media (max-width: 640px){.brand-sub{display:none}}.nav-links{display:flex;align-items:center;gap:16px}.nav-links a{color:var(--navbar-link);text-decoration:none}.nav-links a:hover{color:var(--navbar-link-hover)}.nav-user{color:var(--navbar-user);font-size:14px}.settings-controls{display:flex;align-items:center;gap:8px}.settings-controls-auth{position:absolute;top:16px;inset-inline-end:16px;z-index:2}.settings-btn{background:transparent;border:1px solid rgba(255,255,255,.28);color:#fff;padding:5px 10px;font-size:13px;border-radius:6px;line-height:1.2}.settings-btn:hover{border-color:#fff9;background:transparent}.settings-btn-icon{font-size:15px;padding:4px 8px}button{cursor:pointer;background:var(--primary);color:var(--primary-text);border:none;border-radius:6px;padding:9px 16px;font-size:14px;transition:background .15s ease}button:hover{background:var(--primary-hover)}button:disabled{opacity:.6;cursor:not-allowed}.link-btn,.link-btn:hover{background:none;color:var(--accent-link);padding:0;font-size:14px}.link-btn.danger{color:var(--danger)}input,textarea,select{padding:9px 10px;border:1px solid var(--border-input);border-radius:6px;font-size:14px;font-family:inherit;background:var(--input-bg);color:var(--input-text)}input:focus,textarea:focus,select:focus{outline:2px solid var(--primary);outline-offset:0;border-color:var(--primary)}label{display:flex;flex-direction:column;gap:4px;font-size:14px;margin-bottom:14px}.alert{background:var(--alert-bg);color:var(--alert-text);padding:10px 14px;border-radius:6px;margin-bottom:14px;font-size:14px}.notice{background:var(--success-bg);color:var(--success);padding:10px 14px;border-radius:6px;margin-bottom:14px;font-size:14px}.verify-instructions{font-size:14px;color:var(--text-muted);text-align:center;margin-top:0;overflow-wrap:anywhere}.otp-input{letter-spacing:8px;text-align:center;font-size:22px;font-weight:600;direction:ltr}.auth-page{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(115deg,rgba(0,0,0,0) 0 58%,var(--brand-green) 58% 59.6%,var(--navy-deep) 59.6% 100%),linear-gradient(115deg,var(--navy) 0 24%,var(--steel) 24% 25.4%,var(--navy) 25.4% 100%);overflow:hidden}:root[data-theme=dark] .auth-page{background:linear-gradient(115deg,rgba(0,0,0,0) 0 58%,var(--brand-green) 58% 59.4%,#0a0e22 59.4% 100%),linear-gradient(115deg,#131a3d 0,#131a3d 24%,#2a568a 24%,#2a568a 25.4%,#131a3d 25.4%,#131a3d)}.auth-card{position:relative;z-index:1;background:var(--surface);padding:32px 36px;border-radius:12px;width:380px;box-shadow:0 12px 34px var(--shadow-strong);border-top:4px solid var(--brand-green);margin:24px 0}.auth-card-wide{width:440px;max-width:calc(100vw - 32px)}.auth-card label input,.auth-card label select{width:100%}.auth-brand{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;margin-bottom:18px}.auth-brand .brand-logo{color:var(--primary)}.auth-brand h1{margin:4px 0 0;letter-spacing:1px;font-size:26px;color:var(--heading)}[dir=rtl] .auth-brand h1{font-size:20px;letter-spacing:0}.auth-hospital{font-weight:600;font-size:15px;color:var(--text)}.subtitle{color:var(--text-muted);margin-top:0;margin-bottom:20px;font-size:14px;text-align:center}.switch-link{font-size:14px;text-align:center;color:var(--text-muted)}.auth-layout{display:flex;align-items:flex-end;justify-content:center}.auth-mascot{height:280px;margin-bottom:48px;margin-inline-end:-14px;pointer-events:none;filter:drop-shadow(0 6px 16px rgba(0,0,0,.35))}[dir=rtl] .auth-mascot{transform:scaleX(-1)}@media (max-width: 980px){.auth-mascot{display:none}}.filter-chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:16px 0 4px}.chip,.chip:hover{background:var(--surface);border:1.5px solid var(--border-input);color:var(--text-muted);border-radius:999px;padding:7px 16px;font-size:13px;line-height:1.2;transition:border-color .15s ease,color .15s ease,background .15s ease}.chip:hover{border-color:var(--primary);color:var(--primary)}.chip.active,.chip.active:hover{background:var(--primary);border-color:var(--primary);color:var(--primary-text);font-weight:600}.badge-category{background:var(--success-bg);color:var(--success);margin-bottom:8px;display:inline-block}.course-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin-top:20px}.course-box{display:block;background:var(--surface);border-radius:10px;padding:20px;text-decoration:none;color:inherit;border:1px solid var(--border);border-top:3px solid var(--primary);transition:box-shadow .15s ease}.course-box:hover{box-shadow:0 6px 18px var(--shadow-soft)}.course-box h2{margin:0 0 8px;font-size:18px;color:var(--heading)}.course-desc{color:var(--text-muted);font-size:14px}.course-meta{display:flex;justify-content:space-between;align-items:center;margin-top:14px;font-size:13px;color:var(--text-muted)}.badge{padding:3px 10px;border-radius:999px;font-size:12px;background:var(--accent-bg);color:var(--accent-text)}.badge-completed{background:var(--success-bg);color:var(--success)}.badge-not_started{background:var(--neutral-badge-bg);color:var(--neutral-badge-text)}.step-card{background:var(--surface);border:1px solid var(--border);border-inline-start:4px solid var(--steel);border-radius:10px;padding:20px;margin-top:20px}.step-card h2{color:var(--heading);margin-top:0}.step-card.enroll-card{border-inline-start-color:var(--brand-green)}.target-audience{margin:14px 0}.target-audience h3{margin:0 0 8px;font-size:14px;color:var(--heading)}.target-badges{display:flex;flex-wrap:wrap;gap:6px}.target-badges .badge{margin-bottom:0}.step-card.completed-card{border-color:var(--success-border);border-inline-start-color:var(--success-border);background:var(--success-card-bg);display:flex;align-items:center;justify-content:space-between;gap:20px}.completed-mascot{height:130px;flex-shrink:0}.video-list{list-style:none;padding:0;margin:12px 0 0}.video-list li{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--border-subtle)}.video-frame{margin-top:16px}.video-frame iframe{width:100%;height:420px;border:none;border-radius:8px}.eval-form{background:var(--surface);border:1px solid var(--border);border-inline-start:4px solid var(--primary);border-radius:10px;padding:24px;margin-top:20px}.eval-form h2{color:var(--heading);margin-top:0}.question-block{margin-bottom:18px}.question-text{font-weight:600;margin-bottom:8px}.options{display:flex;flex-direction:column;gap:6px}.option-label{flex-direction:row;align-items:center;gap:8px}.eval-form textarea{width:100%;min-height:70px}.admin-shell{display:flex;min-height:calc(100vh - 59px)}.admin-sidebar{width:200px;background:var(--surface);border-inline-end:1px solid var(--border);padding:20px 0;display:flex;flex-direction:column;gap:4px}.admin-sidebar a{padding:10px 20px;text-decoration:none;color:var(--text);font-size:14px;border-inline-start:3px solid transparent}.admin-sidebar a.active{background:var(--accent-bg);color:var(--accent-link);font-weight:600;border-inline-start-color:var(--brand-green)}.admin-content{flex:1;padding:24px 32px}.admin-content h1{color:var(--heading)}.admin-panel{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:20px;margin-top:20px}.admin-panel h2{color:var(--heading);margin-top:0}.details-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:0 16px;align-items:end}.details-form label input,.details-form label select{width:100%}.details-actions{display:flex;align-items:center;gap:10px;grid-column:1 / -1}.inline-form{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:14px 0}.manage-list{list-style:none;padding:0;margin:0}.manage-list li{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--border-subtle)}.manage-list li span:first-child{flex:1}.muted{color:var(--text-faint);font-size:13px}.muted-heading{margin:18px 0 8px;font-size:14px;color:var(--text-muted)}.data-table a{color:var(--accent-link);text-decoration:none}.data-table a:hover{text-decoration:underline}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px;margin:20px 0}.stat-card{background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--brand-green);border-radius:10px;padding:18px;display:flex;flex-direction:column}.stat-value{font-size:26px;font-weight:700;color:var(--heading)}.stat-label{color:var(--text-muted);font-size:13px}.status-legend{display:flex;flex-wrap:wrap;gap:16px;margin:6px 0 12px;font-size:13px;color:var(--text-muted)}.status-legend span{display:inline-flex;align-items:center;gap:6px}.legend-swatch{width:10px;height:10px;border-radius:3px;display:inline-block}.completion-cell{display:flex;align-items:center;gap:10px;min-width:180px}.status-meter{display:flex;gap:2px;height:10px;flex:1;border-radius:999px;overflow:hidden}.status-meter .seg{border-radius:2px;min-width:3px}.seg-done{background:var(--status-done)}.seg-progress{background:var(--status-progress)}.seg-none{background:var(--status-none)}.completion-pct{font-size:13px;color:var(--text-muted);min-width:36px;text-align:end}.export-row{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}.data-table{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--border);border-radius:10px;overflow:hidden;font-size:14px}.data-table th,.data-table td{text-align:start;padding:10px 14px;border-bottom:1px solid var(--border-subtle)}.data-table th{background:var(--surface-alt);font-weight:600;color:var(--table-header-text);font-size:13px;border-bottom:2px solid var(--steel)}.pager{display:flex;align-items:center;gap:12px;margin-top:14px;font-size:14px}
