/* 登录页专用样式 · 印章红视觉（2026-10-09 指令，用户已批准）
 * theme.css 不动；本文件只被 student.html / org.html / admin.html 引用，
 * 所有选择器限定在 .auth 之下，admin 登录后的后台（#app.admin）不受影响。
 * 色值与首页一致：纸 #ECE7DE / 墨 #1D1C1A / 灰 #7B776F / 细线 #CFC8BA / 印章红 #D9281E
 */
@font-face{font-family:"Noto Serif SC";src:url("fonts/serifsc-h.woff2?v=20261009a") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Anton";src:url("fonts/anton-num.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}

/* 纸色底 + 纸纹（铺满整页，短页不断层） */
.auth{position:relative;background:#ECE7DE;color:#1D1C1A}
.auth:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.35;mix-blend-mode:multiply;z-index:0;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .45  0 0 0 0 .42  0 0 0 0 .36  0 0 0 .55 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>")}

/* 品牌区：去深绿底与光晕，透明 + 右侧墨色竖线（堆叠后改底部横线） */
.auth .brandside{background:transparent;color:#1D1C1A;border-right:1px solid #1D1C1A}
.auth .brandside:after{display:none}
.auth .bs-logo .bt{color:#7B776F}
.auth .bs-h{font-family:"Noto Serif SC","Songti SC",serif;font-weight:900;color:#1D1C1A}
.auth .bs-h em{color:#D9281E}
.auth .bs-eyebrow{color:#D9281E}
.auth .bs-eyebrow::before{background:linear-gradient(90deg,#D9281E,rgba(217,40,30,0))}
.auth .bs-p{color:#7B776F}
.auth .bs-stats{border-top-color:#CFC8BA}
.auth .bs-stats b{font-family:"Anton","Impact","Arial Narrow",sans-serif;font-weight:400;color:#1D1C1A}
.auth .bs-stats span{color:#7B776F}
.auth .bs-foot{color:#7B776F;border-top-color:#CFC8BA}
.auth .bs-foot a{color:#7B776F}

/* 登录区 */
.auth .authmain{background:transparent;position:relative;z-index:1}
.auth .card{border-radius:0;border:1px solid #1D1C1A;background:#FBF8F2;box-shadow:4px 4px 0 rgba(29,28,26,.12)}
.auth .card-head p{color:#7B776F}
.auth .rolechip{border-radius:0;background:transparent;border:1px solid #D9281E;color:#D9281E}
.auth .tabs{border-radius:0;background:#E4DED3}
.auth .tabs button{border-radius:0;color:#7B776F}
.auth .tabs button.on{border-radius:0;background:#fff;color:#1D1C1A}
.auth .field>label{color:#1D1C1A}
.auth .field input,.auth .field select{border-radius:0;background:#fff;border-color:#CFC8BA}
.auth .btn{border-radius:0}
.auth .btn-primary{background:#D9281E;color:#fff;box-shadow:2px 2px 0 rgba(29,28,26,.3)}
.auth .btn-primary:hover:not(:disabled){background:#B81F16}
.auth .btn-link{color:#D9281E}
.auth .switchline{color:#7B776F}
.auth .card-foot{color:#7B776F;border-top-color:#CFC8BA}
.auth a{color:#D9281E}

/* 响应式：960 起堆叠，竖线改底部横线；860 起品牌区压缩，说明句与页脚隐藏（文字保留在 HTML 里） */
@media (max-width:960px){
  .auth .brandside{border-right:0;border-bottom:1px solid #1D1C1A}
}
@media (max-width:860px){
  .auth .brandside{padding:22px 20px}
  .auth .bs-h{font-size:22px;margin:14px 0 6px}
  .auth .bs-p{display:none}
  .auth .bs-foot{display:none}
  .auth .bs-stats{margin-top:12px}
}
