.buffer-page .calc-hero { padding:48px 0 32px; }
.buffer-page .calc-hero .section-subtitle { max-width:800px; margin:0 auto; }
.buffer-page h2 { color:var(--color-text-bright); font-family:var(--font-heading); margin:24px 0; }
.buffer-page .buffer-card { margin-bottom:24px; }
.buffer-page fieldset.buffer-card { min-width:0; }
.buffer-page legend { color:var(--color-text-bright); font-weight:600; padding:0 8px; }
.buffer-page .buffer-input-group label { display:block; color:var(--color-text-bright); margin-bottom:8px; }
.buffer-page .buffer-input-group small { display:block; color:var(--color-text-secondary); line-height:1.5; font-size:.83rem; margin-top:8px; }
.buffer-page .buffer-notice { padding:20px; border:1px solid var(--color-accent); border-radius:var(--border-radius-md); margin-bottom:28px; }
.buffer-page .buffer-error { padding:20px; border:1px solid var(--color-accent); margin-top:24px; color:var(--color-text-bright); }
.buffer-page [hidden] { display:none!important; }
.buffer-page #buffer-results { scroll-margin-top:110px; padding-top:12px; }
.buffer-page .buffer-result-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.buffer-page .buffer-result-card h3 { font-size:1rem; color:var(--color-text-bright); }
.buffer-page .buffer-result-card p { line-height:1.5; }
.buffer-page .buffer-value { font-size:1.8rem; font-weight:700; color:var(--color-accent); margin:16px 0; }
.buffer-page dt { font-weight:600; color:var(--color-text-bright); border-top:1px solid var(--color-border-light); padding-top:14px; }
.buffer-page dd { margin:6px 0 18px; }
.buffer-page .buffer-method { margin-top:28px; }
.buffer-page .buffer-method summary { cursor:pointer; font-weight:600; color:var(--color-text-bright); }
.buffer-page .buffer-method p { margin-top:18px; line-height:1.6; }
.buffer-page a { text-underline-offset:3px; }
.buffer-page input:focus-visible,.buffer-page summary:focus-visible,.buffer-page button:focus-visible { outline:3px solid var(--color-accent); outline-offset:3px; }
@media(max-width:650px){.buffer-page .buffer-grid,.buffer-page .buffer-result-grid{grid-template-columns:1fr;}.buffer-page .btn{white-space:normal;max-width:100%;}.buffer-page .buffer-card{padding:20px;}}
