/* sun-position: this tool's own look, loaded only on its page (tools.css is shared and kept under 5 KB gz) */
.chqt-gh-hits{list-style:none;margin:.25rem 0 0;padding:0;border:1px solid var(--chqt-line,#ddd);border-radius:10px;overflow:hidden}
.chqt-gh-hit{display:block;width:100%;min-height:44px;padding:.5rem .75rem;border:0;background:none;text-align:left;font:inherit;cursor:pointer}
.chqt-gh-hit:hover,.chqt-gh-hit:focus{background:var(--chqt-soft,#f4f1ea)}
.sp-where { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.sp-geo, .sp-today { min-height: 44px; padding: 0 4px; border: 0; background: none; color: var(--chqt-ink); font: inherit; font-size: 16px; text-decoration: underline; cursor: pointer; }
.sp-sky { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 16px; align-items: start; }
.sp-fig { margin: 0; }
.sp-dial { max-width: 360px; margin: 0 auto; aspect-ratio: 1 / 1; }
.sp-svg { display: block; width: 100%; height: 100%; }
.sp-ground { fill: #eaf3fb; stroke: #6b7c93; stroke-width: 1.5; }
.sp-ring { fill: none; stroke: #9fb3c8; stroke-width: 1; stroke-dasharray: 3 4; }
.sp-tick { stroke: #6b7c93; stroke-width: 1.2; }
.sp-cardinal { fill: var(--chqt-ink); font: 700 15px system-ui, sans-serif; text-anchor: middle; }
.sp-path { fill: none; stroke: #d97706; stroke-width: 2.5; stroke-linejoin: round; }
.sp-jun, .sp-dec { fill: none; stroke-width: 1.5; stroke-dasharray: 5 4; stroke-linejoin: round; }
.sp-jun { stroke: #c2410c; }
.sp-dec { stroke: #2563eb; }
.sp-dot { fill: #d97706; }
.sp-hour { fill: #1f2937; font: 11px system-ui, sans-serif; }
.sp-rise { fill: #15803d; }
.sp-set { fill: #b91c1c; }
.sp-now { fill: #fde047; stroke: #b45309; stroke-width: 3; }
.sp-now-t { fill: #1f2937; font: 700 9px system-ui, sans-serif; text-anchor: middle; }
.sp-cap { margin: 6px 0 0; font-size: 14px; color: var(--chqt-muted); text-align: center; }
.sp-key { display: block; margin-top: 4px; }
.sp-key i { display: inline-block; width: 18px; height: 0; margin: 0 4px 0 8px; vertical-align: middle; border-top: 3px solid #d97706; }
.sp-key .sp-k-jun { border-top: 2px dashed #c2410c; }
.sp-key .sp-k-dec { border-top: 2px dashed #2563eb; }
.sp-table { width: 100%; border-collapse: collapse; font-size: 15px; font-variant-numeric: tabular-nums; }
.sp-table th, .sp-table td { border-bottom: 1px solid var(--chqt-line); padding: 6px 4px; text-align: left; vertical-align: top; }
.sp-table tbody th { font-weight: 600; white-space: nowrap; }
.sp-table tr.sp-mark th { color: var(--chqt-ink); }
.sp-key .sp-k-rise, .sp-key .sp-k-set { width: 10px; height: 10px; border: 0; border-radius: 50%; }
.sp-key .sp-k-rise { background: #15803d; }
.sp-key .sp-k-set { background: #b91c1c; }
@media (max-width: 700px) {
  .sp-sky { grid-template-columns: minmax(0, 1fr); }
  .sp-table { font-size: 14px; }
  .sp-table tbody th { white-space: normal; }
  .sp-table .sp-sep { display: none; }
  .sp-table .sp-mk { display: block; font-weight: 400; }
}
.chqt[data-tool="sun-position"] .chqt-result { min-height: 0; }
