.tf-builder{max-width:1320px;margin:0 auto;padding:36px 20px 64px;color:var(--text)}.tf-builder *{box-sizing:border-box}.tf-hero{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:28px}.tf-hero h1{font-size:clamp(28px,4vw,48px);line-height:1.13;max-width:740px;margin:12px 0 18px;letter-spacing:-.035em}.tf-hero p{max-width:680px;line-height:1.65}.tf-eyebrow{font-size:11px;font-weight:700;letter-spacing:.14em;color:var(--accent-text,var(--text))}.tf-sketch{width:210px;flex-shrink:0;fill:none;stroke:var(--accent);stroke-width:1.2;opacity:.4;stroke-dasharray:600;animation:tf-trace 1.2s ease-out both}.tf-builder button,.tf-builder input,.tf-builder select,.tf-builder textarea{font:inherit}.tf-builder button{cursor:pointer;border:1px solid var(--border, #8886);border-radius:9px;padding:10px 14px;background:var(--bg-card,var(--bg));color:inherit}.tf-builder button:hover{border-color:var(--accent)}.tf-builder button:disabled{opacity:.5;cursor:not-allowed}.tf-builder :focus-visible{outline:3px solid var(--accent);outline-offset:3px}.tf-builder .tf-primary{background:var(--accent);color:var(--accent-ink,#111);font-weight:700}.tf-toolbar{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.tf-segment{display:flex;gap:3px}.tf-segment button[aria-pressed=true],.tf-tabs button[aria-current]{background:var(--accent);color:var(--accent-ink,#111)}.tf-status{min-height:48px;padding:12px 0;font-size:13px;line-height:1.6}.tf-setup{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;border-block:1px solid var(--border,#8885);padding:20px 0}.tf-field{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:600;min-width:0;margin-bottom:14px}.tf-field input,.tf-field select,.tf-field textarea{width:100%;min-width:0;padding:11px;border:1px solid var(--border,#8887);border-radius:8px;color:var(--text);background:var(--bg,#111)}.tf-field textarea{min-height:90px;resize:vertical}.tf-field small,.tf-builder small{font-weight:400;line-height:1.5;font-size:12px}.tf-tabs{display:flex;gap:8px;overflow:auto;padding:20px 0}.tf-tabs button{white-space:nowrap}.tf-workspace{display:grid;grid-template-columns:230px minmax(240px,1fr) 280px;gap:16px;align-items:start}.tf-panel{border:1px solid var(--border,#8885);border-radius:14px;padding:20px;background:var(--bg-card,var(--bg));background:color-mix(in srgb,var(--bg-card,var(--bg)) 94%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:0}.tf-panel h2,.tf-review h2{font-size:19px;margin:4px 0 14px}.tf-panel h3{font-size:16px}.tf-panel p,.tf-panel li,.tf-review p{font-size:13px;line-height:1.7}.tf-add{width:100%;display:flex;flex-direction:column;align-items:start;text-align:left;gap:7px;margin:12px 0}.tf-canvas{min-height:460px;position:relative;border:1px solid var(--border,#8885);border-radius:14px;background:radial-gradient(circle,var(--border,#8885) 1px,transparent 1px) 0 0/20px 20px;padding:18px;min-width:0}.tf-canvas-heading{display:flex;flex-direction:column;gap:5px;font-size:13px}.tf-empty{padding:55px 6px;text-align:center}.tf-empty>span{font-size:60px;color:var(--accent)}.tf-empty h2{font-size:20px}.tf-empty p{font-size:13px;line-height:1.7}.tf-nodes{list-style:none;padding:12px 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:12px}.tf-builder .tf-node{background:var(--bg,#111);display:flex;flex-direction:column;gap:9px;width:100%;text-align:left;padding:18px;overflow-wrap:anywhere}.tf-node.selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}.tf-node strong{font-size:15px}.tf-node span{font-size:12px}.tf-canvas-note{font-size:11px;opacity:.75}.tf-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.tf-advanced{margin-top:18px}.tf-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.tf-check{display:flex;gap:9px;align-items:flex-start;font-size:13px;line-height:1.6;margin:16px 0}.tf-check input{margin-top:4px}.tf-stages{padding:15px 0;display:flex;list-style:none;flex-wrap:wrap;gap:14px}.tf-stages li{display:flex;align-items:center;gap:8px}.tf-stages span{display:grid;place-items:center;border:1px solid var(--accent);border-radius:50%;width:28px;height:28px}.tf-code{background:var(--bg,#111);border:1px solid var(--border,#8886);padding:20px;max-height:600px;overflow:auto;font-size:12px;line-height:1.7;-moz-tab-size:2;tab-size:2}.tf-review{padding:22px;margin-top:20px;border-left:3px solid var(--accent);background:var(--bg-card,var(--bg));border-radius:0 12px 12px 0}.tf-review ul{font-size:13px;line-height:1.8;padding-left:20px}.tf-guide{max-width:900px}.tf-guide dt{font-weight:700;margin-top:15px}.tf-guide dd{margin:5px 0;font-size:14px;line-height:1.7}@keyframes tf-trace{0%{stroke-dashoffset:600;opacity:0}to{stroke-dashoffset:0;opacity:.4}}.tf-subsection{border:1px solid var(--border);border-radius:10px;padding:18px;margin:18px 0;min-width:0}.tf-subsection legend,.tf-subsection summary{font-weight:700;font-size:15px;padding:5px;cursor:pointer}.tf-input-row{border:1px solid var(--border);border-radius:8px;padding:14px;margin:12px 0;min-width:0}.tf-input-row legend{font-size:12px}.tf-table-scroll{overflow:auto;margin:16px 0;max-height:600px}.tf-table-scroll table{border-collapse:collapse;width:100%;font-size:12px;text-align:left}.tf-table-scroll th,.tf-table-scroll td{padding:12px;border:1px solid var(--border);min-width:130px;max-width:400px;overflow-wrap:anywhere}.tf-table-scroll caption{text-align:left;padding:10px;font-size:13px}.tf-table-scroll tbody th{font-family:var(--mono);font-weight:400}.tf-panel>button{margin-right:8px;margin-top:10px}.tf-object .tf-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))}.tf-object .tf-input-row{padding:8px;margin:8px 0}.tf-subsection>.tf-grid{margin-top:16px}.tf-check,.tf-panel p,.tf-field small,.tf-subsection summary{overflow-wrap:anywhere}.tf-check input{flex-shrink:0}@media (min-width:961px){.tf-builder{width:100%}}@media (max-width:1050px){.tf-workspace{grid-template-columns:190px minmax(220px,1fr)}.tf-workspace>aside:last-child{grid-column:1/-1}.tf-sketch{width:150px}}@media (max-width:620px){.tf-builder{padding:22px 16px 40px}.tf-sketch{display:none}.tf-workspace{display:flex;flex-direction:column}.tf-workspace>*{width:100%}.tf-canvas{min-height:300px}.tf-setup,.tf-grid{grid-template-columns:1fr}.tf-toolbar>*{max-width:100%}.tf-panel{padding:16px}.tf-hero{margin-bottom:18px}.tf-toolbar button{font-size:12px}.tf-code{padding:10px}}@media (prefers-reduced-motion:reduce){.tf-sketch{animation:none}}@supports not (backdrop-filter:blur(1px)){.tf-panel{background:var(--bg,#111)}}
