/* Beam Calculator styles (scoped) */
.beamcalc{ --bg:#ffffff; --card:#fafafa; --muted:#5b6b7a; --text:#0b1020; --accent:#ef4444; --accent2:#b91c1c; --danger:#dc2626; --border:#e5e7eb; }
.beamcalc *{ box-sizing:border-box; }
.beamcalc{ font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"PingFang SC","Noto Sans CJK SC","Microsoft YaHei",sans-serif; color:var(--text); }
.beamcalc .wrap{ max-width:920px; margin:24px auto; padding:0 8px; }
.beamcalc .title{ font-size:clamp(24px,3.2vw,36px); font-weight:800; letter-spacing:.3px; display:block; text-align:left; }
.beamcalc .subtitle{ color:var(--muted); margin-top:6px }
.beamcalc .card{ background:var(--card); border:1px solid var(--border); border-radius:16px; box-shadow:0 4px 14px rgba(0,0,0,.05); padding:18px; margin-top:14px }
.beamcalc .grid{ display:grid; grid-template-columns:repeat(12,1fr); gap:12px }
.beamcalc .col-6{ grid-column:span 6 }
.beamcalc .col-12{ grid-column:span 12 }
@media(max-width:720px){ .beamcalc .col-6{ grid-column:span 12 } }
.beamcalc label{ display:block; margin-bottom:6px; font-size:14px; color:var(--muted) }
.beamcalc input{ width:100%; padding:12px 12px; border-radius:12px; border:1px solid var(--border); background:#fff; color:var(--text); font-size:16px; outline:none }
.beamcalc input:focus{ border-color:#ef4444; box-shadow:0 0 0 4px rgba(239,68,68,.15) }
.beamcalc .hint{ font-size:12px; color:var(--muted); margin-top:6px }
.beamcalc .btn{ cursor:pointer; display:inline-flex; align-items:center; gap:8px; padding:12px 16px; border-radius:12px; background:linear-gradient(135deg,var(--accent),var(--accent2)); border:none; color:white; font-weight:700; font-size:15px; letter-spacing:.2px }
.beamcalc .btn:active{ transform:translateY(1px) }
.beamcalc .btn.secondary{ background:#f1f5f9; color:#0b1020; border:1px solid var(--border) }
.beamcalc .row{ display:flex; gap:12px; flex-wrap:wrap }
.beamcalc .result{ display:flex; align-items:center; gap:12px; font-size:20px; font-weight:800 }
.beamcalc .mono{ font-variant-numeric:tabular-nums; font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace }
.beamcalc .error{ color:var(--danger); margin-top:8px }
.beamcalc .foot{ color:var(--muted); font-size:12px; margin-top:18px }
.beamcalc .canvas{ width:100%; aspect-ratio:1 / 1; height:auto; background:#ffffff; border:1px dashed var(--border); border-radius:12px }
