/* the platform's own pages: store, legal */
:root { --bg: #120e22; --card: #1d1733; --line: #ffb35c55; --gold: #ffe2a0; --amber: #ffb35c; --text: #f3e8d4; --dim: #b5aac8; --btn: #3a2a58; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--bg); color: var(--text); font: 17px/1.65 Heebo, system-ui, sans-serif; }
a { color: var(--gold); }
.wrap { max-width: 980px; margin: 0 auto; padding: 0 16px; }
header.top { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 0; }
header.top .brand { font-family: 'Frank Ruhl Libre', serif; font-weight: 900; font-size: 22px; color: var(--gold); text-decoration: none; }
header.top nav { display: flex; gap: 14px; flex-wrap: wrap; font-size: 15px; }
header.top nav a { color: var(--dim); text-decoration: none; }
header.top nav a:hover { color: var(--gold); }
.btn { display: inline-block; font: inherit; font-weight: 800; border: 1px solid var(--line); background: var(--btn); color: var(--text); border-radius: 12px; padding: 11px 22px; cursor: pointer; text-decoration: none; }
.btn:hover { background: #4b3870; }
.btn.primary { background: #7a5214; border-color: var(--amber); color: #fff4dc; }
.btn.primary:hover { background: #94661c; }
section.card { background: var(--card); border: 1px solid var(--line); border-radius: 16px; padding: 22px; margin: 18px 0; }
h1, h2, h3 { font-family: 'Frank Ruhl Libre', serif; color: var(--gold); line-height: 1.25; }
.legal h2 { font-size: 22px; margin-top: 28px; }
.legal { padding-bottom: 40px; }
.legal li { margin-bottom: 6px; }
.note { background: #ffd54a22; border: 1px dashed #ffd54a88; border-radius: 10px; padding: 10px 14px; font-size: 15px; }
footer.bottom { border-top: 1px solid #ffffff18; margin-top: 40px; padding: 22px 0 40px; color: var(--dim); font-size: 14px; }
footer.bottom nav { display: flex; gap: 16px; flex-wrap: wrap; margin-bottom: 8px; }
footer.bottom a { color: var(--dim); }
:focus-visible { outline: 3px solid var(--amber); outline-offset: 2px; }
.skip { position: absolute; inset-inline-start: -999px; top: 8px; background: var(--gold); color: #000; padding: 6px 12px; border-radius: 8px; }
.skip:focus { inset-inline-start: 8px; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } * { animation: none !important; transition: none !important; } }
