@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";*{box-sizing:border-box;margin:0;padding:0}html,body{overscroll-behavior-x:none;max-width:100%;overflow-x:hidden}body{background-color:#f4f4f4;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,Segoe UI Symbol,Twemoji Mozilla,sans-serif;line-height:1.6;position:relative}.container{max-width:800px;margin:0 auto}.header{color:#fff;background-color:#000;flex-wrap:wrap;justify-content:space-between;align-items:center;padding:10px 20px;display:flex}.header-left{flex-direction:column;display:flex}.header-left h1{margin:0;font-size:24px}.subtitle{color:#ccc;font-family:Inter,sans-serif;font-size:16px;font-style:italic}.header-right{align-items:center;display:flex}.header-right select{margin-right:15px;padding:5px}.header-right a{color:#fff;cursor:pointer;margin-left:10px;text-decoration:none}.no-decor{color:#fff;text-decoration:none}@media (width<=600px){.header{flex-direction:column;align-items:flex-start}.header-right{justify-content:space-between;width:100%;margin-top:10px}.header-right select,.header-right a{margin:0}}.section{background-color:#fff;margin-top:1em;padding:1em}table{border-collapse:collapse;width:100%;margin-bottom:20px}th,td{text-align:left;border-bottom:1px solid #ddd;padding:10px}th{background-color:#f4f4f4}#astro-chart h2,h3,h4{text-align:center}#astro-chart .chart{text-align:center;margin-bottom:1em}#astro-chart .chart img{max-width:100%;height:auto}#astro-chart .planet-positions{text-align:center}#astro-chart .planet-positions ul{list-style-type:none}#astro-chart .planet-positions li{margin-bottom:.5em}.horoscope-list{padding:0;list-style:none}.horoscope-item{margin-bottom:20px}.horoscope-text{margin:0;line-height:1.6;overflow:hidden}.zodiac-symbol{float:left;color:#444;text-align:center;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-variant:normal;min-width:40px;margin-bottom:-4px;margin-right:15px;font-family:Segoe UI Symbol,Apple Color Emoji,Noto Color Emoji,Symbola,Arial Unicode MS,DejaVu Sans,Lucida Sans Unicode,GNU Unifont,sans-serif;font-size:40px;font-weight:400;line-height:1.2}.sign-name{color:#333;font-weight:700}#register{background-color:#fff;max-width:600px;margin:1em auto 0;padding:1em 1em 12em}#register h2{text-align:center;margin-bottom:1em}form{flex-direction:column;align-items:center;display:flex}.form-group{width:100%;max-width:500px;margin-bottom:1em}label{margin-bottom:.5em;font-weight:700;display:block}input[type=text],input[type=email],input[type=date],input[type=time],select{border:1px solid #ccc;border-radius:4px;width:100%;padding:.5em;font-size:1em}.autocomplete-container{width:100%;position:relative}.suggestions{z-index:1000;background-color:#fff;border:1px solid #ccc;border-top:none;max-height:200px;display:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.suggestions div{cursor:pointer;padding:.5em}.suggestions div:hover{background-color:#f0f0f0}button{color:#fff;cursor:pointer;background-color:#333;border:none;border-radius:4px;width:100%;max-width:500px;margin-top:10px;padding:.75em 1.5em;font-size:16px}button:hover{background-color:#555}.error{color:#ff4500;margin-bottom:.5em;font-weight:700}.success{color:green;font-weight:700}.center-txt{text-align:center}#button-link{color:#fff;text-align:center;background-color:#333;border-radius:4px;width:100%;max-width:500px;padding:.75em 1.5em;text-decoration:none;display:inline-block}#button-link:hover{background-color:#555}#site-footer{color:#888;text-align:center;background:linear-gradient(#fff,#fafafa);border-top:1px solid #f0f0f0;margin-top:20px;padding-top:4em;padding-bottom:2em;font-size:.8em}#site-footer p{margin:.5em 0;line-height:1.6}#site-footer p:first-of-type{color:#666;font-weight:700}#site-footer a{color:#888;text-decoration:none}#site-footer a:hover{color:#444;text-decoration:underline}#register-link{margin-top:1em;padding:1em}@media (width<=600px){.container{padding:0 .5em}#register button{width:100%}}@media (width<=480px){.zodiac-symbol{min-width:36px;margin-bottom:0;margin-right:10px;font-size:36px;line-height:1.25}.horoscope-text{font-size:.95em}}.landing-page{background:linear-gradient(135deg,#f8f9fa 0%,#e8eaf6 50%,#f3e5f5 100%);min-height:100vh;overflow-x:hidden}.hero-section{justify-content:center;align-items:center;min-height:90vh;padding:2rem 1rem;display:flex;position:relative;overflow:hidden}.hero-content{z-index:1;grid-template-columns:1fr 1fr;align-items:center;gap:3rem;max-width:1200px;margin:0 auto;display:grid;position:relative}.stars-background{pointer-events:none;background-image:radial-gradient(2px 2px at 20% 30%,#6b5b954d,#0000),radial-gradient(2px 2px at 60% 70%,#6b5b954d,#0000),radial-gradient(1px 1px,#6b5b954d,#0000),radial-gradient(1px 1px at 80% 10%,#6b5b954d,#0000),radial-gradient(2px 2px at 90% 60%,#6b5b954d,#0000),radial-gradient(1px 1px at 33% 80%,#6b5b954d,#0000);background-size:200% 200%;animation:8s ease-in-out infinite twinkle;position:absolute;inset:0}@keyframes twinkle{0%,to{opacity:.5}50%{opacity:1}}.hero-text{text-align:left}.hero-title{color:#2d2d2d;margin-bottom:1.5rem;font-size:3.5rem;font-weight:700;line-height:1.2}.gradient-text{background:linear-gradient(135deg,#6b5b95 0%,#8e7cc3 50%,#b8a4d9 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;display:inline-block}.hero-subtitle{color:#5a5a5a;max-width:500px;margin-bottom:2.5rem;font-size:1.25rem;line-height:1.8}.cta-group{flex-wrap:wrap;align-items:stretch;gap:1rem;display:flex}.cta-group .cta-button{flex:0 auto;justify-content:center;min-width:13rem;line-height:1.5}.cta-group .cta-button-large{min-width:15rem}.cta-group .cta-icon{line-height:1}.cta-button{box-sizing:border-box;color:#fff;cursor:pointer;background:linear-gradient(135deg,#6b5b95 0%,#8e7cc3 100%);border:2px solid #0000;border-radius:50px;align-items:center;gap:.75rem;padding:1rem 2.5rem;font-size:1.125rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex;box-shadow:0 4px 15px #6b5b954d}.cta-button:hover{background:linear-gradient(135deg,#7c6ca5 0%,#9f8dd3 100%);transform:translateY(-2px);box-shadow:0 6px 25px #6b5b9566}.cta-button:active{transform:translateY(0)}.cta-button-secondary{color:#6b5b95;box-shadow:none;background:0 0;border:2px solid #6b5b9566}.cta-button-secondary:hover{color:#6b5b95;box-shadow:none;background:#6b5b9514;border-color:#6b5b95}.cta-icon{font-size:1.5rem;animation:2s ease-in-out infinite pulse}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.hero-visual{justify-content:center;align-items:center;display:flex}.astro-illustration{filter:drop-shadow(0 10px 30px #6b5b9533);width:100%;max-width:400px;height:auto;animation:6s ease-in-out infinite float}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.features-section{background:#fff;padding:5rem 1rem}.features-container{max-width:1200px;margin:0 auto}.section-title{text-align:center;color:#2d2d2d;margin-bottom:3rem;font-size:2.5rem;font-weight:700}.features-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:3rem;display:grid}.feature-card{--feature-accent:#7866a8;--feature-border:#7866a82e;--feature-hover-border:#7866a85c;--feature-glow:#7866a821;--feature-surface:#f7f4fc;--feature-effect:radial-gradient(circle at 84% 18%, var(--feature-glow) 0 8%, transparent 36%);isolation:isolate;background:var(--feature-effect), linear-gradient(145deg, var(--feature-surface), #fff 76%);text-align:left;border:1px solid var(--feature-border);border-radius:20px;flex-direction:column;padding:2.5rem 2rem 2.25rem;transition:transform .3s,box-shadow .3s,border-color .3s;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 35px #322a4b0f}.feature-card:hover{box-shadow:0 18px 42px var(--feature-glow);border-color:var(--feature-hover-border);transform:translateY(-4px)}.feature-card:nth-child(2){--feature-accent:#527da8;--feature-border:#527da82e;--feature-hover-border:#527da85c;--feature-glow:#527da821;--feature-surface:#f1f7fb;--feature-effect:linear-gradient(118deg, transparent 34%, var(--feature-glow) 50%, transparent 68%)}.feature-card:nth-child(3){--feature-accent:#6658a7;--feature-border:#6658a72e;--feature-hover-border:#6658a75c;--feature-glow:#6658a721;--feature-surface:#f3f1fb;--feature-effect:conic-gradient(from 205deg at 82% 18%, transparent, var(--feature-glow), transparent 28%)}.feature-card:nth-child(4){--feature-accent:#a45f7d;--feature-border:#a45f7d2e;--feature-hover-border:#a45f7d5c;--feature-glow:#a45f7d21;--feature-surface:#fcf3f7;--feature-effect:radial-gradient(circle at 12% 88%, var(--feature-glow), transparent 30%), radial-gradient(circle at 88% 14%, var(--feature-glow), transparent 34%)}.feature-card:nth-child(5){--feature-accent:#4d8b88;--feature-border:#4d8b882e;--feature-hover-border:#4d8b885c;--feature-glow:#4d8b8821;--feature-surface:#f0f8f7;--feature-effect:repeating-linear-gradient(125deg, transparent 0 2rem, var(--feature-glow) 2rem 2.05rem)}.feature-card:nth-child(6){--feature-accent:#9a7a46;--feature-border:#9a7a462e;--feature-hover-border:#9a7a465c;--feature-glow:#9a7a4621;--feature-surface:#fbf7ee;--feature-effect:radial-gradient(circle at 76% 22%, var(--feature-glow) 0 2px, transparent 3px), radial-gradient(circle at 88% 38%, var(--feature-glow) 0 3px, transparent 4px), radial-gradient(circle at 68% 46%, var(--feature-glow) 0 1px, transparent 2px), radial-gradient(circle at 92% 68%, var(--feature-glow) 0 2px, transparent 3px)}.feature-title{color:#2d2d2d;overflow-wrap:break-word;min-height:3.75em;margin-bottom:1rem;font-size:1.5rem;font-weight:600;line-height:1.25}.feature-description{color:#666;font-size:1rem;line-height:1.7}@media (width<=768px){.feature-title{min-height:auto}.cta-group{flex-direction:column;align-items:stretch;gap:.75rem}.cta-group .cta-button{justify-content:center}}.cta-section{text-align:center;background:linear-gradient(135deg,#6b5b95 0%,#8e7cc3 100%);padding:5rem 1rem}.cta-container{max-width:800px;margin:0 auto}.cta-title{color:#fff;margin-bottom:1.5rem;font-size:2.5rem;font-weight:700}.cta-text{color:#ffffffe6;margin-bottom:2.5rem;font-size:1.25rem;line-height:1.7}.cta-button-large{color:#6b5b95;background:#fff;padding:1.25rem 3rem;font-size:1.25rem;box-shadow:0 4px 20px #0003}.cta-button-large:hover{color:#6b5b95;background:#f8f9fa;box-shadow:0 6px 30px #0000004d}.cta-section .cta-group{justify-content:center}.cta-section .cta-button-secondary,.cta-section .cta-button-secondary:hover{color:#fff;box-shadow:none;border-color:#fff9}.cta-section .cta-button-secondary{background:0 0}.cta-section .cta-button-secondary:hover{background:#ffffff1f;border-color:#fff}.landing-footer{text-align:center;color:#5a5a5a;background:#f8f9fa;padding:2rem 1rem;font-size:.95rem}.landing-footer p{opacity:.55;margin:.15rem 0}.landing-footer a{color:inherit;border-bottom:1px solid;text-decoration:none}.landing-footer a:hover{opacity:1}.landing-footer-links{margin-top:.6rem}.card-page,.register-page,.login-page{background:linear-gradient(135deg,#f8f9fa 0%,#e8eaf6 50%,#f3e5f5 100%);justify-content:center;min-height:100vh;padding:2rem 1rem;display:flex}.login-container{background:#fff;border-radius:20px;flex-direction:column;width:100%;max-width:900px;min-height:auto;padding:3rem 2.5rem;display:flex;box-shadow:0 10px 40px #6b5b9526}.login-container .step-content{flex-direction:column;align-items:center;display:flex}.login-container .auth-methods-container,.register-container .step-3-form .auth-methods-container{margin-top:.5rem}.login-header{text-align:center;margin-bottom:2rem}.login-header h1{color:#2d2d2d;margin-bottom:1rem;font-size:2rem;font-weight:700;line-height:1.2}.login-subtitle{color:#666;font-size:1rem;line-height:1.6}.login-content{margin-bottom:2rem}.login-visual{justify-content:center;align-items:center;margin-bottom:2rem;display:flex}.login-illustration{width:200px;height:200px;animation:20s linear infinite rotateGlow}@keyframes rotateGlow{0%{filter:drop-shadow(0 0 10px #6b5b954d);transform:rotate(0)}50%{filter:drop-shadow(0 0 20px #6b5b9580)}to{filter:drop-shadow(0 0 10px #6b5b954d);transform:rotate(360deg)}}.login-form{width:100%}.login-form .form-group{margin-bottom:1.5rem}.login-form label{color:#2d2d2d;margin-bottom:.5rem;font-size:.95rem;font-weight:500;display:block}.login-form input{background:#fafafa;border:2px solid #e0e0e0;border-radius:8px;width:100%;padding:.875rem 1rem;font-size:1rem;transition:all .3s}.login-form input:focus{background:#fff;border-color:#6b5b95;outline:none;box-shadow:0 0 0 3px #6b5b951a}.btn-login{cursor:pointer;color:#fff;background:linear-gradient(135deg,#6b5b95 0%,#8e7cc3 100%);border:none;border-radius:50px;justify-content:center;align-items:center;gap:.5rem;width:100%;min-height:44px;margin-top:.5rem;padding:.875rem 2rem;font-size:1rem;font-weight:600;transition:all .3s;display:inline-flex;box-shadow:0 4px 15px #6b5b954d}.btn-login:hover{background:linear-gradient(135deg,#7c6ca5 0%,#9f8dd3 100%);transform:translateY(-2px);box-shadow:0 6px 25px #6b5b9566}.btn-login:active{transform:translateY(0)}.btn-login .btn-icon{font-size:1.25rem}.card-page-footer,.register-prompt{text-align:center;border-top:1px solid #e0e0e0;margin-top:auto;padding-top:2rem;padding-bottom:2rem}.card-page-footer p,.register-prompt p{color:#666;font-size:.95rem}.card-page-footer-link,.register-link{color:#6b5b95;font-weight:600;text-decoration:none;transition:all .3s}.card-page-footer-link:hover,.register-link:hover{color:#8e7cc3;text-decoration:underline}.register-container{background:#fff;border-radius:20px;flex-direction:column;width:100%;max-width:900px;min-height:80vh;padding:3rem 2.5rem;display:flex;box-shadow:0 10px 40px #6b5b9526}.register-header{text-align:center;margin-bottom:2.5rem}.register-header h1{color:#2d2d2d;margin-bottom:1rem;font-size:2.5rem;font-weight:700;line-height:1.2}.register-subtitle{color:#666;font-size:1.125rem;line-height:1.6}.step-indicator{justify-content:space-between;align-items:center;margin-bottom:3rem;padding:0 1rem;display:flex}.step{flex-direction:column;flex:none;align-items:center;gap:.5rem;display:flex;position:relative}.step-number{color:#999;background:#e0e0e0;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.25rem;font-weight:600;transition:all .3s;display:flex}.step.active .step-number{color:#fff;background:linear-gradient(135deg,#6b5b95 0%,#8e7cc3 100%);box-shadow:0 4px 15px #6b5b954d}.step.completed .step-number{color:#fff;background:#4caf50}.step-label{color:#999;font-size:.875rem;font-weight:500;transition:all .3s}.step.active .step-label{color:#6b5b95;font-weight:600}.step.completed .step-label{color:#4caf50}.step-line{background:#e0e0e0;flex:1;height:2px;margin:0 .5rem 2rem}.step-content{margin-bottom:2rem;animation:.4s fadeIn}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.step-title{color:#2d2d2d;text-align:center;margin-bottom:.75rem;font-size:1.75rem;font-weight:600}.step-description{color:#666;text-align:center;margin-bottom:2rem;font-size:1rem;line-height:1.6}.language-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:2rem;display:grid}.language-card{cursor:pointer;background:#fafafa;border:2px solid #e0e0e0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;min-height:70px;padding:1.25rem 1rem;transition:all .3s;display:flex;position:relative}.language-card:hover{background:#fff;border-color:#b8a4d9;transform:translateY(-2px);box-shadow:0 4px 12px #6b5b951a}.language-card.selected{background:linear-gradient(135deg,#6b5b950d 0%,#b8a4d90d 100%);border-color:#6b5b95;box-shadow:0 4px 15px #6b5b9533}.language-name{color:#2d2d2d;text-align:center;font-size:1.125rem;font-weight:500}.check-icon{color:#fff;background:#6b5b95;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:.875rem;font-weight:600;display:flex;position:relative;top:auto;right:auto}@media (width>=769px){.language-card .check-icon{position:absolute;top:8px;right:8px}}.form-grid{grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem;display:grid}.full-width-field{width:100%;margin-bottom:1.5rem}.full-width-field .form-group{width:100%;max-width:none;margin-bottom:0}.full-width-field .autocomplete-container,.full-width-field input{width:100%}.form-group{margin-bottom:1.5rem}.form-group label{color:#2d2d2d;margin-bottom:.5rem;font-size:.95rem;font-weight:500;display:block}.form-group input{background:#fafafa;border:2px solid #e0e0e0;border-radius:8px;width:100%;padding:.875rem 1rem;font-size:1rem;transition:all .3s}.form-group input:focus{background:#fff;border-color:#6b5b95;outline:none;box-shadow:0 0 0 3px #6b5b951a}.form-group small{color:#666;margin-top:.5rem;font-size:.875rem;display:block}.email-input{animation:.3s slideDown}@keyframes slideDown{0%{opacity:0;max-height:0;margin:0}to{opacity:1;max-height:200px;margin-bottom:1.5rem}}.communication-grid{flex-direction:column;align-items:center;gap:1rem;max-width:500px;margin-bottom:2rem;margin-left:auto;margin-right:auto;display:flex}.communication-card{cursor:pointer;background:#fafafa;border:2px solid #e0e0e0;border-radius:12px;flex-direction:row;justify-content:flex-start;align-items:center;gap:1rem;width:100%;min-height:60px;padding:1rem 1.5rem;transition:all .3s;display:flex;position:relative}.communication-card:hover{background:#fff;border-color:#b8a4d9;transform:translateY(-2px);box-shadow:0 4px 12px #6b5b951a}.communication-card.selected{background:linear-gradient(135deg,#6b5b950d 0%,#b8a4d90d 100%);border-color:#6b5b95;box-shadow:0 4px 15px #6b5b9533}.comm-icon{object-fit:contain;width:40px;height:40px}.comm-name{color:#2d2d2d;text-align:left;flex:1;font-size:1.125rem;font-weight:500}.comm-card-icon{margin-bottom:.75rem;font-size:2.5rem}.communication-card h3{color:#2d2d2d;margin-bottom:.5rem;font-size:1.25rem;font-weight:600}.communication-card p{color:#666;margin-bottom:1rem;font-size:.9rem;line-height:1.4}.btn-comm-select{cursor:pointer;color:#fff;background:linear-gradient(135deg,#6b5b95 0%,#8e7cc3 100%);border:none;border-radius:50px;width:100%;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .3s;box-shadow:0 4px 15px #6b5b954d}.btn-comm-select:hover{transform:translateY(-2px);box-shadow:0 6px 20px #6b5b9566}.telegram-link-section{flex-direction:column;align-items:center;gap:1rem;width:100%;display:flex}.btn-telegram-link{cursor:pointer;color:#fff;text-align:center;background:linear-gradient(135deg,#08c 0%,#0ae 100%);border:none;border-radius:50px;width:100%;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-block;box-shadow:0 4px 15px #0088cc4d}.btn-telegram-link:hover{color:#fff;transform:translateY(-2px);box-shadow:0 6px 20px #08c6}.whatsapp-link-section{flex-direction:column;align-items:center;gap:1rem;width:100%;display:flex}.btn-whatsapp-link{cursor:pointer;color:#fff;text-align:center;background:linear-gradient(135deg,#25d366 0%,#128c7e 100%);border:none;border-radius:50px;width:100%;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-block;box-shadow:0 4px 15px #25d3664d}.btn-whatsapp-link:hover{color:#fff;transform:translateY(-2px);box-shadow:0 6px 20px #25d36666}.whatsapp-instruction{color:#666;margin:0;font-size:.85rem;font-style:italic}.comm-provider-icon-img{object-fit:contain;flex-shrink:0;width:32px;height:32px}.comm-detail-icon-img{object-fit:contain;width:48px;height:48px}.current-provider-icon-img{object-fit:contain;width:20px;height:20px}.waiting-indicator{flex-direction:column;align-items:center;gap:.5rem;display:flex}.waiting-text{color:#666;font-size:.85rem}.button-group{justify-content:flex-end;align-items:center;gap:1rem;margin-top:2rem;display:flex}.button-group:has(.btn-submit):not(:has(.btn-back)){justify-content:center}.btn-back,.btn-next,.btn-submit{cursor:pointer;border:none;border-radius:50px;align-items:center;gap:.5rem;min-height:44px;padding:.875rem 2rem;font-size:1rem;font-weight:600;transition:all .3s;display:inline-flex}.btn-back{color:#666;background:#f5f5f5;border:2px solid #e0e0e0}.btn-back:hover{color:#2d2d2d;background:#e0e0e0}.btn-next,.btn-submit{color:#fff;background:linear-gradient(135deg,#6b5b95 0%,#8e7cc3 100%);justify-content:center;min-width:180px;box-shadow:0 4px 15px #6b5b954d}.btn-next:hover,.btn-submit:hover{background:linear-gradient(135deg,#7c6ca5 0%,#9f8dd3 100%);transform:translateY(-2px);box-shadow:0 6px 25px #6b5b9566}.btn-next:active,.btn-submit:active{transform:translateY(0)}.btn-icon{font-size:1.25rem;animation:2s ease-in-out infinite pulse}.error-message{color:#c62828;background:#ffebee;border-left:4px solid #c62828;border-radius:8px;align-items:center;gap:.75rem;margin-bottom:1.5rem;padding:1rem 1.25rem;animation:.4s shake;display:flex}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.success-card{text-align:center;padding:2rem;animation:.6s fadeIn}.success-icon{margin-bottom:1.5rem;font-size:4rem;animation:1s infinite bounce;display:inline-block}.success-card h2{color:#2d2d2d;margin-bottom:1rem;font-size:2rem}.success-card p{color:#666;margin-bottom:2rem;font-size:1.125rem;line-height:1.6}.card-page-footer,.login-prompt{text-align:center;border-top:1px solid #e0e0e0;margin-top:auto;padding-top:2rem;padding-bottom:2rem}.card-page-footer p,.login-prompt p{color:#666;font-size:.95rem}.card-page-footer-link,.login-link{color:#6b5b95;font-weight:600;text-decoration:none;transition:all .3s}.card-page-footer-link:hover,.login-link:hover{color:#8e7cc3;text-decoration:underline}@media (width<=768px){.hero-content{text-align:center;grid-template-columns:1fr;gap:2rem}.hero-text{text-align:center}.hero-title{font-size:2.5rem}.hero-subtitle{max-width:100%;font-size:1.125rem}.astro-illustration{max-width:300px}.section-title,.cta-title{font-size:2rem}.cta-text{font-size:1.125rem}.features-grid{grid-template-columns:1fr;gap:1.5rem}.feature-card,.register-container{padding:2rem 1.5rem}.register-header h1{font-size:2rem}.register-subtitle{font-size:1rem}.login-container{padding:2rem 1.5rem}.login-header h1{font-size:1.75rem}.login-subtitle{font-size:.95rem}.login-illustration{width:150px;height:150px}.step-indicator{padding:0}.step-number{width:40px;height:40px;font-size:1rem}.step-label{font-size:.75rem}.step-line{margin:0 .25rem}.step-title{font-size:1.5rem}.language-grid,.communication-grid{grid-template-columns:repeat(2,1fr)}.register-container .form-grid{grid-template-columns:1fr;gap:1.5rem}.button-group{flex-direction:column}.btn-back{order:2}.btn-next,.btn-submit{order:1}}@media (width<=480px){.hero-section{min-height:auto;padding:3rem 1rem}.hero-title{font-size:2rem}.hero-subtitle{margin-bottom:2rem;font-size:1rem}.cta-button{padding:.875rem 2rem;font-size:1rem}.astro-illustration{max-width:250px}.section-title{font-size:1.75rem}.feature-title{font-size:1.25rem}.feature-description{font-size:.95rem}.cta-section{padding:3rem 1rem}.cta-title{font-size:1.75rem}.cta-text{font-size:1rem}.cta-button-large{padding:1rem 2rem;font-size:1rem}.register-page{padding:1rem .5rem}.register-container{border-radius:15px;padding:1.5rem 1rem}.register-header h1{font-size:1.75rem}.register-subtitle{font-size:.95rem}.login-page{padding:1rem .5rem}.login-container{border-radius:15px;padding:1.5rem 1rem}.login-header h1{font-size:1.5rem}.login-subtitle{font-size:.875rem}.login-illustration{width:120px;height:120px}.step-indicator{margin-bottom:2rem}.step-title{font-size:1.25rem}.step-description{font-size:.95rem}.language-grid,.communication-grid{gap:.75rem}.language-card,.communication-card{min-height:100px;padding:1.25rem .75rem}.language-flag,.comm-icon{font-size:2rem}.btn-back,.btn-next,.btn-submit{padding:.75rem 1.5rem;font-size:.95rem}}@media (width>=1440px){.hero-title{font-size:4rem}.hero-subtitle{font-size:1.375rem}.section-title,.cta-title{font-size:3rem}}@media (prefers-reduced-motion:reduce){.astro-illustration,.stars-background,.cta-icon,.login-illustration{animation:none}.cta-button:hover,.feature-card:hover{transform:none}.step-content,.error-message,.success-card,.email-input{animation:none}.btn-next:hover,.btn-submit:hover,.btn-login:hover,.language-card:hover,.communication-card:hover{transform:none}}.start-page{background:linear-gradient(#faf8ff 0%,#f3edff 100%);flex-direction:column;gap:1.25rem;min-height:100vh;padding:0 1rem 2.5rem;display:flex}.start-header{margin-inline:-1rem}.start-header .chat-header-inner{max-width:720px}.start-hero,.start-convert{background:#fff;border:1px solid #e8d5ff;border-radius:18px;width:100%;max-width:720px;margin:0 auto;padding:1.25rem;box-shadow:0 6px 24px #6b5b9514}.start-sign{align-items:center;gap:.85rem;display:flex}.start-sign-glyph{color:#6b5b95;font-size:2.6rem;line-height:1}.start-sign-name{color:#2d2d2d;margin:0;font-size:1.4rem}.start-date{color:#666;margin:.15rem 0 0;font-size:.9rem}.start-loading{color:#666;margin:1.25rem 0 0}.start-headline{color:#4a3d6b;margin:1.1rem 0 .6rem;font-size:1.15rem;line-height:1.4}.start-body{color:#2d2d2d;white-space:pre-line;margin:0;line-height:1.65}.start-focus{flex-direction:column;gap:.4rem;margin:1rem 0 0;padding:0;list-style:none;display:flex}.start-focus li{color:#4a3d6b;background:#faf8ff;border:1px solid #e8d5ff;border-radius:10px;padding:.5rem .7rem;font-size:.92rem}.start-chart{background:#fff;border-radius:14px;width:100%;height:auto;margin:1.1rem auto 0;display:block}.start-hook{background:#faf8ff;border-left:3px solid #c9a9ff;border-radius:0 10px 10px 0;margin:1.1rem 0 0;padding:.85rem .95rem}.start-hook-text{color:#4a3d6b;margin:0;line-height:1.55}.start-hook-cue{color:#7a6a99;margin:.4rem 0 0;font-size:.85rem}.start-convert{text-align:center}.start-question{color:#2d2d2d;margin:0 0 1rem;font-size:1.05rem;line-height:1.5}@media (width>=769px){.start-page{padding:0 1rem 2.5rem}.start-hero,.start-convert{padding:1.75rem}}@media (width<=768px){.start-page{overscroll-behavior:none;-webkit-overflow-scrolling:touch;min-height:0;padding-bottom:.5rem;overflow-y:auto}.start-convert{padding-bottom:.5rem}}.chat-panel{text-align:left;flex-direction:column;gap:.75rem;min-width:0;display:flex}.chat-panel-scroll{flex-direction:column;gap:.75rem;min-width:0;display:flex}.chat-panel-header .start-hero{max-width:none;box-shadow:none;background:0 0;border:0;border-bottom:1px solid #e8d5ff;border-radius:0;margin:0;padding:0 0 1.25rem}.chat-panel-messages{flex-direction:column;gap:.5rem;min-width:0;display:flex}.chat-panel-bubble{overflow-wrap:anywhere;white-space:pre-line;border-radius:14px;max-width:88%;padding:.6rem .8rem;line-height:1.55}.chat-panel-assistant{color:#2d2d2d;background:#faf8ff;border:1px solid #e8d5ff;align-self:flex-start}.chat-panel-user{color:#fff;background:#6b5b95;align-self:flex-end}.chat-panel-error{color:#8a2b2b;background:#fdeaea;border:1px solid #f3c2c2;align-self:flex-start}.chat-panel-pending{color:#666;font-style:italic}.start-chat-error{color:#8a2b2b;text-align:left;margin:0;font-size:.9rem}.start-signup{background:#faf8ff;border:1px solid #e8d5ff;border-radius:12px;flex-direction:column;align-items:center;gap:.6rem;padding:1.1rem 1rem;animation:.42s ease-out both start-signup-fade-in;display:flex}@keyframes start-signup-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.start-signup{animation:none}}.start-signup-note{color:#6b5f8a;text-align:center;margin:0;font-size:.9rem}.start-signup-copy{color:#4a3d6b;text-align:center;margin:0}.oauth-buttons{flex-direction:column;align-items:center;gap:.6rem;width:100%;min-width:0;display:flex}.google-signin-btn{width:100%;min-width:0;max-width:280px;min-height:44px}.objective-push{background:#faf8ff;border:1px solid #e8d5ff;border-radius:12px;flex-direction:column;align-items:center;gap:.6rem;width:100%;min-width:0;max-width:100%;padding:1.1rem 1rem;animation:.42s ease-out both start-signup-fade-in;display:flex}.objective-push-copy{text-align:center;color:#4a3a63;margin:0}.objective-push-skip{color:#6b5b8a;cursor:pointer;background:0 0;border:none;min-height:44px;padding:0 .75rem;text-decoration:underline}@media (prefers-reduced-motion:reduce){.objective-push{animation:none}}.start-page-chat .start-convert{flex-direction:column;flex:auto;justify-content:flex-end;display:flex}@media (width<=768px){.start-page{width:100%;max-width:100%;overflow-x:hidden}.start-convert{max-width:none;padding:.75rem max(.75rem, env(safe-area-inset-right)) .5rem max(.75rem, env(safe-area-inset-left));box-shadow:none;background:0 0;border:0;border-radius:0}.start-page-start,.start-page-register,.start-page-chat{gap:0;padding:0;overflow:hidden}.start-header{padding:.5rem max(.75rem, env(safe-area-inset-right)) .5rem max(.75rem, env(safe-area-inset-left));margin-inline:0}.start-page-start .start-convert,.start-page-register .start-convert,.start-page-chat .start-convert{flex-direction:column;flex:auto;justify-content:flex-start;min-height:0;margin:0;padding:0;display:flex}.start-page-start .chat-panel,.start-page-register .chat-panel,.start-page-chat .chat-panel{flex:auto;gap:0;min-height:0;overflow:hidden}.start-page-start .chat-panel-scroll,.start-page-register .chat-panel-scroll,.start-page-chat .chat-panel-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y pinch-zoom;min-height:0;padding:max(.75rem, env(safe-area-inset-top)) max(.75rem, env(safe-area-inset-right)) .75rem max(.75rem, env(safe-area-inset-left));flex:auto;scroll-padding-block:.75rem;overflow:hidden auto}.start-page-start .chat-input-bar--panel,.start-page-register .chat-input-bar--panel,.start-page-chat .chat-input-bar--panel{min-width:0;padding:.35rem max(.75rem, env(safe-area-inset-right)) max(.35rem, env(safe-area-inset-bottom)) max(.75rem, env(safe-area-inset-left));background:#faf8fffa;border-top:1px solid #6b5b9524;flex:none}.start-page-start .chat-input-bar--panel .chat-input-container,.start-page-register .chat-input-bar--panel .chat-input-container,.start-page-chat .chat-input-bar--panel .chat-input-container{padding:0}}.chat-panel-chart{width:100%;max-width:100%;height:auto;display:block}.chat-panel-bubble.chat-panel-chart-bubble{background:0 0;border:none;width:100%;max-width:100%;padding:0}.comm-provider-options{flex-direction:column;gap:1rem;margin-bottom:2rem;animation:.4s fadeIn;display:flex}.comm-provider-option{box-sizing:border-box;text-align:left;cursor:pointer;background:#fff;border:2px solid #e0e0e0;border-radius:16px;align-items:center;gap:1rem;width:100%;min-height:44px;padding:1.25rem 1.5rem;font-family:inherit;transition:all .3s;display:flex}@media (hover:hover){.comm-provider-option:hover{background:linear-gradient(135deg,#6b5b9508 0%,#b8a4d908 100%);border-color:#b8a4d9;transform:translateY(-2px);box-shadow:0 6px 20px #6b5b951f}}.comm-provider-option:active{transform:translateY(0)}.comm-provider-icon{flex-shrink:0;font-size:2rem}.comm-provider-name{color:#2d2d2d;font-size:1.125rem;font-weight:600}.comm-provider-details{text-align:center;background:#fff;border:2px solid #6b5b95;border-radius:20px;flex-direction:column;align-items:center;margin-bottom:2rem;padding:2rem;animation:.4s fadeIn;display:flex;box-shadow:0 8px 30px #6b5b9526}.comm-detail-header{flex-direction:column;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.comm-detail-icon{font-size:3rem}.comm-detail-header h3{color:#2d2d2d;margin:0;font-size:1.5rem;font-weight:700}.comm-detail-description{color:#666;margin:0 0 1.5rem;font-size:1rem;line-height:1.6}.btn-comm-confirm{cursor:pointer;color:#fff;background:linear-gradient(135deg,#6b5b95 0%,#8e7cc3 100%);border:none;border-radius:50px;width:100%;max-width:280px;margin-bottom:1rem;padding:.875rem 2rem;font-size:1rem;font-weight:600;transition:all .3s;box-shadow:0 4px 15px #6b5b954d}.btn-comm-confirm:hover{background:linear-gradient(135deg,#7c6ca5 0%,#9f8dd3 100%);transform:translateY(-2px);box-shadow:0 6px 25px #6b5b9566}.btn-comm-back{color:#6b5b95;cursor:pointer;background:0 0;border:none;padding:.5rem 1rem;font-size:.95rem;font-weight:500;transition:all .3s}.btn-comm-back:hover{color:#8e7cc3;text-decoration:underline}.comm-provider-details .telegram-link-section{width:100%;max-width:280px;margin-bottom:1rem}.comm-provider-details .btn-telegram-link{width:100%}@media (width<=480px){.comm-provider-option{padding:1rem 1.25rem}.comm-provider-icon{font-size:1.75rem}.comm-provider-name{font-size:1rem}.comm-provider-details{padding:1.5rem 1rem}.comm-detail-icon{font-size:2.5rem}.comm-detail-header h3{font-size:1.25rem}}.comm-selector-embedded{width:100%}.comm-selector-embedded .comm-provider-options{margin-bottom:0}.comm-selector-embedded .comm-provider-option{border-radius:10px;padding:.875rem 1rem}.comm-selector-embedded .comm-provider-option.current{cursor:default;background:linear-gradient(135deg,#6b5b950d 0%,#b8a4d90d 100%);border-color:#d5c2f0}.comm-selector-embedded .comm-provider-icon{font-size:1.5rem}.comm-selector-embedded .comm-provider-name{font-size:1rem}.comm-selector-embedded .comm-provider-details{border-radius:12px;padding:1.25rem}.comm-selector-embedded .comm-detail-icon{font-size:2rem}.comm-selector-embedded .comm-detail-header h3{font-size:1.125rem}.comm-selector-embedded .comm-detail-description{margin-bottom:1rem;font-size:.9rem}.comm-selector-embedded .btn-comm-confirm{max-width:100%;padding:.75rem 1.5rem;font-size:.9rem}.comm-selector-embedded .btn-telegram-link{padding:.75rem 1.5rem;font-size:.9rem}.provider-current-tag{color:#6b5b95;margin-left:auto;font-weight:600}.current-provider-badge{background:linear-gradient(135deg,#6b5b9514 0%,#b8a4d914 100%);border-radius:10px;align-items:center;gap:.5rem;margin-bottom:.75rem;padding:.75rem 1rem;display:flex}.current-provider-icon{font-size:1.25rem}.current-provider-name{color:#5a5a5a;font-size:.9rem}.home-page{background:linear-gradient(135deg,#f8f9fa 0%,#e8eaf6 50%,#f3e5f5 100%);min-height:100vh;padding:0}.home-container{flex-direction:column;max-width:1000px;min-height:100vh;margin:0 auto;display:flex}.home-header{color:#fff;background:linear-gradient(135deg,#6b5b95 0%,#8e7cc3 100%);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1.5rem 2rem;display:flex}.home-header-left h1{margin:0;font-size:1.75rem;font-weight:700}.home-title-link{color:#fff;text-decoration:none;transition:opacity .3s}.home-title-link:hover{opacity:.9}.home-subtitle{color:#ffffffd9;margin:.25rem 0 0;font-family:Inter,sans-serif;font-size:1rem;font-style:italic}.home-header-right{align-items:center;gap:1rem;display:flex}.language-select{color:#fff;cursor:pointer;background:#ffffff26;border:1px solid #ffffff4d;border-radius:8px;padding:.5rem .75rem;font-size:.9rem}.language-select option{color:#333;background:#fff}.header-link{color:#fff;border-radius:8px;padding:.5rem 1rem;font-size:.95rem;text-decoration:none;transition:background .3s}.header-link:hover{background:#ffffff26}.logout-btn{color:#fff;cursor:pointer;background:#fff3;border:none;border-radius:8px;padding:.5rem 1rem;font-size:.95rem;transition:background .3s}.logout-btn:hover{background:#ffffff4d}.chat-interface{flex-direction:column;flex:1;gap:2rem;padding:2rem;display:flex}.chat-greeting{background:#fff;border-radius:20px;align-items:center;gap:1.5rem;padding:2rem;display:flex;box-shadow:0 4px 20px #6b5b951a}.ai-avatar{flex-shrink:0;width:80px;height:80px;animation:6s ease-in-out infinite float}.ai-avatar svg{filter:drop-shadow(0 4px 10px #6b5b954d);width:100%;height:100%}.greeting-text h2{margin-bottom:.5rem;font-size:1.75rem}.greeting-text p{color:#666;margin:0;font-size:1rem}.chat-message{background:#fff;border-radius:16px;gap:1rem;padding:1.5rem;animation:.5s slideIn;display:flex;box-shadow:0 4px 15px #6b5b9514}.chat-message.featured{background:linear-gradient(135deg,#faf8ff 0%,#f3e5f5 100%);border:2px solid #e8d5ff}@keyframes slideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.message-icon{flex-shrink:0;font-size:2rem}.message-content{flex:1;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,Segoe UI Symbol,Twemoji Mozilla,sans-serif}.message-header{color:#6b5b95;margin-bottom:.5rem;font-size:1.1rem;font-weight:600}.message-content p{color:#444;margin:0;line-height:1.7}.chat-section{flex-direction:column;gap:1rem;display:flex}.chat-bubble{border-radius:12px;padding:1rem 1.25rem;animation:.3s slideIn}.chat-bubble.user-bubble{background:linear-gradient(135deg,#6b5b95 0%,#8e7cc3 100%);margin-left:20%}.chat-bubble.user-bubble .bubble-content p{color:#fff}.chat-bubble.ai-bubble{background:linear-gradient(135deg,#faf8ff 0%,#f3e5f5 100%);border:1px solid #e8d5ff;margin-right:20%}.chat-bubble.ai-bubble .bubble-content p{color:#444}.bubble-icon{vertical-align:-.15em;margin-right:.5rem;font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,Segoe UI Symbol,Twemoji Mozilla,sans-serif;font-size:1.1rem;line-height:1}.bubble-content p{white-space:pre-wrap;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,Segoe UI Symbol,Twemoji Mozilla,sans-serif;line-height:1.5}.typing-indicator{animation:1s ease-in-out infinite typingPulse;display:inline-block}@keyframes typingPulse{0%,to{opacity:.4}50%{opacity:1}}.waiting-dots{justify-content:center;align-items:center;gap:6px;padding:8px 0;scroll-margin-bottom:1rem;display:flex}.waiting-dots .dot{background:linear-gradient(135deg,#6b5b95 0%,#8e7cc3 100%);border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite dotWave}.waiting-dots .dot:first-child{animation-delay:0s}.waiting-dots .dot:nth-child(2){animation-delay:.2s}.waiting-dots .dot:nth-child(3){animation-delay:.4s}@keyframes dotWave{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-8px)}}.chat-bubble.error-bubble{background:linear-gradient(135deg,#fff5f5 0%,#ffe6e6 100%);border:1px solid #fcc;margin-right:20%}.chat-bubble.error-bubble .bubble-content p{color:#c44}.chat-chart-entry{width:100%;animation:.3s slideIn}.chat-chart-image{border-radius:12px;width:100%;max-width:min(100%,540px);height:auto;display:block}.category-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;display:grid}.category-card{background:#fff;border:2px solid #0000;border-radius:16px;flex-direction:column;padding:1.5rem;transition:all .3s;display:flex;box-shadow:0 4px 15px #6b5b9514}.category-card:hover{border-color:#e8d5ff;transform:translateY(-3px);box-shadow:0 8px 25px #6b5b9526}.category-header{align-items:center;gap:.75rem;min-height:2.75rem;margin-bottom:1rem;display:flex}.category-icon{font-size:1.5rem}.category-title{color:#6b5b95;overflow-wrap:break-word;font-size:1.1rem;font-weight:600;line-height:1.25}.category-text{color:#555;margin:0 0 1rem;font-size:.95rem;line-height:1.6}.category-score{border-top:1px solid #f0f0f0;margin-top:auto;padding-top:1rem}.score-container{align-items:center;gap:1rem;display:flex}.score-bar-bg{background:#e8eaf6;border-radius:4px;flex:1;height:8px;overflow:hidden}.score-bar-fill{background:linear-gradient(90deg,#6b5b95 0%,#8e7cc3 100%);border-radius:4px;height:100%;transition:width 1s}.score-value{color:#6b5b95;text-align:right;min-width:40px;font-size:.85rem;font-weight:600}.chart-section{background:#fff;border-radius:20px;padding:2rem;box-shadow:0 4px 20px #6b5b951a}.commands-section{background:#fff;border-radius:20px;padding:1.5rem 2rem;box-shadow:0 4px 20px #6b5b951a}.commands-message{color:#444;margin:0 0 .75rem;line-height:1.6}.chart-title{text-align:center;color:#2d2d2d;margin-bottom:1.5rem;font-size:1.5rem}.chart-container{border-radius:12px;justify-content:center;display:flex;overflow:hidden}.chart-image{border-radius:12px;max-width:100%;height:auto}.home-footer{text-align:center;color:#666;background:#fff;border-top:1px solid #e0e0e0;padding:2rem;font-size:.9rem}.loading-state,.error-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:60vh;display:flex}.loading-spinner{font-size:4rem;animation:1.5s ease-in-out infinite pulse}.error-icon{font-size:4rem}.loading-state p,.error-state p{color:#666;font-size:1.1rem}.home-page.chat-layout{flex-direction:column;height:100dvh;min-height:0;display:flex;overflow:hidden}.home-page.chat-layout .home-container{flex-direction:column;flex:1;display:flex}.chat-content-wrapper{width:100%;max-width:900px;margin:0 auto}.chat-header{color:#fff;background:linear-gradient(135deg,#6b5b95 0%,#8e7cc3 100%);flex-shrink:0;justify-content:center;align-items:center;padding:.6rem 1.5rem;display:flex}.chat-header-inner{justify-content:space-between;align-items:center;width:100%;max-width:900px;display:flex}.chat-header-logo{color:#fff;font-size:1.2rem;font-weight:700;text-decoration:none;transition:opacity .3s}.chat-header-logo:hover{opacity:.9}.chat-header-actions{flex-direction:row;align-items:center;gap:0;display:flex}.chat-header-link{color:#fff;cursor:pointer;background:#ffffff1f;padding:.5rem 1rem;font-size:.8rem;line-height:1;text-decoration:none;transition:all .3s}.chat-header-link:first-child{border-radius:16px 0 0 16px}.chat-header-link:last-child{border-left:1px solid #ffffff26;border-radius:0 16px 16px 0}.chat-header-link:hover{background:#ffffff40}.chat-header-link--active,.chat-header-link--active:hover{color:#6b5b95;cursor:default;background:#fff;font-weight:700}.chat-response-area{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex-direction:column;flex:auto;align-items:center;gap:1.5rem;min-height:0;padding:1.5rem;display:flex;overflow-y:auto}.chat-scroll-anchor{pointer-events:none;width:100%;height:1px;margin:0;padding:0;scroll-margin-bottom:1rem}.chat-response-area>*{width:100%;max-width:900px}@media (width>=769px){.chat-response-area{scrollbar-width:none;max-width:940px;margin:0 auto;box-shadow:4px 0 8px -4px #6b5b951a,-4px 0 8px -4px #6b5b951a}.chat-response-area::-webkit-scrollbar{width:0;height:0}}.chat-starter{background:#fff;border-radius:16px;align-items:center;gap:1.25rem;padding:1.5rem;display:flex;box-shadow:0 4px 20px #6b5b951a}.chat-starter-avatar{flex-shrink:0;width:60px;height:60px;animation:6s ease-in-out infinite float}.chat-starter-avatar svg{filter:drop-shadow(0 4px 10px #6b5b954d);width:100%;height:100%}.chat-starter-content h2{margin:0 0 .25rem;font-size:1.5rem}.chat-starter-date{color:#666;margin:0;font-size:.95rem}.chat-input-bar{-webkit-backdrop-filter:saturate(180%)blur(16px);width:100%;padding-bottom:env(safe-area-inset-bottom,0px);background:#f8f5ffd9;border-top:1px solid #6b5b951f;flex:none;position:static}@supports not ((-webkit-backdrop-filter:blur(16px)) or (backdrop-filter:blur(16px))){.chat-input-bar{background:#f8f5fffa}}.chat-input-container{background:0 0;border-radius:0;flex-direction:column;align-items:center;width:100%;max-width:900px;margin:0 auto;padding:.75rem 1rem .5rem;display:flex}.chat-input-bar--panel{z-index:auto;-webkit-backdrop-filter:none;background:0 0;border-top:none;padding-bottom:0;position:static}.chat-input-bar--panel .chat-input-container{max-width:none;padding:.35rem 0 0}.emoji,.error-icon,.bubble-icon,.message-icon,.category-icon{font-feature-settings:normal;vertical-align:-.1em;font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,Segoe UI Symbol,Twemoji Mozilla,sans-serif;font-style:normal;font-weight:400;line-height:1;display:inline-block}.command-button .emoji{margin-right:.1rem;font-size:1.15rem}.commands-message .emoji,.start-bubble .emoji{vertical-align:-.18em;margin-right:.35rem;font-size:1.05em}.chat-composer{box-sizing:border-box;flex-direction:column;align-items:stretch;gap:.35rem;width:100%;max-width:100%;display:flex}.chat-composer-field{box-sizing:border-box;background:#fff;border:1.5px solid #d5c2f0;border-radius:22px;align-items:flex-end;gap:.5rem;width:100%;padding:0 0 0 .9rem;transition:border-color .2s,box-shadow .2s;display:flex;overflow:hidden}.chat-composer-field:focus-within{border-color:#8e7cc3;box-shadow:0 0 0 3px #6b5b9524}.chat-composer-field textarea{resize:none;min-width:0;font:inherit;color:#2d2d2d;background:0 0;border:none;outline:none;flex:auto;max-height:9rem;padding:.85rem 0;font-size:1rem;line-height:1.45}.chat-composer-field textarea::placeholder{color:#a99fc0}.chat-composer-field textarea:disabled{color:#8a8a8a}.chat-composer-send{color:#fff;cursor:pointer;background:linear-gradient(135deg,#6b5b95 0%,#8e7cc3 100%);border:none;border-radius:0;flex:none;justify-content:center;align-items:center;width:54px;height:54px;margin:0;padding:0;transition:transform .15s,opacity .2s,background .2s;display:flex}.chat-composer-send svg{width:20px;height:20px}.chat-composer-send:hover:not(:disabled){background:linear-gradient(135deg,#7c6ba5 0%,#9f8dd3 100%)}.chat-composer-send:active:not(:disabled){transform:scale(.94)}.chat-composer-send:disabled{opacity:0;cursor:default;pointer-events:none}.chat-composer-meta{color:#b8a4d9;justify-content:space-between;align-items:center;gap:.5rem;min-height:0;padding:0 .5rem;font-size:.72rem;display:flex}.chat-composer-hint{display:none}.chat-composer-count{font-variant-numeric:tabular-nums;margin-left:auto}@media (hover:hover) and (width>=769px){.chat-composer-hint{display:inline}}.chat-footer{text-align:center;color:#b8a4d9;letter-spacing:.02em;width:100%;max-width:900px;padding:1rem 0 0;font-size:.65rem}.command-link{color:#6b5b95;cursor:pointer;white-space:nowrap;background:#6b5b951a;border-radius:4px;padding:2px 6px;font-family:SF Mono,Monaco,Consolas,monospace;text-decoration:none;transition:all .2s}.command-link:hover{background:#6b5b9533;text-decoration:underline}.chat-inline-link{color:#6b5b95;text-underline-offset:2px;font-weight:600;text-decoration:underline}.chat-inline-link:hover{color:#52447a}.command-menu{border-top:1px solid #6b5b9526;flex-wrap:wrap;gap:.5rem;margin-top:1rem;padding-top:.75rem;display:flex}.command-button{cursor:pointer;text-align:left;background:#6b5b9514;border:1px solid #6b5b9533;border-radius:12px;grid-template-rows:auto auto;grid-template-columns:auto 1fr;align-items:center;gap:.15rem .55rem;min-width:140px;max-width:220px;padding:.5rem .85rem;font-size:.85rem;transition:all .2s;display:grid}.command-button .emoji{grid-area:1/1/span 2;font-size:1.5rem;line-height:1}.command-button .command-name{grid-area:1/2}.command-button .command-label{grid-area:2/2}.command-button.command-button--no-emoji{flex-direction:column;align-items:flex-start;display:flex}.command-button:hover{background:#6b5b9526;border-color:#6b5b95;transform:translateY(-1px);box-shadow:0 2px 8px #6b5b9526}.command-button:active{box-shadow:none;transform:translateY(0)}.command-name{color:#6b5b95;font-family:SF Mono,Monaco,Consolas,monospace;font-size:.85rem;font-weight:600}.command-label{color:#666;font-size:.75rem;line-height:1.3}.start-bubble .bubble-content{max-width:100%}@media (width<=768px){[data-chat-viewport]{height:var(--chat-viewport-height,100dvh);max-height:var(--chat-viewport-height,100dvh);transform:translateY(var(--chat-viewport-offset-top,0px));position:fixed;top:0;left:0;right:0}.home-page.chat-layout{overscroll-behavior:none;min-height:0;overflow:hidden}.home-header{text-align:center;flex-direction:column;padding:1rem}.home-header-left{order:1}.home-header-right{flex-wrap:wrap;order:2;justify-content:center}.chat-interface{gap:1.5rem;padding:1rem}.chat-greeting{text-align:center;flex-direction:column;padding:1.5rem}.ai-avatar{width:60px;height:60px}.greeting-text h2{font-size:1.4rem}.category-grid{grid-template-columns:1fr}.chat-message{padding:1.25rem}.message-icon{font-size:1.5rem}.chat-input-container{padding:.4rem .6rem .2rem}.chat-response-area{overscroll-behavior:none;-webkit-overflow-scrolling:touch;gap:1rem;min-height:0;padding:1rem;overflow-y:auto}.chat-input-bar--panel{z-index:auto;-webkit-backdrop-filter:none;width:100%;padding-bottom:env(safe-area-inset-bottom,0px);background:#fff;border-top:none;position:static}.chat-input-bar--panel .chat-input-container{max-width:none;padding:.4rem 0 0}.chat-scroll-anchor,.waiting-dots{scroll-margin-bottom:1rem}.chat-starter{text-align:center;flex-direction:column;padding:1.25rem}.chat-starter-avatar{width:50px;height:50px}.chat-starter-content h2{font-size:1.35rem}}@media (width<=480px){.home-header-left h1{font-size:1.4rem}.home-header-right{gap:.5rem}.header-link,.logout-btn{padding:.4rem .75rem;font-size:.85rem}.language-select{padding:.4rem .5rem;font-size:.85rem}.greeting-text h2{font-size:1.25rem}.category-card{padding:1rem}.chat-header{padding:.5rem 1rem}.chat-header-logo{font-size:1rem}.chat-header-link,.chat-header-logout{padding:.4rem .75rem;font-size:.7rem}.chat-response-area{gap:.75rem;padding:.75rem}.chat-starter{padding:1rem}.chat-starter-avatar{width:45px;height:45px}.chat-starter-content h2{font-size:1.2rem}.chat-starter-date{font-size:.85rem}.chat-composer-field{border-radius:20px;padding-left:.75rem}.chat-bubble.user-bubble{margin-left:0}.chat-bubble.ai-bubble,.chat-bubble.error-bubble{margin-right:0}.command-menu{flex-direction:column;align-items:stretch}.command-button{text-align:left;justify-content:flex-start;width:100%;max-width:none}.command-button .emoji{font-size:1.4rem}}.chat-message,.category-card,.chart-section,.commands-section{animation:.3s ease-out fadeSlideIn}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.channel-prompt .bubble-content{flex-direction:column;gap:.75rem;display:flex}.channel-prompt-text{margin:0;line-height:1.4}.channel-prompt-error{color:#b3261e;margin:0;font-size:.85rem}.channel-prompt-actions{gap:.75rem;display:flex}.channel-prompt-btn{min-width:0;min-height:44px;color:inherit;cursor:pointer;background:#fff;border:1px solid #6b5b954d;border-radius:12px;flex:1 1 0;justify-content:center;align-items:center;gap:.5rem;padding:.6rem .9rem;font-family:inherit;font-size:1rem;text-decoration:none;display:inline-flex}.channel-prompt-btn img{width:20px;height:20px}.channel-prompt-btn-open{color:#fff;background:linear-gradient(135deg,#6b5b95 0%,#b8a4d9 100%);border-color:#0000;width:100%}.channel-prompt-linking{flex-direction:column;gap:.5rem;display:flex}.channel-prompt-hint{opacity:.75;margin:0;font-size:.85rem}.channel-prompt-skip{min-height:44px;color:inherit;opacity:.7;cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0 .25rem;font-family:inherit;font-size:.9rem;text-decoration:underline}.channel-prompt-skip:disabled{opacity:.4;cursor:default}.channel-prompt-done .bubble-content{flex-direction:row;align-items:center;gap:.6rem}@media (width<=400px){.channel-prompt-actions{flex-direction:column}}.settings-page{background:linear-gradient(135deg,#f8f9fa 0%,#e8eaf6 50%,#f3e5f5 100%);flex-direction:column;width:100%;min-height:100vh;display:flex}.settings-content{flex-direction:column;flex:1;align-items:center;width:100%;min-width:0;padding:2rem 1rem;display:flex}.settings-title{text-align:center;max-width:600px;margin-bottom:.75rem}.settings-title h1{color:#2d2d2d;margin-bottom:0;font-size:2rem;font-weight:700;line-height:1.3}.settings-subtitle{color:#666;font-size:1rem;line-height:1.6}.settings-form{flex-direction:column;gap:1rem;width:100%;min-width:0;max-width:900px;display:flex}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;width:100%;min-width:0;display:grid}.settings-section{background:#fff;border:1px solid #e8e8e8;border-radius:16px;flex-direction:column;min-width:0;padding:1.5rem;transition:all .3s;display:flex;box-shadow:0 2px 8px #6b5b950f}.settings-section:hover{border-color:#d5c2f0;box-shadow:0 4px 16px #6b5b951f}.section-label{color:#6b5b95;align-items:center;gap:.5rem;margin-bottom:1.25rem;font-size:1rem;font-weight:600;display:flex}.section-icon{font-size:1.25rem}.settings-form .form-group{margin-bottom:1rem}.settings-form .form-group:last-child{margin-bottom:0}.settings-form label{color:#2d2d2d;margin-bottom:.5rem;font-size:.9rem;font-weight:500;display:block}.settings-form input,.settings-form select{background:#fafafa;border:2px solid #e0e0e0;border-radius:10px;width:100%;padding:.75rem 1rem;font-size:.95rem;transition:all .3s}.settings-form input:focus,.settings-form select:focus{background:#fff;border-color:#6b5b95;outline:none;box-shadow:0 0 0 3px #6b5b951a}.settings-status:not(:empty){margin-bottom:.5rem}.saving-indicator{color:#1565c0;background:linear-gradient(135deg,#e3f2fd 0%,#bbdefb 100%);border-left:4px solid #2196f3;border-radius:10px;align-items:center;gap:.75rem;padding:.75rem 1rem;animation:.2s fadeIn;display:flex}.saving-spinner{border:2px solid #90caf9;border-top-color:#1565c0;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.is-saved{position:relative}.is-saved input,.is-saved select,.is-saved .autocomplete-container input{animation:1.5s ease-out savedFlash}.is-saved:after{content:"✓";color:#fff;pointer-events:none;background:#4caf50;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:.75rem;font-weight:700;animation:1.5s ease-out forwards savedCheckIn;display:flex;position:absolute;top:0;right:0}@keyframes savedFlash{0%{background:#f1f8e9;border-color:#4caf50;box-shadow:0 0 0 3px #4caf5040}to{background:#fafafa;border-color:#e0e0e0;box-shadow:0 0 #4caf5000}}@keyframes savedCheckIn{0%{opacity:0;transform:scale(.4)}20%{opacity:1;transform:scale(1)}80%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}.form-group.has-error input,.form-group.has-error select,.has-error .autocomplete-container input{background:#ffebee;border-color:#d32f2f}.form-group.has-error input:focus,.has-error .autocomplete-container input:focus{border-color:#d32f2f;box-shadow:0 0 0 3px #d32f2f1a}.field-error{color:#d32f2f;margin-top:.35rem;padding-left:.25rem;font-size:.8rem;display:block}.settings-select{cursor:pointer;appearance:none;background-color:#fafafa;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b5b95' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;padding-right:2.5rem}.constant-communication-control{flex-direction:column;gap:1rem;display:flex}.settings-helper-text{color:#666;margin:0;font-size:.85rem;line-height:1.45}.settings-link-btn{color:#6b5b95;cursor:pointer;background:0 0;border:none;margin-top:.4rem;padding:0;font-size:.8rem;font-weight:500;text-decoration:underline;transition:color .2s;display:inline-block}.settings-link-btn:hover{color:#4a3d6b}.settings-form .settings-switch{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.75rem;width:fit-content;margin-bottom:0;display:inline-flex}.settings-switch input[type=checkbox]{opacity:0;pointer-events:none;position:absolute}.settings-switch-track{background:#d8d4e5;border-radius:999px;flex:0 0 54px;width:54px;height:30px;padding:3px;transition:background .2s,box-shadow .2s}.settings-switch-thumb{background:#fff;border-radius:50%;width:24px;height:24px;transition:transform .2s;display:block;box-shadow:0 2px 6px #2d2d2d2e}.settings-switch input[type=checkbox]:checked+.settings-switch-track{background:#6b5b95}.settings-switch input[type=checkbox]:checked+.settings-switch-track .settings-switch-thumb{transform:translate(24px)}.settings-switch input[type=checkbox]:focus-visible+.settings-switch-track{box-shadow:0 0 0 3px #6b5b952e}.settings-switch-text{color:#2d2d2d;font-size:.9rem;font-weight:600}.success-message{color:#2e7d32;background:linear-gradient(135deg,#e8f5e9 0%,#c8e6c9 100%);border-left:4px solid #4caf50;border-radius:10px;align-items:center;gap:.75rem;margin-bottom:.5rem;padding:1rem 1.25rem;animation:.4s slideIn;display:flex}.success-icon{color:#fff;background:#4caf50;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:.875rem;font-weight:700;display:flex}.settings-actions{justify-content:center;margin-top:.5rem;display:flex}.settings-actions .btn-submit{min-width:200px}.settings-content .loading-state{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1rem;display:flex}.settings-content .loading-spinner{font-size:3rem;animation:2s linear infinite spin}.settings-content .loading-state p{color:#666;font-size:1rem}@media (width<=768px){.settings-content{padding:1.5rem 1rem}.settings-title h1{font-size:1.6rem}.settings-grid{grid-template-columns:1fr}.settings-section{padding:1.25rem}}@media (width<=480px){.settings-content{padding:1rem .75rem}.settings-title h1{font-size:1.4rem}.section-label{font-size:.95rem}.settings-actions .btn-submit{width:100%}}@supports (-webkit-touch-callout:none){@media (width<=768px){.settings-form input[type=date],.settings-form input[type=time]{appearance:none;box-sizing:border-box;min-width:0;max-width:100%}.settings-form .form-group:not(:has(.autocomplete-container)){overflow:hidden}.settings-form .autocomplete-container{overflow:visible}.settings-form .suggestions{z-index:9999;position:absolute}.register-container .form-grid{overflow:hidden}.register-container .form-grid input[type=date],.register-container .form-grid input[type=time]{appearance:none;box-sizing:border-box;width:100%;min-width:0;max-width:100%}.register-container .form-group:not(:has(.autocomplete-container)){width:100%;max-width:100%;overflow:hidden}.register-container .autocomplete-container{overflow:visible}.register-container .suggestions{z-index:9999;position:absolute}}}.danger-zone{background:linear-gradient(135deg,#fff5f5 0%,#ffebee 100%);border:1px solid #ffcdd2;border-radius:8px;margin-top:1.25rem;padding:1rem}.danger-zone .section-label{margin-bottom:.75rem}.settings-section-full{grid-column:1/-1}.section-label-danger{color:#c62828}.account-email{color:#2d2d2d;border-bottom:1px solid #ffcdd2;margin-bottom:.5rem;padding:.5rem 0;font-size:1rem;font-weight:500}.danger-text{color:#666;margin-bottom:1rem;font-size:.9rem;line-height:1.5}.btn-danger{cursor:pointer;color:#fff;background:#e53935;border:none;border-radius:8px;width:100%;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .3s;box-shadow:0 2px 8px #e5393540}.btn-danger:hover{background:#c62828;transform:translateY(-1px);box-shadow:0 4px 12px #e5393559}.delete-confirm{flex-direction:column;gap:1rem;display:flex}.confirm-text{color:#c62828;text-align:center;background:#c6282814;border-radius:8px;padding:.75rem;font-size:.95rem;font-weight:500}.confirm-buttons{gap:.75rem;display:flex}.btn-cancel{cursor:pointer;color:#666;background:#f5f5f5;border:2px solid #e0e0e0;border-radius:8px;flex:1;padding:.75rem 1rem;font-size:.9rem;font-weight:500;transition:all .3s}.btn-cancel:hover{color:#2d2d2d;background:#e0e0e0}.btn-cancel:disabled{opacity:.5;cursor:not-allowed}.btn-danger-confirm{cursor:pointer;color:#fff;background:#c62828;border:none;border-radius:8px;flex:1;padding:.75rem 1rem;font-size:.9rem;font-weight:600;transition:all .3s}.btn-danger-confirm:hover{background:#b71c1c}.btn-danger-confirm:disabled{opacity:.6;cursor:not-allowed}.billing-page{color:#fff;background:linear-gradient(135deg,#0f0c29 0%,#302b63 50%,#24243e 100%);min-height:100vh}.billing-content{max-width:1000px;margin:0 auto;padding:2rem}.billing-message{border-radius:12px;align-items:center;gap:.75rem;margin-bottom:1.5rem;padding:1rem 1.5rem;display:flex}.billing-message .success-icon,.billing-message .info-icon,.billing-message .error-icon{font-size:1.25rem;font-weight:700}.info-message{color:#90caf9;background:#2196f326;border:1px solid #2196f34d}.info-message .info-icon{color:#fff;background:#2196f3;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:.875rem;display:flex}.billing-status-banner{text-align:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;margin-bottom:2rem;padding:2rem}.billing-status-banner h2{margin-bottom:.5rem;font-size:1.5rem}.billing-status-banner.trial{background:linear-gradient(135deg,#673ab733 0%,#9c27b01a 100%);border-color:#673ab780}.billing-status-banner.subscribed{background:linear-gradient(135deg,#4caf5033 0%,#81c7841a 100%);border-color:#4caf5080}.billing-status-banner.expired{background:linear-gradient(135deg,#f4433633 0%,#ef53501a 100%);border-color:#f4433680}.billing-title{text-align:center;margin-bottom:2rem}.billing-title h1{margin-bottom:.5rem;font-size:2rem;font-weight:700}.billing-subtitle{color:#ffffffb3;font-size:1.1rem}.pricing-cards{justify-content:center;gap:2rem;margin-bottom:3rem;display:flex}.pricing-card{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:20px;flex-direction:column;width:100%;max-width:360px;padding:2rem;transition:transform .3s,box-shadow .3s;display:flex;position:relative}.pricing-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0000004d}.pricing-card.featured{background:linear-gradient(135deg,#673ab726 0%,#9c27b01a 100%);border-color:#673ab780}.pricing-badge{color:#fff;text-transform:uppercase;letter-spacing:.5px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:20px;padding:.375rem 1rem;font-size:.75rem;font-weight:600;position:absolute;top:-12px;left:50%;transform:translate(-50%)}.pricing-header{text-align:center;border-bottom:1px solid #ffffff1a;margin-bottom:1.5rem;padding-bottom:1.5rem}.pricing-header h3{color:#ffffffe6;margin-bottom:.75rem;font-size:1.25rem;font-weight:600}.pricing-price{justify-content:center;align-items:baseline;gap:.25rem;display:flex}.price-amount{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:700}.price-period{color:#fff9;font-size:1rem}.pricing-savings{color:#81c784;margin-top:.5rem;font-size:.875rem;font-weight:500}.btn-subscribe{cursor:pointer;color:#fff;background:#ffffff1a;border:1px solid #fff3;border-radius:12px;width:100%;padding:1rem;font-size:1rem;font-weight:600;transition:all .3s}.btn-subscribe:hover:not(:disabled){background:#ffffff26;border-color:#ffffff4d}.btn-subscribe-featured{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none}.btn-subscribe-featured:hover:not(:disabled){background:linear-gradient(135deg,#5a6fd6 0%,#6a4190 100%);box-shadow:0 4px 20px #667eea66}.btn-subscribe:disabled{opacity:.6;cursor:not-allowed}.subscription-management{text-align:center;margin-top:2rem}.btn-manage{cursor:pointer;color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:12px;padding:1rem 2rem;font-size:1rem;font-weight:600;transition:all .3s}.btn-manage:hover{background:linear-gradient(135deg,#5a6fd6 0%,#6a4190 100%);box-shadow:0 4px 20px #667eea66}.manage-note{color:#fff9;margin-top:1rem;font-size:.875rem}@media (width<=640px){.billing-content{padding:1rem}.billing-title h1{font-size:1.5rem}.price-amount{font-size:2rem}}.subscription-status-badge{background:#ffffff0d;border-radius:8px;margin-bottom:1rem;padding:.75rem 1rem}.subscription-status-badge p{color:#ffffffe6;margin:0;font-size:.9rem}.subscription-status-badge.trial{border-left:3px solid gold}.subscription-status-badge.subscribed{border-left:3px solid #4ade80}.subscription-status-badge.expired{border-left:3px solid #f87171}.btn-manage-subscription{text-align:center;cursor:pointer;color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:8px;width:100%;padding:.75rem 1rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-block}.btn-manage-subscription:hover{background:linear-gradient(135deg,#5a6fd6 0%,#6a4190 100%);box-shadow:0 4px 15px #667eea4d}.admin-page{background:#f0f0f7;max-width:1200px;min-height:100vh;margin:0 auto;padding:24px}.admin-loader{color:#6b6b8d;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:60vh;display:flex}.admin-loader-spinner{border:3px solid #e0dff0;border-top-color:#6b5b95;border-radius:50%;width:36px;height:36px;animation:.7s linear infinite admin-spin}@keyframes admin-spin{to{transform:rotate(360deg)}}.admin-topbar{color:#3d3a5c;background:#fff;border:1px solid #e5e3f0;border-radius:14px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding:16px 24px;display:flex}.admin-stats{flex-wrap:wrap;gap:28px;display:flex}.admin-stat{flex-direction:column;gap:2px;display:flex}.admin-stat-value{letter-spacing:-.3px;font-variant-numeric:tabular-nums;font-size:22px;font-weight:700;line-height:1.1}.admin-stat-label{color:#6f6b8c;font-size:12px}.admin-header{background:#fff;border:1px solid #e5e3f0;border-radius:14px;justify-content:space-between;align-items:center;margin-bottom:24px;padding:24px;display:flex}.admin-table{background:#fff;border:1px solid #e5e3f0;border-radius:14px;width:100%;margin-bottom:20px;overflow-x:auto}.admin-table table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:900px}.admin-table th:nth-child(2){width:110px}.admin-table th:nth-child(3){width:70px}.admin-table th:nth-child(4){width:160px}.admin-table th:nth-child(5){width:100px}.admin-table th:nth-child(6){width:70px}.admin-table th:nth-child(7),.admin-table th:nth-child(8){width:110px}.admin-tz,.admin-date,.admin-badge,.admin-channel{white-space:nowrap}.admin-table th{color:#6b6b8d;text-align:left;text-transform:uppercase;letter-spacing:.6px;background:#f7f6fb;border-bottom:1px solid #e5e3f0;padding:11px 16px;font-size:11px;font-weight:600}.admin-table td{color:#3d3a5c;border-bottom:1px solid #f2f1f7;padding:12px 16px;font-size:14px}.admin-table tr:last-child td{border-bottom:none}.admin-table tbody tr{transition:background .12s}.admin-table tbody tr:hover td{background:#faf9fe}.admin-table-empty{text-align:center;color:#a0a0b5!important;padding:40px 24px!important}.admin-user-cell{align-items:center;gap:10px;min-width:0;display:flex}.admin-user-cell span{overflow-wrap:anywhere;min-width:0}.admin-avatar{color:#6b5b95;background:linear-gradient(135deg,#e8e4f3,#d5cfe8);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:13px;font-weight:700;display:flex}.admin-lang{color:#6b6b8d;background:#f0f0f7;border-radius:6px;padding:2px 8px;font-size:12px;font-weight:500}.admin-channel{color:#6b6b8d;font-size:13px}.admin-date{color:#8b8b9e;font-size:13px}.admin-badge{letter-spacing:.3px;border-radius:20px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-block}.admin-badge--trial{color:#2a8a62;background:#eef7f3}.admin-badge--subscribed{color:#2b6cb8;background:#eaf2fe}.admin-badge--grace{color:#b9772a;background:#fdf4e7}.admin-badge--expired{color:#c44040;background:#fef0ef}.admin-tz,.admin-num{font-variant-numeric:tabular-nums;color:#6b6b8d}.admin-num{text-align:right}.admin-btn-grant{color:#2a8a62;cursor:pointer;white-space:nowrap;background:#2a8a6214;border:1px solid #2a8a6240;border-radius:8px;padding:4px 10px;font-size:12px;font-weight:600}.admin-btn-grant:hover:not(:disabled){background:#2a8a6229}.admin-btn-grant:disabled{opacity:.5;cursor:default}.admin-form{background:#fff;border:1px solid #e5e3f0;border-radius:14px;margin-bottom:24px;padding:24px}.admin-message{border-radius:10px;margin-bottom:16px;padding:12px 16px;font-size:14px;font-weight:500}.admin-message--error{color:#c44040;background:#fef0ef;border:1px solid #fcd8d5}.admin-message--success{color:#2a8a62;background:#eef7f3;border:1px solid #c6e9d8}.admin-detail-card{background:#fff;border:1px solid #e5e3f0;border-radius:14px;padding:24px}.admin-back-btn{cursor:pointer;color:#3d3a5c;background:0 0;border:1px solid #e0dff0;border-radius:8px;padding:6px 14px;font-size:14px;transition:all .15s}.admin-inline-edit{align-items:center;gap:6px;display:flex}.admin-revoke-btn{color:#c44040;cursor:pointer;background:#fef0ef;border:1px solid #fcd8d5;border-radius:6px;padding:4px 12px;font-size:12px;transition:background .15s}.admin-action-row{align-items:stretch;gap:16px;margin-bottom:24px;display:flex}.admin-action-row>form,.admin-action-row>button{flex:1 1 0}.admin-action-row>form{display:flex}.admin-search-input-wrap{flex:1;align-items:center;width:100%;height:40px;display:flex;position:relative}.admin-search-icon{color:#a0a0b5;pointer-events:none;align-items:center;display:flex;position:absolute;left:12px}.admin-search-input-wrap input{box-sizing:border-box;background:#fff;border:1px solid #e0dff0;border-radius:10px;outline:none;width:100%;min-width:0;height:40px;padding:10px 14px 10px 36px;font-size:14px;transition:border-color .15s,box-shadow .15s}.admin-search-input-wrap input:focus{border-color:#6b5b95;box-shadow:0 0 0 3px #6b5b951a}.admin-btn-primary{color:#fff;cursor:pointer;white-space:nowrap;background:#6b5b95;border:none;border-radius:10px;padding:10px 20px;font-size:14px;font-weight:500;transition:background .15s,box-shadow .15s}.admin-btn-primary:hover{background:#5a4a84;box-shadow:0 2px 8px #6b5b9540}.admin-btn-create-user{color:#6b5b95;cursor:pointer;white-space:nowrap;background:#6b5b9514;border:1px solid #6b5b9533;border-radius:8px;align-items:center;gap:6px;width:auto;padding:6px 16px;font-size:13px;font-weight:500;transition:background .15s;display:inline-flex}.admin-btn-create-user:hover{background:#6b5b9526}.admin-btn-secondary{color:#3d3a5c;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #e0dff0;border-radius:10px;padding:10px 20px;font-size:14px;transition:all .15s}.admin-btn-secondary:hover{background:#f7f6fb;border-color:#d0cee0}.admin-pagination{color:#6b6b8d;justify-content:center;align-items:center;gap:16px;margin-top:20px;font-size:13px;display:flex}.admin-pagination button{cursor:pointer;color:#3d3a5c;background:#fff;border:1px solid #e0dff0;border-radius:10px;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .15s;display:flex}.admin-pagination button:hover:not(:disabled){color:#fff;background:#6b5b95;border-color:#6b5b95;box-shadow:0 2px 8px #6b5b9540}.admin-pagination button:disabled{opacity:.35;cursor:default}.admin-status-pill{letter-spacing:.3px;cursor:pointer;border-radius:20px;padding:3px 10px;font-size:11px;font-weight:600;transition:opacity .15s;display:inline-block}.admin-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#2d2a4a73;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.admin-modal{background:#fff;border-radius:16px;width:480px;max-width:95vw;max-height:90vh;padding:28px;overflow-y:auto;box-shadow:0 16px 48px #2d2a4a33}.admin-modal h2{color:#2d2a4a;margin:0 0 20px;font-size:20px;font-weight:700}.admin-modal form{display:block}.admin-modal-field{margin-bottom:16px;display:block}.admin-modal-field label{color:#6b6b8d;margin-bottom:5px;font-size:13px;font-weight:600;display:block}.admin-modal-field input,.admin-modal-field select{box-sizing:border-box;border:1px solid #e0dff0;border-radius:8px;outline:none;width:100%;padding:10px 12px;font-size:14px;transition:border-color .15s,box-shadow .15s;display:block}.admin-modal-field input:focus,.admin-modal-field select:focus{border-color:#6b5b95;box-shadow:0 0 0 3px #6b5b951a}.admin-modal-row{display:block}.admin-modal-row .admin-modal-field{width:100%}.admin-modal-actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.birth-datetime-input{grid-template-columns:1fr 1fr;gap:16px;display:grid}.birth-datetime-field label{color:#6b6b8d;margin-bottom:5px;font-size:13px;font-weight:600;display:block}.birth-datetime-field input{box-sizing:border-box;border:1px solid #e0dff0;border-radius:8px;outline:none;width:100%;padding:10px 12px;font-size:14px;transition:border-color .15s,box-shadow .15s;display:block}.birth-datetime-field input:focus{border-color:#6b5b95;box-shadow:0 0 0 3px #6b5b951a}.admin-modal-datetime{margin-bottom:16px}.birth-datetime-input.form-grid .birth-datetime-field{margin-bottom:0}.birth-datetime-input.form-grid .birth-datetime-field label{color:#2d2d2d;margin-bottom:.5rem;font-size:.95rem;font-weight:500;display:block}.birth-datetime-input.form-grid .birth-datetime-field input{box-sizing:border-box;background:#fafafa;border:2px solid #e0e0e0;border-radius:8px;width:100%;padding:.875rem 1rem;font-size:1rem;transition:all .3s}.birth-datetime-input.form-grid .birth-datetime-field input:focus{background:#fff;border-color:#6b5b95;outline:none;box-shadow:0 0 0 3px #6b5b951a}.wheel-pickers-row{grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem;display:grid}.wheel-picker-group>label{color:#2d2d2d;margin-bottom:.5rem;font-size:.95rem;font-weight:500;display:block}.wheel-picker-container{background:#fafafa;border:2px solid #e0e0e0;border-radius:8px;padding:.5rem 0;position:relative;overflow:hidden}.wheel-picker-container [data-testid=picker]{background:0 0!important}.wheel-picker-container [data-testid=picker-highlight]{background:#6b5b9514!important;border-top:1px solid #6b5b9533!important;border-bottom:1px solid #6b5b9533!important}.wheel-picker-container [data-testid=picker-column-item]{cursor:grab}.wheel-picker-item{color:#999;-webkit-user-select:none;user-select:none;font-size:1rem;transition:color .15s,font-weight .15s}.wheel-picker-item--selected{color:#6b5b95;font-weight:600}.wheel-picker-labels{text-align:center;border-top:1px solid #e0e0e0;grid-template-columns:1fr 1fr 1fr;padding:.25rem .5rem 0;display:grid}.wheel-picker-labels--time{grid-template-columns:1fr 1fr}.wheel-picker-labels span{color:#999;text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}@media (width<=768px){.wheel-pickers-row{grid-template-columns:1fr;gap:1rem}.admin-page{padding:12px}.admin-topbar{padding:14px 16px}.admin-stats{gap:18px}.admin-header{flex-direction:column;gap:16px}.admin-table table{table-layout:auto;min-width:0}.admin-table thead{display:none}.admin-table tbody tr{border-bottom:1px solid #f2f1f7;padding:8px 4px;display:block}.admin-table td{border-bottom:none;justify-content:space-between;align-items:center;gap:12px;padding:6px 12px;display:flex}.admin-table td:before{content:attr(data-label);text-transform:uppercase;letter-spacing:.5px;color:#8b8b9e;font-size:11px}.admin-table td:empty{display:none}.admin-num{text-align:left}.admin-modal-row{flex-direction:column;gap:0}}.auth-methods-container{background:0 0;border:none;flex-direction:column;align-items:center;gap:.875rem;width:100%;max-width:320px;margin:0 auto;padding:.5rem 0;display:flex}.auth-method-option{justify-content:center;width:100%;display:flex}.google-btn-container{justify-content:center;width:100%;min-height:44px;display:flex}.google-btn-container>div{margin:0 auto}.facebook-signin-btn{color:#fff;cursor:pointer;background:#1877f2;border:none;border-radius:8px;justify-content:center;align-items:center;gap:.625rem;width:280px;max-width:100%;min-height:44px;padding:.625rem 1.25rem;font-size:.9375rem;font-weight:600;transition:background .15s,transform .15s,box-shadow .15s;display:flex;box-shadow:0 1px 2px #00000014}.facebook-signin-btn:hover:not(:disabled){background:#166fe5;transform:translateY(-1px);box-shadow:0 4px 12px #1877f240}.facebook-signin-btn:disabled{opacity:.5;cursor:not-allowed}.facebook-signin-btn-icon{font-family:Georgia,serif;font-size:1.125rem;font-weight:700;line-height:1}.dev-login-form{background:#ffdc640d;border:1px dashed #6b5b9559;border-radius:12px;width:100%;max-width:400px;margin:1.5rem auto 0;padding:1rem 1.25rem}.dev-login-form-divider{text-align:center;color:#b58900;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.75rem;font-size:.75rem;font-weight:600}.dev-login-form .register-form{flex-direction:column;gap:.75rem;display:flex}.dev-login-form .form-group{margin-bottom:0}.dev-login-form input{text-align:center}@media (width<=768px){.auth-methods-container{max-width:320px}}.legal-container{width:100%;max-width:720px;color:var(--text-primary,#2d2a3e);margin:0 auto;padding:2.5rem 2rem;line-height:1.7}.legal-container h1{color:var(--primary,#6b5b95);margin-bottom:.25rem;font-size:2rem;font-weight:700}.legal-effective{color:var(--text-secondary,#7a7589);margin-bottom:2rem;font-size:.9rem}.legal-container h2{color:var(--text-primary,#2d2a3e);margin-top:2rem;margin-bottom:.75rem;font-size:1.2rem;font-weight:600}.legal-container p{margin-bottom:.75rem;font-size:.95rem}.legal-container ul{margin:.5rem 0 1rem 1.5rem;padding:0}.legal-container li{margin-bottom:.4rem;font-size:.95rem}.legal-container a{color:var(--primary,#6b5b95);text-decoration:underline}.legal-container a:hover{color:var(--primary-dark,#5a4a84)}.legal-container code{background:var(--surface,#f5f0ff);border-radius:4px;padding:.15rem .4rem;font-size:.85rem}.legal-footer{border-top:1px solid var(--border,#e8e0f0);text-align:center;margin-top:2.5rem;padding-top:1.5rem}.legal-back-link{background:var(--primary,#6b5b95);border-radius:8px;padding:.6rem 1.5rem;font-weight:500;transition:background .2s;display:inline-block;color:#fff!important;text-decoration:none!important}.legal-back-link:hover{background:var(--primary-dark,#5a4a84)}@media (width<=768px){.legal-container{padding:1.5rem 1.25rem}.legal-container h1{font-size:1.6rem}.legal-container h2{font-size:1.1rem}}.ai-bubble .block-heading{color:#5a4a84;margin:.75rem 0 .25rem;font-size:1rem;font-weight:600}.ai-bubble .block-heading:first-child{margin-top:0}.ai-bubble .block-list{margin:.25rem 0 .5rem;padding-left:1.25rem}.ai-bubble .block-list li{color:#444;margin-bottom:.25rem;line-height:1.5}.ai-bubble .block-table{border-collapse:collapse;width:100%;margin:.5rem 0;font-size:.9rem}.ai-bubble .block-table th,.ai-bubble .block-table td{text-align:left;color:#444;border:1px solid #e0d4f0;padding:.35rem .5rem}.ai-bubble .block-table th{color:#5a4a84;background:#f0e6ff;font-weight:600}.ai-bubble .block-divider{border:none;border-top:1px solid #e0d4f0;margin:.5rem 0}.service-auth-page{background:linear-gradient(135deg,#f8f9fa 0%,#e8eaf6 55%,#f3e5f5 100%);min-height:100vh}.service-auth-main{place-items:start center;padding:4rem 1rem;display:grid}.service-auth-card{background:#fff;border-radius:20px;width:min(100%,560px);padding:2.5rem;box-shadow:0 10px 40px #6b5b9526}.service-auth-mark{color:#fff;background:linear-gradient(135deg,#6b5b95,#8e7cc3);border-radius:14px;place-items:center;width:48px;height:48px;margin-bottom:1.25rem;font-size:1.5rem;font-weight:700;display:grid}.service-auth-card h1{color:#2d2d2d;margin-bottom:.75rem;font-size:1.8rem}.service-auth-card p{color:#666;line-height:1.6}.service-auth-form{flex-direction:column;gap:1rem;display:flex}.service-auth-form label{color:#2d2d2d;margin-top:.5rem;font-weight:600}.service-auth-form input{color:#2d2d2d;letter-spacing:.35em;text-align:center;background:#fafafa;border:2px solid #e0e0e0;border-radius:10px;width:100%;padding:1rem;font-size:1.8rem;font-weight:700}.service-auth-form input:focus{border-color:#6b5b95;outline:none;box-shadow:0 0 0 3px #6b5b951a}.service-auth-form small{color:#777}.service-auth-form .error-message,.service-auth-detail .error-message{margin:0}.service-auth-form .btn-submit{width:100%}.service-auth-detail dl{border:1px solid #e7e3ef;border-radius:12px;margin:1.5rem 0;overflow:hidden}.service-auth-detail dl div{background:#faf9fc;padding:1rem 1.25rem}.service-auth-detail dl div+div{border-top:1px solid #e7e3ef}.service-auth-detail dt{color:#777;font-size:.85rem}.service-auth-detail dd{color:#2d2d2d;overflow-wrap:anywhere;margin:.3rem 0 0;font-weight:600}.service-auth-notice{color:#554875;background:#f5f2fa;border-left:4px solid #8e7cc3;border-radius:6px;padding:1rem;line-height:1.5}.service-auth-actions{justify-content:flex-end;gap:1rem;margin-top:1.5rem;display:flex}.service-auth-actions .btn-submit{min-width:130px;margin:0}.service-auth-deny{color:#555;cursor:pointer;background:#fff;border:2px solid #ddd;border-radius:50px;padding:.875rem 2rem;font-weight:600}.service-auth-actions button:disabled{cursor:wait;opacity:.65}.service-auth-result{text-align:center;padding:2rem 0 1rem}.service-auth-result h2{color:#2d2d2d;margin-bottom:.75rem}@media (width<=600px){.service-auth-main{padding:1.5rem .75rem}.service-auth-card{border-radius:15px;padding:1.5rem}.service-auth-card h1{font-size:1.5rem}.service-auth-form input{letter-spacing:.25em;font-size:1.5rem}.service-auth-actions{flex-direction:column-reverse}.service-auth-actions button{width:100%}}
