@font-face{font-family:"Orbit";src:url("/assets/fonts/Orbit-Regular.woff2") format("woff2");font-display:swap}
@font-face{font-family:"Pretendard";src:url("/assets/fonts/PretendardVariable.woff2") format("woff2");font-weight:100 900;font-display:swap}
:root{--paper:#fff;--card:#fff;--ink:#193150;--muted:#52627a;--line:#cbdcf0;--tint:#edf6ff;--action:#d93659;--coral:#ff6f61;--coral-soft:#fff0ec;--blue:#2879c7;--blue-soft:#e4f4ff;--lime:#6f9831;--lime-soft:#f3ffc9;--lavender:#8664cf;--lavender-soft:#f0e9ff;--yellow:#a66b08;--yellow-soft:#fffbea;--body:"Pretendard","Nanum Gothic","Apple SD Gothic Neo",sans-serif;--sans:"Pretendard","Nanum Gothic","Apple SD Gothic Neo",sans-serif}
*{box-sizing:border-box}html{background:#fff;color:var(--ink);scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;background:#fff;color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased;word-break:keep-all}button,a{color:inherit;font:inherit}button{border:0;cursor:pointer}a{text-decoration:none}p,h1,h2,h3,dl,dd{margin:0}code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
.topbar,main{width:min(1120px,calc(100% - 48px));margin-inline:auto}.topbar{display:flex;height:68px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fff}.wordmark{display:flex;align-items:center;gap:9px;font-size:18px;font-weight:600;letter-spacing:-.04em}.wordmark img{width:42px;height:42px;border-radius:50%}.top-actions{display:flex;align-items:center;gap:14px}.runtime-state{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11px}.runtime-state i{width:7px;height:7px;border-radius:50%;background:#48a75b}.site-link{display:inline-flex;min-height:40px;align-items:center;gap:8px;padding:0 16px;border:1.5px solid var(--action);background:#fff;color:var(--action);font-size:12px;font-weight:700}.site-link:hover{background:#fff3f5}.site-link span{font-size:15px}.site-link:focus-visible,.route-strip button:focus-visible,.product-tabs button:focus-visible,summary:focus-visible{outline:3px solid rgba(40,121,199,.25);outline-offset:3px}
.hero{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.72fr);gap:72px;align-items:end;padding:86px 0 58px}.kicker,.trace-index>p,.boundaries>header>p{margin-bottom:17px;color:var(--action);font-size:12px;font-weight:700;letter-spacing:.02em}.hero h1{font-size:clamp(49px,6.2vw,78px);font-weight:750;letter-spacing:-.075em;line-height:1.12}.hero h1 em{color:var(--coral);font-style:normal}.lede{margin-top:24px;color:var(--muted);font-size:17px;line-height:1.85;letter-spacing:-.025em}
.runtime-card{border:9px solid transparent;border-image:url("/assets/hand-drawn-frame.svg?v=1") 48 / 9px stretch;background:#fff}.runtime-head{display:flex;align-items:center;justify-content:space-between;padding:13px 16px;border-bottom:1px solid var(--line);font-size:11px}.runtime-head span{font-weight:700}.runtime-head b{color:#4d8a3d;font-weight:600}.runtime-card dl{padding:2px 16px}.runtime-card dl>div{display:flex;align-items:center;justify-content:space-between;min-height:47px;border-bottom:1px solid var(--line)}.runtime-card dt{color:var(--muted);font-size:12px}.runtime-card dd{font-size:13px;font-weight:700}.runtime-card>p{padding:13px 16px 15px;color:#78869a;font-family:var(--sans);font-size:9px;line-height:1.6}
.route-strip{display:grid;grid-template-columns:repeat(7,minmax(16px,auto) 12px) minmax(16px,auto);align-items:center;padding:9px;border:7px solid transparent;border-image:url("/assets/hand-drawn-frame.svg?v=1") 48 / 7px stretch;background:#fff}.route-strip button{display:flex;min-width:0;min-height:54px;align-items:center;gap:8px;padding:0 8px;background:#fff;text-align:left}.route-strip button:hover{background:var(--tint)}.route-strip small{display:grid;width:27px;height:27px;flex:none;place-items:center;border:1px solid var(--line);border-radius:50%;font-family:var(--sans);font-size:9px;font-weight:800}.route-strip span{font-size:11px;font-weight:700}.route-strip>i{color:#8da3bc;font-size:11px;font-style:normal;text-align:center}
.truth-banner{display:grid;grid-template-columns:56px minmax(350px,1fr) minmax(290px,.85fr);gap:27px;align-items:center;margin:24px 0 68px;padding:28px 32px;border:9px solid transparent;border-image:url("/assets/hand-drawn-frame.svg?v=1") 48 / 9px stretch;background:var(--coral-soft);color:var(--ink)}.truth-mark{display:grid;width:48px;height:48px;place-items:center;border:1.5px solid var(--action);border-radius:50%;background:#fff;color:var(--action);font-family:var(--sans);font-size:22px;font-weight:800}.truth-banner>div>p{margin-bottom:6px;color:var(--action);font-size:11px;font-weight:700}.truth-banner h2{font-size:clamp(23px,2.5vw,34px);font-weight:700;letter-spacing:-.055em;line-height:1.4}.truth-banner>p{color:var(--muted);font-size:12px;line-height:1.9}
.trace{display:grid;grid-template-columns:240px minmax(0,1fr);gap:44px;align-items:start}.trace-index{position:sticky;top:30px}.trace-index h2{margin-bottom:25px;font-size:28px;font-weight:700;letter-spacing:-.055em;line-height:1.4}.trace-index ol{margin:0;padding:0;border-top:1px solid var(--line);list-style:none}.trace-index li{border-bottom:1px solid var(--line)}.trace-index a{display:flex;align-items:center;gap:13px;padding:10px 4px;color:var(--muted);font-size:12px}.trace-index a:hover,.trace-index a.is-current{color:var(--ink);font-weight:700}.trace-index a.is-current span{background:var(--coral);color:#fff;border-color:var(--coral)}.trace-index span{display:grid;width:27px;height:27px;place-items:center;border:1px solid var(--line);border-radius:50%;font-family:var(--sans);font-size:9px}
.trace-body{position:relative;padding-left:28px}.trace-body::before{content:"";position:absolute;top:0;bottom:0;left:3px;width:1px;background:var(--line)}.stage{--accent:#68798d;--wash:#fff;position:relative;margin-bottom:24px;padding:27px 25px;border:7px solid transparent;border-image:url("/assets/hand-drawn-frame.svg?v=1") 48 / 7px stretch;background:var(--wash)}.stage::before{content:"";position:absolute;top:31px;left:-31px;width:9px;height:9px;border:4px solid #fff;border-radius:50%;background:var(--accent);box-shadow:0 0 0 1px var(--accent)}.stage-system{--accent:#68798d;--wash:#fff}.stage-calc{--accent:var(--blue);--wash:#fbfdff}.stage-rule{--accent:var(--lavender);--wash:#fdfbff}.stage-ai{--accent:var(--coral);--wash:#fffdfc}.stage-gate{--accent:var(--lime);--wash:#fcfef8}.stage-store{--accent:var(--ink);--wash:#fbfdff}
.stage-head{display:grid;grid-template-columns:60px 1fr;gap:18px;align-items:center;margin-bottom:23px}.stage-number{display:flex;height:57px;flex-direction:column;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--accent) 42%,#fff);background:#fff}.stage-number span{font-family:var(--sans);font-size:19px;font-weight:800;line-height:1}.stage-number small{margin-top:5px;color:var(--accent);font-size:9px;font-weight:700}.stage-head>div:last-child>p{margin-bottom:3px;color:var(--accent);font-size:11px;font-weight:700}.stage h3{font-size:clamp(21px,2.3vw,29px);font-weight:700;letter-spacing:-.05em;line-height:1.45}
.io-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);background:#fff}.io-grid>div{min-width:0;padding:17px;border-right:1px solid var(--line)}.io-grid>div:last-child{border:0}.io-grid small,.product-panel small,.ai-layout small{display:block;margin-bottom:8px;color:var(--accent);font-size:10px;font-weight:700}.io-grid p{color:var(--muted);font-size:12px;line-height:1.75}.branch{display:flex;align-items:center;gap:11px;margin-top:12px;padding:12px 14px;border:1px dashed var(--line);background:#fff;font-size:11px}.branch b{flex:none;color:var(--accent);font-size:10px}.branch span{color:var(--muted)}.branch i{margin-left:auto;color:#8da3bc;font-style:normal}.branch strong{font-size:11px}.branch-stop{border-color:#efaeb5;background:#fff8f8}.branch-stop b,.branch-stop strong{color:#a9364c}.branch-cache{border-color:#f0b7aa;background:#fff8f5}.branch-cache b,.branch-cache strong{color:#bd5040}
.stage-note{margin-top:12px;padding:14px 16px;border-left:3px solid var(--accent);background:#fff;color:var(--muted);font-size:12px;line-height:1.8}.stage-note b{color:var(--ink)}.product-tabs{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.product-tabs button{min-height:42px;border:1px solid #d7caed;background:#fff;color:var(--muted);font-size:11px}.product-tabs button:hover{background:var(--lavender-soft)}.product-tabs button[aria-selected="true"]{border-color:var(--lavender);background:var(--lavender-soft);color:#6545a9;font-weight:700}.product-panel{display:grid;grid-template-columns:minmax(250px,.9fr) 1fr;gap:20px;margin-top:9px;padding:19px;border:1px solid #d7caed;background:#fff}.product-panel strong{font-size:13px}.product-panel>p{padding-left:19px;border-left:1px solid #d7caed;color:var(--muted);font-size:12px;line-height:1.75}.rule-warning{display:grid;grid-template-columns:minmax(210px,.55fr) 1fr;gap:23px;margin-top:9px;padding:16px 18px;border:1px solid #d7caed;background:#fff}.rule-warning b{font-size:12px}.rule-warning p{color:var(--muted);font-size:11px;line-height:1.75}
.ai-layout{display:grid;grid-template-columns:1fr 150px 1fr;gap:8px}.ai-input,.ai-output{padding:18px;border:1px solid #f0c7bd;background:#fff}.ai-layout ul{margin:0;padding-left:17px;color:var(--muted);font-size:11px;line-height:2}.ai-core{display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--coral);background:var(--coral-soft);color:var(--ink);text-align:center}.ai-core>span{color:var(--coral);font-size:22px}.ai-core b{margin-top:5px;font-size:14px;font-weight:400;line-height:1.35}.ai-core small{margin:8px 0 0;color:#9d5b50;font-size:8px}
.audit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.audit-grid>div{padding:17px;border:1px solid #cbdcb5;background:#fff}.audit-grid span{display:inline-block;padding:3px 7px;background:var(--lime-soft);color:#527721;font-size:10px;font-weight:700}.audit-grid p{margin-top:12px;color:var(--muted);font-size:11px;line-height:1.75}.outcomes{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:8px}.outcome{padding:14px;border:1px solid var(--line);background:#fff}.outcome small,.outcome b{display:block}.outcome small{margin-bottom:12px;font-size:9px;font-weight:700}.outcome b{font-size:11px}.outcome p{margin-top:5px;color:var(--muted);font-size:9px;line-height:1.6}.outcome.pass{border-top:3px solid var(--lime)}.outcome.pass small{color:var(--lime)}.outcome.warn{border-top:3px solid var(--yellow)}.outcome.warn small{color:var(--yellow)}.outcome.retry{border-top:3px solid var(--blue)}.outcome.retry small{color:var(--blue)}.outcome.block{border-top:3px solid var(--action)}.outcome.block small{color:var(--action)}.return-line{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:12px;padding:16px;border:1px solid var(--line);background:var(--tint);color:var(--ink);font-size:11px}.return-line span{padding:4px 8px;border:1px solid var(--blue)}.return-line i{color:#8da3bc;font-style:normal}.return-line b{font-weight:700}
.boundaries{display:grid;grid-template-columns:290px minmax(0,1fr);gap:43px;margin-top:74px;padding:43px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.boundaries h2{font-size:clamp(28px,3.2vw,41px);font-weight:700;letter-spacing:-.06em;line-height:1.4}.boundary-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.boundary-grid article{position:relative;min-height:225px;padding:22px;border:6px solid transparent;border-image:url("/assets/hand-drawn-frame.svg?v=1") 48 / 6px stretch;background:#fff}.boundary-grid article:nth-child(1){background:#fbfdff}.boundary-grid article:nth-child(2){background:#fffdfc}.boundary-grid article:nth-child(3){background:#fdfbff}.boundary-grid article:nth-child(4){background:#fcfef8}.boundary-grid article>span{display:block;margin-bottom:29px;color:var(--coral);font-family:var(--sans);font-size:10px;font-weight:800}.boundary-grid h3{margin-bottom:8px;font-size:17px;font-weight:700;letter-spacing:-.03em}.boundary-grid p{color:var(--muted);font-size:11px;line-height:1.75}.boundary-grid small{display:block;margin-top:12px;padding-top:12px;border-top:1px solid var(--line);color:#8b5a52;font-size:9px;line-height:1.7}
.source-trace{margin:25px 0;border:1px solid var(--line);background:#fff}.source-trace summary{display:flex;min-height:65px;align-items:center;justify-content:space-between;padding:0 21px;cursor:pointer;font-size:12px;font-weight:700;list-style:none}.source-trace summary::-webkit-details-marker{display:none}.source-trace summary i{display:grid;width:29px;height:29px;place-items:center;border:1px solid var(--line);border-radius:50%;font-style:normal;transition:transform .2s}.source-trace[open] summary i{transform:rotate(45deg)}.source-body{padding:0 21px 21px;border-top:1px solid var(--line)}.source-body ol{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin:21px 0 0;padding:1px;background:var(--line);list-style:none}.source-body li{min-width:0;padding:13px;background:#fff}.source-body small,.source-body code{display:block}.source-body small{margin-bottom:8px;color:var(--action);font-family:var(--sans);font-size:7px;font-weight:800}.source-body code{font-size:8px;line-height:1.65;overflow-wrap:anywhere}.source-body>p{margin-top:10px;padding:11px;background:var(--tint);color:var(--muted);font-family:var(--sans);font-size:9px;overflow-wrap:anywhere}.source-body>p b{color:var(--ink)}footer{display:flex;align-items:flex-start;justify-content:space-between;gap:30px;padding:15px 0 48px;color:var(--muted);font-size:10px}footer nav{display:flex;flex:none;gap:18px}footer a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:960px){.hero{grid-template-columns:1fr;gap:34px}.runtime-card{width:min(500px,100%)}.route-strip{grid-template-columns:repeat(4,1fr)}.route-strip>i{display:none}.truth-banner{grid-template-columns:48px 1fr}.truth-banner>p{grid-column:2}.trace{grid-template-columns:200px minmax(0,1fr);gap:30px}.io-grid{grid-template-columns:1fr}.io-grid>div{border-right:0;border-bottom:1px solid var(--line)}.io-grid>div:last-child{border-bottom:0}.boundaries{grid-template-columns:1fr}.source-body ol{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.topbar,main{width:min(100% - 32px,1120px)}.topbar{height:62px}.wordmark img{width:38px;height:38px}.runtime-state{display:none}.hero{padding:52px 0 34px}.hero h1{font-size:clamp(43px,12.5vw,61px)}.lede{font-size:14px}.lede br{display:none}.route-strip{grid-template-columns:repeat(2,1fr)}.route-strip button{min-height:48px}.truth-banner{grid-template-columns:39px 1fr;gap:16px;margin-bottom:45px;padding:22px 18px}.truth-mark{width:38px;height:38px}.truth-banner>p{grid-column:1/-1}.trace{display:block}.trace-index{position:static;margin-bottom:17px}.trace-index h2{margin-bottom:17px}.trace-index ol{display:none}.trace-body{padding-left:17px}.trace-body::before{left:1px}.stage{padding:20px 16px}.stage::before{left:-20px}.stage-head{grid-template-columns:47px 1fr;gap:12px}.stage-number{height:47px}.stage h3{font-size:20px}.branch{align-items:flex-start;flex-wrap:wrap}.branch i{display:none}.branch strong{width:100%}.product-tabs{grid-template-columns:repeat(3,1fr)}.product-panel{grid-template-columns:1fr}.product-panel>p{padding:12px 0 0;border-top:1px solid #d7caed;border-left:0}.rule-warning{grid-template-columns:1fr;gap:7px}.ai-layout{grid-template-columns:1fr}.ai-core{min-height:125px}.audit-grid,.outcomes{grid-template-columns:1fr 1fr}.boundaries{margin-top:50px}.boundary-grid{grid-template-columns:1fr}.boundary-grid article{min-height:auto}.return-line{align-items:flex-start;flex-direction:column;gap:7px}.return-line i{margin-left:15px;transform:rotate(90deg)}footer{flex-direction:column}}
@media(max-width:430px){.wordmark span{display:none}.hero h1{letter-spacing:-.065em}.truth-banner h2{font-size:22px}.stage-head{align-items:start}.stage-number span{font-size:16px}.product-tabs{grid-template-columns:1fr 1fr}.audit-grid,.outcomes{grid-template-columns:1fr}.source-body ol{grid-template-columns:1fr}.boundary-grid article{padding:19px}.source-trace summary{padding:0 16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.source-trace summary i{transition:none}}
@media print{.topbar,main{width:100%}.site-link,.route-strip,.trace-index{display:none}.hero,.trace,.boundaries{display:block}.stage{break-inside:avoid}.trace-body{padding:0}.trace-body::before,.stage::before{display:none}.source-trace:not([open])>.source-body{display:block}}
