.card.is-previewing .play{opacity:0;transform:scale(.7)}
.video-badge{position:absolute;left:10px;top:10px;padding:6px 9px;border-radius:999px;color:#fff;font-size:10px;font-weight:700;letter-spacing:.02em;backdrop-filter:blur(12px);box-shadow:0 3px 12px #0003}
.video-badge.cached{background:#126d48d9}
.video-badge.archived{background:#222b}
.admin-card{position:relative}
.admin-card .video-badge{font-size:9px}
.stat small{display:block;color:var(--sub);margin-top:4px}
.section-title{justify-content:space-between;margin:35px 0 14px}
.editor{max-width:760px;margin:30px auto}
.bulk-bar{position:sticky;top:10px;z-index:8;display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:16px 0;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(18px);box-shadow:0 10px 30px #00000010}
.bulk-bar strong{margin-right:auto}.select-all{display:flex;align-items:center;gap:7px}.media-check{position:absolute;z-index:4;top:9px;left:9px;width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#1119;border:2px solid #fff;color:#fff;cursor:pointer;box-shadow:0 4px 14px #0004}.media-check input{position:absolute;opacity:0}.media-check span{opacity:0;font-weight:800}.media-check input:checked+span{opacity:1}.selectable-media{cursor:pointer;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.selectable-media.selected{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 24%,transparent);transform:translateY(-2px)}
.gallery-folders{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.gallery-folder>img,.folder-placeholder{height:170px;width:100%;object-fit:cover}.folder-placeholder{display:grid;place-content:center;text-align:center;background:linear-gradient(145deg,#2c2c2c,#111);color:#fff;font:600 34px 'Playfair Display'}.folder-placeholder small{display:block;font:500 11px 'DM Sans';color:#aaa;text-transform:uppercase;letter-spacing:.12em}.gallery-folder .row button{padding:9px 11px}.preview-head{justify-content:space-between;margin-bottom:24px}.preview-head h1{margin:0;font:600 clamp(30px,5vw,54px) 'Playfair Display'}.admin-gallery-preview{margin-top:24px}
button:disabled{opacity:.42;cursor:not-allowed;transform:none!important}
@media(max-width:650px){.bulk-bar{top:6px}.bulk-bar strong{width:100%;order:-1}.preview-head{align-items:flex-start}.gallery-folders{grid-template-columns:1fr}}
.public-shell .top{margin-bottom:18px}.distribution-rail{position:fixed;z-index:9;left:0;top:50%;translate:0 -50%;writing-mode:vertical-rl;transform:rotate(180deg);padding:17px 10px;border:1px solid var(--line);border-left:0;border-radius:0 14px 14px 0;background:color-mix(in srgb,var(--card) 92%,transparent);color:var(--ink);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;backdrop-filter:blur(18px);box-shadow:6px 0 24px #00000014}.distribution-rail:hover{padding-left:13px;background:var(--card)}
.contact-overlay{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:20px;background:#0b0b0bbb;backdrop-filter:blur(14px);animation:modalIn .22s ease}.contact-card{width:min(420px,100%);padding:32px;border:1px solid #ffffff28;border-radius:24px;background:var(--bg);color:var(--ink);box-shadow:0 28px 90px #0008;text-align:center}.contact-card .brand{font-size:26px;margin-bottom:32px}.contact-card h2{margin:0 0 8px;font:600 42px 'Playfair Display'}.contact-card p{color:var(--sub);margin:0 0 24px}.contact-card .primary{min-width:110px}
@media(max-width:650px){.distribution-rail{padding:14px 8px;font-size:9px}.public-shell{padding-left:28px}.public-shell .top{align-items:flex-start}.public-shell .brand{max-width:220px;line-height:1.05}}
.distribution-rail{transform:none}.distribution-rail::before{content:'📅';font-size:15px;margin-bottom:8px;letter-spacing:0}.archive-date{display:flex!important;align-items:flex-start;gap:5px}
.contact-card-wide{position:relative;width:min(760px,100%);max-height:min(880px,92vh);overflow:auto;text-align:left;padding:34px}.contact-card-wide .brand{text-align:center;margin-bottom:22px}.contact-card-wide h2{text-align:center}.contact-lead{max-width:620px;margin:10px auto!important;color:var(--ink)!important;font-size:17px;line-height:1.6;text-align:center}.contact-bio{max-width:650px;margin:0 auto 24px!important;color:var(--sub)!important;line-height:1.7;text-align:center}.contact-details{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0}.contact-details a{display:flex;flex-direction:column;gap:5px;padding:14px;border:1px solid var(--line);border-radius:14px;text-decoration:none;background:var(--card);transition:transform .2s ease,border-color .2s ease}.contact-details a:hover{transform:translateY(-2px);border-color:var(--accent)}.contact-details span{color:var(--sub);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.contact-details strong{font-size:14px}.contact-map{display:block;width:100%;height:280px;border:0;border-radius:16px;background:#ddd}.contact-x{position:absolute;right:16px;top:16px;width:40px;height:40px;border-radius:50%;background:var(--card);border:1px solid var(--line);font-size:24px;color:var(--ink)}
@media(max-width:650px){.contact-card-wide{padding:28px 18px 18px}.contact-card-wide h2{font-size:36px}.contact-details{grid-template-columns:1fr}.contact-map{height:230px}}
.site-backdrop{position:fixed;inset:0;z-index:8;background:#08080899;backdrop-filter:blur(3px);animation:modalIn .2s ease}
.gallery-bulk{top:8px}.admin-gallery-preview{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.admin-gallery-preview .admin-card>img,.admin-gallery-preview .admin-card>.preview-video{width:100%;height:190px;object-fit:cover;display:block}.admin-gallery-preview .admin-card{overflow:hidden}
@media(max-width:650px){.admin-gallery-preview{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-gallery-preview .admin-card>img,.admin-gallery-preview .admin-card>.preview-video{height:145px}.gallery-bulk button{flex:1}}
