/* An open-book treatment, scoped to reader sign-in and registration. */
.auth-book-page { --book-ink: #532239; --book-muted: #79695d; --book-line: #dcd0bd; }
.auth-book-page .auth-stage { padding: 64px 24px 76px; min-height: auto; animation: none; }
.auth-book-page .auth-stage::before { background: radial-gradient(ellipse at 50% 25%,#fffdf7 0%,#eee7db 75%); }
.auth-book-page .auth-stage::after { inset: 20px; border-color: #d9cdbb; box-shadow: none; }
.auth-book-page .auth-layout { position: relative; width: min(1140px,100%); grid-template-columns: .92fr 1.08fr; border: 0; border-bottom: 7px solid #532239; border-radius: 8px 15px 10px 8px; background: #fcf8ef; box-shadow: 0 3px 0 #e5dbc9,0 6px 0 #fcf8ef,0 9px 0 #d8c9b0,0 28px 55px #39231d26; animation: none; }
.auth-book-page .auth-layout::after { content: ''; position: absolute; top: 0; bottom: 0; left: 46%; width: 34px; transform: translateX(-50%); background: linear-gradient(90deg,transparent,#5e493015 35%,#49341f25 49%,#fff9 53%,transparent); pointer-events: none; z-index: 2; }
.auth-book-page .auth-story { min-height: 660px; padding: 42px 48px 48px; background: linear-gradient(100deg,#f7eedb,#fbf5e8 80%,#eee3cf); border-radius: 8px 0 0 0; color: var(--book-ink); justify-content: flex-start; }
.auth-book-page .auth-story::before { content: ''; inset: 18px 24px 22px 18px; border: 1px solid #bca47766; pointer-events: none; }
.auth-book-page .auth-story::after { content: 'SANSKRITI  /  THE READING ROOM'; bottom: 19px; left: 0; right: 0; text-align: center; transform: none; color: #887450; font: 9px/1.5 Poppins,sans-serif; letter-spacing: .2em; }
.auth-book-page .auth-story:hover { filter: none; }
.auth-book-imprint { display: flex; align-items: center; gap: 10px; color: var(--book-ink); text-decoration: none; position: relative; }
.auth-book-imprint img { object-fit: contain; }
.auth-book-imprint > span { font: 600 23px/1.2 'Playfair Display',Georgia,serif; }
.auth-book-imprint small { display: block; margin-top: 5px; font: 9px/1.3 Poppins,sans-serif; letter-spacing: .24em; }
.auth-book-emblem { display: flex; align-items: center; justify-content: center; gap: 26px; color: #a28654; margin: 38px 0 28px; }
.auth-book-emblem i { font-size: 56px; font-weight: 900; }
.auth-book-emblem span { font-size: 15px; }
.auth-book-page .auth-story-copy .eyebrow { color: #8c6c3e; font-size: 10px; letter-spacing: .18em; }
.auth-book-page .auth-story-copy h1 { max-width: none; color: var(--book-ink); font: 500 clamp(32px,3.4vw,46px)/1.16 'Playfair Display',Georgia,serif; margin: 14px 0 20px; letter-spacing: -.035em; }
.auth-book-page .auth-story-copy > p { color: var(--book-muted); font: 16px/1.8 Georgia,serif; max-width: 34ch; }
.auth-book-page .auth-promises { gap: 12px; margin-top: 26px; }
.auth-book-page .auth-promises li { color: #675747; font: 12px/1.5 Poppins,sans-serif; }
.auth-book-page .auth-promises i { color: #947743; background: transparent; border: 0; width: 18px; height: 20px; flex-basis: 18px; border-radius: 0; }
.auth-book-page .auth-promises li:nth-child(n+4) { display: none; }
.auth-book-page .auth-quote { margin-top: auto; padding-top: 22px; border-color: #cdbb9966; color: #8a7559; font: italic 14px/1.7 Georgia,serif; }
.auth-book-page .auth-quote cite { display: block; margin-top: 6px; font-size: 11px; }
.auth-book-page .auth-sheet { display: flex; align-items: center; padding: 42px 48px 48px; background: linear-gradient(90deg,#f7f1e5,#fffdf7 12%,#fffdf7 94%,#f2eadb); border-radius: 0 15px 0 0; animation: none; }
.auth-book-page .auth-sheet::before { inset: auto 30px 19px; border: 0; content: 'YOUR STORY CONTINUES HERE'; text-align: center; color: #998774; font: 9px/1.5 Poppins,sans-serif; letter-spacing: .18em; }
.auth-book-page .auth-sheet-inner { width: 100%; max-width: 480px; animation: none; }
.auth-tabs { display: flex; gap: 26px; border-bottom: 1px solid var(--book-line); margin-bottom: 28px; }
.auth-tabs a { padding: 0 0 12px; color: #89796b; font: 500 12px/1.5 Poppins,sans-serif; text-decoration: none; border-bottom: 2px solid transparent; margin-bottom: -1px; }
.auth-tabs a[aria-current] { color: var(--book-ink); border-color: var(--book-ink); }
.auth-book-page .auth-heading { margin-bottom: 24px; animation: none; }
.auth-book-page .auth-heading .eyebrow { color: #8b714a; font-size: 9px; letter-spacing: .17em; }
.auth-book-page .auth-heading h2 { color: var(--book-ink); font: 500 36px/1.2 'Playfair Display',Georgia,serif; margin: 10px 0; }
.auth-book-page .auth-heading p { color: var(--book-muted); font: 14px/1.6 Georgia,serif; }
.auth-book-page .auth-form { gap: 16px; animation: none; }
.auth-book-page .auth-field { animation: none; }
.auth-book-page .auth-field label { font: 500 11px/1.5 Poppins,sans-serif; letter-spacing: 0; text-transform: none; color: #56463c; margin-bottom: 7px; }
.auth-optional { font-size: 10px; color: #8c7e70; font-weight: 400; }
.auth-book-page .auth-control { display: block; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.auth-book-page .auth-control:focus-within { border: 0; background: transparent; box-shadow: none; }
.auth-book-page .auth-control input,.auth-book-page .auth-control select { min-height: 49px; padding: 12px 43px 12px 38px; border: 1px solid #d9cdbc; border-radius: 5px; background: #fffdf9; color: #43352c; font: 14px/1.4 Georgia,serif; }
.auth-book-page .auth-control select { padding-right: 12px; }
.auth-book-page .auth-control input::placeholder { font-style: normal; color: #9a8c7f; }
.auth-book-page .auth-control > i { left: 14px; font-size: 12px; color: #a18a68; }
.auth-book-page .auth-control input:focus,.auth-book-page .auth-control select:focus { transform: none; border-color: #79415b; background: #fff; box-shadow: 0 0 0 3px #5322390d; }
.auth-book-page .auth-password-toggle { width: 40px; height: 44px; right: 1px; color: #917b63; }
.auth-book-page .auth-password-toggle:hover { transform: translateY(-50%); color: var(--book-ink); }
.auth-book-page .auth-field-error { min-height: 0; margin: 0; font-size: 12px; }
.auth-book-page .auth-field-error:not(:empty) { margin-top: 6px; }
.auth-book-page .auth-field-hint { font: 11px/1.5 Georgia,serif; color: #82705e; }
.auth-book-page .auth-check,.auth-book-page .auth-field label.auth-check { display: flex; gap: 9px; align-items: flex-start; font: 12px/1.7 Georgia,serif; letter-spacing: 0; text-transform: none; margin: 0; }
.auth-book-page .auth-check input { flex: 0 0 17px; margin-top: 2px; accent-color: var(--book-ink); }
.auth-book-page .auth-options { font-size: 12px; }
.auth-book-page .auth-check a,.auth-book-page .auth-text-link { color: var(--book-ink); }
.auth-book-page .auth-sheet .btn { border-radius: 5px; min-height: 48px; font: 500 12px/1.5 Poppins,sans-serif; letter-spacing: .01em; text-transform: none; }
.auth-book-page .auth-submit { background: var(--book-ink); border-color: var(--book-ink); color: #fff9ed; }
.auth-book-page .auth-submit:hover { background: #6b304c; transform: translateY(-1px); box-shadow: 0 5px 15px #53223920; }
.auth-book-page .auth-sheet .btn--ghost { color: var(--book-ink); border: 1px solid #cbbba4; background: transparent; }
.auth-book-page .auth-divider { margin: 21px 0; font: 11px/1.5 Georgia,serif; text-transform: none; letter-spacing: 0; color: #8c7b68; }
.auth-book-page .auth-status { font-size: 13px; }
.auth-book-page .auth-sheet a:focus-visible,.auth-book-page .auth-sheet button:focus-visible { outline: 2px solid var(--book-ink); outline-offset: 4px; }
@media(max-width:1100px) { .auth-book-page .auth-story,.auth-book-page .auth-sheet { padding: 36px 30px 48px; } }
@media(max-width:800px) {
 .auth-book-page .auth-stage { padding: 32px 20px 46px; }
 .auth-book-page .auth-layout { width: min(580px,100%); grid-template-columns: 1fr; }
 .auth-book-page .auth-layout::after { display: none; }
 .auth-book-page .auth-story { min-height: 0; padding: 28px 32px; border-radius: 8px 15px 0 0; }
 .auth-book-page .auth-story::before { inset: 12px; }
 .auth-book-page .auth-story::after,.auth-book-page .auth-promises,.auth-book-page .auth-quote,.auth-book-emblem { display: none; }
 .auth-book-page .auth-story-copy { margin-top: 20px; }
 .auth-book-page .auth-story-copy .eyebrow { display: none; }
 .auth-book-page .auth-story-copy h1 { font-size: 32px; margin: 0 0 12px; }
 .auth-book-page .auth-story-copy h1 br { display: none; }
 .auth-book-page .auth-story-copy > p { max-width: none; font-size: 14px; line-height: 1.6; }
 .auth-book-page .auth-sheet { padding: 30px 32px 48px; border-radius: 0; }
 .auth-book-page .auth-control input,.auth-book-page .auth-control select { font-size: 16px; }
}
@media(max-width:480px) {
 .auth-book-page .auth-stage { padding: 20px 14px 36px; }
 .auth-book-page .auth-stage::after { inset: 6px; }
 .auth-book-page .auth-story { padding: 24px; }
 .auth-book-page .auth-sheet { padding: 28px 22px 45px; }
 .auth-book-page .auth-story-copy h1 { font-size: 28px; }
 .auth-book-page .auth-heading h2 { font-size: 31px; }
 .auth-book-page .auth-grid-2 { grid-template-columns: 1fr; gap: 16px; }
 .auth-book-page .auth-options { flex-direction: row; flex-wrap: wrap; gap: 10px; }
}
@media(prefers-reduced-motion:reduce) { .auth-book-page .auth-stage * { animation: none !important; transition: none !important; } }
