@charset "UTF-8";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0f1117;--surface: #1a1d27;--surface2: #232636;--border: #2e3147;--accent: #4f6ef7;--accent-hover: #3b5be0;--danger: #e05c5c;--success: #4caf7d;--warning: #f0a732;--text: #e4e6f1;--text-muted: #8b8fa8;--radius: 8px;--shadow: 0 4px 24px rgba(0,0,0,.4)}html,body{height:100%;background:var(--bg);color:var(--text);font-family:Inter,system-ui,sans-serif;font-size:14px}a{color:var(--accent);text-decoration:none}button{cursor:pointer;font-family:inherit;font-size:14px;border:none;border-radius:var(--radius);padding:8px 18px;transition:background .2s,opacity .2s}button:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){background:#c94444}.btn-ghost{background:transparent;color:var(--text-muted);border:1px solid var(--border)}.btn-ghost:hover:not(:disabled){background:var(--surface2);color:var(--text)}.btn-sm{padding:5px 12px;font-size:12px}input,select,textarea{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-family:inherit;font-size:14px;padding:8px 12px;width:100%;outline:none;transition:border-color .2s}input:focus,select:focus,textarea:focus{border-color:var(--accent)}input::placeholder,select::placeholder,textarea::placeholder{color:var(--text-muted)}.badge{display:inline-block;padding:2px 10px;border-radius:20px;font-size:11px;font-weight:600;text-transform:uppercase}.badge.admin{background:#4f6ef733;color:#7b9bff}.badge.edit{background:#f0a73233;color:#f0c060}.badge.reader,.badge.active{background:#4caf7d33;color:#4caf7d}.badge.inactive{background:#e05c5c33;color:#e05c5c}.badge.vip{background:#f0a73233;color:#f0c060}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px}table{width:100%;border-collapse:collapse}table th{color:var(--text-muted);font-size:11px;text-transform:uppercase;letter-spacing:.05em;padding:10px 12px;text-align:left;border-bottom:1px solid var(--border)}table td{padding:12px;border-bottom:1px solid var(--border);color:var(--text)}table tr:last-child td{border-bottom:none}table tr:hover td{background:var(--surface2)}.modal-backdrop{position:fixed;inset:0;background:#000000a6;z-index:100;display:flex;align-items:center;justify-content:center}.modal{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:28px;width:100%;max-width:480px;z-index:101;box-shadow:var(--shadow)}.modal h3{margin-bottom:20px;font-size:16px}.form-group{margin-bottom:14px}.form-group label{display:block;font-size:12px;color:var(--text-muted);margin-bottom:6px}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.page-header h2{font-size:20px;font-weight:600}.search-bar{position:relative;max-width:340px}.search-bar input{padding-left:36px}.search-bar:before{content:"\1f50d";position:absolute;left:10px;top:50%;transform:translateY(-50%);font-size:13px}.pagination{display:flex;align-items:center;gap:8px;margin-top:16px;justify-content:flex-end;color:var(--text-muted);font-size:13px}.pagination button{min-width:32px;padding:4px 8px}.empty-state{text-align:center;padding:48px;color:var(--text-muted);font-size:15px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}
