.kopol-lightbox{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:16px;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.kopol-lightbox.active{opacity:1;visibility:visible}.kopol-lightbox-backdrop{position:absolute;inset:0;background:rgba(18,14,13,.6);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:default}.kopol-lightbox-container{position:relative;z-index:1;display:flex;flex-direction:column;width:100%;max-width:960px;max-height:92vh;background:var(--color-bg-cream);border:1px solid var(--color-gray-300);border-radius:var(--border-radius);box-shadow:0 25px 50px -12px rgba(0,0,0,.5),0 0 0 1px rgba(255,255,255,.05);overflow:hidden;transform:scale(.96) translateY(8px);transition:transform .28s cubic-bezier(.25,.8,.25,1)}.kopol-lightbox.active .kopol-lightbox-container{transform:scale(1) translateY(0)}.kopol-lightbox-header{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;background:var(--color-bg-beige);border-bottom:1px solid var(--color-gray-200)}.kopol-lightbox-title-wrap{display:flex;align-items:center;gap:10px;overflow:hidden}.kopol-lightbox-icon{color:var(--color-primary-orange)}.kopol-lightbox-title{margin:0;color:var(--color-text-primary);line-height:1.6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kopol-lightbox-badge{background:var(--color-bg-light-peach);color:var(--color-primary-brown);border:1px solid var(--color-primary-tan);padding:2px 8px;white-space:nowrap;letter-spacing:.5px}.kopol-lightbox-close{background:transparent;border:0;cursor:pointer;color:var(--color-text-primary);padding:4px 9px 4px 4px;display:flex;align-items:center;justify-content:center;transition:color .2s ease;margin:0}.kopol-lightbox-close:hover{color:var(--color-red-orange);background:transparent}.kopol-lightbox-body{position:relative;display:flex;align-items:center;justify-content:center;min-height:240px;max-height:calc(88vh - 128px);overflow:hidden;background:repeating-conic-gradient(rgba(0,0,0,.03) 0% 25%,transparent 0% 50%) 50%/20px 20px;padding:12px}.kopol-lightbox-img{max-width:100%;max-height:calc(88vh - 150px);object-fit:contain;border-radius:calc(var(--border-radius) - 4px);opacity:0;transform:scale(.98);transition:opacity .3s ease,transform .3s ease;user-select:none}.kopol-lightbox-img.loaded{opacity:1;transform:scale(1)}.kopol-lightbox-loader{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--color-text-primary)}.kopol-lightbox-spinner{width:36px;height:36px;border:3px solid var(--color-bg-tan);border-top-color:var(--color-primary-brown);border-radius:50%;animation:lazySpinner .7s linear infinite}.kopol-lightbox-error{color:var(--color-red-orange);text-align:center;padding:20px}.kopol-lightbox-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;background:var(--color-bg-beige);border-top:1px solid var(--color-gray-200)}.kopol-lightbox-meta{display:flex;align-items:center;gap:8px;color:var(--color-gray-600);flex-wrap:wrap}.kopol-lightbox-meta span{display:inline-flex;align-items:center;gap:4px}.kopol-lightbox-dl{cursor:pointer;display:inline-flex;align-items:center}.kopol-lightbox-dl.downloading{opacity:.85;pointer-events:none}.kopol-lightbox-dl.downloaded{background:#00b38f!important}@media(max-width:768px){.kopol-lightbox{padding:8px}.kopol-lightbox-container{max-height:96vh}.kopol-lightbox-header,.kopol-lightbox-footer{padding:10px 14px}.kopol-lightbox-footer{flex-direction:column-reverse;gap:10px}.kopol-lightbox-dl{width:100%;justify-content:center}.kopol-lightbox-meta{width:100%;justify-content:center}.kopol-lightbox-img{max-height:calc(88vh - 180px)}}html[data-theme=dark] .kopol-lightbox-container{background:var(--color-bg-cream);border-color:var(--dm-border);box-shadow:0 25px 50px -12px rgba(0,0,0,.85),0 0 0 1px rgba(255,255,255,.05)}html[data-theme=dark] .kopol-lightbox-header,html[data-theme=dark] .kopol-lightbox-footer{background:var(--color-bg-beige);border-color:var(--dm-border)}html[data-theme=dark] .kopol-lightbox-badge{background:var(--dm-surface);color:var(--color-primary-brown-light);border-color:var(--color-primary-tan)}html[data-theme=dark] .kopol-lightbox-meta{color:var(--dm-muted)}