.tpl-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;background:var(--card);border-radius:12px;padding:10px 14px;margin-bottom:10px;box-shadow:0 2px 10px #0000000f}.tpl-label{font-size:11px;color:var(--sub);font-weight:700;letter-spacing:1px;text-transform:uppercase}.tpl-chip{font-size:12px;padding:4px 11px;background:var(--card-alt);border-radius:20px;border:none;cursor:pointer;color:var(--sub);font-weight:600;transition:background .15s,color .15s;font-family:inherit}.tpl-chip:hover{background:var(--primary-muted);color:var(--primary)}.tpl-chip.is-active{background:var(--primary);color:#fff;box-shadow:0 1px 4px #6c63ff4d}.tpl-chip.is-active:hover{background:var(--primary);color:#fff;filter:brightness(1.05)}.sym-box{background:var(--card);border-radius:12px;box-shadow:0 2px 10px #0000000f;margin-bottom:10px;overflow:hidden}.sym-tabs{display:flex;align-items:center;gap:4px;padding:8px 10px 0;border-bottom:1px solid var(--border);flex-wrap:wrap}.sym-tab{font-size:12px;font-weight:600;color:var(--sub);background:transparent;border:none;padding:6px 12px;border-radius:8px 8px 0 0;cursor:pointer;font-family:inherit;position:relative;top:1px;transition:color .12s,background .12s}.sym-tab:hover{color:var(--primary);background:var(--card-alt)}.sym-tab.is-active{color:var(--primary);background:var(--card);border:1px solid var(--border);border-bottom-color:var(--card)}.sym-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:4px;padding:10px}.lx-sym{font-size:16px;background:var(--card-alt);border:1px solid transparent;color:var(--text);padding:8px 4px;border-radius:7px;cursor:pointer;font-family:"Cambria Math","Latin Modern Math",Times New Roman,KaTeX_Main,serif;line-height:1;transition:all .12s;min-height:36px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lx-sym:hover{background:var(--primary-muted);color:var(--primary);border-color:var(--primary);transform:translateY(-1px)}.panel{background:var(--card);border-radius:14px;box-shadow:0 2px 10px #00000012;overflow:hidden;display:flex;flex-direction:column;height:560px}.panel-head{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--border);flex-wrap:wrap;gap:8px}.panel-label{font-size:11px;font-weight:700;color:var(--sub);letter-spacing:1px;text-transform:uppercase}.panel-actions{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.d-btn{background:var(--card-alt);border:none;color:var(--sub);font-size:12px;font-weight:600;padding:5px 10px;border-radius:7px;cursor:pointer;transition:all .12s;font-family:inherit}.d-btn:hover{background:var(--primary-muted);color:var(--primary)}.d-sep{width:1px;height:16px;background:var(--border);margin:0 4px}.bg-toggle{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--sub);font-weight:600;cursor:pointer;user-select:none;padding:4px 8px;background:var(--card-alt);border-radius:7px;transition:all .12s}.bg-toggle:hover{background:var(--primary-muted);color:var(--primary)}.bg-toggle input{accent-color:var(--primary);margin:0}.mode-toggle{display:inline-flex;background:var(--card-alt);border-radius:7px;padding:2px;gap:2px}.mode-btn{background:transparent;border:none;color:var(--sub);font-size:11px;font-weight:600;padding:3px 9px;border-radius:5px;cursor:pointer;transition:all .12s;font-family:inherit}.mode-btn:hover{color:var(--primary)}.mode-btn.is-active{background:var(--primary);color:#fff}.tex-input{width:100%;flex:1;min-height:0;border:none;padding:12px 14px;font-family:Menlo,Monaco,Consolas,monospace;font-size:13px;line-height:1.6;resize:none;outline:none;color:var(--text);background:var(--card);tab-size:2}.tex-input::placeholder{color:var(--sub);opacity:.55}.diagram-wrap{position:relative;overflow:auto;flex:1;min-height:0;background:linear-gradient(var(--card-alt) 1px,transparent 1px),linear-gradient(90deg,var(--card-alt) 1px,transparent 1px);background-size:20px 20px;background-color:var(--card);cursor:grab;user-select:none;display:flex;align-items:center;justify-content:center}.diagram-wrap.is-grabbing{cursor:grabbing}.diagram-host{padding:24px;margin:auto;transform-origin:50% 50%;color:var(--text);max-width:100%}.diagram-host:empty:before{content:"在左侧输入 LaTeX 公式即可实时渲染";color:var(--sub);font-size:13px;display:flex;align-items:center;justify-content:center;width:100%;height:240px}.diagram-host .katex,.diagram-host .katex-display{color:var(--text)}.diagram-host .katex-display{margin:0}.diagram-host .katex-display>.katex{white-space:normal}.diagram-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 14px;border-top:1px solid var(--border);background:var(--card-alt);font-size:11px;color:var(--sub);flex-wrap:wrap}.err-text{color:#d32f2f;font-family:Menlo,monospace;font-size:11px;word-break:break-word;flex:1}.err-text:empty{display:none}.hint-text{line-height:1.6}.hint-text kbd{background:var(--card);border:1px solid var(--border);border-radius:4px;padding:0 5px;font-family:Menlo,monospace;font-size:10px;box-shadow:0 1px 0 var(--border)}@media(max-width:768px){.panel{height:420px}.tex-input{font-size:13px}.panel-actions{gap:3px}.d-btn{padding:5px 8px;font-size:11px}.bg-toggle{padding:4px 7px;font-size:10px}.mode-btn{padding:3px 7px;font-size:10px}.sym-grid{grid-template-columns:repeat(auto-fill,minmax(48px,1fr))}.lx-sym{font-size:15px;min-height:32px;padding:6px 2px}button,a{touch-action:manipulation}}
