/* OTAKU V5 — rail removed + horizontal activation flow */
.v4-rail{display:none!important}
.v4-shell{margin-left:0!important;padding:18px 28px 48px!important;max-width:1540px;margin-right:auto!important;margin-left:auto!important}
body.v4-menu .layout{padding:20px 28px 48px!important;max-width:1540px;margin:0 auto!important}
body.v4-tutorial .wrap{margin-left:auto!important;margin-right:auto!important;max-width:1540px!important;padding:24px 28px 50px!important}
body.v4-rekey .rekey-card{margin:24px auto 50px!important;max-width:1480px!important;width:calc(100% - 56px)!important}

body.v4-index .page-wrap{
  display:grid!important;
  grid-template-columns:repeat(12,minmax(0,1fr))!important;
  gap:18px!important;
}
body.v4-index .topbar{grid-column:1/-1!important}
body.v4-index .v5-progress-card{grid-column:1/-1!important}
body.v4-index .main-grid{grid-column:1/-1!important}

.v5-progress-card{
  position:relative;
  overflow:hidden;
  padding:26px 30px 32px;
  border-radius:28px;
  border:1px solid rgba(89,190,255,.24);
  background:
    linear-gradient(135deg,rgba(11,31,72,.90),rgba(4,10,28,.94)),
    radial-gradient(circle at 10% 0%,rgba(55,169,255,.18),transparent 34%);
  box-shadow:0 24px 70px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.035);
  isolation:isolate;
}
.v5-progress-card:before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;
  background:linear-gradient(110deg,transparent 0 38%,rgba(83,210,255,.05) 48%,transparent 58%);
  transform:translateX(-55%);animation:v5Sweep 7s ease-in-out infinite;
}
.v5-progress-card:after{
  content:"";position:absolute;right:-70px;top:-90px;width:260px;height:260px;border-radius:50%;
  background:radial-gradient(circle,rgba(116,73,255,.17),transparent 68%);filter:blur(4px);pointer-events:none;
}
@keyframes v5Sweep{0%,55%{transform:translateX(-60%)}85%,100%{transform:translateX(145%)}}
.v5-progress-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:25px}
.v5-progress-kicker{display:block;font-family:'Orbitron',sans-serif;font-size:.68rem;font-weight:800;letter-spacing:3px;color:#58d7ff;margin-bottom:4px}
.v5-progress-head h2{font-size:1.35rem;margin:0;color:#f4f9ff;font-weight:700}
.v5-progress-count{font-family:'Orbitron',sans-serif;font-size:.75rem;letter-spacing:1.5px;color:#94b6dc;padding:9px 13px;border-radius:999px;border:1px solid rgba(89,190,255,.2);background:rgba(0,0,0,.18)}
.v5-step-labels{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-bottom:19px}
.v5-step-label{position:relative;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:11px;opacity:.42;transition:opacity .35s ease,transform .35s ease}
.v5-step-label.is-active{opacity:1;transform:translateY(-2px)}
.v5-step-num{grid-row:1/3;align-self:center;font-family:'Orbitron',sans-serif;font-size:.72rem;color:#55d9ff;border:1px solid rgba(85,217,255,.32);background:rgba(85,217,255,.08);border-radius:10px;padding:7px 8px;box-shadow:inset 0 0 18px rgba(40,151,255,.08)}
.v5-step-label strong{color:#eef7ff;font-size:.9rem;line-height:1.2}
.v5-step-label small{color:#7f9cbd;font-size:.72rem;margin-top:3px}
.v5-progress-track{--step-progress:33%;position:relative;height:18px;border-radius:999px;padding:4px;background:rgba(0,3,15,.72);border:1px solid rgba(90,175,255,.22);box-shadow:inset 0 2px 10px rgba(0,0,0,.65);margin:0 12px}
.v5-progress-fill{height:100%;width:var(--step-progress);border-radius:999px;background:linear-gradient(90deg,#2563ff 0%,#25c8ff 57%,#8d5cff 100%);box-shadow:0 0 22px rgba(44,176,255,.48);transition:width .7s cubic-bezier(.22,.8,.2,1)}
.v5-progress-glow{position:absolute;left:calc(var(--step-progress) - 10px);top:50%;width:28px;height:28px;border-radius:50%;transform:translateY(-50%);background:radial-gradient(circle,#fff 0 8%,#55d9ff 20%,rgba(85,217,255,.1) 68%,transparent 70%);filter:blur(.2px);transition:left .7s cubic-bezier(.22,.8,.2,1)}
.v5-progress-point{position:absolute;top:50%;width:34px;height:34px;border-radius:50%;transform:translate(-50%,-50%);display:grid;place-items:center;color:#57708f;background:#071124;border:2px solid #234f7e;box-shadow:0 0 0 6px rgba(8,20,43,.92);font-size:.8rem;z-index:3;transition:.35s ease}
.v5-progress-point.is-active{color:white;border-color:#5be0ff;background:linear-gradient(145deg,#176dff,#744dff);box-shadow:0 0 0 6px rgba(8,20,43,.92),0 0 22px rgba(69,196,255,.6)}
.v5-progress-point.point-1{left:33%}.v5-progress-point.point-2{left:66%}.v5-progress-point.point-3{left:100%}

@media(max-width:760px){
  .v4-shell{padding:10px 10px 30px!important}.v4-hero{padding:30px 22px!important}
  body.v4-menu .layout,body.v4-tutorial .wrap{padding:10px 10px 30px!important}
  body.v4-rekey .rekey-card{width:calc(100% - 20px)!important;margin:10px auto 30px!important}
  .v5-progress-card{padding:22px 18px 27px;border-radius:22px}
  .v5-progress-head{align-items:flex-start}.v5-progress-count{font-size:.62rem}
  .v5-step-labels{gap:8px}.v5-step-label{display:flex;flex-direction:column;align-items:center;text-align:center}.v5-step-num{margin-bottom:7px}.v5-step-label strong{font-size:.76rem}.v5-step-label small{display:none}
  .v5-progress-track{margin:0 6px;height:15px}.v5-progress-point{width:29px;height:29px;font-size:.68rem}
}
@media(prefers-reduced-motion:reduce){.v5-progress-card:before{animation:none!important}.v5-progress-fill,.v5-progress-glow{transition:none!important}}

/* OTAKU V6 — authentication logo header */
.auth-panel-v6{position:relative;overflow:hidden}
.auth-panel-v6:before{
  content:"";position:absolute;inset:-1px;pointer-events:none;opacity:.55;
  background:
    radial-gradient(circle at 50% 0%,rgba(36,186,255,.16),transparent 34%),
    linear-gradient(120deg,transparent 0 42%,rgba(92,75,255,.05) 52%,transparent 62%);
}
.auth-brand-v6{
  position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:24px;
  margin:-2px 0 22px;padding:22px 24px 24px;border-radius:24px;
  border:1px solid rgba(76,190,255,.20);
  background:linear-gradient(135deg,rgba(5,17,43,.92),rgba(7,11,31,.78));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 16px 40px rgba(0,0,0,.24);
  text-align:left;
}
.auth-brand-ring-v6{
  position:relative;flex:0 0 156px;width:156px;height:118px;display:grid;place-items:center;
  filter:drop-shadow(0 0 18px rgba(55,187,255,.24));
}
.auth-brand-ring-v6:before,.auth-brand-ring-v6:after{
  content:"";position:absolute;border-radius:50%;pointer-events:none;
}
.auth-brand-ring-v6:before{
  inset:6px 25px;border:1px solid rgba(91,222,255,.42);
  box-shadow:0 0 20px rgba(39,171,255,.18),inset 0 0 18px rgba(71,85,255,.12);
}
.auth-brand-ring-v6:after{
  inset:14px 33px;border:1px dashed rgba(133,91,255,.46);
  animation:authV6Spin 10s linear infinite;
}
.auth-brand-logo-v6{
  position:relative;z-index:3;width:138px;height:88px;display:grid;place-items:center;
  overflow:hidden;padding:5px;border-radius:18px;
  background:radial-gradient(circle at 50% 45%,rgba(28,110,255,.15),transparent 70%);
}
.auth-brand-logo-v6 img{
  width:100%;height:100%;object-fit:contain;border-radius:12px;
  filter:drop-shadow(0 0 13px rgba(58,189,255,.68));
}
.auth-brand-orbit-v6{position:absolute;border-radius:50%;border:1px solid transparent;pointer-events:none}
.auth-brand-orbit-v6.orbit-a{inset:0 18px;border-top-color:#51dbff;border-bottom-color:rgba(91,70,255,.65);animation:authV6Spin 7s linear infinite}
.auth-brand-orbit-v6.orbit-b{inset:18px 39px;border-left-color:#7c5cff;border-right-color:#44dfff;animation:authV6SpinReverse 5.5s linear infinite}
.auth-brand-spark-v6{position:absolute;width:6px;height:6px;border-radius:50%;background:#b7f4ff;box-shadow:0 0 12px 4px rgba(74,207,255,.7)}
.auth-brand-spark-v6.spark-a{left:22px;top:30px;animation:authV6Pulse 2.2s ease-in-out infinite}
.auth-brand-spark-v6.spark-b{right:26px;bottom:23px;animation:authV6Pulse 2.2s ease-in-out 1.1s infinite}
.auth-brand-copy-v6{display:flex;flex-direction:column;min-width:0}
.auth-brand-copy-v6 span{font-family:'Orbitron',sans-serif;font-size:.68rem;letter-spacing:3px;font-weight:800;color:#59ddff;margin-bottom:7px}
.auth-brand-copy-v6 strong{font-size:1.28rem;line-height:1.25;color:#f7fbff;text-shadow:0 0 18px rgba(62,180,255,.18)}
.auth-brand-copy-v6 small{margin-top:7px;color:#7f9dbf;font-size:.78rem}
.auth-title-v6{position:relative;z-index:1;margin-top:0;padding-top:0}
@keyframes authV6Spin{to{transform:rotate(360deg)}}
@keyframes authV6SpinReverse{to{transform:rotate(-360deg)}}
@keyframes authV6Pulse{0%,100%{opacity:.35;transform:scale(.75)}50%{opacity:1;transform:scale(1.12)}}
@media(max-width:760px){
  .auth-brand-v6{flex-direction:column;gap:8px;text-align:center;padding:16px 14px 18px}
  .auth-brand-ring-v6{flex-basis:auto;width:142px;height:100px}
  .auth-brand-logo-v6{width:128px;height:78px}
  .auth-brand-copy-v6 strong{font-size:1.02rem}.auth-brand-copy-v6 small{font-size:.7rem}
}
@media(prefers-reduced-motion:reduce){
  .auth-brand-ring-v6:after,.auth-brand-orbit-v6,.auth-brand-spark-v6{animation:none!important}
}
