/* SEO článek pod tool stránkami (crawlable text). Self-contained (nezávisí na
   proměnných konkrétní appky). V dashboard iframu (html.embedded) se skryje. */
.tm-seo, .tm-foot { display: block; }
html.embedded .tm-seo, html.embedded .tm-foot,
body.embed .tm-seo, body.embed .tm-foot { display: none; }

.tm-seo {
  width: 100%; max-width: 820px; margin: 0 auto; padding: 44px 22px 8px;
  color: #cfc4b0; font-family: "Segoe UI", system-ui, sans-serif; font-size: 15px;
  border-top: 1px solid #3a3226; text-align: left;
}
/* defenzivní reset — appky mají různá h1/h2 pravidla (gradient text-fill apod.) */
.tm-seo h1, .tm-seo h2 {
  background: none; -webkit-background-clip: border-box; background-clip: border-box;
  -webkit-text-fill-color: currentColor; text-transform: none; text-shadow: none;
  font-family: "Eagle Lake", "Palatino Linotype", Palatino, Georgia, serif; font-weight: 400;
}
.tm-seo h1 {
  font-size: clamp(1.5rem, 3.6vw, 2rem); line-height: 1.2;
  color: #e2c682; margin: 0 0 14px; letter-spacing: .01em; text-wrap: balance;
}
.tm-seo h2 { font-size: 1.2rem; color: #e2c682; margin: 26px 0 12px; letter-spacing: 0; }
.tm-seo .tm-intro { color: #e6dcc8; font-size: 1.05rem; line-height: 1.7; max-width: 70ch; }
.tm-seo .tm-feat { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.tm-seo .tm-feat li { position: relative; padding-left: 24px; line-height: 1.55; color: #d7ccb6; }
.tm-seo .tm-feat li::before { content: "◆"; position: absolute; left: 4px; color: #c9a24e; font-size: .8em; top: .2em; }
.tm-seo .tm-faq details { border: 1px solid #3a3226; border-radius: 10px; background: #241e17; margin-bottom: 8px; }
.tm-seo .tm-faq summary { cursor: pointer; padding: 12px 15px; font-weight: 600; color: #ece3d2; list-style: none; position: relative; }
.tm-seo .tm-faq summary::-webkit-details-marker { display: none; }
.tm-seo .tm-faq summary::after { content: "+"; position: absolute; right: 15px; color: #c9a24e; font-size: 1.15rem; line-height: 1; }
.tm-seo .tm-faq details[open] summary { color: #e2c682; }
.tm-seo .tm-faq details[open] summary::after { content: "\2013"; }
.tm-seo .tm-faq .tm-a { padding: 0 15px 13px; color: #b3a88f; line-height: 1.6; }
.tm-seo .tm-related { margin: 26px 0 6px; font-size: .95rem; color: #a89a82; }
.tm-seo .tm-related a { color: #c9a24e; text-decoration: none; }
.tm-seo .tm-related a:hover { text-decoration: underline; }

.tm-foot {
  width: 100%; max-width: 820px; margin: 0 auto; padding: 16px 22px 30px;
  color: #7c715a; font-size: .76rem; line-height: 1.55; text-align: left;
  font-family: "Segoe UI", system-ui, sans-serif;
}

:root[data-theme="light"] .tm-seo { color: #4a4030; border-top-color: #cdbd98; }
:root[data-theme="light"] .tm-seo h1, :root[data-theme="light"] .tm-seo h2 { color: #8a6320; }
:root[data-theme="light"] .tm-seo .tm-intro { color: #33281a; }
:root[data-theme="light"] .tm-seo .tm-feat li { color: #4a4030; }
:root[data-theme="light"] .tm-seo .tm-faq details { background: #f8f3e8; border-color: #d6c9af; }
:root[data-theme="light"] .tm-seo .tm-faq summary { color: #33281a; }
:root[data-theme="light"] .tm-seo .tm-faq .tm-a { color: #6d6350; }
:root[data-theme="light"] .tm-foot { color: #998a6e; }
