.rafter-tool{margin-bottom:52px}.rafter-tool [hidden]{display:none!important}.rafter-workbench{grid-template-columns:minmax(350px,.92fr) minmax(0,1.08fr);align-items:start;gap:22px;display:grid}.rafter-card{border:1px solid var(--line);background:#fff;border-radius:12px;min-width:0;margin-bottom:22px;padding:24px}.rafter-card h2{margin-top:0}.rafter-inputs h2:not(:first-child){border-top:1px solid var(--line);margin-top:24px;padding-top:20px}.rafter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.rafter-tool label{margin-bottom:6px;font-weight:750;display:block}.rafter-tool :is(input,select,textarea){border:1px solid var(--line-strong);width:100%;min-width:0;color:var(--ink);font:inherit;background:#fff;border-radius:7px;padding:10px 12px}.rafter-tool :is(button,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--accent);outline-offset:3px}.rafter-tool small,.rafter-help,.rafter-result-note{color:var(--muted);margin-top:7px;font-size:.87rem;display:block}.rafter-actions{flex-wrap:wrap;gap:9px;margin-top:16px;display:flex}.rafter-tool button{border:1px solid var(--line-strong);min-height:44px;color:var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:7px;padding:9px 13px;font-weight:700}.rafter-tool button.primary{color:#fff;background:var(--accent);border-color:var(--accent)}.rafter-status{min-height:1.4em;color:var(--success);margin:12px 0 0;font-size:.88rem}.rafter-error{color:var(--danger);border-left:3px solid var(--danger);background:#fff0f0;margin:14px 0;padding:12px 14px}.rafter-results h2{overflow-wrap:anywhere;font-size:clamp(1.45rem,3vw,2rem)}.rafter-summary{grid-template-columns:1fr 1fr;gap:10px;margin:18px 0;display:grid}.rafter-summary>div,.rafter-detail-list>div{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;min-width:0;padding:12px}.rafter-summary dt,.rafter-detail-list dt{color:var(--muted);font-size:.8rem}.rafter-summary dd,.rafter-detail-list dd{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;margin:4px 0 0;font-weight:780}.rafter-diagram,.rafter-small-diagram,.rafter-plan-diagram{border:1px solid var(--line);background:var(--surface-soft);border-radius:10px;width:100%;display:block}.rafter-diagram{aspect-ratio:560/330}.rafter-small-diagram{aspect-ratio:420/240;margin-top:16px}.rafter-plan-diagram{aspect-ratio:420/250}.rafter-member{fill:none;stroke:#0b6bcb;stroke-width:9px;stroke-linecap:square}.rafter-reference{fill:none;stroke:#7b8797;stroke-width:1.5px}.rafter-dimension{fill:none;stroke:#b4232f;stroke-width:1.3px;stroke-dasharray:5 4}.rafter-fill{fill:#e7edf5;stroke:#8b96a8;stroke-width:1.3px}.rafter-cutout{fill:#fff;stroke:#b4232f;stroke-width:2px}.rafter-svg-label{fill:#364152;font:650 12px system-ui,sans-serif}.rafter-svg-label.center{text-anchor:middle}.rafter-svg-label.end{text-anchor:end}.rafter-detail-grid{grid-template-columns:1fr 1fr;gap:22px;display:grid}.rafter-detail-list{grid-template-columns:1fr 1fr;gap:10px;margin:0;display:grid}.rafter-tool table{border-collapse:collapse;width:100%;font-size:.9rem}.rafter-tool th,.rafter-tool td{border-bottom:1px solid var(--line);text-align:left;padding:10px}.rafter-tool th{color:var(--muted);font-weight:700}.rafter-detail-grid table th{width:65%}.rafter-detail-grid table td{font-variant-numeric:tabular-nums;font-weight:750}.rafter-plan-layout{grid-template-columns:minmax(0,1.3fr) minmax(240px,.7fr);align-items:center;gap:20px;display:grid}.rafter-scroll{border:1px solid var(--line);border-radius:8px;overflow:auto}.rafter-scroll table{min-width:620px}.rafter-scroll th{background:var(--surface-soft)}.rafter-checks{background:#fffaf2;border-left:4px solid #b45309}.rafter-checks ul{margin-bottom:0;padding-left:20px}.rafter-checks li{margin:7px 0}.rafter-privacy{text-align:center;color:var(--muted);font-size:.87rem}.rafter-guide>section{margin-bottom:38px}.rafter-boundary{background:#fff7ed;border-left:4px solid #b45309;padding:20px 22px}@media (width<=920px){.rafter-workbench,.rafter-plan-layout{grid-template-columns:1fr}}@media (width<=680px){.rafter-grid,.rafter-summary,.rafter-detail-grid,.rafter-detail-list{grid-template-columns:1fr}.rafter-card{padding:17px}}@media print{.site-header,.site-footer,.breadcrumb,.page-intro,.rafter-inputs,.rafter-actions,.rafter-privacy,.rafter-guide{display:none!important}.rafter-workbench,.rafter-detail-grid,.rafter-plan-layout{display:block}.rafter-card{break-inside:avoid;border:0;margin:0;padding:8mm 0;display:block!important}.rafter-diagram{width:160mm;margin:0 auto}.rafter-small-diagram,.rafter-plan-diagram{width:110mm}.rafter-scroll{overflow:visible}.rafter-scroll table{min-width:0;font-size:8pt}}
