"use strict";
/*
 * ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development").
 * This devtool is neither made for production nor for readable output files.
 * It uses "eval()" calls to create a separate source file in the browser devtools.
 * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/)
 * or disable the default devtool with "devtool: false".
 * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/).
 */
(self["webpackChunk_mdts_frontend"] = self["webpackChunk_mdts_frontend"] || []).push([["vendors-node_modules_mermaid_dist_chunks_mermaid_core_ishikawaDiagram-FXEZZL3T_mjs"],{

/***/ "./node_modules/mermaid/dist/chunks/mermaid.core/ishikawaDiagram-FXEZZL3T.mjs"
/*!************************************************************************************!*\
  !*** ./node_modules/mermaid/dist/chunks/mermaid.core/ishikawaDiagram-FXEZZL3T.mjs ***!
  \************************************************************************************/
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {

eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   diagram: () => (/* binding */ diagram)\n/* harmony export */ });\n/* harmony import */ var _chunk_VAUOI2AC_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./chunk-VAUOI2AC.mjs */ \"./node_modules/mermaid/dist/chunks/mermaid.core/chunk-VAUOI2AC.mjs\");\n/* harmony import */ var _chunk_ICXQ74PX_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./chunk-ICXQ74PX.mjs */ \"./node_modules/mermaid/dist/chunks/mermaid.core/chunk-ICXQ74PX.mjs\");\n/* harmony import */ var _chunk_WYO6CB5R_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./chunk-WYO6CB5R.mjs */ \"./node_modules/mermaid/dist/chunks/mermaid.core/chunk-WYO6CB5R.mjs\");\n/* harmony import */ var _chunk_X3CZISLH_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./chunk-X3CZISLH.mjs */ \"./node_modules/mermaid/dist/chunks/mermaid.core/chunk-X3CZISLH.mjs\");\n/* harmony import */ var _chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./chunk-Y2CYZVJY.mjs */ \"./node_modules/mermaid/dist/chunks/mermaid.core/chunk-Y2CYZVJY.mjs\");\n/* harmony import */ var roughjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! roughjs */ \"./node_modules/roughjs/bundled/rough.esm.js\");\n\n\n\n\n\n\n// src/diagrams/ishikawa/parser/ishikawa.jison\nvar parser = (function() {\n  var o = /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(function(k, v, o2, l) {\n    for (o2 = o2 || {}, l = k.length; l--; o2[k[l]] = v) ;\n    return o2;\n  }, \"o\"), $V0 = [1, 4], $V1 = [1, 14], $V2 = [1, 12], $V3 = [1, 13], $V4 = [6, 7, 8], $V5 = [1, 20], $V6 = [1, 18], $V7 = [1, 19], $V8 = [6, 7, 11], $V9 = [1, 6, 13, 14], $Va = [1, 23], $Vb = [1, 24], $Vc = [1, 6, 7, 11, 13, 14];\n  var parser2 = {\n    trace: /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(function trace() {\n    }, \"trace\"),\n    yy: {},\n    symbols_: { \"error\": 2, \"start\": 3, \"ishikawa\": 4, \"spaceLines\": 5, \"SPACELINE\": 6, \"NL\": 7, \"ISHIKAWA\": 8, \"document\": 9, \"stop\": 10, \"EOF\": 11, \"statement\": 12, \"SPACELIST\": 13, \"TEXT\": 14, \"$accept\": 0, \"$end\": 1 },\n    terminals_: { 2: \"error\", 6: \"SPACELINE\", 7: \"NL\", 8: \"ISHIKAWA\", 11: \"EOF\", 13: \"SPACELIST\", 14: \"TEXT\" },\n    productions_: [0, [3, 1], [3, 2], [5, 1], [5, 2], [5, 2], [4, 2], [4, 3], [10, 1], [10, 1], [10, 1], [10, 2], [10, 2], [9, 3], [9, 2], [12, 2], [12, 1], [12, 1], [12, 1]],\n    performAction: /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(function anonymous(yytext, yyleng, yylineno, yy, yystate, $$, _$) {\n      var $0 = $$.length - 1;\n      switch (yystate) {\n        case 6:\n        case 7:\n          return yy;\n          // removed by dead control flow\n\n        case 15:\n          yy.addNode($$[$0 - 1].length, $$[$0].trim());\n          break;\n        case 16:\n          yy.addNode(0, $$[$0].trim());\n          break;\n      }\n    }, \"anonymous\"),\n    table: [{ 3: 1, 4: 2, 5: 3, 6: [1, 5], 8: $V0 }, { 1: [3] }, { 1: [2, 1] }, { 4: 6, 6: [1, 7], 7: [1, 8], 8: $V0 }, { 6: $V1, 7: [1, 10], 9: 9, 12: 11, 13: $V2, 14: $V3 }, o($V4, [2, 3]), { 1: [2, 2] }, o($V4, [2, 4]), o($V4, [2, 5]), { 1: [2, 6], 6: $V1, 12: 15, 13: $V2, 14: $V3 }, { 6: $V1, 9: 16, 12: 11, 13: $V2, 14: $V3 }, { 6: $V5, 7: $V6, 10: 17, 11: $V7 }, o($V8, [2, 18], { 14: [1, 21] }), o($V8, [2, 16]), o($V8, [2, 17]), { 6: $V5, 7: $V6, 10: 22, 11: $V7 }, { 1: [2, 7], 6: $V1, 12: 15, 13: $V2, 14: $V3 }, o($V9, [2, 14], { 7: $Va, 11: $Vb }), o($Vc, [2, 8]), o($Vc, [2, 9]), o($Vc, [2, 10]), o($V8, [2, 15]), o($V9, [2, 13], { 7: $Va, 11: $Vb }), o($Vc, [2, 11]), o($Vc, [2, 12])],\n    defaultActions: { 2: [2, 1], 6: [2, 2] },\n    parseError: /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(function parseError(str, hash) {\n      if (hash.recoverable) {\n        this.trace(str);\n      } else {\n        var error = new Error(str);\n        error.hash = hash;\n        throw error;\n      }\n    }, \"parseError\"),\n    parse: /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(function parse(input) {\n      var self = this, stack = [0], tstack = [], vstack = [null], lstack = [], table = this.table, yytext = \"\", yylineno = 0, yyleng = 0, recovering = 0, TERROR = 2, EOF = 1;\n      var args = lstack.slice.call(arguments, 1);\n      var lexer2 = Object.create(this.lexer);\n      var sharedState = { yy: {} };\n      for (var k in this.yy) {\n        if (Object.prototype.hasOwnProperty.call(this.yy, k)) {\n          sharedState.yy[k] = this.yy[k];\n        }\n      }\n      lexer2.setInput(input, sharedState.yy);\n      sharedState.yy.lexer = lexer2;\n      sharedState.yy.parser = this;\n      if (typeof lexer2.yylloc == \"undefined\") {\n        lexer2.yylloc = {};\n      }\n      var yyloc = lexer2.yylloc;\n      lstack.push(yyloc);\n      var ranges = lexer2.options && lexer2.options.ranges;\n      if (typeof sharedState.yy.parseError === \"function\") {\n        this.parseError = sharedState.yy.parseError;\n      } else {\n        this.parseError = Object.getPrototypeOf(this).parseError;\n      }\n      function popStack(n) {\n        stack.length = stack.length - 2 * n;\n        vstack.length = vstack.length - n;\n        lstack.length = lstack.length - n;\n      }\n      ;(0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(popStack, \"popStack\");\n      function lex() {\n        var token;\n        token = tstack.pop() || lexer2.lex() || EOF;\n        if (typeof token !== \"number\") {\n          if (token instanceof Array) {\n            tstack = token;\n            token = tstack.pop();\n          }\n          token = self.symbols_[token] || token;\n        }\n        return token;\n      }\n      ;(0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(lex, \"lex\");\n      var symbol, preErrorSymbol, state, action, a, r, yyval = {}, p, len, newState, expected;\n      while (true) {\n        state = stack[stack.length - 1];\n        if (this.defaultActions[state]) {\n          action = this.defaultActions[state];\n        } else {\n          if (symbol === null || typeof symbol == \"undefined\") {\n            symbol = lex();\n          }\n          action = table[state] && table[state][symbol];\n        }\n        if (typeof action === \"undefined\" || !action.length || !action[0]) {\n          var errStr = \"\";\n          expected = [];\n          for (p in table[state]) {\n            if (this.terminals_[p] && p > TERROR) {\n              expected.push(\"'\" + this.terminals_[p] + \"'\");\n            }\n          }\n          if (lexer2.showPosition) {\n            errStr = \"Parse error on line \" + (yylineno + 1) + \":\\n\" + lexer2.showPosition() + \"\\nExpecting \" + expected.join(\", \") + \", got '\" + (this.terminals_[symbol] || symbol) + \"'\";\n          } else {\n            errStr = \"Parse error on line \" + (yylineno + 1) + \": Unexpected \" + (symbol == EOF ? \"end of input\" : \"'\" + (this.terminals_[symbol] || symbol) + \"'\");\n          }\n          this.parseError(errStr, {\n            text: lexer2.match,\n            token: this.terminals_[symbol] || symbol,\n            line: lexer2.yylineno,\n            loc: yyloc,\n            expected\n          });\n        }\n        if (action[0] instanceof Array && action.length > 1) {\n          throw new Error(\"Parse Error: multiple actions possible at state: \" + state + \", token: \" + symbol);\n        }\n        switch (action[0]) {\n          case 1:\n            stack.push(symbol);\n            vstack.push(lexer2.yytext);\n            lstack.push(lexer2.yylloc);\n            stack.push(action[1]);\n            symbol = null;\n            if (!preErrorSymbol) {\n              yyleng = lexer2.yyleng;\n              yytext = lexer2.yytext;\n              yylineno = lexer2.yylineno;\n              yyloc = lexer2.yylloc;\n              if (recovering > 0) {\n                recovering--;\n              }\n            } else {\n              symbol = preErrorSymbol;\n              preErrorSymbol = null;\n            }\n            break;\n          case 2:\n            len = this.productions_[action[1]][1];\n            yyval.$ = vstack[vstack.length - len];\n            yyval._$ = {\n              first_line: lstack[lstack.length - (len || 1)].first_line,\n              last_line: lstack[lstack.length - 1].last_line,\n              first_column: lstack[lstack.length - (len || 1)].first_column,\n              last_column: lstack[lstack.length - 1].last_column\n            };\n            if (ranges) {\n              yyval._$.range = [\n                lstack[lstack.length - (len || 1)].range[0],\n                lstack[lstack.length - 1].range[1]\n              ];\n            }\n            r = this.performAction.apply(yyval, [\n              yytext,\n              yyleng,\n              yylineno,\n              sharedState.yy,\n              action[1],\n              vstack,\n              lstack\n            ].concat(args));\n            if (typeof r !== \"undefined\") {\n              return r;\n            }\n            if (len) {\n              stack = stack.slice(0, -1 * len * 2);\n              vstack = vstack.slice(0, -1 * len);\n              lstack = lstack.slice(0, -1 * len);\n            }\n            stack.push(this.productions_[action[1]][0]);\n            vstack.push(yyval.$);\n            lstack.push(yyval._$);\n            newState = table[stack[stack.length - 2]][stack[stack.length - 1]];\n            stack.push(newState);\n            break;\n          case 3:\n            return true;\n        }\n      }\n      return true;\n    }, \"parse\")\n  };\n  var lexer = /* @__PURE__ */ (function() {\n    var lexer2 = {\n      EOF: 1,\n      parseError: /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(function parseError(str, hash) {\n        if (this.yy.parser) {\n          this.yy.parser.parseError(str, hash);\n        } else {\n          throw new Error(str);\n        }\n      }, \"parseError\"),\n      // resets the lexer, sets new input\n      setInput: /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(function(input, yy) {\n        this.yy = yy || this.yy || {};\n        this._input = input;\n        this._more = this._backtrack = this.done = false;\n        this.yylineno = this.yyleng = 0;\n        this.yytext = this.matched = this.match = \"\";\n        this.conditionStack = [\"INITIAL\"];\n        this.yylloc = {\n          first_line: 1,\n          first_column: 0,\n          last_line: 1,\n          last_column: 0\n        };\n        if (this.options.ranges) {\n          this.yylloc.range = [0, 0];\n        }\n        this.offset = 0;\n        return this;\n      }, \"setInput\"),\n      // consumes and returns one char from the input\n      input: /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(function() {\n        var ch = this._input[0];\n        this.yytext += ch;\n        this.yyleng++;\n        this.offset++;\n        this.match += ch;\n        this.matched += ch;\n        var lines = ch.match(/(?:\\r\\n?|\\n).*/g);\n        if (lines) {\n          this.yylineno++;\n          this.yylloc.last_line++;\n        } else {\n          this.yylloc.last_column++;\n        }\n        if (this.options.ranges) {\n          this.yylloc.range[1]++;\n        }\n        this._input = this._input.slice(1);\n        return ch;\n      }, \"input\"),\n      // unshifts one char (or a string) into the input\n      unput: /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(function(ch) {\n        var len = ch.length;\n        var lines = ch.split(/(?:\\r\\n?|\\n)/g);\n        this._input = ch + this._input;\n        this.yytext = this.yytext.substr(0, this.yytext.length - len);\n        this.offset -= len;\n        var oldLines = this.match.split(/(?:\\r\\n?|\\n)/g);\n        this.match = this.match.substr(0, this.match.length - 1);\n        this.matched = this.matched.substr(0, this.matched.length - 1);\n        if (lines.length - 1) {\n          this.yylineno -= lines.length - 1;\n        }\n        var r = this.yylloc.range;\n        this.yylloc = {\n          first_line: this.yylloc.first_line,\n          last_line: this.yylineno + 1,\n          first_column: this.yylloc.first_column,\n          last_column: lines ? (lines.length === oldLines.length ? this.yylloc.first_column : 0) + oldLines[oldLines.length - lines.length].length - lines[0].length : this.yylloc.first_column - len\n        };\n        if (this.options.ranges) {\n          this.yylloc.range = [r[0], r[0] + this.yyleng - len];\n        }\n        this.yyleng = this.yytext.length;\n        return this;\n      }, \"unput\"),\n      // When called from action, caches matched text and appends it on next action\n      more: /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(function() {\n        this._more = true;\n        return this;\n      }, \"more\"),\n      // When called from action, signals the lexer that this rule fails to match the input, so the next matching rule (regex) should be tested instead.\n      reject: /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(function() {\n        if (this.options.backtrack_lexer) {\n          this._backtrack = true;\n        } else {\n          return this.parseError(\"Lexical error on line \" + (this.yylineno + 1) + \". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\\n\" + this.showPosition(), {\n            text: \"\",\n            token: null,\n            line: this.yylineno\n          });\n        }\n        return this;\n      }, \"reject\"),\n      // retain first n characters of the match\n      less: /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(function(n) {\n        this.unput(this.match.slice(n));\n      }, \"less\"),\n      // displays already matched input, i.e. for error messages\n      pastInput: /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(function() {\n        var past = this.matched.substr(0, this.matched.length - this.match.length);\n        return (past.length > 20 ? \"...\" : \"\") + past.substr(-20).replace(/\\n/g, \"\");\n      }, \"pastInput\"),\n      // displays upcoming input, i.e. for error messages\n      upcomingInput: /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(function() {\n        var next = this.match;\n        if (next.length < 20) {\n          next += this._input.substr(0, 20 - next.length);\n        }\n        return (next.substr(0, 20) + (next.length > 20 ? \"...\" : \"\")).replace(/\\n/g, \"\");\n      }, \"upcomingInput\"),\n      // displays the character position where the lexing error occurred, i.e. for error messages\n      showPosition: /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(function() {\n        var pre = this.pastInput();\n        var c = new Array(pre.length + 1).join(\"-\");\n        return pre + this.upcomingInput() + \"\\n\" + c + \"^\";\n      }, \"showPosition\"),\n      // test the lexed token: return FALSE when not a match, otherwise return token\n      test_match: /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(function(match, indexed_rule) {\n        var token, lines, backup;\n        if (this.options.backtrack_lexer) {\n          backup = {\n            yylineno: this.yylineno,\n            yylloc: {\n              first_line: this.yylloc.first_line,\n              last_line: this.last_line,\n              first_column: this.yylloc.first_column,\n              last_column: this.yylloc.last_column\n            },\n            yytext: this.yytext,\n            match: this.match,\n            matches: this.matches,\n            matched: this.matched,\n            yyleng: this.yyleng,\n            offset: this.offset,\n            _more: this._more,\n            _input: this._input,\n            yy: this.yy,\n            conditionStack: this.conditionStack.slice(0),\n            done: this.done\n          };\n          if (this.options.ranges) {\n            backup.yylloc.range = this.yylloc.range.slice(0);\n          }\n        }\n        lines = match[0].match(/(?:\\r\\n?|\\n).*/g);\n        if (lines) {\n          this.yylineno += lines.length;\n        }\n        this.yylloc = {\n          first_line: this.yylloc.last_line,\n          last_line: this.yylineno + 1,\n          first_column: this.yylloc.last_column,\n          last_column: lines ? lines[lines.length - 1].length - lines[lines.length - 1].match(/\\r?\\n?/)[0].length : this.yylloc.last_column + match[0].length\n        };\n        this.yytext += match[0];\n        this.match += match[0];\n        this.matches = match;\n        this.yyleng = this.yytext.length;\n        if (this.options.ranges) {\n          this.yylloc.range = [this.offset, this.offset += this.yyleng];\n        }\n        this._more = false;\n        this._backtrack = false;\n        this._input = this._input.slice(match[0].length);\n        this.matched += match[0];\n        token = this.performAction.call(this, this.yy, this, indexed_rule, this.conditionStack[this.conditionStack.length - 1]);\n        if (this.done && this._input) {\n          this.done = false;\n        }\n        if (token) {\n          return token;\n        } else if (this._backtrack) {\n          for (var k in backup) {\n            this[k] = backup[k];\n          }\n          return false;\n        }\n        return false;\n      }, \"test_match\"),\n      // return next match in input\n      next: /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(function() {\n        if (this.done) {\n          return this.EOF;\n        }\n        if (!this._input) {\n          this.done = true;\n        }\n        var token, match, tempMatch, index;\n        if (!this._more) {\n          this.yytext = \"\";\n          this.match = \"\";\n        }\n        var rules = this._currentRules();\n        for (var i = 0; i < rules.length; i++) {\n          tempMatch = this._input.match(this.rules[rules[i]]);\n          if (tempMatch && (!match || tempMatch[0].length > match[0].length)) {\n            match = tempMatch;\n            index = i;\n            if (this.options.backtrack_lexer) {\n              token = this.test_match(tempMatch, rules[i]);\n              if (token !== false) {\n                return token;\n              } else if (this._backtrack) {\n                match = false;\n                continue;\n              } else {\n                return false;\n              }\n            } else if (!this.options.flex) {\n              break;\n            }\n          }\n        }\n        if (match) {\n          token = this.test_match(match, rules[index]);\n          if (token !== false) {\n            return token;\n          }\n          return false;\n        }\n        if (this._input === \"\") {\n          return this.EOF;\n        } else {\n          return this.parseError(\"Lexical error on line \" + (this.yylineno + 1) + \". Unrecognized text.\\n\" + this.showPosition(), {\n            text: \"\",\n            token: null,\n            line: this.yylineno\n          });\n        }\n      }, \"next\"),\n      // return next match that has a token\n      lex: /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(function lex() {\n        var r = this.next();\n        if (r) {\n          return r;\n        } else {\n          return this.lex();\n        }\n      }, \"lex\"),\n      // activates a new lexer condition state (pushes the new lexer condition state onto the condition stack)\n      begin: /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(function begin(condition) {\n        this.conditionStack.push(condition);\n      }, \"begin\"),\n      // pop the previously active lexer condition state off the condition stack\n      popState: /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(function popState() {\n        var n = this.conditionStack.length - 1;\n        if (n > 0) {\n          return this.conditionStack.pop();\n        } else {\n          return this.conditionStack[0];\n        }\n      }, \"popState\"),\n      // produce the lexer rule set which is active for the currently active lexer condition state\n      _currentRules: /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(function _currentRules() {\n        if (this.conditionStack.length && this.conditionStack[this.conditionStack.length - 1]) {\n          return this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules;\n        } else {\n          return this.conditions[\"INITIAL\"].rules;\n        }\n      }, \"_currentRules\"),\n      // return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available\n      topState: /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(function topState(n) {\n        n = this.conditionStack.length - 1 - Math.abs(n || 0);\n        if (n >= 0) {\n          return this.conditionStack[n];\n        } else {\n          return \"INITIAL\";\n        }\n      }, \"topState\"),\n      // alias for begin(condition)\n      pushState: /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(function pushState(condition) {\n        this.begin(condition);\n      }, \"pushState\"),\n      // return the number of states currently on the stack\n      stateStackSize: /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(function stateStackSize() {\n        return this.conditionStack.length;\n      }, \"stateStackSize\"),\n      options: { \"case-insensitive\": true },\n      performAction: /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(function anonymous(yy, yy_, $avoiding_name_collisions, YY_START) {\n        var YYSTATE = YY_START;\n        switch ($avoiding_name_collisions) {\n          case 0:\n            return 6;\n            // removed by dead control flow\n\n          case 1:\n            return 8;\n            // removed by dead control flow\n\n          case 2:\n            return 8;\n            // removed by dead control flow\n\n          case 3:\n            return 6;\n            // removed by dead control flow\n\n          case 4:\n            return 7;\n            // removed by dead control flow\n\n          case 5:\n            return 13;\n            // removed by dead control flow\n\n          case 6:\n            return 14;\n            // removed by dead control flow\n\n          case 7:\n            return 11;\n            // removed by dead control flow\n\n        }\n      }, \"anonymous\"),\n      rules: [/^(?:\\s*%%.*)/i, /^(?:ishikawa-beta\\b)/i, /^(?:ishikawa\\b)/i, /^(?:[\\s]+[\\n])/i, /^(?:[\\n]+)/i, /^(?:[\\s]+)/i, /^(?:[^\\n]+)/i, /^(?:$)/i],\n      conditions: { \"INITIAL\": { \"rules\": [0, 1, 2, 3, 4, 5, 6, 7], \"inclusive\": true } }\n    };\n    return lexer2;\n  })();\n  parser2.lexer = lexer;\n  function Parser() {\n    this.yy = {};\n  }\n  ;(0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(Parser, \"Parser\");\n  Parser.prototype = parser2;\n  parser2.Parser = Parser;\n  return new Parser();\n})();\nparser.parser = parser;\nvar ishikawa_default = parser;\n\n// src/diagrams/ishikawa/ishikawaDb.ts\nvar IshikawaDB = class {\n  constructor() {\n    this.stack = [];\n    this.clear = this.clear.bind(this);\n    this.addNode = this.addNode.bind(this);\n    this.getRoot = this.getRoot.bind(this);\n  }\n  static {\n    ;(0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)(this, \"IshikawaDB\");\n  }\n  clear() {\n    this.root = void 0;\n    this.stack = [];\n    this.baseLevel = void 0;\n    (0,_chunk_WYO6CB5R_mjs__WEBPACK_IMPORTED_MODULE_2__.clear)();\n  }\n  getRoot() {\n    return this.root;\n  }\n  addNode(rawLevel, text) {\n    const label = _chunk_WYO6CB5R_mjs__WEBPACK_IMPORTED_MODULE_2__.common_default.sanitizeText(text, (0,_chunk_WYO6CB5R_mjs__WEBPACK_IMPORTED_MODULE_2__.getConfig2)());\n    if (!this.root) {\n      this.root = { text: label, children: [] };\n      this.stack = [{ level: 0, node: this.root }];\n      (0,_chunk_WYO6CB5R_mjs__WEBPACK_IMPORTED_MODULE_2__.setDiagramTitle)(label);\n      return;\n    }\n    this.baseLevel ??= rawLevel;\n    let level = rawLevel - this.baseLevel + 1;\n    if (level <= 0) {\n      level = 1;\n    }\n    while (this.stack.length > 1 && this.stack[this.stack.length - 1].level >= level) {\n      this.stack.pop();\n    }\n    const parent = this.stack[this.stack.length - 1].node;\n    const node = { text: label, children: [] };\n    parent.children.push(node);\n    this.stack.push({ level, node });\n  }\n  getAccTitle() {\n    return (0,_chunk_WYO6CB5R_mjs__WEBPACK_IMPORTED_MODULE_2__.getAccTitle)();\n  }\n  setAccTitle(title) {\n    ;(0,_chunk_WYO6CB5R_mjs__WEBPACK_IMPORTED_MODULE_2__.setAccTitle)(title);\n  }\n  getAccDescription() {\n    return (0,_chunk_WYO6CB5R_mjs__WEBPACK_IMPORTED_MODULE_2__.getAccDescription)();\n  }\n  setAccDescription(description) {\n    ;(0,_chunk_WYO6CB5R_mjs__WEBPACK_IMPORTED_MODULE_2__.setAccDescription)(description);\n  }\n  getDiagramTitle() {\n    return (0,_chunk_WYO6CB5R_mjs__WEBPACK_IMPORTED_MODULE_2__.getDiagramTitle)();\n  }\n  setDiagramTitle(title) {\n    ;(0,_chunk_WYO6CB5R_mjs__WEBPACK_IMPORTED_MODULE_2__.setDiagramTitle)(title);\n  }\n};\n\n// src/diagrams/ishikawa/ishikawaRenderer.ts\n\nvar FONT_SIZE_DEFAULT = 14;\nvar SPINE_BASE_LENGTH = 250;\nvar BONE_STUB = 30;\nvar BONE_BASE = 60;\nvar BONE_PER_CHILD = 5;\nvar ANGLE = 82 * Math.PI / 180;\nvar COS_A = Math.cos(ANGLE);\nvar SIN_A = Math.sin(ANGLE);\nvar applyPaddedViewBox = /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)((svgEl, pad, maxW) => {\n  const bbox = svgEl.node().getBBox();\n  const w = bbox.width + pad * 2;\n  const h = bbox.height + pad * 2;\n  (0,_chunk_WYO6CB5R_mjs__WEBPACK_IMPORTED_MODULE_2__.configureSvgSize)(svgEl, h, w, maxW);\n  svgEl.attr(\"viewBox\", `${bbox.x - pad} ${bbox.y - pad} ${w} ${h}`);\n}, \"applyPaddedViewBox\");\nvar draw = /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)((_text, id, _version, diagram2) => {\n  const db = diagram2.db;\n  const root = db.getRoot();\n  if (!root) {\n    return;\n  }\n  const drawConfig = (0,_chunk_WYO6CB5R_mjs__WEBPACK_IMPORTED_MODULE_2__.getConfig2)();\n  const { look, handDrawnSeed, themeVariables } = drawConfig;\n  const fontSize = (0,_chunk_ICXQ74PX_mjs__WEBPACK_IMPORTED_MODULE_1__.parseFontSize)(drawConfig.fontSize)[0] ?? FONT_SIZE_DEFAULT;\n  const isHandDrawn = look === \"handDrawn\";\n  const causes = root.children ?? [];\n  const padding = drawConfig.ishikawa?.diagramPadding ?? 20;\n  const useMaxWidth = drawConfig.ishikawa?.useMaxWidth ?? false;\n  const svg = (0,_chunk_VAUOI2AC_mjs__WEBPACK_IMPORTED_MODULE_0__.selectSvgElement)(id);\n  const g = svg.append(\"g\").attr(\"class\", \"ishikawa\");\n  const roughSvg = isHandDrawn ? roughjs__WEBPACK_IMPORTED_MODULE_5__[\"default\"].svg(svg.node()) : void 0;\n  const roughContext = roughSvg ? {\n    roughSvg,\n    seed: handDrawnSeed ?? 0,\n    lineColor: themeVariables?.lineColor ?? \"#333\",\n    fillColor: themeVariables?.mainBkg ?? \"#fff\"\n  } : void 0;\n  const markerId = `ishikawa-arrow-${id}`;\n  if (!isHandDrawn) {\n    g.append(\"defs\").append(\"marker\").attr(\"id\", markerId).attr(\"viewBox\", \"0 0 10 10\").attr(\"refX\", 0).attr(\"refY\", 5).attr(\"markerWidth\", 6).attr(\"markerHeight\", 6).attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M 10 0 L 0 5 L 10 10 Z\").attr(\"class\", \"ishikawa-arrow\");\n  }\n  let spineX = 0;\n  let spineY = SPINE_BASE_LENGTH;\n  const spineLine = isHandDrawn ? void 0 : drawLine(g, spineX, spineY, spineX, spineY, \"ishikawa-spine\");\n  drawHead(g, spineX, spineY, root.text, fontSize, roughContext);\n  if (!causes.length) {\n    if (isHandDrawn) {\n      drawLine(g, spineX, spineY, spineX, spineY, \"ishikawa-spine\", roughContext);\n    }\n    applyPaddedViewBox(svg, padding, useMaxWidth);\n    return;\n  }\n  spineX -= 20;\n  const upperCauses = causes.filter((_, i) => i % 2 === 0);\n  const lowerCauses = causes.filter((_, i) => i % 2 === 1);\n  const upperStats = sideStats(upperCauses);\n  const lowerStats = sideStats(lowerCauses);\n  const descendantTotal = upperStats.total + lowerStats.total;\n  let upperLen = SPINE_BASE_LENGTH;\n  let lowerLen = SPINE_BASE_LENGTH;\n  if (descendantTotal > 0) {\n    const pool = SPINE_BASE_LENGTH * 2;\n    const minLen = SPINE_BASE_LENGTH * 0.3;\n    upperLen = Math.max(minLen, pool * (upperStats.total / descendantTotal));\n    lowerLen = Math.max(minLen, pool * (lowerStats.total / descendantTotal));\n  }\n  const minSpacing = fontSize * 2;\n  upperLen = Math.max(upperLen, upperStats.max * minSpacing);\n  lowerLen = Math.max(lowerLen, lowerStats.max * minSpacing);\n  spineY = Math.max(upperLen, SPINE_BASE_LENGTH);\n  if (spineLine) {\n    spineLine.attr(\"y1\", spineY).attr(\"y2\", spineY);\n  }\n  g.select(\".ishikawa-head-group\").attr(\"transform\", `translate(0,${spineY})`);\n  const pairCount = Math.ceil(causes.length / 2);\n  for (let p = 0; p < pairCount; p++) {\n    const pg = g.append(\"g\").attr(\"class\", \"ishikawa-pair\");\n    for (const [cause, dir, len] of [\n      [causes[p * 2], -1, upperLen],\n      [causes[p * 2 + 1], 1, lowerLen]\n    ]) {\n      if (cause) {\n        drawBranch(pg, cause, spineX, spineY, dir, len, fontSize, roughContext);\n      }\n    }\n    spineX = pg.selectAll(\"text\").nodes().reduce((left, n) => Math.min(left, n.getBBox().x), Infinity);\n  }\n  if (isHandDrawn) {\n    drawLine(g, spineX, spineY, 0, spineY, \"ishikawa-spine\", roughContext);\n  } else {\n    spineLine.attr(\"x1\", spineX);\n    const markerUrl = `url(#${markerId})`;\n    g.selectAll(\"line.ishikawa-branch, line.ishikawa-sub-branch\").attr(\"marker-start\", markerUrl);\n  }\n  applyPaddedViewBox(svg, padding, useMaxWidth);\n}, \"draw\");\nvar sideStats = /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)((nodes) => {\n  const countDescendants = /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)((node) => node.children.reduce((sum, child) => sum + 1 + countDescendants(child), 0), \"countDescendants\");\n  return nodes.reduce(\n    (stats, node) => {\n      const descendants = countDescendants(node);\n      stats.total += descendants;\n      stats.max = Math.max(stats.max, descendants);\n      return stats;\n    },\n    { total: 0, max: 0 }\n  );\n}, \"sideStats\");\nvar drawHead = /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)((svg, x, y, label, fontSize, roughContext) => {\n  const maxChars = Math.max(6, Math.floor(110 / (fontSize * 0.6)));\n  const headGroup = svg.append(\"g\").attr(\"class\", \"ishikawa-head-group\").attr(\"transform\", `translate(${x},${y})`);\n  const textEl = drawMultilineText(\n    headGroup,\n    wrapText(label, maxChars),\n    0,\n    0,\n    \"ishikawa-head-label\",\n    \"start\",\n    fontSize\n  );\n  const tb = textEl.node().getBBox();\n  const w = Math.max(60, tb.width + 6);\n  const h = Math.max(40, tb.height * 2 + 40);\n  const headPath = `M 0 ${-h / 2} L 0 ${h / 2} Q ${w * 2.4} 0 0 ${-h / 2} Z`;\n  if (roughContext) {\n    const roughNode = roughContext.roughSvg.path(headPath, {\n      roughness: 1.5,\n      seed: roughContext.seed,\n      fill: roughContext.fillColor,\n      fillStyle: \"hachure\",\n      fillWeight: 2.5,\n      hachureGap: 5,\n      stroke: roughContext.lineColor,\n      strokeWidth: 2\n    });\n    headGroup.insert(() => roughNode, \":first-child\").attr(\"class\", \"ishikawa-head\");\n  } else {\n    headGroup.insert(\"path\", \":first-child\").attr(\"class\", \"ishikawa-head\").attr(\"d\", headPath);\n  }\n  textEl.attr(\"transform\", `translate(${(w - tb.width) / 2 - tb.x + 3},${-tb.y - tb.height / 2})`);\n}, \"drawHead\");\nvar flattenTree = /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)((children, direction) => {\n  const entries = [];\n  const yOrder = [];\n  const walk = /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)((nodes, pid, depth) => {\n    const ordered = direction === -1 ? [...nodes].reverse() : nodes;\n    for (const child of ordered) {\n      const idx = entries.length;\n      const gc = child.children ?? [];\n      entries.push({\n        depth,\n        text: wrapText(child.text, 15),\n        parentIndex: pid,\n        childCount: gc.length\n      });\n      if (depth % 2 === 0) {\n        yOrder.push(idx);\n        if (gc.length) {\n          walk(gc, idx, depth + 1);\n        }\n      } else {\n        if (gc.length) {\n          walk(gc, idx, depth + 1);\n        }\n        yOrder.push(idx);\n      }\n    }\n  }, \"walk\");\n  walk(children, -1, 2);\n  return { entries, yOrder };\n}, \"flattenTree\");\nvar drawCauseLabel = /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)((svg, text, x, y, direction, fontSize, roughContext) => {\n  const lg = svg.append(\"g\").attr(\"class\", \"ishikawa-label-group\");\n  const lt = drawMultilineText(\n    lg,\n    text,\n    x,\n    y + 11 * direction,\n    \"ishikawa-label cause\",\n    \"middle\",\n    fontSize\n  );\n  const tb = lt.node().getBBox();\n  if (roughContext) {\n    const roughNode = roughContext.roughSvg.rectangle(\n      tb.x - 20,\n      tb.y - 2,\n      tb.width + 40,\n      tb.height + 4,\n      {\n        roughness: 1.5,\n        seed: roughContext.seed,\n        fill: roughContext.fillColor,\n        fillStyle: \"hachure\",\n        fillWeight: 2.5,\n        hachureGap: 5,\n        stroke: roughContext.lineColor,\n        strokeWidth: 2\n      }\n    );\n    lg.insert(() => roughNode, \":first-child\").attr(\"class\", \"ishikawa-label-box\");\n  } else {\n    lg.insert(\"rect\", \":first-child\").attr(\"class\", \"ishikawa-label-box\").attr(\"x\", tb.x - 20).attr(\"y\", tb.y - 2).attr(\"width\", tb.width + 40).attr(\"height\", tb.height + 4);\n  }\n}, \"drawCauseLabel\");\nvar drawArrowMarker = /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)((g, x, y, dx, dy, roughContext) => {\n  const len = Math.sqrt(dx * dx + dy * dy);\n  if (len === 0) {\n    return;\n  }\n  const ux = dx / len;\n  const uy = dy / len;\n  const s = 6;\n  const px = -uy * s;\n  const py = ux * s;\n  const tipX = x;\n  const tipY = y;\n  const d = `M ${tipX} ${tipY} L ${tipX - ux * s * 2 + px} ${tipY - uy * s * 2 + py} L ${tipX - ux * s * 2 - px} ${tipY - uy * s * 2 - py} Z`;\n  const roughNode = roughContext.roughSvg.path(d, {\n    roughness: 1,\n    seed: roughContext.seed,\n    fill: roughContext.lineColor,\n    fillStyle: \"solid\",\n    stroke: roughContext.lineColor,\n    strokeWidth: 1\n  });\n  g.append(() => roughNode);\n}, \"drawArrowMarker\");\nvar drawBranch = /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)((svg, node, startX, startY, direction, length, fontSize, roughContext) => {\n  const children = node.children ?? [];\n  const lineLen = length * (children.length ? 1 : 0.2);\n  const dx = -COS_A * lineLen;\n  const dy = SIN_A * lineLen * direction;\n  const endX = startX + dx;\n  const endY = startY + dy;\n  drawLine(svg, startX, startY, endX, endY, \"ishikawa-branch\", roughContext);\n  if (roughContext) {\n    drawArrowMarker(svg, startX, startY, startX - endX, startY - endY, roughContext);\n  }\n  drawCauseLabel(svg, node.text, endX, endY, direction, fontSize, roughContext);\n  if (!children.length) {\n    return;\n  }\n  const { entries, yOrder } = flattenTree(children, direction);\n  const entryCount = entries.length;\n  const ys = new Array(entryCount);\n  for (const [slot, entryIdx] of yOrder.entries()) {\n    ys[entryIdx] = startY + dy * ((slot + 1) / (entryCount + 1));\n  }\n  const bones = /* @__PURE__ */ new Map();\n  bones.set(-1, {\n    x0: startX,\n    y0: startY,\n    x1: endX,\n    y1: endY,\n    childCount: children.length,\n    childrenDrawn: 0\n  });\n  const diagonalX = -COS_A;\n  const diagonalY = SIN_A * direction;\n  const oddLabel = direction < 0 ? \"ishikawa-label up\" : \"ishikawa-label down\";\n  for (const [i, e] of entries.entries()) {\n    const y = ys[i];\n    const par = bones.get(e.parentIndex);\n    const grp = svg.append(\"g\").attr(\"class\", \"ishikawa-sub-group\");\n    let bx0 = 0;\n    let by0 = 0;\n    let bx1 = 0;\n    if (e.depth % 2 === 0) {\n      const dyP = par.y1 - par.y0;\n      bx0 = lerp(par.x0, par.x1, dyP ? (y - par.y0) / dyP : 0.5);\n      by0 = y;\n      bx1 = bx0 - (e.childCount > 0 ? BONE_BASE + e.childCount * BONE_PER_CHILD : BONE_STUB);\n      drawLine(grp, bx0, y, bx1, y, \"ishikawa-sub-branch\", roughContext);\n      if (roughContext) {\n        drawArrowMarker(grp, bx0, y, 1, 0, roughContext);\n      }\n      drawMultilineText(grp, e.text, bx1, y, \"ishikawa-label align\", \"end\", fontSize);\n    } else {\n      const k = par.childrenDrawn++;\n      bx0 = lerp(par.x0, par.x1, (par.childCount - k) / (par.childCount + 1));\n      by0 = par.y0;\n      bx1 = bx0 + diagonalX * ((y - by0) / diagonalY);\n      drawLine(grp, bx0, by0, bx1, y, \"ishikawa-sub-branch\", roughContext);\n      if (roughContext) {\n        drawArrowMarker(grp, bx0, by0, bx0 - bx1, by0 - y, roughContext);\n      }\n      drawMultilineText(grp, e.text, bx1, y, oddLabel, \"end\", fontSize);\n    }\n    if (e.childCount > 0) {\n      bones.set(i, {\n        x0: bx0,\n        y0: by0,\n        x1: bx1,\n        y1: y,\n        childCount: e.childCount,\n        childrenDrawn: 0\n      });\n    }\n  }\n}, \"drawBranch\");\nvar splitLines = /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)((text) => text.split(/<br\\s*\\/?>|\\n/), \"splitLines\");\nvar wrapText = /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)((text, maxChars) => {\n  if (text.length <= maxChars) {\n    return text;\n  }\n  const lines = [];\n  for (const word of text.split(/\\s+/)) {\n    const last = lines.length - 1;\n    if (last >= 0 && lines[last].length + 1 + word.length <= maxChars) {\n      lines[last] += \" \" + word;\n    } else {\n      lines.push(word);\n    }\n  }\n  return lines.join(\"\\n\");\n}, \"wrapText\");\nvar drawMultilineText = /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)((g, text, x, y, cls, anchor, fontSize) => {\n  const lines = splitLines(text);\n  const lh = fontSize * 1.05;\n  const el = g.append(\"text\").attr(\"class\", cls).attr(\"text-anchor\", anchor).attr(\"x\", x).attr(\"y\", y - (lines.length - 1) * lh / 2);\n  for (const [i, line] of lines.entries()) {\n    el.append(\"tspan\").attr(\"x\", x).attr(\"dy\", i === 0 ? 0 : lh).text(line);\n  }\n  return el;\n}, \"drawMultilineText\");\nvar lerp = /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)((a, b, t) => a + (b - a) * t, \"lerp\");\nvar drawLine = /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)((g, x1, y1, x2, y2, cls, roughContext) => {\n  if (roughContext) {\n    const roughNode = roughContext.roughSvg.line(x1, y1, x2, y2, {\n      roughness: 1.5,\n      seed: roughContext.seed,\n      stroke: roughContext.lineColor,\n      strokeWidth: 2\n    });\n    g.append(() => roughNode).attr(\"class\", cls);\n    return void 0;\n  }\n  return g.append(\"line\").attr(\"class\", cls).attr(\"x1\", x1).attr(\"y1\", y1).attr(\"x2\", x2).attr(\"y2\", y2);\n}, \"drawLine\");\nvar renderer = { draw };\n\n// src/diagrams/ishikawa/ishikawaStyles.ts\nvar getStyles = /* @__PURE__ */ (0,_chunk_Y2CYZVJY_mjs__WEBPACK_IMPORTED_MODULE_4__.__name)((options) => `\n.ishikawa .ishikawa-spine,\n.ishikawa .ishikawa-branch,\n.ishikawa .ishikawa-sub-branch {\n  stroke: ${options.lineColor};\n  stroke-width: 2;\n  fill: none;\n}\n\n.ishikawa .ishikawa-sub-branch {\n  stroke-width: 1;\n}\n\n.ishikawa .ishikawa-arrow {\n  fill: ${options.lineColor};\n}\n\n.ishikawa .ishikawa-head {\n  fill: ${options.mainBkg};\n  stroke: ${options.lineColor};\n  stroke-width: 2;\n}\n\n.ishikawa .ishikawa-label-box {\n  fill: ${options.mainBkg};\n  stroke: ${options.lineColor};\n  stroke-width: 2;\n}\n\n.ishikawa text {\n  font-family: ${options.fontFamily};\n  font-size: ${options.fontSize};\n  fill: ${options.textColor};\n}\n\n.ishikawa .ishikawa-head-label {\n  font-weight: 600;\n  text-anchor: middle;\n  dominant-baseline: middle;\n  font-size: 14px;\n}\n\n.ishikawa .ishikawa-label {\n  text-anchor: end;\n}\n\n.ishikawa .ishikawa-label.cause {\n  text-anchor: middle;\n  dominant-baseline: middle;\n}\n\n.ishikawa .ishikawa-label.align {\n  text-anchor: end;\n  dominant-baseline: middle;\n}\n\n.ishikawa .ishikawa-label.up {\n  dominant-baseline: baseline;\n}\n\n.ishikawa .ishikawa-label.down {\n  dominant-baseline: hanging;\n}\n`, \"getStyles\");\nvar ishikawaStyles_default = getStyles;\n\n// src/diagrams/ishikawa/ishikawaDiagram.ts\nvar diagram = {\n  parser: ishikawa_default,\n  get db() {\n    return new IshikawaDB();\n  },\n  renderer,\n  styles: ishikawaStyles_default\n};\n\n\n\n//# sourceURL=webpack://@mdts/frontend/./node_modules/mermaid/dist/chunks/mermaid.core/ishikawaDiagram-FXEZZL3T.mjs?\n}");

/***/ }

}]);