*{box-sizing:border-box}
body{margin:0;font-family:Arial,sans-serif;background:#f3f4f6;color:#111827}
.layout{display:flex;min-height:100vh}
.sidebar{width:240px;background:#111827;color:#fff;padding:24px;position:fixed;top:0;bottom:0;left:0}
.brand{font-size:24px;font-weight:700;line-height:1.1;margin-bottom:36px}
.brand span{font-size:13px;color:#9ca3af}
nav a{display:block;color:#d1d5db;text-decoration:none;padding:13px 14px;border-radius:10px;margin-bottom:8px}
nav a:hover,nav a.active{background:#1f2937;color:#fff}
.main{margin-left:240px;width:calc(100% - 240px);padding:28px}
.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}
.topbar h1{margin:0;font-size:30px}
.topbar p{margin:6px 0 0;color:#6b7280}
.topbar button{background:#111827;color:#fff;border:0;border-radius:10px;padding:12px 18px;cursor:pointer}
.top-actions{display:flex;gap:10px;align-items:center}
.top-actions select{min-width:260px;padding:12px;border:1px solid #d1d5db;border-radius:10px;background:#fff}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}
.card{background:#fff;border-radius:16px;padding:22px;box-shadow:0 8px 25px rgba(0,0,0,.06);border-left:5px solid #111827}
.card span{display:block;color:#6b7280;margin-bottom:10px}
.card strong{font-size:34px}
.card.success{border-left-color:#16a34a}
.card.warning{border-left-color:#f59e0b}
.card.info{border-left-color:#2563eb}
.panel{background:#fff;border-radius:16px;padding:22px;margin-bottom:22px;box-shadow:0 8px 25px rgba(0,0,0,.06)}
.panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px}
.panel h2{margin:0;font-size:21px}
.panel input{width:360px;max-width:100%;padding:12px;border:1px solid #d1d5db;border-radius:10px}
.recent-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.recent-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:13px}
.recent-item strong{display:block}
.recent-item span{font-size:13px;color:#6b7280}
.table-wrap{overflow-x:auto}
table{width:100%;border-collapse:collapse;min-width:1900px}
th,td{text-align:left;padding:13px;border-bottom:1px solid #e5e7eb;font-size:14px;vertical-align:top}
th{background:#f9fafb;color:#374151;position:sticky;top:0;z-index:1}
.cell-long{min-width:220px;max-width:300px;white-space:normal}
.btn-qr{display:inline-block;background:#111827;color:#fff;text-decoration:none;border:0;border-radius:8px;padding:8px 11px;font-size:12px;font-weight:700;white-space:nowrap;cursor:pointer}
.btn-qr+.btn-qr{margin-left:6px}
.btn-qr:hover{background:#1f2937}
.btn-print{background:#b91c1c}
.btn-print:hover{background:#991b1b}
.badge{display:inline-block;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}
.badge.checked{background:#dcfce7;color:#166534}
.badge.not{background:#fee2e2;color:#991b1b}
@media(max-width:900px){
  .layout{display:block}
  .sidebar{position:relative;width:100%;height:auto}
  .main{margin-left:0;width:100%;padding:16px}
  .cards{grid-template-columns:repeat(2,1fr)}
  .recent-list{grid-template-columns:1fr}
  .topbar{display:block}
  .top-actions{display:block;margin-top:14px}
  .top-actions select,.topbar button{width:100%;margin-top:10px}
}
@media(max-width:520px){
  .cards{grid-template-columns:1fr}
}
