:root{--bg: #fdf8f0;--bg2: #f5ede0;--text: #2e1760;--text-muted: rgba(46, 23, 96, .55);--gold: #d4a010;--gold-dark: #8a5800;--gold-light: #f0c040;--gold-glow: rgba(212, 160, 16, .35);--lavender: #8866aa;--lavender-light: #b099cc;--border: rgba(212, 160, 16, .25);--border-strong: rgba(212, 160, 16, .5);--card-bg: rgba(255, 252, 245, .85);--shadow: 0 4px 24px rgba(46, 23, 96, .1);--shadow-gold: 0 4px 20px rgba(212, 160, 16, .25);--radius: 16px;--radius-sm: 10px;--radius-lg: 24px;--transition: .25s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#app{height:100%;background:linear-gradient(160deg,#fdf8f0,#f0e8d8,#ecddc8);background-attachment:fixed;color:var(--text);font-family:Inter,sans-serif;overflow-x:hidden;-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased}[dir=rtl]{font-family:Amiri,Inter,sans-serif;font-size:1.05em}.ayla-app{min-height:100vh;position:relative}.lang-switcher{position:fixed;top:18px;right:18px;z-index:20;display:flex;gap:4px}[dir=rtl] .lang-switcher{right:auto;left:18px}.lang-btn{padding:6px 14px;font-size:12px;font-weight:500;color:var(--text-muted);cursor:pointer;border:none;background:transparent;transition:all var(--transition);border-radius:18px;font-family:Inter,sans-serif}.lang-btn:hover{color:var(--gold)}.lang-btn.active{background:linear-gradient(135deg,var(--gold),var(--gold-dark));color:#fdf8f0}.logo{display:flex;justify-content:center;padding-top:48px;padding-bottom:12px}.fade-enter-active,.fade-leave-active{transition:opacity .35s ease}.fade-enter-from,.fade-leave-to{opacity:0}.view{min-height:100vh;padding:20px 20px 40px;max-width:480px;margin:0 auto}.view-centered{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:40px 20px;max-width:480px;margin:0 auto;text-align:center}.card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.card-gold{background:linear-gradient(135deg,#d4a01014,#8a58000d);border-color:var(--border-strong);box-shadow:var(--shadow-gold)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 28px;border-radius:50px;font-size:15px;font-weight:600;cursor:pointer;border:none;transition:all var(--transition);text-decoration:none;font-family:inherit}.btn-primary{background:linear-gradient(135deg,var(--gold),var(--gold-dark));color:#fff;box-shadow:0 4px 16px #d4a01066}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 24px #d4a01080}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary{background:transparent;color:var(--gold);border:1.5px solid var(--border-strong)}.btn-secondary:hover{background:#d4a01014}.btn-ghost{background:transparent;color:var(--text-muted);border:none}.btn-full{width:100%}.input{width:100%;padding:14px 18px;border:1.5px solid var(--border);border-radius:var(--radius-sm);background:#ffffffb3;color:var(--text);font-size:16px;font-family:inherit;transition:border-color var(--transition),box-shadow var(--transition);outline:none}.input:focus{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-glow)}.input::placeholder{color:var(--text-muted)}[dir=rtl] .input{text-align:right;font-family:Amiri,sans-serif}.heading{font-family:Cormorant Garamond,Georgia,serif;font-weight:600;color:var(--text)}.heading-xl{font-size:clamp(28px,7vw,38px);line-height:1.15}.heading-lg{font-size:clamp(22px,5vw,28px);line-height:1.2}.heading-md{font-size:20px;line-height:1.3}.gold-text{background:linear-gradient(135deg,var(--gold),var(--gold-dark));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.muted{color:var(--text-muted);font-size:14px}.score-bar-wrap{display:flex;flex-direction:column;gap:12px}.score-bar-row{display:flex;align-items:center;gap:12px}.score-bar-label{width:70px;font-size:13px;color:var(--text-muted);flex-shrink:0}[dir=rtl] .score-bar-label{text-align:right}.score-bar-track{flex:1;height:6px;background:#2e17601a;border-radius:3px;overflow:hidden}.score-bar-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,var(--gold-dark),var(--gold));transition:width 1s ease}.score-bar-value{width:36px;font-size:13px;font-weight:600;color:var(--gold-dark);text-align:right;flex-shrink:0}.spinner{width:48px;height:48px;border:3px solid var(--border);border-top-color:var(--gold);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.moon-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;background:#d4a0101a;border:1px solid var(--border);border-radius:50px;font-size:12px;color:var(--gold-dark)}#stars-canvas{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;opacity:.4}.divider{height:1px;background:linear-gradient(90deg,transparent,var(--border),transparent);margin:20px 0}.back-btn{display:inline-flex;align-items:center;gap:6px;color:var(--text-muted);font-size:14px;cursor:pointer;border:none;background:none;padding:8px 0;transition:color var(--transition);font-family:inherit}.back-btn:hover{color:var(--gold)}.otp-boxes{display:flex;gap:12px;justify-content:center}.otp-box{width:60px;height:70px;border:2px solid var(--border);border-radius:var(--radius-sm);background:#ffffffb3;font-size:28px;font-weight:700;color:var(--text);text-align:center;outline:none;transition:border-color var(--transition),box-shadow var(--transition);caret-color:var(--gold)}.otp-box:focus{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-glow)}.sign-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.sign-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 8px;border:1.5px solid var(--border);border-radius:var(--radius);background:var(--card-bg);cursor:pointer;transition:all var(--transition)}.sign-card:hover,.sign-card.selected{border-color:var(--gold);background:linear-gradient(135deg,#d4a0101a,#8a58000d);box-shadow:var(--shadow-gold);transform:translateY(-2px)}.sign-card .glyph{font-size:24px;color:var(--gold)}.sign-card .name{font-size:12px;font-weight:600;color:var(--text)}.sign-card .dates{font-size:10px;color:var(--text-muted)}.compat-ring{position:relative;width:140px;height:140px;margin:0 auto}.compat-ring svg{transform:rotate(-90deg)}.compat-ring .score-label{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}.compat-ring .score-number{font-family:Cormorant Garamond,serif;font-size:32px;font-weight:700;color:var(--gold);line-height:1}.compat-ring .score-pct{font-size:12px;color:var(--text-muted)}.symbol-list{display:flex;flex-direction:column;gap:12px}.symbol-chip{display:flex;align-items:flex-start;gap:14px;padding:14px;background:#d4a0100d;border:1px solid var(--border);border-radius:var(--radius-sm)}.symbol-icon{font-size:24px;flex-shrink:0}.symbol-name{font-weight:600;font-size:14px;color:var(--text);margin-bottom:2px}.symbol-meaning{font-size:13px;color:var(--text-muted);line-height:1.5}.tone-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 16px;border-radius:50px;font-size:13px;font-weight:600;background:linear-gradient(135deg,var(--gold),var(--gold-dark));color:#fff}.feature-cards{display:flex;flex-direction:column;gap:14px}.feature-card{display:flex;align-items:center;gap:16px;padding:18px 20px;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:all var(--transition);text-decoration:none;color:inherit;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.feature-card:hover{border-color:var(--gold);box-shadow:var(--shadow-gold);transform:translateY(-2px)}.feature-card-icon{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,var(--gold),var(--gold-dark));display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0}.feature-card-text{flex:1}.feature-card-title{font-weight:600;font-size:16px;color:var(--text);margin-bottom:3px}.feature-card-sub{font-size:13px;color:var(--text-muted)}.feature-card-arrow{color:var(--gold);font-size:18px}[dir=rtl] .feature-card-arrow{transform:rotate(180deg)}.scroll-area{overflow-y:auto;-webkit-overflow-scrolling:touch}@media (max-width: 360px){.view,.view-centered{padding-left:14px;padding-right:14px}.otp-box{width:52px;height:62px;font-size:24px}}
