:root{color-scheme:dark;--paper:#f5efdf;--gold:#dfb872;--muted:#c3c9c1;--night:#142525}*{box-sizing:border-box}body{margin:0;background:var(--night);color:var(--paper);font:16px/1.6 -apple-system,BlinkMacSystemFont,system-ui,sans-serif}a{color:inherit;text-underline-offset:5px}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{opacity:.6;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:5px}[hidden]{display:none!important}h1,h2,blockquote{font-family:Georgia,'Times New Roman',serif;font-weight:400}h1,h2{line-height:1.12;letter-spacing:-1px}h2{font-size:34px}.invitation{overscroll-behavior:none}.scene{position:relative;isolation:isolate;display:grid;grid-template-rows:auto minmax(min-content,1fr) auto;width:100%;min-height:100svh;height:100dvh;overflow:auto;background:var(--night)}.scene-header{z-index:3;display:flex;align-items:center;justify-content:space-between;padding:max(20px,env(safe-area-inset-top)) 24px 12px}.wordmark{display:flex;align-items:center;gap:10px;font:22px Georgia,serif;letter-spacing:-.4px}.wordmark svg{width:15px;height:25px;color:var(--gold)}.icon-button{width:44px;height:44px;border:1px solid #ffffff25;border-radius:50%;background:#14252530;font-family:Georgia,serif;font-style:italic;font-size:18px}.artwork,.art-shade,#light-map,.map-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.artwork{object-fit:cover;object-position:center}.art-shade{z-index:-1;background:linear-gradient(180deg,#101d253d 0%,#0c172423 22%,#0c172460 50%,#101f29c7 78%,#142525f0 100%)}.verse-content{align-self:center;justify-self:center;text-align:center;max-width:620px;padding:30px 30px 40px;text-shadow:0 2px 24px #0005}.dedication{font-size:10px;text-transform:uppercase;letter-spacing:2.1px;line-height:1.7;margin:0 0 26px;color:#f5efdfcf}blockquote{margin:0;font-size:clamp(28px,4.5vw,43px);line-height:1.3;letter-spacing:-.55px;text-wrap:pretty}blockquote p{margin:0}cite{display:block;margin-top:25px;font:10px/1.6 -apple-system,BlinkMacSystemFont,system-ui,sans-serif;font-style:normal;letter-spacing:2px;text-transform:uppercase;color:#f5efdfce}.verse-actions,.map-actions{z-index:2;width:min(100%,440px);justify-self:center;text-align:center;padding:16px 28px max(24px,env(safe-area-inset-bottom))}.invitation-line{font:italic 16px/1.55 Georgia,serif;color:#f5efdfbd;margin:0 0 25px}.primary{display:flex;justify-content:center;align-items:center;gap:13px;width:100%;min-height:56px;padding:16px 24px;border:0;border-radius:40px;background:var(--paper);color:var(--night);font-size:15px;font-weight:500;text-decoration:none}.primary svg{width:15px;height:23px}.text-button{border:0;background:none;min-height:44px;padding:12px 6px;margin-top:8px;font-size:13px;color:#f5efdfc9}.text-button span{margin-left:8px}.back-button{display:flex;gap:10px;align-items:center;background:#14252585;border:0;border-radius:24px;padding:8px 16px;min-height:44px;font-size:21px}.back-button span{font-size:13px}.map-scene{grid-template-rows:auto 1fr auto}.map-intro{align-self:start;justify-self:center;text-align:center;pointer-events:none;padding:26px 24px;max-width:460px}.map-intro .dedication{margin-bottom:16px}.map-intro h1{font-size:clamp(35px,5vw,49px);margin:0;font-weight:400}.map-shade{z-index:-1;pointer-events:none;background:linear-gradient(180deg,#142525db 0%,#1425259c 24%,#14252500 44%,#14252525 60%,#142525e0 83%,#142525 100%)}#light-map{isolation:isolate;text-align:left;background:#142525;z-index:-2}#light-map .leaflet-tile-pane{filter:brightness(.38) saturate(.25)}#light-map .leaflet-control-attribution{background:#142525d9;color:#f5efdf;font-size:9px;max-width:80vw}#light-map .leaflet-control-attribution a{color:#f5efdf}#light-map .leaflet-bottom{bottom:0;z-index:0}.light-glows{position:absolute;pointer-events:none}.action-copy{font:20px/1.45 Georgia,serif;margin:0 0 24px}.privacy-note,.renew-note{font-size:11px;line-height:1.65;color:#f5efdf9e;margin:13px 0 0}.map-actions{padding-bottom:max(36px,calc(env(safe-area-inset-bottom) + 20px))}.status{font-size:13px;line-height:1.5;color:var(--gold);margin:8px 0 0}.status:empty,.map-status:empty{display:none}.map-status{font-size:11px;line-height:1.4;color:var(--muted);margin:8px 0}.install-link{font-size:12px;margin-top:16px;color:var(--muted)}dialog{width:min(calc(100% - 32px),420px);max-height:85dvh;overflow:auto;border:1px solid #ffffff20;border-radius:26px;background:#172c2b;color:var(--paper);padding:32px;box-shadow:0 20px 100px #0008}dialog::backdrop{background:#071614a8;backdrop-filter:blur(10px)}dialog p{font-size:14px;color:var(--muted)}dialog .dedication{color:var(--gold);margin-top:12px}dialog h2{margin:20px 0 26px}dialog nav{display:grid;gap:14px;font-size:14px;margin:24px 0}dialog .dialog-close{position:absolute;top:12px;right:12px;width:44px;height:44px;border:0;background:none;font-size:26px;color:var(--muted)}dialog label{font-size:12px;display:block;margin-top:20px;color:var(--muted)}dialog input{width:100%;padding:12px;border:1px solid #ffffff25;border-radius:12px;background:#112421;color:var(--paper);font-size:12px;margin-top:6px}.chain{font-size:12px!important}#share-preview{width:100%;max-height:38vh;object-fit:contain;margin:0 0 18px;border-radius:12px}#share-status{color:var(--gold)}.no-script{position:fixed;bottom:0;background:#142525;padding:20px;margin:0;text-align:center;width:100%;font-size:13px}.invitation:has(.no-script) .verse-actions{visibility:hidden}body:not(.invitation)>header,body:not(.invitation)>main{max-width:560px;padding:28px;margin:auto}body:not(.invitation) h1{font-size:48px}body:not(.invitation) .spark{color:var(--gold);font-size:38px}
@media(max-height:700px){.scene-header{padding-top:max(8px,env(safe-area-inset-top))}.verse-content{padding:12px 28px 20px}blockquote{font-size:26px}.dedication{margin-bottom:16px}.verse-actions{padding-top:8px;padding-bottom:max(10px,env(safe-area-inset-bottom))}.invitation-line{font-size:14px;margin-bottom:15px}.map-intro{padding:10px 24px}.map-intro h1{font-size:32px}.map-intro .dedication{margin-bottom:10px}.action-copy{font-size:18px;margin-bottom:14px}}
@media(min-width:800px){.verse-content{max-width:650px}.scene-header{padding:30px 40px}.verse-actions{padding-bottom:42px}.map-actions{padding-bottom:42px}.map-intro{padding-top:30px}}
@media(prefers-reduced-motion:no-preference){.arriving .verse-content,.arriving .map-intro{animation:arrive .9s ease both}.arriving .verse-actions,.arriving .map-actions{animation:arrive .9s .12s ease both}.map-scene.new-light .light-glows{animation:light-arrives 1.8s ease both}@keyframes arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes light-arrives{from{opacity:.15;filter:blur(6px)}to{opacity:1;filter:blur(0)}}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.map-credit{position:absolute;right:8px;bottom:max(3px,env(safe-area-inset-bottom));z-index:4;font-size:9px;line-height:1.3;color:#f5efdfbf;background:#142525bf;padding:2px 4px;border-radius:3px}
