:root{color-scheme:dark;--bg:#0b1114;--panel:#111b20;--panel2:#162329;--line:#2b3a3f;--text:#eaf0e9;--muted:#a7b7b6;--mint:#ccf5aa;--amber:#dcb67c;--red:#ffb5aa;--radius:15px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}a:hover{color:var(--mint)}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--mint);outline-offset:5px}button{cursor:pointer}.wrap{max-width:1260px;margin:auto;padding:0 38px}.skip{position:absolute;left:20px;top:-100px;background:var(--mint);color:var(--bg);padding:10px;z-index:10}.skip:focus{top:10px}.topbar{border-bottom:1px solid var(--line)}header{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:90px}.brand{font-size:23px;font-weight:750;letter-spacing:-1px;display:flex;align-items:center;gap:12px}.brandmark{width:29px;height:29px;position:relative;border:2px solid var(--mint);border-radius:50%}.brandmark:after{content:"";position:absolute;width:15px;height:2px;right:-8px;bottom:2px;transform:rotate(45deg);background:var(--mint)}nav{display:flex;gap:27px;font-size:14px;color:var(--muted)}nav a[aria-current=page]{color:var(--mint)}.header-cta{font-size:13px;border:1px solid var(--line);padding:9px 15px;border-radius:6px}.status{display:inline-flex;align-items:center;gap:9px;font:11px/1.4 ui-monospace,monospace;letter-spacing:1.1px;text-transform:uppercase;color:var(--mint)}.status:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--mint)}.hero{display:grid;grid-template-columns:1.13fr 1fr;gap:64px;padding:83px 0 66px;align-items:center}.eyebrow{font:11px ui-monospace,monospace;letter-spacing:2.2px;text-transform:uppercase;color:var(--mint)}h1{font-size:clamp(48px,5.8vw,79px);font-weight:500;letter-spacing:-4.5px;line-height:1.06;margin:22px 0 25px}h1 span{color:var(--mint)}.lead{font-size:19px;color:var(--muted);max-width:490px;line-height:1.7}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:30px;padding:13px 19px;border-radius:6px;background:var(--mint);color:#102019;border:1px solid var(--mint);font-weight:650;font-size:14px}.btn:hover{background:#e4ffd0;color:#102019}.btn.secondary{color:var(--text);background:transparent;border-color:var(--line)}.tiny{font:11px/1.7 ui-monospace,monospace;color:var(--muted)}.hero .tiny{margin-top:23px}.console{border:1px solid #3d5051;border-radius:var(--radius);background:linear-gradient(150deg,#17272b,#0f191d);box-shadow:0 30px 90px #0005;overflow:hidden}.console-top{display:flex;justify-content:space-between;padding:17px 20px;border-bottom:1px solid var(--line);font:11px ui-monospace,monospace;letter-spacing:.8px;color:var(--muted)}.console-body{padding:27px}.console h2{font-size:23px;font-weight:500;letter-spacing:-.5px;margin:0 0 4px}.signal-viz{height:145px;width:100%;margin:8px 0}.stage-row{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:15px 0;gap:10px;font-size:13px}.stage-row span:first-child{color:var(--muted)}.pill{font:10px ui-monospace,monospace;letter-spacing:.7px;border:1px solid #43534b;color:var(--mint);border-radius:30px;padding:5px 9px;white-space:nowrap}.pill.amber{color:var(--amber);border-color:#68533a}.console-note{border-top:1px solid var(--line);padding:14px 20px;background:#0c161a;font-size:11px;color:var(--muted)}.principles{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:74px}.principle{padding:24px 30px 24px 0;display:flex;align-items:flex-start;gap:17px}.principle:not(:first-child){padding-left:30px;border-left:1px solid var(--line)}.number{font:12px ui-monospace,monospace;color:var(--mint);padding-top:4px}.principle strong{font-size:14px;font-weight:550}.principle p{font-size:12px;color:var(--muted);margin:5px 0 0}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin:0 0 27px}h2{font-size:34px;letter-spacing:-1.3px;line-height:1.2;font-weight:500;margin:10px 0 0}.section-head a{font-size:13px;border-bottom:1px solid var(--line);padding-bottom:5px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{display:flex;flex-direction:column;padding:25px;border:1px solid var(--line);border-radius:10px;background:var(--panel);transition:transform .2s,border-color .2s;min-width:0}.card:hover{border-color:#6a8b72;transform:translateY(-3px)}.card .card-kicker{font:10px ui-monospace,monospace;letter-spacing:1px;color:var(--mint);text-transform:uppercase}.card h3{font-weight:500;font-size:23px;line-height:1.3;letter-spacing:-.5px;margin:20px 0 12px}.card p{font-size:14px;color:var(--muted);margin:0 0 25px}.card .foot{margin-top:auto;display:flex;justify-content:space-between;padding-top:15px;border-top:1px solid var(--line);color:var(--muted);font:11px ui-monospace,monospace}.editorial-section{margin-bottom:78px}.tool-band{display:grid;grid-template-columns:1fr 1.05fr;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--panel);margin-bottom:78px}.tool-band .copy{padding:40px}.tool-band p{color:var(--muted);font-size:15px;max-width:440px}.tool-grid{display:grid;grid-template-columns:1fr 1fr;border-left:1px solid var(--line)}.tool-item{padding:24px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);display:flex;flex-direction:column;gap:14px;font-size:14px}.tool-icon{font:26px ui-monospace,monospace;color:var(--mint)}.tool-item small{font-size:12px;color:var(--muted)}.closing{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:38px 0 55px;border-top:1px solid var(--line)}.closing h2{font-size:29px;margin:0}.closing p{color:var(--muted);font-size:14px;margin:8px 0 0}footer{border-top:1px solid var(--line);padding:30px 0 38px;color:var(--muted);font-size:12px}.footer-inner{display:flex;justify-content:space-between;gap:30px}.footer-links{display:flex;gap:20px}.footer-note{font-size:11px;max-width:650px;margin-top:18px;color:#8c9e9f}.breadcrumbs{font-size:12px;color:var(--muted);padding:28px 0}.breadcrumbs a{color:var(--mint)}.page-hero{padding:35px 0 49px;max-width:850px}.page-hero h1{font-size:clamp(42px,5.1vw,65px);letter-spacing:-3px}.page-hero .lead{max-width:730px}.meta{font:11px ui-monospace,monospace;color:var(--muted);margin-top:24px}.article-grid{display:grid;grid-template-columns:minmax(0,760px) 1fr;gap:65px;padding-bottom:45px}.prose section{padding:20px 0;border-top:1px solid var(--line);scroll-margin-top:20px}.prose h2{font-size:25px;letter-spacing:-.6px}.prose p{color:#c3cecb;font-size:17px;line-height:1.85}.aside{border-left:1px solid var(--line);padding-left:24px}.aside strong{font:11px ui-monospace,monospace;color:var(--mint);letter-spacing:1px;text-transform:uppercase}.aside a{display:block;font-size:13px;color:var(--muted);margin:15px 0}.aside .boundary{font-size:12px;color:var(--muted);margin-top:35px;border-top:1px solid var(--line);padding-top:19px}.related{padding:30px 0 70px}.related .cards{grid-template-columns:repeat(3,1fr)}.related h2{margin-bottom:24px}.related .card h3{font-size:19px}.related .card{padding:22px}.calculator{border:1px solid #43554e;background:var(--panel);padding:30px;border-radius:var(--radius);margin:0 0 40px;max-width:900px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px}label{display:flex;flex-direction:column;gap:8px;color:var(--muted);font-size:13px}input,select{width:100%;min-width:0;padding:12px;border:1px solid #3b5055;border-radius:6px;background:#0c171b;color:var(--text)}input[type=file]{font-size:12px}.calculator .btn{margin-top:22px}.result{margin-top:22px;padding:22px;border-radius:8px;background:#0b1518;border:1px solid var(--line);white-space:pre-line;color:var(--mint);font-size:17px}.result.error{color:var(--red)}.result-label{font:10px ui-monospace,monospace;color:var(--muted);text-transform:uppercase;letter-spacing:1px}.download-example{display:block;font-size:12px;text-decoration:underline;margin-top:12px}.preview-notice{background:#171b16;color:#d2d3af;text-align:center;padding:8px 20px;font:10px ui-monospace,monospace;letter-spacing:.6px}.tool-note{font-size:12px;color:var(--muted);margin-top:18px}.menu-toggle{display:none}.visual-grid{stroke:#35504b;stroke-width:1;opacity:.35}.brand-art{max-width:100%;height:auto}@media(max-width:960px){.wrap{padding:0 24px}.hero{gap:28px}h1{font-size:60px}.cards{gap:12px}.card{padding:20px}.hero .console-body{padding:20px}.article-grid{gap:30px}.related .cards{grid-template-columns:1fr 1fr}.tool-band .copy{padding:28px}}@media(max-width:720px){.wrap{padding:0 20px}header{min-height:74px;flex-wrap:wrap;padding-top:16px;padding-bottom:14px;gap:14px}.header-cta{display:none}nav{gap:18px;font-size:12px;width:100%;overflow-x:auto;padding:5px 0}.brand{font-size:21px}.hero{grid-template-columns:1fr;padding:47px 0 35px;gap:32px}h1{font-size:61px;letter-spacing:-3.4px}.hero .lead{font-size:17px}.console{max-width:520px}.principles{grid-template-columns:1fr;margin-bottom:45px}.principle,.principle:not(:first-child){padding:18px 0;border-left:0}.principle:not(:first-child){border-top:1px solid var(--line)}.cards{grid-template-columns:1fr}.section-head{align-items:start}h2{font-size:29px}.tool-band{grid-template-columns:1fr;margin-bottom:45px}.tool-grid{border-left:0;border-top:1px solid var(--line)}.tool-item{padding:21px}.closing{flex-direction:column;align-items:flex-start}.footer-inner{flex-direction:column;gap:18px}.footer-links{flex-wrap:wrap}.article-grid{grid-template-columns:1fr}.aside{border-left:0;border-top:1px solid var(--line);padding:20px 0}.page-hero{padding:20px 0 35px}.page-hero h1{font-size:49px;letter-spacing:-2.5px}.related .cards{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.calculator{padding:20px}.prose p{font-size:16px}.section-head a{font-size:11px}.editorial-section{margin-bottom:45px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
.article-grid>*{min-width:0}.prose{overflow-wrap:anywhere}

/* Reviewed historical archives: long Korean titles and wide result tables. */
.archive-hero h1{font-size:clamp(30px,4vw,54px);line-height:1.3;letter-spacing:-1.2px;word-break:keep-all;overflow-wrap:anywhere}
.archive-notice{border:1px solid var(--line);border-left:3px solid var(--mint);background:var(--panel);padding:20px 24px;margin:0 0 32px;color:var(--muted);font-size:14px}
.archive-notice strong{color:var(--text)}.archive-notice p{margin:10px 0 0;line-height:1.8}
.archive-prose h2,.archive-prose h3,.archive-prose h4{line-height:1.5;word-break:keep-all;overflow-wrap:anywhere;margin:32px 0 16px}
.archive-prose ul,.archive-prose ol{padding-left:24px;color:#c3cecb;line-height:1.9}.archive-prose li{margin:8px 0}
.archive-prose code{font-size:.86em;background:#182429;padding:2px 5px;border-radius:3px;overflow-wrap:anywhere}
.archive-prose pre{max-width:100%;overflow:auto;padding:18px;background:#101b20;white-space:pre;font-size:13px;line-height:1.7}
.archive-prose pre code{padding:0;background:none;overflow-wrap:normal}.archive-prose blockquote{border-left:2px solid var(--line);padding-left:18px;margin:20px 0;color:var(--muted);line-height:1.8}
.tablewrap{max-width:100%;overflow-x:auto;margin:24px 0;border:1px solid var(--line);border-radius:6px}.tablewrap:focus-visible{outline:2px solid var(--mint);outline-offset:3px}
.tablewrap table{width:100%;border-collapse:collapse;font-size:13px;line-height:1.6;min-width:520px}.tablewrap th,.tablewrap td{padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:top}.tablewrap th{background:#142025;color:var(--mint);font-weight:500}.tablewrap td{color:#c3cecb}
.source-provenance{margin-top:40px;font-size:13px}.source-provenance p{font-size:13px}.archive-prose hr{border:0;border-top:1px solid var(--line);margin:28px 0}
.aside{overflow-wrap:anywhere}.card h3{overflow-wrap:anywhere}.meta{line-height:1.8}
@media(max-width:720px){.archive-hero h1{font-size:32px;letter-spacing:-.8px}.archive-notice{padding:16px}.tablewrap table{font-size:12px}.archive-prose h2{font-size:23px}}
