.kis-strategy-root{display:block;color:#d8e0f0}
.kis-section{margin-bottom:14px;scroll-margin-top:72px}
.kis-sticky-nav{
  position:sticky;top:0;z-index:25;display:flex;gap:8px;
  overflow-x:auto;overflow-y:hidden;white-space:nowrap;
  padding:10px 0 12px;
  background:linear-gradient(180deg,rgba(10,14,20,.96),rgba(10,14,20,.82));
  backdrop-filter:blur(8px)
}
.kis-chip{
  flex:0 0 auto;padding:8px 12px;border-radius:999px;text-decoration:none;
  color:#c9d3e8;border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.03)
}
.kis-chip.active{background:rgba(96,165,250,.18);border-color:rgba(96,165,250,.45);color:#fff}
.kis-toolbar-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-top:12px}
.kis-control{display:flex;flex-direction:column;gap:6px}
.kis-control label{font-size:12px;color:#93a2c7}
.kis-control input,.kis-control select,.kis-form input,.kis-form textarea{
  width:100%;min-height:42px;border-radius:12px;
  border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);
  color:#e6eefc;padding:10px 12px;box-sizing:border-box
}
.kis-form textarea{min-height:88px;resize:vertical}
.kis-btns{display:grid;grid-template-columns:1fr;gap:8px}
.kis-btn{
  min-height:42px;border-radius:12px;border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.04);color:#e8eefc;padding:10px 12px;cursor:pointer
}
.kis-btn.primary{
  background:linear-gradient(135deg,rgba(37,99,235,.92),rgba(14,165,233,.92));
  border-color:rgba(96,165,250,.48);color:#fff
}
.kis-btn:disabled{opacity:.55;cursor:not-allowed}
.kis-metrics,.kis-indicators,.kis-reasons,.kis-exec{display:grid;gap:12px}
.kis-metrics{grid-template-columns:repeat(2,1fr);margin-top:14px}
.kis-metric,.kis-card,.kis-signal-main,.kis-signal-side,.kis-form,.kis-side{
  background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);
  border-radius:16px;padding:14px;box-sizing:border-box
}
.kis-label{font-size:12px;color:#8ea0c4}
.kis-muted{font-size:13px;color:#93a2c7}
.kis-summary{display:grid;grid-template-columns:1fr;gap:12px}
.kis-signal-badge,.kis-badge{
  display:inline-flex;align-items:center;justify-content:center;min-width:70px;
  padding:7px 14px;border-radius:999px;font-weight:800
}
.kis-buy{color:#6ee7b7;background:rgba(52,211,153,.16);border:1px solid rgba(52,211,153,.34)}
.kis-sell{color:#fca5a5;background:rgba(248,113,113,.16);border:1px solid rgba(248,113,113,.34)}
.kis-hold{color:#fcd34d;background:rgba(251,191,36,.16);border:1px solid rgba(251,191,36,.34)}
.kis-neutral{color:#e2e8f0;background:rgba(203,213,225,.12);border:1px solid rgba(203,213,225,.24)}
.kis-signal-main{display:flex;flex-direction:column;gap:12px}
.kis-kv,.kis-row,.kis-progress-row{display:flex;align-items:center;justify-content:space-between;gap:10px}
.kis-progress{position:relative;flex:1;height:8px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}
.kis-progress>span{display:block;height:100%;background:linear-gradient(90deg,#60a5fa,#34d399)}
.kis-indicators{grid-template-columns:repeat(2,1fr)}
.kis-chart-tools{display:flex;gap:8px;margin-bottom:12px;overflow-x:auto;white-space:nowrap}
.kis-pbtn{
  flex:0 0 auto;min-height:36px;padding:8px 12px;border-radius:999px;
  border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);color:#dce6fa;cursor:pointer
}
.kis-pbtn.active{background:rgba(96,165,250,.18);border-color:rgba(96,165,250,.44)}
.kis-chart{min-height:320px;border-radius:16px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.02);overflow:hidden}
.kis-chart-table{width:100%;border-collapse:collapse;min-width:420px}
.kis-chart-table th,.kis-chart-table td{padding:10px 8px;border-bottom:1px solid rgba(255,255,255,.08);text-align:right}
.kis-chart-table th:first-child,.kis-chart-table td:first-child{text-align:left}
.kis-reasons{grid-template-columns:1fr}
.kis-exec{grid-template-columns:1fr}
.kis-empty,.kis-err,.kis-load{
  border-radius:14px;padding:14px;box-sizing:border-box
}
.kis-empty,.kis-load{
  background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);color:#c7d2e8
}
.kis-err{
  background:rgba(248,113,113,.08);border:1px solid rgba(248,113,113,.28);color:#fecaca
}
@media (min-width:768px){
  .kis-toolbar-grid{grid-template-columns:repeat(4,1fr)}
  .kis-btns{grid-column:1 / -1;grid-template-columns:repeat(3,max-content);justify-content:flex-start}
  .kis-metrics{grid-template-columns:repeat(4,1fr)}
  .kis-summary{grid-template-columns:1.15fr .85fr}
  .kis-indicators{grid-template-columns:repeat(3,1fr)}
  .kis-reasons{grid-template-columns:repeat(3,1fr)}
  .kis-exec{grid-template-columns:1.2fr .8fr}
}

/* === 2026-05-08 : preset list visibility + aggregate signal table === */

/* 닫힌 select 본문 */
.kis-strategy-root select,
.kis-strategy-root .kis-select {
  color: #f3f6fb;
}

/* 펼쳐진 목록(option) 가독성 개선 */
.kis-strategy-root select option {
  color: #111111 !important;
  background: #ffffff !important;
}

/* 일부 브라우저용 */
.kis-strategy-root select optgroup {
  color: #111111 !important;
  background: #f3f4f6 !important;
  font-weight: 700;
}

/* 종합 시그널 섹션 */
.kis-strategy-root .st-agg-card {
  margin-top: 16px;
  padding: 16px;
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 16px;
  background: rgba(255,255,255,0.03);
}

.kis-strategy-root .st-agg-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.kis-strategy-root .st-agg-title {
  margin: 0;
  font-size: 20px;
  font-weight: 800;
  color: #f8fafc;
}

.kis-strategy-root .st-agg-summary-line {
  margin-top: 6px;
  font-size: 14px;
  line-height: 1.5;
  color: #cbd5e1;
}

.kis-strategy-root .st-agg-toggle {
  min-width: 72px;
  height: 36px;
  padding: 0 14px;
  border: 1px solid rgba(59,130,246,0.35);
  border-radius: 999px;
  background: rgba(37,99,235,0.18);
  color: #dbeafe;
  font-weight: 700;
  cursor: pointer;
}

.kis-strategy-root .st-agg-toggle:hover {
  background: rgba(37,99,235,0.28);
}

.kis-strategy-root .st-agg-table-wrap {
  overflow: hidden;
  transition: all .18s ease;
}

.kis-strategy-root .st-agg-table-wrap.is-closed {
  display: none;
}

.kis-strategy-root .st-agg-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}

.kis-strategy-root .st-agg-table thead th {
  padding: 10px 8px;
  text-align: left;
  font-size: 13px;
  font-weight: 800;
  color: #cbd5e1;
  border-bottom: 1px solid rgba(255,255,255,0.10);
}

.kis-strategy-root .st-agg-table tbody td {
  padding: 10px 8px;
  font-size: 13px;
  color: #e5e7eb;
  border-bottom: 1px solid rgba(255,255,255,0.06);
  vertical-align: top;
  word-break: break-word;
}

.kis-strategy-root .st-act-buy {
  color: #22c55e;
  font-weight: 800;
}

.kis-strategy-root .st-act-hold {
  color: #f59e0b;
  font-weight: 800;
}

.kis-strategy-root .st-act-sell {
  color: #ef4444;
  font-weight: 800;
}

@media (max-width: 768px) {
  .kis-strategy-root .st-agg-head {
    flex-direction: column;
    align-items: stretch;
  }

  .kis-strategy-root .st-agg-toggle {
    width: 100%;
  }

  .kis-strategy-root .st-agg-table {
    font-size: 12px;
  }
}

