.project-page h1{font-size:clamp(32px,4.5vw,52px);line-height:1.35;letter-spacing:-1.5px;margin:18px 0 0}.back-link{display:flex;align-items:center;gap:9px;font-size:14px;color:var(--muted)}.back-link:hover{color:var(--accent)}.project-hero{display:grid;grid-template-columns:1fr 270px;gap:60px;align-items:center;padding:48px 0 56px}.project-lead{font-size:17px;line-height:1.9;color:var(--muted);max-width:620px;margin-top:18px}.project-summary{padding:24px;border:1px solid var(--line);border-radius:12px;background:#efefe9}.project-summary>div+div{margin-top:18px}.project-summary span{display:block;color:var(--muted);font-size:12px}.project-summary strong{display:block;font-size:14px;font-weight:550;margin-top:4px}.status-value{color:#7a512e}.status-value:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#b98444;margin-right:8px}.project-layout{display:grid;grid-template-columns:170px minmax(0,1fr);gap:48px;border-top:1px solid var(--line);padding-top:36px}.project-outline{position:sticky;top:30px;align-self:start;display:flex;flex-direction:column;gap:4px;padding-top:4px}.project-outline p{font-size:12px;color:var(--muted);margin:0 0 14px 12px}.project-outline a{font-size:14px;color:var(--muted);padding:9px 12px;border-radius:7px}.project-outline a:hover,.project-outline a[aria-current=location]{background:#eeeee7;color:var(--ink)}.content-section{padding-bottom:44px;margin-bottom:36px;border-bottom:1px solid var(--line);scroll-margin-top:32px}.content-heading{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.content-heading h2{font-size:25px;letter-spacing:-.5px;line-height:1.5}.section-index{font:12px ui-monospace,monospace;color:var(--accent)}.quiet-label{font-size:11px;letter-spacing:.5px;padding:3px 8px;border-radius:5px;background:#ecece5;color:var(--muted);margin-left:auto}.section-intro{font-size:16px;line-height:1.95;color:var(--muted);margin-top:16px}.overview-note{margin-top:24px;background:#f1f1e9;border-radius:10px;padding:20px 24px;border-left:3px solid #c4cbb2}.overview-note>span{font-size:12px;color:var(--muted)}.overview-note p{margin-top:5px;font-size:16px;line-height:1.9}.video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px}.video-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:white}.video-placeholder{aspect-ratio:16/10;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;background:#eeeee7;color:#7b8170;border-bottom:1px solid var(--line)}.video-card:nth-child(2) .video-placeholder{background:#edeae5;color:#8a786b}.video-card:nth-child(3) .video-placeholder{background:#e8edeb;color:#72847c}.video-placeholder>span{font:32px Georgia,serif}.video-placeholder>small{font-size:12px}.video-copy{padding:17px}.video-copy h3{font-size:16px}.video-copy p{font-size:13px;color:var(--muted);margin-top:6px;line-height:1.8}.video-copy>small{display:block;font-size:11px;color:var(--muted);margin-top:12px}.video-card video{display:block;width:100%;aspect-ratio:16/10;background:#252822}.feature-list{list-style:none;padding:0;margin:24px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:14px}.feature-list li{background:white;border:1px solid var(--line);border-radius:12px;padding:23px}.feature-list .feature-index{font:12px ui-monospace,monospace;color:#9ba08f;display:block;margin-bottom:12px}.feature-list h3{font-size:17px}.feature-list p{font-size:14px;line-height:1.9;color:var(--muted);margin-top:9px}.architecture-figure{margin:24px 0 0;padding:26px;border:1px solid var(--line);border-radius:14px;background:#fff}.diagram-title{display:flex;justify-content:space-between;gap:15px;margin-bottom:22px;font-size:12px;color:var(--muted)}.architecture-node{text-align:center;border:1px solid #dfe2d9;border-radius:9px;background:#fafbf8;padding:15px 12px}.architecture-node strong,.worker-group>strong{display:block;font-size:15px;font-weight:600;line-height:1.6}.architecture-node p,.worker-group>p{font-size:12px;color:var(--muted);line-height:1.8;margin-top:4px}.node-kicker{display:block;font-size:11px;color:var(--muted);margin-bottom:4px}.interface-node{background:#edf1e7;border-color:#d3dbc9}.diagram-connector{display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:11px;color:#787d70;gap:0;padding:9px 0;line-height:1.6}.diagram-connector>span:last-child{font-size:18px;line-height:1.3;color:#949b89}.diagram-connector.compact{padding:7px 0}.backend-group{padding:16px;background:#f5f5f0;border:1px dashed #cdd2c4;border-radius:12px}.group-label{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:var(--muted);margin-bottom:12px}.api-node{background:white}.task-node{background:#f4ece4;border-color:#e6d9cc}.service-branches,.external-branches,.storage-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.external-branches{padding:0 16px;align-items:start}.model-node{background:#f0edf5;border-color:#ded7e9}.worker-group{background:#edf2ef;border:1px solid #d2ded6;border-radius:9px;padding:15px 12px;text-align:center}.browser-target{border-top:1px solid #d2ded6;margin-top:12px;padding-top:7px;display:flex;flex-direction:column;align-items:center;gap:3px}.browser-target>span:nth-child(2){font-size:14px;font-weight:550}.browser-target small{font-size:11px;color:var(--muted)}.browser-target>span:first-child{color:#8a9b8e}.storage-heading{border-top:1px solid var(--line);margin-top:22px;padding:17px 0 12px;text-align:center;font-size:11px;color:var(--muted)}.storage-node{background:#f5f4ef;border-color:#e2dfd4}.architecture-figure figcaption{font-size:11px;color:var(--muted);line-height:1.8;margin-top:18px}.architecture-notes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:24px}.architecture-notes article>span{font-size:11px;color:var(--accent)}.architecture-notes h3{font-size:15px;line-height:1.7;margin-top:8px}.architecture-notes p{font-size:13px;color:var(--muted);line-height:1.9;margin-top:7px}.technical-list{margin-top:23px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:white}.technical-list details+details{border-top:1px solid var(--line)}.technical-list summary{list-style:none;cursor:pointer;padding:20px 24px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:16px;font-weight:550}.technical-list summary::-webkit-details-marker{display:none}.technical-list summary small{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-bottom:5px}.technical-list summary:focus-visible{outline:3px solid var(--accent);outline-offset:-4px}.detail-toggle{font-size:22px;color:var(--accent);flex-shrink:0}.technical-list details[open] .detail-toggle{transform:rotate(45deg)}.technical-body{padding:0 24px 23px}.technical-body p{font-size:14px;line-height:1.95;color:var(--muted);margin-top:12px}.technical-body .technical-caveat{border-left:2px solid #d9c9b6;padding-left:13px;font-size:13px}.progress-card{border:1px solid #dfe0d5;background:#f0f1e9;border-radius:12px;padding:24px;margin-top:23px}.progress-card>span{font-size:13px}.progress-card p{font-size:15px;line-height:1.95;margin-top:10px}.material-note{font-size:12px;color:var(--muted);margin-top:16px;line-height:1.8}.project-end{display:flex;align-items:center;flex-wrap:wrap;gap:20px;padding-bottom:40px}.project-end p{flex-basis:100%;font-size:20px;margin-bottom:4px}.project-page .footer{border-top:1px solid var(--line);margin-top:20px}.project-page .tags{margin-top:22px}
@media(max-width:1000px){.project-hero{gap:30px;grid-template-columns:1fr 240px}.project-layout{grid-template-columns:145px minmax(0,1fr);gap:25px}.video-grid{gap:10px}.video-copy{padding:14px}.architecture-figure{padding:20px}.architecture-notes{gap:14px}}
@media(max-width:760px){.project-hero{grid-template-columns:1fr;gap:24px;padding:30px 0 32px}.project-page h1{font-size:34px;letter-spacing:-1px}.project-lead{font-size:16px}.project-summary{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:20px}.project-summary>div+div{margin:0}.project-summary>div:last-child{grid-column:1/-1}.project-layout{grid-template-columns:1fr;gap:28px;padding-top:20px}.project-outline{position:static;flex-direction:row;flex-wrap:wrap;gap:6px}.project-outline p{display:none}.project-outline a{font-size:12px;border:1px solid var(--line);padding:7px 10px;background:white}.content-heading h2{font-size:23px}.content-section{padding-bottom:32px;margin-bottom:30px}.video-grid{grid-template-columns:1fr;gap:12px}.video-card{display:grid;grid-template-columns:110px minmax(0,1fr)}.video-placeholder{aspect-ratio:auto;border-bottom:0;border-right:1px solid var(--line)}.video-copy{padding:16px}.video-copy>small{margin-top:7px}.video-card:has(video){display:block}.feature-list{gap:12px}.feature-list li{padding:18px}.feature-list h3{font-size:16px}.architecture-notes{grid-template-columns:1fr;gap:18px}.architecture-notes h3{margin-top:4px}.architecture-notes p{margin-top:4px}.back-link{font-size:13px}.architecture-figure{padding:16px}.external-branches{padding:0 9px;gap:9px}.backend-group{padding:12px 9px}.service-branches,.storage-grid{gap:9px}.architecture-node{padding:13px 8px}.architecture-node strong,.worker-group>strong{font-size:13px}.architecture-node p,.worker-group>p{font-size:11px}.diagram-connector{font-size:10px}.worker-group{padding:13px 8px}.diagram-title{margin-bottom:18px}.technical-list summary{padding:18px;font-size:15px}.technical-body{padding:0 18px 20px}}
@media(max-width:420px){.feature-list{grid-template-columns:1fr}.project-summary{grid-template-columns:1fr}.project-summary>div:last-child{grid-column:auto}.project-page h1{font-size:30px}.diagram-title{font-size:11px}.architecture-node strong,.worker-group>strong{font-size:12px}.architecture-node p{line-height:1.9}.group-label{font-size:10px}.project-end p{font-size:18px}}
.video-card.video-featured{grid-column:1/-1;display:block}.video-featured video{aspect-ratio:16/9}.video-featured .video-copy{padding:20px 24px}.video-featured .video-copy h3{font-size:20px}.video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:760px){.video-grid{grid-template-columns:1fr}.video-featured .video-copy{padding:16px}.video-featured .video-copy h3{font-size:18px}}
