/* Portfolio editor extends the existing administrative components. */
.portfolio-filters{display:flex;gap:16px;align-items:end;flex-wrap:wrap;margin:20px 0}.portfolio-filters .field{flex:1;min-width:180px}.portfolio-row{display:flex;gap:20px;align-items:center}.portfolio-row-copy{flex:1;min-width:0}.portfolio-row h2{font-size:20px;margin:0 0 8px}.portfolio-url{overflow-wrap:anywhere}.portfolio-thumb{width:110px;height:85px;object-fit:cover;border-radius:8px}.portfolio-move{display:flex;gap:6px;align-items:center}.portfolio-list .portfolio-move{flex-direction:column}.portfolio-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.portfolio-photo img{width:100%;height:180px;object-fit:contain;background:#f1f2f1}.portfolio-photo{min-width:0}.portfolio-photo .portfolio-move{flex-wrap:wrap}.portfolio-sticky{position:sticky;bottom:8px;z-index:3;background:#fff;border:1px solid #d9ddda;padding:12px;border-radius:8px;box-shadow:0 2px 10px #0001;flex-wrap:wrap}.portfolio-sticky p{flex-basis:100%;margin:0}.portfolio-dropzone{padding:18px;border:2px dashed #bdc5bf;border-radius:10px}.portfolio-dropzone.is-dragover{background:#e9f4ee}.portfolio-search-preview{background:#f3f5f4;padding:16px;overflow-wrap:anywhere}.portfolio-search-preview strong{color:#294577}.portfolio-search-preview p{margin:8px 0}.portfolio-pagination{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.portfolio-pagination a[aria-current]{font-weight:bold;text-decoration:underline}.portfolio-upload-row{display:grid;grid-template-columns:60px minmax(0,1fr);gap:12px;padding:12px 0;border-bottom:1px solid #d8dfd9;overflow-wrap:anywhere}.portfolio-upload-row img{width:60px;height:60px;object-fit:cover}.portfolio-upload-row progress{width:100%}.portfolio-help summary{cursor:pointer}.portfolio-help ol{padding-left:24px}.portfolio-help li{margin:8px 0}.portfolio-error{color:#9f2525}.portfolio-success{color:#17623d}.portfolio-project,.portfolio-managed{max-width:1280px;margin:40px auto;padding:0 24px}.portfolio-project h1{font-size:clamp(30px,4vw,56px);line-height:1.15;margin:32px 0 20px}.portfolio-project p,.portfolio-project dd,.portfolio-project dt{font-size:18px;line-height:1.6}.portfolio-project nav{font-size:15px;overflow-wrap:anywhere}.portfolio-body{max-width:900px}.portfolio-body p{text-align:left}.portfolio-facts{display:flex;flex-wrap:wrap;gap:24px;margin:28px 0}.portfolio-facts dt{font-weight:bold}.portfolio-facts dd{margin:0}.portfolio-gallery,.portfolio-public-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.portfolio-gallery figure{margin:0;min-width:0}.portfolio-gallery img,.portfolio-public-grid img{width:100%;height:auto;display:block}.portfolio-gallery figcaption{text-align:left;font-size:16px;padding:8px 0}.portfolio-public-grid h3{font-size:24px}.portfolio-public-grid p{text-align:left}.portfolio-related{margin:30px 0}.portfolio-related a{display:block;margin:12px 0}.portfolio-preview-label{background:#fff5ca;padding:12px}.portfolio-lightbox{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;border:0;padding:16px;background:#151916;color:#fff;box-sizing:border-box}.portfolio-lightbox[open]{display:flex;flex-direction:column;align-items:center;gap:12px}.portfolio-lightbox img{max-width:100%;width:auto;height:auto;min-height:0;object-fit:contain;flex:1;max-height:75dvh}.portfolio-lightbox>div{display:flex;align-items:center;gap:20px}.portfolio-lightbox button{background:white;color:#18241c;border:0;padding:12px 18px;border-radius:4px;min-height:44px}.portfolio-lightbox p{margin:0}.portfolio-lightbox [data-pf-close]{align-self:flex-end}.portfolio-lightbox::backdrop{background:#151916}.portfolio-project :focus-visible,.portfolio-lightbox :focus-visible{outline:3px solid #c7a65f;outline-offset:3px}
@media(max-width:900px){.portfolio-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-row{flex-wrap:wrap}.portfolio-row>.button{margin-left:auto}}
@media(max-width:550px){.portfolio-photo-grid,.portfolio-gallery,.portfolio-public-grid{grid-template-columns:minmax(0,1fr)}.portfolio-row{gap:12px}.portfolio-thumb{width:70px;height:70px}.portfolio-row h2{font-size:18px}.portfolio-row>.button{width:100%}.portfolio-project,.portfolio-managed{padding:0 16px;margin:24px auto}.portfolio-filters .field{min-width:100%}.portfolio-sticky{position:static}.portfolio-sticky .button{flex:1;min-width:130px}.portfolio-lightbox>div{gap:10px}.portfolio-lightbox button{padding:10px}.portfolio-photo .portfolio-move a{flex-basis:100%}}
@media print{.sidebar,.workspace-header,.portfolio-sticky,button{display:none!important}.workspace{padding:0}.portfolio-help{display:block}.portfolio-help>ol{display:block!important}}

@media(max-width:760px){.portfolio-admin .sidebar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;padding:12px 16px}.portfolio-admin .sidebar .brand{margin:0;font-size:23px;line-height:1}.portfolio-admin .sidebar .brand span{margin-top:4px;font-size:7px}.portfolio-admin .sidebar>nav{display:none}.portfolio-admin .mobile-admin-menu{display:block;position:relative}.portfolio-admin .mobile-admin-menu summary{display:flex;gap:6px;border:1px solid #c7d9cc;border-radius:8px;background:#eef5ef;color:#145e46;padding:9px 11px;font-size:13px;font-weight:700;cursor:pointer;list-style:none}.portfolio-admin .mobile-admin-menu nav{position:absolute;right:0;top:calc(100% + 6px);z-index:30;display:grid;gap:2px;width:min(280px,calc(100vw - 32px));max-height:70vh;overflow:auto;background:#fff;border:1px solid #c7d9cc;border-radius:10px;padding:8px;box-shadow:0 12px 28px #173c2b24}.portfolio-admin .mobile-admin-menu .nav-link{white-space:normal;margin:0;padding:9px 11px}.portfolio-admin .sidebar-bottom{grid-column:1/-1;margin:0;padding:5px 0 0;font-size:12px}}

/* Card actions share status endpoints; forms remain outside the reorder form. */
.portfolio-card-actions{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:flex-end;gap:8px;max-width:340px}.portfolio-card-actions form{display:contents}.portfolio-card-actions [data-pf-message-for]{flex-basis:100%;margin:0}.portfolio-card-actions [data-pf-message-for]:empty{display:none}.portfolio-card-delete{max-width:100%}.portfolio-card-delete>summary{cursor:pointer}.portfolio-card-delete>div{padding:12px 0;font-size:13px}.portfolio-card-delete .check{align-items:flex-start}.portfolio-card-delete:focus-within{outline-offset:3px}@media(max-width:760px){.portfolio-card-actions{justify-content:flex-start;max-width:100%;width:100%}.portfolio-card-actions>.button{white-space:normal}.portfolio-card-delete[open]{width:100%}}

/* Both live catalogs use stable, non-destructive 4:3 thumbnails. */
.portfolio-public-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.portfolio-managed{max-width:none;padding:0;margin:32px 0}
.portfolio-public-grid>article{min-width:0;display:flex;flex-direction:column;margin:0}
.portfolio-public-grid>article>a{display:block;color:inherit;text-decoration:none}
.portfolio-public-grid img{display:block!important;width:100%!important;height:auto!important;aspect-ratio:4/3!important;object-fit:cover!important;background:#f4f1eb}
.portfolio-public-grid h3{font-size:21px;line-height:1.3;margin:16px 0 8px;text-align:left}
.portfolio-public-grid p{margin:0;line-height:1.5;font-size:16px}
.portfolio-photo.is-cover{border:2px solid #a37c29;background:#fff9e9}
.portfolio-focus-preview{width:100%;max-width:480px;aspect-ratio:4/3;overflow:hidden;background:#f4f1eb}
.portfolio-focus-preview img{width:100%;height:100%;object-fit:contain}
@media(max-width:1050px){.portfolio-public-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.portfolio-public-grid{grid-template-columns:minmax(0,1fr)}}

.portfolio-gallery img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
