*{margin: 0;padding: 0;box-sizing: border-box;}body{font-family: -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;background: #f2f4f7;color: #1f2937;}.wrap{max-width: 560px;margin: 0 auto;padding: 10px;}.header{background: linear-gradient(135deg, #1565C0, #42A5F5);border-radius: 14px;padding: 12px 14px 10px;color: #fff;}.header h1{font-size: 16px;font-weight: 600;}.header .sub{font-size: 11px;opacity: .85;margin-top: 2px;display: flex;justify-content: space-between;align-items: center;}.langs{display: flex;flex-wrap: wrap;gap: 4px;margin-top: 6px;}.langs a{color: #fff;text-decoration: none;font-size: 11px;border: 1px solid rgba(255,255,255,.35);border-radius: 10px;padding: 2px 8px;opacity: .75;}.langs a.on{background: rgba(255,255,255,.95);color: #1565C0;font-weight: 600;opacity: 1;}.mydrv{margin-top: 8px;background: rgba(255,255,255,.12);border: 1px solid rgba(255,255,255,.25);border-radius: 10px;padding: 6px 10px;}.mydrv .row{display: flex;justify-content: space-between;align-items: center;padding: 3px 0;border-bottom: 1px solid rgba(255,255,255,.15);}.mydrv .row:last-child{border-bottom: 0;}.mydrv .lb{font-size: 12px;opacity: .85;}.mydrv .vl{font-size: 22px;font-weight: 700;font-variant-numeric: tabular-nums;color: #fff;letter-spacing: 1px;}.mydrv .rem{font-size: 26px;font-weight: 800;}.mydrv .rem.ok{color: #fff;}.mydrv .rem.soon{color: #FFC107;}.mydrv .rem.now{color: #ffffff;}.mydrv .rem.passed{color: #FF5252;}.mydrv .rem.note{font-size: 14px;font-weight: 700;opacity: .9;margin-left: 6px;}.rem.returned{color:#FF5252;font-size:17px;line-height:1.3;letter-spacing:.3px;}.rem.note.returned-reason{color:#ffb3b3;font-size:13px;font-weight:600;}.mydrv .rem.note.blink{animation: blink-slow 0.6s ease-in-out infinite;}.mydrv .rem.passed-border{font-size: 15px;font-weight: 700;color: #a7f3d0;letter-spacing: .4px;line-height: 1.35;text-align: right;}.mydrv .rem.syncing{font-size: 15px;font-weight: 700;color: #7dd3fc;letter-spacing: .4px;line-height: 1.35;text-align: right;animation: blink-medium .8s ease-in-out infinite;}.mydrv .vl.syncing{color: #7dd3fc;font-size: 14px;letter-spacing: .2px;animation: blink-medium .8s ease-in-out infinite;}.mydrv .rem.sync-failed{font-size: 15px;font-weight: 700;color: #f87171;letter-spacing: .4px;line-height: 1.35;text-align: right;}.mydrv .vl.sync-failed{color: #f87171;}@keyframes blink-slow{0%, 100%{opacity: 1;}50%{opacity: 0.3;}}@keyframes blink-medium{0%, 100%{opacity: 1;}50%{opacity: 0.3;}}@keyframes blink-fast{0%, 100%{opacity: 1;}50%{opacity: 0.3;}}@keyframes blink-very-fast{0%, 100%{opacity: 1;}50%{opacity: 0.2;}}.blink-slow{animation: blink-slow 1.5s ease-in-out infinite;}.blink-medium{animation: blink-medium 0.8s ease-in-out infinite;}.blink-fast{animation: blink-fast 0.4s ease-in-out infinite;}.blink-very-fast{animation: blink-very-fast 0.2s ease-in-out infinite;}.alert{margin-top: 8px;border-radius: 10px;padding: 8px 10px;font-size: 13px;}.alert.ok{background: #E3F2FD;border: 1px solid #90CAF9;color: #0D47A1;}.alert.err{background: #fef2f2;border: 1px solid #fecaca;color: #991b1b;}.card{margin-top: 10px;background: #fff;border-radius: 14px;padding: 12px;box-shadow: 0 1px 4px rgba(0,0,0,.06);}.card h2{font-size: 14px;color: #374151;margin-bottom: 8px;}.grid{display: flex;flex-wrap: wrap;gap: 8px;}.tile{flex: 1 1 calc(50% - 4px);background: #f8fafc;border: 1px solid #eef2f6;border-radius: 10px;padding: 8px 10px;}.tile .tn{font-size: 12px;color: #6b7280;}.tile .tnum{font-size: 18px;font-weight: 700;color: #1565C0;font-variant-numeric: tabular-nums;letter-spacing: .5px;}.tile .trange{font-size: 11px;color: #9ca3af;margin-top: 2px;}.tile .tstats{font-size: 11px;color: #9ca3af;margin-top: 6px;line-height: 1.7;}.tstats b{color:#374151;font-weight:600;}.tile .tstats b{color: #6b7280;font-weight: 600;}.tile .tempty{font-size: 18px;color: #cbd5e1;font-weight: 600;}.field{width: 100%;border: 1px solid #d1d5db;border-radius: 8px;padding: 9px 12px;font-size: 15px;outline: none;margin-bottom: 6px;background: #fff;}.field:focus{border-color: #1E88E5;}.btn{width: 100%;background: #1E88E5;color: #fff;border: 0;border-radius: 8px;padding: 10px;font-size: 15px;cursor: pointer;}.btn:active{opacity: .85;}.hint{font-size: 12px;color: #9ca3af;margin-top: 6px;line-height: 1.6;}.bind{background: #f8fafc;border: 1px solid #eef2f6;border-radius: 10px;padding: 10px 12px;font-size: 13px;line-height: 1.7;}.bind .bt{font-weight: 600;color: #374151;margin-bottom: 4px;}.bind .ok{color: #1565C0;font-weight: 600;}.bind .pend{color: #b45309;}.btn-sm{display: inline-block;background: #1E88E5;color: #fff;border: 0;border-radius: 8px;padding: 8px 14px;font-size: 13px;cursor: pointer;text-decoration: none;margin: 4px 6px 0 0;}.btn-sm.gray{background: #e5e7eb;color: #374151;}.footbar{margin-top: 10px;background: #fff;border-radius: 14px;padding: 10px 12px;box-shadow: 0 1px 4px rgba(0,0,0,.06);display: flex;justify-content: space-between;align-items: center;gap: 10px;flex-wrap: wrap;}.footbar .who{font-size: 13px;font-weight: 600;color: #1f2937;word-break: break-all;}.footbar .valid{font-size: 11px;color: #9ca3af;margin-top: 2px;}.footbar .btn-sm{margin: 0;}.foot{text-align: center;font-size: 11px;color: #9ca3af;margin: 10px 0 4px;}.load-note{color: #555;font-size: 12px;line-height: 1.5;margin-top: 4px;}.loads-card .load-list{display: flex;flex-direction: column;gap: 6px;}.load-card{border: 1px solid #e0e0e0;border-radius: 6px;padding: 8px 10px;font-size: 12px;line-height: 1.4;border-left: 3px solid #1565C0;}.load-card-header{display: flex;justify-content: space-between;align-items: center;margin-bottom: 4px;}.load-title-wrap{display: flex;align-items: center;gap: 8px;}.load-route{font-weight: 700;color: #1e3a5f;font-size: 13px;}.load-date{font-size: 11px;color: #888;}.load-actions{display: flex;align-items: center;gap: 6px;}.load-status{font-size: 10px;padding: 2px 6px;border-radius: 10px;font-weight: 600;background: #E3F2FD;color: #0D47A1;}.btn-contact{background: #1E88E5;color: white;padding: 2px 10px;border-radius: 4px;font-size: 11px;text-decoration: none;font-weight: 600;}.load-details{display: grid;grid-template-columns: 1fr 1fr;gap: 2px 12px;color: #555;}.load-detail-item{white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}.load-detail-item b{color: #333;font-weight: 600;}.mydrv .detail{font-size: 13px;font-weight: 600;color: #fff;}.mydrv .badge{display: inline-block;font-size: 11px;font-weight: 700;padding: 2px 8px;border-radius: 10px;}.mydrv .badge.ceb-yes{background: rgba(46,204,113,.9);color: #fff;}.mydrv .badge.ceb-no{background: rgba(255,82,82,.85);color: #fff;}.called-card{border-radius: 14px;padding: 13px 14px;margin-top: 10px;background: #fff;box-shadow: 0 1px 4px rgba(0,0,0,.06);}.called-card.st-green{border: 1px solid #bbf7d0;}.called-card.st-red{border: 1px solid #fecaca;}.called-card.st-gray{border: 1px solid #e5e7eb;}.called-card .big{font-size: 22px;font-weight: 800;}.called-card .big.green{color: #16a34a;}.called-card .big.red{color: #dc2626;}.called-card .big.gray{color: #6b7280;}.called-card .meta{font-size: 12px;color: #6b7280;margin-top: 6px;line-height: 1.6;}.setrow{display: flex;flex-wrap: wrap;gap: 8px;margin-top: 10px;}.qr-status{display: none;font-size: 12px;margin-top: 8px;line-height: 1.5;}.qr-status.busy{color: #1565C0;}.qr-status.ok{color: #16a34a;font-weight: 600;}.qr-status.err{color: #dc2626;}.qr-status.busy::before{content: "";display: inline-block;width: 11px;height: 11px;margin-right: 6px;border: 2px solid #1565C0;border-top-color: transparent;border-radius: 50%;animation: qr-spin 0.8s linear infinite;vertical-align: -1px;}@keyframes qr-spin{to{transform: rotate(360deg);}}.qr-notice{background:#E8F4FD;border:1px solid #90CAF9;display:flex;align-items:flex-start;gap:12px;}
.qr-notice-text{flex:1;}
.qr-notice-icon{width:46px;height:34px;flex:0 0 auto;margin-top:2px;}
.qr-notice-icon svg{display:block;}.qr-notice-text{font-size:13px;font-weight:600;color:#0D47A1;line-height:1.5;}
.board-h2{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;}
.board-meta{font-weight:400;color:#9ca3af;font-size:11px;white-space:nowrap;}

/* ===== WhatsApp 区号选择器（2026-11-09） ===== */
.wa-phone{display:flex;gap:6px;align-items:stretch;margin-bottom:6px;max-width:100%;}
.wa-phone .field{margin-bottom:0;flex:1 1 0;width:auto;min-width:0;}
.wa-cc{display:flex;align-items:center;gap:4px;border:1px solid #d1d5db;border-radius:8px;background:#fff;padding:0 4px 0 7px;flex:0 0 auto;}
.wa-cc:focus-within{border-color:#1E88E5;}
.wa-flags{display:inline-flex;align-items:center;width:22px;height:15px;flex:0 0 22px;}
.wa-flags span{display:inline-flex;}
.wa-flags svg{width:22px;height:15px;border-radius:2px;display:block;}
.wa-cc-sel{border:0;background:transparent;font-size:14px;font-weight:600;color:#374151;padding:9px 0;outline:none;max-width:86px;font-family:inherit;}
.wa-flags span[hidden]{display:none;}
