html,body,#root{width:100vw;height:100vh;margin:0;padding:0;background:#000;overflow:hidden}.visualizer-glass{background:#2828288c;border-radius:18px;box-shadow:0 8px 32px #1f26872e;backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border:1.2px solid rgba(255,255,255,.18);padding:8px 18px;margin:0 auto;min-width:280px;max-width:360px;display:flex;align-items:center;justify-content:center;z-index:10}body,html,#root{font-family:Inter,Segoe UI,Arial,sans-serif;font-weight:400;letter-spacing:.01em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;margin:0;padding:0;background:#222;color:#fff;box-sizing:border-box}.main-bg{min-height:100vh;display:flex;flex-direction:column;background:#222;position:relative;z-index:0}.header-bar{width:100%;display:flex;justify-content:space-between;align-items:center;padding:32px 56px 0 32px;box-sizing:border-box;position:relative;z-index:2}.logo{font-size:2.1rem;font-weight:700;letter-spacing:.5px;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.1)}.nav-links{display:flex;gap:36px}.nav-links a{color:#fff;text-decoration:none;font-size:1.13rem;font-weight:500;opacity:.96;transition:opacity .2s}.nav-links a:hover{opacity:1}.main-content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:32px;margin-top:80px;margin-bottom:32px}.glass-card{background:#2828288c;border-radius:22px;box-shadow:0 8px 32px #1f26872e;backdrop-filter:blur(32px) saturate(180%);-webkit-backdrop-filter:blur(32px) saturate(180%);border:1.5px solid rgba(255,255,255,.18);padding:32px 40px;max-width:700px;width:92vw;margin:0 auto;color:#fff;position:relative;z-index:1}.hero-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;margin-bottom:12px}.hero-card h1{font-size:3.2rem;font-weight:700;margin:0;letter-spacing:.5px}.hero-card h2{font-size:1.35rem;font-weight:400;margin:0 0 12px;opacity:.88}.glass-btn{background:#ffffff1a;border:1.2px solid rgba(255,255,255,.22);border-radius:16px;color:#fff;font-size:1.13rem;font-weight:600;padding:12px 32px;margin-top:8px;cursor:pointer;transition:background .2s,border .2s;box-shadow:0 1px 4px #1f268714;outline:none}.glass-btn:hover{background:#ffffff2e;border:1.2px solid rgba(255,255,255,.32)}.about-card{margin-top:0;margin-bottom:38px;min-height:180px}.about-card h1{font-size:1.5rem;font-weight:700;margin-bottom:10px}.about-card p{font-size:1.05rem;font-weight:400;line-height:1.6;opacity:.92;margin:0}.music-footer{width:100vw;display:flex;justify-content:center;align-items:flex-end;padding-bottom:32px;position:fixed;left:0;bottom:0;z-index:10;pointer-events:none;margin-top:40px}.music-player-glass{background:#ffffff1a;border-radius:22px;box-shadow:0 4px 24px #1f26871a;backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border:1.2px solid rgba(255,255,255,.18);padding:14px 28px 10px;width:540px;max-width:96vw;color:#fff;display:flex;flex-direction:column;gap:6px;pointer-events:auto}.music-player-top{display:flex;flex-direction:row;align-items:center;justify-content:space-between;width:100%;margin-bottom:4px}.music-info{display:flex;flex-direction:column;gap:2px;margin-bottom:0}.music-controls{display:flex;gap:14px;align-items:center;margin-bottom:0}.music-controls button{background:none;border:none;color:#6cb0ff;font-size:1.35rem;cursor:pointer;opacity:.92;transition:opacity .2s;padding:0 4px}.music-controls button:hover{opacity:1}.music-title{font-size:1.08rem;font-weight:700}.music-artist{font-size:.98rem;font-weight:400;opacity:.85}.music-progress-bar{width:100%;height:4px;background:#ffffff21;border-radius:2px;overflow:hidden;margin-bottom:2px}.music-progress-fill{height:100%;background:linear-gradient(90deg,#fff,#e0e0e0);border-radius:2px;transition:width .3s}.music-times{display:flex;justify-content:space-between;font-size:.98rem;opacity:.85;margin-top:0}.welcome-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#14141473;backdrop-filter:blur(8px) saturate(160%);-webkit-backdrop-filter:blur(8px) saturate(160%);transition:opacity .4s;opacity:1;pointer-events:auto}.welcome-overlay.fade-in{animation:welcomeFadeIn .7s cubic-bezier(.4,0,.2,1) both}.welcome-overlay.fade-out{animation:welcomeFadeOut .7s cubic-bezier(.4,0,.2,1) both}@keyframes welcomeFadeIn{0%{opacity:0}to{opacity:1}}@keyframes welcomeFadeOut{0%{opacity:1}to{opacity:0}}.welcome-glass{background:#282828a6;border-radius:28px;box-shadow:0 8px 32px #1f26872e;border:1.5px solid rgba(255,255,255,.18);padding:48px 64px;color:#fff;display:flex;flex-direction:column;align-items:center;gap:18px;min-width:340px;max-width:90vw}.welcome-glass h1{font-size:2.5rem;font-weight:700;margin:0 0 8px;letter-spacing:.5px}.welcome-glass h2{font-size:1.25rem;font-weight:400;margin:0 0 18px;opacity:.92}.fadein-el{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.4,0,.2,1),transform .7s cubic-bezier(.4,0,.2,1);transition-delay:calc(var(--fadein-order, 1) * .22s)}.fadein-el.show{opacity:1;transform:none}.hero-btn-row{display:flex;gap:18px;margin-top:8px;justify-content:center}.about-card.about-focus{z-index:30;position:fixed;left:50%;top:50%;transform:translate(-50%,-50%) scale(1.35);min-width:520px;max-width:900px;width:90vw;min-height:340px;box-shadow:0 16px 80px #1f268752;transition:all .35s cubic-bezier(.4,0,.2,1);opacity:1;padding:48px 56px;display:flex;flex-direction:column;justify-content:center}.about-card.contact-focus{position:static!important;left:unset!important;top:unset!important;transform:none!important;min-width:unset!important;max-width:700px!important;width:92vw!important;min-height:180px!important;box-shadow:0 8px 32px #1f26872e!important;transition:none!important;opacity:1!important;padding:32px 40px!important;display:flex;flex-direction:column;justify-content:center}.faded-out{opacity:0!important;pointer-events:none!important;transform:scale(.85)!important;transition:all .35s cubic-bezier(.4,0,.2,1)!important;z-index:0!important}.about-skills{margin-top:32px;opacity:0;transform:translateY(32px);transition:opacity .7s cubic-bezier(.4,0,.2,1),transform .7s cubic-bezier(.4,0,.2,1);pointer-events:none}.about-focus .about-skills.fadein-skills{opacity:1;transform:none;pointer-events:auto;transition-delay:.3s}.about-skills h2{font-size:1.35rem;font-weight:700;margin-bottom:18px;margin-top:0}.skills-columns{display:flex;flex-wrap:wrap;gap:36px 48px;margin-top:0}.skills-columns>div{min-width:150px;flex:1 1 180px}.skills-columns ul{margin:8px 0 0;padding-left:18px;font-size:1.05rem;opacity:.93}.skills-columns li{margin-bottom:4px}
