/* Shared, scoped catalogue layout. Component styles must also survive the shell. */
.estate-fast,.procurement-catalog{max-width:1480px;margin:auto;padding:24px;min-width:0}
.estate-fast-hero,.procurement-heading{display:flex;justify-content:space-between;align-items:start;gap:24px;margin-bottom:24px}
.estate-fast-hero h1,.procurement-heading h1{font-size:clamp(27px,3vw,38px);line-height:1.2;margin:8px 0 12px;color:#173c55}
.estate-fast-hero p,.procurement-heading p{max-width:760px;color:#5d7485;line-height:1.65}
.estate-fast-hero nav{display:flex;gap:10px;flex-wrap:wrap}
.estate-fast-catalog,.procurement-workspace{display:grid!important;grid-template-columns:264px minmax(0,1fr)!important;gap:20px!important;align-items:start}
.estate-fast-stats,.procurement-status{grid-column:1/-1;grid-row:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.estate-fast-stats article,.procurement-status article{background:#fff;border:1px solid #dce5ec;border-radius:12px;padding:18px;min-width:0}
.estate-fast-stats small,.procurement-status small{display:block;color:#657e90;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.estate-fast-stats b,.procurement-status b{display:block;color:#173f58;font-size:24px;margin:8px 0;overflow-wrap:anywhere}
.estate-fast-stats span,.procurement-status span{color:#667e8f;font-size:12px}
.estate-filter-sidebar,.procurement-filter-sidebar{grid-column:1;grid-row:2/5;position:sticky;top:160px;background:#fff;border:1px solid #dce5ec;border-radius:12px;padding:20px;min-width:0}
.catalog-filter-drawer>h2{font:700 19px/1.3 system-ui,sans-serif;color:#173f58;margin:0 0 20px}
.catalog-filter-drawer>summary{font:700 15px/1.4 system-ui,sans-serif;color:#173f58;cursor:pointer;padding:14px 16px;min-height:48px;box-sizing:border-box}
.catalog-filter-drawer>summary:focus-visible{outline:3px solid #317b9b;outline-offset:3px}
.catalog-filter-drawer>summary::marker{color:#a67c2f}
.estate-fast-filter,.procurement-filters{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:18px!important;padding:0!important;margin:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
.estate-fast-filter label,.procurement-filters label{display:grid;gap:7px;min-width:0;grid-column:auto!important;font:600 12px/1.45 system-ui,sans-serif;color:#38586d}
.estate-fast-filter input,.estate-fast-filter select,.procurement-filters input,.procurement-filters select{box-sizing:border-box;width:100%;max-width:100%;min-width:0;min-height:44px;padding:10px 12px;border:1px solid #c7d7e2;border-radius:8px;background:#fff;color:#173f58;font:400 14px/1.5 system-ui,sans-serif}
.estate-fast-filter .btn,.procurement-filters .btn{width:100%;min-height:44px;white-space:normal}
.estate-fast-advanced{grid-column:auto!important;color:#416276;font-size:13px}
.estate-fast-advanced>div{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:18px;padding-top:16px}
.estate-fast-summary,.procurement-list-head{grid-column:2;grid-row:2;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;color:#3a5a6e;margin:0!important}
.estate-fast-summary>span{font-size:12px;color:#667e8e}
.estate-fast-view{display:flex;gap:6px}
.estate-fast-view button{border:1px solid #cedee8;background:#fff;border-radius:7px;min-height:38px;padding:8px 12px;color:#35556b}
.estate-fast-view button.is-active{background:#193f58;color:#fff}
.estate-fast-list,.procurement-list{grid-column:2;grid-row:3;display:grid;gap:14px;min-width:0}
.estate-fast-row,.procurement-card{padding:22px;background:#fff;border:1px solid #dbe6ed;border-radius:12px;min-width:0}
.estate-fast-row>header{display:flex;justify-content:space-between;gap:20px;align-items:start}
.estate-fast-row h2{font:700 19px/1.4 system-ui,sans-serif;color:#193f58;overflow-wrap:anywhere;margin:10px 0}
.estate-fast-row p{font-size:12px;line-height:1.6;color:#647e90;overflow-wrap:anywhere}
.estate-fast-state{display:inline-block;border-radius:6px;padding:5px 8px;font-size:11px;font-weight:700;background:#fff6df;color:#7d621c}
.estate-fast-state.ready{background:#e9f5ee;color:#27694a}
.estate-fast-row dl{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px;margin:18px 0 0;padding-top:16px;border-top:1px solid #e3ebf1}
.estate-fast-row dl>div{min-width:0}.estate-fast-row dt{font-size:11px;color:#6a8090;margin-bottom:7px}.estate-fast-row dd{margin:0;color:#21455b;font-size:13px;overflow-wrap:anywhere}.estate-fast-row small{display:block;color:#748997;margin-top:6px;font-size:11px}
.estate-fast-pages,.procurement-pages{grid-column:2;grid-row:4;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px}
.estate-fast-pages button,.procurement-pages button{min-height:44px;padding:10px 16px;border:1px solid #c5d6e2;border-radius:8px;background:#fff;color:#214f69;cursor:pointer;font-weight:650}
.estate-fast-pages button:disabled,.procurement-pages button:disabled{opacity:.45;cursor:default}
.estate-fast-loading,.procurement-loading,.estate-fast-empty,.procurement-empty{padding:28px;background:#fff;border:1px dashed #cbdde7;border-radius:12px;line-height:1.6;color:#536f82}
.estate-fast-empty b,.procurement-empty b{display:block;color:#264d66}.estate-fast-empty.error,.procurement-empty.error{border-color:#e5c3bc;background:#fffaf8}
.catalog-shell .catalog-workspace>.catalog-panel:first-child{background:#fff!important;border:1px solid #dce5ec!important;color:#294b61!important}
.catalog-shell .catalog-filter-title,.catalog-shell .catalog-filters label,.catalog-shell .catalog-actions label{color:#38586d!important}
.catalog-shell .catalog-filters input,.catalog-shell .catalog-filters select{background:#fff!important;color:#173f58!important;border:1px solid #c7d7e2!important;font-size:14px!important}
.catalog-shell .catalog-actions button{min-height:44px!important;white-space:normal!important}
.catalog-shell .catalog-actions button.primary{background:#173f58!important;color:#fff!important;border-color:#173f58!important}
.catalog-shell .catalog-actions button:not(.primary){background:#f4f8fb!important;color:#274e66!important}
.catalog-shell .catalog-list .catalog-card-content{min-width:0;width:100%;box-sizing:border-box;grid-column:2}
.local-parcel-breadcrumbs{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 18px;line-height:1.6;overflow-wrap:anywhere}
.local-parcel-workspace-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.local-parcel-error-detail{font:400 13px/1.6 system-ui,sans-serif;overflow-wrap:anywhere}
@media(min-width:851px){.catalog-filter-drawer>summary{display:none}.catalog-filter-drawer:not([open])>:not(summary){display:initial}}
@media(max-width:850px){
 .estate-fast,.procurement-catalog{padding:16px 12px}
 .estate-fast-catalog,.procurement-workspace{grid-template-columns:minmax(0,1fr)!important;gap:16px!important}
 .estate-filter-sidebar,.procurement-filter-sidebar{grid-column:1;grid-row:2;position:static;padding:0}
 .estate-fast-summary,.procurement-list-head{grid-column:1;grid-row:3}.estate-fast-list,.procurement-list{grid-column:1;grid-row:4}.estate-fast-pages,.procurement-pages{grid-column:1;grid-row:5}
 .catalog-filter-drawer[open]>.estate-fast-filter,.catalog-filter-drawer[open]>.procurement-filters{padding:4px 16px 18px!important}
 .catalog-filter-drawer>h2,.catalog-filter-drawer>.catalog-filter-title{display:none}
 .catalog-shell .catalog-workspace>.catalog-panel:first-child{padding:0!important;margin-bottom:0!important}
 .catalog-shell .catalog-filter-drawer[open]>form{padding:0 16px 18px!important}
 .catalog-shell .catalog-filters{padding-top:4px!important}
 .estate-fast-hero,.procurement-heading{display:block}.estate-fast-hero nav,.procurement-heading>a{margin-top:16px}
 .estate-fast-stats,.procurement-status{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .estate-fast-stats article,.procurement-status article{padding:14px}.estate-fast-stats b,.procurement-status b{font-size:21px}
}
@media(max-width:650px){
 body.portal-top-navigation .catalog-shell .catalog-list .catalog-card{display:block!important;grid-template-columns:minmax(0,1fr)!important;padding:18px 16px!important}
 body.portal-top-navigation .catalog-shell .catalog-list .catalog-card-content{display:block!important;grid-column:1!important;width:100%!important;min-width:0!important}
 body.portal-top-navigation .catalog-shell .catalog-card-top{display:flex!important;justify-content:space-between;gap:10px;flex-wrap:wrap}
 body.portal-top-navigation .catalog-shell .catalog-card-top>div{flex:1 1 100%!important;min-width:0}
 body.portal-top-navigation .catalog-shell .catalog-card-number{font-size:19px!important;line-height:1.4!important}
 body.portal-top-navigation .catalog-shell .catalog-card-key{white-space:normal!important;overflow-wrap:anywhere;font-size:12px!important;line-height:1.5;margin-top:5px}
 body.portal-top-navigation .catalog-shell .catalog-card-location{width:100%;font-size:13px!important;line-height:1.6!important;margin:14px 0!important;min-height:0;white-space:normal!important;overflow-wrap:anywhere}
 body.portal-top-navigation .catalog-shell .catalog-card-metrics{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important;padding-top:12px!important;border-top:1px solid #e4edf2!important}
 body.portal-top-navigation .catalog-shell .catalog-card-metric{display:flex!important;justify-content:space-between;align-items:baseline;gap:16px;grid-column:1!important}
 body.portal-top-navigation .catalog-shell .catalog-card-metric small{font-size:11px!important;white-space:normal!important;line-height:1.5;letter-spacing:0!important;text-transform:none!important}
 body.portal-top-navigation .catalog-shell .catalog-card-metric strong{font-size:14px!important;white-space:normal!important;text-align:right;overflow-wrap:anywhere;min-width:0;flex:0 1 auto!important}
 body.portal-top-navigation .catalog-shell .catalog-card-footer{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;margin-top:16px!important;padding-top:14px!important}
 body.portal-top-navigation .catalog-shell .catalog-card-value{font-size:14px!important;white-space:normal!important;line-height:1.6}
 body.portal-top-navigation .catalog-shell .catalog-card-action{display:block!important;min-height:44px;box-sizing:border-box;padding:12px!important;font-size:13px!important;text-align:center;background:#eef5f9!important;color:#214f69!important}
 .estate-fast-row{padding:18px}.estate-fast-row>header{display:block}.estate-fast-row>header .btn{display:block;margin-top:14px;text-align:center;min-height:44px}
 .estate-fast-row dl{grid-template-columns:minmax(0,1fr);gap:12px}.estate-fast-row dl>div{border-bottom:1px solid #edf2f6;padding-bottom:10px}
 .estate-fast-pages,.procurement-pages{justify-content:center}.estate-fast-pages>span,.procurement-pages>span{order:-1;flex-basis:100%;text-align:center}
}
