*{box-sizing:border-box}
html,body{margin:0;padding:0}
img{display:block}
body{background:var(--surface-0);color:var(--text-primary);font-family:var(--font-body);font-weight:400;font-size:var(--text-base);line-height:var(--lh-body);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;letter-spacing:var(--ls-tight);line-height:var(--lh-tight);margin:0;color:var(--text-primary)}
p{margin:0}
a{color:var(--copper-500);text-decoration:none}
a:hover{color:var(--copper-600)}
.ws-label{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--text-tertiary)}
.ws-card{background:var(--surface-1);border:var(--border-hairline);border-radius:var(--radius-sm)}
.ws-card-ink{background:var(--grad-ink);border:1px solid var(--line-on-ink);border-radius:var(--radius-sm);color:var(--text-on-ink)}
.ws-glass{background:var(--glass-light);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-light-line);border-radius:var(--radius-sm)}
.ws-glass-snow{background:var(--glass-snow);backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--line-1)}
