:root{color-scheme:light;--paper:#f6f5f1;--ink:#292925;--muted:#85857c;--line:#deded5;--gap:12px;font-family:Arial,Helvetica,sans-serif;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-size:14px;line-height:1.5}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,.button{cursor:pointer}button:disabled{cursor:wait;opacity:.5}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--ink);outline-offset:5px}button{color:inherit}h1,h2,p{margin:0}h1,h2{font-size:14px;font-weight:400}.site-header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 32px}.site-header h1{font-size:16px;letter-spacing:-.5px}.quiet-link{font-size:12px;color:var(--muted)}.quiet-link:hover{color:var(--ink)}.subtle{color:var(--muted)}
.gallery-page main{padding:0 12px 36px}.wall{position:relative;width:100%}.wall-item{position:absolute;display:block;margin:0;padding:0;border:0;background:#e8e7e0;overflow:hidden;text-align:left;cursor:zoom-in}.wall-item img{width:100%;height:auto;display:block}.wall-item:focus-visible{outline-offset:3px}.gallery-status{text-align:center;color:var(--muted);padding:25px 0}.gallery-status.empty{padding:25vh 0;font-size:13px}.load-wrap{text-align:center;padding:28px 0}.text-button{border:0;background:none;padding:10px 12px;color:var(--muted);font-size:12px}.text-button:hover{color:var(--ink)}
.viewer{padding:0;margin:auto;border:0;background:transparent;width:100vw;height:100dvh;max-width:100vw;max-height:100dvh;color:#eee;overflow:hidden}.viewer::backdrop{background:rgba(13,13,12,.97)}.viewer-image-wrap{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:52px 70px}.viewer img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.viewer-status,.viewer-image-wrap p{position:absolute;bottom:18px;font-size:12px;color:#aaa}.viewer-close,.viewer-nav{position:absolute;z-index:2;border:0;background:none;color:#ddd;font-size:32px;font-weight:300;width:50px;height:50px}.viewer-close{right:14px;top:12px}.viewer-nav{top:calc(50% - 25px)}.viewer-nav.prev{left:10px}.viewer-nav.next{right:10px}.viewer button:focus-visible{outline-color:#ccc}.viewer-nav:disabled{opacity:.2;cursor:default}body:has(.viewer[open]){overflow:hidden}
.admin-main{max-width:880px;margin:10px auto 0;padding:0 24px 32px}.dropzone{border:1px dashed #c5c5b9;min-height:290px;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:30px 18px;text-align:center;transition:background .15s}.dropzone.dragover{background:#e9e8e0;border-color:var(--ink)}.upload-mark{font-size:32px;font-weight:200;color:var(--muted);margin-bottom:10px}.dropzone h2{font-size:18px;letter-spacing:-.5px}.dropzone p{color:var(--muted);margin-top:8px;font-size:13px}.dropzone .fine{font-size:11px;margin-top:16px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 20px;border:1px solid #bbbbae;background:transparent;color:var(--ink);border-radius:2px;text-align:center}.select-button{margin-top:24px}.primary{background:var(--ink);color:var(--paper);border-color:var(--ink)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.dropzone:focus-within{outline:2px solid var(--ink);outline-offset:4px}.message{font-size:12px;color:var(--muted);min-height:18px;margin:16px 0}.message.error,.item-status.error{color:#a23a30}.queue,.collection{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.queue-card,.entry-card{min-width:0;border:1px solid var(--line);padding:10px;background:#faf9f6}.card-preview{height:190px;display:flex;justify-content:center;align-items:center;background:#eeede7}.card-preview img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.filename{font-size:11px;margin-top:10px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;color:var(--muted)}.card-heading{display:flex;gap:6px;align-items:center;justify-content:space-between}.icon-button{border:0;background:transparent;padding:6px 8px;font-size:20px;color:var(--muted)}details{font-size:12px;margin:8px 0}summary{cursor:pointer;color:var(--muted);padding:6px 0}details label{display:block;margin:9px 0;font-size:11px;color:var(--muted)}input:not([type=file]),textarea{width:100%;border:1px solid var(--line);border-radius:0;background:var(--paper);padding:8px;color:var(--ink);margin-top:4px}textarea{resize:vertical;min-height:60px}.item-status{font-size:11px;color:var(--muted);min-height:18px}progress{width:100%;height:3px;accent-color:var(--ink)}.publish-bar{position:sticky;bottom:12px;background:var(--paper);border:1px solid var(--line);padding:12px 16px;display:flex;justify-content:space-between;align-items:center;margin-top:20px;box-shadow:0 3px 18px #00000008;z-index:3}.publish-bar span{font-size:12px;color:var(--muted)}.collection-section{margin-top:64px}.section-heading{display:flex;justify-content:space-between;align-items:center}.section-heading h2{font-size:16px;letter-spacing:-.3px}.card-actions{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:10px;padding-top:6px}.card-actions button{padding:8px 4px}.card-actions .delete{color:#a23a30}.badge{font-size:10px;color:var(--muted)}.entry-card.is-hidden .card-preview{opacity:.45}.admin-footer{margin-top:50px;display:flex;justify-content:space-between;font-size:11px;color:var(--muted);gap:16px}
@media(min-width:1500px){.gallery-page main{padding:0 16px 36px}:root{--gap:16px}.site-header{height:112px}}
@media(max-width:700px){.site-header{height:80px;padding:0 20px}.gallery-page main{padding:0 8px 24px}:root{--gap:8px}.admin-main{padding:0 16px 24px}.queue,.collection{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.card-preview{height:160px}.viewer-image-wrap{padding:56px 14px}.viewer-nav{top:auto;bottom:4px}.viewer-nav.prev{left:calc(50% - 60px)}.viewer-nav.next{right:calc(50% - 60px)}.viewer-image-wrap p{bottom:62px}.dropzone{min-height:260px}.admin-footer{flex-direction:column;gap:6px}}
@media(max-width:370px){.queue,.collection{grid-template-columns:1fr}.site-header h1{font-size:14px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
