/* Verdant — standalone light visual layer */
:root {
  --primary-color: #20b84b;
  --primary-hover: #38ca60;
  --accent-color: #137f31;
  --btn-bg: #1ca945;
  --btn-hover-bg: #2bc454;
  --btn-font-color: #031006;
  --white: #fff;
  --light-bg: #eef4ef;
  --dark-bg: #f4f8f4;
  --footer-bg: #f9fbf9;
  --text-color: #2d3a30;
  --link-hover: #15923a;
  --border-color: rgba(32,184,75,.13);
  --input-border: #dce6de;
  --input-focus-border: #20b84b;
  --footer-text: #667268;
  --footer-link-hover: #38ca60;
  --shadow-overlay: rgba(20,42,26,.72);
}

html { color-scheme: light; background: #f4f8f4; }
body {
  color: #2d3a30;
  background:
    radial-gradient(circle at 12% -8%, rgba(32,184,75,.11), transparent 31rem),
    radial-gradient(circle at 90% 22rem, rgba(40,120,58,.08), transparent 30rem),
    linear-gradient(180deg, #f9fbf9 0, #eff5f0 48rem, #f4f8f4 100%);
  font-family: 'Manrope', sans-serif;
}
body:before {
  content: '';
  position: fixed;
  inset: 0;
  z-index: -1;
  opacity: .22;
  pointer-events: none;
  background-image: linear-gradient(rgba(32,184,75,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(32,184,75,.025) 1px, transparent 1px);
  background-size: 44px 44px;
}
a { color: #2d3a30; }
a:hover, a:focus { color: #15923a; }
button, textarea, input, select { font-family: 'Manrope', sans-serif !important; }
input[type="text"], input[type="password"], select, textarea {
  color: #1f2b22;
  background: #f8fbf8;
  box-shadow: inset 0 0 0 1px #dce6de, inset 1px 2px 6px rgba(23,50,29,.09);
}
input::placeholder, textarea::placeholder { color: #6e7a71; opacity: .72; }

.wrap { padding-top: 0; }
.canvas-bound { max-width: 1240px; }
.pearl-shell { background: transparent; border-radius: 0; box-shadow: none; }
.content { padding: 20px 0 36px; }

.canopy-bar {
  margin: 18px auto 8px;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(32,184,75,.15);
  border-radius: 18px;
  box-shadow: 0 20px 60px rgba(23,50,29,.10), inset 0 1px rgba(255,255,255,.025);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}
.canopy-inner { min-height: 78px; padding: 0 22px; }
.canopy-bar.sticky { margin: 0; background: rgba(255,255,255,.97); border-radius: 0 0 16px 16px; }
.leafmark {
  display: flex;
  width: 190px;
  height: 58px;
  padding: 8px 0 6px 56px;
  position: relative;
  flex-direction: column;
  justify-content: center;
  color: #17231a;
  text-transform: uppercase;
}
.leafmark:before {
  content: '';
  box-sizing: border-box;
  width: 46px;
  height: 46px;
  position: absolute;
  left: 0;
  top: 50%;
  padding: 11px;
  transform: translateY(-50%);
  background: #20b84b url('../images/logo.svg') center/24px no-repeat;
  border-radius: 13px;
  filter: none;
  box-shadow: 0 0 0 1px rgba(32,184,75,.28), 0 9px 25px rgba(32,184,75,.24);
}
.leafmark:hover:before { transform: translateY(-50%) scale(1.04); }
.leafmark__name { font: 700 19px/1 'Unbounded', sans-serif; letter-spacing: -1px; white-space: nowrap; }
.leafmark__name strong { color: #20b84b; font-weight: 700; }
.leafmark small { margin-top: 6px; color: #6e7a71; font: 600 7px/1 'Manrope', sans-serif; letter-spacing: .2px; white-space: nowrap; text-transform: none; }

.garden-nav { padding: 0 18px; gap: 3px; }
.garden-nav > li { margin: 0; }
.garden-nav > li > a {
  height: 42px;
  padding: 0 12px;
  color: #68746b;
  border-radius: 10px;
  font: 700 12px/42px 'Manrope', sans-serif;
  opacity: 1;
}
.garden-nav > li:hover > a, .garden-nav > li > a.is-active { color: #20b84b; background: rgba(32,184,75,.09); box-shadow: none; }
.garden-panel {
  top: calc(100% + 8px);
  padding: 17px;
  background: #ffffff;
  border: 1px solid rgba(32,184,75,.19);
  border-top: 1px solid rgba(32,184,75,.19);
  border-radius: 14px;
  box-shadow: 0 25px 65px rgba(23,50,29,.14);
}
.garden-panel:before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: -12px;
  height: 12px;
  background: transparent;
}
.garden-nav > li:focus-within > .garden-panel {
  pointer-events: auto;
  opacity: 1;
  transform: translateY(0);
}
.garden-column li { color: #6e7a71; }
.garden-column a { color: #526055; border-radius: 7px; }
.garden-column a:hover { color: #071008; background: #20b84b; }
.quickfind { max-width: 210px; }
.quickfind-box input, .quickfind-box input:focus { height: 40px; padding-left: 15px; color: #2a382d; background: #f7faf7; border-radius: 11px; box-shadow: inset 0 0 0 1px #dce6de; }
.quickfind-box button { top: 0; color: #20b84b !important; }
.member-pill { height: 40px; line-height: 40px; color: #061008; border-radius: 11px; text-transform: none; box-shadow: 0 8px 20px rgba(32,184,75,.16); }

.content-deck {
  background: #ffffff;
  border: 1px solid rgba(32,184,75,.10);
  border-radius: 16px;
  box-shadow: 0 14px 38px rgba(23,50,29,.06);
}
.content-deck:hover { box-shadow: 0 18px 46px rgba(23,50,29,.09); }
.deck-header { border-bottom-color: #e0e8e1; }
.deck-title { color: #061008; background: #20b84b; border-radius: 10px; }
.deck-title:hover { color: #031006; background: #38ca60; }
.deck-tabs span { color: #606d63; background: #eaf2eb; border-color: #dce6de; }
.deck-tabs span.is-active { color: #20b84b; background: #f3f7f4; border-color: #20b84b; }

.media-tile { padding-right: 6px; padding-left: 6px; }
.media-tile__link {
  background: #f9fbf9;
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 15px;
  box-shadow: 0 11px 27px rgba(23,50,29,.11);
}
.media-tile__link:hover { border-color: rgba(32,184,75,.58); box-shadow: 0 20px 40px rgba(23,50,29,.14), 0 0 0 2px rgba(32,184,75,.09); transform: translateY(-7px); }
.media-tile__art { background: #f0f5f1; }
.media-tile__art:before { background: linear-gradient(180deg, transparent 52%, rgba(0,0,0,.72)); }
.media-tile__overlay { background: linear-gradient(180deg, rgba(2,8,3,.08), rgba(9,90,25,.58)); }
.media-tile__overlay .fa { color: #061008; background: #20b84b; border: 1px solid rgba(96,210,125,.55); box-shadow: 0 10px 28px rgba(23,50,29,.14), 0 0 22px rgba(32,184,75,.18); }

.hero-ribbon {
  padding: 22px 30px 16px;
  margin-bottom: 22px;
  background: radial-gradient(circle at 50% 130%, rgba(32,184,75,.12), transparent 43%), linear-gradient(135deg, #ffffff, #e8f1e9 55%, #f0f5f1);
  border: 1px solid rgba(32,184,75,.14);
  border-radius: 20px;
  box-shadow: 0 20px 55px rgba(23,50,29,.09), inset 0 1px rgba(255,255,255,.025);
}
.hero-ribbon .media-tile__link { border-color: rgba(255,255,255,.11); }
.hero-ribbon .owl-prev, .hero-ribbon .owl-next { color: #20b84b; background: #ffffff; border-color: #dce6de; }
.hero-ribbon .owl-prev:hover, .hero-ribbon .owl-next:hover { color: #061008; background: #20b84b; }
.hero-ribbon .owl-dot { background: #cad7cc !important; }
.hero-ribbon .owl-dot.active { background: #20b84b !important; }

.discovery-search {
  gap: 24px;
  margin: 12px 0 23px;
  padding: 15px 18px;
  background: linear-gradient(105deg, #f9fcf9, #f7faf7 55%, #f2f7f3);
  border: 1px solid rgba(32,184,75,.20);
  border-radius: 16px;
  box-shadow: 0 12px 34px rgba(23,50,29,.06);
}
.discovery-search__icon { color: #20b84b; background: #f7faf7; border-color: #20b84b; box-shadow: 0 0 0 5px rgba(32,184,75,.035), 0 8px 22px rgba(23,50,29,.06); }
.discovery-search__icon svg { stroke: #20b84b; }
.discovery-search__title { color: #15923a; }
.discovery-search__desc { color: #727e75; }
.discovery-search__form { background: #fff; border-color: #dce6de; box-shadow: 0 4px 15px rgba(23,50,29,.08); }
.discovery-search__form:focus-within { border-color: rgba(32,184,75,.65); box-shadow: 0 0 0 3px rgba(32,184,75,.08); }
.discovery-search__input { color: #334036 !important; }
.discovery-search__button { color: #061008 !important; background: linear-gradient(180deg, #32c758, #1aa542) !important; box-shadow: 0 6px 18px rgba(32,184,75,.20) !important; }
.discovery-search__button:hover { background: linear-gradient(180deg, #38ca60, #24b94b) !important; }

.category-hero {
  background: linear-gradient(105deg, #f8fbf8, #f7faf7 56%, #f9fcf9);
  border-color: rgba(32,184,75,.18);
  box-shadow: 0 14px 38px rgba(23,50,29,.07);
}
.category-hero__line { background: linear-gradient(180deg, #2fc756, #148f35); box-shadow: 0 4px 13px rgba(32,184,75,.20); }
.category-hero__icon { background: #f5f9f5; border-color: rgba(32,184,75,.2); box-shadow: 0 7px 22px rgba(23,50,29,.08), inset 0 0 0 7px rgba(32,184,75,.025); }
.category-hero__icon svg { stroke: #20b84b; }
.category-hero__title { color: #17231a !important; }
.category-hero__title span { color: #20b84b; }
.category-hero__desc { color: #69756c; }
.category-hero__dots { opacity: .16; background-image: radial-gradient(circle, #20b84b 2px, transparent 2.5px); }
.category-hero__content:after { background: linear-gradient(90deg, transparent, #f7faf7); }

.collection-stack .collection-row { margin-bottom: 30px; }
.collection-row__heading { color: #28352b; background: #f8fbf8; border-color: rgba(32,184,75,.17); box-shadow: 0 9px 26px rgba(23,50,29,.06); }
.collection-row__heading:hover { color: #17231a; border-color: rgba(32,184,75,.40); box-shadow: 0 14px 34px rgba(23,50,29,.09); }
.collection-row__line { background: linear-gradient(180deg, #31c958, #148f35); box-shadow: 0 3px 9px rgba(32,184,75,.20); }
.collection-row__title { color: #263329; }
.collection-row__arrow { color: #20b84b; }

.detail-page { --full-green: #20b84b; --full-border: rgba(32,184,75,.15); }
.detail-page .detail-card, .detail-page .watch-player, .detail-page .comments-panel, .detail-page .suggestions-panel { background: #ffffff; border-color: var(--full-border); box-shadow: 0 14px 40px rgba(23,50,29,.07); }
.detail-page .detail-card { background: linear-gradient(115deg, #ffffff, #f8fbf8 72%, #eff8f1); }
.detail-page .poster-shell { border-color: #d9e4db; box-shadow: 0 14px 34px rgba(23,50,29,.13), 0 0 0 2px rgba(32,184,75,.05); }
.detail-page .vote-strip, .detail-page .rating-chip { background: #f3f7f4; }
.detail-page .facts-list li { border-bottom-color: #e0e8e1; }
.detail-page .facts-list li > span:first-child { color: #1f2b22; }
.detail-page .facts-list a { color: #168f38; border-bottom-color: rgba(32,184,75,.32); }
.detail-page .story-summary { color: #657168; }
.detail-page .story-summary__title, .detail-page .watch-player__title { color: #17231a; }
.detail-page .slice-masked:before { background: linear-gradient(transparent, #ffffff); }
.detail-page .slice-btn span { color: #168f38; background: #f8fbf8; border-color: #d8e4da; }
.detail-page .video-box { border: 1px solid #dfe8e1; }
.detail-page .watch-note { color: #69756c; background: #f5f9f5; border-color: rgba(32,184,75,.14); }
.detail-page .rate-plus .fa { background: #20b84b; }

.detail-page .access-beacon {
  display: flex;
  width: 100%;
  flex: 0 0 100%;
  order: 1;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  margin: 18px 0 0;
  padding: 18px 20px;
  position: relative;
  overflow: hidden;
  background: linear-gradient(110deg, #f1faf3, #fff 65%, #f5fbf6);
  border: 1px solid rgba(32,184,75,.22);
  border-radius: 13px;
  box-shadow: 0 9px 28px rgba(23,50,29,.07);
}
.detail-page .access-beacon:after {
  content: '';
  width: 130px;
  height: 130px;
  position: absolute;
  right: -68px;
  bottom: -88px;
  border-radius: 50%;
  background: rgba(32,184,75,.07);
  pointer-events: none;
}
.access-beacon__message { display: flex; min-width: 0; align-items: center; gap: 14px; }
.access-beacon__mark {
  display: grid;
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  place-items: center;
  color: #fff;
  background: #20b84b;
  border-radius: 12px;
  box-shadow: 0 7px 18px rgba(32,184,75,.20);
  font-size: 17px;
}
.access-beacon__copy { min-width: 0; }
.access-beacon__title { margin: 0 0 5px; color: #17231a; font-size: 17px; line-height: 1.25; font-weight: 800; }
.access-beacon__description { margin: 0; color: #657168; font-size: 13px; line-height: 1.45; }
.access-beacon__actions { display: flex; flex: 0 0 auto; align-items: center; gap: 10px; position: relative; z-index: 1; }
.access-beacon__button {
  display: inline-flex;
  min-width: 132px;
  height: 42px;
  padding: 0 15px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: #344137;
  background: #fff;
  border: 1px solid #d7e3da;
  border-radius: 10px;
  box-shadow: 0 5px 14px rgba(23,50,29,.06);
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  transition: color .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.access-beacon__icon { width: 19px; height: 19px; flex: 0 0 19px; }
.access-beacon__button--vk { color: #3976b9; border-color: rgba(57,118,185,.30); }
.access-beacon__button--vk:hover { color: #fff; background: #3976b9; border-color: #3976b9; box-shadow: 0 8px 18px rgba(57,118,185,.20); transform: translateY(-2px); }
.access-beacon__button--telegram { color: #168fc4; border-color: rgba(22,143,196,.30); }
.access-beacon__button--telegram:hover { color: #fff; background: #168fc4; border-color: #168fc4; box-shadow: 0 8px 18px rgba(22,143,196,.20); transform: translateY(-2px); }

@media screen and (max-width: 850px) {
  .detail-page .access-beacon { align-items: flex-start; gap: 16px; padding: 17px; }
  .access-beacon__message { align-items: flex-start; }
  .access-beacon__actions { gap: 8px; }
  .access-beacon__button { min-width: 116px; padding: 0 12px; }
}

@media screen and (max-width: 650px) {
  .detail-page .access-beacon {
    display: flex !important;
    flex: none !important;
    flex-basis: auto !important;
    align-self: stretch;
    height: auto !important;
    min-height: 0 !important;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    overflow: visible;
    margin-top: 14px;
  }
  .detail-page .access-beacon .access-beacon__actions {
    display: grid !important;
    width: 100% !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    position: relative;
    z-index: 3;
    visibility: visible !important;
    opacity: 1 !important;
  }
  .detail-page .access-beacon .access-beacon__button {
    display: inline-flex !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 42px !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
  .access-beacon__title { font-size: 16px; }
  .access-beacon__description { font-size: 12px; }
}

@media screen and (max-width: 380px) {
  .detail-page .access-beacon .access-beacon__actions { grid-template-columns: 1fr; }
}

.editorial-info { color: #5e6b61; background: #f7faf7; border-color: rgba(32,184,75,.10); box-shadow: 0 20px 50px rgba(23,50,29,.08); }
.editorial-info__header, .editorial-info h1, .editorial-info h2, .editorial-info h3 { color: #1f2b22; }
.editorial-info a { color: #168f38; }
.editorial-info__notice { background: rgba(32,184,75,.055); border-color: rgba(32,184,75,.15); }

.login-box, .side-panel, .form-wrap, .userinfo, .search-page, .static-page, .comments-tree-list {
  color: #445147;
  background: #ffffff;
  border-color: #dce6de;
}
.login-box { box-shadow: 0 30px 90px rgba(23,50,29,.18); }
.login-title, .mtitle, .sub-title h1, .form-wrap h1 { color: #17231a; }
.login-menu a, .side-panel a { color: #4f5d52; }
.login-menu a:hover, .side-panel a:hover { color: #15923a; }
.login-overlay, .mmenu-overlay, .close-overlay { background: rgba(0,0,0,.82); }
.ui-dialog, .ui-widget-content, .xfieldsnote, .berrors, .message-info { color: #465348; background: #f8fbf8; border-color: #d9e4db; }
.navigation a, .navigation span, .pagi-nav a, .pagi-nav span { color: #637067; background: #f8fbf8; border-color: #dce6de; }
.navigation span, .navigation a:hover, .pagi-nav span, .pagi-nav a:hover { color: #071008; background: #20b84b; }

/* DLE engine surfaces */
.vote-title, .findrelated, .usp-name, .usp-meta li:nth-child(2n+1),
.sres-wrap, .sres-wrap:nth-child(2n), .pm tr:nth-child(2n+2),
.userstop tr:nth-child(2n+2), .scriptcode, .title_spoiler,
.text_spoiler, .quote, .hide, .inhide, #dlefastreplycomments {
  color: #465348 !important;
  background: #f8fbf8 !important;
  border-color: #d9e4db !important;
}
.usp-left, .usp-activ, .pm-menu, .form-textarea > label { background: #f7faf7 !important; color: #3b493e !important; }
.sres-wrap { border-color: #dce6de; }
.sres-title, .sres-title a, .usp-name h4, .pm td, .userstop td { color: #263329; }
.pm th, .userstop th { color: #6b786e; background: #f3f7f4; border-color: #dce6de; }
.pm td, .userstop td { border-color: #e2e9e3; }
#searchtable select, .commentsreplyname { color: #344137; background: #ffffff; border-color: #d9e4db; }
.calendar td.day, .calendar td.day-active-v, .calendar th.workday { color: #566359; background: #ffffff; border-color: #dce6de; }
.calendar td.day-current, .calendar td.day-active-v:hover { color: #061008; background: #20b84b; }
.bb-pane { background: linear-gradient(#eef4ef, #f8fbf8); border-color: #d9e4db; }
.bb-btn, .bb-btn:hover, .bb-btn:active { color: #5d6a60; background: #eaf2eb; border-color: #d5e0d7; box-shadow: none; }
.bb-pane-dropdown, #dropmenudiv, #searchsuggestions, .ui-dialog,
.ui-menu, #marker-bar, #share-popup, .highslide-html,
.highslide-caption, .highslide-wrapper, .highslide-outline {
  color: #48554a !important;
  background: #ffffff !important;
  border-color: #d8e3da !important;
  box-shadow: 0 18px 50px rgba(23,50,29,.12) !important;
}
.bb-pane-dropdown > li > a:hover, .ui-menu .ui-menu-item:hover,
#searchsuggestions a:hover { color: #061008 !important; background: #20b84b !important; }
.ui-dialog-titlebar, .ui-dialog .ui-dialog-buttonpane { color: #1f2b22; background: #f3f7f4; border-color: #e0e8e1; }
.voteprogress, .pollprogress, .progress { background: #f2f6f3; border-color: #dfe8e1; box-shadow: inset 0 0 0 1px #dfe8e1; }
.voteprogress span, .pollprogress span, .progress span { background: linear-gradient(90deg, #159a3a, #32c758); }
.berrors { color: #8a492d; background: #fff5ed; border: 1px solid #eccdbb; }

/* Extended-filter plugin */
.filter-box, .fb-sect, .filter-block { color: #465348; background: #ffffff !important; border-color: #d9e4db !important; box-shadow: 0 12px 35px rgba(23,50,29,.06) !important; }
.fb-sect input[type="text"], .chosen-container-single .chosen-single,
.chosen-container-multi .chosen-choices, .chosen-container .chosen-drop {
  color: #3e4b41 !important;
  background-color: #f8fbf8 !important;
  border-color: #d9e4db !important;
  box-shadow: none !important;
}
.chosen-container .chosen-results li { color: #5b685e; }
.chosen-container .chosen-results li.highlighted { color: #061008; background: #20b84b; }
.chosen-container-multi .chosen-choices li.search-choice { color: #061008; background: #20b84b; border-color: #20b84b; box-shadow: none; }
.fb-check span:before, .irs-line, .irs-line-left, .irs-line-mid, .irs-line-right { background: #dce6de !important; }
.fb-check span:after { background: #738077 !important; }
.fb-check input:checked + span:before, .irs-bar, .irs-bar-edge { background: #20b84b !important; }
.fb-check input:checked + span:after { background: #071008 !important; }
.irs-slider { background: #eaf0eb !important; border-color: #20b84b !important; }
.irs-from, .irs-to, .irs-single { color: #061008 !important; background: #20b84b !important; }

.site-end {
  margin-top: 16px;
  padding: 48px 20px;
  color: #667268;
  background: radial-gradient(circle at 50% 0, rgba(32,184,75,.07), transparent 24rem), #f4f8f4;
  border-top: 1px solid rgba(32,184,75,.12);
  border-radius: 18px 18px 0 0;
}
.site-end__logo.leafmark { color: #17231a; }
.site-end__text { color: #667268; }

@media screen and (max-width: 1260px) {
  .canopy-bar { margin-right: 12px; margin-left: 12px; }
  .content { padding-right: 12px; padding-left: 12px; }
}
@media screen and (max-width: 760px) {
  .canopy-bar { margin: 7px; border-radius: 14px; }
  .canopy-inner { min-height: 66px; padding: 0 13px; }
  .leafmark { width: 175px; padding-left: 52px; }
  .leafmark:before { width: 42px; height: 42px; }
  .leafmark__name { font-size: 17px; }
  .content { padding: 13px 7px 28px; }
  .discovery-search { border-radius: 13px; }
  .category-hero { margin-right: 0; margin-left: 0; }
  .site-end { border-radius: 14px 14px 0 0; }
}
