/* Third View Project - Slideshow Styles */
/* Place in: assets/00_global/css/slideshow.css */
/* This file owns LAYOUT only. Appearance is in buttons.css. */

/* ============================================
   BASE LAYOUT
   ============================================ */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    margin: 0;
    background-color: #000000;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    font-family: 'Gill Sans', 'Gill Sans MT', Calibri, sans-serif;
}

.window-container {
    width: 834px;
    height: 625px;
    position: relative;
    border: 1px solid #404040;
    background-color: #000000;
}

/* ============================================
   SLIDESHOW CONTENT AREA
   ============================================ */

.slideshow-content {
    position: absolute;
    top: 45px;
    left: 0;
    right: 0;
    display: flex;
    justify-content: center;
}

.slideshow-window {
    position: relative;
    width: 834px;
    height: 498px;
    overflow: hidden;
}

.slideshow-cursor-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
    cursor: url('../png/HandOpen.png') 12 8, grab;
}

.slideshow-cursor-overlay.grabbing {
    cursor: url('../png/HandGrab.png') 12 8, grabbing;
}

.slideshow-strip {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    gap: 0;
    transition: transform 0.3s ease;
}

.slideshow-strip img {
    width: 834px;
    height: 498px;
    object-fit: contain;
    display: block;
    flex-shrink: 0;
}

.loading-message {
    color: #666666;
    font-size: 13px;
    text-align: center;
    width: 834px;
    padding-top: 240px;
}

/* ============================================
   CAPTION
   ============================================ */

.slideshow-caption {
    position: absolute;
    top: 547px;
    left: 20px;
    right: 20px;
    color: #e0e0e0;
    font-size: 13px;
    text-align: center;
    line-height: 1.25;
    max-width: 794px;
    margin: 0 auto;
}

/* ============================================
   NAVIGATION BAR
   ============================================ */

.slideshow-nav {
    position: absolute;
    top: 580px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    gap: 15px;
    user-select: none;
}

/* ============================================
   SLIDER TRACK
   ============================================ */

.slideshow-track {
    position: relative;
    width: 248px;
    height: 17px;
    background-image: url('../svg/HSliderStrip.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

/* ============================================
   SLIDER BUTTON Ã¢â‚¬â€ Layout/positioning only
   Appearance (cursor, background-image) is in buttons.css via .slider-button
   ============================================ */

.slideshow-track .slider-button {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 18px;
    height: 18px;
    transition: left 0.05s ease-out;
}

/* ============================================
   CONTROL BAR â€” Link + Close
   ============================================ */

.control-bar {
    position: absolute;
    left: 0;
    top: 578px;
    width: 834px;
    height: 30px;
    display: flex;
    align-items: center;
    padding: 0 20px;
    pointer-events: none;
}

.control-left {
    display: flex;
    align-items: center;
    gap: 12px;
    pointer-events: auto;
}

/* ============================================
   LOADING STATE
   ============================================ */

.loading-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #000000;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    opacity: 1;
    transition: opacity 0.3s ease;
}

.loading-overlay.hidden {
    opacity: 0;
    pointer-events: none;
}

.loading-text {
    color: #666666;
    font-size: 13px;
}
