/* UniNote's public pages (topic pages): the app's colours and fonts on ruled notebook paper. */
:root{
  --paper:#f6f6f8; --surface:#fff; --ink:#191c24; --ink-2:#4b5262; --ink-3:#828a9c; --line:#e0e3ea; --rule:#e4e8f2;
  --accent:#b23b34; --accent-soft:#f6e7e5; --go:#1f9d55; --focus:#2f5fd0;
  --font-ui:"Public Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --font-display:"Newsreader",Georgia,serif;
  --font-mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --paper:#13151a; --surface:#1a1d24; --ink:#e9ebf1; --ink-2:#aab2c3; --ink-3:#7b8497; --line:#2c313b; --rule:#262b34;
  --accent:#e07b70; --accent-soft:#33221f; --go:#4ec98a; --focus:#7aa2f0;
}}
:root[data-theme="dark"]{
  --paper:#13151a; --surface:#1a1d24; --ink:#e9ebf1; --ink-2:#aab2c3; --ink-3:#7b8497; --line:#2c313b; --rule:#262b34;
  --accent:#e07b70; --accent-soft:#33221f; --go:#4ec98a; --focus:#7aa2f0;
}
*{box-sizing:border-box}
body{
  margin:0; color:var(--ink); font-family:var(--font-ui); font-size:16px; line-height:1.65; -webkit-font-smoothing:antialiased;
  background:
    radial-gradient(42rem 30rem at 8% 0%, color-mix(in srgb, var(--accent) 12%, transparent), transparent 70%),
    repeating-linear-gradient(to bottom, transparent 0 31px, color-mix(in srgb, var(--rule) 70%, transparent) 31px 32px),
    var(--paper);
}
a{color:var(--accent)}
.top{display:flex; align-items:center; justify-content:space-between; gap:12px; max-width:960px; margin:0 auto; padding:18px 16px}
.brand{display:flex; align-items:center; gap:10px; color:var(--ink); text-decoration:none; font-family:var(--font-display); font-size:22px; font-weight:500}
.brand .brand-lockup{display:block; height:28px; width:auto}
.btn{display:inline-flex; align-items:center; gap:8px; padding:10px 18px; border-radius:12px; font-weight:600; font-size:15px;
  text-decoration:none; background:var(--ink); color:var(--paper); border:1px solid var(--ink)}
.btn.ghost{background:transparent; color:var(--ink); border-color:var(--line)}
.btn:hover{opacity:.92}
main{max-width:760px; margin:0 auto; padding:28px 16px 64px}
.eyebrow{font-family:var(--font-mono); font-size:11.5px; letter-spacing:.11em; text-transform:uppercase; color:var(--ink-3)}
h1{font-family:var(--font-display); font-weight:500; font-size:clamp(34px, 6vw, 48px); letter-spacing:-.02em; line-height:1.08; margin:10px 0 14px}
h2{font-family:var(--font-display); font-weight:500; font-size:clamp(24px, 3.6vw, 30px); letter-spacing:-.01em; line-height:1.2; margin:48px 0 10px}
h3{font-size:16px; margin:0 0 4px}
p, li{color:var(--ink-2)}
.lede{font-size:18px; line-height:1.6; margin:0 0 22px}
.cta{display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin:0 0 8px}
.fine{font-size:13px; color:var(--ink-3)}
.steps{list-style:none; padding:0; margin:18px 0 0; display:grid; gap:12px; counter-reset:s}
.steps li{counter-increment:s; display:flex; gap:14px; align-items:flex-start; background:color-mix(in srgb, var(--surface) 85%, transparent);
  border:1px solid var(--line); border-radius:14px; padding:14px 16px}
.steps li::before{content:counter(s); flex:0 0 28px; height:28px; border-radius:50%; display:grid; place-items:center;
  background:var(--accent-soft); color:var(--accent); font-weight:700; font-size:13px}
.steps b{display:block; color:var(--ink)}
.cards{display:grid; gap:12px; grid-template-columns:repeat(auto-fill, minmax(min(240px, 100%), 1fr)); margin-top:16px}
.card{background:color-mix(in srgb, var(--surface) 85%, transparent); border:1px solid var(--line); border-radius:14px; padding:16px}
.card p{margin:0; font-size:14.5px}
ul.check{list-style:none; padding:0}
ul.check li{padding-left:22px; position:relative; margin-bottom:6px}
ul.check li::before{content:"✓"; position:absolute; left:0; color:var(--go); font-weight:700}
.faq details{background:color-mix(in srgb, var(--surface) 85%, transparent); border:1px solid var(--line); border-radius:14px; padding:0 16px; margin-bottom:10px}
.faq summary{cursor:pointer; padding:14px 0; font-weight:600; color:var(--ink)}
.faq p{margin:0 0 14px}
.end{margin-top:56px; padding:28px 20px; text-align:center; background:color-mix(in srgb, var(--surface) 85%, transparent); border:1px solid var(--line); border-radius:18px}
.end h2{margin:0 0 6px}
.end p{margin:0 0 16px}
footer{border-top:1px solid var(--line); padding:22px 16px 30px; text-align:center; font-size:13px; color:var(--ink-3)}
footer nav{display:flex; flex-wrap:wrap; gap:6px 16px; justify-content:center; margin-bottom:8px}
footer a{color:var(--ink-2); text-decoration:none}
footer a:hover{color:var(--ink); text-decoration:underline}
