:root{--ink:#17251f;--muted:#68756f;--green:#176b4b;--lime:#c9f27a;--cream:#f4f2e9;--line:#dde2dc;--white:#fff;--danger:#a33}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:15px/1.5 system-ui,-apple-system,Segoe UI,sans-serif}a{color:var(--green);text-decoration:none}header{height:72px;background:var(--ink);display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,24px);color:white}header a{color:white}.brand{font-size:23px;font-weight:850;letter-spacing:-1px}.brand span{color:var(--lime)}nav{display:flex;align-items:center;gap:26px}nav form{margin:0}.link{border:0;background:none;color:white;cursor:pointer;font:inherit}main{max-width:1160px;margin:0 auto;padding:42px 24px 80px}.login-shell{min-height:100vh;display:grid;place-items:center}.login-card{background:white;width:min(460px,100%);padding:46px;border-radius:24px;box-shadow:0 24px 70px #17332617}.logo{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:var(--ink);color:var(--lime);font-weight:900}.eyebrow{color:var(--green);font-size:12px;letter-spacing:2px;font-weight:800;margin:20px 0 8px}h1{font-size:clamp(32px,5vw,54px);letter-spacing:-2px;line-height:1.03;margin:0 0 14px}h1 span{color:var(--green)}h2,h3{margin:0}.muted{color:var(--muted)}label{display:grid;gap:7px;font-weight:700;margin:20px 0}input,select{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:10px;background:white;font:inherit;color:var(--ink)}button,.primary,.secondary{display:inline-flex;justify-content:center;align-items:center;padding:13px 19px;border-radius:10px;border:0;font-weight:800;cursor:pointer}.primary{background:var(--green);color:white}.secondary{border:1px solid var(--green);background:white;color:var(--green)}.wide{width:100%}.hero{display:flex;align-items:end;justify-content:space-between;margin-bottom:32px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0}.stats article,.card{background:white;border:1px solid var(--line);border-radius:16px;padding:24px}.stats span{display:block;color:var(--muted)}.stats strong{font-size:34px}.card{margin:18px 0}.narrow,.form-card{max-width:700px;margin-inline:auto}.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.section-head select{width:auto}.empty{text-align:center;padding:48px}.pin{font-size:42px;color:var(--green)}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:14px;border-top:1px solid var(--line)}th{font-size:12px;text-transform:uppercase;color:var(--muted)}td small{display:block;color:var(--muted)}.badge{display:inline-block;padding:4px 9px;border-radius:99px;background:#e8eee9;color:var(--green);font-size:12px;font-weight:800}.badge.revisar,.danger{background:#fff0e6;color:#a54b16}.alert{padding:14px 18px;border-radius:10px;margin-bottom:18px}.success{background:#e7f6ec;color:#176b4b}.drop{position:relative;text-align:center;border:2px dashed #b9c5bd;border-radius:14px;padding:35px;background:#fafbf8;cursor:pointer}.drop input{position:absolute;inset:0;opacity:0;cursor:pointer}.drop b,.drop small{display:block}.note,.future{display:flex;gap:12px;align-items:center;background:#f1f6e9;border-radius:12px;padding:16px}.note span,.future span{color:var(--muted)}.page-title{margin-bottom:24px}.stop{border-top:1px solid var(--line)}.stop summary{list-style:none;display:flex;align-items:center;gap:16px;padding:18px 4px;cursor:pointer}.stop-number{font-weight:900;color:#9aa49f}.stop-address{flex:1}.stop-address small{display:block;color:var(--muted)}.count{color:var(--muted)}.stop-body{display:grid;grid-template-columns:1fr 2fr;gap:30px;padding:4px 50px 24px}.stop-body form{display:grid;grid-template-columns:2fr 1fr auto;gap:10px;align-items:end}.stop-body label{margin:0}.future{margin-top:24px}.future span{flex:1}.future button{background:#ddd;color:#888}.table-wrap{overflow:auto}@media(max-width:700px){header{padding:0 18px}nav>a{display:none}main{padding:28px 16px}.hero{align-items:start;gap:20px}.stats{grid-template-columns:1fr}.section-head,.future{align-items:flex-start;flex-direction:column}.stop summary{flex-wrap:wrap}.stop-address{min-width:65%}.stop-body,.stop-body form{grid-template-columns:1fr;padding-left:10px}.login-card{padding:28px}h1{font-size:38px}}

