/* ====== 151 独居生活成本 · 城市夜蓝 + 暖灯橙 + 户型图 ====== */
.tsk.slc{
  --tsk-bg:#f2f4f8;
  --tsk-card:#ffffff;
  --tsk-card-2:#f6f8fb;
  --tsk-ink:#1e293b;
  --tsk-sub:#54637a;
  --tsk-faint:#8394aa;
  --tsk-line:#dfe5ee;
  --tsk-line-2:#edf1f7;
  --tsk-brand:#334155;
  --tsk-brand-2:#1e293b;
  --tsk-brand-soft:#e6eaf1;
  --tsk-brand-ink:#1e293b;
  --slc-lamp:#f59e0b;
  --slc-lamp-soft:rgba(245,158,11,.13);
  --slc-lamp-ink:#b45309;
  background:
    radial-gradient(720px 320px at 102% -10%, rgba(245,158,11,.13), transparent 62%),
    radial-gradient(560px 260px at -4% 8%, rgba(51,65,85,.08), transparent 60%),
    var(--tsk-bg);
}
:root[data-theme="dark"] .tsk.slc{
  --tsk-bg:#0e1420;
  --tsk-card:#16202f;
  --tsk-card-2:#1b2739;
  --tsk-ink:#e6edf7;
  --tsk-sub:#a9b8ca;
  --tsk-faint:#7d8ea3;
  --tsk-line:#26344a;
  --tsk-line-2:#1f2b3d;
  --tsk-brand:#94a3b8;
  --tsk-brand-2:#cbd5e1;
  --tsk-brand-soft:rgba(148,163,184,.14);
  --tsk-brand-ink:#cbd5e1;
  --slc-lamp:#fbbf24;
  --slc-lamp-soft:rgba(251,191,36,.14);
  --slc-lamp-ink:#fcd34d;
}

/* ---- 首屏 ---- */
.slc-hero{display:grid;grid-template-columns:minmax(0,1fr) 394px;gap:30px;padding:30px 0 24px;align-items:stretch;}
.slc-hero-l{display:flex;flex-direction:column;}
.slc-hero-l>.tsk-hs{flex:1 1 auto;}
.slc-hero-r{align-self:start;}
.slc-hero-l .tsk-h1 b{color:var(--slc-lamp-ink);}

/* 租房账单 / 户型图 */
.slc-bill{align-self:start;background:var(--tsk-card);border:1px solid var(--tsk-line);border-radius:16px;box-shadow:0 18px 40px rgba(30,41,59,.10);overflow:hidden;}
.slc-bill-top{display:flex;align-items:center;gap:12px;padding:13px 18px 12px;background:linear-gradient(135deg,#334155,#1e293b);}
.slc-floor{position:relative;width:42px;height:38px;flex:0 0 42px;border:1px solid rgba(255,255,255,.3);border-radius:4px;background:rgba(255,255,255,.04);}
.slc-floor i{position:absolute;border:1px solid rgba(255,255,255,.28);border-radius:2px;}
.slc-room-a{left:2px;top:2px;width:20px;height:15px;background:rgba(245,158,11,.32);border-color:rgba(245,158,11,.55)!important;}
.slc-room-b{right:2px;top:2px;width:14px;height:15px;}
.slc-room-c{left:2px;bottom:2px;width:12px;height:17px;}
.slc-room-d{right:2px;bottom:2px;width:22px;height:17px;}
.slc-bill-top>div>b{display:block;font-size:12.5px;font-weight:800;color:#f1f5f9;letter-spacing:.03em;}
.slc-bill-top>div>small{display:block;margin-top:2px;font:700 9px/1 var(--tsk-num);letter-spacing:.16em;color:rgba(241,245,249,.5);}
.slc-bill-no{margin-left:auto;font:700 10px/1 var(--tsk-num);letter-spacing:.14em;color:var(--slc-lamp);}
.slc-bill-body{padding:8px 20px 18px;}
.slc-bill-body label{display:block;margin:11px 0 5px;font-size:11.5px;font-weight:800;color:var(--tsk-sub);}
.slc-bill-body input,.slc-bill-body select{width:100%;height:36px;padding:0 11px;border:1px solid var(--tsk-line);border-radius:9px;background:var(--tsk-card-2);color:var(--tsk-ink);font:700 13.5px/36px var(--tsk-num);outline:none;transition:border-color .16s,box-shadow .16s;}
.slc-bill-body select{font-family:var(--tsk-font);font-weight:700;font-size:13px;}
.slc-bill-body input:focus,.slc-bill-body select:focus{border-color:var(--slc-lamp);box-shadow:0 0 0 3px var(--slc-lamp-soft);}
.slc-row2{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.slc-bill .tsk-btn-main{width:100%;margin-top:16px;background:linear-gradient(135deg,#334155,#0f172a);color:#fff;box-shadow:0 10px 22px rgba(15,23,42,.22);}
.slc-bill .tsk-btn-main:hover{color:#fff;}
.slc-bill-foot{margin-top:10px;font-size:10.5px;line-height:1.7;color:var(--tsk-faint);}

/* ---- 结果 ---- */
.slc-result{margin:4px 0 26px;background:var(--tsk-card);border:1px solid var(--tsk-line);border-radius:16px;box-shadow:var(--tsk-shadow);padding:22px 24px;}
.slc-res-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(158px,1fr));gap:11px;}
.slc-res-card{background:var(--tsk-card-2);border:1px solid var(--tsk-line-2);border-radius:11px;padding:15px 17px;position:relative;overflow:hidden;}
.slc-res-card::after{content:"";position:absolute;right:13px;top:13px;width:9px;height:9px;border-radius:50%;background:var(--slc-lamp-soft);box-shadow:0 0 0 4px rgba(245,158,11,.06);}
.slc-res-card b{display:block;font:800 25px/1.15 var(--tsk-num);color:var(--tsk-ink);font-variant-numeric:tabular-nums;}
.slc-res-card span{display:block;margin-top:5px;font-size:11.5px;font-weight:700;color:var(--tsk-faint);}
.slc-res-card i{display:block;margin-top:3px;font-style:normal;font-size:10.5px;color:var(--tsk-sub);}
.slc-res-card.slc-main{background:linear-gradient(135deg,#334155,#1e293b);border-color:transparent;}
.slc-res-card.slc-main b{color:#fff;}
.slc-res-card.slc-main span,.slc-res-card.slc-main i{color:rgba(255,255,255,.8);}
.slc-res-card.slc-main::after{background:rgba(245,158,11,.9);box-shadow:0 0 0 4px rgba(245,158,11,.18);}

.slc-bars{margin-top:13px;padding:14px 16px;background:var(--tsk-card-2);border:1px solid var(--tsk-line-2);border-radius:11px;display:flex;flex-direction:column;gap:9px;}
.slc-bar-row{display:grid;grid-template-columns:78px minmax(0,1fr) 62px;gap:10px;align-items:center;}
.slc-bar-row>span{font-size:12px;font-weight:700;color:var(--tsk-sub);}
.slc-bar-track{display:block;height:8px;border-radius:99px;background:var(--tsk-line-2);overflow:hidden;}
.slc-bar-fill{display:block;height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,#475569,#94a3b8);transition:width .45s ease;}
.slc-bar-fill.is-hot{background:linear-gradient(90deg,#f59e0b,#fbbf24);}
.slc-bar-row>em{font-style:normal;font:800 11.5px/1 var(--tsk-num);color:var(--tsk-ink);text-align:right;}

.slc-alert{margin-top:13px;padding:12px 14px;border-radius:10px;background:var(--tsk-brand-soft);border:1px solid rgba(51,65,85,.16);font-size:12.5px;line-height:1.85;color:var(--tsk-sub);}
.slc-alert b{color:var(--tsk-brand-ink);}
.slc-alert.is-warn{background:var(--tsk-bad-soft,#fdecec);border-color:rgba(224,49,49,.24);}
.slc-alert.is-warn b{color:var(--tsk-bad,#e03131);}
.slc-plan{margin-top:14px;overflow-x:auto;border-radius:11px;border:1px solid var(--tsk-line);}
.slc-copy{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px;padding:11px 14px;border:1px dashed var(--tsk-line);border-radius:10px;background:var(--tsk-card-2);}
.slc-copy span{flex:1 1 240px;font-size:12px;line-height:1.75;color:var(--tsk-sub);}

/* ---- 表格 ---- */
.slc-scroll{overflow-x:auto;border-radius:11px;box-shadow:var(--tsk-shadow-sm);}
.slc-table{width:100%;min-width:560px;border-collapse:collapse;background:var(--tsk-card);}
.slc-table.is-wide{border:1px solid var(--tsk-line);}
.slc-table.is-cities{min-width:860px;}
.slc-table th,.slc-table td{padding:10px 12px;font-size:12.5px;line-height:1.7;border-bottom:1px solid var(--tsk-line-2);text-align:left;}
.slc-table thead th{background:var(--tsk-card-2);font-size:11px;font-weight:800;color:var(--tsk-brand-ink);letter-spacing:.03em;white-space:nowrap;}
.slc-table tbody tr:last-child td{border-bottom:0;}
.slc-table tbody tr:hover td{background:var(--tsk-card-2);}
.slc-strong{font-weight:800;color:var(--tsk-ink);}
.slc-tag{display:inline-block;padding:2px 9px;border-radius:99px;background:var(--slc-lamp-soft);color:var(--slc-lamp-ink);font:800 11.5px/1.7 var(--tsk-num);}
.slc-note{margin-top:10px;font-size:12px;line-height:1.8;color:var(--tsk-faint);}

/* ---- 规则 / 清单 / 风险 ---- */
.slc-rules{display:grid;grid-template-columns:repeat(auto-fit,minmax(258px,1fr));gap:10px;}
.slc-rule{display:grid;grid-template-columns:30px 1fr;gap:12px;padding:16px 18px;background:var(--tsk-card);border:1px solid var(--tsk-line);border-radius:11px;box-shadow:var(--tsk-shadow-sm);}
.slc-rule>span{width:30px;height:30px;border-radius:8px;background:var(--slc-lamp-soft);color:var(--slc-lamp-ink);font:800 13px/30px var(--tsk-num);text-align:center;}
.slc-rule b{font-size:13px;font-weight:800;color:var(--tsk-ink);}
.slc-rule p{margin:5px 0 0;font-size:12px;line-height:1.8;color:var(--tsk-sub);}

.slc-list{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(278px,1fr));gap:8px;}
.slc-list li{position:relative;padding:12px 15px 12px 34px;background:var(--tsk-card);border:1px solid var(--tsk-line);border-radius:10px;font-size:12.5px;line-height:1.78;color:var(--tsk-sub);}
.slc-list li::before{content:"¥";position:absolute;left:13px;top:11px;color:var(--slc-lamp-ink);font-weight:800;}

.slc-risk{display:grid;grid-template-columns:repeat(auto-fit,minmax(238px,1fr));gap:10px;}
.slc-risk-card{padding:15px 17px;background:var(--tsk-card);border:1px solid var(--tsk-line);border-left:3px solid var(--slc-lamp);border-radius:4px 10px 10px 4px;box-shadow:var(--tsk-shadow-sm);}
.slc-risk-card b{font-size:13px;font-weight:800;color:var(--tsk-ink);}
.slc-risk-card p{margin:5px 0 0;font-size:12px;line-height:1.8;color:var(--tsk-sub);}

@media (max-width:900px){
  .slc-hero{grid-template-columns:1fr;gap:22px;}
  .slc-bill,.slc-hero-r{align-self:stretch;}
}
@media (max-width:560px){
  .slc-res-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .slc-res-card b{font-size:22px;}
  .slc-bar-row{grid-template-columns:64px minmax(0,1fr) 48px;}
}
