/* Gallery / moderation beta.6, standalone event and organizer templates only. */
.tzg-grid,.tzg-grid *,.tzg-heading,.tzg-bottom,.tzg-filters{box-sizing:border-box}
.tzm-app.tzm-browsing .tzm-main{max-width:1220px}
.tzm-app.tzm-browsing .tzm-hero{max-width:940px;margin:0 auto;padding-top:38px}
.tzm-app.tzm-browsing .tzm-hero h1{font-size:clamp(35px,4.5vw,58px);letter-spacing:-.035em}
.tzm-app.tzm-browsing .tzm-hero-copy{min-width:0}
.tzm-app.tzm-browsing .tzm-tabs{max-width:740px;margin-left:auto;margin-right:auto;margin-bottom:30px}
.tzm-app.tzm-browsing .tzm-help,.tzm-app.tzm-browsing .tzm-privacy-text{max-width:740px;margin-left:auto;margin-right:auto}
.tzm-app .tzg-heading,.tzmp .tzg-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:28px 0 20px;text-align:left}
.tzm-app .tzg-heading h2,.tzmp .tzg-heading h2{font:400 clamp(27px,3vw,36px)/1.2 Georgia,serif;color:#184e43;letter-spacing:-.02em;margin:0 0 10px}
.tzm-app .tzg-heading p,.tzmp .tzg-heading p{margin:0;color:#53665c;font-size:17px;line-height:1.6}
.tzm-app .tzg-heading .tzg-eyebrow,.tzmp .tzg-heading .tzg-eyebrow{font:700 11px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;letter-spacing:.14em;color:#50675c;margin-bottom:8px}
.tzm-app .tzg-heading-actions,.tzmp .tzg-heading-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;flex-shrink:0}
.tzm-app .tzg-heading-actions .tzm-button{min-height:48px;font-size:16px;padding:10px 15px}
.tzg-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:22px 0;align-items:start}
.tzg-grid .tzg-card{border:1px solid #dce3da;border-radius:16px;background:#fff;overflow:hidden;min-width:0;box-shadow:0 4px 16px #184e4305;text-align:left}
.tzg-grid .tzg-preview{display:block;position:relative;aspect-ratio:4/3;width:100%;padding:0;border:0;background:#eef2e9;color:#184e43;cursor:pointer;text-align:center;overflow:hidden;border-radius:0;font:inherit}
.tzg-grid .tzg-preview img{display:block;width:100%;height:100%;object-fit:cover;margin:0;transition:transform .2s ease}
.tzg-grid .tzg-preview:hover img{transform:scale(1.025)}
.tzg-grid .tzg-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:26px;font:500 17px/1.5 inherit;background:#e8f0ed;color:#184e43}
.tzg-grid .tzg-quote{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;max-height:100%;overflow:hidden;padding:26px 20px;font:21px/1.45 Georgia,serif;white-space:pre-wrap;overflow-wrap:anywhere;background:#f8f2e5;color:#614f31}
.tzg-grid .tzg-type{position:absolute;bottom:10px;left:10px;display:inline-block;background:#fffef4f5;color:#243e32;border:1px solid #ffffff80;border-radius:24px;padding:4px 10px;font:600 12px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
.tzg-grid .tzg-meta{padding:15px 16px}
.tzg-grid .tzg-meta strong{display:block;color:#193d31;font-size:16px;line-height:1.5;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.tzg-grid .tzg-meta>span{display:block;margin-top:5px;color:#52695d;font-size:13px;line-height:1.5}
.tzg-grid .tzg-card:focus-within{outline:2px solid #437362;outline-offset:3px}
.tzg-grid .tzg-preview:focus-visible{outline:3px solid #bb7922;outline-offset:-4px}
.tzm-app .tzg-filters,.tzmp .tzg-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:18px 0 12px}
.tzm-app .tzg-filters button,.tzmp .tzg-filters a{border:1px solid #ccd8ce;color:#184e43;border-radius:26px;background:transparent;font:500 16px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;min-height:46px;padding:10px 18px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.tzm-app .tzg-filters [aria-pressed=true],.tzmp .tzg-filters [aria-current]{background:#184e43;border-color:#184e43;color:#fff}
.tzm-app .tzg-private-note,.tzmp .tzg-private-note{font-size:14px;color:#53665c;margin:0 0 18px;line-height:1.65}
.tzm-app #tzm-gallery-status{font-size:16px;color:#184e43}
.tzg-bottom{margin:24px 0;text-align:center}
.tzg-bottom p{font-size:14px!important;line-height:1.6!important;color:#53665c;max-width:760px;margin:12px auto!important}
.tzmp [hidden]{display:none!important}
.tzmp .tp-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:28px 0 16px}
.tzmp .tp-stat-grid>div{background:#fff;border:1px solid #dce3da;border-radius:14px;padding:20px}
.tzmp .tp-stat-grid strong{display:block;font:400 33px/1.2 Georgia,serif;color:#184e43}
.tzmp .tp-stat-grid span{display:block;font-size:14px;margin-top:7px;color:#52695d}
.tzmp .tp-storage-note{font-size:14px;color:#52695d;margin-bottom:28px}
.tzmp .tp-view-tabs{display:flex;background:#eaf0e8;padding:5px;border-radius:13px;gap:4px;flex-wrap:wrap;margin:20px 0}
.tzmp .tp-view-tabs a{display:flex;align-items:center;justify-content:center;min-height:50px;padding:10px 24px;color:#184e43;text-decoration:none;font-weight:600;flex:1 1 180px;border-radius:10px}
.tzmp .tp-view-tabs [aria-current]{background:#fff;box-shadow:0 2px 6px #184e4310}
.tzmp .tp-gallery-filters{display:flex;align-items:end;justify-content:space-between;gap:18px;flex-wrap:wrap;margin:20px 0}
.tzmp .tp-gallery-filters .tp-filters{margin:0;gap:7px}
.tzmp .tp-gallery-filters .tp-filters a{text-decoration:none;font-size:15px;padding:9px 14px}
.tzmp .tp-kind-form{display:flex;align-items:end;gap:8px;max-width:100%;flex-wrap:wrap}
.tzmp .tp-kind-form label{font-size:13px;color:#52695d}
.tzmp .tp-kind-form select{min-height:46px;padding:9px 12px;width:auto;font-size:15px;margin-top:4px}
.tzmp .tp-kind-form .tp-button{min-height:46px;padding:9px 12px;font-size:15px}
.tzmp .tp-bulkbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:18px;background:#edf3ec;border:1px solid #d3dfd1;border-radius:14px;margin:18px 0}
.tzmp .tp-bulkbar label{font-size:16px}
.tzmp .tp-bulk-actions{display:flex;align-items:end;gap:8px;flex-wrap:wrap}
.tzmp .tp-bulk-actions label{font-size:13px}
.tzmp .tp-bulk-actions select{min-height:46px;font-size:15px;padding:9px}
.tzmp .tp-bulk-actions .tp-button{min-height:46px;padding:9px 16px;font-size:15px}
.tzmp .tp-selection-line{padding:11px 14px;background:#f7faf5;border-bottom:1px solid #dce3da}
.tzmp .tp-selection-line label{display:flex;gap:10px;align-items:center;min-height:30px;font-size:14px}
.tzmp .tp-selection-line input{margin:0}
.tzmp .tzg-status-row{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:11px 14px 0;font-size:12px;color:#52695d}
.tzmp .tzg-state{padding:4px 9px;border-radius:25px;font-size:12px;line-height:1.4;background:#f2ebdc;color:#695328}
.tzmp .tzg-state-approved{background:#e6f1e9;color:#205335}
.tzmp .tzg-state-hidden{background:#edf0f3;color:#475365}
.tzmp .tzg-grid .tzg-meta{padding:11px 14px 14px}
.tzmp .tzg-card-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:12px}
.tzmp .tzg-card-actions button,.tzmp .tzg-card-actions a{font:600 13px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:8px 10px;background:#f4f7f1;color:#184e43;border:1px solid #d5e0d2;border-radius:8px;text-decoration:none;cursor:pointer}
.tzmp .tzg-file-detail{margin-top:10px;color:#52695d;font-size:13px}
.tzmp .tzg-file-detail summary{cursor:pointer;min-height:30px;padding:5px 0}
.tzmp .tzg-file-detail p{font-size:13px;margin:4px 0;overflow-wrap:anywhere}
.tzmp .tp-pagination{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px;margin:26px 0;font-size:15px}
@media(max-width:1050px){.tzg-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.tzm-app .tzg-heading,.tzmp .tzg-heading{align-items:flex-start;flex-direction:column;gap:16px}}
@media(max-width:760px){.tzg-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tzmp .tp-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tzmp .tp-stat-grid>div{padding:16px}.tzmp .tp-gallery-filters{align-items:stretch;flex-direction:column}.tzmp .tp-kind-form{justify-content:space-between}.tzg-grid .tzg-meta{padding:12px}.tzg-grid .tzg-meta strong{font-size:15px}.tzg-grid .tzg-quote{font-size:18px;padding:24px 14px;-webkit-line-clamp:3}.tzm-app .tzg-heading h2,.tzmp .tzg-heading h2{font-size:29px}.tzmp .tp-view-tabs a{padding:10px 16px;flex-basis:110px}.tzmp .tp-bulkbar{padding:14px}.tzmp .tzg-card-actions{gap:6px}.tzmp .tzg-card-actions button,.tzmp .tzg-card-actions a{flex:1 1 auto;padding:8px;font-size:13px}.tzmp .tzg-card-actions [data-tp-hide]{flex-basis:100%}}
@media(max-width:420px){.tzg-grid{gap:10px}.tzg-grid .tzg-preview{aspect-ratio:1}.tzg-grid .tzg-meta>span{font-size:12px}.tzm-app .tzg-heading-actions{width:100%}.tzm-app .tzg-heading-actions .tzm-button{font-size:14px;padding:10px 12px;flex:1 1 auto}.tzm-app .tzg-filters{gap:6px}.tzm-app .tzg-filters button{padding:10px 13px;font-size:15px}.tzg-grid .tzg-quote{font-size:17px;-webkit-line-clamp:3}.tzmp .tzg-grid{grid-template-columns:1fr}.tzmp .tzg-grid .tzg-preview{aspect-ratio:4/3}.tzmp .tp-header nav{font-size:15px}.tzmp .tzg-card-actions [data-tp-hide]{flex-basis:auto}}
@media(prefers-reduced-motion:reduce){.tzg-grid *{animation:none!important;transition:none!important}}
/* Out-of-flow previews prevent intrinsic image dimensions from inflating CSS grid rows. */
.tzg-grid .tzg-preview>img,.tzg-grid .tzg-preview>.tzg-placeholder,.tzg-grid .tzg-preview>.tzg-quote{position:absolute;inset:0;width:100%;height:100%}
.tzmp .tzg-card-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.tzmp .tzg-card-actions button,.tzmp .tzg-card-actions a{width:100%}
