/* AlterImages September 2026 upgrade additions */

/* Footer */
.footer-inline-link{display:inline!important;color:#f2debb!important;text-decoration:underline;text-underline-offset:3px}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:34px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);color:#9d968b;font-size:.9rem}
.footer-bottom a{color:#d8c49d;text-decoration:underline;text-underline-offset:3px}

/* Shared admin additions */
.admin-actions{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 28px}
.admin-actions .btn{box-shadow:none}
.admin-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:20px 0 30px}
.admin-card{background:var(--paper,#fffdf8);border:1px solid var(--line,#ded6c9);border-radius:18px;padding:20px;box-shadow:0 12px 34px rgba(25,22,18,.07)}
.admin-card strong{display:block;font-size:2rem;line-height:1.1}
.admin-card span{display:block;margin-top:5px;color:var(--muted,#726b60);font-size:.9rem}
.admin-card small{display:block;margin-top:8px;color:var(--muted,#726b60)}
.admin-card a{text-decoration:underline;text-underline-offset:3px}
.admin-section{margin:34px 0}
.admin-section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:14px}
.admin-section-head h2{margin:0}
.admin-table-wrap{overflow:auto;border-radius:16px}
.admin-table td,.admin-table th{vertical-align:top}
.admin-table .nowrap{white-space:nowrap}
.admin-nav{gap:16px!important}
.admin-nav a{font-size:.85rem!important}
.form-help{font-size:.84rem;color:var(--muted,#726b60);margin-top:-2px}
.field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.field-row-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.advanced-panel{margin-top:14px}
.advanced-panel summary{cursor:pointer;font-weight:800;padding:12px 0}
.status-pill,.seo-pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 9px;font-size:.76rem;font-weight:850;white-space:nowrap}
.status-published{background:#eaf7ee;color:#176b31}
.status-draft{background:#fff6da;color:#7c5d00}
.status-hidden{background:#f0f0f0;color:#5f5f5f}
.seo-good{background:#eaf7ee;color:#176b31}.seo-fair{background:#fff6da;color:#7c5d00}.seo-poor{background:#fff0f0;color:#922828}
.seo-meter{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}
.seo-meter progress{width:100%;height:9px}
.char-count{font-size:.78rem;color:var(--muted,#726b60);text-align:right;margin-top:3px}
.price-table fieldset{grid-template-columns:repeat(4,minmax(0,1fr))!important}

/* Dashboard */
.quick-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0 34px}
.quick-action{display:block;background:var(--paper,#fffdf8);border:1px solid var(--line,#ded6c9);border-radius:16px;padding:18px;box-shadow:0 10px 28px rgba(25,22,18,.06)}
.quick-action strong{display:block;margin-bottom:5px}
.quick-action span{color:var(--muted,#726b60);font-size:.88rem}

/* Collections and slideshow */
.collection-heading-row{display:flex;justify-content:space-between;align-items:end;gap:24px}
.collection-heading-row .page-title{flex:1}
.slideshow-launch{margin-bottom:30px;white-space:nowrap}
.gallery-view-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}
.gallery-view-heading .eyebrow{margin:0;text-align:right}
.gallery-stage{position:relative;width:min(1050px,90vw);margin:0 auto}
.gallery-stage .artwork-frame{width:100%;margin:0}
.gallery-stage .artwork-frame img{width:100%;max-height:72vh;object-fit:contain;background:var(--bg,#f6f2ea)}
.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:48px;height:48px;border-radius:999px;border:1px solid rgba(255,255,255,.5);background:rgba(0,0,0,.58);color:#fff;font-size:1.8rem;display:grid;place-items:center;cursor:pointer}
.gallery-arrow.prev{left:14px}.gallery-arrow.next{right:14px}
.gallery-thumb-row{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:14px auto 0}
.gallery-thumb-row button{border:2px solid transparent;padding:0;border-radius:10px;background:transparent;cursor:pointer}
.gallery-thumb-row button.active{border-color:var(--gold,#b99a5f)}
.gallery-thumb-row img{width:86px;height:64px;object-fit:cover;border-radius:8px}

.slideshow-overlay{position:fixed;inset:0;z-index:10000;background:rgba(10,10,10,.97);display:none;flex-direction:column;color:#fff}
.slideshow-overlay.open{display:flex}
.slideshow-top{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 18px;border-bottom:1px solid rgba(255,255,255,.13)}
.slideshow-top strong{font-family:var(--serif,Georgia,serif);font-size:1.25rem}
.slideshow-controls{display:flex;gap:8px;align-items:center}
.slideshow-controls button,.slideshow-controls a{border:1px solid rgba(255,255,255,.32);background:rgba(255,255,255,.08);color:#fff;border-radius:999px;padding:9px 13px;cursor:pointer;font:inherit}
.slideshow-main{position:relative;flex:1;min-height:0;display:grid;place-items:center;padding:12px 74px 8px}
.slideshow-main img{max-width:100%;max-height:calc(100vh - 150px);object-fit:contain;box-shadow:0 20px 70px rgba(0,0,0,.45)}
.slideshow-nav{position:absolute;top:50%;transform:translateY(-50%);width:54px;height:54px;border-radius:999px;border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.45);color:#fff;font-size:2rem;cursor:pointer}
.slideshow-nav.prev{left:16px}.slideshow-nav.next{right:16px}
.slideshow-caption{text-align:center;padding:8px 18px 18px;min-height:70px}
.slideshow-caption strong{display:block;font-family:var(--serif,Georgia,serif);font-size:1.55rem;line-height:1.1}
.slideshow-caption span{display:block;color:#d7c8ac;margin-top:4px;font-size:.86rem;letter-spacing:.08em;text-transform:uppercase}
.slideshow-progress{height:3px;background:rgba(255,255,255,.13)}
.slideshow-progress span{display:block;height:100%;width:0;background:#d0ae70;transition:width linear}

/* Photo purchase page */
.photo-heading-row{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:20px}
.photo-heading-row .eyebrow{margin:0;text-align:right}
.photo-main-stage{position:relative}
.photo-main-stage .artwork-frame{width:100%!important;margin:0!important}
.photo-main-stage .artwork-frame img{width:100%;max-height:70vh;object-fit:contain;background:var(--bg,#f6f2ea)}
.photo-nav-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:46px;height:46px;border:0;border-radius:999px;background:rgba(0,0,0,.56);color:#fff;font-size:1.7rem;cursor:pointer}
.photo-nav-arrow.prev{left:12px}.photo-nav-arrow.next{right:12px}
.detail-thumbs button{border:2px solid transparent;padding:0;background:none;border-radius:12px;cursor:pointer;overflow:hidden}
.detail-thumbs button.active{border-color:var(--gold,#b99a5f)}
.detail-thumbs button img{width:100%}
.bespoke-note{background:#f4eee4;border:1px solid var(--line,#ded6c9);border-radius:14px;padding:13px 15px;margin-top:18px;color:var(--muted,#726b60)}
.bespoke-note a{font-weight:800;color:var(--gold-dark,#9f7d3e);text-decoration:underline;text-underline-offset:3px}
.photo-neighbours{display:flex;justify-content:space-between;gap:16px;margin:36px 0 10px}
.photo-neighbours a{display:block;flex:1;border:1px solid var(--line,#ded6c9);border-radius:16px;padding:15px;background:var(--paper,#fffdf8)}
.photo-neighbours a:last-child{text-align:right}
.related-section{padding:36px 0 20px}
.related-section h2{font-size:clamp(2rem,3vw,3rem);margin:0 0 20px}
.related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.related-grid .thumb-link{aspect-ratio:4/3}

/* Stats */
.stats-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 24px}
.stats-toolbar a{border:1px solid var(--line,#ded6c9);border-radius:999px;padding:8px 13px;background:var(--paper,#fffdf8);font-weight:750}
.stats-toolbar a.active{background:var(--charcoal,#151412);color:#fff}
.stats-chart{height:260px;display:flex;align-items:end;gap:5px;background:var(--paper,#fffdf8);border:1px solid var(--line,#ded6c9);border-radius:18px;padding:24px 18px 36px;overflow:hidden;position:relative}
.stats-bar-wrap{height:100%;flex:1;display:flex;align-items:end;position:relative;min-width:4px}
.stats-bar{width:100%;min-height:2px;background:var(--gold,#b99a5f);border-radius:5px 5px 0 0;position:relative}
.stats-bar:hover:after{content:attr(data-label);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);background:#111;color:#fff;border-radius:8px;padding:6px 8px;font-size:.72rem;white-space:nowrap;z-index:4}
.stats-chart-label{position:absolute;left:18px;bottom:9px;color:var(--muted,#726b60);font-size:.75rem}
.stats-two-col{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.rank-number{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:999px;background:#eee6d8;font-weight:850;margin-right:8px}
.zero-view{color:#922828;font-weight:800}

/* Sitemap / backup */
.status-box{border:1px solid var(--line,#ded6c9);border-radius:18px;background:var(--paper,#fffdf8);padding:22px;margin:20px 0}
.status-box dl{display:grid;grid-template-columns:180px 1fr;gap:8px 18px;margin:0}.status-box dt{font-weight:800}.status-box dd{margin:0;color:var(--muted,#726b60)}

/* AI add */
.ai-drop-zone{border:2px dashed var(--line,#ded6c9);border-radius:22px;background:rgba(255,255,255,.55);padding:34px;text-align:center;transition:.2s ease;margin:18px 0;cursor:pointer}.ai-drop-zone.drag{border-color:var(--gold,#b99a5f);background:#fff8ec}.ai-drop-zone strong{display:block;font-size:1.15rem;margin-bottom:8px}.ai-preview{display:grid;grid-template-columns:minmax(220px,360px) 1fr;gap:24px;align-items:start}.ai-preview img{width:100%;border-radius:18px;box-shadow:var(--shadow,0 22px 60px rgba(26,22,17,.11));background:#111}.ai-status{padding:13px 16px;border-radius:16px;margin:14px 0}.ai-status.ok{background:#eff9ef;color:#166a28}.ai-status.err{background:#fff1f1;color:#9a1f1f}.ai-muted{color:var(--muted,#726b60)}.ai-refine-actions{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 22px}.ai-refine-actions button{box-shadow:none}

@media(max-width:1100px){.admin-grid,.quick-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.price-table fieldset{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:800px){.field-row,.field-row-3,.stats-two-col{grid-template-columns:1fr}.collection-heading-row,.photo-heading-row,.gallery-view-heading{align-items:flex-start;flex-direction:column}.gallery-view-heading .eyebrow,.photo-heading-row .eyebrow{text-align:left}.slideshow-launch{margin-bottom:0}.slideshow-main{padding:10px 54px}.slideshow-main img{max-height:calc(100vh - 175px)}.footer-bottom{align-items:flex-start;flex-direction:column}.ai-preview{grid-template-columns:1fr}.status-box dl{grid-template-columns:1fr}.status-box dd{margin-bottom:8px}}
@media(max-width:620px){.admin-grid,.quick-action-grid,.related-grid{grid-template-columns:1fr}.price-table fieldset{grid-template-columns:1fr!important}.slideshow-top{align-items:flex-start;flex-direction:column}.slideshow-controls{flex-wrap:wrap}.slideshow-main{padding:8px 42px}.slideshow-nav{width:42px;height:42px;font-size:1.5rem}.slideshow-nav.prev{left:4px}.slideshow-nav.next{right:4px}.gallery-arrow{width:40px;height:40px}.gallery-arrow.prev{left:6px}.gallery-arrow.next{right:6px}}

/* October 2026 commercial + admin additions */
.admin-photo-cell{display:flex;align-items:center;gap:10px;min-width:180px}.admin-thumb{width:54px;height:42px;object-fit:cover;border-radius:8px;background:#ddd;flex:0 0 auto}.sortable-table th[data-sort]{user-select:none;white-space:nowrap}.sortable-table th[data-dir="asc"]::after{content:" ↑"}.sortable-table th[data-dir="desc"]::after{content:" ↓"}
.issue-list{display:grid;gap:10px}.issue-item{display:block;padding:13px 15px;border-radius:13px;border:1px solid var(--line,#ded6c9);background:var(--paper,#fffdf8)}.issue-warn{border-left:4px solid #b9871e}.issue-bad{border-left:4px solid #9f2f2f}.issue-info{border-left:4px solid #4b7394}
.health-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0}.health-item{border:1px solid var(--line,#ded6c9);background:var(--paper,#fffdf8);border-radius:16px;padding:17px;display:grid;gap:6px}.health-item.ok strong{color:#176b31}.health-item.bad strong{color:#922828}.health-item span{color:var(--muted,#726b60);font-size:.86rem;word-break:break-word}
.collection-actions{display:flex;align-items:center;gap:10px;margin-bottom:30px}.collection-actions .slideshow-launch{margin:0}.thumb-card{position:relative}.favourite-btn{position:absolute;right:10px;top:10px;z-index:6;width:38px;height:38px;border:1px solid rgba(255,255,255,.65);border-radius:999px;background:rgba(20,20,20,.58);color:#fff;font-size:1.25rem;display:grid;place-items:center;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.16)}.favourite-btn.active{background:#fff;color:#9a2830;border-color:#fff}.favourite-action{position:static!important;width:auto!important;height:auto!important;display:inline-flex!important;padding:10px 14px!important;font-size:.92rem!important;background:var(--paper,#fffdf8)!important;color:var(--ink,#171514)!important;border-color:var(--line,#ded6c9)!important}.favourite-action.active{color:#922828!important}.home-hero-art{position:relative}.hero-favourite{top:12px;right:12px}.photo-heading-actions{display:flex;align-items:center;gap:12px}.photo-heading-actions .eyebrow{margin:0}
.recent-section{padding-top:20px}.site-search{display:flex;gap:10px;max-width:760px}.site-search input{flex:1;border:1px solid var(--line,#ded6c9);border-radius:999px;padding:13px 18px;font:inherit;background:#fff}.hero-fade{opacity:.2;transition:opacity .22s ease}
.ai-progress-wrap{border:1px solid var(--line,#ded6c9);background:var(--paper,#fffdf8);border-radius:18px;padding:18px;margin:16px 0 22px;box-shadow:0 10px 26px rgba(25,22,18,.06)}.ai-progress-head{display:flex;justify-content:space-between;gap:18px;align-items:center}.ai-progress-track{height:12px;border-radius:999px;background:#e8e1d6;overflow:hidden;margin:10px 0}.ai-progress-track span{display:block;height:100%;width:5%;background:var(--gold,#b99a5f);border-radius:999px;transition:width .45s ease}.ai-progress-wrap[hidden]{display:none!important}
@media(max-width:900px){.health-grid{grid-template-columns:1fr 1fr}.photo-heading-actions{align-items:flex-start;flex-direction:column}.collection-actions{margin-bottom:0}}
@media(max-width:620px){.health-grid{grid-template-columns:1fr}.site-search{flex-direction:column}.admin-thumb{width:46px;height:36px}.collection-actions{width:100%;flex-wrap:wrap}}
