:root{--danger:#a34635}button:disabled{opacity:.4;cursor:not-allowed}.primary-button{background:var(--fg);color:var(--bg);border:1px solid var(--fg);border-radius:5px;padding:12px 17px;font:500 12px 'DM Sans',sans-serif;display:inline-flex;gap:10px;align-items:center;justify-content:center;cursor:pointer}.primary-button:hover{opacity:.85}.muted{color:var(--muted);font-size:12px}.empty-state{text-align:center;padding:85px 15px}.empty-state h2{font-size:26px;font-weight:450;letter-spacing:-.8px}.empty-state p{font-size:13px;color:var(--muted);line-height:1.8}.empty-state .primary-button{margin-top:15px}.back-link{display:block;font-size:12px;margin-top:25px;color:var(--muted)}.admin-link{font-size:11px;color:var(--muted)}.preview-banner{background:var(--surface);border-bottom:1px solid var(--line);text-align:center;padding:14px;font-size:12px}.preview-banner a{margin-left:20px;text-decoration:underline}.photographer{margin-top:9px!important;font-size:10px!important}.admin-top{max-width:none;padding:0 40px;height:88px}.admin-shell{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:calc(100dvh - 88px);max-width:1700px;margin:auto}.admin-sidebar{border-right:1px solid var(--line);padding:38px 24px;display:flex;flex-direction:column;gap:20px}.admin-sidebar .eyebrow{font-size:9px;color:var(--muted)}.admin-sidebar h2{font-size:19px;font-weight:500;letter-spacing:-.5px;margin:0 0 5px}.album-list{display:flex;flex-direction:column;gap:6px}.album-list button{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-radius:5px;font-size:13px}.album-list button>span:last-child{font-size:11px;color:var(--muted)}.album-list .selected,.trash-link.selected{background:var(--surface)}.new-album{justify-content:center}.trash-link{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:20px 12px;font-size:12px}.sidebar-bottom{margin-top:auto;padding-top:60px;display:flex;align-items:start;gap:10px}.avatar{display:grid;place-items:center;background:var(--surface);width:30px;height:30px;border-radius:50%;font-size:12px}.sidebar-bottom strong{display:block;font-size:11px;font-weight:500}.sidebar-bottom small{display:block;font-size:9px;color:var(--muted);margin:4px 0 8px}.sidebar-bottom a{font-size:10px;color:var(--muted)}.admin-main{margin:0;width:100%;padding:42px 4%;max-width:none;min-width:0}.admin-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:32px}.admin-heading .eyebrow{color:var(--muted);font-size:9px}.admin-heading h1{font-size:43px;letter-spacing:-2px;margin:14px 0 10px}.admin-heading p{color:var(--muted);font-size:12px;line-height:1.7;margin:0}.heading-actions{display:flex;gap:8px;flex-wrap:wrap}.upload-zone{border:1px dashed #b9bcae;background:var(--surface);border-radius:7px;padding:30px;text-align:center;transition:background .2s}.upload-zone.dragging{outline:3px solid var(--accent);outline-offset:3px}.upload-icon{display:inline-grid;place-items:center;border:1px solid var(--line);background:var(--bg);width:40px;height:40px;border-radius:8px;color:var(--accent);font-size:25px}.upload-zone h2{font-size:18px;font-weight:500;margin:15px 0 8px;letter-spacing:-.4px}.upload-zone p{font-size:12px;color:var(--muted);margin:0;overflow-wrap:anywhere}.upload-zone small{font-size:10px;color:var(--muted);display:block}.upload-actions{display:flex;justify-content:center;align-items:center;gap:20px;margin:20px 0 15px}.upload-actions label{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:10px}.upload-actions select{padding:9px;font-size:12px}.upload-zone progress{display:block;accent-color:var(--accent);margin:20px auto 0;width:60%;height:5px}.admin-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:34px 0 22px;border-bottom:1px solid var(--line);padding-bottom:15px}.filter-tabs{display:flex;gap:5px}.filter-tabs button{font-size:11px;padding:8px 12px;border-radius:4px;color:var(--muted)}.filter-tabs button.active{color:var(--fg);background:var(--surface)}.toolbar-actions{display:flex;gap:17px}.toolbar-actions button{font-size:10px;color:var(--muted)}.admin-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.admin-photo{border:1px solid var(--line);border-radius:6px;overflow:hidden;background:var(--bg)}.admin-image{position:relative}.admin-image .image-button{border-radius:0}.admin-image .image-button img{height:180px;width:100%;object-fit:cover}.admin-image .image-button:disabled{opacity:1}.status-pill,.cover-pill{position:absolute;top:12px;left:12px;background:#f9f9f2ed;color:#646859;border-radius:4px;padding:5px 8px;font-size:9px;pointer-events:none}.status-pill.published{background:#edf1e0ed;color:#4e6129}.cover-pill{left:auto;right:12px;background:#20281ee8;color:#fff}.admin-photo-body{padding:15px}.admin-photo h3{font-size:12px;font-weight:550;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0 0 7px}.admin-photo p{font-size:10px;color:var(--muted);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.photo-actions{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin-top:15px;padding-top:8px}.photo-actions .text-button{font-size:11px}.photo-actions .icon-button{width:27px;height:27px;font-size:14px}.drag-source{opacity:.4}.admin-help{text-align:center;font-size:10px;color:var(--muted);margin:24px 0}.admin-footnote{margin-top:60px;border-top:1px solid var(--line);padding:24px 0;color:var(--muted);font-size:10px}.notice{padding:13px 17px;border:1px solid var(--line);border-radius:5px;font-size:12px;line-height:1.7;margin:0 0 20px;background:var(--surface)}.notice.error{border-color:#b85a45;color:var(--danger)}html[data-theme=dark]{--danger:#f0a693}.notice.success{color:var(--accent)}.edit-dialog{width:930px;max-width:calc(100% - 30px);padding:0}.edit-dialog form{display:grid;grid-template-columns:44% 56%}.edit-image{background:var(--surface);padding:24px;display:flex;flex-direction:column;justify-content:center;gap:20px;text-align:center}.edit-image img{width:100%;max-height:520px;object-fit:contain}.edit-image a{font-size:11px;color:var(--muted)}.edit-fields{padding:42px 30px 30px}.edit-fields h2,.form-dialog h2{font-size:25px;font-weight:450;letter-spacing:-.7px;margin:14px 0 25px}.edit-fields label,.form-dialog label{display:flex;flex-direction:column;gap:7px;font-size:11px;margin-bottom:17px}.edit-fields input,.edit-fields select,.edit-fields textarea,.form-dialog input,select{font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--line);border-radius:4px;padding:10px;min-width:0}.edit-fields input,.edit-fields select,.edit-fields textarea,.form-dialog input{width:100%;font-size:12px}.edit-fields textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.edit-bottom{display:flex;justify-content:space-between;gap:10px;margin-top:25px}.edit-bottom .outline-button,.edit-bottom .primary-button{font-size:10px;gap:5px}.form-dialog .primary-button{margin-top:10px}.admin-empty{padding:55px 15px}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:2px}.info:has(.primary-button) .primary-button{margin-top:18px}@media(min-width:1500px){.admin-image .image-button img{height:230px}}@media(max-width:1100px){.admin-shell{grid-template-columns:210px minmax(0,1fr)}.admin-sidebar{padding:30px 18px}.admin-heading{align-items:start;flex-direction:column}.admin-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-toolbar{align-items:start;flex-direction:column}.admin-heading h1{font-size:38px}}@media(max-width:700px){.admin-top{padding:0 20px;height:75px}.admin-top .brand-by{display:none}.admin-shell{display:block}.admin-sidebar{border-right:0;border-bottom:1px solid var(--line);padding:18px 20px;display:block}.admin-sidebar>.eyebrow,.admin-sidebar>h2,.sidebar-bottom{display:none}.album-list{flex-direction:row;overflow-x:auto;margin-bottom:12px}.album-list button{min-width:85px;gap:14px;padding:9px 12px}.new-album{display:inline-flex;padding:8px 12px}.trash-link{display:inline-flex;margin-left:15px;border:0;gap:12px;padding:10px}.admin-main{padding:30px 20px}.admin-heading h1{font-size:36px}.heading-actions{width:100%}.upload-zone{padding:25px 15px}.upload-actions{gap:12px}.upload-actions label{gap:5px}.admin-photo-grid{gap:12px}.admin-image .image-button img{height:160px}.admin-photo-body{padding:12px}.cover-pill{top:auto;bottom:10px}.photo-actions .icon-button{width:24px}.edit-dialog form{display:block}.edit-image{padding:20px}.edit-image img{max-height:200px}.edit-fields{padding:25px 20px}.edit-dialog .close{background:var(--bg);z-index:2}.preview-banner a{display:block;margin:8px 0 0}.lightbox .outline-button{font-size:10px;padding:10px}.admin-heading .heading-actions .primary-button{flex:1}.admin-help{line-height:1.7}}
