/* TunisieBateau — Favoris, alertes et statistiques (charte V4) */

/* Cœur */
html:not(#tbs) body button.tb-fav{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:38px!important;height:38px!important;min-width:0!important;min-height:0!important;padding:0!important;margin:0!important;border:0!important;border-radius:50%!important;background:rgba(255,255,255,.95)!important;color:#1d1d1f!important;box-shadow:0 1px 5px rgba(0,0,0,.18)!important;cursor:pointer;line-height:1!important;-webkit-tap-highlight-color:transparent;transition:transform .15s ease}
html:not(#tbs) body button.tb-fav svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linejoin:round;display:block}
html:not(#tbs) body button.tb-fav.is-on{color:#ff3b30!important}
html:not(#tbs) body button.tb-fav.is-on svg{fill:currentColor}
html:not(#tbs) body button.tb-fav:active{transform:scale(.9)}
html:not(#tbs) body button.tb-fav.tb-pop svg{animation:tbpop .35s ease}
@keyframes tbpop{0%{transform:scale(1)}40%{transform:scale(1.28)}100%{transform:scale(1)}}
.hp-listing--view-block .hp-listing__header{position:relative}
html:not(#tbs) body button.tb-fav--card{position:absolute!important;right:10px;bottom:10px;z-index:5}
.tb-fav-anchor{display:none}
.hp-listing__images>.tb-fav-anchor{display:block;position:absolute;top:0;left:0;right:0;height:0;z-index:6}
html:not(#tbs) body button.tb-fav--page{position:absolute!important;top:12px;right:12px;width:42px!important;height:42px!important}
html:not(#tbs) body button.tb-fav--page svg{width:22px;height:22px}

/* Message bref en bas de l'écran */
.tb-toast{position:fixed;left:50%;bottom:24px;z-index:100000;width:max-content;max-width:calc(100vw - 32px);box-sizing:border-box;padding:12px 18px;border-radius:14px;background:rgba(29,29,31,.95);color:#fff;font-size:14px;line-height:1.35;opacity:0;pointer-events:none;transform:translate(-50%,16px);transition:opacity .2s ease,transform .2s ease;box-shadow:0 8px 24px rgba(0,0,0,.22)}
.tb-toast.is-on{opacity:1;pointer-events:auto;transform:translate(-50%,0)}
html:not(#tbs) body .tb-toast a{margin-left:10px;color:#2997ff!important;font-weight:600;text-decoration:none!important}
@media (max-width:767px){body.hp-template--listing-view-page .tb-toast{bottom:96px}}

/* Barre « Être prévenu des nouveaux bateaux » */
.tb-alert{display:flex;align-items:center;gap:14px;margin:28px 0 8px;padding:16px 18px;background:#fff;border:1px solid #e5e5ea;border-radius:18px}
.tb-alert__icon{flex:0 0 40px;width:40px;height:40px;border-radius:50%;background:var(--ap-bg2,#f5f5f7);color:var(--ap-blue,#0071e3);display:flex;align-items:center;justify-content:center}
.tb-alert__icon svg{width:20px;height:20px}
.tb-alert__text{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}
.tb-alert__title{font-size:16px;font-weight:600;line-height:1.3;color:var(--ap-text,#1d1d1f);letter-spacing:-.01em}
.tb-alert__sub{font-size:13px;line-height:1.4;color:#6e6e73}
html:not(#tbs) body .tb-alert .tb-alert__btn{flex:0 0 auto;display:inline-flex!important;align-items:center!important;justify-content:center!important;height:38px!important;min-height:0!important;padding:0 18px!important;margin:0!important;border:0!important;border-radius:980px!important;background:var(--ap-blue,#0071e3)!important;color:#fff!important;font-family:inherit!important;font-size:14px!important;font-weight:600!important;line-height:1!important;text-decoration:none!important;box-shadow:none!important;cursor:pointer;white-space:nowrap;width:auto!important}
html:not(#tbs) body .tb-alert .tb-alert__btn:disabled{opacity:.6;cursor:default}
html:not(#tbs) body .tb-alert.is-on .tb-alert__btn{background:#fff!important;color:var(--ap-text,#1d1d1f)!important;box-shadow:inset 0 0 0 1px #d2d2d7!important}
.tb-alert.is-on .tb-alert__icon{background:var(--ap-blue,#0071e3);color:#fff}
@media (max-width:600px){.tb-alert{flex-wrap:wrap;align-items:flex-start;padding:16px}.tb-alert__text{flex-basis:calc(100% - 54px)}html:not(#tbs) body .tb-alert .tb-alert__btn{width:100%!important;height:42px!important}}

/* Pages Favoris et Alertes */
.tb-empty{padding:32px 22px;background:#fff;border:1px solid #e5e5ea;border-radius:18px;text-align:center}
.tb-empty__title{margin:0 0 6px!important;font-size:20px!important;font-weight:700!important;color:#1d1d1f!important}
.tb-empty__text{max-width:460px;margin:0 auto 18px!important;font-size:15px!important;line-height:1.5;color:#6e6e73!important}
html:not(#tbs) body .tb-empty .tb-empty__btn{display:inline-flex;align-items:center;height:46px;padding:0 24px;border-radius:980px;background:var(--ap-blue,#0071e3);color:#fff!important;font-size:16px;font-weight:600;text-decoration:none!important}
.tb-alerts__intro{margin:0 0 14px!important;font-size:15px;color:#6e6e73}
.tb-alerts{margin:0!important;padding:0!important;list-style:none!important;background:#fff;border:1px solid #e5e5ea;border-radius:18px;overflow:hidden}
.tb-alerts__item{display:flex;align-items:center;gap:12px;margin:0!important;padding:14px 16px!important;border-top:1px solid #e5e5ea;list-style:none!important}
.tb-alerts__item:first-child{border-top:0}
.tb-alerts__icon{flex:0 0 36px;width:36px;height:36px;border-radius:50%;background:var(--ap-bg2,#f5f5f7);color:var(--ap-blue,#0071e3);display:flex;align-items:center;justify-content:center}
.tb-alerts__icon svg{width:18px;height:18px}
.tb-alerts__body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}
html:not(#tbs) body .tb-alerts__label{font-size:15px;font-weight:600;line-height:1.35;color:#1d1d1f!important;text-decoration:none!important}
.tb-alerts__meta{font-size:13px;color:#6e6e73}
html:not(#tbs) body .tb-alerts .tb-alerts__del{flex:0 0 auto;height:32px!important;min-height:0!important;padding:0 12px!important;margin:0!important;border:0!important;border-radius:980px!important;background:var(--ap-bg2,#f5f5f7)!important;color:#d70015!important;font-family:inherit!important;font-size:13px!important;font-weight:600!important;line-height:1!important;box-shadow:none!important;cursor:pointer;width:auto!important}

/* Statistiques dans « Mes annonces » */
.tb-rstats{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;font-size:13px;line-height:1.4;color:#6e6e73}
.tb-rstats__i{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;color:#1d1d1f}
.tb-rstats__i svg{width:14px;height:14px;flex:0 0 14px;color:#6e6e73;fill:none;stroke:currentColor;stroke-width:2}
.tb-rstats__when{color:#86868b;font-size:12px}

/* Statistiques sur la fiche (propriétaire) */
.tb-ostats{margin:16px 0 4px;padding:18px;background:#fff;border:1px solid #e5e5ea;border-radius:18px}
.tb-ostats__title{margin:0 0 12px!important;font-size:17px!important;font-weight:700!important;letter-spacing:-.01em;color:#1d1d1f!important}
.tb-ostats__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.tb-ostats__tile{display:flex;flex-direction:column;align-items:center;padding:10px 4px;background:var(--ap-bg2,#f5f5f7);border-radius:14px}
.tb-ostats__num{font-size:22px;font-weight:700;line-height:1.15;color:#1d1d1f;letter-spacing:-.02em}
.tb-ostats__lab{font-size:12px;color:#6e6e73}
.tb-ostats__chart{display:flex;align-items:flex-end;gap:4px;height:48px;margin:14px 2px 6px}
.tb-ostats__bar{flex:1 1 0;min-height:3px;background:#cfe3fb;border-radius:3px}
.tb-ostats__bar.is-today{background:var(--ap-blue,#0071e3)}
.tb-ostats__note{margin:0!important;font-size:12px!important;line-height:1.45;color:#86868b!important}
html:not(#tbs) body .tb-ostats .tb-ostats__cta{display:flex;align-items:center;justify-content:center;height:44px;margin-top:14px;border-radius:980px;background:var(--ap-blue,#0071e3);color:#fff!important;font-size:15px;font-weight:600;text-decoration:none!important}

/* Messages rapides et « Faire une offre » (fenêtre Répondre) */
.tb-qm{margin:0 0 14px}
.tb-qm__chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}
html:not(#tbs) body .tb-qm .tb-qm__chip{display:inline-flex!important;align-items:center!important;height:34px!important;min-height:0!important;padding:0 13px!important;margin:0!important;border:0!important;border-radius:980px!important;background:var(--ap-bg2,#f5f5f7)!important;color:#1d1d1f!important;font-family:inherit!important;font-size:13px!important;font-weight:500!important;line-height:1!important;box-shadow:none!important;cursor:pointer;width:auto!important;text-transform:none!important;letter-spacing:0!important}
html:not(#tbs) body .tb-qm .tb-qm__chip:hover{background:#e8e8ed!important}
.tb-qm__offer{padding:12px;background:var(--ap-bg2,#f5f5f7);border-radius:14px}
.tb-qm__label{display:block;margin:0 0 2px;font-size:14px;font-weight:600;color:#1d1d1f}
.tb-qm__hint{display:block;margin:0 0 8px;font-size:12px;color:#6e6e73}
.tb-qm__row{display:flex;gap:8px;align-items:center}
.tb-qm__field{flex:1 1 auto;min-width:0;display:flex;align-items:center;height:42px;padding:0 12px;background:#fff;border:1px solid #d2d2d7;border-radius:12px}
html:not(#tbs) body .tb-qm .tb-qm__offer input.tb-qm__input[type]{flex:1 1 auto;min-width:0;width:100%!important;height:40px!important;min-height:0!important;padding:0!important;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;font-family:inherit!important;font-size:16px!important;color:#1d1d1f!important;outline:none}
.tb-qm__cur{flex:0 0 auto;margin-left:6px;font-size:14px;color:#6e6e73}
html:not(#tbs) body .tb-qm .tb-qm__add{flex:0 0 auto;height:42px!important;min-height:0!important;padding:0 14px!important;margin:0!important;border:0!important;border-radius:980px!important;background:#1d1d1f!important;color:#fff!important;font-family:inherit!important;font-size:14px!important;font-weight:600!important;line-height:1!important;box-shadow:none!important;cursor:pointer;width:auto!important;text-transform:none!important}
.tb-qm__err{display:none;margin:6px 0 0;font-size:13px;color:#d70015}
.tb-qm__err.is-on{display:block}

/* Page Favoris : grille 2 colonnes, 1 colonne sur mobile */
html:not(#tbs) body.hp-template--tb-favorites-page .hp-listings.hp-grid{display:block!important}
html:not(#tbs) body.hp-template--tb-favorites-page .hp-listings.hp-grid>.hp-row{display:flex!important;flex-wrap:wrap!important;width:auto!important;margin:0 -8px!important}
html:not(#tbs) body.hp-template--tb-favorites-page .hp-listings.hp-grid>.hp-row>.hp-grid__item{flex:0 0 50%!important;max-width:50%!important;width:50%!important;padding:0 8px 16px!important}
@media (max-width:767px){html:not(#tbs) body.hp-template--tb-favorites-page .hp-listings.hp-grid>.hp-row>.hp-grid__item{flex-basis:100%!important;max-width:100%!important;width:100%!important}}

/* Mes annonces : la ligne de statistiques prend toute la largeur de la carte */
html:not(#tbs) body tr.hp-listing--edit-block>td.tb-stats-cell{grid-column:1/-1!important;order:1!important;width:auto!important;padding:10px 0 0!important;border:0!important}
html:not(#tbs) body tr.hp-listing--edit-block>td.tb-stats-cell:empty{display:none!important}
