/* RUTEZA 029.30 — Public Armada Catalog. Scoped, no global dashboard restyling. */
.catalog-page{background:#f7f9fb;min-height:100vh}.catalog-header{background:#fff;border-bottom:1px solid #dfe6ee}.catalog-header .container{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:72px}.catalog-brand img{width:132px;height:auto;display:block}.catalog-nav{display:flex;gap:10px;align-items:center}.catalog-hero{padding:56px 0 30px;background:#fff;border-bottom:1px solid #e6ebf1}.catalog-hero-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.7fr);gap:36px;align-items:end}.catalog-eyebrow{font-size:.78rem;font-weight:800;letter-spacing:.12em;color:#49657f}.catalog-hero h1{margin:10px 0 12px;font-size:clamp(2rem,4vw,3.5rem);line-height:1.02;color:#102f4f}.catalog-hero p{max-width:760px;margin:0;color:#53677a;font-size:1.05rem;line-height:1.7}.catalog-note{border-left:3px solid #1e5b8e;padding:4px 0 4px 18px;color:#4c6275;line-height:1.55}.catalog-note strong{display:block;color:#163a5e;margin-bottom:5px}.catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:28px 0 18px}.catalog-toolbar h2{margin:0;color:#163a5e;font-size:1.25rem}.catalog-meta{font-size:.9rem;color:#65798b}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding-bottom:54px}.catalog-card{background:#fff;border:1px solid #dfe6ee;border-radius:14px;overflow:hidden;display:flex;flex-direction:column;min-width:0;box-shadow:0 2px 10px rgba(15,45,73,.04)}.catalog-card-media{aspect-ratio:16/10;background:#edf2f6;overflow:hidden}.catalog-card-media img{width:100%;height:100%;object-fit:cover;display:block}.catalog-card-body{padding:18px;display:flex;flex-direction:column;gap:14px;flex:1}.catalog-card-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.catalog-card-top h3{margin:2px 0 0;color:#143755;font-size:1.1rem}.catalog-type{font-size:.75rem;font-weight:800;letter-spacing:.08em;color:#577086}.catalog-verified{font-size:.78rem;font-weight:700;color:#21633f;white-space:nowrap}.catalog-vendor{color:#52687a;font-size:.9rem}.catalog-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px}.catalog-facts span{display:flex;flex-direction:column;gap:3px;padding:9px 10px;border:1px solid #e5ebf0;border-radius:9px;color:#667b8c;font-size:.76rem}.catalog-facts b{color:#1f405d;font-size:.88rem;font-weight:700}.catalog-rate{padding:11px 12px;background:#f5f8fb;border-radius:10px;color:#4f6578;font-size:.82rem;line-height:1.45}.catalog-rate strong{display:block;color:#173b5d;font-size:.9rem;margin-bottom:2px}.catalog-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:auto}.catalog-actions .catalog-quote{grid-column:1/-1}.catalog-empty,.catalog-error{grid-column:1/-1;background:#fff;border:1px solid #dfe6ee;border-radius:12px;padding:28px;color:#536b7d}.catalog-error{border-color:#e3c7c7}.catalog-home{padding:42px 0;background:#f7f9fb;border-top:1px solid #e5ebf0}.catalog-home-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:18px}.catalog-home-head h2{margin:0;color:#143755}.catalog-home-head p{margin:6px 0 0;color:#607589}.catalog-home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.catalog-home-card{background:#fff;border:1px solid #dfe6ee;border-radius:12px;overflow:hidden;text-decoration:none;color:inherit}.catalog-home-card img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;background:#edf2f6}.catalog-home-copy{padding:12px 14px}.catalog-home-copy strong{display:block;color:#173b5d}.catalog-home-copy span{display:block;color:#64798a;font-size:.85rem;margin-top:4px}.catalog-control-panel{margin:18px 0;padding:18px;border:1px solid #dce5ed;background:#fff;border-radius:12px}.catalog-control-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:14px}.catalog-control-head h3{margin:0 0 5px}.catalog-control-head p{margin:0;color:#627688;max-width:720px}.catalog-control-list{display:grid;gap:10px}.catalog-control-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;border-top:1px solid #e8edf2;padding-top:10px}.catalog-control-row:first-child{border-top:0;padding-top:0}.catalog-control-copy strong{display:block}.catalog-control-copy small{display:block;color:#687d8e;margin-top:3px}.catalog-state{display:inline-block;margin-top:5px;font-size:.76rem;font-weight:800;color:#49657f}.catalog-control-actions{display:flex;gap:8px;align-items:center}.catalog-control-actions button{white-space:nowrap}
@media(max-width:900px){.catalog-grid,.catalog-home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-hero-grid{grid-template-columns:1fr}.catalog-note{max-width:700px}}
@media(max-width:620px){.catalog-header .container{min-height:64px}.catalog-nav .btn-secondary{display:none}.catalog-hero{padding:38px 0 24px}.catalog-grid,.catalog-home-grid{grid-template-columns:1fr}.catalog-toolbar,.catalog-home-head{align-items:flex-start;flex-direction:column}.catalog-actions{grid-template-columns:1fr}.catalog-actions .catalog-quote{grid-column:auto}.catalog-control-row{grid-template-columns:1fr}.catalog-control-actions{justify-content:flex-start;flex-wrap:wrap}}

/* RUTEZA 029.30.1 — catalog placement and control-surface polish. */
.catalog-home{padding:30px 0 34px;background:#fff;border-top:0;border-bottom:1px solid #e5ebf0}
.catalog-home-shell{display:grid;gap:18px}
.catalog-home-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:0}
.catalog-home-head>div{min-width:0}
.catalog-home-kicker,.catalog-control-kicker{margin-bottom:6px;color:#5b7084;font-size:10px;font-weight:800;letter-spacing:.11em}
.catalog-home-head h2{margin:0;color:#12355b;font-size:clamp(1.45rem,2.2vw,2rem);letter-spacing:-.025em}
.catalog-home-head p{max-width:720px;margin:7px 0 0;color:#607589;font-size:.92rem;line-height:1.6}
.catalog-home-all{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto;padding:9px 0;color:#12355b;font-size:.86rem;font-weight:800;text-decoration:none}
.catalog-home-all:hover{text-decoration:underline;text-underline-offset:3px}
.catalog-home-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,480px));gap:12px;justify-content:start}
.catalog-home-card{display:grid;grid-template-columns:160px minmax(0,1fr);min-height:150px;background:#fff;border:1px solid #dfe6ee;border-radius:10px;overflow:hidden;text-decoration:none;color:inherit;transition:border-color .15s ease,box-shadow .15s ease}
.catalog-home-card:hover{border-color:#b8c7d5;box-shadow:0 6px 18px rgba(15,45,73,.07)}
.catalog-home-card:focus-visible{outline:3px solid rgba(18,53,91,.25);outline-offset:2px}
.catalog-home-media{position:relative;display:block;min-height:150px;background:#edf2f6;overflow:hidden}
.catalog-home-media img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;display:block;background:#edf2f6}
.catalog-home-verified{position:absolute;left:10px;bottom:10px;padding:4px 7px;border:1px solid rgba(255,255,255,.88);border-radius:999px;background:rgba(255,255,255,.93);color:#17623b;font-size:10px;font-weight:800;line-height:1.2}
.catalog-home-copy{display:flex;flex-direction:column;min-width:0;padding:15px 16px}
.catalog-home-type{color:#667b8d;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.catalog-home-copy>strong{margin-top:5px;color:#173b5d;font-size:1rem;line-height:1.35}
.catalog-home-meta{margin-top:6px;color:#64798a;font-size:.8rem;line-height:1.45;overflow-wrap:break-word}
.catalog-home-link{display:inline-flex;align-items:center;gap:6px;margin-top:auto;padding-top:12px;color:#12355b;font-size:.8rem;font-weight:800}

.dashboard-admin .catalog-control-panel-admin{margin:14px 0 18px;padding:0;border:1px solid #dfe4ea;border-radius:10px;background:#fff;overflow:hidden}
.dashboard-admin .catalog-control-admin-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:17px 18px}
.dashboard-admin .catalog-control-admin-head>div:first-child{min-width:0}
.dashboard-admin .catalog-control-admin-head h3{margin:0;color:#101828;font-size:16px;letter-spacing:-.015em}
.dashboard-admin .catalog-control-admin-head p{max-width:620px;margin:5px 0 0;color:#667085;font-size:12px;line-height:1.55}
.dashboard-admin .catalog-control-stats{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:8px 14px;flex:0 1 520px;color:#667085;font-size:10px;line-height:1.35}
.dashboard-admin .catalog-control-stats>span{display:inline-flex;align-items:baseline;gap:4px;white-space:nowrap}
.dashboard-admin .catalog-control-stats strong{color:#101828;font-size:12px;line-height:1.15}
.dashboard-admin .catalog-control-details{border-top:1px solid #e4e7ec;background:#fbfcfd}
.dashboard-admin .catalog-control-details>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:46px;padding:0 18px;cursor:pointer;list-style:none;color:#344054;font-size:12px;font-weight:800}
.dashboard-admin .catalog-control-details>summary::-webkit-details-marker{display:none}
.dashboard-admin .catalog-control-details>summary::before{content:'›';margin-right:8px;color:#667085;font-size:18px;line-height:1;transform:rotate(0);transition:transform .15s ease}
.dashboard-admin .catalog-control-details[open]>summary::before{transform:rotate(90deg)}
.dashboard-admin .catalog-control-details>summary>span:first-child{margin-right:auto}
.dashboard-admin .catalog-control-count{color:#667085;font-size:11px;font-weight:700}
.dashboard-admin .catalog-control-details .catalog-control-list{display:grid;gap:0;border-top:1px solid #e4e7ec;background:#fff}
.dashboard-admin .catalog-control-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:13px 18px;border-top:1px solid #eef1f4}
.dashboard-admin .catalog-control-row:first-child{border-top:0}
.dashboard-admin .catalog-control-title{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.dashboard-admin .catalog-control-title strong{color:#101828;font-size:13px;line-height:1.4}
.dashboard-admin .catalog-control-title code{padding:2px 5px;border-radius:4px;background:#f2f4f7;color:#475467;font-size:10px;font-weight:800}
.dashboard-admin .catalog-control-copy small{display:block;margin-top:3px;color:#667085;font-size:11px;line-height:1.45}
.dashboard-admin .catalog-control-status-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:7px}
.dashboard-admin .catalog-state{display:inline-flex;align-items:center;margin:0;padding:3px 7px;border:1px solid #d0d5dd;border-radius:999px;background:#f8fafc;color:#475467;font-size:10px;font-weight:800;line-height:1.25}
.dashboard-admin .catalog-state-ready{border-color:#abefc6;background:#ecfdf3;color:#067647}
.dashboard-admin .catalog-state-admin-held,.dashboard-admin .catalog-state-vendor-out{border-color:#fedf89;background:#fffaeb;color:#b54708}
.dashboard-admin .catalog-state-not-ready{border-color:#e4e7ec;background:#f9fafb;color:#667085}
.dashboard-admin .catalog-control-reason{color:#667085;font-size:10px;line-height:1.4;overflow-wrap:break-word}
.dashboard-admin .catalog-control-locked{color:#667085;font-size:10px;font-weight:700;white-space:nowrap}
.dashboard-admin .catalog-control-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}

@media(max-width:900px){
  .catalog-home-grid{grid-template-columns:repeat(auto-fill,minmax(330px,1fr))}
  .dashboard-admin .catalog-control-admin-head{display:grid;grid-template-columns:1fr}
  .dashboard-admin .catalog-control-stats{justify-content:flex-start;flex-basis:auto}
}
@media(max-width:620px){
  .catalog-home{padding:24px 0 28px}
  .catalog-home-head{align-items:flex-start;flex-direction:column;gap:6px}
  .catalog-home-all{padding:4px 0}
  .catalog-home-grid{grid-template-columns:1fr}
  .catalog-home-card{grid-template-columns:116px minmax(0,1fr);min-height:126px}
  .catalog-home-media{min-height:126px}
  .catalog-home-copy{padding:12px 13px}
  .catalog-home-verified{left:7px;bottom:7px;font-size:9px}
  .dashboard-admin .catalog-control-admin-head{padding:15px}
  .dashboard-admin .catalog-control-stats{justify-content:flex-start;width:100%}
  .dashboard-admin .catalog-control-stats>span{white-space:normal}
  .dashboard-admin .catalog-control-details>summary{padding:0 15px}
  .dashboard-admin .catalog-control-row{grid-template-columns:1fr;gap:10px;padding:13px 15px}
  .dashboard-admin .catalog-control-actions{justify-content:flex-start}
}
@media(prefers-reduced-motion:reduce){.catalog-home-card,.dashboard-admin .catalog-control-details>summary::before{transition:none}}
