.portfolio-loader{--loader-accent:#6038ff;z-index:9999;min-height:100dvh;color:hsl(var(--foreground));background:hsl(var(--background));flex-direction:column;padding:24px clamp(18px,6vw,80px);display:flex;position:fixed;inset:0;overflow:auto}.loader-header,.loader-footer{justify-content:space-between;align-items:center;gap:16px;display:flex}.loader-brand{color:var(--loader-accent);letter-spacing:-1px;font-size:25px;font-weight:800}.loader-brand span{color:#bd48ec}.loader-version,.loader-footer,.loader-caption{color:hsl(var(--muted-foreground));font-size:11px}.loader-version,.loader-footer{letter-spacing:1px}.loader-content{width:100%;max-width:620px;margin:auto;padding:48px 0}.loader-terminal{border:1px solid hsl(var(--border));background:hsl(var(--card));border-radius:14px;animation:.5s ease-out both loader-enter;overflow:hidden;box-shadow:0 12px 40px #50468212}.terminal-header{border-bottom:1px solid hsl(var(--border));min-height:46px;color:hsl(var(--muted-foreground));align-items:center;gap:12px;padding:0 16px;font:12px monospace;display:flex}.terminal-dots{gap:5px;display:flex}.terminal-dots i{background:#ff716b;border-radius:50%;width:8px;height:8px}.terminal-dots i:nth-child(2){background:#f5bd4f}.terminal-dots i:nth-child(3){background:#35c98a}.terminal-body{padding:20px;font:12px/1.7 Courier New,monospace}.terminal-command{overflow-wrap:anywhere;margin:0 0 20px;font-weight:700}.terminal-command span,.terminal-step>span{color:var(--loader-accent)}.terminal-step{color:hsl(var(--muted-foreground));align-items:baseline;gap:9px;margin:12px 0;display:flex}.terminal-step strong{color:#15966a;white-space:nowrap;margin-left:auto;font-size:11px}.terminal-step .working{color:var(--loader-accent);animation:1.2s infinite loader-pulse}.terminal-ready{color:var(--loader-accent);flex-wrap:wrap;align-items:center;gap:8px;margin:22px 0 0;font-weight:700;display:flex}.cursor{background:var(--loader-accent);width:7px;height:14px;animation:.8s steps(2,start) infinite loader-blink}.loader-identity{text-align:center;margin-top:40px;animation:.7s ease-out .1s both loader-enter}.loader-eyebrow{color:hsl(var(--muted-foreground));letter-spacing:2px;font-size:10px;font-weight:700}.loader-identity h1{letter-spacing:-2px;margin:14px 0;font-size:clamp(30px,6vw,52px);font-weight:850}.loader-identity h1 span{color:var(--loader-accent)}.loader-role{color:hsl(var(--muted-foreground));letter-spacing:1.5px;font-size:11px}.progress-track{background:hsl(var(--muted));border-radius:20px;width:min(100%,380px);height:4px;margin:26px auto 12px;overflow:hidden}.progress-bar{border-radius:inherit;background:linear-gradient(90deg,#6038ff,#bd48ec);width:40%;height:100%;animation:1.5s ease-in-out infinite loader-progress}.loader-caption{text-align:center}.loader-footer{border-top:1px solid hsl(var(--border));padding-top:18px}@keyframes loader-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes loader-progress{0%{transform:translate(-110%)}to{transform:translate(260%)}}@keyframes loader-blink{to{visibility:hidden}}@keyframes loader-pulse{50%{opacity:.45}}@media (max-width:480px){.portfolio-loader{padding:18px 14px}.loader-version,.loader-footer{letter-spacing:.4px;font-size:9px}.terminal-body{padding:16px 12px;font-size:11px}.terminal-step{flex-wrap:wrap}.terminal-step strong{font-size:10px}.loader-identity h1{letter-spacing:-1px}.loader-role{letter-spacing:.7px;font-size:9px}}@media (prefers-reduced-motion:reduce){.portfolio-loader *,.portfolio-loader :before,.portfolio-loader :after{animation:none!important}}
