.fam-signin{max-width:560px;margin:40px auto}.fam-signin h1{text-align:center;font-family:Fraunces,Georgia,serif;font-size:2rem}.fam-signin .hint a,.fam-state-card a:not(.btn),.fam-muted a{color:var(--accent-deep);font-weight:600}.fam-code-input{text-align:center;letter-spacing:.16em;font-size:1.8rem}.fam-state-card{text-align:center;background:var(--paper-2);border:1.5px solid var(--line);max-width:680px;box-shadow:var(--shadow);border-radius:26px;margin:40px auto;padding:clamp(26px,6vw,44px)}.fam-state-card h1{font-family:Fraunces,Georgia,serif;font-size:clamp(1.7rem,5vw,2.2rem);line-height:1.12}.fam-state-card p{color:var(--ink-soft);margin-top:12px;font-size:1.08rem;line-height:1.5}.fam-muted{color:var(--ink-soft);margin-top:12px;font-size:1rem;line-height:1.5}.fam-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:20px;display:flex}.fam-actions .btn{flex:0 auto;min-width:0}.fam-nav{border-bottom:1.5px solid var(--line);margin:-6px 0 24px;padding-bottom:10px}.fam-nav-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.fam-nav-brand{color:var(--accent-deep);flex-direction:column;line-height:1.05;text-decoration:none;display:flex}.fam-nav-brand span{font-family:Fraunces,Georgia,serif;font-size:1.45rem;font-weight:600}.fam-nav-brand small{color:var(--ink-soft);margin-top:4px;font-size:.9rem}.fam-nav-utility{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.fam-nav-utility a,.fam-nav-utility button{color:var(--accent-deep);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;align-items:center;min-height:44px;padding:10px 8px;font-family:inherit;font-size:.95rem;text-decoration:underline;display:inline-flex}.fam-nav-links{scrollbar-width:thin;-webkit-overflow-scrolling:touch;gap:8px;padding:12px 2px 4px;list-style:none;display:flex;overflow-x:auto}.fam-nav-links a{white-space:nowrap;min-height:44px;color:var(--ink);background:#fcf8ef;border:1.5px solid #221c1324;border-radius:999px;align-items:center;padding:8px 16px;font-family:Fraunces,Georgia,serif;font-size:1rem;text-decoration:none;display:inline-flex}.fam-nav-links a:hover{border-color:var(--accent)}.fam-nav-links a[aria-current=page]{background:var(--accent-deep);border-color:var(--accent-deep);color:#fbf3e2}.fam-banner{background:#f7e7c7;border:1.5px solid #80541759;border-radius:18px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:0 0 24px;padding:16px 20px;display:flex}.fam-banner strong{font-family:Fraunces,Georgia,serif;font-size:1.2rem;display:block}.fam-banner span{color:var(--ink);margin-top:4px;font-size:1rem;line-height:1.45;display:block}.fam-banner .btn{min-height:52px;padding:12px 22px;font-size:1.05rem}.fam-page-header{text-align:center;max-width:760px;margin:8px auto 22px}.fam-page-header h1{font-family:Fraunces,Georgia,serif;font-size:clamp(1.8rem,5vw,2.6rem);line-height:1.08}.fam-page-header h1:focus{outline:none}.fam-lede{color:var(--ink-soft);margin-top:10px;font-size:1.1rem;line-height:1.5}.fam-loading{color:var(--ink-soft);text-align:center;padding:2rem 0;font-size:1.05rem}.fam-load-error,.fam-empty{text-align:center;border:1.5px solid var(--line);background:#fcf8ef;border-radius:22px;max-width:680px;margin:20px auto;padding:26px 22px}.fam-load-error strong,.fam-empty strong{font-family:Fraunces,Georgia,serif;font-size:1.35rem;display:block}.fam-load-error p,.fam-empty p{color:var(--ink-soft);margin-top:8px;font-size:1.02rem;line-height:1.5}.fam-load-more{margin:22px auto 0;display:block}.fam-note{color:var(--ink-soft);text-align:center;margin-top:12px;font-size:1.02rem}.fam-next-step{border:1.5px solid var(--line);background:linear-gradient(135deg,#fcf8ef 0%,#efe3cc 100%);border-radius:24px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:clamp(22px,4vw,34px);display:grid;box-shadow:0 22px 54px -44px #221c13cc}.fam-next-step .kicker{text-align:left}.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}.fam-next-step h1{font-family:Fraunces,Georgia,serif;font-size:clamp(1.9rem,5vw,3rem);line-height:1.05}.fam-next-step p{color:var(--ink-soft);max-width:640px;margin-top:10px;font-size:1.1rem;line-height:1.5}.fam-next-step .fam-actions{justify-content:flex-start}.fam-next-step img{object-fit:cover;width:170px;height:170px;box-shadow:var(--shadow);background:#fff;border-radius:12px;padding:8px}.fam-home-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-top:18px;display:grid}.fam-home-grid .family-next-card p{color:var(--ink-soft);margin-top:8px;font-size:1rem;line-height:1.45}.fam-home-grid .family-next-card .btn{min-height:52px;padding:14px 20px;font-size:1.05rem}.fam-access-card.attention{background:#f7e7c7;border-color:#80541759}.fam-status-pill{background:var(--paper);border:1.5px solid var(--line);color:var(--accent-deep);border-radius:999px;padding:4px 12px;font-size:.9rem;font-weight:600;display:inline-block}.fam-status-pill.attention{color:#6b3a12;border-color:#80541773}.fam-invite-list{gap:8px;margin-top:10px;list-style:none;display:grid}.fam-invite-list li{color:var(--ink-soft);justify-content:space-between;align-items:center;gap:10px;font-size:.98rem;display:flex}.fam-invite-list button{font-size:.95rem}.fam-section-title{margin:30px 0 4px;font-family:Fraunces,Georgia,serif;font-size:1.4rem}.fam-danger{background:#fcf8ef;border:1.5px solid #a8543f66;border-radius:22px;margin-top:30px;padding:22px}.fam-danger summary{cursor:pointer;color:#7a3a28;font-family:Fraunces,Georgia,serif;font-size:1.15rem;font-weight:600}.fam-danger p,.fam-danger li{color:var(--ink);margin-top:10px;font-size:1rem;line-height:1.5}.fam-danger ul{margin:8px 0 0 1.2rem}.fam-danger .btn.danger,.btn.danger{color:#fbf3e2;background:#8e3f2c}.fam-danger .btn.danger:hover,.btn.danger:hover{background:#7a3526}.fam-pair-code{letter-spacing:.22em;color:var(--accent-deep);text-align:center;margin:14px 0 4px;font-family:Fraunces,Georgia,serif;font-size:clamp(2.4rem,9vw,3.4rem)}.fam-pair-share{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:18px;margin-top:16px;display:grid}.fam-pair-share img{width:180px;height:180px;box-shadow:var(--shadow);background:#fff;border-radius:10px;padding:8px}.fam-pair-share input{font-size:1rem}.fam-steps{color:var(--ink-soft);margin:10px 0 0 1.3rem;font-size:1.05rem;line-height:1.6}.fam-pending-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.fam-pending-actions button{padding:8px 14px;font-size:.95rem}.fam-inline-edit textarea{min-height:90px;font-size:1.05rem}.archive-view-switch button[aria-pressed=true]{outline:none}.fam-redeem{background:var(--paper-2);border:1.5px solid var(--line);max-width:520px;box-shadow:var(--shadow);border-radius:26px;margin:48px auto;padding:clamp(26px,6vw,40px)}.fam-redeem h1{text-align:center;font-family:Fraunces,Georgia,serif;font-size:clamp(1.9rem,6vw,2.4rem);line-height:1.1}.fam-redeem p{color:var(--ink-soft);text-align:center;margin-top:10px;font-size:1.05rem;line-height:1.55}.fam-redeem input{letter-spacing:.2em;text-align:center;text-transform:uppercase;font-family:Fraunces,Georgia,serif;font-size:1.5rem}.fam-redeem .fam-signed-in{font-size:.98rem}.onboarding-page input:focus-visible,.onboarding-page textarea:focus-visible,.onboarding-page select:focus-visible{outline:3px solid var(--accent);outline-offset:2px}@media (max-width:640px){.fam-nav-utility{justify-content:flex-start;width:100%}.fam-next-step{grid-template-columns:1fr}.fam-next-step img{display:none}.fam-next-step .fam-actions{justify-content:stretch}.fam-next-step .fam-actions .btn,.fam-actions .btn{flex:100%}.fam-pair-share{grid-template-columns:1fr;justify-items:center}.fam-banner .btn{width:100%}}@media print{.fam-nav,.fam-banner{display:none!important}}button.gcard,button.scrapbook-newest-memory{font:inherit;color:inherit;text-align:inherit;cursor:pointer;width:100%;display:block}button.gcard{border:0}button.scrapbook-memory-card{text-align:center;background:#fff}.fam-focus-heading:focus{outline:none}.import-recording label:not(.consent-line),.photo-context label{margin-bottom:0}.family-access-loading h1{color:inherit;margin:0;font-family:Fraunces,Georgia,serif;font-size:clamp(1.8rem,5vw,2.8rem);font-weight:700;line-height:1.08;display:block}
