/*!
 * Cropper.js v1.6.2
 * https://fengyuanchen.github.io/cropperjs
 *
 * Copyright 2015-present Chen Fengyuan
 * Released under the MIT license
 *
 * Date: 2024-04-21T07:43:02.731Z
 */.cropper-container{-webkit-touch-callout:none;direction:ltr;font-size:0;line-height:0;position:relative;-ms-touch-action:none;touch-action:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.cropper-container img{backface-visibility:hidden;display:block;height:100%;image-orientation:0deg;max-height:none!important;max-width:none!important;min-height:0!important;min-width:0!important;width:100%}.cropper-canvas,.cropper-crop-box,.cropper-drag-box,.cropper-modal,.cropper-wrap-box{bottom:0;left:0;position:absolute;right:0;top:0}.cropper-canvas,.cropper-wrap-box{overflow:hidden}.cropper-drag-box{background-color:#fff;opacity:0}.cropper-modal{background-color:#000;opacity:.5}.cropper-view-box{display:block;height:100%;outline:1px solid #39f;outline-color:rgba(51,153,255,.75);overflow:hidden;width:100%}.cropper-dashed{border:0 dashed #eee;display:block;opacity:.5;position:absolute}.cropper-dashed.dashed-h{border-bottom-width:1px;border-top-width:1px;height:33.33333%;left:0;top:33.33333%;width:100%}.cropper-dashed.dashed-v{border-left-width:1px;border-right-width:1px;height:100%;left:33.33333%;top:0;width:33.33333%}.cropper-center{display:block;height:0;left:50%;opacity:.75;position:absolute;top:50%;width:0}.cropper-center:after,.cropper-center:before{background-color:#eee;content:" ";display:block;position:absolute}.cropper-center:before{height:1px;left:-3px;top:0;width:7px}.cropper-center:after{height:7px;left:0;top:-3px;width:1px}.cropper-face,.cropper-line,.cropper-point{display:block;height:100%;opacity:.1;position:absolute;width:100%}.cropper-face{background-color:#fff;left:0;top:0}.cropper-line{background-color:#39f}.cropper-line.line-e{cursor:ew-resize;right:-3px;top:0;width:5px}.cropper-line.line-n{cursor:ns-resize;height:5px;left:0;top:-3px}.cropper-line.line-w{cursor:ew-resize;left:-3px;top:0;width:5px}.cropper-line.line-s{bottom:-3px;cursor:ns-resize;height:5px;left:0}.cropper-point{background-color:#39f;height:5px;opacity:.75;width:5px}.cropper-point.point-e{cursor:ew-resize;margin-top:-3px;right:-3px;top:50%}.cropper-point.point-n{cursor:ns-resize;left:50%;margin-left:-3px;top:-3px}.cropper-point.point-w{cursor:ew-resize;left:-3px;margin-top:-3px;top:50%}.cropper-point.point-s{bottom:-3px;cursor:s-resize;left:50%;margin-left:-3px}.cropper-point.point-ne{cursor:nesw-resize;right:-3px;top:-3px}.cropper-point.point-nw{cursor:nwse-resize;left:-3px;top:-3px}.cropper-point.point-sw{bottom:-3px;cursor:nesw-resize;left:-3px}.cropper-point.point-se{bottom:-3px;cursor:nwse-resize;height:20px;opacity:1;right:-3px;width:20px}@media (min-width:768px){.cropper-point.point-se{height:15px;width:15px}}@media (min-width:992px){.cropper-point.point-se{height:10px;width:10px}}@media (min-width:1200px){.cropper-point.point-se{height:5px;opacity:.75;width:5px}}.cropper-point.point-se:before{background-color:#39f;bottom:-50%;content:" ";display:block;height:200%;opacity:0;position:absolute;right:-50%;width:200%}.cropper-invisible{opacity:0}.cropper-bg{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAAA3NCSVQICAjb4U/gAAAABlBMVEXMzMz////TjRV2AAAACXBIWXMAAArrAAAK6wGCiw1aAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M26LyyjAAAABFJREFUCJlj+M/AgBVhF/0PAH6/D/HkDxOGAAAAAElFTkSuQmCC")}.cropper-hide{display:block;height:0;position:absolute;width:0}.cropper-hidden{display:none!important}.cropper-move{cursor:move}.cropper-crop{cursor:crosshair}.cropper-disabled .cropper-drag-box,.cropper-disabled .cropper-face,.cropper-disabled .cropper-line,.cropper-disabled .cropper-point{cursor:not-allowed}
/* Inter — self-hosted (cyrillic-ext, cyrillic, latin) */

/* cyrillic-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/inter-cyrillic-ext-631e5ed751a6ddb2649e1c04715fcb2f01d5f5933bc4a9856d03a509e50f9ff8.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/inter-cyrillic-7fd81485d7a8e2c6c3e23c626fd5ffde5e426df2d7f4925fb151c9410f5eb961.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/inter-latin-007fce1bff9f7f37469fe61eff9ef62c033af63fccb0e65a2e94f4e0c14d9d6d.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/inter-cyrillic-ext-631e5ed751a6ddb2649e1c04715fcb2f01d5f5933bc4a9856d03a509e50f9ff8.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/inter-cyrillic-7fd81485d7a8e2c6c3e23c626fd5ffde5e426df2d7f4925fb151c9410f5eb961.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/inter-latin-007fce1bff9f7f37469fe61eff9ef62c033af63fccb0e65a2e94f4e0c14d9d6d.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/inter-cyrillic-ext-631e5ed751a6ddb2649e1c04715fcb2f01d5f5933bc4a9856d03a509e50f9ff8.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/inter-cyrillic-7fd81485d7a8e2c6c3e23c626fd5ffde5e426df2d7f4925fb151c9410f5eb961.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/inter-latin-007fce1bff9f7f37469fe61eff9ef62c033af63fccb0e65a2e94f4e0c14d9d6d.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/inter-cyrillic-ext-631e5ed751a6ddb2649e1c04715fcb2f01d5f5933bc4a9856d03a509e50f9ff8.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/inter-cyrillic-7fd81485d7a8e2c6c3e23c626fd5ffde5e426df2d7f4925fb151c9410f5eb961.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/inter-latin-007fce1bff9f7f37469fe61eff9ef62c033af63fccb0e65a2e94f4e0c14d9d6d.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Unbounded — self-hosted (cyrillic-ext, cyrillic, latin) */

/* cyrillic-ext */
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/unbounded-cyrillic-ext-a546ddca6a77271624caedbe61ab6a7cba048cc0c19c739f6c127d245e01d0e4.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

/* cyrillic */
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/unbounded-cyrillic-4e4a4dbf7e85ee68b05abdb65464428c228766a913e50608c564c093a4493fc9.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* latin */
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/unbounded-latin-35118312c07e0183bed04b6651daed56cba853e3182e213c65c65f7d98510ef4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic-ext */
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/unbounded-cyrillic-ext-a546ddca6a77271624caedbe61ab6a7cba048cc0c19c739f6c127d245e01d0e4.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

/* cyrillic */
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/unbounded-cyrillic-4e4a4dbf7e85ee68b05abdb65464428c228766a913e50608c564c093a4493fc9.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* latin */
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/unbounded-latin-35118312c07e0183bed04b6651daed56cba853e3182e213c65c65f7d98510ef4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic-ext */
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/unbounded-cyrillic-ext-a546ddca6a77271624caedbe61ab6a7cba048cc0c19c739f6c127d245e01d0e4.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

/* cyrillic */
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/unbounded-cyrillic-4e4a4dbf7e85ee68b05abdb65464428c228766a913e50608c564c093a4493fc9.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* latin */
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/unbounded-latin-35118312c07e0183bed04b6651daed56cba853e3182e213c65c65f7d98510ef4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic-ext */
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/unbounded-cyrillic-ext-a546ddca6a77271624caedbe61ab6a7cba048cc0c19c739f6c127d245e01d0e4.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

/* cyrillic */
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/unbounded-cyrillic-4e4a4dbf7e85ee68b05abdb65464428c228766a913e50608c564c093a4493fc9.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* latin */
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/unbounded-latin-35118312c07e0183bed04b6651daed56cba853e3182e213c65c65f7d98510ef4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic-ext */
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/assets/unbounded-cyrillic-ext-a546ddca6a77271624caedbe61ab6a7cba048cc0c19c739f6c127d245e01d0e4.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

/* cyrillic */
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/assets/unbounded-cyrillic-4e4a4dbf7e85ee68b05abdb65464428c228766a913e50608c564c093a4493fc9.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* latin */
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/assets/unbounded-latin-35118312c07e0183bed04b6651daed56cba853e3182e213c65c65f7d98510ef4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic-ext */
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(/assets/unbounded-cyrillic-ext-a546ddca6a77271624caedbe61ab6a7cba048cc0c19c739f6c127d245e01d0e4.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

/* cyrillic */
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(/assets/unbounded-cyrillic-4e4a4dbf7e85ee68b05abdb65464428c228766a913e50608c564c093a4493fc9.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* latin */
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(/assets/unbounded-latin-35118312c07e0183bed04b6651daed56cba853e3182e213c65c65f7d98510ef4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/*
 * Fallback для старых браузеров (Chrome < 111, Safari < 15.4, Firefox < 113),
 * которые не понимают oklch() из палитры Tailwind v4. Без этого блока bg-*/text-*
 * классы рендерятся как transparent — например, белая кнопка «Зарегистрироваться»
 * сливается с фоном на Windows 7 + старый Chrome.
 *
 * Покрыты только классы, реально встречающиеся в app/views и app/components
 * (см. grep по bg-/text-/border-). Если добавляешь новый цвет в шаблоны и хочешь
 * поддержать старые браузеры — добавь его hex-аналог сюда.
 */

/* Баннер «Обновите браузер» — рендерится во всех layout-ах через
   shared/_legacy_browser_banner.html.erb. Стили в hex, без oklch и без
   tailwind-классов, чтобы корректно отображаться даже на Chrome 49 (Vista). */
.legacy-browser-banner {
  background-color: #fef3c7;
  border-bottom: 1px solid #f59e0b;
  color: #78350f;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.4;
  position: relative;
  z-index: 100;
}
.legacy-browser-banner__inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 12px 48px 12px 16px;
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
.legacy-browser-banner__icon {
  flex: 0 0 auto;
  width: 24px;
  height: 24px;
  background-color: #f59e0b;
  color: #ffffff;
  border-radius: 50%;
  text-align: center;
  font-weight: bold;
  line-height: 24px;
  font-size: 16px;
}
.legacy-browser-banner__text {
  flex: 1 1 auto;
}
.legacy-browser-banner__text a {
  color: #78350f;
  text-decoration: underline;
  font-weight: 600;
}
.legacy-browser-banner__text a:hover {
  text-decoration: none;
}
.legacy-browser-banner__close {
  position: absolute;
  top: 8px;
  right: 12px;
  background: transparent;
  border: 0;
  color: #78350f;
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
  padding: 4px 8px;
}
.legacy-browser-banner__close:hover {
  color: #451a03;
}

@supports not (color: oklch(0 0 0)) {
  /* ---- backgrounds ---- */
  .bg-white { background-color: #ffffff; }

  .bg-gray-50 { background-color: #f9fafb; }
  .bg-gray-100 { background-color: #f3f4f6; }
  .bg-gray-200 { background-color: #e5e7eb; }
  .bg-gray-300 { background-color: #d1d5db; }
  .bg-gray-400 { background-color: #9ca3af; }
  .bg-gray-500 { background-color: #6b7280; }
  .bg-gray-700 { background-color: #374151; }
  .bg-gray-800 { background-color: #1f2937; }
  .bg-gray-900 { background-color: #111827; }

  .bg-indigo-50 { background-color: #eef2ff; }
  .bg-indigo-100 { background-color: #e0e7ff; }
  .bg-indigo-400 { background-color: #818cf8; }
  .bg-indigo-500 { background-color: #6366f1; }
  .bg-indigo-600 { background-color: #4f46e5; }
  .bg-indigo-700 { background-color: #4338ca; }

  .bg-blue-50 { background-color: #eff6ff; }
  .bg-blue-100 { background-color: #dbeafe; }
  .bg-blue-500 { background-color: #3b82f6; }
  .bg-blue-600 { background-color: #2563eb; }
  .bg-blue-700 { background-color: #1d4ed8; }

  .bg-red-50 { background-color: #fef2f2; }
  .bg-red-100 { background-color: #fee2e2; }
  .bg-red-500 { background-color: #ef4444; }
  .bg-red-600 { background-color: #dc2626; }
  .bg-red-700 { background-color: #b91c1c; }

  .bg-green-50 { background-color: #f0fdf4; }
  .bg-green-100 { background-color: #dcfce7; }
  .bg-green-500 { background-color: #22c55e; }
  .bg-green-600 { background-color: #16a34a; }
  .bg-green-700 { background-color: #15803d; }
  .bg-green-800 { background-color: #166534; }

  .bg-emerald-50 { background-color: #ecfdf5; }
  .bg-emerald-100 { background-color: #d1fae5; }
  .bg-emerald-500 { background-color: #10b981; }
  .bg-emerald-600 { background-color: #059669; }
  .bg-emerald-700 { background-color: #047857; }
  .bg-emerald-800 { background-color: #065f46; }

  .bg-amber-50 { background-color: #fffbeb; }
  .bg-amber-100 { background-color: #fef3c7; }
  .bg-amber-500 { background-color: #f59e0b; }
  .bg-amber-600 { background-color: #d97706; }
  .bg-amber-700 { background-color: #b45309; }

  .bg-yellow-400 { background-color: #facc15; }
  .bg-yellow-500 { background-color: #eab308; }

  .bg-pink-50 { background-color: #fdf2f8; }
  .bg-pink-100 { background-color: #fce7f3; }
  .bg-pink-500 { background-color: #ec4899; }

  .bg-purple-50 { background-color: #faf5ff; }
  .bg-purple-100 { background-color: #f3e8ff; }

  .bg-rose-50 { background-color: #fff1f2; }
  .bg-rose-100 { background-color: #ffe4e6; }
  .bg-rose-500 { background-color: #f43f5e; }

  .bg-sky-50 { background-color: #f0f9ff; }
  .bg-sky-100 { background-color: #e0f2fe; }
  .bg-sky-600 { background-color: #0284c7; }
  .bg-sky-700 { background-color: #0369a1; }

  .bg-teal-50 { background-color: #f0fdfa; }
  .bg-teal-500 { background-color: #14b8a6; }

  .bg-violet-50 { background-color: #f5f3ff; }
  .bg-violet-100 { background-color: #ede9fe; }
  .bg-violet-600 { background-color: #7c3aed; }
  .bg-violet-700 { background-color: #6d28d9; }

  /* ---- hover backgrounds (for buttons that change shade on hover) ---- */
  .hover\:bg-indigo-700:hover { background-color: #4338ca; }
  .hover\:bg-indigo-800:hover { background-color: #3730a3; }
  .hover\:bg-blue-700:hover { background-color: #1d4ed8; }
  .hover\:bg-red-700:hover { background-color: #b91c1c; }
  .hover\:bg-green-700:hover { background-color: #15803d; }
  .hover\:bg-emerald-700:hover { background-color: #047857; }
  .hover\:bg-gray-100:hover { background-color: #f3f4f6; }
  .hover\:bg-gray-200:hover { background-color: #e5e7eb; }

  /* ---- text colors ---- */
  .text-white { color: #ffffff; }

  .text-gray-300 { color: #d1d5db; }
  .text-gray-400 { color: #9ca3af; }
  .text-gray-500 { color: #6b7280; }
  .text-gray-600 { color: #4b5563; }
  .text-gray-700 { color: #374151; }
  .text-gray-800 { color: #1f2937; }
  .text-gray-900 { color: #111827; }

  .text-indigo-600 { color: #4f46e5; }
  .text-indigo-700 { color: #4338ca; }
  .text-indigo-800 { color: #3730a3; }
  .text-indigo-900 { color: #312e81; }

  .text-blue-500 { color: #3b82f6; }
  .text-blue-600 { color: #2563eb; }
  .text-blue-700 { color: #1d4ed8; }
  .text-blue-800 { color: #1e40af; }

  .text-red-500 { color: #ef4444; }
  .text-red-600 { color: #dc2626; }
  .text-red-700 { color: #b91c1c; }
  .text-red-800 { color: #991b1b; }
  .text-red-900 { color: #7f1d1d; }

  .text-green-600 { color: #16a34a; }
  .text-green-700 { color: #15803d; }
  .text-green-800 { color: #166534; }
  .text-green-900 { color: #14532d; }

  .text-emerald-500 { color: #10b981; }
  .text-emerald-600 { color: #059669; }
  .text-emerald-700 { color: #047857; }
  .text-emerald-800 { color: #065f46; }
  .text-emerald-900 { color: #064e3b; }

  .text-amber-300 { color: #fcd34d; }
  .text-amber-500 { color: #f59e0b; }
  .text-amber-600 { color: #d97706; }
  .text-amber-700 { color: #b45309; }
  .text-amber-800 { color: #92400e; }
  .text-amber-900 { color: #78350f; }

  .text-pink-600 { color: #db2777; }
  .text-pink-700 { color: #be185d; }
  .text-pink-800 { color: #9d174d; }

  .text-purple-400 { color: #c084fc; }
  .text-purple-600 { color: #9333ea; }
  .text-purple-700 { color: #7e22ce; }
  .text-purple-800 { color: #6b21a8; }
  .text-purple-900 { color: #581c87; }

  .text-rose-600 { color: #e11d48; }
  .text-rose-700 { color: #be123c; }
  .text-rose-900 { color: #881337; }

  .text-sky-700 { color: #0369a1; }
  .text-sky-800 { color: #075985; }

  .text-teal-600 { color: #0d9488; }

  .text-violet-600 { color: #7c3aed; }
  .text-violet-700 { color: #6d28d9; }
  .text-violet-800 { color: #5b21b6; }

  /* ---- borders ---- */
  .border-gray-100 { border-color: #f3f4f6; }
  .border-gray-200 { border-color: #e5e7eb; }
  .border-gray-300 { border-color: #d1d5db; }
  .border-gray-400 { border-color: #9ca3af; }

  .border-indigo-100 { border-color: #e0e7ff; }
  .border-indigo-200 { border-color: #c7d2fe; }
  .border-indigo-300 { border-color: #a5b4fc; }
  .border-indigo-400 { border-color: #818cf8; }
  .border-indigo-500 { border-color: #6366f1; }
  .border-indigo-600 { border-color: #4f46e5; }

  .border-blue-200 { border-color: #bfdbfe; }

  .border-red-100 { border-color: #fee2e2; }
  .border-red-200 { border-color: #fecaca; }
  .border-red-300 { border-color: #fca5a5; }

  .border-green-100 { border-color: #dcfce7; }
  .border-green-200 { border-color: #bbf7d0; }

  .border-emerald-100 { border-color: #d1fae5; }
  .border-emerald-200 { border-color: #a7f3d0; }
  .border-emerald-300 { border-color: #6ee7b7; }
  .border-emerald-400 { border-color: #34d399; }

  .border-amber-100 { border-color: #fef3c7; }
  .border-amber-200 { border-color: #fde68a; }

  .border-pink-100 { border-color: #fce7f3; }
  .border-purple-100 { border-color: #f3e8ff; }
  .border-purple-200 { border-color: #e9d5ff; }
  .border-violet-200 { border-color: #ddd6fe; }
  .border-sky-600 { border-color: #0284c7; }
  .border-yellow-700 { border-color: #a16207; }
}
/*
 * This is a manifest file that'll be compiled into application.css, which will include all the files
 * listed below.
 *
 * Any CSS (and SCSS, if configured) file within this directory, lib/assets/stylesheets, or any plugin's
 * vendor/assets/stylesheets directory can be referenced here using a relative path.
 *
 * You're free to add application-wide styles to this file and they'll appear at the bottom of the
 * compiled file so the styles you add here take precedence over styles defined in any other CSS
 * files in this directory. Styles in this file should be added after the last require_* statement.
 * It is generally better to create a new file per style scope.
 *
 * NOTE: `require_directory` (non-recursive) вместо `require_tree`, иначе
 * рекурсия заходит в `scss/` и подмешивает AA-стили в application.css,
 * ломая tailwind-фронт (ссылки с underline, сброс шрифтов и т.д.).
 * AA-стили собираются отдельно в app/assets/builds/active_admin.css
 * (см. config/initializers/dartsass.rb).
 *


 */
