/* ASKA v5 — gateway.css (page-specific for index.html only) */

/* Split hero — axis-agreed: halves side by side (row), background horizontal to match */
.gw-hero{
  position:relative;min-height:100vh;display:flex;flex-direction:row;
  background:linear-gradient(90deg,var(--navy) 0%,var(--navy-deep) 50%,#F4EFE6 50%);
}
#field{position:absolute;inset:0;pointer-events:none;will-change:transform;transition:transform 700ms var(--ease);}
#net{width:100%;height:100%;opacity:.55;}
.aurora{position:absolute;border-radius:50%;filter:blur(100px);pointer-events:none;will-change:transform;}
.aurora.a1{width:46vw;height:46vw;left:-10vw;top:-14vw;background:radial-gradient(closest-side,rgba(0,210,255,.14),transparent 70%);animation:o1 26s ease-in-out infinite alternate;}
.aurora.a2{width:40vw;height:40vw;right:-12vw;bottom:-14vw;background:radial-gradient(closest-side,rgba(249,115,22,.10),transparent 70%);animation:o2 30s ease-in-out infinite alternate;}
@keyframes o1{from{transform:translate(0,0);}to{transform:translate(8vw,6vh);}}
@keyframes o2{from{transform:translate(0,0);}to{transform:translate(-7vw,-5vh);}}

.half{
  position:relative;flex:1;display:flex;flex-direction:column;
  align-items:center;justify-content:center;text-align:center;
  padding:clamp(48px,8vh,96px) clamp(16px,4vw,40px);text-decoration:none;
  transition:flex 700ms var(--ease);
}
.half:hover{flex-grow:1.45;}
.digi{color:#fff;}
.phys{color:#141008;}
.digi::after{content:"";position:absolute;inset:auto 0 0 0;height:30%;
  background:radial-gradient(60% 100% at 50% 100%,rgba(0,210,255,.12),transparent);pointer-events:none;}
.phys::after{content:"";position:absolute;inset:0 0 auto 0;height:30%;
  background:radial-gradient(60% 100% at 50% 0%,rgba(249,115,22,.10),transparent);pointer-events:none;}

.gw-divider{
  position:absolute;top:-10%;left:50%;width:2px;height:120%;z-index:5;
  background:linear-gradient(180deg,transparent,rgba(255,255,255,.9) 20%,rgba(255,255,255,.9) 80%,transparent);
  transform:translateX(-50%);pointer-events:none;
}
@media(max-width:820px){
  .gw-hero{flex-direction:column;min-height:100vh;
    background:linear-gradient(180deg,var(--navy) 0%,var(--navy-deep) 50%,#F4EFE6 50%);}
  .gw-divider{left:50%;top:auto;bottom:-4%;width:120%;height:2px;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.9) 20%,rgba(255,255,255,.9) 80%,transparent);
    transform:translateX(-50%) rotate(0);}
  .half{min-height:50vh;padding:64px 24px;}
  .half .hero-h{font-size:var(--t-4xl);line-height:40px;}
}

.mark{height:clamp(110px,22vh,180px);width:auto;object-fit:contain;margin-bottom:24px;
  transition:transform 700ms var(--ease);}
.half:hover .mark{transform:scale(1.05);}
.mono-label{margin-bottom:32px;}
.digi .mono-label{color:var(--cyan);}
.phys .mono-label{color:var(--orange);}
.half .hero-h{margin-bottom:16px;}
.half p{max-width:38ch;margin:0 auto;}
.enter{
  margin-top:40px;display:inline-flex;align-items:center;gap:12px;
  font-family:var(--font-mono);font-size:var(--t-sm);font-weight:600;letter-spacing:.18em;text-transform:uppercase;
}
.digi .enter{color:var(--cyan);}
.phys .enter{color:var(--orange);}
.half:hover .enter span{transform:translateX(6px);}
.enter span{transition:transform 700ms var(--ease);}

/* ---------- Flagship: deploy terminal (Digital) ---------- */
.term{
  width:min(400px,84%);margin:32px auto 0;text-align:left;
  background:rgba(3,10,28,.88);border:1px solid rgba(0,210,255,.3);
  border-radius:var(--r-lg);overflow:hidden;backdrop-filter:blur(10px);
  font-family:var(--font-mono);font-size:var(--t-sm);line-height:1.7;
  box-shadow:0 24px 60px rgba(0,0,0,.5),0 0 40px rgba(0,210,255,.12),inset 0 1px 0 rgba(255,255,255,.08);
}
.term-head{display:flex;align-items:center;gap:8px;padding:10px 14px;
  background:rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.1);}
.dot{width:10px;height:10px;border-radius:50%;}
.dot.r{background:#FF5F57;}.dot.y{background:#FEBC2E;}.dot.g{background:#28C840;}
.term-title{margin-left:8px;color:rgba(255,255,255,.55);font-size:var(--t-xs);letter-spacing:.12em;text-transform:uppercase;}
.term-body{padding:14px 16px 10px;max-height:200px;overflow-y:auto;}
.term-body p{margin:0 0 4px;color:rgba(255,255,255,.85);}
.term-seed{color:rgba(255,255,255,.9);}
.term-hint{color:rgba(255,255,255,.42);font-size:var(--t-xs);line-height:1.9;}
.term-hint .tc{color:var(--cyan);}
.tk{color:var(--cyan);}.tc{color:#7DD3FC;}.ok{color:#4ADE80;}
.caret{display:inline-block;width:8px;height:15px;background:var(--cyan);vertical-align:-2px;
  animation:blink 1.1s steps(2,start) infinite;}
@keyframes blink{50%{opacity:0;}}
@media(max-width:820px){.term{display:none;}}

/* ---------- Flagship: sourcing pipeline (Physical) ---------- */
.route{
  width:min(400px,84%);margin:32px auto 0;text-align:left;
  background:rgba(255,255,255,.94);border:1px solid rgba(20,16,8,.12);
  border-radius:var(--r-lg);padding:16px 16px 14px;box-shadow:0 24px 60px rgba(20,16,8,.14),inset 0 1px 0 #fff;
  font-family:var(--font-mono);font-size:var(--t-xs);
}
.route-head{font-size:var(--t-xs);font-weight:700;letter-spacing:.18em;color:#B45309;margin-bottom:12px;text-transform:uppercase;}
.route-row{display:flex;align-items:center;gap:8px;margin-bottom:9px;}
.route-row:last-child{margin-bottom:0;}
.rr-label{flex:0 0 30px;color:#B45309;font-weight:600;letter-spacing:.08em;}
.rr-full{flex:0 0 74px;color:rgba(20,16,8,.5);font-size:10px;letter-spacing:.02em;}
.rr-bar{flex:1;height:8px;border-radius:4px;background:rgba(20,16,8,.08);overflow:hidden;}
.rr-bar i{display:block;height:100%;border-radius:4px;background:var(--royal);}
.rr-val{flex:0 0 64px;text-align:right;color:var(--ink);font-weight:600;}
@media(max-width:820px){.route{display:none;}}

@media (prefers-reduced-motion:reduce){.aurora,#net{display:none;}}

.term-input{display:flex;align-items:center;gap:8px;padding:8px 16px;font-family:var(--font-mono);font-size:var(--t-sm);}
.term-input{background:rgba(0,0,0,.35);border-top:1px solid rgba(0,210,255,.18);}
.term-input input{flex:1;background:rgba(255,255,255,.05);border:1px solid rgba(0,210,255,.15);border-radius:6px;
  padding:8px 12px;outline:none;color:#e2e8f0;font-family:var(--font-mono);font-size:var(--t-sm);}
.term-input input:focus{border-color:var(--cyan);box-shadow:0 0 0 2px rgba(0,210,255,.15);}
.term-input input::placeholder{color:rgba(255,255,255,.3);}
@media(max-width:820px){.term{display:none;}}

/* no-js flash guard (Azaraki) — terminal never shows raw pre-load state */
.no-js .term{opacity:0;visibility:hidden;}
/* styled hint line (designed affordance, not debug text) */
.term-hint{margin:0 0 8px;font-family:var(--font-mono);font-size:var(--t-xs);line-height:20px;color:rgba(255,255,255,.42);letter-spacing:.02em;}
.term-hint .tc{color:#7dd3fc;}
/* auto-type caret */
.typing::after{content:"";display:inline-block;width:8px;height:14px;background:var(--cyan);vertical-align:middle;margin-left:2px;animation:blink 1s steps(1) infinite;}
