:root{font-family:Noto Sans KR,Segoe UI,system-ui,-apple-system,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:#ffffffde;background-color:#1a1a2e;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}#root{width:100%}*{margin:0;padding:0;box-sizing:border-box}.app-container{min-height:100vh;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);padding:20px;display:flex;flex-direction:column;align-items:center}.header{text-align:center;margin-bottom:40px;animation:fadeIn .8s ease-out}.header h1{font-size:2.5rem;color:#fff;text-shadow:0 0 20px rgba(255,215,0,.5);margin-bottom:10px}.header .date{color:#a0a0a0;font-size:1.1rem}.input-section{width:100%;max-width:600px;animation:slideUp .6s ease-out}.input-card{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:40px;border:1px solid rgba(255,255,255,.2);box-shadow:0 8px 32px #0000004d}.input-card h2{color:#fff;text-align:center;margin-bottom:30px;font-size:1.5rem}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:30px}.form-group{display:flex;flex-direction:column}.form-group label{color:#ccc;margin-bottom:8px;font-size:.9rem}.form-group select{padding:12px 15px;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:#ffffff1a;color:#fff;font-size:1rem;cursor:pointer;transition:all .3s ease}.form-group select:hover{border-color:#ffd70080}.form-group select:focus{outline:none;border-color:gold;box-shadow:0 0 10px #ffd7004d}.form-group select option{background:#1a1a2e;color:#fff}.submit-btn{width:100%;padding:15px 30px;font-size:1.2rem;font-weight:700;color:#1a1a2e;background:linear-gradient(135deg,gold,orange);border:none;border-radius:10px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #ffd70066}.submit-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ffd70099}.submit-btn:active{transform:translateY(0)}.submit-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.submit-btn:disabled:hover{transform:none;box-shadow:0 4px 15px #ffd70066}.loading-spinner{display:inline-block;width:20px;height:20px;border:3px solid rgba(26,26,46,.3);border-radius:50%;border-top-color:#1a1a2e;animation:spin 1s ease-in-out infinite;margin-right:10px;vertical-align:middle}@keyframes spin{to{transform:rotate(360deg)}}.error-message{background:#ff634733;border:1px solid rgba(255,99,71,.5);color:tomato;padding:12px 15px;border-radius:10px;margin-bottom:20px;text-align:center;font-size:.95rem}.fortune-section{width:100%;max-width:1200px;animation:fadeIn .8s ease-out}.fortune-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;flex-wrap:wrap;gap:15px}.birth-info{color:gold;font-size:1.2rem;font-weight:500}.reset-btn{padding:10px 25px;font-size:1rem;color:#fff;background:#ffffff1a;border:1px solid rgba(255,255,255,.3);border-radius:25px;cursor:pointer;transition:all .3s ease}.reset-btn:hover{background:#fff3;border-color:#ffffff80}.fortune-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:25px}.fortune-card{background:#ffffff14;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:25px;border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0003;transition:all .3s ease;animation:cardSlide .6s ease-out backwards;position:relative;overflow:hidden}.fortune-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--card-color);border-radius:20px 20px 0 0}.fortune-card:nth-child(1){animation-delay:.1s}.fortune-card:nth-child(2){animation-delay:.2s}.fortune-card:nth-child(3){animation-delay:.3s}.fortune-card:nth-child(4){animation-delay:.4s}.fortune-card:nth-child(5){animation-delay:.5s}.fortune-card:nth-child(6){animation-delay:.6s}.fortune-card:hover{transform:translateY(-5px);box-shadow:0 12px 40px #0000004d;border-color:var(--card-color)}.card-header{display:flex;align-items:center;gap:12px;margin-bottom:15px}.card-icon{font-size:2.5rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.card-header h3{color:#fff;font-size:1.4rem}.card-score{display:flex;align-items:center;gap:15px;margin-bottom:15px;padding:10px 15px;background:#ffffff0d;border-radius:10px}.stars{color:var(--card-color);font-size:1.3rem;letter-spacing:2px}.score-number{color:var(--card-color);font-size:1.2rem;font-weight:700}.card-fortune{margin-bottom:15px}.fortune-text{color:#fff;font-size:1.1rem;font-weight:500;line-height:1.5}.card-advice{padding-top:15px;border-top:1px solid rgba(255,255,255,.1)}.card-advice p{color:#b0b0b0;font-size:.95rem;line-height:1.6}.footer{margin-top:50px;text-align:center;padding:20px}.footer p{color:#666;font-size:.9rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes cardSlide{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:768px){.header h1{font-size:1.8rem}.input-card{padding:25px}.form-row{grid-template-columns:1fr;gap:15px}.fortune-cards{grid-template-columns:1fr}.fortune-header{flex-direction:column;text-align:center}.birth-info{font-size:1rem}}@media(max-width:480px){.app-container{padding:15px}.header h1{font-size:1.5rem}.input-card,.fortune-card{padding:20px}.card-icon{font-size:2rem}.card-header h3{font-size:1.2rem}}
