.gallery-contribute-section{padding-bottom:24px}
.gallery-member-signin,.gallery-member-tools,.gallery-review-section .container{border:1px solid var(--line);border-radius:16px;background:linear-gradient(145deg,rgba(12,18,22,.96),rgba(6,9,11,.99));box-shadow:var(--shadow)}
.gallery-member-signin{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 26px}
.gallery-member-signin h2,.gallery-contribution-head h2,.gallery-review-head h2{margin:0;text-transform:uppercase;letter-spacing:-.025em}
.gallery-member-signin p:not(.eyebrow),.gallery-contribution-head p:not(.eyebrow),.gallery-review-head p:not(.eyebrow){margin:8px 0 0;color:var(--muted);line-height:1.6}
.gallery-member-tools{padding:24px}
.gallery-contribution-head,.gallery-review-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:20px}
.gallery-quota-card{min-width:150px;border:1px solid var(--line-accent);border-radius:12px;padding:12px 14px;background:rgba(34,211,238,.045);text-align:right}
.gallery-quota-card span,.gallery-quota-card small{display:block;color:var(--muted);font-size:.64rem;text-transform:uppercase;letter-spacing:.08em}
.gallery-quota-card strong{display:block;margin:3px 0;font-size:1.35rem;color:var(--accent)}
.gallery-contribution-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:16px}
.gallery-submit-card,.gallery-my-submissions{border:1px solid var(--line);border-radius:13px;background:#090d10;padding:17px}
.gallery-submit-card{display:grid;gap:14px}
.gallery-submit-card label{display:grid;gap:6px}.gallery-submit-card label>span,.gallery-submit-tags legend{color:#dfe9ed;font-size:.7rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.gallery-submit-card input[type="text"],.gallery-submit-card textarea,.gallery-review-card input[type="text"],.gallery-review-card textarea{width:100%;border:1px solid var(--line);border-radius:9px;background:#070a0c;color:var(--text);padding:10px 11px;font:inherit}
.gallery-submit-card input:focus,.gallery-submit-card textarea:focus,.gallery-review-card input:focus,.gallery-review-card textarea:focus{outline:none;border-color:var(--accent)}
.gallery-submit-tags{margin:0;padding:0;border:0}.gallery-submit-tags legend small{margin-left:6px;color:var(--muted);font-weight:700;text-transform:none;letter-spacing:0}
.gallery-tag-picker{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}
.gallery-tag-option{display:inline-flex!important;align-items:center;gap:6px!important;border:1px solid var(--line);border-radius:999px;padding:7px 9px;background:#0b1013;cursor:pointer;color:var(--muted)!important;font-size:.64rem!important;font-weight:800!important;text-transform:uppercase;letter-spacing:.05em!important}
.gallery-tag-option:has(input:checked){border-color:var(--accent);background:rgba(34,211,238,.1);color:#e8fbff!important}.gallery-tag-option input{accent-color:var(--accent)}
.gallery-tag-option.is-disabled{opacity:.42}
.gallery-upload-drop{display:grid;place-items:center;min-height:230px;border:1px dashed rgba(34,211,238,.45);border-radius:12px;overflow:hidden;background:rgba(34,211,238,.025);cursor:pointer;transition:.15s ease}
.gallery-upload-drop:hover,.gallery-upload-drop:focus-visible,.gallery-upload-drop.is-dragover{outline:none;border-color:var(--accent);background:rgba(34,211,238,.07)}
.gallery-upload-drop.is-busy{cursor:progress;opacity:.72}
.gallery-upload-empty{display:grid;gap:7px;padding:28px;text-align:center}.gallery-upload-empty strong{font-size:.95rem}.gallery-upload-empty span{color:var(--muted);font-size:.72rem}
.gallery-upload-preview{position:relative;width:100%;background:#030506}.gallery-upload-preview img{display:block;width:100%;max-height:350px;aspect-ratio:16/9;object-fit:contain}.gallery-upload-preview span{position:absolute;left:10px;bottom:10px;max-width:calc(100% - 20px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:5px 9px;background:rgba(0,0,0,.76);font-size:.64rem}
.gallery-submit-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.gallery-submit-actions>[data-gallery-submit-status]{margin-left:auto;color:var(--muted);font-size:.68rem}.gallery-submit-actions>[data-gallery-submit-status].error{color:var(--warning)}
.gallery-panel-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:11px;margin-bottom:10px}.gallery-panel-head span{display:block;color:var(--muted);font-size:.62rem;text-transform:uppercase;letter-spacing:.08em}.gallery-panel-head strong{display:block;margin-top:2px}
.gallery-my-list{display:grid;gap:8px}.gallery-my-item{display:grid;grid-template-columns:72px minmax(0,1fr);gap:10px;padding:8px;border:1px solid var(--line);border-radius:10px;background:#070a0c}.gallery-my-thumb{width:72px;height:52px;object-fit:cover;border-radius:7px;background:#020304}.gallery-my-placeholder{display:grid;place-items:center;width:72px;height:52px;border-radius:7px;background:#0b1013;color:var(--muted);font-size:.6rem}.gallery-my-item strong{display:block;font-size:.74rem}.gallery-my-item small{display:block;color:var(--muted);font-size:.62rem;line-height:1.4;margin-top:2px}.gallery-status{display:inline-flex!important;width:max-content;margin-top:5px;border:1px solid var(--line);border-radius:999px;padding:3px 6px;font-size:.56rem!important;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.gallery-status.pending{color:#ffd36a}.gallery-status.approved{color:#79e8b1}.gallery-status.rejected{color:#ff8b8b}.gallery-status.removed{color:#ffb36a}
.gallery-review-section{padding-top:0}.gallery-review-section .container{padding:24px}.gallery-review-head>[data-gallery-pending-count]{border:1px solid var(--line-accent);border-radius:999px;padding:7px 10px;color:var(--accent);font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.gallery-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.gallery-review-empty{grid-column:1/-1;padding:24px;border:1px dashed var(--line);border-radius:12px;color:var(--muted);text-align:center}
.gallery-review-card{overflow:hidden;border:1px solid var(--line);border-radius:13px;background:#080c0f}.gallery-review-card>img{display:block;width:100%;height:auto;max-height:420px;object-fit:contain;background:#020304}.gallery-review-body{display:grid;gap:10px;padding:14px}.gallery-review-meta{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:.62rem}.gallery-review-fields{display:grid;gap:9px}.gallery-review-fields label{display:grid;gap:5px}.gallery-review-fields label>span{font-size:.62rem;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.06em}.gallery-review-actions{display:flex;gap:8px;align-items:center}.gallery-review-actions .btn{flex:1}.gallery-review-status{color:var(--muted);font-size:.64rem}.gallery-review-status.error{color:var(--warning)}
.gallery-lightbox-copy [data-lightbox-credit]{display:block;margin-top:8px;color:var(--accent);font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}
@media(max-width:900px){.gallery-contribution-layout{grid-template-columns:1fr}.gallery-review-grid{grid-template-columns:1fr}}
@media(max-width:650px){.gallery-member-signin,.gallery-contribution-head,.gallery-review-head{align-items:stretch;flex-direction:column}.gallery-member-signin .btn{width:100%}.gallery-member-tools,.gallery-review-section .container{padding:16px}.gallery-quota-card{text-align:left}.gallery-upload-drop{min-height:180px}.gallery-submit-actions{display:grid;grid-template-columns:1fr 1fr}.gallery-submit-actions .btn{width:100%}.gallery-submit-actions>[data-gallery-submit-status]{grid-column:1/-1;margin-left:0}.gallery-review-actions{display:grid;grid-template-columns:1fr 1fr}}

.gallery-admin-section{padding-top:0}
.gallery-admin-section .container{border:1px solid rgba(255,179,106,.2);border-radius:16px;padding:24px;background:linear-gradient(145deg,rgba(22,15,10,.94),rgba(7,9,11,.99));box-shadow:var(--shadow)}
.gallery-admin-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:20px}
.gallery-admin-head h2{margin:0;text-transform:uppercase;letter-spacing:-.025em}
.gallery-admin-head p:not(.eyebrow){margin:8px 0 0;color:var(--muted);line-height:1.6}
.gallery-admin-head>[data-gallery-admin-count]{border:1px solid rgba(255,179,106,.35);border-radius:999px;padding:7px 10px;color:#ffb36a;font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.gallery-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.gallery-admin-card{overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#080c0f}
.gallery-admin-card>img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#020304}
.gallery-admin-body{display:grid;gap:10px;padding:12px}
.gallery-admin-body>div:first-child strong{display:block;font-size:.8rem}
.gallery-admin-body>div:first-child span{display:block;margin-top:3px;color:var(--muted);font-size:.62rem}
.gallery-admin-tags{display:flex;flex-wrap:wrap;gap:5px}
.gallery-admin-tags span{border:1px solid var(--line);border-radius:999px;padding:3px 6px;color:var(--muted);font-size:.55rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.gallery-admin-body label{display:grid;gap:5px}
.gallery-admin-body label>span{color:var(--muted);font-size:.6rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.gallery-admin-body textarea{width:100%;border:1px solid var(--line);border-radius:8px;background:#070a0c;color:var(--text);padding:9px 10px;font:inherit}
.gallery-admin-body textarea:focus{outline:none;border-color:#ffb36a}
@media(max-width:1000px){.gallery-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.gallery-admin-section .container{padding:16px}.gallery-admin-head{align-items:stretch;flex-direction:column}.gallery-admin-grid{grid-template-columns:1fr}}
