body{
font-family:Georgia,serif;
background:#f7f9fc;
color:#222;
margin:0;
}

.site-header{
background:#1f3a5f;
color:white;
padding:20px;
}

main{
max-width:900px;
margin:auto;
padding:30px;
background:white;
}

h1{
margin-top:0;
}

a{
color:#1f3a5f;
text-decoration:none;
}

a:hover{
text-decoration:underline;
}
.author-line{
  margin:8px 0 14px;
  color:var(--muted);
}

.contrib-inline-role{
  color:var(--muted);
  font-size:.95em;
}

.contributors-section{
  margin:24px 0;
}

.contributors-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}

.contributor-card{
  background:#fafafa;
  border:1px solid var(--line);
  border-radius:12px;
  padding:16px;
}

.contributor-name{
  margin-top:0;
  margin-bottom:10px;
  font-size:1.12rem;
  border-bottom:none;
  padding-bottom:0;
}

.contributor-role,
.contributor-affiliation,
.contributor-bio{
  margin:0 0 10px;
}

.credit-block{
  background:#f7f9fc;
  border:1px solid var(--line);
  border-radius:12px;
  padding:16px;
  margin:24px 0;
}

.credit-table{
  width:100%;
  border-collapse:collapse;
  margin:0;
}

.credit-table th,
.credit-table td{
  border:1px solid var(--line);
  padding:10px;
  vertical-align:top;
}

.credit-table th{
  background:var(--soft2);
  text-align:left;
  width:220px;
}

@media (max-width: 820px){
  .contributors-grid{
    grid-template-columns:1fr;
  }

  .credit-table th{
    width:auto;
  }
}
.glossary-entry{
  background:#fafafa;
  border:1px solid var(--line);
  border-radius:12px;
  padding:16px;
  margin:18px 0;
}

.glossary-entry h3{
  margin-top:0;
  margin-bottom:10px;
}

.glossary-aliases{
  color:var(--muted);
}

.glossary-auto-link,
.article-auto-link{
  text-decoration:underline;
  text-underline-offset:2px;
}

.glossary-auto-link:hover,
.article-auto-link:hover{
  text-decoration-thickness:2px;
}
.landing-hero{
  margin:0 0 28px;
}

.landing-hero-box{
  background:linear-gradient(180deg, #ffffff 0%, #eef3f9 100%);
  border:1px solid var(--line);
  border-radius:16px;
  padding:30px 24px;
}

.landing-kicker{
  margin:0 0 10px;
  color:var(--muted);
  font-family:Arial, Helvetica, sans-serif;
  font-size:.92rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.landing-title{
  margin:0 0 14px;
  font-size:2rem;
  line-height:1.25;
  border-bottom:none;
  padding-bottom:0;
}

.landing-lead{
  margin:0 0 18px;
  font-size:1.08rem;
  color:#334155;
  max-width:850px;
}

.landing-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:18px;
}

.btn{
  display:inline-block;
  padding:10px 14px;
  border-radius:10px;
  font-family:Arial, Helvetica, sans-serif;
  font-weight:700;
  text-decoration:none;
  border:1px solid var(--line);
}

.btn-primary{
  background:var(--primary);
  color:#fff;
  border-color:var(--primary);
}

.btn-primary:hover{
  color:#fff;
  text-decoration:none;
  opacity:.95;
}

.btn-secondary{
  background:#fff;
  color:var(--primary);
}

.btn-secondary:hover{
  text-decoration:none;
  background:#f8fafc;
}

.landing-section{
  margin:26px 0;
}

.landing-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:18px;
  margin:24px 0;
}

.landing-grid-small{
  grid-template-columns:1.4fr 1fr;
}

.landing-card{
  background:#fafafa;
  border:1px solid var(--line);
  border-radius:14px;
  padding:18px;
}

.landing-card h2{
  margin-top:0;
  font-size:1.2rem;
  border-bottom:none;
  padding-bottom:0;
}

.landing-list{
  margin:0 0 0 1.2em;
}

.landing-list li{
  margin-bottom:6px;
}

.pathway-box{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  margin:18px 0 12px;
}

.path-step{
  background:#fafafa;
  border:1px solid var(--line);
  border-radius:999px;
  padding:10px 16px;
  font-family:Arial, Helvetica, sans-serif;
  font-weight:700;
}

.path-arrow{
  color:var(--muted);
  font-weight:700;
  font-size:1.1rem;
}

.landing-muted{
  color:var(--muted);
}

@media (max-width: 980px){
  .landing-grid{
    grid-template-columns:1fr 1fr;
  }

  .landing-grid-small{
    grid-template-columns:1fr;
  }
}

@media (max-width: 700px){
  .landing-title{
    font-size:1.55rem;
  }

  .landing-grid{
    grid-template-columns:1fr;
  }

  .landing-actions{
    flex-direction:column;
    align-items:flex-start;
  }

  .btn{
    width:100%;
    text-align:center;
  }
}
.about-hero{
  margin:0 0 24px;
}

.about-hero-box{
  background:linear-gradient(180deg, #ffffff 0%, #f4f7fb 100%);
  border:1px solid var(--line);
  border-radius:16px;
  padding:28px 24px;
}

.updates-list{
  display:grid;
  grid-template-columns:1fr;
  gap:18px;
  margin:20px 0;
}

.update-card{
  background:#fafafa;
  border:1px solid var(--line);
  border-radius:14px;
  padding:18px;
}

.update-meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:10px;
}

.update-date{
  font-family:Arial, Helvetica, sans-serif;
  font-size:.92rem;
  font-weight:700;
  color:var(--muted);
}

.update-type{
  display:inline-block;
  padding:4px 10px;
  border-radius:999px;
  background:#eef3f9;
  border:1px solid var(--line);
  font-family:Arial, Helvetica, sans-serif;
  font-size:.82rem;
  font-weight:700;
  color:var(--primary);
}

.update-title{
  margin:0 0 10px;
  font-size:1.2rem;
  border-bottom:none;
  padding-bottom:0;
}

.update-body{
  margin:0;
  color:#334155;
}
.downloads-table-wrap{
  overflow-x:auto;
  margin:18px 0;
}

.downloads-table{
  width:100%;
  border-collapse:collapse;
  background:#fff;
}

.downloads-table th,
.downloads-table td{
  border:1px solid var(--line);
  padding:10px;
  vertical-align:top;
}

.downloads-table th{
  background:var(--soft2);
  text-align:left;
}
.project-map-box{
  background:#fafafa;
  border:1px solid var(--line);
  border-radius:16px;
  padding:20px;
  margin:20px 0;
}

.map-level{
  display:grid;
  gap:14px;
  justify-content:center;
  margin:10px 0;
}

.map-grid-2{
  grid-template-columns:repeat(2, minmax(220px, 1fr));
}

.map-grid-3{
  grid-template-columns:repeat(3, minmax(180px, 1fr));
}

.map-grid-4{
  grid-template-columns:repeat(4, minmax(160px, 1fr));
}

.map-node{
  background:#ffffff;
  border:1px solid var(--line);
  border-radius:12px;
  padding:14px 16px;
  text-align:center;
  box-shadow:0 2px 6px rgba(0,0,0,.03);
}

.map-node a{
  font-weight:700;
  text-decoration:none;
}

.map-node-main{
  background:#eef3f9;
  border-color:#cfd8e3;
}

.map-arrow{
  text-align:center;
  color:var(--muted);
  font-size:1.4rem;
  font-weight:700;
  margin:6px 0;
}

@media (max-width: 980px){
  .map-grid-4{
    grid-template-columns:repeat(2, minmax(180px, 1fr));
  }

  .map-grid-3{
    grid-template-columns:repeat(2, minmax(180px, 1fr));
  }
}

@media (max-width: 700px){
  .map-grid-2,
  .map-grid-3,
  .map-grid-4{
    grid-template-columns:1fr;
  }

  .project-map-box{
    padding:16px;
  }
}
.site-nav{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  font-family:Arial, Helvetica, sans-serif;
}

.site-nav a{
  color:#ffffff;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.18);
  padding:8px 12px;
  border-radius:10px;
  font-weight:700;
}

.site-nav a:hover{
  background:rgba(255,255,255,.16);
  text-decoration:none;
}
.search-form{
  margin:0;
}

.search-form-header{
  display:flex;
  gap:8px;
  align-items:center;
  margin-top:12px;
}

.search-form-header input{
  padding:8px 10px;
  border:1px solid var(--line);
  border-radius:8px;
  min-width:220px;
  font:inherit;
}

.search-form-header button,
.search-form-main button{
  padding:8px 12px;
  border:1px solid var(--line);
  border-radius:8px;
  background:#fff;
  cursor:pointer;
  font:inherit;
  font-weight:600;
}

.search-form-main{
  background:#fafafa;
  border:1px solid var(--line);
  border-radius:12px;
  padding:16px;
  margin:0 0 20px;
}

.search-row{
  display:flex;
  gap:10px;
  margin-top:10px;
}

.search-form-main input{
  flex:1;
  padding:10px 12px;
  border:1px solid var(--line);
  border-radius:8px;
  font:inherit;
}

.search-results{
  display:grid;
  grid-template-columns:1fr;
  gap:16px;
}

.search-result-card{
  background:#fafafa;
  border:1px solid var(--line);
  border-radius:12px;
  padding:16px;
}

.search-result-type{
  display:inline-block;
  font-family:Arial, Helvetica, sans-serif;
  font-size:.85rem;
  font-weight:700;
  color:var(--muted);
  margin-bottom:8px;
}

.search-result-title{
  margin:0 0 8px;
  font-size:1.2rem;
  border-bottom:none;
  padding-bottom:0;
}

.search-result-snippet{
  margin:0;
  color:var(--muted);
}

@media (max-width: 820px){
  .search-row{
    flex-direction:column;
  }

  .search-form-header{
    flex-wrap:wrap;
  }

  .search-form-header input{
    min-width:0;
    width:100%;
  }
}
.cite a{
  text-decoration:none;
  font-size:0.8em;
  vertical-align:super;
  margin-left:1px;
}

.cite a:hover{
  text-decoration:underline;
}

.references{
  margin-left:1.2em;
}

.references li{
  margin-bottom:12px;
  line-height:1.7;
}

.cite-back{
  text-decoration:none;
  margin-left:6px;
  font-size:0.95em;
}
.index-jump{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:10px 0 24px;
}

.index-jump a,
.index-jump-disabled{
  display:inline-block;
  min-width:34px;
  text-align:center;
  padding:6px 10px;
  border:1px solid var(--line);
  border-radius:8px;
  font-family:Arial, Helvetica, sans-serif;
  font-size:.92rem;
  font-weight:700;
}

.index-jump a{
  background:#fff;
  text-decoration:none;
}

.index-jump a:hover{
  background:#f7f9fc;
  text-decoration:none;
}

.index-jump-disabled{
  color:var(--muted);
  background:#fafafa;
}

.index-group{
  margin:28px 0;
}

.index-letter{
  border-bottom:none;
  padding-bottom:0;
  margin-bottom:14px;
  font-size:1.6rem;
}

.index-list{
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
}

.index-entry{
  background:#fafafa;
  border:1px solid var(--line);
  border-radius:12px;
  padding:14px 16px;
}

.index-term{
  margin:0 0 8px;
  font-size:1.08rem;
  border-bottom:none;
  padding-bottom:0;
}

.index-see{
  margin:0 0 8px;
  color:var(--muted);
}

.index-links{
  margin:0;
}

.index-muted{
  color:var(--muted);
}
hr.dashed-line {
  border: none;
  border-top: 3px dashed darkslateblue; /* Blue dashed line */
  width: 50%; /* Optional: control width */
  margin: auto; /* Optional: center the line */
}

hr.dotted-line {
  border: none;
  border-top: 3px dotted orangered; /* Orange dotted line */
}

hr.minimalist-line {
  border: none; /* Removes default borders */
  border-top: 1px solid #ccc; /* Adds a single, light-gray line */
  margin: 20px 0; /* Adds spacing above and below */
}
/* Footer */

.site-footer{
  margin-top:60px;
  padding:30px 0;
  border-top:1px solid #ddd;
  background:#fafafa;
  font-size:0.95rem;
}

.footer-inner{
  max-width:1000px;
  margin:0 auto;
  text-align:center;
  line-height:1.6;
}

.footer-quicklinks{
  margin-bottom:8px;
}

.footer-quicklinks a{
  color:#2c3e50;
  text-decoration:none;
}

.footer-quicklinks a:hover{
  text-decoration:underline;
}

.footer-copyright{
  color:#666;
}
.chapter-nav-block{
  margin:40px 0 20px;
  padding-top:16px;
  border-top:1px solid var(--line);
}

.chapter-nav-inner{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  gap:12px;
  align-items:center;
}

.chapter-nav-left{
  text-align:left;
}

.chapter-nav-center{
  text-align:center;
  font-family:Arial, Helvetica, sans-serif;
  font-weight:700;
}

.chapter-nav-right{
  text-align:right;
}

.chapter-nav-prev,
.chapter-nav-next,
.chapter-nav-center a{
  text-decoration:none;
}

.chapter-nav-prev:hover,
.chapter-nav-next:hover,
.chapter-nav-center a:hover{
  text-decoration:underline;
}

.chapter-nav-disabled{
  color:transparent;
}

@media (max-width: 760px){
  .chapter-nav-inner{
    grid-template-columns:1fr;
  }

  .chapter-nav-left,
  .chapter-nav-center,
  .chapter-nav-right{
    text-align:left;
  }
}
.center {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 200px;
  border: 3px solid green; 
}