/* Shared app invitation. The QR assets and module are served with the site. */
.ng-share{--share-ink:#f0dfba;--share-muted:#ccbbb7;--share-line:#c5a87445;--share-bg:#1c1423;--share-glow:#342338;font-family:Georgia,serif;color:var(--share-ink)}
.ng-share--temple{--share-ink:#f0d9a6;--share-muted:#c7b397;--share-line:#bd9f6d55;--share-bg:#1d1510;--share-glow:#39271b;font-family:'Noto Serif','Noto Serif SC','Noto Serif Thai',Georgia,serif}
.ng-share svg,.ng-share-inline svg{display:block;width:19px;height:19px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.ng-share button,.ng-share a{touch-action:manipulation}
.ng-share button:focus-visible,.ng-share a:focus-visible,.ng-share input:focus-visible,.ng-share-inline:focus-visible{outline:2px solid var(--share-ink,#f0dfba);outline-offset:4px}
.ng-share-trigger{position:fixed;z-index:32;top:20px;right:136px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;gap:9px;padding:0;background:#17111fe8;border:1px solid var(--share-line);border-radius:50%;color:var(--share-ink);cursor:pointer;transition:background .2s,border-color .2s}
.ng-share-trigger:hover{background:var(--share-glow);border-color:#d6bb8388}
.ng-share-trigger span{display:none}
.ng-share--temple .ng-share-trigger{top:auto;bottom:max(20px,env(safe-area-inset-bottom));right:max(32px,env(safe-area-inset-right));width:auto;min-width:44px;padding:0 14px;border-radius:5px;background:#1d1510ed;z-index:38}
.ng-share--temple .ng-share-trigger span{display:inline;font-size:12px}
.temple-entering .ng-share--temple .ng-share-trigger{visibility:hidden;pointer-events:none}
.ng-share-inline{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 12px;border:1px solid #c5a87450;border-radius:4px;background:transparent;color:#f0dfba;font:11px Georgia,serif;cursor:pointer}
.ng-share-dialog{position:fixed;inset:0;margin:auto;padding:0;width:min(430px,calc(100% - 32px));max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain;border:1px solid var(--share-line);border-radius:16px;background:radial-gradient(ellipse at 50% 0,var(--share-glow),var(--share-bg) 65%);color:var(--share-ink);box-shadow:0 24px 90px #0008;font:inherit}
.ng-share-dialog::backdrop{background:#0a070db3}
.ng-share-sheet{position:relative;padding:28px;text-align:center}
.ng-share-close{position:absolute;top:10px;right:10px;width:44px;height:44px;display:grid;place-items:center;padding:0;background:none;border:0;border-radius:50%;color:var(--share-muted);cursor:pointer}
.ng-share-kicker{margin:1px 34px 10px;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--share-muted)}
.ng-share-title{margin:0 20px;font:400 29px/1.2 Georgia,serif;color:var(--share-ink)}
.ng-share-description{max-width:310px;margin:10px auto 19px;color:var(--share-muted);line-height:1.55;font-size:14px}
.ng-share-code{display:block;width:180px;height:180px;margin:0 auto;background:white;border-radius:5px;image-rendering:pixelated}
.ng-share-scan{margin:10px 0 5px;color:var(--share-muted);font-size:12px;line-height:1.5}
.ng-share-download{display:inline-flex;align-items:center;gap:6px;min-height:36px;margin-bottom:12px;color:var(--share-ink);font-size:12px;text-decoration:underline;text-decoration-color:#c5a87470;text-underline-offset:4px}
.ng-share-download svg{width:15px;height:15px}
.ng-share-link-label{display:block;text-align:left;font-size:11px;color:var(--share-muted);margin:0 0 7px}
.ng-share-link-row{display:flex;align-items:stretch;border:1px solid var(--share-line);border-radius:7px;overflow:hidden;background:#0a07104d}
.ng-share-link-row:focus-within{outline:2px solid var(--share-ink);outline-offset:4px}
.ng-share-url{display:block;min-width:0;flex:1;padding:12px 10px;color:var(--share-muted);background:transparent;border:0;border-radius:0;font:12px/1.4 system-ui,sans-serif;letter-spacing:0;text-overflow:ellipsis}
.ng-share-copy{flex:none;min-width:62px;min-height:44px;padding:8px 13px;border:0;border-left:1px solid var(--share-line);background:#c5a87414;color:var(--share-ink);font:inherit;font-size:12px;cursor:pointer}
.ng-share-social{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
.ng-share-social a,.ng-share-native{display:flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:10px 8px;border:1px solid var(--share-line);border-radius:7px;background:#c5a8740b;color:var(--share-ink);text-decoration:none;font:inherit;font-size:13px;cursor:pointer;transition:background .2s}
.ng-share-social a:hover,.ng-share-copy:hover,.ng-share-native:hover{background:#c5a87420}
.ng-share-native{width:100%;margin-top:10px}
.ng-share [hidden]{display:none!important}
.ng-share-status{min-height:18px;margin:12px 0 0;font-size:12px;line-height:1.5;color:var(--share-ink)}
@media(max-width:760px){.ng-share-trigger{top:16px;right:124px}.ng-share--temple .ng-share-trigger{right:max(16px,env(safe-area-inset-right));padding:0;width:44px}.ng-share--temple .ng-share-trigger span{display:none}.ng-share-sheet{padding:25px 20px 20px}.ng-share-title{font-size:26px}.ng-share-description{font-size:13px}.ng-share-kicker{font-size:9px;letter-spacing:.12em}}
@media(max-height:600px){.ng-share-code{width:148px;height:148px}.ng-share-sheet{padding-top:22px}.ng-share-description{margin-bottom:12px}}
@media(prefers-reduced-motion:reduce){.ng-share *{transition:none!important}}
