:root{--bg:#faf7f2;--card:#fff;--accent:#a8324a;--accent-soft:#f3dde2;--text:#2b2420;--muted:#8a7f74;--border:#e7ddd2}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;padding:24px 16px 80px;font-family:Pretendard,Apple SD Gothic Neo,Malgun Gothic,sans-serif}.wrap{max-width:720px;margin:0 auto}h1{margin-bottom:4px;font-size:1.5rem}.sub{color:var(--muted);margin-bottom:24px;font-size:.9rem}.card{background:var(--card);border:1px solid var(--border);border-radius:14px;margin-bottom:12px;padding:16px}.card h2{margin:0 0 10px;font-size:1rem}label{color:var(--muted);margin:8px 0 4px;font-size:.85rem;display:block}label:first-child{margin-top:0}input,select{border:1px solid var(--border);background:#fffdfb;border-radius:8px;width:100%;padding:10px 12px;font-size:.95rem}.row{flex-wrap:wrap;gap:10px;display:flex}.row>div{flex:140px}.row>input,.row>select,.row>button{flex:80px;width:auto;min-width:0}.event-row{align-items:center;gap:8px;margin-bottom:8px;display:flex}.event-row select{flex:0 0 140px}.event-row input[type=number]{flex:1}button.remove-event{color:var(--muted);cursor:pointer;background:0 0;border:none;flex:none;padding:4px 8px;font-size:1.1rem}#addEvent{border:1px dashed var(--border);color:var(--accent);cursor:pointer;background:0 0;border-radius:8px;padding:8px 12px;font-size:.85rem}.submit-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:10px;width:100%;margin-top:18px;padding:14px;font-size:1rem;font-weight:600}.submit-btn:active{opacity:.85}#result{display:none}.summary-box{background:var(--accent-soft);border-radius:10px;margin-bottom:14px;padding:14px 16px;font-size:.92rem;line-height:1.6}.summary-box b{color:var(--accent)}.menu-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.menu-btn{border:1px solid var(--border);cursor:pointer;text-align:left;background:#fff;border-radius:10px;flex-direction:column;gap:2px;padding:14px 10px;font-size:.9rem;display:flex}.menu-btn .emoji{font-size:1.2rem}.menu-btn:active{background:var(--accent-soft)}.candidate-tab.active-tab,.gender-btn.active-tab{background:var(--accent);color:#fff;border-color:var(--accent)}.gender-btn{flex:1}.answer-box{border:1px solid var(--border);white-space:pre-wrap;background:#fff;border-radius:10px;margin-top:14px;padding:14px 16px;font-size:.9rem;line-height:1.7}.badge{color:var(--muted);background:#eee;border-radius:999px;margin-left:6px;padding:2px 8px;font-size:.7rem;display:inline-block}.palace-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.palace-table{border-collapse:collapse;width:100%;min-width:560px;margin-top:10px;font-size:.82rem}.palace-table td{border:1px solid var(--border);vertical-align:top;padding:4px 6px;line-height:1.35}.palace-table .pname{color:var(--accent);font-weight:600}details summary{cursor:pointer;color:var(--muted);margin-top:10px;font-size:.85rem}@media (width<=420px){.menu-grid{grid-template-columns:1fr}}.mode-tabs{z-index:5;background:var(--bg);gap:8px;margin:0 0 16px;padding:8px 0;display:flex;position:sticky;top:0}.mode-tab{border:1px solid var(--border);cursor:pointer;color:var(--muted);background:#fff;border-radius:10px;flex:1;padding:12px;font-size:.95rem;font-weight:600}.mode-tab.active{background:var(--accent);color:#fff;border-color:var(--accent)}body.mode-general .expert-only,body.mode-expert .general-only{display:none!important}.compass-nav{grid-template-columns:1fr 1fr;gap:8px;margin-top:14px;display:grid}.compass-items .compass-backbtn{text-align:center;color:#6f685b}.compass{color:#24211c;word-break:keep-all;background:#f4efe4;border-radius:6px;margin:28px 0;padding:28px 20px;line-height:1.85}.compass h2,.compass-q{margin:0;font-family:Gowun Batang,serif;font-weight:400}.compass h2{margin-bottom:18px;font-size:1.4rem;line-height:1.5}.compass button{min-height:52px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid #cfc8b8;border-radius:4px;padding:8px}.compass button.on{color:#f4efe4;background:#2c4a6e;border-color:#2c4a6e}.compass-once{color:#6f685b;margin:-8px 0 16px;font-size:.92rem}.compass-areas{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.compass-items{border-top:1px solid #cfc8b8;gap:8px;margin-top:16px;padding-top:16px;display:grid}.compass-items[hidden],.compass-answer[hidden]{display:none}.compass-items button{text-align:left;padding:8px 14px}.compass-kicker{color:#2c4a6e;font-size:.9rem}.compass-q{margin:2px 0 14px;font-size:1.5rem}.compass-answer h4{color:#2c4a6e;margin:18px 0 2px;font-size:.95rem}.compass-answer p{margin:0 0 8px}.compass-two{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:0 20px;display:grid}.compass-answer .keep{margin:0 0 8px;padding:6px 12px;font-size:.9rem}.compass-care{background:#fff;border-left:3px solid #2c4a6e;margin-bottom:20px;padding:12px 14px}.compass-care a{color:#2c4a6e;font-weight:700}.compass-foot{color:#6f685b;font-size:.85rem;margin-top:18px!important}.sinsu{font-size:1rem;line-height:1.95}.sinsu-title{color:var(--accent);margin:4px 0 6px;font-size:1.35rem}.sinsu h3{border-bottom:1px solid var(--border);margin:26px 0 8px;padding-bottom:6px;font-size:1.08rem}.sinsu h4{margin:18px 0 4px;font-size:1rem}.sinsu h4 small{color:var(--muted);font-weight:400}.sinsu p{word-break:keep-all;margin:0 0 12px}.sinsu-note{background:var(--accent-soft);border-radius:8px;padding:10px 12px;font-size:.9rem}.sinsu-weather{flex-wrap:wrap;gap:6px;margin:12px 0 4px;display:flex}.sinsu-weather span{border:1px solid var(--border);background:#fff;border-radius:999px;padding:4px 10px;font-size:.85rem}.sinsu-month{border-left:3px solid var(--accent-soft);margin:10px 0;padding:2px 0 2px 12px}.sinsu-month b{margin-bottom:2px;display:block}.sinsu-month p{margin:0}.saju-table{border-collapse:collapse;width:100%;margin:8px 0 16px;font-size:.9rem}.saju-table th,.saju-table td{border:1px solid var(--border);text-align:center;padding:5px 6px}.saju-scroll{overflow-x:auto}.share-bar{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:12px;display:flex}.share-bar button{width:auto;padding:8px 12px;font-size:.9rem}.share-msg{color:var(--muted);font-size:.85rem}.sinsu-foot{color:var(--muted);margin-top:24px;font-size:.85rem}body.mode-general{--bg:#f4efe4;--card:transparent;--accent:#2c4a6e;--accent-soft:#e3dccd;--text:#24211c;--muted:#5c574d;--border:#cfc8b8;font-family:Noto Sans KR,Malgun Gothic,sans-serif}body.mode-general .card{box-shadow:none}body.mode-general input,body.mode-general select,body.mode-general .menu-btn,body.mode-general .mode-tab{background:0 0;border-radius:4px}body.mode-general .gender-btn.active-tab,body.mode-general .mode-tab.active{color:#f4efe4;background:#2c4a6e}body.mode-general .submit-btn{color:#f4efe4;background:#24211c;border-radius:4px;font-weight:400}.ask-grid{grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;display:grid}.ask-grid .menu-btn{text-align:center;word-break:keep-all;width:auto;min-width:0;margin:0;padding:12px 6px}body.mode-general .ask-grid .on{color:#f4efe4;background:#2c4a6e}.compass-pick[hidden]{display:none}.book-hero{margin:8px -16px 24px;padding:36px 32px 0;overflow:hidden}.book-kicker{letter-spacing:3px;color:#5c574d;font-size:.875rem}.book-hero h1{word-break:keep-all;margin:22px 0;font-family:Gowun Batang,serif;font-size:clamp(1.6rem,8vw,2.15rem);font-weight:400;line-height:1.42}.book-hero p{color:#4a463d;word-break:keep-all;margin:0;line-height:1.75}.book-hero svg{width:calc(100% + 64px);height:150px;margin:28px -32px 0;display:block}.book-private{color:#f4efe4;text-align:center;background:#2c4a6e;margin:-24px -16px 24px;padding:0 16px 14px;font-size:.82rem}.book-cover{color:#f4efe4;background:#2c4a6e;margin:0 -16px 32px;padding:52px 32px 44px}.book-cover .book-kicker{color:#f4efe4;letter-spacing:2px}.book-cover svg{width:100%;max-width:280px;height:auto;margin:28px auto;display:block}.book-cover h2{word-break:keep-all;margin:0 0 14px;font-family:Gowun Batang,serif;font-size:2.05rem;font-weight:400;line-height:1.4}.book-cover p{word-break:keep-all;margin:0;line-height:1.75}.sinsu{color:#24211c}.sinsu h3{word-break:keep-all;border:0;margin:24px 0 14px;padding:0;font-family:Gowun Batang,serif;font-size:1.65rem;font-weight:400;line-height:1.4}.sinsu h3[data-ch]:before{content:attr(data-ch);letter-spacing:2px;color:#5c574d;margin-bottom:8px;font-family:Noto Sans KR,sans-serif;font-size:.875rem;display:block}.book-months{grid-template-columns:repeat(12,minmax(0,1fr));gap:3px;margin:14px 0 8px;display:grid}.book-months button{color:#24211c;cursor:pointer;border:1px solid #0000;border-radius:3px;width:auto;min-width:0;height:60px;margin:0;padding:0;font:12px inherit}.book-months .길{color:#f4efe4;background:#2c4a6e}.book-months .평{background:#c4cbd0}.book-months .흉{background:#e3dccd}.book-months button.on{border:2px solid #24211c}.book-hint{color:#5c574d;font-size:.82rem}.book-month[hidden]{display:none}.book-month h4{margin:18px 0 8px;font-family:Gowun Batang,serif;font-size:1.4rem;font-weight:400}.book-caution{color:#f4efe4;background:#24211c;margin:12px -16px 0;padding:52px 32px 40px}.book-caution .book-kicker{color:#bdb6a8;letter-spacing:2px}.sinsu .book-caution h3.book-ct{border:0;margin:30px 0 22px;padding:0;font-size:2rem;line-height:1.5}.book-caution p{color:#e4ded2;line-height:1.9}.book-when{border-top:1px solid #5c574d;margin-top:26px;padding-top:16px}.book-when small{color:#bdb6a8;margin-bottom:6px;font-size:.875rem;display:block}body.mode-general #generalResult{background:0 0;border:0;margin:0 -16px;padding:0 16px}.compass-answer{border-top:0;margin-top:0;padding-top:0}body.mode-general .share-bar button{color:#24211c;background:0 0;border:1px solid #cfc8b8;border-radius:4px}.book-tabs{flex-wrap:wrap;gap:6px;scroll-margin-top:72px;display:flex}.book-count{text-align:right;color:#5c574d;margin:6px 0 4px;font-size:.82rem}.book-pager{gap:8px;margin-top:28px;display:flex}.book-pager button{color:#24211c;width:auto;min-height:52px;font:inherit;cursor:pointer;background:0 0;border:1px solid #cfc8b8;border-radius:4px;flex:1 1 0;margin:0}.book-pager button.next{color:#f4efe4;background:#24211c;border-color:#24211c;flex:2 1 0}.book-tabs button{text-align:center;white-space:nowrap;color:#24211c;width:auto;min-height:44px;font:inherit;cursor:pointer;background:0 0;border:1px solid #cfc8b8;border-radius:4px;flex:auto;margin:0;padding:6px 14px;font-size:.9rem}.book-tabs button.on{color:#f4efe4;background:#2c4a6e;border-color:#2c4a6e}.book-panel[hidden]{display:none}.compass{background:0 0;border-radius:0;margin:0;padding:20px 0 0}.hub-back{color:#6f685b;padding:12px 0 0;font-size:.9rem;text-decoration:none;display:inline-block}.pick-row,.date-row{flex-wrap:nowrap}@media (width<=480px){.date-row{flex-wrap:wrap}.date-row select{flex:100%!important}}@media (width<=360px){.pick-row{flex-wrap:wrap}.pick-row>.row{flex:100%!important}.book-months{grid-template-columns:repeat(6,minmax(0,1fr))}.book-months button{height:44px}.compass-areas{grid-template-columns:repeat(2,minmax(0,1fr))}}html[data-tint] body.mode-general{--bg:#101b33;--card:#ffffff0a;--accent:var(--tint);--accent-soft:#ffffff14;--text:#f4efe4;--muted:#b7bfcd;--border:#d9b66f47}html[data-tint] body.mode-general input,html[data-tint] body.mode-general select,html[data-tint] body.mode-general .menu-btn{color:inherit}html[data-tint] body.mode-general select option{background:#101b33}html[data-tint] body.mode-general .gender-btn.active-tab,html[data-tint] body.mode-general .ask-grid .on{background:var(--tint);border-color:var(--tint);color:#0b1222}html[data-tint] body.mode-general .submit-btn{background:var(--tint);color:#0b1222;font-weight:500}html[data-tint] .hub-back{color:#b7bfcd}html[data-tint] .book-private{color:#b7bfcd;background:0 0;margin:0 0 18px;padding:0}html[data-tint] body.mode-general #generalResult{--bg:#f4efe4;--card:transparent;--accent:#2c4a6e;--accent-soft:#e3dccd;--text:#24211c;--muted:#5c574d;--border:#cfc8b8;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#24211c;background:#f4efe4;border-radius:6px;margin:24px -16px 0;padding:0 16px 32px;overflow:hidden}html[data-tint] body.mode-general #generalResult .gender-btn.active-tab,html[data-tint] body.mode-general #generalResult .ask-grid .on{color:#f4efe4;background:#2c4a6e;border-color:#2c4a6e}
