/* Adapted from the supplied startup reference; scoped to the brand introduction. */
html.intro-open{overflow:hidden}
.yhk-intro{--intro-paper:#e7e5df;--intro-ink:#202b26;--intro-secondary:#62645e;--intro-hair:#bbbdb5;--intro-signal:#c54e08;position:fixed;inset:0;width:100%;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:var(--intro-paper);color:var(--intro-ink);overflow:auto;overscroll-behavior:contain;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;opacity:1;transition:opacity .55s ease,transform .55s cubic-bezier(.16,1,.3,1)}
.yhk-intro:not([open]),.yhk-intro [hidden],.intro-replay[hidden]{display:none!important}
.yhk-intro::backdrop{background:#111713}
.yhk-intro[data-state=closing]{opacity:0;transform:translateY(-18px)}
.yhk-intro button{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}
.yhk-intro button:focus-visible{outline:2px solid var(--intro-signal);outline-offset:5px}
.yhk-intro .intro-mono{font-family:"SFMono-Regular",Consolas,monospace;font-size:10px;line-height:1.8;letter-spacing:.14em}
.intro-terminal{min-height:100svh;position:relative;isolation:isolate;display:grid;grid-template-rows:auto 1fr auto;padding:max(38px,env(safe-area-inset-top)) max(46px,env(safe-area-inset-right)) max(40px,env(safe-area-inset-bottom)) max(46px,env(safe-area-inset-left));overflow:clip;background:radial-gradient(ellipse at 76% 5%,#f9f9f5 0%,transparent 62%),var(--intro-paper)}
.intro-architecture{position:absolute;inset:0;z-index:-2;pointer-events:none}.intro-architecture i{position:absolute;top:18px;bottom:24px;border:1px solid #2228200b;width:14%}.intro-architecture i:first-child{left:5%;bottom:42%;width:10%}.intro-architecture i:nth-child(2){right:24%}.intro-architecture i:last-child{right:6%;width:16%}
.intro-corners{position:absolute;inset:20px;pointer-events:none;z-index:-1}.intro-corners i{position:absolute;width:16px;height:16px;border:solid var(--intro-hair)}.intro-corners i:first-child{top:0;left:0;border-width:1px 0 0 1px}.intro-corners i:nth-child(2){top:0;right:0;border-width:1px 1px 0 0}.intro-corners i:nth-child(3){bottom:0;left:0;border-width:0 0 1px 1px}.intro-corners i:last-child{bottom:0;right:0;border-width:0 1px 1px 0}
.intro-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;z-index:6;position:relative}.intro-brand{display:flex;align-items:center;gap:14px}.intro-brand img{border-radius:11px}.intro-brand #intro-brand{font-size:23px;line-height:1.4;letter-spacing:.1em;font-weight:600}.intro-brand #intro-brand span{font-size:12px;letter-spacing:.06em;font-weight:400;margin-inline-start:12px}.intro-brand .intro-mono{font-size:9px;letter-spacing:.12em;margin-top:5px;color:var(--intro-secondary)}
.yhk-intro .intro-skip{min-height:44px;background:transparent;border:1px solid transparent;padding:0 12px;display:flex;align-items:center;gap:14px;color:var(--intro-secondary);font-size:13px;white-space:nowrap}.intro-skip:hover{border-color:var(--intro-hair)}
.intro-stage{position:relative;min-height:480px;display:grid;place-items:center;padding:64px 0}.intro-reticle{position:absolute;width:min(580px,70vw,75svh);aspect-ratio:1;pointer-events:none;opacity:.34;transition:opacity .6s}.intro-reticle svg{width:100%;height:100%;display:block;overflow:visible}.intro-orbit-guide{stroke:var(--intro-hair);stroke-width:.7}.intro-orbit-a{stroke:var(--intro-ink);stroke-width:1.6;transform-origin:300px 300px}.intro-orbit-dot{fill:var(--intro-signal);stroke:none}.intro-orbit-b{stroke:var(--intro-hair);stroke-width:1;transform-origin:300px 300px}.intro-registration{stroke:var(--intro-secondary);stroke-width:1}
.yhk-intro:is([data-state=loading],[data-state=memories]) .intro-reticle{opacity:.8}.yhk-intro:is([data-state=loading],[data-state=memories]) .intro-orbit-a{animation:intro-turn 12s linear infinite}.yhk-intro:is([data-state=loading],[data-state=memories]) .intro-orbit-b{animation:intro-turn 16s linear infinite reverse}.yhk-intro[data-state=ready] .intro-reticle{opacity:.18}
.intro-content{position:relative;text-align:center;width:min(100%,610px)}.intro-kicker{font:10px/1.8 "SFMono-Regular",Consolas,monospace;letter-spacing:.19em;color:var(--intro-secondary);margin-bottom:25px}.intro-kicker span{color:var(--intro-signal);margin:0 7px}.intro-status-wrap{min-height:114px;display:grid;align-items:center}.yhk-intro .intro-status{font-size:clamp(28px,3.1vw,42px);font-weight:400;line-height:1.65;letter-spacing:.12em;max-width:570px;margin:0 auto;text-wrap:balance}.intro-divider{width:min(100%,440px);height:1px;background:var(--intro-hair);margin:22px auto 30px}.intro-controls{min-height:104px}.yhk-intro .intro-login{min-height:54px;padding:12px 24px;display:inline-flex;justify-content:center;align-items:center;gap:24px;border:1px solid var(--intro-ink);color:var(--intro-ink);background:var(--intro-paper);transition:background .2s,color .2s,transform .2s}.intro-login>span:first-child{font-size:15px;letter-spacing:.1em}.intro-login>span:last-child{font-size:22px}.yhk-intro .intro-login:hover{background:var(--intro-ink);color:var(--intro-paper)}.intro-login:active{transform:translateY(1px)}.intro-hint{font-size:12px;line-height:1.8;color:var(--intro-secondary);margin-top:17px}.intro-activity{height:54px;display:flex;gap:6px;justify-content:center;align-items:center}.intro-activity i{width:2px;height:22px;background:var(--intro-signal);animation:intro-meter 1.8s ease-in-out infinite alternate}.intro-activity i:nth-child(2){animation-delay:-.3s}.intro-activity i:nth-child(3){animation-delay:-.6s}.intro-activity i:nth-child(4){animation-delay:-.15s}.intro-activity i:nth-child(5){animation-delay:-.45s}
.intro-foot{position:relative;display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:24px;z-index:2}.intro-slats{display:flex;gap:5px;margin-bottom:12px}.intro-slats i{width:20px;height:2px;background:var(--intro-hair)}.intro-slats i.active{background:var(--intro-signal)}.intro-step{color:var(--intro-secondary)}.intro-log{font-size:12px;line-height:1.7;color:var(--intro-secondary);text-align:center}.intro-guest{font-size:11px;line-height:1.8;color:var(--intro-secondary);text-align:end}.intro-guest i{display:inline-block;width:5px;height:5px;background:var(--intro-signal);margin-inline-end:8px}.intro-progress{position:absolute;bottom:12px;left:50%;width:min(420px,40%);height:2px;transform:translateX(-50%);background:var(--intro-hair);direction:ltr}.intro-progress i{display:block;height:100%;background:var(--intro-signal);transform-origin:left;transform:scaleX(var(--intro-progress,0));transition:transform .75s ease}
.intro-boot{position:absolute;inset:0;display:grid;place-items:center;background:#111713;color:#eeeee8;z-index:5;text-align:center;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .65s ease,visibility .65s}.yhk-intro[data-state=boot] .intro-boot{opacity:1;visibility:visible}.intro-boot img{border-radius:18px;margin:0 auto 28px}.intro-boot-brand{font-size:36px;letter-spacing:.2em;padding-inline-start:.2em}.intro-boot-brand span{font-size:16px;letter-spacing:.08em}.intro-boot .intro-mono{color:#b8bcb2;margin-top:18px}.intro-boot-line{height:1px;width:140px;background:#eb762c;margin:32px auto;transform-origin:left}.yhk-intro[data-state=boot] .intro-boot-line{animation:intro-bootline 1.6s ease both}.intro-boot-caption{color:#c8ccc4;font-size:13px;line-height:1.8;padding-inline:20px}.yhk-intro[data-state=boot] .intro-header{color:#eeeee8}.yhk-intro[data-state=boot] .intro-header .intro-mono,.yhk-intro[data-state=boot] .intro-skip{color:#b8bcb2}
.intro-replay{background:none;border:0;color:var(--muted);font:inherit;font-size:12px;min-height:44px;padding:8px 0;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.intro-replay:focus-visible{outline:2px solid var(--deep);outline-offset:4px}
@keyframes intro-turn{to{transform:rotate(360deg)}}@keyframes intro-meter{from{transform:scaleY(.25)}to{transform:scaleY(1)}}@keyframes intro-bootline{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:760px){.intro-terminal{padding: max(28px,env(safe-area-inset-top)) max(22px,env(safe-area-inset-right)) max(34px,env(safe-area-inset-bottom)) max(22px,env(safe-area-inset-left))}.intro-corners{inset:12px}.intro-corners i{width:10px;height:10px}.intro-header{gap:10px}.intro-brand{gap:9px}.intro-brand img{width:34px;height:34px;border-radius:9px}.intro-brand #intro-brand{font-size:18px}.intro-brand #intro-brand span{font-size:10px;margin-inline-start:6px}.intro-brand .intro-mono{font-size:8px;letter-spacing:.04em;max-width:160px}.yhk-intro .intro-skip{font-size:12px;padding:0 3px;gap:5px}.intro-stage{min-height:450px;padding:55px 0}.intro-reticle{width:min(380px,96vw)}.intro-kicker{font-size:9px;letter-spacing:.08em;margin-bottom:20px}.intro-status-wrap{min-height:108px}.yhk-intro .intro-status{font-size:clamp(25px,6.6vw,34px);line-height:1.7;letter-spacing:.07em}.intro-divider{width:86%;margin:18px auto 28px}.yhk-intro .intro-login{width:min(100%,300px);gap:17px}.intro-login .intro-mono{font-size:9px}.intro-foot{grid-template-columns:1fr 1fr;gap:20px 12px}.intro-log{grid-column:1/-1;grid-row:1}.intro-step.intro-mono{font-size:9px;letter-spacing:0}.intro-guest{font-size:10px}.intro-progress{width:42%}.intro-hint{font-size:12px}.intro-boot-brand{font-size:30px}}
@media(max-height:650px) and (min-width:761px){.intro-stage{min-height:390px;padding:36px 0}.intro-reticle{width:410px}}
@media(prefers-reduced-motion:reduce){.yhk-intro,.yhk-intro *{animation:none!important;transition:none!important}.intro-boot{display:none}}
@media(max-width:360px){.intro-login .intro-mono{display:none}.yhk-intro .intro-login{gap:24px}.intro-login>span:first-child{letter-spacing:.04em}}

/* One slow breathing rhythm ties the background, orbit and content together. */
.intro-terminal::before{content:"";position:absolute;inset:-8%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 46%,#fffdf3b3 0%,#e6d2b21f 34%,transparent 66%);opacity:.18;transform:scale(.96)}
.yhk-intro[open] .intro-terminal::before{animation:intro-ambient-breathe 4.8s ease-in-out infinite}
.yhk-intro[open] .intro-reticle{animation:intro-ring-breathe 4.8s ease-in-out infinite}
.yhk-intro[open] .intro-content{animation:intro-content-breathe 4.8s ease-in-out infinite}
.yhk-intro[open] .intro-divider{animation:intro-line-breathe 4.8s ease-in-out infinite}
.yhk-intro[open] .intro-brand img,.yhk-intro[open] .intro-boot img{animation:intro-brand-breathe 4.8s ease-in-out infinite}
.yhk-intro .intro-login-dot{display:block;width:6px;height:6px;border-radius:50%;background:var(--intro-signal);animation:intro-signal-breathe 1.8s ease-in-out infinite}
@keyframes intro-ambient-breathe{0%,100%{opacity:.18;transform:scale(.96)}50%{opacity:.72;transform:scale(1.04)}}
@keyframes intro-ring-breathe{0%,100%{transform:scale(.975)}50%{transform:scale(1.025)}}
@keyframes intro-content-breathe{0%,100%{transform:translateY(2px)}50%{transform:translateY(-3px)}}
@keyframes intro-line-breathe{0%,100%{opacity:.55;transform:scaleX(.94)}50%{opacity:1;transform:scaleX(1)}}
@keyframes intro-brand-breathe{0%,100%{transform:scale(1);box-shadow:0 0 0 0 #c54e0800}50%{transform:scale(1.025);box-shadow:0 0 24px 4px #c54e0814}}
@keyframes intro-signal-breathe{0%,100%{opacity:.35;transform:scale(.8)}50%{opacity:1;transform:scale(1.1)}}
@media(prefers-reduced-motion:reduce){.yhk-intro,.yhk-intro *,.yhk-intro *::before,.yhk-intro *::after{animation:none!important;transition:none!important}}
