/*
Theme Name: PLRA Theme
Author: IT Company Razvitie
Version: 2025
Requires at least: 5.2
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v3 or Later
License URI: https://www.gnu.org/licenses/gpl.html
Text Domain: PLRA

PLRA WordPress Theme 2025
PLRA is distributed under the terms of the GNU GPL
*/

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}html{scroll-behavior:smooth}body{line-height:1}a{text-decoration-skip-ink:auto}a[href^="tel"]{color:inherit;text-decoration:none}button{outline:0}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}q{display:inline;font-style:italic}q:before{content:'"';font-style:normal}q:after{content:'"';font-style:normal}textarea,input[type="text"],input[type="button"],input[type="submit"],input[type="reset"],input[type="search"],input[type="password"]{-webkit-appearance:none;appearance:none;border-radius:0}input[type="search"]{-webkit-appearance:textfield}table{border-collapse:collapse;border-spacing:0}th,td{padding:2px}big{font-size:120%}small,sup,sub{font-size:80%}sup{vertical-align:super}sub{vertical-align:sub}dd{margin-left:20px}kbd,tt{font-family:courier;font-size:12px}ins{text-decoration:underline}del,strike,s{text-decoration:line-through}dt{font-weight:bold}address,cite,var{font-style:italic}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
.sticky{}.bypostauthor{}.wp-caption{}.wp-caption-text{}.gallery-caption{}.alignright{}.alignleft{}.aligncenter{}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important;word-break:normal}
.screen-reader-text:focus{background-color:#f7f7f7;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip:auto!important;-webkit-clip-path:none;clip-path:none;color:#007acc;display:block;font-size:14px;font-size:.875rem;font-weight:700;height:auto;right:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}
.skip-link{left:-9999rem;top:2.5rem;z-index:999999999;text-decoration:underline}
.skip-link:focus{display:block;left:6px;top:7px;font-size:14px;font-weight:600;text-decoration:none;line-height:normal;padding:15px 23px 14px;z-index:100000;right:auto}
.visually-hidden:not(:focus):not(:active), .form-allowed-tags:not(:focus):not(:active){position:absolute !important;height:1px;width:1px;overflow:hidden;clip:rect(1px 1px 1px 1px);clip:rect(1px, 1px, 1px, 1px);white-space:nowrap}


/*
  styledRichText.css — базовая библиотека для оформления HTML,
  генерируемого WYSIWYG-редакторами (WordPress Gutenberg/Classic, и др.).
  Стили применяются ТОЛЬКО внутри контейнера с классом .styledRichText
  и не вмешиваются в глобальные стили сайта.

  Использование:
  <div class="styledRichText"> ... HTML из редактора ... </div>
*/

/* ===============================
   Темизация и базовые переменные
   =============================== */
.styledRichText {
  /* Цвета */
  --rt-bg: #ffffff;
  --rt-text: #ffffff;           /* gray-900 */
  --rt-muted: #6b7280;          /* gray-500 */
  --rt-border: #e5e7eb;         /* gray-200 */
  --rt-accent: #2563eb;         /* blue-600 */
  --rt-accent-contrast: #ffffff;
  --rt-mark-bg: #fff3a3;        /* soft yellow */

  /* Типографика */
  --rt-font-body: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, Arial, "Apple Color Emoji", "Segoe UI Emoji";
  --rt-font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --rt-base-size: clamp(15px, 0.97vw + 12px, 18px);
  --rt-line: 1.75;

  /* Интервалы и радиусы */
  --rt-space-1: .25rem;
  --rt-space-2: .5rem;
  --rt-space-3: .75rem;
  --rt-space-4: 1rem;
  --rt-space-5: 1.5rem;
  --rt-space-6: 2rem;
  --rt-space-7: 2.5rem;
  --rt-radius: 12px;
  --rt-shadow: 0 1px 2px rgba(0,0,0,.04), 0 8px 24px rgba(0,0,0,.06);

  color: #FFF;
  //background: var(--rt-bg);
  font-family: var(--rt-font-body);
  font-size: var(--rt-base-size);
  line-height: var(--rt-line);
  word-wrap: break-word;
}

@media (prefers-color-scheme: dark) {
  .styledRichText {
    --rt-bg: #0b0f17;
    --rt-text: #e5e7eb;          /* gray-200 */
    --rt-muted: #9ca3af;         /* gray-400 */
    --rt-border: #1f2937;        /* gray-800 */
    --rt-accent: #60a5fa;        /* blue-400 */
    --rt-mark-bg: #3b3a1a;
  }
}

/* Сброс внутренних отступов и внешних отступов на краях контейнера */
.styledRichText > *:first-child { margin-top: 0 !important; }
.styledRichText > *:last-child  { margin-bottom: 0 !important; }

/* ===============================
   Базовая типографика
   =============================== */
.styledRichText p { margin: 0 0 var(--rt-space-5); }
.styledRichText small { font-size: 0.875em; color: var(--rt-muted); }
.styledRichText strong, .styledRichText b { font-weight: 700; }
.styledRichText em, .styledRichText i { font-style: italic; }
.styledRichText mark { background: var(--rt-mark-bg); padding: 0 .2em; border-radius: 3px; }

/* Заголовки */
.styledRichText h1,
.styledRichText h2,
.styledRichText h3,
.styledRichText h4,
.styledRichText h5,
.styledRichText h6 {
  font-weight: 800;
  line-height: 1.25;
  margin: var(--rt-space-6) 0 0 0;
}
.styledRichText h1 { font-size: clamp(2rem, 3vw, 2.75rem); }
.styledRichText h2 { font-size: clamp(1.75rem, 2.5vw, 2.25rem); }
.styledRichText h3 { font-size: clamp(1.5rem, 2vw, 1.875rem); }
.styledRichText h4 { font-size: 1.25rem; }
.styledRichText h5 { font-size: 1.125rem; }
.styledRichText h6 { font-size: 1rem; color: var(--rt-muted); }

/* Ссылки */
.styledRichText a {
  color: var(--rt-accent);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.styledRichText a:hover { text-decoration-thickness: 2px; }
.styledRichText a:focus { outline: 2px solid var(--rt-accent); outline-offset: 2px; border-radius: 4px; text-decoration: none; }

/* Горизонтальная линия */
.styledRichText hr {
  border: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--rt-border), transparent);
  margin: var(--rt-space-7) 0;
}

/* ===============================
   Списки
   =============================== */
.styledRichText ul,
.styledRichText ol {
  margin: 0 0 var(--rt-space-5);
  padding-left: 1.25em;
}
.styledRichText ul { list-style: disc; }
.styledRichText ol { list-style: decimal; }
.styledRichText li { margin: .35em 0; }
.styledRichText li::marker { color: var(--rt-muted); }
.styledRichText li > ul,
.styledRichText li > ol { margin-top: .35em; }

/* Описательные списки */
.styledRichText dl { margin: 0 0 var(--rt-space-5); }
.styledRichText dt { font-weight: 700; }
.styledRichText dd { margin: 0 0 var(--rt-space-3) 1.25em; color: var(--rt-muted); }

/* ===============================
   Коды, преформатированный текст
   =============================== */
.styledRichText code,
.styledRichText kbd,
.styledRichText samp {
  font-family: var(--rt-font-mono);
  font-size: .95em;
}
.styledRichText code:not(pre code) {
  background: color-mix(in lab, var(--rt-border) 60%, transparent);
  padding: .15em .4em;
  border-radius: 6px;
  border: 1px solid var(--rt-border);
}
.styledRichText kbd {
  background: color-mix(in lab, var(--rt-border) 70%, transparent);
  border: 1px solid var(--rt-border);
  border-bottom-width: 3px;
  padding: .15em .4em;
  border-radius: 6px;
}
.styledRichText pre {
  font-family: var(--rt-font-mono);
  font-size: .95em;
  background: color-mix(in lab, var(--rt-border) 80%, transparent);
  border: 1px solid var(--rt-border);
  border-radius: var(--rt-radius);
  padding: var(--rt-space-4);
  overflow: auto;
  box-shadow: var(--rt-shadow);
  tab-size: 2;
}
.styledRichText pre code { background: none; border: 0; padding: 0; }

/* ===============================
   Цитаты
   =============================== */
.styledRichText blockquote {
  margin: var(--rt-space-5) 0;
  padding: var(--rt-space-4) var(--rt-space-5);
  border-left: 4px solid var(--rt-accent);
  background: color-mix(in lab, var(--rt-border) 15%, transparent);
  border-radius: 0 var(--rt-radius) var(--rt-radius) 0;
}
.styledRichText blockquote cite {
  display: block;
  color: var(--rt-muted);
  font-size: .95em;
  margin-top: var(--rt-space-2);
}

/* Gutenberg pullquote */
.styledRichText .wp-block-pullquote {
  margin: var(--rt-space-6) 0;
  padding: var(--rt-space-5) var(--rt-space-6);
  border: 1px dashed var(--rt-border);
  border-radius: var(--rt-radius);
  text-align: center;
}
.styledRichText .wp-block-pullquote blockquote { border: 0; background: none; padding: 0; }

/* ===============================
   Медиа: изображения, figure, видео, аудио
   =============================== */
.styledRichText img,
.styledRichText video,
.styledRichText svg,
.styledRichText canvas {
  max-width: 100%;
  height: auto;
}
.styledRichText figure { margin: var(--rt-space-5) 0; }
.styledRichText figure > img { display: block; border-radius: var(--rt-radius); box-shadow: var(--rt-shadow); }
.styledRichText figcaption { color: var(--rt-muted); font-size: .95em; margin-top: var(--rt-space-2); text-align: center; }

/* Gutenberg image block */
.styledRichText .wp-block-image img { border-radius: var(--rt-radius); }
.styledRichText .wp-caption .wp-caption-text { color: var(--rt-muted); font-size: .95em; margin-top: var(--rt-space-2); }

/* Встраиваемые медиа (iframe, embeds) */
.styledRichText .wp-block-embed,
.styledRichText .wp-block-video,
.styledRichText .wp-block-audio,
.styledRichText .wp-block-embed__wrapper {
  margin: var(--rt-space-5) 0;
}
.styledRichText .wp-block-embed__wrapper iframe,
.styledRichText iframe[allowfullscreen],
.styledRichText iframe[src*="youtube"],
.styledRichText iframe[src*="vimeo"] {
  width: 100%;
  aspect-ratio: 16/9;
  height: auto;
  display: block;
  border: 0;
  border-radius: var(--rt-radius);
  box-shadow: var(--rt-shadow);
}

/* Галереи */
.styledRichText .wp-block-gallery,
.styledRichText .gallery {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: var(--rt-space-3);
  margin: var(--rt-space-5) 0;
}
.styledRichText .wp-block-gallery img,
.styledRichText .gallery img { width: 100%; height: auto; display: block; border-radius: calc(var(--rt-radius) - 4px); }

/* ===============================
   Таблицы
   =============================== */
.styledRichText table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  margin: var(--rt-space-5) 0;
  border: 1px solid var(--rt-border);
  border-radius: var(--rt-radius);
  overflow: hidden;
  box-shadow: var(--rt-shadow);
}
.styledRichText thead th { background: color-mix(in lab, var(--rt-border) 85%, transparent); }
.styledRichText th,
.styledRichText td { padding: .75rem 1rem; text-align: left; border-bottom: 1px solid var(--rt-border); }
.styledRichText tbody tr:last-child td { border-bottom: 0; }
.styledRichText tbody tr:nth-child(odd) td { background: color-mix(in lab, var(--rt-border) 92%, transparent); }

/* Gutenberg table block alignment helpers */
.styledRichText .is-style-stripes tbody tr:nth-child(odd) td { background: color-mix(in lab, var(--rt-border) 85%, transparent); }

/* ===============================
   Кнопки, файлы (Gutenberg blocks)
   =============================== */
.styledRichText .wp-block-buttons { display: flex; flex-wrap: wrap; gap: var(--rt-space-3); margin: var(--rt-space-5) 0; }
.styledRichText .wp-block-button .wp-block-button__link {
  display: inline-block;
  background: var(--rt-accent);
  color: var(--rt-accent-contrast);
  padding: .625rem 1rem;
  border-radius: calc(var(--rt-radius) - 4px);
  text-decoration: none;
  box-shadow: var(--rt-shadow);
}
.styledRichText .wp-block-button.is-style-outline .wp-block-button__link {
  background: transparent;
  color: var(--rt-accent);
  border: 1px solid var(--rt-accent);
}

/* File block */
.styledRichText .wp-block-file { display: flex; align-items: center; gap: var(--rt-space-3); padding: var(--rt-space-3) 0; }
.styledRichText .wp-block-file__button { background: var(--rt-accent); color: var(--rt-accent-contrast); padding: .5rem .875rem; border-radius: 8px; text-decoration: none; }

/* ===============================
   Аббревиатуры и прочее
   =============================== */
.styledRichText abbr[title] { border-bottom: 1px dotted var(--rt-muted); cursor: help; text-underline-offset: 3px; }
.styledRichText sup, .styledRichText sub { font-size: 0.8em; }
.styledRichText sup { vertical-align: super; }
.styledRichText sub { vertical-align: sub; }

/* ===============================
   Выравнивание (classic/Gutenberg): alignleft/alignright/aligncenter
   =============================== */
.styledRichText .alignleft  { float: left;  margin: 0 var(--rt-space-4) var(--rt-space-4) 0; }
.styledRichText .alignright { float: right; margin: 0 0 var(--rt-space-4) var(--rt-space-4); }
.styledRichText .aligncenter { display: block; margin-left: auto; margin-right: auto; text-align: center; }
/* На узких экранах снимаем обтекание */
@media (max-width: 640px) {
  .styledRichText .alignleft,
  .styledRichText .alignright { float: none; margin: var(--rt-space-4) auto; display: block; }
}

/* Широкие/полные (ограниченно, без знания сетки сайта) */
.styledRichText .alignwide  { width: 100%; }
.styledRichText .alignfull  { width: 100%; margin-left: 0; margin-right: 0; }

/* ===============================
   Gutenberg: drop cap
   =============================== */
.styledRichText .has-drop-cap:not(:focus)::first-letter {
  float: left;
  font-size: 3.2em;
  line-height: .8;
  padding: .1em .1em 0 0;
  font-weight: 800;
}

/* ===============================
   Формы (минимальная стилизация)
   =============================== */
.styledRichText input[type="text"],
.styledRichText input[type="email"],
.styledRichText input[type="url"],
.styledRichText input[type="search"],
.styledRichText input[type="password"],
.styledRichText textarea,
.styledRichText select {
  width: 100%;
  padding: .625rem .75rem;
  border: 1px solid var(--rt-border);
  border-radius: 10px;
  background: color-mix(in lab, var(--rt-border) 92%, transparent);
}
.styledRichText textarea { min-height: 8rem; resize: vertical; }
.styledRichText input:focus,
.styledRichText textarea:focus,
.styledRichText select:focus { outline: 2px solid var(--rt-accent); outline-offset: 2px; }

/* ===============================
   Утилиты интервалов для контента
   =============================== */
.styledRichText .is-small   { font-size: .875em; }
.styledRichText .is-muted   { color: var(--rt-muted); }
.styledRichText .mt-0 { margin-top: 0 !important; }
.styledRichText .mb-0 { margin-bottom: 0 !important; }
.styledRichText .mt-4 { margin-top: var(--rt-space-4) !important; }
.styledRichText .mb-4 { margin-bottom: var(--rt-space-4) !important; }

/* ===============================
   Печать (упрощение)
   =============================== */
@media print {
  .styledRichText { color: #000; background: #fff; }
  .styledRichText a { color: #000; text-decoration: underline; }
  .styledRichText .wp-block-button .wp-block-button__link { box-shadow: none; }
  .styledRichText iframe { display: none; }
}

.styledRichText tbody tr:nth-child(odd) td {
	    background: 
 color-mix(in lab, #e1e1e1 92%, transparent) !important;
}
}