:root{color-scheme:light dark;font-family:var(--tg-font-family, system-ui, -apple-system, Segoe UI, Roboto, sans-serif);line-height:1.5;background:var(--tg-theme-bg-color, #0f1115);color:var(--tg-theme-text-color, #f5f5f5)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;min-height:100vh;min-height:var(--tg-viewport-stable-height, 100vh);padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.app{max-width:28rem;margin:0 auto;padding:1.5rem 1rem 2rem}h1{margin:0 0 .25rem;font-size:1.75rem}.subtitle{margin:0 0 .5rem;opacity:.85}.meta{margin:0 0 1rem;font-size:.8125rem;color:var(--tg-theme-hint-color, rgba(245, 245, 245, .6))}.status{margin:0 0 1rem;padding:.75rem 1rem;border-radius:.75rem;background:var(--tg-theme-secondary-bg-color, rgba(255, 255, 255, .06))}.status--loading{color:var(--tg-theme-hint-color, rgba(245, 245, 245, .75))}.status--ok{color:var(--tg-theme-link-color, #6ab3ff)}.status--error{color:var(--tg-theme-destructive-text-color, #ff6b6b)}.hint{margin:.5rem 0 0;font-size:.8125rem;opacity:.75;word-break:break-word}.hint code{font-size:.75rem}.dev-login__form{display:flex;flex-direction:column;gap:.75rem;margin-top:.75rem}.button{margin-top:.75rem;padding:.5rem 1rem;border:none;border-radius:.5rem;background:var(--tg-theme-button-color, #2481cc);color:var(--tg-theme-button-text-color, #fff);font:inherit;cursor:pointer}.button:active{opacity:.9}.button:disabled{opacity:.6;cursor:not-allowed}.button--block{width:100%;margin-top:.25rem}.section-title{margin:0 0 .35rem;font-size:1.125rem}.section-hint{margin:0 0 1rem;font-size:.8125rem;color:var(--tg-theme-hint-color, rgba(245, 245, 245, .65))}.natal-form,.natal-result{margin-top:.5rem;display:flex;flex-direction:column;min-height:0}.result-header{margin-bottom:.75rem}.result-meta{margin:.15rem 0 0;font-size:.875rem;color:var(--tg-theme-hint-color, rgba(245, 245, 245, .75))}.result-scroll{display:flex;flex-direction:column;gap:1rem;padding-bottom:.5rem}.result-block__title{margin:0 0 .5rem;font-size:.9375rem;font-weight:600;color:var(--tg-theme-section-header-text-color, inherit)}.data-list{margin:0;padding:0;list-style:none;border-radius:.75rem;background:var(--tg-theme-secondary-bg-color, rgba(255, 255, 255, .06));overflow:hidden}.data-row{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;padding:.55rem .75rem;font-size:.875rem;border-top:1px solid var(--tg-theme-section-separator-color, rgba(255, 255, 255, .08))}.data-list .data-row:first-child{border-top:none}.data-row__label{flex-shrink:0}.data-row__value{text-align:right;color:var(--tg-theme-hint-color, rgba(245, 245, 245, .85));word-break:break-word}.data-row--aspect .data-row__value{font-size:.8125rem}.result-footer{margin-top:1rem;padding-top:.5rem}.form{display:flex;flex-direction:column;gap:.875rem}.field{display:flex;flex-direction:column;gap:.35rem;margin:0;padding:0;border:none}.field-label{font-size:.875rem;font-weight:600}.input{width:100%;padding:.625rem .75rem;border:1px solid var(--tg-theme-section-separator-color, rgba(255, 255, 255, .12));border-radius:.625rem;background:var(--tg-theme-secondary-bg-color, rgba(255, 255, 255, .06));color:inherit;font:inherit}.input:focus{outline:2px solid var(--tg-theme-link-color, #6ab3ff);outline-offset:1px}.input[aria-invalid=true]{border-color:var(--tg-theme-destructive-text-color, #ff6b6b)}.field-error{margin:0;font-size:.8125rem;color:var(--tg-theme-destructive-text-color, #ff6b6b)}.tier-row{display:flex;gap:.75rem}.tier-option{display:flex;align-items:center;gap:.4rem;padding:.5rem .75rem;border-radius:.625rem;background:var(--tg-theme-secondary-bg-color, rgba(255, 255, 255, .06));cursor:pointer}.tier-option input{margin:0}.form-banner{margin:0;padding:.625rem .75rem;border-radius:.625rem;font-size:.875rem}.form-banner--paywall{background:#ffc1071f;color:var(--tg-theme-text-color, #f5f5f5)}.form-banner--paywall p{margin:0}.billing{margin-top:.5rem}.app-nav{display:flex;gap:.5rem;margin-bottom:1rem}.nav-link{flex:1;padding:.5rem .75rem;border:none;border-radius:.625rem;background:var(--tg-theme-secondary-bg-color, rgba(255, 255, 255, .06));color:inherit;font:inherit;cursor:pointer}.nav-link--active{background:var(--tg-theme-button-color, #2481cc);color:var(--tg-theme-button-text-color, #fff)}.product-list{margin-bottom:1rem}.product-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem .75rem;border-top:1px solid var(--tg-theme-section-separator-color, rgba(255, 255, 255, .08))}.product-list .product-row:first-child{border-top:none}.product-row__info{display:flex;flex-direction:column;gap:.15rem;min-width:0}.product-row__title{font-size:.875rem;font-weight:600}.product-row__price{font-size:.8125rem;color:var(--tg-theme-hint-color, rgba(245, 245, 245, .75))}.button--compact{margin-top:0;padding:.4rem .75rem;font-size:.8125rem;flex-shrink:0}.button--secondary{background:var(--tg-theme-secondary-bg-color, rgba(255, 255, 255, .12));color:inherit}.form-banner--paywall .button--compact{margin-top:.5rem}.form-banner--error{background:#ff6b6b1f;color:var(--tg-theme-destructive-text-color, #ff6b6b)}.result-stats li+li{margin-top:.25rem}.natal-wheel-wrap{display:flex;justify-content:center;padding:.25rem 0 .5rem}.natal-wheel{width:100%;max-width:18rem;height:auto}.natal-wheel__ring{fill:none;stroke:var(--tg-theme-section-separator-color, rgba(255, 255, 255, .2));stroke-width:1.2}.natal-wheel__zodiac-line{stroke:var(--tg-theme-section-separator-color, rgba(255, 255, 255, .12));stroke-width:.8}.natal-wheel__house-line{stroke:var(--tg-theme-link-color, rgba(106, 179, 255, .55));stroke-width:1}.natal-wheel__zodiac-label{fill:var(--tg-theme-hint-color, rgba(245, 245, 245, .75));font-size:11px}.natal-wheel__planet-symbol{fill:var(--tg-theme-text-color, #f5f5f5);font-size:13px;font-weight:600}.legal-footer{margin-top:2rem;padding-top:1rem;border-top:1px solid var(--tg-theme-section-separator-color, rgba(255, 255, 255, .08));font-size:.75rem;color:var(--tg-theme-hint-color, rgba(245, 245, 245, .65))}.legal-footer__hint{margin:0 0 .5rem;line-height:1.45}.legal-footer__links{display:flex;flex-wrap:wrap;gap:.75rem}.legal-footer__links a{color:var(--tg-theme-link-color, #6ab3ff)}.legal-footer__dev-hint{margin:.5rem 0 0;opacity:.8}.billing-consent{margin-top:.75rem}
