:root {
  --brand:#1e6df1;
  --green:#1aa674;
  --text:#1b1f2a;
  --muted:#6c7a91;
  --card:#fff;
  --bg:#f3f6fb;
  --border:#e7ebf3;
  scrollbar-gutter: stable both-edges;
}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;background:var(--bg);color:var(--text);overflow-y:scroll}
button,
input,
select,
textarea{font-family:inherit}

.container{max-width:720px;margin:0 auto;padding:12px}
.header{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.header h1{font-size:18px;margin:0}
.search{margin-bottom:8px}
.search input{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:12px;font-size:14px}

.list{display:grid;gap:10px}

.card{background:var(--card);border-radius:14px;padding:6px 10px;box-shadow:0 1px 3px rgba(0,0,0,0.05);transition:box-shadow .2s ease}
.card:hover{box-shadow:0 3px 10px rgba(0,0,0,0.08)}

.top{display:flex;align-items:flex-start;gap:12px}
.date{width:50px;text-align:center;color:#ef4444;font-weight:800;line-height:1.05}
.date .d{font-size:20px}
.date .m{font-size:12px;color:#ef4444}

.title{flex:1;min-width:0}
.title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.title .issuer{
  color:var(--text);font-weight:800;letter-spacing:.2px;font-size:16px;
  /* основной фикс: разрешаем переносы названия */
  white-space:normal; overflow:visible; text-overflow:clip; word-break:break-word;
}

/* Рейтинг — на уровне названия */
.rating-badge{font-weight:800;font-size:14px;line-height:1;color:#f59e0b;white-space:nowrap}

/* Вторая строка: доходность/срок слева, звезды справа */
.row2{display:flex;align-items:center;justify-content:space-between;margin-top:4px;gap:8px}
.meta{color:var(--green);font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:15px}
.meta small{color:var(--muted);font-weight:600;margin-left:6px}

/* справа — звёзды и треугольник в одну линию */
.rightcol{display:flex;align-items:center;gap:6px}

/* звёзды */
.stars{position:relative;display:inline-block;line-height:1;font-size:18px}
.stars .base{color:#d1d5db}
.stars .fill{position:absolute;inset:0;overflow:hidden;color:#f5b301;width:0%}

/* треугольник */
.toggle{
  width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:10px solid #c4c7cf;
  filter:drop-shadow(0 1px 1px rgba(0,0,0,.06));transition:transform .15s ease;cursor:pointer;
}
.card .toggle:hover{ transform: translateY(-2px) scale(1.06); filter:drop-shadow(0 2px 2px rgba(0,0,0,.08)); }
.card.open .toggle{ transform:rotate(180deg); }

/* детали */
.details{
  border-top:1px dashed var(--border);
  margin-top:6px; padding-top:6px;
  max-height:0; overflow:hidden;
  transition:max-height .25s ease;
}
.card.open .details{max-height:1200px}

.kv{display:grid;grid-template-columns:130px 1fr;gap:6px 10px;font-size:14px}
.kv .k{color:var(--muted)}

/* Доп.информация — аккуратные переносы */
.extra{ white-space:pre-wrap; overflow-wrap:anywhere; word-break:break-word; }

.empty{color:#9ca3af;text-align:center;margin-top:40px}
