::selection {

    background: rgba(126, 30, 48, 0.88);

    color: #dffbff;

    text-shadow: none;

}

::-moz-selection {

    background: rgba(126, 30, 48, 0.88);

    color: #dffbff;

    text-shadow: none;

}

html, body {

    width: 100%;

    height: 100%;

    margin: 0;

    overflow-x: hidden;

	line-height: 1.4em;

    scroll-behavior: smooth;

}

body {

    font-size: 14pt;

    font-family: monospace;

    color: white;

    position: relative;

    isolation: isolate;

    overflow-x: hidden;

    min-height: 100vh;

    background:
      linear-gradient(90deg, rgba(0, 126, 186, 0.24) 0%, rgba(6, 10, 18, 0.58) 42%, rgba(6, 10, 18, 0.58) 58%, rgba(178, 38, 38, 0.24) 100%),
      radial-gradient(circle at 14% 20%, rgba(0, 181, 255, 0.2), transparent 56%),
      radial-gradient(circle at 86% 20%, rgba(255, 67, 67, 0.2), transparent 56%),
      #02040a;
    background-color: #02040a;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: scroll;

}

/* Keep the feather aesthetic on the OS cursor, not a JS-tracked DOM element. */
@media (pointer: fine) {
    body {
        --site-feather-cursor: url("../img/cursor-pluma.svg?n=2") 34 40, auto;
        cursor: var(--site-feather-cursor);
    }
    input, textarea, [contenteditable="true"] {
        cursor: text;
    }
}

#background-effects {
    position: fixed;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
}

/* Soft radial gradients need no blur or blend passes. Bounded textures also
   avoid allocating several viewport-sized surfaces on Retina displays. */
.aquarium-glow {
    position: absolute;
    display: block;
    width: min(70vw, 720px);
    height: min(80vh, 640px);
    opacity: 0.42;
    pointer-events: none;
    will-change: transform;
}

.aquarium-glow--blue {
    left: -12vw;
    top: -8vh;
    background: radial-gradient(ellipse, rgba(150, 246, 255, 0.4), rgba(73, 211, 255, 0.26) 28%, rgba(16, 116, 212, 0.14) 48%, transparent 74%);
    animation: aquariumDriftBlue 24s ease-in-out infinite;
}

.aquarium-glow--red {
    right: -12vw;
    top: -6vh;
    background: radial-gradient(ellipse, rgba(255, 195, 195, 0.36), rgba(255, 109, 109, 0.24) 30%, rgba(193, 28, 28, 0.14) 52%, transparent 76%);
    animation: aquariumDriftRed 26s ease-in-out infinite;
}

.aquarium-current {
    position: absolute;
    display: block;
    pointer-events: none;
    left: 50%;
    will-change: transform, opacity;
}

/* Currents, blooms and reflections share one small texture. A separate
   viewport-sized reflection layer was too costly on Firefox's renderer. */
.aquarium-current {
    top: 36%;
    width: min(108vw, 980px);
    height: min(36vh, 280px);
    opacity: 0.38;
    background:
      radial-gradient(ellipse at 28% 42%, rgba(140, 238, 255, 0.3), transparent 56%),
      radial-gradient(ellipse at 74% 54%, rgba(255, 170, 170, 0.26), transparent 58%),
      repeating-linear-gradient(108deg, transparent 0 13%, rgba(180, 238, 255, 0.07) 15% 16%, transparent 20% 25%);
    -webkit-mask-image: radial-gradient(ellipse, black 30%, transparent 72%);
    mask-image: radial-gradient(ellipse, black 30%, transparent 72%);
    animation: aquariumCurrent 22s ease-in-out infinite;
}

 img {

	 max-height: 100%;

	 max-width: 100%;

	 width:auto;

	 height:auto;

    }



#container {

    padding: .1em 1.5em 1em 1em;

    margin-left: 25%;

    margin-right: 25%;

	align-self: center;

}

#site-footer {

    margin: 3rem 25% 1.75rem;

    padding: 1rem 0 0;

    border-top: 1px solid rgba(255, 255, 255, 0.12);

    text-align: center;

    font-size: 0.88rem;

    letter-spacing: 0.06em;

    color: rgba(249, 252, 255, 0.6);

}

body,
#container,
#containerascii,
#sidenav,
#log,
#hero-subtitle,
#output,
#site-footer {

    -webkit-user-select: text;

    -moz-user-select: text;

    user-select: text;

}

#container,
#containerascii,
#hero-subtitle,
#site-footer,
#sidenav,
#log {

    position: relative;

    z-index: 1;

}

#containerascii {
    padding: .1em 1em 1em 1em;

    display: table;

    margin: 0 auto 0.55rem;

    text-align: left;

    white-space: pre;

    line-height: 1.08;

    letter-spacing: 0;

    color: #f4fcff;

    text-shadow: 0 0 12px rgba(64, 242, 254, 0.35);

    cursor: var(--site-feather-cursor, pointer);

    transition: transform 180ms ease, filter 180ms ease;

}

#containerascii[data-glow-text]::after {
    content: attr(data-glow-text);
    position: absolute;
    inset: 0;
    box-sizing: border-box;
    padding: inherit;
    white-space: pre;
    font: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    color: #ffe5e5;
    text-shadow: 0 0 12px rgba(255, 107, 107, 0.45);
    pointer-events: none;
    user-select: none;
    will-change: opacity;
    animation: siteColorCrossfade 5s ease-in-out infinite alternate;
}

#containerascii:hover,
#containerascii:focus-visible {

    transform: translateY(-0.12rem);

    filter: drop-shadow(0 0 0.6rem rgba(143, 239, 255, 0.18));

    outline: none;

}

#hero-subtitle {

    max-width: 52rem;

    margin: -0.15rem auto 2rem;

    padding: 0 1.25rem;

    display: block;

    text-align: center;

    font-size: clamp(1rem, 1.8vw, 1.28rem);

    line-height: 1.45;

    font-weight: 700;

    letter-spacing: 0.08em;

    color: inherit;

}

.hero-subtitle__word {

    display: inline-block;

    margin-right: 0.3em;

    white-space: nowrap;


}

.hero-subtitle__word--joined {

    margin-right: 0;

}

.hero-subtitle__word:last-of-type {

    margin-right: 0;

}

.hero-subtitle__word--blue {

    color: #a3f4ff;
    text-shadow: 0 0 10px rgba(64, 242, 254, 0.32);

}

.hero-subtitle__word--red {

    color: #ffb6b6;
    text-shadow: 0 0 10px rgba(255, 107, 107, 0.32);

}

.hero-subtitle__glow {
    position: absolute;
    inset: 0;
    box-sizing: border-box;
    padding: inherit;
    pointer-events: none;
    user-select: none;
    will-change: opacity;
    animation: siteColorCrossfade 5s ease-in-out infinite alternate;
}

.hero-subtitle__glow .hero-subtitle__word--blue {
    color: #ffb6b6;
    text-shadow: 0 0 10px rgba(255, 107, 107, 0.32);
}

.hero-subtitle__glow .hero-subtitle__word--red {
    color: #a3f4ff;
    text-shadow: 0 0 10px rgba(64, 242, 254, 0.32);
}

/* Only composite position; never animate text shadows, filters or paint. */
@keyframes aquariumDriftBlue {
    0%, 100% { transform: translate(0, 0); }
    50% { transform: translate(3vw, 4vh); }
}

@keyframes aquariumDriftRed {
    0%, 100% { transform: translate(0, 0); }
    50% { transform: translate(-3vw, 4vh); }
}

@keyframes aquariumCurrent {
    0%, 100% { transform: translate(-54%, 0) rotate(-6deg); opacity: 0.3; }
    50% { transform: translate(-46%, 3vh) rotate(-2deg); opacity: 0.46; }
}

@keyframes siteColorCrossfade {
    from { opacity: 0; }
    to { opacity: 1; }
}

.site-paused #background-effects > *,
.site-paused #containerascii::after,
.site-paused .hero-subtitle__glow,
#containerascii.site-effect-offscreen::after,
.site-effect-offscreen .hero-subtitle__glow {
    animation-play-state: paused;
    will-change: auto;
}

@media (prefers-reduced-motion: reduce) {
    #background-effects > *,
    #containerascii[data-glow-text]::after,
    .hero-subtitle__glow { animation: none; will-change: auto; }
    #containerascii::after,
    .hero-subtitle__glow { opacity: 0; }
}

#scribd_iframe_embed{

	width: 1000px;

}

#cmdline {

    outline: none;

    background-color: transparent;

    margin: 0;

    width: 100%;

    font: inherit;

    border: none;

    color: inherit;

	

}

#output {

    clear: both;

    width: 100%;

	text-align: left;

}

#output strong,
#output b {

    font-weight: 700;

    color: #fff0b8;

}

.output-title {

    display: block;

    margin: 0 0 0.65em;

    font-size: clamp(1.55rem, 4vw, 2.8rem);

    line-height: 1.08;

    letter-spacing: 0.08em;

    text-transform: uppercase;

    color: #f9fcff;

    text-shadow:
      -0.08em 0 rgba(255, 72, 72, 0.78),
      0 0 0.9em rgba(99, 231, 255, 0.52);

}

.output-command-entry {

    display: inline-flex;

    align-items: center;

    gap: 0.35em;

}

.output-command-bullet {

    color: #f7d07e;

}

.output-command-link {

    padding: 0;

    border: none;

    background: transparent;

    color: #63e7ff;

    cursor: var(--site-feather-cursor, pointer);

    font: inherit;

    text-transform: lowercase;

    text-shadow: -0.0625em -0.0625em black, 0.0625em 0.0625em red;

}

.output-command-link:hover,
.output-command-link:focus {

    color: #ffffff;

    text-decoration: underline;

    outline: none;

}

.output-command-link.is-active {

    color: #ffffff;

    text-decoration: underline;

    text-underline-offset: 0.14em;

}

.output-command-inline {

    white-space: nowrap;

}

.output-command-link--inline {

    font-weight: inherit;

    color: #63e7ff;

    text-shadow: -0.0625em -0.0625em black, 0.0625em 0.0625em red;

}

.output-command-link--inline:hover,
.output-command-link--inline:focus {

    color: #ffffff;

}

.output-text-link {

    color: #8fefff;

    text-decoration: underline;

    text-underline-offset: 0.15em;

    font-weight: 700;

}

.output-text-link:hover,
.output-text-link:focus {

    color: #ffffff;

    outline: none;

}

.output-strikethrough {

    text-decoration: line-through;

    text-decoration-thickness: 0.08em;

    text-decoration-color: rgba(255, 240, 184, 0.92);

    opacity: 0.78;

}

.output-gallery {

    display: grid;

    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));

    gap: 1rem;

    margin: 0.5rem 0 0;

}

.output-album {

    display: grid;

    gap: 1.15rem;

    margin-top: 0.15rem;

}

.output-album-event {

    display: grid;

    gap: 0.9rem;

    padding: 1rem;

    border: 1px solid rgba(143, 239, 255, 0.18);

    border-radius: 1rem;

    background:
      linear-gradient(135deg, rgba(0, 126, 186, 0.08), rgba(178, 38, 38, 0.08)),
      rgba(4, 9, 18, 0.72);

    box-shadow: 0 0.6rem 1.6rem rgba(0, 0, 0, 0.22);

}

.output-album-event__header {

    display: grid;

    grid-template-columns: minmax(0, 1fr) auto;

    align-items: start;

    gap: 0.65rem;

}

.output-album-event__title {

    color: #f9fcff;

    font-size: 1.02rem;

    font-weight: 700;

    letter-spacing: 0.05em;

    text-transform: uppercase;

    min-width: 0;

    line-height: 1.15;

}

.output-album-event__meta {

    color: rgba(255, 240, 184, 0.9);

    font-size: 0.78rem;

    letter-spacing: 0.08em;

    text-transform: uppercase;

    white-space: nowrap;

    justify-self: end;

}

.output-album-carousel {

    display: grid;

    grid-template-columns: auto minmax(0, 1fr) auto;

    position: relative;

    align-items: center;

    gap: 0.75rem;

}

.output-album-track-shell {

    position: relative;

    min-width: 0;

    overflow: hidden;

}

.output-album-track-shell::before,
.output-album-track-shell::after {

    content: "";

    position: absolute;

    top: 0;

    bottom: 0;

    width: clamp(1.9rem, 5vw, 3.2rem);

    z-index: 2;

    pointer-events: none;

    transition: opacity 180ms ease;

}

.output-album-track-shell::before {

    left: 0;

    background: linear-gradient(90deg, rgba(4, 9, 18, 0.96), rgba(4, 9, 18, 0));

}

.output-album-track-shell::after {

    right: 0;

    background: linear-gradient(270deg, rgba(4, 9, 18, 0.96), rgba(4, 9, 18, 0));

}

.output-album-event.is-at-start .output-album-track-shell::before,
.output-album-event.is-at-end .output-album-track-shell::after,
.output-album-event.is-not-scrollable .output-album-track-shell::before,
.output-album-event.is-not-scrollable .output-album-track-shell::after {

    opacity: 0;

}

.output-album-nav {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    width: 2.55rem;

    height: 2.55rem;

    padding: 0;

    border: 1px solid rgba(143, 239, 255, 0.3);

    border-radius: 999px;

    background: rgba(2, 7, 15, 0.72);

    color: #f9fcff;

    font: inherit;

    font-size: 1.6rem;

    line-height: 1;

    box-shadow: 0 0.45rem 1.2rem rgba(0, 0, 0, 0.24);

    cursor: var(--site-feather-cursor, pointer);

    transition: transform 180ms ease, opacity 180ms ease, border-color 180ms ease, background-color 180ms ease;

}

.output-album-nav:hover,
.output-album-nav:focus {

    transform: translateY(-0.08rem);

    border-color: rgba(255, 240, 184, 0.6);

    background: rgba(7, 15, 29, 0.9);

    outline: none;

}

.output-album-nav:disabled {

    opacity: 0.28;

    border-color: rgba(255, 255, 255, 0.08);

    background: rgba(0, 0, 0, 0.28);

    box-shadow: none;

    cursor: default;

    transform: none;

}

.output-gallery--album {

    margin: 0;

    grid-auto-flow: column;

    grid-auto-columns: minmax(220px, 28vw);

    overflow-x: auto;

    overflow-y: hidden;

    scroll-behavior: smooth;

    padding-bottom: 0;

    scroll-snap-type: x proximity;

    overscroll-behavior-x: contain;

    scrollbar-width: none;

    -ms-overflow-style: none;

}

.output-gallery--album::-webkit-scrollbar {

    display: none;

}

.output-gallery--album > * {

    scroll-snap-align: start;

}

@media (max-width: 720px) {

    .output-album-event__header {

        grid-template-columns: 1fr;

    }

    .output-album-event__meta {

        justify-self: start;

        white-space: normal;

    }

    .output-album-carousel {

        grid-template-columns: minmax(0, 1fr);

    }

    .output-album-nav {

        position: absolute;

        top: 50%;

        z-index: 4;

        width: 2.2rem;

        height: 2.2rem;

        background: rgba(2, 7, 15, 0.9);

        backdrop-filter: blur(8px);

        transform: translateY(-50%);

    }

    .output-album-nav:hover,
    .output-album-nav:focus {

        transform: translateY(-50%);

    }

    .output-album-nav--prev {

        left: 0.45rem;

    }

    .output-album-nav--next {

        right: 0.45rem;

    }

    .output-album-track-shell {

        grid-column: 1 / -1;

    }

    .output-gallery--album {

        grid-auto-columns: minmax(74vw, 74vw);

    }

}

.output-materials-layout {

    display: grid;

    gap: 1.5rem;

    margin: 0.5rem 0 0;

}

.output-materials-section {

    display: grid;

    gap: 0.9rem;

    contain: layout paint style;

}

.output-materials-section--press-nav,
.output-materials-section--press-intro {

    padding: 1rem 1.1rem;

    border: 1px solid rgba(143, 239, 255, 0.16);

    border-radius: 1rem;

    background: rgba(4, 9, 18, 0.48);

}

.output-press-command-list {

    display: grid;

    gap: 0.55rem;

}

.output-press-menu {

    display: grid;

    gap: 1rem;

}

.output-press-command-list--menu {

    gap: 0.45rem;

}

.output-press-command-row {

    display: block;

}

.output-press-intro {

    color: #f9fcff;

    line-height: 1.5;

}

.output-materials-heading {

    color: #f7d07e;

    font-size: 1rem;

    font-weight: 700;

    letter-spacing: 0.08em;

    text-transform: uppercase;

}

.output-lightbox-open {

    overflow: hidden;

}

.output-gallery-item {

    position: relative;

    display: block;

    overflow: hidden;

    border: 1px solid rgba(143, 239, 255, 0.32);

    border-radius: 0.85rem;

    background:
      linear-gradient(135deg, rgba(0, 126, 186, 0.16), rgba(178, 38, 38, 0.16)),
      rgba(4, 9, 18, 0.82);

    box-shadow: 0 0.6rem 1.6rem rgba(0, 0, 0, 0.3);

    transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;

    cursor: var(--site-feather-cursor, zoom-in);

    contain: layout paint style;

}

.output-gallery-item::before,
.article-card__media::before,
.output-video-preview::before {

    content: "";

    position: absolute;

    inset: 0;

    z-index: 1;

    pointer-events: none;

    background:
      linear-gradient(135deg, rgba(7, 13, 24, 0.94), rgba(19, 27, 44, 0.86)),
      linear-gradient(100deg, rgba(255, 255, 255, 0) 20%, rgba(143, 239, 255, 0.14) 45%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 129, 129, 0.14) 55%, rgba(255, 255, 255, 0) 80%);

    background-size: auto, 220% 100%;

    background-position: 0 0, 100% 0;

    transition: opacity 220ms ease;

}

.output-gallery-item::after {

    content: "";

    position: absolute;

    inset: 0;

    z-index: 2;

    pointer-events: none;

    opacity: 0;

    background: radial-gradient(circle at center, rgba(255, 255, 255, 0.26) 0%, rgba(143, 239, 255, 0.24) 24%, rgba(255, 95, 95, 0.18) 48%, rgba(255, 255, 255, 0) 76%);

    transform: scale(0.92);

}

.output-gallery-item.is-loaded::before,
.article-card__media.is-loaded::before,
.output-video-preview.is-loaded::before {

    opacity: 0;

    animation: none;

}

.output-gallery-item:hover,
.output-gallery-item:focus {

    transform: translateY(-0.2rem);

    border-color: rgba(255, 240, 184, 0.65);

    box-shadow: 0 0.9rem 2rem rgba(0, 0, 0, 0.38);

    outline: none;

}

.output-gallery-item.is-opening {

    transform: scale(0.982);

    border-color: rgba(255, 240, 184, 0.78);

    box-shadow: 0 1rem 2.1rem rgba(0, 0, 0, 0.42), 0 0 1.3rem rgba(143, 239, 255, 0.18);

}

.output-gallery-item.is-opening::after {

    animation: outputGalleryClickFlash 260ms cubic-bezier(0.18, 0.84, 0.3, 1) forwards;

}

.output-gallery-image {

    display: block;

    width: 100%;

    aspect-ratio: 4 / 3;

    object-fit: cover;

    opacity: 0;

    transform: scale(1.015);

    transition: opacity 260ms ease, transform 320ms ease;

}

.output-gallery-image.is-loaded,
.article-card__image.is-loaded,
.output-video-thumb.is-loaded {

    opacity: 1;

    transform: none;

}

.output-gallery--album .output-gallery-item,
.output-gallery--album .output-gallery-video-card {

    min-width: 0;

    aspect-ratio: 4 / 3;

}

.output-gallery--album .output-gallery-item:hover,
.output-gallery--album .output-gallery-item:focus {

    transform: none;

    border-color: rgba(255, 240, 184, 0.65);

    box-shadow: 0 0.9rem 2rem rgba(0, 0, 0, 0.38);

}

.output-gallery--album .output-gallery-image,
.output-gallery--album .output-gallery-video {

    width: 100%;

    height: 100%;

    object-fit: cover;

    object-position: center center;

    background: transparent;

}

.output-gallery--album .output-gallery-image.output-gallery-image--portrait {

    object-fit: cover;

    object-position: center 65%;

    background: transparent;

}

.output-gallery-video-card {

    position: relative;

    overflow: hidden;

    border: 1px solid rgba(143, 239, 255, 0.32);

    border-radius: 0.85rem;

    background:
      linear-gradient(135deg, rgba(0, 126, 186, 0.16), rgba(178, 38, 38, 0.16)),
      rgba(4, 9, 18, 0.82);

    box-shadow: 0 0.6rem 1.6rem rgba(0, 0, 0, 0.3);

    contain: layout paint style;

}

.output-gallery-video {

    display: block;

    width: 100%;

    aspect-ratio: 4 / 3;

    object-fit: cover;

    background: #000;

}

.output-gallery-video-badge {

    position: absolute;

    right: 0.7rem;

    bottom: 0.7rem;

    padding: 0.28rem 0.55rem;

    border-radius: 999px;

    background: rgba(2, 4, 10, 0.78);

    border: 1px solid rgba(143, 239, 255, 0.38);

    color: #f9fcff;

    font-size: 0.78rem;

    font-weight: 700;

    letter-spacing: 0.03em;

}

.output-video-grid {

    display: grid;

    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));

    gap: 1rem;

}

.output-video-card {

    display: block;

    overflow: hidden;

    border: 1px solid rgba(143, 239, 255, 0.32);

    border-radius: 0.85rem;

    background:
      linear-gradient(135deg, rgba(0, 126, 186, 0.16), rgba(178, 38, 38, 0.16)),
      rgba(4, 9, 18, 0.82);

    box-shadow: 0 0.6rem 1.6rem rgba(0, 0, 0, 0.3);

    contain: layout paint style;

}

.output-video-card--portrait {

    grid-column: span 2;

    width: min(100%, 33rem);

    justify-self: center;

    padding: 0 0 0.55rem;

}

.output-video-card--landscape {

    grid-column: span 2;

}

.output-video-card--fallback {

    text-decoration: none;

    transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;

}

.output-video-card--fallback:hover,
.output-video-card--fallback:focus {

    transform: translateY(-0.2rem);

    border-color: rgba(255, 240, 184, 0.65);

    box-shadow: 0 0.9rem 2rem rgba(0, 0, 0, 0.38);

    outline: none;

}

.output-video-preview {

    display: block;

    position: relative;

    overflow: hidden;

    background: #000;

}

.output-video-thumb {

    display: block;

    width: 100%;

    object-fit: cover;

    opacity: 0;

    transform: scale(1.015);

    transition: opacity 260ms ease, transform 320ms ease;

}

.output-video-frame {

    display: block;

    width: 100%;

    height: auto;

    border: 0;

    background: #000;

}

.output-video-title {

    display: block;

    max-width: 94%;

    padding: 1rem 1rem 0.35rem 1.15rem;

    color: #f9fcff;

    font-weight: 700;

    font-size: clamp(1rem, 1.2vw, 1.35rem);

    line-height: 1.22;

    letter-spacing: 0.01em;

    text-wrap: balance;

}

.output-video-card--portrait .output-video-title {

    max-width: min(100% - 2.4rem, 20rem);

    margin: 0 auto;

    padding-left: 0;

    padding-right: 0;

    font-size: clamp(0.98rem, 1.05vw, 1.15rem);

    text-align: center;

}

.output-video-card--portrait .output-video-preview,
.output-video-card--portrait .output-video-frame {

    width: min(100% - 2rem, 20rem);

    margin: 1rem auto 0;

    border-radius: 1.1rem;

    overflow: hidden;

    border: 1px solid rgba(143, 239, 255, 0.22);

    box-shadow: 0 0.8rem 1.8rem rgba(0, 0, 0, 0.34);

}

.output-video-card--landscape .output-video-title {

    font-size: clamp(1.08rem, 1.35vw, 1.55rem);

    max-width: 88%;

}

.output-reading-grid {

    display: grid;

    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));

    gap: 1rem;

}

.output-reading-card {

    position: relative;

    display: grid;

    gap: 0.55rem;

    padding: 1.2rem 1.1rem 1rem 1.2rem;

    border: 1px solid rgba(255, 110, 110, 0.26);

    border-radius: 0.85rem;

    background:
      linear-gradient(135deg, rgba(32, 13, 18, 0.96), rgba(17, 20, 33, 0.94));

    box-shadow: 0 0.6rem 1.6rem rgba(0, 0, 0, 0.3);

    text-decoration: none;

    transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;

    contain: layout paint style;

}

.output-reading-card::before {

    content: "PDF";

    position: absolute;

    top: 0.9rem;

    right: 0.95rem;

    padding: 0.16rem 0.42rem;

    border-radius: 0.42rem;

    background: linear-gradient(135deg, rgba(255, 113, 113, 0.95), rgba(185, 24, 24, 0.98));

    color: #fff7f7;

    font-size: 0.68rem;

    font-weight: 700;

    letter-spacing: 0.08em;

    line-height: 1;

    box-shadow: 0 0.3rem 0.9rem rgba(122, 11, 11, 0.35);

}

.output-reading-card:hover,
.output-reading-card:focus {

    transform: translateY(-0.2rem);

    border-color: rgba(255, 132, 132, 0.62);

    box-shadow: 0 0.9rem 2rem rgba(0, 0, 0, 0.38);

    outline: none;

}

.output-reading-title {

    color: #f9fcff;

    font-size: 1.18rem;

    font-weight: 700;

    line-height: 1.2;

    padding-right: 3.2rem;

}

.output-reading-description {

    color: rgba(249, 252, 255, 0.76);

    line-height: 1.4;

}

.showcase-page {

    display: grid;

    gap: 1.15rem;

    margin-top: 0.4rem;

    contain: layout paint style;

}

.showcase-copy {

    display: grid;

    gap: 0.9rem;

    padding: 0;

    border: none;

    border-radius: 0;

    background: none;

}

.showcase-copy p {

    margin: 0;

    color: rgba(249, 252, 255, 0.92);

    line-height: 1.62;

}

.showcase-copy--closing {

    border: none;

}

.showcase-emphasis {

    color: #8fefff;

    font-weight: 700;

    text-decoration: underline;

    text-underline-offset: 0.15em;

}

.showcase-media-grid {

    display: grid;

    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 1rem;

}

.showcase-figure {

    display: grid;

    gap: 0.55rem;

    margin: 0;

    contain: layout paint style;

}

.showcase-figure__link {

    display: block;

    width: 100%;

}

.showcase-figure__image {

    width: 100%;

    aspect-ratio: 16 / 10;

    object-fit: cover;

}

.showcase-figure--wide .showcase-figure__image {

    aspect-ratio: 16 / 9;

}

.showcase-figure__caption {

    color: rgba(255, 240, 184, 0.9);

    font-size: 0.86rem;

    line-height: 1.35;

}

.output-video-note {

    margin-top: 0.85rem;

    color: rgba(249, 252, 255, 0.72);

    font-size: 0.92rem;

}

@media (max-width: 900px) {

    .output-video-card--landscape {

        grid-column: auto;

    }

    .output-video-card--portrait {

        grid-column: auto;

        padding-bottom: 0;

    }

    .output-video-card--portrait .output-video-preview,
    .output-video-card--portrait .output-video-frame {

        width: 100%;

        margin-top: 0;

        border-radius: 0;

        border-left: 0;

        border-right: 0;

        border-top: 0;

    }

    .output-video-card--portrait .output-video-title {

        max-width: 94%;

        padding-left: 1.15rem;

        padding-right: 1rem;

        text-align: left;

    }

    .showcase-media-grid {

        grid-template-columns: 1fr;

    }

}

.output-gallery-hint {

    position: absolute;

    right: 0.7rem;

    bottom: 0.7rem;

    padding: 0.28rem 0.55rem;

    border-radius: 999px;

    background: rgba(2, 4, 10, 0.78);

    border: 1px solid rgba(143, 239, 255, 0.38);

    color: #f9fcff;

    font-size: 0.78rem;

    font-weight: 700;

    letter-spacing: 0.03em;

}

.output-lightbox {

    position: fixed;

    inset: 0;

    z-index: 9999;

    display: flex;

    align-items: center;

    justify-content: center;

    padding: 2rem;

    background: rgba(2, 4, 10, 0.88);

    /* Opaque enough to separate the photo without blurring the whole viewport. */

}

.output-lightbox--hidden {

    display: none;

}

.output-lightbox__dialog {

    position: relative;

    max-width: min(92vw, 1100px);

    width: 100%;

    animation: outputLightboxPopIn 220ms cubic-bezier(0.19, 1, 0.22, 1);

}

.output-lightbox__viewer {

    position: relative;

    display: flex;

    align-items: center;

    justify-content: center;

}

.output-lightbox__image {

    display: block;

    max-width: 100%;

    max-height: 82vh;

    border-radius: 1.1rem;

    border: 1px solid rgba(143, 239, 255, 0.3);

    box-shadow: 0 1.2rem 3rem rgba(0, 0, 0, 0.5);

}

.output-lightbox__nav {

    position: absolute;

    top: 50%;

    transform: translateY(-50%);

    width: 3rem;

    height: 3rem;

    border: 1px solid rgba(143, 239, 255, 0.42);

    border-radius: 999px;

    background: rgba(2, 4, 10, 0.9);

    color: #f9fcff;

    font: inherit;

    font-size: 2rem;

    line-height: 1;

    cursor: var(--site-feather-cursor, pointer);

    z-index: 1;

    transition: transform 180ms ease, opacity 180ms ease, border-color 180ms ease, background-color 180ms ease;

}

.output-lightbox__nav:hover,
.output-lightbox__nav:focus {

    border-color: rgba(255, 240, 184, 0.7);

    background: rgba(7, 15, 29, 0.96);

    outline: none;

}

.output-lightbox__nav:disabled {

    opacity: 0.28;

    cursor: default;

}

.output-lightbox__nav--prev {

    left: 1rem;

}

.output-lightbox__nav--next {

    right: 1rem;

}

.output-lightbox__caption {

    margin-top: 0.85rem;

    text-align: center;

    color: #f9fcff;

    font-weight: 700;

}

.output-lightbox__close {

    position: absolute;

    top: 0.75rem;

    right: 0.75rem;

    width: 2.4rem;

    height: 2.4rem;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    border: 1px solid rgba(143, 239, 255, 0.42);

    border-radius: 999px;

    background: rgba(2, 4, 10, 0.94);

    color: #f9fcff;

    font-size: 1.5rem;

    line-height: 1;

    cursor: var(--site-feather-cursor, pointer);

    z-index: 3;

    box-shadow: 0 0.45rem 1.2rem rgba(0, 0, 0, 0.34);

    transition: transform 220ms cubic-bezier(0.2, 0.8, 0.2, 1.2), border-color 180ms ease, background-color 180ms ease;

}

.output-lightbox__close:hover,
.output-lightbox__close:focus-visible {

    border-color: #ff92ae;
    background: rgba(72, 16, 40, 0.96);
    outline: none;

}

@media (hover: hover) and (pointer: fine) {

    .output-album-nav--prev:not(:disabled):hover {
        transform: translateX(-0.2rem) scale(1.12);
    }

    .output-album-nav--next:not(:disabled):hover {
        transform: translateX(0.2rem) scale(1.12);
    }

    .output-lightbox__nav--prev:not(:disabled):hover {
        transform: translateY(-50%) translateX(-0.2rem) scale(1.12);
    }

    .output-lightbox__nav--next:not(:disabled):hover {
        transform: translateY(-50%) translateX(0.2rem) scale(1.12);
    }

    .output-lightbox__close:hover {
        transform: rotate(90deg) scale(1.12);
    }

}

.output-album-nav:not(:disabled):focus-visible {
    transform: scale(1.12);
}

.output-lightbox__nav:not(:disabled):focus-visible {
    transform: translateY(-50%) scale(1.12);
}

.output-lightbox__close:focus-visible {
    transform: rotate(90deg) scale(1.12);
}

.output-album-nav:not(:disabled):active {
    transform: scale(0.96);
}

.output-lightbox__nav:not(:disabled):active {
    transform: translateY(-50%) scale(0.96);
}

.output-lightbox__close:active {
    transform: rotate(90deg) scale(0.96);

}

.output-lightbox--single .output-lightbox__nav {

    display: none;

}

@media (max-width: 720px) {

    .output-lightbox {

        padding: 1rem;

    }

    .output-lightbox__nav {

        width: 2.5rem;

        height: 2.5rem;

        font-size: 1.7rem;

    }

    .output-lightbox__nav--prev {

        left: 0.5rem;

    }

    .output-lightbox__nav--next {

        right: 0.5rem;

    }

    .output-lightbox__close {

        top: 0.4rem;

        right: 0.4rem;

        width: 2.2rem;

        height: 2.2rem;

    }

}

.article-mosaic {

    display: grid;

    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));

    gap: 1rem;

    margin-top: 0.5rem;

}

.article-card {

    display: flex;

    flex-direction: column;

    overflow: hidden;

    border-radius: 1.1rem;

    border: 1px solid rgba(143, 239, 255, 0.2);

    background:
      linear-gradient(180deg, rgba(9, 18, 34, 0.52), rgba(2, 4, 10, 0.92)),
      rgba(4, 9, 18, 0.82);

    box-shadow: 0 0.9rem 2rem rgba(0, 0, 0, 0.24);

    color: inherit;

    text-decoration: none;

    transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;

    contain: layout paint style;

}

.article-card:hover,
.article-card:focus {

    transform: translateY(-0.25rem);

    border-color: rgba(255, 240, 184, 0.48);

    box-shadow: 0 1.2rem 2.4rem rgba(0, 0, 0, 0.34);

    outline: none;

}

.article-card__media {

    display: block;

    position: relative;

    aspect-ratio: 16 / 9;

    overflow: hidden;

    background: rgba(255, 255, 255, 0.04);

}

.article-card__image {

    display: block;

    width: 100%;

    height: 100%;

    object-fit: cover;

    opacity: 0;

    transform: scale(1.015);

    transition: opacity 260ms ease, transform 320ms ease;

}

.article-card__body {

    display: grid;

    gap: 0.7rem;

    padding: 1rem;

}

.article-card__date {

    font-size: 0.76rem;

    letter-spacing: 0.08em;

    text-transform: uppercase;

    color: #fff0b8;

}

.article-card__title {

    font-size: 1.08rem;

    line-height: 1.28;

    font-weight: 700;

    color: #f9fcff;

}

.article-card__excerpt {

    color: rgba(249, 252, 255, 0.76);

    line-height: 1.5;
    hyphens: auto;

}

.article-card__cta {

    color: #63e7ff;

    font-weight: 700;

    text-decoration: underline;

    text-underline-offset: 0.15em;

}

.schedule-layout {

    display: grid;

    gap: 1.4rem;

    margin-top: 0.5rem;

}

.schedule-section {

    padding: 1.15rem;

    border-radius: 1.3rem;

    border: 1px solid rgba(143, 239, 255, 0.16);

    background: rgba(4, 9, 18, 0.72);

    box-shadow: 0 0.8rem 2rem rgba(0, 0, 0, 0.22);

    contain: layout paint style;

}

.schedule-section__year {

    margin: 0 0 1rem;

    padding-bottom: 0.75rem;

    border-bottom: 1px solid rgba(143, 239, 255, 0.2);

    color: #fff0b8;

    font: inherit;

    font-size: clamp(1.4rem, 2vw, 1.9rem);

    font-weight: 700;

    letter-spacing: 0.08em;

}

.schedule-grid {

    display: grid;

    grid-template-columns: repeat(auto-fit, minmax(min(100%, 250px), 1fr));

    gap: 1rem;

}

.schedule-card {

    display: flex;

    min-width: 0;

    overflow-wrap: anywhere;

    flex-direction: column;

    gap: 0.9rem;

    padding: 1rem;

    border-radius: 1rem;

    border: 1px solid rgba(255, 255, 255, 0.08);

    background: rgba(2, 4, 10, 0.78);

}

.schedule-card--tournament {

    border-color: rgba(99, 231, 255, 0.2);

}

.schedule-card--showcase {

    border-color: rgba(255, 116, 116, 0.18);

}

.schedule-card__body {

    display: grid;

    gap: 0.55rem;

}

.schedule-card__date {

    font-size: 1.02rem;

    font-weight: 700;

}

.schedule-card__name {

    color: #fff0b8;

    font-weight: 700;

    line-height: 1.45;

}

.schedule-card__meta,
.schedule-card__address,
.schedule-card__ticket {

    line-height: 1.45;

}

.schedule-card__address {

    color: rgba(249, 252, 255, 0.75);

}

.schedule-card__teams {
    display: grid;
    gap: 0.6rem;
    min-width: 0;
}

.schedule-card__team {
    display: grid;
    gap: 0.3rem;
    min-width: 0;
    padding: 0.65rem;
    border-left: 3px solid currentColor;
    border-radius: 0.35rem;
}

.schedule-card__team--red {
    color: #ff9da8;
    background: rgba(255, 92, 114, 0.07);
}

.schedule-card__team--blue {
    color: #8fefff;
    background: rgba(99, 231, 255, 0.07);
}

.schedule-card__team-label {
    line-height: 1.45;
}

.schedule-card__support {
    padding-top: 0.6rem;
    border-top: 1px solid rgba(255, 240, 184, 0.2);
    color: #fff0b8;
    line-height: 1.45;
}

.schedule-card__ticket {

    display: inline-flex;

    align-items: center;

    gap: 0.35rem;

    font-weight: 700;

    text-decoration: none;

}

.schedule-card__ticket-label {

    text-decoration: underline;

    text-underline-offset: 0.15em;

}

.schedule-card__ticket--pending {

    color: #fff0b8;

}

#prompt {

    white-space: nowrap;

    display: -webkit-box;

    -webkit-box-pack: center;

    -webkit-box-orient: vertical;

    display: -moz-box;

    -moz-box-pack: center;

    -moz-box-orient: vertical;

    display: box;

    box-pack: center;

    box-orient: vertical;

    -webkit-user-select: text;

    -moz-user-select: text;

    user-select: text;

}

.prompt-color {

    color: #e09f14;

}

.input-line {

    display: -webkit-box;

    -webkit-box-orient: horizontal;

    -webkit-box-align: stretch;

    display: -moz-box;

    -moz-box-orient: horizontal;

    -moz-box-align: stretch;

    display: box;

    box-orient: horizontal;

    box-align: stretch;

    clear: both;

}

.input-line > div:nth-child(2) {

    -webkit-box-flex: 1;

    -moz-box-flex: 1;

    box-flex: 1;

}



#githubImg img {

    position: fixed;

    bottom: 0; right: 0;

    border: 0;

}



/* SIDE NAV */



#sidenavBtn {

    position: absolute !important;

    padding: 2px !important; 

    top: 0 !important;

    right: 7px !important;

    font-size: 35px !important;

}



#sidenav img {

    display: block;

    position: absolute;

    left: 50%;

    transform: translateX(-50%);

    bottom: 100px;

    transition: 0.3s;

    opacity: 0;

}



#sidenav img:focus {

    outline: none;

}



#sidenav button {

    padding: 8px 8px 8px 32px;

    cursor: var(--site-feather-cursor, pointer);

    text-decoration: none;

    font-size: 15pt;

    color: white;

    display: block;

    transition: 0.3s;

    background:none !important;

    border:none;

}

#sidenav button:hover {

    color: #442e00;

}



@media screen and (max-height: 450px) {



    body {

        font-size: 11pt;

    }

    #sidenav {

       padding-top: 15px;

   }

    #sidenav a {

       font-size: 13px;

   }

}

/*Estilo para la clasificación*/

ul.leaders {
    max-width: 40em;
    padding: 0;
    overflow-x: hidden;
    list-style: none
}

ul.leaders li:before {
    float: left;
    width: 0;
    white-space: nowrap;
    content:
 ". . . . . . . . . . . . . . . . . . . . "
 ". . . . . . . . . . . . . . . . . . . . "
 ". . . . . . . . . . . . . . . . . . . . "
 ". . . . . . . . . . . . . . . . . . . . "
}

ul.leaders span:first-child {
    padding-right: 0.33em;
    background: rgba(2, 4, 10, 0.92)
}

ul.leaders span + span {
    float: right;
    padding-left: 0.33em;
    background: rgba(2, 4, 10, 0.92)
}

@media screen and (max-width: 1024px) {

		html, body {

    font-size: 15px;

}

    #container {

	 padding: .1em 1.5em 1em 1em;

    margin-left: 0%;

    margin-right: 0%;

	align-self: center;

		width: auto;

    }

    #site-footer {

        margin-left: 1rem;

        margin-right: 1rem;

        font-size: 0.82rem;

    }

	    #containerascii {

		 
	font-size: 2.5vw;
	line-height: 3vw;		

    }

    #hero-subtitle {

        margin: 0 auto 1.65rem;

        font-size: 0.95rem;

        letter-spacing: 0.05em;

    }

}

@media (pointer: coarse), (max-width: 900px) {

    body {

        background-attachment: scroll;

        background:
          linear-gradient(90deg, rgba(0, 181, 255, 0.2) 0%, rgba(0, 181, 255, 0.05) 34%, rgba(0, 0, 0, 0) 56%),
          linear-gradient(270deg, rgba(255, 67, 67, 0.2) 0%, rgba(255, 67, 67, 0.05) 34%, rgba(0, 0, 0, 0) 56%),
          linear-gradient(90deg, rgba(0, 126, 186, 0.26) 0%, rgba(6, 10, 18, 0.68) 42%, rgba(6, 10, 18, 0.68) 58%, rgba(178, 38, 38, 0.26) 100%),
          radial-gradient(circle at 14% 18%, rgba(0, 181, 255, 0.2), transparent 48%),
          radial-gradient(circle at 86% 18%, rgba(255, 67, 67, 0.2), transparent 48%),
          #02040a;
    }

    #background-effects {

        position: fixed;

        inset: 0;

    }

    #background-effects {

        opacity: 0.82;

    }

    #background-effects > *,
    #containerascii[data-glow-text]::after,
    .hero-subtitle__glow {
        animation: none;
        will-change: auto;
    }

    .aquarium-current {
        transform: translateX(-50%);
    }

    #containerascii::after,
    .hero-subtitle__glow {
        opacity: 0;
    }

    .aquarium-glow {

        opacity: 0.26;

    }

    .output-gallery--album {

        -webkit-overflow-scrolling: touch;

        touch-action: pan-x pinch-zoom;

    }

    .output-album-nav,
    .output-lightbox {

        backdrop-filter: none;

    }

    .output-gallery-item,
    .output-video-card--fallback,
    .output-reading-card,
    .article-card,
    .output-album-nav,
    .output-lightbox__nav {

        transition: none;

    }

}

@keyframes outputGalleryClickFlash {

    0% {

        opacity: 0;

        transform: scale(0.88);

    }

    32% {

        opacity: 1;

        transform: scale(1);

    }

    100% {

        opacity: 0;

        transform: scale(1.08);

    }

}

@keyframes outputLightboxPopIn {

    0% {

        opacity: 0;

        transform: translateY(0.6rem) scale(0.97);

    }

    100% {

        opacity: 1;

        transform: none;

    }

}

@media (prefers-reduced-motion: reduce) {

    html,
    body,
    .output-gallery--album {

        scroll-behavior: auto;

    }

    #background-effects > *,
    #containerascii::after,
    .hero-subtitle__glow,
    .output-gallery-item::after,
    .output-lightbox__dialog {

        animation: none !important;
        will-change: auto;

    }

    .output-album-nav,
    .output-lightbox__nav,
    .output-lightbox__close {
        transition: none !important;
    }

    .output-album-nav,
    .output-lightbox__close {
        transform: none !important;
    }

    .output-lightbox__nav {
        transform: translateY(-50%) !important;
    }

}

.scrib-world-link{display:inline-block;margin-left:1rem;color:#64e7e2;text-decoration:none;white-space:nowrap}.scrib-world-link:hover,.scrib-world-link:focus-visible{text-decoration:underline}
