@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600&display=swap');
:root { --bg: #030303; --card: rgba(20, 20, 25, 0.7); --border: rgba(255, 255, 255, 0.08); --text: #eee; --accent: #3b82f6; }
body { background: var(--bg); color: var(--text); font-family: 'Inter', sans-serif; margin: 0; display: flex; min-height: 100vh; overflow: hidden; }
.aura { background: radial-gradient(circle at 50% -20%, #1e293b 0%, #030303 60%); }
.center { display: flex; align-items: center; justify-content: center; width: 100%; }
.sidebar { width: 240px; border-right: 1px solid var(--border); padding: 2rem 1rem; display: flex; flex-direction: column; background: rgba(0,0,0,0.2); backdrop-filter: blur(10px); }
.brand { font-weight: 600; font-size: 1.2rem; margin-bottom: 3rem; padding-left: 1rem; color: var(--accent); }
nav a { display: flex; align-items: center; gap: 12px; padding: 0.8rem 1rem; color: #888; text-decoration: none; border-radius: 10px; margin-bottom: 5px; transition: 0.3s; }
nav a span { font-size: 1.1rem; }
nav a:hover, nav a.active { background: var(--card); color: #fff; box-shadow: 0 4px 15px rgba(0,0,0,0.3); border: 1px solid var(--border); }
.logout { margin-top: auto; color: #555; text-decoration: none; font-size: 0.9rem; padding: 1rem; }
main { flex: 1; padding: 2rem; display: flex; justify-content: center; align-items: flex-start; overflow-y: auto; }
.glass-card { background: var(--card); backdrop-filter: blur(20px); border: 1px solid var(--border); border-radius: 20px; padding: 2rem; }
.bento-main { width: 100%; max-width: 500px; }
.bento-wide { width: 100%; max-width: 900px; }
h2 { margin-top: 0; font-weight: 600; letter-spacing: -0.5px; }
input { width: 100%; padding: 1rem; background: rgba(0,0,0,0.3); border: 1px solid var(--border); color: #fff; border-radius: 12px; margin-bottom: 1rem; box-sizing: border-box; }
.btn-glow { background: #fff; color: #000; border: none; padding: 1rem; width: 100%; border-radius: 12px; font-weight: 600; cursor: pointer; transition: 0.3s; }
.btn-glow:hover { transform: translateY(-2px); box-shadow: 0 0 20px rgba(255,255,255,0.2); }
.fancy-drop { border: 2px dashed var(--border); padding: 4rem 2rem; border-radius: 15px; text-align: center; color: #666; transition: 0.3s; cursor: pointer; }
.fancy-drop.active { border-color: var(--accent); background: rgba(59, 130, 246, 0.05); color: #fff; }
.fancy-drop .icon { font-size: 3rem; margin-bottom: 1rem; opacity: 0.5; }
.table-wrapper { margin-top: 1rem; }
table { width: 100%; border-collapse: collapse; }
th { text-align: left; font-size: 0.75rem; color: #555; text-transform: uppercase; padding-bottom: 1rem; }
td { padding: 1rem 0; border-top: 1px solid var(--border); font-size: 0.9rem; }
.f-info strong { display: block; color: #ddd; }
.f-info small { color: #555; font-size: 0.7rem; }
.btn-s { background: #222; color: #eee; text-decoration: none; padding: 5px 12px; border-radius: 6px; font-size: 0.8rem; border: 1px solid var(--border); margin-right: 5px; }
.btn-s.del { color: #ef4444; }
.btn-s:hover { background: #333; }
.flex-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 1rem; }
.count { background: #3b82f620; color: var(--accent); padding: 4px 10px; border-radius: 20px; font-size: 0.75rem; font-weight: 600; }
.ok { color: #22c55e; margin-bottom: 1rem; }
.err { color: #ef4444; font-size: 0.9rem; margin-bottom: 1rem; }