/* kv-theme */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
  --kv-bg:#0b0b0e;--kv-sf:#131318;--kv-tx:#cacacf;
  --kv-mt:#8a8a96;--kv-wh:#ededf2;--kv-hd:#e8a838;
  --kv-h3:#d4943a;--kv-ac:#e8a838;--kv-bd:rgba(255,255,255,0.07);
  --kv-lk:#e8a838;--kv-ft:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body{font-family:var(--kv-ft);background:var(--kv-bg);color:var(--kv-tx);font-size:17px;line-height:1.8}
img{max-width:100%;height:auto;display:block}
a{color:var(--kv-lk);text-decoration:none}
a:hover{text-decoration:underline}

.kv-wrap{max-width:820px;margin:0 auto;padding:0 1.5rem}

#content-main{padding:4rem 0 3rem}
#content-main h1{font-size:clamp(1.8rem,4vw,2.6rem);font-weight:800;line-height:1.2;color:var(--kv-hd);margin-bottom:2rem;letter-spacing:-0.02em}
#content-main h2{font-size:clamp(1.4rem,3vw,1.9rem);font-weight:700;line-height:1.25;color:var(--kv-hd);margin-top:3.5rem;margin-bottom:1.25rem;padding-left:0.75rem;border-left:4px solid var(--kv-ac);letter-spacing:-0.01em}
#content-main h3{font-size:clamp(1.1rem,2.5vw,1.35rem);font-weight:600;color:var(--kv-h3);margin-top:2.5rem;margin-bottom:0.75rem}
#content-main p{margin-bottom:1.5rem;color:var(--kv-tx)}
#content-main img{margin:2rem 0;border-radius:10px;border:1px solid var(--kv-bd)}

#content-main table{width:100%;border-collapse:collapse;margin:2rem 0;font-size:0.9rem;border:1px solid var(--kv-bd);border-radius:8px;overflow:hidden}
#content-main thead{background:rgba(232,168,56,0.08)}
#content-main th{padding:0.85rem 1.25rem;text-align:left;font-weight:600;color:var(--kv-wh);font-size:0.8rem;text-transform:uppercase;letter-spacing:0.05em;border-bottom:1px solid var(--kv-bd)}
#content-main td{padding:0.75rem 1.25rem;color:var(--kv-mt);border-bottom:1px solid var(--kv-bd)}
#content-main tbody tr:last-child td{border-bottom:none}
#content-main tbody tr:hover{background:rgba(255,255,255,0.02)}

#content-main ul{margin:1.5rem 0;padding-left:0;list-style:none}
#content-main li{position:relative;padding:0.5rem 0 0.5rem 1.5rem;color:var(--kv-tx);font-size:0.95rem}
#content-main li::before{content:'2';position:absolute;left:0;color:var(--kv-ac);font-weight:700;font-size:1.2em}

figure{margin:0}
.kv-banner,.kv-visual{margin:2rem 0}
.kv-banner img,.kv-visual img{width:100%;height:auto;border-radius:10px;border:1px solid var(--kv-bd);display:block}

#guides,#questions{padding:2.5rem 0;border-top:1px solid var(--kv-bd)}
#guides h2,#questions h2{font-size:clamp(1.4rem,3vw,1.9rem);font-weight:700;line-height:1.25;color:var(--kv-hd);margin-bottom:1.25rem;padding-left:0.75rem;border-left:4px solid var(--kv-ac);letter-spacing:-0.01em}
#guides h3,#questions h3{font-size:clamp(1.1rem,2.5vw,1.35rem);font-weight:600;color:var(--kv-h3);margin-top:2rem;margin-bottom:0.5rem}
#guides p,#questions p{margin-bottom:1.25rem;color:var(--kv-tx);line-height:1.8}
#guides a{color:var(--kv-ac);text-decoration:none;border-bottom:1px solid rgba(232,168,56,0.3);transition:border-color 0.2s}
#guides a:hover{border-color:var(--kv-ac)}

footer{border-top:1px solid var(--kv-bd);padding:2rem 0}
footer p{font-size:0.8rem;color:var(--kv-mt);text-align:center}

@media(max-width:600px){
  #content-main{padding:2.5rem 0 2rem}
  #content-main h2{margin-top:2.5rem}
  .kv-banner,.kv-visual{margin:1.5rem 0}
  .kv-banner img,.kv-visual img{border-radius:6px}
  #content-main table{font-size:0.8rem}
  #content-main th,#content-main td{padding:0.6rem 0.75rem}
  #guides,#questions{padding:2rem 0}
}
