:root{
  --bg:#0d0f18; /* main site background */
  --card:#121528;
  --text:#cbd6f7;
  --head:#4da6ff;
  --muted:#8ea2dc;
  --border:rgba(77,166,255,.25);
  --btn-bg:#1a2140;
  --btn-bg-h:#243161;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0; font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, Helvetica, sans-serif;
  background:var(--bg); color:var(--text); line-height:1.65; -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
.container{max-width:960px; margin:0 auto; padding: clamp(16px, 2vw, 32px);}
.header{display:flex; align-items:center; justify-content:space-between; gap:12px; padding:16px 0;}
.brand a{color:var(--muted); text-decoration:none}
.brand a:hover{color:var(--head)}
.lang-switch{border:1px solid var(--border); background:var(--btn-bg); color:var(--text); padding:8px 12px; border-radius:8px; cursor:pointer}
.lang-switch:hover{background:var(--btn-bg-h)}

.card{background:var(--card); border:1px solid var(--border); border-radius:16px; padding:clamp(16px,2vw,24px); box-shadow:0 6px 28px rgba(20,35,90,.25)}
.card + .card{margin-top:20px}

h1{color:var(--head); font-size: clamp(1.6rem, 1.2rem + 1.6vw, 2.2rem); margin: 8px 0 18px}
h2{color:var(--head); font-size: clamp(1.1rem, 0.9rem + .8vw, 1.35rem); margin: 24px 0 8px}
h3{color:var(--muted); font-size:1rem; margin:18px 0 8px}

p,li{color:var(--text)}
ul{padding-left:18px}

a{color:var(--head)} a:hover{text-decoration:underline}

.back-button{display:inline-block; margin-top:20px; padding:10px 16px; border:1px solid var(--border); border-radius:10px; background:var(--btn-bg); color:var(--text); text-decoration:none}
.back-button:hover{background:var(--btn-bg-h)}

.small{color:var(--muted); font-size:.95rem}
.hr{height:1px; background:var(--border); margin:16px 0}

.notice{border-left:3px solid var(--head); padding-left:12px; color:var(--muted)}

.footer{opacity:.8; font-size:.9rem; margin:28px 0}

/* mobile table styles if used later */
.table{width:100%; border-collapse:collapse}
.table th,.table td{border:1px solid var(--border); padding:10px; text-align:left}
.table thead th{position:sticky; top:0; background:var(--card)}

@media (max-width:720px){
  .header{flex-wrap:wrap}
}

.lang-switch:focus,
.back-button:focus,
a:focus{ outline: 2px solid var(--head); outline-offset: 2px; }
