/* Fiche vaisseau */
.modal-panel{padding-top:70px}
.modal-close{z-index:6;top:14px;right:16px;width:44px;height:44px;display:grid;place-items:center;padding:0;border:1px solid #315264;border-radius:50%;background:#0d202b;color:#e7faff;font-size:30px;line-height:1;box-shadow:0 8px 24px rgba(0,0,0,.35)}
.modal-close:hover{border-color:#55b7d7;background:#153747;color:#fff}
.detail-vehicle-image{height:clamp(220px,36vw,390px);margin-top:0}
.detail-vehicle-image img{display:block;width:100%;height:100%;max-height:none;object-fit:contain;object-position:center;filter:drop-shadow(0 18px 24px rgba(0,0,0,.65))}
.rsi-source{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.rsi-source a{display:inline-flex;padding:10px 13px;border:1px solid #2b5365;border-radius:9px;background:#0d202b}
.compact-empty{padding:28px 18px}

/* Actions du hangar sur les cartes, séparées du statut */
.ship-state{max-width:calc(100% - 116px);flex-wrap:nowrap}
.card-hangar-actions{position:absolute;z-index:3;right:10px;top:10px;display:flex;gap:6px}
.card-hangar-btn{width:36px;height:36px;display:grid;place-items:center;padding:0;border:1px solid #315264;border-radius:50%;background:rgba(5,16,23,.92);color:#b7ccd6;font:inherit;font-size:20px;font-weight:900;line-height:1;cursor:pointer;backdrop-filter:blur(8px);box-shadow:0 5px 15px rgba(0,0,0,.25)}
.card-hangar-btn:hover{border-color:#58b3d1;background:#12303e;color:#fff}
.card-hangar-btn.active{border-color:#52c3e7;background:#15506a;color:#fff}
.card-hangar-btn.wishlist.active{border-color:#d7b85c;background:#665219;color:#fff0a8}

/* Pagination du catalogue */
.catalog-pagination{display:flex;align-items:center;justify-content:center;gap:7px;flex-wrap:wrap;margin:30px 0 4px}
.catalog-pagination[hidden]{display:none}
.catalog-pagination button{min-width:42px;height:42px;padding:0 12px;border:1px solid #28495a;border-radius:10px;background:#0b1b25;color:#b8d0dc;font:inherit;font-size:13px;font-weight:800;cursor:pointer}
.catalog-pagination button:hover:not(:disabled){border-color:#50b4d5;background:#123242;color:#effcff}
.catalog-pagination button.active{border-color:#52d9ff;background:#1b7898;color:#fff;box-shadow:0 0 0 2px rgba(82,217,255,.12)}
.catalog-pagination button:disabled{cursor:not-allowed;opacity:.4}
.catalog-pagination span{min-width:22px;text-align:center;color:#658696}

/* Actualités RSI */
.news-header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:20px;padding:18px 20px;border:1px solid #25485b;border-radius:18px;background:linear-gradient(135deg,#12324a,#0c2230)}
.news-heading{display:flex;align-items:center;gap:15px;min-width:0}
.news-heading-icon{flex:0 0 auto;width:48px;height:48px;display:grid;place-items:center;border:1px solid #4a98c4;border-radius:12px;background:#276fb0;color:#fff;font-size:26px}
.news-heading .eyebrow{margin:0 0 3px;letter-spacing:1.6px}
.news-heading h2{margin:0;font-size:clamp(25px,3vw,38px);letter-spacing:-1px}
.news-heading small{display:block;margin-top:3px;color:#8fa8b7;font-size:13px}
.news-refresh{flex:0 0 auto;display:inline-flex;align-items:center;gap:9px;padding:11px 15px;border:1px solid #31556a;border-radius:10px;background:#0b1c28;color:#d9eef7;font:inherit;font-weight:800;cursor:pointer}
.news-refresh:hover{border-color:#58a5c3;background:#102b3a}
.news-refresh:disabled{cursor:wait;opacity:.7}
.news-refresh.loading span{animation:news-spin .75s linear infinite}
@keyframes news-spin{to{transform:rotate(360deg)}}
#news .news-toolbar{margin-bottom:12px}
#newsStatus{margin:0 0 18px;color:#7895a4;font-size:12px}
#news .news-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
#news .news-card{min-height:390px;padding:0;overflow:hidden;border-color:#264252;background:linear-gradient(155deg,#102534,#0a1822);display:flex;flex-direction:column}
#news .news-card:hover{transform:translateY(-3px);border-color:#4b819a}
.news-image{height:200px;background:#08131b;overflow:hidden}
.news-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
.news-card:hover .news-image img{transform:scale(1.025)}
.news-image-fallback{display:grid;place-items:center;background:radial-gradient(circle at 50% 55%,#173d53,#08151e 70%)}
.news-image-fallback span{color:#4b7184;font-size:18px;font-weight:900;letter-spacing:2px}
.news-card-content{display:flex;flex:1;flex-direction:column;padding:15px 17px 17px}
.news-card-meta{display:flex;align-items:center;justify-content:space-between;gap:12px}
.news-card-meta span{display:inline-flex;padding:5px 10px;border-radius:999px;background:#08141d;color:#dcecf3;font-size:10px;letter-spacing:.4px}
.news-card-meta time{color:#819aa7;font-size:11px}
#news .news-card h3{margin:12px 0 8px;font-size:18px;line-height:1.3}
#news .news-card p{display:-webkit-box;margin:0;color:#91a8b4;font-size:13px;line-height:1.45;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
#news .news-card strong{margin-top:auto;padding-top:15px;color:#62c9f1;font-size:12px}

@media(max-width:760px){.news-header{align-items:flex-start}.news-heading-icon{width:42px;height:42px}.news-heading small{font-size:11px}.news-refresh{padding:10px}.news-refresh{font-size:0}.news-refresh span{font-size:21px}#news .news-grid{grid-template-columns:1fr}.news-image{height:190px}}
@media(max-width:650px){.modal-panel{padding:66px 14px 22px}.modal-close{top:11px;right:12px}.detail-vehicle-image{height:220px}.news-header{padding:14px}.news-heading{gap:11px}.ship-state{max-width:calc(100% - 108px)}.card-hangar-actions{right:8px;top:8px}.card-hangar-btn{width:34px;height:34px}.catalog-pagination{gap:5px}.catalog-pagination button{min-width:38px;height:40px;padding:0 9px}.catalog-pagination button[aria-label="Page précédente"],.catalog-pagination button[aria-label="Page suivante"]{font-size:0}.catalog-pagination button[aria-label="Page précédente"]::after{content:'←';font-size:16px}.catalog-pagination button[aria-label="Page suivante"]::after{content:'→';font-size:16px}}
