:root{--turquoise:#2CC5B8;--turquoise-dark:#1A9E93;--turquoise-light:#E0F7F5;--coral:#FF6B6B;--coral-light:#FFE0E0;--purple:#B39DDB;--purple-light:#EDE7F6;--yellow:#FFB347;--yellow-light:#FFF3E0;--gray-50:#F8F9FA;--gray-100:#F0F2F5;--gray-200:#E4E6EB;--gray-400:#B0B3B8;--gray-600:#65676B;--gray-800:#2D3436;--sidebar-w:240px;--font:'Nunito',sans-serif}
*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font);background:var(--gray-50);color:var(--gray-800);line-height:1.6}
a{color:var(--turquoise-dark);text-decoration:none}img{max-width:100%}
.admin-body{display:flex;min-height:100vh}
.admin-sidebar{width:var(--sidebar-w);background:var(--gray-800);color:#fff;position:fixed;top:0;bottom:0;overflow-y:auto;z-index:100;transition:.3s}
.sidebar-header{padding:20px;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar-header a{color:#fff;font-size:1.2rem;font-weight:800;display:flex;align-items:center;gap:8px}
.sidebar-nav{padding:12px 0}.sidebar-nav a{display:flex;align-items:center;padding:10px 20px;color:rgba(255,255,255,.7);font-size:.9rem;font-weight:600;transition:.2s}.sidebar-nav a:hover,.sidebar-nav a.active{background:rgba(255,255,255,.1);color:#fff}.sidebar-nav hr{border:0;border-top:1px solid rgba(255,255,255,.1);margin:8px 0}
.sidebar-badge{margin-left:auto;background:#FF6B6B;color:#fff;font-size:.7rem;font-weight:700;padding:2px 7px;border-radius:10px;min-width:18px;text-align:center;line-height:1.3}
.admin-main{margin-left:var(--sidebar-w);flex:1;min-width:0}
.admin-topbar{background:#fff;padding:16px 24px;border-bottom:1px solid var(--gray-200);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:50}
.sidebar-toggle{background:none;border:none;font-size:1.5rem;cursor:pointer;padding:4px}
.sidebar-collapsed .admin-sidebar{transform:translateX(-100%)}.sidebar-collapsed .admin-main{margin-left:0}
.admin-content{padding:24px}
.admin-content h1{font-size:1.6rem;margin-bottom:20px;color:var(--gray-800)}.admin-content h2{font-size:1.3rem;margin:24px 0 16px}
.alert{padding:12px 16px;border-radius:10px;font-weight:600;font-size:.9rem;margin-bottom:16px}.alert-success{background:var(--turquoise-light);color:var(--turquoise-dark)}.alert-error{background:var(--coral-light);color:#C0392B}.alert-info{background:var(--purple-light);color:#6C3483}
.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin-bottom:24px}
.stat-card{background:#fff;border-radius:14px;padding:20px;text-align:center;box-shadow:0 2px 8px rgba(0,0,0,.05);border-left:4px solid var(--gray-200)}
.stat-turquoise{border-color:var(--turquoise)}.stat-coral{border-color:var(--coral)}.stat-purple{border-color:var(--purple)}.stat-yellow{border-color:var(--yellow)}
.stat-num{font-size:2rem;font-weight:800;line-height:1}.stat-label{font-size:.8rem;color:var(--gray-600);font-weight:600;margin-top:4px}
.data-table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.05)}
.data-table th{background:var(--gray-100);padding:12px 16px;text-align:left;font-size:.85rem;font-weight:700;color:var(--gray-600);text-transform:uppercase;letter-spacing:.5px}
.data-table td{padding:12px 16px;border-top:1px solid var(--gray-100);font-size:.9rem}.data-table tr:hover td{background:var(--gray-50)}
.card{background:#fff;border-radius:14px;padding:24px;box-shadow:0 2px 8px rgba(0,0,0,.05);border:1px solid var(--gray-100)}
.card h3{margin-bottom:8px}.card-unread{border-left:4px solid var(--coral)}.mb-1{margin-bottom:16px}
.btn{display:inline-block;padding:10px 24px;border-radius:50px;font-family:var(--font);font-weight:700;font-size:.9rem;border:2px solid transparent;cursor:pointer;transition:.2s;text-align:center;text-decoration:none}
.btn-primary{background:var(--turquoise);color:#fff;border-color:var(--turquoise)}.btn-primary:hover{background:var(--turquoise-dark)}
.btn-outline{background:transparent;color:var(--turquoise);border-color:var(--turquoise)}.btn-outline:hover{background:var(--turquoise);color:#fff}
.btn-sm{padding:6px 14px;font-size:.8rem}.btn-block{display:block;width:100%}
.badge{display:inline-block;padding:2px 10px;border-radius:20px;font-size:.75rem;font-weight:700;background:var(--gray-200);color:var(--gray-600)}.badge-coral{background:var(--coral-light);color:var(--coral)}
.form-group{margin-bottom:16px}.form-group label{display:block;font-weight:700;margin-bottom:4px;font-size:.85rem}
.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 14px;border:2px solid var(--gray-200);border-radius:10px;font-family:var(--font);font-size:.9rem;transition:.2s}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--turquoise);box-shadow:0 0 0 3px rgba(44,197,184,.15)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}.form-group.full-width{grid-column:1/-1}
.checkbox-label{display:flex;align-items:center;gap:8px;font-weight:400!important;cursor:pointer}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--turquoise)}
.code-textarea{font-family:'Fira Code',monospace;font-size:.85rem;line-height:1.5}
.card-grid{display:grid;gap:16px}.cols-2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.cols-3{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.media-thumb{border-radius:8px;overflow:hidden;aspect-ratio:1}.media-thumb img{width:100%;height:100%;object-fit:cover}
.inline-item{display:inline-block;padding:4px 12px;margin:4px;background:var(--gray-100);border-radius:20px;font-size:.85rem}
.inline-input{padding:6px 12px;border:1px solid var(--gray-200);border-radius:8px;font-size:.85rem;margin:0 4px}
.messages-list{max-height:500px;overflow-y:auto;padding:16px 0;margin-bottom:16px}
.message-bubble{max-width:80%;padding:12px 16px;border-radius:16px;margin-bottom:8px;line-height:1.5}.message-bubble.sent{background:var(--turquoise-light);margin-left:auto;border-bottom-right-radius:4px}.message-bubble.received{background:var(--gray-100);border-bottom-left-radius:4px}.message-bubble small{display:block;margin-top:4px;font-size:.75rem;color:var(--gray-400)}
.message-form{display:flex;gap:8px;align-items:flex-end}.message-form textarea{flex:1;padding:10px;border:2px solid var(--gray-200);border-radius:12px;font-family:var(--font);resize:none}.message-form textarea:focus{border-color:var(--turquoise);outline:none}
.thread-link{display:block;text-decoration:none;color:var(--gray-800)}.thread-link:hover{border-color:var(--turquoise)}.has-unread{border-left:4px solid var(--coral)}
.btn-group{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.notification-header{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px}.notification-header .badge{font-size:.7rem}
.badge-informativ{background:var(--turquoise-light);color:var(--turquoise-dark)}.badge-atentie{background:var(--yellow-light);color:#E65100}.badge-medical{background:var(--coral-light);color:var(--coral)}.badge-progres{background:var(--purple-light);color:#6C3483}
.pagination{display:flex;gap:8px;justify-content:center;margin-top:24px}.pagination a{padding:6px 12px;border-radius:8px;background:#fff;border:1px solid var(--gray-200);font-size:.85rem;font-weight:600}.pagination a.active{background:var(--turquoise);color:#fff}
.admin-login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,var(--turquoise),var(--purple))}
.admin-login-page .auth-card{max-width:400px;padding:40px;background:#fff;border-radius:20px;box-shadow:0 8px 40px rgba(0,0,0,.15);text-align:center;width:100%}
.admin-login-page .auth-card h1{font-size:1.8rem;margin-bottom:20px}
@media(max-width:768px){.admin-sidebar{transform:translateX(-100%)}.admin-main{margin-left:0}.admin-body.sidebar-open .admin-sidebar{transform:translateX(0)}.form-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}}
.page-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:16px}.page-header h1{margin:0}
.badge-success{background:#d4edda;color:#155724}.badge-warning{background:#fff3cd;color:#856404}.badge-info{background:var(--turquoise-light);color:var(--turquoise-dark)}.badge-muted{background:var(--gray-200);color:var(--gray-500)}.badge-danger{background:#f8d7da;color:#721c24}
.btn-danger{background:#dc3545;color:#fff;border:none;cursor:pointer;padding:8px 16px;border-radius:8px;font-weight:600;font-family:var(--font)}.btn-danger:hover{background:#c82333}
.cols-4{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.input-disabled{background:var(--gray-100);color:var(--gray-500);cursor:not-allowed;border:1px solid var(--gray-200);padding:8px 12px;border-radius:8px}
.text-danger{color:#dc3545}.text-center{text-align:center}.text-muted{color:var(--gray-400)}.mb-1{margin-bottom:12px}.mt-1{margin-top:16px}
.filter-form .form-group{margin-bottom:0}
