/* widgets.zmeustudio.com: shared look of the docs, terms and privacy pages */
:root {
  --ink: #FFF4E6; --muted: rgba(255, 236, 214, .72); --faint: rgba(255, 236, 214, .5);
  --night: #140B22; --dusk: #2A1535; --peach: #FFC796; --rose: #F2A7A0;
  --line: rgba(255, 236, 214, .12); --glass: rgba(255, 244, 230, .055); --glass-hi: rgba(255, 244, 230, .09);
  --paper: #F6EFE3;
  --serif: 'Fraunces', Georgia, serif; --sans: 'Urbanist', system-ui, sans-serif;
}
* { box-sizing: border-box; }
html { background: var(--night); color: var(--ink); -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body { margin: 0; font: 400 17px/1.65 var(--sans); -webkit-font-smoothing: antialiased; min-height: 100vh; overflow-x: hidden;
  background:
    radial-gradient(80vmax 50vmax at 85% -10%, rgba(242, 167, 160, .22), transparent 60%),
    radial-gradient(70vmax 45vmax at 0% 10%, rgba(120, 76, 160, .35), transparent 60%),
    linear-gradient(180deg, var(--dusk), var(--night) 70vh) fixed; }
/* a few slow stars */
body::before { content: ""; position: fixed; inset: 0; pointer-events: none; z-index: 0; opacity: .55;
  background-image:
    radial-gradient(1.2px 1.2px at 12% 18%, #fff 50%, transparent 51%), radial-gradient(1px 1px at 28% 8%, #fff 50%, transparent 51%),
    radial-gradient(1.4px 1.4px at 46% 22%, #ffe9d6 50%, transparent 51%), radial-gradient(1px 1px at 63% 6%, #fff 50%, transparent 51%),
    radial-gradient(1.2px 1.2px at 77% 26%, #fff 50%, transparent 51%), radial-gradient(1px 1px at 91% 12%, #ffe9d6 50%, transparent 51%),
    radial-gradient(1px 1px at 6% 40%, #fff 50%, transparent 51%), radial-gradient(1.2px 1.2px at 96% 44%, #fff 50%, transparent 51%);
  animation: twinkle 7s ease-in-out infinite alternate; }
@keyframes twinkle { to { opacity: .25; } }
.wrap { position: relative; z-index: 1; width: min(1120px, calc(100% - 32px)); margin: 0 auto; }

/* header */
.top { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 22px 0; }
.brand { display: inline-flex; align-items: baseline; gap: 10px; color: var(--ink); text-decoration: none; }
.brand b { font: italic 500 26px/1 var(--serif); color: var(--peach); }
.brand span { font: 600 11px/1 var(--sans); letter-spacing: .32em; text-transform: uppercase; color: var(--faint); }
.top nav { display: flex; gap: 4px; padding: 4px; border: 1px solid var(--line); border-radius: 999px; background: var(--glass); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); }
.top nav a { color: var(--muted); text-decoration: none; font-size: 14px; font-weight: 500; padding: 7px 14px; border-radius: 999px; transition: background .2s, color .2s; }
.top nav a:hover { color: var(--ink); }
.top nav a[aria-current] { color: var(--night); background: var(--peach); }

/* type */
.eyebrow { font: 600 12px/1 var(--sans); letter-spacing: .32em; text-transform: uppercase; color: var(--peach); }
h1 { margin: 18px 0 18px; font: 300 clamp(44px, 7.2vw, 88px)/.98 var(--serif); letter-spacing: -.03em; font-variation-settings: "opsz" 144; }
h1 em { font-style: italic; font-weight: 400; color: var(--peach); }
h2 { margin: 0 0 14px; font: 300 clamp(32px, 4.4vw, 50px)/1.05 var(--serif); letter-spacing: -.02em; }
h2 em { font-style: italic; color: var(--peach); }
h3 { margin: 0 0 6px; font: 500 20px/1.25 var(--serif); }
p { margin: 0 0 14px; color: var(--muted); }
a { color: var(--peach); }
.lead { font-size: clamp(18px, 1.6vw, 21px); max-width: 600px; }
code, pre, .mono { font: 13.5px/1.6 ui-monospace, 'SF Mono', Menlo, monospace; }
code { color: var(--ink); background: var(--glass-hi); border: 1px solid var(--line); border-radius: 6px; padding: 1px 6px; }

/* glass panels */
.glass { border: 1px solid var(--line); border-radius: 24px; background: linear-gradient(180deg, var(--glass-hi), var(--glass)); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); box-shadow: 0 30px 80px -40px rgba(0, 0, 0, .7), inset 0 1px 0 rgba(255, 255, 255, .06); }
section { padding: clamp(56px, 9vw, 110px) 0 0; }

/* buttons */
.btn { display: inline-flex; align-items: center; gap: 8px; border: 0; cursor: pointer; text-decoration: none; font: 600 15px/1 var(--sans); padding: 14px 20px; border-radius: 999px; color: var(--night); background: linear-gradient(180deg, #FFD7AE, var(--peach)); box-shadow: 0 10px 30px -10px rgba(255, 199, 150, .6); transition: transform .2s; }
.btn:hover { transform: translateY(-1px); }
.btn.ghost { color: var(--ink); background: var(--glass-hi); border: 1px solid var(--line); box-shadow: none; }

footer { position: relative; z-index: 1; margin-top: clamp(64px, 10vw, 120px); border-top: 1px solid var(--line); }
footer .wrap { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; padding: 26px 0 40px; font-size: 14px; color: var(--faint); }
footer a { color: var(--muted); text-decoration: none; margin-left: 18px; }
footer a:first-child { margin-left: 0; }

/* reading pages (terms, privacy) */
.read { width: min(720px, 100%); margin: clamp(30px, 6vw, 70px) auto 0; padding: clamp(28px, 5vw, 56px); }
.read h1 { font-size: clamp(42px, 6vw, 64px); margin-top: 6px; }
.read h2 { font: italic 400 26px/1.2 var(--serif); color: var(--peach); margin: 36px 0 10px; }
.read .date { font-size: 14px; color: var(--faint); }
.read .short { margin: 26px 0 6px; padding: 18px 20px; border-radius: 16px; background: rgba(255, 199, 150, .08); border: 1px solid rgba(255, 199, 150, .2); color: var(--ink); }
.read li { color: var(--muted); margin-bottom: 8px; }
.read ul { padding-left: 20px; }

@media (prefers-reduced-motion: reduce) { body::before { animation: none; } html { scroll-behavior: auto; } }
@media (max-width: 560px) { .top nav a { padding: 7px 10px; } .brand span { display: none; } }
