*{box-sizing:border-box}
html,body{margin:0;padding:0;background:#eef3f7;color:#111;font-family:Arial,"Microsoft YaHei","PingFang SC",sans-serif}
.app{width:100%;max-width:430px;margin:0 auto;padding:10px 6px 60px}
.hero{background:#fff;border:1px solid #d5dee6;border-radius:20px;padding:13px 13px 14px;margin-bottom:13px;box-shadow:0 2px 8px rgba(0,0,0,.035)}
.topline{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:11px}
.hero h1{margin:0;color:#1f5f92;font-size:20px;font-weight:900;line-height:1.2}
.publish{border:0;background:#168d3b;color:#fff;border-radius:12px;padding:8px 12px;font-size:14px;font-weight:900}
.hidden{display:none!important}
.datebox{display:grid;grid-template-columns:38px 1fr 38px;align-items:center;height:45px;border:1px solid #d3dbe3;border-radius:15px;background:#fff;margin-bottom:10px}
.datebox button{border:0;background:transparent;color:#1597e5;font-size:24px;line-height:1;font-weight:900;cursor:pointer}
#dateText{text-align:center;font-size:18px;line-height:1;font-weight:900}
.search{width:100%;height:45px;border:1px solid #d3dbe3;border-radius:15px;padding:0 17px;font-size:18px;font-weight:800;color:#333;outline:none}
.search::placeholder{color:#aaa}
.status{min-height:14px;text-align:center;color:#777;font-size:12px;margin-top:7px}
.adminTag{display:inline-block;background:#e8f5e9;color:#1b5e20;border-radius:999px;padding:2px 7px;font-size:10px;font-weight:900;margin-left:6px}
.schedule{display:grid;gap:12px}
.card{background:#fff;border:1px solid #d5dee6;border-radius:20px;padding:16px 18px 15px;box-shadow:0 2px 8px rgba(0,0,0,.035);overflow:visible}
.vehicle{display:flex;align-items:center;gap:8px;color:#1f5f92;font-size:21px;line-height:1.2;font-weight:900;margin-bottom:7px}
.workers{display:flex;align-items:center;gap:8px;color:#111;font-size:17px;line-height:1.25;font-weight:800;margin-bottom:7px}
.item{display:grid;grid-template-columns:1fr 44px;gap:8px;align-items:center;border-top:1px solid #e1e6eb;padding:9px 0;position:relative;overflow:visible}
.addrLink{text-decoration:none;color:inherit;display:block}
.addr{display:flex;align-items:center;gap:5px;font-size:16.5px;line-height:1.28;font-weight:900;color:#111;white-space:nowrap;overflow:hidden}
.pin{font-size:17px;line-height:1;flex:0 0 auto}
.addrText{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.external{color:#d5dce3;font-size:9px;font-weight:700;opacity:.55;margin-left:1px;flex:0 0 auto}
.mapWrap{position:relative;width:42px;height:42px}
.mapbtn{width:42px;height:42px;border:1px solid #ddd;border-radius:13px;display:flex;align-items:center;justify-content:center;background:#fff;font-size:19px;cursor:pointer}
.navPopover{position:absolute;right:0;top:48px;width:174px;background:#fff;border:1px solid #e1e5ea;border-radius:16px;box-shadow:0 12px 28px rgba(0,0,0,.18);z-index:30;overflow:hidden}
.navPopover:before{content:"";position:absolute;right:18px;top:-8px;width:14px;height:14px;background:#fff;border-left:1px solid #e1e5ea;border-top:1px solid #e1e5ea;transform:rotate(45deg)}
.navPopover a{display:flex;align-items:center;gap:10px;text-decoration:none;color:#111;font-size:15px;font-weight:900;padding:13px 14px;background:#fff}
.navPopover a+a{border-top:1px solid #eceff3}
.navEmoji{font-size:20px;width:24px;text-align:center}
.material,.note{display:flex;align-items:flex-start;gap:7px;margin-top:8px;font-size:14px;line-height:1.36;font-weight:500;color:#666}
.note{color:#8a5a1b}.material{color:#555}
.empty,.loading,.error{background:#fff;border:1px solid #d5dee6;border-radius:20px;padding:24px;text-align:center;color:#666}
.error{color:#b00020}
@media(min-width:721px){
  .app{max-width:900px;padding:12px 10px 64px}
  .hero{padding:14px 18px 16px;margin-bottom:16px}
  .hero h1{font-size:20px}.datebox{height:47px}#dateText{font-size:18px}.search{height:47px;font-size:18px}
  .card{padding:17px 24px 17px}.addr{font-size:17px}.workers{font-size:18px}
}
