:root{
  --bg:#0b0f12; --panel:#0f1720; --card:#111827; --muted:#9aa4b2;
  --accent:#10b981; --accent2:#7c3aed; --danger:#ef4444; --text:#e6eef6; --border: rgba(255,255,255,0.06);
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text)}
.container{max-width:1200px;margin:24px auto;padding:20px;background:linear-gradient(180deg, rgba(255,255,255,0.01), rgba(255,255,255,0.00));border-radius:12px;border:1px solid var(--border);width:85%}
.topbar{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:transparent;margin-bottom:12px}
.logo-text{font-weight:700}
.navlinks a{color:var(--text);text-decoration:none;margin-left:8px;padding:6px 10px;border-radius:8px}
.login-wrap{display:flex;height:100vh;align-items:center;justify-content:center}
.login-box{width:420px;padding:24px;background:rgba(255,255,255,0.02);border-radius:12px;border:1px solid var(--border)}
.btn{background:var(--accent2);color:white;padding:8px 12px;border-radius:8px;text-decoration:none;display:inline-block;border:none;cursor:pointer}
.btn.ghost{background:transparent;border:1px solid rgba(255,255,255,0.04)}
.btn.small{padding:6px 8px;font-size:13px;border-radius:6px}
.btn-primary{background:var(--accent);padding:10px 14px;border-radius:10px;border:none;color:#072018;cursor:pointer}
.btn.danger{background:var(--danger);color:white}
.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.card{padding:14px;border-radius:10px;border:1px solid var(--border)}
.card-title{font-weight:700;font-size:16px;margin-bottom:10px}
.search-row{display:flex;gap:8px;align-items:center;margin-bottom:12px}
.search-row input{flex:1;padding:10px;border-radius:8px;border:1px solid rgba(255,255,255,0.04);background:#121212;color:var(--text)}
.table-wrap{border-radius:10px;overflow:hidden;border:1px solid rgba(255,255,255,0.03)}
.table-header,.table-row{display:flex;align-items:center;padding:10px;background:rgba(255,255,255,0.01);border-bottom:1px solid rgba(255,255,255,0.02)}
.table-header{font-weight:700;color:#cfe6ff;background:linear-gradient(180deg,rgba(255,255,255,0.03),rgba(255,255,255,0.01));position:sticky;top:0;z-index:2}
.th,.td{padding:6px 8px}
.idx-col{width:40px} .fk-col{width:160px} .fa-col{width:220px} .ka-col{width:160px} .pw-col{width:120px} .notes-col{flex:1} .ga-col{width:50px} .edit-col{width:90px}
input.readonly, .readonly{background:transparent;border:1px solid rgba(255,255,255,0.03);color:var(--text);padding:8px;border-radius:6px;width:100%}
.note-readonly{background:transparent;border:1px dashed rgba(255,255,255,0.03);padding:8px;border-radius:8px;color:#cfe6ff;width:100%;height:56px;resize:none}
.row-ga{background:linear-gradient(90deg, rgba(16,185,129,0.06), rgba(16,185,129,0.02));border-left:3px solid rgba(16,185,129,0.6)}
.row-no-ga{background:linear-gradient(90deg, rgba(37,99,235,0.04), rgba(37,99,235,0.02));border-left:3px solid rgba(37,99,235,0.6)}
label{display:block;margin-top:10px;color:var(--muted);font-size:13px}
input,textarea,select{width:100%;padding:10px;border-radius:8px;border:1px solid rgba(255,255,255,0.04);background:#121212;color:var(--text)}
textarea.small-note{height:80px;resize:vertical}
.dropdown{background:rgba(255,255,255,0.02);border:1px solid rgba(255,255,255,0.03);max-height:220px;overflow:auto;border-radius:6px;margin-top:6px}
.drop-item{padding:8px;border-bottom:1px solid rgba(255,255,255,0.01);cursor:pointer}
.drop-item:hover{background:rgba(255,255,255,0.02)}
.icon-btn{background:transparent;border:none;color:var(--text);cursor:pointer;padding:6px;font-size:14px}
.users-table{width:100%;border-collapse:collapse}
.users-table td, .users-table th{padding:8px;border-bottom:1px solid rgba(255,255,255,0.02)}
.form-actions{margin-top:12px}
