/* 평수 계산기 — 공통 도구 스타일에 없는 것만 정의한다. */

.py-pair { display: flex; align-items: flex-end; gap: .5rem; }
.py-pair .form-group-tool { flex: 1 1 0; min-width: 0; }
.py-eq { flex: 0 0 auto; padding-bottom: .6rem; font-weight: 700; color: var(--text-muted, #626977); }
.py-dims { display: flex; align-items: center; gap: .5rem; }
.py-dims .input-tool { flex: 1 1 0; min-width: 0; }
.py-hint { margin: .375rem 0 0; font-size: var(--text-ui-sm, .8125rem); color: var(--text-muted, #626977); }
.py-num { font-variant-numeric: tabular-nums; }

.py-main {
    display: flex; flex-direction: column; align-items: center; gap: .25rem;
    padding: var(--spacing-lg, 1.5rem) var(--spacing-md, 1rem);
    border: 1px solid var(--border-color, #e5e8ed);
    border-radius: var(--radius-md, 8px);
    background: var(--primary-soft, #eef3fd);
}
.py-main-value {
    font-size: 2rem; font-weight: 700; line-height: 1.2;
    color: var(--primary-strong, #2c56b8);
    font-variant-numeric: tabular-nums; word-break: break-all; text-align: center;
}
.py-main-sub { font-size: var(--text-sm, .875rem); color: var(--text-muted, #626977); text-align: center; font-variant-numeric: tabular-nums; }

.py-table-wrap { margin-top: var(--spacing-lg, 1.5rem); overflow-x: auto; }
.py-table { width: 100%; border-collapse: collapse; margin-top: .5rem; font-size: var(--text-sm, .875rem); }
.py-table th, .py-table td { padding: .45rem .6rem; border-bottom: 1px solid var(--border-color, #e5e8ed); text-align: left; }
.py-table th { font-weight: 600; color: var(--text-muted, #626977); font-size: var(--text-ui-sm, .8125rem); }
.py-table td { font-variant-numeric: tabular-nums; }

@media (max-width: 480px) {
    .py-pair { flex-direction: column; align-items: stretch; }
    .py-eq { display: none; }
}
