/* 알고가기 툴 공통 스타일 — 모바일 우선, 워드프레스 테마와 충돌하지 않게 .agt- 접두사만 사용 */
.agt-mount {
  --agt-fg: #1f2937;
  --agt-muted: #5b6470;
  --agt-line: #d9dee4;
  --agt-bg: #ffffff;
  --agt-soft: #f4f6f8;
  --agt-accent: #1d4ed8;
  --agt-accent-fg: #ffffff;
  --agt-up: #d9534a;
  --agt-down: #1d4ed8;
  --agt-warn: #b45309;
  color: var(--agt-fg);
  font-size: 16px;
  line-height: 1.6;
  box-sizing: border-box;
  max-width: 880px;
  margin: 0 auto 32px;
}
.agt-mount *, .agt-mount *::before, .agt-mount *::after { box-sizing: border-box; }
.agt-card { background: var(--agt-bg); border: 1px solid var(--agt-line); border-radius: 12px; padding: 16px; min-width: 0; }
.agt-title { font-size: 1.375rem; margin: 0 0 8px; }
.agt-lead { margin: 0 0 14px; color: var(--agt-muted); font-size: 0.9375rem; word-break: keep-all; }
.agt-h { font-size: 1.125rem; margin: 0 0 4px; }
.agt-sub { margin: 0 0 12px; font-size: 0.8125rem; color: var(--agt-muted); word-break: keep-all; }
.agt-note { margin: 16px 0 0; font-size: 0.8125rem; color: var(--agt-muted); word-break: keep-all; }
.agt-controls { display: flex; flex-wrap: wrap; gap: 10px 14px; margin-bottom: 12px; }
.agt-field { display: flex; flex-direction: column; gap: 4px; flex: 1 1 200px; min-width: 0; }
.agt-field > span { font-weight: 600; font-size: 0.875rem; }
.agt-input {
  width: 100%; min-height: 44px; padding: 8px 12px; font-size: 16px;
  border: 1px solid var(--agt-line); border-radius: 8px; background: var(--agt-bg); color: var(--agt-fg);
}
.agt-input.agt-small { width: auto; min-height: 38px; font-size: 14px; }
.agt-input:focus { outline: 2px solid var(--agt-accent); outline-offset: 1px; }
.agt-chipbar { gap: 8px 20px; align-items: center; }
.agt-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.agt-chip {
  min-height: 40px; padding: 6px 14px; border-radius: 999px; font: inherit; font-size: 0.9375rem; cursor: pointer;
  border: 1px solid var(--agt-line); background: var(--agt-bg); color: var(--agt-fg);
}
.agt-chip[aria-pressed="true"] { background: var(--agt-accent); border-color: var(--agt-accent); color: var(--agt-accent-fg); font-weight: 700; }
.agt-msg { padding: 14px; background: var(--agt-soft); border-radius: 8px; color: var(--agt-muted); font-size: 0.9375rem; }
.agt-sec { margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--agt-line); min-width: 0; }
.agt-rowbar { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 8px; }
.agt-tiles { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; margin-bottom: 12px; }
.agt-tile { background: var(--agt-soft); border-radius: 10px; padding: 10px 12px; min-width: 0; }
.agt-tile b { display: block; font-size: 1.25rem; font-variant-numeric: tabular-nums; }
.agt-tile small { display: block; color: var(--agt-muted); font-size: 0.8125rem; }
.agt-up { color: var(--agt-up); }
.agt-down { color: var(--agt-down); }
.agt-chart { position: relative; height: 300px; }
.agt-details { margin-top: 10px; }
.agt-details summary { cursor: pointer; font-size: 0.875rem; color: var(--agt-muted); }
.agt-tablewrap { overflow-x: auto; margin-top: 8px; }
.agt-table { border-collapse: collapse; font-size: 0.8125rem; min-width: 100%; }
.agt-table th, .agt-table td { border-bottom: 1px solid var(--agt-line); padding: 6px 8px; text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.agt-table th:first-child, .agt-table td:first-child { text-align: left; }
@media (max-width: 600px) { .agt-chart { height: 250px; } .agt-title { font-size: 1.2rem; } }

/* 전세계약 안전 점검표 (jeonse-checklist.js) */
.agt-jeonse .agt-progress { position: sticky; top: 0; z-index: 5; background: var(--agt-bg); border-bottom: 1px solid var(--agt-line); padding: 8px 0; margin-bottom: 12px; }
.agt-bar { height: 8px; background: var(--agt-soft); border-radius: 999px; overflow: hidden; }
.agt-bar > i { display: block; height: 100%; width: 100%; background: var(--agt-accent); transform: scaleX(0); transform-origin: left center; transition: transform .2s; }  /* 진행률은 JS에서 style.transform = 'scaleX(0.4)'로 지정 */
.agt-tabs { display: flex; gap: 6px; overflow-x: auto; margin-bottom: 12px; }
.agt-tab { flex: 1 0 auto; min-height: 44px; padding: 6px 12px; border: 1px solid var(--agt-line); border-radius: 8px; background: var(--agt-bg); font: inherit; font-size: 0.9375rem; cursor: pointer; }
.agt-tab[aria-selected="true"] { background: var(--agt-accent); color: var(--agt-accent-fg); border-color: var(--agt-accent); font-weight: 700; }
.agt-step { border: 1px solid var(--agt-line); border-radius: 10px; margin-bottom: 10px; padding: 0 12px; }
.agt-step > summary { cursor: pointer; padding: 12px 0; font-weight: 700; list-style: none; display: flex; justify-content: space-between; gap: 8px; }
.agt-step > summary small { font-weight: 400; color: var(--agt-muted); }
.agt-item { display: flex; gap: 10px; align-items: flex-start; padding: 8px 0; border-top: 1px dashed var(--agt-line); }
.agt-item input[type="checkbox"] { width: 22px; height: 22px; flex: none; margin-top: 2px; }
.agt-item .agt-txt { flex: 1 1 auto; min-width: 0; word-break: keep-all; overflow-wrap: anywhere; }
.agt-tag { display: inline-block; font-size: 0.6875rem; padding: 0 6px; border-radius: 6px; border: 1px solid var(--agt-line); color: var(--agt-muted); margin-left: 4px; vertical-align: 1px; }
.agt-tag.law { border-color: var(--agt-accent); color: var(--agt-accent); }
.agt-warn { border: 1px solid var(--agt-warn); color: var(--agt-warn); border-radius: 8px; padding: 8px 10px; margin: 8px 0 12px; font-size: 0.875rem; }
.agt-more { font-size: 0.8125rem; color: var(--agt-muted); margin: 2px 0 0; }
.agt-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.agt-btn { min-height: 44px; padding: 8px 14px; border-radius: 8px; border: 1px solid var(--agt-line); background: var(--agt-bg); font: inherit; cursor: pointer; }
.agt-notice { background: var(--agt-soft); border-radius: 8px; padding: 10px 12px; font-size: 0.875rem; color: var(--agt-muted); margin-bottom: 12px; word-break: keep-all; }
@media print {
  .agt-tabs, .agt-actions, .agt-progress { display: none; }
  .agt-step { break-inside: avoid; }
  .agt-step:not([open]) > :not(summary) { display: block; }
}

.agt-links { margin: 6px 0 0; padding-left: 1.2em; font-size: 0.9375rem; }
.agt-links a { color: var(--agt-accent); }
.agt-notes { margin: 8px 0 0; padding-left: 1.2em; font-size: 0.875rem; color: var(--agt-muted); word-break: keep-all; }
.agt-notes li { margin-bottom: 6px; }
@media print { .agt-panel[hidden] { display: block !important; } .agt-item input[type="checkbox"] { -webkit-appearance: checkbox; appearance: checkbox; } }
