/* =========================================================
   T-100 · الدخولية «من نقطة إلى عالم» فوق بوابة الورشة
   تُحمَّل في / وحدها، ولا تعمل بلا سكربت ولا مع الحركة المخفّضة
   التوكنات من studio.css (--ink، --w-*، --cyan، --ease)
   ========================================================= */

/* الإمساك: البوابة لا تبدأ إيقاعها تحت الدخولية
   الذيل القانوني يُكشف بحركة CSS مؤخَّرة 1.15 ث في index.html؛ نوقفها ثم تُعاد من أولها عند الإفلات */
.t100-hold .gate__legal{animation:none!important; opacity:0!important}
/* لا باب خفيّ يُضغط تحت الدخولية */
.t100-hold .gate__in{pointer-events:none}

.t100{position:fixed; inset:0; z-index:45; pointer-events:none; overflow:hidden; contain:strict}
.t100__dusk{
  position:absolute; inset:0;
  /* غسق رمادي لا دافئ: أبيض ≤ 5.5% على الحبر */
  background:radial-gradient(58% 62% at 50% 44%, rgba(255,255,255,.055), rgba(255,255,255,0) 72%);
}
.t100__scene{position:absolute; inset:0; perspective:1400px}
.t100__rig{position:absolute; left:0; top:0; transform-style:preserve-3d; transform-origin:50% 50%; will-change:transform}
.t100__plane{position:absolute; inset:0; transform-origin:36.05% 62.75%; will-change:transform,opacity}
.t100__plane svg{position:absolute; inset:0; width:100%; height:100%; overflow:visible; display:block}
.t100__plane svg *{fill:none; stroke:var(--white); stroke-width:1; vector-effect:non-scaling-stroke; stroke-linejoin:miter}
.t100__plane .det{opacity:var(--d,0)}
.t100__plane .faint{stroke-opacity:.45}
.t100__plane .dash{stroke-dasharray:3 7}
.t100__plane--grid{-webkit-mask-image:radial-gradient(closest-side,#000 35%,transparent 100%); mask-image:radial-gradient(closest-side,#000 35%,transparent 100%)}
/* النقطة السماوية: الإشارة الوحيدة بالسماوي */
.t100__dot{position:absolute; left:36.05%; top:62.75%; width:0; height:0}
.t100__dot b,.t100__dot i{position:absolute; left:0; top:0; border-radius:50%; transform:translate(-50%,-50%)}
.t100__dot b{width:7px; height:7px; background:var(--cyan)}
.t100__dot i{width:30px; height:30px; border:1px solid var(--cyan); opacity:0}

.t100__ui{position:absolute; left:var(--gutter); bottom:calc(24px + var(--safe-b)); display:flex; align-items:center; gap:18px}
.t100__skip{
  pointer-events:auto;
  display:inline-flex; align-items:center; gap:10px;
  padding:10px 18px; border:1px solid var(--w-30); border-radius:999px;
  font-size:14px; line-height:1.4; color:var(--w-75); background:rgba(11,11,11,.6);
}
.t100__skip:hover{color:var(--white); border-color:var(--w-60)}
.t100__skip kbd{font-family:var(--font-lat); font-size:11px; color:var(--w-60); border:1px solid var(--w-30); border-radius:4px; padding:0 5px; line-height:18px}
.t100__load{margin:0; display:flex; align-items:center; gap:10px; font-size:13px; line-height:1.4; color:var(--w-60)}
.t100__load[hidden]{display:none}
.t100__bar{display:block; width:64px; height:1px; background:var(--w-12); position:relative}
.t100__bar b{position:absolute; right:0; top:0; height:1px; width:0; background:var(--white)}

@media (max-width:719px){
  .t100__ui{left:18px}
}
