/* from the original calculator page (content/originals/calculators/position-size.html) */
.ps-page { padding-top: var(--header-height); }
    .ps-wrap { max-width: 1060px; margin: 0 auto; padding: 1.5rem 1.25rem 4rem; }
    .ps-crumb { font-size: 0.875rem; color: var(--text-muted); margin-bottom: 1rem; }
    .ps-crumb a { color: var(--text-secondary); }
    .ps-hero h1 { font-size: 2.125rem; line-height: 1.2; margin: 0 0 0.5rem; color: var(--text-primary); }
    .ps-hero p { color: var(--text-secondary); font-size: 1.0625rem; max-width: 760px; margin: 0 0 1.5rem; }
    .ps-grid { display: grid; grid-template-columns: 1fr; gap: 1.25rem; align-items: start; }
    @media (min-width: 880px) { .ps-grid { grid-template-columns: 1.15fr 0.85fr; } }
    .ps-card { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: var(--radius-lg); padding: 1.25rem; }
    .ps-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 0 1rem; align-items: end; }
    .ps-fields .full { grid-column: 1 / -1; }
    @media (max-width: 380px) { .ps-fields { grid-template-columns: 1fr; } }
    .ps-bar { display: none; }
    @media (max-width: 879px) {
      .ps-bar { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 50; align-items: baseline; justify-content: space-between; gap: 0.75rem;
        padding: 0.75rem 1.25rem calc(0.75rem + env(safe-area-inset-bottom)); background: var(--bg-secondary); border-top: 1px solid var(--border-color); box-shadow: var(--shadow-md);
        color: var(--text-secondary); font-size: 0.875rem; font-variant-numeric: tabular-nums; text-decoration: none; transition: transform var(--transition-base); }
      .ps-bar strong { color: var(--text-primary); font-size: 1.25rem; }
      .ps-bar.away { transform: translateY(110%); }
    }
    .ps-fields .form-group { margin-bottom: 1rem; min-width: 0; }
    .ps-fields .form-hint { display: block; font-size: 0.8125rem; color: var(--text-muted); margin-top: 0.35rem; }
    .ps-result { position: sticky; top: calc(var(--header-height) + 1rem); }
    .ps-result-label { font-size: 0.75rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--gold); margin: 0 0 0.25rem; }
    .ps-lots { font-size: 2.75rem; font-weight: 800; line-height: 1.1; color: var(--text-primary); font-variant-numeric: tabular-nums; margin: 0; }
    .ps-units { color: var(--text-secondary); margin: 0.25rem 0 1rem; }
    .ps-rows { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; }
    .ps-rows th, .ps-rows td { padding: 0.55rem 0; border-top: 1px solid var(--border-color); font-size: 0.9375rem; }
    .ps-rows th { text-align: left; font-weight: 500; color: var(--text-secondary); padding-right: 0.75rem; text-transform: none; letter-spacing: normal; background: none; border-bottom: 0; }
    .ps-rows td { text-align: right; font-weight: 700; color: var(--text-primary); }
    .ps-warn { margin-top: 1rem; padding: 0.75rem 1rem; border-radius: var(--radius-md); background: var(--warning-bg); border: 1px solid var(--warning); color: var(--text-primary); font-size: 0.9375rem; }
    .ps-error { margin-top: 1rem; padding: 0.75rem 1rem; border-radius: var(--radius-md); background: var(--danger-bg); border: 1px solid var(--danger); color: var(--text-primary); font-size: 0.9375rem; }
    .ps-note { margin-top: 1rem; font-size: 0.8125rem; color: var(--text-muted); line-height: 1.5; }
    .ps-article { max-width: 760px; margin: 2.5rem 0 0; color: var(--text-secondary); line-height: 1.7; }
    .ps-article h2 { color: var(--text-primary); font-size: 1.5rem; margin: 2.25rem 0 0.75rem; }
    .ps-article h3 { color: var(--text-primary); font-size: 1.125rem; margin: 1.5rem 0 0.5rem; }
    .ps-article strong { color: var(--text-primary); }
    .ps-formula { margin: 0.75rem 0 1rem; font-family: var(--font-mono); font-size: 0.9375rem; background: var(--bg-tertiary); border: 1px solid var(--border-color); border-radius: var(--radius-md); padding: 0.875rem 1rem; color: var(--text-primary); overflow-x: auto; }
    .ps-table-wrap { overflow-x: auto; }
    .ps-table { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; margin: 0.5rem 0 1rem; }
    .ps-table th, .ps-table td { padding: 0.5rem 0.75rem; border-bottom: 1px solid var(--border-color); text-align: right; font-size: 0.9375rem; }
    .ps-table th:first-child, .ps-table td:first-child { text-align: left; }
    .ps-table th { color: var(--text-primary); background: var(--bg-tertiary); text-transform: none; letter-spacing: normal; font-weight: 600; }
    .ps-cta { margin-top: 2.5rem; padding: 1.5rem; border-radius: var(--radius-lg); border: 1px solid var(--border-color); background: var(--bg-card); max-width: 760px; }
    .ps-cta h2 { margin: 0 0 0.5rem; font-size: 1.375rem; color: var(--text-primary); }
    .ps-cta p { color: var(--text-secondary); margin: 0 0 1rem; }
    .ps-cta .btns { display: flex; flex-wrap: wrap; gap: 0.75rem; }
    .ps-faq dt { color: var(--text-primary); font-weight: 700; margin-top: 1.25rem; }
    .ps-faq dd { margin: 0.35rem 0 0; }
    @media (max-width: 520px) {
      .ps-hero h1 { font-size: 1.75rem; }
      .ps-lots { font-size: 2.25rem; }
      .ps-result { position: static; }
    }
