@font-face{font-family:Pretendard;src:url(../media/PretendardVariable.2q4tlji06vjpz.woff2)format("woff2");font-weight:45 920;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(../media/JetBrainsMono-wght-latin.2odd3csjijl0b.woff2)format("woff2");font-weight:100 800;font-style:normal;font-display:swap}:root{--ui-lock:"terminalcore";--density:"rich";--font-text:"Meslo LGS NF", "Pretendard Variable", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", "Segoe UI", sans-serif;--font-display:"Pretendard", "Pretendard Variable", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", "Segoe UI", sans-serif;--font-mono:"Meslo LGS NF", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--font-text-ko:"Pretendard", "Pretendard Variable", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", "Segoe UI", sans-serif;--fs-xs:12px;--fs-sm:13px;--fs-md:14px;--fs-base:16px;--fs-lg:18px;--fs-xl:20px;--fs-2xl:24px;--fs-3xl:30px;--fs-4xl:38px;--fs-5xl:48px;--fs-display:clamp(40px, 19.2px + 5.333vw, 96px);--fs-moment:clamp(40px, -7.54px + 12.19vw, 168px);--fw-text:400;--fw-medium:500;--fw-strong:700;--fw-display:860;--track-display:-.035em;--track-label:.08em;--lh-body:1.6;--lh-tight:1.3;--lh-display:.96;--lh-display-ko:1.14;--sp-4:4px;--sp-8:8px;--sp-12:12px;--sp-16:16px;--sp-20:20px;--sp-24:24px;--sp-32:32px;--sp-40:40px;--sp-48:48px;--sp-64:64px;--sp-80:80px;--sp-96:96px;--sp-128:128px;--radius-xs:0px;--radius-sm:0px;--radius-md:0px;--radius-lg:0px;--radius-pill:0px;--shadow-raised:none;--shadow-overlay:0 0 0 1px var(--c-ink);--shadow-control:none;--shadow-control-pressed:none;--press:none;--bw-rule:3px;--bw-surface:2px;--bw-control:2px;--c-frame:var(--c-line-strong);--control-edge:initial;--font-meta:var(--font-mono);--font-heading:var(--font-mono);--font-heading-ko:var(--font-display);--panel-head-bg:var(--c-ink);--panel-head-ink:var(--c-canvas);--panel-head-status:var(--c-canvas);--panel-head-bleed:1;--section-marks:block;--meta-case:uppercase;--display-case:uppercase;--canvas-pattern:linear-gradient(color-mix(in srgb, var(--c-line) 50%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--c-line) 50%, transparent) 1px, transparent 1px), linear-gradient(color-mix(in srgb, var(--c-line) 85%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--c-line) 85%, transparent) 1px, transparent 1px);--canvas-pattern-size:32px 32px, 32px 32px, 160px 160px, 160px 160px;--glow:none;--dur-fast:80ms;--dur-ui:.12s;--dur-enter:.24s;--dur-exit:.1s;--ease:steps(3, end);--gutter:16px;--work-gutter:16px;--section-pad:48px;--hero-pad:40px;--c-canvas:#e1e2e7;--c-surface:#eceef3;--c-sunken:#d0d5e3;--c-ink:#1f2335;--c-ink-2:#343b58;--c-ink-3:#4c5585;--c-line:#b6bdd3;--c-line-strong:#3760bf;--c-control:#5d6aa3;--c-accent:#2459c9;--c-accent-hover:#1b48a8;--c-on-accent:#fff;--c-accent-wash:#d5e1f7;--c-accent-ink:#1d4fb8;--c-accent-2:#3d6b1f;--c-accent-2-ink:#3a6420;--c-accent-2-wash:#dbe8cf;--c-on-accent-2:#fff;--c-support:#c9e3ec;--c-support-ink:#005f80;--c-focus:#2459c9;--c-positive:#3d6b1f;--c-positive-wash:#dbe8cf;--c-warning:#7a5200;--c-warning-wash:#efe2c8;--c-negative:#c0174a;--c-negative-wash:#f6d8e1;--c-info:#006a8e;--c-info-wash:#cfe6ee;--c-chart-1:#1f2335;--c-chart-2:#2459c9;--c-chart-3:#3d6b1f;--c-chart-4:#9854f1;--c-chart-5:#b15c00}@media (min-width:640px){:root{--gutter:24px;--work-gutter:24px;--section-pad:72px;--hero-pad:56px}}@media (min-width:1024px){:root{--gutter:40px;--work-gutter:32px;--section-pad:96px;--hero-pad:64px}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--c-canvas:#16161e;--c-surface:#1a1b26;--c-sunken:#101018;--c-ink:#c0caf5;--c-ink-2:#a9b1d6;--c-ink-3:#8089b3;--c-line:#292e42;--c-line-strong:#3b4261;--c-control:#565f89;--c-accent:#7aa2f7;--c-accent-hover:#9bbaff;--c-on-accent:#16161e;--c-accent-wash:#1f2a4a;--c-accent-ink:#89b4fa;--c-accent-2:#9ece6a;--c-accent-2-ink:#a9dc76;--c-accent-2-wash:#1f2b1a;--c-on-accent-2:#16161e;--c-support:#1d2c3a;--c-support-ink:#7dcfff;--c-focus:#7dcfff;--c-positive:#9ece6a;--c-positive-wash:#1f2b1a;--c-warning:#e0af68;--c-warning-wash:#2e2618;--c-negative:#f7768e;--c-negative-wash:#3a1d27;--c-info:#7dcfff;--c-info-wash:#15283a;--c-chart-1:#c0caf5;--c-chart-2:#7aa2f7;--c-chart-3:#9ece6a;--c-chart-4:#bb9af7;--c-chart-5:#ff9e64}}:root[data-theme=dark]{--c-canvas:#16161e;--c-surface:#1a1b26;--c-sunken:#101018;--c-ink:#c0caf5;--c-ink-2:#a9b1d6;--c-ink-3:#8089b3;--c-line:#292e42;--c-line-strong:#3b4261;--c-control:#565f89;--c-accent:#7aa2f7;--c-accent-hover:#9bbaff;--c-on-accent:#16161e;--c-accent-wash:#1f2a4a;--c-accent-ink:#89b4fa;--c-accent-2:#9ece6a;--c-accent-2-ink:#a9dc76;--c-accent-2-wash:#1f2b1a;--c-on-accent-2:#16161e;--c-support:#1d2c3a;--c-support-ink:#7dcfff;--c-focus:#7dcfff;--c-positive:#9ece6a;--c-positive-wash:#1f2b1a;--c-warning:#e0af68;--c-warning-wash:#2e2618;--c-negative:#f7768e;--c-negative-wash:#3a1d27;--c-info:#7dcfff;--c-info-wash:#15283a;--c-chart-1:#c0caf5;--c-chart-2:#7aa2f7;--c-chart-3:#9ece6a;--c-chart-4:#bb9af7;--c-chart-5:#ff9e64}
*,:before,:after{box-sizing:border-box}html{-moz-text-size-adjust:100%;text-size-adjust:100%;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){html{--lightningcss-light: ;--lightningcss-dark:initial}}body{background-color:var(--c-canvas);background-image:var(--canvas-pattern);background-size:var(--canvas-pattern-size);color:var(--c-ink);font-family:var(--font-text);font-size:var(--fs-base);line-height:var(--lh-body);font-weight:var(--fw-text);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}img,svg,video,canvas{max-width:100%;display:block}img,video{height:auto}button,input,select,textarea{font:inherit;color:inherit;letter-spacing:inherit}h1,h2,h3,h4,p,ul,ol,dl,figure,blockquote{margin:0}ul[class],ol[class]{padding:0;list-style:none}a{color:var(--on-head,var(--c-accent-ink));text-underline-offset:.2em;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}[hidden]{display:none!important}::selection{background:var(--c-accent-wash);color:var(--c-ink)}:focus-visible{outline:2px solid var(--c-focus);outline-offset:2px}:lang(ko){word-break:keep-all;overflow-wrap:anywhere}body:lang(ko){font-family:var(--font-text-ko);--font-meta:var(--font-text-ko);--font-heading:var(--font-heading-ko)}.ui-visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.ui-skip{left:var(--sp-16);z-index:50;min-height:44px;padding:0 var(--sp-16);background:var(--c-surface);color:var(--c-ink);border:1px solid var(--c-control);border-radius:var(--radius-sm);align-items:center;display:inline-flex;position:absolute;top:-100px}.ui-skip:focus{top:var(--sp-8)}.ui-display{font-family:var(--font-display);font-weight:var(--fw-display);font-size:var(--fs-display);line-height:var(--lh-display);letter-spacing:var(--track-display);text-transform:var(--display-case);text-wrap:balance}:lang(ko) .ui-display,.ui-display:lang(ko){line-height:var(--lh-display-ko);letter-spacing:calc(var(--track-display) / 2)}.ui-h1{font-family:var(--font-display);font-weight:var(--fw-display);font-size:var(--fs-4xl);letter-spacing:calc(var(--track-display) * .7);text-transform:var(--display-case);text-wrap:balance;line-height:1.12}.ui-h2{font-family:var(--font-heading);font-weight:var(--fw-display);font-size:var(--fs-3xl);letter-spacing:calc(var(--track-display) * .5);text-transform:var(--display-case);text-wrap:balance;line-height:1.2}.ui-h3{font-weight:var(--fw-strong);font-size:var(--fs-xl);text-wrap:balance;line-height:1.3}.ui-h4{font-weight:var(--fw-strong);font-size:var(--fs-base);line-height:1.35}.ui-lead{font-size:var(--fs-lg);line-height:var(--lh-body);color:var(--c-ink-2);text-wrap:pretty;max-width:60ch}.ui-body{text-wrap:pretty;max-width:68ch}.ui-muted{color:var(--on-head,var(--c-ink-2))}.ui-small{font-size:var(--fs-md);line-height:1.5}.ui-meta{font-family:var(--font-meta);font-size:var(--fs-sm);color:var(--on-head,var(--c-ink-3));line-height:1.5}.ui-label{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--on-head,var(--c-accent-ink));letter-spacing:var(--track-label);text-transform:var(--meta-case);line-height:1.4}.ui-num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.ui-code{font-family:var(--font-mono);background:var(--c-sunken);border-radius:var(--radius-xs);padding:.1em .35em;font-size:.92em}@media (max-width:640px){.ui-h1{font-size:var(--fs-3xl)}.ui-h2{font-size:var(--fs-2xl)}}.ui-container{width:100%;max-width:var(--container,1200px);padding-inline:var(--gutter);margin-inline:auto}.ui-container--narrow{--container:760px}.ui-container--wide{--container:1440px}.ui-section{padding-block:var(--section-pad)}.ui-section+.ui-section{border-top:var(--bw-rule) solid var(--c-frame)}.ui-section--sunken{background:var(--c-sunken);border-top:0}.ui-section--sunken+.ui-section{border-top:0}.ui-stack{gap:var(--stack-gap,var(--sp-16));flex-direction:column;display:flex}.ui-stack--tight{--stack-gap:var(--sp-8)}.ui-stack--loose{--stack-gap:var(--sp-32)}.ui-cluster{align-items:center;gap:var(--cluster-gap,var(--sp-12));flex-wrap:wrap;display:flex}.ui-split{gap:var(--sp-48);grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:center;display:grid}.ui-split--even{grid-template-columns:repeat(2,minmax(0,1fr))}.ui-split--top{align-items:start}.ui-grid{gap:var(--grid-gap,var(--sp-24));grid-template-columns:repeat(var(--cols,3), minmax(0, 1fr));display:grid}.ui-section-head{gap:var(--sp-12);max-width:60ch;margin-bottom:var(--sp-48);display:grid}.ui-stack>.ui-section-head{margin-bottom:0}@media (max-width:960px){.ui-split,.ui-split--even{gap:var(--sp-32);grid-template-columns:minmax(0,1fr)}.ui-grid{grid-template-columns:repeat(min(var(--cols,3), 2), minmax(0, 1fr))}}@media (max-width:640px){.ui-grid{grid-template-columns:minmax(0,1fr)}.ui-section-head{margin-bottom:var(--sp-32)}}.ui-btn{--btn-bg:var(--c-surface);--btn-ink:var(--c-ink);--btn-line:var(--c-control);justify-content:center;align-items:center;gap:var(--sp-8);min-height:44px;padding:0 var(--sp-20);border:var(--bw-control) solid var(--control-edge,var(--btn-line));border-radius:var(--radius-sm);background:var(--btn-bg);color:var(--btn-ink);box-shadow:var(--shadow-control);font-weight:var(--fw-strong);font-size:var(--fs-base);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);line-height:1.2;text-decoration:none;display:inline-flex}.ui-btn:hover{--btn-bg:var(--c-sunken)}.ui-btn:active{transform:var(--press);box-shadow:var(--shadow-control-pressed)}.ui-btn--primary{--btn-bg:var(--c-accent);--btn-ink:var(--c-on-accent);--btn-line:var(--c-accent)}.ui-btn--primary:hover{--btn-bg:var(--c-accent-hover);--btn-line:var(--c-accent-hover)}.ui-btn--ink{--btn-bg:var(--c-ink);--btn-ink:var(--c-canvas);--btn-line:var(--c-ink)}.ui-btn--ink:hover{--btn-bg:var(--c-ink-2);--btn-line:var(--c-ink-2)}.ui-btn--quiet{--btn-bg:transparent;--btn-line:transparent;box-shadow:none;border-color:#0000}.ui-btn--quiet:hover{--btn-bg:var(--c-sunken)}.ui-btn--danger{--btn-bg:var(--c-negative);--btn-ink:var(--c-surface);--btn-line:var(--c-negative)}.ui-btn--sm{min-height:36px;padding:0 var(--sp-12);font-size:var(--fs-md)}.ui-btn[disabled],.ui-btn[aria-disabled=true]{opacity:.55;cursor:not-allowed;transform:none}.ui-btn>svg{flex:none;width:18px;height:18px}@media (max-width:768px){.ui-btn--sm{min-height:44px}}.ui-field{gap:var(--sp-8);display:grid}.ui-field__label{font-weight:var(--fw-medium);font-size:var(--fs-md);line-height:1.4}.ui-field__hint{font-size:var(--fs-sm);color:var(--c-ink-3);line-height:1.5}.ui-field__error{gap:var(--sp-8);font-size:var(--fs-sm);color:var(--c-negative);line-height:1.5;font-weight:var(--fw-medium);align-items:flex-start;display:flex}.ui-input,.ui-select,.ui-textarea{width:100%;min-height:44px;padding:var(--sp-8) var(--sp-12);background:var(--c-surface);color:var(--c-ink);border:var(--bw-control) solid var(--control-edge,var(--c-control));border-radius:var(--radius-sm);font-size:var(--fs-base);transition:border-color var(--dur-fast) var(--ease);line-height:1.4}.ui-textarea{resize:vertical;min-height:112px}.ui-select{appearance:none;padding-right:var(--sp-40);background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 20px),calc(100% - 15px);background-repeat:no-repeat;background-size:5px 5px}.ui-input:hover,.ui-select:hover,.ui-textarea:hover{border-color:var(--control-edge,var(--c-ink-3))}.ui-input:focus-visible,.ui-select:focus-visible,.ui-textarea:focus-visible{outline:2px solid var(--c-focus);outline-offset:1px;border-color:var(--c-focus)}.ui-input::placeholder,.ui-textarea::placeholder{color:var(--c-ink-3);opacity:1}.ui-input[aria-invalid=true],.ui-select[aria-invalid=true],.ui-textarea[aria-invalid=true]{border-color:var(--c-negative)}.ui-input-group{align-items:stretch;display:flex}.ui-input-group__addon{padding:0 var(--sp-12);background:var(--c-sunken);border:var(--bw-control) solid var(--control-edge,var(--c-control));border-radius:var(--radius-sm) 0 0 var(--radius-sm);color:var(--c-ink-2);font-size:var(--fs-md);white-space:nowrap;border-right:0;align-items:center;display:flex}.ui-input-group .ui-input{border-radius:0 var(--radius-sm) var(--radius-sm) 0;min-width:0}.ui-check{gap:var(--sp-12);min-height:44px;padding-block:var(--sp-8);cursor:pointer;align-items:flex-start;display:flex}.ui-check input{width:20px;height:20px;accent-color:var(--c-accent);flex:none;margin:2px 0 0}.ui-switch{justify-content:space-between;align-items:center;gap:var(--sp-16);cursor:pointer;min-height:44px;display:flex}.ui-switch input{appearance:none;border-radius:var(--radius-pill);background:var(--c-control);cursor:pointer;width:44px;height:26px;transition:background-color var(--dur-fast) var(--ease);flex:none;margin:0;position:relative}.ui-switch input:after{content:"";background:var(--c-surface);width:20px;height:20px;transition:transform var(--dur-fast) var(--ease);border-radius:50%;position:absolute;top:3px;left:3px}.ui-switch input:checked{background:var(--c-accent)}.ui-switch input:checked:after{transform:translate(18px)}.ui-segmented{gap:var(--sp-4);padding:var(--sp-4);background:var(--c-sunken);border-radius:var(--radius-md);flex-wrap:wrap;display:inline-flex}.ui-segmented button{min-height:36px;padding:0 var(--sp-12);border-radius:var(--radius-sm);color:var(--c-ink-2);font-weight:var(--fw-medium);font-size:var(--fs-md);cursor:pointer;align-items:center;gap:var(--sp-8);background:0 0;border:0;display:inline-flex}.ui-segmented button[aria-pressed=true],.ui-segmented button[aria-selected=true]{background:var(--c-surface);color:var(--c-ink);box-shadow:0 0 0 1px var(--c-line)}.ui-segmented .ui-count{color:var(--c-ink-3);font-variant-numeric:tabular-nums}.ui-form-actions{gap:var(--sp-12);flex-wrap:wrap;align-items:center;display:flex}@media (max-width:768px){.ui-segmented{gap:var(--sp-8)}.ui-segmented button{min-height:44px}}.ui-panel{background:var(--c-surface);border:var(--bw-surface) solid var(--c-frame);border-radius:var(--radius-md);box-shadow:var(--shadow-raised);padding:var(--panel-pad,var(--sp-24));min-width:0}.ui-panel--flush{padding:0;overflow:hidden}.ui-panel__head{justify-content:space-between;align-items:baseline;gap:var(--sp-8) var(--sp-16);margin:calc(var(--panel-pad,var(--sp-24)) * -1 * var(--panel-head-bleed)) calc(var(--panel-pad,var(--sp-24)) * -1 * var(--panel-head-bleed)) var(--sp-16);padding:calc(var(--sp-12) * var(--panel-head-bleed)) calc(var(--panel-pad,var(--sp-24)) * var(--panel-head-bleed));background:var(--panel-head-bg);color:var(--panel-head-ink);border-radius:calc(var(--radius-sm) * var(--panel-head-bleed)) calc(var(--radius-sm) * var(--panel-head-bleed)) 0 0;--on-head:var(--panel-head-status);flex-wrap:wrap;display:flex}.ui-panel--flush>.ui-panel__head{margin:0 0 var(--sp-16);padding:var(--sp-16) var(--sp-24) calc(var(--sp-16) * var(--panel-head-bleed))}.ui-panel__title{font-weight:var(--fw-strong);font-size:var(--fs-lg);line-height:1.3}.ui-rule{border:0;border-top:var(--bw-rule) solid var(--c-frame);margin:0}.ui-callout{gap:var(--sp-4);padding:var(--sp-16);border-radius:var(--radius-md);background:var(--c-sunken);display:grid}.ui-callout--info{background:var(--c-info-wash);color:var(--c-ink)}.ui-callout--positive{background:var(--c-positive-wash)}.ui-callout--warning{background:var(--c-warning-wash)}.ui-callout--negative{background:var(--c-negative-wash)}.ui-status{align-items:center;gap:var(--sp-8);font-size:var(--fs-md);font-weight:var(--fw-medium);white-space:nowrap;color:var(--on-head,var(--status-ink,var(--c-ink-2)));line-height:1.3;display:inline-flex}.ui-status:before{content:"";background:currentColor;border-radius:50%;flex:none;width:8px;height:8px}.ui-status--positive{--status-ink:var(--c-positive)}.ui-status--warning{--status-ink:var(--c-warning)}.ui-status--negative{--status-ink:var(--c-negative)}.ui-status--info{--status-ink:var(--c-info)}.ui-tag{font-family:var(--font-meta);text-transform:var(--meta-case);align-items:center;gap:var(--sp-4);padding:2px var(--sp-8);border-radius:var(--radius-xs);background:var(--c-sunken);color:var(--c-ink-2);font-size:var(--fs-sm);font-weight:var(--fw-medium);white-space:nowrap;line-height:1.5;display:inline-flex}.ui-tag--positive{background:var(--c-positive-wash);color:var(--c-positive)}.ui-tag--warning{background:var(--c-warning-wash);color:var(--c-warning)}.ui-tag--negative{background:var(--c-negative-wash);color:var(--c-negative)}.ui-tag--info{background:var(--c-info-wash);color:var(--c-info)}.ui-tag--accent{background:var(--c-accent-wash);color:var(--c-accent-ink)}.ui-tag--accent-2{background:var(--c-accent-2-wash);color:var(--c-accent-2-ink)}.ui-stat{gap:var(--sp-4);align-content:start;min-width:0;display:grid}.ui-stat__label{font-family:var(--font-meta);text-transform:var(--meta-case);letter-spacing:var(--track-label);font-size:var(--fs-md);color:var(--c-ink-2);line-height:1.4}.ui-stat__value{font-family:var(--font-heading);font-weight:var(--fw-display);font-size:var(--fs-4xl);letter-spacing:calc(var(--track-display) * .5);font-variant-numeric:tabular-nums;line-height:1.15}.ui-stat__value small{white-space:nowrap;font-size:var(--fs-lg);font-weight:var(--fw-medium);color:var(--c-ink-3);letter-spacing:0;display:inline-block}.ui-stat__note{font-size:var(--fs-sm);color:var(--c-ink-3);line-height:1.5}.ui-stat-row{gap:var(--sp-16);grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));display:grid}@media (max-width:640px){.ui-stat-row{gap:var(--sp-12);grid-template-columns:repeat(2,minmax(0,1fr))}.ui-stat-row>.ui-stat{padding:var(--sp-16)}.ui-stat-row .ui-stat__value{font-size:var(--fs-3xl)}}.ui-stat-row>.ui-stat{background:var(--c-surface);border:var(--bw-surface) solid var(--c-frame);border-radius:var(--radius-md);padding:var(--sp-20) var(--sp-24);box-shadow:var(--shadow-raised)}.ui-meter{border-radius:var(--radius-pill);background:var(--c-sunken);height:6px;overflow:hidden}.ui-meter>span{background:var(--meter,var(--c-accent));border-radius:inherit;height:100%;display:block}.ui-table-wrap{-webkit-overflow-scrolling:touch;border:var(--bw-surface) solid var(--c-frame);border-radius:var(--radius-md);background:var(--c-surface);overflow-x:auto}.ui-table{border-collapse:collapse;width:100%;font-size:var(--fs-md);line-height:1.4}.ui-table th,.ui-table td{padding:var(--cell-y,var(--sp-12)) var(--sp-16);text-align:left;vertical-align:middle;border-bottom:1px solid var(--c-line)}.ui-table thead th{z-index:1;background:var(--c-sunken);color:var(--c-ink-2);font-family:var(--font-meta);text-transform:var(--meta-case);letter-spacing:var(--track-label);font-weight:var(--fw-medium);font-size:var(--fs-sm);white-space:nowrap;position:sticky;top:0}.ui-table tbody tr:last-child td{border-bottom:0}.ui-table tbody tr:hover{background:color-mix(in srgb, var(--c-sunken) 60%, transparent)}.ui-table .is-num{text-align:right;font-variant-numeric:tabular-nums}.ui-table--compact{--cell-y:var(--sp-8)}.ui-sort{align-items:center;gap:var(--sp-4);min-height:32px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;display:inline-flex}.ui-sort:after{content:"";border-inline:4px solid #0000;opacity:0;border-top:5px solid;width:0;height:0}th[aria-sort=ascending] .ui-sort:after{opacity:1;transform:rotate(180deg)}th[aria-sort=descending] .ui-sort:after{opacity:1}th[aria-sort] .ui-sort{color:var(--c-ink)}@media (max-width:768px){.ui-sort{min-height:44px}}@media (max-width:640px){.ui-table--stack,.ui-table--stack thead,.ui-table--stack tbody,.ui-table--stack tr,.ui-table--stack td{width:100%;display:block}.ui-table--stack thead{position:static}.ui-table--stack thead tr{gap:var(--sp-8);padding:var(--sp-8) var(--sp-16);background:var(--c-sunken);flex-wrap:wrap;display:flex}.ui-table--stack thead th{background:0 0;border:0;padding:0;position:static}.ui-table--stack tr{padding:var(--sp-12) var(--sp-16);border-bottom:1px solid var(--c-line)}.ui-table--stack td{gap:var(--sp-12);padding:var(--sp-4) 0;text-align:left;border:0;grid-template-columns:minmax(96px,38%) minmax(0,1fr);display:grid}.ui-table--stack td:before{content:attr(data-label);color:var(--c-ink-3);font-size:var(--fs-sm)}.ui-table--stack .is-num{text-align:left}}.ui-list{display:grid}.ui-list>li{gap:var(--sp-12);padding:var(--sp-12) 0;border-bottom:1px solid var(--c-line);justify-content:space-between;align-items:flex-start;display:flex}.ui-list>li:last-child{border-bottom:0}.ui-steps{grid-template-columns:repeat(var(--cols,3), minmax(0, 1fr));gap:var(--sp-32);counter-reset:step;display:grid}.ui-steps>li{counter-increment:step;gap:var(--sp-8);padding-top:var(--sp-16);border-top:2px solid var(--c-ink);align-content:start;display:grid}.ui-steps>li:before{content:counter(step);font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--c-accent-ink)}@media (max-width:860px){.ui-steps{gap:var(--sp-24);grid-template-columns:minmax(0,1fr)}}.ui-checklist>li{gap:var(--sp-12);padding-block:var(--sp-4);grid-template-columns:18px minmax(0,1fr);display:grid}.ui-checklist>li:before{content:"";border-left:2px solid var(--c-accent);border-bottom:2px solid var(--c-accent);width:10px;height:6px;margin:.5em 0 0 3px;transform:rotate(-45deg)}.ui-disclosure{border-bottom:1px solid var(--c-line)}.ui-disclosure:first-of-type{border-top:1px solid var(--c-line)}.ui-disclosure>summary{margin-block:var(--sp-4);justify-content:space-between;align-items:center;gap:var(--sp-16);min-height:56px;padding-block:var(--sp-12);cursor:pointer;font-weight:var(--fw-strong);font-size:var(--fs-lg);line-height:1.35;list-style:none;display:flex}.ui-disclosure>summary::-webkit-details-marker{display:none}.ui-disclosure>summary:after{content:"";width:10px;height:10px;transition:transform var(--dur-ui) var(--ease);border-bottom:2px solid;border-right:2px solid;flex:none;margin-right:4px;transform:translateY(-3px)rotate(45deg)}.ui-disclosure[open]>summary:after{transform:translateY(2px)rotate(-135deg)}.ui-disclosure>:not(summary){padding-bottom:var(--sp-20);color:var(--c-ink-2);max-width:68ch}.ui-tabs{gap:var(--sp-4);border-bottom:1px solid var(--c-line);display:flex;overflow-x:auto}.ui-tabs [role=tab]{min-height:44px;padding:0 var(--sp-12);color:var(--c-ink-2);font-weight:var(--fw-medium);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px}.ui-tabs [role=tab][aria-selected=true]{color:var(--c-ink);border-bottom-color:var(--c-accent)}.ui-dialog{border:var(--bw-surface) solid var(--c-frame);border-radius:var(--radius-lg);background:var(--c-surface);width:min(480px,100vw - 32px);color:var(--c-ink);box-shadow:var(--shadow-overlay);padding:0}.ui-dialog::backdrop{background:var(--c-ink);opacity:.45}.ui-dialog__body{gap:var(--sp-16);padding:var(--sp-24);display:grid}.ui-dialog__actions{justify-content:flex-end;gap:var(--sp-12);padding:var(--sp-16) var(--sp-24);border-top:1px solid var(--c-line);background:var(--c-sunken);flex-wrap:wrap;display:flex}.ui-toast-region{z-index:40;right:var(--sp-16);bottom:var(--sp-16);gap:var(--sp-8);max-width:min(400px,100vw - 32px);display:grid;position:fixed}.ui-toast{gap:var(--sp-12);padding:var(--sp-12) var(--sp-16);border-radius:var(--radius-md);background:var(--c-ink);color:var(--c-canvas);box-shadow:var(--shadow-overlay);font-size:var(--fs-md);align-items:flex-start;display:flex}.ui-sitebar{z-index:30;background:color-mix(in srgb, var(--c-canvas) 94%, transparent);border-bottom:var(--bw-rule) solid var(--c-frame);position:sticky;top:0}.ui-sitebar__inner{justify-content:space-between;align-items:center;gap:var(--sp-24);min-height:64px;display:flex}.ui-brand{white-space:nowrap;align-items:center;gap:var(--sp-8);color:var(--c-ink);font-weight:var(--fw-display);font-size:var(--fs-lg);letter-spacing:calc(var(--track-display) * .4);min-height:44px;text-decoration:none;display:inline-flex}.ui-brand svg{width:20px;height:20px}.ui-sitenav{align-items:center;gap:var(--sp-8);display:flex}.ui-sitenav a:not(.ui-btn){min-height:44px;padding:0 var(--sp-12);color:var(--c-ink-2);font-weight:var(--fw-medium);border-radius:var(--radius-sm);align-items:center;text-decoration:none;display:inline-flex}.ui-sitenav a:not(.ui-btn):hover{color:var(--c-ink);background:var(--c-sunken)}.ui-menu{display:none}@media (max-width:860px){.ui-sitenav{display:none}.ui-menu{display:block;position:relative}.ui-menu>summary{min-width:44px;min-height:44px;padding:0 var(--sp-12);border:var(--bw-control) solid var(--control-edge,var(--c-control));border-radius:var(--radius-sm);cursor:pointer;font-weight:var(--fw-medium);justify-content:center;align-items:center;list-style:none;display:inline-flex}.ui-menu>summary::-webkit-details-marker{display:none}.ui-menu__panel{right:0;top:calc(100% + var(--sp-8));min-width:220px;padding:var(--sp-8);background:var(--c-surface);border:var(--bw-surface) solid var(--c-frame);border-radius:var(--radius-md);box-shadow:var(--shadow-overlay);display:grid;position:absolute}.ui-menu__panel a:not(.ui-btn){min-height:44px;padding:0 var(--sp-12);color:var(--c-ink);border-radius:var(--radius-sm);align-items:center;text-decoration:none;display:flex}.ui-menu__panel .ui-btn{margin-top:var(--sp-8)}}.ui-hero{padding-block:var(--hero-pad)}.ui-hero__copy{gap:var(--sp-24);align-content:start;min-width:0;display:grid}.ui-hero__art{place-items:center;min-width:0;display:grid}.ui-hero--stage .ui-split{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:stretch}.ui-hero--stage .ui-hero__art{place-items:center stretch;min-height:min(560px,64vh)}@media (max-width:960px){.ui-hero--stage .ui-split{grid-template-columns:minmax(0,1fr)}.ui-hero--stage .ui-hero__art{min-height:0}}.ui-quote{gap:var(--sp-24);max-width:52ch;display:grid}.ui-quote blockquote{font-family:var(--font-display);font-weight:var(--fw-medium);font-size:var(--fs-2xl);letter-spacing:-.01em;text-wrap:pretty;line-height:1.4}.ui-quote figcaption{font-size:var(--fs-md);color:var(--c-ink-2);gap:2px;display:grid}.ui-quote figcaption strong{color:var(--c-ink);font-weight:var(--fw-strong)}.ui-plans{gap:var(--sp-16);grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;display:grid}.ui-plan{gap:var(--sp-20);padding:var(--sp-32) var(--sp-24);background:var(--c-surface);border:var(--bw-surface) solid var(--c-frame);border-radius:var(--radius-md);box-shadow:var(--shadow-raised);flex-direction:column;display:flex}.ui-plan--featured{border-color:var(--c-ink);box-shadow:inset 0 0 0 1px var(--c-ink)}.ui-plan__price{font-family:var(--font-heading);font-weight:var(--fw-display);font-size:var(--fs-4xl);letter-spacing:calc(var(--track-display) * .5);font-variant-numeric:tabular-nums;line-height:1.15}.ui-plan__price small{font-family:var(--font-text);font-size:var(--fs-md);font-weight:var(--fw-text);color:var(--c-ink-3);letter-spacing:0}.ui-plan .ui-btn{margin-top:auto}@media (max-width:960px){.ui-plans{grid-template-columns:minmax(0,1fr);max-width:520px}}.ui-cta-band{justify-content:space-between;align-items:center;gap:var(--sp-24);flex-wrap:wrap;display:flex}.ui-footer{padding-block:var(--sp-48);background:var(--c-ink);color:var(--c-canvas)}.ui-footer a{color:inherit}.ui-footer .ui-meta{color:var(--c-canvas);opacity:.75}.ui-pixel{image-rendering:pixelated;shape-rendering:crispedges;max-width:100%;height:auto}.ui-app{grid-template-columns:232px minmax(0,1fr);min-height:100vh;display:grid}.ui-app__nav{gap:var(--sp-24);height:100vh;padding:var(--sp-20) var(--sp-16);border-right:var(--bw-rule) solid var(--c-frame);background:var(--c-surface);flex-direction:column;display:flex;position:sticky;top:0;overflow-y:auto}.ui-app__main{flex-direction:column;min-width:0;display:flex}.ui-navlist{gap:var(--sp-4);display:grid}.ui-navlist a,.ui-navlist button{align-items:center;gap:var(--sp-12);min-height:40px;padding:0 var(--sp-12);border-radius:var(--radius-sm);color:var(--c-ink-2);font-weight:var(--fw-medium);font-size:var(--fs-md);text-align:left;cursor:pointer;background:0 0;border:0;text-decoration:none;display:flex}.ui-navlist a:hover,.ui-navlist button:hover{background:var(--c-sunken);color:var(--c-ink)}.ui-navlist [aria-current=page],.ui-navlist [aria-current=true]{background:var(--c-sunken);color:var(--c-ink);box-shadow:inset 2px 0 0 var(--c-accent)}.ui-navlist svg{flex:none;width:18px;height:18px}.ui-navgroup{gap:var(--sp-8);display:grid}.ui-navgroup__label{padding:0 var(--sp-12);font-family:var(--font-meta);text-transform:var(--meta-case);letter-spacing:var(--track-label);font-size:var(--fs-xs);color:var(--c-ink-3);font-weight:var(--fw-medium)}.ui-topbar{z-index:20;justify-content:space-between;align-items:center;gap:var(--sp-12) var(--sp-24);min-height:64px;padding:var(--sp-12) var(--work-gutter);background:color-mix(in srgb, var(--c-canvas) 94%, transparent);border-bottom:var(--bw-rule) solid var(--c-frame);flex-wrap:wrap;display:flex;position:sticky;top:0}.ui-page{gap:var(--sp-24);padding:var(--sp-24) var(--work-gutter) var(--sp-48);display:grid}.ui-container>.ui-page{padding-inline:0}.ui-page__head{justify-content:space-between;align-items:flex-end;gap:var(--sp-16);flex-wrap:wrap;display:flex}.ui-page__title{font-family:var(--font-display);font-weight:var(--fw-display);font-size:var(--fs-2xl);letter-spacing:calc(var(--track-display) * .4);text-transform:var(--display-case);line-height:1.2}.ui-workgrid{gap:var(--sp-16);grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;display:grid}.ui-span-12{grid-column:span 12}.ui-span-8{grid-column:span 8}.ui-span-7{grid-column:span 7}.ui-span-6{grid-column:span 6}.ui-span-5{grid-column:span 5}.ui-span-4{grid-column:span 4}.ui-span-3{grid-column:span 3}.ui-scroll{max-height:var(--scroll-max,420px);overscroll-behavior:contain;overflow-y:auto}.ui-toolbar{justify-content:space-between;align-items:center;gap:var(--sp-12);flex-wrap:wrap;display:flex}.ui-panel__head>.ui-toolbar{flex:360px;justify-content:flex-end}.ui-search{flex:220px;max-width:320px;position:relative}.ui-empty{justify-items:center;gap:var(--sp-8);padding:var(--sp-48) var(--sp-24);text-align:center;color:var(--c-ink-2);display:grid}@media (max-width:1100px){.ui-span-8,.ui-span-7,.ui-span-6,.ui-span-5,.ui-span-4{grid-column:span 12}.ui-span-3{grid-column:span 6}}@media (max-width:860px){.ui-app{grid-template-columns:minmax(0,1fr)}.ui-app__nav{align-items:center;gap:var(--sp-12);height:auto;padding:var(--sp-8) var(--work-gutter);border-right:0;border-bottom:var(--bw-rule) solid var(--c-frame);flex-direction:row;position:static;overflow-x:auto}.ui-app__nav .ui-navgroup__label{display:none}.ui-navlist{gap:var(--sp-8);display:flex}.ui-navlist a,.ui-navlist button{white-space:nowrap;min-height:44px}.ui-navlist [aria-current=page],.ui-navlist [aria-current=true]{box-shadow:inset 0 -2px 0 var(--c-accent)}.ui-topbar{position:static}.ui-search{max-width:none}}@media (max-width:640px){.ui-span-3{grid-column:span 12}}.ui-settings{gap:var(--sp-48);grid-template-columns:220px minmax(0,720px);align-items:start;display:grid}.ui-settings__nav{position:sticky;top:88px}.ui-settings__body{gap:var(--sp-32);min-width:0;display:grid}.ui-setting-section{gap:var(--sp-20);scroll-margin-top:88px;display:grid}.ui-setting-section__head{gap:var(--sp-4);display:grid}.ui-setting-section--danger{border-color:var(--c-negative)}.ui-savebar{z-index:10;justify-content:space-between;align-items:center;gap:var(--sp-12);padding:var(--sp-12) var(--sp-16);background:var(--c-surface);border:var(--bw-surface) solid var(--c-frame);border-radius:var(--radius-md);box-shadow:var(--shadow-overlay);flex-wrap:wrap;display:flex;position:static;bottom:0}@media (min-width:1024px) and (min-height:700px){.ui-savebar{position:sticky}}@media (max-width:860px){.ui-settings{gap:var(--sp-24);grid-template-columns:minmax(0,1fr)}.ui-settings__nav{position:static}.ui-settings__nav .ui-navlist{display:flex;overflow-x:auto}}.ui-coord{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--on-head,var(--c-ink-3));font-variant-numeric:tabular-nums;overflow-wrap:anywhere;line-height:1.4}.ui-coord:before{content:"[ " / ""}.ui-coord:after{content:" ]" / ""}.ui-prompt:before{content:"> " / "";font-family:var(--font-mono);color:var(--c-accent-ink)}.ui-prompt--cursor:after{content:"" / "";vertical-align:text-bottom;background:var(--c-accent);width:.6em;height:1.1em;margin-left:.2em;display:inline-block}.ui-ruler{border-bottom:1px solid var(--c-line-strong);background-image:linear-gradient(90deg, var(--c-ink-3) 1px, transparent 1px), linear-gradient(90deg, var(--c-line-strong) 1px, transparent 1px);background-position:0 0,0 100%;background-repeat:repeat-x;background-size:40px 12px,8px 6px;height:12px}.ui-frame{padding:var(--panel-pad,var(--sp-24));background:var(--c-surface);border:var(--bw-surface) solid var(--c-frame);min-width:0;position:relative}.ui-frame:before,.ui-frame:after{content:"+" / "";font-family:var(--font-mono);font-size:var(--fs-lg);color:var(--c-accent-ink);line-height:1;position:absolute}.ui-frame:before{top:-.6em;left:-.32em}.ui-frame:after{bottom:-.6em;right:-.32em}.ui-scan{background-image:repeating-linear-gradient(0deg, transparent 0 2px, var(--c-line) 2px 3px)}.ui-readout{gap:var(--sp-4);min-width:0;padding:var(--sp-12) var(--sp-16);background-color:var(--c-sunken);color:var(--c-ink);border:var(--bw-control) solid var(--c-frame);border-radius:var(--radius-xs);font-family:var(--font-mono);font-variant-numeric:tabular-nums;display:grid}.ui-panel--accent{background:var(--c-accent-wash)}.ui-panel--support{background:var(--c-support);color:var(--c-support-ink)}.ui-panel--accent-2{background:var(--c-accent-2-wash)}.ui-band{background:var(--c-accent);color:var(--c-on-accent)}.ui-band--accent-2{background:var(--c-accent-2);color:var(--c-on-accent-2)}.ui-band--support{background:var(--c-support);color:var(--c-support-ink)}.ui-band :where(h1,h2,h3,h4,p,li,dt,dd,small,blockquote,figcaption,cite,.ui-meta),.ui-band .ui-quote figcaption,.ui-band .ui-quote figcaption strong{color:inherit}:is(.ui-section,.ui-band)+.ui-band,.ui-band+.ui-section{border-top:0}.ui-wash{background-image:linear-gradient(135deg, var(--c-accent-wash), var(--c-accent-2-wash))}.ui-glow{box-shadow:var(--glow)}:is(.ui-section,.ui-hero)[data-coord]{position:relative}:is(.ui-section,.ui-hero)[data-coord]:before{content:attr(data-coord) / "";display:var(--section-marks);top:calc(var(--bw-rule) * -1);left:max(var(--gutter), calc((100% - var(--container,1200px)) / 2 + var(--gutter)));padding:2px var(--sp-8);background:var(--c-ink);color:var(--c-canvas);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--track-label);text-transform:uppercase;line-height:1.4;position:absolute}.ui-setpiece{font-family:var(--font-display);font-weight:var(--fw-display);font-size:var(--fs-moment);letter-spacing:var(--track-display);text-transform:var(--display-case);text-wrap:balance;overflow-wrap:break-word;line-height:.92}:lang(ko) .ui-setpiece,.ui-setpiece:lang(ko){line-height:var(--lh-display-ko);letter-spacing:calc(var(--track-display) / 2)}.ui-bignum{font-family:var(--font-heading);font-weight:var(--fw-display);font-size:var(--fs-moment);letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;line-height:.9}.ui-sticker{align-items:center;gap:var(--sp-8);padding:var(--sp-4) var(--sp-12);background:var(--c-accent);color:var(--c-on-accent);border:var(--bw-control) solid var(--control-edge,var(--c-accent));border-radius:var(--radius-sm);box-shadow:var(--shadow-control);font-weight:var(--fw-strong);font-size:var(--fs-md);line-height:1.3;display:inline-flex;transform:rotate(-2deg)}.ui-chart{gap:var(--sp-12);min-width:0;display:grid}.ui-chart svg{width:100%;height:auto;overflow:visible}.ui-chart .ui-axis text{fill:var(--c-ink-3);font-size:12px;font-family:var(--font-meta);font-variant-numeric:tabular-nums}.ui-chart .ui-grid-line{stroke:var(--c-line);stroke-width:1px}.ui-chart .ui-baseline{stroke:var(--c-line-strong);stroke-width:1px}.ui-chart .ui-marker{stroke:var(--c-ink-2);stroke-width:1px;stroke-dasharray:3 3}.ui-chart .ui-marker-label{fill:var(--c-ink-2);font-size:12px;font-family:var(--font-text)}.ui-legend{gap:var(--sp-8) var(--sp-16);font-family:var(--font-meta);text-transform:var(--meta-case);font-size:var(--fs-sm);color:var(--c-ink-2);flex-wrap:wrap;display:flex}.ui-legend span{align-items:center;gap:var(--sp-8);display:inline-flex}.ui-legend i{border-radius:var(--radius-xs);background:var(--swatch);width:10px;height:10px}.ui-chart table{font-size:var(--fs-sm)}.ui-chart details>summary{cursor:pointer;align-items:center;min-height:44px;display:inline-flex}.ui-reveal{animation:ui-enter var(--dur-enter) var(--ease) both}@keyframes ui-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}.ui-btn:active{transform:none}}
@font-face{font-family:Meslo LGS NF;src:url(/fonts/MesloLGSNF-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Meslo LGS NF;src:url(/fonts/MesloLGSNF-Bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}.site-signature{align-items:center;gap:var(--sp-12) var(--sp-16);padding-bottom:var(--sp-16);border-bottom:1px solid;flex-wrap:wrap;display:flex}.site-signature__mark{height:var(--sp-48);width:auto;color:inherit}.site-signature .ui-label{color:inherit;opacity:.85}.site-signature__link{color:inherit;text-decoration:none;display:inline-flex}.site-signature__link:hover,.site-signature__link:focus-visible{color:var(--c-accent)}.site-signature__link:focus-visible{outline:var(--bw-control) solid var(--c-focus);outline-offset:var(--sp-4)}@font-face{font-family:Pretendard;src:url(/fonts/Pretendard-latin.woff2)format("woff2");font-weight:45 920;font-style:normal;font-display:swap}
body{background-color:var(--c-canvas);background-image:var(--canvas-pattern);background-size:var(--canvas-pattern-size);color:var(--c-ink)}.page-top{padding-top:var(--sp-48)}.site-brand{font-family:var(--font-mono);font-weight:var(--fw-strong);letter-spacing:.02em;text-transform:lowercase;align-items:center;gap:0;display:inline-flex}.site-brand__prompt{color:var(--c-accent-2-ink)}.site-brand__cursor{width:.6em;height:1.1em;margin-left:var(--sp-4);background:var(--c-accent);display:inline-block}.statusbar{border-top:1px solid var(--c-line);background:var(--c-sunken);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--c-ink-2)}.statusbar__inner{gap:var(--sp-4) var(--sp-24);flex-wrap:wrap;align-items:center;min-height:28px;display:flex}.statusbar__inner>span{white-space:nowrap}.statusbar__dot{width:var(--sp-8);height:var(--sp-8);background:var(--c-negative);vertical-align:middle;border-radius:50%;display:inline-block}.statusbar__dot[data-ok=true]{background:var(--c-positive)}.statusbar__time{color:var(--c-accent-ink);font-variant-numeric:tabular-nums;margin-left:auto}@media (max-width:640px){.statusbar__inner>span:nth-child(3),.statusbar__inner>span:nth-child(4){display:none}}.crt{pointer-events:none;z-index:1;background-image:repeating-linear-gradient(0deg, color-mix(in srgb, var(--c-sunken) 38%, transparent) 0 1px, transparent 1px 3px);position:absolute;inset:0}.crt:after{content:"";height:var(--sp-8);background-image:conic-gradient(var(--c-sunken) 25%, transparent 0 50%, var(--c-sunken) 0 75%, transparent 0);opacity:.9;background-size:4px 4px;position:absolute;bottom:0;left:0;right:0}@keyframes rgb-step{0%{text-shadow:2px 0 var(--c-accent), -2px 0 var(--c-accent-2)}50%{text-shadow:-2px 0 var(--c-accent), 2px 0 var(--c-accent-2)}to{text-shadow:none}}.reel-card:hover .reel-card__title,.reel-card:focus-visible .reel-card__title,.hero-looks button:hover{animation:.36s steps(3,end) both rgb-step}@media (prefers-reduced-motion:reduce){.reel-card:hover .reel-card__title,.hero-looks button:hover{animation:none}}.ui-panel__head .ui-panel__title:before{content:"▍";color:var(--c-accent);margin-right:var(--sp-4)}.site-theme{text-transform:uppercase;font-family:var(--font-mono);letter-spacing:var(--track-label)}.site-footer{gap:var(--sp-8);display:grid}code,pre,kbd,samp{font-family:var(--font-mono)}.home-hero{padding-top:var(--sp-24);gap:var(--sp-24);grid-template-columns:minmax(0,1fr);display:grid}.home-hero__hint--touch{display:none}@media (pointer:coarse),(max-width:767px){.home-hero__hint--fine{display:none}.home-hero__hint--touch{display:inline}}.home-hero__title{gap:var(--sp-8);display:grid}.home-hero__stage{padding-inline:var(--gutter);gap:var(--sp-12);grid-template-columns:minmax(0,1fr);display:grid}.home-hero__stage .hero-frame{max-height:calc(100svh - 240px);margin-inline:auto}.home-hero__head{gap:var(--sp-32);grid-template-columns:minmax(0,6fr) minmax(0,6fr);align-items:start;display:grid}.home-hero__aside{gap:var(--sp-20)}.home-hero__hint{text-align:center}.home-oneliner{border:var(--bw-control) solid var(--c-frame);background:var(--c-surface);align-items:stretch;display:flex}.home-oneliner code{min-width:0;padding:var(--sp-12) var(--sp-16);font-size:var(--fs-md);white-space:nowrap;flex:1;overflow-x:auto}.home-oneliner .copy-btn{border-width:0 0 0 var(--bw-control)}@media (max-width:900px){.home-hero__head{grid-template-columns:minmax(0,1fr)}}.hero-frame{--rx:50%;--ry:50%;aspect-ratio:16/9;max-height:calc(100svh - var(--sp-128));background:var(--c-sunken);cursor:crosshair;outline-offset:var(--sp-4);width:100%;padding:0;overflow:visible}.hero-frame:focus-visible{outline:var(--bw-control) solid var(--c-focus)}.hero-frame>.hero-media{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.hero-canvas{opacity:0;transition:opacity var(--dur-enter) var(--ease);pointer-events:none}.hero-frame[data-mode=live] .hero-canvas{opacity:1}.hero-frame[data-mode=live] .hero-poster{visibility:hidden;transition:visibility 0s var(--dur-enter)}.hero-reticle{pointer-events:none;position:absolute;inset:0;overflow:hidden}.hero-reticle:before,.hero-reticle:after{content:"";background:var(--c-accent);position:absolute}.hero-reticle:before{left:0;right:0;top:var(--ry);height:1px}.hero-reticle:after{top:0;bottom:0;left:var(--rx);width:1px}.hero-mark{font-family:var(--font-mono);font-size:var(--fs-3xl);color:var(--c-accent);pointer-events:none;line-height:1;animation:.9s steps(3,end) forwards hero-mark;position:absolute;transform:translate(-50%,-50%)}@keyframes hero-mark{0%{opacity:1}to{opacity:0}}.hero-reticle,.hero-mark,.reel-card__flash{z-index:2}.hero-hud{z-index:3;left:var(--sp-12);right:var(--sp-12);justify-content:space-between;align-items:flex-end;gap:var(--sp-8);pointer-events:none;flex-wrap:wrap;display:flex;position:absolute}.hero-hud--top{top:var(--sp-12);align-items:flex-start}.hero-hud--bottom{bottom:var(--sp-12)}.hero-chip{padding:var(--sp-4) var(--sp-8);background:var(--c-ink);color:var(--c-canvas);display:inline-block}.hero-bpm{background:var(--c-accent);color:var(--c-on-accent)}.hero-looks{pointer-events:auto;border:var(--bw-control) solid var(--c-ink);background:var(--c-ink);flex-wrap:wrap;gap:0;display:flex}.hero-looks button{min-height:44px;padding:0 var(--sp-12);border:0;border-right:1px solid var(--c-ink-3);background:var(--c-surface);color:var(--c-ink);font-family:var(--font-mono);font-size:var(--fs-sm);letter-spacing:var(--track-label);text-transform:uppercase;cursor:pointer;transition:background-color var(--dur-fast) var(--ease)}.hero-looks button:last-child{border-right:0}.hero-looks button:hover{background:var(--c-accent-wash)}.hero-looks button[aria-pressed=true]{background:var(--c-accent);color:var(--c-on-accent)}.hero-looks__key{font-weight:var(--fw-strong)}@media (max-width:640px){.hero-frame{aspect-ratio:4/5;max-height:none}.hero-hud--bottom{flex-direction:column;align-items:stretch}.hero-looks button{flex:40%}}.hero-plates{gap:var(--sp-24);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.hero-plate{margin:0;padding:0}.hero-plate img,.hero-plate video{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.hero-plate figcaption{justify-content:space-between;align-items:center;gap:var(--sp-8);padding:var(--sp-8) var(--sp-12);border-top:var(--bw-surface) solid var(--c-frame);display:flex}@media (max-width:640px){.hero-plates{grid-template-columns:1fr}}.steps{gap:var(--sp-24);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.steps>li{gap:var(--sp-12);align-content:start;display:grid}.steps .ui-bignum{font-size:var(--fs-5xl);color:var(--c-accent-ink)}.steps__code{padding:var(--sp-8) var(--sp-12);background:var(--c-sunken);font-size:var(--fs-sm);overflow-wrap:anywhere;display:block}.ui-band .ui-coord{color:inherit;opacity:.8}.install__tabs{flex-wrap:wrap;overflow:visible}@media (max-width:900px){.steps{grid-template-columns:1fr}}.home-row-head{justify-content:space-between;align-items:end;gap:var(--sp-16);flex-wrap:wrap;display:flex}.home-row-head .ui-section-head{margin-bottom:0}.reel-strip{gap:var(--sp-16);padding-bottom:var(--sp-16);scroll-snap-type:x mandatory;grid-auto-columns:minmax(280px,24%);grid-auto-flow:column;display:grid;overflow-x:auto}.reel-strip>*{scroll-snap-align:start}@media (max-width:360px){.reel-strip{display:flex}.reel-strip>*{flex:0 0 calc(100% - 40px);width:calc(100% - 40px);min-width:0}}.reel-grid{gap:var(--sp-24);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));align-items:start;display:grid}.reel-card{--tilt-x:0deg;--tilt-y:0deg;color:inherit;border:var(--bw-surface) solid var(--c-frame);background:var(--c-surface);transform:perspective(900px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y));transition:transform var(--dur-ui) var(--ease), border-color var(--dur-fast) var(--ease);gap:0;text-decoration:none;display:grid}.reel-card:hover,.reel-card:focus-visible{border-color:var(--c-accent)}.reel-card:focus-visible{outline:var(--bw-control) solid var(--c-focus);outline-offset:var(--sp-4)}.reel-card__media{aspect-ratio:16/9;background:var(--c-sunken);display:block;position:relative;overflow:hidden}.reel-card__media img,.reel-card__media video{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.reel-card__media img{object-fit:contain}.reel-card[data-awake=true] .reel-card__media img{visibility:hidden;transition:visibility 0s var(--dur-ui)}.reel-card__media video{object-fit:contain}.reel-card__flash{top:var(--sp-8);right:var(--sp-8);position:absolute}.reel-card__meta{gap:var(--sp-4);padding:var(--sp-12) var(--sp-16);border-top:var(--bw-surface) solid var(--c-frame);display:grid}.reel-card__title{font-family:var(--font-mono);font-weight:var(--fw-strong);text-transform:uppercase;letter-spacing:var(--track-label)}@media (prefers-reduced-motion:reduce){.reel-card{transition:none;transform:none}}.gallery-filters{gap:var(--sp-12);display:grid}.gallery-filters__row{align-items:center;gap:var(--sp-12);flex-wrap:wrap;display:flex}.gallery-filters__row .ui-label{min-width:7ch}.gallery-filters .ui-segmented button{text-transform:uppercase;font-family:var(--font-mono);letter-spacing:var(--track-label);font-size:var(--fs-sm)}.gallery-empty{gap:var(--sp-12);padding:var(--sp-48);border:var(--bw-surface) dashed var(--c-frame);justify-items:start;display:grid}.reel-nav{justify-content:space-between;align-items:center;gap:var(--sp-12);display:flex}.reel-layout{gap:var(--sp-32);grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start;display:grid}.reel-layout>*{min-width:0}@media (max-width:1024px){.reel-layout{grid-template-columns:1fr}}.reel-player{background:var(--c-sunken);padding:0}.reel-player video{width:100%;height:auto;aspect-ratio:var(--ar);object-fit:contain;max-height:78svh;display:block}.reel-prompt{font-size:var(--fs-md);line-height:var(--lh-body);margin:0 0 var(--sp-16)}.reel-score,.pg-score{margin:0 0 var(--sp-16);padding:var(--sp-16);white-space:pre-wrap;overflow-wrap:anywhere;background:var(--c-sunken);border:1px solid var(--c-line);max-width:100%;max-height:360px;font-family:var(--font-mono);font-size:var(--fs-sm);line-height:var(--lh-tight);overflow:auto}.install{width:100%;min-width:0}.install__tabs{padding:0 var(--sp-8)}.install__body{align-items:center;gap:var(--sp-12);padding:var(--sp-16);flex-wrap:wrap;display:flex}.install__cmd{padding:var(--sp-12) var(--sp-16);background:var(--c-sunken);font-family:var(--font-mono);font-size:var(--fs-md);flex:320px;margin:0;overflow-x:auto}.pg{gap:var(--sp-24);grid-template-columns:minmax(260px,3fr) minmax(0,9fr);grid-template-areas:"controls stage""controls out";align-items:start;display:grid}.pg-controls{top:var(--sp-80);grid-area:controls;position:sticky}.pg-stage{gap:var(--sp-16);grid-area:stage;min-width:0;display:grid}.pg-out{grid-area:out;min-width:0}@media (max-width:1024px){.pg{grid-template-columns:1fr;grid-template-areas:"stage""controls""out"}.pg-controls{position:static}}.pg-screen{aspect-ratio:var(--ar);background:var(--c-sunken);padding:0;overflow:visible}.pg-screen>canvas,.pg-screen>video,.pg-screen>img{object-fit:contain;width:100%;height:100%;display:block;position:absolute;inset:0}.pg-canvas{cursor:crosshair;touch-action:none}.pg-idle{place-content:center;gap:var(--sp-8);text-align:center;padding:var(--sp-24);display:grid;position:absolute;inset:0}.pg-hud{left:var(--sp-12);right:var(--sp-12);top:var(--sp-12);justify-content:space-between;gap:var(--sp-8);pointer-events:none;flex-wrap:wrap;display:flex;position:absolute}.pg-transport{align-items:center;gap:var(--sp-16);flex-wrap:wrap;display:flex}.pg-bpm{align-items:center;gap:var(--sp-8);display:inline-flex}.pg-bpm input{width:160px;accent-color:var(--c-accent)}.pg-file{cursor:pointer;position:relative}.pg-file:focus-within{outline:var(--bw-control) solid var(--c-focus);outline-offset:2px}.pg-audio{gap:var(--sp-8);display:grid}.pg-audio audio{width:100%}.pg-sliders{gap:var(--sp-16);border:0;margin:0;padding:0;display:grid}.pg-slider{gap:var(--sp-4);display:grid}.pg-slider__head{justify-content:space-between;gap:var(--sp-8);font-size:var(--fs-sm);display:flex}.pg input[type=range]{width:100%;min-height:var(--sp-32);accent-color:var(--c-accent)}.pg-slider input{width:100%;accent-color:var(--c-accent)}.pg-slider input:disabled{opacity:.5}.mx-wrap{gap:var(--sp-24);display:grid;position:relative}.mx-jump{width:min(100%,280px)}.mx-family{gap:var(--sp-16);scroll-margin-top:var(--sp-80);display:grid}.mx-grid{gap:var(--sp-16);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));align-items:start;display:grid}.mx-cell{background:var(--c-surface);border:var(--bw-surface) solid var(--c-frame);gap:0;display:grid}.mx-cell:hover,.mx-cell:focus-within{border-color:var(--c-accent)}.mx-cell__main{color:inherit;gap:0;min-width:0;text-decoration:none;display:grid}.mx-cell__main:focus-visible{outline:var(--bw-control) solid var(--c-focus);outline-offset:var(--sp-4)}.mx-cell__media{aspect-ratio:16/9;background:var(--c-sunken);display:block;position:relative;overflow:hidden}.mx-cell__media img{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.mx-cell__idle{padding:var(--sp-12);text-align:center;font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--c-ink-3);place-content:center;display:grid;position:absolute;inset:0}.mx-cell__flash{top:var(--sp-8);right:var(--sp-8);z-index:2;position:absolute}.mx-cell__meta{gap:var(--sp-4);padding:var(--sp-12) var(--sp-16);border-top:var(--bw-surface) solid var(--c-frame);display:grid}.mx-cell__title{font-family:var(--font-mono);font-weight:var(--fw-strong);text-transform:uppercase;letter-spacing:var(--track-label)}.mx-cell:hover .mx-cell__title,.mx-cell:focus-within .mx-cell__title{animation:.36s steps(3,end) both rgb-step}@media (prefers-reduced-motion:reduce){.mx-cell:hover .mx-cell__title,.mx-cell:focus-within .mx-cell__title{animation:none}}.mx-cell__actions{gap:var(--sp-8);padding:var(--sp-8) var(--sp-16) var(--sp-12);display:flex}.mx-cell__actions .copy-btn{min-height:32px;font-size:var(--fs-sm);padding-top:0;padding-bottom:0}.mx-overlay{z-index:2;pointer-events:none;background:var(--c-sunken);position:absolute}.mx-overlay__canvas{width:100%;height:100%;display:block}.mx-empty{grid-column:1/-1}.pg-row2{gap:var(--sp-12);grid-template-columns:1fr 1fr;align-items:end;display:grid}.pg-source,.pg-palette,.pg-stack,.pg-hits{gap:var(--sp-12);border:0;margin:0;padding:0;display:grid}.ui-input--mono{font-family:var(--font-mono)}.pg-swatches{gap:var(--sp-8);flex-wrap:wrap;align-items:center;display:flex}.pg-swatch{width:var(--sp-32);height:var(--sp-32);background-color:var(--c-sunken);border:var(--bw-control) solid var(--c-line);cursor:pointer;background-repeat:no-repeat;background-size:100% 100%;padding:0}.pg-swatch.is-on{border-color:var(--c-accent);outline:var(--bw-control) solid var(--c-accent);outline-offset:1px}.pg-controls,.pg-controls .ui-stack,.pg-controls fieldset,.pg-row2>*{min-width:0}.pg-row2{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.pg-row2 .ui-select,.pg-hits .ui-select{text-overflow:ellipsis;width:100%;min-width:0;overflow:hidden}.pg-grid{gap:var(--sp-12) var(--sp-16);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.pg-bar{gap:var(--sp-4);min-width:0;display:grid}.pg-bar__label{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--track-label);color:var(--c-ink-3)}.pg-bar__steps{grid-template-columns:repeat(4, minmax(var(--sp-32), 1fr));gap:var(--sp-4);display:grid}@media (min-width:1025px){.pg-controls .pg-row2,.pg-controls .pg-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:1024px){.pg-grid{grid-template-columns:repeat(4, minmax(var(--sp-32), 1fr))}}@media (max-width:640px){.pg-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pg-row2{grid-template-columns:minmax(0,1fr)}}.pg-step{min-width:var(--sp-32);min-height:var(--sp-32);aspect-ratio:1;background:var(--c-sunken);border:var(--bw-control) solid var(--c-line);color:var(--c-ink-3);font-family:var(--font-mono);font-size:var(--fs-sm);cursor:pointer;padding:0}.pg-step.is-hit{background:var(--c-accent);border-color:var(--c-accent);color:var(--c-canvas)}.pg-step.is-now{outline:var(--bw-control) solid var(--c-focus);outline-offset:1px}.pg-source .ui-input,.pg-palette .ui-input{width:100%}.kx-lens{z-index:-1;pointer-events:none;width:100vw;height:100vh;position:fixed;inset:0}@media (prefers-reduced-motion:reduce){.kx-lens{display:none}}main .ui-section+.ui-section{position:relative}main .ui-section+.ui-section:after{content:"";left:0;right:0;top:calc(var(--bw-rule) * -1);height:var(--bw-rule);background:var(--c-accent);transform:scaleX(var(--kx-rule,1));transform-origin:0;pointer-events:none;position:absolute}main .ui-section[data-coord]:before{z-index:1}.kx-w__word{white-space:nowrap;display:inline-block}.kx-w__c{text-align:center;display:inline-block}.kx-host{isolation:isolate;position:relative}.kx-halftone{z-index:-1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.kx-ticker{gap:var(--sp-8);display:grid}.kx-ticker__rail{border-block:var(--bw-control) solid var(--c-line);background:var(--c-canvas);padding-block:var(--sp-8);overflow:hidden}.kx-ticker__track{white-space:nowrap;width:max-content;font-family:var(--font-mono);font-size:var(--fs-sm);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--c-ink-2);will-change:transform}.kx-ticker__foot{align-items:center;gap:var(--sp-12);display:flex}.kx-ticker__beat{background:var(--c-accent-2);transform-origin:0;opacity:.4;width:64px;height:2px}.kx-ticker__meta{font-family:var(--font-mono);font-variant-numeric:tabular-nums}
