/**
 * File: calcwood_intro.css
 * Verze a aktuální datum: 27-10-26 v_1.00
 */

/* Krycí vrstva hned od prvního vykreslení, než ji nahradí skutečné intro.
   Sama zmizí po 4,5 s, i kdyby JavaScript vůbec neproběhl. */
html.cw-intro-on::after {
    content: "";
    position: fixed;
    top: 0; right: 0; bottom: 0; left: 0;
    z-index: 2147483000;
    background: #121110;
    animation: cw-intro-cap 0s linear 4.5s forwards;
}

.cw-intro {
    position: fixed;
    top: 0; right: 0; bottom: 0; left: 0;
    z-index: 2147483001;
    display: grid;
    place-items: center;
    background: radial-gradient(60% 45% at 50% 50%, #1d1a14 0%, #121110 70%);
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
    -webkit-user-select: none;
    user-select: none;
    animation: cw-intro-cap 0s linear 5s forwards;
}

@keyframes cw-intro-cap {
    to { visibility: hidden; opacity: 0; pointer-events: none; }
}

/* rozměry bez aspect-ratio/inset, aby fungovaly i ve starším Safari */
.cw-intro-glow {
    position: absolute;
    width: min(90vw, 680px);
    height: calc(min(90vw, 680px) / 3);
    border-radius: 50%;
    background: radial-gradient(closest-side, rgba(249, 195, 67, .16), transparent);
    filter: blur(20px);
    opacity: 0;
}

.cw-intro-logo {
    position: relative;
    width: min(80vw, 560px);
    height: calc(min(80vw, 560px) * 18 / 140);
}

.cw-intro-layer {
    position: absolute;
    top: 0; left: 0;
    width: 100%;
    height: 100%;
    overflow: visible;
    will-change: transform, opacity, filter;
}

.cw-intro-rule {
    position: absolute;
    height: 2px;
    background: #f9c343;
    box-shadow: 0 0 12px rgba(249, 195, 67, .7);
    transform-origin: left center;
    will-change: transform;
}

/* dílky metru nad čarou */
.cw-intro-rule::before {
    content: "";
    position: absolute;
    left: 0; right: 0; bottom: 2px;
    height: 9px;
    opacity: .55;
    background:
        repeating-linear-gradient(90deg, #f9c343 0 1px, transparent 1px 50px) bottom / 100% 9px no-repeat,
        repeating-linear-gradient(90deg, #f9c343 0 1px, transparent 1px 10px) bottom / 100% 4px no-repeat;
}

.cw-intro-glint {
    position: absolute;
    top: 0; right: 0; bottom: 0; left: 0;
    overflow: hidden;
    pointer-events: none;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
}

.cw-intro-glint i {
    position: absolute;
    top: 0; bottom: 0; left: 0;
    width: 22%;
    background: linear-gradient(100deg, transparent, rgba(255, 236, 190, .95) 50%, transparent);
    transform: translateX(-120%);
}

.cw-intro-ring { opacity: 0; }

.cw-intro-holes circle {
    transform-box: fill-box;
    transform-origin: center;
}

/* odlehčený režim pro slabá zařízení: stejný pohyb, bez rozmazání */
.cw-intro-lite .cw-intro-glow { filter: none; }
.cw-intro-lite .cw-intro-layer { will-change: transform, opacity; }

@media print {
    html.cw-intro-on::after, .cw-intro { display: none !important; }
}
