/* Ship Explorer layout; palette comes from the site's themes.css. */
.ships-page{position:relative;z-index:1;min-height:72vh;padding:clamp(28px,5vw,72px) 0 96px;color:var(--text)}
.ships-content{width:var(--shell);margin-inline:auto}
.ships-page h1{margin:0 0 8px;font-size:clamp(2.2rem,5vw,4rem);line-height:1.1;text-transform:uppercase;color:var(--text)}
.ships-page .lead{max-width:850px;margin:0 0 24px;color:var(--muted)}
.ships-page .controls{display:flex;flex-wrap:wrap;gap:12px;align-items:end;padding:18px;margin-bottom:14px;border:1px solid var(--line-strong);border-radius:var(--panel-radius);background:var(--panel-background,var(--panel));box-shadow:var(--shadow)}
.ships-page .controls>label{display:grid;gap:4px;font-weight:650;color:var(--text)}
.ships-page input[type=search],.ships-page .controls>button,.ships-page .facet summary,.ships-page .facet-options button,.ships-page dialog button{font:inherit;color:var(--text);background:var(--panel-solid);border:1px solid var(--line-strong);border-radius:var(--button-radius);padding:9px 12px}
.ships-page .lock-control select{font:inherit;color:var(--text);background:var(--panel-solid);border:1px solid var(--line-strong);border-radius:var(--button-radius);padding:9px 12px;cursor:pointer}
.ships-page input[type=search]{min-width:220px}.ships-page button{cursor:pointer}
.ships-page :is(button,input,summary):focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.ships-page .controls>button:hover,.ships-page .facet summary:hover{border-color:var(--accent);color:var(--accent-bright)}
.ships-page .facet{position:relative;min-width:140px}.ships-page .facet summary{list-style:none;cursor:pointer;white-space:nowrap}.ships-page .facet summary::-webkit-details-marker{display:none}.ships-page .facet summary::after{content:' ▾';color:var(--accent)}
.ships-page .facet-options{position:absolute;z-index:50;top:100%;left:0;min-width:max(100%,225px);max-height:310px;overflow:auto;padding:8px;background:var(--panel-solid);border:1px solid var(--line-strong);box-shadow:var(--shadow)}
.ships-page .facet-options label{display:flex;align-items:center;gap:9px;padding:5px 6px;white-space:nowrap;cursor:pointer}.ships-page .facet-options input{accent-color:var(--accent)}.ships-page .facet-options button{width:100%;padding:5px 8px;text-align:left}
.ships-page .meta{display:flex;gap:18px;flex-wrap:wrap;color:var(--muted);margin:10px 0 16px}
.ships-page .table-wrap{overflow:auto;max-height:70vh;border:1px solid var(--line-strong);background:var(--panel-solid);box-shadow:var(--shadow)}
.ships-page table{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;font-variant-numeric:tabular-nums}
.ships-page th,.ships-page td{padding:9px 12px;border-bottom:1px solid var(--line);white-space:nowrap;text-align:left}
.ships-page thead th{position:sticky;top:0;z-index:2;background:var(--panel-soft);color:var(--text)}
.ships-page thead tr.ranges th{top:42px;z-index:1;background:var(--panel-solid);font-size:.78rem;font-weight:400;color:var(--accent-pale)}
.ships-page tbody td.is-locked{position:sticky;z-index:3;background:var(--panel-solid)}
.ships-page tbody tr:hover td.is-locked{background:var(--panel-soft)}
.ships-page thead tr:first-child th.is-locked{z-index:6}
.ships-page thead tr.ranges th.is-locked{z-index:5}
.ships-page .last-locked{box-shadow:2px 0 0 var(--line-strong),6px 0 12px rgba(0,0,0,.35)}
.ships-page tbody tr:hover{background:var(--line-soft)}
.ships-page th button{border:0;padding:0;background:transparent;color:inherit;font:inherit;font-weight:700;text-align:left;white-space:nowrap}
.ships-page th button:hover{text-decoration:underline;color:var(--accent-bright)}
.ships-page th .hint{margin-left:6px;color:var(--accent);cursor:help;border-bottom:1px dotted;font-size:.8rem}
.ships-page dialog{background:var(--panel-solid);color:var(--text);border:1px solid var(--line-strong);border-radius:var(--panel-radius);max-width:min(500px,95vw)}.ships-page dialog::backdrop{background:#000b}
.ships-page .column-list{list-style:none;padding:0;max-height:55vh;overflow:auto}.ships-page .column-list li{display:flex;align-items:center;gap:8px;padding:6px;border-bottom:1px solid var(--line)}.ships-page .column-list li.dragging{opacity:.5}.ships-page .column-list label{flex:1}.ships-page .column-list input{accent-color:var(--accent)}.ships-page .column-list button{padding:3px 8px}.ships-page small{color:var(--muted)}
@media(max-width:650px){.ships-page .controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.ships-page .controls>label:first-child{grid-column:1/-1}.ships-page input[type=search]{min-width:0;width:100%}.ships-page .facet{min-width:0}.ships-page .facet summary{overflow:hidden;text-overflow:ellipsis}.ships-page .facet-options{max-width:80vw}}
