.image-downloader-enabled .image-downloader-container {max-width: 1200px;}
.image-downloader-enabled .image-downloader-content {width: 100%;}
.image-has-results {padding-bottom: calc(10rem + env(safe-area-inset-bottom, 0px));}
.image-summary {margin-block: 1rem 1.25rem; padding: 1rem; background: var(--gnw-surface); border: 1px solid var(--gnw-border); border-radius: .8rem;}
.image-summary-counts {display: flex; align-items: center; flex-wrap: wrap; gap: .5rem 1rem;}
.image-summary #image-status {margin: 0; font-weight: 600;}
#image-summary-count {color: var(--gnw-accent);}
.image-summary #image-limits {margin: .5rem 0 0;}
.image-actions {position: fixed; bottom: calc(1rem + env(safe-area-inset-bottom, 0px)); left: 0; right: 0; z-index: 1030; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: .6rem; width: max-content; max-width: calc(100% - 2rem); margin: 0 auto; padding: .65rem .8rem; background: rgba(23, 27, 32, .95); border: 1px solid var(--gnw-border, #46505b); border-radius: 1rem; box-shadow: 0 .5rem 1.8rem #0008; backdrop-filter: blur(12px); font-family: 'Rajdhani', sans-serif; font-size: 1.1rem; font-weight: 500; line-height: 1.25;}
.image-actions .btn {font: inherit; font-weight: 700; white-space: nowrap; padding: .4rem .7rem;}
#image-count {margin-inline: .25rem; white-space: nowrap;}
.image-actions #image-progress {order: 1; flex: 0 1 auto; max-width: 22rem; margin: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--gnw-muted, #b4bdc8);}
.image-actions #image-progress:empty {display: none;}
.image-actions #image-download, .image-actions #image-cancel, .image-actions .image-save {order: 2;}
.image-actions .image-save {flex: 0 0 auto; justify-content: center; margin: 0;}
.image-actions .image-notice {order: 3; flex: 1 0 100%; max-width: 36rem; margin: 0; padding: .45rem .65rem; border-radius: .5rem; background: #b58a451c; color: #e4c68f; font-size: 1rem; text-align: center; overflow-wrap: anywhere;}
.image-notice .btn {margin-inline-start: .6rem;}
.image-download-status {color: #e4c68f;}
.image-help {font-size: .9rem; color: var(--bs-secondary-color, #aaa); overflow-wrap: anywhere;}
.image-gallery {columns: 3 250px; column-gap: 1rem;}
.image-card {break-inside: avoid; margin-bottom: 1rem; padding: .5rem; border: 2px solid #59616a; border-radius: .5rem; overflow: hidden;}
.image-card.is-selected {border-color: #5aabcf;}
.image-card.is-suspicious {background: #4a3b2040; border-color: #b58a45;}
.image-card img, .image-card video {display: block; width: 100%; height: auto; border-radius: .25rem;}
.image-card img[role="button"] {cursor: pointer;}
.image-card img[role="button"]:focus-visible {outline: 3px solid #5aabcf; outline-offset: 2px;}
.image-card label {display: flex; align-items: center; gap: .5rem; margin-block: .5rem; cursor: pointer; overflow-wrap: anywhere;}
.image-card input {width: 1.1rem; height: 1.1rem; flex-shrink: 0;}
.image-card .image-help {margin-bottom: .5rem;}
.image-card .btn {font-size: .85rem;}
.image-card-actions {display: flex; width: 100%; border-radius: .65rem;}
.image-card-actions > .btn {flex: 1 1 auto; min-width: 0; min-height: 2.5rem; font-family: 'Rajdhani', sans-serif; font-size: 1rem; font-weight: 700; border-radius: .65rem;}
.image-card-actions > .image-download-button {background: transparent; border-color: var(--gnw-border); color: var(--gnw-text);}
.image-card-actions > .image-download-button:hover:not(:disabled) {background: var(--gnw-accent); border-color: var(--gnw-accent); color: #07111e;}
.image-card-actions > .image-download-button:disabled {opacity: .55;}
.image-card-actions > .image-source-link {display: inline-flex; align-items: center; justify-content: center; flex: 0 0 2.6rem; width: 2.6rem; padding-inline: .5rem; background: var(--gnw-surface-2); border-color: var(--gnw-border); color: var(--gnw-accent);}
.image-card-actions > .image-source-link:hover {background: var(--gnw-border); color: var(--gnw-text);}
.image-card-actions > .btn:focus-visible {outline: 2px solid var(--gnw-accent); outline-offset: 3px; box-shadow: none;}
.image-download-status:empty {display: none;}
.image-save {display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; margin-block: .75rem;}
.image-save:empty {display: none;}
@media (max-width: 540px) {.image-gallery {columns: 2 140px; column-gap: .5rem;} .image-card {padding: .35rem; margin-bottom: .5rem;} .image-actions {max-width: calc(100% - 1rem); gap: .35rem; padding: .5rem; font-size: 1rem;} .image-actions .btn {padding: .4rem .55rem;} .image-actions #image-progress {max-width: min(22rem, 100%);}}
