.library{display:grid;grid-template-columns:.72fr 1.28fr;gap:70px;max-width:1220px;margin:auto;padding:90px 24px}.library-intro{position:sticky;top:30px;align-self:start}.library-intro h2,.sequence h2,.closing h2{font-size:clamp(2.5rem,5vw,5rem);line-height:.98;letter-spacing:-.05em}.library-intro p{color:var(--muted)}.library-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.library-grid article{min-height:260px;padding:28px;border:1px solid #d8e2ea;border-radius:20px;background:#ffffff}.library-grid article:nth-child(6n+1){border-top:6px solid #EF6E6E}.library-grid article:nth-child(6n+2){border-top:6px solid #E89A3B}.library-grid article:nth-child(6n+3){border-top:6px solid #7E3F8F}.library-grid article:nth-child(6n+4){border-top:6px solid #179b8f}.library-grid article:nth-child(6n+5){border-top:6px solid #643274}.library-grid article:nth-child(6n){border-top:6px solid #C7237E}.library-grid b{color:var(--purple);font-size:.72rem;letter-spacing:.12em}.library-grid h3{margin:24px 0 10px;font-size:1.55rem;line-height:1.13}.library-grid p{color:var(--muted)}.library-grid a{font-weight:800}.sequence{padding:90px max(24px,8vw);background:#ffffff}.sequence>div{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;max-width:1000px;margin-top:38px}.sequence span{padding:17px;border-left:5px solid var(--teal);border-radius:14px;background:var(--paper);font-weight:800}.closing{padding:100px max(24px,8vw);background:linear-gradient(135deg,#643274,#7E3F8F);color:#ffffff}.closing>p{color:#ffffff;font-size:.73rem;font-weight:800;letter-spacing:.16em}.closing>span{display:block;max-width:760px;color:#d3dee6;font-size:1.1rem}.closing a{display:inline-block;margin-top:28px;padding:13px 20px;border-radius:12px;background:#ffffff;color:var(--ink);font-weight:800}.articles article{min-height:320px}@media(max-width:850px){.library{grid-template-columns:1fr}.library-intro{position:static}.library-grid{grid-template-columns:1fr}}@media(max-width:560px){.detail-hero h1{font-size:3.4rem}.library,.sequence,.closing{padding:70px 22px}.sequence>div{grid-template-columns:1fr}}
.progress{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;max-width:1080px;margin:0 auto;padding:26px 24px 0}
.progress a{display:grid;place-items:center;min-height:48px;border:1px solid #cad7e2;border-radius:14px;background:#ffffff;color:#52677A;font-weight:800}
.progress a:hover,.progress a.active{border-color:#179b8f;background:#179b8f;color:#ffffff}
.connection-note{margin-top:24px;padding:18px;border-left:5px solid #C7237E;background:#ffffff;color:#52677A}
.architecture-hero{background:linear-gradient(145deg,#643274,#7E3F8F)}
.architecture-page{background:#ffffff}
.architecture-detail #question{color:#7E3F8F}
.architecture-page .next{border:1px solid #e5b4d0!important;border-top:5px solid #C7237E!important;border-radius:18px!important;background:#ffffff;color:var(--ink);box-shadow:none}
.architecture-page .next small{color:#C7237E}
.architecture-page .next b{color:var(--ink)}
.library-intro .values{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:24px;border-top:1px solid #cfd9e1}
.library-intro .values span{padding:13px 4px;border:0;border-bottom:1px solid #cfd9e1;border-radius:0;background:transparent;color:var(--ink);font-size:.9rem}
@media(max-width:560px){.progress{gap:5px;padding-inline:14px}.progress a{min-height:42px;border-radius:11px}.nav>a:last-child{font-size:.78rem}}
