.quote-import {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: end;
  padding: 14px;
  margin: 0 0 16px;
  border: 1px solid #cfe4f5;
  border-radius: 12px;
  background: #f3faff;
}
.quote-import label { margin: 0; }
.keychain-group {
  padding: 16px;
  margin-top: 14px;
  border: 1px solid #d8e5ef;
  border-radius: 14px;
  background: #f9fcff;
}
.keychain-group-head {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12px;
}
.keychain-name {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 110px auto;
  gap: 10px;
  align-items: end;
  margin-top: 10px;
}
.keychain-text-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.keychain-text-grid .full { grid-column: 1 / -1; }
.keychain-group small { color: #62708a; }
.keychain-actions { display: flex; gap: 8px; margin-top: 12px; }
.quote-history-summary {
  display: grid;
  grid-template-columns: auto auto 1fr;
  gap: 12px;
  align-items: center;
  padding: 14px;
  border-radius: 12px;
  background: #eef8ff;
  color: #28436c;
}
.quote-history-summary small { color: #62708a; }
@media (max-width: 720px) {
  .sidebar nav { grid-template-columns: repeat(6, 1fr); }
  .quote-import, .keychain-text-grid { grid-template-columns: 1fr; }
  .keychain-text-grid .full { grid-column: auto; }
  .keychain-name { grid-template-columns: 1fr 90px; }
  .keychain-name .remove-item { grid-column: 1 / -1; width: auto; }
  .quote-history-summary { grid-template-columns: 1fr; }
}
