:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background:transparent;border-radius:4px}*::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px;border:2px solid transparent;background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background:#ffffff40;border:2px solid transparent;background-clip:padding-box}*::-webkit-scrollbar-corner{background:transparent}@media(prefers-color-scheme:light){*{scrollbar-color:rgba(0,0,0,.2) transparent}*::-webkit-scrollbar-thumb{background:#00000026;border:2px solid transparent;background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background:#00000040;border:2px solid transparent;background-clip:padding-box}}@keyframes coachMarkPulse{0%,to{box-shadow:0 0 20px #6c5ce799,0 4px 15px #0000004d;transform:translate(-50%,-100%) scale(1)}50%{box-shadow:0 0 30px #6c5ce7e6,0 4px 20px #0006;transform:translate(-50%,-100%) scale(1.02)}}@keyframes coachMarkPulseBottom{0%,to{box-shadow:0 0 20px #6c5ce799,0 4px 15px #0000004d;transform:translate(-50%) scale(1)}50%{box-shadow:0 0 30px #6c5ce7e6,0 4px 20px #0006;transform:translate(-50%) scale(1.02)}}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh;background-color:#1e1e24}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;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547}a:hover{color:#747bff}button{background-color:#f9f9f9}}.main-nav{height:60px;background:var(--bg-secondary);border-bottom:1px solid var(--glass-border);display:flex;align-items:center;padding:0 1.5rem;justify-content:space-between;position:sticky;top:0;z-index:100}.nav-brand{display:flex;align-items:center;gap:.75rem;color:var(--primary);font-weight:600;font-size:1.1rem}.nav-logo{color:var(--primary)}.nav-links{display:flex;gap:.5rem;background:var(--bg-tertiary);padding:.25rem;border-radius:8px;border:1px solid var(--glass-border)}.nav-item{background:transparent;border:none;color:var(--text-muted);padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s ease}.nav-item:hover{color:var(--text-primary);background:#ffffff08}.nav-item.active{background:var(--primary);color:#fff;box-shadow:0 2px 8px #6366f14d}.workspace{display:grid;flex:1;gap:1.5rem;padding:1.5rem;min-height:0}[data-tooltip]{position:relative}[data-tooltip]:before{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%) translateY(5px);background:#1e1e2e;color:#cdd6f4;padding:6px 10px;border-radius:6px;font-size:.75rem;font-weight:500;white-space:nowrap;opacity:0;visibility:hidden;transition:all .2s cubic-bezier(.4,0,.2,1);z-index:1000;box-shadow:0 4px 12px #0006,0 0 0 1px #ffffff1a;pointer-events:none}[data-tooltip]:after{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%) translateY(0);border:5px solid transparent;border-top-color:#1e1e2e;opacity:0;visibility:hidden;transition:all .2s cubic-bezier(.4,0,.2,1);z-index:1000;pointer-events:none}[data-tooltip][data-tooltip-pos=bottom]:before{bottom:auto!important;top:calc(100% + 10px);transform:translate(-50%) translateY(-5px)}[data-tooltip][data-tooltip-pos=bottom]:after{bottom:auto!important;top:100%;border-top-color:transparent!important;border-bottom-color:#1e1e2e!important;transform:translate(-50%) translateY(-5px)}[data-tooltip]:hover:before,[data-tooltip]:hover:after{opacity:1;visibility:visible}[data-tooltip]:not([data-tooltip-pos=bottom]):hover:before{transform:translate(-50%) translateY(0)}[data-tooltip]:not([data-tooltip-pos=bottom]):hover:after{transform:translate(-50%) translateY(-10px)}[data-tooltip][data-tooltip-pos=bottom]:hover:before{transform:translate(-50%) translateY(0)}[data-tooltip][data-tooltip-pos=bottom]:hover:after{transform:translate(-50%) translateY(5px)}.visualizer-wrapper{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:0;background:#0003;border-radius:8px;border:1px solid var(--glass-border)}.visualizer-container{flex:1;overflow:auto;padding:1rem;font-family:Fira Code,monospace;font-size:.9rem}.highlight-match{background-color:#eab30866;border-color:var(--warning);color:#fff!important;border-radius:4px;box-shadow:0 0 0 1px var(--warning);transition:all .2s ease}.visualizer-empty{color:var(--text-muted);font-style:italic;padding:1rem;text-align:center;width:100%}.visualizer-error{color:var(--error);background:#ef44441a;padding:1rem;border-radius:8px;border:1px solid var(--error)}.visualizer-error-friendly{padding:1.25rem;border-radius:12px;background:linear-gradient(135deg,#ef444414,#ef444405);border:1px solid rgba(239,68,68,.3);margin:1rem}.visualizer-error-friendly .error-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.visualizer-error-friendly .error-icon{font-size:1.5rem}.visualizer-error-friendly .error-title{margin:0;font-size:1.1rem;font-weight:600;color:var(--error)}.visualizer-error-friendly .error-message{margin:0 0 1rem;color:var(--text-primary);font-size:.95rem;line-height:1.5}.visualizer-error-friendly .error-suggestions{background:#ffffff08;border-radius:8px;padding:.75rem 1rem;margin-bottom:1rem}.visualizer-error-friendly .suggestions-label{display:block;font-size:.85rem;font-weight:600;color:var(--text-secondary);margin-bottom:.5rem}.visualizer-error-friendly ul{margin:0;padding-left:1.25rem}.visualizer-error-friendly li{color:var(--text-secondary);font-size:.85rem;margin-bottom:.35rem;line-height:1.4}.visualizer-error-friendly .error-details{font-size:.75rem;color:var(--text-muted)}.visualizer-error-friendly .error-details summary{cursor:pointer;opacity:.7}.visualizer-error-friendly .error-details summary:hover{opacity:1}.visualizer-error-friendly .error-details code{display:block;margin-top:.5rem;padding:.5rem;background:#0000004d;border-radius:4px;font-family:Fira Code,monospace;font-size:.75rem;overflow-x:auto}.node-call{margin-left:1rem;margin-top:.5rem;border-left:2px solid var(--glass-border);padding-left:.5rem}.node-header{font-weight:700;color:var(--accent-secondary);background:#6366f11a;display:inline-block;padding:2px 6px;border-radius:4px;margin-bottom:4px}.node-if>.node-header{color:var(--warning);background:#f59e0b1a}.node-equals>.node-header{color:var(--accent-primary)}.node-and>.node-header,.node-or>.node-header{color:var(--success)}.node-args{display:flex;flex-direction:column;gap:4px}.node-arg-wrapper{position:relative}.node-string{color:var(--success)}.node-ident{color:var(--text-primary);font-style:italic}.smart-table-wrapper{width:100%;border-radius:8px;border:1px solid var(--glass-border)}.smart-table{width:100%;border-collapse:collapse;text-align:left}.smart-table th{background:var(--bg-secondary);position:sticky;top:0;z-index:10;padding:.8rem 1rem;color:var(--text-secondary);font-weight:600;border-bottom:2px solid var(--glass-border);box-shadow:0 2px 4px #0000001a}.smart-table td{padding:.8rem 1rem;border-bottom:1px solid var(--glass-border);vertical-align:top}.smart-table tr:last-child td{border-bottom:none}.smart-table tr:nth-child(2n){background:#ffffff05}.smart-table tr:hover td{background:#ffffff0d}.smart-badge{display:inline-block;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));color:#fff;font-size:.75rem;padding:2px 8px;border-radius:12px;margin-bottom:1rem;box-shadow:0 2px 8px var(--accent-glow)}.node-keyword{color:var(--warning);font-weight:700}.header-field{color:var(--accent-secondary);background:#6366f11a;padding:2px 6px;border-radius:4px;font-family:Fira Code,monospace}.node-else{font-style:italic;opacity:.7}.simplified-condition{display:flex;align-items:center;gap:.5rem}.op-equals{color:var(--text-muted);font-weight:700}.clean-string{color:var(--text-primary);font-weight:500;font-family:var(--font-sans)}.header-label{text-transform:uppercase;font-size:.75rem;letter-spacing:.05em;color:var(--text-muted);margin-right:.5em}.segment-table{margin-bottom:2rem;box-shadow:0 4px 6px -1px #0003}.segment-tree{margin-bottom:2rem;padding:1rem;background:#0003;border-radius:8px}.segment-wrapper{margin-bottom:2rem}.segment-header{padding:.75rem 1rem;background:#ffffff08;border-bottom:1px solid var(--glass-border);font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:.75rem;font-family:var(--font-sans)}.segment-index{background:var(--accent-primary);color:#fff;font-size:.7rem;padding:2px 6px;border-radius:4px;font-family:Fira Code,monospace}.embedded-logic-wrapper{margin:0 4px;vertical-align:middle}.embedded-branch{margin:2px 0}.embedded-table-clean{border-collapse:collapse;font-size:.8em;background:#0000001a;border-radius:4px}.embedded-table-clean td{padding:2px 6px;border-bottom:1px solid var(--glass-border)}.embedded-table-clean tr:last-child td{border-bottom:none}.cell-cond{text-align:right;color:var(--text-secondary)}.cell-arrow{color:var(--text-muted);opacity:.5;padding:0 4px}.cell-val{font-weight:500;color:var(--text-primary)}.badge-else{font-size:.75rem;font-style:italic;opacity:.7;color:var(--warning)}.condition-equals-inline{display:inline-flex;align-items:center;gap:.35rem;background:#ffffff08;padding:1px 6px;border-radius:4px;border:1px solid var(--glass-border);font-family:var(--font-mono);font-size:.85em;color:var(--text-secondary)}.condition-equals-inline .field-name{color:var(--accent-secondary)}.condition-equals-inline .op{opacity:.6}.concat-stream{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;width:100%}.stream-part-wrapper{display:inline-flex;align-items:center;gap:.5rem;max-width:100%}.stream-plus{color:var(--text-muted);font-weight:300;font-size:1rem;opacity:.4;-webkit-user-select:none;user-select:none}.embedded-logic-container{display:flex;flex-direction:column;gap:8px;width:100%;margin:4px 0}.embedded-cards{display:flex;flex-direction:column;gap:6px}.logic-result-card{background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:6px;overflow:hidden}.logic-result-card .card-header{background:#0003;padding:6px 10px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--glass-border)}.logic-result-card .card-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-weight:600}.logic-result-card .card-value{font-weight:500;color:var(--text-primary)}.logic-result-card .card-reqs{padding:6px 10px;display:flex;flex-direction:column;gap:4px}.logic-result-card .reqs-label{font-size:.65rem;color:var(--accent-secondary);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.logic-result-card .sc-catch-all{font-size:.8rem;color:var(--text-muted);font-style:italic}.logic-result-card .card-value .clean-string{background:#ffffff0d;border:none;font-size:.95em;padding:2px 6px}.scenarios-container{display:flex;flex-direction:column;gap:12px;width:100%;margin:8px 0}.scenario-card{background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:8px;overflow:hidden}.scenario-card.scenario-empty{opacity:.7;border-style:dashed}.scenario-header{background:#00000040;padding:10px 14px;border-bottom:1px solid var(--glass-border);display:flex;flex-direction:column;gap:6px}.scenario-label{font-size:.65rem;text-transform:uppercase;color:var(--text-muted);letter-spacing:.05em;font-weight:700}.scenario-result-stream{display:flex;flex-wrap:wrap;align-items:center;gap:0;font-family:var(--font-mono);font-size:.95em;color:var(--text-primary);background:#0003;padding:6px 10px;border-radius:6px;border:1px solid var(--glass-border)}.scenario-result-stream .clean-string{background:transparent;border:none;padding:0;margin:0;color:var(--accent-primary);font-family:var(--font-sans);font-weight:500;white-space:pre-wrap}.scenario-result-stream .node-ident{margin:0 2px;background:#f59e0b26;border-bottom:2px solid var(--warning);border-radius:2px;padding:0 4px}.scenario-body{padding:10px 14px;display:flex;flex-direction:column;gap:8px}.scenario-reqs-list{display:flex;flex-direction:column;gap:6px}.reqs-label{font-size:.65rem;color:var(--accent-secondary);text-transform:uppercase;letter-spacing:.05em;font-weight:700}.condition-block{padding:.5rem;border-radius:6px;background:#0000001a;border:1px solid var(--glass-border)}.condition-and{border-left:3px solid var(--success)}.condition-or{border-left:3px solid var(--warning)}.condition-stack{display:flex;flex-direction:column;gap:.5rem;margin-top:.25rem}.condition-or-group{display:flex;flex-direction:column;gap:.25rem}.logic-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-weight:700;opacity:.8;margin-bottom:.25rem;display:block}.condition-tags{display:flex;flex-wrap:wrap;gap:.5rem}.condition-equals-inline{display:inline-flex;align-items:center;gap:.4rem;background:#ffffff0d;padding:2px 6px;border-radius:4px;border:1px solid var(--glass-border)}.field-name{color:var(--accent-secondary);font-size:.85rem}.smart-card-list{margin-bottom:2rem}.cards-container{display:flex;flex-direction:column;gap:1.5rem;padding:1rem;background:#ffffff05;border:1px solid var(--glass-border);border-top:none}.rule-card{background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 4px 6px #0000001a}.rule-card-header{padding:.75rem 1rem;background:var(--glass-highlight);border-bottom:1px solid var(--glass-border);display:flex;align-items:center;gap:1rem}.rule-label{text-transform:uppercase;font-size:.7rem;font-weight:700;color:var(--text-muted)}.rule-result{font-size:1.1rem;font-weight:600;color:var(--accent-primary);font-family:var(--font-sans)}.rule-card-body{padding:1rem;background:var(--bg-tertiary)}.rule-conditions-label{font-size:.75rem;color:var(--text-secondary);margin-bottom:.5rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.rule-conditions-content{padding-left:.5rem}.node-catch-all{background-color:transparent;color:var(--accent-primary);border:1px solid var(--accent-primary);padding:4px 12px;border-radius:20px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-style:italic;cursor:help;display:inline-flex;align-items:center;gap:.6rem;font-size:.75rem;box-shadow:0 2px 4px #0000001a;transition:all .2s ease}.node-catch-all:hover{background-color:var(--accent-primary);color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px var(--accent-glow)}.info-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background-color:#fff3;border:1px solid rgba(255,255,255,.6);color:#fff;font-size:.65rem;font-style:normal;font-weight:700}.tooltip-container{position:relative;display:inline-block}.tooltip-text{visibility:hidden;width:200px;background-color:#000000e6;color:#fff;text-align:center;border-radius:6px;padding:8px;position:absolute;z-index:100;bottom:125%;left:50%;margin-left:-100px;opacity:0;transition:opacity .3s;font-size:.75rem;font-weight:400;pointer-events:none;box-shadow:0 4px 6px #0000004d}.tooltip-container:hover .tooltip-text{visibility:visible;opacity:1}.portal-tooltip{position:fixed;transform:translate(-50%,-100%);background-color:#000000f2;color:#fff;text-align:center;border-radius:6px;padding:8px 12px;width:max-content;max-width:250px;z-index:9999;pointer-events:none;font-size:.8rem;font-weight:400;box-shadow:0 4px 12px #0006;border:1px solid var(--glass-border);animation:fadeIn .15s ease-out}.condition-group-container{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;padding:.85rem;background:#ffffff08;border:1px solid var(--glass-border);border-radius:10px;transition:all .2s ease}.smart-table tr:hover .condition-group-container{background:#ffffff0f;border-color:#ffffff1a;box-shadow:0 4px 12px #0000001a}.condition-group-container .field-name{font-family:Fira Code,monospace;font-weight:600;color:var(--accent-secondary);background:#6366f11a;padding:4px 8px;border-radius:6px;font-size:.8rem}.condition-group-container .op-badge{font-size:.7rem;font-weight:700;color:var(--text-muted);background:#ffffff0d;padding:3px 6px;border-radius:4px;text-transform:uppercase;letter-spacing:.05em}.value-pill-list{display:flex;flex-wrap:wrap;gap:6px;flex:1}.value-pill{background:var(--bg-tertiary);border:1px solid var(--glass-border);padding:3px 10px;border-radius:100px;font-size:.85rem;color:var(--text-primary);font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);cursor:default;display:inline-flex;align-items:center}.value-pill:hover{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary);transform:translateY(-1px);box-shadow:0 4px 8px #6366f166}.value-pill .clean-string{color:inherit!important}.target-ou-box{display:block;line-height:1.5;padding:.75rem 1.25rem;background:linear-gradient(135deg,#6366f126,#6366f10d);border:1px solid rgba(99,102,241,.3);border-left:3px solid var(--accent-primary);border-radius:8px;font-weight:600;color:var(--accent-primary);font-size:1rem;box-shadow:0 2px 4px #0000000d;transition:all .2s ease;min-height:48px}.smart-table tr:hover .target-ou-box{box-shadow:0 4px 12px #6366f133;transform:translate(2px)}.explorer-view-container{width:100%}.explorer-root{display:flex;flex-direction:column;gap:1rem}.block-container{display:flex;flex-direction:column;margin-bottom:8px;background:transparent;transition:all .2s ease;position:relative;padding-left:12px}.block-container:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--glass-border);border-radius:2px}.block-container:hover:before{background:var(--accent-primary);box-shadow:0 0 8px var(--accent-glow)}.block-header{padding:4px 8px;background:transparent;display:flex;align-items:center;gap:8px}.block-func-name{font-family:Fira Code,monospace;font-weight:700;font-size:.95rem;color:var(--text-primary)}.block-args-list{padding:0;display:flex;flex-direction:column;gap:4px}.block-arg-wrapper{display:flex;flex-direction:column}.block-arg-label{font-size:.6rem;text-transform:uppercase;color:var(--text-muted);margin-bottom:0;margin-left:12px;font-weight:600;letter-spacing:.05em;opacity:.7}.block-arg-label-top{font-size:.6rem;text-transform:uppercase;color:var(--text-muted);background:#ffffff0d;padding:1px 5px;border-radius:4px;font-weight:600;letter-spacing:.05em}.block-leaf{padding:4px 8px;background:#ffffff08;border-bottom:1px solid var(--glass-border);border-radius:4px;display:flex;flex-direction:column;width:fit-content;min-width:60px;margin-left:12px}.block-leaf-arg{background:#ffffff05}.block-func-control:before{background:var(--accent-primary);opacity:.5}.block-func-control .block-func-name{color:var(--accent-primary)}.block-func-logic:before{background:var(--success);opacity:.5}.block-func-logic .block-func-name{color:var(--success)}.block-func-string:before{background:var(--warning);opacity:.5}.block-func-string .block-func-name{color:var(--warning)}.block-inline-func{display:inline-flex;align-items:baseline;gap:4px;padding:2px 6px;background:#ffffff0d;border-radius:4px;border:1px solid var(--glass-border);margin:2px 0 2px 12px}.block-func-name-inline{font-family:Fira Code,monospace;font-weight:600;font-size:.9rem;color:var(--accent-secondary)}.block-arg-label-inline{font-size:.6rem;text-transform:uppercase;color:var(--text-muted);margin-right:4px;font-weight:700}.block-comma{color:var(--text-muted)}.block-paren{color:var(--text-muted);opacity:.7}.block-func-generic:before{background:var(--text-muted);opacity:.3}.json-tree-editor{font-family:Fira Code,monospace;font-size:.85rem;color:var(--text-primary)}.tree-controls{display:flex;gap:.5rem;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--glass-border)}.tree-btn{padding:4px 10px;font-size:.75rem;background:#ffffff0d;border:1px solid var(--glass-border);border-radius:4px;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.tree-btn:hover{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.tree-root{padding-left:0}.tree-node{line-height:1.6}.tree-node-row{display:flex;align-items:center;gap:4px;padding:2px 0;border-radius:4px;transition:background .15s ease}.tree-node-row:hover{background:#ffffff08}.tree-connector{color:var(--text-muted);opacity:.4;font-size:.8em;-webkit-user-select:none;user-select:none;width:18px;flex-shrink:0}.tree-toggle{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;font-size:.7em;transition:color .2s ease;flex-shrink:0}.tree-toggle:hover{color:var(--accent-primary)}.tree-toggle-placeholder{width:16px;flex-shrink:0}.tree-key{color:var(--accent-secondary);font-weight:600}.tree-colon{color:var(--text-muted);margin-right:4px}.tree-type-badge{font-size:.75em;color:var(--text-muted);background:#ffffff0d;padding:1px 6px;border-radius:4px}.tree-value-wrapper{cursor:pointer;padding:1px 4px;border-radius:4px;transition:background .15s ease}.tree-value-wrapper:hover{background:#ffffff1a}.tree-value{font-family:Fira Code,monospace}.tree-string{color:var(--success)}.tree-number{color:#6ee7b7}.tree-boolean{color:var(--warning);font-weight:600}.tree-null{color:var(--text-muted);font-style:italic}.tree-edit-input{background:#0000004d;border:1px solid var(--accent-primary);border-radius:4px;color:var(--text-primary);font-family:Fira Code,monospace;font-size:inherit;padding:2px 6px;outline:none;min-width:100px}.tree-node-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s ease;margin-left:8px}.tree-node-row:hover .tree-node-actions{opacity:1}.tree-action-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;font-size:.8rem;border-radius:4px;transition:all .2s ease}.tree-action-btn:hover{color:#fff;background:var(--accent-primary)}.tree-action-btn.delete:hover{background:#ef4444}.tree-children{padding-left:20px;border-left:1px solid var(--glass-border);margin-left:8px}.tree-empty{color:var(--text-muted);font-style:italic;padding:1rem;text-align:center}.syntax-editor-wrapper{position:relative;width:100%;min-height:200px;font-family:var(--font-mono);font-size:1.2rem;line-height:1.6}.syntax-highlight-layer,.syntax-editor-input{position:absolute;top:0;left:0;width:100%;height:100%;margin:0;padding:1.5rem;border:1px solid var(--glass-border);border-radius:8px;font-family:inherit;font-size:inherit;line-height:inherit;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;box-sizing:border-box;overflow:auto}.syntax-highlight-layer{background:var(--bg-secondary);color:var(--text-primary);pointer-events:none;z-index:1}.syntax-editor-input{position:relative;background:transparent;color:transparent;caret-color:var(--text-primary);resize:vertical;outline:none;z-index:2;transition:border-color .2s ease,box-shadow .2s ease}.syntax-editor-input::placeholder{color:var(--text-muted)}.syntax-editor-input::selection{background-color:#6366f14d}.syntax-editor-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px #6366f133}.syntax-editor-input:focus+.syntax-highlight-layer{background:#0000004d;border-color:var(--accent-primary)}.token-wrapper{color:var(--accent-secondary);font-weight:700}.token-string{color:#fbbf24}.token-function{color:#a78bfa;font-weight:600}.token-field{color:#60a5fa}.token-number{color:#34d399}.range-highlight{background-color:#eab30840;border-radius:2px;box-shadow:0 0 0 1px #eab3081a}.syntax-highlight-layer,.syntax-editor-input{padding-bottom:4rem}.training-layout-workbench .syntax-editor-wrapper,.training-layout-workbench .syntax-editor-input,.training-layout-workbench .syntax-highlight-layer{height:100%}.syntax-tooltip{position:fixed;z-index:9999;pointer-events:none;background:#1e293b;border:1px solid #334155;border-radius:8px;padding:1rem;color:#e2e8f0;box-shadow:0 10px 25px -5px #0000004d,0 8px 10px -6px #0000004d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:380px;max-width:90vw;font-family:var(--font-sans);font-size:.9rem;animation:tooltip-fade .15s ease-out;transform:translate(-50%,-100%) translateY(-12px);line-height:1.5}@keyframes tooltip-fade{0%{opacity:0;transform:translate(-50%,-100%) translateY(0)}to{opacity:1;transform:translate(-50%,-100%) translateY(-12px)}}.editor-tooltip{display:flex;flex-direction:column;gap:1rem}.tooltip-header{display:flex;align-items:baseline;gap:.75rem;border-bottom:1px solid #334155;padding-bottom:.75rem;margin-bottom:-.25rem}.tooltip-title{font-family:var(--font-mono);font-size:1.1rem;font-weight:700;color:#a78bfa}.tooltip-arity{color:#94a3b8;font-size:.8rem}.tooltip-desc{color:#cbd5e1;font-size:.9rem}.tooltip-section{display:flex;flex-direction:column;gap:.5rem}.tooltip-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600;color:#64748b}.tooltip-code{background:#0f172a;padding:.5rem .75rem;border-radius:6px;font-family:var(--font-mono);font-size:.85rem;color:#e2e8f0;border:1px solid #334155}.tooltip-args{display:flex;flex-direction:column;gap:.5rem}.tooltip-arg-row{display:flex;align-items:baseline;gap:.75rem}.tooltip-arg-tag{font-family:var(--font-mono);font-size:.8rem;background:#7c3aed26;color:#c4b5fd;padding:.1rem .4rem;border-radius:4px;flex-shrink:0}.tooltip-arg-desc{font-size:.85rem;color:#94a3b8}.measurement-char{visibility:hidden;position:absolute;pointer-events:none;z-index:-999}.logic-editor-container{position:relative;flex:1;display:flex;flex-direction:column;background:#0003;border-radius:8px;border:1px solid var(--glass-border);overflow:hidden}.logic-editor-container .backdrop,.logic-editor-container .editor-textarea{position:absolute;top:0;left:0;width:100%;height:100%;margin:0;padding:1rem;border:none;font-family:Fira Code,monospace;font-size:.9rem;line-height:1.5;box-sizing:border-box;white-space:pre-wrap;word-wrap:break-word}.logic-editor-container .backdrop{z-index:1;color:var(--text-primary);pointer-events:none;overflow:hidden}.logic-editor-container .editor-textarea{z-index:2;color:transparent;background:transparent;caret-color:var(--text-primary);resize:none;outline:none;overflow:auto}.editor-highlight{background-color:#6366f159;border-radius:3px;box-shadow:0 0 0 2px #6366f159;color:#fff}.main-editor-syntax,.main-editor-logic{flex:1;display:flex;flex-direction:column;height:100%!important;min-height:300px;background:#0003;border:1px solid var(--glass-border);border-radius:8px}.main-editor-logic .backdrop,.main-editor-logic .editor-textarea{font-size:1.2rem!important;line-height:1.6!important;padding:1.5rem!important;font-family:var(--font-mono)!important;letter-spacing:normal}.main-editor-syntax .syntax-editor-input,.main-editor-syntax .syntax-highlight-layer{font-size:1.2rem!important;line-height:1.6!important;padding:1.5rem!important;font-family:var(--font-mono)!important;border:none!important;background:transparent!important}.syntax-plain{color:var(--text-primary)}.syntax-keyword{color:var(--accent-primary);font-weight:600}.syntax-string{color:var(--warning)}.syntax-number{color:var(--success)}.syntax-bool{color:#e879f9;font-weight:600}.syntax-ident{color:#94a3b8}.data-actions-group{display:flex;background:var(--bg-tertiary);padding:2px;border-radius:6px;border:1px solid var(--glass-border)}.btn-icon{background:transparent;border:none;color:var(--text-secondary);padding:4px 8px;border-radius:4px;display:flex;align-items:center;gap:6px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-icon:hover{background:var(--glass-highlight);color:var(--text-primary)}.btn-icon svg{opacity:.7;transition:opacity .2s ease}.btn-icon:hover svg{opacity:1}.btn-tertiary{background:transparent;border:1px solid var(--glass-border);color:var(--text-muted);padding:4px 10px;border-radius:6px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-tertiary:hover{border-color:var(--text-secondary);color:var(--text-secondary);background:var(--glass-highlight)}.docs-overlay{position:fixed;inset:0;background:#000000bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease}.docs-modal{width:90vw;height:85vh;max-width:1200px;background:var(--bg-secondary);border-radius:12px;border:1px solid var(--glass-border);box-shadow:0 25px 50px -12px #00000080;display:flex;overflow:hidden;animation:scaleIn .2s ease}@keyframes scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.docs-sidebar{width:260px;background:var(--bg-tertiary);border-right:1px solid var(--glass-border);display:flex;flex-direction:column}.docs-sidebar-header{padding:1.5rem;border-bottom:1px solid var(--glass-border)}.docs-sidebar-header h2{font-size:1.1rem;font-weight:600;margin:0;color:var(--text-primary)}.docs-nav{padding:1rem;display:flex;flex-direction:column;gap:.25rem}.docs-nav-item{text-align:left;background:transparent;border:none;padding:.75rem 1rem;color:var(--text-secondary);border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .15s ease}.docs-nav-item:hover{background:var(--glass-highlight);color:var(--text-primary)}.docs-nav-item.active{background:var(--accent-glow);color:var(--accent-secondary)}.docs-main-area{flex:1;display:flex;flex-direction:column;background:var(--bg-secondary)}.docs-main-header{padding:1rem 2rem;border-bottom:1px solid var(--glass-border);display:flex;justify-content:space-between;align-items:center}.breadcrumbs{color:var(--text-muted);font-size:.9rem;text-transform:capitalize}.breadcrumbs span:last-child{color:var(--text-primary)}.btn-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-muted);padding:.25rem;line-height:1;border-radius:4px;transition:all .2s ease}.btn-close:hover{background:var(--glass-highlight);color:var(--text-primary)}.docs-scroll-container{flex:1;overflow-y:auto;padding:2rem 3rem}.docs-page-header{margin-bottom:3rem;padding-bottom:1.5rem;border-bottom:1px solid var(--glass-border)}.docs-page-header h3{font-size:1.8rem;margin:0 0 .75rem;background:linear-gradient(135deg,var(--text-primary) 0%,var(--text-secondary) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.docs-page-header p{font-size:1.1rem;color:var(--text-secondary);margin:0}.docs-section{margin-bottom:4rem}.docs-section h4{font-size:1.2rem;color:var(--accent-secondary);margin:0 0 1rem}.docs-section p{color:var(--text-secondary);line-height:1.6;margin-bottom:1.5rem}.docs-section p.note{background:#f59e0b1a;color:var(--warning);padding:1rem;border-radius:6px;border:1px solid rgba(245,158,11,.2);font-size:.9rem}.docs-table{width:100%;border-collapse:collapse;font-size:.95rem;margin-top:1rem}.docs-table th{text-align:left;padding:1rem;color:var(--text-muted);border-bottom:1px solid var(--glass-border);font-weight:500}.docs-table td{padding:1rem;border-bottom:1px solid var(--glass-border);color:var(--text-primary);vertical-align:top}.docs-table code{background:var(--bg-tertiary);padding:.25rem .5rem;border-radius:4px;font-family:var(--font-mono);font-size:.85em;color:var(--accent-secondary);border:1px solid var(--glass-border)}.example-result{display:block;margin-top:.5rem;font-size:.85rem;color:var(--text-muted);font-family:var(--font-mono)}.code-example-block{background:var(--bg-tertiary);padding:1.5rem;border-radius:8px;border:1px solid var(--glass-border);margin:1rem 0;overflow-x:auto}.code-example-block code{font-family:var(--font-mono);color:var(--text-primary);font-size:.9rem;line-height:1.5;white-space:pre}.tag-all,.tag-student,.tag-teacher,.tag-staff{display:inline-block;padding:.25rem .6rem;border-radius:12px;font-size:.75rem;font-weight:600;margin-right:.5rem;margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.05em}.tag-all{background:#6366f126;color:var(--accent-secondary);border:1px solid rgba(236,72,153,.3)}.docs-divider{border:0;border-top:1px solid var(--glass-border);margin:4rem 0}.example-scenarios{margin-top:1.5rem;background:#0000001a;border-radius:8px;overflow:hidden;border:1px solid var(--glass-border)}.example-scenarios h5{margin:0;padding:.75rem 1rem;background:var(--glass-highlight);font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-bottom:1px solid var(--glass-border)}.docs-filter-bar{display:flex;align-items:center;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--glass-border)}.filter-label{font-size:.9rem;color:var(--text-secondary)}.filter-buttons{display:flex;gap:.5rem}.filter-btn{background:var(--bg-tertiary);border:1px solid var(--glass-border);color:var(--text-secondary);padding:.4rem .8rem;border-radius:6px;cursor:pointer;font-size:.85rem;transition:all .2s ease;font-family:var(--font-sans)}.filter-btn:hover{background:var(--glass-highlight);color:var(--text-primary)}.filter-btn.active{background:var(--accent-glow);color:var(--accent-secondary);border-color:var(--accent-secondary)}.docs-empty-state{padding:3rem;text-align:center;color:var(--text-muted);font-style:italic;background:#0000001a;border-radius:8px;margin-top:2rem}.result-table{margin-top:0}.result-table th,.result-table td{padding:.75rem 1rem}.result-value{color:var(--success);font-family:var(--font-mono);font-weight:600}.tag-student{color:var(--success);border-color:#10b9814d;box-shadow:0 0 8px #10b9811a}.tag-teacher{color:var(--warning);border-color:#f59e0b4d;box-shadow:0 0 8px #f59e0b1a}.tag-staff{color:#c084fc;border-color:#c084fc4d;box-shadow:0 0 8px #c084fc1a}.example-select option{background:var(--bg-secondary);color:var(--text-primary)}.editor-wrapper{flex:1;display:flex;flex-direction:column;overflow:hidden;height:100%}.editor-area{flex:1;background:#0003;border-radius:8px;border:1px solid var(--glass-border);padding:1rem;color:var(--text-primary);resize:none;font-family:Fira Code,monospace;font-size:.9rem;line-height:1.5}.btn-show-example{background:transparent;border:1px solid var(--glass-border);color:var(--accent-secondary);padding:4px 12px;border-radius:4px;cursor:pointer;font-size:.8rem;transition:all .2s ease}.btn-show-example:hover{background:var(--glass-highlight);border-color:var(--accent-secondary)}.btn-show-example.active{background:var(--accent-secondary);color:#fff;border-color:var(--accent-secondary)}.op-row-expanded td{border-bottom:none!important;background:#ffffff05}.example-row td{padding:0 1rem 1rem!important;background:#ffffff05}.example-details{background:#0003;border:1px solid var(--glass-border);border-radius:6px;padding:1rem;margin-top:.5rem}.example-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--glass-border)}.example-item{display:flex;flex-direction:column;gap:.25rem}.example-label{text-transform:uppercase;font-size:.7rem;color:var(--text-muted);font-weight:600}.example-translation{display:flex;gap:.75rem;align-items:flex-start;color:var(--text-secondary);font-size:.9rem;line-height:1.4}.viz-icon{font-size:1.2rem}.op-syntax{display:inline-block;font-size:.85rem;font-family:var(--font-mono);color:var(--accent-secondary);background:#6366f11a;padding:2px 6px;border-radius:4px;margin-bottom:.5rem}.docs-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1.5rem}.docs-list li{position:relative;padding-left:1.5rem;color:var(--text-secondary);line-height:1.6}.docs-list li:before{content:"•";position:absolute;left:0;color:var(--accent-primary);font-weight:700}.code-example-mini{background:var(--bg-tertiary);padding:.5rem .75rem;border-radius:4px;border:1px solid var(--glass-border);font-family:var(--font-mono);font-size:.85rem;color:var(--text-secondary);display:inline-block}.code-example-mini code{color:var(--accent-secondary);font-weight:600;margin-right:.5rem}.docs-workspace{display:flex;flex:1;min-height:0;gap:0}.docs-sidebar-container{width:280px;min-width:280px;background:var(--bg-secondary);border-right:1px solid var(--glass-border);display:flex;flex-direction:column;transition:all .3s ease}.docs-sidebar-container.collapsed{width:60px;min-width:60px}.docs-sidebar-container.collapsed .docs-sidebar-header h2,.docs-sidebar-container.collapsed .nav-label,.docs-sidebar-container.collapsed .docs-nav-section-title{display:none}.docs-sidebar-container.collapsed .docs-nav-btn{justify-content:center;padding:.75rem}.docs-sidebar-container.collapsed .nav-icon{margin-right:0}.docs-nav-rail{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1.5rem 0;flex:1}.nav-rail-dot{position:relative;width:12px;height:12px;border-radius:50%;background:var(--glass-border);border:2px solid transparent;cursor:pointer;transition:all .2s ease;padding:0}.nav-rail-dot:hover{background:var(--accent-secondary);transform:scale(1.3);box-shadow:0 0 12px #6366f166}.nav-rail-dot.active{background:var(--accent-secondary);border-color:var(--accent-primary);box-shadow:0 0 8px #6366f180}.nav-rail-tooltip{position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%);background:var(--bg-tertiary);color:var(--text-primary);padding:.5rem .75rem;border-radius:6px;font-size:.8rem;white-space:nowrap;opacity:0;visibility:hidden;transition:all .15s ease;pointer-events:none;border:1px solid var(--glass-border);box-shadow:0 4px 12px #0000004d;z-index:100}.nav-rail-tooltip:before{content:"";position:absolute;right:100%;top:50%;transform:translateY(-50%);border:6px solid transparent;border-right-color:var(--glass-border)}.nav-rail-tooltip:after{content:"";position:absolute;right:100%;top:50%;transform:translateY(-50%);border:5px solid transparent;border-right-color:var(--bg-tertiary)}.nav-rail-dot:hover .nav-rail-tooltip{opacity:1;visibility:visible}.docs-nav-full.hidden{display:none}.docs-sidebar-inner{display:flex;flex-direction:column;height:100%;overflow:hidden}.docs-sidebar-header{padding:1.25rem 1.5rem;border-bottom:1px solid var(--glass-border);display:flex;align-items:center;justify-content:space-between}.docs-sidebar-header h2{font-size:1.1rem;font-weight:600;margin:0;color:var(--text-primary);white-space:nowrap}.btn-collapse-sidebar{background:transparent;border:1px solid var(--glass-border);color:var(--text-muted);width:28px;height:28px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;font-size:.8rem}.btn-collapse-sidebar:hover{background:var(--glass-highlight);color:var(--text-primary);border-color:var(--accent-secondary)}.docs-nav-full{flex:1;overflow-y:auto;padding:1rem 0}.docs-nav-section{margin-bottom:1.5rem}.docs-nav-section-title{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:0 1.5rem;margin-bottom:.5rem;font-weight:600}.docs-nav-btn{width:100%;display:flex;align-items:center;gap:.75rem;padding:.65rem 1.5rem;background:transparent;border:none;color:var(--text-secondary);font-size:.9rem;cursor:pointer;transition:all .15s ease;text-align:left;font-family:var(--font-sans)}.docs-nav-btn:hover{background:var(--glass-highlight);color:var(--text-primary)}.docs-nav-btn.active{background:var(--accent-glow);color:var(--accent-secondary);border-left:3px solid var(--accent-secondary)}.nav-icon{font-size:1rem;width:1.25rem;text-align:center}.nav-label{white-space:nowrap}.docs-main-content{flex:1;display:flex;flex-direction:column;min-width:0;background:var(--bg-primary)}.docs-breadcrumbs{padding:1rem 2rem;border-bottom:1px solid var(--glass-border);font-size:.85rem;display:flex;align-items:center;gap:.5rem;background:var(--bg-secondary)}.breadcrumb-item{color:var(--text-muted)}.breadcrumb-item.active{color:var(--text-primary)}.breadcrumb-separator{color:var(--text-muted);opacity:.5}.docs-content-scroll{flex:1;overflow-y:auto;padding:2rem 3rem}@media(max-width:1024px){.docs-sidebar-container{width:220px;min-width:220px}.docs-content-scroll{padding:1.5rem 2rem}}@media(max-width:768px){.docs-workspace{flex-direction:column}.docs-sidebar-container{width:100%;min-width:100%;max-height:50vh;border-right:none;border-bottom:1px solid var(--glass-border)}.docs-content-scroll{padding:1rem}}.docs-sub-nav{padding-left:2.5rem;padding-top:.25rem;padding-bottom:.5rem;display:flex;flex-direction:column;gap:.15rem}.docs-sub-nav-item{background:transparent;border:none;padding:.35rem .75rem;color:var(--text-muted);font-size:.8rem;font-family:var(--font-mono);cursor:pointer;text-align:left;border-radius:4px;transition:all .15s ease}.docs-sub-nav-item:hover{background:var(--glass-highlight);color:var(--accent-secondary)}.nav-expand-icon{margin-left:auto;font-size:.6rem;color:var(--text-muted);padding:.25rem;transition:transform .2s ease}.docs-nav-btn{position:relative}.docs-nav-btn .nav-expand-icon:hover{color:var(--accent-secondary)}.docs-intro-hero{background:linear-gradient(135deg,#6366f11a,#ec48990d);padding:3rem;border-radius:12px;border:1px solid var(--glass-border);margin-bottom:3rem;text-align:center}.docs-intro-hero h3{font-size:2.5rem;margin-bottom:1rem;background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.docs-intro-hero p{font-size:1.2rem;color:var(--text-secondary);max-width:600px;margin:0 auto}.docs-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:3rem}.docs-feature-card{background:var(--bg-tertiary);padding:1.5rem;border-radius:8px;border:1px solid var(--glass-border);transition:transform .2s ease,box-shadow .2s ease}.docs-feature-card:hover{transform:translateY(-2px);box-shadow:0 10px 20px -5px #0003;border-color:var(--accent-secondary)}.docs-feature-card h4{color:var(--text-primary);margin:0 0 .75rem;font-size:1.1rem;display:flex;align-items:center;gap:.5rem}.docs-feature-card p{color:var(--text-secondary);font-size:.95rem;line-height:1.6;margin:0}.docs-info-block{background:#6366f10d;border-left:4px solid var(--accent-primary);padding:2rem;border-radius:0 8px 8px 0;margin-top:3rem}.docs-info-block h4{color:var(--accent-primary);font-size:1.1rem;margin:0 0 1rem;text-transform:uppercase;letter-spacing:.05em}.docs-info-block p{color:var(--text-secondary);margin-bottom:1rem}.docs-info-block p:last-child{margin-bottom:0}.docs-analogy-box{margin-top:1.5rem;background:var(--bg-tertiary);border:1px solid var(--glass-border);border-radius:8px;padding:1rem 1.5rem;display:flex;align-items:flex-start;gap:1rem}.docs-analogy-icon{font-size:1.2rem;padding-top:.1rem}.docs-analogy-content h5{margin:0 0 .25rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.docs-analogy-content p{margin:0;font-size:.95rem;color:var(--text-secondary);line-height:1.5}.docs-analogy-content strong{color:var(--text-primary)}.training-workspace{display:grid;grid-template-columns:280px 1fr;grid-template-rows:minmax(0,1fr);flex:1;min-height:0;overflow:hidden}.training-workspace.sidebar-collapsed{grid-template-columns:72px 1fr}.training-main{background:var(--bg-primary);overflow-y:auto;padding:2rem}.training-style-switch{display:inline-flex;align-items:center;gap:.15rem;padding:.15rem .3rem;border-radius:999px;background:#0f172ae6;border:1px solid var(--glass-border)}.training-style-switch-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:0 .4rem 0 .2rem}.training-style-pill{border-radius:999px;border:none;background:transparent;color:var(--text-muted);padding:.2rem .6rem;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .15s ease}.training-style-pill:hover{color:var(--text-primary);background:#ffffff0a}.training-style-pill.active{background:var(--primary);color:#fff;box-shadow:0 0 0 1px #818cf8e6}.training-sidebar{width:100%;background:var(--bg-secondary);border-right:1px solid var(--glass-border);display:flex;flex-direction:column;min-width:0}.training-sidebar.collapsed{align-items:stretch}.sidebar-header{padding:1.25rem;border-bottom:1px solid var(--glass-border)}.sidebar-header-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.sidebar-toggle{background:transparent;border:1px solid var(--glass-border);color:var(--text-muted);width:32px;height:32px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.sidebar-toggle:hover{background:#ffffff08;color:var(--text-primary);border-color:#6366f159}.training-sidebar.collapsed .sidebar-header{padding:.75rem}.training-sidebar.collapsed .sidebar-header h2,.training-sidebar.collapsed .progress-text{display:none}.training-sidebar.collapsed .sidebar-header-row{justify-content:center}.sidebar-header h2{font-size:1.2rem;margin:0 0 .5rem;color:var(--text-primary)}.progress-text{font-size:.85rem;color:var(--text-muted)}.level-list{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.5rem}.training-sidebar.collapsed .level-list{padding:.5rem;gap:.35rem}.level-item{position:relative;display:flex;align-items:center;gap:.75rem;padding:.65rem .75rem .65rem 1.25rem;background:transparent;border:1px solid transparent;width:100%;text-align:left;border-radius:8px}.level-item:before{content:"";position:absolute;left:0;top:.55rem;bottom:.55rem;width:2px;border-radius:999px;background:transparent;transition:background .2s ease,opacity .2s ease}.level-item.active:before{background:linear-gradient(180deg,var(--accent-secondary),var(--accent-primary));opacity:1}.level-item.completed:before{background:linear-gradient(180deg,var(--success),#22c55e);opacity:.9}.training-sidebar.collapsed .level-item{flex-direction:column;align-items:center;justify-content:center;gap:.35rem;padding:.6rem .25rem}.level-item:disabled{opacity:.5;cursor:not-allowed}.level-item:focus,.level-item:focus-visible{outline:none}.level-item.active{background:#6366f11f;border-color:#818cf8e6;box-shadow:0 0 0 1px #4f46e599}.training-sidebar:not(.collapsed) .chapter-item.active{background:transparent;border-color:transparent;box-shadow:none}.level-item.active .level-status{color:var(--accent-secondary)}.level-item.active .level-title{color:var(--text-primary);font-weight:600}.level-item.completed .level-status{color:var(--success)}.level-status{width:auto;height:auto;border-radius:0;border:none;display:inline-flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;flex-shrink:0;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:#94a3b8e6;padding:0}.level-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.level-title{font-size:.9rem;font-weight:500;color:var(--text-secondary)}.step-subnav{margin:.35rem 0 .75rem 1.25rem;padding-left:.75rem;border-left:1px solid var(--glass-border);display:flex;flex-direction:column;gap:.25rem}.step-item{padding:.55rem .75rem;border-radius:7px}.step-item .level-status{width:22px;height:22px;font-size:.75rem;border-width:1px}.step-item .level-title{font-size:.85rem;color:var(--text-secondary)}.step-item.active .level-title{color:var(--text-primary)}.rail-step-indicator{font-size:.75rem;font-weight:700;line-height:1;padding:2px 7px;border-radius:999px;background:#6366f12e;border:1px solid rgba(99,102,241,.35);color:var(--text-primary)}.level-item.locked{opacity:.55}.level-item.locked .level-status{border-color:#94a3b859;color:#94a3b8b3;background:transparent}.level-item.locked .level-title{color:#94a3b8b3}.level-item.locked .chapter-progress-bar{opacity:.3}.quiz-level{max-width:1200px;margin:0 auto}.quiz-header{margin-bottom:2rem}.quiz-header h2{font-size:2rem;margin-bottom:.5rem}.quiz-desc{font-size:1.1rem;color:var(--text-muted);max-width:800px}.quiz-content{display:grid;grid-template-columns:300px 1fr 300px;gap:1.5rem;align-items:start}.quiz-card{background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:12px;padding:1.5rem}.quiz-card h3{font-size:.9rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:1rem;margin-top:0}.goal-box{background:var(--bg-tertiary);padding:1rem;border-radius:8px;font-size:.95rem;margin-bottom:1.5rem;line-height:1.5}.data-preview{background:#1a1a1a;padding:1rem;border-radius:8px;font-family:Fira Code,monospace;font-size:.8rem;color:#a5b3ce;overflow-x:auto}.editor-panel{display:flex;flex-direction:column;gap:1rem}.quiz-editor{width:100%;height:200px;min-height:300px;background:#1a1a1a;border:1px solid var(--glass-border);border-radius:12px;padding:1.5rem;font-family:Fira Code,monospace;font-size:1rem;color:var(--text-primary);resize:vertical;line-height:1.6}.quiz-editor:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #6366f133}.result-box{padding:1rem;border-radius:8px;font-family:Fira Code,monospace;min-height:3rem;display:flex;align-items:center;margin-bottom:1.5rem}.result-box.expected{background:#6366f11a;border:1px dashed var(--primary);color:var(--primary)}.result-box.actual{background:var(--bg-tertiary);border:1px solid var(--glass-border)}.result-box.actual.correct{background:#10b9811a;border-color:var(--success);color:var(--success)}.success-banner{background:linear-gradient(135deg,var(--success) 0%,#059669 100%);color:#fff;padding:1rem 1.5rem;border-radius:12px;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:1rem;text-align:center;animation:successSlideIn .4s cubic-bezier(.34,1.56,.64,1);box-shadow:0 4px 20px #10b98166,0 0 40px #10b98133;margin-bottom:1rem}.success-banner-fixed{position:fixed;top:0;left:0;right:0;z-index:9999;background:linear-gradient(135deg,var(--success) 0%,#059669 100%);color:#fff;padding:1rem 2rem;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:1rem;text-align:center;animation:successSlideDown .4s cubic-bezier(.34,1.56,.64,1);box-shadow:0 4px 30px #10b98180,0 0 60px #10b9814d}.success-banner-fixed .success-icon{font-size:1.8rem;animation:successBounce .6s ease-out .2s}.success-banner-fixed .success-message{font-size:1.1rem;line-height:1.4}.success-banner-fixed .success-message strong{margin-right:.5rem}@keyframes successSlideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.success-banner .success-icon{font-size:2rem;animation:successBounce .6s ease-out .2s}.success-banner .success-message{font-size:1.1rem;line-height:1.4}.success-banner .success-message strong{display:block;font-size:1.2rem;margin-bottom:.1rem}@keyframes successSlideIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes successBounce{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.check-icon{font-size:2rem;background:#fff3;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center}.success-text{font-weight:600;font-size:1.1rem}.btn-next{background:#fff;color:var(--success);border:none;font-weight:600;width:100%}.btn-next:hover{background:#f0fdf4}.hint-text{color:var(--text-muted);font-size:.9rem;text-align:center;font-style:italic}.error-msg{color:#ef4444;font-size:.9rem;background:#ef44441a;padding:.75rem;border-radius:6px}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1100px){.quiz-content{grid-template-columns:1fr;grid-template-rows:auto auto auto}}.layout-focus{width:100%;padding:2rem 0 6rem;display:flex;flex-direction:column;align-items:center}.focus-container{width:100%;max-width:1000px;margin:0 auto;padding:0 1rem;display:flex;flex-direction:column;gap:2.5rem}.focus-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.btn-back-simple{background:none;border:none;color:var(--text-muted);font-size:.9rem;cursor:pointer;padding:0}.focus-breadcrumbs{font-size:.85rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.focus-title{font-size:2.5rem;font-weight:700;margin:0;color:var(--text-primary);line-height:1.2}.focus-content{font-size:1.1rem;line-height:1.7;color:var(--text-secondary)}.focus-goal-card{background:#6366f11a;border:1px solid rgba(99,102,241,.2);border-radius:8px;padding:1.5rem;display:flex;flex-direction:column;gap:.5rem}.focus-goal-card .card-label{font-size:.75rem;text-transform:uppercase;color:var(--accent-primary);font-weight:600;letter-spacing:.1em}.focus-goal-card .card-text{font-size:1.1rem;font-weight:500;color:var(--text-primary)}.editor-label-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;font-size:.9rem;font-weight:500;color:var(--text-muted)}.live-tag{font-size:.7rem;background:#10b9811a;color:var(--success);padding:2px 6px;border-radius:4px;border:1px solid rgba(16,185,129,.2)}.results-hint{font-size:.75rem;color:var(--text-muted);font-weight:400;opacity:.8}.focus-editor{width:100%;min-height:200px;background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:8px;padding:1.5rem;font-family:var(--font-mono);font-size:1.2rem;color:var(--text-primary);line-height:1.6;resize:vertical;display:block;box-sizing:border-box}.focus-editor:focus{outline:none;border-color:var(--accent-primary);background:#0000004d}.focus-hints{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.hint-text{background:#ffffff0d;padding:.75rem 1rem;border-radius:6px;border-left:3px solid var(--accent-secondary);color:var(--text-primary);font-size:.95rem;display:flex;align-items:center;gap:.5rem}.btn-hint-link{background:none;border:none;color:var(--accent-secondary);text-decoration:none;cursor:pointer;align-self:flex-start;font-size:.9rem;display:flex;align-items:center;gap:.5rem;padding:.5rem 0;transition:color .2s}.btn-hint-link:hover{color:var(--accent-primary);text-decoration:underline}.focus-data-preview{font-size:.85rem;color:var(--text-muted);margin-bottom:1rem;display:flex;gap:.5rem;align-items:center}.focus-data-preview code{background:#ffffff0d;padding:.2rem .5rem;border-radius:4px;font-family:var(--font-mono)}.focus-test-item{display:flex;flex-direction:column;padding:1rem 1.25rem;border-radius:6px;background:var(--bg-secondary);border:1px solid var(--glass-border);margin-bottom:.75rem;cursor:pointer;transition:all .2s ease}.focus-test-item:hover{background:var(--bg-tertiary);border-color:#ffffff26}.focus-test-item.selected{border-color:var(--accent-primary);background:#6366f10f}.focus-test-item.pass{border-left:3px solid var(--success)}.focus-test-item.fail{border-left:3px solid var(--text-muted)}.label-tiny{display:inline-block;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);opacity:.4;margin-right:.75rem;min-width:60px}.focus-test-item.selected .label-tiny{opacity:.8;color:var(--accent-secondary)}.evaluation-row{display:flex;align-items:flex-start;padding:.25rem 0}.evaluation-actual{margin-top:.4rem;padding-top:.6rem;border-top:1px solid rgba(255,255,255,.04)}.actual-row{display:flex;align-items:center;gap:.75rem;font-family:var(--font-mono);word-break:break-all;flex:1}.case-name{font-weight:600;color:var(--text-secondary)}.case-exp{font-size:.85rem;color:var(--text-muted)}.focus-test-item{padding:1rem 1.25rem}.btn-focus-continue{width:100%;padding:1rem;background:var(--success);border:none;border-radius:8px;color:#fff;font-weight:600;font-size:1.1rem;cursor:pointer}.btn-focus-continue:disabled,.btn-focus-continue.disabled{background:var(--bg-tertiary);border:1px solid var(--glass-border);color:var(--text-muted);cursor:not-allowed;opacity:.6}.btn-focus-skip{width:100%;padding:1rem;background:transparent;border:1px solid var(--glass-border);border-radius:8px;color:var(--text-muted);font-weight:500;font-size:1rem;cursor:pointer;transition:all .2s ease}.btn-focus-skip:hover{background:#ffffff0d;border-color:var(--text-muted);color:var(--text-primary)}.focus-reference-card{background:var(--bg-tertiary);border:1px solid var(--glass-border);border-left:4px solid var(--accent-secondary);border-radius:8px;margin-bottom:0;overflow:hidden;box-shadow:0 4px 6px #0000001a}.focus-reference-card .card-header{background:#ffffff0d;padding:.75rem 1rem;border-bottom:1px solid var(--glass-border);display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:600;text-transform:uppercase;color:var(--text-muted);letter-spacing:.05em}.focus-reference-card .json-content{margin:0;padding:1.5rem;font-family:Fira Code,monospace;font-size:.95rem;color:#a5b4fc;line-height:1.5;overflow:auto;white-space:pre}.btn-focus-skip{width:100%;padding:1rem;background:transparent;border:1px solid var(--glass-border);border-radius:8px;color:var(--text-muted);cursor:pointer}.focus-hints{gap:.75rem;margin-top:1.5rem}.hint-text{background:linear-gradient(90deg,#6366f114,#1e1e2400);border:1px solid rgba(99,102,241,.15);border-left:3px solid var(--accent-primary);border-radius:0 8px 8px 0;padding:1rem 1.25rem;color:#e0e7ff;font-size:.95rem;line-height:1.6;position:relative;transition:all .3s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 2px 5px #0000001a;align-items:flex-start}.hint-text:hover{background:linear-gradient(90deg,#6366f11f,#1e1e240d);border-color:#6366f14d;box-shadow:0 4px 12px #6366f11a;transform:translate(4px)}.hint-text:before{content:"💡";font-size:1.1rem;filter:drop-shadow(0 0 8px rgba(253,224,71,.3));margin-right:.5rem;margin-top:-2px}.btn-hint-link{background:transparent;border:1px dashed var(--glass-border);color:var(--text-muted);padding:.75rem 1rem;border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .2s ease;text-decoration:none;width:fit-content;margin-top:.5rem}.btn-hint-link:hover{border-color:var(--accent-secondary);color:var(--accent-secondary);background:#6366f10d;text-decoration:none}.training-layout-workbench .focus-container{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);grid-template-areas:"header header" "title title" "content content" "goal goal" "refdata refdata" "editor results" "hints hints" "actions actions";column-gap:2rem;row-gap:1.25rem;align-items:stretch}.training-layout-workbench .focus-header{grid-area:header}.training-layout-workbench .focus-title{grid-area:title}.training-layout-workbench .focus-content{grid-area:content}.training-layout-workbench .focus-goal-card{grid-area:goal}.training-layout-workbench .focus-reference-card{grid-area:refdata;max-height:220px;display:flex;flex-direction:column}.training-layout-workbench .focus-reference-card .json-content{flex:1;min-height:0}.training-layout-workbench .focus-editor-section{grid-area:editor;display:flex;flex-direction:column;min-height:300px;background:#ffffff05;border-radius:12px;padding:1.5rem;border:1px solid rgba(255,255,255,.05);transition:all .3s ease}.training-layout-workbench .focus-editor-section.success{border-color:var(--success);background:#10b98114;animation:successGlowFade 2s ease-out forwards}@keyframes successGlowFade{0%{box-shadow:0 0 30px #10b98180,0 0 60px #10b9814d,inset 0 0 30px #10b9811a}to{box-shadow:none}}.training-layout-workbench .focus-editor-section .editor-label-row{margin-top:-.25rem}.training-layout-workbench .focus-editor-section .syntax-editor-wrapper{flex:1;min-height:200px}.training-layout-workbench .focus-hints{grid-area:hints}.training-layout-workbench .focus-results{grid-area:results;display:flex;flex-direction:column;gap:.75rem;min-height:300px;align-self:stretch;background:#ffffff05;border-radius:12px;padding:1.5rem;border:1px solid rgba(255,255,255,.05)}.training-layout-workbench .focus-results .results-label-row{margin-top:-.25rem}.training-layout-workbench .results-label-row{margin-bottom:0}.training-layout-workbench .focus-validation-list{flex:1;display:flex;flex-direction:column;gap:.75rem;min-height:0;overflow:auto}.training-layout-workbench .focus-validation-list .focus-test-item{min-height:0}.training-layout-workbench .focus-validation-list .focus-test-item:only-child{min-height:0}.training-layout-workbench .focus-actions{grid-area:actions}@media(max-width:900px){.training-layout-workbench .focus-container{display:flex;flex-direction:column;gap:1.25rem}}.layout-focus .icon-check,.layout-focus .icon-cross{width:18px;height:18px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:.9rem}.layout-focus .result-val{font-family:var(--font-mono);font-size:.85rem}.quiz-level code{background:#6366f11f;color:var(--accent-secondary);border:1px solid rgba(99,102,241,.25);border-radius:6px;padding:.15em .45em;font-family:var(--font-mono);font-size:.92em}.training-style-minimal .focus-editor{background:var(--bg-secondary);box-shadow:none;border-radius:6px}.training-style-minimal .focus-reference-card{background:var(--bg-secondary);border-left-color:var(--glass-border);box-shadow:none}.training-style-minimal .focus-test-item{background:#0f172ad9;border-radius:6px;border-left-width:2px}.training-style-minimal .focus-test-item.pass{border-left-color:var(--success)}.training-style-minimal .focus-test-item.fail{border-left-color:var(--text-muted)}*,*:before,*:after{box-sizing:border-box}:root{--bg-primary: #1e1e24;--bg-secondary: #25252d;--bg-tertiary: #2a2a35;--glass-border: rgba(255, 255, 255, .08);--glass-highlight: rgba(255, 255, 255, .03);--accent-primary: #6366f1;--accent-secondary: #818cf8;--accent-glow: rgba(99, 102, 241, .3);--primary: var(--accent-primary);--text-primary: #f3f4f6;--text-secondary: #9ca3af;--text-muted: #6b7280;--success: #10b981;--warning: #f59e0b;--error: #ef4444;--font-mono: "Fira Code", monospace;--font-sans: "Inter", system-ui, -apple-system, sans-serif}#root{width:100%;min-height:100vh;display:flex;flex-direction:column;background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-sans)}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.app-container{max-width:1600px;margin:0 auto;padding:1.5rem 2rem;width:100%;height:100vh;display:flex;flex-direction:column;gap:1.5rem;box-sizing:border-box}.app-content{flex:1;min-height:0;display:flex;flex-direction:column}.app-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:1rem;border-bottom:1px solid var(--glass-border)}.logo{font-size:1.6rem;font-weight:700;letter-spacing:-.03em;background:linear-gradient(135deg,var(--text-primary) 0%,var(--accent-secondary) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;display:flex;align-items:center;gap:.5rem}.workspace{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;flex:1;min-height:0;padding-bottom:1rem}.panel{display:flex;flex-direction:column;background:var(--bg-secondary);border-radius:12px;border:1px solid var(--glass-border);box-shadow:0 4px 20px #0003}.panel>:first-child{border-top-left-radius:12px;border-top-right-radius:12px}.panel>:last-child{border-bottom-left-radius:12px;border-bottom-right-radius:12px}.panel-header{padding:1rem 1.25rem;background:var(--glass-highlight);border-bottom:1px solid var(--glass-border);display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.panel-title{font-weight:600;font-size:.95rem;color:var(--text-primary);display:flex;align-items:center;gap:.5rem;white-space:nowrap;flex-shrink:0}.panel-controls{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}.example-select{background:var(--bg-tertiary);border:1px solid var(--glass-border);border-radius:6px;color:var(--text-secondary);padding:.35em .75em;font-size:.85rem;cursor:pointer;outline:none;transition:all .2s ease;font-family:var(--font-sans);max-width:180px;min-width:100px}.example-select:hover,.example-select:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-glow)}.focus-container{width:100%;max-width:1000px;margin:0 auto;padding:0 1rem}@media(max-width:768px){.panel-header{align-items:flex-start}.panel-controls{width:100%;justify-content:space-between;margin-top:.5rem}.example-select{flex:1;max-width:none}.training-layout-workbench .focus-results{grid-template-columns:1fr}}
