
.prose{max-width:720px}
.prose h1{margin-bottom:18px}
.prose h2{margin:38px 0 10px}
.prose p{margin:0 0 14px;font-size:17px;line-height:1.65}
.prose .lede{color:var(--dim);font-size:14px}
.prose .quote{padding:13px 17px;background:var(--panel);border-left:3px solid var(--hot);
  font-size:15px}
.prose .fine{margin:0 0 14px 20px}
.prose .fine li{margin-bottom:7px;font-size:16px;line-height:1.6}
.prose .all{margin-top:8px}
.prose h3{margin:26px 0 6px;font-size:18px}
.record .rec-work{border:1px solid var(--line);border-radius:10px;padding:12px 14px;margin:0 0 14px}
.record .rec-work legend{font-weight:600;padding:0 6px}
.record label{display:block;font-size:14px;margin:8px 0 0}
.record .rec-in{display:block;width:100%;max-width:420px;font:inherit;font-size:15px;padding:8px 10px;margin-top:4px;
  border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--ink);box-sizing:border-box}
.record textarea.rec-in{max-width:560px}
.record .fp code{font-size:12px;word-break:break-all}
.record .edit-on{padding:10px 14px;border-left:3px solid var(--hot);background:var(--panel)}
.palettes .pal{margin:30px 0;padding-top:18px;border-top:1px solid var(--line)}
.palettes .pal h2{margin:0 0 4px}
.palettes .sw-row{display:grid;grid-template-columns:repeat(6,minmax(0,64px));gap:8px;margin:12px 0 26px}
.palettes .sw{display:block;height:48px;border-radius:5px;border:1px solid var(--line);position:relative}
.palettes .sw span{position:absolute;left:0;right:0;bottom:-18px;font-size:11px;color:var(--dim)}
.palettes .pal-act button{appearance:none;font:inherit;font-size:14px;background:none;border:1px solid var(--line);
  border-radius:16px;padding:7px 12px;min-height:36px;cursor:pointer;color:var(--ink)}
.prose pre{max-width:100%;overflow-x:auto}
/* a scroller the keyboard can reach: Safari never puts one in the Tab order on its own */
.prose pre:focus-visible{outline:2px solid var(--hot);outline-offset:2px}
/* the contact form: fields never stretch past a readable width */
.ask label{display:block;font-weight:600;margin:18px 0 6px;font-size:15px}
.ask .opt{font-weight:400;color:var(--dim)}
.ask input,.ask select,.ask textarea{display:block;width:100%;max-width:420px;font:inherit;font-size:16px;
  color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:10px 12px}
.ask textarea{max-width:560px;resize:vertical}
.ask input:focus-visible,.ask select:focus-visible,.ask textarea:focus-visible{outline:2px solid var(--hot);outline-offset:1px}
.ask .hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.ask button{margin-top:22px;border:0;cursor:pointer;font:inherit}
