*{box-sizing:border-box}body{margin:0;background:#f6f7fb;color:#171717;font:14px system-ui,Segoe UI,sans-serif}header{display:flex;justify-content:space-between;align-items:center;padding:22px 3%;background:white;border-bottom:1px solid #e4e6eb}h1{margin:0;font-size:28px}h1 b,h3{color:#6d3ce8}header p{margin:4px 0;color:#666}main{display:grid;grid-template-columns:minmax(430px,1fr) minmax(430px,1fr);gap:20px;padding:24px 3%;height:calc(100vh - 100px)}.left{overflow:auto}.card{background:white;border:1px solid #e4e6eb;border-radius:13px;padding:18px;margin-bottom:14px}.drop{border:2px dashed #c8c9d1;border-radius:10px;padding:30px;text-align:center}.drop.drag{border-color:#6d3ce8;background:#f5f1ff}.drop label{color:#6d3ce8;font-weight:700;cursor:pointer}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}label{font-weight:650}input,select,button{width:100%;padding:11px;margin-top:5px;border:1px solid #d9dce2;border-radius:8px;background:white}button{cursor:pointer;font-weight:700}.primary{background:#6d3ce8;color:white;border:0}.row{display:flex;align-items:center;gap:10px;justify-content:space-between}.row select{flex:1}.row button{width:auto}.actions{display:grid;grid-template-columns:1fr 2fr;gap:12px}.muted{color:#676b73;margin-top:12px}.good{color:#27ae60;font-weight:700}.bad{color:#d64545;font-weight:700}.preview{display:flex;flex-direction:column;min-height:0}.canvas{background:#fafafc;display:flex;align-items:center;justify-content:center;flex:1;min-height:300px;border-radius:10px;overflow:hidden}.canvas img{max-width:95%;max-height:95%;object-fit:contain}.check{display:block;margin:14px 0}.check input{width:auto}dialog{width:min(900px,90vw);border:0;border-radius:14px;padding:20px}table{width:100%;border-collapse:collapse}td,th{padding:9px;border-bottom:1px solid #eee;text-align:left}@media(max-width:900px){main{grid-template-columns:1fr;height:auto}.grid{grid-template-columns:1fr 1fr}.preview{min-height:650px}}

.auth{min-height:100vh;display:grid;place-items:center;background:#f6f7fb}.auth-card{width:min(430px,90vw);background:#fff;padding:32px;border:1px solid #e4e6eb;border-radius:14px;box-shadow:0 12px 40px #0001}.auth-card label{display:block;margin:14px 0}.auth-card input,.auth-card select{box-sizing:border-box;width:100%;padding:12px}.error{background:#fff0f0;color:#b42318;padding:10px;border-radius:8px}.admin-page{max-width:950px;margin:30px auto;padding:0 20px}.user-row{display:grid;grid-template-columns:1fr 140px 120px 160px;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #eee}a{color:#6D3CE8;text-decoration:none}
