.catalog-page { max-width:1480px; margin:auto; }
.main:has(.catalog-page) .page-title { overflow-wrap:anywhere; }
.catalog-intro,.catalog-heading,.catalog-toolbar,.catalog-pagination { display:flex; align-items:center; justify-content:space-between; gap:20px; }
.catalog-intro { padding:18px 0 30px; border-bottom:1px solid var(--line); }
.catalog-intro h2 { font-size:clamp(28px,3vw,46px); letter-spacing:-.04em; margin:10px 0; }
.catalog-page p,.catalog-hint { color:var(--muted); line-height:1.8; font-size:13px; }
.catalog-count { font-size:38px; color:var(--accent); text-align:right; }
.catalog-intro>div { min-width:0; overflow-wrap:anywhere; }
.catalog-count small { display:block; font-size:12px; color:var(--muted); }
.catalog-hint { margin:25px 0; max-width:1000px; }
.catalog-toolbar { margin:25px 0; flex-wrap:wrap; }
.catalog-toolbar form { display:flex; gap:10px; flex:1; min-width:230px; }
.catalog-toolbar input { width:100%; min-width:0; flex:1; }
.catalog-table-wrap { position:relative; overflow:auto; border:1px solid var(--line); border-radius:14px; }
.catalog-table { width:100%; border-collapse:collapse; text-align:left; font-size:13px; }
.catalog-table th { font-size:11px; color:var(--muted); font-weight:500; }
.catalog-table th,.catalog-table td { padding:16px; border-bottom:1px solid var(--line); }
.catalog-table tbody tr:last-child td { border-bottom:0; }
.catalog-table tr:hover td { background:rgba(var(--accent-rgb),.035); }
.catalog-vehicle { display:flex; align-items:center; gap:14px; min-width:210px; }
.catalog-photo { position:relative; display:grid; place-items:center; width:85px; height:54px; flex:none; background:#00000022; border-radius:9px; overflow:hidden; }
.catalog-photo svg { width:30px; height:30px; color:var(--muted); fill:none; stroke:currentColor; }
.catalog-photo img { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; background:var(--panel); }
.catalog-photo img[hidden] { display:none; }
.catalog-actions { white-space:nowrap; }
.catalog-limit { display:inline-block; padding:5px 9px; border:1px solid var(--line); border-radius:6px; color:var(--accent); white-space:nowrap; font-size:11px; }
.catalog-actions button { margin:3px; font-size:11px; }
.catalog-pagination { justify-content:flex-end; margin:18px 0 32px; font-size:12px; }
.catalog-editor,.catalog-section { padding:26px; background:var(--panel); border:1px solid var(--line); border-radius:16px; margin:24px 0; }
.catalog-editor { border-color:rgba(var(--accent-rgb),.5); }
.catalog-heading h2 { margin:8px 0; }
.catalog-fields { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; margin:26px 0; }
.catalog-field { min-width:0; display:flex; flex-direction:column; gap:7px; }
.catalog-field code { color:var(--muted); font-size:10px; font-weight:400; }
.catalog-field small { font-size:10px; color:var(--muted); overflow-wrap:anywhere; }
.catalog-field textarea { width:100%; resize:vertical; min-height:65px; font:13px/1.6 monospace; }
.catalog-field select { width:100%; font-size:11px; }
.catalog-field textarea:disabled { opacity:.55; }
.catalog-save-bar { display:flex; align-items:flex-end; gap:18px; flex-wrap:wrap; border-top:1px solid var(--line); padding-top:22px; }
.catalog-save-bar .field { flex:1; min-width:220px; }
.catalog-grant-form { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin:22px 0; align-items:end; }
.catalog-permissions { display:flex; flex-wrap:wrap; gap:16px; grid-column:1/-1; font-size:12px; }
.catalog-permissions label { display:flex; align-items:center; gap:7px; }
.catalog-permissions input { width:16px; height:16px; accent-color:var(--accent); }
.catalog-grants article { display:flex; align-items:center; gap:14px; padding:18px 0; border-top:1px solid var(--line); }
.catalog-grants article>div { flex:1; overflow-wrap:anywhere; }
.catalog-grants small { display:block; color:var(--muted); font-size:11px; margin-top:6px; }
.catalog-history article { display:grid; grid-template-columns:110px 1fr auto; gap:18px; padding:17px 0; border-top:1px solid var(--line); font-size:12px; overflow-wrap:anywhere; }
.catalog-history small { color:var(--muted); }
@media(max-width:1100px) { .catalog-fields { grid-template-columns:repeat(2,minmax(0,1fr)); } .catalog-history article { grid-template-columns:100px 1fr; } .catalog-history small { grid-column:2; } }
@media(max-width:650px) { .catalog-fields,.catalog-grant-form { grid-template-columns:1fr; } .catalog-editor,.catalog-section { padding:18px; } .catalog-heading { align-items:flex-start; } .catalog-grants article { flex-wrap:wrap; } .catalog-grants article>div { flex-basis:100%; } .catalog-save-bar .field { min-width:0; flex-basis:100%; } .catalog-intro { align-items:flex-start; } }
