/* 开放教育全国门户：共用页头页脚，院校与专业在前，地区查询在右。 */
.oe-channel { --oe-ink:#263e5d; --oe-muted:#71849c; --oe-line:#e3eaf3; background:#f5f7fb; color:var(--oe-ink); padding:0 0 28px; }
.oe-wrap { width:var(--pc-content-width); max-width:var(--pc-content-max); margin:0 auto; }
.oe-channel :is(h2,h3,p) { margin:0; }
.oe-channel a { text-decoration:none; transition:color .15s,background .15s,border-color .15s; }
.oe-channel a:hover { color:#1767cd; }
.oe-channel :is(a,button):focus-visible { outline:2px solid #2875d7; outline-offset:3px; }
.oe-channel [id] { scroll-margin-top:68px; }
.oe-channel .icon { width:22px; height:22px; flex-shrink:0; }
.oe-intro { display:flex; justify-content:space-between; align-items:center; min-height:42px; color:#7b8fa9; font-size:12px; }
.oe-intro p { display:flex; align-items:center; gap:9px; color:#5d7798; }
.oe-intro p span { width:6px; height:6px; background:#3c84df; border-radius:50%; }
.oe-panel { min-width:0; background:#fff; border:1px solid var(--oe-line); border-radius:10px; overflow:hidden; }
.oe-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:18px 20px 15px; }
.oe-heading :is(h2,h3) { font-size:18px; font-weight:700; position:relative; padding-bottom:10px; }
.oe-heading :is(h2,h3)::after { content:""; position:absolute; width:30px; height:3px; background:linear-gradient(90deg,#1bc2b4,#58d38b); bottom:0; left:0; border-radius:2px; }
.oe-heading>a,.oe-heading>span { color:#8292a7; font-size:12px; flex-shrink:0; }
.oe-panel__footer { display:flex; justify-content:space-between; border-top:1px solid var(--oe-line); padding:13px 20px; font-size:12px; color:#5481b0; background:#fafcff; margin-top:auto; }
.oe-opening { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) 282px; gap:16px; align-items:stretch; }
.oe-carousel { position:relative; border-radius:10px; overflow:hidden; border:1px solid #cbdfee; background:#dfedfd; min-width:0; }
.oe-slide { display:block; height:100%; min-height:343px; position:relative; background:#d9edfc; }
.oe-slide[hidden],.oe-carousel__controls[hidden] { display:none; }
.oe-slide>img { position:absolute; width:100%; height:100%; object-fit:cover; object-position:64% center; }
.oe-slide:not(.oe-slide--managed)::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#d8ecfcf7,#d8ecfcad 43%,transparent 85%); }
.oe-slide__copy { position:relative; z-index:1; padding:27px 23px 56px; }
.oe-slide__copy>span { display:block; color:#547f9e; letter-spacing:2px; font:10px/1.5 Arial,sans-serif; }
.oe-slide__copy h2 { color:#214f7d; font-size:32px; font-weight:800; line-height:1.38; letter-spacing:1px; margin:16px 0 12px; }
.oe-slide__copy p { width:185px; color:#4d7497; font-size:13px; line-height:1.8; }
.oe-slide__copy b { display:inline-flex; align-items:center; gap:23px; color:#28659e; font-size:13px; padding:10px 14px; background:#ffffffed; border:1px solid #fff; border-radius:6px; margin-top:23px; box-shadow:0 3px 10px #335e9210; }
.oe-slide__copy i { font-style:normal; }
.oe-slide--mint:not(.oe-slide--managed)::after { background:linear-gradient(90deg,#d4f6e9f7,#d4f6e9b5 43%,transparent 85%); }
.oe-slide--mint .oe-slide__copy h2 { color:#206b60; }
.oe-slide--purple:not(.oe-slide--managed)::after { background:linear-gradient(90deg,#eee5fff7,#eee5ffbc 43%,transparent 85%); }
.oe-slide--purple .oe-slide__copy h2 { color:#605197; }
.oe-carousel__controls { position:absolute; bottom:14px; left:20px; right:20px; display:flex; align-items:center; gap:5px; z-index:2; }
.oe-carousel__controls button { font:inherit; cursor:pointer; }
.oe-carousel__controls>button { width:27px; height:27px; padding:0; border:1px solid #ffffffa8; background:#ffffffbd; color:#376c9b; border-radius:50%; }
.oe-carousel__controls>button:last-child { margin-left:auto; font-size:10px; }
.oe-carousel__dots { display:flex; }
.oe-carousel__dots button { width:26px; height:27px; border:0; background:none; padding:10px 4px; }
.oe-carousel__dots span { display:block; width:12px; height:4px; border-radius:4px; background:#5286b059; }
.oe-carousel__dots [aria-pressed=true] span { background:#346ea5; width:19px; }
.oe-news { display:flex; flex-direction:column; }
.oe-news .oe-heading { padding-bottom:5px; }
.oe-lead { display:block; padding:4px 20px 12px; }
.oe-lead>span { font-size:11px; color:#8b9bb0; }
.oe-lead h3 { font-size:21px; font-weight:750; line-height:1.5; color:#bc603f; margin-top:7px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.oe-feed { list-style:none; margin:0; padding:0 20px 9px; }
.oe-feed li { display:flex; align-items:center; gap:8px; min-height:33px; }
.oe-feed li::before { content:""; width:3px; height:3px; background:#c39874; flex-shrink:0; }
.oe-feed a { color:#3f5570; font-size:13px; min-width:0; white-space:nowrap; text-overflow:ellipsis; overflow:hidden; flex:1; }
.oe-feed time { color:#92a1b4; font:10px Arial,sans-serif; flex-shrink:0; }
.oe-beginner { display:flex; flex-direction:column; }
.oe-beginner .oe-heading { background:linear-gradient(100deg,#fff0df,#fff9f0); padding:15px 17px; }
.oe-beginner .oe-heading h2 { padding:0; color:#8d623d; font-size:18px; }
.oe-beginner .oe-heading h2::after { display:none; }
.oe-beginner .oe-heading>span { color:#a88a6c; font-size:10px; }
.oe-entry-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding:13px 10px 10px; gap:14px 0; }
.oe-entry-grid a { display:flex; flex-direction:column; align-items:center; gap:6px; font-size:12px; color:#677c96; }
.oe-entry-grid .icon { color:#6198e4; width:21px; height:21px; }
.oe-adviser { display:block; margin:8px 13px 13px; padding:14px; border-radius:7px; background:linear-gradient(110deg,#efebfc,#e7f3ff); }
.oe-adviser>span { color:#8290ac; font-size:10px; }
.oe-adviser strong { display:block; color:#50679b; font-size:17px; margin:5px 0; }
.oe-adviser p { font-size:10px; color:#8091ac; }
.oe-adviser b { display:flex; justify-content:space-between; font-size:11px; color:#527bad; margin-top:10px; font-weight:500; }
.oe-adviser i { font-style:normal; }
.oe-path { display:grid; grid-template-columns:205px repeat(4,minmax(0,1fr)); gap:20px; align-items:center; margin:18px 0 24px; border:1px solid #dce7f6; border-radius:9px; padding:17px 22px; background:linear-gradient(110deg,#e9f2ff,#f2f1fc); }
.oe-path>div { border-right:1px solid #d7e3f4; }
.oe-path>div>span { display:block; font-size:10px; color:#7495bc; margin-bottom:4px; }
.oe-path>div>strong { font-size:17px; font-weight:600; color:#436c9b; }
.oe-path>a { display:flex; gap:12px; align-items:center; }
.oe-path em { color:#8cb0db; font:26px Arial,sans-serif; }
.oe-path a strong { display:block; font-size:14px; font-weight:600; }
.oe-path small { display:block; color:#8b9db5; font-size:10px; margin-top:4px; }
.oe-path i { margin-left:auto; color:#b0c2dc; font-style:normal; }
.oe-section { margin-top:23px; }
.oe-section__head { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:13px 18px; margin-bottom:12px; border:1px solid #dce7f6; border-radius:8px; background:linear-gradient(105deg,#e7f0ff,#f7faff); }
.oe-section__head>div { display:flex; align-items:center; gap:12px; min-width:0; }
.oe-section__head h2 { font-size:21px; font-weight:700; color:#345d8d; }
.oe-section__head p { color:#839ab6; font-size:12px; }
.oe-section__head>a { font-size:12px; color:#6488b1; white-space:nowrap; }
.oe-mark { display:flex; align-items:center; justify-content:center; width:32px; height:32px; border-radius:6px; background:linear-gradient(135deg,#5088c2,#628abe); color:#fff; }
.oe-mark .icon { width:20px; height:20px; }
.oe-schools { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.oe-school { background:#fff; border:1px solid var(--oe-line); border-radius:9px; overflow:hidden; }
.oe-school__identity { display:flex; gap:12px; align-items:center; padding:17px 15px 14px; }
.oe-school__identity img { width:52px; height:52px; object-fit:contain; flex-shrink:0; }
.oe-school__identity>div { min-width:0; }
.oe-school h3 { font-size:17px; font-weight:700; line-height:1.5; }
.oe-school__identity div>span { font-size:11px; color:#8192a9; display:block; margin-top:3px; }
.oe-school__initial { display:grid; place-items:center; flex:0 0 52px; height:52px; border-radius:50%; background:#e9f2ff; color:#4a7cbc; font-size:23px; }
.oe-school__links { display:flex; justify-content:space-between; gap:9px; padding:9px 15px; background:#fafcff; border-top:1px solid #eef2f8; font-size:11px; color:#6687af; }
.oe-directory-row { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:16px; align-items:start; margin-top:23px; }
.oe-programs .oe-section__head { margin:0; border:0; border-radius:0; border-bottom:1px solid var(--oe-line); }
.oe-programs__intro { display:flex; gap:12px; align-items:center; padding:15px 20px 9px; font-size:11px; color:#889bb1; }
.oe-programs__intro>span { color:#527cb5; background:#edf4ff; padding:4px 8px; border-radius:4px; font-size:12px; }
.oe-program-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); padding:0 20px 13px; gap:0 22px; }
.oe-program { padding:13px 0; border-bottom:1px solid #ebeff6; min-width:0; }
.oe-program__title { display:flex; align-items:center; gap:9px; }
.oe-program__title h3 { font-size:16px; font-weight:650; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.oe-program__title>span:last-child { margin-left:auto; color:#8ca6c5; font-size:13px; }
.oe-program__icon { display:flex; align-items:center; justify-content:center; flex:0 0 30px; height:30px; border-radius:7px; background:#e4f1ff; color:#3685d5; }
.oe-program__icon--1 { background:#eee6ff; color:#9464d8; }.oe-program__icon--2 { background:#def7ef; color:#269f86; }.oe-program__icon--3 { background:#fff0e6; color:#e1905d; }
.oe-program__icon .icon { width:20px; height:20px; }
.oe-program__school { display:block; font-size:12px; color:#7391b6; padding-left:39px; margin-top:3px; }
.oe-program p { padding-left:39px; display:flex; gap:8px; font-size:11px; color:#8a97a9; margin-top:5px; }
.oe-program p span+span { padding-left:8px; border-left:1px solid #e3e8f0; }
.oe-catalog { background:#f8faff; padding:14px 20px; border-top:1px solid var(--oe-line); }
.oe-catalog summary { display:flex; justify-content:space-between; align-items:center; gap:12px; cursor:pointer; list-style:none; }
.oe-catalog summary::-webkit-details-marker { display:none; }
.oe-catalog summary>span { color:#5e84b5; font-size:12px; white-space:nowrap; }.oe-catalog summary i { font-style:normal; }.oe-catalog[open] summary i { display:inline-block; transform:rotate(180deg); }
.oe-catalog__groups { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; padding-top:18px; }.oe-catalog__groups h3 { font-size:15px; color:#4c719c; }.oe-catalog__names { display:flex; flex-wrap:wrap; gap:6px; margin:12px 0; }.oe-catalog__names span { padding:5px 8px; background:#fff; border:1px solid #e3eaf5; border-radius:4px; font-size:12px; color:#657b96; }
.oe-catalog strong { font-size:13px; font-weight:600; color:#506e99; }.oe-catalog p { font-size:11px; color:#8a9bb2; margin-top:5px; }.oe-catalog a { font-size:12px; color:#5e84b5; white-space:nowrap; }
.oe-regions>p { padding:0 18px 14px; color:#899cb3; font-size:12px; }
.oe-regions nav { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; padding:0 16px 18px; }
.oe-regions nav a { background:#f2f6fc; text-align:center; min-height:31px; display:grid; place-items:center; border-radius:4px; color:#526c8d; font-size:13px; }
.oe-regions nav a:hover { background:#e5efff; color:#246bcc; }
.oe-reading-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.oe-reading .oe-heading { padding-bottom:11px; }
.oe-banner { display:block; position:relative; height:114px; border-radius:8px; overflow:hidden; margin:0 17px 10px; background:#eee6ff; }
.oe-banner img { position:absolute; width:100%; height:100%; object-fit:cover; object-position:65% center; }
.oe-banner::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#eee5fff5,#eee5ff99 46%,transparent 80%); }
.oe-banner strong { display:block; position:relative; z-index:1; width:230px; font-size:23px; color:#625091; font-weight:800; line-height:1.35; padding:23px 19px 0; }
.oe-banner>span { display:block; position:relative; z-index:1; font-size:11px; margin:9px 19px 0; color:#8877ab; }
.oe-banner--peach::after { background:linear-gradient(90deg,#ffe7d4f5,#ffe7d499 46%,transparent 80%); }.oe-banner--peach strong { color:#a1663c; }.oe-banner--peach>span { color:#a57f61; }
.oe-banner--mint::after { background:linear-gradient(90deg,#d4f7e9f5,#d4f7e999 46%,transparent 80%); }.oe-banner--mint strong { color:#24746a; }.oe-banner--mint>span { color:#5d978d; }
.oe-reading .oe-feed { padding-bottom:15px; }.oe-reading .oe-feed li { min-height:35px; }
.oe-reference-grid { display:grid; grid-template-columns:1fr 1.6fr; gap:16px; }
.oe-network { padding:21px; display:flex; flex-wrap:wrap; align-content:center; gap:10px 16px; background:linear-gradient(120deg,#fff,#eff5ff); }
.oe-network>.icon { width:40px; height:40px; color:#6a94c7; align-self:center; }
.oe-network div>span { font-size:11px; color:#899db7; }.oe-network h3 { font-size:21px; margin:5px 0; }.oe-network p { font-size:12px; color:#8093ad; }.oe-network>a { margin:7px 0 0 56px; font-size:12px; color:#527fb4; }
.oe-fees .oe-heading { padding-top:14px; padding-bottom:5px; }.oe-fees ul { margin:0; list-style:none; padding:0 20px 12px; }.oe-fees li a { display:flex; gap:13px; align-items:center; min-height:32px; font-size:12px; }.oe-fees li span { flex:0 0 92px; color:#83a0bd; }.oe-fees strong { font-weight:400; min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; color:#536a87; }.oe-fees i { margin-left:auto; font-style:normal; color:#93abc6; }
.oe-empty { padding:24px 20px; color:#7a8fa8; font-size:13px; }.oe-empty a { color:#377cbb; display:block; margin-top:10px; }
.oe-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media(max-width:1320px) { .oe-opening { grid-template-columns:minmax(0,1fr) minmax(0,1.27fr) 260px; gap:12px; }.oe-slide__copy h2 { font-size:29px; }.oe-heading { padding-left:17px; padding-right:17px; }.oe-section__head p { font-size:11px; }.oe-school h3 { font-size:16px; }.oe-school__identity { gap:9px; padding-left:12px; padding-right:12px; }.oe-school__identity img { width:46px; height:46px; }.oe-path { grid-template-columns:185px repeat(4,minmax(0,1fr)); gap:15px; }.oe-directory-row { grid-template-columns:minmax(0,1fr) 282px; }.oe-catalog p>span { display:block; margin-top:3px; } }
@media(prefers-reduced-motion:reduce) { .oe-channel a { transition:none; } }
