:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--app-background:#0a0b0c;--window:#16181b;--panel:#202327;--panel-raised:#2a2e33;--inset:#0f1113;--border-subtle:#2f3339;--border-strong:#434952;--border-hover:#59606a;--text-primary:#e4e7eb;--text-secondary:#a2a8b0;--text-muted:#868d96;--accent:#3b8bff;--accent-soft:#3b8bff29;--accent-strong:#2b6fdb;--accent-strong-hover:#2563c7;--on-accent:#fff;--accent-text:#5c9dff;--lcd:#5fd4ff;--play:#39d07a;--cycle:#f2a93b;--danger:#ff5a5f;--danger-soft:#ff5a5f29;--on-danger:#fff;--error-text:#ffb0b3;--error-text-strong:#ff8a8e;--error-border:#ff5a5f73;--error-banner-border:#ff5a5f66;--danger-button-border:#ff5a5f99;--success-text:#9ff0c0;--success-soft:#39d07a1a;--success-border:#39d07a73;--playhead:#ffffffd9;--highlight:#ffffff0d;--hover-overlay:#ffffff14;--group-fill:#ffffff06;--ad-stripe:#ffffff04;--chip-edge:transparent;--ad-placeholder:transparent;--ad-placeholder-edge:transparent;--slider-thumb:var(--text-primary);--clip-body:#1a2130;--clip-header:#243247;--note:#7fb2ff;--note-edge:#a9cbff;--stripe-light:#14171a;--stripe-dark:#101214;--roll-bar:#2f3339;--chord-major:#2e5e9e;--chord-minor:#5a4a9e;--chord-dominant:#9a6128;--chord-diminished:#8e3e43;--chord-suspended:#2a7d75;--chord-extended:#7a3f82;--chord-text:#fff;--chord-hover:brightness(1.12);--font-ui:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, "Liberation Mono", "D2Coding", monospace;--radius-control:3px;--radius-block:4px;--radius-panel:6px;--control-height:28px;--top-highlight:inset 0 1px 0 var(--highlight);--lcd-shadow:inset 0 1px 2px #0009;--popover-shadow:0 6px 18px #00000073;--focus-ring:0 0 0 1px var(--accent), 0 0 0 4px var(--accent-soft)}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--app-background:#e8f3fa;--window:#f3f9fd;--panel:#fff;--panel-raised:#f1f7fc;--inset:#e6f1f9;--border-subtle:#cde2f0;--border-strong:#6c8aa3;--border-hover:#4f6b84;--text-primary:#0f1d2a;--text-secondary:#34495c;--text-muted:#4f677c;--accent:#0a6fae;--accent-soft:#2ebee62e;--accent-strong:#2ebee6;--accent-strong-hover:#22acd4;--on-accent:#0f1d2a;--accent-text:#075f96;--lcd:#065a84;--play:#18794a;--cycle:#9a5800;--danger:#c3262e;--danger-soft:#c3262e14;--error-text:#a61d24;--error-text-strong:#a61d24;--error-border:#c3262e73;--error-banner-border:#c3262e66;--danger-button-border:#c3262e99;--success-text:#16703d;--success-soft:#18794a17;--success-border:#18794a73;--playhead:#0f1d2ad9;--highlight:#ffffffe6;--hover-overlay:#0a3c640f;--group-fill:#0a3c6408;--ad-stripe:#0a3c6408;--chip-edge:#cde2f0;--ad-placeholder:#fff;--ad-placeholder-edge:#cde2f0;--slider-thumb:#fff;--clip-body:#ecf7ff;--clip-header:#cdeaff;--note:#1683c9;--note-edge:#0b5c92;--stripe-light:#f7fbfe;--stripe-dark:#ecf5fb;--roll-bar:#cde2f0;--chord-major:#81c7ff;--chord-minor:#a6e4ff;--chord-dominant:#2ebee6;--chord-diminished:#82d7ff;--chord-suspended:#b3e4ff;--chord-extended:#9fc3f7;--chord-major-edge:#4ba3e8;--chord-minor-edge:#6cc3e8;--chord-dominant-edge:#1f9cc0;--chord-diminished-edge:#4bb4e0;--chord-suspended-edge:#7fc5e8;--chord-extended-edge:#6f9ce0;--chord-text:#0f1d2a;--chord-hover:brightness(.95);--lcd-shadow:inset 0 1px 2px #1018281f;--popover-shadow:0 6px 18px #0a3c642e}*,:before,:after{box-sizing:border-box}html{background:var(--app-background);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--app-background);min-height:100vh;color:var(--text-primary);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;flex-direction:column;margin:0;font-size:14px;line-height:1.5;display:flex}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button,input,select,textarea{font:inherit;color:inherit}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.skip-link{z-index:100;border-radius:var(--radius-control);background:var(--accent-strong);color:var(--on-accent);padding:6px 12px;position:absolute;top:-40px;left:8px}.skip-link:focus{top:8px}.tbd{color:var(--text-muted);font-style:italic}.site-header{background:var(--panel);border-bottom:1px solid var(--border-subtle)}.site-header__inner{align-items:center;gap:24px;max-width:1440px;min-height:48px;margin:0 auto;padding:0 16px;display:flex}.brand{color:var(--text-primary);white-space:nowrap;align-items:center;gap:8px;font-size:15px;font-weight:600;display:flex}.brand:hover{text-decoration:none}.brand__mark{flex:none;width:22px;height:22px}.site-nav{scrollbar-width:none;flex:1;gap:4px;min-width:0;display:flex;overflow-x:auto}.site-nav a,.site-header__end a{border-radius:var(--radius-control);color:var(--text-secondary);white-space:nowrap;padding:6px 10px;font-size:13px}.site-nav a:hover,.site-header__end a:hover{background:var(--panel-raised);color:var(--text-primary);text-decoration:none}.site-nav a[aria-current=page]{color:var(--text-primary);box-shadow:inset 0 -2px 0 var(--accent);border-radius:0}.site-header__end{align-items:center;gap:4px;display:flex}.account-slot:empty{display:none}.account-slot .remove-ads-link{color:var(--cycle)}.theme-toggle{border-radius:var(--radius-control);height:32px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0 10px;display:inline-flex;position:relative}.theme-toggle:before{content:"";width:44px;height:44px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.theme-toggle:hover{background:var(--panel-raised);color:var(--text-primary)}.theme-toggle__icon{display:block}.theme-toggle__sun,:root[data-theme=light] .theme-toggle__moon{display:none}:root[data-theme=light] .theme-toggle__sun{display:block}@media (max-width:640px){.site-header__inner{flex-wrap:wrap;gap:0 12px;padding:6px 12px 0}.site-nav{flex-basis:100%;order:3;margin:0 -10px}.site-header__end{margin-left:auto}}.page{flex:1;width:100%;max-width:1440px;margin:0 auto;padding:16px}.page--content,.page--app{max-width:820px;padding:32px 16px 48px}.page--app{min-height:100vh}.tool-intro{flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0 0 12px;display:flex}.tool-intro h1{margin:0;font-size:18px;font-weight:600}.tool-intro p{color:var(--text-secondary);margin:0;font-size:13px}.tool-host{border:1px solid var(--border-subtle);border-radius:var(--radius-panel);background:var(--window);min-height:640px;overflow:hidden}.tool-placeholder,.app-loading{color:var(--text-muted);padding:24px}.noscript{color:var(--cycle);padding:0 24px 24px}@media (min-width:1024px) and (max-width:1279px){.tool-host{min-height:692px}}@media (max-width:1023px){.tool-host{min-height:900px}}@media (max-width:640px){.tool-host{min-height:1440px}}.ad-slot{flex-direction:column;justify-content:center;align-items:flex-start;gap:4px;min-height:110px;margin:12px 0;display:flex;overflow:hidden}.ad-slot:not(.ad-slot--filled):before{content:"";border-radius:var(--radius-panel);background:repeating-linear-gradient(-45deg, transparent 0 8px, var(--ad-stripe) 8px 16px), var(--ad-placeholder);width:100%;max-width:728px;height:90px;box-shadow:inset 0 0 0 1px var(--ad-placeholder-edge)}.ad-slot--filled:before{content:attr(aria-label);color:var(--text-muted);font-size:11px;line-height:16px}.ad-slot iframe{border:0;display:block}.ad-slot--top{margin:24px 0 48px}.ad-free .ad-slot,.ad-slot[hidden]{display:none!important}@media (max-width:759px){.ad-slot{align-items:center;min-height:70px}.ad-slot--top{margin-bottom:44px}.ad-slot:not(.ad-slot--filled):before{max-width:320px;height:50px}}@media (max-width:351px){.ad-slot{margin-inline:-16px}}.ads-notice{border:1px solid var(--border-subtle);border-radius:var(--radius-panel);background:var(--panel);width:320px;max-width:calc(100% - 32px);color:var(--text-secondary);margin:12px 16px 0;padding:12px 14px;font-size:13px;line-height:1.5}.ads-notice__head{color:var(--text-primary);justify-content:space-between;align-items:center;gap:8px;display:flex}.ads-notice__close{color:var(--text-muted);cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:18px;line-height:1}.ads-notice p{margin:6px 0 10px}.ads-notice__dismiss{border:1px solid var(--border-strong);border-radius:var(--radius-control);color:var(--text-primary);cursor:pointer;background:0 0;padding:4px 12px;font-size:12px}.ads-notice-off .ads-notice{display:none}@media (max-width:759px){.ads-notice{width:auto;max-width:none}}.ad-notice{z-index:50;border-top:1px solid var(--border-subtle);background:var(--panel);color:var(--text-secondary);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 16px;padding:10px 16px;font-size:13px;line-height:1.5;display:flex;position:fixed;inset:auto 0 0}.ad-notice__text{max-width:760px;margin:0}.ad-notice__details{border-bottom:1px solid var(--border-subtle);flex-basis:100%;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 24px;width:100%;max-width:1200px;margin:0 auto;padding-bottom:10px;display:grid}.ad-notice__details[hidden]{display:none}.ad-notice__details h3{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin:0 0 4px;font-size:11px;font-weight:600}.ad-notice__details p{margin:0}.ad-notice__actions{align-items:center;gap:8px;display:flex}.ad-notice__toggle{color:var(--text-secondary);cursor:pointer;background:0 0;border:0;padding:4px 8px}.ad-notice__choice,.ad-settings__close,.prose button[data-ad-settings]{border:1px solid var(--border-strong);border-radius:var(--radius-control);color:var(--text-primary);cursor:pointer;background:0 0;padding:4px 14px}.ad-notice__choice:hover,.ad-settings__close:hover,.prose button[data-ad-settings]:hover{background:var(--highlight)}.ad-settings{border:1px solid var(--border-subtle);border-radius:var(--radius-panel);background:var(--panel);width:min(480px,100% - 32px);color:var(--text-secondary);padding:20px 24px;font-size:14px;line-height:1.5}.ad-settings::backdrop{background:#0000008c}.ad-settings h2{color:var(--text-primary);margin:0 0 8px;font-size:16px}.ad-settings p{margin:0 0 12px}.ad-settings__status{color:var(--text-primary);font-weight:600}.ad-settings__links{justify-content:flex-end;align-items:center;gap:16px;margin-top:16px;display:flex}.footer-nav button{color:var(--text-primary);font:inherit;cursor:pointer;background:0 0;border:0;padding:0}@media (max-width:759px){.ad-notice{padding:12px 16px 14px}.ad-notice__details{grid-template-columns:1fr}.ad-notice__actions{flex-wrap:wrap;flex-basis:100%}.ad-notice__toggle{text-align:left;flex-basis:100%;padding:0}.ad-notice__choice{flex:1 1 0;padding:10px 14px}.ad-settings{border-radius:var(--radius-panel) var(--radius-panel) 0 0;width:100%;max-width:none;max-height:85vh;margin:0;position:fixed;inset:auto 0 0;overflow:auto}.ad-settings .ad-notice__choice{flex:1 1 0}}.prose{max-width:760px;color:var(--text-primary);font-size:15px;line-height:1.7}.landing{margin:40px auto 24px}.prose h1{margin:0 0 24px;font-size:28px;line-height:1.3}.prose h2{border-bottom:1px solid var(--border-subtle);margin:40px 0 12px;padding-bottom:6px;font-size:20px;line-height:1.35}.prose h3{margin:28px 0 8px;font-size:16px}.prose p,.prose ul,.prose ol{margin:0 0 14px}.prose li+li{margin-top:4px}.prose code,.prose kbd{border-radius:var(--radius-control);background:var(--inset);border:1px solid var(--border-subtle);font-family:var(--font-mono);overflow-wrap:anywhere;padding:1px 6px;font-size:.88em}.prose kbd{box-shadow:inset 0 -1px 0 var(--border-strong)}.prose pre{border-radius:var(--radius-panel);background:var(--inset);border:1px solid var(--border-subtle);padding:12px 16px;overflow-x:auto}.prose pre code{white-space:pre;border:0;padding:0}.prose blockquote{border-left:3px solid var(--accent);background:var(--panel);color:var(--text-secondary);margin:0 0 14px;padding:8px 16px}.toc{border:1px solid var(--border-subtle);border-radius:var(--radius-panel);background:var(--panel);margin:0 0 24px;padding:10px 16px 12px;font-size:14px}.prose .toc__title{color:var(--text-secondary);margin:0 0 4px;font-weight:600}.prose .toc ul{column-gap:32px;margin:0;padding-left:20px}.prose .toc li{break-inside:avoid;padding:2px 0}.prose .toc li+li{margin-top:0}@media (min-width:641px){.prose .toc ul{columns:2}}.prose details{border:1px solid var(--border-subtle);border-radius:var(--radius-panel);margin:0 0 16px}.prose summary{border-radius:var(--radius-panel);background:var(--panel);cursor:pointer;padding:10px 16px;font-weight:600}.prose details[open]>summary{border-bottom:1px solid var(--border-subtle);border-radius:var(--radius-panel) var(--radius-panel) 0 0;margin-bottom:4px}.prose details>:not(summary){margin-inline:16px}.table-wrap{margin:0 0 16px;overflow-x:auto}.prose table{border-collapse:collapse;width:100%;font-size:14px}.prose th,.prose td{border-bottom:1px solid var(--border-subtle);text-align:left;vertical-align:top;padding:8px 12px}.prose th{color:var(--text-secondary);background:var(--panel);font-weight:600}.prose hr{border:0;border-top:1px solid var(--border-subtle);margin:32px 0}.site-footer{background:var(--panel);border-top:1px solid var(--border-subtle);color:var(--text-secondary);margin-top:32px;font-size:12px}.site-footer__inner{max-width:1440px;margin:0 auto;padding:24px 16px 32px}.footer-nav{flex-wrap:wrap;gap:4px 20px;margin-bottom:12px;display:flex}.footer-nav a{color:var(--text-primary)}.privacy-promise{color:var(--text-secondary);margin:0 0 12px}.business-info{flex-wrap:wrap;gap:2px 18px;margin:0 0 12px;display:flex}.business-info div{gap:6px;display:flex}.business-info dt{color:var(--text-muted)}.business-info dd{margin:0}.copyright{color:var(--text-muted);margin:0}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.prose a{text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1px}.prose img{border:1px solid var(--border-subtle);border-radius:var(--radius-panel);max-width:100%;height:auto;margin:8px 0 20px;display:block}
