.mobile-payment-flow{border:1px solid var(--gray-200);background:#fff;border-radius:.75rem;padding:1.5rem;box-shadow:0 4px 16px #0000000f}.mobile-payment-flow__header{justify-content:center;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.mobile-payment-flow__header-icon{width:1.5rem;height:1.5rem;color:var(--accent-primary)}.mobile-payment-flow__title{color:var(--gray-900);margin:0;font-size:1.125rem;font-weight:700}.mobile-payment-flow__book-info{background:var(--gray-50);border-radius:.5rem;flex-direction:column;align-items:center;gap:.25rem;margin-bottom:1rem;padding:.875rem;display:flex}.mobile-payment-flow__book-title{color:var(--gray-900);text-align:center;font-size:.9375rem;font-weight:600}.mobile-payment-flow__book-price{color:var(--accent-primary);font-size:1.5rem;font-weight:700}.mobile-payment-flow__text{color:var(--gray-600);text-align:center;margin:0 0 1.25rem;font-size:.9375rem;line-height:1.5}.mobile-payment-flow__btn{cursor:pointer;border:none;border-radius:.5rem;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:1rem 1.25rem;font-size:1rem;font-weight:600;transition:background-color .15s,transform .1s;display:flex}.mobile-payment-flow__btn:active{transform:scale(.98)}.mobile-payment-flow__btn--primary{color:#fff;background:var(--accent-primary)}.mobile-payment-flow__btn--primary:hover{background:var(--accent-hover)}.mobile-payment-flow__steps{background:var(--gray-50);border-radius:.5rem;margin-top:1.25rem;padding:1rem}.mobile-payment-flow__steps-title{color:var(--gray-700);margin:0 0 .5rem;font-size:.8125rem;font-weight:600}.mobile-payment-flow__steps-list{color:var(--gray-600);margin:0;padding-left:1.25rem;font-size:.8125rem;line-height:1.6}.mobile-payment-flow__steps-list li{margin-bottom:.25rem}.mobile-payment-flow__steps-list li:last-child{margin-bottom:0}.mobile-payment-flow__note{color:var(--gray-500);justify-content:center;align-items:center;gap:.375rem;margin-top:1rem;font-size:.8125rem;display:flex}@media (prefers-color-scheme:dark){.mobile-payment-flow{background:var(--gray-800);border-color:var(--gray-700)}.mobile-payment-flow__title{color:#fff}.mobile-payment-flow__book-info{background:var(--gray-700)}.mobile-payment-flow__book-title{color:#fff}.mobile-payment-flow__text{color:var(--gray-400)}.mobile-payment-flow__steps{background:var(--gray-700)}.mobile-payment-flow__steps-title{color:var(--gray-300)}.mobile-payment-flow__steps-list{color:var(--gray-400)}.mobile-payment-flow__note{color:var(--gray-500)}}
.payment-flow{border:1px solid var(--gray-200);text-align:center;background:#fff;border-radius:.75rem;padding:1.5rem;position:relative;box-shadow:0 4px 16px #0000000f}.payment-flow__loading{justify-content:center;align-items:center;min-height:200px;display:flex}.payment-flow__loading-spinner{width:2rem;height:2rem;color:var(--accent-primary);animation:1s linear infinite payment-flow-spin}@keyframes payment-flow-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.payment-flow__network-badge{color:#92400e;text-transform:uppercase;letter-spacing:.05em;background:#fef3c7;border:1px solid #fbbf24;border-radius:9999px;padding:.25rem .75rem;font-size:.6875rem;font-weight:600;position:absolute;top:-.5rem;right:1rem}.payment-flow__notice{color:#047857;background-color:#ecfdf5;border:1px solid #a7f3d0;border-radius:9999px;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;display:inline-flex}.payment-flow__notice-icon{width:1rem;height:1rem}.payment-flow__price{margin-bottom:1.5rem}.payment-flow__price-label{color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem;font-size:.75rem;display:block}.payment-flow__price-value{color:var(--gray-900);letter-spacing:-.025em;font-size:2rem;font-weight:700}.payment-flow__reassurance{color:#047857;justify-content:center;align-items:center;gap:.5rem;margin-bottom:1.25rem;font-size:.875rem;display:flex}.payment-flow__reassurance-icon{flex-shrink:0;width:1rem;height:1rem}.payment-flow__state{flex-direction:column;gap:1rem;display:flex}.payment-flow__state--success{animation:.3s ease-out fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.payment-flow__button{cursor:pointer;border:none;border-radius:.5rem;justify-content:center;align-items:center;gap:.5rem;width:100%;min-height:56px;padding:1rem 1.5rem;font-size:1rem;font-weight:600;transition:background-color .15s,transform .1s,opacity .15s;display:flex}.payment-flow__button:active:not(:disabled){transform:scale(.98)}.payment-flow__button:disabled{opacity:.7;cursor:not-allowed}.payment-flow__button--primary{color:#fff;background:var(--accent-primary)}.payment-flow__button--primary:hover:not(:disabled){background:var(--accent-hover)}.payment-flow__button--secondary{color:var(--gray-700);background:var(--gray-100);border:1px solid var(--gray-200)}.payment-flow__button--secondary:hover:not(:disabled){background:var(--gray-200)}.payment-flow__button--phantom{color:#fff;background:linear-gradient(135deg,#ab9ff2,#9945ff);text-decoration:none}.payment-flow__button--phantom:hover{background:linear-gradient(135deg,#9b8fe2,#8935ef)}.payment-flow__button-icon{width:1.25rem;height:1.25rem}.payment-flow__button-spinner{width:1.25rem;height:1.25rem;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.payment-flow__wallet-info{background:var(--gray-50);border-radius:.5rem;flex-direction:column;align-items:center;gap:.5rem;margin-bottom:.5rem;padding:1rem;display:flex}.payment-flow__wallet-connected{color:#047857;align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;display:flex}.payment-flow__wallet-icon{width:1rem;height:1rem}.payment-flow__wallet-address{color:var(--gray-500);font-family:monospace;font-size:.8125rem}.payment-flow__wallet-disconnect{color:var(--gray-500);cursor:pointer;background:0 0;border:none;padding:.25rem .5rem;font-size:.75rem;text-decoration:underline;transition:color .15s}.payment-flow__wallet-disconnect:hover{color:var(--gray-700)}.payment-flow__pending{background:var(--gray-50);border-radius:.5rem;padding:1.5rem}.payment-flow__pending-spinner{width:2rem;height:2rem;color:var(--accent-primary);margin-bottom:.75rem;animation:1s linear infinite spin}.payment-flow__pending-text{color:var(--gray-900);margin:0 0 .25rem;font-size:1rem;font-weight:600}.payment-flow__pending-detail{color:var(--gray-500);margin:0;font-size:.875rem}.payment-flow__pending-wallet{color:var(--gray-400);margin:.5rem 0 0;font-size:.75rem}.payment-flow__pending-wallet code{background:var(--gray-100);border-radius:.25rem;padding:.125rem .375rem;font-family:monospace}.payment-flow__dev{border-top:1px dashed var(--gray-300);margin-top:1rem;padding-top:1rem}.payment-flow__dev-toggle{color:#9333ea;cursor:pointer;background:#faf5ff;border:1px dashed #c084fc;border-radius:.375rem;align-items:center;gap:.5rem;width:100%;padding:.5rem;font-family:monospace;font-size:.75rem;transition:background-color .15s;display:flex}.payment-flow__dev-toggle:hover{background:#f3e8ff}.payment-flow__dev-icon{width:1rem;height:1rem}.payment-flow__dev-input{flex-direction:column;gap:.75rem;margin-top:.75rem;display:flex}.payment-flow__dev-field{width:100%;color:var(--gray-900);border:1px solid var(--gray-300);background:#fff;border-radius:.375rem;outline:none;padding:.75rem;font-family:monospace;font-size:.875rem;transition:border-color .15s}.payment-flow__dev-field:focus{border-color:#9333ea}.payment-flow__dev-field::placeholder{color:var(--gray-400)}.payment-flow__submitted{background:var(--gray-50);border-radius:.5rem;padding:1.5rem}.payment-flow__submitted-spinner{width:2rem;height:2rem;color:var(--accent-primary);margin-bottom:.75rem;animation:1s linear infinite spin}.payment-flow__submitted-text{color:var(--gray-900);margin:0 0 .25rem;font-size:1rem;font-weight:600}.payment-flow__submitted-detail{color:var(--gray-500);margin:0;font-size:.875rem}.payment-flow__confirmed{background:#ecfdf5;border:1px solid #a7f3d0;border-radius:.5rem;padding:1.5rem}.payment-flow__confirmed-icon{color:#047857;width:2.5rem;height:2.5rem;margin-bottom:.75rem}.payment-flow__confirmed-text{color:#047857;margin:0 0 .25rem;font-size:1.125rem;font-weight:600}.payment-flow__confirmed-detail{color:#059669;margin:0;font-size:.875rem}.payment-flow__claim-notice{color:#92400e;background:#fef3c7;border:1px solid #fbbf24;border-radius:.375rem;justify-content:center;align-items:center;gap:.5rem;margin:.75rem 0;padding:.625rem .875rem;font-size:.8125rem;display:flex}.payment-flow__claim-notice svg{color:#f59e0b;flex-shrink:0}.payment-flow__button--large{padding:.875rem 1.25rem;font-size:1rem}.payment-flow__error{background:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;margin-bottom:.5rem;padding:1.5rem}.payment-flow__error-icon{color:#dc2626;width:2rem;height:2rem;margin-bottom:.75rem}.payment-flow__error-text{color:#991b1b;margin:0 0 .25rem;font-size:1rem;font-weight:600}.payment-flow__error-detail{color:#b91c1c;margin:0;font-size:.875rem}.payment-flow__error-hint{color:#991b1b;border-top:1px solid #fecaca;margin:.75rem 0 0;padding-top:.75rem;font-size:.8125rem;font-style:italic}.payment-flow__expired{background:#fffbeb;border:1px solid #fde68a;border-radius:.5rem;margin-bottom:.5rem;padding:1.5rem}.payment-flow__expired-icon{color:#d97706;width:2rem;height:2rem;margin-bottom:.75rem}.payment-flow__expired-text{color:#92400e;margin:0 0 .25rem;font-size:1rem;font-weight:600}.payment-flow__expired-detail{color:#a16207;margin:0;font-size:.875rem}.payment-flow__expired-reassurance{color:#92400e;border-top:1px solid #fde68a;margin:.75rem 0 0;padding-top:.75rem;font-size:.8125rem;font-style:italic}.payment-flow__late-payment{background:#eff6ff;border:1px solid #bfdbfe;border-radius:.5rem;padding:1.5rem}.payment-flow__late-payment-icon{color:#2563eb;width:2rem;height:2rem;margin-bottom:.75rem}.payment-flow__late-payment-text{color:#1e40af;margin:0 0 .25rem;font-size:1rem;font-weight:600}.payment-flow__late-payment-detail{color:#1d4ed8;margin:0;font-size:.875rem}.payment-flow__late-payment-reassurance{color:#1e40af;border-top:1px solid #bfdbfe;margin:.75rem 0 0;padding-top:.75rem;font-size:.8125rem;font-style:italic}.payment-flow__timer{background:var(--gray-100);color:var(--gray-600);border-radius:2rem;align-items:center;gap:.375rem;margin-top:.75rem;padding:.375rem .75rem;font-size:.8125rem;display:inline-flex}.payment-flow__help-wrapper{justify-content:center;margin-top:1.25rem;display:flex;position:relative}.payment-flow__help{color:var(--gray-500);cursor:pointer;background:0 0;border:none;align-items:center;gap:.375rem;padding:.5rem;font-size:.8125rem;transition:color .15s;display:inline-flex}.payment-flow__help:hover{color:var(--accent-primary)}.payment-flow__help-icon{width:1rem;height:1rem}.payment-flow__explainer{border:1px solid var(--gray-200);text-align:left;z-index:50;background:#fff;border-radius:.5rem;width:280px;max-width:calc(100vw - 2rem);margin-bottom:.5rem;padding:1rem;animation:.15s ease-out explainerFadeIn;position:absolute;bottom:100%;left:50%;transform:translate(-50%);box-shadow:0 10px 40px #0000001f}@keyframes explainerFadeIn{0%{opacity:0;transform:translate(-50%)translateY(4px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.payment-flow__explainer-close{color:var(--gray-400);cursor:pointer;background:0 0;border:none;border-radius:.25rem;padding:.25rem;transition:color .15s,background-color .15s;position:absolute;top:.5rem;right:.5rem}.payment-flow__explainer-close:hover{color:var(--gray-600);background:var(--gray-100)}.payment-flow__explainer-title{color:var(--gray-900);margin:0 0 .5rem;font-size:.9375rem;font-weight:600}.payment-flow__explainer-desc{color:var(--gray-600);margin:0 0 .75rem;font-size:.8125rem;line-height:1.5}.payment-flow__explainer-benefits{flex-direction:column;gap:.375rem;margin:0 0 .75rem;padding:0;list-style:none;display:flex}.payment-flow__explainer-benefit{color:var(--gray-700);align-items:center;gap:.5rem;font-size:.8125rem;display:flex}.payment-flow__explainer-icon{font-size:.875rem;line-height:1}.payment-flow__explainer-footer{color:var(--gray-500);border-top:1px solid var(--gray-100);margin:0;padding-top:.5rem;font-size:.75rem;font-style:italic}.payment-flow__hint{color:var(--gray-500);margin:0;font-size:.8125rem}.payment-flow__redirect{background:var(--gray-50);border-radius:.5rem;flex-direction:column;align-items:center;gap:.75rem;padding:1.5rem;display:flex}.payment-flow__redirect-spinner{width:2rem;height:2rem;color:var(--accent-primary);animation:1s linear infinite spin}.payment-flow__redirect-text{color:var(--gray-900);margin:0;font-size:1rem;font-weight:600}.payment-flow__redirect-hint{color:var(--gray-500);margin:0;font-size:.8125rem}.payment-flow__phantom-link{color:#9945ff;align-items:center;gap:.375rem;font-size:.8125rem;font-weight:500;text-decoration:none;transition:color .15s;display:inline-flex}.payment-flow__phantom-link:hover{color:#7c3aed;text-decoration:underline}.payment-flow__install-prompt{flex-direction:column;align-items:center;gap:1rem;display:flex}.payment-flow__install-text{color:var(--gray-700);margin:0;font-size:.9375rem;font-weight:500}.payment-flow__install-hint{color:var(--gray-400);margin:0;font-size:.75rem}@media (min-width:768px){.payment-flow{padding:2rem}.payment-flow__price-value{font-size:2.5rem}}@media (prefers-color-scheme:dark){.payment-flow{background-color:var(--gray-800);border-color:var(--gray-700)}.payment-flow__network-badge{color:#fbbf24;background:#fbbf2433;border-color:#fbbf2466}.payment-flow__notice{color:#34d399;background-color:#10b98126;border-color:#10b9814d}.payment-flow__price-value{color:#fff}.payment-flow__reassurance{color:#34d399}.payment-flow__button--secondary{background:var(--gray-700);border-color:var(--gray-600);color:var(--gray-200)}.payment-flow__button--secondary:hover:not(:disabled){background:var(--gray-600)}.payment-flow__wallet-info{background:var(--gray-700)}.payment-flow__wallet-connected{color:#34d399}.payment-flow__wallet-address,.payment-flow__wallet-disconnect{color:var(--gray-400)}.payment-flow__wallet-disconnect:hover{color:var(--gray-200)}.payment-flow__pending,.payment-flow__submitted{background:var(--gray-700)}.payment-flow__pending-text,.payment-flow__submitted-text{color:#fff}.payment-flow__pending-detail,.payment-flow__submitted-detail{color:var(--gray-400)}.payment-flow__confirmed{background-color:#10b98126;border-color:#10b9814d}.payment-flow__confirmed-text{color:#34d399}.payment-flow__confirmed-detail{color:#6ee7b7}.payment-flow__claim-notice{color:#fbbf24;background:#f59e0b26;border-color:#f59e0b4d}.payment-flow__claim-notice svg{color:#fbbf24}.payment-flow__error{background-color:#dc262626;border-color:#dc26264d}.payment-flow__error-text{color:#f87171}.payment-flow__error-detail{color:#fca5a5}.payment-flow__error-hint{color:#fca5a5;border-top-color:#dc26264d}.payment-flow__expired{background-color:#d9770626;border-color:#d977064d}.payment-flow__expired-text{color:#fbbf24}.payment-flow__expired-detail{color:#fcd34d}.payment-flow__expired-reassurance{color:#fcd34d;border-top-color:#d977064d}.payment-flow__late-payment{background-color:#2563eb26;border-color:#2563eb4d}.payment-flow__late-payment-text{color:#60a5fa}.payment-flow__late-payment-detail{color:#93c5fd}.payment-flow__late-payment-reassurance{color:#93c5fd;border-top-color:#2563eb4d}.payment-flow__timer{background:var(--gray-700);color:var(--gray-400)}.payment-flow__help{color:var(--gray-400)}.payment-flow__explainer{background:var(--gray-800);border-color:var(--gray-700);box-shadow:0 10px 40px #0006}.payment-flow__explainer-close{color:var(--gray-500)}.payment-flow__explainer-close:hover{color:var(--gray-300);background:var(--gray-700)}.payment-flow__explainer-title{color:#fff}.payment-flow__explainer-desc{color:var(--gray-400)}.payment-flow__explainer-benefit{color:var(--gray-300)}.payment-flow__explainer-footer{color:var(--gray-500);border-top-color:var(--gray-700)}.payment-flow__hint{color:var(--gray-400)}.payment-flow__redirect{background:var(--gray-700)}.payment-flow__redirect-text{color:#fff}.payment-flow__redirect-hint{color:var(--gray-400)}.payment-flow__phantom-link{color:#ab9ff2}.payment-flow__phantom-link:hover{color:#c4b5fd}.payment-flow__install-text{color:var(--gray-300)}.payment-flow__install-hint{color:var(--gray-500)}.payment-flow__pending-wallet code{background:var(--gray-700)}.payment-flow__dev{border-top-color:var(--gray-600)}.payment-flow__dev-toggle{color:#c084fc;background:#9333ea26;border-color:#c084fc4d}.payment-flow__dev-toggle:hover{background:#9333ea40}.payment-flow__dev-field{color:#fff;background:var(--gray-700);border-color:var(--gray-600)}.payment-flow__dev-field:focus{border-color:#c084fc}.payment-flow__dev-field::placeholder{color:var(--gray-500)}}.payment-flow__modal-overlay{z-index:100;background:#00000080;justify-content:center;align-items:center;padding:1rem;animation:.15s ease-out modalFadeIn;display:flex;position:fixed;inset:0}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.payment-flow__modal{text-align:center;background:#fff;border-radius:.75rem;width:100%;max-width:360px;padding:1.5rem;animation:.2s ease-out modalSlideIn;position:relative;box-shadow:0 10px 40px #0003}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.payment-flow__modal-close{color:var(--gray-400);cursor:pointer;background:0 0;border:none;border-radius:.25rem;padding:.375rem;transition:color .15s,background-color .15s;position:absolute;top:.75rem;right:.75rem}.payment-flow__modal-close:hover{color:var(--gray-600);background:var(--gray-100)}.payment-flow__modal-icon{color:#fff;background:linear-gradient(135deg,#ab9ff2,#9945ff);border-radius:50%;justify-content:center;align-items:center;width:4rem;height:4rem;margin:0 auto 1rem;display:flex}.payment-flow__modal-title{color:var(--gray-900);margin:0 0 .5rem;font-size:1.25rem;font-weight:700}.payment-flow__modal-text{color:var(--gray-600);margin:0 0 1rem;font-size:.9375rem;line-height:1.5}.payment-flow__modal-warning{color:#92400e;text-align:left;background:#fef3c7;border:1px solid #fbbf24;border-radius:.5rem;align-items:flex-start;gap:.5rem;margin-bottom:1rem;padding:.75rem;font-size:.8125rem;display:flex}.payment-flow__modal-warning svg{flex-shrink:0;margin-top:.125rem}.payment-flow__modal-actions{flex-direction:column;gap:.5rem;display:flex}.payment-flow__modal-hint{color:var(--gray-500);margin-top:1rem;font-size:.8125rem}.payment-flow__modal-hint a{color:#9945ff;text-decoration:none}.payment-flow__modal-hint a:hover{text-decoration:underline}@media (prefers-color-scheme:dark){.payment-flow__modal{background:var(--gray-800)}.payment-flow__modal-close{color:var(--gray-500)}.payment-flow__modal-close:hover{color:var(--gray-300);background:var(--gray-700)}.payment-flow__modal-title{color:#fff}.payment-flow__modal-text{color:var(--gray-400)}.payment-flow__modal-warning{color:#fbbf24;background:#fbbf2426;border-color:#fbbf244d}.payment-flow__modal-hint{color:var(--gray-500)}.payment-flow__modal-hint a{color:#ab9ff2}}@media (prefers-reduced-motion:reduce){.payment-flow__button-spinner,.payment-flow__pending-spinner,.payment-flow__submitted-spinner,.payment-flow__state--success,.payment-flow__modal-overlay,.payment-flow__modal{animation:none}}
.book-page{background-color:var(--gray-50);min-height:100vh;font-family:var(--font-author),system-ui,-apple-system,sans-serif}.book-loading{min-height:100vh;color:var(--gray-500);flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex}.book-loading__spinner{width:2rem;height:2rem;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.book-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.book-error__icon{width:3rem;height:3rem;color:var(--destructive);margin-bottom:1rem}.book-error__title{color:var(--gray-900);margin:0 0 .5rem;font-size:1.25rem;font-weight:600}.book-error__text{color:var(--gray-600);margin:0 0 1.5rem;font-size:.875rem}.book-error__link{color:var(--accent-primary);align-items:center;gap:.5rem;font-size:.875rem;text-decoration:none;display:flex}.book-error__link-icon{width:1rem;height:1rem}.book-header{border-bottom:1px solid var(--gray-200);background-color:#fff;padding:1rem 1.5rem}.book-header__back{color:var(--gray-600);border-radius:.375rem;align-items:center;gap:.5rem;min-height:44px;margin:-.5rem;padding:.5rem;font-size:.875rem;text-decoration:none;transition:color .15s,background-color .15s;display:inline-flex}.book-header__back:hover{color:var(--gray-900);background-color:var(--gray-100)}.book-header__back-icon{width:1.25rem;height:1.25rem}.book-content{max-width:480px;margin:0 auto;padding:1.5rem 1.5rem 2rem}.book-cover{background:linear-gradient(135deg,var(--gray-100)0%,var(--gray-200)100%);border-radius:.375rem;justify-content:center;align-items:center;width:120px;height:170px;margin:0 auto 1.5rem;display:flex;overflow:hidden;box-shadow:0 2px 8px #00000014}.book-cover__icon{width:3rem;height:3rem;color:var(--gray-500)}.book-cover__image{object-fit:cover;border-radius:.5rem;width:100%;height:100%}.book-info{text-align:center;margin-bottom:1.5rem}.book-info__category{text-transform:uppercase;letter-spacing:.04em;color:var(--gray-600);background-color:var(--gray-100);border-radius:.25rem;margin-bottom:.75rem;padding:.1875rem .5rem;font-size:.6875rem;font-weight:500;display:inline-block}.book-info__title{color:var(--gray-900);letter-spacing:-.015em;margin:0 0 .25rem;font-size:1.375rem;font-weight:600;line-height:1.3}.book-info__subtitle{color:var(--gray-600);margin:0 0 .375rem;font-size:.9375rem;font-style:italic}.book-info__author{color:var(--gray-500);margin:0 0 .5rem;font-size:.8125rem}.book-info__author--link{text-decoration:none;transition:color .15s}.book-info__author--link:hover{color:var(--accent-primary);text-decoration:underline}.book-info__meta{color:var(--gray-400);border-bottom:1px solid var(--gray-200);justify-content:center;align-items:center;gap:.5rem;margin-bottom:1rem;padding-bottom:1rem;font-size:.75rem;display:flex}.book-info__meta-dot{background-color:var(--gray-400);border-radius:50%;width:4px;height:4px}.book-info__description{color:var(--gray-700);text-align:left;margin:0;font-size:.9375rem;line-height:1.7}.book-info__gallery-hint{color:var(--gray-500);text-align:center;margin:1rem 0 0;font-size:.8125rem;font-style:italic}.book-paywall{border:1px solid var(--gray-200);text-align:center;background:#fff;border-radius:.75rem;padding:1.5rem;box-shadow:0 4px 16px #0000000f}.book-paywall__notice{color:#92400e;background-color:#fef3c7;border:1px solid #fcd34d;border-radius:.5rem;margin-bottom:1.25rem;padding:.75rem 1rem;font-size:.875rem}.book-paywall__badge{background-color:var(--gray-100);color:var(--gray-700);border-radius:9999px;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;display:inline-flex}.book-paywall__badge-icon{width:1rem;height:1rem;color:var(--gray-500)}.book-paywall__price{margin-bottom:1.5rem}.book-paywall__price-label{color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem;font-size:.75rem;display:block}.book-paywall__price-value{color:var(--gray-900);letter-spacing:-.025em;font-size:2rem;font-weight:700}.book-paywall__button{color:#fff;background:var(--accent-primary);cursor:pointer;border:none;border-radius:.5rem;justify-content:center;align-items:center;gap:.5rem;width:100%;min-height:56px;padding:1rem 1.5rem;font-size:1rem;font-weight:600;transition:background-color .15s,transform .1s;display:flex}.book-paywall__button:hover:not(:disabled){background:var(--accent-hover)}.book-paywall__button:active:not(:disabled){transform:scale(.98)}.book-paywall__button:disabled{opacity:.8;cursor:not-allowed}.book-paywall__button--success{background:var(--status-published)}.book-paywall__button-icon{width:1.25rem;height:1.25rem}.book-paywall__button-spinner{width:1.25rem;height:1.25rem;animation:1s linear infinite spin}.book-paywall__error{color:#991b1b;background-color:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;justify-content:center;align-items:center;gap:.5rem;margin-top:1rem;padding:.75rem;font-size:.875rem;display:flex}.book-paywall__error-icon{flex-shrink:0;width:1rem;height:1rem}.book-paywall__note{color:var(--gray-500);margin:1rem 0 0;font-size:.75rem}.book-info__badge{border-radius:.25rem;align-items:center;gap:.25rem;margin-bottom:.5rem;padding:.25rem .5rem;font-size:.6875rem;font-weight:500;display:inline-flex}.book-info__badge-icon{width:.875rem;height:.875rem}.book-info__badge--author{color:#7c3aed;background-color:#8b5cf61a}.book-info__badge--owned{color:#059669;background-color:#10b9811a}.book-info__badge--free{color:#2563eb;background-color:#3b82f61a}.book-info__badge--unpublished{color:#6b7280;background-color:#6b72801a}.book-access{margin-top:0}.book-access--loading{color:var(--gray-500);justify-content:center;align-items:center;gap:.5rem;padding:.75rem;font-size:.8125rem;display:flex}.book-access__spinner{width:1rem;height:1rem;animation:1s linear infinite spin}.book-access__button{color:#fff;cursor:pointer;background:#4b6bdb;border:none;border-radius:.375rem;justify-content:center;align-items:center;gap:.5rem;width:100%;min-height:48px;padding:.75rem 1.25rem;font-size:.9375rem;font-weight:500;transition:background-color .15s,transform .1s;display:flex}.book-access__button:hover{background:#3b5bd9}.book-access__button:active{transform:scale(.99)}.book-access__button-icon{width:1.125rem;height:1.125rem}.book-chapters{border:1px solid var(--gray-200);background-color:#fff;border-radius:.75rem;margin-bottom:1.5rem;padding:1.25rem}.book-chapters__header{border-bottom:1px solid var(--gray-100);align-items:center;gap:.5rem;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.book-chapters__icon{width:1.125rem;height:1.125rem;color:var(--gray-400)}.book-chapters__title{color:var(--gray-700);margin:0;font-size:.9375rem;font-weight:600}.book-chapters__list{margin:0;padding:0;list-style:none}.book-chapters__item{border-bottom:1px solid var(--gray-100)}.book-chapters__item:last-child{border-bottom:none}.book-chapters__link{color:var(--gray-700);cursor:pointer;border-radius:.375rem;justify-content:space-between;align-items:center;gap:.75rem;margin:0 -.5rem;padding:.75rem .5rem;text-decoration:none;transition:color .15s,background-color .15s;display:flex}.book-chapters__link:hover{color:var(--accent-primary);background-color:var(--gray-50)}.book-chapters__link:active{background-color:var(--gray-100)}.book-chapters__link--implicit .book-chapters__label{color:var(--gray-600);font-style:italic}.book-chapters__link--implicit:hover .book-chapters__label{color:var(--accent-primary)}.book-chapters__label{flex:1;min-width:0;font-size:.875rem;line-height:1.4}.book-chapters__right{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.book-chapters__time{color:var(--gray-400);font-size:.75rem}.book-chapters__chevron{width:1rem;height:1rem;color:var(--gray-300);transition:color .15s,transform .15s}.book-chapters__link:hover .book-chapters__chevron{color:var(--accent-primary);transform:translate(2px)}.book-chapters__link--locked{font-family:inherit;font-size:inherit;text-align:left;cursor:pointer;background:0 0;border:none;width:100%}.book-chapters__link--locked .book-chapters__label{color:var(--gray-500)}.book-chapters__link--locked:hover{background-color:var(--gray-50)}.book-chapters__link--locked:hover .book-chapters__label{color:var(--gray-600)}.book-chapters__lock{width:.875rem;height:.875rem;color:var(--gray-400);transition:color .15s}.book-chapters__link--locked:hover .book-chapters__lock{color:var(--accent-primary)}.book-unavailable{background-color:var(--gray-50);border:1px solid var(--gray-200);text-align:center;border-radius:.75rem;flex-direction:column;align-items:center;padding:2rem;display:flex}.book-unavailable__icon{width:2.5rem;height:2.5rem;color:var(--gray-400);margin-bottom:1rem}.book-unavailable__title{color:var(--gray-700);margin:0 0 .5rem;font-size:1.125rem;font-weight:600}.book-unavailable__text{color:var(--gray-500);margin:0;font-size:.875rem}.share-button{color:var(--gray-600);border:1px solid var(--gray-300);cursor:pointer;background-color:#0000;border-radius:.375rem;align-items:center;gap:.375rem;min-height:36px;padding:.5rem .875rem;font-size:.8125rem;font-weight:500;transition:color .15s,border-color .15s,background-color .15s;display:inline-flex}.share-button:hover{color:var(--gray-900);border-color:var(--gray-400);background-color:var(--gray-50)}.share-button:active{background-color:var(--gray-100)}.share-button--copied,.share-button--copied:hover{color:#059669;background-color:#ecfdf5;border-color:#a7f3d0}.share-button__icon{width:1rem;height:1rem}@media (max-width:359px){.share-button__text{display:none}}@media (min-width:768px){.book-content{padding:2rem 2rem 2.5rem}.book-cover{width:140px;height:200px}.book-info__title{font-size:1.625rem}.book-paywall{padding:1.5rem}.book-paywall__price-value{font-size:2rem}}@media (prefers-color-scheme:dark){.book-page{background-color:var(--gray-900)}.book-header{background-color:var(--gray-800);border-bottom-color:var(--gray-700)}.book-header__back{color:var(--gray-300)}.book-header__back:hover{color:#fff;background-color:var(--gray-700)}.book-cover{background:linear-gradient(135deg,var(--gray-700)0%,var(--gray-600)100%)}.book-cover__icon{color:var(--gray-400)}.book-info__category{background-color:#3b5bdb33}.book-info__title{color:#fff}.book-info__subtitle,.book-info__author{color:var(--gray-400)}.book-info__author--link:hover{color:var(--accent-primary)}.book-info__description{color:var(--gray-300)}.book-info__gallery-hint{color:var(--gray-400)}.book-info__meta{border-bottom-color:var(--gray-700)}.book-paywall{background-color:var(--gray-800);border-color:var(--gray-700)}.book-paywall__badge{background-color:var(--gray-700);color:var(--gray-300)}.book-paywall__badge-icon{color:var(--gray-400)}.book-paywall__price-value,.book-error__title{color:#fff}.book-error__text,.book-loading{color:var(--gray-400)}.book-info__badge--author{color:#a78bfa;background-color:#8b5cf633}.book-info__badge--owned{color:#34d399;background-color:#10b98133}.book-info__badge--free{color:#60a5fa;background-color:#3b82f633}.book-info__badge--unpublished{color:#9ca3af;background-color:#6b728033}.book-unavailable{background-color:var(--gray-800);border-color:var(--gray-700)}.book-unavailable__icon{color:var(--gray-500)}.book-unavailable__title{color:var(--gray-300)}.book-unavailable__text{color:var(--gray-400)}.share-button{color:var(--gray-400);border-color:var(--gray-600)}.share-button:hover{color:var(--gray-200);border-color:var(--gray-500);background-color:var(--gray-700)}.share-button:active{background-color:var(--gray-600)}.share-button--copied,.share-button--copied:hover{color:#34d399;background-color:#10b9811a;border-color:#10b9814d}.book-chapters{background-color:var(--gray-800);border-color:var(--gray-700)}.book-chapters__header{border-bottom-color:var(--gray-700)}.book-chapters__icon{color:var(--gray-500)}.book-chapters__title{color:var(--gray-200)}.book-chapters__item{border-bottom-color:var(--gray-700)}.book-chapters__link{color:var(--gray-300)}.book-chapters__link:hover{color:var(--accent-primary);background-color:var(--gray-700)}.book-chapters__link:active{background-color:var(--gray-600)}.book-chapters__link--implicit .book-chapters__label{color:var(--gray-400)}.book-chapters__time,.book-chapters__chevron{color:var(--gray-500)}.book-chapters__link:hover .book-chapters__chevron{color:var(--accent-primary)}.book-chapters__link--locked .book-chapters__label{color:var(--gray-500)}.book-chapters__link--locked:hover{background-color:var(--gray-700)}.book-chapters__link--locked:hover .book-chapters__label{color:var(--gray-400)}.book-chapters__lock{color:var(--gray-500)}.book-chapters__link--locked:hover .book-chapters__lock{color:var(--accent-primary)}}
