:root{--bg: #FBF7F2;--bg-elev: #FFFFFF;--bg-soft: #F4EFE8;--surface: rgba(255, 255, 255, .7);--surface-strong: rgba(255, 255, 255, .95);--border: rgba(40, 30, 20, .08);--border-strong: rgba(40, 30, 20, .14);--text: #2C2A33;--text-muted: #7C7689;--text-soft: #ABA5B5;--mint: #A8D8B9;--mint-deep: #6BB287;--peach: #FFC9A8;--peach-deep: #F39669;--lavender: #C8B8E8;--lavender-deep: #9A82D1;--rose: #F8C6CE;--sky: #B8D8E8;--butter: #F6E2A5;--accent: var(--mint-deep);--accent-soft: var(--mint);--danger: #E88A8A;--grad-fab: linear-gradient(135deg, #A8D8B9 0%, #9A82D1 100%);--grad-fab-active: linear-gradient(135deg, #F39669 0%, #E88A8A 50%, #9A82D1 100%);--grad-card-1: linear-gradient(135deg, #FFE3D0 0%, #FFC9A8 100%);--grad-card-2: linear-gradient(135deg, #D6EFE0 0%, #A8D8B9 100%);--grad-card-3: linear-gradient(135deg, #E5DAF5 0%, #C8B8E8 100%);--grad-card-4: linear-gradient(135deg, #D6E8F0 0%, #B8D8E8 100%);--grad-hero: radial-gradient(ellipse at top left, rgba(168, 216, 185, .35), transparent 50%), radial-gradient(ellipse at bottom right, rgba(200, 184, 232, .35), transparent 50%);--shadow-sm: 0 2px 8px rgba(40, 30, 20, .04);--shadow-md: 0 8px 24px rgba(40, 30, 20, .08);--shadow-lg: 0 16px 48px rgba(40, 30, 20, .12);--shadow-fab: 0 12px 28px rgba(106, 178, 135, .35), 0 4px 12px rgba(154, 130, 209, .25);--radius-sm: 12px;--radius-md: 18px;--radius-lg: 24px;--radius-xl: 32px;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1)}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes logoPop{0%{opacity:0;transform:scale(.5) rotate(-20deg)}60%{transform:scale(1.1) rotate(5deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes blobFloat{0%,to{transform:translate(0) scale(1)}33%{transform:translate(20px,-30px) scale(1.1)}66%{transform:translate(-15px,20px) scale(.95)}}@keyframes bioPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes spin{to{transform:rotate(360deg)}}html,body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.framework7-root,.views,.view,.page{background:var(--bg)!important}.page,.page-content{background:transparent!important;--f7-page-bg-color: transparent}.gate-page{background:var(--bg)!important;--f7-safe-area-top: 0px;--f7-safe-area-bottom: 0px}.gate-page-content{position:relative;height:100%;width:100%;padding:0!important;margin:0!important;overflow:hidden;background:var(--bg)}.gate-page .navbar,.gate-page .toolbar,.gate-page .statusbar{display:none!important}.safe-areas .page.gate-page,.page.gate-page{padding-top:0!important;padding-bottom:0!important}.gate-page:before,.gate-page:after{display:none!important}button{font-family:inherit;border:none;background:none;padding:0;margin:0;cursor:pointer;color:inherit;position:relative;overflow:hidden;isolation:isolate}input,textarea,select{font-family:inherit;font-size:inherit;color:inherit;outline:none}a{color:inherit;text-decoration:none}*{box-sizing:border-box}.gate{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:var(--bg);background-image:var(--grad-hero);display:flex;flex-direction:column;padding:max(env(safe-area-inset-top),24px) 24px max(env(safe-area-inset-bottom),24px);overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;min-height:100%}@media (min-width: 500px){.gate{border-radius:0}}.gate-blobs{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:0}.blob{position:absolute;border-radius:50%;filter:blur(40px);opacity:.55;animation:blobFloat 12s ease-in-out infinite}.blob.b1{width:260px;height:260px;background:var(--mint);top:-80px;left:-60px}.blob.b2{width:200px;height:200px;background:var(--lavender);top:30%;right:-50px;animation-delay:-3s}.blob.b3{width:240px;height:240px;background:var(--peach);bottom:-80px;left:20%;animation-delay:-6s}.blob.b4{width:180px;height:180px;background:var(--sky);top:50%;left:30%;animation-delay:-9s}.gate-body{position:relative;z-index:1;display:flex;flex-direction:column;height:100%}#gate-welcome{padding-left:0;padding-right:0;margin-left:-24px;margin-right:-24px}.welcome-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;border-radius:inherit}.welcome-slide{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;transition:opacity 1.4s ease-in-out}.welcome-slide.active{opacity:1}.welcome-bg svg{width:100%;height:100%;display:block}.welcome-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,transparent 0%,transparent 60%,var(--bg) 100%);opacity:.55;pointer-events:none}.welcome-head{position:relative;z-index:2;text-align:center;padding:24px 24px 0;display:flex;flex-direction:column;align-items:center;gap:16px;margin:auto 0}.welcome-head .welcome-logo{width:88px;height:88px;border-radius:26px;background:var(--grad-fab);display:grid;place-items:center;font-size:42px;box-shadow:var(--shadow-fab);animation:logoPop .9s var(--ease-spring) both}.welcome-head .welcome-title{font-size:38px;font-weight:900;letter-spacing:-.03em;line-height:1;color:var(--text);animation:fadeUp .7s .25s var(--ease-out) both}.welcome-head .welcome-title .accent{background:linear-gradient(135deg,#6bb287,#9a82d1);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.welcome-head .welcome-sub{font-size:14px;color:var(--text-muted);max-width:280px;line-height:1.4;animation:fadeUp .7s .4s var(--ease-out) both}#gate-welcome .welcome-cta{position:relative;z-index:2;padding:0 24px 8px;margin-top:0;animation:fadeUp .7s .6s var(--ease-out) both;display:flex;flex-direction:column;gap:10px;width:100%}#gate-welcome{display:flex;flex-direction:column;justify-content:space-between}.cta-primary{padding:16px;border-radius:18px;background:var(--text);color:var(--bg);font-size:15px;font-weight:700;letter-spacing:-.01em;box-shadow:var(--shadow-md);transition:transform .2s;width:100%}.cta-primary:active{transform:scale(.97)}.cta-primary:disabled{opacity:.5}.cta-secondary{padding:16px;border-radius:18px;background:var(--surface-strong);border:1px solid var(--border);font-size:15px;font-weight:700;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:var(--text);transition:transform .2s;width:100%}.cta-secondary:active{transform:scale(.97)}.auth-top{display:flex;align-items:center;gap:12px;margin-bottom:24px}.gate-back{width:42px;height:42px;border-radius:50%;background:var(--surface-strong);border:1px solid var(--border);display:grid;place-items:center;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);transition:transform .2s}.gate-back:active{transform:scale(.9)}.gate-back svg{width:18px;height:18px;stroke:var(--text);stroke-width:2.5;fill:none;stroke-linecap:round;stroke-linejoin:round}.auth-title{font-size:30px;font-weight:800;letter-spacing:-.03em;margin-top:8px;color:var(--text);animation:fadeUp .5s var(--ease-out) both}.auth-sub{font-size:14px;color:var(--text-muted);margin-top:4px;margin-bottom:24px;line-height:1.5;animation:fadeUp .5s .1s var(--ease-out) both}.auth-section-label{font-size:11px;color:var(--text-soft);text-transform:uppercase;letter-spacing:.08em;font-weight:700;margin:14px 4px 8px}.social-btn{width:100%;padding:14px;border-radius:16px;background:var(--surface-strong);border:1px solid var(--border);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);display:flex;align-items:center;justify-content:center;gap:10px;font-size:14px;font-weight:700;margin-bottom:8px;transition:transform .2s,background .2s;animation:fadeUp .5s var(--ease-out) both;color:var(--text)}.social-btn:active{transform:scale(.97)}.social-btn.google{background:#fff;color:#1f1f1f;border-color:#00000014}.social-btn .g-icon{width:20px;height:20px;border-radius:50%;background:conic-gradient(from -45deg,#ea4335,#ea4335 90deg,#fbbc05 90deg,#fbbc05 180deg,#34a853 180deg,#34a853 270deg,#4285f4 270deg,#4285f4 360deg);position:relative}.social-btn .g-icon:after{content:"G";position:absolute;top:3px;right:3px;bottom:3px;left:3px;background:#fff;border-radius:50%;display:grid;place-items:center;font-family:Arial Black,Impact,sans-serif;font-size:11px;font-weight:900;background:linear-gradient(135deg,#4285f4,#34a853 50%,#fbbc05,#ea4335);-webkit-background-clip:text;background-clip:text;color:transparent}.social-btn.bio{background:linear-gradient(135deg,var(--lavender),var(--mint));color:#2c2a33;border:none}.social-btn.bio .b-icon{font-size:18px}.divider{display:flex;align-items:center;gap:10px;margin:14px 0;font-size:11px;color:var(--text-soft);text-transform:uppercase;letter-spacing:.08em;font-weight:700}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--border-strong)}.auth-field{position:relative;margin-bottom:10px;animation:fadeUp .5s var(--ease-out) both}.auth-field .a-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);font-size:16px;color:var(--text-muted);pointer-events:none;z-index:1}.auth-field input{width:100%;padding:16px 16px 16px 44px;background:var(--surface-strong);border:1px solid var(--border);border-radius:16px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);font-size:14px;font-weight:500;transition:border .2s;color:var(--text)}.auth-field input:focus{border-color:var(--accent)}.auth-field input::placeholder{color:var(--text-soft);font-weight:500}.auth-field.has-eye input{padding-right:48px}.auth-field .toggle-eye{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:32px;height:32px;border-radius:10px;display:grid;place-items:center;color:var(--text-muted)}.auth-field .toggle-eye svg{width:18px;height:18px}.auth-field-error{font-size:12px;color:var(--danger);margin:4px 4px 8px;font-weight:500}.auth-forgot{font-size:12px;color:var(--accent);font-weight:600;text-align:right;cursor:pointer;background:none;border:none;padding:0;display:block;margin:4px 4px 16px auto}.auth-submit{width:100%;padding:16px;border-radius:18px;background:var(--text);color:var(--bg);font-size:15px;font-weight:700;box-shadow:var(--shadow-md);transition:transform .2s;display:flex;align-items:center;justify-content:center;gap:8px;animation:fadeUp .5s .2s var(--ease-out) both}.auth-submit:active{transform:scale(.97)}.auth-submit:disabled{opacity:.5;cursor:not-allowed}.auth-foot{margin-top:auto;text-align:center;font-size:13px;color:var(--text-muted);padding-top:14px}.auth-foot a{color:var(--accent);font-weight:700;cursor:pointer}.auth-foot-links{display:flex;justify-content:center;gap:24px;margin-top:18px;font-size:13px}.auth-foot-links a{color:var(--accent);font-weight:600;cursor:pointer}.auth-error{background:#e88a8a26;border:1px solid rgba(232,138,138,.3);color:var(--danger);padding:10px 14px;border-radius:12px;font-size:12px;font-weight:600;margin-bottom:10px;animation:fadeUp .3s var(--ease-out) both}.welcome-terms{text-align:center;font-size:11px;color:var(--text-soft);margin-top:10px;line-height:1.5}.welcome-terms b{color:var(--text-muted);font-weight:700}.status-icon{width:96px;height:96px;border-radius:30px;display:grid;place-items:center;margin:16px auto 24px;font-size:48px;color:#fff;box-shadow:var(--shadow-md);animation:logoPop .9s var(--ease-spring) both}.status-icon.success{background:linear-gradient(135deg,var(--mint),var(--mint-deep))}.status-icon.error{background:linear-gradient(135deg,var(--rose),var(--danger))}.status-icon.info{background:var(--grad-fab)}.status-title{text-align:center;font-size:26px;font-weight:800;letter-spacing:-.03em;color:var(--text);margin-bottom:10px;animation:fadeUp .5s .1s var(--ease-out) both}.status-text{text-align:center;font-size:14px;color:var(--text-muted);line-height:1.5;max-width:320px;margin:0 auto 28px;animation:fadeUp .5s .2s var(--ease-out) both}.password-strength{margin:-4px 4px 14px;display:flex;gap:4px}.password-strength-bar{flex:1;height:4px;border-radius:2px;background:var(--border-strong);transition:background .3s var(--ease-out)}.password-strength-bar.active.s-1{background:var(--danger)}.password-strength-bar.active.s-2{background:var(--peach-deep)}.password-strength-bar.active.s-3{background:var(--butter)}.password-strength-bar.active.s-4{background:var(--mint-deep)}.password-requirements{margin:0 4px 14px;padding:12px 14px;background:var(--surface);border:1px solid var(--border);border-radius:12px;font-size:12px;color:var(--text-muted);line-height:1.7}.password-requirements ul{margin:6px 0 0;padding-left:18px}.password-requirements li.ok{color:var(--mint-deep);font-weight:600}.gate-scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-right:4px;margin-right:-4px}
