.product-media-section{padding:54px 0;border-top:1px solid var(--line,#d4d9ce)}
.product-media-section [hidden]{display:none!important}
.media-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:40px;margin-bottom:26px}
.media-heading h2{font-family:var(--serif,Georgia,serif);font-size:clamp(28px,3vw,40px);line-height:1.2;margin:10px 0 0;font-weight:400}
.media-heading>p{max-width:48ch;color:#647064;line-height:1.8;margin:0}
.view-stage{position:relative;background:#f0f0e9;border:1px solid #d4d9ce;border-radius:5px;min-height:320px;overflow:hidden}
#open-product-view{display:block;width:100%;padding:22px;border:0;cursor:zoom-in;background:transparent}
#view-image{width:100%;height:440px;object-fit:contain;display:block}
.view-caption{padding:12px 22px;margin:0;border-top:1px solid #d4d9ce;color:#4d5b4b;font-size:13px;letter-spacing:.025em}
.view-pending{min-height:485px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#697666}
.view-placeholder-icon{font-family:Georgia,serif;font-size:32px;font-weight:400;color:#99a390}
.view-tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-top:16px}
.view-tabs button{display:flex;min-width:0;flex-direction:column;align-items:center;gap:7px;padding:12px 6px;border:1px solid #d4d9ce;border-radius:4px;background:transparent;color:#354831;font:inherit;cursor:pointer}
.view-tabs button[aria-selected=true]{border-color:#344638;box-shadow:inset 0 0 0 1px #344638;background:#edf0e6}
.view-tabs img,.view-tabs .view-placeholder-icon{width:100%;height:84px;object-fit:contain;display:flex;align-items:center;justify-content:center}
.view-state{font-size:11px;color:#717d6b}
.product-view-dialog{width:min(1060px,calc(100% - 28px));max-height:94dvh;padding:18px;border:1px solid #d4d9ce;border-radius:6px;background:#f7f7f0;color:#344638}
.product-view-dialog::backdrop{background:rgba(20,31,22,.8)}
.view-dialog-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-bottom:16px}
.view-dialog-toolbar h2{font:inherit;margin:0;line-height:1.4}
.view-dialog-toolbar button{border:1px solid #bac3b4;background:transparent;border-radius:4px;padding:9px 14px;font:inherit;cursor:pointer;white-space:nowrap}
#view-dialog-image{width:100%;height:min(74dvh,780px);object-fit:contain;display:block}
.video-stage{background:#eceee5;border:1px solid #d4d9ce;border-radius:5px;overflow:hidden;min-height:280px}
#product-video-player{display:block;width:100%;max-height:560px;background:#15221a;object-fit:contain;aspect-ratio:16/9}
.video-empty{min-height:280px;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:24px;text-align:center;color:#667360}
.video-empty>span{font-size:46px;color:#879580;margin-bottom:10px}
.video-empty p{margin:4px 0;font-size:14px;line-height:1.65}
.video-empty p:first-of-type{font-size:19px;color:#40543a}
#video-playback-status,#media-load-status,#media-upload-status{font-size:14px;line-height:1.65;color:#52664b}
.media-management{margin-top:30px;border-top:1px solid #d4d9ce;border-bottom:1px solid #d4d9ce;padding:18px 0}
.media-management>summary{cursor:pointer;font-size:14px;letter-spacing:.03em;color:#53694b}
.media-management p{font-size:14px;line-height:1.8;max-width:90ch}
.media-management a:not(.button){display:inline-block;margin-top:14px;font-size:13px}
.media-upload-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:24px;margin-top:20px}
.media-upload-form{display:flex;flex-direction:column;gap:12px;padding:24px;border:1px solid #d4d9ce;background:#f1f3e9;border-radius:5px;min-width:0}
.media-upload-form h3{font:inherit;font-size:20px;margin:0}
.media-upload-form p{margin:0}
.media-upload-form label{font-size:13px;color:#52634a;margin-top:6px}
.media-upload-form input,.media-upload-form select{width:100%;min-width:0;padding:12px;background:#fafaf5;border:1px solid #bec8b4;border-radius:3px;font:inherit;font-size:16px;color:#344638}
.media-upload-form input[type=file]{font-size:14px;padding:10px}
.media-upload-form input::file-selector-button{font:inherit;border:1px solid #b5c1aa;background:#e5ebdc;padding:8px;margin-right:8px;border-radius:3px;cursor:pointer}
.media-upload-form button{margin-top:auto;min-height:48px}
.media-upload-form button:disabled{opacity:.55;cursor:wait}
#video-preview-player{width:100%;max-height:280px;display:block;background:#15221a;margin-top:10px}
#media-upload-progress{width:100%;height:12px;margin-top:20px;accent-color:#344638}
.product-media-section :focus-visible{outline:3px solid #7a9766;outline-offset:4px}
@media(max-width:820px){.media-heading{grid-template-columns:1fr;gap:16px}.media-heading>p{max-width:none}#view-image{height:390px}}
@media(max-width:600px){.product-media-section{padding:36px 0}.view-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.view-tabs img,.view-tabs .view-placeholder-icon{height:68px}#open-product-view{padding:12px}#view-image{height:310px}.view-pending{min-height:355px}.view-caption{padding:12px;font-size:12px}.video-stage,.video-empty{min-height:220px}.media-upload-form{padding:18px}.view-dialog-toolbar h2{font-size:13px}}
@media print{.product-media-section{display:none!important}}
