*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:#f4f7fb;color:#172033}.top{height:72px;background:#fff;border-bottom:1px solid #e5eaf1;display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:10}.brand{display:flex;gap:12px;align-items:center}.brand img{width:42px;height:42px;object-fit:contain;border-radius:10px}.brand b{display:block;font-size:14px}.brand span{display:block;font-size:12px;color:#718096;margin-top:3px}.top nav{display:flex;gap:8px}.top nav a{padding:10px 13px;text-decoration:none;color:#526174;border-radius:9px;font-size:14px}.top nav a.active,.top nav a:hover{background:#edf4ff;color:#1457c5}.wrap{max-width:1400px;margin:0 auto;padding:30px}.narrow{max-width:900px}.hero{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.hero small{color:#64748b;font-weight:700;letter-spacing:.08em}.hero h1{margin:6px 0;font-size:32px}.hero p{margin:0;color:#64748b}.panel{background:#fff;border:1px solid #e6ebf2;border-radius:18px;padding:22px;box-shadow:0 8px 30px rgba(20,35,60,.05);margin-bottom:20px}.filters{display:flex;gap:10px;flex-wrap:wrap}.filters input,.filters select,.formgrid input,.formgrid textarea,.loginbox input{border:1px solid #d8e0ea;border-radius:10px;padding:11px 13px;background:#fff;font:inherit;min-width:190px}.filters input{flex:1;min-width:260px}.btn{border:0;border-radius:10px;padding:11px 15px;background:#edf1f5;color:#243246;text-decoration:none;cursor:pointer;font-weight:650;display:inline-block}.btn.primary{background:#1457c5;color:#fff}.btn.ghost{background:#fff;border:1px solid #d8e0ea}.btn.full{width:100%}.hint{font-size:13px;color:#66758a;padding:15px 0}.tablewrap{overflow:auto;border:1px solid #e7ecf2;border-radius:12px}table{width:100%;border-collapse:collapse;min-width:1050px}th,td{padding:12px;border-bottom:1px solid #edf0f4;text-align:left;font-size:13px;vertical-align:top}th{background:#f8fafc;color:#5b6879;position:sticky;top:0}tr:hover td{background:#fafcff}.printbar{display:flex;justify-content:space-between;align-items:center;padding-top:18px}.printbar span{color:#5c6b7d;font-size:14px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.formgrid label{display:flex;flex-direction:column;gap:7px;font-weight:650;font-size:13px}.formgrid textarea{min-height:90px;resize:vertical}.formgrid>div:last-child,.formgrid>button{grid-column:1/-1}.login{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#eef5ff,#f8fafc)}.loginbox{width:min(420px,92vw);background:#fff;padding:34px;border-radius:22px;box-shadow:0 20px 60px rgba(20,50,100,.12);text-align:center}.loginbox img{width:76px;height:76px;object-fit:contain}.loginbox h1{font-size:20px;margin:12px 0 4px}.loginbox p{color:#718096;margin:0 0 25px}.loginbox form{text-align:left}.loginbox label{font-size:13px;font-weight:650;display:block;margin:12px 0 7px}.loginbox input{width:100%}.loginbox small{display:block;margin-top:18px;color:#718096}.error,.success{padding:12px;border-radius:10px;margin:12px 0;background:#fff1f2;color:#b42318}.success{background:#ecfdf3;color:#067647}.printcontrols{padding:15px 20px;display:flex;gap:10px;justify-content:center;background:#fff;border-bottom:1px solid #ddd}.sheet{width:210mm;margin:18px auto}.label{background:#fff;border:2px solid #1f2937;border-radius:4px;padding:11mm 12mm;margin-bottom:10mm;min-height:62mm;page-break-inside:avoid}.labelhead{display:flex;align-items:center;gap:14px;border-bottom:1px solid #222;padding-bottom:8px;margin-bottom:10px}.labelhead img{width:22mm;height:22mm;object-fit:contain}.labelhead h2{font-size:16px;margin:0 0 3px;text-align:center}.labelhead h3{font-size:10px;margin:0;text-align:center}.labelhead p{font-size:9px;margin:3px 0 0;text-align:center}.line{display:grid;grid-template-columns:42mm 5mm 1fr;gap:3px;font-size:10px;line-height:1.55}.line strong{font-weight:700}.sign{display:flex;justify-content:space-between;margin-top:12px;font-size:9px}.empty{background:#fff;padding:40px;text-align:center;border:1px solid #ddd}.noprint{display:flex}@media(max-width:760px){.top{padding:0 14px}.top nav a{padding:8px;font-size:12px}.brand span{display:none}.wrap{padding:18px}.hero{align-items:flex-start;gap:15px}.hero h1{font-size:25px}.formgrid{grid-template-columns:1fr}.sheet{width:100%;padding:8px}.label{padding:8mm}.line{grid-template-columns:36mm 4mm 1fr}}@media print{
  @page{size:F4 portrait;margin:7mm 8mm}
  .noprint{display:none!important}
  body{background:#fff}
  .top{display:none}
  .sheet{width:100%;margin:0;padding:0}
  .label{
    width:100%; min-height:67mm; margin:0 0 5mm;
    padding:7mm 8mm; border:1.2px solid #111; border-radius:0;
    box-shadow:none; page-break-inside:avoid; break-inside:avoid;
  }
  .labelhead{gap:10px;padding-bottom:5px;margin-bottom:7px}
  .labelhead img{width:18mm;height:18mm}
  .labelhead h2{font-size:14px;letter-spacing:.2px}
  .labelhead h3{font-size:8.5px}
  .labelhead p{font-size:8px}
  .line{font-size:9px;line-height:1.4;grid-template-columns:40mm 4mm 1fr}
  .sign{margin-top:8px;font-size:8px}
}

.slotno{font-size:8px;text-align:right;color:#555;margin-bottom:2px;font-weight:700;letter-spacing:.08em}
