:root{--color-ink:#092e33;--color-paper:#f9faf7;--color-surface:#fff;--color-accent:#ad3826;--color-line:#cad4d1;--color-muted:#4b6262;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-xxl:48px;--radius-card:12px;--radius-control:8px;--radius-pill:999px;--type-body:17px;--type-label:14px;--type-title:32px;--interaction-minTarget:48px;--motion-fast:.16s}
:root{--ink:var(--color-ink);--paper:var(--color-paper);--accent:var(--color-accent);--line:var(--color-line);--muted:var(--color-muted)}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);margin:0;font:17px/1.65 Arial,Helvetica,sans-serif}a{color:inherit;text-underline-offset:5px}header,main,footer{max-width:1180px;margin:auto;padding:24px 40px}header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;display:flex}.brand{letter-spacing:-2px;font-size:36px;font-weight:900;line-height:1;text-decoration:none}.brand span{letter-spacing:1px;margin-top:10px;font-size:12px;font-weight:400;display:block}.edition,.eyebrow{letter-spacing:2px;font-size:13px;font-weight:700}.intro{padding:46px 0}.eyebrow{color:var(--accent)}h1,h2,h3{line-height:1.15}h1{letter-spacing:-2px;margin:24px 0;font:clamp(2.7rem,5vw,4.7rem)/1.08 Georgia,serif}h1 em{color:var(--accent);font-weight:400}.lead{max-width:650px;color:var(--muted);font-size:21px}.search{border:1px solid var(--ink);background:#fff;max-width:730px;margin:30px 0;display:flex}.search input{min-width:0;font:inherit;background:0 0;border:0;flex:1;padding:17px}.search button{font:inherit;background:var(--ink);color:#fff;cursor:pointer;border:0;padding:15px 25px;font-weight:700}.section{padding:30px 0}.section-title{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:24px;display:flex}.section-title h2{font:28px/1.2 Georgia,serif}.section-title span{white-space:nowrap;font-size:13px}.collections{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.collections>a{border:1px solid var(--line);background:#fff;padding:28px;text-decoration:none;transition:border-color .2s}.collections>a:hover{border-color:var(--accent)}.number{color:var(--accent);font:42px Georgia,serif}.collections h3{font:28px/1.15 Georgia,serif}.collections p{color:var(--muted)}.note{border-left:4px solid var(--accent);max-width:780px;margin:30px 0;padding:24px 28px}.note p{margin:8px 0}.reading{max-width:760px;padding:35px 0}.reading h1{font-size:48px}.reading h2{margin-top:36px}.empty{max-width:650px;padding:35px 0}.nav{border-top:1px solid var(--line);background:var(--paper);justify-content:center;gap:50px;padding:15px;display:flex;position:sticky;bottom:0}.nav a{font-size:15px;font-weight:700}footer{color:var(--muted);justify-content:space-between;gap:20px;margin-top:45px;font-size:14px;display:flex}footer p{margin:0}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.skip{z-index:100;background:#fff;padding:12px;position:fixed;top:-100px;left:20px}.skip:focus{top:10px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:700px){header,main,footer{padding:22px}.edition{display:none}.intro{padding:20px 0}.collections{grid-template-columns:1fr}.section-title span{display:none}h1{letter-spacing:-1px}.reading h1{font-size:38px}.lead{font-size:19px}footer{display:block}.nav{gap:35px}.search button{padding:12px}.section-title h2{font-size:25px}}.button{min-height:var(--interaction-minTarget);background:var(--ink);color:var(--color-surface);border:1px solid var(--ink);border-radius:var(--radius-control);font:inherit;cursor:pointer;justify-content:center;align-items:center;padding:10px 18px;text-decoration:none;display:inline-flex}.button.secondary{background:var(--color-surface);color:var(--ink)}.button:disabled{opacity:.65;cursor:wait}.place-actions,.pagination{gap:var(--space-md);margin:var(--space-lg) 0;flex-wrap:wrap;display:flex}.place-list{margin-top:var(--space-xl)}.muted,.attribution{color:var(--muted);font-size:var(--type-label)}.map-filters{align-items:end;gap:var(--space-md);flex-wrap:wrap;display:flex}.map-filters label{gap:var(--space-xs);font-size:var(--type-label);font-weight:700;display:grid}.map-filters input,.map-filters select{font:inherit;min-height:var(--interaction-minTarget);border:1px solid var(--line);border-radius:var(--radius-control);background:#fff;max-width:100%;padding:10px}.map-frame{border:1px solid var(--line);border-radius:var(--radius-card);position:relative;overflow:hidden}.map-canvas{background:#e5ebe7;height:min(65dvh,620px);min-height:320px}.map-sheet{bottom:var(--space-md);left:var(--space-md);right:var(--space-md);max-width:420px;max-height:75%;padding:var(--space-lg);background:var(--color-surface);border:1px solid var(--line);border-radius:var(--radius-card);position:absolute;overflow:auto;box-shadow:0 8px 30px #092e3326}.map-sheet h2{margin:8px 0}.map-sheet .close{float:right;cursor:pointer;background:0 0;border:0;min-width:48px;min-height:48px;font-size:28px}.map-results article{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-lg) 0;border-bottom:1px solid var(--line);display:flex}.map-results h3{margin:0}.map-results p{margin:8px 0}.nav a{align-items:center;min-height:48px;display:flex}.map-explorer{margin-top:var(--space-xl)}@media (max-width:700px){.nav{padding:8px 8px calc(8px + env(safe-area-inset-bottom));justify-content:space-around;gap:0}.nav a{font-size:13px}.map-filters{grid-template-columns:1fr 1fr;display:grid}.map-filters label:first-child{grid-column:1/-1}.map-filters input{width:100%}.map-results article{flex-direction:column;align-items:start}.map-sheet{padding:16px}.place-actions .button{flex:1}.map-explorer .note{margin-left:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.maplibregl-ctrl-group button{width:48px;height:48px}.map-sheet{max-width:none;max-height:none;margin:var(--space-md);box-shadow:none;position:relative;bottom:auto;left:auto;right:auto}
