:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;color:#17211d;background:#f5faf6;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input{font:inherit}button{cursor:pointer}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 85% 10%,#dff3e5 0,transparent 36%),#f5faf6}.auth-card{width:min(100%,520px);padding:38px;border:1px solid #dcebe0;border-radius:30px;background:#fff;box-shadow:0 24px 70px #21684113}.brand{display:flex;align-items:center;gap:11px;color:#176c4e;font-size:12px;font-weight:900;letter-spacing:.15em}.brand-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;color:#fff;background:#176c4e;font-size:24px;letter-spacing:0}.brand.compact .brand-mark{width:34px;height:34px;border-radius:11px;font-size:19px}.eyebrow{margin:28px 0 8px;color:#176c4e;font-size:11px;font-weight:900;letter-spacing:.14em}.auth-card h1,.app-header h1{margin:0 0 12px;font-size:clamp(31px,6vw,46px);line-height:1.04;letter-spacing:-.04em}.muted{color:#6b7b72;line-height:1.5}.auth-card form{display:grid;gap:14px;margin-top:25px}.auth-card label,.route-toolbar label,.token-field,.note-field{display:grid;gap:7px;color:#365347;font-size:13px;font-weight:800}.auth-card input,.route-toolbar input,.token-field input,.note-field input{width:100%;min-height:46px;padding:0 13px;border:1px solid #cfe0d4;border-radius:12px;color:#1b2b24;background:#fff;outline:none}.auth-card input:focus,.route-toolbar input:focus,.token-field input:focus,.note-field input:focus{border-color:#176c4e;box-shadow:0 0 0 3px #176c4e18}.primary,.secondary{min-height:48px;border:0;border-radius:13px;padding:0 18px;font-weight:850}.primary{color:#fff;background:#176c4e}.secondary{color:#176c4e;background:#e9f5ec}.security-note{display:flex;align-items:center;gap:8px;margin:22px 0 0;color:#668074;font-size:12px}.error-box,.notice-box{display:flex;align-items:flex-start;gap:8px;margin:16px 0;padding:12px 14px;border-radius:12px;font-size:13px;line-height:1.4}.error-box{color:#9a4038;background:#fff0ed}.notice-box{color:#267341;background:#eaf7ed}.app-shell{width:min(100%,920px);margin:auto;padding:30px 22px 40px}.app-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.app-header h1{margin-top:28px;margin-bottom:4px}.icon-button,.refresh-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #cbded0;border-radius:12px;color:#176c4e;background:#fff}.icon-button{width:44px;height:44px}.route-toolbar{display:flex;align-items:end;gap:12px;margin:24px 0 16px;padding:15px;border:1px solid #dcebe0;border-radius:17px;background:#fff}.route-toolbar label{flex:1}.refresh-button{min-height:46px;padding:0 15px;font-weight:800}.route-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:14px 0 22px}.route-summary div{display:grid;gap:5px;padding:16px;border:1px solid #dcebe0;border-radius:17px;background:#fff}.route-summary span{color:#718079;font-size:12px}.route-summary b{color:#176c4e;font-size:26px}.stops-list{display:grid;gap:14px}.stop-card{display:grid;grid-template-columns:40px minmax(0,1fr);gap:14px;padding:16px;border:1px solid #dcebe0;border-radius:20px;background:#fff;box-shadow:0 9px 26px #2168410b}.stop-number{display:grid;place-items:center;width:38px;height:38px;border-radius:13px;color:#fff;background:#176c4e;font-weight:900}.stop-content{min-width:0}.stop-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.stop-top h2{margin:0;font-size:20px}.stop-top .eyebrow{margin:0 0 5px}.status-pill{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;padding:7px 9px;border-radius:999px;color:#735a1e;background:#fff6d9;font-size:11px;font-weight:850}.status-entregada .status-pill{color:#267341;background:#eaf7ed}.status-no_entregada .status-pill,.status-cliente_no_estaba .status-pill{color:#963d35;background:#fff0ed}.address,.instructions,.amount{display:flex;align-items:flex-start;gap:7px;margin:12px 0 0;color:#4e6659;font-size:14px;line-height:1.4}.address svg{flex:0 0 auto;color:#176c4e}.instructions{color:#80612c;font-size:12px}.amount{display:block;font-size:13px}.token-field,.note-field{margin-top:15px;max-width:400px}.token-field small{font-weight:500;color:#8b9991}.stop-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:16px}.action-primary,.action-success,.action-secondary{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 12px;border:0;border-radius:10px;font-size:12px;font-weight:850}.action-primary{color:#fff;background:#176c4e}.action-success{color:#fff;background:#2a9b5b}.action-secondary{color:#8b4038;background:#fff0ed}.closed-note{color:#7c8881;font-size:12px}.empty-state{display:grid;justify-items:center;gap:8px;min-height:260px;padding:60px 20px;border:1px dashed #b9d6c4;border-radius:20px;color:#176c4e;text-align:center;background:#fff}.empty-state h2{margin:6px 0 0}.empty-state p{margin:0}.app-footer{display:flex;justify-content:space-between;gap:12px;margin-top:25px;color:#83958b;font-size:12px}.app-footer small{margin-left:auto}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin 1s linear infinite}@media(max-width:600px){.auth-card{padding:28px 22px}.app-shell{padding:22px 14px 32px}.route-toolbar{align-items:stretch;flex-direction:column}.refresh-button{width:100%}.route-summary{gap:8px}.route-summary div{padding:12px}.route-summary b{font-size:22px}.stop-card{grid-template-columns:32px minmax(0,1fr);gap:9px;padding:13px}.stop-number{width:32px;height:32px;border-radius:10px}.stop-top{display:grid}.stop-top h2{font-size:18px}.status-pill{justify-self:start}.app-footer{display:grid}.app-footer small{margin-left:0}}.coordinator-shell{max-width:1100px}.compact-action{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:46px;padding:0 15px;border:0;border-radius:12px;font-weight:850}.coord-section{margin-top:28px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px;color:#176c4e}.section-heading h2{margin:0;font-size:25px;letter-spacing:-.03em;color:#17211d}.section-heading .eyebrow{margin:0 0 5px}.coord-list{display:grid;gap:12px}.coord-card,.route-card{padding:17px;border:1px solid #dcebe0;border-radius:19px;background:#fff;box-shadow:0 9px 26px #2168410b}.coord-card h3,.route-card h3{margin:0;font-size:18px}.pending-card{display:flex;align-items:center;justify-content:space-between;gap:20px}.coord-card .eyebrow,.route-card .eyebrow{margin:0 0 5px}.coord-card .address{margin-top:9px}.coord-actions,.assign-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.empty-inline{padding:22px;border:1px dashed #b9d6c4;border-radius:15px;background:#fff}.route-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.assign-row{margin-top:15px}.assign-row select{min-height:40px;min-width:220px;padding:0 10px;border:1px solid #cfe0d4;border-radius:10px;color:#365347;background:#fff}.route-stops{display:grid;gap:7px;margin-top:15px;padding-top:10px;border-top:1px solid #edf3ee}.route-stop-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto auto auto;align-items:center;gap:8px;padding:8px;border-radius:10px;background:#f7fbf8}.stop-mini-number{display:grid;place-items:center;width:25px;height:25px;border-radius:8px;color:#fff;background:#176c4e;font-size:11px;font-weight:900}.route-stop-row b,.route-stop-row small{display:block}.route-stop-row small{margin-top:2px;color:#718079;font-size:11px}.status-text{color:#6d7d74;font-size:11px;font-weight:800}.mini-button{display:grid;place-items:center;width:28px;height:28px;border:1px solid #cfe0d4;border-radius:8px;color:#176c4e;background:#fff}.mini-button:disabled{opacity:.35;cursor:not-allowed}@media(max-width:600px){.pending-card,.route-card-head{align-items:stretch;flex-direction:column}.coord-actions .action-success,.coord-actions .action-secondary{flex:1;justify-content:center}.assign-row{display:grid}.assign-row select,.assign-row button{width:100%}.route-stop-row{grid-template-columns:26px minmax(0,1fr) auto auto auto}.status-text{display:none}}
