*{box-sizing:border-box}body{margin:0;font:15px/1.5 system-ui,Segoe UI,Arial;background:#f6f8fb}
.admin{display:flex;min-height:100vh}
.sidebar{width:240px;background:#0f172a;color:#cbd5e1;padding:16px;position:sticky;top:0;height:100vh;overflow:auto}
.sidebar .brand{font-weight:800;color:#fff;margin-bottom:12px}
.sidebar nav a{display:block;color:#cbd5e1;padding:10px;border-radius:8px;margin:6px 0;text-decoration:none}
.sidebar nav a.active,.sidebar nav a:hover{background:#1e293b;color:#fff}
.content{flex:1;padding:20px}
.card{background:#fff;border-radius:14px;padding:16px;margin:12px;box-shadow:0 4px 18px rgba(0,0,0,.06)}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
label{display:block;font-weight:600;margin:10px 0 6px}
input,select{width:100%;padding:10px;border:1px solid #cbd5e1;border-radius:10px}
.btn{border:0;border-radius:8px;padding:10px 14px;cursor:pointer}
.btn-primary{background:#198754;color:#fff}
.btn-danger{background:#dc3545;color:#fff}
.alert{background:#fee;border:1px solid #f99;color:#900;padding:8px;border-radius:8px;margin:10px 0}
.preview canvas{width:100%;height:auto;border-radius:12px;border:1px solid #eee}
.login-page{display:grid;place-items:center;height:100vh}
.login-card{width:360px;max-width:92%;background:#fff;padding:24px;border-radius:16px;box-shadow:0 6px 24px rgba(0,0,0,.08)}
.login-card h1{margin:0 0 12px}
.login-card form label{font-weight:600;display:block;margin-top:8px}
.login-card input{width:100%;padding:10px;border:1px solid #ccc;border-radius:8px;margin-top:6px}
.login-card button{margin-top:12px;width:100%}
.table{width:100%;border-collapse:collapse}
.table th,.table td{border-bottom:1px solid #eee;padding:8px}
@media (max-width:900px){.grid-2{grid-template-columns:1fr}}