.programming p a{text-underline-offset:3px;text-decoration:underline}.programming{color:var(--ink)}.programming a{color:var(--link)}.programming h1{max-width:16ch;margin:18px 0 24px;font-size:clamp(44px,6.6vw,88px);line-height:1.08}.programming .section-badge{background:var(--category);color:var(--category-ink);border-radius:var(--radius-pill);letter-spacing:.08em;padding:8px 14px;display:inline-flex}.programming .eyebrow{color:var(--link)}.programming .section-badge.eyebrow{color:var(--ink)}.dev-hero{background:linear-gradient(135deg,var(--cyan-soft),var(--paper) 80%);border-radius:0 0 var(--radius-lg) var(--radius-lg);padding:64px 0 56px}.dev-hero-grid{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:center;gap:64px;display:grid}.dev-hero .page-lead{max-width:42ch;font-size:20px}.dev-chips{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.dev-chips a,.dev-chips button{border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);min-height:44px;color:var(--ink);align-items:center;gap:10px;padding:10px 18px;font-size:14px;font-weight:700;display:inline-flex}.dev-chips [aria-current=page]{background:var(--soft);border-color:var(--violet)}.dev-chip{overflow-wrap:anywhere;border-radius:var(--radius-pill);background:var(--soft);max-width:100%;color:var(--ink);align-items:center;padding:5px 11px;font-size:12px;font-weight:650;display:inline-flex}.dev-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:13px;display:flex}.dev-release-glass{border-radius:var(--radius-lg);background:color-mix(in srgb,var(--surface) 90%,transparent);border:1px solid var(--line);box-shadow:var(--shadow);padding:28px;transform:rotate(2deg)}.dev-release-glass h2{margin:20px 0 14px;font-size:30px}.dev-release-glass p{color:var(--muted);font-size:15px}.dev-release-glass>a{align-items:center;gap:8px;min-height:44px;font-weight:700;display:flex}.dev-glyph{background:var(--cyan-soft);width:60px;height:60px;color:var(--ink);border-radius:24px;place-items:center;margin-bottom:24px;display:grid}.dev-glyph svg{width:30px;height:30px}.dev-release-glass time{color:var(--muted);margin:16px 0;font-size:13px;display:block}.dev-page-head{background:var(--cyan-soft);border-radius:0 0 var(--radius-lg) var(--radius-lg);padding:48px 0}.dev-page-head nav:first-child,.dev-guide-header nav{font-size:13px}.dev-page-head .section-badge{margin-top:28px}.dev-page-head h1{max-width:22ch;font-size:clamp(40px,5vw,68px)}.dev-page-head .page-lead{max-width:65ch}.dev-bento{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;display:grid}.dev-guide-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);min-width:0;transition:transform var(--duration) var(--ease),box-shadow var(--duration);grid-column:span 2;overflow:hidden}.dev-guide-card:hover{transform:translateY(-4px)}.dev-guide-link{display:block;color:var(--ink)!important}.dev-card-photo{aspect-ratio:16/9;background:var(--soft);overflow:hidden}.dev-card-photo img{object-fit:cover;width:100%;height:100%;transition:transform var(--duration) var(--ease)}.dev-guide-card:hover img{transform:scale(1.025)}.dev-card-content{padding:28px}.dev-card-content h3{margin:20px 0 14px;font-size:28px;line-height:1.2}.dev-card-content p{color:var(--muted);font-size:15px;line-height:1.7}.dev-card-content .read-more{margin-top:24px}.dev-card-credit{color:var(--muted);padding:0 28px 20px;font-size:11px;display:block}.dev-card-credit a{text-decoration:underline}.dev-featured{grid-row:span 2}.dev-featured h3{font-size:clamp(30px,3vw,44px)}.dev-featured .dev-card-photo{aspect-ratio:16/10}.dev-guide-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.dev-guide-grid .dev-guide-card{grid-column:auto}.dev-bento-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--soft);grid-column:span 2;min-width:0;padding:28px}.dev-bento-panel h3{margin:14px 0;font-size:30px}.dev-bento-panel p{color:var(--muted)}.dev-bento-panel>a{align-items:center;gap:8px;min-height:44px;font-weight:700;display:inline-flex}.dev-bento-panel .dev-releases li{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;padding:16px 0}.dev-bento-panel .dev-releases li:last-child{border-bottom:0}.dev-bento-panel .dev-releases p{margin:8px 0;font-size:13px}.dev-bento-panel .dev-release-bottom{font-size:12px}.dev-daily-term{background:var(--cyan-soft)}.dev-start-panel{background:var(--rose-soft)}.dev-start-panel ol{padding-left:20px;font-size:15px}.dev-path{grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;margin:32px 0;padding:0;list-style:none;display:grid}.dev-path li{min-width:0;position:relative}.dev-path li:not(:last-child):after{content:"";background:var(--line);z-index:1;width:38px;height:2px;position:absolute;top:54px;left:calc(100% - 10px)}.dev-path a{background:var(--soft);border:1px solid var(--line);border-radius:var(--radius);height:100%;color:var(--ink);transition:transform var(--duration);padding:22px;display:block}.dev-path a:hover{transform:translateY(-4px)}.dev-step{font-family:var(--headline);color:var(--violet);font-size:48px;font-weight:800;line-height:1.2}.dev-path h3{margin:24px 0 12px;font-size:23px}.dev-path p{color:var(--muted);font-size:14px}.dev-path-link{color:var(--link);margin-top:22px;font-size:12px;font-weight:700;display:block}.dev-path-link .ui-icon{vertical-align:middle}.dev-releases{gap:16px;margin:0;padding:0;list-style:none;display:grid}.dev-releases li{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:24px}.dev-releases p{margin:16px 0;font-size:16px}.dev-release-bottom{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:8px 24px;font-size:13px;display:flex}.dev-release-bottom a{align-items:center;gap:8px;min-height:44px;font-weight:650;display:inline-flex}.dev-version{background:var(--cyan-soft)}.dev-major{background:var(--rose-soft)}.dev-minor{background:var(--soft)}.dev-patch{background:var(--cyan-soft)}.dev-radar-explainer{color:var(--muted);margin:24px 0 32px;font-size:14px}.dev-radar-explainer summary{min-height:44px;color:var(--link);cursor:pointer}.dev-radar-empty{background:var(--soft);border-radius:var(--radius);padding:30px}.dev-guide-header{padding-top:44px}.dev-guide-header h1{max-width:22ch;font-size:clamp(40px,5.4vw,72px)}.dev-guide-header .page-lead{max-width:65ch}.dev-guide-photo{margin:36px 0}.dev-guide-photo>div{aspect-ratio:16/9;border-radius:var(--radius);background:var(--soft);overflow:hidden}.dev-guide-photo img{object-fit:cover;width:100%;height:100%}.dev-guide-photo figcaption{color:var(--muted);padding:12px 4px;font-size:12px}.dev-guide-photo a{text-decoration:underline}.dev-guide-layout{grid-template-columns:240px minmax(0,780px);justify-content:center;gap:64px;padding-bottom:48px;display:grid}.dev-toc{border:1px solid var(--line);background:var(--soft);border-radius:24px;align-self:start;padding:18px;position:sticky;top:24px}.dev-toc summary{cursor:pointer;align-items:center;gap:10px;min-height:44px;font-weight:750;display:flex}.dev-toc summary:after{content:"+";margin-left:auto}.dev-toc[open] summary:after{content:"−"}.dev-toc ol{margin:12px 0;padding-left:20px}.dev-toc a{min-height:44px;padding:8px 0;font-size:13px;display:block}.programming .article-body{min-width:0;max-width:none}.programming .article-body section{scroll-margin-top:32px}.programming .article-body h2{margin:40px 0 20px;font-size:30px}.programming .article-body p{font-size:18px;line-height:1.85}.programming .article-body a{text-underline-offset:3px;text-decoration:underline}.dev-notice{border:1px solid var(--line);color:var(--ink);border-radius:24px;margin:24px 0;padding:22px 24px}.dev-notice p{margin:8px 0 0;font-size:16px!important;line-height:1.7!important}.dev-notice-tip{background:var(--cyan-soft)}.dev-notice-attention{background:color-mix(in srgb,var(--amber) 12%,var(--paper))}.dev-notice-mistake{background:var(--rose-soft)}.dev-code{border:1px solid var(--line);background:var(--soft);border-radius:24px;min-width:0;margin:28px 0;overflow:hidden}.dev-code>figcaption{border-bottom:1px solid var(--line);font-family:var(--mono);color:var(--ink);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:12px 18px;font-size:12px;display:flex}.dev-code>figcaption>span{overflow-wrap:anywhere;min-width:0}.dev-code button{border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--link);border-radius:var(--radius-pill);cursor:pointer;font-family:var(--body);padding:8px 14px;font-weight:700}.dev-code pre{max-width:100%;color:var(--ink);font-size:14px;line-height:1.8;font-family:var(--mono);background:var(--soft);margin:0;padding:22px;overflow-x:auto}.dev-code code{background:0 0;padding:0;font-family:inherit}.dev-code details{border-top:1px solid var(--line);padding:12px 18px;font-size:13px}.dev-code summary{cursor:pointer;align-items:center;min-height:44px;display:flex}.dev-code details pre{padding:12px 0;font-size:13px}.syntax-comment{color:var(--muted)}.syntax-string{color:#086557}.syntax-keyword{color:var(--link);font-weight:650}.syntax-number{color:#9a3900}.dev-guide-sources{border-top:1px solid var(--line);margin:40px 0;padding-top:16px}.dev-guide-sources li{font-size:15px!important}.dev-guide-sources .dev-meta{margin:20px 0}.dev-guide-pager{grid-template-columns:1fr 1fr;gap:20px;margin:32px 0;display:grid}.dev-guide-pager a{border:1px solid var(--line);background:var(--soft);border-radius:24px;padding:24px}.dev-guide-pager small{color:var(--muted);margin-bottom:10px;display:block}.dev-search{max-width:700px;margin-bottom:28px}.dev-search label{margin-bottom:12px;font-weight:700;display:block}.dev-search input{border:1px solid var(--line);background:var(--surface);width:100%;min-height:52px;color:var(--ink);border-radius:var(--radius-pill);font:inherit;padding:16px 20px}.dev-search p{color:var(--muted);min-height:22px;font-size:13px}.dev-alphabet{z-index:5;background:var(--surface);border-bottom:1px solid var(--line);gap:2px;margin-bottom:28px;padding:10px 0;display:flex;position:sticky;top:0;overflow-x:auto}.dev-alphabet a,.dev-alphabet span{border-radius:var(--radius-pill);flex:0 0 44px;place-items:center;min-height:44px;font-weight:750;display:grid}.dev-alphabet a{background:var(--soft)}.dev-alphabet span{color:var(--muted);font-weight:400}.dev-term-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.dev-term{border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);min-width:0;padding:28px;scroll-margin-top:90px}.dev-term[hidden]{display:none}.dev-term h2{margin:14px 0 20px;font-size:27px}.dev-term p{font-size:16px}.dev-term-example{border-radius:var(--radius-sm);background:var(--cyan-soft);padding:18px}.dev-source{align-items:center;min-height:44px;margin-top:14px;font-size:12px;text-decoration:underline;display:inline-flex}.programming .newsletter h2{max-width:22ch}.dev-bottom-links{flex-wrap:wrap;gap:12px 24px;margin:24px 0;font-size:13px;display:flex}.dev-bottom-links a{align-items:center;min-height:44px;text-decoration:underline;display:inline-flex}.dev-proof{color:var(--muted);margin:24px 0;font-size:13px}@media (min-width:1001px){.dev-toc summary{min-height:44px}.dev-toc summary:after{display:none}}@media (max-width:1000px){.dev-hero-grid{gap:30px}.dev-guide-grid,.dev-term-grid,.dev-path{grid-template-columns:repeat(2,minmax(0,1fr))}.dev-path li:after{display:none}.dev-guide-layout{grid-template-columns:1fr;gap:16px}.dev-toc{position:static}.dev-guide-layout .article-body{width:100%;max-width:780px;margin-inline:auto}.dev-featured{grid-row:auto}}@media (max-width:760px){.dev-hero{padding:42px 0}.dev-hero-grid{grid-template-columns:1fr;gap:32px}.dev-hero .page-lead{font-size:17px}.dev-release-glass{padding:24px;transform:none}.programming h1{font-size:clamp(40px,10vw,58px)}.dev-bento{grid-template-columns:1fr;gap:20px}.dev-bento>*{grid-column:1!important}.dev-guide-grid,.dev-term-grid{grid-template-columns:1fr}.dev-card-content{padding:24px}.dev-featured h3{font-size:32px}.dev-path{grid-template-columns:1fr;gap:14px}.dev-path li:not(:last-child):after{width:2px;height:24px;display:block;top:calc(100% - 4px);left:45px}.dev-path a{grid-template-columns:60px minmax(0,1fr);column-gap:16px;padding:24px;display:grid}.dev-step{grid-row:span 3;font-size:40px}.dev-path h3{margin:0 0 8px}.dev-path p{margin:0}.dev-path-link{grid-column:2;margin-top:12px}.dev-page-head{padding:36px 0}.dev-chips a{padding:8px 14px;font-size:12px}.dev-guide-header{padding-top:32px}.dev-guide-photo{margin:28px 0}.dev-guide-pager{gap:12px}.dev-guide-pager a{padding:16px;font-size:14px}.programming .article-body p{font-size:17px}.dev-code pre{padding:18px;font-size:13px}.dev-releases li{padding:22px}.dev-bento-panel{padding:24px}}@media (prefers-reduced-motion:reduce){.dev-guide-card:hover,.dev-guide-card:hover img,.dev-path a:hover{transform:none}.dev-guide-card,.dev-card-photo img,.dev-path a{transition:none}}
