:root{--ink:#0b0d14;--ink-2:#12151f;--ink-3:#1b1f2c;--line:#2a2f3f;--paper:#ece6d8;--paper-dim:#a8a293;--paper-faint:#6b6759;--gold:#d8b36a;--wood:#4fae8a;--fire:#ef5b45;--earth:#e2b04a;--metal:#d9d4c7;--water:#4a7fd0;--serif:"Nanum Myeongjo", serif;--sans:"Pretendard Variable", Pretendard, -apple-system, system-ui, sans-serif;--mono:var(--sans);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--ink);color:var(--paper);font-family:var(--sans);font-variant-numeric:tabular-nums;margin:0}body{grid-template-rows:auto auto 1fr auto;min-height:100vh;display:grid}.top{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:18px 28px;display:flex}.brand{align-items:baseline;gap:10px;display:flex}.brand .mark{font-family:var(--serif);color:var(--gold);font-size:26px;font-weight:800}.brand .name{font-family:var(--serif);letter-spacing:.04em;font-size:22px;font-weight:800}.brand .draft{color:var(--paper-faint);border:1px solid var(--line);border-radius:99px;padding:2px 8px;font-size:12px}.who{flex-wrap:wrap;gap:14px;display:flex}.who label{color:var(--paper-dim);letter-spacing:.02em;gap:4px;font-size:11px;display:grid}.who input,.who select{background:var(--ink-2);color:var(--paper);border:1px solid var(--line);font:14px var(--mono);border-radius:6px;padding:6px 8px}.tabs{border-bottom:1px solid var(--line);gap:0;padding:0 28px;display:flex;overflow-x:auto}.tabs a{all:unset;cursor:pointer;color:var(--paper-dim);border-bottom:2px solid #0000;gap:2px;padding:14px 22px 12px;display:grid}.tabs a b{font-family:var(--serif);white-space:nowrap;font-size:16px;font-weight:700}.tabs a span{color:var(--paper-faint);font-size:11px}.tabs a.on{color:var(--paper);border-bottom-color:var(--gold)}.stage{grid-template-columns:minmax(0,1fr) 380px;min-height:0;display:grid}.scene{background:radial-gradient(ellipse at 50% 45%, #161a28 0%, var(--ink) 70%);align-content:start;place-items:start center;min-height:680px;padding:28px 20px;display:grid;position:relative;overflow:hidden}.panel{border-left:1px solid var(--line);background:var(--ink-2);padding:22px 24px;overflow-y:auto}.foot{color:var(--paper-faint);border-top:1px solid var(--line);flex-wrap:wrap;gap:18px;padding:10px 28px;font-size:11px;display:flex}.foot .assumed{color:var(--gold)}@media (width<=980px){.stage{grid-template-columns:1fr}.panel{border-left:0;border-top:1px solid var(--line)}.top,.tabs{padding-left:16px;padding-right:16px}.scene{min-height:0;padding:12px}}.p-date{font:12px var(--mono);color:var(--paper-dim)}.p-ganji{gap:14px;margin:10px 0 4px;display:flex}.p-ganji div{justify-items:center;gap:2px;display:grid}.p-ganji .hz{font-family:var(--serif);font-size:30px;font-weight:800;line-height:1.05;display:grid}.p-ganji small{color:var(--paper-faint);font-size:10px}.p-ganji .day .hz{color:var(--gold)}.p-facts{color:var(--paper-dim);margin:8px 0 18px;font-size:12.5px;line-height:1.7}.p-facts b{color:var(--paper);font-weight:500}.p-h{font-family:var(--serif);justify-content:space-between;align-items:baseline;margin:20px 0 10px;font-size:15px;font-weight:700;display:flex}.p-h .total{font:500 28px var(--mono);color:var(--gold)}.bars{gap:9px;display:grid}.bar{grid-template-columns:36px 1fr 32px;align-items:center;gap:10px;font-size:13px;display:grid}.bar .track{background:var(--ink-3);border-radius:3px;height:6px;overflow:hidden}.bar .fill{background:linear-gradient(90deg, #6b5a35, var(--gold));border-radius:3px;height:100%;transition:width .5s}.bar .n{font:12px var(--mono);text-align:right;color:var(--paper-dim)}.advice{gap:10px;margin-top:14px;display:grid}.advice div{border:1px solid var(--line);background:var(--ink);border-radius:8px;padding:10px 12px;font-size:13px;line-height:1.6}.advice b{font-family:var(--serif);color:var(--gold);margin-right:6px}.advice em{color:var(--paper-faint);margin-top:4px;font-size:10.5px;font-style:normal;display:block}.why{color:var(--paper-dim);margin:0;padding-left:0;font-size:11.5px;line-height:1.6;list-style:none}.why li{border-bottom:1px dashed var(--line);grid-template-columns:34px 1fr;gap:6px;padding:3px 0;display:grid}.why .side{color:var(--paper-faint)}.why .d{font-family:var(--mono);color:var(--paper-faint);font-size:11px}.why .d.up{color:var(--wood)}.why .d.down{color:var(--fire)}.play-note{color:var(--paper-faint);border:1px dashed var(--line);border-radius:8px;margin-top:14px;padding:8px 12px;font-size:11px;line-height:1.6}.ctrl{border:1px solid var(--line);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0b0d14cc;border-radius:99px;align-items:center;gap:10px;margin-top:14px;padding:8px 12px;display:flex;position:relative}.ctrl button{all:unset;cursor:pointer;width:30px;height:30px;color:var(--paper);border-radius:50%;place-items:center;display:grid}.ctrl button:hover{background:var(--ink-3)}.ctrl input[type=range]{width:220px;accent-color:var(--gold)}.ctrl .d{font:12px var(--mono);text-align:center;min-width:92px}.scene svg text{font-family:var(--sans)}.glyph{font-family:"Noto Sans Symbols 2",Segoe UI Symbol,DejaVu Sans,sans-serif}.legend{color:var(--paper-faint);max-width:240px;font-size:11px;line-height:1.7;position:absolute;top:16px;left:20px}.legend b{color:var(--paper-dim);font-weight:500}@media (width<=980px){.scene{flex-direction:column;align-items:center;gap:12px;padding-bottom:20px;display:flex}.legend{order:3;max-width:none;position:static}.ctrl{order:2;position:static;transform:none}.ctrl input[type=range]{width:120px}.tabs a{padding:12px 14px 10px}.tabs a span{display:none}}.cal{gap:14px;width:100%;max-width:920px;display:grid}.cal-head{grid-template-columns:auto 1fr auto;align-items:center;gap:12px;display:grid}.cal-head>button{all:unset;cursor:pointer;border:1px solid var(--line);width:36px;height:36px;color:var(--paper-dim);border-radius:50%;place-items:center;font-size:20px;display:grid}.cal-head>button:hover{color:var(--paper);border-color:var(--paper-faint)}.cal-title{justify-items:center;gap:2px;display:grid}.cal-title b{font-family:var(--serif);font-size:24px;font-weight:800}.cal-title span{color:var(--paper-faint);font-size:11.5px}.cal-legend{color:var(--paper-faint);grid-column:1/-1;justify-content:center;align-items:center;gap:14px;font-size:11px;display:flex}.cal-legend i{border-radius:2px;width:14px;height:3px;margin-right:-8px;display:inline-block}.lg-score{background:var(--gold)}.lg-retro{background:var(--fire)}.lg-term{background:var(--wood)}.cal-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.cal-w{color:var(--paper-faint);text-align:center;padding:4px 0;font-size:11px}.cal-w.sun,.cal-c .n.sun{color:#e0816f}.cal-w.sat,.cal-c .n.sat{color:#7fa3db}.cal-c{all:unset;box-sizing:border-box;cursor:pointer;background:var(--ink-2);border:1px solid var(--ink-3);border-radius:8px;grid-template-rows:auto auto auto 1fr;grid-template-columns:1fr auto;align-content:start;gap:2px 4px;min-height:96px;padding:7px 8px 10px;display:grid;position:relative;overflow:hidden}.cal-c:hover{border-color:var(--line)}.cal-c.out{opacity:.38}.cal-c.sel{border-color:var(--gold);background:#171a26}.cal-c.today .n{color:var(--ink);background:var(--gold);border-radius:99px;justify-self:start;padding:0 6px}.cal-c.retro:before{content:"";background:var(--fire);opacity:.7;height:2px;position:absolute;top:0;left:0;right:0}.cal-c .n{font:500 15px var(--mono)}.cal-c .moon{width:14px;height:14px}.cal-c .lu{font:10.5px var(--mono);color:var(--paper-faint)}.cal-c .gj{font-family:var(--serif);color:var(--paper-dim);text-align:right;font-size:12px;font-weight:800}.cal-c .term{color:var(--wood);grid-column:1/-1;font-size:10.5px}.cal-c .plans{grid-column:1/-1;align-self:end;gap:2px;display:grid}.cal-c .plans em{color:var(--paper);white-space:nowrap;text-overflow:ellipsis;background:#232838;border-radius:4px;padding:1px 5px;font-size:11px;font-style:normal;overflow:hidden}.cal-c .plans .dot{display:none}.cal-c .sc{background:linear-gradient(90deg, var(--gold) calc(var(--s) * 100%), var(--ink-3) 0);border-radius:2px;height:2px;position:absolute;bottom:5px;left:8px;right:8px}.cal-day{border-top:1px solid var(--line);gap:12px;padding-top:16px;display:grid}.cd-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.cd-head b{font-family:var(--serif);font-size:19px;font-weight:800}.cd-head span{color:var(--gold);font-size:13px}.cd-list{gap:10px;display:grid}.cd-empty{color:var(--paper-faint);margin:0;font-size:13px}.cd-card{border:1px solid var(--line);background:var(--ink-2);border-radius:10px;padding:12px 14px}.cd-card header{grid-template-columns:34px 1fr auto;align-items:center;gap:10px;display:grid}.cd-card .wx{text-align:center;color:var(--gold);font-size:24px}.cd-card header b{font-size:15px;display:block}.cd-card header small{color:var(--paper-faint);font-size:11.5px}.cd-card header button{all:unset;cursor:pointer;width:28px;height:28px;color:var(--paper-faint);border-radius:50%;place-items:center;font-size:18px;display:grid}.cd-card header button:hover{background:var(--ink-3);color:var(--paper)}.cd-card .hd{font-family:var(--serif);margin:10px 0 8px;font-size:15px;font-weight:700;line-height:1.55}.cd-card ul{gap:5px;margin:0;padding:0;list-style:none;display:grid}.cd-card li{color:var(--paper-dim);grid-template-columns:44px 1fr;gap:8px;font-size:12.5px;line-height:1.6;display:grid}.cd-card li span{font:11px var(--mono);color:var(--paper-faint);padding-top:2px}.cd-form{grid-template-columns:1fr auto auto auto;gap:8px;display:grid}.cd-form input,.cd-form select{background:var(--ink-2);color:var(--paper);border:1px solid var(--line);font:14px var(--sans);border-radius:6px;min-width:0;padding:8px 10px}.cd-form button{all:unset;cursor:pointer;background:var(--gold);color:var(--ink);text-align:center;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:600}.cd-note{color:var(--paper-faint);margin:0;font-size:11px;line-height:1.6}@media (width<=980px){.cal-c{grid-template-columns:1fr;min-height:64px;padding:5px 5px 8px}.cal-c .gj,.cal-c .lu,.cal-c .term{display:none}.cal-c .moon{width:11px;height:11px;position:absolute;top:6px;right:5px}.cal-c .plans em{display:none}.cal-c .plans .dot{background:var(--gold);border-radius:50%;width:6px;height:6px;display:block}.cal-legend{flex-wrap:wrap}.cd-form{grid-template-columns:1fr 1fr}.cd-form input[name=title]{grid-column:1/-1}}.who input,.p-date,.p-h .total,.bar .n,.why .d,.ctrl .d,.cal-c .n,.cal-c .lu,.cd-card li span{font-variant-numeric:tabular-nums}@media (width>=981px){.stage{align-items:start}.scene[data-scene=sky]{min-height:0;max-height:100vh;position:sticky;top:0}}.cal-c.past:not(.sel){opacity:.55}.cal-c.past.out{opacity:.25}.cd-past{color:var(--paper-dim);border:1px dashed var(--line);border-radius:8px;margin:0;padding:10px 12px;font-size:13px}.cd-card.done{opacity:.6}.p-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.p-pair{grid-template-columns:auto auto auto;place-items:center;gap:2px 6px;display:grid}.p-pair small{color:var(--paper-faint);grid-column:1/-1;font-size:10.5px}.p-link{color:var(--gold);text-align:center;min-width:26px;font-size:11px}.cd-head b{align-items:center;gap:10px;display:flex}.cd-head b small{font-family:var(--sans);color:var(--paper-faint);font-size:12px;font-weight:400}h1.brand{font-size:inherit;font-weight:inherit;margin:0}h1.brand a{color:inherit;align-items:baseline;gap:10px;text-decoration:none;display:flex}.about{border-top:1px solid var(--line);background:var(--ink);grid-template-columns:1fr 1fr;gap:40px;padding:36px 28px 30px;display:grid}.about h2{font-family:var(--serif);margin:0 0 10px;font-size:18px;font-weight:800}.about p{color:var(--paper-dim);margin:0 0 14px;font-size:13px;line-height:1.75}.about .fine{color:var(--paper-faint);font-size:12px}.years{border-collapse:collapse;width:100%;font-size:12.5px}.years th{text-align:left;white-space:nowrap;color:var(--paper);padding:5px 14px 5px 0;font-weight:500}.years th .hz{font-family:var(--serif);color:var(--gold);margin-right:4px;font-weight:800}.years td{color:var(--paper-faint);word-spacing:6px;padding:5px 0}.years td b{color:var(--gold);font-weight:600}.years tr+tr{border-top:1px solid var(--ink-3)}.pages{gap:12px;margin:0 0 16px;padding:0;list-style:none;display:grid}.pages a{color:var(--paper);border-bottom:1px solid var(--gold);font-size:14px;font-weight:600;text-decoration:none}.pages span{color:var(--paper-faint);margin-top:3px;font-size:12.5px;line-height:1.65;display:block}@media (width<=980px){.about{grid-template-columns:1fr;gap:28px;padding:28px 16px}}
