:root{
  --bg:#0b1020;
  --panel:rgba(255,255,255,.06);
  --text:rgba(255,255,255,.92);
  --muted:rgba(255,255,255,.68);
  --stroke:rgba(255,255,255,.12);
  --brand:#7c5cff;
  --brand2:#20e3b2;
  --danger:#ff5c7a;
  --shadow: 0 18px 70px rgba(0,0,0,.45);
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  color:var(--text);
  color-scheme:dark;
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial;
  background:
    radial-gradient(1100px 650px at 15% 12%, rgba(124,92,255,.35), transparent 60%),
    radial-gradient(900px 600px at 75% 25%, rgba(32,227,178,.22), transparent 55%),
    linear-gradient(180deg, var(--bg), #050716 70%);
}
a{color:inherit}
.container{max-width:1100px;margin:0 auto;padding:26px 18px 56px}
.bar{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:16px 16px;
  border:1px solid var(--stroke);
  border-radius:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.05));
  box-shadow: var(--shadow);
  backdrop-filter: blur(10px);
}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.logo{width:34px;height:34px;border-radius:12px;background:conic-gradient(from 200deg, var(--brand), var(--brand2), var(--brand))}
.brand strong{letter-spacing:.6px;text-transform:uppercase;font-size:13px}
.muted{color:var(--muted);font-size:12px}
.grid{margin-top:16px;display:grid;grid-template-columns: 1fr;gap:14px}
.panel{
  padding:16px;
  border-radius:18px;
  border:1px solid var(--stroke);
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.04));
}

.table-card{
  margin-top:10px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:16px;
  overflow:hidden;
  background: rgba(255,255,255,.03);
  box-shadow: 0 10px 40px rgba(0,0,0,.25);
}

/* Solid, no-gradient table wrapper (for categories etc.) */
.table-plain{
  border:1px solid rgba(255,255,255,.10);
  border-radius:16px;
  overflow:hidden;
  background: rgba(11,16,32,.70);
  box-shadow: none;
}
.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.spacer{flex:1}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:10px 12px;border-radius:14px;
  border:1px solid var(--stroke);
  background:rgba(255,255,255,.06);
  color:var(--text);
  text-decoration:none;
  font-weight:700;font-size:13px;
  transition: transform .18s ease, background .18s ease, border-color .18s ease;
  cursor:pointer;
}
.btn:hover{transform:translateY(-1px);background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.20)}
.btn.primary{border-color: rgba(124,92,255,.55);background: linear-gradient(135deg, rgba(124,92,255,.85), rgba(32,227,178,.35))}
.btn.danger{border-color: rgba(255,92,122,.40);background: rgba(255,92,122,.10)}
.table{
  width:100%;
  border-collapse: collapse;
  overflow:hidden;
  border-radius:14px;
}
.table th,.table td{
  border-bottom:1px solid rgba(255,255,255,.10);
  padding:12px 10px;
  text-align:left;
  vertical-align:top;
  font-size:13px;
}
.table td{background: transparent;}
.table .text-center{text-align:center;}
.table th{
  position: sticky;
  top: 0;
  z-index: 5;
  background: rgba(11,16,32,.92);
  backdrop-filter: blur(8px);
  font-size:12px;
  letter-spacing:.5px;
  text-transform:uppercase;
  color:rgba(255,255,255,.65)
}

.pagination{
  margin-top:12px;
  padding-top:12px;
  border-top:1px solid rgba(255,255,255,.10);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
}
.pagination-links{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.input,.textarea,.select{
  width:100%;
  padding:12px 12px;
  border-radius:14px;
  border:1px solid var(--stroke);
  background:#151b24;
  color:#e6edf3;
  outline:none;
  font-size:14px;
}
.select{
  cursor:pointer;
  appearance:auto;
}
.select option{
  background:#151b24;
  color:#e6edf3;
  padding:10px 12px;
}
.textarea{min-height:120px;resize:vertical}
.hint{color:rgba(255,255,255,.55);font-size:12px;margin-top:8px}
.flash{
  margin-top:14px;
  padding:12px 12px;
  border-radius:14px;
  border:1px solid rgba(32,227,178,.35);
  background: rgba(32,227,178,.10);
}
.flash.error{border-color: rgba(255,92,122,.35);background: rgba(255,92,122,.10)}
.two{display:grid;grid-template-columns: 1fr 1fr;gap:12px}
.dashboard-thumb{
  width:48px;height:48px;border-radius:10px;object-fit:cover;
  display:block;background:rgba(255,255,255,.08);
}
.dashboard-thumb-placeholder{
  display:block;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2'%3E%3Crect x='3' y='3' width='18' height='18' rx='2'/%3E%3Ccircle cx='8.5' cy='8.5' r='1.5'/%3E%3Cpath d='m21 15-5-5L5 21'/%3E%3C/svg%3E") center/55% no-repeat;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2'%3E%3Crect x='3' y='3' width='18' height='18' rx='2'/%3E%3Ccircle cx='8.5' cy='8.5' r='1.5'/%3E%3Cpath d='m21 15-5-5L5 21'/%3E%3C/svg%3E") center/55% no-repeat;
}
@media (max-width: 820px){.two{grid-template-columns: 1fr};.bar{flex-wrap:wrap}.table{font-size:12px}.dashboard-thumb{width:36px;height:36px}}
@media (max-width: 600px){.table th:nth-child(3),.table td:nth-child(3){display:none}}

