*{box-sizing:border-box}

html{scroll-behavior:smooth}

body{margin:0;font-family:Arial,Helvetica,sans-serif;background:#f6f8fc;color:#172033;line-height:1.7}

a{text-decoration:none;color:inherit}



.header{

background:#fff;

border-bottom:1px solid #e7ebf2;

position:sticky;

top:0;

z-index:10

}



.nav{

max-width:1100px;

margin:auto;

padding:16px 22px;

display:flex;

align-items:center;

justify-content:space-between;

gap:20px

}



.brand{

font-weight:800;

letter-spacing:.3px

}



.brand small{

display:block;

font-size:11px;

color:#6b7280;

margin-top:2px;

font-weight:600

}



.back{

font-size:14px;

font-weight:700;

color:#1f5eff

}



.hero{

background:linear-gradient(135deg,#102a43,#1f5eff);

color:#fff;

padding:70px 22px

}



.hero-inner{

max-width:1100px;

margin:auto

}



.kicker{

font-size:12px;

letter-spacing:1.5px;

font-weight:800;

opacity:.8;

margin-bottom:14px

}



h1{

font-size:46px;

line-height:1.15;

margin:0 0 18px;

max-width:900px

}



.hero p{

max-width:800px;

font-size:18px;

margin:0;

color:#eaf0ff

}



.container{

max-width:900px;

margin:0 auto;

padding:48px 22px 70px

}



.notice{

background:#fff8e6;

border:1px solid #f0d58a;

border-radius:14px;

padding:18px 20px;

margin-bottom:34px

}



.notice strong{

display:block;

margin-bottom:5px

}



h2{

font-size:30px;

line-height:1.25;

margin:42px 0 14px

}



h3{

font-size:21px;

margin:28px 0 10px

}



p{

margin:0 0 16px

}



.card{

background:#fff;

border:1px solid #e7ebf2;

border-radius:16px;

padding:24px;

margin:22px 0;

box-shadow:0 4px 18px rgba(20,35,70,.04)

}



table{

width:100%;

border-collapse:collapse;

margin:18px 0;

background:#fff

}



th,td{

border:1px solid #e3e8f0;

padding:14px;

text-align:left;

vertical-align:top

}



th{

background:#f1f5fb

}



ul{

padding-left:22px;

margin:12px 0 18px

}



li{

margin:8px 0

}



.cta{

margin-top:42px;

background:#102a43;

color:#fff;

border-radius:18px;

padding:30px

}



.cta h2{

margin:0 0 12px;

font-size:28px

}



.cta a{

display:inline-block;

background:#fff;

color:#102a43;

padding:12px 18px;

border-radius:9px;

font-weight:800;

margin-top:8px

}



.related{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:14px;

margin-top:18px

}



.related a{

background:#fff;

border:1px solid #e7ebf2;

border-radius:12px;

padding:16px;

font-weight:700

}



.footer{

border-top:1px solid #e7ebf2;

padding:28px 22px;

text-align:center;

color:#6b7280;

background:#fff

}



@media(max-width:700px){



.nav{

padding:14px 16px

}



.hero{

padding:52px 18px

}



h1{

font-size:34px

}



.container{

padding:34px 18px 55px

}



h2{

font-size:26px

}



.related{

grid-template-columns:1fr

}



table{

font-size:14px

}



th,td{

padding:10px

}



}

.table-of-contents{

  margin:24px 0;

  border:1px solid #e1e6ee;

  border-radius:12px;

  background:#f8fafc;

  overflow:hidden;

}



.toc-toggle{

  width:100%;

  border:0;

  background:#071b35;

  color:#fff;

  padding:16px 18px;

  font-size:16px;

  font-weight:700;

  display:flex;

  justify-content:space-between;

  align-items:center;

  cursor:pointer;

}



.toc-arrow{

  font-size:18px;

  line-height:1;

}



.toc-content{

  display:none;

  padding:14px 22px;

}



.table-of-contents.open .toc-content{

  display:block;

}



.toc-content ul{

  margin:0;

  padding-left:18px;

}



.toc-content li{

  margin:10px 0;

}



.toc-content a{

  color:#0d3b66;

  text-decoration:none;

  font-weight:600;

}



.toc-content a:hover{

  text-decoration:underline;

}



@media(max-width:600px){

  .toc-toggle{

    padding:15px;

  }



  .toc-content{

    padding:12px 18px;

  }

}

.author-box{

    margin:30px 0;

    padding:20px;

    border:1px solid #ddd;

    border-radius:10px;

    background:#f8f9fa;

}

.author-box strong{

    display:block;

    font-size:18px;

    margin-bottom:5px;

}

.author-box span{

    display:block;

    font-size:14px;

    margin-bottom:12px;

    color:#555;

}

.author-box p{

    margin:0;

    line-height:1.6;

}
