/* Fahrer-Handy */
.look-driver { background: #1b1f24; color: #eef1f4; }
.dr-app { max-width: 560px; margin: 0 auto; min-height: 100%; display: flex; flex-direction: column; gap: 10px; padding: 12px 12px 92px; }
.dr-top { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.dr-top b { font-size: 20px; display: block; }
.dr-top small { color: #9aa4ae; }
.dr-out { border: 0; background: #2a3037; color: #cfd6dd; width: 44px; height: 44px; border-radius: 12px; font-size: 18px; }
.dr-gps { display: flex; gap: 12px; align-items: center; text-align: left; border: 1px solid #3a424b; background: #252b31; color: inherit; border-radius: 14px; padding: 10px 14px; }
.dr-gps small { display: block; color: #9aa4ae; }
.dr-gps .dot { width: 14px; height: 14px; border-radius: 50%; background: #59626b; flex: none; }
.dr-gps.on { border-color: #2e7d32; }
.dr-gps.on .dot { background: #4caf50; box-shadow: 0 0 0 0 rgba(76, 175, 80, .6); animation: dr-ping 1.6s infinite; }
.dr-gps.err .dot { background: #e5392b; }
@keyframes dr-ping { 70% { box-shadow: 0 0 0 10px rgba(76, 175, 80, 0); } 100% { box-shadow: 0 0 0 0 rgba(76, 175, 80, 0); } }
.dr-err { background: #5c1d17; color: #ffd9d4; padding: 10px 12px; border-radius: 10px; }
.dr-list { display: flex; flex-direction: column; gap: 12px; }
.dr-card { background: #fff; color: #1d2329; border-radius: 16px; padding: 14px; border-top: 6px solid var(--bc); display: flex; flex-direction: column; gap: 6px; }
.dr-card-h { display: flex; align-items: center; gap: 8px; }
.dr-card-h b { font-size: 20px; }
.dr-card-h .br { background: var(--bc); color: #fff; border-radius: 999px; padding: 1px 9px; font-size: 12px; font-weight: 700; }
.dr-card-h .due { font-weight: 700; color: #6b717a; }
.dr-name { font-weight: 700; font-size: 16px; }
.dr-addr { font-size: 21px; line-height: 1.25; font-weight: 600; }
.dr-note { background: #fff6dd; border-radius: 8px; padding: 6px 9px; font-size: 14px; }
.dr-money { display: flex; justify-content: space-between; align-items: center; background: #eef6ee; color: #1f6f43; border-radius: 10px; padding: 8px 12px; font-weight: 600; }
.dr-money.cash { background: #fff1e0; color: #8a4b00; }
.dr-money b { font-size: 22px; }
.dr-btns { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.dr-b { display: flex; align-items: center; justify-content: center; gap: 6px; min-height: 50px; border-radius: 12px; border: 1px solid #d7dbe0; background: #f6f7f8; color: #1d2329; font-size: 16px; font-weight: 600; text-decoration: none; }
.dr-b.ok { grid-column: 1 / -1; background: #1f6f43; border-color: #1f6f43; color: #fff; font-size: 18px; min-height: 58px; }
.dr-empty { text-align: center; color: #9aa4ae; padding: 50px 20px; font-size: 16px; line-height: 1.6; }
.dr-empty::first-line { font-size: 46px; }
.dr-sum { position: fixed; left: 0; right: 0; bottom: 0; display: flex; justify-content: space-around; gap: 8px; padding: 10px 14px calc(10px + env(safe-area-inset-bottom)); background: #252b31; border-top: 1px solid #3a424b; }
.dr-sum span { display: flex; flex-direction: column; align-items: center; }
.dr-sum small { color: #9aa4ae; font-size: 12px; }
.dr-sum b { font-size: 19px; }
