body{font-family:system-ui,-apple-system,Segoe UI,Roboto; margin:0; background:#0b0f19; color:#e8eefc;}
a{color:#9ec5ff; text-decoration:none}
.wrap{max-width:1100px; margin:0 auto; padding:20px;}
.grid{display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:12px;}
.card{background:#121a2b; padding:14px; border-radius:12px; border:1px solid #1f2a44;}
.title{font-weight:700; margin-bottom:6px;}
.muted{opacity:.7; font-size:13px;}
.mgrid{display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); gap:10px;}
.tile{display:block; background:#121a2b; border-radius:12px; overflow:hidden; border:1px solid #1f2a44; height:180px;}
.tile img{width:100%; height:100%; object-fit:cover; display:block;}
.placeholder{display:flex; align-items:center; justify-content:center; height:100%; opacity:.7;}
.form{display:grid; gap:8px; max-width:520px;}
input,select,button{padding:10px; border-radius:10px; border:1px solid #1f2a44; background:#0f1626; color:#e8eefc;}
button{cursor:pointer; background:#1b3a6b;}
.ok{color:#9cffb2;}
.err{color:#ff9e9e;}
.tbl{width:100%; border-collapse:collapse; font-size:13px;}
.tbl th,.tbl td{border-bottom:1px solid #1f2a44; padding:8px; text-align:left;}
.pager{margin-top:16px; display:flex; gap:12px;}