.admin-login{min-height:85vh;display:flex;align-items:center;justify-content:center;background:var(--bg-color)}.login-card{background:var(--card-bg);padding:3rem;border-radius:var(--radius);box-shadow:var(--shadow-lg);width:100%;max-width:450px;text-align:center}.login-card h1{font-size:2rem;margin-bottom:.5rem}.login-subtitle{color:var(--text-light);margin-bottom:2rem}.login-form{text-align:left}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-weight:600;margin-bottom:.5rem;color:var(--text-color)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:var(--radius);font-size:1rem;transition:border-color .3s;font-family:inherit}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color)}.form-group small{display:block;color:var(--text-light);font-size:.875rem;margin-top:.25rem}.login-message{margin-top:1rem;padding:.75rem;border-radius:var(--radius);text-align:center;display:none}.login-message.success{background:#d1fae5;color:#065f46;display:block}.login-message.error{background:#fee2e2;color:#991b1b;display:block}.admin-content{padding:3rem 0;min-height:70vh}.admin-content h1{font-size:2.5rem;margin-bottom:2rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:3rem}.stat-card{background:var(--card-bg);padding:2rem;border-radius:var(--radius);box-shadow:var(--shadow)}.stat-card h3{font-size:1rem;color:var(--text-light);margin-bottom:.5rem}.stat-value{font-size:2.5rem;font-weight:700;color:var(--primary-color)}.dashboard-actions{background:var(--card-bg);padding:2rem;border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:2rem}.dashboard-actions h2{font-size:1.5rem;margin-bottom:1.5rem}.action-buttons{display:flex;gap:1rem;flex-wrap:wrap}.recent-activity{background:var(--card-bg);padding:2rem;border-radius:var(--radius);box-shadow:var(--shadow)}.recent-activity h2{font-size:1.5rem;margin-bottom:1.5rem}.activity-item{padding:1rem;border-left:3px solid var(--primary-color);background:var(--bg-color);margin-bottom:1rem;border-radius:var(--radius)}.activity-item h4{margin-bottom:.25rem}.activity-item p{color:var(--text-light);font-size:.9rem;margin:0}.activity-date{color:var(--text-light);font-size:.85rem}.content-note{background:var(--bg-color);padding:1.5rem;border-radius:var(--radius);margin-top:2rem}.content-note h3{margin-bottom:.5rem}.admin-table{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.admin-table table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:1rem;text-align:left;border-bottom:1px solid var(--border-color)}.admin-table th{background:var(--bg-color);font-weight:600;color:var(--text-color)}.admin-table tbody tr:hover{background:var(--bg-color)}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:999px;font-size:.875rem;font-weight:600}.status-badge.published{background:#d1fae5;color:#065f46}.status-badge.concept{background:#fef3c7;color:#92400e}.table-actions{display:flex;gap:.5rem}.btn-sm{padding:.4rem 1rem;font-size:.875rem}.page-header-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.page-header-actions h1{margin:0}.admin-form{background:var(--card-bg);padding:2rem;border-radius:var(--radius);box-shadow:var(--shadow);max-width:800px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.form-actions{display:flex;gap:1rem;margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border-color)}.lesson-editor{display:flex;flex-direction:column;gap:2rem}.editor-section{background:var(--card-bg);padding:2rem;border-radius:var(--radius);box-shadow:var(--shadow)}.editor-section h2{font-size:1.5rem;margin-bottom:1.5rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.section-header h2{margin:0}.block-actions{display:flex;gap:.5rem;flex-wrap:wrap}.content-blocks{display:flex;flex-direction:column;gap:1rem}.content-block{background:var(--bg-color);border:2px solid var(--border-color);border-radius:var(--radius);padding:1.5rem;position:relative}.block-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.block-type{display:flex;align-items:center;gap:.5rem;font-weight:600}.block-badge{padding:.25rem .75rem;border-radius:999px;font-size:.75rem;text-transform:uppercase;font-weight:700}.block-badge.text{background:#dbeafe;color:#1e40af}.block-badge.video{background:#e9d5ff;color:#6b21a8}.block-badge.image{background:#d1fae5;color:#065f46}.block-badge.assignments{background:#fed7aa;color:#9a3412}.block-controls{display:flex;gap:.5rem}.block-body{display:flex;flex-direction:column;gap:1rem}.upload-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:var(--primary-color);color:#fff;border-radius:var(--radius);cursor:pointer;transition:opacity .3s}.upload-btn:hover{opacity:.9}.upload-info{background:#dbeafe;padding:.75rem;border-radius:var(--radius);font-size:.875rem;color:#1e40af}@media (max-width: 768px){.admin-table{overflow-x:auto}.stats-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column}.page-header-actions{flex-direction:column;align-items:flex-start;gap:1rem}.form-actions{flex-direction:column}.block-actions{width:100%}.block-actions button{flex:1}}.dashboard-actions a{display:inline-block;background:var(--primary-color);color:#fff;padding:.75rem 1.25rem;border-radius:var(--radius);text-decoration:none;font-weight:600}.dashboard-actions a:hover{opacity:.9}.admin-card{background:var(--card-bg);padding:1.5rem;border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:1rem;border-left:4px solid var(--primary-color);transition:all .3s ease}.admin-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.admin-card h3{margin:0 0 .5rem;font-size:1.3rem;color:var(--text-color)}.admin-card p{margin:.5rem 0;line-height:1.6}.admin-card .btn{margin:0 .25rem}.admin-card .btn-sm{padding:.5rem 1rem;font-size:.9rem}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:600;margin-left:.5rem}.status-gepubliceerd{background:#d4edda;color:#155724}.status-concept{background:#fff3cd;color:#856404}
