
@font-face{font-family:StairHand;src:url(../assets/fonts/stair-hand-regular.ttf) format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:StairHand;src:url(../assets/fonts/stair-hand-bold.ttf) format('truetype');font-style:normal;font-weight:700;font-display:swap}
body,button,input,select,textarea,label,summary,h1,h2,h3,.stageInfo,.nodeCard,.railGraphCard{font-family:StairHand,'Malgun Gothic',sans-serif!important}
body{font-size:16px;line-height:1.55}h1{font-size:24px;letter-spacing:.055em}.sub{font-size:15px}.brand .sub{font-size:15px}.workspaceIntro h2{font-family:StairHand,sans-serif!important;font-size:34px;font-weight:700;letter-spacing:-.5px}.workspaceIntro p{font-size:17px}.workspaceTag{font-size:13px}.modeSwitch button,#nodeModeBtn{font-size:16px;padding:8px 12px}.inspectorHead h2{font-size:20px}.unitTag{font-size:14px}.inspectorTabs button{font-size:17px;padding:9px 1px}.inspectorTabs{gap:20px}.st{font-size:17px}.row label,.riserrow label{font-size:16px}input,select{font-size:18px}.hint{font-size:14px}.inputSuffix .suffix{font-size:13px}.range span{font-size:15px}.checkboxOnly .mainLabel{font-size:15px}.checkboxOnly .fixedNote{font-size:12px}.review{font-size:20px;padding:10px}.dirty{font-size:15px;line-height:1.45}.reset{font-size:15px}.floorAdd{font-size:16px}.lvn{font-size:17px}.doorChoice span{font-size:14px}.hrow span{font-size:13px}.hrow input{font-size:17px}.guardrailCompact span{font-size:15px}.guardrailCompact input[type=number],.guardrailCompact select{font-size:17px}.guardrailExpand{font-size:16px}.guardrailDesigner .gdTitle{font-size:16px}.guardrailDesigner .gdHint{font-size:13px}.gdMiniBtn{font-size:14px}.guardrailDesigner label{font-size:15px}.guardrailDesigner input,.guardrailDesigner select{font-size:17px}.metric span{font-size:14px}.metric strong{font-size:24px;font-weight:700;letter-spacing:0}.viewTabs button{font-size:17px;padding:5px 14px}.exportButton{font-size:16px;padding:6px 10px}.drawingTitle{font-size:14px}.stagePanel button,.stagePanel select{font-size:14px}.canvasFlip,.planFloor{font-size:14px}.zoom button:last-child{font-size:14px}.drawingFooter,.legend{font-size:14px}.stageInfo{font-size:15px}.emptyPreview{font-size:19px;line-height:1.5}.head h2{font-size:20px}.ct{font-size:17px}.status{font-size:14px}.info{font-size:15px}.rules summary{font-size:17px}.check{font-size:14px}.altToggle{font-size:16px}.infoTip .tipText{font-size:14px}.nodeHelp,.algoIntro span,.railStudioIntro span{font-size:15px}.nodeOption span,.railPortLabel{font-size:14px}.nodeHead,.railGraphTypeTitle{font-size:16px}.nodeRename,.railGraphDescription input{font-size:15px}
:root #svg text{font-family:StairHand,'Malgun Gothic',sans-serif!important;font-weight:700;letter-spacing:.1px}:root .canvasWrap::after{font-family:StairHand,sans-serif;font-size:16px}
@media(max-width:1180px){.metric span{font-size:13px}.metric strong{font-size:22px}.row label,.riserrow label{font-size:15px}}
@media(max-width:850px){.workspaceIntro h2{font-size:29px}.workspaceIntro p{font-size:16px}.topRight{justify-content:flex-end}.brand h1{font-size:23px}.metric strong{font-size:21px}.modeSwitch button,#nodeModeBtn{font-size:15px}}
@media(max-width:460px){.brand .sub{font-size:14px}.topRight{width:auto;flex:none}.top{gap:10px}.modeSwitch button,#nodeModeBtn{font-size:14px;padding:5px 7px}.workspaceIntro p{font-size:15px}.metric span{font-size:12px}.metric strong{font-size:19px}.exportButton{font-size:14px}.viewTabs button{font-size:16px;padding:5px 10px}.drawingFooter,.legend{font-size:13px}}
