.routes-page,.route-detail,.routes-admin{max-width:1100px;margin:0 auto;padding:1rem;color:#233}.routes-heading,.route-detail>header{text-align:center}.routes-heading h1,.route-detail h1,.routes-admin h1{margin:.3rem 0;font-size:clamp(1.35rem,4vw,2rem);color:#164f70}.route-filters{display:grid;grid-template-columns:2fr repeat(3,1fr) auto auto;gap:.65rem;align-items:end;margin:1rem 0;padding:1rem;background:#f4f8fa;border:1px solid #d6e1e5;border-radius:.65rem}.route-filters label,.route-form label{display:grid;gap:.3rem;font-weight:700}.route-filters input,.route-filters select,.route-form input,.route-form select,.route-form textarea{width:100%;box-sizing:border-box;padding:.65rem;border:1px solid #91a7af;border-radius:.4rem;background:#fff;font:inherit}.route-filters button,.route-link,.gpx-button,.routes-admin-heading a,.route-admin-actions a,.route-admin-actions button,.route-submit{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:.55rem .8rem;border:0;border-radius:.4rem;color:#fff;background:#176b9c;font-weight:700;text-decoration:none;cursor:pointer}.route-filters>a{padding:.65rem;color:#075d91;font-weight:700}.route-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.75rem}.route-card{overflow:hidden;background:#fff;border:1px solid #d8e2e5;border-radius:.65rem;box-shadow:0 3px 10px #1231}.route-card>img,.route-placeholder{display:grid;place-items:center;width:100%;height:190px;-o-object-fit:cover;object-fit:cover;background:linear-gradient(135deg,#dbece5,#9ac3ae);font-size:3rem}.route-card>div:last-child{padding:1rem}.route-card small{display:block;margin:.45rem 0;color:#52656d}.route-card h2{margin:.35rem 0;font-size:1.2rem}.route-card p{min-height:3.8em;font-size:.92rem}.route-badge{display:inline-block;padding:.2rem .55rem;border-radius:2rem;font-size:.75rem;font-weight:700;text-transform:uppercase}.route-badge--facil{color:#14532d;background:#dcfce7}.route-badge--moderada{color:#854d0e;background:#fef3c7}.route-badge--dificil{color:#991b1b;background:#fee2e2}.route-facts{display:flex;flex-wrap:wrap;gap:.35rem .8rem;padding:0;list-style:none;color:#43545b;font-size:.82rem}.route-link{margin-top:.5rem}.route-empty{grid-column:1/-1;padding:2rem;text-align:center;background:#f4f8fa}.route-back{display:inline-block;margin-bottom:1rem;color:#075d91;font-weight:700}.route-cover{display:block;width:100%;max-height:480px;margin:1rem 0;-o-object-fit:cover;object-fit:cover;border-radius:.65rem}.route-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;padding:0;list-style:none}.route-metrics li{display:grid;gap:.2rem;padding:1rem;text-align:center;background:#eef7f3;border-radius:.5rem}.route-metrics strong{font-size:1.2rem;color:#145f4b}.route-metrics span{font-size:.8rem}.route-detail section{margin:1.25rem 0}.route-detail h2{font-size:1.15rem;color:#164f70}.route-copy,.route-advice{line-height:1.65}.route-advice{padding:1rem;background:#fff8dd;border-left:4px solid #d99a18}.route-map{width:100%;height:420px;border:0;border-radius:.65rem}.routes-admin-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.routes-admin-heading>div:last-child,.route-admin-actions{display:flex;flex-wrap:wrap;gap:.45rem}.route-admin-list{display:grid;gap:.55rem}.route-admin-list article{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem;background:#fff;border:1px solid #d8e2e5;border-radius:.5rem}.route-admin-list small{display:block;margin-top:.25rem;color:#52656d}.route-admin-actions form{margin:0}.route-admin-actions button{background:#9b2c2c}.route-notice{padding:.8rem;margin-bottom:1rem;background:#daf2e3;border-radius:.4rem}.route-errors{padding:.8rem;margin-bottom:1rem;color:#7f1d1d;background:#fee2e2;border-radius:.4rem}.route-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;padding:1rem;background:#fff;border:1px solid #d8e2e5;border-radius:.65rem}.route-form-wide,.route-check,.route-submit{grid-column:1/-1}.route-check{display:flex!important;grid-template-columns:auto 1fr!important;justify-content:start;align-items:center}.route-check input{width:auto}.route-submit{justify-self:start}@media(max-width:800px){.route-filters,.route-form{grid-template-columns:1fr}.route-form-wide,.route-check,.route-submit{grid-column:auto}.route-metrics{grid-template-columns:1fr}.routes-admin-heading,.route-admin-list article{align-items:stretch;flex-direction:column}.route-admin-actions a,.route-admin-actions button{flex:1}.route-map{height:320px}}
