c-box, c-vbox, c-bookpicker, c-carousel, c-book-carousel, c-carousel-slider, c-bookguide, c-contact-signup:not(.horizontal) form, c-tabbed, .bookmark-list, c-filterguide, c-auth form, c-infobox.auth-dialog form, .dropdown-menu, c-wrapper, c-sidebar, c-rangeslider, c-infobox, c-filtergroup, c-checklist, .bookdetails .mid-section c-metafields, c-booklisting, .preset-centered-dialog, .preset-centered-dialog > form, .recommended-books .shortcut-section .shortcut, c-account-wrapper .page-account form, c-account-wrapper .page-subscription, c-account-wrapper .page-settings form, .buy-save-find-buttons:not(.horizontal), .save-find-buttons.vertical, c-contact-signup, c-auth, c-infobox.auth-dialog, c-contact-signup > form, c-auth > form, c-infobox > form, .vbox, .book-title, c-hbox, c-contact-signup.horizontal form, c-tabs, c-bookmark-listing, c-filterguide .filter-box .search-wrapper .search-form, c-filterguide .filter-box .search-wrapper .search-form .query-picker, c-nav nav, c-auth .or, c-infobox.auth-dialog .or, c-bookbar, c-switch, c-pagination, c-search, c-booksort, #plans c-plan-picker .plans, c-account-wrapper, c-account-wrapper > .sidebar > .column a, .buy-button, .buy-save-find-buttons.horizontal, .save-find-buttons:not(.vertical), .hbox {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
}
c-box[flex], c-vbox[flex], c-bookpicker[flex], c-carousel[flex], c-book-carousel[flex], c-carousel-slider[flex], c-bookguide[flex], c-contact-signup:not(.horizontal) form[flex], c-tabbed[flex], [flex].bookmark-list, c-filterguide[flex], c-auth form[flex], c-infobox.auth-dialog form[flex], [flex].dropdown-menu, c-wrapper[flex], c-sidebar[flex], c-rangeslider[flex], c-infobox[flex], c-filtergroup[flex], c-checklist[flex], .bookdetails .mid-section c-metafields[flex], c-booklisting[flex], [flex].preset-centered-dialog, .preset-centered-dialog > form[flex], .recommended-books .shortcut-section [flex].shortcut, c-account-wrapper .page-account form[flex], c-account-wrapper [flex].page-subscription, c-account-wrapper .page-settings form[flex], [flex].buy-save-find-buttons:not(.horizontal), [flex].save-find-buttons.vertical, c-contact-signup[flex], c-auth[flex], c-contact-signup > form[flex], c-infobox > form[flex], [flex].vbox, [flex].book-title, c-hbox[flex], c-contact-signup.horizontal form[flex], c-tabs[flex], c-bookmark-listing[flex], c-filterguide .filter-box .search-wrapper [flex].search-form, c-filterguide .filter-box .search-wrapper .search-form [flex].query-picker, c-nav nav[flex], c-auth [flex].or, c-infobox.auth-dialog [flex].or, c-bookbar[flex], c-switch[flex], c-pagination[flex], c-search[flex], c-booksort[flex], #plans c-plan-picker [flex].plans, c-account-wrapper[flex], c-account-wrapper > .sidebar > .column a[flex], [flex].buy-button, [flex].buy-save-find-buttons.horizontal, [flex].save-find-buttons:not(.vertical), [flex].hbox {
  float: none;
}
c-box[align=start], c-vbox[align=start], c-bookpicker[align=start], c-carousel[align=start], c-book-carousel[align=start], c-carousel-slider[align=start], c-bookguide[align=start], c-contact-signup:not(.horizontal) form[align=start], c-tabbed[align=start], [align=start].bookmark-list, c-filterguide[align=start], c-auth form[align=start], c-infobox.auth-dialog form[align=start], [align=start].dropdown-menu, c-wrapper[align=start], c-sidebar[align=start], c-rangeslider[align=start], c-infobox[align=start], c-filtergroup[align=start], c-checklist[align=start], .bookdetails .mid-section c-metafields[align=start], c-booklisting[align=start], [align=start].preset-centered-dialog, .preset-centered-dialog > form[align=start], .recommended-books .shortcut-section [align=start].shortcut, c-account-wrapper .page-account form[align=start], c-account-wrapper [align=start].page-subscription, c-account-wrapper .page-settings form[align=start], [align=start].buy-save-find-buttons:not(.horizontal), [align=start].save-find-buttons.vertical, c-contact-signup[align=start], c-auth[align=start], c-contact-signup > form[align=start], c-infobox > form[align=start], [align=start].vbox, [align=start].book-title, c-hbox[align=start], c-contact-signup.horizontal form[align=start], c-tabs[align=start], c-bookmark-listing[align=start], c-filterguide .filter-box .search-wrapper [align=start].search-form, c-filterguide .filter-box .search-wrapper .search-form [align=start].query-picker, c-nav nav[align=start], c-auth [align=start].or, c-infobox.auth-dialog [align=start].or, c-bookbar[align=start], c-switch[align=start], c-pagination[align=start], c-search[align=start], c-booksort[align=start], #plans c-plan-picker [align=start].plans, c-account-wrapper[align=start], c-account-wrapper > .sidebar > .column a[align=start], [align=start].buy-button, [align=start].buy-save-find-buttons.horizontal, [align=start].save-find-buttons:not(.vertical), [align=start].hbox, c-box .align-start, c-vbox .align-start, c-bookpicker .align-start, c-carousel .align-start, c-book-carousel .align-start, c-carousel-slider .align-start, c-bookguide .align-start, c-contact-signup:not(.horizontal) form .align-start, c-tabbed .align-start, .bookmark-list .align-start, c-filterguide .align-start, c-auth form .align-start, c-infobox.auth-dialog form .align-start, .dropdown-menu .align-start, c-wrapper .align-start, c-sidebar .align-start, c-rangeslider .align-start, c-infobox .align-start, c-filtergroup .align-start, c-checklist .align-start, .bookdetails .mid-section c-metafields .align-start, c-booklisting .align-start, .preset-centered-dialog .align-start, .preset-centered-dialog > form .align-start, .recommended-books .shortcut-section .shortcut .align-start, c-account-wrapper .page-account form .align-start, c-account-wrapper .page-subscription .align-start, c-account-wrapper .page-settings form .align-start, .buy-save-find-buttons:not(.horizontal) .align-start, .save-find-buttons.vertical .align-start, c-contact-signup .align-start, c-auth .align-start, c-infobox.auth-dialog .align-start, c-contact-signup > form .align-start, c-auth > form .align-start, c-infobox.auth-dialog > form .align-start, c-infobox > form .align-start, .vbox .align-start, .book-title .align-start, c-hbox .align-start, c-contact-signup.horizontal form .align-start, c-tabs .align-start, c-bookmark-listing .align-start, c-filterguide .filter-box .search-wrapper .search-form .align-start, c-filterguide .filter-box .search-wrapper .search-form .query-picker .align-start, c-nav nav .align-start, c-auth .or .align-start, c-infobox.auth-dialog .or .align-start, c-bookbar .align-start, c-switch .align-start, c-pagination .align-start, c-search .align-start, c-booksort .align-start, #plans c-plan-picker .plans .align-start, c-account-wrapper .align-start, c-account-wrapper > .sidebar > .column a .align-start, .buy-button .align-start, .buy-save-find-buttons.horizontal .align-start, .save-find-buttons:not(.vertical) .align-start, .hbox .align-start {
  justify-content: flex-start;
}
c-box[align=end], c-vbox[align=end], c-bookpicker[align=end], c-carousel[align=end], c-book-carousel[align=end], c-carousel-slider[align=end], c-bookguide[align=end], c-contact-signup:not(.horizontal) form[align=end], c-tabbed[align=end], [align=end].bookmark-list, c-filterguide[align=end], c-auth form[align=end], c-infobox.auth-dialog form[align=end], [align=end].dropdown-menu, c-wrapper[align=end], c-sidebar[align=end], c-rangeslider[align=end], c-infobox[align=end], c-filtergroup[align=end], c-checklist[align=end], .bookdetails .mid-section c-metafields[align=end], c-booklisting[align=end], [align=end].preset-centered-dialog, .preset-centered-dialog > form[align=end], .recommended-books .shortcut-section [align=end].shortcut, c-account-wrapper .page-account form[align=end], c-account-wrapper [align=end].page-subscription, c-account-wrapper .page-settings form[align=end], [align=end].buy-save-find-buttons:not(.horizontal), [align=end].save-find-buttons.vertical, c-contact-signup[align=end], c-auth[align=end], c-contact-signup > form[align=end], c-infobox > form[align=end], [align=end].vbox, [align=end].book-title, c-hbox[align=end], c-contact-signup.horizontal form[align=end], c-tabs[align=end], c-bookmark-listing[align=end], c-filterguide .filter-box .search-wrapper [align=end].search-form, c-filterguide .filter-box .search-wrapper .search-form [align=end].query-picker, c-nav nav[align=end], c-auth [align=end].or, c-infobox.auth-dialog [align=end].or, c-bookbar[align=end], c-switch[align=end], c-pagination[align=end], c-search[align=end], c-booksort[align=end], #plans c-plan-picker [align=end].plans, c-account-wrapper[align=end], c-account-wrapper > .sidebar > .column a[align=end], [align=end].buy-button, [align=end].buy-save-find-buttons.horizontal, [align=end].save-find-buttons:not(.vertical), [align=end].hbox, c-box .align-end, c-vbox .align-end, c-bookpicker .align-end, c-carousel .align-end, c-book-carousel .align-end, c-carousel-slider .align-end, c-bookguide .align-end, c-contact-signup:not(.horizontal) form .align-end, c-tabbed .align-end, .bookmark-list .align-end, c-filterguide .align-end, c-auth form .align-end, c-infobox.auth-dialog form .align-end, .dropdown-menu .align-end, c-wrapper .align-end, c-sidebar .align-end, c-rangeslider .align-end, c-infobox .align-end, c-filtergroup .align-end, c-checklist .align-end, .bookdetails .mid-section c-metafields .align-end, c-booklisting .align-end, .preset-centered-dialog .align-end, .preset-centered-dialog > form .align-end, .recommended-books .shortcut-section .shortcut .align-end, c-account-wrapper .page-account form .align-end, c-account-wrapper .page-subscription .align-end, c-account-wrapper .page-settings form .align-end, .buy-save-find-buttons:not(.horizontal) .align-end, .save-find-buttons.vertical .align-end, c-contact-signup .align-end, c-auth .align-end, c-infobox.auth-dialog .align-end, c-contact-signup > form .align-end, c-auth > form .align-end, c-infobox.auth-dialog > form .align-end, c-infobox > form .align-end, .vbox .align-end, .book-title .align-end, c-hbox .align-end, c-contact-signup.horizontal form .align-end, c-tabs .align-end, c-bookmark-listing .align-end, c-filterguide .filter-box .search-wrapper .search-form .align-end, c-filterguide .filter-box .search-wrapper .search-form .query-picker .align-end, c-nav nav .align-end, c-auth .or .align-end, c-infobox.auth-dialog .or .align-end, c-bookbar .align-end, c-switch .align-end, c-pagination .align-end, c-search .align-end, c-booksort .align-end, #plans c-plan-picker .plans .align-end, c-account-wrapper .align-end, c-account-wrapper > .sidebar > .column a .align-end, .buy-button .align-end, .buy-save-find-buttons.horizontal .align-end, .save-find-buttons:not(.vertical) .align-end, .hbox .align-end {
  justify-content: flex-end;
}
c-box[align=center], c-vbox[align=center], c-bookpicker[align=center], c-carousel[align=center], c-book-carousel[align=center], c-carousel-slider[align=center], c-bookguide[align=center], c-contact-signup:not(.horizontal) form[align=center], c-tabbed[align=center], [align=center].bookmark-list, c-filterguide[align=center], c-auth form[align=center], c-infobox.auth-dialog form[align=center], [align=center].dropdown-menu, c-wrapper[align=center], c-sidebar[align=center], c-rangeslider[align=center], c-infobox[align=center], c-filtergroup[align=center], c-checklist[align=center], .bookdetails .mid-section c-metafields[align=center], c-booklisting[align=center], [align=center].preset-centered-dialog, .preset-centered-dialog > form[align=center], .recommended-books .shortcut-section [align=center].shortcut, c-account-wrapper .page-account form[align=center], c-account-wrapper [align=center].page-subscription, c-account-wrapper .page-settings form[align=center], [align=center].buy-save-find-buttons:not(.horizontal), [align=center].save-find-buttons.vertical, c-contact-signup[align=center], c-auth[align=center], c-contact-signup > form[align=center], c-infobox > form[align=center], [align=center].vbox, [align=center].book-title, c-hbox[align=center], c-contact-signup.horizontal form[align=center], c-tabs[align=center], c-bookmark-listing[align=center], c-filterguide .filter-box .search-wrapper [align=center].search-form, c-filterguide .filter-box .search-wrapper .search-form [align=center].query-picker, c-nav nav[align=center], c-auth [align=center].or, c-infobox.auth-dialog [align=center].or, c-bookbar[align=center], c-switch[align=center], c-pagination[align=center], c-search[align=center], c-booksort[align=center], #plans c-plan-picker [align=center].plans, c-account-wrapper[align=center], c-account-wrapper > .sidebar > .column a[align=center], [align=center].buy-button, [align=center].buy-save-find-buttons.horizontal, [align=center].save-find-buttons:not(.vertical), [align=center].hbox, c-box .align-center, c-vbox .align-center, c-bookpicker .align-center, c-carousel .align-center, c-book-carousel .align-center, c-carousel-slider .align-center, c-bookguide .align-center, c-contact-signup:not(.horizontal) form .align-center, c-tabbed .align-center, .bookmark-list .align-center, c-filterguide .align-center, c-auth form .align-center, c-infobox.auth-dialog form .align-center, .dropdown-menu .align-center, c-wrapper .align-center, c-sidebar .align-center, c-rangeslider .align-center, c-infobox .align-center, c-filtergroup .align-center, c-checklist .align-center, .bookdetails .mid-section c-metafields .align-center, c-booklisting .align-center, .preset-centered-dialog .align-center, .preset-centered-dialog > form .align-center, .recommended-books .shortcut-section .shortcut .align-center, c-account-wrapper .page-account form .align-center, c-account-wrapper .page-subscription .align-center, c-account-wrapper .page-settings form .align-center, .buy-save-find-buttons:not(.horizontal) .align-center, .save-find-buttons.vertical .align-center, c-contact-signup .align-center, c-auth .align-center, c-infobox.auth-dialog .align-center, c-contact-signup > form .align-center, c-auth > form .align-center, c-infobox.auth-dialog > form .align-center, c-infobox > form .align-center, .vbox .align-center, .book-title .align-center, c-hbox .align-center, c-contact-signup.horizontal form .align-center, c-tabs .align-center, c-bookmark-listing .align-center, c-filterguide .filter-box .search-wrapper .search-form .align-center, c-filterguide .filter-box .search-wrapper .search-form .query-picker .align-center, c-nav nav .align-center, c-auth .or .align-center, c-infobox.auth-dialog .or .align-center, c-bookbar .align-center, c-switch .align-center, c-pagination .align-center, c-search .align-center, c-booksort .align-center, #plans c-plan-picker .plans .align-center, c-account-wrapper .align-center, c-account-wrapper > .sidebar > .column a .align-center, .buy-button .align-center, .buy-save-find-buttons.horizontal .align-center, .save-find-buttons:not(.vertical) .align-center, .hbox .align-center {
  justify-content: center;
}
c-box[align=stretch], c-vbox[align=stretch], c-bookpicker[align=stretch], c-carousel[align=stretch], c-book-carousel[align=stretch], c-carousel-slider[align=stretch], c-bookguide[align=stretch], c-contact-signup:not(.horizontal) form[align=stretch], c-tabbed[align=stretch], [align=stretch].bookmark-list, c-filterguide[align=stretch], c-auth form[align=stretch], c-infobox.auth-dialog form[align=stretch], [align=stretch].dropdown-menu, c-wrapper[align=stretch], c-sidebar[align=stretch], c-rangeslider[align=stretch], c-infobox[align=stretch], c-filtergroup[align=stretch], c-checklist[align=stretch], .bookdetails .mid-section c-metafields[align=stretch], c-booklisting[align=stretch], [align=stretch].preset-centered-dialog, .preset-centered-dialog > form[align=stretch], .recommended-books .shortcut-section [align=stretch].shortcut, c-account-wrapper .page-account form[align=stretch], c-account-wrapper [align=stretch].page-subscription, c-account-wrapper .page-settings form[align=stretch], [align=stretch].buy-save-find-buttons:not(.horizontal), [align=stretch].save-find-buttons.vertical, c-contact-signup[align=stretch], c-auth[align=stretch], c-contact-signup > form[align=stretch], c-infobox > form[align=stretch], [align=stretch].vbox, [align=stretch].book-title, c-hbox[align=stretch], c-contact-signup.horizontal form[align=stretch], c-tabs[align=stretch], c-bookmark-listing[align=stretch], c-filterguide .filter-box .search-wrapper [align=stretch].search-form, c-filterguide .filter-box .search-wrapper .search-form [align=stretch].query-picker, c-nav nav[align=stretch], c-auth [align=stretch].or, c-infobox.auth-dialog [align=stretch].or, c-bookbar[align=stretch], c-switch[align=stretch], c-pagination[align=stretch], c-search[align=stretch], c-booksort[align=stretch], #plans c-plan-picker [align=stretch].plans, c-account-wrapper[align=stretch], c-account-wrapper > .sidebar > .column a[align=stretch], [align=stretch].buy-button, [align=stretch].buy-save-find-buttons.horizontal, [align=stretch].save-find-buttons:not(.vertical), [align=stretch].hbox, c-box .align-stretch, c-vbox .align-stretch, c-bookpicker .align-stretch, c-carousel .align-stretch, c-book-carousel .align-stretch, c-carousel-slider .align-stretch, c-bookguide .align-stretch, c-contact-signup:not(.horizontal) form .align-stretch, c-tabbed .align-stretch, .bookmark-list .align-stretch, c-filterguide .align-stretch, c-auth form .align-stretch, c-infobox.auth-dialog form .align-stretch, .dropdown-menu .align-stretch, c-wrapper .align-stretch, c-sidebar .align-stretch, c-rangeslider .align-stretch, c-infobox .align-stretch, c-filtergroup .align-stretch, c-checklist .align-stretch, .bookdetails .mid-section c-metafields .align-stretch, c-booklisting .align-stretch, .preset-centered-dialog .align-stretch, .preset-centered-dialog > form .align-stretch, .recommended-books .shortcut-section .shortcut .align-stretch, c-account-wrapper .page-account form .align-stretch, c-account-wrapper .page-subscription .align-stretch, c-account-wrapper .page-settings form .align-stretch, .buy-save-find-buttons:not(.horizontal) .align-stretch, .save-find-buttons.vertical .align-stretch, c-contact-signup .align-stretch, c-auth .align-stretch, c-infobox.auth-dialog .align-stretch, c-contact-signup > form .align-stretch, c-auth > form .align-stretch, c-infobox.auth-dialog > form .align-stretch, c-infobox > form .align-stretch, .vbox .align-stretch, .book-title .align-stretch, c-hbox .align-stretch, c-contact-signup.horizontal form .align-stretch, c-tabs .align-stretch, c-bookmark-listing .align-stretch, c-filterguide .filter-box .search-wrapper .search-form .align-stretch, c-filterguide .filter-box .search-wrapper .search-form .query-picker .align-stretch, c-nav nav .align-stretch, c-auth .or .align-stretch, c-infobox.auth-dialog .or .align-stretch, c-bookbar .align-stretch, c-switch .align-stretch, c-pagination .align-stretch, c-search .align-stretch, c-booksort .align-stretch, #plans c-plan-picker .plans .align-stretch, c-account-wrapper .align-stretch, c-account-wrapper > .sidebar > .column a .align-stretch, .buy-button .align-stretch, .buy-save-find-buttons.horizontal .align-stretch, .save-find-buttons:not(.vertical) .align-stretch, .hbox .align-stretch {
  justify-content: stretch;
}
c-box[align=baseline], c-vbox[align=baseline], c-bookpicker[align=baseline], c-carousel[align=baseline], c-book-carousel[align=baseline], c-carousel-slider[align=baseline], c-bookguide[align=baseline], c-contact-signup:not(.horizontal) form[align=baseline], c-tabbed[align=baseline], [align=baseline].bookmark-list, c-filterguide[align=baseline], c-auth form[align=baseline], c-infobox.auth-dialog form[align=baseline], [align=baseline].dropdown-menu, c-wrapper[align=baseline], c-sidebar[align=baseline], c-rangeslider[align=baseline], c-infobox[align=baseline], c-filtergroup[align=baseline], c-checklist[align=baseline], .bookdetails .mid-section c-metafields[align=baseline], c-booklisting[align=baseline], [align=baseline].preset-centered-dialog, .preset-centered-dialog > form[align=baseline], .recommended-books .shortcut-section [align=baseline].shortcut, c-account-wrapper .page-account form[align=baseline], c-account-wrapper [align=baseline].page-subscription, c-account-wrapper .page-settings form[align=baseline], [align=baseline].buy-save-find-buttons:not(.horizontal), [align=baseline].save-find-buttons.vertical, c-contact-signup[align=baseline], c-auth[align=baseline], c-contact-signup > form[align=baseline], c-infobox > form[align=baseline], [align=baseline].vbox, [align=baseline].book-title, c-hbox[align=baseline], c-contact-signup.horizontal form[align=baseline], c-tabs[align=baseline], c-bookmark-listing[align=baseline], c-filterguide .filter-box .search-wrapper [align=baseline].search-form, c-filterguide .filter-box .search-wrapper .search-form [align=baseline].query-picker, c-nav nav[align=baseline], c-auth [align=baseline].or, c-infobox.auth-dialog [align=baseline].or, c-bookbar[align=baseline], c-switch[align=baseline], c-pagination[align=baseline], c-search[align=baseline], c-booksort[align=baseline], #plans c-plan-picker [align=baseline].plans, c-account-wrapper[align=baseline], c-account-wrapper > .sidebar > .column a[align=baseline], [align=baseline].buy-button, [align=baseline].buy-save-find-buttons.horizontal, [align=baseline].save-find-buttons:not(.vertical), [align=baseline].hbox, c-box .align-baseline, c-vbox .align-baseline, c-bookpicker .align-baseline, c-carousel .align-baseline, c-book-carousel .align-baseline, c-carousel-slider .align-baseline, c-bookguide .align-baseline, c-contact-signup:not(.horizontal) form .align-baseline, c-tabbed .align-baseline, .bookmark-list .align-baseline, c-filterguide .align-baseline, c-auth form .align-baseline, c-infobox.auth-dialog form .align-baseline, .dropdown-menu .align-baseline, c-wrapper .align-baseline, c-sidebar .align-baseline, c-rangeslider .align-baseline, c-infobox .align-baseline, c-filtergroup .align-baseline, c-checklist .align-baseline, .bookdetails .mid-section c-metafields .align-baseline, c-booklisting .align-baseline, .preset-centered-dialog .align-baseline, .preset-centered-dialog > form .align-baseline, .recommended-books .shortcut-section .shortcut .align-baseline, c-account-wrapper .page-account form .align-baseline, c-account-wrapper .page-subscription .align-baseline, c-account-wrapper .page-settings form .align-baseline, .buy-save-find-buttons:not(.horizontal) .align-baseline, .save-find-buttons.vertical .align-baseline, c-contact-signup .align-baseline, c-auth .align-baseline, c-infobox.auth-dialog .align-baseline, c-contact-signup > form .align-baseline, c-auth > form .align-baseline, c-infobox.auth-dialog > form .align-baseline, c-infobox > form .align-baseline, .vbox .align-baseline, .book-title .align-baseline, c-hbox .align-baseline, c-contact-signup.horizontal form .align-baseline, c-tabs .align-baseline, c-bookmark-listing .align-baseline, c-filterguide .filter-box .search-wrapper .search-form .align-baseline, c-filterguide .filter-box .search-wrapper .search-form .query-picker .align-baseline, c-nav nav .align-baseline, c-auth .or .align-baseline, c-infobox.auth-dialog .or .align-baseline, c-bookbar .align-baseline, c-switch .align-baseline, c-pagination .align-baseline, c-search .align-baseline, c-booksort .align-baseline, #plans c-plan-picker .plans .align-baseline, c-account-wrapper .align-baseline, c-account-wrapper > .sidebar > .column a .align-baseline, .buy-button .align-baseline, .buy-save-find-buttons.horizontal .align-baseline, .save-find-buttons:not(.vertical) .align-baseline, .hbox .align-baseline {
  align-items: baseline;
}
c-box[align=space-between], c-vbox[align=space-between], c-bookpicker[align=space-between], c-carousel[align=space-between], c-book-carousel[align=space-between], c-carousel-slider[align=space-between], c-bookguide[align=space-between], c-contact-signup:not(.horizontal) form[align=space-between], c-tabbed[align=space-between], [align=space-between].bookmark-list, c-filterguide[align=space-between], c-auth form[align=space-between], c-infobox.auth-dialog form[align=space-between], [align=space-between].dropdown-menu, c-wrapper[align=space-between], c-sidebar[align=space-between], c-rangeslider[align=space-between], c-infobox[align=space-between], c-filtergroup[align=space-between], c-checklist[align=space-between], .bookdetails .mid-section c-metafields[align=space-between], c-booklisting[align=space-between], [align=space-between].preset-centered-dialog, .preset-centered-dialog > form[align=space-between], .recommended-books .shortcut-section [align=space-between].shortcut, c-account-wrapper .page-account form[align=space-between], c-account-wrapper [align=space-between].page-subscription, c-account-wrapper .page-settings form[align=space-between], [align=space-between].buy-save-find-buttons:not(.horizontal), [align=space-between].save-find-buttons.vertical, c-contact-signup[align=space-between], c-auth[align=space-between], c-contact-signup > form[align=space-between], c-infobox > form[align=space-between], [align=space-between].vbox, [align=space-between].book-title, c-hbox[align=space-between], c-contact-signup.horizontal form[align=space-between], c-tabs[align=space-between], c-bookmark-listing[align=space-between], c-filterguide .filter-box .search-wrapper [align=space-between].search-form, c-filterguide .filter-box .search-wrapper .search-form [align=space-between].query-picker, c-nav nav[align=space-between], c-auth [align=space-between].or, c-infobox.auth-dialog [align=space-between].or, c-bookbar[align=space-between], c-switch[align=space-between], c-pagination[align=space-between], c-search[align=space-between], c-booksort[align=space-between], #plans c-plan-picker [align=space-between].plans, c-account-wrapper[align=space-between], c-account-wrapper > .sidebar > .column a[align=space-between], [align=space-between].buy-button, [align=space-between].buy-save-find-buttons.horizontal, [align=space-between].save-find-buttons:not(.vertical), [align=space-between].hbox, c-box .align-space-between, c-vbox .align-space-between, c-bookpicker .align-space-between, c-carousel .align-space-between, c-book-carousel .align-space-between, c-carousel-slider .align-space-between, c-bookguide .align-space-between, c-contact-signup:not(.horizontal) form .align-space-between, c-tabbed .align-space-between, .bookmark-list .align-space-between, c-filterguide .align-space-between, c-auth form .align-space-between, c-infobox.auth-dialog form .align-space-between, .dropdown-menu .align-space-between, c-wrapper .align-space-between, c-sidebar .align-space-between, c-rangeslider .align-space-between, c-infobox .align-space-between, c-filtergroup .align-space-between, c-checklist .align-space-between, .bookdetails .mid-section c-metafields .align-space-between, c-booklisting .align-space-between, .preset-centered-dialog .align-space-between, .preset-centered-dialog > form .align-space-between, .recommended-books .shortcut-section .shortcut .align-space-between, c-account-wrapper .page-account form .align-space-between, c-account-wrapper .page-subscription .align-space-between, c-account-wrapper .page-settings form .align-space-between, .buy-save-find-buttons:not(.horizontal) .align-space-between, .save-find-buttons.vertical .align-space-between, c-contact-signup .align-space-between, c-auth .align-space-between, c-infobox.auth-dialog .align-space-between, c-contact-signup > form .align-space-between, c-auth > form .align-space-between, c-infobox.auth-dialog > form .align-space-between, c-infobox > form .align-space-between, .vbox .align-space-between, .book-title .align-space-between, c-hbox .align-space-between, c-contact-signup.horizontal form .align-space-between, c-tabs .align-space-between, c-bookmark-listing .align-space-between, c-filterguide .filter-box .search-wrapper .search-form .align-space-between, c-filterguide .filter-box .search-wrapper .search-form .query-picker .align-space-between, c-nav nav .align-space-between, c-auth .or .align-space-between, c-infobox.auth-dialog .or .align-space-between, c-bookbar .align-space-between, c-switch .align-space-between, c-pagination .align-space-between, c-search .align-space-between, c-booksort .align-space-between, #plans c-plan-picker .plans .align-space-between, c-account-wrapper .align-space-between, c-account-wrapper > .sidebar > .column a .align-space-between, .buy-button .align-space-between, .buy-save-find-buttons.horizontal .align-space-between, .save-find-buttons:not(.vertical) .align-space-between, .hbox .align-space-between {
  justify-content: space-between;
}
c-box[align=space-around], c-vbox[align=space-around], c-bookpicker[align=space-around], c-carousel[align=space-around], c-book-carousel[align=space-around], c-carousel-slider[align=space-around], c-bookguide[align=space-around], c-contact-signup:not(.horizontal) form[align=space-around], c-tabbed[align=space-around], [align=space-around].bookmark-list, c-filterguide[align=space-around], c-auth form[align=space-around], c-infobox.auth-dialog form[align=space-around], [align=space-around].dropdown-menu, c-wrapper[align=space-around], c-sidebar[align=space-around], c-rangeslider[align=space-around], c-infobox[align=space-around], c-filtergroup[align=space-around], c-checklist[align=space-around], .bookdetails .mid-section c-metafields[align=space-around], c-booklisting[align=space-around], [align=space-around].preset-centered-dialog, .preset-centered-dialog > form[align=space-around], .recommended-books .shortcut-section [align=space-around].shortcut, c-account-wrapper .page-account form[align=space-around], c-account-wrapper [align=space-around].page-subscription, c-account-wrapper .page-settings form[align=space-around], [align=space-around].buy-save-find-buttons:not(.horizontal), [align=space-around].save-find-buttons.vertical, c-contact-signup[align=space-around], c-auth[align=space-around], c-contact-signup > form[align=space-around], c-infobox > form[align=space-around], [align=space-around].vbox, [align=space-around].book-title, c-hbox[align=space-around], c-contact-signup.horizontal form[align=space-around], c-tabs[align=space-around], c-bookmark-listing[align=space-around], c-filterguide .filter-box .search-wrapper [align=space-around].search-form, c-filterguide .filter-box .search-wrapper .search-form [align=space-around].query-picker, c-nav nav[align=space-around], c-auth [align=space-around].or, c-infobox.auth-dialog [align=space-around].or, c-bookbar[align=space-around], c-switch[align=space-around], c-pagination[align=space-around], c-search[align=space-around], c-booksort[align=space-around], #plans c-plan-picker [align=space-around].plans, c-account-wrapper[align=space-around], c-account-wrapper > .sidebar > .column a[align=space-around], [align=space-around].buy-button, [align=space-around].buy-save-find-buttons.horizontal, [align=space-around].save-find-buttons:not(.vertical), [align=space-around].hbox, c-box .align-space-around, c-vbox .align-space-around, c-bookpicker .align-space-around, c-carousel .align-space-around, c-book-carousel .align-space-around, c-carousel-slider .align-space-around, c-bookguide .align-space-around, c-contact-signup:not(.horizontal) form .align-space-around, c-tabbed .align-space-around, .bookmark-list .align-space-around, c-filterguide .align-space-around, c-auth form .align-space-around, c-infobox.auth-dialog form .align-space-around, .dropdown-menu .align-space-around, c-wrapper .align-space-around, c-sidebar .align-space-around, c-rangeslider .align-space-around, c-infobox .align-space-around, c-filtergroup .align-space-around, c-checklist .align-space-around, .bookdetails .mid-section c-metafields .align-space-around, c-booklisting .align-space-around, .preset-centered-dialog .align-space-around, .preset-centered-dialog > form .align-space-around, .recommended-books .shortcut-section .shortcut .align-space-around, c-account-wrapper .page-account form .align-space-around, c-account-wrapper .page-subscription .align-space-around, c-account-wrapper .page-settings form .align-space-around, .buy-save-find-buttons:not(.horizontal) .align-space-around, .save-find-buttons.vertical .align-space-around, c-contact-signup .align-space-around, c-auth .align-space-around, c-infobox.auth-dialog .align-space-around, c-contact-signup > form .align-space-around, c-auth > form .align-space-around, c-infobox.auth-dialog > form .align-space-around, c-infobox > form .align-space-around, .vbox .align-space-around, .book-title .align-space-around, c-hbox .align-space-around, c-contact-signup.horizontal form .align-space-around, c-tabs .align-space-around, c-bookmark-listing .align-space-around, c-filterguide .filter-box .search-wrapper .search-form .align-space-around, c-filterguide .filter-box .search-wrapper .search-form .query-picker .align-space-around, c-nav nav .align-space-around, c-auth .or .align-space-around, c-infobox.auth-dialog .or .align-space-around, c-bookbar .align-space-around, c-switch .align-space-around, c-pagination .align-space-around, c-search .align-space-around, c-booksort .align-space-around, #plans c-plan-picker .plans .align-space-around, c-account-wrapper .align-space-around, c-account-wrapper > .sidebar > .column a .align-space-around, .buy-button .align-space-around, .buy-save-find-buttons.horizontal .align-space-around, .save-find-buttons:not(.vertical) .align-space-around, .hbox .align-space-around {
  justify-content: space-around;
}
c-box[align=space-evenly], c-vbox[align=space-evenly], c-bookpicker[align=space-evenly], c-carousel[align=space-evenly], c-book-carousel[align=space-evenly], c-carousel-slider[align=space-evenly], c-bookguide[align=space-evenly], c-contact-signup:not(.horizontal) form[align=space-evenly], c-tabbed[align=space-evenly], [align=space-evenly].bookmark-list, c-filterguide[align=space-evenly], c-auth form[align=space-evenly], c-infobox.auth-dialog form[align=space-evenly], [align=space-evenly].dropdown-menu, c-wrapper[align=space-evenly], c-sidebar[align=space-evenly], c-rangeslider[align=space-evenly], c-infobox[align=space-evenly], c-filtergroup[align=space-evenly], c-checklist[align=space-evenly], .bookdetails .mid-section c-metafields[align=space-evenly], c-booklisting[align=space-evenly], [align=space-evenly].preset-centered-dialog, .preset-centered-dialog > form[align=space-evenly], .recommended-books .shortcut-section [align=space-evenly].shortcut, c-account-wrapper .page-account form[align=space-evenly], c-account-wrapper [align=space-evenly].page-subscription, c-account-wrapper .page-settings form[align=space-evenly], [align=space-evenly].buy-save-find-buttons:not(.horizontal), [align=space-evenly].save-find-buttons.vertical, c-contact-signup[align=space-evenly], c-auth[align=space-evenly], c-contact-signup > form[align=space-evenly], c-infobox > form[align=space-evenly], [align=space-evenly].vbox, [align=space-evenly].book-title, c-hbox[align=space-evenly], c-contact-signup.horizontal form[align=space-evenly], c-tabs[align=space-evenly], c-bookmark-listing[align=space-evenly], c-filterguide .filter-box .search-wrapper [align=space-evenly].search-form, c-filterguide .filter-box .search-wrapper .search-form [align=space-evenly].query-picker, c-nav nav[align=space-evenly], c-auth [align=space-evenly].or, c-infobox.auth-dialog [align=space-evenly].or, c-bookbar[align=space-evenly], c-switch[align=space-evenly], c-pagination[align=space-evenly], c-search[align=space-evenly], c-booksort[align=space-evenly], #plans c-plan-picker [align=space-evenly].plans, c-account-wrapper[align=space-evenly], c-account-wrapper > .sidebar > .column a[align=space-evenly], [align=space-evenly].buy-button, [align=space-evenly].buy-save-find-buttons.horizontal, [align=space-evenly].save-find-buttons:not(.vertical), [align=space-evenly].hbox, c-box .align-space-evenly, c-vbox .align-space-evenly, c-bookpicker .align-space-evenly, c-carousel .align-space-evenly, c-book-carousel .align-space-evenly, c-carousel-slider .align-space-evenly, c-bookguide .align-space-evenly, c-contact-signup:not(.horizontal) form .align-space-evenly, c-tabbed .align-space-evenly, .bookmark-list .align-space-evenly, c-filterguide .align-space-evenly, c-auth form .align-space-evenly, c-infobox.auth-dialog form .align-space-evenly, .dropdown-menu .align-space-evenly, c-wrapper .align-space-evenly, c-sidebar .align-space-evenly, c-rangeslider .align-space-evenly, c-infobox .align-space-evenly, c-filtergroup .align-space-evenly, c-checklist .align-space-evenly, .bookdetails .mid-section c-metafields .align-space-evenly, c-booklisting .align-space-evenly, .preset-centered-dialog .align-space-evenly, .preset-centered-dialog > form .align-space-evenly, .recommended-books .shortcut-section .shortcut .align-space-evenly, c-account-wrapper .page-account form .align-space-evenly, c-account-wrapper .page-subscription .align-space-evenly, c-account-wrapper .page-settings form .align-space-evenly, .buy-save-find-buttons:not(.horizontal) .align-space-evenly, .save-find-buttons.vertical .align-space-evenly, c-contact-signup .align-space-evenly, c-auth .align-space-evenly, c-infobox.auth-dialog .align-space-evenly, c-contact-signup > form .align-space-evenly, c-auth > form .align-space-evenly, c-infobox.auth-dialog > form .align-space-evenly, c-infobox > form .align-space-evenly, .vbox .align-space-evenly, .book-title .align-space-evenly, c-hbox .align-space-evenly, c-contact-signup.horizontal form .align-space-evenly, c-tabs .align-space-evenly, c-bookmark-listing .align-space-evenly, c-filterguide .filter-box .search-wrapper .search-form .align-space-evenly, c-filterguide .filter-box .search-wrapper .search-form .query-picker .align-space-evenly, c-nav nav .align-space-evenly, c-auth .or .align-space-evenly, c-infobox.auth-dialog .or .align-space-evenly, c-bookbar .align-space-evenly, c-switch .align-space-evenly, c-pagination .align-space-evenly, c-search .align-space-evenly, c-booksort .align-space-evenly, #plans c-plan-picker .plans .align-space-evenly, c-account-wrapper .align-space-evenly, c-account-wrapper > .sidebar > .column a .align-space-evenly, .buy-button .align-space-evenly, .buy-save-find-buttons.horizontal .align-space-evenly, .save-find-buttons:not(.vertical) .align-space-evenly, .hbox .align-space-evenly {
  justify-content: space-evenly;
}
c-box[pack=start], c-vbox[pack=start], c-bookpicker[pack=start], c-carousel[pack=start], c-book-carousel[pack=start], c-carousel-slider[pack=start], c-bookguide[pack=start], c-contact-signup:not(.horizontal) form[pack=start], c-tabbed[pack=start], [pack=start].bookmark-list, c-filterguide[pack=start], c-auth form[pack=start], c-infobox.auth-dialog form[pack=start], [pack=start].dropdown-menu, c-wrapper[pack=start], c-sidebar[pack=start], c-rangeslider[pack=start], c-infobox[pack=start], c-filtergroup[pack=start], c-checklist[pack=start], .bookdetails .mid-section c-metafields[pack=start], c-booklisting[pack=start], [pack=start].preset-centered-dialog, .preset-centered-dialog > form[pack=start], .recommended-books .shortcut-section [pack=start].shortcut, c-account-wrapper .page-account form[pack=start], c-account-wrapper [pack=start].page-subscription, c-account-wrapper .page-settings form[pack=start], [pack=start].buy-save-find-buttons:not(.horizontal), [pack=start].save-find-buttons.vertical, c-contact-signup[pack=start], c-auth[pack=start], c-contact-signup > form[pack=start], c-infobox > form[pack=start], [pack=start].vbox, [pack=start].book-title, c-hbox[pack=start], c-contact-signup.horizontal form[pack=start], c-tabs[pack=start], c-bookmark-listing[pack=start], c-filterguide .filter-box .search-wrapper [pack=start].search-form, c-filterguide .filter-box .search-wrapper .search-form [pack=start].query-picker, c-nav nav[pack=start], c-auth [pack=start].or, c-infobox.auth-dialog [pack=start].or, c-bookbar[pack=start], c-switch[pack=start], c-pagination[pack=start], c-search[pack=start], c-booksort[pack=start], #plans c-plan-picker [pack=start].plans, c-account-wrapper[pack=start], c-account-wrapper > .sidebar > .column a[pack=start], [pack=start].buy-button, [pack=start].buy-save-find-buttons.horizontal, [pack=start].save-find-buttons:not(.vertical), [pack=start].hbox, c-box .pack-start, c-vbox .pack-start, c-bookpicker .pack-start, c-carousel .pack-start, c-book-carousel .pack-start, c-carousel-slider .pack-start, c-bookguide .pack-start, c-contact-signup:not(.horizontal) form .pack-start, c-tabbed .pack-start, .bookmark-list .pack-start, c-filterguide .pack-start, c-auth form .pack-start, c-infobox.auth-dialog form .pack-start, .dropdown-menu .pack-start, c-wrapper .pack-start, c-sidebar .pack-start, c-rangeslider .pack-start, c-infobox .pack-start, c-filtergroup .pack-start, c-checklist .pack-start, .bookdetails .mid-section c-metafields .pack-start, c-booklisting .pack-start, .preset-centered-dialog .pack-start, .preset-centered-dialog > form .pack-start, .recommended-books .shortcut-section .shortcut .pack-start, c-account-wrapper .page-account form .pack-start, c-account-wrapper .page-subscription .pack-start, c-account-wrapper .page-settings form .pack-start, .buy-save-find-buttons:not(.horizontal) .pack-start, .save-find-buttons.vertical .pack-start, c-contact-signup .pack-start, c-auth .pack-start, c-infobox.auth-dialog .pack-start, c-contact-signup > form .pack-start, c-auth > form .pack-start, c-infobox.auth-dialog > form .pack-start, c-infobox > form .pack-start, .vbox .pack-start, .book-title .pack-start, c-hbox .pack-start, c-contact-signup.horizontal form .pack-start, c-tabs .pack-start, c-bookmark-listing .pack-start, c-filterguide .filter-box .search-wrapper .search-form .pack-start, c-filterguide .filter-box .search-wrapper .search-form .query-picker .pack-start, c-nav nav .pack-start, c-auth .or .pack-start, c-infobox.auth-dialog .or .pack-start, c-bookbar .pack-start, c-switch .pack-start, c-pagination .pack-start, c-search .pack-start, c-booksort .pack-start, #plans c-plan-picker .plans .pack-start, c-account-wrapper .pack-start, c-account-wrapper > .sidebar > .column a .pack-start, .buy-button .pack-start, .buy-save-find-buttons.horizontal .pack-start, .save-find-buttons:not(.vertical) .pack-start, .hbox .pack-start {
  align-items: flex-start;
}
c-box[pack=end], c-vbox[pack=end], c-bookpicker[pack=end], c-carousel[pack=end], c-book-carousel[pack=end], c-carousel-slider[pack=end], c-bookguide[pack=end], c-contact-signup:not(.horizontal) form[pack=end], c-tabbed[pack=end], [pack=end].bookmark-list, c-filterguide[pack=end], c-auth form[pack=end], c-infobox.auth-dialog form[pack=end], [pack=end].dropdown-menu, c-wrapper[pack=end], c-sidebar[pack=end], c-rangeslider[pack=end], c-infobox[pack=end], c-filtergroup[pack=end], c-checklist[pack=end], .bookdetails .mid-section c-metafields[pack=end], c-booklisting[pack=end], [pack=end].preset-centered-dialog, .preset-centered-dialog > form[pack=end], .recommended-books .shortcut-section [pack=end].shortcut, c-account-wrapper .page-account form[pack=end], c-account-wrapper [pack=end].page-subscription, c-account-wrapper .page-settings form[pack=end], [pack=end].buy-save-find-buttons:not(.horizontal), [pack=end].save-find-buttons.vertical, c-contact-signup[pack=end], c-auth[pack=end], c-contact-signup > form[pack=end], c-infobox > form[pack=end], [pack=end].vbox, [pack=end].book-title, c-hbox[pack=end], c-contact-signup.horizontal form[pack=end], c-tabs[pack=end], c-bookmark-listing[pack=end], c-filterguide .filter-box .search-wrapper [pack=end].search-form, c-filterguide .filter-box .search-wrapper .search-form [pack=end].query-picker, c-nav nav[pack=end], c-auth [pack=end].or, c-infobox.auth-dialog [pack=end].or, c-bookbar[pack=end], c-switch[pack=end], c-pagination[pack=end], c-search[pack=end], c-booksort[pack=end], #plans c-plan-picker [pack=end].plans, c-account-wrapper[pack=end], c-account-wrapper > .sidebar > .column a[pack=end], [pack=end].buy-button, [pack=end].buy-save-find-buttons.horizontal, [pack=end].save-find-buttons:not(.vertical), [pack=end].hbox, c-box .pack-end, c-vbox .pack-end, c-bookpicker .pack-end, c-carousel .pack-end, c-book-carousel .pack-end, c-carousel-slider .pack-end, c-bookguide .pack-end, c-contact-signup:not(.horizontal) form .pack-end, c-tabbed .pack-end, .bookmark-list .pack-end, c-filterguide .pack-end, c-auth form .pack-end, c-infobox.auth-dialog form .pack-end, .dropdown-menu .pack-end, c-wrapper .pack-end, c-sidebar .pack-end, c-rangeslider .pack-end, c-infobox .pack-end, c-filtergroup .pack-end, c-checklist .pack-end, .bookdetails .mid-section c-metafields .pack-end, c-booklisting .pack-end, .preset-centered-dialog .pack-end, .preset-centered-dialog > form .pack-end, .recommended-books .shortcut-section .shortcut .pack-end, c-account-wrapper .page-account form .pack-end, c-account-wrapper .page-subscription .pack-end, c-account-wrapper .page-settings form .pack-end, .buy-save-find-buttons:not(.horizontal) .pack-end, .save-find-buttons.vertical .pack-end, c-contact-signup .pack-end, c-auth .pack-end, c-infobox.auth-dialog .pack-end, c-contact-signup > form .pack-end, c-auth > form .pack-end, c-infobox.auth-dialog > form .pack-end, c-infobox > form .pack-end, .vbox .pack-end, .book-title .pack-end, c-hbox .pack-end, c-contact-signup.horizontal form .pack-end, c-tabs .pack-end, c-bookmark-listing .pack-end, c-filterguide .filter-box .search-wrapper .search-form .pack-end, c-filterguide .filter-box .search-wrapper .search-form .query-picker .pack-end, c-nav nav .pack-end, c-auth .or .pack-end, c-infobox.auth-dialog .or .pack-end, c-bookbar .pack-end, c-switch .pack-end, c-pagination .pack-end, c-search .pack-end, c-booksort .pack-end, #plans c-plan-picker .plans .pack-end, c-account-wrapper .pack-end, c-account-wrapper > .sidebar > .column a .pack-end, .buy-button .pack-end, .buy-save-find-buttons.horizontal .pack-end, .save-find-buttons:not(.vertical) .pack-end, .hbox .pack-end {
  align-items: flex-end;
}
c-box[pack=center], c-vbox[pack=center], c-bookpicker[pack=center], c-carousel[pack=center], c-book-carousel[pack=center], c-carousel-slider[pack=center], c-bookguide[pack=center], c-contact-signup:not(.horizontal) form[pack=center], c-tabbed[pack=center], [pack=center].bookmark-list, c-filterguide[pack=center], c-auth form[pack=center], c-infobox.auth-dialog form[pack=center], [pack=center].dropdown-menu, c-wrapper[pack=center], c-sidebar[pack=center], c-rangeslider[pack=center], c-infobox[pack=center], c-filtergroup[pack=center], c-checklist[pack=center], .bookdetails .mid-section c-metafields[pack=center], c-booklisting[pack=center], [pack=center].preset-centered-dialog, .preset-centered-dialog > form[pack=center], .recommended-books .shortcut-section [pack=center].shortcut, c-account-wrapper .page-account form[pack=center], c-account-wrapper [pack=center].page-subscription, c-account-wrapper .page-settings form[pack=center], [pack=center].buy-save-find-buttons:not(.horizontal), [pack=center].save-find-buttons.vertical, c-contact-signup[pack=center], c-auth[pack=center], c-contact-signup > form[pack=center], c-infobox > form[pack=center], [pack=center].vbox, [pack=center].book-title, c-hbox[pack=center], c-contact-signup.horizontal form[pack=center], c-tabs[pack=center], c-bookmark-listing[pack=center], c-filterguide .filter-box .search-wrapper [pack=center].search-form, c-filterguide .filter-box .search-wrapper .search-form [pack=center].query-picker, c-nav nav[pack=center], c-auth [pack=center].or, c-infobox.auth-dialog [pack=center].or, c-bookbar[pack=center], c-switch[pack=center], c-pagination[pack=center], c-search[pack=center], c-booksort[pack=center], #plans c-plan-picker [pack=center].plans, c-account-wrapper[pack=center], c-account-wrapper > .sidebar > .column a[pack=center], [pack=center].buy-button, [pack=center].buy-save-find-buttons.horizontal, [pack=center].save-find-buttons:not(.vertical), [pack=center].hbox, c-box .pack-center, c-vbox .pack-center, c-bookpicker .pack-center, c-carousel .pack-center, c-book-carousel .pack-center, c-carousel-slider .pack-center, c-bookguide .pack-center, c-contact-signup:not(.horizontal) form .pack-center, c-tabbed .pack-center, .bookmark-list .pack-center, c-filterguide .pack-center, c-auth form .pack-center, c-infobox.auth-dialog form .pack-center, .dropdown-menu .pack-center, c-wrapper .pack-center, c-sidebar .pack-center, c-rangeslider .pack-center, c-infobox .pack-center, c-filtergroup .pack-center, c-checklist .pack-center, .bookdetails .mid-section c-metafields .pack-center, c-booklisting .pack-center, .preset-centered-dialog .pack-center, .preset-centered-dialog > form .pack-center, .recommended-books .shortcut-section .shortcut .pack-center, c-account-wrapper .page-account form .pack-center, c-account-wrapper .page-subscription .pack-center, c-account-wrapper .page-settings form .pack-center, .buy-save-find-buttons:not(.horizontal) .pack-center, .save-find-buttons.vertical .pack-center, c-contact-signup .pack-center, c-auth .pack-center, c-infobox.auth-dialog .pack-center, c-contact-signup > form .pack-center, c-auth > form .pack-center, c-infobox.auth-dialog > form .pack-center, c-infobox > form .pack-center, .vbox .pack-center, .book-title .pack-center, c-hbox .pack-center, c-contact-signup.horizontal form .pack-center, c-tabs .pack-center, c-bookmark-listing .pack-center, c-filterguide .filter-box .search-wrapper .search-form .pack-center, c-filterguide .filter-box .search-wrapper .search-form .query-picker .pack-center, c-nav nav .pack-center, c-auth .or .pack-center, c-infobox.auth-dialog .or .pack-center, c-bookbar .pack-center, c-switch .pack-center, c-pagination .pack-center, c-search .pack-center, c-booksort .pack-center, #plans c-plan-picker .plans .pack-center, c-account-wrapper .pack-center, c-account-wrapper > .sidebar > .column a .pack-center, .buy-button .pack-center, .buy-save-find-buttons.horizontal .pack-center, .save-find-buttons:not(.vertical) .pack-center, .hbox .pack-center {
  align-items: center;
}
c-box[pack=stretch], c-vbox[pack=stretch], c-bookpicker[pack=stretch], c-carousel[pack=stretch], c-book-carousel[pack=stretch], c-carousel-slider[pack=stretch], c-bookguide[pack=stretch], c-contact-signup:not(.horizontal) form[pack=stretch], c-tabbed[pack=stretch], [pack=stretch].bookmark-list, c-filterguide[pack=stretch], c-auth form[pack=stretch], c-infobox.auth-dialog form[pack=stretch], [pack=stretch].dropdown-menu, c-wrapper[pack=stretch], c-sidebar[pack=stretch], c-rangeslider[pack=stretch], c-infobox[pack=stretch], c-filtergroup[pack=stretch], c-checklist[pack=stretch], .bookdetails .mid-section c-metafields[pack=stretch], c-booklisting[pack=stretch], [pack=stretch].preset-centered-dialog, .preset-centered-dialog > form[pack=stretch], .recommended-books .shortcut-section [pack=stretch].shortcut, c-account-wrapper .page-account form[pack=stretch], c-account-wrapper [pack=stretch].page-subscription, c-account-wrapper .page-settings form[pack=stretch], [pack=stretch].buy-save-find-buttons:not(.horizontal), [pack=stretch].save-find-buttons.vertical, c-contact-signup[pack=stretch], c-auth[pack=stretch], c-contact-signup > form[pack=stretch], c-infobox > form[pack=stretch], [pack=stretch].vbox, [pack=stretch].book-title, c-hbox[pack=stretch], c-contact-signup.horizontal form[pack=stretch], c-tabs[pack=stretch], c-bookmark-listing[pack=stretch], c-filterguide .filter-box .search-wrapper [pack=stretch].search-form, c-filterguide .filter-box .search-wrapper .search-form [pack=stretch].query-picker, c-nav nav[pack=stretch], c-auth [pack=stretch].or, c-infobox.auth-dialog [pack=stretch].or, c-bookbar[pack=stretch], c-switch[pack=stretch], c-pagination[pack=stretch], c-search[pack=stretch], c-booksort[pack=stretch], #plans c-plan-picker [pack=stretch].plans, c-account-wrapper[pack=stretch], c-account-wrapper > .sidebar > .column a[pack=stretch], [pack=stretch].buy-button, [pack=stretch].buy-save-find-buttons.horizontal, [pack=stretch].save-find-buttons:not(.vertical), [pack=stretch].hbox, c-box .pack-stretch, c-vbox .pack-stretch, c-bookpicker .pack-stretch, c-carousel .pack-stretch, c-book-carousel .pack-stretch, c-carousel-slider .pack-stretch, c-bookguide .pack-stretch, c-contact-signup:not(.horizontal) form .pack-stretch, c-tabbed .pack-stretch, .bookmark-list .pack-stretch, c-filterguide .pack-stretch, c-auth form .pack-stretch, c-infobox.auth-dialog form .pack-stretch, .dropdown-menu .pack-stretch, c-wrapper .pack-stretch, c-sidebar .pack-stretch, c-rangeslider .pack-stretch, c-infobox .pack-stretch, c-filtergroup .pack-stretch, c-checklist .pack-stretch, .bookdetails .mid-section c-metafields .pack-stretch, c-booklisting .pack-stretch, .preset-centered-dialog .pack-stretch, .preset-centered-dialog > form .pack-stretch, .recommended-books .shortcut-section .shortcut .pack-stretch, c-account-wrapper .page-account form .pack-stretch, c-account-wrapper .page-subscription .pack-stretch, c-account-wrapper .page-settings form .pack-stretch, .buy-save-find-buttons:not(.horizontal) .pack-stretch, .save-find-buttons.vertical .pack-stretch, c-contact-signup .pack-stretch, c-auth .pack-stretch, c-infobox.auth-dialog .pack-stretch, c-contact-signup > form .pack-stretch, c-auth > form .pack-stretch, c-infobox.auth-dialog > form .pack-stretch, c-infobox > form .pack-stretch, .vbox .pack-stretch, .book-title .pack-stretch, c-hbox .pack-stretch, c-contact-signup.horizontal form .pack-stretch, c-tabs .pack-stretch, c-bookmark-listing .pack-stretch, c-filterguide .filter-box .search-wrapper .search-form .pack-stretch, c-filterguide .filter-box .search-wrapper .search-form .query-picker .pack-stretch, c-nav nav .pack-stretch, c-auth .or .pack-stretch, c-infobox.auth-dialog .or .pack-stretch, c-bookbar .pack-stretch, c-switch .pack-stretch, c-pagination .pack-stretch, c-search .pack-stretch, c-booksort .pack-stretch, #plans c-plan-picker .plans .pack-stretch, c-account-wrapper .pack-stretch, c-account-wrapper > .sidebar > .column a .pack-stretch, .buy-button .pack-stretch, .buy-save-find-buttons.horizontal .pack-stretch, .save-find-buttons:not(.vertical) .pack-stretch, .hbox .pack-stretch {
  align-items: stretch;
}
c-box[pack=space-between], c-vbox[pack=space-between], c-bookpicker[pack=space-between], c-carousel[pack=space-between], c-book-carousel[pack=space-between], c-carousel-slider[pack=space-between], c-bookguide[pack=space-between], c-contact-signup:not(.horizontal) form[pack=space-between], c-tabbed[pack=space-between], [pack=space-between].bookmark-list, c-filterguide[pack=space-between], c-auth form[pack=space-between], c-infobox.auth-dialog form[pack=space-between], [pack=space-between].dropdown-menu, c-wrapper[pack=space-between], c-sidebar[pack=space-between], c-rangeslider[pack=space-between], c-infobox[pack=space-between], c-filtergroup[pack=space-between], c-checklist[pack=space-between], .bookdetails .mid-section c-metafields[pack=space-between], c-booklisting[pack=space-between], [pack=space-between].preset-centered-dialog, .preset-centered-dialog > form[pack=space-between], .recommended-books .shortcut-section [pack=space-between].shortcut, c-account-wrapper .page-account form[pack=space-between], c-account-wrapper [pack=space-between].page-subscription, c-account-wrapper .page-settings form[pack=space-between], [pack=space-between].buy-save-find-buttons:not(.horizontal), [pack=space-between].save-find-buttons.vertical, c-contact-signup[pack=space-between], c-auth[pack=space-between], c-contact-signup > form[pack=space-between], c-infobox > form[pack=space-between], [pack=space-between].vbox, [pack=space-between].book-title, c-hbox[pack=space-between], c-contact-signup.horizontal form[pack=space-between], c-tabs[pack=space-between], c-bookmark-listing[pack=space-between], c-filterguide .filter-box .search-wrapper [pack=space-between].search-form, c-filterguide .filter-box .search-wrapper .search-form [pack=space-between].query-picker, c-nav nav[pack=space-between], c-auth [pack=space-between].or, c-infobox.auth-dialog [pack=space-between].or, c-bookbar[pack=space-between], c-switch[pack=space-between], c-pagination[pack=space-between], c-search[pack=space-between], c-booksort[pack=space-between], #plans c-plan-picker [pack=space-between].plans, c-account-wrapper[pack=space-between], c-account-wrapper > .sidebar > .column a[pack=space-between], [pack=space-between].buy-button, [pack=space-between].buy-save-find-buttons.horizontal, [pack=space-between].save-find-buttons:not(.vertical), [pack=space-between].hbox, c-box .pack-space-between, c-vbox .pack-space-between, c-bookpicker .pack-space-between, c-carousel .pack-space-between, c-book-carousel .pack-space-between, c-carousel-slider .pack-space-between, c-bookguide .pack-space-between, c-contact-signup:not(.horizontal) form .pack-space-between, c-tabbed .pack-space-between, .bookmark-list .pack-space-between, c-filterguide .pack-space-between, c-auth form .pack-space-between, c-infobox.auth-dialog form .pack-space-between, .dropdown-menu .pack-space-between, c-wrapper .pack-space-between, c-sidebar .pack-space-between, c-rangeslider .pack-space-between, c-infobox .pack-space-between, c-filtergroup .pack-space-between, c-checklist .pack-space-between, .bookdetails .mid-section c-metafields .pack-space-between, c-booklisting .pack-space-between, .preset-centered-dialog .pack-space-between, .preset-centered-dialog > form .pack-space-between, .recommended-books .shortcut-section .shortcut .pack-space-between, c-account-wrapper .page-account form .pack-space-between, c-account-wrapper .page-subscription .pack-space-between, c-account-wrapper .page-settings form .pack-space-between, .buy-save-find-buttons:not(.horizontal) .pack-space-between, .save-find-buttons.vertical .pack-space-between, c-contact-signup .pack-space-between, c-auth .pack-space-between, c-infobox.auth-dialog .pack-space-between, c-contact-signup > form .pack-space-between, c-auth > form .pack-space-between, c-infobox.auth-dialog > form .pack-space-between, c-infobox > form .pack-space-between, .vbox .pack-space-between, .book-title .pack-space-between, c-hbox .pack-space-between, c-contact-signup.horizontal form .pack-space-between, c-tabs .pack-space-between, c-bookmark-listing .pack-space-between, c-filterguide .filter-box .search-wrapper .search-form .pack-space-between, c-filterguide .filter-box .search-wrapper .search-form .query-picker .pack-space-between, c-nav nav .pack-space-between, c-auth .or .pack-space-between, c-infobox.auth-dialog .or .pack-space-between, c-bookbar .pack-space-between, c-switch .pack-space-between, c-pagination .pack-space-between, c-search .pack-space-between, c-booksort .pack-space-between, #plans c-plan-picker .plans .pack-space-between, c-account-wrapper .pack-space-between, c-account-wrapper > .sidebar > .column a .pack-space-between, .buy-button .pack-space-between, .buy-save-find-buttons.horizontal .pack-space-between, .save-find-buttons:not(.vertical) .pack-space-between, .hbox .pack-space-between {
  justify-content: space-between;
}
c-box[pack=space-around], c-vbox[pack=space-around], c-bookpicker[pack=space-around], c-carousel[pack=space-around], c-book-carousel[pack=space-around], c-carousel-slider[pack=space-around], c-bookguide[pack=space-around], c-contact-signup:not(.horizontal) form[pack=space-around], c-tabbed[pack=space-around], [pack=space-around].bookmark-list, c-filterguide[pack=space-around], c-auth form[pack=space-around], c-infobox.auth-dialog form[pack=space-around], [pack=space-around].dropdown-menu, c-wrapper[pack=space-around], c-sidebar[pack=space-around], c-rangeslider[pack=space-around], c-infobox[pack=space-around], c-filtergroup[pack=space-around], c-checklist[pack=space-around], .bookdetails .mid-section c-metafields[pack=space-around], c-booklisting[pack=space-around], [pack=space-around].preset-centered-dialog, .preset-centered-dialog > form[pack=space-around], .recommended-books .shortcut-section [pack=space-around].shortcut, c-account-wrapper .page-account form[pack=space-around], c-account-wrapper [pack=space-around].page-subscription, c-account-wrapper .page-settings form[pack=space-around], [pack=space-around].buy-save-find-buttons:not(.horizontal), [pack=space-around].save-find-buttons.vertical, c-contact-signup[pack=space-around], c-auth[pack=space-around], c-contact-signup > form[pack=space-around], c-infobox > form[pack=space-around], [pack=space-around].vbox, [pack=space-around].book-title, c-hbox[pack=space-around], c-contact-signup.horizontal form[pack=space-around], c-tabs[pack=space-around], c-bookmark-listing[pack=space-around], c-filterguide .filter-box .search-wrapper [pack=space-around].search-form, c-filterguide .filter-box .search-wrapper .search-form [pack=space-around].query-picker, c-nav nav[pack=space-around], c-auth [pack=space-around].or, c-infobox.auth-dialog [pack=space-around].or, c-bookbar[pack=space-around], c-switch[pack=space-around], c-pagination[pack=space-around], c-search[pack=space-around], c-booksort[pack=space-around], #plans c-plan-picker [pack=space-around].plans, c-account-wrapper[pack=space-around], c-account-wrapper > .sidebar > .column a[pack=space-around], [pack=space-around].buy-button, [pack=space-around].buy-save-find-buttons.horizontal, [pack=space-around].save-find-buttons:not(.vertical), [pack=space-around].hbox, c-box .pack-space-around, c-vbox .pack-space-around, c-bookpicker .pack-space-around, c-carousel .pack-space-around, c-book-carousel .pack-space-around, c-carousel-slider .pack-space-around, c-bookguide .pack-space-around, c-contact-signup:not(.horizontal) form .pack-space-around, c-tabbed .pack-space-around, .bookmark-list .pack-space-around, c-filterguide .pack-space-around, c-auth form .pack-space-around, c-infobox.auth-dialog form .pack-space-around, .dropdown-menu .pack-space-around, c-wrapper .pack-space-around, c-sidebar .pack-space-around, c-rangeslider .pack-space-around, c-infobox .pack-space-around, c-filtergroup .pack-space-around, c-checklist .pack-space-around, .bookdetails .mid-section c-metafields .pack-space-around, c-booklisting .pack-space-around, .preset-centered-dialog .pack-space-around, .preset-centered-dialog > form .pack-space-around, .recommended-books .shortcut-section .shortcut .pack-space-around, c-account-wrapper .page-account form .pack-space-around, c-account-wrapper .page-subscription .pack-space-around, c-account-wrapper .page-settings form .pack-space-around, .buy-save-find-buttons:not(.horizontal) .pack-space-around, .save-find-buttons.vertical .pack-space-around, c-contact-signup .pack-space-around, c-auth .pack-space-around, c-infobox.auth-dialog .pack-space-around, c-contact-signup > form .pack-space-around, c-auth > form .pack-space-around, c-infobox.auth-dialog > form .pack-space-around, c-infobox > form .pack-space-around, .vbox .pack-space-around, .book-title .pack-space-around, c-hbox .pack-space-around, c-contact-signup.horizontal form .pack-space-around, c-tabs .pack-space-around, c-bookmark-listing .pack-space-around, c-filterguide .filter-box .search-wrapper .search-form .pack-space-around, c-filterguide .filter-box .search-wrapper .search-form .query-picker .pack-space-around, c-nav nav .pack-space-around, c-auth .or .pack-space-around, c-infobox.auth-dialog .or .pack-space-around, c-bookbar .pack-space-around, c-switch .pack-space-around, c-pagination .pack-space-around, c-search .pack-space-around, c-booksort .pack-space-around, #plans c-plan-picker .plans .pack-space-around, c-account-wrapper .pack-space-around, c-account-wrapper > .sidebar > .column a .pack-space-around, .buy-button .pack-space-around, .buy-save-find-buttons.horizontal .pack-space-around, .save-find-buttons:not(.vertical) .pack-space-around, .hbox .pack-space-around {
  justify-content: space-around;
}
c-box[pack=space-evenly], c-vbox[pack=space-evenly], c-bookpicker[pack=space-evenly], c-carousel[pack=space-evenly], c-book-carousel[pack=space-evenly], c-carousel-slider[pack=space-evenly], c-bookguide[pack=space-evenly], c-contact-signup:not(.horizontal) form[pack=space-evenly], c-tabbed[pack=space-evenly], [pack=space-evenly].bookmark-list, c-filterguide[pack=space-evenly], c-auth form[pack=space-evenly], c-infobox.auth-dialog form[pack=space-evenly], [pack=space-evenly].dropdown-menu, c-wrapper[pack=space-evenly], c-sidebar[pack=space-evenly], c-rangeslider[pack=space-evenly], c-infobox[pack=space-evenly], c-filtergroup[pack=space-evenly], c-checklist[pack=space-evenly], .bookdetails .mid-section c-metafields[pack=space-evenly], c-booklisting[pack=space-evenly], [pack=space-evenly].preset-centered-dialog, .preset-centered-dialog > form[pack=space-evenly], .recommended-books .shortcut-section [pack=space-evenly].shortcut, c-account-wrapper .page-account form[pack=space-evenly], c-account-wrapper [pack=space-evenly].page-subscription, c-account-wrapper .page-settings form[pack=space-evenly], [pack=space-evenly].buy-save-find-buttons:not(.horizontal), [pack=space-evenly].save-find-buttons.vertical, c-contact-signup[pack=space-evenly], c-auth[pack=space-evenly], c-contact-signup > form[pack=space-evenly], c-infobox > form[pack=space-evenly], [pack=space-evenly].vbox, [pack=space-evenly].book-title, c-hbox[pack=space-evenly], c-contact-signup.horizontal form[pack=space-evenly], c-tabs[pack=space-evenly], c-bookmark-listing[pack=space-evenly], c-filterguide .filter-box .search-wrapper [pack=space-evenly].search-form, c-filterguide .filter-box .search-wrapper .search-form [pack=space-evenly].query-picker, c-nav nav[pack=space-evenly], c-auth [pack=space-evenly].or, c-infobox.auth-dialog [pack=space-evenly].or, c-bookbar[pack=space-evenly], c-switch[pack=space-evenly], c-pagination[pack=space-evenly], c-search[pack=space-evenly], c-booksort[pack=space-evenly], #plans c-plan-picker [pack=space-evenly].plans, c-account-wrapper[pack=space-evenly], c-account-wrapper > .sidebar > .column a[pack=space-evenly], [pack=space-evenly].buy-button, [pack=space-evenly].buy-save-find-buttons.horizontal, [pack=space-evenly].save-find-buttons:not(.vertical), [pack=space-evenly].hbox, c-box .pack-space-evenly, c-vbox .pack-space-evenly, c-bookpicker .pack-space-evenly, c-carousel .pack-space-evenly, c-book-carousel .pack-space-evenly, c-carousel-slider .pack-space-evenly, c-bookguide .pack-space-evenly, c-contact-signup:not(.horizontal) form .pack-space-evenly, c-tabbed .pack-space-evenly, .bookmark-list .pack-space-evenly, c-filterguide .pack-space-evenly, c-auth form .pack-space-evenly, c-infobox.auth-dialog form .pack-space-evenly, .dropdown-menu .pack-space-evenly, c-wrapper .pack-space-evenly, c-sidebar .pack-space-evenly, c-rangeslider .pack-space-evenly, c-infobox .pack-space-evenly, c-filtergroup .pack-space-evenly, c-checklist .pack-space-evenly, .bookdetails .mid-section c-metafields .pack-space-evenly, c-booklisting .pack-space-evenly, .preset-centered-dialog .pack-space-evenly, .preset-centered-dialog > form .pack-space-evenly, .recommended-books .shortcut-section .shortcut .pack-space-evenly, c-account-wrapper .page-account form .pack-space-evenly, c-account-wrapper .page-subscription .pack-space-evenly, c-account-wrapper .page-settings form .pack-space-evenly, .buy-save-find-buttons:not(.horizontal) .pack-space-evenly, .save-find-buttons.vertical .pack-space-evenly, c-contact-signup .pack-space-evenly, c-auth .pack-space-evenly, c-infobox.auth-dialog .pack-space-evenly, c-contact-signup > form .pack-space-evenly, c-auth > form .pack-space-evenly, c-infobox.auth-dialog > form .pack-space-evenly, c-infobox > form .pack-space-evenly, .vbox .pack-space-evenly, .book-title .pack-space-evenly, c-hbox .pack-space-evenly, c-contact-signup.horizontal form .pack-space-evenly, c-tabs .pack-space-evenly, c-bookmark-listing .pack-space-evenly, c-filterguide .filter-box .search-wrapper .search-form .pack-space-evenly, c-filterguide .filter-box .search-wrapper .search-form .query-picker .pack-space-evenly, c-nav nav .pack-space-evenly, c-auth .or .pack-space-evenly, c-infobox.auth-dialog .or .pack-space-evenly, c-bookbar .pack-space-evenly, c-switch .pack-space-evenly, c-pagination .pack-space-evenly, c-search .pack-space-evenly, c-booksort .pack-space-evenly, #plans c-plan-picker .plans .pack-space-evenly, c-account-wrapper .pack-space-evenly, c-account-wrapper > .sidebar > .column a .pack-space-evenly, .buy-button .pack-space-evenly, .buy-save-find-buttons.horizontal .pack-space-evenly, .save-find-buttons:not(.vertical) .pack-space-evenly, .hbox .pack-space-evenly {
  justify-content: space-evenly;
}

c-hbox, c-contact-signup.horizontal form, c-tabs, c-bookmark-listing, c-filterguide .filter-box .search-wrapper .search-form, c-filterguide .filter-box .search-wrapper .search-form .query-picker, c-nav nav, c-auth .or, c-infobox.auth-dialog .or, c-bookbar, c-switch, c-pagination, c-search, c-booksort, #plans c-plan-picker .plans, c-account-wrapper, c-account-wrapper > .sidebar > .column a, .buy-button, .buy-save-find-buttons.horizontal, .save-find-buttons:not(.vertical), .hbox {
  flex-direction: row;
}
c-hbox[dir=reverse], c-contact-signup.horizontal form[dir=reverse], c-tabs[dir=reverse], c-bookmark-listing[dir=reverse], c-filterguide .filter-box .search-wrapper [dir=reverse].search-form, c-filterguide .filter-box .search-wrapper .search-form [dir=reverse].query-picker, c-nav nav[dir=reverse], c-auth [dir=reverse].or, c-infobox.auth-dialog [dir=reverse].or, c-bookbar[dir=reverse], c-switch[dir=reverse], c-pagination[dir=reverse], c-search[dir=reverse], c-booksort[dir=reverse], #plans c-plan-picker [dir=reverse].plans, c-account-wrapper[dir=reverse], c-account-wrapper > .sidebar > .column a[dir=reverse], [dir=reverse].buy-button, [dir=reverse].buy-save-find-buttons.horizontal, [dir=reverse].save-find-buttons:not(.vertical), .hbox[dir=reverse] {
  flex-direction: row-reverse;
}
c-hbox > *[override-width], c-contact-signup.horizontal form > *[override-width], c-tabs > *[override-width], c-bookmark-listing > *[override-width], c-filterguide .filter-box .search-wrapper .search-form > *[override-width], c-filterguide .filter-box .search-wrapper .search-form .query-picker > *[override-width], c-nav nav > *[override-width], c-auth .or > *[override-width], c-infobox.auth-dialog .or > *[override-width], c-bookbar > *[override-width], c-switch > *[override-width], c-pagination > *[override-width], c-search > *[override-width], c-booksort > *[override-width], #plans c-plan-picker .plans > *[override-width], c-account-wrapper > *[override-width], c-account-wrapper > .sidebar > .column a > *[override-width], .buy-button > *[override-width], .buy-save-find-buttons.horizontal > *[override-width], .save-find-buttons:not(.vertical) > *[override-width], .hbox > *[override-width] {
  flex: unset !important;
}

c-vbox, c-bookpicker, c-carousel, c-book-carousel, c-carousel-slider, c-bookguide, c-contact-signup:not(.horizontal) form, c-tabbed, .bookmark-list, c-filterguide, c-auth form, c-infobox.auth-dialog form, .dropdown-menu, c-wrapper, c-sidebar, c-rangeslider, c-infobox, c-filtergroup, c-checklist, .bookdetails .mid-section c-metafields, c-booklisting, .preset-centered-dialog, .preset-centered-dialog > form, .recommended-books .shortcut-section .shortcut, c-account-wrapper .page-account form, c-account-wrapper .page-subscription, c-account-wrapper .page-settings form, .buy-save-find-buttons:not(.horizontal), .save-find-buttons.vertical, c-contact-signup, c-auth, c-infobox.auth-dialog, c-contact-signup > form, c-auth > form, c-infobox > form, .vbox, .book-title {
  flex-direction: column;
}
c-vbox[dir=reverse], c-bookpicker[dir=reverse], c-carousel[dir=reverse], c-book-carousel[dir=reverse], c-carousel-slider[dir=reverse], c-bookguide[dir=reverse], c-contact-signup:not(.horizontal) form[dir=reverse], c-tabbed[dir=reverse], [dir=reverse].bookmark-list, c-filterguide[dir=reverse], c-auth form[dir=reverse], c-infobox.auth-dialog form[dir=reverse], [dir=reverse].dropdown-menu, c-wrapper[dir=reverse], c-sidebar[dir=reverse], c-rangeslider[dir=reverse], c-infobox[dir=reverse], c-filtergroup[dir=reverse], c-checklist[dir=reverse], .bookdetails .mid-section c-metafields[dir=reverse], c-booklisting[dir=reverse], [dir=reverse].preset-centered-dialog, .preset-centered-dialog > form[dir=reverse], .recommended-books .shortcut-section [dir=reverse].shortcut, c-account-wrapper .page-account form[dir=reverse], c-account-wrapper [dir=reverse].page-subscription, c-account-wrapper .page-settings form[dir=reverse], [dir=reverse].buy-save-find-buttons:not(.horizontal), [dir=reverse].save-find-buttons.vertical, c-contact-signup[dir=reverse], c-auth[dir=reverse], c-contact-signup > form[dir=reverse], c-infobox > form[dir=reverse], .vbox[dir=reverse], [dir=reverse].book-title {
  flex-direction: column-reverse;
}
c-vbox > *[override-height], c-bookpicker > *[override-height], c-carousel > *[override-height], c-book-carousel > *[override-height], c-carousel-slider > *[override-height], c-bookguide > *[override-height], c-contact-signup:not(.horizontal) form > *[override-height], c-tabbed > *[override-height], .bookmark-list > *[override-height], c-filterguide > *[override-height], c-auth form > *[override-height], c-infobox.auth-dialog form > *[override-height], .dropdown-menu > *[override-height], c-wrapper > *[override-height], c-sidebar > *[override-height], c-rangeslider > *[override-height], c-infobox > *[override-height], c-filtergroup > *[override-height], c-checklist > *[override-height], .bookdetails .mid-section c-metafields > *[override-height], c-booklisting > *[override-height], .preset-centered-dialog > *[override-height], .preset-centered-dialog > form > *[override-height], .recommended-books .shortcut-section .shortcut > *[override-height], c-account-wrapper .page-account form > *[override-height], c-account-wrapper .page-subscription > *[override-height], c-account-wrapper .page-settings form > *[override-height], .buy-save-find-buttons:not(.horizontal) > *[override-height], .save-find-buttons.vertical > *[override-height], c-contact-signup > *[override-height], c-auth > *[override-height], c-contact-signup > form > *[override-height], c-infobox > form > *[override-height], .vbox > *[override-height], .book-title > *[override-height] {
  flex: unset !important;
}

.colors-primary, c-filterguide .filter-box .group:hover {
  color: #1f1f2f;
  background-color: #f9f8f5;
}

.colors-secondary {
  color: #1f1f2f;
  background-color: #ffffff;
}

.colors-tertiary {
  color: #1f1f2f;
  background-color: #f4f3ee;
}

.colors-quaternary {
  color: #1f1f2f;
  background-color: #d6d3cc;
}

.colors-dark {
  color: #ffffff;
  background-color: #1f1f2f;
}

.colors-accent {
  color: #FFF;
  background-color: #54bfab;
}

.faded {
  color: #666666;
}

.faded-extra {
  color: #959592;
}

.radius-xs {
  border-radius: 2px;
}

.radius-sm {
  border-radius: 4px;
}

.radius-md {
  border-radius: 8px;
}

.radius-lg {
  border-radius: 10px;
}

.radius-xl {
  border-radius: 15px;
}

.radius-xxl {
  border-radius: 20px;
}

.radius-xxxl {
  border-radius: 25px;
}

.shadow-xs {
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.15);
}

.shadow-sm, .dropdown-menu {
  box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.15);
}

.shadow-md, .recommended-books .side .chart-box .inner .center, .filter-modal, .markdown img, .preset-container, .match-score-dropdown, .preset-container-lg, .preset-container-xl, c-login-prompt .inner, .recommended-books .primary-books, .no-recommendations .first-section, .no-recommendations .second-section, c-account-wrapper > .sidebar, .preset-form-modal, .preset-centered-dialog, c-contact-signup, c-auth, c-infobox.auth-dialog, c-infobox, .preset-container-xxl {
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
}

.shadow-lg, c-bookmark-listing, c-booklisting {
  box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.15);
}

.shadow-xl, c-plan-picker .plan, c-filterguide .filter-box {
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.15);
}

.shadow-xxl {
  box-shadow: 0 0 25px 0 rgba(0, 0, 0, 0.15);
}

.shadow-xxxl {
  box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.15);
}

.padding-xs {
  padding: 2px;
}

.padding-sm {
  padding: 5px;
}

.padding-md {
  padding: 10px;
}

.padding-lg {
  padding: 20px;
}

.padding-xl {
  padding: 35px;
}

.padding-xxl {
  padding: 50px;
}

.padding-xxxl {
  padding: 75px;
}

.margin-xs {
  margin: 2px;
}

.margin-sm {
  margin: 5px;
}

.margin-md {
  margin: 10px;
}

.margin-lg {
  margin: 20px;
}

.margin-xl {
  margin: 35px;
}

.margin-xxl {
  margin: 50px;
}

.margin-xxxl {
  margin: 75px;
}

.gap-xs {
  gap: 2px;
}

.gap-sm {
  gap: 5px;
}

.gap-md {
  gap: 10px;
}

.gap-lg {
  gap: 20px;
}

.gap-xl {
  gap: 35px;
}

.gap-xxl {
  gap: 50px;
}

.gap-xxxl {
  gap: 75px;
}

.font-size-xs {
  font-size: 12px;
}

.font-size-sm {
  font-size: 14px;
}

.font-size-md {
  font-size: 16px;
}

.font-size-lg {
  font-size: 18px;
}

.font-size-xl {
  font-size: 20px;
}

.font-size-xxl {
  font-size: 24px;
}

.font-size-xxxl {
  font-size: 32px;
}

.preset-container, .match-score-dropdown, .preset-container-lg, .preset-container-xl, c-login-prompt .inner, .recommended-books .primary-books, .no-recommendations .first-section, .no-recommendations .second-section, c-account-wrapper > .sidebar, .preset-form-modal, .preset-centered-dialog, c-contact-signup, c-auth, c-infobox.auth-dialog, c-infobox, .preset-container-xxl {
  box-sizing: border-box;
  padding: 10px;
  border-radius: 4px;
  background-color: #ffffff;
  gap: 10px;
}

.preset-container-lg, .preset-container-xl, c-login-prompt .inner, .recommended-books .primary-books, .no-recommendations .first-section, .no-recommendations .second-section, c-account-wrapper > .sidebar, .preset-form-modal, .preset-centered-dialog, c-contact-signup, c-auth, c-infobox.auth-dialog, c-infobox, .preset-container-xxl {
  padding: 35px;
  border-radius: 10px;
}

.preset-container-xl, c-login-prompt .inner, .recommended-books .primary-books, .no-recommendations .first-section, .no-recommendations .second-section, c-account-wrapper > .sidebar, .preset-form-modal, .preset-centered-dialog, c-contact-signup, c-auth, c-infobox.auth-dialog, c-infobox, .preset-container-xxl {
  padding: 35px;
  border-radius: 15px;
}

.preset-container-xxl {
  padding: 50px;
  border-radius: 20px;
}

.preset-centered-dialog, c-contact-signup, c-auth, c-infobox.auth-dialog, c-infobox {
  text-align: center;
  align-items: stretch;
  align-self: center;
  justify-content: center;
  gap: 20px;
  max-width: 500px;
  padding: 50px;
  box-sizing: border-box;
  width: 100%;
  margin: 35px 0;
}
.preset-centered-dialog h1, c-contact-signup h1, c-auth h1, c-infobox.auth-dialog h1, c-infobox h1 {
  font-size: 24px;
  font-weight: 600;
}
.preset-centered-dialog > form, c-contact-signup > form, c-auth > form, c-infobox.auth-dialog > form, c-infobox > form {
  gap: 10px;
}

.text-muted {
  color: #666666;
}

.text-centered {
  text-align: center;
}

.hide {
  display: none;
}

.status-success, .color-positive {
  color: #54bfab;
}

.status-error, .color-negative {
  color: #FF2D55;
}

.hspace {
  display: inline-block;
}
.hspace.xs {
  width: 2px;
}
.hspace.sm {
  width: 5px;
}
.hspace.md {
  width: 10px;
}
.hspace.lg {
  width: 20px;
}
.hspace.xl {
  width: 35px;
}
.hspace.xxl {
  width: 50px;
}
.hspace.xxxl {
  width: 75px;
}
.hspace.flex {
  flex: 1;
}

.vspace {
  display: block;
}
.vspace.xs {
  height: 2px;
}
.vspace.sm {
  height: 5px;
}
.vspace.md {
  height: 10px;
}
.vspace.lg {
  height: 20px;
}
.vspace.xl {
  height: 35px;
}
.vspace.xxl {
  height: 50px;
}
.vspace.xxxl {
  height: 75px;
}
.vspace.flex {
  flex: 1;
}

.preset-form-rows {
  align-self: stretch;
  gap: 10px;
}
.preset-form-rows .row {
  gap: 10px;
  align-items: center;
  flex: 1;
}
.preset-form-rows .row > label {
  text-align: right;
  width: 25%;
  box-sizing: border-box;
}
.preset-form-rows .row > *:not(label) {
  width: 50%;
}

.markdown {
  display: block;
  max-width: 960px !important;
}
@media (max-width: 719px) {
  .markdown img.float-right, .markdown img.float-left {
    display: block;
    float: none;
    margin: 10px auto;
  }
}
.markdown img.center {
  display: block;
  margin: 10px auto;
}
.markdown hr {
  height: 1px;
  background-color: #d6d3cc;
  border: 0;
  margin: 10px 0;
}
.markdown img {
  border-radius: 8px;
  margin: 10px;
}
.markdown strong, .markdown h1, .markdown h2, .markdown h3 {
  font-weight: 600;
}
.markdown ul {
  list-style: disc;
  padding-left: 20px;
}
.markdown h1, .markdown h2, .markdown h3, .markdown h4, .markdown h5 {
  margin: 20px 0 10px;
}
.markdown p {
  margin: 10px 0;
}

form.disabled, .container_disabled {
  position: relative;
  opacity: 0.5;
}
form.disabled::after, .container_disabled::after {
  content: "";
  position: absolute;
  z-index: 20;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.spinner, form.disabled::after, .container_disabled::after {
  align-self: center;
  width: 45px;
  aspect-ratio: 0.75;
  background: no-repeat linear-gradient(#54bfab 0 0) 0% 50%, no-repeat linear-gradient(#54bfab 0 0) 50% 50%, no-repeat linear-gradient(#54bfab 0 0) 100% 50%;
  animation: loader 1s infinite linear alternate;
}

@keyframes loader {
  0% {
    background-size: 20% 50%, 20% 50%, 20% 50%;
  }
  20% {
    background-size: 20% 20%, 20% 50%, 20% 50%;
  }
  40% {
    background-size: 20% 100%, 20% 20%, 20% 50%;
  }
  60% {
    background-size: 20% 50%, 20% 100%, 20% 20%;
  }
  80% {
    background-size: 20% 50%, 20% 50%, 20% 100%;
  }
  100% {
    background-size: 20% 50%, 20% 50%, 20% 50%;
  }
}
.align-self-center {
  align-self: center;
}

.align-self-end {
  align-self: flex-end;
}

.align-self-start {
  align-self: flex-start;
}

.mascot-cheer {
  background-image: url("/fe/img/mascot-cheer.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
  width: 212px;
  height: 217px;
}

.row {
  gap: 10px;
  align-items: center;
}

.column {
  gap: 10px;
}

.info-menu {
  background-color: rgba(47, 47, 69, 0.8);
  color: #ffffff;
  border-radius: 8px;
  padding: 10px;
  gap: 10px;
  backdrop-filter: blur(10px);
}

.float-right {
  float: right;
}

.float-left {
  float: left;
}

/* Inputs */
.input-text, c-filterguide .filter-box .search-wrapper .search-form, input[type=text], input[type=email], input[type=password], input[type=search], input[type=number] {
  appearance: none;
  font-size: 16px;
  font-family: "Inter", "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
  background: #ffffff;
  border: 1px solid #d6d3cc;
  border-radius: 4px;
  padding: 5px;
}
.input-text:focus, c-filterguide .filter-box .search-wrapper .search-form:focus, input[type=text]:focus, input[type=email]:focus, input[type=password]:focus, input[type=search]:focus, input[type=number]:focus {
  outline: 1px solid #54bfab;
}

.base-button, .primary-button, .buy-button, .primary-accent-button, button.primary.accent, .button.primary-accent, button.primary-accent, c-findon-button.primary-accent, c-bookmark-button.primary-accent, .button.primary, button.primary, c-findon-button.primary, c-bookmark-button.primary, .button, button, c-findon-button, c-bookmark-button {
  appearance: none;
  border-radius: 4px;
  font-size: 16px;
  font-weight: 500;
  padding: 5px 10px;
  white-space: nowrap;
  transition: color 0.2s ease, border-color 0.2s ease, background-color 0.2s ease;
  user-select: none;
}

.button, button, c-findon-button, c-bookmark-button {
  color: #1f1f2f;
  background: #ffffff;
  border: 1px solid #1f1f2f;
}
.button[disabled], button[disabled], c-findon-button[disabled], c-bookmark-button[disabled] {
  color: #666666;
  cursor: not-allowed;
}
.button:not([disabled]):hover, button:not([disabled]):hover, c-findon-button:not([disabled]):hover, c-bookmark-button:not([disabled]):hover {
  color: #1f1f2f;
  background-color: #f4f3ee;
  border-color: #409283;
  cursor: pointer;
}

.primary-button, .buy-button, .primary-accent-button, button.primary.accent, .button.primary-accent, button.primary-accent, c-findon-button.primary-accent, c-bookmark-button.primary-accent, .button.primary, button.primary, c-findon-button.primary, c-bookmark-button.primary {
  border: 1px solid #1f1f2f;
  background-color: #1f1f2f;
  color: #ffffff;
}
.primary-button:not([disabled]):hover, button.primary:not([disabled]):hover, .buy-button:not([disabled]):hover, .primary-accent-button:not([disabled]):hover, .button.primary-accent:not([disabled]):hover, button.primary-accent:not([disabled]):hover, c-findon-button.primary-accent:not([disabled]):hover, c-bookmark-button.primary-accent:not([disabled]):hover, .button.primary:not([disabled]):hover, c-findon-button.primary:not([disabled]):hover, c-bookmark-button.primary:not([disabled]):hover {
  background-color: #54bfab;
  border-color: #54bfab;
  color: #FFF;
}

.primary-accent-button, button.primary.accent, .button.primary-accent, button.primary-accent, c-findon-button.primary-accent, c-bookmark-button.primary-accent {
  border: 1px solid #54bfab;
  background-color: #54bfab;
  color: #1f1f2f;
}
.primary-accent-button:hover, button.primary.accent:hover, .button.primary-accent:hover, button.primary-accent:hover, c-findon-button.primary-accent:hover, c-bookmark-button.primary-accent:hover {
  background-color: #409283;
  border-color: #409283;
  color: #FFF;
}

a.button {
  text-decoration: none;
  text-align: center;
}

c-bookmark-button {
  display: flex;
  user-select: none;
  padding: 0;
}
c-bookmark-button, c-bookmark-button label {
  cursor: pointer;
}
c-bookmark-button label {
  flex: 1;
}
c-bookmark-button c-dropdown {
  width: 100%;
  box-sizing: border-box;
  padding: 5px 10px;
}
c-bookmark-button c-dropdown .dropdown-toggle {
  padding: 5px;
  gap: 5px;
  align-items: center;
  justify-content: center;
}
c-bookmark-button c-dropdown .dropdown-toggle i {
  text-decoration: none;
}
c-bookmark-button c-dropdown button {
  padding: 0;
  background: transparent;
  border: 0;
}

.buy-button {
  gap: 5px;
  padding: 10px 20px;
  text-decoration: none;
  align-items: center;
  justify-content: center;
  font-size: 18px;
}

.buy-save-find-buttons:not(.horizontal) .buy-button {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.buy-save-find-buttons:not(.horizontal) .save-find-buttons:not(.vertical) > * {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-top: 0;
}
.buy-save-find-buttons:not(.horizontal) .save-find-buttons.vertical > c-bookmark-button {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-top: 0;
}
.buy-save-find-buttons.horizontal {
  gap: 10px;
}

.save-find-buttons > * {
  flex: 1;
}
.save-find-buttons:not(.vertical) > c-bookmark-button {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-right: 0;
}
.save-find-buttons:not(.vertical) > c-findon-button {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.save-find-buttons.vertical > c-bookmark-button {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  border-bottom: 0;
}
.save-find-buttons.vertical > c-findon-button {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.bookmark-save-as {
  margin-top: 10px;
}
.bookmark-save-as a {
  text-decoration: none;
  padding-left: 10px;
}
.bookmark-save-as a i {
  margin-right: 10px;
}
.bookmark-save-as a.selected {
  font-weight: 600;
  color: #409283;
}

c-findon-button {
  display: flex;
  user-select: none;
  padding: 0;
}
c-findon-button, c-findon-button label {
  cursor: pointer;
}
c-findon-button label {
  flex: 1;
}
c-findon-button c-dropdown {
  width: 100%;
  box-sizing: border-box;
  padding: 5px 10px;
}
c-findon-button c-dropdown .dropdown-toggle {
  padding: 5px;
  gap: 5px;
  align-items: center;
  justify-content: center;
}
c-findon-button c-dropdown .dropdown-toggle i {
  text-decoration: none;
}
c-findon-button c-dropdown button {
  padding: 0;
  background: transparent;
  border: 0;
}

.findon-menu {
  margin-top: 10px;
}
.findon-menu a {
  text-decoration: none;
  padding-left: 10px;
}
.findon-menu a i {
  margin-right: 10px;
}

body {
  font-family: "Inter", "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
  font-size: 16px;
  line-height: 1.4;
  background-color: #f9f8f5;
  background-image: url("/fe/img/bg-stars.svg"), url("/fe/img/bg-galaxy.svg"), linear-gradient(to bottom, #ffffff 100px, #f9f8f5 1000px);
  background-size: 100%, 100%, 100%;
  background-repeat: repeat, no-repeat, no-repeat;
  color: #1f1f2f;
  margin: 0 auto 0;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: stretch;
  box-sizing: border-box;
  position: relative;
  scrollbar-width: thin;
  scrollbar-color: #c9c6c0 transparent;
}

body.simple-bg {
  background-image: url("/fe/img/bg-stars.svg"), linear-gradient(to bottom, #ffffff 100px, #f9f8f5 1000px);
  background-size: 100%, 100%;
  background-repeat: repeat, no-repeat;
}

#app {
  flex: 1;
}

strong {
  font-weight: 500;
}

em {
  font-style: italic;
}

a {
  color: #1f1f2f;
  text-decoration: underline;
}
a:hover {
  color: #409283;
}

.gap-small {
  gap: 10px;
}

.flex-children > * {
  flex: 1;
}

h1 {
  font-size: 24px;
}

h2 {
  font-size: 20px;
}

h3 {
  font-size: 18px;
}

h4 {
  font-size: 16px;
  font-weight: 600;
}

h5 {
  font-size: 14px;
  font-weight: 600;
  font-style: italic;
}

c-toggle.hidden .toggler {
  display: none !important;
}

.overflow-hidden .measuring {
  visibility: hidden;
}
.overflow-hidden .hidden {
  display: none;
}

pre {
  border-radius: 8px;
  padding: 10px;
  background: #1f1f2f;
  color: #ffffff;
}

del {
  text-decoration: line-through;
}

hr {
  border: none;
  border-top: 1px solid #eae8e3;
  margin: 10px 0;
}

.book-list-wrapper c-booksort {
  margin-bottom: 10px;
}
.book-list-wrapper .book-list {
  gap: 50px;
}
.book-list-wrapper c-booklisting:last-child {
  margin-bottom: 50px;
}
.book-list-wrapper .message-box {
  justify-content: center;
}
.book-list-wrapper .message-box c-infobox {
  text-align: center;
}
.book-list-wrapper .help {
  align-items: center;
  text-align: center;
  gap: 35px;
  color: #666666;
  font-size: 18px;
}
.book-list-wrapper .help i {
  font-size: 24px;
}
.book-list-wrapper .help p {
  line-height: 1.5;
}
.book-list-wrapper + .spinner {
  margin-top: 50px;
}
.book-list-wrapper .partial-matches {
  display: flex;
  gap: 20px;
  align-items: center;
  text-align: center;
  color: #666666;
  font-size: 18px;
  font-weight: 300;
}
.book-list-wrapper .partial-matches:before, .book-list-wrapper .partial-matches:after {
  content: "";
  display: block;
  height: 1px;
  background: rgba(102, 102, 102, 0.3);
  flex: 1;
}

c-booklisting {
  padding: 35px;
  background: #ffffff;
  border-radius: 10px;
  gap: 35px;
  justify-content: space-between;
}
c-booklisting .inner {
  gap: 35px;
}
c-booklisting .book-cover {
  align-self: start;
}
c-booklisting .book-cover, c-booklisting .book-cover .cover {
  width: 200px;
}
c-booklisting .book-title {
  flex: 1;
  min-width: 250px;
}
c-booklisting .book-title .title {
  font-size: 24px;
}
c-booklisting .book-title .author, c-booklisting .book-title .series-info, c-booklisting .book-title .genre {
  font-size: 14px;
}
c-booklisting .book-title .author, c-booklisting .book-title .series-info {
  margin-bottom: 5px;
}
c-booklisting .scores {
  flex-direction: row;
  justify-content: end;
  align-self: end;
  gap: 10px;
}
c-booklisting .book-rating, c-booklisting .popularity {
  border-radius: 4px;
  padding: 5px;
  font-size: 16px;
  line-height: 16px;
  white-space: nowrap;
}
c-booklisting .book-rating {
  align-self: end;
  align-items: center;
  text-align: right;
  font-weight: 300;
  color: #666666;
  background: #f4f3ee;
  font-size: 18px;
}
c-booklisting .book-rating strong {
  font-weight: 500;
  color: #1f1f2f;
}
c-booklisting .book-rating span {
  color: #666666;
}
c-booklisting .book-rating > i {
  color: #cfb54d;
}
c-booklisting .popularity {
  color: #ffffff;
  align-self: center;
  font-weight: 300;
}
c-booklisting .popularity.low {
  background: #79a9cc;
}
c-booklisting .popularity.medium {
  background: #32b966;
}
c-booklisting .popularity.high {
  background: #d77711;
}
c-booklisting .popularity.huge {
  background: #a92616;
}
c-booklisting .middle, c-booklisting .right {
  gap: 20px;
}
c-booklisting .middle {
  flex: 50;
}
c-booklisting .right {
  flex: 50;
}
c-booklisting .audience {
  gap: 10px;
  flex: 1;
}
c-booklisting .likesdislikes {
  gap: 35px;
  justify-content: center;
  flex: 1;
  flex-direction: column;
}
c-booklisting .likesdislikes .likes, c-booklisting .likesdislikes .dislikes {
  align-items: start;
  gap: 20px;
}
c-booklisting .likesdislikes .likes span, c-booklisting .likesdislikes .dislikes span {
  font-style: italic;
  flex: 1;
  font-weight: 300;
}
c-booklisting .likesdislikes .likes i, c-booklisting .likesdislikes .dislikes i {
  font-size: 18px;
  background: #f4f3ee;
  border-radius: 100px;
  padding: 10px;
}
c-booklisting .pitch {
  font-size: 18px;
  line-height: 1.5;
  max-width: 800px; /* Large is uncomfortable for reading */
}
c-booklisting .buttons c-bookmark-button > c-dropdown, c-booklisting .buttons c-findon-button > c-dropdown {
  padding: 0 10px;
}
c-booklisting .buttons .buy-button {
  padding: 5px 10px;
  font-size: 16px;
}
c-booklisting .buttons.horizontal {
  justify-content: end;
  flex-direction: row-reverse;
}
c-booklisting .classifications {
  justify-content: start;
  gap: 10px;
}
c-booklisting .classifications button {
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 0;
  line-height: 1;
  border-color: #f4f3ee;
}
c-booklisting .classifications button > span {
  flex: 1;
  text-align: left;
}
c-booklisting .classifications button i, c-booklisting .classifications button span {
  padding: 5px;
}
c-booklisting .classifications button .icon {
  background: #f4f3ee;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}
c-booklisting c-findon-button, c-booklisting c-bookmark-button {
  padding: 0 !important;
}
c-booklisting .match-score {
  font-weight: 600;
  user-select: none;
  align-items: center;
}
c-booklisting .match-score .match-exact {
  color: #54bfab;
}
c-booklisting .match-score .match-very-strong {
  color: #6ab8a8;
}
c-booklisting .match-score .match-strong {
  color: #80b1a5;
}
c-booklisting .match-score .match-good {
  color: #96aaa2;
}
c-booklisting .match-score .match-average {
  color: #aca39f;
}
c-booklisting .match-score .match-low {
  color: #c29c9c;
}
c-booklisting .match-score c-dropdown {
  cursor: pointer;
  font-weight: 500;
  align-content: center;
}
c-booklisting .match-score c-dropdown .match-title {
  margin-left: 5px;
}
c-booklisting .match-score c-dropdown .match-title:hover {
  text-decoration: underline;
}

.match-score-dropdown {
  font-size: 14px;
  background-color: #1f1f2f;
  color: #ffffff;
}
.match-score-dropdown c-grid {
  gap: 10px;
}
.match-score-dropdown c-grid > :nth-child(2n-1) {
  justify-self: end;
  align-self: center;
}
.match-score-dropdown .match-info {
  gap: 5px;
  color: #c4c4c4;
}
.match-score-dropdown .match-info .expected {
  color: #FF2D55;
}
.match-score-dropdown .match-info .actual {
  margin-right: 10px;
}
.match-score-dropdown .match-info .actual > *:not(:last-child):after {
  content: ", ";
  color: #c4c4c4;
}

c-booklisting.vertical .scores, c-booklisting.mobile .scores {
  align-self: start;
}
c-booklisting.vertical .book-title, c-booklisting.mobile .book-title {
  flex: 99;
}
c-booklisting.vertical .likesdislikes, c-booklisting.mobile .likesdislikes {
  flex-direction: column;
  justify-content: start;
  gap: 10px;
}
c-booklisting.vertical .likesdislikes .likes, c-booklisting.vertical .likesdislikes .dislikes, c-booklisting.mobile .likesdislikes .likes, c-booklisting.mobile .likesdislikes .dislikes {
  flex: 1;
  flex-direction: row-reverse;
  justify-content: space-between;
}
c-booklisting.vertical .likesdislikes .likes i, c-booklisting.vertical .likesdislikes .dislikes i, c-booklisting.mobile .likesdislikes .likes i, c-booklisting.mobile .likesdislikes .dislikes i {
  align-self: center;
}

c-booklisting.vertical .scores {
  flex-direction: column;
}
c-booklisting.vertical .middle {
  gap: 35px;
}
c-booklisting.vertical .left {
  gap: 20px;
}

c-booklisting.mobile {
  gap: 20px;
}
c-booklisting.mobile .title-box {
  flex-wrap: wrap;
  gap: 20px;
}
c-booklisting.mobile .cover-box {
  gap: 20px;
  align-self: end;
  align-items: center;
}
c-booklisting.mobile .book-cover, c-booklisting.mobile .book-cover img {
  width: 100px;
}
c-booklisting.mobile .scores {
  flex-direction: row;
}
c-booklisting.mobile .bottom {
  gap: 20px;
}
c-booklisting.mobile .classifications {
  flex-direction: column;
  flex: 1;
}
c-booklisting.mobile .classifications > * {
  width: 100%;
}
c-booklisting.mobile .classifications .button {
  width: 100%;
}

.classifications-popin {
  margin-top: 5px;
  background: #ffffff;
  border: 1px solid #d6d3cc;
  border-radius: 10px;
  padding: 20px;
  gap: 20px;
  width: 350px;
}
.classifications-popin i, .classifications-popin strong {
  margin-right: 5px;
}

.booklist-outer .subnav {
  flex-direction: row;
  margin-bottom: 20px;
  align-items: end;
  gap: 10px;
}
@media (max-width: 719px) {
  .booklist-outer .subnav {
    flex-direction: column;
    align-items: start;
  }
  .booklist-outer .subnav .similar-books {
    margin-bottom: 20px;
  }
}
.booklist-outer .subnav .similar-books {
  flex-direction: row;
  gap: 10px;
  align-items: center;
}
.booklist-outer .subnav .similar-books .book-title {
  gap: 2px;
  justify-content: center;
}
.booklist-outer .subnav .similar-books .book-cover {
  width: 35px !important;
}
.booklist-outer .subnav .similar-books .book-cover i.remove {
  font-size: 50px;
}
.booklist-outer .subnav .similar-books c-bookbar {
  justify-content: start;
}
.booklist-outer .subnav .similar-books c-bookbar .book {
  width: 35px !important;
}
@media (max-width: 719px) {
  .booklist-outer .subnav .similar-books {
    flex-direction: column;
    align-items: start;
    position: relative;
  }
  .booklist-outer .subnav .similar-books c-bookbar {
    flex-wrap: wrap;
  }
  .booklist-outer .subnav .similar-books c-bookbar .book {
    width: 75px !important;
  }
  .booklist-outer .subnav .similar-books .book-cover {
    width: 75px !important;
  }
  .booklist-outer .subnav .similar-books a.delete {
    position: absolute;
    top: 2px;
    right: 2px;
  }
}
.booklist-outer .subnav a.delete {
  text-decoration: none;
  color: #FF2D55;
  font-size: 18px;
}

.bookdetails .top-section {
  max-width: 1400px;
  width: 100%;
  box-sizing: border-box;
  justify-content: space-between;
  align-self: center;
  gap: 50px;
  padding: 0px 0 50px;
}
.bookdetails .top-section .main-section {
  gap: 20px;
  flex: 1;
}
.bookdetails .top-section .main-section .author {
  font-size: 16px;
}
.bookdetails .top-section .main-section .inner-mobile {
  gap: 20px;
  flex-wrap: wrap;
  justify-content: space-between;
}
.bookdetails .top-section .main-section .inner-mobile .cover-section {
  align-items: center;
}
.bookdetails .top-section .main-section .title-box {
  gap: 20px;
  justify-content: space-between;
  max-width: 720px;
}
.bookdetails .top-section .main-section .title-box .rating-section {
  flex-direction: column;
}
.bookdetails .top-section .main-section .genre {
  font-size: 16px;
}
.bookdetails .top-section .main-section .genre i {
  margin-right: 5px;
  font-size: 18px;
}
.bookdetails .top-section .main-section .title {
  font-size: 32px;
  font-weight: 400;
  line-height: 1.2;
}
.bookdetails .top-section .main-section .rating-section {
  gap: 10px;
  align-items: center;
  font-size: 18px;
}
.bookdetails .top-section .main-section .rating-section .book-rating, .bookdetails .top-section .main-section .rating-section .popularity {
  border-radius: 4px;
  padding: 5px;
  font-size: 16px;
  line-height: 16px;
}
.bookdetails .top-section .main-section .rating-section .book-rating {
  align-self: end;
  align-items: center;
  text-align: right;
  font-weight: 300;
  color: #666666;
  background: #f4f3ee;
  font-size: 18px;
}
.bookdetails .top-section .main-section .rating-section .book-rating strong {
  font-weight: 500;
  color: #1f1f2f;
}
.bookdetails .top-section .main-section .rating-section .book-rating span {
  color: #666666;
}
.bookdetails .top-section .main-section .rating-section .book-rating > i {
  color: #cfb54d;
}
.bookdetails .top-section .main-section .rating-section .popularity {
  color: #ffffff;
  align-self: center;
  font-weight: 300;
}
.bookdetails .top-section .main-section .rating-section .popularity.low {
  background: #79a9cc;
}
.bookdetails .top-section .main-section .rating-section .popularity.medium {
  background: #32b966;
}
.bookdetails .top-section .main-section .rating-section .popularity.high {
  background: #d77711;
}
.bookdetails .top-section .main-section .rating-section .popularity.huge {
  background: #a92616;
}
.bookdetails .top-section .main-section .summary-section {
  position: relative;
  line-height: 1.5;
  font-weight: 400;
  font-size: 18px;
  overflow: auto;
  flex: 1;
  max-width: 720px;
}
@media (max-width: 899px) {
  .bookdetails .top-section .main-section .summary-section {
    overflow: unset !important;
  }
  .bookdetails .top-section .main-section .summary-section > span {
    position: unset !important;
  }
}
.bookdetails .top-section .main-section .summary-section > span {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin-right: 5px;
}
.bookdetails .top-section .main-section .summary-section p {
  margin: 10px 0;
}
.bookdetails .top-section .cover-section {
  flex-direction: column;
  position: relative;
  margin: 0 100px 0 50px;
  gap: 20px;
}
@media (max-width: 899px) {
  .bookdetails .top-section .cover-section {
    flex-direction: row;
    margin: 0 !important;
  }
}
.bookdetails .top-section .cover-section .book-cover {
  position: relative;
  z-index: 2;
  width: 300px;
  align-self: center;
}
.bookdetails .top-section .cover-section .book-cover figure {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 400px;
  aspect-ratio: 1;
  background-image: url("/fe/img/circles-bg.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}
@media (min-width: 900px) and (max-width: 1199px) {
  .bookdetails .top-section .cover-section .book-cover {
    width: 250px !important;
  }
  .bookdetails .top-section .cover-section .book-cover figure {
    display: none;
  }
}
@media (max-width: 899px) {
  .bookdetails .top-section .cover-section .book-cover {
    width: 100px !important;
  }
  .bookdetails .top-section .cover-section .book-cover figure {
    display: none;
  }
}
.bookdetails .top-section .cover-section .buttons {
  position: relative;
  z-index: 3;
}
.bookdetails .top-section .cover-section .buttons > * {
  width: 100%;
  box-sizing: border-box;
}
.bookdetails .likesdislikes-section {
  flex-direction: row;
  max-width: 1400px;
  width: 100%;
  box-sizing: border-box;
  align-self: center;
  gap: 50px;
  padding: 20px 0 50px;
}
@media (max-width: 899px) {
  .bookdetails .likesdislikes-section {
    flex-direction: column;
  }
}
.bookdetails .likesdislikes-section .likes, .bookdetails .likesdislikes-section .dislikes {
  flex: 1;
  align-items: start;
  gap: 20px;
}
.bookdetails .likesdislikes-section .likes .title, .bookdetails .likesdislikes-section .dislikes .title {
  align-items: center;
  gap: 5px;
}
.bookdetails .likesdislikes-section .likes .title i, .bookdetails .likesdislikes-section .dislikes .title i {
  font-size: 24px;
  font-weight: 400;
}
.bookdetails .likesdislikes-section .likes .content, .bookdetails .likesdislikes-section .dislikes .content {
  position: relative;
  border: 1px solid #eae8e3;
  padding: 35px;
  margin-top: 5px;
  gap: 20px;
  border-radius: 10px;
  background: #ffffff;
}
.bookdetails .likesdislikes-section .likes .content span, .bookdetails .likesdislikes-section .dislikes .content span {
  font-style: italic;
  flex: 1;
  font-weight: 300;
}
.bookdetails .likesdislikes-section .likes .content, .bookdetails .likesdislikes-section .dislikes .content {
  /* Speech bubble */
}
.bookdetails .likesdislikes-section .likes .content::after, .bookdetails .likesdislikes-section .dislikes .content::after {
  content: "";
  position: absolute;
  top: 0;
  left: 20px;
  width: 0;
  height: 0;
  border: 20px solid transparent;
  border-bottom-color: #eae8e3;
  border-top: 0;
  border-left: 0;
  margin-left: -10px;
  margin-top: -20px;
}
.bookdetails .mid-section {
  background: #ffffff;
  padding: 50px 0;
  align-items: center;
  margin: 0 -20px;
}
.bookdetails .mid-section .inner {
  width: 100%;
  box-sizing: border-box;
  max-width: 1400px;
  gap: 50px;
}
.bookdetails .mid-section c-metafields {
  justify-content: space-between;
  gap: 50px;
  padding: 0 20px;
}
.bookdetails .mid-section c-metafields i {
  margin-right: 5px;
  font-size: 16px;
  border-radius: 4px;
}
.bookdetails .mid-section c-metafields .meta-field-contents {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  flex: 1;
  gap: 35px;
}
@media (max-width: 899px) {
  .bookdetails .mid-section c-metafields .meta-field-contents {
    grid-template-columns: 1fr;
  }
}
.bookdetails .mid-section c-metafields .meta-field-contents.hide {
  display: none;
}
.bookdetails .mid-section c-metafields .meta-field-label {
  font-weight: 600;
  margin-right: 5px;
}
.bookdetails .mid-section c-metafields .meta-field-value > span:not(:last-child):after {
  content: ", ";
}
.bookdetails .mid-section c-metafields .meta-field-value a {
  text-decoration: none;
}
.bookdetails .mid-section c-metafields .meta-field-summary {
  display: block;
  font-weight: 300;
}
.bookdetails .mid-section c-metafields .meta-field {
  gap: 10px;
}
.bookdetails .mid-section c-metafields .meta-field i {
  color: rgba(0, 0, 0, 0.5);
  padding: 2px;
}
.bookdetails .mid-section c-metafields c-tabs {
  align-self: center;
  background: #f4f3ee;
}
.bookdetails .mid-section c-metafields .meta-field-category {
  display: flex;
  align-items: center;
  font-size: 18px;
  font-weight: 600;
}
.bookdetails .mid-section c-metafields .meta-field-category i {
  font-size: 18px;
  padding: 2px;
  border-radius: 100%;
}
@media (max-width: 719px) {
  .bookdetails .mid-section c-metafields .tab {
    padding: 10px;
  }
  .bookdetails .mid-section c-metafields .meta-field-category {
    font-size: 16px;
  }
  .bookdetails .mid-section c-metafields .meta-field-category i {
    display: none;
  }
}
.bookdetails .bottom-section {
  width: 100%;
  box-sizing: border-box;
  max-width: 1400px;
  gap: 35px;
  align-self: center;
  padding: 50px 0;
}
.bookdetails .bottom-section .similar-books {
  gap: 10px;
}
.bookdetails .bottom-section .similar-books .title {
  margin-bottom: 10px;
}
.bookdetails .bottom-section .similar-books .title h2 {
  font-size: 18px;
  font-weight: 600;
}

c-checkbox {
  display: flex;
  align-items: center;
  justify-content: center;
}
c-checkbox input[type=checkbox] {
  appearance: none;
  border: 2px solid #1f1f2f;
  border-radius: 4px;
  width: 16px;
  height: 16px;
}
c-checkbox input[type=checkbox][checked] {
  background: #54bfab;
  box-shadow: inset 0 0 0 2px #f9f8f5;
}
c-checkbox input[type=checkbox][checked].negative {
  background: #FF2D55;
}

c-checklist {
  user-select: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
}
c-checklist .checklist-items {
  max-height: 400px;
  overflow-y: auto;
  gap: 5px;
}
c-checklist .checklist-item {
  align-items: center;
}
c-checklist input[type=checkbox] {
  appearance: none;
  border: 2px solid #1f1f2f;
  border-radius: 4px;
  width: 16px;
  height: 16px;
}
c-checklist input[type=checkbox][checked] {
  background: #54bfab;
  box-shadow: inset 0 0 0 2px #f9f8f5;
}
c-checklist input[type=checkbox][checked].negative {
  background: #FF2D55;
}

c-filtergroup {
  user-select: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
}
c-filtergroup .title {
  background: #f9f8f5;
  padding: 10px;
  border-radius: 10px;
  font-weight: 500;
}
c-filtergroup .suffix {
  margin-left: 0.3em;
}
c-filtergroup .container {
  padding: 10px;
}

c-infobox h1 {
  font-size: 24px;
  font-weight: 600;
}
c-infobox p {
  line-height: 1.5;
}
c-infobox .upsell {
  gap: 20px;
}
c-infobox .upsell .button {
  align-self: center;
}
c-infobox .upsell .button i {
  margin-right: 5px;
}

.book-title {
  gap: 10px;
}
.book-title .title {
  margin: 0;
  font-size: 20px;
  font-weight: 500;
}
.book-title .title a {
  text-decoration: none;
}
.book-title .genre a {
  font-weight: 600;
  margin: 0 5px;
}
.book-title .genre a:first-child {
  margin-left: 0;
}
.book-title .genre a:last-child {
  margin-right: 0;
}
.book-title .author, .book-title .series-info {
  font-size: 14px;
  font-weight: 300;
}
.book-title .author strong, .book-title .series-info strong {
  font-weight: 600;
}

.overflowable {
  position: relative;
}
.overflowable:not(.expanded) {
  overflow: hidden;
}
.overflowable .overflow-button {
  animation: parent-scrolling forwards;
  animation-timeline: scroll();
  height: 0;
  overflow: hidden;
  border: 0;
  position: absolute;
  bottom: 0;
  right: 0;
  padding: 0;
  background: none;
  border-radius: 0;
  padding-left: 50px;
  background: linear-gradient(to right, rgba(255, 0, 0, 0), #f9f8f5 50px);
}
@keyframes parent-scrolling {
  0%, to {
    height: 1.5rem;
  }
}

.book-scores {
  gap: 10px;
}
.book-scores .book-rating, .book-scores .popularity {
  border-radius: 4px;
  padding: 5px;
  font-size: 16px;
  line-height: 16px;
  white-space: nowrap;
}
.book-scores .book-rating {
  align-self: end;
  align-items: center;
  text-align: right;
  font-weight: 300;
  color: #666666;
  background: #f4f3ee;
  font-size: 18px;
}
.book-scores .book-rating strong {
  font-weight: 500;
  color: #1f1f2f;
}
.book-scores .book-rating span {
  color: #666666;
}
.book-scores .book-rating > i {
  color: #cfb54d;
}
.book-scores .popularity {
  color: #ffffff;
  align-self: center;
  font-weight: 300;
}
.book-scores .popularity.low {
  background: #79a9cc;
}
.book-scores .popularity.medium {
  background: #32b966;
}
.book-scores .popularity.high {
  background: #d77711;
}
.book-scores .popularity.huge {
  background: #a92616;
}

c-rangeslider {
  --track-color: #54bfab;
}
c-rangeslider[disabled] {
  --track-color: #666666;
}
c-rangeslider[disabled] .range-labels {
  color: #666666;
}
c-rangeslider .range-labels {
  justify-content: space-between;
  font-size: 14px;
}
c-rangeslider .range-container {
  position: relative;
  height: 15px;
}
c-rangeslider .range-slider {
  position: absolute;
  width: 100%;
  left: 0;
  margin: 0;
  pointer-events: none;
  appearance: none;
  z-index: 2;
  outline: none;
  background: transparent;
}
c-rangeslider .range-slider::-webkit-slider-thumb {
  appearance: none;
  pointer-events: all;
  width: 15px;
  height: 15px;
  border-radius: 100%;
  border: 1px solid #FFF;
  background: var(--track-color);
  cursor: pointer;
  z-index: 3;
  box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.3);
}
c-rangeslider .range-slider::-moz-range-thumb {
  pointer-events: all;
  width: 15px;
  height: 15px;
  border-radius: 100%;
  border: 1px solid #FFF;
  background: var(--track-color);
  cursor: pointer;
  z-index: 3;
}
c-rangeslider .min-slider {
  z-index: 1;
}
c-rangeslider .range-track {
  position: absolute;
  z-index: 0;
  left: 1px;
  right: 1px;
  top: calc(15px / 2 - 8px / 2);
  height: 8px;
  border-radius: 5px;
  background: #d6d3cc;
}
c-rangeslider .range-progress {
  position: absolute;
  z-index: 0;
  top: calc(15px / 2 - 8px / 2);
  height: 8px;
  background: var(--track-color);
  border-radius: 5px;
}

c-sidebar {
  box-shadow: 0 0 10px 5px rgba(0, 0, 0, 0.1);
  background: #ffffff;
  border-radius: 10px;
  padding: 35px 10px;
  gap: 5px;
  margin-left: 50px;
  margin-bottom: 50px;
}
c-sidebar .logo {
  height: 60px;
}
c-sidebar .logo-link {
  width: 100%;
  text-align: center;
}
c-sidebar .scope-filters {
  gap: 10px;
}
c-sidebar .scope-filters label {
  font-weight: 600;
}

c-wrapper {
  justify-content: stretch;
  flex: 1;
}
c-wrapper > .inner {
  margin: 0 0 50px 0;
  padding: 0 20px;
  width: 100%;
  box-sizing: border-box;
  align-items: center;
  flex: 1;
}
c-wrapper > .inner c-nav, c-wrapper > .inner > .content {
  width: 100%;
  max-width: 1400px;
  margin: 0 50px;
  box-sizing: border-box;
}
c-wrapper > .inner c-nav {
  margin-bottom: 50px;
}
c-wrapper > .inner > .content.fullwidth {
  max-width: none;
  margin: 0;
}
c-wrapper > .inner c-sidebar {
  width: 275px;
}
c-wrapper > .inner .content {
  flex: 1;
}
c-wrapper > .inner .content.centered {
  justify-content: center;
}
c-wrapper .footer {
  box-sizing: border-box;
  background: #ffffff;
  font-size: 16px;
  align-items: center;
  line-height: 1.5;
  color: #666666;
  width: 100%;
  padding: 75px;
  gap: 35px;
}
@media (max-width: 719px) {
  c-wrapper .footer {
    padding: 35px;
  }
}
c-wrapper .footer .inner {
  gap: 35px;
  justify-content: space-between;
  width: 100%;
  box-sizing: border-box;
  max-width: 1400px;
  flex: 1;
  flex-direction: row;
}
@media (max-width: 719px) {
  c-wrapper .footer .inner {
    flex-direction: column !important;
  }
}
c-wrapper .footer .inner .logo-container {
  flex: 1;
  justify-content: center;
}
c-wrapper .footer .inner .logo-container .logo {
  height: 50px;
}
c-wrapper .footer .inner > c-vbox, c-wrapper .footer .inner > c-wrapper {
  flex: 1;
  gap: 10px;
}
c-wrapper .footer .copyright, c-wrapper .footer .associate {
  font-size: 12px;
  color: #666666;
  font-style: italic;
}
c-wrapper .footer strong {
  color: #1f1f2f;
  font-size: 18px;
}
c-wrapper .footer a {
  text-decoration: none;
  color: #666666;
}
c-wrapper .footer a:hover {
  color: #409283;
}
c-wrapper .footer i {
  margin-right: 2px;
  color: #409283;
}
c-wrapper .footer .copyright {
  font-size: 14px;
  font-style: italic;
}

c-booksort {
  align-items: center;
  border-radius: 4px;
  border: 1px solid #1f1f2f;
  padding: 5px;
  background-color: #ffffff;
  white-space: nowrap;
}
c-booksort select {
  margin-left: 0.5rem;
  font-weight: 600;
  font-family: "Inter", "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
  font-size: 16px;
  color: #1f1f2f;
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border: 0;
  background: transparent;
}
c-booksort select:focus {
  outline: none;
}

c-selectinput {
  position: relative;
  z-index: 2;
}
c-selectinput .selection {
  padding: 10px;
}
c-selectinput .selection label {
  color: #666666;
  padding: 5px 0;
}
c-selectinput .selection button {
  padding: 0 5px;
}
c-selectinput .selection .selection-container {
  flex: 1;
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}
c-selectinput .selection .selection-container .option {
  display: inline-block;
  padding: 5px;
  border-radius: 4px;
  background: #f4f3ee;
}
c-selectinput .selection .selection-container .option a {
  color: #FF2D55;
  font-weight: 600;
  margin-left: 0.1rem;
}
c-selectinput .options {
  position: absolute;
  z-index: 1;
  box-sizing: border-box;
  display: none;
  top: calc(100% - 2px);
  width: 100%;
  background: #f9f8f5;
  border: 1px solid #d6d3cc;
  border-radius: 0 0 4px 4px;
  padding: 10px;
}
c-selectinput .options input {
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 10px;
}
c-selectinput .options .options-container {
  height: 400px;
  overflow-y: auto;
}
c-selectinput .options .options-container label {
  padding: 10px;
  border-radius: 4px;
  cursor: pointer;
}
c-selectinput .options .options-container label:hover {
  background: #f4f3ee;
}

c-search {
  width: 100%;
  justify-content: center;
}
c-search input.input-text {
  width: 100%;
  max-width: 600px;
  min-width: 300px;
  padding: 10px;
  border-radius: 50px;
  background-image: url("/fe/icons/search.svg");
  background-repeat: no-repeat;
  background-size: 24px;
  background-position: calc(100% - 10px) 10px;
  height: 24px;
}

c-pagination {
  flex: 1;
  justify-content: center;
  padding: 35px;
}
c-pagination > c-vbox {
  align-items: center;
  gap: 10px;
}
c-pagination button:not(:last-child) {
  margin-right: 10px;
}

.book-cover {
  position: relative;
  width: 120px;
  aspect-ratio: 2/3;
  box-sizing: border-box;
  flex-shrink: 0;
}
.book-cover:before {
  position: absolute;
  border-radius: 8px;
  z-index: 2;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  content: "...";
  font-size: 12px;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.book-cover img {
  width: 100%;
  aspect-ratio: 2/3;
  position: relative;
  z-index: 3;
  border-radius: 8px;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
  display: block;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.book-cover:hover img {
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
  transform: scale(1.05);
}
.book-cover i.check {
  position: absolute;
  z-index: 5;
  top: 5px;
  right: 5px;
  color: #54bfab;
  font-size: 20px;
  background-color: #1f1f2f;
  border-radius: 100%;
}
.book-cover.toggled i.check {
  display: block;
}
.book-cover.toggled i.add {
  display: none;
}
.book-cover:not(.toggled) i.remove, .book-cover:not(.toggled) i.check {
  display: none;
}
.book-cover:hover.toggled i.remove {
  opacity: 1;
}
.book-cover:hover:not(.toggled) i.add {
  opacity: 1;
}
.book-cover c-bookmark-button {
  z-index: 4;
  transform: scaleY(0);
  transition: transform 0.1s ease-in-out;
  position: absolute;
  bottom: 5px;
  right: 5px;
}
.book-cover c-bookmark-button i {
  font-weight: 500;
  font-size: 16px !important;
}
.book-cover c-bookmark-button .dropdown-toggle {
  padding: 0;
}
.book-cover c-bookmark-button label {
  display: none;
}
@media (pointer: fine) {
  .book-cover:hover c-bookmark-button {
    transform: scale(1);
  }
}

.dropdown-dropper {
  position: absolute;
  z-index: 10;
  overflow-y: hidden; /* Overridden by business logic */
  max-height: 500px; /* Override as needed */
  opacity: 1;
  transform: scaleY(1);
  transform-origin: top;
  transition: transform 0.2s ease;
}
.dropdown-dropper.hidden {
  transform: scaleY(0);
  overflow: hidden;
}

.dropdown-menu {
  margin: 5px; /* Create space for shadow */
  border-radius: 8px;
  min-width: 150px;
}
.dropdown-menu:not(.dark) {
  background-color: #f9f8f5;
  border: 1px solid #eae8e3;
}
.dropdown-menu:not(.dark) > *:hover {
  background-color: #ffffff;
}
.dropdown-menu:not(.dark) > *:not(:last-child) {
  border-bottom: 1px solid #eae8e3;
}
.dropdown-menu.dark {
  background-color: #2f2f45;
  color: #ffffff;
  border: 1px solid #464661;
}
.dropdown-menu.dark a {
  color: #ffffff;
}
.dropdown-menu.dark > *:hover {
  background-color: #1f1f2f;
}
.dropdown-menu.dark > *:not(:last-child) {
  border-bottom: 1px solid #464661;
}
.dropdown-menu > * {
  padding: 10px 20px;
}
.dropdown-menu > *:first-child {
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
}
.dropdown-menu > *:last-child {
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
}
.dropdown-menu > *, .dropdown-menu > * a {
  text-decoration: none;
}

c-switch {
  align-items: center;
  background-color: #f9f8f5;
  padding: 2px;
  cursor: pointer;
  border-radius: 4px;
}
c-switch[disabled] {
  cursor: not-allowed;
}
c-switch[disabled] .option1.selected, c-switch[disabled] .option2.selected {
  background-color: #666666;
}
c-switch .option1, c-switch .option2 {
  padding: 0 5px;
  transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out, font-weight 0.3s ease-in-out;
  border-radius: 4px;
}
c-switch .option1.selected, c-switch .option2.selected {
  font-weight: 600;
  background-color: #54bfab;
  color: #FFF;
}

.guide {
  --section-spacing: 100px;
  gap: var(--section-spacing);
  background-image: url("/fe/img/home-mascot.svg");
  background-position: 100% 0;
  background-repeat: no-repeat;
  background-size: 600px;
  padding-top: calc(-50px + var(--section-spacing));
}
@media (max-width: 1199px) {
  .guide {
    --section-spacing: 40px;
  }
}
@media (max-width: 1200px) {
  .guide {
    background-image: none;
  }
}
.guide .intro {
  gap: 10px;
}
.guide .intro h1 {
  font-size: 64px;
  font-weight: 600;
}
.guide .intro p {
  font-size: 24px;
  font-weight: 400;
  max-width: 800px;
}
.guide .intro p span {
  display: block;
}
@media (max-width: 719px) {
  .guide .intro p span {
    display: inline;
    margin-right: 0.5rem;
  }
}
.guide .shortcuts {
  gap: var(--section-spacing);
}
.guide .shortcuts h2 {
  font-size: 36px;
  font-weight: 600;
  max-width: 800px;
  text-align: center;
  align-self: center;
}
.guide .shortcuts .inner {
  gap: 50px;
  padding: 17.5px; /* height of child * hover scale factor */
}
@media (max-width: 719px) {
  .guide .shortcuts .inner {
    gap: 20px;
  }
}
.guide .shortcuts .inner a {
  aspect-ratio: 2.5/3;
  height: 350px;
  overflow: hidden;
  background: #1C1B28;
  color: #FFF;
  border-radius: 10px;
  text-decoration: none;
  padding: 50px 35px;
  box-sizing: border-box;
  background-size: 130%;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  transform: scale(1);
  transition: transform 0.3s ease, background-size 0.3s ease;
  flex-shrink: 0;
}
@media (max-width: 719px) {
  .guide .shortcuts .inner a {
    padding: 10px;
  }
}
.guide .shortcuts .inner a:hover {
  transform: scale(1.05);
  background-size: 120%;
  cursor: pointer;
}
.guide .shortcuts .inner a.shortcut-cyberpunk-adventures {
  background-image: url("/fe/img/shortcuts/cyberpunk.jpg");
  background-position: center 80px;
}
.guide .shortcuts .inner a.shortcut-apocalypse-romance {
  background-image: url("/fe/img/shortcuts/romance.jpg");
  background-position: center 40px;
}
.guide .shortcuts .inner a.shortcut-fantasy-schools {
  background-image: url("/fe/img/shortcuts/school.jpg");
}
.guide .shortcuts .inner a.shortcut-light-uplifting {
  background-image: url("/fe/img/shortcuts/cozy.jpg");
}
.guide .shortcuts .inner a.shortcut-dark-horror {
  background-image: url("/fe/img/shortcuts/horror.jpg");
}
.guide .shortcuts .inner a.shortcut-victorian-romance {
  background-image: url("/fe/img/shortcuts/victorian.jpg");
}
.guide .shortcuts .inner a.shortcut-slow-burn-mystery {
  background-image: url("/fe/img/shortcuts/mystery.jpg");
}
.guide .shortcuts .inner a.shortcut-timeloop-thriller {
  background-image: url("/fe/img/shortcuts/timeloop.jpg");
}
.guide .shortcuts .inner a::before {
  z-index: 1;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to bottom, rgb(28, 27, 40) 80px, rgb(28, 27, 40) 100px, transparent 100%);
  pointer-events: none;
  border-radius: 10px;
}
.guide .shortcuts .inner a h3 {
  position: relative;
  z-index: 2;
  font-size: 20px;
  font-weight: 600;
}
.guide .shortcuts .inner a span {
  position: relative;
  z-index: 2;
  font-size: 18px;
}
.guide .large-shortcuts {
  gap: 20px;
}
.guide .large-shortcuts .shortcut {
  flex: 1;
  background: #1C1B28;
  color: #FFF;
  border-radius: 10px;
  text-decoration: none;
  padding: 50px 35px;
  box-sizing: border-box;
  min-height: 400px;
  background-size: 130%;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  transform: scale(1);
  transition: transform 0.3s ease, background-size 0.3s ease;
}
.guide .large-shortcuts .shortcut::before {
  z-index: 1;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to top, rgb(28, 27, 40) 0, rgba(28, 27, 40, 0.5) 100%);
  pointer-events: none;
  border-radius: 10px;
}
.guide .large-shortcuts .shortcut:hover {
  transform: scale(1.05);
  background-size: 120%;
  cursor: pointer;
}
.guide .large-shortcuts .shortcut.sc1 {
  background-image: url("/fe/img/shortcuts/scifi-western.jpg");
  background-position: center 30%;
}
.guide .large-shortcuts .shortcut.sc2 {
  background-image: url("/fe/img/shortcuts/potter-romance.jpg");
}
.guide .large-shortcuts .shortcut .inner {
  position: relative;
  z-index: 2;
  height: 100%;
  justify-content: end;
  gap: 20px;
}
.guide .large-shortcuts .shortcut .inner h2 {
  font-size: 32px;
  margin-bottom: -10px;
}
.guide .large-shortcuts .shortcut .inner p {
  font-size: 18px;
}
.guide .large-shortcuts .shortcut .inner .filters {
  gap: 20px;
}
.guide .large-shortcuts .shortcut .inner .filters span {
  border: 2px solid #ffffff;
  border-radius: 8px;
  padding: 10px;
  white-space: nowrap;
}
@media (max-width: 899px) {
  .guide .large-shortcuts {
    flex-wrap: wrap;
  }
  .guide .large-shortcuts .shortcut {
    min-width: 100% !important;
  }
  .guide .large-shortcuts .filters {
    gap: 10px;
    flex-wrap: wrap;
  }
  .guide .large-shortcuts .filters span {
    padding: 10px;
  }
}
@media (max-width: 719px) {
  .guide .large-shortcuts .shortcut {
    background-size: cover !important;
  }
}
.guide c-filterguide {
  margin: 0;
}
.guide .popular-filters {
  margin-top: 35px;
  gap: 10px;
  padding: 0 10px;
  font-weight: 300;
  align-content: start;
  overflow-y: hidden;
  height: 4rem;
  flex-wrap: wrap;
}
.guide .popular-filters h3, .guide .popular-filters span {
  white-space: nowrap;
}
.guide .popular-filters h3 {
  font-size: 16px;
  font-weight: 600;
}
.guide .popular-filters strong {
  font-weight: 400;
}
.guide .popular-filters .filter {
  text-decoration: none;
}
.guide .popular-filters .filter i {
  margin-right: 5px;
}
@media (max-width: 719px) {
  .guide .popular-filters strong {
    display: none !important;
  }
}
.guide .previews {
  gap: 20px;
  padding: 20px;
}
.guide .previews h2 {
  font-size: 32px;
  font-weight: 600;
  text-align: center;
  align-self: center;
}
.guide .previews .inner {
  font-weight: 300;
  justify-content: center;
  align-items: stretch;
  flex-direction: row;
  gap: 20px;
}
@media (max-width: 899px) {
  .guide .previews .inner {
    flex-direction: column;
    align-items: center;
  }
  .guide .previews .inner .preview {
    max-width: 400px;
  }
  .guide .previews .inner .preview img {
    width: 100% !important;
    height: auto !important;
    align-self: center;
  }
}
.guide .previews .inner .preview {
  justify-content: start;
  box-sizing: border-box;
  position: relative;
  background: #ffffff;
  border-radius: 15px;
  padding: 35px;
  gap: 10px;
  text-align: left;
  align-items: center;
  flex: 1;
}
.guide .previews .inner .preview:after {
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  border-top-right-radius: 15px;
  border-bottom-left-radius: 100%;
  background: #1f1f2f;
  color: #ffffff;
  padding: 20px 20px 35px 35px;
  font-size: 18px;
  font-weight: 600;
}
.guide .previews .inner .preview:nth-child(1):after {
  content: "1";
}
.guide .previews .inner .preview:nth-child(2):after {
  content: "2";
}
.guide .previews .inner .preview:nth-child(3):after {
  content: "3";
}
.guide .previews .inner .preview h2 {
  font-size: 24px;
  font-weight: 600;
  width: 100%;
  text-align: left;
}
.guide .previews .inner .preview .subtitle p {
  max-width: 500px;
}
@media (min-width: 900px) and (max-width: 1199px) {
  .guide .previews .inner .preview .subtitle p {
    font-size: 16px;
  }
}
.guide .previews .inner .preview img {
  position: relative;
  z-index: 2;
  height: 300px;
  image-rendering: optimizeQuality;
}
@media (min-width: 1200px) and (max-width: 1399px) {
  .guide .previews .inner .preview img {
    height: 230px;
  }
}
@media (min-width: 900px) and (max-width: 1199px) {
  .guide .previews .inner .preview img {
    height: 150px;
  }
}
.guide .previews .inner .preview img.stats {
  content: url("/fe/img/features/stats.png");
}
.guide .previews .inner .preview img.filters {
  content: url("/fe/img/features/explore.png");
}
.guide .previews .inner .preview img.save {
  content: url("/fe/img/features/save.png");
}
.guide .bookguides {
  gap: 20px;
  padding: 75px 10px;
  color: #ffffff;
  background-color: #1f1f2f;
  border-radius: 15px;
  background-image: url("/fe/img/galaxy.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.guide .bookguides .modal {
  background-color: #2f2f45;
}
.guide .bookguides .topic {
  align-items: center;
  gap: 50px;
  width: 100%;
  box-sizing: border-box;
}
.guide .bookguides .topic .sliders {
  width: 100%;
  gap: 10px;
  box-sizing: border-box;
}
.guide .bookguides .topic c-carousel-slider {
  width: 100%;
  box-sizing: border-box;
  padding: 20px;
}
.guide .bookguides .topic c-carousel-slider .inner {
  gap: 20px;
}
.guide .bookguides .topic c-carousel-slider .book-cover, .guide .bookguides .topic c-carousel-slider .book-cover img {
  width: 160px !important;
}
.guide .bookguides .topic .header {
  gap: 5px;
  text-align: center;
}
.guide .bookguides .topic .header h2 {
  font-size: 32px;
  font-weight: 600;
}
.guide .bookguides .topic .header .description {
  font-size: 18px;
  font-weight: 300;
}
.guide .bookguides .see-more {
  color: #ffffff;
  border-color: #ffffff;
  background: transparent;
  border-radius: 25px;
  padding: 10px 50px;
  margin-top: -20px;
}
.guide .bookguides .see-more:hover {
  border-color: #54bfab;
  color: #54bfab;
}
.guide .bookguides c-carousel {
  gap: 50px;
}
.guide .bookguides c-carousel .left-button, .guide .bookguides c-carousel .right-button {
  display: none !important;
}
.guide .bookguides c-carousel .dots .dot {
  border-color: #959592 !important;
  background-color: #959592 !important;
  border-radius: 10px !important;
}
.guide .bookguides c-carousel .dots .dot.active {
  border-color: #ffffff !important;
  background-color: #ffffff !important;
}

.icon {
  display: inline-block;
  width: 1em;
  height: 1em;
  vertical-align: middle;
  background-size: 1em;
  background-repeat: no-repeat;
  background-position: center;
}

.icon-info {
  background-image: url("/fe/icons/info.svg");
}

c-bookbar .book.hidden {
  display: none !important;
}
c-bookbar .book.measuring {
  visibility: hidden !important;
}
c-bookbar .book .book-cover img:hover {
  transform: scale(1.1) !important;
}

c-bookbar {
  row-gap: 10px;
  column-gap: 5px;
  justify-content: space-between;
  overflow-x: visible; /* Otherwise the modals will be cut off */
}
@media (min-width: 900px) and (max-width: 1399px) {
  c-bookbar .book {
    width: 140px !important;
  }
  c-bookbar .book .book-cover {
    width: 100px !important;
  }
}
@media (max-width: 899px) {
  c-bookbar .book {
    width: 110px !important;
  }
  c-bookbar .book .book-cover {
    width: 80px !important;
  }
}
@media (max-width: 719px) {
  c-bookbar {
    flex-wrap: wrap;
    max-height: 600px;
    justify-content: space-evenly;
    padding: 20px;
  }
}
c-bookbar .book {
  align-items: center;
  position: relative;
  width: 150px;
  gap: 20px;
  cursor: pointer;
  text-decoration: none;
  box-sizing: border-box;
  flex-shrink: 0;
}
c-bookbar .book > .book-title {
  font-size: 16px;
  font-weight: 400;
  text-align: center;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  line-clamp: 1;
  overflow: hidden;
  width: 100%;
  box-sizing: border-box;
}
c-bookbar .book .cover-outer {
  align-items: center;
}
c-bookbar .book .cover-outer .book-cover {
  width: 120px;
}

c-auth, c-infobox.auth-dialog {
  align-self: center;
}
c-auth.modal, c-infobox.auth-dialog.modal {
  position: absolute;
  z-index: 30;
  width: 600px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
c-auth.modal .close, c-infobox.auth-dialog.modal .close {
  position: absolute;
  top: 10px;
  right: 10px;
  cursor: pointer;
  border: none;
  padding: 5px;
  background: none;
}
c-auth h1, c-infobox.auth-dialog h1 {
  text-align: center;
}
c-auth form, c-infobox.auth-dialog form {
  align-items: stretch;
  gap: 20px;
  flex: 1;
}
c-auth form .password-fields, c-infobox.auth-dialog form .password-fields {
  gap: 20px;
  align-items: stretch;
  flex: 1;
}
c-auth .error, c-infobox.auth-dialog .error {
  color: #FF2D55;
}
c-auth .status-message, c-infobox.auth-dialog .status-message {
  font-weight: 500;
}
c-auth .newsletter-signup label, c-infobox.auth-dialog .newsletter-signup label {
  text-align: left;
}
c-auth .submit-section, c-infobox.auth-dialog .submit-section {
  align-items: stretch;
  text-align: center;
}
c-auth .submit-section .button, c-infobox.auth-dialog .submit-section .button {
  padding: 20px;
  border-radius: 50px;
  margin: 5px 0;
}
c-auth .submit-section > p, c-infobox.auth-dialog .submit-section > p {
  color: #666666;
  font-style: italic;
  width: 75%;
  font-size: 14px;
  align-self: center;
}
c-auth .google-signin, c-infobox.auth-dialog .google-signin {
  justify-content: center;
}
c-auth .or, c-infobox.auth-dialog .or {
  gap: 10px;
  align-items: center;
  opacity: 0.5;
  font-size: 12px;
}
c-auth .or::before, c-auth .or::after, c-infobox.auth-dialog .or::before, c-infobox.auth-dialog .or::after {
  content: "";
  display: inline-block;
  flex: 1;
  height: 1px;
  background: #1f1f2f;
  opacity: 0.5;
  margin: 0 5px;
}

c-nav {
  margin-bottom: 50px;
}
c-nav nav {
  font-size: 16px;
  border-bottom: 1px solid #eae8e3;
}
c-nav nav, c-nav nav .links {
  align-items: center;
}
c-nav nav .logo {
  flex: 1; /* Push burger menu if links is not visible */
  padding-left: 0 !important;
}
c-nav nav > :last-child {
  margin-right: -20px !important;
}
c-nav nav .links {
  flex: 99;
  flex-direction: row;
}
c-nav nav .links > .hspace {
  min-width: 35px;
}
c-nav nav a {
  white-space: nowrap;
}
c-nav nav a.active {
  color: #409283;
}
c-nav nav .logo {
  height: 35px;
  margin-right: 10px;
}
c-nav nav .avatar {
  height: 25px;
  border-radius: 25px;
  margin-right: -15px;
}
c-nav nav strong {
  font-weight: 600;
}
c-nav nav a {
  text-decoration: none;
  font-weight: 500;
  padding: 20px;
}
c-nav nav .burger-dropdown {
  font-size: 24px;
  line-height: 16px;
  padding: 20px 20px 20px 0;
}
c-nav nav .burger-dropdown i {
  cursor: pointer;
  text-decoration: none;
  font-weight: 500;
  padding: 5px;
}
c-nav nav .burger-dropdown i:hover {
  color: #409283;
}

.burger-dropdown-menu {
  /* Touch devices */
}
@media (hover: none) {
  .burger-dropdown-menu {
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    left: unset !important;
    box-sizing: border-box;
    width: 75vw;
    height: 100vh;
    margin: 0;
    max-height: none;
    box-shadow: -50px 0px 50px 0px rgba(0, 0, 0, 0.15);
  }
  .burger-dropdown-menu a {
    padding: 35px 20px !important;
  }
}
.burger-dropdown-menu .links {
  flex-direction: column;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
.burger-dropdown-menu .links .hide-burger, .burger-dropdown-menu .links .hspace {
  display: none;
}
.burger-dropdown-menu .links a {
  padding: 10px 20px;
}
.burger-dropdown-menu .links a:hover {
  background-color: #ffffff;
}
.burger-dropdown-menu .links a:not(:last-child) {
  border-bottom: 1px solid #eae8e3;
}
.burger-dropdown-menu .links a, .burger-dropdown-menu .links a a {
  text-decoration: none;
}

c-grid {
  display: grid;
  border-collapse: collapse;
}

c-filterguide {
  margin: 0 0 50px 0;
  gap: 20px;
}
c-filterguide .filter-box {
  position: relative;
  width: 100%;
  max-width: 1400px;
  box-sizing: border-box;
  background: #ffffff;
  border: 1px solid #d6d3cc;
  border-radius: 10px;
  padding: 10px;
  user-select: none;
}
c-filterguide .filter-box .separator {
  width: 1px;
  background: #d6d3cc;
  height: 70%;
  margin: 0 10px;
  align-self: center;
}
@media (max-width: 899px) {
  c-filterguide .filter-box {
    flex-direction: column;
    gap: 5px;
  }
  c-filterguide .filter-box .separator {
    width: 98%;
    height: 1px;
  }
  c-filterguide .filter-box .selection {
    max-width: calc(100vw - 75px);
    overflow: hidden;
  }
}
@media (min-width: 900px) and (max-width: 1199px) {
  c-filterguide .filter-box {
    gap: 5px;
    padding: 5px;
  }
  c-filterguide .filter-box .separator {
    margin: 0 2px;
  }
  c-filterguide .filter-box .group {
    padding: 10px;
  }
  c-filterguide .filter-box .group .selection {
    max-width: 110px;
  }
  c-filterguide .filter-box .button.search > span {
    display: none;
  }
}
@media (min-width: 1200px) and (max-width: 1399px) {
  c-filterguide .filter-box .group .selection {
    max-width: 160px;
  }
}
@media (min-width: 1400px) {
  c-filterguide .filter-box .group .selection {
    max-width: 210px;
  }
}
c-filterguide .filter-box .group {
  flex: 1;
  padding: 10px 20px;
  background: #ffffff;
  border-radius: 10px;
  cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease;
}
c-filterguide .filter-box .group .inner {
  gap: 5px;
}
c-filterguide .filter-box .group .header h2 {
  display: flex;
  font-size: 16px;
  font-weight: 600;
  flex: 1;
}
c-filterguide .filter-box .group .header h2 .category-icon {
  font-size: 20px;
  align-self: center;
  margin-right: 5px;
}
c-filterguide .filter-box .group .header .selection-count, c-filterguide .filter-box .group .header .expand {
  display: none; /* Minimal mode only */
}
c-filterguide .filter-box .group .selection {
  overflow: hidden;
  gap: 2px;
  font-size: 14px;
  color: #666666;
  font-style: italic;
  white-space: nowrap;
  text-overflow: ellipsis;
}
c-filterguide .filter-box .group .selection.active {
  color: #409283;
  font-weight: 600;
}
c-filterguide .filter-box .group .selection span {
  white-space: nowrap;
}
c-filterguide .filter-box .group .selection span:not(:last-child):after {
  content: ",";
}
c-filterguide .filter-box .search-wrapper {
  margin: 0 20px;
  align-items: center;
  justify-content: end;
  width: 250px;
}
@media (min-width: 900px) and (max-width: 1199px) {
  c-filterguide .filter-box .search-wrapper {
    width: 200px !important;
  }
  c-filterguide .filter-box .search-wrapper form .search-input {
    width: 200px !important;
  }
}
c-filterguide .filter-box .search-wrapper input, c-filterguide .filter-box .search-wrapper button {
  height: 50px;
}
c-filterguide .filter-box .search-wrapper .search-form {
  position: absolute;
  z-index: 1;
  width: 250px;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  border: 1px solid #d6d3cc;
  border-radius: 8px;
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
  transition: width 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
  padding: 0 10px;
  gap: 10px;
}
c-filterguide .filter-box .search-wrapper .search-form .query-picker {
  transform: scaleX(0);
  width: 0;
  transition: transform 0.2s ease-in-out;
}
c-filterguide .filter-box .search-wrapper .search-form:has(:focus), c-filterguide .filter-box .search-wrapper .search-form.interacting {
  width: calc(100% - 60px) !important;
  box-shadow: -3px 0px 1px 0px rgba(0, 0, 0, 0.15);
  outline: 1px solid #54bfab;
}
c-filterguide .filter-box .search-wrapper .search-form:has(:focus) .query-picker, c-filterguide .filter-box .search-wrapper .search-form.interacting .query-picker {
  transform: scaleX(1);
  width: auto;
}
c-filterguide .filter-box .search-wrapper .search-form .query-picker {
  align-items: center;
  justify-content: center;
}
c-filterguide .filter-box .search-wrapper .search-form .query-picker .query-picker-toggle {
  font-weight: 500;
  color: #666666;
  align-items: center;
}
c-filterguide .filter-box .search-wrapper .search-form .search-input {
  flex: 1;
  background: transparent;
  border: 0;
  box-shadow: none;
  outline: none;
  min-width: 0;
}
c-filterguide .filter-box .search-wrapper .search-form button {
  padding: 0;
  display: flex;
  z-index: 2;
  position: relative;
  border: 0;
  background: transparent;
  align-items: center;
  justify-content: center;
}
c-filterguide .filter-box .search-wrapper .search-form button:hover {
  background: transparent !important;
}
c-filterguide .filter-box .search-wrapper .search-form button i {
  font-size: 24px;
  color: #1f1f2f;
}
@media (max-width: 899px) {
  c-filterguide .filter-box .search-wrapper {
    flex: 1;
    margin: 0 10px !important;
    width: auto !important;
    border-top: 1px solid #d6d3cc;
    padding-top: 10px;
  }
  c-filterguide .filter-box .search-wrapper .search-form {
    flex: 1;
    position: unset;
    width: unset;
    transform: unset;
  }
  c-filterguide .filter-box .search-wrapper .search-form .query-picker {
    transform: unset;
    width: auto;
  }
  c-filterguide .filter-box .search-wrapper .search-form .search-input {
    width: 100%;
  }
  c-filterguide .filter-box .search-wrapper .search-form button {
    align-self: end;
  }
}
c-filterguide .active-filters {
  transition: transform 0.2s ease, margin-top 0.4s ease;
  padding: 0 10px;
  align-items: center;
}
c-filterguide .active-filters.hidden {
  transform: scaleY(0);
  margin-top: -40px;
}
c-filterguide .active-filters > strong {
  font-weight: 500;
}
c-filterguide .active-filters .filters {
  gap: 10px;
  padding: 0 10px;
  font-weight: 300;
  align-content: start;
  overflow-y: hidden;
  flex-wrap: wrap;
  align-items: center;
}
c-filterguide .active-filters .filter {
  text-decoration: none;
  gap: 2px;
  align-items: center;
}
@media (max-width: 719px) {
  c-filterguide .active-filters .filter strong {
    display: none !important;
  }
}
c-filterguide .active-filters .filter strong {
  font-weight: 400;
  margin-right: 2px;
}
c-filterguide .active-filters a {
  text-decoration: none;
  cursor: pointer;
  color: #409283;
}
c-filterguide .active-filters a:hover {
  color: #54bfab;
}
c-filterguide .active-filters .remove-all {
  font-weight: 500;
}

c-filterguide.minimal {
  margin: 0 0 20px 0;
}
c-filterguide.minimal .selection {
  display: none;
}
c-filterguide.minimal .header {
  gap: 5px;
  align-items: center;
}
c-filterguide.minimal .header h2 .category-icon {
  display: none;
}
c-filterguide.minimal .header .selection-count {
  display: block;
  color: #959592;
  font-size: 14px;
}
c-filterguide.minimal .header .expand {
  display: block;
}
c-filterguide.minimal .group {
  padding: 5px 10px;
}
c-filterguide.minimal .search-wrapper {
  margin: 0 10px;
}
c-filterguide.minimal .search-wrapper .search-input {
  right: 20px;
}
c-filterguide.minimal .search-wrapper .search-input:focus {
  width: calc(100% - 40px) !important;
}
c-filterguide.minimal .search-wrapper input, c-filterguide.minimal .search-wrapper button {
  height: 30px;
}
c-filterguide.minimal .search-wrapper button {
  width: 30px;
}
c-filterguide.minimal .search-wrapper button i {
  font-size: 16px;
}

c-filterguide > .filter-box > .at-plan-limit-message {
  position: absolute;
  top: -10px;
  transform: translateY(-100%);
  left: 0;
  right: 0;
}
c-filterguide > .filter-box > .at-plan-limit-message .upsell {
  padding-left: 5px;
}
c-filterguide .search-wrapper .at-plan-limit-message {
  opacity: 0;
  transition: opacity 0.2s ease;
  left: -999px;
  position: absolute;
  border-radius: 10px;
  z-index: 30;
}
c-filterguide .search-wrapper .at-plan-limit-message .upsell {
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  padding: 20px;
  justify-content: center;
}
@media (max-width: 719px) {
  c-filterguide .search-wrapper .at-plan-limit-message .upsell {
    text-align: center;
    flex-direction: column;
  }
}
c-filterguide .search-wrapper:focus-within .at-plan-limit-message {
  opacity: 1;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.filter-modal .at-plan-limit-message .upsell {
  padding: 10px;
}

c-filterguide .at-plan-limit-message, .filter-modal .at-plan-limit-message {
  justify-content: end;
  align-items: center;
  font-size: 14px;
}
c-filterguide .at-plan-limit-message .upsell, .filter-modal .at-plan-limit-message .upsell {
  gap: 10px;
  align-items: center;
  align-self: end;
  background: rgba(231, 211, 168, 0.8);
  backdrop-filter: blur(2px);
  border-radius: 8px;
}
c-filterguide .at-plan-limit-message .upsell .button, .filter-modal .at-plan-limit-message .upsell .button {
  display: flex;
  align-items: center;
  font-size: 14px;
  border-radius: 8px;
}
c-filterguide .at-plan-limit-message .upsell .button i, .filter-modal .at-plan-limit-message .upsell .button i {
  font-size: 18px;
  margin-right: 5px;
}

.filter-modal {
  background: #ffffff;
  margin-top: 20px;
  margin-left: -10px;
  width: 600px;
  padding: 10px;
  border-radius: 8px;
  user-select: none;
  overflow: visible;
  box-sizing: border-box;
  max-height: unset !important;
  overflow-y: unset !important;
}
@media (max-width: 650px) {
  .filter-modal {
    width: 100vw;
    margin-left: 0;
    padding: 10px !important;
    left: 0 !important;
  }
  .filter-modal .entry .description {
    width: calc(100vw - 150px) !important;
  }
}
.filter-modal .inner {
  box-sizing: border-box;
  gap: 10px;
  max-height: min(500px, 100vh - 40px);
  margin-right: 0;
  padding-right: 0;
  overflow-y: hidden;
  scrollbar-color: rgba(201, 198, 192, 0) transparent;
  scrollbar-width: thin;
  transition: scrollbar-color 0.4s ease;
}
.filter-modal .inner.at-plan-limit .option:not(.selected), .filter-modal .inner.at-plan-limit .presets a {
  color: #959592;
  cursor: not-allowed !important;
}
.filter-modal .inner.is-overflowing {
  scrollbar-color: #c9c6c0 transparent;
  margin-right: -8px;
  padding-right: 2px;
  overflow-y: scroll;
}
.filter-modal .entry {
  position: relative;
  cursor: pointer;
  background: #ffffff;
  border-radius: 8px;
  padding: 10px;
  transition: background-color 0.2s ease;
  align-items: center;
}
.filter-modal .entry.disabled {
  opacity: 0.5;
}
.filter-modal .entry:hover {
  background-color: #f9f8f5;
}
.filter-modal .entry h3 {
  font-size: 16px;
  font-weight: 600;
}
.filter-modal .entry .description {
  width: 500px;
  text-overflow: ellipsis;
  font-size: 14px;
  color: #959592;
  font-style: italic;
}
.filter-modal .entry .description.active {
  width: 450px;
  color: #409283;
  font-weight: 600;
}
.filter-modal .entry i.filter {
  margin-right: 10px;
  font-size: 24px;
  align-self: start;
  margin-top: 5px;
}
.filter-modal .entry i.expand-toggle {
  align-self: center;
  font-size: 18px;
}
.filter-modal .entry a.reset {
  text-decoration: none;
  font-size: 14px;
  font-style: italic;
  padding: 10px;
}
.filter-modal c-toggle .entry .description {
  max-height: 16px;
  line-height: 16px;
  white-space: nowrap;
  overflow: hidden;
}
.filter-modal c-toggle.toggled.hidden .entry .description {
  animation: hideDescription 0.2s ease-in-out forwards;
}
.filter-modal c-toggle.toggled:not(.hidden) .entry .description {
  animation: showDescription 0.2s ease-in-out forwards;
}
.filter-modal {
  /* Due to the white-space change we have to get creative with the animation */
}
@keyframes hideDescription {
  0% {
    max-height: 32px;
    white-space: normal;
  }
  99% {
    max-height: 16px;
    white-space: normal;
  }
  100% {
    max-height: 16px;
    white-space: nowrap;
  }
}
@keyframes showDescription {
  0% {
    max-height: 16px;
    white-space: nowrap;
  }
  1% {
    max-height: 16px;
    white-space: normal;
  }
  100% {
    max-height: 32px;
    white-space: normal;
  }
}
.filter-modal c-toggle .options.toggler {
  max-height: 500px;
  transition: max-height 0.2s ease-in-out;
}
.filter-modal c-toggle.hidden .options.toggler {
  max-height: 0;
  display: block !important;
}
.filter-modal .options {
  display: flex !important; /* Override toggler display */
  overflow: hidden;
}
.filter-modal .options.range-selection .inner {
  padding: 10px 20px;
}
.filter-modal .options c-grid.selection {
  flex: 1;
  gap: 10px;
  padding: 10px 0;
  grid-template-columns: repeat(3, auto);
}
@media (max-width: 719px) {
  .filter-modal .options c-grid.selection {
    grid-template-columns: repeat(2, auto);
  }
}
.filter-modal .options c-grid.selection .option {
  align-self: start;
  cursor: pointer;
  border: 1px solid #f9f8f5;
  border-radius: 8px;
  font-weight: 600;
  transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
  align-items: center;
}
.filter-modal .options c-grid.selection .option span {
  padding: 5px;
}
@media (pointer: fine) {
  .filter-modal .options c-grid.selection .option:hover {
    background-color: #f9f8f5;
  }
  .filter-modal .options c-grid.selection .option:hover button.forbid {
    opacity: 1;
  }
}
.filter-modal .options c-grid.selection .option.selected {
  background-color: #1f1f2f;
  border-color: #1f1f2f;
  color: #ffffff;
}
@media (pointer: fine) {
  .filter-modal .options c-grid.selection .option.selected.forbid button.forbid {
    opacity: 1;
  }
}
@media (pointer: coarse) {
  .filter-modal .options c-grid.selection .option.selected.forbid button.add {
    opacity: 0.5;
  }
  .filter-modal .options c-grid.selection .option.selected:not(.forbid) button.forbid {
    opacity: 0.5;
  }
}
.filter-modal .options c-grid.selection .option button.add {
  color: #54bfab;
}
@media (pointer: fine) {
  .filter-modal .options c-grid.selection .option button.add {
    display: none;
  }
}
.filter-modal .options c-grid.selection .option button.forbid {
  color: #FF2D55;
}
@media (pointer: fine) {
  .filter-modal .options c-grid.selection .option button.forbid {
    opacity: 0;
  }
}
.filter-modal .options c-grid.selection .option button.forbid, .filter-modal .options c-grid.selection .option button.add {
  height: 100%;
  box-sizing: border-box;
  padding: 2px;
  border: 0;
  cursor: pointer;
  margin: 1px;
  transition: opacity 0.2s ease;
  background: transparent;
  font-size: 18px;
}
.filter-modal .options c-grid.presets {
  flex: 1;
  gap: 10px;
  grid-template-columns: repeat(3, auto);
  text-align: center;
}
.filter-modal .options c-grid.presets a {
  border: 1px solid #f9f8f5;
  border-radius: 8px;
  padding: 5px;
  font-weight: 600;
  transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
  text-decoration: none;
}
.filter-modal .options c-grid.presets a:hover {
  background-color: #f9f8f5;
}

.query-picker-dropdown .dropdown-menu > * {
  cursor: pointer;
}
.query-picker-dropdown .dropdown-menu > * span {
  font-style: italic;
  font-size: 14px;
  color: #666666;
}

.bookmarklist-outer {
  gap: 20px;
}
.bookmarklist-outer .subnav {
  align-items: center;
  gap: 10px;
  flex-direction: row;
}
@media (max-width: 719px) {
  .bookmarklist-outer .subnav {
    flex-direction: column;
    align-items: start;
  }
}

.bookmark-list {
  gap: 20px;
}
.bookmark-list.load {
  animation: slide-out-in 0.3s ease 1;
}
.bookmark-list .book-list {
  gap: 35px;
  margin-bottom: 35px;
}
.bookmark-list c-bookmark-listing:last-child {
  margin-bottom: 35px;
}
.bookmark-list .message-box {
  justify-content: center;
  align-self: center;
}
.bookmark-list .message-box c-infobox {
  text-align: center;
}

c-bookmark-listing {
  background: #ffffff;
  padding: 20px;
  border-radius: 8px;
  gap: 20px;
}
c-bookmark-listing .book-scores span, c-bookmark-listing .book-scores strong {
  font-size: 14px;
}
c-bookmark-listing .genre {
  font-size: 14px;
}
c-bookmark-listing .book-cover {
  width: unset;
  height: 100px;
  align-self: center;
}
c-bookmark-listing .pitch {
  flex: 1;
  align-self: center;
  font-style: italic;
}
c-bookmark-listing .right {
  align-items: center;
  justify-content: center;
  gap: 10px;
  white-space: nowrap;
}
c-bookmark-listing .right .added-date {
  font-style: italic;
}

c-bookmark-listing.large .book-title {
  flex: 35;
  justify-content: center;
}
c-bookmark-listing.large .pitch {
  flex: 65 !important;
}
c-bookmark-listing.large .title-box {
  gap: 20px;
  flex-direction: row;
  flex: 1;
}
@media (max-width: 1199px) {
  c-bookmark-listing.large .title-box {
    flex-direction: column;
  }
}

c-bookmark-listing.small .book-cover {
  align-self: center;
}
c-bookmark-listing.small .book-title {
  align-self: center;
  flex: 1;
}
c-bookmark-listing.small > .inner, c-bookmark-listing.small .title-box {
  gap: 20px;
}
c-bookmark-listing.small .buttons {
  gap: 20px;
  align-items: center;
}

c-tabs {
  align-items: center;
  gap: 10px;
  position: relative;
  border-radius: 25px;
  background: #f4f3ee;
  user-select: none;
}
c-tabs > c-hbox, c-tabs > c-tabs {
  flex: 1;
}
c-tabs .sliding-tab {
  position: absolute;
  top: 0;
  height: 100%;
  box-sizing: border-box;
  border-radius: 25px;
  background: #1f1f2f;
  transition: transform 0.3s ease-in-out, width 0.3s ease-in-out;
  z-index: 0;
}
c-tabs .tab {
  position: relative;
  z-index: 1;
  cursor: default;
  transition: color 0.3s ease;
  white-space: nowrap;
}
c-tabs .tab > * {
  padding: 10px 20px;
}
c-tabs .tab.selected {
  color: #ffffff;
}

c-tabbed {
  gap: 20px;
}
c-tabbed .content:not(.selected) {
  display: none;
}

c-account-wrapper {
  gap: 50px;
  align-items: start;
  max-width: 1150px;
  align-self: center;
  width: 100%;
  box-sizing: border-box;
}
c-account-wrapper > .sidebar {
  padding: 35px 20px;
  width: 300px;
}
c-account-wrapper > .sidebar > .column {
  gap: 0;
}
c-account-wrapper > .sidebar > .column a {
  gap: 10px;
  align-items: center;
  font-weight: 500;
  padding: 10px;
  cursor: pointer;
  border-radius: 4px;
  background-color: #ffffff;
  transition: background-color 0.2s ease, color 0.2s ease;
  text-decoration: none;
}
c-account-wrapper > .sidebar > .column a:hover {
  background-color: #f9f8f5;
  color: #409283;
}
c-account-wrapper > .sidebar > .column a:hover i:not(.ti-chevron-right) {
  background-color: #f9f8f5;
}
c-account-wrapper > .sidebar > .column a i:not(.ti-chevron-right) {
  color: #1f1f2f;
  font-size: 18px;
  background-color: #f4f3ee;
  border-radius: 4px;
  padding: 5px;
  transition: background-color 0.2s ease, color 0.2s ease;
}
c-account-wrapper > .sidebar > .column a .ti-chevron-right {
  color: #666666;
}
c-account-wrapper > .content {
  gap: 10px;
}
c-account-wrapper > .sidebar > h2, c-account-wrapper > .content > h2 {
  margin-bottom: 10px;
  align-self: start;
  font-weight: 600;
}
c-account-wrapper .status-success {
  color: #2E7265;
  background: #d4f5e0;
}
c-account-wrapper .status-error {
  color: #663636;
  background: #ffeded;
}
c-account-wrapper .status-success,
c-account-wrapper .status-error {
  border-radius: 10px;
  padding: 10px;
}
c-account-wrapper .page-account form {
  gap: 10px;
}
c-account-wrapper .page-account .text-muted {
  font-style: italic;
  font-size: 14px;
}
c-account-wrapper .page-subscription {
  gap: 20px;
}
c-account-wrapper .page-subscription c-plan-picker .plans {
  gap: 75px;
}
c-account-wrapper .page-settings form {
  gap: 10px;
}
c-account-wrapper .page-settings table {
  text-align: left;
  border-collapse: separate;
  border-spacing: 10px;
}
c-account-wrapper .page-settings table input[type=text] {
  width: 100%;
  box-sizing: border-box;
}
c-account-wrapper .page-settings .instructions {
  font-style: italic;
  color: #666666;
}
c-account-wrapper .page-settings .upsell {
  align-self: center;
  background: rgba(231, 211, 168, 0.8);
  border-radius: 8px;
  padding: 10px;
}

.recommended-books {
  gap: 75px;
  margin-bottom: 60px; /* Make space for the upsell 20px negative spacing */
}
.recommended-books .top-section {
  gap: 75px;
  flex-direction: row;
}
@media (max-width: 1199px) {
  .recommended-books .top-section {
    flex-direction: column;
  }
}
.recommended-books .bottom-section {
  position: relative;
  gap: 20px;
}
.recommended-books .bottom-section .header {
  position: relative;
  z-index: 20;
  gap: 10px;
  align-items: center;
}
.recommended-books .bottom-section .header h2 {
  font-size: 20px;
  font-weight: 600;
}
.recommended-books .bottom-section .header c-dropdown {
  display: flex;
  align-items: center;
}
.recommended-books .bottom-section .header c-dropdown i {
  font-size: 24px;
  cursor: pointer;
}
.recommended-books .bottom-section .recommendations {
  gap: 50px;
}
.recommended-books .bottom-section .upsell {
  position: absolute;
  top: 0;
  bottom: -20px;
  left: -20px;
  right: -20px;
  z-index: 10;
  background: linear-gradient(to top, #f9f8f5 10%, rgba(249, 248, 245, 0.8) 60%, rgba(249, 248, 245, 0) 100%);
  justify-content: center;
  align-items: center;
  padding: 75px;
  gap: 20px;
  backdrop-filter: blur(2px);
}
.recommended-books .bottom-section .upsell .button {
  display: flex;
  align-items: center;
  font-size: 20px;
  border-radius: 8px;
}
.recommended-books .bottom-section .upsell .button i {
  font-size: 24px;
  margin-right: 5px;
}
.recommended-books .bottom-section h2 {
  font-weight: 400;
}
.recommended-books .primary-books {
  width: calc(100% - 500px);
  box-sizing: border-box;
}
@media (max-width: 719px) {
  .recommended-books .primary-books {
    padding: 20px;
  }
}
@media (max-width: 1199px) {
  .recommended-books .primary-books {
    width: unset !important;
  }
}
.recommended-books .primary-books h2 {
  font-size: 20px;
  margin-bottom: 10px;
}
.recommended-books .primary-books .books {
  gap: 20px;
  flex: 1;
}
.recommended-books .primary-books .books c-bookbar {
  flex: 1;
  flex-wrap: wrap;
  max-height: 600px;
  justify-content: space-evenly;
}
.recommended-books .primary-books .books c-bookbar .book {
  gap: 10px;
  width: 140px;
}
.recommended-books .primary-books .books c-bookbar .book .book-cover {
  width: 100px;
}
.recommended-books .primary-books .books h3 {
  font-size: 16px;
  font-weight: 300;
}
.recommended-books .side {
  width: 500px;
  box-sizing: border-box;
  flex-direction: column;
  gap: 50px;
}
@media (min-width: 900px) and (max-width: 1199px) {
  .recommended-books .side {
    flex-direction: row !important;
    width: 100%;
    box-sizing: border-box;
  }
}
@media (max-width: 899px) {
  .recommended-books .side {
    width: unset !important;
  }
}
.recommended-books .side .chart-box,
.recommended-books .side .links-box {
  border: 1px solid #eae8e3;
  border-radius: 15px;
  padding: 20px;
  gap: 20px;
  background-color: #ffffff;
}
@media (max-width: 1199px) {
  .recommended-books .side .chart-box {
    flex: 1;
    justify-content: center;
  }
}
.recommended-books .side .chart-box .inner {
  position: relative;
  justify-content: center;
  align-items: center;
  z-index: 1;
}
.recommended-books .side .chart-box .inner .center {
  position: absolute;
  justify-content: center;
  align-items: center;
  z-index: 2;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background-color: #ffffff;
  text-align: center;
}
@media (max-width: 1199px) {
  .recommended-books .side .chart-box .inner .center {
    width: 65px;
    height: 65px;
    font-size: 14px;
  }
}
.recommended-books .side .chart-box .inner canvas {
  position: relative;
  z-index: 2;
}
.recommended-books .side .links-box a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-style: italic;
  text-decoration: none;
}
.recommended-books .side .links-box a i {
  margin-left: 5px;
}
.recommended-books .recommended-carousel {
  background: #ffffff;
  border: 1px solid #eae8e3;
  border-radius: 15px;
  padding: 20px 0;
  gap: 10px;
}
@media (min-width: 900px) and (max-width: 1199px) {
  .recommended-books .recommended-carousel {
    width: 50%;
    max-width: 550px;
    min-width: 450px;
    box-sizing: border-box;
  }
}
.recommended-books .recommended-carousel h2 {
  font-size: 18px;
  padding: 0 20px;
}
.recommended-books .recommended-carousel .book-scores span, .recommended-books .recommended-carousel .book-scores strong {
  font-size: 14px !important;
}
.recommended-books .recommended-carousel .see-more {
  margin-top: 10px;
}
.recommended-books .shortcut-section {
  gap: 20px;
}
.recommended-books .shortcut-section .shortcuts {
  gap: 20px;
  flex-direction: row;
}
@media (max-width: 1199px) {
  .recommended-books .shortcut-section .shortcuts {
    flex-direction: column !important;
  }
}
.recommended-books .shortcut-section .shortcut {
  flex: 1;
  background: #1C1B28;
  color: #FFF;
  border-radius: 10px;
  text-decoration: none;
  padding: 20px;
  box-sizing: border-box;
  background-size: 130%;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  transform: scale(1);
  transition: transform 0.3s ease, background-size 0.3s ease;
  gap: 20px;
}
.recommended-books .shortcut-section .shortcut > * {
  z-index: 2;
}
.recommended-books .shortcut-section .shortcut::before {
  z-index: 1;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to top, rgb(28, 27, 40) 0, rgba(28, 27, 40, 0.5) 100%);
  pointer-events: none;
  border-radius: 10px;
}
.recommended-books .shortcut-section .shortcut:hover {
  transform: scale(1.05);
  background-size: 120%;
}
.recommended-books .shortcut-section .shortcut .title {
  gap: 5px;
  align-items: center;
}
.recommended-books .shortcut-section .shortcut .title i {
  font-size: 24px;
}
.recommended-books .shortcut-section .shortcut .filters {
  gap: 5px;
  flex-wrap: wrap;
}
.recommended-books .shortcut-section .shortcut .filters .filter {
  display: flex;
  flex-direction: row;
  gap: 5px;
  align-items: center;
  font-weight: 300;
  border: 2px solid #ffffff;
  border-radius: 8px;
  padding: 5px 10px;
  white-space: nowrap;
}
.recommended-books .shortcut-section .shortcut .filters span {
  display: block;
}
.recommended-books .see-more {
  font-weight: 500;
  text-align: center;
}
.recommended-books canvas {
  max-width: 400px;
}
@media (min-width: 720px) and (max-width: 1199px) {
  .recommended-books canvas {
    max-width: 300px;
    align-self: center;
  }
}
@media (max-width: 501px) {
  .recommended-books canvas {
    max-width: 250px;
    max-height: 250px;
    align-self: center;
  }
}
@media (max-width: 501px) {
  .recommended-books c-book-carousel .book-cover {
    width: 100%;
    margin: 5px 0;
    flex-direction: column;
    align-items: center;
  }
  .recommended-books c-book-carousel .book-cover a {
    width: 80%;
  }
  .recommended-books c-book-carousel .book-cover a img {
    width: 100%;
  }
}

.no-recommendations {
  flex: 1;
}
.no-recommendations .first-section, .no-recommendations .second-section {
  align-self: center;
  gap: 35px;
  padding: 50px;
  align-items: center;
}
.no-recommendations .first-section {
  max-width: 1000px;
  flex-direction: row;
}
.no-recommendations .first-section .import, .no-recommendations .first-section .bookpicker {
  gap: 35px;
  flex: 1;
}
.no-recommendations .first-section .bookpicker {
  font-weight: 600;
  flex: 6;
}
.no-recommendations .first-section .bookpicker p {
  font-size: 20px;
  color: #403e4f;
}
.no-recommendations .first-section .bookpicker h1 {
  font-size: 42px;
}
.no-recommendations .first-section .bookpicker .button {
  font-size: 20px;
  align-self: start;
  padding: 20px 50px;
  border-radius: 50px;
}
.no-recommendations .first-section .or {
  flex-direction: column;
  gap: 20px;
  font-size: 18px;
  font-weight: 500;
  color: #666666;
  align-self: stretch;
  align-items: center;
}
.no-recommendations .first-section .or:before, .no-recommendations .first-section .or:after {
  content: "";
  flex: 1;
  width: 1px;
  background-color: #666666;
  opacity: 0.4;
}
.no-recommendations .first-section .import {
  align-items: start;
  color: #403e4f;
  flex: 4;
  font-weight: 500;
}
.no-recommendations .first-section .import p {
  line-height: 1.5;
}
.no-recommendations .first-section .import .button {
  background: #e2f0fa;
  border: 0;
  padding: 10px 35px;
  font-size: 16px;
  border-radius: 50px;
}
.no-recommendations .first-section .import .button i {
  margin-right: 5px;
}
.no-recommendations .first-section .import .button:hover {
  background: #c4e0f7;
}
@media (max-width: 899px) {
  .no-recommendations .first-section {
    flex-direction: column !important;
  }
  .no-recommendations .first-section .bookpicker, .no-recommendations .first-section .import {
    align-items: center;
  }
  .no-recommendations .first-section .bookpicker .button, .no-recommendations .first-section .import .button {
    align-self: center;
  }
  .no-recommendations .first-section .bookpicker h1 {
    font-size: 24px !important;
  }
  .no-recommendations .first-section .bookpicker p {
    font-size: 18px !important;
  }
  .no-recommendations .first-section .import .button {
    display: flex;
    align-items: center;
    white-space: unset;
  }
  .no-recommendations .first-section .or {
    flex-direction: row;
  }
  .no-recommendations .first-section .or:before, .no-recommendations .first-section .or:after {
    width: unset;
    height: 1px;
  }
}
.no-recommendations .second-section h1 {
  font-size: 42px;
  font-weight: 600;
}
@media (max-width: 719px) {
  .no-recommendations .second-section {
    padding: 20px;
    margin: 0 -20px;
    box-shadow: 0 0 20px 0 #ffffff;
  }
  .no-recommendations .second-section c-bookpicker .book-grid {
    padding: 10px;
  }
  .no-recommendations .second-section .selected-books .book-covers {
    max-width: unset !important;
    justify-content: center;
  }
}

c-contact-signup {
  text-align: left;
  color: #ffffff;
  padding: 0;
  margin: 0;
  gap: 0;
  background-color: transparent;
  box-shadow: unset;
  box-sizing: border-box;
  overflow: auto;
}
c-contact-signup.modal {
  position: absolute;
  z-index: 30;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-height: 100vh;
}
c-contact-signup h1 {
  font-size: 45px;
  font-weight: 600;
  max-width: 400px;
}
c-contact-signup a {
  color: #54bfab;
}
c-contact-signup a:hover {
  color: #409283;
}
c-contact-signup form {
  gap: 0;
  flex: 1;
  font-weight: 300;
}
c-contact-signup .success {
  background-color: #1f1f2f;
  padding: 50px;
  border-radius: 10px;
  align-self: center;
  font-size: 20px;
}
c-contact-signup:not(.horizontal) {
  width: 100%;
  max-width: 600px;
}
c-contact-signup:not(.horizontal) .top {
  gap: 20px;
  background-color: #1f1f2f;
  padding: 50px;
  padding-bottom: 25px;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  background-image: url("/fe/img/galaxy1.svg");
  background-repeat: no-repeat;
  background-position: calc(100% + 60px) -45px;
}
c-contact-signup:not(.horizontal) .bottom {
  gap: 20px;
  background-color: #272534;
  padding: 50px;
  padding-top: 25px;
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
  background-image: url("/fe/img/galaxy2.svg");
  background-repeat: no-repeat;
  background-position: -130px calc(100% + 150px);
}
c-contact-signup.horizontal {
  width: 100%;
  max-width: unset;
  box-sizing: border-box;
  gap: 20px;
  background-color: #1f1f2f;
  padding: 50px;
  border-radius: 10px;
  background-image: url("/fe/img/galaxy1.svg"), url("/fe/img/galaxy2.svg");
  background-repeat: no-repeat, no-repeat;
  background-position: -70px top, right -100px;
}
c-contact-signup.horizontal form {
  gap: 10px;
  align-items: center;
}
c-contact-signup.horizontal .left {
  padding-left: 70px; /* Space for background image */
  box-sizing: border-box;
}
c-contact-signup.horizontal .left, c-contact-signup.horizontal .right {
  flex: 1;
  gap: 20px;
}
c-contact-signup.horizontal .input {
  position: relative;
}
c-contact-signup.horizontal .input input[type=email], c-contact-signup.horizontal .input button {
  padding: 20px;
}
c-contact-signup.horizontal .input input[type=email] {
  padding-right: 120px;
  box-sizing: border-box;
  border-radius: 50px;
}
c-contact-signup.horizontal .input button {
  position: absolute;
  top: calc(50% + 1px);
  right: -1px; /* Fix pixel glitch */
  transform: translateY(-50%);
  height: 100%;
  display: flex;
  align-items: center;
  width: 100px;
  border-radius: 50px;
  border: 0;
}
@media (max-width: 899px) {
  c-contact-signup.horizontal {
    background-image: url("/fe/img/galaxy1.svg");
    background-repeat: no-repeat;
    background-position: bottom -70px right -70px;
  }
  c-contact-signup.horizontal .input {
    gap: 20px;
    flex-direction: column;
  }
  c-contact-signup.horizontal .input input[type=email] {
    padding-right: 0;
  }
  c-contact-signup.horizontal .input button {
    position: relative;
    top: 0;
    right: 0;
    transform: none;
    width: 100%;
    justify-content: center;
  }
  c-contact-signup.horizontal .left {
    padding-left: 0;
  }
  c-contact-signup.horizontal form {
    flex-direction: column;
  }
}
c-contact-signup .close {
  position: absolute;
  top: 10px;
  left: 10px;
  cursor: pointer;
  border: none;
  padding: 2px;
  background-color: transparent;
  color: #ffffff;
  text-shadow: 1px 1px 0 #1f1f2f;
  font-weight: 600;
  font-size: 20px;
}
c-contact-signup c-checkbox input[type=checkbox] {
  border-color: #ffffff;
}
c-contact-signup c-checkbox input[type=checkbox]:checked {
  box-shadow: inset 0 0 0 2px #1f1f2f;
}
c-contact-signup .optin .description {
  color: #c4c4c4;
}
c-contact-signup .primary.button {
  background-color: #54bfab;
  color: #FFF;
}
c-contact-signup .primary.button:hover {
  background-color: #409283;
}
c-contact-signup .legal {
  color: #959592;
}
c-contact-signup .row {
  gap: 5px;
  align-items: center;
  flex: 1;
}
c-contact-signup input[name=email] {
  border: 0;
  flex: 1;
  padding: 10px;
  border-radius: 25px;
}
@media (max-width: 600px) {
  c-contact-signup h1 {
    font-size: 20px !important;
    max-width: 200px;
  }
}
c-contact-signup .other-optins, c-contact-signup .marketing-optins {
  gap: 10px;
}
c-contact-signup .other-optins label, c-contact-signup .marketing-optins label {
  font-weight: 300;
}
c-contact-signup .marketing-optins > .description {
  margin-bottom: 5px;
}
c-contact-signup .optin {
  gap: 5px;
}
c-contact-signup .optin .description {
  font-size: 14px;
  margin-left: 2px;
}
c-contact-signup .legal {
  font-style: italic;
  font-size: 14px;
  color: #959592;
  gap: 10px;
}
c-contact-signup .primary.button {
  align-self: center;
  padding: 20px 50px;
}

c-bookguide {
  gap: 20px;
}
c-bookguide h2 {
  font-size: 20px;
  font-weight: 600;
}
c-bookguide .button {
  align-self: center;
}
c-bookguide .params {
  gap: 20px;
  font-weight: 300;
}
@media (max-width: 719px) {
  c-bookguide .params {
    flex-direction: column;
  }
  c-bookguide .params .button {
    width: 100%;
    box-sizing: border-box;
  }
}
c-bookguide .params .inner {
  flex-wrap: wrap;
  gap: 20px;
}
c-bookguide .params .inner .param {
  border-radius: 10px;
  align-items: center;
  gap: 5px;
}
c-bookguide .params .inner .param i {
  font-size: 18px;
  font-weight: 400;
}
c-bookguide .params .inner .param label {
  font-weight: 400;
  white-space: nowrap;
}
c-bookguide .params .inner .param .values {
  font-style: italic;
  white-space: nowrap;
}
c-bookguide .params .button {
  padding: 5px 10px;
}
c-bookguide c-bookbar {
  box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.15);
  background-color: #ffffff;
  border-radius: 10px;
  padding: 35px;
}

c-carousel {
  gap: 10px;
}
c-carousel > .outer > .inner {
  overflow: hidden;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  display: flex;
  gap: 0;
}
c-carousel > .outer > .inner > * {
  flex: 0 0 100%;
  scroll-snap-align: start;
}
c-carousel > .outer > .inner::-webkit-scrollbar {
  display: none;
}
c-carousel .left-button, c-carousel .right-button {
  font-size: 18px;
  border: 0;
  background: transparent;
  padding: 5px;
}
c-carousel .left-button[disabled], c-carousel .right-button[disabled] {
  opacity: 0.5;
}
c-carousel.autoscroll .dots .dot.active {
  width: 35px !important;
}
c-carousel .dots {
  gap: 5px;
  justify-content: center;
}
c-carousel .dots .dot {
  border-radius: 50%;
  border: 2px solid #1f1f2f;
  background: transparent;
  padding: 3px;
  width: 0;
  transition: width 0.3s ease;
}
c-carousel .dots .active {
  border-color: #54bfab;
  background: transparent;
  position: relative;
  overflow: hidden;
}
c-carousel .dots .active::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  background: #54bfab;
  border-radius: 999px;
  width: 0%;
  transition: width linear;
}
c-carousel .dots .active.autoscroll::before {
  animation: progress-fill var(--autoscroll-duration) linear forwards;
}

@keyframes progress-fill {
  from {
    width: 0%;
  }
  to {
    width: 100%;
  }
}
c-book-carousel c-carousel {
  padding: 0 10px;
}
c-book-carousel .book-cover, c-book-carousel img {
  width: 135px;
}
c-book-carousel .book {
  padding: 10px;
  gap: 20px;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
}
c-book-carousel .book .book-title {
  gap: 5px;
}
c-book-carousel .book .title-pitch {
  gap: 10px;
}
c-book-carousel .book .pitch {
  line-height: 1.3;
  font-weight: 300;
  max-width: 350px;
}

c-carousel-slider .inner {
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch; /* Enable momentum scrolling on iOS */
  /* Hide scrollbar for visual cleanliness but keep functionality */
}
c-carousel-slider .inner::-webkit-scrollbar {
  height: 0px;
  background: transparent;
}
c-carousel-slider .inner {
  /* Firefox */
  scrollbar-width: none;
  /* IE and Edge */
  -ms-overflow-style: none;
}
c-carousel-slider .controls {
  justify-content: center;
  gap: 20px;
}
c-carousel-slider .controls button {
  border: 2px solid #1f1f2f;
  font-size: 20px;
  font-weight: 600;
  aspect-ratio: 1;
  border-radius: 999px;
}
c-carousel-slider .controls button[disabled] {
  opacity: 0.5;
}

.overflow-shade {
  position: relative;
  background: radial-gradient(farthest-side at 50% 0, rgba(0, 0, 0, 0.1), transparent) top, radial-gradient(farthest-side at 50% 100%, rgba(0, 0, 0, 0.1), transparent) bottom;
  background-repeat: no-repeat;
  background-size: 100% 0, 100% 0;
  transition: background-size 0.2s;
}
.overflow-shade.has-scroll-top {
  background-size: 100% 20px, 100% 0;
}
.overflow-shade.has-scroll-bottom {
  background-size: 100% 0, 100% 20px;
}
.overflow-shade.has-scroll-top.has-scroll-bottom {
  background-size: 100% 20px, 100% 20px;
}

.rich-input {
  gap: 2px;
  padding: 10px;
  border: 1px solid #eae8e3;
  border-radius: 8px;
  font-weight: 300;
  text-align: left;
  background-color: #ffffff;
  color: #1f1f2f;
}
.rich-input:focus, .rich-input:focus-within {
  outline: 1px solid #54bfab;
}
.rich-input label {
  font-size: 12px;
  color: #666666;
  text-transform: uppercase;
  user-select: none;
}
.rich-input input {
  width: 100%;
  border: 0 !important;
  outline: none !important;
  padding: 0 !important;
  background: transparent;
  font-weight: 300;
}
.rich-input input::placeholder {
  opacity: 0.5;
}

.rich-password {
  position: relative;
}
.rich-password input {
  width: calc(100% - 30px); /* Space for 1password toggle - avoid overlapping toggle-password */
}
.rich-password .toggle-password {
  font-size: 20px;
  color: #666666;
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  right: 10px;
  cursor: pointer;
  text-decoration: none;
}

.rich-file {
  gap: 10px;
  padding: 10px;
  border: 1px dashed #c9c6c0;
  border-radius: 8px;
  font-weight: 300;
  text-align: center;
  align-items: center;
  justify-content: center;
  min-height: 3rem;
  background-color: #ffffff;
  color: #1f1f2f;
}
.rich-file input[type=file] {
  display: none;
}
.rich-file.drag-over {
  border: 1px dashed #54bfab;
  outline: 1px dashed #54bfab;
}

@keyframes slide-out-in {
  0% {
    transform: scaleY(1);
    opacity: 1;
    transform-origin: top;
  }
  20% {
    transform: scaleY(0.4);
    opacity: 0;
    transform-origin: top;
  }
  50% {
    transform: scaleY(0);
    opacity: 0;
    transform-origin: top;
  }
  51% {
    transform: scaleY(1);
    opacity: 0;
    transform-origin: top;
  }
  100% {
    transform: scaleY(1);
    opacity: 1;
    transform-origin: top;
  }
}
.import c-infobox {
  text-align: left;
  max-width: 600px;
}
.import c-infobox form {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.import c-infobox .inner {
  gap: 20px;
}
.import c-infobox pre {
  height: 400px;
  width: 100%;
  box-sizing: border-box;
  overflow: auto;
  line-height: 1.5;
}

c-bookpicker {
  gap: 35px;
  position: relative;
}
c-bookpicker button.primary {
  padding: 10px 20px !important;
}
c-bookpicker .book-cover:hover img {
  transform: scale(1) !important;
}
c-bookpicker .search {
  position: relative;
  width: min(400px, 100%);
  align-self: center;
}
c-bookpicker .search input[type=search] {
  border-radius: 50px;
  padding: 10px;
  width: 100%;
  box-sizing: border-box;
}
c-bookpicker .search button {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  border: 0;
  font-size: 20px !important;
  font-weight: 600;
  height: 100%;
  width: auto !important;
  aspect-ratio: 1;
  border-radius: 50px !important;
  padding: 0 !important;
}
c-bookpicker .search button::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
c-bookpicker .genre-picker {
  justify-content: center;
  gap: 20px;
}
c-bookpicker .genre-picker .genre-grid {
  flex-wrap: wrap;
  flex: 1;
  gap: 10px;
  max-width: 1000px;
  justify-content: center;
}
c-bookpicker .genre-picker .genre-grid a {
  max-width: 150px;
  text-decoration: none;
  border-radius: 8px;
  border: 1px solid #e3e1dc;
  padding: 5px;
}
c-bookpicker .genre-picker .genre-grid a i {
  margin-right: 5px;
}
c-bookpicker .genre-picker .genre-grid a:hover {
  border-color: #409283;
}
c-bookpicker .genre-picker .genre-grid a.active {
  border-color: #1f1f2f;
  background-color: #1f1f2f;
  color: #ffffff;
}
@media (max-width: 719px) {
  c-bookpicker .genre-picker .genre-grid {
    gap: 5px;
  }
  c-bookpicker .genre-picker .genre-grid a {
    padding: 5px;
  }
  c-bookpicker .genre-picker .genre-grid a i {
    display: none;
  }
}
c-bookpicker .selection {
  position: relative;
  height: 720px;
  max-height: 720px;
  overflow: auto;
  border: 1px solid #eae8e3;
  border-radius: 10px;
}
c-bookpicker .selection .spinner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
c-bookpicker .selection .book-grid {
  flex: 1;
  padding: 20px;
  flex-wrap: wrap;
  row-gap: 35px;
  column-gap: 20px;
  justify-content: space-evenly;
  align-content: start;
}
c-bookpicker .selection .book-grid .book-cover {
  align-self: start;
}
c-bookpicker .selection .book-grid a img {
  transition: transform 0.3s ease, box-shadow 0.3s ease, outline 0.1s ease;
}
c-bookpicker .selection .book-grid a:not(.toggled) img {
  outline: 0px solid #1f1f2f;
}
c-bookpicker .selection .book-grid a.toggled img {
  outline: 5px solid #1f1f2f;
}
c-bookpicker .selection .selected-books {
  position: sticky;
  z-index: 10;
  gap: 10px;
  align-items: stretch;
  background: #1f1f2f;
  color: #ffffff;
  border-radius: 10px;
  padding: 10px 20px 20px 20px;
  bottom: 0;
  left: 0;
  right: 0;
  animation-duration: 0.2s;
  animation-iteration-count: 1;
  animation-timing-function: ease-in-out;
}
@keyframes slide-in {
  from {
    height: 0px;
    min-height: 0px;
  }
  to {
    height: 156px;
    min-height: 156px;
  }
}
@keyframes slide-out {
  from {
    height: 156px;
    min-height: 156px;
  }
  to {
    height: 0px;
    min-height: 0px;
  }
}
c-bookpicker .selection .selected-books .header {
  justify-content: space-between;
}
c-bookpicker .selection .selected-books .header a {
  text-decoration: none;
  color: #54bfab;
}
c-bookpicker .selection .selected-books .header a:hover {
  color: #409283;
}
c-bookpicker .selection .selected-books .header a span {
  text-decoration: underline;
}
c-bookpicker .selection .selected-books .body {
  flex-direction: row;
  gap: 10px;
}
c-bookpicker .selection .selected-books .body .book-covers {
  gap: 10px;
  max-width: min(1080px, 100vw - 200px - 120px);
  flex-wrap: wrap;
  max-height: 250px;
  overflow-y: auto;
  overflow-x: hidden;
}
c-bookpicker .selection .selected-books .body .button {
  align-self: center;
  background: #f9f8f5;
  color: #1f1f2f;
}
c-bookpicker .selection .selected-books .body .button:hover {
  background: #54bfab;
}
c-bookpicker .selection .selected-books .body .select-more {
  color: #c4c4c4;
  align-self: center;
}
c-bookpicker .selection .selected-books .book-cover {
  width: 80px;
  flex-shrink: 0;
}
@media (max-width: 719px) {
  c-bookpicker .selection .header .title, c-bookpicker .selection .header a {
    display: none;
  }
  c-bookpicker .selection .body {
    flex-direction: column !important;
  }
  c-bookpicker .selection .book-covers {
    max-width: min(1200px, 100vw - 200px) !important;
  }
  c-bookpicker .selection .book-grid {
    gap: 15px;
  }
  c-bookpicker .selection .book-grid .book-cover {
    width: 75px !important;
  }
  c-bookpicker .selection .selected-books .book-cover {
    width: 55px !important;
  }
}
c-bookpicker .selection-header {
  gap: 10px;
  align-items: center;
}
c-bookpicker.max-selected .book-grid a:not(.toggled) {
  opacity: 0.5;
  cursor: not-allowed;
}

.book-modal {
  position: absolute;
  width: 250px;
  background-color: rgba(47, 47, 69, 0.8);
  backdrop-filter: blur(10px);
  color: #ffffff;
  border-radius: 10px;
  padding: 10px;
  z-index: 10;
  overflow-x: hidden;
  transition: transform 0.2s ease;
  margin: 0 10px;
}
.book-modal.right {
  margin-right: 10px;
}
.book-modal.left {
  margin-left: 10px;
}
.book-modal a {
  color: #ffffff;
  text-decoration: none;
}
.book-modal .inner {
  width: 250px;
  gap: 10px;
  display: flow-root;
  position: relative;
}
.book-modal .inner .book-title {
  margin-bottom: 10px;
}
.book-modal .inner .likesdislikes {
  margin-top: 10px;
  gap: 10px;
}
.book-modal .inner .likesdislikes .likes, .book-modal .inner .likesdislikes .dislikes {
  font-style: italic;
  align-items: center;
}
.book-modal .inner .likesdislikes .likes i, .book-modal .inner .likesdislikes .dislikes i {
  margin-right: 10px;
  font-size: 18px;
}
.book-modal.hidden {
  transform: scaleX(0);
}

#plans {
  margin-bottom: 75px;
}
#plans > .header {
  max-width: 1120px;
  align-self: center;
  width: 100%;
  box-sizing: border-box;
  text-align: center;
  margin: 75px auto;
  gap: 20px;
  padding: 0 20px;
}
#plans > .header h1 {
  font-size: 72px;
  font-weight: 600;
  line-height: 120%;
  letter-spacing: -0.03em;
}
#plans > .header h2 {
  font-weight: 400;
  font-size: 32px;
  line-height: 120%;
}
@media (min-width: 720px) and (max-width: 1199px) {
  #plans > .header h1 {
    font-size: 50px;
  }
  #plans > .header h2 {
    font-size: 24px;
  }
}
@media (max-width: 719px) {
  #plans > .header h1 {
    font-size: 40px;
  }
  #plans > .header h2 {
    font-size: 20px;
  }
}
#plans c-plan-picker .plans {
  gap: 35px;
}
@media (max-width: 1199px) {
  #plans c-plan-picker .plans {
    flex-direction: column;
    gap: 75px;
  }
  #plans c-plan-picker .plans .plan {
    flex: 1 !important;
    width: 100%;
    box-sizing: border-box;
  }
}
#plans c-plan-picker .plans .plan {
  max-width: 720px;
  align-self: center;
  flex: 1;
}
#plans c-plan-picker .plans .plan.premium {
  flex: 1.5;
}

c-plan-picker label {
  font-weight: 500;
}
c-plan-picker c-grid {
  align-items: center;
}
c-plan-picker .plans {
  margin-bottom: 20px; /* Ensure there's space for manage-billing link */
}
c-plan-picker .plan {
  position: relative;
  border-radius: 15px;
  background-color: #ffffff;
  padding: 20px;
}
c-plan-picker .plan h3 {
  font-weight: 600;
  font-size: 18px;
}
c-plan-picker .plan span {
  font-weight: 300;
}
c-plan-picker .plan .header {
  position: relative;
  border-radius: 15px;
  background-color: #f4f3ee;
  padding: 35px 20px;
  gap: 10px;
  text-align: center;
}
c-plan-picker .plan .header h2 {
  font-weight: 700;
  font-size: 36px;
  line-height: 120%;
  text-transform: uppercase;
}
c-plan-picker .plan .header p.subtitle {
  font-weight: 400;
  font-size: 14px;
  line-height: 140%;
  color: #666666;
  max-width: 350px;
  align-self: center;
}
c-plan-picker .plan .header p.cost {
  font-weight: 600;
  font-size: 24px;
  line-height: 120%;
  align-self: center;
}
c-plan-picker .plan .header button {
  display: flex;
  gap: 5px;
  align-self: center;
}
c-plan-picker .plan .header button.primary {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 50%);
  border-radius: 8px;
  font-weight: 600;
  font-size: 18px;
  line-height: 140%;
  padding: 20px;
  align-items: center;
}
c-plan-picker .plan .header button.primary i {
  font-size: 24px;
}
c-plan-picker .plan .content {
  gap: 20px;
  padding: 20px;
  padding-top: 50px;
}
c-plan-picker .plan .content strong {
  font-weight: 400;
  font-size: 20px;
  line-height: 120%;
}
c-plan-picker .plan .content span {
  font-weight: 300;
  font-size: 16px;
  line-height: 120%;
}
c-plan-picker .plan .content i {
  font-size: 24px;
}
c-plan-picker .plan.premium .text-muted {
  color: #c4c4c4;
}
c-plan-picker .plan.premium .header {
  background-color: #1f1f2f;
  color: #ffffff;
  margin: -1px -1px 0 -1px; /* Fix firefox border-radius bug */
}
c-plan-picker .plan.premium .header button {
  border-width: 0;
}
c-plan-picker .plan.premium .header h2 {
  font-size: 48px;
}
c-plan-picker .plan.premium .header p.subtitle {
  font-size: 16px;
  color: #c4c4c4;
  max-width: 500px;
}
c-plan-picker .plan.premium .header p.cost {
  font-size: 32px;
}
c-plan-picker .plan .current-plan {
  position: absolute;
  top: 0;
  left: 20px;
  padding: 2px 5px;
  background-color: #54bfab;
  color: #FFF;
  font-weight: 500;
  font-size: 14px;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
}
c-plan-picker .plan .manage-billing {
  position: absolute;
  bottom: -10px;
  right: 20px;
  transform: translateY(100%);
  font-size: 14px;
}
c-plan-picker .plan .manage-billing i {
  font-size: 14px;
  margin-left: 2px;
}

c-blackout {
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 20;
}

c-login-prompt {
  align-self: center;
}
c-login-prompt .inner {
  align-self: center;
  gap: 35px;
  padding: 50px;
  align-items: center;
  max-width: 1000px;
  flex-direction: row;
}
c-login-prompt .inner .cta, c-login-prompt .inner .features {
  gap: 20px;
  flex: 1;
}
c-login-prompt .inner .cta {
  font-weight: 600;
  flex: 6;
}
c-login-prompt .inner .cta p {
  font-size: 20px;
  color: #403e4f;
}
c-login-prompt .inner .cta h1 {
  font-size: 42px;
  line-height: 42px;
}
c-login-prompt .inner .cta .buttons {
  gap: 20px;
  justify-content: center;
}
c-login-prompt .inner .cta .button {
  font-size: 18px;
  align-self: start;
  padding: 10px 20px;
  border-radius: 50px;
}
c-login-prompt .inner .divider {
  flex-direction: column;
  gap: 20px;
  font-size: 18px;
  font-weight: 500;
  color: #666666;
  align-self: stretch;
  align-items: center;
}
c-login-prompt .inner .divider:before {
  content: "";
  flex: 1;
  width: 1px;
  background-color: #666666;
  opacity: 0.4;
}
c-login-prompt .inner .features {
  align-items: start;
  color: #403e4f;
  flex: 4;
  font-weight: 500;
}
c-login-prompt .inner .features ul {
  display: flex;
  flex-direction: column;
  gap: 20px;
  list-style: disc;
  padding-left: 20px;
}
c-login-prompt .inner .features p {
  line-height: 1.5;
}
c-login-prompt .inner .features .button {
  background: #e2f0fa;
  border: 0;
  padding: 10px 35px;
  font-size: 16px;
  border-radius: 50px;
}
c-login-prompt .inner .features .button i {
  margin-right: 5px;
}
c-login-prompt .inner .features .button:hover {
  background: #c4e0f7;
}
@media (max-width: 899px) {
  c-login-prompt .inner {
    flex-direction: column !important;
  }
  c-login-prompt .inner .cta, c-login-prompt .inner .features {
    align-items: center;
  }
  c-login-prompt .inner .cta .button, c-login-prompt .inner .features .button {
    align-self: center;
  }
  c-login-prompt .inner .cta h1 {
    font-size: 24px !important;
  }
  c-login-prompt .inner .cta p {
    font-size: 18px !important;
  }
  c-login-prompt .inner .divider {
    flex-direction: row;
  }
  c-login-prompt .inner .divider:before, c-login-prompt .inner .divider:after {
    width: unset;
    height: 1px;
  }
}

/*# sourceMappingURL=style.css.map */
