:root {
  --primary: #2563eb;
  --primary-hover: #1d4ed8;
  --danger: #ef4444;
  --danger-hover: #dc2626;
  --bg-color: #f8fafc;
  --surface: #ffffff;
  --text-main: #0f172a;
  --text-muted: #64748b;
  --border: #e2e8f0;
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;
  --shadow-sm: 0 1px 3px rgba(0,0,0,0.05);
  --shadow-md: 0 4px 6px -1px rgba(0,0,0,0.05),0 2px 4px -2px rgba(0,0,0,0.05);
  --shadow-lg: 0 10px 25px -3px rgba(0,0,0,0.05),0 4px 6px -4px rgba(0,0,0,0.05)
}
*,
::after,
::before {
  box-sizing: border-box
}
body {
  margin: 0;
  font-family: Inter,system-ui,-apple-system,sans-serif;
  font-size: 15px;
  line-height: 1.5;
  color: var(--text-main);
  background: var(--bg-color);
  -webkit-font-smoothing: antialiased
}
a {
  color: var(--primary);
  text-decoration: none;
  transition: color .2s
}
a:hover {
  color: var(--primary-hover)
}
.auth-page {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2rem 1rem;
  background: linear-gradient(135deg,#f8fafc 0,#e2e8f0 100%)
}
.auth-box {
  max-width: 420px;
  width: 100%;
  padding: 2.5rem;
  background: var(--surface);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lg)
}
.auth-box h1 {
  font-size: 1.75rem;
  font-weight: 700;
  margin: 0 0 2rem;
  color: var(--text-main);
  text-align: center;
  letter-spacing: -.02em
}
.auth-box label {
  display: block;
  margin-bottom: .4rem;
  font-weight: 500;
  color: var(--text-muted);
  font-size: .9rem
}
.auth-box input {
  width: 100%;
  padding: .75rem 1rem;
  margin-bottom: 1.25rem;
  border: 1px solid var(--border);
  border-radius: var(--radius-sm);
  font-size: 1rem;
  font-family: inherit;
  transition: .2s;
  background: #fdfdfd
}
.auth-box input:focus {
  outline: 0;
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(37,99,235,.1);
  background: #fff
}
.auth-box button,
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  padding: .75rem 1.5rem;
  background: var(--primary);
  color: #fff;
  border: none;
  border-radius: var(--radius-sm);
  font-weight: 600;
  cursor: pointer;
  font-size: .95rem;
  font-family: inherit;
  transition: .2s
}
.auth-box button:hover,
.btn:hover {
  background: var(--primary-hover);
  transform: translateY(-1px)
}
.auth-box button:active,
.btn:active {
  transform: translateY(0)
}
.btn-outline {
  background: transparent;
  color: var(--primary);
  border: 1px solid var(--primary);
}
.btn-outline:hover {
  background: var(--primary);
  color: #fff;
}
.btn-outline .icon {
  background-color: var(--primary);
}
.btn-outline:hover .icon {
  background-color: #fff;
}
.btn-outline.btn-danger {
  background: transparent;
  color: var(--danger);
  border-color: var(--danger);
}
.btn-outline.btn-danger:hover {
  background: var(--danger);
  color: #fff;
}
.btn-outline.btn-danger .icon {
  background-color: var(--danger);
}
.btn-outline.btn-danger:hover .icon {
  background-color: #fff;
}
.auth-box button[type=submit] {
  width: 100%
}
.auth-error {
  color: var(--danger);
  background: #fef2f2;
  border: 1px solid #fecaca;
  padding: .75rem;
  border-radius: var(--radius-sm);
  margin-top: 1rem;
  font-size: .9rem;
  text-align: center
}
.auth-hint {
  font-size: .95rem;
  color: var(--text-muted);
  margin-bottom: 1.5rem;
  text-align: center
}
.auth-step-hidden {
  display: none
}
.btn-secondary {
  background: #fff;
  color: var(--text-main);
  border: 1px solid var(--border);
  width: 100%;
  margin-top: .5rem
}
.btn-secondary:hover {
  background: #f8fafc;
  color: var(--text-main)
}
.btn-sm {
  padding: .4rem .85rem;
  font-size: .85rem;
  width: auto
}
.btn-icon {
  padding: .4rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1
}
.btn-danger {
  background: var(--danger);
  color: #fff
}
.btn-danger:hover {
  background: var(--danger-hover);
  color: #fff
}
.btn-danger .icon {
  background-color: #fff;
}
.cabinet-shell {
  min-height: 100vh;
  display: flex;
  flex-direction: column
}
.cabinet-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem 1.5rem;
  background: var(--surface);
  border-bottom: 1px solid var(--border);
  box-shadow: var(--shadow-sm);
  z-index: 10
}
.cabinet-header__title {
  display: flex;
  align-items: center;
  font-size: 1.25rem
}
.logo-text {
  font-weight: 800;
  color: var(--primary);
  letter-spacing: -.01em
}
.header-separator {
  color: #cbd5e1;
  margin: 0 .75rem;
  font-weight: 300
}
#header-page-title {
  font-weight: 600;
  color: var(--text-main);
  font-size: 1.15rem
}
.cabinet-header__user {
  display: flex;
  align-items: center;
  gap: 1rem;
  font-size: .9rem;
  color: var(--text-muted);
  font-weight: 500
}
.cabinet-body {
  display: flex;
  flex: 1;
  min-height: 0
}
.cabinet-sidebar {
  width: 20%;
  flex-shrink: 0;
  background: var(--surface);
  border-right: 1px solid var(--border);
  padding: 1.5rem 0
}
.cabinet-nav {
  display: flex;
  flex-direction: column;
  gap: .25rem;
  padding: 0 1rem
}
.cabinet-nav a {
  display: flex;
  align-items: center;
  padding: .65rem 1rem;
  color: var(--text-muted);
  font-weight: 500;
  border-radius: var(--radius-sm)
}
.cabinet-nav a:hover {
  background: var(--bg-color);
  color: var(--text-main)
}
.btn-icon.active,
.cabinet-nav a.active {
  background: #eff6ff;
  color: var(--primary);
  font-weight: 600
}
.cabinet-nav-logout {
  margin-top: 1.5rem;
  padding-top: 1rem;
  border-top: 1px solid var(--border)
}
.cabinet-main {
  flex: 1;
  padding: 2rem 2.5rem;
  overflow: auto
}
.clickable-name {
  cursor: pointer;
  transition: color .2s
}
.clickable-name:hover {
  color: var(--primary);
  text-decoration: underline
}
.banner {
  padding: 1rem 1.25rem;
  margin-bottom: 1.5rem;
  border-radius: var(--radius-sm);
  font-weight: 500
}
.banner-error {
  background: #fef2f2;
  color: var(--danger);
  border: 1px solid #fecaca
}
.banner-ok {
  background: #f0fdf4;
  color: #166534;
  border: 1px solid #bbf7d0
}
.dashboard-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill,minmax(220px,1fr));
  gap: 1.5rem
}
.dashboard-card {
  display: block;
  padding: 1.5rem;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
  transition: .2s
}
.dashboard-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow-md);
  border-color: #cbd5e1
}
.dashboard-card__count {
  font-size: 1.25rem;
  font-weight: 800;
  color: var(--primary);
  line-height: 1
}
.dashboard-card__label {
  margin-top: .75rem;
  font-weight: 500;
  color: var(--text-muted)
}
.cabinet-form {
  max-width: 500px
}
.cabinet-form label,
.form-group label {
  display: block;
  margin: 1rem 0 .4rem;
  font-weight: 600;
  font-size: .9rem;
  color: var(--text-main)
}
.cabinet-form input[type=email],
.cabinet-form input[type=number],
.cabinet-form input[type=password],
.cabinet-form input[type=text],
.cabinet-form select,
.form-control {
  width: 100%;
  padding: .65rem 1rem;
  border: 1px solid var(--border);
  border-radius: var(--radius-sm);
  font-family: inherit;
  font-size: .95rem;
  transition: .2s;
  background: var(--surface)
}
.cabinet-form input:focus,
.cabinet-form select:focus,
.form-control:focus {
  outline: 0;
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(37,99,235,.1)
}
.form-control.form-control-sm {
  width: auto;
  padding: 0.25rem 1.5rem 0.25rem 0.5rem;
  font-size: 0.85rem;
  height: 30px;
  min-width: 100px;
  line-height: 1.5;
  cursor: pointer;
  background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%231E293B%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: right 0.5rem center;
  background-size: 0.65em auto;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}
textarea.form-control {
  resize: vertical;
  line-height: 1.5
}
.cabinet-form input[readonly] {
  background: var(--bg-color);
  color: var(--text-muted);
  cursor: not-allowed
}
.form-panel {
  max-width: 600px;
  background: var(--surface);
  padding: 2rem;
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
  border: 1px solid var(--border)
}
.table-container {
  background: var(--surface);
  border-radius: var(--radius-md);
  border: 1px solid var(--border);
  box-shadow: var(--shadow-sm);
  overflow-x: auto
}
.data-table {
  width: 100%;
  border-collapse: collapse
}
.data-table td,
.data-table th {
  padding: .85rem 1rem;
  text-align: left;
  border-bottom: 1px solid var(--border);
  font-size: .9rem
}
.data-table th {
  background: #f8fafc;
  font-weight: 600;
  color: var(--text-muted);
  text-transform: uppercase;
  font-size: .75rem;
  letter-spacing: .05em
}
.data-table tr:last-child td {
  border-bottom: none
}
.data-table tbody tr:hover {
  background: #f8fafc
}
.data-table .actions {
  white-space: nowrap;
  display: flex;
  gap: .5rem
}
.icon {
  display: inline-block;
  width: 1.25rem;
  height: 1.25rem;
  background-color: currentColor;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
  vertical-align: middle
}
.icon-crown {
  mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItY3Jvd24iCj4KICA8cGF0aCBzdHJva2U9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiIC8+CiAgPHBhdGggZD0iTTEyIDZsNCA2bDUgLTRsLTIgMTBoLTE0bC0yIC0xMGw1IDRsNCAtNiIgLz4KPC9zdmc+');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItY3Jvd24iCj4KICA8cGF0aCBzdHJva2U9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiIC8+CiAgPHBhdGggZD0iTTEyIDZsNCA2bDUgLTRsLTIgMTBoLTE0bC0yIC0xMGw1IDRsNCAtNiIgLz4KPC9zdmc+')
}
.icon-briefcase {
  mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItYnJpZWZjYXNlIgo+CiAgPHBhdGggc3Ryb2tlPSJub25lIiBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIiAvPgogIDxwYXRoIGQ9Ik0zIDlhMiAyIDAgMCAxIDIgLTJoMTRhMiAyIDAgMCAxIDIgMnY5YTIgMiAwIDAgMSAtMiAyaC0xNGEyIDIgMCAwIDEgLTIgLTJsMCAtOSIgLz4KICA8cGF0aCBkPSJNOCA3di0yYTIgMiAwIDAgMSAyIC0yaDRhMiAyIDAgMCAxIDIgMnYyIiAvPgogIDxwYXRoIGQ9Ik0xMiAxMmwwIC4wMSIgLz4KICA8cGF0aCBkPSJNMyAxM2EyMCAyMCAwIDAgMCAxOCAwIiAvPgo8L3N2Zz4=');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItYnJpZWZjYXNlIgo+CiAgPHBhdGggc3Ryb2tlPSJub25lIiBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIiAvPgogIDxwYXRoIGQ9Ik0zIDlhMiAyIDAgMCAxIDIgLTJoMTRhMiAyIDAgMCAxIDIgMnY5YTIgMiAwIDAgMSAtMiAyaC0xNGEyIDIgMCAwIDEgLTIgLTJsMCAtOSIgLz4KICA8cGF0aCBkPSJNOCA3di0yYTIgMiAwIDAgMSAyIC0yaDRhMiAyIDAgMCAxIDIgMnYyIiAvPgogIDxwYXRoIGQ9Ik0xMiAxMmwwIC4wMSIgLz4KICA8cGF0aCBkPSJNMyAxM2EyMCAyMCAwIDAgMCAxOCAwIiAvPgo8L3N2Zz4=')
}
.icon-user {
  mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItdXNlciIKPgogIDxwYXRoIHN0cm9rZT0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIgLz4KICA8cGF0aCBkPSJNOCA3YTQgNCAwIDEgMCA4IDBhNCA0IDAgMCAwIC04IDAiIC8+CiAgPHBhdGggZD0iTTYgMjF2LTJhNCA0IDAgMCAxIDQgLTRoNGE0IDQgMCAwIDEgNCA0djIiIC8+Cjwvc3ZnPg==');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItdXNlciIKPgogIDxwYXRoIHN0cm9rZT0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIgLz4KICA8cGF0aCBkPSJNOCA3YTQgNCAwIDEgMCA4IDBhNCA0IDAgMCAwIC04IDAiIC8+CiAgPHBhdGggZD0iTTYgMjF2LTJhNCA0IDAgMCAxIDQgLTRoNGE0IDQgMCAwIDEgNCA0djIiIC8+Cjwvc3ZnPg==')
}
.icon-question-mark {
  mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItcXVlc3Rpb24tbWFyayIKPgogIDxwYXRoIHN0cm9rZT0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIgLz4KICA8cGF0aCBkPSJNOCA4YTMuNSAzIDAgMCAxIDMuNSAtM2gxYTMuNSAzIDAgMCAxIDMuNSAzYTMgMyAwIDAgMSAtMiAzYTMgNCAwIDAgMCAtMiA0IiAvPgogIDxwYXRoIGQ9Ik0xMiAxOWwwIC4wMSIgLz4KPC9zdmc+');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItcXVlc3Rpb24tbWFyayIKPgogIDxwYXRoIHN0cm9rZT0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIgLz4KICA8cGF0aCBkPSJNOCA4YTMuNSAzIDAgMCAxIDMuNSAtM2gxYTMuNSAzIDAgMCAxIDMuNSAzYTMgMyAwIDAgMSAtMiAzYTMgNCAwIDAgMCAtMiA0IiAvPgogIDxwYXRoIGQ9Ik0xMiAxOWwwIC4wMSIgLz4KPC9zdmc+')
}
.icon-chevron-down {
  mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItY2hldnJvbi1kb3duIgo+CiAgPHBhdGggc3Ryb2tlPSJub25lIiBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIiAvPgogIDxwYXRoIGQ9Ik02IDlsNiA2bDYgLTYiIC8+Cjwvc3ZnPg==');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItY2hldnJvbi1kb3duIgo+CiAgPHBhdGggc3Ryb2tlPSJub25lIiBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIiAvPgogIDxwYXRoIGQ9Ik02IDlsNiA2bDYgLTYiIC8+Cjwvc3ZnPg==')
}
.icon-chevron-right {
  mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItY2hldnJvbi1yaWdodCIKPgogIDxwYXRoIHN0cm9rZT0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIgLz4KICA8cGF0aCBkPSJNOSA2bDYgNmwtNiA2IiAvPgo8L3N2Zz4=');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItY2hldnJvbi1yaWdodCIKPgogIDxwYXRoIHN0cm9rZT0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIgLz4KICA8cGF0aCBkPSJNOSA2bDYgNmwtNiA2IiAvPgo8L3N2Zz4=')
}
.icon-pencil {
  mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItcGVuY2lsIgo+CiAgPHBhdGggc3Ryb2tlPSJub25lIiBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIiAvPgogIDxwYXRoIGQ9Ik00IDIwaDRsMTAuNSAtMTAuNWEyLjgyOCAyLjgyOCAwIDEgMCAtNCAtNGwtMTAuNSAxMC41djQiIC8+CiAgPHBhdGggZD0iTTEzLjUgNi41bDQgNCIgLz4KPC9zdmc+');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItcGVuY2lsIgo+CiAgPHBhdGggc3Ryb2tlPSJub25lIiBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIiAvPgogIDxwYXRoIGQ9Ik00IDIwaDRsMTAuNSAtMTAuNWEyLjgyOCAyLjgyOCAwIDEgMCAtNCAtNGwtMTAuNSAxMC41djQiIC8+CiAgPHBhdGggZD0iTTEzLjUgNi41bDQgNCIgLz4KPC9zdmc+')
}
.icon-x {
  mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXIteCIKPgogIDxwYXRoIHN0cm9rZT0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIgLz4KICA8cGF0aCBkPSJNMTggNmwtMTIgMTIiIC8+CiAgPHBhdGggZD0iTTYgNmwxMiAxMiIgLz4KPC9zdmc+');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXIteCIKPgogIDxwYXRoIHN0cm9rZT0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIgLz4KICA8cGF0aCBkPSJNMTggNmwtMTIgMTIiIC8+CiAgPHBhdGggZD0iTTYgNmwxMiAxMiIgLz4KPC9zdmc+')
}
.icon-user-plus {
  mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItdXNlci1wbHVzIgo+CiAgPHBhdGggc3Ryb2tlPSJub25lIiBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIiAvPgogIDxwYXRoIGQ9Ik04IDdhNCA0IDAgMSAwIDggMGE0IDQgMCAwIDAgLTggMCIgLz4KICA8cGF0aCBkPSJNMTYgMTloNiIgLz4KICA8cGF0aCBkPSJNMTkgMTZ2NiIgLz4KICA8cGF0aCBkPSJNNiAyMXYtMmE0IDQgMCAwIDEgNCAtNGg0IiAvPgo8L3N2Zz4=');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItdXNlci1wbHVzIgo+CiAgPHBhdGggc3Ryb2tlPSJub25lIiBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIiAvPgogIDxwYXRoIGQ9Ik04IDdhNCA0IDAgMSAwIDggMGE0IDQgMCAwIDAgLTggMCIgLz4KICA8cGF0aCBkPSJNMTYgMTloNiIgLz4KICA8cGF0aCBkPSJNMTkgMTZ2NiIgLz4KICA8cGF0aCBkPSJNNiAyMXYtMmE0IDQgMCAwIDEgNCAtNGg0IiAvPgo8L3N2Zz4=')
}
.icon-logout {
  mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItbG9nb3V0Igo+CiAgPHBhdGggc3Ryb2tlPSJub25lIiBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIiAvPgogIDxwYXRoIGQ9Ik0xNCA4di0yYTIgMiAwIDAgMCAtMiAtMmgtN2EyIDIgMCAwIDAgLTIgMnYxMmEyIDIgMCAwIDAgMiAyaDdhMiAyIDAgMCAwIDIgLTJ2LTIiIC8+CiAgPHBhdGggZD0iTTkgMTJoMTJsLTMgLTMiIC8+CiAgPHBhdGggZD0iTTE4IDE1bDMgLTMiIC8+Cjwvc3ZnPg==');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItbG9nb3V0Igo+CiAgPHBhdGggc3Ryb2tlPSJub25lIiBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIiAvPgogIDxwYXRoIGQ9Ik0xNCA4di0yYTIgMiAwIDAgMCAtMiAtMmgtN2EyIDIgMCAwIDAgLTIgMnYxMmEyIDIgMCAwIDAgMiAyaDdhMiAyIDAgMCAwIDIgLTJ2LTIiIC8+CiAgPHBhdGggZD0iTTkgMTJoMTJsLTMgLTMiIC8+CiAgPHBhdGggZD0iTTE4IDE1bDMgLTMiIC8+Cjwvc3ZnPg==')
}
.icon-check {
  mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItY2hlY2siCj4KICA8cGF0aCBzdHJva2U9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiIC8+CiAgPHBhdGggZD0iTTUgMTJsNSA1bDEwIC0xMCIgLz4KPC9zdmc+');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItY2hlY2siCj4KICA8cGF0aCBzdHJva2U9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiIC8+CiAgPHBhdGggZD0iTTUgMTJsNSA1bDEwIC0xMCIgLz4KPC9zdmc+')
}
.icon-info-circle {
  mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItaW5mby1jaXJjbGUiCj4KICA8cGF0aCBzdHJva2U9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiIC8+CiAgPHBhdGggZD0iTTMgMTJhOSA5IDAgMSAwIDE4IDBhOSA5IDAgMCAwIC0xOCAwIiAvPgogIDxwYXRoIGQ9Ik0xMiA5aC4wMSIgLz4KICA8cGF0aCBkPSJNMTEgMTJoMXY0aDEiIC8+Cjwvc3ZnPg==');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItaW5mby1jaXJjbGUiCj4KICA8cGF0aCBzdHJva2U9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiIC8+CiAgPHBhdGggZD0iTTMgMTJhOSA5IDAgMSAwIDE4IDBhOSA5IDAgMCAwIC0xOCAwIiAvPgogIDxwYXRoIGQ9Ik0xMiA5aC4wMSIgLz4KICA8cGF0aCBkPSJNMTEgMTJoMXY0aDEiIC8+Cjwvc3ZnPg==')
}
.icon-copy {
  mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItY29weSIKPgogIDxwYXRoIHN0cm9rZT0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIgLz4KICA8cGF0aCBkPSJNNyA5LjY2N2EyLjY2NyAyLjY2NyAwIDAgMSAyLjY2NyAtMi42NjdoOC42NjZhMi42NjcgMi42NjcgMCAwIDEgMi42NjcgMi42Njd2OC42NjZhMi42NjcgMi42NjcgMCAwIDEgLTIuNjY3IDIuNjY3aC04LjY2NmEyLjY2NyAyLjY2NyAwIDAgMSAtMi42NjcgLTIuNjY3bDAgLTguNjY2IiAvPgogIDxwYXRoIGQ9Ik00LjAxMiAxNi43MzdhMi4wMDUgMi4wMDUgMCAwIDEgLTEuMDEyIC0xLjczN3YtMTBjMCAtMS4xIC45IC0yIDIgLTJoMTBjLjc1IDAgMS4xNTggLjM4NSAxLjUgMSIgLz4KPC9zdmc+');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItY29weSIKPgogIDxwYXRoIHN0cm9rZT0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIgLz4KICA8cGF0aCBkPSJNNyA5LjY2N2EyLjY2NyAyLjY2NyAwIDAgMSAyLjY2NyAtMi42NjdoOC42NjZhMi42NjcgMi42NjcgMCAwIDEgMi42NjcgMi42Njd2OC42NjZhMi42NjcgMi42NjcgMCAwIDEgLTIuNjY3IDIuNjY3aC04LjY2NmEyLjY2NyAyLjY2NyAwIDAgMSAtMi42NjcgLTIuNjY3bDAgLTguNjY2IiAvPgogIDxwYXRoIGQ9Ik00LjAxMiAxNi43MzdhMi4wMDUgMi4wMDUgMCAwIDEgLTEuMDEyIC0xLjczN3YtMTBjMCAtMS4xIC45IC0yIDIgLTJoMTBjLjc1IDAgMS4xNTggLjM4NSAxLjUgMSIgLz4KPC9zdmc+')
}
.icon-trash {
  mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItdHJhc2giCj4KICA8cGF0aCBzdHJva2U9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiIC8+CiAgPHBhdGggZD0iTTQgN2wxNiAwIiAvPgogIDxwYXRoIGQ9Ik0xMCAxMWwwIDYiIC8+CiAgPHBhdGggZD0iTTE0IDExbDAgNiIgLz4KICA8cGF0aCBkPSJNNSA3bDEgMTJhMiAyIDAgMCAwIDIgMmg4YTIgMiAwIDAgMCAyIC0ybDEgLTEyIiAvPgogIDxwYXRoIGQ9Ik05IDd2LTNhMSAxIDAgMCAxIDEgLTFoNGExIDEgMCAwIDEgMSAxdjMiIC8+Cjwvc3ZnPg==');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItdHJhc2giCj4KICA8cGF0aCBzdHJva2U9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiIC8+CiAgPHBhdGggZD0iTTQgN2wxNiAwIiAvPgogIDxwYXRoIGQ9Ik0xMCAxMWwwIDYiIC8+CiAgPHBhdGggZD0iTTE0IDExbDAgNiIgLz4KICA8cGF0aCBkPSJNNSA3bDEgMTJhMiAyIDAgMCAwIDIgMmg4YTIgMiAwIDAgMCAyIC0ybDEgLTEyIiAvPgogIDxwYXRoIGQ9Ik05IDd2LTNhMSAxIDAgMCAxIDEgLTFoNGExIDEgMCAwIDEgMSAxdjMiIC8+Cjwvc3ZnPg==');
}
.icon-settings {
  mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTAuMzI1IDQuMzE3Yy40MjYgLTEuNzU2IDIuOTI0IC0xLjc1NiAzLjM1IDBhMS43MjQgMS43MjQgMCAwIDAgMi41NzMgMS4wNjZjMS41NDMgLS45NCAzLjMxIC44MjYgMi4zNyAyLjM3YTEuNzI0IDEuNzI0IDAgMCAwIDEuMDY1IDIuNTcyYzEuNzU2IC40MjYgMS43NTYgMi45MjQgMCAzLjM1YTEuNzI0IDEuNzI0IDAgMCAwIC0xLjA2NiAyLjU3M2MuOTQgMS41NDMgLS44MjYgMy4zMSAtMi4zNyAyLjM3YTEuNzI0IDEuNzI0IDAgMCAwIC0yLjU3MiAxLjA2NWMtLjQyNiAxLjc1NiAtMi45MjQgMS43NTYgLTMuMzUgMGExLjcyNCAxLjcyNCAwIDAgMCAtMi41NzMgLTEuMDY2Yy0xLjU0MyAuOTQgLTMuMzEgLS44MjYgLTIuMzcgLTIuMzdhMS43MjQgMS43MjQgMCAwIDAgLTEuMDY1IC0yLjU3MmMtMS43NTYgLS40MjYgLTEuNzU2IC0yLjkyNCAwIC0zLjM1YTEuNzI0IDEuNzI0IDAgMCAwIDEuMDY2IC0yLjU3M2MtLjk0IC0xLjU0MyAuODI2IC0zLjMxIDIuMzcgLTIuMzdjMSAuNjA4IDIuMjk2IC4wNyAyLjU3MiAtMS4wNjUiIC8+CiAgPHBhdGggZD0iTTkgMTJhMyAzIDAgMSAwIDYgMGEzIDMgMCAwIDAgLTYgMCIgLz4KPC9zdmc+');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTAuMzI1IDQuMzE3Yy40MjYgLTEuNzU2IDIuOTI0IC0xLjc1NiAzLjM1IDBhMS43MjQgMS43MjQgMCAwIDAgMi41NzMgMS4wNjZjMS41NDMgLS45NCAzLjMxIC44MjYgMi4zNyAyLjM3YTEuNzI0IDEuNzI0IDAgMCAwIDEuMDY1IDIuNTcyYzEuNzU2IC40MjYgMS43NTYgMi45MjQgMCAzLjM1YTEuNzI0IDEuNzI0IDAgMCAwIC0xLjA2NiAyLjU3M2MuOTQgMS41NDMgLS44MjYgMy4zMSAtMi4zNyAyLjM3YTEuNzI0IDEuNzI0IDAgMCAwIC0yLjU3MiAxLjA2NWMtLjQyNiAxLjc1NiAtMi45MjQgMS43NTYgLTMuMzUgMGExLjcyNCAxLjcyNCAwIDAgMCAtMi41NzMgLTEuMDY2Yy0xLjU0MyAuOTQgLTMuMzEgLS44MjYgLTIuMzcgLTIuMzdhMS43MjQgMS43MjQgMCAwIDAgLTEuMDY1IC0yLjU3MmMtMS43NTYgLS40MjYgLTEuNzU2IC0yLjkyNCAwIC0zLjM1YTEuNzI0IDEuNzI0IDAgMCAwIDEuMDY2IC0yLjU3M2MtLjk0IC0xLjU0MyAuODI2IC0zLjMxIDIuMzcgLTIuMzdjMSAuNjA4IDIuMjk2IC4wNyAyLjU3MiAtMS4wNjUiIC8+CiAgPHBhdGggZD0iTTkgMTJhMyAzIDAgMSAwIDYgMGEzIDMgMCAwIDAgLTYgMCIgLz4KPC9zdmc+')
}
.badge {
  display: inline-block;
  padding: .2rem .6rem;
  font-size: .75rem;
  font-weight: 600;
  border-radius: 9999px;
  background: #f1f5f9;
  color: #475569
}
.badge-admin {
  background: #fee2e2;
  color: #991b1b
}
.badge-manager {
  background: #fef3c7;
  color: #9a3412
}
.badge-user {
  background: #e0f2fe;
  color: #1e40af
}
.toolbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1.5rem
}
.display-none {
  display: none!important
}
.display-block {
  display: block
}
.display-flex {
  display: flex
}
.margin-top-20 {
  margin-top: 20px
}
.margin-top-2rem {
  margin-top: 2rem
}
.margin-bottom-15 {
  margin-bottom: 15px
}
.margin-0 {
  margin: 0
}
.margin-top-0 {
  margin-top: 0
}
.margin-left-10 {
  margin-left: 10px
}
.justify-between {
  justify-content: space-between
}
.text-left {
  text-align: left
}
.w-full {
  width: 100%
}
.max-w-full {
  max-width: 100%
}
.grid-cols-smtp {
  display: grid;
  grid-template-columns: 1fr 100px;
  gap: 15px;
  margin-bottom: 1rem
}
.api-key-badge {
  font-family: monospace;
  font-size: .85em;
  background: #f1f5f9;
  padding: 2px 6px;
  border-radius: 4px;
}
.bg-white {
  background: #fff
}
.text-black {
  color: #000
}
.wiki-container {
  display: grid;
  grid-template-columns: 1fr 250px;
  gap: 1.5rem;
  height: calc(100vh - 160px);
  min-height: 500px
}
.wiki-sidebar {
  background: #fff;
  border-radius: 8px;
  border: 1px solid #e2e8f0;
  padding: 1rem;
  overflow-y: auto
}
.wiki-sidebar-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: .5rem;
  padding-bottom: .5rem;
  border-bottom: 1px solid #e2e8f0
}
.wiki-sidebar-header h3 {
  margin: 0;
  font-size: .9rem;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: .05em
}
.wiki-editor {
  background: #fff;
  border-radius: 8px;
  border: 1px solid #e2e8f0;
  display: flex;
  flex-direction: column;
  overflow: hidden
}
.wiki-empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  color: #94a3b8
}
.wiki-editor-header {
  padding: 1rem 1.5rem;
  border-bottom: 1px solid #e2e8f0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #f8fafc
}
.wiki-editor-header h2 {
  margin: 0;
  font-size: 1.25rem;
  color: #0f172a
}
.wiki-editor-body {
  flex: 1;
  padding: 1.5rem;
  overflow-y: auto;
  display: flex;
  flex-direction: column
}
.wiki-textarea {
  width: 100%;
  flex: 1;
  min-height: 300px;
  font-family: 'JetBrains Mono','Fira Code',monospace;
  font-size: .9rem;
  line-height: 1.5;
  padding: 1rem;
  border: 1px solid #cbd5e1;
  border-radius: 6px;
  resize: none;
  background: #f8fafc
}
.wiki-textarea:focus {
  outline: 0;
  border-color: #3b82f6;
  background: #fff
}
.wiki-context {
  background: #fff;
  border-radius: 8px;
  border: 1px solid #e2e8f0;
  padding: 1rem;
  overflow-y: auto
}
.wiki-preview-controls {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  align-items: center;
  margin-bottom: 1rem;
}
.wiki-preview-label {
  font-size: 0.85rem;
  color: var(--text-muted, #888);
}
.wiki-preview-select {
  flex: 1;
  min-width: 5rem;
}
.wiki-preview-output {
  margin-bottom: 1.5rem;
  max-height: 40vh;
  overflow: auto;
  border: 1px solid var(--border-color, #333);
  border-radius: 4px;
  padding: 0.5rem;
}
.wiki-preview-section {
  margin-bottom: 1rem;
}
.wiki-preview-paths {
  font-size: 0.75rem;
  color: var(--text-muted, #888);
  margin: 0.25rem 0 0.5rem 1rem;
  padding: 0;
}
.wiki-preview-pre {
  font-size: 0.7rem;
  max-height: 12rem;
  overflow: auto;
  white-space: pre-wrap;
  word-break: break-word;
  margin: 0;
  padding: 0.5rem;
  background: var(--bg-subtle, #1a1a1a);
  border-radius: 4px;
}
.wiki-context-heading {
  margin-top: 1rem;
}
.wiki-context h3 {
  font-size: 1.1rem;
  margin-bottom: 0.5rem;
  color: #1e293b
}
.wiki-manifest-hint {
  font-size: 0.85rem;
  color: #64748b;
  margin-bottom: 0.75rem;
}
  margin: 0 0 .5rem;
  font-size: .9rem;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: .05em
}
.wiki-var-card {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 6px;
  padding: .75rem;
  margin-bottom: .5rem;
  cursor: pointer;
  transition: .2s
}
.wiki-var-card:hover {
  border-color: #94a3b8;
  background: #f1f5f9
}
.wiki-var-card strong {
  display: block;
  color: #2563eb;
  font-family: monospace;
  font-size: .85rem;
  margin-bottom: .25rem
}
.wiki-var-card span {
  display: block;
  color: #64748b;
  font-size: .8rem;
  line-height: 1.3
}
.skill-builder-step {
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  padding: 1.5rem;
  margin-bottom: 2.5rem;
  position: relative;
  box-shadow: 0 1px 3px rgba(0,0,0,.05)
}
.skill-builder-step-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: .5rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #f1f5f9
}
.skill-builder-step-header h4 {
  margin: 0;
  color: #334155;
  font-size: 1.1rem
}
.skill-builder-step::after {
  content: '';
  position: absolute;
  bottom: -1.5rem;
  left: 50%;
  transform: translateX(-50%);
  width: 2px;
  height: 1.5rem;
  background-color: #cbd5e1
}
.skill-builder-step::before {
  content: '▼';
  position: absolute;
  bottom: -2rem;
  left: 50%;
  transform: translateX(-50%);
  color: #94a3b8;
  font-size: .8rem;
  z-index: 1
}
.skill-builder-step:last-child::after,
.skill-builder-step:last-child::before {
  display: none
}
.skill-builder-step .form-group label {
  margin-top: .5rem;
  color: #475569
}
.skill-builder-step textarea.form-control {
  font-family: 'JetBrains Mono','Fira Code',monospace;
  font-size: .85rem;
  background: #f8fafc
}
.editor-toolbar {
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
  border-color: #e2e8f0;
  opacity: 1
}
.editor-toolbar:hover {
  opacity: 1
}
.CodeMirror {
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
  border-color: #e2e8f0;
  font-family: 'JetBrains Mono','Fira Code',monospace;
  font-size: .9rem;
  background: #f8fafc
}
.CodeMirror-focused {
  background: #fff
}
@media (max-width:1024px) {
  .wiki-container {
    grid-template-columns: 1fr
  }
  .wiki-context {
    display: none
  }
}
@media (max-width:768px) {
  .wiki-container {
    grid-template-columns: 1fr;
    height: auto
  }
}
.modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(15,23,42,.4);
  backdrop-filter: blur(4px);
  align-items: center;
  justify-content: center;
  z-index: 100
}
.modal.is-open {
  display: flex
}
.node-actions .btn {
  width: auto;
  margin-top: 0
}
.modal-content {
  background: var(--surface);
  padding: 2rem;
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-lg);
  max-width: 900px;
  width: 90%;
  max-height: 90vh;
  overflow-y: auto;
  border: 1px solid var(--border)
}
.modal-content h2 {
  margin-top: 0;
  color: var(--text-main);
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 1.5rem
}
.form-modal-grid {
  max-width: 100%!important;
  display: flex;
  flex-direction: column;
  gap: 1.5rem
}
.form-group-section {
  width: 100%
}
.settings-grid .form-group-section {
  margin-bottom: 0
}
.form-group-section h4 {
  margin: 0 0 1rem;
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--primary);
  border-bottom: 1px solid var(--border);
  padding-bottom: .5rem
}
.form-group-fields {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 1.25rem
}
.settings-grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 2rem;
  align-items: start
}
.settings-section-body {
  display: flex;
  flex-direction: column;
  gap: 1rem
}
.form-field {
  margin-bottom: 0
}
.form-field label {
  display: block;
  margin: 0 0 .4rem!important;
  font-weight: 600;
  font-size: .85rem;
  color: var(--text-muted)
}
.form-actions-full {
  display: flex;
  justify-content: flex-end;
  gap: 1rem;
  margin-top: 1.5rem;
  border-top: 1px solid var(--border);
  padding-top: 1.5rem
}
@media (max-width:1024px) {
  .settings-grid {
    grid-template-columns: repeat(2,1fr)
  }
}
@media (max-width:768px) {
  .form-group-fields {
    grid-template-columns: repeat(2,1fr)
  }
  .settings-grid {
    grid-template-columns: 1fr
  }
}
@media (max-width:480px) {
  .form-group-fields {
    grid-template-columns: 1fr
  }
}
.tree-container {
  background: var(--surface);
  border-radius: var(--radius-md);
  border: 1px solid var(--border);
  box-shadow: var(--shadow-sm);
  padding: .1rem;
  margin-bottom: 2rem
}

/* MCP Data Styles */
.mcp-data-container {
    padding: 1rem;
    max-width: 1200px;
    margin: 0 auto;
}

.mcp-project-group {
    margin-bottom: 2rem;
    background: var(--bg-secondary);
    border-radius: 8px;
    padding: 1rem;
    border: 1px solid var(--border);
}

.mcp-project-title {
    margin-top: 0;
    margin-bottom: 1rem;
    font-size: 1.1rem;
    color: var(--text-primary);
    border-bottom: 1px solid var(--border);
    padding-bottom: 0.5rem;
}

.mcp-item-card {
    background: var(--bg-color);
    border: 1px solid var(--border);
    border-radius: 6px;
    margin-bottom: 0.75rem;
    overflow: hidden;
    transition: border-color 0.2s, box-shadow 0.2s;
}

.mcp-item-card:hover {
    border-color: var(--primary);
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

.mcp-item-header {
    padding: 0.75rem 1rem;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-weight: 500;
    user-select: none;
    background: rgba(0,0,0,0.02);
}

.dark-theme .mcp-item-header {
    background: rgba(255,255,255,0.02);
}

.mcp-item-title {
    flex-grow: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-right: 1rem;
}

.mcp-item-actions {
    display: flex;
    gap: 0.5rem;
}

.btn-delete-mcp {
    color: var(--danger);
    background: transparent;
    border: 1px solid transparent;
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-delete-mcp:hover {
    background: rgba(239, 68, 68, 0.1);
    border-color: var(--danger);
}

.mcp-item-body {
    padding: 0 1rem;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out, padding 0.3s ease;
    background: var(--bg-color);
}

.mcp-item-card.expanded .mcp-item-body {
    padding: 1rem;
    max-height: 2000px;
    border-top: 1px solid var(--border);
}

.mcp-item-content {
    white-space: pre-wrap;
    font-family: monospace;
    font-size: 0.9rem;
    color: var(--text-muted);
    margin: 0;
}
.tree-section-title {
  margin: 0 0 1rem;
  font-size: 1.1rem;
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: .05em;
  padding-bottom: .5rem;
  border-bottom: 2px solid var(--border)
}
.tree-node {
  margin-bottom: .5rem
}
.node-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: .75rem 1rem;
  background: var(--bg-color);
  border: 1px solid var(--border);
  border-radius: var(--radius-sm);
  transition: background-color .2s
}
.node-manager .node-header {
  cursor: pointer;
  background: #f8fafc
}
.node-manager .node-header:hover {
  background: #f1f5f9
}
.node-admin .node-header {
  background: #fef2f2;
  border-color: #fecaca
}
.node-user .node-header {
  background: #fff
}
.node-title {
  display: flex;
  align-items: center;
  gap: .75rem;
  font-size: .95rem;
  flex: 1;
  white-space: nowrap;
  overflow: hidden;
}
.node-title > * {
  flex-shrink: 0;
}
.node-name {
  display: inline-block;
  min-width: 150px;
  overflow: hidden;
  text-overflow: ellipsis;
  flex-shrink: 1 !important;
}
.node-meta {
  color: var(--text-muted);
  font-size: .9rem;
  overflow: hidden;
  text-overflow: ellipsis;
  flex-shrink: 1 !important;
}
.toggle-icon {
  display: inline-block;
  width: 1.25rem;
  text-align: center;
  color: var(--primary);
  font-size: 0.8rem;
  transition: transform .2s
}
.node-children {
  padding-left: 1.5rem;
  margin-top: .5rem;
  border-left: 2px solid var(--border);
  margin-left: 1rem
}
.empty-node {
  padding: 1rem;
  color: var(--text-muted);
  font-style: italic;
  font-size: .9rem
}
.node-actions {
  display: flex;
  gap: .5rem
}
#toast-container {
  position: fixed;
  bottom: 2rem;
  right: 2rem;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  gap: .75rem
}
.toast {
  background: var(--surface);
  color: var(--text-main);
  padding: 1rem 1.25rem;
  border-radius: var(--radius-sm);
  box-shadow: var(--shadow-lg);
  border-left: 4px solid var(--primary);
  font-weight: 500;
  font-size: .95rem;
  opacity: 0;
  transform: translateX(100%);
  transition: opacity .3s,transform .3s;
  min-width: 250px;
  max-width: 400px;
  word-wrap: break-word;
  display: flex;
  align-items: center
}
.toast.show {
  opacity: 1;
  transform: translateX(0)
}
.toast-success {
  border-left-color: var(--success)
}
.toast-error {
  border-left-color: var(--danger)
}
.toast-info {
  border-left-color: var(--primary)
}
.custom-confirm-content {
  max-width: 400px;
  text-align: center;
  padding: 2.5rem 2rem
}
.custom-confirm-message {
  font-size: 1.1rem;
  margin-bottom: 2rem;
  color: var(--text-main);
  font-weight: 500
}
.custom-confirm-actions {
  display: flex;
  justify-content: flex-end;
  gap: 1rem;
  margin-top: 1.5rem;
}
.icon-folder {
  mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMjIgMTlhMiAyIDAgMCAxLTIgMkg0YTIgMiAwIDAgMS0yLTJWNWEyIDIgMCAwIDEgMi0yaDVsMiAzbDkgMGEyIDIgMCAwIDEgMiAyeiIvPgo8L3N2Zz4=');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMjIgMTlhMiAyIDAgMCAxLTIgMkg0YTIgMiAwIDAgMS0yLTJWNWEyIDIgMCAwIDEgMi0yaDVsMiAzbDkgMGEyIDIgMCAwIDEgMiAyeiIvPgo8L3N2Zz4=')
}
.icon-file {
  mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTQgMkg2YTIgMiAwIDAgMC0yIDJ2MTZhMiAyIDAgMCAwIDIgMmgxMmEyIDIgMCAwIDAgMi0yVjh6Ii8+CiAgPHBhdGggZD0iTTE0IDJ2Nmg2Ii8+Cjwvc3ZnPg==');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTQgMkg2YTIgMiAwIDAgMC0yIDJ2MTZhMiAyIDAgMCAwIDIgMmgxMmEyIDIgMCAwIDAgMi0yVjh6Ii8+CiAgPHBhdGggZD0iTTE0IDJ2Nmg2Ii8+Cjwvc3ZnPg==')
}
.icon-plus {
  mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxsaW5lIHgxPSIxMiIgeTE9IjUiIHgyPSIxMiIgeTI9IjE5Ij48L2xpbmU+PGxpbmUgeDE9IjUiIHkxPSIxMiIgeDI9IjE5IiB5Mj0iMTIiPjwvbGluZT48L3N2Zz4=');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxsaW5lIHgxPSIxMiIgeTE9IjUiIHgyPSIxMiIgeTI9IjE5Ij48L2xpbmU+PGxpbmUgeDE9IjUiIHkxPSIxMiIgeDI9IjE5IiB5Mj0iMTIiPjwvbGluZT48L3N2Zz4=');
}
.icon-refresh {
  mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0yMCAxMWE4LjEgOC4xIDAgMCAwIC0xNS41IC0ybS0uNSAtNHY0aDQiPjwvcGF0aD48cGF0aCBkPSJNNCAxM2E4LjEgOC4xIDAgMCAwIDE1LjUgMm0uNSA0di00aC00Ij48L3BhdGg+PC9zdmc+');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0yMCAxMWE4LjEgOC4xIDAgMCAwIC0xNS41IC0ybS0uNSAtNHY0aDQiPjwvcGF0aD48cGF0aCBkPSJNNCAxM2E4LjEgOC4xIDAgMCAwIDE1LjUgMm0uNSA0di00aC00Ij48L3BhdGg+PC9zdmc+');
}
.icon-sm {
  width: 0.875rem;
  height: 0.875rem;
}
.toast-icon {
  margin-right: 0.5rem;
}
.icon-large, .wiki-empty-icon {
  width: 3rem;
  height: 3rem;
  opacity: 0.5;
}
.margin-bottom-1rem {
  margin-bottom: 1rem
}
.border-left-danger {
  border-left-color: var(--danger)!important
}
.text-danger {
  color: var(--danger)!important
}
.badge-danger-light {
  background: #fef2f2!important;
  color: var(--danger)!important;
  border-color: #fecaca!important
}
.justify-end {
  justify-content: flex-end
}
.text-sm {
  font-size: .8rem
}
.cabinet-header-actions {
  display: flex;
  gap: 1rem;
  margin-left: 1rem;
  align-items: center
}
.wiki-sidebar-nav {
  margin-top: 2rem;
  padding-top: 1rem;
  border-top: 1px solid var(--border)
}
.wiki-sidebar-header-wrapper {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
  display: flex;
  justify-content: space-between;
  align-items: center
}
.wiki-sidebar-title {
  font-size: .75rem;
  color: var(--text-muted);
  margin: 0
}
.wiki-sidebar-actions {
  display: flex;
  gap: .25rem
}
.wiki-sidebar-action-btn {
  padding: .25rem .5rem
}
.wiki-sidebar-action-icon {
  width: 1.125rem;
  height: 1.125rem;
}
.wiki-tree-container-wrapper {
  margin-top: 0.5rem;
}
.user-ide-select,
.user-transport-select {
  width: 8.125rem;
  display: inline-block;
  padding: 0.125rem 1.5rem 0.125rem 0.5rem;
  font-size: 0.8rem;
  height: 24px;
}
.wiki-node-children-clean {
  border-left-color: transparent!important
}
.wiki-tree-node {
  margin-bottom: 0.125rem;
}
.wiki-tree-header {
  display: flex;
  align-items: center;
  padding: 0.25rem 0.5rem;
  cursor: pointer;
  border-radius: var(--radius-sm);
  transition: background-color 0.2s ease;
}
.wiki-tree-header:hover {
  background: var(--bg-color, #f1f5f9);
}
.wiki-tree-header:has(.wiki-tree-link.active) {
  background: #eff6ff;
}
.wiki-tree-title {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.9rem;
  flex: 1;
  color: var(--text-main, #333);
}
.wiki-tree-children {
  margin-left: 1.125rem;
  border-left: 1px solid var(--border, #e2e8f0);
  padding-left: 0.625rem;
  margin-top: 0.125rem;
}
.wiki-tree-name {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: var(--text-main);
  text-decoration: none;
  font-weight: 500;
}
.toggle-spacer {
  display: inline-block;
  width: 1.25rem;
}
.wiki-tree-link {
  text-decoration: none;
  color: var(--text-muted);
  font-weight: 400;
  flex: 1;
  transition: color 0.2s ease;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
}
.wiki-tree-link:hover {
  color: var(--primary);
  text-decoration: none;
}
.wiki-tree-link.active {
  color: var(--primary);
  font-weight: 600;
}
.editor-toolbar button.bold::before,
.editor-toolbar button.italic::before,
.editor-toolbar button.heading::before,
.editor-toolbar button.quote::before,
.editor-toolbar button.code::before,
.editor-toolbar button.unordered-list::before,
.editor-toolbar button.ordered-list::before,
.editor-toolbar button.link::before,
.editor-toolbar button.image::before,
.editor-toolbar button.preview::before,
.editor-toolbar button.side-by-side::before,
.editor-toolbar button.fullscreen::before,
.editor-toolbar button.guide::before {
    content: "";
    display: inline-block;
    width: 1.25rem;
    height: 1.25rem;
    background-color: currentColor;
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: contain;
    vertical-align: middle;
}

.editor-toolbar button.bold::before {
  mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNNyA1aDZhMy41IDMuNSAwIDAgMSAwIDdIN3YtN3oiLz48cGF0aCBkPSJNMTMgMTJoMWEzLjUgMy41IDAgMCAxIDAgN0g3di03Ii8+PC9zdmc+');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNNyA1aDZhMy41IDMuNSAwIDAgMSAwIDdIN3YtN3oiLz48cGF0aCBkPSJNMTMgMTJoMWEzLjUgMy41IDAgMCAxIDAgN0g3di03Ii8+PC9zdmc+')
}
.editor-toolbar button.italic::before {
  mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48bGluZSB4MT0iMTEiIHkxPSI1IiB4Mj0iMTkiIHkyPSI1Ii8+PGxpbmUgeDE9IjUiIHkxPSIxOSIgeDI9IjEzIiB5Mj0iMTkiLz48bGluZSB4MT0iMTQiIHkxPSI1IiB4Mj0iMTAiIHkyPSIxOSIvPjwvc3ZnPg==');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48bGluZSB4MT0iMTEiIHkxPSI1IiB4Mj0iMTkiIHkyPSI1Ii8+PGxpbmUgeDE9IjUiIHkxPSIxOSIgeDI9IjEzIiB5Mj0iMTkiLz48bGluZSB4MT0iMTQiIHkxPSI1IiB4Mj0iMTAiIHkyPSIxOSIvPjwvc3ZnPg==')
}
.editor-toolbar button.heading::before {
  mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNNyAxMmgxMCIvPjxwYXRoIGQ9Ik03IDV2MTQiLz48cGF0aCBkPSJNMTcgNXYxNCIvPjwvc3ZnPg==');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNNyAxMmgxMCIvPjxwYXRoIGQ9Ik03IDV2MTQiLz48cGF0aCBkPSJNMTcgNXYxNCIvPjwvc3ZnPg==')
}
.editor-toolbar button.quote::before {
  mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMTAgMTFINmExIDEgMCAwIDEtMS0xVjdhMSAxIDAgMCAxIDEtMWgzYTEgMSAwIDAgMSAxIDF2NmMwIDIuNS0yIDQtNCA0Ii8+PHBhdGggZD0iTTE5IDExaC00YTEgMSAwIDAgMS0xLTFWN2ExIDEgMCAwIDEgMS0xaDNhMSAxIDAgMCAxIDEgMXY2YzAgMi41LTIgNC00IDQiLz48L3N2Zz4=');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMTAgMTFINmExIDEgMCAwIDEtMS0xVjdhMSAxIDAgMCAxIDEtMWgzYTEgMSAwIDAgMSAxIDF2NmMwIDIuNS0yIDQtNCA0Ii8+PHBhdGggZD0iTTE5IDExaC00YTEgMSAwIDAgMS0xLTFWN2ExIDEgMCAwIDEgMS0xaDNhMSAxIDAgMCAxIDEgMXY2YzAgMi41LTIgNC00IDQiLz48L3N2Zz4=')
}
.editor-toolbar button.code::before {
  mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJtMTYgMTggNi02LTYtNiIvPjxwYXRoIGQ9Ik04IDZsLTYgNiA2IDYiLz48L3N2Zz4=');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJtMTYgMTggNi02LTYtNiIvPjxwYXRoIGQ9Ik04IDZsLTYgNiA2IDYiLz48L3N2Zz4=')
}
.editor-toolbar button.unordered-list::before {
  mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNOSA2aDExTTkgMTJoMTFNOSAxOGgxMU01IDZ2LjAxTTUgMTJ2LjAxTTUgMTh2LjAxIi8+PC9zdmc+');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNOSA2aDExTTkgMTJoMTFNOSAxOGgxMU01IDZ2LjAxTTUgMTJ2LjAxTTUgMTh2LjAxIi8+PC9zdmc+')
}
.editor-toolbar button.ordered-list::before {
  mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMTEgNmg5TTExIDEyaDlNMTEgMThoOU02IDV2MTQiLz48L3N2Zz4=');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMTEgNmg5TTExIDEyaDlNMTEgMThoOU02IDV2MTQiLz48L3N2Zz4=')
}
.editor-toolbar button.link::before {
  mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMTAgMTRhMy41IDMuNSAwIDAgMCA1IDBsNC00YTMuNSAzLjUgMCAwIDAtNS01bC0uNS41Ii8+PHBhdGggZD0iTTE0IDEwYTMuNSAzLjUgMCAwIDAtNSAwbC00IDRhMy41IDMuNSAwIDAgMCA1IDVsLjUtLjUiLz48L3N2Zz4=');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMTAgMTRhMy41IDMuNSAwIDAgMCA1IDBsNC00YTMuNSAzLjUgMCAwIDAtNS01bC0uNS41Ii8+PHBhdGggZD0iTTE0IDEwYTMuNSAzLjUgMCAwIDAtNSAwbC00IDRhMy41IDMuNSAwIDAgMCA1IDVsLjUtLjUiLz48L3N2Zz4=')
}
.editor-toolbar button.image::before {
  mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cmVjdCB4PSIzIiB5PSIzIiB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHJ4PSIyIiByeT0iMiIvPjxjaXJjbGUgY3g9IjguNSIgY3k9IjguNSIgcj0iMS41Ii8+PHBvbHlsaW5lIHBvaW50cz0iMjEgMTUgMTYgMTAgNSAyMSIvPjwvc3ZnPg==');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cmVjdCB4PSIzIiB5PSIzIiB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHJ4PSIyIiByeT0iMiIvPjxjaXJjbGUgY3g9IjguNSIgY3k9IjguNSIgcj0iMS41Ii8+PHBvbHlsaW5lIHBvaW50cz0iMjEgMTUgMTYgMTAgNSAyMSIvPjwvc3ZnPg==')
}
.editor-toolbar button.preview::before {
  mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMiAxMnMzLTcgMTAtNyAxMCA3IDEwIDctMyA3LTEwIDctMTAtNy0xMC03eiIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIHI9IjMiLz48L3N2Zz4=');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMiAxMnMzLTcgMTAtNyAxMCA3IDEwIDctMyA3LTEwIDctMTAtNy0xMC03eiIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIHI9IjMiLz48L3N2Zz4=')
}
.editor-toolbar button.side-by-side::before {
  mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cmVjdCB4PSI0IiB5PSI0IiB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHJ4PSIyIiByeT0iMiIvPjxwYXRoIGQ9Ik0xMiA0djE2Ii8+PC9zdmc+');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cmVjdCB4PSI0IiB5PSI0IiB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHJ4PSIyIiByeT0iMiIvPjxwYXRoIGQ9Ik0xMiA0djE2Ii8+PC9zdmc+')
}
.editor-toolbar button.fullscreen::before {
  mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNNCA4VjRoNE0yMCA4VjRoLTRNNCAxNnY0aDRNMjAgMTZ2NGgtNCIvPjwvc3ZnPg==');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNNCA4VjRoNE0yMCA4VjRoLTRNNCAxNnY0aDRNMjAgMTZ2NGgtNCIvPjwvc3ZnPg==')
}
.editor-toolbar button.guide::before {
  mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNOCA4YTMuNSAzIDAgMCAxIDMuNS0zaDFhMy41IDMgMCAwIDEgMy41IDMgMyAzIDAgMCAxLTIgMyAzIDQgMCAwIDAtMiA0Ii8+PHBhdGggZD0iTTEyIDE5bDAgLjAxIi8+PC9zdmc+');
  -webkit-mask-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNOCA4YTMuNSAzIDAgMCAxIDMuNS0zaDFhMy41IDMgMCAwIDEgMy41IDMgMyAzIDAgMCAxLTIgMyAzIDQgMCAwIDAtMiA0Ii8+PHBhdGggZD0iTTEyIDE5bDAgLjAxIi8+PC9zdmc+')
}

/* --- Wiki tree: node actions (constructor) + drag-drop --- */
.wiki-node-actions {
  display: none;
  align-items: center;
  gap: 0.125rem;
  margin-left: 0.25rem;
  flex: 0 0 auto;
}
.wiki-tree-header:hover > .wiki-node-actions {
  display: inline-flex;
}
.wiki-node-act {
  padding: 0.1rem 0.3rem;
  line-height: 1;
  min-width: auto;
}
.wiki-tree-file[draggable="true"] { cursor: grab; }
.wiki-tree-file.wiki-dragging { opacity: 0.45; }
.wiki-tree-folder.wiki-drop-over {
  outline: 2px dashed var(--primary);
  outline-offset: -2px;
  background: #eff6ff;
}

/* --- Composer (Вариант B): бандлы/router конструктор --- */
.cmp-section { margin-bottom: 1.25rem; }
.cmp-h { font-size: 0.95rem; margin: 0.75rem 0 0.5rem; color: var(--text-main); }
.cmp-card { border: 1px solid var(--border); border-radius: var(--radius-sm); padding: 0.5rem 0.625rem; margin-bottom: 0.5rem; }
.cmp-card-head { display: flex; align-items: center; gap: 0.5rem; margin-bottom: 0.375rem; }
.cmp-size { margin-left: auto; font-size: 0.75rem; color: var(--text-muted); }
.cmp-chips { display: flex; flex-wrap: wrap; gap: 0.375rem; margin-bottom: 0.375rem; min-height: 1.5rem; }
.cmp-chip { display: inline-flex; align-items: center; gap: 0.25rem; padding: 0.15rem 0.4rem; border: 1px solid var(--border); border-radius: 999px; background: #f8fafc; font-size: 0.8rem; cursor: grab; }
.cmp-chip.cmp-drag { opacity: 0.5; }
.cmp-chip-name { font-weight: 500; }
.cmp-chip .btn { padding: 0 0.25rem; line-height: 1.2; min-width: auto; }
.cmp-rm { color: #dc2626; }
.cmp-pri { font-size: 0.72rem; padding: 0 0.2rem; }
.cmp-add { margin-top: 0.25rem; }
.cmp-add select, .cmp-match input { max-width: 340px; }
.cmp-match { display: flex; align-items: center; gap: 0.375rem; margin: 0.25rem 0; }
.cmp-lbl { font-size: 0.75rem; color: var(--text-muted); white-space: nowrap; }
.cmp-save { margin-top: 0.5rem; }
.cmp-note { font-size: 0.8rem; color: var(--text-muted); margin: 0.25rem 0 0.75rem; }
.cmp-warn { border-left: 3px solid #f59e0b; background: #fffbeb; padding: 0.375rem 0.625rem; margin-bottom: 0.5rem; border-radius: 0 var(--radius-sm) var(--radius-sm) 0; }
.cmp-warn-list { margin: 0.25rem 0 0; padding-left: 1.25rem; font-size: 0.8rem; }
.cmp-ok { color: #16a34a; font-size: 0.85rem; }

/* --- Studio (Вариант C): шаблоны, симулятор, граф --- */
.cmp-tpl-row { display: flex; flex-wrap: wrap; gap: 0.375rem; }
.cmp-sim-form { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 0.5rem; margin-bottom: 0.5rem; }
.cmp-field { display: flex; flex-direction: column; gap: 0.125rem; }
.cmp-field select, .cmp-field input { min-width: 120px; }
.cmp-sim-out { font-size: 0.85rem; padding: 0.5rem 0.625rem; border: 1px solid var(--border); border-radius: var(--radius-sm); }
.cmp-sim-total { font-weight: 600; margin-bottom: 0.25rem; }
.cmp-sim-row { color: var(--text-main); }
.cmp-sim-drop { color: #b45309; margin-top: 0.2rem; }
.cmp-conn { border-bottom: 1px solid var(--border); padding: 0.3rem 0; font-size: 0.82rem; }
.cmp-conn-row { color: var(--text-muted); margin-left: 0.5rem; }
.cmp-conn-back { color: var(--primary); }
.cmp-conn-none { font-style: italic; }

/* --- C: frontmatter form + history/diff --- */
.wiki-fm-form { border: 1px solid var(--border); border-radius: var(--radius-sm); padding: 0.5rem 0.625rem; margin: 0.5rem 0; background: #f8fafc; }
.wiki-fm-title { font-size: 0.85rem; display: block; margin-bottom: 0.375rem; }
.wiki-fm-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 0.5rem; }
.wiki-fm-field { display: flex; flex-direction: column; gap: 0.125rem; }
.wiki-history-panel { border: 1px solid var(--border); border-radius: var(--radius-sm); padding: 0.5rem 0.625rem; margin-top: 0.75rem; }
.wiki-history-head { display: flex; align-items: center; margin-bottom: 0.5rem; }
.wiki-history-head strong { flex: 1; }
.wiki-history-row { display: flex; align-items: center; gap: 0.5rem; padding: 0.25rem 0; border-top: 1px solid var(--border); font-size: 0.82rem; }
.wiki-history-when { flex: 1; color: var(--text-muted); }
.wiki-diff { max-height: 320px; overflow: auto; margin-top: 0.5rem; font-size: 0.78rem; line-height: 1.35; background: #0d1117; border-radius: var(--radius-sm); padding: 0.5rem; }
.wiki-diff:empty { display: none; }
.wiki-diff > div { white-space: pre-wrap; }
.diff-add { color: #3fb950; }
.diff-del { color: #f85149; }
.diff-ctx { color: #8b949e; }
