/* PFK NUK WEB LAB — bespoke login, isolated from older admin themes */
html body:has(.pfk-login){margin:0;min-width:320px;background:#eef5f7;color:#122037;}
.pfk-login,.pfk-login *{box-sizing:border-box}
.pfk-login{isolation:isolate;min-height:100vh;min-height:100svh;overflow:hidden;font-family:"Segoe UI Variable","Segoe UI",Inter,system-ui,-apple-system,sans-serif;color:#13243a;font-size:14px;line-height:1.5}
.pfk-login button,.pfk-login input{font:inherit}
.pfk-login a{text-decoration:none}
.pfk-login-layout{display:grid;grid-template-columns:minmax(0,1.32fr) minmax(430px,.88fr);min-height:100vh;min-height:100svh}
.pfk-hero{min-height:770px;position:relative;display:flex;flex-direction:column;overflow:hidden;background:#041b31;color:#fff;padding:0 clamp(30px,4.3vw,74px);z-index:1}
.pfk-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:56% 49%;opacity:.94;z-index:-5;filter:contrast(1.08) saturate(1.04)}
.pfk-hero-wash{position:absolute;inset:0;z-index:-4;background:linear-gradient(90deg,rgba(2,20,42,.97) 0%,rgba(2,26,48,.81) 42%,rgba(3,27,39,.28) 100%),linear-gradient(0deg,#011e30 0%,rgba(1,21,40,.3) 41%,rgba(1,19,36,.15) 72%,rgba(1,24,45,.55) 100%)}
.pfk-blueprint{position:absolute;inset:0;z-index:-3;opacity:.23;background:linear-gradient(90deg,transparent 98%,#49e5e35c 99%),linear-gradient(0deg,transparent 98%,#49e5e35c 99%);background-size:110px 110px;mask-image:linear-gradient(90deg,#000,transparent 95%)}
.pfk-hero:before,.pfk-hero:after{content:"";position:absolute;pointer-events:none;z-index:-2}.pfk-hero:before{width:420px;height:420px;border-radius:50%;background:#ccff2d33;filter:blur(90px);right:-200px;bottom:-160px;animation:pfk-lumen 9s ease-in-out infinite alternate}.pfk-hero:after{width:500px;height:220px;border-radius:50%;background:#167cff40;filter:blur(100px);left:-200px;bottom:-160px;animation:pfk-lumen 11s ease-in-out infinite alternate-reverse}
.pfk-orb{position:absolute;border-radius:50%;pointer-events:none;z-index:-1;border:1px solid #b0f9d92b}.pfk-orb-one{width:400px;height:400px;right:-175px;bottom:50px;box-shadow:0 0 100px #99ff4614,inset 0 0 90px #99ff4611}.pfk-orb-two{width:180px;height:180px;right:12%;top:16%;border-color:#baff623c}
.pfk-light-trails{position:absolute;left:-2%;right:-2%;width:104%;height:265px;bottom:-16px;z-index:1;pointer-events:none;overflow:visible;filter:drop-shadow(0 0 9px #8aeeff9c)}
.pfk-light-trails path{fill:none;stroke-width:4;stroke-linecap:round;stroke-dasharray:1200 160;animation:pfk-trail 11s linear infinite}.pfk-light-trails .pfk-wave-lime{stroke-width:5;animation-duration:14s;animation-direction:reverse;filter:drop-shadow(0 0 12px #bdff36)}
.pfk-hero-header{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:29px 0;position:relative;z-index:3}
.pfk-college-mark{display:flex;align-items:center;gap:12px;color:#fff;max-width:410px;min-width:230px}
.pfk-college-mark img{width:62px;height:62px;flex-shrink:0;object-fit:contain;filter:drop-shadow(0 6px 16px #0004)}
.pfk-college-mark span{font-size:clamp(12px,1.13vw,16px);font-weight:760;line-height:1.32;letter-spacing:-.25px}



.pfk-hero-middle{display:flex;flex-direction:column;justify-content:center;flex:1;min-height:580px;position:relative;z-index:2;padding:22px 0 68px;max-width:900px}
.pfk-hero-kicker{display:flex;align-items:center;gap:13px;font-size:11px;font-weight:860;letter-spacing:3px;color:#e8f7ff;white-space:nowrap}
.pfk-pulse-dot{width:8px;height:8px;border-radius:50%;background:#baff38;box-shadow:0 0 0 6px #b4ff2529,0 0 18px #baff39;animation:pfk-beat 3s ease-in-out infinite}
.pfk-kicker-rule{width:44px;height:1px;background:#d4f1f7b0}.pfk-kicker-note{font-size:11px;letter-spacing:.5px;color:#c1deed;font-weight:550}
.pfk-overline{font-size:10px;letter-spacing:2px;font-weight:780;color:#b8dcf1;margin-bottom:13px}
.pfk-hero-heading{padding-top:36px;position:relative;max-width:660px;z-index:3}
.pfk-hero-heading h1{font-size:clamp(54px,6vw,105px);letter-spacing:-.07em;font-weight:910;line-height:.98;margin:0 0 23px;text-wrap:balance;text-shadow:0 6px 28px #01172745}
.pfk-hero-heading h1 span,.pfk-hero-heading h1 em{display:block;font-style:normal}
.pfk-hero-heading h1 em{color:#caff4c;text-shadow:0 0 28px #a9ff353b;position:relative;width:max-content;max-width:100%}
.pfk-hero-heading h1 em:after{content:"";position:absolute;left:2%;right:1%;bottom:-10px;height:5px;border-radius:90% 10% 70% 20%;background:linear-gradient(90deg,#dcff49,#68ef87);transform:rotate(-1.4deg);box-shadow:0 0 20px #aafe35;opacity:.94}
.pfk-hero-heading p{margin:29px 0 0;max-width:440px;font-size:clamp(14px,1.17vw,17px);color:#d6e8f3;line-height:1.65;text-shadow:0 2px 10px #0007}
.pfk-tech{display:flex;flex-wrap:wrap;gap:8px;max-width:630px;margin-top:29px;position:relative;z-index:4}
.pfk-tech-pill{display:flex;align-items:center;gap:8px;background:#09263bbd;border:1px solid #d8f8ff4b;border-radius:12px;padding:7px 11px;backdrop-filter:blur(14px);font-size:11px;font-weight:660;box-shadow:inset 0 1px 0 #ffffff13}
.pfk-tech-pill b{display:grid;place-items:center;width:22px;height:22px;border-radius:5px;font-size:10px;line-height:1;font-weight:900;color:white}
.pfk-tech-pill .pfk-html{background:#ed5d26}.pfk-tech-pill .pfk-css{background:#1778d9}.pfk-tech-pill .pfk-js{background:#f9da27;color:#1a2132}.pfk-tech-pill .pfk-php{background:#6d6abd;border-radius:50%;font-size:9px}.pfk-tech-pill .pfk-sql{background:#056c90}.pfk-tech-pill .pfk-wp{background:#167198;border-radius:50%;font-family:Georgia,serif;font-size:14px}.pfk-tech-pill .pfk-joomla{background:#a83e64}
.pfk-scribble{position:absolute;right:4%;top:28%;z-index:2;color:#fff;transform:rotate(-8deg);font-size:17px;line-height:1.16;font-family:"Segoe Print","Comic Sans MS",cursive;text-shadow:0 2px 10px #0008}
.pfk-scribble span{display:block}.pfk-scribble i{display:block;margin-top:6px;width:98%;height:11px;border-bottom:3px solid #caff38;border-radius:50%;transform:rotate(-4deg)}
.pfk-floating-code{position:absolute;right:1%;bottom:95px;z-index:3;width:270px;border:1px solid #acddf678;border-radius:18px;overflow:hidden;transform:rotate(6deg);box-shadow:0 26px 65px #001528b8,0 0 40px #83dcfc33;background:#0b1a2add;backdrop-filter:blur(12px);animation:pfk-float 7s ease-in-out infinite}
.pfk-code-top{display:flex;align-items:center;gap:8px;background:#142d42d9;padding:10px 13px;color:#b9d5e8;font-size:10px}.pfk-code-top>span{margin-left:auto;font-weight:900;font-size:14px;color:#b6f95e}.pfk-code-dots{display:flex;gap:4px}.pfk-code-dots i{width:7px;height:7px;border-radius:50%;background:#f26667}.pfk-code-dots i:nth-child(2){background:#f4c85a}.pfk-code-dots i:nth-child(3){background:#40caa3}
.pfk-code-lines{font:11px/1.85 Consolas,"Liberation Mono",monospace;padding:15px 16px;color:#e4f2ff;white-space:nowrap}.pfk-code-lines small{color:#56718b;margin-right:11px;font-size:10px}.pfk-code-lines b{color:#ff88c8}.pfk-code-lines em{font-style:normal;color:#b4ed7b}.pfk-code-lines span{color:#71c5ff}
.pfk-hero-footer{display:flex;justify-content:space-between;gap:18px;z-index:3;position:relative;margin-top:auto;padding:24px 0 29px;border-top:1px solid #ffffff28;font-size:10px;letter-spacing:1.5px;color:#cde7ef;font-weight:700}.pfk-hero-footer i{color:#ccff46;margin:0 6px}.pfk-hero-footer b{color:#c7ff4b;margin:0 6px}
.pfk-auth-side{min-width:0;position:relative;background:radial-gradient(circle at 85% 8%,#daff8c8a 0,transparent 28%),radial-gradient(circle at 4% 88%,#cce5ff 0,transparent 42%),#f8fbfa;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:62px clamp(22px,3.2vw,65px) 26px;isolation:isolate}
.pfk-auth-side:before,.pfk-auth-side:after{content:"";position:absolute;pointer-events:none;z-index:-1}.pfk-auth-side:before{width:210px;height:210px;border:1px solid #d3ed8e;border-radius:39px;right:-90px;top:8%;transform:rotate(35deg);background:#ddff7831}.pfk-auth-side:after{width:180px;height:170px;border-radius:45px;border:1px solid #b0daf84d;left:-100px;bottom:-40px;transform:rotate(-24deg)}
.pfk-side-top{position:absolute;right:36px;top:28px;display:flex;align-items:flex-start;gap:17px;color:#7b889b;font-size:10px;letter-spacing:2px;line-height:1.6;font-weight:760}.pfk-deco-stars{color:#a8b3c2;font-size:23px;line-height:1.2}
.pfk-login-card{width:min(100%,493px);border-radius:28px;background:#fffffff0;box-shadow:0 29px 90px #0d3d3a20,0 2px 4px #071a1c0c;border:1px solid #fff;padding:clamp(26px,2.5vw,46px);position:relative;z-index:2}
.pfk-card-brand{display:flex;align-items:center;gap:12px;margin-bottom:35px}.pfk-card-brand img{width:53px;height:53px;object-fit:contain}.pfk-card-brand strong{display:block;font-size:19px;font-weight:900;letter-spacing:-.65px;color:#0d1a30;line-height:1.1}.pfk-card-brand strong span{background:linear-gradient(90deg,#1071ff,#14baa3);color:transparent;background-clip:text}.pfk-card-brand small{display:block;font-size:11px;margin-top:5px;color:#798a9d}
.pfk-secure{display:inline-flex;align-items:center;gap:8px;color:#1558dd;font-size:10px;font-weight:870;letter-spacing:1.3px;background:#edf4ff;padding:10px 12px;border-radius:8px}.pfk-secure svg{width:17px;height:17px}
.pfk-login-card h2{margin:19px 0 8px;font-size:clamp(26px,2.55vw,36px);line-height:1.18;letter-spacing:-1.35px;font-weight:870;color:#0c1d34}.pfk-login-card h2 span{color:#1464fc;white-space:nowrap}
.pfk-login-lead{font-size:13px;line-height:1.7;color:#7d8b9d;margin:0 0 29px;max-width:340px}
.pfk-login-form{display:flex;flex-direction:column;gap:0}.pfk-login-form label{display:block;font-size:12px;color:#17253b;font-weight:760;margin-bottom:9px}.pfk-input-shell{display:flex;align-items:center;gap:11px;border:1px solid #d9e2eb;border-radius:11px;background:#f8fafc;height:52px;padding:0 14px;margin-bottom:23px;transition:box-shadow .2s,border-color .2s,background .2s}.pfk-input-shell:focus-within{background:#fff;border-color:#2d91f6;box-shadow:0 0 0 4px #268ff51c}.pfk-input-shell>svg{width:19px;height:19px;flex:none;color:#8b9db4}.pfk-input-shell input{background:transparent;border:0;outline:0;padding:0;height:100%;min-width:0;flex:1;color:#14243d;font-size:13px;box-shadow:none!important}.pfk-input-shell input:focus{outline:0}.pfk-input-shell input::placeholder{color:#a1afbe}.pfk-eye{border:0;background:transparent;display:grid;place-items:center;width:33px;height:33px;flex:none;color:#8294ab;border-radius:7px;padding:7px}.pfk-eye:hover{color:#1464f0;background:#e8f3fd}.pfk-eye svg{width:20px;height:20px}.pfk-enter{display:flex;align-items:center;justify-content:space-between;width:100%;border:0;color:white;font-weight:820;font-size:15px;letter-spacing:.1px;background:linear-gradient(100deg,#1560fc 5%,#1968f8 52%,#38c994 95%);border-radius:12px;padding:0 19px;height:55px;box-shadow:0 14px 28px #1966fb2f;transition:filter .2s,box-shadow .2s,transform .2s}.pfk-enter span:last-child{font-size:24px;font-weight:400;line-height:1}.pfk-enter:hover{filter:saturate(1.16) brightness(1.04);box-shadow:0 15px 29px #1966fb45;transform:translateY(-2px)}.pfk-enter:active{transform:translateY(0)}.pfk-enter.is-submitting{cursor:progress}
.pfk-login :is(a,button,input):focus-visible{outline:3px solid #88befb;outline-offset:3px}
.pfk-help{display:flex;gap:11px;align-items:flex-start;margin-top:30px;border-radius:13px;padding:17px 16px;background:#edf5ff;color:#6a7f98;font-size:12px;line-height:1.55}.pfk-help svg{width:19px;height:19px;flex:none;color:#2770e9;margin-top:1px}
.pfk-flash{padding:12px 14px;margin:0 0 19px;border-radius:11px;font-size:12px;line-height:1.6}.pfk-flash-error{background:#fff1f0;border:1px solid #f7cfcf;color:#ab3737}.pfk-flash-success{background:#ebfff4;border:1px solid #b2efcf;color:#147e53}
.pfk-side-footer{width:min(100%,493px);display:flex;justify-content:space-between;gap:15px;color:#99a8b5;font-size:10px;letter-spacing:.3px;margin-top:29px}.pfk-side-footer span:last-child{max-width:180px;text-align:right}.pfk-side-footer i{display:inline-block;width:19px;height:2px;background:#b2ef52;vertical-align:middle;margin-left:4px}
@keyframes pfk-float{0%,100%{transform:rotate(6deg) translateY(0)}50%{transform:rotate(5deg) translateY(-12px)}}
@keyframes pfk-beat{0%,100%{box-shadow:0 0 0 6px #b4ff2529,0 0 18px #baff39}50%{box-shadow:0 0 0 12px #b4ff2510,0 0 22px #baff39}}
@keyframes pfk-trail{0%{stroke-dashoffset:0}100%{stroke-dashoffset:-1360}}
@keyframes pfk-lumen{from{transform:translate(0,0)}to{transform:translate(-60px,-40px)}}
@media(max-width:1470px){.pfk-hero{padding-inline:35px}.pfk-college-mark img{width:50px;height:50px}.pfk-college-mark span{font-size:12px}.pfk-hero-heading h1{font-size:clamp(54px,6.3vw,82px)}.pfk-floating-code{right:-5%;bottom:118px;opacity:.92}.pfk-scribble{right:5%;top:25%}.pfk-hero-heading p{max-width:400px}}
@media(max-width:1180px){.pfk-login-layout{grid-template-columns:minmax(0,1.1fr) minmax(390px,.9fr)}.pfk-floating-code{display:none}.pfk-scribble{right:4%;top:19%}.pfk-hero-heading h1{font-size:clamp(52px,6.7vw,78px)}.pfk-hero-middle{padding-bottom:40px}.pfk-auth-side{padding-inline:24px}.pfk-login-card{padding:30px}.pfk-college-mark{max-width:100%}}
@media(max-width:830px){.pfk-login-layout{display:flex;flex-direction:column}.pfk-hero{min-height:555px;padding-inline:clamp(20px,5vw,45px)}.pfk-hero-photo{object-position:52% 45%}.pfk-hero-wash{background:linear-gradient(90deg,rgba(1,18,40,.95),rgba(2,22,39,.52) 100%),linear-gradient(0deg,#031b2b 0%,transparent 60%)}.pfk-hero-header{padding:23px 0}.pfk-hero-middle{min-height:0;padding:20px 0 70px}.pfk-hero-heading{padding-top:25px}.pfk-hero-heading h1{font-size:clamp(52px,10vw,78px)}.pfk-hero-heading p{font-size:14px;max-width:560px}.pfk-tech{margin-top:24px}.pfk-hero-footer{padding:16px 0 22px}.pfk-scribble{display:none}.pfk-auth-side{padding:62px 20px 36px}.pfk-side-top{right:22px;top:20px}.pfk-login-card{max-width:520px}}
@media(max-width:540px){.pfk-hero{min-height:540px;padding-inline:20px}.pfk-college-mark{gap:9px;min-width:0}.pfk-college-mark img{width:46px;height:46px}.pfk-college-mark span{font-size:11px;line-height:1.3}.pfk-hero-header{padding:20px 0}.pfk-hero-kicker{font-size:10px;letter-spacing:1.3px;gap:8px}.pfk-kicker-rule{display:none}.pfk-kicker-note{font-size:10px}.pfk-hero-heading{padding-top:27px}.pfk-overline{font-size:9px;letter-spacing:1.25px}.pfk-hero-heading h1{font-size:clamp(52px,12vw,70px);margin-bottom:13px;letter-spacing:-.066em}.pfk-hero-heading h1 em:after{bottom:-8px}.pfk-hero-heading p{font-size:12px;max-width:340px;margin-top:25px}.pfk-tech{gap:7px;margin-top:19px}.pfk-tech-pill{padding:5px 8px;font-size:10px;gap:5px;border-radius:8px}.pfk-tech-pill b{width:18px;height:18px;font-size:9px}.pfk-hero-footer{font-size:9px;letter-spacing:.3px}.pfk-hero-footer span:last-child{display:none}.pfk-hero-middle{padding-bottom:67px}.pfk-light-trails{height:190px}.pfk-auth-side{padding:70px 15px 28px}.pfk-login-card{padding:25px 21px;border-radius:22px}.pfk-card-brand{margin-bottom:26px}.pfk-card-brand img{width:45px;height:45px}.pfk-card-brand strong{font-size:17px}.pfk-login-card h2{font-size:29px}.pfk-login-lead{margin-bottom:23px}.pfk-side-footer{font-size:9px}.pfk-side-footer span:last-child{max-width:115px}}
@media(prefers-reduced-motion:reduce){.pfk-login *,.pfk-login *::before,.pfk-login *::after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}


/* PFK V9 — luminous campus hero + simplified header, intentionally scoped to /login. */
.pfk-login .pfk-hero-photo {
  opacity:1;
  filter:brightness(1.26) contrast(1.11) saturate(1.36);
  object-position:54% 46%;
}
.pfk-login .pfk-hero-wash {
  background:
    linear-gradient(90deg,rgba(0,17,36,.96) 0%,rgba(1,22,43,.88) 25%,rgba(1,23,46,.59) 47%,rgba(0,23,44,.12) 79%,rgba(0,22,39,.07) 100%),
    linear-gradient(0deg,rgba(0,15,33,.88) 0%,rgba(0,19,42,.30) 27%,rgba(1,18,40,.03) 73%,rgba(0,19,39,.30) 100%);
}
.pfk-login .pfk-blueprint { opacity:.33; }
.pfk-login .pfk-hero::before {
  background:radial-gradient(circle,#d5ff31a6 0%,#a8ff2870 16%,#b5ff2f17 63%,transparent 75%);
  filter:blur(67px);
  right:-195px;
  bottom:-96px;
  width:520px;
  height:410px;
}
.pfk-login .pfk-hero::after {
  background:radial-gradient(circle,#009dffa1,#0b88ff62 24%,#0d8eff20 62%,transparent 76%);
  filter:blur(73px);
  left:-190px;
  bottom:-105px;
  width:520px;
  height:305px;
}
.pfk-login .pfk-light-trails { height:316px; bottom:-16px; filter:drop-shadow(0 0 10px #74dcff) drop-shadow(0 0 16px #54daff75); }
.pfk-login .pfk-light-trails path { stroke-width:5.4; }
.pfk-login .pfk-light-trails .pfk-wave-lime { stroke-width:6.4; filter:drop-shadow(0 0 9px #caff35) drop-shadow(0 0 19px #caff35a0); }
.pfk-login .pfk-light-trails .pfk-wave-teal { stroke-width:3; opacity:.65; animation-duration:17s; }
.pfk-login .pfk-hero-heading h1 em { color:#d1ff42; text-shadow:0 0 24px #abff5877,0 3px 24px #08202465; }
.pfk-login .pfk-hero-heading h1 em:after { box-shadow:0 0 15px #ccff32,0 0 27px #9aff38; height:6px; }
.pfk-login .pfk-tech-pill { border-color:#a1e6ff85; background:#061d35d4;box-shadow:inset 0 1px 0 #ffffff25,0 0 14px #12aaff15; }
.pfk-login .pfk-pulse-dot { box-shadow:0 0 0 6px #b4ff2529,0 0 18px #baff39,0 0 32px #c7ff39; }
.pfk-login .pfk-floating-code { border-color:#a9eaffaf; box-shadow:0 26px 65px #001528b8,0 0 40px #68dbfc66,0 0 55px #a0ff3030; }
.pfk-login .pfk-college-mark { max-width:630px; }
.pfk-login .pfk-college-mark span { font-size:clamp(13px,1.15vw,17px); }
.pfk-login .pfk-hero-header { justify-content:flex-start; }
.pfk-login .pfk-auth-side { background:radial-gradient(circle at 82% 7%,#ddff899c 0,transparent 33%),radial-gradient(circle at 0% 86%,#cae8ff 0,transparent 45%),#f9fcf9; }
@media (max-width:830px) {
 .pfk-login .pfk-hero-wash {
  background:linear-gradient(90deg,rgba(0,15,38,.94) 0%,rgba(0,19,40,.71) 55%,rgba(2,25,46,.37) 100%),linear-gradient(0deg,rgba(0,18,39,.87),transparent 62%);
 }
 .pfk-login .pfk-hero-photo { filter:brightness(1.19) contrast(1.10) saturate(1.28); }
 .pfk-login .pfk-light-trails { height:234px; }
}
@media (max-width:540px) {
 .pfk-login .pfk-college-mark span { font-size:11px; }
 .pfk-login .pfk-light-trails { height:184px; }
}

/* V10 — vivid live-light edition. Intentionally all scoped to the /login page. */
.pfk-login{--pfk-cyan:#17beff;--pfk-lime:#cbff31}
.pfk-login .pfk-hero{background:#041526}
.pfk-login .pfk-hero-photo{object-position:63% 49%;filter:brightness(1.41) contrast(1.09) saturate(1.4);opacity:1}
.pfk-login .pfk-hero-wash{background:
 linear-gradient(90deg,rgba(0,14,32,.98) 0%,rgba(0,17,37,.93) 24%,rgba(0,19,37,.74) 43%,rgba(0,20,36,.07) 78%,rgba(0,20,35,.08) 100%),
 linear-gradient(0deg,rgba(0,12,29,.94) 0%,rgba(0,14,33,.27) 25%,rgba(0,16,32,.04) 67%,rgba(0,20,39,.55) 100%)}
.pfk-login .pfk-hero-middle{z-index:3;max-width:100%;padding-top:18px}
.pfk-login .pfk-hero-heading{max-width:min(59%,570px);padding-top:35px;z-index:6}
.pfk-login .pfk-hero-heading h1{font-size:clamp(54px,5.3vw,96px);text-shadow:0 10px 36px #0009}
.pfk-login .pfk-hero-heading h1 em{color:#d3ff40;text-shadow:0 0 24px #aaff5360,0 2px 5px #0008}
.pfk-login .pfk-hero-heading p{max-width:475px;color:#eff8ff;text-shadow:0 2px 13px #000a}
.pfk-login .pfk-tech{max-width:560px;margin-top:29px;z-index:6}
.pfk-login .pfk-tech-pill{background:#041c31de;border-color:#6fc5ff7d;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.pfk-login .pfk-tech-pill:hover{transform:translateY(-4px);border-color:#c5ff40;box-shadow:0 10px 20px #0008,0 0 15px #8eff4850}
.pfk-login .pfk-scribble{right:6%;top:63%;z-index:5;font-size:clamp(13px,1.2vw,17px);text-shadow:0 2px 8px #000b}
.pfk-login .pfk-light-trails{bottom:-23px;height:310px;z-index:2;filter:drop-shadow(0 0 10px #0cfaffb0)}
.pfk-login .pfk-light-trails path{stroke-dasharray:900 190;animation:pfk-trail 9s linear infinite,pfk-flow-opacity 5s ease-in-out infinite alternate;stroke-width:5.1}
.pfk-login .pfk-light-trails .pfk-wave-lime{stroke-width:6.5;animation-duration:11s,4s;filter:drop-shadow(0 0 13px #baff30) drop-shadow(0 0 21px #caff5585)}
.pfk-login .pfk-orbit-stage{position:absolute;top:clamp(104px,13vh,145px);right:clamp(22px,2.5vw,49px);width:clamp(275px,29vw,392px);height:clamp(250px,26vw,340px);z-index:5;pointer-events:none;isolation:isolate;filter:drop-shadow(0 20px 28px #0007)}
.pfk-login .pfk-orbit-stage:before{content:"";position:absolute;inset:15% 5%;border-radius:50%;background:radial-gradient(ellipse,#bcff2d24,transparent 70%);filter:blur(24px);animation:pfk-stage-pulse 4s ease-in-out infinite alternate}
.pfk-login .pfk-orbits{position:absolute;inset:-21% -24%;width:148%;height:142%;overflow:visible;z-index:-1;filter:drop-shadow(0 0 5px #5affb88a)}
.pfk-login .pfk-orbit-line{fill:none;stroke-width:4;stroke-linecap:round;stroke-dasharray:910 520;animation:pfk-orbit-dash 10s linear infinite}
.pfk-login .pfk-orbit-line-a{stroke-width:6;filter:drop-shadow(0 0 10px #b7ff26) drop-shadow(0 0 18px #a7ff2c78)}
.pfk-login .pfk-orbit-line-b{animation-direction:reverse;animation-duration:12s;filter:drop-shadow(0 0 10px #28b9ff) drop-shadow(0 0 19px #1bbdff8a)}
.pfk-login .pfk-orbit-spark{filter:drop-shadow(0 0 7px #e6ff41) drop-shadow(0 0 14px #c9ff31)}
.pfk-login .pfk-code-window{position:absolute;top:18%;left:7%;width:92%;border:1.5px solid #ccff73b8;border-radius:19px;overflow:hidden;transform:rotate(5deg);background:linear-gradient(155deg,#061a2bf9,#07182be8);box-shadow:0 25px 50px #000c,0 0 7px #8bff4160,0 0 24px #8fff4a80,0 0 38px #15aaff3b;backdrop-filter:blur(10px);animation:pfk-hover-window 6s ease-in-out infinite;will-change:transform}
.pfk-login .pfk-code-top{padding:12px 15px;background:linear-gradient(90deg,#183144fa,#091c2bfa);border-bottom:1px solid #638ba356;color:#c5d8e5;font-size:11px}
.pfk-login .pfk-code-filename{margin-left:9px;letter-spacing:.1px;font-weight:650}.pfk-login .pfk-code-symbol{margin-left:auto;font-size:19px;color:#bfff4c;font-weight:900}
.pfk-login .pfk-code-dots i{width:9px;height:9px}
.pfk-login .pfk-code-lines{font:clamp(11px,1vw,13px)/2 Consolas,"Liberation Mono",monospace;padding:16px 15px 20px;color:#f0f8ff;white-space:nowrap}
.pfk-login .pfk-code-lines small{font-size:11px;color:#68839e;margin-right:17px}
.pfk-login .pfk-code-lines em{color:#c5ff58}.pfk-login .pfk-code-lines b{color:#ff75ba}.pfk-login .pfk-code-lines strong{font-weight:650;color:#ffb34d}
.pfk-login .pfk-terminal-cursor{display:inline-block;width:7px;height:14px;background:#befc5a;margin-left:4px;vertical-align:-2px;animation:pfk-blink 1.2s steps(1) infinite}
.pfk-login .pfk-stage-glint{position:absolute;z-index:2;width:10px;height:10px;transform:rotate(45deg);border:1px solid #caff37;filter:drop-shadow(0 0 7px #bdff36);animation:pfk-twinkle 3s ease-in-out infinite}
.pfk-login .pfk-stage-glint-one{right:-13%;top:27%}.pfk-login .pfk-stage-glint-two{left:-10%;bottom:19%;width:6px;height:6px;animation-delay:1.3s}
.pfk-login .pfk-ambient-shimmer{position:absolute;inset:0;pointer-events:none;z-index:1;overflow:hidden}
.pfk-login .pfk-ambient-shimmer i{position:absolute;width:4px;height:4px;border-radius:50%;background:#c5ff42;box-shadow:0 0 12px 4px #c2ff4370;animation:pfk-particle 7s ease-in-out infinite alternate}
.pfk-login .pfk-ambient-shimmer i:nth-child(1){left:67%;top:12%;animation-delay:-1s}.pfk-login .pfk-ambient-shimmer i:nth-child(2){left:85%;top:38%;animation-delay:-3s;background:#31d9ff;box-shadow:0 0 10px 4px #24d2ff7a}.pfk-login .pfk-ambient-shimmer i:nth-child(3){left:46%;top:21%;animation-delay:-4.2s}.pfk-login .pfk-ambient-shimmer i:nth-child(4){left:79%;top:73%;animation-delay:-2s;background:#64faff}.pfk-login .pfk-ambient-shimmer i:nth-child(5){left:96%;top:10%;animation-delay:-.7s}.pfk-login .pfk-ambient-shimmer i:nth-child(6){left:50%;top:64%;animation-delay:-5.8s;background:#28c5ff}
.pfk-login .pfk-code-watermark{position:absolute;left:5%;top:20%;display:flex;flex-direction:column;gap:8px;font:12px/1.1 Consolas,"Liberation Mono",monospace;color:#35d9ff5c;pointer-events:none;z-index:-1;animation:pfk-watermark 11s ease-in-out infinite alternate}
.pfk-login .pfk-college-mark span{font-weight:800;text-shadow:0 3px 8px #00141e8f}
@keyframes pfk-orbit-dash{0%{stroke-dashoffset:0}100%{stroke-dashoffset:-1430}}
@keyframes pfk-hover-window{0%,100%{transform:rotate(5deg) translate3d(0,0,0)}50%{transform:rotate(3deg) translate3d(0,-13px,0)}}
@keyframes pfk-blink{50%{opacity:0}}
@keyframes pfk-particle{0%{transform:translate(0,0) scale(.6);opacity:.35}50%{opacity:1}100%{transform:translate(13px,-18px) scale(1.5);opacity:.5}}
@keyframes pfk-watermark{0%{opacity:.3}100%{opacity:.8}}
@keyframes pfk-stage-pulse{from{transform:scale(.96);opacity:.4}to{transform:scale(1.12);opacity:1}}
@keyframes pfk-twinkle{0%,100%{opacity:.2;transform:rotate(45deg) scale(.6)}50%{opacity:1;transform:rotate(45deg) scale(1.4)}}
@keyframes pfk-flow-opacity{from{opacity:.8}to{opacity:1}}
@media(min-width:1720px){.pfk-login .pfk-hero-heading h1{font-size:clamp(72px,5.5vw,107px)}.pfk-login .pfk-orbit-stage{width:395px}}
@media(max-width:1480px){.pfk-login .pfk-hero-heading{max-width:59%}.pfk-login .pfk-orbit-stage{top:125px;right:12px;width:320px;height:300px}.pfk-login .pfk-hero-heading h1{font-size:clamp(53px,5.4vw,79px)}.pfk-login .pfk-scribble{top:61%;right:4%;font-size:14px}}
@media(max-width:1210px){.pfk-login .pfk-orbit-stage{width:260px;height:270px;top:125px;right:8px}.pfk-login .pfk-code-lines{font-size:10px;padding:14px 10px}.pfk-login .pfk-code-lines small{margin-right:5px}.pfk-login .pfk-hero-heading{max-width:65%}.pfk-login .pfk-hero-heading h1{font-size:clamp(52px,5.7vw,72px)}.pfk-login .pfk-scribble{display:none}}
@media(max-width:1010px){.pfk-login .pfk-orbit-stage{top:145px;width:235px;right:0}.pfk-login .pfk-hero-heading{max-width:68%}.pfk-login .pfk-hero-heading h1{font-size:clamp(50px,5.9vw,63px)}.pfk-login .pfk-tech{max-width:100%}}
@media(max-width:830px){.pfk-login .pfk-hero{min-height:690px}.pfk-login .pfk-hero-middle{padding:30px 0 75px}.pfk-login .pfk-hero-heading{max-width:85%;padding-top:18px}.pfk-login .pfk-hero-heading h1{font-size:clamp(54px,9vw,77px)}.pfk-login .pfk-orbit-stage{top:auto;right:4%;bottom:86px;width:245px;height:225px;opacity:.95}.pfk-login .pfk-tech{max-width:calc(100% - 250px)}.pfk-login .pfk-hero-heading p{max-width:340px}.pfk-login .pfk-code-watermark{display:none}}
@media(max-width:600px){.pfk-login .pfk-hero{min-height:670px}.pfk-login .pfk-hero-middle{padding:26px 0 240px}.pfk-login .pfk-hero-heading{max-width:100%}.pfk-login .pfk-hero-heading h1{font-size:clamp(51px,11.5vw,68px)}.pfk-login .pfk-hero-heading p{max-width:350px}.pfk-login .pfk-tech{max-width:100%;margin-top:18px}.pfk-login .pfk-orbit-stage{top:auto;bottom:59px;right:7%;width:245px;height:220px;opacity:1}.pfk-login .pfk-code-window{top:10%}.pfk-login .pfk-code-lines{font-size:10px}.pfk-login .pfk-light-trails{height:210px}.pfk-login .pfk-hero-footer{margin-top:0}.pfk-login .pfk-auth-side{padding-top:68px}}
@media (prefers-reduced-motion:reduce){.pfk-login .pfk-orbit-spark{display:none}.pfk-login .pfk-orbit-stage *{animation:none!important}.pfk-login .pfk-orbit-stage:before{animation:none!important}}
@media(min-width:1481px){.pfk-login .pfk-orbit-stage{top:clamp(70px,9vh,100px)}}
.pfk-login .pfk-orbit-stage:before{background:radial-gradient(ellipse at var(--pfk-pointer-glow,50% 50%),#bcff2d27,transparent 70%)}


/* V11 FIELD / PHOTO FIX — overrides isolated to the login screen */
.pfk-login .pfk-hero-photo{
  display:block;
  object-position:57% center;
  opacity:1;
  filter:brightness(1.22) contrast(1.06) saturate(1.24);
}
.pfk-login .pfk-hero-wash{
  background:
    linear-gradient(90deg,rgba(0,14,35,.97) 0%,rgba(0,17,36,.89) 25%,rgba(0,19,40,.66) 48%,rgba(0,18,36,.20) 79%,rgba(0,17,34,.12) 100%),
    linear-gradient(0deg,rgba(0,18,34,.88) 0%,rgba(0,16,34,.08) 38%,rgba(0,17,36,.12) 78%,rgba(0,17,33,.55) 100%);
}
/* One clean visible focus ring on the parent, not two stacked rectangles. */
.pfk-login .pfk-input-shell{position:relative;outline:none;border:1px solid #d9e3ec;}
.pfk-login .pfk-input-shell:focus-within{
  border-color:#387eea;
  outline:2px solid #a7d0ff;
  outline-offset:1px;
  box-shadow:0 5px 16px #236dca12;
}
.pfk-login .pfk-input-shell > input,
.pfk-login .pfk-input-shell > input:focus,
.pfk-login .pfk-input-shell > input:focus-visible {
  min-width:0;
  border:0!important;
  outline:0!important;
  outline-offset:0!important;
  box-shadow:none!important;
  -webkit-appearance:none;
  appearance:none;
}
.pfk-login .pfk-input-shell input:-webkit-autofill,
.pfk-login .pfk-input-shell input:-webkit-autofill:focus {
  -webkit-text-fill-color:#15243c;
  -webkit-box-shadow:0 0 0 1000px #fff inset!important;
  border:0!important;
  outline:0!important;
  caret-color:#15243c;
  transition:background-color 9999s ease-out;
}
@media(max-width:830px){
 .pfk-login .pfk-hero-photo {object-position:65% center;}
 .pfk-login .pfk-hero-wash {
  background:linear-gradient(90deg,rgba(0,16,34,.90),rgba(0,18,38,.52) 75%,rgba(0,19,36,.32)),linear-gradient(0deg,#051b30dd,transparent 65%);
 }
}
