.fpe{border:1px solid var(--border2);border-radius:10px;overflow:hidden;background:var(--surface2)}.fpe-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:2px;padding:6px 8px;border-bottom:1px solid var(--border);background:var(--surface)}.fpe-sep{width:1px;height:20px;background:var(--border);margin:0 4px}.fpe-btn{width:30px;height:30px;border:0;background:transparent;color:var(--t2);border-radius:7px;cursor:pointer;display:grid;place-items:center;padding:0}.fpe-btn:hover{background:var(--surface2);color:var(--text)}.fpe-btn svg{width:17px;height:17px}.fpe-mode-btn svg{width:16px;height:16px}.fpe-dropdown{position:relative}.fpe-dropdown-btn{border:0;background:transparent;color:var(--t2);border-radius:7px;cursor:pointer;font:inherit;font-size:12.5px;font-weight:600;padding:6px 9px;display:inline-flex;align-items:center;gap:5px}.fpe-dropdown-btn:hover{background:var(--surface2);color:var(--text)}.fpe-dropdown-btn svg{width:11px;height:11px}.fpe-dropdown-menu{display:none;position:absolute;top:100%;left:0;margin-top:4px;background:var(--elev);border:1px solid var(--border2);border-radius:9px;box-shadow:0 12px 32px #00000059;z-index:70;min-width:170px;padding:5px;overflow:hidden}.fpe-dropdown.open .fpe-dropdown-menu{display:block}.fpe-dropdown-item{padding:8px 11px;border-radius:7px;font-size:13px;color:var(--t2);cursor:pointer}.fpe-dropdown-item:hover{background:var(--surface2);color:var(--text)}.fpe-colors{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;padding:4px}.fpe-color{width:22px;height:22px;border-radius:6px;cursor:pointer;border:1px solid var(--border2)}.fpe-color:hover{transform:scale(1.12)}.fpe-var-btn{border:1px solid var(--ai-line);background:var(--ai-soft);color:var(--ai);border-radius:7px;cursor:pointer;font:inherit;font-size:12px;font-weight:600;padding:6px 10px}.fpe-var-menu{width:260px;max-height:280px;overflow-y:auto}.fpe-var-group{font-size:10px;text-transform:uppercase;letter-spacing:.4px;color:var(--t3);font-weight:700;padding:8px 8px 3px}.fpe-var-item{padding:6px 9px;border-radius:7px;cursor:pointer;display:flex;gap:8px;align-items:center}.fpe-var-item:hover{background:var(--surface2)}.fpe-var-item code{background:var(--ai-soft);color:var(--ai);border-radius:5px;padding:1px 6px;font-size:11.5px;white-space:nowrap}.fpe-var-item span{font-size:11px;color:var(--t3);overflow:hidden;text-overflow:ellipsis}.fpe-mode{margin-left:6px;display:flex;gap:2px;background:var(--surface2);border-radius:7px;padding:2px}.fpe-mode-btn{width:28px;height:24px;border:0;background:transparent;color:var(--t3);border-radius:5px;cursor:pointer;display:grid;place-items:center}.fpe-mode-btn.active{background:var(--accent-soft);color:var(--accent)}.fpe-body{min-height:220px;max-height:520px;overflow-y:auto;padding:14px 16px;color:var(--text);font-size:13.5px;line-height:1.65;outline:0}.fpe-body:empty:before{content:attr(data-placeholder);color:var(--t3)}.fpe-body h1{font-size:20px;margin:.4em 0}.fpe-body h2{font-size:17px;margin:.4em 0}.fpe-body h3{font-size:15px;margin:.4em 0}.fpe-body blockquote{border-left:3px solid var(--border2);margin:.5em 0;padding:.2em 0 .2em 12px;color:var(--t2)}.fpe-body a{color:var(--accent)}.fpe-body ul,.fpe-body ol{padding-left:22px;margin:.4em 0}.fpe-body img{max-width:100%;border-radius:6px}.fpe-variable{background:var(--ai-soft);color:var(--ai);border-radius:5px;padding:1px 6px;font-size:12.5px;font-weight:600;white-space:nowrap}.fpe-source{display:none;width:100%;min-height:220px;border:0;background:var(--bg);color:var(--t2);font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.6;padding:14px 16px;outline:0;resize:vertical}.fpe-link-modal{display:none;position:fixed;inset:0;background:#04060f8c;z-index:80;align-items:center;justify-content:center}.fpe-link-modal.open{display:flex}.fpe-link-box{background:var(--surface);border:1px solid var(--border2);border-radius:12px;padding:18px;width:340px;box-shadow:0 24px 60px #0006}.fpe-link-box h4{margin:0 0 12px;font-size:14px}.fpe-link-box input{width:100%;background:var(--surface2);border:1px solid var(--border2);border-radius:8px;color:var(--text);font:inherit;font-size:13px;padding:9px 11px;margin-bottom:9px}.fpe-link-btns{display:flex;gap:8px;justify-content:flex-end;margin-top:4px}.fpe-link-btn{border:1px solid var(--border2);background:var(--surface2);color:var(--text);border-radius:8px;padding:8px 14px;font:inherit;font-size:12.5px;font-weight:600;cursor:pointer}.fpe-link-btn.ok{background:var(--accent);border-color:var(--accent);color:#fff}
