/* AI新闻播报 · 生成设置（V2 分组布局）
   作用域全部限定在 .news-set（即 #newsSetCard），NEWS_PANEL_V2=false 时不影响任何东西。
   目标：父项在前、从属项在后；列表默认折叠；生成按钮吸底。 */

/* .card 默认 overflow:hidden，会让内部 sticky 失效；这块卡片本身没有需要裁切的内容 */
.news-set{overflow:visible}

.news-set .ns-block{border-top:1px solid #eef2f7;padding-top:12px;margin-top:12px}
.news-set .ns-block.ns-first{border-top:0;padding-top:0;margin-top:2px}

.news-set .ns-head{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;color:#0f172a;margin:0 0 8px;line-height:1.4}
.news-set .ns-step{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex:0 0 16px;border-radius:50%;background:#eef2ff;color:#3730a3;font-size:10px;font-weight:700}

.news-set .ns-label{font-size:12px;color:#86868b;margin:2px 0 6px;line-height:1.4}
.news-set .ns-input{width:100%;margin:0 0 8px}
.news-set .ns-row{display:flex;align-items:center;gap:8px;margin:6px 0 6px}
.news-set .ns-row>select{flex:1 1 auto;min-width:0;margin:0}
.news-set .ns-row>.ns-label{margin:0;flex:1 1 auto}
.news-set .ns-row>.btn{flex:0 0 auto}

.news-set .ns-seg{display:flex;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:9px;padding:2px;margin:0 0 10px}
.news-set .ns-seg-btn{flex:1 1 0;border:0;background:transparent;color:#475569;font-size:12px;font-weight:600;padding:6px 4px;border-radius:7px;cursor:pointer;transition:all .12s}
.news-set .ns-seg-btn.active{background:#fff;color:#0f172a;box-shadow:0 1px 2px rgba(15,23,42,.14)}
.news-set .ns-seg-btn:focus-visible{outline:2px solid #bfdbfe;outline-offset:1px}

.news-set .ns-check{display:flex;align-items:center;gap:6px;font-size:12px;margin:2px 0 8px;line-height:1.4}
.news-set .ns-check input{width:auto}

.news-set .ns-hint{font-size:11px;line-height:1.6;color:#64748b;background:#f8fafc;border:1px solid #eef2f7;border-radius:8px;padding:6px 8px;margin:0 0 8px}
.news-set .ns-cost{font-size:11.5px;line-height:1.6;color:#0f172a;background:#eff6ff;border:1px solid #dbeafe;border-radius:8px;padding:6px 8px;margin:0 0 8px}
.news-set .ns-warn{font-size:11px;line-height:1.6;color:#b45309;background:#fff7ed;border:1px solid rgba(234,88,12,.22);border-radius:8px;padding:6px 8px;margin:6px 0 0}

.news-set .ns-toggle{cursor:pointer;user-select:none;margin:0}
.news-set .ns-sum{margin-left:auto;font-size:11px;font-weight:500;color:#64748b;max-width:132px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.news-set .ns-chev{font-size:10px;color:#94a3b8;line-height:1;transition:transform .15s;flex:0 0 auto}
.news-set .ns-block.ns-collapsed .ns-chev{transform:rotate(-90deg)}
.news-set .ns-block.ns-collapsed .ns-body{display:none}
.news-set .ns-body{padding-top:8px}

.news-set .ns-footer{position:sticky;bottom:0;margin:12px -14px -14px;padding:10px 14px 12px;background:#fff;border-top:1px solid #eef2f7;border-radius:0 0 15px 15px;box-shadow:0 -6px 12px -8px rgba(15,23,42,.18);z-index:5}

/* 主播开场：素材库形象卡片（选「使用主播形象」后直接铺开） */
.news-set .ns-avatar-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 8px}
.news-set .ns-avatar-card{position:relative;display:block;width:100%;padding:0;border:2px solid #e2e8f0;border-radius:10px;background:#fff;cursor:pointer;overflow:hidden;text-align:left;transition:border-color .12s,box-shadow .12s}
.news-set .ns-avatar-card:hover{border-color:#bfdbfe}
.news-set .ns-avatar-card.active{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.12)}
.news-set .ns-avatar-card img,.news-set .ns-avatar-card video,.news-set .ns-avatar-ph{display:block;width:100%;height:84px;object-fit:cover;background:#0f172a}
.news-set .ns-avatar-name{display:block;padding:5px 7px;font-size:11px;line-height:1.35;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.news-set .ns-avatar-check{position:absolute;top:4px;right:4px;width:16px;height:16px;border-radius:50%;background:#2563eb;color:#fff;font-size:10px;line-height:16px;text-align:center;display:none}
.news-set .ns-avatar-card.active .ns-avatar-check{display:block}
.news-set .ns-avatar-empty{grid-column:1/-1;font-size:11px;line-height:1.7;color:#64748b;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:10px;padding:12px;text-align:center}
.news-set .ns-avatar-empty .btn{margin-top:8px}
