@charset "utf-8";
.sn-header { position:relative; z-index:100; width:100%; background:#fff; color:#192e4a; font:14px/1.65 "Microsoft YaHei","PingFang SC",Arial,sans-serif; text-align:left; box-shadow:0 3px 12px #1c5dc50b; }
.sn-header *, .sn-header *::before, .sn-header *::after { box-sizing:border-box; }
.sn-header [hidden] { display:none !important; }
.sn-header .sn-symbols { display:none; }
.sn-header a { color:inherit; text-decoration:none; }
.sn-header button, .sn-header input, .sn-header select { font:inherit; }
.sn-header button { cursor:pointer; line-height:1.65; }
.sn-header a, .sn-header button { transition:color .15s,background .15s,border-color .15s; }
.sn-header a:focus-visible, .sn-header button:focus-visible, .sn-header input:focus-visible, .sn-header select:focus-visible { outline:3px solid #8eb7ff; outline-offset:3px; }
.sn-header .sn-nav-strip a:focus-visible, .sn-header .sn-subject-trigger:focus-visible { outline-color:#c9ddff; outline-offset:-4px; }
.sn-header .sn-icon { display:inline-block; flex:0 0 21px; width:21px; height:21px; margin:0; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; vertical-align:middle; }
.sn-header .sn-chevron { flex-basis:13px; width:13px; height:13px; }
.sn-header .sn-inner { width:100%; max-width:1280px; margin:0 auto; padding:0 24px; }
.sn-header .sn-top-row { display:flex; align-items:center; gap:32px; min-height:116px; }
.sn-header .sn-brand { flex-shrink:0; margin:0; padding:0; }
.sn-header .sn-brand > a { display:flex; align-items:center; gap:14px; }
.sn-header .sn-brand img { display:block; width:68px; height:68px; object-fit:contain; }
.sn-header .sn-brand strong { display:block; max-width:280px; margin:0; color:#1e3456; font-size:29px; font-weight:700; line-height:1.25; letter-spacing:2px; }
.sn-header .sn-brand small { display:block; margin-top:7px; color:#7f8b9d; font-size:11px; line-height:1.65; letter-spacing:3px; white-space:nowrap; }
.sn-header .sn-search { position:relative; display:block; flex:0 1 520px; min-width:220px; margin:0 0 0 40px; padding:0; }
.sn-header .sn-search-field { display:flex; align-items:stretch; gap:0; height:49px; overflow:hidden; border:2px solid #2477f3; border-radius:6px; background:#fff; }
.sn-header .sn-search-field:focus-within { border-color:#599af8; box-shadow:0 0 0 3px #2477f310; }
.sn-header .sn-search select { display:block; flex:0 0 83px; width:83px; height:25px; align-self:center; margin:0; padding:0 12px; border:0; border-right:1px solid #e0e8f3; border-radius:0; background:transparent; color:#445e80; font-size:14px; line-height:1.65; cursor:pointer; }
.sn-header .sn-search input { display:block; flex:1; min-width:0; width:100%; height:100%; margin:0; padding:0 15px; border:0; border-radius:0; outline:0; background:transparent; box-shadow:none; color:#263f60; font:14px/1.65 "Microsoft YaHei","PingFang SC",Arial,sans-serif; }
.sn-header .sn-search input::placeholder { color:#a0aec0; }
.sn-header .sn-search button { display:flex; align-items:center; justify-content:center; gap:7px; flex:0 0 88px; width:88px; height:100%; margin:0; padding:0 15px; border:0; border-radius:0; background:#2477f3; color:#fff; font-size:14px; white-space:nowrap; }
.sn-header .sn-search button:hover { background:#1366dc; }
.sn-header .sn-search button > .sn-icon { flex-basis:17px; width:17px; height:17px; }
.sn-header .sn-search-error { position:absolute; top:100%; left:2px; margin:3px 0 0; color:#ba7373; font-size:12px; line-height:1.5; }
.sn-header .sn-account-area { flex-shrink:0; margin-left:auto; }
.sn-header .sn-dropdown { position:relative; }
.sn-header .sn-account-trigger { display:flex; align-items:center; gap:10px; height:47px; margin:0; padding:0 0 0 6px; border:0; background:transparent; color:#3d526e; font-size:14px; white-space:nowrap; }
.sn-header .sn-account-trigger:hover { color:#2477f3; }
.sn-header .sn-account-trigger > .sn-chevron { color:#9baac0; }
.sn-header .sn-avatar { display:grid; place-items:center; flex:0 0 37px; width:37px; height:37px; border:1px solid #dbe6f7; border-radius:50%; background:#eef4fe; color:#7393c2; }
.sn-header .sn-avatar > .sn-icon { width:19px; height:19px; }
.sn-header .sn-account-name { max-width:120px; overflow:hidden; text-overflow:ellipsis; }
.sn-header a.sn-login { display:inline-flex; align-items:center; justify-content:center; height:42px; padding:0 23px; border:1px solid #bcd2f3; border-radius:5px; background:#f5f9ff; color:#2675e7; font-size:14px; line-height:1.65; white-space:nowrap; }
.sn-header a.sn-login:hover { border-color:#8fb9f5; background:#edf4ff; }
.sn-header .sn-nav-strip { background:#2477f3; }
.sn-header .sn-nav-inner { display:flex; align-items:center; gap:16px; }
.sn-header .sn-subject { flex-shrink:0; }
.sn-header .sn-subject-trigger { display:flex; align-items:center; justify-content:flex-start; gap:9px; width:175px; min-width:0; height:64px; margin:0 3px 0 0; padding:0 18px 0 0; border:0; border-right:1px solid #ffffff25; border-radius:0; background:transparent; color:#fff; font-size:16px; font-weight:500; line-height:1.65; white-space:nowrap; }
.sn-header .sn-subject-trigger:hover, .sn-header .sn-subject-trigger[aria-expanded="true"] { background:#ffffff0a; }
.sn-header .sn-subject-trigger > span { max-width:120px; overflow:hidden; text-overflow:ellipsis; }
.sn-header .sn-subject-trigger > .sn-icon:first-child { flex-basis:20px; width:20px; height:20px; }
.sn-header .sn-subject-trigger > .sn-chevron { margin-left:auto; opacity:.65; }
.sn-header .sn-nav { flex:1; min-width:0; }
.sn-header .sn-nav-list { display:flex; align-items:center; gap:0; width:auto; height:64px; margin:0; padding:0; list-style:none; }
.sn-header .sn-nav-list > li { display:flex; align-items:center; flex-shrink:0; height:100%; margin:0; padding:0; }
.sn-header .sn-nav-list > li > a { display:flex; align-items:center; justify-content:center; gap:6px; height:64px; padding:0 23px; border:0; border-radius:0; background:transparent; color:#eaf2ff; font-size:16px; font-weight:500; line-height:1.65; white-space:nowrap; }
.sn-header .sn-nav-list > li > a:hover { background:#ffffff12; color:#fff; }
.sn-header .sn-nav-list > li.is-active > a { height:45px; padding:0 25px; border-radius:5px; background:#fff; box-shadow:0 3px 9px #174ca717; color:#206edf; font-weight:600; }
.sn-header .sn-ai-tag { display:inline-flex; align-items:center; justify-content:center; min-width:21px; padding:4px; border:1px solid #ffffff35; border-radius:4px; background:#ffffff12; color:#dce7ff; font:700 10px/1 Arial,sans-serif; letter-spacing:.3px; }
.sn-header .is-active .sn-ai-tag { border-color:#d8e5ff; background:#edf3ff; color:#547dcb; }
.sn-header .sn-nav-note { flex-shrink:0; color:#d5e6ff; font-size:11px; line-height:1.65; white-space:nowrap; }
.sn-header .sn-panel { position:absolute; top:calc(100% + 10px); z-index:10; margin:0; padding:20px; border:1px solid #dce5f2; border-radius:9px; background:#fff; box-shadow:0 18px 45px #17375c24; color:#3c5270; transform:translateX(var(--sn-menu-offset,0px)); }
.sn-header .sn-subject-panel { left:0; width:555px; max-width:calc(100vw - 32px); max-height:calc(100vh - 210px); overflow:auto; overscroll-behavior:contain; }
.sn-header .sn-panel-caption { margin:0 0 16px; color:#8f9eb2; font-size:12px; line-height:1.65; }
.sn-header .sn-subject-row { display:flex; gap:20px; margin-bottom:15px; }
.sn-header .sn-subject-row:last-child { margin-bottom:0; }
.sn-header .sn-subject-row > h2 { flex:0 0 35px; margin:0; padding-top:5px; color:#8c9bb1; font-size:13px; font-weight:400; line-height:1.65; }
.sn-header .sn-subject-links { display:flex; flex-wrap:wrap; gap:4px; min-width:0; }
.sn-header .sn-subject-links > a { display:block; padding:5px 10px; border-radius:5px; color:#536d90; font-size:14px; line-height:1.65; white-space:nowrap; }
.sn-header .sn-subject-links > a:hover { background:#f1f6ff; color:#2477f3; }
.sn-header .sn-subject-links > a.is-current { background:#eaf2ff; color:#2477f3; }
.sn-header .sn-empty { margin:0; color:#91a0b7; font-size:13px; }
.sn-header .sn-account-panel { right:0; width:195px; max-width:calc(100vw - 32px); padding:8px; }
.sn-header .sn-account-intro { margin-bottom:5px; padding:10px 12px; border-bottom:1px solid #e8eef6; }
.sn-header .sn-account-intro strong { display:block; color:#3b557b; font-size:14px; font-weight:500; line-height:1.65; overflow-wrap:anywhere; }
.sn-header .sn-account-intro small { display:block; margin-top:3px; color:#9caabe; font-size:11px; line-height:1.65; }
.sn-header .sn-account-panel > a { display:flex; align-items:center; gap:10px; padding:10px 12px; border-radius:5px; color:#617998; font-size:13px; line-height:1.65; }
.sn-header .sn-account-panel > a > .sn-icon { flex-basis:16px; width:16px; height:16px; }
.sn-header .sn-account-panel > a:hover { background:#f2f7ff; color:#2477f3; }
.sn-header .sn-account-panel > a.sn-logout { margin-top:4px; border-top:1px solid #edf1f7; border-radius:0; color:#91a0b7; }
@media (max-width:1300px) {
    .sn-header .sn-top-row { gap:22px; }
    .sn-header .sn-search { flex-basis:470px; margin-left:20px; }
    .sn-header .sn-nav-note { display:none; }
    .sn-header .sn-nav-inner { gap:10px; }
    .sn-header .sn-subject-trigger { width:165px; }
    .sn-header .sn-nav-list > li > a { padding:0 18px; }
    .sn-header .sn-nav-list > li.is-active > a { padding:0 20px; }
}
@media (max-width:1100px) {
    .sn-header .sn-top-row { gap:20px; min-height:110px; }
    .sn-header .sn-brand img { width:60px; height:60px; }
    .sn-header .sn-brand strong { font-size:26px; }
    .sn-header .sn-brand small { font-size:10px; }
    .sn-header .sn-search { flex-basis:430px; margin-left:6px; }
    .sn-header .sn-nav-inner { gap:8px; }
    .sn-header .sn-subject-trigger { width:145px; gap:7px; font-size:14px; }
    .sn-header .sn-nav-list > li > a { padding:0 13px; font-size:15px; }
    .sn-header .sn-nav-list > li.is-active > a { padding:0 16px; }
}
@media (max-width:960px) {
    .sn-header .sn-top-row { flex-wrap:wrap; min-height:0; gap:16px; padding-top:18px; padding-bottom:18px; }
    .sn-header .sn-brand { flex:1; }
    .sn-header .sn-search { order:3; flex:1 0 100%; margin:0; }
    .sn-header .sn-search-error { position:static; margin-top:5px; }
    .sn-header .sn-account-area { margin-left:0; }
    .sn-header .sn-nav { overflow-x:auto; overscroll-behavior-x:contain; scrollbar-width:thin; }
    .sn-header .sn-nav-list { width:max-content; min-width:100%; height:58px; }
    .sn-header .sn-subject-trigger { height:58px; }
    .sn-header .sn-nav-list > li > a { height:58px; padding:0 14px; font-size:14px; }
    .sn-header .sn-nav-list > li.is-active > a { height:40px; padding:0 16px; }
}
@media (max-width:600px) {
    .sn-header .sn-inner { padding-left:16px; padding-right:16px; }
    .sn-header .sn-top-row { gap:15px 10px; padding-top:15px; padding-bottom:15px; }
    .sn-header .sn-brand { min-width:0; }
    .sn-header .sn-brand > a { gap:9px; }
    .sn-header .sn-brand img { width:46px; height:46px; }
    .sn-header .sn-brand strong { max-width:190px; font-size:21px; }
    .sn-header .sn-brand small { margin-top:4px; font-size:9px; letter-spacing:1.5px; }
    .sn-header .sn-account-name { display:none; }
    .sn-header .sn-account-trigger { gap:5px; }
    .sn-header .sn-avatar { width:32px; height:32px; flex-basis:32px; }
    .sn-header .sn-search-field { height:43px; }
    .sn-header .sn-search select { flex-basis:65px; width:65px; padding:0 8px; font-size:12px; }
    .sn-header .sn-search input { padding:0 10px; font-size:12px; }
    .sn-header .sn-search button { flex-basis:70px; width:70px; padding:0 10px; font-size:12px; gap:5px; }
    .sn-header .sn-search button > .sn-icon { width:15px; height:15px; flex-basis:15px; }
    .sn-header .sn-nav-inner { gap:5px; }
    .sn-header .sn-subject-trigger { width:117px; padding-right:8px; gap:6px; font-size:13px; }
    .sn-header .sn-subject-trigger > .sn-icon:first-child { display:none; }
    .sn-header .sn-subject-panel { max-height:55vh; padding:16px; }
    .sn-header .sn-subject-row { gap:8px; }
    .sn-header .sn-subject-links > a { padding:5px 8px; font-size:13px; }
    .sn-header .sn-nav-list > li > a { padding:0 11px; font-size:13px; }
    .sn-header .sn-nav-list > li.is-active > a { padding:0 13px; }
}
@media (prefers-reduced-motion:reduce) { .sn-header a, .sn-header button { transition:none; } }
