/* Astillas del Vacío v37: fondo ilustrado completo, sin estirar bandas; carteles vinculados a las coordenadas de la imagen 16:9. */
:root{color-scheme:dark;--white:#f4edff;--violet:#d7bcff;--muted:#baaace;--edge:rgba(219,184,255,.34);--glass:rgba(12,7,30,.76);font-family:Inter,"Segoe UI",Arial,sans-serif}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;background:#06040e;color:var(--white)}body{overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit}a:focus-visible,button:focus-visible{outline:2px solid #fff;outline-offset:4px} .sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;clip:rect(0,0,0,0);overflow:hidden;white-space:nowrap;border:0}
.ts-shell{isolation:isolate;position:relative;min-height:100svh;height:100dvh;width:100%;overflow:hidden;background:#11091f url('../assets/times-square-redes-central-2048.png?v=37') center / cover no-repeat}
.ts-shell::before{display:none}
.ts-ambient{display:none}
.ts-backdrop{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,4,14,.13) 0%,rgba(4,4,14,0) 25%,rgba(4,4,14,0) 75%,rgba(4,4,14,.14) 100%);pointer-events:none;z-index:2}
.ts-image-frame{width:max(100vw,calc(100dvh * 16 / 9));aspect-ratio:16 / 9;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:1;overflow:visible;filter:saturate(1.04) contrast(1.03)}
.ts-image{display:block;width:100%;height:100%;object-fit:cover;user-select:none;pointer-events:none;-webkit-user-drag:none}
.ts-hotspots{position:absolute;inset:0}
.ts-billboard{position:absolute;background:transparent;display:block;cursor:pointer;border:0;padding:0;z-index:3;outline:0;transition:filter .3s,transform .3s;transform-origin:center;touch-action:manipulation}
.ts-billboard__halo{position:absolute;inset:1px;border:2px solid rgba(228,203,255,0);background:rgba(164,101,255,0);box-shadow:0 0 0 rgba(170,100,255,0);transition:all .3s;pointer-events:none}
.ts-billboard:hover .ts-billboard__halo,.ts-billboard:focus-visible .ts-billboard__halo{border-color:rgba(242,222,255,.86);box-shadow:inset 0 0 28px rgba(206,148,255,.15),0 0 22px rgba(194,111,255,.45);background:rgba(195,136,255,.065)}
.ts-billboard:focus-visible{outline:2px solid #fff;outline-offset:1px}
.ts-billboard.is-selected .ts-billboard__halo{background:rgba(241,197,255,.16);border-color:rgba(245,231,255,.9)}
.ts-header{position:absolute;z-index:6;top:0;left:0;right:0;padding:clamp(14px,2.5vh,28px) clamp(20px,3vw,65px);display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(to bottom,rgba(6,4,19,.55),rgba(6,4,19,0));font-size:12px;letter-spacing:.14em}
.ts-brand{display:flex;align-items:center;gap:14px;text-decoration:none;white-space:nowrap;font-size:clamp(12px,1vw,17px);font-weight:800;letter-spacing:.16em;text-shadow:0 2px 16px #060013}
.ts-brand__star{color:#cfbcff;font-size:31px;font-weight:400}.ts-brand__thin{font-weight:350}.ts-header__right{display:flex;align-items:center;gap:clamp(12px,3vw,44px)}.ts-status{font-size:10px;color:#d2bee8;white-space:nowrap}.ts-status__pulse,.ts-live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#d4aaff;box-shadow:0 0 12px #9c65ff;margin-right:6px;vertical-align:middle;animation:ts-blink 2.7s infinite}.ts-back{text-decoration:none;color:#eee7ff;font-size:11px;font-weight:700;white-space:nowrap}.ts-back:hover{color:#e4b3ff}
.ts-guidance{position:absolute;z-index:5;left:clamp(24px,4vw,80px);bottom:clamp(30px,5vh,64px);pointer-events:none;text-shadow:0 2px 20px #080410,0 3px 4px #080410;max-width:400px}.ts-guidance__eyebrow{font-size:9px;letter-spacing:.25em;color:#edcaff;font-weight:800}.ts-guidance h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(21px,2.6vw,42px);font-weight:400;line-height:.98;letter-spacing:.02em;margin:12px 0 10px}.ts-guidance h1 em{font-style:normal;color:#d6b2ff}.ts-guidance p{font-size:clamp(11px,.9vw,14px);color:#eadffa;line-height:1.45;max-width:290px;margin:0}
.ts-bottom-label{position:absolute;right:clamp(20px,3vw,60px);bottom:clamp(25px,4.5vh,55px);z-index:5;display:flex;gap:13px;align-items:center;font-size:9px;color:#d6c5e7;letter-spacing:.2em}.ts-bottom-label i{width:32px;height:1px;background:#b289de;display:block}
.ts-atmosphere{position:absolute;inset:0;pointer-events:none;z-index:3;overflow:hidden}.ts-atmosphere span{position:absolute;bottom:-25%;width:85vw;height:25vh;filter:blur(45px);opacity:.18;background:radial-gradient(ellipse at center,#ab76e5,transparent 65%);animation:ts-mist 18s ease-in-out infinite alternate}.ts-atmosphere span:nth-child(2){left:45%;animation-duration:26s;opacity:.13}.ts-atmosphere span:nth-child(3){left:-35%;animation-duration:32s;opacity:.10}
.ts-shade{position:absolute;inset:0;z-index:12;pointer-events:none;opacity:0;background:rgba(4,2,11,.62);backdrop-filter:blur(0);transition:opacity .5s,backdrop-filter .5s}.ts-shade.is-visible{opacity:1;pointer-events:auto;backdrop-filter:blur(3.5px)}
.ts-flight{display:none;position:fixed;z-index:14;box-sizing:border-box;background:#160b34 center/100% 100% no-repeat;box-shadow:0 0 45px rgba(201,144,255,.66),0 30px 100px rgba(0,0,0,.55);border:1px solid rgba(227,199,255,.6);overflow:hidden;pointer-events:none;will-change:transform,left,top,width,height}.ts-flight.is-live{display:block}.ts-flight__raster{position:absolute;inset:0;background:linear-gradient(155deg,rgba(255,255,255,.21),transparent 34%,rgba(133,70,255,.11) 70%,rgba(255,255,255,.07));mix-blend-mode:screen}.ts-flight__scan{position:absolute;left:0;right:0;height:2px;top:0;background:linear-gradient(90deg,transparent,#f7e7ff,transparent);box-shadow:0 0 20px #e4c1ff;animation:ts-scan .55s linear infinite}
.ts-panel{position:fixed;left:50%;top:50%;transform:translate(-50%,-46%) scale(.96);width:min(770px,calc(100vw - 64px));height:min(620px,calc(100dvh - 110px));z-index:15;display:flex;flex-direction:column;visibility:hidden;pointer-events:none;opacity:0;overflow:hidden;background:linear-gradient(140deg,rgba(29,16,58,.84),rgba(9,7,30,.84) 55%,rgba(22,9,48,.84));border:1px solid rgba(221,187,255,.50);border-radius:15px;box-shadow:0 45px 110px rgba(1,0,8,.75),inset 0 0 0 1px rgba(255,255,255,.045),0 0 55px rgba(164,91,255,.22);backdrop-filter:blur(22px) saturate(1.25);transition:opacity .33s ease,transform .42s cubic-bezier(.2,.8,.2,1),visibility .35s}
.ts-panel.is-open{visibility:visible;opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1)}.ts-panel__topline{display:flex;justify-content:space-between;border-bottom:1px solid rgba(195,155,255,.15);padding:14px 25px;font-size:9px;letter-spacing:.22em;font-weight:750;color:#ac90d4}.ts-panel__topline b{color:#e2c3ff}.ts-panel__heading{display:flex;gap:20px;justify-content:space-between;align-items:flex-start;padding:22px 26px 16px}.ts-panel__overline{font-size:9px;letter-spacing:.16em;color:#d6aaff;font-weight:850}.ts-panel__heading h2{font-family:'Segoe UI',Arial,sans-serif;font-size:clamp(29px,3.6vw,51px);line-height:1;margin:11px 0 8px;letter-spacing:-.035em;font-weight:650}.ts-panel__heading p{max-width:510px;font-size:13px;line-height:1.5;color:#d7cbe5;margin:0}.ts-panel__close{border:1px solid rgba(214,181,255,.35);background:rgba(167,118,224,.12);padding:11px 12px;color:#f3e8ff;cursor:pointer;display:flex;gap:10px;align-items:center;border-radius:5px;white-space:nowrap;font-size:11px;font-weight:800;letter-spacing:.12em}.ts-panel__close:hover{background:rgba(167,118,224,.25)}.ts-panel__divider{height:1px;background:linear-gradient(90deg,#c685ff 0%,rgba(231,182,255,.2) 65%,transparent);margin:0 26px}.ts-panel__content{overflow-y:auto;min-height:0;flex:1;padding:18px 26px}.ts-panel__labelrow{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:17px}.ts-panel__labelrow h3{font-size:10px;letter-spacing:.15em;margin:0}.ts-panel__labelrow span{font-size:9px;color:#ae93ca;letter-spacing:.10em;text-align:right}.ts-posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ts-post{background:rgba(11,9,28,.72);border:1px solid rgba(192,150,239,.23);border-radius:7px;overflow:hidden;text-decoration:none;min-width:0;transition:border-color .25s,transform .25s}.ts-post:hover{transform:translateY(-3px);border-color:rgba(222,194,255,.72)}.ts-post__visual{aspect-ratio:1/1;background:linear-gradient(145deg,#312052,#110e2c);display:grid;place-items:center;overflow:hidden}.ts-post__visual img{width:100%;height:100%;object-fit:cover}.ts-post__visual span{font-size:21px;color:rgba(221,191,255,.33)}.ts-post__text{padding:10px 11px;font-size:12px;line-height:1.45;color:#eadff6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.ts-post__date{padding:0 11px 10px;color:#aa94ca;font-size:9px;letter-spacing:.08em}.ts-empty{grid-column:1/-1;display:flex;flex-direction:column;gap:11px;align-items:center;justify-content:center;min-height:150px;padding:22px 24px;border:1px solid rgba(212,169,255,.24);border-radius:8px;background:linear-gradient(140deg,rgba(63,32,99,.28),rgba(12,8,30,.33));text-align:center}.ts-empty svg{width:32px;height:32px;color:#e2c7ff}.ts-empty strong{font-size:14px;letter-spacing:.13em}.ts-empty p{font-size:12px;color:#d2c2e2;max-width:420px;line-height:1.7;margin:0}.ts-panel__footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 26px;border-top:1px solid rgba(207,157,246,.18);background:rgba(9,6,24,.35)}.ts-panel__footer span{font-size:11px;color:#b9a4cb}.ts-panel__footer a{display:inline-flex;align-items:center;justify-content:center;min-height:39px;padding:0 16px;text-decoration:none;font-size:11px;font-weight:800;letter-spacing:.06em;color:#fff;background:linear-gradient(110deg,rgba(132,72,187,.68),rgba(86,48,158,.72));border:1px solid rgba(207,170,255,.52);border-radius:5px;white-space:nowrap}.ts-panel__footer a:hover{box-shadow:0 0 18px rgba(176,117,255,.4)}.ts-panel__footer a[hidden]{display:none}.rotate-device{display:none}
@keyframes ts-blink{0%,85%,100%{opacity:1}90%{opacity:.3}}@keyframes ts-mist{from{transform:translateX(-5%) scale(1)}to{transform:translateX(17%) scale(1.25)}}@keyframes ts-scan{from{top:-2%}to{top:102%}}
@media(max-width:820px){.ts-header{padding:12px 20px}.ts-brand{font-size:11px}.ts-header__right .ts-status{display:none}.ts-back{font-size:10px}.ts-guidance{left:24px;bottom:16px}.ts-guidance h1{font-size:25px}.ts-guidance p{display:none}.ts-bottom-label{right:18px;bottom:18px}.ts-panel{width:min(92vw,700px);height:min(85dvh,620px)}.ts-panel__topline{padding:11px 16px}.ts-panel__heading{padding:14px 16px 10px}.ts-panel__content{padding:12px 16px}.ts-panel__footer{padding:11px 16px}.ts-panel__divider{margin:0 16px}}
@media(max-height:600px){.ts-guidance{bottom:15px}.ts-guidance h1{font-size:22px;margin:4px 0}.ts-guidance__eyebrow{font-size:8px}.ts-panel{height:calc(100dvh - 54px);width:min(780px,calc(100vw - 52px))}.ts-panel__topline{padding:9px 18px}.ts-panel__heading{padding:12px 18px 9px}.ts-panel__heading h2{font-size:27px;margin:5px 0}.ts-panel__heading p{font-size:11px}.ts-panel__content{padding:8px 18px}.ts-panel__footer{padding:8px 18px}.ts-panel__divider{margin:0 18px}.ts-posts{grid-template-columns:repeat(3,minmax(0,1fr))}.ts-empty{min-height:100px;padding:12px}}
@media(orientation:portrait) and (max-width:1100px) and (pointer:coarse){.ts-shell{display:none}.rotate-device{display:flex;position:fixed;inset:0;background:#080511;align-items:center;justify-content:center}.rotate-device img{width:100%;height:100%;object-fit:contain}}
@media(prefers-reduced-motion:reduce){.ts-status__pulse,.ts-live-dot,.ts-atmosphere span,.ts-flight__scan{animation:none}.ts-billboard,.ts-shade,.ts-panel,.ts-post{transition:none}}

/* v65 — precise screen surfaces and a continuous, reversible channel opening. */
.ts-billboard{transition:none;transform:none;filter:none}
.ts-billboard__halo{inset:0;width:100%;height:100%;display:block;border:0;background:none;box-shadow:none;overflow:visible;transition:none}
.ts-billboard__surface{fill:rgba(215,183,255,0);stroke:none;stroke-width:0;transition:fill .18s ease}
.ts-billboard:hover .ts-billboard__halo,.ts-billboard:focus-visible .ts-billboard__halo,.ts-billboard.is-selected .ts-billboard__halo{border:0;background:none;box-shadow:none}
.ts-billboard:hover .ts-billboard__surface,.ts-billboard:focus-visible .ts-billboard__surface{fill:rgba(215,183,255,.09);stroke:none}
.ts-billboard:focus-visible{outline:0}
.ts-billboard.is-selected .ts-billboard__surface{fill:rgba(215,183,255,.055);stroke:none}
.ts-billboard.is-transmitting .ts-billboard__surface{animation:ts-channel-handshake .22s ease-out 1}
.ts-panel,.ts-panel.is-open{transform:translate(-50%,-50%);transform-origin:0 0;transition:none}
.ts-panel{width:min(770px,calc(100vw - 40px));height:min(620px,calc(100dvh - 64px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}
.ts-panel.is-morphing{will-change:transform,clip-path;backdrop-filter:none;border-color:rgba(221,187,255,.5);border-width:0}
.ts-panel__interior{position:relative;z-index:1;display:flex;flex-direction:column;width:100%;height:100%;min-height:0}
.ts-panel__signal{position:absolute;inset:0;z-index:2;width:100%;height:100%;object-fit:fill;opacity:0;pointer-events:none;user-select:none}
.ts-panel__sweep{position:absolute;inset:0;z-index:3;pointer-events:none;opacity:0;background:linear-gradient(180deg,transparent 45%,rgba(213,174,255,.05) 48%,rgba(248,224,255,.52) 50%,rgba(213,174,255,.07) 51%,transparent 55%)}
.ts-shade{transition:none;backdrop-filter:none;background:rgba(4,2,11,.48)}
.ts-shade.is-visible{backdrop-filter:none}
.ts-panel__topline,.ts-panel__heading,.ts-panel__divider,.ts-panel__footer{flex-shrink:0}
.ts-panel__heading>div{min-width:0}
@keyframes ts-channel-handshake{0%,100%{fill:rgba(215,183,255,.055)}22%{fill:rgba(239,204,255,.23)}45%{fill:rgba(215,183,255,.035)}68%{fill:rgba(239,204,255,.14)}}
@media(max-height:500px){.ts-panel{height:calc(100dvh - 28px)}.ts-panel__heading p{line-height:1.35}.ts-panel__topline{padding:8px 16px}.ts-panel__heading{padding:10px 16px 8px}.ts-panel__footer{padding:8px 16px}.ts-panel__close{padding:10px}.ts-panel__content{padding:10px 16px}}
@media(max-width:550px){.ts-panel__heading{gap:10px}.ts-panel__close{font-size:10px;padding:10px}.ts-panel__close span{display:none}.ts-panel__topline{letter-spacing:.12em}.ts-panel__footer{gap:8px}.ts-panel__footer span{font-size:9px}.ts-panel__footer a{font-size:10px;padding:0 10px}.ts-posts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.ts-billboard__surface{transition:none;animation:none!important}}
@media(min-height:700px){.ts-panel.ts-panel--tiktok{height:min(820px,calc(100dvh - 64px))}}
