/* 56 · 马甲线怎么练 —— 玫红 × 炭灰「七天排班」：周卡网格、动作库表、AI 深卡片 */
.abt{
  --ink:#2d2530; --sub:#847583; --card:#ffffff; --line:#eddfe6;
  --pri:#c04e7c; --pri-soft:#fcecf3; --ok:#3b8769; --warn:#b87e33; --bad:#bd4f66; --bg:#faf6f8;
  --ab-font:"PingFang SC","HarmonyOS Sans SC","Microsoft YaHei",system-ui,sans-serif;
  --ab-num:"Bahnschrift","Segoe UI Variable Text",ui-monospace,monospace;
  color:var(--ink);background:var(--bg);font-family:var(--ab-font);
  font-size:14.5px;line-height:1.8;padding:28px 16px 62px;
}
:root[data-theme="dark"] .abt{
  --ink:#f6e9ef; --sub:#bba3b0; --card:#241d24; --line:#45323e;
  --pri:#f19bbe; --pri-soft:#3b2532; --ok:#8fd5b3; --warn:#e8bd7b; --bad:#f5a0b3; --bg:#171216;
}
.abt-wrap{max-width:1120px;margin:0 auto;}
.abt *{box-sizing:border-box;}
.abt h1,.abt h2,.abt h3{margin:0;}
.abt b{color:var(--pri);font-weight:700;}
.abt-hero{
  display:grid;grid-template-columns:minmax(0,1.55fr) 210px;gap:24px;align-items:center;
  background:linear-gradient(120deg,#302630,var(--card) 78%);border:1px solid var(--line);
  border-radius:20px;padding:30px 34px;box-shadow:0 12px 30px rgba(120,40,80,.12);
}
:root[data-theme="dark"] .abt-hero{background:linear-gradient(120deg,#2c2029,var(--card) 78%);}
.abt-badge{font-size:12px;font-weight:700;letter-spacing:1.1px;color:var(--pri);}
.abt-hero h1{font-size:32px;line-height:1.3;font-weight:820;margin:12px 0 10px;}
.abt-hero h1 em{display:block;font-style:normal;font-size:16px;font-weight:600;color:var(--sub);margin-top:6px;}
.abt-hero p{margin:0;max-width:720px;line-height:1.9;color:var(--ink);}
.abt-hero-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;}
.abt-hero-meta span{font-size:11.5px;font-weight:650;color:var(--pri);background:var(--card);border:1px solid var(--line);border-radius:999px;padding:4px 11px;}
.abt-week-mini{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;background:rgba(255,255,255,.06);border:1px solid var(--line);border-radius:12px;padding:12px;}
.abt-week-mini span{height:34px;border-radius:6px;background:rgba(255,255,255,.10);color:var(--sub);display:flex;align-items:center;justify-content:center;font-size:11px;}
.abt-week-mini span.is-on{background:var(--pri);color:#fff;font-weight:700;}
.abt-week-mini small{grid-column:span 7;font-size:10px;color:var(--sub);text-align:center;}
.abt-card,.abt-panel,.abt-empty{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px 26px;margin-top:18px;box-shadow:0 2px 12px rgba(120,50,80,.05);}
.abt-card-h,.abt-h2{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;border-bottom:1px solid var(--line);padding-bottom:11px;margin-bottom:18px;}
.abt-card-h h2{font-size:19px;font-weight:750;}
.abt-h2{font-size:17px;font-weight:750;}
.abt-card-tip,.abt-h2 span{font-size:12px;color:var(--sub);font-weight:500;}
.abt-form{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.abt-f{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:650;}
.abt-f em{font-style:normal;font-size:11px;color:var(--sub);font-weight:400;line-height:1.55;}
.abt-f input,.abt-f select,.abt-ta{width:100%;font:500 14px var(--ab-font);color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:9px;padding:9px 11px;outline:none;transition:border-color .16s,box-shadow .16s;}
.abt-f input{font-family:var(--ab-num);font-weight:700;}
.abt-f input:hover,.abt-f select:hover,.abt-ta:hover{border-color:var(--pri);}
.abt-f input:focus,.abt-f select:focus,.abt-ta:focus{border-color:var(--pri);box-shadow:0 0 0 3px var(--pri-soft);}
.abt-num{display:flex;align-items:center;gap:8px;}
.abt-num i{font-style:normal;font-size:11.5px;color:var(--sub);}
.abt-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;}
.abt-btn{font:650 13.5px var(--ab-font);color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:9px;padding:9px 19px;cursor:pointer;transition:transform .15s,border-color .15s,box-shadow .15s,background .15s;}
.abt-btn:hover:not(:disabled){transform:translateY(-1px);border-color:var(--pri);box-shadow:0 5px 14px rgba(192,78,124,.16);}
.abt-btn:disabled{opacity:.5;cursor:not-allowed;}
.abt-btn-main{background:var(--pri);border-color:var(--pri);color:#fff;}
.abt-btn-ghost{background:transparent;color:var(--sub);}
.abt-btn-ai{background:#302630;color:#fff;border-color:#302630;}
.abt-msg{font-size:12.5px;color:var(--sub);margin:12px 0 0;min-height:18px;}
.abt-empty{text-align:center;color:var(--sub);padding:42px 20px;}
.abt-empty-ic{display:block;font-size:30px;}
.abt-empty b{display:block;color:var(--ink);font-size:16px;}
.abt-empty em{display:block;font-style:normal;font-size:13px;margin-top:6px;}
.abt-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:18px;}
.abt-kpi{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:3px;}
.abt-kpi.is-hero{background:linear-gradient(135deg,var(--pri),#e17ba0);border-color:transparent;color:#fff;}
.abt-kpi .k{font-size:12px;color:var(--sub);}
.abt-kpi.is-hero .k,.abt-kpi.is-hero .s{color:#ffe9f1;}
.abt-kpi .v{font:800 26px/1.25 var(--ab-num);}
.abt-kpi-txt{font-size:17px!important;font-family:var(--ab-font)!important;}
.abt-kpi .s{font-size:11px;color:var(--sub);}
.abt-week{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;}
.abt-day{border:1px solid var(--line);border-radius:12px;background:var(--bg);padding:11px 9px;min-height:150px;display:flex;flex-direction:column;gap:6px;}
.abt-day.is-train{background:var(--pri-soft);border-color:var(--pri);}
.abt-day .d{font:700 12px var(--ab-num);color:var(--sub);}
.abt-day .tag{font-size:10.5px;font-weight:700;color:var(--pri);}
.abt-day.is-rest .tag{color:var(--sub);}
.abt-day ul{margin:0;padding-left:14px;font-size:11.5px;line-height:1.6;}
.abt-day li{margin-bottom:3px;}
.abt-day .rest-txt{font-size:11.5px;color:var(--sub);line-height:1.65;}
.abt-note{font-size:12.5px;color:var(--sub);background:var(--bg);border-radius:9px;padding:10px 14px;margin:14px 0 0;line-height:1.75;}
.abt-tw{overflow:auto;}
.abt-tb{width:100%;border-collapse:collapse;font-size:13px;min-width:640px;}
.abt-tb th,.abt-tb td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;}
.abt-tb th{background:var(--bg);font-size:11.5px;color:var(--sub);}
.abt-tb tbody tr:hover{background:var(--pri-soft);}
.abt-boundary-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;}
.abt-boundary-grid div{background:var(--bg);border-left:3px solid var(--warn);border-radius:0 9px 9px 0;padding:10px 13px;font-size:12.5px;line-height:1.7;}
.abt-ai{background:linear-gradient(120deg,#302630,#4a3040);border-color:#4a3040;color:#fff;}
:root[data-theme="dark"] .abt-ai{background:linear-gradient(120deg,#2c2029,#412a37);}
.abt-ai .abt-h2,.abt-ai .abt-h2 span,.abt-ai .abt-msg{color:#e6d7df;}
.abt-ai .abt-h2{border-bottom-color:rgba(255,255,255,.18);}
.abt-ai-tip{font-size:12.5px;color:#dccbd5;line-height:1.75;margin:0 0 14px;}
.abt-ai-out{white-space:pre-wrap;background:var(--card);color:var(--ink);border-radius:10px;padding:16px 18px;font-size:13.5px;line-height:1.85;margin-top:14px;}
.abt-ta{min-height:98px;resize:vertical;line-height:1.7;}
.abt-final{margin-top:20px;}
@media (max-width:860px){
  .abt{padding:18px 12px 48px;}
  .abt-hero{grid-template-columns:1fr;padding:22px 18px;}
  .abt-week-mini{display:none;}
  .abt-hero h1{font-size:26px;}
  .abt-form,.abt-kpis,.abt-boundary-grid{grid-template-columns:1fr;}
  .abt-week{grid-template-columns:repeat(2,1fr);}
  .abt-card,.abt-panel{padding:18px 16px;}
  .abt-card-h,.abt-h2{flex-direction:column;gap:3px;}
}
