/* Homepage layout and page-specific presentation. Shared components live in style.css. */
:root{color-scheme:dark}
*{box-sizing:border-box}
body{margin:0;background:#111111;color:#f5f3ef;font-family:Arial,Helvetica,sans-serif;min-height:100vh;display:flex;flex-direction:column;font-size:15px}
a{color:inherit;text-decoration:none}
a:hover{color:#f06438}
input,select,textarea{font:inherit}
button,a,input,select,textarea{touch-action:manipulation}
header{display:flex;align-items:center;justify-content:space-between;padding:1.9rem max(clamp(1rem,4.4vw,4.4rem),calc((100% - 100rem)/2 + clamp(1rem,4.4vw,4.4rem)));gap:20px;background:transparent}
.brand>svg{width:58px;height:58px}

nav{display:flex;align-items:center;gap:28px}
header nav{flex-shrink:0}
header nav a{font-size:17px;font-weight:400}
header nav a,header nav button{white-space:nowrap;display:flex;align-items:center;gap:12px}
svg{width:24px;height:24px;flex-shrink:0}
header nav svg{width:26px;height:26px}
main{flex:1;width:100%;max-width:100rem;margin:0 auto;padding:0 clamp(1rem,4.4vw,4.4rem) 3rem}
.hero{text-align:center;margin:24px 0 28px}
.hero>p{font-size:20px;color:#c5b3a0;margin:0}

.upload-symbol{display:block;width:80px;height:80px;object-fit:contain;margin:0 auto}
.upload-prompt{color:#c5b3a0;font-size:17px;line-height:1.5;margin:20px 0 24px}
.practical{text-align:center;color:#c5b3a0;font-size:14px;margin:22px 0;line-height:1.6}
footer{padding:1.5rem max(clamp(1rem,4.4vw,4.4rem),calc((100% - 100rem)/2 + clamp(1rem,4.4vw,4.4rem)));font-size:.8rem;line-height:1.5;background:transparent;color:#b5afa9}
.footer-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.8rem 2rem}
footer nav{flex-wrap:wrap;gap:.5rem 1.2rem}
footer nav a{display:inline-flex;align-items:center;gap:.4rem;white-space:nowrap;min-height:2.5rem}
footer a:hover{color:inherit}
.footer-explore svg{width:1.1rem;height:1.1rem}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.6rem 1.5rem;margin-top:.7rem;border-top:1px solid #ffffff15;padding-top:.7rem}
.footer-copyright,.footer-statistics{font-size:.8rem;line-height:1.5}
.footer-statistics{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.2rem .6rem}
.footer-statistics span{white-space:nowrap}
.footer-statistics span+span:before{content:"·";margin-right:.6rem}
.footer-social{gap:.5rem}
.footer-social a{justify-content:center;min-width:2.5rem}
.footer-social svg{width:1.3rem;height:1.3rem}
.text{border:0;background:none;color:inherit;padding:5px 0}
.prose{max-width:680px;margin:55px auto;line-height:1.65}
.prose h1{font-size:40px;letter-spacing:-1px;line-height:1.15}
.prose h2{font-size:22px;margin-top:34px}
.prose p{color:#c5b3a0}
.prose a{text-decoration:underline;text-underline-offset:3px}
.auth{max-width:440px}
form label{display:block;margin:18px 0;font-size:15px}
input,textarea,select{display:block;width:100%;background:#191919;border:1px solid #454545;border-radius:7px;padding:12px;color:#f5f3ef;margin-top:7px}
textarea{resize:vertical}
.muted{color:#c5b3a0;font-size:14px}
.form-error,.error{color:color-mix(in srgb,#f06438 80%,#fff)}
.form-error:empty{display:none}
.notice{border-left:3px solid #f3a039;padding:12px 16px;background:#1b1b1b}
.honeypot,.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.honeypot{left:-10000px}
.toolbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:16px 0 24px}
.small-button,.danger{display:inline-flex;align-items:center;justify-content:center}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:24px}
.unavailable{font-size:14px;padding:15px;text-align:center}
.icon{display:inline-flex;align-items:center;justify-content:center}
.flag-1 svg,.flag-2 svg{fill:currentColor}
.empty{text-align:center;padding:70px 10px}
.empty h1{font-size:32px}

.admin-filters{gap:5px;flex-wrap:wrap}

.admin-pagination{margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;font-size:12px;color:#c5b3a0}
.image-count{white-space:nowrap}
.per-page,.jump-page{display:flex;align-items:center;gap:2px}
.per-page label,.jump-page label{display:flex;align-items:center;gap:5px;white-space:nowrap;margin:0;font-size:12px}
.admin-pagination input{width:50px;min-width:0;height:30px;margin:0;padding:4px 5px;border-radius:5px;font-size:12px;text-align:center;appearance:textfield}
.admin-pagination input::-webkit-inner-spin-button{appearance:none}
.page-links{gap:3px;flex-wrap:wrap;justify-content:flex-end}
.page-button{display:inline-flex;align-items:center;justify-content:center}
.page-button svg{width:18px;height:18px}
.page-button.disabled{pointer-events:none}
.page-ellipsis{padding:0 2px}
.mini svg{width:16px;height:16px}
aside{padding:18px;background:color-mix(in srgb,#f3a039 4.3%,transparent);border:1px solid color-mix(in srgb,#f3a039 33.3%,transparent);border-radius:9px;margin:24px 0}
aside p{font-size:14px;color:#c5b3a0}


.viewer{max-width:1200px;margin:30px auto}
.viewer>img{display:block;max-width:100%;max-height:78vh;object-fit:contain;margin:auto}
.viewerbar{display:flex;justify-content:flex-end;gap:15px;margin-top:24px;color:#c5b3a0;font-size:14px}
dialog{padding:0;background:#141414;border:1px solid #176dd8;border-radius:10px;max-width:95vw;max-height:95vh}
dialog::backdrop{background:#000c}
dialog img{display:block;max-width:92vw;max-height:85vh;object-fit:contain}
.close{position:absolute;right:8px;top:8px;background:#191919dd;color:white}
.clipboard-helper{position:fixed;left:-10000px}
.upload-dock{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:35;text-align:center;max-width:calc(100vw - 32px)}
.add-images{white-space:nowrap}
.upload-dock.expanded{width:580px}
.upload-dock.expanded .add-images{margin-top:10px}
#upload-panel{position:relative;max-height:75vh;overflow:auto;border-radius:12px;background:transparent;box-shadow:0 8px 40px #0008}
.compact-dropzone #upload-state{margin-top:16px}
.compact-dropzone #upload-status{font-size:13px;margin-bottom:0;white-space:pre-line}
#gallery-more{min-height:2px;text-align:center;margin-top:24px;color:#c5b3a0;font-size:14px}
progress{width:min(550px,90%);height:10px;accent-color:#f3a039}
#upload-state{margin-top:24px}
#upload-status{font-size:16px;color:#c5b3a0}
[hidden]{display:none!important}
@media(min-width:1400px){.admin-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:700px){header{padding-block:1.4rem}
.brand{font-size:29px;gap:8px;letter-spacing:-1px}
.brand>svg{width:40px;height:40px}
header nav{gap:12px}
header nav a{font-size:15px}
header nav a,header nav button{gap:10px}
header nav svg{width:24px;height:24px}
header:has(nav>:nth-child(2)) .brand{font-size:24px}
header:has(nav>:nth-child(2)) .brand>svg{width:34px;height:34px}
main{padding-bottom:2.3rem}
.hero{margin:22px 0 26px}
.hero h1{letter-spacing:-1px}
.hero>p{font-size:17px}
.dropzone{padding:26px 15px}
.upload-prompt{font-size:15px;margin:18px 0 22px}
.upload-symbol{width:70px;height:70px}
.practical{font-size:12px}
footer{padding-block:1.2rem}
.footer-row{flex-direction:column;gap:.5rem}
footer nav{justify-content:center;gap:.3rem 1rem}
.footer-bottom{justify-content:center;column-gap:1rem}
.footer-statistics{order:0;flex-basis:auto;justify-content:center}
.prose{margin:32px auto}
.prose h1{font-size:32px}
.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.toolbar{gap:10px}

.admin-pagination{width:100%;gap:10px}
.viewerbar{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
.selection-tools{display:flex;align-items:center;gap:4px;white-space:nowrap}
.utility{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}
.utility svg{width:17px;height:17px}
.delete-selection:enabled{color:color-mix(in srgb,#f06438 80%,#fff)}
[data-selection-count]:not(:empty){font-size:11px;padding:2px 5px;border-radius:4px;background:color-mix(in srgb,color-mix(in srgb,#f06438 80%,#fff) 11%,transparent)}
.admin-link{display:flex;align-items:center;gap:0;margin-left:auto;height:2rem;border:0;border-radius:7px;background:transparent}
.admin-link>#copy-edit{height:2rem;padding:.3rem .6rem;color:#f5f3ef}


#edit-info{position:absolute;right:0;top:calc(100% + 10px);width:270px;max-width:calc(100vw - 32px);padding:13px 15px;border:1px solid #176dd8;border-radius:8px;background:#1b1b1b;color:#c5b3a0;font-size:13px;line-height:1.5;box-shadow:0 8px 25px #0006;z-index:40;visibility:hidden;opacity:0}

.upload-close{z-index:2;width:32px;height:32px;padding:7px}
.upload-close svg{width:18px;height:18px}
body:has(.upload-dock) footer{padding-bottom:90px}
#toast{position:fixed;bottom:76px;left:50%;transform:translateX(-50%);padding:13px 22px;border-radius:8px;background:#f3a039;color:#111111;font-size:15px;z-index:70;display:none;max-width:90vw}
@media(max-width:700px){.brand>img{max-width:132px;max-height:36.8px}
header:has(nav>:nth-child(2)) .brand>img{max-width:112px;max-height:33.6px}
.selection-tools{gap:2px}
.utility svg{width:16px;height:16px}



.compact-dropzone{padding:38px 18px}
.upload-dock{bottom:16px}}
body:has(main>.hero){background:radial-gradient(ellipse at 50% 58%,color-mix(in srgb,#f3a039 7.1%,transparent) 0%,color-mix(in srgb,#f3a039 2.0%,transparent) 45%,transparent 78%),#111111}
main:has(>.hero){display:flex;flex-direction:column;justify-content:center;padding-top:4rem;padding-bottom:96px}
main:has(>.hero)>.hero{margin:0 0 54px}
main:has(>.hero)>.dropzone{width:100%;margin:0 auto}
main:has(>.hero)>.practical{margin:24px 0 0}
@media(max-width:700px){main:has(>.hero){padding-top:2.5rem;padding-bottom:68px}
main:has(>.hero)>.hero{margin-bottom:38px}}
.video-mark{position:absolute;bottom:12px;left:12px;display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:#141414d9;color:#fff;pointer-events:none}
.video-mark svg{width:20px;height:20px}
.viewer video{display:block;width:100%;max-height:78vh;object-fit:contain;background:#000}
#lightbox{position:fixed;width:min(1100px,96vw);max-width:96vw;max-height:95dvh;overflow:hidden}
.lightbox-bar{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:7px 8px;background:transparent;min-height:54px}
#lightbox-tools a{color:#f5f3ef}
#lightbox-tools svg{width:20px;height:20px}
#lightbox-tools .flag-1{color:#f3a039}
#lightbox-tools .flag-2{color:#f06438}
#lightbox .close{position:static;flex-shrink:0;width:36px;height:36px;padding:8px;background:#1b1b1b}
.lightbox-media{position:relative;display:flex;align-items:flex-start;justify-content:center;min-height:120px;padding-bottom:54px;background:transparent}
#lightbox img,#lightbox video{width:auto;max-width:100%;max-height:calc(95dvh - 110px);object-fit:contain;margin:0 auto}
#lightbox video{display:block;width:100%;max-height:85vh;background:transparent}
.lightbox-prev,.lightbox-next{position:absolute;top:50%;transform:translateY(-50%);z-index:2}
.lightbox-prev{left:8px}
.lightbox-next{right:8px}
.lightbox-prev svg,.lightbox-next svg{width:24px;height:24px}
.brand{display:flex;align-items:center;gap:14px;font-size:44px;font-weight:750;letter-spacing:-1.8px;flex-shrink:0}
.brand>img{display:block;width:15rem;height:auto;max-width:240px;max-height:60.8px;object-fit:contain;transition:opacity .2s}
.brand:hover>img{opacity:.88}
.admin-filters .active:not(.flag){color:#f5f3ef}
[data-content-scanner] .toolbar{gap:8px}
[data-content-scanner] progress{width:100%}
[data-content-scanner] .small-button,[data-content-scanner] .utility{text-decoration:none}
.scan-command{display:flex;align-items:center;gap:8px}
.scan-command input{min-width:0;flex:1;font-family:monospace;font-size:12px}
.scan-command .icon{flex:none}
#upload-queue{list-style:none;margin:12px auto 0;padding:0;max-width:660px;max-height:280px;overflow:auto;text-align:left}
.upload-file{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;padding:10px 0;border-top:1px solid #ffffff15;font-size:13px}
.upload-file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f5f3ef}
.upload-file-status{color:#c5b3a0;text-align:right;max-width:350px;overflow-wrap:anywhere}
.upload-file[data-state=error] .upload-file-status{color:color-mix(in srgb,#f06438 80%,#fff)}
.upload-file[data-state=done] .upload-file-status{color:#f3a039}
.upload-file progress{grid-column:1/-1;width:100%;height:6px}
.upload-actions{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:14px}
.upload-actions .small-button{text-decoration:none}
.filter-count{font-size:11px;color:#c5b3a0;font-variant-numeric:tabular-nums}

@media(max-width:700px),(hover:none) and (pointer:coarse){.upload-file{grid-template-columns:minmax(0,1fr);gap:4px;font-size:12px}
.upload-file-status{text-align:left;max-width:none}


#lightbox-tools{gap:2px}
.lightbox-media{touch-action:pan-y pinch-zoom}
}
@media(max-width:600px){.admin-grid{grid-template-columns:minmax(0,1fr)}}
[data-open-upload]{margin-left:auto}
.undo-notice{position:fixed;top:1rem;bottom:auto;left:50%;transform:translateX(-50%);z-index:120;display:flex;align-items:center;gap:20px;max-width:calc(100% - 32px);padding:14px 16px 14px 20px;border:1px solid color-mix(in srgb,#f3a039 50.2%,transparent);border-radius:10px;background:#29252a;color:#fff;box-shadow:0 8px 32px #0008;font-size:15px}
.undo-action svg{width:23px;height:23px}
@media(max-width:600px){
.undo-notice{top:1rem;bottom:auto;gap:12px;padding:12px;font-size:13px}
}
body,body:has(main>.hero){background:radial-gradient(ellipse at 50% 58%,color-mix(in srgb,#176dd8 16%,transparent) 0%,color-mix(in srgb,#176dd8 7%,transparent) 45%,transparent 78%),#111111;background-attachment:fixed;isolation:isolate;position:relative}
[data-scan-stop]{background:#f06438;border-color:#f06438;color:#fff}
[data-scan-stop]:hover{background:color-mix(in srgb,#f06438 80%,#fff);border-color:color-mix(in srgb,#f06438 80%,#fff);color:#fff}
.undo-action{display:inline-flex;align-items:center;justify-content:center;flex:none}
@media(prefers-reduced-motion:reduce){body,body:has(main>.hero){animation:none}}
.selection-slash{display:none}
#lightbox::backdrop{background:rgba(0,0,0,.72)}
.section-body{padding-top:4px}
.upload-target-line{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;margin:16px 0 0;font-size:14px}
.upload-target-line label{margin:0;font-weight:400}
.upload-target-line select{width:auto;min-width:150px;max-width:270px;margin:0;padding:7px 10px;font-size:14px}
.upload-new-album{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:12px}
.upload-new-album input{width:210px;margin:0;padding:8px 10px;font-size:14px}
.upload-new-album [data-upload-cancel]{color:#f5f3ef;background:rgba(255,255,255,.05);border:1px solid #ffffff15;border-radius:7px}
.upload-target-line[hidden],.upload-new-album[hidden]{display:none}
.upload-open{overflow:hidden}
#lightbox.lightbox-fullscreen{inset:0;width:100vw;max-width:none;height:100vh;max-height:none;padding:0;border:0;border-radius:0;overflow:hidden}
#lightbox.lightbox-fullscreen .lightbox-bar{position:fixed;top:0;right:0;z-index:4;min-height:0;padding:12px;background:transparent}
#lightbox.lightbox-fullscreen #lightbox-tools{display:none}
#lightbox.lightbox-fullscreen .lightbox-media{width:100vw;height:100vh;min-height:0;padding:0;align-items:center;background:#111111}
#lightbox.lightbox-fullscreen img{width:100vw;height:100vh;max-width:none;max-height:none;object-fit:contain;cursor:zoom-out}
#lightbox.lightbox-fullscreen .lightbox-prev,#lightbox.lightbox-fullscreen .lightbox-next{display:none}
.dropzone{max-width:1160px;margin:auto;text-align:center;border:1.5px dashed #176dd8;border-radius:19px;background:transparent;padding:32px 20px;transition:background .2s,border-color .2s;display:flex;flex-direction:column;align-items:center;gap:2rem;padding-block:3rem}
.dropzone .upload-symbol,.dropzone .upload-prompt,.dropzone .upload-target-line,.dropzone #upload-state{margin-top:0;margin-bottom:0}
.dropzone .primary{margin-top:0;margin-bottom:0}
.dropzone .upload-target-line,.dropzone #upload-state{width:100%}
.compact-dropzone{border-radius:12px;padding:44px 24px;background:transparent;gap:2rem}
.compact-dropzone .upload-symbol{width:70px;height:70px;margin-bottom:24px;margin-inline:auto}
.compact-dropzone .upload-new-album{margin-top:0}
h1,h2,h3,h4,h5,h6{font-family:Montserrat,Arial,Helvetica,sans-serif}
.hero h1{font-size:clamp(2rem,3.4vw,2.75rem);letter-spacing:-1.5px;margin:0 0 10px;line-height:1.15}
.how-link{display:block;align-self:center;margin-top:1rem;color:#f3a039;font-size:.9rem;text-decoration:none;text-align:center}
.how-link:hover{color:color-mix(in srgb,#f3a039 80%,#fff);text-decoration:none}
.how-section+.how-section{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #ffffff14}
.how-section h3{margin:0 0 .6rem;font-size:0.9rem;font-weight:600;font-family:Arial,Helvetica,sans-serif}
.how-section p{margin:.6rem 0 0;font-size:0.9rem;line-height:1.6;color:#c5b3a0;font-family:Arial,Helvetica,sans-serif}
.form-success{font-size:.9rem;line-height:1.6}
@media(max-width:480px){header:has(a[href*="p=account"]){flex-wrap:wrap}
header:has(a[href*="p=account"]) nav{margin-left:auto}}
[data-gallery-pagination]{scroll-margin-top:4rem}











.moderator .admin-filters .filter-count{color:inherit;font-size:.7rem}






.moderator:not(.managed-page) .admin-pagination{gap:.7rem;color:#7c7c7c;font-size:.8rem}
.moderator:not(.managed-page) .admin-pagination :is(.per-page,.jump-page,.per-page label,.jump-page label){gap:.4rem;font-size:.8rem}
.moderator:not(.managed-page) .admin-pagination input{width:3rem;height:2rem;padding:.3rem;border:1px solid #ffffff15;border-radius:.4rem;background:#1b1b1b;color:#f5f3ef;font-size:.8rem}
.moderator:not(.managed-page) .admin-pagination .page-links{gap:.4rem}
.moderator:not(.managed-page) .admin-pagination :is(.page-button,.mini) svg{width:1.2rem;height:1.2rem}
header nav .header-auth,header nav .header-auth:hover,header nav .header-auth:active{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-width:2rem;height:2rem;padding:.3rem .6rem;border:1px solid #ffffff15;border-radius:.4rem;background:#1b1b1b;color:#f5f3ef;box-shadow:none;text-decoration:none;transform:none;transition:none}
header nav .header-auth svg{width:1.4rem;height:1.4rem}

@media(max-width:30rem){header{flex-wrap:wrap}
header nav{margin-left:auto;max-width:100%;flex-wrap:wrap;justify-content:flex-end}}
@media(max-width:37.5rem){
.moderator:not(.managed-page) .admin-pagination{justify-content:center}
.moderator:not(.managed-page) .admin-pagination .page-links{justify-content:center;gap:.2rem}
.moderator:not(.managed-page) .admin-pagination input{height:2rem}
.moderator:not(.managed-page) .admin-pagination .page-ellipsis{padding:0}}
.lightbox-counter{margin-right:auto;flex:none;color:#c5b3a0;font-family:Montserrat,Arial,sans-serif;font-size:.8rem;white-space:nowrap}
#lightbox.lightbox-fullscreen .lightbox-counter{display:none}
.batch-selection{display:flex;align-items:center;gap:.5rem;flex:none}
.bulk-select{display:flex;align-items:center;gap:.5rem;margin:0;cursor:pointer;font-size:.8rem;white-space:nowrap}
.bulk-select .mixed-mark{display:none}
.bulk-select:has(input:indeterminate) .mixed-mark{display:block}
.batch-label-mobile{display:none!important}
.filter-marker{display:flex;align-items:center;justify-content:center;color:#c5b3a0;flex:none}
.filter-marker svg{width:1.4rem;height:1.4rem}
@media(max-width:700px){
.bulk-select-label,.batch-label-desktop{display:none!important}}
.auth-open{overflow:hidden}
.auth-dialog{width:min(26rem,calc(100vw - 2rem));padding:2rem;max-height:calc(100dvh - 2rem)}
.auth-dialog h2{font-family:Montserrat,Arial,sans-serif;font-size:1.3rem}
.auth-dialog form{display:grid;gap:1.1rem}
.auth-dialog label{display:block;margin:0;font-size:0.9rem}
.auth-dialog input{display:block;width:100%;margin:.5rem 0 0;padding:.7rem .8rem}
.auth-dialog .form-error{margin:0;font-size:.9rem;line-height:1.5}
.auth-dialog .form-error:empty{display:none}
.auth-dialog .primary svg,.auth form[data-form="login"] .primary svg{width:1.2rem;height:1.2rem;vertical-align:middle}
.auth-links{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin:1.2rem 0 0;font-size:.9rem}
.auth-links a,.auth-links a:hover,.auth-links a:active{color:#f3a039}
.auth-dialog>.close,.auth-dialog>.close:hover,.auth-dialog>.close:active{background:#1b1b1b;color:#f5f3ef;border:1px solid #ffffff15;transform:none;transition:none}
@media(max-width:30rem){.auth-dialog{padding:2rem 1.2rem 1.5rem}}
.thumbnail-controls{display:flex;align-items:center;gap:.4rem;margin-left:auto;flex:none}
.thumbnail-size,.thumbnail-size:hover,.thumbnail-size:active{display:inline-flex;align-items:center;justify-content:center;transform:none;filter:none}
.thumbnail-size svg{width:1.4rem;height:1.4rem}

@media(max-width:700px){
.thumbnail-controls{gap:.3rem}}
.heart-button,.heart-count,.owner-heart,.lightbox-heart,.shared-image-heart{display:none!important}
#lightbox-tools{padding:0;font-size:14px;text-align:left;display:flex;align-items:center;gap:.4rem;min-width:0;overflow-x:auto;scrollbar-width:none}
#lightbox-tools::-webkit-scrollbar{display:none}
#lightbox-tools>button,#lightbox-tools>a{flex:none}
.admin-link-popover{position:absolute;top:calc(100% + .5rem);right:0;width:min(22rem,calc(100vw - 2rem));height:auto;padding:1rem;background:radial-gradient(ellipse at 50% 58%,color-mix(in srgb,#176dd8 16%,transparent) 0%,color-mix(in srgb,#176dd8 7%,transparent) 45%,transparent 78%),#111111;border:1px solid #ffffff15;border-radius:.5rem;box-shadow:0 .5rem 1.5rem #0008;z-index:60}
.admin-link-popover[hidden],.admin-link-popover [hidden]{display:none}
.admin-link-popover p{margin:0;line-height:1.5;font-size:.8rem}
.admin-link-popover [data-edit-copy-status]:empty{display:none}
.admin-link-popover [data-edit-copy-status]{margin-bottom:.6rem;color:#f3a039;font-weight:600;font-size:.9rem}
.admin-link-popover [data-edit-copy-status].error{color:#f06438}
.admin-link-popover label{display:block;margin:0;font-size:.8rem}
.admin-link-popover input{margin:.4rem 0 .8rem;padding:.6rem;font-size:.8rem;background:#0004;border-color:#ffffff15;color:#f5f3ef}
.claim-open{overflow:hidden}
.claim-dialog{width:min(32rem,calc(100vw - 2rem))}
.claim-dialog p{font-size:.9rem;line-height:1.5;margin:0 0 1.2rem}
.claim-dialog [hidden]{display:none}
.claim-dialog form label{margin:0 0 .5rem;font-size:.9rem}
.claim-link-row{display:flex;align-items:stretch;gap:.6rem;margin-bottom:1.2rem}
.claim-link-row input{min-width:0;flex:1;margin:0;padding:.7rem;background:#0004;border-color:#ffffff15;font-size:.9rem}
.claim-link-row button{display:flex;align-items:center;justify-content:center;flex:none}
.claim-link-row svg{width:1.5rem;height:1.5rem}
.claim-dialog .form-error{margin-top:1rem;margin-bottom:0}
@media(max-width:700px){
.admin-link-popover{width:min(18rem,calc(100vw - 2rem))}}
#toast.control-feedback{bottom:auto;transform:none;max-width:min(22rem,calc(100vw - 1.5rem));pointer-events:none}
.undo-notice>span{min-width:0;overflow-wrap:anywhere}
.admin-star.active svg,.admin-star-filter.active svg,.admin-star-action[aria-pressed="true"] svg{fill:currentColor}
.moderator .admin-filters .admin-star-filter.active{color:#f3a039}
.admin-batch-dialog{width:min(36rem,calc(100vw - 2rem));max-height:85svh;overflow:auto}
.admin-batch-dialog .admin-batch-counts{font-weight:700;color:#f5f3ef}
.admin-batch-names{padding-left:1.2rem;max-height:12rem;overflow:auto;font-size:.9rem;overflow-wrap:anywhere}
.admin-batch-actions{display:flex;justify-content:flex-end;gap:.7rem;margin-top:1.5rem}

.admin-batch-actions .toolbar-button{display:inline-flex;align-items:center;justify-content:center}



.admin-table-select{display:grid;place-items:center;position:relative;width:1.6rem;height:1.6rem;margin:0;border:1px solid #f3a039;border-radius:.3rem;background:#1b1b1b;cursor:pointer}
.admin-table-select input{appearance:none;position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;border:0;background:transparent;cursor:pointer}
.admin-table-select span{display:flex;visibility:hidden;pointer-events:none;color:#111}
.admin-table-select svg{width:1.1rem;height:1.1rem}
.admin-table-select:has(input:checked),.admin-table-select:has(input:indeterminate){background:#f3a039}
.admin-table-select input:checked+span,.admin-table-select input:indeterminate+span{visibility:visible}
.admin-table-select:has(input:disabled){opacity:.4;cursor:default}
.moderation-table .moderation-select-column{width:3rem;padding-inline:.7rem}
.header-studio{position:relative}
.header-studio-beta{position:absolute;right:-.5rem;top:-.6rem;font-size:.5rem;line-height:1;font-weight:600;letter-spacing:.05rem;color:#fff;pointer-events:none}
html.studio-touch-device .header-studio,html.studio-touch-device [data-open-studio]{display:none!important}
@media(hover:none) and (pointer:coarse){.header-studio,[data-open-studio]{display:none!important}}
body:has(main>.hero) main>#dropzone{border-color:#ffffff15}
body:has(main>.hero) main>#dropzone.over{border-color:#505050}
.file-type-filter{min-height:2rem;height:2rem;width:auto;max-width:12rem;margin:0;padding:.3rem .6rem;background:#1b1b1b;border:1px solid #ffffff15;color:#f5f3ef;font-size:.9rem}
@media(max-width:43.8rem){.file-type-filter{max-width:7rem;font-size:.8rem}}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 58%,#f0643821 0%,#f064380e 45%,transparent 78%),#111111;opacity:0;animation:ambient-fade 24s linear infinite}
@keyframes ambient-fade{0%,100%{opacity:0}
50%{opacity:1}}
@media(prefers-reduced-motion:reduce){body::before{animation:none}}
