:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#20343d;background:#edf2f4;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{border:1px solid #ccd8dc;background:#fff;border-radius:7px;color:#334c56;padding:8px 12px;cursor:pointer}button:hover{background:#e8f1f2}button:focus-visible,input:focus-visible{outline:3px solid #83b9c1;outline-offset:2px}.primary{background:#234d58;color:white;border-color:#234d58}.primary:hover{background:#326370}header{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:#fff;border-bottom:1px solid #d7e1e4;gap:18px}.brand{font-size:25px;font-weight:650;letter-spacing:-1px;display:flex;align-items:center;gap:20px}.brand span{font-size:10px;font-weight:600;letter-spacing:2px;color:#68808a}.stage{font-size:12px;color:#7d663b;padding:7px 12px;border-radius:20px;background:#f5efdf}.stage span{color:#8d7a59}.header-actions{display:flex;gap:8px}main{height:calc(100dvh - 72px);display:grid;grid-template-columns:340px 1fr}aside{background:#fbfcfc;overflow:auto;border-right:1px solid #d7e1e4;padding:24px 20px}.intro h1{font-size:23px;letter-spacing:-.6px;margin:0 0 10px}.intro p{color:#71858d;font-size:13px;line-height:1.6;margin:0}.presets{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:20px 0}.presets button{font-size:12px}.active{background:#dcebed!important;border-color:#91b6bc!important;color:#214f5b!important}details{border-top:1px solid #dce5e7;padding:14px 0}summary{font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between}summary::after{content:'+';color:#849ba3}details[open] summary::after{content:'−'}.group-note{font-size:11px;color:#8a7755;line-height:1.5;margin:9px 0}.control{margin-top:17px}.control-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px;gap:8px}.control label{font-size:12px;color:#576f79}.numeric{display:flex;align-items:center;gap:4px;color:#82949b;font-size:10px}.numeric input{width:65px;text-align:right;border:1px solid #dce5e8;border-radius:4px;padding:4px;background:white;color:#274c59;font-variant-numeric:tabular-nums}.control input[type=range]{width:100%;accent-color:#396f7b;height:4px;cursor:pointer}.control select{border:1px solid #d0dce0;border-radius:4px;padding:5px;background:white}.aside-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #dce5e7;padding:16px 0;margin-top:8px}.aside-footer span{font-size:10px;color:#80949d}.workspace{min-width:0;display:flex;flex-direction:column;position:relative}.workbar{height:57px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:1px solid #d9e3e6;background:#f8fafb;gap:10px}.tabs{display:flex;gap:5px}.tabs button{font-size:12px;border-color:transparent;background:transparent}.view-options{display:flex;gap:14px;align-items:center;font-size:11px;color:#607781}.view-options label{display:flex;align-items:center;gap:4px;white-space:nowrap}.view-options input{accent-color:#396f7b}#viewport{flex:1;min-height:260px;position:relative;overflow:hidden}#canvas{position:absolute;inset:0}canvas{display:block;touch-action:none}.view-buttons{position:absolute;top:15px;left:20px;display:flex;gap:4px}.view-buttons button{font-size:11px;padding:6px 10px;background:#ffffffdb}.legend{position:absolute;bottom:42px;left:24px;display:flex;flex-wrap:wrap;gap:14px;pointer-events:none;font-size:10px;color:#677f89}.legend span{display:flex;align-items:center;gap:5px}.legend i{height:3px;width:16px;display:inline-block}.hint{position:absolute;bottom:16px;left:24px;font-size:11px;color:#91a1a8;pointer-events:none}footer{min-height:59px;background:#f8fafb;border-top:1px solid #d7e1e4;padding:11px 22px;display:flex;justify-content:space-between;align-items:center;gap:12px}footer strong{display:block;font-size:12px;font-weight:500}footer span{font-size:11px;color:#83969d;display:block;margin-top:5px}footer button{font-size:11px;white-space:nowrap}#notice{font-size:10px;color:#8b7859;background:#f5f0e5;padding:9px 22px;line-height:1.5}#drawing-panel{flex:1;min-height:0;overflow:auto;background:#fff;padding:20px;position:relative}#drawing-panel[hidden]{display:none}#drawing svg{width:100%;min-width:580px;height:auto}#export-drawing{margin:12px}#toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,15px);padding:12px 18px;background:#214c58;color:white;border-radius:8px;font-size:13px;opacity:0;pointer-events:none;transition:.2s;z-index:20}#toast.show{opacity:1;transform:translate(-50%,0)}@media(max-width:1050px){.stage{display:none}.view-options{gap:7px}main{grid-template-columns:295px 1fr}aside{padding:20px 16px}.brand span{display:none}}@media(max-width:740px){header{height:60px;padding:0 12px}.header-actions button{font-size:10px;padding:7px}.header-actions #import{display:none}.brand{font-size:22px}main{height:calc(100dvh - 60px);display:flex;flex-direction:column-reverse}aside{height:38%;min-height:190px;border-right:0;border-top:1px solid #ccd9df}.workspace{height:62%;min-height:360px}.intro,.presets{display:none}.workbar{padding:0 8px;height:45px}.view-options{gap:5px;font-size:10px}.tabs button{font-size:10px;padding:6px}.view-buttons{left:8px;top:8px}.view-buttons button{font-size:10px;padding:5px 8px}.legend{display:none}#notice{font-size:9px;padding:5px 12px}footer{padding:7px 12px;min-height:45px}footer span{font-size:9px}footer strong{font-size:10px}.hint{font-size:9px;left:12px;bottom:8px}}

#mold-status{padding:9px 20px;background:#f4e9d3;color:#836333;font-size:11px;border-bottom:1px solid #e4d5b5}#mold-status[hidden]{display:none}.workspace .tabs{flex-wrap:wrap}.tabs button{padding:7px 9px}

.workbar{flex-wrap:wrap;height:auto;min-height:57px;padding:8px 14px}.view-options{flex-wrap:wrap}#nose-label{position:absolute;font-size:11px;color:#345f78;background:#eef6f9df;border:1px solid #aac0cd;padding:5px 8px;border-radius:5px;pointer-events:none;white-space:nowrap}.tabs{gap:2px}.tabs button{font-size:11px}#nose-label[hidden]{display:none}

.mold-label{position:absolute;font-size:10px;color:#8b602e;background:#fff8e7e8;border:1px solid #d5b78a;border-radius:4px;padding:4px 6px;pointer-events:none;white-space:nowrap}.mold-label[hidden]{display:none}

.cad-review-link{align-self:center;color:#17566b;font-size:13px;white-space:nowrap}

.embedded-editor .cad-review-link{display:none}
