*{margin:0;padding:0;box-sizing:border-box}html,body{background:#000;color:var(--text);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;overflow-x:hidden}.app.dark{--bg: #050505;--text: #e0ffe4;--neon: #00ff9d;--neon-glow: 0 0 10px #00ff9d, 0 0 20px #00ff9d;--rgb-text: linear-gradient(90deg, #ff00ff, #00ffff, #00ff00)}.app.light{--bg: #f6f8ff;--text: #0c0c0c;--neon: #00b36b;--neon-glow: 0 0 8px #00d88d;--rgb-text: linear-gradient(90deg, #0077ff, #00ffaa)}.app{background:var(--bg);transition:background .5s ease,color .3s ease;position:relative;min-height:100vh}.neon-text{color:var(--neon);text-shadow:var(--neon-glow)}.rgb-text{background:var(--rgb-text);-webkit-background-clip:text;color:transparent}section{padding:80px 20px;position:relative;z-index:5}.global-wip{position:fixed;top:12px;right:12px;z-index:9999;padding:6px 12px;font-size:.75rem;font-weight:600;background:#000000d9;color:#0f8;border:1px solid #00ff88;border-radius:8px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.particles,.circuit-overlay,.robot-silhouette{position:fixed;pointer-events:none;inset:0;width:100vw;height:100vh;z-index:-3}.particles{background:radial-gradient(circle,rgba(0,255,200,.15) 2px,transparent 3px) 0 0 / 55px 55px,radial-gradient(circle,rgba(0,150,255,.12) 2px,transparent 3px) 27px 27px / 65px 65px;animation:particles-float 20s linear infinite}@keyframes particles-float{0%{transform:translateY(0)}50%{transform:translateY(30px)}to{transform:translateY(-60px)}}.circuit-overlay{position:fixed;inset:0;background-image:repeating-linear-gradient(rgba(0,255,0,.05) 0 1px,transparent 1px 20px),repeating-linear-gradient(90deg,rgba(0,255,0,.05) 0 1px,transparent 1px 20px);z-index:-2;pointer-events:none}.robot-silhouette{position:fixed;inset:0;background:url(/robot-silhouette.png) no-repeat bottom center;background-size:420px;opacity:.14;filter:drop-shadow(0 0 25px rgba(0,255,150,.4));animation:robot-glow 8s ease-in-out infinite alternate;z-index:-1}@keyframes robot-glow{0%{opacity:.12;transform:translateY(0)}to{opacity:.18;transform:translateY(-10px)}}.particles:after{content:"";position:absolute;inset:0;border:2px solid rgba(0,255,200,.15);border-radius:10px;box-shadow:0 0 20px #00ffc833,inset 0 0 10px #0096ff1a;pointer-events:none;animation:pulse 5s infinite alternate}@keyframes pulse{0%{box-shadow:0 0 15px #00ffc826,inset 0 0 5px #0096ff1a}to{box-shadow:0 0 30px #00ffc84d,inset 0 0 15px #0096ff33}}.hero-section{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:2rem;overflow:hidden;background:radial-gradient(circle at top center,rgba(0,255,200,.08),transparent 22%),radial-gradient(circle at bottom center,rgba(34,197,94,.06),transparent 24%),#050013;color:#fff}.hero-content{position:relative;z-index:3;max-width:920px;width:100%;margin:0 auto}.hero-eyebrow{margin:0 0 14px;color:#00ffc8;font-size:.82rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.hero-title{display:inline-block;margin:0;padding:.45rem .9rem;border-radius:14px;font-size:clamp(2.5rem,6vw,4.1rem);font-weight:800;line-height:1.05;position:relative;z-index:3}.hero-role{margin:14px 0 0;font-size:clamp(1.2rem,2.5vw,1.9rem);font-weight:700;color:#00ffc8}.hero-subtitle{max-width:720px;margin:18px auto 0;color:#d1d5db;line-height:1.65;opacity:0;animation:fadeIn .7s forwards;animation-delay:.2s}.hero-subtitle-secondary{max-width:760px;margin:14px auto 0;color:#e5e7eb;line-height:1.65;opacity:0;animation:fadeIn .7s forwards;animation-delay:.4s}@keyframes fadeIn{to{opacity:1}}.neon-border{border:2px solid rgba(0,255,200,.6);box-shadow:0 0 12px #00ffc859}.rgb-gradient{background:linear-gradient(90deg,#ff7a18,#7dff00,#00ffc8);background-size:250%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:rgbShift 12s linear infinite}.hero-actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:26px}.hero-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.95rem 1.6rem;border-radius:12px;font-size:1rem;font-weight:700;text-decoration:none;cursor:pointer;position:relative;z-index:3;transition:transform .2s ease,background .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease}.hero-button:hover{transform:translateY(-2px)}.hero-button.primary{background:#00ffc8;border:2px solid #00ffc8;color:#03120f;box-shadow:0 0 20px #00ffc829}.hero-button.primary:hover{box-shadow:0 0 28px #00ffc84d}.hero-button.secondary{background:transparent;border:2px solid #00ffc8;color:#00ffc8}.hero-button.secondary:hover{background:#00ffc8;color:#000}.hero-featured-card,.hero-sonny-card{max-width:580px;margin:30px auto 0;padding:20px 22px;border:1px solid rgba(0,255,200,.24);border-radius:18px;background:linear-gradient(180deg,#00ffc80d,#0000004d),#00000075;box-shadow:0 0 24px #00ffc814;text-align:left;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.hero-featured-card h3,.hero-sonny-card h3{margin:6px 0 10px;color:#00ffc8;font-size:1.35rem}.hero-featured-card p,.hero-sonny-card p{margin:0;color:#e5e7eb;line-height:1.6}.hero-featured-label{margin:0;color:#22c55e;font-size:.75rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.hero-scroll-btn{position:absolute;bottom:28px;left:50%;transform:translate(-50%);background:transparent;border:1px solid #00ff88;color:#0f8;padding:8px 16px;border-radius:999px;font-size:.85rem;cursor:pointer;transition:background .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease;z-index:3}.hero-scroll-btn:hover{background:#0f8;color:#000;box-shadow:0 0 18px #00ff8838}.neon-hover:hover{background:#00ffc8;color:#000;box-shadow:0 0 24px #00ffc847}@media(max-width:768px){.hero-section{padding:1.5rem 1rem 4rem}.hero-subtitle,.hero-subtitle-secondary{max-width:100%}.hero-featured-card,.hero-sonny-card{text-align:center;padding:18px}}@media(max-width:560px){.hero-actions{flex-direction:column;align-items:stretch}.hero-button{width:100%}.hero-role{line-height:1.3}.hero-scroll-btn{bottom:18px;font-size:.8rem}}.dashboard-section{padding:3rem;margin:2rem auto;border-radius:15px;border:2px solid #00ffc8;background:#050013;box-shadow:0 0 20px #00ffc8,inset 0 0 10px #00ffc8;position:relative;overflow:hidden;text-align:center}.section-title:after{content:"";display:block;height:3px;width:220px;margin:12px auto 0;background:linear-gradient(90deg,#00ffc8,#f0f,#0ff);border-radius:999px}.modules-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1.5rem;margin-top:1rem}.module-card{padding:1.5rem;border-radius:12px;border:2px solid #00ffc8;background:#0000004d;color:#00ffc8;font-weight:700;box-shadow:0 0 10px #00ffc8,inset 0 0 6px #00ffc8;transition:all .3s ease;cursor:pointer;position:relative;overflow:hidden;min-height:120px;display:flex;align-items:center;justify-content:center}.module-card h3{font-size:1.05rem;margin:0;text-shadow:0 0 8px rgba(0,255,200,.35)}.module-card:hover{background:#00ffc81f;color:#00ffc8;box-shadow:0 0 25px #00ffc8,0 0 50px #f0f6;transform:translateY(-4px) scale(1.03)}.dashboard-section:before{content:"";position:absolute;inset:-4px;border:2px solid #00ffc8;border-radius:15px;box-shadow:0 0 15px #00ffc8,0 0 30px #f0f3;pointer-events:none;animation:pulse 2s infinite alternate}@keyframes pulse{0%{box-shadow:0 0 10px #00ffc8,0 0 20px #f0f3}to{box-shadow:0 0 25px #00ffc8,0 0 50px #f0f6}}.module-desc{margin:8px 0 0;font-size:.85rem;font-weight:500;opacity:.85}.projects-section{padding:3rem;margin:2rem auto;border-radius:15px;border:2px solid #00ffc8;box-shadow:0 0 20px #00ffc8,inset 0 0 10px #00ffc8;background:linear-gradient(180deg,#050013b3,#05001373);position:relative;overflow:hidden}.section-title{font-size:2.6rem;font-weight:700;margin-bottom:1.25rem;background:linear-gradient(90deg,red,#0f0,#00f,#f0f);background-size:300%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:rgbShift 6s linear infinite}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem;margin-top:1rem}.project-card{padding:1.25rem;border-radius:12px;border:2px solid rgba(255,255,255,.05);background:#00000059;color:#00ffc8;box-shadow:0 0 8px #00ffc8,0 0 20px #f0f3;transition:all .3s ease;display:flex;flex-direction:column;gap:.6rem;min-height:140px;justify-content:space-between;position:relative;overflow:hidden}.project-card:hover{transform:translateY(-6px) scale(1.03);background:#00ffff26;box-shadow:0 0 16px #00ffc8,0 0 40px #f0f6;color:#000}.project-subtext{margin-top:8px;font-size:.85rem;opacity:.8}.badge{display:inline-block;margin-left:8px;font-size:.7rem;padding:2px 6px;border-radius:6px;background:#facc15;color:#000;font-weight:700}.skills-section{padding:3rem;margin:2rem auto;border-radius:18px;border:2px solid #00ffc8;background:#050013;box-shadow:0 0 25px #00ffc8,inset 0 0 12px #00ffc8;text-align:center}.section-title{font-size:2.6rem;font-weight:700;margin-bottom:2rem;color:#00ffc8;text-shadow:0 0 8px #00ffc8,0 0 16px rgba(0,255,200,.85)}.skills-row{display:flex;flex-wrap:wrap;justify-content:center;gap:1.25rem}.skill-button{padding:.75rem 2rem;border-radius:14px;border:2px solid #00ffc8;background:#050013;color:#00ffc8;font-size:1.05rem;font-weight:700;cursor:pointer}.skill-button:hover{background:#00ffc8;color:#000;box-shadow:0 0 30px #00ffc8,0 0 60px #00ffc899}.lab-section{padding:3rem;margin:2rem auto;border-radius:15px;border:2px solid #00ffc8;background:#050013;box-shadow:0 0 20px #00ffc8,inset 0 0 10px #00ffc8;position:relative;overflow:hidden}.lab-header{text-align:center;margin-bottom:1.5rem}.lab-title{font-size:2.6rem;font-weight:700;color:#00ffc8;text-shadow:0 0 6px #00ffc8,0 0 12px #00ffc8;margin:0}.lab-subtitle{margin:.75rem auto 0;max-width:760px;color:#d1d1d1;opacity:.9;line-height:1.5}.lab-panel{margin-top:1.5rem;border-radius:14px;background:#00000059;border:2px solid #00ffc8;box-shadow:0 0 18px #00ffc8,inset 0 0 10px #00ffc859;overflow:hidden}.lab-panel-topbar{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-bottom:1px solid rgba(0,255,200,.35);background:#050013e6}.lab-dot{width:10px;height:10px;border-radius:50%;display:inline-block;opacity:.9}.lab-dot.red{background:#ff4d4d;box-shadow:0 0 10px #ff4d4d99}.lab-dot.yellow{background:#ffd24d;box-shadow:0 0 10px #ffd24d8c}.lab-dot.green{background:#4dff88;box-shadow:0 0 10px #4dff888c}.lab-path{margin-left:.75rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.95rem;color:#00ffc8d9}.lab-entries{padding:1.25rem;display:grid;gap:1rem;max-height:360px;overflow-y:auto}.lab-entries::-webkit-scrollbar{width:8px}.lab-entries::-webkit-scrollbar-track{background:#0006;border-radius:8px}.lab-entries::-webkit-scrollbar-thumb{background:#00ffc899;border-radius:8px;box-shadow:0 0 8px #00ffc8cc}.lab-entries::-webkit-scrollbar-thumb:hover{background:#00ffc8e6}.lab-entry{border-radius:12px;border:1px solid rgba(0,255,200,.35);background:#0500138c;box-shadow:inset 0 0 10px #00ffc82e;padding:1rem}.lab-entry-title{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;color:#00ffc8;font-weight:700;letter-spacing:.2px;margin-bottom:.75rem;text-shadow:0 0 10px rgba(0,255,200,.35)}.prompt{color:#00ffc8e6}.lab-entry-grid{display:grid;gap:.65rem}.lab-row{display:grid;grid-template-columns:92px 1fr;gap:.75rem;align-items:start}.lab-label{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.85rem;letter-spacing:.8px;color:#00ffc8d9;opacity:.95}.lab-label.warn{color:#ffd24de6}.lab-label.ok{color:#4dff88e6}.lab-label.tip{color:#a078ffe6}.lab-value{color:#d1d1d1f2;line-height:1.45}.lab-footer{padding:.85rem 1rem;border-top:1px solid rgba(0,255,200,.35);background:#050013e6;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;color:#00ffc8d9}.lab-status{color:#4dff88f2;text-shadow:0 0 10px rgba(77,255,136,.25)}.lab-muted{color:#d1d1d1b3}@media(max-width:640px){.lab-section{padding:2rem 1.25rem}.lab-row{grid-template-columns:1fr}.lab-label{opacity:.85}}.contact-section{padding:3rem;margin:2rem auto;border-radius:15px;background:#00000059;border:2px solid transparent;position:relative;overflow:hidden}.section-title{font-size:2.6rem;font-weight:700;margin-bottom:1.5rem;background:linear-gradient(90deg,red,#0f0,#00f,#f0f);background-size:300%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:rgbShift 6s linear infinite}.terminal-box{padding:1.5rem;border-radius:12px;border:2px solid rgba(255,255,255,.05);background:#00000040;color:#00ffc8;font-family:Courier New,Courier,monospace;box-shadow:0 0 10px #00ffc8,0 0 25px #ff00ff4d;transition:all .3s ease;position:relative;overflow:hidden}.terminal-box:hover{background:#00ffff26;box-shadow:0 0 20px #00ffc8,0 0 50px #ff00ff80;transform:scale(1.02)}.terminal-input{width:100%;padding:.75rem;margin-top:1rem;border-radius:8px;border:2px solid #00ffc8;background:#050013;color:#00ffc8;font-family:Courier New,Courier,monospace;box-shadow:0 0 6px #00ffc8;transition:all .2s ease}.terminal-input:focus{outline:none;border-color:#f0f;box-shadow:0 0 12px #f0f,0 0 25px #00ffc8;background:#050013;color:#fff}.terminal-response{margin-top:15px;color:#0f8;font-family:monospace;white-space:pre-wrap;line-height:1.5;text-align:left}.cursor{display:inline-block;margin-left:4px;animation:blink 1s step-end infinite}@keyframes blink{50%{opacity:0}}.floating-about-btn{position:fixed;bottom:30px;right:30px;z-index:999;display:flex;align-items:center;justify-content:center;padding:14px 24px;border-radius:14px;background:#0006;border:2px solid #00ffc8;color:#00ffc8;font-family:Orbitron,sans-serif;font-weight:600;letter-spacing:1px;text-decoration:none;font-size:1.1rem;box-shadow:0 0 12px #00ffc8,inset 0 0 6px #00ffc8;cursor:pointer;transition:.35s ease;animation:floaty 3s ease-in-out infinite;overflow:hidden}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.floating-about-btn:hover{background:#00ffc826;color:#000;box-shadow:0 0 22px #00ffc8,0 0 35px #00ffc8;border-color:#00ffc8;transform:translateY(-8px)}.floating-about-btn .ring{position:absolute;inset:0;border-radius:14px;border:2px solid rgba(0,255,200,.4);animation:ringPulse 2.4s linear infinite;opacity:0}@keyframes ringPulse{0%{opacity:.25;transform:scale(1)}70%{opacity:0;transform:scale(1.6)}to{opacity:0}}.home-section{padding:22px 0}.home-sectionHead{margin-bottom:10px}.home-h2{margin:0;font-size:1.6rem}.home-h3{margin:8px 0 0;font-size:1.2rem}.home-sub{margin:6px 0 0;opacity:.82;max-width:72ch}.home-btnRow{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.home-btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 12px;border-radius:12px;border:1px solid rgba(0,255,170,.35);text-decoration:none;color:#00ffaaeb;background:#00000059;transition:transform .08s ease,opacity .08s ease}.home-btn:hover{transform:translateY(-1px);opacity:1}.home-btn--primary{border-color:#00ffaab3;background:#00ffaa0f}.sonny-badges{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}.home-badge{border:1px solid rgba(0,255,170,.25);padding:6px 10px;border-radius:999px;font-size:.82rem;opacity:.9;background:#00000040}.home-badge--star{border-color:#00ffaa8c}.sonny-card{border:1px solid rgba(0,255,170,.18);border-radius:16px;padding:16px;background:#00000040}.sonny-desc{margin:10px 0 0;opacity:.88;max-width:84ch}.sonny-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.sonny-fact{border:1px solid rgba(0,255,170,.14);border-radius:14px;padding:10px 12px;background:#00000038}.sonny-fact strong{display:block;margin-bottom:6px;opacity:.95}.sonny-fact span{opacity:.82;font-size:.92rem}.arch-card{border:1px solid rgba(0,255,170,.18);border-radius:16px;padding:14px;background:#00000040;max-width:920px}.arch-pre{margin:0;white-space:pre-wrap;line-height:1.55;opacity:.9;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.hub-card{border:1px solid rgba(0,255,170,.18);border-radius:16px;padding:14px 16px;background:#00000040;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.hub-left{max-width:72ch}@media(max-width:900px){.sonny-facts{grid-template-columns:1fr}}.controlhub-page{min-height:100vh;background:#050013;color:#d1d1d1;padding:3rem 1.25rem}.back-btn-top{position:fixed;top:18px;left:18px;z-index:9999;padding:.75rem 1rem;border-radius:999px;border:2px solid #00ffc8;background:#050013d9;color:#00ffc8;font-weight:800;cursor:pointer;box-shadow:0 0 14px #00ffc859;transition:.2s ease}.neon-panel{border:2px solid #00ffc8;border-radius:14px;background:#00000059;box-shadow:0 0 18px #00ffc859,inset 0 0 10px #00ffc82e}.controlhub-header{max-width:1100px;margin:0 auto;padding:1.5rem;text-align:center}.controlhub-title{margin:.6rem 0 0;font-size:2.6rem;color:#00ffc8;text-shadow:0 0 10px rgba(0,255,200,.3)}.controlhub-subtitle{margin:.8rem auto 0;max-width:820px;line-height:1.55;opacity:.92}.terminal-line{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;color:#00ffc8e6}.prompt{font-weight:900;margin-right:.35rem}.controlhub-grid{max-width:1100px;margin:1.5rem auto 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.module-card{display:block;text-decoration:none;color:inherit;padding:1.1rem;transition:.18s ease}.module-card:hover{transform:translateY(-2px);box-shadow:0 0 26px #00ffc88c,inset 0 0 12px #00ffc838}.module-top{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.module-icon{width:40px;height:40px;border-radius:12px;border:1px solid rgba(0,255,200,.45);display:grid;place-items:center;color:#00ffc8f2;background:#00ffc80f}.status-pill.progress{border-color:#ffd24da6;color:#ffd24df2}.status-pill.live{border-color:#4dff88a6;color:#4dff88f2}.module-title{margin:0;font-size:1.2rem;color:#00ffc8;text-shadow:0 0 8px rgba(0,255,200,.25)}.module-subtitle{margin:.55rem 0 0;line-height:1.45;opacity:.9}.module-footer{margin-top:1rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;color:#00ffc8d9;opacity:.95}.controlhub-footer{max-width:1100px;margin:1.5rem auto 0;padding:1rem 1.25rem}.back-button{position:relative;display:flex;align-items:center;gap:10px;padding:12px 20px;margin:10px;border-radius:14px;border:2px solid rgba(0,255,200,.5);background:#00000059;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#00ffd5;font-family:Orbitron,sans-serif;font-size:15px;font-weight:600;letter-spacing:1px;cursor:pointer;text-shadow:0 0 6px #00ffd5;text-transform:uppercase;box-shadow:0 0 12px #00ffc880,inset 0 0 8px #00ffc866;transition:.35s ease;animation:backFloat 3s ease-in-out infinite;outline:none;border:none}@keyframes backFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.back-button:before{content:"";pointer-events:none;position:absolute;inset:-2px;border-radius:16px;border:1px solid rgba(0,255,200,.3);animation:holoPulse 2.5s linear infinite;opacity:0;z-index:-1}@keyframes holoPulse{0%{transform:scale(1);opacity:.25}70%{transform:scale(1.3);opacity:0}to{opacity:0}}.back-button:after{content:"←";display:inline-block;filter:drop-shadow(0 0 4px #00ffd5);transition:transform .3s ease}.back-button:hover{background:#00ffc82e;border-color:#00ffd5;color:#00ffd5;box-shadow:0 0 18px #00ffd5,0 0 40px #00ffd566,inset 0 0 15px #00ffc899;transform:translateY(-5px)}.back-button:hover:after{transform:translate(-3px)}.back-button:active{transform:translateY(-2px) scale(.98);box-shadow:0 0 10px #00ffd5,inset 0 0 8px #00ffc880}@media(max-width:768px){.back-button{padding:10px 16px;font-size:14px;margin:8px}}.back-button.dark-mode{background:#1a1a2ee6;border-color:#4cc9f080;color:#4cc9f0;text-shadow:0 0 6px #4cc9f0;box-shadow:0 0 12px #4cc9f080,inset 0 0 8px #4cc9f066}.back-button.dark-mode:hover{background:#4cc9f02e;border-color:#4cc9f0;color:#4cc9f0;box-shadow:0 0 18px #4cc9f0,0 0 40px #4cc9f066,inset 0 0 15px #4cc9f099}.back-button.control-hub{background:#00000059;border-color:#00ffc880;color:#00ffc8;text-shadow:0 0 6px #00ffc8}.back-button.control-hub:hover{background:#00ffc833;border-color:#00ffc8;color:#00ffc8}.back-button.virtual-model{background:#4cc9f01a;border-color:#4cc9f080;color:#4cc9f0;text-shadow:0 0 6px #4cc9f0}.back-button.virtual-model:hover{background:#4cc9f033;border-color:#4cc9f0;color:#4cc9f0}.back-button.system{background:#ff416c1a;border-color:#ff416c80;color:#ff416c;text-shadow:0 0 6px #ff416c}.back-button.system:hover{background:#ff416c33;border-color:#ff416c;color:#ff416c}.back-button.floating{position:fixed;top:20px;left:20px;z-index:9999}.back-button.module-header{margin:0;align-self:flex-start}.about-page{padding:2rem;background:#030011;color:#00ffc8;min-height:100vh}.about-inner{padding-top:100px}.about-title{text-align:center;font-size:3rem;margin-bottom:2rem;text-shadow:0 0 10px #00ffc8,0 0 20px #00ffc8}.holo-profile{display:flex;justify-content:center;margin-bottom:2rem}.holo-frame{position:relative;width:230px;height:230px;border:2px solid #00ffc8;border-radius:10px;box-shadow:0 0 20px #00ffc8;overflow:hidden}.holo-img{width:100%;height:100%;object-fit:cover;opacity:.9;filter:brightness(1.2) drop-shadow(0 0 10px #00ffc8)}.scanlines{pointer-events:none;position:absolute;inset:0;background:repeating-linear-gradient(rgba(0,255,200,.08) 0 2px,transparent 2px 6px);animation:scan 3s linear infinite}@keyframes scan{0%{transform:translateY(-10%)}to{transform:translateY(10%)}}.about-content{max-width:900px;margin:auto;border:2px solid #00ffc8;padding:2rem;border-radius:18px;box-shadow:0 0 20px #00ffc8 inset,0 0 20px #00ffc8;background:#00000059;font-size:1.2rem;line-height:1.7}.mission{margin-top:1rem;font-size:1.3rem;text-align:center}.stats-panel{margin:2rem auto;max-width:900px;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.stat-chip{padding:.6rem 1.2rem;border:2px solid #00ffc8;border-radius:12px;box-shadow:0 0 12px #00ffc8;background:#050013;font-size:1rem;transition:.3s ease}.stat-chip:hover{background:#00ffc8;color:#000;box-shadow:0 0 25px #00ffc8}.timeline{max-width:900px;margin:3rem auto 5rem;position:relative}.timeline-title{text-align:center;font-size:2rem;margin-bottom:2rem}.timeline-item{padding:1rem 1.4rem;border:2px solid #00ffc8;border-radius:10px;margin:1rem 0;box-shadow:0 0 15px #00ffc8;position:relative;opacity:0;animation:fadeInSlide 1s forwards}.timeline-item.left{margin-right:auto;width:75%}.timeline-item.right{margin-left:auto;width:75%}@keyframes fadeInSlide{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.virtual-model-top{min-height:100vh;background:linear-gradient(135deg,#0a0a1a,#1a1a2e);padding:15px;font-family:Inter,sans-serif}.vm-header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:15px 25px;background:#1a1a2ee6;border-radius:12px;border:1px solid rgba(76,201,240,.2)}.header-center-top{text-align:center}.header-center-top h1{font-size:2rem;margin:0;background:linear-gradient(90deg,#00ffc8,#4cc9f0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:1.5px}.model-name-display-top{color:#ffffffb3;font-size:.9rem;margin:8px 0 0;font-family:Courier New,monospace}.reset-btn-top{padding:10px 20px;background:#ff416c1a;border:1px solid rgba(255,65,108,.3);color:#ff416c;border-radius:8px;cursor:pointer;font-size:1rem;transition:all .2s ease;min-width:120px}.back-btn-top:hover{background:#00ffc833;transform:translate(-3px);box-shadow:0 4px 15px #00ffc833}.reset-btn-top:hover{background:#ff416c33;transform:translate(3px);box-shadow:0 4px 15px #ff416c33}.main-viewer-section{margin-bottom:25px;border-radius:12px;overflow:hidden;box-shadow:0 10px 30px #00000080}.viewer-container-top{height:500px;border:3px solid #00ffc8;background:#000;position:relative}.viewer-stats-top{background:#1a1a2ef2;padding:15px;border-bottom-left-radius:12px;border-bottom-right-radius:12px;border:1px solid rgba(76,201,240,.2);border-top:none}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.stat-card{background:#0000004d;padding:15px;border-radius:8px;border:1px solid rgba(255,255,255,.05);display:flex;flex-direction:column;align-items:center}.stat-label-top{color:#4cc9f0;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}.stat-value-top{color:#e0e0e0;font-size:.9rem;font-family:Courier New,monospace;text-align:center;line-height:1.4}.vm-layout-top{display:grid;grid-template-columns:1fr 350px;gap:25px}.vm-controls-top{background:#1a1a2ee6;border-radius:12px;border:1px solid rgba(76,201,240,.2);display:flex;flex-direction:column;overflow:hidden}.control-tabs-top{display:flex;background:#0000004d;border-bottom:1px solid rgba(76,201,240,.2)}.tab-btn-top{flex:1;padding:15px;background:transparent;border:none;color:#fff9;cursor:pointer;font-weight:600;font-size:.95rem;transition:all .2s ease;border-bottom:3px solid transparent;display:flex;align-items:center;justify-content:center;gap:8px}.tab-icon{font-size:1.2rem}.tab-btn-top:hover{color:#4cc9f0;background:#4cc9f01a}.tab-btn-top.active{color:#00ffc8;border-bottom-color:#00ffc8;background:#00ffc80d}.tab-content-top{flex:1;overflow-y:auto;padding:20px;max-height:400px}.tab-panel-top{display:flex;flex-direction:column;gap:25px}.control-section{display:flex;flex-direction:column;gap:20px}.control-section h4{color:#4cc9f0;margin:0 0 15px;font-size:1.1rem;border-bottom:1px solid rgba(76,201,240,.3);padding-bottom:10px}.control-section h5{color:#b0b0b0;margin:0 0 10px;font-size:.95rem}.control-group-top{display:flex;flex-direction:column;gap:15px}.slider-control{display:flex;flex-direction:column;gap:8px}.slider-header{display:flex;justify-content:space-between;align-items:center}.slider-header label{color:#b0b0b0;font-size:.9rem;font-weight:500}.slider-header .slider-value{color:#00ffc8;font-family:Courier New,monospace;font-size:.9rem;background:#00ffc81a;padding:3px 10px;border-radius:4px}.slider-control input[type=range]{width:100%;height:6px;background:linear-gradient(90deg,#1a1a2e,#00ffc8);border-radius:3px;outline:none;-webkit-appearance:none}.slider-control input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;background:#4cc9f0;border-radius:50%;cursor:pointer;border:2px solid #fff;transition:all .2s ease}.slider-control input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.2);background:#00ffc8}.vector-controls-top{display:flex;flex-direction:column;gap:12px;background:#0003;padding:15px;border-radius:8px;border:1px solid rgba(255,255,255,.05)}.axis-control{display:grid;grid-template-columns:25px 1fr 50px;align-items:center;gap:12px}.axis-label{color:#ff416c;font-weight:700;font-size:.9rem;text-align:center;background:#ff416c1a;padding:4px;border-radius:4px}.axis-value{color:#00ffc8;font-family:Courier New,monospace;font-size:.85rem;text-align:right;min-width:40px}.model-import-section{margin-top:20px;text-align:center}.import-btn-top{width:100%;padding:12px;background:linear-gradient(90deg,#00ffc8,#4cc9f0);color:#1a1a2e;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:1rem}.import-btn-top:hover{transform:translateY(-3px);box-shadow:0 5px 15px #00ffc866}.file-hint{color:#ffffff80;font-size:.8rem;margin-top:8px}.toggle-grid-top{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.toggle-item-top{display:flex;align-items:center;gap:10px;color:#e0e0e0;cursor:pointer;font-size:.9rem;padding:10px 12px;background:#0003;border-radius:6px;border:1px solid rgba(255,255,255,.05);transition:all .2s ease}.toggle-item-top:hover{background:#00ffc81a;border-color:#00ffc84d;transform:translateY(-2px)}.toggle-item-top input[type=checkbox]{width:16px;height:16px;accent-color:#00ffc8;cursor:pointer}.color-picker-top{margin-top:20px}.color-picker-top label{color:#b0b0b0;font-size:.9rem;margin-bottom:8px;display:block}.color-picker-row-top{display:flex;align-items:center;gap:15px}.color-input-top{width:50px;height:40px;border:2px solid #4cc9f0;border-radius:6px;background:transparent;cursor:pointer;padding:0}.color-value-top{color:#00ffc8;font-family:Courier New,monospace;font-size:.9rem;background:#0000004d;padding:8px 12px;border-radius:6px;flex:1}.vm-guide-top{background:#1a1a2ee6;border-radius:12px;border:1px solid rgba(76,201,240,.2);padding:25px;display:flex;flex-direction:column;gap:25px}.guide-section{display:flex;flex-direction:column;gap:15px}.guide-section h3{color:#4cc9f0;margin:0;font-size:1.1rem;border-bottom:1px solid rgba(76,201,240,.3);padding-bottom:10px}.guide-content{display:flex;flex-direction:column;gap:12px}.guide-item{display:flex;align-items:center;gap:12px;padding:10px;background:#0003;border-radius:6px;border:1px solid rgba(255,255,255,.05)}.guide-icon{font-size:1.2rem;background:#00ffc81a;padding:8px;border-radius:6px;min-width:40px;text-align:center}.guide-item div{color:#e0e0e0;font-size:.9rem;line-height:1.4}.guide-item strong{color:#00ffc8}.tips-list{margin:0;padding-left:20px;color:#e0e0e0;font-size:.9rem;line-height:1.5}.tips-list li{margin-bottom:10px}.tips-list li:last-child{margin-bottom:0}.tips-list strong{color:#4cc9f0}.current-settings{margin-top:auto}.settings-list{display:flex;flex-direction:column;gap:10px;background:#0003;padding:15px;border-radius:8px;border:1px solid rgba(255,255,255,.05)}.setting-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.05)}.setting-item:last-child{border-bottom:none}.setting-item span:first-child{color:#b0b0b0;font-size:.85rem}.setting-item span:last-child{color:#00ffc8;font-family:Courier New,monospace;font-size:.85rem;font-weight:500}@media(max-width:1024px){.vm-layout-top{grid-template-columns:1fr}.viewer-container-top{height:400px}.stats-grid{grid-template-columns:1fr;gap:10px}}@media(max-width:768px){.vm-header-top{flex-direction:column;gap:15px;text-align:center}.control-tabs-top{flex-direction:column}.toggle-grid-top{grid-template-columns:1fr}.viewer-container-top{height:350px}.back-btn-top,.reset-btn-top{width:100%;min-width:auto}.axis-control{grid-template-columns:25px 1fr 40px}}.back-btn-top{padding:10px 20px;background:#00ffc81a;border:1px solid rgba(0,255,200,.3);color:#00ffc8;border-radius:8px;cursor:pointer;font-size:1rem;transition:all .2s ease;min-width:120px}.aiassistant-page{padding:2rem;color:#00ffc8;max-width:1200px;margin:auto;position:relative}.back-btn-top{background:transparent;border:2px solid #00ffc8;color:#00ffc8;padding:.6rem 1.2rem;border-radius:10px;cursor:pointer;transition:.25s;font-weight:700;margin-bottom:1rem;text-shadow:0 0 10px #00ffc8}.back-btn-top:hover{background:#00ffc8;color:#000;box-shadow:0 0 20px #00ffc8}.ai-header{text-align:center}.ai-title{font-size:3rem;text-shadow:0 0 12px #00ffc8}.ai-subtitle{max-width:850px;margin:.8rem auto 2rem;color:#bafff2;opacity:.85}.ai-demo-section{margin-top:2rem}.ai-demo-card{background:#050019b3;border:2px solid #00ffc8;padding:1.5rem;border-radius:16px;box-shadow:0 0 20px #00ffc8;margin-bottom:2rem}.ai-demo-card h2{margin-bottom:.5rem;text-shadow:0 0 8px #00ffc8}.ai-assistant-container{margin-top:1.2rem}.assistant-window{border:2px solid #00ffc8;border-radius:14px;padding:1rem;background:#000a14e6;box-shadow:0 0 22px #00ffc8}.assistant-header{padding-bottom:.8rem;border-bottom:1px solid rgba(0,255,200,.4);margin-bottom:.8rem}.header-left{display:flex;align-items:center;gap:.6rem}.header-left h3{margin:0;font-size:1.2rem}.listening-indicator,.speaking-indicator{display:flex;align-items:center;gap:.35rem;font-size:.85rem;margin-left:1rem;color:#00ffc8}.pulse-ring{width:10px;height:10px;border-radius:50%;background:#00ffc8;box-shadow:0 0 10px #00ffc8;animation:pulse 1s infinite alternate}@keyframes pulse{0%{transform:scale(1);opacity:.7}to{transform:scale(1.3);opacity:1}}.messages-container{height:320px;overflow-y:auto;padding-right:10px;margin-bottom:1rem;scrollbar-width:thin}.message{margin-bottom:1rem;display:flex;flex-direction:column}.user-message .message-content{align-self:flex-end;background:#00ffc8;color:#000;padding:.7rem;border-radius:10px 10px 0;max-width:70%;box-shadow:0 0 10px #00ffc8}.ai-message .message-content{align-self:flex-start;background:#00ffc81a;border:1px solid #00ffc8;color:#00ffc8;padding:.7rem;border-radius:10px 10px 10px 0;max-width:70%;box-shadow:0 0 10px #00ffc8}.message-sender{font-size:.75rem;opacity:.7;margin-bottom:.2rem}.input-area{border-top:1px solid rgba(0,255,200,.4);padding-top:1rem}.input-form{display:flex;gap:.5rem;margin-bottom:.8rem}.input-form input{flex:1;background:#000;color:#00ffc8;border:2px solid #00ffc8;padding:.6rem;border-radius:8px;outline:none;font-size:1rem}.send-btn{background:#00ffc8;color:#000;border:none;border-radius:8px;padding:0 .8rem;cursor:pointer;transition:.25s}.send-btn:hover{background:#fff}.controls{display:flex;gap:.5rem;margin-bottom:1rem}.voice-btn,.speak-btn,.clear-btn{background:transparent;border:2px solid #00ffc8;color:#00ffc8;padding:.5rem 1rem;border-radius:8px;cursor:pointer;transition:.25s;font-size:.9rem;font-weight:700}.voice-btn:hover,.speak-btn:hover,.clear-btn:hover{background:#00ffc8;color:#000;box-shadow:0 0 14px #00ffc8}.voice-btn.active{background:#00ffc8;color:#000}.tech-badge{display:inline-flex;align-items:center;gap:.3rem;opacity:.7;font-size:.8rem}.ai-features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem;margin-top:2rem}.feature-card{background:#000f19b3;padding:1rem;border:2px solid #00ffc8;border-radius:14px;box-shadow:0 0 12px #00ffc8}.tech-demo{margin-top:3rem}.tech-demo h3{margin-bottom:1rem}.tech-tags{display:flex;gap:.6rem;flex-wrap:wrap;margin-bottom:1rem}.tech-tag{padding:.4rem .7rem;border:1px solid #00ffc8;border-radius:8px;font-size:.85rem;opacity:.85}.code-example{background:#000a14b3;padding:1rem;border-radius:10px;border:2px solid #00ffc8;box-shadow:0 0 15px #00ffc8}pre{white-space:pre-wrap;font-size:.85rem;color:#00ffc8}@media(max-width:700px){.messages-container{height:260px}.ai-title{font-size:2.4rem}.assistant-window{padding:.7rem}}.detect-page{padding:2rem;text-align:center;color:#00ffc8}.detect-title{font-size:2.5rem;margin-bottom:1rem;text-shadow:0 0 12px #00ffc8}.detect-wrapper{position:relative;display:inline-block;border:2px solid #00ffc8;box-shadow:0 0 20px #00ffc8,inset 0 0 10px #00ffc8;border-radius:12px}.video-feed{width:600px;border-radius:12px}.overlay-canvas{position:absolute;top:0;left:0;border-radius:12px}.scanner-page{padding:2rem;text-align:center}.scanner-title{font-size:2.5rem;margin-bottom:1rem;text-shadow:0 0 12px #00ffc8}.mode-buttons{display:flex;justify-content:center;margin-bottom:1.5rem;gap:1rem}.mode-btn{padding:.7rem 1.5rem;border:2px solid #00ffc8;background:transparent;color:#00ffc8;font-size:1.2rem;border-radius:6px;cursor:pointer;transition:.3s}.mode-btn:hover{background-color:#00ffc833}.mode-btn.active{background-color:#00ffc866;box-shadow:0 0 15px #00ffc8}.system-module{padding:20px;height:100%;background:linear-gradient(135deg,#1a1a2e,#16213e);color:#e6e6e6}.system-module h2{margin-bottom:25px;color:#4cc9f0;text-align:center;font-size:2rem;text-shadow:0 0 10px rgba(76,201,240,.3)}.system-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;height:calc(100% - 60px)}.system-panel{background:#ffffff0d;border-radius:15px;padding:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0000004d}.system-panel h3{margin-bottom:20px;color:#72efdd;font-size:1.3rem;border-bottom:2px solid rgba(114,239,221,.3);padding-bottom:8px}.status-panel{grid-column:1}.status-grid{display:grid;grid-template-columns:1fr;gap:15px}.status-item{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.1)}.status-label{font-weight:500;color:#a5b4fc}.status-value{display:flex;align-items:center;gap:10px;min-width:120px}.progress-bar{width:100px;height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#4cc9f0,#4361ee);border-radius:4px;transition:width .3s ease}.status-indicator{padding:4px 12px;border-radius:12px;font-size:.9rem;font-weight:600}.status-indicator.online{background:#4caf5033;color:#4caf50;border:1px solid rgba(76,175,80,.3)}.status-indicator.offline{background:#f4433633;color:#f44336;border:1px solid rgba(244,67,54,.3)}.last-update{margin-top:20px;font-size:.9rem;color:#888;text-align:center}.diagnostics-panel{grid-column:2}.diagnostics-info{display:grid;grid-template-columns:1fr;gap:15px;margin-bottom:20px}.diag-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.diag-label{color:#a5b4fc}.health-status{padding:4px 12px;border-radius:12px;font-weight:600}.health-status.good{background:#4caf5033;color:#4caf50;border:1px solid rgba(76,175,80,.3)}.health-status.needs-attention{background:#ffc10733;color:#ffc107;border:1px solid rgba(255,193,7,.3)}.error-count{color:#f44336;font-weight:600}.warning-count{color:#ff9800;font-weight:600}.scan-time{color:#888;font-size:.9rem}.settings-panel{grid-column:1}.settings-list{display:grid;grid-template-columns:1fr;gap:15px;margin-bottom:20px}.setting-item{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.1)}.setting-label{color:#a5b4fc;font-weight:500}.toggle-switch{position:relative;display:inline-block;width:50px;height:24px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:#2d3748;transition:.4s;border-radius:24px}.toggle-slider:before{position:absolute;content:"";height:16px;width:16px;left:4px;bottom:4px;background-color:#fff;transition:.4s;border-radius:50%}input:checked+.toggle-slider{background:linear-gradient(90deg,#4cc9f0,#4361ee)}input:checked+.toggle-slider:before{transform:translate(26px)}.settings-actions{display:flex;gap:10px;margin-top:20px}.logs-panel{grid-column:2;display:flex;flex-direction:column}.logs-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.logs-list{flex:1;overflow-y:auto;background:#0003;border-radius:8px;padding:10px;font-family:Courier New,monospace;font-size:.9rem}.log-entry{padding:8px 12px;margin-bottom:5px;border-radius:4px;display:flex;gap:10px;align-items:center;background:#ffffff0d}.log-time{color:#888;min-width:70px}.log-type{font-weight:600;min-width:50px}.log-info .log-type{color:#4cc9f0}.log-warn .log-type{color:#ff9800}.log-error .log-type{color:#f44336}.log-message{flex:1;color:#e6e6e6}.action-btn{padding:10px 20px;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.9rem}.scan-btn{background:linear-gradient(135deg,#4361ee,#3a0ca3);color:#fff;width:100%}.scan-btn:hover{background:linear-gradient(135deg,#3a0ca3,#4361ee);transform:translateY(-2px);box-shadow:0 5px 15px #3a0ca366}.save-btn{background:linear-gradient(135deg,#4cc9f0,#4895ef);color:#fff;flex:1}.reboot-btn{background:linear-gradient(135deg,#f72585,#b5179e);color:#fff;flex:1}.clear-logs-btn{padding:6px 12px;background:#f4433633;color:#f44336;border:1px solid rgba(244,67,54,.3);border-radius:6px;cursor:pointer;font-size:.8rem;transition:all .3s ease}.clear-logs-btn:hover{background:#f443364d}.action-btn:hover{transform:translateY(-2px);box-shadow:0 5px 15px #0000004d}.logs-list::-webkit-scrollbar{width:6px}.logs-list::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.logs-list::-webkit-scrollbar-thumb{background:#4cc9f04d;border-radius:3px}.logs-list::-webkit-scrollbar-thumb:hover{background:#4cc9f080}@media(max-width:1200px){.system-grid{grid-template-columns:1fr}.system-panel{grid-column:1!important}}.movement-module{padding:1rem;color:#00ffc8;background:#050013;border-radius:12px;border:2px solid #00ffc8}.mm-title{font-size:1.25rem;margin-bottom:.5rem}.mm-topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.tabs button{margin-right:6px;padding:6px 10px;border-radius:8px;background:transparent;color:inherit;border:1px solid rgba(0,255,200,.08)}.tabs button.active{background:#00ffc81f;box-shadow:0 0 10px #00ffc8}.btn{padding:8px 12px;border-radius:8px;border:1px solid #00ffc8;background:transparent;color:#00ffc8}.btn.ghost{background:transparent;opacity:.7}.panel{padding:10px 6px}.quick-actions button{margin-right:8px}.preset-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}.preset-card{border:1px solid rgba(0,255,200,.12);padding:8px;border-radius:8px;background:#0006}.voice-module-page{padding:40px;color:#0fffcf}.back-btn{color:#0fffcf;padding:8px 14px;border:2px solid #0fffcf;border-radius:8px;text-decoration:none;font-weight:700;transition:.2s}.back-btn:hover{background:#0fffcf20}.vm-title{font-size:42px;margin-top:20px}.vm-subtitle{margin-bottom:40px;color:#88ffe9}.vm-card-container{display:flex;flex-direction:column;gap:30px}.vm-card{background:#001820;padding:30px;border:2px solid #0fffcf;border-radius:14px;box-shadow:0 0 15px #0fffcf60;transition:.3s;text-decoration:none;color:#0fffcf}.vm-card:hover{box-shadow:0 0 25px #0fffcf;transform:translateY(-4px)}.subpage{padding:40px;color:#0fffcf}.panel{background:#001820;padding:20px;border-radius:12px;margin-bottom:20px;border:2px solid #0fffcf60}.save-btn{margin-top:20px;padding:12px 22px;background:#002a33;border:2px solid #0fffcf;color:#0fffcf;border-radius:10px;cursor:pointer}.save-btn:hover{background:#0fffcf20}.jsSceneOverlay{position:fixed;inset:0;z-index:9999}.jsSceneBackdrop{position:absolute;inset:0;background:#000000b8;-webkit-backdrop-filter:none;backdrop-filter:none}.jsSceneWindow{position:relative;width:min(1050px,92vw);max-height:86vh;margin:6vh auto 0;border-radius:16px;overflow:hidden;background:linear-gradient(180deg,#050013f2,#050013d9);border:2px solid #00ffc8;box-shadow:0 8px 30px #0000008c}.jsSceneHeader{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.2rem;border-bottom:1px solid rgba(0,255,200,.25);position:relative}.jsSceneHeader:before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(rgba(0,255,200,.06) 0 1px,transparent 1px 22px),repeating-linear-gradient(90deg,rgba(255,0,255,.05) 0 1px,transparent 1px 22px);opacity:.55;pointer-events:none}.jsSceneTitle{position:relative;display:flex;flex-direction:column;gap:.25rem;z-index:1}.jsSceneSubtitle{color:#d1d1d1;font-size:.95rem}.jsSceneClose{transition:.2s ease}.jsSceneClose:hover{background:#00ffc8;color:#000;box-shadow:0 0 18px #00ffc873}.jsSceneBody{padding:1.2rem;overflow:auto;max-height:calc(86vh - 70px)}.jsSceneGrid{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:1.1rem;margin-top:.5rem}.jsSceneCard{transition:background .2s ease,border-color .2s ease,box-shadow .2s ease;background:#00000059}.jsSceneCard:hover{transform:none;background:#00ffc80f;border-color:#00ffc873;box-shadow:0 0 12px #00ffc82e}.jsSceneCard:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 10%,rgba(0,255,200,.1),transparent 45%),radial-gradient(circle at 80% 90%,rgba(255,0,255,.08),transparent 55%);pointer-events:none}.jsCardTop{position:relative;display:flex;flex-direction:column;gap:.55rem}.jsCardTitle{margin:0;font-size:1.25rem;font-weight:800;color:#00ffc8;text-shadow:0 0 8px rgba(0,255,200,.55)}.jsCardTags{display:flex;flex-wrap:wrap;gap:8px}.jsTag{border:1px solid rgba(0,255,200,.55);color:#00ffc8;border-radius:999px;padding:.2rem .55rem;font-weight:800;font-size:.75rem;background:#00ffc80f}.jsCardDesc{color:#d1d1d1;margin:.85rem 0 1rem;line-height:1.5}.jsCardActions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.jsBtn{transition:.2s ease}.jsBtn:hover{background:#00ffc81f}.jsBtn.secondary:hover{background:#00ffc814}.jsHint{color:#d1d1d1cc;font-size:.9rem}.jsSceneFooter{margin-top:1rem;padding-top:.9rem;border-top:1px solid rgba(0,255,200,.25);color:#d1d1d1e6;font-size:.95rem}.rgb-gradient{background:linear-gradient(90deg,red,#0f0,#00f,#f0f);background-size:300%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:rgbShift 6s linear infinite}@keyframes rgbShift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@media(max-width:900px){.jsSceneGrid{grid-template-columns:1fr}}.arduino-page{min-height:100vh;padding:3rem 1.25rem;background:#050013;color:#d1d1d1}.back-btn-top{position:fixed;top:18px;left:18px;z-index:9999;padding:.75rem 1rem;border-radius:999px;border:2px solid #00ffc8;background:#050013d9;color:#00ffc8;font-weight:700;cursor:pointer;box-shadow:0 0 14px #00ffc859;transition:.2s ease}.back-btn-top:hover{background:#00ffc8;color:#000;box-shadow:0 0 25px #00ffc8a6}.arduino-header{max-width:1100px;margin:0 auto 1.5rem;text-align:center;padding-top:1rem}.arduino-title{margin:0;font-size:2.8rem;font-weight:800;color:#00ffc8;text-shadow:0 0 10px rgba(0,255,200,.35)}.arduino-subtitle{margin:.8rem auto 0;max-width:760px;line-height:1.5;opacity:.9}.neon-panel{max-width:1100px;margin:0 auto;border:2px solid #00ffc8;border-radius:14px;background:#00000059;box-shadow:0 0 18px #00ffc859,inset 0 0 10px #00ffc82e}.arduino-controls{padding:1rem 1.25rem;margin-top:1.5rem}.controls-row{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.controls-label{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;color:#00ffc8d9;font-weight:700}.filter-group{display:flex;gap:.6rem;flex-wrap:wrap}.filter-btn{border:2px solid rgba(0,255,200,.7);background:#05001399;color:#00ffc8;padding:.45rem .85rem;border-radius:999px;cursor:pointer;font-weight:700;transition:.2s ease}.filter-btn:hover{background:#00ffc81f}.filter-btn.active{background:#00ffc8;color:#000}.controls-hint{margin:.85rem 0 0;opacity:.85}.terminal-prompt{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;color:#00ffc8e6;font-weight:800}.arduino-grid{max-width:1100px;margin:1.5rem auto 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:1rem}.project-card{padding:1rem;border-radius:14px}.card-top{margin-bottom:.75rem}.card-status{display:flex;justify-content:flex-end;margin-bottom:.5rem}.status-pill{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.75rem;letter-spacing:.8px;padding:.25rem .55rem;border-radius:999px;border:1px solid rgba(0,255,200,.45);color:#00ffc8e6}.status-pill.in-progress{border-color:#ffd24d99;color:#ffd24df2}.project-title{margin:0;font-size:1.35rem;color:#00ffc8;text-shadow:0 0 10px rgba(0,255,200,.25)}.project-tagline{margin:.5rem 0 0;opacity:.9;line-height:1.4}.wiring-preview{margin-top:.9rem;border-radius:12px;border:1px solid rgba(0,255,200,.35);overflow:hidden}.wiring-preview img{width:100%;height:190px;object-fit:cover;display:block;filter:saturate(1.05)}.wiring-placeholder{margin-top:.9rem;padding:.8rem;border-radius:12px;border:1px dashed rgba(0,255,200,.35);background:#0500138c}.placeholder-line{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;color:#00ffc8bf;margin:.25rem 0}.project-desc{margin:.9rem 0 0;line-height:1.5}.skills-row{margin-top:.9rem;display:flex;flex-wrap:wrap;gap:.5rem}.skill-chip{padding:.35rem .6rem;border-radius:999px;border:1px solid rgba(0,255,200,.45);background:#00ffc812;color:#00ffc8e6;font-weight:700;font-size:.85rem}.card-actions{margin-top:1rem;display:flex;align-items:center;gap:.9rem;flex-wrap:wrap}.neon-link{color:#00ffc8;font-weight:800;text-decoration:none;border-bottom:1px solid rgba(0,255,200,.35);padding-bottom:2px;transition:.2s ease}.neon-link:hover{color:#fff;border-bottom-color:#ffffff8c}.neon-link.secondary{color:#a078fff2;border-bottom-color:#a078ff73}.neon-link.secondary:hover{color:#fff;border-bottom-color:#ffffff8c}.muted{opacity:.75}.small{font-size:.9rem}.arduino-footer{padding:.9rem 1.1rem;margin:1.5rem auto 0}@media(max-width:600px){.arduino-page{padding:2.5rem 1rem}.wiring-preview img{height:160px}}.uc-page{min-height:100vh;background:#050013;color:#d1d1d1;padding:3rem 1.25rem}.uc-panel{max-width:900px;margin:4rem auto 0;padding:2rem;border-radius:16px;border:2px solid #00ffc8;background:#00000073;box-shadow:0 0 20px #00ffc873,inset 0 0 10px #00ffc840}.uc-terminal{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;color:#00ffc8e6;margin-bottom:1.25rem}.prompt{font-weight:800;margin-right:.25rem}.uc-title{margin:0;font-size:2.4rem;color:#00ffc8;text-shadow:0 0 8px rgba(0,255,200,.45)}.uc-description{margin-top:.75rem;max-width:720px;line-height:1.55;opacity:.95}.uc-status{margin-top:1.75rem;padding-top:1.25rem;border-top:1px solid rgba(0,255,200,.35)}.uc-status-title{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;color:#00ffc8e6;margin-bottom:.75rem}.uc-status ul{margin:0;padding-left:1.25rem;line-height:1.6}.uc-footer{margin-top:2rem;padding-top:1.25rem;border-top:1px solid rgba(0,255,200,.35);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.uc-active{color:#4dff88f2;font-weight:800}.rk-page{padding:16px;background:#000;color:#d1fae5;min-height:100vh}.rk-header{margin-bottom:12px;border-left:3px solid #22c55e;padding-left:12px}.rk-header h1{margin:0;font-size:1.2rem;color:#22c55e}.rk-header p{margin:6px 0 0;opacity:.85}.rk-grid{display:grid;grid-template-columns:560px 1fr;gap:16px;height:calc(100vh - 90px)}.rk-viewport{position:relative;border:1px solid rgba(34,197,94,.35);border-radius:10px;overflow:hidden}.rk-canvasWrap{width:100%;height:100%}.rk-canvas{width:100%!important;height:100%!important;display:block}.rk-panel{max-width:820px;overflow:auto;border:1px solid rgba(34,197,94,.2);border-radius:10px;padding:12px}.rk-wip{position:absolute;top:12px;left:12px;z-index:10;pointer-events:none;padding:8px 12px;font-family:ui-monospace,Menlo,Monaco,Consolas,Courier New,monospace;font-size:.85rem;background:#000000bf;color:#22c55e;border:1px solid #22c55e;border-radius:8px}.rk-blink{display:inline-block;margin-right:6px;animation:rkBlink 1s infinite}@keyframes rkBlink{50%{opacity:0}}.rk-controls label{display:block;margin-top:14px;margin-bottom:6px;color:#22c55e;font-family:ui-monospace,Menlo,Monaco,Consolas,Courier New,monospace}.rk-controls input[type=range]{width:100%}.rk-back{display:inline-block;margin-bottom:8px;font-size:.85rem;text-decoration:none;color:#22c55e;border:1px solid #22c55e;padding:4px 10px;border-radius:6px;transition:.2s ease}.rk-back:hover{background:#22c55e;color:#000}.robotics-page{padding:2rem;color:#d1fae5}.robotics-header{margin-bottom:1.5rem;padding-left:12px;border-left:3px solid #22c55e}.robotics-header h2{margin:0;color:#22c55e}.robotics-header p{margin:6px 0 0;opacity:.85}.robotics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.robotics-card{padding:16px;border:1px solid rgba(0,255,200,.35);border-radius:12px;background:#0006}.robotics-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.robotics-card h3{margin:0;font-size:1.05rem;color:#00ffc8}.robotics-desc{margin:10px 0 0;line-height:1.3;color:#d1fae5;opacity:.9}.robotics-actions{margin-top:14px}.robotics-btn{display:inline-block;padding:8px 12px;border:1px solid #00ffc8;border-radius:10px;color:#00ffc8;text-decoration:none;transition:.2s ease}.robotics-btn:hover{background:#00ffc8;color:#000}.robotics-badge{padding:2px 8px;border-radius:999px;background:#facc15;color:#000;font-size:.7rem;font-weight:800}.robotics-back-btn{margin-bottom:1rem;padding:6px 12px;border:1px solid #00ffc8;border-radius:8px;background:transparent;color:#00ffc8;cursor:pointer;transition:.2s ease}.robotics-back-btn:hover{background:#00ffc8;color:#000}.sonny-page{min-height:100vh;max-width:1280px;margin:0 auto;padding:32px 24px 80px;background:radial-gradient(circle at top right,rgba(0,255,200,.06),transparent 24%),radial-gradient(circle at top left,rgba(34,197,94,.05),transparent 28%),#050505;color:#e5e5e5;font-family:Arial,sans-serif}.sonny-hero{margin-bottom:36px}.sonny-hero-grid{display:grid;grid-template-columns:1.35fr .95fr;gap:24px;align-items:stretch}.sonny-hero-text,.sonny-hero-right{border:1px solid rgba(0,255,200,.16);border-radius:20px;background:linear-gradient(180deg,#00ffc80a,#00000047),#080808eb;box-shadow:0 0 0 1px #00ffc80a inset,0 10px 30px #00000059;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.sonny-hero-text{display:flex;flex-direction:column;justify-content:center;gap:14px;padding:28px}.sonny-hero-text h1{margin:0;font-size:clamp(2.4rem,4vw,3.4rem);line-height:1;color:#ecfdf5;letter-spacing:.02em}.sonny-hero-text p{margin:0}.sonny-badge{display:inline-flex;align-self:flex-start;margin-bottom:4px;padding:6px 12px;border:1px solid rgba(0,255,200,.28);border-radius:999px;background:#00ffc814;color:#00ffc8;font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.sonny-subtitle{color:#22c55e;font-size:1.05rem;font-weight:700}.sonny-description{max-width:62ch;line-height:1.7;color:#cbd5e1}.sonny-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}.sonny-btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 16px;border-radius:12px;font-weight:800;text-decoration:none;transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease}.sonny-btn:hover{transform:translateY(-1px)}.sonny-btn.primary{background:linear-gradient(180deg,#22c55e,#16a34a);color:#03130a;box-shadow:0 6px 18px #22c55e38}.sonny-btn.secondary{border:1px solid rgba(0,255,200,.35);background:#00ffc80a;color:#00ffc8}.sonny-btn.secondary:hover{background:#00ffc81a}.sonny-hero-right{display:grid;grid-template-rows:1fr auto;gap:16px;padding:18px}.sonny-hero-container{display:flex;align-items:center;justify-content:center;min-height:260px;overflow:hidden;border:1px solid rgba(0,255,200,.14);border-radius:16px;background:radial-gradient(circle at center,rgba(0,255,200,.06),transparent 45%),#030303}.sonny-hero-image{width:100%;max-width:100%;max-height:280px;object-fit:contain}.sonny-status-card{padding:16px 18px;border:1px solid rgba(0,255,200,.18);border-radius:16px;background:#0000006b}.sonny-status-card h3{margin:0 0 10px;color:#00ffc8;font-size:1rem}.sonny-status-card p{margin:6px 0;color:#d1fae5;line-height:1.45}.sonny-section{margin-bottom:34px}.sonny-section h2{margin:0 0 14px;color:#22c55e;font-size:clamp(1.45rem,2.5vw,1.9rem);letter-spacing:.02em}.sonny-features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.sonny-card{padding:18px;border:1px solid rgba(0,255,200,.14);border-radius:16px;background:linear-gradient(180deg,#00ffc806,#0003),#0a0a0af5;box-shadow:0 0 0 1px #ffffff04 inset,0 8px 24px #00000038}.sonny-card h3{margin:0 0 10px;color:#00ffc8;font-size:1rem}.sonny-card p{margin:0;line-height:1.6;color:#d1d5db}.sonny-architecture{margin:16px 0;padding:14px 16px;border-left:3px solid #00ffc8;border-radius:12px;background:#00ffc80a}.sonny-architecture p{margin:0 0 8px}.sonny-architecture ul,.sonny-card ul{margin:0;padding-left:20px}.sonny-architecture li,.sonny-card li{margin-bottom:8px;line-height:1.55;color:#d1fae5}.sonny-card code{padding:2px 6px;border-radius:8px;background:#ffffff0f;color:#8bffdf;font-size:.95em}.sonny-tech-pill{display:flex;align-items:center;justify-content:center;min-height:52px;padding:10px 12px;border:1px solid rgba(0,255,200,.16);border-radius:14px;background:#00ffc808;color:#d1fae5;font-weight:700;text-align:center}.sonny-milestone-item{padding:14px 16px;border:1px solid rgba(34,197,94,.14);border-radius:14px;background:#22c55e09;color:#d1fae5;line-height:1.55}.sonny-gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.sonny-gallery-image{width:100%;height:180px;border-radius:12px;background:#000;object-fit:cover}.sonny-card-body{margin-top:14px}.sonny-card-body h3{margin:0 0 8px;color:#00ffc8}.sonny-card-body p{margin:0;line-height:1.5;color:#d1fae5}.sonny-video-container{border:1px solid rgba(0,255,200,.14);border-radius:18px;overflow:hidden;background:#020202;box-shadow:0 10px 28px #00000040}.sonny-video-container video{display:block;width:100%;border-radius:18px}@media(max-width:900px){.sonny-page{padding:22px 16px 56px}.sonny-hero-grid{grid-template-columns:1fr}.sonny-hero-text,.sonny-hero-right{padding:20px}.sonny-hero-container{min-height:220px}.sonny-gallery-image{height:160px}}@media(max-width:560px){.sonny-hero-text h1{font-size:2.2rem}.sonny-buttons{flex-direction:column}.sonny-btn{width:100%}}.sonny-quickstats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}.sonny-quickstat{padding:12px 14px;border:1px solid rgba(0,255,200,.18);border-radius:14px;background:#00ffc80a}.sonny-quickstat-label{display:block;margin-bottom:6px;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#7dd3fc;opacity:.9}.sonny-quickstat strong{color:#ecfdf5;font-size:.98rem}.sonny-tech-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.sonny-tech-pill{display:flex;align-items:center;justify-content:center;min-height:52px;padding:10px 12px;border:1px solid rgba(0,255,200,.18);border-radius:14px;background:linear-gradient(180deg,#00ffc814,#0003);color:#d1fae5;font-weight:700;text-align:center;box-shadow:0 0 14px #00ffc80f}.sonny-milestones{display:grid;gap:12px}.sonny-milestone-item{padding:14px 16px;border-left:3px solid #00ffc8;border-radius:12px;background:#ffffff08;color:#d1fae5}@media(max-width:700px){.sonny-quickstats{grid-template-columns:1fr}}
