/* 学生端新外观（UI2）· 入口类页面：首页、口令页、注册、选等级和小测、信箱、隐私政策、用户协议。规矩见 ui2-theme.css 开头；归 Codex。
   所有规则写成 html[data-ui="2"] …，颜色 / 描边 / 阴影 / 圆角 / 字体只用 ui2-theme.css 的变量。 */
  html[data-ui="2"] .entry-card input:not([type]){background:var(--field);color:var(--ink);border:2px solid transparent;border-radius:var(--r-sm);box-shadow:none;}
  html[data-ui="2"] .entry-card input:not([type]):focus-visible{background:var(--surface);border-color:var(--accent);outline:none;}
  html[data-ui="2"] .entry .badge{background:var(--accent-soft);color:var(--accent-ink);border:0;box-shadow:none;}
  html[data-ui="2"] .entry .badge.k{background:var(--field);color:var(--ink);}
  html[data-ui="2"] .lvp .lv-card .badge,html[data-ui="2"] .reg .badge{border:0;box-shadow:none;background:var(--accent-soft);color:var(--accent-ink);}
  html[data-ui="2"] .lvp .lv-card .badge.ok,html[data-ui="2"] .reg .badge.ok{background:var(--ok-soft);color:var(--ok);}
  html[data-ui="2"] .lvp .lv-card .badge.k,html[data-ui="2"] .reg .badge.k{background:var(--field);color:var(--ink);}
  html[data-ui="2"] .lv-tag{border:0;background:var(--field);color:var(--mute);}
  html[data-ui="2"] .lvp .mailbtn{border:0;background:var(--surface);box-shadow:var(--sh);}
  html[data-ui="2"] .lv-row{border:0;background:var(--surface);box-shadow:var(--sh);}
  html[data-ui="2"] .lv-q label{border:1px solid var(--line);background:var(--surface);}
  html[data-ui="2"] .lv-q label:has(input:checked){border-color:var(--accent);background:var(--accent-soft);}
  html[data-ui="2"] .pinpad .av{background:var(--accent-soft);color:var(--accent-ink);border:0;}
  html[data-ui="2"] .pinpad .dots i{border:2px solid var(--line);background:var(--surface);}
  html[data-ui="2"] .pinpad .dots i.on{background:var(--accent);border-color:var(--accent);}
  html[data-ui="2"] .pinpad .keys button{border:0;border-radius:var(--r-sm);background:var(--field);color:var(--ink);box-shadow:none;}
  html[data-ui="2"] .pinpad .msg{color:var(--warn);}
  html[data-ui="2"] .entry{max-width:none;padding:24px var(--gut) calc(32px + env(safe-area-inset-bottom));}
  html[data-ui="2"] .entry .brand{margin-bottom:10px;}
  html[data-ui="2"] .entry h1{font-size:26px;line-height:1.2;}
  html[data-ui="2"] .entry .lead{font-size:16px;margin-bottom:18px;}
  html[data-ui="2"] .entry-two{grid-template-columns:minmax(0,1fr);gap:12px;}
  html[data-ui="2"] .entry-card{padding:20px 16px;gap:10px;}
  html[data-ui="2"] .entry-card input{max-width:none;min-height:50px;font-size:17px;}
  html[data-ui="2"] .entry-card .lv-btn{width:100%;margin:0;}
  html[data-ui="2"] .entry .lost{min-height:var(--tap);justify-content:center;}
  html[data-ui="2"] .portal{min-height:100dvh;gap:24px;padding:calc(20px + env(safe-area-inset-top)) var(--gut) calc(20px + env(safe-area-inset-bottom));}
  html[data-ui="2"] .pinpad{width:100%;max-width:360px;padding:20px 16px;}
  html[data-ui="2"] .pinpad h2{font-size:21px;overflow-wrap:anywhere;}
  html[data-ui="2"] .pinpad .keys{gap:8px;}
  html[data-ui="2"] .pinpad .keys button{height:58px;min-width:var(--tap);}
  html[data-ui="2"] .portal .lost{text-align:center;justify-content:center;}
  html[data-ui="2"] .reg{max-width:none;padding:16px var(--gut) calc(40px + env(safe-area-inset-bottom));}
  html[data-ui="2"] .reg .box{padding:20px 16px;}
  html[data-ui="2"] .reg .row2{grid-template-columns:minmax(0,1fr);gap:0;}
  html[data-ui="2"] .reg .field{margin:14px 0;}
  html[data-ui="2"] .reg .field label{font-size:16px;}
  html[data-ui="2"] .reg .field small,html[data-ui="2"] .reg .consent small{font-size:13px;line-height:1.45;}
  html[data-ui="2"] .reg .consent,html[data-ui="2"] .reg .who label{min-height:var(--tap);align-items:center;}
  html[data-ui="2"] .reg .consent input{margin-top:0;}
  html[data-ui="2"] .reg .cf{max-width:100%;overflow:hidden;}
  html[data-ui="2"] .reg .idnum{max-width:100%;font-size:clamp(34px,11vw,58px);letter-spacing:2px;overflow-wrap:anywhere;}
  html[data-ui="2"] .reg .idnum{border:1px solid var(--line);background:var(--field);font-family:var(--head);box-shadow:none;}
  html[data-ui="2"] .reg .pin{max-width:100%;}
  html[data-ui="2"] .reg #go,html[data-ui="2"] .reg #haveInv{min-height:48px;font-size:16px;}
  html[data-ui="2"] .reg #askInv{display:inline-flex;align-items:center;min-height:var(--tap);font-size:15px;}
  html[data-ui="2"] .lvp .wrap{padding:0 var(--gut) 48px;max-width:none;}
  html[data-ui="2"] .lv-top{min-height:56px;padding:6px 0;gap:8px;}
  html[data-ui="2"] .lv-top .mailbtn{width:var(--tap);height:var(--tap);min-width:var(--tap);}
  html[data-ui="2"] .lv-h{font-size:26px;line-height:1.2;}
  html[data-ui="2"] .lv-row{min-height:64px;padding:12px;gap:10px;}
  html[data-ui="2"] .lv-row b{min-width:34px;font-size:18px;}
  html[data-ui="2"] .lv-row b{font-family:var(--head);}
  html[data-ui="2"] .lv-row .lv-soon{border:0;background:var(--field);color:var(--mute);border-radius:var(--r-sm);font-family:var(--body);}
  html[data-ui="2"] .doge-say{display:inline-flex;flex-direction:column;align-items:center;max-width:100%;}
  html[data-ui="2"] .doge-bub{position:relative;top:auto;left:auto;max-width:100%;white-space:normal;margin-top:8px;padding:6px 12px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);box-shadow:none;font:700 15px/1.4 var(--body);}
  html[data-ui="2"] .doge-bub::before{display:none;}
  html[data-ui="2"] .lv-card{padding:18px 16px;margin:14px 0;}
  html[data-ui="2"] .lv-q label{min-height:var(--tap);display:flex;align-items:center;gap:6px;}
  html[data-ui="2"] .lv-q input[type=radio]{width:20px;height:20px;flex:none;}
  html[data-ui="2"] .lv-chip{min-height:var(--tap);padding:8px 14px;}
  html[data-ui="2"] .lv-chip{border:1px solid var(--line);background:var(--surface);color:var(--ink);font-family:var(--body);}
  html[data-ui="2"] .lv-chip.on{border-color:var(--accent);background:var(--accent);color:var(--on-accent);}
  html[data-ui="2"] .mb-list{padding:0;}
  html[data-ui="2"] .mb-item{padding:16px 12px;gap:10px;}
  html[data-ui="2"] .mb-item{border-bottom:1px solid var(--line);}
  html[data-ui="2"] .mb-item.new{background:var(--accent-soft);}
  html[data-ui="2"] .mb-ic{min-width:var(--tap);width:var(--tap);height:var(--tap);}
  html[data-ui="2"] .mb-ic{border:0;background:var(--field);color:var(--ink);}
  html[data-ui="2"] .mb-item.new .mb-ic{background:var(--accent);color:var(--on-accent);}
  html[data-ui="2"] .mb-read{min-height:var(--tap);padding:8px 12px;}
  html[data-ui="2"] .mb-read{border:1px solid var(--line);background:var(--surface);color:var(--ink);}
  html[data-ui="2"] .legal{max-width:none;padding:16px var(--gut) calc(48px + env(safe-area-inset-bottom));overflow-wrap:anywhere;}
  html[data-ui="2"] .legal .box{padding:20px 16px;}
  html[data-ui="2"] .legal .toc{columns:1;}
  html[data-ui="2"] .legal h1{font-size:25px;}
  html[data-ui="2"] .legal th,html[data-ui="2"] .legal td{border:1px solid var(--line);}
  html[data-ui="2"] .legal th{background:var(--field);}
  html[data-ui="2"] .legal .key{border:1px solid var(--line);background:var(--accent-soft);}
  html[data-ui="2"] .legal-foot{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;}
  html[data-ui="2"] .legal-foot a{min-height:var(--tap);display:inline-flex;align-items:center;}
html[data-ui="2"] .setdrawer .settabs{padding-right:54px;min-height:var(--tap);align-items:center;}
html[data-ui="2"] .setdrawer .setx{top:16px;right:16px;width:var(--tap);height:var(--tap);min-height:var(--tap);padding:0;display:grid;place-items:center;}
html[data-ui="2"] .setdrawer .setx .ico{width:20px;height:20px;}
html[data-ui="2"] .setdrawer .voicebar{display:grid;gap:12px;}
html[data-ui="2"] .setdrawer .voicebar .seg{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);min-width:0;max-width:100%;}
html[data-ui="2"] .setdrawer .voicebar .seg b{display:flex;flex-direction:column;gap:2px;min-width:0;min-height:var(--tap);padding:8px 4px;line-height:1.2;text-align:center;white-space:normal;}
html[data-ui="2"] .setdrawer .voicebar .seg b small{display:block;font-size:12px;}
