:root{--auth-ink: #222846;--auth-muted: #5f667d;--auth-paper: #fbfaf6;--auth-shell: rgba(255, 255, 255, .84);--auth-panel: #fffdf8;--auth-line: rgba(34, 40, 70, .12);--auth-sky: #cfeef6;--auth-mint: #bfe8c4;--auth-coral: #f0705a;--auth-gold: #f2cf74;--auth-blue: #3f6fd5;--auth-blue-dark: #26345d}*{margin:0;padding:0;box-sizing:border-box}body{background:radial-gradient(circle at 14% 20%,rgba(240,112,90,.18),transparent 28%),radial-gradient(circle at 88% 16%,rgba(63,111,213,.18),transparent 26%),linear-gradient(135deg,#fff8e4,#edf9f0 48%,#e5f1ff);font-family:Poppins,Segoe UI,system-ui,-apple-system,sans-serif;color:var(--auth-ink);min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:32px 24px;padding-top:calc(32px + env(safe-area-inset-top));padding-right:calc(24px + env(safe-area-inset-right));padding-bottom:calc(32px + env(safe-area-inset-bottom));padding-left:calc(24px + env(safe-area-inset-left));overflow-x:hidden;overflow-y:auto}.auth-shell{display:flex;width:100%;max-width:1140px;min-height:auto;border-radius:26px;overflow:hidden;box-shadow:0 28px 70px #22284629;background:var(--auth-shell);border:1px solid rgba(255,255,255,.62);backdrop-filter:blur(18px)}.brand-panel{flex:1;min-width:0;max-width:550px;width:100%;position:relative;overflow:hidden;background:radial-gradient(circle at 14% 24%,rgba(240,112,90,.18),transparent 26%),linear-gradient(145deg,#ffffffd1,#fff8e4eb);color:var(--auth-ink);padding:32px 40px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:16px;box-sizing:border-box}.brand-panel:before,.brand-panel:after{content:"";position:absolute;border-radius:50%;pointer-events:none}.brand-panel:before{top:-90px;right:-54px;width:220px;height:220px;background:#3f6fd51f}.brand-panel:after{left:-56px;bottom:-96px;width:220px;height:220px;background:#bfe8c442}.auth-panel{flex:1;background:var(--auth-panel);padding:32px 44px;display:flex;flex-direction:column;justify-content:center;color:var(--auth-ink)}h1{font-size:2.2em;font-weight:700;line-height:1.1}.brand-header{display:flex;flex-direction:column;gap:8px;align-items:center}.brand-identity{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.brand-logo-wrapper{width:125px;height:125px;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:24px;box-shadow:0 18px 36px #2228461f;border:1px solid rgba(34,40,70,.08);overflow:hidden;flex-shrink:0}.brand-logo{display:block;width:125px!important;height:125px!important;min-width:125px!important;min-height:125px!important;max-width:125px!important;max-height:125px!important;object-fit:cover;object-position:center;border-radius:24px;filter:none;-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.brand-title{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;line-height:1}.brand-title strong{font-family:Poppins,Segoe UI,sans-serif;font-size:2.4em;font-weight:700;letter-spacing:-.01em;line-height:1.1;text-transform:none;color:var(--auth-ink);text-align:center;max-width:12ch}.brand-tagline{font-family:Poppins,Segoe UI,sans-serif;font-size:1.15em;line-height:1.3;color:var(--auth-ink);max-width:100%;font-weight:600;margin:4px 0 0;text-align:center;padding:8px 16px;background:#ffffffbd;border-radius:25px;border:1px solid rgba(34,40,70,.08);box-shadow:0 10px 24px #22284614}.brand-divider{width:50px;height:2px;background:linear-gradient(90deg,transparent,rgba(34,40,70,.28),transparent);border-radius:2px;margin:4px 0}.brand-benefits{list-style:none;display:flex;flex-direction:column;gap:8px;width:100%;max-width:340px;padding:0;align-items:center}.brand-benefits li{font-family:Poppins,Segoe UI,sans-serif;display:flex;gap:8px;align-items:center;font-size:1em;color:#222846d6;font-weight:400}.brand-benefits li:nth-child(1){padding-left:0;padding-right:0}.brand-benefits li:nth-child(2){padding-left:0;padding-right:0}.brand-benefits li:nth-child(3){padding-left:0;padding-right:0}.brand-benefits li:before{content:"";width:22px;height:22px;min-width:22px;background:#bfe8c442;border:2px solid #2f8f68;border-radius:50%;display:flex;align-items:center;justify-content:center;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232f8f68' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");background-size:12px;background-repeat:no-repeat;background-position:center}.brand-footnote{font-size:.95em;line-height:1.6;color:#222846d1;max-width:420px;padding:14px 18px;background:#ffffffb3;border-radius:14px;border:1px solid rgba(34,40,70,.08)}.auth-panel h2{font-size:1.9em;margin-bottom:8px;color:var(--auth-ink)}.back-to-landing-link{display:inline-flex;align-self:flex-start;align-items:center;gap:8px;width:fit-content;margin:0 0 22px;padding:8px 12px;border:1px solid rgba(34,40,70,.1);border-radius:999px;background:#ffffffb8;color:#222846c7;font-size:.9em;font-weight:600;line-height:1.2;text-decoration:none;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}.back-to-landing-link svg{width:16px;height:16px;flex:0 0 auto}.back-to-landing-link:hover{border-color:#2228462e;background:#fff;color:var(--auth-ink);transform:translate(-2px)}.back-to-landing-link:focus-visible{outline:2px solid var(--auth-blue);outline-offset:3px}.auth-toggle{display:flex;background:#3f6fd514;border-radius:32px;padding:6px;margin-bottom:28px;gap:6px}.auth-toggle button{flex:1;padding:12px 18px;border:none;border-radius:26px;background:transparent;color:var(--auth-muted);font-weight:600;cursor:pointer;transition:all .2s ease;font-size:.95em}.auth-toggle button:hover:not(.active){background:#ffffffb8;color:var(--auth-ink)}.auth-toggle button:focus-visible{outline:2px solid var(--auth-blue);outline-offset:2px}.auth-toggle button.active{background:linear-gradient(135deg,#222846,#3f6fd5);color:#fff;box-shadow:0 12px 24px #22284624}.auth-form{display:none;text-align:left}.auth-form.active{display:block}.form-group{margin-bottom:18px}.form-group label{display:block;margin-bottom:6px;font-weight:600;font-size:.95em;color:var(--auth-ink)}.form-group input,.form-group textarea,.form-group select{width:100%;padding:14px 16px;border:1px solid rgba(34,40,70,.12);border-radius:14px;background:#ffffffe0;color:var(--auth-ink);font-size:1em;transition:box-shadow .3s ease,border-color .3s ease}.input-with-icon{position:relative;display:flex;align-items:center}.input-with-icon .input-icon{position:absolute;left:14px;color:#22284673;font-size:20px;pointer-events:none;z-index:1}.input-with-icon .input-icon.icon-svg{width:20px;height:20px}.input-with-icon input{padding-left:44px!important}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--auth-blue);box-shadow:0 0 0 4px #3f6fd524;background:#fff}.form-group input.field-error,.form-group textarea.field-error,.form-group select.field-error{border-color:#e53e3e;box-shadow:0 0 0 4px #e53e3e26;animation:shake .4s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-4px)}40%,80%{transform:translate(4px)}}.form-group input::placeholder,.form-group textarea::placeholder{color:#2228467a;font-weight:400}.form-group textarea{min-height:100px;resize:vertical}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{padding-right:52px!important}input[type=password]::-ms-reveal,input[type=password]::-ms-clear{display:none!important}.password-toggle{position:absolute;right:14px;background:none;border:none;cursor:pointer;padding:6px;display:flex;align-items:center;justify-content:center;color:#2228468c;font-size:16px;transition:color .3s ease}.password-toggle:hover{color:var(--auth-ink)}.eye-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center}.eye-icon svg{width:18px;height:18px;stroke:currentColor;stroke-width:2;fill:none}.language-chip{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;background:#ffffffdb;border:1px solid rgba(34,40,70,.1);border-radius:12px;transition:all .25s ease;animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.language-chip:hover{background:#fff;border-color:#3f6fd54d;box-shadow:0 10px 22px #22284614;transform:translateY(-1px)}.language-chip-info{display:flex;align-items:center;gap:12px;flex:1}.language-chip-flag{font-size:24px;line-height:1}.language-chip-name{font-weight:600;color:var(--auth-ink);font-size:.95em}.language-chip-level{padding:8px 14px;border:1px solid rgba(34,40,70,.12);border-radius:8px;background:#cfeef680;font-size:.9em;font-weight:500;color:var(--auth-ink);cursor:pointer;transition:all .2s ease;min-width:85px;text-align:center}.language-chip-level:hover{border-color:var(--auth-blue);background:#cfeef6b3}.language-chip-level:focus{outline:none;border-color:var(--auth-blue);box-shadow:0 0 0 3px #3f6fd51f}.language-chip-remove{background:none;border:none;color:#e53e3e;font-size:22px;cursor:pointer;padding:4px 8px;line-height:1;border-radius:8px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.language-chip-remove:hover{background:#e53e3e1a;transform:scale(1.1)}.message{margin:18px 0;padding:14px 16px 14px 44px;border-radius:14px;text-align:left;font-size:.95em;position:relative}.message:before{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-size:1.2em}.message.success{background:#45d6851f;border:1px solid rgba(69,214,133,.4);color:#136a3f}.message.success:before{content:"✓"}.message.error{background:#f443361f;border:1px solid rgba(244,67,54,.4);color:#982018}.message.error:before{content:"✕"}.message.info{background:#cfeef680;border:1px solid rgba(63,111,213,.28);color:#244a92}.message.info:before{content:"ℹ"}.message.warning{background:#ff98001f;border:1px solid rgba(255,152,0,.4);color:#8a5a00}.message.warning:before{content:"⚠"}.submit-btn{width:100%;padding:16px;border:none;border-radius:16px;background:linear-gradient(135deg,#222846,#3f6fd5);color:#fff;font-size:1.05em;font-weight:600;cursor:pointer;transition:transform .25s ease,box-shadow .25s ease;margin-top:16px}.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 18px 32px #22284629,0 8px 16px #22284614}.submit-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 8px 16px #2228461f}.submit-btn:focus-visible{outline:3px solid rgba(63,111,213,.35);outline-offset:3px}.submit-btn:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.panel-note{margin-top:24px;font-size:.95em;color:#2228469e}.panel-note a{color:var(--auth-blue);font-weight:600;text-decoration:none}.panel-note a:hover{text-decoration:underline}.policy-links{margin-top:22px;display:flex;gap:18px;flex-wrap:wrap;font-size:.9em}.policy-links a{color:#22284694;text-decoration:none}.policy-links a:hover{color:var(--auth-blue)}.legal-footer{margin-top:28px;text-align:center;color:#fff9;font-size:.9em;display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.legal-footer a{color:#fffc;text-decoration:none}.legal-footer a:hover{text-decoration:underline}.form-section{background:linear-gradient(145deg,#ffffffc7,#fff8e46b);border:1px solid rgba(34,40,70,.08);border-radius:16px;padding:20px;margin-bottom:20px;transition:all .3s ease}.form-section:hover{border-color:#3f6fd53d;box-shadow:0 12px 24px #2228460f}.form-section-title{display:flex;align-items:center;gap:10px;font-size:1em;font-weight:600;color:var(--auth-ink);margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid rgba(34,40,70,.1)}.form-section-title svg{color:var(--auth-coral)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-hint{font-size:.8em;color:#2228468f;margin-top:6px;line-height:1.4}.age-info{font-size:.85em;color:#222846a6;margin-top:8px;padding:8px 12px;background:#cfeef66b;border-radius:8px;display:none}.age-info.visible{display:block}.password-strength-container{margin-top:12px;display:none;padding:12px 14px;background:#cfeef64d;border:1px solid rgba(34,40,70,.08);border-radius:10px}.password-checklist{display:grid;grid-template-columns:1fr 1fr;gap:6px 16px;margin:0;padding:0;list-style:none}.password-checklist li{display:flex;align-items:center;gap:8px;font-size:.85em;color:#262952b3;transition:color .2s ease}.password-checklist li.valid{color:#38a169}.password-checklist li.invalid{color:#e53e3e}.password-checklist .check-icon{width:16px;height:16px;display:flex;align-items:center;justify-content:center;font-size:12px;flex-shrink:0}.password-checklist li.valid .check-icon:before{content:"✓";color:#38a169;font-weight:700}.password-checklist li.invalid .check-icon:before{content:"✕";color:#e53e3e}.password-checklist li:not(.valid):not(.invalid) .check-icon:before{content:"○";color:#26295266}.strength-summary{display:flex;align-items:center;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid rgba(34,40,70,.08)}.strength-bars{display:flex;gap:3px;flex:1}.strength-bar{flex:1;height:4px;background:#e0e0e0;border-radius:2px;transition:background .3s ease}.strength-text{font-size:.8em;margin:0;font-weight:600;min-width:70px;text-align:right}.birth-date-selectors{display:grid;grid-template-columns:1fr 1.5fr 1.2fr;gap:10px;align-items:center}.birth-date-selectors select{width:100%;padding:12px 28px 12px 10px;border:1px solid rgba(34,40,70,.12);border-radius:12px;background:#ffffffe0;color:var(--auth-ink);font-size:.95em;cursor:pointer;transition:all .2s ease;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%233f6fd5' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.birth-date-selectors select:hover{border-color:var(--auth-blue)}.birth-date-selectors select:focus{outline:none;border-color:var(--auth-blue);box-shadow:0 0 0 3px #3f6fd524}.birth-date-selectors select:invalid,.birth-date-selectors select option[value=""]{color:#2429548c}.birth-date-selectors select option{color:var(--auth-ink)}.language-quick-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.language-quick-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid rgba(34,40,70,.12);border-radius:20px;background:#ffffffdb;cursor:pointer;font-size:.9em;color:var(--auth-ink);transition:all .2s ease}.language-quick-btn:hover{border-color:var(--auth-blue);background:#cfeef67a}.language-quick-btn.selected{border-color:#2f8f68;background:#bfe8c457;color:#2f8f68}.language-quick-btn .flag{font-size:1.2em}.language-quick-btn .checkmark{display:none;font-size:.8em}.language-quick-btn.selected .checkmark{display:inline}.language-selector-wrapper{margin-bottom:14px}.language-selector{width:100%;padding:10px 16px;border:1px dashed rgba(34,40,70,.2);border-radius:12px;font-size:.9em;background:#ffffffb3;color:#222846ad;cursor:pointer;transition:all .2s ease}.language-selector:hover{border-color:var(--auth-blue);border-style:solid}.language-selector:focus{outline:none;border-color:var(--auth-blue);border-style:solid;box-shadow:0 0 0 3px #3f6fd524}.selected-languages-container{display:flex;flex-direction:column;gap:10px;min-height:60px}.terms-group{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#ffffffad;border:1px solid rgba(34,40,70,.08);border-radius:12px;margin-top:8px}.terms-checkbox{width:20px;height:20px;margin-top:2px;cursor:pointer;accent-color:var(--auth-blue)}.terms-label{font-size:.9em;color:#222846bd;line-height:1.5;margin:0;font-weight:500}.terms-label a{color:var(--auth-blue);text-decoration:none;font-weight:600}.terms-label a:hover{text-decoration:underline}.skip-link{position:absolute;top:-100px;left:50%;transform:translate(-50%);background:#222846;color:#fff;padding:12px 24px;border-radius:0 0 8px 8px;font-weight:600;text-decoration:none;z-index:10000;transition:top .2s ease}.skip-link:focus{top:0}.auth-legal-footer{position:fixed;bottom:0;left:0;right:0;background:#222846db;color:#ffffffdb;padding:8px 16px;font-size:12px;text-align:center;backdrop-filter:blur(10px);z-index:1000;border-top:1px solid rgba(255,255,255,.12)}.auth-legal-footer a{color:#cfeef6;text-decoration:underline}.parental-consent-section{display:none;background:#f2cf743d;border:1px solid rgba(208,139,47,.42);border-radius:12px;padding:16px;margin-bottom:18px}.parental-consent-section.visible{display:block}.parental-consent-warning{font-weight:600;color:#8a5414;margin-bottom:12px;font-size:.95em}.parental-consent-hint{font-size:.8em;color:#2228469e;margin-top:10px}.forgot-password-content{text-align:center;padding:20px 0}.forgot-password-emoji{font-size:3em;margin-bottom:16px}.forgot-password-title{color:var(--auth-ink);margin-bottom:16px;font-size:1.3em}.forgot-password-text{color:#222846bd;margin-bottom:24px;font-size:.95em;line-height:1.6}.forgot-password-text a{color:var(--auth-blue);font-weight:600}.form-link-centered{text-align:center;margin-top:16px}.form-link{color:var(--auth-blue);font-size:.9em;text-decoration:none}.form-link:hover{text-decoration:underline}.input-with-icon input.password-field{padding-left:44px!important}.input-icon-svg{width:20px;height:20px;color:var(--auth-coral)}.submit-btn-icon{width:20px;height:20px;display:inline-block;vertical-align:middle;margin-right:8px}.form-section-icon{width:18px;height:18px}.form-hint-margin,.parental-form-group{margin-bottom:12px}.parental-form-group-last{margin-bottom:0}@media(max-width:1080px){.auth-shell{flex-direction:column;min-height:auto;max-width:100%}.brand-panel{padding:40px 32px;align-items:center;text-align:center;max-width:100%;width:100%}.brand-header{align-items:center;text-align:center}.brand-identity{flex-direction:column;gap:16px;align-items:center}.brand-title{align-items:center;text-align:center;margin-left:0}.brand-tagline{text-align:center}.auth-panel{padding:44px 40px 36px}}@media(max-width:768px){body{padding:12px 8px}.auth-shell{border-radius:16px;min-height:auto;max-width:100%;width:100%}.brand-panel{align-items:center;text-align:center;gap:14px;padding:28px 24px;max-width:100%;width:100%}.brand-header{align-items:center;text-align:center;gap:10px}.brand-identity{flex-direction:column;gap:10px;align-items:center;justify-content:center}.brand-logo-wrapper{width:100px;height:100px}.brand-logo{width:100px!important;height:100px!important;min-width:100px!important;min-height:100px!important;max-width:100px!important;max-height:100px!important}.brand-title{align-items:center;justify-content:center;text-align:center}.brand-title strong{font-size:2em}.brand-tagline{max-width:100%;white-space:normal;font-size:1em;padding:8px 14px}.brand-divider{margin:2px 0}.brand-benefits{align-items:center;gap:6px}.brand-benefits li{font-size:.9em;justify-content:center}.brand-footnote{text-align:center}.auth-panel{padding:28px 24px}.back-to-landing-link{margin-bottom:18px}.auth-panel h2{font-size:1.6em;margin-bottom:6px}.auth-toggle{gap:4px;margin-bottom:20px}.form-section{padding:16px;margin-bottom:16px}.form-section-title{font-size:.95em}.form-row{grid-template-columns:1fr;gap:12px}.auth-toggle button{font-size:.9em;padding:10px 12px}.form-group{margin-bottom:14px}.form-group label{margin-bottom:4px;font-size:.9em}.form-group input,.form-group textarea,.form-group select{padding:12px 14px;font-size:.95em}.submit-btn{padding:14px;font-size:1em;margin-top:12px}.policy-links{justify-content:center;margin-top:16px}.password-checklist{grid-template-columns:1fr;gap:4px}}@media(max-width:480px){body{padding:8px}.auth-shell{border-radius:16px;min-height:auto;width:100%;max-width:100%}.brand-panel{padding:20px 16px;gap:10px;width:100%;max-width:100%;min-width:0;align-items:center;justify-content:center}.brand-header,.brand-identity{width:100%;align-items:center;justify-content:center;gap:8px}.brand-logo-wrapper{width:80px;height:80px;margin:0 auto;border-radius:20px}.brand-logo{width:80px!important;height:80px!important;min-width:80px!important;min-height:80px!important;max-width:80px!important;max-height:80px!important;border-radius:20px}.brand-title{width:100%;align-items:center;justify-content:center}.brand-title strong{font-size:1.6em;letter-spacing:-.01em}.brand-tagline{font-size:.9em;padding:6px 12px}.brand-divider{margin:2px 0;width:40px}.brand-benefits{gap:6px;width:100%;align-items:center}.brand-benefits li{font-size:.85em;justify-content:center}.brand-benefits li:before{width:18px;height:18px;min-width:18px;background-size:10px}.auth-panel{padding:20px 16px}.back-to-landing-link{justify-content:center;width:100%;margin-bottom:14px;padding:9px 12px;font-size:.84em}.auth-panel h2{font-size:1.4em;margin-bottom:4px}.auth-toggle{margin-bottom:16px;padding:4px}.auth-toggle button{font-size:.85em;padding:10px}.form-group{margin-bottom:12px}.form-group label{margin-bottom:4px;font-size:.85em}.form-group input,.form-group textarea,.form-group select{padding:11px 12px;font-size:.9em;border-radius:12px}.submit-btn{padding:12px;font-size:.95em;margin-top:10px;border-radius:12px}.panel-note{margin-top:16px;font-size:.85em}.policy-links{margin-top:14px;font-size:.8em}}
