/* ====== 141 追星应援年度预算 · 奶油粉票根 + 应援荧光棒 ====== */
.tsk.idb{
  --tsk-bg:#fdf1f5;
  --tsk-card:#fffafc;
  --tsk-card-2:#fdf4f8;
  --tsk-ink:#3a1f2b;
  --tsk-sub:#74505f;
  --tsk-faint:#a5808e;
  --tsk-line:#f0d5e0;
  --tsk-line-2:#f8e6ee;
  --tsk-brand:#d6336c;
  --tsk-brand-2:#f0659b;
  --tsk-brand-soft:#fbe4ee;
  --tsk-brand-ink:#b02455;
  --tsk-violet:#7c3aed;
  --tsk-violet-soft:#f0e9fe;
  --tsk-red:#c02a4d;
  --tsk-red-soft:#fbe3e9;
  background:
    radial-gradient(680px 340px at 96% -8%, rgba(124,58,237,.10), transparent 62%),
    radial-gradient(560px 280px at -6% 8%, rgba(214,51,108,.10), transparent 60%),
    radial-gradient(circle at 18% 88%, rgba(240,101,155,.07) 0 3px, transparent 4px) 0 0/26px 26px,
    var(--tsk-bg);
}
:root[data-theme="dark"] .tsk.idb{
  --tsk-bg:#1a1016;
  --tsk-card:#241620;
  --tsk-card-2:#2c1b26;
  --tsk-ink:#fbeaf1;
  --tsk-sub:#d0a9ba;
  --tsk-faint:#9e7a8a;
  --tsk-line:#432636;
  --tsk-line-2:#371f2d;
  --tsk-brand:#f472b6;
  --tsk-brand-2:#f9a8d4;
  --tsk-brand-soft:rgba(244,114,182,.14);
  --tsk-brand-ink:#f9a8d4;
  --tsk-violet:#c4b5fd;
  --tsk-violet-soft:rgba(196,181,253,.13);
  --tsk-red:#fb7185;
  --tsk-red-soft:rgba(251,113,133,.13);
  background:
    radial-gradient(680px 340px at 96% -8%, rgba(196,181,253,.08), transparent 62%),
    radial-gradient(560px 280px at -6% 8%, rgba(244,114,182,.09), transparent 60%),
    var(--tsk-bg);
}

.idb-hero{display:grid;grid-template-columns:minmax(0,1fr) 394px;gap:30px;padding:30px 0 24px;align-items:stretch;}
.idb-hero-l{display:flex;flex-direction:column;}
.idb-hero-l>.tsk-hs{flex:1 1 auto;}
.idb-hero-l .tsk-h1 b{color:var(--tsk-brand-ink);}
.idb-hero-l .tsk-chips span{border-color:rgba(214,51,108,.24);background:var(--tsk-card);}

/* 票根卡 */
.idb-stub{align-self:start;position:relative;background:var(--tsk-card);border:1px solid var(--tsk-line);border-radius:14px;box-shadow:var(--tsk-shadow);overflow:hidden;}
.idb-stub::before{content:"";position:absolute;left:-8px;top:58%;width:16px;height:16px;border-radius:50%;background:var(--tsk-bg);border:1px solid var(--tsk-line);}
.idb-stub::after{content:"";position:absolute;right:-8px;top:58%;width:16px;height:16px;border-radius:50%;background:var(--tsk-bg);border:1px solid var(--tsk-line);}
.idb-stub-top{display:flex;justify-content:space-between;align-items:center;padding:14px 20px 12px;background:linear-gradient(100deg,rgba(214,51,108,.12),rgba(124,58,237,.12));border-bottom:1px dashed var(--tsk-line);}
.idb-stub-top span{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:800;color:var(--tsk-brand-ink);letter-spacing:.05em;}
.idb-stub-top span::before{content:"";width:6px;height:16px;border-radius:99px;background:linear-gradient(180deg,var(--tsk-brand),var(--tsk-violet));box-shadow:0 0 10px rgba(214,51,108,.45);}
.idb-stub-top i{font-style:normal;font:700 10px/1 var(--tsk-num);letter-spacing:.15em;color:var(--tsk-faint);}
.idb-stub-body{padding:10px 20px 18px;}
.idb-stub-body label{display:block;margin:11px 0 5px;font-size:11.5px;font-weight:800;color:var(--tsk-sub);letter-spacing:.02em;}
.idb-stub-body input{width:100%;height:37px;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/37px var(--tsk-num);outline:none;transition:border-color .16s,box-shadow .16s;}
.idb-stub-body input:focus{border-color:var(--tsk-brand);box-shadow:0 0 0 3px var(--tsk-brand-soft);}
.idb-row2{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.idb-stub .tsk-btn-main{width:100%;margin-top:16px;background:linear-gradient(120deg,var(--tsk-brand),var(--tsk-violet));color:#fff;border-radius:9px;box-shadow:0 4px 14px rgba(214,51,108,.22);}
.idb-stub-foot{margin-top:10px;font-size:10.5px;line-height:1.7;color:var(--tsk-faint);}
.idb-msg{margin-top:10px;padding:8px 11px;border-radius:7px;background:var(--tsk-red-soft);color:var(--tsk-red);font-size:11.5px;line-height:1.65;font-weight:700;}

/* 结果 */
.idb-result{margin:4px 0 26px;background:var(--tsk-card);border:1px solid var(--tsk-line);border-radius:16px;box-shadow:var(--tsk-shadow);padding:20px 22px;}
.idb-res-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(158px,1fr));gap:11px;}
.idb-res-card{position:relative;background:var(--tsk-card-2);border:1px solid var(--tsk-line-2);border-radius:10px;padding:15px 17px;overflow:hidden;}
.idb-res-card::before{content:"";position:absolute;left:12px;right:12px;top:0;height:2px;background:repeating-linear-gradient(90deg,var(--tsk-brand) 0 5px,transparent 5px 10px);opacity:.4;}
.idb-res-card b{display:block;font:800 25px/1.15 var(--tsk-num);color:var(--tsk-ink);font-variant-numeric:tabular-nums;}
.idb-res-card span{display:block;margin-top:5px;font-size:11.5px;font-weight:700;color:var(--tsk-faint);}
.idb-res-card i{display:block;margin-top:3px;font-style:normal;font-size:10.5px;color:var(--tsk-sub);}
.idb-res-card.idb-main{background:linear-gradient(135deg,var(--tsk-brand-soft),var(--tsk-violet-soft));border-color:rgba(214,51,108,.22);}
.idb-res-card.idb-main b{color:var(--tsk-brand-ink);}
#idbRatio.is-high{color:var(--tsk-red);}

.idb-bars-wrap{margin-top:18px;}
.idb-res-sub{margin:0 0 10px;font-size:12px;font-weight:800;color:var(--tsk-sub);letter-spacing:.05em;}
.idb-bars{display:grid;gap:8px;}
.idb-bar-row{display:grid;grid-template-columns:66px minmax(0,1fr) 116px;gap:10px;align-items:center;}
.idb-bar-name{font-size:12px;font-weight:700;color:var(--tsk-ink);}
.idb-bar-track{position:relative;height:12px;border-radius:99px;background:var(--tsk-line-2);overflow:hidden;}
.idb-bar-fill{position:absolute;left:0;top:0;bottom:0;border-radius:99px;background:linear-gradient(90deg,var(--tsk-brand),var(--tsk-violet));transition:width .45s ease;}
.idb-bar-fill.b1{background:linear-gradient(90deg,#e0528a,#f472b6);}
.idb-bar-fill.b2{background:linear-gradient(90deg,#b04adb,#c4b5fd);}
.idb-bar-fill.b3{background:linear-gradient(90deg,#d6336c,#f9a8d4);}
.idb-bar-fill.b4{background:linear-gradient(90deg,#a855f7,#e879c9);}
.idb-bar-fill.b5{background:linear-gradient(90deg,#f0659b,#fbcfe8);}
.idb-bar-val{font:700 11px/1.4 var(--tsk-num);color:var(--tsk-sub);text-align:right;}

.idb-cuts{margin-top:16px;padding-top:14px;border-top:1px dashed var(--tsk-line);}
.idb-cuts ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px;}
.idb-cuts li{padding:11px 13px;border-radius:9px;background:var(--tsk-violet-soft);border:1px solid rgba(124,58,237,.18);font-size:11.5px;line-height:1.7;color:var(--tsk-sub);}
.idb-cuts li b{color:var(--tsk-violet);}

.idb-alert{margin-top:13px;padding:12px 14px;border-radius:9px;background:var(--tsk-brand-soft);border:1px solid rgba(214,51,108,.2);font-size:12px;line-height:1.8;color:var(--tsk-sub);}
.idb-alert b{color:var(--tsk-brand-ink);}
.idb-alert.is-warn{background:var(--tsk-red-soft);border-color:rgba(192,42,77,.24);}
.idb-alert.is-warn b{color:var(--tsk-red);}

.idb-copybar{display:flex;align-items:center;gap:12px;margin-top:13px;padding:10px 12px 10px 15px;border:1px dashed var(--tsk-line);border-left:3px solid var(--tsk-brand);border-radius:9px;background:var(--tsk-card-2);}
.idb-copybar span{flex:1;min-width:0;font-size:11.5px;line-height:1.75;color:var(--tsk-sub);}
.idb-copybar button{flex:none;padding:8px 14px;border:1px solid var(--tsk-brand);border-radius:7px;background:transparent;color:var(--tsk-brand-ink);font-size:11.5px;font-weight:800;cursor:pointer;transition:background .16s;}
.idb-copybar button:hover{background:var(--tsk-brand-soft);}

.idb-plan{margin-top:14px;overflow-x:auto;border-radius:10px;border:1px solid var(--tsk-line);}
.idb-scroll{overflow-x:auto;border-radius:10px;box-shadow:var(--tsk-shadow-sm);}
.idb-table{width:100%;min-width:540px;border-collapse:collapse;background:var(--tsk-card);}
.idb-table.is-wide{border:1px solid var(--tsk-line);}
.idb-table th,.idb-table td{padding:10px 14px;font-size:12.5px;line-height:1.7;border-bottom:1px solid var(--tsk-line-2);text-align:left;}
.idb-table thead th{background:var(--tsk-card-2);font-size:11px;font-weight:800;color:var(--tsk-brand-ink);letter-spacing:.05em;}
.idb-table tbody tr:last-child td{border-bottom:0;}
.idb-table tbody tr:hover td{background:var(--tsk-card-2);}
.idb-strong{font-weight:800;color:var(--tsk-ink);}
.idb-tag{display:inline-block;padding:2px 10px;border-radius:99px;background:var(--tsk-brand-soft);color:var(--tsk-brand-ink);font:800 11.5px/1.7 var(--tsk-num);}

.idb-rules{display:grid;grid-template-columns:repeat(auto-fit,minmax(252px,1fr));gap:10px;}
.idb-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:12px;box-shadow:var(--tsk-shadow-sm);}
.idb-rule>span{width:30px;height:30px;border-radius:50%;background:var(--tsk-brand-soft);color:var(--tsk-brand-ink);font:800 13px/30px var(--tsk-num);text-align:center;box-shadow:0 0 0 3px rgba(214,51,108,.08);}
.idb-rule b{font-size:13px;font-weight:800;color:var(--tsk-ink);}
.idb-rule p{margin:5px 0 0;font-size:12px;line-height:1.8;color:var(--tsk-sub);}

.idb-list{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(278px,1fr));gap:8px;}
.idb-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);}
.idb-list li::before{content:"";position:absolute;left:13px;top:14px;width:8px;height:8px;border-radius:50%;background:linear-gradient(135deg,var(--tsk-brand),var(--tsk-violet));box-shadow:0 0 8px rgba(214,51,108,.35);}

@media (max-width:900px){
  .idb-hero{grid-template-columns:1fr;gap:22px;}
  .idb-stub{align-self:stretch;}
  .idb-res-grid{grid-template-columns:1fr 1fr;}
  .idb-bar-row{grid-template-columns:60px minmax(0,1fr) 96px;}
  .idb-copybar{flex-direction:column;align-items:stretch;}
  .idb-copybar button{width:100%;}
}
@media (max-width:520px){
  .idb-res-grid{grid-template-columns:1fr;}
  .idb-bar-row{grid-template-columns:56px minmax(0,1fr);}
  .idb-bar-val{grid-column:2;text-align:left;}
}
