/* viewerexploded - vnitrek iframe s prohlizecem vykresu (vizual rcsvet) */

/* Inter z Hummingbird šablony (latin + latin-ext kvůli diakritike) */
@font-face { font-display: swap; font-family: Inter; font-style: normal; font-weight: 400;
    src: url(/themes/hummingbird/assets/fonts/inter-latin-400-normal-eca1e21531598d5db58f.woff2) format("woff2"); unicode-range: U+0000-00FF; }
@font-face { font-display: swap; font-family: Inter; font-style: normal; font-weight: 600;
    src: url(/themes/hummingbird/assets/fonts/inter-latin-600-normal-69a8d1d484967aba2389.woff2) format("woff2"); unicode-range: U+0000-00FF; }
@font-face { font-display: swap; font-family: Inter; font-style: normal; font-weight: 700;
    src: url(/themes/hummingbird/assets/fonts/inter-latin-700-normal-084676038be5b1c38324.woff2) format("woff2"); unicode-range: U+0000-00FF; }
@font-face { font-display: swap; font-family: Inter; font-style: normal; font-weight: 400;
    src: url(/themes/hummingbird/assets/fonts/inter-latin-ext-400-normal-210fb826cb25acbd4094.woff2) format("woff2"); unicode-range: U+0100-024F, U+1E00-1EFF; }
@font-face { font-display: swap; font-family: Inter; font-style: normal; font-weight: 600;
    src: url(/themes/hummingbird/assets/fonts/inter-latin-ext-600-normal-8148c3ae14dfaefc62ca.woff2) format("woff2"); unicode-range: U+0100-024F, U+1E00-1EFF; }
@font-face { font-display: swap; font-family: Inter; font-style: normal; font-weight: 700;
    src: url(/themes/hummingbird/assets/fonts/inter-latin-ext-700-normal-be70ab2888339fe67ac5.woff2) format("woff2"); unicode-range: U+0100-024F, U+1E00-1EFF; }

* { box-sizing: border-box; }

body {
    margin: 0;
    padding: 0;
    width: 100vw;
    height: 100vh;
    background: #fff;
    font-family: Inter, system-ui, -apple-system, sans-serif;
}

#viewer {
    width: 100%;
    height: 100%;
    position: relative;
    background: #fff !important;
}

/* Ovladaci tlacitka (vlastni misto vychozich PNG OpenSeadragonu) */
.vwex-toolbar {
    position: absolute;
    top: 12px;
    left: 12px;
    z-index: 120;
    display: flex;
    gap: 8px;
}
.vwex-btn {
    width: 38px;
    height: 38px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: 1px solid #eadfce;
    background: #fff;
    color: #4b5563;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(31, 41, 55, .14);
    transition: color .15s, border-color .15s, box-shadow .15s;
}
.vwex-btn:hover {
    color: #d97c0a;
    border-color: #f7941e;
    box-shadow: 0 2px 10px rgba(247, 148, 30, .3);
}
.vwex-btn svg {
    width: 18px;
    height: 18px;
    display: block;
}

/* Aktivni oblasti dilu ve vykresu */
.overlay {
    position: absolute;
    border-radius: 3px;
    border: 1.5px solid transparent;
    cursor: pointer;
    transition: background-color .15s, box-shadow .15s;
}
.overlay--ok  { background: rgba(34, 197, 94, .14);  border-color: rgba(22, 163, 74, .45); }
.overlay--out { background: rgba(239, 68, 68, .12); border-color: rgba(220, 38, 38, .4); }
.overlay:hover,
.overlay.highlight {
    background: rgba(247, 148, 30, .3);
    border-color: #f7941e;
    box-shadow: 0 0 0 2px rgba(247, 148, 30, .28);
}

/* Karta dilu (tooltip) */
.vwex-card {
    position: relative;
    width: 272px;
    padding: 14px;
    background: #fff;
    border: 1px solid #f0dfc7;
    border-radius: 10px;
    box-shadow: 0 10px 28px rgba(31, 41, 55, .22);
    font-size: 13px;
    line-height: 1.45;
    color: #333;
    text-align: left;
    cursor: default;
}
.vwex-card__close {
    position: absolute;
    top: 8px;
    right: 8px;
    width: 26px;
    height: 26px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #fef5e9;
    color: #b45309;
    font-size: 16px;
    line-height: 1;
    font-weight: 700;
    cursor: pointer;
}
.vwex-card__close:hover { background: #f7941e; color: #fff; }
.vwex-card__name {
    display: block;
    padding-right: 28px;
    margin-bottom: 8px;
    font-size: 14px;
    font-weight: 700;
    color: #1f2937;
    text-decoration: none;
}
.vwex-card__name:hover { color: #d97c0a; }
.vwex-card__img {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 110px;
    margin-bottom: 10px;
    border-radius: 6px;
    background: #fff;
}
.vwex-card__img img {
    max-width: 100%;
    max-height: 110px;
    object-fit: contain;
}
.vwex-card__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 6px;
}
.vwex-card__price {
    font-size: 16px;
    font-weight: 700;
    color: #1f2937;
    white-space: nowrap;
}
.vwex-card__stock {
    padding: 3px 9px;
    border-radius: 20px;
    font-size: 11.5px;
    font-weight: 600;
    white-space: nowrap;
}
.vwex-card__stock--ok  { background: #e8f7ee; color: #15803d; }
.vwex-card__stock--out { background: #fdecec; color: #b91c1c; }
.vwex-card__code {
    margin-bottom: 12px;
    font-size: 12px;
    color: #8a94a6;
}
.vwex-card__code strong {
    color: #4b5563;
    font-weight: 600;
}
.vwex-card__btn {
    display: block;
    padding: 9px 12px;
    border-radius: 8px;
    background: #f7941e;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    text-align: center;
    text-decoration: none;
    transition: background-color .15s;
}
.vwex-card__btn:hover { background: #d97c0a; color: #fff; }
.vwex-card__empty { padding: 6px 20px 6px 4px; color: #4b5563; }
