@import"https://fonts.googleapis.com/css2?family=Geist:wght@100..900&display=swap";:root{--background: 0 0% 100%;--foreground: 222.2 84% 4.9%;--card: 0 0% 100%;--card-foreground: 222.2 84% 4.9%;--popover: 0 0% 100%;--popover-foreground: 222.2 84% 4.9%;--primary: 221.2 83.2% 53.3%;--primary-foreground: 210 40% 98%;--secondary: 210 40% 96.1%;--secondary-foreground: 222.2 47.4% 11.2%;--muted: 210 40% 96.1%;--muted-foreground: 215.4 16.3% 46.9%;--accent: 210 40% 96.1%;--accent-foreground: 222.2 47.4% 11.2%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 210 40% 98%;--success: 142.1 76.2% 36.3%;--success-foreground: 355.7 100% 97.3%;--warning: 24.6 95% 53.1%;--warning-foreground: 0 0% 100%;--border: 214.3 31.8% 91.4%;--input: 214.3 31.8% 91.4%;--ring: 221.2 83.2% 53.3%;--radius: .5rem}.dark{--background: 222.2 84% 4.9%;--foreground: 210 40% 98%;--card: 222.2 47.4% 11.2%;--card-foreground: 210 40% 98%;--popover: 222.2 47.4% 11.2%;--popover-foreground: 210 40% 98%;--primary: 217.2 91.2% 59.8%;--primary-foreground: 222.2 47.4% 11.2%;--secondary: 217.2 32.6% 17.5%;--secondary-foreground: 210 40% 98%;--muted: 217.2 32.6% 17.5%;--muted-foreground: 215 20.2% 65.1%;--accent: 217.2 32.6% 17.5%;--accent-foreground: 210 40% 98%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 210 40% 98%;--success: 142.1 70.6% 45.3%;--warning: 24.6 95% 53.1%;--border: 217.2 32.6% 17.5%;--input: 217.2 32.6% 17.5%;--ring: 224.3 76.3% 48%}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}.login-screen::-webkit-scrollbar,.controller-app::-webkit-scrollbar{width:12px;height:12px}.login-screen::-webkit-scrollbar-track,.controller-app::-webkit-scrollbar-track{background:transparent}.login-screen::-webkit-scrollbar-thumb,.controller-app::-webkit-scrollbar-thumb{background:hsl(var(--foreground) / .2);border-radius:10px;border:3px solid transparent;background-clip:padding-box}.login-screen::-webkit-scrollbar-thumb:hover,.controller-app::-webkit-scrollbar-thumb:hover{background:hsl(var(--foreground) / .4);border:3px solid transparent;background-clip:padding-box}.login-screen::-webkit-scrollbar-corner,.controller-app::-webkit-scrollbar-corner{background:transparent}body,.app,.login-screen,.connect-form,.form-group input,.mode-tabs,.mode-tab,.protocol-selector,.protocol-tab,.tutorial-step,.step-number,.tutorial-btn,.dance-btn,.ok-btn,.shortcut-btn{transition:background-color .3s ease,border-color .3s ease,color .3s ease,box-shadow .3s ease}body{font-family:Geist,sans-serif;background-color:hsl(var(--background));color:hsl(var(--foreground));overflow:hidden;min-height:100vh}.app{min-height:100vh;height:100vh;overflow:hidden;display:flex;flex-direction:column;background-color:hsl(var(--background));position:relative}.app:before{content:"";position:absolute;top:-10%;right:-10%;width:24rem;height:24rem;background:hsl(var(--primary) / .1);border-radius:50%;filter:blur(40px);pointer-events:none;z-index:0}.app:after{content:"";position:absolute;bottom:-10%;left:-10%;width:24rem;height:24rem;background:hsl(var(--primary) / .05);border-radius:50%;filter:blur(40px);pointer-events:none;z-index:0}.header-actions{position:absolute;top:1.5rem;right:1.5rem;display:flex;gap:.75rem;z-index:50;animation:fadeIn .7s ease forwards}.header-btn{width:2.5rem;height:2.5rem;border-radius:50%;background:hsl(var(--card) / .5);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid hsl(var(--border) / .5);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 10px 15px -3px #0000001a;position:relative;overflow:hidden;outline:none}.header-btn:hover{background:hsl(var(--muted))}.header-btn svg{width:1rem;height:1rem;transition:transform .3s ease}.header-btn:hover svg{transform:scale(1.1)}.header-btn.theme-btn .moon-icon{color:hsl(var(--primary))}.header-btn.theme-btn .sun-icon{color:#f59e0b}.lang-btn-content{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;transition:transform .3s ease}.lang-btn-text{font-size:.625rem;font-weight:900;text-transform:uppercase;color:hsl(var(--foreground) / .8);font-family:inherit}.lang-btn-icon{transform:translateY(100%);color:hsl(var(--primary))}@media (hover: hover){.header-btn:hover .lang-btn-text{transform:translateY(-100%)}.header-btn:hover .lang-btn-icon{transform:translateY(0)}}.login-screen{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:4rem 1.5rem 2rem;z-index:10;width:100%;overflow-y:auto;overflow-x:hidden}.logo{display:flex;flex-direction:column;align-items:center;margin-bottom:2rem;text-align:center;z-index:10}.logo-icon-wrapper{position:relative;padding:1rem;background:hsl(var(--primary) / .1);border-radius:1rem;box-shadow:0 10px 15px -3px hsl(var(--primary) / .05);border:1px solid hsl(var(--primary) / .2);margin-bottom:1.5rem}.logo-icon-svg{width:40px;height:40px;color:hsl(var(--primary));margin-bottom:0}.logo-title{font-size:2.25rem;font-weight:900;letter-spacing:-.025em;color:hsl(var(--foreground));text-transform:uppercase}.logo-sub-wrapper{display:flex;align-items:center;justify-content:center;gap:.75rem;opacity:.6;margin-top:.5rem}.logo-sub-line{height:1px;width:2rem;background:linear-gradient(to right,transparent,hsl(var(--primary)))}.logo-sub-line.right{background:linear-gradient(to left,transparent,hsl(var(--primary)))}.logo-sub{font-size:.65rem;font-weight:700;letter-spacing:.4em;color:hsl(var(--primary));text-transform:uppercase;margin-top:0}.mode-tabs,.protocol-selector{display:flex;width:100%;max-width:400px;background:hsl(var(--card) / .5);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:4px;border-radius:1rem;border:1px solid hsl(var(--border));margin-bottom:.75rem;z-index:10}.mode-tab,.protocol-tab{flex:1;padding:.55rem;background:transparent;border:none;color:hsl(var(--muted-foreground));font-family:inherit;font-weight:700;font-size:.75rem;cursor:pointer;border-radius:calc(1rem - 6px)}.mode-tab.active,.protocol-tab.active{background:hsl(var(--primary));color:hsl(var(--primary-foreground));box-shadow:0 4px 12px hsla(var(--primary),.3)}.connect-form{width:100%;max-width:400px;background:hsl(var(--card) / .6);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border:1px solid hsl(var(--foreground) / .1);border-radius:1.5rem;padding:.25rem;box-shadow:0 25px 50px -12px #00000040;display:flex;flex-direction:column;z-index:10}.connect-form-inner{background:hsl(var(--background) / .4);border-radius:1.25rem;padding:1.5rem 2rem;display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.4rem}.form-group label{font-size:.65rem;font-weight:700;color:hsl(var(--muted-foreground));text-transform:uppercase}.form-group input{background:hsl(var(--background) / .5);border:1px solid hsl(var(--border) / .5);border-radius:.75rem;padding:.75rem 1rem;color:hsl(var(--foreground));font-family:inherit;font-size:1.125rem;font-weight:700;text-align:center;letter-spacing:.2em;text-transform:uppercase;outline:none;width:100%}.form-group input:focus{border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsl(var(--primary) / .5)}.code-input{font-size:2.2rem!important;text-align:center;letter-spacing:.15em!important;font-weight:800!important}.dance-btn{background:linear-gradient(135deg,hsl(var(--primary)),hsl(var(--primary) / .8));color:hsl(var(--primary-foreground));border:1px solid hsl(var(--border) / .2);padding:1.25rem 3.5rem;border-radius:2rem;font-size:1.25rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em;cursor:pointer;box-shadow:0 10px 25px -5px hsl(var(--primary) / .5),inset 0 2px 5px #fff3;transition:all .2s cubic-bezier(.4,0,.2,1);width:auto;min-width:220px}.dance-btn:active{transform:scale(.98);opacity:.9}.dance-container{width:100%;padding:1.5rem 2rem;display:flex;justify-content:center;align-items:center}.dance-container button{pointer-events:auto;max-width:320px}.connect-btn{background:hsl(var(--primary));color:hsl(var(--primary-foreground));border:none;padding:1rem;border-radius:.75rem;font-weight:900;font-size:.875rem;text-transform:uppercase;letter-spacing:.15em;cursor:pointer;box-shadow:0 10px 15px -3px hsl(var(--primary) / .25);width:100%}.controller-app{flex:1;display:flex;flex-direction:column;position:relative;background:radial-gradient(circle at center 20%,var(--player-color) 0%,hsl(var(--background)) 70%);background-attachment:fixed}.status-bar{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:hsl(var(--card) / .3);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid hsl(var(--border) / .5);position:relative;z-index:50}.status-bar-left{display:flex;align-items:center;gap:1rem;flex:1}.status-bar-info{display:flex;flex-direction:column}.status-profile-info{display:flex;flex-direction:row;align-items:center;gap:6px;width:auto}.status-portrait-container{position:relative;width:48px;height:48px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.status-avatar-wrapper{width:46px;height:46px;border-radius:50%;overflow:hidden;z-index:2;display:flex;align-items:center;justify-content:center}.status-avatar{width:100%;height:100%;object-fit:cover}.status-border-back,.status-border-front{position:absolute;width:42px;height:42px;object-fit:contain}.status-border-back{z-index:1}.status-border-front{z-index:3}.status-text-stack{display:flex;flex-direction:column}.status-bar-title{font-size:.95rem;font-weight:800;color:hsl(var(--foreground));letter-spacing:-.02em}.status-bar-sub{font-size:.6rem;font-weight:700;color:hsl(var(--primary));text-transform:uppercase;letter-spacing:.05em;opacity:.8}.icon-btn{background:hsl(var(--card) / .5);border:1px solid hsl(var(--border) / .5);color:hsl(var(--foreground));width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 6px -1px #0000001a;transition:all .3s ease}.icon-btn:hover{background:hsl(var(--muted));transform:scale(1.05)}.icon-btn.disconnect{color:#f44;border-color:#f443}.icon-btn.disconnect.confirm-active{background:#f44;color:#fff;border-color:#f44;box-shadow:0 0 12px #f44;animation:disconnectPulse .8s infinite alternate ease-in-out}@keyframes disconnectPulse{0%{transform:scale(1)}to{transform:scale(1.15)}}.shortcut-bar{display:flex;justify-content:center;gap:1.5rem;padding:1rem;width:100%;position:absolute;top:75px;left:0;right:0;z-index:10}.shortcut-btn{display:flex;flex-direction:column;align-items:center;gap:.6rem;background:transparent;border:none;cursor:pointer;width:70px}.shortcut-icon-wrapper{width:48px;height:48px;border-radius:50%;background:hsl(var(--card) / .8);border:1px solid hsl(var(--border) / .8);box-shadow:0 6px 16px #00000026,inset 0 1px 1px hsl(var(--background) / .8);display:flex;align-items:center;justify-content:center;font-size:1.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .2s ease;color:hsl(var(--foreground))}.shortcut-btn:active .shortcut-icon-wrapper{transform:scale(.9);background:hsl(var(--primary) / .3);border-color:hsl(var(--primary))}.shortcut-icon{width:28px;height:28px;object-fit:contain;opacity:1;filter:drop-shadow(0 2px 6px rgba(0,0,0,.6))}.shortcut-icon-text{font-size:1.4rem;filter:brightness(0) invert(1);opacity:.95}.shortcut-label{color:hsl(var(--foreground));font-size:.7rem;font-weight:700;text-align:center;line-height:1.2}.controls-area{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3.5rem;padding:1rem}.dpad{display:grid;grid-template-columns:repeat(3,72px);grid-template-rows:repeat(2,72px);grid-template-areas:". up ." "left down right";gap:12px;background:hsl(var(--card) / .15);padding:1rem;border-radius:2rem;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid hsl(var(--border) / .2);box-shadow:inset 0 2px 10px #0000001a,0 10px 30px #0000001a}.dpad-btn{background:hsl(var(--card) / .8);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid hsl(var(--border) / .8);border-radius:1.25rem;color:hsl(var(--foreground));display:flex;align-items:center;justify-content:center;box-shadow:0 6px 16px #00000026,inset 0 1px 1px hsl(var(--background) / .8);cursor:pointer;transition:all .1s ease}.dpad-btn svg{width:28px;height:28px}.dpad-btn:active{transform:translateY(2px) scale(.95);box-shadow:0 0 20px var(--player-color);background:var(--player-color);border-color:var(--player-color);color:#fff}.btn-up{grid-area:up}.btn-down{grid-area:down}.btn-left{grid-area:left}.btn-right{grid-area:right}.gameplay-screen{flex:1;width:100%;height:100%;display:flex;flex-direction:column;background:transparent;overflow:hidden}.gameplay-content{flex:1;display:flex;flex-direction:column;width:100%}.coach-layout-view{flex:1;display:flex;align-items:center;justify-content:center;width:100%;padding:1rem}.coach-img-standard{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 0 12px var(--player-color))}.gameplay-footer{padding:2rem 1.5rem 4rem;display:flex;flex-direction:column;align-items:center;gap:2rem;background:#0000001a;border-top:1px solid rgba(255,255,255,.05)}.status-text-standard{font-size:1.5rem;font-weight:900;text-transform:uppercase;color:hsl(var(--foreground));text-shadow:0 4px 15px hsl(var(--primary) / .3);letter-spacing:.1em;text-align:center;margin-bottom:2.5rem;animation:textPulse 2s infinite ease-in-out}@keyframes textPulse{0%,to{opacity:.6;transform:scale(.98)}50%{opacity:1;transform:scale(1.05)}}.pause-slider-container{width:100%;display:flex;justify-content:center;margin-bottom:2rem}.pause-slider-track{position:relative;width:320px;height:68px;background:hsl(var(--card) / .4);-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);border:1px solid hsl(var(--border) / .5);border-radius:40px;display:flex;align-items:center;padding:6px;overflow:hidden;box-shadow:inset 0 2px 10px #0000001a,0 10px 30px #0000001a}.pause-slider-fill{position:absolute;left:0;top:0;bottom:0;background:linear-gradient(90deg,transparent,var(--player-color));opacity:.3;pointer-events:none}.pause-slider-handle{width:56px;height:56px;background:hsl(var(--foreground));border-radius:50%;display:flex;align-items:center;justify-content:center;color:hsl(var(--background));box-shadow:0 4px 20px #00000080,inset 0 2px 4px #ffffff80;cursor:grab;z-index:10;position:relative}.slider-label{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);text-align:center;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:hsl(var(--foreground) / .5);pointer-events:none;z-index:1;padding-left:64px;padding-right:16px;box-sizing:border-box}.log-panel{position:fixed;bottom:0;left:0;right:0;background:#000000d9;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:1px solid hsl(var(--primary) / .5);z-index:9999;border-top-left-radius:1.5rem;border-top-right-radius:1.5rem;box-shadow:0 -10px 25px -5px #00000080;color:#fff}.log-header{padding:1rem 1.5rem;display:flex;justify-content:space-between;align-items:center;cursor:pointer}.copy-btn{background:hsl(var(--primary));color:hsl(var(--primary-foreground));border:none;padding:.4rem .8rem;border-radius:.5rem;font-size:.65rem;font-weight:800;text-transform:uppercase;cursor:pointer;box-shadow:0 4px 6px #0000001a;transition:transform .1s}.copy-btn:active{transform:scale(.95)}.log-content{padding:1rem;max-height:150px;overflow-y:auto;font-family:monospace;font-size:.7rem}.loading-ring{position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;border:3px solid transparent;border-top-color:hsl(var(--primary));border-right-color:hsl(var(--primary) / .5);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-container{width:100%;margin-top:.5rem;display:flex;flex-direction:column;gap:1.25rem}.error-toast{color:hsl(var(--destructive));font-size:.9rem;font-weight:800;text-align:center;padding-bottom:1rem;border-bottom:1px solid hsl(var(--border) / .5);letter-spacing:-.01em}.connection-tutorial{width:100%;display:flex;flex-direction:column;gap:1rem}.tutorial-step{background:hsl(var(--background) / .5);border:1px solid hsl(var(--border) / .5);border-radius:.75rem;padding:1rem;display:flex;align-items:flex-start;gap:1rem}.step-number{background:hsl(var(--primary));color:hsl(var(--primary-foreground));width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;flex-shrink:0}.tutorial-btn{margin-top:.75rem;background:hsl(var(--primary));color:hsl(var(--primary-foreground));border:none;padding:.6rem 1rem;border-radius:var(--radius);font-size:.75rem;font-weight:600;text-transform:uppercase;cursor:pointer;transition:all .2s}.tutorial-btn:active{transform:scale(.95)}.step-content h3{font-size:.85rem;font-weight:800;color:hsl(var(--foreground));margin-bottom:.25rem;text-transform:uppercase}.ssl-bypass-card{width:100%;background:hsl(var(--card) / .5);border:1px solid hsl(var(--border) / .8);border-radius:1rem;padding:1.25rem;display:flex;flex-direction:column;gap:.75rem;text-align:left}.ssl-bypass-card h3{font-size:.95rem;font-weight:800;color:hsl(var(--foreground));margin:0}.ssl-bypass-card p{font-size:.75rem;line-height:1.4;color:hsl(var(--muted-foreground));margin:0}.ssl-bypass-card .ssl-btn{width:100%;padding:.85rem;border-radius:.75rem;font-size:.85rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;background:linear-gradient(135deg,hsl(var(--primary)),hsl(var(--primary) / .8));color:hsl(var(--primary-foreground));border:1px solid hsl(var(--border) / .2);cursor:pointer;box-shadow:0 4px 12px hsl(var(--primary) / .3);text-align:center;transition:transform .2s}.ssl-bypass-card .ssl-btn:active{transform:scale(.98)}.ssl-bypass-card .ssl-note{font-size:.65rem;color:hsl(var(--muted-foreground));opacity:.75;text-align:center}.loading-screen{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2rem;background:radial-gradient(circle at 50% 50%,hsla(217,91%,60%,.1),transparent)}.spinner-container{position:relative;width:80px;height:80px;display:flex;align-items:center;justify-content:center}.spinner-ring{position:absolute;top:0;right:0;bottom:0;left:0;border:4px solid hsl(var(--foreground) / .05);border-top-color:hsl(var(--primary));border-radius:50%;animation:dreyn-spin 1.2s cubic-bezier(.4,0,.2,1) infinite}.spinner-logo{width:40px;height:40px;color:hsl(var(--foreground));animation:dreyn-pulse 2s ease-in-out infinite}.loading-text{font-size:.8rem;font-weight:800;color:hsl(var(--foreground) / .5);letter-spacing:.3em;text-transform:uppercase;animation:dreyn-fadeInOut 2s infinite}.step-content p{font-size:.75rem;color:hsl(var(--muted-foreground));line-height:1.4}@keyframes dreyn-spin{to{transform:rotate(360deg)}}@keyframes dreyn-pulse{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.15);opacity:1}}@keyframes dreyn-fadeInOut{0%,to{opacity:.3}50%{opacity:.7}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fadeIn{animation:fadeIn .4s ease-out forwards}.animate-slideUp{animation:slideUp .5s ease-out forwards}.ok-btn{width:96px;height:96px;background:hsl(var(--primary));border-radius:50%;border:none;color:hsl(var(--primary-foreground));font-size:1.5rem;font-weight:700;letter-spacing:.05em;box-shadow:0 4px 12px #0003;display:flex;align-items:center;justify-content:center;cursor:pointer;margin-top:-1rem;transition:all .2s ease}.ok-btn:active{transform:scale(.95);opacity:.9}.permission-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;background:#0009;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);display:flex;align-items:center;justify-content:center;padding:1.5rem}.permission-card{background:#ffffff1a;-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border:1px solid rgba(255,255,255,.1);border-radius:2rem;padding:2.5rem 1.5rem;width:100%;max-width:300px;display:flex;flex-direction:column;align-items:center;text-align:center;box-shadow:0 25px 50px #00000080}.permission-icon-container{width:64px;height:64px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:20px;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;color:hsl(var(--primary))}.permission-icon-container svg{width:32px;height:32px}.permission-card h2{font-size:1.25rem;font-weight:900;margin-bottom:.75rem;color:#fff;text-transform:uppercase;letter-spacing:.05em}.permission-card p{font-size:.9rem;line-height:1.5;color:#ffffffb3;margin-bottom:2rem}.orientation-warning{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#060b18f5;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);align-items:center;justify-content:center;padding:2rem;animation:fadeIn .3s ease}.orientation-warning-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:2rem;padding:3rem 2rem;max-width:480px;text-align:center;box-shadow:0 30px 60px #0006;display:flex;flex-direction:column;align-items:center;gap:1.5rem}.orientation-phone-icon{width:80px;height:80px;border-radius:50%;background:hsla(var(--primary),.1);border:1px solid hsla(var(--primary),.2);display:flex;align-items:center;justify-content:center;color:hsl(var(--primary));animation:rotatePhone 2.5s infinite ease-in-out}.orientation-phone-icon svg{width:40px;height:40px}.orientation-warning-card h2{font-size:1.5rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em;color:#fff;margin-top:.5rem}.orientation-warning-card p{font-size:.9rem;line-height:1.5;color:#fff9;font-weight:500}@keyframes rotatePhone{0%,to{transform:rotate(0)}35%{transform:rotate(90deg)}65%{transform:rotate(90deg)}}@media screen and (orientation: landscape) and (max-width: 1024px){.orientation-warning{display:flex}}.discovery-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9998;background:#060b18d9;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);display:flex;align-items:center;justify-content:center;padding:1.5rem}.discovery-card{background:#ffffff0a;-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border:1px solid rgba(255,255,255,.08);border-radius:2rem;padding:2.5rem 1.75rem;width:100%;max-width:320px;display:flex;flex-direction:column;align-items:center;text-align:center;box-shadow:0 30px 60px #0006;gap:1.25rem}.discovery-icon-container{width:72px;height:72px;background:hsla(var(--success),.1);border:1px solid hsla(var(--success),.2);border-radius:50%;display:flex;align-items:center;justify-content:center;color:hsl(var(--success));animation:pulseIcon 2s infinite ease-in-out}.discovery-icon-container svg{width:36px;height:36px}.discovery-card h2{font-size:1.35rem;font-weight:900;color:#fff;text-transform:uppercase;letter-spacing:.05em;margin-top:.25rem}.discovery-card p{font-size:.9rem;line-height:1.5;color:#ffffffb3;font-weight:500}.discovery-actions{width:100%;display:flex;flex-direction:column;margin-top:.5rem}@keyframes pulseIcon{0%,to{transform:scale(1);box-shadow:0 0 hsla(var(--success),.4)}50%{transform:scale(1.05);box-shadow:0 0 15px 5px hsla(var(--success),.2)}}.pwa-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;background:#060b18f7;display:flex;align-items:center;justify-content:center;padding:1.5rem;overflow:hidden}.pwa-bg-glow{position:absolute;width:350px;height:350px;border-radius:50%;background:radial-gradient(circle,hsla(var(--primary),.25) 0%,transparent 70%);top:50%;left:50%;transform:translate(-50%,-60%);filter:blur(60px);animation:pwaGlowPulse 4s infinite ease-in-out;pointer-events:none}@keyframes pwaGlowPulse{0%,to{opacity:.5;transform:translate(-50%,-60%) scale(1)}50%{opacity:.8;transform:translate(-50%,-60%) scale(1.15)}}.pwa-card{position:relative;z-index:1;background:#ffffff0a;-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border:1px solid rgba(255,255,255,.08);border-radius:2rem;padding:2.5rem 1.75rem 2rem;width:100%;max-width:340px;display:flex;flex-direction:column;align-items:center;text-align:center;box-shadow:0 30px 60px #00000080,inset 0 1px #ffffff0d}.pwa-icon-wrapper{width:96px;height:96px;border-radius:24px;overflow:hidden;margin-bottom:1.5rem;box-shadow:0 8px 30px #0006,0 0 0 3px #ffffff0f;animation:pwaIconFloat 3s infinite ease-in-out}.pwa-app-icon{width:100%;height:100%;object-fit:cover}@keyframes pwaIconFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.pwa-card h2{font-size:1.4rem;font-weight:900;color:#fff;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.75rem}.pwa-card p{font-size:.9rem;line-height:1.6;color:#fff9;font-weight:500;margin-bottom:1.5rem}.pwa-instructions{width:100%;display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.pwa-step{display:flex;align-items:center;gap:.85rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:1rem;padding:.85rem 1rem;text-align:left}.pwa-step-icon{flex-shrink:0;width:40px;height:40px;border-radius:12px;background:hsla(var(--primary),.12);border:1px solid hsla(var(--primary),.2);display:flex;align-items:center;justify-content:center;color:hsl(var(--primary))}.pwa-step-icon svg{width:20px;height:20px}.pwa-step span{font-size:.82rem;color:#ffffffbf;font-weight:500;line-height:1.4}.pwa-install-btn{width:100%;margin-top:.25rem}.cancel-btn{width:100%;height:3.2rem;border-radius:1rem;background:#ffffff0d;font-size:.85rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:#fff9;border:1px solid rgba(255,255,255,.1);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.cancel-btn:active{transform:scale(.98);background:#ffffff14}
