*{box-sizing:border-box}body{color:#111;background:#fff;margin:0;font-family:Pretendard Variable,Pretendard,Apple SD Gothic Neo,sans-serif}a{color:#111;text-decoration:none}a:hover{color:#666}::selection{color:#fff;background:#111}.frame{min-height:100vh;display:flex}.lnb{border-right:1px solid #e5e5e5;flex-direction:column;flex-shrink:0;width:280px;height:100vh;padding:48px 32px;display:flex;position:sticky;top:0;overflow-y:auto}.main{flex:1;max-width:1040px;margin:0 auto;padding:96px 72px}.brand{cursor:pointer;letter-spacing:-.02em;margin-bottom:36px;font-size:19px;font-weight:700}.nav-label{letter-spacing:.1em;color:#999;margin-bottom:10px;font-size:11px;font-weight:600}.nav-label.gap{margin-top:26px}.nav-row{cursor:pointer;border-radius:6px;margin:0 -10px;padding:9px 10px}.nav-row.active{background:#f5f5f5}.nav-about{color:#555;margin-bottom:24px;font-size:15px;font-weight:600}.nav-domain-name{color:#555;font-size:14.5px;font-weight:500}.nav-domain-en{color:#aaa;margin-top:3px;font-family:JetBrains Mono,monospace;font-size:11px}.nav-product{align-items:center;gap:10px;padding:8px 10px;display:flex}.nav-product-name{color:#555;flex:1;font-size:14.5px;font-weight:500}.nav-product-status{color:#999;font-family:JetBrains Mono,monospace;font-size:10.5px}.nav-more{color:#555;padding:8px 10px;font-size:14.5px;font-weight:500}.nav-row.active .nav-domain-name,.nav-row.active .nav-product-name,.nav-about.active,.nav-more.active{color:#111}.dot{border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block}.nav-spacer{flex:1}.nav-links{gap:14px;font-family:JetBrains Mono,monospace;font-size:12px;display:flex}.nav-links a{color:#999}.nav-links a:hover{color:#111}.eyebrow{color:#999;letter-spacing:.12em;margin-bottom:20px;font-family:JetBrains Mono,monospace;font-size:12px}.section-label{letter-spacing:.1em;color:#999;margin-bottom:20px;font-size:11px;font-weight:600}.lede{color:#333;max-width:740px;margin:0 0 14px;font-size:19px;line-height:1.8}.sub{color:#666;max-width:740px;margin:0;font-size:17px;line-height:1.8}.about-sub{margin-bottom:52px}.quote-block{border-left:2px solid #111;max-width:800px;padding-left:28px}.quote-label{color:#999;letter-spacing:.1em;margin-bottom:12px;font-family:JetBrains Mono,monospace;font-size:11px}.quote-text{color:#333;margin:0;font-size:17px;line-height:1.8}.quote-text.small{color:#555;font-size:16.5px}.title-row{align-items:baseline;gap:14px;margin-bottom:8px;display:flex}.title-meta{color:#999;font-family:JetBrains Mono,monospace;font-size:14px}.chips{flex-wrap:wrap;gap:10px;display:flex}.chip{color:#555;border:1px solid #ddd;padding:7px 14px;font-family:JetBrains Mono,monospace;font-size:13px}.media-img{border:1px solid #e5e5e5;width:100%;margin-bottom:40px;display:block}.domain-figure{max-width:480px;margin:0 0 56px}.domain-figure.wide{max-width:none}.domain-figure .media-img{margin-bottom:12px}.figure-caption{color:#999;font-size:13px}.about-h1{letter-spacing:-.02em;margin:0 0 24px;font-size:34px;font-weight:700}.domain-h1{letter-spacing:-.03em;margin:0 0 24px;font-size:44px;font-weight:700}.product-h1{letter-spacing:-.03em;margin:0;font-size:44px;font-weight:700}.page-h1{letter-spacing:-.03em;margin:0 0 48px;font-size:42px;font-weight:700}.wid-list{border-top:1px solid #111;margin-bottom:64px}.wid-row{cursor:pointer;border-bottom:1px solid #f0f0f0;grid-template-columns:1fr 200px;align-items:center;gap:32px;padding:28px 0;display:grid}.wid-name{margin-bottom:8px;font-size:20px;font-weight:600}.wid-tagline{color:#666;font-size:15.5px;line-height:1.6}.wid-code{text-align:right;color:#999;font-family:JetBrains Mono,monospace;font-size:12.5px}.career-list{flex-direction:column;margin-bottom:64px;display:flex}.career-row{border-bottom:1px solid #f0f0f0;align-items:baseline;gap:28px;padding:18px 0;font-size:16.5px;display:flex}.career-row.clickable{cursor:pointer}.career-name{flex-shrink:0;width:170px;font-weight:600}.career-role{color:#555;flex:1}.career-period{color:#999;font-family:JetBrains Mono,monospace;font-size:12.5px}.cta-row{align-items:center;gap:20px;display:flex}.cta-button{border:1px solid #111;padding:14px 28px;font-size:15px;font-weight:600}.cta-mail{color:#666;font-size:15px}.domain-lede{max-width:800px;margin-bottom:16px}.domain-sub{max-width:800px;margin-bottom:56px}.methods{border-top:1px solid #111;margin-bottom:64px}.method{border-bottom:1px solid #f0f0f0;grid-template-columns:48px 230px 1fr;gap:28px;padding:24px 0;display:grid}.method-no{color:#bbb;letter-spacing:.1em;padding-top:4px;font-family:JetBrains Mono,monospace;font-size:12px}.method-title{font-size:17px;font-weight:600;line-height:1.5}.method-desc{color:#555;font-size:15.5px;line-height:1.75}.evidence-list{border-top:1px solid #111;margin-bottom:56px}.evidence-row{border-bottom:1px solid #f0f0f0;grid-template-columns:minmax(150px,190px) 1fr;gap:32px;padding:26px 0;display:grid}.evidence-org{font-size:16px;font-weight:700}.evidence-period{color:#999;margin-top:4px;font-family:JetBrains Mono,monospace;font-size:12px}.evidence-title{margin-bottom:8px;font-size:17px;font-weight:600}.evidence-desc{color:#555;font-size:15.5px;line-height:1.75}.live-status{color:#111;align-items:center;gap:7px;font-family:JetBrains Mono,monospace;font-size:14px;display:flex}.live-status .dot{width:7px;height:7px}.product-url{border-bottom:1px solid #111;margin-bottom:36px;font-family:JetBrains Mono,monospace;font-size:15px;display:inline-block}.yesod-links{flex-wrap:wrap;gap:20px;margin-bottom:44px;display:flex}.yesod-links .product-url{margin-bottom:0}.product-body{color:#333;max-width:840px;margin:0 0 40px;font-size:18px;line-height:1.8}.highlights{border-top:1px solid #111;margin-bottom:40px}.highlight{border-bottom:1px solid #f0f0f0;grid-template-columns:230px 1fr;gap:28px;padding:22px 0;display:grid}.highlight-title{font-size:16.5px;font-weight:600;line-height:1.5}.highlight-desc{color:#555;font-size:15.5px;line-height:1.75}.carmen-quote{margin-bottom:40px}.install-banner{cursor:pointer;color:#111;text-align:left;background:#fff;border:1px solid #111;justify-content:space-between;align-items:center;width:100%;margin-bottom:40px;padding:22px 28px;font-family:JetBrains Mono,monospace;font-size:17px;display:flex}.install-banner:hover .install-label{color:#111}.install-label{color:#999;font-size:13px}.split-box{border:1px solid #111;grid-template-columns:1fr 1fr;margin-bottom:32px;display:grid}.split-cell{padding:32px}.split-cell.first{border-right:1px solid #e5e5e5}.split-os{color:#999;margin-bottom:16px;font-family:JetBrains Mono,monospace;font-size:12px}.split-title{margin-bottom:10px;font-size:18px;font-weight:600}.split-desc{color:#666;font-size:14.5px;line-height:1.65}.pull-quote{letter-spacing:-.02em;border-top:1px solid #111;border-bottom:1px solid #111;max-width:800px;margin-bottom:44px;padding:36px 0;font-size:26px;font-weight:600;line-height:1.6}.ps-grid{grid-template-columns:1fr 1fr;gap:48px;margin-bottom:48px;display:grid}.ps-grid .quote-label{margin-bottom:14px}.ps-text{color:#555;margin:0;font-size:16.5px;line-height:1.75}.tools-grid{border-top:1px solid #111;margin-bottom:48px}.tool-card{border-bottom:1px solid #f0f0f0;grid-template-columns:230px 1fr;gap:28px;padding:18px 0;display:grid}.tool-name{padding-top:2px;font-family:JetBrains Mono,monospace;font-size:14px;font-weight:600}.tool-desc{color:#555;font-size:15px;line-height:1.7}.yesod-closer{border-top:1px solid #111;padding-top:28px;font-size:20px;font-weight:600;line-height:1.6}.nllb-h1{margin-bottom:10px}.nllb-links{color:#666;gap:18px;margin-bottom:48px;font-family:JetBrains Mono,monospace;font-size:15px;display:flex}.nllb-links a{border-bottom:1px solid #111}.nllb-compare{border:1px solid #111;grid-template-columns:1fr auto 1fr;align-items:center;gap:32px;margin-bottom:48px;padding:40px;display:grid}.compare-value{letter-spacing:-.02em;font-family:JetBrains Mono,monospace;font-size:40px;font-weight:700}.compare-desc{color:#777;margin-top:8px;font-size:14px}.compare-arrow{color:#bbb;font-family:JetBrains Mono,monospace;font-size:28px}.how-list{flex-direction:column;margin-bottom:48px;display:flex}.how-row{border-bottom:1px solid #f0f0f0;grid-template-columns:minmax(110px,150px) 1fr;gap:24px;padding:20px 0;display:grid}.how-tag{color:#999;padding-top:3px;font-family:JetBrains Mono,monospace;font-size:13px}.how-desc{color:#333;font-size:16.5px;line-height:1.7}.pub-grid{grid-template-columns:220px 1fr;align-items:start;gap:48px;display:grid}.book-cover-img{border:1px solid #e5e5e5;width:100%;display:block}.pub-title{margin-bottom:12px;font-size:26px;font-weight:700}.pub-meta{color:#999;margin-bottom:28px;font-family:JetBrains Mono,monospace;font-size:15px}.pub-body{color:#333;max-width:620px;margin:0 0 24px;font-size:17px;line-height:1.8}.pub-sub{color:#666;max-width:620px;margin:0;font-size:16px;line-height:1.8}.activity-h1{margin-bottom:44px}.activity-group{border-top:1px solid #111;grid-template-columns:110px 1fr;gap:32px;margin-bottom:24px;padding:28px 0 4px;display:grid}.activity-year{color:#111;font-family:JetBrains Mono,monospace;font-size:22px;font-weight:700}.activity-item{padding:0 0 24px}.activity-title{margin-bottom:6px;font-size:17px;font-weight:600}.activity-desc{color:#777;white-space:pre-line;max-width:660px;font-size:15px;line-height:1.6}.cv-doc{max-width:860px;margin:0 auto;padding:48px 24px 96px}.cv-header{align-items:center;gap:32px;margin-bottom:56px;display:flex}.cv-photo{border:1px solid #e5e5e5;width:108px;display:block}.cv-name{letter-spacing:-.02em;margin:0 0 8px;font-size:30px;font-weight:700}.cv-tagline{color:#555;margin-bottom:14px;font-size:15px}.cv-contact{flex-wrap:wrap;gap:8px 20px;font-family:JetBrains Mono,monospace;font-size:12.5px;display:flex}.cv-contact a{color:#666}.cv-list{border-top:1px solid #111;margin-bottom:48px}.cv-row{border-bottom:1px solid #f0f0f0;grid-template-columns:210px 1fr;gap:28px;padding:18px 0;display:grid}.cv-org{font-size:15.5px;font-weight:700}.cv-period{color:#999;margin-top:4px;font-family:JetBrains Mono,monospace;font-size:12px}.cv-role{margin-bottom:8px;font-size:15px;font-weight:600}.cv-bullet{color:#444;gap:10px;margin-bottom:6px;font-size:14.5px;line-height:1.65;display:flex}.cv-arrow{color:#bbb;flex-shrink:0;padding-top:2px;font-family:JetBrains Mono,monospace;font-size:12px}.cv-desc{color:#444;font-size:14.5px;line-height:1.65}@media print{.cv-doc{zoom:.82;max-width:none;padding:0}.cv-row{break-inside:avoid}}@media (width<=860px){.cv-row{grid-template-columns:1fr;gap:6px}}@page{size:A4;margin:14mm 12mm}.print-doc{max-width:860px;margin:0 auto;padding:48px 24px 96px}.print-doc .print-section{margin-bottom:120px}.print-hint{color:#999;border:1px dashed #ddd;margin-bottom:48px;padding:12px 16px;font-family:JetBrains Mono,monospace;font-size:12.5px}@media print{.print-hint{display:none}.print-doc{zoom:.78;max-width:none;padding:0}.print-doc .print-section{break-before:page;margin-bottom:0}.print-doc .print-section:first-of-type{break-before:auto}.method,.highlight,.evidence-row,.career-row,.wid-row,.how-row,.tool-card,.activity-group,.nllb-compare,.split-box,.pub-grid{break-inside:avoid}.install-label{display:none}a{color:#111}}@media (width<=1080px){.cases-grid{grid-template-columns:1fr}}@media (width<=860px){.frame{flex-direction:column}.lnb{border-bottom:1px solid #e5e5e5;border-right:none;width:100%;height:auto;padding:24px 20px;position:static}.nav-spacer{display:none}.nav-links{margin-top:20px}.main{padding:40px 20px}.grid2,.ps-grid,.split-box,.wid-row,.method,.highlight,.tool-card{grid-template-columns:1fr}.method,.highlight,.tool-card{gap:6px}.ps-grid{gap:32px}.pub-grid{grid-template-columns:1fr;gap:28px}.nllb-compare{grid-template-columns:1fr;gap:20px}.evidence-row{grid-template-columns:1fr;gap:8px}.wid-code{display:none}.domain-h1,.product-h1{font-size:32px}.page-h1{font-size:30px}}
