.public-top .brand{color:#f1f6ff;text-decoration:none;letter-spacing:.07em;font-size:14px}.staff-link{font-size:13px;color:#9db4d2}.public-main{max-width:1220px;margin:0 auto;padding:34px 24px 90px}.catalogue-hero{border:1px solid #2a3c55;border-radius:20px;background:radial-gradient(circle at 100% 0%,#233b5a 0%,#16253b 36%,#121d2e 78%);padding:36px 38px;display:flex;align-items:center;justify-content:space-between;gap:24px}.eyebrow{font-size:11px;letter-spacing:.18em;color:#91b8f3;font-weight:800}.catalogue-hero h1{font-size:clamp(29px,4vw,44px);letter-spacing:-.04em;line-height:1.12;margin:13px 0}.catalogue-hero p{color:#b3c1d4;line-height:1.6;max-width:530px;margin:0}.hero-count{border-left:1px solid #435573;padding:8px 0 8px 32px;display:grid;min-width:165px}.hero-count strong{font-size:46px;line-height:1.1}.hero-count span{font-size:13px;color:#afc1d9}.catalogue-controls{display:flex;gap:14px;margin-top:30px;align-items:stretch}.search-wrap{flex:1;display:flex;align-items:center;gap:12px;border:1px solid #3a4c65;border-radius:11px;background:#131f30;padding:0 16px}.search-wrap span{font-size:26px;color:#a6b7cd}.search-wrap input{background:transparent;border:0;margin:0;outline:none;box-shadow:none;padding:13px 0;font-size:14px}.search-wrap input:focus{outline:none}.search-wrap:focus-within{border-color:#77a7ff;box-shadow:0 0 0 2px #538cf43d}.sort-wrap{display:flex;align-items:center;gap:12px;color:#aebed1;font-size:13px;white-space:nowrap}.sort-wrap select{margin:0;width:185px;background:#131f30;padding:13px}.catalogue-meta{display:flex;justify-content:space-between;align-items:center;margin:19px 0 15px;color:#a9bad0;font-size:13px}.clear-search{background:none;padding:3px 0;color:#9cc4ff;font-size:13px}.public-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.public-vehicle{display:block;text-align:left;background:#142136;border:1px solid #2d3d53;border-radius:16px;overflow:hidden;padding:0;color:inherit;transition:transform .16s,border-color .16s,box-shadow .16s;min-width:0}.public-vehicle:hover{transform:translateY(-3px);border-color:#628bd0;box-shadow:0 12px 30px #0004;filter:none}.public-vehicle:focus-visible{outline:3px solid #91baff;outline-offset:3px}.public-vehicle .vehicle-media{height:210px;background:#1d2b3d;display:grid;place-items:center;overflow:hidden}.vehicle-media img{width:100%;height:100%;object-fit:cover}.image-fallback{display:grid;place-items:center;width:100%;height:100%;color:#7188a7;background:linear-gradient(145deg,#202e43,#101b2b)}.image-fallback svg{width:84px;height:84px;opacity:.6}.public-vehicle-body{padding:20px}.vehicle-availability{display:inline-flex;gap:6px;align-items:center;color:#8fe3b4;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.vehicle-availability:before{content:"";width:7px;height:7px;background:#5fdc98;border-radius:50%}.public-vehicle h2{font-size:19px;margin:10px 0 5px;letter-spacing:-.02em;overflow-wrap:anywhere}.vin-line{font-size:13px;color:#a7b9cf}.card-bottom{border-top:1px solid #2d3d53;margin-top:18px;padding-top:14px;display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#a7bbd6}.card-bottom strong{color:#d7e8ff;font-size:13px}.empty-state{grid-column:1/-1;text-align:center;padding:65px 18px;border:1px dashed #41516a;border-radius:15px;color:#a8b9d0}.empty-state h2{color:#f1f6ff;margin:0 0 9px}.empty-state p{margin:0;line-height:1.6}.public-footer{border-top:1px solid #29374a;color:#8298b4;text-align:center;padding:25px;font-size:12px}.public-dialog{width:min(660px,calc(100vw - 24px));max-height:min(90dvh,900px);padding:0;overflow:hidden;border:1px solid #4a5d76;border-radius:19px;background:#152238;box-shadow:0 25px 90px #000b}.public-dialog::backdrop{background:#030811cf;backdrop-filter:blur(4px)}.modal-head{display:flex;justify-content:space-between;gap:12px;padding:23px 27px 18px;border-bottom:1px solid #2d3d54}.modal-head h2{font-size:25px;margin:7px 0 4px}.modal-head p{margin:0;color:#a9bbd0;font-size:13px}.close-dialog{background:#26374f;color:#e7f1ff;font-size:25px;width:38px;height:38px;padding:0;flex-shrink:0}.modal-scroll{overflow-y:auto;max-height:calc(90dvh - 115px);padding:23px 27px 30px}.detail-image{height:285px;border-radius:12px;overflow:hidden;background:#1b2a40}.detail-image img{width:100%;height:100%;object-fit:contain}.modal-section-title{font-size:14px;letter-spacing:.01em;margin:24px 0 13px}.upgrade-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.upgrade-item{background:#1d3049;border:1px solid #31445f;border-radius:10px;padding:14px;display:flex;justify-content:space-between;gap:10px}.upgrade-item span{color:#b2c2d8;font-size:13px}.upgrade-item strong{font-size:13px}.public-notes{white-space:pre-wrap;overflow-wrap:anywhere;color:#c7d5e5;line-height:1.65;margin:0}.public-notes:empty{display:none}@media(max-width:950px){.public-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.public-main{padding:18px 15px 60px}.catalogue-hero{padding:25px 22px;display:block}.hero-count{border-left:0;border-top:1px solid #435573;padding:16px 0 0;margin-top:20px}.hero-count strong{font-size:32px}.catalogue-controls{flex-direction:column}.sort-wrap{justify-content:space-between}.sort-wrap select{width:65%}.public-grid{grid-template-columns:1fr;gap:14px}.public-vehicle .vehicle-media{height:210px}.modal-head{padding:18px}.modal-scroll{padding:17px;max-height:calc(90dvh - 105px)}.detail-image{height:220px}}

/* Plain catalogue presentation: no gradients, effects or decorative badges */
.public-top .brand{color:#222;letter-spacing:normal;font-size:16px}.staff-link{color:#444}
.public-main{padding:22px 20px 55px}.catalogue-hero{background:#fff;border:1px solid #d4d4d4;border-radius:3px;padding:20px;gap:16px}
.eyebrow{font-size:12px;letter-spacing:normal;color:#666;font-weight:normal}.catalogue-hero h1{font-size:26px;letter-spacing:normal;line-height:1.25;margin:5px 0 7px}.catalogue-hero p{color:#555;line-height:1.4}
.hero-count{border-left:1px solid #ddd;padding:5px 0 5px 20px;min-width:110px}.hero-count strong{font-size:27px;font-weight:normal}.hero-count span{color:#666}
.catalogue-controls{margin-top:16px;gap:10px}.search-wrap{background:#fff;border:1px solid #bbb;border-radius:3px;padding:0 10px;gap:8px}.search-wrap span{font-size:18px;color:#777}.search-wrap input{padding:9px 0}.search-wrap:focus-within{border-color:#777;box-shadow:none}.sort-wrap{color:#555}.sort-wrap select{background:#fff;padding:9px}
.catalogue-meta{margin:12px 0;color:#666}.clear-search{color:#333;background:none;border:0;text-decoration:underline}
.public-grid{gap:12px}.public-vehicle{background:#fff;border:1px solid #d4d4d4;border-radius:3px;transition:none;box-shadow:none}.public-vehicle:hover{transform:none;border-color:#888;box-shadow:none;background:#fafafa}.public-vehicle:focus-visible{outline:2px solid #555;outline-offset:2px}
.public-vehicle .vehicle-media{height:180px;background:#eee}.image-fallback{background:#eee;color:#999}.image-fallback svg{opacity:.5}
.public-vehicle-body{padding:13px}.vehicle-availability{font-size:11px;letter-spacing:normal;color:#555;font-weight:normal;text-transform:none}.vehicle-availability:before{display:none}
.public-vehicle h2{font-size:17px;margin:7px 0 4px;letter-spacing:normal}.vin-line{color:#666}.card-bottom{border-color:#ddd;margin-top:12px;padding-top:10px;color:#666}.card-bottom strong{color:#333}
.empty-state{padding:35px 15px;border:1px solid #ddd;border-radius:3px;color:#666}.empty-state h2{color:#222}.public-footer{border-color:#ddd;color:#666;padding:18px}
.public-dialog{background:#fff;border:1px solid #aaa;border-radius:4px;box-shadow:none}.public-dialog::backdrop{background:#0008;backdrop-filter:none}.modal-head{padding:16px;border-color:#ddd}.modal-head h2{font-size:21px;margin:5px 0}.modal-head p{color:#666}.close-dialog{background:#eee;color:#222;font-size:20px;width:32px;height:32px}.modal-scroll{padding:16px}.detail-image{height:250px;border-radius:3px;background:#f1f1f1}.modal-section-title{margin:17px 0 10px}.upgrade-grid{gap:8px}.upgrade-item{background:#f7f7f7;border:1px solid #ddd;border-radius:3px;padding:10px}.upgrade-item span,.public-notes{color:#555}.upgrade-item strong{color:#222}
@media(max-width:650px){.public-main{padding:12px 12px 40px}.catalogue-hero{padding:14px}.hero-count{border-left:0;border-top:1px solid #ddd;padding:10px 0 0;margin-top:12px}.public-grid{gap:10px}.modal-head,.modal-scroll{padding:12px}}

/* Public catalogue: same plain dark styling as the staff interface. */
.public-top .brand{color:#eee}.staff-link{color:#ccc}
.catalogue-hero{background:#222;border-color:#414141}.eyebrow{color:#aaa}
.catalogue-hero p,.hero-count span,.sort-wrap,.catalogue-meta{color:#aaa}
.hero-count{border-color:#414141}.search-wrap{background:#292929;border-color:#575757}
.search-wrap span{color:#aaa}.search-wrap:focus-within{border-color:#aaa}
.sort-wrap select{background:#292929;color:#eee;border-color:#575757}
.clear-search{color:#ddd}.public-vehicle{background:#222;border-color:#414141}
.public-vehicle:hover{background:#292929;border-color:#777;box-shadow:none;transform:none}
.public-vehicle:focus-visible{outline-color:#aaa}.public-vehicle .vehicle-media{background:#2b2b2b}
.image-fallback{background:#2b2b2b;color:#888}.vehicle-availability{color:#bbb}
.vin-line,.card-bottom{color:#aaa}.card-bottom{border-color:#414141}.card-bottom strong{color:#ddd}
.empty-state{border-color:#555;color:#aaa}.empty-state h2{color:#eee}
.public-footer{border-color:#414141;color:#aaa}
.public-dialog{background:#242424;color:#eee;border-color:#666;box-shadow:none}
.modal-head{border-color:#414141}.modal-head p{color:#aaa}.close-dialog{background:#383838;color:#eee}
.detail-image{background:#292929}.upgrade-item{background:#303030;border-color:#505050}
.upgrade-item span,.public-notes{color:#bbb}.upgrade-item strong{color:#eee}
@media(max-width:650px){.hero-count{border-color:#414141}}

/* Minimal dark catalogue header */
.catalogue-hero{background:#222!important;border:1px solid #414141!important;border-radius:2px!important;padding:12px 16px!important}
.catalogue-hero h1{font-size:19px!important;margin:0!important;font-weight:600!important;letter-spacing:0!important}
.hero-count strong{font-size:20px!important}
.hero-count{padding:0 0 0 14px!important;min-width:auto!important}
.public-main{padding-top:16px!important}
.catalogue-controls{margin-top:14px!important}
