*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,sans-serif;color:#202c36;background:#fff}button,input{font:inherit}button{cursor:pointer;background:#fff;border:1px solid #dce2e5;border-radius:8px;padding:10px 14px;font-size:12px;color:#33424d;transition:.15s}button:hover{background:#f0f6f6;border-color:#9abebc}button:focus-visible,input:focus-visible{outline:3px solid #6db9b6;outline-offset:2px}button:disabled{opacity:.5;cursor:wait}.primary{background:#176b65;color:#fff;border-color:#176b65}.primary:hover{background:#115b56}header{height:82px;border-bottom:1px solid #e7ebed;padding:0 28px;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;gap:13px;align-items:center}.brand-icon{background:#e8f4f1;color:#176b65;border-radius:12px;width:42px;height:42px;font-size:35px;text-align:center;line-height:36px}.brand strong{font-size:19px;letter-spacing:-.5px}.brand small{display:block;font-size:9px;letter-spacing:1.8px;margin-top:5px;color:#7a888e}.actions{display:flex;gap:8px}main{height:calc(100vh - 82px);display:grid;grid-template-columns:minmax(0,1fr) 338px}#viewport{position:relative;min-height:500px;overflow:hidden;background:#fff}canvas{display:block;touch-action:none}.view-tools{position:absolute;top:20px;left:24px;display:flex;gap:5px;z-index:2}.view-tools button{padding:8px 11px;font-size:11px;background:#ffffffec}#status{position:absolute;top:66px;left:25px;font-size:11px;color:#72838b;z-index:2;max-width:80%}.viewport-bottom{position:absolute;bottom:18px;left:25px;right:25px;display:flex;justify-content:space-between;font-size:10px;color:#819097;pointer-events:none}.viewport-bottom i{display:inline-block;width:6px;height:6px;background:#3c9b83;border-radius:50%;margin-right:6px}aside{background:#fafbfb;border-left:1px solid #e7ebed;padding:25px 22px;overflow:auto}.eyebrow{font-size:9px;letter-spacing:2px;color:#317c75;font-weight:bold}h1{font-size:23px;letter-spacing:-.7px;margin:10px 0 7px}.intro{font-size:12px;color:#859099;margin:0 0 20px}.level-list{display:flex;gap:7px;margin-bottom:23px}.level-list button{flex:1;padding:11px 5px}.level-list button.active{border-color:#247d72;color:#176b65;background:#edf7f3;font-weight:bold}fieldset{border:0;margin:0;padding:0;min-width:0}.section-title{display:flex;justify-content:space-between;align-items:center;margin:20px 0 10px}.section-title h2{font-size:16px;margin:0}.section-title h3{font-size:12px;margin:0}.section-title>span{font-size:10px;color:#929ba2}.check{display:flex;align-items:center;gap:5px;font-size:11px;color:#647780}.check input{accent-color:#176b65}.triple{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.triple label{font-size:9px;color:#7c898f}.triple input{display:block;width:100%;padding:10px 5px 10px 9px;border:1px solid #dce3e6;border-radius:7px;background:#fff;margin-top:7px;font-size:12px;color:#283942}.uniform{display:block;font-size:11px;margin-top:18px}.uniform output{float:right;color:#176b65;font-weight:bold}.uniform input{display:block;width:100%;accent-color:#176b65;margin:12px 0 7px}.hint{font-size:10px;line-height:1.65;color:#8b979e}.rotation{display:flex;align-items:center;gap:8px;font-size:11px;margin:16px 0}.rotation input{margin-left:auto;width:90px;padding:8px;border:1px solid #dce3e6;border-radius:7px}.gizmo{margin-bottom:18px}.full{width:100%;font-size:11px}.divider{height:1px;background:#e2e8ea;margin:23px 0}.layouts{display:flex;gap:6px}.layouts button{padding:9px 7px;flex:1;font-size:10px}.layouts .active{background:#e7f3ee;color:#176b65;border-color:#b5d2ca}.saved{font-size:10px;color:#548477;background:#edf5f0;padding:11px;border-radius:7px;margin-top:23px}.footnote{font-size:9px;color:#9aa4a9;text-align:center}.level-label{position:absolute;pointer-events:none;font-weight:700;font-size:14px;letter-spacing:-.2px;color:#273b43;transform:translate(-100%,-50%);white-space:nowrap}.level-label small{display:block;font-size:9px;letter-spacing:1.1px;color:#88999e;margin-top:3px}#labels{position:absolute;inset:0;pointer-events:none}@media(max-width:800px){header{padding:0 14px}.brand small{display:none}.actions button{padding:8px;font-size:10px}main{height:auto;grid-template-columns:1fr}#viewport{height:60vh}aside{border-top:1px solid #e7ebed;border-left:0}.viewport-bottom span:last-child{display:none}.view-tools{left:12px;gap:4px}.level-label{font-size:11px}}
