:root{--background-color: #0d1117;--text-color: #c9d1d9;--header-color: #ffffff;--primary-color: #58a6ff;--primary-hover-color: #79c0ff;--border-color: #30363d;--card-background: #161b22;--input-background: #010409;--sidebar-background: #161b22;--font-family-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";--font-family-mono: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace}body{margin:0;font-family:var(--font-family-sans);background-color:var(--background-color);color:var(--text-color);font-size:16px;line-height:1.6}#root{display:flex;flex-direction:column;min-height:100vh;padding:0}header{text-align:center;padding:2rem 1rem 1rem}h1{font-size:2.5em;font-weight:700;margin:0 0 .5rem;background-image:linear-gradient(45deg,#a2facf,#64acff,#a2facf);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:textGradient 10s linear infinite}@keyframes textGradient{to{background-position:200% center}}.subtitle{font-size:1.1em;color:#8b949e;max-width:500px;margin:0 auto}.app-layout{display:grid;grid-template-columns:1fr;flex-grow:1;width:100%;max-width:1400px;margin:0 auto;padding:1rem;box-sizing:border-box}@media (min-width: 1024px){.app-layout{grid-template-columns:1fr 380px;gap:2rem}}.main-content{width:100%}.sidebar{width:100%;animation:slideInFromRight .7s cubic-bezier(.25,1,.5,1) forwards}@keyframes slideInFromRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@media (min-width: 1024px){.sidebar{position:sticky;top:2rem;align-self:start;height:calc(100vh - 4rem);overflow-y:auto}}.sidebar-content{background-color:var(--sidebar-background);border:1px solid var(--border-color);border-radius:8px;padding:1.5rem 2rem}.container{background-color:var(--card-background);border-radius:8px;border:1px solid var(--border-color);padding:2rem;margin-bottom:2rem}h2{color:var(--header-color);text-align:center;margin-bottom:1.5rem;font-weight:600;font-size:1.75em;border-bottom:1px solid var(--border-color);padding-bottom:.5rem;margin-top:0}.form-grid{display:grid;grid-template-columns:1fr;gap:1.25rem;margin-bottom:1.5rem}.form-group{display:flex;flex-direction:column}label{margin-bottom:.5rem;font-weight:500;font-size:.9em}input{background-color:var(--input-background);border:1px solid var(--border-color);border-radius:6px;padding:.75rem;color:var(--text-color);font-size:1em;font-family:var(--font-family-sans);transition:border-color .2s,box-shadow .2s}input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #58a6ff33}.form-actions{display:flex;flex-direction:column;gap:1rem}.submit-btn,.secondary-btn{width:100%;font-size:1.1em;font-weight:600;padding:.8rem;border-radius:6px;cursor:pointer;transition:all .2s ease-in-out;text-align:center}.submit-btn:active:not(:disabled),.secondary-btn:active:not(:disabled){transform:scale(.98)}.submit-btn{background-color:var(--primary-color);color:var(--background-color);border:1px solid var(--primary-color)}.submit-btn:hover:not(:disabled){background-color:var(--primary-hover-color);border-color:var(--primary-hover-color)}.submit-btn:disabled{background-color:#30363d;color:#8b949e;cursor:not-allowed;border-color:#30363d}.secondary-btn{background-color:transparent;color:var(--primary-color);border:1px solid var(--primary-color)}.secondary-btn:hover:not(:disabled){background-color:#58a6ff1a;color:var(--primary-hover-color)}.secondary-btn:disabled{background-color:transparent;border-color:#30363d;color:#8b949e;cursor:not-allowed}.save-section{padding:1.5rem 0 0;margin-top:1.5rem;border-top:1px solid var(--border-color);display:flex;gap:1rem}.loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0d1117d9;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:fadeIn .5s ease-in-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.loader-content{display:flex;flex-direction:column;align-items:center;gap:1.5rem}.loading-message{font-size:1.2em;color:var(--text-color);text-align:center}.astrological-loader{position:relative;width:150px;height:150px}.astrological-loader:not(.static) .orbit{animation:rotate 10s linear infinite}.astrological-loader.static .orbit{transform:rotate(var(--angle, 0deg))}.astrological-loader.static .orbit.one{--angle: 45deg}.astrological-loader.static .orbit.two{--angle: 190deg}.astrological-loader.static .orbit.three{--angle: 300deg}.sun{position:absolute;top:50%;left:50%;width:30px;height:30px;transform:translate(-50%,-50%);background-color:gold;border-radius:50%;box-shadow:0 0 15px gold,0 0 25px #ffae42}.orbit{position:absolute;top:50%;left:50%;border:1px solid var(--border-color);border-radius:50%}.orbit .planet{position:absolute;top:-5px;left:50%;transform:translate(-50%);width:10px;height:10px;background-color:var(--primary-color);border-radius:50%}.orbit.one{width:70px;height:70px;margin:-35px 0 0 -35px;animation-duration:8s}.orbit.two{width:110px;height:110px;margin:-55px 0 0 -55px;animation-duration:12s;animation-direction:reverse}.orbit.three{width:150px;height:150px;margin:-75px 0 0 -75px;animation-duration:18s}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error{color:#f85149;background-color:#f851491a;border:1px solid rgba(248,81,73,.4);border-radius:6px;padding:1.5rem;text-align:center}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes subtleGlow{0%,to{box-shadow:0 0 20px #58a6ff66,0 0 5px #a2facf4d}50%{box-shadow:0 0 30px #58a6ff99,0 0 10px #a2facf80}}.results-section>.container,.results-section>.results-grid{opacity:0;animation:fadeInUp .7s cubic-bezier(.25,1,.5,1) forwards}.results-section>.container:nth-of-type(1){animation-delay:.1s}.results-section>.container:nth-of-type(2){animation-delay:.2s}.results-section>.container:nth-of-type(3){animation-delay:.3s}.results-section>.container:nth-of-type(4),.results-section>.container:nth-of-type(5){animation-delay:.4s}.results-section>.results-grid{animation-delay:.5s}.results-section>.container:nth-of-type(6){animation-delay:.6s}.results-section>.container:nth-of-type(7){animation-delay:.7s}.results-section>.container:nth-of-type(8){animation-delay:.8s}.natal-chart-container{padding:1rem;display:flex;justify-content:center;align-items:center}.natal-chart-container img{max-width:100%;max-height:500px;height:auto;border-radius:50%;border:2px solid var(--primary-color);box-shadow:0 0 20px #58a6ff66;background-color:var(--input-background);animation:subtleGlow 4s ease-in-out infinite}.skeleton-chart{width:100%;max-width:400px;aspect-ratio:1 / 1;border-radius:50%;background-color:var(--input-background);border:2px dashed var(--border-color);animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.results-grid{display:grid;grid-template-columns:1fr;gap:2rem}@media (min-width: 768px){.results-grid{grid-template-columns:repeat(2,1fr)}}.tabs-container{display:flex;justify-content:center;margin-bottom:2rem}.segmented-control{display:inline-flex;background-color:var(--input-background);border:1px solid var(--border-color);border-radius:8px;padding:4px;position:relative;overflow:hidden}.segmented-control .tab{background-color:transparent;border:none;padding:.6rem 1.2rem;font-size:.9em;font-weight:600;color:var(--text-color);cursor:pointer;position:relative;z-index:2;transition:color .4s cubic-bezier(.25,1,.5,1);white-space:nowrap}.segmented-control .tab.active{color:var(--background-color)}.segmented-control .tab:not(.active):hover{color:var(--primary-hover-color)}.active-indicator{position:absolute;top:4px;bottom:4px;left:0;width:0;background-color:var(--primary-color);border-radius:6px;z-index:1;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}@media (max-width: 480px){.segmented-control .tab{padding:.5rem .8rem;font-size:.8em}}.interpretation p{margin:0 0 1rem}.interpretation strong{color:var(--header-color)}.interpretation-grid{display:grid;grid-template-columns:1fr;gap:2rem}@media (min-width: 768px){.interpretation-grid{grid-template-columns:1fr 1fr;gap:3rem}}.interpretation-grid h3{font-size:1.2em;color:var(--primary-color);margin-top:0;margin-bottom:1rem}.interpretation-card{margin-bottom:1.5rem;background-color:var(--input-background);padding:1.5rem;border-radius:8px;border:1px solid var(--border-color);border-left:4px solid var(--primary-hover-color)}.interpretation-card h4{margin:0 0 .5rem;font-size:1.1em;color:var(--header-color)}.interpretation-card p{font-size:.95em;margin:0}.aspects-container{display:flex;flex-direction:column;gap:1.5rem}.aspect-card{border:1px solid var(--border-color);border-left:4px solid var(--primary-color);padding:1.5rem;border-radius:8px;background-color:var(--input-background)}.aspect-card-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.5rem;flex-wrap:wrap;gap:.5rem}.aspect-card h3{margin:0;color:var(--header-color);font-size:1.2em}.aspect-orb{font-size:.9em;font-family:var(--font-family-mono);color:#8b949e}.aspect-interpretation{margin:0;font-size:.95em}table{width:100%;border-collapse:collapse;font-family:var(--font-family-mono);font-size:.9em}tbody tr:nth-child(2n){background-color:#010409}th,td{padding:.5rem;text-align:left;border-bottom:1px solid var(--border-color)}th{color:var(--header-color);font-weight:600}.numerology-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.numerology-card{background-color:var(--input-background);padding:1.5rem;border-radius:8px;border:1px solid var(--border-color);display:flex;flex-direction:column;border-top:4px solid;border-image:linear-gradient(90deg,var(--primary-color),#a2facf) 1}.numerology-card h3{margin:0 0 .5rem;color:var(--primary-color);font-size:1.2em}.numerology-card p{margin:0}.chart-container{margin-top:1rem}.bar-chart{display:flex;flex-direction:column;gap:.5rem}.bar-row{display:flex;align-items:center;gap:.5rem}.bar-label{width:80px;text-align:right;font-size:.85em}.bar{flex-grow:1;background-color:#30363d;border-radius:3px;overflow:hidden}.bar-fill{width:0;height:20px;background:linear-gradient(90deg,#36c,#58a6ff);color:#fff;font-size:.8em;display:flex;align-items:center;justify-content:flex-end;padding-right:5px;border-radius:3px;transition:width 1.5s cubic-bezier(.25,1,.5,1)}.legend-grid{display:grid;grid-template-columns:1fr;gap:2rem}@media (min-width: 600px){.legend-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}.legend-grid h3{color:var(--primary-color);font-size:1.2em;margin-top:0;margin-bottom:1rem;border-bottom:1px solid var(--border-color);padding-bottom:.5rem}.glyph-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(50px,1fr));gap:1rem}.glyph-list li{position:relative;display:flex;align-items:center;justify-content:center;cursor:help;padding:.5rem}.glyph-list li[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:120%;left:50%;transform:translate(-50%);background-color:var(--header-color);color:var(--background-color);padding:.4rem .8rem;border-radius:6px;font-size:.9em;font-weight:500;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .2s ease-in-out,transform .2s ease-in-out;z-index:10}.glyph-list li[data-tooltip]:hover:after{opacity:1;visibility:visible;transform:translate(-50%) translateY(-5px)}.glyph{font-size:1.5em;color:var(--header-color);width:25px;text-align:center}.interpretation-card,.aspect-card,.numerology-card,.teaser-card{transition:transform .3s ease-in-out,box-shadow .3s ease-in-out,border-color .3s ease-in-out}.interpretation-card:hover,.aspect-card:hover,.numerology-card:hover,.teaser-card:hover{transform:translateY(-5px);box-shadow:0 0 15px #58a6ff80,0 0 5px #a2facf66;border-color:var(--primary-hover-color)}.breakdown-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem}.teaser-card{background-color:var(--input-background);padding:1.5rem;border-radius:8px;border:1px solid var(--border-color);border-left:4px solid var(--primary-color)}.teaser-card h3{margin:0 0 .5rem;color:var(--primary-color);font-size:1.2em}.teaser-card p{margin:0;font-size:.95em}.cta-container{margin-top:3rem;padding:2rem;text-align:center;background-color:#58a6ff1a;border:1px solid var(--primary-color);border-radius:8px}.cta-container h3{font-size:1.75em;color:var(--header-color);margin:0 0 1rem}.cta-container p{font-size:1.1em;margin:0 auto 1rem;max-width:600px}.cta-container .price{font-size:2.5em;font-weight:700;color:#a2facf;margin-bottom:1.5rem}.unlock-btn{background-color:#2ea043;color:#fff;font-size:1.2em;font-weight:600;padding:.8rem 1.5rem;border:none;border-radius:6px;cursor:pointer;transition:background-color .2s ease-in-out}.unlock-btn:hover{background-color:#3bbf51}.premium-reveal-container{margin-top:2rem;padding:2rem;text-align:center;background-color:var(--input-background);border:1px solid var(--primary-color);border-radius:8px}.premium-reveal-container h3{font-size:1.75em;color:var(--header-color);margin:0 0 1rem}.premium-reveal-container p{font-size:1.1em;margin:0 auto;max-width:600px;line-height:1.7}.horoscope-container{text-align:center;border-top:2px solid;border-image:linear-gradient(90deg,var(--primary-color),#a2facf) 1}.horoscope-container h2{border-bottom:none}.timeframe-selector{display:flex;justify-content:center;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.timeframe-btn{background-color:var(--card-background);color:var(--text-color);border:1px solid var(--border-color);padding:.6rem 1.2rem;border-radius:20px;cursor:pointer;font-size:1em;font-weight:500;transition:all .2s ease-in-out}.timeframe-btn:hover:not(:disabled){background-color:var(--primary-color);color:var(--background-color);border-color:var(--primary-color)}.timeframe-btn.active{background-color:var(--primary-hover-color);color:var(--background-color);border-color:var(--primary-hover-color);font-weight:700}.timeframe-btn:disabled{opacity:.5;cursor:not-allowed}.horoscope-content{min-height:150px;text-align:left;line-height:1.8;font-size:1.1em;display:flex;justify-content:center;align-items:center;padding:1rem}.horoscope-prompt{color:#8b949e;font-style:italic}.horoscope-content .loader-container{min-height:100px;gap:1rem;padding:1rem}.simple-loader{width:40px;height:40px;border:4px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:rotate 1s linear infinite}.horoscope-content .error-message{color:#f85149;text-align:center}.horoscope-text-display p{margin-bottom:1.5rem}.horoscope-text-display p:last-child{margin-bottom:0}.horoscope-text-display strong{color:var(--primary-hover-color);font-weight:600}.welcome-container{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem;border:1px dashed var(--border-color);border-radius:8px;min-height:500px;animation:fadeInUp 1s ease-out}.welcome-container h2{border-bottom:none}.welcome-container p{max-width:450px;color:#8b949e;margin-bottom:2rem}.toast-notification{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);background-color:var(--header-color);color:var(--background-color);padding:.8rem 1.5rem;border-radius:6px;font-weight:600;box-shadow:0 4px 20px #0006;z-index:1001;animation:toast-in .5s cubic-bezier(.25,1,.5,1) forwards}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,20px)}to{opacity:1;transform:translate(-50%)}}#pdf-render-container{position:absolute;left:-9999px;top:auto;width:210mm}.pdf-report{background-color:#fff;color:#000;font-family:Helvetica,Arial,sans-serif;font-size:10pt}.pdf-page{width:210mm;height:297mm;padding:15mm;box-sizing:border-box;display:flex;flex-direction:column;page-break-after:always;background-color:#fff}.pdf-header{text-align:center;border-bottom:2px solid #333;padding-bottom:12pt;margin-bottom:24pt}.pdf-header h1{font-size:24pt;margin:0;color:#000;-webkit-text-fill-color:initial;background-image:none;font-weight:700}.pdf-header h2{font-size:16pt;margin:8pt 0;color:#333;font-weight:400;border-bottom:none}.pdf-birth-details{display:flex;justify-content:center;gap:24pt;margin-top:12pt;font-size:11pt}.pdf-section{margin-bottom:20pt}.pdf-section h3{font-size:14pt;color:#111;border-bottom:1px solid #ccc;padding-bottom:6pt;margin-bottom:12pt}.pdf-chart-section{display:flex;flex-direction:column;align-items:center;flex-grow:1;justify-content:center}.pdf-chart-section img{max-width:100%;width:150mm;height:auto;border-radius:50%;border:1px solid #ccc}.pdf-report table{width:100%;border-collapse:collapse;font-size:9pt}.pdf-report th,.pdf-report td{border:1px solid #ddd;padding:6pt;text-align:left}.pdf-report th{background-color:#f2f2f2;font-weight:700}.pdf-numerology-card,.pdf-interpretation-card,.pdf-aspect-card{border:1px solid #eee;border-left:3px solid #58a6ff;padding:10pt;margin-bottom:10pt;break-inside:avoid}.pdf-numerology-card h4,.pdf-interpretation-card h4,.pdf-aspect-card h4{margin:0 0 5pt;font-size:11pt;font-weight:700;color:#333}.pdf-aspect-card p,.pdf-interpretation-card p,.pdf-numerology-card p{margin:0}
