/* 码上成长 V1.9.36.13.13 登录页轻量样式
   仅供 templates/login.html 使用。
   从正式主页现有样式中拆分，视觉不改，只减少课堂同时首访的静态传输量。 */
*{box-sizing:border-box}
html,body{margin:0;padding:0}
button,input{font:inherit}
   V1.8.40 分班查询式沉浸登录主页
   背景图：static/images/login-bg.jpg
============================================================ */

html,
body.v1840-login-page{
  width:100%;
  min-width:100%;
  min-height:100%;
  margin:0;
}

body.v1840-login-page{
  position:relative;
  height:100vh;
  min-height:680px;
  overflow:hidden;
  box-sizing:border-box;
  /* 背景图尚未解码时先显示接近校园照片天空的中性灰蓝，避免深蓝闪屏 */
  background:#8793a6;
  color:#fff;
  font-family:
    "Microsoft YaHei","PingFang SC","Noto Sans CJK SC",
    system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

/* ---------- 全屏背景 ---------- */
.v1840-bg{
  position:fixed;
  inset:0;
  z-index:0;
  background:
    #8793a6
    url("/static/images/login-bg.jpg")
    center 48% / cover no-repeat;
  transform:scale(1.008);
}

/* 比旧版更通透，重点保证主标题与输入区域可读 */
.v1840-overlay{
  position:fixed;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(
      180deg,
      rgba(21,31,62,.29) 0%,
      rgba(23,34,68,.10) 31%,
      rgba(22,32,63,.16) 58%,
      rgba(11,18,40,.42) 100%
    ),
    linear-gradient(
      90deg,
      rgba(29,39,78,.17) 0%,
      rgba(29,39,78,.05) 48%,
      rgba(20,28,61,.14) 100%
    );
}

.v1840-vignette{
  position:fixed;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:
    radial-gradient(
      circle at 50% 46%,
      rgba(255,255,255,0) 0%,
      rgba(6,12,29,.015) 55%,
      rgba(6,12,29,.18) 100%
    );
}

/* ---------- 页面主体 ---------- */
.v1840-main{
  position:relative;
  z-index:5;
  width:min(1420px,calc(100vw - 90px));
  height:100vh;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  padding:40px 0 28px;
}

/* ---------- 中央大标题 ---------- */
.v1840-hero{
  width:100%;
  text-align:center;
  margin-top:-20px;
}

.v1840-eyebrow{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:15px;
  margin-bottom:15px;
  color:rgba(255,255,255,.82);
}

.v1840-eyebrow span{
  width:46px;
  height:3px;
  border-radius:99px;
  background:#8375ff;
  box-shadow:0 0 18px rgba(131,117,255,.45);
}

.v1840-eyebrow b{
  font-family:Arial,sans-serif;
  font-size:12px;
  line-height:1;
  font-weight:800;
  letter-spacing:.17em;
}

.v1840-hero h1{
  margin:0;
  color:#fff;
  font-size:clamp(72px,6vw,104px);
  line-height:1.02;
  font-weight:900;
  letter-spacing:-.055em;
  text-shadow:
    0 5px 28px rgba(6,12,31,.27),
    0 1px 2px rgba(6,12,31,.20);
}

.v1840-subtitle{
  margin:13px 0 0;
  color:rgba(255,255,255,.93);
  font-size:21px;
  line-height:1.5;
  font-weight:700;
  letter-spacing:.03em;
  text-shadow:0 3px 15px rgba(6,12,31,.28);
}

/* ---------- 登录消息 ---------- */
.v1840-login-messages{
  width:min(1120px,100%);
  margin-top:18px;
}

.v1840-login-message{
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  box-sizing:border-box;
  padding:8px 14px;
  border:1px solid rgba(255,255,255,.30);
  border-radius:12px;
  background:rgba(32,41,82,.38);
  color:#fff;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  font-size:14px;
  font-weight:650;
}

.v1840-login-message>span{
  width:7px;
  height:7px;
  flex:0 0 7px;
  border-radius:50%;
  background:#8b7cff;
}

/* ---------- 账号 / 密码 / 登录：参考分班查询页面 ---------- */
.v1840-login-form{
  width:min(1180px,100%);
  display:grid;
  grid-template-columns:1fr 1fr 230px;
  align-items:end;
  gap:20px;
  margin-top:38px;
}

.v1840-field{
  min-width:0;
}

.v1840-field>span{
  display:block;
  margin:0 0 10px 3px;
  color:#fff;
  font-size:18px;
  line-height:1;
  font-weight:800;
  text-shadow:0 2px 10px rgba(7,13,32,.34);
}

.v1840-field input{
  width:100%;
  height:66px;
  box-sizing:border-box;
  padding:0 21px;
  border:1px solid rgba(255,255,255,.55);
  border-radius:17px;
  outline:none;
  background:rgba(255,255,255,.93);
  color:#2d374d;
  font:650 18px/1.2 inherit;
  box-shadow:
    0 9px 24px rgba(7,14,34,.10),
    inset 0 1px 0 rgba(255,255,255,.94);
  transition:
    transform .15s ease,
    border-color .15s ease,
    box-shadow .15s ease,
    background .15s ease;
}

.v1840-field input::placeholder{
  color:#9ba6b7;
  font-weight:520;
}

.v1840-field input:focus{
  border-color:#a99fff;
  background:#fff;
  box-shadow:
    0 12px 29px rgba(7,14,34,.12),
    0 0 0 4px rgba(111,94,235,.10);
}

.v1840-password-wrap{
  position:relative;
}

.v1840-password-wrap input{
  padding-right:58px;
}

.v1840-password-toggle{
  position:absolute;
  top:50%;
  right:13px;
  width:40px;
  height:40px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
  border:0;
  border-radius:10px;
  background:transparent;
  color:#8f99aa;
  cursor:pointer;
  transform:translateY(-50%);
}

.v1840-password-toggle:hover,
.v1840-password-toggle:focus-visible,
.v1840-password-toggle.is-visible{
  background:#f1effd;
  color:#5c50d1;
  outline:none;
}

.v1840-password-toggle svg{
  width:21px;
  height:21px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.v1840-submit{
  width:100%;
  height:66px;
  border:0;
  border-radius:17px;
  background:linear-gradient(110deg,#685cf1 0%,#5548dc 55%,#3d70e8 100%);
  color:#fff;
  box-shadow:
    0 14px 32px rgba(62,64,202,.27),
    inset 0 1px 0 rgba(255,255,255,.12);
  font-family:inherit;
  font-size:20px;
  font-weight:850;
  letter-spacing:.12em;
  cursor:pointer;
  transition:
    transform .15s ease,
    box-shadow .15s ease;
}

.v1840-submit:hover{
  transform:translateY(-2px);
  box-shadow:
    0 17px 38px rgba(62,64,202,.32),
    inset 0 1px 0 rgba(255,255,255,.12);
}

/* ---------- 重要提示：按要求加大并加粗 ---------- */
.v1840-login-note{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  margin-top:19px;
  color:#fff;
  font-size:16px;
  line-height:1.5;
  text-shadow:0 2px 12px rgba(5,11,29,.36);
}

.v1840-login-note>span{
  width:25px;
  height:25px;
  flex:0 0 25px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(235,251,243,.96);
  color:#25805d;
  box-shadow:0 4px 12px rgba(10,28,22,.08);
  font-size:13px;
  font-weight:900;
}

.v1840-login-note strong{
  font-weight:800;
}

/* ---------- 四项能力卡 ---------- */
.v1840-capabilities{
  width:min(1020px,100%);
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin-top:31px;
}

.v1840-capabilities article{
  min-height:86px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-sizing:border-box;
  padding:16px 19px;
  border:1px solid rgba(255,255,255,.21);
  border-radius:16px;
  background:rgba(27,35,72,.24);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.07),
    0 10px 26px rgba(8,14,35,.07);
  backdrop-filter:blur(13px);
  -webkit-backdrop-filter:blur(13px);
}

.v1840-capabilities strong{
  display:block;
  color:#fff;
  font-size:19px;
  line-height:1.2;
  font-weight:820;
  text-shadow:0 2px 10px rgba(6,12,29,.20);
}

.v1840-capabilities small{
  display:block;
  margin-top:7px;
  color:rgba(255,255,255,.78);
  font-size:13px;
  line-height:1.35;
  font-weight:560;
}

/* ---------- 低高度桌面端 ---------- */
@media(max-height:790px) and (min-width:901px){
  .v1840-main{
    padding-top:30px;
    padding-bottom:18px;
  }

  .v1840-hero{
    margin-top:-8px;
  }

  .v1840-eyebrow{
    margin-bottom:10px;
  }

  .v1840-eyebrow b{
    font-size:10px;
  }

  .v1840-hero h1{
    font-size:clamp(56px,5.1vw,76px);
  }

  .v1840-subtitle{
    margin-top:8px;
    font-size:16px;
  }

  .v1840-login-form{
    margin-top:24px;
    gap:15px;
  }

  .v1840-field>span{
    margin-bottom:7px;
    font-size:15px;
  }

  .v1840-field input,
  .v1840-submit{
    height:56px;
  }

  .v1840-field input{
    font-size:15px;
  }

  .v1840-submit{
    font-size:17px;
  }

  .v1840-login-note{
    margin-top:12px;
    font-size:14px;
  }

  .v1840-login-note>span{
    width:21px;
    height:21px;
    flex-basis:21px;
    font-size:11px;
  }

  .v1840-capabilities{
    margin-top:18px;
    gap:10px;
  }

  .v1840-capabilities article{
    min-height:65px;
    padding:11px 14px;
  }

  .v1840-capabilities strong{
    font-size:15px;
  }

  .v1840-capabilities small{
    margin-top:4px;
    font-size:10px;
  }
}

/* ---------- 中等屏幕 ---------- */
@media(max-width:1050px){
  body.v1840-login-page{
    height:auto;
    min-height:100vh;
    overflow:auto;
  }

  .v1840-main{
    width:min(850px,calc(100vw - 40px));
    height:auto;
    min-height:100vh;
    padding:90px 0 40px;
  }

  .v1840-hero h1{
    font-size:68px;
  }

  .v1840-login-form{
    grid-template-columns:1fr 1fr;
  }

  .v1840-submit{
    grid-column:1/-1;
  }

  .v1840-capabilities{
    grid-template-columns:1fr 1fr;
    width:min(690px,100%);
  }
}

/* ---------- 手机 ---------- */
@media(max-width:680px){
  .v1840-main{
    width:calc(100vw - 28px);
    padding:72px 0 26px;
  }

  .v1840-eyebrow{
    gap:8px;
  }

  .v1840-eyebrow span{
    width:26px;
    height:2px;
  }

  .v1840-eyebrow b{
    font-size:7.5px;
    letter-spacing:.09em;
  }

  .v1840-hero h1{
    font-size:48px;
  }

  .v1840-subtitle{
    margin-top:9px;
    font-size:14px;
  }

  .v1840-login-form{
    grid-template-columns:1fr;
    gap:13px;
    margin-top:26px;
  }

  .v1840-field>span{
    font-size:15px;
  }

  .v1840-field input,
  .v1840-submit{
    height:54px;
    border-radius:13px;
  }

  .v1840-field input{
    font-size:15px;
  }

  .v1840-submit{
    grid-column:auto;
    font-size:17px;
  }

  .v1840-login-note{
    align-items:flex-start;
    font-size:13px;
    text-align:left;
  }

  .v1840-capabilities{
    grid-template-columns:1fr 1fr;
    gap:8px;
    margin-top:20px;
  }

  .v1840-capabilities article{
    min-height:66px;
    padding:11px 12px;
  }

  .v1840-capabilities strong{
    font-size:13px;
  }

  .v1840-capabilities small{
    margin-top:4px;
    font-size:9px;
  }
}


/* ============================================================
   V1.8.41 首页核心能力卡片强化
   - 删除临时密码固定提示
   - 四项核心能力字号显著放大、加粗
   - 卡片更亮、更通透、更接近正式校园门户风格
============================================================ */

/* 删除提示后，能力区自然上移 */
.v1840-capabilities{
  width:min(1100px,100%);
  gap:16px;
  margin-top:30px;
}

/* 卡片由偏暗按钮感，改为更轻、更亮的玻璃卡片 */
.v1840-capabilities article{
  min-height:96px;
  padding:18px 22px;
  border:1px solid rgba(255,255,255,.30);
  border-radius:18px;
  background:rgba(255,255,255,.13);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.12),
    0 10px 28px rgba(7,14,34,.08);
  backdrop-filter:blur(15px) saturate(115%);
  -webkit-backdrop-filter:blur(15px) saturate(115%);
  transition:
    transform .18s ease,
    background .18s ease,
    border-color .18s ease,
    box-shadow .18s ease;
}

.v1840-capabilities article:hover{
  transform:translateY(-2px);
  background:rgba(255,255,255,.17);
  border-color:rgba(255,255,255,.38);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.15),
    0 14px 32px rgba(7,14,34,.11);
}

/* 标题明显放大并加粗 */
.v1840-capabilities strong{
  font-size:22px;
  line-height:1.18;
  font-weight:900;
  letter-spacing:-.015em;
  color:#fff;
  text-shadow:
    0 2px 10px rgba(5,11,28,.28),
    0 1px 1px rgba(5,11,28,.18);
}

/* 说明文字同步放大并提高字重 */
.v1840-capabilities small{
  margin-top:8px;
  font-size:14.5px;
  line-height:1.35;
  font-weight:650;
  color:rgba(255,255,255,.86);
  text-shadow:0 2px 9px rgba(5,11,28,.22);
}

/* 删除提示后，登录区与能力区之间保持清晰节奏 */
.v1840-login-form{
  margin-bottom:0;
}

/* 常见低高度桌面端也不再把能力文字压得过小 */
@media(max-height:790px) and (min-width:901px){
  .v1840-capabilities{
    width:min(980px,100%);
    gap:10px;
    margin-top:16px;
  }

  .v1840-capabilities article{
    min-height:62px;
    padding:10px 14px;
    border-radius:14px;
  }

  .v1840-capabilities strong{
    font-size:16px;
    font-weight:850;
  }

  .v1840-capabilities small{
    margin-top:4px;
    font-size:11px;
    font-weight:600;
  }
}

/* 中等屏幕 */
@media(max-width:1050px){
  .v1840-capabilities{
    width:min(760px,100%);
  }

  .v1840-capabilities strong{
    font-size:19px;
  }

  .v1840-capabilities small{
    font-size:12.5px;
  }
}

/* 手机端 */
@media(max-width:680px){
  .v1840-capabilities{
    grid-template-columns:1fr 1fr;
    gap:9px;
    margin-top:20px;
  }

  .v1840-capabilities article{
    min-height:78px;
    padding:13px 14px;
    border-radius:14px;
  }

  .v1840-capabilities strong{
    font-size:15px;
    font-weight:850;
  }

  .v1840-capabilities small{
    margin-top:5px;
    font-size:10.5px;
    font-weight:600;
  }
}


/* ============================================================
   V1.8.42 核心能力卡片放大 / 居中 / 拉开间距
============================================================ */

/* 整组卡片进一步拉宽，四张之间明显留白 */
.v1840-capabilities{
  width:min(1220px,100%);
  gap:24px;
  margin-top:34px;
}

/* 单张卡片更大、更稳 */
.v1840-capabilities article{
  min-height:112px;
  padding:20px 22px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.30);
  background:rgba(255,255,255,.13);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}

/* 卡片标题：明显放大、加粗、居中 */
.v1840-capabilities strong{
  width:100%;
  font-size:24px;
  line-height:1.18;
  font-weight:900;
  letter-spacing:-.02em;
  text-align:center;
}

/* 卡片说明：同步放大、居中 */
.v1840-capabilities small{
  width:100%;
  margin-top:10px;
  font-size:15px;
  line-height:1.35;
  font-weight:650;
  text-align:center;
  color:rgba(255,255,255,.88);
}

/* 低高度桌面端：保持一屏，但不把文字压得过小 */
@media(max-height:790px) and (min-width:901px){
  .v1840-capabilities{
    width:min(1080px,100%);
    gap:16px;
    margin-top:18px;
  }

  .v1840-capabilities article{
    min-height:76px;
    padding:12px 14px;
    border-radius:16px;
  }

  .v1840-capabilities strong{
    font-size:18px;
    font-weight:900;
  }

  .v1840-capabilities small{
    margin-top:5px;
    font-size:12px;
    font-weight:650;
  }
}

/* 中等屏幕：2列时也保持间距 */
@media(max-width:1050px){
  .v1840-capabilities{
    width:min(820px,100%);
    gap:16px;
  }

  .v1840-capabilities article{
    min-height:96px;
  }

  .v1840-capabilities strong{
    font-size:21px;
  }

  .v1840-capabilities small{
    font-size:13.5px;
  }
}

/* 手机端 */
@media(max-width:680px){
  .v1840-capabilities{
    grid-template-columns:1fr 1fr;
    gap:11px;
    margin-top:22px;
  }

  .v1840-capabilities article{
    min-height:86px;
    padding:13px 10px;
    border-radius:15px;
  }

  .v1840-capabilities strong{
    font-size:15px;
    line-height:1.2;
  }

  .v1840-capabilities small{
    margin-top:5px;
    font-size:10px;
    line-height:1.3;
  }
}


/* ============================================================
   V1.8.43 核心能力卡片比例精修
   目标：
   1. 单卡不要太长
   2. 四张之间有明显呼吸感
   3. 标题和说明进一步放大
============================================================ */

/* 整组适度收窄，但卡间距继续扩大 */
.v1840-capabilities{
  width:min(1100px,100%);
  gap:30px;
  margin-top:34px;
}

/* 单卡比例更紧凑，不再显得横向过长 */
.v1840-capabilities article{
  min-height:108px;
  padding:20px 18px;
  border-radius:19px;
  border:1px solid rgba(255,255,255,.30);
  background:rgba(255,255,255,.13);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}

/* 标题再放大一级 */
.v1840-capabilities strong{
  width:100%;
  font-size:26px;
  line-height:1.16;
  font-weight:900;
  letter-spacing:-.025em;
  text-align:center;
}

/* 说明也放大，避免看起来弱 */
.v1840-capabilities small{
  width:100%;
  margin-top:10px;
  font-size:16px;
  line-height:1.35;
  font-weight:700;
  text-align:center;
  color:rgba(255,255,255,.90);
}

/* 低高度桌面端：仍保持清楚，不压成小字 */
@media(max-height:790px) and (min-width:901px){
  .v1840-capabilities{
    width:min(1000px,100%);
    gap:20px;
    margin-top:18px;
  }

  .v1840-capabilities article{
    min-height:74px;
    padding:11px 12px;
    border-radius:15px;
  }

  .v1840-capabilities strong{
    font-size:19px;
    font-weight:900;
  }

  .v1840-capabilities small{
    margin-top:5px;
    font-size:12.5px;
    font-weight:650;
  }
}

/* 中等屏幕 */
@media(max-width:1050px){
  .v1840-capabilities{
    width:min(780px,100%);
    gap:18px;
  }

  .v1840-capabilities article{
    min-height:94px;
  }

  .v1840-capabilities strong{
    font-size:22px;
  }

  .v1840-capabilities small{
    font-size:14px;
  }
}

/* 手机端 */
@media(max-width:680px){
  .v1840-capabilities{
    grid-template-columns:1fr 1fr;
    gap:12px;
    margin-top:22px;
  }

  .v1840-capabilities article{
    min-height:84px;
    padding:12px 9px;
    border-radius:14px;
  }

  .v1840-capabilities strong{
    font-size:16px;
    line-height:1.2;
  }

  .v1840-capabilities small{
    margin-top:5px;
    font-size:10.5px;
    line-height:1.3;
  }
}


/* ============================================================
   V1.8.44 首页纵向留白与层级精修
   目标：
   - 主标题 / 登录 / 能力卡三块不再挤在一起
   - 增加呼吸感，但仍保持桌面端一屏完整展示
============================================================ */

/* 主标题区域与登录区之间适度拉开 */
.v1840-login-form{
  margin-top:48px;
}

/* 登录区与四项核心能力之间再拉开 */
.v1840-capabilities{
  margin-top:44px;
}

/* 主标题副标题与输入区的视觉节奏略微舒展 */
.v1840-subtitle{
  margin-top:15px;
}

/* 保持整页仍处于视觉中心，不因加间距整体下坠过多 */
.v1840-main{
  padding-top:34px;
  padding-bottom:24px;
}

/* 低高度桌面端：增加少量间距，但优先保证一屏完整 */
@media(max-height:790px) and (min-width:901px){
  .v1840-login-form{
    margin-top:28px;
  }

  .v1840-capabilities{
    margin-top:23px;
  }

  .v1840-subtitle{
    margin-top:9px;
  }

  .v1840-main{
    padding-top:26px;
    padding-bottom:14px;
  }
}

/* 中等屏幕：保持层级，不让上下块重新贴紧 */
@media(max-width:1050px){
  .v1840-login-form{
    margin-top:34px;
  }

  .v1840-capabilities{
    margin-top:30px;
  }
}

/* 手机端：纵向布局需要更明确的块间距 */
@media(max-width:680px){
  .v1840-login-form{
    margin-top:30px;
  }

  .v1840-capabilities{
    margin-top:26px;
  }
}


/* ============================================================
   V1.8.45 标题上移 + 三段式纵向节奏定型
   只动纵向位置，不改尺寸、颜色、卡片风格
============================================================ */

/* 标题组整体上移约32px */
.v1840-hero{
  transform:translateY(-32px);
}

/* 标题组与登录区之间进一步拉开 */
.v1840-login-form{
  margin-top:68px;
}

/* 登录区与核心能力卡之间进一步拉开 */
.v1840-capabilities{
  margin-top:58px;
}

/* 保持整页仍然位于视觉中部，不让底部空间过度压缩 */
.v1840-main{
  padding-top:30px;
  padding-bottom:26px;
}

/* 低高度桌面端：仍优先一屏完整展示 */
@media(max-height:790px) and (min-width:901px){
  .v1840-hero{
    transform:translateY(-18px);
  }

  .v1840-login-form{
    margin-top:36px;
  }

  .v1840-capabilities{
    margin-top:30px;
  }

  .v1840-main{
    padding-top:22px;
    padding-bottom:14px;
  }
}

/* 中等屏幕 */
@media(max-width:1050px){
  .v1840-hero{
    transform:translateY(-22px);
  }

  .v1840-login-form{
    margin-top:46px;
  }

  .v1840-capabilities{
    margin-top:38px;
  }
}

/* 手机端 */
@media(max-width:680px){
  .v1840-hero{
    transform:translateY(-10px);
  }

  .v1840-login-form{
    margin-top:34px;
  }

  .v1840-capabilities{
    margin-top:28px;
  }
}
/* ============================================================
   V1.9.12 主页学校归属 + 版权 + ICP / 公安备案
   保持中央“码上成长”主视觉不变，只补充真实产品归属信息。
============================================================ */

/* 左上角：学校归属，轻量展示，不做大卡片 */
.v1912-school-mark{
  position:fixed;
  top:24px;
  left:30px;
  z-index:7;
  display:flex;
  flex-direction:column;
  gap:5px;
  padding-left:13px;
  border-left:3px solid rgba(142,129,255,.92);
  color:#fff;
  text-shadow:0 2px 12px rgba(6,12,31,.35);
}

.v1912-school-mark strong{
  font-size:16px;
  line-height:1.2;
  font-weight:850;
  letter-spacing:.04em;
}

.v1912-school-mark span{
  color:rgba(255,255,255,.78);
  font-size:11px;
  line-height:1.2;
  font-weight:650;
  letter-spacing:.10em;
}

/* 底部：版权和备案信息，保持弱视觉层级 */
.v1912-site-footer{
  position:fixed;
  left:50%;
  bottom:14px;
  z-index:7;
  width:min(1180px,calc(100vw - 48px));
  transform:translateX(-50%);
  text-align:center;
  color:rgba(255,255,255,.82);
  text-shadow:0 2px 12px rgba(5,11,29,.40);
}

.v1912-copyright{
  font-size:13.5px;
  line-height:1.4;
  font-weight:700;
  letter-spacing:.02em;
}

.v1912-records{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:6px;
  margin-top:5px;
  font-size:11.5px;
  line-height:1.35;
  color:rgba(255,255,255,.66);
}

.v1912-records a{
  color:inherit;
  text-decoration:none;
  font-weight:600;
  transition:color .15s ease;
}

.v1912-records a:hover,
.v1912-records a:focus-visible{
  color:#fff;
  text-decoration:underline;
  text-underline-offset:3px;
  outline:none;
}

.v1912-records>span{
  color:rgba(255,255,255,.34);
}

/* 低高度电脑：页脚再弱化一点，防止抢占主内容 */
@media(max-height:790px) and (min-width:901px){
  .v1912-school-mark{
    top:16px;
    left:24px;
  }

  .v1912-school-mark strong{
    font-size:13px;
  }

  .v1912-school-mark span{
    font-size:9px;
  }

  .v1912-site-footer{
    bottom:8px;
  }

  .v1912-copyright{
    font-size:10.5px;
  }

  .v1912-records{
    margin-top:3px;
    font-size:9px;
  }
}

/* 中等屏幕 */
@media(max-width:1050px){
  .v1912-school-mark{
    top:18px;
    left:20px;
  }

  .v1912-site-footer{
    width:calc(100vw - 32px);
  }
}

/* 手机：学校归属居中；页脚进入普通文档流，避免遮挡 */
@media(max-width:680px){
  .v1912-school-mark{
    position:absolute;
    top:18px;
    left:50%;
    width:calc(100vw - 36px);
    box-sizing:border-box;
    transform:translateX(-50%);
    align-items:center;
    padding-left:0;
    border-left:0;
    text-align:center;
  }

  .v1912-school-mark strong{
    font-size:13px;
  }

  .v1912-school-mark span{
    margin-top:1px;
    font-size:9px;
  }

  .v1912-site-footer{
    position:relative;
    left:auto;
    bottom:auto;
    width:calc(100vw - 28px);
    margin:-4px auto 0;
    padding:0 0 18px;
    transform:none;
  }

  .v1912-copyright{
    font-size:10.5px;
  }

  .v1912-records{
    gap:4px;
    margin-top:4px;
    font-size:9px;
  }
}


/* ============================================================
   V1.9.13 主页学校归属与备案字号优化
   目标：
   1. 左上角学校信息更清晰；
   2. “文峰校区 · 信息组”相对学校名称居中；
   3. 底部版权与备案信息适度放大；
   4. 不改变中央标题、登录区和四项核心能力布局。
============================================================ */

/* 左上角学校归属：放大并统一居中关系 */
.v1912-school-mark{
  top:24px;
  left:32px;
  width:max-content;
  max-width:320px;
  align-items:center;
  gap:6px;
  padding-left:14px;
  text-align:center;
  border-left-width:3px;
}

.v1912-school-mark strong{
  display:block;
  width:100%;
  font-size:18px;
  line-height:1.22;
  font-weight:900;
  letter-spacing:.025em;
  text-align:center;
}

.v1912-school-mark span{
  display:block;
  width:100%;
  font-size:13px;
  line-height:1.25;
  font-weight:750;
  letter-spacing:.06em;
  text-align:center;
  color:rgba(255,255,255,.86);
}

/* 底部版权：提高录屏与投影环境可读性 */
.v1912-site-footer{
  bottom:18px;
}

.v1912-copyright{
  font-size:15px;
  line-height:1.45;
  font-weight:800;
  letter-spacing:.015em;
  color:rgba(255,255,255,.90);
}

.v1912-records{
  gap:8px;
  margin-top:6px;
  font-size:13px;
  line-height:1.4;
  color:rgba(255,255,255,.76);
}

.v1912-records a{
  font-weight:700;
}

/* 低高度桌面仍保持清晰，不再缩得过小 */
@media(max-height:790px) and (min-width:901px){
  .v1912-school-mark{
    top:15px;
    left:24px;
    gap:4px;
  }

  .v1912-school-mark strong{
    font-size:15px;
  }

  .v1912-school-mark span{
    font-size:11px;
  }

  .v1912-site-footer{
    bottom:7px;
  }

  .v1912-copyright{
    font-size:12px;
  }

  .v1912-records{
    margin-top:3px;
    font-size:10.5px;
  }
}

/* 手机端维持居中，不让字号过小 */
@media(max-width:680px){
  .v1912-school-mark{
    width:calc(100vw - 36px);
    max-width:none;
    padding-left:0;
  }

  .v1912-school-mark strong{
    font-size:14px;
  }

  .v1912-school-mark span{
    font-size:10.5px;
  }

  .v1912-copyright{
    font-size:11px;
  }

  .v1912-records{
    font-size:9.5px;
  }
}


/* ============================================================
   V1.9.14 左上角学校单行标识 + 公安备案图标
============================================================ */

/* 左上角只保留一行学校名称，增强正式感 */
.v1912-school-mark{
  top:24px;
  left:32px;
  width:max-content;
  max-width:none;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:0;
  padding-left:14px;
  border-left:3px solid rgba(142,129,255,.92);
  text-align:center;
}

.v1912-school-mark strong{
  display:block;
  width:auto;
  font-size:20px;
  line-height:1.25;
  font-weight:900;
  letter-spacing:.02em;
  text-align:center;
}

/* V1.9.14 不再显示第二行学校信息 */
.v1912-school-mark span{
  display:none !important;
}

/* 公安备案：图标与文字垂直居中 */
.v1914-mps-record{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
}

.v1914-beian-icon{
  display:block;
  width:16px;
  height:16px;
  object-fit:contain;
  flex:0 0 16px;
  opacity:.92;
}

/* 低高度桌面端 */
@media(max-height:790px) and (min-width:901px){
  .v1912-school-mark{
    top:15px;
    left:24px;
    padding-left:12px;
  }

  .v1912-school-mark strong{
    font-size:17px;
  }

  .v1914-beian-icon{
    width:13px;
    height:13px;
    flex-basis:13px;
  }
}

/* 手机端：仍然顶部居中 */
@media(max-width:680px){
  .v1912-school-mark{
    left:50%;
    width:calc(100vw - 36px);
    max-width:none;
    padding-left:0;
    border-left:0;
    transform:translateX(-50%);
  }

  .v1912-school-mark strong{
    font-size:15px;
  }

  .v1914-beian-icon{
    width:12px;
    height:12px;
    flex-basis:12px;
  }
}

/* ============================================================
   V1.9.36.13.132 登录页学校标识：文峰校区校名与适度放大的校徽
============================================================ */
.v1912-school-mark.v13131-school-brand{
  --school-logo-size:62px;
  top:24px;
  left:32px;
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:flex-start;
  gap:14px;
  width:max-content;
  max-width:calc(100vw - 64px);
  padding:0;
  border:0;
  transform:none;
  text-align:left;
}

.v13131-school-brand .v13131-school-logo{
  display:block;
  width:var(--school-logo-size);
  height:var(--school-logo-size);
  flex:0 0 var(--school-logo-size);
  padding:2px;
  border:1px solid rgba(255,255,255,.76);
  border-radius:50%;
  background:#fff;
  object-fit:contain;
  box-shadow:0 3px 12px rgba(6,12,31,.16);
}

.v1912-school-mark.v13131-school-brand strong{
  display:block;
  width:auto;
  margin:0;
  font-size:28px;
  line-height:1.3;
  font-weight:850;
  letter-spacing:.025em;
  white-space:nowrap;
  text-align:left;
  color:#fff;
  text-shadow:0 2px 12px rgba(6,12,31,.35);
}

@media(max-height:790px) and (min-width:901px){
  .v1912-school-mark.v13131-school-brand{
    --school-logo-size:52px;
    top:16px;
    left:24px;
    gap:12px;
  }
  .v1912-school-mark.v13131-school-brand strong{
    font-size:25px;
  }
}

@media(max-width:1050px){
  .v1912-school-mark.v13131-school-brand{
    --school-logo-size:52px;
    top:18px;
    left:20px;
    gap:12px;
    max-width:calc(100vw - 40px);
  }
  .v1912-school-mark.v13131-school-brand strong{
    font-size:25px;
  }
}

@media(max-width:680px){
  .v1912-school-mark.v13131-school-brand{
    --school-logo-size:44px;
    top:18px;
    left:50%;
    width:max-content;
    max-width:calc(100vw - 32px);
    justify-content:center;
    gap:10px;
    transform:translateX(-50%);
  }
  .v1912-school-mark.v13131-school-brand strong{
    font-size:19px;
    letter-spacing:.015em;
  }
}

@media(max-width:360px){
  .v1912-school-mark.v13131-school-brand{
    --school-logo-size:40px;
    gap:9px;
  }
  .v1912-school-mark.v13131-school-brand strong{
    font-size:18px;
  }
}
