
.vmdq-travel-search {
    border: 1px solid rgba(0,0,0,.15);
    border-radius: 14px;
    padding: 18px;
    background: #fff;
    box-shadow: 0 6px 22px rgba(0,0,0,.07);
    max-width: 900px;
    color: #161616;
}
.vmdq-travel-head h3 { margin: 0 0 6px; font-size: 1.35rem; color: #111; }
.vmdq-travel-head p, .vmdq-travel-note { margin: 0 0 14px; color: #555; opacity: 1; }
.vmdq-travel-input-row { display: flex; gap: 8px; }
.vmdq-travel-query {
    min-width: 0; width: 100%; padding: 12px 14px;
    border: 1px solid #b8b8b8; border-radius: 9px; font-size: 16px;
    background: #fff; color: #111;
}
.vmdq-travel-query::placeholder { color: #666; opacity: 1; }
.vmdq-travel-main-button, .vmdq-travel-link {
    cursor: pointer; border-radius: 9px; padding: 10px 13px;
    font: inherit; font-weight: 700; transition: background-color .18s ease, color .18s ease, border-color .18s ease, transform .18s ease;
}
.vmdq-travel-main-button {
    border: 1px solid #111; background: #1d1d1d; color: #fff; white-space: nowrap;
}
.vmdq-travel-main-button:hover, .vmdq-travel-main-button:focus {
    background: #000; color: #fff; transform: translateY(-1px);
}
.vmdq-travel-portals {
    display: grid; grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 12px; margin-top: 16px;
}
.vmdq-travel-portal {
    border: 1px solid #d3d3d3; border-radius: 10px; padding: 12px; background: #fafafa;
}
.vmdq-travel-portal strong { color: #151515; font-weight: 800; }
.vmdq-travel-actions { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 9px; }
.vmdq-travel-link {
    border: 1px solid #242424 !important;
    background: #303030 !important;
    color: #ffffff !important;
    text-shadow: none !important;
    box-shadow: 0 2px 5px rgba(0,0,0,.14);
    opacity: 1 !important;
}
.vmdq-travel-link:hover, .vmdq-travel-link:focus {
    border-color: #000 !important;
    background: #000 !important;
    color: #fff !important;
    transform: translateY(-1px);
    outline: 3px solid rgba(0,0,0,.16);
    outline-offset: 2px;
}
.vmdq-travel-link:active { transform: translateY(0); }
.vmdq-travel-status { min-height: 1.4em; margin-top: 7px; font-size: .9rem; color: #333; }
.vmdq-travel-note { font-size: .78rem; margin-top: 13px; margin-bottom: 0; }
.vmdq-travel-search.is-compact { padding: 13px; }
.vmdq-travel-search.is-compact .vmdq-travel-portals { grid-template-columns: 1fr; }
.vmdq-travel-search.is-compact .vmdq-travel-input-row { flex-direction: column; }
@media (max-width: 640px) {
    .vmdq-travel-portals { grid-template-columns: 1fr; }
    .vmdq-travel-input-row { flex-direction: column; }
}
