:root{--bg:#0d0b1f;--card:#1e1a3ad1;--ink:#efeaff;--muted:#b9b1d9;--line:#beaaff38;--accent:#e7c77d;--glow:#a078ff59;--wood:#2a7d4f;--fire:#c8432f;--earth:#9a6f1c;--metal:#646c76;--water:#2c5aa0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root{--bg:#0d0b1f}}*{box-sizing:border-box}body{background:radial-gradient(120% 80% at 50% -10%, #2a1f5c 0%, #15112f 45%, var(--bg) 100%) fixed, var(--bg);min-height:100vh;color:var(--ink);margin:0;font:16px/1.6 Pretendard,Apple SD Gothic Neo,Malgun Gothic,system-ui,sans-serif}.top,main,.foot{max-width:760px;margin:0 auto;padding:0 16px}.top{padding-top:32px}h1{color:var(--accent);letter-spacing:-.02em;margin:0;font-size:28px}h2{margin:0 0 12px;font-size:18px}h2 small,.sub,.hint,.muted{color:var(--muted);font-size:14px;font-weight:400}.card{background:var(--card);border:1px solid var(--line);box-shadow:0 8px 30px #00000059, 0 0 24px var(--glow) inset;border-radius:14px;margin:16px 0;padding:20px;animation:.7s ease-out both rise;position:relative}fieldset{border:0;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:0 0 12px;padding:0;display:flex}legend{width:100%;margin-bottom:4px;font-weight:600}.grid3{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}label{flex-direction:column;gap:4px;font-size:14px;display:flex}fieldset label,label.check{flex-direction:row;align-items:center;gap:6px;font-size:15px}input[type=number],input[type=text],input:not([type]),select{width:100%;font:inherit;border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:10px;min-width:0;padding:10px}input:disabled{opacity:.4}.opts{margin:8px 0 12px}.opts summary{cursor:pointer;color:var(--accent);font-size:14px}.opts label{margin-top:10px}button{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:12px;width:100%;padding:14px;font-family:inherit;font-size:17px;font-weight:600;line-height:1.2}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.err{color:var(--fire);min-height:1.2em;margin:4px 0 8px;font-size:14px}.scroll{overflow-x:auto}.chart{border-collapse:collapse;text-align:center;width:100%;min-width:420px}.chart th,.chart td{border-bottom:1px solid var(--line);padding:8px 6px;font-size:14px}.chart thead th{color:var(--muted);font-weight:600}.chart tbody th{text-align:left;color:var(--muted);white-space:nowrap;font-weight:500}.glyph{color:#fff;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;width:54px;height:60px;font-size:28px;font-weight:700;line-height:1;display:inline-flex}.glyph small{opacity:.9;margin-top:4px;font-size:12px;font-weight:500}.el-wood{background:var(--wood)}.el-fire{background:var(--fire)}.el-earth{background:var(--earth)}.el-metal{background:var(--metal)}.el-water{background:var(--water)}.tag{border:1px solid var(--line);border-radius:999px;margin:2px;padding:2px 8px;font-size:12px;display:inline-block}.bar{grid-template-columns:28px 1fr 24px;align-items:center;gap:8px;margin:6px 0;display:grid}.bar i{border-radius:6px;min-width:2px;height:12px;display:block}.bar b{text-align:right;font-weight:600}.strip{gap:8px;margin:0 0 16px;padding:0;list-style:none;display:flex;overflow-x:auto}.strip li{text-align:center;border:1px solid var(--line);border-radius:10px;flex:none;padding:8px 10px;font-size:15px}.strip b{color:var(--muted);font-size:12px;font-weight:500;display:block}.strip small{color:var(--muted);font-size:12px;display:block}.foot{color:var(--muted);padding-bottom:40px;font-size:13px}button.ghost{color:var(--accent);border:1px solid var(--line);background:0 0;margin-top:8px}.card,main{min-width:0}.scroll{max-width:100%}@media (prefers-color-scheme:dark){button:not(.ghost):not(.term){color:#1b1916}}button.term{all:unset;cursor:pointer;border-bottom:1px dotted var(--muted)}button.term:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.termInfo{min-height:2.6em;color:var(--muted);font-size:14px}.tips{margin:12px 0 0;padding-left:18px;line-height:1.6}@media (width<=480px){.card{padding:14px 10px}.chart{table-layout:fixed;min-width:0}.chart th,.chart td{word-break:keep-all;padding:6px 1px;font-size:12px}.chart tbody th{white-space:normal;width:64px;font-size:11px}.glyph{border-radius:8px;width:44px;height:50px;font-size:23px}.glyph small{margin-top:2px;font-size:11px}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}#resultTitle:focus{outline:none}.lead{margin:4px 0 8px;font-size:1.1em;font-weight:700}#newyear h3{margin:14px 0 4px;font-size:1em}.basis{grid-template-columns:max-content 1fr;gap:6px 12px;margin:10px 0;font-size:14px;display:grid}.basis dt{color:var(--muted);font-weight:600}.basis dd{margin:0}@media (width<=480px){.basis{grid-template-columns:1fr}.basis dd{margin-bottom:6px}}button.small,.small{width:auto;margin:4px 4px 0 0;padding:6px 12px;font-size:14px;display:inline-block}.filebtn{cursor:pointer;border:1px solid var(--line);color:var(--accent);border-radius:10px}.filebtn input{opacity:0;width:1px;height:1px;position:absolute}.filebtn:focus-within{outline:2px solid var(--accent)}a{color:var(--accent);text-underline-offset:3px}a:visited{color:var(--accent)}.linklike{color:var(--accent);text-underline-offset:3px;cursor:pointer;text-decoration:underline}.cal{border-collapse:collapse;table-layout:fixed;text-align:center;width:100%;font-size:13px}.cal th{color:var(--muted);padding:4px 0;font-weight:500}.cal td{border:1px solid var(--line);vertical-align:top;padding:4px 0}.cal td b{color:var(--muted);font-size:12px;font-weight:500;display:block}.cal td.today{outline:2px solid var(--accent);outline-offset:-2px;font-weight:700}.terms{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0;padding:0;font-size:14px;list-style:none;display:grid}.terms li{border:1px solid var(--line);border-radius:10px;flex-wrap:wrap;align-items:baseline;gap:0 6px;padding:6px 8px;display:flex}.terms li span{color:var(--muted);font-size:13px}.terms li small{color:var(--accent);font-size:12px}.terms li.past{opacity:.6}.terms li.next{outline:2px solid var(--accent);outline-offset:-2px}.soon{border:1px dashed var(--line);border-radius:12px;margin-top:12px;padding:12px 14px}.soon h3{margin:0 0 6px}.soon ol{margin:8px 0 0;padding-left:20px}.sitenav{gap:16px;margin-bottom:8px;font-size:15px;display:flex}.sitenav a{color:var(--muted);padding:10px 0;text-decoration:none}.sitenav a[aria-current=page]{color:var(--accent);font-weight:700}.jump{z-index:2;background:var(--bg);gap:6px;padding:8px 0;display:flex;position:sticky;top:0;overflow-x:auto}.jump a{border:1px solid var(--line);color:var(--accent);border-radius:999px;flex:none;padding:8px 12px;font-size:14px;text-decoration:none}.group{color:var(--accent);align-items:center;gap:8px;margin:24px 0 4px;scroll-margin-top:56px;font-size:18px;font-weight:700;display:flex}.group span{background:var(--accent);width:24px;height:24px;color:var(--card);border-radius:50%;justify-content:center;align-items:center;font-size:13px;display:inline-flex}.todayline{color:var(--accent);margin:8px 0 12px;font-size:24px;font-weight:700;line-height:1.4}.rels{margin:0;padding:0;list-style:none}.rels li{border-bottom:1px solid var(--line);padding:8px 0}.rels li:last-child{border-bottom:0}.report main{max-width:680px;margin:0 auto}.reporttools{flex-wrap:wrap;align-items:end;gap:8px;display:flex}.reporttools label{flex:200px}.rcover{text-align:center;padding:40px 16px 24px}.rcover h1{margin:8px 0;font-size:30px}.rkicker,.rmeta{color:var(--muted);margin:0;font-size:14px}.rlead{margin-top:16px;font-size:18px;font-weight:600}.rsec{margin:12px 0;padding:16px}.rsec h2{margin:0 0 8px;font-size:20px}.rsec h3{margin:12px 0 4px;font-size:16px}.rtoc,.ractions{margin:0;padding-left:22px}.rmonths{gap:8px;margin:0;padding:0;list-style:none;display:grid}.rmonths li{border-bottom:1px solid var(--line);padding:8px 0}.rmonths li p{margin:4px 0 0}.rmonths .tag{margin-left:8px}.theme-a .rsec{border-top:1px solid var(--line)}.theme-a .rcover h1{color:var(--accent);font-family:Noto Serif KR,Batang,serif}.theme-b .rsec{background:var(--card);border:1px solid var(--line);border-radius:14px}.theme-b .rcover{background:var(--accent);color:var(--card);border-radius:0 0 20px 20px}.theme-b .rcover .rkicker,.theme-b .rcover .rmeta{color:var(--card);opacity:.9}.theme-b .rcover h1,.theme-b .rcover .rlead{color:var(--card)}.theme-c{--bg:#15130f;--card:#1f1b16;--ink:#efe6d6;--muted:#b3a690;--line:#3b342a;--accent:#d8b46a;background:var(--bg);color:var(--ink)}.theme-c .rcover{border-bottom:1px solid var(--accent)}.theme-c .rcover h1{color:var(--accent);letter-spacing:.04em}.theme-c button:not(.ghost){color:#15130f}@media print{.noprint{display:none!important}body.report{color:#111;background:#fff}.theme-c{--bg:#fff;--card:#fff;--ink:#111;--muted:#555;--line:#ccc;--accent:#7a4b2a}.rsec{break-inside:avoid}.rcover{break-after:page}.rcover,.theme-b .rcover,.theme-b .rsec{color:#111;background:#fff}.rcover .rkicker,.rcover .rmeta,.rcover .rlead,.theme-b .rcover .rkicker,.theme-b .rcover .rmeta{color:#333;opacity:1}}.a2hs summary{cursor:pointer;color:var(--accent)}.a2hs ul{padding-left:18px}@media (display-mode:standalone){.a2hs{display:none}}@media print{.a2hs{display:none}}.words dt{margin-top:10px;font-weight:700}.words dd{margin:2px 0 0}.summary3 ul{margin:0;padding:0;list-style:none}.summary3 li{padding:6px 0}.summary3 li b{color:var(--accent);margin-right:6px}body:before,body:after{content:"";pointer-events:none;z-index:-1;position:fixed;inset:-50% -10%}body:before{opacity:.8;background-image:radial-gradient(1.5px 1.5px at 20px 30px,#fff,#0000),radial-gradient(1px 1px at 90px 120px,#e7d9ff,#0000),radial-gradient(1.5px 1.5px at 160px 60px,#fff6d8,#0000),radial-gradient(1px 1px at 230px 180px,#fff,#0000),radial-gradient(2px 2px at 300px 90px,#fff0c8e6,#0000),radial-gradient(1px 1px at 50px 220px,#cfc3ff,#0000);background-size:320px 260px;animation:120s linear infinite drift,6s ease-in-out infinite alternate twinkle}body:after{background-image:radial-gradient(3px 3px at 40px 80px,#e7c77d8c,#0000),radial-gradient(2px 2px at 200px 40px,#c8aaff80,#0000),radial-gradient(40% 30% at 15% 20%,#8c5aff2e,#0000 70%),radial-gradient(35% 25% at 85% 70%,#e7c77d1f,#0000 70%);background-size:260px 300px,260px 300px,100% 100%,100% 100%;animation:60s linear infinite dust}@keyframes drift{to{transform:translateY(-260px)}}@keyframes dust{0%{transform:translate(0,0)}50%{transform:translate(-30px,-150px)}to{transform:translateY(-300px)}}@keyframes twinkle{0%{opacity:.55}to{opacity:.95}}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.card:hover{animation:4s ease-in-out infinite float}h1{text-shadow:0 0 18px #e7c77d73}button:not(.ghost):not(.term){color:#1a1430;background-color:#e0bd6e;background-image:linear-gradient(135deg,#f0d48f,#c9a14f);box-shadow:0 0 18px #e7c77d59}button.ghost{color:var(--accent);border:1px solid var(--line);background:0 0}input[type=number],input[type=text],input:not([type]),select{background:#0a081e99}@media (prefers-reduced-motion:reduce){body:before,body:after,.card,.card:hover{animation:none!important}}@media print{body:before,body:after{display:none}body{color:#111;background:#fff}.card{box-shadow:none;animation:none}}.intro{z-index:50;background:radial-gradient(60% 50% at 50% 42%,#301c6ef7,#080616fc 70%);flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:16px;animation:.9s ease-out both introIn;display:flex;position:fixed;inset:0}.intro-burst{pointer-events:none;position:absolute;inset:0;overflow:hidden}.intro-core{background:#fff8e6;border-radius:50%;width:16px;height:16px;margin:-8px;animation:4.8s ease-out both corePulse;position:absolute;top:42%;left:50%;box-shadow:0 0 30px 12px #ffe8aacc,0 0 90px 40px #a078ff73}.intro-burst i{width:var(--s);height:var(--s);margin:calc(var(--s) / -2);opacity:0;transform:rotate(var(--a)) translateX(0);animation:spark 2.4s var(--t) cubic-bezier(.2, .7, .3, 1) infinite;background:#fff3cf;border-radius:50%;position:absolute;top:42%;left:50%;box-shadow:0 0 8px 2px #ffe6a0cc}.intro-say{text-align:center;color:#f6ecd2;text-shadow:0 0 14px #e7c77d99;opacity:0;max-width:22em;min-height:3.2em;margin:0;font-size:20px;line-height:1.6;position:relative}.intro-say.show{animation:.8s ease-out forwards sayIn}.intro-skip{width:auto;padding:10px 16px;position:absolute;bottom:24px;right:16px}.intro-out{animation:.4s ease-in forwards introOut}@keyframes introIn{0%{opacity:0}to{opacity:1}}@keyframes introOut{to{opacity:0;transform:scale(1.04)}}@keyframes corePulse{0%{opacity:0;transform:scale(0)}15%{opacity:1;transform:scale(1.6)}40%{transform:scale(1)}to{opacity:.85;transform:scale(1.2)}}@keyframes spark{0%{opacity:0;transform:rotate(var(--a)) translateX(0) scale(.6)}20%{opacity:1}to{opacity:0;transform:rotate(var(--a)) translateX(var(--d)) scale(1)}}@keyframes sayIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.intro,.intro *{opacity:1!important;filter:none!important;animation:none!important}}.bubbles{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.bubble{border-radius:16px;max-width:85%;padding:10px 14px;line-height:1.6;animation:.5s ease-out both sayIn}.bubble.bot{border:1px solid var(--line);background:#785adc40;border-bottom-left-radius:4px;align-self:flex-start}.bubble.me{color:#1a1430;background:linear-gradient(135deg,#f0d48f,#c9a14f);border-bottom-right-radius:4px;align-self:flex-end}.choices{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.choices button{flex:40%;width:auto}@media (prefers-reduced-motion:reduce){.bubble{animation:none}}
