/* A balanced hero illustration, with all windows and labels inside its footprint. */
.sn-hero-preview { position: relative; container-type: inline-size; width: 100%; min-width: 0; aspect-ratio: 3 / 2; margin: 0; line-height: 1.3; }
.sn-preview-stage { position: absolute; inset: 2px 8px 34px 6px; isolation: isolate; }
.sn-preview-website, .sn-preview-workspace { position: absolute; min-width: 0; display: flex; flex-direction: column; }
.sn-preview-website { top: 0; left: 0; width: 84%; height: 73%; }
.sn-preview-workspace { right: 0; bottom: 0; width: 69%; height: 65%; z-index: 1; }
.sn-preview-label { display: flex; align-items: center; gap: 4px; flex-shrink: 0; margin-bottom: 4px; color: var(--sn-ink); font-size: clamp(14px, 2.6cqw, 17px); font-weight: 600; line-height: 1.2; }
.sn-preview-label svg { width: 1em; height: 1em; flex-shrink: 0; transform: rotate(135deg); stroke-width: 1.5; }
.sn-preview-workspace > .sn-preview-label { align-self: flex-end; max-width: 100%; padding-inline: 3px; border-radius: 3px; background: var(--sn-paper); }
.sn-preview-window { flex: 1; display: flex; flex-direction: column; min-width: 0; min-height: 0; overflow: hidden; border: 1px solid #dadfd4; border-radius: clamp(5px, 1.4cqw, 9px); background: #fffefb; box-shadow: 0 3px 7px -2px #173e3030; }
.sn-workspace-window { box-shadow: 0 4px 8px -3px #173e3042; }
.sn-preview-chrome { display: flex; align-items: center; gap: 3px; height: clamp(7px, 2cqw, 13px); flex-shrink: 0; padding-inline: 6px; border-bottom: 1px solid #eceee7; background: linear-gradient(#fafaf8, #f3f4f0); }
.sn-preview-chrome i { width: clamp(3px, .65cqw, 4px); height: clamp(3px, .65cqw, 4px); border-radius: 50%; background: #ea887d; }
.sn-preview-chrome i:nth-child(2) { background: #eac166; }
.sn-preview-chrome i:nth-child(3) { background: #84b895; }
.sn-site-header { display: flex; align-items: center; justify-content: space-between; gap: 8px; flex-shrink: 0; padding: 1.4cqw 1.8cqw; }
.sn-preview-brand { display: flex; align-items: center; gap: 4px; min-width: 0; font-size: clamp(7px, 1.5cqw, 10px); font-weight: 700; line-height: 1.1; }
.sn-preview-brand svg { width: clamp(12px, 3cqw, 19px); height: clamp(12px, 3cqw, 19px); flex-shrink: 0; color: #efbf55; fill: #efbf55; stroke-width: 1.5; }
.sn-site-nav { display: flex; align-items: center; gap: 1.8cqw; font-size: clamp(6px, 1.25cqw, 8px); font-weight: 500; }
.sn-site-nav-current { color: #397055; text-decoration: underline; text-underline-offset: 3px; }
.sn-site-welcome { display: grid; grid-template-columns: minmax(0, .55fr) minmax(0, 1fr); flex: 1; min-width: 0; min-height: 0; background: #f6f4eb; }
.sn-site-copy { align-self: center; min-width: 0; padding: 1.5cqw 0 1.5cqw 1.8cqw; position: relative; z-index: 1; }
.sn-site-title { display: block; font-size: clamp(12px, 3.2cqw, 24px); font-weight: 700; line-height: 1.15; letter-spacing: -.035em; overflow-wrap: anywhere; }
.sn-preview-apply { display: inline-flex; align-items: center; gap: 5px; margin-top: 1.5cqw; padding: 1cqw 1.25cqw; border-radius: 4px; background: var(--sn-ink); color: #fffefb; font-size: clamp(6px, 1.35cqw, 9px); font-weight: 600; line-height: 1.2; }
.sn-preview-apply svg { width: 1.3em; height: 1.3em; flex-shrink: 0; }
.sn-site-image { display: block; width: 100%; height: 100%; min-width: 0; min-height: 0; object-fit: cover; object-position: 52% center; mask-image: linear-gradient(to right, transparent, #000 22%); }
/* Omit secondary details visually; retain the complete translated description. */
.sn-site-intro, .sn-site-programmes, .sn-workspace-account, .sn-workspace-intro, .sn-preview-stat-note, .sn-activity-detail { display: none; }
.sn-workspace-layout { display: grid; grid-template-columns: 12% minmax(0, 1fr); flex: 1; min-height: 0; }
.sn-workspace-sidebar { min-width: 0; padding: 1.5cqw .6cqw; color: #fffefb; background: linear-gradient(160deg, #1a513e, #0e3a2e); }
.sn-workspace-sidebar .sn-preview-brand { justify-content: center; }
.sn-workspace-sidebar .sn-preview-brand span, .sn-workspace-menu-item span { display: none; }
.sn-workspace-sidebar .sn-preview-brand svg { width: clamp(10px, 2.6cqw, 16px); height: clamp(10px, 2.6cqw, 16px); }
.sn-workspace-menu { display: grid; gap: .6cqw; margin-top: 1.3cqw; }
.sn-workspace-menu-item { display: flex; justify-content: center; padding: .65cqw 0; border-radius: 3px; }
.sn-workspace-menu-item svg { width: clamp(8px, 1.8cqw, 11px); height: clamp(8px, 1.8cqw, 11px); flex-shrink: 0; }
.sn-workspace-menu-item:nth-child(n+4) { display: none; }
.sn-workspace-menu-current { background: #ffffff17; }
.sn-workspace-main { display: flex; flex-direction: column; gap: 1.5cqw; min-width: 0; min-height: 0; padding: 1.8cqw; }
.sn-workspace-title { display: block; font-size: clamp(10px, 2.4cqw, 17px); font-weight: 700; line-height: 1.2; letter-spacing: -.025em; overflow-wrap: anywhere; }
.sn-workspace-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .7cqw; }
.sn-preview-stat { position: relative; display: flex; flex-direction: column; gap: .6cqw; min-width: 0; padding: .8cqw; border: 1px solid #e9ede5; border-radius: 4px; background: #fff; }
.sn-preview-stat > svg { position: absolute; top: .8cqw; right: .8cqw; width: clamp(8px, 1.8cqw, 12px); height: clamp(8px, 1.8cqw, 12px); color: #20744d; }
.sn-preview-stat:nth-child(2) > svg { color: #3472a4; }
.sn-preview-stat:nth-child(3) > svg { color: #856830; }
.sn-preview-stat-label { padding-right: 1.9cqw; font-size: clamp(7px, 1.45cqw, 10px); line-height: 1.15; overflow-wrap: anywhere; }
.sn-preview-stat strong { font-size: clamp(12px, 2.8cqw, 20px); line-height: 1.35; font-weight: 600; white-space: nowrap; }
.sn-workspace-activity { min-height: 0; padding: .8cqw; border: 1px solid #e9ede5; border-radius: 4px; background: #fff; }
.sn-workspace-activity > strong { display: none; }
.sn-workspace-activity ul { list-style: none; margin: 0; padding: 0; }
.sn-workspace-activity li { display: flex; align-items: center; gap: .8cqw; padding: .75cqw 0; }
.sn-workspace-activity li + li { border-top: 1px solid #f0f2ec; }
.sn-activity-icon { display: grid; place-items: center; width: 2.2cqw; height: 2.2cqw; flex-shrink: 0; border-radius: 3px; color: #397655; background: #eaf5ed; }
.sn-activity-icon svg { width: 1.7cqw; height: 1.7cqw; }
.sn-activity-title { display: block; font-size: clamp(7px, 1.45cqw, 10px); line-height: 1.15; overflow-wrap: anywhere; }
.sn-hero-preview figcaption { position: absolute; inset: auto 0 1px; margin: 0; color: #6b746b; font-size: clamp(14px, 2cqw, 15px); line-height: 1.3; text-align: center; }
html:lang(zh-Hans) .sn-site-title, html:lang(zh-Hans) .sn-workspace-title { letter-spacing: 0; line-height: 1.3; }
@media (max-width: 800px) {
  .sn-hero-preview { max-height: 480px; }
}
@media (max-width: 599px) {
  .sn-hero-preview { aspect-ratio: 4 / 3; }
}
@container (max-width: 450px) {
  .sn-preview-stage { inset: 1px 4px 34px; }
  .sn-site-nav, .sn-preview-apply, .sn-workspace-activity { display: none; }
  .sn-workspace-main { justify-content: center; gap: 1.5cqw; padding: 1.2cqw; }
  .sn-preview-stat-label { display: none; }
  .sn-preview-stat { padding: 1cqw; }
  .sn-preview-stat > svg { position: static; width: 9px; height: 9px; }
  .sn-workspace-menu-item:nth-child(n+3) { display: none; }
}
