@tailwind base;@tailwind components;@tailwind utilities;:root{--bg-color: #0f1115;--primary-text-color: #e0e0e0;--secondary-text-color: #a0a0a0;--accent-color: #cda45e;--accent-secondary: #9d4edd;--card-bg-color: #161b22;--border-color: #333333;--error-color: #ef4444}html{overflow-x:hidden;width:100%;scroll-behavior:smooth}body{font-family:Montserrat,sans-serif;background-color:var(--bg-color);background-image:radial-gradient(circle at 50% 0%,rgba(157,78,221,.05) 0%,transparent 60%),radial-gradient(circle at 0% 0%,rgba(205,164,94,.02) 0%,transparent 40%),linear-gradient(to bottom,#0a0b0e,#050505);background-attachment:fixed;background-size:cover;color:var(--primary-text-color);-webkit-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;min-height:100vh;overflow-x:hidden;position:relative}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1;background-image:radial-gradient(1.5px 1.5px at 15% 15%,white 100%,transparent),radial-gradient(1px 1px at 25% 75%,white 100%,transparent),radial-gradient(2px 2px at 45% 25%,rgba(255,255,255,.8) 100%,transparent),radial-gradient(1.5px 1.5px at 65% 65%,white 100%,transparent),radial-gradient(1px 1px at 85% 35%,white 100%,transparent),radial-gradient(1.5px 1.5px at 5% 90%,white 100%,transparent),radial-gradient(1px 1px at 95% 5%,white 100%,transparent),radial-gradient(2px 2px at 35% 55%,rgba(255,255,255,.6) 100%,transparent);background-size:350px 350px;opacity:.25;animation:stars-twinkle 8s infinite ease-in-out}@keyframes stars-twinkle{0%,to{opacity:.2}50%{opacity:.35}}.funnel-container{max-width:480px;margin:0 auto;display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;justify-content:flex-start;padding-left:1rem;padding-right:1rem;padding-top:40px;padding-bottom:40px;position:relative;z-index:10}.funnel-step{display:none;animation:fadeIn .5s ease-out;padding-bottom:20px}.funnel-step.active{display:block}.step-centered{display:none;flex-direction:column;justify-content:center;align-items:center;flex-grow:1;height:100%;min-height:60vh}.step-centered.active{display:flex}#final-paywall-step{padding-bottom:calc(180px + env(safe-area-inset-bottom))}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.input-field{position:relative;color:var(--primary-text-color);padding:1rem;border:1px solid var(--border-color);background-color:var(--card-bg-color);border-radius:.75rem;width:100%;font-size:1rem;font-family:Montserrat,sans-serif;transition:border-color .2s ease,box-shadow .2s ease}.input-field:focus{outline:none;box-shadow:0 0 0 2px var(--accent-color);border-color:var(--accent-color)}.input-field:focus-within{outline:none;box-shadow:0 0 0 2px var(--accent-color);border-color:var(--accent-color)}.input-field.input-error{border-color:var(--error-color)!important;box-shadow:0 0 0 2px var(--error-color)!important}.error-text{color:var(--error-color);font-size:.875rem;text-align:left;display:none;margin-top:.5rem}.info-text{color:var(--accent-color);font-size:.875rem;text-align:center;display:none;margin-top:.5rem}input[type=date]::-webkit-calendar-picker-indicator,input[type=time]::-webkit-calendar-picker-indicator{filter:invert(80%) sepia(30%) saturate(5000%) hue-rotate(350deg) brightness(1.1);cursor:pointer;opacity:.9;font-size:1.25rem;transition:opacity .2s}input[type=date]::-webkit-calendar-picker-indicator:hover,input[type=time]::-webkit-calendar-picker-indicator:hover{opacity:1}.btn{width:100%;font-weight:700;border-radius:.75rem;padding:1rem;font-size:1rem;transition:all .3s ease;cursor:pointer;position:relative;display:flex;align-items:center;justify-content:center}.btn:disabled{opacity:.8;cursor:not-allowed}.btn-spinner{display:none;width:24px;height:24px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.btn.loading .btn-text{opacity:0;visibility:hidden}.btn.loading .btn-spinner{display:block;position:absolute;top:50%;left:50%;margin-top:-12px;margin-left:-12px;transform:none}.btn-primary{background:linear-gradient(135deg,#cda45e,#a87e38);color:#0f1115;box-shadow:0 4px 20px -5px #cda45e66;border:none}.btn-primary:not(:disabled):hover{opacity:.95;box-shadow:0 6px 25px -5px #cda45e80;transform:translateY(-1px)}.btn-violet{background:linear-gradient(135deg,#9d4edd,#7b2cbf);color:#fff;box-shadow:0 4px 20px -5px #9d4edd66;border:none}.btn-violet:not(:disabled):hover{opacity:.95;box-shadow:0 6px 25px -5px #9d4edd80;transform:translateY(-1px)}.btn-skip{background:none;border:none;color:var(--secondary-text-color);font-size:.9rem;font-weight:500}.btn-skip:hover{color:var(--primary-text-color)}.btn-secondary{background-color:var(--card-bg-color);color:var(--accent-color);border:1px solid var(--accent-color);opacity:.8}.btn-secondary:not(:disabled):hover{opacity:1;background-color:#cda45e0d}#loading-typing-container{font-size:1.25rem;color:var(--secondary-text-color);margin-top:1rem;min-height:2.5rem;text-align:center}.typing-cursor{display:inline-block;width:10px;height:1.25rem;background-color:var(--accent-color);animation:blink .7s infinite;margin-left:5px;vertical-align:middle}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.spinner{width:4rem;height:4rem;border-width:4px;border-style:dashed;border-radius:9999px;animation:spin 1.5s linear infinite;margin:2rem auto;border-color:var(--accent-color) transparent var(--accent-color) transparent}@keyframes spin{to{transform:rotate(360deg)}}#report-typing-container{font-size:1.25rem;color:var(--secondary-text-color);margin-top:1.5rem;height:4rem;display:flex;align-items:center;justify-content:center}.paywall-item{display:flex;align-items:center;background-color:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:.75rem;padding:1rem 1.25rem;transition:all .3s ease;cursor:pointer}.paywall-item:hover{background-color:#cda45e0d;border-color:#cda45e33;transform:scale(1.02)}.paywall-icon{color:var(--accent-color);font-size:1.5rem;margin-right:1rem;min-width:2rem;text-align:center}.timer-badge{display:inline-flex;align-items:center;background-color:#cda45e1a;color:var(--accent-color);padding:.3rem .8rem;border-radius:99px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;margin-bottom:1rem;border:1px solid rgba(205,164,94,.3)}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000e6;display:none;justify-content:center;align-items:center;z-index:200;animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-content{background-color:var(--card-bg-color);border:1px solid var(--border-color);border-top:4px solid var(--accent-color);border-radius:.75rem;padding:2rem;max-width:90%;width:400px;max-height:80vh;overflow-y:auto;text-align:center;box-shadow:0 10px 25px #00000080;position:relative}.modal-close-icon{position:absolute;top:15px;right:15px;color:var(--secondary-text-color);cursor:pointer;font-size:1.5rem}.modal-btn-close{margin-top:1.5rem;background-color:#4b5563;color:#fff;border:1px solid #4b5563}.modal-btn-close:hover{background-color:#6b7280;border-color:#6b7280}.modal-text-content{text-align:left;font-size:.85rem;color:#ccc;line-height:1.6}.modal-text-content h3{color:var(--accent-color);margin-top:1rem;margin-bottom:.5rem;font-weight:700}.clean-footer-link{margin-top:auto;padding:1.5rem;text-align:center;opacity:.4;transition:opacity .3s}.clean-footer-link:hover{opacity:1}.clean-footer-btn{font-size:.75rem;color:#9ca3af;text-decoration:none;border-bottom:1px dashed #4b5563;cursor:pointer}.legal-footer p{margin-bottom:.5rem}.legal-links{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;margin-bottom:.75rem}.legal-link{color:#6b7280;text-decoration:none;border-bottom:1px dashed #4b5563;transition:color .2s;cursor:pointer}.legal-link:hover{color:var(--accent-color);border-color:var(--accent-color)}.ltv-upsell-box{background-color:var(--card-bg-color);border:1px solid var(--accent-secondary);border-radius:.75rem;padding:1rem;margin-top:1.5rem;box-shadow:0 0 25px #9d4edd1a,0 4px 10px #0003}.report-advice{background-color:var(--bg-color);border:1px solid var(--border-color);border-left:3px solid var(--accent-color);margin-top:1rem;padding:1rem;border-radius:.25rem .5rem .5rem .25rem}#report-actions-container{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:.75rem}.astro-data-box{margin-top:.5rem;margin-bottom:1.5rem;padding:.75rem;background-color:#cda45e0d;border:1px dashed rgba(205,164,94,.3);border-radius:8px;text-align:left}.astro-data-title{color:var(--accent-color);font-size:.7rem;text-transform:uppercase;letter-spacing:1px;margin-bottom:.5rem;font-weight:700;text-align:center;border-bottom:1px solid rgba(205,164,94,.2);padding-bottom:.25rem}.astro-data-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem .25rem}.astro-data-item{display:flex;flex-direction:column;justify-content:flex-start;padding-left:5px}.astro-label-row{font-size:.8rem;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:1px}.astro-planet-name{color:#fff;font-weight:700;margin-right:3px}.astro-sign-name{color:#9ca3af;font-weight:400;font-family:monospace;font-size:.75rem}.astro-coords-row{color:#6b7280;font-family:monospace;font-size:.65rem;letter-spacing:0px}.astro-chart-preview{width:140px;height:140px;margin:0 auto 8px;position:relative}.astro-chart-preview svg{width:100%;height:100%}.pulse-text{animation:pulse 1.5s infinite}@keyframes pulse{0%{opacity:.5}50%{opacity:1}to{opacity:.5}}.sticky-paywall-footer{position:fixed;bottom:0;left:0;width:100%;padding:2rem 1rem calc(2rem + env(safe-area-inset-bottom)) 1rem;background:linear-gradient(to top,#0f1115 75%,#0f1115f2 90%,#0f111500);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:50;display:flex;flex-direction:column;align-items:center;transform:translateZ(0);will-change:transform;pointer-events:none}.sticky-paywall-footer>*{pointer-events:auto}.btn-pulse-glow{animation:btn-glow 2s infinite}@keyframes btn-glow{0%{box-shadow:0 0 #cda45eb3}70%{box-shadow:0 0 0 10px #cda45e00}to{box-shadow:0 0 #cda45e00}}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px var(--card-bg-color) inset!important;-webkit-text-fill-color:var(--primary-text-color)!important;transition:background-color 5000s ease-in-out 0s}
