.login-wrap{display:flex;justify-content:center;padding-top:12vh}.login-card{width:340px}.login-card h2{color:#0d47a1;text-align:center;font-size:18px}.login-card .hint{text-align:center;color:#9e9e9e;margin:6px 0 10px}.err{color:#c62828;font-size:13px;margin-top:8px}.sp[data-v-df8df8c8]{position:relative}.sp input[data-v-df8df8c8]{width:100%}.sp-list[data-v-df8df8c8]{position:absolute;z-index:30;left:0;right:0;top:100%;margin-top:2px;background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 6px 18px #0000001f;max-height:260px;overflow-y:auto}.sp-item[data-v-df8df8c8]{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;cursor:pointer}.sp-item[data-v-df8df8c8]:hover,.sp-item.hl[data-v-df8df8c8]{background:#e3f2fd}.sp-label[data-v-df8df8c8]{font-size:13px}.sp-sub[data-v-df8df8c8]{font-size:12px;color:#9e9e9e;white-space:nowrap}.sp-empty[data-v-df8df8c8]{padding:8px 10px;font-size:12px;color:#9e9e9e}.mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:flex-start;justify-content:center;padding:6vh 12px;overflow:auto;z-index:10}.settle-card{width:560px}.err{color:#c62828;margin-top:8px;font-size:13px}.hint-ok{color:#2e7d32;font-size:12px;display:block;margin-top:4px}.hint-err{color:#c62828;font-size:12px;display:block;margin-top:4px}.chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}.chip{background:#e3f2fd;color:#1565c0;border-radius:12px;padding:3px 10px;font-size:12px;cursor:pointer;-webkit-user-select:none;user-select:none}.chip:hover{background:#bbdefb}.chk{display:flex;align-items:center;gap:6px;margin:0;flex:0 0 auto}.chk input{width:auto}.readonly{background:#f5f5f5;color:#616161}.hint-err{color:#c62828;font-size:12px;margin-top:6px}.hint{color:#616161;font-size:12px;margin-bottom:8px}input.abn{border-color:#c62828;color:#c62828;font-weight:700;background:#ffebee}.abn-txt{color:#c62828}td.refcol{background:#e8f5e9!important;font-weight:600}.hint{color:#616161;font-size:12px}.tabs{display:flex;gap:6px;align-items:center;margin-bottom:12px}.range-hint{color:#9e9e9e;font-size:12px;margin-left:6px}.stat{text-align:center;flex:1}.stat .num{font-size:22px;font-weight:700;color:#0d47a1}.stat .lbl{color:#9e9e9e;font-size:12px;margin-top:4px}.bar{display:inline-block;width:90px;height:8px;background:#eceff1;border-radius:4px;margin-right:6px;vertical-align:middle}.bar span{display:block;height:8px;background:#1565c0;border-radius:4px}.mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;justify-content:center;padding-top:10vh;z-index:10}.receipt{width:320px}.rc{text-align:center;margin:6px 0}.rc.total{font-size:20px;font-weight:700;color:#0d47a1}@media print{body *{visibility:hidden}.receipt,.receipt *{visibility:visible}.receipt{position:fixed;top:0;left:0;box-shadow:none}.receipt .btn{display:none}}h3{color:#0d47a1;margin-bottom:8px;font-size:15px}.hint{color:#616161;font-size:12px;margin-bottom:8px;line-height:1.6}.tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.tabbtn{background:#fff;border:1px solid #e0e0e0;color:#616161;padding:6px 14px;border-radius:16px;cursor:pointer;font-size:13px}.tabbtn.active{background:#0d47a1;color:#fff;border-color:#0d47a1}.low{color:#c62828;font-weight:700}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{background:#e3f2fd;color:#1565c0;border-radius:12px;padding:4px 10px;font-size:12px;display:inline-flex;align-items:center;gap:4px}.chip .x{cursor:pointer;color:#c62828;padding:0 2px}.layout{max-width:1100px;margin:0 auto;padding:0 12px}.topbar{display:flex;align-items:center;gap:10px;background:#0d47a1;color:#fff;padding:10px 14px;border-radius:0 0 10px 10px;flex-wrap:wrap}.logo{font-weight:700}.topbar nav{display:flex;gap:6px;flex:1;flex-wrap:wrap}.navbtn{background:transparent;border:none;color:#bbdefb;padding:6px 12px;border-radius:6px;cursor:pointer}.navbtn.active{background:#fff;color:#0d47a1;font-weight:700}.user{font-size:13px;display:flex;align-items:center;gap:8px}.main{padding:14px 0 40px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Microsoft YaHei,PingFang SC,sans-serif;background:#f5f7fa;color:#212121;font-size:14px}.btn{display:inline-block;padding:8px 16px;border:none;border-radius:6px;background:#1565c0;color:#fff;cursor:pointer;font-size:14px}.btn:hover{background:#0d47a1}.btn.gray{background:#9e9e9e}.btn.green{background:#2e7d32}.btn.red{background:#c62828}.btn.sm{padding:4px 10px;font-size:12px}input,select,textarea{padding:8px 10px;border:1px solid #e0e0e0;border-radius:6px;font-size:14px;width:100%}label{display:block;margin:10px 0 4px;color:#616161;font-size:13px}.card{background:#fff;border-radius:10px;padding:16px;margin-bottom:14px;box-shadow:0 1px 3px #00000014}table.data{width:100%;border-collapse:collapse;background:#fff;font-size:13px}table.data th{background:#0d47a1;color:#fff;padding:8px;text-align:left}table.data td{padding:7px 8px;border-bottom:1px solid #eceff1}table.data tr:nth-child(2n) td{background:#fafbfc}.row{display:flex;gap:10px;flex-wrap:wrap}.row>*{flex:1;min-width:120px}.tag{display:inline-block;padding:2px 8px;border-radius:10px;font-size:12px}.tag.waiting{background:#fff3e0;color:#e65100}.tag.in_visit{background:#e3f2fd;color:#1565c0}.tag.done{background:#e8f5e9;color:#2e7d32}.tag.pending{background:#fce4ec;color:#c62828}.total-line{font-size:16px;font-weight:700;color:#0d47a1}.empty{color:#9e9e9e;text-align:center;padding:20px}@media (max-width: 768px){body{font-size:13px}.layout{padding:0 8px}.topbar{padding:8px 10px;gap:6px}.topbar nav{width:100%;order:3;overflow-x:auto;-webkit-overflow-scrolling:touch}.navbtn{padding:6px 10px;white-space:nowrap}.user{margin-left:auto}.card{padding:12px;overflow-x:auto}table.data{min-width:640px}.row>*{min-width:140px}.stat .num{font-size:18px}}
