:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#1a1a1c;--surface:#25252a;--ink:#d3cec4;--ink-70:#b5b0a6;--grey:#a29c93;--danger:#c96b6b;--a-gilseop:#c29a4e;--a-somnium:#6f8fbf;--a-hanyeyeon:#9385bf;--a-self:#9a9791;--line:#d3cec424;--line-soft:#d3cec414;--line-strong:#d3cec44d;--hover:#d3cec408;--skeleton:#d3cec417;--gap-section:64px;--pad:22px;--rail:220px;--size-small:12px;--weight-small:400;--size-body:15px;--weight-body:400;--size-lead:17px;--weight-lead:400;--size-display:48px;--weight-display:800;--size-label:12px;--weight-label:800;--size-heading:17px;--weight-heading:800;--font-sans:"Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, monospace}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:var(--size-body);font-weight:var(--weight-body);-webkit-font-smoothing:antialiased;margin:0}.shell{grid-template-columns:var(--rail) 1fr;align-items:start;min-height:100%;display:grid}.rail{background:var(--surface);padding:var(--pad);gap:var(--pad);flex-direction:column;align-self:start;height:100vh;display:flex;position:sticky;top:0;overflow-y:auto}.rail-mark{flex-direction:column;gap:4px;display:flex}.rail-mark b{font-size:var(--size-body);font-weight:var(--weight-label);letter-spacing:-.01em}.rail-mark span{letter-spacing:.22em;color:var(--grey);font-size:9px}.rail-nav{flex-direction:column;display:flex}.rail-link{appearance:none;color:var(--ink-70);font:inherit;font-size:var(--size-body);cursor:pointer;background:0 0;border:0;border-left:2px solid #0000;align-items:baseline;gap:10px;padding:9px 0 9px 10px;display:flex}.rail-no{color:var(--grey);font-variant-numeric:tabular-nums;letter-spacing:.06em;font-size:10px}.rail-name{text-align:left;flex:auto}.rail-n{color:var(--grey);font-variant-numeric:tabular-nums;font-size:10px}.rail-link:hover{color:var(--ink)}.rail-link[aria-current=true]{color:var(--ink);font-weight:var(--weight-heading);border-left-color:var(--ink)}.rail-foot{flex-direction:column;gap:8px;margin-top:auto;display:flex}.rail-who{font-size:var(--size-small);color:var(--grey)}.rail-out{appearance:none;color:var(--grey);font:inherit;font-size:var(--size-small);text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.rail-out:hover{color:var(--ink)}.main{padding:var(--gap-section) var(--pad)}.wrap{max-width:1100px;margin:0 auto}.screen-title{font-size:var(--size-display);font-weight:var(--weight-display);letter-spacing:-.02em;margin:0 0 var(--pad)}.screen-note{color:var(--ink-70);font-size:var(--size-lead);margin:0}.screen-sub{color:var(--grey);font-size:var(--size-small);margin:8px 0 0}.section{margin-top:var(--gap-section)}.section-label{font-size:var(--size-label);font-weight:var(--weight-label);letter-spacing:.14em;text-transform:uppercase;color:var(--grey);margin:0 0 12px}.gate{min-height:100%;padding:var(--pad);place-items:center;display:grid}.gate-in{width:100%;max-width:340px}.gate h1{font-size:var(--size-display);font-weight:var(--weight-display);margin:0 0 var(--pad);letter-spacing:-.02em}.gate p{color:var(--ink-70);margin:0 0 var(--pad)}.field{margin-bottom:12px;display:block}.field span{font-size:var(--size-label);font-weight:var(--weight-label);letter-spacing:.14em;text-transform:uppercase;color:var(--grey);margin-bottom:6px;display:block}.field input{background:var(--surface);width:100%;color:var(--ink);border:1px solid var(--surface);font:inherit;font-size:var(--size-body);border-radius:3px;padding:10px 12px}.field input:focus{outline:2px solid var(--ink);outline-offset:1px}.gate-go{background:var(--ink);width:100%;color:var(--bg);font:inherit;font-size:var(--size-body);font-weight:var(--weight-heading);cursor:pointer;border:0;border-radius:3px;margin-top:8px;padding:11px 12px}.gate-go:disabled{opacity:.5;cursor:default}.gate-alt{appearance:none;color:var(--grey);font:inherit;font-size:var(--size-small);cursor:pointer;background:0 0;border:0;padding:8px 0 0;text-decoration:underline}.gate-alt:hover{color:var(--ink)}.msg{font-size:var(--size-small);color:var(--ink-70);margin-top:12px}.msg[data-tone=err]{color:var(--a-gilseop)}.load{padding:var(--gap-section) var(--pad);color:var(--grey)}.head{margin-bottom:var(--gap-section);align-items:baseline;gap:14px;display:flex}.head h1{font-size:var(--size-display);font-weight:var(--weight-display);letter-spacing:-.02em;margin:0}.head .when{font-size:var(--size-small);color:var(--grey);letter-spacing:.12em;font-variant-numeric:tabular-nums}.head .sp{flex:1}.sec{min-width:0}.sec-head{border-bottom:1px solid var(--line-strong);justify-content:space-between;align-items:baseline;padding-bottom:10px;display:flex}.sec-name{font-size:var(--size-label);font-weight:var(--weight-label);letter-spacing:.16em;color:var(--ink-70)}.sec-n{color:var(--grey);font-variant-numeric:tabular-nums;font-size:11px}.row{border-bottom:1px solid var(--line-soft);align-items:flex-start;gap:11px;padding:13px 0;display:flex}.row:last-child{border-bottom:0}.row-body{flex:auto;min-width:0}.row-t{font-size:var(--size-body);line-height:1.45}.row-s{color:var(--grey);align-items:baseline;gap:8px;margin-top:5px;font-size:11px;display:flex}.row-s .sp{flex:1}.row-r{color:var(--grey);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11px}.row-time{font-family:var(--font-mono);color:var(--ink-70);font-variant-numeric:tabular-nums;white-space:nowrap;padding-top:2px;font-size:11px}.dot{background:var(--a-self);border-radius:50%;flex:none;width:5px;height:5px;margin-top:7px}.cols{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;display:grid}@media (width<=1100px){.cols{gap:var(--gap-section);grid-template-columns:1fr}}.week{margin-top:var(--gap-section)}.week-grid{grid-template-columns:repeat(7,1fr);gap:12px;margin-top:16px;display:grid}.week-d .lab{color:var(--grey);letter-spacing:.12em;font-size:11px}.week-d[data-today=true] .lab{color:var(--ink)}.week-d .n{font-size:20px;font-weight:var(--weight-display);font-variant-numeric:tabular-nums;margin-top:8px}.week-d .n small{font-size:11px;font-weight:var(--weight-body);color:var(--grey);margin-left:3px}.week-d .bar{background:var(--line);height:2px;margin-top:10px}.week-d[data-today=true] .bar{background:var(--ink)}.chip{letter-spacing:.12em;color:var(--ink-70);align-items:center;gap:5px;font-size:10px;display:inline-flex}.chip i{background:var(--a-self);border-radius:50%;width:5px;height:5px}.cards{background:var(--line-soft);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1px;margin-top:1px;display:grid}.card{appearance:none;text-align:left;font:inherit;cursor:pointer;background:var(--bg);padding:20px var(--pad);border:0;flex-direction:column;gap:10px;min-height:148px;display:flex}.card:hover{background:var(--hover)}.card[aria-current=true]{background:var(--surface)}.card-top{align-items:baseline;gap:10px;display:flex}.card-name{font-size:var(--size-lead);font-weight:var(--weight-heading);letter-spacing:-.01em}.card-st{letter-spacing:.14em;color:var(--grey);margin-left:auto;font-size:10px}.card-sum{font-size:var(--size-small);color:var(--ink-70);line-height:1.65}.card-next{color:var(--grey);text-align:right;border-top:1px solid var(--line-soft);margin-top:auto;padding-top:10px;font-size:11px}.tl{margin-top:var(--gap-section)}.tl-row{border-bottom:1px solid var(--line-soft);gap:14px;padding:13px 0;display:flex}.tl-kind{letter-spacing:.14em;color:var(--grey);flex:none;width:62px;padding-top:3px;font-size:10px}.tl-body{min-width:0;font-size:var(--size-body);white-space:pre-wrap;flex:auto;line-height:1.6}.tl-at{color:var(--grey);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11px}.tabs{gap:20px;margin-bottom:26px;display:flex}.tab{appearance:none;cursor:pointer;font:inherit;font-size:var(--size-small);letter-spacing:.12em;color:var(--grey);background:0 0;border:0;border-bottom:2px solid #0000;padding:0 0 6px}.tab[aria-current=true]{color:var(--ink);font-weight:var(--weight-label);border-bottom-color:var(--ink)}.check{appearance:none;border:1px solid var(--line-strong);cursor:pointer;background:0 0;flex:none;width:13px;height:13px;margin-top:4px}.check:checked{background:var(--ink);border-color:var(--ink)}.check:disabled{opacity:.4;cursor:default}.row[data-done=true] .row-t{color:var(--grey);text-decoration:line-through}.grp{margin-top:34px}.grp:first-of-type{margin-top:0}.empty{color:var(--grey);font-size:var(--size-small);padding:26px 0;line-height:1.7}.err{border:1px solid var(--a-gilseop);color:var(--a-gilseop);font-size:var(--size-small);padding:14px 16px}.more{appearance:none;cursor:pointer;text-align:left;width:100%;font:inherit;color:var(--grey);font-size:var(--size-small);border:0;border-top:1px solid var(--line-soft);background:0 0;margin-top:4px;padding:12px 0 0}.more:hover{color:var(--ink)}.filters{flex-wrap:wrap;gap:8px;margin-bottom:26px;display:flex}.filt{appearance:none;cursor:pointer;font:inherit;border:1px solid var(--line);color:var(--grey);font-size:var(--size-small);background:0 0;border-radius:3px;padding:5px 12px}.filt:hover{color:var(--ink);border-color:var(--line-strong)}.filt[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--bg);font-weight:var(--weight-label)}.filt-n{opacity:.7;font-variant-numeric:tabular-nums;margin-left:6px}@media (width>=1200px){.cards{grid-template-columns:repeat(3,minmax(0,1fr))}}.done-toggle{appearance:none;cursor:pointer;font:inherit;color:var(--grey);background:0 0;border:0;padding:0;font-size:11px}.done-toggle:hover{color:var(--ink)}.tb{--tb-bg:var(--bg);--tb-bg-2:var(--surface);--tb-bg-3:color-mix(in srgb, var(--surface) 88%, var(--ink));--tb-rule:color-mix(in srgb, var(--surface) 74%, var(--ink));--tb-ink:var(--ink);--tb-dim:var(--ink-70);--tb-dim-2:var(--grey);--tb-spread:var(--a-somnium);--tb-depth:var(--a-hanyeyeon);--tb-record:var(--a-self);--tb-warn:var(--a-gilseop);--tb-bad:#c96b6b;--tb-mono:var(--font-mono);background:var(--tb-bg);color:var(--tb-ink);font-family:var(--font-sans);font-size:var(--size-body);-webkit-font-smoothing:antialiased;min-height:100%;margin:0;line-height:1.6}.tb *,.tb :before,.tb :after{box-sizing:border-box}.tb h1,.tb h2,.tb h3,.tb p,.tb figure{margin:0}.tb button,.tb select,.tb input{font:inherit;color:inherit}.tb .tb-n{font-variant-numeric:tabular-nums}.tb .tb-wrap{max-width:1180px;margin:0 auto;padding:0 22px 80px}.tb .tb-top{z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--tb-rule);background:#0e0e0eeb;padding:14px 22px 0;position:sticky;top:0}.tb .tb-top-in{max-width:1180px;margin:0 auto}.tb .tb-title{flex-wrap:wrap;align-items:baseline;gap:10px;margin-bottom:12px;display:flex}.tb .tb-title h1{letter-spacing:-.01em;font-size:15px;font-weight:500}.tb .tb-title .tb-sub{color:var(--tb-dim);font-size:12px}.tb .tb-title .tb-sp{flex:1}.tb .tb-tabs{gap:2px;display:flex;overflow-x:auto}.tb .tb-tab{cursor:pointer;color:var(--tb-dim);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;padding:8px 14px 10px;font-size:13px}.tb .tb-tab:hover{color:var(--tb-ink)}.tb .tb-tab[aria-current=true]{color:var(--tb-ink);border-bottom-color:var(--tb-ink)}.tb .tb-tab .tb-num{color:var(--tb-dim-2);margin-right:5px}.tb .tb-out{cursor:pointer;color:var(--tb-dim);background:0 0;border:0;padding:2px 0 2px 10px;font-size:12px}.tb .tb-out:hover{color:var(--tb-ink)}.tb .tb-screen{padding-top:26px}.tb .tb-screen[hidden]{display:none}.tb .tb-h2{color:var(--tb-dim);margin-bottom:12px;font-size:13px;font-weight:500}.tb .tb-note{color:var(--tb-dim);max-width:62ch;margin:10px 0 0;font-size:12px;line-height:1.75}.tb .tb-note b{color:var(--tb-ink);font-weight:500}.tb .tb-cards{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.tb .tb-card{background:var(--tb-bg-2);border:1px solid var(--tb-rule);border-top:2px solid var(--tb-rule);padding:16px 18px 18px}.tb .tb-card[data-p=spread]{border-top-color:var(--tb-spread)}.tb .tb-card[data-p=depth]{border-top-color:var(--tb-depth)}.tb .tb-card[data-p=record]{border-top-color:var(--tb-record)}.tb .tb-card-h{align-items:baseline;gap:8px;margin-bottom:14px;display:flex}.tb .tb-card-h .tb-name{font-size:13px;font-weight:500}.tb .tb-card-h .tb-cnt{color:var(--tb-dim);font-size:12px}.tb .tb-stats{grid-template-columns:1fr 1fr;gap:12px 10px;display:grid}.tb .tb-stat .tb-v{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:21px;font-weight:500;line-height:1.15}.tb .tb-stat .tb-v small{color:var(--tb-dim);margin-left:1px;font-size:12px;font-weight:400}.tb .tb-stat .tb-k{color:var(--tb-dim);margin-top:3px;font-size:11px}.tb .tb-table{border-collapse:collapse;width:100%;font-size:13px}.tb .tb-table th{text-align:left;color:var(--tb-dim);border-bottom:1px solid var(--tb-rule);white-space:nowrap;padding:8px 10px;font-size:11px;font-weight:400}.tb .tb-table td{border-bottom:1px solid var(--tb-rule);vertical-align:baseline;padding:9px 10px}.tb .tb-table tr:hover td{background:var(--tb-bg-3)}.tb .tb-table .tb-r{text-align:right;font-variant-numeric:tabular-nums}.tb .tb-table .tb-t{text-overflow:ellipsis;white-space:nowrap;width:55%;max-width:1px;overflow:hidden}.tb .tb-table .tb-t a{color:inherit;text-decoration:none}.tb .tb-table .tb-t a:hover{text-decoration:underline}.tb .tb-table td.tb-dim{color:var(--tb-dim)}.tb .tb-bar{position:relative}.tb .tb-bar i{background:var(--tb-dim-2);height:2px;display:block;position:absolute;bottom:3px;left:10px;right:10px}.tb .tb-pill{white-space:nowrap;border:1px solid;border-radius:2px;padding:1px 7px 2px;font-size:11px;display:inline-block}.tb .tb-pill[data-p=spread]{color:var(--tb-spread)}.tb .tb-pill[data-p=depth]{color:var(--tb-depth)}.tb .tb-pill[data-p=record]{color:var(--tb-record)}.tb .tb-pill[data-src=default]{opacity:.7;border-style:dashed}.tb .tb-plot{background:var(--tb-bg-2);border:1px solid var(--tb-rule);padding:14px}.tb .tb-plot svg{width:100%;height:auto;display:block}.tb .tb-plot .tb-axis{stroke:var(--tb-rule);stroke-width:1px}.tb .tb-plot .tb-tick{fill:var(--tb-dim-2);font-size:10px}.tb .tb-plot .tb-grid{stroke:var(--tb-rule);stroke-width:.5px}.tb .tb-plot .tb-med{stroke:var(--tb-warn);stroke-width:1px;stroke-dasharray:4 3}.tb .tb-plot .tb-diag{stroke:var(--tb-dim-2);stroke-width:1px;stroke-dasharray:2 4}.tb .tb-plot .tb-lab{font-size:10.5px}.tb .tb-plot circle{cursor:pointer}.tb .tb-plot circle:hover{stroke:var(--tb-ink);stroke-width:1.5px}.tb .tb-legend{color:var(--tb-dim);flex-wrap:wrap;gap:16px;margin-top:12px;font-size:11.5px;display:flex}.tb .tb-legend span{align-items:center;gap:5px;display:inline-flex}.tb .tb-legend i{border-radius:50%;width:8px;height:8px;display:inline-block}.tb .tb-legend .tb-line{border-top:1px dashed;border-radius:0;width:14px;height:0}.tb .tb-pick{background:var(--tb-bg-3);color:var(--tb-ink);border:1px solid var(--tb-rule);cursor:pointer;border-radius:2px;padding:2px 4px;font-size:11.5px}.tb .tb-pick:focus-visible{outline:2px solid var(--tb-spread);outline-offset:1px}.tb .tb-pick[data-busy]{opacity:.5}.tb .tb-saved{color:var(--tb-spread);margin-left:6px;font-size:11px}.tb .tb-load{color:var(--tb-dim);text-align:center;padding:60px 0;font-size:13px}.tb .tb-err{color:var(--tb-bad);border:1px solid var(--tb-bad);margin:20px 0;padding:12px 14px;font-size:13px}.tb .tb-empty{color:var(--tb-dim);padding:30px 0;font-size:13px}.tb .msg[hidden]{display:none}.tb .tb-run{border:1px solid var(--tb-rule);border-left:3px solid var(--tb-dim-2);background:var(--tb-bg-2);padding:14px 16px 12px}.tb .tb-run[data-tone=ok]{border-left-color:var(--tb-spread)}.tb .tb-run[data-tone=warn]{border-left-color:var(--tb-warn)}.tb .tb-run[data-tone=bad]{border-left-color:var(--tb-bad)}.tb .tb-run[hidden]{display:none}.tb .tb-run-head{align-items:baseline;gap:10px;display:flex}.tb .tb-run-head .tb-sp{flex:1}.tb .tb-run-lead{color:var(--tb-ink);font-size:13.5px;font-weight:500}.tb .tb-run[data-tone=bad] .tb-run-lead{color:var(--tb-bad)}.tb .tb-run-x{cursor:pointer;color:var(--tb-dim);background:0 0;border:0;padding:0;font-size:12px}.tb .tb-run-x:hover{color:var(--tb-ink)}.tb .tb-run-cmds{gap:4px;margin-top:10px;display:grid}.tb .tb-run-line{grid-template-columns:14px minmax(0,auto) 1fr auto;align-items:center;gap:10px;display:grid}.tb .tb-run-no{font-family:var(--tb-mono);color:var(--tb-dim-2);text-align:right;font-size:11px}.tb .tb-run-cmd{font-family:var(--tb-mono);color:var(--tb-ink);background:var(--tb-bg);border:1px solid var(--tb-rule);white-space:pre;-webkit-user-select:all;user-select:all;padding:5px 9px;font-size:12.5px;overflow-x:auto}.tb .tb-run-why{color:var(--tb-dim);font-size:11.5px}.tb .tb-copy{cursor:pointer;border:1px solid var(--tb-rule);color:var(--tb-dim);white-space:nowrap;background:0 0;padding:4px 9px;font-size:11.5px;transition:color .12s ease-out,border-color .12s ease-out}.tb .tb-copy:hover{color:var(--tb-ink);border-color:var(--tb-dim)}.tb .tb-copy[data-ok]{color:var(--tb-spread);border-color:var(--tb-spread)}.tb .tb-run-foot{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.tb .tb-run-note{color:var(--tb-dim);font-size:11.5px}.tb .tb-strip{margin:-14px -22px 12px}.tb .tb-strip[hidden]{display:none}.tb .tb-strip-in{cursor:pointer;text-align:left;background:var(--tb-bg-3);border:0;border-top:2px solid var(--tb-warn);width:100%;color:var(--tb-ink);align-items:center;gap:10px;padding:9px 22px;font-size:12.5px;display:flex}.tb .tb-strip[data-tone=bad] .tb-strip-in{border-top-color:var(--tb-bad)}.tb .tb-strip-in:hover{background:var(--tb-rule)}.tb .tb-strip-dot{background:var(--tb-warn);flex:0 0 7px;width:7px;height:7px}.tb .tb-strip[data-tone=bad] .tb-strip-dot{background:var(--tb-bad)}.tb .tb-strip-t{flex:1}.tb .tb-strip[data-tone=bad] .tb-strip-t{color:var(--tb-bad)}.tb .tb-strip-go{color:var(--tb-dim);font-size:11.5px}.tb .tb-strip-in:hover .tb-strip-go{color:var(--tb-ink)}@media (width<=860px){.tb .tb-cards{grid-template-columns:1fr}.tb .tb-wrap{padding:0 16px 60px}.tb .tb-top{padding:12px 16px 0}.tb .tb-strip{margin:-12px -16px 12px}.tb .tb-strip-in{padding:9px 16px}.tb .tb-run-line{grid-template-columns:14px minmax(0,1fr) auto}.tb .tb-run-why{display:none}}@media (prefers-reduced-motion:reduce){.tb *{transition:none!important;animation:none!important}}
