*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,Arial,sans-serif;background:#dbeafe;color:#0f172a}
.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:12px;background:#1e3a5f;color:#fff;padding:10px 14px}
.menu-btn{display:none;background:#2563eb;color:#fff;border:none;padding:8px 12px;border-radius:8px;font-size:18px}
.brand{font-weight:800;font-size:16px}.ver{font-weight:400;opacity:.8}
.top-actions{margin-left:auto;display:flex;align-items:center;gap:10px}
.dot{width:10px;height:10px;border-radius:50%;background:#22c55e}
.badge{background:#dbeafe;color:#1e3a5f;padding:6px 10px;border-radius:20px;font-weight:700;font-size:12px}
.layout{display:flex;min-height:calc(100vh - 52px)}
.sidebar{width:220px;background:#e0f2fe;border-right:2px solid #93c5fd;padding:12px;display:flex;flex-direction:column;gap:6px}
.nav-item{padding:12px 14px;border:none;background:#bfdbfe;color:#1e3a5f;border-radius:10px;font-weight:700;cursor:pointer;text-align:left}
.nav-item.active{background:#2563eb;color:#fff}
.sidebar-foot{margin-top:auto;font-size:11px;color:#475569;text-align:center;padding-top:12px}
.content{flex:1;padding:16px;width:100%;max-width:none}
.tab{display:none}.tab.active{display:block}
h2{margin:6px 0 12px;color:#1e3a5f}
.card{background:#fff;border:1.5px solid #93c5fd;border-radius:12px;padding:14px;margin-bottom:12px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form-grid label{display:flex;flex-direction:column;gap:6px;font-weight:600;font-size:13px}
input,select,textarea{padding:10px;border:1.5px solid #60a5fa;border-radius:8px;background:#f0f9ff;font-size:13px}
input:focus,select:focus,textarea:focus{outline:none;border-color:#2563eb;background:#fff}
.row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.gap{margin:8px 0}.small{font-size:12px}
.btn{padding:10px 18px;border:none;border-radius:10px;font-weight:700;cursor:pointer;background:linear-gradient(90deg,#38bdf8,#2563eb);color:#fff;box-shadow:0 4px 10px rgba(37,99,235,.2)}
.btn.ghost{background:linear-gradient(90deg,#38bdf8,#2563eb);color:#fff;opacity:.95}
.btn.ghost:hover{opacity:1}
.btn:active{transform:scale(.98)}
.sync-card .sync-title{font-weight:700;color:#1d4ed8;margin-bottom:8px}
.muted{color:#475569;font-size:12px}.pending{color:#b45309;font-weight:700}
.total-badge{background:#dbeafe;border:1.5px solid #60a5fa;border-radius:8px;padding:6px 10px;font-weight:800;color:#1e3a5f;text-align:center;margin-top:8px}
.check{display:flex;align-items:center;gap:6px;font-weight:600}
.table-wrap{overflow:auto;border:2px solid #2563eb;border-radius:12px;background:#fff;width:100%}
table{width:100%;border-collapse:collapse;table-layout:auto;min-width:1100px}
th{background:linear-gradient(180deg,#3b82f6,#1d4ed8);color:#fff;padding:12px 6px;font-size:13px;font-weight:800;border:1px solid #1e40af;text-align:center;position:sticky;top:0;white-space:nowrap;cursor:col-resize;user-select:none}
td{padding:10px 6px;border:1px solid #bfdbfe;text-align:center;font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}
td:nth-child(7){max-width:160px}
tr:nth-child(even){background:#eef6ff}
tr:nth-child(even){background:#dbeafe}
.alert{padding:10px;border-radius:8px;font-weight:700;margin-bottom:10px;background:#dcfce7;color:#16a34a}
.toast{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);background:#1e293b;color:#fff;padding:12px 18px;border-radius:10px;display:none;z-index:50}
.overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:10}
@media(max-width:900px){
  .menu-btn{display:block}
  .sidebar{position:fixed;left:-240px;top:52px;bottom:0;z-index:15;transition:left .25s}
  .sidebar.open{left:0}
  .overlay.show{display:block}
  .form-grid{grid-template-columns:1fr}
  .search-row input{flex:1;min-width:0}
}
