:root {
  --r3-black:#f7f2e8; --r3-surface:#eee4d5; --r3-cherry:#a45e3d;
  --r3-paper:#342b25; --r3-muted:#756a60; --r3-border:#dfd2c0;
  --max:1160px;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; min-height:100vh; overflow-x:hidden; background:var(--r3-black); color:var(--r3-paper); font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
button,input,textarea,select { font:inherit; }
a { color:inherit; }
::selection { background:#d5b29a; }
.bg { position:fixed; inset:0; pointer-events:none; background:radial-gradient(800px 550px at 8% 10%,rgba(234,215,184,.44),transparent 72%),radial-gradient(700px 520px at 92% 42%,rgba(210,176,151,.28),transparent 76%); }
.topbar { position:sticky; z-index:50; top:0; display:flex; align-items:center; justify-content:center; height:72px; padding:10px 22px; background:rgba(247,242,232,.91); border-bottom:1px solid rgba(122,97,75,.12); backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px); }
.topbarInner { width:100%; max-width:var(--max); display:flex; justify-content:space-between; align-items:center; gap:20px; }
.topLeft { display:flex; align-items:center; gap:12px; flex:0 0 auto; }
.nelpLink { display:grid; place-items:center; flex:0 0 36px; width:36px; height:36px; border:1px solid #dfd2c0; border-radius:11px; background:#f1e8db; text-decoration:none; }
.nelpLink:hover { background:#e9dac8; border-color:#c9aa90; }
.nelpLink img { display:block; width:21px; height:21px; object-fit:contain; }
.topDot { flex:0 0 4px; width:4px; height:4px; border-radius:50%; background:#c9b6a4; }
.brand { display:flex; align-items:center; gap:10px; text-decoration:none; }
.brandLogo { width:34px; height:34px; object-fit:contain; }
.brandText { display:flex; flex-direction:column; line-height:1.08; }
.brandText strong { font-size:1.13rem; font-weight:850; letter-spacing:-.04em; }
.brandText span { margin-top:3px; color:var(--r3-muted); font-size:.67rem; letter-spacing:.03em; }
.navWrap { display:flex; justify-content:flex-end; align-items:center; min-width:0; }
.nav { display:flex; align-items:center; gap:3px; }
.nav a { display:block; padding:9px 12px; color:var(--r3-paper); text-decoration:none; background:transparent; border:1px solid transparent; border-radius:999px; white-space:nowrap; font-size:.88rem; font-weight:650; }
.nav a:hover,.nav a.is-active { background:#efe4d5; border-color:#e5d6c2; }
.nav a.navDownload,.nav a.navDownload:hover { margin-left:5px; padding-inline:17px; color:#fff8ef; background:var(--r3-cherry); border-color:var(--r3-cherry); }
.langSelect { min-height:38px; margin-left:7px; padding:6px 10px; color:var(--r3-paper); background:#f1e8db; border:1px solid #e1d3c1; border-radius:999px; font-size:.84rem; font-weight:700; cursor:pointer; }
.langSelect option { color:var(--r3-paper); background:var(--r3-black); }
.navToggle { display:none; width:42px; height:42px; padding:10px; border:1px solid #dfd2c0; border-radius:13px; background:#f0e5d6; cursor:pointer; }
.navToggle span { display:block; height:2px; width:100%; border-radius:2px; background:var(--r3-paper); transition:transform .2s,opacity .2s; }
.navToggle span + span { margin-top:5px; }
.navToggle.open span:first-child { transform:translateY(7px) rotate(45deg); }
.navToggle.open span:nth-child(2) { opacity:0; }
.navToggle.open span:last-child { transform:translateY(-7px) rotate(-45deg); }
.wrap { position:relative; z-index:1; max-width:var(--max); margin:0 auto; padding:0 22px 46px; }
.wrap > .pageHeader,.wrap > .supportHeader,.wrap > .panel { margin-top:32px; }
a:focus-visible,button:focus-visible,select:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible { outline:3px solid #b47757; outline-offset:3px; }
@media(max-width:860px) {
  .navToggle { display:block; }
  .nav { display:none; position:absolute; top:72px; left:0; right:0; flex-direction:column; align-items:stretch; gap:3px; padding:16px 22px 22px; background:rgba(247,242,232,.99); border-bottom:1px solid #dfd2c0; box-shadow:0 22px 35px rgba(52,43,37,.08); }
  .nav.is-open { display:flex; }
  .nav a.navDownload { margin:9px 0 0; text-align:center; }
  .langSelect { width:100%; margin:7px 0 0; }
}
@media(max-width:520px) { .topbar { padding-inline:16px; } .wrap { padding-inline:16px; } .brandText span { display:none; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .navToggle span { transition:none; } }
