@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--tab-bar-height:76px;--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)}.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:var(--tab-bar-height)}.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)}.home-body{padding:var(--spacing-standard);flex-direction:column;flex-grow:1;gap:16px;padding-bottom:92px;display:flex}.home-level-subtitle{color:#ffffffad;font-size:13px}.home-header-title{color:#fff;margin:0;font-size:22px;font-weight:500}.home-segment-strip{gap:4px;width:100%;margin-top:8px;display:flex}.home-segment{border-radius:3px;flex:1;height:6px}.home-segment--active{background:var(--color-gold)}.home-segment--inactive{background:#ffffff3d}.home-step-label,.home-tip-label{color:var(--color-text-secondary);font-size:13px}.home-step-text{color:var(--color-text-primary);font-size:16px;font-weight:500}.home-step-done{color:var(--color-blue);justify-content:center;align-items:center;gap:6px;padding:12px 0;font-size:14px;font-weight:600;display:flex}.home-tip-text{color:var(--color-text-primary);font-size:15px;line-height:1.5}.home-stat-row{gap:12px;display:flex}.home-stat-card{background:var(--color-card-background);box-shadow:var(--card-shadow);border-radius:14px;flex-direction:column;flex:1;align-items:center;gap:4px;padding:14px;display:flex}.home-stat-value{color:var(--color-blue);font-size:24px;font-weight:700}.home-stat-label{color:var(--color-text-secondary);font-size:12px}.finance-page{box-sizing:border-box;flex-direction:column;width:100%;min-height:100svh;display:flex}.finance-header-label{color:#ffffffad;font-size:13px}.finance-header-total{color:#fff;font-size:32px;font-weight:700;line-height:1.2}.finance-header-chips{gap:var(--spacing-small);flex-wrap:wrap;margin-top:6px;display:flex}.finance-chip{background:#ffffff24;border-radius:10px;flex-direction:column;gap:2px;padding:8px 12px;display:flex}.finance-chip__label{color:#ffffffb8;font-size:11px}.finance-chip__value{color:#fff;white-space:nowrap;font-size:13px;font-weight:500}.finance-body{padding:var(--spacing-standard);flex-grow:1;padding-bottom:168px}.finance-card{background:var(--color-card-background);border-radius:var(--card-radius);padding:var(--spacing-standard);flex-direction:column;gap:14px;display:flex;box-shadow:0 4px 10px #0000000f}.finance-card__title{color:var(--color-text-secondary);font-size:13px}.finance-section__title{color:var(--color-text-primary);padding-bottom:6px;font-size:13px;font-weight:500}.finance-section+.finance-section{margin-top:14px}.finance-empty__heading{color:var(--color-text-primary);font-size:16px;font-weight:500}.finance-empty__desc{color:var(--color-text-secondary);font-size:14px;line-height:1.5}.finance-loading{color:var(--color-text-secondary);flex-direction:column;align-items:center;gap:10px;padding:20px 0;font-size:14px;display:flex}.finance-error__text{color:#d32f2f;font-size:14px}.finance-refresh-error{align-items:center;gap:10px;padding:8px 0 4px;display:flex}.finance-floating-add{z-index:40;background:linear-gradient(#f7f8fa00 0%,#f7f8faf0 40%,#f7f8fa 100%);width:calc(100% - 32px);max-width:448px;padding-top:12px;position:fixed;bottom:76px;left:50%;transform:translate(-50%)}.debt-row{cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:flex-start;gap:12px;width:100%;padding:14px 0;display:flex}.debt-row+.debt-row{border-top:1px solid var(--color-divider)}.debt-row__left{flex-direction:column;flex:1;gap:4px;display:flex}.debt-row__creditor{color:var(--color-text-primary);font-size:15px;font-weight:500}.debt-row__purpose{color:var(--color-text-secondary);font-size:13px}.debt-row__meta{gap:var(--spacing-small);flex-wrap:wrap;display:flex}.debt-row__due,.debt-row__emotion{color:var(--color-text-secondary);font-size:12px}.debt-row__paid-hint{color:var(--color-text-secondary);font-size:12px;font-style:italic}.debt-row__right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}.debt-row__remaining{color:var(--color-text-primary);text-align:right;font-size:14px;font-weight:500}.debt-form-overlay{z-index:100;background:#0006;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.debt-form{background:var(--color-background);width:100%;max-width:480px;max-height:90svh;padding-bottom:env(safe-area-inset-bottom,16px);border-radius:20px 20px 0 0;overflow-y:auto}.debt-form__header{padding:var(--spacing-standard);border-bottom:1px solid var(--color-divider);justify-content:space-between;align-items:center;display:flex}.debt-form__title{color:var(--color-text-primary);margin:0;font-size:17px;font-weight:500}.debt-form__close{color:var(--color-text-secondary);min-height:auto;padding:4px 8px;font-size:14px}.debt-form__body{padding:var(--spacing-standard);flex-direction:column;gap:14px;display:flex}.debt-form__error{color:#d32f2f;margin:0;font-size:13px}.debt-form__delete-btn{color:#d32f2f;cursor:pointer;background:#fff;border:1px solid #d32f2f47;border-radius:14px;width:100%;min-height:48px;padding:14px;font-size:15px;font-weight:500}.debt-form__delete-btn:disabled{opacity:.5;cursor:not-allowed}.debt-form__delete-confirm{flex-direction:column;gap:10px;display:flex}.debt-form__delete-text{color:var(--color-text-secondary);margin:0;font-size:13px}.chat-page{height:calc(100svh - var(--tab-bar-height) - env(safe-area-inset-bottom,0px));box-sizing:border-box;background-color:var(--color-background);flex-direction:column;width:100%;display:flex}.chat-messages{padding:var(--spacing-standard);flex-direction:column;flex:1;gap:12px;display:flex;overflow-y:auto}.chat-welcome-card{background:var(--color-card-background);border-radius:var(--card-radius);padding:var(--spacing-standard);box-shadow:var(--card-shadow);flex-direction:column;gap:8px;display:flex}.chat-welcome-card__title{font-size:var(--font-size-card-title);font-weight:var(--font-weight-card-title);color:var(--color-text-primary)}.chat-welcome-card__body{font-size:var(--font-size-body);color:var(--color-text-primary);line-height:1.5}.chat-welcome-card__hint{font-size:var(--font-size-caption);color:var(--color-text-secondary);line-height:1.5}.chat-bubble-row{justify-content:flex-start;align-items:flex-end;width:100%;display:flex}.chat-bubble-row--user{justify-content:flex-end}.chat-bubble{word-break:break-word;border-radius:16px;max-width:78%;padding:10px 14px;font-size:14px;line-height:1.5}.chat-bubble--user{background-color:var(--color-blue);color:#fff;white-space:pre-wrap;border-bottom-right-radius:4px}.chat-bubble--assistant{background-color:var(--color-card-background);color:var(--color-text-primary);border-bottom-left-radius:4px;box-shadow:0 2px 6px #0000000d}.chat-markdown>:first-child{margin-top:0}.chat-markdown>:last-child{margin-bottom:0}.chat-markdown p{margin:0 0 8px}.chat-markdown ul,.chat-markdown ol{margin:4px 0;padding-left:20px}.chat-markdown li{margin:2px 0}.chat-markdown a{color:var(--color-blue);text-decoration:underline}.chat-markdown code{background:#0000000d;border-radius:4px;padding:1px 4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em}.chat-markdown strong{font-weight:600}.chat-confirm-card{align-items:center;gap:var(--spacing-standard);padding:10px var(--spacing-standard);background:var(--color-card-background);margin:var(--spacing-small);border-radius:14px;display:flex;box-shadow:0 -2px 8px #00000014}.chat-confirm-card__text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.chat-confirm-card__title{color:var(--color-text-primary);font-size:13px;font-weight:600}.chat-confirm-card__desc{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.chat-confirm-card__actions{gap:var(--spacing-small);flex-shrink:0;display:flex}.chat-confirm-card__btn{cursor:pointer;width:34px;height:34px;transition:opacity var(--transition-fast);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:16px;display:flex}.chat-confirm-card__btn:hover{opacity:.8}.chat-confirm-card__btn--cancel{color:var(--color-text-secondary);background:#6b728026}.chat-confirm-card__btn--confirm{background:var(--color-blue);color:#fff}.chat-bottom-bar{border-top:1px solid var(--color-divider);background:var(--color-card-background)}.chat-composer{padding:10px var(--spacing-standard);background:var(--color-card-background);align-items:flex-end;gap:10px;display:flex}.chat-composer__input{font-family:var(--font-sans);color:var(--color-text-primary);background:var(--color-background);border:1px solid var(--color-divider);resize:none;max-height:96px;transition:border-color var(--transition-fast);border-radius:20px;outline:none;flex:1;padding:10px 14px;font-size:15px;line-height:1.4;overflow-y:auto}.chat-composer__input::placeholder{color:var(--color-text-secondary);opacity:.82}.chat-composer__input:focus{border-color:var(--color-blue)}.chat-composer__input:disabled{opacity:.6}.chat-composer__send{cursor:pointer;background:var(--gradient-gold-button);color:#fff;width:36px;height:36px;transition:opacity var(--transition-fast);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;display:flex}.chat-composer__send:disabled{cursor:not-allowed;background:#6b728059}.chat-composer__send:hover:not(:disabled){opacity:.9}.practices-page{box-sizing:border-box;background-color:var(--color-background);flex-direction:column;width:100%;min-height:100svh;display:flex}.practices-body{padding:var(--spacing-standard);flex-direction:column;gap:10px;display:flex}.practice-row{background:var(--color-card-background);cursor:pointer;text-align:left;width:100%;transition:transform var(--transition-fast);border:none;border-radius:14px;align-items:center;gap:12px;padding:12px;display:flex;box-shadow:0 3px 8px #0000000d}.practice-row:active{transform:scale(.98)}.practice-row--locked{opacity:.76}.practice-row__icon{background:#1f3a6326;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.practice-row__icon--locked{background:var(--color-background)}.practice-row__lock{font-size:14px}.practice-row__text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.practice-row__title{color:var(--color-text-primary);font-size:15px;font-weight:500}.practice-row__badge{font-size:12px}.practice-row__badge--free{color:var(--color-text-secondary)}.practice-row__badge--premium{color:var(--color-gold)}.practice-row__chevron{color:var(--color-text-secondary);opacity:.5;flex-shrink:0;font-size:18px}.practice-detail{background-color:var(--color-background);flex-direction:column;min-height:100svh;display:flex}.practice-detail__header-wrapper{position:relative}.practice-detail__back{color:#fff;cursor:pointer;z-index:10;background:0 0;border:none;padding:0;font-size:14px;position:absolute;top:54px;left:16px}.practice-detail__body{padding:var(--spacing-standard);flex-direction:column;gap:16px;display:flex}.practice-detail__header-label{color:#ffffffb8;text-transform:uppercase;letter-spacing:.5px;font-size:12px}.practice-detail__header-title{color:#fff;margin:0;font-size:22px;font-weight:500}.practice-detail__desc-card{background:var(--color-card-background);padding:var(--spacing-standard);border-radius:16px;box-shadow:0 6px 20px #0000000f}.practice-detail__desc{color:var(--color-text-primary);margin:0;font-size:14px;line-height:1.6}.practice-detail__result-text{color:var(--color-text-primary);margin:0;margin-top:var(--spacing-small);font-size:14px;line-height:1.6}.practice-session{height:calc(100svh - var(--tab-bar-height) - env(safe-area-inset-bottom,0px));background-color:var(--color-background);flex-direction:column;display:flex}.practice-session__header-wrapper{flex-shrink:0;position:relative}.practice-session__back{color:#fff;cursor:pointer;z-index:10;background:0 0;border:none;padding:0;font-size:14px;position:absolute;top:54px;left:16px}.practice-session__header-label{color:#ffffffb8;text-transform:uppercase;letter-spacing:.5px;font-size:12px}.practice-session__header-title{color:#fff;margin:0;font-size:17px;font-weight:500}.practice-session__messages{padding:var(--spacing-standard);flex-direction:column;flex:1;gap:12px;display:flex;overflow-y:auto}.practice-session__limit-notice{background:var(--color-notice-bg);color:var(--color-notice-text);border-radius:10px;padding:10px 14px;font-size:13px;line-height:1.4}.practice-session__composer{padding:10px var(--spacing-standard);background:var(--color-card-background);border-top:1px solid var(--color-divider);flex-shrink:0;align-items:flex-end;gap:10px;display:flex}.practice-session__input{font-family:var(--font-sans);color:var(--color-text-primary);background:var(--color-background);border:1px solid var(--color-divider);resize:none;max-height:96px;transition:border-color var(--transition-fast);border-radius:20px;outline:none;flex:1;padding:10px 14px;font-size:15px;line-height:1.4;overflow-y:auto}.practice-session__input::placeholder{color:var(--color-text-secondary);opacity:.82}.practice-session__input:focus{border-color:var(--color-blue)}.practice-session__input:disabled{opacity:.6}.practice-session__send{cursor:pointer;background:var(--gradient-gold-button);color:#fff;width:36px;height:36px;transition:opacity var(--transition-fast);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;display:flex}.practice-session__send:disabled{cursor:not-allowed;background:#6b728059}.practice-session__send:hover:not(:disabled){opacity:.9}.practice-result-overlay{z-index:200;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.practice-result-overlay__backdrop{background:#0006;position:absolute;inset:0}.practice-result-overlay__card{background:var(--color-background);z-index:1;border-radius:20px 20px 0 0;width:100%;max-width:480px;position:relative;overflow:hidden}.practice-result-overlay__header{background:var(--gradient-header-support);justify-content:center;align-items:center;padding:20px 16px;display:flex}.practice-result-overlay__title{color:#fff;font-size:20px;font-weight:500}.practice-result-overlay__body{flex-direction:column;gap:16px;padding:16px;display:flex}.practice-result-overlay__result-card{background:var(--color-card-background);border-radius:16px;flex-direction:column;gap:8px;padding:16px;display:flex;box-shadow:0 6px 20px #0000000f}.practice-result-overlay__label{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:12px}.practice-result-overlay__text{color:var(--color-text-primary);margin:0;font-size:15px;line-height:1.6}.profile-xp-bar{flex-direction:column;gap:4px;width:200px;margin:6px auto 0;display:flex}.profile-xp-bar__track{background:#ffffff3d;border-radius:3px;width:100%;height:6px;position:relative;overflow:hidden}.profile-xp-bar__fill{background:#fff;border-radius:3px;height:100%;transition:width .3s;position:absolute;top:0;left:0}.profile-xp-bar__label{color:#ffffffad;text-align:center;font-size:10px}.profile-level-label{color:#ffffffad;margin:2px 0 0;font-size:12px}.profile-verify-banner{background:var(--color-card-background);box-shadow:var(--card-shadow);border-radius:14px;align-items:center;gap:12px;padding:16px;display:flex}.profile-verify-banner__icon{color:#f59e0b;flex-shrink:0;font-size:20px}.profile-verify-banner__text{flex-direction:column;flex:1;gap:2px;display:flex}.profile-verify-banner__title{color:var(--color-text-primary);font-size:14px;font-weight:500}.profile-verify-banner__subtitle{color:var(--color-text-secondary);font-size:12px}.profile-verify-banner__error{color:#d32f2f;font-size:12px}.profile-verify-banner__btn{color:var(--color-blue);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0;font-size:13px;font-weight:500}.profile-verify-banner__btn:disabled{opacity:.5;cursor:not-allowed}
