*{box-sizing:border-box;margin:0;padding:0}body{font-family:Segoe UI,sans-serif;background:#0f1117;color:#e0e0e0}.layout{display:flex;height:100vh}.sidebar{width:240px;background:#1a1d27;border-right:1px solid #2a2d3e;display:flex;flex-direction:column;flex-shrink:0}.brand{display:flex;align-items:center;gap:10px;padding:20px 18px;border-bottom:1px solid #2a2d3e}.brand-icon{width:36px;height:36px;background:#4caf50;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:18px}.brand h2{font-size:16px;font-weight:700;color:#fff}.brand span{font-size:10px;color:#666;display:block}nav a{display:flex;align-items:center;gap:10px;padding:11px 18px;color:#888;text-decoration:none;font-size:14px;border-left:3px solid transparent;transition:all .15s}nav a:hover{background:#22253a;color:#fff}nav a.active{background:#22253a;color:#fff;border-left-color:#4caf50}.sidebar-footer{padding:16px 18px;border-top:1px solid #2a2d3e;margin-top:auto}.admin-name{font-size:13px;font-weight:600;color:#fff}.admin-role{font-size:11px;color:#4caf50;margin-top:2px}.btn-logout{width:100%;margin-top:10px;background:transparent;border:1px solid #2a2d3e;color:#888;padding:8px;border-radius:6px;cursor:pointer;font-size:13px}.btn-logout:hover{border-color:#f44336;color:#f44336}.content{flex:1;overflow-y:auto;padding:28px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.page-header h2{font-size:22px;font-weight:700;color:#fff}.page-header p{font-size:13px;color:#666;margin-top:3px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-bottom:24px}.stat-card{background:#1a1d27;border:1px solid #2a2d3e;border-radius:12px;padding:20px;text-align:center}.stat-icon{font-size:26px;margin-bottom:8px}.stat-value{font-size:26px;font-weight:700;color:#fff}.stat-label{font-size:12px;color:#666;margin-top:4px}.table-card{background:#1a1d27;border:1px solid #2a2d3e;border-radius:12px;overflow:hidden}table{width:100%;border-collapse:collapse}thead{background:#22253a}th{padding:12px 16px;text-align:left;font-size:11px;color:#666;text-transform:uppercase;letter-spacing:.5px}td{padding:13px 16px;font-size:14px;border-top:1px solid #2a2d3e}tr:hover td{background:#ffffff05}.badge{font-size:11px;font-weight:600;padding:3px 10px;border-radius:20px}.badge.active,.badge.completed{background:#1a4a1a;color:#4caf50}.badge.inactive,.badge.failed{background:#4a1a1a;color:#f44336}.badge.pending{background:#4a3a1a;color:#ff9800}.badge.printing{background:#1a3a4a;color:#2196f3}.btn{padding:8px 18px;border-radius:8px;border:none;cursor:pointer;font-size:13px;font-weight:600;transition:all .15s}.btn-primary{background:#4caf50;color:#fff}.btn-primary:hover{background:#43a047}.btn-danger{background:transparent;border:1px solid #f44336;color:#f44336;padding:6px 14px}.btn-danger:hover{background:#f44336;color:#fff}.btn-warning{background:transparent;border:1px solid #ff9800;color:#ff9800;padding:6px 14px}.btn-warning:hover{background:#ff9800;color:#fff}.btn-sm{padding:5px 12px;font-size:12px}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:12px;color:#888;margin-bottom:5px}.form-group input{width:100%;background:#0f1117;border:1px solid #2a2d3e;border-radius:8px;padding:10px 12px;color:#e0e0e0;font-size:14px;outline:none}.form-group input:focus{border-color:#4caf50}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal{background:#1a1d27;border:1px solid #2a2d3e;border-radius:16px;padding:28px;width:100%;max-width:440px}.modal h3{font-size:18px;font-weight:700;color:#fff;margin-bottom:20px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.btn-cancel{background:transparent;border:1px solid #2a2d3e;color:#888;padding:8px 18px;border-radius:8px;cursor:pointer;font-size:13px}.login-wrapper{min-height:100vh;background:linear-gradient(135deg,#0f1117,#1a1d27);display:flex;align-items:center;justify-content:center;padding:20px}.login-card{background:#1a1d27;border:1px solid #2a2d3e;border-radius:16px;padding:40px 32px;width:100%;max-width:400px}.logo{text-align:center;margin-bottom:32px}.logo-icon{width:60px;height:60px;background:#4caf50;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;font-size:28px;margin-bottom:12px}.logo h1{font-size:24px;color:#fff;font-weight:700}.logo p{font-size:13px;color:#666;margin-top:4px}.error{color:#f44336;font-size:13px;margin-bottom:12px;background:#f443361a;padding:8px 12px;border-radius:6px}button[type=submit]{width:100%;background:#4caf50;color:#fff;border:none;padding:14px;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;margin-top:4px}button[type=submit]:hover:not(:disabled){background:#43a047}button[type=submit]:disabled{background:#333;color:#666;cursor:not-allowed}.empty-state{padding:40px;text-align:center;color:#555;font-size:14px}.section{background:#1a1d27;border:1px solid #2a2d3e;border-radius:12px;padding:20px;margin-bottom:20px}.section-title{font-size:14px;font-weight:600;color:#fff;margin-bottom:16px}.btn-delete{background:#4a1a1a;border:1px solid #f44336;color:#f44336;padding:6px 14px;border-radius:6px;cursor:pointer}.btn-delete:hover{background:#f44336;color:#fff}
