/* ====== 67 通讯费报销 · 电波紫（通信业）+ 蜜橙 ====== */
.cac{
  --bg:#f5f1fb; --bg2:#ece5f8; --card:#fff; --card2:#faf7ff;
  --ink:#171022; --sub:#423753; --faint:#857a95; --line:#ded5ef; --line2:#ece5f8;
  --violet:#6a4fb8; --violet-d:#4f3796; --violet-soft:#e9e2fb;
  --amber:#e08a1e; --amber-soft:#fdf0da; --ok:#2f7a5a; --bad:#cc4b4b;
  --shadow-sm:0 1px 2px rgba(23,16,34,.05),0 7px 18px rgba(23,16,34,.05);
  --shadow:0 2px 6px rgba(23,16,34,.07),0 22px 48px rgba(23,16,34,.10);
  --r:20px; --r-sm:13px;
  background:
    radial-gradient(720px 320px at 96% -10%, rgba(106,79,184,.12), transparent 60%),
    radial-gradient(520px 300px at 0% 10%, rgba(224,138,30,.07), transparent 56%),
    var(--bg);
}
:root[data-theme="dark"] .cac{
  --bg:#100c1a; --bg2:#171021; --card:#1d1629; --card2:#241b33;
  --ink:#efe8fb; --sub:#b8a9cd; --faint:#7b6d90; --line:#312447; --line2:#271c39;
  --violet:#9a7de0; --violet-d:#bda4f2; --violet-soft:rgba(154,125,224,.15);
  --amber:#f0a92c; --amber-soft:rgba(240,169,44,.13);
}
.cac-hero{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:30px;padding:30px 0 24px;align-items:start;}
.cac-hero-l .tsk-h1 b{color:var(--violet-d);}

/* 账单收据 */
.cac-bill{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--r) var(--r) 8px 8px;box-shadow:var(--shadow);padding:20px 22px 18px;}
.cac-bill-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:10px;border-bottom:2px dashed var(--line);}
.cac-bill-logo{font-size:13px;font-weight:800;color:var(--violet-d);letter-spacing:.05em;}
.cac-bill-top em{font-style:normal;font-size:10px;font-weight:800;letter-spacing:.2em;color:var(--faint);}
.cac-bill-meta{font-size:10.5px;color:var(--faint);margin:8px 0 4px;letter-spacing:.03em;}
.cac-bill label{display:block;font-size:11.5px;font-weight:700;color:var(--faint);margin-top:10px;}
.cac-bill input,.cac-bill select{width:100%;height:36px;margin-top:5px;padding:0 10px;border:1.5px solid var(--line);border-radius:8px;background:var(--card2);color:var(--ink);font:700 13.5px/36px var(--num,"Bahnschrift",monospace);outline:none;}
.cac-bill select{font-family:inherit;}
.cac-bill input:focus,.cac-bill select:focus{border-color:var(--violet);box-shadow:0 0 0 3px var(--violet-soft);}
.cac-bill-cut{height:12px;margin:14px -22px -18px;background:radial-gradient(circle at 6px 0,transparent 5px,var(--card) 5.5px) repeat-x;background-size:12px 12px;border-top:1px dashed var(--line);}

.cac-result{margin-top:6px;background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:22px 24px;}
.cac-res-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:11px;}
.cac-res-card{background:var(--card2);border:1px solid var(--line2);border-radius:var(--r-sm);padding:15px 17px;}
.cac-res-card b{display:block;font:800 24px/1.15 var(--num,"Bahnschrift",monospace);color:var(--ink);font-variant-numeric:tabular-nums;}
.cac-res-card span{display:block;font-size:11.5px;color:var(--faint);font-weight:600;margin-top:5px;}
.cac-res-card i{display:block;font-style:normal;font-size:10.5px;color:var(--sub);margin-top:4px;line-height:1.5;}
.cac-res-card.cac-main{background:var(--violet-soft);border-color:var(--violet);}
.cac-res-card.cac-main b{color:var(--violet-d);}
.cac-alert{margin-top:14px;padding:12px 15px;border-radius:10px;background:var(--amber-soft);border:1px solid rgba(224,138,30,.35);font-size:12.5px;line-height:1.75;color:var(--sub);}
.cac-alert b{color:var(--violet-d);}

.cac-pos{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;}
.cac-pos-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm);padding:15px 17px;box-shadow:var(--shadow-sm);}
.cac-pos-card b{display:block;font-size:12.5px;font-weight:800;color:var(--ink);}
.cac-pos-card span{display:block;font:800 22px/1.2 var(--num,"Bahnschrift",monospace);color:var(--violet-d);margin-top:6px;}
.cac-pos-card span small{font:600 10px/1 inherit;color:var(--faint);margin-left:3px;}
.cac-pos-card i{display:block;font-style:normal;font-size:11px;color:var(--faint);margin-top:5px;line-height:1.6;}

.cac-modes{display:grid;grid-template-columns:repeat(auto-fit,minmax(268px,1fr));gap:11px;}
.cac-mode{background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm);padding:16px 18px;box-shadow:var(--shadow-sm);border-top:3px solid var(--violet);}
.cac-mode header b{font-size:13.5px;font-weight:800;color:var(--ink);}
.cac-mode-tax{margin-top:8px;font-size:11.5px;line-height:1.7;color:var(--sub);background:var(--card2);border-radius:8px;padding:9px 11px;}
.cac-mode-line{display:flex;gap:8px;margin-top:8px;}
.cac-mode-line span{flex:none;font-size:10px;font-weight:800;padding:2px 7px;border-radius:99px;height:18px;line-height:14px;}
.cac-mode-line .cac-good{background:#d8f2e4;color:#1f7a4c;}
.cac-mode-line .cac-bad{background:#fbe0e0;color:#b23a3a;}
.cac-mode-line p{margin:0;font-size:11.5px;line-height:1.65;color:var(--sub);}
.cac-mode-best{margin-top:10px;padding-top:9px;border-top:1px dashed var(--line2);font-size:11px;color:var(--amber);font-weight:700;}

.cac-table{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm);overflow:hidden;box-shadow:var(--shadow-sm);}
.cac-table th,.cac-table td{padding:13px 16px;text-align:left;font-size:12.5px;line-height:1.75;border-bottom:1px solid var(--line2);}
.cac-table tr:last-child th,.cac-table tr:last-child td{border-bottom:0;}
.cac-table th{width:126px;font-weight:800;color:var(--violet-d);background:var(--card2);vertical-align:top;}
.cac-table td{color:var(--sub);}

.cac-proof{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;}
.cac-proof-item{display:flex;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm);padding:14px 16px;box-shadow:var(--shadow-sm);}
.cac-proof-item span{font-size:18px;}
.cac-proof-item b{font-size:12.5px;font-weight:800;color:var(--ink);}
.cac-proof-item p{margin:4px 0 0;font-size:11.5px;line-height:1.7;color:var(--sub);}

@media (max-width:900px){.cac-hero{grid-template-columns:1fr;}.cac-table th{width:92px;}}
