/* Shared legal stylesheet for privacy.html and terms-of-service.html of Runonly by Runlian Technology Co., Limited. */
/* Legal pages load ONLY this stylesheet, so it must define its own page background and colours with strong contrast. */

*,*::before,*::after{box-sizing:border-box;}

body{
  margin:0;
  font-family:Georgia,'Palatino Linotype','Book Antiqua',Palatino,serif;
  font-size:16px;
  line-height:1.8;
  background-color:#FFFDF8;
  color:#3C2B33;
  overflow-x:hidden;
}

h1,h2,h3,h4{color:#2E2230;font-weight:normal;line-height:1.25;margin:0 0 0.9em 0;}
p{color:#3C2B33;margin:0 0 1.1em 0;}
a{color:#B34A5A;text-decoration:none;}
a:hover{color:#5C7A5A;}
ul,ol{color:#3C2B33;}
strong{color:#2E2230;font-weight:bold;}
small{color:#5C7A5A;}

/* Scope isolation: legal content sections keep a transparent background so the page backdrop shows instead of any generic section style. */
.legal-page .legal-content section{
  background:transparent !important;
}

/* ---- Legal page layout ---- */
.legal-page{background-color:#FFFDF8;color:#3C2B33;min-height:100vh;}

.legal-header{
  background-color:#2E2230;
  color:#FFFDF8;
  border-bottom:6px solid #C79A3F;
}
.legal-header-inner{max-width:920px;margin:0 auto;padding:34px 24px;}
.legal-header .lh-brand{
  display:inline-block;
  color:#FFFDF8;
  background-color:#B34A5A;
  border-radius:50%;
  width:52px;
  height:52px;
  line-height:52px;
  text-align:center;
  font-size:1.6rem;
  margin-bottom:16px;
}
.legal-header h1{
  color:#FFFDF8;
  font-size:2rem;
  margin:0 0 6px 0;
}
.legal-header p{color:#F4E3DC;margin:0 0 10px 0;}
.legal-header .lh-home a{color:#C79A3F;font-weight:bold;}
.legal-header .lh-home a:hover{color:#FFFDF8;}

.legal-wrap{max-width:920px;margin:0 auto;padding:40px 24px;}
.legal-intro{
  background-color:#FAF4EC;
  border:1px solid #E8DFD3;
  border-left:6px solid #C79A3F;
  border-radius:6px;
  padding:20px 22px;
  margin-bottom:30px;
}
.legal-intro p{margin:0 0 8px 0;color:#3C2B33;}
.legal-intro p:last-child{margin-bottom:0;}

.legal-toc{
  background-color:#FAF6F0;
  border:1px solid #E8DFD3;
  border-radius:8px;
  padding:18px 22px;
  margin-bottom:34px;
}
.legal-toc h2{color:#2E2230;font-size:1.1rem;margin:0 0 10px 0;}
.legal-toc ul{list-style:none;margin:0;padding:0;}
.legal-toc li{margin-bottom:6px;}
.legal-toc li a{color:#B34A5A;}
.legal-toc li a:hover{color:#5C7A5A;}
.legal-toc .toc-sub{list-style:none;margin:4px 0 6px 0;padding:0 0 0 16px;}

.legal-content section{
  margin-bottom:34px;
  background:transparent;
  padding:0;
}
.legal-content section h2{
  font-size:1.5rem;
  color:#2E2230;
  border-bottom:2px solid #C79A3F;
  padding-bottom:8px;
  margin-bottom:16px;
  margin-top:0;
}
.legal-content section .legal-anchor{display:block;height:1px;margin-top:-12px;visibility:hidden;}
.legal-content section > p,
.legal-content section > li,
.legal-content section > ul,
.legal-content section > ol{margin:0 0 1em 0;}
.legal-content h3{color:#5C7A5A;margin:1.2em 0 0.5em 0;}
.legal-content ul,.legal-content ol{padding-left:26px;margin:0 0 1.2em 0;}
.legal-content li{margin-bottom:0.5em;}

.legal-date{
  color:#5C7A5A;
  font-style:normal;
  margin-bottom:24px;
}

.kv-block{margin-bottom:14px;}
.kv-block .kv-k{color:#2E2230;font-weight:bold;display:block;margin-bottom:2px;}
.kv-block .kv-v{color:#3C2B33;}

/* ---- Legal page footer ---- */
.legal-footer{
  background-color:#2E2230;
  color:#E8DFD3;
  border-top:4px solid #C79A3F;
  padding:38px 0 30px 0;
}
.legal-footer-inner{max-width:920px;margin:0 auto;padding:0 24px;}
.legal-footer p{color:#E8DFD3;margin:0 0 8px 0;font-size:0.95rem;}
.legal-footer a{color:#C79A3F;}
.legal-footer a:hover{color:#FFFDF8;}
.legal-footer .lf-copy{margin-top:14px;color:#B7A899;font-size:0.85rem;}

.legal-nav-links{list-style:none;margin:0 0 14px 0;padding:0;}
.legal-nav-links li{display:inline-block;margin:0 14px 8px 0;}
.legal-nav-links a{color:#C79A3F;font-weight:bold;}

@media (max-width:640px){
  .legal-header h1{font-size:1.5rem;}
  .legal-wrap{padding-top:28px;}
}
