:root { --primary: #6366f1; --bg: #0f172a; --card: #1e293b; --text: #f8fafc; }
body { font-family: sans-serif; background: var(--bg); color: var(--text); display: flex; justify-content: center; align-items: center; min-height: 100vh; margin: 0; }
.glass { background: rgba(30, 41, 59, 0.8); backdrop-filter: blur(10px); border: 1px solid rgba(255,255,255,0.1); padding: 2rem; border-radius: 16px; width: 90%; max-width: 450px; box-shadow: 0 25px 50px -12px rgba(0,0,0,0.5); }
input, select, button { width: 100%; padding: 12px; margin: 8px 0; border-radius: 8px; border: none; box-sizing: border-box; }
input, select { background: #334155; color: white; }
button { background: var(--primary); color: white; font-weight: bold; cursor: pointer; transition: 0.3s; }
button:hover { opacity: 0.8; transform: scale(0.98); }
table { width: 100%; border-collapse: collapse; margin-top: 20px; background: #1e293b; border-radius: 10px; overflow: hidden; }
th, td { padding: 12px; text-align: left; border-bottom: 1px solid #334155; font-size: 0.8rem; }
img { border-radius: 5px; object-fit: cover; }

/* Dashboard Specific Styles */
.modal { display:none; position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.8); justify-content:center; align-items:center; z-index:100; }
.btn-secondary { background: #64748b; margin-top: 10px; }
.status-box { padding: 10px; border-radius: 8px; font-size: 0.8rem; text-align: center; margin-bottom: 15px; font-weight: bold; }
.error { background: #ef4444; color: white; }
.success { background: #10b981; color: white; }
button:disabled { background: #1e293b !important; cursor: not-allowed; opacity: 0.5; }
