:root{--primary: #4A635D;--primary-light: #7A9A92;--primary-dark: #2F423D;--accent: #B93E33;--accent-light: #D65A4F;--gold: #C8A051;--wood: #5D4037;--bg-paper: #F3EFE4;--bg-dark: #2C2C2C;--bg-card: #FAF8F2;--bg-card-dark: #E8E2D2;--text-ink: #2C2C2C;--text-ink-light: #5A5A5A;--text-muted: #8C8C8C;--text-on-dark: #F3EFE4;--border-ink: rgba(44, 44, 44, .2);--border-double: 3px double rgba(44, 44, 44, .15);--shadow-ink: 0 4px 12px rgba(44, 44, 44, .08);--shadow-paper: 0 2px 5px rgba(93, 64, 55, .1);--texture-paper: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.05'/%3E%3C/svg%3E");--radius: 8px;--radius-sm: 4px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Gowun Batang,serif;background-color:var(--bg-paper);background-image:var(--texture-paper);min-height:100vh;color:var(--text-ink);line-height:1.7;word-break:keep-all;-webkit-font-smoothing:antialiased}#root{max-width:750px;margin:0 auto;padding:40px 20px;min-height:100vh;display:flex;flex-direction:column;justify-content:center;position:relative}#root:before,#root:after{content:"";position:absolute;top:40px;bottom:40px;width:2px;background-image:linear-gradient(to bottom,var(--border-ink) 50%,transparent 50%);background-size:2px 20px;opacity:.1}#root:before{left:10px}#root:after{right:10px}#root.has-result{justify-content:flex-start;padding-top:40px}.font-brush{font-family:Nanum Brush Script,cursive}.font-human{font-family:Yeon Sung,cursive}.page-enter{animation:fadeIn .8s ease-out forwards}.page-exit{animation:fadeOut .5s ease-in forwards}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}h1{text-align:center;font-family:Yeon Sung,cursive;font-size:3rem;font-weight:400;margin-bottom:40px;color:var(--text-ink);position:relative;display:inline-block;max-width:100%;word-break:keep-all;align-self:center;padding-bottom:10px;border-bottom:2px solid var(--accent)}h1:after{content:"운명";position:absolute;top:-15px;right:-25px;font-size:1.2rem;color:var(--accent);border:1px solid var(--accent);padding:2px 4px;border-radius:2px;transform:rotate(15deg);font-family:Gowun Batang,serif}.input-form{background:var(--bg-card);border:1px solid var(--primary-light);border-radius:var(--radius);padding:40px 30px;box-shadow:var(--shadow-paper);position:relative;overflow:hidden}.input-form:before{content:"卍";position:absolute;top:10px;right:15px;color:var(--border-ink);font-size:1.2rem;opacity:.3}.gender-selector{display:flex;gap:20px;justify-content:center;margin-bottom:32px}.gender-option{display:flex;flex-direction:column;align-items:center;gap:10px;padding:15px 30px;background:transparent;border:2px solid var(--border-ink);border-radius:50px;cursor:pointer;transition:all .3s ease;position:relative}.gender-option input{display:none}.gender-option .gender-icon{font-size:2rem;color:var(--text-ink-light)}.gender-option span:last-child{font-family:Yeon Sung,cursive;font-size:1.3rem;color:var(--text-ink-light)}.gender-option:hover{border-color:var(--primary);background:#4a635d0d}.gender-option.active{border-color:var(--primary);background:var(--bg-card-dark)}.gender-option.active .gender-icon,.gender-option.active span:last-child{color:var(--primary);font-weight:600}.date-inputs,.time-inputs{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-bottom:24px}.input-with-unit{position:relative;display:flex;align-items:center}.input-with-unit input,.input-with-unit select{padding:8px 10px;border:none;border-bottom:2px solid var(--border-ink);background:transparent;color:var(--text-ink);font-size:1.2rem;font-family:Gowun Batang,serif;text-align:center;width:75px;transition:border-bottom .2s;border-radius:0}.input-with-unit select{width:85px}.input-with-unit input:focus,.input-with-unit select:focus{outline:none;border-bottom-color:var(--accent)}.input-with-unit .unit{margin-left:4px;font-family:Yeon Sung,cursive;color:var(--text-ink-light);font-size:1.2rem}.time-hint{width:100%;text-align:center;color:var(--text-muted);font-size:.95rem;margin-top:8px;font-style:italic}.calendar-selector{display:flex;justify-content:center;gap:16px;margin-bottom:24px}.calendar-option{display:flex;align-items:center;gap:8px;padding:8px 16px;border:1px solid transparent;cursor:pointer;font-family:Yeon Sung,cursive;color:var(--text-ink-light);font-size:1.2rem;transition:all .2s}.calendar-option.active{color:var(--accent);border-bottom:1px solid var(--accent)}.calendar-option:hover{color:var(--accent-light)}.leap-month-check{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:10px;cursor:pointer;font-family:Yeon Sung,cursive;color:var(--text-ink-light);font-size:1.1rem}.leap-month-check input{accent-color:var(--primary);width:18px;height:18px}.submit-btn{width:100%;padding:20px;margin-top:32px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-size:1.4rem;font-family:Yeon Sung,cursive;cursor:pointer;transition:all .2s;box-shadow:2px 2px #0000001a;position:relative}.submit-btn:hover:not(:disabled){background:var(--accent-light);transform:translateY(-1px)}.submit-btn:disabled{background:var(--text-muted);cursor:not-allowed}.result-info-bar{display:flex;justify-content:space-between;align-items:center;background:var(--bg-card);border-top:2px solid var(--primary);border-bottom:2px solid var(--primary);padding:16px 20px;margin-bottom:24px}.birth-info{font-weight:600;color:var(--text-ink);font-family:Gowun Batang,serif;font-size:1.1rem}.reset-btn{padding:6px 12px;border:1px solid var(--text-muted);background:transparent;font-family:Yeon Sung,cursive;cursor:pointer;color:var(--text-ink-light);transition:all .2s;font-size:1rem}.reset-btn:hover{border-color:var(--accent);color:var(--accent)}.chat-box{background:var(--bg-card);border:1px solid var(--border-ink);padding:30px;margin-bottom:24px;box-shadow:var(--shadow-paper)}.chat-box h2{font-family:Yeon Sung,cursive;font-size:1.6rem;color:var(--primary);border-bottom:1px solid var(--border-ink);padding-bottom:10px;margin-bottom:16px}.chat-description{color:var(--text-ink-light);margin-bottom:24px;font-size:1.05rem}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px}.menu-btn{display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px 10px;background:var(--bg-paper);border:1px solid var(--border-ink);color:var(--text-ink);cursor:pointer;transition:all .2s;box-shadow:1px 1px 3px #0000000d;font-family:Yeon Sung,cursive}.menu-btn:hover:not(:disabled){border-color:var(--primary);background:#fff}.menu-btn.selected{border:2px solid var(--primary);background:var(--bg-card-dark);font-weight:700}.menu-icon{font-size:1.8rem}.menu-label{font-size:1rem}.saju-result{background:var(--bg-card);border:1px solid var(--border-ink);padding:10px;box-shadow:var(--shadow-ink)}.saju-result:after{display:block;content:"";border:1px solid var(--border-ink);padding:20px}.saju-result h2{font-family:Yeon Sung,cursive;color:var(--primary-dark);text-align:center;margin-bottom:20px;font-size:1.8rem}.copy-btn{background:var(--primary);color:#fff;border:none;padding:8px 14px;font-family:Yeon Sung,cursive;border-radius:2px;cursor:pointer;font-size:1rem}.markdown-content{color:var(--text-ink);font-family:Gowun Batang,serif;font-size:1.05rem;overflow-x:auto}.markdown-content h1,.markdown-content h2,.markdown-content h3{color:var(--wood);font-family:Yeon Sung,cursive;margin-top:28px;margin-bottom:14px;border-bottom:1px solid var(--border-ink);display:inline-block;max-width:100%;word-break:keep-all}.markdown-content h2{font-size:1.4rem}.markdown-content strong{color:var(--accent);background:linear-gradient(to top,rgba(185,62,51,.1) 50%,transparent 50%);padding:0 2px}.markdown-content table{width:100%;border-collapse:collapse;margin:16px 0;border:2px solid var(--text-ink);table-layout:fixed;font-size:.75rem}.markdown-content th,.markdown-content td{border:1px solid var(--text-ink-light);padding:6px 2px;text-align:center;vertical-align:middle;word-break:keep-all}.markdown-content th{background:var(--primary-dark);color:var(--bg-paper);font-weight:400;font-family:Yeon Sung,cursive;font-size:.9rem}.markdown-content td{background:var(--bg-card)}@media (max-width: 480px){#root{padding:20px 10px}h1{font-size:2.2rem}.input-form{padding:24px 16px}.gender-option{padding:12px 20px}.markdown-content table{font-size:.65rem}.markdown-content th,.markdown-content td{padding:5px 1px}.markdown-content th{font-size:.7rem}}.loading-dots span{background:var(--text-ink)}.modal-overlay{position:fixed;top:0!important;left:0!important;width:100vw;height:100vh;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:9999;transform:none!important}.modal-content{background:var(--bg-paper);border:4px double var(--primary-dark);color:var(--text-ink);padding:30px 40px;border-radius:var(--radius);text-align:center;max-width:320px;box-shadow:0 10px 30px #0003}.modal-content p{margin-bottom:20px;font-size:1.1rem;line-height:1.6}.modal-close-btn{background:var(--primary);color:#fff;border:none;padding:10px 30px;font-family:Yeon Sung,cursive;font-size:1.1rem;border-radius:var(--radius-sm);cursor:pointer;transition:background .2s}.modal-close-btn:hover{background:var(--primary-dark)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-ink);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-ink-light)}.ad-container{display:none;justify-content:center;align-items:center;border-radius:var(--radius-sm);overflow:hidden;margin:16px 0}.ad-container:has(ins[data-ad-status=filled]){display:flex}@media (max-width: 768px){#root{padding:24px 16px}h1{font-size:1.5rem;margin-bottom:24px}.input-form{padding:24px 20px}.gender-option{padding:14px 24px}.menu-grid{grid-template-columns:repeat(2,1fr)}.result-info-bar{flex-direction:column;gap:12px;text-align:center}.partner-inputs{flex-direction:column;align-items:stretch}.partner-gender{justify-content:center}}@media (max-width: 480px){.input-form{padding:20px 16px}.gender-option{padding:12px 16px;flex:1}.gender-option .gender-icon{font-size:1.6rem}.date-inputs,.time-inputs{gap:8px}.input-with-unit input{width:75px;padding:10px 12px}.input-with-unit select{width:65px;padding:10px 12px}.calendar-selector{flex-direction:column;gap:8px}.calendar-option{justify-content:center}.submit-btn{padding:14px;font-size:1rem}.menu-grid{gap:8px}.menu-btn{padding:12px 6px}.menu-icon{font-size:1.3rem}.menu-label{font-size:.75rem}.markdown-content table{font-size:.6rem}.markdown-content th,.markdown-content td{padding:4px 1px}.markdown-content th{font-size:.65rem}}.footer{text-align:center;padding:32px 0 16px;margin-top:24px}.footer-content{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:8px}.footer-icon{font-size:.9rem;opacity:.5}.footer a{color:var(--text-muted);font-size:.8rem;text-decoration:none;transition:all .2s}.footer a:hover{color:var(--primary)}.copyright{font-size:.7rem;color:var(--text-muted);opacity:.5}
