@charset "utf-8";
/* CSS Document */ 

*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:Montserrat,sans-serif;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}
h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}
a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit;font-weight: 700;
    COLOR: #035138;}
b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}
main a {text-decoration: underline;}
/* ===== ДОПОЛНЕНИЯ ИЗ STYLE.CSS ===== */

/* Переменные и корневые настройки */
:root {
  --background: 40 30% 97%;
  --foreground: 30 20% 15%;
  --card: 40 25% 95%;
  --card-foreground: 30 20% 15%;
  --popover: 40 25% 95%;
  --popover-foreground: 30 20% 15%;
  --primary: 161 94% 30%;
  --primary-foreground: 0 0% 100%;
  --secondary: 30 40% 90%;
  --secondary-foreground: 30 30% 20%;
  --muted: 35 20% 92%;
  --muted-foreground: 30 15% 45%;
  --accent: 35 50% 85%;
  --accent-foreground: 30 30% 20%;
  --destructive: 0 84% 60%;
  --destructive-foreground: 0 0% 100%;
  --border: 35 25% 85%;
  --input: 35 25% 85%;
  --ring: 161 94% 30%;
  --radius: .5rem;
  --wood-light: 35 45% 80%;
  --wood-medium: 30 40% 55%;
  --wood-dark: 25 45% 25%;
  --cream: 40 40% 96%;
  --forest: 161 94% 30%;
  --forest-dark: 120 80% 18%;
  --forest-light: 120 60% 35%;
  --gradient-forest: linear-gradient(135deg, hsl(161 94% 30%), hsl(120 80% 18%));
  --gradient-wood: linear-gradient(135deg, hsl(35 45% 80%), hsl(30 40% 70%));
  --gradient-hero: linear-gradient(180deg, rgba(0,0,0,.4) 0%, rgba(0,0,0,.6) 100%);
  --shadow-soft: 0 4px 20px -4px hsl(30 20% 15% / .1);
  --shadow-medium: 0 8px 30px -8px hsl(30 20% 15% / .15);
  --shadow-strong: 0 12px 40px -12px hsl(30 20% 15% / .2);
  --sidebar-background: 40 30% 97%;
  --sidebar-foreground: 30 20% 15%;
  --sidebar-primary: 161 94% 30%;
  --sidebar-primary-foreground: 0 0% 100%;
  --sidebar-accent: 35 50% 85%;
  --sidebar-accent-foreground: 30 30% 20%;
  --sidebar-border: 35 25% 85%;
  --sidebar-ring: 161 94% 30%;
      --primary-50: .97 .03 170;
    --primary-100: .92 .06 170;
    --primary-200: .85 .09 170;
    --primary-300: .76 .12 170;
    --primary-400: .66 .15 170;
    --primary-500: .55 .18 168;
    --primary-600: .48 .16 168;
    --primary-700: .4 .14 168;
    --primary-800: .32 .12 168;
        --primary-950: .16 .06 168;
    --accent-50: .97 .03 85;
    --accent-100: .92 .07 85;
    --accent-200: .85 .12 85;
    --accent-300: .78 .16 85;
    --accent-400: .72 .18 80;
    --accent-500: .68 .18 75;
    --accent-600: .6 .16 75;
    --accent-700: .5 .14 75;
    --accent-800: .4 .11 75;
    --accent-900: .3 .08 75;
    --accent-950: .2 .05 75;
        --secondary-50: .97 .005 170;
    --secondary-100: .93 .01 170;
    --secondary-200: .87 .02 170;
    --secondary-300: .79 .03 170;
    --secondary-400: .7 .04 170;
    --secondary-500: .6 .04 170;
    --secondary-600: .52 .035 170;
    --secondary-700: .44 .03 170;
    --secondary-800: .35 .025 170;
    --secondary-900: .26 .02 170;
    --secondary-950: .18 .015 170;
    --foreground-50: .97 .002 106.8;
    --foreground-100: .93 .004 106.8;
    --foreground-200: .86 .008 106.8;
    --foreground-300: .76 .012 106.8;
    --foreground-400: .66 .016 106.8;
    --foreground-500: .55 .02 106.8;
    --foreground-600: .45 .02 106.8;
    --foreground-700: .35 .018 106.8;
    --foreground-800: .26 .014 106.8;
    --foreground-900: .18 .01 106.8;
    --foreground-950: .1 .006 106.8;
    --background-50: .985 .002 106.8;
    --background-100: .96 .003 106.8;
    --background-200: .92 .006 106.8;
    --background-300: .87 .01 106.8;
    --background-400: .8 .014 106.8;
    --background-500: .72 .018 106.8;
}

.dark {
  --background: 25 30% 8%;
  --foreground: 40 20% 95%;
  --card: 25 25% 12%;
  --card-foreground: 40 20% 95%;
  --popover: 25 25% 12%;
  --popover-foreground: 40 20% 95%;
  --primary: 120 80% 40%;
  --primary-foreground: 0 0% 100%;
  --secondary: 30 20% 20%;
  --secondary-foreground: 40 20% 95%;
  --muted: 30 15% 18%;
  --muted-foreground: 35 15% 60%;
  --accent: 30 25% 22%;
  --accent-foreground: 40 20% 95%;
  --destructive: 0 62% 30%;
  --destructive-foreground: 0 0% 100%;
  --border: 30 20% 20%;
  --input: 30 20% 20%;
  --ring: 120 80% 40%;
  --wood-light: 30 30% 35%;
  --wood-medium: 30 35% 45%;
  --wood-dark: 25 40% 15%;
  --cream: 40 20% 12%;
  --forest: 120 80% 40%;
  --forest-dark: 120 70% 25%;
  --forest-light: 120 60% 50%;
  --sidebar-background: 25 30% 8%;
  --sidebar-foreground: 40 20% 95%;
  --sidebar-primary: 120 80% 40%;
  --sidebar-primary-foreground: 0 0% 100%;
  --sidebar-accent: 30 25% 22%;
  --sidebar-accent-foreground: 40 20% 95%;
  --sidebar-border: 30 20% 20%;
  --sidebar-ring: 120 80% 40%;
}

* { border-color: hsl(var(--border)); }
body {
  background-color: hsl(var(--background));
  font-family: Open Sans, system-ui, sans-serif;
  color: hsl(var(--foreground));
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
h1,h2,h3,h4,h5,h6 {
  font-family: Playfair Display, Georgia, serif;
}

.container {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 2rem;
  padding-left: 2rem;
}
@media (min-width: 1400px) {
  .container { max-width: 1400px; }
}

/* Дополнительные утилиты Tailwind из style.css */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border-width: 0;
}
.pointer-events-none { pointer-events: none; }
.pointer-events-auto { pointer-events: auto; }
.visible { visibility: visible; }
.invisible { visibility: hidden; }
.fixed { position: fixed; }
.absolute { position: absolute; }
.relative { position: relative; }
.inset-0 { top: 0; right: 0; bottom: 0; left: 0; }
.inset-x-0 { left: 0; right: 0; }
.inset-y-0 { top: 0; bottom: 0; }
.-bottom-12 { bottom: -3rem; }
.-bottom-6 { bottom: -1.5rem; }
.-left-12 { left: -3rem; }
.-left-6 { left: -1.5rem; }
.-right-12 { right: -3rem; }
.-right-2 { right: -0.5rem; }
.-top-12 { top: -3rem; }
.-top-2 { top: -0.5rem; }
.bottom-0 { bottom: 0; }
.bottom-8 { bottom: 2rem; }
.left-0 { left: 0; }
.left-1 { left: 0.25rem; }
.left-1\/2 { left: 50%; }
.left-2 { left: 0.5rem; }
.left-4 { left: 1rem; }
.left-\[4\.5rem\] { left: 4.5rem; }
.left-\[50\%\] { left: 50%; }
.right-0 { right: 0; }
.right-1 { right: 0.25rem; }
.right-2 { right: 0.5rem; }
.right-3 { right: 0.75rem; }
.right-4 { right: 1rem; }
.top-0 { top: 0; }
.top-1\.5 { top: 0.375rem; }
.top-1\/2 { top: 50%; }
.top-2 { top: 0.5rem; }
.top-3\.5 { top: 0.875rem; }
.top-4 { top: 1rem; }
.top-8 { top: 2rem; }
.top-\[1px\] { top: 1px; }
.top-\[50\%\] { top: 50%; }
.top-\[60\%\] { top: 60%; }
.top-full { top: 100%; }
.z-10 { z-index: 10; }
.z-20 { z-index: 20; }
.z-50 { z-index: 50; }
.z-\[100\] { z-index: 100; }
.z-\[1\] { z-index: 1; }
.-mx-1 { margin-left: -0.25rem; margin-right: -0.25rem; }
.mx-2 { margin-left: 0.5rem; margin-right: 0.5rem; }
.mx-3\.5 { margin-left: 0.875rem; margin-right: 0.875rem; }
.mx-auto { margin-left: auto; margin-right: auto; }
.my-0\.5 { margin-top: 0.125rem; margin-bottom: 0.125rem; }
.my-1 { margin-top: 0.25rem; margin-bottom: 0.25rem; }
.-ml-4 { margin-left: -1rem; }
.-mt-4 { margin-top: -1rem; }
.mb-1 { margin-bottom: 0.25rem; }
.mb-10 { margin-bottom: 2.5rem; }
.mb-12 { margin-bottom: 3rem; }
.mb-16 { margin-bottom: 4rem; }
.mb-2 { margin-bottom: 0.5rem; }
.mb-3 { margin-bottom: 0.75rem; }
.mb-4 { margin-bottom: 1rem; }
.mb-5 { margin-bottom: 1.25rem; }
.mb-6 { margin-bottom: 1.5rem; }
.mb-8 { margin-bottom: 2rem; }
.ml-1 { margin-left: 0.25rem; }
.ml-auto { margin-left: auto; }
.mr-2 { margin-right: 0.5rem; }
.mt-0\.5 { margin-top: 0.125rem; }
.mt-1\.5 { margin-top: 0.375rem; }
.mt-10 { margin-top: 2.5rem; }
.mt-2 { margin-top: 0.5rem; }
.mt-24 { margin-top: 6rem; }
.mt-4 { margin-top: 1rem; }
.mt-auto { margin-top: auto; }
.block { display: block; }
.inline-block { display: inline-block; }
.flex { display: flex; }
.inline-flex { display: inline-flex; }
.table { display: table; }
.grid { display: grid; }
.hidden { display: none; }
.aspect-\[4\/3\] { aspect-ratio: 4/3; }
.aspect-\[4\/5\] { aspect-ratio: 4/5; }
.aspect-square { aspect-ratio: 1 / 1; }
.aspect-video { aspect-ratio: 16 / 9; }
.size-4 { width: 1rem; height: 1rem; }
.h-1\.5 { height: 0.375rem; }
.h-10 { height: 2.5rem; }
.h-11 { height: 2.75rem; }
.h-12 { height: 3rem; }
.h-14 { height: 3.5rem; }
.h-16 { height: 4rem; }
.h-2 { height: 0.5rem; }
.h-2\.5 { height: 0.625rem; }
.h-20 { height: 5rem; }
.h-3 { height: 0.75rem; }
.h-3\.5 { height: 0.875rem; }
.h-4 { height: 1rem; }
.h-5 { height: 1.25rem; }
.h-6 { height: 1.5rem; }
.h-7 { height: 1.75rem; }
.h-8 { height: 2rem; }
.h-9 { height: 2.25rem; }
.h-96 { height: 24rem; }
.h-\[1px\] { height: 1px; }
.h-\[400px\] { height: 400px; }
.h-\[var\(--radix-navigation-menu-viewport-height\)\] { height: var(--radix-navigation-menu-viewport-height); }
.h-\[var\(--radix-select-trigger-height\)\] { height: var(--radix-select-trigger-height); }
.h-auto { height: auto; }
.h-full { height: 100%; }
.h-px { height: 1px; }
.h-screen { height: 100vh; }
.h-svh { height: 100svh; }
.max-h-96 { max-height: 24rem; }
.max-h-\[300px\] { max-height: 300px; }
.max-h-\[80vh\] { max-height: 80vh; }
.max-h-screen { max-height: 100vh; }
.min-h-0 { min-height: 0px; }
.min-h-\[400px\] { min-height: 400px; }
.min-h-\[600px\] { min-height: 600px; }
.min-h-\[80px\] { min-height: 80px; }
.min-h-screen { min-height: 100vh; }
.min-h-svh { min-height: 100svh; }
.w-0 { width: 0px; }
.w-1 { width: 0.25rem; }
.w-10 { width: 2.5rem; }
.w-11 { width: 2.75rem; }
.w-12 { width: 3rem; }
.w-14 { width: 3.5rem; }
.w-16 { width: 4rem; }
.w-2 { width: 0.5rem; }
.w-2\.5 { width: 0.625rem; }
.w-3 { width: 0.75rem; }
.w-3\.5 { width: 0.875rem; }
.w-3\/4 { width: 75%; }
.w-4 { width: 1rem; }
.w-5 { width: 1.25rem; }
.w-6 { width: 1.5rem; }
.w-64 { width: 16rem; }
.w-7 { width: 1.75rem; }
.w-72 { width: 18rem; }
.w-8 { width: 2rem; }
.w-9 { width: 2.25rem; }
.w-\[--sidebar-width\] { width: var(--sidebar-width); }
.w-\[100px\] { width: 100px; }
.w-\[1px\] { width: 1px; }
.w-\[calc\(100\%-4\.5rem\)\] { width: calc(100% - 4.5rem); }
.w-auto { width: auto; }
.w-full { width: 100%; }
.w-max { width: max-content; }
.w-px { width: 1px; }
.min-w-0 { min-width: 0px; }
.min-w-5 { min-width: 1.25rem; }
.min-w-\[12rem\] { min-width: 12rem; }
.min-w-\[8rem\] { min-width: 8rem; }
.min-w-\[var\(--radix-select-trigger-width\)\] { min-width: var(--radix-select-trigger-width); }
.max-w-2xl { max-width: 42rem; }
.max-w-3xl { max-width: 48rem; }
.max-w-4xl { max-width: 56rem; }
.max-w-\[--skeleton-width\] { max-width: var(--skeleton-width); }
.max-w-lg { max-width: 32rem; }
.max-w-max { max-width: max-content; }
.max-w-md { max-width: 28rem; }
.max-w-xl { max-width: 36rem; }
.flex-1 { flex: 1 1 0%; }
.flex-shrink-0, .shrink-0 { flex-shrink: 0; }
.grow { flex-grow: 1; }
.grow-0 { flex-grow: 0; }
.basis-full { flex-basis: 100%; }
.caption-bottom { caption-side: bottom; }
.border-collapse { border-collapse: collapse; }
.-translate-x-1\/2 { --tw-translate-x: -50%; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.-translate-x-px { --tw-translate-x: -1px; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.-translate-y-1\/2 { --tw-translate-y: -50%; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.translate-x-1\/2 { --tw-translate-x: 50%; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.translate-x-\[-50\%\] { --tw-translate-x: -50%; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.translate-x-px { --tw-translate-x: 1px; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.translate-y-1\/2 { --tw-translate-y: 50%; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.translate-y-\[-50\%\] { --tw-translate-y: -50%; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.translate-y-full { --tw-translate-y: 100%; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.rotate-45 { --tw-rotate: 45deg; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.rotate-90 { --tw-rotate: 90deg; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.transform { transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
@keyframes pulse { 50% { opacity: .5; } }
.animate-pulse { animation: pulse 2s cubic-bezier(.4,0,.6,1) infinite; }
.cursor-default { cursor: default; }
.cursor-pointer { cursor: pointer; }
.touch-none { touch-action: none; }
.select-none { -webkit-user-select: none; user-select: none; }
.list-none { list-style-type: none; }
.flex-row { flex-direction: row; }
.flex-col { flex-direction: column; }
.flex-col-reverse { flex-direction: column-reverse; }
.flex-wrap { flex-wrap: wrap; }
.items-start { align-items: flex-start; }
.items-end { align-items: flex-end; }
.items-center { align-items: center; }
.items-stretch { align-items: stretch; }
.justify-center { justify-content: center; }
.justify-between { justify-content: space-between; }
.gap-1 { gap: 0.25rem; }
.gap-1\.5 { gap: 0.375rem; }
.gap-10 { gap: 2.5rem; }
.gap-12 { gap: 3rem; }
.gap-2 { gap: 0.5rem; }
.gap-3 { gap: 0.75rem; }
.gap-4 { gap: 1rem; }
.gap-5 { gap: 1.25rem; }
.gap-6 { gap: 1.5rem; }
.gap-8 { gap: 2rem; }
.space-x-1 > :not([hidden]) ~ :not([hidden]) { --tw-space-x-reverse: 0; margin-right: calc(0.25rem * var(--tw-space-x-reverse)); margin-left: calc(0.25rem * calc(1 - var(--tw-space-x-reverse))); }
.space-x-4 > :not([hidden]) ~ :not([hidden]) { --tw-space-x-reverse: 0; margin-right: calc(1rem * var(--tw-space-x-reverse)); margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse))); }
.space-y-1 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.25rem * var(--tw-space-y-reverse)); }
.space-y-1\.5 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(0.375rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.375rem * var(--tw-space-y-reverse)); }
.space-y-2 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.5rem * var(--tw-space-y-reverse)); }
.space-y-3 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.75rem * var(--tw-space-y-reverse)); }
.space-y-4 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(1rem * var(--tw-space-y-reverse)); }
.space-y-6 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(1.5rem * var(--tw-space-y-reverse)); }
.overflow-auto { overflow: auto; }
.overflow-hidden { overflow: hidden; }
.overflow-y-auto { overflow-y: auto; }
.overflow-x-hidden { overflow-x: hidden; }
.whitespace-nowrap { white-space: nowrap; }
.break-words { overflow-wrap: break-word; }
.rounded-2xl { border-radius: 1rem; }
.rounded-\[2px\] { border-radius: 2px; }
.rounded-\[inherit\] { border-radius: inherit; }
.rounded-full { border-radius: 9999px; }
.rounded-lg { border-radius: var(--radius); }
.rounded-md { border-radius: calc(var(--radius) - 2px); }
.rounded-sm { border-radius: calc(var(--radius) - 4px); }
.rounded-xl { border-radius: 0.75rem; }
.rounded-t-\[10px\] { border-top-left-radius: 10px; border-top-right-radius: 10px; }
.rounded-tl-sm { border-top-left-radius: calc(var(--radius) - 4px); }
.border { border-width: 1px; }
.border-0 { border-width: 0px; }
.border-2 { border-width: 2px; }
.border-\[1\.5px\] { border-width: 1.5px; }
.border-y { border-top-width: 1px; border-bottom-width: 1px; }
.border-b { border-bottom-width: 1px; }
.border-l { border-left-width: 1px; }
.border-r { border-right-width: 1px; }
.border-t { border-top-width: 1px; }
.border-dashed { border-style: dashed; }
.border-\[--color-border\] { border-color: var(--color-border); }
.border-background\/10 { border-color: hsl(var(--background) / .1); }
.border-border { border-color: hsl(var(--border)); }
.border-border\/50 { border-color: hsl(var(--border) / .5); }
.border-destructive { border-color: hsl(var(--destructive)); }
.border-destructive\/50 { border-color: hsl(var(--destructive) / .5); }
.border-input { border-color: hsl(var(--input)); }
.border-primary { border-color: hsl(var(--primary)); }
.border-sidebar-border { border-color: hsl(var(--sidebar-border)); }
.border-transparent { border-color: transparent; }
.border-white\/80 { border-color: #fffc; }
.border-l-transparent { border-left-color: transparent; }
.border-t-transparent { border-top-color: transparent; }
.bg-\[--color-bg\] { background-color: var(--color-bg); }
.bg-accent { background-color: hsl(var(--accent)); }
.bg-background { background-color: hsl(var(--background)); }
.bg-background\/10 { background-color: hsl(var(--background) / .1); }
.bg-background\/95 { background-color: hsl(var(--background) / .95); }
.bg-black\/80 { background-color: #000c; }
.bg-black\/90 { background-color: #000000e6; }
.bg-border { background-color: hsl(var(--border)); }
.bg-card { background-color: hsl(var(--card)); }
.bg-destructive { background-color: hsl(var(--destructive)); }
.bg-foreground { background-color: hsl(var(--foreground)); }
.bg-muted { background-color: hsl(var(--muted)); }
.bg-muted\/50 { background-color: hsl(var(--muted) / .5); }
.bg-popover { background-color: hsl(var(--popover)); }
.bg-primary { background-color: hsl(var(--primary)); }
.bg-primary\/10 { background-color: hsl(var(--primary) / .1); }
.bg-primary\/90 { background-color: hsl(var(--primary) / .9); }
.bg-secondary { background-color: hsl(var(--secondary)); }
.bg-secondary\/30 { background-color: hsl(var(--secondary) / .3); }
.bg-sidebar { background-color: hsl(var(--sidebar-background)); }
.bg-sidebar-border { background-color: hsl(var(--sidebar-border)); }
.bg-transparent { background-color: transparent; }
.bg-white { --tw-bg-opacity: 1; background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1)); }
.bg-white\/10 { background-color: #ffffff1a; }
.bg-white\/20 { background-color: #fff3; }
.bg-white\/50 { background-color: #ffffff80; }
.bg-gradient-to-b { background-image: linear-gradient(to bottom, var(--tw-gradient-stops)); }
.bg-gradient-to-t { background-image: linear-gradient(to top, var(--tw-gradient-stops)); }
.from-black\/30 { --tw-gradient-from: rgb(0 0 0 / .3) var(--tw-gradient-from-position); --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }
.from-black\/40 { --tw-gradient-from: rgb(0 0 0 / .4) var(--tw-gradient-from-position); --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }
.from-black\/70 { --tw-gradient-from: rgb(0 0 0 / .7) var(--tw-gradient-from-position); --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }
.from-black\/80 { --tw-gradient-from: rgb(0 0 0 / .8) var(--tw-gradient-from-position); --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }
.via-black\/40 { --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), rgb(0 0 0 / .4) var(--tw-gradient-via-position), var(--tw-gradient-to); }
.via-black\/50 { --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), rgb(0 0 0 / .5) var(--tw-gradient-via-position), var(--tw-gradient-to); }
.via-transparent { --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), transparent var(--tw-gradient-via-position), var(--tw-gradient-to); }
.to-black\/70 { --tw-gradient-to: rgb(0 0 0 / .7) var(--tw-gradient-to-position); }
.to-transparent { --tw-gradient-to: transparent var(--tw-gradient-to-position); }
.bg-cover { background-size: cover; }
.bg-center { background-position: center; }
.fill-current { fill: currentColor; }
.object-contain { -o-object-fit: contain; object-fit: contain; }
.object-cover { -o-object-fit: cover; object-fit: cover; }
.p-0 { padding: 0; }
.p-1 { padding: 0.25rem; }
.p-2 { padding: 0.5rem; }
.p-3 { padding: 0.75rem; }
.p-4 { padding: 1rem; }
.p-5 { padding: 1.25rem; }
.p-6 { padding: 1.5rem; }
.p-8 { padding: 2rem; }
.p-\[1px\] { padding: 1px; }
.px-1 { padding-left: 0.25rem; padding-right: 0.25rem; }
.px-2 { padding-left: 0.5rem; padding-right: 0.5rem; }
.px-2\.5 { padding-left: 0.625rem; padding-right: 0.625rem; }
.px-3 { padding-left: 0.75rem; padding-right: 0.75rem; }
.px-4 { padding-left: 1rem; padding-right: 1rem; }
.px-5 { padding-left: 1.25rem; padding-right: 1.25rem; }
.px-6 { padding-left: 1.5rem; padding-right: 1.5rem; }
.px-8 { padding-left: 2rem; padding-right: 2rem; }
.py-0\.5 { padding-top: 0.125rem; padding-bottom: 0.125rem; }
.py-1 { padding-top: 0.25rem; padding-bottom: 0.25rem; }
.py-1\.5 { padding-top: 0.375rem; padding-bottom: 0.375rem; }
.py-16 { padding-top: 4rem; padding-bottom: 4rem; }
.py-2 { padding-top: 0.5rem; padding-bottom: 0.5rem; }
.py-20 { padding-top: 5rem; padding-bottom: 5rem; }
.py-3 { padding-top: 0.75rem; padding-bottom: 0.75rem; }
.py-4 { padding-top: 1rem; padding-bottom: 1rem; }
.py-6 { padding-top: 1.5rem; padding-bottom: 1.5rem; }
.pb-3 { padding-bottom: 0.75rem; }
.pb-4 { padding-bottom: 1rem; }
.pb-6 { padding-bottom: 1.5rem; }
.pl-2\.5 { padding-left: 0.625rem; }
.pl-4 { padding-left: 1rem; }
.pl-8 { padding-left: 2rem; }
.pr-2 { padding-right: 0.5rem; }
.pr-2\.5 { padding-right: 0.625rem; }
.pr-8 { padding-right: 2rem; }
.pt-0 { padding-top: 0; }
.pt-1 { padding-top: 0.25rem; }
.pt-2 { padding-top: 0.5rem; }
.pt-20 { padding-top: 5rem; }
.pt-3 { padding-top: 0.75rem; }
.pt-4 { padding-top: 1rem; }
.pt-8 { padding-top: 2rem; }
.text-left { text-align: left; }
.text-center { text-align: center; }
.align-middle { vertical-align: middle; }
.font-display { font-family: Playfair Display, Georgia, serif; }
.font-mono { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace; }
.text-2xl { font-size: 1.5rem; line-height: 2rem; }
.text-3xl { font-size: 1.875rem; line-height: 2.25rem; }
.text-4xl { font-size: 2.25rem; line-height: 2.5rem; }
.text-\[0\.8rem\] { font-size: .8rem; }
.text-base { font-size: 1rem; line-height: 1.5rem; }
.text-lg { font-size: 1.125rem; line-height: 1.75rem; }
.text-sm { font-size: .995rem; line-height: 1.25rem; }
.text-xl { font-size: 1.25rem; line-height: 1.75rem; }
.text-xs { font-size: .88rem; line-height: 1rem; }
.font-bold { font-weight: 700; }
.font-medium { font-weight: 500; }
.font-normal { font-weight: 400; }
.font-semibold { font-weight: 600; }
.tabular-nums { --tw-numeric-spacing: tabular-nums; font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction); }
.leading-none { line-height: 1; }
.leading-relaxed { line-height: 1.625; }
.leading-tight { line-height: 1.25; }
.tracking-tight { letter-spacing: -0.025em; }
.tracking-widest { letter-spacing: .1em; }
.text-accent-foreground { color: hsl(var(--accent-foreground)); }
.text-background { color: hsl(var(--background)); }
.text-background\/50 { color: hsl(var(--background) / .5); }
.text-background\/70 { color: hsl(var(--background) / .7); }
.text-card-foreground { color: hsl(var(--card-foreground)); }
.text-current { color: currentColor; }
.text-destructive { color: hsl(var(--destructive)); }
.text-destructive-foreground { color: hsl(var(--destructive-foreground)); }
.text-foreground { color: hsl(var(--foreground)); }
.text-foreground\/50 { color: hsl(var(--foreground) / .5); }
.text-foreground\/80 { color: hsl(var(--foreground) / .8); }
.text-muted-foreground { color: hsl(var(--muted-foreground)); }
.text-popover-foreground { color: hsl(var(--popover-foreground)); }
.text-primary { color: hsl(var(--primary)); }
.text-primary-foreground { color: hsl(var(--primary-foreground)); }
.text-secondary-foreground { color: hsl(var(--secondary-foreground)); }
.text-sidebar-foreground { color: hsl(var(--sidebar-foreground)); }
.text-sidebar-foreground\/70 { color: hsl(var(--sidebar-foreground) / .7); }
.text-white { --tw-text-opacity: 1; color: rgb(255 255 255 / var(--tw-text-opacity, 1)); }
.text-white\/70 { color: #ffffffb3; }
.text-white\/80 { color: #fffc; }
.text-white\/90 { color: #ffffffe6; }
.underline { text-decoration-line: underline; }
.underline-offset-4 { text-underline-offset: 4px; }
.opacity-0 { opacity: 0; }
.opacity-10 { opacity: .1; }
.opacity-50 { opacity: .5; }
.opacity-60 { opacity: .6; }
.opacity-70 { opacity: .7; }
.opacity-80 { opacity: .8; }
.opacity-90 { opacity: .9; }
.shadow-\[0_0_0_1px_hsl\(var\(--sidebar-border\)\)\] { --tw-shadow: 0 0 0 1px hsl(var(--sidebar-border)); --tw-shadow-colored: 0 0 0 1px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
.shadow-lg { --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1); --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
.shadow-md { --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1); --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
.shadow-medium { --tw-shadow: var(--shadow-medium); --tw-shadow-colored: var(--shadow-medium); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
.shadow-none { --tw-shadow: 0 0 #0000; --tw-shadow-colored: 0 0 #0000; box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
.shadow-sm { --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05); --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
.shadow-soft { --tw-shadow: var(--shadow-soft); --tw-shadow-colored: var(--shadow-soft); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
.shadow-strong { --tw-shadow: var(--shadow-strong); --tw-shadow-colored: var(--shadow-strong); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
.shadow-xl { --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1); --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
.outline-none { outline: 2px solid transparent; outline-offset: 2px; }
.outline { outline-style: solid; }
.ring-0 { --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); }
.ring-2 { --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); }
.ring-ring { --tw-ring-color: hsl(var(--ring)); }
.ring-sidebar-ring { --tw-ring-color: hsl(var(--sidebar-ring)); }
.ring-offset-background { --tw-ring-offset-color: hsl(var(--background)); }
.brightness-0 { --tw-brightness: brightness(0); filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow); }
.invert { --tw-invert: invert(100%); filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow); }
.filter { filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow); }
.backdrop-blur-md { --tw-backdrop-blur: blur(12px); -webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia); backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia); }
.backdrop-blur-sm { --tw-backdrop-blur: blur(4px); -webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia); backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia); }
.transition { transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter; transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter; transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter; transition-timing-function: cubic-bezier(.4,0,.2,1); transition-duration: .15s; }
.transition-\[left\,right\,width\] { transition-property: left, right, width; transition-timing-function: cubic-bezier(.4,0,.2,1); transition-duration: .15s; }
.transition-\[margin\,opa\] { transition-property: margin, opa; transition-timing-function: cubic-bezier(.4,0,.2,1); transition-duration: .15s; }
.transition-\[width\,height\,padding\] { transition-property: width, height, padding; transition-timing-function: cubic-bezier(.4,0,.2,1); transition-duration: .15s; }
.transition-\[width\] { transition-property: width; transition-timing-function: cubic-bezier(.4,0,.2,1); transition-duration: .15s; }
.transition-all { transition-property: all; transition-timing-function: cubic-bezier(.4,0,.2,1); transition-duration: .15s; }
.transition-colors { transition-property: color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function: cubic-bezier(.4,0,.2,1); transition-duration: .15s; }
.transition-opacity { transition-property: opacity; transition-timing-function: cubic-bezier(.4,0,.2,1); transition-duration: .15s; }
.transition-shadow { transition-property: box-shadow; transition-timing-function: cubic-bezier(.4,0,.2,1); transition-duration: .15s; }
.transition-transform { transition-property: transform; transition-timing-function: cubic-bezier(.4,0,.2,1); transition-duration: .15s; }
.duration-1000 { transition-duration: 1s; }
.duration-200 { transition-duration: .2s; }
.duration-300 { transition-duration: .3s; }
.duration-500 { transition-duration: .5s; }
.duration-700 { transition-duration: .7s; }
.ease-in-out { transition-timing-function: cubic-bezier(.4,0,.2,1); }
.ease-linear { transition-timing-function: linear; }
@keyframes enter { 0% { opacity: var(--tw-enter-opacity, 1); transform: translate3d(var(--tw-enter-translate-x, 0), var(--tw-enter-translate-y, 0), 0) scale3d(var(--tw-enter-scale, 1), var(--tw-enter-scale, 1), var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0)); } }
@keyframes exit { to { opacity: var(--tw-exit-opacity, 1); transform: translate3d(var(--tw-exit-translate-x, 0), var(--tw-exit-translate-y, 0), 0) scale3d(var(--tw-exit-scale, 1), var(--tw-exit-scale, 1), var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0)); } }
.animate-in { animation-name: enter; animation-duration: .15s; --tw-enter-opacity: initial; --tw-enter-scale: initial; --tw-enter-rotate: initial; --tw-enter-translate-x: initial; --tw-enter-translate-y: initial; }
.fade-in-0 { --tw-enter-opacity: 0; }
.fade-in-80 { --tw-enter-opacity: .8; }
.zoom-in-95 { --tw-enter-scale: .95; }
.duration-1000 { animation-duration: 1s; }
.duration-200 { animation-duration: .2s; }
.duration-300 { animation-duration: .3s; }
.duration-500 { animation-duration: .5s; }
.duration-700 { animation-duration: .7s; }
.ease-in-out { animation-timing-function: cubic-bezier(.4,0,.2,1); }
.ease-linear { animation-timing-function: linear; }

/* Пользовательские анимации и утилиты из style.css */
.bg-wood-pattern {
  background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23c4a574' fill-opacity='0.08'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}
@keyframes fadeUp {
  0% { opacity: 0; transform: translateY(30px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes fadeIn {
  0% { opacity: 0; }
  to { opacity: 1; }
}
@keyframes scaleIn {
  0% { opacity: 0; transform: scale(.95); }
  to { opacity: 1; transform: scale(1); }
}
.file\:border-0::file-selector-button { border-width: 0px; }
.file\:bg-transparent::file-selector-button { background-color: transparent; }
.file\:text-sm::file-selector-button { font-size: .875rem; line-height: 1.25rem; }
.file\:font-medium::file-selector-button { font-weight: 500; }
.file\:text-foreground::file-selector-button { color: hsl(var(--foreground)); }
.placeholder\:text-muted-foreground::-moz-placeholder { color: hsl(var(--muted-foreground)); }
.placeholder\:text-muted-foreground::placeholder { color: hsl(var(--muted-foreground)); }
.after\:absolute:after { content: var(--tw-content); position: absolute; }
.after\:-inset-2:after { content: var(--tw-content); top: -0.5rem; right: -0.5rem; bottom: -0.5rem; left: -0.5rem; }
.after\:inset-y-0:after { content: var(--tw-content); top: 0; bottom: 0; }
.after\:left-1\/2:after { content: var(--tw-content); left: 50%; }
.after\:w-1:after { content: var(--tw-content); width: 0.25rem; }
.after\:w-\[2px\]:after { content: var(--tw-content); width: 2px; }
.after\:-translate-x-1\/2:after { content: var(--tw-content); --tw-translate-x: -50%; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.first\:rounded-l-md:first-child { border-top-left-radius: calc(var(--radius) - 2px); border-bottom-left-radius: calc(var(--radius) - 2px); }
.first\:border-l:first-child { border-left-width: 1px; }
.last\:rounded-r-md:last-child { border-top-right-radius: calc(var(--radius) - 2px); border-bottom-right-radius: calc(var(--radius) - 2px); }
.focus-within\:relative:focus-within { position: relative; }
.focus-within\:z-20:focus-within { z-index: 20; }
.hover\:bg-accent:hover { background-color: hsl(var(--accent)); }
.hover\:bg-blue-600:hover { --tw-bg-opacity: 1; background-color: rgb(37 99 235 / var(--tw-bg-opacity, 1)); }
.hover\:bg-destructive\/80:hover { background-color: hsl(var(--destructive) / .8); }
.hover\:bg-destructive\/90:hover { background-color: hsl(var(--destructive) / .9); }
.hover\:bg-muted:hover { background-color: hsl(var(--muted)); }
.hover\:bg-muted\/50:hover { background-color: hsl(var(--muted) / .5); }
.hover\:bg-primary:hover { background-color: hsl(var(--primary)); }
.hover\:bg-primary\/80:hover { background-color: hsl(var(--primary) / .8); }
.hover\:bg-primary\/90:hover { background-color: hsl(var(--primary) / .9); }
.hover\:bg-red-600:hover { --tw-bg-opacity: 1; background-color: rgb(220 38 38 / var(--tw-bg-opacity, 1)); }
.hover\:bg-secondary:hover { background-color: hsl(var(--secondary)); }
.hover\:bg-secondary\/80:hover { background-color: hsl(var(--secondary) / .8); }
.hover\:bg-sidebar-accent:hover { background-color: hsl(var(--sidebar-accent)); }
.hover\:bg-sky-500:hover { --tw-bg-opacity: 1; background-color: rgb(14 165 233 / var(--tw-bg-opacity, 1)); }
.hover\:bg-white:hover { --tw-bg-opacity: 1; background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1)); }
.hover\:bg-white\/20:hover { background-color: #fff3; }
.hover\:bg-white\/80:hover { background-color: #fffc; }
.hover\:bg-white\/90:hover { background-color: #ffffffe6; }
.hover\:bg-gradient-to-r:hover { background-image: linear-gradient(to right, var(--tw-gradient-stops)); }
.hover\:from-purple-500:hover { --tw-gradient-from: #a855f7 var(--tw-gradient-from-position); --tw-gradient-to: rgb(168 85 247 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }
.hover\:to-pink-500:hover { --tw-gradient-to: #ec4899 var(--tw-gradient-to-position); }
.hover\:text-accent-foreground:hover { color: hsl(var(--accent-foreground)); }
.hover\:text-foreground:hover { color: hsl(var(--foreground)); }
.hover\:text-forest-dark:hover { color: hsl(var(--forest-dark)); }
.hover\:text-muted-foreground:hover { color: hsl(var(--muted-foreground)); }
.hover\:text-primary:hover { color: hsl(var(--primary)); }
.hover\:text-primary-foreground:hover { color: hsl(var(--primary-foreground)); }
.hover\:text-primary\/90:hover { color: hsl(var(--primary) / .9); }
.hover\:text-sidebar-accent-foreground:hover { color: hsl(var(--sidebar-accent-foreground)); }
.hover\:text-white:hover { --tw-text-opacity: 1; color: rgb(255 255 255 / var(--tw-text-opacity, 1)); }
.hover\:underline:hover { text-decoration-line: underline; }
.hover\:no-underline:hover { text-decoration-line: none; }
.hover\:opacity-100:hover { opacity: 1; }
.hover\:shadow-\[0_0_0_1px_hsl\(var\(--sidebar-accent\)\)\]:hover { --tw-shadow: 0 0 0 1px hsl(var(--sidebar-accent)); --tw-shadow-colored: 0 0 0 1px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
.hover\:shadow-md:hover { --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1); --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
.hover\:shadow-medium:hover { --tw-shadow: var(--shadow-medium); --tw-shadow-colored: var(--shadow-medium); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
.hover\:shadow-xl:hover { --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1); --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
.hover\:after\:bg-sidebar-border:hover:after { content: var(--tw-content); background-color: hsl(var(--sidebar-border)); }
.focus\:bg-accent:focus { background-color: hsl(var(--accent)); }
.focus\:bg-primary:focus { background-color: hsl(var(--primary)); }
.focus\:text-accent-foreground:focus { color: hsl(var(--accent-foreground)); }
.focus\:text-primary-foreground:focus { color: hsl(var(--primary-foreground)); }
.focus\:opacity-100:focus { opacity: 1; }
.focus\:outline-none:focus { outline: 2px solid transparent; outline-offset: 2px; }
.focus\:ring-2:focus { --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); }
.focus\:ring-ring:focus { --tw-ring-color: hsl(var(--ring)); }
.focus\:ring-offset-2:focus { --tw-ring-offset-width: 2px; }
.focus-visible\:outline-none:focus-visible { outline: 2px solid transparent; outline-offset: 2px; }
.focus-visible\:ring-1:focus-visible { --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); }
.focus-visible\:ring-2:focus-visible { --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); }
.focus-visible\:ring-ring:focus-visible { --tw-ring-color: hsl(var(--ring)); }
.focus-visible\:ring-sidebar-ring:focus-visible { --tw-ring-color: hsl(var(--sidebar-ring)); }
.focus-visible\:ring-offset-1:focus-visible { --tw-ring-offset-width: 1px; }
.focus-visible\:ring-offset-2:focus-visible { --tw-ring-offset-width: 2px; }
.focus-visible\:ring-offset-background:focus-visible { --tw-ring-offset-color: hsl(var(--background)); }
.active\:bg-sidebar-accent:active { background-color: hsl(var(--sidebar-accent)); }
.active\:text-sidebar-accent-foreground:active { color: hsl(var(--sidebar-accent-foreground)); }
.disabled\:pointer-events-none:disabled { pointer-events: none; }
.disabled\:cursor-not-allowed:disabled { cursor: not-allowed; }
.disabled\:opacity-50:disabled { opacity: .5; }

/* Групповые селекторы из style.css */
.group\/menu-item:focus-within .group-focus-within\/menu-item\:opacity-100 { opacity: 1; }
.group:hover .group-hover\:translate-y-0 { --tw-translate-y: 0px; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.group:hover .group-hover\:scale-105 { --tw-scale-x: 1.05; --tw-scale-y: 1.05; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.group:hover .group-hover\:scale-110 { --tw-scale-x: 1.1; --tw-scale-y: 1.1; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.group:hover .group-hover\:gap-3 { gap: 0.75rem; }
.group:hover .group-hover\:bg-primary { background-color: hsl(var(--primary)); }
.group:hover .group-hover\:text-primary-foreground { color: hsl(var(--primary-foreground)); }
.group:hover .group-hover\:text-white { --tw-text-opacity: 1; color: rgb(255 255 255 / var(--tw-text-opacity, 1)); }
.group\/menu-item:hover .group-hover\/menu-item\:opacity-100, .group:hover .group-hover\:opacity-100 { opacity: 1; }
.group.destructive .group-\[\.destructive\]\:border-muted\/40 { border-color: hsl(var(--muted) / .4); }
.group.toaster .group-\[\.toaster\]\:border-border { border-color: hsl(var(--border)); }
.group.toast .group-\[\.toast\]\:bg-muted { background-color: hsl(var(--muted)); }
.group.toast .group-\[\.toast\]\:bg-primary { background-color: hsl(var(--primary)); }
.group.toaster .group-\[\.toaster\]\:bg-background { background-color: hsl(var(--background)); }
.group.destructive .group-\[\.destructive\]\:text-red-300 { --tw-text-opacity: 1; color: rgb(252 165 165 / var(--tw-text-opacity, 1)); }
.group.toast .group-\[\.toast\]\:text-muted-foreground { color: hsl(var(--muted-foreground)); }
.group.toast .group-\[\.toast\]\:text-primary-foreground { color: hsl(var(--primary-foreground)); }
.group.toaster .group-\[\.toaster\]\:text-foreground { color: hsl(var(--foreground)); }
.group.toaster .group-\[\.toaster\]\:shadow-lg { --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1); --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
.group.destructive .group-\[\.destructive\]\:hover\:border-destructive\/30:hover { border-color: hsl(var(--destructive) / .3); }
.group.destructive .group-\[\.destructive\]\:hover\:bg-destructive:hover { background-color: hsl(var(--destructive)); }
.group.destructive .group-\[\.destructive\]\:hover\:text-destructive-foreground:hover { color: hsl(var(--destructive-foreground)); }
.group.destructive .group-\[\.destructive\]\:hover\:text-red-50:hover { --tw-text-opacity: 1; color: rgb(254 242 242 / var(--tw-text-opacity, 1)); }
.group.destructive .group-\[\.destructive\]\:focus\:ring-destructive:focus { --tw-ring-color: hsl(var(--destructive)); }
.group.destructive .group-\[\.destructive\]\:focus\:ring-red-400:focus { --tw-ring-opacity: 1; --tw-ring-color: rgb(248 113 113 / var(--tw-ring-opacity, 1)); }
.group.destructive .group-\[\.destructive\]\:focus\:ring-offset-red-600:focus { --tw-ring-offset-color: #dc2626; }

/* Дополнительные групповые и псевдо-селекторы */
.peer\/menu-button:hover~.peer-hover\/menu-button\:text-sidebar-accent-foreground { color: hsl(var(--sidebar-accent-foreground)); }
.peer:disabled~.peer-disabled\:cursor-not-allowed { cursor: not-allowed; }
.peer:disabled~.peer-disabled\:opacity-70 { opacity: .7; }
.has-\[\[data-variant\=inset\]\]\:bg-sidebar:has([data-variant=inset]) { background-color: hsl(var(--sidebar-background)); }
.has-\[\:disabled\]\:opacity-50:has(:disabled) { opacity: .5; }
.group\/menu-item:has([data-sidebar=menu-action]) .group-has-\[\[data-sidebar\=menu-action\]\]\/menu-item\:pr-8 { padding-right: 2rem; }
.aria-disabled\:pointer-events-none[aria-disabled=true] { pointer-events: none; }
.aria-disabled\:opacity-50[aria-disabled=true] { opacity: .5; }
.aria-selected\:bg-accent[aria-selected=true] { background-color: hsl(var(--accent)); }
.aria-selected\:bg-accent\/50[aria-selected=true] { background-color: hsl(var(--accent) / .5); }
.aria-selected\:text-accent-foreground[aria-selected=true] { color: hsl(var(--accent-foreground)); }
.aria-selected\:text-muted-foreground[aria-selected=true] { color: hsl(var(--muted-foreground)); }
.aria-selected\:opacity-100[aria-selected=true] { opacity: 1; }
.aria-selected\:opacity-30[aria-selected=true] { opacity: .3; }
.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true], .data-\[disabled\]\:pointer-events-none[data-disabled] { pointer-events: none; }
.data-\[panel-group-direction\=vertical\]\:h-px[data-panel-group-direction=vertical] { height: 1px; }
.data-\[panel-group-direction\=vertical\]\:w-full[data-panel-group-direction=vertical] { width: 100%; }
.data-\[side\=bottom\]\:translate-y-1[data-side=bottom] { --tw-translate-y: .25rem; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.data-\[side\=left\]\:-translate-x-1[data-side=left] { --tw-translate-x: -.25rem; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.data-\[side\=right\]\:translate-x-1[data-side=right] { --tw-translate-x: .25rem; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.data-\[side\=top\]\:-translate-y-1[data-side=top] { --tw-translate-y: -.25rem; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.data-\[state\=checked\]\:translate-x-5[data-state=checked] { --tw-translate-x: 1.25rem; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked], .data-\[swipe\=cancel\]\:translate-x-0[data-swipe=cancel] { --tw-translate-x: 0px; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end] { --tw-translate-x: var(--radix-toast-swipe-end-x); transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move] { --tw-translate-x: var(--radix-toast-swipe-move-x); transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
@keyframes accordion-up { 0% { height: var(--radix-accordion-content-height); } to { height: 0; } }
.data-\[state\=closed\]\:animate-accordion-up[data-state=closed] { animation: accordion-up .2s ease-out; }
@keyframes accordion-down { 0% { height: 0; } to { height: var(--radix-accordion-content-height); } }
.data-\[state\=open\]\:animate-accordion-down[data-state=open] { animation: accordion-down .2s ease-out; }
.data-\[panel-group-direction\=vertical\]\:flex-col[data-panel-group-direction=vertical] { flex-direction: column; }
.data-\[active\=true\]\:bg-sidebar-accent[data-active=true] { background-color: hsl(var(--sidebar-accent)); }
.data-\[active\]\:bg-accent\/50[data-active] { background-color: hsl(var(--accent) / .5); }
.data-\[selected\=\'true\'\]\:bg-accent[data-selected=true] { background-color: hsl(var(--accent)); }
.data-\[state\=active\]\:bg-background[data-state=active] { background-color: hsl(var(--background)); }
.data-\[state\=checked\]\:bg-primary[data-state=checked] { background-color: hsl(var(--primary)); }
.data-\[state\=on\]\:bg-accent[data-state=on], .data-\[state\=open\]\:bg-accent[data-state=open] { background-color: hsl(var(--accent)); }
.data-\[state\=open\]\:bg-accent\/50[data-state=open] { background-color: hsl(var(--accent) / .5); }
.data-\[state\=open\]\:bg-secondary[data-state=open] { background-color: hsl(var(--secondary)); }
.data-\[state\=selected\]\:bg-muted[data-state=selected] { background-color: hsl(var(--muted)); }
.data-\[state\=unchecked\]\:bg-input[data-state=unchecked] { background-color: hsl(var(--input)); }
.data-\[active\=true\]\:font-medium[data-active=true] { font-weight: 500; }
.data-\[active\=true\]\:text-sidebar-accent-foreground[data-active=true] { color: hsl(var(--sidebar-accent-foreground)); }
.data-\[selected\=true\]\:text-accent-foreground[data-selected=true] { color: hsl(var(--accent-foreground)); }
.data-\[state\=active\]\:text-foreground[data-state=active] { color: hsl(var(--foreground)); }
.data-\[state\=checked\]\:text-primary-foreground[data-state=checked] { color: hsl(var(--primary-foreground)); }
.data-\[state\=on\]\:text-accent-foreground[data-state=on], .data-\[state\=open\]\:text-accent-foreground[data-state=open] { color: hsl(var(--accent-foreground)); }
.data-\[state\=open\]\:text-muted-foreground[data-state=open] { color: hsl(var(--muted-foreground)); }
.data-\[disabled\=true\]\:opacity-50[data-disabled=true], .data-\[disabled\]\:opacity-50[data-disabled] { opacity: .5; }
.data-\[state\=open\]\:opacity-100[data-state=open] { opacity: 1; }
.data-\[state\=active\]\:shadow-sm[data-state=active] { --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05); --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
.data-\[swipe\=move\]\:transition-none[data-swipe=move] { transition-property: none; }
.data-\[state\=closed\]\:duration-300[data-state=closed] { transition-duration: .3s; }
.data-\[state\=open\]\:duration-500[data-state=open] { transition-duration: .5s; }
.data-\[motion\^\=from-\]\:animate-in[data-motion^=from-], .data-\[state\=open\]\:animate-in[data-state=open], .data-\[state\=visible\]\:animate-in[data-state=visible] { animation-name: enter; animation-duration: .15s; --tw-enter-opacity: initial; --tw-enter-scale: initial; --tw-enter-rotate: initial; --tw-enter-translate-x: initial; --tw-enter-translate-y: initial; }
.data-\[motion\^\=to-\]\:animate-out[data-motion^=to-], .data-\[state\=closed\]\:animate-out[data-state=closed], .data-\[state\=hidden\]\:animate-out[data-state=hidden], .data-\[swipe\=end\]\:animate-out[data-swipe=end] { animation-name: exit; animation-duration: .15s; --tw-exit-opacity: initial; --tw-exit-scale: initial; --tw-exit-rotate: initial; --tw-exit-translate-x: initial; --tw-exit-translate-y: initial; }
.data-\[motion\^\=from-\]\:fade-in[data-motion^=from-] { --tw-enter-opacity: 0; }
.data-\[motion\^\=to-\]\:fade-out[data-motion^=to-], .data-\[state\=closed\]\:fade-out-0[data-state=closed] { --tw-exit-opacity: 0; }
.data-\[state\=closed\]\:fade-out-80[data-state=closed] { --tw-exit-opacity: .8; }
.data-\[state\=hidden\]\:fade-out[data-state=hidden] { --tw-exit-opacity: 0; }
.data-\[state\=open\]\:fade-in-0[data-state=open], .data-\[state\=visible\]\:fade-in[data-state=visible] { --tw-enter-opacity: 0; }
.data-\[state\=closed\]\:zoom-out-95[data-state=closed] { --tw-exit-scale: .95; }
.data-\[state\=open\]\:zoom-in-90[data-state=open] { --tw-enter-scale: .9; }
.data-\[state\=open\]\:zoom-in-95[data-state=open] { --tw-enter-scale: .95; }
.data-\[motion\=from-end\]\:slide-in-from-right-52[data-motion=from-end] { --tw-enter-translate-x: 13rem; }
.data-\[motion\=from-start\]\:slide-in-from-left-52[data-motion=from-start] { --tw-enter-translate-x: -13rem; }
.data-\[motion\=to-end\]\:slide-out-to-right-52[data-motion=to-end] { --tw-exit-translate-x: 13rem; }
.data-\[motion\=to-start\]\:slide-out-to-left-52[data-motion=to-start] { --tw-exit-translate-x: -13rem; }
.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom] { --tw-enter-translate-y: -.5rem; }
.data-\[side\=left\]\:slide-in-from-right-2[data-side=left] { --tw-enter-translate-x: .5rem; }
.data-\[side\=right\]\:slide-in-from-left-2[data-side=right] { --tw-enter-translate-x: -.5rem; }
.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top] { --tw-enter-translate-y: .5rem; }
.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed] { --tw-exit-translate-y: 100%; }
.data-\[state\=closed\]\:slide-out-to-left[data-state=closed] { --tw-exit-translate-x: -100%; }
.data-\[state\=closed\]\:slide-out-to-left-1\/2[data-state=closed] { --tw-exit-translate-x: -50%; }
.data-\[state\=closed\]\:slide-out-to-right[data-state=closed], .data-\[state\=closed\]\:slide-out-to-right-full[data-state=closed] { --tw-exit-translate-x: 100%; }
.data-\[state\=closed\]\:slide-out-to-top[data-state=closed] { --tw-exit-translate-y: -100%; }
.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state=closed] { --tw-exit-translate-y: -48%; }
.data-\[state\=open\]\:slide-in-from-bottom[data-state=open] { --tw-enter-translate-y: 100%; }
.data-\[state\=open\]\:slide-in-from-left[data-state=open] { --tw-enter-translate-x: -100%; }
.data-\[state\=open\]\:slide-in-from-left-1\/2[data-state=open] { --tw-enter-translate-x: -50%; }
.data-\[state\=open\]\:slide-in-from-right[data-state=open] { --tw-enter-translate-x: 100%; }
.data-\[state\=open\]\:slide-in-from-top[data-state=open] { --tw-enter-translate-y: -100%; }
.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state=open] { --tw-enter-translate-y: -48%; }
.data-\[state\=open\]\:slide-in-from-top-full[data-state=open] { --tw-enter-translate-y: -100%; }
.data-\[state\=closed\]\:duration-300[data-state=closed] { animation-duration: .3s; }
.data-\[state\=open\]\:duration-500[data-state=open] { animation-duration: .5s; }
.data-\[panel-group-direction\=vertical\]\:after\:left-0[data-panel-group-direction=vertical]:after { content: var(--tw-content); left: 0; }
.data-\[panel-group-direction\=vertical\]\:after\:h-1[data-panel-group-direction=vertical]:after { content: var(--tw-content); height: .25rem; }
.data-\[panel-group-direction\=vertical\]\:after\:w-full[data-panel-group-direction=vertical]:after { content: var(--tw-content); width: 100%; }
.data-\[panel-group-direction\=vertical\]\:after\:-translate-y-1\/2[data-panel-group-direction=vertical]:after { content: var(--tw-content); --tw-translate-y: -50%; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.data-\[panel-group-direction\=vertical\]\:after\:translate-x-0[data-panel-group-direction=vertical]:after { content: var(--tw-content); --tw-translate-x: 0px; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.data-\[state\=open\]\:hover\:bg-sidebar-accent:hover[data-state=open] { background-color: hsl(var(--sidebar-accent)); }
.data-\[state\=open\]\:hover\:text-sidebar-accent-foreground:hover[data-state=open] { color: hsl(var(--sidebar-accent-foreground)); }

/* Групповые селекторы для sidebar */
.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\] { left: calc(var(--sidebar-width) * -1); }
.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\] { right: calc(var(--sidebar-width) * -1); }
.group[data-side=left] .group-data-\[side\=left\]\:-right-4 { right: -1rem; }
.group[data-side=right] .group-data-\[side\=right\]\:left-0 { left: 0; }
.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:-mt-8 { margin-top: -2rem; }
.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:hidden { display: none; }
.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!size-8 { width: 2rem !important; height: 2rem !important; }
.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[--sidebar-width-icon\] { width: var(--sidebar-width-icon); }
.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)\)\] { width: calc(var(--sidebar-width-icon) + 1rem); }
.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)_\+2px\)\] { width: calc(var(--sidebar-width-icon) + 1rem + 2px); }
.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:w-0 { width: 0px; }
.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:translate-x-0 { --tw-translate-x: 0px; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.group[data-side=right] .group-data-\[side\=right\]\:rotate-180, .group[data-state=open] .group-data-\[state\=open\]\:rotate-180 { --tw-rotate: 180deg; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:overflow-hidden { overflow: hidden; }
.group[data-variant=floating] .group-data-\[variant\=floating\]\:rounded-lg { border-radius: var(--radius); }
.group[data-variant=floating] .group-data-\[variant\=floating\]\:border { border-width: 1px; }
.group[data-side=left] .group-data-\[side\=left\]\:border-r { border-right-width: 1px; }
.group[data-side=right] .group-data-\[side\=right\]\:border-l { border-left-width: 1px; }
.group[data-variant=floating] .group-data-\[variant\=floating\]\:border-sidebar-border { border-color: hsl(var(--sidebar-border)); }
.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!p-0 { padding: 0 !important; }
.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!p-2 { padding: 0.5rem !important; }
.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:opacity-0 { opacity: 0; }
.group[data-variant=floating] .group-data-\[variant\=floating\]\:shadow { --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1); --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:after\:left-full:after { content: var(--tw-content); left: 100%; }
.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:hover\:bg-sidebar:hover { background-color: hsl(var(--sidebar-background)); }

/* Псевдо-селекторы для peer */
.peer\/menu-button[data-size=default]~.peer-data-\[size\=default\]\/menu-button\:top-1\.5 { top: 0.375rem; }
.peer\/menu-button[data-size=lg]~.peer-data-\[size\=lg\]\/menu-button\:top-2\.5 { top: 0.625rem; }
.peer\/menu-button[data-size=sm]~.peer-data-\[size\=sm\]\/menu-button\:top-1 { top: 0.25rem; }
.peer[data-variant=inset]~.peer-data-\[variant\=inset\]\:min-h-\[calc\(100svh-theme\(spacing\.4\)\)\] { min-height: calc(100svh - 1rem); }
.peer\/menu-button[data-active=true]~.peer-data-\[active\=true\]\/menu-button\:text-sidebar-accent-foreground { color: hsl(var(--sidebar-accent-foreground)); }

/* Медиа-запросы из style.css */
.dark\:border-destructive:is(.dark *) { border-color: hsl(var(--destructive)); }
@media (min-width: 640px) {
  .sm\:bottom-0 { bottom: 0; }
  .sm\:right-0 { right: 0; }
  .sm\:top-auto { top: auto; }
  .sm\:mt-0 { margin-top: 0; }
  .sm\:flex { display: flex; }
  .sm\:w-auto { width: auto; }
  .sm\:max-w-sm { max-width: 24rem; }
  .sm\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sm\:flex-row { flex-direction: row; }
  .sm\:flex-col { flex-direction: column; }
  .sm\:justify-end { justify-content: flex-end; }
  .sm\:gap-2\.5 { gap: 0.625rem; }
  .sm\:space-x-2 > :not([hidden]) ~ :not([hidden]) { --tw-space-x-reverse: 0; margin-right: calc(0.5rem * var(--tw-space-x-reverse)); margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse))); }
  .sm\:space-x-4 > :not([hidden]) ~ :not([hidden]) { --tw-space-x-reverse: 0; margin-right: calc(1rem * var(--tw-space-x-reverse)); margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse))); }
  .sm\:space-y-0 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(0px * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0px * var(--tw-space-y-reverse)); }
  .sm\:rounded-lg { border-radius: var(--radius); }
  .sm\:text-left { text-align: left; }
  .data-\[state\=open\]\:sm\:slide-in-from-bottom-full[data-state=open] { --tw-enter-translate-y: 100%; }
}
@media (min-width: 768px) {
  .md\:absolute { position: absolute; }
  .md\:block { display: block; }
  .md\:flex { display: flex; }
  .md\:w-\[var\(--radix-navigation-menu-viewport-width\)\] { width: var(--radix-navigation-menu-viewport-width); }
  .md\:w-auto { width: auto; }
  .md\:max-w-\[420px\] { max-width: 420px; }
  .md\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .md\:flex-row { flex-direction: row; }
  .md\:text-4xl { font-size: 2.25rem; line-height: 2.5rem; }
  .md\:text-5xl { font-size: 3rem; line-height: 1; }
  .md\:text-sm { font-size: .875rem; line-height: 1.25rem; }
  .md\:text-xl { font-size: 1.25rem; line-height: 1.75rem; }
  .md\:opacity-0 { opacity: 0; }
  .after\:md\:hidden:after { content: var(--tw-content); display: none; }
  .peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:m-2 { margin: 0.5rem; }
  .peer[data-state=collapsed][data-variant=inset]~.md\:peer-data-\[state\=collapsed\]\:peer-data-\[variant\=inset\]\:ml-2 { margin-left: 0.5rem; }
  .peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:ml-0 { margin-left: 0; }
  .peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:rounded-xl { border-radius: 0.75rem; }
  .peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:shadow { --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1); --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
}
@media (min-width: 1024px) {
  .lg\:col-span-2 { grid-column: span 2 / span 2; }
  .lg\:block { display: block; }
  .lg\:flex { display: flex; }
  .lg\:hidden { display: none; }
  .lg\:h-\[500px\] { height: 500px; }
  .lg\:h-full { height: 100%; }
  .lg\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .lg\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .lg\:grid-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .lg\:gap-16 { gap: 4rem; }
  .lg\:gap-8 { gap: 2rem; }
  .lg\:py-28 { padding-top: 7rem; padding-bottom: 7rem; }
  .lg\:text-5xl { font-size: 3rem; line-height: 1; }
  .lg\:text-6xl { font-size: 3.75rem; line-height: 1; }
}
.\[\&\:has\(\[aria-selected\]\)\]\:bg-accent:has([aria-selected]) { background-color: hsl(var(--accent)); }
.first\:\[\&\:has\(\[aria-selected\]\)\]\:rounded-l-md:has([aria-selected]):first-child { border-top-left-radius: calc(var(--radius) - 2px); border-bottom-left-radius: calc(var(--radius) - 2px); }
.last\:\[\&\:has\(\[aria-selected\]\)\]\:rounded-r-md:has([aria-selected]):last-child { border-top-right-radius: calc(var(--radius) - 2px); border-bottom-right-radius: calc(var(--radius) - 2px); }
.\[\&\:has\(\[aria-selected\]\.day-outside\)\]\:bg-accent\/50:has([aria-selected].day-outside) { background-color: hsl(var(--accent) / .5); }
.\[\&\:has\(\[aria-selected\]\.day-range-end\)\]\:rounded-r-md:has([aria-selected].day-range-end) { border-top-right-radius: calc(var(--radius) - 2px); border-bottom-right-radius: calc(var(--radius) - 2px); }
.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]) { padding-right: 0; }
.\[\&\>button\]\:hidden>button { display: none; }
.\[\&\>span\:last-child\]\:truncate>span:last-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.\[\&\>span\]\:line-clamp-1>span { overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; }
.\[\&\>svg\+div\]\:translate-y-\[-3px\]>svg+div { --tw-translate-y: -3px; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.\[\&\>svg\]\:absolute>svg { position: absolute; }
.\[\&\>svg\]\:left-4>svg { left: 1rem; }
.\[\&\>svg\]\:top-4>svg { top: 1rem; }
.\[\&\>svg\]\:size-3\.5>svg { width: 0.875rem; height: 0.875rem; }
.\[\&\>svg\]\:size-4>svg { width: 1rem; height: 1rem; }
.\[\&\>svg\]\:h-2\.5>svg { height: 0.625rem; }
.\[\&\>svg\]\:h-3>svg { height: 0.75rem; }
.\[\&\>svg\]\:w-2\.5>svg { width: 0.625rem; }
.\[\&\>svg\]\:w-3>svg { width: 0.75rem; }
.\[\&\>svg\]\:shrink-0>svg { flex-shrink: 0; }
.\[\&\>svg\]\:text-destructive>svg { color: hsl(var(--destructive)); }
.\[\&\>svg\]\:text-foreground>svg { color: hsl(var(--foreground)); }
.\[\&\>svg\]\:text-muted-foreground>svg { color: hsl(var(--muted-foreground)); }
.\[\&\>svg\]\:text-sidebar-accent-foreground>svg { color: hsl(var(--sidebar-accent-foreground)); }
.\[\&\>svg\~\*\]\:pl-7>svg~* { padding-left: 1.75rem; }
.\[\&\>tr\]\:last\:border-b-0:last-child>tr { border-bottom-width: 0px; }
.\[\&\[data-panel-group-direction\=vertical\]\>div\]\:rotate-90[data-panel-group-direction=vertical]>div { --tw-rotate: 90deg; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg { --tw-rotate: 180deg; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground .recharts-cartesian-axis-tick text { fill: hsl(var(--muted-foreground)); }
.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke="#ccc"] { stroke: hsl(var(--border) / .5); }
.\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border .recharts-curve.recharts-tooltip-cursor { stroke: hsl(var(--border)); }
.\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke="#fff"] { stroke: transparent; }
.\[\&_\.recharts-layer\]\:outline-none .recharts-layer { outline: 2px solid transparent; outline-offset: 2px; }
.\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-polar-grid [stroke="#ccc"] { stroke: hsl(var(--border)); }
.\[\&_\.recharts-radial-bar-background-sector\]\:fill-muted .recharts-radial-bar-background-sector, .\[\&_\.recharts-rectangle\.recharts-tooltip-cursor\]\:fill-muted .recharts-rectangle.recharts-tooltip-cursor { fill: hsl(var(--muted)); }
.\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-reference-line [stroke="#ccc"] { stroke: hsl(var(--border)); }
.\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke="#fff"] { stroke: transparent; }
.\[\&_\.recharts-sector\]\:outline-none .recharts-sector, .\[\&_\.recharts-surface\]\:outline-none .recharts-surface { outline: 2px solid transparent; outline-offset: 2px; }
.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading] { padding-left: 0.5rem; padding-right: 0.5rem; }
.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading] { padding-top: 0.375rem; padding-bottom: 0.375rem; }
.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading] { font-size: .75rem; line-height: 1rem; }
.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading] { font-weight: 500; }
.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading] { color: hsl(var(--muted-foreground)); }
.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group] { padding-top: 0; }
.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group] { padding-left: 0.5rem; padding-right: 0.5rem; }
.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg { height: 1.25rem; }
.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg { width: 1.25rem; }
.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input] { height: 3rem; }
.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item] { padding-left: 0.5rem; padding-right: 0.5rem; }
.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item] { padding-top: 0.75rem; padding-bottom: 0.75rem; }
.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg { height: 1.25rem; }
.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg { width: 1.25rem; }
.\[\&_p\]\:leading-relaxed p { line-height: 1.625; }
.\[\&_svg\]\:pointer-events-none svg { pointer-events: none; }
.\[\&_svg\]\:size-4 svg { width: 1rem; height: 1rem; }
.\[\&_svg\]\:shrink-0 svg { flex-shrink: 0; }
.\[\&_tr\:last-child\]\:border-0 tr:last-child { border-width: 0px; }
.\[\&_tr\]\:border-b tr { border-bottom-width: 1px; }

/* Специфичные селекторы для sidebar */
[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2 { right: -0.5rem; }
[data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize { cursor: e-resize; }
[data-side=left] .\[\[data-side\=left\]_\&\]\:cursor-w-resize { cursor: w-resize; }
[data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2 { left: -0.5rem; }
[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize { cursor: w-resize; }
[data-side=right] .\[\[data-side\=right\]_\&\]\:cursor-e-resize { cursor: e-resize; }

/* Стили для Sonner Toaster из style.css */
:where(html[dir="ltr"]),:where([data-sonner-toaster][dir="ltr"]) {
  --toast-icon-margin-start: -3px;
  --toast-icon-margin-end: 4px;
  --toast-svg-margin-start: -1px;
  --toast-svg-margin-end: 0px;
  --toast-button-margin-start: auto;
  --toast-button-margin-end: 0;
  --toast-close-button-start: 0;
  --toast-close-button-end: unset;
  --toast-close-button-transform: translate(-35%, -35%);
}
:where(html[dir="rtl"]),:where([data-sonner-toaster][dir="rtl"]) {
  --toast-icon-margin-start: 4px;
  --toast-icon-margin-end: -3px;
  --toast-svg-margin-start: 0px;
  --toast-svg-margin-end: -1px;
  --toast-button-margin-start: 0;
  --toast-button-margin-end: auto;
  --toast-close-button-start: unset;
  --toast-close-button-end: 0;
  --toast-close-button-transform: translate(35%, -35%);
}
:where([data-sonner-toaster]) {
  position: fixed;
  width: var(--width);
  font-family: ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;
  --gray1: hsl(0, 0%, 99%);
  --gray2: hsl(0, 0%, 97.3%);
  --gray3: hsl(0, 0%, 95.1%);
  --gray4: hsl(0, 0%, 93%);
  --gray5: hsl(0, 0%, 90.9%);
  --gray6: hsl(0, 0%, 88.7%);
  --gray7: hsl(0, 0%, 85.8%);
  --gray8: hsl(0, 0%, 78%);
  --gray9: hsl(0, 0%, 56.1%);
  --gray10: hsl(0, 0%, 52.3%);
  --gray11: hsl(0, 0%, 43.5%);
  --gray12: hsl(0, 0%, 9%);
  --border-radius: 8px;
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  list-style: none;
  outline: none;
  z-index: 999999999;
  transition: transform .4s ease;
}
:where([data-sonner-toaster][data-lifted="true"]) { transform: translateY(-10px); }
@media (hover: none) and (pointer: coarse) {
  :where([data-sonner-toaster][data-lifted="true"]) { transform: none; }
}
:where([data-sonner-toaster][data-x-position="right"]) { right: var(--offset-right); }
:where([data-sonner-toaster][data-x-position="left"]) { left: var(--offset-left); }
:where([data-sonner-toaster][data-x-position="center"]) { left: 50%; transform: translate(-50%); }
:where([data-sonner-toaster][data-y-position="top"]) { top: var(--offset-top); }
:where([data-sonner-toaster][data-y-position="bottom"]) { bottom: var(--offset-bottom); }
:where([data-sonner-toast]) {
  --y: translateY(100%);
  --lift-amount: calc(var(--lift) * var(--gap));
  z-index: var(--z-index);
  position: absolute;
  opacity: 0;
  transform: var(--y);
  filter: blur(0);
  touch-action: none;
  transition: transform .4s,opacity .4s,height .4s,box-shadow .2s;
  box-sizing: border-box;
  outline: none;
  overflow-wrap: anywhere;
}
:where([data-sonner-toast][data-styled="true"]) {
  padding: 16px;
  background: var(--normal-bg);
  border: 1px solid var(--normal-border);
  color: var(--normal-text);
  border-radius: var(--border-radius);
  box-shadow: 0 4px 12px #0000001a;
  width: var(--width);
  font-size: 13px;
  display: flex;
  align-items: center;
  gap: 6px;
}
:where([data-sonner-toast]:focus-visible) { box-shadow: 0 4px 12px #0000001a,0 0 0 2px #0003; }
:where([data-sonner-toast][data-y-position="top"]) {
  top: 0;
  --y: translateY(-100%);
  --lift: 1;
  --lift-amount: calc(1 * var(--gap));
}
:where([data-sonner-toast][data-y-position="bottom"]) {
  bottom: 0;
  --y: translateY(100%);
  --lift: -1;
  --lift-amount: calc(var(--lift) * var(--gap));
}
:where([data-sonner-toast]) :where([data-description]) { font-weight: 400; line-height: 1.4; color: inherit; }
:where([data-sonner-toast]) :where([data-title]) { font-weight: 500; line-height: 1.5; color: inherit; }
:where([data-sonner-toast]) :where([data-icon]) {
  display: flex;
  height: 16px;
  width: 16px;
  position: relative;
  justify-content: flex-start;
  align-items: center;
  flex-shrink: 0;
  margin-left: var(--toast-icon-margin-start);
  margin-right: var(--toast-icon-margin-end);
}
:where([data-sonner-toast][data-promise="true"]) :where([data-icon])>svg {
  opacity: 0;
  transform: scale(.8);
  transform-origin: center;
  animation: sonner-fade-in .3s ease forwards;
}
:where([data-sonner-toast]) :where([data-icon])>* { flex-shrink: 0; }
:where([data-sonner-toast]) :where([data-icon]) svg {
  margin-left: var(--toast-svg-margin-start);
  margin-right: var(--toast-svg-margin-end);
}
:where([data-sonner-toast]) :where([data-content]) { display: flex; flex-direction: column; gap: 2px; }
[data-sonner-toast][data-styled=true] [data-button] {
  border-radius: 4px;
  padding-left: 8px;
  padding-right: 8px;
  height: 24px;
  font-size: 12px;
  color: var(--normal-bg);
  background: var(--normal-text);
  margin-left: var(--toast-button-margin-start);
  margin-right: var(--toast-button-margin-end);
  border: none;
  cursor: pointer;
  outline: none;
  display: flex;
  align-items: center;
  flex-shrink: 0;
  transition: opacity .4s,box-shadow .2s;
}
:where([data-sonner-toast]) :where([data-button]):focus-visible { box-shadow: 0 0 0 2px #0006; }
:where([data-sonner-toast]) :where([data-button]):first-of-type {
  margin-left: var(--toast-button-margin-start);
  margin-right: var(--toast-button-margin-end);
}
:where([data-sonner-toast]) :where([data-cancel]) { color: var(--normal-text); background: rgba(0,0,0,.08); }
:where([data-sonner-toast][data-theme="dark"]) :where([data-cancel]) { background: rgba(255,255,255,.3); }
:where([data-sonner-toast]) :where([data-close-button]) {
  position: absolute;
  left: var(--toast-close-button-start);
  right: var(--toast-close-button-end);
  top: 0;
  height: 20px;
  width: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0;
  color: var(--gray12);
  border: 1px solid var(--gray4);
  transform: var(--toast-close-button-transform);
  border-radius: 50%;
  cursor: pointer;
  z-index: 1;
  transition: opacity .1s,background .2s,border-color .2s;
}
[data-sonner-toast] [data-close-button] { background: var(--gray1); }
:where([data-sonner-toast]) :where([data-close-button]):focus-visible { box-shadow: 0 4px 12px #0000001a,0 0 0 2px #0003; }
:where([data-sonner-toast]) :where([data-disabled="true"]) { cursor: not-allowed; }
:where([data-sonner-toast]):hover :where([data-close-button]):hover { background: var(--gray2); border-color: var(--gray5); }
:where([data-sonner-toast][data-swiping="true"]):before {
  content: "";
  position: absolute;
  left: -50%;
  right: -50%;
  height: 100%;
  z-index: -1;
}
:where([data-sonner-toast][data-y-position="top"][data-swiping="true"]):before { bottom: 50%; transform: scaleY(3) translateY(50%); }
:where([data-sonner-toast][data-y-position="bottom"][data-swiping="true"]):before { top: 50%; transform: scaleY(3) translateY(-50%); }
:where([data-sonner-toast][data-swiping="false"][data-removed="true"]):before {
  content: "";
  position: absolute;
  inset: 0;
  transform: scaleY(2);
}
:where([data-sonner-toast]):after {
  content: "";
  position: absolute;
  left: 0;
  height: calc(var(--gap) + 1px);
  bottom: 100%;
  width: 100%;
}
:where([data-sonner-toast][data-mounted="true"]) { --y: translateY(0); opacity: 1; }
:where([data-sonner-toast][data-expanded="false"][data-front="false"]) {
  --scale: var(--toasts-before) * .05 + 1;
  --y: translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));
  height: var(--front-toast-height);
}
:where([data-sonner-toast])>* { transition: opacity .4s; }
:where([data-sonner-toast][data-expanded="false"][data-front="false"][data-styled="true"])>* { opacity: 0; }
:where([data-sonner-toast][data-visible="false"]) { opacity: 0; pointer-events: none; }
:where([data-sonner-toast][data-mounted="true"][data-expanded="true"]) {
  --y: translateY(calc(var(--lift) * var(--offset)));
  height: var(--initial-height);
}
:where([data-sonner-toast][data-removed="true"][data-front="true"][data-swipe-out="false"]) {
  --y: translateY(calc(var(--lift) * -100%));
  opacity: 0;
}
:where([data-sonner-toast][data-removed="true"][data-front="false"][data-swipe-out="false"][data-expanded="true"]) {
  --y: translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));
  opacity: 0;
}
:where([data-sonner-toast][data-removed="true"][data-front="false"][data-swipe-out="false"][data-expanded="false"]) {
  --y: translateY(40%);
  opacity: 0;
  transition: transform .5s,opacity .2s;
}
:where([data-sonner-toast][data-removed="true"][data-front="false"]):before { height: calc(var(--initial-height) + 20%); }
[data-sonner-toast][data-swiping=true] { transform: var(--y) translateY(var(--swipe-amount-y, 0px)) translate(var(--swipe-amount-x, 0px)); transition: none; }
[data-sonner-toast][data-swiped=true] { user-select: none; }
[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],
[data-sonner-toast][data-swipe-out=true][data-y-position=top] {
  animation-duration: .2s;
  animation-timing-function: ease-out;
  animation-fill-mode: forwards;
}
[data-sonner-toast][data-swipe-out=true][data-swipe-direction=left] { animation-name: swipe-out-left; }
[data-sonner-toast][data-swipe-out=true][data-swipe-direction=right] { animation-name: swipe-out-right; }
[data-sonner-toast][data-swipe-out=true][data-swipe-direction=up] { animation-name: swipe-out-up; }
[data-sonner-toast][data-swipe-out=true][data-swipe-direction=down] { animation-name: swipe-out-down; }
@keyframes swipe-out-left {
  0% { transform: var(--y) translate(var(--swipe-amount-x)); opacity: 1; }
  to { transform: var(--y) translate(calc(var(--swipe-amount-x) - 100%)); opacity: 0; }
}
@keyframes swipe-out-right {
  0% { transform: var(--y) translate(var(--swipe-amount-x)); opacity: 1; }
  to { transform: var(--y) translate(calc(var(--swipe-amount-x) + 100%)); opacity: 0; }
}
@keyframes swipe-out-up {
  0% { transform: var(--y) translateY(var(--swipe-amount-y)); opacity: 1; }
  to { transform: var(--y) translateY(calc(var(--swipe-amount-y) - 100%)); opacity: 0; }
}
@keyframes swipe-out-down {
  0% { transform: var(--y) translateY(var(--swipe-amount-y)); opacity: 1; }
  to { transform: var(--y) translateY(calc(var(--swipe-amount-y) + 100%)); opacity: 0; }
}
@media (max-width: 600px) {
  [data-sonner-toaster] {
    position: fixed;
    right: var(--mobile-offset-right);
    left: var(--mobile-offset-left);
    width: 100%;
  }
  [data-sonner-toaster][dir=rtl] { left: calc(var(--mobile-offset-left) * -1); }
  [data-sonner-toaster] [data-sonner-toast] { left: 0; right: 0; width: calc(100% - var(--mobile-offset-left) * 2); }
  [data-sonner-toaster][data-x-position=left] { left: var(--mobile-offset-left); }
  [data-sonner-toaster][data-y-position=bottom] { bottom: var(--mobile-offset-bottom); }
  [data-sonner-toaster][data-y-position=top] { top: var(--mobile-offset-top); }
  [data-sonner-toaster][data-x-position=center] { left: var(--mobile-offset-left); right: var(--mobile-offset-right); transform: none; }
}
[data-sonner-toaster][data-theme=light] {
  --normal-bg: #fff;
  --normal-border: var(--gray4);
  --normal-text: var(--gray12);
  --success-bg: hsl(143, 85%, 96%);
  --success-border: hsl(145, 92%, 91%);
  --success-text: hsl(140, 100%, 27%);
  --info-bg: hsl(208, 100%, 97%);
  --info-border: hsl(221, 91%, 91%);
  --info-text: hsl(210, 92%, 45%);
  --warning-bg: hsl(49, 100%, 97%);
  --warning-border: hsl(49, 91%, 91%);
  --warning-text: hsl(31, 92%, 45%);
  --error-bg: hsl(359, 100%, 97%);
  --error-border: hsl(359, 100%, 94%);
  --error-text: hsl(360, 100%, 45%);
}
[data-sonner-toaster][data-theme=light] [data-sonner-toast][data-invert=true] {
  --normal-bg: #000;
  --normal-border: hsl(0, 0%, 20%);
  --normal-text: var(--gray1);
}
[data-sonner-toaster][data-theme=dark] [data-sonner-toast][data-invert=true] {
  --normal-bg: #fff;
  --normal-border: var(--gray3);
  --normal-text: var(--gray12);
}
[data-sonner-toaster][data-theme=dark] {
  --normal-bg: #000;
  --normal-bg-hover: hsl(0, 0%, 12%);
  --normal-border: hsl(0, 0%, 20%);
  --normal-border-hover: hsl(0, 0%, 25%);
  --normal-text: var(--gray1);
  --success-bg: hsl(150, 100%, 6%);
  --success-border: hsl(147, 100%, 12%);
  --success-text: hsl(150, 86%, 65%);
  --info-bg: hsl(215, 100%, 6%);
  --info-border: hsl(223, 100%, 12%);
  --info-text: hsl(216, 87%, 65%);
  --warning-bg: hsl(64, 100%, 6%);
  --warning-border: hsl(60, 100%, 12%);
  --warning-text: hsl(46, 87%, 65%);
  --error-bg: hsl(358, 76%, 10%);
  --error-border: hsl(357, 89%, 16%);
  --error-text: hsl(358, 100%, 81%);
}
[data-sonner-toaster][data-theme=dark] [data-sonner-toast] [data-close-button] {
  background: var(--normal-bg);
  border-color: var(--normal-border);
  color: var(--normal-text);
}
[data-sonner-toaster][data-theme=dark] [data-sonner-toast] [data-close-button]:hover {
  background: var(--normal-bg-hover);
  border-color: var(--normal-border-hover);
}
[data-rich-colors=true][data-sonner-toast][data-type=success],
[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button] {
  background: var(--success-bg);
  border-color: var(--success-border);
  color: var(--success-text);
}
[data-rich-colors=true][data-sonner-toast][data-type=info],
[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button] {
  background: var(--info-bg);
  border-color: var(--info-border);
  color: var(--info-text);
}
[data-rich-colors=true][data-sonner-toast][data-type=warning],
[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button] {
  background: var(--warning-bg);
  border-color: var(--warning-border);
  color: var(--warning-text);
}
[data-rich-colors=true][data-sonner-toast][data-type=error],
[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button] {
  background: var(--error-bg);
  border-color: var(--error-border);
  color: var(--error-text);
}
.sonner-loading-wrapper {
  --size: 16px;
  height: var(--size);
  width: var(--size);
  position: absolute;
  inset: 0;
  z-index: 10;
}
.sonner-loading-wrapper[data-visible=false] {
  transform-origin: center;
  animation: sonner-fade-out .2s ease forwards;
}
.sonner-spinner {
  position: relative;
  top: 50%;
  left: 50%;
  height: var(--size);
  width: var(--size);
}
.sonner-loading-bar {
  animation: sonner-spin 1.2s linear infinite;
  background: var(--gray11);
  border-radius: 6px;
  height: 8%;
  left: -10%;
  position: absolute;
  top: -3.9%;
  width: 24%;
}
.sonner-loading-bar:nth-child(1) { animation-delay: -1.2s; transform: rotate(.0001deg) translate(146%); }
.sonner-loading-bar:nth-child(2) { animation-delay: -1.1s; transform: rotate(30deg) translate(146%); }
.sonner-loading-bar:nth-child(3) { animation-delay: -1s; transform: rotate(60deg) translate(146%); }
.sonner-loading-bar:nth-child(4) { animation-delay: -.9s; transform: rotate(90deg) translate(146%); }
.sonner-loading-bar:nth-child(5) { animation-delay: -.8s; transform: rotate(120deg) translate(146%); }
.sonner-loading-bar:nth-child(6) { animation-delay: -.7s; transform: rotate(150deg) translate(146%); }
.sonner-loading-bar:nth-child(7) { animation-delay: -.6s; transform: rotate(180deg) translate(146%); }
.sonner-loading-bar:nth-child(8) { animation-delay: -.5s; transform: rotate(210deg) translate(146%); }
.sonner-loading-bar:nth-child(9) { animation-delay: -.4s; transform: rotate(240deg) translate(146%); }
.sonner-loading-bar:nth-child(10) { animation-delay: -.3s; transform: rotate(270deg) translate(146%); }
.sonner-loading-bar:nth-child(11) { animation-delay: -.2s; transform: rotate(300deg) translate(146%); }
.sonner-loading-bar:nth-child(12) { animation-delay: -.1s; transform: rotate(330deg) translate(146%); }
@keyframes sonner-fade-in {
  0% { opacity: 0; transform: scale(.8); }
  to { opacity: 1; transform: scale(1); }
}
@keyframes sonner-fade-out {
  0% { opacity: 1; transform: scale(1); }
  to { opacity: 0; transform: scale(.8); }
}
@keyframes sonner-spin {
  0% { opacity: 1; }
  to { opacity: .15; }
}
@media (prefers-reduced-motion) {
  [data-sonner-toast],[data-sonner-toast]>*,.sonner-loading-bar { transition: none !important; animation: none !important; }
}
.sonner-loader {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transform-origin: center;
  transition: opacity .2s,transform .2s;
}
.sonner-loader[data-visible=false] {
  opacity: 0;
  transform: scale(.8) translate(-50%, -50%);
}

/* ===== ОРИГИНАЛЬНЫЕ СТИЛИ ИЗ STYLE2.CSS (ниже) ===== */

/* Переменные и стили из style2.css, уже присутствующие выше, но могут быть переопределены */
/* Дублирующиеся классы уже объединены, здесь добавляем только уникальные */

.bg-\[\#0a2540\] { --tw-bg-opacity: 1; background-color: rgb(10 37 64 / var(--tw-bg-opacity, 1)); }
.bg-earth-100 { --tw-bg-opacity: 1; background-color: rgb(245 237 227 / var(--tw-bg-opacity, 1)); }
.bg-earth-200 { --tw-bg-opacity: 1; background-color: rgb(235 220 200 / var(--tw-bg-opacity, 1)); }
.bg-primary\/20 { background-color: #0b70c333; }
.bg-primary\/5 { background-color: #0b70c30d; }
.bg-warm-100 { --tw-bg-opacity: 1; background-color: rgb(240 232 220 / var(--tw-bg-opacity, 1)); }
.bg-warm-200 { --tw-bg-opacity: 1; background-color: rgb(226 212 192 / var(--tw-bg-opacity, 1)); }
.bg-warm-50 { --tw-bg-opacity: 1; background-color: rgb(250 246 241 / var(--tw-bg-opacity, 1)); }
.bg-warm-900 { --tw-bg-opacity: 1; background-color: rgb(48 38 24 / var(--tw-bg-opacity, 1)); }
.bg-white\/95 { background-color: #fffffff2; }
.from-warm-800 { --tw-gradient-from: #4e4030 var(--tw-gradient-from-position); --tw-gradient-to: #4e403000 var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }
.to-warm-900 { --tw-gradient-to: #302618 var(--tw-gradient-to-position); }

.border-warm-100 { --tw-border-opacity: 1; border-color: rgb(240 232 220 / var(--tw-border-opacity, 1)); }
.border-warm-200 { --tw-border-opacity: 1; border-color: rgb(226 212 192 / var(--tw-border-opacity, 1)); }
.border-warm-300 { --tw-border-opacity: 1; border-color: rgb(212 192 165 / var(--tw-border-opacity, 1)); }

.text-amber-400 { --tw-text-opacity: 1; color: rgb(251 191 36 / var(--tw-text-opacity, 1)); }
.text-gray-400 { --tw-text-opacity: 1; color: rgb(156 163 175 / var(--tw-text-opacity, 1)); }
.text-gray-50 { --tw-text-opacity: 1; color: rgb(249 250 251 / var(--tw-text-opacity, 1)); }
.text-gray-500 { --tw-text-opacity: 1; color: rgb(107 114 128 / var(--tw-text-opacity, 1)); }
.text-primary-light { --tw-text-opacity: 1; color: rgb(102 170 226 / var(--tw-text-opacity, 1)); }
.text-primary\/20 { color: #0b70c333; }
.text-warm-300 { --tw-text-opacity: 1; color: rgb(212 192 165 / var(--tw-text-opacity, 1)); }
.text-warm-400 { --tw-text-opacity: 1; color: rgb(198 172 143 / var(--tw-text-opacity, 1)); }
.text-warm-500 { --tw-text-opacity: 1; color: rgb(168 144 120 / var(--tw-text-opacity, 1)); }
.text-warm-600 { --tw-text-opacity: 1; color: rgb(138 117 96 / var(--tw-text-opacity, 1)); }
.text-warm-700 { --tw-text-opacity: 1; color: rgb(108 90 72 / var(--tw-text-opacity, 1)); }
.text-warm-800 { --tw-text-opacity: 1; color: rgb(78 64 48 / var(--tw-text-opacity, 1)); }
.text-warm-900 { --tw-text-opacity: 1; color: rgb(48 38 24 / var(--tw-text-opacity, 1)); }
.text-white\/40 { color: #fff6; }
.text-white\/60 { color: #fff9; }

.blur-3xl { --tw-blur: blur(64px); filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow); }
.backdrop-blur { --tw-backdrop-blur: blur(8px); -webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia); backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia); }

.hover\:border-primary\/20:hover { border-color: #0b70c333; }
.hover\:border-primary\/30:hover { border-color: #0b70c34d; }
.hover\:border-warm-400:hover { --tw-border-opacity: 1; border-color: rgb(198 172 143 / var(--tw-border-opacity, 1)); }
.hover\:bg-black\/70:hover { background-color: #000000b3; }
.hover\:bg-primary-dark:hover { --tw-bg-opacity: 1; background-color: rgb(3 110 100 / var(--tw-bg-opacity, 1)); }
.hover\:bg-warm-100:hover { --tw-bg-opacity: 1; background-color: rgb(240 232 220 / var(--tw-bg-opacity, 1)); }
.hover\:bg-warm-50:hover { --tw-bg-opacity: 1; background-color: rgb(250 246 241 / var(--tw-bg-opacity, 1)); }
.hover\:bg-warm-50\/50:hover { background-color: #faf6f180; }
.hover\:bg-white\/30:hover { background-color: #ffffff4d; }
.hover\:text-warm-400:hover { --tw-text-opacity: 1; color: rgb(198 172 143 / var(--tw-text-opacity, 1)); }
.hover\:text-white\/80:hover { color: #fffc; }
.hover\:shadow-lg:hover { --tw-shadow: 0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a; --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
.hover\:shadow-md:hover { --tw-shadow: 0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a; --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
.focus\:border-primary:focus { --tw-border-opacity: 1; border-color: rgb(5 148 103 / var(--tw-border-opacity, 1)); }
.focus\:ring-primary:focus { --tw-ring-opacity: 1; --tw-ring-color: rgb(5 148 103 / var(--tw-ring-opacity, 1)); }

/* Уникальные групповые и прочие селекторы из style2.css */
.group\/link:hover .group-hover\/link\:translate-x-1 { --tw-translate-x: 0.25rem; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }

/* Анимация по скроллу */
.animate-on-scroll {
  opacity: 0;
  transition: opacity .6s ease-out, transform .6s ease-out;
  transform: translateY(24px);
}
.animate-on-scroll.animate-in {
  opacity: 1;
  transform: translateY(0);
}
html { scroll-behavior: smooth; }

/* Уникальные медиа-запросы из style2.css */
@media (min-width: 640px) {
  .sm\:block { display: block; }
  .sm\:inline-flex { display: inline-flex; }
  .sm\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .sm\:flex-row { flex-direction: row; }
  .sm\:items-center { align-items: center; }
  .sm\:text-left { text-align: left; }
}
@media (min-width: 768px) {
  .md\:-bottom-6 { bottom: -1.5rem; }
  .md\:-bottom-8 { bottom: -2rem; }
  .md\:-left-6 { left: -1.5rem; }
  .md\:-right-8 { right: -2rem; }
  .md\:bottom-10 { bottom: 2.5rem; }
  .md\:bottom-6 { bottom: 1.5rem; }
  .md\:left-6 { left: 1.5rem; }
  .md\:left-8 { left: 2rem; }
  .md\:right-8 { right: 2rem; }
  .md\:col-span-2 { grid-column: span 2 / span 2; }
  .md\:col-span-3 { grid-column: span 3 / span 3; }
  .md\:col-span-7 { grid-column: span 7 / span 7; }
  .md\:mb-10 { margin-bottom: 2.5rem; }
  .md\:mb-14 { margin-bottom: 3.5rem; }
  .md\:mb-16 { margin-bottom: 4rem; }
  .md\:mb-4 { margin-bottom: 1rem; }
  .md\:mb-5 { margin-bottom: 1.25rem; }
  .md\:mb-6 { margin-bottom: 1.5rem; }
  .md\:mb-8 { margin-bottom: 2rem; }
  .md\:mt-10 { margin-top: 2.5rem; }
  .md\:mt-14 { margin-top: 3.5rem; }
  .md\:mt-16 { margin-top: 4rem; }
  .md\:mt-8 { margin-top: 2rem; }
  .md\:block { display: block; }
  .md\:h-10 { height: 2.5rem; }
  .md\:h-12 { height: 3rem; }
  .md\:h-16 { height: 4rem; }
  .md\:h-20 { height: 5rem; }
  .md\:h-56 { height: 14rem; }
  .md\:h-64 { height: 16rem; }
  .md\:h-72 { height: 18rem; }
  .md\:h-8 { height: 2rem; }
  .md\:h-80 { height: 20rem; }
  .md\:h-96 { height: 24rem; }
  .md\:h-\[450px\] { height: 450px; }
  .md\:h-\[600px\] { height: 600px; }
  .md\:h-\[700px\] { height: 700px; }
  .md\:w-10 { width: 2.5rem; }
  .md\:w-12 { width: 3rem; }
  .md\:w-16 { width: 4rem; }
  .md\:w-20 { width: 5rem; }
  .md\:w-8 { width: 2rem; }
  .md\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .md\:grid-cols-5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .md\:gap-10 { gap: 2.5rem; }
  .md\:gap-12 { gap: 3rem; }
  .md\:gap-3 { gap: 0.75rem; }
  .md\:gap-4 { gap: 1rem; }
  .md\:gap-5 { gap: 1.25rem; }
  .md\:gap-6 { gap: 1.5rem; }
  .md\:gap-8 { gap: 2rem; }
  .md\:space-y-4 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(1rem * var(--tw-space-y-reverse)); }
  .md\:space-y-8 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(2rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(2rem * var(--tw-space-y-reverse)); }
  .md\:p-4 { padding: 1rem; }
  .md\:p-5 { padding: 1.25rem; }
  .md\:p-6 { padding: 1.5rem; }
  .md\:p-7 { padding: 1.75rem; }
  .md\:p-8 { padding: 2rem; }
  .md\:px-5 { padding-left: 1.25rem; padding-right: 1.25rem; }
  .md\:px-6 { padding-left: 1.5rem; padding-right: 1.5rem; }
  .md\:px-8 { padding-left: 2rem; padding-right: 2rem; }
  .md\:py-16 { padding-top: 4rem; padding-bottom: 4rem; }
  .md\:py-24 { padding-top: 6rem; padding-bottom: 6rem; }
  .md\:py-3\.5 { padding-top: 0.875rem; padding-bottom: 0.875rem; }
  .md\:py-4 { padding-top: 1rem; padding-bottom: 1rem; }
  .md\:py-5 { padding-top: 1.25rem; padding-bottom: 1.25rem; }
  .md\:pb-12 { padding-bottom: 3rem; }
  .md\:pb-5 { padding-bottom: 1.25rem; }
  .md\:pt-8 { padding-top: 2rem; }
  .md\:text-2xl { font-size: 1.5rem; line-height: 2rem; }
  .md\:text-3xl { font-size: 1.875rem; line-height: 2.25rem; }
  .md\:text-4xl { font-size: 2.25rem; line-height: 2.5rem; }
  .md\:text-5xl { font-size: 3rem; line-height: 1; }
  .md\:text-\[12rem\] { font-size: 12rem; }
  .md\:text-base { font-size: 1rem; line-height: 1.5rem; }
  .md\:text-lg { font-size: 1.125rem; line-height: 1.75rem; }
  .md\:text-sm { font-size: 0.875rem; line-height: 1.25rem; }
  .md\:text-xl { font-size: 1.25rem; line-height: 1.75rem; }
}
@media (min-width: 1024px) {
  .lg\:left-12 { left: 3rem; }
  .lg\:right-12 { right: 3rem; }
  .lg\:col-span-1 { grid-column: span 1 / span 1; }
  .lg\:block { display: block; }
  .lg\:flex { display: flex; }
  .lg\:hidden { display: none; }
  .lg\:h-\[420px\] { height: 420px; }
  .lg\:h-\[480px\] { height: 480px; }
  .lg\:h-\[700px\] { height: 700px; }
  .lg\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .lg\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .lg\:grid-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .lg\:grid-cols-5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .lg\:gap-16 { gap: 4rem; }
  .lg\:px-12 { padding-left: 3rem; padding-right: 3rem; }
  .lg\:text-5xl { font-size: 3rem; line-height: 1; }
  .lg\:text-6xl { font-size: 3.75rem; line-height: 1; }
  .lg\:text-xl { font-size: 1.25rem; line-height: 1.75rem; }
}
@media (min-width: 1280px) {
  .xl\:gap-8 { gap: 2rem; }
}

/* Пользовательские стили из style2.css */
.red { color: #F40004; }
.zayavka:hover { color: white; }
.sticky { position: sticky; }
a.text-white { color: #fff !important; }

/* Плавающая кнопка */
.floating-contact-btn {
  position: fixed;
  bottom: 24px;
  left: 24px;
  width: 56px;
  height: 56px;
  background: #dc4c2c;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 1000;
  box-shadow: 0 4px 15px rgba(220, 76, 44, 0.4);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  color: white;
}
.floating-contact-btn:hover {
  transform: scale(1.05);
  box-shadow: 0 6px 20px rgba(220, 76, 44, 0.5);
}
.ripple-wave {
  position: absolute;
  width: 100%;
  height: 100%;
  background: #dc4c2c;
  border-radius: 50%;
  opacity: 0.6;
  animation: ripple 2s ease-out infinite;
  pointer-events: none;
}
.ripple-wave.delay-1 { animation-delay: 0.7s; }
.ripple-wave.delay-2 { animation-delay: 1.4s; }
@keyframes ripple {
  0% { transform: scale(1); opacity: 0.6; }
  100% { transform: scale(1.8); opacity: 0; }
}
.contact-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1100;
  display: flex;
  align-items: center;
  justify-content: center;
  visibility: hidden;
  opacity: 0;
  transition: visibility 0.3s ease, opacity 0.3s ease;
}
.contact-modal.active {
  visibility: visible;
  opacity: 1;
}
.contact-modal-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  backdrop-filter: blur(4px);
}
.contact-modal-content {
  position: relative;
  background: white;
  border-radius: 24px;
  width: 90%;
  max-width: 420px;
  padding: 24px;
  transform: scale(0.9);
  transition: transform 0.3s ease;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}
.contact-modal.active .contact-modal-content { transform: scale(1); }
.contact-modal-close {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #f3f4f6;
  cursor: pointer;
  transition: all 0.2s ease;
  color: #4b5563;
}
.contact-modal-close:hover {
  background: #e5e7eb;
  transform: rotate(90deg);
}
.contact-item {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 14px 16px;
  background: #faf9f7;
  border-radius: 16px;
  text-decoration: none;
  transition: all 0.2s ease;
  cursor: pointer;
  border: 1px solid transparent;
}
.contact-item:hover {
  background: #ffffff;
  border-color: #f0ebe5;
  transform: translateX(4px);
}
.contact-icon {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
@media (max-width: 640px) {
  .floating-contact-btn {
    bottom: 16px;
    left: 16px;
    width: 48px;
    height: 48px;
  }
  .contact-modal-content {
    padding: 20px;
    margin: 16px;
    width: calc(100% - 32px);
  }
  .contact-item { padding: 12px 14px; }
  .contact-icon { width: 40px; height: 40px; }
  header { padding: 0 10px; }
	.foot-d__title {
    border-bottom: 1px solid #999;
    margin-bottom: 20px;
    font-size: 18px;
}
	
.logo 	{
    display: flex;
    color: #059467;
    flex-direction: column;
    font-size: 26px !important;
    line-height: 18px !important;
    font-weight: 500;
    letter-spacing: 8px !important;
    margin-left: 10px;
}
	.logo span {
    font-size: 11px !important;
    margin: 0;
    padding: 0;
    letter-spacing: 0px !important;
}
	.home-l img {
    width: 46px !important;
}
	
	
	
}
#contacts .block-d__name { display: none; }

.foot-d__title {
    border-bottom: 1px solid #999;
    margin-bottom: 20px;
    font-size: 22px;
}

.logo  {
    display: flex;
    color: #059467;
    flex-direction: column;
    font-size: 36px;
    line-height: 24px;
    font-weight: 500;
    letter-spacing: 11px;
    margin-left: 10px;
	text-decoration: none;
}
.logo:hover {text-decoration: none;}

.logo span  {
    font-size: 13px;
    margin: 0;
    padding: 0;
    letter-spacing: 1px;
}
a.home-l:hover {  text-decoration: none;}

.py-2\.5 {
    padding-top: .625rem;
    padding-bottom: .625rem;
}

/* ===== Обёртка меню ===== */
        .menu-wrapper {
            max-width: 1200px;
            margin: 0 auto;
            padding: 10px 20px;  
        }

        /* ===== Кнопка-бургер (только для мобильных) ===== */
        .burger-btn {
            display: none; /* скрыта на десктопе */
            background: none;
            border: none;
            cursor: pointer;
            padding: 8px 10px;
            border-radius: 4px;
            transition: background 0.3s;
        }

        .burger-btn:hover {
            background: rgba(255,255,255,0.1);
        }

        .burger-btn span {
            display: block;
            width: 28px;
            height: 3px;
            margin: 5px 0;
            background: #059467;
            border-radius: 2px;
            transition: 0.3s;
        }

        /* Анимация бургера в крестик (активное состояние) */
        .burger-btn.active span:nth-child(1) {
            transform: translateY(8px) rotate(45deg);
        }
        .burger-btn.active span:nth-child(2) {
            opacity: 0;
        }
        .burger-btn.active span:nth-child(3) {
            transform: translateY(-8px) rotate(-45deg);
        }

        /* ===== Само меню ===== */
        .left_menu_level_1 {
            list-style: none;
            display: flex;
            gap: 30px;
            align-items: center;
            margin: 0;
            padding: 0;
            transition: max-height 0.4s ease, opacity 0.3s ease;
        }

        .left_menu_level_1 li a {
            text-decoration: none;
            font-size: 16px;
            font-weight: 500;
            padding: 5px 0;
            border-bottom: 3px solid transparent;
            transition: border-color 0.3s, color 0.3s;
            display: inline-block;
        }

        .left_menu_level_1 li a:hover {
          border-bottom-color: #059467;
    color: #059467;
        }

        /* ===== Мобильная версия (до 768px) ===== */
        @media (max-width: 768px) {
            .menu-wrapper {
                padding: 12px 15px;
                display: flex;
                align-items: center;
                justify-content: space-between;
                flex-wrap: wrap;
            }

            .burger-btn {
                display: block; /* показываем бургер */
                order: 2;
            }

            .left_menu_level_1 {
                flex-direction: column;
                align-items: stretch;
                gap: 0;
                width: 100%;
                max-height: 0;
                opacity: 0;
                overflow: hidden;
                order: 3;
                border-top: 1px solid rgba(255,255,255,0.1);
                margin-top: 10px;
                padding-top: 0;
                transition: max-height 0.4s ease, opacity 0.3s ease, padding 0.3s ease;
            }

            /* Раскрытое состояние (добавляется JS) */
            .left_menu_level_1.open {
                max-height: 500px; /* достаточно для 4 пунктов */
                opacity: 1;
                padding-top: 10px;
            }

            .left_menu_level_1 li {
                width: 100%;
                border-bottom: 1px solid rgba(255,255,255,0.05);
            }

            .left_menu_level_1 li:last-child {
                border-bottom: none;
            }

            .left_menu_level_1 li a {
                display: block;
                padding: 12px 5px;
                font-size: 16px;
                border-bottom: none;
                width: 100%;
            }

            .left_menu_level_1 li a:hover {
                background: rgba(255,255,255,0.05);
                border-bottom: none;
                color: #f1c40f;
            }
        }

        /* ===== Очень маленькие экраны (до 400px) ===== */
        @media (max-width: 400px) {
            .menu-wrapper {
                padding: 10px 12px;
            }
            .left_menu_level_1 li a {
                font-size: 15px;
                padding: 10px 5px;
            }
        }
/* Плавная прокрутка для меню */
.left_menu_level_1 {
    -webkit-overflow-scrolling: touch;
}

/* Улучшение кликабельности на мобильных */
.burger-btn {
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
}

/* Стили для затенения фона при открытом меню (опционально) */
.menu-wrapper.active-menu::before {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0,0,0,0.5);
    z-index: 999;
}

/* Адаптация для мобильных устройств */
@media (max-width: 768px) {
    .burger-btn {
        z-index: 1001;
    }
    
    .left_menu_level_1.open {
        z-index: 1000;
        background: #f8f9fa; /* или ваш цвет фона */
        box-shadow: 0 4px 6px rgba(0,0,0,0.1);
    }
}


.news_list .news {     display: grid;
    gap: 10px;
    margin: 10px auto;
    grid-template-columns: 200px 1fr;
}
.block-row-img {
    height: 150px;
    overflow: hidden;
    border-radius: 10px;
}

.block-row-img img {
    object-fit: cover;
    width: 100%;
    height: auto;
}

main {margin: 20px auto; padding: 0 10px;}

.news_id {
    float: right;
	margin: 10px;
}
.previous_next_links {
    padding: 4pt; 
    margin: 10px 0;
    display: table;
    width: 100%;
}
.next_link {
    float: right;
}
.previous_link {
    float: left;
}


/* Сетка галереи */
        .photo_images {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
            gap: 20px;
        }

        .photo_item {
            background: #fff;
            border-radius: 12px;
            overflow: hidden;
            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
            transition: transform 0.25s ease, box-shadow 0.25s ease;
            cursor: pointer;
        }

        .photo_item:hover {
            transform: translateY(-5px);
            box-shadow: 0 12px 30px rgba(0, 0, 0, 0.15);
        }

        .photo_item a {
            display: block;
            text-decoration: none;
            height: 200px;
            overflow: hidden;
            background: #e9ecef;
        }

        .photo_item a img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.3s ease;
            display: block;
        }

        .photo_item:hover a img {
            transform: scale(1.05);
        }

        .photo_name {
            padding: 12px 14px;
            font-size: 14px;
            color: #2c3e50;
            font-weight: 500;
            text-align: center;
            line-height: 1.4;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
            background: #fff;
        }

        /* ===== Модальное окно ===== */
        .modal-overlay {
            display: none;
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(0, 0, 0, 0.88);
            z-index: 9999;
            justify-content: center;
            align-items: center;
            opacity: 0;
            transition: opacity 0.3s ease;
        }

        .modal-overlay.active {
            display: flex;
            opacity: 1;
        }

        .modal-content {
            position: relative;
            max-width: 90vw;
            max-height: 90vh;
            display: flex;
            justify-content: center;
            align-items: center;
        }

        .modal-content img {
            max-width: 90vw;
            max-height: 85vh;
            border-radius: 8px;
            box-shadow: 0 20px 60px rgba(0, 0, 0, 0.6);
            object-fit: contain;
            background: #111;
            user-select: none;
        }

        /* Кнопки навигации */
        .nav-btn {
            position: fixed;
            top: 50%;
            transform: translateY(-50%);
            background: rgba(255, 255, 255, 0.15);
            backdrop-filter: blur(6px);
            border: none;
            color: #fff;
            font-size: 36px;
            width: 56px;
            height: 56px;
            border-radius: 50%;
            cursor: pointer;
            transition: background 0.2s, transform 0.2s;
            display: flex;
            align-items: center;
            justify-content: center;
            z-index: 10001;
            font-weight: 300;
            line-height: 1;
        }

        .nav-btn:hover {
            background: rgba(255, 255, 255, 0.3);
            transform: translateY(-50%) scale(1.05);
        }

        .nav-btn.prev {
            left: 20px;
        }

        .nav-btn.next {
            right: 20px;
        }

        /* Кнопка закрытия */
        .close-btn {
            position: fixed;
            top: 20px;
            right: 30px;
            font-size: 40px;
            color: #fff;
            background: none;
            border: none;
            cursor: pointer;
            z-index: 10001;
            opacity: 0.7;
            transition: opacity 0.2s, transform 0.2s;
            line-height: 1;
        }

        .close-btn:hover {
            opacity: 1;
            transform: rotate(90deg);
        }

        /* Счётчик фото */
        .photo-counter {
            position: fixed;
            bottom: 25px;
            left: 50%;
            transform: translateX(-50%);
            color: rgba(255, 255, 255, 0.8);
            background: rgba(0, 0, 0, 0.5);
            backdrop-filter: blur(4px);
            padding: 8px 22px;
            border-radius: 30px;
            font-size: 15px;
            letter-spacing: 0.5px;
            z-index: 10001;
            font-weight: 400;
            border: 1px solid rgba(255, 255, 255, 0.1);
        }

        /* Адаптив */
        @media (max-width: 600px) {
            .photo_images {
                grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
                gap: 12px;
            }
            .photo_item a {
                height: 150px;
            }
            .photo_name {
                font-size: 12px;
                padding: 8px 10px;
            }
            .nav-btn {
                width: 44px;
                height: 44px;
                font-size: 26px;
            }
            .nav-btn.prev {
                left: 8px;
            }
            .nav-btn.next {
                right: 8px;
            }
            .close-btn {
                top: 12px;
                right: 18px;
                font-size: 32px;
            }
            .photo-counter {
                font-size: 13px;
                padding: 5px 16px;
                bottom: 18px;
            }
        }


.photo_cat_link {font-size: 18px;
    padding: 12px 0;}

.tab-paroda   img  {
    margin: 10px 0;
}

p {padding: 3px 0;}

 input[type='radio'],  input[type='checkbox'] {
    width: 30px;
    float: left;
    margin-top: 5px;
}

 footer a {
    color: #fff6;
}

.h-\[500px\] {
    height: 500px;
}

.bottom-6 {
    bottom: 1.5rem;
}


    /* ===== Блок FAQ ===== */
        .faq-section {
            width: 100%;
    background: #faf7f4;
    padding: 10%;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.06);
    transition: all 0.2s;
        }

        /* Заголовок блока */
        .faq-header {
            margin-bottom: 32px;
        }
        .faq-header h3 {
            font-size: 28px;
            font-weight: 600;
            color: #1e2b2b;
            letter-spacing: -0.01em;
            margin-bottom: 8px;
        }
        .faq-header p {
            font-size: 16px;
            line-height: 1.6;
            color: #3e4a4a;
            opacity: 0.85;
            max-width: 90%;
        }

        /* Контейнер списка */
        .faq-container {
            display: flex;
            flex-direction: column;
            gap: 10px;
        }

        /* Каждый пункт */
        .faq-item {
            background: #ffffffcc;
            backdrop-filter: blur(2px);
            background: #ffffff;
            border-radius: 18px;
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.02);
            transition: box-shadow 0.25s, background 0.2s;
            border: 1px solid #f0ebe6;
            overflow: hidden;
        }
        .faq-item:hover {
            box-shadow: 0 6px 18px rgba(5, 148, 103, 0.06);
            border-color: #d9d0c8;
        }

        /* Вопрос (заголовок + иконка) */
        .faq-question {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 18px 22px;
            cursor: pointer;
            user-select: none;
            transition: background 0.15s;
            gap: 20px;
        }
        .faq-question h4 {
            font-size: 17px;
            font-weight: 500;
            color: #1f2c2c;
            letter-spacing: -0.01em;
            line-height: 1.4;
            margin: 0;
            flex: 1;
        }
        /* Иконка (Remixicon) */
        .faq-icon {
            flex-shrink: 0;
            width: 28px;
            height: 28px;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 22px;
            color: #059467;          /* основной цвет иконок */
            transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), color 0.2s;
        }
        /* при открытом состоянии — поворот */
        .faq-item.active .faq-icon {
            transform: rotate(45deg);
            color: #059467;
        }

        /* Блок ответа (скрыт по умолчанию) */
        .faq-answer {
            max-height: 0;
            opacity: 0;
            overflow: hidden;
            transition: max-height 0.5s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.4s ease, padding 0.3s;
            padding: 0 22px 0 22px;
            background: #fcfaf8;
            border-top: 0px solid #e7dfd8;
        }
        .faq-item.active .faq-answer {
            max-height: 800px;        /* достаточно для контента */
            opacity: 1;
            padding: 6px 22px 22px 22px;
            border-top-width: 1px;
            border-color: #ede7e0;
        }

        /* Содержимое ответа */
        .faq-answer-content {
            padding-top: 8px;
        }
        .faq-answer-content p {
            font-size: 15px;
            line-height: 1.6;
            color: #2d3c3c;
            margin-bottom: 12px;
        }
        .faq-answer-content ul {
            list-style: none;
            padding-left: 6px;
            margin-bottom: 14px;
        }
        .faq-answer-content ul li {
            position: relative;
            padding-left: 22px;
            margin-bottom: 7px;
            font-size: 15px;
            line-height: 1.5;
            color: #2d3c3c;
        }
        .faq-answer-content ul li::before {
            content: "▹";
            position: absolute;
            left: 2px;
            top: -1px;
            color: #059467;
            font-weight: 500;
            font-size: 18px;
        }
        .faq-answer-content strong {
            color: #1b2a2a;
            font-weight: 600;
        }

        /* Нижний декоративный блок */
        .faq-decoration {
            margin-top: 32px;
            padding: 18px 20px 12px 20px;
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            justify-content: center;
            gap: 12px 20px;
            background: #f4efea;
            border-radius: 60px;
            color: #2f3d3d;
            font-size: 15px;
            border: 1px solid #ece4dd;
        }
        .faq-decoration i {
            color: #059467;
            font-size: 22px;
        }
        .faq-decoration span {
            font-weight: 450;
            letter-spacing: -0.01em;
        }
        .faq-decoration p {
            margin: 0;
            font-size: 14px;
            opacity: 0.8;
        }
        .faq-decoration a {
            color: #059467;
            font-weight: 500;
            text-decoration: none;
            border-bottom: 1px solid transparent;
            transition: border-color 0.2s;
        }
        .faq-decoration a:hover {
            border-bottom-color: #059467;
        }

        /* ===== Адаптив ===== */
        @media (max-width: 600px) {
            .faq-section {
                padding: 24px 18px 20px;
            }
            .faq-header h3 {
                font-size: 24px;
            }
            .faq-header p {
                max-width: 100%;
                font-size: 15px;
            }
            .faq-question {
                padding: 15px 16px;
            }
            .faq-question h4 {
                font-size: 16px;
            }
            .faq-answer-content ul li {
                font-size: 14px;
            }
            .faq-decoration {
                flex-direction: column;
                gap: 10px;
                border-radius: 30px;
                padding: 16px 16px 12px;
                text-align: center;
            }
            .block-d_photo_item .block-d__list {
           grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
            }
        }

        @media (max-width: 420px) {
            .faq-question h4 {
                font-size: 14.5px;
            }
            .faq-icon {
                font-size: 20px;
                width: 24px;
                height: 24px;
            }
        }

.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}

.block-d_photo_item .block-d__list {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    display: grid;
    margin: 20px 0;
}

.block-d_photo_item .block-d__name{
    text-align: center;
}
 #contact-install form .block-d__name { display: none;}
  #contact-install form textarea {     height: 60px;
    min-height: 60px !important;}

.bg-primary-100 {
    --tw-bg-opacity: 1;
    background-color: oklch(var(--primary-100) / var(--tw-bg-opacity, 1));
}
 
.rounded-lg {
    border-radius: 0.5rem;
} 
.justify-center {
    justify-content: center;
} 
.items-center {
    align-items: center;
} 
.flex-shrink-0 {
    flex-shrink: 0;
} 
.w-10 {
    width: 2.5rem;
} 
.h-10 {
    height: 2.5rem;
}
.text-foreground-900 {
    --tw-text-opacity: 1;
    color: oklch(var(--foreground-900) / var(--tw-text-opacity, 1));
} 
.font-semibold {
    font-weight: 600;
}
.space-y-5 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(1.25rem * var(--tw-space-y-reverse));
}

.text-accent-300 {
    --tw-text-opacity: 1;
    color: oklch(var(--accent-300) / var(--tw-text-opacity, 1));
} 
 
.px-3 {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
}
 
.bg-accent-500\/20 {
    background-color: oklch(var(--accent-500) / .2);
}
 .to-foreground-950\/50 {
    --tw-gradient-to: oklch(var(--foreground-950) / .5) var(--tw-gradient-to-position);
} 
.via-foreground-950\/70 {
    --tw-gradient-to: #fff0 var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), oklch(var(--foreground-950) / .7) var(--tw-gradient-via-position), var(--tw-gradient-to);
} 
.from-foreground-950\/90 {
    --tw-gradient-from: oklch(var(--foreground-950) / .9) var(--tw-gradient-from-position);
    --tw-gradient-to: #fff0 var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
} 
.bg-gradient-to-r {
    background-image: linear-gradient(to right, var(--tw-gradient-stops));
}

.hover\:border-primary-400\/50:hover {
    border-color: oklch(var(--primary-400) / .5);
} 
.transition-all {
    transition-property: all;
    transition-duration: 0.15s;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
} 
.backdrop-blur-sm {
    --tw-backdrop-blur: blur(4px);
    backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

.bg-primary-500\/20 {
    background-color: oklch(var(--primary-500) / .2);
}

.text-primary-400 {
    --tw-text-opacity: 1;
    color: oklch(var(--primary-400) / var(--tw-text-opacity, 1));
}
.px-7 {
    padding-left: 1.75rem;
    padding-right: 1.75rem;
}
.py-3\.5 {
    padding-top: 0.875rem;
    padding-bottom: 0.875rem;
}
  /* TYPES */
    .lp-types-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:20px}
    .lp-type-card{background:#fff;border:1.5px solid #e8e8e8;border-radius:16px;padding:28px;transition:all .3s;cursor:default}
    .lp-type-card:hover{border-color:#059467;box-shadow:0 8px 32px rgba(5,148,103,.12);transform:translateY(-4px)}
    .lp-type-card-wide{grid-column:1/-1}
    .lp-type-icon{width:48px;height:48px;background:#e8f5f0;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:16px;font-size:1.4rem;color:#059467}
    .lp-type-title{color:#1a1a1a;font-size:1rem;font-weight:700;margin-bottom:8px}
    .lp-type-desc{color:#666;font-size:.87rem;line-height:1.6;margin-bottom:14px}
    .lp-type-list{list-style:none;display:flex;flex-direction:column;gap:6px;margin-bottom:16px}
    .lp-type-list li{display:flex;align-items:center;gap:8px;color:#444;font-size:.85rem}
    .lp-type-list li i{color:#059467;font-size:.9rem;flex-shrink:0}
    .lp-type-price{color:#059467;font-size:1rem;font-weight:700;border-top:1px solid #f0f0f0;padding-top:12px;margin-top:auto}

.bg-background-100 {
    --tw-bg-opacity: 1;
    background-color: oklch(var(--background-100) / var(--tw-bg-opacity, 1));
}
 /* ADVANTAGES */
    .lp-adv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
    .lp-adv-card{background:#fff;border:1.5px solid #e8e8e8;border-radius:20px;padding:28px 24px;display:flex;flex-direction:column;gap:12px;position:relative;overflow:hidden;transition:all .3s}
    .lp-adv-card:hover{border-color:#059467;box-shadow:0 8px 32px rgba(5,148,103,.12);transform:translateY(-4px)}
    .lp-adv-card-accent{background:#059467;border-color:#059467;grid-column:span 1}
    .lp-adv-card-accent:hover{box-shadow:0 8px 32px rgba(5,148,103,.35);border-color:#047a56}
    .lp-adv-num{font-size:3.5rem;font-weight:800;color:rgba(5,148,103,.1);line-height:1;position:absolute;top:16px;right:20px;font-family:'Montserrat',sans-serif}
    .lp-adv-ico{width:52px;height:52px;background:#e8f5f0;border-radius:14px;display:flex;align-items:center;justify-content:center;color:#059467;font-size:1.5rem;flex-shrink:0}
    .lp-adv-title{color:#1a1a1a;font-size:1rem;font-weight:700;line-height:1.3}
    .lp-adv-desc{color:#666;font-size:.87rem;line-height:1.65;flex:1}
    .lp-adv-badge{display:inline-flex;align-items:center;background:rgba(255,255,255,.2);color:#fff;font-size:.78rem;font-weight:700;padding:4px 14px;border-radius:980px;width:fit-content;margin-top:4px}
    @media(max-width:900px){.lp-adv-grid{grid-template-columns:repeat(2,1fr)}}
    @media(max-width:600px){.lp-adv-grid{grid-template-columns:1fr}}

.element-d_photo_item .element-d__images a{
    height: 240px;
    overflow: hidden;
    display: block;
    margin: 0 3px;
}
.element-d_photo_item .element-d__images a img {    object-fit: cover;
    max-width: 100%;
    height: 100%;
    vertical-align: middle;
    border-style: none;
    width: 100%;}

 .element-d_photo_item  {
    border: 1px solid #05946738;
    border-radius: 5px;
    padding: 5px;
    margin: 5px;
}
.mb-14 {
    margin-bottom: 3.5rem;
}

