:root{font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif;color:#17211b;background:#f4f6f1;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#f4f6f1}button,input,select{font:inherit}button,.button{cursor:pointer}.brand{display:flex;align-items:center;gap:.65rem;color:#2f4935;font-size:.9rem;font-weight:700}.brand.large{justify-content:center;font-size:1rem}.brand-mark{display:grid;place-items:center;width:2rem;height:2rem;border-radius:.65rem;color:#fff;background:#355f3d}.landing{width:min(92%,32rem);margin:14vh auto;padding:2.5rem;border:1px solid #dce3da;border-radius:1.5rem;background:#fff;box-shadow:0 1.25rem 3rem #24342814;text-align:center}.landing h1{margin:1.5rem 0 .6rem}.landing p{color:#657168;line-height:1.7}.login-form{margin-top:1.25rem;text-align:left}.login-message{min-height:1.5rem;margin:.8rem 0 0;color:#8c4038!important;font-size:.82rem}.button,button{display:inline-flex;justify-content:center;align-items:center;min-height:2.6rem;padding:.65rem 1rem;border:0;border-radius:.7rem;color:#fff;background:#355f3d;font-weight:700;text-decoration:none}.button.secondary{margin-left:.5rem;color:#355f3d;background:#e8efe6}button:disabled{cursor:not-allowed;opacity:.5}button.danger{background:#a4483f}.shell{width:min(100%,30rem);min-height:100vh;margin:0 auto;padding:max(1.25rem,env(safe-area-inset-top)) 1.25rem max(1.5rem,env(safe-area-inset-bottom));display:grid;grid-template-rows:auto 1fr auto;gap:1.5rem}.status-card{align-self:center;padding:2rem 1.5rem;border:1px solid rgba(47,73,53,.12);border-radius:1.5rem;background:#fff;box-shadow:0 1.25rem 3.5rem #24342814;text-align:center}.eyebrow{display:inline-block;margin:0 0 1.5rem;padding:.45rem .75rem;border-radius:999px;color:#42634a;background:#edf3eb;font-size:.75rem;font-weight:800;letter-spacing:.08em}.status-icon{display:grid;place-items:center;width:5rem;height:5rem;margin:0 auto 1.4rem;border-radius:50%;background:#edf3eb}.status-icon span{width:1rem;height:1rem;border:.2rem solid #46734e;border-radius:50% 50% 50% 0;transform:rotate(-45deg)}.status-arrived .status-icon{background:#e5f3e7}.status-cancelled .status-icon{background:#f4e8e6}.public-shell h1{margin:0;font-size:clamp(1.5rem,7vw,2rem)}.description{margin:.85rem auto 0;max-width:22rem;color:#617067;line-height:1.75}.delivery-details{margin:1.5rem 0 0;text-align:left}.delivery-details div{display:grid;grid-template-columns:6rem 1fr;gap:.75rem;padding:.7rem 0;border-top:1px solid #edf0ec}.delivery-details dt{color:#7a867e}.delivery-details dd{margin:0;font-weight:650}.joint-notice{margin:1rem 0;padding:.75rem .9rem;border-radius:.8rem;color:#755f35;background:#fbf4e5;font-size:.78rem;line-height:1.6;text-align:left}.delivery-map{width:100%;height:min(52vh,25rem);min-height:18rem;margin:1.25rem 0 0;overflow:hidden;border:1px solid #dce5dc;border-radius:1rem;background:#eef2ec}.map-message{margin:.55rem 0 0;color:#77837b;font-size:.75rem;line-height:1.5;text-align:left}.map-pin{display:grid;place-items:center;width:2.15rem;height:2.15rem;border:.18rem solid #fff;border-radius:50%;color:#fff;box-shadow:0 .2rem .7rem #00000047;font-size:.78rem;font-weight:900}.warehouse-pin{background:#355f3d}.destination-pin{background:#d75d3f}.vehicle-arrow{display:grid;place-items:center;width:2.65rem;height:2.65rem;border:.18rem solid #fff;border-radius:50%;background:#1769e0;box-shadow:0 .25rem .8rem #1769e061;transform-origin:center}.vehicle-arrow span{display:block;width:0;height:0;margin-top:-.15rem;border-right:.48rem solid transparent;border-bottom:.9rem solid #fff;border-left:.48rem solid transparent}footer{color:#829087;font-size:.78rem;line-height:1.7;text-align:center}footer a{color:#466a4d}.admin-shell{width:min(96%,76rem);margin:0 auto;padding:1.25rem 0 4rem}.admin-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.5rem 0 1rem}.account{color:#6c776f;font-size:.82rem}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem;margin:.5rem 0 1rem}.summary-grid div{padding:1rem;border:1px solid #dfe5dd;border-radius:1rem;background:#fff}.summary-grid strong{display:block;color:#355f3d;font-size:1.6rem}.summary-grid span{color:#748078;font-size:.78rem}.admin-columns{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.panel{margin-bottom:1rem;padding:1.25rem;border:1px solid #dfe5dd;border-radius:1rem;background:#fff;box-shadow:0 .45rem 1.4rem #2637290a}.panel h2{margin:0 0 .35rem;font-size:1.08rem}.hint{margin:0 0 1rem;color:#768178;font-size:.8rem;line-height:1.5}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.form-grid label{display:grid;gap:.3rem;color:#536058;font-size:.78rem;font-weight:650}.form-grid input,.form-grid select{width:100%;min-height:2.55rem;padding:.55rem .7rem;border:1px solid #ccd6ca;border-radius:.65rem;color:#17211b;background:#fbfcfa}.form-grid input:focus,.form-grid select:focus{outline:2px solid #9dbba1;border-color:#6d9374}.form-grid .wide,.form-grid>button{grid-column:1 / -1}.record-list{display:grid;gap:.5rem;margin-top:1rem}.record{display:grid;gap:.2rem;padding:.7rem;border-radius:.65rem;background:#f6f8f4}.record span{color:#707c73;font-size:.75rem;line-height:1.45}.empty{color:#849087;font-size:.82rem}.stop-selector{display:grid;gap:.6rem}.stop-choice{display:grid;grid-template-columns:minmax(10rem,1fr) 1fr 1fr;gap:.6rem;align-items:center;padding:.65rem;border:1px solid #e0e5de;border-radius:.75rem}.stop-choice .check{display:flex;align-items:center;gap:.5rem}.stop-choice .check input{width:1.1rem;min-height:auto}.run-list{display:grid;gap:.8rem}.run-card{padding:1rem;border:1px solid #dfe5dd;border-radius:.9rem;background:#fbfcfa}.run-title{display:flex;justify-content:space-between;gap:1rem}.run-title h3{margin:0}.run-title p{margin:.3rem 0 0;color:#748078;font-size:.78rem}.badge{align-self:start;padding:.35rem .6rem;border-radius:999px;color:#42634a;background:#e6efe5;font-size:.75rem;white-space:nowrap}.badge.small{font-size:.7rem}.actions{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.75rem}.actions button{min-height:2rem;padding:.4rem .65rem;border:1px solid #cbd7c9;color:#355f3d;background:#fff;font-size:.72rem}.actions button.danger{color:#934239;border-color:#e2bbb7}.stop-list{display:grid;gap:.7rem;margin:.9rem 0 0;padding:0;list-style:none}.stop-list li{display:grid;grid-template-columns:1fr auto;gap:.5rem 1rem;padding:.8rem;border-radius:.7rem;background:#fff}.stop-list li>div:first-child{display:grid;gap:.25rem}.stop-list li span:not(.badge){color:#738076;font-size:.75rem}.stop-list .actions{grid-column:1 / -1;margin-top:.2rem}.delivery-metrics{grid-column:1 / -1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem}.delivery-metrics>span{display:grid;gap:.15rem;padding:.55rem .65rem;border-radius:.6rem;color:#748078;background:#f3f6f1;font-size:.7rem}.delivery-metrics>span>strong{color:#355f3d;font-size:.8rem}.share-result{border-color:#9fb99f;background:#f6fbf4}.share-result input{width:min(100%,48rem);min-height:2.6rem;margin:.7rem .5rem .3rem 0;padding:.5rem;border:1px solid #b9c9b7;border-radius:.6rem}.share-result p{color:#69756b;font-size:.78rem}@media(max-width:48rem){.admin-shell{width:min(94%,40rem)}.summary-grid{grid-template-columns:1fr 1fr}.admin-columns,.form-grid,.stop-choice{grid-template-columns:1fr}.delivery-metrics{grid-template-columns:1fr 1fr}.form-grid .wide,.form-grid>button{grid-column:auto}.admin-header{align-items:flex-start;flex-direction:column}.status-card{padding:1.4rem .9rem}.delivery-map{height:48vh;min-height:17rem}}
