:root{--bg:#f7f5fb;--ink:#21182f;--brand:#6d3bd1;--accent:#ff7a1a;--card:#fff}*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--bg);color:var(--ink)}aside{position:fixed;inset:0 auto 0 0;width:230px;background:#21182f;color:#fff;padding:22px}aside h1{font-size:24px;margin:0 0 24px}nav a{display:block;color:#fff;text-decoration:none;padding:11px;border-radius:10px;margin:4px 0}nav a:hover{background:rgba(255,255,255,.12)}main.with-nav{margin-left:250px;padding:28px}.login-main{min-height:100vh;display:grid;place-items:center}.login-card,.panel,.card,form,table{background:var(--card);border-radius:18px;box-shadow:0 12px 30px rgba(28,20,50,.08)}.login-card{width:min(420px,92vw);padding:28px}.login-card h1{color:var(--brand)}label,input,select,button{display:block;width:100%}input,select{padding:12px;border:1px solid #ddd;border-radius:10px;margin:6px 0 12px}button{border:0;background:linear-gradient(135deg,var(--brand),var(--accent));color:white;padding:12px 16px;border-radius:12px;font-weight:700;cursor:pointer}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px}.card{padding:22px}.card span{text-transform:capitalize;color:#6b6178}.card strong{display:block;font-size:34px;margin-top:8px}.panel{padding:20px;margin-top:20px}.grid-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;padding:16px;margin:14px 0}table{width:100%;border-collapse:collapse;overflow:hidden}th,td{text-align:left;padding:13px;border-bottom:1px solid #eee}th{background:#eee8ff}.error{background:#ffe8e8;color:#8a1c1c;padding:10px;border-radius:10px;margin:10px 0}@media(max-width:760px){aside{position:static;width:auto}main.with-nav{margin:0;padding:16px}nav{display:grid;grid-template-columns:repeat(2,1fr)}}

.hero{background:#fff;border-radius:18px;padding:24px;margin-bottom:18px;box-shadow:0 10px 30px rgba(20,20,40,.06)}.hero h1{margin-top:0}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.card{background:#fff;border-radius:18px;padding:20px;box-shadow:0 10px 30px rgba(20,20,40,.06);margin-bottom:16px}.login-card{max-width:430px}.alert{background:#ffe7e7;border:1px solid #ffb4b4;padding:12px;border-radius:12px;margin-bottom:12px}.success{background:#e7fff1;border:1px solid #a6e8c3;padding:12px;border-radius:12px}.button,button{display:inline-block;border:0;border-radius:12px;background:#5337b8;color:#fff;padding:10px 14px;text-decoration:none;cursor:pointer}.secondary{background:#666}.danger{background:#b83232}input,textarea,select{width:100%;padding:10px;border:1px solid #ddd;border-radius:10px;margin-top:6px}label{display:block;font-weight:600}.table-card{overflow:auto;background:#fff;border-radius:18px;padding:14px;box-shadow:0 10px 30px rgba(20,20,40,.06)}table{width:100%;border-collapse:collapse}td,th{padding:10px;border-bottom:1px solid #eee;text-align:left;vertical-align:top}.pill{background:#f0ecff;color:#3b2791;border-radius:999px;padding:4px 9px;font-weight:700}.inline{display:inline-block;margin:2px}.inline input{width:140px;display:inline-block}

.label-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;margin-top:16px}.qr-label{border:1px dashed #333;border-radius:12px;padding:14px;text-align:center;background:#fff;break-inside:avoid}.qr-box{font-family:monospace;border:2px solid #111;padding:18px;margin:10px 0;font-size:14px;word-break:break-all}.muted{opacity:.72}.button{display:inline-block;padding:8px 12px;border-radius:10px;background:#222;color:#fff;text-decoration:none}@media print{aside,.muted,h2{display:none}.with-nav{margin:0}.label-grid{grid-template-columns:repeat(3,1fr)}.qr-label{page-break-inside:avoid}}
