/* ══ 美式高中模拟器 · 完整UI ══
   容器:<ai>  时段:ai[t="day/night/party"] */

/* ── 白天(默认)变量 ── */
ai{
  --bg:#f7f2e8;--bg2:#fffef9;--bg3:#ede5d0;
  --tx:#1a1005;--tx2:#5a4520;--tx3:#9a8560;
  --ac:#b8860b;--ac2:#e0a020;--ac3:#f5c842;
  --red:#c0392b;--grn:#27ae60;--blu:#2471a3;--pnk:#c0397a;
  --bd:#d8c898;--sh:rgba(184,134,11,.14);
  --r:10px;--r2:5px;
  display:block;max-width:680px;margin:0 auto;
  background:var(--bg);color:var(--tx);
  font:14px/1.65 'Georgia',serif;
  border:1.5px solid var(--bd);border-radius:var(--r);
  overflow:hidden;box-shadow:0 4px 20px var(--sh);
}

/* ── 夜晚主题 ── */
ai[t="night"]{
  --bg:#0c0c1a;--bg2:#111128;--bg3:#181835;
  --tx:#ddd8f8;--tx2:#9888d0;--tx3:#5848a0;
  --ac:#9d8fff;--ac2:#7b68ee;--ac3:#c8b8ff;
  --red:#ff6b8a;--grn:#4de0a0;--blu:#60b8ff;--pnk:#ff60c0;
  --bd:#28205a;--sh:rgba(123,104,238,.22);
}

/* ── 派对主题 ── */
ai[t="party"]{
  --bg:#080012;--bg2:#100020;--bg3:#180030;
  --tx:#fff;--tx2:#e0b8ff;--tx3:#9050d0;
  --ac:#ff00cc;--ac2:#00ffcc;--ac3:#ff80ff;
  --red:#ff3366;--grn:#00ffaa;--blu:#00ccff;--pnk:#ff00aa;
  --bd:#3d0066;--sh:rgba(255,0,204,.28);
}
ai[t="party"] hd{
  background:linear-gradient(135deg,#ff00cc,#7700ff,#00ccff);
  background-size:300% 300%;
  animation:phd 4s ease infinite;
}
@keyframes phd{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}
ai[t="party"] details>summary,ai[t="party"] hd{
  animation:phd 4s ease infinite,nglow 2.5s ease-in-out infinite alternate;
}
@keyframes nglow{
  from{text-shadow:0 0 5px var(--ac);}
  to{text-shadow:0 0 10px var(--ac2),0 0 25px var(--ac),0 0 45px var(--ac);}
}

/* ── 头部栏 ── */
ai hd{
  display:flex;flex-wrap:wrap;align-items:center;gap:3px 10px;
  padding:8px 12px;
  background:linear-gradient(135deg,var(--ac),var(--ac2));
  color:#fff;font-size:12px;font-weight:700;letter-spacing:.4px;
  text-shadow:0 1px 3px rgba(0,0,0,.45);
}
ai hd f{font-size:15px;}

/* ── 叙事正文 ── */
ai article{
  padding:14px;background:var(--bg2);
  border-bottom:1px solid var(--bd);
  font-size:14px;line-height:1.85;
}
ai article p{margin:0 0 10px;}
ai article p:last-child{margin-bottom:0;}

/* ── details/summary ── */
ai details{border-bottom:1px solid var(--bd);}
ai details:last-child{border-bottom:none;}
ai details>summary{
  display:flex;align-items:center;gap:6px;
  padding:8px 12px;background:var(--bg3);
  color:var(--ac);font-size:13px;font-weight:700;
  cursor:pointer;list-style:none;user-select:none;
  transition:background .2s,color .2s;
}
ai details>summary::-webkit-details-marker{display:none;}
ai details>summary::after{
  content:'▸';margin-left:auto;
  color:var(--tx3);font-size:11px;
  transition:transform .25s;
}
ai details[open]>summary::after{transform:rotate(90deg);}
ai details>summary:hover{background:var(--bd);color:var(--ac2);}

/* ── 内容区通用 ── */
ai .cot,ai .mem,ai .whi,ai .rnk,
ai .pc,ai .fn,ai .mn,ai .rdr{
  padding:8px 12px;background:var(--bg2);
}

/* ── d 数据行 ── */
ai d{
  display:block;padding:2px 0;
  font-size:13px;color:var(--tx2);
  border-bottom:1px dotted var(--bd);
}
ai d:last-child{border-bottom:none;}

/* ── p[t] 分区标题 ── */
ai p[t]{
  display:block;margin:7px 0 3px;
  padding:2px 8px;border-radius:var(--r2);
  background:linear-gradient(90deg,var(--ac),transparent);
  color:#fff;font-size:11px;font-weight:700;
  letter-spacing:1px;text-transform:uppercase;
}

/* ── f 标签 ── */
ai f{
  display:inline-block;
  font-weight:700;color:var(--ac2);font-size:13px;
}

/* ── q 人名 ── */
ai q{
  font-weight:700;color:var(--ac);
  font-style:normal;quotes:none;
}

/* ── i 内心独白 ── */
ai .whi i{
  display:block;margin:2px 0 5px 8px;
  font-style:italic;font-size:12.5px;color:var(--tx2);
  border-left:2px solid var(--ac3);padding-left:7px;
}

/* ── 好感/仇恨进度条 ── */
ai e.lv,ai e.ht{
  display:inline-flex;align-items:center;gap:5px;
  font-weight:700;font-size:13px;
}
ai e.lv::before,ai e.ht::before{
  content:'';display:inline-block;
  width:64px;height:7px;border-radius:4px;
  flex-shrink:0;
}
ai e.lv{color:var(--grn);}
ai e.lv::before{
  background:linear-gradient(90deg,
    var(--grn) calc(var(--p,50)*1%),
    var(--bg3) calc(var(--p,50)*1%));
  box-shadow:0 0 4px rgba(39,174,96,.3);
}
ai e.ht{color:var(--red);}
ai e.ht::before{
  background:linear-gradient(90deg,
    var(--red) calc(var(--p,50)*1%),
    var(--bg3) calc(var(--p,50)*1%));
  box-shadow:0 0 4px rgba(192,57,43,.3);
}

/* ── 排名榜 ── */
ai .rnk d{padding:3px 0;}
ai .rnk d q{
  background:linear-gradient(90deg,var(--ac),var(--ac2));
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
}
ai .rnk d[tr="up"]::after{content:' ↑';color:var(--grn);font-weight:900;}
ai .rnk d[tr="dn"]::after{content:' ↓';color:var(--red);font-weight:900;}
ai .rnk d[tr="eq"]::after{content:' —';color:var(--tx3);}

/* ── 表格 tb ── */
ai tb{display:table;width:100%;border-collapse:collapse;font-size:12px;}
ai tb tr{display:table-row;}
ai tb th,ai tb td{
  display:table-cell;padding:4px 6px;
  border-bottom:1px solid var(--bd);text-align:left;
}
ai tb th{
  background:var(--bg3);color:var(--ac);
  font-weight:700;font-size:11px;letter-spacing:.5px;
}
ai tb td{color:var(--tx2);}
ai tb tr:last-child th,ai tb tr:last-child td{border-bottom:none;}

/* ── CoT 思维链（低调）── */
ai .cot{opacity:.75;}
ai .cot d,ai .cot p[t]{font-size:11.5px;}
ai .cot p[t]{background:linear-gradient(90deg,var(--tx3),transparent);font-size:10px;}

/* ── 行动选择区 ── */
ai .act{padding:10px 12px;background:var(--bg3);}
ai .act p[t]{
  text-align:center;font-size:13px;
  background:linear-gradient(90deg,transparent,var(--ac),transparent);
  margin-bottom:8px;
}
ai .act d{
  display:block;padding:8px 10px;margin:4px 0;
  border:1px solid var(--bd);border-radius:var(--r2);
  background:var(--bg2);color:var(--tx);font-size:13px;
  cursor:pointer;transition:all .2s;
}
ai .act d:hover{
  background:var(--ac);color:#fff;
  border-color:var(--ac2);transform:translateX(4px);
  box-shadow:2px 0 10px var(--sh);
}
ai .act d.a{border-left:3px solid var(--red);}
ai .act d.b{border-left:3px solid var(--blu);}
ai .act d.c{border-left:3px solid var(--pnk);}
ai .act d.d{border-left:3px solid var(--grn);}

/* ── 派对行动特效 ── */
ai[t="party"] .act d.a{box-shadow:inset 0 0 8px rgba(255,51,102,.2);}
ai[t="party"] .act d.c{box-shadow:inset 0 0 8px rgba(255,0,170,.2);}
ai[t="party"] .act d:hover{box-shadow:0 0 14px var(--ac),2px 0 10px var(--sh);}

/* ── 滚动条 ── */
ai ::-webkit-scrollbar{width:4px;height:4px;}
ai ::-webkit-scrollbar-track{background:var(--bg3);}
ai ::-webkit-scrollbar-thumb{background:var(--ac);border-radius:2px;}