/* ── Guasa Logística – Public CSS ──────────────────────────── */
:root{
  --g-blue:#1e3a5f;--g-accent:#3b82f6;--g-green:#10b981;
  --g-red:#ef4444;--g-yellow:#f59e0b;--g-gray:#6b7280;
  --g-border:#e5e7eb;--g-bg:#f9fafb;--g-r:8px
}
.gel-pub-wrap{max-width:880px;margin:0 auto;padding:24px 16px;font-family:'Segoe UI',sans-serif}
.gel-pub-wrap h2{font-size:1.5rem;color:var(--g-blue);margin-bottom:20px}

/* Depto fijo */
.gel-fijo-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;
              background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;
              padding:8px 12px;margin-bottom:18px;font-size:.85rem}
.gel-fijo-row select{padding:4px 8px;border:1px solid var(--g-border);border-radius:5px}
.gel-btn-xs{padding:4px 10px;font-size:.8rem;cursor:pointer;border:1px solid var(--g-border);
            border-radius:5px;background:#fff;font-weight:600}

/* Formulario */
.gel-pub-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:20px}
@media(max-width:640px){.gel-pub-grid{grid-template-columns:1fr}}
.gel-pub-field{margin-bottom:14px}
.gel-pub-field label{display:block;font-size:.82rem;font-weight:600;color:#374151;margin-bottom:4px}
.gel-pub-field input,.gel-pub-field select,.gel-pub-field textarea{
  width:100%;padding:9px 12px;border:1px solid var(--g-border);border-radius:var(--g-r);
  font-size:.92rem;transition:border-color .15s}
.gel-pub-field input:focus,.gel-pub-field select:focus,.gel-pub-field textarea:focus{
  outline:none;border-color:var(--g-accent);box-shadow:0 0 0 3px rgba(59,130,246,.15)}
.gel-pub-field small{display:block;color:var(--g-gray);font-size:.76rem;margin-top:3px}
.gel-req{color:var(--g-red)}

/* Precio */
.gel-precio-box{background:#eff6ff;border-radius:6px;padding:10px 12px}
.gel-precio-box strong{font-size:1.4rem;color:var(--g-blue);display:block;margin-top:3px}

/* Autocomplete */
.gel-ac-wrap{position:relative}
.gel-ac-list{position:absolute;top:100%;left:0;right:0;z-index:500;
             background:#fff;border:1px solid var(--g-border);border-radius:6px;
             box-shadow:0 4px 14px rgba(0,0,0,.1);max-height:200px;overflow-y:auto;
             margin:0;padding:0;list-style:none}
.gel-ac-list li{padding:9px 14px;cursor:pointer;font-size:.88rem;border-bottom:1px solid #f3f4f6}
.gel-ac-list li:hover{background:var(--g-bg)}
.gel-ac-list li small{display:block;color:var(--g-gray);font-size:.76rem}

/* Botones */
.gel-btn{display:inline-block;padding:9px 20px;border-radius:var(--g-r);font-size:.92rem;
          font-weight:600;cursor:pointer;border:1px solid var(--g-border);background:#fff;
          text-decoration:none;transition:all .15s}
.gel-btn-primary{background:var(--g-blue)!important;color:#fff!important;border-color:var(--g-blue)!important}
.gel-btn-primary:hover{background:#16305a!important;color:#fff!important}
.gel-btn-lg{padding:11px 28px;font-size:1rem}
.gel-pub-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:4px}

/* Alertas */
.gel-alert{padding:12px 16px;border-radius:var(--g-r);margin-bottom:16px;font-size:.9rem}
.gel-alert-ok {background:#d1fae5;color:#065f46;border:1px solid #6ee7b7}
.gel-alert-err{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}
.gel-aviso{background:#fef3c7;color:#92400e;padding:12px 16px;border-radius:var(--g-r);
           border:1px solid #fde68a;font-size:.9rem}

/* Resultado */
.gel-resultado{margin-top:28px;padding:24px;background:#fff;
               border:2px solid var(--g-green);border-radius:12px;
               box-shadow:0 4px 16px rgba(16,185,129,.1)}
.gel-resultado h3{color:var(--g-green);margin-bottom:16px;font-size:1.1rem}
.gel-res-grid{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:start}
@media(max-width:480px){.gel-res-grid{grid-template-columns:1fr}}
.gel-codigo-lg{font-size:1.5rem;font-weight:900;letter-spacing:2px;color:var(--g-blue)}

/* Rastreo */
.gel-rastreo-form{display:flex;gap:10px;margin-bottom:24px;flex-wrap:wrap}
.gel-rastreo-form input{flex:1;min-width:220px;padding:11px 14px;font-size:1rem;
                         border:2px solid var(--g-border);border-radius:var(--g-r)}
.gel-rastreo-form input:focus{outline:none;border-color:var(--g-accent)}
.gel-track-codigo{font-size:1.8rem;font-weight:900;letter-spacing:3px;color:var(--g-blue);
                  text-align:center;margin-bottom:16px}
.gel-estado-box{display:flex;align-items:center;gap:14px;padding:16px;border-radius:10px;
                border-left:5px solid var(--g-accent);background:#fff;
                box-shadow:0 2px 8px rgba(0,0,0,.07);margin-bottom:20px}
.gel-est-icon{font-size:2rem}
.gel-estado-box strong{display:block;font-size:1rem}
.gel-estado-box small{color:var(--g-gray)}
.gel-track-info{width:100%;border-collapse:collapse;margin-bottom:20px}
.gel-track-info th{text-align:left;padding:7px 12px;color:var(--g-gray);font-size:.82rem;width:130px;background:#f9fafb}
.gel-track-info td{padding:7px 12px;border-bottom:1px solid var(--g-border);font-size:.9rem}

/* Timeline */
.gel-timeline{border-left:2px solid var(--g-border);padding-left:20px;margin-left:8px}
.gel-tl-item{position:relative;margin-bottom:16px}
.gel-tl-dot{position:absolute;left:-28px;width:14px;height:14px;border-radius:50%;
            background:var(--g-green);border:2px solid #fff;box-shadow:0 0 0 2px var(--g-green)}
.gel-tl-dot.fail{background:var(--g-red);box-shadow:0 0 0 2px var(--g-red)}
.gel-tl-label{font-weight:600;font-size:.88rem}
.gel-tl-fecha{font-size:.78rem;color:var(--g-gray)}
.gel-tl-nota{font-size:.8rem;color:var(--g-gray);margin-top:2px}
