:root{--ink:#16221d;--muted:#68736c;--paper:#f3f6f0;--surface:#fbfcf8;--accent:#d8f36a;--line:#dbe4d9}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}.site-shell{flex-direction:column;width:min(1180px,100% - 40px);min-height:100vh;margin:auto;display:flex}.site-header{justify-content:space-between;align-items:center;padding:22px 0;display:flex}.brand{letter-spacing:-.05em;font-size:1.4rem;font-weight:800}.site-nav{align-items:center;gap:22px;font-size:1.06rem;display:flex}.site-nav a:hover,.back-link:hover{color:var(--muted)}.site-nav a.active{font-weight:700;position:relative}.site-nav a.active:after{background:var(--ink);content:"";height:3px;position:absolute;bottom:-8px;left:0;right:0}.search-link{align-items:center;font-size:1.55rem;line-height:1;display:inline-flex}.nav-muted{color:var(--muted)}.language-switcher{border:1px solid var(--line);border-radius:999px;gap:2px;padding:3px;display:flex}.language-switcher a{color:var(--muted);border-radius:999px;padding:6px 9px}.language-switcher a.active{background:var(--ink);color:var(--surface)}.home-hero{max-width:820px;padding:clamp(70px,9vw,110px) 0 90px}.eyebrow,.card-kicker{color:var(--muted);letter-spacing:.16em;text-transform:uppercase;margin:0 0 20px;font-size:.72rem;font-weight:700}h1,h2{letter-spacing:-.07em;margin:0;line-height:.98}h1{font-size:clamp(3.2rem,8vw,7.4rem)}.lede{color:var(--muted);max-width:570px;margin:30px 0;font-size:clamp(1.05rem,2vw,1.3rem);line-height:1.55}.primary-button{background:var(--accent);border-radius:999px;align-items:center;gap:18px;padding:15px 20px;font-weight:700;transition:transform .16s;display:inline-flex}.primary-button:hover{transform:translateY(-2px)}.home-note,.empty-state{border-top:1px solid var(--line);color:var(--muted);grid-template-columns:1fr 1fr;gap:30px;padding:32px 0 90px;display:grid}.home-note p{max-width:430px;margin:0;line-height:1.7}.home-latest{border-top:1px solid var(--line);padding:34px 0 70px}.home-section-heading{color:var(--muted);margin-bottom:22px;font-size:1.35rem}.section-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding-bottom:58px;display:grid}.section-card{background:var(--surface);border:1px solid var(--line);min-height:260px;padding:24px;transition:transform .16s,border-color .16s;position:relative}.section-card:hover{border-color:var(--ink);transform:translateY(-3px)}.section-card h2{margin-top:60px;font-size:clamp(1.5rem,2.3vw,2.3rem)}.section-card p{color:var(--muted);margin-top:16px;line-height:1.6}.card-arrow{font-size:1.5rem;position:absolute;bottom:22px;right:24px}.content-page{padding:22px 0 70px}.page-heading{max-width:680px;padding-bottom:30px}.page-heading .lede{margin-top:0}.content-page h1{font-size:clamp(3rem,7vw,6.3rem)}.tutorial-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.tutorial-card{background:var(--surface);border:1px solid var(--line);min-height:240px;padding:28px}.tutorial-card h2{margin-bottom:18px;font-size:clamp(1.8rem,3vw,2.8rem)}.tutorial-card h2 a:hover{color:var(--muted)}.tutorial-card>p:last-child,.empty-state p,.article-intro{color:var(--muted);line-height:1.7}.empty-state{grid-template-columns:1fr 1fr}.empty-state h2{font-size:clamp(2rem,4vw,3.5rem)}.empty-state p{max-width:430px;margin:0}.search-form{max-width:640px;margin-top:40px}.search-form label{color:var(--muted);margin-bottom:10px;font-size:.8rem;display:block}.search-form>div{gap:10px;display:flex}.search-form input{background:var(--surface);border:1px solid var(--line);color:var(--ink);font:inherit;border-radius:4px;flex:1;min-width:0;padding:14px}.search-form button{background:var(--ink);color:var(--surface);cursor:pointer;font:inherit;border:0;border-radius:4px;padding:0 20px}.article-page{max-width:820px}.back-link{color:var(--muted);margin-bottom:20px;display:inline-block}.article-page article h1{font-size:clamp(3rem,7vw,6rem)}.article-intro{max-width:620px;margin:28px 0 55px;font-size:1.2rem}.article-language{color:var(--muted);justify-content:flex-end;gap:12px;margin:18px 0 32px;font-size:.9rem;display:flex}.article-language a{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.article-toc{border:1px solid var(--line);background:var(--surface);margin:0 0 42px;padding:16px 20px}.article-toc summary{cursor:pointer;font-weight:700}.article-toc ul{margin:14px 0 0;padding-left:20px}.article-toc li{margin:6px 0}.article-toc a{color:var(--muted)}.prose{font-size:1.05rem;line-height:1.8}.prose h2{margin:2.4em 0 .7em;font-size:2.3rem}.prose h3{margin:2em 0 .5em;font-size:1.5rem}.prose p,.prose ul,.prose ol,.prose pre{margin:1.25em 0}.prose code{background:#e8eee3;border-radius:4px;padding:2px 5px}.prose pre{background:var(--ink);color:var(--surface);border-radius:8px;padding:20px;overflow:auto}.prose pre code{background:0 0;padding:0}.article-ad{justify-content:center;align-items:center;width:min(300px,100%);min-height:250px;margin:56px auto 20px;display:flex;overflow:hidden}.project-shell{max-width:1100px}.project-page{padding-bottom:60px}.project-hero{max-width:900px;padding:55px 0 70px}.project-hero h1{font-size:clamp(4rem,10vw,9rem)}.project-deck{letter-spacing:-.04em;max-width:780px;margin:30px 0 20px;font-size:clamp(1.35rem,3vw,2.2rem);line-height:1.2}.project-summary{color:var(--muted);max-width:670px;font-size:1.1rem;line-height:1.7}.project-links{flex-wrap:wrap;align-items:center;gap:22px;margin-top:32px;display:flex}.project-text-link{color:var(--ink);text-underline-offset:4px;font-weight:700;text-decoration:underline}.project-status-grid{border-bottom:1px solid var(--line);border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);margin-bottom:85px;display:grid}.project-status-grid>div{border-right:1px solid var(--line);min-height:145px;padding:22px 18px}.project-status-grid>div:last-child{border-right:0}.project-status-grid span,.project-status-grid small{color:var(--muted);font-size:.78rem;display:block}.project-status-grid strong{letter-spacing:-.04em;margin:22px 0 8px;font-size:1.25rem;display:block}.project-section{border-top:1px solid var(--line);margin-top:50px;padding:48px 0 25px}.project-section h2{letter-spacing:-.025em;max-width:820px;margin-bottom:24px;font-size:clamp(1.15rem,1.8vw,1.45rem);font-weight:800;line-height:1.35}.project-section>p:not(.project-number){color:var(--muted);max-width:790px;font-size:1.08rem;line-height:1.8}.project-subheading{letter-spacing:-.04em;margin:48px 0 22px;font-size:1.45rem}.project-flow{background:var(--ink);color:var(--surface);border-radius:10px;max-width:820px;margin:30px 0;padding:24px;line-height:1.75;overflow:auto}.project-number{color:var(--ink);letter-spacing:.14em;text-transform:uppercase;margin:0 0 14px;font-size:clamp(1.05rem,1.7vw,1.35rem);font-weight:900}.project-note{border-left:3px solid var(--accent);padding-left:18px;font-size:.94rem!important}.architecture-diagram{background:var(--ink);color:var(--surface);border-radius:12px;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:8px;margin:36px 0 20px;padding:28px 18px;display:flex}.architecture-diagram div{text-align:center;background:#26352d;border:1px solid #506357;border-radius:8px;flex-direction:column;flex:125px;justify-content:center;align-items:center;min-height:80px;padding:12px;display:flex}.architecture-diagram small{color:#b9c9bd;margin-top:7px;font-size:.72rem;line-height:1.3}.architecture-diagram>span{color:var(--accent);align-self:center;font-size:1.4rem}.capability-table{border-top:1px solid var(--line);grid-template-columns:repeat(2,1fr);display:grid}.capability-table>div{border-bottom:1px solid var(--line);min-height:175px;padding:23px 24px 22px 0}.capability-table>div:nth-child(odd){border-right:1px solid var(--line);padding-right:28px}.capability-table>div:nth-child(2n){padding-left:28px}.capability-table strong{letter-spacing:-.03em;font-size:1.2rem}.capability-table p{color:var(--muted);margin:15px 0 0;line-height:1.6}.tag{border:1px solid var(--line);color:var(--muted);vertical-align:middle;border-radius:999px;margin-left:10px;padding:5px 8px;font-size:.72rem;display:inline-block}.tag-green{color:var(--ink);background:#e8f3c2;border-color:#d8f36a}.tag-yellow{color:#65500a;background:#fff4cc;border-color:#f1dd8a}.timeline{border-left:1px solid var(--ink);margin:35px 0 0 14px}.timeline>div{align-items:flex-start;gap:22px;margin:0 0 21px;padding-left:20px;display:flex;position:relative}.timeline>div:before{background:var(--accent);border:3px solid var(--paper);content:"";border-radius:50%;width:10px;height:10px;position:absolute;top:4px;left:-7px}.timeline b{color:var(--muted);letter-spacing:.1em;min-width:28px;font-size:.76rem}.timeline span{font-size:1.1rem}.principle-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:34px;display:grid}.principle-grid>div{background:var(--surface);border:1px solid var(--line);min-height:150px;padding:22px}.principle-grid strong,.principle-grid span{display:block}.principle-grid strong{margin-bottom:15px;font-size:1.25rem}.principle-grid span{color:var(--muted);line-height:1.6}.evolution-grid{grid-template-columns:repeat(2,1fr);gap:14px;margin:30px 0;display:grid}.evolution-grid>div{background:var(--surface);border:1px solid var(--line);padding:20px}.evolution-grid span{color:var(--muted);font-size:.8rem;font-weight:700}.evolution-grid pre{background:var(--ink);color:var(--surface);border-radius:7px;margin:20px 0 0;padding:18px;line-height:1.8;overflow:auto}.qa-callout{background:var(--ink);color:var(--surface);border-radius:10px;max-width:790px;margin-top:34px;padding:25px 28px}.qa-callout strong{color:var(--accent)}.qa-callout li{margin:10px 0;line-height:1.7}.qa-callout p{color:#d9e4db;line-height:1.7}.defect-table{border-top:1px solid var(--line);max-width:900px;margin:30px 0}.defect-table>div{border-bottom:1px solid var(--line);grid-template-columns:1.15fr 1fr 1fr;gap:18px;padding:16px 0;display:grid}.defect-table strong{font-size:.82rem}.defect-table span{color:var(--muted);line-height:1.5}.project-next{padding-bottom:70px}@media (max-width:900px){.project-status-grid{grid-template-columns:repeat(2,1fr)}.project-status-grid>div:nth-child(2){border-right:0}.project-status-grid>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.principle-grid{grid-template-columns:1fr}}@media (max-width:680px){.project-hero{padding-top:35px}.project-hero h1{font-size:clamp(3.7rem,17vw,6rem)}.project-status-grid{grid-template-columns:1fr}.project-status-grid>div,.project-status-grid>div:nth-child(2){border-bottom:1px solid var(--line);border-right:0}.project-status-grid>div:last-child{border-bottom:0}.architecture-diagram{flex-direction:column;align-items:stretch}.architecture-diagram>span{transform:rotate(90deg)}.capability-table,.evolution-grid{grid-template-columns:1fr}.capability-table>div,.capability-table>div:nth-child(odd),.capability-table>div:nth-child(2n){border-right:0;padding:20px 0}.capability-table>div:last-child{border-bottom:0}.defect-table>div{grid-template-columns:1fr;gap:8px}.defect-table>div:first-child{display:none}.project-section h2{font-size:1.25rem}}.site-footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;margin-top:auto;padding:22px 0 30px;font-size:1rem;display:flex}@media (max-width:900px){.site-nav{flex-wrap:wrap;justify-content:flex-end;max-width:680px}.section-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:680px){.site-shell{width:calc(100% - 28px)}.site-header{align-items:flex-start;gap:20px}.site-nav{gap:10px;font-size:.84rem}.home-hero{padding:90px 0 110px}.home-note,.empty-state,.tutorial-grid{grid-template-columns:1fr}.section-grid{grid-template-columns:1fr;padding-bottom:70px}.search-form>div{flex-direction:column}.search-form button{padding:13px}.site-footer{flex-direction:column;gap:8px}}
