/* Quantum Dev V5 — scoped to public homepage */
body.qv-home{--qcyan:#47dbff;--qviolet:#a88cff;}
#qv-canvas{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;opacity:.72}
body.qv-home .topbar,body.qv-home main,body.qv-home footer{position:relative;z-index:2}
body.qv-home .topbar{backdrop-filter:blur(20px)}
#qv-pointer{position:fixed;width:340px;height:340px;border-radius:50%;left:0;top:0;pointer-events:none;z-index:1;background:radial-gradient(circle,#32baff17 0%,#ae6eff0b 33%,transparent 68%);transform:translate(-50%,-50%);will-change:left,top;opacity:0;transition:opacity .35s}
#qv-cursor{position:fixed;inset:0;z-index:100;pointer-events:none;opacity:0}
#qv-cursor::before{content:'';position:absolute;left:var(--x,0px);top:var(--y,0px);width:20px;height:20px;border:1px solid #68e7ff;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 18px #35caff80;transition:width .16s,height .16s}
#qv-cursor.qv-hover::before{width:43px;height:43px;border-color:#cbacff}
#qv-cursor::after{content:'+';color:#78eaff;position:absolute;left:var(--x,0px);top:var(--y,0px);transform:translate(-50%,-50%);font:14px monospace}
.qv-spark{position:fixed;pointer-events:none;z-index:101;color:#77e6ff;font:13px monospace;animation:qv-spark .65s ease-out forwards}
@keyframes qv-spark{to{opacity:0;transform:translate(var(--dx),var(--dy)) scale(.35)}}
body.qv-home .hero h1{background:linear-gradient(105deg,#f0f9ff 7%,#88dfff 30%,#bb9fff 48%,#fff 65%,#66e6ed 88%);background-size:260% 100%;color:transparent;-webkit-background-clip:text;background-clip:text;animation:qv-gradient 7s linear infinite}
body.qv-home .hero h1 .dot{color:#5fe5ff;-webkit-text-fill-color:#5fe5ff}
@keyframes qv-gradient{to{background-position:260% 0}}
body.qv-home .hero .overline::before{content:'> ';color:#66ffe0}
body.qv-home .hero h2::after{content:' ▌';color:#65ffe2;animation:qv-blink .85s steps(1) infinite}
@keyframes qv-blink{50%{opacity:0}}
body.qv-home .project-card,body.qv-home .chip,body.qv-home .portrait,body.qv-home .terminal{position:relative;transition:transform .25s ease,box-shadow .3s ease,border-color .3s;transform-style:preserve-3d}
body.qv-home .project-card::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%),#5ccfff1e,transparent 75%);opacity:0;transition:opacity .25s}
body.qv-home .project-card:hover::after{opacity:1}
body.qv-home .project-card:hover,body.qv-home .chip:hover{border-color:#78dfff80;box-shadow:0 16px 55px #27b7ff22,0 0 0 1px #55e7ff22}
body.qv-home .button,body.qv-home button[type=submit]{position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s}
body.qv-home .button:hover,body.qv-home button[type=submit]:hover{box-shadow:0 10px 38px #33b6ff50}
body.qv-home .button::after,body.qv-home button[type=submit]::after{content:'';position:absolute;inset:-50%;pointer-events:none;transform:translateX(-140%) rotate(25deg);background:linear-gradient(90deg,transparent,#ffffff44,transparent);transition:transform .6s}
body.qv-home .button:hover::after,body.qv-home button[type=submit]:hover::after{transform:translateX(140%) rotate(25deg)}
body.qv-home .navlinks a:not(.nav-admin)::after{content:'';display:block;width:0;height:2px;margin-top:3px;background:linear-gradient(90deg,#53e9ff,#b18aff);transition:width .25s}
body.qv-home .navlinks a:hover::after{width:100%}
.qv-reveal{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s cubic-bezier(.18,.7,.28,1)}.qv-reveal.qv-shown{opacity:1;transform:translateY(0)}
#qv-hud{position:fixed;bottom:15px;right:16px;z-index:22;display:flex;align-items:center;gap:9px;color:#a6e4fb;background:#061524de;border:1px solid #2f7c9a79;border-radius:999px;padding:8px 11px;font:11px ui-monospace,Consolas,monospace;box-shadow:0 10px 30px #0007;backdrop-filter:blur(10px)}
#qv-hud b{width:7px;height:7px;border-radius:50%;background:#57ffc5;box-shadow:0 0 10px #57ffc5}
#qv-hud button{border:1px solid #5794b688;background:#162d42;color:#d0f4ff;border-radius:15px;padding:5px 9px;cursor:pointer;font:inherit}
#qv-terminal{position:fixed;inset:0;z-index:1100;display:none;place-items:center;background:#020711dc;padding:16px;backdrop-filter:blur(11px)}#qv-terminal.qv-open{display:grid}
.qv-t-window{width:min(690px,100%);border:1px solid #477b9e;border-radius:16px;background:#08121f;box-shadow:0 24px 100px #000d;color:#d1f2ff;overflow:hidden;font:14px ui-monospace,Consolas,monospace}
.qv-t-head{display:flex;justify-content:space-between;align-items:center;background:#14263a;padding:12px 16px;border-bottom:1px solid #355a78}.qv-t-head button{background:#243d56;color:white;border:0;padding:6px 13px;border-radius:7px;cursor:pointer}
#qv-output{padding:20px;min-height:190px;max-height:42vh;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;color:#b5f2e6}
.qv-t-form{display:flex;gap:8px;padding:12px 20px 20px;align-items:center}.qv-t-form span{color:#68ffe0}.qv-t-form input{flex:1;min-width:0;background:#030c17;border:1px solid #41657e;color:#e8faff;border-radius:7px;padding:12px;font:16px ui-monospace,monospace}
#qv-boot{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;background:#030914;color:#dcfaff;padding:18px;font-family:ui-monospace,Consolas,monospace;transition:opacity .34s ease;overflow:hidden}#qv-boot.qv-exit{opacity:0;pointer-events:none}
.qv-boot-card{width:min(680px,100%);border:1px solid #4a749c;border-radius:16px;background:#0b1728;box-shadow:0 30px 120px #000a,0 0 65px #2fc6ff18;overflow:hidden}
.qv-boot-head{padding:14px 20px;border-bottom:1px solid #284d68;color:#83d4ef;font-size:13px;background:#132239}.qv-boot-head span{color:#ff6a79;margin-right:8px}.qv-boot-code{padding:22px;min-height:160px;white-space:pre-wrap;color:#acf1e8;font:clamp(11px,2.5vw,15px)/1.75 ui-monospace,Consolas,monospace}.qv-boot-progress{height:4px;background:#1a3145}.qv-boot-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,#39daff,#b183ff)}.qv-boot-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 20px;font-size:11px}.qv-boot-foot button{border:1px solid #6ca9d8;border-radius:8px;background:#163957;color:#e9ffff;padding:8px 13px;cursor:pointer}
@media (max-width:700px){#qv-hud{bottom:10px;right:10px;font-size:10px}#qv-pointer,#qv-cursor{display:none!important}.qv-reveal{transform:translateY(15px)}}
@media (hover:none),(pointer:coarse){#qv-pointer,#qv-cursor{display:none!important}}
@media (prefers-reduced-motion:reduce){body.qv-home .hero h1,body.qv-home .hero h2::after{animation:none}.qv-reveal{opacity:1;transform:none;transition:none}#qv-pointer,#qv-cursor,#qv-canvas{display:none!important}body.qv-home .project-card,body.qv-home .chip{transform:none!important}}
