@font-face{font-family:TechnicalPuhui;src:url('fonts/technical/puhui-regular.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:TechnicalPuhui;src:url('fonts/technical/puhui-bold.ttf') format('truetype');font-weight:700;font-display:swap}
.technical-page main{color:var(--type-heading)}.ta-hero{height:450px;background:#eaf5ff url('images/technical/banner.png') center/cover no-repeat;display:flex;align-items:center}.ta-hero h1{font-family:TechnicalPuhui,var(--type-font);font-size:clamp(36px,2.71vw,52px);line-height:1.3;margin:0 0 22px;font-weight:700}.ta-hero h1 span{color:#2d48ce}.ta-hero p{font-size:var(--type-intro);line-height:1.7;margin:0 0 40px;color:#606b76}.ta-search{display:flex;width:620px;max-width:100%;height:64px;background:white;border-radius:2px;overflow:hidden}.ta-search button{border:0;background:white;padding:0 18px;cursor:pointer;flex:none}.ta-search img{width:24px;height:24px;vertical-align:middle}.ta-search input{min-width:0;width:100%;border:0;background:transparent;color:#29354a;font:inherit;font-size:18px;padding:10px 18px 10px 0}.ta-search input::placeholder{color:#98a2b3}.ta-search:focus-within{outline:2px solid #296aff;outline-offset:3px}.ta-search input:focus-visible{outline:none}
.ta-categories{background:white}.ta-categories>.nw-wrap{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.ta-categories button{position:relative;display:flex;align-items:center;gap:18px;border:0;border-bottom:4px solid transparent;background:none;text-align:left;padding:28px 8px 30px;cursor:pointer;color:#202a33;font-family:inherit}.ta-categories button+button:before{content:'';position:absolute;left:-6px;height:60px;width:1px;background:#e9edf4}.ta-categories img{width:64px;height:64px;object-fit:contain}.ta-categories strong{display:block;font-size:var(--type-subheading);font-weight:600;line-height:1.5}.ta-categories small{display:block;color:#7c899d;font-size:14px;line-height:1.6;margin-top:4px}.ta-categories [aria-pressed=true]{border-bottom-color:#296aff;color:#296aff}
.ta-list{background:#f4f7fb;padding:62px 0 64px}.ta-list h2{font-size:var(--type-section);font-weight:600;line-height:1.35;margin:0 0 24px}.ta-filter-row{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:42px}.ta-filter-row>span{font-size:16px;color:#7c899d;white-space:nowrap}.ta-topics{display:flex;gap:14px;flex-wrap:wrap}.ta-topics button{border:1px solid #e3e9f3;border-radius:28px;background:white;color:#7c899d;font-family:inherit;font-size:16px;line-height:1.5;padding:8px 24px;cursor:pointer}.ta-topics [aria-pressed=true]{background:#296aff;border-color:#296aff;color:white}.ta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:32px;row-gap:40px}.ta-card{display:block;min-width:0;border-radius:6px;overflow:hidden;background:white;color:#202a33;text-decoration:none}.ta-card>img{display:block;width:100%;height:auto;aspect-ratio:1.6;object-fit:cover}.ta-card-copy{padding:18px 24px 14px}.ta-meta{color:#447aff;font-size:14px;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ta-meta [data-tag]:before{content:' · '}.ta-card h3{font-size:var(--type-card);line-height:1.4;font-weight:600;margin:10px 0 8px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ta-card p{font-size:var(--type-intro);line-height:1.5;margin:0;color:#7c899d;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ta-card:hover h3{color:#296aff}.ta-card[hidden],.ta-empty[hidden]{display:none}.ta-empty{padding:60px 0;text-align:center;color:#7c899d}.ta-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.technical-page :is(.ta-card,button):focus-visible{outline:2px solid #296aff;outline-offset:4px}
.technical-detail-page .nd-prose pre{max-width:100%;white-space:pre;overflow-wrap:normal;tab-size:2}.technical-detail-page .nd-prose code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.9em}.technical-detail-page .nd-prose :not(pre)>code{background:#f0f4fa;padding:.15em .3em;border-radius:3px}
@media(max-width:1400px){.ta-hero{height:400px}.ta-categories button{gap:10px;padding-block:24px}.ta-categories img{width:48px;height:48px}.ta-categories small{font-size:12px}.ta-categories strong{font-size:18px}.ta-filter-row{align-items:flex-start}.ta-filter-row>span{display:none}.ta-card-copy{padding:16px}.ta-grid{gap:28px}.ta-card h3{font-size:22px}}
@media(max-width:1000px){.ta-hero{height:340px;background-position:60% center}.ta-hero p{max-width:60%;margin-bottom:24px}.ta-search{width:52%;height:54px}.ta-categories>.nw-wrap{display:flex;overflow-x:auto;gap:8px}.ta-categories button{flex:0 0 190px;padding-block:20px}.ta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ta-list{padding-block:40px}.ta-list h2{font-size:32px}}
@media(max-width:600px){.ta-hero{height:320px;background-position:30% center}.ta-hero h1{font-size:30px;margin-bottom:18px}.ta-hero p{max-width:100%;font-size:16px;max-width:290px}.ta-search{width:100%;height:48px}.ta-search input{font-size:16px}.ta-search button{padding-inline:14px}.ta-categories button{flex-basis:170px}.ta-categories img{width:42px;height:42px}.ta-categories strong{font-size:16px}.ta-categories small{font-size:11px}.ta-list{padding-block:32px}.ta-list h2{font-size:28px;margin-bottom:20px}.ta-topics{gap:8px}.ta-topics button{padding:6px 14px;font-size:14px;min-height:36px}.ta-filter-row{margin-bottom:26px}.ta-grid{grid-template-columns:1fr;gap:24px}.ta-card h3{font-size:20px}.ta-card p{font-size:16px}.ta-card-copy{padding:16px 18px 18px}}
/* Keep the banner title on one line despite the homepage's block-span rule. */
.technical-page .ta-hero h1 span{display:inline}

/* Use the existing blue palette for previously missing hover feedback. */
.ta-categories button:hover:not([aria-pressed=true]){color:#296aff;background:#f7faff}
.ta-topics button:hover:not([aria-pressed=true]){color:#296aff;border-color:#a9c5ff;background:#f3f7ff}
