/* v0.3.89-cyberpunk-breach-guardian-login
 * Cyberpunk Breach Guardian Login.
 * Contract: /login renders a 3s boot/guardian gate with no credential inputs in
 * the initial DOM; Unlock Terminal AJAX-loads the auth core; AJAX errors are shown in-place
 * inside the one visible /login flow. There is no /login/access fallback page. Motion-heavy effects honor prefers-reduced-motion.
 */
:root {
  --oni-guardian-bg: #02050a;
  --oni-guardian-panel: rgba(5, 8, 15, .74);
  --oni-guardian-panel-strong: rgba(7, 11, 19, .88);
  --oni-guardian-cyan: #00f5ff;
  --oni-guardian-teal: #2fffe6;
  --oni-guardian-violet: #8b5cff;
  --oni-guardian-magenta: #ff2bd6;
  --oni-guardian-red: #ff174d;
  --oni-guardian-silver: #f2f6ff;
  --oni-guardian-muted: #90a5b7;
  --oni-guardian-border: rgba(0, 245, 255, .24);
  --oni-guardian-red-border: rgba(255, 23, 77, .42);
  --guardian-pointer-x: 0;
  --guardian-pointer-y: 0;
}
html[data-oni-theme="guardian-login"], .oni-guardian-login-body { min-height: 100%; overflow: hidden; background: #02050a; }
.oni-guardian-login-body { margin: 0; min-height: 100vh; color: var(--oni-guardian-silver); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; letter-spacing: .01em; }
.oni-guardian-scene { position: relative; min-height: 100vh; display: grid; align-items: center; justify-items: start; isolation: isolate; overflow: hidden; padding: clamp(20px, 4vw, 56px); background: radial-gradient(circle at 56% 36%, rgba(139,92,255,.28), transparent 23%), radial-gradient(circle at 86% 46%, rgba(0,245,255,.16), transparent 30%), radial-gradient(circle at 11% 14%, rgba(255,23,77,.18), transparent 30%), linear-gradient(115deg, #03050a 0%, #08101d 42%, #02050a 100%); }
.oni-guardian-city, .oni-guardian-noise, .oni-guardian-scanlines, .oni-guardian-red-glitch, .oni-guardian-scene::before, .oni-guardian-scene::after, .oni-guardian-data-bridge { pointer-events:none; }
.oni-guardian-city { position:absolute; inset:-12%; z-index:-8; background: linear-gradient(90deg, transparent 0 7%, rgba(0,245,255,.08) 7.4% 7.8%, transparent 8% 18%, rgba(255,43,214,.10) 18.2% 18.6%, transparent 19% 100%), repeating-linear-gradient(90deg, rgba(255,255,255,.035) 0 1px, transparent 1px 84px), repeating-linear-gradient(0deg, rgba(255,255,255,.025) 0 1px, transparent 1px 62px); opacity:.44; transform: perspective(900px) rotateX(62deg) translateY(18%); transform-origin:center bottom; }
.oni-guardian-scene::before { content:""; position:absolute; inset:0; z-index:-7; background: linear-gradient(90deg, transparent, rgba(255,23,77,.22) 18%, transparent 23%) 0 12% / 220% 1px no-repeat, linear-gradient(90deg, transparent, rgba(0,245,255,.18) 24%, transparent 30%) 0 78% / 180% 1px no-repeat, linear-gradient(180deg, transparent 0 66%, rgba(255,43,214,.08) 100%); animation: oniGuardianStreak 8s linear infinite; }
.oni-guardian-scene::after { content:""; position:absolute; inset:0; z-index:8; background: linear-gradient(90deg, transparent 0 11%, rgba(255,23,77,.19) 11.5% 11.8%, transparent 12.2% 78%, rgba(255,23,77,.14) 78.2% 79%, transparent 80%), repeating-linear-gradient(0deg, transparent 0 3px, rgba(255,255,255,.025) 3px 4px); mix-blend-mode:screen; opacity:.42; }
.oni-guardian-data-bridge { position:absolute; inset:0; z-index:-3; background: linear-gradient(100deg, transparent 9%, rgba(0,245,255,.16) 38%, rgba(255,43,214,.16) 55%, transparent 76%) 0 44% / 160% 1px no-repeat, linear-gradient(100deg, transparent 5%, rgba(255,23,77,.20) 34%, transparent 48%) 0 22% / 150% 2px no-repeat, radial-gradient(circle at 47% 52%, rgba(0,245,255,.12), transparent 23%); filter: blur(.2px); animation: oniGuardianDataBridge 6s linear infinite; }
.oni-guardian-hero { position:absolute; z-index:-4; right:0; top:0; bottom:0; width:min(60vw, 1020px); height:100%; object-fit:cover; object-position:center right; opacity:.88; filter: drop-shadow(0 0 36px rgba(139,92,255,.38)) drop-shadow(0 0 68px rgba(0,245,255,.16)); transform: translate3d(calc(var(--guardian-pointer-x) * -12px), calc(var(--guardian-pointer-y) * -8px), 0) scale(1.015); transition:transform .12s linear; }
.oni-guardian-blade-glow { position:absolute; z-index:-2; left:-7vw; bottom:10vh; width:64vw; height:2px; transform:rotate(-23deg); background:linear-gradient(90deg, transparent, rgba(255,255,255,.78), rgba(0,245,255,.38), transparent); box-shadow:0 0 18px rgba(0,245,255,.48),0 0 46px rgba(255,43,214,.28); opacity:.66; }
.oni-guardian-noise, .oni-guardian-scanlines, .oni-guardian-red-glitch { position:fixed; inset:0; z-index:30; }
.oni-guardian-noise { opacity:.17; background-image: radial-gradient(circle at 18% 22%, rgba(255,23,77,.18), transparent 1px), radial-gradient(circle at 82% 76%, rgba(0,245,255,.12), transparent 1px), radial-gradient(circle at 42% 58%, rgba(255,255,255,.08), transparent 1px); background-size:11px 13px,17px 19px,23px 29px; mix-blend-mode:screen; }
.oni-guardian-scanlines { opacity:.22; background:repeating-linear-gradient(0deg, transparent 0 3px, rgba(255,255,255,.04) 3px 4px); mix-blend-mode:overlay; }
.oni-guardian-red-glitch { opacity:.28; background: linear-gradient(90deg, transparent, rgba(255,23,77,.40), transparent) 0 20% / 160% 2px no-repeat, linear-gradient(90deg, transparent, rgba(255,23,77,.34), transparent) 0 38% / 220% 1px no-repeat, linear-gradient(90deg, transparent, rgba(255,43,214,.28), transparent) 0 71% / 180% 2px no-repeat; mix-blend-mode:screen; animation: oniGuardianAmbientGlitch 5.2s steps(2,end) infinite; }
.oni-guardian-boot { position:fixed; inset:0; z-index:60; display:grid; place-items:center; background: radial-gradient(circle at 10% 92%, rgba(255,23,77,.22), transparent 24%), radial-gradient(circle at 80% 20%, rgba(255,43,214,.13), transparent 24%), #020204; color:#ff6d8f; transition:opacity .36s ease, visibility .36s ease; }
.oni-guardian-boot::before, .oni-guardian-boot::after { content:""; position:absolute; inset:0; background: linear-gradient(90deg, transparent 0 18%, rgba(255,23,77,.58) 22%, transparent 28%) 0 34% / 190% 2px no-repeat, linear-gradient(90deg, transparent 0 8%, rgba(255,23,77,.42) 15%, transparent 25%) 0 54% / 160% 3px no-repeat, linear-gradient(90deg, transparent 0 50%, rgba(255,23,77,.24) 54%, transparent 60%) 0 72% / 130% 1px no-repeat; animation: oniGuardianBootGlitch .54s steps(3,end) infinite; opacity:.9; }
.oni-guardian-boot::after { filter:blur(9px); opacity:.48; }
.oni-ready .oni-guardian-boot { opacity:0; visibility:hidden; }
.oni-guardian-skip { position:absolute; right:max(18px, env(safe-area-inset-right)); top:max(18px, env(safe-area-inset-top)); z-index:3; padding:8px 12px; border:1px solid rgba(255,23,77,.34); border-radius:999px; background:rgba(0,0,0,.44); color:#ffd4de; font-size:12px; letter-spacing:.12em; text-transform:uppercase; }
.oni-guardian-boot-core { position:relative; z-index:2; width:min(820px, 88vw); padding:24px; border-left:2px solid rgba(255,23,77,.48); text-transform:uppercase; text-shadow:0 0 18px rgba(255,23,77,.36); }
.oni-guardian-boot-label { margin-bottom:20px; font-weight:900; letter-spacing:.18em; color:#ffe7ed; }
.oni-guardian-boot-line { display:flex; justify-content:space-between; gap:18px; padding:8px 0; color:rgba(255,218,226,.80); font-size:clamp(12px,1.7vw,16px); letter-spacing:.1em; opacity:0; transform:translateX(-12px); animation:oniGuardianBootLine .28s ease forwards; animation-delay:var(--delay); }
.oni-guardian-boot-line strong { color:#ff386d; font-size:.9em; }
.oni-guardian-boot-progress { margin-top:20px; height:3px; background:rgba(255,23,77,.15); overflow:hidden; }
.oni-guardian-boot-progress i { display:block; width:100%; height:100%; transform:translateX(-100%); background:linear-gradient(90deg,#ff174d,#ff2bd6,#00f5ff); animation:oniGuardianBootProgress 2.72s ease-out forwards; }
.oni-boot-fast .oni-guardian-boot-progress i { animation-duration:.62s; }
.oni-boot-fast .oni-guardian-boot-line { animation-delay:calc(var(--delay) / 5); }
.oni-guardian-access-card { position:relative; width:min(520px, calc(100vw - 38px)); margin-left:clamp(260px, 32vw, 560px); padding:clamp(24px,4vw,38px); border:1px solid var(--oni-guardian-border); border-top-color:rgba(255,43,214,.50); border-radius:26px; background:linear-gradient(180deg, rgba(255,255,255,.055), transparent 18%), linear-gradient(135deg, rgba(8,12,24,.88), rgba(4,7,13,.74)); box-shadow:0 30px 100px rgba(0,0,0,.58),0 0 0 1px rgba(255,255,255,.04) inset,0 0 58px rgba(0,245,255,.10),0 0 82px rgba(255,43,214,.09); -webkit-backdrop-filter:blur(20px) saturate(140%); backdrop-filter:blur(20px) saturate(140%); overflow:hidden; }
.oni-guardian-card-glitch { position:absolute; inset:-1px; border-radius:inherit; pointer-events:none; background:linear-gradient(90deg, transparent, rgba(255,23,77,.40), transparent) 0 17% / 160% 1px no-repeat, linear-gradient(90deg, transparent, rgba(0,245,255,.30), transparent) 0 78% / 190% 1px no-repeat; opacity:.7; animation:oniGuardianCardGlitch 4.4s steps(2,end) infinite; }
.oni-access-unseal-overlay { position:absolute; inset:0; z-index:6; display:grid; place-items:center; background:rgba(2,5,10,.62); opacity:0; visibility:hidden; -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); }
.oni-access-unseal-overlay span { color:#ff6d8f; font-size:12px; font-weight:900; letter-spacing:.20em; text-transform:uppercase; text-shadow:0 0 20px rgba(255,23,77,.6); }
.oni-unsealing .oni-access-unseal-overlay { opacity:1; visibility:visible; animation:oniUnsealOverlay .9s ease forwards; }
.oni-guardian-brand { display:flex; gap:16px; align-items:center; }
.oni-guardian-mark { width:72px; height:72px; flex:0 0 auto; filter:drop-shadow(0 0 18px rgba(255,43,214,.42)); }
.oni-guardian-kicker { margin:0 0 4px; color:#ff5d86; font-size:12px; font-weight:900; letter-spacing:.18em; text-transform:uppercase; }
.oni-guardian-brand h1 { margin:0; font-size:clamp(36px,5vw,56px); line-height:.9; text-transform:uppercase; letter-spacing:.06em; }
.oni-guardian-brand h1 span { color:#fff; text-shadow:0 0 24px rgba(255,255,255,.30),0 0 42px rgba(0,245,255,.14); }
.oni-guardian-brand p:last-child, .oni-guardian-access-copy { color:var(--oni-guardian-muted); line-height:1.5; }
.oni-guardian-access-copy { margin:24px 0 18px; font-size:14px; }
.oni-access-gate-state.is-hidden, .oni-auth-core-slot.is-empty { display:none; }
.oni-sealed-core { position:relative; min-height:88px; display:grid; place-items:center; margin:18px 0; border:1px solid rgba(255,23,77,.26); border-radius:18px; background:linear-gradient(135deg, rgba(255,23,77,.13), rgba(0,245,255,.04)); overflow:hidden; }
.oni-sealed-core span { color:#ffd4de; font-size:12px; font-weight:900; letter-spacing:.18em; text-transform:uppercase; }
.oni-sealed-core i { position:absolute; inset:auto 8% 50%; height:2px; background:linear-gradient(90deg, transparent, rgba(255,23,77,.85), rgba(0,245,255,.55), transparent); box-shadow:0 0 20px rgba(255,23,77,.45); animation:oniSealedPulse 1.9s ease-in-out infinite; }
.oni-nojs-access a { color:var(--oni-guardian-teal); }
.oni-guardian-alert { margin:22px 0 18px; padding:12px 14px; border:1px solid var(--oni-guardian-red-border); border-radius:14px; background:linear-gradient(135deg, rgba(255,23,77,.18), rgba(0,0,0,.34)); box-shadow:0 0 26px rgba(255,23,77,.13); }
.oni-guardian-alert strong { display:block; margin-bottom:4px; color:#ff6d8f; font-size:12px; letter-spacing:.16em; }
.oni-guardian-alert span { color:#ffe7ed; }
.oni-guardian-form { display:grid; gap:14px; }
.oni-guardian-field { display:grid; gap:7px; color:var(--oni-guardian-muted); font-size:12px; font-weight:900; letter-spacing:.18em; text-transform:uppercase; }
.oni-guardian-field input { width:100%; min-height:48px; margin:0; border:1px solid rgba(0,245,255,.18); border-radius:12px; background:rgba(2,5,10,.74); color:var(--oni-guardian-silver); font-size:15px; letter-spacing:.03em; outline:none; box-shadow:0 0 0 1px rgba(255,255,255,.02) inset; transition:border-color .18s ease, box-shadow .18s ease, background .18s ease; }
.oni-guardian-field input:focus { border-color:rgba(0,245,255,.72); background:rgba(5,12,18,.88); box-shadow:0 0 0 3px rgba(0,245,255,.10),0 0 24px rgba(0,245,255,.12); }
.oni-guardian-enter { position:relative; width:100%; min-height:56px; margin-top:6px; display:inline-flex; align-items:center; justify-content:center; gap:14px; border:1px solid rgba(255,43,214,.66); border-radius:14px; background:linear-gradient(90deg, rgba(255,23,77,.82), rgba(181,15,109,.70), rgba(0,245,255,.36)), rgba(6,9,17,.9); color:#fff; font-weight:900; letter-spacing:.16em; text-transform:uppercase; overflow:hidden; box-shadow:0 0 30px rgba(255,43,214,.25),0 0 46px rgba(0,245,255,.09); cursor:pointer; }
.oni-guardian-enter::before { content:""; position:absolute; inset:0; transform:translateX(-110%); background:linear-gradient(90deg, transparent, rgba(255,255,255,.32), transparent); transition:transform .42s ease; }
.oni-guardian-enter:hover::before, .oni-guardian-enter:focus-visible::before, .oni-login-submitting .oni-guardian-enter::before, .oni-unsealing .oni-guardian-unlock::before { transform:translateX(110%); }
.oni-guardian-enter i { font-style:normal; font-size:28px; line-height:0; }
.oni-guardian-enter:disabled { cursor:progress; opacity:.84; }
.oni-guardian-status-row { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-top:18px; }
.oni-guardian-status-row span { min-height:38px; display:inline-flex; align-items:center; justify-content:center; gap:7px; padding:8px; border:1px solid rgba(0,245,255,.16); border-radius:12px; background:rgba(0,245,255,.055); color:#bceef6; font-size:10px; font-weight:900; line-height:1.2; text-transform:uppercase; letter-spacing:.08em; }
.oni-guardian-status-row i { width:7px; height:7px; flex:0 0 auto; border-radius:999px; background:var(--oni-guardian-teal); box-shadow:0 0 10px var(--oni-guardian-teal); }
.oni-guardian-hud { position:absolute; z-index:-1; display:grid; gap:16px; width:min(310px,23vw); opacity:.86; }
.oni-guardian-hud-left { left:clamp(18px,4vw,70px); top:12vh; }
.oni-guardian-hud-right { right:clamp(18px,3vw,56px); top:12vh; }
.oni-hud-panel, .oni-hud-chip { border:1px solid rgba(0,245,255,.20); border-radius:16px; background:rgba(3,7,14,.62); -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px); box-shadow:0 0 30px rgba(0,245,255,.07),0 0 42px rgba(255,43,214,.04); }
.oni-hud-panel { padding:16px; }
.oni-hud-panel.compact { padding:13px 14px; }
.oni-hud-panel span, .oni-hud-chip { color:var(--oni-guardian-muted); font-size:11px; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.oni-hud-panel strong { display:block; margin-top:7px; color:#f8fbff; font-size:18px; }
.oni-hud-panel em, .oni-hud-panel small { display:block; margin-top:8px; color:var(--oni-guardian-teal); font-size:12px; font-style:normal; }
.oni-hud-chip { padding:10px 12px; color:var(--oni-guardian-teal); }
.oni-hud-chip.is-red { color:#ff6d8f; border-color:rgba(255,23,77,.30); }
.oni-mini-candles { display:flex; align-items:end; gap:7px; height:64px; margin-top:14px; border-bottom:1px solid rgba(0,245,255,.18); }
.oni-mini-candles i { position:relative; display:block; width:10px; background:linear-gradient(180deg,var(--oni-guardian-magenta),var(--oni-guardian-cyan)); box-shadow:0 0 12px rgba(0,245,255,.18); }
.oni-mini-candles i::before { content:""; position:absolute; left:4px; top:-9px; width:1px; height:calc(100% + 18px); background:rgba(255,255,255,.32); }
.oni-mini-candles i:nth-child(1){height:24px}.oni-mini-candles i:nth-child(2){height:42px}.oni-mini-candles i:nth-child(3){height:31px}.oni-mini-candles i:nth-child(4){height:54px}.oni-mini-candles i:nth-child(5){height:38px}.oni-mini-candles i:nth-child(6){height:47px}.oni-mini-candles i:nth-child(7){height:58px}.oni-mini-candles i:nth-child(8){height:50px}
.oni-guardian-submit-overlay { position:fixed; inset:0; z-index:80; display:grid; place-items:center; background:rgba(2,5,10,.76); -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px); opacity:0; visibility:hidden; transition:opacity .18s ease, visibility .18s ease; }
.oni-login-submitting .oni-guardian-submit-overlay { opacity:1; visibility:visible; }
.oni-guardian-submit-overlay div { padding:24px 30px; border:1px solid rgba(0,245,255,.32); border-radius:18px; background:rgba(5,11,18,.86); text-align:center; box-shadow:0 0 54px rgba(0,245,255,.12); }
.oni-guardian-submit-overlay strong, .oni-guardian-submit-overlay span { display:block; }
.oni-guardian-submit-overlay strong { color:var(--oni-guardian-teal); letter-spacing:.18em; }
.oni-guardian-submit-overlay span { margin-top:8px; color:var(--oni-guardian-muted); }
@keyframes oniGuardianBootGlitch { 0%,100%{transform:translateX(-6%);opacity:.58} 40%{transform:translateX(7%);opacity:.92} 70%{transform:translateX(-1%);opacity:.50} }
@keyframes oniGuardianBootLine { to { opacity:1; transform:translateX(0); } }
@keyframes oniGuardianBootProgress { to { transform:translateX(0); } }
@keyframes oniBootGateSelfDismiss { 0%,86%{opacity:1;visibility:visible} 100%{opacity:0;visibility:hidden} }
@keyframes oniGlitchBandsSweep { 0%,100%{opacity:.26;transform:translateX(0)} 8%{opacity:.95;transform:translateX(18px)} 12%{opacity:.38;transform:translateX(-14px)} 28%{opacity:.72;transform:translateX(4px)} 32%{opacity:.22;transform:translateX(0)} }
@keyframes oniGlitchBurst { 0%,100%{opacity:.22;filter:hue-rotate(0deg)} 18%{opacity:.95;filter:hue-rotate(-25deg)} 24%{opacity:.52;transform:translateX(-12px)} 42%{opacity:.86;transform:translateX(9px)} 58%{opacity:.28;transform:translateX(0)} }
@keyframes oniGuardianStreak { 0%{background-position:-10% 12%,120% 78%,0 0} 100%{background-position:180% 12%,-80% 78%,0 0} }
@keyframes oniGuardianDataBridge { 0%{background-position:-80% 44%,110% 22%,0 0} 100%{background-position:160% 44%,-60% 22%,0 0} }
@keyframes oniGuardianCardGlitch { 0%,88%,100%{opacity:.30;transform:translateX(0)} 89%{opacity:.88;transform:translateX(7px)} 90%{opacity:.45;transform:translateX(-4px)} }
@keyframes oniGuardianAmbientGlitch { 0%,86%,100%{opacity:.18;transform:translateX(0)} 87%{opacity:.48;transform:translateX(6px)} 88%{opacity:.25;transform:translateX(-8px)} 89%{opacity:.42;transform:translateX(2px)} }
@keyframes oniSealedPulse { 0%,100%{transform:scaleX(.64);opacity:.48} 50%{transform:scaleX(1);opacity:1} }
@keyframes oniUnsealOverlay { 0%{opacity:0} 20%,70%{opacity:1} 100%{opacity:0;visibility:hidden} }
@media (max-width: 1240px) { .oni-guardian-access-card{margin-left:clamp(220px,29vw,360px)} .oni-guardian-hero{width:66vw;opacity:.72} .oni-guardian-hud-right{display:none} }
@media (max-width: 980px) { .oni-guardian-access-card{margin-left:0; justify-self:center;} .oni-guardian-hero{right:0;width:76vw;opacity:.50;} .oni-guardian-hud{display:none} }
@media (max-width: 680px) { html[data-oni-theme="guardian-login"], .oni-guardian-login-body{overflow:auto;} .oni-guardian-scene{min-height:100svh; align-items:end; justify-items:center; padding:clamp(92px,18svh,150px) 14px 18px;} .oni-guardian-hero{top:0; right:0; bottom:auto; width:100vw; height:40svh; object-fit:cover; object-position:center top; opacity:.44; transform:none;} .oni-guardian-blade-glow{display:none;} .oni-guardian-data-bridge{opacity:.55;} .oni-guardian-access-card{width:100%; margin-left:0; padding:20px; border-radius:22px;} .oni-guardian-brand{align-items:flex-start;} .oni-guardian-mark{width:52px;height:52px;} .oni-guardian-brand h1{font-size:clamp(34px,11vw,54px);} .oni-guardian-status-row{grid-template-columns:1fr;} .oni-guardian-status-row span{justify-content:flex-start;} .oni-guardian-skip{font-size:11px;} .oni-guardian-boot-core{width:92vw; padding:18px 14px;} .oni-guardian-boot-line{font-size:11px;} }
@media (prefers-reduced-motion: reduce) { *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important;} .oni-guardian-boot{display:none;} .oni-guardian-hero{transform:none!important;} .oni-guardian-scene::before,.oni-guardian-card-glitch,.oni-guardian-scanlines,.oni-guardian-red-glitch{opacity:.12;} }


/* v0.3.88 runtime-corrective overrides: make the magic visible and fail visible. */
.oni-guardian-boot { animation: oniBootGateSelfDismiss .42s ease 3s forwards; }
.oni-ready .oni-guardian-boot, .oni-auth-ready .oni-guardian-boot { opacity:0; visibility:hidden; pointer-events:none; }
.oni-guardian-glitch-bands { position:fixed; inset:0; z-index:32; pointer-events:none; opacity:.42; mix-blend-mode:screen; background:
  linear-gradient(90deg, transparent 0 9%, rgba(255,23,77,.82) 14%, transparent 22%) 0 18% / 170% 3px no-repeat,
  linear-gradient(90deg, transparent 0 28%, rgba(255,43,214,.65) 35%, rgba(0,245,255,.30) 39%, transparent 48%) 0 42% / 210% 2px no-repeat,
  linear-gradient(90deg, transparent 0 52%, rgba(255,23,77,.58) 59%, transparent 68%) 0 74% / 190% 4px no-repeat;
  animation: oniGlitchBandsSweep 3.4s steps(2,end) infinite; }
.oni-glitch-burst .oni-guardian-glitch-bands, .oni-unsealing .oni-guardian-glitch-bands { animation: oniGlitchBurst .74s steps(2,end) infinite; opacity:.86; }
.oni-glitch-burst .oni-guardian-red-glitch, .oni-unsealing .oni-guardian-red-glitch { opacity:.74; animation-duration:.34s; }
.oni-guardian-unlock { text-decoration:none; }
.oni-guardian-unlock.is-loading { cursor:progress; opacity:.86; }
.oni-guardian-unlock[data-oni-disabled="true"] { pointer-events:none; }
.oni-auth-core-fallback { margin:18px 0 0; padding:13px 14px; border:1px solid rgba(255,23,77,.46); border-radius:14px; background:linear-gradient(135deg, rgba(255,23,77,.18), rgba(0,0,0,.42)); box-shadow:0 0 28px rgba(255,23,77,.15); }
.oni-auth-core-fallback[hidden] { display:none!important; }
.oni-auth-core-fallback strong { display:block; color:#ff6d8f; font-size:12px; font-weight:900; letter-spacing:.16em; text-transform:uppercase; }
.oni-auth-core-fallback span { display:block; margin-top:6px; color:#ffe7ed; line-height:1.45; }
.oni-auth-core-fallback a { display:inline-flex; margin-top:10px; color:var(--oni-guardian-teal); font-weight:800; text-decoration:none; }
.oni-auth-core-load-failed .oni-guardian-access-card { border-color:rgba(255,23,77,.58); box-shadow:0 30px 100px rgba(0,0,0,.58),0 0 0 1px rgba(255,23,77,.15) inset,0 0 64px rgba(255,23,77,.16); }
.oni-js-ready .oni-nojs-access { opacity:.42; font-size:11px; text-align:center; }
html:not(.unused) .oni-nojs-access { margin:10px 0 0; }
@media (max-width: 680px) {
  .oni-guardian-glitch-bands { opacity:.56; }
  .oni-guardian-boot { min-height:100svh; }
  .oni-guardian-boot::before, .oni-guardian-boot::after { opacity:1; }
  .oni-guardian-access-card { margin-bottom:max(12px, env(safe-area-inset-bottom)); }
}
@media (prefers-reduced-motion: reduce) {
  .oni-guardian-boot { animation:none; display:none; }
  .oni-guardian-glitch-bands { opacity:.10; animation:none; }
}

/* v0.3.89 Cyberpunk Breach escalation: game-like hacking intro, hard glitch transition, no fallback-route UX. */
.oni-guardian-login-body {
  background:#020207;
}
.oni-booting .oni-guardian-scene {
  filter:brightness(.28) contrast(1.25) saturate(1.35) blur(1.6px);
  transform:scale(1.018);
}
.oni-ready .oni-guardian-scene {
  filter:none;
  transform:none;
  transition:filter .42s ease, transform .42s ease;
}
.oni-breach-wall {
  position:fixed;
  inset:0;
  z-index:76;
  pointer-events:none;
  opacity:0;
  mix-blend-mode:screen;
  background:
    linear-gradient(90deg, transparent 0 3%, rgba(255,23,77,.98) 5%, transparent 12%) 0 10% / 240% 12px no-repeat,
    linear-gradient(90deg, transparent 0 18%, rgba(255,43,214,.88) 25%, rgba(0,245,255,.55) 30%, transparent 40%) 0 28% / 260% 9px no-repeat,
    linear-gradient(90deg, transparent 0 42%, rgba(255,23,77,.94) 48%, transparent 62%) 0 52% / 220% 18px no-repeat,
    linear-gradient(90deg, transparent 0 7%, rgba(255,255,255,.72) 11%, transparent 20%) 0 76% / 200% 7px no-repeat,
    repeating-linear-gradient(0deg, rgba(255,23,77,.16) 0 1px, transparent 1px 4px);
}
.oni-breach-transition .oni-breach-wall,
.oni-unsealing .oni-breach-wall,
.oni-glitch-burst .oni-breach-wall {
  opacity:1;
  animation: oniBreachWallExecute 1.08s steps(2,end) both;
}
.oni-breach-transition .oni-guardian-glitch-bands,
.oni-unsealing .oni-guardian-glitch-bands,
.oni-glitch-burst .oni-guardian-glitch-bands {
  z-index:77;
  opacity:1;
  mix-blend-mode:screen;
  animation: oniBreachBandsChaos .72s steps(2,end) infinite;
}
.oni-breach-transition .oni-guardian-red-glitch,
.oni-unsealing .oni-guardian-red-glitch,
.oni-glitch-burst .oni-guardian-red-glitch {
  z-index:78;
  opacity:.96;
  animation: oniBreachRedTear .36s steps(2,end) infinite;
}
.oni-breach-transition .oni-guardian-scene,
.oni-unsealing .oni-guardian-scene,
.oni-glitch-burst .oni-guardian-scene {
  animation: oniSceneHardTear .34s steps(2,end) 4;
}
.oni-guardian-boot {
  background:
    radial-gradient(circle at 12% 90%, rgba(255,23,77,.34), transparent 24%),
    radial-gradient(circle at 78% 18%, rgba(255,43,214,.22), transparent 26%),
    linear-gradient(180deg, rgba(255,23,77,.08), transparent 30%),
    #020104;
  overflow:hidden;
  animation: oniBootGateSelfDismiss .58s ease 3.35s forwards;
}
.oni-guardian-boot::before {
  background:
    linear-gradient(90deg, transparent 0 10%, rgba(255,23,77,.90) 14%, transparent 24%) 0 18% / 230% 9px no-repeat,
    linear-gradient(90deg, transparent 0 24%, rgba(255,43,214,.68) 32%, transparent 44%) 0 36% / 180% 4px no-repeat,
    linear-gradient(90deg, transparent 0 44%, rgba(255,255,255,.52) 48%, transparent 56%) 0 56% / 220% 3px no-repeat,
    linear-gradient(90deg, transparent 0 8%, rgba(0,245,255,.40) 13%, transparent 20%) 0 70% / 210% 5px no-repeat,
    repeating-linear-gradient(0deg, transparent 0 2px, rgba(255,23,77,.10) 2px 3px);
  animation: oniBootHackGlitch .27s steps(2,end) infinite;
  opacity:1;
}
.oni-guardian-boot::after {
  background:
    radial-gradient(circle at 50% 50%, transparent 0 24%, rgba(255,23,77,.12) 27%, transparent 32%),
    linear-gradient(90deg, rgba(255,23,77,.18), transparent 18%, rgba(255,43,214,.14) 52%, transparent 78%);
  filter:blur(10px);
  opacity:.7;
  animation: oniBootHackGlow .55s steps(2,end) infinite;
}
.oni-guardian-boot-core {
  width:min(980px, 90vw);
  max-height:72svh;
  padding:30px 32px;
  border-left:3px solid rgba(255,23,77,.76);
  border-right:1px solid rgba(255,43,214,.34);
  background:linear-gradient(90deg, rgba(255,23,77,.09), rgba(0,0,0,.24), rgba(0,245,255,.04));
  box-shadow:0 0 46px rgba(255,23,77,.14), inset 0 0 38px rgba(255,23,77,.08);
}
.oni-guardian-boot-core::before {
  content:"ROOT@ONI://BREACH_VECTOR";
  position:absolute;
  top:-24px;
  left:28px;
  color:rgba(255,23,77,.82);
  font-size:11px;
  font-weight:900;
  letter-spacing:.22em;
}
.oni-guardian-boot-label {
  color:#fff2f6;
  font-size:clamp(16px,2.4vw,28px);
  letter-spacing:.24em;
  text-shadow:0 0 24px rgba(255,23,77,.72), 0 0 54px rgba(255,43,214,.32);
}
.oni-guardian-boot-line {
  padding:9px 0;
  color:#ffd4df;
  font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  text-shadow:0 0 14px rgba(255,23,77,.36);
}
.oni-guardian-boot-line span::before {
  content:"> ";
  color:#ff174d;
}
.oni-guardian-boot-line strong {
  color:#00f5ff;
  text-shadow:0 0 16px rgba(0,245,255,.56);
}
.oni-guardian-boot-final strong {
  color:#ff2bd6;
  animation: oniBootFinalBlink .18s steps(2,end) infinite;
}
.oni-guardian-boot-progress i {
  animation:oniGuardianBootProgress 3.15s cubic-bezier(.12,.78,.16,1) forwards;
  box-shadow:0 0 18px rgba(255,23,77,.8), 0 0 28px rgba(0,245,255,.38);
}
.oni-guardian-glitch-bands {
  opacity:.64;
  background:
    linear-gradient(90deg, transparent 0 5%, rgba(255,23,77,.95) 8%, transparent 18%) 0 16% / 210% 8px no-repeat,
    linear-gradient(90deg, transparent 0 21%, rgba(255,43,214,.75) 30%, rgba(0,245,255,.52) 35%, transparent 50%) 0 42% / 250% 5px no-repeat,
    linear-gradient(90deg, transparent 0 44%, rgba(255,23,77,.72) 51%, transparent 66%) 0 72% / 230% 10px no-repeat,
    repeating-linear-gradient(0deg, transparent 0 5px, rgba(255,255,255,.04) 5px 6px);
  animation: oniGlitchBandsSweep 2.2s steps(2,end) infinite;
}
.oni-access-unseal-overlay {
  background:
    linear-gradient(90deg, rgba(255,23,77,.12), rgba(0,0,0,.76), rgba(0,245,255,.10)),
    repeating-linear-gradient(0deg, rgba(255,23,77,.10) 0 1px, transparent 1px 5px);
}
.oni-access-unseal-overlay span::before {
  content:"BREACH HANDSHAKE / ";
  color:#00f5ff;
}
.oni-unsealing .oni-access-unseal-overlay { animation:oniUnsealOverlay 1.06s ease forwards; }
.oni-auth-core-fallback {
  border-color:rgba(255,23,77,.72);
  background:linear-gradient(135deg, rgba(255,23,77,.30), rgba(0,0,0,.62));
}
.oni-auth-retry {
  margin-top:12px;
  min-height:38px;
  padding:0 16px;
  border:1px solid rgba(0,245,255,.38);
  border-radius:999px;
  background:rgba(0,245,255,.08);
  color:#d8feff;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.oni-hud-panel.is-danger {
  border-color:rgba(255,23,77,.34);
  box-shadow:0 0 34px rgba(255,23,77,.10);
}
.oni-hud-panel.is-danger strong { color:#ff6d8f; }
.oni-guardian-unlock { text-decoration:none; }
.oni-guardian-unlock.is-loading { cursor:progress; opacity:.9; }
.oni-guardian-unlock[data-oni-disabled="true"] { pointer-events:none; }
.oni-js-ready .oni-nojs-access,
.oni-nojs-access { display:none!important; }
@keyframes oniBreachWallExecute {
  0% { opacity:0; transform:translateX(-4vw) skewX(0deg); filter:contrast(1); }
  12% { opacity:1; transform:translateX(5vw) skewX(-7deg); filter:contrast(2.4) saturate(1.8); }
  20% { opacity:.38; transform:translateX(-8vw) skewX(8deg); }
  36% { opacity:1; transform:translateX(2vw) scaleY(1.08); }
  52% { opacity:.24; transform:translateX(12vw) scaleX(1.02); }
  68% { opacity:1; transform:translateX(-2vw); }
  100% { opacity:0; transform:translateX(0); filter:contrast(1); }
}
@keyframes oniBreachBandsChaos {
  0%,100% { transform:translateX(0) scaleY(1); filter:contrast(1.1); }
  16% { transform:translateX(32px) scaleY(1.25); filter:contrast(2.2); }
  28% { transform:translateX(-28px) scaleY(.88); }
  44% { transform:translateX(14px) scaleX(1.04); }
  60% { transform:translateX(-8px) scaleY(1.18); }
}
@keyframes oniBreachRedTear {
  0%,100%{ transform:translateX(0); filter:hue-rotate(0deg) contrast(1.2); }
  30%{ transform:translateX(-18px); filter:hue-rotate(-28deg) contrast(2.3); }
  56%{ transform:translateX(22px); filter:hue-rotate(18deg) contrast(1.8); }
}
@keyframes oniSceneHardTear {
  0%,100% { transform:translateX(0); filter:none; }
  25% { transform:translateX(-8px); filter:contrast(1.45) saturate(1.7) hue-rotate(-8deg); }
  50% { transform:translateX(11px); filter:contrast(1.9) saturate(1.9) hue-rotate(12deg); }
  75% { transform:translateX(-3px); filter:contrast(1.25); }
}
@keyframes oniBootHackGlitch {
  0%,100%{ transform:translateX(-3vw) scaleY(1); opacity:.80; }
  35%{ transform:translateX(7vw) scaleY(1.18); opacity:1; }
  65%{ transform:translateX(-9vw) scaleY(.82); opacity:.72; }
}
@keyframes oniBootHackGlow {
  0%,100%{ transform:scale(1); opacity:.52; }
  50%{ transform:scale(1.04); opacity:.84; }
}
@keyframes oniBootFinalBlink {
  0%,100% { opacity:1; }
  50% { opacity:.18; }
}
@media (max-width: 680px) {
  .oni-guardian-boot-core { width:94vw; padding:22px 16px; max-height:78svh; }
  .oni-guardian-boot-label { font-size:15px; line-height:1.45; }
  .oni-guardian-boot-line { font-size:10px; gap:8px; }
  .oni-breach-wall { opacity:.08; }
  .oni-breach-transition .oni-breach-wall,
  .oni-unsealing .oni-breach-wall,
  .oni-glitch-burst .oni-breach-wall { opacity:1; }
  .oni-guardian-glitch-bands { opacity:.72; }
}
@media (prefers-reduced-motion: reduce) {
  .oni-breach-wall { display:none; }
  .oni-breach-transition .oni-guardian-scene,
  .oni-unsealing .oni-guardian-scene,
  .oni-glitch-burst .oni-guardian-scene { animation:none; }
}

/* LOGIN_VARIANT_ASSET_PACK_CDN_RUNTIME_v0.4.44 Login Variant Engine + WebAudio initialize gate + asset-pack CDN fallback. */
.oni-terminal-initializer {
  position:fixed;
  inset:0;
  z-index:92;
  display:grid;
  place-items:center;
  padding:24px;
  background:
    radial-gradient(circle at 74% 22%, rgba(255,43,214,.24), transparent 31%),
    radial-gradient(circle at 18% 82%, rgba(255,23,77,.28), transparent 28%),
    linear-gradient(135deg, rgba(0,245,255,.06), transparent 44%),
    #020207;
  transition:opacity .34s ease, visibility .34s ease, transform .34s ease;
}
.oni-terminal-initializer::before,
.oni-terminal-initializer::after {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
}
.oni-terminal-initializer::before {
  background:
    linear-gradient(90deg, transparent 0 14%, rgba(255,23,77,.65) 18%, transparent 31%) 0 22% / 230% 8px no-repeat,
    linear-gradient(90deg, transparent 0 34%, rgba(0,245,255,.42) 41%, transparent 53%) 0 62% / 260% 4px no-repeat,
    repeating-linear-gradient(0deg, rgba(255,255,255,.035) 0 1px, transparent 1px 5px);
  animation: oniInitGlitchSweep 2.7s steps(2,end) infinite;
  mix-blend-mode:screen;
}
.oni-terminal-initializer::after {
  background:radial-gradient(circle at 50% 50%, transparent 0 20%, rgba(255,23,77,.12) 24%, transparent 34%);
  filter:blur(12px);
  opacity:.72;
}
.oni-init-core {
  position:relative;
  z-index:1;
  width:min(760px, 92vw);
  padding:clamp(28px,5vw,56px);
  border:1px solid rgba(255,43,214,.36);
  border-left:3px solid rgba(255,23,77,.84);
  border-radius:28px;
  background:linear-gradient(135deg, rgba(255,23,77,.13), rgba(4,6,13,.82) 48%, rgba(0,245,255,.08));
  box-shadow:0 34px 120px rgba(0,0,0,.62), 0 0 70px rgba(255,23,77,.22), inset 0 0 48px rgba(255,43,214,.08);
  overflow:hidden;
}
.oni-init-core::before {
  content:"AUDIO_CONTEXT_ARMED_AFTER_OPERATOR_GESTURE";
  position:absolute;
  top:14px;
  right:18px;
  max-width:62%;
  color:rgba(0,245,255,.70);
  font:800 10px/1 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  letter-spacing:.14em;
}
.oni-init-micro {
  color:#ff6d8f;
  font:900 11px/1.2 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  letter-spacing:.22em;
  text-transform:uppercase;
}
.oni-init-core h1 {
  margin:14px 0 10px;
  color:#fff;
  font-size:clamp(42px,8vw,86px);
  line-height:.92;
  letter-spacing:-.06em;
  text-transform:uppercase;
  text-shadow:0 0 26px rgba(255,23,77,.55), 0 0 64px rgba(0,245,255,.22);
}
.oni-init-core p {
  max-width:650px;
  color:#ffe7ed;
  font-size:clamp(15px,2vw,20px);
  line-height:1.5;
}
.oni-init-core small {
  display:block;
  margin-top:14px;
  color:rgba(216,254,255,.62);
  font:800 10px/1.4 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.oni-init-button {
  min-height:58px;
  margin-top:24px;
  padding:0 26px;
  border:1px solid rgba(0,245,255,.44);
  border-radius:999px;
  background:linear-gradient(135deg, rgba(255,23,77,.95), rgba(255,43,214,.76) 48%, rgba(0,245,255,.30));
  color:white;
  font-weight:1000;
  letter-spacing:.18em;
  text-transform:uppercase;
  box-shadow:0 0 40px rgba(255,23,77,.28), 0 0 80px rgba(0,245,255,.12), inset 0 0 24px rgba(255,255,255,.12);
  cursor:pointer;
}
.oni-init-button i { margin-left:12px; font-style:normal; color:#d8feff; }
.oni-init-button[data-oni-disabled="true"] { opacity:.72; cursor:progress; }
.oni-terminal-initialized .oni-terminal-initializer,
.oni-auth-ready .oni-terminal-initializer {
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:scale(1.03);
}
.oni-preinit .oni-guardian-boot,
.oni-ready .oni-guardian-boot,
.oni-auth-ready .oni-guardian-boot {
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}
.oni-terminal-initialized.oni-booting .oni-guardian-boot {
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  animation:none;
}
.oni-terminal-initialized.oni-booting .oni-guardian-boot-progress i {
  animation:oniGuardianBootProgress 4.05s cubic-bezier(.12,.78,.16,1) forwards;
}
.oni-short-sequence.oni-terminal-initialized.oni-booting .oni-guardian-boot-progress i {
  animation-duration:1.05s;
}
.oni-preinit .oni-guardian-scene {
  filter:brightness(.28) saturate(1.25) blur(2px);
  transform:scale(1.012);
}
.oni-preinit .oni-guardian-access-card { opacity:.22; transform:translateY(14px) scale(.985); }
.oni-login-variant-chip {
  display:inline-flex;
  margin-bottom:12px;
  padding:6px 10px;
  border:1px solid rgba(255,23,77,.45);
  border-radius:999px;
  color:#d8feff;
  background:rgba(255,23,77,.12);
  font:900 10px/1 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.oni-login-variant-aura {
  position:fixed;
  inset:0;
  z-index:1;
  pointer-events:none;
  opacity:.55;
  mix-blend-mode:screen;
  background:radial-gradient(circle at 70% 34%, rgba(255,23,77,.16), transparent 32%);
}
.oni-variant-breach-override .oni-login-variant-aura { background:radial-gradient(circle at 74% 22%, rgba(255,23,77,.32), transparent 35%), radial-gradient(circle at 18% 74%, rgba(255,43,214,.22), transparent 30%); }
.oni-variant-guardian-awakening .oni-login-variant-aura { background:radial-gradient(circle at 72% 24%, rgba(155,92,255,.34), transparent 36%), radial-gradient(circle at 48% 72%, rgba(0,245,255,.14), transparent 30%); }
.oni-variant-market-war-room .oni-login-variant-aura { background:radial-gradient(circle at 78% 22%, rgba(0,245,255,.28), transparent 35%), radial-gradient(circle at 26% 70%, rgba(50,255,173,.16), transparent 28%); }
.oni-variant-breach-override .oni-guardian-boot { background:radial-gradient(circle at 12% 90%, rgba(255,23,77,.46), transparent 24%), radial-gradient(circle at 78% 18%, rgba(255,43,214,.30), transparent 26%), #020104; }
.oni-variant-guardian-awakening .oni-guardian-boot { background:radial-gradient(circle at 68% 26%, rgba(155,92,255,.42), transparent 28%), radial-gradient(circle at 24% 88%, rgba(0,245,255,.18), transparent 26%), #03020a; }
.oni-variant-market-war-room .oni-guardian-boot { background:radial-gradient(circle at 72% 22%, rgba(0,245,255,.30), transparent 28%), radial-gradient(circle at 18% 78%, rgba(50,255,173,.18), transparent 26%), #02070b; }
.oni-variant-guardian-awakening .oni-guardian-boot-core { border-left-color:rgba(155,92,255,.82); box-shadow:0 0 48px rgba(155,92,255,.18), inset 0 0 38px rgba(0,245,255,.06); }
.oni-variant-market-war-room .oni-guardian-boot-core { border-left-color:rgba(0,245,255,.76); box-shadow:0 0 48px rgba(0,245,255,.15), inset 0 0 38px rgba(50,255,173,.06); }
.oni-variant-guardian-awakening .oni-guardian-boot-line span::before { color:#b886ff; }
.oni-variant-market-war-room .oni-guardian-boot-line span::before { color:#00f5ff; }
.oni-variant-market-war-room .oni-guardian-boot-final strong { color:#32ffad; }
.oni-variant-guardian-awakening .oni-guardian-boot-final strong { color:#b886ff; }
.oni-variant-market-war-room .oni-guardian-glitch-bands { opacity:.42; background:linear-gradient(90deg, transparent 0 14%, rgba(0,245,255,.68) 20%, transparent 34%) 0 20% / 210% 6px no-repeat, linear-gradient(90deg, transparent 0 40%, rgba(50,255,173,.46) 48%, transparent 60%) 0 62% / 260% 4px no-repeat, repeating-linear-gradient(0deg, transparent 0 5px, rgba(0,245,255,.04) 5px 6px); }
.oni-variant-guardian-awakening .oni-guardian-glitch-bands { opacity:.48; background:linear-gradient(90deg, transparent 0 8%, rgba(155,92,255,.68) 15%, transparent 28%) 0 24% / 210% 7px no-repeat, linear-gradient(90deg, transparent 0 46%, rgba(0,245,255,.44) 52%, transparent 66%) 0 70% / 230% 4px no-repeat, repeating-linear-gradient(0deg, transparent 0 5px, rgba(255,255,255,.04) 5px 6px); }
@keyframes oniInitGlitchSweep {
  0%,100% { transform:translateX(0); opacity:.62; }
  18% { transform:translateX(28px) scaleY(1.18); opacity:1; }
  32% { transform:translateX(-22px) scaleY(.86); }
  61% { transform:translateX(10px); opacity:.44; }
}
@media (max-width:680px) {
  .oni-init-core { padding:26px 18px; border-radius:22px; }
  .oni-init-core::before { display:none; }
  .oni-init-core h1 { font-size:clamp(38px,13vw,62px); }
  .oni-init-button { width:100%; min-height:56px; }
}
@media (prefers-reduced-motion: reduce) {
  .oni-terminal-initializer::before { animation:none; }
  .oni-terminal-initialized .oni-terminal-initializer { display:none; }
}


/* Historical release_guard compatibility markers retained by v0.4.1.
 * v0.3.86-cinematic-boot-guardian-login
 * Short boot sequence
 * v0.3.87-guardian-access-core-unseal
 * v0.3.88-guardian-login-ajax-glitch-corrective
 * v0.3.89-cyberpunk-breach-guardian-login
 * LOGIN_INVALID_CREDENTIALS_UI_v0.4.18
 * LOGIN_VARIANT_ASSET_PACK_CDN_RUNTIME_v0.4.44
 */

/* LOGIN_VARIANT_ASSET_PACK_CDN_v0.4.44
 * v0.4.44 compatibility aliases for the Initialize Terminal gate and the
 * asset-pack/CDN login variant runtime. The CSS/JS remains login-only.
 */
.oni-terminal-initializer-card { 
  position:relative;
  width:min(560px, calc(100vw - 36px));
  padding:clamp(26px, 5vw, 48px);
  border:1px solid rgba(0,245,255,.32);
  border-radius:28px;
  background:linear-gradient(135deg, rgba(3,7,14,.92), rgba(12,13,30,.82));
  box-shadow:0 24px 90px rgba(0,0,0,.64), 0 0 54px rgba(255,23,77,.18), inset 0 0 34px rgba(0,245,255,.06);
  overflow:hidden;
  text-align:left;
}
.oni-terminal-initializer-card::before {
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:linear-gradient(90deg, transparent, rgba(255,23,77,.28), transparent) 0 18% / 180% 1px no-repeat,
             linear-gradient(90deg, transparent, rgba(0,245,255,.18), transparent) 0 68% / 160% 1px no-repeat;
  animation:oniInitGlitchSweep 2.8s steps(2,end) infinite;
}
.oni-initializer-kicker,
.oni-terminal-initializer-card .oni-initializer-kicker {
  margin:0 0 10px;
  font:900 11px/1 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  text-transform:uppercase;
  letter-spacing:.22em;
  color:var(--oni-guardian-cyan);
}
.oni-terminal-initializer-card h1 {
  margin:0 0 12px;
  font-size:clamp(38px, 8vw, 78px);
  line-height:.9;
  letter-spacing:-.06em;
  text-transform:uppercase;
  color:#fff;
  text-shadow:0 0 28px rgba(0,245,255,.26);
}
.oni-terminal-initializer-card p {
  margin:0 0 22px;
  color:#bdd4e5;
  max-width:38rem;
}
.oni-terminal-initializer-card small {
  display:block;
  margin-top:16px;
  color:#7f95aa;
}
.oni-initialize-terminal-button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:56px;
  padding:0 24px;
  border:1px solid rgba(255,23,77,.65);
  border-radius:999px;
  color:#fff;
  background:linear-gradient(135deg, rgba(255,23,77,.95), rgba(255,43,214,.48));
  box-shadow:0 0 28px rgba(255,23,77,.34), inset 0 0 18px rgba(255,255,255,.08);
  text-transform:uppercase;
  letter-spacing:.16em;
  font-weight:900;
  cursor:pointer;
}
.oni-initialize-terminal-button i { margin-left:12px; font-style:normal; color:#d8feff; }
.oni-initialize-terminal-button[data-oni-disabled="true"],
.oni-initialize-terminal-button[disabled] { opacity:.72; cursor:progress; }
body[data-oni-login-variant="breach-override"] .oni-login-variant-aura,
.oni-variant-breach-override .oni-login-variant-aura { background:radial-gradient(circle at 74% 22%, rgba(255,23,77,.32), transparent 35%), radial-gradient(circle at 18% 74%, rgba(255,43,214,.22), transparent 30%); }
body[data-oni-login-variant="guardian-awakening"] .oni-login-variant-aura,
.oni-variant-guardian-awakening .oni-login-variant-aura { background:radial-gradient(circle at 72% 24%, rgba(155,92,255,.34), transparent 36%), radial-gradient(circle at 48% 72%, rgba(0,245,255,.14), transparent 30%); }
body[data-oni-login-variant="market-war-room"] .oni-login-variant-aura,
.oni-variant-market-war-room .oni-login-variant-aura { background:radial-gradient(circle at 78% 22%, rgba(0,245,255,.28), transparent 35%), radial-gradient(circle at 26% 70%, rgba(50,255,173,.16), transparent 28%); }
@media (max-width:680px) {
  .oni-terminal-initializer-card { padding:26px 18px; border-radius:22px; }
  .oni-terminal-initializer-card::before { display:none; }
  .oni-terminal-initializer-card h1 { font-size:clamp(38px,13vw,62px); }
  .oni-initialize-terminal-button { width:100%; min-height:56px; }
}
@media (prefers-reduced-motion: reduce) {
  .oni-terminal-initializer-card::before { animation:none; }
  .oni-guardian-login-body,
  .oni-guardian-login-body * { scroll-behavior:auto !important; }
}

/* BULL_MARKET_LOGIN_ASSET_PACK_v0.4.47
 * Bull-market visual layer is additive: it augments the Market War Room variant
 * and never replaces the existing Oni/Guardian figure. The image is lazy-loaded
 * by JS only when the weighted random variant selects market-war-room.
 */
.oni-bull-market-layer {
  position:absolute;
  z-index:-3;
  right:clamp(18px, 5vw, 88px);
  bottom:clamp(42px, 10vh, 120px);
  width:min(42vw, 620px);
  aspect-ratio:1;
  opacity:0;
  transform:translate3d(30px, 18px, 0) scale(.92);
  pointer-events:none;
  transition:opacity .72s ease, transform .72s cubic-bezier(.16,.84,.24,1);
  filter:drop-shadow(0 0 36px rgba(0,245,255,.30)) drop-shadow(0 0 56px rgba(50,255,173,.16));
}
.oni-bull-market-hero {
  width:100%;
  height:100%;
  object-fit:contain;
  opacity:.94;
  mix-blend-mode:screen;
}
.oni-bull-market-orbit {
  position:absolute;
  inset:10%;
  border:1px solid rgba(0,245,255,.28);
  border-left-color:rgba(50,255,173,.42);
  border-bottom-color:rgba(255,43,214,.25);
  border-radius:999px;
  transform:rotate(-18deg) scaleX(1.12);
  box-shadow:0 0 28px rgba(0,245,255,.16), inset 0 0 22px rgba(50,255,173,.08);
}
.oni-variant-market-war-room .oni-bull-market-layer,
body[data-oni-login-variant="market-war-room"] .oni-bull-market-layer {
  opacity:.86;
  transform:translate3d(calc(var(--guardian-pointer-x) * -8px), calc(var(--guardian-pointer-y) * -5px), 0) scale(1);
}
.oni-variant-market-war-room .oni-guardian-hero,
body[data-oni-login-variant="market-war-room"] .oni-guardian-hero {
  opacity:.48;
  filter:drop-shadow(0 0 28px rgba(0,245,255,.26)) drop-shadow(0 0 60px rgba(50,255,173,.12));
}
.oni-variant-market-war-room .oni-guardian-scene,
body[data-oni-login-variant="market-war-room"] .oni-guardian-scene {
  background:radial-gradient(circle at 76% 42%, rgba(0,245,255,.24), transparent 24%), radial-gradient(circle at 82% 68%, rgba(50,255,173,.16), transparent 28%), radial-gradient(circle at 18% 14%, rgba(255,43,214,.14), transparent 30%), linear-gradient(115deg, #02070b 0%, #061522 45%, #02050a 100%);
}
.oni-variant-market-war-room .oni-hud-panel.market,
body[data-oni-login-variant="market-war-room"] .oni-hud-panel.market {
  border-color:rgba(50,255,173,.34);
  box-shadow:0 0 34px rgba(0,245,255,.10), 0 0 52px rgba(50,255,173,.08);
}
@media (max-width: 980px) {
  .oni-bull-market-layer { right:-4vw; bottom:auto; top:7svh; width:min(52vw, 420px); opacity:0; }
  .oni-variant-market-war-room .oni-bull-market-layer,
  body[data-oni-login-variant="market-war-room"] .oni-bull-market-layer { opacity:.58; transform:scale(1); }
}
@media (max-width: 680px) {
  .oni-bull-market-layer { top:2svh; right:-10vw; width:70vw; }
  .oni-variant-market-war-room .oni-bull-market-layer,
  body[data-oni-login-variant="market-war-room"] .oni-bull-market-layer { opacity:.42; }
}
@media (prefers-reduced-motion: reduce) {
  .oni-bull-market-layer { transition:none; transform:none!important; }
}

/* CINEMATIC_LOGIN_VARIANT_EXPERIENCE_v0.4.48
 * Corrective scope: the four weighted login variants must be visibly different
 * experiences, not small copy/color changes. Guardian is preserved; bull is
 * additive and dominant only in Market War Room. DUAL_PACKAGE_RELEASE_CONTRACT_v0.4.48.
 */
.oni-guardian-boot-directive {
  margin:-8px 0 18px;
  color:rgba(216,254,255,.72);
  font:800 10px/1.4 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.oni-cinematic-variant-brief {
  position:relative;
  margin:0 0 18px;
  padding:14px 16px;
  border:1px solid rgba(0,245,255,.18);
  border-radius:18px;
  background:linear-gradient(135deg, rgba(0,245,255,.07), rgba(3,7,14,.54));
  box-shadow:inset 0 0 22px rgba(0,245,255,.045);
}
.oni-cinematic-variant-brief strong,
.oni-cinematic-variant-brief span { display:block; }
.oni-cinematic-variant-brief strong {
  color:#fff;
  font-size:13px;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.oni-cinematic-variant-brief span {
  margin-top:6px;
  color:#b7cfe0;
  font-size:13px;
  line-height:1.45;
}
.oni-cinematic-variant-brief ul {
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin:10px 0 0;
  padding:0;
  list-style:none;
}
.oni-cinematic-variant-brief li {
  padding:5px 7px;
  border:1px solid rgba(0,245,255,.18);
  border-radius:999px;
  color:#d8feff;
  background:rgba(0,245,255,.055);
  font:900 9px/1 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.oni-variant-experience {
  position:absolute;
  inset:0;
  z-index:-2;
  pointer-events:none;
  overflow:hidden;
}
.oni-experience-panel {
  position:absolute;
  opacity:0;
  transform:translate3d(22px, 12px, 0) scale(.985);
  transition:opacity .7s ease, transform .9s cubic-bezier(.16,.84,.24,1), filter .7s ease;
  padding:16px 18px;
  border:1px solid rgba(0,245,255,.22);
  border-radius:20px;
  background:linear-gradient(135deg, rgba(2,8,14,.72), rgba(6,14,28,.38));
  box-shadow:0 16px 48px rgba(0,0,0,.35), inset 0 0 24px rgba(0,245,255,.05);
  max-width:min(440px, 42vw);
}
.oni-experience-panel span,
.oni-experience-panel strong,
.oni-experience-panel em { display:block; }
.oni-experience-panel span {
  color:var(--oni-guardian-cyan);
  font:1000 10px/1 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  letter-spacing:.22em;
  text-transform:uppercase;
}
.oni-experience-panel strong {
  margin-top:8px;
  color:#fff;
  font-size:clamp(20px, 2.4vw, 34px);
  line-height:.95;
  letter-spacing:-.04em;
  text-transform:uppercase;
}
.oni-experience-panel em {
  margin-top:9px;
  color:#b9d6e8;
  font-style:normal;
  font-size:12px;
  line-height:1.35;
}
.oni-experience-current { left:7vw; top:10vh; }
.oni-experience-override { left:6vw; top:14vh; border-color:rgba(255,23,77,.46); }
.oni-experience-awakening { right:8vw; top:11vh; border-color:rgba(155,92,255,.42); }
.oni-experience-warroom { right:7vw; top:8vh; border-color:rgba(50,255,173,.38); }
.oni-guardian-sigil,
.oni-override-tear,
.oni-market-grid {
  position:absolute;
  inset:0;
  opacity:0;
  pointer-events:none;
  transition:opacity .62s ease, transform .9s ease;
}
.oni-guardian-sigil::before,
.oni-guardian-sigil::after {
  content:"";
  position:absolute;
  right:21vw;
  top:18vh;
  width:min(34vw, 480px);
  aspect-ratio:1;
  border-radius:999px;
  border:1px solid rgba(155,92,255,.32);
  box-shadow:0 0 52px rgba(155,92,255,.16), inset 0 0 44px rgba(0,245,255,.06);
  transform:rotate(-17deg) scaleX(1.18);
}
.oni-guardian-sigil::after {
  width:min(24vw, 330px);
  right:26vw;
  top:26vh;
  border-color:rgba(0,245,255,.28);
  transform:rotate(18deg) scaleX(.9);
}
.oni-override-tear {
  background:linear-gradient(90deg, rgba(255,23,77,.45), transparent 22%, rgba(255,43,214,.20) 44%, transparent 68%) -20vw 18vh / 140vw 13px no-repeat,
             linear-gradient(90deg, transparent 0 18%, rgba(255,23,77,.32) 24%, transparent 36%) 0 38vh / 120vw 7px no-repeat,
             repeating-linear-gradient(0deg, transparent 0 8px, rgba(255,23,77,.055) 8px 9px);
  mix-blend-mode:screen;
}
.oni-override-tear i {
  position:absolute;
  width:44vw;
  height:2px;
  left:6vw;
  background:linear-gradient(90deg, transparent, rgba(255,23,77,.9), rgba(255,255,255,.75), transparent);
  box-shadow:0 0 18px rgba(255,23,77,.65);
}
.oni-override-tear i:nth-child(1){ top:21vh; transform:skewX(-22deg); }
.oni-override-tear i:nth-child(2){ top:42vh; left:42vw; transform:skewX(19deg); }
.oni-override-tear i:nth-child(3){ top:65vh; width:60vw; transform:skewX(-8deg); }
.oni-market-grid {
  background:linear-gradient(90deg, rgba(0,245,255,.11) 1px, transparent 1px) 0 0 / 80px 80px,
             linear-gradient(0deg, rgba(50,255,173,.085) 1px, transparent 1px) 0 0 / 80px 80px,
             radial-gradient(circle at 74% 58%, rgba(50,255,173,.18), transparent 28%),
             linear-gradient(120deg, rgba(0,245,255,.12), transparent 44%, rgba(50,255,173,.08));
}
.oni-market-grid i {
  position:absolute;
  bottom:18vh;
  width:10px;
  border-radius:999px 999px 2px 2px;
  background:linear-gradient(180deg, #32ffad, #00f5ff 60%, rgba(0,245,255,.08));
  box-shadow:0 0 18px rgba(50,255,173,.40);
}
.oni-market-grid i:nth-child(1){ left:54vw; height:72px; }
.oni-market-grid i:nth-child(2){ left:57vw; height:126px; bottom:16vh; background:linear-gradient(180deg, #ff2bd6, #00f5ff); }
.oni-market-grid i:nth-child(3){ left:60vw; height:92px; bottom:20vh; }
.oni-market-grid i:nth-child(4){ left:64vw; height:154px; bottom:15vh; }
.oni-market-grid i:nth-child(5){ left:68vw; height:112px; bottom:18vh; background:linear-gradient(180deg, #ff2bd6, #32ffad); }
.oni-market-grid i:nth-child(6){ left:72vw; height:176px; bottom:14vh; }
.oni-market-grid i:nth-child(7){ left:76vw; height:104px; bottom:22vh; }
.oni-market-grid i:nth-child(8){ left:80vw; height:148px; bottom:16vh; background:linear-gradient(180deg, #ff2bd6, #00f5ff); }

/* Variant 0: current breach guardian remains the known baseline. */
.oni-variant-breach-guardian-current .oni-experience-current,
body[data-oni-login-variant="breach-guardian-current"] .oni-experience-current {
  opacity:.74;
  transform:none;
}
.oni-variant-breach-guardian-current .oni-guardian-scene,
body[data-oni-login-variant="breach-guardian-current"] .oni-guardian-scene {
  background:radial-gradient(circle at 72% 34%, rgba(255,23,77,.16), transparent 28%), radial-gradient(circle at 24% 72%, rgba(0,245,255,.12), transparent 28%), linear-gradient(115deg, #03060d, #080616 52%, #02050a);
}

/* Variant 1: Breach Override must feel like hacking/system intrusion. */
.oni-variant-breach-override .oni-experience-override,
body[data-oni-login-variant="breach-override"] .oni-experience-override,
.oni-variant-breach-override .oni-override-tear,
body[data-oni-login-variant="breach-override"] .oni-override-tear {
  opacity:1;
  transform:none;
}
.oni-variant-breach-override .oni-guardian-scene,
body[data-oni-login-variant="breach-override"] .oni-guardian-scene {
  background:radial-gradient(circle at 76% 28%, rgba(255,23,77,.35), transparent 26%), radial-gradient(circle at 18% 76%, rgba(255,43,214,.24), transparent 30%), linear-gradient(115deg, #080107 0%, #190712 42%, #020308 100%);
}
.oni-variant-breach-override .oni-guardian-hero,
body[data-oni-login-variant="breach-override"] .oni-guardian-hero {
  opacity:.66;
  transform:translate3d(-10px,0,0) scale(1.05);
  filter:contrast(1.45) saturate(1.4) hue-rotate(-18deg) drop-shadow(0 0 36px rgba(255,23,77,.42));
}
.oni-variant-breach-override .oni-guardian-access-card,
body[data-oni-login-variant="breach-override"] .oni-guardian-access-card {
  border-color:rgba(255,23,77,.62);
  border-left:3px solid rgba(255,23,77,.9);
  box-shadow:0 0 0 1px rgba(255,23,77,.14), 0 24px 90px rgba(0,0,0,.68), 0 0 60px rgba(255,23,77,.22);
}
.oni-variant-breach-override .oni-guardian-red-glitch,
body[data-oni-login-variant="breach-override"] .oni-guardian-red-glitch { opacity:.9; }
.oni-variant-breach-override .oni-guardian-glitch-bands,
body[data-oni-login-variant="breach-override"] .oni-guardian-glitch-bands { opacity:.92; animation-duration:1.25s; }
.oni-variant-breach-override .oni-sealed-core,
body[data-oni-login-variant="breach-override"] .oni-sealed-core { border-color:rgba(255,23,77,.72); background:linear-gradient(135deg, rgba(255,23,77,.24), rgba(0,0,0,.62)); }

/* Variant 2: Guardian Awakening must be an iconic, calmer Oni reveal. */
.oni-variant-guardian-awakening .oni-experience-awakening,
body[data-oni-login-variant="guardian-awakening"] .oni-experience-awakening,
.oni-variant-guardian-awakening .oni-guardian-sigil,
body[data-oni-login-variant="guardian-awakening"] .oni-guardian-sigil {
  opacity:.95;
  transform:none;
}
.oni-variant-guardian-awakening .oni-guardian-scene,
body[data-oni-login-variant="guardian-awakening"] .oni-guardian-scene {
  background:radial-gradient(circle at 70% 30%, rgba(155,92,255,.34), transparent 27%), radial-gradient(circle at 35% 70%, rgba(0,245,255,.15), transparent 30%), linear-gradient(115deg, #040611 0%, #0b1025 48%, #03030a 100%);
}
.oni-variant-guardian-awakening .oni-guardian-hero,
body[data-oni-login-variant="guardian-awakening"] .oni-guardian-hero {
  opacity:.86;
  transform:translate3d(10px,-4px,0) scale(1.045);
  filter:brightness(1.16) saturate(1.25) hue-rotate(18deg) drop-shadow(0 0 52px rgba(155,92,255,.34)) drop-shadow(0 0 42px rgba(0,245,255,.18));
}
.oni-variant-guardian-awakening .oni-guardian-blade-glow,
body[data-oni-login-variant="guardian-awakening"] .oni-guardian-blade-glow { opacity:.72; filter:hue-rotate(42deg) brightness(1.35); }
.oni-variant-guardian-awakening .oni-guardian-access-card,
body[data-oni-login-variant="guardian-awakening"] .oni-guardian-access-card {
  border-color:rgba(155,92,255,.52);
  box-shadow:0 24px 90px rgba(0,0,0,.60), 0 0 58px rgba(155,92,255,.20), inset 0 0 42px rgba(0,245,255,.05);
}
.oni-variant-guardian-awakening .oni-guardian-kicker,
body[data-oni-login-variant="guardian-awakening"] .oni-guardian-kicker { color:#caa8ff; }
.oni-variant-guardian-awakening .oni-guardian-glitch-bands,
body[data-oni-login-variant="guardian-awakening"] .oni-guardian-glitch-bands { opacity:.30; }

/* Variant 3: Market War Room must be a trading cockpit, not a minor overlay. */
.oni-variant-market-war-room .oni-experience-warroom,
body[data-oni-login-variant="market-war-room"] .oni-experience-warroom,
.oni-variant-market-war-room .oni-market-grid,
body[data-oni-login-variant="market-war-room"] .oni-market-grid {
  opacity:.98;
  transform:none;
}
.oni-variant-market-war-room .oni-bull-market-layer,
body[data-oni-login-variant="market-war-room"] .oni-bull-market-layer {
  z-index:-1;
  width:min(50vw, 760px);
  right:clamp(4px, 3vw, 48px);
  bottom:clamp(22px, 7vh, 86px);
  opacity:.96;
  transform:translate3d(calc(var(--guardian-pointer-x) * -12px), calc(var(--guardian-pointer-y) * -8px), 0) scale(1.08);
}
.oni-variant-market-war-room .oni-guardian-hero,
body[data-oni-login-variant="market-war-room"] .oni-guardian-hero {
  opacity:.34;
  transform:translate3d(-5vw, -2vh, 0) scale(1.02);
  filter:brightness(.78) saturate(1.18) drop-shadow(0 0 30px rgba(0,245,255,.22));
}
.oni-variant-market-war-room .oni-guardian-access-card,
body[data-oni-login-variant="market-war-room"] .oni-guardian-access-card {
  border-color:rgba(50,255,173,.44);
  box-shadow:0 22px 86px rgba(0,0,0,.62), 0 0 64px rgba(0,245,255,.16), inset 0 0 36px rgba(50,255,173,.06);
}
.oni-variant-market-war-room .oni-guardian-enter,
body[data-oni-login-variant="market-war-room"] .oni-guardian-enter {
  border-color:rgba(50,255,173,.75);
  background:linear-gradient(135deg, rgba(0,245,255,.82), rgba(50,255,173,.50) 52%, rgba(255,43,214,.38));
}
.oni-variant-market-war-room .oni-sealed-core,
body[data-oni-login-variant="market-war-room"] .oni-sealed-core { border-color:rgba(50,255,173,.54); background:linear-gradient(135deg, rgba(50,255,173,.14), rgba(0,0,0,.62)); }
.oni-variant-market-war-room .oni-mini-candles i,
body[data-oni-login-variant="market-war-room"] .oni-mini-candles i { box-shadow:0 0 10px rgba(50,255,173,.55); }
.oni-variant-market-war-room .oni-cinematic-variant-brief,
body[data-oni-login-variant="market-war-room"] .oni-cinematic-variant-brief { border-color:rgba(50,255,173,.24); background:linear-gradient(135deg, rgba(50,255,173,.08), rgba(3,7,14,.54)); }

.oni-terminal-initialized.oni-booting .oni-experience-panel,
.oni-terminal-initialized.oni-booting .oni-guardian-sigil,
.oni-terminal-initialized.oni-booting .oni-override-tear,
.oni-terminal-initialized.oni-booting .oni-market-grid { opacity:0; }
.oni-terminal-initialized.oni-booting.oni-variant-breach-override .oni-override-tear { opacity:.7; animation:oniBreachBandsChaos 1.4s steps(2,end) infinite; }
.oni-terminal-initialized.oni-booting.oni-variant-guardian-awakening .oni-guardian-sigil { opacity:.68; animation:oniBootHackGlow 2.8s ease-in-out infinite; }
.oni-terminal-initialized.oni-booting.oni-variant-market-war-room .oni-market-grid { opacity:.62; animation:oniBootHackGlow 2.2s ease-in-out infinite; }

@media (max-width: 980px) {
  .oni-experience-panel { max-width:min(520px, 84vw); left:8vw!important; right:auto!important; top:5svh!important; padding:12px 14px; }
  .oni-experience-panel strong { font-size:clamp(18px, 4.2vw, 26px); }
  .oni-variant-market-war-room .oni-bull-market-layer,
  body[data-oni-login-variant="market-war-room"] .oni-bull-market-layer { width:min(76vw, 520px); right:-13vw; top:14svh; bottom:auto; opacity:.60; }
  .oni-market-grid i { bottom:10vh; }
}
@media (max-width: 680px) {
  .oni-cinematic-variant-brief { padding:12px; margin-bottom:14px; }
  .oni-cinematic-variant-brief span { font-size:12px; }
  .oni-cinematic-variant-brief ul { display:none; }
  .oni-experience-panel { display:none; }
  .oni-guardian-sigil::before,
  .oni-guardian-sigil::after { right:2vw; top:10svh; width:72vw; }
  .oni-variant-market-war-room .oni-bull-market-layer,
  body[data-oni-login-variant="market-war-room"] .oni-bull-market-layer { width:84vw; right:-20vw; top:10svh; opacity:.50; }
  .oni-market-grid i { transform:scaleY(.58); transform-origin:bottom; }
}
@media (prefers-reduced-motion: reduce) {
  .oni-experience-panel,
  .oni-guardian-sigil,
  .oni-override-tear,
  .oni-market-grid { transition:none; animation:none!important; }
  .oni-variant-market-war-room .oni-bull-market-layer,
  body[data-oni-login-variant="market-war-room"] .oni-bull-market-layer { transform:none!important; }
}
