:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#dce6e9;background:#0c1218;font-size:14px;color-scheme:dark;--muted:#92a4af;--border:#26343e;--accent:#67d9cb}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;border:1px solid var(--border);border-radius:7px;background:#192630;color:#dce6e9;padding:9px 13px;transition:background .15s,border-color .15s}button:hover{background:#263b48;border-color:#627c8b}button:disabled{opacity:.4;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,canvas:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button.primary{background:var(--accent);color:#103b37;font-weight:700;border-color:var(--accent);padding:11px 18px}button.primary:hover{background:#8beadd}h1,h2,p{margin:0}h1{font-size:19px;font-weight:650;letter-spacing:-.4px}h2{font-size:18px;font-weight:600;letter-spacing:-.25px}.header{height:84px;padding:0 28px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);background:#111a22;gap:20px}.brand{display:flex;gap:13px;align-items:center}.brand svg{width:40px;height:40px;fill:var(--accent)}.brand span{font-size:9px;letter-spacing:1.6px;color:var(--muted);display:block;margin-top:7px}.header-actions{display:flex;align-items:center;gap:24px}.offline{color:var(--muted);font-size:12px;white-space:nowrap}.offline i{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;margin-right:7px}.workspace{display:grid;grid-template-columns:360px minmax(0,1fr);height:calc(100dvh - 84px);min-height:570px}.sidebar{overflow:auto;border-right:1px solid var(--border);background:#121c24;scrollbar-width:thin;scrollbar-color:#334752 transparent}.sidebar-title{display:flex;justify-content:space-between;align-items:center;padding:25px 22px 19px}.eyebrow{font-size:9px;letter-spacing:1.9px;font-weight:700;color:var(--muted);display:block;margin-bottom:8px}.text-button{border:0;background:transparent;color:#88aea9;padding:6px;font-size:11px}.parameter-group{border:0;border-top:1px solid var(--border)}.parameter-group summary{display:flex;align-items:center;gap:10px;padding:18px 22px;font-weight:600;cursor:pointer;list-style:none;font-size:13px}.parameter-group summary::-webkit-details-marker{display:none}.parameter-group summary:after{content:'+';margin-left:auto;color:var(--muted);font-size:18px;font-weight:400}.parameter-group[open] summary:after{content:'−'}.group-number{font-size:10px;color:#67b9b1;letter-spacing:1px;font-variant-numeric:tabular-nums}.group-body{padding:0 22px 20px;display:grid;gap:18px}.field-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:7px}.field-head>label{font-size:12px;font-weight:550;color:#cad8dd}.field-unit{color:var(--muted);font-size:10px;font-weight:400;margin-left:5px}.field input[type=number],.field select,.settings-file>input{width:100%;height:36px;border-radius:6px;border:1px solid #344650;background:#0e1820;padding:6px 10px;color:#e5f4f2;font-variant-numeric:tabular-nums}.field input:disabled{color:#899fa8;background:#17242c}.field input[aria-invalid=true]{border-color:#e59b77}.field select{cursor:pointer}.field-control{display:flex;gap:12px;align-items:center}.field-control input[type=range]{min-width:0;flex:1;accent-color:var(--accent);height:18px;cursor:pointer}.field-control input[type=number]{width:98px;flex-shrink:0}.field p{font-size:11px;line-height:1.55;color:var(--muted);margin-top:6px}.auto{display:flex;align-items:center;gap:4px;font-size:10px;color:#a5bfbe;cursor:pointer}input[type=checkbox]{accent-color:var(--accent);cursor:pointer}.field small{font-size:10px;color:#739087}.settings-file{border-top:1px solid var(--border);padding:20px 22px}.settings-file>label{display:block;font-size:12px;margin-bottom:8px}.file-actions{display:flex;gap:8px;margin-top:10px}.file-actions button{font-size:11px;flex:1;padding:9px 6px}.settings-file p{font-size:10px;color:var(--muted);line-height:1.5;margin-top:10px}.help{padding:0 22px 24px;color:var(--muted);font-size:11px;line-height:1.7}.help summary{cursor:pointer;color:#b3c8ce}.help p{margin-top:10px}.preview{display:flex;min-width:0;min-height:0;flex-direction:column;padding:25px 28px 15px;background:#0e161d}.preview-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;gap:10px}.status{font-size:10px;padding:6px 9px;border:1px solid #2b4945;color:#9ad6c6;border-radius:20px;white-space:nowrap}.status.error-status{border-color:#8d5441;color:#f5b79b}.status.pending{color:#d4c79d;border-color:#4b4c3b}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--border);border-radius:9px;background:#141f27;margin-bottom:16px}.metrics>div{padding:16px;border-right:1px solid var(--border)}.metrics>div:last-child{border:0}.metrics span{font-size:10px;color:var(--muted);display:block;margin-bottom:9px}.metrics strong{font-size:19px;font-weight:550;white-space:nowrap;letter-spacing:-.5px;font-variant-numeric:tabular-nums}.metrics strong small{font-size:11px;font-weight:400;color:#7d959f;margin-left:4px;letter-spacing:0}.viewport{position:relative;flex:1;min-height:290px;border:1px solid var(--border);border-radius:9px;overflow:hidden;background:#0c1218}.viewport canvas{display:block;width:100%;height:100%;position:absolute;inset:0;touch-action:none;cursor:grab}.viewport canvas:active{cursor:grabbing}.viewport.stale canvas{opacity:.35}.view-controls{position:absolute;top:16px;left:16px;display:flex;padding:3px;border:1px solid #2c3d47;border-radius:7px;background:#101b24ed;gap:2px}.view-controls button{font-size:10px;border:0;background:transparent;padding:7px 9px;border-radius:4px}.view-controls button:hover,.view-controls button.active{background:#2c444b;color:#b3f3e7}.display-controls{position:absolute;top:65px;left:17px;display:flex;align-items:center;gap:10px;font-size:10px;color:#9bb0b9}.display-controls label{display:flex;align-items:center;gap:3px;cursor:pointer}.display-controls button{font-size:10px;background:#101b24d9;padding:5px 7px}.axis-legend,.legend{position:absolute;bottom:17px;display:flex;gap:12px;font-size:10px;pointer-events:none}.axis-legend{left:20px}.axis-x{color:#d07d7e}.axis-y{color:#7bbe9d}.axis-z{color:#87b5e6}.legend{right:20px;color:#91a7b3;gap:14px}.legend span{display:flex;align-items:center;gap:6px}.legend i{width:6px;height:6px;border-radius:50%}.blade-color{background:#57c6cd}.hub-color{background:#c5d1d0}.error{position:absolute;left:20px;right:20px;top:110px;padding:14px 17px;line-height:1.6;font-size:12px;background:#38271ff2;border:1px solid #9c6047;border-radius:7px;color:#ffc7a6}.cut-note{position:absolute;bottom:44px;left:20px;color:#a8bcc5;font-size:10px;pointer-events:none}.preview-footer{display:flex;justify-content:space-between;gap:12px;padding:12px 2px;font-size:10px;color:#8097a4;line-height:1.5}.notice{border-top:1px solid #24323b;padding-top:12px;display:flex;gap:9px;align-items:center;color:#8da4ae;font-size:10px;line-height:1.6}.notice>span{border:1px solid #536a75;border-radius:50%;width:15px;height:15px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-family:serif}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#253f45;border:1px solid #567477;border-radius:8px;color:#d9f0eb;padding:12px 20px;box-shadow:0 8px 30px #0008;z-index:10;font-size:12px;max-width:90vw}noscript{position:fixed;inset:100px 20px auto;background:#572e21;padding:20px}[hidden]{display:none!important}
@media(min-width:1500px){.workspace{grid-template-columns:390px minmax(0,1fr)}.preview{padding:30px 40px 20px}.metrics strong{font-size:24px}.metrics>div{padding:20px}.sidebar-title{padding-top:30px}}
@media(max-width:1100px){.workspace{grid-template-columns:320px minmax(0,1fr)}.preview{padding:20px 18px 12px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metrics>div{padding:11px 14px}.metrics>div:nth-child(2){border-right:0}.metrics>div:nth-child(-n+2){border-bottom:1px solid var(--border)}.metrics span{margin-bottom:5px}.metrics strong{font-size:17px}.preview-footer{flex-direction:column;gap:3px}.offline{display:none}.sidebar-title{padding-left:18px;padding-right:18px}.group-body{padding-left:18px;padding-right:18px}}
@media(max-width:740px){.header{height:72px;padding:0 15px}.brand svg{width:31px;height:31px}.brand{gap:9px}h1{font-size:16px}.brand span{font-size:7px;letter-spacing:.8px}.header-actions{gap:0}button.primary{font-size:12px;padding:10px}.workspace{display:flex;flex-direction:column;height:auto;min-height:0}.preview{order:0;height:660px;max-height:calc(100dvh - 72px);min-height:550px;padding:18px 12px 12px}.sidebar{order:1;border-right:0;border-top:1px solid var(--border);overflow:visible}.preview-heading{margin-bottom:14px}.preview-heading h2{font-size:16px}.metrics{margin-bottom:10px}.view-controls{left:10px;top:10px}.view-controls button{padding:7px}.display-controls{top:54px;left:10px;gap:7px}.axis-legend{left:12px;gap:8px}.legend{right:12px;gap:8px}.preview-footer>span:last-child{display:none}.notice{font-size:9px;padding-top:8px}.sidebar-title{padding:24px 20px}.group-body{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.field-control{gap:7px}.field-control input[type=number]{width:80px}.group-body .field{min-width:0}.settings-file{max-width:500px}.error{top:98px;left:12px;right:12px}}
@media(max-width:420px){.group-body{grid-template-columns:1fr}.brand span{max-width:140px;line-height:1.5}.legend{display:none}.header{gap:8px}.metrics strong{font-size:16px}}
