.gem-public-search{--gem-public-bg:#fff;--gem-public-panel-bg:#fff;--gem-public-card-bg:#fff;--gem-public-text:#111827;--gem-public-muted:#5f6f89;--gem-public-accent:#071c9c;--gem-public-border:#d9e1ee;--gem-public-hover:#f5f7ff;--gem-public-font:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--gem-public-base-size:15px;--gem-public-title-size:20px;--gem-public-card-radius:10px;--gem-public-filter-radius:10px;--gem-public-card-gap:20px;--gem-public-section-gap:24px;--gem-public-card-padding:16px;--gem-public-filter-padding:20px;--gem-public-border-width:1px;--gem-public-shadow:0 8px 24px rgba(15,23,42,.06);position:relative;width:100%;padding:24px 0;background:var(--gem-public-bg);color:var(--gem-public-text);font-family:var(--gem-public-font);font-size:var(--gem-public-base-size);line-height:1.45;box-sizing:border-box}.gem-public-search *{box-sizing:border-box}.gem-public-shell{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:var(--gem-public-section-gap);align-items:start}.gem-public-search.gem-filters-top .gem-public-shell{grid-template-columns:1fr}.gem-public-search.gem-filters-none .gem-public-shell{grid-template-columns:1fr}.gem-public-search.gem-filters-top .gem-public-filters{position:static}.gem-public-search.gem-filters-top .gem-public-filter-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.gem-public-search.gem-filters-top .gem-public-filter-group{margin:0}.gem-public-search.gem-filters-top .gem-public-filter-group select{width:100%;min-height:42px;border:var(--gem-public-border-width) solid var(--gem-public-border);border-radius:8px;background:var(--gem-public-card-bg);color:var(--gem-public-text);padding:8px 10px}.gem-public-filters{position:sticky;top:24px;padding:var(--gem-public-filter-padding);border:var(--gem-public-border-width) solid var(--gem-public-border);border-radius:var(--gem-public-filter-radius);background:var(--gem-public-panel-bg);box-shadow:var(--gem-public-shadow)}.gem-public-filters-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.gem-public-filters-head h2{margin:0;color:var(--gem-public-text);font:800 1em/1.2 var(--gem-public-font)}.gem-public-filter-close{display:none;border:0;background:transparent;color:var(--gem-public-text);font-size:28px;cursor:pointer}.gem-public-filter-group{margin-bottom:26px}.gem-public-filter-group h3{margin:0 0 13px;color:var(--gem-public-muted);font:800 .78em/1.2 var(--gem-public-font);text-transform:uppercase;letter-spacing:.04em}.gem-public-filter-group select{width:100%;min-height:42px;border:var(--gem-public-border-width) solid var(--gem-public-border);border-radius:8px;background:var(--gem-public-card-bg);color:var(--gem-public-text);font:inherit;padding:8px 10px}.gem-public-filter-options{display:flex;flex-direction:column;gap:9px;max-height:260px;overflow:auto;padding-right:3px}.gem-public-filter-option{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;color:var(--gem-public-text);cursor:pointer}.gem-public-filter-option input{width:15px;height:15px;margin:0;accent-color:var(--gem-public-accent)}.gem-public-filter-option span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gem-public-filter-option small{color:var(--gem-public-muted);font-size:.8em}.gem-public-filter-empty{margin:0;color:var(--gem-public-muted);font-size:.85em}.gem-public-clear{width:100%;min-height:38px;border:var(--gem-public-border-width) solid var(--gem-public-border);border-radius:8px;background:transparent;color:var(--gem-public-muted);font:600 .88em var(--gem-public-font);cursor:pointer}.gem-public-clear:hover,.gem-public-clear.is-active{border-color:var(--gem-public-accent);color:var(--gem-public-accent);background:var(--gem-public-hover)}.gem-public-clear:disabled{opacity:.55;cursor:not-allowed}.gem-public-results-area{min-width:0}.gem-public-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.gem-public-toolbar-left{display:flex;align-items:center;gap:14px;min-width:0}.gem-public-count{margin:0;color:var(--gem-public-muted);font-weight:700;white-space:nowrap}.gem-public-search-field input,.gem-public-sort select{min-height:42px;border:var(--gem-public-border-width) solid var(--gem-public-border);border-radius:8px;background:var(--gem-public-card-bg);color:var(--gem-public-text);font:inherit;padding:8px 11px}.gem-public-search-field input{min-width:220px}.gem-public-sort{display:flex;align-items:center;gap:9px;color:var(--gem-public-muted);font-size:.86em;font-weight:700}.gem-public-cards{display:grid;grid-template-columns:repeat(var(--gem-public-columns,3),minmax(0,1fr));gap:var(--gem-public-card-gap)}.gem-public-search.gem-layout-list .gem-public-cards,.gem-public-search.gem-layout-compact .gem-public-cards{grid-template-columns:1fr}.gem-public-card{display:block;overflow:hidden;border:var(--gem-public-border-width) solid var(--gem-public-border);border-radius:var(--gem-public-card-radius);background:var(--gem-public-card-bg);color:var(--gem-public-text);text-decoration:none!important;box-shadow:var(--gem-public-shadow);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background .22s ease}.gem-public-card:hover{transform:translateY(-3px);border-color:var(--gem-public-accent);background:var(--gem-public-hover);color:var(--gem-public-text);box-shadow:0 16px 36px rgba(15,23,42,.12)}.gem-public-card-body{padding:var(--gem-public-card-padding)}.gem-public-card-meta{display:flex;flex-wrap:wrap;gap:7px 12px;margin-bottom:9px;color:var(--gem-public-muted);font-size:.76em}.gem-public-card-meta span{min-width:0}.gem-public-card-meta strong{color:var(--gem-public-accent)}.gem-public-card h3{margin:0;color:var(--gem-public-text);font:800 var(--gem-public-title-size)/1.18 var(--gem-public-font)}.gem-public-search.gem-layout-list .gem-public-card{display:block}.gem-public-search.gem-layout-list .gem-public-card-body{display:flex;flex-direction:column;justify-content:center}.gem-public-search.gem-layout-compact .gem-public-card-body{display:grid;grid-template-columns:minmax(180px,.55fr) minmax(0,1fr);align-items:center;gap:16px}.gem-public-search.gem-layout-compact .gem-public-card-meta{margin:0;order:2}.gem-public-status{padding:26px;border:var(--gem-public-border-width) dashed var(--gem-public-border);border-radius:var(--gem-public-card-radius);background:var(--gem-public-panel-bg);color:var(--gem-public-muted);text-align:center}.gem-public-status[hidden]{display:none}.gem-public-status.is-error{border-color:#e5a39c;background:#fff4f2;color:#9f2d24}.gem-public-pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:24px}.gem-public-pagination button{min-height:38px;padding:7px 14px;border:var(--gem-public-border-width) solid var(--gem-public-border);border-radius:8px;background:var(--gem-public-card-bg);color:var(--gem-public-text);font:700 .88em var(--gem-public-font);cursor:pointer}.gem-public-pagination button:hover:not(:disabled){border-color:var(--gem-public-accent);color:var(--gem-public-accent);background:var(--gem-public-hover)}.gem-public-pagination button:disabled{opacity:.45;cursor:not-allowed}.gem-public-page-summary{color:var(--gem-public-muted);font-weight:700}.gem-public-mobile-bar{display:none;margin-bottom:12px}.gem-public-filter-toggle{min-height:42px;padding:8px 14px;border:var(--gem-public-border-width) solid var(--gem-public-border);border-radius:8px;background:var(--gem-public-panel-bg);color:var(--gem-public-text);font:700 .9em var(--gem-public-font);cursor:pointer}.gem-public-overlay{position:fixed;z-index:99998;inset:0;background:rgba(15,23,42,.48)}.gem-public-skeleton{border-radius:8px;background:linear-gradient(90deg,var(--gem-public-hover),var(--gem-public-bg),var(--gem-public-hover));background-size:200% 100%;animation:gemPublicShimmer 1.2s linear infinite}.gem-public-skeleton-filter{height:62px;margin-bottom:12px}.gem-public-notice{padding:14px;border:1px solid #e4b9b4;border-radius:8px;background:#fff5f3;color:#9f2d24}@keyframes gemPublicShimmer{to{background-position:-200% 0}}@media(max-width:1100px){.gem-public-cards{grid-template-columns:repeat(min(2,var(--gem-public-columns,2)),minmax(0,1fr))}.gem-public-shell{grid-template-columns:220px minmax(0,1fr)}}@media(max-width:760px){.gem-public-search{padding:12px 0}.gem-public-mobile-bar{display:block}.gem-public-shell{display:block}.gem-public-filters{position:fixed;z-index:99999;top:0;left:0;bottom:0;width:min(88vw,360px);overflow:auto;border-radius:0;transform:translateX(-105%);transition:transform .25s ease}.gem-public-search.filters-open .gem-public-filters{transform:translateX(0)}.gem-public-filter-close{display:block}.gem-public-toolbar{align-items:stretch;flex-direction:column}.gem-public-toolbar-left{align-items:stretch;flex-direction:column}.gem-public-search-field input{width:100%;min-width:0}.gem-public-sort{justify-content:space-between}.gem-public-sort select{flex:1}.gem-public-cards{grid-template-columns:1fr}.gem-public-search.gem-layout-compact .gem-public-card-body{grid-template-columns:1fr}.gem-public-search.gem-filters-top .gem-public-filters{position:fixed}.gem-public-search.gem-filters-top .gem-public-filter-fields{display:block}.gem-public-search.gem-filters-top .gem-public-filter-group{margin-bottom:18px}}

.gem-public-filter-close{padding:4px 8px;border:var(--gem-public-border-width) solid var(--gem-public-border);border-radius:7px;background:transparent;color:var(--gem-public-muted);font:700 .78em/1 var(--gem-public-font)}
.gem-public-card h3 a{color:inherit;text-decoration:none!important}
.gem-public-card h3 a:hover,.gem-public-card h3 a:focus{color:var(--gem-public-accent);text-decoration:underline!important}
.gem-public-card-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.gem-public-detail-button{min-height:38px;padding:8px 13px;border:var(--gem-public-border-width) solid var(--gem-public-accent);border-radius:8px;background:transparent;color:var(--gem-public-accent);font:700 .86em var(--gem-public-font);cursor:pointer}
.gem-public-detail-button:hover,.gem-public-detail-button:focus{background:var(--gem-public-accent);color:#fff}
body.gem-public-detail-open{overflow:hidden}
.gem-public-detail-modal[hidden]{display:none}
.gem-public-detail-modal{position:fixed;z-index:100000;inset:0;display:flex;align-items:center;justify-content:center;padding:24px}
.gem-public-detail-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.58)}
.gem-public-detail-panel{position:relative;z-index:1;width:min(1120px,96vw);max-height:92vh;overflow:auto;border:var(--gem-public-border-width) solid var(--gem-public-border);border-radius:var(--gem-public-card-radius);background:var(--gem-public-card-bg);color:var(--gem-public-text);box-shadow:0 24px 80px rgba(15,23,42,.28)}
.gem-public-detail-header{position:sticky;z-index:2;top:0;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:20px 24px;border-bottom:var(--gem-public-border-width) solid var(--gem-public-border);background:var(--gem-public-card-bg)}
.gem-public-detail-header p{margin:0 0 5px;color:var(--gem-public-muted);font-size:.78em;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.gem-public-detail-header h2{margin:0;color:var(--gem-public-text);font:800 clamp(1.25rem,2vw,1.8rem)/1.2 var(--gem-public-font)}
.gem-public-detail-close{min-height:38px;padding:8px 13px;border:var(--gem-public-border-width) solid var(--gem-public-border);border-radius:8px;background:transparent;color:var(--gem-public-text);font:700 .86em var(--gem-public-font);cursor:pointer}
.gem-public-detail-close:hover,.gem-public-detail-close:focus{border-color:var(--gem-public-accent);color:var(--gem-public-accent);background:var(--gem-public-hover)}
.gem-public-detail-content{display:grid;gap:22px;padding:24px}
.gem-public-detail-section{padding:18px;border:var(--gem-public-border-width) solid var(--gem-public-border);border-radius:calc(var(--gem-public-card-radius) * .8);background:var(--gem-public-panel-bg)}
.gem-public-detail-section h3{margin:0 0 14px;color:var(--gem-public-accent);font:800 1em/1.2 var(--gem-public-font)}
.gem-public-detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;margin:0}
.gem-public-detail-list>div{display:grid;grid-template-columns:minmax(145px,.45fr) minmax(0,1fr);gap:12px;padding:10px 0;border-bottom:1px solid var(--gem-public-border)}
.gem-public-detail-list>div:nth-last-child(-n+2){border-bottom:0}
.gem-public-detail-list dt{margin:0;color:var(--gem-public-muted);font-weight:700}
.gem-public-detail-list dd{min-width:0;margin:0;color:var(--gem-public-text);overflow-wrap:anywhere}
@media(max-width:760px){.gem-public-detail-modal{padding:0}.gem-public-detail-panel{width:100%;height:100%;max-height:none;border:0;border-radius:0}.gem-public-detail-header{padding:16px}.gem-public-detail-content{padding:16px}.gem-public-detail-list{grid-template-columns:1fr}.gem-public-detail-list>div{grid-template-columns:1fr;gap:4px}.gem-public-detail-list>div:nth-last-child(-n+2){border-bottom:1px solid var(--gem-public-border)}.gem-public-detail-list>div:last-child{border-bottom:0}}

/* Layout: tabla simple. */
.gem-public-search.gem-layout-table .gem-public-toolbar{align-items:stretch;flex-wrap:wrap}
.gem-public-search.gem-layout-table .gem-public-toolbar-left{flex:1 1 520px;align-items:stretch}
.gem-public-search.gem-layout-table .gem-public-search-field{display:block;flex:1 1 auto}
.gem-public-search.gem-layout-table .gem-public-search-field input{width:100%;min-width:0}
.gem-public-search.gem-layout-table .gem-public-cards{display:block}
.gem-public-table-wrap{width:100%;overflow-x:auto;border:var(--gem-public-border-width) solid var(--gem-public-border);border-radius:var(--gem-public-card-radius);background:var(--gem-public-card-bg);box-shadow:var(--gem-public-shadow);-webkit-overflow-scrolling:touch}
.gem-public-table{width:100%;min-width:760px;border-collapse:collapse;border-spacing:0;background:var(--gem-public-card-bg);color:var(--gem-public-text);font:inherit}
.gem-public-table th,.gem-public-table td{padding:14px 15px;border-right:var(--gem-public-border-width) solid var(--gem-public-border);border-bottom:var(--gem-public-border-width) solid var(--gem-public-border);text-align:left;vertical-align:top;overflow-wrap:anywhere}
.gem-public-table th:last-child,.gem-public-table td:last-child{border-right:0}
.gem-public-table tbody tr:last-child td{border-bottom:0}
.gem-public-table thead th{background:var(--gem-public-panel-bg);color:var(--gem-public-muted);font-size:.82em;font-weight:800;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap}
.gem-public-table tbody tr{transition:background .18s ease}
.gem-public-table tbody tr:hover{background:var(--gem-public-hover)}
.gem-public-table td a{color:var(--gem-public-accent);font-weight:700;text-decoration:none!important}
.gem-public-table td a:hover,.gem-public-table td a:focus{text-decoration:underline!important}
.gem-public-table td.is-empty{color:var(--gem-public-muted)}
.gem-public-table-actions-head,.gem-public-table-actions{width:1%;white-space:nowrap}
.gem-public-table-detail-button{min-height:34px;padding:6px 10px;font-size:.78em;white-space:nowrap}
@media(max-width:760px){.gem-public-search.gem-layout-table .gem-public-toolbar-left{flex-basis:100%}.gem-public-search.gem-layout-table .gem-public-sort{width:100%}.gem-public-table{min-width:680px}.gem-public-table th,.gem-public-table td{padding:11px 12px}}

/* v3.6.1: every selected summary field remains visible, even without a value. */
.gem-public-card-meta > span.is-empty {
	opacity: .78;
}

/* 3.8.0: table column widths remain usable on narrow screens. */
.gem-public-table th,
.gem-public-table td {
    box-sizing: border-box;
}
