*{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary:#fff;--accent-color:#4f46e5;--accent-secondary:#06b6d4;--text-main:#0c0d10}html,body,#root{background-color:var(--bg-primary);width:100%;height:100dvh;color:var(--text-main);touch-action:manipulation;-webkit-text-size-adjust:100%;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow:hidden}input,select,textarea{font-size:16px!important}.app-container{justify-content:center;align-items:center;width:100%;height:100dvh;display:flex;position:relative}.fullscreen-iframe{z-index:1;border:none;width:100%;height:100%;display:block}.loader-container{background:var(--bg-primary);z-index:100;background:radial-gradient(circle,#fff 0%,#f3f4f6 100%);flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .8s cubic-bezier(.4,0,.2,1),visibility .8s;display:flex;position:absolute;top:0;left:0}.loader-container.hidden{opacity:0;visibility:hidden}.loader-content{text-align:center;flex-direction:column;align-items:center;gap:24px;display:flex}.spinner-outer{justify-content:center;align-items:center;width:80px;height:80px;display:flex;position:relative}.spinner{border:2px solid #0000;border-top-color:var(--accent-color);border-bottom-color:var(--accent-secondary);border-radius:50%;width:100%;height:100%;animation:1.5s linear infinite spin}.spinner-inner{border:2px solid #0000;border-left-color:var(--accent-secondary);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin-reverse;position:absolute}.progress-bar-container{background:#0000000d;border-radius:4px;width:200px;height:2px;margin-top:10px;overflow:hidden}.progress-bar-fill{background:linear-gradient(90deg, var(--accent-color), var(--accent-secondary));width:0%;height:100%;box-shadow:0 0 10px var(--accent-color);transition:width .3s}.loading-text{letter-spacing:4px;text-transform:uppercase;color:#000000b3;font-size:.85rem;font-weight:500;animation:2s ease-in-out infinite pulse}@keyframes spin{to{transform:rotate(360deg)}}@keyframes spin-reverse{to{transform:rotate(-360deg)}}@keyframes pulse{0%,to{opacity:.5;transform:scale(.98)}50%{opacity:1;transform:scale(1)}}@media (width<=768px){.spinner-outer{width:60px;height:60px}.loading-text{letter-spacing:2px;font-size:.75rem}.progress-bar-container{width:150px}}
