*{box-sizing:border-box;margin:0;padding:0}#root,body,html{height:100%;overflow:hidden;width:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.billing-content,.birth-chart-cards .chart-card,.chart-card,.chat-input-form,.cosmic-content,.cosmic-content.error,.cosmic-content.loading,.error-container,.form-section,.horoscope-content,.horoscope-content.error,.horoscope-content.loading,.horoscope-toggle,.loading-container,.lunar-cycle,.moon-phase-content,.moon-phase-content.error,.moon-phase-content.loading,.moon-phase-display,.sign-card,.zodiac-details-section{background:#fffffff7!important}.birth-info-prompt{align-items:center;display:flex;justify-content:center;min-height:400px;padding:2rem}.birth-info-prompt .prompt-content{background:#fffffff2;border:1px solid #667eea33;border-radius:12px;box-shadow:0 8px 32px #0000001a;max-width:500px;padding:3rem 2rem;text-align:center}.birth-info-prompt .prompt-icon{display:block;font-size:3rem;margin-bottom:1rem}.birth-info-prompt .prompt-title{color:#333;font-size:1.5rem;font-weight:600;margin-bottom:1rem}.birth-info-prompt .prompt-message{color:#666;font-size:1rem;line-height:1.6;margin-bottom:2rem}.birth-info-prompt .prompt-action{display:flex;flex-direction:column;gap:1rem}.birth-info-prompt .btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.875rem 2rem;transition:all .3s ease}.birth-info-prompt .btn-primary:hover{box-shadow:0 8px 20px #667eea4d;transform:translateY(-2px)}.birth-info-prompt .prompt-subtext{color:#999;font-size:.9rem;margin:0}.birth-info-prompt .prompt-subtext strong{color:#667eea}.twofa-screen-container{align-items:center;background:linear-gradient(135deg,#1a1a3e,#16213e);box-sizing:border-box;color:#fff;display:flex;flex-direction:column;height:100vh;justify-content:center;padding:2rem;width:100%}.twofa-screen-content{display:flex;flex-direction:column;gap:2rem;max-width:500px;width:100%}.twofa-screen-header{text-align:center}.twofa-screen-title{color:#7c63d8;font-size:2rem;font-weight:600;margin:0}.twofa-screen-body{background:#1e1e3c80;border:1px solid #6496ff33;border-radius:12px;display:flex;flex-direction:column;gap:1.5rem;padding:2rem}.twofa-message-section{display:flex;flex-direction:column;gap:.75rem}.twofa-message{color:#d0d0ff;font-size:1rem;line-height:1.6;margin:0}.twofa-submessage{color:#b0b0d0;font-size:.9rem;line-height:1.6;margin:0}.twofa-form-section{display:flex;flex-direction:column;gap:1.25rem}.twofa-input-wrapper{display:flex;flex-direction:column;gap:.5rem}.twofa-code-label{color:#d0d0ff;font-size:.9rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.twofa-code-input{background:#ffffff08;border:2px solid #6496ff4d;border-radius:8px;color:#fff;font-family:Monaco,Courier New,monospace;font-size:2rem;font-weight:600;letter-spacing:8px;padding:1rem;text-align:center;transition:all .3s ease}.twofa-code-input:focus{background:#6496ff1a;border-color:#7c63d8;box-shadow:0 0 0 3px #7c63d81a;outline:none}.twofa-code-input:disabled{cursor:not-allowed;opacity:.6}.twofa-code-input::placeholder{color:#fff3;letter-spacing:8px}.twofa-code-hint{color:#8080a0;font-size:.75rem;font-weight:500;margin:0}.twofa-error-message{background:#dc354526;border:1px solid #dc354566;border-radius:6px;color:#f88;font-size:.9rem;font-weight:500;padding:1rem;text-align:center}.twofa-verify-button{background:linear-gradient(135deg,#7c63d8,#6a52c0);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;letter-spacing:1px;padding:1rem;text-transform:uppercase;transition:all .3s ease}.twofa-verify-button:hover:not(:disabled){background:linear-gradient(135deg,#8a78e0,#7863c8);box-shadow:0 4px 15px #7c63d866;transform:translateY(-2px)}.twofa-verify-button:active:not(:disabled){transform:translateY(0)}.twofa-verify-button:disabled{cursor:not-allowed;opacity:.5}.twofa-code-expiry{color:#8080a0;font-size:.85rem;font-weight:500;margin:0;text-align:center}.twofa-screen-footer{display:flex;justify-content:center}.twofa-signout-button{background:#0000;border:1px solid #7c63d84d;border-radius:6px;color:#7c63d8;cursor:pointer;font-size:.9rem;font-weight:600;letter-spacing:.5px;padding:.75rem 2rem;text-transform:uppercase;transition:all .3s ease}.twofa-signout-button:hover:not(:disabled){background:#7c63d81a;border-color:#7c63d8}.twofa-signout-button:disabled{cursor:not-allowed;opacity:.5}@media (max-width:480px){.twofa-screen-container{padding:1rem}.twofa-screen-title{font-size:1.5rem}.twofa-screen-body{gap:1rem;padding:1.5rem}.twofa-code-input{font-size:1.5rem;letter-spacing:6px;padding:.75rem}.twofa-verify-button{font-size:.9rem;padding:.75rem}}.consent-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.consent-modal{background:linear-gradient(135deg,#1e1e3f,#2d2d5f);border:2px solid #6366f1;border-radius:12px;box-shadow:0 20px 60px #0009;color:#fff;max-height:80vh;max-width:600px;overflow-y:auto;padding:2rem;width:90%}.consent-modal h2{color:#fff;font-size:1.5rem;margin-bottom:1.5rem;margin-top:0;text-align:center}.consent-modal h3{color:#a5f3fc;font-size:1rem;margin-bottom:.5rem;margin-top:1rem}.consent-error-message{background-color:#ef4444;border-radius:6px;color:#fff;font-size:.9rem;margin-bottom:1rem;padding:.75rem}.consent-content{margin-bottom:1.5rem;max-height:400px;overflow-y:auto}.consent-section{border-bottom:1px solid #ffffff1a;margin-bottom:1.5rem;padding-bottom:1.5rem}.consent-section:last-child{border-bottom:none}.consent-text{color:#e0e0e0;line-height:1.6}.consent-text p{font-size:.9rem;margin:0 0 1rem}.consent-text label{align-items:center;cursor:pointer;display:flex;font-size:.95rem;gap:.75rem;margin-top:.5rem}.consent-text input[type=checkbox]{accent-color:#6366f1;cursor:pointer;height:18px;width:18px}.consent-text input[type=checkbox]:disabled{cursor:not-allowed;opacity:.6}.consent-text label span{flex:1 1}.consent-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.btn-consent-accept{background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:6px;color:#fff;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.btn-consent-accept:hover:not(:disabled){background:linear-gradient(135deg,#7c3aed,#a78bfa);box-shadow:0 10px 20px #6366f14d;transform:translateY(-2px)}.btn-consent-accept:disabled{cursor:not-allowed;opacity:.5}.btn-consent-accept:active:not(:disabled){transform:translateY(0)}.consent-content::-webkit-scrollbar,.consent-modal::-webkit-scrollbar{width:6px}.consent-content::-webkit-scrollbar-track,.consent-modal::-webkit-scrollbar-track{background:#ffffff0d;border-radius:10px}.consent-content::-webkit-scrollbar-thumb,.consent-modal::-webkit-scrollbar-thumb{background:#6366f180;border-radius:10px}.consent-content::-webkit-scrollbar-thumb:hover,.consent-modal::-webkit-scrollbar-thumb:hover{background:#6366f1b3}@media (max-width:640px){.consent-modal{padding:1.5rem;width:95%}.consent-modal h2{font-size:1.25rem;margin-bottom:1rem}.consent-text label{font-size:.85rem}}.onboarding-modal-wrapper{background:#fff;border-radius:10px;box-shadow:0 8px 32px #00000026;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;max-height:auto;overflow:hidden;position:fixed;transition:opacity .3s ease;width:280px;z-index:9998}.onboarding-modal-wrapper.fade-in{animation:fadeInModal .3s ease-out}@keyframes fadeInModal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.onboarding-header{align-items:center;background:linear-gradient(135deg,#7c63d8,#6a52b8);border-bottom:1px solid #ffffff1a;color:#fff;cursor:move;display:flex;justify-content:space-between;padding:.6rem .8rem;-webkit-user-select:none;user-select:none}.onboarding-title-section h3{font-size:.85rem;font-weight:700;letter-spacing:.2px;margin:0}.onboarding-subtitle{display:none;font-size:.65rem;line-height:1.2;margin:0;opacity:.85}.onboarding-controls{display:flex;flex-shrink:0;gap:.35rem}.onboarding-close,.onboarding-minimize{align-items:center;background:#ffffff40;border:none;border-radius:5px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:.9rem;height:24px;justify-content:center;padding:0;transition:all .2s;width:24px}.onboarding-close:hover,.onboarding-minimize:hover{background:#ffffff59;transform:scale(1.05)}.onboarding-close:active,.onboarding-minimize:active{transform:scale(.95)}.onboarding-steps{display:flex;flex:0 1;flex-direction:column;gap:.4rem;max-height:280px;overflow-y:auto;padding:.6rem}.onboarding-steps::-webkit-scrollbar{width:5px}.onboarding-steps::-webkit-scrollbar-track{background:#f8f8f8;border-radius:3px}.onboarding-steps::-webkit-scrollbar-thumb{background:#ddd;border-radius:3px}.onboarding-steps::-webkit-scrollbar-thumb:hover{background:#999}.onboarding-step{align-items:center;background:#fff;border:1px solid #ddd;border-radius:6px;cursor:pointer;display:flex;font-family:inherit;gap:.5rem;min-height:32px;overflow:hidden;padding:.5rem .6rem;position:relative;text-align:left;transition:all .15s;white-space:nowrap}.onboarding-step:hover:not(:disabled){background:#f9f7ff;border-color:#7c63d8;transform:translateX(1px)}.onboarding-step:active:not(:disabled){transform:translateX(0)}.onboarding-step:disabled{background:#fafafa;cursor:not-allowed;opacity:.45}.onboarding-step.complete{background:#f0f7f0;border-color:#4caf50}.onboarding-step.complete:hover:not(:disabled){background:#e8f5e8;border-color:#4caf50}.step-icon{flex-shrink:0;font-size:1.2rem;line-height:1}.step-content{align-items:center;display:flex;flex:1 1;gap:.4rem;min-width:0}.step-title{color:#333;font-size:.8rem;font-weight:600;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.step-desc{display:none}.step-badges{align-items:center;display:flex;flex-shrink:0;flex-wrap:nowrap;gap:.3rem}.step-optional,.step-required{border-radius:3px;display:inline-block;font-size:.55rem;font-weight:700;margin:0;padding:.2rem .35rem;white-space:nowrap}.step-required{background:#f72;color:#fff}.step-optional{background:#a0a0a0;color:#fff}.step-check{color:#4caf50;font-size:.95rem;font-weight:700;position:absolute;right:.5rem;top:50%;transform:translateY(-50%)}.onboarding-footer{background:#fafafa;border-top:1px solid #e0e0e0;color:#777;font-size:.7rem;line-height:1.3;padding:.5rem .6rem;text-align:center}.onboarding-footer p{margin:0}.onboarding-minimized{cursor:grab;position:fixed;-webkit-user-select:none;user-select:none;z-index:9998}.onboarding-minimized:active{cursor:grabbing}.minimized-button{background:linear-gradient(135deg,#7c63d8,#6a52b8);border:none;border-radius:6px;box-shadow:0 4px 12px #7c63d84d;color:#fff;cursor:grab;font-size:.8rem;font-weight:600;padding:.5rem .9rem;transition:all .2s;white-space:nowrap}.minimized-button:hover{background:linear-gradient(135deg,#6a52b8,#593da0);box-shadow:0 6px 16px #7c63d866;transform:translateY(-2px)}.minimized-button:active{cursor:grabbing;transform:translateY(0)}@media (max-width:600px){.onboarding-modal-wrapper{width:260px}.onboarding-header{padding:.5rem .6rem}.onboarding-title-section h3{font-size:.8rem}.onboarding-steps{gap:.35rem;padding:.5rem}.onboarding-step{min-height:30px;padding:.45rem .5rem}.step-icon{font-size:1rem}.step-title{font-size:.75rem}.onboarding-footer{font-size:.65rem;padding:.4rem .5rem}.onboarding-close,.onboarding-minimize{font-size:.85rem;height:22px;width:22px}}@media (max-width:380px){.onboarding-modal-wrapper{max-width:260px;width:calc(100% - 20px)}.step-optional,.step-required{display:none}}.welcome-message-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;opacity:0;position:fixed;right:0;top:0;transition:opacity .3s ease;z-index:2000}.welcome-message-overlay.fade-in{opacity:1}.welcome-message-modal{animation:slideUp .4s cubic-bezier(.34,1.56,.64,1);background:linear-gradient(135deg,#f5f3ff,#fffbf7);border:2px solid #9370db33;border-radius:16px;box-shadow:0 12px 48px #9370db4d,0 0 20px #9370db26;max-height:80vh;max-width:450px;overflow-y:auto;padding:2.5rem;width:90%}.welcome-header{margin-bottom:1.5rem;text-align:center}.welcome-header h2{color:#6b5b95;font-size:1.75rem;font-weight:700;letter-spacing:-.5px;margin:0}.welcome-content{margin-bottom:2rem}.welcome-greeting{color:#7c3aed;font-size:1.1rem;font-weight:600;line-height:1.5;margin:0 0 1rem;text-align:center}.welcome-paragraph{color:#374151;font-size:.95rem;line-height:1.6;margin:.75rem 0;text-align:justify}.welcome-paragraph:last-of-type{margin-bottom:1rem}.welcome-timer{background-color:#9370db1a;border-radius:8px;color:#9370db;font-size:.85rem;font-style:italic;margin-top:1.25rem;padding:.75rem;text-align:center}.welcome-footer{display:flex;flex-direction:column;gap:1rem}.welcome-btn{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;letter-spacing:.3px;padding:.85rem 1.5rem;transition:all .3s ease}.welcome-btn-primary{background:linear-gradient(135deg,#9370db,#7c3aed);box-shadow:0 4px 12px #9370db66;color:#fff}.welcome-btn-primary:hover{box-shadow:0 6px 16px #9370db80;transform:translateY(-2px)}.welcome-btn-primary:active{box-shadow:0 2px 8px #9370db4d;transform:translateY(0)}.welcome-btn-secondary{background-color:#fff;border:2px solid #9370db;color:#6b5b95}.welcome-btn-secondary:hover{background-color:#f5f3ff;border-color:#7c3aed}.welcome-btn-secondary:active{background-color:#ede9fe}@media (max-width:480px){.welcome-message-modal{max-width:95%;padding:1.75rem}.welcome-header h2{font-size:1.5rem}.welcome-paragraph{font-size:.9rem;text-align:left}.welcome-btn{font-size:.95rem;padding:.75rem 1rem}.welcome-footer{flex-direction:column}}.welcome-message-modal::-webkit-scrollbar{width:6px}.welcome-message-modal::-webkit-scrollbar-track{background:#9370db1a;border-radius:3px}.welcome-message-modal::-webkit-scrollbar-thumb{background:#9370db4d;border-radius:3px}.welcome-message-modal::-webkit-scrollbar-thumb:hover{background:#9370db80}.nav-desktop-sidebar{background:linear-gradient(135deg,#667eea,#764ba2);bottom:0;box-shadow:2px 0 8px #0000001a;color:#fff;display:flex;flex-direction:column;left:0;overflow-y:auto;padding:0;position:fixed;top:0;width:250px;z-index:1000}@media (max-width:767px){.nav-desktop-sidebar{display:none!important}}.nav-brand{border-bottom:1px solid #fff3;font-size:1.5rem;font-weight:700;padding:1.5rem;text-align:center}.nav-brand h1{font-size:1.5rem;margin:0}.nav-menu{flex:1 1;list-style:none;margin:0;padding:1rem 0}.nav-item{align-items:center;background:none;border:none;color:#fffc;cursor:pointer;display:flex;font-size:.95rem;gap:.75rem;padding:1rem 1.5rem;text-align:left;transition:all .2s ease;width:100%}.nav-item:hover{background:#ffffff1a;color:#fff}.nav-item.active{background:#fff3;border-left:4px solid #ff6b9d;color:#fff;padding-left:calc(1.5rem - 4px)}.nav-icon{font-size:1.25rem}.nav-footer{border-top:1px solid #fff3;padding:1rem;text-align:center}.nav-version{color:#fff9;font-size:.75rem;margin:0}.nav-mobile-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 8px #0000001a;color:#fff;display:flex;height:60px;justify-content:space-between;left:0;padding:.75rem 1rem;position:fixed;right:0;top:0;z-index:999}@media (min-width:768px){.nav-mobile-header{display:none}}.hamburger-menu{background:none;border:none;color:#fff;cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:.5rem}.hamburger-menu span{background:#fff;border-radius:1px;height:2px;transition:all .3s ease;width:24px}.hamburger-menu:active span:first-child{transform:rotate(45deg) translate(8px,8px)}.hamburger-menu:active span:nth-child(2){opacity:0}.hamburger-menu:active span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}.app-title{flex:1 1;font-size:1.25rem;font-weight:700;margin:0;text-align:center}.spacer{width:44px}.nav-mobile-overlay{animation:fadeIn .2s ease;background:#00000080;right:0;z-index:998}.nav-mobile-menu,.nav-mobile-overlay{bottom:0;left:0;position:fixed;top:60px}.nav-mobile-menu{animation:slideIn .3s ease;background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:2px 0 8px #0003;color:#fff;overflow-y:auto;width:280px;z-index:999}.nav-mobile-header-menu{align-items:center;border-bottom:1px solid #fff3;display:flex;justify-content:space-between;padding:1rem}.nav-mobile-header-menu h2{font-size:1.25rem;margin:0}.close-btn{background:none;border:none;color:#fff;cursor:pointer;font-size:1.5rem;padding:0}.nav-mobile-list{list-style:none;margin:0;padding:0}.nav-mobile-item{align-items:center;background:none;border:none;border-left:4px solid #0000;color:#fffc;cursor:pointer;display:flex;font-size:1rem;gap:1rem;padding:1rem;text-align:left;transition:all .2s ease;width:100%}.nav-mobile-item:active,.nav-mobile-item:hover{background:#ffffff1a;color:#fff}.nav-mobile-item.active{background:#ffffff26;border-left-color:#ff6b9d;color:#fff}.nav-icon{font-size:1.5rem;min-width:1.5rem;text-align:center}.nav-label{flex:1 1}.nav-desktop-sidebar::-webkit-scrollbar{width:6px}.nav-desktop-sidebar::-webkit-scrollbar-track{background:#ffffff1a}.nav-desktop-sidebar::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:3px}.nav-desktop-sidebar::-webkit-scrollbar-thumb:hover{background:#ffffff80}.nav-item:focus,.nav-mobile-item:focus{outline:2px solid #ff6b9d;outline-offset:-2px}@media (prefers-reduced-motion:reduce){.nav-mobile-menu,.nav-mobile-overlay{animation:none}}.nav-arrow{font-size:.75rem;margin-left:.5rem}.nav-category{align-items:center;display:flex;justify-content:space-between}.nav-submenu{background:#00000026;list-style:none;margin:0;padding:0}.nav-subitem{align-items:center;background:none;border:none;color:#ffffffb3;cursor:pointer;display:flex;font-size:.85rem;gap:.75rem;padding:.8rem 1.5rem .8rem 3rem;text-align:left;transition:all .2s ease;width:100%}.nav-subitem:hover{background:#ffffff1a;color:#fff}.nav-subitem.active{background:#ffffff26;border-left:4px solid #ff6b9d;color:#fff;padding-left:calc(3rem - 4px)}.nav-mobile-category{align-items:center;display:flex;justify-content:space-between}.nav-mobile-submenu{background:#00000026;list-style:none;margin:0;padding:0}.nav-mobile-subitem{align-items:center;background:none;border:none;border-left:4px solid #0000;color:#ffffffb3;cursor:pointer;display:flex;font-size:.9rem;gap:1rem;padding:.8rem 1rem .8rem 3rem;text-align:left;transition:all .2s ease;width:100%}.nav-mobile-subitem:active,.nav-mobile-subitem:hover{background:#ffffff1a;color:#fff}.nav-mobile-subitem.active{background:#ffffff26;border-left-color:#ff6b9d;color:#fff}.nav-logout-btn{align-items:center;background:none;border:none;border-top:1px solid #fff3;color:#ff6b9d;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:.75rem;padding:1rem 1.5rem;text-align:left;transition:all .2s ease;width:100%}.nav-logout-btn:hover{background:#ff6b9d1a;color:#fff}.nav-mobile-logout-btn{align-items:center;background:none;border:none;border-top:1px solid #fff3;color:#ff6b9d;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:1rem;margin-top:var(--spacing-md);padding:1rem;text-align:left;transition:all .2s ease;width:100%}.nav-mobile-logout-btn:active,.nav-mobile-logout-btn:hover{background:#ff6b9d1a;color:#fff}.nav-category.disabled,.nav-item.disabled,.nav-mobile-category.disabled,.nav-mobile-item.disabled,.nav-mobile-subitem.disabled,.nav-subitem.disabled{cursor:not-allowed!important;opacity:.5!important;pointer-events:none!important}button:disabled{cursor:not-allowed}.app-footer{background-color:#000000e6;border-top:1px solid #8a2be24d;margin-top:20px;padding:12px 16px}.footer-text{color:#c8c8c8cc;font-family:Courier New,monospace;font-size:10px;letter-spacing:.5px;margin:0;text-align:center}@media (max-width:768px){.app-footer{margin-top:15px;padding:10px 12px}.footer-text{font-size:9px}}.help-icon{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50%;bottom:20px;box-shadow:0 2px 8px #667eea66;color:#fff;cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;line-height:1;padding:0;position:fixed;right:20px;transition:transform .2s,box-shadow .2s;width:32px;z-index:9997}.help-icon:hover{box-shadow:0 4px 12px #667eea99;transform:scale(1.1)}.help-icon:active{transform:scale(.95)}.help-chat-open .help-icon,.help-icon.hidden{display:none}.faq-viewer{animation:fadeInFromLeft .3s ease-out;background:#fff;bottom:0;display:flex;flex-direction:column;left:0;position:fixed;right:0;top:0;z-index:9999}@keyframes fadeInFromLeft{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.faq-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 8px #0000001a;color:#fff;display:flex;justify-content:space-between;padding:1rem}.faq-header h2{flex:1 1;font-size:20px;margin:0}.faq-close-btn{background:#fff3;border:1px solid #ffffff4d;border-radius:4px;color:#fff;cursor:pointer;font-size:18px;line-height:1;padding:.4rem .8rem;transition:background .2s}.faq-close-btn:hover{background:#ff00004d}.faq-search-section{background:#f9f9f9;border-bottom:1px solid #e0e0e0;padding:1rem}.faq-search-input{border:1px solid #e0e0e0;border-radius:6px;box-sizing:border-box;font-family:inherit;font-size:14px;padding:.75rem 1rem;transition:border-color .2s;width:100%}.faq-search-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.faq-category-filter{align-items:center;background:#fff;border-bottom:1px solid #e0e0e0;display:flex;gap:.5rem;overflow-x:auto;padding:.75rem 1rem}.faq-category-filter::-webkit-scrollbar{height:4px}.faq-category-filter::-webkit-scrollbar-track{background:#f1f1f1}.faq-category-filter::-webkit-scrollbar-thumb{background:#ccc;border-radius:2px}.faq-category-btn{background:#fff;border:1px solid #e0e0e0;border-radius:20px;color:#333;cursor:pointer;font-size:12px;font-weight:500;padding:.4rem .8rem;transition:all .2s;white-space:nowrap}.faq-category-btn:hover{border-color:#667eea;color:#667eea}.faq-category-btn.active{background:#667eea;border-color:#667eea;color:#fff}.faq-content{background:#fafafa;flex:1 1;overflow-y:auto;padding:1rem}.faq-content::-webkit-scrollbar{width:6px}.faq-content::-webkit-scrollbar-track{background:#f1f1f1}.faq-content::-webkit-scrollbar-thumb{background:#888;border-radius:3px}.faq-content::-webkit-scrollbar-thumb:hover{background:#555}.faq-no-results{color:#999;padding:3rem 1rem;text-align:center}.faq-no-results p{margin:.5rem 0}.faq-category{margin-bottom:1.5rem}.faq-category-title{border-bottom:2px solid #667eea;color:#333;font-size:16px;margin:0 0 .75rem;padding-bottom:.5rem}.faq-questions{display:flex;flex-direction:column;gap:.5rem}.faq-item{background:#fff;border:1px solid #e0e0e0;border-radius:6px;overflow:hidden}.faq-question{align-items:center;background:#fff;border:none;color:#333;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:1rem;justify-content:space-between;padding:1rem;text-align:left;transition:background .2s;width:100%}.faq-question:hover{background:#f9f9f9}.faq-question.expanded{background:#f0f4ff;border-bottom:1px solid #e0e0e0}.faq-question-text{flex:1 1}.faq-toggle-icon{color:#667eea;flex-shrink:0;font-size:12px;transition:transform .2s}.faq-question.expanded .faq-toggle-icon{transform:rotate(0deg)}.faq-answer{background:#f9f9f9;border-top:1px solid #e0e0e0;color:#555;font-size:13px;line-height:1.6;padding:1rem}.faq-answer div{margin:.5rem 0}.faq-footer{background:#f9f9f9;border-top:1px solid #e0e0e0;color:#999;font-size:12px;padding:1rem;text-align:center}.faq-footer p{margin:0}@media (max-width:768px){.faq-viewer{bottom:0;left:0;position:fixed;right:0;top:0}.faq-header h2{font-size:18px}.faq-content{padding:.75rem}.faq-category-filter{padding:.5rem}.faq-category-btn{font-size:11px;padding:.35rem .7rem}}:root{--help-primary:#667eea;--help-primary-dark:#764ba2;--help-border:#e0e0e0;--help-bg-light:#fafafa;--help-text-dark:#333;--help-text-light:#999}.help-dialog-container{animation:slideUp .3s ease-out;background:#fff;border:1px solid #e0e0e0;border:1px solid var(--help-border);border-radius:8px 8px 0 0;bottom:0;box-shadow:0 -2px 8px #00000026;display:flex;flex-direction:column;max-height:500px;position:fixed;right:20px;width:380px;z-index:9998}.help-dialog-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);background:linear-gradient(135deg,var(--help-primary) 0,var(--help-primary-dark) 100%);border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--help-border);border-radius:8px 8px 0 0;color:#fff;display:flex;justify-content:space-between;padding:1rem}.help-dialog-header h2{font-size:14px;font-weight:600;margin:0}.help-button{background:#fff3;border:1px solid #ffffff4d;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:.4rem .6rem;transition:background .2s}.help-button:hover{background:#ffffff4d}.help-button.close:hover{background:#ff00004d}.help-back-button{transition:background .2s;white-space:nowrap}.help-content-area{background:#fafafa;background:var(--help-bg-light);color:#333;color:var(--help-text-dark);flex:1 1;font-size:13px;line-height:1.6;overflow-y:auto;padding:1rem}.help-content-area::-webkit-scrollbar{width:6px}.help-content-area::-webkit-scrollbar-track{background:#f1f1f1}.help-content-area::-webkit-scrollbar-thumb{background:#888;border-radius:3px}.help-content-area::-webkit-scrollbar-thumb:hover{background:#555}@media (max-width:768px){.help-dialog-container{left:0;max-height:60vh;right:0;width:100%}}.help-about-viewer,.help-document-viewer{animation:slideUp .3s ease-out;background:#fff;border:1px solid #e0e0e0;border-radius:8px 8px 0 0;bottom:0;box-shadow:0 -2px 8px #00000026;display:flex;flex-direction:column;max-height:70vh;position:fixed;right:20px;width:600px;z-index:9998}.help-viewer-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #e0e0e0;border-radius:8px 8px 0 0;color:#fff;display:flex;justify-content:space-between;padding:1rem}.help-viewer-header h2{flex:1 1;font-size:16px;font-weight:600;margin:0}.help-viewer-controls{align-items:center;display:flex;gap:.5rem}.help-back-button{background:#fff3;border:1px solid #ffffff4d;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;font-weight:500;padding:.4rem .8rem;transition:all .2s ease}.help-back-button:hover{background:#ffffff4d;border-color:#ffffff80}.help-close-button{align-items:center;background:#fff3;border:1px solid #ffffff4d;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;height:28px;justify-content:center;padding:0;transition:all .2s ease;width:28px}.help-close-button:hover{background:#ffffff4d;border-color:#ffffff80}.help-about-content,.help-document-content,.help-viewer-content{-webkit-overflow-scrolling:touch;background:#fafafa;color:#333;flex:1 1;font-size:13px;line-height:1.6;outline:none;overflow-x:hidden;overflow-y:auto;padding:1.5rem;scroll-behavior:smooth}.help-viewer-content{min-height:0}.help-about-content::-webkit-scrollbar,.help-document-content::-webkit-scrollbar,.help-viewer-content::-webkit-scrollbar{width:12px}.help-about-content::-webkit-scrollbar-track,.help-document-content::-webkit-scrollbar-track,.help-viewer-content::-webkit-scrollbar-track{background:#e0e0e0;border-radius:6px}.help-about-content::-webkit-scrollbar-thumb,.help-document-content::-webkit-scrollbar-thumb,.help-viewer-content::-webkit-scrollbar-thumb{background:#999;border:2px solid #e0e0e0;border-radius:6px}.help-about-content::-webkit-scrollbar-thumb:hover,.help-document-content::-webkit-scrollbar-thumb:hover,.help-viewer-content::-webkit-scrollbar-thumb:hover{background:#666}.help-about-content::-webkit-scrollbar-thumb:active,.help-document-content::-webkit-scrollbar-thumb:active,.help-viewer-content::-webkit-scrollbar-thumb:active{background:#444}.help-about-content,.help-document-content,.help-viewer-content{scrollbar-color:#999 #e0e0e0;scrollbar-width:auto}.help-document-content .markdown-content h2,.help-document-content .markdown-content h3,.help-document-content .markdown-content h4,.help-document-content .markdown-content h5,.help-document-content .markdown-content h6{color:#222;font-weight:600;margin:1rem 0 .5rem}.help-document-content .markdown-content h2{border-bottom:1px solid #ddd;font-size:16px;padding-bottom:.5rem}.help-document-content .markdown-content p{margin:.5rem 0}.help-document-content .markdown-content li{margin-bottom:.25rem;margin-left:1.5rem}.help-about-content p{margin:.75rem 0}@media (max-width:768px){.help-about-viewer,.help-document-viewer{left:0;max-height:60vh;right:0;width:100%}}.help-chat-container{animation:slideUp .3s ease-out;background:#fff;border:1px solid #e0e0e0;border-radius:8px 8px 0 0;bottom:0;box-shadow:0 -2px 8px #00000026;display:flex;flex-direction:column;height:500px;position:fixed;right:20px;width:380px;z-index:9998}.help-chat-container.minimized{animation:slideDown .3s ease-out;height:auto}.help-chat-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #e0e0e0;border-radius:8px 8px 0 0;color:#fff;display:flex;justify-content:space-between;padding:1rem}.help-chat-title{font-size:14px;font-weight:600;margin:0}.help-chat-controls{display:flex;gap:.5rem}.help-chat-button{background:#fff3;border:1px solid #ffffff4d;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:.4rem .6rem;transition:background .2s}.help-chat-button:hover{background:#ffffff4d}.help-chat-button.about-btn:hover,.help-chat-button.faq-btn:hover,.help-chat-button.privacy-btn:hover,.help-chat-button.terms-btn:hover{background:#667eea4d}.help-chat-button.close:hover{background:#ff00004d}.help-chat-messages{background:#fafafa;display:flex;flex:1 1;flex-direction:column;gap:.75rem;overflow-y:auto;padding:1rem}.help-chat-messages::-webkit-scrollbar{width:6px}.help-chat-messages::-webkit-scrollbar-track{background:#f1f1f1}.help-chat-messages::-webkit-scrollbar-thumb{background:#888;border-radius:3px}.help-chat-messages::-webkit-scrollbar-thumb:hover{background:#555}.help-chat-welcome{color:#666;font-size:13px;line-height:1.6;padding:1rem;text-align:center}.help-chat-welcome p{margin:.5rem 0}.help-chat-message{animation:fadeIn .3s ease-in;display:flex;margin-bottom:.5rem}.help-chat-message.user{justify-content:flex-end}.help-chat-message.assistant{justify-content:flex-start}.help-chat-message-content{word-wrap:break-word;border-radius:8px;font-size:13px;line-height:1.5;max-width:85%;padding:.7rem 1rem}.help-chat-message.user .help-chat-message-content{background:#667eea;border-radius:12px 4px 12px 12px;color:#fff}.help-chat-message.assistant .help-chat-message-content{background:#fff;border:1px solid #e0e0e0;border-radius:4px 12px 12px 12px;color:#333}.help-chat-loading{animation:pulse 1.5s infinite;display:inline-block}.help-chat-form{background:#fff;border-top:1px solid #e0e0e0;display:flex;gap:.5rem;padding:.75rem}.help-chat-input{border:1px solid #e0e0e0;border-radius:4px;flex:1 1;font-family:inherit;font-size:13px;padding:.5rem .75rem;transition:border-color .2s}.help-chat-input:focus{border-color:#667eea;box-shadow:0 0 0 2px #667eea1a;outline:none}.help-chat-input:disabled{background:#f5f5f5;color:#999}.help-chat-send-button{background:#667eea;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:.5rem 1rem;transition:background .2s}.help-chat-send-button:hover:not(:disabled){background:#5568d3}.help-chat-send-button:disabled{background:#ccc;cursor:not-allowed}@media (max-width:768px){.help-chat-container{height:60vh;left:0;max-height:60vh;right:0;width:100%}.help-chat-message-content{max-width:90%}}.voice-bar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(0deg,#141428fa,#282346f2);border-top:1px solid #7c63d84d;bottom:0;box-shadow:0 -4px 20px #0000004d;left:0;position:-webkit-sticky;position:sticky;right:0;z-index:100}.voice-bar-error{align-items:center;background:#ff64641a;border-bottom:1px solid #ff64644d;color:#f99;display:flex;font-size:.85rem;gap:.5rem;padding:.6rem 1rem}.voice-bar-container{align-items:center;display:flex;gap:1rem;justify-content:flex-start;padding:.8rem 1rem}.voice-bar-left{align-items:center;display:flex;flex-shrink:0;gap:.6rem}.voice-bar-progress{align-items:center;display:flex;flex:1 1;min-width:100px}.progress-bar-container{background:#7c63d833;border-radius:2px;cursor:pointer;height:4px;overflow:hidden;width:100%}.progress-bar-fill{background:linear-gradient(90deg,#7c63d8,#6b52c1);border-radius:2px;height:100%;transition:width .1s ease}.voice-btn{align-items:center;background:#0000;border:none;border-radius:4px;cursor:pointer;display:flex;font-size:1.2rem;height:36px;justify-content:center;min-width:36px;padding:.4rem .6rem;transition:all .2s ease}.voice-btn:hover:not(:disabled){background:#7c63d833;transform:scale(1.1)}.voice-btn:active:not(:disabled){transform:scale(.95)}.voice-btn:disabled{cursor:not-allowed;opacity:.5}.voice-btn-play{font-size:1.3rem}.voice-btn-play:hover:not(:disabled){background:#7c63d84d;color:#7c63d8}.voice-btn-toggle{font-size:1.2rem}.voice-btn-toggle:hover:not(:disabled){background:#ffa50033;color:orange}.voice-btn-stop{font-size:1.2rem}.voice-btn-stop:hover:not(:disabled){background:#ff6b6b33;color:#ff6b6b}.voice-btn-loading{animation:pulse-voice 1.5s ease-in-out infinite;cursor:not-allowed;opacity:.7}@keyframes pulse-voice{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.95)}}@media (max-width:600px){.voice-bar-container{gap:.8rem;padding:.6rem .8rem}.voice-btn{font-size:1rem;height:32px;min-width:32px}}@media (max-width:400px){.voice-bar-container{gap:.5rem;padding:.5rem .6rem}.voice-btn{font-size:.9rem;height:28px;min-width:28px;padding:.3rem .4rem}.voice-bar-progress{min-width:60px}}.voice-btn:focus-visible{outline:2px solid #7c63d8;outline-offset:2px}.logo-with-copyright{display:inline-block;position:relative}.logo-with-copyright .logo-image{display:block;height:100%;width:100%}.logo-with-copyright .copyright-symbol{align-items:center;background-color:#000;border-radius:50%;bottom:-2px;box-shadow:0 1px 3px #0000004d;color:#666;display:flex;font-size:12px;font-weight:700;height:17px;justify-content:center;line-height:1;position:absolute;right:-2px;width:17px}@media (prefers-color-scheme:dark){.logo-with-copyright .copyright-symbol{background-color:#000;color:#b0b0b0}}:root{--breakpoint-mobile:320px;--breakpoint-tablet:768px;--breakpoint-desktop:1024px;--breakpoint-large:1440px;--touch-target:44px;--touch-target-large:56px;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--color-primary:#667eea;--color-secondary:#764ba2;--color-accent:#ff6b9d;--color-success:#4caf50;--color-warning:#ff9800;--color-danger:#f44336;--color-text:#333;--color-text-light:#666;--color-bg-light:#f8f3ff;--color-border:#eee}.grid-responsive{grid-gap:1.5rem;grid-gap:var(--spacing-lg);display:grid;gap:1.5rem;gap:var(--spacing-lg);grid-template-columns:1fr}@media (min-width:768px){.grid-responsive{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.grid-responsive{grid-template-columns:repeat(3,1fr)}}.grid-2col{grid-gap:1.5rem;grid-gap:var(--spacing-lg);display:grid;gap:1.5rem;gap:var(--spacing-lg);grid-template-columns:1fr}@media (min-width:768px){.grid-2col{grid-template-columns:repeat(2,1fr)}}.flex-stack{display:flex;flex-direction:column;gap:1rem;gap:var(--spacing-md)}@media (min-width:768px){.flex-stack{flex-direction:row;gap:1.5rem;gap:var(--spacing-lg)}}.container-safe{max-width:100%;padding:1rem;padding:var(--spacing-md)}@media (min-width:768px){.container-safe{margin:0 auto;max-width:90%;padding:1.5rem;padding:var(--spacing-lg)}}@media (min-width:1024px){.container-safe{max-width:1200px}}.page-safe-area{padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));padding:max(var(--spacing-md),env(safe-area-inset-top)) max(var(--spacing-md),env(safe-area-inset-right)) max(var(--spacing-md),env(safe-area-inset-bottom)) max(var(--spacing-md),env(safe-area-inset-left))}.heading-primary{color:#333!important;font-size:1.5rem;font-weight:600;line-height:1.3;margin:0 0 1.5rem;margin:0 0 var(--spacing-lg) 0;text-shadow:0 0 3px #fffc,0 0 10px #ffffff80}@media (min-width:768px){.heading-primary{font-size:2rem}}@media (min-width:1024px){.heading-primary{font-size:2.5rem}}.heading-secondary{color:#333!important;font-size:1.25rem;font-weight:600;line-height:1.4;margin:0 0 1rem;margin:0 0 var(--spacing-md) 0}@media (min-width:768px){.heading-secondary{font-size:1.5rem}}.heading-tertiary{font-size:1rem;font-weight:600;line-height:1.4;margin:0 0 .5rem;margin:0 0 var(--spacing-sm) 0}.body-text{color:#333;color:var(--color-text);font-size:.875rem;line-height:1.5}@media (min-width:768px){.body-text{font-size:1rem}}.body-small{color:#666;color:var(--color-text-light);font-size:.75rem;line-height:1.4}.btn-outline,.btn-primary,.btn-secondary{border:none;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:500;min-height:44px;min-height:var(--touch-target);min-width:44px;min-width:var(--touch-target);padding:1rem 1.5rem;padding:var(--spacing-md) var(--spacing-lg);transition:all .2s ease}.btn-primary{background:#667eea;background:var(--color-primary)}.btn-primary:active,.btn-primary:hover{background:#764ba2;background:var(--color-secondary);box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.btn-secondary{background:#ff6b9d;background:var(--color-accent);color:#fff}.btn-secondary:active,.btn-secondary:hover{background:#ff5281;transform:translateY(-1px)}.btn-outline{background:#0000;border:2px solid #667eea;border:2px solid var(--color-primary);color:#667eea;color:var(--color-primary)}.btn-outline:hover{background:#667eea;background:var(--color-primary);color:#fff}@media (max-width:767px){.btn-outline,.btn-primary,.btn-secondary{font-size:.95rem;padding:1.5rem 2rem;padding:var(--spacing-lg) var(--spacing-xl)}}input,select,textarea{border:1px solid #eee;border:1px solid var(--color-border);border-radius:4px;font-family:inherit;font-size:1rem;min-height:44px;min-height:var(--touch-target);padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-md);transition:all .2s ease}input:focus,select:focus,textarea:focus{border-color:#667eea;border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a;outline:none}@media (max-width:767px){input,select,textarea{font-size:16px}}.card-grid{grid-gap:1.5rem;grid-gap:var(--spacing-lg);display:grid;gap:1.5rem;gap:var(--spacing-lg);grid-template-columns:1fr}@media (min-width:768px){.card-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.card-grid{grid-template-columns:repeat(3,1fr)}}.card{background:#fff;border:1px solid #eee;border:1px solid var(--color-border);border-radius:8px;box-shadow:0 2px 4px #0000000d;padding:1.5rem;padding:var(--spacing-lg);transition:all .2s ease}.card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.section{background:#fff;border-left:4px solid #667eea;border-left:4px solid var(--color-primary);border-radius:8px;margin-bottom:1.5rem;margin-bottom:var(--spacing-lg);padding:1.5rem;padding:var(--spacing-lg)}.section-title{color:#333;color:var(--color-text);font-size:1.1rem;font-weight:600;margin:0 0 1rem;margin:0 0 var(--spacing-md) 0}.form-group{margin-bottom:var(--spacing-lg)}.form-label{font-weight:500;margin-bottom:var(--spacing-sm)}.form-input-wrapper{position:relative}.form-error{color:#f44336;color:var(--color-danger)}.form-error,.form-success{font-size:.85rem;margin-top:.25rem;margin-top:var(--spacing-xs)}.form-success{color:#4caf50;color:var(--color-success)}@media (orientation:landscape) and (max-height:600px){.hide-on-landscape{display:none}.container-safe{padding:.5rem;padding:var(--spacing-sm)}}.hidden-mobile{display:none}@media (min-width:768px){.hidden-mobile{display:block}}.hidden-desktop{display:block}@media (min-width:768px){.hidden-desktop{display:none}}.text-center-mobile{text-align:center}@media (min-width:768px){.text-center-mobile{text-align:left}}.mt-0{margin-top:0}.mt-xs{margin-top:.25rem;margin-top:var(--spacing-xs)}.mt-sm{margin-top:.5rem;margin-top:var(--spacing-sm)}.mt-md{margin-top:1rem;margin-top:var(--spacing-md)}.mt-lg{margin-top:1.5rem;margin-top:var(--spacing-lg)}.mb-0{margin-bottom:0}.mb-xs{margin-bottom:.25rem;margin-bottom:var(--spacing-xs)}.mb-sm{margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:1rem;margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:1.5rem;margin-bottom:var(--spacing-lg)}.p-md{padding:1rem;padding:var(--spacing-md)}.p-lg{padding:1.5rem;padding:var(--spacing-lg)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-color-scheme:dark){:root{--color-text:#e0e0e0;--color-text-light:#b0b0b0;--color-bg-light:#2a2a3e;--color-border:#444}body{background:#1a1a2e;color:#333;color:var(--color-text)}}.chat-page-container{display:flex;flex-direction:column;height:100vh;max-width:100%;overflow:hidden}.chat-header{align-items:flex-end;border-bottom:1px solid var(--color-border);display:flex;gap:.75rem;margin-bottom:var(--spacing-lg);padding:var(--spacing-lg) 0}.chat-header-text{display:flex;flex-direction:column;justify-content:flex-end}.chat-header h2{margin:0}.chat-subtitle{color:var(--color-text-light);font-size:.9rem;margin:.25rem 0 0}.chat-messages{display:flex;flex:1 1;flex-direction:column;gap:var(--spacing-md);min-height:0;overflow-y:auto;padding:var(--spacing-lg)}.chat-empty-state{align-items:center;color:var(--color-text-light);display:flex;height:100%;justify-content:center;text-align:center}.chat-message{animation:slideIn .3s ease;display:flex;margin-bottom:var(--spacing-md)}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-message-user{justify-content:flex-end}.chat-message-assistant{justify-content:flex-start}.message-content{word-wrap:break-word;border-radius:12px;line-height:1.5;max-width:85%;min-width:50px;padding:var(--spacing-md) var(--spacing-lg);width:-webkit-fit-content;width:fit-content}.chat-message-user .message-content{background:linear-gradient(135deg,#667eea,#764ba2);border-bottom-right-radius:4px;color:#fff}.chat-message-assistant .message-content{background:var(--color-bg-light);border:1px solid #e0d5f7;border-bottom-left-radius:4px;color:var(--color-text)}@media (max-width:767px){.message-content{font-size:.9rem;max-width:90%;min-width:50px;padding:var(--spacing-md) var(--spacing-md);width:-webkit-fit-content;width:fit-content}}.cards-container{margin-top:var(--spacing-md);overflow-x:auto;overflow-y:hidden;scrollbar-color:#9370db #0000;scrollbar-width:thin}.cards-container::-webkit-scrollbar{height:6px}.cards-container::-webkit-scrollbar-track{background:#0000}.cards-container::-webkit-scrollbar-thumb{background:#9370db;border-radius:3px}.cards-container::-webkit-scrollbar-thumb:hover{background:#7b5cb8}.cards-scroll-wrapper{display:flex;gap:10px;min-width:-webkit-min-content;min-width:min-content;padding-bottom:4px}.card-item{align-items:center;display:flex;flex-direction:column;flex-shrink:0;gap:6px}.card-image{border-radius:8px;box-shadow:0 2px 8px #00000026;height:168px;object-fit:cover;transition:transform .2s ease;width:120px}.card-image:hover{transform:scale(1.02)}.card-image.reversed{transform:rotate(180deg)}.card-image.reversed:hover{transform:scale(1.02) rotate(180deg)}.card-label{word-wrap:break-word;color:var(--color-text);font-size:.85rem;font-weight:500;line-height:1.3;max-width:120px;text-align:center}@media (max-width:767px){.card-image{height:140px;width:100px}.card-label{font-size:.75rem;max-width:100px}.cards-scroll-wrapper{gap:8px}}.chat-input-form{background:#fff;border-radius:8px 8px 0 0;border-top:1px solid var(--color-border);box-sizing:border-box;display:flex;flex-shrink:0;gap:var(--spacing-sm);padding:var(--spacing-lg);width:100%}.chat-input{border:1px solid var(--color-border);border-radius:24px;flex:1 1;font-size:1rem;height:auto;max-height:100px;min-width:0;padding:var(--spacing-md) var(--spacing-lg);resize:none}.chat-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a;outline:none}.chat-input-form button{border-radius:24px;min-width:80px}@media (max-width:767px){.chat-input-form{flex-direction:row;gap:var(--spacing-sm);padding:var(--spacing-md)}.chat-input{font-size:16px}.chat-input-form button{font-size:.9rem;min-width:60px;padding:var(--spacing-md)}}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:#0000}.chat-messages::-webkit-scrollbar-thumb{background:#9370db;border-radius:3px}.chat-messages::-webkit-scrollbar-thumb:hover{background:#7b5cb8}.personal-info-page{display:flex;flex-direction:column;gap:var(--spacing-lg);padding-bottom:var(--spacing-xl)}.info-header{margin-bottom:var(--spacing-lg)}.info-header h2{margin-bottom:var(--spacing-xs)}.info-subtitle{color:var(--color-text-light);font-size:.95rem;margin:0}.info-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-section{background:#fff;border-left:4px solid #9370db;border-radius:8px;box-shadow:0 2px 4px #0000000d;padding:var(--spacing-lg)}.form-section h3{color:var(--color-text);margin-bottom:var(--spacing-lg);margin-top:0}.form-grid{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:1fr}@media (min-width:768px){.form-grid{grid-template-columns:repeat(2,1fr)}}.form-group{gap:var(--spacing-sm)}.form-label{color:var(--color-text);display:flex;font-size:.95rem;gap:.25rem}.required{color:#f44336;font-weight:700}.optional{color:var(--color-text-light);font-size:.85rem;font-weight:400}.form-input{border:1px solid var(--color-border);border-radius:4px;font-family:inherit;font-size:.95rem;min-height:var(--touch-target);padding:var(--spacing-md) var(--spacing-md);transition:all .2s ease}.form-input:focus{border-color:#9370db;box-shadow:0 0 0 3px #9370db1a;outline:none}.form-input-error{background-color:#ffebee;border-color:#f44336!important;border-width:2px;box-shadow:0 0 0 3px #f443361a!important}.form-input-error:focus{border-color:#d32f2f!important;box-shadow:0 0 0 3px #f4433633!important}.field-error-message{align-items:center;animation:slideInDown .2s ease;color:#f44336;display:flex;font-size:.8rem;font-weight:500;gap:.25rem;margin-top:-.25rem}.field-error-message:before{content:"⚠️";font-size:.75rem}.form-select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em;padding-right:2.5rem}.form-hint,.form-input-small{font-size:.85rem}.form-hint{background-color:#f5f5f5;border-left:3px solid #9370db;border-radius:2px;color:#555;font-style:italic;line-height:1.4;margin:var(--spacing-xs) 0 0 0;padding:var(--spacing-xs) var(--spacing-sm)}.form-error-alert{background:#ffebee;border-left:4px solid #f44336;color:#c62828}.form-error-alert,.form-success-alert{animation:slideInDown .3s ease;border-radius:4px;margin-bottom:var(--spacing-lg);padding:var(--spacing-md) var(--spacing-lg)}.form-success-alert{background:#e8f5e9;border-left:4px solid #4caf50;color:#2e7d32}.location-warning-alert{animation:slideInDown .3s ease;background:#fff8e1;border-left:4px solid #ff9800;border-radius:4px;color:#e65100;margin-bottom:var(--spacing-lg);padding:var(--spacing-md) var(--spacing-lg)}.location-warning-header{align-items:center;display:flex;font-size:.95rem;font-weight:600;gap:.5rem;margin-bottom:.75rem}.location-warning-icon{font-size:1.25rem}.location-warning-message{font-size:.9rem;line-height:1.5;margin:.5rem 0 1rem}.location-warning-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.btn-primary-small,.btn-secondary-small{border:none;border-radius:4px;cursor:pointer;font-size:.85rem;font-weight:600;padding:.5rem 1rem;transition:all .2s ease}.btn-primary-small{background:#ff9800;color:#fff}.btn-primary-small:hover{background:#f57c00;box-shadow:0 2px 8px #ff98004d;transform:translateY(-1px)}.btn-secondary-small{background:#fff;border:1px solid #ff9800;color:#e65100}.btn-secondary-small:hover{background:#fff3e0;box-shadow:0 2px 8px #ff980033;transform:translateY(-1px)}.floating-save-button{align-items:center;background:linear-gradient(135deg,#7c63d8,#9370db);border:none;border-radius:50%;bottom:2rem;box-shadow:0 4px 20px #7c63d866;color:#fff;cursor:pointer;display:flex;flex-direction:column;font-size:.75rem;font-weight:700;gap:.25rem;height:80px;justify-content:center;position:fixed;right:2rem;touch-action:manipulation;transition:all .3s ease;width:80px;z-index:100}.floating-save-button:hover:not(:disabled){box-shadow:0 6px 28px #7c63d899;transform:scale(1.1)}.floating-save-button:active:not(:disabled){transform:scale(.95)}.floating-save-button:disabled{cursor:not-allowed;opacity:.7}.bubble-icon{font-size:1.5rem}.bubble-text{font-size:.7rem;line-height:1;max-width:60px;text-align:center}.floating-feedback-bubble{animation:slideInUp .3s ease;background:#fff;border-radius:50px;bottom:100px;box-shadow:0 4px 20px #2e7d324d;color:#2e7d32;font-size:.9rem;font-weight:600;padding:1rem 1.5rem;position:fixed;right:2rem;z-index:99}.floating-feedback-bubble.floating-success{background:#e8f5e9;border:2px solid #4caf50}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:767px){.personal-info-page{padding-bottom:120px}.form-section{padding:var(--spacing-md)}.form-input{font-size:16px}.form-grid{gap:var(--spacing-md)}.form-label{font-size:.9rem}.floating-save-button{bottom:1.5rem;height:70px;right:1.5rem;width:70px}.bubble-icon{font-size:1.25rem}.bubble-text{font-size:.65rem}.floating-feedback-bubble{bottom:85px;right:1.5rem}}@media (min-width:768px) and (max-width:1024px){.personal-info-page{padding-bottom:var(--spacing-xl)}.floating-save-button{height:75px;width:75px}}.form-input:focus,.form-select:focus{outline:2px solid #9370db;outline-offset:2px}.floating-save-button:focus{outline:3px solid #9370db;outline-offset:2px}@media (prefers-reduced-motion:reduce){.field-error-message,.floating-feedback-bubble,.floating-save-button,.form-error-alert,.form-success-alert{animation:none;transition:none}}@media (prefers-contrast:more){.form-input-error{border-width:3px}.floating-save-button{border:3px solid #fff}}.zodiac-wheel-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:var(--spacing-lg);padding:var(--spacing-lg)}.wheel-title{color:var(--color-text);font-size:1.4rem;font-weight:700;margin:0 0 var(--spacing-xs) 0;text-align:center}.wheel-subtitle{color:var(--color-text-light);font-size:.9rem;margin:0 0 var(--spacing-lg) 0;text-align:center}.wheel-wrapper{align-items:center;display:flex;justify-content:center;margin-bottom:var(--spacing-lg);margin-left:auto;margin-right:auto;max-width:600px}.zodiac-wheel{filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));height:auto;max-width:450px;width:100%}.ring-bg{fill:none;stroke-width:0}.ring-1{fill:#fafbff}.ring-2{fill:#fff}.ring-3{fill:#f3e5f5}.ring-4{fill:#e8eaf6}.ring-5{fill:#e0f2f1}.ring-6{fill:#fff9e6}.radial-divider{stroke:#d4c5f9;stroke-width:1.5;opacity:.6}.horizon-line-horizontal{stroke:#000;stroke-width:4;stroke-dasharray:none;opacity:1}.sign-name-curved{fill:#4a3f7a;font-size:10px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase}.ring-1-text.is-rising .sign-name-curved{fill:#9370db;font-size:11px;font-weight:900}.ring-2-text{text-anchor:middle;dominant-baseline:middle;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1));font-size:18px}.ring-2-text.is-rising{filter:drop-shadow(0 2px 4px rgba(147,112,219,.3));font-size:20px}.planet-name-curved{font-size:9px}.planet-name-curved,.ring-3-text{fill:#6b5b95;font-weight:600;letter-spacing:.3px;text-transform:capitalize}.ring-3-text{text-anchor:middle;dominant-baseline:middle;font-size:10px}.ring-3-text.is-rising{fill:#9370db;font-size:11px;font-weight:700}.ring-4-text{fill:#5a4d75;font-size:9px;font-weight:600;letter-spacing:.3px;text-transform:capitalize}.ring-4-text,.ring-5-text{text-anchor:middle;dominant-baseline:middle}.ring-5-text{fill:#4a3f7a;font-size:11px;font-weight:700;letter-spacing:.5px}.ring-5-text.is-rising{fill:#9370db;font-size:12px;font-weight:900}.sun-emoji{text-anchor:middle;dominant-baseline:middle;filter:drop-shadow(0 2px 6px rgba(147,112,219,.4));font-size:42px}@media (max-width:480px){.zodiac-wheel-container{margin-bottom:var(--spacing-md);padding:var(--spacing-md)}.wheel-title{font-size:1.2rem;margin-bottom:var(--spacing-xs)}.wheel-subtitle{font-size:.85rem;margin-bottom:var(--spacing-md)}.zodiac-wheel{max-width:350px}.sign-name-curved{font-size:8px;letter-spacing:.8px}.ring-1-text.is-rising .sign-name-curved{font-size:9px}.ring-2-text{font-size:14px}.ring-2-text.is-rising{font-size:16px}.ring-3-text{font-size:8px}.ring-3-text.is-rising{font-size:9px}.ring-4-text{font-size:7px}.ring-5-text{font-size:9px}.ring-5-text.is-rising{font-size:10px}.sun-emoji{font-size:32px}.radial-divider{stroke-width:1}.horizon-line-horizontal{stroke-width:1.5}}@media (max-width:767px){.zodiac-wheel{max-width:400px}}@media (min-width:768px){.zodiac-wheel-container{padding:var(--spacing-xl)}.wheel-wrapper{max-width:100%}.zodiac-wheel{max-width:495px}}@media (prefers-color-scheme:dark){.zodiac-wheel-container{background:#1e1b29;box-shadow:0 2px 8px #0000004d}.ring-1{fill:#2a2738}.ring-2{fill:#242332}.ring-3{fill:#3a3545}.ring-4{fill:#33305a}.ring-5{fill:#2d3a39}.ring-6{fill:#3a3a2a}.radial-divider{stroke:#6b5b95}.horizon-line-horizontal{stroke:#8b7ba8}.sign-name-curved{fill:#e8dff8}.ring-1-text.is-rising .sign-name-curved{fill:#c9a8e8}.ring-2-text{filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.ring-2-text.is-rising{filter:drop-shadow(0 2px 4px rgba(201,168,232,.5))}.ring-3-text{fill:#d9c9f0}.ring-3-text.is-rising{fill:#c9a8e8}.ring-4-text{fill:#c9bde8}.ring-5-text{fill:#d9c9f0}.ring-5-text.is-rising{fill:#c9a8e8}.sun-emoji{filter:drop-shadow(0 2px 6px rgba(201,168,232,.5))}}@media (prefers-reduced-motion:reduce){.zodiac-wheel{animation:none}}@media print{.zodiac-wheel-container{box-shadow:none;page-break-inside:avoid}}.sign-page{display:flex;flex-direction:column;gap:var(--spacing-lg);padding-bottom:var(--spacing-xl)}.sign-header{align-items:flex-end;display:flex;gap:.75rem;margin-bottom:var(--spacing-md)}.sign-header-text{display:flex;flex-direction:column;justify-content:flex-end}.sign-header h2{margin:0}.sign-subtitle{color:var(--color-text-light);font-size:.95rem;margin:.25rem 0 0}.error-container,.loading-container{align-items:center;background:#fff;border-radius:8px;display:flex;flex-direction:column;justify-content:center;min-height:200px;padding:var(--spacing-lg);text-align:center}.sign-cards-section{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(3,1fr);margin-bottom:var(--spacing-lg)}.sign-card{background:#fff;border:2px solid #0000;border-radius:8px;box-shadow:0 2px 4px #0000000d;padding:var(--spacing-md);text-align:center;transition:all .2s ease}.sign-card-icon{font-size:2.5rem;margin-bottom:var(--spacing-sm)}.sign-card-title{color:var(--color-text-light);font-size:.85rem;font-weight:600;letter-spacing:.5px;margin:0 0 var(--spacing-xs) 0;text-transform:uppercase}.sign-card-value{color:var(--color-text);font-size:1.5rem;font-weight:700;margin:0 0 var(--spacing-xs) 0}.sign-card-degree{color:#9370db;font-size:1.1rem;font-weight:600;margin:0 0 var(--spacing-sm) 0}.sign-card-header{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-xs);justify-content:center;margin:var(--spacing-xs) 0 var(--spacing-sm) 0}.sign-emoji{font-size:1.2rem}.sign-name{font-size:1rem}.sign-house,.sign-name{color:var(--color-text);font-weight:700}.sign-house{font-size:1.1rem;min-width:1.2rem;text-align:center}.sign-degree{color:#9370db;font-size:1rem;font-weight:600}.sign-card-meaning{color:var(--color-text-light);font-size:.8rem;font-style:italic;margin:0}.sun-sign-card{background:#fffbf0;border-left:4px solid #ffc107}.sun-sign-card:hover{box-shadow:0 4px 12px #ffc10733;transform:translateY(-2px)}.moon-sign-card{background:#f3e5f5;border-left:4px solid #9c27b0}.moon-sign-card:hover{box-shadow:0 4px 12px #9c27b033;transform:translateY(-2px)}.rising-sign-card{background:#f0f7ff;border-left:4px solid #2196f3}.rising-sign-card:hover{box-shadow:0 4px 12px #2196f333;transform:translateY(-2px)}.section-divider{background:linear-gradient(90deg,#0000,#9370db,#0000);height:2px;margin:var(--spacing-lg) 0}.zodiac-details-section{background:#fff;border-left:4px solid #9370db;border-radius:8px;box-shadow:0 2px 4px #0000000d;padding:var(--spacing-lg)}.zodiac-header{border-bottom:1px solid #eee;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md)}.zodiac-header h2{align-items:center;color:var(--color-text);display:flex;font-size:1.8rem;gap:var(--spacing-sm);margin:0}.zodiac-symbol{color:#9370db;font-size:1.2rem;margin-left:auto}.info-grid{grid-gap:var(--spacing-md);background:#f8f8f8;border-radius:6px;display:grid;gap:var(--spacing-md);grid-template-columns:repeat(3,1fr);margin-bottom:var(--spacing-lg);padding:var(--spacing-md)}.info-item span{font-size:1.1rem}.detail-section{border-bottom:1px solid #eee;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md)}.detail-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.detail-section h4{align-items:center;color:var(--color-text);display:flex;font-size:1.1rem;gap:var(--spacing-sm);margin:0 0 var(--spacing-sm) 0}.detail-section p{color:var(--color-text);font-size:.95rem;line-height:1.6;margin:var(--spacing-sm) 0}.italic-text{color:var(--color-text-light);font-style:italic}.detail-section ul{list-style:none;margin:var(--spacing-sm) 0;padding-left:1.5rem}.detail-section li{color:var(--color-text);font-size:.95rem;margin:var(--spacing-xs) 0;padding-left:1.5rem;position:relative}.detail-section li:before{color:#9370db;content:"✨";left:0;position:absolute}.strength-list li:before{color:#4caf50;content:"✓"}.challenge-list li:before{color:#ff9800;content:"◆"}.lucky-section{background:#f8f8f8;border:1px solid #eee;border-radius:6px;padding:var(--spacing-md)}.lucky-grid{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(2,1fr);margin-top:var(--spacing-sm)}.lucky-item{background:#fff;border-left:3px solid #9370db;border-radius:4px;display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-sm)}.lucky-item strong{color:var(--color-text-light);font-size:.85rem;letter-spacing:.5px;text-transform:uppercase}.lucky-item span{color:var(--color-text);font-size:.95rem;font-weight:500}.mythology-section{background:#fafafa}.mythology-section,.seasonal-section{border-left:3px solid #9370db;border-radius:6px;padding:var(--spacing-md)}.seasonal-section{background:#f8f8f8}@media (max-width:767px){.sign-page{padding-bottom:var(--spacing-lg)}.sign-cards-section{gap:var(--spacing-sm);grid-template-columns:1fr}.sign-card{padding:var(--spacing-md)}.sign-card-icon{font-size:2rem}.sign-card-value{font-size:1.3rem}.info-grid,.lucky-grid{gap:var(--spacing-sm);grid-template-columns:1fr}.zodiac-details-section{padding:var(--spacing-md)}.zodiac-header h2{font-size:1.5rem}.detail-section{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm)}}@media (min-width:768px) and (max-width:1023px){.sign-cards-section{gap:var(--spacing-md)}.info-grid,.sign-cards-section{grid-template-columns:repeat(2,1fr)}.lucky-grid{grid-template-columns:2}}@media (prefers-reduced-motion:reduce){.btn-secondary,.sign-card{transition:none}}.moon-phase-page{display:flex;flex-direction:column;gap:var(--spacing-lg);padding-bottom:var(--spacing-xl)}.moon-phase-header{align-items:flex-end;display:flex;gap:.75rem;margin-bottom:var(--spacing-md)}.moon-phase-header-text{display:flex;flex-direction:column;justify-content:flex-end}.moon-phase-header h2{margin:0}.moon-phase-subtitle{color:var(--color-text-light);font-size:.95rem;margin:.25rem 0 0}.moon-phase-display{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-bottom:var(--spacing-lg);padding:var(--spacing-lg);text-align:center}.moon-phase-emoji{animation:glow 2s ease-in-out infinite;font-size:4rem;margin-bottom:var(--spacing-md)}@keyframes glow{0%,to{text-shadow:0 0 10px #9c27b04d}50%{text-shadow:0 0 20px #9c27b080}}.moon-phase-name{color:var(--color-text);font-size:1.3rem;font-weight:700;margin:var(--spacing-sm) 0}.moon-phase-date{color:var(--color-text-light);font-size:.9rem;margin:var(--spacing-sm) 0 0 0}.moon-phase-birth-chart{margin-bottom:var(--spacing-lg)}.chart-card{background:#fff;border-left:4px solid #0000;border-radius:8px;box-shadow:0 2px 4px #0000000d;transition:all .2s ease}.chart-card:hover{box-shadow:0 4px 12px #0000001a}.chart-icon{display:block;font-size:1.8rem;margin-bottom:var(--spacing-sm)}.chart-sign{font-size:1.2rem;margin:0 0 var(--spacing-xs) 0}.chart-degree{color:#9370db;font-size:.95rem}.sun-card{background:#fffbf0;border-left-color:#ffc107}.moon-card{background:#f3e5f5;border-left-color:#9c27b0}.rising-card{background:#f0f7ff;border-left-color:#2196f3}.moon-phase-content.loading{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;display:flex;flex-direction:column;justify-content:center;min-height:300px;padding:var(--spacing-xl)}.moon-phase-content.loading p{color:var(--color-text-light);font-size:1rem;text-align:center}.moon-phase-content.error{text-align:center}.moon-phase-content,.moon-phase-content.error{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;padding:var(--spacing-lg)}.moon-phase-insight{background:#f8f3ff;border-left:4px solid #9c27b0;border-radius:8px;margin-bottom:var(--spacing-lg);padding:var(--spacing-lg)}.moon-phase-timestamp{border-top:1px solid #eee;margin-top:var(--spacing-md);padding-top:var(--spacing-md);text-align:right}.text-muted{color:var(--color-text-light);font-size:.8rem;margin:0}.lunar-cycle{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-top:var(--spacing-lg);padding:var(--spacing-lg)}.lunar-cycle h3{color:var(--color-text);font-size:1.1rem;font-weight:600;margin-bottom:var(--spacing-md);margin-top:0}.moon-phases-grid{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(4,1fr);text-align:center}.moon-phase-item{background:#f8f8f8;border:2px solid #e0e0e0;border-radius:8px;padding:var(--spacing-md);transition:all .2s ease}.moon-phase-item.active{background:#f8f3ff;border-color:#9c27b0;box-shadow:0 2px 8px #9c27b026}.moon-emoji{font-size:2rem;margin-bottom:var(--spacing-sm)}.phase-name{word-wrap:break-word;color:var(--color-text);font-size:.75rem;font-weight:500;margin:0}.sun-sign-info{border-top:2px solid #eee}.sun-sign-header h3{font-size:1.3rem}.sun-info-grid{background:#f8f8f8;border-radius:6px}.info-item strong{font-size:.85rem}.info-item span,.sun-detail h4{font-size:1rem}.sun-detail p{font-size:.95rem;line-height:1.6}.moon-phase-disclaimer,.moon-phase-info{background:#f5f5f5;border-left:3px solid #9370db;border-radius:6px;margin-top:var(--spacing-lg);padding:var(--spacing-md)}.moon-phase-disclaimer p,.moon-phase-info p{color:var(--color-text-light);font-size:.85rem;font-style:italic;margin:0}@media (max-width:767px){.moon-phase-page{padding-bottom:var(--spacing-lg)}.moon-phase-display{margin-bottom:var(--spacing-md);padding:var(--spacing-md)}.moon-phase-emoji{font-size:3rem;margin-bottom:var(--spacing-sm)}.moon-phase-name{font-size:1.1rem}.birth-chart-cards{gap:var(--spacing-sm);grid-template-columns:1fr}.chart-card{padding:var(--spacing-sm)}.chart-icon{font-size:1.5rem;margin-bottom:var(--spacing-xs)}.chart-sign{font-size:1rem;margin:0 0 var(--spacing-xs) 0}.chart-degree{font-size:.85rem}.moon-phase-insight{padding:var(--spacing-md)}.moon-phases-grid{gap:var(--spacing-sm);grid-template-columns:repeat(4,1fr)}.moon-phase-item{padding:var(--spacing-sm)}.moon-emoji{font-size:1.5rem;margin-bottom:var(--spacing-xs)}.phase-name{font-size:.65rem}.sun-info-grid{gap:var(--spacing-sm);grid-template-columns:1fr}.lunar-cycle,.moon-phase-content{padding:var(--spacing-md)}.markdown-p{font-size:.9rem}.sun-sign-header h3{font-size:1.1rem}}@media (min-width:768px) and (max-width:1023px){.birth-chart-cards{gap:var(--spacing-md)}.birth-chart-cards,.sun-info-grid{grid-template-columns:repeat(2,1fr)}.moon-phases-grid{grid-template-columns:repeat(4,1fr)}}@media (prefers-reduced-motion:reduce){.chart-card,.moon-phase-emoji,.spinner{animation:none;transition:none}}.compliance-modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:9999}.compliance-modal{animation:slideInDown .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;max-height:90vh;max-width:600px;overflow-y:auto;padding:40px;width:100%}@keyframes slideInDown{0%{opacity:0;transform:translateY(-50px)}to{opacity:1;transform:translateY(0)}}.compliance-header{border-bottom:2px solid #f5f5f5;margin-bottom:30px;padding-bottom:20px}.compliance-header h2{align-items:center;color:#333;display:flex;font-size:24px;font-weight:600;gap:10px;margin:0 0 10px}.compliance-subtitle{color:#666;font-size:14px;line-height:1.5;margin:0}.compliance-error-message{background:#fee;border-left:4px solid #c33;border-radius:6px;color:#c33;font-size:14px;margin-bottom:20px;padding:12px 16px}.compliance-content{margin:20px 0}.compliance-section{background:#f9f9f9;border:1px solid #e5e5e5;border-radius:8px;margin-bottom:20px;padding:20px}.section-header{flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:15px}.section-header h3{color:#333;font-size:16px;font-weight:600;margin:0}.version-badge{background:#fff3cd;border-radius:12px;color:#856404;font-weight:500;padding:4px 12px}.compliance-text{margin-bottom:15px}.compliance-text p{color:#666;font-size:14px;line-height:1.5;margin:0 0 10px}.action-buttons{display:flex;flex-wrap:wrap;gap:10px;margin:15px 0}.btn-link{align-items:center;background:#f0f0f0;border:1px solid #ddd;border-radius:6px;color:#06c;cursor:pointer;display:inline-flex;font-weight:500;gap:6px;padding:10px 16px;text-decoration:none;transition:all .2s}.btn-link:hover{background:#e8e8e8;border-color:#06c}.compliance-checkbox-label{align-items:flex-start;cursor:pointer;display:flex;gap:12px;margin-bottom:12px}.compliance-checkbox-label input[type=checkbox]{accent-color:#06c;cursor:pointer;height:20px;margin-top:2px;min-width:20px;width:20px}.compliance-checkbox-label .checkbox-text{color:#333;font-size:14px;line-height:1.4}.btn-accept{background:#06c;border:none;border-radius:6px;color:#fff;cursor:pointer;display:block;font-size:14px;font-weight:600;margin-top:12px;padding:10px 16px;transition:background .2s;width:100%}.btn-accept:hover:not(:disabled){background:#0052a3}.btn-accept:disabled{background:#ccc;cursor:not-allowed;opacity:.6}.accepted-badge{align-items:center;background:#d4edda;border:1px solid #c3e6cb;border-radius:6px;color:#155724;display:inline-flex;font-size:13px;font-weight:500;gap:6px;margin-top:12px;padding:8px 12px}.compliance-actions{border-top:1px solid #e5e5e5;margin-top:30px;padding-top:20px}.btn-continue{background:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;display:block;font-size:16px;font-weight:600;padding:12px 16px;transition:background .2s;width:100%}.btn-continue:hover{background:#218838}.compliance-help{border-top:1px solid #e5e5e5;color:#666;font-size:13px;line-height:1.6;margin-top:25px;padding-top:20px}.compliance-help p{margin:10px 0}.compliance-help strong{color:#333}@media (max-width:600px){.compliance-modal{border-radius:8px;padding:20px}.compliance-header h2{font-size:18px}.section-header{align-items:flex-start;flex-direction:column}.compliance-modal-overlay{padding:10px}}@media (max-width:400px){.compliance-modal{padding:15px}.compliance-header h2{font-size:16px}.compliance-text p{font-size:13px}.btn-accept,.btn-continue{font-size:13px;padding:10px 12px}}.horoscope-page{display:flex;flex-direction:column;gap:var(--spacing-lg);padding-bottom:var(--spacing-xl)}.horoscope-header{align-items:flex-end;display:flex;gap:.75rem;margin-bottom:var(--spacing-md)}.horoscope-header-text{display:flex;flex-direction:column;justify-content:flex-end}.horoscope-header h2{margin:0}.horoscope-subtitle{color:var(--color-text-light);font-size:var(--font-size-base);margin:.25rem 0 0}.horoscope-content{background:var(--color-bg-white);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);padding:var(--spacing-lg)}.horoscope-metadata{border-bottom:1px solid var(--color-border-light);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);text-align:center}.horoscope-range{color:var(--color-text-light);font-size:var(--font-size-xs);font-weight:600;letter-spacing:.5px;margin:0;text-transform:uppercase}.horoscope-date{color:var(--color-text);font-size:var(--font-size-base);margin:var(--spacing-xs) 0 0 0}@media (max-width:767px){.horoscope-page{padding-bottom:var(--spacing-lg)}.horoscope-content{padding:var(--spacing-md)}}.horoscope-toggle{background:var(--color-bg-white);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);display:flex;gap:var(--spacing-sm);padding:var(--spacing-md)}.toggle-btn{background:var(--color-bg-light);border:var(--border-btn) solid #0000;border-radius:var(--border-radius-md);color:var(--color-text-light);cursor:pointer;flex:1 1;font-size:var(--font-size-base);font-weight:600;min-height:var(--touch-target);padding:var(--spacing-md) var(--spacing-lg);transition:var(--transition-fast)}.toggle-btn:hover:not(:disabled){background:var(--color-btn-hover);color:var(--color-text)}.toggle-btn.active{background:var(--color-primary-gradient);border-color:var(--color-primary-light);color:#fff}.toggle-btn:disabled{cursor:not-allowed;opacity:.6}.btn-secondary{background:var(--color-bg-lightest);border:var(--border-btn) solid var(--color-accent-info);border-radius:var(--border-radius-sm);color:var(--color-accent-info);font-size:var(--font-size-base);transition:var(--transition-fast)}.btn-secondary:hover{background:var(--color-accent-info)}.horoscope-toggle-btn{background:var(--color-accent-purple);border:none;border-radius:var(--border-radius-sm);color:#fff;cursor:pointer;font-size:var(--font-size-body);font-weight:500;margin-top:var(--spacing-lg);min-height:var(--touch-target);padding:var(--spacing-md) var(--spacing-lg);transition:var(--transition-fast)}.horoscope-toggle-btn:hover{background:#6b52c1}.horoscope-toggle-btn:active{transform:scale(.98)}.btn-secondary:focus,.horoscope-toggle-btn:focus,.toggle-btn:focus{outline:2px solid var(--color-accent-purple);outline-offset:2px}@media (prefers-reduced-motion:reduce){.horoscope-toggle-btn,.toggle-btn{transition:none}}.horoscope-birth-chart{margin-bottom:var(--spacing-lg)}.birth-chart-cards{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(3,1fr)}.chart-card{background:var(--color-bg-white);border-left:var(--border-card) solid #0000;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);padding:var(--spacing-md);text-align:center;transition:var(--transition-fast)}.chart-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.chart-header{align-items:center;display:flex;gap:var(--spacing-xs);justify-content:center;margin-bottom:var(--spacing-xs)}.chart-icon{display:inline-block;font-size:var(--font-size-icon);margin:0}.chart-sign{font-size:var(--font-size-lg);font-weight:700;margin:0}.chart-degree{color:var(--color-accent-purple);font-size:var(--font-size-base);font-weight:600;margin:0;text-align:center}.sun-card{background:var(--color-bg-sun-light);border-left-color:var(--color-accent-sun)}.moon-card{background:var(--color-bg-moon-light);border-left-color:var(--color-accent-moon)}.rising-card{background:var(--color-bg-rising-light);border-left-color:var(--color-accent-rising)}.sun-sign-info{border-top:2px solid var(--color-border-light);margin-top:var(--spacing-lg);padding-top:var(--spacing-lg)}.sun-sign-header h3{align-items:center;color:var(--color-text);display:flex;font-size:var(--font-size-xl);gap:var(--spacing-sm);margin:0 0 var(--spacing-md) 0}.sun-info-grid{grid-gap:var(--spacing-md);background:var(--color-bg-lighter);border-radius:var(--border-radius-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(3,1fr);margin-bottom:var(--spacing-lg);padding:var(--spacing-md)}.info-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.info-item strong{color:var(--color-text-light);font-size:var(--font-size-xs);letter-spacing:.5px;text-transform:uppercase}.info-item span{color:var(--color-text);font-size:var(--font-size-body);font-weight:600}.sun-detail{margin-bottom:var(--spacing-md)}.sun-detail h4{color:var(--color-text);font-size:var(--font-size-body);margin:0 0 var(--spacing-sm) 0}.sun-detail p{color:var(--color-text-light);font-size:var(--font-size-base);font-style:italic;line-height:var(--line-height-normal);margin:0}@media (max-width:767px){.birth-chart-cards,.sun-info-grid{gap:var(--spacing-sm);grid-template-columns:1fr}.sun-sign-header h3{font-size:var(--font-size-md)}}@media (min-width:768px) and (max-width:1023px){.birth-chart-cards{gap:var(--spacing-md)}.birth-chart-cards,.sun-info-grid{grid-template-columns:repeat(2,1fr)}}@media (prefers-reduced-motion:reduce){.chart-card{animation:none;transition:none}}.horoscope-text{background:var(--color-bg-purple-light);border-left:var(--border-card) solid var(--color-accent-moon);border-radius:var(--border-radius-lg);margin-bottom:var(--spacing-lg);padding:var(--spacing-lg)}.markdown-p{font-size:var(--font-size-base);line-height:var(--line-height-relaxed)}.markdown-strong{color:var(--color-accent-purple)}.markdown-li{font-size:var(--font-size-base);line-height:var(--line-height-relaxed)}.horoscope-disclaimer{background:var(--color-bg-light);border-left:var(--border-accent) solid var(--color-accent-purple);border-radius:var(--border-radius-md);margin-top:var(--spacing-lg);padding:var(--spacing-md)}.horoscope-disclaimer p{color:var(--color-text-light);font-size:var(--font-size-xs);font-style:italic;margin:0}@media (max-width:767px){.horoscope-text{padding:var(--spacing-md)}.markdown-content{font-size:.9rem}}.horoscope-content.loading{align-items:center;background:var(--color-bg-white);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;justify-content:center;min-height:300px;padding:var(--spacing-xl)}.spinner{font-size:var(--font-size-spinner)}.horoscope-content.loading p{color:var(--color-text-light);font-size:var(--font-size-body);text-align:center}.horoscope-content.error{background:var(--color-bg-white);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);padding:var(--spacing-lg);text-align:center}.error-message{color:var(--color-accent-error)}.exit-prompt{align-items:center;animation:fadeInDown var(--transition-smooth);background:var(--color-bg-success-light);border:var(--border-btn) solid var(--color-accent-success);border-radius:var(--border-radius-md);box-shadow:var(--shadow-success-sm);color:var(--color-success-text);cursor:pointer;display:flex;font-family:inherit;font-size:var(--font-size-sm);font-weight:600;gap:var(--exit-prompt-gap);padding:.75rem 1rem;position:absolute;right:1rem;top:4rem;transition:var(--transition-fast);z-index:99}.exit-prompt:hover{background:#c3e6cb;border-color:var(--color-accent-success-dark);box-shadow:var(--shadow-success-md);transform:translateY(-2px)}.exit-prompt:active{box-shadow:var(--shadow-success-sm-active);transform:translateY(0)}.exit-prompt:focus{outline:2px solid var(--color-success-text);outline-offset:2px}.exit-arrow{animation:pulse 1.5s ease-in-out infinite;display:inline-block;flex-shrink:0}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{transform:translateX(0)}50%{transform:translateX(4px)}}@media (prefers-reduced-motion:reduce){.spinner{transition:none}.exit-arrow,.exit-prompt,.spinner{animation:none}}:root{--color-primary-gradient:linear-gradient(135deg,#667eea,#764ba2);--color-primary-light:#667eea;--color-primary-dark:#764ba2;--color-accent-purple:#9370db;--color-accent-sun:#ffc107;--color-accent-moon:#9c27b0;--color-accent-rising:#2196f3;--color-accent-error:#d32f2f;--color-accent-success:#28a745;--color-accent-success-dark:#1e7e34;--color-accent-info:#4a90e2;--color-bg-white:#fff;--color-bg-light:#f5f5f5;--color-bg-lighter:#f8f8f8;--color-bg-lightest:#f0f4ff;--color-bg-purple-light:#f8f3ff;--color-bg-sun-light:#fffbf0;--color-bg-moon-light:#f3e5f5;--color-bg-rising-light:#f0f7ff;--color-bg-success-light:#d4edda;--color-border-light:#eee;--color-btn-hover:#efefef;--color-success-text:#155724;--shadow-sm:0 2px 4px #0000000d;--shadow-md:0 4px 12px #0000001a;--shadow-success-sm:0 2px 8px #28a74533;--shadow-success-md:0 4px 12px #28a74559;--shadow-success-sm-active:0 2px 6px #28a74540;--border-radius-sm:4px;--border-radius-md:6px;--border-radius-lg:8px;--transition-fast:all 0.2s ease;--transition-smooth:all 0.6s ease-out;--font-size-xs:0.85rem;--font-size-sm:0.9rem;--font-size-base:0.95rem;--font-size-body:1rem;--font-size-md:1.1rem;--font-size-lg:1.2rem;--font-size-xl:1.3rem;--font-size-icon:1.8rem;--font-size-spinner:3rem;--line-height-normal:1.6;--line-height-relaxed:1.8;--border-accent:3px;--border-card:4px;--border-btn:2px;--exit-prompt-gap:0.5rem}.toggle-brief-btn{background-color:#7c63d8;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;margin-top:1.5rem;padding:.75rem 1.5rem;transition:background-color .2s ease}.toggle-brief-btn:hover{background-color:#6b52c1}.toggle-brief-btn:focus{outline:2px solid #9370db;outline-offset:2px}.toggle-brief-btn:active{transform:scale(.98)}.cosmic-weather-page{display:flex;flex-direction:column;gap:var(--spacing-lg);padding-bottom:var(--spacing-xl)}.cosmic-header{align-items:flex-end;display:flex;gap:.75rem;margin-bottom:var(--spacing-md)}.cosmic-header-text{display:flex;flex-direction:column;justify-content:flex-end}.cosmic-header h2{margin:0}.cosmic-subtitle{color:var(--color-text-light);font-size:.95rem;margin:.25rem 0 0}.cosmic-content.loading{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;display:flex;flex-direction:column;justify-content:center;min-height:300px;padding:var(--spacing-xl)}.spinner{animation:spin 2s linear infinite;font-size:3rem;margin-bottom:var(--spacing-md)}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.cosmic-content.loading p{color:var(--color-text-light);text-align:center}.cosmic-content.error{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;padding:var(--spacing-lg);text-align:center}.error-message{color:#d32f2f;font-weight:500;margin-bottom:var(--spacing-md)}.btn-secondary{background:#f0f4ff;border:2px solid #4a90e2;border-radius:4px;color:#4a90e2;font-size:.95rem;font-weight:600;min-height:var(--touch-target);padding:var(--spacing-md) var(--spacing-lg);transition:all .2s ease}.btn-secondary:hover{background:#4a90e2;color:#fff}.cosmic-content{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;padding:var(--spacing-lg)}.cosmic-date{border-bottom:1px solid #eee;color:var(--color-text);font-size:.95rem;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);text-align:center}.cosmic-weather-text{background:#f8f3ff;border-left:4px solid #9c27b0;border-radius:8px;margin-bottom:var(--spacing-lg);padding:var(--spacing-lg)}.markdown-p{color:var(--color-text);font-size:.95rem;line-height:1.8;margin:var(--spacing-md) 0}.markdown-p:first-child{margin-top:0}.markdown-p:last-child{margin-bottom:0}.markdown-strong{color:#9370db;font-weight:600}.markdown-em{color:var(--color-text-light);font-style:italic}.markdown-ol,.markdown-ul{margin:var(--spacing-md) 0;padding-left:1.5rem}.markdown-li{color:var(--color-text);font-size:.95rem;line-height:1.8;margin:var(--spacing-sm) 0}.cosmic-columns{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:1fr 1fr;margin-bottom:var(--spacing-lg)}.cosmic-mobile{display:none}.cosmic-column{display:flex;flex-direction:column;gap:var(--spacing-md)}.column-title{color:var(--color-text);font-size:1.1rem;font-weight:600;margin:0 0 var(--spacing-md) 0}.birth-chart-simple{flex-direction:column}.birth-chart-simple,.chart-item{display:flex;gap:var(--spacing-sm)}.chart-item{align-items:center;background:#f8f8f8;border-left:3px solid #9370db;border-radius:6px;padding:var(--spacing-sm) var(--spacing-md)}.chart-icon{font-size:1.3rem}.chart-sign{color:var(--color-text);font-size:.95rem;font-weight:600}.planets-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.planet-item{grid-gap:var(--spacing-sm);align-items:center;background:#f8f8f8;border-left:3px solid #9370db;border-radius:6px;display:grid;font-size:.9rem;gap:var(--spacing-sm);grid-template-columns:1.5rem 1fr .8fr 1fr auto;padding:var(--spacing-sm) var(--spacing-md)}.planet-item.retrograde{background:#fff8f0;border-left-color:#ff6b6b}.planet-icon{font-size:1.3rem;text-align:center}.planet-name{color:var(--color-text);font-weight:600}.planet-sign{color:#9370db;font-weight:500;text-align:center}.planet-degree{color:var(--color-text-light);font-size:.85rem;text-align:right}.retrograde-badge{font-size:1rem}.cosmic-disclaimer{background:#f5f5f5;border-left:3px solid #9370db;border-radius:6px;margin-top:var(--spacing-lg);padding:var(--spacing-md)}.cosmic-disclaimer p{color:var(--color-text-light);font-size:.85rem;font-style:italic;margin:0}@media (max-width:1023px){.cosmic-columns{display:none}.cosmic-mobile{display:flex;flex-direction:column;gap:var(--spacing-lg)}.mobile-section{margin-bottom:var(--spacing-lg)}.mobile-section h3{color:var(--color-text);font-size:1rem;font-weight:600;margin:0 0 var(--spacing-md) 0}.planet-item{grid-template-columns:1.5rem 1fr auto}.planet-degree,.planet-sign{display:none}}@media (max-width:480px){.cosmic-content,.cosmic-weather-text{padding:var(--spacing-md)}.cosmic-weather-text{margin-bottom:var(--spacing-md)}.column-title{font-size:.95rem}.chart-item{padding:var(--spacing-xs) var(--spacing-sm)}.chart-sign{font-size:.85rem}.planet-item{gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm)}.planet-name{font-size:.8rem}}.btn-secondary:focus{outline:2px solid #9370db;outline-offset:2px}@media (prefers-reduced-motion:reduce){.spinner{animation:none}}.ReAuthModal_modalOverlay__LCeAJ{align-items:center;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:3000}.ReAuthModal_modalContainer__KnX3y{background-color:#fff;border-radius:12px;box-shadow:0 8px 32px #0000004d;max-width:400px;padding:2rem;width:90%}.ReAuthModal_modalTitle__CjkW3{color:#333;font-size:1.5rem;font-weight:600;margin-bottom:.5rem;margin-top:0}.ReAuthModal_modalSubtitle__Nbf57{color:#666;font-size:14px;line-height:1.5;margin-bottom:1.5rem}.ReAuthModal_errorMessage__qmBvH{background-color:#ffebee;color:#d32f2f}.ReAuthModal_errorMessage__qmBvH,.ReAuthModal_successMessage__K7ZsR{border-radius:4px;font-size:14px;line-height:1.4;margin-bottom:1rem;padding:.75rem}.ReAuthModal_successMessage__K7ZsR{background-color:#e8f5e9;color:#2e7d32}.ReAuthModal_formGroup__u-rrM{margin-bottom:1.5rem}.ReAuthModal_label__5oMwg{color:#333;display:block;font-size:14px;font-weight:700;margin-bottom:.5rem}.ReAuthModal_input__2VNAC{border:1px solid #ccc;border-radius:4px;box-sizing:border-box;font-size:14px;padding:.75rem;transition:border-color .2s;width:100%}.ReAuthModal_input__2VNAC:focus{border-color:#7c63d8;box-shadow:0 0 0 3px #7c63d81a;outline:none}.ReAuthModal_input__2VNAC:disabled{background-color:#f5f5f5;color:#999;cursor:not-allowed}.ReAuthModal_passwordInputContainer__jUy6I{position:relative}.ReAuthModal_passwordInput__ytt6j{border:1px solid #ccc;border-radius:4px;box-sizing:border-box;font-size:14px;padding:.75rem 2.5rem .75rem .75rem;width:100%}.ReAuthModal_passwordInput__ytt6j:focus{border-color:#7c63d8;box-shadow:0 0 0 3px #7c63d81a;outline:none}.ReAuthModal_passwordInput__ytt6j:disabled{cursor:not-allowed;opacity:.6}.ReAuthModal_passwordToggle__PwNvY{background:none;border:none;cursor:pointer;font-size:18px;opacity:.7;padding:.25rem;position:absolute;right:.75rem;top:50%;transform:translateY(-50%);transition:opacity .2s}.ReAuthModal_passwordToggle__PwNvY:hover{opacity:1}.ReAuthModal_passwordToggle__PwNvY:disabled{cursor:not-allowed;opacity:.5}.ReAuthModal_primaryButton__5T2ra{background-color:#7c63d8;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;margin-bottom:1rem;padding:.75rem;transition:background-color .2s,opacity .2s;width:100%}.ReAuthModal_primaryButton__5T2ra:hover:not(:disabled){background-color:#6952c2}.ReAuthModal_primaryButton__5T2ra:disabled{cursor:not-allowed;opacity:.6}.ReAuthModal_googleButton__UPqiC{align-items:center;background-color:#fff;border:1px solid #dadce0;border-radius:4px;color:#333;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:.5rem;justify-content:center;margin-bottom:1rem;padding:.75rem;transition:background-color .2s,box-shadow .2s,opacity .2s;width:100%}.ReAuthModal_googleButton__UPqiC:hover:not(:disabled){background-color:#f8f9fa;box-shadow:0 1px 3px #0000001a}.ReAuthModal_googleButton__UPqiC:disabled{cursor:not-allowed;opacity:.6}.ReAuthModal_googleIcon__glvAg{height:16px;width:16px}.ReAuthModal_secondaryButton__Z8Q0l{background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;padding:.75rem;transition:background-color .2s;width:100%}.ReAuthModal_secondaryButton__Z8Q0l:hover:not(:disabled){background-color:#e8e8e8}.ReAuthModal_secondaryButton__Z8Q0l:disabled{cursor:not-allowed;opacity:.6}.ReAuthModal_linkButton__rj6Kb{background-color:initial;border:none;color:#7c63d8;cursor:pointer;font-size:13px;padding:.5rem;text-decoration:underline;transition:color .2s;width:100%}.ReAuthModal_linkButton__rj6Kb:hover{color:#6952c2}.ReAuthModal_divider__DY3WQ{align-items:center;display:flex;gap:1rem;margin-bottom:1rem}.ReAuthModal_dividerLine__1\+aVs{background-color:#ddd;flex:1 1;height:1px}.ReAuthModal_dividerText__7zWU7{color:#999;font-size:12px;text-transform:uppercase}.ReAuthModal_buttonGroup__\+wCUy{display:flex;gap:1rem;margin-top:1.5rem}.ReAuthModal_buttonGroup__\+wCUy button{flex:1 1}.ReAuthModal_resetText__yD-TO{color:#666;font-size:14px;line-height:1.5;margin-bottom:1rem}.payment-form-container{background:#f9f9f9b3;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:2rem;padding:2rem}.payment-form-container h3{color:#333;font-size:1.25rem;margin-bottom:1.5rem;margin-top:0}.form{display:flex;flex-direction:column;gap:0}.payment-form{gap:0}.form h4{border-bottom:1px solid #e0e0e0;color:#333;font-size:1.1rem;margin:1.5rem 0 1rem;padding-bottom:.5rem}.form h4:first-child{margin-top:0}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:1rem}.form-row .full-width{grid-column:1/-1}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{color:#333;font-size:.95rem;font-weight:500}.form-input,.form-select{font-family:inherit;font-size:.95rem}.form-group small{color:#999;font-size:.85rem}.form-actions{border-top:1px solid #e0e0e0;display:flex;gap:1rem;margin-top:1.5rem;padding-top:1.5rem}.form-actions .btn-primary,.form-actions .btn-secondary{font-size:1rem;padding:.75rem 1.5rem}#card-element-container{background:#fffffff7;border:1px solid #ddd;border-radius:6px;font-size:14px;min-height:50px;padding:1rem}.payment-methods-list{margin-top:2.5rem}.payment-methods-list h3{color:#333;font-size:1.25rem;margin-bottom:1.5rem}.methods-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.payment-method-card{background:#fffffff7;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 4px #0000000d;padding:1.5rem;transition:all .3s ease}.payment-method-card:hover{border-color:#7c63d8;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.card-header{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem}.card-brand{color:#333;font-size:.95rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.card-last4{color:#666;font-family:Courier New,monospace;font-size:.9rem}.card-expiry{color:#999;font-size:.9rem;margin-bottom:1rem}.card-actions{display:flex;flex-wrap:wrap;gap:.75rem}.card-actions .btn-danger,.card-actions .btn-link{border:none;border-radius:4px;cursor:pointer;flex:1 1;font-size:12px;min-width:120px;padding:.5rem .75rem;text-align:center;transition:all .3s ease}.card-actions .btn-link{background:#f0f0f0;color:#333;text-decoration:none}.card-actions .btn-link:hover{background:#e0e0e0}.card-actions .btn-danger{background:#ff4757;color:#fff;text-decoration:none}.card-actions .btn-danger:hover{background:#ff3838}.payment-info{background:#f0f7ff;border-left:4px solid #7c63d8;border-radius:6px;margin-top:1.5rem;padding:1.5rem}.payment-info p{color:#555;line-height:1.6;margin:.75rem 0}.payment-info p:last-child{margin-bottom:1rem}.payment-info button{margin-top:1rem}@media (max-width:768px){.payment-form-container{padding:1.5rem}.methods-grid{grid-template-columns:1fr}.payment-method-card{padding:1rem}.form-row{grid-template-columns:1fr}.card-actions{gap:.5rem}.card-actions .btn-danger,.card-actions .btn-link{font-size:11px;min-width:100px;padding:.4rem .6rem}.form-actions{flex-direction:column}.form-actions button{width:100%}}@media (max-width:480px){.card-header{align-items:flex-start;flex-direction:column;gap:.5rem}.form-row{grid-template-columns:1fr}.card-actions{flex-direction:column}.card-actions .btn-danger,.card-actions .btn-link{width:100%}.form-actions{flex-direction:column}.form-actions button{width:100%}}.subscriptions-page .auto-renewal-notice{align-items:flex-start;background:linear-gradient(135deg,#e8f5e9,#f1f8e9);border-left:4px solid #4caf50;border-radius:8px;display:flex;gap:1rem;margin-bottom:2rem;padding:1.5rem}.notice-icon{flex-shrink:0;font-size:1.75rem}.notice-content h4{color:#2e7d32;font-size:1.1rem;margin:0 0 .5rem}.notice-content p{color:#555;font-size:.95rem;line-height:1.6;margin:0}.notice-content strong{color:#1b5e20}.available-plans,.current-subscriptions,.past-subscriptions{margin-bottom:3rem}.past-subscriptions{border-top:2px solid #e0e0e0;margin-top:4rem;padding-top:2rem}.available-plans h3,.current-subscriptions h3,.past-subscriptions h3{color:#333;font-size:1.25rem;margin-bottom:1.5rem}.subscriptions-list{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.subscription-card{background:#fffffff7;border:2px solid #e0e0e0;border-radius:8px;padding:1.5rem;transition:all .3s ease}.subscription-card.active{border-color:#7c63d8;box-shadow:0 4px 12px #7c63d833}.subscription-card.canceling{background:#fff8f0;border-color:#ff9800}.subscription-card.inactive{border-color:#ddd;opacity:.7}.sub-header-with-toggle{align-items:flex-start;border-bottom:1px solid #f0f0f0;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.sub-header{flex:1 1}.sub-header h4{color:#333;font-size:1.1rem;margin:0}.subscription-toggle{align-items:center;display:flex;gap:.75rem;white-space:nowrap}.toggle-checkbox{accent-color:#7c63d8;cursor:pointer;height:20px;width:20px}.toggle-label{color:#666;cursor:pointer;font-size:.9rem;font-weight:600;-webkit-user-select:none;user-select:none}.sub-details{margin-bottom:1.5rem}.detail-row{align-items:center;border-bottom:1px solid #f5f5f5;color:#666;display:flex;font-size:.95rem;justify-content:space-between;padding:.75rem 0}.detail-row:last-child{border-bottom:none}.detail-label{color:#333;font-weight:600}.detail-value{color:#666;text-align:right}.interval-badge{background:#f0f0f0;border-radius:3px;font-size:.85rem;margin-left:.5rem;padding:.25rem .5rem}.cancellation-notice{background:#fff3e0;border-left:3px solid #ff6b00;border-radius:4px;display:flex;flex-direction:column;gap:.5rem;padding:.75rem}.cancellation-notice .detail-label,.cancellation-notice .detail-value{text-align:left}.sub-actions{display:flex;flex-wrap:wrap;gap:.75rem}.btn-small{white-space:nowrap}.btn-secondary{border-radius:6px;cursor:pointer;transition:all .3s ease}.btn-secondary:hover{background:#e0e0e0}.btn-disabled{background:#f5f5f5;color:#999;cursor:not-allowed;opacity:.6}.change-plan-options{background:#f9f9f9;border-radius:6px;border-top:2px solid #f0f0f0;margin-top:1.5rem;padding:1.5rem}.change-plan-options h5{color:#333;font-size:1rem;margin-bottom:1rem;margin-top:0}.plan-options-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.plan-option-card{background:#fffffff7;border:1px solid #ddd;border-radius:6px;padding:1rem;text-align:center;transition:all .3s ease}.plan-option-card:hover{border-color:#7c63d8;box-shadow:0 2px 8px #7c63d826}.plan-option-name{color:#333;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.plan-option-price{color:#7c63d8;font-size:1.35rem;font-weight:700;margin-bottom:.75rem}.plan-option-interval{color:#666;font-size:.85rem}.plan-option-card .btn-small{width:100%}.plan-card{background:#fffffff7;border:1px solid #e0e0e0;border-radius:8px;display:flex;flex-direction:column;padding:2rem;transition:all .3s ease}.plan-card:hover{border-color:#7c63d8;box-shadow:0 6px 16px #0000001a;transform:translateY(-4px)}.plan-header{margin-bottom:1.5rem}.plan-header h4{color:#333;font-size:1.3rem;margin:0 0 .5rem}.plan-description{color:#666;font-size:.95rem;margin:0}.plan-pricing{background:#f9f9f9b3;border-radius:6px;margin-bottom:1.5rem;padding:1.5rem}.price-option{align-items:center;display:flex;flex-direction:column;gap:.75rem;padding:1rem;text-align:center}.price-option:not(:last-child){border-bottom:1px solid #e0e0e0;margin-bottom:1rem;padding-bottom:1rem}.price-amount{color:#7c63d8;font-size:1.75rem;font-weight:700}.price-interval{color:#666;font-size:.9rem}.plan-pricing .btn-primary{margin-top:.5rem;width:100%}.plan-features{border-top:1px solid #e0e0e0;margin-top:auto;padding-top:1.5rem}.plan-features h5{color:#333;font-size:.95rem;margin:0 0 1rem}.plan-features ul{list-style:none;margin:0;padding:0}.plan-features li{color:#666;font-size:.9rem;line-height:1.6;padding:.5rem 0}.plans-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin:2rem 0}.subscription-info{background:#f0f7ff;border-left:4px solid #7c63d8;border-radius:6px;margin-top:2rem;padding:1.5rem}.subscription-info h3{color:#333;margin-bottom:1rem;margin-top:0}.subscription-info ul{list-style:none;margin:0;padding:0}.subscription-info li{color:#555;font-size:.95rem;line-height:1.6;padding:.75rem 0}.subscription-info strong{color:#333}@media (max-width:768px){.auto-renewal-notice{flex-direction:column;gap:1rem}.plan-options-grid,.plans-grid,.subscriptions-list{grid-template-columns:1fr}.sub-header-with-toggle{align-items:flex-start;flex-direction:column}.subscription-toggle{align-self:flex-start;margin-top:.5rem}.detail-row{align-items:flex-start;flex-direction:column;gap:.5rem}.detail-value{text-align:left}.plan-card{padding:1.5rem}.plan-header h4{font-size:1.15rem}.price-amount{font-size:1.5rem}.change-plan-options{padding:1rem}}@media (max-width:480px){.auto-renewal-notice{padding:1rem}.notice-icon{font-size:1.5rem}.notice-content p{font-size:.9rem}.subscription-card{padding:1rem}.sub-header h4{font-size:1rem}.detail-row{font-size:.9rem}.plan-pricing{padding:1rem}.price-option{padding:.75rem}.plan-features{padding-top:1rem}.plan-features li{font-size:.85rem}.subscription-info li{font-size:.9rem;padding:.5rem 0}}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.modal-content{animation:slideUp .3s ease;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-width:500px;padding:2rem;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-content h3{color:#333;font-size:1.5rem;margin:0 0 1rem}.modal-description{color:#666;line-height:1.6;margin-bottom:1.5rem}.modal-description p{margin:.5rem 0}.subscription-summary{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.summary-row{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:.75rem 0}.summary-row:last-child{border-bottom:none}.summary-row span{color:#666;font-size:.95rem}.summary-row strong{color:#333;font-weight:600}.summary-row code{background:#fff;border-radius:4px;color:#7c63d8;font-family:Courier New,monospace;font-size:.85rem;padding:.25rem .5rem}.status-warning{color:#ff9800}.status-success{color:#4caf50}.modal-info{background:#e3f2fd;border-left:4px solid #2196f3;border-radius:6px;margin-top:1rem;padding:1rem}.modal-info p{color:#1565c0;font-size:.9rem;line-height:1.5;margin:0}@media (max-width:640px){.modal-content{margin:1rem;padding:1.5rem}.modal-content h3{font-size:1.25rem}.summary-row{flex-wrap:wrap;gap:.5rem}}.summary-cards{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.summary-card{background:linear-gradient(135deg,#7c63d8,#6a4fc4);border-radius:8px;box-shadow:0 4px 12px #7c63d833;color:#fff;padding:1.5rem;text-align:center}.summary-label{font-size:.85rem;letter-spacing:.5px;margin-bottom:.75rem;opacity:.9;text-transform:uppercase}.summary-value{font-size:1.75rem;font-weight:700}.filters-bar{background:#f9f9f9b3;border-radius:6px;display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:2rem;padding:1.5rem}.filter-group{display:flex;flex-direction:column;gap:.5rem;min-width:200px}.filter-group label{color:#333;font-size:.9rem;font-weight:600}.filter-group .form-select{flex:1 1}.payments-table-container{border-radius:8px;box-shadow:0 2px 8px #0000000d;margin-bottom:2rem;overflow-x:auto}.payments-table{background:#fffffff7;border-collapse:collapse;width:100%}.payments-table thead{background:#f5f5f5;border-bottom:2px solid #e0e0e0}.payments-table th{color:#333;font-size:.95rem;font-weight:600;padding:1rem;text-align:left;white-space:nowrap}.payments-table tbody tr{border-bottom:1px solid #e0e0e0;transition:background-color .2s ease}.payments-table tbody tr:hover{background-color:#f9f9f9}.payments-table td{color:#666;font-size:.95rem;padding:1rem;vertical-align:middle}.payment-date{font-size:.9rem;white-space:nowrap}.payment-amount{color:#2e7d32;font-size:1rem;font-weight:600}.payment-status{min-width:100px}.payment-method{color:#555;font-family:Courier New,monospace}.payment-reference{color:#999;font-family:Courier New,monospace;font-size:.85rem}.payment-reference code{background:#f5f5f5;border-radius:3px;padding:.25rem .5rem}.payment-description{color:#666;max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-badge{white-space:nowrap}.status-pending,.status-warning{background:#fff3e0;color:#e65100}.payments-info-box{background:#f0f7ff;border-left:4px solid #7c63d8;border-radius:6px;margin-top:2rem;padding:1.5rem}.payments-info-box h3{color:#333;margin-bottom:1rem;margin-top:0}.payments-info-box ul{list-style:none;margin:0;padding:0}.payments-info-box li{color:#555;font-size:.95rem;line-height:1.6;padding:.5rem 0}.payments-info-box strong{color:#333}.empty-state{background:#f9f9f9b3}@media (max-width:768px){.summary-cards{gap:1rem;grid-template-columns:1fr}.filters-bar{flex-direction:column;gap:1rem;padding:1rem}.filter-group{min-width:100%}.filter-group .form-select{width:100%}.payments-table{font-size:.85rem}.payments-table td,.payments-table th{padding:.75rem}.payment-description{max-width:150px}}@media (max-width:480px){.summary-card{padding:1rem}.summary-label{font-size:.75rem}.summary-value{font-size:1.5rem}.payments-table-container{-webkit-overflow-scrolling:touch;overflow-x:scroll}.payments-table{min-width:700px}.payments-table td,.payments-table th{font-size:.75rem;padding:.5rem}.payments-table th{font-size:.7rem}.payment-amount{font-size:.9rem}.payment-description{display:none}.payment-reference{font-size:.75rem}.payments-info-box{padding:1rem}.payments-info-box li{font-size:.85rem}}.billing-page{background:#0000;min-height:100vh;padding:1rem}.billing-page>div{margin:0 auto}.billing-tabs{border-bottom:2px solid #e0e0e0;display:flex;gap:.5rem;margin-bottom:2rem;overflow-x:auto;padding-bottom:1rem;scroll-behavior:smooth}.billing-tab{align-items:center;background:#ffffffd9;border:1px solid #c8c8c84d;border-radius:8px 8px 0 0;color:#333;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:.5rem;padding:.75rem 1.25rem;position:relative;transition:all .3s ease;white-space:nowrap}.billing-tab:hover{background-color:#fffffff2;border-color:#c8c8c880;color:#333}.billing-tab.active{background-color:#7c63d8;color:#fff;font-weight:600}.billing-tab.active:after{background:#7c63d8;border-radius:2px;bottom:-2px;content:"";height:3px;left:0;position:absolute;right:0}.tab-icon{font-size:1.1em}.tab-label{display:none}@media (min-width:600px){.tab-label{display:inline}}.billing-content{animation:fadeIn .3s ease-in;background:#fffffff7;border-radius:8px;box-shadow:0 4px 6px #0000001a;padding:2rem}.section-header{border-bottom:1px solid #e0e0e0;margin-bottom:2rem;padding-bottom:1rem}.section-header h2{color:#333;font-size:1.75rem;margin:0 0 .5rem}.section-header p{color:#666;font-size:.95rem;margin:0}.alert{animation:slideDown .3s ease;border-radius:6px;font-weight:500;margin-bottom:1.5rem;padding:1rem}.alert-error{background-color:#fee;border-left:4px solid #c33;color:#c33}.alert-success{background-color:#efe;border-left:4px solid #3c3;color:#3c3}.alert-warning{background-color:#ffd;border-left:4px solid #cc0;color:#660}.btn-danger,.btn-link,.btn-primary,.btn-secondary,.btn-small{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease;white-space:nowrap}.btn-primary{background:linear-gradient(135deg,#7c63d8,#6a4fc4);color:#fff}.btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #7c63d866;transform:translateY(-2px)}.btn-primary:disabled{cursor:not-allowed;opacity:.6}.btn-secondary{background:#f0f0f0;border:1px solid #ddd;color:#333}.btn-secondary:hover:not(:disabled){background:#e0e0e0}.btn-danger{background:#ff4757;color:#fff}.btn-danger:hover:not(:disabled){background:#ff3838;box-shadow:0 4px 12px #ff475766;transform:translateY(-2px)}.btn-link{background:none;color:#7c63d8;font-size:13px;padding:0;text-decoration:underline}.btn-link:hover{color:#6a4fc4}.btn-small{font-size:12px;padding:.5rem 1rem}.form-group{margin-bottom:1.5rem}.form-label{color:#333;display:block;font-weight:600;margin-bottom:.5rem}.form-input,.form-select{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:.75rem;transition:border-color .3s ease;width:100%}.form-input:focus,.form-select:focus{border-color:#7c63d8;box-shadow:0 0 0 3px #7c63d81a;outline:none}.form-input::placeholder{color:#999}.empty-state{background:#f9f9f9;border:2px dashed #ddd;border-radius:8px;color:#999;padding:3rem 2rem;text-align:center}.empty-state p{font-size:1rem;margin:0}.status-badge{border-radius:4px;display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:.4rem .75rem;text-transform:uppercase}.status-success{background:#e8f5e9;color:#2e7d32}.status-danger,.status-failed{background:#ffebee;color:#c62828}.status-open,.status-pending,.status-warning{background:#fff3e0;color:#e65100}.status-draft,.status-info{background:#e3f2fd;color:#1565c0}.status-default{background:#f5f5f5;color:#666}.status-active{background:#e8f5e9;color:#2e7d32}.status-inactive{background:#f5f5f5;color:#999}.status-canceled{background:#ffebee;color:#c62828}@media (max-width:768px){.billing-page{padding:.5rem}.billing-content{padding:1rem}.billing-tabs{gap:.25rem;padding-bottom:.5rem}.billing-tab{font-size:12px;padding:.5rem .75rem}.section-header h2{font-size:1.5rem}.section-header p{font-size:.9rem}}.compliance-dashboard{background:#f5f7fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;margin:0 auto;max-width:1400px;min-height:100vh;padding:20px}.compliance-dashboard.loading{align-items:center;color:#666;display:flex;font-size:18px;height:100vh;justify-content:center}.dashboard-header{align-items:center;border-bottom:2px solid #e1e8ed;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.dashboard-header h1{color:#2c3e50;font-size:28px;margin:0}.dashboard-actions{display:flex;gap:10px}.btn-export,.btn-refresh,.btn-send-notifications{background:#06c;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 16px;transition:background .2s}.btn-send-notifications{background:#28a745}.btn-send-notifications:hover:not(:disabled){background:#218838}.btn-send-notifications:disabled{background:#6c757d;cursor:not-allowed;opacity:.6}.btn-export:hover,.btn-refresh:hover{background:#0052a3}.error-message{background:#fee;border:1px solid #fcc;border-radius:6px;color:#c33}.error-message,.success-message{animation:slideDown .3s ease-out;font-size:14px;margin-bottom:20px;padding:12px 16px}.success-message{background:#d4edda;border:1px solid #c3e6cb;border-radius:6px;color:#155724}.dashboard-tabs{border-bottom:2px solid #e1e8ed;display:flex;gap:5px;margin-bottom:20px;overflow-x:auto}.tab{background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;font-size:15px;font-weight:500;padding:12px 20px;transition:all .2s;white-space:nowrap}.tab:hover{background:#0066cc0d;color:#333}.tab.active{border-bottom-color:#06c;color:#06c}.tab-content{animation:fadeIn .2s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.metrics-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.metric-card{background:#fff;border-left:4px solid #06c;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:20px}.metric-card.warning{border-left-color:#ff9800}.metric-card.success{border-left-color:#28a745}.metric-card.danger{border-left-color:#dc3545}.metric-label{color:#999;font-size:12px;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.metric-value{color:#2c3e50;font-size:32px;font-weight:700;margin-bottom:8px}.metric-help{color:#666;font-size:13px}.current-versions{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:20px;padding:20px}.current-versions h3{color:#2c3e50;font-size:16px;margin:0 0 15px}.version-info{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.version-item{background:#f5f7fa;border-left:3px solid #06c;border-radius:6px;display:flex;flex-direction:column;padding:12px}.version-item strong{color:#2c3e50;margin-bottom:8px}.version-badge{background:#06c;border-radius:3px;color:#fff;display:inline-block;font-size:12px;font-weight:600;margin-bottom:6px;padding:4px 8px;width:-webkit-fit-content;width:fit-content}.version-item small{color:#999;font-size:12px}.data-table,.timeline-table{background:#fff;border-collapse:collapse;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden;width:100%}.data-table thead,.timeline-table thead{background:#f5f7fa;border-bottom:2px solid #e1e8ed}.data-table th,.timeline-table th{color:#666;font-size:13px;font-weight:600;letter-spacing:.5px;padding:12px 16px;text-align:left;text-transform:uppercase}.data-table td,.timeline-table td{border-bottom:1px solid #f0f0f0;font-size:14px;padding:12px 16px}.data-table tbody tr:hover,.timeline-table tbody tr:hover{background:#f9f9f9}.acceptance-rate{border-radius:4px;display:inline-block;font-weight:600;padding:4px 8px}.acceptance-rate.high{background:#d4edda;color:#155724}.acceptance-rate.medium{background:#fff3cd;color:#856404}.acceptance-rate.low{background:#f8d7da;color:#721c24}.users-filter{align-items:center;background:#fff;border-radius:6px;display:flex;gap:12px;margin-bottom:20px;padding:12px}.users-filter label{color:#333;font-weight:500}.filter-select{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 12px}.filter-select:focus{border-color:#06c;box-shadow:0 0 0 2px #0066cc1a;outline:none}.info-text{color:#666;font-size:13px;margin-bottom:15px}.notification-metrics{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.metric-block{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:20px}.metric-block h4{border-bottom:2px solid #f0f0f0;color:#2c3e50;font-size:14px;letter-spacing:.5px;margin:0 0 15px;padding-bottom:10px;text-transform:uppercase}.metric-pair{border-bottom:1px solid #f0f0f0;display:flex;font-size:14px;justify-content:space-between;padding:10px 0}.metric-pair:last-child{border-bottom:none}.metric-pair strong{color:#06c;font-weight:600}@media (max-width:768px){.compliance-dashboard{padding:10px}.dashboard-header{align-items:flex-start;flex-direction:column;gap:15px}.dashboard-header h1{font-size:22px}.metrics-grid{grid-template-columns:1fr}.data-table,.timeline-table{font-size:12px}.data-table td,.data-table th,.timeline-table td,.timeline-table th{padding:8px 12px}.dashboard-tabs{-webkit-overflow-scrolling:touch;overflow-x:auto}.tab{font-size:13px;padding:10px 16px}}.FreeTrialWhitelist_container__PpZKG{background-color:#f8f9fa;border-radius:8px;margin-bottom:20px;padding:20px}.FreeTrialWhitelist_header__saZjT{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.FreeTrialWhitelist_title__eDE6c{color:#333;font-size:24px;font-weight:700;margin:0}.FreeTrialWhitelist_description__h07Oe{color:#666;font-size:14px;margin-bottom:16px}.FreeTrialWhitelist_refreshButton__chFvW{background-color:#3498db;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:700;padding:8px 16px;transition:background-color .2s}.FreeTrialWhitelist_refreshButton__chFvW:hover{background-color:#2980b9}.FreeTrialWhitelist_refreshButton__chFvW:disabled{background-color:#95a5a6;cursor:not-allowed}.FreeTrialWhitelist_timestamp__PaZYn{color:#666;font-size:12px;margin-bottom:16px}.FreeTrialWhitelist_errorBox__7zPyx{background-color:#ffe6e6;border:1px solid #e74c3c;border-radius:4px;margin-bottom:20px;padding:16px}.FreeTrialWhitelist_errorText__XaqoC{color:#c0392b;margin:0}.FreeTrialWhitelist_successBox__-9\+Kl{background-color:#d4edda;border:1px solid #2ecc71;border-radius:4px;margin-bottom:20px;padding:16px}.FreeTrialWhitelist_successText__DV5mC{color:#155724;margin:0}.FreeTrialWhitelist_section__lq3Q0{background-color:#fff;border-radius:4px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:16px}.FreeTrialWhitelist_sectionTitle__Jj21N{border-bottom:2px solid #3498db;color:#333;font-size:18px;font-weight:700;margin-bottom:16px;padding-bottom:8px}.FreeTrialWhitelist_currentIpBox__JfNfZ{background-color:#ecf0f1;border-radius:4px;padding:12px}.FreeTrialWhitelist_ipInfo__nEdke{align-items:center;display:flex;margin-bottom:8px}.FreeTrialWhitelist_ipLabel__8jFJp{font-size:14px;font-weight:700;margin-bottom:0;margin-right:8px}.FreeTrialWhitelist_ipValue__p3sCz{font-family:monospace;font-size:14px;margin:0}.FreeTrialWhitelist_whitelisted__5HZi5{color:#2ecc71}.FreeTrialWhitelist_notWhitelisted__jcyPQ{color:#e74c3c}.FreeTrialWhitelist_whitelistButton__VWvi8{background-color:#2ecc71;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:700;margin-top:12px;padding:10px 20px;transition:background-color .2s}.FreeTrialWhitelist_whitelistButton__VWvi8:hover{background-color:#27ae60}.FreeTrialWhitelist_whitelistButton__VWvi8:disabled{background-color:#95a5a6;cursor:not-allowed}.FreeTrialWhitelist_loadingText__U6Yyq{color:#666;font-style:italic}.FreeTrialWhitelist_form__DDd2O{display:flex;flex-direction:column;gap:12px}.FreeTrialWhitelist_formGroup__OkV7y{display:flex;flex-direction:column;gap:4px}.FreeTrialWhitelist_label__9rOYK{color:#333;font-size:14px;font-weight:700}.FreeTrialWhitelist_input__7Hv\+Y{border:1px solid #ccc;border-radius:4px;font-family:monospace;font-size:14px;padding:8px 12px}.FreeTrialWhitelist_input__7Hv\+Y:focus{border-color:#3498db;box-shadow:0 0 0 2px #3498db33;outline:none}.FreeTrialWhitelist_addButton__31Ktq{align-self:flex-start;background-color:#3498db;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:700;padding:10px 20px;transition:background-color .2s}.FreeTrialWhitelist_addButton__31Ktq:hover{background-color:#2980b9}.FreeTrialWhitelist_addButton__31Ktq:disabled{background-color:#95a5a6;cursor:not-allowed}.FreeTrialWhitelist_table__wQHsT{border-collapse:collapse;font-size:14px;width:100%}.FreeTrialWhitelist_tableHeader__ASCTU{background-color:#ecf0f1;border-bottom:2px solid #bdc3c7}.FreeTrialWhitelist_th__YFVWm{color:#333;font-weight:700;padding:12px;text-align:left}.FreeTrialWhitelist_tableRow__UX-MH{background-color:#fff;border-bottom:1px solid #ecf0f1;transition:background-color .2s}.FreeTrialWhitelist_tableRow__UX-MH:hover{background-color:#f8f9fa}.FreeTrialWhitelist_td__W1EWL{color:#555;padding:12px}.FreeTrialWhitelist_removeButton__KfJem{background-color:#e74c3c;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;font-weight:700;padding:6px 12px;transition:background-color .2s}.FreeTrialWhitelist_removeButton__KfJem:hover{background-color:#c0392b}.FreeTrialWhitelist_removeButton__KfJem:disabled{background-color:#95a5a6;cursor:not-allowed}.FreeTrialWhitelist_emptyMessage__Jfrc-{color:#666;font-style:italic;padding:20px;text-align:center}.LegalDataRequests_container__\+2Hki{margin:0 auto;max-width:1000px;padding:20px}.LegalDataRequests_header__Yb0H4{margin-bottom:20px}.LegalDataRequests_title__9awsF{color:#1a1a1a;font-size:24px;font-weight:700;margin:0 0 5px}.LegalDataRequests_subtitle__R8oVp{color:#666;font-size:14px;margin:0}.LegalDataRequests_warningBox__Q-HB5{background-color:#fef3c7;border:2px solid #fbbf24;border-radius:8px;margin-bottom:20px;padding:20px}.LegalDataRequests_warningTitle__JSsSx{color:#92400e;font-size:16px;font-weight:600;margin-bottom:10px;margin-top:0}.LegalDataRequests_warningList__7Pr7q{color:#92400e;font-size:14px;line-height:1.8;margin:0;padding-left:20px}.LegalDataRequests_error__IIcT6{background-color:#fee;border:1px solid #fcc;border-radius:8px;color:#c00;margin-bottom:20px;padding:15px}.LegalDataRequests_success__X4a6m{background-color:#d1fae5;border:1px solid #6ee7b7;border-radius:8px;color:#059669;margin-bottom:20px;padding:15px}.LegalDataRequests_card__dkx51{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:20px;padding:20px}.LegalDataRequests_cardTitle__HnXPj{color:#1a1a1a;font-size:18px;font-weight:600;margin-bottom:15px;margin-top:0}.LegalDataRequests_form__bkpWs{display:flex;flex-direction:column;gap:15px}.LegalDataRequests_formGroup__OLmj3{display:flex;flex-direction:column;gap:8px}.LegalDataRequests_label__xH4YU{color:#374151;font-size:14px;font-weight:500}.LegalDataRequests_input__gHdiu,.LegalDataRequests_textarea__qkblG{border:1px solid #d1d5db;border-radius:6px;font-family:inherit;font-size:14px;padding:10px 12px}.LegalDataRequests_textarea__qkblG{resize:vertical}.LegalDataRequests_button__g\+ck9{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:12px 24px;transition:background-color .2s}.LegalDataRequests_primaryButton__ihIR5{background-color:#3b82f6;color:#fff}.LegalDataRequests_primaryButton__ihIR5:hover:not(:disabled){background-color:#2563eb}.LegalDataRequests_secondaryButton__Qa2zd{background-color:#6b7280;color:#fff}.LegalDataRequests_secondaryButton__Qa2zd:hover:not(:disabled){background-color:#4b5563}.LegalDataRequests_successButton__UCemQ{background-color:#10b981;color:#fff}.LegalDataRequests_successButton__UCemQ:hover:not(:disabled){background-color:#059669}.LegalDataRequests_buttonGroup__JnXMk{display:flex;flex-wrap:wrap;gap:10px}.LegalDataRequests_userInfoBox__yiq10{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;margin-top:20px;padding:15px}.LegalDataRequests_userInfoTitle__4mYyV{color:#374151;font-size:14px;font-weight:600;margin-bottom:12px;margin-top:0}.LegalDataRequests_infoGrid__nAwSz{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.LegalDataRequests_infoRow__WmG2m{border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:8px 0}.LegalDataRequests_infoLabel__emOcc{color:#6b7280;font-size:13px;font-weight:500}.LegalDataRequests_infoValue__JUgNW{color:#1f2937;font-size:13px;font-weight:400}.LegalDataRequests_statsGrid__SbPH2{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:20px}.LegalDataRequests_statBox__i8G0A{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:15px;text-align:center}.LegalDataRequests_statLabel__BwY2b{color:#6b7280;font-size:12px;margin-bottom:5px}.LegalDataRequests_statValue__ZpU8L{color:#1f2937;font-size:24px;font-weight:700}.LegalDataRequests_infoBox__ImLJH{background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;margin-top:15px;padding:15px}.LegalDataRequests_infoTitle__ZoK6X{color:#1e40af;font-size:14px;font-weight:600;margin-bottom:10px;margin-top:0}.LegalDataRequests_infoList__Sb6Kc{color:#1e40af;font-size:13px;line-height:1.8;margin:0;padding-left:20px}.main-container{display:grid;grid-template-columns:250px 1fr;grid-template-rows:auto 1fr;height:100vh;overflow:hidden;width:100%}.pages-container{background:#0000;grid-column:2;grid-row:1/-1;height:100%;margin-top:0;overflow-x:hidden;overflow-y:auto;width:100%}.page-wrapper{background:#0000!important;min-height:100%;width:100%}@media (max-width:767px){.main-container{grid-template-columns:1fr;grid-template-rows:1fr}.pages-container{grid-column:1;grid-row:1;margin-top:60px}}@media (min-width:768px) and (max-width:1023px){.main-container{grid-template-columns:200px 1fr}}.pages-container::-webkit-scrollbar{width:8px}.pages-container::-webkit-scrollbar-track{background:#f1f1f1}.pages-container::-webkit-scrollbar-thumb{background:#9370db;border-radius:4px}.pages-container::-webkit-scrollbar-thumb:hover{background:#7b5cb8}@media (prefers-reduced-motion:reduce){.page-wrapper{animation:none!important}}.policies-page-wrapper{background:linear-gradient(135deg,#0f0a23f2,#1e143cf2);display:flex;flex-direction:column;height:100vh;overflow:hidden;width:100%}.policies-container{background:#0000;box-sizing:border-box;color:#e0e0e0;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;height:100%;margin:0 auto;max-width:900px;overflow-x:hidden;overflow-y:auto;padding:2rem;width:100%}.policies-header{border-bottom:2px solid #6496ff4d;flex-shrink:0;margin-bottom:2rem;padding-bottom:2rem}.policies-title-section h1{color:#64b5f6;font-size:2.5rem;margin:0 0 1rem;text-shadow:0 0 10px #64b5f64d}.policies-meta{grid-gap:1rem;color:#b0b0b0;display:grid;font-size:.9rem;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.policies-meta p{line-height:1.6;margin:0}.policies-meta strong{color:#64b5f6}.policies-controls{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.5rem}.btn{border:none;border-radius:4px;cursor:pointer;font-size:.95rem;font-weight:600;padding:.6rem 1.2rem;transition:all .3s ease}.btn-secondary{background:#6496ff33;border:1px solid #6496ff66;color:#64b5f6}.btn-secondary:hover{background:#6496ff4d;border-color:#6496ff99;box-shadow:0 4px 12px #64b5f633;transform:translateY(-2px)}.policies-content{flex:1 1;margin-bottom:2rem}.policy-section{background:#14142880;border:1px solid #6496ff33;border-radius:4px;margin-bottom:1rem;overflow:hidden;transition:all .3s ease}.policy-section:hover{background:#141428b3;border-color:#6496ff66}.section-header{align-items:center;background:#1e1e3280;border:none;border-bottom:1px solid #6496ff1a;color:#64b5f6;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.8rem;padding:1.2rem;text-align:left;transition:all .3s ease;width:100%}.section-header:hover{background:#28284699;padding-left:1.4rem}.section-header[aria-expanded=true]{background:#6496ff1a;border-bottom-color:#6496ff4d}.section-toggle{align-items:center;color:#64b5f6;display:inline-flex;flex-shrink:0;font-size:.8rem;justify-content:center;min-width:1.2rem;transition:transform .3s ease}.section-header[aria-expanded=true] .section-toggle{transform:rotate(0deg)}.section-title{flex:1 1}.section-body{animation:slideDown .3s ease;border-top:1px solid #6496ff1a;padding:1.5rem}@keyframes slideDown{0%{height:0;opacity:0}to{height:auto;opacity:1}}.section-body p{color:#d0d0d0;line-height:1.8;margin:0;word-break:break-word}.section-body p+p{margin-top:1rem}.policies-footer{border-top:2px solid #6496ff4d;color:#b0b0b0;flex-shrink:0;font-size:.95rem;padding:2rem 0 3rem;text-align:center}.policies-footer p{line-height:1.6;margin:.5rem 0}.policies-footer a{border-bottom:1px dashed #6496ff80;color:#64b5f6;text-decoration:none;transition:all .3s ease}.policies-footer a:hover{border-bottom-color:#6496ffcc;color:#90caf9}.loading{color:#64b5f6;font-size:1.2rem;padding:4rem 2rem;text-align:center}@media (max-width:768px){.policies-container{padding:1rem}.policies-title-section h1{font-size:1.8rem}.policies-meta{grid-template-columns:1fr}.policies-controls{flex-direction:column}.btn{text-align:center;width:100%}.section-header{font-size:.95rem;padding:1rem}.section-body{padding:1rem}.policies-footer{font-size:.9rem}}@media (max-width:480px){.policies-container{padding:.75rem}.policies-title-section h1{font-size:1.5rem;margin-bottom:.75rem}.section-header{gap:.5rem;padding:.8rem}.section-body{padding:.8rem}}
/*# sourceMappingURL=main.37370659.css.map*/