:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.1;font-weight:400;font-size:13px;color:var(--primary-text);background-color:var(--primary-background);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--accent-text: #77c1ff;--accent-background: #588fbd;--primary-background: #252c35;--primary-text: rgba(255, 255, 255, .87);--input-background: #37404e}input:not([type=checkbox]):not([type=radio]),textarea{appearance:none;-webkit-appearance:none;-moz-appearance:none;box-shadow:none;outline:none;background:var(--input-background);border:1px solid rgba(255,255,255,.319);border-radius:4px;color:var(--primary-text)}input[type=checkbox]{width:14px;height:14px;cursor:pointer;accent-color:var(--accent-text);margin:0;margin-right:.5rem}input[type=radio]{width:14px;height:14px;margin:0;margin-right:.5rem;cursor:pointer;accent-color:var(--accent-text)}select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background:var(--input-background);color:#ffffffe6;border:1px solid rgba(255,255,255,.319);border-radius:4px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M2 4l4 4 4-4' stroke='rgba(255,255,255,0.65)' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .7rem center;background-size:12px}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:6px;background:linear-gradient(to right,var(--accent-text) 0%,var(--accent-text) var(--slider-percent),#303844 var(--slider-percent),#303844 100%);border-radius:999px}input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:999px;background:#303844;border:1px solid rgba(255,255,255,.06)}input[type=range]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:16px;height:16px;margin-top:-6px;border-radius:50%;background:var(--accent-text);border:2px solid rgba(255,255,255,.15)}input[type=range]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,255,255,.15);background:var(--accent-text);cursor:pointer}input[type=range]::-moz-range-track{height:6px;border-radius:999px;background:#303844}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.1)}input[type=range]::-moz-range-thumb:hover{transform:scale(1.1)}html,body,#root{margin:0;padding:0;width:100%;min-height:100%;color:#ffffffde}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{min-width:320px;min-height:100vh}html,body,#root{height:100%;margin:0}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;cursor:pointer;background-color:var(--primary-background);color:var(--primary-text);transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}#root{width:100%;min-height:100vh;margin:0;padding:0;text-align:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-reduced-motion:no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.app-root{display:flex;height:100vh;width:100vw}.app-left{width:400px;flex:0 0 400px;z-index:20}.app-right{flex:1;min-width:0;z-index:1}.app-row-container{display:flex;gap:20px;justify-content:center;padding:.8rem}.tight-row-container{display:flex;gap:2px;justify-content:center;padding:.25rem}.left-fixed-center-rest{position:relative;display:flex;justify-content:center;align-items:center}.left-fixed-center-rest .left-item{position:absolute;left:5px}.fcf-with-tooltips{display:flex;align-items:center;gap:0px}.feature-control-frame{display:inline-flex;align-items:stretch;height:1.75rem;border:1px solid #ffffff;background:#08121c00;color:#fff}.fcf-cell{display:flex;align-items:center;justify-content:center;border-right:1px solid #ffffff;padding:0 0rem;font-size:1rem}.fcf-cell:last-child{border-right:none}.fcf-symbol-cell{width:1.9rem;font-size:1rem;padding-bottom:3px}.fcf-tolerance-cell{width:12rem;gap:2px}.fcf-dia-symbol{font-size:1.1rem;color:#fff;padding-bottom:3px}.fcf-modifier-cell{width:4.75rem}.fcf-projected-cell{width:3.75rem}.feature-control-frame input{border:none;background:transparent;color:#fff;text-align:center;height:100%;font-size:1rem;padding:0;outline:none}.feature-control-frame .mb-0{margin-bottom:0}.feature-control-frame label{display:none}.tooltip-container{position:relative;display:inline-block;margin-left:8px}.input-with-tooltip{display:flex;align-items:center;gap:0px;justify-content:center;padding:0;margin:0}.info-icon-flashing{display:inline-flex;align-items:center;width:10px;height:10px;font-size:8px;font-weight:700;justify-content:center;color:orange;animation:flash 1s infinite;cursor:pointer;border-radius:50%;margin-left:4px;transform:translateY(-14px);border:1px solid orange}.info-icon{display:inline-flex;align-items:center;justify-content:center;width:10px;height:10px;font-size:8px;font-weight:700;cursor:pointer;border-radius:50%;border:1px solid #6c9bc591;color:#6c9bc591;margin-left:4px;transform:translateY(-4px)}.info-icon-simple{display:inline-flex;align-items:center;justify-content:center;width:10px;height:10px;font-size:8px;font-weight:700;cursor:default;border-radius:50%;border:1px solid #8ecaff91;color:#8ecaff91;margin-left:4px;transform:translateY(-14px)}@keyframes flash{0%,to{opacity:1}50%{opacity:.2}}.tooltip-text{position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:6px;background:#333;color:#fff;padding:10px 12px;border-radius:6px;font-size:1rem;z-index:9999;min-width:400px;box-shadow:0 4px 12px #0000004d}.simple-tooltip-text{visibility:hidden;opacity:0;transition:opacity .15s ease;position:fixed;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:6px;background:#333;color:#fff;padding:6px 8px;border-radius:4px;font-size:1rem;white-space:nowrap;z-index:9999}.info-icon:hover .simple-tooltip-text{visibility:visible;opacity:1}.learn-more-button{margin-top:6px;padding:0;border:none;background:none;color:#8ecbff;text-decoration:underline;cursor:pointer;font:inherit}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0000008c;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{position:relative;width:min(600px,90vw);max-height:80vh;overflow-y:auto;background:#1f1f1f;color:#fff;padding:24px;border-radius:10px;box-shadow:0 8px 30px #00000059}.modal-close-button{position:absolute;top:10px;right:12px;border:none;background:none;color:#fff;font-size:1.5rem;cursor:pointer}.menu-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;outline:none;padding:0;margin:0;background:transparent;color:var(--accent-text);font:inherit;cursor:pointer}.menu-button:hover{color:#b8ddff}.app-font-background{color:#fff}.joint-modal-backdrop{position:fixed;inset:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:9999}.joint-modal-content{background:#0f141c;border:1px solid rgba(148,163,184,.25);border-radius:12px;padding:16px;max-width:95vw;max-height:90vh;overflow:auto}.joint-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;color:#fff}.settings-modal-backdrop{position:fixed;inset:0;z-index:99999;background:#0000008c;display:flex;justify-content:center;align-items:flex-start}.settings-modal{position:relative;min-width:320px;max-width:90vw;background:#0f141c;color:#fff;border:1px solid rgba(148,163,184,.35);border-radius:10px;padding:20px;box-shadow:0 20px 60px #00000073;margin-top:30vh}.settings-modal-close{position:absolute;top:8px;right:10px;background:#464646;border:1px solid rgba(148,163,184,.35);color:#aaa;font-size:14px;cursor:pointer;border-radius:4px}.menu-divider{height:1px;background:#94a3b840;margin:.35rem 0}.status-indicator{width:10px;height:10px;border-radius:50%;margin-right:6px;flex-shrink:0}.status-indicator.complete{background:#7bcf86}.status-indicator.incomplete{border:1px solid rgba(148,163,184,.5);background:transparent}.feedback-modal-backdrop{position:fixed;inset:0;background:#000000a6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000}.feedback-modal{width:min(650px,90vw);max-height:85vh;overflow-y:auto;background:#0f141c;color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:24px;box-shadow:0 12px 40px #00000080}.feedback-modal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.feedback-modal-title{margin:0;font-size:22px;font-weight:600}.feedback-modal-subtitle{margin:6px 0 0;color:#aeb8c6;font-size:14px;line-height:1.4}.feedback-modal-close-button{background:transparent;border:none;color:#c8d2df;font-size:28px;line-height:1;cursor:pointer}.feedback-form{display:flex;flex-direction:column;gap:16px}.feedback-field-label{display:flex;flex-direction:column;gap:8px;color:#d8e0ea;font-size:14px;font-weight:500}.feedback-textarea{width:100%;resize:vertical;min-height:120px;box-sizing:border-box;background:#151c27;color:#fff;border:1px solid rgba(255,255,255,.16);border-radius:8px;padding:10px 12px;font:inherit}.feedback-textarea:focus{outline:none;border-color:#4fa3ff}.feedback-checkbox-label{display:flex;align-items:flex-start;gap:10px;color:#d8e0ea;font-size:14px;line-height:1.4}.feedback-checkbox-label input{margin-top:3px}.feedback-error-text{color:#ff8a8a;font-size:14px}.feedback-primary-button{align-self:flex-start;background:var(--accent-background);color:#fff;border:none;border-radius:8px;padding:10px 16px;font-weight:600;cursor:pointer}.feedback-primary-button:disabled{opacity:.6;cursor:not-allowed}.feedback-success-box{display:flex;flex-direction:column;gap:12px}.feedback-success-box h3{margin:0}.feedback-success-box p{margin:0;color:#c8d2df}.modal-backdrop{position:fixed;inset:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:9999}.modal{width:min(420px,calc(100vw - 32px));background:#111827;border:1px solid rgba(148,163,184,.35);border-radius:12px;padding:20px;color:#e5e7eb;box-shadow:0 20px 50px #00000073}.modal h2{margin:0 0 8px;font-size:18px}.modal p{margin:0 0 18px;color:#cbd5e1;line-height:1.4}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.modal-actions button{padding:8px 14px;border-radius:8px;border:1px solid rgba(148,163,184,.35);background:#1f2937;color:#e5e7eb;cursor:pointer}.modal-actions button:hover{background:#374151}.danger-button{border-color:#ef444499!important;background:#7f1d1dcc!important}.danger-button:hover{background:#991b1bf2!important}
