/* ====== 77 宿舍电器功率 · 配电箱钢灰 + 警示黄 ====== */
.dap{
  --bg:#f0f1f2; --bg2:#e4e6e8; --card:#fff; --card2:#f6f7f8;
  --ink:#15191c; --sub:#3c434a; --faint:#7c848b; --line:#d7dadd; --line2:#e8eaec;
  --steel:#353b42; --steel-d:#20252a; --steel-soft:#e3e6e8;
  --hazard:#d9a425; --safe:#2f8f6b; --live:#bc4034;
  --shadow-sm:0 1px 2px rgba(21,25,28,.06),0 8px 20px rgba(21,25,28,.06);
  --shadow:0 3px 10px rgba(21,25,28,.08),0 24px 52px rgba(21,25,28,.12);
  --r:20px; --r-sm:13px;
  background:
    repeating-linear-gradient(-45deg,rgba(217,164,37,.055) 0 10px,transparent 10px 20px),
    radial-gradient(720px 330px at 100% -12%, rgba(53,59,66,.10), transparent 62%),
    var(--bg);
}
:root[data-theme="dark"] .dap{
  --bg:#0e1113; --bg2:#131719; --card:#181d21; --card2:#1d2428;
  --ink:#e8edf0; --sub:#a5b0b7; --faint:#6d777e; --line:#2b343a; --line2:#20282d;
  --steel:#9fb0bd; --steel-d:#c3d2dc; --steel-soft:rgba(159,176,189,.13);
  --hazard:#e5bb52; --safe:#5bc39a; --live:#d47a6e;
}

.dap-hero{display:grid;grid-template-columns:minmax(0,1fr) 404px;gap:30px;padding:30px 0 24px;align-items:start;}
.dap-hero-l .tsk-h1 b{color:var(--steel-d);}

/* 配电箱 */
.dap-box{background:linear-gradient(168deg,#3d434a,#2a2f34 55%,#21262a);border:1px solid #1c2024;border-radius:var(--r);box-shadow:0 24px 54px rgba(10,13,15,.4),0 1px 0 rgba(255,255,255,.1) inset;padding:18px 20px 20px;color:#dbe3e8;position:relative;}
.dap-box::before,.dap-box::after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#8d979f,#3a4046);box-shadow:0 1px 2px rgba(0,0,0,.5);}
.dap-box::before{top:10px;left:10px;}
.dap-box::after{top:10px;right:10px;}
.dap-box-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:10px;border-bottom:1px dashed #454c53;margin-bottom:8px;}
.dap-box-head span{font-size:11px;font-weight:800;letter-spacing:.14em;color:#cfd8de;}
.dap-brk{width:26px;height:12px;border-radius:3px;background:linear-gradient(180deg,#e8b93c,#c08f18);box-shadow:0 0 8px rgba(232,185,60,.7),0 1px 0 rgba(255,255,255,.4) inset;animation:dapPulse 2.6s infinite;}
@keyframes dapPulse{0%,100%{opacity:1}50%{opacity:.6}}
.dap-box label{display:block;font-size:11px;font-weight:700;color:#a7b4bb;margin-top:8px;}
.dap-box select,.dap-box input{width:100%;height:35px;margin-top:4px;padding:0 10px;border:1px solid #4a5259;border-radius:8px;background:#232a2f;color:#e2ebf0;font:700 13px/35px var(--num,"Bahnschrift",monospace);outline:none;}
.dap-box select{font-family:inherit;}
.dap-box select:focus,.dap-box input:focus{border-color:var(--hazard);box-shadow:0 0 0 3px rgba(217,164,37,.18);}
.dap-box-sub{font-size:10.5px;font-weight:800;color:#93a1a9;margin:14px 0 7px;letter-spacing:.04em;}
.dap-apps{max-height:264px;overflow:auto;display:grid;gap:4px;padding-right:4px;}
.dap-apps::-webkit-scrollbar{width:7px;}
.dap-apps::-webkit-scrollbar-thumb{background:#4a5259;border-radius:99px;}
.dap-app{display:grid;grid-template-columns:16px 1fr 58px 12px;gap:8px;align-items:center;padding:6px 8px;border-radius:7px;background:#262d32;border:1px solid #343d43;cursor:pointer;transition:.15s;}
.dap-app:hover{background:#2c3439;border-color:#48525a;}
.dap-app:has(.dap-chk:checked){background:#2f3a33;border-color:#4f6b52;}
.dap-chk{appearance:none;width:15px;height:15px;border-radius:4px;border:1.5px solid #66727a;background:#1d2327;cursor:pointer;position:relative;}
.dap-chk:checked{background:var(--hazard);border-color:var(--hazard);}
.dap-chk:checked::after{content:"";position:absolute;left:4px;top:1px;width:5px;height:9px;border:2px solid #231a06;border-top:0;border-left:0;transform:rotate(42deg);}
.dap-app b{font-size:11.5px;font-weight:700;color:#dde5ea;}
.dap-w{height:26px!important;margin:0!important;padding:0 4px!important;font-size:11px!important;line-height:26px!important;text-align:center;border-radius:6px!important;}
.dap-app em{font-style:normal;font-size:10px;font-weight:800;color:#8b979d;}
.dap-tip{display:none;}
.dap-box .tsk-btn-main{background:var(--hazard);border-color:var(--hazard);color:#221a06;font-weight:800;}
.dap-box .tsk-btn-main:hover{background:#e8bb44;}
.dap-box-foot{margin-top:10px;font-size:10px;line-height:1.6;color:#84939b;}

/* 结果 */
.dap-result{margin:6px 0 26px;background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:22px 24px;}
.dap-gauge{margin-bottom:16px;}
.dap-gauge-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:9px;}
.dap-gauge-head span{font-size:12px;font-weight:800;color:var(--faint);letter-spacing:.04em;}
.dap-gauge-head b{font:800 34px/1 var(--num,"Bahnschrift",monospace);color:var(--ink);font-variant-numeric:tabular-nums;}
.dap-gauge-head b small{font-size:12px;font-weight:800;color:var(--faint);margin-left:3px;}
.dap-track{height:16px;border-radius:99px;background:var(--line2);overflow:hidden;position:relative;box-shadow:0 1px 3px rgba(0,0,0,.06) inset;}
.dap-fill{height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,var(--safe),var(--hazard));transition:width .45s cubic-bezier(.2,.9,.3,1);}
.dap-fill.is-over{background:linear-gradient(90deg,var(--hazard),var(--live));}
.dap-scale{display:flex;justify-content:space-between;margin-top:6px;font:700 10px/1 var(--num,"Bahnschrift",monospace);color:var(--faint);}

.dap-res-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:11px;}
.dap-res-card{background:var(--card2);border:1px solid var(--line2);border-radius:var(--r-sm);padding:15px 17px;}
.dap-res-card b{display:block;font:800 24px/1.1 var(--num,"Bahnschrift",monospace);color:var(--ink);font-variant-numeric:tabular-nums;}
.dap-res-card span{display:block;font-size:11.5px;font-weight:700;color:var(--faint);margin-top:5px;}
.dap-res-card i{display:block;font-style:normal;font-size:10.5px;color:var(--sub);margin-top:4px;}

.dap-verdict{margin-top:14px;padding:14px 17px;border-radius:12px;border-left:5px solid var(--safe);background:rgba(47,143,107,.08);font-size:12.5px;line-height:1.8;color:var(--sub);}
.dap-verdict.is-over{border-left-color:var(--live);background:rgba(188,64,52,.08);}
.dap-verdict b{color:var(--safe);font-weight:800;}
.dap-verdict.is-over b{color:var(--live);}
.dap-warn{margin-top:11px;padding:12px 15px;border-radius:10px;background:rgba(217,164,37,.10);border:1px solid rgba(217,164,37,.32);font-size:12px;line-height:1.75;color:var(--sub);}
.dap-warn b{color:#8a6410;}

.dap-scroll{overflow-x:auto;margin-top:14px;border-radius:var(--r-sm);box-shadow:var(--shadow-sm);}
.dap-table{width:100%;min-width:560px;border-collapse:collapse;background:var(--card);border:1px solid var(--line);}
.dap-table th,.dap-table td{padding:11px 14px;font-size:12px;line-height:1.7;text-align:left;border-bottom:1px solid var(--line2);}
.dap-table thead th{font-size:10.5px;font-weight:800;color:var(--steel-d);background:var(--card2);letter-spacing:.04em;}
.dap-table tbody tr:last-child td{border-bottom:0;}
.dap-table td:nth-child(2),.dap-table td:nth-child(3){font-family:var(--num,"Bahnschrift",monospace);font-weight:700;white-space:nowrap;}
.dap-pct-bar{display:inline-block;vertical-align:middle;width:72px;height:7px;border-radius:99px;background:var(--line2);margin-right:7px;overflow:hidden;}
.dap-pct-bar i{display:block;height:100%;background:var(--hazard);border-radius:99px;}

/* 限额 */
.dap-limits{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;}
.dap-limit{background:var(--card);border:1px solid var(--line);border-top:4px solid var(--steel);border-radius:var(--r-sm);padding:15px 17px;box-shadow:var(--shadow-sm);}
.dap-limit b{display:block;font:800 20px/1 var(--num,"Bahnschrift",monospace);color:var(--hazard);}
.dap-limit span{display:block;font-size:11.5px;font-weight:800;color:var(--ink);margin-top:5px;}
.dap-limit p{margin:5px 0 0;font-size:11.5px;line-height:1.7;color:var(--sub);}

/* 排查步骤 */
.dap-steps{list-style:none;margin:0;padding:0;display:grid;gap:8px;}
.dap-steps li{display:grid;grid-template-columns:48px 1fr;gap:14px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm);padding:14px 18px;box-shadow:var(--shadow-sm);}
.dap-s-no{font:800 13px/1 var(--num,"Bahnschrift",monospace);color:#221a06;background:var(--hazard);border-radius:7px;padding:8px 0;text-align:center;}
.dap-steps b{font-size:12.5px;font-weight:800;color:var(--ink);}
.dap-steps p{margin:4px 0 0;font-size:11.5px;line-height:1.75;color:var(--sub);}

/* 替代方案 */
.dap-alt{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;}
.dap-alt-item{background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm);padding:15px 17px;box-shadow:var(--shadow-sm);position:relative;padding-left:19px;}
.dap-alt-item::before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:4px;border-radius:99px;background:var(--safe);}
.dap-alt-item b{font-size:12.5px;font-weight:800;color:var(--ink);}
.dap-alt-item p{margin:5px 0 0;font-size:11.5px;line-height:1.75;color:var(--sub);}

@media (max-width:960px){
  .dap-hero{grid-template-columns:1fr;gap:22px;}
  .dap-apps{max-height:300px;}
}
