/* ====================================================
   style_m.css — 清华紫主题移动端 (vip3mb00339)
   ==================================================== */
:root{
  --c-purple:#660874;
  --c-purple-dk:#3f0050;
  --c-gold:#ffd97a;
  --c-bg:#fff;
  --c-bg-grey:#f6f6f6;
  --c-text:#333;
  --c-text-lt:#666;
  --c-border:#e8e8e8;
  --radius:4px;
}

/* ---------- Header ---------- */
.m-mast{position:fixed;top:0;left:0;right:0;height:56px;z-index:9000;background:linear-gradient(135deg,#1a0336,#660874);display:flex;align-items:center;justify-content:space-between;padding:0 14px;}
.m-logo{display:flex;align-items:center;gap:8px;color:#fff;}
.m-logo img{height:34px;width:auto;}
.m-logo span{font-size:16px;font-weight:700;letter-spacing:1px;}
.m-tools{display:flex;align-items:center;gap:14px;}
.m-tools button{color:#fff;}

/* Search popup */
.m-search-pop{position:fixed;top:56px;left:0;right:0;background:#fff;padding:12px 14px;display:none;z-index:8999;box-shadow:0 2px 10px rgba(0,0,0,.1);}
.m-search-pop.on{display:flex;}
.m-search-pop form{display:flex;gap:8px;width:100%;}
.m-search-pop input{flex:1;border:1px solid var(--c-border);border-radius:var(--radius);padding:8px 12px;font-size:14px;}
.m-search-pop button{background:var(--c-purple);color:#fff;padding:8px 14px;border-radius:var(--radius);font-size:14px;}

/* Drawer */
.m-drawer{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.4);display:none;}
.m-drawer.on{display:block;}
.m-drawer .panel{position:absolute;right:0;top:0;width:75%;max-width:320px;height:100vh;background:#fff;padding:60px 20px 30px;overflow-y:auto;}
.m-drawer .close{position:absolute;top:16px;right:16px;font-size:26px;color:var(--c-text);}
.m-drawer h3{font-size:18px;font-weight:700;color:var(--c-purple);margin-bottom:16px;}
#mNavList li{border-bottom:1px solid var(--c-border);}
#mNavList li a{display:block;padding:14px 0;font-size:15px;color:var(--c-text);}
.m-drawer-mini{margin-top:20px;padding-top:16px;border-top:1px solid var(--c-border);display:flex;flex-wrap:wrap;gap:10px;}
.m-drawer-mini a{font-size:13px;color:var(--c-text-lt);padding:4px 10px;border:1px solid var(--c-border);border-radius:20px;}

/* ---------- Banner ---------- */
.m-banner{position:relative;width:100%;height:220px;overflow:hidden;background:#1a0436;}
.m-bn-stage{position:relative;width:100%;height:100%;}
.m-bn-it{position:absolute;inset:0;opacity:0;transition:opacity .8s;display:flex;align-items:flex-end;justify-content:center;}
.m-bn-it.on{opacity:1;z-index:1;}
.m-bn-it img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.m-bn-it .cap{position:relative;z-index:2;text-align:center;padding:16px;color:#fff;}
.m-bn-it .cap strong{display:block;font-size:18px;font-weight:700;color:var(--c-gold);text-shadow:0 1px 4px rgba(0,0,0,.5);}
.m-bn-it .cap em{font-size:12px;opacity:.8;font-style:normal;}
.m-bn-dots{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);z-index:10;display:flex;gap:8px;}
.m-bn-dots .dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.45);}
.m-bn-dots .dot.on{background:#fff;}

/* ---------- Block titles ---------- */
.m-blk{padding:24px 14px;}
.m-bk-tt{font-size:18px;font-weight:700;color:var(--c-text);margin-bottom:14px;}
.m-bk-tt small{margin-left:8px;font-size:11px;color:var(--c-text-lt);font-weight:400;letter-spacing:1px;}

/* ---------- Media block ---------- */
.m-media-top{display:block;margin-bottom:14px;}
.m-media-top .pic{display:block;overflow:hidden;border-radius:var(--radius);margin-bottom:8px;}
.m-media-top .pic img{width:100%;aspect-ratio:16/9;object-fit:cover;}
.m-media-top strong{font-size:15px;font-weight:600;color:var(--c-text);}

/* ---------- Common list ---------- */
.m-list-d li{padding:12px 0;border-bottom:1px solid var(--c-border);}
.m-list-d li a{font-size:14px;color:var(--c-text);}

/* ---------- Headlines ---------- */
.m-hd-it{display:block;margin-bottom:20px;border-bottom:1px solid var(--c-border);padding-bottom:14px;}
.m-hd-it .pic{display:block;overflow:hidden;border-radius:var(--radius);margin-bottom:8px;}
.m-hd-it .pic img{width:100%;aspect-ratio:16/10;object-fit:cover;}
.m-hd-it strong{display:block;font-size:15px;font-weight:600;color:var(--c-text);margin-bottom:4px;}
.m-hd-it em{font-size:12px;color:var(--c-text-lt);font-style:normal;display:block;overflow:hidden;max-height:36px;}

/* ---------- Portraits ---------- */
.m-portraits{display:flex;flex-direction:column;gap:12px;}
.m-pt{position:relative;display:block;overflow:hidden;border-radius:var(--radius);}
.m-pt img{width:100%;aspect-ratio:16/9;object-fit:cover;}
.m-pt .cap{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.6));color:#fff;padding:20px 12px 12px;font-size:14px;font-weight:600;}

/* ---------- Events 横向滚动 ---------- */
.m-events{background:var(--c-bg-grey);}
.m-ev-rail{overflow-x:auto;-webkit-overflow-scrolling:touch;}
.m-ev-list{display:flex;gap:14px;padding-bottom:8px;}
.m-ev-list li{flex:0 0 200px;background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:0 1px 6px rgba(0,0,0,.06);}
.m-ev-list li a{display:flex;flex-direction:column;}
.m-ev-list li .pic img{width:100%;aspect-ratio:4/3;object-fit:cover;}
.m-ev-list li strong{display:block;padding:10px;font-size:13px;font-weight:600;color:var(--c-text);overflow:hidden;-webkit-line-clamp:2;display:-webkit-box;-webkit-box-orient:vertical;}
.m-ev-list li em{display:block;padding:0 10px 10px;font-size:11px;color:var(--c-text-lt);font-style:normal;}

/* ---------- Research ---------- */
.m-research{background:var(--c-bg);}
.m-rs-desc{font-size:13px;color:var(--c-text-lt);margin-bottom:14px;line-height:1.8;}

/* ---------- Stats ---------- */
.m-stats{background:var(--c-bg-grey);text-align:center;}
.m-st-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
.m-st-grid li{display:flex;flex-direction:column;align-items:center;}
.m-st-grid .num{font-size:32px;font-weight:700;color:var(--c-purple);font-family:Georgia,serif;}
.m-st-grid .num i{font-size:18px;font-style:normal;}
.m-st-grid .lab{font-size:11px;color:var(--c-text-lt);line-height:1.5;margin-top:4px;}

/* ---------- Admission ---------- */
.m-admit{background:var(--c-bg);}
.m-ad-list li{border-bottom:1px solid var(--c-border);}
.m-ad-list li a{display:flex;align-items:center;justify-content:space-between;padding:14px 0;font-size:15px;color:var(--c-text);}
.m-ad-list li a i{font-style:normal;color:var(--c-text-lt);}

/* ---------- Social ---------- */
.m-social{background:linear-gradient(180deg,#3f0050,#5c0f8b);color:#fff;}
.m-social .m-bk-tt{color:#fff;}
.m-soc-icons{display:flex;gap:12px;margin-bottom:16px;}
.m-soc-icons a{display:flex;flex-direction:column;align-items:center;gap:4px;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.3);justify-content:center;font-size:14px;font-weight:700;color:#fff;}
.m-soc-icons a em{font-size:9px;font-style:normal;opacity:.6;}
.m-soc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;}
.m-so-it{display:flex;flex-direction:column;background:rgba(255,255,255,.06);border-radius:var(--radius);overflow:hidden;}
.m-so-it .pic img{width:100%;aspect-ratio:16/10;object-fit:cover;}
.m-so-it strong{display:block;padding:10px;font-size:13px;font-weight:600;color:#fff;overflow:hidden;-webkit-line-clamp:2;display:-webkit-box;-webkit-box-orient:vertical;}

/* ---------- Footer ---------- */
.m-footer{background:var(--c-purple);color:rgba(255,255,255,.85);padding:24px 14px 16px;}
.m-ft-quick{margin-bottom:20px;}
.m-ft-quick h3{font-size:16px;font-weight:700;color:#fff;margin-bottom:12px;}
.m-ft-quick .links{display:flex;flex-wrap:wrap;gap:8px;}
.m-ft-quick .links a{font-size:13px;color:rgba(255,255,255,.8);padding:6px 12px;border:1px solid rgba(255,255,255,.25);border-radius:20px;}
.m-ft-brand{display:flex;align-items:center;gap:10px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.15);}
.m-ft-brand img{height:36px;width:auto;filter:brightness(0) invert(1);opacity:.9;}
.m-ft-brand h2{font-size:16px;font-weight:700;color:#fff;}
.m-ft-brand small{font-size:10px;opacity:.6;}
.flink{margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.1);}
.flink strong{font-size:12px;color:rgba(255,255,255,.6);}
.flink ul{display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:6px;}
.flink li,.flink li a{font-size:11px;color:rgba(255,255,255,.55);}
.cr{text-align:center;font-size:11px;color:rgba(255,255,255,.5);}
.cr p{margin:3px 0;}
.cr a{color:rgba(255,255,255,.65);}

/* ---------- Inner pages ---------- */
.m-page{padding:14px;min-height:60vh;}
.m-bread{font-size:12px;color:var(--c-text-lt);margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--c-border);}
.m-bread a{color:var(--c-purple);}
.m-list li{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--c-border);}
.m-list li a{display:flex;justify-content:space-between;align-items:baseline;width:100%;padding:12px 0;font-size:14px;color:var(--c-text);}
.m-list li a span:first-child{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-right:8px;}
.m-list li a .d{font-size:11px;color:var(--c-text-lt);white-space:nowrap;}
.pagebar{text-align:center;margin-top:20px;font-size:13px;}
.pagebar a,.pagebar span{display:inline-block;padding:5px 10px;margin:0 2px;border:1px solid var(--c-border);border-radius:var(--radius);color:var(--c-text);}
.pagebar a:hover,.pagebar .cur{background:var(--c-purple);color:#fff;border-color:var(--c-purple);}
.m-art h1{font-size:18px;font-weight:700;color:var(--c-text);margin-bottom:10px;line-height:1.5;}
.m-art .meta{font-size:11px;color:var(--c-text-lt);margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--c-border);}
.m-art .body{font-size:14px;line-height:1.9;color:var(--c-text);}
.m-art .body img{max-width:100%;height:auto;margin:10px 0;border-radius:var(--radius);}
.m-art .body p{margin-bottom:12px;}
