.home-page.svelte-1uha8ag{min-height:100vh;min-height:var(--app-viewport-height,100vh);color:#f7ecd9;background:#061523}.hero.svelte-1uha8ag{isolation:isolate;min-height:100vh;min-height:var(--app-viewport-height,100vh);background:#071724;flex-direction:column;display:flex;position:relative;overflow:clip}.hero.svelte-1uha8ag:after{z-index:-1;pointer-events:none;content:"";background:linear-gradient(#020d1833 0%,#020d1829 48%,#061523 100%);position:absolute;inset:0}.hero-media.svelte-1uha8ag{z-index:-2;background-image:url(../../../images/observatory-house-hero.jpg);background-position:top;background-repeat:no-repeat;background-size:cover;height:100%;display:block;position:absolute;inset:0 0 auto;overflow:hidden}.hero-media.svelte-1uha8ag img:where(.svelte-1uha8ag){display:none}.shooting-stars.svelte-1uha8ag{z-index:-1;pointer-events:none;height:34%;position:absolute;inset:0 0 auto;overflow:hidden}.shooting-stars.svelte-1uha8ag span:where(.svelte-1uha8ag){top:var(--star-top);left:var(--star-left);width:var(--star-length);opacity:0;height:1px;animation:svelte-1uha8ag-sky-shooting-star var(--star-duration) ease-in-out var(--star-delay) infinite;background:linear-gradient(90deg,#0000,#fff6dfe0,#0000);border-radius:999px;position:absolute;transform:rotate(-18deg)translate(-80px);box-shadow:0 0 10px #f0c97861}.shooting-stars.svelte-1uha8ag span:where(.svelte-1uha8ag):after{content:"";background:#fff6dfeb;border-radius:999px;width:4px;height:4px;position:absolute;top:-2px;right:12%;box-shadow:0 0 12px #fff6df8c}.shooting-stars.svelte-1uha8ag span:where(.svelte-1uha8ag):first-child{--star-top:26%;--star-left:18%;--star-length:96px;--star-delay:1.1s;--star-duration:8.4s}.shooting-stars.svelte-1uha8ag span:where(.svelte-1uha8ag):nth-child(2){--star-top:12%;--star-left:52%;--star-length:72px;--star-delay:4.6s;--star-duration:9.8s}.shooting-stars.svelte-1uha8ag span:where(.svelte-1uha8ag):nth-child(3){--star-top:42%;--star-left:72%;--star-length:84px;--star-delay:7.4s;--star-duration:11.2s}.logout-form.svelte-1uha8ag{z-index:12;position:absolute;top:24px;right:clamp(16px,4vw,48px)}.logout-form.svelte-1uha8ag button:where(.svelte-1uha8ag),.enter-button.svelte-1uha8ag,.continue-button.svelte-1uha8ag{color:#f7ecd9;letter-spacing:0;cursor:pointer;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#091b2bb8;border:1px solid #d7a95a94;border-radius:8px;font-weight:800}.logout-form.svelte-1uha8ag button:where(.svelte-1uha8ag){padding:10px 14px}.logout-form.svelte-1uha8ag button:where(.svelte-1uha8ag):hover,.enter-button.svelte-1uha8ag:hover,.continue-button.svelte-1uha8ag:hover:not(:disabled){background:#122d43db;border-color:#f7ecd9db}.hero-copy.svelte-1uha8ag{z-index:1;text-align:center;text-shadow:0 6px 28px #0000008c;flex:auto;grid-template:"family""title""."minmax(120px,1fr)"rooms"/1fr;place-items:center;gap:12px;width:min(1120px,100% - 32px);min-height:0;margin:0 auto;padding:88px 0 48px;display:grid;position:relative}.hero-copy.entry-mode.svelte-1uha8ag{text-align:center;grid-template:"."minmax(24px,1fr)"entry-letter""entry-action"/1fr;place-items:end center;gap:clamp(16px,2.8vh,28px);width:min(940px,100% - 32px);padding:clamp(24px,7vh,70px) 0 clamp(28px,6vh,58px);display:grid}.hero-copy.entry-mode.celebration-mode.svelte-1uha8ag{grid-template-rows:auto minmax(120px,1fr) auto;grid-template-areas:"celebration-heading"".""rooms";gap:14px;width:min(1120px,100% - 32px);padding:88px 0 48px}.entry-celebration-heading.svelte-1uha8ag{text-shadow:0 6px 28px #0000008c;grid-area:celebration-heading;align-self:start}.entry-celebration-heading.svelte-1uha8ag .family-names:where(.svelte-1uha8ag){grid-area:auto;align-self:auto;margin-bottom:10px}.entry-celebration-heading.svelte-1uha8ag h1:where(.svelte-1uha8ag){grid-area:auto;align-self:auto}.family-names.svelte-1uha8ag{color:#d7a95a;text-transform:uppercase;grid-area:family;align-self:start;margin:0;font-size:.86rem;font-weight:700}.family-names.svelte-1uha8ag span:where(.svelte-1uha8ag){color:#f0c978;text-shadow:0 0 16px #f0c9786b}h1.svelte-1uha8ag,p.svelte-1uha8ag{margin:0}h1.svelte-1uha8ag{grid-area:title;align-self:start;font-family:Georgia,Times New Roman,serif;font-size:6rem;font-weight:400;line-height:.95}.entry-letter.svelte-1uha8ag{color:#f7ecd9;text-align:left;width:min(880px,100%);text-shadow:none;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#04121e94;border:0;border-radius:8px;grid-area:entry-letter;padding:clamp(18px,3.1vw,36px);font-family:Georgia,Times New Roman,serif;font-size:clamp(1.02rem,1.42vw,1.34rem);line-height:1.48;position:relative;box-shadow:0 24px 70px #0000006b}.letter-copy.svelte-1uha8ag p:where(.svelte-1uha8ag){white-space:pre-line}.letter-copy.svelte-1uha8ag p:where(.svelte-1uha8ag):first-child{color:#f0c978;font-size:1.1em}.letter-copy.svelte-1uha8ag p:where(.svelte-1uha8ag)+p:where(.svelte-1uha8ag){margin-top:.78em}.enter-button.svelte-1uha8ag{color:#fff6df;text-align:center;text-shadow:0 4px 18px #0000007a;will-change:transform;background:#d7a95a2e;grid-area:entry-action;place-items:center;min-width:156px;padding:15px 28px;font-size:.92rem;animation:2.8s ease-in-out infinite svelte-1uha8ag-entry-button-pulse;display:inline-grid;position:relative;overflow:hidden}.enter-button-label.svelte-1uha8ag{z-index:1;position:relative}.button-star.svelte-1uha8ag{opacity:0;background:linear-gradient(90deg,#0000,#fff6dfe6,#0000);border-radius:999px;width:54px;height:1px;animation:4.2s ease-in-out infinite svelte-1uha8ag-button-shooting-star;position:absolute;top:32%;left:-42%;transform:rotate(-18deg)translate(0,0);box-shadow:0 0 10px #f0c978ad}.button-star.svelte-1uha8ag:after{content:"";background:#fff6df;border-radius:999px;width:5px;height:5px;position:absolute;top:-2px;right:10px;box-shadow:0 0 12px #fff6dfe0}.button-star-two.svelte-1uha8ag{width:42px;animation-duration:4.8s;animation-delay:1.8s;top:68%}@keyframes svelte-1uha8ag-entry-button-pulse{0%,to{transform:translate(0,0)scale(1);box-shadow:0 0 #f0c97800,0 0 #f0c97800}45%{transform:translateY(-1px)scale(1.025);box-shadow:0 0 0 8px #f0c97814,0 0 28px #f0c9783d}}@keyframes svelte-1uha8ag-button-shooting-star{0%,58%{opacity:0;transform:rotate(-18deg)translate(0,0)}64%{opacity:.86}76%,to{opacity:0;transform:rotate(-18deg)translate(250px)}}@keyframes svelte-1uha8ag-sky-shooting-star{0%,58%{opacity:0;transform:rotate(-18deg)translate(-80px)}63%{opacity:.62}75%,to{opacity:0;transform:rotate(-18deg)translate(360px)}}.star-confetti.svelte-1uha8ag{z-index:10;pointer-events:none;position:fixed;inset:0;overflow:hidden}.star-confetti-piece.svelte-1uha8ag{color:var(--star-color);font-size:var(--size);text-shadow:0 0 12px;animation:svelte-1uha8ag-star-confetti-flight var(--duration) cubic-bezier(.19, .72, .28, 1) var(--delay) forwards;will-change:transform, opacity;line-height:1;position:absolute;bottom:clamp(42px,8vh,86px);left:50%;transform:translate(-50%)scale(.4)}.star-confetti-piece.svelte-1uha8ag:after{content:"";opacity:.54;background:linear-gradient(90deg,#0000,currentColor);border-radius:999px;width:18px;height:1px;position:absolute;top:50%;right:55%;transform:translateY(-50%)}@keyframes svelte-1uha8ag-star-confetti-flight{0%{opacity:0;transform:translate(-50%)rotate(0)scale(.25)}12%{opacity:1}72%{opacity:.86}to{opacity:0;transform:translate(calc(-50% + var(--x)), var(--y)) rotate(var(--rotation)) scale(.52)}}.room-links.svelte-1uha8ag{z-index:11;text-align:left;width:min(720px,100%);text-shadow:none;grid-area:rooms;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid;position:relative}.room-link.svelte-1uha8ag{min-height:104px;color:inherit;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#061827c2;border:1px solid #d7a95a8f;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;padding:18px;text-decoration:none;display:grid;box-shadow:inset 0 0 0 1px #ffffff0a}.room-link.svelte-1uha8ag:hover{background:#0c253ad6;border-color:#f7ecd9d1}.room-link-garage.svelte-1uha8ag{border-color:#a9c7e380}.room-icon.svelte-1uha8ag{color:#e2ac61;border:1px solid;border-radius:8px;place-items:center;width:68px;height:68px;display:grid;overflow:hidden}.room-link-garage.svelte-1uha8ag .room-icon:where(.svelte-1uha8ag){color:#a9c7e3}.room-icon.svelte-1uha8ag img:where(.svelte-1uha8ag){object-fit:cover;width:100%;height:100%}.room-link.svelte-1uha8ag strong:where(.svelte-1uha8ag){margin-bottom:6px;font-family:Georgia,Times New Roman,serif;font-size:1.22rem;line-height:1.15;display:block}.room-link.svelte-1uha8ag small:where(.svelte-1uha8ag){color:#f7ecd9bd;font-size:.9rem;line-height:1.38;display:block}.security-dialog.svelte-1uha8ag{color:#f7ecd9;background:#061624f5;border:1px solid #d7a95a75;border-radius:8px;width:min(460px,100% - 28px);padding:0;box-shadow:0 30px 80px #0000008f}.security-dialog.svelte-1uha8ag::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#020910a8}.security-form.svelte-1uha8ag{gap:18px;padding:24px;display:grid}.security-heading.svelte-1uha8ag{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.security-heading.svelte-1uha8ag p:where(.svelte-1uha8ag){color:#d7a95a;text-transform:uppercase;font-size:.78rem;font-weight:800}.security-heading.svelte-1uha8ag h2:where(.svelte-1uha8ag){margin:3px 0 0;font-family:Georgia,Times New Roman,serif;font-size:1.9rem;font-weight:400;line-height:1.1}.security-heading.svelte-1uha8ag button:where(.svelte-1uha8ag){color:#f7ecd9;cursor:pointer;background:#ffffff0a;border:1px solid #f7ecd947;border-radius:8px;width:34px;height:34px;font-size:1.35rem;line-height:1}.visually-hidden.svelte-1uha8ag{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.pin-grid.svelte-1uha8ag{justify-content:center;align-items:center;gap:clamp(8px,2.2vw,14px);padding:6px 0 2px;display:flex}.pin-pair.svelte-1uha8ag{display:block}.pin-pair.svelte-1uha8ag input:where(.svelte-1uha8ag){color:#f7ecd9;font-variant-numeric:tabular-nums;text-align:center;background:#010a128a;border:1px solid #d7a95a6b;border-radius:8px;outline:none;width:clamp(70px,19vw,90px);height:clamp(58px,15vw,72px);padding:0 10px;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.7rem,7vw,2.25rem);line-height:1}.pin-pair.svelte-1uha8ag input:where(.svelte-1uha8ag):focus{border-color:#f0c978e0;box-shadow:0 0 0 3px #f0c97824}.pin-pair.svelte-1uha8ag input:where(.svelte-1uha8ag)::placeholder{color:#f7ecd961}.pin-divider.svelte-1uha8ag{color:#f0c978bd;font-family:Georgia,Times New Roman,serif;font-size:1.8rem;line-height:1}.security-message.svelte-1uha8ag{color:#ffd6c9;background:#3d171473;border:1px solid #d47a656b;border-radius:8px;padding:10px 12px;font-size:.9rem;line-height:1.35}.continue-button.svelte-1uha8ag{min-height:48px;padding:0 18px}.continue-button.svelte-1uha8ag:disabled{cursor:not-allowed;opacity:.45}@media (prefers-reduced-motion:reduce){.enter-button.svelte-1uha8ag,.button-star.svelte-1uha8ag,.shooting-stars.svelte-1uha8ag span:where(.svelte-1uha8ag),.star-confetti-piece.svelte-1uha8ag{animation:none}.button-star.svelte-1uha8ag,.shooting-stars.svelte-1uha8ag,.star-confetti.svelte-1uha8ag{display:none}}@media (width>=721px){.hero-media.svelte-1uha8ag{background-image:url(../../../images/observatory-header-wide.jpg);background-position:50% 34%;height:112%;transform:translateY(-9%)}}@media (width<=720px){.hero-copy.svelte-1uha8ag{grid-template-rows:auto 1fr auto;grid-template-areas:"family""title""rooms";gap:13px;width:min(100% - 24px,420px);padding:72px 0 22px}.hero-copy.entry-mode.svelte-1uha8ag{width:min(100% - 24px,430px);padding:max(8px, env(safe-area-inset-top)) 0 14px;grid-template-rows:minmax(0,1fr) auto auto;grid-template-areas:".""entry-letter""entry-action";gap:12px}.hero-copy.entry-mode.celebration-mode.svelte-1uha8ag{grid-template-rows:auto 1fr auto;width:min(100% - 24px,420px);padding:72px 0 22px}.logout-form.svelte-1uha8ag{top:16px;right:12px}.logout-form.svelte-1uha8ag button:where(.svelte-1uha8ag){padding:9px 12px}.family-names.svelte-1uha8ag{margin-top:-10px;font-size:.8rem}h1.svelte-1uha8ag{font-size:3rem}.entry-letter.svelte-1uha8ag{padding:17px 16px 18px;font-size:.9rem;line-height:1.4}.enter-button.svelte-1uha8ag{min-width:136px;padding:13px 24px}.room-links.svelte-1uha8ag{gap:10px}.room-link.svelte-1uha8ag{grid-template-columns:46px minmax(0,1fr);gap:10px;min-height:74px;padding:11px 12px}.room-icon.svelte-1uha8ag{width:46px;height:46px}.room-link.svelte-1uha8ag strong:where(.svelte-1uha8ag){margin-bottom:0;font-size:1rem}.room-link.svelte-1uha8ag small:where(.svelte-1uha8ag){display:none}}
