/*! TornaUstası CNC Araçları 1.0.0 — GPLv2+ | three.js © three.js authors (MIT) */
.tu-cnc{--tu-cnc-panel: #fff;--tu-cnc-soft: #f7faff;--tu-cnc-soft-line: #dce7f8;--tu-cnc-input: #fff;--tu-cnc-input-line: #cfd7e1;--tu-cnc-ink: #17202a;--tu-cnc-ink-fg: #fff;--tu-cnc-code-bg: #f4f6f8;--tu-cnc-code-fg: #1e2933;--tu-cnc-code-no: #9aa5b1;--tu-cnc-code-cm: #7a8693;--tu-cnc-mark: #ffd166;--tu-cnc-mark-fg: #2b2826;--tu-cnc-green: #7bb639;--tu-cnc-green-dark: #5d8f24;--tu-cnc-sim-bg: linear-gradient(180deg, #f7f9fb 0%, #e9edf1 100%);--tu-cnc-focus: 0 0 0 3px rgba(23, 105, 224, .22);container-type:inline-size;container-name:tucnc;line-height:1.45}.tu-cnc[data-theme=dark]{--tu-bg: #1f2937;--tu-text: #f9fafb;--tu-muted: #9ca3af;--tu-line: #374151;--tu-accent: #3b82f6;--tu-accent2: #2563eb;--tu-cnc-panel: #111827;--tu-cnc-soft: #172131;--tu-cnc-soft-line: #2b3a52;--tu-cnc-input: #374151;--tu-cnc-input-line: #4b5563;--tu-cnc-ink: #7bb639;--tu-cnc-ink-fg: #111827;--tu-cnc-code-bg: #0b1220;--tu-cnc-code-fg: #e5e7eb;--tu-cnc-code-no: #5b6676;--tu-cnc-code-cm: #8b95a3;--tu-cnc-sim-bg: linear-gradient(180deg, #1b2533 0%, #111827 100%);--tu-cnc-focus: 0 0 0 3px rgba(123, 182, 57, .35);box-shadow:none;color-scheme:dark}.tu-cnc[data-theme=dark] .tu-code-card,.tu-cnc[data-theme=dark] .tu-result,.tu-cnc[data-theme=dark] .tu-tabs button{background:var(--tu-cnc-panel);border-color:var(--tu-line);color:var(--tu-text)}.tu-cnc[data-theme=dark] .tu-tabs button.is-active{background:var(--tu-cnc-ink);border-color:var(--tu-cnc-ink);color:var(--tu-cnc-ink-fg)}.tu-cnc[data-theme=dark] .tu-results{background:var(--tu-cnc-soft);border-color:var(--tu-cnc-soft-line)}.tu-cnc[data-theme=dark] input,.tu-cnc[data-theme=dark] select{background:var(--tu-cnc-input);border-color:var(--tu-cnc-input-line);color:var(--tu-text)}.tu-cnc[data-theme=dark] .tu-code-badge{background:#374151;color:#f9fafb}.tu-cnc button{font:inherit}.tu-cnc :focus-visible{outline:2px solid var(--tu-accent, #1769e0);outline-offset:2px}.tu-cnc input:focus-visible,.tu-cnc select:focus-visible{outline:none}.tu-cnc [hidden]{display:none!important}.tu-cnc-muted{color:var(--tu-muted, #66727f);font-size:12px}.tu-cnc-ico{display:inline-flex;width:18px;height:18px;flex:0 0 auto}.tu-cnc-ico svg,.tu-cnc-help svg,.tu-cnc-play svg{width:100%;height:100%;display:block}.tu-cnc-lead{margin:0 0 14px;color:var(--tu-muted, #66727f)}.tu-cnc-loading{min-height:120px;display:grid;place-items:center}.tu-cnc-source{margin:12px 0 0}.tu-cnc-notice{margin:0 0 12px;padding:8px 12px;border:1px solid var(--tu-cnc-soft-line);background:var(--tu-cnc-soft);border-radius:10px;font-size:13px;color:var(--tu-text, #18212a)}.tu-cnc-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr));gap:12px}.tu-cnc .tu-cnc-card{display:flex;gap:14px;align-items:center;width:100%;text-align:left;cursor:pointer;color:var(--tu-text, #18212a);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.tu-cnc .tu-cnc-card:hover{border-color:var(--tu-accent, #1769e0);box-shadow:0 8px 24px #14213014;transform:translateY(-1px)}.tu-cnc-card__visual{flex:0 0 112px;height:76px;border-radius:10px;overflow:hidden;border:1px solid var(--tu-line, #e3e8ee)}.tu-cnc-card__preview{display:block;width:100%;height:76px}.tu-cnc-card__body{display:flex;flex-direction:column;gap:5px;min-width:0}.tu-cnc-card .tu-code-card__top{align-items:center;gap:10px}.tu-cnc .tu-code-badge{min-width:46px;padding:5px 8px;font-size:13px}.tu-cnc-card__title{font-weight:700;font-size:15px;line-height:1.3}.tu-cnc-card__desc{color:var(--tu-muted, #66727f);font-size:13px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tu-cnc-card__meta{font-size:12px;color:var(--tu-muted, #66727f)}.tu-cnc-editor{display:flex;flex-direction:column;gap:14px}.tu-cnc-head__row{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.tu-cnc .tu-cnc-back,.tu-cnc .tu-cnc-linkbtn{display:inline-flex;align-items:center;gap:4px;border:0;background:none;padding:6px 4px;color:var(--tu-accent, #1769e0);font-weight:700;cursor:pointer}.tu-cnc-tag{font-size:12px;font-weight:700;border:1px solid var(--tu-line, #e3e8ee);border-radius:999px;padding:4px 10px;color:var(--tu-muted, #66727f)}.tu-cnc-chips{display:flex;gap:8px;overflow-x:auto;padding:8px 0 4px;scrollbar-width:thin}.tu-cnc-chips button,.tu-cnc .tu-cnc-chip,.tu-cnc-speeds button{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--tu-line, #e3e8ee);background:var(--tu-cnc-panel);color:var(--tu-text, #18212a);border-radius:9px;padding:7px 12px;cursor:pointer;font-weight:700;font-size:13px;line-height:1.2;white-space:nowrap;transition:.18s ease}.tu-cnc-chips button:hover,.tu-cnc .tu-cnc-chip:hover,.tu-cnc-speeds button:hover,.tu-cnc-chips button.is-active,.tu-cnc .tu-cnc-chip.is-active,.tu-cnc-speeds button.is-active{background:var(--tu-cnc-ink);color:var(--tu-cnc-ink-fg);border-color:var(--tu-cnc-ink)}.tu-cnc-title{display:flex;align-items:center;gap:10px;margin:6px 0 0;font-size:20px;line-height:1.3;font-weight:800;color:var(--tu-text, #18212a)}.tu-cnc-desc{margin:4px 0 0;color:var(--tu-muted, #66727f);font-size:14px}.tu-cnc-panel{border:1px solid var(--tu-line, #e3e8ee);border-radius:13px;background:var(--tu-cnc-panel);padding:14px;min-width:0}.tu-cnc-panel__head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;flex-wrap:wrap}.tu-cnc .tu-cnc-panel__title{margin:0;font-size:15px;font-weight:800;color:var(--tu-text, #18212a)}.tu-cnc-diagram__canvas,.tu-cnc-sim__canvas{display:block;width:100%;border-radius:10px}.tu-cnc-diagram__canvas{height:300px}.tu-cnc-form{margin:0}.tu-cnc-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}@container tucnc (min-width: 600px){.tu-cnc-fields{grid-template-columns:repeat(3,minmax(0,1fr))}}@container tucnc (min-width: 860px){.tu-cnc-fields{grid-template-columns:repeat(4,minmax(0,1fr))}}@supports not (container-type: inline-size){@media (min-width: 700px){.tu-cnc-fields{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width: 1000px){.tu-cnc-fields{grid-template-columns:repeat(4,minmax(0,1fr))}}}.tu-cnc .tu-cnc-field{position:relative;gap:4px}.tu-cnc-field__label{display:flex;align-items:center;gap:5px;min-height:20px;min-width:0}.tu-cnc .tu-cnc-field__label .tu-field__label{font-size:12.5px;font-weight:700;line-height:1.25;color:var(--tu-text, #18212a);min-width:0;flex:0 1 auto;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.tu-cnc-field__tag{flex:0 0 auto;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;font-weight:800;background:var(--tu-cnc-mark);color:var(--tu-cnc-mark-fg);border-radius:5px;padding:1px 5px;margin-right:2px}.tu-cnc .tu-cnc-help{flex:0 0 auto;margin-left:auto;width:22px;height:22px;padding:2px;border:0;border-radius:999px;background:none;color:var(--tu-muted, #66727f);cursor:pointer}.tu-cnc .tu-cnc-help:hover,.tu-cnc .tu-cnc-help[aria-expanded=true]{color:var(--tu-accent, #1769e0)}.tu-cnc .tu-cnc-field input,.tu-cnc .tu-cnc-field select{min-height:42px;padding:8px 10px;border-radius:10px}.tu-cnc .tu-cnc-field .tu-input-wrap input{padding-right:calc(var(--uw, 2ch) + 18px)}.tu-cnc .tu-cnc-field input{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:15px;font-variant-numeric:tabular-nums}.tu-cnc .tu-cnc-field .tu-unit{right:10px;font-size:11.5px}.tu-cnc .tu-cnc-field input:focus,.tu-cnc .tu-cnc-field select:focus{box-shadow:var(--tu-cnc-focus)}.tu-cnc-field.is-focused .tu-field__label{color:var(--tu-accent, #1769e0)}.tu-cnc-field.has-error input,.tu-cnc-field.has-error select{border-color:#dc2626}.tu-cnc-field__err{font-size:11.5px;color:#dc2626;min-height:0}.tu-cnc-field__err:empty{display:none}.tu-cnc-popover{position:absolute;z-index:30;top:calc(100% + 4px);left:0;width:max-content;max-width:min(300px,calc(100vw - 40px));background:var(--tu-bg, #fff);color:var(--tu-text, #18212a);border:1px solid var(--tu-line, #e3e8ee);border-radius:12px;box-shadow:0 12px 30px #14213029;padding:12px 14px;font-size:13px}.tu-cnc-popover.is-right{left:auto;right:0}.tu-cnc-popover strong{display:flex;gap:6px;align-items:center}.tu-cnc-popover p{margin:6px 0 0}.tu-cnc-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:14px}.tu-cnc-errors{margin-top:12px;border:1px solid rgba(220,38,38,.4);background:#dc262612;color:#b91c1c;border-radius:13px;padding:12px 14px;font-size:14px}.tu-cnc[data-theme=dark] .tu-cnc-errors{color:#fca5a5}.tu-cnc-errors ul{margin:6px 0 0;padding-left:18px}.tu-cnc .tu-cnc-tabs--small{margin:0}.tu-cnc .tu-cnc-tabs--small button{padding:6px 14px;font-size:13px;line-height:1.2}.tu-cnc-sim__stage{position:relative;height:420px;border-radius:10px;overflow:hidden;background:var(--tu-cnc-sim-bg)}.tu-cnc-sim__stage>canvas{height:100%}.tu-cnc-3d{position:absolute;top:0;right:0;bottom:0;left:0;touch-action:none}.tu-cnc-3d__gl{display:block;width:100%!important;height:100%!important;outline:none}.tu-cnc-3d__labels{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.tu-cnc-3d__dim{font:700 11.5px/1.2 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:#17202a;background:#ffffffe0;border:1px solid rgba(23,32,42,.18);padding:2px 6px;border-radius:6px;white-space:nowrap}@container tucnc (max-width: 520px){.tu-cnc-3d__dim{font-size:10px;padding:1px 4px}}.tu-cnc-3d__dim.is-part{background:var(--tu-cnc-mark);border-color:#2b282640}.tu-cnc[data-theme=dark] .tu-cnc-3d__dim:not(.is-part){color:#f9fafb;background:#111827d9;border-color:#374151}.tu-cnc-3d__status{position:absolute;inset:auto 0 12px;text-align:center;font-size:13px;color:var(--tu-muted, #66727f)}.tu-cnc-3d__status:empty{display:none}.tu-cnc-3d__toolbar{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;margin-top:10px}.tu-cnc-chipgroup{display:flex;flex-wrap:wrap;gap:6px}.tu-cnc .tu-cnc-chip{padding:6px 10px;font-size:12.5px}.tu-cnc .tu-cnc-chip .tu-cnc-ico{width:16px;height:16px}.tu-cnc-3d__hint{flex:1 1 220px;text-align:right}.tu-cnc-sim__controls{display:flex;align-items:center;gap:12px;margin-top:10px}.tu-cnc .tu-cnc-play{width:44px;height:44px;padding:10px;border-radius:11px;flex:0 0 auto;display:inline-grid;place-items:center}.tu-cnc .tu-cnc-play:disabled{opacity:.5;cursor:default;transform:none}.tu-cnc .tu-cnc-slider{flex:1 1 auto;min-height:0;height:28px;padding:0;border:0;background:none;accent-color:var(--tu-cnc-green)}.tu-cnc .tu-cnc-slider:focus{box-shadow:none}.tu-cnc .tu-cnc-pass{min-width:96px;font-size:12px;font-variant-numeric:tabular-nums}.tu-cnc-sim__meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 18px;margin-top:10px;align-items:center}.tu-cnc-speeds{display:flex;align-items:center;gap:6px}.tu-cnc-speeds button{padding:5px 10px;font-size:12px}.tu-cnc-legend{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12px;color:var(--tu-muted, #66727f)}.tu-cnc-legend__item{display:inline-flex;align-items:center;gap:6px}.tu-cnc-swatch{width:18px;height:8px;border-radius:3px;background:var(--sw)}.tu-cnc-swatch.is-dashed{height:0;border-radius:0;background:none;border-top:2.5px dashed var(--sw)}.tu-cnc-warnings{display:grid;gap:6px;margin-top:12px}.tu-cnc .tu-cnc-warn{--wc: #3b82f6;display:flex;gap:8px;align-items:flex-start;width:100%;text-align:left;padding:8px 10px;border-radius:10px;border:1px solid color-mix(in srgb,var(--wc) 45%,transparent);background:color-mix(in srgb,var(--wc) 9%,transparent);color:var(--tu-text, #18212a);font-size:13px;cursor:pointer}.tu-cnc .tu-cnc-warn .tu-cnc-ico{color:var(--wc)}.tu-cnc .tu-cnc-warn.is-warning{--wc: #e09a2b}.tu-cnc .tu-cnc-warn.is-danger{--wc: #dc2626}.tu-cnc-sim:fullscreen{background:var(--tu-bg, #fff);padding:16px;overflow:auto}.tu-cnc-sim:fullscreen .tu-cnc-sim__stage{height:calc(100vh - 200px)!important}.tu-cnc .tu-cnc-derived{margin-top:0}.tu-cnc-code{padding:0;overflow:hidden}.tu-cnc-code__head{display:flex;align-items:center;gap:10px;padding:12px 14px;cursor:pointer;list-style:none;flex-wrap:wrap}.tu-cnc-code__head::-webkit-details-marker{display:none}.tu-cnc-code__chev{transition:transform .18s ease;transform:rotate(-90deg)}.tu-cnc-code[open] .tu-cnc-code__chev{transform:none}.tu-cnc-code__title{font:800 13px/1.3 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;letter-spacing:.02em;flex:1 1 auto;color:var(--tu-text, #18212a)}.tu-cnc-code__actions{display:flex;gap:6px}.tu-cnc .tu-cnc-code__pre{margin:0;max-height:460px;overflow:auto;background:var(--tu-cnc-code-bg);color:var(--tu-cnc-code-fg);border-top:1px solid var(--tu-line, #e3e8ee);padding:10px 0;font:500 13px/1.6 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;white-space:pre;tab-size:4}.tu-cnc-code__line{display:block;padding-right:14px}.tu-cnc-code__no{display:inline-block;width:3.4em;padding-right:1em;text-align:right;color:var(--tu-cnc-code-no);user-select:none;-webkit-user-select:none}.tu-cnc-code__txt .is-comment{color:var(--tu-cnc-code-cm)}.tu-cnc-code__txt mark{background:var(--tu-cnc-mark);color:var(--tu-cnc-mark-fg);border-radius:3px;padding:0 1px;font-weight:700}.tu-cnc-steps ol,.tu-cnc-notes ul{margin:0;padding-left:22px;font-size:14px}.tu-cnc-steps li,.tu-cnc-notes li{margin:4px 0}.tu-cnc-notes li{color:var(--tu-muted, #66727f)}@media (max-width: 640px){.tu-cnc-title{font-size:17px}.tu-cnc-card__visual{flex-basis:92px}.tu-cnc-3d__hint{text-align:left}.tu-cnc .tu-cnc-pass{min-width:84px}.tu-cnc-panel{padding:12px}}@media (prefers-reduced-motion: reduce){.tu-cnc *,.tu-cnc *:before{transition:none!important}}
