.shared-trip-navbar {
    align-items: flex-start;
    margin: 0 0 18px;
}

.shared-trip-item {
    appearance: none;
    padding: 0;
    border: 0;
    background: transparent;
    font: inherit;
    cursor: pointer;
}

.shared-trip-item > .tool-icon-circle {
    margin-top: 0;
    color: #fff;
    font-size: 0.9rem;
}

.shared-trip-item .tool-icon-circle svg {
    width: 18px;
    height: 18px;
    fill: currentColor;
}

.shared-trip-item:focus-visible {
    outline: 2px solid #007bff;
    outline-offset: 4px;
    border-radius: 4px;
}

.shared-trip-item.active .tool-icon-circle {
    box-shadow: 0 0 0 3px rgba(0, 123, 255, 0.4);
}

.shared-trip-book-icon { background-color: #17a2b8; color: white; }
.shared-trip-book-icon svg { width: 18px; height: 18px; }

/* Bille cœur : grise tant que le voyage n'est pas en favoris, rouge ensuite. */
.tool-favorite { background-color: #6c757d; transition: background-color .15s, transform .2s; }
.shared-trip-item.is-favorite .tool-favorite { background-color: #dc3545; }

.trip-share-modal-card { width: min(520px, calc(100vw - 32px)); padding: 28px; }
.trip-share-modal-card h2 { margin: 5px 0 12px; color: #233746; font-size: 1.35rem; }
.trip-share-eyebrow { margin: 0; color: #638091; font-size: 0.67rem; font-weight: 800; letter-spacing: 0.13em; }
.trip-share-message { min-height: 42px; margin: 0 0 18px; color: #5f6e79; font-size: 0.86rem; line-height: 1.5; }
.trip-share-label { display: block; margin-bottom: 6px; color: #44535e; font-size: 0.76rem; font-weight: 700; }
.trip-share-url { width: 100%; box-sizing: border-box; padding: 10px 11px; border: 1px solid #d5dee4; border-radius: 7px; color: #344955; font: 0.78rem/1.4 Consolas, monospace; }
.trip-share-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.trip-share-button { padding: 9px 12px; border: 1px solid #d5dee4; border-radius: 7px; background: #fff; color: #465761; font: inherit; font-size: 0.78rem; font-weight: 650; cursor: pointer; }
.trip-share-button:disabled { cursor: wait; opacity: 0.6; }
.trip-share-button-primary { border-color: #1769aa; background: #1769aa; color: #fff; }
.trip-share-button-primary:hover { background: #12558a; }
.trip-share-button-danger { border-color: #f0c4c7; color: #b42332; }
.trip-share-button-danger:hover { background: #fff3f3; }
.trip-share-button[hidden] { display: none; }
.trip-share-security-note { margin: 15px 0 0; color: #74828e; font-size: 0.73rem; line-height: 1.5; }
.trip-share-error { margin: 28px auto; padding: 18px; border-radius: 10px; background: #fff4f3; color: #a52c35; text-align: center; }

@media (max-width: 640px) {
    .shared-trip-navbar { gap: 10px; padding: 10px; }
    .shared-trip-navbar .sub-group { gap: 10px; padding-right: 10px; }
    .trip-share-modal-card { padding: 24px 18px; }
}

@media print {
    .shared-trip-navbar { display: none !important; }
}
