@import"https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;600;700&display=swap";:root{--primary-color: #667eea;--secondary-color: #764ba2;--accent-color: #fbbf24;--tertiary-color: #f093fb;--bg-primary: rgba(255, 255, 255, .95);--bg-secondary: rgba(255, 255, 255, .9);--bg-tertiary: rgba(255, 255, 255, .8);--bg-overlay: rgba(102, 126, 234, .1);--text-primary: #2d3748;--text-secondary: #4a5568;--text-muted: #718096;--text-white: #ffffff;--border-light: rgba(102, 126, 234, .2);--border-medium: rgba(102, 126, 234, .3);--border-strong: rgba(102, 126, 234, .5);--shadow-light: rgba(0, 0, 0, .1);--shadow-medium: rgba(0, 0, 0, .15);--shadow-strong: rgba(0, 0, 0, .25);--success-color: #48bb78;--warning-color: #ed8936;--error-color: #f56565;--fire-element: #fc8181;--earth-element: #68d391;--air-element: #63b3ed;--water-element: #9f7aea;font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;font-weight:400}html{scroll-behavior:smooth;overflow-x:hidden;width:100%;height:100%}body{font-family:inherit;background:linear-gradient(135deg,#667eea 0%,#764ba2 50%,#f093fb 100%);background-attachment:fixed;background-repeat:no-repeat;background-size:100% 100%;min-height:100vh;color:var(--text-primary);margin:0;padding:0;width:100%;overflow-x:hidden}.App{min-height:100vh;padding:20px;width:100%;max-width:100vw;overflow-x:hidden;position:relative;display:flex;flex-direction:column}.App-header{text-align:center;margin-bottom:40px;padding:30px 0}.App-header h1{font-size:3rem;color:#fff;text-shadow:2px 2px 8px rgba(0,0,0,.7),0 0 20px rgba(255,255,255,.4),-1px -1px 2px rgba(0,0,0,.8),1px 1px 2px rgba(0,0,0,.8);margin-bottom:10px;font-weight:700;letter-spacing:2px}.App-header p{color:var(--text-white);font-size:1.2rem;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.subtitle{color:var(--text-white);font-size:1.1rem;text-shadow:2px 2px 4px rgba(0,0,0,.3);font-style:italic;font-weight:400;margin:10px 0 0;letter-spacing:.5px}@media (max-width: 768px){.subtitle{font-size:1rem;padding:0 10px}}main{display:flex;justify-content:center;align-items:flex-start;width:100%;max-width:100%;padding:0;margin:0;flex:1}.form-container,.result-container,.input-form-container{background:var(--bg-primary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;padding:40px;box-shadow:0 25px 50px var(--shadow-medium);border:1px solid var(--border-light);max-width:1200px;width:calc(100% - 40px);margin:0 auto;position:relative;z-index:1}.form-card{background:var(--bg-primary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;padding:40px;box-shadow:0 25px 50px var(--shadow-medium);border:1px solid var(--border-light);max-width:600px;width:100%;margin:0 auto}.form-header,.result-header,.form-card h2{text-align:center;margin-bottom:30px}.form-header h1,.result-header h1,.form-card h2{font-size:2.5rem;background:linear-gradient(45deg,var(--primary-color),var(--secondary-color),var(--accent-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:10px;font-weight:700}.form-header p,.birth-info,.birth-info p{color:var(--text-secondary);font-size:1.1rem;margin:5px 0}.calculation-info{margin-top:15px;padding:15px;background:rgba(102,126,234,.1);border-radius:12px;border:1px solid rgba(102,126,234,.2)}.calculation-info p{color:var(--text-secondary);font-size:.95rem;margin:0;font-style:italic}.birth-form{display:flex;flex-direction:column;gap:20px}.input-group{margin-bottom:25px}.birth-time-input-group{margin-bottom:40px!important}.birth-place-input-group{margin-top:25px;padding-top:15px;border-top:1px solid rgba(0,0,0,.05)}.input-group label{display:block;margin-bottom:8px;font-weight:600;color:var(--text-primary);font-size:1rem}.form-input,.form-select{width:100%;padding:12px 16px;border:2px solid #e1e5e9;border-radius:8px;font-size:16px;font-family:inherit;background-color:#fff;transition:all .2s ease}.form-input:focus,.form-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-input.error,.form-select.error{border-color:#e53e3e;box-shadow:0 0 0 3px #e53e3e1a}.form-select{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%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 12px center;background-size:20px;padding-right:40px;cursor:pointer}.form-select option{padding:8px;background-color:#fff;color:#2d3748}.time-precision-selector{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.precision-option{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .3s ease;background:white;min-width:0;flex:1;justify-content:center;font-weight:500}.precision-option:hover{border-color:#667eea;background:rgba(102,126,234,.05)}.precision-option.selected{border-color:#667eea;background:rgba(102,126,234,.1);color:#667eea;font-weight:600}.precision-option input[type=radio]{margin:0;width:16px;height:16px}.time-precision-selector+.form-input,.time-precision-selector+select.form-input{margin-top:.5rem;margin-bottom:2rem;position:relative;z-index:10}select.form-input{position:relative;z-index:100;background-color:#fff;border:1px solid #d1d5db;border-radius:8px;padding:.75rem;font-size:1rem;line-height:1.5;min-height:48px;box-shadow:0 1px 3px #0000001a;cursor:pointer;margin-bottom:1.5rem}select.form-input:focus{z-index:200;outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a,0 1px 3px #0000001a}select.form-input option{padding:.5rem;font-size:.95rem;background-color:#fff;color:#2d3748}select.form-input option:hover{background-color:#667eea0d}@media (max-width: 768px){.time-precision-selector{flex-direction:column;gap:.5rem;margin-bottom:2rem}.precision-option{flex:none;justify-content:flex-start}.time-precision-selector+.form-input,.time-precision-selector+select.form-input{margin-bottom:2.5rem}}.date-picker-container{width:100%}.date-selectors{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;width:100%}.date-selector{display:flex;flex-direction:column}.date-selector .form-select{font-size:14px;padding:10px 12px}@media (max-width: 768px){.date-selectors{gap:8px}.date-selector .form-select{font-size:16px;padding:12px 16px}}.wheel-picker{width:100%;position:relative}.wheel-picker-container{position:relative;overflow:hidden;background:var(--bg-secondary);border:2px solid var(--border-light);border-radius:12px;cursor:grab;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;touch-action:none}.wheel-picker-container:active{cursor:grabbing}.wheel-picker-list{position:relative;width:100%}.wheel-picker-item{display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:500;transition:all .2s ease;pointer-events:none;white-space:nowrap}@media (max-width: 480px){.wheel-picker-item{font-size:1.2rem}}.wheel-picker-indicator{position:absolute;top:50%;left:8px;right:8px;height:30px;transform:translateY(-50%);border-top:2px solid var(--primary-color);border-bottom:2px solid var(--primary-color);border-radius:6px;background:rgba(102,126,234,.1);pointer-events:none;z-index:10}.wheel-picker-container:focus-within{border-color:var(--primary-color);box-shadow:0 0 0 3px #667eea33}.wheel-picker-container{background:linear-gradient(180deg,rgba(255,255,255,.1) 0%,rgba(255,255,255,.05) 25%,transparent 25%,transparent 75%,rgba(255,255,255,.05) 75%,rgba(255,255,255,.1) 100%),var(--bg-secondary)}@media (hover: none) and (pointer: coarse){.wheel-picker-container,.wheel-picker-container:active{cursor:default}}.wheel-picker-list{will-change:transform}.wheel-picker-item{will-change:transform,opacity}.wheel-picker-step-button{width:100%;height:50px;border:2px solid var(--border-light);border-radius:12px;background:var(--bg-secondary);color:var(--text-primary);font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:4px 0;box-shadow:0 2px 4px var(--shadow-light);user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.wheel-picker-step-button:hover:not(:disabled){border-color:var(--primary-color);background:rgba(102,126,234,.1);transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow-medium)}.wheel-picker-step-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 4px var(--shadow-light)}.wheel-picker-step-button:disabled{opacity:.4;cursor:not-allowed;background:var(--bg-tertiary)}.wheel-picker-step-up{margin-bottom:8px}.wheel-picker-step-down{margin-top:8px}.step-arrow{font-size:1.2rem;line-height:1;margin-bottom:2px}.step-text{font-size:.8rem;opacity:.8;line-height:1}@media (max-width: 480px){.wheel-picker-step-button{height:55px;font-size:1.1rem;margin:6px 0}.wheel-picker-step-up{margin-bottom:10px}.wheel-picker-step-down{margin-top:10px}.step-arrow{font-size:1.4rem}.step-text{font-size:.9rem}}@media (hover: none) and (pointer: coarse){.wheel-picker-step-button{height:60px;font-size:1.2rem}.wheel-picker-step-button:hover:not(:disabled){transform:none}}.input-hint{display:block;margin-top:5px;color:var(--text-muted);font-size:.9rem}.error-message{color:var(--error-color);font-size:.9rem;margin-top:5px}.submit-error{background:rgba(220,38,38,.1);border:1px solid var(--error-color);border-radius:12px;padding:15px;margin:20px 0;text-align:center;color:var(--error-color)}.form-buttons,.action-buttons{display:flex;gap:15px;margin-top:30px;justify-content:center;flex-wrap:wrap}.submit-button,.btn-primary,.btn-secondary,.btn-test,.btn-ai{padding:15px 30px;border:none;border-radius:16px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}.submit-button,.btn-primary{background:linear-gradient(45deg,var(--primary-color),var(--secondary-color));color:var(--text-white);box-shadow:0 6px 20px #667eea66}.btn-secondary{background:linear-gradient(45deg,var(--accent-color),#fcd34d);color:var(--text-white);box-shadow:0 6px 20px #fbbf2466}.btn-test{background:linear-gradient(45deg,var(--tertiary-color),var(--secondary-color));color:var(--text-white);box-shadow:0 6px 20px #f093fb66}.btn-ai{background:linear-gradient(45deg,var(--primary-color),var(--secondary-color));color:var(--text-white);box-shadow:0 6px 20px #667eea66}.clear-button,.btn-clear{padding:15px 30px;border:none;border-radius:16px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:rgba(107,114,128,.1);color:var(--text-secondary);border:2px solid var(--border-medium);box-shadow:0 4px 15px #0000001a}.clear-button:hover,.btn-clear:hover{transform:translateY(-3px);box-shadow:0 6px 20px #6b72804d;background:rgba(107,114,128,.15)}button:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 8px 25px var(--shadow-strong)}button:disabled{opacity:.6;cursor:not-allowed;transform:none}.details-toggle,.aspect-toggle{background:var(--bg-secondary);color:var(--text-primary);border:2px solid var(--border-medium);padding:10px 20px;border-radius:12px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease}.aspect-toggle.active{background:var(--secondary-color);color:var(--text-white);border-color:var(--secondary-color)}.loading-message,.loading{text-align:center;padding:40px 20px;color:var(--text-secondary)}.loading-spinner{width:60px;height:60px;position:relative;margin:0 auto 30px;font-size:2.5rem;border:4px solid #e2e8f0;border-top:4px solid #667eea;border-radius:50%;-webkit-animation:app-spinner-rotation 1s linear infinite;-moz-animation:app-spinner-rotation 1s linear infinite;animation:app-spinner-rotation 1s linear infinite;will-change:transform;-webkit-will-change:transform}@keyframes app-spinner-rotation{0%{transform:rotate(0);-webkit-transform:rotate(0deg)}to{transform:rotate(360deg);-webkit-transform:rotate(360deg)}}.loading-spinner:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:80px;height:80px;background:radial-gradient(circle,rgba(102,126,234,.1) 0%,transparent 70%);border-radius:50%;animation:starGlow 2s ease-in-out infinite}.loading-message h2{font-size:1.3rem;font-weight:600;color:var(--primary-color);margin-bottom:20px;animation:messageFloat 2s ease-in-out infinite}.loading-message p{font-size:1rem;color:var(--text-secondary);opacity:.8;animation:messageFloat 2s ease-in-out infinite .5s}@keyframes starSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes starGlow{0%,to{opacity:.3;transform:translate(-50%,-50%) scale(1)}50%{opacity:.6;transform:translate(-50%,-50%) scale(1.2)}}@keyframes messageFloat{0%,to{transform:translateY(0);opacity:1}50%{transform:translateY(-5px);opacity:.8}}.loading-progress{margin-top:30px;display:flex;justify-content:center;gap:40px;flex-wrap:wrap}.progress-step{display:flex;flex-direction:column;align-items:center;min-width:120px;position:relative}.progress-step:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:80px;height:80px;background:radial-gradient(circle,rgba(102,126,234,.1) 0%,transparent 70%);border-radius:50%;opacity:0;animation:none;transition:all .3s ease}.progress-step span{padding:12px 20px;border-radius:25px;font-weight:600;font-size:.9rem;transition:all .5s ease;border:2px solid var(--border-light);background:var(--bg-secondary);color:var(--text-secondary);position:relative;z-index:2}.progress-step span.active{background:linear-gradient(45deg,var(--primary-color),var(--secondary-color));color:#fff;border-color:var(--primary-color);animation:progressPulse 2s ease-in-out infinite;box-shadow:0 4px 15px #667eea4d;transform:scale(1.05)}.progress-step span.active:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:120%;height:120%;background:radial-gradient(circle,rgba(102,126,234,.2) 0%,transparent 70%);border-radius:50%;animation:pulseGlow 2s ease-in-out infinite;z-index:-1}.progress-step span.completed{background:var(--success-color);color:#fff;border-color:var(--success-color);animation:completedBounce .6s ease-out}.progress-step span.pending{background:var(--bg-tertiary);color:var(--text-muted);border-color:var(--border-light);opacity:.7}@keyframes progressPulse{0%,to{transform:scale(1.05);opacity:1;box-shadow:0 4px 15px #667eea4d}50%{transform:scale(1.1);opacity:.9;box-shadow:0 6px 20px #667eea80}}@keyframes pulseGlow{0%,to{opacity:.3;transform:translate(-50%,-50%) scale(1)}50%{opacity:.6;transform:translate(-50%,-50%) scale(1.2)}}@keyframes completedBounce{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.analysis-section{background:var(--bg-secondary);border-radius:12px;padding:25px;border:1px solid rgba(102,126,234,.2)}.analysis-section h3{font-size:1.5rem;color:var(--primary-color);margin-bottom:20px;display:flex;align-items:center;gap:10px}.analysis-item{margin-bottom:20px;padding:15px;background:var(--bg-primary);border-radius:8px;border:1px solid var(--border-light)}.analysis-item h4{color:var(--secondary-color);margin-bottom:10px;font-size:1.1rem;display:flex;align-items:center;gap:8px}.analysis-item p{color:var(--text-primary);line-height:1.6;margin:0}.analysis-item ul{list-style:none;padding:0;margin:0}.analysis-item li{padding:8px 0;border-bottom:1px solid var(--border-light);color:var(--text-primary)}.analysis-item li:last-child{border-bottom:none}.analysis-item li:before{content:"✨";margin-right:8px;color:var(--accent-color)}.fortune-categories{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:20px}.fortune-item{background:var(--bg-primary);border-radius:12px;padding:20px;border:1px solid var(--border-light);box-shadow:0 4px 12px var(--shadow-light);transition:transform .3s ease}.fortune-item:hover{transform:translateY(-2px);box-shadow:0 6px 20px var(--shadow-medium)}.fortune-item h4{color:var(--secondary-color);margin-bottom:15px;font-size:1.1rem;display:flex;align-items:center;gap:8px}.fortune-item p{color:var(--text-primary);line-height:1.6;margin:0}@media (max-width: 768px){.loading-progress{flex-direction:column;gap:20px}.progress-step{min-width:auto}.fortune-categories{grid-template-columns:1fr}}.zodiac-details{background:var(--bg-secondary);border-radius:20px;padding:30px;margin:30px 0;border:1px solid var(--border-light)}.zodiac-attributes{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin:20px 0}.attribute{background:var(--bg-tertiary);padding:15px;border-radius:12px;text-align:center;border:1px solid var(--border-light)}.zodiac-description{margin:20px 0}.zodiac-description h3{color:var(--primary-color);margin-bottom:15px;font-size:1.3rem}.characteristics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin:20px 0}.characteristic-section{background:var(--bg-tertiary);padding:20px;border-radius:16px;border:1px solid var(--border-light)}.characteristic-section h4{color:var(--secondary-color);margin-bottom:10px;font-size:1.1rem}.characteristic-section ul{list-style:none;padding:0}.characteristic-section li{color:var(--text-secondary);position:relative;padding:5px 0 5px 20px}.characteristic-section li:before{content:"✦";position:absolute;left:0;color:var(--accent-color)}.planets-section,.houses-section{margin:40px 0}.planets-section h2,.houses-section h2,.section-header{color:var(--primary-color);font-size:2rem;margin-bottom:20px;text-align:center;font-weight:600}.planets-grid,.houses-grid,.planet-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:24px;margin:20px 0;position:relative;z-index:1;overflow:visible}.planet-card,.house-card,.planet-detail-card{background:var(--bg-primary);border-radius:20px;padding:24px;border:2px solid var(--border-light);transition:all .3s ease;box-shadow:0 8px 25px var(--shadow-light);position:relative;z-index:2;overflow:visible;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);margin-bottom:20px}.planet-card:hover,.house-card:hover,.planet-detail-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px var(--shadow-medium);border-color:var(--border-medium);background:var(--bg-secondary)}.planet-header{margin-bottom:0;padding-bottom:0;min-height:56px;display:flex;align-items:flex-end;border-bottom:2px solid var(--border-light)}.planet-name{color:var(--primary-color);font-size:1.3rem;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:4px;margin-bottom:0}.retrograde{color:var(--error-color);font-weight:700;font-size:1.1rem}.planet-details p,.house-info p{color:var(--text-secondary);margin:8px 0}.planet-details strong{color:var(--text-primary)}.planet-basic-info{margin:16px 0;padding:16px;background:var(--bg-tertiary);border-radius:12px;border:1px solid var(--border-light)}.planet-header{margin-bottom:8px;padding-bottom:4px}@media (max-width: 768px){.form-container,.result-container,.input-form-container,.form-card{padding:20px;margin:10px auto}.form-header h1,.result-header h1,.form-card h2{font-size:2rem}.form-buttons,.action-buttons{flex-direction:column}.zodiac-attributes,.characteristics-grid,.planets-grid,.houses-grid,.aspects-grid,.fortune-cards,.key-traits,.lucky-items{grid-template-columns:1fr}.chart-header{flex-direction:column;gap:15px}.aspect-guide,.period-selector{flex-direction:column;align-items:center}.ai-analysis-section{padding:10px}.ai-analysis-content{padding:20px}.ai-analysis-header{flex-direction:column;gap:15px;text-align:center}.ai-analysis-header h2{font-size:1.5rem}}@keyframes aiPulse{0%,to{opacity:1}50%{opacity:.7}}.btn-ai.analyzing{animation:aiPulse 2s infinite}.ai-loading{display:flex;align-items:center;gap:10px}.ai-loading-spinner{width:20px;height:20px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}.error-message{background:rgba(220,38,38,.1);border:1px solid var(--error-color);border-radius:12px;padding:20px;margin:20px 0;text-align:center}.error-message h2{color:var(--error-color);margin-bottom:10px}.error-message p{color:var(--text-secondary)}.error-icon{font-size:2rem;color:var(--error-color);margin-bottom:10px}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-tertiary);border-radius:4px}::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}@media print{body{background:white!important}.form-container,.result-container{box-shadow:none!important;border:1px solid #ccc!important}.action-buttons{display:none!important}}.debug-panel{background:rgba(255,255,255,.9);border:1px solid #ddd;border-radius:6px;padding:.5rem;margin-bottom:.5rem;font-family:monospace;font-size:.75rem;color:#666}.search-container{position:relative;width:100%}.search-input-group{display:flex;gap:.5rem;align-items:stretch}.location-search{flex:1}.map-toggle-btn{padding:.75rem 1rem;background:linear-gradient(45deg,var(--primary-color),var(--secondary-color));border:1px solid rgba(255,255,255,.3);border-radius:12px;color:#fff!important;cursor:pointer;transition:all .3s ease;font-size:.9rem;font-weight:600;min-width:120px;display:flex;align-items:center;justify-content:center;text-shadow:1px 1px 2px rgba(0,0,0,.5);box-shadow:0 4px 15px #667eea4d}.map-toggle-btn:hover{background:linear-gradient(45deg,var(--secondary-color),var(--primary-color));transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.search-loading{padding:.5rem;text-align:center;color:#fff;font-size:.9rem;opacity:.8}.suggestions-dropdown{position:absolute;top:100%;left:0;right:0;background:rgba(255,255,255,.98);border:1px solid rgba(255,255,255,.3);border-radius:12px;max-height:250px;overflow-y:auto;z-index:1000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);margin-top:.5rem;box-shadow:0 8px 25px #00000026}.suggestions-header{padding:.75rem;background:rgba(102,126,234,.1);border-bottom:1px solid rgba(102,126,234,.2);font-size:.8rem;color:var(--primary-color);font-weight:500;text-align:center}.suggestion-item{padding:.75rem;cursor:pointer;border-bottom:1px solid rgba(255,255,255,.2);transition:background-color .2s ease}.suggestion-item:hover{background:rgba(102,126,234,.2)}.first-suggestion{background:rgba(102,126,234,.05);border-left:3px solid var(--primary-color)}.suggestion-main{font-weight:600;color:#333;margin-bottom:.25rem;display:flex;align-items:center}.enter-hint{background:var(--primary-color);color:#fff;font-size:.7rem;padding:.2rem .4rem;border-radius:4px;margin-right:.5rem;font-weight:500}.suggestion-secondary{font-size:.85rem;color:#666}.map-container{margin-top:1rem;background:rgba(255,255,255,.1);border-radius:12px;padding:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.map-header{margin-bottom:1rem}.map-header h4{color:var(--primary-color);margin:0 0 .5rem;font-size:1.1rem;font-weight:600}.map-header p{color:var(--text-primary);margin:0;font-size:.9rem;background:rgba(255,255,255,.9);padding:.5rem;border-radius:8px;border:1px solid var(--border-light)}.google-map{width:100%;height:300px;border-radius:8px;overflow:hidden}.selected-location{margin-top:1rem;padding:1rem;background:rgba(102,126,234,.2);border-radius:12px;border:1px solid rgba(102,126,234,.3)}.selected-location h4{color:#fff;margin:0 0 .75rem;font-size:1rem}.selected-location p{color:#ffffffe6;margin:.25rem 0;font-size:.9rem}.api-key-warning{margin-top:1rem;padding:1rem;background:rgba(255,193,7,.2);border:1px solid rgba(255,193,7,.4);border-radius:12px;color:#fff}.api-key-warning p{margin:.25rem 0;font-size:.9rem}.usage-guide{margin-top:1rem;padding:1.5rem;background:rgba(255,255,255,.95);border-radius:12px;border:1px solid var(--border-light);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.usage-guide h4{color:var(--primary-color);margin:0 0 1rem;font-size:1.1rem;font-weight:600}.usage-steps{display:flex;flex-direction:column;gap:1rem}.usage-step{display:flex;gap:1rem;align-items:flex-start}.step-number{background:var(--primary-color);color:#fff;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:600;flex-shrink:0}.step-content{flex:1}.step-content strong{color:var(--text-primary);font-size:.95rem;display:block;margin-bottom:.25rem}.step-content p{color:var(--text-secondary);margin:0 0 .5rem;font-size:.85rem;line-height:1.4}.example{background:rgba(102,126,234,.1);border:1px solid rgba(102,126,234,.2);border-radius:6px;padding:.5rem;font-size:.8rem;color:var(--primary-color);font-weight:500}@media (max-width: 768px){.search-input-group{flex-direction:column}.map-toggle-btn{align-self:stretch;justify-content:center}.google-map{height:250px}.usage-guide{padding:1rem}.usage-step{flex-direction:column;gap:.5rem}.step-number{align-self:flex-start}}.ai-powered-badge{background:linear-gradient(135deg,#00d4ff 0%,#090979 100%);color:#fff;padding:4px 12px;border-radius:20px;font-size:.8rem;font-weight:500;margin-top:.5rem}.planets-table{display:grid;gap:12px;margin:20px 0}.planet-row{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:15px;padding:15px;background:var(--bg-secondary);border-radius:12px;border:1px solid var(--border-light);transition:all .3s ease}.planet-row:hover{transform:translateY(-2px);box-shadow:0 8px 20px var(--shadow-light)}.planet-name{font-weight:600;color:var(--primary-color);display:flex;align-items:center;gap:8px}.planet-sign{color:var(--secondary-color);font-weight:500}.planet-house{color:var(--text-muted);font-size:.9rem}.planet-degree{color:var(--text-muted);font-size:.9rem;text-align:right}.info-section{margin:40px 0}.collapsible-section{background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 50%,var(--bg-tertiary) 100%);border-radius:20px;border:1px solid var(--border-light);box-shadow:0 8px 24px #00000014;overflow:hidden}.collapsible-header{padding:25px 30px;cursor:pointer;transition:all .3s ease;border-bottom:1px solid var(--border-light)}.collapsible-header:hover{background:rgba(255,255,255,.5)}.collapsible-content{padding:30px}.intro-text{color:var(--text-secondary);line-height:1.6;margin-bottom:25px;font-size:1.1rem}.planets-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin:25px 0}.planet-category{background:var(--bg-primary);padding:20px;border-radius:12px;border:1px solid var(--border-light);text-align:center}.planet-category h3{color:var(--primary-color);margin-bottom:10px}.planet-category p{color:var(--text-secondary);font-size:.9rem;line-height:1.4}.summary-section{margin:40px 0;background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);color:var(--text-white);padding:40px;border-radius:20px;box-shadow:0 12px 30px #00000026}.summary-section h2{color:var(--text-white);margin-bottom:20px;text-align:center}.summary-content{font-size:1.1rem;line-height:1.7;text-align:center}@media (max-width: 768px){.planet-row{grid-template-columns:1fr;text-align:center;gap:10px}.planet-degree{text-align:center}.planets-grid{grid-template-columns:1fr}.collapsible-header,.collapsible-content{padding:20px}.summary-section{padding:25px}}.tab-navigation{display:flex;justify-content:center;gap:0;margin:2rem 0;background:#f8f9fa;border-radius:12px;padding:8px;box-shadow:0 2px 8px #0000001a}.tab-button{flex:1;padding:12px 20px;border:none;background:transparent;color:#6c757d;font-size:16px;font-weight:600;cursor:pointer;border-radius:8px;transition:all .3s ease;position:relative;overflow:hidden}.tab-button:hover{background:rgba(0,123,255,.1);color:#007bff;transform:translateY(-2px)}.tab-button.active{background:#007bff;color:#fff;box-shadow:0 4px 12px #007bff4d}.tab-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.tab-button.active:before{left:100%}.collapsible-header{cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .3s ease;padding:1rem;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border-radius:12px;margin-bottom:0;display:flex;justify-content:space-between;align-items:center}.collapsible-header:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea4d;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff}.collapsible-content{animation:slideDown .3s ease-out;overflow:hidden}@keyframes slideDown{0%{opacity:0;max-height:0;transform:translateY(-10px)}to{opacity:1;max-height:1000px;transform:translateY(0)}}.planets-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin:2rem 0}.planet-category{background:linear-gradient(135deg,#f093fb 0%,#f5576c 100%);padding:1.5rem;border-radius:16px;color:#fff;text-align:center;box-shadow:0 8px 25px #f093fb4d;transition:transform .3s ease}.planet-category:hover{transform:translateY(-5px)}.planet-category h3{margin:0 0 .5rem;font-size:1.2rem}.planet-category p{margin:.5rem 0;font-size:.9rem;opacity:.9}.planet-list{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-top:1rem}.planet-list span{background:rgba(255,255,255,.2);padding:.3rem .8rem;border-radius:20px;font-size:.85rem;font-weight:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.analysis-item.good-traits{background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%);color:#fff;border-left:5px solid #00f2fe}.analysis-item.good-traits h3{color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.1)}.analysis-item.attention-points{background:linear-gradient(135deg,#fa709a 0%,#fee140 100%);color:#333;border-left:5px solid #fa709a}.analysis-item.attention-points h3{color:#333;text-shadow:0 2px 4px rgba(0,0,0,.1)}.analysis-item.fortune-love,.analysis-item.fortune-career,.analysis-item.fortune-money,.analysis-item.fortune-growth{background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%);color:#fff;border-left:5px solid #00f2fe}.analysis-item.fortune-love h3,.analysis-item.fortune-career h3,.analysis-item.fortune-money h3,.analysis-item.fortune-growth h3{color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.1)}.future-predictions{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin:2rem 0}.prediction-item{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);padding:2rem;border-radius:16px;color:#fff;box-shadow:0 8px 25px #667eea4d;transition:transform .3s ease}.prediction-item:hover{transform:translateY(-5px);box-shadow:0 12px 35px #667eea66}.prediction-item h3{margin:0 0 1rem;font-size:1.3rem;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.1)}.prediction-content{background:rgba(255,255,255,.1);padding:1.5rem;border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.prediction-content p{margin:.8rem 0;font-size:.95rem;line-height:1.6}.prediction-content strong{color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.1)}.analysis-tab,.future-tab{animation:fadeInUp .5s ease-out}@media (max-width: 768px){.tab-navigation{flex-direction:column;gap:8px}.tab-button{flex:none;width:100%}.planets-grid,.future-predictions{grid-template-columns:1fr}.planet-category{padding:1rem}.prediction-item{padding:1.5rem}}.planets-analysis{display:flex;flex-direction:column;gap:20px;margin-top:20px}.planet-analysis-card{background:var(--bg-secondary);border-radius:16px;padding:24px;border:1px solid var(--border-light);box-shadow:0 4px 12px var(--shadow-light);transition:all .3s ease}.planet-analysis-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px var(--shadow-medium);border-color:var(--border-medium)}.planet-header{margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid var(--border-light)}.planet-header h4{font-size:1.4rem;color:var(--primary-color);font-weight:600;margin:0}.planet-content{display:grid;grid-template-columns:1fr 1fr;gap:24px}.sign-characteristics,.personal-impact{background:var(--bg-tertiary);padding:20px;border-radius:12px;border-left:4px solid var(--primary-color)}.sign-characteristics h5,.personal-impact h5{font-size:1.1rem;color:var(--text-primary);margin-bottom:12px;font-weight:600}.sign-characteristics p,.personal-impact p{color:var(--text-secondary);line-height:1.6;margin:0}.personal-impact{border-left-color:var(--accent-color)}@media (max-width: 768px){.planet-content{grid-template-columns:1fr;gap:16px}.planet-analysis-card{padding:20px}.planet-header h4{font-size:1.2rem}.sign-characteristics,.personal-impact{padding:16px}}.ai-chat{max-width:800px;margin:0 auto;padding:20px}.chat-header{text-align:center;margin-bottom:30px}.chat-header h2{color:var(--primary-color);margin-bottom:10px}.chat-header p{color:#fff;font-size:1.1rem;font-weight:500;text-shadow:0 1px 4px rgba(0,0,0,.15)}.category-selector{margin-bottom:30px}.category-selector h3{color:#fff;margin-bottom:15px;font-size:1.2rem;font-weight:600;text-shadow:0 1px 4px rgba(0,0,0,.12)}.category-buttons{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.category-btn{padding:10px 20px;border:2px solid var(--primary-color);border-radius:25px;background:var(--bg-primary);color:var(--primary-color);font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.9rem}.category-btn:hover{background:var(--primary-color);color:#fff;transform:translateY(-2px)}.category-btn.active{background:var(--primary-color);color:#fff;box-shadow:0 4px 12px #007bff4d}.chat-messages{height:400px;overflow-y:auto;border:1px solid var(--border-light);border-radius:16px;padding:20px;margin-bottom:20px;background:var(--bg-secondary)}.message{margin-bottom:20px;display:flex}.user-message{justify-content:flex-end}.ai-message{justify-content:flex-start}.message-content{max-width:70%;padding:15px 20px;border-radius:20px;position:relative}.user-message .message-content{background:var(--primary-color);color:#fff;border-bottom-right-radius:5px}.ai-message .message-content{background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-light);border-bottom-left-radius:5px}.message-text{line-height:1.6;margin-bottom:8px}.message-time{font-size:.8rem;opacity:.7;text-align:right}.typing-indicator{display:flex;gap:4px;align-items:center;padding:10px 0}.typing-indicator span{width:8px;height:8px;border-radius:50%;background:var(--primary-color);animation:typing 1.4s infinite ease-in-out}@keyframes typing{0%,80%,to{transform:scale(0);opacity:.5}40%{transform:scale(1);opacity:1}}.suggested-questions{margin-bottom:20px}.suggested-questions h4{color:var(--text-primary);margin-bottom:15px;font-size:1.1rem}.question-buttons{display:flex;flex-direction:column;gap:10px}.suggested-question-btn{padding:12px 16px;border:1px solid var(--border-medium);border-radius:12px;background:var(--bg-primary);color:var(--text-primary);text-align:left;cursor:pointer;transition:all .3s ease;font-size:.9rem}.suggested-question-btn:hover:not(:disabled){background:var(--bg-secondary);border-color:var(--primary-color);transform:translateY(-1px)}.suggested-question-btn:disabled{opacity:.5;cursor:not-allowed}.chat-input-area{display:flex;gap:10px;align-items:flex-end}.chat-input{flex:1;min-height:50px;max-height:120px;padding:15px;border:2px solid var(--border-light);border-radius:12px;background:var(--bg-primary);color:var(--text-primary);font-size:1rem;resize:vertical;transition:border-color .3s ease}.chat-input:focus{outline:none;border-color:var(--primary-color)}.send-button{padding:15px 20px;background:var(--primary-color);color:#fff;border:none;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap}.send-button:hover:not(:disabled){background:#0056b3;transform:translateY(-2px)}@media (max-width: 768px){.ai-chat{padding:15px}.category-buttons{flex-direction:column;align-items:stretch}.category-btn{padding:12px 16px}.chat-messages{height:300px;padding:15px}.message-content{max-width:85%;padding:12px 16px}.chat-input-area{flex-direction:column;gap:15px}.send-button{align-self:stretch;padding:15px}}.ai-analysis-section{margin-top:0;padding-top:24px;display:flex;flex-direction:column;gap:16px;align-items:flex-start;justify-content:flex-start}.ai-sign-characteristics,.ai-personal-impact,.ai-advice{font-size:1.08rem;line-height:1.9;background:var(--bg-tertiary);border-radius:12px;border-left:4px solid var(--accent-color);padding:18px 18px 14px;margin:0;min-width:0;font-weight:400}.ai-sign-characteristics strong,.ai-personal-impact strong,.ai-advice strong{color:var(--primary-color);font-weight:700;display:block;margin-bottom:8px;font-size:1.08rem;letter-spacing:.02em}.planet-card{max-width:520px;margin:0 auto}@media (max-width: 900px){.ai-analysis-section{flex-direction:column;gap:8px}}.planet-list-section{background:rgba(102,126,234,.08);border-radius:12px;border:1px solid rgba(102,126,234,.15);padding:16px 16px 12px;font-size:1.08rem;line-height:1.8;margin:0;color:#4a5568}.planet-list-section strong{color:var(--primary-color);font-weight:700;display:block;margin-bottom:8px;font-size:1.08rem;letter-spacing:.02em}.planet-list-section.harmonious{background:rgba(72,187,120,.1);border:1px solid rgba(72,187,120,.2)}.planet-list-section.challenging{background:rgba(245,101,101,.1);border:1px solid rgba(245,101,101,.2)}.planet-list-section.good-traits{background:rgba(72,187,120,.08);border:1px solid rgba(72,187,120,.15)}.planet-list-section.attention-points{background:rgba(255,193,7,.08);border:1px solid rgba(255,193,7,.2)}.planet-list-section.fortune-love{background:rgba(255,182,193,.15);border:1px solid rgba(255,182,193,.3)}.planet-list-section.fortune-career{background:rgba(135,206,235,.15);border:1px solid rgba(135,206,235,.3)}.planet-list-section.fortune-health{background:rgba(144,238,144,.15);border:1px solid rgba(144,238,144,.3)}.planet-list-section.fortune-finance{background:rgba(255,215,0,.12);border:1px solid rgba(255,215,0,.25)}.planet-list-section.fortune-spiritual{background:rgba(221,160,221,.15);border:1px solid rgba(221,160,221,.3)}@media (max-width: 768px){.aspects-list{max-width:98%}.aspect-list-item{padding:16px 8px 12px}.aspect-list-title{font-size:1.05rem}.aspect-list-section{font-size:.98rem}.aspect-patterns,.significant-aspects,.aspects-analysis,.aspect-analysis,.patterns-list{max-width:98%}.aspect-explanation p,.pattern-item,.planet-meanings p{font-size:.98rem}}.select-wrapper{display:inline-block;position:relative}.custom-select{padding:10px 48px 10px 18px;border-radius:8px;border:2px solid var(--primary-color);background:none;font-size:1rem;color:var(--text-primary);box-shadow:0 2px 8px var(--shadow-light);transition:border .2s,box-shadow .2s;outline:none;appearance:none;-webkit-appearance:none;-moz-appearance:none;cursor:pointer;font-family:inherit;margin-right:8px}.custom-select:focus,.custom-select:hover{border:2px solid var(--secondary-color);box-shadow:0 4px 16px var(--shadow-medium)}.custom-select::-ms-expand{display:none}.select-wrapper:after{content:"";position:absolute;top:50%;right:18px;width:20px;height:20px;pointer-events:none;transform:translateY(-50%);background:url('data:image/svg+xml;utf8,<svg fill="%23667eea" height="20" viewBox="0 0 24 24" width="20" xmlns="http://www.w3.org/2000/svg"><path d="M7 10l5 5 5-5z"/></svg>') no-repeat center/20px 20px}.aspects-analysis{margin-bottom:2rem;max-width:95%;margin-left:auto;margin-right:auto}.aspect-explanation{background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);border-radius:12px;padding:1rem;margin-bottom:1.5rem;box-shadow:0 4px 15px #0000001a;max-width:100%}.aspect-explanation p{color:#333;line-height:1.8;margin:0;font-size:1.08rem}.aspect-explanation strong{color:#1976d2}.aspect-patterns{margin-bottom:2rem;width:95%;max-width:95%;margin-left:auto;margin-right:auto}.aspect-patterns h3{color:#333;margin-bottom:1rem;font-size:1.2rem;background:rgba(255,255,255,.9);padding:.5rem 1rem;border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.patterns-list{display:flex;flex-direction:column;gap:.8rem;max-width:95%;margin-left:auto;margin-right:auto}.pattern-item{background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);border-radius:12px;padding:1rem;color:#333;font-size:1.08rem;line-height:1.8;box-shadow:0 4px 15px #0000001a;max-width:100%;margin-left:auto;margin-right:auto}.significant-aspects{margin-bottom:2rem;max-width:95%;margin-left:auto;margin-right:auto}.significant-aspects h3{color:#333;margin-bottom:1rem;font-size:1.2rem;background:rgba(255,255,255,.9);padding:.5rem 1rem;border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.aspects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}.aspect-card{background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);border-radius:12px;padding:1.2rem;transition:all .3s ease;box-shadow:0 4px 15px #0000001a}.aspect-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0003}.aspect-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid rgba(0,0,0,.1)}.aspect-planets{color:#333;font-weight:700;font-size:1.1rem}.aspect-type{padding:.3rem .8rem;border-radius:20px;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.aspect-type.harmonious{background:rgba(76,175,80,.2);color:#2e7d32;border:1px solid rgba(76,175,80,.3)}.aspect-type.challenging{background:rgba(244,67,54,.2);color:#c62828;border:1px solid rgba(244,67,54,.3)}.aspect-details{color:#333}.aspect-meaning{margin-bottom:.8rem;font-weight:700;color:#1976d2}.aspect-description{color:#666;font-size:.9rem;line-height:1.5;margin-bottom:.8rem}.aspect-impact{background:rgba(74,144,226,.1);border-left:3px solid #4A90E2;padding:.8rem;margin:.8rem 0;border-radius:4px;color:#333;font-size:.9rem;line-height:1.5}.aspect-impact strong{color:#1976d2;font-weight:600}.aspect-strength{font-size:.85rem;opacity:.7;color:#666}.no-aspects{text-align:center;padding:2rem;color:#666;background:rgba(255,255,255,.8);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.aspect-chart-section{margin-top:2rem}.aspect-chart-section h3{color:#333;margin-bottom:1rem;font-size:1.2rem;background:rgba(255,255,255,.9);padding:.5rem 1rem;border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.chart-container{display:flex;justify-content:center;margin-bottom:1rem}.chart-note{text-align:center;color:#666;font-size:.85rem;font-style:italic;background:rgba(255,255,255,.8);padding:.5rem;border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@media (max-width: 768px){.aspects-grid{grid-template-columns:1fr}.aspect-header{flex-direction:column;align-items:flex-start;gap:.5rem}.aspect-planets{font-size:1rem}.aspect-type{font-size:.75rem}}.transit-info-section{margin-bottom:2rem;background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);border-radius:12px;padding:1.5rem;box-shadow:0 4px 15px #0000001a}.transit-info-section h3{color:#333;margin-bottom:1rem;font-size:1.2rem;text-align:center}.transit-planets-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem;margin-bottom:1rem}.transit-planet-card{display:flex;align-items:center;gap:.8rem;background:rgba(255,255,255,.8);border:1px solid rgba(0,0,0,.1);border-radius:8px;padding:.8rem;transition:all .3s ease}.transit-planet-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.transit-planet-symbol{font-size:1.5rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.9);border-radius:50%;border:2px solid rgba(0,0,0,.1)}.transit-planet-info{flex:1}.transit-planet-name{font-weight:700;color:#333;font-size:.9rem;margin-bottom:.2rem}.transit-planet-position{color:#666;font-size:.8rem}.transit-note{text-align:center;color:#666;font-size:.85rem;font-style:italic;margin:0;padding:.5rem;background:rgba(255,255,255,.6);border-radius:6px}@media (max-width: 768px){.transit-planets-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:.8rem}.transit-planet-card{padding:.6rem}.transit-planet-symbol{font-size:1.2rem;width:35px;height:35px}.transit-planet-name{font-size:.8rem}.transit-planet-position{font-size:.75rem}}.planet-meanings{background:rgba(255,255,255,.8);border:1px solid rgba(0,0,0,.1);border-radius:8px;padding:1rem;margin-bottom:1.5rem;box-shadow:0 2px 10px #0000001a;max-width:100%;margin-left:auto;margin-right:auto}.planet-meanings p{color:#333;line-height:1.8;margin:0;font-size:1.08rem}.planet-meanings strong{color:#1976d2}.aspect-card{border-radius:12px;padding:1rem;margin-bottom:1rem;box-shadow:0 2px 8px #0000001a;border:1px solid rgba(0,0,0,.1);transition:transform .2s ease,box-shadow .2s ease}.aspect-card.harmonious{background:linear-gradient(135deg,rgba(78,205,196,.1),rgba(69,183,209,.05));border:1px solid rgba(78,205,196,.3)}.aspect-card.challenging{background:linear-gradient(135deg,rgba(231,76,60,.1),rgba(255,142,83,.05));border:1px solid rgba(231,76,60,.3)}.aspects-list{display:flex;flex-direction:column;gap:1rem;margin-top:1rem;max-width:95%;margin-left:auto;margin-right:auto}.aspect-list-item{background:rgba(255,255,255,.9);border:1px solid rgba(0,0,0,.1);border-radius:12px;padding:24px 20px 20px;box-shadow:0 2px 10px #0000001a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .2s ease,box-shadow .2s ease;width:100%}.aspect-list-item:hover{transform:translateY(-2px);box-shadow:0 4px 20px #00000026}.aspect-list-item.harmonious{border:1px solid rgba(78,205,196,.3);background:linear-gradient(135deg,rgba(78,205,196,.05),rgba(255,255,255,.9))}.aspect-list-item.challenging{border:1px solid rgba(231,76,60,.3);background:linear-gradient(135deg,rgba(231,76,60,.05),rgba(255,255,255,.9))}.aspect-list-title{font-size:1.2rem;font-weight:700;color:#333;margin-bottom:18px;padding-bottom:.5rem;border-bottom:1px solid rgba(0,0,0,.1)}.aspect-list-analysis{display:flex;flex-direction:column;gap:18px}.aspect-list-section{color:#333;line-height:1.8;font-size:1.08rem}.aspect-list-section strong{color:#1976d2;margin-right:.5rem;font-weight:700;display:block;margin-bottom:8px;font-size:1.08rem;letter-spacing:.02em}.aspect-analysis{max-width:95%;margin-left:auto;margin-right:auto}.aspect-line{transition:all .3s ease;filter:drop-shadow(0 0 2px rgba(255,255,255,.3))}.aspect-line:hover{opacity:1!important;filter:drop-shadow(0 0 4px rgba(255,255,255,.6))}.aspect-analysis,.aspects-analysis{width:100%;max-width:1200px;margin:0 auto 30px}.aspect-explanation,.aspect-patterns,.significant-aspects,.aspect-chart-section,.no-aspects{width:100%;box-sizing:border-box;margin:20px 0}.aspect-explanation{background:rgba(255,255,255,.95);padding:25px;border-radius:15px;border:1px solid rgba(78,205,196,.3);box-shadow:0 4px 20px #0000001a;color:#2d3748}.aspect-explanation strong{color:#2b6cb7;display:block;margin-bottom:10px;font-size:1.1em}.aspect-explanation p{line-height:1.7;margin-bottom:15px;color:#4a5568}.aspect-patterns{background:rgba(255,255,255,.93);padding:25px;border-radius:15px;border:1px solid rgba(102,126,234,.3);box-shadow:0 4px 20px #0000001a;color:#2d3748}.aspect-patterns h3{color:#2b6cb7;margin-bottom:20px;font-size:1.3em}.patterns-list{display:flex;flex-direction:column;gap:15px}.pattern-item{background:linear-gradient(135deg,rgba(102,126,234,.08),rgba(78,205,196,.08));padding:20px;border-radius:12px;border:1px solid rgba(102,126,234,.2);line-height:1.7;font-size:1.05em;color:#2d3748;transition:all .3s ease}.pattern-item:hover{transform:translateY(-2px);box-shadow:0 8px 25px #00000026;background:linear-gradient(135deg,rgba(102,126,234,.12),rgba(78,205,196,.12))}.significant-aspects{background:rgba(255,255,255,.93);padding:25px;border-radius:15px;border:1px solid rgba(102,126,234,.3);box-shadow:0 4px 20px #0000001a;color:#2d3748}.significant-aspects h3{color:#2b6cb7;margin-bottom:20px;font-size:1.3em}.planet-meanings{background:rgba(255,255,255,.9);padding:20px;border-radius:12px;margin-bottom:25px;border-left:4px solid #45B7D1;color:#2d3748}.planet-meanings p{margin:0;line-height:1.6;color:#4a5568}.planet-meanings strong{color:#2b6cb7}.aspects-list{display:flex;flex-direction:column;gap:15px}.aspect-list-item{background:rgba(255,255,255,.9);padding:20px;border-radius:12px;border:1px solid rgba(102,126,234,.2);transition:all .3s ease;width:100%;box-sizing:border-box;color:#2d3748}.aspect-list-item.harmonious{border:1px solid rgba(78,205,196,.3);background:rgba(78,205,196,.05)}.aspect-list-item.challenging{border:1px solid rgba(231,76,60,.3);background:rgba(231,76,60,.05)}.aspect-list-item:hover{transform:translateY(-2px);box-shadow:0 8px 25px #00000026;background:rgba(255,255,255,.95)}.aspect-list-title{color:#2b6cb7;font-size:1.1em;font-weight:700;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid rgba(102,126,234,.3)}.aspect-list-analysis{display:flex;flex-direction:column;gap:12px}.aspect-list-section{color:#4a5568;line-height:1.6}.aspect-list-section strong{color:#2b6cb7;margin-right:8px}.aspect-chart-section{background:rgba(255,255,255,.93);padding:25px;border-radius:15px;border:1px solid rgba(102,126,234,.3);box-shadow:0 4px 20px #0000001a;color:#2d3748}.aspect-chart-section h3{color:#2b6cb7;margin-bottom:20px;font-size:1.3em;text-align:center}.chart-container{display:flex;justify-content:center;align-items:center;margin:25px 0;padding:20px;background:rgba(102,126,234,.05);border-radius:12px}.chart-note{text-align:left;color:#718096;font-size:.95em;margin-top:15px;padding-top:15px;border-top:1px solid rgba(102,126,234,.2)}.no-aspects{background:rgba(255,255,255,.93);padding:25px;border-radius:15px;border:1px solid rgba(102,126,234,.3);text-align:left;color:#718096}.planets-list{display:flex;flex-direction:column;gap:15px;max-width:1200px;margin:40px auto 25px;padding:20px;background:rgba(102,126,234,.05);border-radius:15px;border:1px solid rgba(102,126,234,.3);box-shadow:0 4px 20px #0000001a}.planet-list-item{background:rgba(255,255,255,.93);padding:20px;border-radius:15px;border:1px solid rgba(102,126,234,.2);transition:all .3s ease;box-shadow:0 4px 20px #0000001a;color:#2d3748}.planet-list-item:hover{transform:translateY(-2px);box-shadow:0 8px 25px #00000026;background:rgba(255,255,255,.98)}.planet-list-title{color:#2b6cb7;font-size:1.2em;font-weight:700;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid rgba(102,126,234,.3)}.planet-list-analysis{display:flex;flex-direction:column;gap:12px}.section-title{color:#2b6cb7;font-size:1.8em;font-weight:700;margin:40px 0 25px;text-align:left;padding:20px;background:rgba(255,255,255,.9);border-radius:15px;border:1px solid rgba(102,126,234,.3);box-shadow:0 4px 20px #0000001a}.result-container{max-width:1200px;margin:0 auto;padding:20px}.result-content{background:rgba(255,255,255,.95);border-radius:20px;padding:30px;margin:20px 0;border:1px solid rgba(102,126,234,.2);color:#2d3748}.chat-input-form{display:flex;gap:10px;margin-top:20px;padding:20px;background:rgba(255,255,255,.9);border-radius:15px;border:1px solid rgba(102,126,234,.3)}.chat-input-form input{flex:1;padding:12px 16px;border:1px solid rgba(102,126,234,.3);border-radius:8px;background:rgba(255,255,255,.9);color:#2d3748;font-size:16px}.chat-input-form input::placeholder{color:#718096}.chat-input-form button{padding:12px 20px;background:linear-gradient(135deg,#2b6cb7,#45B7D1);border:none;border-radius:8px;color:#fff;font-weight:700;cursor:pointer;transition:all .3s ease}.chat-input-form button:hover{transform:translateY(-1px);box-shadow:0 4px 15px #2b6cb74d}.ai-analysis-section{background:rgba(255,255,255,.93);padding:25px;border-radius:15px;border:1px solid rgba(102,126,234,.3);box-shadow:0 4px 20px #0000001a;color:#2d3748;margin:20px 0}.ai-analysis-section h3{color:#2b6cb7;margin-bottom:15px}.ai-analysis-section p{color:#4a5568;line-height:1.6}.analysis-item{background:rgba(255,255,255,.9);padding:20px;border-radius:12px;border:1px solid rgba(102,126,234,.2);margin:15px 0;color:#2d3748}.analysis-item h4{color:#2b6cb7;margin-bottom:10px}.analysis-item p{color:#4a5568;line-height:1.6}@media (max-width: 768px){.aspect-analysis,.aspects-analysis{padding:0 10px}.aspect-explanation,.aspect-patterns,.significant-aspects,.aspect-chart-section,.no-aspects{padding:20px;margin:15px 0}.chart-container{padding:15px}.chart-container svg{width:100%;height:auto;max-width:350px}.aspect-list-item,.pattern-item,.result-container{padding:15px}.result-content{padding:20px}.section-title{font-size:1.5em;padding:15px;margin:30px 0 20px}.planet-list-item{padding:15px}.chat-input-form{flex-direction:column;padding:15px}.chat-input-form input{margin-bottom:10px}}.planet-list-section.harmonious strong{color:#059669!important;font-weight:700;display:block;margin-bottom:8px;font-size:1.08rem;letter-spacing:.02em}.planet-list-section.challenging strong{color:#dc2626!important;font-weight:700;display:block;margin-bottom:8px;font-size:1.08rem;letter-spacing:.02em}.aspect-icon-green{color:#48bb78!important;font-weight:700!important}.aspect-icon-red{color:#f56565!important;font-weight:700!important}.daily-guidance{background:linear-gradient(135deg,rgba(255,215,0,.1) 0%,rgba(255,165,0,.1) 100%);border:1px solid rgba(255,215,0,.3);padding:16px;border-radius:8px;font-size:16px;line-height:1.6;color:#333;margin-bottom:12px}.transit-insight{background:rgba(138,43,226,.1);border:1px solid rgba(138,43,226,.3);padding:12px;border-radius:6px;margin-bottom:8px;font-size:14px;line-height:1.5}.transit-planets{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:15px}.transit-planet-item{display:flex;flex-direction:column;align-items:center;padding:12px;background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(255,255,255,.7));border-radius:12px;border:1px solid rgba(102,126,234,.2);transition:all .3s ease;text-align:center}.transit-planet-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea26}.transit-planet-item .planet-name{font-weight:600;font-size:14px;color:#2c3e50;margin-bottom:4px}.transit-planet-item .planet-sign{font-size:13px;color:#667e96;margin-bottom:4px}.retrograde-indicator{background:linear-gradient(135deg,#ff6b6b,#ff8e8e);color:#fff;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:500;margin-top:4px}.transit-aspect-item{background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(255,255,255,.7));padding:15px;border-radius:12px;border:1px solid rgba(102,126,234,.2);margin-bottom:12px;transition:all .3s ease}.transit-aspect-item:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea26}.aspect-planets{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:8px;font-size:14px}.natal-planet,.transit-planet{padding:4px 8px;border-radius:8px;font-weight:500}.natal-planet,.transit-planet{background:linear-gradient(135deg,#667e96,#8fa6b8);color:#fff}.aspect-type{font-size:16px;margin:0 4px}.aspect-strength{text-align:center;font-size:13px;font-weight:600;letter-spacing:.5px;padding:6px 12px;border-radius:20px;background:linear-gradient(135deg,rgba(255,215,0,.1),rgba(255,215,0,.05));border:1px solid rgba(255,215,0,.3);color:#b8860b}.daily-guidance{background:linear-gradient(135deg,rgba(102,126,234,.1),rgba(102,126,234,.05));padding:20px;border-radius:15px;border:1px solid rgba(102,126,234,.2);font-size:15px;line-height:1.7;color:#2c3e50;text-align:left}.transit-insight{background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(255,255,255,.7));padding:15px;border-radius:12px;border:1px solid rgba(102,126,234,.2);margin-bottom:10px;font-size:14px;line-height:1.6;color:#2c3e50}@media (max-width: 768px){.transit-planets{grid-template-columns:1fr;gap:10px}.transit-planet-item{padding:10px}.aspect-planets{flex-direction:column;gap:6px}.natal-planet,.transit-planet{padding:6px 12px}}@keyframes transitGlow{0%{box-shadow:0 0 5px #ffd70080}50%{box-shadow:0 0 20px #ffd700cc}to{box-shadow:0 0 5px #ffd70080}}.daily-guidance:hover{animation:transitGlow 2s ease-in-out infinite}.timeframe-selector{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.timeframe-btn{padding:8px 16px;border:2px solid rgba(102,126,234,.3);background:rgba(255,255,255,.9);border-radius:20px;cursor:pointer;transition:all .3s ease;font-size:14px;font-weight:500;color:#667eea}.timeframe-btn:hover{background:rgba(102,126,234,.1);transform:translateY(-1px)}.timeframe-btn.active{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border-color:#667eea;box-shadow:0 4px 12px #667eea4d}.generate-prediction-btn{background:linear-gradient(135deg,#ffecd2 0%,#fcb69f 100%);border:none;padding:12px 24px;border-radius:25px;color:#8b4513;font-weight:700;cursor:pointer;transition:all .3s ease;font-size:16px;box-shadow:0 4px 15px #fcb69f4d}.generate-prediction-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #fcb69f66}.generate-prediction-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.overall-message{background:linear-gradient(135deg,rgba(255,215,0,.1) 0%,rgba(255,165,0,.1) 100%);border-left:4px solid #ffd700;padding:16px;border-radius:8px;font-size:16px;line-height:1.6;color:#333;font-weight:500}.short-term-advice{background:linear-gradient(135deg,rgba(138,43,226,.1) 0%,rgba(75,0,130,.1) 100%);border-left:4px solid #8a2be2;padding:16px;border-radius:8px;font-size:15px;line-height:1.6;color:#333}.key-date-item{background:rgba(54,162,235,.1);border:1px solid rgba(54,162,235,.3);border-radius:10px;padding:12px;margin-bottom:8px;transition:all .3s ease}.key-date-item:hover{background:rgba(54,162,235,.2);transform:translateY(-1px);box-shadow:0 3px 10px #36a2eb33}.key-date-date{font-weight:700;color:#36a2eb;font-size:14px;margin-bottom:4px}.key-date-event{color:#333;font-weight:500;margin-bottom:4px;font-size:14px}.key-date-advice{color:#666;font-size:13px;line-height:1.4}@media (max-width: 768px){.timeframe-selector{justify-content:center}.timeframe-btn{font-size:12px;padding:6px 12px}.generate-prediction-btn{width:100%;font-size:14px;padding:10px 16px}.overall-message,.short-term-advice{padding:12px;font-size:14px}.key-date-item{padding:10px}}@media (max-width: 768px){.App{padding:5px}.App-header{margin-bottom:15px;padding:15px 0}.App-header h1{font-size:2rem}.App-header p{font-size:.9rem}.form-container,.result-container,.input-form-container{padding:10px 5px;margin:0 auto;width:100%;max-width:100%;border-radius:8px}.form-card{padding:15px 10px;max-width:100%;width:100%}.planets-list{max-width:100%!important;margin:10px 0!important;padding:0!important;border-radius:0!important;width:100%!important;box-sizing:border-box!important;background:none!important;border:none!important;box-shadow:none!important;display:block!important;gap:0!important}.planet-list-item{margin-bottom:15px!important;padding:15px 10px!important;background:rgba(255,255,255,.95)!important;border-radius:8px!important;border:1px solid rgba(102,126,234,.2)!important;box-shadow:0 2px 8px #0000001a!important}.planet-list-title{font-size:1.1rem!important;font-weight:600!important;margin-bottom:10px!important;line-height:1.3!important;color:#2b6cb7!important}.planet-list-analysis{padding:0!important;margin:0!important}.planet-list-section{padding:12px!important;margin-bottom:10px!important;font-size:.95rem!important;line-height:1.5!important;color:#333!important;border-radius:6px!important;border:none!important;border-left:none!important;background:rgba(102,126,234,.08)!important}.planet-list-section strong{font-size:1rem!important;display:block!important;margin-bottom:5px!important;color:#2b6cb7!important}.planet-list-section.harmonious{background:rgba(72,187,120,.1)!important;border:1px solid rgba(72,187,120,.2)!important}.planet-list-section.challenging{background:rgba(245,101,101,.1)!important;border:1px solid rgba(245,101,101,.2)!important}.planet-list-section.good-traits{background:rgba(72,187,120,.08)!important;border:1px solid rgba(72,187,120,.15)!important}.planet-list-section.attention-points{background:rgba(255,193,7,.08)!important;border:1px solid rgba(255,193,7,.2)!important}.planet-list-section.fortune-love{background:rgba(255,182,193,.15)!important;border:1px solid rgba(255,182,193,.3)!important}.planet-list-section.fortune-career{background:rgba(135,206,235,.15)!important;border:1px solid rgba(135,206,235,.3)!important}.planet-list-section.fortune-health{background:rgba(144,238,144,.15)!important;border:1px solid rgba(144,238,144,.3)!important}.planet-list-section.fortune-finance{background:rgba(255,215,0,.12)!important;border:1px solid rgba(255,215,0,.25)!important}.planet-list-section.fortune-spiritual{background:rgba(221,160,221,.15)!important;border:1px solid rgba(221,160,221,.3)!important}.section-title{font-size:1.3rem!important;padding:10px 15px!important;text-align:left!important;background:rgba(255,255,255,.9)!important;border-radius:8px!important;margin:15px 5px!important}.analysis-section{margin-bottom:20px!important;padding:0 5px!important}.analysis-item{padding:12px!important;margin-bottom:10px!important;background:rgba(255,255,255,.95)!important;border-radius:8px!important;border:1px solid rgba(102,126,234,.2)!important}.analysis-item h4{font-size:1rem!important;margin-bottom:8px!important;color:#2b6cb7!important}.analysis-item p{font-size:.9rem!important;line-height:1.5!important;color:#333!important}.timeframe-selector{display:flex!important;flex-wrap:wrap!important;gap:6px!important;justify-content:center!important;padding:0!important}.timeframe-btn{padding:8px 10px!important;font-size:.85rem!important;border-radius:6px!important;min-width:55px!important;text-align:center!important}.generate-prediction-btn{width:100%!important;padding:12px!important;font-size:.95rem!important;border-radius:8px!important;margin:10px 0!important}.action-buttons{display:flex!important;flex-direction:column!important;gap:8px!important;margin:15px 5px!important;padding:0!important}.action-buttons button{width:100%!important;padding:12px!important;font-size:.9rem!important;border-radius:8px!important}.overall-message,.short-term-advice,.daily-guidance,.transit-insight{font-size:.9rem!important;line-height:1.5!important;padding:12px!important;background:rgba(255,255,255,.8)!important;border-radius:6px!important;margin-bottom:8px!important;border:1px solid rgba(102,126,234,.15)!important}.key-date-item{padding:10px!important;margin-bottom:8px!important;background:rgba(255,255,255,.8)!important;border-radius:6px!important;border:1px solid rgba(102,126,234,.15)!important}.key-date-date{font-size:.95rem!important;font-weight:600!important;color:#2b6cb7!important}.key-date-event{font-size:.9rem!important;margin:3px 0!important;color:#333!important}.key-date-advice{font-size:.85rem!important;line-height:1.4!important;color:#555!important}.error-message{padding:15px 10px!important;margin:10px 5px!important;text-align:left!important;background:rgba(255,255,255,.95)!important;border-radius:8px!important}.clear-button,.btn-clear{padding:12px 20px!important;font-size:1rem!important;margin:10px 5px!important;border-radius:12px!important}.error-message h2{font-size:1.1rem!important;margin-bottom:8px!important}.error-message p{font-size:.9rem!important;line-height:1.4!important}.error-actions{display:flex!important;flex-direction:column!important;gap:8px!important;margin-top:12px!important}.error-actions button{width:100%!important;padding:10px!important;font-size:.9rem!important}.loading-message{padding:15px 10px!important;margin:10px 5px!important;text-align:left!important;background:rgba(255,255,255,.95)!important;border-radius:8px!important}.loading-message h2{font-size:1.1rem!important}.loading-message p{font-size:.9rem!important}.loading-progress{padding:10px!important;margin:10px 0!important}.progress-step{margin-bottom:8px!important}.progress-step span{font-size:.85rem!important;padding:6px 10px!important}}@media (max-width: 480px){.App{padding:3px}.planets-list{margin:5px 0!important}.planet-list-item{margin-bottom:10px!important;padding:10px 8px!important}.planet-list-title{font-size:1rem!important}.planet-list-section{font-size:.85rem!important;padding:10px!important}.section-title{font-size:1.1rem!important;margin:10px 3px!important;padding:8px 10px!important}.timeframe-btn{padding:6px 8px!important;font-size:.8rem!important;min-width:50px!important}.generate-prediction-btn{font-size:.9rem!important;padding:10px!important}.action-buttons{margin:10px 3px!important}.action-buttons button{font-size:.85rem!important;padding:10px!important}.analysis-section{padding:0 3px!important}.analysis-item{padding:10px!important}.overall-message,.short-term-advice,.daily-guidance,.transit-insight{font-size:.85rem!important;padding:10px!important}.clear-button,.btn-clear{padding:8px 16px!important;font-size:.85rem!important;margin:5px 3px!important;border-radius:8px!important}}.accordion-title{transition:all .2s ease;position:relative;padding:16px 20px;border-radius:8px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);margin-bottom:10px;-webkit-user-select:none;user-select:none}.accordion-title:hover{transform:translateY(-1px);box-shadow:0 6px 20px #667eea4d}.accordion-title:active{transform:translateY(0)}.planets-list{transition:all .3s ease;overflow:hidden}.home-wrapper{min-height:100vh;padding:20px}.input-form-wrapper{max-width:800px;margin:0 auto}.back-button-container{margin-bottom:20px}.back-button{background:#f8f9fa;border:1px solid #dee2e6;padding:10px 20px;border-radius:8px;cursor:pointer;font-size:.9rem;color:#6c757d;transition:all .3s ease}.back-button:hover{background:#e9ecef;color:#495057}.mode-explanation{background:#f8f9fa;border-radius:12px;padding:20px;margin-bottom:30px;border-left:4px solid #007bff}.mode-info h3{margin:0 0 10px;color:#343a40}.mode-info p{margin:0;color:#6c757d;line-height:1.6}.mode-info.simple{border-left-color:#667eea}.mode-info.detailed{border-left-color:#f093fb}.ai-fortune-wrapper{max-width:1000px;margin:0 auto;padding:20px}.ai-fortune-header{text-align:center;margin-bottom:40px}.ai-fortune-header h2{font-size:2.5rem;color:#333;margin-bottom:15px}.ai-fortune-header p{font-size:1.2rem;color:#666;line-height:1.6}.ai-fortune-content{background:white;border-radius:15px;padding:30px;box-shadow:0 4px 15px #0000001a}.chat-introduction{margin-bottom:30px}.intro-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.intro-card{background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%);color:#fff;padding:20px;border-radius:12px;text-align:center;transition:transform .3s ease}.intro-card:hover{transform:translateY(-5px)}.intro-card h4{margin:0 0 10px;font-size:1.2rem}.intro-card p{margin:0;font-size:.9rem;opacity:.9}.chat-placeholder{text-align:center;padding:40px;background:#f8f9fa;border-radius:12px;color:#6c757d}.chat-placeholder p{margin:10px 0;font-size:1.1rem}.back-home-link{display:inline-block;margin-top:20px;padding:10px 20px;background:#007bff;color:#fff;text-decoration:none;border-radius:8px;transition:background-color .3s ease}.back-home-link:hover{background:#0056b3}@media (max-width: 768px){.home-wrapper{padding:15px}.ai-fortune-header h2{font-size:2rem}.ai-fortune-header p{font-size:1rem}.intro-cards{grid-template-columns:1fr}.ai-fortune-content{padding:20px}}@media (max-width: 480px){.home-wrapper{padding:10px}.ai-fortune-header h2{font-size:1.8rem}.mode-explanation{padding:15px}.chat-placeholder{padding:30px 15px}}.level-up-message{background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border:1px solid #0ea5e9;border-radius:10px;padding:1rem 1.5rem;margin-bottom:1.5rem;text-align:center}.level-up-message p{margin:.5rem 0;color:#0c4a6e;font-size:1rem;line-height:1.5}.level-up-message p:first-child{font-weight:600;font-size:1.1rem}.back-to-top-button-container{padding:1rem 0;display:flex;justify-content:center;margin-bottom:1rem}.back-to-top-button{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;border-radius:25px;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea4d}.back-to-top-button:hover{background:linear-gradient(135deg,#5a67d8 0%,#6b46c1 100%);transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.back-to-top-button:active{transform:translateY(0);box-shadow:0 2px 10px #667eea4d}.skeleton-preview{margin-top:2rem;padding:1.5rem;background:rgba(255,255,255,.1);border-radius:15px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.skeleton-preview h3{margin:0 0 1rem;color:#667eea;font-size:1.1rem}.skeleton-card{background:rgba(255,255,255,.8);padding:1rem;margin-bottom:1rem;border-radius:10px;animation:skeleton-pulse 1.5s ease-in-out infinite}.skeleton-title{height:20px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);border-radius:4px;margin-bottom:.8rem;animation:skeleton-shimmer 2s infinite}.skeleton-content-line{height:14px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);border-radius:4px;margin-bottom:.6rem;animation:skeleton-shimmer 2s infinite}.skeleton-content-line.short{width:70%}.check-mark{margin-left:.5rem;color:#4caf50;font-weight:700;animation:check-appear .3s ease-in-out}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes skeleton-shimmer{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}@keyframes check-appear{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.fortune-card,.personality-card,.planet-card,.mode-card,.zodiac-section,.personality-section,.period-fortune-section,.three-planets-introduction,.educational-content,.tips-section,.practical-use,.advanced-content{transition:all .3s cubic-bezier(.4,0,.2,1)!important}.fortune-card:hover,.personality-card:hover,.planet-card:hover,.zodiac-section:hover,.personality-section:hover,.period-fortune-section:hover,.educational-content:hover,.tips-section:hover,.practical-use:hover,.advanced-content:hover{transform:translateY(-8px)!important;box-shadow:0 20px 40px #667eea26!important;border-color:#667eea66!important}.three-planets-introduction:hover{transform:translateY(-8px)!important;box-shadow:0 20px 40px #7c3aed40!important}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}.zodiac-section{animation:fadeInUp .8s ease-out!important}.personality-section{animation:fadeInUp .8s ease-out .2s both!important}.period-fortune-section{animation:fadeInUp .8s ease-out .4s both!important}.three-planets-introduction{animation:fadeInScale .8s ease-out .6s both!important}.fortune-card:nth-child(1){animation:slideInRight .6s ease-out .1s both!important}.fortune-card:nth-child(2){animation:slideInRight .6s ease-out .2s both!important}.fortune-card:nth-child(3){animation:slideInRight .6s ease-out .3s both!important}.fortune-card:nth-child(4){animation:slideInRight .6s ease-out .4s both!important}.fortune-card:nth-child(5){animation:slideInRight .6s ease-out .5s both!important}.personality-card:nth-child(1){animation:fadeInUp .6s ease-out .1s both!important}.personality-card:nth-child(2){animation:fadeInUp .6s ease-out .2s both!important}.personality-card:nth-child(3){animation:fadeInUp .6s ease-out .3s both!important}.personality-card:nth-child(4){animation:fadeInUp .6s ease-out .4s both!important}.personality-card:nth-child(5){animation:fadeInUp .6s ease-out .5s both!important}.level-title{animation:fadeInScale 1.2s ease-out!important}.level-title:before{animation:titleShine 4s infinite ease-in-out!important}.generate-fortune-button,.generate-analysis-button,.level-up-button,.ai-chat-button,.new-fortune-button,.registration-button,.back-button{transition:all .3s cubic-bezier(.4,0,.2,1)!important}.generate-fortune-button:hover,.generate-analysis-button:hover,.level-up-button:hover{transform:translateY(-3px) scale(1.02)!important;box-shadow:0 12px 24px #667eea4d!important}.ai-chat-button:hover,.new-fortune-button:hover{transform:translateY(-3px) scale(1.02)!important}.registration-button:hover{transform:translateY(-3px) scale(1.02)!important;box-shadow:0 12px 24px #8b5cf64d!important}.step.active .step-number{animation:pulse 2s infinite!important}@keyframes pulse{0%,to{transform:scale(1.1);box-shadow:0 0 20px #667eea66}50%{transform:scale(1.15);box-shadow:0 0 30px #667eea99}}.loading-spinner{animation:spinGlow 1.5s linear infinite!important}@keyframes spinGlow{0%{transform:rotate(0);filter:drop-shadow(0 0 5px rgba(102,126,234,.5))}50%{filter:drop-shadow(0 0 15px rgba(102,126,234,.8))}to{transform:rotate(360deg);filter:drop-shadow(0 0 5px rgba(102,126,234,.5))}}.three-planets-display .planet-card:hover{transform:translateY(-5px) scale(1.03)!important;box-shadow:0 15px 30px #667eea33!important}.mode-card:hover{transform:translateY(-10px) scale(1.02)!important;box-shadow:0 25px 50px #00000026!important}.mode-card:hover .mode-icon{transform:scale(1.1) rotate(5deg)!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important}@keyframes shimmerGlow{0%{background-position:-200px 0;box-shadow:0 0 10px #667eea1a}50%{box-shadow:0 0 20px #667eea4d}to{background-position:calc(200px + 100%) 0;box-shadow:0 0 10px #667eea1a}}.skeleton-content-line,.skeleton-title{animation:shimmerGlow 2s cubic-bezier(.4,0,.6,1) infinite!important}.fortune-card,.personality-card,.planet-card,.mode-card,.zodiac-section,.personality-section,.period-fortune-section,.three-planets-introduction{will-change:transform,box-shadow!important;backface-visibility:hidden!important;perspective:1000px!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}*:focus{outline:3px solid #4a90e2!important;outline-offset:2px!important;box-shadow:0 0 0 3px #4a90e24d!important}button:focus,.btn:focus,.generate-fortune-button:focus,.level-up-button:focus,.ai-chat-button:focus,.new-fortune-button:focus{outline:3px solid #4a90e2!important;outline-offset:2px!important;box-shadow:0 0 0 3px #4a90e24d!important;transform:scale(1.02)!important}a:focus{outline:3px solid #4a90e2!important;outline-offset:2px!important;background-color:#4a90e21a!important}input:focus,select:focus,textarea:focus{outline:3px solid #4a90e2!important;outline-offset:1px!important;border-color:#4a90e2!important;box-shadow:0 0 0 3px #4a90e24d!important}.text-low-contrast{color:#2d3748!important}@media (prefers-contrast: high){:root{--primary-color: #1a202c !important;--secondary-color: #2d3748 !important;--text-primary: #000000 !important;--text-secondary: #1a202c !important;--bg-primary: #ffffff !important;--bg-secondary: #f7fafc !important;--border-color: #000000 !important}.card,.planets-list,.analysis-section{border:2px solid #000000!important}.btn,button{border:2px solid #000000!important;font-weight:600!important}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.loading-spinner,.typing-indicator span,.progress-step span.active:before{animation:none!important}}.skip-link{position:absolute;top:-40px;left:6px;background:#4a90e2;color:#fff;padding:8px;text-decoration:none;border-radius:0 0 8px 8px;z-index:100;font-weight:600}.skip-link:focus{top:0;outline:3px solid #ffffff!important}main{position:relative}main:before{content:"";position:absolute;top:-1px;left:0;right:0;height:1px;background:transparent}.error-message,.validation-error{color:#c53030!important;font-weight:600!important;border:2px solid #c53030!important;background:#fed7d7!important;role:"alert"}.success-message{color:#22543d!important;font-weight:600!important;border:2px solid #22543d!important;background:#c6f6d5!important;role:"status"}.loading-spinner{role:"status";aria-label:"読み込み中"}.progress-step{role:"progressbar";aria-valuemin:"0";aria-valuemax:"100"}.progress-step.completed{aria-valuenow:"100";aria-label:"完了"}.progress-step.active{aria-valuenow:"50";aria-label:"実行中"}.progress-step.pending{aria-valuenow:"0";aria-label:"待機中"}.App-footer{margin-top:60px;padding:40px 20px 20px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;text-align:center;border-top:1px solid rgba(255,255,255,.2)}.footer-content{max-width:1200px;margin:0 auto}.footer-links{margin-bottom:20px;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:15px}.footer-links a{color:#fff;text-decoration:none;padding:8px 15px;border-radius:20px;background:rgba(255,255,255,.1);transition:all .3s ease;font-size:.9rem;border:1px solid rgba(255,255,255,.2)}.footer-links a:hover{background:rgba(255,255,255,.2);transform:translateY(-2px);box-shadow:0 4px 12px #0003}.footer-separator{color:#fff9;font-size:.8rem}.footer-note{border-top:1px solid rgba(255,255,255,.2);padding-top:20px;margin-top:20px}.footer-note p{margin:5px 0;font-size:.9rem}.disclaimer{font-size:.8rem!important;color:#fffc;font-style:italic}@media (max-width: 768px){.App-footer{margin-top:40px;padding:30px 15px 20px}.footer-links{flex-direction:column;gap:10px}.footer-separator{display:none}.footer-links a{font-size:.8rem;padding:6px 12px}.footer-note p{font-size:.8rem}.disclaimer{font-size:.7rem!important}}.location-picker{width:100%}.search-container{position:relative}.location-actions{margin-top:8px;display:flex;gap:8px}.manual-input-button{padding:8px 12px;background:#f7fafc;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s}.manual-input-button:hover{background:#edf2f7;border-color:#cbd5e0}.suggestions-list{position:absolute;top:100%;left:0;right:0;background:white;border:2px solid #667eea;border-radius:8px;box-shadow:0 8px 16px #00000026;max-height:300px;overflow-y:auto;z-index:9999;margin-top:4px}.suggestion-item{padding:12px 16px;cursor:pointer;border-bottom:1px solid #e2e8f0;transition:all .2s ease;display:flex;justify-content:space-between;align-items:center}.suggestion-item:hover{background:#f0f4ff;border-left:4px solid #667eea;padding-left:12px}.suggestion-item:last-child{border-bottom:none}.suggestion-main{font-weight:500;color:#2d3748}.suggestion-secondary{font-size:12px;color:#718096;background:#edf2f7;padding:2px 8px;border-radius:12px}.manual-coordinates-input{margin-top:12px;padding:16px;background:#f7fafc;border-radius:8px;border:1px solid #e2e8f0}.coordinate-input{font-size:14px}.form-button{padding:8px 16px;background:#667eea;color:#fff;border:none;border-radius:6px;cursor:pointer;margin-right:8px;font-size:14px;transition:background-color .2s}.selected-location{margin-top:12px;padding:12px;background:#f0fff4;border:1px solid #9ae6b4;border-radius:8px}.location-info{font-size:14px;color:#2d3748}.location-info small{color:#718096}.map-container{margin-top:16px;border-radius:8px;overflow:hidden;box-shadow:0 4px 8px #0000001a}.map-display{width:100%;height:250px;border:none}.manual-coordinates-input{margin-top:12px;padding:16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.coordinate-inputs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.coordinate-input{width:100%}.form-button{padding:10px 16px;background:#667eea;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease;margin-right:8px}.form-button:hover{background:#5a67d8}.form-button.secondary{background:#e2e8f0;color:#4a5568}.form-button.secondary:hover{background:#cbd5e0}.api-error-message{margin-top:8px;padding:8px 12px;background:#fef3cd;border:1px solid #fbbe2e;border-radius:6px;color:#856404;font-size:14px;display:flex;align-items:center;gap:8px}@media (max-width: 768px){.coordinate-inputs{grid-template-columns:1fr}.location-actions{flex-direction:column;gap:8px}.manual-input-button{width:100%;text-align:center}.map-display{height:200px}}.tutorial-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.8);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.tutorial-modal{background:white;border-radius:25px;box-shadow:0 20px 60px #0000004d;max-width:600px;width:90%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;position:relative;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.tutorial-progress{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);padding:1rem 2rem;display:flex;align-items:center;gap:1rem;color:#fff}.progress-bar{flex:1;height:6px;background:rgba(255,255,255,.3);border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:white;border-radius:3px;transition:width .3s ease}.progress-text{font-size:.9rem;font-weight:600;white-space:nowrap}.tutorial-header{position:absolute;top:1rem;right:1rem;z-index:10}.close-button{background:rgba(255,255,255,.2);border:none;color:#fff;width:40px;height:40px;border-radius:50%;cursor:pointer;font-size:1.5rem;display:flex;align-items:center;justify-content:center;transition:all .3s ease;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.close-button:hover{background:rgba(255,255,255,.3);transform:scale(1.1)}.tutorial-content{padding:3rem 2rem 2rem;text-align:center;flex:1;overflow-y:auto;min-height:0;position:relative}.tutorial-content:after{content:"";position:absolute;bottom:0;left:0;right:0;height:40px;background:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.05) 30%,rgba(255,255,255,.8) 70%,white 100%);pointer-events:none;opacity:0!important;visibility:hidden;transition:opacity .3s ease,visibility .3s ease;z-index:1}.tutorial-content:before{content:"⬇️";position:absolute;bottom:8px;left:50%;transform:translate(-50%);font-size:16px;opacity:0!important;visibility:hidden;animation:none;pointer-events:none;z-index:2;transition:opacity .3s ease,visibility .3s ease}@keyframes scrollArrowPulse{0%,to{opacity:0;transform:translate(-50%) translateY(0)}50%{opacity:.8;transform:translate(-50%) translateY(-3px)}}.tutorial-content.has-more-content:after{opacity:1!important;visibility:visible}.tutorial-content.has-more-content:before{opacity:1!important;visibility:visible;animation:scrollArrowPulse 2s infinite}.tutorial-content::-webkit-scrollbar{width:8px}.tutorial-content::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.tutorial-content::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px;transition:background .3s ease}.tutorial-content::-webkit-scrollbar-thumb:hover{background:#a1a1a1}.tutorial-image{margin-bottom:2rem}.tutorial-icon{font-size:5rem;display:inline-block;animation:pulse 2s infinite}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.tutorial-text h3{font-size:2rem;color:#2d3748;margin-bottom:1rem;font-weight:700}.tutorial-text p{font-size:1.2rem;color:#4a5568;line-height:1.6;margin:0;white-space:pre-line}.tutorial-navigation{padding:2rem;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e2e8f0;flex-shrink:0;background:white}.nav-buttons{display:flex;gap:1rem}.nav-button{padding:.8rem 2rem;border:none;border-radius:25px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s ease;min-width:100px}.nav-button.primary{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;box-shadow:0 4px 15px #667eea4d}.nav-button.primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea66}.nav-button.secondary{background:#f7fafc;color:#4a5568;border:1px solid #e2e8f0}.nav-button.secondary:hover{background:#e2e8f0;transform:translateY(-1px)}.tutorial-dots{display:flex;justify-content:center;gap:.5rem;padding:1rem 2rem 2rem;flex-shrink:0;background:white}.dot{width:12px;height:12px;border-radius:50%;border:none;background:#e2e8f0;cursor:pointer;transition:all .3s ease}.dot.active{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);transform:scale(1.2)}.dot:hover{transform:scale(1.1);background:#cbd5e0}.dot.active:hover{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}@media (max-width: 768px){.tutorial-modal{width:95%;margin:1rem;max-height:85vh}.tutorial-progress{padding:.8rem 1.5rem}.tutorial-content{padding:2rem 1.5rem 1.5rem}.tutorial-content:after{height:30px}.tutorial-content:before{font-size:14px;bottom:6px}.tutorial-icon{font-size:4rem}.tutorial-text h3{font-size:1.8rem}.tutorial-text p{font-size:1.1rem}.tutorial-navigation{padding:1.5rem;flex-direction:column;gap:1rem}.nav-buttons{width:100%;justify-content:center}.nav-button{padding:.7rem 1.5rem;font-size:.9rem}.tutorial-content::-webkit-scrollbar{width:6px}}@media (max-width: 480px){.tutorial-modal{width:98%;margin:.5rem;max-height:80vh}.tutorial-progress{padding:.6rem 1rem}.progress-text{font-size:.8rem}.tutorial-content{padding:1.5rem 1rem 1rem}.tutorial-content:after{height:25px}.tutorial-content:before{font-size:12px;bottom:5px}.tutorial-icon{font-size:3rem}.tutorial-text h3{font-size:1.5rem;margin-bottom:.8rem}.tutorial-text p{font-size:1rem;line-height:1.5}.tutorial-navigation{padding:1rem}.nav-buttons{flex-direction:column;width:100%}.nav-button{width:100%;padding:.8rem 1rem}.tutorial-dots{padding:.5rem 1rem 1rem}.dot{width:10px;height:10px}.tutorial-content::-webkit-scrollbar{width:4px}}@media (max-height: 667px){.tutorial-modal{max-height:75vh}.tutorial-content{padding:1rem 1.5rem}.tutorial-icon{font-size:2.5rem;margin-bottom:1rem}.tutorial-text h3{font-size:1.3rem;margin-bottom:.5rem}.tutorial-text p{font-size:.9rem;line-height:1.4}.tutorial-navigation{padding:.8rem 1rem}.tutorial-dots{padding:.3rem 1rem .8rem}}@media (max-height: 568px){.tutorial-modal{max-height:70vh}.tutorial-progress{padding:.4rem 1rem}.tutorial-content{padding:.8rem 1rem .5rem}.tutorial-icon{font-size:2rem;margin-bottom:.5rem}.tutorial-text h3{font-size:1.2rem;margin-bottom:.3rem}.tutorial-text p{font-size:.85rem;line-height:1.3}.tutorial-navigation{padding:.6rem .8rem}.nav-button{padding:.6rem .8rem;font-size:.85rem}.tutorial-dots{padding:.2rem .8rem .6rem}.dot{width:8px;height:8px}}@media (prefers-reduced-motion: reduce){.tutorial-modal-overlay,.tutorial-modal,.progress-fill,.tutorial-icon,.nav-button,.dot{animation:none!important;transition:none!important}}.close-button:focus,.nav-button:focus,.dot:focus{outline:2px solid #667eea;outline-offset:2px}.tutorial-highlight{box-shadow:0 0 0 4px #667eea80!important;border-radius:10px;transition:box-shadow .3s ease}.mode-selection-container{max-width:1200px;margin:0 auto;padding:2rem;text-align:center;position:relative}.tutorial-info-box{margin-bottom:2rem;display:flex;justify-content:center;width:100%}.tutorial-button-banner{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;color:#fff;padding:1rem 2rem;border-radius:25px;font-size:1.1rem;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea4d;font-weight:600;letter-spacing:.5px;position:relative;overflow:hidden}.tutorial-button-banner:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.tutorial-button-banner:hover:before{left:100%}.tutorial-button-banner:hover{transform:translateY(-3px);box-shadow:0 6px 20px #667eea66}.mode-selection-header{margin-bottom:3rem}.mode-title{font-size:2.5rem;font-weight:700;color:#2d3748;margin-bottom:1rem;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.mode-subtitle{font-size:1.2rem;color:#4a5568;margin:0}.mode-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:3rem}.mode-card{border-radius:20px;padding:2rem;box-shadow:0 10px 30px #0000001a;transition:all .3s ease;cursor:pointer;position:relative;overflow:hidden;color:#fff;text-align:center;min-height:400px;display:flex;flex-direction:column;justify-content:center}.mode-card:hover{transform:translateY(-5px);box-shadow:0 15px 40px #00000026}.mode-card:active{transform:translateY(-2px)}.mode-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(255,255,255,.1);opacity:0;transition:opacity .3s ease}.mode-card:hover:before{opacity:1}.mode-card-content{position:relative;z-index:1}.mode-icon{font-size:3rem;margin-bottom:1rem;display:block}.mode-card-title{font-size:1.8rem;font-weight:700;margin-bottom:.5rem}.mode-duration{font-size:1rem;opacity:.9;margin-bottom:1rem;padding:.3rem .8rem;background:rgba(255,255,255,.2);border-radius:15px;display:inline-block}.mode-description{font-size:1.1rem;line-height:1.5;margin-bottom:1.5rem;opacity:.95;white-space:pre-line}.mode-features{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:1.5rem}.feature-tag{background:rgba(255,255,255,.2);padding:.3rem .8rem;border-radius:12px;font-size:.9rem;font-weight:500}.mode-required{margin-bottom:1.5rem;padding:.8rem;background:rgba(255,255,255,.15);border-radius:10px;font-size:.95rem}.required-label{font-weight:600;display:block;margin-bottom:.3rem}.required-text{opacity:.9}.mode-select-button{background:rgba(255,255,255,.3);color:#fff;border:2px solid rgba(255,255,255,.5);padding:.8rem 2rem;border-radius:25px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.mode-select-button:hover{background:rgba(255,255,255,.5);border-color:#fffc;transform:scale(1.05)}.mode-help{background:linear-gradient(135deg,#f7fafc 0%,#edf2f7 100%);padding:1.5rem;border-radius:15px;border:1px solid #e2e8f0}.mode-help p{margin:0 0 1rem;font-size:1.1rem;color:#4a5568;font-weight:500}.tutorial-button{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;color:#fff;padding:.6rem 1.2rem;border-radius:8px;font-size:.9rem;cursor:pointer;transition:all .3s ease;font-weight:500}.tutorial-button:hover{transform:translateY(-2px);box-shadow:0 5px 15px #667eea4d}.reset-data-section{margin-top:40px;text-align:center}.reset-buttons{display:flex;gap:15px;justify-content:center;margin-bottom:15px;flex-wrap:wrap}.reset-data-button{padding:12px 20px;font-size:14px;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;min-width:180px;position:relative;overflow:hidden}.reset-data-button.clear-results{background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%);color:#fff}.reset-data-button.clear-results:hover{background:linear-gradient(135deg,#3d8bfe 0%,#0081fe 100%);transform:translateY(-2px);box-shadow:0 6px 20px #4facfe66}.reset-data-button.clear-all{background:linear-gradient(135deg,#ff9a9e 0%,#fecfef 100%);color:#333}.reset-data-button.clear-all:hover{background:linear-gradient(135deg,#ff8a8e 0%,#febfdf 100%);transform:translateY(-2px);box-shadow:0 6px 20px #ff9a9e66}.reset-buttons-description{margin-top:10px}.reset-note{font-size:12px;color:#666;line-height:1.4;margin:0;padding:0 20px}@media (max-width: 768px){.mode-selection-container{padding:1rem}.mode-title{font-size:2rem}.mode-cards{grid-template-columns:1fr;gap:1.5rem}.mode-card{padding:1.5rem;min-height:350px}.mode-icon{font-size:2.5rem}.mode-card-title{font-size:1.5rem}}@media (max-width: 480px){.mode-selection-container{padding:.5rem}.mode-title{font-size:1.8rem}.mode-card{padding:1rem;min-height:300px}.mode-features{flex-direction:column;align-items:center}.feature-tag{width:100%;text-align:center}}@media (max-width: 768px){.reset-buttons{flex-direction:column;align-items:center}.reset-data-button{min-width:250px}.reset-note{font-size:11px;padding:0 10px}}.ad-banner{margin:20px 0;display:flex;justify-content:center;align-items:center}.demo-ad{background:linear-gradient(135deg,#f8f9ff 0%,#e8efff 100%);border:1px solid rgba(102,126,234,.2);border-radius:12px;box-shadow:0 4px 12px #667eea1a;overflow:hidden;transition:all .3s ease;font-family:Noto Sans JP,sans-serif}.demo-ad:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea26}.demo-ad__header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:rgba(102,126,234,.1);border-bottom:1px solid rgba(102,126,234,.15)}.demo-ad__label{font-size:.7rem;color:#667eea;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.demo-ad__close{color:#888;cursor:pointer;font-size:.9rem;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.demo-ad__close:hover{background:rgba(136,136,136,.1);color:#555}.demo-ad__content{display:flex;padding:15px;align-items:center;gap:15px}.demo-ad__image{font-size:2.5rem;flex-shrink:0;display:flex;align-items:center;justify-content:center;width:60px;height:60px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:12px;box-shadow:0 2px 8px #667eea4d}.demo-ad__text{flex:1;min-width:0}.demo-ad__title{margin:0 0 8px;font-size:1rem;font-weight:600;color:#333;line-height:1.3}.demo-ad__description{margin:0 0 12px;font-size:.85rem;color:#666;line-height:1.4;white-space:pre-line}.demo-ad__button{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;padding:8px 16px;border-radius:20px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:inherit}.demo-ad__button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.demo-ad--small{max-width:320px}.demo-ad--small .demo-ad__content{padding:12px;gap:10px}.demo-ad--small .demo-ad__image{width:45px;height:45px;font-size:1.8rem}.demo-ad--small .demo-ad__title{font-size:.9rem}.demo-ad--small .demo-ad__description{font-size:.75rem}.demo-ad--medium{max-width:728px;width:100%}.demo-ad--large{max-width:300px;flex-direction:column}.demo-ad--large .demo-ad__content{flex-direction:column;text-align:center;padding:20px}.demo-ad--large .demo-ad__image{width:80px;height:80px;font-size:3rem;margin-bottom:10px}.ad-banner--level-transition{margin:30px 0;padding:20px;background:rgba(102,126,234,.03);border-radius:15px}.ad-banner--level-transition .demo-ad{background:linear-gradient(135deg,#fff 0%,#f8f9ff 100%);border:2px solid rgba(102,126,234,.15)}.ad-banner--result-bottom{margin:25px 0;border-top:1px solid rgba(102,126,234,.1);padding:25px 20px 0}.ai-fortune-container .ad-banner--level-transition,.ai-fortune-container .ad-banner--result-bottom{padding:20px;margin:25px 0}.ad-banner--chat-inline{margin:15px 0}.ad-banner--chat-inline .demo-ad{background:rgba(102,126,234,.05);border:1px solid rgba(102,126,234,.1)}.ad-banner--sidebar{position:sticky;top:20px;margin:0;padding:20px}.adsense-container{display:block;width:100%;max-width:728px;margin:20px auto;min-height:90px;text-align:center}.adsense-container--level-transition{margin:30px auto;padding:20px;background:rgba(102,126,234,.03);border-radius:15px;width:100%;max-width:728px}.adsense-container--result-bottom{margin:25px auto;border-top:1px solid rgba(102,126,234,.1);padding-top:25px;width:100%;max-width:728px}.adsense-container--sidebar{position:sticky;top:20px;margin:0 auto;width:100%;max-width:300px}.adsense-container--chat-inline{margin:15px auto;width:100%;max-width:728px}.adsbygoogle{display:block!important;width:100%!important;min-width:300px!important;min-height:90px!important;margin:0 auto!important;background:rgba(240,240,240,.05)!important;border:1px solid rgba(200,200,200,.2)!important;position:relative!important;z-index:1000!important}.adsense-container--level-transition .adsbygoogle,.adsense-container--result-bottom .adsbygoogle{max-width:728px!important;height:auto!important}.adsense-container--sidebar .adsbygoogle{max-width:300px!important;width:300px!important;height:250px!important}.adsense-container--chat-inline .adsbygoogle{max-width:728px!important;height:auto!important}@media (max-width: 768px){.demo-ad--medium{max-width:100%}.demo-ad__content{padding:12px;gap:12px}.demo-ad__image{width:50px;height:50px;font-size:2rem}.demo-ad__title{font-size:.9rem}.demo-ad__description{font-size:.8rem}.demo-ad__button{padding:6px 12px;font-size:.75rem}.ad-banner--level-transition{padding:15px;margin:20px 0}.ad-banner--sidebar{display:none}.adsense-container{max-width:320px;margin:15px auto}.adsense-container--level-transition{max-width:100%;margin:20px auto;padding:15px}.adsense-container--result-bottom{max-width:100%;margin:20px auto}.adsbygoogle{min-width:300px!important;max-width:320px!important}.adsense-container--level-transition .adsbygoogle,.adsense-container--result-bottom .adsbygoogle,.adsense-container--chat-inline .adsbygoogle{max-width:320px!important}}@media (max-width: 480px){.demo-ad__content{flex-direction:column;text-align:center;padding:15px}.demo-ad__image{margin-bottom:10px}.ad-banner--level-transition{padding:10px;margin:15px 0}}.step-result-container{max-width:1200px;margin:0 auto;padding:2rem;background:linear-gradient(135deg,#f8fafc 0%,#e2e8f0 100%);min-height:100vh}.fortune-card,.analysis-overview,.zodiac-element,.zodiac-quality,.zodiac-ruling,.prediction-item,.planet-card,.all-planets-display .planet-item,.complete-fortune-grid .fortune-card,.planet-preview,.todays-fortune .fortune-item,.special-days-card,.ai-analysis,.educational-content,.tips-section,.practical-use,.advanced-content{width:100%!important;box-sizing:border-box!important;padding:.8rem 1rem!important;margin:0!important;background:white!important;border-radius:10px!important;border:1px solid #e2e8f0!important;box-shadow:0 2px 8px #0000001a!important;transition:transform .2s ease!important}.three-planets-display .planet-card{padding:.3rem .5rem!important}.card-primary{background:linear-gradient(135deg,#f3f0ff 0%,#f8fafc 100%);border:1px solid #c4b5fd;color:#6b46c1}.star-rating{font-size:1.1rem;font-weight:700;text-shadow:1px 1px 2px rgba(0,0,0,.1);letter-spacing:1px;display:inline-block;vertical-align:middle;color:#000}.star-rating .dash{color:#000!important}.fortune-title{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:5px}@media (max-width: 768px){.star-rating{font-size:1rem}.fortune-title{flex-direction:column;align-items:flex-start}}.important-days-content{display:flex;flex-direction:column;gap:10px}.lucky-day,.caution-day{padding:8px 12px;border-radius:6px;display:flex;align-items:flex-start;gap:8px}.lucky-day{background:linear-gradient(135deg,#f0fff4 0%,#e6fffa 100%);border-left:4px solid #68d391}.caution-day{background:linear-gradient(135deg,#fff5f5 0%,#fed7d7 100%);border-left:4px solid #fc8181}.day-description{padding:4px 0;color:#666;font-size:.9rem;margin-left:20px}.day-content{font-weight:500;line-height:1.4}.card-secondary{background:linear-gradient(135deg,#f7fafc 0%,#edf2f7 100%);border:1px solid #e2e8f0;color:#2d3748}.card-accent{background:linear-gradient(135deg,#fef5e7 0%,#f7fafc 100%);border:1px solid #fed7aa;color:#c05621}.card-base{border-radius:15px;padding:2rem;box-shadow:0 4px 15px #0000001a;margin:2rem 0}.loading-section{text-align:center;padding:4rem 2rem}.loading-spinner{width:60px;height:60px;border:4px solid #e2e8f0;border-top:4px solid #667eea;border-radius:50%;-webkit-animation:basic-spinner-rotation 1s linear infinite;-moz-animation:basic-spinner-rotation 1s linear infinite;animation:basic-spinner-rotation 1s linear infinite;margin:0 auto 2rem;will-change:transform;-webkit-will-change:transform}@keyframes basic-spinner-rotation{0%{transform:rotate(0);-webkit-transform:rotate(0deg)}to{transform:rotate(360deg);-webkit-transform:rotate(360deg)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes generating-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-section h3{color:#2d3748;font-size:1.8rem;margin-bottom:1rem}.loading-step{color:#4a5568;font-size:1.1rem;margin-bottom:2rem}.progress-bar{width:200px;height:8px;background:#e2e8f0;border-radius:4px;margin:0 auto;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#667eea 0%,#764ba2 100%);animation:progress 2s ease-in-out infinite}@keyframes progress{0%{width:0%}50%{width:70%}to{width:100%}}.error-section{text-align:center;padding:4rem 2rem;background:white;border-radius:20px;box-shadow:0 10px 30px #0000001a}.error-icon{font-size:4rem;margin-bottom:1rem}.error-section h3{color:#e53e3e;font-size:1.8rem;margin-bottom:1rem}.back-button{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;padding:1rem 2rem;border-radius:25px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.back-button:hover{transform:translateY(-2px);box-shadow:0 8px 20px #667eea4d}.progress-header{background:white;border-radius:20px;padding:2rem;margin-bottom:2rem;box-shadow:0 10px 30px #0000001a}.progress-steps{display:flex;justify-content:center;align-items:center;gap:2rem;position:relative}.progress-steps:before{content:"";position:absolute;top:25px;left:0;right:0;height:2px;background:#e2e8f0;z-index:1}.step{display:flex;flex-direction:column;align-items:center;position:relative;z-index:2;transition:all .3s ease}.step-number{width:50px;height:50px;border-radius:50%;background:#e2e8f0;color:#a0aec0;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2rem;margin-bottom:.5rem;transition:all .3s ease}.step.active .step-number{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;transform:scale(1.1)}.step-label{font-size:.9rem;color:#4a5568;font-weight:600}.step.active .step-label{color:#2d3748}.result-level{background:white;border-radius:20px;padding:2rem;margin-bottom:2rem;box-shadow:0 10px 30px #0000001a;animation:fadeInUp .6s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.level-header{text-align:center;margin-bottom:2rem}.level-header h2{font-size:2.2rem;color:#2d3748;margin-bottom:1rem;font-weight:700}.level-description{font-size:1.1rem;color:#4a5568;line-height:1.6}.level-title{text-align:center;margin-bottom:2rem;padding:1.5rem;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:20px;box-shadow:0 10px 30px #667eea4d;position:relative;overflow:hidden;min-height:100px;width:100%;max-width:600px;margin-left:auto;margin-right:auto;display:flex;align-items:center;justify-content:center}.level-title:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);animation:titleShine 3s infinite}.level-title-text{color:#fff;font-size:2rem;font-weight:700;margin:0;text-shadow:0 2px 4px rgba(0,0,0,.3);position:relative;z-index:1;line-height:1.2}@keyframes titleShine{0%{left:-100%}to{left:100%}}.main-result-card,.zodiac-section,.personality-section,.three-signs-analysis,.ten-planets-analysis,.ai-analysis-section,.todays-fortune-section,.next-level-preview{border-radius:15px;padding:2rem 1rem!important;margin:2rem 0;box-shadow:0 4px 15px #0000001a;max-width:100%;width:100%;box-sizing:border-box;border:1px solid}.period-fortune-section{border-radius:15px;box-shadow:0 4px 15px #0000001a;box-sizing:border-box;border:1px solid}.main-result-card,.zodiac-section,.personality-section{background:linear-gradient(135deg,#f3f0ff 0%,#f8fafc 100%);border-color:#c4b5fd}.zodiac-section,.personality-section,.period-fortune-section,.three-planets-introduction{width:600px!important;max-width:90vw!important;margin:2rem auto!important;padding:2rem 1.5rem!important}.intro-overview{background:rgba(255,255,255,.3);border-radius:10px;padding:1rem;margin:1.5rem 0;border:1px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);color:#fff}.planet-preview{display:flex!important;flex-direction:row!important;align-items:center!important;margin:0!important;padding:.8rem!important;background:rgba(255,255,255,.3);border-radius:8px;border:1px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);transition:all .3s ease}.planet-preview:first-child{margin-top:0!important}.planet-preview .planet-icon{font-size:1.3rem!important;margin-right:.8rem!important;margin-bottom:0!important;min-width:1.8rem;flex-shrink:0!important;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Android Emoji",EmojiSymbols,EmojiOne Mozilla,Twemoji Mozilla,Segoe UI Symbol,"Noto Emoji",system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.planet-preview .planet-info{flex:1!important;text-align:left!important}.main-result-card .section-title,.zodiac-section .section-title,.personality-section .section-title,.three-signs-analysis>h3,.period-fortune-section .section-title{background:transparent!important;border:none!important;box-shadow:none!important;padding:0!important;margin-bottom:1.5rem!important;text-align:left!important;font-size:1.4rem!important;font-weight:600!important;color:#2d3748!important;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Android Emoji",EmojiSymbols,EmojiOne Mozilla,Twemoji Mozilla,Segoe UI Symbol,"Noto Emoji",system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important}.three-planets-introduction>h3{background:transparent!important;border:none!important;box-shadow:none!important;padding:0!important;margin-bottom:1.5rem!important;text-align:left!important;font-size:1.4rem!important;font-weight:600!important;color:#fff!important;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Android Emoji",EmojiSymbols,EmojiOne Mozilla,Twemoji Mozilla,Segoe UI Symbol,"Noto Emoji",system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important}.ai-analysis-section{background:linear-gradient(135deg,#f3f0ff 0%,#f8fafc 100%);border-color:#c4b5fd}.analysis-content p,.personality-text{color:#2d3748;line-height:1.8;font-size:1.1rem;margin:0;text-align:justify}.todays-fortune-section{background:linear-gradient(135deg,#fef5e7 0%,#f7fafc 100%);border-color:#fed7aa}.todays-fortune-section h3{color:#c05621;font-size:1.5rem;margin-bottom:1rem;font-weight:600;text-align:center}.fortune-content p{color:#2d3748;line-height:1.8;font-size:1.1rem;margin:0;text-align:left}.zodiac-display{text-align:center;margin-bottom:1rem}.zodiac-icon{font-size:4rem;margin-bottom:1rem}.zodiac-name{font-size:2.5rem;color:#2d3748;font-weight:700;margin-bottom:1.5rem}.zodiac-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.zodiac-element,.zodiac-quality,.zodiac-ruling{background:white;padding:1rem;border-radius:10px;text-align:center}.label{display:block;font-size:.9rem;color:#4a5568;margin-bottom:.3rem;font-weight:600}.value{font-size:1.1rem;color:#2d3748;font-weight:700}.personality-keywords{text-align:center}.personality-keywords h4{font-size:1.3rem;color:#2d3748;margin-bottom:1rem}.keywords{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.keyword-tag{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;padding:.5rem 1rem;border-radius:20px;font-size:.9rem;font-weight:600}.planets-grid{display:flex;justify-content:space-between;gap:1.5rem;width:100%}.planet-card{background:linear-gradient(135deg,#f7fafc 0%,#edf2f7 100%);border-radius:15px;padding:1.5rem;transition:transform .3s ease;min-height:200px;display:flex;flex-direction:column;justify-content:space-between;flex:1;max-width:calc(33.333% - 1rem)}.planet-title{margin:0 0 1rem;font-size:1.3rem;font-weight:600;color:#2d3748;text-align:center;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;white-space:nowrap;display:flex;align-items:center;justify-content:center;line-height:1.2}.planet-card:hover{transform:translateY(-5px)}.planet-header{display:flex;align-items:center;margin-bottom:1rem}.planet-icon{font-size:2rem;margin-right:1rem}.planet-info h4{font-size:1.3rem;color:#2d3748;margin-bottom:.3rem}.planet-meaning{font-size:.9rem;color:#4a5568;margin:0}.planet-sign{margin-bottom:1rem}.sign-display{display:flex;align-items:center;justify-content:center;background:white;padding:1rem;border-radius:10px}.sign-icon{font-size:1.5rem;margin-right:.5rem}.sign-name{font-size:1.2rem;font-weight:600;color:#2d3748}.planet-description{font-size:.95rem;color:#4a5568;line-height:1.5}.three-signs-analysis,.ten-planets-analysis{background:linear-gradient(135deg,#f3f0ff 0%,#f8fafc 100%);border-color:#c4b5fd;box-shadow:0 4px 15px #0000001a}.three-planets-display,.ten-planets-display,.combined-analysis-content,.comprehensive-analysis-content{width:100%;box-sizing:border-box;padding:0!important;margin:1rem 0!important;display:flex!important;flex-direction:column!important;gap:.5rem!important}.combined-analysis-content p{color:#2d3748;line-height:1.7;font-size:1.1rem;margin-bottom:1.5rem;text-align:justify}.analysis-overview{background:rgba(255,255,255,.7);border-radius:10px;padding:1rem;margin-bottom:1.5rem}.analysis-overview p{font-weight:600;font-size:1.2rem;color:#6b46c1;margin-bottom:0}.three-signs-analysis .analysis-overview{background:white;border-radius:15px;padding:1.5rem;width:100%;margin:0 auto;box-sizing:border-box;box-shadow:0 4px 15px #0000001a;border:1px solid #e2e8f0;text-align:center}.analysis-title{color:#4a5568;font-size:1.1rem;font-weight:600;margin-bottom:.8rem;display:flex;align-items:center;gap:.5rem}.analysis-text{color:#2d3748;line-height:1.6;font-size:.95rem;margin:0}.sign-house-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.sign-info{display:flex;align-items:center}.house-info{background:white;padding:.3rem .8rem;border-radius:15px;font-size:.8rem;color:#4a5568;font-weight:600}.planet-house-info{display:flex;align-items:center;gap:.5rem;margin-top:.5rem}.house-label{background:rgba(255,255,255,.8);padding:.2rem .6rem;border-radius:10px;font-size:.8rem;color:#4a5568;font-weight:600;border:1px solid #e2e8f0}.retrograde{background:rgba(245,101,101,.1);color:#f56565;padding:.2rem .4rem;border-radius:8px;font-size:.7rem;font-weight:700;border:1px solid rgba(245,101,101,.3)}.level-up-section{text-align:center;margin:2rem 0}.level-up-button{background:linear-gradient(135deg,#f093fb 0%,#f5576c 100%);color:#fff;border:none;padding:1.2rem 3rem;border-radius:30px;font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 25px #f093fb4d;min-width:200px;max-width:280px;text-align:center;box-sizing:border-box}.level-up-button:hover{transform:translateY(-3px);box-shadow:0 12px 35px #f093fb66}.level-up-button:active{transform:translateY(-1px)}.level-up-description{margin-top:1rem;font-size:1rem;color:#4a5568}.ai-analysis{margin-top:2rem;padding:1.5rem;background:linear-gradient(135deg,#e6fffa 0%,#b2f5ea 100%);border-radius:15px;border-left:4px solid #38b2ac}.ai-analysis h4{color:#2d3748;margin-bottom:1rem;font-size:1.2rem}.analysis-text{color:#2d3748;line-height:1.6;font-size:1rem}.ai-analysis.ai-loading{background:linear-gradient(135deg,#fef5e7 0%,#fbd38d 100%);border-left:4px solid #f6ad55}.ai-loading-content{display:flex;align-items:center;gap:1rem}.ai-loading-content .loading-spinner{width:30px;height:30px;border:3px solid #fbd38d;border-top:3px solid #f6ad55;margin:0}.ai-loading-content p{color:#744210;font-weight:500;margin:0}.ai-analysis.ai-error{background:linear-gradient(135deg,#fed7d7 0%,#fbb6ce 100%);border-left:4px solid #f56565}.ai-analysis.ai-error .error-text{color:#742a2a;font-style:italic;margin:0}.todays-fortune{margin-top:2rem;padding:1.5rem;background:linear-gradient(135deg,#fff5ee 0%,#ffeaa7 100%);border-radius:15px;border-left:4px solid #fdcb6e}.todays-fortune h4{color:#2d3748;margin-bottom:1rem;font-size:1.2rem}.fortune-content{display:flex;flex-direction:column;gap:1rem}.fortune-item{display:flex;align-items:flex-start;gap:.5rem;padding:.8rem;background:rgba(255,255,255,.6);border-radius:10px}.fortune-label{font-weight:600;color:#d68910;min-width:80px;font-size:.9rem}.fortune-text{color:#2d3748;line-height:1.5;font-size:.9rem}.advice-item{background:rgba(255,255,255,.9);border:2px solid #fdcb6e;font-weight:500}@media (max-width: 768px){.fortune-item{flex-direction:column;gap:.3rem}.fortune-label{min-width:auto}}.debug-controls{background:#fed7d7;border:2px solid #fc8181;border-radius:10px;padding:1rem;margin:2rem 0}.debug-controls h4{color:#c53030;margin-bottom:1rem}.debug-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.debug-button{background:#c53030;color:#fff;border:none;padding:.5rem 1rem;border-radius:5px;cursor:pointer;font-size:.9rem}.debug-button:hover{background:#9c2626}.educational-content{background:linear-gradient(135deg,#e8f4f8 0%,#f0f8ff 100%);border-radius:15px;padding:2rem;margin:2rem 0;border:1px solid rgba(44,82,130,.2);box-shadow:0 6px 20px #2c52821a}.educational-content h3{color:#2c5282;font-size:1.4rem;margin-bottom:1.5rem;font-weight:600;text-align:center;text-shadow:1px 1px 2px rgba(0,0,0,.1)}.content-text{margin-bottom:1.5rem}.content-text p{color:#2d3748;line-height:1.7;margin-bottom:1rem;font-size:1rem}.tips-section{background:linear-gradient(135deg,#f7fafc 0%,#edf2f7 100%);border-radius:12px;padding:1.5rem;margin:1.5rem 0;border:1px solid #e2e8f0;box-shadow:0 3px 10px #0000000d}.tips-section h4{color:#2c5282;font-size:1.2rem;margin-bottom:1rem;font-weight:600;text-align:center}.tips-section p{color:#4a5568;line-height:1.6;margin-bottom:.8rem;font-size:1rem}.practical-use{background:linear-gradient(135deg,#f0fff4 0%,#e6fffa 100%);border-radius:12px;padding:1.5rem;margin:1.5rem 0;border:1px solid #b8f5cd;box-shadow:0 3px 10px #2f855a1a}.practical-use h4{color:#2f855a;font-size:1.2rem;margin-bottom:1rem;font-weight:600;text-align:center}.practical-use p{color:#2d3748;line-height:1.6;margin-bottom:.8rem;font-size:1rem}.advanced-content{background:linear-gradient(135deg,#faf5ff 0%,#f3e8ff 100%);border-radius:12px;padding:1.5rem;margin:1.5rem 0;border:1px solid #d6bcfa;box-shadow:0 3px 10px #6b46c11a}.advanced-content h4{color:#6b46c1;font-size:1.2rem;margin-bottom:1rem;font-weight:600;text-align:center}.advanced-text p{color:#4a5568;line-height:1.6;margin-bottom:.8rem;font-size:1rem}.period-fortune-section{background:white;border-color:#667eea33;width:600px!important;max-width:90vw!important;margin:2rem auto!important;padding:2rem 1.5rem!important}.fortune-selector{margin-bottom:1.5rem}.selector-row{display:flex;gap:1rem;align-items:center;justify-content:center;flex-wrap:wrap}.period-dropdown{background:white;border:2px solid #c4b5fd;border-radius:10px;padding:.75rem 1rem;font-size:1rem;color:#6b46c1;font-weight:500;min-width:180px;cursor:pointer;transition:all .3s ease}.period-dropdown:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.generate-fortune-button{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;border-radius:25px;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;min-width:200px;max-width:280px;text-align:center;box-sizing:border-box}.generate-fortune-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea4d}.generate-fortune-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.generating-message{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem;background:linear-gradient(135deg,#f3f0ff 0%,#f8fafc 100%);border-radius:15px;border:1px solid #c4b5fd;margin:1rem 0}.generating-message .loading-spinner{width:40px;height:40px;border:3px solid #e2e8f0;border-top:3px solid #667eea;border-radius:50%}@keyframes level3-spinner-rotation{0%{transform:rotate(0);-webkit-transform:rotate(0deg)}to{transform:rotate(360deg);-webkit-transform:rotate(360deg)}}@-webkit-keyframes level3-spinner-rotation{0%{transform:rotate(0);-webkit-transform:rotate(0deg)}to{transform:rotate(360deg);-webkit-transform:rotate(360deg)}}@-moz-keyframes level3-spinner-rotation{0%{transform:rotate(0);-webkit-transform:rotate(0deg)}to{transform:rotate(360deg);-webkit-transform:rotate(360deg)}}.generating-message p{color:#6b46c1;font-size:1.1rem;margin:0;font-weight:500}.period-selector{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:1.5rem}.period-button{background:#f7fafc;color:#4a5568;border:2px solid #e2e8f0;border-radius:20px;padding:.5rem 1rem;font-size:.9rem;cursor:pointer;transition:all .3s ease;font-weight:500}.period-button:hover{background:#e2e8f0;transform:translateY(-1px)}.period-button.active{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border-color:#667eea;box-shadow:0 4px 15px #667eea4d}.generate-prediction-button{background:linear-gradient(135deg,#48bb78 0%,#38a169 100%);color:#fff;border:none;border-radius:25px;padding:1rem 2rem;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:block;margin:0 auto 1.5rem;min-width:150px}.generate-prediction-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #48bb784d}.generate-prediction-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.prediction-result{background:linear-gradient(135deg,#fff5f5 0%,#fed7d7 100%);border-radius:15px;padding:1.5rem;margin-top:1.5rem;border:1px solid rgba(245,101,101,.2)}.prediction-result h4{color:#2d3748;font-size:1.2rem;margin-bottom:1rem;font-weight:600;text-align:center}.prediction-result>p{color:#4a5568;line-height:1.6;margin-bottom:1.5rem;font-size:1rem;text-align:center}.prediction-details{display:grid;grid-template-columns:1fr;gap:1rem}.prediction-item{background:linear-gradient(135deg,#f8fafc 0%,#edf2f7 100%);border-radius:10px;padding:1.2rem;display:flex;align-items:flex-start;gap:1rem;border:1px solid #e2e8f0;box-shadow:0 2px 8px #0000001a}.prediction-label{font-weight:700;color:#1a202c;font-size:1rem;min-width:70px;flex-shrink:0}.prediction-text{color:#2d3748;line-height:1.6;font-size:1rem;flex:1}.important-dates{background:white;border-radius:10px;padding:1rem;margin-top:1rem;border:1px solid rgba(0,0,0,.05)}.important-dates h5{color:#2d3748;font-size:1rem;margin-bottom:.8rem;font-weight:600}.important-dates ul{list-style:none;padding:0;margin:0}.important-dates li{color:#4a5568;line-height:1.5;margin-bottom:.5rem;font-size:.9rem;padding-left:1rem;position:relative}.important-dates li:before{content:"📅";position:absolute;left:0;top:0}@media (min-width: 769px){.planets-grid{display:flex;justify-content:space-between;gap:1.5rem;max-width:1200px;margin:0 auto}.planet-card{flex:1;max-width:calc(33.333% - 1rem);box-sizing:border-box}}@media (max-width: 768px){.step-result-container{padding:1rem}.progress-steps{gap:1rem}.step-number{width:40px;height:40px;font-size:1rem}.zodiac-details{grid-template-columns:1fr}.planets-grid,.all-planets-grid{flex-direction:column;gap:1rem}.planet-card{max-width:100%}.level-header h2{font-size:1.8rem}.zodiac-name{font-size:2rem}.level-up-button{padding:1rem 2rem;font-size:1.1rem}.period-selector{flex-direction:column;align-items:center}.period-button{width:100%;max-width:200px}.prediction-details{grid-template-columns:1fr}.prediction-item{flex-direction:column;gap:.5rem}.prediction-label{min-width:auto}.educational-content{padding:1rem}.ai-analysis-section,.todays-fortune-section,.three-signs-analysis,.ten-planets-analysis{padding:1.5rem;margin:1.5rem 0}.ai-analysis-section h3,.todays-fortune-section h3,.three-signs-analysis h3,.ten-planets-analysis h3{font-size:1.3rem}.analysis-content p,.fortune-content p,.combined-analysis-content p,.comprehensive-analysis-content p{font-size:1rem;line-height:1.6}.analysis-overview{padding:.8rem;margin-bottom:1rem}.analysis-overview p{font-size:1.1rem}.analysis-section{padding:.8rem;margin-bottom:.8rem}.analysis-title{font-size:1rem}.planet-title{font-size:1.2rem}.level-title{padding:1rem;margin-bottom:1.5rem;min-height:80px;width:100%;max-width:90vw;margin-left:auto;margin-right:auto;display:flex;align-items:center;justify-content:center}.level-title-text{font-size:1.5rem;line-height:1.2}.benefit-item{padding:.8rem;gap:.8rem}.benefit-icon{font-size:1.2rem;min-width:1.5rem}.benefit-text{font-size:.95rem}.benefit-detail{font-size:.85rem}}@media (max-width: 480px){.step-result-container{padding:.5rem}.result-level,.progress-header{padding:1rem}.progress-steps{flex-direction:column;gap:1rem}.progress-steps:before{display:none}.zodiac-icon{font-size:3rem}.zodiac-name{font-size:1.8rem}.level-header h2{font-size:1.5rem}.period-fortune-section{padding:2rem 1.5rem!important}.generate-prediction-button{width:100%;padding:.8rem 1rem;font-size:1rem}.prediction-result{padding:1rem}.ai-analysis-section,.todays-fortune-section,.three-signs-analysis,.ten-planets-analysis{padding:1rem;margin:1rem 0}.ai-analysis-section h3,.todays-fortune-section h3,.three-signs-analysis h3,.ten-planets-analysis h3{font-size:1.2rem}.analysis-content p,.fortune-content p,.combined-analysis-content p,.comprehensive-analysis-content p{font-size:.95rem;line-height:1.5}.analysis-overview{padding:.6rem;margin-bottom:.8rem}.analysis-overview p{font-size:1rem}.analysis-section{padding:.6rem;margin-bottom:.6rem}.analysis-title{font-size:.95rem;gap:.3rem}.analysis-text{font-size:.9rem}.planet-title{font-size:1.1rem;white-space:nowrap;display:flex;align-items:center;justify-content:center;line-height:1.2}.level-title{padding:.8rem;margin-bottom:1rem}.level-title-text{font-size:1.3rem}.next-level-description{font-size:.95rem;padding:.8rem;margin-bottom:1rem}.benefit-item{display:flex;align-items:flex-start;padding:.6rem;gap:.6rem;flex-direction:row;text-align:left}.benefit-icon{font-size:1.1rem;margin-top:0}.benefit-text{font-size:.9rem}.benefit-detail{font-size:.8rem}}.celestial-relationship{background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-radius:15px;padding:1.5rem;margin:2rem 0;border:1px solid #4ade80;box-shadow:0 4px 15px #4ade8033}.celestial-relationship h4{color:#166534;font-size:1.3rem;margin-bottom:1rem;text-align:center;font-weight:600}.relationship-content{display:flex;flex-direction:column;gap:1rem}.relationship-item{background:rgba(255,255,255,.8);border-radius:10px;padding:1rem;border-left:4px solid #4ade80}.relationship-pair{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.celestial-icon{font-size:1.2rem}.relationship-text{color:#166534;font-weight:600;font-size:1.1rem}.celestial-groups{background:linear-gradient(135deg,#fdf2f8 0%,#fce7f3 100%);border-radius:15px;padding:1.5rem;margin:2rem 0;border:1px solid #f472b6;box-shadow:0 4px 15px #f472b633}.celestial-groups h4{color:#be185d;font-size:1.3rem;margin-bottom:1rem;text-align:center;font-weight:600}.group-content{display:flex;flex-direction:column;gap:1rem}.group-item{background:rgba(255,255,255,.8);border-radius:10px;padding:1rem;border-left:4px solid #f472b6}.group-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.group-icon{font-size:1.2rem}.group-header h5{color:#be185d;font-size:1.1rem;font-weight:600;margin:0}.group-planets{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.8rem}.planet-tag{background:rgba(244,114,182,.2);color:#be185d;padding:.3rem .8rem;border-radius:20px;font-size:.9rem;font-weight:500}.aspect-mastery{background:linear-gradient(135deg,#f0f9ff 0%,#dbeafe 100%);border-radius:15px;padding:1.5rem;margin:2rem 0;border:1px solid #3b82f6;box-shadow:0 4px 15px #3b82f633}.aspect-mastery h4{color:#1d4ed8;font-size:1.3rem;margin-bottom:1rem;text-align:center;font-weight:600}.aspect-content{display:flex;flex-direction:column;gap:1rem}.aspect-item{display:flex;align-items:center;gap:1rem;background:rgba(255,255,255,.8);border-radius:10px;padding:1rem;border-left:4px solid #3b82f6}.aspect-angle{background:linear-gradient(135deg,#3b82f6 0%,#1d4ed8 100%);color:#fff;padding:.5rem 1rem;border-radius:50px;font-weight:600;font-size:1rem;min-width:4rem;text-align:center}.aspect-info h5{color:#1d4ed8;font-size:1.1rem;margin:0 0 .3rem;font-weight:600}.aspect-info p{color:#374151;margin:0;line-height:1.5}.learning-completion{background:linear-gradient(135deg,#fffbeb 0%,#fef3c7 100%);border-radius:15px;padding:2rem;margin:2rem 0;border:1px solid #f59e0b;box-shadow:0 6px 20px #f59e0b4d;text-align:center}.learning-completion h4{color:#92400e;font-size:1.4rem;margin-bottom:1.5rem;font-weight:600}.completion-content{display:flex;flex-direction:column;gap:1.5rem}.completion-badge{background:rgba(255,255,255,.8);border-radius:15px;padding:1.5rem;border:2px solid #f59e0b}.badge-icon{font-size:3rem;display:block;margin-bottom:1rem}.completion-badge h5{color:#92400e;font-size:1.2rem;margin:0 0 .5rem;font-weight:600}.completion-badge p{color:#374151;margin:0;font-size:1rem}.completion-skills{background:rgba(255,255,255,.8);border-radius:15px;padding:1.5rem;border-left:4px solid #f59e0b}.completion-skills h5{color:#92400e;font-size:1.1rem;margin:0 0 1rem;font-weight:600}.skill-list{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.skill-item{background:rgba(245,158,11,.2);color:#92400e;padding:.5rem 1rem;border-radius:25px;font-size:.9rem;font-weight:500}.next-level-benefits{display:flex;flex-direction:column;gap:.8rem;margin-top:1rem}.benefit-item{display:flex;align-items:flex-start;gap:1rem;background:rgba(255,255,255,.2);padding:1rem;border-radius:10px;transition:all .3s ease}.benefit-item:hover{background:rgba(255,255,255,.3);transform:translate(5px)}.benefit-icon{font-size:1.4rem;min-width:2rem;margin-top:.2rem}.benefit-content{display:flex;flex-direction:column;gap:.3rem;flex:1}.benefit-text{color:#fffffff2;font-weight:600;font-size:1rem;line-height:1.3}.benefit-detail{color:#ffffffbf;font-weight:400;font-size:.9rem;line-height:1.4;opacity:.9}@media (max-width: 768px){.learning-progress,.understanding-check,.learning-support,.celestial-relationship,.celestial-groups,.aspect-mastery,.learning-completion{padding:1rem;margin:1rem 0}.progress-items,.check-questions,.support-content,.relationship-content,.group-content,.aspect-content{gap:.8rem}.aspect-item{flex-direction:column;text-align:center}.aspect-angle{min-width:auto}}.section-title{color:#2d3748!important;font-size:1.4rem!important;font-weight:600!important;margin:0 0 1.5rem!important;text-align:left!important;padding:0!important;background:none!important;border:none!important;box-shadow:none!important;display:block!important;width:auto!important;border-radius:0!important;line-height:1.2!important}.five-fortunes-section{margin-top:2rem}.five-fortunes-section h3{color:#4a5568;font-size:1.3rem;margin-bottom:1.5rem;font-weight:600;text-align:center;position:relative;padding-bottom:.5rem}.five-fortunes-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:.5rem;margin-top:2rem}.fortune-card{background:white;border-radius:15px;padding:1rem 1.5rem!important;margin:0;box-shadow:0 4px 15px #0000001a;transition:all .3s ease;border:1px solid #e2e8f0;position:relative;overflow:hidden;width:100%!important;box-sizing:border-box!important}.fortune-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #00000026}.fortune-card:nth-child(1){background:#fed7aa!important}.fortune-card:nth-child(2){background:#fbcfe8!important}.fortune-card:nth-child(3){background:#bfdbfe!important}.fortune-card:nth-child(4){background:#a7f3d0!important}.fortune-card:nth-child(5){background:#ddd6fe!important}.fortune-card:nth-child(6){background:#fed7aa!important}.three-signs-analysis .analysis-overview{background:white!important}.planet-preview{background:rgba(255,255,255,.3)!important;border:1px solid rgba(255,255,255,.3)!important;-webkit-backdrop-filter:blur(5px)!important;backdrop-filter:blur(5px)!important}.ai-analysis{background:linear-gradient(135deg,#e6fffa 0%,#b2f5ea 100%)!important;border-left:4px solid #38b2ac!important}.educational-content{background:linear-gradient(135deg,#e8f4f8 0%,#f0f8ff 100%)!important;border:1px solid rgba(44,82,130,.2)!important}.tips-section{background:linear-gradient(135deg,#f7fafc 0%,#edf2f7 100%)!important}.practical-use{background:linear-gradient(135deg,#f0fff4 0%,#e6fffa 100%)!important;border:1px solid #b8f5cd!important}.advanced-content{background:linear-gradient(135deg,#faf5ff 0%,#f3e8ff 100%)!important;border:1px solid #d6bcfa!important}@media (max-width: 768px){.fortune-card,.analysis-overview,.zodiac-element,.zodiac-quality,.zodiac-ruling,.prediction-item,.planet-card,.all-planets-display .planet-item,.complete-fortune-grid .fortune-card,.planet-preview,.todays-fortune .fortune-item,.special-days-card,.ai-analysis,.educational-content,.tips-section,.practical-use,.advanced-content{padding:.6rem .8rem!important}.three-planets-display .planet-card{padding:.25rem .4rem!important}}@media (max-width: 480px){.fortune-card,.analysis-overview,.zodiac-element,.zodiac-quality,.zodiac-ruling,.prediction-item,.planet-card,.all-planets-display .planet-item,.complete-fortune-grid .fortune-card,.planet-preview,.todays-fortune .fortune-item,.special-days-card,.ai-analysis,.educational-content,.tips-section,.practical-use,.advanced-content{padding:.4rem .6rem!important}.three-planets-display .planet-card{padding:.2rem .3rem!important}}.fortune-title{color:#2d3748;font-size:1.1rem;font-weight:700;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem;position:relative;z-index:2}.ai-analysis-results{margin-top:2rem;display:flex;flex-direction:column;gap:1rem}.analysis-category{background:white;border-radius:10px;padding:1rem 1.5rem;border:1px solid #e2e8f0;box-shadow:0 2px 8px #0000001a;transition:transform .2s ease}.analysis-category:hover{transform:translateY(-2px)}.analysis-category h4{color:#2d3748;font-size:1.1rem;font-weight:600;margin:0 0 .5rem;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Android Emoji",EmojiSymbols,EmojiOne Mozilla,Twemoji Mozilla,Segoe UI Symbol,"Noto Emoji",system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.analysis-category p{color:#4a5568;font-size:1rem;line-height:1.7;margin:0;text-align:left}.section-title,.five-fortunes-section h3,.fortune-title{font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Android Emoji",EmojiSymbols,EmojiOne Mozilla,Twemoji Mozilla,Segoe UI Symbol,"Noto Emoji",system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-variant-emoji:emoji;text-rendering:optimizeLegibility;-webkit-font-feature-settings:"liga";font-feature-settings:"liga"}.fortune-content{margin-top:1rem}.fortune-content p{color:#4a5568;font-size:1rem;line-height:1.7;margin:0;text-align:left}@media (max-width: 768px){.five-fortunes-grid{grid-template-columns:1fr;gap:.5rem}.fortune-card{padding:1rem 1.5rem!important}.fortune-title{font-size:1.2rem}.fortune-content p{font-size:.95rem}}@media (max-width: 480px){.five-fortunes-grid{margin-top:1rem}.fortune-card{padding:1rem 1.5rem!important}.fortune-title{font-size:1.1rem}.fortune-content p{font-size:.9rem;line-height:1.6}}.single-planet-info,.three-signs-analysis .analysis-section{background:white!important;border-radius:10px!important;padding:1rem 1.5rem!important;box-shadow:0 2px 8px #0000001a!important;transition:transform .3s ease;width:100%!important;box-sizing:border-box!important;margin:0!important;position:relative;min-height:60px}.four-sections-display{display:flex;flex-direction:column;gap:1rem;width:100%;padding:0}.section-card{background:white;border-radius:15px;padding:1rem;box-shadow:0 4px 15px #0000001a;border:1px solid #e2e8f0;transition:transform .3s ease}.section-card:hover{transform:translateY(-3px)}.section-card .section-title{font-size:1.1rem;font-weight:600;color:#2d3748;margin:0 0 .5rem;text-align:center;background:transparent!important;border:none!important;box-shadow:none!important;padding:0!important}.section-card .section-description{font-size:.9rem;color:#6b7280;text-align:left;margin-bottom:1rem;line-height:1.4}.section-planets{display:flex;flex-direction:column;gap:.5rem}.section-planets .planet-item{background:#f8fafc;border-radius:8px;padding:.5rem;border:1px solid #e2e8f0}.section-planets .planet-item .planet-title-line{display:flex;align-items:baseline;justify-content:center;gap:.3rem;line-height:1}.section-planets .planet-item .planet-emoji,.section-planets .planet-item .zodiac-emoji{font-size:1.4rem}.section-planets .planet-item .planet-name,.section-planets .planet-item .zodiac-name{font-size:1rem;font-weight:500;color:#2d3748}.planet-single-line{font-size:1rem;font-weight:500;color:#2d3748;display:flex;align-items:center;justify-content:center;gap:.5rem;text-align:center;line-height:1.4;padding:.5rem 0}.planet-brief-explanations{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem;padding:.5rem;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.planet-brief{font-size:.8rem;color:#4a5568;background:white;padding:.25rem .5rem;border-radius:4px;border:1px solid #e2e8f0;white-space:nowrap}.planets-section-display{display:flex;flex-direction:column;gap:.5rem;width:100%}.single-planet-info:hover{transform:translateY(-3px);background:rgba(255,255,255,.8)}.planet-subtitle{color:#6b46c1;font-size:1.1rem;font-weight:600;margin:0 0 1rem;text-align:center;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Android Emoji",EmojiSymbols,EmojiOne Mozilla,Twemoji Mozilla,Segoe UI Symbol,"Noto Emoji",system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-variant-emoji:emoji}.special-days-card{background:#f0f9ff!important}.special-day-item{margin-bottom:1rem}.special-day-item:last-child{margin-bottom:0}.day-line{font-weight:600;color:#2d3748;margin:0 0 .3rem;font-size:1rem}.day-message{color:#4a5568;margin:0;padding-left:1.5rem;line-height:1.5;font-size:.95rem}.ten-planets-fortune-section{background:#ffffff;border-radius:15px;box-shadow:0 4px 6px #0000001a;padding:2rem 1rem!important;margin-bottom:2rem;border:1px solid #e5e7eb;box-sizing:border-box;gap:.5rem}.ten-planets-fortune-section h3{color:#2d3748;font-size:1.4rem;margin-bottom:1.5rem;text-align:left;background:transparent;font-weight:600;padding:0;border:none;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Android Emoji",EmojiSymbols,EmojiOne Mozilla,Twemoji Mozilla,Segoe UI Symbol,"Noto Emoji",system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-variant-emoji:emoji;text-rendering:optimizeLegibility}.complete-fortune-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.5rem;width:100%}.complete-fortune-grid .fortune-card{background:#ffffff;border:1px solid #e5e7eb;border-radius:12px;padding:1rem 1.5rem!important;box-shadow:0 2px 4px #0000000d;transition:all .2s ease;width:100%;box-sizing:border-box;min-height:100px;margin:0}.complete-fortune-grid .fortune-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.complete-fortune-grid .fortune-card .fortune-title{color:#2d3748;font-size:1.1rem;font-weight:600;margin-bottom:.75rem;text-align:left;background:transparent;padding:0;border:none;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Android Emoji",EmojiSymbols,EmojiOne Mozilla,Twemoji Mozilla,Segoe UI Symbol,"Noto Emoji",system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-variant-emoji:emoji;text-rendering:optimizeLegibility}.complete-fortune-grid .fortune-card .fortune-content p{color:#4a5568;font-size:.9rem;line-height:1.6;margin:0;padding:0;text-align:left}.complete-fortune-grid .fortune-card:nth-child(1){background:#fed7aa!important}.complete-fortune-grid .fortune-card:nth-child(2){background:#fbcfe8!important}.complete-fortune-grid .fortune-card:nth-child(3){background:#bfdbfe!important}.complete-fortune-grid .fortune-card:nth-child(4){background:#a7f3d0!important}.complete-fortune-grid .fortune-card:nth-child(5){background:#ddd6fe!important}.complete-fortune-grid .fortune-card:nth-child(6){background:#fef3c7!important}.complete-fortune-grid .fortune-card:nth-child(7){background:#fde2e8!important}.complete-fortune-grid .fortune-card:nth-child(8){background:linear-gradient(135deg,#fff3e0 0%,#ffe0b2 100%)!important;border:1px solid #ffb74d!important}@media (max-width: 768px){.ten-planets-fortune-section{padding:1.5rem 1rem!important}.complete-fortune-grid{grid-template-columns:1fr;gap:.5rem}.complete-fortune-grid .fortune-card{padding:1rem 1.5rem!important}.complete-fortune-grid .fortune-card .fortune-title{font-size:1rem}.complete-fortune-grid .fortune-card .fortune-content p{font-size:.85rem}.planet-single-line{font-size:.9rem;gap:.3rem}.planet-brief-explanations{padding:.3rem}.planet-brief{font-size:.7rem;padding:.2rem .4rem}}.planet-category-section,.analysis-category-section{margin-bottom:24px;padding:16px;background-color:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.category-title{font-size:18px;font-weight:600;color:#1f2937;margin-bottom:12px;display:flex;align-items:center;gap:8px}.planet-with-description{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.planet-line{font-size:16px;line-height:1.4;color:#374151;display:flex;align-items:center;gap:8px;font-weight:500}.planet-description-text{font-size:14px;color:#6b7280;padding-left:24px;line-height:1.5}.analysis-content{font-size:16px;line-height:1.6;color:#374151}.analysis-text{white-space:pre-line;font-size:16px;line-height:1.6;color:#374151}@media (max-width: 768px){.planet-category-section,.analysis-category-section{padding:12px;margin-bottom:16px}.category-title{font-size:16px}.planet-line{font-size:15px}.planet-description-text{font-size:13px;padding-left:20px}.analysis-text{font-size:15px}}.section-highlight{color:#7c3aed;font-weight:700;font-size:1em}.section-highlight:before{content:"\a";white-space:pre}.section-highlight:after{content:"\a";white-space:pre}@media (max-width: 480px){.ten-planets-fortune-section{padding:1rem .5rem!important}.complete-fortune-grid .fortune-card{padding:.75rem 1rem!important}.complete-fortune-grid .fortune-card .fortune-title{font-size:.95rem}.complete-fortune-grid .fortune-card .fortune-content p{font-size:.8rem}.planet-single-line{font-size:.8rem;gap:.2rem;flex-wrap:wrap;justify-content:center}.planet-brief-explanations{padding:.2rem;gap:.3rem}.planet-brief{font-size:.65rem;padding:.15rem .3rem}}.three-planets-display{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;width:100%;margin:0;padding:0}.three-planets-display .planet-card{background:white;border-radius:10px;padding:.3rem .5rem!important;text-align:center;box-shadow:0 2px 8px #0000001a;border:1px solid #e2e8f0;transition:transform .2s ease;width:100%;box-sizing:border-box;min-height:auto!important}.three-planets-display .planet-card:hover{transform:translateY(-2px)}.three-planets-display .planet-card .planet-title-line{display:flex;align-items:baseline;justify-content:center;gap:.3rem;margin-bottom:.2rem;line-height:1;height:auto;min-height:1.8rem}.three-planets-display .planet-card .planet-emoji,.three-planets-display .planet-card .zodiac-emoji{font-size:1.6rem;display:inline-flex;align-items:center;line-height:1;vertical-align:middle}.three-planets-display .planet-card .planet-name,.three-planets-display .planet-card .zodiac-name{font-size:1.1rem;font-weight:600;color:#2d3748;display:inline-flex;align-items:center;line-height:1;vertical-align:middle}.three-planets-display .planet-card .planet-description{color:#718096;font-size:.9rem;margin-top:.1rem;line-height:1.2;text-align:left!important}.all-planets-display{margin:2rem 0}.all-planets-display .planets-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:2rem}.all-planets-display .planet-item{background:white;border-radius:10px;padding:1rem;text-align:center;box-shadow:0 2px 8px #0000001a;border:1px solid #e2e8f0;transition:all .3s ease}.all-planets-display .planet-item:hover{transform:translateY(-3px);box-shadow:0 4px 15px #00000026}.all-planets-display .planet-item .planet-title-line{display:flex;align-items:baseline;justify-content:center;gap:.3rem;line-height:1;height:auto;min-height:1.8rem}.all-planets-display .planet-item .planet-emoji,.all-planets-display .planet-item .zodiac-emoji{font-size:1.6rem;display:inline-flex;align-items:center;line-height:1;vertical-align:middle}.all-planets-display .planet-item .planet-name,.all-planets-display .planet-item .zodiac-name{font-size:1.1rem;font-weight:600;color:#2d3748;display:inline-flex;align-items:center;line-height:1;vertical-align:middle}.return-buttons{display:flex;gap:1rem;justify-content:center;margin-top:2rem;flex-wrap:wrap}.return-button{padding:.8rem 1.5rem;border-radius:10px;text-decoration:none;font-weight:600;transition:all .3s ease;border:none;cursor:pointer}.return-button.secondary{background:#e2e8f0;color:#4a5568}.return-button.primary{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff}.return-button.ai-chat{background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%);color:#fff}.return-button:hover{transform:translateY(-2px);box-shadow:0 4px 15px #0003}.fortune-result{background:white;border-radius:15px;padding:2rem;margin:2rem 0;box-shadow:0 4px 15px #0000001a}.fortune-result h3{color:#2d3748;margin-bottom:1rem}.fortune-result .fortune-content{color:#4a5568;line-height:1.7}.fortune-result .fortune-content p{margin-bottom:1rem}@media (max-width: 768px){.three-planets-display{grid-template-columns:1fr;gap:.8rem}.three-planets-display .planet-card{padding:.25rem .4rem!important}.all-planets-display .planets-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.all-planets-display .planet-item .planet-emoji,.all-planets-display .planet-item .zodiac-emoji{font-size:1.4rem}.all-planets-display .planet-item .planet-name,.all-planets-display .planet-item .zodiac-name{font-size:1rem}.return-buttons{flex-direction:column;align-items:center}.return-button{width:100%;max-width:300px}}@media (max-width: 480px){.three-planets-display{grid-template-columns:1fr;gap:.8rem}.three-planets-display .planet-card{padding:.2rem .3rem!important}.three-planets-display .planet-card .planet-emoji,.three-planets-display .planet-card .zodiac-emoji{font-size:1.4rem}.three-planets-display .planet-card .planet-name,.three-planets-display .planet-card .zodiac-name{font-size:1rem}.all-planets-display .planet-item .planet-emoji,.all-planets-display .planet-item .zodiac-emoji{font-size:1.2rem}.all-planets-display .planet-item .planet-name,.all-planets-display .planet-item .zodiac-name{font-size:.9rem}.four-sections-display{gap:.8rem}.section-card{padding:.8rem}.section-planets .planet-item .planet-emoji,.section-planets .planet-item .zodiac-emoji{font-size:1.2rem}.section-planets .planet-item .planet-name,.section-planets .planet-item .zodiac-name{font-size:.9rem}.all-planets-display .planet-item{padding:.8rem}}.three-planets-introduction{border-radius:15px;box-shadow:0 4px 15px #0000001a;box-sizing:border-box;border:1px solid;width:600px!important;max-width:90vw!important;margin:2rem auto!important;padding:2rem 1.5rem!important;background:linear-gradient(135deg,#a855f7 0%,#7c3aed 100%);border-color:#7c3aed}.three-planets-preview{margin-top:.5rem!important;margin-bottom:.5rem!important;display:flex;flex-direction:column;gap:.5rem}.planet-preview:hover{transform:translateY(-2px);box-shadow:0 4px 12px #fff3;background:rgba(255,255,255,.2)}.planet-preview .planet-info h4{color:#fff;font-size:1rem!important;font-weight:600;margin-bottom:.2rem!important;line-height:1.3!important}.planet-preview .planet-info p{color:#ffffffe6;font-size:.85rem!important;margin:0;line-height:1.3!important}.action-buttons,.action-buttons *,div.action-buttons,.step-by-step-result .action-buttons,.level-1 .action-buttons,.level-2 .action-buttons,.three-planets-introduction .action-buttons{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:1rem!important;margin-top:2rem;position:relative;width:100%;max-width:600px;margin-left:auto;margin-right:auto;flex-wrap:nowrap!important}.three-planets-introduction .action-buttons,.level-1 .action-buttons,.level-2 .action-buttons,.step-by-step-result .action-buttons,div.action-buttons{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:1rem!important;flex-wrap:nowrap!important}.action-buttons .ai-chat-button,.action-buttons .new-fortune-button{display:inline-block!important;flex:1 1 0!important;min-width:150px!important;max-width:250px!important}.ai-chat-button{background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%);color:#fff;padding:1rem 2rem;border-radius:25px;font-size:1.2rem;font-weight:700;text-decoration:none;text-align:center;transition:all .3s ease;box-shadow:0 4px 15px #4facfe4d;display:inline-block!important;white-space:nowrap;min-width:200px;max-width:280px;box-sizing:border-box}.ai-chat-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #4facfe66}.new-fortune-button{background:rgba(255,255,255,.15);color:#ffffffe6;padding:1rem 1.8rem;border-radius:25px;font-size:1.2rem;font-weight:700;text-decoration:none;text-align:center;transition:all .3s ease;box-shadow:none;border:1px solid rgba(255,255,255,.5);position:static;display:inline-block!important;white-space:nowrap;min-width:200px;max-width:280px;box-sizing:border-box}.new-fortune-button:hover{color:#fff;background:rgba(255,255,255,.25);border-color:#ffffffb3}@media (max-width: 768px){.three-planets-preview{margin-top:1rem}.planet-preview{flex-direction:row!important;text-align:left!important;padding:.6rem!important}.planet-preview .planet-icon{margin-right:.8rem!important;margin-bottom:0!important}.planet-info h4{font-size:1rem}.planet-info p{font-size:.85rem}.action-buttons,.three-planets-introduction .action-buttons,.level-1 .action-buttons,.level-2 .action-buttons,.step-by-step-result .action-buttons,div.action-buttons{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:.8rem!important;flex-wrap:nowrap!important}.ai-chat-button{padding:.8rem 1.5rem;font-size:1.2rem;flex:1 1 0!important;min-width:120px!important;max-width:200px!important}.new-fortune-button{position:static;padding:.8rem 1.3rem;font-size:1.2rem;background:rgba(255,255,255,.15);color:#ffffffe6;border:1px solid rgba(255,255,255,.5);flex:1 1 0!important;min-width:120px!important;max-width:200px!important}}@media (max-width: 480px){.three-planets-introduction{padding:2rem 1.5rem!important}.planet-preview{flex-direction:row!important;padding:.6rem!important}.planet-preview .planet-icon{font-size:1.3rem!important;margin-right:.8rem!important;margin-bottom:0!important}.action-buttons,.three-planets-introduction .action-buttons,.level-1 .action-buttons,.level-2 .action-buttons,.step-by-step-result .action-buttons,div.action-buttons{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:.6rem!important;flex-wrap:nowrap!important}.ai-chat-button{padding:.6rem 1.2rem;font-size:1.1rem;flex:1 1 0!important;min-width:100px!important;max-width:180px!important}.new-fortune-button{position:static;padding:.6rem 1rem;font-size:1.1rem;background:rgba(255,255,255,.15);color:#ffffffe6;border:1px solid rgba(255,255,255,.5);flex:1 1 0!important;min-width:100px!important;max-width:180px!important}}.action-buttons,.action-buttons *,div.action-buttons,.step-by-step-result .action-buttons,.level-1 .action-buttons,.level-2 .action-buttons,.three-planets-introduction .action-buttons,[class*=action-buttons]{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:1rem!important;flex-wrap:nowrap!important}@media (max-width: 768px){.action-buttons,.action-buttons *,div.action-buttons,.step-by-step-result .action-buttons,.level-1 .action-buttons,.level-2 .action-buttons,.three-planets-introduction .action-buttons,[class*=action-buttons]{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:.8rem!important;flex-wrap:nowrap!important}}@media (max-width: 480px){.action-buttons,.action-buttons *,div.action-buttons,.step-by-step-result .action-buttons,.level-1 .action-buttons,.level-2 .action-buttons,.three-planets-introduction .action-buttons,[class*=action-buttons]{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:.6rem!important;flex-wrap:nowrap!important}}.analysis-generate-section{text-align:center;padding:2rem 1rem}.generate-analysis-button{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;padding:1rem 2rem;border-radius:25px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:1rem}.generate-analysis-button:hover{transform:translateY(-2px);box-shadow:0 8px 20px #667eea4d}.three-planets-analysis-results{margin-top:1.5rem}.personality-sections{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:1rem}.personality-card{background:white;border-radius:15px;padding:1.5rem;box-shadow:0 4px 15px #0000001a;border:1px solid #e2e8f0;transition:all .3s ease}.personality-card:hover{transform:translateY(-3px);box-shadow:0 6px 20px #00000026}.personality-title{color:#2d3748;font-size:1.2rem;font-weight:700;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.personality-content{color:#4a5568;line-height:1.7}.personality-content p{margin:0;text-align:left}.error-message{text-align:center;padding:2rem;background:#fed7d7;border:1px solid #feb2b2;border-radius:10px;color:#c53030}.retry-button{background:#e53e3e;color:#fff;border:none;padding:.8rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;margin-top:1rem;transition:all .3s ease}.retry-button:hover{background:#c53030;transform:translateY(-1px)}@media (max-width: 768px){.personality-sections{grid-template-columns:1fr;gap:1rem}.personality-card{padding:1rem}.personality-title{font-size:1.1rem}.generate-analysis-button{width:100%;max-width:300px}}@media (max-width: 480px){.analysis-generate-section{padding:1rem .5rem}.personality-card{padding:.8rem}.personality-title{font-size:1rem}}.data-missing-container{display:flex;justify-content:center;align-items:center;min-height:60vh;padding:2rem}.data-missing-card{background:white;border-radius:16px;padding:3rem;box-shadow:0 8px 32px #0000001a;text-align:center;max-width:600px;width:100%;border:2px solid #8b5cf6}.data-missing-icon{font-size:4rem;margin-bottom:1.5rem;color:#8b5cf6}.data-missing-title{font-size:1.5rem;font-weight:600;color:#1f2937;margin-bottom:1.5rem;line-height:1.4}.data-missing-message{margin-bottom:2rem}.data-missing-message p{font-size:1.1rem;color:#4b5563;margin-bottom:.5rem;line-height:1.6}.data-missing-message p:first-child{font-weight:600;color:#8b5cf6}.data-missing-actions{display:flex;flex-direction:column;gap:1rem;align-items:center}.registration-button{background:linear-gradient(135deg,#8b5cf6 0%,#7c3aed 100%);color:#fff;border:none;padding:1rem 2rem;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #8b5cf64d}.registration-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #8b5cf666}.registration-button:active{transform:translateY(0)}.data-missing-actions .back-button{background:#f3f4f6;color:#6b7280;border:1px solid #d1d5db;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;cursor:pointer;transition:all .3s ease}.data-missing-actions .back-button:hover{background:#e5e7eb;color:#4b5563}@media (max-width: 768px){.data-missing-card{padding:2rem;margin:1rem}.data-missing-title{font-size:1.3rem}.data-missing-message p{font-size:1rem}.registration-button{padding:.875rem 1.5rem;font-size:1rem}}.fortune-card,.analysis-overview,.planet-card,.analysis-section,.educational-content,.tips-section,.practical-use,.advanced-content{transition:all .3s cubic-bezier(.4,0,.2,1)!important;will-change:transform,box-shadow!important}.fortune-card:hover,.analysis-overview:hover,.planet-card:hover,.analysis-section:hover,.educational-content:hover,.tips-section:hover,.practical-use:hover,.advanced-content:hover{transform:translateY(-4px) scale(1.01)!important;box-shadow:0 12px 32px #00000026!important;border-color:#667eea66!important}.generate-fortune-button,.level-up-button,.ai-chat-button,.new-fortune-button,.generate-analysis-button,.retry-button{transition:all .2s cubic-bezier(.4,0,.2,1)!important;will-change:transform,box-shadow!important}.generate-fortune-button:hover,.level-up-button:hover,.ai-chat-button:hover,.new-fortune-button:hover,.generate-analysis-button:hover,.retry-button:hover{transform:translateY(-2px) scale(1.02)!important;box-shadow:0 8px 25px #667eea66!important}.generate-fortune-button:active,.level-up-button:active,.ai-chat-button:active,.new-fortune-button:active,.generate-analysis-button:active,.retry-button:active{transform:translateY(0) scale(.98)!important;transition:all .1s cubic-bezier(.4,0,.2,1)!important}@keyframes spinGlow{0%{transform:rotate(0);filter:drop-shadow(0 0 5px rgba(102,126,234,.3))}50%{filter:drop-shadow(0 0 15px rgba(102,126,234,.6))}to{transform:rotate(360deg);filter:drop-shadow(0 0 5px rgba(102,126,234,.3))}}.loading-section .loading-spinner,.loading .loading-spinner{-webkit-animation:basic-spinner-rotation 1s linear infinite!important;-moz-animation:basic-spinner-rotation 1s linear infinite!important;animation:basic-spinner-rotation 1s linear infinite!important;will-change:transform!important;-webkit-will-change:transform!important}.generating-message .loading-spinner{-webkit-animation:simple-spin 1s linear infinite!important;-moz-animation:simple-spin 1s linear infinite!important;animation:simple-spin 1s linear infinite!important;will-change:transform!important;-webkit-will-change:transform!important}@keyframes simple-spin{0%{transform:rotate(0);background-color:#667eea}25%{transform:rotate(90deg);background-color:#764ba2}50%{transform:rotate(180deg);background-color:#667eea}75%{transform:rotate(270deg);background-color:#764ba2}to{transform:rotate(360deg);background-color:#667eea}}@-webkit-keyframes simple-spin{0%{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(360deg)}}@-moz-keyframes simple-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.generating-message .loading-spinner{animation:simple-spin 2s linear infinite!important;-webkit-animation:simple-spin 2s linear infinite!important;-moz-animation:simple-spin 2s linear infinite!important;border:5px solid #e2e8f0!important;border-top:5px solid #667eea!important;width:50px!important;height:50px!important;border-radius:50%!important;display:block!important}@keyframes smoothFadeInUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.level-content{animation:smoothFadeInUp .6s cubic-bezier(.4,0,.2,1) forwards!important;will-change:opacity,transform!important}@keyframes progressPulseSmooth{0%,to{transform:scale(1);box-shadow:0 4px 15px #667eea4d}50%{transform:scale(1.05);box-shadow:0 6px 20px #667eea80}}.progress-step.active{animation:progressPulseSmooth 2s cubic-bezier(.4,0,.2,1) infinite!important;will-change:transform,box-shadow!important}.fortune-card,.analysis-overview,.planet-card,.loading-spinner,.progress-step,.generate-fortune-button,.level-up-button{transform:translateZ(0)!important;backface-visibility:hidden!important;perspective:1000px!important}@media (prefers-reduced-motion: reduce){.fortune-card,.analysis-overview,.planet-card,.analysis-section,.educational-content,.tips-section,.practical-use,.advanced-content,.generate-fortune-button,.level-up-button,.ai-chat-button,.new-fortune-button,.loading-spinner,.progress-step,.level-content{animation:none!important;transition:none!important;transform:none!important}.fortune-card:hover,.analysis-overview:hover,.planet-card:hover{transform:none!important;box-shadow:0 4px 15px #0000001a!important}}.major-analysis{background:linear-gradient(135deg,#fef3e2 0%,#fef9c3 100%)!important;border:2px solid #f59e0b!important;box-shadow:0 4px 12px #f59e0b33!important;margin-bottom:1.5rem!important;padding:1.2rem 1.5rem!important}.major-analysis h4{color:#92400e;font-weight:700;font-size:1.2rem;margin-bottom:.8rem;display:flex;align-items:center;gap:.5rem}.section-subtitle{color:#1e40af;font-weight:600;font-size:1.1rem;margin:2rem 0 1rem;padding:.8rem 1rem;background:linear-gradient(135deg,#e0f2fe 0%,#f0f9ff 100%);border-radius:8px}.personality-insights-section,.fortune-insights-section{margin:1.5rem 0;padding:0;background:transparent;border:none}.personality-insights-section .analysis-category h5,.fortune-insights-section .analysis-category h5{color:#374151;font-weight:600;font-size:1rem;margin-bottom:.6rem;display:flex;align-items:center;gap:.4rem}.ai-analysis-results .analysis-category{margin-bottom:1.2rem}.ai-analysis-results .analysis-category p{line-height:1.7;color:#374151;font-size:.95rem}.analysis-overview p{text-align:left;font-size:1rem;line-height:1.6;color:#374151}.analysis-overview strong{color:#dc2626;font-weight:700}.timeout-message{background:linear-gradient(135deg,#fff3cd 0%,#ffeaa7 100%);border:1px solid #ffc107;border-radius:12px;padding:20px;margin:20px 0;text-align:center}.timeout-message h4{color:#856404;margin:0 0 15px;font-size:16px;font-weight:600}.timeout-message p{color:#856404;margin:0 0 20px;line-height:1.6;font-size:14px}.timeout-actions{display:flex;flex-direction:column;align-items:center;gap:10px}.retry-button.primary{background:linear-gradient(135deg,#28a745 0%,#20c997 100%);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #28a7454d}.retry-button.primary:hover{background:linear-gradient(135deg,#218838 0%,#1ea085 100%);transform:translateY(-2px);box-shadow:0 4px 12px #28a74566}.timeout-note{font-size:12px;color:#6c757d;margin:0;font-style:italic}.ai-analysis-error{background:rgba(220,53,69,.1);border:1px solid #dc3545;border-radius:8px;padding:15px;margin:15px 0;text-align:center}.error-actions{display:flex;gap:10px;justify-content:center;margin-top:15px;flex-wrap:wrap}@media (max-width: 768px){.timeout-message{padding:15px;margin:15px 0}.timeout-message p{font-size:13px}.retry-button.primary{padding:10px 20px;font-size:13px}}.clickable-planet{transition:all .2s ease;border-radius:8px;padding:8px 12px;background:rgba(102,126,234,.05);border:1px solid rgba(102,126,234,.2)}.clickable-planet:hover{background:rgba(102,126,234,.1);border-color:#667eea4d;transform:translateY(-1px);box-shadow:0 4px 12px #667eea33}.detail-toggle{color:#667eea;font-weight:700;transition:transform .2s ease}.clickable-planet:hover .detail-toggle{transform:scale(1.1)}.planet-detail-accordion{margin-top:12px;padding:16px;background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%);border-radius:12px;border:1px solid #e2e8f0;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px);max-height:0}to{opacity:1;transform:translateY(0);max-height:200px}}.planet-detail-content h5{margin:0 0 8px;color:#4338ca;font-size:14px;font-weight:600}.planet-detail-text{display:flex;flex-direction:column;gap:8px}.planet-detail-text p{margin:0;color:#374151;font-size:13px;line-height:1.6}.planet-detail-text p:first-child{color:#4338ca;font-weight:600;font-size:12px;background:rgba(67,56,202,.05);padding:6px 8px;border-radius:6px}.planet-detail-loading{display:flex;align-items:center;gap:12px}.planet-detail-loading p{margin:0;color:#6b7280;font-size:13px}@media (max-width: 768px){.clickable-planet{padding:6px 8px}.planet-detail-accordion{margin-top:8px;padding:12px}.planet-detail-content h5{font-size:13px}.planet-detail-content p{font-size:12px}}.ai-fortune-container{max-width:100%;margin:0;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);min-height:100vh;display:flex;flex-direction:column;color:#fff}.ai-chat-header{background:rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1rem 2rem;border-bottom:1px solid rgba(255,255,255,.2);display:flex;flex-direction:column;gap:1rem;position:sticky;top:0;z-index:100}@media (max-width: 768px){.ai-chat-header{padding:.75rem 1rem;gap:.75rem}}.ai-chat-header .back-button-container{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:0}.ai-chat-header .back-button{background:rgba(255,255,255,.2);color:#fff;border:1px solid rgba(255,255,255,.3);padding:.5rem 1rem;border-radius:20px;cursor:pointer;font-size:1rem;transition:all .3s ease;display:flex;align-items:center;justify-content:center;min-height:44px}.ai-chat-header .back-button:hover{background:rgba(255,255,255,.3);transform:translateY(-2px);color:#fff}@media (max-width: 768px){.ai-chat-header .back-button-container{width:100%}.ai-chat-header .back-button{width:100%;font-size:.9rem;padding:.6rem 1rem;border-radius:8px;margin:0}}.ai-info{display:flex;align-items:center;gap:1rem;justify-content:center;text-align:center}@media (max-width: 768px){.ai-info{justify-content:center;text-align:center}}.ai-avatar{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#f093fb 0%,#f5576c 100%);display:flex;align-items:center;justify-content:center;font-size:2rem;box-shadow:0 8px 25px #f093fb4d}.ai-details{display:flex;flex-direction:column;align-items:flex-start;flex:1}.ai-details h1{margin:0;font-size:1.5rem;font-weight:700}.ai-details p{margin:.3rem 0 0;font-size:.9rem;opacity:.8}@media (max-width: 768px){.ai-avatar{width:50px;height:50px;font-size:1.5rem}.ai-details{align-items:center;text-align:center}.ai-details h1{font-size:1.3rem}.ai-details p{font-size:.8rem;margin:.2rem 0;line-height:1.3}}.messages-container{flex:1;overflow-y:auto;padding:2rem .5rem;display:flex;flex-direction:column;gap:1rem}@media (max-width: 768px){.messages-container{padding:1rem .75rem;gap:.75rem}}.message{animation:fadeInUp .4s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.message-content{display:flex;align-items:flex-end;gap:.5rem;max-width:90%}.ai-message .message-content{max-width:95%}.user-message .message-content{margin-left:auto;flex-direction:row-reverse}.ai-message .message-content{margin-right:auto}.message-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#f093fb 0%,#f5576c 100%);display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0;box-shadow:0 4px 15px #f093fb4d}.user-avatar{background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%);box-shadow:0 4px 15px #4facfe4d}.message-bubble{background:rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1rem 1.5rem;border-radius:20px;position:relative;box-shadow:0 4px 20px #0000001a;border:1px solid rgba(255,255,255,.2);min-width:300px;max-width:800px}.user-message .message-bubble{background:rgba(255,255,255,.2);border-radius:20px 20px 5px}.ai-message .message-bubble{background:rgba(255,255,255,.1);border-radius:20px 20px 20px 5px}.message-bubble p{margin:0;line-height:1.6;font-size:1rem;word-break:break-word;white-space:pre-wrap}.message-time{display:block;font-size:.8rem;opacity:.7;margin-top:.5rem;text-align:right}.typing .message-bubble{background:rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1rem 1.5rem}.typing-indicator{display:flex;align-items:center;gap:.3rem}.typing-indicator span{width:8px;height:8px;border-radius:50%;background:white;animation:bounce 1.4s infinite ease-in-out}.typing-indicator span:nth-child(1){animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.suggestions-container{background:rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1.5rem 2rem;border-top:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2)}.suggestions-container h4{margin:0 0 1rem;font-size:1.1rem;color:#fff;text-align:center}.suggestion-chips{display:flex;flex-wrap:wrap;gap:.8rem;justify-content:center}.suggestion-chip{background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.3);color:#fff;padding:.8rem 1.2rem;border-radius:25px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:500;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.suggestion-chip:hover{background:rgba(255,255,255,.3);transform:translateY(-2px);box-shadow:0 8px 20px #fff3}.suggestion-chip:active{transform:translateY(0)}.chip-icon{font-size:1.1rem}.chip-text{white-space:nowrap}.input-container{background:rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1.5rem 2rem;border-top:1px solid rgba(255,255,255,.2)}.input-wrapper{display:flex;gap:1rem;align-items:flex-end;max-width:800px;margin:0 auto}@media (max-width: 768px){.input-container{padding:1rem}.input-wrapper{gap:.5rem;max-width:100%}}.message-input{flex:1;background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.3);color:#fff;padding:1rem 1.5rem;border-radius:25px;font-size:1rem;line-height:1.4;resize:none;min-height:50px;max-height:150px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);transition:all .3s ease}.message-input:focus{outline:none;border-color:#ffffff80;background:rgba(255,255,255,.25)}.message-input::placeholder{color:#ffffffb3}.send-button{background:linear-gradient(135deg,#f093fb 0%,#f5576c 100%);color:#fff;border:none;width:50px;height:50px;border-radius:50%;cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:all .3s ease;box-shadow:0 4px 15px #f093fb4d}.send-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #f093fb66}.send-button:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.ai-chat-header{padding:1rem}.ai-info{flex-direction:column;text-align:center}.ai-avatar{width:50px;height:50px;font-size:1.5rem}.ai-details h1{font-size:1.3rem}.messages-container{padding:1rem .3rem}.message-content{max-width:85%}.ai-message .message-content{max-width:98%}.message-avatar{width:35px;height:35px;font-size:1rem}.message-bubble{padding:.8rem 1.2rem;min-width:250px;max-width:600px}.suggestions-container{padding:1rem}.suggestion-chips{gap:.5rem}.suggestion-chip{padding:.6rem 1rem;font-size:.8rem}.input-container{padding:1rem}.input-wrapper{gap:.8rem}.message-input{padding:.8rem 1.2rem;font-size:.9rem}.send-button{width:45px;height:45px;font-size:1.1rem}}@media (max-width: 480px){.ai-chat-header{padding:.8rem;flex-direction:column;gap:.5rem}.ai-info{gap:.8rem}.ai-avatar{width:45px;height:45px;font-size:1.3rem}.ai-details h1{font-size:1.2rem}.ai-details p{font-size:.8rem}.messages-container{padding:.8rem .2rem}.message-content{max-width:80%}.ai-message .message-content{max-width:98%}.message-avatar{width:30px;height:30px;font-size:.9rem}.message-bubble{padding:.7rem 1rem;font-size:.9rem;min-width:200px;max-width:500px}.suggestions-container{padding:.8rem}.suggestion-chips{flex-direction:column;align-items:center}.suggestion-chip{width:100%;max-width:250px;justify-content:center}.input-container{padding:.8rem}.message-input{padding:.7rem 1rem;font-size:.9rem}.send-button{width:40px;height:40px;font-size:1rem}}.bottom-navigation{background:rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1rem 2rem;border-top:1px solid rgba(255,255,255,.2);display:flex;gap:1rem;justify-content:center;align-items:center}.bottom-back-button{background:#4f46e5;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:12px;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .3s ease;box-shadow:0 4px 12px #4f46e54d;display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;flex:1;max-width:200px}.bottom-back-button:hover{background:#3730a3;transform:translateY(-2px);box-shadow:0 6px 16px #4f46e566}.bottom-navigation.single{justify-content:center}.bottom-back-button.single{max-width:300px;flex:none}@media (max-width: 768px){.bottom-navigation{padding:1rem;flex-direction:column;gap:.75rem}.bottom-navigation.single{flex-direction:row;justify-content:center}.bottom-back-button{width:100%;max-width:none;padding:1rem;font-size:.9rem}.bottom-back-button.single{width:100%;max-width:300px}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px}body{font-family:Noto Sans JP,Hiragino Sans,Hiragino Kaku Gothic ProN,sans-serif;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{width:100%;min-height:100vh}
