/* ============================================================
   engine.css — системные стили DLE, перекрашенные под палитру
   Подключается ДО styles.css
   Палитра: #2D1B3D (тёмный), #C9A961 (золото), #F8F2F8 (лаванда),
            #3A2540 (тёмный текст), #554355 (серый текст)
   ============================================================ */
/* === ENGINE.CSS — системные стили DLE, перекрашенные === */

/* Поля форм */
select, textarea, input[type="text"], input[type="password"], input[type="file"],
input[type="email"], input[type="url"], input[type="search"], input[type="tel"] {
  display: inline-block;
  width: 100%;
  max-width: 400px;
  padding: 10px 14px;
  border: 1px solid rgba(58, 37, 64, 0.12);
  border-radius: 8px;
  background: #fff;
  font-family: 'Segoe UI', sans-serif;
  font-size: 14px;
  color: #3A2540;
  box-sizing: border-box;
  outline: none;
  transition: border-color 0.2s;
}
textarea { resize: vertical; min-height: 120px; width: 100%; max-width: 100%; }
select:focus, textarea:focus, input:focus { border-color: #C9A961; }
input[type="radio"], input[type="checkbox"] { accent-color: #C9A961; width: auto; }
input[type="submit"], input[type="button"] { width: auto; }

/* Кнопки */
.btn, .bbcodes, .ui-button {
  display: inline-block;
  padding: 10px 22px;
  border: none;
  border-radius: 8px;
  background: #C9A961;
  color: #fff !important;
  font-size: 14px;
  font-weight: 600;
  font-family: 'Segoe UI', sans-serif;
  cursor: pointer;
  text-decoration: none !important;
  transition: background 0.2s;
  box-sizing: border-box;
}
.btn:hover, .bbcodes:hover, .ui-button:hover { background: #D4AF37; }
.btn:active, .bbcodes:active { background: #B8932E; }
.btn_white, .btn_white:hover {
  background: #F8F2F8; color: #3A2540 !important;
  border: 1px solid rgba(58, 37, 64, 0.12);
}
.btn_border {
  background: none; color: #C9A961 !important;
  box-shadow: inset 0 0 0 1px rgba(201, 169, 97, 0.4);
}
.btn_border:hover { color: #D4AF37 !important; box-shadow: inset 0 0 0 1px #D4AF37; }

/* Цитаты и спойлеры в тексте */
.quote, blockquote {
  padding: 12px 16px 12px 40px;
  margin: 16px 0;
  border-left: 3px solid #C9A961;
  background: #F8F2F8;
  border-radius: 0 8px 8px 0;
  font-style: italic;
  color: #554355;
  position: relative;
}
.quote:before, blockquote:before {
  content: "\201C";
  position: absolute;
  left: 8px; top: 0;
  font-size: 3em;
  color: rgba(201, 169, 97, 0.25);
  font-family: Georgia, serif;
}
.title_quote, .title_spoiler {
  padding: 10px 16px;
  background: #F8F2F8;
  border: 1px solid rgba(58, 37, 64, 0.1);
  border-radius: 8px;
  font-weight: bold;
  color: #3A2540;
}
.text_spoiler {
  padding: 10px 16px;
  background: #F8F2F8;
  border: 1px solid rgba(58, 37, 64, 0.1);
  border-top: 0;
  border-radius: 0 0 8px 8px;
  color: #554355;
}
.scriptcode {
  padding: 12px 16px;
  background: #f5f0f5;
  border: 1px solid rgba(58, 37, 64, 0.1);
  border-radius: 8px;
  font-family: "Courier New", monospace;
  color: #3A2540;
  overflow: auto;
}
.hide { background: #F8F2F8; padding: 10px; border-radius: 6px; color: #3A2540; }
.hide a { color: #8B6914; }
.hide a:hover { color: #C9A961; }

/* Рейтинг */
.rating, .unit-rating { width: 150px; height: 30px; }
.rating { font-size: 11px; }
.unit-rating {
  list-style: none; margin: 0; padding: 0;
  position: relative;
  background-image: url(data:image/png;base64,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);
  background-position: 0 -30px;
  -webkit-background-size: 30px auto;
  background-size: 30px auto;
}
.unit-rating li { text-indent: -90000px; float: left; }
.unit-rating li a {
  display: block; width: 30px; height: 30px;
  position: absolute; text-indent: -9000px; z-index: 17;
}
.unit-rating li a:hover { background-position: 0 -60px; z-index: 2; left: 0; }
.unit-rating a.r1-unit { left: 0; } .unit-rating a.r1-unit:hover { width: 30px; }
.unit-rating a.r2-unit { left: 30px; } .unit-rating a.r2-unit:hover { width: 60px; }
.unit-rating a.r3-unit { left: 60px; } .unit-rating a.r3-unit:hover { width: 90px; }
.unit-rating a.r4-unit { left: 90px; } .unit-rating a.r4-unit:hover { width: 120px; }
.unit-rating a.r5-unit { left: 120px; } .unit-rating a.r5-unit:hover { width: 150px; }
.unit-rating li.current-rating { background-position: 0 0; position: absolute; height: 30px; text-indent: -9000px; z-index: 1; }
.comment .rating, .comment .unit-rating { width: 75px; height: 15px; }
.comment .unit-rating { background-position: 0 -15px; -webkit-background-size: 15px auto; background-size: 15px auto; }
.comment .unit-rating li a { width: 15px; height: 15px; }
.comment .unit-rating a.r1-unit { left: 0; } .comment .unit-rating a.r1-unit:hover { width: 15px; }
.comment .unit-rating a.r2-unit { left: 15px; } .comment .unit-rating a.r2-unit:hover { width: 30px; }
.comment .unit-rating a.r3-unit { left: 30px; } .comment .unit-rating a.r3-unit:hover { width: 45px; }
.comment .unit-rating a.r4-unit { left: 45px; } .comment .unit-rating a.r4-unit:hover { width: 60px; }
.comment .unit-rating a.r5-unit { left: 60px; } .comment .unit-rating a.r5-unit:hover { width: 75px; }
.comment .unit-rating li.current-rating { height: 15px; }
.ratingplus { color: #70bb39; }
.ratingminus { color: #c0392b; }
.ratingzero { color: #887788; }

/* Капча */
.c-capcha:after, .dle-captcha:after { clear: both; display: block; content: ""; }
.c-capcha > a, .dle-captcha > a { float: left; margin-right: 5px; }
.c-capcha img { width: 100px; height: 39px; border-radius: 8px 0 0 8px; border: 1px solid rgba(58,37,64,0.12); }
.c-capcha > input { float: left; width: 150px; border-left: 0; border-radius: 0 8px 8px 0; text-align: center; }
.dle-captcha img { width: 130px; height: 46px; border-radius: 8px; }
.dle-captcha > input { float: left; width: 130px; }

/* Диалоги jQuery UI */
.ui-widget-overlay { background: #2D1B3D; opacity: 0.5; position: fixed; top:0; left:0; right:0; bottom:0; z-index: 999; }
.ui-dialog {
  border-radius: 12px; box-shadow: 0 8px 40px -10px rgba(45,27,61,0.3);
  border: 1px solid rgba(58,37,64,0.15); background: #fff; padding: 0;
  position: absolute; width: 420px; overflow: hidden;
}
.ui-dialog-titlebar { padding: 16px 20px; border-bottom: 1px solid rgba(58,37,64,0.08); position: relative; }
.ui-dialog-title { font-weight: bold; color: #3A2540; }
.ui-dialog-titlebar-close { position: absolute; right: 10px; top: 14px; }
.ui-dialog-content { padding: 20px; color: #554355; }
.ui-dialog .ui-dialog-buttonpane { padding: 16px 20px; border-top: 1px solid rgba(58,37,64,0.08); text-align: center; }
.ui-dialog label { color: #554355; }
.ui-dialog input, .ui-dialog textarea { width: 100%; max-width: 100%; }

/* Выпадающее меню "редактировать" */
#dropmenudiv {
  padding: 6px 0; min-width: 140px; display: none;
  border-radius: 8px; border: 1px solid rgba(58,37,64,0.12);
  box-shadow: 0 8px 24px rgba(45,27,61,0.15); background: #fff;
}
#dropmenudiv a { display: block; padding: 6px 18px; color: #3A2540; text-decoration: none; }
#dropmenudiv a:hover { background: #C9A961; color: #fff; }

/* Доп. поля (профиль, формы) */
table.xfields { width: 100%; }
.xfields textarea, .xprofile textarea { width: 100%; height: 120px; }
.xfieldsnote { color: #887788; font-size: 0.9em; }
.xfieldsrow { padding-top: 5px; clear: both; }
.xfieldscolleft { float: left; width: 30%; padding-top: 10px; }
.xfieldscolright { float: left; width: 70%; }

/* Загрузчик AJAX */
#loading-layer { display: none; position: fixed; top:0; left:0; width:100%; height:100%; background: rgba(45,27,61,0.9); z-index: 9999; }
#loading-layer:before, #loading-layer:after { content:""; border-radius:50%; position:absolute; left:50%; top:50%; width:30px; height:30px; margin:-15px 0 0 -15px; background:#C9A961; }
#loading-layer:after { background:#D4AF37; }
#loading-layer:before { animation: load1 .8s infinite ease; }
#loading-layer:after { animation: load2 .8s infinite ease; }
@keyframes load1 { 0%,80%,100% { transform: translate(-100%,0); } 40% { transform: translate(50%,0) scale(.6,.6); } }
@keyframes load2 { 0%,80%,100% { transform: translate(100%,0); } 40% { transform: translate(-50%,0) scale(.6,.6); } }

/* Смайлы */
.emoji { border: none; vertical-align: middle; width: 22px; height: 22px; }
.emoji_box { width: 100%; max-width: 390px; }
.emoji_category { padding: 7px; clear: both; }
.emoji_list { width: 100%; font-size: 2em; }
.emoji_symbol { float: left; margin-bottom: 10px; width: 12.5%; text-align: center; }
.emoji_symbol a { cursor: pointer; text-decoration: none; }

/* BB-редактор (минимально, без base64) */
.bb-pane { padding: 6px 10px; border: 1px solid rgba(58,37,64,0.12); border-bottom: 0; border-radius: 8px 8px 0 0; background: #F8F2F8; }
.bb-pane:after { content: ""; display: block; clear: both; }
.bb-btn { color: #3A2540; float: left; padding: 6px 10px; cursor: pointer; border-radius: 4px; }
.bb-btn:hover { color: #C9A961; }
.bb-editor textarea { width: 100%; border-radius: 0 0 8px 8px; border: 1px solid rgba(58,37,64,0.12); }
.bb-pane-dropdown { position: absolute; z-index: 1000; display: none; min-width: 180px; border: 1px solid rgba(58,37,64,0.12); border-radius: 8px; background: #fff; box-shadow: 0 4px 16px rgba(45,27,61,0.12); max-height: 350px; overflow: auto; }
.bb-pane-dropdown > li > a { display: block; padding: 4px 12px; color: #3A2540; text-decoration: none; }
.bb-pane-dropdown > li > a:hover { background: #F8F2F8; color: #C9A961; }

/* Голосование */
.voteprogress, .pollprogress { overflow: hidden; height: 6px; margin-bottom: 10px; background: #e7e0e7; border-radius: 3px; margin-top: 6px; }
.voteprogress span, .pollprogress span { height: 6px; display: block; background: #C9A961; }

/* Таблицы PM */
.userstop td, .pm td.pm_list, .pm td.pm_head { border-bottom: 1px solid rgba(58,37,64,0.08); padding: 10px 4px; }
table.pm, table.userstop { width: 100%; }
.userstop thead td, .pm td.pm_head { font-weight: bold; color: #3A2540; }
