/* Forest Frontier v0.9.15 — карта Руин 9/10: круговые медальоны, чистый граф и предбоссовая поддержка. */
body.theme-ashen .ruins-route-map {
  border-color: rgba(149,118,64,.56);
  background:
    radial-gradient(ellipse at 50% 18%, rgba(74,95,74,.22), transparent 38%),
    radial-gradient(ellipse at 50% 75%, rgba(28,58,48,.22), transparent 52%),
    linear-gradient(180deg, rgba(12,20,17,.98), rgba(5,11,9,.99));
  box-shadow: inset 0 0 48px rgba(0,0,0,.42), 0 12px 32px rgba(0,0,0,.26);
}
body.theme-ashen .ruins-medallion-canvas {
  background:
    radial-gradient(circle at 20% 28%, rgba(102,123,91,.06), transparent 18%),
    radial-gradient(circle at 82% 56%, rgba(102,123,91,.06), transparent 20%),
    linear-gradient(90deg, transparent 0 16%, rgba(171,138,76,.035) 16.2% 16.45%, transparent 16.7% 49.7%, rgba(171,138,76,.035) 49.9% 50.15%, transparent 50.35% 83%, rgba(171,138,76,.035) 83.2% 83.45%, transparent 83.7%);
}
body.theme-ashen .ruins-medallion-paths path {
  stroke:#7e6a42;
  stroke-width:2.15;
  opacity:.42;
  filter:drop-shadow(0 0 2px rgba(191,153,76,.16));
}
body.theme-ashen .ruins-medallion-paths path.available { stroke:#e2bb64; stroke-width:3.2; opacity:1; filter:drop-shadow(0 0 5px rgba(235,188,87,.65)); }
body.theme-ashen .ruins-medallion-paths path.active { stroke:#cda751; stroke-width:3; opacity:.95; filter:drop-shadow(0 0 4px rgba(220,173,75,.48)); }
body.theme-ashen .ruins-medallion-paths path.mystery { stroke-dasharray:4 5; opacity:.26; }
body.theme-ashen .ruins-route-rivet { fill:#9b7b3e; stroke:#20180b; stroke-width:.35; vector-effect:non-scaling-stroke; opacity:.5; }
body.theme-ashen .ruins-route-rivet.available { fill:#f0cc73; opacity:1; filter:drop-shadow(0 0 3px rgba(242,197,102,.72)); }
body.theme-ashen .ruins-route-rivet.active { fill:#d9af57; opacity:.95; }
body.theme-ashen .ruins-medallion-grid { grid-auto-rows:102px; }
body.theme-ashen .ruins-medallion-row { position:relative; align-items:start; }
body.theme-ashen .ruins-medallion-shell,
body.theme-ashen .ruins-medallion-node.hex .ruins-medallion-shell {
  width:62px; height:62px; border:2px solid currentColor; border-radius:50%; clip-path:none;
  background:
    radial-gradient(circle at 34% 28%, rgba(255,255,255,.13), transparent 23%),
    radial-gradient(circle at 50% 55%, rgba(116,88,45,.12), transparent 66%),
    linear-gradient(145deg,#222b25,#080d0b 78%);
  box-shadow:inset 0 0 0 3px #080c0a,inset 0 0 0 5px rgba(180,142,70,.16),inset 0 0 18px rgba(255,255,255,.025),0 7px 15px rgba(0,0,0,.56);
}
body.theme-ashen .ruins-medallion-node.hex .ruins-medallion-shell::before { display:none; }
body.theme-ashen .ruins-medallion-shell::after {
  content:''; position:absolute; inset:-5px; border:1px solid color-mix(in srgb,currentColor 52%,transparent); border-radius:50%; opacity:.52;
  clip-path:polygon(0 0,42% 0,42% 7%,58% 7%,58% 0,100% 0,100% 42%,93% 42%,93% 58%,100% 58%,100% 100%,58% 100%,58% 93%,42% 93%,42% 100%,0 100%,0 58%,7% 58%,7% 42%,0 42%);
}
body.theme-ashen .ruins-medallion-node.boss .ruins-medallion-shell { width:78px; height:78px; border-width:3px; box-shadow:inset 0 0 0 4px #080c0a,inset 0 0 0 7px rgba(216,172,70,.18),0 0 0 3px rgba(216,172,70,.16),0 0 30px rgba(197,147,57,.25); }
body.theme-ashen .ruins-medallion-node.boss .ruins-medallion-icon { width:43px; height:43px; }
body.theme-ashen .ruins-node-label { max-width:108px; min-height:25px; margin-top:1px; padding:3px 7px; border:1px solid rgba(139,112,64,.36); border-radius:8px; background:linear-gradient(180deg,rgba(20,25,21,.95),rgba(5,9,7,.96)); box-shadow:0 3px 8px rgba(0,0,0,.42); }
body.theme-ashen .ruins-node-label strong { font-size:11px; letter-spacing:.01em; }
body.theme-ashen .ruins-node-label small { font-size:10px; }
body.theme-ashen .ruins-medallion-node.normal { color:#d7c394; }
body.theme-ashen .ruins-medallion-node.elite { color:#68d494; }
body.theme-ashen .ruins-medallion-node.rare { color:#62bff2; }
body.theme-ashen .ruins-medallion-node.recovery { color:#db745f; }
body.theme-ashen .ruins-medallion-node.altar { color:#be91ef; }
body.theme-ashen .ruins-medallion-node.reward { color:#e1b85c; }
body.theme-ashen .ruins-medallion-node.sacrifice { color:#d66e72; }
body.theme-ashen .ruins-medallion-node.event { color:#70c8af; }
body.theme-ashen .ruins-medallion-node.available .ruins-medallion-shell { box-shadow:inset 0 0 0 3px #080c0a,inset 0 0 0 5px rgba(247,203,103,.18),0 0 0 3px rgba(235,190,89,.28),0 0 24px rgba(230,184,77,.42),0 8px 16px rgba(0,0,0,.55); }
body.theme-ashen .ruins-medallion-node.available::after { color:#efc86a; filter:drop-shadow(0 0 4px rgba(238,193,91,.72)); }
body.theme-ashen .preboss-support-row { padding-top:18px; }
body.theme-ashen .ruins-support-row-title { position:absolute; top:-6px; left:50%; transform:translateX(-50%); z-index:3; width:max-content; max-width:92%; padding:3px 9px; border:1px solid rgba(203,164,82,.45); border-radius:999px; background:rgba(8,14,11,.94); color:#d9ba70; font-size:10px; font-weight:900; letter-spacing:.05em; text-transform:uppercase; }
body.theme-ashen .ruins-medallion-row.preboss-support-row .ruins-medallion-node { margin-top:3px; }
@media(max-width:390px){
  body.theme-ashen .ruins-medallion-shell,body.theme-ashen .ruins-medallion-node.hex .ruins-medallion-shell{width:58px;height:58px}
  body.theme-ashen .ruins-medallion-node.boss .ruins-medallion-shell{width:72px;height:72px}
  body.theme-ashen .ruins-node-label{max-width:100px;padding-inline:5px}
  body.theme-ashen .ruins-support-row-title{font-size:10px;white-space:nowrap}
}
