@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--color-blue-dark:#132642;--color-blue:#182f52;--color-blue-light:#1f3a63;--color-gold:#c6a15b;--color-gold-light:#e8d39a;--color-background:#f7f8fa;--color-card-background:#fff;--color-text-primary:#1f2933;--color-text-secondary:#6b7280;--color-divider:#e5e7eb;--color-notice-bg:#fdf6e8;--color-notice-text:#9a6b00;--gradient-header-support:linear-gradient(180deg, var(--color-blue-light) 0%, var(--color-blue) 100%);--gradient-header-control:linear-gradient(180deg, var(--color-blue-dark) 0%, var(--color-blue) 100%);--gradient-gold-button:linear-gradient(90deg, var(--color-gold) 0%, var(--color-gold-light) 100%);--font-sans:"Inter", -apple-system, "SF Pro Text", "SF Pro Icons", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-heading:-apple-system, "SF Pro Display", "Inter", "SF Pro Text", "SF Pro Icons", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-size-header:22px;--font-weight-header:500;--font-size-card-title:17px;--font-weight-card-title:500;--font-size-body:15px;--font-weight-body:400;--font-size-caption:12px;--font-weight-caption:400;--spacing-micro:4px;--spacing-small:8px;--spacing-standard:16px;--spacing-large:24px;--spacing-section:32px;--card-radius:18px;--card-shadow:0 6px 20px 0 #0000000f;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-normal:.25s cubic-bezier(.4, 0, .2, 1)}*,:before,:after{box-sizing:border-box}html,body{background-color:var(--color-background);width:100%;height:100%;font-family:var(--font-sans);color:var(--color-text-primary);font-size:var(--font-size-body);font-weight:var(--font-weight-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;line-height:1.5}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-divider);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}#root{background-color:var(--color-background);flex-direction:column;max-width:480px;min-height:100svh;margin:0 auto;display:flex;position:relative;overflow-x:hidden;box-shadow:0 0 32px #00000008}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-text-primary);margin:0}h1{font-size:var(--font-size-header);font-weight:var(--font-weight-header);line-height:1.3}h2{font-size:var(--font-size-card-title);font-weight:var(--font-weight-card-title);line-height:1.4}p{margin:0}.app-card{background-color:var(--color-card-background);border-radius:var(--card-radius);padding:var(--spacing-standard);box-shadow:var(--card-shadow);gap:var(--spacing-standard);transition:transform var(--transition-fast), box-shadow var(--transition-fast);flex-direction:column;display:flex}.app-card:active.clickable{transform:scale(.98);box-shadow:0 4px 12px #0000000a}.gradient-header{width:100%;padding:0 var(--spacing-standard) var(--spacing-large) var(--spacing-standard);box-sizing:border-box;flex-direction:column;justify-content:flex-end;display:flex;position:relative}.gradient-header--support{background:var(--gradient-header-support)}.gradient-header--control{background:var(--gradient-header-control)}.gradient-header--rounded{border-bottom-right-radius:24px;border-bottom-left-radius:24px}.gradient-header__content{gap:var(--spacing-micro);color:#fff;flex-direction:column;align-items:flex-start;width:100%;display:flex}.gradient-header__content h1{color:#fff;font-size:var(--font-size-header);font-weight:var(--font-weight-header)}.gradient-header__content p{color:#ffffffb3;font-size:var(--font-size-caption)}.app-button{justify-content:center;align-items:center;gap:var(--spacing-small);font-family:var(--font-sans);cursor:pointer;transition:transform var(--transition-fast), opacity var(--transition-fast), background-color var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);-webkit-user-select:none;user-select:none;border:1px solid #0000;border-radius:14px;outline:none;min-height:48px;padding:14px 24px;font-size:15px;font-weight:600;display:inline-flex;position:relative}.btn--full-width{width:100%;display:flex}.btn-primary{background:var(--gradient-gold-button);color:#fff;border:none;box-shadow:0 4px 12px #c6a15b33}.btn-primary:hover:not(:disabled){opacity:.95;box-shadow:0 6px 16px #c6a15b4d}.btn-secondary{color:var(--color-blue);background-color:#182f520d;border:none}.btn-secondary:hover:not(:disabled){background-color:#182f521a}.btn-outline{color:var(--color-blue);border:1px solid var(--color-blue);background-color:#0000}.btn-outline:hover:not(:disabled){background-color:#182f520a}.btn-text{color:var(--color-text-secondary);padding:var(--spacing-small) var(--spacing-standard);background-color:#0000;min-height:auto}.btn-text:hover:not(:disabled){color:var(--color-blue)}.app-button:active:not(:disabled){opacity:.9;transform:scale(.98)}.app-button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.app-button:focus-visible{outline:2px solid var(--color-blue);outline-offset:2px}.btn-primary:focus-visible{outline:2px solid var(--color-gold)}.btn__spinner{color:currentColor;width:20px;height:20px;display:inline-block}.btn__spinner svg{width:100%;height:100%;animation:1s linear infinite btn-rotate}.btn__spinner-track{opacity:.2}.btn__spinner-head{opacity:.8;stroke-linecap:round}@keyframes btn-rotate{to{transform:rotate(360deg)}}.input-field-wrapper{gap:var(--spacing-small);text-align:left;flex-direction:column;width:100%;display:flex}.input-field-label{font-family:var(--font-sans);color:var(--color-text-secondary);font-size:13px;font-weight:500}.input-field{width:100%;font-family:var(--font-sans);color:var(--color-text-primary);background-color:var(--color-card-background);border:1px solid var(--color-divider);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);border-radius:12px;outline:none;padding:14px;font-size:15px}.input-field::placeholder{color:var(--color-text-secondary);opacity:.82}.input-field:hover{border-color:var(--color-text-secondary)}.input-field:focus{border-color:var(--color-blue);box-shadow:0 0 0 3px #182f521a}:is(.input-field:user-invalid,.input-field-wrapper--error .input-field){border-color:#d32f2f}:is(.input-field:user-invalid:focus,.input-field-wrapper--error .input-field:focus){box-shadow:0 0 0 3px #d32f2f1a}.input-field-error-message{font-family:var(--font-sans);color:#d32f2f;margin-top:calc(-1 * var(--spacing-micro));font-size:12px}.secure-field-container{align-items:center;width:100%;display:flex;position:relative}.secure-input-field{padding-right:44px}.secure-field-toggle{color:var(--color-text-secondary);cursor:pointer;opacity:.8;transition:opacity var(--transition-fast), color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex;position:absolute;right:12px}.secure-field-toggle:hover{opacity:1;color:var(--color-blue)}.secure-field-toggle svg{width:20px;height:20px}.progress-container{gap:var(--spacing-small);flex-direction:column;width:100%;display:flex}.progress-info{font-family:var(--font-sans);justify-content:space-between;align-items:center;font-size:13px;font-weight:500;display:flex}.progress-label{color:var(--color-text-secondary)}.progress-value{color:var(--color-text-primary);font-variant-numeric:tabular-nums}.progress-track{background-color:var(--color-divider);border-radius:4px;width:100%;height:8px;position:relative;overflow:hidden}.progress-fill{background:var(--gradient-gold-button);height:100%;transition:width var(--transition-normal);border-radius:4px}.auth-page,.onboarding-page,.home-page,.result-screen{box-sizing:border-box;flex-direction:column;width:100%;min-height:100svh;display:flex}.auth-form-container{padding:var(--spacing-large) var(--spacing-standard);flex-direction:column;flex-grow:1;gap:16px;display:flex}.auth-error-message{color:#d32f2f;text-align:left;background-color:#d32f2f0d;border:1px solid #d32f2f33;border-radius:12px;padding:12px;font-size:13px;line-height:1.4}.auth-divider{align-items:center;gap:var(--spacing-standard);margin:var(--spacing-small) 0;display:flex}.auth-divider-line{background-color:var(--color-divider);flex-grow:1;height:1px}.auth-divider-text{color:var(--color-text-secondary);font-size:12px}.auth-footer-links{margin-top:var(--spacing-small);justify-content:space-between;align-items:center;display:flex}.auth-link{font-family:var(--font-sans);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;outline:none;padding:0;font-size:13px;text-decoration:none}.auth-link--primary{color:var(--color-blue);font-weight:500}.auth-link--primary:hover{color:var(--color-blue-light)}.auth-link--secondary{color:var(--color-text-secondary)}.auth-link--secondary:hover{color:var(--color-text-primary)}.onboarding-header-progress{width:100%;margin-bottom:var(--spacing-standard);gap:4px;display:flex}.onboarding-progress-bar-segment{height:3px;transition:background-color var(--transition-normal);background-color:#ffffff4d;border-radius:2px;flex-grow:1}.onboarding-progress-bar-segment.active{background-color:var(--color-gold)}.onboarding-question-tracker{color:#ffffffad;margin-bottom:var(--spacing-micro);font-size:12px}.onboarding-question-text{color:#fff;text-align:left;font-size:18px;font-weight:500;line-height:1.4}.onboarding-step-body{padding:var(--spacing-large) var(--spacing-standard);flex-direction:column;flex-grow:1;display:flex}.onboarding-footer{padding:12px var(--spacing-standard) calc(8px + env(safe-area-inset-bottom,var(--tg-safe-area-inset-bottom,16px))) var(--spacing-standard);background-color:var(--color-background);flex-direction:column;gap:10px;display:flex}.onboarding-skip-button{font-family:var(--font-sans);color:var(--color-text-secondary);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:6px;font-size:14px;display:inline-flex}.onboarding-skip-button:hover{color:var(--color-text-primary)}.slider-question-container{align-items:center;gap:var(--spacing-large);margin-top:var(--spacing-large);flex-direction:column;display:flex}.slider-value-display{color:var(--color-blue);font-variant-numeric:tabular-nums;font-size:48px;font-weight:700}.onboarding-slider{appearance:none;background:var(--color-divider);border-radius:4px;outline:none;width:100%;height:8px}.onboarding-slider::-webkit-slider-thumb{appearance:none;background:var(--color-gold);cursor:pointer;width:24px;height:24px;transition:transform var(--transition-fast);border-radius:50%;box-shadow:0 2px 8px #00000026}.onboarding-slider::-webkit-slider-thumb:active{transform:scale(1.15)}.slider-labels{width:100%;color:var(--color-text-secondary);justify-content:space-between;font-size:13px;display:flex}.rating-question-container{flex-direction:column;width:100%;display:flex}.rating-options-list{flex-direction:column;gap:12px;display:flex}.rating-option-card{background-color:var(--color-card-background);border:1px solid var(--color-divider);width:100%;padding:18px var(--spacing-standard);font-family:var(--font-sans);color:var(--color-text-primary);text-align:left;cursor:pointer;transition:transform var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);border-radius:16px;font-size:15px;font-weight:500;box-shadow:0 2px 8px #00000005}.rating-option-card:active{transform:scale(.98)}.rating-option-card.selected{border-color:var(--color-gold);background-color:#c6a15b05;box-shadow:0 4px 12px #c6a15b1f}.text-question-container{gap:var(--spacing-small);flex-direction:column;width:100%;display:flex}.onboarding-textarea{width:100%;height:160px;padding:var(--spacing-standard);border:1px solid var(--color-divider);font-family:var(--font-sans);color:var(--color-text-primary);background-color:var(--color-card-background);resize:none;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);border-radius:16px;outline:none;font-size:15px}.onboarding-textarea:focus{border-color:var(--color-blue);box-shadow:0 0 0 3px #182f521a}.textarea-counter{color:var(--color-text-secondary);text-align:right;font-size:12px}.result-screen{background-color:var(--color-background)}.result-header-content{text-align:center;flex-direction:column;align-items:center;gap:8px;width:100%;display:flex}.result-icon-container{background-color:#ffffff24;border-radius:50%;justify-content:center;align-items:center;width:78px;height:78px;margin-bottom:4px;display:flex}.result-level-icon{color:#fff;width:28px;height:28px}.result-header-subtitle{color:#ffffffad;font-size:12px}.result-header-title{color:#fff;font-size:28px;font-weight:500}.result-header-summary{color:#ffffffd1;max-width:280px;font-size:14px;line-height:1.4}.result-body{padding:var(--spacing-standard);flex-grow:1}.result-card{background-color:var(--color-card-background);border-radius:22px;padding:20px;box-shadow:0 6px 20px #0000000a}.result-card-badge{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:600}.result-xp-row{justify-content:space-between;align-items:baseline;margin-top:4px;display:flex}.result-xp-text{color:var(--color-text-primary);font-size:24px;font-weight:500}.result-xp-subtitle{color:var(--color-text-secondary);font-size:12px}.result-xp-range{color:var(--color-text-secondary);margin-top:-4px;font-size:12px}.result-meaning-text{color:var(--color-text-primary);font-size:14px;line-height:1.5}.result-support-text{color:var(--color-text-secondary);font-size:13px;line-height:1.5}.result-footer{padding:12px var(--spacing-standard) calc(8px + env(safe-area-inset-bottom,var(--tg-safe-area-inset-bottom,16px))) var(--spacing-standard);background-color:var(--color-background)}.home-header-content{flex-direction:column;align-items:flex-start;width:100%;display:flex}.home-user-avatar{width:48px;height:48px;margin-bottom:var(--spacing-standard);background-color:#ffffff24;border-radius:50%;justify-content:center;align-items:center;display:flex}.home-level-icon{color:#fff;width:20px;height:20px}.home-body{padding:var(--spacing-standard);flex-grow:1}.welcome-card{border-radius:22px;padding:20px}.welcome-level-info{flex-direction:column;gap:4px;display:flex}.welcome-level-label{color:var(--color-text-secondary);font-size:13px}.welcome-level-value{color:var(--color-text-primary);font-size:20px;font-weight:600}.welcome-xp-section{margin:var(--spacing-standard) 0;flex-direction:column;display:flex}.loading-screen,.onboarding-loading-screen{height:100svh;color:var(--color-text-secondary);background-color:var(--color-background);justify-content:center;align-items:center;font-size:16px;display:flex}.error-screen,.onboarding-error-screen{height:100svh;padding:var(--spacing-large);text-align:center;justify-content:center;align-items:center;gap:var(--spacing-standard);background-color:var(--color-background);flex-direction:column;display:flex}.error-text,.onboarding-error-text{color:#d32f2f;font-size:15px;line-height:1.5}.verification-card{background-color:var(--color-card-background);border-radius:var(--card-radius);box-shadow:var(--card-shadow);text-align:center;align-items:center;gap:var(--spacing-standard);flex-direction:column;width:100%;padding:32px 24px;display:flex}.verification-status{align-items:center;gap:var(--spacing-standard);flex-direction:column;width:100%;display:flex}.verification-icon-wrapper{width:64px;height:64px;margin-bottom:var(--spacing-micro);border-radius:50%;justify-content:center;align-items:center;display:flex}.success-icon{color:#2e7d32;background-color:#2e7d3214}.error-icon{color:#d32f2f;background-color:#d32f2f14}.verification-icon{width:32px;height:32px}.verification-heading{color:var(--color-text-primary);margin-bottom:-4px;font-size:19px;font-weight:500}.verification-text{color:var(--color-text-secondary);font-size:14px;line-height:1.5}.auth-success-banner{color:#2e7d32;text-align:left;background-color:#2e7d320a;border:1px solid #2e7d3226;border-radius:12px;width:100%;padding:12px;font-size:13px;line-height:1.4}.auth-error-banner{color:#d32f2f;text-align:left;background-color:#d32f2f0a;border:1px solid #d32f2f26;border-radius:12px;width:100%;padding:12px;font-size:13px;line-height:1.4}.onboarding-spinner{border:3px solid var(--color-divider);border-top-color:var(--color-gold);border-radius:50%;width:32px;height:32px;animation:.8s ease-in-out infinite btn-rotate;display:inline-block}.onboarding-loading-screen{gap:var(--spacing-standard);flex-direction:column}a{color:var(--color-blue);transition:color var(--transition-fast);font-weight:500;text-decoration:none}a:hover{color:var(--color-blue-light)}.tab-bar{background:var(--color-card-background);border-top:1px solid var(--color-divider);padding-bottom:env(safe-area-inset-bottom,0);z-index:50;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 12px #0000000d}.tab-bar__item{color:var(--color-text-secondary);flex-direction:column;flex:1;align-items:center;gap:3px;padding:10px 0 8px;font-size:12px;text-decoration:none;display:flex}.tab-bar__item--active{color:var(--color-gold)}.tab-bar__icon{width:20px;height:20px}.tab-bar__label{line-height:1}.main-layout__content{min-height:100vh;padding-bottom:76px}.placeholder-screen{text-align:center;min-height:70vh;color:var(--color-text-secondary);flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex}.placeholder-screen__icon{width:40px;height:40px;color:var(--color-blue-light);margin-bottom:12px}.placeholder-screen__title{color:var(--color-text-primary);margin:0 0 4px;font-size:22px;font-weight:500}.placeholder-screen__subtitle{margin:0;font-size:14px}.sub-card{padding:16px}.sub-card__row{justify-content:space-between;align-items:center;display:flex}.sub-card__title{color:var(--color-text-primary);font-size:15px;font-weight:500}.sub-card__meta{color:var(--color-text-secondary);margin-top:6px;font-size:13px}.sub-card__notice{color:var(--color-notice-text);background:var(--color-notice-bg);border-radius:10px;margin-top:8px;padding:8px 10px;font-size:13px}.sub-badge{border-radius:8px;padding:3px 10px;font-size:12px;font-weight:500}.sub-badge--free{background:var(--color-divider);color:var(--color-text-secondary)}.sub-badge--premium{background:var(--gradient-gold-button);color:#fff}.history-card{padding:0;overflow:hidden}.history-row{color:var(--color-text-primary);justify-content:space-between;padding:11px 16px;font-size:13px;display:flex}.history-row+.history-row{border-top:1px solid var(--color-divider)}.history-row__date{color:var(--color-text-secondary)}.history-row__status--succeeded{color:#3a8a4f}.history-row__status--failed{color:#d44}.history-row__status--pending{color:var(--color-text-secondary)}.section-label{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);margin:0 4px 8px;font-size:11px}.profile-body{flex-direction:column;gap:16px;padding:16px;display:flex}.profile-header{text-align:center;color:#fff;width:100%}.profile-avatar{background:#ffffff29;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 8px;display:flex}.profile-avatar__icon{color:#fff;width:24px;height:24px}.profile-header h1{margin:0 0 2px;font-size:16px;font-weight:500}.profile-header p{color:#ffffffb3;margin:0;font-size:12px}.profile-settings{padding:0;overflow:hidden}.settings-row{width:100%;color:var(--color-text-primary);cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;padding:14px 16px;font-size:15px;display:flex}.settings-row__chevron{color:var(--color-text-secondary)}.profile-danger-btn{background:var(--color-card-background);color:#d44;cursor:pointer;border:none;border-radius:14px;width:100%;padding:14px;font-size:15px;font-weight:500;box-shadow:0 6px 20px #0000000f}.profile-danger-btn:disabled{opacity:.5}.consent{color:var(--color-text-secondary);align-items:flex-start;gap:10px;font-size:12px;line-height:1.45;display:flex}.consent__box{width:18px;height:18px;accent-color:var(--color-blue-light);flex:none;margin:1px 0 0}.consent__link{color:var(--color-blue-light);text-decoration:underline}.paywall-header{color:#fff}.paywall-header h1{margin:0 0 4px;font-size:22px;font-weight:600}.paywall-header p{color:#ffffffb8;margin:0;font-size:13px}.paywall-body{flex-direction:column;gap:12px;padding:16px;display:flex}.paywall-benefit{color:var(--color-text-primary);align-items:flex-start;gap:10px;font-size:14px;display:flex}.paywall-benefit__check{width:18px;height:18px;color:var(--color-gold);flex:none}.paywall-price{text-align:center;padding:16px}.paywall-price__amount{color:var(--color-text-primary);font-size:26px;font-weight:600}.paywall-price__per{color:var(--color-text-secondary);font-size:13px}.paywall-error{color:#d44;margin:0;font-size:13px}.paywall-fine{color:var(--color-text-secondary);text-align:center;margin:4px 0 0;font-size:11px;line-height:1.45}.success-page{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.success-card{background:var(--color-card-background);text-align:center;border-radius:18px;width:100%;max-width:320px;padding:28px 22px;box-shadow:0 8px 24px #00000014}.success-card h2{color:var(--color-text-primary);margin:0 0 6px;font-size:18px;font-weight:500}.success-card p{color:var(--color-text-secondary);margin:0 0 16px;font-size:14px}.success-emoji{margin-bottom:10px;font-size:34px}.success-spinner{border:3px solid var(--color-divider);border-top-color:var(--color-gold);border-radius:50%;width:34px;height:34px;margin:0 auto 12px;animation:1s linear infinite success-spin}@keyframes success-spin{to{transform:rotate(360deg)}}.legal-page{max-width:640px;margin:0 auto;padding:20px 16px}.legal-back{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;padding:0 0 16px;font-size:14px}.legal-title{color:var(--color-text-primary);margin:0 0 12px;font-size:22px;font-weight:500}.legal-body{color:var(--color-text-secondary);font-size:14px;line-height:1.6}.settings-row+.settings-row{border-top:1px solid var(--color-divider)}
