.rebar-touch{--rebar-orange:#e86f1a;--rebar-orange-dark:#c85a10;--rebar-orange-light:#f5924a}.rebar-shape-hub-btn{display:flex;align-items:center;justify-content:center;min-height:10rem;padding:1rem 1.25rem;border-radius:1rem;background:#ffffff;border:2px solid #e2e8f0;box-shadow:0 4px 14px rgba(0,0,0,.12);text-decoration:none;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.rebar-shape-hub-btn:hover{border-color:#cbd5e1;box-shadow:0 6px 18px rgba(0,0,0,.16)}.rebar-shape-hub-btn:active{transform:scale(.98)}.rebar-shape-hub-btn .rebar-png-diagram:not(.rebar-png-diagram--hub),.rebar-shape-hub-btn .rebar-shape-svg{width:100%;max-width:100%}.rebar-png-diagram{margin:0 auto}.rebar-png-diagram--hub{width:min(100%,22rem);min-height:7.5rem}.rebar-png-diagram--form{width:min(100%,26rem);min-height:8.5rem}.rebar-cm-overlay{position:absolute;z-index:2;display:flex;align-items:center;justify-content:center;padding:0 2px;background:#ffffff;border:1px solid #cbd5e1;border-radius:4px;font-size:clamp(.55rem,2.8vw,.7rem);font-weight:700;font-family:ui-monospace,monospace;color:#1e293b;line-height:1.1;box-sizing:border-box}.rebar-cm-overlay--active{border-color:var(--rebar-orange);border-width:2px;box-shadow:0 0 0 2px rgba(232,111,26,.35)}.rebar-cm-overlay--interactive{cursor:pointer;padding:0}.rebar-cm-overlay--interactive:active{transform:scale(.98)}.rebar-diagram-panel{display:flex;justify-content:center;padding:1rem 1.25rem;border-radius:1rem;background:#ffffff;border:2px solid #e2e8f0}.rebar-diagram-panel .rebar-shape-svg{width:100%;max-width:28rem}.rebar-shape-svg .rebar-cm-box{fill:#ffffff;stroke:#cbd5e1;stroke-width:.5;cursor:pointer}.rebar-shape-svg .rebar-cm-box--active{stroke:var(--rebar-orange);stroke-width:2}.rebar-shape-svg .rebar-cm-label{fill:#1e293b;font-size:9px;font-weight:700;text-anchor:middle;dominant-baseline:middle;pointer-events:none;font-family:ui-monospace,monospace}.rebar-keypad-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:flex-end;justify-content:center}.rebar-keypad-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.55)}.rebar-keypad-panel{position:relative;width:100%;max-width:26rem;padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom));background:#fff;border-radius:20px 20px 0 0;box-shadow:0 -4px 24px rgba(0,0,0,.25)}.rebar-keypad-label{margin:0 0 .5rem;font-weight:600;text-align:center;color:#1e293b}.rebar-keypad-display{margin-bottom:.75rem;padding:.65rem;font-size:1.5rem;font-weight:700;text-align:center;background:#f1f5f9;border-radius:10px;color:#0f172a}.rebar-keypad-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.rebar-keypad-key{min-height:3.25rem;font-size:1.2rem;font-weight:600;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc;cursor:pointer;color:#0f172a}.rebar-keypad-key:active{background:#e2e8f0}.rebar-keypad-key--empty{visibility:hidden;pointer-events:none}.rebar-keypad-confirm{width:100%;margin-top:.75rem;padding:.85rem;font-size:1rem;font-weight:700;color:#fff;background:var(--rebar-orange);border:none;border-radius:10px;cursor:pointer}.rebar-measure-tap{width:100%;padding:.75rem 1rem;font-size:1rem;text-align:left;border:2px solid #e2e8f0;border-radius:10px;background:#f8fafc;color:#334155;cursor:pointer}.rebar-measure-tap strong{color:#0f172a}