@charset "UTF-8";

:root {
  /* --- 레이아웃 --- */
  --ai-summary-max-width: 768px;
  --ai-summary-padding: 30px; /* 여백을 조금 더 줘서 쾌적하게 */
  --ai-summary-radius: 24px; /* 라운드 값을 높여 부드러운 인상 */
  
  /* --- 컬러 --- */
  --ai-summary-box-bg: #f3f7f9;
  --ai-summary-border: #e1e8ed;
  --ai-summary-title-color: #1a1c1e;
  --ai-summary-body-color: #3c4043;
  --ai-summary-accent: #1a73e8;
  
  --ai-summary-title-size: 18px;

  /* --- 폰트 --- */
  --ai-summary-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.ai-summary-title{
  font-size: var(--ai-summary-title-size);
  color: var(--ai-summary-title-color);
  margin-bottom: 20px;
}

.ai-summary-body {
  color: var(--ai-summary-body-color);
  background-color: var(--ai-summary-box-bg);
  border-radius: var(--ai-summary-radius);
  padding: var(--ai-summary-padding);
}

.ai-summary-body,
.ai-summary-body * {
	font-size: var(--font-ms);
	line-height: 1.6;
}

.ai-summary-body hr {
	margin-top:4rem;
	margin-bottom:4rem;
	background:var(--border-gray);
    height:1px;
    border:0;	
}

.ai-summary-body h2 {
	font-weight:600;
	font-size:var(--font-b);
	margin-bottom:1rem;
}

.ai-summary-body h3 {
	font-weight:600;
	font-size:var(--font-m);
	margin-bottom:1rem;
}

.summary-loading {
  display: flex;
  justify-content: flex-start;
  padding: 10px 0;
}

.ai-chat-spinner {
  width: 20px;
  height: 20px;
  border: 2px solid #edf2f5;
  border-top: 2px solid var(--ai-summary-accent);
  border-radius: 50%;
  animation: ai-spin 0.8s linear infinite;
}

@keyframes ai-spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}