:root{--bg:#fff;--ink:#16202e;--red:#c4161c;--muted:#5f6b7a;--rule:#e3e6ea;--paper:#fafbfc}
@media (prefers-color-scheme:dark){:root{--bg:#12161c;--ink:#e8ecf1;--red:#ff5a5f;--muted:#9aa4b1;--rule:#2a313a;--paper:#181d24}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.55 "Archivo",system-ui,-apple-system,"Segoe UI",sans-serif}
main{max-width:680px;margin:0 auto;padding:32px 20px 64px}
a{color:inherit;text-decoration-color:var(--red);text-underline-offset:3px}
a:focus-visible,input:focus-visible{outline:3px solid var(--red);outline-offset:2px}
h1{font-size:clamp(40px,9vw,68px);line-height:1;margin:8px 0 6px;font-weight:800;font-stretch:112%;letter-spacing:-.02em}
h2{font-size:26px;font-weight:800;font-stretch:112%;margin:48px 0 2px}
.crumb{margin:0;color:var(--muted);font-size:15px}
.place,.meta{color:var(--muted);margin:0}
/* L'elemento memorabile: il foglio del calendario a strappo */
.leaf{display:grid;grid-template-columns:auto 1fr;column-gap:20px;align-items:end;margin:32px 0 8px;padding:20px 24px;background:var(--paper);border-top:10px solid var(--red);border-radius:2px 2px 10px 10px}
.leaf-num{grid-row:span 3;font-size:clamp(96px,26vw,160px);line-height:.8;font-weight:800;font-stretch:125%;color:var(--red);font-variant-numeric:tabular-nums}
.leaf-month{font-size:24px;font-weight:700}
.leaf-saint{font-size:19px}
.leaf-day{color:var(--muted);font-size:15px}
.pending{margin:28px 0;padding:16px 20px;border-left:4px solid var(--red);background:var(--paper)}
.days{list-style:none;padding:0;margin:16px 0 0}
.row{display:grid;grid-template-columns:48px 7.5em 1fr;gap:14px;align-items:baseline;padding:10px 0;border-bottom:1px solid var(--rule)}
.num{font-size:28px;font-weight:800;font-stretch:112%;color:var(--red);text-align:right;font-variant-numeric:tabular-nums}
.when{font-weight:600}
.when small{display:block;font-weight:400;color:var(--muted);font-size:14px}
.row.local .what{font-weight:700}
.use p{margin:10px 0}
.btn{display:inline-block;background:var(--red);color:#fff;text-decoration:none;padding:12px 18px;border-radius:6px;font-weight:700}
code{font-size:14px;background:var(--paper);padding:2px 6px;border-radius:4px;word-break:break-all}
.foot{margin-top:48px;color:var(--muted);font-size:15px}
.search{display:block;font-weight:700;margin:32px 0 8px}
#q{width:100%;font:inherit;font-size:20px;padding:12px 14px;border:2px solid var(--ink);border-radius:6px;background:var(--bg);color:var(--ink)}
.res,.grid{list-style:none;padding:0}
.res li{padding:8px 0;border-bottom:1px solid var(--rule)}
.grid{columns:2 12em;column-gap:24px}
.grid li{padding:4px 0}
@media (max-width:420px){.row{grid-template-columns:44px 6.5em 1fr;gap:10px}}

/* documentazione API */
.intro{font-size:19px;max-width:62ch}
.ep{border-top:1px solid var(--rule);padding:16px 0}
.ep-call{margin:0 0 6px;display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.verbo{font:700 12px/1.6 "Archivo",sans-serif;background:var(--red);color:#fff;padding:1px 7px;border-radius:4px}
.ep p{margin:6px 0}
.ep-try a{font-size:15px}
.ep-lab{color:var(--muted);font-size:14px;margin-top:12px}
pre{background:var(--paper);border-radius:8px;padding:14px 16px;overflow-x:auto;font-size:13.5px;line-height:1.6}
pre code{background:none;padding:0}
.apilink{margin:28px 0 0;padding:14px 18px;background:var(--paper);border-left:4px solid var(--red);border-radius:0 8px 8px 0}
